@cueframe/kernel 0.0.1 → 0.1.1

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 (432) hide show
  1. package/LICENSE +661 -0
  2. package/dist/_members/account-model/testing/conversationStoreContract.d.ts +1 -1
  3. package/dist/_members/authoring/providers/resourceApi.d.ts +1 -1
  4. package/dist/_members/authoring/transpileComponent.d.ts +1 -1
  5. package/dist/_members/cloud-import/CloudImportService.d.ts +35 -0
  6. package/dist/_members/cloud-import/ImportProvider.d.ts +73 -0
  7. package/dist/_members/cloud-import/MediaItemPreprocessor.d.ts +27 -0
  8. package/dist/_members/cloud-import/cloudConfig.d.ts +23 -0
  9. package/dist/_members/cloud-import/index.d.ts +9 -0
  10. package/dist/_members/cloud-import/multipartUpload.d.ts +12 -0
  11. package/dist/_members/composition/ops/compositionOps.d.ts +2 -1
  12. package/dist/_members/composition/ops/types.d.ts +1 -1
  13. package/dist/_members/composition/projection/behind-readiness.d.ts +127 -0
  14. package/dist/_members/composition/projection/index.d.ts +2 -0
  15. package/dist/_members/composition/projection/reframe-readiness.d.ts +156 -0
  16. package/dist/_members/composition/timeline/placement.d.ts +1 -1
  17. package/dist/_members/composition/validators/composition.d.ts +43 -26
  18. package/dist/_members/composition/validators/render.d.ts +32 -0
  19. package/dist/_members/composition-ops/index.d.ts +1 -1
  20. package/dist/_members/composition-ops/opRecorder.d.ts +1 -1
  21. package/dist/_members/convex-api/api.d.ts +5 -0
  22. package/dist/_members/convex-api/dataModel.d.ts +6 -0
  23. package/dist/_members/core/render/compositionRender.d.ts +17 -1
  24. package/dist/_members/core/render/exportSettings.d.ts +1 -1
  25. package/dist/_members/core/render/types.d.ts +31 -0
  26. package/dist/_members/mcp/curation.d.ts +1 -1
  27. package/dist/_members/plane/conformance.d.ts +1 -1
  28. package/dist/_members/render-harness/localRender.d.ts +1 -1
  29. package/dist/animate.js +828 -79187
  30. package/dist/authoring/build-tools.js +8 -11
  31. package/dist/authoring/context.js +5 -5
  32. package/dist/authoring/models.js +1 -2
  33. package/dist/authoring/prompts.js +1 -1
  34. package/dist/authoring/tools.js +7 -7
  35. package/dist/authoring/transpileComponent.js +3 -2220
  36. package/dist/authoring.js +30 -30
  37. package/dist/brand-derivation.js +1 -1
  38. package/dist/chunk-6IU2UQI5.js +107 -0
  39. package/dist/{chunk-5I7VDCAC.js → chunk-7FO3ZJ43.js} +4 -1
  40. package/dist/{chunk-N67PDTKQ.js → chunk-ABL557OT.js} +1 -1
  41. package/dist/{chunk-MC5DLSEV.js → chunk-AP6ZIVAV.js} +15 -15
  42. package/dist/{chunk-QLAQHR3L.js → chunk-AQBREB5O.js} +1 -1
  43. package/dist/{chunk-DSNG6WLU.js → chunk-AYVJXDLB.js} +1 -4
  44. package/dist/{chunk-6CMVBTTP.js → chunk-DK2ODBNT.js} +19 -9
  45. package/dist/chunk-DSMLHYJ4.js +82 -0
  46. package/dist/{chunk-BRKJKB33.js → chunk-FYZVH3MC.js} +1 -1
  47. package/dist/{chunk-MVEE6HEC.js → chunk-GA23TRNR.js} +5 -7
  48. package/dist/chunk-HCCBDJLW.js +68 -0
  49. package/dist/{chunk-JRQVPFLF.js → chunk-HY3RIEZW.js} +1 -1
  50. package/dist/{chunk-OIRUO5P7.js → chunk-JJ6XD7NG.js} +152 -2
  51. package/dist/{_members/primitives/chunk-IDAL6G3Y.js → chunk-JQMPHKLU.js} +19 -27
  52. package/dist/{chunk-G3PBH53P.js → chunk-MBCXCJOE.js} +1 -1
  53. package/dist/{chunk-UEI3NLNK.js → chunk-MHOQTPOB.js} +1 -4
  54. package/dist/{chunk-37NJ27UU.js → chunk-OCFDUCF4.js} +3 -0
  55. package/dist/{chunk-WZTTZHNR.js → chunk-OLFOPQCA.js} +12 -9
  56. package/dist/{chunk-P43IE4WB.js → chunk-P727GZVO.js} +2 -4
  57. package/dist/{chunk-52AHXNKM.js → chunk-PDYO3DOJ.js} +5 -5
  58. package/dist/{chunk-S3P5BFFL.js → chunk-PMY24FUD.js} +2 -4
  59. package/dist/{chunk-ATAF24QG.js → chunk-PODIYN2K.js} +10 -3
  60. package/dist/chunk-RF7U3SCL.js +606 -0
  61. package/dist/{chunk-JD77Y2WM.js → chunk-SW336CJP.js} +1 -4
  62. package/dist/{chunk-TULRCY6U.js → chunk-TOJEXFXL.js} +1 -1
  63. package/dist/{chunk-ELLSET2N.js → chunk-UHGSZZDI.js} +3 -6
  64. package/dist/{chunk-M3I5LMAB.js → chunk-UY4SWJVE.js} +1 -1
  65. package/dist/{chunk-6QJ3V3VS.js → chunk-YX2GSJK7.js} +1 -1
  66. package/dist/chunk-ZT7MHRQU.js +104 -0
  67. package/dist/{chunk-NV4I6GJV.js → chunk-ZWMV6DD2.js} +27 -4
  68. package/dist/cloud-import/multipart.d.ts +1 -0
  69. package/dist/cloud-import/multipart.js +8 -0
  70. package/dist/cloud-import.d.ts +1 -0
  71. package/dist/cloud-import.js +234 -0
  72. package/dist/compose/renderer.js +19 -22
  73. package/dist/compose.js +19 -22
  74. package/dist/composition/graphics-plan.js +3 -3
  75. package/dist/composition/ops.js +4 -4
  76. package/dist/composition/primitive-catalog.js +1 -1
  77. package/dist/composition/projection.js +21 -5
  78. package/dist/composition/validators.js +6 -4
  79. package/dist/composition-ops.js +15 -13
  80. package/dist/composition.js +26 -8
  81. package/dist/{context-CEAKQ5T7.js → context-YWUZDG5X.js} +5 -5
  82. package/dist/convex-api/dataModel.d.ts +1 -0
  83. package/dist/convex-api/dataModel.js +0 -0
  84. package/dist/convex-api.d.ts +1 -0
  85. package/dist/convex-api.js +8 -0
  86. package/dist/core/render.js +3 -3
  87. package/dist/core/select.js +2 -2
  88. package/dist/core.js +3 -3
  89. package/dist/errors.js +1 -1
  90. package/dist/mcp/adapter.js +2 -5
  91. package/dist/mcp/server.js +1 -2
  92. package/dist/mcp.js +2 -95
  93. package/dist/media-model/media-kind.js +9 -98
  94. package/dist/media-model/testing.js +1071 -718
  95. package/dist/nle-export/server.js +328 -130
  96. package/dist/nle-export/xml.js +5 -22799
  97. package/dist/nle-export.js +20 -22
  98. package/dist/primitives/backgrounds.js +2 -3
  99. package/dist/primitives/captions.js +4 -243
  100. package/dist/primitives/effects.js +2 -3
  101. package/dist/primitives/hero-text.js +2 -3
  102. package/dist/primitives/layouts.js +2 -3
  103. package/dist/primitives/lib/index.js +8 -10
  104. package/dist/primitives/lib/preview.js +1 -2
  105. package/dist/primitives/lib/schema.js +1 -2
  106. package/dist/primitives/lib/text/fitText.js +1 -2
  107. package/dist/primitives/lib.js +8 -10
  108. package/dist/primitives/scenes.js +1 -2
  109. package/dist/primitives/text.js +2 -3
  110. package/dist/primitives/ui-blocks.js +4 -5
  111. package/dist/primitives.js +19 -21
  112. package/package.json +125 -16
  113. package/dist/TextureLoader-UQOFUSAP.js +0 -422
  114. package/dist/VideoTexture-AQWSPIJG.js +0 -62
  115. package/dist/_members/account-model/index.js +0 -4
  116. package/dist/_members/account-model/testing/conversationStoreContract.js +0 -168
  117. package/dist/_members/account-model/testing/index.js +0 -7
  118. package/dist/_members/account-model/testing/restorePointStoreContract.js +0 -69
  119. package/dist/_members/account-model/types/index.js +0 -1
  120. package/dist/_members/account-model/validators/contextFile.js +0 -18
  121. package/dist/_members/account-model/validators/conversation.js +0 -95
  122. package/dist/_members/account-model/validators/dashboardInsight.js +0 -16
  123. package/dist/_members/account-model/validators/index.js +0 -7
  124. package/dist/_members/account-model/validators/sessionToken.js +0 -49
  125. package/dist/_members/account-model/validators/uploadToken.js +0 -16
  126. package/dist/_members/account-model/validators/userSettings.js +0 -12
  127. package/dist/_members/account-model/validators/workingComposition.js +0 -20
  128. package/dist/_members/brand-derivation/constants.js +0 -20
  129. package/dist/_members/brand-derivation/contrastSafe.js +0 -114
  130. package/dist/_members/brand-derivation/index.js +0 -1
  131. package/dist/_members/composition/audio/audioMix.js +0 -61
  132. package/dist/_members/composition/audio/index.js +0 -5
  133. package/dist/_members/composition/audio/mixStaging.js +0 -195
  134. package/dist/_members/composition/audio/musicPack.generated.js +0 -136
  135. package/dist/_members/composition/audio/musicPack.js +0 -36
  136. package/dist/_members/composition/audio/pack.generated.js +0 -603
  137. package/dist/_members/composition/audio/pack.js +0 -48
  138. package/dist/_members/composition/audio/palette.js +0 -134
  139. package/dist/_members/composition/autozoom/index.js +0 -83
  140. package/dist/_members/composition/brand-kit.js +0 -45
  141. package/dist/_members/composition/brief/contract.js +0 -209
  142. package/dist/_members/composition/color-grade.js +0 -80
  143. package/dist/_members/composition/depth.js +0 -8
  144. package/dist/_members/composition/fixtures/index.js +0 -143
  145. package/dist/_members/composition/fixtures/vaayaErrored.d.ts +0 -25
  146. package/dist/_members/composition/fixtures/vaayaErrored.js +0 -203
  147. package/dist/_members/composition/fonts.js +0 -162
  148. package/dist/_members/composition/graphics-plan/compile.js +0 -221
  149. package/dist/_members/composition/graphics-plan/index.js +0 -10
  150. package/dist/_members/composition/graphics-plan/instantiateMotif.js +0 -44
  151. package/dist/_members/composition/graphics-plan/motion.js +0 -66
  152. package/dist/_members/composition/graphics-plan/schemas.js +0 -261
  153. package/dist/_members/composition/graphics-plan/solve.js +0 -145
  154. package/dist/_members/composition/index.js +0 -5
  155. package/dist/_members/composition/invariants/clipPlacement.js +0 -69
  156. package/dist/_members/composition/invariants/composition.js +0 -28
  157. package/dist/_members/composition/invariants/errors.js +0 -10
  158. package/dist/_members/composition/invariants/etag.js +0 -38
  159. package/dist/_members/composition/invariants/ids.js +0 -33
  160. package/dist/_members/composition/invariants/index.js +0 -9
  161. package/dist/_members/composition/invariants/keyframes.js +0 -45
  162. package/dist/_members/composition/invariants/markers.js +0 -29
  163. package/dist/_members/composition/invariants/time.js +0 -20
  164. package/dist/_members/composition/invariants/tracks.js +0 -304
  165. package/dist/_members/composition/ops/compositionOps.js +0 -1056
  166. package/dist/_members/composition/ops/headlessStore.js +0 -94
  167. package/dist/_members/composition/ops/index.js +0 -4
  168. package/dist/_members/composition/ops/selectors.js +0 -118
  169. package/dist/_members/composition/ops/timeline-word.js +0 -1
  170. package/dist/_members/composition/ops/transcript.js +0 -77
  171. package/dist/_members/composition/ops/types.js +0 -16
  172. package/dist/_members/composition/primitive-catalog/catalogQuery.js +0 -150
  173. package/dist/_members/composition/primitive-catalog/disabled.js +0 -32
  174. package/dist/_members/composition/primitive-catalog/generated/meta.js +0 -15161
  175. package/dist/_members/composition/primitive-catalog/index.js +0 -46
  176. package/dist/_members/composition/primitive-catalog/paramValidation.js +0 -231
  177. package/dist/_members/composition/primitive-catalog/projection.js +0 -164
  178. package/dist/_members/composition/primitive-catalog/types.js +0 -14
  179. package/dist/_members/composition/projection/behind-placement.js +0 -62
  180. package/dist/_members/composition/projection/brandKit.js +0 -482
  181. package/dist/_members/composition/projection/cardTokens.js +0 -209
  182. package/dist/_members/composition/projection/composition-floor.js +0 -582
  183. package/dist/_members/composition/projection/cropProjection.js +0 -257
  184. package/dist/_members/composition/projection/index.js +0 -7
  185. package/dist/_members/composition/projection/occlusion-budget.js +0 -104
  186. package/dist/_members/composition/projection/safe-zones.js +0 -99
  187. package/dist/_members/composition/reframe/aspectLoss.js +0 -115
  188. package/dist/_members/composition/reframe/coverage.js +0 -62
  189. package/dist/_members/composition/reframe/derive.js +0 -73
  190. package/dist/_members/composition/reframe/index.js +0 -109
  191. package/dist/_members/composition/reframe/kenBurns.js +0 -64
  192. package/dist/_members/composition/reframe/shotScale.js +0 -176
  193. package/dist/_members/composition/reframe/trajectory.js +0 -124
  194. package/dist/_members/composition/timeline/compound.js +0 -134
  195. package/dist/_members/composition/timeline/index.js +0 -9
  196. package/dist/_members/composition/timeline/intent.js +0 -228
  197. package/dist/_members/composition/timeline/keyframes.js +0 -121
  198. package/dist/_members/composition/timeline/link.js +0 -59
  199. package/dist/_members/composition/timeline/occupancy.js +0 -36
  200. package/dist/_members/composition/timeline/placement.js +0 -74
  201. package/dist/_members/composition/timeline/plan.js +0 -31
  202. package/dist/_members/composition/timeline/resolve.js +0 -170
  203. package/dist/_members/composition/timeline/trims.js +0 -278
  204. package/dist/_members/composition/types/index.js +0 -1
  205. package/dist/_members/composition/validators/brandKit.js +0 -295
  206. package/dist/_members/composition/validators/composePlan.js +0 -113
  207. package/dist/_members/composition/validators/composition.js +0 -703
  208. package/dist/_members/composition/validators/font.js +0 -34
  209. package/dist/_members/composition/validators/graphicKinds.js +0 -30
  210. package/dist/_members/composition/validators/index.js +0 -9
  211. package/dist/_members/composition/validators/project.js +0 -29
  212. package/dist/_members/composition/validators/registry.js +0 -41
  213. package/dist/_members/composition/validators/render.js +0 -139
  214. package/dist/_members/composition/validators/session.js +0 -37
  215. package/dist/_members/composition/validators/webhook.js +0 -72
  216. package/dist/_members/composition-ops/alphaLayers.js +0 -141
  217. package/dist/_members/composition-ops/index.js +0 -637
  218. package/dist/_members/composition-ops/materializeGrid.js +0 -99
  219. package/dist/_members/composition-ops/opRecorder.js +0 -196
  220. package/dist/_members/composition-ops/recordingStore.js +0 -14
  221. package/dist/_members/composition-ops/replaceRegion.js +0 -102
  222. package/dist/_members/composition-ops/testFixtures.js +0 -19
  223. package/dist/_members/core/index.js +0 -5
  224. package/dist/_members/core/render/bookends.js +0 -53
  225. package/dist/_members/core/render/captions.js +0 -127
  226. package/dist/_members/core/render/compositionRender.js +0 -1249
  227. package/dist/_members/core/render/deriveTrajectory.js +0 -889
  228. package/dist/_members/core/render/emphasis.js +0 -16
  229. package/dist/_members/core/render/eval/cropBox.js +0 -139
  230. package/dist/_members/core/render/eval/inclusion.js +0 -96
  231. package/dist/_members/core/render/eval/index.js +0 -146
  232. package/dist/_members/core/render/eval/metrics.js +0 -94
  233. package/dist/_members/core/render/exportSettings.js +0 -65
  234. package/dist/_members/core/render/index.js +0 -20
  235. package/dist/_members/core/render/mapFaceToPerson.js +0 -73
  236. package/dist/_members/core/render/types.js +0 -8
  237. package/dist/_members/core/render/vcam/cameraPath.js +0 -248
  238. package/dist/_members/core/render/vcam/constants.js +0 -115
  239. package/dist/_members/core/render/vcam/errorCodes.js +0 -39
  240. package/dist/_members/core/render/vcam/framing.js +0 -136
  241. package/dist/_members/core/render/vcam/requiredRegion.js +0 -137
  242. package/dist/_members/core/render/vcam/shots.js +0 -53
  243. package/dist/_members/core/render/vcam/subjectSet.js +0 -388
  244. package/dist/_members/core/select/errorCodes.js +0 -38
  245. package/dist/_members/core/select/index.js +0 -26
  246. package/dist/_members/core/select/model.js +0 -18
  247. package/dist/_members/core/select/select.js +0 -244
  248. package/dist/_members/core/select/stabilize.js +0 -242
  249. package/dist/_members/core/types.js +0 -7
  250. package/dist/_members/errors/index.js +0 -1
  251. package/dist/_members/errors/registry.js +0 -560
  252. package/dist/_members/foundation/codes/index.js +0 -31
  253. package/dist/_members/foundation/index.js +0 -2
  254. package/dist/_members/foundation/primitives/index.js +0 -5
  255. package/dist/_members/mcp/adapter.js +0 -771
  256. package/dist/_members/mcp/burnedNames.js +0 -73
  257. package/dist/_members/mcp/core.js +0 -390
  258. package/dist/_members/mcp/curation.js +0 -792
  259. package/dist/_members/mcp/executor.js +0 -142
  260. package/dist/_members/mcp/format.js +0 -9
  261. package/dist/_members/mcp/generated/catalogPreviews.js +0 -95
  262. package/dist/_members/mcp/generated/harness.js +0 -81
  263. package/dist/_members/mcp/generated/operations.js +0 -131
  264. package/dist/_members/mcp/index.js +0 -50
  265. package/dist/_members/mcp/internalLoopTools.js +0 -109
  266. package/dist/_members/mcp/prompts.js +0 -45
  267. package/dist/_members/mcp/resources.js +0 -166
  268. package/dist/_members/mcp/server.js +0 -340
  269. package/dist/_members/mcp/wait.js +0 -378
  270. package/dist/_members/mcp/x402Meta.js +0 -66
  271. package/dist/_members/media-model/api.js +0 -175
  272. package/dist/_members/media-model/index.js +0 -1
  273. package/dist/_members/media-model/media-kind.js +0 -116
  274. package/dist/_members/media-model/testing/index.js +0 -1
  275. package/dist/_members/media-model/testing/mediaStoreContract.js +0 -82
  276. package/dist/_members/media-model/transcriptSearch.js +0 -70
  277. package/dist/_members/media-model/transcriptSearchCases.json +0 -79
  278. package/dist/_members/nle-export/compact-timeline.js +0 -73
  279. package/dist/_members/nle-export/compact-timeline.js.map +0 -1
  280. package/dist/_members/nle-export/composition-to-input.js +0 -147
  281. package/dist/_members/nle-export/composition-to-input.js.map +0 -1
  282. package/dist/_members/nle-export/fcpxml.js +0 -159
  283. package/dist/_members/nle-export/fcpxml.js.map +0 -1
  284. package/dist/_members/nle-export/index.js +0 -12
  285. package/dist/_members/nle-export/index.js.map +0 -1
  286. package/dist/_members/nle-export/premiere.js +0 -161
  287. package/dist/_members/nle-export/premiere.js.map +0 -1
  288. package/dist/_members/nle-export/server/index.js +0 -2
  289. package/dist/_members/nle-export/server/index.js.map +0 -1
  290. package/dist/_members/nle-export/server/pack-zip.js +0 -38
  291. package/dist/_members/nle-export/server/pack-zip.js.map +0 -1
  292. package/dist/_members/nle-export/srt.js +0 -50
  293. package/dist/_members/nle-export/srt.js.map +0 -1
  294. package/dist/_members/nle-export/types.js +0 -9
  295. package/dist/_members/nle-export/types.js.map +0 -1
  296. package/dist/_members/nle-export/xml/index.js +0 -11
  297. package/dist/_members/nle-export/xml/index.js.map +0 -1
  298. package/dist/_members/nle-export/xml-utils.js +0 -48
  299. package/dist/_members/nle-export/xml-utils.js.map +0 -1
  300. package/dist/_members/perception/activeSpeaker.js +0 -103
  301. package/dist/_members/perception/audioQuality.js +0 -76
  302. package/dist/_members/perception/energyBeat.js +0 -99
  303. package/dist/_members/perception/identityMatch.js +0 -91
  304. package/dist/_members/perception/index.js +0 -48
  305. package/dist/_members/perception/visualQuality.js +0 -95
  306. package/dist/_members/plane/conformance.js +0 -90
  307. package/dist/_members/plane/contract.js +0 -49
  308. package/dist/_members/plane/index.js +0 -16
  309. package/dist/_members/primitives/backgrounds/index.js +0 -32
  310. package/dist/_members/primitives/backgrounds/index.js.map +0 -1
  311. package/dist/_members/primitives/captions/index.js +0 -398
  312. package/dist/_members/primitives/captions/index.js.map +0 -1
  313. package/dist/_members/primitives/chunk-2LVE4UIT.js +0 -139
  314. package/dist/_members/primitives/chunk-2LVE4UIT.js.map +0 -1
  315. package/dist/_members/primitives/chunk-3IQUH6KK.js +0 -20
  316. package/dist/_members/primitives/chunk-3IQUH6KK.js.map +0 -1
  317. package/dist/_members/primitives/chunk-3OMURV6Q.js +0 -112
  318. package/dist/_members/primitives/chunk-3OMURV6Q.js.map +0 -1
  319. package/dist/_members/primitives/chunk-4IS6TMEG.js +0 -21
  320. package/dist/_members/primitives/chunk-4IS6TMEG.js.map +0 -1
  321. package/dist/_members/primitives/chunk-5MWGAEGQ.js +0 -1644
  322. package/dist/_members/primitives/chunk-5MWGAEGQ.js.map +0 -1
  323. package/dist/_members/primitives/chunk-7RRPFPQK.js +0 -15
  324. package/dist/_members/primitives/chunk-7RRPFPQK.js.map +0 -1
  325. package/dist/_members/primitives/chunk-DH5TRZK2.js +0 -125
  326. package/dist/_members/primitives/chunk-DH5TRZK2.js.map +0 -1
  327. package/dist/_members/primitives/chunk-E3KNUSFG.js +0 -2337
  328. package/dist/_members/primitives/chunk-E3KNUSFG.js.map +0 -1
  329. package/dist/_members/primitives/chunk-G2B3G4HK.js +0 -47
  330. package/dist/_members/primitives/chunk-G2B3G4HK.js.map +0 -1
  331. package/dist/_members/primitives/chunk-HFPFGZXT.js +0 -1494
  332. package/dist/_members/primitives/chunk-HFPFGZXT.js.map +0 -1
  333. package/dist/_members/primitives/chunk-HIWVFZVH.js +0 -19
  334. package/dist/_members/primitives/chunk-HIWVFZVH.js.map +0 -1
  335. package/dist/_members/primitives/chunk-IDAL6G3Y.js.map +0 -1
  336. package/dist/_members/primitives/chunk-KNC6JP5F.js +0 -34
  337. package/dist/_members/primitives/chunk-KNC6JP5F.js.map +0 -1
  338. package/dist/_members/primitives/chunk-KYRDVZST.js +0 -459
  339. package/dist/_members/primitives/chunk-KYRDVZST.js.map +0 -1
  340. package/dist/_members/primitives/chunk-LWLHS2NS.js +0 -3410
  341. package/dist/_members/primitives/chunk-LWLHS2NS.js.map +0 -1
  342. package/dist/_members/primitives/chunk-QAQ3P7DR.js +0 -8855
  343. package/dist/_members/primitives/chunk-QAQ3P7DR.js.map +0 -1
  344. package/dist/_members/primitives/chunk-ROV2ODWC.js +0 -81
  345. package/dist/_members/primitives/chunk-ROV2ODWC.js.map +0 -1
  346. package/dist/_members/primitives/chunk-TCRC2FH3.js +0 -183
  347. package/dist/_members/primitives/chunk-TCRC2FH3.js.map +0 -1
  348. package/dist/_members/primitives/chunk-US4YEDAA.js +0 -96
  349. package/dist/_members/primitives/chunk-US4YEDAA.js.map +0 -1
  350. package/dist/_members/primitives/chunk-UVKRO5ER.js +0 -13
  351. package/dist/_members/primitives/chunk-UVKRO5ER.js.map +0 -1
  352. package/dist/_members/primitives/chunk-W4EIIF2I.js +0 -10
  353. package/dist/_members/primitives/chunk-W4EIIF2I.js.map +0 -1
  354. package/dist/_members/primitives/chunk-WPGKIPCO.js +0 -3563
  355. package/dist/_members/primitives/chunk-WPGKIPCO.js.map +0 -1
  356. package/dist/_members/primitives/chunk-WZFLEGMD.js +0 -1435
  357. package/dist/_members/primitives/chunk-WZFLEGMD.js.map +0 -1
  358. package/dist/_members/primitives/chunk-XHU3WBEI.js +0 -33
  359. package/dist/_members/primitives/chunk-XHU3WBEI.js.map +0 -1
  360. package/dist/_members/primitives/chunk-YN7WTZZ7.js +0 -46
  361. package/dist/_members/primitives/chunk-YN7WTZZ7.js.map +0 -1
  362. package/dist/_members/primitives/effects/index.js +0 -30
  363. package/dist/_members/primitives/effects/index.js.map +0 -1
  364. package/dist/_members/primitives/hero-text/index.js +0 -14
  365. package/dist/_members/primitives/hero-text/index.js.map +0 -1
  366. package/dist/_members/primitives/index.js +0 -64
  367. package/dist/_members/primitives/index.js.map +0 -1
  368. package/dist/_members/primitives/layouts/index.js +0 -24
  369. package/dist/_members/primitives/layouts/index.js.map +0 -1
  370. package/dist/_members/primitives/lib/easings.js +0 -26
  371. package/dist/_members/primitives/lib/easings.js.map +0 -1
  372. package/dist/_members/primitives/lib/index.js +0 -74
  373. package/dist/_members/primitives/lib/index.js.map +0 -1
  374. package/dist/_members/primitives/lib/palette.js +0 -72
  375. package/dist/_members/primitives/lib/palette.js.map +0 -1
  376. package/dist/_members/primitives/lib/preview.js +0 -8
  377. package/dist/_members/primitives/lib/preview.js.map +0 -1
  378. package/dist/_members/primitives/lib/schema.js +0 -12
  379. package/dist/_members/primitives/lib/schema.js.map +0 -1
  380. package/dist/_members/primitives/lib/seeded-random.js +0 -14
  381. package/dist/_members/primitives/lib/seeded-random.js.map +0 -1
  382. package/dist/_members/primitives/lib/text/contrast.js +0 -12
  383. package/dist/_members/primitives/lib/text/contrast.js.map +0 -1
  384. package/dist/_members/primitives/lib/text/fill.js +0 -8
  385. package/dist/_members/primitives/lib/text/fill.js.map +0 -1
  386. package/dist/_members/primitives/lib/text/fitText.js +0 -10
  387. package/dist/_members/primitives/lib/text/fitText.js.map +0 -1
  388. package/dist/_members/primitives/lib/text/marker.js +0 -8
  389. package/dist/_members/primitives/lib/text/marker.js.map +0 -1
  390. package/dist/_members/primitives/lib/text/motion.js +0 -16
  391. package/dist/_members/primitives/lib/text/motion.js.map +0 -1
  392. package/dist/_members/primitives/lib/text/recolor.js +0 -8
  393. package/dist/_members/primitives/lib/text/recolor.js.map +0 -1
  394. package/dist/_members/primitives/lib/text/spec.js +0 -1
  395. package/dist/_members/primitives/lib/text/spec.js.map +0 -1
  396. package/dist/_members/primitives/lib/text/stage.js +0 -8
  397. package/dist/_members/primitives/lib/text/stage.js.map +0 -1
  398. package/dist/_members/primitives/lib/text/typeface.js +0 -8
  399. package/dist/_members/primitives/lib/text/typeface.js.map +0 -1
  400. package/dist/_members/primitives/lib/tokens.js +0 -24
  401. package/dist/_members/primitives/lib/tokens.js.map +0 -1
  402. package/dist/_members/primitives/lib/types.js +0 -1
  403. package/dist/_members/primitives/lib/types.js.map +0 -1
  404. package/dist/_members/primitives/params-required.json +0 -153
  405. package/dist/_members/primitives/scenes/index.js +0 -25
  406. package/dist/_members/primitives/scenes/index.js.map +0 -1
  407. package/dist/_members/primitives/subject-foreground/index.js +0 -30
  408. package/dist/_members/primitives/subject-foreground/index.js.map +0 -1
  409. package/dist/_members/primitives/text/index.js +0 -57
  410. package/dist/_members/primitives/text/index.js.map +0 -1
  411. package/dist/_members/primitives/transitions/index.js +0 -67
  412. package/dist/_members/primitives/transitions/index.js.map +0 -1
  413. package/dist/_members/primitives/ui-blocks/index.js +0 -76
  414. package/dist/_members/primitives/ui-blocks/index.js.map +0 -1
  415. package/dist/_members/primitives/version-map.json +0 -105
  416. package/dist/_members/primitives/workspace.js +0 -60
  417. package/dist/_members/primitives/workspace.js.map +0 -1
  418. package/dist/chunk-7GISRVON.js +0 -14176
  419. package/dist/chunk-DIBOJJMU.js +0 -16838
  420. package/dist/chunk-EAUSEGB7.js +0 -420
  421. package/dist/chunk-FUWJOVVK.js +0 -3633
  422. package/dist/chunk-G75E7YA4.js +0 -11883
  423. package/dist/chunk-JCZQT7K3.js +0 -3266
  424. package/dist/chunk-KF5ETMKB.js +0 -544
  425. package/dist/chunk-NDKERSXY.js +0 -1296
  426. package/dist/chunk-V43Y7IE4.js +0 -3621
  427. package/dist/chunk-VIVQHIGZ.js +0 -4319
  428. package/dist/chunk-YA3OR2KK.js +0 -249
  429. package/dist/hls-HD4C5G6W.js +0 -33000
  430. package/dist/token-RGFIT24D.js +0 -69
  431. package/dist/token-util-GPLSGYVO.js +0 -5
  432. package/dist/vision_bundle-5Y376MAR.js +0 -4084
