@remotion/promo-pages 4.0.430 → 4.0.432

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 (304) hide show
  1. package/dist/Homepage.js +52617 -50097
  2. package/dist/Users/jonathanburger/remotion/packages/promo-pages/dist/Homepage.js +52617 -50097
  3. package/dist/Users/jonathanburger/remotion/packages/promo-pages/dist/design.js +410 -219
  4. package/dist/Users/jonathanburger/remotion/packages/promo-pages/dist/experts/experts-data.js +15 -0
  5. package/dist/Users/jonathanburger/remotion/packages/promo-pages/dist/experts.js +264 -74
  6. package/dist/Users/jonathanburger/remotion/packages/promo-pages/dist/homepage/Pricing.js +410 -219
  7. package/dist/Users/jonathanburger/remotion/packages/promo-pages/dist/prompts/PromptsGallery.js +410 -219
  8. package/dist/Users/jonathanburger/remotion/packages/promo-pages/dist/prompts/PromptsShow.js +410 -219
  9. package/dist/Users/jonathanburger/remotion/packages/promo-pages/dist/prompts/PromptsSubmit.js +410 -219
  10. package/dist/Users/jonathanburger/remotion/packages/promo-pages/dist/team.js +15 -0
  11. package/dist/Users/jonathanburger/remotion/packages/promo-pages/dist/template-modal-content.js +410 -219
  12. package/dist/Users/jonathanburger/remotion/packages/promo-pages/dist/templates.js +410 -219
  13. package/dist/design.js +410 -219
  14. package/dist/experts/experts-data.js +15 -0
  15. package/dist/experts.js +264 -74
  16. package/dist/homepage/Pricing.js +410 -219
  17. package/dist/prompts/PromptsGallery.js +410 -219
  18. package/dist/prompts/PromptsShow.js +410 -219
  19. package/dist/prompts/PromptsSubmit.js +410 -219
  20. package/dist/team.js +15 -0
  21. package/dist/template-modal-content.js +410 -219
  22. package/dist/templates.js +410 -219
  23. package/package.json +13 -13
  24. package/dist/Users/jonathanburger/remotion2/packages/promo-pages/dist/Homepage.css +0 -32
  25. package/dist/Users/jonathanburger/remotion2/packages/promo-pages/dist/Homepage.js +0 -63571
  26. package/dist/Users/jonathanburger/remotion2/packages/promo-pages/dist/design.js +0 -20053
  27. package/dist/Users/jonathanburger/remotion2/packages/promo-pages/dist/experts/experts-data.js +0 -689
  28. package/dist/Users/jonathanburger/remotion2/packages/promo-pages/dist/experts.js +0 -8378
  29. package/dist/Users/jonathanburger/remotion2/packages/promo-pages/dist/homepage/Pricing.js +0 -21502
  30. package/dist/Users/jonathanburger/remotion2/packages/promo-pages/dist/prompts/PromptsGallery.js +0 -19934
  31. package/dist/Users/jonathanburger/remotion2/packages/promo-pages/dist/prompts/PromptsShow.css +0 -2578
  32. package/dist/Users/jonathanburger/remotion2/packages/promo-pages/dist/prompts/PromptsShow.js +0 -39755
  33. package/dist/Users/jonathanburger/remotion2/packages/promo-pages/dist/prompts/PromptsSubmit.css +0 -2578
  34. package/dist/Users/jonathanburger/remotion2/packages/promo-pages/dist/prompts/PromptsSubmit.js +0 -39846
  35. package/dist/Users/jonathanburger/remotion2/packages/promo-pages/dist/prompts/prompt-types.js +0 -0
  36. package/dist/Users/jonathanburger/remotion2/packages/promo-pages/dist/team.js +0 -292
  37. package/dist/Users/jonathanburger/remotion2/packages/promo-pages/dist/template-modal-content.css +0 -32
  38. package/dist/Users/jonathanburger/remotion2/packages/promo-pages/dist/template-modal-content.js +0 -21671
  39. package/dist/Users/jonathanburger/remotion2/packages/promo-pages/dist/templates.js +0 -21014
  40. package/dist/cn.d.ts +0 -2
  41. package/dist/cn.js +0 -5
  42. package/dist/components/3DEngine/ButtonDemo.d.ts +0 -2
  43. package/dist/components/3DEngine/ButtonDemo.js +0 -43
  44. package/dist/components/3DEngine/Faces.d.ts +0 -5
  45. package/dist/components/3DEngine/Faces.js +0 -7
  46. package/dist/components/3DEngine/Outer.d.ts +0 -8
  47. package/dist/components/3DEngine/Outer.js +0 -56
  48. package/dist/components/3DEngine/Switch.d.ts +0 -4
  49. package/dist/components/3DEngine/Switch.js +0 -4
  50. package/dist/components/3DEngine/get-child-node-from.d.ts +0 -1
  51. package/dist/components/3DEngine/get-child-node-from.js +0 -14
  52. package/dist/components/3DEngine/hover-transforms.d.ts +0 -9
  53. package/dist/components/3DEngine/hover-transforms.js +0 -177
  54. package/dist/components/BackButton.d.ts +0 -6
  55. package/dist/components/BackButton.js +0 -9
  56. package/dist/components/CommandCopyButton.d.ts +0 -5
  57. package/dist/components/CommandCopyButton.js +0 -4
  58. package/dist/components/Homepage.d.ts +0 -6
  59. package/dist/components/Homepage.js +0 -20
  60. package/dist/components/ManageTeamMembers.d.ts +0 -2
  61. package/dist/components/ManageTeamMembers.js +0 -42
  62. package/dist/components/Spinner.d.ts +0 -3
  63. package/dist/components/Spinner.js +0 -4
  64. package/dist/components/TeamPicture.d.ts +0 -1
  65. package/dist/components/TeamPicture.js +0 -4
  66. package/dist/components/design.d.ts +0 -1
  67. package/dist/components/design.js +0 -33
  68. package/dist/components/experts/ExpertsPage.d.ts +0 -11
  69. package/dist/components/experts/ExpertsPage.js +0 -50
  70. package/dist/components/experts/experts-data.d.ts +0 -15
  71. package/dist/components/experts/experts-data.js +0 -263
  72. package/dist/components/experts/experts-icons.d.ts +0 -7
  73. package/dist/components/experts/experts-icons.js +0 -36
  74. package/dist/components/experts.d.ts +0 -3
  75. package/dist/components/experts.js +0 -2
  76. package/dist/components/homepage/BackgroundAnimation.d.ts +0 -2
  77. package/dist/components/homepage/BackgroundAnimation.js +0 -66
  78. package/dist/components/homepage/ChooseTemplate.d.ts +0 -2
  79. package/dist/components/homepage/ChooseTemplate.js +0 -25
  80. package/dist/components/homepage/CommunityStats.d.ts +0 -3
  81. package/dist/components/homepage/CommunityStats.js +0 -6
  82. package/dist/components/homepage/CommunityStatsItems.d.ts +0 -7
  83. package/dist/components/homepage/CommunityStatsItems.js +0 -58
  84. package/dist/components/homepage/Demo/Card.d.ts +0 -15
  85. package/dist/components/homepage/Demo/Card.js +0 -174
  86. package/dist/components/homepage/Demo/Cards.d.ts +0 -15
  87. package/dist/components/homepage/Demo/Cards.js +0 -57
  88. package/dist/components/homepage/Demo/Comp.d.ts +0 -38
  89. package/dist/components/homepage/Demo/Comp.js +0 -72
  90. package/dist/components/homepage/Demo/CurrentCountry.d.ts +0 -9
  91. package/dist/components/homepage/Demo/CurrentCountry.js +0 -48
  92. package/dist/components/homepage/Demo/DemoError.d.ts +0 -2
  93. package/dist/components/homepage/Demo/DemoError.js +0 -10
  94. package/dist/components/homepage/Demo/DemoErrorIcon.d.ts +0 -2
  95. package/dist/components/homepage/Demo/DemoErrorIcon.js +0 -16
  96. package/dist/components/homepage/Demo/DemoRender.d.ts +0 -33
  97. package/dist/components/homepage/Demo/DemoRender.js +0 -107
  98. package/dist/components/homepage/Demo/DigitWheel.d.ts +0 -9
  99. package/dist/components/homepage/Demo/DigitWheel.js +0 -94
  100. package/dist/components/homepage/Demo/DisplayedEmoji.d.ts +0 -5
  101. package/dist/components/homepage/Demo/DisplayedEmoji.js +0 -59
  102. package/dist/components/homepage/Demo/DoneCheckmark.d.ts +0 -2
  103. package/dist/components/homepage/Demo/DoneCheckmark.js +0 -20
  104. package/dist/components/homepage/Demo/DownloadNudge.d.ts +0 -2
  105. package/dist/components/homepage/Demo/DownloadNudge.js +0 -27
  106. package/dist/components/homepage/Demo/DragAndDropNudge.d.ts +0 -3
  107. package/dist/components/homepage/Demo/DragAndDropNudge.js +0 -26
  108. package/dist/components/homepage/Demo/EmojiCard.d.ts +0 -10
  109. package/dist/components/homepage/Demo/EmojiCard.js +0 -120
  110. package/dist/components/homepage/Demo/Minus.d.ts +0 -5
  111. package/dist/components/homepage/Demo/Minus.js +0 -11
  112. package/dist/components/homepage/Demo/PlayPauseButton.d.ts +0 -5
  113. package/dist/components/homepage/Demo/PlayPauseButton.js +0 -47
  114. package/dist/components/homepage/Demo/PlayerControls.d.ts +0 -8
  115. package/dist/components/homepage/Demo/PlayerControls.js +0 -15
  116. package/dist/components/homepage/Demo/PlayerSeekBar.d.ts +0 -11
  117. package/dist/components/homepage/Demo/PlayerSeekBar.js +0 -216
  118. package/dist/components/homepage/Demo/PlayerVolume.d.ts +0 -5
  119. package/dist/components/homepage/Demo/PlayerVolume.js +0 -53
  120. package/dist/components/homepage/Demo/Progress.d.ts +0 -4
  121. package/dist/components/homepage/Demo/Progress.js +0 -14
  122. package/dist/components/homepage/Demo/Spinner.d.ts +0 -5
  123. package/dist/components/homepage/Demo/Spinner.js +0 -37
  124. package/dist/components/homepage/Demo/Switcher.d.ts +0 -6
  125. package/dist/components/homepage/Demo/Switcher.js +0 -25
  126. package/dist/components/homepage/Demo/Temperature.d.ts +0 -6
  127. package/dist/components/homepage/Demo/Temperature.js +0 -21
  128. package/dist/components/homepage/Demo/TemperatureNumber.d.ts +0 -5
  129. package/dist/components/homepage/Demo/TemperatureNumber.js +0 -36
  130. package/dist/components/homepage/Demo/ThemeNudge.d.ts +0 -3
  131. package/dist/components/homepage/Demo/ThemeNudge.js +0 -35
  132. package/dist/components/homepage/Demo/TimeDisplay.d.ts +0 -6
  133. package/dist/components/homepage/Demo/TimeDisplay.js +0 -27
  134. package/dist/components/homepage/Demo/TrendingRepos.d.ts +0 -6
  135. package/dist/components/homepage/Demo/TrendingRepos.js +0 -65
  136. package/dist/components/homepage/Demo/icons.d.ts +0 -10
  137. package/dist/components/homepage/Demo/icons.js +0 -22
  138. package/dist/components/homepage/Demo/index.d.ts +0 -2
  139. package/dist/components/homepage/Demo/index.js +0 -95
  140. package/dist/components/homepage/Demo/math.d.ts +0 -10
  141. package/dist/components/homepage/Demo/math.js +0 -29
  142. package/dist/components/homepage/Demo/types.d.ts +0 -6
  143. package/dist/components/homepage/Demo/types.js +0 -0
  144. package/dist/components/homepage/EditorStarterSection.d.ts +0 -3
  145. package/dist/components/homepage/EditorStarterSection.js +0 -8
  146. package/dist/components/homepage/EvaluateRemotion.d.ts +0 -3
  147. package/dist/components/homepage/EvaluateRemotion.js +0 -21
  148. package/dist/components/homepage/FreePricing.d.ts +0 -4
  149. package/dist/components/homepage/FreePricing.js +0 -134
  150. package/dist/components/homepage/GetStartedStrip.d.ts +0 -2
  151. package/dist/components/homepage/GetStartedStrip.js +0 -14
  152. package/dist/components/homepage/GitHubButton.d.ts +0 -2
  153. package/dist/components/homepage/GitHubButton.js +0 -7
  154. package/dist/components/homepage/IconForTemplate.d.ts +0 -6
  155. package/dist/components/homepage/IconForTemplate.js +0 -101
  156. package/dist/components/homepage/IfYouKnowReact.d.ts +0 -3
  157. package/dist/components/homepage/IfYouKnowReact.js +0 -23
  158. package/dist/components/homepage/InfoTooltip.d.ts +0 -6
  159. package/dist/components/homepage/InfoTooltip.js +0 -6
  160. package/dist/components/homepage/MoreTemplatesButton.d.ts +0 -2
  161. package/dist/components/homepage/MoreTemplatesButton.js +0 -11
  162. package/dist/components/homepage/MuxVideo.d.ts +0 -7
  163. package/dist/components/homepage/MuxVideo.js +0 -45
  164. package/dist/components/homepage/NewsletterButton.d.ts +0 -2
  165. package/dist/components/homepage/NewsletterButton.js +0 -38
  166. package/dist/components/homepage/ParameterizeAndEdit.d.ts +0 -2
  167. package/dist/components/homepage/ParameterizeAndEdit.js +0 -22
  168. package/dist/components/homepage/Pricing.d.ts +0 -2
  169. package/dist/components/homepage/Pricing.js +0 -15
  170. package/dist/components/homepage/PricingBulletPoint.d.ts +0 -6
  171. package/dist/components/homepage/PricingBulletPoint.js +0 -19
  172. package/dist/components/homepage/RealMp4Videos.d.ts +0 -2
  173. package/dist/components/homepage/RealMp4Videos.js +0 -41
  174. package/dist/components/homepage/Spacer.d.ts +0 -2
  175. package/dist/components/homepage/Spacer.js +0 -4
  176. package/dist/components/homepage/TemplateIcon.d.ts +0 -5
  177. package/dist/components/homepage/TemplateIcon.js +0 -24
  178. package/dist/components/homepage/TextInput.d.ts +0 -7
  179. package/dist/components/homepage/TextInput.js +0 -34
  180. package/dist/components/homepage/TrustedByBanner.d.ts +0 -2
  181. package/dist/components/homepage/TrustedByBanner.js +0 -27
  182. package/dist/components/homepage/VideoApps.d.ts +0 -4
  183. package/dist/components/homepage/VideoApps.js +0 -72
  184. package/dist/components/homepage/VideoAppsShowcase.d.ts +0 -3
  185. package/dist/components/homepage/VideoAppsShowcase.js +0 -139
  186. package/dist/components/homepage/VideoAppsTitle.d.ts +0 -4
  187. package/dist/components/homepage/VideoAppsTitle.js +0 -4
  188. package/dist/components/homepage/VideoPlayerWithControls.d.ts +0 -20
  189. package/dist/components/homepage/VideoPlayerWithControls.js +0 -105
  190. package/dist/components/homepage/WriteInReact.d.ts +0 -2
  191. package/dist/components/homepage/WriteInReact.js +0 -10
  192. package/dist/components/homepage/YouAreHere.d.ts +0 -2
  193. package/dist/components/homepage/YouAreHere.js +0 -23
  194. package/dist/components/homepage/layout/Button.d.ts +0 -22
  195. package/dist/components/homepage/layout/Button.js +0 -30
  196. package/dist/components/homepage/layout/colors.d.ts +0 -13
  197. package/dist/components/homepage/layout/colors.js +0 -14
  198. package/dist/components/homepage/layout/use-color-mode.d.ts +0 -21
  199. package/dist/components/homepage/layout/use-color-mode.js +0 -22
  200. package/dist/components/homepage/layout/use-el-size.d.ts +0 -5
  201. package/dist/components/homepage/layout/use-el-size.js +0 -40
  202. package/dist/components/homepage/layout/use-mobile-layout.d.ts +0 -1
  203. package/dist/components/homepage/layout/use-mobile-layout.js +0 -6
  204. package/dist/components/icons/blank.d.ts +0 -3
  205. package/dist/components/icons/blank.js +0 -4
  206. package/dist/components/icons/brain.d.ts +0 -2
  207. package/dist/components/icons/brain.js +0 -4
  208. package/dist/components/icons/clone.d.ts +0 -2
  209. package/dist/components/icons/clone.js +0 -2
  210. package/dist/components/icons/code-hike.d.ts +0 -3
  211. package/dist/components/icons/code-hike.js +0 -4
  212. package/dist/components/icons/cubes.d.ts +0 -3
  213. package/dist/components/icons/cubes.js +0 -4
  214. package/dist/components/icons/editor.d.ts +0 -3
  215. package/dist/components/icons/editor.js +0 -4
  216. package/dist/components/icons/js.d.ts +0 -3
  217. package/dist/components/icons/js.js +0 -4
  218. package/dist/components/icons/music.d.ts +0 -2
  219. package/dist/components/icons/music.js +0 -4
  220. package/dist/components/icons/next.d.ts +0 -4
  221. package/dist/components/icons/next.js +0 -4
  222. package/dist/components/icons/overlay.d.ts +0 -3
  223. package/dist/components/icons/overlay.js +0 -4
  224. package/dist/components/icons/prompt-to-video.d.ts +0 -2
  225. package/dist/components/icons/prompt-to-video.js +0 -4
  226. package/dist/components/icons/recorder.d.ts +0 -3
  227. package/dist/components/icons/recorder.js +0 -4
  228. package/dist/components/icons/remix.d.ts +0 -3
  229. package/dist/components/icons/remix.js +0 -4
  230. package/dist/components/icons/render-server.d.ts +0 -3
  231. package/dist/components/icons/render-server.js +0 -4
  232. package/dist/components/icons/skia.d.ts +0 -3
  233. package/dist/components/icons/skia.js +0 -4
  234. package/dist/components/icons/stargazer.d.ts +0 -3
  235. package/dist/components/icons/stargazer.js +0 -4
  236. package/dist/components/icons/still.d.ts +0 -3
  237. package/dist/components/icons/still.js +0 -4
  238. package/dist/components/icons/tailwind.d.ts +0 -3
  239. package/dist/components/icons/tailwind.js +0 -4
  240. package/dist/components/icons/tiktok.d.ts +0 -3
  241. package/dist/components/icons/tiktok.js +0 -4
  242. package/dist/components/icons/timeline.d.ts +0 -3
  243. package/dist/components/icons/timeline.js +0 -4
  244. package/dist/components/icons/ts.d.ts +0 -3
  245. package/dist/components/icons/ts.js +0 -4
  246. package/dist/components/icons/tts.d.ts +0 -3
  247. package/dist/components/icons/tts.js +0 -4
  248. package/dist/components/icons/undo.d.ts +0 -3
  249. package/dist/components/icons/undo.js +0 -2
  250. package/dist/components/icons/vercel.d.ts +0 -4
  251. package/dist/components/icons/vercel.js +0 -4
  252. package/dist/components/icons/waveform.d.ts +0 -3
  253. package/dist/components/icons/waveform.js +0 -4
  254. package/dist/components/prompts/CardLikeButton.d.ts +0 -5
  255. package/dist/components/prompts/CardLikeButton.js +0 -49
  256. package/dist/components/prompts/ClipboardIcon.d.ts +0 -5
  257. package/dist/components/prompts/ClipboardIcon.js +0 -4
  258. package/dist/components/prompts/CopyPromptButton.d.ts +0 -4
  259. package/dist/components/prompts/CopyPromptButton.js +0 -13
  260. package/dist/components/prompts/LikeButton.d.ts +0 -5
  261. package/dist/components/prompts/LikeButton.js +0 -49
  262. package/dist/components/prompts/MuxPlayer.d.ts +0 -8
  263. package/dist/components/prompts/MuxPlayer.js +0 -21
  264. package/dist/components/prompts/NewBackButton.d.ts +0 -5
  265. package/dist/components/prompts/NewBackButton.js +0 -8
  266. package/dist/components/prompts/Page.d.ts +0 -8
  267. package/dist/components/prompts/Page.js +0 -7
  268. package/dist/components/prompts/PromptsGallery.d.ts +0 -7
  269. package/dist/components/prompts/PromptsGallery.js +0 -60
  270. package/dist/components/prompts/PromptsShow.d.ts +0 -5
  271. package/dist/components/prompts/PromptsShow.js +0 -17
  272. package/dist/components/prompts/PromptsSubmit.d.ts +0 -2
  273. package/dist/components/prompts/PromptsSubmit.js +0 -173
  274. package/dist/components/prompts/config.d.ts +0 -1
  275. package/dist/components/prompts/config.js +0 -1
  276. package/dist/components/prompts/prompt-helpers.d.ts +0 -8
  277. package/dist/components/prompts/prompt-helpers.js +0 -76
  278. package/dist/components/prompts/prompt-types.d.ts +0 -14
  279. package/dist/components/prompts/prompt-types.js +0 -0
  280. package/dist/components/prompts/use-heart-animation.d.ts +0 -5
  281. package/dist/components/prompts/use-heart-animation.js +0 -29
  282. package/dist/components/team/TeamCards.d.ts +0 -6
  283. package/dist/components/team/TeamCards.js +0 -19
  284. package/dist/components/team/TitleTeamCards.d.ts +0 -2
  285. package/dist/components/team/TitleTeamCards.js +0 -6
  286. package/dist/components/team.d.ts +0 -3
  287. package/dist/components/team.js +0 -14
  288. package/dist/components/template-modal-content.d.ts +0 -5
  289. package/dist/components/template-modal-content.js +0 -73
  290. package/dist/components/templates.d.ts +0 -2
  291. package/dist/components/templates.js +0 -27
  292. package/dist/helpers/mobile-layout.d.ts +0 -1
  293. package/dist/helpers/mobile-layout.js +0 -6
  294. package/dist/helpers/use-el-size.d.ts +0 -5
  295. package/dist/helpers/use-el-size.js +0 -40
  296. package/dist/main.d.ts +0 -1
  297. package/dist/main.js +0 -6
  298. package/dist/prompts-show.d.ts +0 -1
  299. package/dist/prompts-show.js +0 -20
  300. package/dist/prompts-submit.d.ts +0 -1
  301. package/dist/prompts-submit.js +0 -6
  302. package/dist/prompts.d.ts +0 -1
  303. package/dist/prompts.js +0 -6
  304. package/dist/team.d.ts +0 -1
