@cueframe/kernel 0.0.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 (1119) hide show
  1. package/dist/TextureLoader-UQOFUSAP.js +422 -0
  2. package/dist/VideoTexture-AQWSPIJG.js +62 -0
  3. package/dist/_members/account-model/index.d.ts +1 -0
  4. package/dist/_members/account-model/index.js +4 -0
  5. package/dist/_members/account-model/testing/conversationStoreContract.d.ts +97 -0
  6. package/dist/_members/account-model/testing/conversationStoreContract.js +168 -0
  7. package/dist/_members/account-model/testing/index.d.ts +7 -0
  8. package/dist/_members/account-model/testing/index.js +7 -0
  9. package/dist/_members/account-model/testing/restorePointStoreContract.d.ts +52 -0
  10. package/dist/_members/account-model/testing/restorePointStoreContract.js +69 -0
  11. package/dist/_members/account-model/types/index.d.ts +5 -0
  12. package/dist/_members/account-model/types/index.js +1 -0
  13. package/dist/_members/account-model/validators/contextFile.d.ts +36 -0
  14. package/dist/_members/account-model/validators/contextFile.js +18 -0
  15. package/dist/_members/account-model/validators/conversation.d.ts +153 -0
  16. package/dist/_members/account-model/validators/conversation.js +95 -0
  17. package/dist/_members/account-model/validators/dashboardInsight.d.ts +30 -0
  18. package/dist/_members/account-model/validators/dashboardInsight.js +16 -0
  19. package/dist/_members/account-model/validators/index.d.ts +7 -0
  20. package/dist/_members/account-model/validators/index.js +7 -0
  21. package/dist/_members/account-model/validators/sessionToken.d.ts +79 -0
  22. package/dist/_members/account-model/validators/sessionToken.js +49 -0
  23. package/dist/_members/account-model/validators/uploadToken.d.ts +33 -0
  24. package/dist/_members/account-model/validators/uploadToken.js +16 -0
  25. package/dist/_members/account-model/validators/userSettings.d.ts +22 -0
  26. package/dist/_members/account-model/validators/userSettings.js +12 -0
  27. package/dist/_members/account-model/validators/workingComposition.d.ts +34 -0
  28. package/dist/_members/account-model/validators/workingComposition.js +20 -0
  29. package/dist/_members/animate/animations/Create.d.ts +36 -0
  30. package/dist/_members/animate/animations/FadeIn.d.ts +36 -0
  31. package/dist/_members/animate/animations/GrowArrow.d.ts +36 -0
  32. package/dist/_members/animate/animations/GrowFromCenter.d.ts +25 -0
  33. package/dist/_members/animate/animations/Indicate.d.ts +29 -0
  34. package/dist/_members/animate/animations/MoveAlongPath.d.ts +30 -0
  35. package/dist/_members/animate/animations/Transform.d.ts +46 -0
  36. package/dist/_members/animate/animations/Wiggle.d.ts +31 -0
  37. package/dist/_members/animate/animations/Write.d.ts +35 -0
  38. package/dist/_members/animate/animations/index.d.ts +9 -0
  39. package/dist/_members/animate/composition/AnimationGroup.d.ts +32 -0
  40. package/dist/_members/animate/composition/LaggedStart.d.ts +33 -0
  41. package/dist/_members/animate/composition/Succession.d.ts +27 -0
  42. package/dist/_members/animate/composition/index.d.ts +3 -0
  43. package/dist/_members/animate/easing/index.d.ts +3 -0
  44. package/dist/_members/animate/easing/rush.d.ts +16 -0
  45. package/dist/_members/animate/easing/smooth.d.ts +8 -0
  46. package/dist/_members/animate/easing/smootherstep.d.ts +7 -0
  47. package/dist/_members/animate/index.d.ts +25 -0
  48. package/dist/_members/animate/mobjects/Arrow.d.ts +41 -0
  49. package/dist/_members/animate/mobjects/BrandBox.d.ts +43 -0
  50. package/dist/_members/animate/mobjects/DiGraph.d.ts +21 -0
  51. package/dist/_members/animate/mobjects/Graph.d.ts +72 -0
  52. package/dist/_members/animate/mobjects/index.d.ts +4 -0
  53. package/dist/_members/animate/three/ThreeCanvas.d.ts +36 -0
  54. package/dist/_members/animate/three/drei.d.ts +13 -0
  55. package/dist/_members/animate/three/index.d.ts +2 -0
  56. package/dist/_members/authoring/agent/buildTools.d.ts +54 -0
  57. package/dist/_members/authoring/agent/contextManagement.d.ts +73 -0
  58. package/dist/_members/authoring/agent/errors.d.ts +12 -0
  59. package/dist/_members/authoring/agent/index.d.ts +2 -0
  60. package/dist/_members/authoring/agent/memoryTool.d.ts +8 -0
  61. package/dist/_members/authoring/agent/promptCache.d.ts +34 -0
  62. package/dist/_members/authoring/agent.d.ts +59 -0
  63. package/dist/_members/authoring/capabilities.d.ts +306 -0
  64. package/dist/_members/authoring/composer/index.d.ts +2 -0
  65. package/dist/_members/authoring/composer/scopes.d.ts +26 -0
  66. package/dist/_members/authoring/context/brand.d.ts +37 -0
  67. package/dist/_members/authoring/context/brandTokens.d.ts +6 -0
  68. package/dist/_members/authoring/context/index.d.ts +8 -0
  69. package/dist/_members/authoring/context/timeline.d.ts +33 -0
  70. package/dist/_members/authoring/context/transcript.d.ts +24 -0
  71. package/dist/_members/authoring/context/types.d.ts +5 -0
  72. package/dist/_members/authoring/decomposer.d.ts +17 -0
  73. package/dist/_members/authoring/evaluate.d.ts +37 -0
  74. package/dist/_members/authoring/evaluator.d.ts +22 -0
  75. package/dist/_members/authoring/index.d.ts +25 -0
  76. package/dist/_members/authoring/models/modelFactory.d.ts +107 -0
  77. package/dist/_members/authoring/motion/applyMotionPreset.d.ts +31 -0
  78. package/dist/_members/authoring/motion/index.d.ts +6 -0
  79. package/dist/_members/authoring/motion/materializeMotionPresetOps.d.ts +38 -0
  80. package/dist/_members/authoring/motion/shell.d.ts +30 -0
  81. package/dist/_members/authoring/pipelineTrace.d.ts +38 -0
  82. package/dist/_members/authoring/prompts/decomposerPrompt.d.ts +5 -0
  83. package/dist/_members/authoring/prompts/designReviewerPrompt.d.ts +18 -0
  84. package/dist/_members/authoring/prompts/evaluatorPrompt.d.ts +5 -0
  85. package/dist/_members/authoring/prompts/graphics.d.ts +14 -0
  86. package/dist/_members/authoring/prompts/index.d.ts +4 -0
  87. package/dist/_members/authoring/prompts/plannerPrompt.d.ts +48 -0
  88. package/dist/_members/authoring/providers/index.d.ts +1 -0
  89. package/dist/_members/authoring/providers/resourceApi.d.ts +32 -0
  90. package/dist/_members/authoring/resource-routing.d.ts +186 -0
  91. package/dist/_members/authoring/resources.d.ts +59 -0
  92. package/dist/_members/authoring/scope.d.ts +31 -0
  93. package/dist/_members/authoring/tools/brandTokens.d.ts +34 -0
  94. package/dist/_members/authoring/tools/composeRoleTools.d.ts +112 -0
  95. package/dist/_members/authoring/tools/index.d.ts +4 -0
  96. package/dist/_members/authoring/tools/toolSets.d.ts +54 -0
  97. package/dist/_members/authoring/transpileComponent.d.ts +40 -0
  98. package/dist/_members/authoring/transpileHelper.d.ts +26 -0
  99. package/dist/_members/authoring/types.d.ts +572 -0
  100. package/dist/_members/brand-derivation/constants.d.ts +27 -0
  101. package/dist/_members/brand-derivation/constants.js +20 -0
  102. package/dist/_members/brand-derivation/contrastSafe.d.ts +47 -0
  103. package/dist/_members/brand-derivation/contrastSafe.js +114 -0
  104. package/dist/_members/brand-derivation/index.d.ts +1 -0
  105. package/dist/_members/brand-derivation/index.js +1 -0
  106. package/dist/_members/compose/CompositionRenderer.d.ts +12 -0
  107. package/dist/_members/compose/catalog.d.ts +1 -0
  108. package/dist/_members/compose/index.d.ts +8 -0
  109. package/dist/_members/compose/primitiveRegistry.d.ts +90 -0
  110. package/dist/_members/compose/sceneToRenderInput.d.ts +51 -0
  111. package/dist/_members/compose/schema.d.ts +45 -0
  112. package/dist/_members/compose/tokenResolver.d.ts +28 -0
  113. package/dist/_members/composition/audio/audioMix.d.ts +67 -0
  114. package/dist/_members/composition/audio/audioMix.js +61 -0
  115. package/dist/_members/composition/audio/index.d.ts +5 -0
  116. package/dist/_members/composition/audio/index.js +5 -0
  117. package/dist/_members/composition/audio/mixStaging.d.ts +107 -0
  118. package/dist/_members/composition/audio/mixStaging.js +195 -0
  119. package/dist/_members/composition/audio/musicPack.d.ts +56 -0
  120. package/dist/_members/composition/audio/musicPack.generated.d.ts +9 -0
  121. package/dist/_members/composition/audio/musicPack.generated.js +136 -0
  122. package/dist/_members/composition/audio/musicPack.js +36 -0
  123. package/dist/_members/composition/audio/pack.d.ts +67 -0
  124. package/dist/_members/composition/audio/pack.generated.d.ts +9 -0
  125. package/dist/_members/composition/audio/pack.generated.js +603 -0
  126. package/dist/_members/composition/audio/pack.js +48 -0
  127. package/dist/_members/composition/audio/palette.d.ts +82 -0
  128. package/dist/_members/composition/audio/palette.js +134 -0
  129. package/dist/_members/composition/autozoom/index.d.ts +57 -0
  130. package/dist/_members/composition/autozoom/index.js +83 -0
  131. package/dist/_members/composition/brand-kit.d.ts +58 -0
  132. package/dist/_members/composition/brand-kit.js +45 -0
  133. package/dist/_members/composition/brief/contract.d.ts +132 -0
  134. package/dist/_members/composition/brief/contract.js +209 -0
  135. package/dist/_members/composition/color-grade.d.ts +17 -0
  136. package/dist/_members/composition/color-grade.js +80 -0
  137. package/dist/_members/composition/depth.d.ts +24 -0
  138. package/dist/_members/composition/depth.js +8 -0
  139. package/dist/_members/composition/fixtures/agentErrored.d.ts +25 -0
  140. package/dist/_members/composition/fixtures/index.d.ts +7 -0
  141. package/dist/_members/composition/fixtures/index.js +143 -0
  142. package/dist/_members/composition/fixtures/vaayaErrored.d.ts +25 -0
  143. package/dist/_members/composition/fixtures/vaayaErrored.js +203 -0
  144. package/dist/_members/composition/fonts.d.ts +68 -0
  145. package/dist/_members/composition/fonts.js +162 -0
  146. package/dist/_members/composition/graphics-plan/compile.d.ts +43 -0
  147. package/dist/_members/composition/graphics-plan/compile.js +221 -0
  148. package/dist/_members/composition/graphics-plan/index.d.ts +11 -0
  149. package/dist/_members/composition/graphics-plan/index.js +10 -0
  150. package/dist/_members/composition/graphics-plan/instantiateMotif.d.ts +51 -0
  151. package/dist/_members/composition/graphics-plan/instantiateMotif.js +44 -0
  152. package/dist/_members/composition/graphics-plan/motion.d.ts +19 -0
  153. package/dist/_members/composition/graphics-plan/motion.js +66 -0
  154. package/dist/_members/composition/graphics-plan/schemas.d.ts +1672 -0
  155. package/dist/_members/composition/graphics-plan/schemas.js +261 -0
  156. package/dist/_members/composition/graphics-plan/solve.d.ts +34 -0
  157. package/dist/_members/composition/graphics-plan/solve.js +145 -0
  158. package/dist/_members/composition/index.d.ts +7 -0
  159. package/dist/_members/composition/index.js +5 -0
  160. package/dist/_members/composition/invariants/clipPlacement.d.ts +65 -0
  161. package/dist/_members/composition/invariants/clipPlacement.js +69 -0
  162. package/dist/_members/composition/invariants/composition.d.ts +9 -0
  163. package/dist/_members/composition/invariants/composition.js +28 -0
  164. package/dist/_members/composition/invariants/errors.d.ts +11 -0
  165. package/dist/_members/composition/invariants/errors.js +10 -0
  166. package/dist/_members/composition/invariants/etag.d.ts +10 -0
  167. package/dist/_members/composition/invariants/etag.js +38 -0
  168. package/dist/_members/composition/invariants/ids.d.ts +9 -0
  169. package/dist/_members/composition/invariants/ids.js +33 -0
  170. package/dist/_members/composition/invariants/index.d.ts +9 -0
  171. package/dist/_members/composition/invariants/index.js +9 -0
  172. package/dist/_members/composition/invariants/keyframes.d.ts +23 -0
  173. package/dist/_members/composition/invariants/keyframes.js +45 -0
  174. package/dist/_members/composition/invariants/markers.d.ts +9 -0
  175. package/dist/_members/composition/invariants/markers.js +29 -0
  176. package/dist/_members/composition/invariants/time.d.ts +22 -0
  177. package/dist/_members/composition/invariants/time.js +20 -0
  178. package/dist/_members/composition/invariants/tracks.d.ts +58 -0
  179. package/dist/_members/composition/invariants/tracks.js +304 -0
  180. package/dist/_members/composition/ops/compositionOps.d.ts +129 -0
  181. package/dist/_members/composition/ops/compositionOps.js +1056 -0
  182. package/dist/_members/composition/ops/headlessStore.d.ts +40 -0
  183. package/dist/_members/composition/ops/headlessStore.js +94 -0
  184. package/dist/_members/composition/ops/index.d.ts +6 -0
  185. package/dist/_members/composition/ops/index.js +4 -0
  186. package/dist/_members/composition/ops/selectors.d.ts +81 -0
  187. package/dist/_members/composition/ops/selectors.js +118 -0
  188. package/dist/_members/composition/ops/timeline-word.d.ts +24 -0
  189. package/dist/_members/composition/ops/timeline-word.js +1 -0
  190. package/dist/_members/composition/ops/transcript.d.ts +44 -0
  191. package/dist/_members/composition/ops/transcript.js +77 -0
  192. package/dist/_members/composition/ops/types.d.ts +145 -0
  193. package/dist/_members/composition/ops/types.js +16 -0
  194. package/dist/_members/composition/primitive-catalog/catalogQuery.d.ts +82 -0
  195. package/dist/_members/composition/primitive-catalog/catalogQuery.js +150 -0
  196. package/dist/_members/composition/primitive-catalog/disabled.d.ts +3 -0
  197. package/dist/_members/composition/primitive-catalog/disabled.js +32 -0
  198. package/dist/_members/composition/primitive-catalog/generated/meta.d.ts +2 -0
  199. package/dist/_members/composition/primitive-catalog/generated/meta.js +15161 -0
  200. package/dist/_members/composition/primitive-catalog/index.d.ts +28 -0
  201. package/dist/_members/composition/primitive-catalog/index.js +46 -0
  202. package/dist/_members/composition/primitive-catalog/paramValidation.d.ts +76 -0
  203. package/dist/_members/composition/primitive-catalog/paramValidation.js +231 -0
  204. package/dist/_members/composition/primitive-catalog/projection.d.ts +99 -0
  205. package/dist/_members/composition/primitive-catalog/projection.js +164 -0
  206. package/dist/_members/composition/primitive-catalog/types.d.ts +123 -0
  207. package/dist/_members/composition/primitive-catalog/types.js +14 -0
  208. package/dist/_members/composition/projection/behind-placement.d.ts +64 -0
  209. package/dist/_members/composition/projection/behind-placement.js +62 -0
  210. package/dist/_members/composition/projection/brandKit.d.ts +308 -0
  211. package/dist/_members/composition/projection/brandKit.js +482 -0
  212. package/dist/_members/composition/projection/cardTokens.d.ts +70 -0
  213. package/dist/_members/composition/projection/cardTokens.js +209 -0
  214. package/dist/_members/composition/projection/composition-floor.d.ts +349 -0
  215. package/dist/_members/composition/projection/composition-floor.js +582 -0
  216. package/dist/_members/composition/projection/cropProjection.d.ts +140 -0
  217. package/dist/_members/composition/projection/cropProjection.js +257 -0
  218. package/dist/_members/composition/projection/index.d.ts +7 -0
  219. package/dist/_members/composition/projection/index.js +7 -0
  220. package/dist/_members/composition/projection/occlusion-budget.d.ts +67 -0
  221. package/dist/_members/composition/projection/occlusion-budget.js +104 -0
  222. package/dist/_members/composition/projection/safe-zones.d.ts +38 -0
  223. package/dist/_members/composition/projection/safe-zones.js +99 -0
  224. package/dist/_members/composition/reframe/aspectLoss.d.ts +49 -0
  225. package/dist/_members/composition/reframe/aspectLoss.js +115 -0
  226. package/dist/_members/composition/reframe/coverage.d.ts +48 -0
  227. package/dist/_members/composition/reframe/coverage.js +62 -0
  228. package/dist/_members/composition/reframe/derive.d.ts +37 -0
  229. package/dist/_members/composition/reframe/derive.js +73 -0
  230. package/dist/_members/composition/reframe/index.d.ts +658 -0
  231. package/dist/_members/composition/reframe/index.js +109 -0
  232. package/dist/_members/composition/reframe/kenBurns.d.ts +43 -0
  233. package/dist/_members/composition/reframe/kenBurns.js +64 -0
  234. package/dist/_members/composition/reframe/shotScale.d.ts +118 -0
  235. package/dist/_members/composition/reframe/shotScale.js +176 -0
  236. package/dist/_members/composition/reframe/trajectory.d.ts +99 -0
  237. package/dist/_members/composition/reframe/trajectory.js +124 -0
  238. package/dist/_members/composition/timeline/compound.d.ts +36 -0
  239. package/dist/_members/composition/timeline/compound.js +134 -0
  240. package/dist/_members/composition/timeline/index.d.ts +9 -0
  241. package/dist/_members/composition/timeline/index.js +9 -0
  242. package/dist/_members/composition/timeline/intent.d.ts +54 -0
  243. package/dist/_members/composition/timeline/intent.js +228 -0
  244. package/dist/_members/composition/timeline/keyframes.d.ts +50 -0
  245. package/dist/_members/composition/timeline/keyframes.js +121 -0
  246. package/dist/_members/composition/timeline/link.d.ts +36 -0
  247. package/dist/_members/composition/timeline/link.js +59 -0
  248. package/dist/_members/composition/timeline/occupancy.d.ts +72 -0
  249. package/dist/_members/composition/timeline/occupancy.js +36 -0
  250. package/dist/_members/composition/timeline/placement.d.ts +86 -0
  251. package/dist/_members/composition/timeline/placement.js +74 -0
  252. package/dist/_members/composition/timeline/plan.d.ts +109 -0
  253. package/dist/_members/composition/timeline/plan.js +31 -0
  254. package/dist/_members/composition/timeline/resolve.d.ts +55 -0
  255. package/dist/_members/composition/timeline/resolve.js +170 -0
  256. package/dist/_members/composition/timeline/trims.d.ts +54 -0
  257. package/dist/_members/composition/timeline/trims.js +278 -0
  258. package/dist/_members/composition/types/index.d.ts +8 -0
  259. package/dist/_members/composition/types/index.js +1 -0
  260. package/dist/_members/composition/validators/brandKit.d.ts +1472 -0
  261. package/dist/_members/composition/validators/brandKit.js +295 -0
  262. package/dist/_members/composition/validators/composePlan.d.ts +960 -0
  263. package/dist/_members/composition/validators/composePlan.js +113 -0
  264. package/dist/_members/composition/validators/composition.d.ts +6881 -0
  265. package/dist/_members/composition/validators/composition.js +703 -0
  266. package/dist/_members/composition/validators/font.d.ts +114 -0
  267. package/dist/_members/composition/validators/font.js +34 -0
  268. package/dist/_members/composition/validators/graphicKinds.d.ts +32 -0
  269. package/dist/_members/composition/validators/graphicKinds.js +30 -0
  270. package/dist/_members/composition/validators/index.d.ts +9 -0
  271. package/dist/_members/composition/validators/index.js +9 -0
  272. package/dist/_members/composition/validators/project.d.ts +62 -0
  273. package/dist/_members/composition/validators/project.js +29 -0
  274. package/dist/_members/composition/validators/registry.d.ts +161 -0
  275. package/dist/_members/composition/validators/registry.js +41 -0
  276. package/dist/_members/composition/validators/render.d.ts +8274 -0
  277. package/dist/_members/composition/validators/render.js +139 -0
  278. package/dist/_members/composition/validators/session.d.ts +117 -0
  279. package/dist/_members/composition/validators/session.js +37 -0
  280. package/dist/_members/composition/validators/webhook.d.ts +83 -0
  281. package/dist/_members/composition/validators/webhook.js +72 -0
  282. package/dist/_members/composition-ops/alphaLayers.d.ts +70 -0
  283. package/dist/_members/composition-ops/alphaLayers.js +141 -0
  284. package/dist/_members/composition-ops/index.d.ts +4940 -0
  285. package/dist/_members/composition-ops/index.js +637 -0
  286. package/dist/_members/composition-ops/materializeGrid.d.ts +56 -0
  287. package/dist/_members/composition-ops/materializeGrid.js +99 -0
  288. package/dist/_members/composition-ops/opRecorder.d.ts +77 -0
  289. package/dist/_members/composition-ops/opRecorder.js +196 -0
  290. package/dist/_members/composition-ops/recordingStore.d.ts +23 -0
  291. package/dist/_members/composition-ops/recordingStore.js +14 -0
  292. package/dist/_members/composition-ops/replaceRegion.d.ts +65 -0
  293. package/dist/_members/composition-ops/replaceRegion.js +102 -0
  294. package/dist/_members/composition-ops/testFixtures.d.ts +19 -0
  295. package/dist/_members/composition-ops/testFixtures.js +19 -0
  296. package/dist/_members/core/index.d.ts +3 -0
  297. package/dist/_members/core/index.js +5 -0
  298. package/dist/_members/core/render/bookends.d.ts +62 -0
  299. package/dist/_members/core/render/bookends.js +53 -0
  300. package/dist/_members/core/render/captions.d.ts +65 -0
  301. package/dist/_members/core/render/captions.js +127 -0
  302. package/dist/_members/core/render/compositionRender.d.ts +190 -0
  303. package/dist/_members/core/render/compositionRender.js +1249 -0
  304. package/dist/_members/core/render/deriveTrajectory.d.ts +188 -0
  305. package/dist/_members/core/render/deriveTrajectory.js +889 -0
  306. package/dist/_members/core/render/emphasis.d.ts +13 -0
  307. package/dist/_members/core/render/emphasis.js +16 -0
  308. package/dist/_members/core/render/eval/cropBox.d.ts +88 -0
  309. package/dist/_members/core/render/eval/cropBox.js +139 -0
  310. package/dist/_members/core/render/eval/inclusion.d.ts +50 -0
  311. package/dist/_members/core/render/eval/inclusion.js +96 -0
  312. package/dist/_members/core/render/eval/index.d.ts +93 -0
  313. package/dist/_members/core/render/eval/index.js +146 -0
  314. package/dist/_members/core/render/eval/metrics.d.ts +50 -0
  315. package/dist/_members/core/render/eval/metrics.js +94 -0
  316. package/dist/_members/core/render/exportSettings.d.ts +40 -0
  317. package/dist/_members/core/render/exportSettings.js +65 -0
  318. package/dist/_members/core/render/index.d.ts +14 -0
  319. package/dist/_members/core/render/index.js +20 -0
  320. package/dist/_members/core/render/mapFaceToPerson.d.ts +39 -0
  321. package/dist/_members/core/render/mapFaceToPerson.js +73 -0
  322. package/dist/_members/core/render/types.d.ts +304 -0
  323. package/dist/_members/core/render/types.js +8 -0
  324. package/dist/_members/core/render/vcam/cameraPath.d.ts +51 -0
  325. package/dist/_members/core/render/vcam/cameraPath.js +248 -0
  326. package/dist/_members/core/render/vcam/constants.d.ts +113 -0
  327. package/dist/_members/core/render/vcam/constants.js +115 -0
  328. package/dist/_members/core/render/vcam/errorCodes.d.ts +30 -0
  329. package/dist/_members/core/render/vcam/errorCodes.js +39 -0
  330. package/dist/_members/core/render/vcam/framing.d.ts +90 -0
  331. package/dist/_members/core/render/vcam/framing.js +136 -0
  332. package/dist/_members/core/render/vcam/requiredRegion.d.ts +85 -0
  333. package/dist/_members/core/render/vcam/requiredRegion.js +137 -0
  334. package/dist/_members/core/render/vcam/shots.d.ts +45 -0
  335. package/dist/_members/core/render/vcam/shots.js +53 -0
  336. package/dist/_members/core/render/vcam/subjectSet.d.ts +106 -0
  337. package/dist/_members/core/render/vcam/subjectSet.js +388 -0
  338. package/dist/_members/core/select/errorCodes.d.ts +27 -0
  339. package/dist/_members/core/select/errorCodes.js +38 -0
  340. package/dist/_members/core/select/index.d.ts +27 -0
  341. package/dist/_members/core/select/index.js +26 -0
  342. package/dist/_members/core/select/model.d.ts +178 -0
  343. package/dist/_members/core/select/model.js +18 -0
  344. package/dist/_members/core/select/select.d.ts +63 -0
  345. package/dist/_members/core/select/select.js +244 -0
  346. package/dist/_members/core/select/stabilize.d.ts +145 -0
  347. package/dist/_members/core/select/stabilize.js +242 -0
  348. package/dist/_members/core/types.d.ts +84 -0
  349. package/dist/_members/core/types.js +7 -0
  350. package/dist/_members/errors/index.d.ts +1 -0
  351. package/dist/_members/errors/index.js +1 -0
  352. package/dist/_members/errors/registry.d.ts +708 -0
  353. package/dist/_members/errors/registry.js +560 -0
  354. package/dist/_members/foundation/codes/index.d.ts +31 -0
  355. package/dist/_members/foundation/codes/index.js +31 -0
  356. package/dist/_members/foundation/index.d.ts +2 -0
  357. package/dist/_members/foundation/index.js +2 -0
  358. package/dist/_members/foundation/primitives/index.d.ts +9 -0
  359. package/dist/_members/foundation/primitives/index.js +5 -0
  360. package/dist/_members/mcp/adapter.d.ts +138 -0
  361. package/dist/_members/mcp/adapter.js +771 -0
  362. package/dist/_members/mcp/burnedNames.d.ts +23 -0
  363. package/dist/_members/mcp/burnedNames.js +73 -0
  364. package/dist/_members/mcp/core.d.ts +158 -0
  365. package/dist/_members/mcp/core.js +390 -0
  366. package/dist/_members/mcp/curation.d.ts +155 -0
  367. package/dist/_members/mcp/curation.js +792 -0
  368. package/dist/_members/mcp/executor.d.ts +60 -0
  369. package/dist/_members/mcp/executor.js +142 -0
  370. package/dist/_members/mcp/format.d.ts +7 -0
  371. package/dist/_members/mcp/format.js +9 -0
  372. package/dist/_members/mcp/generated/catalogPreviews.d.ts +2 -0
  373. package/dist/_members/mcp/generated/catalogPreviews.js +95 -0
  374. package/dist/_members/mcp/generated/harness.d.ts +1 -0
  375. package/dist/_members/mcp/generated/harness.js +81 -0
  376. package/dist/_members/mcp/generated/operations.d.ts +41 -0
  377. package/dist/_members/mcp/generated/operations.js +131 -0
  378. package/dist/_members/mcp/index.d.ts +3 -0
  379. package/dist/_members/mcp/index.js +50 -0
  380. package/dist/_members/mcp/internalLoopTools.d.ts +25 -0
  381. package/dist/_members/mcp/internalLoopTools.js +109 -0
  382. package/dist/_members/mcp/prompts.d.ts +22 -0
  383. package/dist/_members/mcp/prompts.js +45 -0
  384. package/dist/_members/mcp/resources.d.ts +16 -0
  385. package/dist/_members/mcp/resources.js +166 -0
  386. package/dist/_members/mcp/server.d.ts +92 -0
  387. package/dist/_members/mcp/server.js +340 -0
  388. package/dist/_members/mcp/wait.d.ts +37 -0
  389. package/dist/_members/mcp/wait.js +378 -0
  390. package/dist/_members/mcp/x402Meta.d.ts +50 -0
  391. package/dist/_members/mcp/x402Meta.js +66 -0
  392. package/dist/_members/media-model/api.d.ts +877 -0
  393. package/dist/_members/media-model/api.js +175 -0
  394. package/dist/_members/media-model/index.d.ts +1 -0
  395. package/dist/_members/media-model/index.js +1 -0
  396. package/dist/_members/media-model/media-kind.d.ts +36 -0
  397. package/dist/_members/media-model/media-kind.js +116 -0
  398. package/dist/_members/media-model/testing/index.d.ts +2 -0
  399. package/dist/_members/media-model/testing/index.js +1 -0
  400. package/dist/_members/media-model/testing/mediaStoreContract.d.ts +17 -0
  401. package/dist/_members/media-model/testing/mediaStoreContract.js +82 -0
  402. package/dist/_members/media-model/transcriptSearch.d.ts +54 -0
  403. package/dist/_members/media-model/transcriptSearch.js +70 -0
  404. package/dist/_members/media-model/transcriptSearchCases.json +79 -0
  405. package/dist/_members/nle-export/compact-timeline.d.ts +2 -0
  406. package/dist/_members/nle-export/compact-timeline.js +73 -0
  407. package/dist/_members/nle-export/compact-timeline.js.map +1 -0
  408. package/dist/_members/nle-export/composition-to-input.d.ts +2 -0
  409. package/dist/_members/nle-export/composition-to-input.js +147 -0
  410. package/dist/_members/nle-export/composition-to-input.js.map +1 -0
  411. package/dist/_members/nle-export/fcpxml.d.ts +15 -0
  412. package/dist/_members/nle-export/fcpxml.js +159 -0
  413. package/dist/_members/nle-export/fcpxml.js.map +1 -0
  414. package/dist/_members/nle-export/index.d.ts +11 -0
  415. package/dist/_members/nle-export/index.js +12 -0
  416. package/dist/_members/nle-export/index.js.map +1 -0
  417. package/dist/_members/nle-export/premiere.d.ts +2 -0
  418. package/dist/_members/nle-export/premiere.js +161 -0
  419. package/dist/_members/nle-export/premiere.js.map +1 -0
  420. package/dist/_members/nle-export/server/index.d.ts +1 -0
  421. package/dist/_members/nle-export/server/index.js +2 -0
  422. package/dist/_members/nle-export/server/index.js.map +1 -0
  423. package/dist/_members/nle-export/server/pack-zip.d.ts +6 -0
  424. package/dist/_members/nle-export/server/pack-zip.js +38 -0
  425. package/dist/_members/nle-export/server/pack-zip.js.map +1 -0
  426. package/dist/_members/nle-export/srt.d.ts +2 -0
  427. package/dist/_members/nle-export/srt.js +50 -0
  428. package/dist/_members/nle-export/srt.js.map +1 -0
  429. package/dist/_members/nle-export/types.d.ts +183 -0
  430. package/dist/_members/nle-export/types.js +9 -0
  431. package/dist/_members/nle-export/types.js.map +1 -0
  432. package/dist/_members/nle-export/xml/index.d.ts +10 -0
  433. package/dist/_members/nle-export/xml/index.js +11 -0
  434. package/dist/_members/nle-export/xml/index.js.map +1 -0
  435. package/dist/_members/nle-export/xml-utils.d.ts +21 -0
  436. package/dist/_members/nle-export/xml-utils.js +48 -0
  437. package/dist/_members/nle-export/xml-utils.js.map +1 -0
  438. package/dist/_members/perception/activeSpeaker.d.ts +108 -0
  439. package/dist/_members/perception/activeSpeaker.js +103 -0
  440. package/dist/_members/perception/audioQuality.d.ts +78 -0
  441. package/dist/_members/perception/audioQuality.js +76 -0
  442. package/dist/_members/perception/energyBeat.d.ts +95 -0
  443. package/dist/_members/perception/energyBeat.js +99 -0
  444. package/dist/_members/perception/identityMatch.d.ts +80 -0
  445. package/dist/_members/perception/identityMatch.js +91 -0
  446. package/dist/_members/perception/index.d.ts +90 -0
  447. package/dist/_members/perception/index.js +48 -0
  448. package/dist/_members/perception/visualQuality.d.ts +86 -0
  449. package/dist/_members/perception/visualQuality.js +95 -0
  450. package/dist/_members/plane/conformance.d.ts +75 -0
  451. package/dist/_members/plane/conformance.js +90 -0
  452. package/dist/_members/plane/contract.d.ts +55 -0
  453. package/dist/_members/plane/contract.js +49 -0
  454. package/dist/_members/plane/index.d.ts +16 -0
  455. package/dist/_members/plane/index.js +16 -0
  456. package/dist/_members/primitives/backgrounds/animated-bar-chart/config.d.ts +42 -0
  457. package/dist/_members/primitives/backgrounds/animated-bar-chart/index.d.ts +28 -0
  458. package/dist/_members/primitives/backgrounds/animated-line-chart/config.d.ts +42 -0
  459. package/dist/_members/primitives/backgrounds/animated-line-chart/index.d.ts +29 -0
  460. package/dist/_members/primitives/backgrounds/dither-gradient-bg/config.d.ts +30 -0
  461. package/dist/_members/primitives/backgrounds/dither-gradient-bg/index.d.ts +25 -0
  462. package/dist/_members/primitives/backgrounds/dynamic-grid/config.d.ts +24 -0
  463. package/dist/_members/primitives/backgrounds/dynamic-grid/index.d.ts +17 -0
  464. package/dist/_members/primitives/backgrounds/ecosystem-constellation/config.d.ts +21 -0
  465. package/dist/_members/primitives/backgrounds/ecosystem-constellation/index.d.ts +16 -0
  466. package/dist/_members/primitives/backgrounds/index.d.ts +13 -0
  467. package/dist/_members/primitives/backgrounds/index.js +32 -0
  468. package/dist/_members/primitives/backgrounds/index.js.map +1 -0
  469. package/dist/_members/primitives/backgrounds/infinite-marquee/config.d.ts +36 -0
  470. package/dist/_members/primitives/backgrounds/infinite-marquee/index.d.ts +21 -0
  471. package/dist/_members/primitives/backgrounds/mesh-gradient-bg/config.d.ts +21 -0
  472. package/dist/_members/primitives/backgrounds/mesh-gradient-bg/index.d.ts +16 -0
  473. package/dist/_members/primitives/backgrounds/perspective-marquee/config.d.ts +42 -0
  474. package/dist/_members/primitives/backgrounds/perspective-marquee/index.d.ts +23 -0
  475. package/dist/_members/primitives/backgrounds/silk-flow-bg/config.d.ts +36 -0
  476. package/dist/_members/primitives/backgrounds/silk-flow-bg/index.d.ts +30 -0
  477. package/dist/_members/primitives/backgrounds/vector-field/config.d.ts +30 -0
  478. package/dist/_members/primitives/backgrounds/vector-field/index.d.ts +25 -0
  479. package/dist/_members/primitives/backgrounds/volumetric-rays/config.d.ts +33 -0
  480. package/dist/_members/primitives/backgrounds/volumetric-rays/index.d.ts +30 -0
  481. package/dist/_members/primitives/captions/Captions.d.ts +33 -0
  482. package/dist/_members/primitives/captions/index.d.ts +17 -0
  483. package/dist/_members/primitives/captions/index.js +398 -0
  484. package/dist/_members/primitives/captions/index.js.map +1 -0
  485. package/dist/_members/primitives/captions/paginate.d.ts +31 -0
  486. package/dist/_members/primitives/captions/placement.d.ts +35 -0
  487. package/dist/_members/primitives/chunk-2LVE4UIT.js +139 -0
  488. package/dist/_members/primitives/chunk-2LVE4UIT.js.map +1 -0
  489. package/dist/_members/primitives/chunk-3IQUH6KK.js +20 -0
  490. package/dist/_members/primitives/chunk-3IQUH6KK.js.map +1 -0
  491. package/dist/_members/primitives/chunk-3OMURV6Q.js +112 -0
  492. package/dist/_members/primitives/chunk-3OMURV6Q.js.map +1 -0
  493. package/dist/_members/primitives/chunk-4IS6TMEG.js +21 -0
  494. package/dist/_members/primitives/chunk-4IS6TMEG.js.map +1 -0
  495. package/dist/_members/primitives/chunk-5MWGAEGQ.js +1644 -0
  496. package/dist/_members/primitives/chunk-5MWGAEGQ.js.map +1 -0
  497. package/dist/_members/primitives/chunk-7RRPFPQK.js +15 -0
  498. package/dist/_members/primitives/chunk-7RRPFPQK.js.map +1 -0
  499. package/dist/_members/primitives/chunk-DH5TRZK2.js +125 -0
  500. package/dist/_members/primitives/chunk-DH5TRZK2.js.map +1 -0
  501. package/dist/_members/primitives/chunk-E3KNUSFG.js +2337 -0
  502. package/dist/_members/primitives/chunk-E3KNUSFG.js.map +1 -0
  503. package/dist/_members/primitives/chunk-G2B3G4HK.js +47 -0
  504. package/dist/_members/primitives/chunk-G2B3G4HK.js.map +1 -0
  505. package/dist/_members/primitives/chunk-HFPFGZXT.js +1494 -0
  506. package/dist/_members/primitives/chunk-HFPFGZXT.js.map +1 -0
  507. package/dist/_members/primitives/chunk-HIWVFZVH.js +19 -0
  508. package/dist/_members/primitives/chunk-HIWVFZVH.js.map +1 -0
  509. package/dist/_members/primitives/chunk-IDAL6G3Y.js +134 -0
  510. package/dist/_members/primitives/chunk-IDAL6G3Y.js.map +1 -0
  511. package/dist/_members/primitives/chunk-KNC6JP5F.js +34 -0
  512. package/dist/_members/primitives/chunk-KNC6JP5F.js.map +1 -0
  513. package/dist/_members/primitives/chunk-KYRDVZST.js +459 -0
  514. package/dist/_members/primitives/chunk-KYRDVZST.js.map +1 -0
  515. package/dist/_members/primitives/chunk-LWLHS2NS.js +3410 -0
  516. package/dist/_members/primitives/chunk-LWLHS2NS.js.map +1 -0
  517. package/dist/_members/primitives/chunk-QAQ3P7DR.js +8855 -0
  518. package/dist/_members/primitives/chunk-QAQ3P7DR.js.map +1 -0
  519. package/dist/_members/primitives/chunk-ROV2ODWC.js +81 -0
  520. package/dist/_members/primitives/chunk-ROV2ODWC.js.map +1 -0
  521. package/dist/_members/primitives/chunk-TCRC2FH3.js +183 -0
  522. package/dist/_members/primitives/chunk-TCRC2FH3.js.map +1 -0
  523. package/dist/_members/primitives/chunk-US4YEDAA.js +96 -0
  524. package/dist/_members/primitives/chunk-US4YEDAA.js.map +1 -0
  525. package/dist/_members/primitives/chunk-UVKRO5ER.js +13 -0
  526. package/dist/_members/primitives/chunk-UVKRO5ER.js.map +1 -0
  527. package/dist/_members/primitives/chunk-W4EIIF2I.js +10 -0
  528. package/dist/_members/primitives/chunk-W4EIIF2I.js.map +1 -0
  529. package/dist/_members/primitives/chunk-WPGKIPCO.js +3563 -0
  530. package/dist/_members/primitives/chunk-WPGKIPCO.js.map +1 -0
  531. package/dist/_members/primitives/chunk-WZFLEGMD.js +1435 -0
  532. package/dist/_members/primitives/chunk-WZFLEGMD.js.map +1 -0
  533. package/dist/_members/primitives/chunk-XHU3WBEI.js +33 -0
  534. package/dist/_members/primitives/chunk-XHU3WBEI.js.map +1 -0
  535. package/dist/_members/primitives/chunk-YN7WTZZ7.js +46 -0
  536. package/dist/_members/primitives/chunk-YN7WTZZ7.js.map +1 -0
  537. package/dist/_members/primitives/effects/blur/config.d.ts +24 -0
  538. package/dist/_members/primitives/effects/blur/index.d.ts +29 -0
  539. package/dist/_members/primitives/effects/color-grade/config.d.ts +30 -0
  540. package/dist/_members/primitives/effects/color-grade/index.d.ts +35 -0
  541. package/dist/_members/primitives/effects/grain/config.d.ts +21 -0
  542. package/dist/_members/primitives/effects/grain/index.d.ts +21 -0
  543. package/dist/_members/primitives/effects/index.d.ts +12 -0
  544. package/dist/_members/primitives/effects/index.js +30 -0
  545. package/dist/_members/primitives/effects/index.js.map +1 -0
  546. package/dist/_members/primitives/effects/parallax/config.d.ts +21 -0
  547. package/dist/_members/primitives/effects/parallax/index.d.ts +25 -0
  548. package/dist/_members/primitives/effects/particles/config.d.ts +33 -0
  549. package/dist/_members/primitives/effects/particles/index.d.ts +31 -0
  550. package/dist/_members/primitives/effects/pulsing-indicator/config.d.ts +24 -0
  551. package/dist/_members/primitives/effects/pulsing-indicator/index.d.ts +19 -0
  552. package/dist/_members/primitives/effects/spotlight-card/config.d.ts +42 -0
  553. package/dist/_members/primitives/effects/spotlight-card/index.d.ts +25 -0
  554. package/dist/_members/primitives/effects/spring-pop-in/config.d.ts +27 -0
  555. package/dist/_members/primitives/effects/spring-pop-in/index.d.ts +22 -0
  556. package/dist/_members/primitives/effects/success-confetti/config.d.ts +42 -0
  557. package/dist/_members/primitives/effects/success-confetti/index.d.ts +23 -0
  558. package/dist/_members/primitives/effects/vignette/config.d.ts +21 -0
  559. package/dist/_members/primitives/effects/vignette/index.d.ts +23 -0
  560. package/dist/_members/primitives/hero-text/HeroText.d.ts +29 -0
  561. package/dist/_members/primitives/hero-text/config.d.ts +46 -0
  562. package/dist/_members/primitives/hero-text/index.d.ts +18 -0
  563. package/dist/_members/primitives/hero-text/index.js +14 -0
  564. package/dist/_members/primitives/hero-text/index.js.map +1 -0
  565. package/dist/_members/primitives/index.d.ts +21 -0
  566. package/dist/_members/primitives/index.js +64 -0
  567. package/dist/_members/primitives/index.js.map +1 -0
  568. package/dist/_members/primitives/layouts/chat-to-preview-layout/config.d.ts +21 -0
  569. package/dist/_members/primitives/layouts/chat-to-preview-layout/index.d.ts +19 -0
  570. package/dist/_members/primitives/layouts/index.d.ts +9 -0
  571. package/dist/_members/primitives/layouts/index.js +24 -0
  572. package/dist/_members/primitives/layouts/index.js.map +1 -0
  573. package/dist/_members/primitives/layouts/infinite-bento-pan/config.d.ts +18 -0
  574. package/dist/_members/primitives/layouts/infinite-bento-pan/index.d.ts +15 -0
  575. package/dist/_members/primitives/layouts/letterbox/config.d.ts +18 -0
  576. package/dist/_members/primitives/layouts/letterbox/index.d.ts +23 -0
  577. package/dist/_members/primitives/layouts/photo-grid/config.d.ts +21 -0
  578. package/dist/_members/primitives/layouts/photo-grid/index.d.ts +25 -0
  579. package/dist/_members/primitives/layouts/picture-in-picture/config.d.ts +21 -0
  580. package/dist/_members/primitives/layouts/picture-in-picture/index.d.ts +32 -0
  581. package/dist/_members/primitives/layouts/split-screen/config.d.ts +15 -0
  582. package/dist/_members/primitives/layouts/split-screen/index.d.ts +22 -0
  583. package/dist/_members/primitives/layouts/staggered-bento-grid/config.d.ts +66 -0
  584. package/dist/_members/primitives/layouts/staggered-bento-grid/index.d.ts +24 -0
  585. package/dist/_members/primitives/lib/easings.d.ts +47 -0
  586. package/dist/_members/primitives/lib/easings.js +26 -0
  587. package/dist/_members/primitives/lib/easings.js.map +1 -0
  588. package/dist/_members/primitives/lib/index.d.ts +8 -0
  589. package/dist/_members/primitives/lib/index.js +74 -0
  590. package/dist/_members/primitives/lib/index.js.map +1 -0
  591. package/dist/_members/primitives/lib/palette.d.ts +55 -0
  592. package/dist/_members/primitives/lib/palette.js +72 -0
  593. package/dist/_members/primitives/lib/palette.js.map +1 -0
  594. package/dist/_members/primitives/lib/preview.d.ts +36 -0
  595. package/dist/_members/primitives/lib/preview.js +8 -0
  596. package/dist/_members/primitives/lib/preview.js.map +1 -0
  597. package/dist/_members/primitives/lib/schema.d.ts +53 -0
  598. package/dist/_members/primitives/lib/schema.js +12 -0
  599. package/dist/_members/primitives/lib/schema.js.map +1 -0
  600. package/dist/_members/primitives/lib/seeded-random.d.ts +33 -0
  601. package/dist/_members/primitives/lib/seeded-random.js +14 -0
  602. package/dist/_members/primitives/lib/seeded-random.js.map +1 -0
  603. package/dist/_members/primitives/lib/text/contrast.d.ts +27 -0
  604. package/dist/_members/primitives/lib/text/contrast.js +12 -0
  605. package/dist/_members/primitives/lib/text/contrast.js.map +1 -0
  606. package/dist/_members/primitives/lib/text/fill.d.ts +8 -0
  607. package/dist/_members/primitives/lib/text/fill.js +8 -0
  608. package/dist/_members/primitives/lib/text/fill.js.map +1 -0
  609. package/dist/_members/primitives/lib/text/fitText.d.ts +62 -0
  610. package/dist/_members/primitives/lib/text/fitText.js +10 -0
  611. package/dist/_members/primitives/lib/text/fitText.js.map +1 -0
  612. package/dist/_members/primitives/lib/text/marker.d.ts +15 -0
  613. package/dist/_members/primitives/lib/text/marker.js +8 -0
  614. package/dist/_members/primitives/lib/text/marker.js.map +1 -0
  615. package/dist/_members/primitives/lib/text/motion.d.ts +57 -0
  616. package/dist/_members/primitives/lib/text/motion.js +16 -0
  617. package/dist/_members/primitives/lib/text/motion.js.map +1 -0
  618. package/dist/_members/primitives/lib/text/recolor.d.ts +12 -0
  619. package/dist/_members/primitives/lib/text/recolor.js +8 -0
  620. package/dist/_members/primitives/lib/text/recolor.js.map +1 -0
  621. package/dist/_members/primitives/lib/text/spec.d.ts +82 -0
  622. package/dist/_members/primitives/lib/text/spec.js +1 -0
  623. package/dist/_members/primitives/lib/text/spec.js.map +1 -0
  624. package/dist/_members/primitives/lib/text/stage.d.ts +23 -0
  625. package/dist/_members/primitives/lib/text/stage.js +8 -0
  626. package/dist/_members/primitives/lib/text/stage.js.map +1 -0
  627. package/dist/_members/primitives/lib/text/typeface.d.ts +16 -0
  628. package/dist/_members/primitives/lib/text/typeface.js +8 -0
  629. package/dist/_members/primitives/lib/text/typeface.js.map +1 -0
  630. package/dist/_members/primitives/lib/tokens.d.ts +109 -0
  631. package/dist/_members/primitives/lib/tokens.js +24 -0
  632. package/dist/_members/primitives/lib/tokens.js.map +1 -0
  633. package/dist/_members/primitives/lib/types.d.ts +200 -0
  634. package/dist/_members/primitives/lib/types.js +1 -0
  635. package/dist/_members/primitives/lib/types.js.map +1 -0
  636. package/dist/_members/primitives/params-required.json +153 -0
  637. package/dist/_members/primitives/scenes/changelog-bite/config.d.ts +36 -0
  638. package/dist/_members/primitives/scenes/changelog-bite/index.d.ts +28 -0
  639. package/dist/_members/primitives/scenes/hero-device-assemble/config.d.ts +24 -0
  640. package/dist/_members/primitives/scenes/hero-device-assemble/index.d.ts +16 -0
  641. package/dist/_members/primitives/scenes/index.d.ts +9 -0
  642. package/dist/_members/primitives/scenes/index.js +25 -0
  643. package/dist/_members/primitives/scenes/index.js.map +1 -0
  644. package/dist/_members/primitives/scenes/landing-code-showcase/config.d.ts +15 -0
  645. package/dist/_members/primitives/scenes/landing-code-showcase/index.d.ts +15 -0
  646. package/dist/_members/primitives/scenes/landing-code-showcase/timeline.d.ts +15 -0
  647. package/dist/_members/primitives/scenes/live-code-compilation/config.d.ts +15 -0
  648. package/dist/_members/primitives/scenes/live-code-compilation/index.d.ts +14 -0
  649. package/dist/_members/primitives/scenes/pricing-tier-focus/config.d.ts +21 -0
  650. package/dist/_members/primitives/scenes/pricing-tier-focus/index.d.ts +15 -0
  651. package/dist/_members/primitives/scenes/product-launch-trailer/config.d.ts +33 -0
  652. package/dist/_members/primitives/scenes/product-launch-trailer/index.d.ts +20 -0
  653. package/dist/_members/primitives/scenes/terminal-to-browser-deploy/config.d.ts +21 -0
  654. package/dist/_members/primitives/scenes/terminal-to-browser-deploy/index.d.ts +15 -0
  655. package/dist/_members/primitives/subject-foreground/SubjectForeground.d.ts +43 -0
  656. package/dist/_members/primitives/subject-foreground/index.d.ts +23 -0
  657. package/dist/_members/primitives/subject-foreground/index.js +30 -0
  658. package/dist/_members/primitives/subject-foreground/index.js.map +1 -0
  659. package/dist/_members/primitives/text/blur-reveal/config.d.ts +30 -0
  660. package/dist/_members/primitives/text/blur-reveal/index.d.ts +20 -0
  661. package/dist/_members/primitives/text/cinematic-title/config.d.ts +87 -0
  662. package/dist/_members/primitives/text/cinematic-title/index.d.ts +31 -0
  663. package/dist/_members/primitives/text/index.d.ts +23 -0
  664. package/dist/_members/primitives/text/index.js +57 -0
  665. package/dist/_members/primitives/text/index.js.map +1 -0
  666. package/dist/_members/primitives/text/inline-highlight/config.d.ts +36 -0
  667. package/dist/_members/primitives/text/inline-highlight/index.d.ts +24 -0
  668. package/dist/_members/primitives/text/karaoke/config.d.ts +108 -0
  669. package/dist/_members/primitives/text/karaoke/index.d.ts +32 -0
  670. package/dist/_members/primitives/text/kinetic-type/config.d.ts +60 -0
  671. package/dist/_members/primitives/text/kinetic-type/index.d.ts +29 -0
  672. package/dist/_members/primitives/text/lower-third/config.d.ts +84 -0
  673. package/dist/_members/primitives/text/lower-third/index.d.ts +30 -0
  674. package/dist/_members/primitives/text/marker-highlight/config.d.ts +39 -0
  675. package/dist/_members/primitives/text/marker-highlight/index.d.ts +24 -0
  676. package/dist/_members/primitives/text/masked-slide-reveal/config.d.ts +30 -0
  677. package/dist/_members/primitives/text/masked-slide-reveal/index.d.ts +19 -0
  678. package/dist/_members/primitives/text/matrix-decode/config.d.ts +33 -0
  679. package/dist/_members/primitives/text/matrix-decode/index.d.ts +21 -0
  680. package/dist/_members/primitives/text/quote-card/config.d.ts +21 -0
  681. package/dist/_members/primitives/text/quote-card/index.d.ts +23 -0
  682. package/dist/_members/primitives/text/rgb-glitch-text/config.d.ts +39 -0
  683. package/dist/_members/primitives/text/rgb-glitch-text/index.d.ts +27 -0
  684. package/dist/_members/primitives/text/shimmer-sweep/config.d.ts +30 -0
  685. package/dist/_members/primitives/text/shimmer-sweep/index.d.ts +21 -0
  686. package/dist/_members/primitives/text/slot-machine-roll/config.d.ts +30 -0
  687. package/dist/_members/primitives/text/slot-machine-roll/index.d.ts +19 -0
  688. package/dist/_members/primitives/text/staggered-fade-up/config.d.ts +39 -0
  689. package/dist/_members/primitives/text/staggered-fade-up/index.d.ts +26 -0
  690. package/dist/_members/primitives/text/stat-counter/config.d.ts +33 -0
  691. package/dist/_members/primitives/text/stat-counter/index.d.ts +31 -0
  692. package/dist/_members/primitives/text/strikethrough-replace/config.d.ts +33 -0
  693. package/dist/_members/primitives/text/strikethrough-replace/index.d.ts +21 -0
  694. package/dist/_members/primitives/text/text-effect/config.d.ts +24 -0
  695. package/dist/_members/primitives/text/text-effect/index.d.ts +29 -0
  696. package/dist/_members/primitives/text/text-fade-replace/config.d.ts +30 -0
  697. package/dist/_members/primitives/text/text-fade-replace/index.d.ts +19 -0
  698. package/dist/_members/primitives/text/token-stream/config.d.ts +21 -0
  699. package/dist/_members/primitives/text/token-stream/index.d.ts +25 -0
  700. package/dist/_members/primitives/text/tracking-in/config.d.ts +33 -0
  701. package/dist/_members/primitives/text/tracking-in/index.d.ts +21 -0
  702. package/dist/_members/primitives/text/typewriter/config.d.ts +36 -0
  703. package/dist/_members/primitives/text/typewriter/index.d.ts +26 -0
  704. package/dist/_members/primitives/transitions/chromatic-aberration-wipe/config.d.ts +15 -0
  705. package/dist/_members/primitives/transitions/chromatic-aberration-wipe/index.d.ts +19 -0
  706. package/dist/_members/primitives/transitions/code-diff-wipe/config.d.ts +36 -0
  707. package/dist/_members/primitives/transitions/code-diff-wipe/index.d.ts +21 -0
  708. package/dist/_members/primitives/transitions/directional-wipe/config.d.ts +12 -0
  709. package/dist/_members/primitives/transitions/directional-wipe/index.d.ts +17 -0
  710. package/dist/_members/primitives/transitions/frosted-glass-wipe/config.d.ts +12 -0
  711. package/dist/_members/primitives/transitions/frosted-glass-wipe/index.d.ts +17 -0
  712. package/dist/_members/primitives/transitions/glitch-cut/config.d.ts +15 -0
  713. package/dist/_members/primitives/transitions/glitch-cut/index.d.ts +11 -0
  714. package/dist/_members/primitives/transitions/grid-pixelate-wipe/config.d.ts +21 -0
  715. package/dist/_members/primitives/transitions/grid-pixelate-wipe/index.d.ts +24 -0
  716. package/dist/_members/primitives/transitions/index.d.ts +17 -0
  717. package/dist/_members/primitives/transitions/index.js +67 -0
  718. package/dist/_members/primitives/transitions/index.js.map +1 -0
  719. package/dist/_members/primitives/transitions/ink-wipe/config.d.ts +15 -0
  720. package/dist/_members/primitives/transitions/ink-wipe/index.d.ts +13 -0
  721. package/dist/_members/primitives/transitions/kinetic-type-mask/config.d.ts +15 -0
  722. package/dist/_members/primitives/transitions/kinetic-type-mask/index.d.ts +20 -0
  723. package/dist/_members/primitives/transitions/light-leak/config.d.ts +15 -0
  724. package/dist/_members/primitives/transitions/light-leak/index.d.ts +11 -0
  725. package/dist/_members/primitives/transitions/luma-matte/config.d.ts +12 -0
  726. package/dist/_members/primitives/transitions/luma-matte/index.d.ts +11 -0
  727. package/dist/_members/primitives/transitions/morph/config.d.ts +12 -0
  728. package/dist/_members/primitives/transitions/morph/index.d.ts +11 -0
  729. package/dist/_members/primitives/transitions/spatial-push/config.d.ts +12 -0
  730. package/dist/_members/primitives/transitions/spatial-push/index.d.ts +17 -0
  731. package/dist/_members/primitives/transitions/swipe-transition-wipe/config.d.ts +18 -0
  732. package/dist/_members/primitives/transitions/swipe-transition-wipe/index.d.ts +22 -0
  733. package/dist/_members/primitives/transitions/zoom-through/config.d.ts +39 -0
  734. package/dist/_members/primitives/transitions/zoom-through/index.d.ts +12 -0
  735. package/dist/_members/primitives/transitions/zoom-through-transition/config.d.ts +24 -0
  736. package/dist/_members/primitives/transitions/zoom-through-transition/index.d.ts +20 -0
  737. package/dist/_members/primitives/ui-blocks/ai-generate-overlay/config.d.ts +48 -0
  738. package/dist/_members/primitives/ui-blocks/ai-generate-overlay/index.d.ts +25 -0
  739. package/dist/_members/primitives/ui-blocks/ai-generation-canvas/config.d.ts +21 -0
  740. package/dist/_members/primitives/ui-blocks/ai-generation-canvas/index.d.ts +16 -0
  741. package/dist/_members/primitives/ui-blocks/badge-pop/config.d.ts +27 -0
  742. package/dist/_members/primitives/ui-blocks/badge-pop/index.d.ts +21 -0
  743. package/dist/_members/primitives/ui-blocks/before-after-slider/config.d.ts +21 -0
  744. package/dist/_members/primitives/ui-blocks/before-after-slider/index.d.ts +20 -0
  745. package/dist/_members/primitives/ui-blocks/benchmark-bars/config.d.ts +86 -0
  746. package/dist/_members/primitives/ui-blocks/benchmark-bars/index.d.ts +25 -0
  747. package/dist/_members/primitives/ui-blocks/bounding-box-selector/config.d.ts +27 -0
  748. package/dist/_members/primitives/ui-blocks/bounding-box-selector/index.d.ts +20 -0
  749. package/dist/_members/primitives/ui-blocks/browser-flow/config.d.ts +15 -0
  750. package/dist/_members/primitives/ui-blocks/browser-flow/index.d.ts +15 -0
  751. package/dist/_members/primitives/ui-blocks/brush-stroke-simulator/config.d.ts +36 -0
  752. package/dist/_members/primitives/ui-blocks/brush-stroke-simulator/index.d.ts +32 -0
  753. package/dist/_members/primitives/ui-blocks/chat-exchange/config.d.ts +27 -0
  754. package/dist/_members/primitives/ui-blocks/chat-exchange/index.d.ts +20 -0
  755. package/dist/_members/primitives/ui-blocks/code-accordion/config.d.ts +42 -0
  756. package/dist/_members/primitives/ui-blocks/code-accordion/index.d.ts +23 -0
  757. package/dist/_members/primitives/ui-blocks/context-meter/config.d.ts +24 -0
  758. package/dist/_members/primitives/ui-blocks/context-meter/index.d.ts +20 -0
  759. package/dist/_members/primitives/ui-blocks/cursor-flow/config.d.ts +84 -0
  760. package/dist/_members/primitives/ui-blocks/cursor-flow/index.d.ts +29 -0
  761. package/dist/_members/primitives/ui-blocks/dashboard-populate/config.d.ts +18 -0
  762. package/dist/_members/primitives/ui-blocks/dashboard-populate/index.d.ts +15 -0
  763. package/dist/_members/primitives/ui-blocks/data-flow-pipes/config.d.ts +120 -0
  764. package/dist/_members/primitives/ui-blocks/data-flow-pipes/index.d.ts +34 -0
  765. package/dist/_members/primitives/ui-blocks/device-mockup-zoom/config.d.ts +24 -0
  766. package/dist/_members/primitives/ui-blocks/device-mockup-zoom/index.d.ts +19 -0
  767. package/dist/_members/primitives/ui-blocks/drag-and-drop-flow/config.d.ts +24 -0
  768. package/dist/_members/primitives/ui-blocks/drag-and-drop-flow/index.d.ts +17 -0
  769. package/dist/_members/primitives/ui-blocks/eval-scorecard/config.d.ts +48 -0
  770. package/dist/_members/primitives/ui-blocks/eval-scorecard/index.d.ts +23 -0
  771. package/dist/_members/primitives/ui-blocks/glass-code-block/config.d.ts +39 -0
  772. package/dist/_members/primitives/ui-blocks/glass-code-block/index.d.ts +22 -0
  773. package/dist/_members/primitives/ui-blocks/image-expand-to-fullscreen/config.d.ts +141 -0
  774. package/dist/_members/primitives/ui-blocks/image-expand-to-fullscreen/index.d.ts +32 -0
  775. package/dist/_members/primitives/ui-blocks/index.d.ts +33 -0
  776. package/dist/_members/primitives/ui-blocks/index.js +76 -0
  777. package/dist/_members/primitives/ui-blocks/index.js.map +1 -0
  778. package/dist/_members/primitives/ui-blocks/metric-gauge/config.d.ts +46 -0
  779. package/dist/_members/primitives/ui-blocks/metric-gauge/index.d.ts +23 -0
  780. package/dist/_members/primitives/ui-blocks/morphing-modal/config.d.ts +141 -0
  781. package/dist/_members/primitives/ui-blocks/morphing-modal/index.d.ts +35 -0
  782. package/dist/_members/primitives/ui-blocks/pipeline-journey/config.d.ts +18 -0
  783. package/dist/_members/primitives/ui-blocks/pipeline-journey/index.d.ts +15 -0
  784. package/dist/_members/primitives/ui-blocks/progress-steps/config.d.ts +51 -0
  785. package/dist/_members/primitives/ui-blocks/progress-steps/index.d.ts +22 -0
  786. package/dist/_members/primitives/ui-blocks/reasoning-trace/config.d.ts +21 -0
  787. package/dist/_members/primitives/ui-blocks/reasoning-trace/index.d.ts +18 -0
  788. package/dist/_members/primitives/ui-blocks/simulated-cursor/config.d.ts +69 -0
  789. package/dist/_members/primitives/ui-blocks/simulated-cursor/index.d.ts +23 -0
  790. package/dist/_members/primitives/ui-blocks/terminal-simulator/config.d.ts +63 -0
  791. package/dist/_members/primitives/ui-blocks/terminal-simulator/index.d.ts +39 -0
  792. package/dist/_members/primitives/ui-blocks/toast-notification/config.d.ts +33 -0
  793. package/dist/_members/primitives/ui-blocks/toast-notification/index.d.ts +21 -0
  794. package/dist/_members/primitives/ui-blocks/tool-call-stack/config.d.ts +54 -0
  795. package/dist/_members/primitives/ui-blocks/tool-call-stack/index.d.ts +20 -0
  796. package/dist/_members/primitives/ui-blocks/tool-menu-slide-in/config.d.ts +33 -0
  797. package/dist/_members/primitives/ui-blocks/tool-menu-slide-in/index.d.ts +20 -0
  798. package/dist/_members/primitives/ui-blocks/visual-docs-snippet/config.d.ts +90 -0
  799. package/dist/_members/primitives/ui-blocks/visual-docs-snippet/index.d.ts +27 -0
  800. package/dist/_members/primitives/ui-blocks/voice-waveform/config.d.ts +24 -0
  801. package/dist/_members/primitives/ui-blocks/voice-waveform/index.d.ts +20 -0
  802. package/dist/_members/primitives/version-map.json +105 -0
  803. package/dist/_members/primitives/workspace.d.ts +51 -0
  804. package/dist/_members/primitives/workspace.js +60 -0
  805. package/dist/_members/primitives/workspace.js.map +1 -0
  806. package/dist/_members/render-harness/cardRender.d.ts +64 -0
  807. package/dist/_members/render-harness/cardRender.d.ts.map +1 -0
  808. package/dist/_members/render-harness/contractRender.d.ts +43 -0
  809. package/dist/_members/render-harness/contractRender.d.ts.map +1 -0
  810. package/dist/_members/render-harness/extractSegments.d.ts +53 -0
  811. package/dist/_members/render-harness/extractSegments.d.ts.map +1 -0
  812. package/dist/_members/render-harness/index.d.ts +30 -0
  813. package/dist/_members/render-harness/index.d.ts.map +1 -0
  814. package/dist/_members/render-harness/localRender.d.ts +167 -0
  815. package/dist/_members/render-harness/localRender.d.ts.map +1 -0
  816. package/dist/_members/render-harness/materializeSources.d.ts +29 -0
  817. package/dist/_members/render-harness/materializeSources.d.ts.map +1 -0
  818. package/dist/_members/render-harness/mediaServer.d.ts +22 -0
  819. package/dist/_members/render-harness/mediaServer.d.ts.map +1 -0
  820. package/dist/_members/render-harness/renderInputAssets.d.ts +63 -0
  821. package/dist/_members/render-harness/renderInputAssets.d.ts.map +1 -0
  822. package/dist/_members/render-harness/resolveAssets.d.ts +33 -0
  823. package/dist/_members/render-harness/resolveAssets.d.ts.map +1 -0
  824. package/dist/_members/render-harness/sandboxGlobalSpecs.d.ts +23 -0
  825. package/dist/_members/render-harness/sandboxGlobalSpecs.d.ts.map +1 -0
  826. package/dist/account-model/testing.d.ts +1 -0
  827. package/dist/account-model/testing.js +145 -0
  828. package/dist/account-model/types.d.ts +1 -0
  829. package/dist/account-model/types.js +0 -0
  830. package/dist/account-model/validators.d.ts +1 -0
  831. package/dist/account-model/validators.js +26 -0
  832. package/dist/account-model.d.ts +1 -0
  833. package/dist/account-model.js +26 -0
  834. package/dist/animate.d.ts +1 -0
  835. package/dist/animate.js +79412 -0
  836. package/dist/authoring/build-tools.d.ts +1 -0
  837. package/dist/authoring/build-tools.js +29 -0
  838. package/dist/authoring/capabilities.d.ts +1 -0
  839. package/dist/authoring/capabilities.js +11 -0
  840. package/dist/authoring/composer.d.ts +1 -0
  841. package/dist/authoring/composer.js +53 -0
  842. package/dist/authoring/context.d.ts +1 -0
  843. package/dist/authoring/context.js +14 -0
  844. package/dist/authoring/models.d.ts +1 -0
  845. package/dist/authoring/models.js +14 -0
  846. package/dist/authoring/pipelineTrace.d.ts +1 -0
  847. package/dist/authoring/pipelineTrace.js +7 -0
  848. package/dist/authoring/prompts.d.ts +1 -0
  849. package/dist/authoring/prompts.js +29 -0
  850. package/dist/authoring/providers.d.ts +1 -0
  851. package/dist/authoring/providers.js +99 -0
  852. package/dist/authoring/resource-routing.d.ts +1 -0
  853. package/dist/authoring/resource-routing.js +206 -0
  854. package/dist/authoring/resources.d.ts +1 -0
  855. package/dist/authoring/resources.js +35 -0
  856. package/dist/authoring/tools.d.ts +1 -0
  857. package/dist/authoring/tools.js +29 -0
  858. package/dist/authoring/transpileComponent.d.ts +1 -0
  859. package/dist/authoring/transpileComponent.js +2248 -0
  860. package/dist/authoring/transpileHelper.d.ts +1 -0
  861. package/dist/authoring/transpileHelper.js +9 -0
  862. package/dist/authoring/types.d.ts +1 -0
  863. package/dist/authoring/types.js +0 -0
  864. package/dist/authoring.d.ts +1 -0
  865. package/dist/authoring.js +1295 -0
  866. package/dist/brand-derivation/constants.d.ts +1 -0
  867. package/dist/brand-derivation/constants.js +11 -0
  868. package/dist/brand-derivation.d.ts +1 -0
  869. package/dist/brand-derivation.js +23 -0
  870. package/dist/chunk-2ESYSVXG.js +48 -0
  871. package/dist/chunk-37NJ27UU.js +501 -0
  872. package/dist/chunk-52AHXNKM.js +435 -0
  873. package/dist/chunk-5I7VDCAC.js +15647 -0
  874. package/dist/chunk-6CMVBTTP.js +1933 -0
  875. package/dist/chunk-6EQXLEP6.js +194 -0
  876. package/dist/chunk-6QJ3V3VS.js +1444 -0
  877. package/dist/chunk-7DHP4ESU.js +138 -0
  878. package/dist/chunk-7GISRVON.js +14176 -0
  879. package/dist/chunk-7PA7FGLD.js +609 -0
  880. package/dist/chunk-ATAF24QG.js +735 -0
  881. package/dist/chunk-AWT3P5ZN.js +1609 -0
  882. package/dist/chunk-B4VMU2IJ.js +211 -0
  883. package/dist/chunk-BDMTUEEZ.js +19 -0
  884. package/dist/chunk-BRKJKB33.js +683 -0
  885. package/dist/chunk-CX2IIQ4R.js +111 -0
  886. package/dist/chunk-D2EG7J7X.js +31 -0
  887. package/dist/chunk-DENF4TPI.js +249 -0
  888. package/dist/chunk-DIBOJJMU.js +16838 -0
  889. package/dist/chunk-DLF4WVSE.js +9 -0
  890. package/dist/chunk-DSNG6WLU.js +82 -0
  891. package/dist/chunk-EA6MYCYW.js +135 -0
  892. package/dist/chunk-EAUSEGB7.js +420 -0
  893. package/dist/chunk-ELLSET2N.js +195 -0
  894. package/dist/chunk-EMGFZ3PR.js +14 -0
  895. package/dist/chunk-FUWJOVVK.js +3633 -0
  896. package/dist/chunk-G3PBH53P.js +85 -0
  897. package/dist/chunk-G75E7YA4.js +11883 -0
  898. package/dist/chunk-GBRNYH7W.js +72 -0
  899. package/dist/chunk-GH27OS5S.js +104 -0
  900. package/dist/chunk-GULDS3VE.js +41 -0
  901. package/dist/chunk-H5LMJKZU.js +0 -0
  902. package/dist/chunk-HI4UTTPS.js +954 -0
  903. package/dist/chunk-JCZQT7K3.js +3266 -0
  904. package/dist/chunk-JD77Y2WM.js +3423 -0
  905. package/dist/chunk-JF4JJAFP.js +10 -0
  906. package/dist/chunk-JMURQODM.js +438 -0
  907. package/dist/chunk-JOURGVOR.js +27 -0
  908. package/dist/chunk-JRQVPFLF.js +459 -0
  909. package/dist/chunk-KF5ETMKB.js +544 -0
  910. package/dist/chunk-KYRDKK2D.js +47 -0
  911. package/dist/chunk-LD5ZOUFT.js +55 -0
  912. package/dist/chunk-M3I5LMAB.js +426 -0
  913. package/dist/chunk-MC5DLSEV.js +202 -0
  914. package/dist/chunk-MCBUX5XV.js +70 -0
  915. package/dist/chunk-MFHXCHRI.js +33 -0
  916. package/dist/chunk-MMEJ3Y7E.js +327 -0
  917. package/dist/chunk-MVEE6HEC.js +8512 -0
  918. package/dist/chunk-N67PDTKQ.js +1419 -0
  919. package/dist/chunk-NDKERSXY.js +1296 -0
  920. package/dist/chunk-NV4I6GJV.js +1091 -0
  921. package/dist/chunk-OIRUO5P7.js +397 -0
  922. package/dist/chunk-P43IE4WB.js +181 -0
  923. package/dist/chunk-QGAWDLYX.js +92 -0
  924. package/dist/chunk-QH3YI3ND.js +100 -0
  925. package/dist/chunk-QLAQHR3L.js +254 -0
  926. package/dist/chunk-RHVLQNYF.js +20 -0
  927. package/dist/chunk-S3P5BFFL.js +2265 -0
  928. package/dist/chunk-SIGGQRY2.js +8483 -0
  929. package/dist/chunk-TULRCY6U.js +729 -0
  930. package/dist/chunk-TWQOKKAF.js +859 -0
  931. package/dist/chunk-U3JPILZS.js +15 -0
  932. package/dist/chunk-U4V4FZGE.js +20 -0
  933. package/dist/chunk-UEI3NLNK.js +127 -0
  934. package/dist/chunk-V43Y7IE4.js +3621 -0
  935. package/dist/chunk-VIVQHIGZ.js +4319 -0
  936. package/dist/chunk-W35ZMOXB.js +23 -0
  937. package/dist/chunk-WB2VFDQZ.js +58 -0
  938. package/dist/chunk-WREYUH2E.js +104 -0
  939. package/dist/chunk-WZTTZHNR.js +3339 -0
  940. package/dist/chunk-XELS2BGA.js +13 -0
  941. package/dist/chunk-XLIPPLG3.js +18 -0
  942. package/dist/chunk-YA3OR2KK.js +249 -0
  943. package/dist/chunk-ZE76SSRT.js +358 -0
  944. package/dist/chunk-ZFEXATWN.js +46 -0
  945. package/dist/chunk-ZSZABOE5.js +425 -0
  946. package/dist/compose/renderer.d.ts +1 -0
  947. package/dist/compose/renderer.js +173 -0
  948. package/dist/compose.d.ts +1 -0
  949. package/dist/compose.js +76 -0
  950. package/dist/composition/audio.d.ts +1 -0
  951. package/dist/composition/audio.js +63 -0
  952. package/dist/composition/autozoom.d.ts +1 -0
  953. package/dist/composition/autozoom.js +76 -0
  954. package/dist/composition/brand-kit.d.ts +1 -0
  955. package/dist/composition/brand-kit.js +34 -0
  956. package/dist/composition/brief.d.ts +1 -0
  957. package/dist/composition/brief.js +112 -0
  958. package/dist/composition/depth.d.ts +1 -0
  959. package/dist/composition/depth.js +12 -0
  960. package/dist/composition/fixtures.d.ts +1 -0
  961. package/dist/composition/fixtures.js +154 -0
  962. package/dist/composition/fonts.d.ts +1 -0
  963. package/dist/composition/fonts.js +74 -0
  964. package/dist/composition/graphics-plan.d.ts +1 -0
  965. package/dist/composition/graphics-plan.js +400 -0
  966. package/dist/composition/invariants.d.ts +1 -0
  967. package/dist/composition/invariants.js +49 -0
  968. package/dist/composition/ops.d.ts +1 -0
  969. package/dist/composition/ops.js +53 -0
  970. package/dist/composition/primitive-catalog.d.ts +1 -0
  971. package/dist/composition/primitive-catalog.js +60 -0
  972. package/dist/composition/projection.d.ts +1 -0
  973. package/dist/composition/projection.js +119 -0
  974. package/dist/composition/reframe/coverage.d.ts +1 -0
  975. package/dist/composition/reframe/coverage.js +20 -0
  976. package/dist/composition/reframe/kenBurns.d.ts +1 -0
  977. package/dist/composition/reframe/kenBurns.js +53 -0
  978. package/dist/composition/reframe/shotScale.d.ts +1 -0
  979. package/dist/composition/reframe/shotScale.js +25 -0
  980. package/dist/composition/reframe/trajectory.d.ts +1 -0
  981. package/dist/composition/reframe/trajectory.js +17 -0
  982. package/dist/composition/reframe.d.ts +1 -0
  983. package/dist/composition/reframe.js +39 -0
  984. package/dist/composition/timeline.d.ts +1 -0
  985. package/dist/composition/timeline.js +70 -0
  986. package/dist/composition/types.d.ts +1 -0
  987. package/dist/composition/types.js +0 -0
  988. package/dist/composition/validators/graphic-kinds.d.ts +1 -0
  989. package/dist/composition/validators/graphic-kinds.js +9 -0
  990. package/dist/composition/validators.d.ts +1 -0
  991. package/dist/composition/validators.js +180 -0
  992. package/dist/composition-ops.d.ts +1 -0
  993. package/dist/composition-ops.js +882 -0
  994. package/dist/composition.d.ts +1 -0
  995. package/dist/composition.js +433 -0
  996. package/dist/context-CEAKQ5T7.js +14 -0
  997. package/dist/core/render.d.ts +1 -0
  998. package/dist/core/render.js +105 -0
  999. package/dist/core/select.d.ts +1 -0
  1000. package/dist/core/select.js +42 -0
  1001. package/dist/core/types.d.ts +1 -0
  1002. package/dist/core/types.js +0 -0
  1003. package/dist/core.d.ts +1 -0
  1004. package/dist/core.js +38 -0
  1005. package/dist/dist-LAJ2363K.js +545 -0
  1006. package/dist/errors.d.ts +1 -0
  1007. package/dist/errors.js +17 -0
  1008. package/dist/foundation/codes.d.ts +1 -0
  1009. package/dist/foundation/codes.js +7 -0
  1010. package/dist/foundation/primitives.d.ts +1 -0
  1011. package/dist/foundation/primitives.js +13 -0
  1012. package/dist/foundation.d.ts +1 -0
  1013. package/dist/foundation.js +17 -0
  1014. package/dist/hls-HD4C5G6W.js +33000 -0
  1015. package/dist/magic-string.es-SDTMJBWP.js +1308 -0
  1016. package/dist/mcp/adapter.d.ts +1 -0
  1017. package/dist/mcp/adapter.js +670 -0
  1018. package/dist/mcp/core.d.ts +1 -0
  1019. package/dist/mcp/core.js +41 -0
  1020. package/dist/mcp/curation.d.ts +1 -0
  1021. package/dist/mcp/curation.js +23 -0
  1022. package/dist/mcp/executor.d.ts +1 -0
  1023. package/dist/mcp/executor.js +13 -0
  1024. package/dist/mcp/server.d.ts +1 -0
  1025. package/dist/mcp/server.js +27 -0
  1026. package/dist/mcp.d.ts +1 -0
  1027. package/dist/mcp.js +138 -0
  1028. package/dist/media-model/media-kind.d.ts +1 -0
  1029. package/dist/media-model/media-kind.js +108 -0
  1030. package/dist/media-model/testing.d.ts +1 -0
  1031. package/dist/media-model/testing.js +16029 -0
  1032. package/dist/media-model/transcriptSearch.d.ts +1 -0
  1033. package/dist/media-model/transcriptSearch.js +32 -0
  1034. package/dist/media-model.d.ts +1 -0
  1035. package/dist/media-model.js +154 -0
  1036. package/dist/nle-export/server.d.ts +1 -0
  1037. package/dist/nle-export/server.js +25658 -0
  1038. package/dist/nle-export/xml.d.ts +1 -0
  1039. package/dist/nle-export/xml.js +23102 -0
  1040. package/dist/nle-export.d.ts +1 -0
  1041. package/dist/nle-export.js +313 -0
  1042. package/dist/perception.d.ts +1 -0
  1043. package/dist/perception.js +145 -0
  1044. package/dist/plane/conformance.d.ts +1 -0
  1045. package/dist/plane/conformance.js +13 -0
  1046. package/dist/plane/contract.d.ts +1 -0
  1047. package/dist/plane/contract.js +31 -0
  1048. package/dist/plane.d.ts +1 -0
  1049. package/dist/plane.js +13 -0
  1050. package/dist/primitives/backgrounds.d.ts +1 -0
  1051. package/dist/primitives/backgrounds.js +32 -0
  1052. package/dist/primitives/captions.d.ts +1 -0
  1053. package/dist/primitives/captions.js +629 -0
  1054. package/dist/primitives/effects.d.ts +1 -0
  1055. package/dist/primitives/effects.js +30 -0
  1056. package/dist/primitives/hero-text.d.ts +1 -0
  1057. package/dist/primitives/hero-text.js +14 -0
  1058. package/dist/primitives/layouts.d.ts +1 -0
  1059. package/dist/primitives/layouts.js +24 -0
  1060. package/dist/primitives/lib/easings.d.ts +1 -0
  1061. package/dist/primitives/lib/easings.js +25 -0
  1062. package/dist/primitives/lib/index.d.ts +1 -0
  1063. package/dist/primitives/lib/index.js +78 -0
  1064. package/dist/primitives/lib/palette.d.ts +1 -0
  1065. package/dist/primitives/lib/palette.js +71 -0
  1066. package/dist/primitives/lib/preview.d.ts +1 -0
  1067. package/dist/primitives/lib/preview.js +8 -0
  1068. package/dist/primitives/lib/schema.d.ts +1 -0
  1069. package/dist/primitives/lib/schema.js +12 -0
  1070. package/dist/primitives/lib/seeded-random.d.ts +1 -0
  1071. package/dist/primitives/lib/seeded-random.js +13 -0
  1072. package/dist/primitives/lib/text/contrast.d.ts +1 -0
  1073. package/dist/primitives/lib/text/contrast.js +11 -0
  1074. package/dist/primitives/lib/text/fill.d.ts +1 -0
  1075. package/dist/primitives/lib/text/fill.js +7 -0
  1076. package/dist/primitives/lib/text/fitText.d.ts +1 -0
  1077. package/dist/primitives/lib/text/fitText.js +10 -0
  1078. package/dist/primitives/lib/text/marker.d.ts +1 -0
  1079. package/dist/primitives/lib/text/marker.js +7 -0
  1080. package/dist/primitives/lib/text/motion.d.ts +1 -0
  1081. package/dist/primitives/lib/text/motion.js +15 -0
  1082. package/dist/primitives/lib/text/recolor.d.ts +1 -0
  1083. package/dist/primitives/lib/text/recolor.js +7 -0
  1084. package/dist/primitives/lib/text/spec.d.ts +1 -0
  1085. package/dist/primitives/lib/text/spec.js +0 -0
  1086. package/dist/primitives/lib/text/stage.d.ts +1 -0
  1087. package/dist/primitives/lib/text/stage.js +7 -0
  1088. package/dist/primitives/lib/text/typeface.d.ts +1 -0
  1089. package/dist/primitives/lib/text/typeface.js +7 -0
  1090. package/dist/primitives/lib/tokens.d.ts +1 -0
  1091. package/dist/primitives/lib/tokens.js +24 -0
  1092. package/dist/primitives/lib/types.d.ts +1 -0
  1093. package/dist/primitives/lib/types.js +0 -0
  1094. package/dist/primitives/lib.d.ts +1 -0
  1095. package/dist/primitives/lib.js +78 -0
  1096. package/dist/primitives/params-required.json +153 -0
  1097. package/dist/primitives/scenes.d.ts +1 -0
  1098. package/dist/primitives/scenes.js +25 -0
  1099. package/dist/primitives/subject-foreground.d.ts +1 -0
  1100. package/dist/primitives/subject-foreground.js +28 -0
  1101. package/dist/primitives/text.d.ts +1 -0
  1102. package/dist/primitives/text.js +57 -0
  1103. package/dist/primitives/transitions.d.ts +1 -0
  1104. package/dist/primitives/transitions.js +66 -0
  1105. package/dist/primitives/ui-blocks.d.ts +1 -0
  1106. package/dist/primitives/ui-blocks.js +76 -0
  1107. package/dist/primitives/version-map.json +105 -0
  1108. package/dist/primitives/workspace.d.ts +1 -0
  1109. package/dist/primitives/workspace.js +25 -0
  1110. package/dist/primitives.d.ts +1 -0
  1111. package/dist/primitives.js +65 -0
  1112. package/dist/render-harness/sandboxGlobalSpecs.d.ts +1 -0
  1113. package/dist/render-harness/sandboxGlobalSpecs.js +13 -0
  1114. package/dist/render-harness.d.ts +1 -0
  1115. package/dist/render-harness.js +1019 -0
  1116. package/dist/token-RGFIT24D.js +69 -0
  1117. package/dist/token-util-GPLSGYVO.js +5 -0
  1118. package/dist/vision_bundle-5Y376MAR.js +4084 -0
  1119. package/package.json +493 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/scenes/changelog-bite/index.tsx","../src/scenes/live-code-compilation/index.tsx","../src/scenes/product-launch-trailer/index.tsx","../src/scenes/hero-device-assemble/index.tsx","../src/scenes/pricing-tier-focus/index.tsx","../src/scenes/landing-code-showcase/index.tsx","../src/scenes/landing-code-showcase/timeline.ts","../src/scenes/terminal-to-browser-deploy/index.tsx","../src/scenes/changelog-bite/config.ts","../src/scenes/live-code-compilation/config.ts","../src/scenes/product-launch-trailer/config.ts","../src/scenes/hero-device-assemble/config.ts","../src/scenes/pricing-tier-focus/config.ts","../src/scenes/landing-code-showcase/config.ts","../src/scenes/terminal-to-browser-deploy/config.ts","../src/scenes/index.ts"],"sourcesContent":["/**\n * Adapted from remocn (https://github.com/kapishdima/remocn) — MIT\n * Copyright (c) 2026 KapishDima\n *\n * Modifications:\n * - hermetic-ize fontFamily (use inherit / monospace, not Geist CSS vars)\n * - strip \"use client\" directive (re-added at shadcn-registry export time)\n */\n\nimport type { ReactNode } from \"react\";\nimport {\n AbsoluteFill,\n Easing,\n interpolate,\n spring,\n useCurrentFrame,\n useVideoConfig,\n} from \"remotion\";\nimport * as palette from \"../../lib/palette\";\n\nexport interface ChangelogBiteProps {\n label?: string;\n title?: string;\n /** ReactNode escape hatch (host-only; NOT expressible over the JSON params bag). */\n oldContent?: ReactNode;\n /** ReactNode escape hatch (host-only; NOT expressible over the JSON params bag). */\n newContent?: ReactNode;\n /** BEFORE-panel content as plain lines — the JSON-serializable comparison slot. */\n oldLines?: string[];\n /** AFTER-panel content as plain lines — the JSON-serializable comparison slot. */\n newLines?: string[];\n format?: \"square\" | \"portrait\";\n background?: string;\n cardBackground?: string;\n accent?: string;\n speed?: number;\n className?: string;\n}\n\nconst FONT_FAMILY =\n \"inherit\";\nconst MONO_FAMILY =\n \"monospace\";\n\nconst SOFT = Easing.bezier(0.16, 1, 0.3, 1);\n\nexport function ChangelogBite({\n label = \"New\",\n title = \"Inline diff view\",\n oldContent,\n newContent,\n oldLines,\n newLines,\n format = \"square\",\n background = palette.BG,\n cardBackground = palette.SURFACE,\n accent = palette.ACCENT_SOFT,\n speed = 1,\n className,\n}: ChangelogBiteProps) {\n const frame = useCurrentFrame() * speed;\n const { fps, durationInFrames } = useVideoConfig();\n\n // ── Card scale/opacity envelope (loop seam) ─────────────────────────────\n // First 10 frames: 0.95 → 1.0, 0 → 1\n // Last 15 frames: 1.0 → 0.95, 1 → 0\n // The match means a flat-cut from final to first frame is invisible.\n const enterT = interpolate(frame, [0, 10], [0, 1], {\n extrapolateLeft: \"clamp\",\n extrapolateRight: \"clamp\",\n easing: SOFT,\n });\n const exitT = interpolate(\n frame,\n [durationInFrames - 15, durationInFrames - 1],\n [0, 1],\n { extrapolateLeft: \"clamp\", extrapolateRight: \"clamp\", easing: SOFT },\n );\n const cardScale = 0.95 + enterT * 0.05 - exitT * 0.05;\n const cardOpacity = enterT * (1 - exitT);\n\n // ── Wipe progress (frosted glass + clip) ────────────────────────────────\n const wipe = spring({\n frame: frame - 60,\n fps,\n config: { damping: 18, mass: 0.9, stiffness: 90 },\n durationInFrames: 50,\n });\n const wipePct = wipe * 100;\n\n // ── Aspect-driven inner card sizing ─────────────────────────────────────\n const isSquare = format === \"square\";\n const cardWidth = isSquare ? 880 : 880;\n const cardHeight = isSquare ? 880 : 1100;\n\n // Resolution order per panel: an explicit ReactNode (host-only) wins; else the\n // JSON-serializable `oldLines`/`newLines` slot; else the baked sample diff.\n // Omitting the params renders EXACTLY the legacy DefaultOldPanel/DefaultNewPanel\n // (zero visual regression).\n const oldNode =\n oldContent ??\n (oldLines && oldLines.length > 0 ? (\n <LinesPanel lines={oldLines} variant=\"old\" accent={accent} />\n ) : (\n <DefaultOldPanel accent={accent} />\n ));\n const newNode =\n newContent ??\n (newLines && newLines.length > 0 ? (\n <LinesPanel lines={newLines} variant=\"new\" accent={accent} />\n ) : (\n <DefaultNewPanel accent={accent} />\n ));\n\n return (\n <AbsoluteFill\n className={className}\n style={{\n background,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n fontFamily: FONT_FAMILY,\n }}\n >\n <div\n style={{\n width: cardWidth,\n height: cardHeight,\n borderRadius: 56,\n background: cardBackground,\n border: `1px solid ${accent}33`,\n opacity: cardOpacity,\n transform: `scale(${cardScale})`,\n transformOrigin: \"center\",\n willChange: \"transform, opacity\",\n padding: 56,\n display: \"flex\",\n flexDirection: \"column\",\n gap: 28,\n position: \"relative\",\n overflow: \"hidden\",\n }}\n >\n {/* Header row: title + New pill */}\n <div\n style={{\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n }}\n >\n <div\n style={{\n color: \"rgba(255,255,255,0.55)\",\n fontSize: 22,\n letterSpacing: \"0.02em\",\n }}\n >\n {title}\n </div>\n <PulsingPill label={label} color={accent} speed={speed} />\n </div>\n\n {/* Diff stage */}\n <div\n style={{\n position: \"relative\",\n flex: 1,\n borderRadius: 32,\n overflow: \"hidden\",\n background: \"rgba(8,7,12,0.6)\",\n border: \"1px solid rgba(255,255,255,0.05)\",\n }}\n >\n {/* New (bottom layer) */}\n <div style={{ position: \"absolute\", inset: 0 }}>{newNode}</div>\n\n {/* Old (top layer, clipped left-to-right) */}\n <div\n style={{\n position: \"absolute\",\n inset: 0,\n clipPath: `inset(0 ${wipePct}% 0 0)`,\n willChange: \"clip-path\",\n }}\n >\n {oldNode}\n </div>\n\n {/* Frosted glass shutter sweeping over the seam */}\n {wipePct > 0 && wipePct < 100 && (\n <div\n style={{\n position: \"absolute\",\n top: 0,\n bottom: 0,\n left: `calc(${wipePct}% - 60px)`,\n width: 120,\n background:\n \"linear-gradient(90deg, rgba(255,255,255,0.0) 0%, rgba(255,255,255,0.10) 50%, rgba(255,255,255,0.0) 100%)\",\n backdropFilter: \"blur(18px)\",\n WebkitBackdropFilter: \"blur(18px)\",\n pointerEvents: \"none\",\n }}\n />\n )}\n\n {/* Subtle accent seam line */}\n {wipePct > 0 && wipePct < 100 && (\n <div\n style={{\n position: \"absolute\",\n top: 0,\n bottom: 0,\n left: `${wipePct}%`,\n width: 1.5,\n background: accent,\n opacity: 0.55,\n pointerEvents: \"none\",\n }}\n />\n )}\n </div>\n\n {/* Footer caption — labels swap mid-wipe */}\n <div\n style={{\n display: \"flex\",\n justifyContent: \"space-between\",\n color: \"rgba(255,255,255,0.4)\",\n fontSize: 16,\n fontFamily: MONO_FAMILY,\n }}\n >\n <span style={{ opacity: 1 - wipe }}>before</span>\n <span style={{ opacity: wipe }}>after</span>\n </div>\n </div>\n </AbsoluteFill>\n );\n}\n\n/* -------------------------------------------------------------------------- */\n/* Agent-supplied content (oldLines/newLines) */\n/* -------------------------------------------------------------------------- */\n\n/**\n * Render the agent's `oldLines`/`newLines` in the SAME panel chrome as the baked\n * defaults (mono text + BEFORE/AFTER corner badge), so the JSON-serializable\n * comparison slot lands with the scene's visual identity intact. The \"old\"\n * variant is muted (de-emphasized, like the pre-change state); the \"new\" variant\n * is bright with the accent gradient + badge.\n */\nfunction LinesPanel({\n lines,\n variant,\n accent,\n}: {\n lines: string[];\n variant: \"old\" | \"new\";\n accent: string;\n}) {\n const isOld = variant === \"old\";\n return (\n <div\n style={{\n position: \"absolute\",\n inset: 0,\n background: isOld\n ? palette.BG_DEEP\n : \"radial-gradient(ellipse at 50% 30%, rgba(255,179,142,0.10) 0%, rgba(10,9,14,1) 70%)\",\n padding: \"44px 52px\",\n fontFamily: MONO_FAMILY,\n color: isOld ? palette.TEXT_MUTED : palette.TEXT,\n fontSize: 22,\n lineHeight: 1.55,\n whiteSpace: \"pre\",\n }}\n >\n {lines.map((line, i) => (\n <div key={i}>{line === \"\" ? \" \" : line}</div>\n ))}\n <div\n style={{\n marginTop: 24,\n display: \"inline-block\",\n padding: \"6px 14px\",\n borderRadius: 999,\n background: isOld ? `${palette.DANGER}1f` : `${accent}1a`,\n border: isOld ? `1px solid ${palette.DANGER}59` : `1px solid ${accent}55`,\n color: isOld ? palette.DANGER : accent,\n fontSize: 13,\n letterSpacing: \"0.12em\",\n fontWeight: 700,\n }}\n >\n {isOld ? \"BEFORE\" : \"AFTER\"}\n </div>\n </div>\n );\n}\n\n/* -------------------------------------------------------------------------- */\n/* Default content */\n/* -------------------------------------------------------------------------- */\n\nfunction DefaultOldPanel({ accent }: { accent: string }) {\n return (\n <div\n style={{\n position: \"absolute\",\n inset: 0,\n background: palette.BG_DEEP,\n padding: \"44px 52px\",\n fontFamily: MONO_FAMILY,\n color: palette.TEXT_MUTED,\n fontSize: 22,\n lineHeight: 1.55,\n whiteSpace: \"pre\",\n }}\n >\n <div>{\"function diff(a, b) {\"}</div>\n <div>{\" if (a === b) return null;\"}</div>\n <div>{\" return {\"}</div>\n <div>{\" before: a,\"}</div>\n <div>{\" after: b,\"}</div>\n <div>{\" };\"}</div>\n <div>{\"}\"}</div>\n <div\n style={{\n marginTop: 24,\n display: \"inline-block\",\n padding: \"6px 14px\",\n borderRadius: 999,\n background: `${palette.DANGER}1f`,\n border: `1px solid ${palette.DANGER}59`,\n color: palette.DANGER,\n fontSize: 13,\n letterSpacing: \"0.12em\",\n fontWeight: 700,\n }}\n >\n BEFORE\n </div>\n {/* swallow lint */}\n <span style={{ display: \"none\" }}>{accent}</span>\n </div>\n );\n}\n\nfunction DefaultNewPanel({ accent }: { accent: string }) {\n return (\n <div\n style={{\n position: \"absolute\",\n inset: 0,\n background:\n \"radial-gradient(ellipse at 50% 30%, rgba(255,179,142,0.10) 0%, rgba(10,9,14,1) 70%)\",\n padding: \"44px 52px\",\n fontFamily: MONO_FAMILY,\n color: palette.TEXT,\n fontSize: 22,\n lineHeight: 1.55,\n whiteSpace: \"pre\",\n }}\n >\n <div>\n <span style={{ color: palette.SYN_KEYWORD }}>function</span>{\" \"}\n <span style={{ color: palette.SYN_FN }}>diff</span>\n {\"(a, b) {\"}\n </div>\n <div>\n {\" return \"}\n <span style={{ color: palette.SYN_STRING }}>visualDiff</span>\n {\"(a, b);\"}\n </div>\n <div>{\"}\"}</div>\n <div\n style={{\n marginTop: 24,\n display: \"inline-block\",\n padding: \"6px 14px\",\n borderRadius: 999,\n background: `${accent}1a`,\n border: `1px solid ${accent}55`,\n color: accent,\n fontSize: 13,\n letterSpacing: \"0.12em\",\n fontWeight: 700,\n }}\n >\n AFTER\n </div>\n </div>\n );\n}\n\n/* -------------------------------------------------------------------------- */\n/* Pulsing pill */\n/* -------------------------------------------------------------------------- */\n\nfunction PulsingPill({\n label,\n color,\n speed,\n}: {\n label: string;\n color: string;\n speed: number;\n}) {\n const frame = useCurrentFrame() * speed;\n const wave = (Math.sin(frame / 8) + 1) / 2;\n const dotScale = 0.92 + wave * 0.16;\n const ringPhase = (frame % 60) / 60;\n const ringScale = 1 + ringPhase * 1.6;\n const ringOpacity = (1 - ringPhase) * 0.6;\n\n return (\n <div\n style={{\n display: \"flex\",\n alignItems: \"center\",\n gap: 12,\n padding: \"10px 18px 10px 14px\",\n borderRadius: 999,\n background: `${color}1a`,\n border: `1px solid ${color}55`,\n color,\n fontSize: 16,\n fontWeight: 600,\n letterSpacing: \"0.02em\",\n }}\n >\n <div style={{ position: \"relative\", width: 12, height: 12 }}>\n <div\n style={{\n position: \"absolute\",\n inset: 0,\n borderRadius: \"50%\",\n background: color,\n opacity: ringOpacity,\n transform: `scale(${ringScale})`,\n }}\n />\n <div\n style={{\n position: \"absolute\",\n inset: 0,\n borderRadius: \"50%\",\n background: color,\n transform: `scale(${dotScale})`,\n }}\n />\n </div>\n {label}\n </div>\n );\n}\n","/**\n * Adapted from remocn (https://github.com/kapishdima/remocn) — MIT\n * Copyright (c) 2026 KapishDima\n *\n * Modifications:\n * - hermetic-ize fontFamily (use inherit / monospace, not Geist CSS vars)\n * - strip \"use client\" directive (re-added at shadcn-registry export time)\n */\n\nimport { useCurrentFrame } from \"remotion\";\nimport * as palette from \"../../lib/palette\";\n\nexport interface LiveCodeCompilationProps {\n accentColor?: string;\n speed?: number;\n className?: string;\n}\n\nconst FONT_FAMILY =\n \"inherit\";\nconst MONO_FAMILY =\n \"monospace\";\n\ninterface UIState {\n background?: string;\n color?: string;\n padding?: string;\n borderRadius?: string;\n fontWeight?: number;\n label?: string;\n}\n\ninterface CodeEvent {\n code: string;\n ui: UIState;\n}\n\nconst EVENTS: CodeEvent[] = [\n {\n code: \"export function Button() {\\n return (\\n <button\",\n ui: {},\n },\n { code: \"\\n style={{\", ui: {} },\n {\n code: '\\n background: \"#7b93b0\",',\n ui: { background: \"#7b93b0\" },\n },\n {\n code: '\\n color: \"white\",',\n ui: { color: \"white\" },\n },\n {\n code: '\\n padding: \"12px 28px\",',\n ui: { padding: \"12px 28px\" },\n },\n {\n code: '\\n borderRadius: \"999px\",',\n ui: { borderRadius: \"999px\" },\n },\n {\n code: \"\\n fontWeight: 600,\",\n ui: { fontWeight: 600 },\n },\n {\n code: \"\\n }}\\n >\\n Ship it\\n </button>\\n );\\n}\",\n ui: { label: \"Ship it\" },\n },\n];\n\nconst CHARS_PER_FRAME = 1.6;\nconst DWELL_FRAMES = 5;\nconst INITIAL_OFFSET = 8;\n\ninterface TimelineEntry extends CodeEvent {\n start: number;\n end: number;\n}\n\nconst TIMELINE: TimelineEntry[] = (() => {\n let cursor = INITIAL_OFFSET;\n return EVENTS.map((ev) => {\n const start = cursor;\n const end = start + Math.ceil(ev.code.length / CHARS_PER_FRAME);\n cursor = end + DWELL_FRAMES;\n return { ...ev, start, end };\n });\n})();\nconst TIMELINE_END = TIMELINE[TIMELINE.length - 1].end;\n\nfunction highlightLine(line: string, accentColor: string) {\n // very simple tokenizer: keywords, strings, props\n const tokens: { text: string; color: string }[] = [];\n const regex =\n /(\\bexport\\b|\\bfunction\\b|\\breturn\\b)|(\"[^\"]*\")|(\\b[a-zA-Z_][a-zA-Z0-9_]*)(?=:)|(\\{|\\}|\\(|\\)|<|>|\\/)|([0-9]+)/g;\n let lastIndex = 0;\n let m: RegExpExecArray | null = regex.exec(line);\n while (m !== null) {\n if (m.index > lastIndex) {\n tokens.push({\n text: line.slice(lastIndex, m.index),\n color: palette.SYN_TEXT,\n });\n }\n if (m[1]) tokens.push({ text: m[1], color: palette.SYN_KEYWORD });\n else if (m[2]) tokens.push({ text: m[2], color: palette.SYN_STRING });\n else if (m[3]) tokens.push({ text: m[3], color: accentColor });\n else if (m[4]) tokens.push({ text: m[4], color: palette.SYN_COMMENT });\n else if (m[5]) tokens.push({ text: m[5], color: palette.SYN_NUMBER });\n lastIndex = regex.lastIndex;\n m = regex.exec(line);\n }\n if (lastIndex < line.length) {\n tokens.push({ text: line.slice(lastIndex), color: palette.SYN_TEXT });\n }\n return tokens;\n}\n\nexport function LiveCodeCompilation({\n accentColor = \"#7b93b0\",\n speed = 1,\n className,\n}: LiveCodeCompilationProps) {\n const frame = useCurrentFrame() * speed;\n\n // Build the visible code character-by-character from the auto-staggered\n // timeline. UI state only flips once a fragment is fully typed.\n let visibleCode = \"\";\n const ui: UIState = {};\n for (const t of TIMELINE) {\n if (frame < t.start) break;\n const elapsed = frame - t.start;\n const charsTyped = Math.min(\n t.code.length,\n Math.floor(elapsed * CHARS_PER_FRAME),\n );\n visibleCode += t.code.slice(0, charsTyped);\n if (frame >= t.end) Object.assign(ui, t.ui);\n }\n\n const lines = visibleCode.split(\"\\n\");\n const buttonLabel = ui.label ?? \"Button\";\n\n // Blinking caret while typing is still in progress.\n const cursorVisible =\n frame < TIMELINE_END && Math.floor(frame / 12) % 2 === 0;\n const lastLineIndex = lines.length - 1;\n\n return (\n <div\n className={className}\n style={{\n position: \"absolute\",\n inset: 0,\n background: palette.BG,\n overflow: \"hidden\",\n fontFamily: FONT_FAMILY,\n display: \"flex\",\n }}\n >\n {/* subtle backdrop gradient */}\n <div\n style={{\n position: \"absolute\",\n inset: 0,\n background:\n `radial-gradient(ellipse at 20% 30%, ${palette.BLUE}14, transparent 60%), radial-gradient(ellipse at 80% 70%, ${palette.VIOLET}0f, transparent 60%)`,\n }}\n />\n\n {/* LEFT: Glass code window */}\n <div\n style={{\n flex: 1,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n padding: 48,\n position: \"relative\",\n }}\n >\n <div\n style={{\n width: \"100%\",\n maxWidth: 560,\n position: \"relative\",\n borderRadius: 14,\n padding: 1,\n background:\n \"linear-gradient(180deg, rgba(255,255,255,0.18) 0%, rgba(255,255,255,0.02) 50%, rgba(255,255,255,0.06) 100%)\",\n }}\n >\n <div\n style={{\n borderRadius: 13,\n background: \"rgba(12,12,14,0.85)\",\n backdropFilter: \"blur(20px)\",\n overflow: \"hidden\",\n }}\n >\n {/* Title bar */}\n <div\n style={{\n height: 38,\n display: \"flex\",\n alignItems: \"center\",\n padding: \"0 16px\",\n borderBottom: \"1px solid rgba(255,255,255,0.06)\",\n gap: 8,\n }}\n >\n <div\n style={{\n width: 11,\n height: 11,\n borderRadius: 6,\n background: \"#ff5f57\",\n opacity: 0.6,\n }}\n />\n <div\n style={{\n width: 11,\n height: 11,\n borderRadius: 6,\n background: \"#febc2e\",\n opacity: 0.6,\n }}\n />\n <div\n style={{\n width: 11,\n height: 11,\n borderRadius: 6,\n background: \"#28c840\",\n opacity: 0.6,\n }}\n />\n <div\n style={{\n marginLeft: 12,\n fontSize: 12,\n color: \"rgba(255,255,255,0.45)\",\n fontFamily: MONO_FAMILY,\n }}\n >\n Button.tsx\n </div>\n </div>\n {/* Code body */}\n <div\n style={{\n padding: \"20px 22px\",\n fontFamily: MONO_FAMILY,\n fontSize: 14,\n lineHeight: 1.65,\n color: palette.SYN_TEXT,\n minHeight: 360,\n }}\n >\n {lines.map((line, i) => {\n const tokens = highlightLine(line, accentColor);\n const isLast = i === lastLineIndex;\n return (\n <div key={i} style={{ display: \"flex\", whiteSpace: \"pre\" }}>\n <span\n style={{\n width: 28,\n color: \"rgba(255,255,255,0.2)\",\n userSelect: \"none\",\n flexShrink: 0,\n }}\n >\n {i + 1}\n </span>\n <span>\n {tokens.length === 0 ? (\n <span> </span>\n ) : (\n tokens.map((t, j) => (\n <span key={j} style={{ color: t.color }}>\n {t.text}\n </span>\n ))\n )}\n {isLast && cursorVisible && (\n <span\n style={{\n display: \"inline-block\",\n width: 8,\n height: 16,\n marginLeft: 1,\n verticalAlign: \"text-bottom\",\n background: accentColor,\n }}\n />\n )}\n </span>\n </div>\n );\n })}\n </div>\n </div>\n </div>\n </div>\n\n {/* RIGHT: Live preview */}\n <div\n style={{\n flex: 1,\n position: \"relative\",\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n borderLeft: \"1px solid rgba(255,255,255,0.05)\",\n background:\n \"repeating-conic-gradient(rgba(255,255,255,0.018) 0deg 90deg, transparent 90deg 180deg) 0 0 / 28px 28px\",\n }}\n >\n {/* Preview label */}\n <div\n style={{\n position: \"absolute\",\n top: 24,\n left: 24,\n display: \"flex\",\n alignItems: \"center\",\n gap: 8,\n }}\n >\n <div\n style={{\n width: 8,\n height: 8,\n borderRadius: 4,\n background: palette.SUCCESS,\n }}\n />\n <div\n style={{\n fontSize: 11,\n fontFamily: MONO_FAMILY,\n color: \"rgba(255,255,255,0.5)\",\n textTransform: \"uppercase\",\n letterSpacing: \"0.08em\",\n }}\n >\n Preview · HMR\n </div>\n </div>\n\n {/* The button — all styles applied with no transition */}\n <button\n type=\"button\"\n style={{\n background: ui.background ?? \"rgba(255,255,255,0.06)\",\n color: ui.color ?? \"rgba(255,255,255,0.4)\",\n padding: ui.padding ?? \"10px 20px\",\n borderRadius: ui.borderRadius ?? \"4px\",\n fontWeight: ui.fontWeight ?? 400,\n fontSize: 18,\n fontFamily: FONT_FAMILY,\n border: ui.background\n ? \"none\"\n : \"1px dashed rgba(255,255,255,0.15)\",\n cursor: \"pointer\",\n transition: \"none\",\n }}\n >\n {buttonLabel}\n </button>\n </div>\n </div>\n );\n}\n","/**\n * Adapted from remocn (https://github.com/kapishdima/remocn) — MIT\n * Copyright (c) 2026 KapishDima\n *\n * Modifications:\n * - hermetic-ize fontFamily (use inherit / monospace, not Geist CSS vars)\n * - strip \"use client\" directive (re-added at shadcn-registry export time)\n */\n\nimport {\n AbsoluteFill,\n Easing,\n interpolate,\n random,\n Sequence,\n spring,\n useCurrentFrame,\n useVideoConfig,\n} from \"remotion\";\nimport * as palette from \"../../lib/palette\";\n\nexport interface ProductLaunchTrailerProps {\n logoLabel?: string;\n productName?: string;\n versionLabel?: string;\n accentPeach?: string;\n accentLavender?: string;\n accentMint?: string;\n background?: string;\n speed?: number;\n className?: string;\n}\n\nconst FONT_FAMILY =\n \"inherit\";\nconst MONO_FAMILY =\n \"monospace\";\n\n// Soft \"Tactile\" easing — used for every camera move and reveal.\nconst SOFT = Easing.bezier(0.16, 1, 0.3, 1);\n\n// Sequence anchors (frames). All later math is derived from these so the\n// trailer is easy to retime in one place.\nconst T = {\n pulseStart: 0,\n pulseEnd: 50,\n zoomStart: 38,\n zoomEnd: 78,\n shellStart: 70,\n flyStart: 110,\n flyEnd: 200,\n outroStart: 190,\n outroEnd: 240,\n};\n\nexport function ProductLaunchTrailer({\n logoLabel = \"R\",\n productName = \"Remocn\",\n versionLabel = \"v1.0 is live\",\n accentPeach = palette.ACCENT_SOFT,\n accentLavender = palette.VIOLET,\n accentMint = palette.SUCCESS,\n background = palette.BG,\n speed = 1,\n className,\n}: ProductLaunchTrailerProps) {\n return (\n <AbsoluteFill className={className} style={{ background }}>\n {/* TODO(audio): TransitionWhoosh @ frame ~38, SuccessChime @ frame ~200 */}\n\n <Sequence from={T.pulseStart} durationInFrames={T.zoomEnd - T.pulseStart}>\n <PulseLogo\n label={logoLabel}\n name={productName}\n accentLavender={accentLavender}\n background={background}\n speed={speed}\n />\n </Sequence>\n\n <Sequence from={T.shellStart} durationInFrames={T.outroEnd - T.shellStart}>\n <AppShellFlyover\n accentPeach={accentPeach}\n accentLavender={accentLavender}\n accentMint={accentMint}\n background={background}\n speed={speed}\n flyStartLocal={T.flyStart - T.shellStart}\n flyEndLocal={T.flyEnd - T.shellStart}\n outroStartLocal={T.outroStart - T.shellStart}\n />\n </Sequence>\n\n <Sequence\n from={T.outroStart}\n durationInFrames={T.outroEnd - T.outroStart + 1}\n >\n <Outro\n versionLabel={versionLabel}\n accentMint={accentMint}\n accentPeach={accentPeach}\n accentLavender={accentLavender}\n speed={speed}\n />\n </Sequence>\n </AbsoluteFill>\n );\n}\n\n/* -------------------------------------------------------------------------- */\n/* Phase 1 */\n/* -------------------------------------------------------------------------- */\n\nfunction PulseLogo({\n label,\n name,\n accentLavender,\n background,\n speed,\n}: {\n label: string;\n name: string;\n accentLavender: string;\n background: string;\n speed: number;\n}) {\n const frame = useCurrentFrame() * speed;\n const localDuration = T.zoomEnd - T.pulseStart;\n\n // Soft pulse — sin wave on a slow period, modulating both glow and scale.\n const pulse = (Math.sin(frame / 6) + 1) / 2; // 0..1\n\n // After pulseEnd we hand off to the zoom transition: scale up + fade out.\n const zoomLocal = Math.max(0, frame - (T.zoomStart - T.pulseStart));\n const zoomDuration = T.zoomEnd - T.zoomStart;\n const zoom = interpolate(zoomLocal, [0, zoomDuration], [1, 14], {\n extrapolateLeft: \"clamp\",\n extrapolateRight: \"clamp\",\n easing: Easing.bezier(0.7, 0, 0.84, 0),\n });\n const fade = interpolate(zoomLocal, [zoomDuration * 0.5, zoomDuration], [1, 0], {\n extrapolateLeft: \"clamp\",\n extrapolateRight: \"clamp\",\n });\n\n const baseScale = 0.96 + pulse * 0.04;\n const glowAlpha = 0.35 + pulse * 0.4;\n\n const labelOpacity = interpolate(frame, [4, 18], [0, 1], {\n extrapolateLeft: \"clamp\",\n extrapolateRight: \"clamp\",\n });\n\n return (\n <AbsoluteFill\n style={{\n // Exposure lift — the scene graded ~1.5 stops under launch-video norm.\n filter: 'brightness(1.28) contrast(1.03)',\n background,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n }}\n >\n <div\n style={{\n transform: `scale(${zoom * baseScale})`,\n opacity: fade,\n willChange: \"transform, opacity\",\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"center\",\n gap: 28,\n }}\n >\n {/* Logo squircle */}\n <div\n style={{\n width: 200,\n height: 200,\n borderRadius: 56,\n background:\n \"linear-gradient(160deg, rgba(255,255,255,0.10) 0%, rgba(255,255,255,0.02) 100%)\",\n border: `1px solid ${accentLavender}55`,\n boxShadow: `0 0 ${60 + pulse * 80}px ${accentLavender}${toHex(\n glowAlpha,\n )}, inset 0 1px 0 rgba(255,255,255,0.12)`,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n color: \"white\",\n fontFamily: FONT_FAMILY,\n fontSize: 112,\n fontWeight: 700,\n letterSpacing: \"-0.06em\",\n }}\n >\n {label}\n </div>\n\n {/* Product name */}\n <div\n style={{\n opacity: labelOpacity,\n color: \"rgba(255,255,255,0.92)\",\n fontFamily: FONT_FAMILY,\n fontSize: 28,\n fontWeight: 500,\n letterSpacing: \"0.02em\",\n }}\n >\n {name}\n </div>\n </div>\n {/* swallow lint: localDuration kept for reference */}\n <span style={{ display: \"none\" }}>{localDuration}</span>\n </AbsoluteFill>\n );\n}\n\n/* -------------------------------------------------------------------------- */\n/* Phase 2 */\n/* -------------------------------------------------------------------------- */\n\nfunction AppShellFlyover({\n accentPeach,\n accentLavender,\n accentMint,\n background,\n speed,\n flyStartLocal,\n flyEndLocal,\n outroStartLocal,\n}: {\n accentPeach: string;\n accentLavender: string;\n accentMint: string;\n background: string;\n speed: number;\n flyStartLocal: number;\n flyEndLocal: number;\n outroStartLocal: number;\n}) {\n const frame = useCurrentFrame() * speed;\n\n // Shell fade-in — comes in right after the zoom punches through.\n const enter = interpolate(frame, [0, 14], [0, 1], {\n extrapolateLeft: \"clamp\",\n extrapolateRight: \"clamp\",\n easing: SOFT,\n });\n\n // 3D camera fly-over: rx, ry, tz, scale all interpolated with the soft bezier.\n const flyT = interpolate(frame, [flyStartLocal, flyEndLocal], [0, 1], {\n extrapolateLeft: \"clamp\",\n extrapolateRight: \"clamp\",\n easing: SOFT,\n });\n // Outro pull-back blends the camera away.\n const outroT = interpolate(\n frame,\n [outroStartLocal, outroStartLocal + 30],\n [0, 1],\n {\n extrapolateLeft: \"clamp\",\n extrapolateRight: \"clamp\",\n easing: SOFT,\n },\n );\n\n const rx = interpolate(flyT, [0, 1], [0, -8]) * (1 - outroT);\n const ry = interpolate(flyT, [0, 1], [-6, 6]) * (1 - outroT);\n const tz =\n interpolate(flyT, [0, 1], [-220, 80]) * (1 - outroT) +\n outroT * -360;\n const scaleBoost =\n interpolate(flyT, [0, 1], [0.92, 1.04]) * (1 - outroT) + outroT * 0.84;\n\n // Drop-shadow blur grows when the camera hovers above the cards (tz > 0).\n const shadowBlur = Math.max(20, 28 + tz * 0.4);\n const shadowOpacity = 0.35 + Math.max(0, tz / 180) * 0.35;\n\n return (\n <AbsoluteFill\n style={{\n // Exposure lift — the scene graded ~1.5 stops under launch-video norm.\n filter: 'brightness(1.28) contrast(1.03)',\n background,\n opacity: enter,\n perspective: 2000,\n perspectiveOrigin: \"50% 45%\",\n }}\n >\n <div\n style={{\n position: \"absolute\",\n inset: 0,\n transformStyle: \"preserve-3d\",\n transform: `rotateX(${rx}deg) rotateY(${ry}deg) translateZ(${tz}px) scale(${scaleBoost})`,\n willChange: \"transform\",\n }}\n >\n {/* Faint border to suggest the app frame */}\n <div\n style={{\n position: \"absolute\",\n inset: 40,\n borderRadius: 24,\n border: `1px solid ${accentLavender}1f`,\n background:\n \"linear-gradient(180deg, rgba(255,255,255,0.02) 0%, rgba(255,255,255,0) 100%)\",\n }}\n />\n\n {/* Glass code block on the left */}\n <div\n style={{\n position: \"absolute\",\n left: 80,\n top: 110,\n width: 520,\n height: 500,\n transform: \"translateZ(20px)\",\n filter: `drop-shadow(0 22px ${shadowBlur}px ${accentLavender}${toHex(\n shadowOpacity,\n )})`,\n }}\n >\n <FauxCodeBlock accentLavender={accentLavender} accentMint={accentMint} />\n </div>\n\n {/* Bento grid on the right */}\n <div\n style={{\n position: \"absolute\",\n right: 80,\n top: 110,\n width: 540,\n height: 500,\n transform: \"translateZ(40px)\",\n filter: `drop-shadow(0 22px ${shadowBlur}px ${accentPeach}${toHex(\n shadowOpacity,\n )})`,\n }}\n >\n <FauxBentoGrid\n accentPeach={accentPeach}\n accentLavender={accentLavender}\n accentMint={accentMint}\n speed={speed}\n />\n </div>\n </div>\n </AbsoluteFill>\n );\n}\n\nfunction FauxCodeBlock({\n accentLavender,\n accentMint,\n}: {\n accentLavender: string;\n accentMint: string;\n}) {\n const frame = useCurrentFrame();\n const lines = [\n { t: \"import { Trailer } from 'remocn'\", c: palette.SYN_KEYWORD },\n { t: \"\", c: \"\" },\n { t: \"export const Scene = () => (\", c: palette.SYN_TEXT },\n { t: \" <Trailer\", c: palette.SYN_TEXT },\n { t: ` label=\"v1.0\"`, c: palette.SYN_STRING },\n { t: ` accent=\"lavender\"`, c: palette.SYN_NUMBER },\n { t: \" />\", c: palette.SYN_TEXT },\n { t: \")\", c: palette.SYN_TEXT },\n ];\n\n return (\n <div\n style={{\n position: \"absolute\",\n inset: 0,\n borderRadius: 20,\n background: \"rgba(20,19,24,0.78)\",\n backdropFilter: \"blur(18px)\",\n WebkitBackdropFilter: \"blur(18px)\",\n border: `1px solid ${accentLavender}33`,\n overflow: \"hidden\",\n fontFamily: MONO_FAMILY,\n }}\n >\n {/* Title bar */}\n <div\n style={{\n height: 38,\n display: \"flex\",\n alignItems: \"center\",\n gap: 8,\n padding: \"0 16px\",\n borderBottom: \"1px solid rgba(255,255,255,0.06)\",\n }}\n >\n {[palette.ACCENT_SOFT, palette.WARNING, accentMint].map((c) => (\n <div\n key={c}\n style={{\n width: 10,\n height: 10,\n borderRadius: \"50%\",\n background: c,\n opacity: 0.85,\n }}\n />\n ))}\n <span\n style={{\n marginLeft: 12,\n color: \"rgba(255,255,255,0.45)\",\n fontSize: 12,\n }}\n >\n scene.tsx\n </span>\n </div>\n\n {/* Code lines, staggered in */}\n <div style={{ padding: \"20px 22px\", display: \"flex\", flexDirection: \"column\", gap: 6 }}>\n {lines.map((line, i) => {\n const local = frame - 14 - i * 5;\n const o = interpolate(local, [0, 10], [0, 1], {\n extrapolateLeft: \"clamp\",\n extrapolateRight: \"clamp\",\n });\n const x = interpolate(local, [0, 10], [12, 0], {\n extrapolateLeft: \"clamp\",\n extrapolateRight: \"clamp\",\n });\n return (\n <div\n key={i}\n style={{\n display: \"flex\",\n gap: 14,\n opacity: o,\n transform: `translateX(${x}px)`,\n fontSize: 15,\n lineHeight: \"22px\",\n }}\n >\n <span style={{ color: palette.BORDER_STRONG, width: 18, textAlign: \"right\" }}>\n {i + 1}\n </span>\n <span style={{ color: line.c || palette.SYN_TEXT, whiteSpace: \"pre\" }}>\n {line.t || \" \"}\n </span>\n </div>\n );\n })}\n </div>\n </div>\n );\n}\n\nfunction FauxBentoGrid({\n accentPeach,\n accentLavender,\n accentMint,\n speed,\n}: {\n accentPeach: string;\n accentLavender: string;\n accentMint: string;\n speed: number;\n}) {\n const frame = useCurrentFrame() * speed;\n const { fps } = useVideoConfig();\n\n const cards: Array<{ title: string; body: string; tint: string; span: 1 | 2 }> = [\n { title: \"Animations\", body: \"Spring-tuned\", tint: accentLavender, span: 2 },\n { title: \"Transitions\", body: \"Cinematic\", tint: accentPeach, span: 1 },\n { title: \"Backgrounds\", body: \"Volumetric\", tint: accentMint, span: 1 },\n { title: \"Compositions\", body: \"Production-ready\", tint: accentLavender, span: 2 },\n ];\n\n return (\n <div\n style={{\n position: \"absolute\",\n inset: 0,\n display: \"grid\",\n gridTemplateColumns: \"1fr 1fr\",\n gap: 16,\n }}\n >\n {cards.map((c, i) => {\n const progress = spring({\n frame: frame - 30 - i * 8,\n fps,\n config: { damping: 14, stiffness: 110, mass: 0.7 },\n durationInFrames: 28,\n });\n return (\n <div\n key={c.title}\n style={{\n gridColumn: c.span === 2 ? \"span 2\" : \"span 1\",\n minHeight: 110,\n padding: 22,\n borderRadius: 18,\n background:\n \"linear-gradient(160deg, rgba(255,255,255,0.06) 0%, rgba(255,255,255,0.02) 100%)\",\n border: `1px solid ${c.tint}33`,\n opacity: progress,\n transform: `translateY(${(1 - progress) * 18}px) scale(${\n 0.92 + progress * 0.08\n })`,\n transformOrigin: \"center\",\n willChange: \"transform, opacity\",\n display: \"flex\",\n flexDirection: \"column\",\n justifyContent: \"flex-end\",\n }}\n >\n <div\n style={{\n color: palette.TEXT_HI,\n fontFamily: FONT_FAMILY,\n fontSize: 22,\n fontWeight: 600,\n letterSpacing: \"-0.02em\",\n }}\n >\n {c.title}\n </div>\n <div\n style={{\n color: `${c.tint}cc`,\n fontFamily: FONT_FAMILY,\n fontSize: 13,\n marginTop: 2,\n }}\n >\n {c.body}\n </div>\n </div>\n );\n })}\n </div>\n );\n}\n\n/* -------------------------------------------------------------------------- */\n/* Phase 3 */\n/* -------------------------------------------------------------------------- */\n\nfunction Outro({\n versionLabel,\n accentMint,\n accentPeach,\n accentLavender,\n speed,\n}: {\n versionLabel: string;\n accentMint: string;\n accentPeach: string;\n accentLavender: string;\n speed: number;\n}) {\n const frame = useCurrentFrame() * speed;\n const { fps } = useVideoConfig();\n\n // Heading drops in with a soft spring.\n const drop = spring({\n frame: frame - 6,\n fps,\n config: { damping: 14, stiffness: 110, mass: 0.7 },\n durationInFrames: 28,\n });\n const headingY = interpolate(drop, [0, 1], [-40, 0]);\n const headingOpacity = interpolate(drop, [0, 1], [0, 1]);\n\n // Confetti — lightweight inline burst (no SuccessConfetti import to avoid\n // its full-frame background).\n const particles = Array.from({ length: 70 }, (_, i) => {\n const angle = random(`pl:${i}:a`) * Math.PI * 2;\n const v = 9 + random(`pl:${i}:v`) * 9;\n const sz = 5 + random(`pl:${i}:s`) * 7;\n const f = Math.max(0, frame - 14 - Math.floor(random(`pl:${i}:d`) * 6));\n const cx = 640 + Math.cos(angle) * v * f;\n const cy = 280 + Math.sin(angle) * v * f + 0.4 * f * f;\n const colors = [accentMint, accentPeach, accentLavender, palette.WARNING];\n const color = colors[Math.floor(random(`pl:${i}:c`) * colors.length)];\n const opacity = interpolate(f, [0, 4, 38, 50], [0, 1, 1, 0], {\n extrapolateLeft: \"clamp\",\n extrapolateRight: \"clamp\",\n });\n return { cx, cy, sz, color, opacity, key: i };\n });\n\n return (\n <AbsoluteFill style={{ pointerEvents: \"none\" }}>\n {/* Confetti layer */}\n <svg\n width={1280}\n height={720}\n viewBox=\"0 0 1280 720\"\n style={{ position: \"absolute\", inset: 0 }}\n >\n {particles.map((p) => (\n <rect\n key={p.key}\n x={p.cx - p.sz / 2}\n y={p.cy - p.sz / 2}\n width={p.sz}\n height={p.sz * 0.55}\n rx={1}\n fill={p.color}\n opacity={p.opacity}\n />\n ))}\n </svg>\n\n {/* Heading */}\n <div\n style={{\n position: \"absolute\",\n left: 0,\n right: 0,\n top: 240,\n textAlign: \"center\",\n transform: `translateY(${headingY}px)`,\n opacity: headingOpacity,\n willChange: \"transform, opacity\",\n }}\n >\n <div\n style={{\n fontFamily: FONT_FAMILY,\n fontSize: 96,\n fontWeight: 700,\n letterSpacing: \"-0.04em\",\n color: palette.TEXT_HI,\n }}\n >\n {versionLabel}\n </div>\n </div>\n </AbsoluteFill>\n );\n}\n\n/* -------------------------------------------------------------------------- */\n/* Helpers */\n/* -------------------------------------------------------------------------- */\n\nfunction toHex(alpha: number) {\n const clamped = Math.max(0, Math.min(1, alpha));\n return Math.round(clamped * 255)\n .toString(16)\n .padStart(2, \"0\");\n}\n","/**\n * Adapted from remocn (https://github.com/kapishdima/remocn) — MIT\n * Copyright (c) 2026 KapishDima\n *\n * Modifications:\n * - hermetic-ize fontFamily (use inherit / monospace, not Geist CSS vars)\n * - strip \"use client\" directive (re-added at shadcn-registry export time)\n */\n\nimport { interpolate, spring, useCurrentFrame, useVideoConfig } from \"remotion\";\nimport * as palette from \"../../lib/palette\";\n\nexport interface HeroDeviceAssembleProps {\n assembleStart?: number;\n device?: \"laptop\" | \"phone\";\n accentColor?: string;\n speed?: number;\n className?: string;\n}\n\nconst FONT_FAMILY =\n \"inherit\";\n\nfunction MockUI({ accentColor }: { accentColor: string }) {\n return (\n <div\n style={{\n position: \"absolute\",\n inset: 0,\n display: \"flex\",\n flexDirection: \"column\",\n background: palette.BG,\n fontFamily: FONT_FAMILY,\n color: \"white\",\n overflow: \"hidden\",\n }}\n >\n {/* Title bar */}\n <div\n style={{\n height: \"10%\",\n background: palette.SURFACE,\n borderBottom: \"1px solid rgba(255,255,255,0.06)\",\n display: \"flex\",\n alignItems: \"center\",\n padding: \"0 16px\",\n gap: 8,\n }}\n >\n <div\n style={{\n width: 10,\n height: 10,\n borderRadius: \"50%\",\n background: \"rgba(255,255,255,0.18)\",\n }}\n />\n <div\n style={{\n width: 10,\n height: 10,\n borderRadius: \"50%\",\n background: \"rgba(255,255,255,0.18)\",\n }}\n />\n <div\n style={{\n width: 10,\n height: 10,\n borderRadius: \"50%\",\n background: \"rgba(255,255,255,0.18)\",\n }}\n />\n </div>\n <div style={{ flex: 1, display: \"flex\" }}>\n {/* Sidebar */}\n <div\n style={{\n width: \"22%\",\n background: palette.BG,\n borderRight: \"1px solid rgba(255,255,255,0.05)\",\n padding: 16,\n display: \"flex\",\n flexDirection: \"column\",\n gap: 10,\n }}\n >\n <div\n style={{\n height: 12,\n borderRadius: 4,\n background: accentColor,\n opacity: 0.85,\n width: \"70%\",\n }}\n />\n <div\n style={{\n height: 10,\n borderRadius: 4,\n background: \"rgba(255,255,255,0.1)\",\n width: \"85%\",\n }}\n />\n <div\n style={{\n height: 10,\n borderRadius: 4,\n background: \"rgba(255,255,255,0.08)\",\n width: \"60%\",\n }}\n />\n <div\n style={{\n height: 10,\n borderRadius: 4,\n background: \"rgba(255,255,255,0.08)\",\n width: \"75%\",\n }}\n />\n </div>\n {/* Content */}\n <div\n style={{\n flex: 1,\n padding: 24,\n display: \"flex\",\n flexDirection: \"column\",\n gap: 16,\n }}\n >\n <div\n style={{\n height: 18,\n width: \"40%\",\n background: \"rgba(255,255,255,0.85)\",\n borderRadius: 4,\n }}\n />\n <div\n style={{\n height: 10,\n width: \"65%\",\n background: \"rgba(255,255,255,0.18)\",\n borderRadius: 4,\n }}\n />\n <div\n style={{\n display: \"grid\",\n gridTemplateColumns: \"1fr 1fr 1fr\",\n gap: 12,\n marginTop: 12,\n }}\n >\n <div\n style={{\n height: 90,\n borderRadius: 8,\n background:\n \"linear-gradient(180deg, rgba(255,255,255,0.06), rgba(255,255,255,0.02))\",\n border: \"1px solid rgba(255,255,255,0.06)\",\n }}\n />\n <div\n style={{\n height: 90,\n borderRadius: 8,\n background: `linear-gradient(180deg, ${accentColor}33, ${accentColor}11)`,\n border: `1px solid ${accentColor}55`,\n }}\n />\n <div\n style={{\n height: 90,\n borderRadius: 8,\n background:\n \"linear-gradient(180deg, rgba(255,255,255,0.06), rgba(255,255,255,0.02))\",\n border: \"1px solid rgba(255,255,255,0.06)\",\n }}\n />\n </div>\n <div\n style={{\n flex: 1,\n borderRadius: 8,\n background:\n \"linear-gradient(180deg, rgba(255,255,255,0.04), rgba(255,255,255,0.01))\",\n border: \"1px solid rgba(255,255,255,0.06)\",\n }}\n />\n </div>\n </div>\n </div>\n );\n}\n\nexport function HeroDeviceAssemble({\n assembleStart = 0,\n device = \"laptop\",\n accentColor = palette.SUCCESS,\n speed = 1,\n className,\n}: HeroDeviceAssembleProps) {\n const frame = useCurrentFrame() * speed;\n const { fps } = useVideoConfig();\n\n const assemble = spring({\n frame: frame - assembleStart,\n fps,\n config: { mass: 1.4, damping: 12, stiffness: 90 },\n durationInFrames: 60,\n });\n\n // Layer translateZ values from far -> 0\n const lidZ = interpolate(assemble, [0, 1], [1000, 0]);\n const baseZ = interpolate(assemble, [0, 1], [-800, 0]);\n const bezelZ = interpolate(assemble, [0, 1], [600, 0]);\n const screenZ = interpolate(assemble, [0, 1], [300, 0]);\n\n // Parent rotation easing to 0\n const rotX = interpolate(assemble, [0, 1], [-22, 0]);\n const rotY = interpolate(assemble, [0, 1], [28, 0]);\n\n // Layer opacity fade in slightly during assembly\n const layerOpacity = interpolate(assemble, [0, 0.4], [0, 1], {\n extrapolateLeft: \"clamp\",\n extrapolateRight: \"clamp\",\n });\n\n // Settle frame: after assemble ~ 0.95\n const settleFrame = assembleStart + 45;\n const screenWake = interpolate(\n frame,\n [settleFrame, settleFrame + 18],\n [0, 1],\n { extrapolateLeft: \"clamp\", extrapolateRight: \"clamp\" },\n );\n\n // Shimmer sweep across screen (after wake)\n const shimmerProgress = interpolate(\n frame,\n [settleFrame + 6, settleFrame + 30],\n [-1, 2],\n { extrapolateLeft: \"clamp\", extrapolateRight: \"clamp\" },\n );\n\n const isPhone = device === \"phone\";\n\n // Device dimensions\n const deviceW = isPhone ? 320 : 760;\n const deviceH = isPhone ? 640 : 470;\n const screenInset = isPhone ? 12 : 18;\n const bezelRadius = isPhone ? 36 : 14;\n\n return (\n <div\n className={className}\n style={{\n position: \"absolute\",\n inset: 0,\n overflow: \"hidden\",\n background:\n `radial-gradient(ellipse at center, ${palette.SURFACE} 0%, ${palette.BG_DEEP} 70%)`,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n perspective: 2000,\n fontFamily: FONT_FAMILY,\n }}\n >\n <div\n style={{\n position: \"relative\",\n width: deviceW,\n height: deviceH,\n transformStyle: \"preserve-3d\",\n transform: `rotateX(${rotX}deg) rotateY(${rotY}deg)`,\n willChange: \"transform\",\n }}\n >\n {/* Back lid (laptop only — for phone, acts as the back shell) */}\n <div\n style={{\n position: \"absolute\",\n inset: 0,\n transform: `translateZ(${lidZ - 8}px)`,\n background: `linear-gradient(180deg, ${palette.SURFACE_HI} 0%, ${palette.BG} 100%)`,\n borderRadius: bezelRadius + 4,\n border: \"1px solid rgba(255,255,255,0.08)\",\n opacity: layerOpacity,\n }}\n />\n\n {/* Keyboard / chassis base — laptop only */}\n {!isPhone && (\n <div\n style={{\n position: \"absolute\",\n left: -40,\n right: -40,\n bottom: -28,\n height: 28,\n transform: `translateZ(${baseZ}px) rotateX(78deg)`,\n transformOrigin: \"top center\",\n background: `linear-gradient(180deg, ${palette.SURFACE_HI} 0%, ${palette.BG} 100%)`,\n borderRadius: \"0 0 12px 12px\",\n border: \"1px solid rgba(255,255,255,0.06)\",\n opacity: layerOpacity,\n }}\n />\n )}\n\n {/* Bezel frame */}\n <div\n style={{\n position: \"absolute\",\n inset: 0,\n transform: `translateZ(${bezelZ}px)`,\n background: palette.BG_DEEP,\n borderRadius: bezelRadius,\n border: \"1px solid rgba(255,255,255,0.12)\",\n opacity: layerOpacity,\n }}\n />\n\n {/* UI screen */}\n <div\n style={{\n position: \"absolute\",\n inset: screenInset,\n transform: `translateZ(${screenZ}px)`,\n borderRadius: bezelRadius - 6,\n overflow: \"hidden\",\n background: \"black\",\n opacity: layerOpacity,\n }}\n >\n {/* Black panel during flight */}\n <div\n style={{\n position: \"absolute\",\n inset: 0,\n background: \"#000\",\n opacity: 1 - screenWake,\n }}\n />\n {/* UI fades in */}\n <div style={{ position: \"absolute\", inset: 0, opacity: screenWake }}>\n <MockUI accentColor={accentColor} />\n </div>\n {/* Shimmer sweep */}\n <div\n style={{\n position: \"absolute\",\n inset: 0,\n background: `linear-gradient(115deg, transparent 40%, rgba(255,255,255,0.18) 50%, transparent 60%)`,\n transform: `translateX(${shimmerProgress * 100}%)`,\n mixBlendMode: \"screen\",\n pointerEvents: \"none\",\n }}\n />\n </div>\n </div>\n </div>\n );\n}\n","/**\n * Adapted from remocn (https://github.com/kapishdima/remocn) — MIT\n * Copyright (c) 2026 KapishDima\n *\n * Modifications:\n * - hermetic-ize fontFamily (use inherit / monospace, not Geist CSS vars)\n * - strip \"use client\" directive (re-added at shadcn-registry export time)\n */\n\nimport { interpolate, spring, useCurrentFrame, useVideoConfig } from \"remotion\";\nimport * as palette from \"../../lib/palette\";\n\nexport interface PricingTierFocusProps {\n focusedTier?: 0 | 1 | 2 | \"0\" | \"1\" | \"2\";\n accentColor?: string;\n speed?: number;\n className?: string;\n}\n\nconst FONT_FAMILY =\n \"inherit\";\n\ninterface Tier {\n name: string;\n price: string;\n period: string;\n features: string[];\n cta: string;\n}\n\nconst TIERS: Tier[] = [\n {\n name: \"Free\",\n price: \"$0\",\n period: \"/mo\",\n features: [\"1 project\", \"Community support\", \"1 GB storage\"],\n cta: \"Get started\",\n },\n {\n name: \"Pro\",\n price: \"$24\",\n period: \"/mo\",\n features: [\n \"Unlimited projects\",\n \"Priority support\",\n \"100 GB storage\",\n \"Advanced analytics\",\n ],\n cta: \"Buy Pro\",\n },\n {\n name: \"Enterprise\",\n price: \"$99\",\n period: \"/mo\",\n features: [\"SSO & SAML\", \"Dedicated manager\", \"Unlimited storage\"],\n cta: \"Contact sales\",\n },\n];\n\nexport function PricingTierFocus({\n focusedTier = 1,\n accentColor = palette.SUCCESS,\n speed = 1,\n className,\n}: PricingTierFocusProps) {\n const frame = useCurrentFrame() * speed;\n const { fps } = useVideoConfig();\n\n const focusedIdx = Number(focusedTier);\n const focusStart = 30;\n\n const focusProgress = spring({\n frame: frame - focusStart,\n fps,\n config: { mass: 1, damping: 18, stiffness: 90 },\n durationInFrames: 50,\n });\n\n const focusScale = interpolate(focusProgress, [0, 1], [1, 1.05]);\n const focusLift = interpolate(focusProgress, [0, 1], [0, -20]);\n const sideBrightness = interpolate(focusProgress, [0, 1], [1, 0.4]);\n const sideBlur = interpolate(focusProgress, [0, 1], [0, 4]);\n const sideScale = interpolate(focusProgress, [0, 1], [1, 0.95]);\n\n // Shimmer on Pro CTA — runs around frame 90\n const shimmerStart = 90;\n const shimmerPos = interpolate(\n frame,\n [shimmerStart, shimmerStart + 40],\n [-150, 250],\n { extrapolateLeft: \"clamp\", extrapolateRight: \"clamp\" },\n );\n\n return (\n <div\n className={className}\n style={{\n position: \"absolute\",\n inset: 0,\n background: palette.BG,\n fontFamily: FONT_FAMILY,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n padding: 60,\n gap: 28,\n }}\n >\n {TIERS.map((tier, i) => {\n const isFocused = i === focusedIdx;\n const scale = isFocused ? focusScale : sideScale;\n const lift = isFocused ? focusLift : 0;\n const brightness = isFocused ? 1 : sideBrightness;\n const blurPx = isFocused ? 0 : sideBlur;\n const z = isFocused ? 10 : 1;\n\n return (\n <div\n key={tier.name}\n style={{\n position: \"relative\",\n flex: \"1 1 0\",\n maxWidth: 320,\n minHeight: 460,\n padding: 32,\n borderRadius: 20,\n background: `linear-gradient(180deg, ${palette.SURFACE} 0%, ${palette.BG} 100%)`,\n border: isFocused\n ? `1px solid ${accentColor}88`\n : `1px solid ${palette.BORDER}`,\n transform: `translateY(${lift}px) scale(${scale})`,\n filter: `brightness(${brightness}) blur(${blurPx}px)`,\n zIndex: z,\n display: \"flex\",\n flexDirection: \"column\",\n willChange: \"transform, filter\",\n }}\n >\n {isFocused && (\n <div\n style={{\n position: \"absolute\",\n top: 16,\n right: 16,\n padding: \"4px 10px\",\n borderRadius: 999,\n background: accentColor,\n color: palette.BG,\n fontSize: 11,\n fontWeight: 700,\n letterSpacing: \"0.04em\",\n textTransform: \"uppercase\",\n }}\n >\n Popular\n </div>\n )}\n <div\n style={{\n fontSize: 14,\n fontWeight: 600,\n color: \"rgba(255,255,255,0.6)\",\n letterSpacing: \"0.04em\",\n textTransform: \"uppercase\",\n }}\n >\n {tier.name}\n </div>\n <div\n style={{\n marginTop: 12,\n display: \"flex\",\n alignItems: \"baseline\",\n gap: 4,\n }}\n >\n <div\n style={{\n fontSize: 56,\n fontWeight: 700,\n color: palette.TEXT_HI,\n letterSpacing: \"-0.04em\",\n lineHeight: 1,\n }}\n >\n {tier.price}\n </div>\n <div\n style={{\n fontSize: 16,\n color: \"rgba(255,255,255,0.5)\",\n fontWeight: 500,\n }}\n >\n {tier.period}\n </div>\n </div>\n <div\n style={{\n marginTop: 24,\n display: \"flex\",\n flexDirection: \"column\",\n gap: 12,\n flex: 1,\n }}\n >\n {tier.features.map((f) => (\n <div\n key={f}\n style={{\n display: \"flex\",\n alignItems: \"center\",\n gap: 10,\n fontSize: 14,\n color: \"rgba(255,255,255,0.85)\",\n }}\n >\n <div\n style={{\n width: 16,\n height: 16,\n borderRadius: 999,\n background: `${accentColor}22`,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n color: accentColor,\n fontSize: 11,\n fontWeight: 700,\n flexShrink: 0,\n }}\n >\n ✓\n </div>\n {f}\n </div>\n ))}\n </div>\n <div\n style={{\n marginTop: 24,\n position: \"relative\",\n height: 44,\n borderRadius: 12,\n background: isFocused ? accentColor : \"rgba(255,255,255,0.08)\",\n color: isFocused ? palette.BG : palette.TEXT_HI,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n fontSize: 14,\n fontWeight: 600,\n overflow: \"hidden\",\n border: isFocused ? \"none\" : \"1px solid rgba(255,255,255,0.1)\",\n }}\n >\n {tier.cta}\n {isFocused && (\n <div\n style={{\n position: \"absolute\",\n top: 0,\n left: 0,\n bottom: 0,\n width: 80,\n transform: `translateX(${shimmerPos}px) skewX(-20deg)`,\n background:\n \"linear-gradient(90deg, transparent 0%, rgba(255,255,255,0.55) 50%, transparent 100%)\",\n pointerEvents: \"none\",\n }}\n />\n )}\n </div>\n </div>\n );\n })}\n </div>\n );\n}\n","/**\n * Adapted from remocn (https://github.com/kapishdima/remocn) — MIT\n * Copyright (c) 2026 KapishDima\n *\n * Modifications:\n * - hermetic-ize fontFamily (use inherit / monospace, not Geist CSS vars)\n * - strip \"use client\" directive (re-added at shadcn-registry export time)\n */\n\nimport type { ReactNode } from \"react\";\nimport {\n AbsoluteFill,\n Freeze,\n interpolate,\n Sequence,\n spring,\n useCurrentFrame,\n useVideoConfig,\n} from \"remotion\";\nimport { SCENES, LANDING_CODE_SHOWCASE_DURATION } from \"./timeline\";\nimport { DashboardPopulate } from \"../../ui-blocks/dashboard-populate\";\nimport { frostedGlassWipe } from \"../../transitions/frosted-glass-wipe\";\nimport { spatialPush } from \"../../transitions/spatial-push\";\nimport { TransitionSeries, linearTiming } from \"@remotion/transitions\";\nimport type { TransitionPresentation } from \"@remotion/transitions\";\n\n/** Local shim: mount a TransitionPresentation as a fixed-window from→to wipe\n * (the old component API these scenes were composed against). */\nfunction WipeWindow({\n presentation,\n duration,\n from,\n to,\n}: {\n presentation: TransitionPresentation<Record<string, unknown>>;\n duration: number;\n from: ReactNode;\n to: ReactNode;\n}) {\n return (\n <TransitionSeries>\n <TransitionSeries.Sequence durationInFrames={duration}>\n {from}\n </TransitionSeries.Sequence>\n <TransitionSeries.Transition\n presentation={presentation as never}\n timing={linearTiming({ durationInFrames: duration - 1 })}\n />\n <TransitionSeries.Sequence durationInFrames={duration}>\n {to}\n </TransitionSeries.Sequence>\n </TransitionSeries>\n );\n}\nimport { TerminalToBrowserDeploy } from \"../terminal-to-browser-deploy\";\nimport * as palette from \"../../lib/palette\";\n\nexport interface LandingCodeShowcaseProps {\n accentColor?: string;\n speed?: number;\n}\n\nconst FONT_FAMILY =\n \"inherit\";\nconst MONO_FAMILY =\n \"monospace\";\n\n/* -------------------------------------------------------------------------- */\n/* Tokens */\n/* -------------------------------------------------------------------------- */\n\nconst PEACH = palette.ACCENT_SOFT;\nconst LAVENDER = palette.VIOLET;\nconst MINT = palette.SUCCESS;\nconst STAGE_BG = palette.BG_DEEP;\nconst PANEL_BG = palette.BG;\n\n/* -------------------------------------------------------------------------- */\n/* Code timeline */\n/* -------------------------------------------------------------------------- */\n\ninterface CodeStep {\n /** Frame at which this fragment STARTS being typed */\n startFrame: number;\n /** Code fragment to append to the visible buffer */\n code: string;\n /** Token within the fragment that pulses lavender briefly when typed */\n highlight?: string;\n}\n\nconst HEADER = `import { BlurReveal, DashboardPopulate, MaskedSlideReveal,\n TerminalToBrowserDeploy, Transition } from \"@/components/remocn\";\n\nexport default function Scene() {\n return (\n <>\n`;\n\nconst FOOTER = ` </>\n );\n}`;\n\nconst STEPS: CodeStep[] = [\n {\n startFrame: 4,\n code: ` <BlurReveal text=\"Build faster.\" />\\n`,\n },\n {\n startFrame: SCENES.push1.start,\n code: ` <Transition type=\"spatial-push\" />\\n`,\n highlight: \"spatial-push\",\n },\n {\n startFrame: SCENES.dashboard.start,\n code: ` <DashboardPopulate data={metrics} />\\n`,\n },\n {\n startFrame: SCENES.glassWipe.start,\n code: ` <Transition type=\"glass-wipe\" />\\n`,\n highlight: \"glass-wipe\",\n },\n {\n startFrame: SCENES.maskedSlide.start,\n code: ` <MaskedSlideReveal text=\"Ship to production.\" />\\n`,\n },\n {\n startFrame: SCENES.push2.start,\n code: ` <Transition type=\"spatial-push\" direction=\"left\" />\\n`,\n highlight: \"spatial-push\",\n },\n {\n startFrame: SCENES.terminal.start,\n code: ` <TerminalToBrowserDeploy />\\n`,\n },\n];\n\nconst CHARS_PER_FRAME = 2.2;\n\ninterface BuiltStep extends CodeStep {\n endFrame: number;\n}\n\nconst BUILT_STEPS: BuiltStep[] = STEPS.map((s) => ({\n ...s,\n endFrame: s.startFrame + Math.ceil(s.code.length / CHARS_PER_FRAME),\n}));\n\n/* -------------------------------------------------------------------------- */\n/* Syntax highlight */\n/* -------------------------------------------------------------------------- */\n\ninterface Token {\n text: string;\n color: string;\n glow?: boolean;\n}\n\nfunction tokenizeLine(\n line: string,\n accentColor: string,\n highlightedToken: string | null,\n): Token[] {\n const tokens: Token[] = [];\n const regex =\n /(\\bimport\\b|\\bfrom\\b|\\bexport\\b|\\bdefault\\b|\\bfunction\\b|\\breturn\\b|\\bconst\\b)|(\"[^\"]*\")|(\\b[A-Z][a-zA-Z0-9_]*)|(\\b[a-zA-Z_][a-zA-Z0-9_]*)(?==)|(\\{|\\}|\\(|\\)|<|>|\\/|;)|([0-9]+)/g;\n let lastIndex = 0;\n let m: RegExpExecArray | null = regex.exec(line);\n while (m !== null) {\n if (m.index > lastIndex) {\n tokens.push({\n text: line.slice(lastIndex, m.index),\n color: palette.SYN_TEXT,\n });\n }\n if (m[1]) tokens.push({ text: m[1], color: LAVENDER });\n else if (m[2]) {\n // String literal — check if it matches the active highlight\n const inner = m[2].slice(1, -1);\n if (highlightedToken && inner === highlightedToken) {\n tokens.push({ text: m[2], color: LAVENDER, glow: true });\n } else {\n tokens.push({ text: m[2], color: MINT });\n }\n } else if (m[3]) tokens.push({ text: m[3], color: PEACH });\n else if (m[4]) tokens.push({ text: m[4], color: accentColor });\n else if (m[5]) tokens.push({ text: m[5], color: palette.SYN_COMMENT });\n else if (m[6]) tokens.push({ text: m[6], color: palette.SYN_NUMBER });\n lastIndex = regex.lastIndex;\n m = regex.exec(line);\n }\n if (lastIndex < line.length) {\n tokens.push({ text: line.slice(lastIndex), color: palette.SYN_TEXT });\n }\n return tokens;\n}\n\n/* -------------------------------------------------------------------------- */\n/* Code editor */\n/* -------------------------------------------------------------------------- */\n\nfunction CodeEditor({\n frame,\n accentColor,\n}: {\n frame: number;\n accentColor: string;\n}) {\n // Compose the visible code: header + per-step typed amounts + footer (only when fully typed)\n const dynamicChunks: string[] = [];\n let activeHighlight: string | null = null;\n\n for (const step of BUILT_STEPS) {\n if (frame < step.startFrame) break;\n const elapsed = frame - step.startFrame;\n const charsTyped = Math.min(\n step.code.length,\n Math.floor(elapsed * CHARS_PER_FRAME),\n );\n dynamicChunks.push(step.code.slice(0, charsTyped));\n\n // Lavender pulse: active for ~24 frames after fragment finishes typing\n if (step.highlight) {\n const sinceStart = frame - step.startFrame;\n if (sinceStart >= 0 && sinceStart < 60) {\n activeHighlight = step.highlight;\n }\n }\n }\n\n const allTyped = dynamicChunks.join(\"\");\n const lastStep = BUILT_STEPS[BUILT_STEPS.length - 1];\n const showFooter = frame > lastStep.endFrame + 4;\n const visibleCode = HEADER + allTyped + (showFooter ? FOOTER : \"\");\n const lines = visibleCode.split(\"\\n\");\n const lastLineIdx = lines.length - 1;\n const caretOn = Math.floor(frame / 12) % 2 === 0;\n\n return (\n <div\n style={{\n width: \"100%\",\n maxWidth: 540,\n position: \"relative\",\n borderRadius: 16,\n padding: 1,\n background:\n \"linear-gradient(180deg, rgba(255,255,255,0.18) 0%, rgba(255,255,255,0.02) 50%, rgba(255,255,255,0.06) 100%)\",\n }}\n >\n <div\n style={{\n borderRadius: 15,\n background: \"rgba(12,12,14,0.9)\",\n backdropFilter: \"blur(20px)\",\n overflow: \"hidden\",\n }}\n >\n {/* Title bar */}\n <div\n style={{\n height: 40,\n display: \"flex\",\n alignItems: \"center\",\n padding: \"0 16px\",\n borderBottom: \"1px solid rgba(255,255,255,0.06)\",\n gap: 8,\n }}\n >\n {[\"#ff5f57\", \"#febc2e\", \"#28c840\"].map((c) => (\n <div\n key={c}\n style={{\n width: 11,\n height: 11,\n borderRadius: 6,\n background: c,\n opacity: 0.65,\n }}\n />\n ))}\n <div\n style={{\n marginLeft: 12,\n fontSize: 12,\n color: \"rgba(255,255,255,0.5)\",\n fontFamily: MONO_FAMILY,\n }}\n >\n scene.tsx\n </div>\n </div>\n\n {/* Code body */}\n <div\n style={{\n padding: \"20px 22px\",\n fontFamily: MONO_FAMILY,\n fontSize: 12.5,\n lineHeight: 1.7,\n color: palette.SYN_TEXT,\n minHeight: 480,\n }}\n >\n {lines.map((line, i) => {\n const tokens = tokenizeLine(line, accentColor, activeHighlight);\n const isLast = i === lastLineIdx;\n return (\n <div\n // biome-ignore lint/suspicious/noArrayIndexKey: stable per frame\n key={i}\n style={{ display: \"flex\", whiteSpace: \"pre\" }}\n >\n <span\n style={{\n width: 26,\n color: \"rgba(255,255,255,0.18)\",\n userSelect: \"none\",\n flexShrink: 0,\n }}\n >\n {i + 1}\n </span>\n <span>\n {tokens.length === 0 ? (\n <span> </span>\n ) : (\n tokens.map((t, j) => (\n <span\n // biome-ignore lint/suspicious/noArrayIndexKey: stable per line\n key={j}\n style={{\n color: t.color,\n }}\n >\n {t.text}\n </span>\n ))\n )}\n {isLast && caretOn && (\n <span\n style={{\n display: \"inline-block\",\n width: 7,\n height: 14,\n marginLeft: 1,\n verticalAlign: \"text-bottom\",\n background: accentColor,\n }}\n />\n )}\n </span>\n </div>\n );\n })}\n </div>\n </div>\n </div>\n );\n}\n\n/* -------------------------------------------------------------------------- */\n/* Soft pastel scene wrappers */\n/* -------------------------------------------------------------------------- */\n\n/** Warm pastel canvas — the dark stage every scene sits on */\nfunction PastelStage({\n background = STAGE_BG,\n children,\n}: {\n background?: string;\n children: ReactNode;\n}) {\n return (\n <div\n style={{\n position: \"absolute\",\n inset: 0,\n background,\n overflow: \"hidden\",\n }}\n >\n <div\n style={{\n position: \"absolute\",\n inset: 0,\n background:\n \"radial-gradient(ellipse at 20% 30%, rgba(255,179,142,0.08), transparent 60%), radial-gradient(ellipse at 80% 70%, rgba(155,139,176,0.06), transparent 60%)\",\n }}\n />\n {children}\n </div>\n );\n}\n\n/* -------------------------------------------------------------------------- */\n/* Scene factories */\n/* -------------------------------------------------------------------------- */\n/*\n Note: BlurReveal and MaskedSlideReveal primitives bake in a `background:\n white` div. To keep the warm-dark stage we re-implement just the visual\n here (not a fork — both effects are simple text + filter). The orchestrator\n advertises the primitives in code; the rendered output is faithful to them.\n*/\n\nfunction BlurRevealScene() {\n const frame = useCurrentFrame();\n const opacity = interpolate(frame, [0, 50], [0, 1], {\n extrapolateRight: \"clamp\",\n });\n const blurAmount = interpolate(frame, [0, 50], [22, 0], {\n extrapolateRight: \"clamp\",\n });\n return (\n <div\n style={{\n position: \"absolute\",\n inset: 0,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n }}\n >\n <span\n style={{\n opacity,\n filter: `blur(${blurAmount}px)`,\n fontSize: 96,\n fontWeight: 600,\n color: PEACH,\n letterSpacing: \"-0.04em\",\n fontFamily: FONT_FAMILY,\n }}\n >\n Build faster.\n </span>\n </div>\n );\n}\n\nfunction DashboardScene() {\n return (\n <div style={{ position: \"absolute\", inset: 0 }}>\n <DashboardPopulate accentColor={PEACH} />\n </div>\n );\n}\n\nfunction MaskedSlideScene() {\n const frame = useCurrentFrame();\n const { fps } = useVideoConfig();\n const words = \"Ship to production.\".split(\" \");\n return (\n <div\n style={{\n position: \"absolute\",\n inset: 0,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n }}\n >\n <span\n style={{\n fontSize: 92,\n fontWeight: 700,\n color: MINT,\n letterSpacing: \"-0.03em\",\n fontFamily: FONT_FAMILY,\n }}\n >\n {words.map((word, i) => {\n const t = spring({\n frame: frame - i * 4,\n fps,\n config: { damping: 18, stiffness: 120 },\n });\n return (\n <span\n // biome-ignore lint/suspicious/noArrayIndexKey: stable word list\n key={i}\n style={{\n display: \"inline-block\",\n overflow: \"hidden\",\n verticalAlign: \"bottom\",\n lineHeight: 1.05,\n marginRight: \"0.25em\",\n }}\n >\n <span\n style={{\n display: \"inline-block\",\n transform: `translateY(${(1 - t) * 110}%)`,\n }}\n >\n {word}\n </span>\n </span>\n );\n })}\n </span>\n </div>\n );\n}\n\nfunction TerminalScene() {\n return (\n <div style={{ position: \"absolute\", inset: 0 }}>\n <TerminalToBrowserDeploy accentColor={MINT} siteUrl=\"remocn.dev\" />\n </div>\n );\n}\n\n/* -------------------------------------------------------------------------- */\n/* Right pane */\n/* -------------------------------------------------------------------------- */\n\nfunction RightPane() {\n return (\n <div\n style={{\n position: \"relative\",\n width: \"100%\",\n height: \"100%\",\n background: STAGE_BG,\n overflow: \"hidden\",\n borderRadius: 18,\n }}\n >\n {/* ── BASE LAYER: each scene runs in its own Sequence so its\n internal useCurrentFrame() starts at 0 within the window. ── */}\n\n <Sequence\n from={SCENES.blur.start}\n durationInFrames={SCENES.blur.duration + SCENES.push1.duration}\n >\n <PastelStage>\n <BlurRevealScene />\n </PastelStage>\n </Sequence>\n\n <Sequence\n from={SCENES.dashboard.start}\n durationInFrames={SCENES.dashboard.duration + SCENES.glassWipe.duration}\n >\n <PastelStage>\n <DashboardScene />\n </PastelStage>\n </Sequence>\n\n <Sequence\n from={SCENES.maskedSlide.start}\n durationInFrames={SCENES.maskedSlide.duration + SCENES.push2.duration}\n >\n <PastelStage>\n <MaskedSlideScene />\n </PastelStage>\n </Sequence>\n\n <Sequence\n from={SCENES.terminal.start}\n durationInFrames={SCENES.terminal.duration + SCENES.endHold}\n >\n <PastelStage>\n <TerminalScene />\n </PastelStage>\n </Sequence>\n\n {/* ── TRANSITION OVERLAYS: each one displays the previous scene's\n end-state (Freeze) while wiping in the next scene's start-state. ── */}\n\n <Sequence\n from={SCENES.push1.start}\n durationInFrames={SCENES.push1.duration}\n >\n <WipeWindow\n presentation={spatialPush({ direction: 'up' }) as never}\n duration={SCENES.push1.duration}\n from={\n <Freeze frame={SCENES.push1.start - SCENES.blur.start - 1}>\n <PastelStage>\n <BlurRevealScene />\n </PastelStage>\n </Freeze>\n }\n to={\n <Freeze frame={0}>\n <PastelStage>\n <DashboardScene />\n </PastelStage>\n </Freeze>\n }\n />\n </Sequence>\n\n <Sequence\n from={SCENES.glassWipe.start}\n durationInFrames={SCENES.glassWipe.duration}\n >\n <WipeWindow\n presentation={frostedGlassWipe({ glassBlur: 28 }) as never}\n duration={SCENES.glassWipe.duration}\n from={\n <Freeze frame={SCENES.dashboard.duration - 1}>\n <PastelStage>\n <DashboardScene />\n </PastelStage>\n </Freeze>\n }\n to={\n <Freeze frame={0}>\n <PastelStage>\n <MaskedSlideScene />\n </PastelStage>\n </Freeze>\n }\n />\n </Sequence>\n\n <Sequence\n from={SCENES.push2.start}\n durationInFrames={SCENES.push2.duration}\n >\n <WipeWindow\n presentation={spatialPush({ direction: 'left' }) as never}\n duration={SCENES.push2.duration}\n from={\n <Freeze frame={SCENES.maskedSlide.duration - 1}>\n <PastelStage>\n <MaskedSlideScene />\n </PastelStage>\n </Freeze>\n }\n to={\n <Freeze frame={0}>\n <PastelStage>\n <TerminalScene />\n </PastelStage>\n </Freeze>\n }\n />\n </Sequence>\n </div>\n );\n}\n\n/* -------------------------------------------------------------------------- */\n/* Main */\n/* -------------------------------------------------------------------------- */\n\nexport function LandingCodeShowcase({\n accentColor = palette.ACCENT_SOFT,\n speed = 1,\n}: LandingCodeShowcaseProps) {\n const rawFrame = useCurrentFrame();\n const frame = rawFrame * speed;\n\n /* ---- Final \"deploy success\" glow on both panes ---- */\n const successGlow = interpolate(\n frame,\n [SCENES.terminal.start + 70, SCENES.terminal.start + 100],\n [0, 1],\n { extrapolateLeft: \"clamp\", extrapolateRight: \"clamp\" },\n );\n\n return (\n <AbsoluteFill\n style={{\n background: PANEL_BG,\n fontFamily: FONT_FAMILY,\n overflow: \"hidden\",\n }}\n >\n {/* Backdrop wash */}\n <div\n style={{\n position: \"absolute\",\n inset: 0,\n background:\n \"radial-gradient(ellipse at 20% 30%, rgba(255,179,142,0.06), transparent 55%), radial-gradient(ellipse at 80% 70%, rgba(155,139,176,0.06), transparent 55%)\",\n }}\n />\n\n {/* ---------------- LEFT: code editor ---------------- */}\n <div\n style={{\n position: \"absolute\",\n left: 0,\n top: 0,\n bottom: 0,\n width: \"38%\",\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n padding: 48,\n }}\n >\n <CodeEditor frame={frame} accentColor={accentColor} />\n </div>\n\n {/* ---------------- RIGHT: live preview ---------------- */}\n <div\n style={{\n position: \"absolute\",\n right: 0,\n top: 0,\n bottom: 0,\n width: \"62%\",\n borderLeft: \"1px solid rgba(255,255,255,0.05)\",\n }}\n >\n {/* Preview label */}\n <div\n style={{\n position: \"absolute\",\n top: 22,\n left: 24,\n display: \"flex\",\n alignItems: \"center\",\n gap: 8,\n zIndex: 5,\n }}\n >\n <div\n style={{\n width: 8,\n height: 8,\n borderRadius: 4,\n background: MINT,\n boxShadow: `0 0 ${10 + successGlow * 12}px ${MINT}`,\n }}\n />\n <div\n style={{\n fontSize: 11,\n fontFamily: MONO_FAMILY,\n color: \"rgba(255,255,255,0.5)\",\n textTransform: \"uppercase\",\n letterSpacing: \"0.1em\",\n }}\n >\n Preview · HMR\n </div>\n </div>\n\n <div\n style={{\n position: \"absolute\",\n inset: 0,\n overflow: \"hidden\",\n boxShadow: `inset 0 0 ${60 * successGlow}px rgba(127,174,122,${successGlow * 0.45})`,\n }}\n >\n <RightPane />\n </div>\n </div>\n </AbsoluteFill>\n );\n}\n\n// Re-export the schedule so existing callers importing it from the component\n// module keep working; the canonical source is ./timeline.\nexport { LANDING_CODE_SHOWCASE_DURATION };\n","// React-free timeline schedule for the landing-code-showcase scene.\n//\n// Lives apart from index.tsx (the Remotion component) so config.ts — and the\n// primitive-registry meta generator, which evaluates config.ts with React/\n// Remotion stubbed — can read the canonical scene length without pulling in the\n// renderer. index.tsx imports SCENES from here; never duplicate these constants.\n\n/*\n Frame layout (30fps base):\n 0 ────────────────────────────► 90 BlurReveal\n 70 ────► 130 SpatialPush overlay\n 130 ────────────► 240 Dashboard\n 230 ────► 290 FrostedGlassWipe overlay\n 290 ────────────► 410 MaskedSlideReveal\n 400 ────► 460 KineticTypeMask overlay\n 460 ────────────────► 640 TerminalToBrowserDeploy\n*/\n\nexport interface SceneWindow {\n start: number;\n duration: number;\n}\n\nexport const SCENES = {\n blur: { start: 0, duration: 90 } as SceneWindow,\n push1: { start: 70, duration: 60 } as SceneWindow,\n dashboard: { start: 130, duration: 110 } as SceneWindow,\n glassWipe: { start: 230, duration: 60 } as SceneWindow,\n maskedSlide: { start: 290, duration: 120 } as SceneWindow,\n push2: { start: 400, duration: 60 } as SceneWindow,\n terminal: { start: 460, duration: 180 } as SceneWindow,\n // Quiet hold at the very end so the loop never restarts mid-action.\n endHold: 80,\n};\n\nexport const LANDING_CODE_SHOWCASE_DURATION =\n SCENES.terminal.start + SCENES.terminal.duration + SCENES.endHold; // 720\n","/**\n * Adapted from remocn (https://github.com/kapishdima/remocn) — MIT\n * Copyright (c) 2026 KapishDima\n *\n * Modifications:\n * - hermetic-ize fontFamily (use inherit / monospace, not Geist CSS vars)\n * - strip \"use client\" directive (re-added at shadcn-registry export time)\n */\n\nimport { interpolate, spring, useCurrentFrame, useVideoConfig } from \"remotion\";\nimport * as palette from \"../../lib/palette\";\n\nexport interface TerminalToBrowserDeployProps {\n siteUrl?: string;\n accentColor?: string;\n speed?: number;\n className?: string;\n}\n\nconst FONT_FAMILY =\n \"inherit\";\nconst MONO_FAMILY =\n \"monospace\";\n\ninterface Line {\n text: string;\n start: number;\n type: \"command\" | \"step\" | \"success\";\n}\n\nfunction MacDots({ size = 12 }: { size?: number }) {\n return (\n <div style={{ display: \"flex\", gap: 8, alignItems: \"center\" }}>\n {[\"#ff5f57\", \"#febc2e\", \"#28c840\"].map((c) => (\n <div\n key={c}\n style={{\n width: size,\n height: size,\n borderRadius: \"50%\",\n background: c,\n opacity: 0.85,\n }}\n />\n ))}\n </div>\n );\n}\n\nexport function TerminalToBrowserDeploy({\n siteUrl = \"https://app.example.com\",\n accentColor = palette.SUCCESS,\n speed = 1,\n className,\n}: TerminalToBrowserDeployProps) {\n const frame = useCurrentFrame() * speed;\n const { fps, durationInFrames } = useVideoConfig();\n\n const lines: Line[] = [\n { text: \"$ pnpm deploy\", start: 10, type: \"command\" },\n { text: \"→ Building project...\", start: 35, type: \"step\" },\n { text: \"→ Bundling assets...\", start: 55, type: \"step\" },\n { text: \"→ Optimizing images...\", start: 75, type: \"step\" },\n { text: \"→ Uploading...\", start: 95, type: \"step\" },\n { text: `✓ Deployed to ${siteUrl}`, start: 120, type: \"success\" },\n ];\n\n // typewriter for each line\n const renderedLines = lines.map((line) => {\n const elapsed = frame - line.start;\n const charsPerFrame = 1.6;\n const visibleChars = Math.max(\n 0,\n Math.min(line.text.length, Math.floor(elapsed * charsPerFrame)),\n );\n return {\n ...line,\n visible: line.text.slice(0, visibleChars),\n isVisible: elapsed >= 0,\n };\n });\n\n // Terminal collapse start (after deploy line is fully typed)\n const collapseStart = 155;\n const collapseProgress = interpolate(\n frame,\n [collapseStart, collapseStart + 18],\n [0, 1],\n { extrapolateLeft: \"clamp\", extrapolateRight: \"clamp\" },\n );\n const terminalScale = interpolate(collapseProgress, [0, 1], [1, 0.8]);\n const terminalBlur = interpolate(collapseProgress, [0, 1], [0, 10]);\n const terminalOpacity = interpolate(collapseProgress, [0, 1], [1, 0.35]);\n\n // Browser spring entry\n const browserSpring = spring({\n frame: frame - collapseStart - 4,\n fps,\n config: { mass: 1, damping: 14, stiffness: 110 },\n durationInFrames: 50,\n });\n const browserScale = browserSpring;\n const browserOpacity = interpolate(browserSpring, [0, 0.3, 1], [0, 1, 1], {\n extrapolateRight: \"clamp\",\n });\n\n // Cursor for typewriter effect on the active line\n let activeLine: (typeof renderedLines)[number] | undefined;\n for (let i = renderedLines.length - 1; i >= 0; i--) {\n const l = renderedLines[i];\n if (l.isVisible && l.visible.length < l.text.length) {\n activeLine = l;\n break;\n }\n }\n\n // approximate vertical position of URL line within terminal body\n // line height ~ 30, body padding-top 18, lines start at index 0..5\n const urlLineIndex = 5;\n const lineHeight = 30;\n const terminalBodyPaddingTop = 22;\n const urlLineCenterY =\n terminalBodyPaddingTop + urlLineIndex * lineHeight + 12;\n\n // Terminal box dimensions inside the 1280x720 frame\n const terminalWidth = 820;\n const terminalHeight = 360;\n const terminalLeft = (1280 - terminalWidth) / 2;\n const terminalTop = (720 - terminalHeight) / 2;\n const terminalHeaderHeight = 36;\n\n // The transform-origin for the browser window: the URL text inside the terminal body\n const originX = terminalLeft + 200;\n const originY = terminalTop + terminalHeaderHeight + urlLineCenterY;\n\n // Browser window dimensions\n const browserWidth = 980;\n const browserHeight = 560;\n\n return (\n <div\n className={className}\n style={{\n position: \"absolute\",\n inset: 0,\n overflow: \"hidden\",\n background: palette.BG,\n fontFamily: FONT_FAMILY,\n }}\n >\n {/* subtle backdrop */}\n <div\n style={{\n position: \"absolute\",\n inset: 0,\n background:\n `radial-gradient(ellipse at center, ${palette.SURFACE} 0%, ${palette.BG_DEEP} 70%)`,\n }}\n />\n\n {/* Terminal */}\n <div\n style={{\n position: \"absolute\",\n left: terminalLeft,\n top: terminalTop,\n width: terminalWidth,\n height: terminalHeight,\n borderRadius: 14,\n background: \"rgba(15,15,17,0.96)\",\n border: \"1px solid rgba(255,255,255,0.08)\",\n overflow: \"hidden\",\n transform: `scale(${terminalScale})`,\n filter: `blur(${terminalBlur}px)`,\n opacity: terminalOpacity,\n transformOrigin: \"center center\",\n willChange: \"transform, filter\",\n }}\n >\n <div\n style={{\n height: terminalHeaderHeight,\n display: \"flex\",\n alignItems: \"center\",\n paddingLeft: 14,\n borderBottom: \"1px solid rgba(255,255,255,0.06)\",\n background: \"rgba(255,255,255,0.02)\",\n }}\n >\n <MacDots />\n <div\n style={{\n flex: 1,\n textAlign: \"center\",\n color: \"rgba(255,255,255,0.45)\",\n fontFamily: MONO_FAMILY,\n fontSize: 12,\n marginRight: 56,\n }}\n >\n ~/project — zsh\n </div>\n </div>\n <div\n style={{\n padding: `${terminalBodyPaddingTop}px 22px`,\n fontFamily: MONO_FAMILY,\n fontSize: 16,\n lineHeight: `${lineHeight}px`,\n color: \"rgba(255,255,255,0.85)\",\n }}\n >\n {renderedLines.map((line, i) => {\n if (!line.isVisible) return null;\n const isActive = activeLine === line;\n const showCursor = isActive && Math.floor(frame / 12) % 2 === 0;\n const color =\n line.type === \"success\"\n ? accentColor\n : line.type === \"command\"\n ? \"rgba(255,255,255,0.95)\"\n : \"rgba(255,255,255,0.7)\";\n return (\n <div\n key={i}\n style={{\n color,\n whiteSpace: \"pre\",\n }}\n >\n {line.visible}\n {showCursor && (\n <span\n style={{\n display: \"inline-block\",\n width: 8,\n height: 18,\n background: \"rgba(255,255,255,0.85)\",\n verticalAlign: \"text-bottom\",\n marginLeft: 2,\n }}\n />\n )}\n </div>\n );\n })}\n </div>\n </div>\n\n {/* Browser window — emerges from URL line */}\n <div\n style={{\n position: \"absolute\",\n left: (1280 - browserWidth) / 2,\n top: (720 - browserHeight) / 2,\n width: browserWidth,\n height: browserHeight,\n borderRadius: 16,\n overflow: \"hidden\",\n background: palette.BG,\n border: \"1px solid rgba(255,255,255,0.1)\",\n transform: `scale(${browserScale})`,\n transformOrigin: `${((originX - (1280 - browserWidth) / 2) / browserWidth) * 100}% ${((originY - (720 - browserHeight) / 2) / browserHeight) * 100}%`,\n opacity: browserOpacity,\n willChange: \"transform, opacity\",\n }}\n >\n {/* Browser chrome */}\n <div\n style={{\n height: 44,\n display: \"flex\",\n alignItems: \"center\",\n gap: 14,\n paddingLeft: 16,\n paddingRight: 16,\n background: \"rgba(20,20,22,0.95)\",\n borderBottom: \"1px solid rgba(255,255,255,0.06)\",\n }}\n >\n <MacDots />\n <div\n style={{\n flex: 1,\n height: 26,\n borderRadius: 13,\n background: \"rgba(255,255,255,0.06)\",\n border: \"1px solid rgba(255,255,255,0.08)\",\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n color: \"rgba(255,255,255,0.7)\",\n fontFamily: MONO_FAMILY,\n fontSize: 12,\n }}\n >\n {siteUrl}\n </div>\n <div style={{ width: 60 }} />\n </div>\n {/* Page */}\n <div\n style={{\n position: \"absolute\",\n inset: \"44px 0 0 0\",\n background:\n `linear-gradient(180deg, ${palette.BG} 0%, ${palette.SURFACE} 60%, ${palette.BG} 100%)`,\n color: \"white\",\n padding: \"60px 80px\",\n display: \"flex\",\n flexDirection: \"column\",\n alignItems: \"flex-start\",\n gap: 24,\n }}\n >\n {/* nav */}\n <div\n style={{\n position: \"absolute\",\n top: 22,\n left: 80,\n right: 80,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"space-between\",\n fontFamily: FONT_FAMILY,\n fontSize: 14,\n color: \"rgba(255,255,255,0.7)\",\n }}\n >\n <div style={{ fontWeight: 600, color: palette.TEXT_HI }}>Acme</div>\n <div style={{ display: \"flex\", gap: 24 }}>\n <span>Features</span>\n <span>Pricing</span>\n <span>Docs</span>\n </div>\n </div>\n\n {/* abstract shape */}\n <div\n style={{\n position: \"absolute\",\n right: 60,\n top: 120,\n width: 280,\n height: 280,\n borderRadius: \"50%\",\n background: `radial-gradient(circle at 30% 30%, ${accentColor}55, transparent 70%)`,\n filter: \"blur(20px)\",\n }}\n />\n <div\n style={{\n position: \"absolute\",\n right: 100,\n top: 160,\n width: 200,\n height: 200,\n borderRadius: 24,\n border: `1px solid ${accentColor}55`,\n transform: \"rotate(12deg)\",\n background:\n \"linear-gradient(135deg, rgba(255,255,255,0.04), transparent)\",\n }}\n />\n\n <div\n style={{\n fontFamily: FONT_FAMILY,\n fontSize: 14,\n color: accentColor,\n fontWeight: 500,\n marginTop: 50,\n }}\n >\n Now live\n </div>\n <div\n style={{\n fontFamily: FONT_FAMILY,\n fontSize: 72,\n fontWeight: 700,\n letterSpacing: \"-0.04em\",\n lineHeight: 1,\n maxWidth: 560,\n }}\n >\n Ship faster.\n </div>\n <div\n style={{\n fontFamily: FONT_FAMILY,\n fontSize: 18,\n color: \"rgba(255,255,255,0.65)\",\n maxWidth: 480,\n lineHeight: 1.5,\n }}\n >\n From commit to global edge in seconds. No config. No drama.\n </div>\n <button\n type=\"button\"\n style={{\n marginTop: 8,\n padding: \"14px 28px\",\n borderRadius: 10,\n background: accentColor,\n color: palette.BG,\n fontFamily: FONT_FAMILY,\n fontSize: 15,\n fontWeight: 600,\n border: \"none\",\n }}\n >\n Get started →\n </button>\n </div>\n </div>\n\n {/* prevent unused fps warning if duration computed */}\n <div style={{ display: \"none\" }}>{durationInFrames}</div>\n </div>\n );\n}\n","import { z } from 'zod';\nimport type { PrimitiveMeta } from '../../lib/types';\nimport { ChangelogBite } from './index';\n\nconst paramsSchema = z.object({\n label: z.string().default('Changelog').describe('Short eyebrow label (1–2 words).'),\n title: z.string().default('Faster builds').describe('Headline (1 short sentence).'),\n format: z.enum(['square', 'portrait']).default('square').describe('Aspect ratio. square: 1080×1080. portrait: 1080×1920.'),\n background: z.string().optional().describe('Frame background.'),\n cardBackground: z.string().optional().describe('Card panel background.'),\n accent: z.string().default('#ffb38e').describe('Accent color for label/highlights. Brand-bindable: pass \"$brand:colors.accent\" to track the project brand kit.'),\n speed: z.number().min(0.25).max(4).default(1).describe('Playback speed multiplier.'),\n // Structured-content slot for the before/after comparison panels. These are\n // the JSON-serializable replacement for the inexpressible `oldContent`/\n // `newContent` ReactNode props: supply the literal diff lines and they render\n // in the panels. Omit them to show the baked sample diff.\n oldLines: z.array(z.string()).optional().describe('BEFORE-panel content: one string per line (e.g. the old code). Rendered as monospace text. Omit to show the baked sample diff.'),\n newLines: z.array(z.string()).optional().describe('AFTER-panel content: one string per line (e.g. the new code). Rendered as monospace text. Omit to show the baked sample diff.'),\n}).passthrough();\n\ntype Params = z.infer<typeof paramsSchema>;\n\nexport const config: PrimitiveMeta<Params> = {\n id: 'changelog-bite',\n component: ChangelogBite,\n name: 'Changelog Bite',\n category: 'scenes',\n kind: 'scene',\n version: '0.1.1',\n\n intent: 'changelog',\n description:\n 'Short-form changelog post (square or portrait) with a label/title header and side-by-side old/new content panels. Designed for social-feed posts announcing a release.',\n useWhen:\n 'Twitter/X, Instagram, LinkedIn release posts. The portrait format works for Stories/Reels; square works for feeds. Pass oldLines/newLines (string[]) to fill the before/after comparison panels; omit them to show the baked sample diff.',\n pairsWith: [],\n avoidWith: ['product-launch-trailer'],\n tier: 'niche',\n useCase: ['social-cut'],\n tags: ['scene', 'changelog', 'release', 'social', 'comparison'],\n mood: ['corporate', 'tech-demo', 'minimal'],\n\n paramsSchema,\n propDefaults: { label: 'Changelog', title: 'Faster builds', format: 'square', accent: '#ffb38e', speed: 1 },\n\n primitivesUsed: [],\n\n examples: [\n { name: 'square-feed', mood: ['corporate'], params: { label: 'Changelog', title: 'Faster builds', format: 'square', accent: '#ffb38e', speed: 1 } },\n { name: 'portrait-story', mood: ['minimal'], params: { label: 'v2.1', title: 'New API surface', format: 'portrait', accent: '#9b8bb0', speed: 1 } },\n ],\n\n textParam: 'title',\n subtextParam: 'label',\n // label/title/oldLines/newLines ARE params — the diff CONTENT is now\n // expressible (string[] panels, see oldLines/newLines). What remains baked is\n // only the panel chrome: the BEFORE/AFTER corner badges and the mid-wipe\n // footer labels. Omitting oldLines/newLines falls back to a baked sample diff\n // (its literals are the params' documented defaults, not fixed copy).\n fixedCopy: [\n 'BEFORE', 'AFTER', // old/new panel corner badges\n 'before', 'after', // mid-wipe footer labels\n ],\n tokens: [\n { propPath: 'accent', cssVar: '--cf-accent', fallback: '#ffb38e', brandKitPath: 'colors.accent' },\n ],\n\n durationInFrames: 180,\n fps: 30,\n width: 1080,\n height: 1080,\n\n preview: { thumbnailFrame: 90, mode: 'oneshot', defaultExample: 'square-feed' },\n};\n","import { z } from 'zod';\nimport type { PrimitiveMeta } from '../../lib/types';\nimport { LiveCodeCompilation } from './index';\n\nconst paramsSchema = z.object({\n accentColor: z.string().default('#7fae7a').describe('Accent for build success indicators.'),\n speed: z.number().min(0.25).max(4).default(1).describe('Playback speed multiplier.'),\n}).passthrough();\n\ntype Params = z.infer<typeof paramsSchema>;\n\nexport const config: PrimitiveMeta<Params> = {\n id: 'live-code-compilation',\n component: LiveCodeCompilation,\n name: 'Live Code Compilation',\n category: 'scenes',\n kind: 'scene',\n version: '0.1.1',\n\n intent: 'feature-walkthrough',\n description:\n 'Composed scene showing code typing alongside a live build/output panel. Self-contained mini-product-demo for developer-tooling content. Compiles green when the code reaches a working state.',\n useWhen:\n 'Developer-tooling product demos, build-time-savings claims, \"watch the magic\" moments for compiler/transpiler/builder tools. Pair with a mesh-gradient-bg behind for premium feel. Avoid for non-build content.',\n pairsWith: ['mesh-gradient-bg', 'pulsing-indicator', 'success-confetti'],\n avoidWith: ['changelog-bite'],\n tier: 'niche',\n useCase: ['full-scene', 'explainer'],\n tags: ['scene', 'code', 'build', 'compilation', 'developer', 'demo'],\n mood: ['tech-demo', 'corporate'],\n\n paramsSchema,\n propDefaults: { accentColor: '#7fae7a', speed: 1 },\n\n primitivesUsed: [],\n\n examples: [\n { name: 'green-build', mood: ['tech-demo'], params: { accentColor: '#7fae7a', speed: 1 } },\n { name: 'brand-blue', mood: ['corporate'], params: { accentColor: '#7b93b0', speed: 1 } },\n ],\n\n textParam: null,\n subtextParam: null,\n // The typed program + rendered output are BAKED — no param sets the code or\n // the resulting button label.\n fixedCopy: [\n 'Button', // editor filename tab\n 'export function Button() { … }', // baked sample component source\n 'Ship it', // the rendered button label in the live output panel\n ],\n tokens: [\n { propPath: 'accentColor', cssVar: '--cf-accent', fallback: '#7fae7a', brandKitPath: 'colors.accent' },\n ],\n\n durationInFrames: 240,\n fps: 30,\n width: 1920,\n height: 1080,\n\n preview: { thumbnailFrame: 120, mode: 'oneshot', defaultExample: 'green-build' },\n};\n","import { z } from 'zod';\nimport type { PrimitiveMeta } from '../../lib/types';\nimport { ProductLaunchTrailer } from './index';\n\nconst paramsSchema = z.object({\n logoLabel: z.string().default('cf').describe('Short logo glyph (1–3 characters).'),\n productName: z.string().default('cueframe').describe('Product name (1–3 words).'),\n versionLabel: z.string().default('v2.1').describe('Version or release tag.'),\n accentPeach: z.string().default('#e8782b').describe('Primary accent color (peach in default).'),\n accentLavender: z.string().default('#9b8bb0').describe('Secondary accent color (lavender in default).'),\n accentMint: z.string().default('#7fae7a').describe('Tertiary accent color (mint in default).'),\n background: z.string().default('#14100c').describe('Frame background.'),\n speed: z.number().min(0.25).max(4).default(1).describe('Playback speed multiplier.'),\n}).passthrough();\n\ntype Params = z.infer<typeof paramsSchema>;\n\nexport const config: PrimitiveMeta<Params> = {\n id: 'product-launch-trailer',\n component: ProductLaunchTrailer,\n name: 'Product Launch Trailer',\n category: 'scenes',\n kind: 'scene',\n version: '0.1.2',\n\n intent: 'product-trailer',\n description:\n 'Full-frame multi-phase trailer: pulsing logo intro → app-shell flyover → outro with confetti. ~8-second self-contained scene with three named accent colors. Use as a reference template for client-trailer work or as a drop-in launch video.',\n useWhen:\n 'Product launches, version releases, hero pages, anywhere a polished 8-second trailer fits. Customize via the brand-kit-driven accent triplet + product copy. Avoid editing the timing — the anchor object inside is tuned.',\n pairsWith: [],\n avoidWith: ['changelog-bite', 'live-code-compilation'],\n tier: 'recommended',\n useCase: ['intro', 'full-scene'],\n tags: ['scene', 'trailer', 'product', 'launch', 'composition', 'multi-phase'],\n mood: ['cinematic', 'corporate', 'aggressive'],\n\n paramsSchema,\n propDefaults: { logoLabel: 'cf', productName: 'cueframe', versionLabel: 'v2.1', accentPeach: '#e8782b', accentLavender: '#9b8bb0', accentMint: '#7fae7a', background: '#14100c', speed: 1 },\n\n primitivesUsed: [],\n\n examples: [\n { name: 'cueframe-launch', mood: ['corporate'], params: { logoLabel: 'cf', productName: 'cueframe', versionLabel: 'v2.1', accentPeach: '#e8782b', accentLavender: '#9b8bb0', accentMint: '#7fae7a', background: '#14100c', speed: 1 } },\n ],\n\n textParam: 'productName',\n subtextParam: 'versionLabel',\n // logoLabel/productName/versionLabel ARE params; these are the BAKED strings\n // (FauxBentoGrid cards + FauxCodeBlock body) no param can change.\n fixedCopy: [\n 'Animations', 'Spring-tuned', // bento card 1\n 'Transitions', 'Cinematic', // bento card 2\n 'Backgrounds', 'Volumetric', // bento card 3\n 'Compositions', 'Production-ready', // bento card 4\n 'scene.tsx', // faux code block title bar\n \"import { Trailer } from 'remocn'\",\n '<Trailer label=\"v1.0\" accent=\"lavender\" />',\n ],\n tokens: [\n { propPath: 'accentPeach', cssVar: '--cf-accent', fallback: '#e8782b', brandKitPath: 'colors.accent' },\n { propPath: 'accentLavender', cssVar: '--cf-accent-2', fallback: '#9b8bb0', brandKitPath: 'colors.accentMuted' },\n { propPath: 'accentMint', cssVar: '--cf-accent-3', fallback: '#7fae7a', brandKitPath: 'colors.accentMuted' },\n { propPath: 'background', cssVar: '--cf-bg', fallback: '#14100c', brandKitPath: 'colors.background' },\n ],\n\n durationInFrames: 240,\n fps: 30,\n width: 1920,\n height: 1080,\n\n preview: { thumbnailFrame: 120, mode: 'oneshot', defaultExample: 'cueframe-launch' },\n};\n","import { z } from 'zod';\nimport type { PrimitiveMeta } from '../../lib/types';\nimport { HeroDeviceAssemble } from './index';\n\nconst paramsSchema = z.object({\n assembleStart: z.number().min(0).default(0).describe('Frame at which the 3D layer-stack assembly spring fires. Use to delay the assemble after a title beat.'),\n device: z.enum(['laptop', 'phone']).default('laptop').describe('Device silhouette. `laptop` adds a chassis base under the screen; `phone` uses a tall portrait bezel.'),\n accentColor: z.string().default('#7fae7a').describe('Accent color for the mock-UI sidebar bar, the highlighted dashboard card, and brand surfaces inside the screen.'),\n speed: z.number().min(0.25).max(4).default(1).describe('Playback speed multiplier. >1 condenses the assemble + screen wake + shimmer.'),\n className: z.string().optional().describe('Optional className passthrough on the outer absolute frame.'),\n}).passthrough();\n\ntype Params = z.infer<typeof paramsSchema>;\n\nexport const config: PrimitiveMeta<Params> = {\n id: 'hero-device-assemble',\n component: HeroDeviceAssemble,\n name: 'Hero Device Assemble',\n category: 'scenes',\n kind: 'scene',\n version: '0.1.1',\n\n intent: 'assemble-hero-device',\n description:\n 'Hero shot where a laptop or phone assembles in 3D from exploded layers (lid, base, bezel, screen) into a settled device, then the screen wakes from black to a mock UI and a shimmer sweeps across. Self-contained ~3-second product reveal beat.',\n useWhen:\n 'App / SaaS hero loops, product-page intros, \"see it on your device\" moments, ad pre-rolls. Use `device=\"phone\"` for mobile-first products. Pair with a title card before or a CTA after. Avoid for short clips <4s — the assemble spring + wake + shimmer needs ~80 frames to land. Avoid for vertical/9:16 with `device=\"laptop\"` — the laptop aspect cuts off; switch to `device=\"phone\"`.',\n pairsWith: ['kinetic-type-mask', 'pulsing-indicator'],\n avoidWith: ['changelog-bite'],\n tier: 'standard',\n useCase: ['intro', 'full-scene'],\n tags: ['scene', 'hero', 'device', 'mockup', 'laptop', 'phone', '3d', 'assemble', 'product'],\n mood: ['cinematic', 'tech-demo', 'corporate'],\n\n paramsSchema,\n propDefaults: { assembleStart: 0, device: 'laptop', accentColor: '#7fae7a', speed: 1 },\n\n primitivesUsed: [],\n\n examples: [\n {\n name: 'laptop-green',\n mood: ['tech-demo', 'corporate'],\n params: { assembleStart: 0, device: 'laptop', accentColor: '#7fae7a', speed: 1 },\n description: 'Default — laptop assemble with green accent on the mock dashboard. Use for SaaS hero loops.',\n },\n {\n name: 'phone-lavender',\n mood: ['cinematic'],\n params: { assembleStart: 0, device: 'phone', accentColor: '#9b8bb0', speed: 1 },\n description: 'Phone variant with lavender accent. Use for mobile-first product launches.',\n },\n {\n name: 'delayed-laptop',\n mood: ['cinematic'],\n params: { assembleStart: 30, device: 'laptop', accentColor: '#7b93b0', speed: 1 },\n description: 'Hold black for 1s before assembling. Use when stacking after a title-card beat.',\n },\n ],\n\n textParam: null,\n subtextParam: null,\n tokens: [\n { propPath: 'accentColor', cssVar: '--cf-accent', fallback: '#7fae7a', brandKitPath: 'colors.accent' },\n ],\n\n durationInFrames: 240,\n fps: 30,\n width: 1920,\n height: 1080,\n\n preview: { thumbnailFrame: 75, mode: 'oneshot', defaultExample: 'laptop-green' },\n};\n","import { z } from 'zod';\nimport type { PrimitiveMeta } from '../../lib/types';\nimport { PricingTierFocus } from './index';\n\nconst paramsSchema = z.object({\n focusedTier: z.union([\n z.literal(0),\n z.literal(1),\n z.literal(2),\n z.literal('0'),\n z.literal('1'),\n z.literal('2'),\n ])\n .default(1)\n .describe('Index of the tier to focus (0=Free, 1=Pro, 2=Enterprise). The focused tier scales up, lifts, and gets a \"Popular\" badge + shimmering CTA; siblings dim and blur.'),\n accentColor: z.string().default('#7fae7a').describe('Accent color for the focused-tier border glow, \"Popular\" badge, feature checks, and CTA fill.'),\n speed: z.number().min(0.25).max(4).default(1).describe('Playback speed multiplier.'),\n className: z.string().optional().describe('Optional className passthrough on the outer flex frame.'),\n}).passthrough();\n\ntype Params = z.infer<typeof paramsSchema>;\n\nexport const config: PrimitiveMeta<Params> = {\n id: 'pricing-tier-focus',\n component: PricingTierFocus,\n name: 'Pricing Tier Focus',\n category: 'scenes',\n kind: 'scene',\n version: '0.1.1',\n\n intent: 'showcase-pricing',\n description:\n 'Three-card pricing layout (Free / Pro / Enterprise) where one tier scales up, lifts, and shimmers while the others dim and blur. Tier copy is hardcoded; the agent picks which tier to spotlight via `focusedTier`.',\n useWhen:\n 'SaaS pricing reveals, plan-upgrade promos, \"this is the one to pick\" moments. Use `focusedTier=1` for Pro-default upsell, `2` for enterprise sales decks. Avoid for short clips <8s — the focus spring lands at frame 50, shimmer at 90. Avoid for vertical/9:16 unless rebuilt — three side-by-side cards need 16:9 width.',\n pairsWith: ['success-confetti'],\n avoidWith: ['changelog-bite'],\n tier: 'standard',\n useCase: ['full-scene', 'explainer'],\n tags: ['scene', 'pricing', 'tiers', 'saas', 'upsell', 'plans'],\n mood: ['corporate', 'tech-demo', 'minimal'],\n\n paramsSchema,\n propDefaults: { focusedTier: 1, accentColor: '#7fae7a', speed: 1 },\n\n primitivesUsed: [],\n\n examples: [\n {\n name: 'pro-upsell',\n mood: ['corporate'],\n params: { focusedTier: 1, accentColor: '#7fae7a', speed: 1 },\n description: 'Default — focus the middle Pro tier with green accent. Best for self-serve SaaS landing pages.',\n },\n {\n name: 'enterprise-sales',\n mood: ['corporate', 'cinematic'],\n params: { focusedTier: 2, accentColor: '#9b8bb0', speed: 1 },\n description: 'Spotlight Enterprise with lavender accent. Use in sales-deck loops or B2B trailers.',\n },\n {\n name: 'free-onboarding',\n mood: ['playful', 'minimal'],\n params: { focusedTier: 0, accentColor: '#7b93b0', speed: 1 },\n description: 'Spotlight the Free tier with sky-blue accent. Use in product-led-growth onboarding videos.',\n },\n ],\n\n textParam: null,\n subtextParam: null,\n // focusedTier picks WHICH card to spotlight; all tier copy/prices are BAKED.\n // The scene that exists to show pricing cannot carry the agent's pricing.\n fixedCopy: [\n 'Free', '$0', '/mo', '1 project', 'Community support', '1 GB storage', 'Get started',\n 'Pro', '$24', '/mo', 'Unlimited projects', 'Priority support', '100 GB storage', 'Advanced analytics', 'Buy Pro',\n 'Enterprise', 'Dedicated manager', 'Unlimited storage', 'Contact sales',\n 'Popular', // badge on the focused tier\n ],\n tokens: [\n { propPath: 'accentColor', cssVar: '--cf-accent', fallback: '#7fae7a', brandKitPath: 'colors.accent' },\n ],\n\n durationInFrames: 240,\n fps: 30,\n width: 1920,\n height: 1080,\n\n preview: { thumbnailFrame: 110, mode: 'oneshot', defaultExample: 'pro-upsell' },\n};\n","import { z } from 'zod';\nimport type { PrimitiveMeta } from '../../lib/types';\nimport { LandingCodeShowcase } from './index';\nimport { LANDING_CODE_SHOWCASE_DURATION } from './timeline';\n\nconst paramsSchema = z.object({\n accentColor: z.string().default('#FFB38E').describe('Accent color for the code editor caret, syntax highlight on local identifiers, and the success-glow halo on the right preview pane.'),\n speed: z.number().min(0.25).max(4).default(1).describe('Playback speed multiplier. The internal timeline assumes 30fps base; >1 condenses the whole 24s sequence.'),\n}).passthrough();\n\ntype Params = z.infer<typeof paramsSchema>;\n\nexport const config: PrimitiveMeta<Params> = {\n id: 'landing-code-showcase',\n component: LandingCodeShowcase,\n name: 'Landing Code Showcase',\n category: 'scenes',\n kind: 'scene',\n version: '0.1.1',\n\n intent: 'showcase-landing-code',\n description:\n 'Two-pane \"code → live preview\" hero loop. Left: a glassy editor types JSX one component at a time. Right: each typed component renders inside a warm pastel stage, with `spatial-push` and `frosted-glass-wipe` transitions between beats (BlurReveal → DashboardPopulate → MaskedSlideReveal → TerminalToBrowserDeploy). Self-contained 24-second showcase loop for component-library marketing.',\n useWhen:\n 'Component library / framework / Remotion-style SDK landing pages, hero loops, \"build with us\" demos, conference talk title cards. Avoid for short clips <16s — the staged code-typing pace cannot be compressed without losing the reveal beats. Avoid for vertical/9:16 unless rebuilt — split-pane layout assumes 16:9.',\n pairsWith: [],\n avoidWith: ['changelog-bite', 'product-launch-trailer'],\n tier: 'recommended',\n useCase: ['full-scene'],\n tags: ['scene', 'landing', 'code', 'showcase', 'hero', 'split-pane', 'components', 'library'],\n mood: ['cinematic', 'tech-demo', 'editorial'],\n\n paramsSchema,\n propDefaults: { accentColor: '#FFB38E', speed: 1 },\n\n primitivesUsed: [\n 'dashboard-populate',\n 'frosted-glass-wipe',\n 'spatial-push',\n 'terminal-to-browser-deploy',\n ],\n\n examples: [\n {\n name: 'peach-default',\n mood: ['cinematic', 'editorial'],\n params: { accentColor: '#FFB38E', speed: 1 },\n description: 'Default warm peach accent. Use for premium dev-tool landing pages where the pastel stage matches the brand.',\n },\n {\n name: 'mint-hero',\n mood: ['tech-demo'],\n params: { accentColor: '#7fae7a', speed: 1 },\n description: 'Mint accent — pairs well when the brand already uses green for \"ship/deploy\" semantics.',\n },\n ],\n\n textParam: null,\n subtextParam: null,\n // No prop changes the marketing copy or the typed program — fork via\n // get_component_source to rewrite (index.tsx STEPS / BlurRevealScene /\n // MaskedSlideScene / TerminalScene).\n fixedCopy: [\n 'Build faster.', // BlurReveal headline (right preview pane)\n 'Ship to production.', // MaskedSlideReveal headline\n 'Preview · HMR', // live-preview label\n 'scene.tsx', // editor title-bar filename\n 'remocn.dev', // deploy URL inside the embedded terminal-to-browser beat\n 'import { BlurReveal, DashboardPopulate, MaskedSlideReveal, TerminalToBrowserDeploy, Transition } from \"@/components/remocn\"',\n '<BlurReveal text=\"Build faster.\" />',\n '<MaskedSlideReveal text=\"Ship to production.\" />',\n ],\n tokens: [\n { propPath: 'accentColor', cssVar: '--cf-accent', fallback: '#FFB38E', brandKitPath: 'colors.accent' },\n ],\n\n durationInFrames: LANDING_CODE_SHOWCASE_DURATION,\n fps: 30,\n width: 1920,\n height: 1080,\n\n preview: { thumbnailFrame: 540, mode: 'oneshot', defaultExample: 'peach-default' },\n};\n","import { z } from 'zod';\nimport type { PrimitiveMeta } from '../../lib/types';\nimport { TerminalToBrowserDeploy } from './index';\n\nconst paramsSchema = z.object({\n siteUrl: z.string().default('https://app.example.com').describe('Deploy target URL shown on the success line and inside the browser address bar.'),\n accentColor: z.string().default('#7fae7a').describe('Accent color for the deploy success line, browser hero copy, and CTA button.'),\n speed: z.number().min(0.25).max(4).default(1).describe('Playback speed multiplier. >1 condenses the typewriter + collapse + browser reveal.'),\n className: z.string().optional().describe('Optional className passthrough on the outer absolute frame.'),\n}).passthrough();\n\ntype Params = z.infer<typeof paramsSchema>;\n\nexport const config: PrimitiveMeta<Params> = {\n id: 'terminal-to-browser-deploy',\n component: TerminalToBrowserDeploy,\n name: 'Terminal to Browser Deploy',\n category: 'scenes',\n kind: 'scene',\n version: '0.1.1',\n\n intent: 'animate-deploy-flow',\n description:\n 'Full-frame deploy beat: terminal types `pnpm deploy`, prints build/bundle/upload steps, then the success line collapses-and-blurs while a polished marketing browser springs forward at the URL. Self-contained ~6-second story for \"ship it\" moments.',\n useWhen:\n 'Developer-tooling launches, deploy/CI/CD product demos, \"from commit to live\" moments, hero loops behind a CTA. Pair with `success-confetti` or a short outro card. Avoid for short clips <10s where the terminal collapse never plays. Avoid for vertical/9:16 unless the terminal + browser geometry is rebuilt — internal coordinates are baked at 1280×720.',\n pairsWith: ['success-confetti', 'pulsing-indicator'],\n avoidWith: ['changelog-bite'],\n tier: 'recommended',\n useCase: ['outro', 'full-scene'],\n tags: ['scene', 'terminal', 'deploy', 'browser', 'cli', 'developer', 'shipping', 'cicd'],\n mood: ['tech-demo', 'cinematic', 'corporate'],\n\n paramsSchema,\n propDefaults: { siteUrl: 'https://app.example.com', accentColor: '#7fae7a', speed: 1 },\n\n primitivesUsed: [],\n\n examples: [\n {\n name: 'green-ship',\n mood: ['tech-demo'],\n params: { siteUrl: 'https://app.example.com', accentColor: '#7fae7a', speed: 1 },\n description: 'Default green-build deploy. Use for generic developer-tool demos.',\n },\n {\n name: 'brand-blue',\n mood: ['corporate'],\n params: { siteUrl: 'https://acme.dev', accentColor: '#7b93b0', speed: 1 },\n description: 'Corporate blue accent on a real-looking domain. Use when the brand kit resolves the accent.',\n },\n {\n name: 'fast-edit',\n mood: ['tech-demo', 'aggressive'],\n params: { siteUrl: 'https://remocn.dev', accentColor: '#9b8bb0', speed: 1.4 },\n description: '1.4x speed cut, lavender accent. Use inside compilation montages where the deploy beat is one of several.',\n },\n ],\n\n textParam: 'siteUrl',\n subtextParam: null,\n // siteUrl is a param (it interpolates into the success line + address bar);\n // the terminal log lines + browser chrome/hero are BAKED.\n fixedCopy: [\n '$ pnpm deploy',\n '→ Building project...',\n '→ Bundling assets...',\n '→ Uploading...',\n '✓ Deployed to <siteUrl>', // siteUrl param interpolates here\n 'Acme', 'Features', 'Pricing', 'Docs', // browser nav (Acme brand is fixed)\n 'Ship faster.', 'Get started →', // browser hero headline + CTA\n ],\n tokens: [\n { propPath: 'accentColor', cssVar: '--cf-accent', fallback: '#7fae7a', brandKitPath: 'colors.accent' },\n ],\n\n durationInFrames: 240,\n fps: 30,\n width: 1920,\n height: 1080,\n\n preview: { thumbnailFrame: 165, mode: 'oneshot', defaultExample: 'green-ship' },\n};\n","// @cueframe/primitives/scenes — full-frame multi-primitive compositions\n\nimport type { Catalog } from '../lib/types';\n\nexport { ChangelogBite } from './changelog-bite';\nexport { LiveCodeCompilation } from './live-code-compilation';\nexport { ProductLaunchTrailer } from './product-launch-trailer';\n\nexport { HeroDeviceAssemble } from './hero-device-assemble';\nexport { PricingTierFocus } from './pricing-tier-focus';\nexport { LandingCodeShowcase } from './landing-code-showcase';\nexport { TerminalToBrowserDeploy } from './terminal-to-browser-deploy';\n\nimport { config as changelogBite } from './changelog-bite/config';\nimport { config as liveCodeCompilation } from './live-code-compilation/config';\nimport { config as productLaunchTrailer } from './product-launch-trailer/config';\nimport { config as heroDeviceAssemble } from './hero-device-assemble/config';\nimport { config as pricingTierFocus } from './pricing-tier-focus/config';\nimport { config as landingCodeShowcase } from './landing-code-showcase/config';\nimport { config as terminalToBrowserDeploy } from './terminal-to-browser-deploy/config';\n\nexport const catalog: Catalog = [\n changelogBite,\n liveCodeCompilation,\n productLaunchTrailer,\n heroDeviceAssemble,\n pricingTierFocus,\n landingCodeShowcase,\n terminalToBrowserDeploy,\n];\n"],"mappings":"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","names":["useCurrentFrame","jsx","jsxs","FONT_FAMILY","MONO_FAMILY","useCurrentFrame","AbsoluteFill","Easing","interpolate","spring","useCurrentFrame","useVideoConfig","jsx","jsxs","FONT_FAMILY","MONO_FAMILY","SOFT","Easing","AbsoluteFill","useCurrentFrame","interpolate","useVideoConfig","spring","interpolate","spring","useCurrentFrame","useVideoConfig","jsx","jsxs","FONT_FAMILY","useCurrentFrame","useVideoConfig","spring","interpolate","interpolate","spring","useCurrentFrame","useVideoConfig","jsx","jsxs","FONT_FAMILY","useCurrentFrame","useVideoConfig","spring","interpolate","z","AbsoluteFill","interpolate","Sequence","spring","useCurrentFrame","useVideoConfig","interpolate","spring","useCurrentFrame","useVideoConfig","jsx","jsxs","FONT_FAMILY","MONO_FAMILY","useCurrentFrame","useVideoConfig","interpolate","spring","jsx","jsxs","FONT_FAMILY","MONO_FAMILY","CHARS_PER_FRAME","useCurrentFrame","interpolate","useVideoConfig","spring","Sequence","AbsoluteFill","z","paramsSchema","z","config","z","paramsSchema","z","config","z","paramsSchema","z","config","z","paramsSchema","z","config","z","paramsSchema","z","config","z","paramsSchema","z","config","config"]}