package/dist/authoring.js CHANGED
@@ -1,9 +1,11 @@
1
1
  import {
2
- anthropic,
2
+ buildDirectorContext
3
+ } from "./chunk-AQBREB5O.js";
4
+ import {
3
5
  buildFastModel,
4
6
  buildModel,
5
7
  makeLangfuseFetch
6
- } from "./chunk-DIBOJJMU.js";
8
+ } from "./chunk-ZT7MHRQU.js";
7
9
  import {
8
10
  PipelineTrace
9
11
  } from "./chunk-LD5ZOUFT.js";
@@ -20,23 +22,14 @@ import {
20
22
  buildPlannerUserMessage,
21
23
  formatPlanSteps,
22
24
  initCodeGenPrompts
23
- } from "./chunk-M3I5LMAB.js";
25
+ } from "./chunk-UY4SWJVE.js";
24
26
  import {
25
27
  ZERO_USAGE,
26
28
  buildDirectorTools,
27
29
  buildPlannerTools,
28
30
  buildToolsFromSchemas,
29
31
  extractProviderError
30
- } from "./chunk-ELLSET2N.js";
31
- import {
32
- ToolLoopAgent,
33
- generateObject,
34
- generateText,
35
- isStepCount,
36
- pruneMessages
37
- } from "./chunk-7GISRVON.js";
38
- import "./chunk-KF5ETMKB.js";
39
- import "./chunk-VIVQHIGZ.js";
32
+ } from "./chunk-UHGSZZDI.js";
40
33
  import {
41
34
  COMPOSE_MOTION_TOOLS,
42
35
  COMPOSE_MOTION_VERIFY_TOOLS,
@@ -45,33 +38,34 @@ import {
45
38
  COMPOSE_ROLE_TOOLS,
46
39
  COMPOSE_ROLE_TOOL_NAMES,
47
40
  dispatchComposeRoleTool
48
- } from "./chunk-52AHXNKM.js";
41
+ } from "./chunk-PDYO3DOJ.js";
49
42
  import {
50
43
  AgentFixableCaptureError,
51
44
  getExcludedTools
52
45
  } from "./chunk-JOURGVOR.js";