@@ -1,4 +1,19 @@
1
+ var __create = Object.create;
2
+ var __getProtoOf = Object.getPrototypeOf;
1
3
  var __defProp = Object.defineProperty;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __toESM = (mod, isNodeMode, target) => {
7
+ target = mod != null ? __create(__getProtoOf(mod)) : {};
8
+ const to = isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target;
9
+ for (let key of __getOwnPropNames(mod))
10
+ if (!__hasOwnProp.call(to, key))
11
+ __defProp(to, key, {
12
+ get: () => mod[key],
13
+ enumerable: true
14
+ });
15
+ return to;
16
+ };
2
17
  var __export = (target, all) => {
3
18
  for (var name in all)
4
19
  __defProp(target, name, {
@@ -1,4 +1,19 @@
1
+ var __create = Object.create;
2
+ var __getProtoOf = Object.getPrototypeOf;
1
3
  var __defProp = Object.defineProperty;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __toESM = (mod, isNodeMode, target) => {
7
+ target = mod != null ? __create(__getProtoOf(mod)) : {};
8
+ const to = isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target;
9
+ for (let key of __getOwnPropNames(mod))
10
+ if (!__hasOwnProp.call(to, key))
11
+ __defProp(to, key, {
12
+ get: () => mod[key],
13
+ enumerable: true
14
+ });
15
+ return to;
16
+ };
2
17
  var __export = (target, all) => {
3
18
  for (var name in all)
4
19
  __defProp(target, name, {
@@ -845,7 +860,8 @@ import { useMemo as useMemo27 } from "react";
845
860
  import { createContext as createContext20, useContext as useContext31, useMemo as useMemo26 } from "react";
846
861
  import { jsx as jsx26 } from "react/jsx-runtime";
847
862
  import { jsx as jsx27 } from "react/jsx-runtime";
848
- import React27, { createContext as createContext21 } from "react";
863
+ import React27 from "react";
864
+ import React28, { createContext as createContext21 } from "react";
849
865
  import { useContext as useContext32, useMemo as useMemo28, useState as useState17 } from "react";
850
866
  import { useContext as useContext33 } from "react";
851
867
  import { useCallback as useCallback15 } from "react";
@@ -858,7 +874,7 @@ import {
858
874
  useState as useState18
859
875
  } from "react";
860
876
  import { jsx as jsx28 } from "react/jsx-runtime";
861
- import React29, {
877
+ import React30, {
862
878
  forwardRef as forwardRef9,
863
879
  useContext as useContext35,
864
880
  useEffect as useEffect17,
@@ -870,14 +886,14 @@ import React29, {
870
886
  import { useEffect as useEffect16 } from "react";
871
887
  import { jsx as jsx29 } from "react/jsx-runtime";
872
888
  import { jsx as jsx30 } from "react/jsx-runtime";
873
- import React31, { useMemo as useMemo31 } from "react";
889
+ import React32, { useMemo as useMemo31 } from "react";
874
890
  import { jsx as jsx31 } from "react/jsx-runtime";
875
891
  import { Children, forwardRef as forwardRef10, useMemo as useMemo32 } from "react";
876
- import React32 from "react";
877
- import React33, { createContext as createContext22 } from "react";
892
+ import React33 from "react";
893
+ import React34, { createContext as createContext22 } from "react";
878
894
  import { jsx as jsx32 } from "react/jsx-runtime";
879
895
  import { jsx as jsx33 } from "react/jsx-runtime";
880
- import React35 from "react";
896
+ import React36 from "react";
881
897
  import { forwardRef as forwardRef12, useCallback as useCallback16, useContext as useContext37 } from "react";
882
898
  import {
883
899
  forwardRef as forwardRef11,
@@ -935,7 +951,7 @@ var useIsPlayer = () => {
935
951
  function truthy(value) {
936
952
  return Boolean(value);
937
953
  }
938
- var VERSION = "4.0.430";
954
+ var VERSION = "4.0.432";
939
955
  var checkMultipleRemotionVersions = () => {
940
956
  if (typeof globalThis === "undefined") {
941
957
  return;
@@ -1093,6 +1109,7 @@ __export2(exports_timeline_position_state, {
1093
1109
  useTimelineSetFrame: () => useTimelineSetFrame,
1094
1110
  useTimelinePosition: () => useTimelinePosition,
1095
1111
  usePlayingState: () => usePlayingState,
1112
+ useAbsoluteTimelinePosition: () => useAbsoluteTimelinePosition,
1096
1113
  persistCurrentFrame: () => persistCurrentFrame,
1097
1114
  getInitialFrameState: () => getInitialFrameState,
1098
1115
  getFrameForComposition: () => getFrameForComposition
@@ -1489,9 +1506,8 @@ var getFrameForComposition = (composition) => {
1489
1506
  }
1490
1507
  return window.remotion_initialFrame ?? 0;
1491
1508
  };
1492
- var useTimelinePosition = () => {
1509
+ var useTimelinePositionFromContext = (state) => {
1493
1510
  const videoConfig = useVideo();
1494
- const state = useContext5(TimelineContext);
1495
1511
  const env = useRemotionEnvironment();
1496
1512
  if (!videoConfig) {
1497
1513
  return typeof window === "undefined" ? 0 : window.remotion_initialFrame ?? 0;
@@ -1499,6 +1515,14 @@ var useTimelinePosition = () => {
1499
1515
  const unclamped = state.frame[videoConfig.id] ?? (env.isPlayer ? 0 : getFrameForComposition(videoConfig.id));
1500
1516
  return Math.min(videoConfig.durationInFrames - 1, unclamped);
1501
1517
  };
1518
+ var useTimelinePosition = () => {
1519
+ const state = useContext5(TimelineContext);
1520
+ return useTimelinePositionFromContext(state);
1521
+ };
1522
+ var useAbsoluteTimelinePosition = () => {
1523
+ const state = useContext5(AbsoluteTimeContext);
1524
+ return useTimelinePositionFromContext(state);
1525
+ };
1502
1526
  var useTimelineSetFrame = () => {
1503
1527
  const { setFrame } = useContext5(SetTimelineContext);
1504
1528
  return setFrame;
@@ -1766,6 +1790,19 @@ var TimelineContext = createContext9({
1766
1790
  },
1767
1791
  audioAndVideoTags: { current: [] }
1768
1792
  });
1793
+ var AbsoluteTimeContext = createContext9({
1794
+ frame: {},
1795
+ playing: false,
1796
+ playbackRate: 1,
1797
+ rootId: "",
1798
+ imperativePlaying: {
1799
+ current: false
1800
+ },
1801
+ setPlaybackRate: () => {
1802
+ throw new Error("default");
1803
+ },
1804
+ audioAndVideoTags: { current: [] }
1805
+ });
1769
1806
  var TimelineContextProvider = ({ children, frameState }) => {
1770
1807
  const [playing, setPlaying] = useState2(false);
1771
1808
  const imperativePlaying = useRef(false);
@@ -1818,11 +1855,14 @@ var TimelineContextProvider = ({ children, frameState }) => {
1818
1855
  setPlaying
1819
1856
  };
1820
1857
  }, []);
1821
- return /* @__PURE__ */ jsx4(TimelineContext.Provider, {
1858
+ return /* @__PURE__ */ jsx4(AbsoluteTimeContext.Provider, {
1822
1859
  value: timelineContextValue,
1823
- children: /* @__PURE__ */ jsx4(SetTimelineContext.Provider, {
1824
- value: setTimelineContextValue,
1825
- children
1860
+ children: /* @__PURE__ */ jsx4(TimelineContext.Provider, {
1861
+ value: timelineContextValue,
1862
+ children: /* @__PURE__ */ jsx4(SetTimelineContext.Provider, {
1863
+ value: setTimelineContextValue,
1864
+ children
1865
+ })
1826
1866
  })
1827
1867
  });
1828
1868
  };
@@ -2006,22 +2046,28 @@ var SequenceVisibilityToggleContext = React8.createContext({
2006
2046
  throw new Error("SequenceVisibilityToggle not initialized");
2007
2047
  }
2008
2048
  });
2009
- var SequenceControlOverrideContext = React8.createContext({
2010
- overrides: {},
2011
- setOverride: () => {
2012
- throw new Error("SequenceControlOverrideContext not initialized");
2049
+ var VisualModeOverridesContext = React8.createContext({
2050
+ dragOverrides: {},
2051
+ setDragOverrides: () => {
2052
+ throw new Error("VisualModeOverridesContext not initialized");
2013
2053
  },
2014
- clearOverrides: () => {
2015
- throw new Error("SequenceControlOverrideContext not initialized");
2016
- }
2054
+ clearDragOverrides: () => {
2055
+ throw new Error("VisualModeOverridesContext not initialized");
2056
+ },
2057
+ codeValues: {},
2058
+ setCodeValues: () => {
2059
+ throw new Error("VisualModeOverridesContext not initialized");
2060
+ },
2061
+ visualModeEnabled: false
2017
2062
  });
2018
- var SequenceManagerProvider = ({ children }) => {
2063
+ var SequenceManagerProvider = ({ children, visualModeEnabled }) => {
2019
2064
  const [sequences, setSequences] = useState4([]);
2020
2065
  const [hidden, setHidden] = useState4({});
2021
- const [controlOverrides, setControlOverrides] = useState4({});
2022
- const controlOverridesRef = useRef3(controlOverrides);
2023
- controlOverridesRef.current = controlOverrides;
2024
- const setOverride = useCallback3((sequenceId, key, value) => {
2066
+ const [dragOverrides, setControlOverrides] = useState4({});
2067
+ const controlOverridesRef = useRef3(dragOverrides);
2068
+ controlOverridesRef.current = dragOverrides;
2069
+ const [codeValues, setCodeValuesMapState] = useState4({});
2070
+ const setDragOverrides = useCallback3((sequenceId, key, value) => {
2025
2071
  setControlOverrides((prev) => ({
2026
2072
  ...prev,
2027
2073
  [sequenceId]: {
@@ -2030,7 +2076,7 @@ var SequenceManagerProvider = ({ children }) => {
2030
2076
  }
2031
2077
  }));
2032
2078
  }, []);
2033
- const clearOverrides = useCallback3((sequenceId) => {
2079
+ const clearDragOverrides = useCallback3((sequenceId) => {
2034
2080
  setControlOverrides((prev) => {
2035
2081
  if (!prev[sequenceId]) {
2036
2082
  return prev;
@@ -2040,6 +2086,22 @@ var SequenceManagerProvider = ({ children }) => {
2040
2086
  return next;
2041
2087
  });
2042
2088
  }, []);
2089
+ const setCodeValues = useCallback3((sequenceId, values) => {
2090
+ setCodeValuesMapState((prev) => {
2091
+ if (prev[sequenceId] === values) {
2092
+ return prev;
2093
+ }
2094
+ if (values === null) {
2095
+ if (!(sequenceId in prev)) {
2096
+ return prev;
2097
+ }
2098
+ const next = { ...prev };
2099
+ delete next[sequenceId];
2100
+ return next;
2101
+ }
2102
+ return { ...prev, [sequenceId]: values };
2103
+ });
2104
+ }, []);
2043
2105
  const registerSequence = useCallback3((seq) => {
2044
2106
  setSequences((seqs) => {
2045
2107
  return [...seqs, seq];
@@ -2063,16 +2125,26 @@ var SequenceManagerProvider = ({ children }) => {
2063
2125
  }, [hidden]);
2064
2126
  const overrideContext = useMemo9(() => {
2065
2127
  return {
2066
- overrides: controlOverrides,
2067
- setOverride,
2068
- clearOverrides
2128
+ visualModeEnabled,
2129
+ dragOverrides,
2130
+ setDragOverrides,
2131
+ clearDragOverrides,
2132
+ codeValues,
2133
+ setCodeValues
2069
2134
  };
2070
- }, [controlOverrides, setOverride, clearOverrides]);
2135
+ }, [
2136
+ visualModeEnabled,
2137
+ dragOverrides,
2138
+ setDragOverrides,
2139
+ clearDragOverrides,
2140
+ codeValues,
2141
+ setCodeValues
2142
+ ]);
2071
2143
  return /* @__PURE__ */ jsx7(SequenceManager.Provider, {
2072
2144
  value: sequenceContext,
2073
2145
  children: /* @__PURE__ */ jsx7(SequenceVisibilityToggleContext.Provider, {
2074
2146
  value: hiddenContext,
2075
- children: /* @__PURE__ */ jsx7(SequenceControlOverrideContext.Provider, {
2147
+ children: /* @__PURE__ */ jsx7(VisualModeOverridesContext.Provider, {
2076
2148
  value: overrideContext,
2077
2149
  children
2078
2150
  })
@@ -2237,7 +2309,8 @@ var RegularSequenceRefForwardingFunction = ({
2237
2309
  };
2238
2310
  var RegularSequence = forwardRef2(RegularSequenceRefForwardingFunction);
2239
2311
  var PremountedPostmountedSequenceRefForwardingFunction = (props, ref) => {
2240
- const frame = useCurrentFrame();
2312
+ const parentPremountContext = useContext13(PremountContext);
2313
+ const frame = useCurrentFrame() - parentPremountContext.premountFramesRemaining;
2241
2314
  if (props.layout === "none") {
2242
2315
  throw new Error('`<Sequence>` with `premountFor` and `postmountFor` props does not support layout="none"');
2243
2316
  }
@@ -2271,9 +2344,8 @@ var PremountedPostmountedSequenceRefForwardingFunction = (props, ref) => {
2271
2344
  styleWhilePremounted,
2272
2345
  styleWhilePostmounted
2273
2346
  ]);
2274
- const parentPremountContext = useContext13(PremountContext);
2275
2347
  const { playing } = useContext13(TimelineContext);
2276
- const premountFramesRemaining = parentPremountContext.premountFramesRemaining + (premountingActive ? from - frame : 0);
2348
+ const premountFramesRemaining = premountingActive ? from - frame : 0;
2277
2349
  const premountContextValue = useMemo10(() => {
2278
2350
  return {
2279
2351
  premountFramesRemaining,
@@ -3418,6 +3490,63 @@ var SharedAudioContextProvider = ({ children, numberOfAudioTags, audioLatencyHin
3418
3490
  latencyHint: audioLatencyHint,
3419
3491
  audioEnabled
3420
3492
  });
3493
+ const audioSyncAnchor = useMemo15(() => ({ value: 0 }), []);
3494
+ const prevEndTimes = useRef7({ scheduledEndTime: null, mediaEndTime: null });
3495
+ const scheduleAudioNode = useMemo15(() => {
3496
+ return ({
3497
+ node,
3498
+ mediaTimestamp,
3499
+ targetTime,
3500
+ currentTime,
3501
+ sequenceEndTime,
3502
+ sequenceStartTime,
3503
+ debugAudioScheduling
3504
+ }) => {
3505
+ if (!audioContext) {
3506
+ throw new Error("Audio context not found");
3507
+ }
3508
+ const bufferDuration = node.buffer?.duration ?? 0;
3509
+ const unclampedMediaEndTime = mediaTimestamp + bufferDuration;
3510
+ const needsTrimEnd = unclampedMediaEndTime > sequenceEndTime;
3511
+ const needsTrimStart = mediaTimestamp < sequenceStartTime;
3512
+ const offsetBecauseOfTrim = needsTrimStart ? sequenceStartTime - mediaTimestamp : 0;
3513
+ const offsetBecauseOfTooLate = targetTime < 0 ? -targetTime : 0;
3514
+ const offset = offsetBecauseOfTrim + offsetBecauseOfTooLate;
3515
+ const duration = needsTrimEnd ? bufferDuration - Math.max(0, unclampedMediaEndTime - sequenceEndTime) - offset : bufferDuration - offset;
3516
+ const scheduledTime = targetTime + currentTime + offset;
3517
+ if (offset < 0) {
3518
+ throw new Error("offset < 0: " + JSON.stringify({
3519
+ offset,
3520
+ targetTime,
3521
+ currentTime,
3522
+ offsetBecauseOfTrim,
3523
+ offsetBecauseOfTooLate
3524
+ }));
3525
+ }
3526
+ if (duration > 0) {
3527
+ node.start(scheduledTime, offset, duration);
3528
+ }
3529
+ const scheduledEndTime = scheduledTime + duration / node.playbackRate.value;
3530
+ const mediaTime = mediaTimestamp + offset;
3531
+ const mediaEndTime = mediaTime + duration;
3532
+ const latency = audioContext.baseLatency + audioContext.outputLatency;
3533
+ const timeDiff = scheduledTime - currentTime - latency;
3534
+ const prev = prevEndTimes.current;
3535
+ const scheduledMismatch = prev.scheduledEndTime !== null && Math.abs(scheduledTime - prev.scheduledEndTime) > 0.001;
3536
+ const mediaMismatch = prev.mediaEndTime !== null && Math.abs(mediaTime - prev.mediaEndTime) > 0.001;
3537
+ if (debugAudioScheduling) {
3538
+ Log.info({ logLevel, tag: "audio-scheduling" }, "scheduled %c%s%c %s %c%s%c %s %c%s%c %s %s %s", scheduledMismatch ? "color: red; font-weight: bold" : "", scheduledTime.toFixed(4), "", scheduledEndTime.toFixed(4), mediaMismatch ? "color: red; font-weight: bold" : "", mediaTime.toFixed(4), "", mediaEndTime.toFixed(4), duration < 0 ? "color: red; font-weight: bold" : timeDiff < 0 ? "color: red; font-weight: bold" : "color: blue; font-weight: bold", duration < 0 ? "missed " + Math.abs(offset).toFixed(2) + "s" : Math.abs(timeDiff).toFixed(2) + (timeDiff < 0 ? " delay" : " ahead"), "", "current=" + currentTime.toFixed(4), "offset=" + offset.toFixed(4), "latency=" + latency.toFixed(4), "state=" + audioContext.state);
3539
+ }
3540
+ prev.scheduledEndTime = scheduledEndTime;
3541
+ prev.mediaEndTime = mediaEndTime;
3542
+ return duration > 0 ? {
3543
+ type: "started",
3544
+ scheduledTime
3545
+ } : {
3546
+ type: "not-started"
3547
+ };
3548
+ };
3549
+ }, [audioContext, logLevel]);
3421
3550
  const refs = useMemo15(() => {
3422
3551
  return new Array(numberOfAudioTags).fill(true).map(() => {
3423
3552
  const ref = createRef2();
@@ -3564,7 +3693,9 @@ var SharedAudioContextProvider = ({ children, numberOfAudioTags, audioLatencyHin
3564
3693
  updateAudio,
3565
3694
  playAllAudios,
3566
3695
  numberOfAudioTags,
3567
- audioContext
3696
+ audioContext,
3697
+ audioSyncAnchor,
3698
+ scheduleAudioNode
3568
3699
  };
3569
3700
  }, [
3570
3701
  numberOfAudioTags,
@@ -3572,7 +3703,9 @@ var SharedAudioContextProvider = ({ children, numberOfAudioTags, audioLatencyHin
3572
3703
  registerAudio,
3573
3704
  unregisterAudio,
3574
3705
  updateAudio,
3575
- audioContext
3706
+ audioContext,
3707
+ audioSyncAnchor,
3708
+ scheduleAudioNode
3576
3709
  ]);
3577
3710
  return /* @__PURE__ */ jsxs2(SharedAudioContext.Provider, {
3578
3711
  value,
@@ -5713,6 +5846,7 @@ var ImgRefForwarding = ({
5713
5846
  imageRef.current.setAttribute("src", newSrc);
5714
5847
  }, timeout);
5715
5848
  }, []);
5849
+ const { delayRender: delayRender2, continueRender: continueRender2, cancelRender: cancelRender2 } = useDelayRender();
5716
5850
  const didGetError = useCallback12((e) => {
5717
5851
  if (!errors.current) {
5718
5852
  return;
@@ -5728,9 +5862,10 @@ var ImgRefForwarding = ({
5728
5862
  retryIn(backoff);
5729
5863
  return;
5730
5864
  }
5731
- cancelRender("Error loading image with src: " + imageRef.current?.src);
5732
- }, [maxRetries, onError, retryIn]);
5733
- const { delayRender: delayRender2, continueRender: continueRender2 } = useDelayRender();
5865
+ try {
5866
+ cancelRender2("Error loading image with src: " + imageRef.current?.src);
5867
+ } catch {}
5868
+ }, [cancelRender2, maxRetries, onError, retryIn]);
5734
5869
  if (typeof window !== "undefined") {
5735
5870
  const isPremounting = Boolean(sequenceContext?.premounting);
5736
5871
  const isPostmounting = Boolean(sequenceContext?.postmounting);
@@ -5775,7 +5910,7 @@ var ImgRefForwarding = ({
5775
5910
  current.src = actualSrc;
5776
5911
  current.decode().then(onComplete).catch((err) => {
5777
5912
  console.warn(err);
5778
- if (current.complete) {
5913
+ if (current.complete && current.naturalWidth > 0 && current.naturalHeight > 0) {
5779
5914
  onComplete();
5780
5915
  } else {
5781
5916
  current.addEventListener("load", onComplete);
@@ -5975,6 +6110,26 @@ var makeDefaultPreviewCSS = (scope, backgroundColor) => {
5975
6110
  }
5976
6111
  `;
5977
6112
  };
6113
+ var getEffectiveVisualModeValue = ({
6114
+ codeValue,
6115
+ runtimeValue,
6116
+ dragOverrideValue,
6117
+ defaultValue
6118
+ }) => {
6119
+ if (dragOverrideValue !== undefined) {
6120
+ return dragOverrideValue;
6121
+ }
6122
+ if (!codeValue) {
6123
+ return runtimeValue;
6124
+ }
6125
+ if (!codeValue.canUpdate) {
6126
+ return runtimeValue;
6127
+ }
6128
+ if (codeValue.codeValue === undefined) {
6129
+ return defaultValue;
6130
+ }
6131
+ return codeValue.codeValue;
6132
+ };
5978
6133
  var REMOTION_STUDIO_CONTAINER_ELEMENT = "__remotion-studio-container";
5979
6134
  var getPreviewDomElement = () => {
5980
6135
  return document.getElementById(REMOTION_STUDIO_CONTAINER_ELEMENT);
@@ -6037,7 +6192,8 @@ var RemotionRootContexts = ({
6037
6192
  videoEnabled,
6038
6193
  audioEnabled,
6039
6194
  frameState,
6040
- nonceContextSeed
6195
+ nonceContextSeed,
6196
+ visualModeEnabled
6041
6197
  }) => {
6042
6198
  const nonceContext = useMemo27(() => {
6043
6199
  let counter = 0;
@@ -6060,6 +6216,7 @@ var RemotionRootContexts = ({
6060
6216
  children: /* @__PURE__ */ jsx27(EditorPropsProvider, {
6061
6217
  children: /* @__PURE__ */ jsx27(PrefetchProvider, {
6062
6218
  children: /* @__PURE__ */ jsx27(SequenceManagerProvider, {
6219
+ visualModeEnabled,
6063
6220
  children: /* @__PURE__ */ jsx27(SharedAudioContextProvider, {
6064
6221
  numberOfAudioTags,
6065
6222
  audioLatencyHint,
@@ -6242,6 +6399,7 @@ var resolveVideoConfigOrCatch = (params) => {
6242
6399
  };
6243
6400
  }
6244
6401
  };
6402
+ var SequenceStackTracesUpdateContext = React27.createContext(() => {});
6245
6403
  var getEnvVariables = () => {
6246
6404
  if (getRemotionEnvironment().isRendering) {
6247
6405
  const param = window.remotion_envVariables;
@@ -6267,7 +6425,7 @@ var setupEnvVariables = () => {
6267
6425
  window.process.env[key] = env[key];
6268
6426
  });
6269
6427
  };
6270
- var CurrentScaleContext = React27.createContext(null);
6428
+ var CurrentScaleContext = React28.createContext(null);
6271
6429
  var PreviewSizeContext = createContext21({
6272
6430
  setSize: () => {
6273
6431
  return;
@@ -6306,34 +6464,62 @@ var useSchema = (schema, currentValue) => {
6306
6464
  return earlyReturn;
6307
6465
  }
6308
6466
  const [overrideId] = useState17(() => String(Math.random()));
6309
- const { overrides } = useContext32(SequenceControlOverrideContext);
6310
- return useMemo28(() => {
6467
+ const {
6468
+ visualModeEnabled,
6469
+ dragOverrides: overrides,
6470
+ codeValues
6471
+ } = useContext32(VisualModeOverridesContext);
6472
+ const controls = useMemo28(() => {
6473
+ if (!visualModeEnabled) {
6474
+ return;
6475
+ }
6311
6476
  if (schema === null || currentValue === null) {
6477
+ return;
6478
+ }
6479
+ return {
6480
+ schema,
6481
+ currentValue,
6482
+ overrideId
6483
+ };
6484
+ }, [schema, currentValue, overrideId, visualModeEnabled]);
6485
+ return useMemo28(() => {
6486
+ if (controls === undefined || currentValue === null || schema === null || !visualModeEnabled) {
6312
6487
  return {
6313
6488
  controls: undefined,
6314
6489
  values: currentValue ?? {}
6315
6490
  };
6316
6491
  }
6317
6492
  const overrideValues = overrides[overrideId] ?? {};
6318
- const merged = { ...currentValue };
6319
- for (const key of Object.keys(overrideValues)) {
6320
- if (key in merged) {
6321
- merged[key] = overrideValues[key];
6322
- }
6493
+ const propStatus = codeValues[overrideId];
6494
+ const currentValueKeys = Object.keys(currentValue);
6495
+ const keysToUpdate = new Set(currentValueKeys).values();
6496
+ const merged = {};
6497
+ for (const key of keysToUpdate) {
6498
+ const codeValueStatus = propStatus?.[key] ?? null;
6499
+ merged[key] = getEffectiveVisualModeValue({
6500
+ codeValue: codeValueStatus,
6501
+ runtimeValue: currentValue[key],
6502
+ dragOverrideValue: overrideValues[key],
6503
+ defaultValue: schema[key]?.default
6504
+ });
6323
6505
  }
6324
6506
  return {
6325
- controls: {
6326
- schema,
6327
- currentValue,
6328
- overrideId
6329
- },
6507
+ controls,
6330
6508
  values: merged
6331
6509
  };
6332
- }, [schema, currentValue, overrides, overrideId]);
6510
+ }, [
6511
+ controls,
6512
+ currentValue,
6513
+ overrideId,
6514
+ overrides,
6515
+ codeValues,
6516
+ schema,
6517
+ visualModeEnabled
6518
+ ]);
6333
6519
  };
6334
6520
  var useSequenceControlOverride = (key) => {
6335
6521
  const seqContext = useContext33(SequenceContext);
6336
- const { overrides } = useContext33(SequenceControlOverrideContext);
6522
+ const { dragOverrides: overrides } = useContext33(VisualModeOverridesContext);
6337
6523
  if (!seqContext) {
6338
6524
  return;
6339
6525
  }
@@ -6589,7 +6775,7 @@ var VideoForDevelopmentRefForwardingFunction = (props2, ref) => {
6589
6775
  ref: videoRef
6590
6776
  });
6591
6777
  }, [context.audioContext]);
6592
- const effectToUse = React29.useInsertionEffect ?? React29.useLayoutEffect;
6778
+ const effectToUse = React30.useInsertionEffect ?? React30.useLayoutEffect;
6593
6779
  effectToUse(() => {
6594
6780
  return () => {
6595
6781
  requestAnimationFrame(() => {
@@ -6948,18 +7134,18 @@ var OffthreadVideo = ({
6948
7134
  addSequenceStackTraces(OffthreadVideo);
6949
7135
  var WATCH_REMOTION_STATIC_FILES = "remotion_staticFilesChanged";
6950
7136
  function useRemotionContexts() {
6951
- const compositionManagerCtx = React31.useContext(CompositionManager);
6952
- const timelineContext = React31.useContext(TimelineContext);
6953
- const setTimelineContext = React31.useContext(SetTimelineContext);
6954
- const sequenceContext = React31.useContext(SequenceContext);
6955
- const nonceContext = React31.useContext(NonceContext);
6956
- const canUseRemotionHooksContext = React31.useContext(CanUseRemotionHooks);
6957
- const preloadContext = React31.useContext(PreloadContext);
6958
- const resolveCompositionContext = React31.useContext(ResolveCompositionContext);
6959
- const renderAssetManagerContext = React31.useContext(RenderAssetManager);
6960
- const sequenceManagerContext = React31.useContext(SequenceManager);
6961
- const bufferManagerContext = React31.useContext(BufferingContextReact);
6962
- const logLevelContext = React31.useContext(LogLevelContext);
7137
+ const compositionManagerCtx = React32.useContext(CompositionManager);
7138
+ const timelineContext = React32.useContext(TimelineContext);
7139
+ const setTimelineContext = React32.useContext(SetTimelineContext);
7140
+ const sequenceContext = React32.useContext(SequenceContext);
7141
+ const nonceContext = React32.useContext(NonceContext);
7142
+ const canUseRemotionHooksContext = React32.useContext(CanUseRemotionHooks);
7143
+ const preloadContext = React32.useContext(PreloadContext);
7144
+ const resolveCompositionContext = React32.useContext(ResolveCompositionContext);
7145
+ const renderAssetManagerContext = React32.useContext(RenderAssetManager);
7146
+ const sequenceManagerContext = React32.useContext(SequenceManager);
7147
+ const bufferManagerContext = React32.useContext(BufferingContextReact);
7148
+ const logLevelContext = React32.useContext(LogLevelContext);
6963
7149
  return useMemo31(() => ({
6964
7150
  compositionManagerCtx,
6965
7151
  timelineContext,
@@ -7034,6 +7220,7 @@ var Internals = {
7034
7220
  useUnsafeVideoConfig,
7035
7221
  useFrameForVolumeProp,
7036
7222
  useTimelinePosition,
7223
+ useAbsoluteTimelinePosition,
7037
7224
  evaluateVolume,
7038
7225
  getAbsoluteSrc,
7039
7226
  Timeline: exports_timeline_position_state,
@@ -7043,8 +7230,9 @@ var Internals = {
7043
7230
  VideoForPreview,
7044
7231
  CompositionManager,
7045
7232
  CompositionSetters,
7046
- SequenceControlOverrideContext,
7233
+ VisualModeOverridesContext,
7047
7234
  SequenceManager,
7235
+ SequenceStackTracesUpdateContext,
7048
7236
  SequenceVisibilityToggleContext,
7049
7237
  useSchema,
7050
7238
  useSequenceControlOverride,
@@ -7128,7 +7316,9 @@ var Internals = {
7128
7316
  TimelinePosition: exports_timeline_position_state,
7129
7317
  DelayRenderContextType,
7130
7318
  TimelineContext,
7131
- RenderAssetManagerProvider
7319
+ AbsoluteTimeContext,
7320
+ RenderAssetManagerProvider,
7321
+ getEffectiveVisualModeValue
7132
7322
  };
7133
7323
  var NUMBER = "[-+]?\\d*\\.?\\d+";
7134
7324
  var PERCENTAGE = NUMBER + "%";
@@ -7157,9 +7347,9 @@ var validateFrame = ({
7157
7347
  }
7158
7348
  };
7159
7349
  var flattenChildren = (children) => {
7160
- const childrenArray = React32.Children.toArray(children);
7350
+ const childrenArray = React33.Children.toArray(children);
7161
7351
  return childrenArray.reduce((flatChildren, child) => {
7162
- if (child.type === React32.Fragment) {
7352
+ if (child.type === React33.Fragment) {
7163
7353
  return flatChildren.concat(flattenChildren(child.props.children));
7164
7354
  }
7165
7355
  flatChildren.push(child);
@@ -7180,7 +7370,7 @@ var IsNotInsideSeriesProvider = ({ children }) => {
7180
7370
  });
7181
7371
  };
7182
7372
  var useRequireToBeInsideSeries = () => {
7183
- const isInsideSeries = React33.useContext(IsInsideSeriesContext);
7373
+ const isInsideSeries = React34.useContext(IsInsideSeriesContext);
7184
7374
  if (!isInsideSeries) {
7185
7375
  throw new Error("This component must be inside a <Series /> component.");
7186
7376
  }