53
- import {
54
- buildDirectorContext
55
- } from "./chunk-QLAQHR3L.js";
56
- import "./chunk-5I7VDCAC.js";
57
- import "./chunk-NV4I6GJV.js";
58
- import "./chunk-OIRUO5P7.js";
46
+ import "./chunk-7FO3ZJ43.js";
47
+ import "./chunk-ZWMV6DD2.js";
48
+ import "./chunk-7PA7FGLD.js";
49
+ import "./chunk-KYRDKK2D.js";
50
+ import "./chunk-JJ6XD7NG.js";
59
51
  import {
60
52
  cssLayoutVars
61
- } from "./chunk-BRKJKB33.js";
62
- import "./chunk-V43Y7IE4.js";
53
+ } from "./chunk-FYZVH3MC.js";
54
+ import "./chunk-DSMLHYJ4.js";
63
55
  import "./chunk-JF4JJAFP.js";
64
- import "./chunk-TULRCY6U.js";
65
- import "./chunk-ATAF24QG.js";
56
+ import "./chunk-TOJEXFXL.js";
57
+ import "./chunk-PODIYN2K.js";
66
58
  import "./chunk-W35ZMOXB.js";
67
59
  import "./chunk-EA6MYCYW.js";
68
- import "./chunk-7PA7FGLD.js";
69
- import "./chunk-KYRDKK2D.js";
70
60
  import "./chunk-WREYUH2E.js";
71
- import "./chunk-37NJ27UU.js";
61
+ import "./chunk-OCFDUCF4.js";
72
62
  import "./chunk-2ESYSVXG.js";
73
63
 
64
+ // ../authoring/src/agent.ts
65
+ import { ToolLoopAgent, generateText, isStepCount } from "ai";
66
+
74
67
  // ../authoring/src/agent/contextManagement.ts
68
+ import { pruneMessages } from "ai";
75
69
  var EVICTED_IMAGE_STUB = "[capture still evicted to save context \u2014 the frame was seen and acted on; re-capture ONLY if you must re-verify pixels]";
76
70
  function outputHasMedia(output) {
77
71
  if (!output || typeof output !== "object") return false;
@@ -157,6 +151,7 @@ var cachePrepareStep = ({ model, messages }) => ({
157
151
  });
158
152
 
159
153
  // ../authoring/src/evaluate.ts
154
+ import { generateObject } from "ai";
160
155
  import { z } from "zod";
161
156
  var CriterionResultSchema = z.object({
162
157
  name: z.string(),
@@ -237,6 +232,7 @@ Above are ${frames.length} captured frames. Use them to evaluate visual criteria
237
232
  }
238
233
 
239
234
  // ../authoring/src/evaluator.ts
235
+ import { generateObject as generateObject2 } from "ai";
240
236
  import { z as z2 } from "zod";
241
237
  var EvaluationSchema = z2.object({
242
238
  scores: z2.record(z2.string(), z2.number()),
@@ -291,7 +287,7 @@ function toEvaluationResult(obj, rubric) {
291
287
  async function evaluateArtifact(model, artifact, task, rubric, verificationCriteria) {
292
288
  const dimensionsText = buildDimensionsText(rubric.dimensions);
293
289
  const criteriaText = buildCriteriaText(verificationCriteria);
294
- const { object } = await generateObject({
290
+ const { object } = await generateObject2({
295
291
  model,
296
292
  schema: EvaluationSchema,
297
293
  instructions: EVALUATOR_PROMPT,
@@ -327,7 +323,7 @@ ${compositionContext}` }
327
323
 
328
324
  Above are ${capturedFrames.length} captured frames. Inspect for visual quality, positioning, and timing.` });
329
325
  }
330
- const { object } = await generateObject({
326
+ const { object } = await generateObject2({
331
327
  model,
332
328
  schema: EvaluationSchema,
333
329
  instructions: EVALUATOR_PROMPT,
@@ -878,6 +874,7 @@ function addUsage(a, b) {
878
874
  }
879
875
 
880
876
  // ../authoring/src/agent/memoryTool.ts
877
+ import { anthropic } from "@ai-sdk/anthropic";
881
878
  var MAX_MEMORY_CHARS = 16e3;
882
879
  var ROOT = "/memories";
883
880
  function totalChars(store) {
@@ -981,6 +978,7 @@ ${body}`;
981
978
  }
982
979
 
983
980
  // ../authoring/src/decomposer.ts
981
+ import { generateObject as generateObject3 } from "ai";
984
982
  import { z as z3 } from "zod";
985
983
 
986
984
  // ../authoring/src/prompts/decomposerPrompt.ts
@@ -1044,7 +1042,7 @@ function singlePhase(task) {
1044
1042
  }
1045
1043
  async function decompose(model, task, context) {
1046
1044
  try {
1047
- const { object } = await generateObject({
1045
+ const { object } = await generateObject3({
1048
1046
  model,
1049
1047
  schema: PhaseSchema,
1050
1048
  instructions: DECOMPOSER_PROMPT,
@@ -1161,6 +1159,8 @@ var MotionPresetError = class extends Error {
1161
1159
  this.opIndex = opIndex;
1162
1160
  this.name = "MotionPresetError";
1163
1161
  }
1162
+ code;
1163
+ opIndex;
1164
1164
  };
1165
1165
  function resolveMotionPresetCard(composition, input) {
1166
1166
  if (!MOTION_PRESETS.includes(input.preset)) {
@@ -4,7 +4,7 @@ import {
4
4
  clampToFloor,
5
5
  deriveContrastSafe,
6
6
  relativeLuminance
7
- } from "./chunk-V43Y7IE4.js";
7
+ } from "./chunk-DSMLHYJ4.js";
8
8
  import {
9
9
  DERIVATION_VERSION,
10
10
  FLOORS,
@@ -0,0 +1,107 @@
1
+ // ../data-models/media-model/src/media-kind.ts
2
+ var IMAGE_CONTENT_TYPES = ["image/png", "image/jpeg", "image/webp"];
3
+ var ALLOWED_CONTENT_TYPES = [
4
+ "video/mp4",
5
+ "video/quicktime",
6
+ "video/x-matroska",
7
+ "video/webm",
8
+ "audio/mpeg",
9
+ "audio/wav",
10
+ "audio/x-wav",
11
+ "audio/mp4",
12
+ "audio/aac",
13
+ "image/png",
14
+ "image/jpeg",
15
+ "image/webp",
16
+ "image/gif",
17
+ "image/svg+xml",
18
+ "application/json",
19
+ "font/ttf",
20
+ "font/otf",
21
+ "font/woff",
22
+ "font/woff2"
23
+ ];
24
+ function mediaKind(contentType) {
25
+ const ct = (contentType || "").toLowerCase();
26
+ if (ct.startsWith("video/")) return "video";
27
+ if (ct.startsWith("audio/")) return "audio";
28
+ if (IMAGE_CONTENT_TYPES.includes(ct)) return "image";
29
+ return "opaque";
30
+ }
31
+ var EXT = {
32
+ "video/mp4": "mp4",
33
+ "audio/mp4": "mp4",
34
+ "video/quicktime": "mov",
35
+ "video/x-matroska": "mkv",
36
+ "video/webm": "webm",
37
+ "video/x-msvideo": "avi",
38
+ "audio/mpeg": "mp3",
39
+ "audio/wav": "wav",
40
+ "audio/x-wav": "wav",
41
+ "audio/aac": "aac",
42
+ "audio/ogg": "ogg",
43
+ "audio/flac": "flac",
44
+ "image/png": "png",
45
+ "image/jpeg": "jpg",
46
+ "image/webp": "webp",
47
+ "font/ttf": "ttf",
48
+ "font/otf": "otf",
49
+ "font/woff": "woff",
50
+ "font/woff2": "woff2",
51
+ "application/json": "json",
52
+ "image/svg+xml": "svg",
53
+ "image/gif": "gif"
54
+ };
55
+ function extensionForContentType(contentType) {
56
+ return EXT[(contentType || "").toLowerCase()] ?? "bin";
57
+ }
58
+ var CONTENT_TYPE_ALIASES = {
59
+ "audio/mp3": "audio/mpeg",
60
+ "audio/x-mp3": "audio/mpeg",
61
+ "audio/x-mpeg": "audio/mpeg",
62
+ "audio/mpeg3": "audio/mpeg",
63
+ "audio/x-mpeg-3": "audio/mpeg",
64
+ "audio/x-m4a": "audio/mp4",
65
+ "audio/m4a": "audio/mp4",
66
+ "audio/wave": "audio/wav",
67
+ "audio/vnd.wave": "audio/wav",
68
+ "audio/x-aac": "audio/aac",
69
+ "image/jpg": "image/jpeg",
70
+ "video/x-quicktime": "video/quicktime",
71
+ "video/mov": "video/quicktime",
72
+ "video/x-m4v": "video/mp4",
73
+ "video/mkv": "video/x-matroska"
74
+ };
75
+ var TYPE_BY_EXTENSION = Object.entries(EXT).reduce(
76
+ (acc, [contentType, ext]) => {
77
+ if (!(ext in acc)) acc[ext] = contentType;
78
+ return acc;
79
+ },
80
+ {}
81
+ );
82
+ TYPE_BY_EXTENSION["jpeg"] = "image/jpeg";
83
+ TYPE_BY_EXTENSION["m4a"] = "audio/mp4";
84
+ function mediaKindForFilename(filename) {
85
+ return mediaKind(contentTypeForUpload(filename, null));
86
+ }
87
+ var POOL_EXTENSIONS = Object.entries(TYPE_BY_EXTENSION).filter(([, contentType]) => mediaKind(contentType) !== "opaque").map(([ext]) => ext);
88
+ function contentTypeForUpload(filename, claimed) {
89
+ const ct = (claimed ?? "").trim().toLowerCase();
90
+ const allowed = ALLOWED_CONTENT_TYPES;
91
+ if (ct && allowed.includes(ct)) return ct;
92
+ if (ct && CONTENT_TYPE_ALIASES[ct]) return CONTENT_TYPE_ALIASES[ct];
93
+ const ext = filename.toLowerCase().split(".").pop() ?? "";
94
+ const byExt = TYPE_BY_EXTENSION[ext];
95
+ if (byExt) return byExt;
96
+ return ct;
97
+ }
98
+
99
+ export {
100
+ IMAGE_CONTENT_TYPES,
101
+ ALLOWED_CONTENT_TYPES,
102
+ mediaKind,
103
+ extensionForContentType,
104
+ mediaKindForFilename,
105
+ POOL_EXTENSIONS,
106
+ contentTypeForUpload
107
+ };
@@ -14236,7 +14236,7 @@ var PRIMITIVE_META = [
14236
14236
  "type": "log"
14237
14237
  },
14238
14238
  {
14239
- "text": "\u2713 Created components/cueframe/typewriter.tsx",
14239
+ "text": "\u2713 Created components/apps/studio/typewriter.tsx",
14240
14240
  "type": "success"
14241
14241
  },
14242
14242
  {
@@ -15484,6 +15484,9 @@ var CatalogFilterError = class extends Error {
15484
15484
  this.allowed = allowed;
15485
15485
  this.name = "CatalogFilterError";
15486
15486
  }
15487
+ field;
15488
+ value;
15489
+ allowed;
15487
15490
  };
15488
15491
  var CatalogCursorError = class extends Error {
15489
15492
  constructor(message = "The supplied cursor is invalid or expired.") {
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  FitText
3
- } from "./chunk-DSNG6WLU.js";
3
+ } from "./chunk-AYVJXDLB.js";
4
4
  import {
5
5
  ACCENT,
6
6
  ACCENT_STRONG,
@@ -1,41 +1,41 @@
1
1
  import {
2
2
  isContrastCritical
3
3
  } from "./chunk-7DHP4ESU.js";
4
- import {
5
- catalog as catalog8
6
- } from "./chunk-P43IE4WB.js";
7
- import {
8
- catalog as catalog4
9
- } from "./chunk-6QJ3V3VS.js";
10
- import {
11
- catalog as catalog7
12
- } from "./chunk-JD77Y2WM.js";
13
4
  import {
14
5
  catalog
15
- } from "./chunk-WZTTZHNR.js";
6
+ } from "./chunk-OLFOPQCA.js";
16
7
  import {
17
8
  catalog as catalog3
18
9
  } from "./chunk-AWT3P5ZN.js";
19
10
  import {
20
11
  catalog as catalog6
21
- } from "./chunk-MVEE6HEC.js";
12
+ } from "./chunk-GA23TRNR.js";
22
13
  import {
23
14
  catalog as catalog5
24
- } from "./chunk-S3P5BFFL.js";
15
+ } from "./chunk-PMY24FUD.js";
25
16
  import {
26
17
  catalog as catalog2
27
- } from "./chunk-N67PDTKQ.js";
18
+ } from "./chunk-ABL557OT.js";
19
+ import {
20
+ catalog as catalog8
21
+ } from "./chunk-P727GZVO.js";
22
+ import {
23
+ catalog as catalog4
24
+ } from "./chunk-YX2GSJK7.js";
25
+ import {
26
+ catalog as catalog7
27
+ } from "./chunk-SW336CJP.js";
28
28
  import {
29
29
  getPrimitiveSubtextParam,
30
30
  getPrimitiveTextParam
31
- } from "./chunk-5I7VDCAC.js";
31
+ } from "./chunk-7FO3ZJ43.js";
32
32
  import {
33
33
  NEUTRAL_RAMP
34
34
  } from "./chunk-JF4JJAFP.js";
35
35
  import {
36
36
  CueframeError,
37
37
  encodeError
38
- } from "./chunk-37NJ27UU.js";
38
+ } from "./chunk-OCFDUCF4.js";
39
39
 
40
40
  // ../execution/compose/src/primitiveRegistry.ts
41
41
  var allCatalogs = [
@@ -2,7 +2,7 @@ import {
2
2
  selectAllClips,
3
3
  selectAllOverlays,
4
4
  selectSceneMarkers
5
- } from "./chunk-NV4I6GJV.js";
5
+ } from "./chunk-ZWMV6DD2.js";
6
6
 
7
7
  // ../authoring/src/context/transcript.ts
8
8
  var MAX_TRANSCRIPT_CHARS = 6e4;
@@ -1,9 +1,6 @@
1
- import {
2
- fitTextOnNLines
3
- } from "./chunk-YA3OR2KK.js";
4
-
5
1
  // ../execution/primitives/src/lib/text/fitText.tsx
6
2
  import React from "react";
3
+ import { fitTextOnNLines } from "@remotion/layout-utils";
7
4
  function resolveFitFontSize({
8
5
  singleLineFitFontSize,
9
6
  minFontSize,
@@ -3,10 +3,6 @@ import {
3
3
  buildEasedZooms,
4
4
  buildPannedCenters
5
5
  } from "./chunk-QH3YI3ND.js";
6
- import {
7
- flattenCompoundClips,
8
- hasCompoundClips
9
- } from "./chunk-TWQOKKAF.js";
10
6
  import {
11
7
  DOMINANCE_WEIGHTS,
12
8
  ENTER_SEC,
@@ -24,7 +20,11 @@ import {
24
20
  scoreAndRank,
25
21
  segmentShots,
26
22
  stabilizeSelectionHysteresis
27
- } from "./chunk-JRQVPFLF.js";
23
+ } from "./chunk-HY3RIEZW.js";
24
+ import {
25
+ flattenCompoundClips,
26
+ hasCompoundClips
27
+ } from "./chunk-TWQOKKAF.js";
28
28
  import {
29
29
  compositionHasVo,
30
30
  roleDefaultGainDb
@@ -36,7 +36,7 @@ import {
36
36
  import {
37
37
  CueframeError,
38
38
  encodeError
39
- } from "./chunk-37NJ27UU.js";
39
+ } from "./chunk-OCFDUCF4.js";
40
40
 
41
41
  // ../execution/core/src/render/emphasis.ts
42
42
  function buildEmphasisSet(emphasisWords) {
@@ -323,7 +323,7 @@ function playableSpans(trimStart, trimEnd, excluded) {
323
323
  if (cursor < trimEnd) out.push({ start: cursor, end: trimEnd });
324
324
  return out;
325
325
  }
326
- function projectMediaTrack(track, fps, srcUrls, trajectoryUrls, coViewUrls) {
326
+ function projectMediaTrack(track, fps, srcUrls, trajectoryUrls, coViewUrls, trajectories) {
327
327
  const clips = [];
328
328
  const audio = [];
329
329
  const effects = [];
@@ -434,6 +434,11 @@ function projectMediaTrack(track, fps, srcUrls, trajectoryUrls, coViewUrls) {
434
434
  // mediaItems.variants[intentHash][aspect].trajectoryR2Key per clip
435
435
  // and presigns it.
436
436
  ...trajectoryUrls?.[c.id] !== void 0 ? { cropTrajectoryUrl: trajectoryUrls[c.id] } : {},
437
+ // The same trajectory IN MEMORY — the editor's path. It derives the
438
+ // trajectory client-side from the presigned subject track on the media
439
+ // row, so there is no object to fetch. Keyed by the PARENT wire-clip id
440
+ // for the same reason the URL map is. See `CompositionClip.cropTrajectory`.
441
+ ...trajectories?.[c.id] !== void 0 ? { cropTrajectory: trajectories[c.id] } : {},
437
442
  // Captions-behind CO-VIEW. Content-driven (Phase 6): the matte gate baked
438
443
  // a crop-independent frame-packed co-view (scene over matte, one opaque
439
444
  // H.264) for any clip whose timeline range overlaps a behind-subject
@@ -457,6 +462,7 @@ function projectMediaTrack(track, fps, srcUrls, trajectoryUrls, coViewUrls) {
457
462
  if (JSON.stringify(prev.region) !== JSON.stringify(cur.region)) continue;
458
463
  if ((prev.fit ?? "cover") !== (cur.fit ?? "cover")) continue;
459
464
  if (prev.cropTrajectoryUrl !== cur.cropTrajectoryUrl) continue;
465
+ if (prev.cropTrajectory !== cur.cropTrajectory) continue;
460
466
  if ((prev.trimStartFrames ?? 0) !== (cur.trimStartFrames ?? 0)) continue;
461
467
  const prevEnd = prev.timelineStartFrames + prev.durationInFrames;
462
468
  if (Math.abs(prevEnd - cur.timelineStartFrames) > 1) continue;
@@ -759,7 +765,7 @@ function componentRefsByClipId(composition) {
759
765
  }
760
766
  return refs;
761
767
  }
762
- function compositionToRenderInput(composition, srcUrls, trajectoryUrls, coViewUrls, alphaUrls, jsSourceByClipId, subCompositions) {
768
+ function compositionToRenderInput(composition, srcUrls, trajectoryUrls, coViewUrls, alphaUrls, jsSourceByClipId, subCompositions, trajectories) {
763
769
  const flattened = hasCompoundClips(composition) ? flattenCompoundClips(composition, (id) => subCompositions?.[id]) : composition;
764
770
  composition = flattened;
765
771
  const { width, height, fps } = compositionFormatDimensions(composition.format);
@@ -770,7 +776,7 @@ function compositionToRenderInput(composition, srcUrls, trajectoryUrls, coViewUr
770
776
  for (const track of composition.tracks) {
771
777
  if (track.enabled === false) continue;
772
778
  if (track.kind === "video" || track.kind === "audio") {
773
- const { clips: c, audio, effects: clipEffects } = projectMediaTrack(track, fps, srcUrls, trajectoryUrls, coViewUrls);
779
+ const { clips: c, audio, effects: clipEffects } = projectMediaTrack(track, fps, srcUrls, trajectoryUrls, coViewUrls, trajectories);
774
780
  clips.push(...c);
775
781
  audioTracks.push(...audio);
776
782
  effects.push(...clipEffects);
@@ -878,6 +884,10 @@ function compositionToRenderInput(composition, srcUrls, trajectoryUrls, coViewUr
878
884
  ...audioTracks.length > 0 ? { audioTracks } : {},
879
885
  ...effects.length > 0 ? { effects } : {},
880
886
  ...hasCaptions ? { captionSegments } : {},
887
+ // Depth for the caption layer. Only meaningful alongside captions, so it is
888
+ // emitted with them — a `captionsBehind` on a composition with no caption
889
+ // words would be a flag describing nothing.
890
+ ...hasCaptions && composition.captions?.zPlane === "behind-subject" ? { captionsBehind: true } : {},
881
891
  ...captionStyle ? { captionStyle } : {},
882
892
  ...brandKit ? { brandKit } : {}
883
893
  // (fitMode deleted 2026-05-25 — baked variants replace render-time fit
@@ -0,0 +1,82 @@
1
+ import {
2
+ FLOORS,
3
+ NEUTRAL_RAMP
4
+ } from "./chunk-JF4JJAFP.js";
5
+
6
+ // ../brand-derivation/src/contrastSafe.ts
7
+ import { APCAcontrast, sRGBtoY } from "apca-w3";
8
+ import { converter } from "culori";
9
+ var toRgb = converter("rgb");
10
+ function hexToRgb(hex) {
11
+ const c = toRgb(hex);
12
+ if (!c) return [0, 0, 0];
13
+ return [Math.round(c.r * 255), Math.round(c.g * 255), Math.round(c.b * 255)];
14
+ }
15
+ function colorMix(a, b, ratio) {
16
+ const [ar, ag, ab] = hexToRgb(a);
17
+ const [br, bg, bb] = hexToRgb(b);
18
+ const t = Math.max(0, Math.min(1, ratio));
19
+ const inv = 1 - t;
20
+ const r = Math.round(ar * inv + br * t);
21
+ const g = Math.round(ag * inv + bg * t);
22
+ const bl = Math.round(ab * inv + bb * t);
23
+ return "#" + [r, g, bl].map((v) => v.toString(16).padStart(2, "0")).join("");
24
+ }
25
+ function lc(fg, bg) {
26
+ return Math.abs(Number(APCAcontrast(sRGBtoY(hexToRgb(fg)), sRGBtoY(hexToRgb(bg)))));
27
+ }
28
+ function relativeLuminance(hex) {
29
+ return sRGBtoY(hexToRgb(hex));
30
+ }
31
+ function apcaLcFromLuminance(fgY, bgY) {
32
+ return Math.abs(Number(APCAcontrast(fgY, bgY)));
33
+ }
34
+ function apcaLc(fg, bg) {
35
+ return lc(fg, bg);
36
+ }
37
+ function clampToFloor(fg, bg, floor) {
38
+ if (lc(fg, bg) >= floor) return fg;
39
+ const candidates = [fg, NEUTRAL_RAMP.onDark, NEUTRAL_RAMP.onLight];
40
+ return candidates.reduce((best, c) => lc(c, bg) > lc(best, bg) ? c : best);
41
+ }
42
+ function deriveCaption(seedText, background) {
43
+ const onBrand = clampToFloor(seedText, background, FLOORS.body);
44
+ if (lc(onBrand, background) >= FLOORS.body) {
45
+ return { captionScrim: background, captionFg: onBrand };
46
+ }
47
+ return { captionScrim: NEUTRAL_RAMP.onLight, captionFg: NEUTRAL_RAMP.onDark };
48
+ }
49
+ function deriveContrastSafe(seed) {
50
+ const background = seed.background;
51
+ const text = clampToFloor(seed.text, background, FLOORS.body);
52
+ const accent = seed.accent;
53
+ const { captionScrim, captionFg } = deriveCaption(seed.text, background);
54
+ const surface = colorMix(background, text, 0.06);
55
+ const card = colorMix(background, text, 0.1);
56
+ const gridLine = colorMix(background, text, 0.08);
57
+ const accentMuted = colorMix(accent, background, 0.35);
58
+ const textOnAccent = clampToFloor(text, accent, FLOORS.body);
59
+ const textOnSurface = clampToFloor(text, surface, FLOORS.body);
60
+ return {
61
+ background,
62
+ text,
63
+ textMuted: clampToFloor(seed.text, background, FLOORS.nonBody),
64
+ accent,
65
+ captionScrim,
66
+ captionFg,
67
+ surface,
68
+ card,
69
+ gridLine,
70
+ accentMuted,
71
+ textOnAccent,
72
+ textOnSurface
73
+ };
74
+ }
75
+
76
+ export {
77
+ relativeLuminance,
78
+ apcaLcFromLuminance,
79
+ apcaLc,
80
+ clampToFloor,
81
+ deriveContrastSafe
82
+ };
@@ -3,7 +3,7 @@ import {
3
3
  clampToFloor,
4
4
  deriveContrastSafe,
5
5
  relativeLuminance
6
- } from "./chunk-V43Y7IE4.js";
6
+ } from "./chunk-DSMLHYJ4.js";
7
7
  import {
8
8
  FLOORS
9
9
  } from "./chunk-JF4JJAFP.js";
@@ -1,6 +1,3 @@
1
- import {
2
- DashboardPopulate
3
- } from "./chunk-ZSZABOE5.js";
4
1
  import {
5
2
  resolveTypeface
6
3
  } from "./chunk-BDMTUEEZ.js";
@@ -10,10 +7,10 @@ import {
10
7
  import {
11
8
  FitText,
12
9
  resolveFitFontSize
13
- } from "./chunk-DSNG6WLU.js";
10
+ } from "./chunk-AYVJXDLB.js";
14
11
  import {
15
- fitTextOnNLines
16
- } from "./chunk-YA3OR2KK.js";
12
+ DashboardPopulate
13
+ } from "./chunk-ZSZABOE5.js";
17
14
  import {
18
15
  ACCENT,
19
16
  ACCENT_DEEP,
@@ -658,6 +655,7 @@ function ToastNotification({
658
655
  // ../execution/primitives/src/ui-blocks/browser-flow/index.tsx
659
656
  import React2 from "react";
660
657
  import { interpolate as interpolate4, spring as spring2, useCurrentFrame as useCurrentFrame4, useVideoConfig as useVideoConfig3 } from "remotion";
658
+ import { fitTextOnNLines } from "@remotion/layout-utils";
661
659
  var FONT_FAMILY = "inherit";
662
660
  var MONO_FAMILY = "monospace";
663
661
  var ADDRESS_TEXT_WIDTH = 800;
@@ -6583,7 +6581,7 @@ var config2 = {
6583
6581
  lines: [
6584
6582
  { type: "command", text: "npx shadcn@latest add @cueframe/typewriter" },
6585
6583
  { type: "log", text: "Installing components..." },
6586
- { type: "success", text: "\u2713 Created components/cueframe/typewriter.tsx" },
6584
+ { type: "success", text: "\u2713 Created components/apps/studio/typewriter.tsx" },
6587
6585
  { type: "log", text: "Done in 2.3s" }
6588
6586
  ],
6589
6587
  title: "cueframe",
@@ -0,0 +1,68 @@
1
+ import {
2
+ contentTypeForUpload
3
+ } from "./chunk-6IU2UQI5.js";
4
+
5
+ // ../cloud-import/src/multipartUpload.ts
6
+ var CHUNK_SIZE = 10 * 1024 * 1024;
7
+ async function reasonFrom(res) {
8
+ try {
9
+ const text = await res.text();
10
+ if (!text) return `HTTP ${res.status}`;
11
+ try {
12
+ const parsed = JSON.parse(text);
13
+ if (typeof parsed.error === "string" && parsed.error) return `${parsed.error} (HTTP ${res.status})`;
14
+ } catch {
15
+ }
16
+ return `${text.slice(0, 200)} (HTTP ${res.status})`;
17
+ } catch {
18
+ return `HTTP ${res.status}`;
19
+ }
20
+ }
21
+ async function multipartUpload(opts) {
22
+ const { file, signingUrl, token, metadata, onProgress } = opts;
23
+ const baseUrl = signingUrl.replace(/\/$/, "");
24
+ const headers = { "uppy-auth-token": token, "Content-Type": "application/json" };
25
+ const createRes = await fetch(`${baseUrl}/s3/multipart`, {
26
+ method: "POST",
27
+ headers,
28
+ body: JSON.stringify({
29
+ filename: file.name,
30
+ // NOT `file.type || "video/mp4"`. That fallback relabelled every untyped
31
+ // file as video, so an MP3 with no MIME uploaded as `video/mp4` and was
32
+ // routed down the video transcode path by `mediaKind()` — a wrong
33
+ // pipeline instead of an honest refusal. See `contentTypeForUpload`.
34
+ type: contentTypeForUpload(file.name, file.type),
35
+ metadata: { uploadToken: token, ...metadata }
36
+ })
37
+ });
38
+ if (!createRes.ok) throw new Error(`Upload init failed for ${file.name}: ${await reasonFrom(createRes)}`);
39
+ const { uploadId } = await createRes.json();
40
+ const totalParts = Math.ceil(file.size / CHUNK_SIZE);
41
+ const parts = [];
42
+ for (let i = 0; i < totalParts; i++) {
43
+ const start = i * CHUNK_SIZE;
44
+ const end = Math.min(start + CHUNK_SIZE, file.size);
45
+ const chunk = file.slice(start, end);
46
+ const partNumber = i + 1;
47
+ const urlRes = await fetch(`${baseUrl}/s3/multipart/${uploadId}/${partNumber}`, {
48
+ headers: { "uppy-auth-token": token }
49
+ });
50
+ if (!urlRes.ok) throw new Error(`Presign failed for ${file.name} part ${partNumber}: ${await reasonFrom(urlRes)}`);
51
+ const { url } = await urlRes.json();
52
+ const putRes = await fetch(url, { method: "PUT", body: chunk });
53
+ if (!putRes.ok) throw new Error(`Part ${partNumber} of ${file.name} failed: ${await reasonFrom(putRes)}`);
54
+ parts.push({ PartNumber: partNumber, ETag: putRes.headers.get("ETag") ?? "" });
55
+ onProgress?.(end / file.size);
56
+ }
57
+ const completeRes = await fetch(`${baseUrl}/s3/multipart/${uploadId}/complete`, {
58
+ method: "POST",
59
+ headers,
60
+ body: JSON.stringify({ parts })
61
+ });
62
+ if (!completeRes.ok) throw new Error(`Complete failed for ${file.name}: ${await reasonFrom(completeRes)}`);
63
+ return await completeRes.json();
64
+ }
65
+
66
+ export {
67
+ multipartUpload
68
+ };
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  CueframeError,
3
3
  encodeError
4
- } from "./chunk-37NJ27UU.js";
4
+ } from "./chunk-OCFDUCF4.js";
5
5
 
6
6
  // ../execution/core/src/render/vcam/constants.ts
7
7
  var P_MIN = 0.5;