@remotion/cli 4.0.0-alpha4 → 4.0.0-alpha5

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 (471) hide show
  1. package/dist/ansi/ansi-diff.d.ts +2 -1
  2. package/dist/ansi/ansi-diff.js +14 -20
  3. package/dist/ansi/ansi-split.d.ts +1 -0
  4. package/dist/ansi/ansi-split.js +16 -3
  5. package/dist/benchmark.js +64 -23
  6. package/dist/codemods/update-default-props.d.ts +5 -0
  7. package/dist/codemods/update-default-props.js +143 -0
  8. package/dist/color-math.d.ts +2 -0
  9. package/dist/color-math.js +11 -0
  10. package/dist/composition-prompts.d.ts +3 -4
  11. package/dist/composition-prompts.js +0 -1
  12. package/dist/compositions.js +10 -4
  13. package/dist/config/bitrate.d.ts +2 -2
  14. package/dist/config/bitrate.js +2 -2
  15. package/dist/config/browser.d.ts +1 -3
  16. package/dist/config/browser.js +2 -12
  17. package/dist/config/codec.d.ts +0 -4
  18. package/dist/config/codec.js +1 -21
  19. package/dist/config/image-format.d.ts +5 -3
  20. package/dist/config/image-format.js +32 -10
  21. package/dist/config/index.d.ts +255 -14
  22. package/dist/config/index.js +16 -49
  23. package/dist/config/jpeg-quality.d.ts +2 -0
  24. package/dist/config/jpeg-quality.js +17 -0
  25. package/dist/config/public-dir.d.ts +1 -1
  26. package/dist/config/scale.d.ts +2 -1
  27. package/dist/convert-entry-point-to-serve-url.d.ts +1 -0
  28. package/dist/convert-entry-point-to-serve-url.js +15 -0
  29. package/dist/determine-image-format.d.ts +5 -4
  30. package/dist/determine-image-format.js +17 -4
  31. package/dist/download-progress.d.ts +2 -2
  32. package/dist/download-progress.js +12 -3
  33. package/dist/editor/components/Canvas.js +3 -0
  34. package/dist/editor/components/Checkbox.d.ts +6 -0
  35. package/dist/editor/components/Checkbox.js +42 -0
  36. package/dist/editor/components/CheckerboardProvider.d.ts +4 -0
  37. package/dist/editor/components/CheckerboardProvider.js +24 -0
  38. package/dist/editor/components/CompositionSelector.js +2 -4
  39. package/dist/editor/components/CompositionSelectorItem.d.ts +3 -3
  40. package/dist/editor/components/CompositionSelectorItem.js +24 -6
  41. package/dist/editor/components/CurrentComposition.js +4 -19
  42. package/dist/editor/components/CurrentCompositionSideEffects.d.ts +3 -0
  43. package/dist/editor/components/CurrentCompositionSideEffects.js +51 -0
  44. package/dist/editor/components/Editor.js +2 -11
  45. package/dist/editor/components/EditorContent.js +1 -1
  46. package/dist/editor/components/EditorContexts.js +10 -86
  47. package/dist/editor/components/GlobalKeybindings.js +4 -0
  48. package/dist/editor/components/InitialCompositionLoader.d.ts +2 -2
  49. package/dist/editor/components/InlineAction.d.ts +7 -0
  50. package/dist/editor/components/InlineAction.js +31 -0
  51. package/dist/editor/components/KeyboardShortcutsExplainer.js +5 -4
  52. package/dist/editor/components/MediaVolumeProvider.d.ts +4 -0
  53. package/dist/editor/components/MediaVolumeProvider.js +25 -0
  54. package/dist/editor/components/Menu/MenuSubItem.d.ts +0 -1
  55. package/dist/editor/components/Menu/MenuSubItem.js +15 -3
  56. package/dist/editor/components/Menu/is-menu-item.d.ts +2 -0
  57. package/dist/editor/components/Menu/is-menu-item.js +3 -1
  58. package/dist/editor/components/Menu/styles.d.ts +4 -0
  59. package/dist/editor/components/Menu/styles.js +13 -4
  60. package/dist/editor/components/MenuToolbar.js +2 -1
  61. package/dist/editor/components/ModalContainer.d.ts +2 -0
  62. package/dist/editor/components/ModalContainer.js +12 -3
  63. package/dist/editor/components/ModalHeader.js +6 -2
  64. package/dist/editor/components/Modals.d.ts +2 -0
  65. package/dist/editor/components/Modals.js +23 -0
  66. package/dist/editor/components/ModalsProvider.d.ts +4 -0
  67. package/dist/editor/components/ModalsProvider.js +17 -0
  68. package/dist/editor/components/NewComposition/CancelButton.js +3 -0
  69. package/dist/editor/components/NewComposition/ComboBox.js +23 -15
  70. package/dist/editor/components/NewComposition/InputDragger.d.ts +4 -0
  71. package/dist/editor/components/NewComposition/InputDragger.js +12 -7
  72. package/dist/editor/components/NewComposition/MenuContent.js +14 -1
  73. package/dist/editor/components/NewComposition/NewCompDuration.js +2 -2
  74. package/dist/editor/components/NewComposition/NewComposition.js +8 -5
  75. package/dist/editor/components/NewComposition/RemInput.d.ts +14 -2
  76. package/dist/editor/components/NewComposition/RemInput.js +24 -9
  77. package/dist/editor/components/NewComposition/RemInputTypeColor.d.ts +7 -0
  78. package/dist/editor/components/NewComposition/RemInputTypeColor.js +53 -0
  79. package/dist/editor/components/NewComposition/RemTextarea.d.ts +7 -0
  80. package/dist/editor/components/NewComposition/RemTextarea.js +92 -0
  81. package/dist/editor/components/NewComposition/ValidationMessage.d.ts +2 -0
  82. package/dist/editor/components/NewComposition/ValidationMessage.js +18 -8
  83. package/dist/editor/components/Notifications/NotificationCenter.d.ts +1 -0
  84. package/dist/editor/components/Notifications/NotificationCenter.js +11 -1
  85. package/dist/editor/components/Notifications/ServerDisconnected.d.ts +0 -4
  86. package/dist/editor/components/Notifications/ServerDisconnected.js +4 -14
  87. package/dist/editor/components/PlayPause.js +6 -0
  88. package/dist/editor/components/PlaybackKeyboardShortcutsManager.js +3 -0
  89. package/dist/editor/components/PlaybackRateSelector.d.ts +0 -2
  90. package/dist/editor/components/PlaybackRateSelector.js +5 -6
  91. package/dist/editor/components/PlayerEmitterContext.d.ts +4 -0
  92. package/dist/editor/components/PlayerEmitterContext.js +11 -0
  93. package/dist/editor/components/Preview.d.ts +0 -1
  94. package/dist/editor/components/Preview.js +4 -4
  95. package/dist/editor/components/PreviewToolbar.js +2 -2
  96. package/dist/editor/components/QuickSwitcher/QuickSwitcherContent.js +8 -3
  97. package/dist/editor/components/QuickSwitcher/QuickSwitcherResult.js +4 -2
  98. package/dist/editor/components/QuickSwitcher/algolia-search.d.ts +0 -27
  99. package/dist/editor/components/QuickSwitcher/algolia-search.js +2 -3
  100. package/dist/editor/components/RenderButton.d.ts +2 -0
  101. package/dist/editor/components/RenderButton.js +103 -0
  102. package/dist/editor/components/RenderModal/CliCopyButton.d.ts +4 -0
  103. package/dist/editor/components/RenderModal/CliCopyButton.js +22 -0
  104. package/dist/editor/components/RenderModal/CrfSetting.d.ts +15 -0
  105. package/dist/editor/components/RenderModal/CrfSetting.js +42 -0
  106. package/dist/editor/components/RenderModal/EnforceAudioTrackSetting.d.ts +8 -0
  107. package/dist/editor/components/RenderModal/EnforceAudioTrackSetting.js +16 -0
  108. package/dist/editor/components/RenderModal/EnvInput.d.ts +11 -0
  109. package/dist/editor/components/RenderModal/EnvInput.js +74 -0
  110. package/dist/editor/components/RenderModal/FrameRangeSetting.d.ts +8 -0
  111. package/dist/editor/components/RenderModal/FrameRangeSetting.js +42 -0
  112. package/dist/editor/components/RenderModal/GuiRenderStatus.d.ts +5 -0
  113. package/dist/editor/components/RenderModal/GuiRenderStatus.js +78 -0
  114. package/dist/editor/components/RenderModal/InfoBubble.d.ts +5 -0
  115. package/dist/editor/components/RenderModal/InfoBubble.js +115 -0
  116. package/dist/editor/components/RenderModal/InfoTooltip.d.ts +5 -0
  117. package/dist/editor/components/RenderModal/InfoTooltip.js +40 -0
  118. package/dist/editor/components/RenderModal/InlineEyeIcon.d.ts +5 -0
  119. package/dist/editor/components/RenderModal/InlineEyeIcon.js +17 -0
  120. package/dist/editor/components/RenderModal/InlineRemoveButton.d.ts +4 -0
  121. package/dist/editor/components/RenderModal/InlineRemoveButton.js +17 -0
  122. package/dist/editor/components/RenderModal/JpegQualitySetting.d.ts +5 -0
  123. package/dist/editor/components/RenderModal/JpegQualitySetting.js +12 -0
  124. package/dist/editor/components/RenderModal/MutedSetting.d.ts +8 -0
  125. package/dist/editor/components/RenderModal/MutedSetting.js +16 -0
  126. package/dist/editor/components/RenderModal/NumberOfLoopsSetting.d.ts +5 -0
  127. package/dist/editor/components/RenderModal/NumberOfLoopsSetting.js +26 -0
  128. package/dist/editor/components/RenderModal/NumberSetting.d.ts +12 -0
  129. package/dist/editor/components/RenderModal/NumberSetting.js +29 -0
  130. package/dist/editor/components/RenderModal/OptionExplainer.d.ts +5 -0
  131. package/dist/editor/components/RenderModal/OptionExplainer.js +45 -0
  132. package/dist/editor/components/RenderModal/RenderModal.d.ts +35 -0
  133. package/dist/editor/components/RenderModal/RenderModal.js +597 -0
  134. package/dist/editor/components/RenderModal/RenderModalAdvanced.d.ts +26 -0
  135. package/dist/editor/components/RenderModal/RenderModalAdvanced.js +61 -0
  136. package/dist/editor/components/RenderModal/RenderModalAudio.d.ts +17 -0
  137. package/dist/editor/components/RenderModal/RenderModalAudio.js +46 -0
  138. package/dist/editor/components/RenderModal/RenderModalBasic.d.ts +23 -0
  139. package/dist/editor/components/RenderModal/RenderModalBasic.js +79 -0
  140. package/dist/editor/components/RenderModal/RenderModalData.d.ts +20 -0
  141. package/dist/editor/components/RenderModal/RenderModalData.js +249 -0
  142. package/dist/editor/components/RenderModal/RenderModalEnvironmentVariables.d.ts +5 -0
  143. package/dist/editor/components/RenderModal/RenderModalEnvironmentVariables.js +55 -0
  144. package/dist/editor/components/RenderModal/RenderModalGif.d.ts +9 -0
  145. package/dist/editor/components/RenderModal/RenderModalGif.js +19 -0
  146. package/dist/editor/components/RenderModal/RenderModalHr.d.ts +2 -0
  147. package/dist/editor/components/RenderModal/RenderModalHr.js +18 -0
  148. package/dist/editor/components/RenderModal/RenderModalInput.d.ts +10 -0
  149. package/dist/editor/components/RenderModal/RenderModalInput.js +13 -0
  150. package/dist/editor/components/RenderModal/RenderModalJSONPropsEditor.d.ts +15 -0
  151. package/dist/editor/components/RenderModal/RenderModalJSONPropsEditor.js +109 -0
  152. package/dist/editor/components/RenderModal/RenderModalPicture.d.ts +28 -0
  153. package/dist/editor/components/RenderModal/RenderModalPicture.js +54 -0
  154. package/dist/editor/components/RenderModal/RenderStatusModal.d.ts +4 -0
  155. package/dist/editor/components/RenderModal/RenderStatusModal.js +72 -0
  156. package/dist/editor/components/RenderModal/ScaleSetting.d.ts +5 -0
  157. package/dist/editor/components/RenderModal/ScaleSetting.js +17 -0
  158. package/dist/editor/components/RenderModal/SchemaEditor/SchemaEditor.d.ts +13 -0
  159. package/dist/editor/components/RenderModal/SchemaEditor/SchemaEditor.js +39 -0
  160. package/dist/editor/components/RenderModal/SchemaEditor/SchemaEmptyStateGraphic.d.ts +2 -0
  161. package/dist/editor/components/RenderModal/SchemaEditor/SchemaEmptyStateGraphic.js +15 -0
  162. package/dist/editor/components/RenderModal/SchemaEditor/SchemaErrorMessages.d.ts +12 -0
  163. package/dist/editor/components/RenderModal/SchemaEditor/SchemaErrorMessages.js +59 -0
  164. package/dist/editor/components/RenderModal/SchemaEditor/SchemaLabel.d.ts +16 -0
  165. package/dist/editor/components/RenderModal/SchemaEditor/SchemaLabel.js +40 -0
  166. package/dist/editor/components/RenderModal/SchemaEditor/SchemaResetButton.d.ts +4 -0
  167. package/dist/editor/components/RenderModal/SchemaEditor/SchemaResetButton.js +17 -0
  168. package/dist/editor/components/RenderModal/SchemaEditor/SchemaSaveButton.d.ts +5 -0
  169. package/dist/editor/components/RenderModal/SchemaEditor/SchemaSaveButton.js +17 -0
  170. package/dist/editor/components/RenderModal/SchemaEditor/ZodArrayEditor.d.ts +15 -0
  171. package/dist/editor/components/RenderModal/SchemaEditor/ZodArrayEditor.js +84 -0
  172. package/dist/editor/components/RenderModal/SchemaEditor/ZodArrayItemEditor.d.ts +14 -0
  173. package/dist/editor/components/RenderModal/SchemaEditor/ZodArrayItemEditor.js +28 -0
  174. package/dist/editor/components/RenderModal/SchemaEditor/ZodBooleanEditor.d.ts +13 -0
  175. package/dist/editor/components/RenderModal/SchemaEditor/ZodBooleanEditor.js +27 -0
  176. package/dist/editor/components/RenderModal/SchemaEditor/ZodColorEditor.d.ts +15 -0
  177. package/dist/editor/components/RenderModal/SchemaEditor/ZodColorEditor.js +116 -0
  178. package/dist/editor/components/RenderModal/SchemaEditor/ZodDateEditor.d.ts +15 -0
  179. package/dist/editor/components/RenderModal/SchemaEditor/ZodDateEditor.js +76 -0
  180. package/dist/editor/components/RenderModal/SchemaEditor/ZodEffectEditor.d.ts +15 -0
  181. package/dist/editor/components/RenderModal/SchemaEditor/ZodEffectEditor.js +55 -0
  182. package/dist/editor/components/RenderModal/SchemaEditor/ZodEnumEditor.d.ts +15 -0
  183. package/dist/editor/components/RenderModal/SchemaEditor/ZodEnumEditor.js +72 -0
  184. package/dist/editor/components/RenderModal/SchemaEditor/ZodErrorMessages.d.ts +5 -0
  185. package/dist/editor/components/RenderModal/SchemaEditor/ZodErrorMessages.js +23 -0
  186. package/dist/editor/components/RenderModal/SchemaEditor/ZodNonEditableValue.d.ts +9 -0
  187. package/dist/editor/components/RenderModal/SchemaEditor/ZodNonEditableValue.js +27 -0
  188. package/dist/editor/components/RenderModal/SchemaEditor/ZodNullableEditor.d.ts +15 -0
  189. package/dist/editor/components/RenderModal/SchemaEditor/ZodNullableEditor.js +10 -0
  190. package/dist/editor/components/RenderModal/SchemaEditor/ZodNumberEditor.d.ts +15 -0
  191. package/dist/editor/components/RenderModal/SchemaEditor/ZodNumberEditor.js +88 -0
  192. package/dist/editor/components/RenderModal/SchemaEditor/ZodObjectEditor.d.ts +15 -0
  193. package/dist/editor/components/RenderModal/SchemaEditor/ZodObjectEditor.js +64 -0
  194. package/dist/editor/components/RenderModal/SchemaEditor/ZodOptionalEditor.d.ts +15 -0
  195. package/dist/editor/components/RenderModal/SchemaEditor/ZodOptionalEditor.js +10 -0
  196. package/dist/editor/components/RenderModal/SchemaEditor/ZodOrNullishEditor.d.ts +16 -0
  197. package/dist/editor/components/RenderModal/SchemaEditor/ZodOrNullishEditor.js +52 -0
  198. package/dist/editor/components/RenderModal/SchemaEditor/ZodStringEditor.d.ts +15 -0
  199. package/dist/editor/components/RenderModal/SchemaEditor/ZodStringEditor.js +48 -0
  200. package/dist/editor/components/RenderModal/SchemaEditor/ZodSwitch.d.ts +15 -0
  201. package/dist/editor/components/RenderModal/SchemaEditor/ZodSwitch.js +84 -0
  202. package/dist/editor/components/RenderModal/SchemaEditor/ZodUnionEditor.d.ts +15 -0
  203. package/dist/editor/components/RenderModal/SchemaEditor/ZodUnionEditor.js +49 -0
  204. package/dist/editor/components/RenderModal/SchemaEditor/create-zod-values.d.ts +2 -0
  205. package/dist/editor/components/RenderModal/SchemaEditor/create-zod-values.js +158 -0
  206. package/dist/editor/components/RenderModal/SchemaEditor/date-serialization.d.ts +6 -0
  207. package/dist/editor/components/RenderModal/SchemaEditor/date-serialization.js +24 -0
  208. package/dist/editor/components/RenderModal/SchemaEditor/get-schema-label.d.ts +2 -0
  209. package/dist/editor/components/RenderModal/SchemaEditor/get-schema-label.js +15 -0
  210. package/dist/editor/components/RenderModal/SchemaEditor/zod-types.d.ts +1 -0
  211. package/dist/editor/components/RenderModal/SchemaEditor/zod-types.js +2 -0
  212. package/dist/editor/components/RenderModal/WarningIndicatorButton.d.ts +6 -0
  213. package/dist/editor/components/RenderModal/WarningIndicatorButton.js +49 -0
  214. package/dist/editor/components/RenderModal/get-render-modal-warnings.d.ts +15 -0
  215. package/dist/editor/components/RenderModal/get-render-modal-warnings.js +34 -0
  216. package/dist/editor/components/RenderModal/human-readable-audio-codecs.d.ts +2 -0
  217. package/dist/editor/components/RenderModal/human-readable-audio-codecs.js +18 -0
  218. package/dist/editor/components/RenderModal/human-readable-codec.d.ts +2 -0
  219. package/dist/editor/components/RenderModal/human-readable-codec.js +36 -0
  220. package/dist/editor/components/RenderModal/layout.d.ts +7 -0
  221. package/dist/editor/components/RenderModal/layout.js +45 -0
  222. package/dist/editor/components/RenderModal/out-name-checker.d.ts +14 -0
  223. package/dist/editor/components/RenderModal/out-name-checker.js +80 -0
  224. package/dist/editor/components/RenderQueue/CircularProgress.d.ts +5 -0
  225. package/dist/editor/components/RenderQueue/CircularProgress.js +18 -0
  226. package/dist/editor/components/RenderQueue/RenderQueueError.d.ts +5 -0
  227. package/dist/editor/components/RenderQueue/RenderQueueError.js +26 -0
  228. package/dist/editor/components/RenderQueue/RenderQueueItem.d.ts +5 -0
  229. package/dist/editor/components/RenderQueue/RenderQueueItem.js +40 -0
  230. package/dist/editor/components/RenderQueue/RenderQueueItemCancelButton.d.ts +5 -0
  231. package/dist/editor/components/RenderQueue/RenderQueueItemCancelButton.js +26 -0
  232. package/dist/editor/components/RenderQueue/RenderQueueItemStatus.d.ts +5 -0
  233. package/dist/editor/components/RenderQueue/RenderQueueItemStatus.js +43 -0
  234. package/dist/editor/components/RenderQueue/RenderQueueOpenInFolder.d.ts +5 -0
  235. package/dist/editor/components/RenderQueue/RenderQueueOpenInFolder.js +26 -0
  236. package/dist/editor/components/RenderQueue/RenderQueueOutputName.d.ts +5 -0
  237. package/dist/editor/components/RenderQueue/RenderQueueOutputName.js +26 -0
  238. package/dist/editor/components/RenderQueue/RenderQueueProgressMessage.d.ts +5 -0
  239. package/dist/editor/components/RenderQueue/RenderQueueProgressMessage.js +26 -0
  240. package/dist/editor/components/RenderQueue/RenderQueueRemoveItem.d.ts +5 -0
  241. package/dist/editor/components/RenderQueue/RenderQueueRemoveItem.js +37 -0
  242. package/dist/editor/components/RenderQueue/RenderQueueRepeat.d.ts +5 -0
  243. package/dist/editor/components/RenderQueue/RenderQueueRepeat.js +26 -0
  244. package/dist/editor/components/RenderQueue/SuccessIcon.d.ts +2 -0
  245. package/dist/editor/components/RenderQueue/SuccessIcon.js +14 -0
  246. package/dist/editor/components/RenderQueue/actions.d.ts +58 -0
  247. package/dist/editor/components/RenderQueue/actions.js +120 -0
  248. package/dist/editor/components/RenderQueue/context.d.ts +18 -0
  249. package/dist/editor/components/RenderQueue/context.js +49 -0
  250. package/dist/editor/components/RenderQueue/index.d.ts +2 -0
  251. package/dist/editor/components/RenderQueue/index.js +43 -0
  252. package/dist/editor/components/RenderQueue/item-style.d.ts +2 -0
  253. package/dist/editor/components/RenderQueue/item-style.js +21 -0
  254. package/dist/editor/components/RendersTab.d.ts +6 -0
  255. package/dist/editor/components/RendersTab.js +43 -0
  256. package/dist/editor/components/RightPanel.d.ts +8 -0
  257. package/dist/editor/components/RightPanel.js +76 -0
  258. package/dist/editor/components/SegmentedControl.d.ts +11 -0
  259. package/dist/editor/components/SegmentedControl.js +62 -0
  260. package/dist/editor/components/SetTimelineInOutProvider.d.ts +4 -0
  261. package/dist/editor/components/SetTimelineInOutProvider.js +19 -0
  262. package/dist/editor/components/SidebarCollapserControls.d.ts +2 -0
  263. package/dist/editor/components/SidebarCollapserControls.js +129 -0
  264. package/dist/editor/components/SidebarRenderButton.d.ts +6 -0
  265. package/dist/editor/components/SidebarRenderButton.js +85 -0
  266. package/dist/editor/components/SizeSelector.d.ts +0 -1
  267. package/dist/editor/components/SizeSelector.js +3 -3
  268. package/dist/editor/components/Splitter/SplitterHandle.d.ts +1 -2
  269. package/dist/editor/components/Splitter/SplitterHandle.js +15 -7
  270. package/dist/editor/components/Tabs/index.d.ts +11 -0
  271. package/dist/editor/components/Tabs/index.js +58 -0
  272. package/dist/editor/components/Tabs/vertical.d.ts +7 -0
  273. package/dist/editor/components/Tabs/vertical.js +43 -0
  274. package/dist/editor/components/Timeline/MaxTimelineTracks.js +1 -1
  275. package/dist/editor/components/Timeline/Timeline.js +1 -1
  276. package/dist/editor/components/Timeline/TimelineCollapseToggle.d.ts +1 -0
  277. package/dist/editor/components/Timeline/TimelineCollapseToggle.js +4 -5
  278. package/dist/editor/components/Timeline/TimelineListItem.js +2 -1
  279. package/dist/editor/components/Timeline/TimelineScrollable.js +2 -1
  280. package/dist/editor/components/Timeline/TimelineSequence.js +2 -14
  281. package/dist/editor/components/Timeline/TimelineSequenceFrame.js +2 -1
  282. package/dist/editor/components/Timeline/TimelineZoomControls.js +2 -5
  283. package/dist/editor/components/Timeline/imperative-state.d.ts +0 -4
  284. package/dist/editor/components/Timeline/imperative-state.js +13 -13
  285. package/dist/editor/components/Timeline/is-collapsed.js +2 -3
  286. package/dist/editor/components/Timeline/timeline-scroll-logic.d.ts +0 -1
  287. package/dist/editor/components/Timeline/timeline-scroll-logic.js +5 -6
  288. package/dist/editor/components/TimelineInOutToggle.js +3 -0
  289. package/dist/editor/components/TopPanel.d.ts +1 -0
  290. package/dist/editor/components/TopPanel.js +30 -16
  291. package/dist/editor/components/ZoomGesturesProvider.d.ts +4 -0
  292. package/dist/editor/components/ZoomGesturesProvider.js +24 -0
  293. package/dist/editor/components/ZoomPersistor.d.ts +0 -1
  294. package/dist/editor/components/ZoomPersistor.js +2 -3
  295. package/dist/editor/components/get-zod-if-possible.d.ts +10 -0
  296. package/dist/editor/components/get-zod-if-possible.js +79 -0
  297. package/dist/editor/components/layout.d.ts +3 -1
  298. package/dist/editor/components/layout.js +9 -7
  299. package/dist/editor/helpers/calculate-timeline.d.ts +0 -4
  300. package/dist/editor/helpers/client-id.d.ts +17 -0
  301. package/dist/editor/helpers/client-id.js +46 -0
  302. package/dist/editor/helpers/colors.d.ts +3 -1
  303. package/dist/editor/helpers/colors.js +6 -3
  304. package/dist/editor/helpers/convert-env-variables.d.ts +2 -0
  305. package/dist/editor/helpers/convert-env-variables.js +20 -0
  306. package/dist/editor/helpers/create-folder-tree.d.ts +2 -3
  307. package/dist/editor/helpers/create-folder-tree.js +3 -4
  308. package/dist/editor/helpers/get-timeline-sequence-layout.d.ts +2 -2
  309. package/dist/editor/helpers/get-timeline-sequence-sort-key.d.ts +2 -1
  310. package/dist/editor/helpers/is-composition-still.d.ts +2 -2
  311. package/dist/editor/helpers/is-composition-still.js +3 -0
  312. package/dist/editor/helpers/prores-labels.d.ts +2 -0
  313. package/dist/editor/helpers/prores-labels.js +25 -0
  314. package/dist/editor/helpers/render-modal-sections.d.ts +10 -0
  315. package/dist/editor/helpers/render-modal-sections.js +32 -0
  316. package/dist/editor/helpers/use-breakpoint.d.ts +1 -0
  317. package/dist/editor/helpers/use-breakpoint.js +17 -0
  318. package/dist/editor/helpers/use-file-existence.d.ts +1 -0
  319. package/dist/editor/helpers/use-file-existence.js +66 -0
  320. package/dist/editor/helpers/use-keybinding.d.ts +1 -0
  321. package/dist/editor/helpers/use-keybinding.js +9 -0
  322. package/dist/editor/helpers/use-menu-structure.js +99 -51
  323. package/dist/editor/helpers/validate-new-comp-data.d.ts +2 -2
  324. package/dist/editor/icons/Checkmark.js +1 -1
  325. package/dist/editor/icons/audio.d.ts +2 -0
  326. package/dist/editor/icons/audio.js +6 -0
  327. package/dist/editor/icons/caret.d.ts +4 -1
  328. package/dist/editor/icons/caret.js +17 -1
  329. package/dist/editor/icons/data.d.ts +2 -0
  330. package/dist/editor/icons/data.js +8 -0
  331. package/dist/editor/icons/file.d.ts +2 -0
  332. package/dist/editor/icons/file.js +6 -0
  333. package/dist/editor/icons/folder.d.ts +6 -2
  334. package/dist/editor/icons/folder.js +4 -4
  335. package/dist/editor/icons/frame.d.ts +2 -0
  336. package/dist/editor/icons/frame.js +6 -0
  337. package/dist/editor/icons/gear.d.ts +2 -0
  338. package/dist/editor/icons/gear.js +6 -0
  339. package/dist/editor/icons/gif.d.ts +2 -0
  340. package/dist/editor/icons/gif.js +6 -0
  341. package/dist/editor/icons/render.d.ts +9 -0
  342. package/dist/editor/icons/render.js +12 -0
  343. package/dist/editor/icons/still.d.ts +3 -1
  344. package/dist/editor/icons/still.js +2 -2
  345. package/dist/editor/icons/video.d.ts +5 -0
  346. package/dist/editor/icons/video.js +8 -0
  347. package/dist/editor/state/keybindings.d.ts +2 -1
  348. package/dist/editor/state/modals.d.ts +38 -0
  349. package/dist/editor/state/preview-size.d.ts +0 -1
  350. package/dist/editor/state/preview-size.js +3 -4
  351. package/dist/editor/state/sidebar.d.ts +7 -3
  352. package/dist/editor/state/sidebar.js +42 -13
  353. package/dist/editor/state/timeline-ref.d.ts +2 -1
  354. package/dist/editor/state/z-index.d.ts +0 -5
  355. package/dist/editor/state/z-index.js +16 -6
  356. package/dist/event-source-events.d.ts +15 -0
  357. package/dist/event-source.d.ts +2 -0
  358. package/dist/event-source.js +31 -5
  359. package/dist/ffmpeg.d.ts +2 -0
  360. package/dist/ffmpeg.js +21 -0
  361. package/dist/file-watcher.d.ts +9 -0
  362. package/dist/file-watcher.js +35 -0
  363. package/dist/get-cli-options.d.ts +3 -12
  364. package/dist/get-cli-options.js +7 -60
  365. package/dist/get-composition-id.d.ts +7 -3
  366. package/dist/get-composition-id.js +17 -3
  367. package/dist/get-composition-with-dimension-override.d.ts +5 -4
  368. package/dist/get-composition-with-dimension-override.js +6 -2
  369. package/dist/get-config-file-name.d.ts +0 -2
  370. package/dist/get-config-file-name.js +7 -7
  371. package/dist/get-default-out-name.d.ts +5 -0
  372. package/dist/get-default-out-name.js +10 -0
  373. package/dist/get-env.d.ts +1 -1
  374. package/dist/get-env.js +39 -48
  375. package/dist/get-filename.d.ts +5 -1
  376. package/dist/get-filename.js +6 -4
  377. package/dist/get-final-output-codec.d.ts +2 -1
  378. package/dist/get-final-output-codec.js +4 -1
  379. package/dist/get-input-props.d.ts +1 -5
  380. package/dist/get-input-props.js +11 -13
  381. package/dist/image-formats.d.ts +5 -2
  382. package/dist/image-formats.js +16 -6
  383. package/dist/index.d.ts +91 -22
  384. package/dist/index.js +12 -13
  385. package/dist/list-of-remotion-packages.js +1 -0
  386. package/dist/load-config.js +1 -1
  387. package/dist/log.d.ts +14 -0
  388. package/dist/log.js +24 -8
  389. package/dist/parse-command-line.d.ts +5 -5
  390. package/dist/parse-command-line.js +6 -14
  391. package/dist/preview-server/api-routes.d.ts +4 -0
  392. package/dist/preview-server/api-routes.js +21 -0
  393. package/dist/preview-server/api-types.d.ts +25 -0
  394. package/dist/preview-server/api-types.js +2 -0
  395. package/dist/preview-server/dev-middleware/middleware.d.ts +0 -1
  396. package/dist/preview-server/dev-middleware/middleware.js +1 -2
  397. package/dist/preview-server/error-overlay/remotion-overlay/AskOnDiscord.js +1 -0
  398. package/dist/preview-server/error-overlay/remotion-overlay/Button.d.ts +8 -4
  399. package/dist/preview-server/error-overlay/remotion-overlay/Button.js +12 -8
  400. package/dist/preview-server/error-overlay/remotion-overlay/ErrorDisplay.js +2 -1
  401. package/dist/preview-server/error-overlay/remotion-overlay/HelpLink.js +1 -0
  402. package/dist/preview-server/error-overlay/remotion-overlay/OpenInEditor.js +1 -0
  403. package/dist/preview-server/error-overlay/remotion-overlay/SearchGitHubIssues.js +1 -0
  404. package/dist/preview-server/error-overlay/remotion-overlay/ShortcutHint.js +16 -1
  405. package/dist/preview-server/file-existence-watchers.d.ts +13 -0
  406. package/dist/preview-server/file-existence-watchers.js +62 -0
  407. package/dist/preview-server/handler.d.ts +9 -0
  408. package/dist/preview-server/handler.js +34 -0
  409. package/dist/preview-server/hot-middleware/client.js +2 -2
  410. package/dist/preview-server/live-events.d.ts +2 -0
  411. package/dist/preview-server/live-events.js +22 -2
  412. package/dist/preview-server/parse-body.d.ts +2 -0
  413. package/dist/preview-server/parse-body.js +16 -0
  414. package/dist/preview-server/public-folder.d.ts +0 -5
  415. package/dist/preview-server/public-folder.js +3 -4
  416. package/dist/preview-server/render-queue/get-default-video-contexts.d.ts +10 -0
  417. package/dist/preview-server/render-queue/get-default-video-contexts.js +13 -0
  418. package/dist/preview-server/render-queue/job.d.ts +138 -0
  419. package/dist/preview-server/render-queue/job.js +2 -0
  420. package/dist/preview-server/render-queue/make-retry-payload.d.ts +3 -0
  421. package/dist/preview-server/render-queue/make-retry-payload.js +91 -0
  422. package/dist/preview-server/render-queue/open-directory-in-finder.d.ts +1 -0
  423. package/dist/preview-server/render-queue/open-directory-in-finder.js +43 -0
  424. package/dist/preview-server/render-queue/process-still.d.ts +8 -0
  425. package/dist/preview-server/render-queue/process-still.js +46 -0
  426. package/dist/preview-server/render-queue/process-video.d.ts +8 -0
  427. package/dist/preview-server/render-queue/process-video.js +63 -0
  428. package/dist/preview-server/render-queue/queue.d.ts +9 -0
  429. package/dist/preview-server/render-queue/queue.js +212 -0
  430. package/dist/preview-server/routes/add-render.d.ts +3 -0
  431. package/dist/preview-server/routes/add-render.js +76 -0
  432. package/dist/preview-server/routes/can-update-default-props.d.ts +4 -0
  433. package/dist/preview-server/routes/can-update-default-props.js +39 -0
  434. package/dist/preview-server/routes/cancel-render.d.ts +3 -0
  435. package/dist/preview-server/routes/cancel-render.js +9 -0
  436. package/dist/preview-server/routes/open-in-file-explorer.d.ts +3 -0
  437. package/dist/preview-server/routes/open-in-file-explorer.js +8 -0
  438. package/dist/preview-server/routes/remove-render.d.ts +3 -0
  439. package/dist/preview-server/routes/remove-render.js +9 -0
  440. package/dist/preview-server/routes/subscribe-to-file-existence.d.ts +3 -0
  441. package/dist/preview-server/routes/subscribe-to-file-existence.js +13 -0
  442. package/dist/preview-server/routes/unsubscribe-from-file-existence.d.ts +3 -0
  443. package/dist/preview-server/routes/unsubscribe-from-file-existence.js +13 -0
  444. package/dist/preview-server/routes/update-default-props.d.ts +3 -0
  445. package/dist/preview-server/routes/update-default-props.js +24 -0
  446. package/dist/preview-server/routes.d.ts +2 -1
  447. package/dist/preview-server/routes.js +71 -13
  448. package/dist/preview-server/start-server.js +1 -0
  449. package/dist/preview.js +8 -21
  450. package/dist/previewEntry.js +2 -3
  451. package/dist/print-compositions.d.ts +2 -2
  452. package/dist/print-error.js +4 -2
  453. package/dist/print-help.js +4 -8
  454. package/dist/progress-bar.d.ts +17 -37
  455. package/dist/progress-bar.js +102 -41
  456. package/dist/progress-types.d.ts +32 -0
  457. package/dist/progress-types.js +17 -0
  458. package/dist/render-flows/render.d.ts +47 -0
  459. package/dist/render-flows/render.js +293 -0
  460. package/dist/render-flows/still.d.ts +29 -0
  461. package/dist/render-flows/still.js +174 -0
  462. package/dist/render.js +42 -232
  463. package/dist/required-chromium-options.d.ts +3 -0
  464. package/dist/required-chromium-options.js +2 -0
  465. package/dist/select-composition.d.ts +2 -1
  466. package/dist/setup-cache.d.ts +12 -9
  467. package/dist/setup-cache.js +29 -20
  468. package/dist/still.js +25 -130
  469. package/dist/user-passed-output-location.js +2 -7
  470. package/package.json +22 -7
  471. package/styles/styles.css +13 -3
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.VerticalTab = void 0;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const react_1 = require("react");
6
+ const colors_1 = require("../../helpers/colors");
7
+ const z_index_1 = require("../../state/z-index");
8
+ const selectorButton = {
9
+ border: 'none',
10
+ flex: 1,
11
+ padding: 8,
12
+ paddingLeft: 16,
13
+ display: 'flex',
14
+ flexDirection: 'row',
15
+ fontSize: 14,
16
+ color: 'inherit',
17
+ alignItems: 'center',
18
+ };
19
+ const VerticalTab = ({ children, onClick, style, selected }) => {
20
+ const [hovered, setHovered] = (0, react_1.useState)(false);
21
+ const { tabIndex } = (0, z_index_1.useZIndex)();
22
+ const onPointerEnter = (0, react_1.useCallback)(() => {
23
+ setHovered(true);
24
+ }, []);
25
+ const onPointerLeave = (0, react_1.useCallback)(() => {
26
+ setHovered(false);
27
+ }, []);
28
+ const definiteStyle = (0, react_1.useMemo)(() => {
29
+ return {
30
+ ...selectorButton,
31
+ backgroundColor: selected
32
+ ? colors_1.SELECTED_BACKGROUND
33
+ : hovered
34
+ ? colors_1.CLEAR_HOVER
35
+ : 'transparent',
36
+ color: selected ? 'white' : colors_1.LIGHT_TEXT,
37
+ boxShadow: selected ? 'none' : undefined,
38
+ ...style,
39
+ };
40
+ }, [hovered, selected, style]);
41
+ return ((0, jsx_runtime_1.jsx)("button", { style: definiteStyle, type: "button", onClick: onClick, tabIndex: tabIndex, onPointerLeave: onPointerLeave, onPointerEnter: onPointerEnter, children: children }));
42
+ };
43
+ exports.VerticalTab = VerticalTab;
@@ -4,7 +4,7 @@ exports.MaxTimelineTracksReached = exports.MAX_TIMELINE_TRACKS_NOTICE_HEIGHT = e
4
4
  const jsx_runtime_1 = require("react/jsx-runtime");
5
5
  const timeline_layout_1 = require("../../helpers/timeline-layout");
6
6
  exports.MAX_TIMELINE_TRACKS = typeof process.env.MAX_TIMELINE_TRACKS === 'undefined'
7
- ? 15
7
+ ? 90
8
8
  : Number(process.env.MAX_TIMELINE_TRACKS);
9
9
  exports.MAX_TIMELINE_TRACKS_NOTICE_HEIGHT = 24;
10
10
  const container = {
@@ -86,6 +86,6 @@ const Timeline = () => {
86
86
  if (!videoConfig) {
87
87
  return null;
88
88
  }
89
- return ((0, jsx_runtime_1.jsx)("div", { ref: timeline_refs_1.timelineVerticalScroll, style: container, className: "css-reset", children: (0, jsx_runtime_1.jsx)("div", { style: inner, children: (0, jsx_runtime_1.jsxs)(SplitterContainer_1.SplitterContainer, { orientation: "vertical", defaultFlex: 0.2, id: "names-to-timeline", maxFlex: 0.5, minFlex: 0.15, children: [(0, jsx_runtime_1.jsx)(SplitterElement_1.SplitterElement, { type: "flexer", children: (0, jsx_runtime_1.jsx)(TimelineList_1.TimelineList, { dispatchStateChange: dispatch, viewState: state, timeline: shown }) }), (0, jsx_runtime_1.jsx)(SplitterHandle_1.SplitterHandle, { onCollapse: noop, allowToCollapse: false }), (0, jsx_runtime_1.jsx)(SplitterElement_1.SplitterElement, { type: "anti-flexer", children: (0, jsx_runtime_1.jsxs)(TimelineScrollable_1.TimelineScrollable, { children: [(0, jsx_runtime_1.jsx)(TimelineTracks_1.TimelineTracks, { viewState: state, timeline: shown, fps: videoConfig.fps, hasBeenCut: hasBeenCut }), (0, jsx_runtime_1.jsx)(TimelineInOutPointer_1.TimelineInOutPointer, {}), (0, jsx_runtime_1.jsx)(TimelineDragHandler_1.TimelineDragHandler, {}), (0, jsx_runtime_1.jsx)(TimelineSlider_1.TimelineSlider, {}), (0, jsx_runtime_1.jsx)(TimelinePlayCursorSyncer_1.TimelinePlayCursorSyncer, {})] }) })] }) }) }));
89
+ return ((0, jsx_runtime_1.jsx)("div", { ref: timeline_refs_1.timelineVerticalScroll, style: container, className: "css-reset", children: (0, jsx_runtime_1.jsx)("div", { style: inner, children: (0, jsx_runtime_1.jsxs)(SplitterContainer_1.SplitterContainer, { orientation: "vertical", defaultFlex: 0.2, id: "names-to-timeline", maxFlex: 0.5, minFlex: 0.15, children: [(0, jsx_runtime_1.jsx)(SplitterElement_1.SplitterElement, { type: "flexer", children: (0, jsx_runtime_1.jsx)(TimelineList_1.TimelineList, { dispatchStateChange: dispatch, viewState: state, timeline: shown }) }), (0, jsx_runtime_1.jsx)(SplitterHandle_1.SplitterHandle, { onCollapse: noop, allowToCollapse: "none" }), (0, jsx_runtime_1.jsx)(SplitterElement_1.SplitterElement, { type: "anti-flexer", children: (0, jsx_runtime_1.jsxs)(TimelineScrollable_1.TimelineScrollable, { children: [(0, jsx_runtime_1.jsx)(TimelineTracks_1.TimelineTracks, { viewState: state, timeline: shown, fps: videoConfig.fps, hasBeenCut: hasBeenCut }), (0, jsx_runtime_1.jsx)(TimelineInOutPointer_1.TimelineInOutPointer, {}), (0, jsx_runtime_1.jsx)(TimelineDragHandler_1.TimelineDragHandler, {}), (0, jsx_runtime_1.jsx)(TimelineSlider_1.TimelineSlider, {}), (0, jsx_runtime_1.jsx)(TimelinePlayCursorSyncer_1.TimelinePlayCursorSyncer, {})] }) })] }) }) }));
90
90
  };
91
91
  exports.Timeline = Timeline;
@@ -1,4 +1,5 @@
1
1
  import React from 'react';
2
2
  export declare const TimelineCollapseToggle: React.FC<{
3
3
  collapsed: boolean;
4
+ color: string;
4
5
  }>;
@@ -2,7 +2,6 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.TimelineCollapseToggle = void 0;
4
4
  const jsx_runtime_1 = require("react/jsx-runtime");
5
- const colors_1 = require("../../helpers/colors");
6
5
  const container = {
7
6
  height: 10,
8
7
  width: 10,
@@ -10,10 +9,10 @@ const container = {
10
9
  justifyContent: 'center',
11
10
  alignItems: 'center',
12
11
  };
13
- const Icon = (props) => {
14
- return ((0, jsx_runtime_1.jsx)("svg", { viewBox: "0 0 8 10", ...props, style: { height: 10, width: 8 }, children: (0, jsx_runtime_1.jsx)("path", { d: "M 0 0 L 8 5 L 0 10 z", fill: colors_1.LIGHT_COLOR }) }));
12
+ const Icon = ({ color, ...props }) => {
13
+ return ((0, jsx_runtime_1.jsx)("svg", { viewBox: "0 0 8 10", ...props, style: { height: 10, width: 8 }, children: (0, jsx_runtime_1.jsx)("path", { d: "M 0 0 L 8 5 L 0 10 z", fill: color }) }));
15
14
  };
16
- const TimelineCollapseToggle = ({ collapsed }) => {
17
- return ((0, jsx_runtime_1.jsx)("div", { style: collapsed ? container : { ...container, transform: 'rotate(90deg)' }, children: (0, jsx_runtime_1.jsx)(Icon, {}) }));
15
+ const TimelineCollapseToggle = ({ collapsed, color }) => {
16
+ return ((0, jsx_runtime_1.jsx)("div", { style: collapsed ? container : { ...container, transform: 'rotate(90deg)' }, children: (0, jsx_runtime_1.jsx)(Icon, { color: color }) }));
18
17
  };
19
18
  exports.TimelineCollapseToggle = TimelineCollapseToggle;
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.TimelineListItem = exports.TOTAL_TIMELINE_LAYER_LEFT_PADDING = void 0;
4
4
  const jsx_runtime_1 = require("react/jsx-runtime");
5
5
  const react_1 = require("react");
6
+ const colors_1 = require("../../helpers/colors");
6
7
  const timeline_layout_1 = require("../../helpers/timeline-layout");
7
8
  const z_index_1 = require("../../state/z-index");
8
9
  const layout_1 = require("../layout");
@@ -98,6 +99,6 @@ const TimelineListItem = ({ nestedDepth, sequence, collapsed, beforeDepth, dispa
98
99
  const text = sequence.displayName.length > 80
99
100
  ? sequence.displayName.slice(0, 80) + '...'
100
101
  : sequence.displayName;
101
- return ((0, jsx_runtime_1.jsxs)("div", { style: outer, children: [(0, jsx_runtime_1.jsx)("div", { style: padder }), canCollapse ? ((0, jsx_runtime_1.jsx)("button", { tabIndex: tabIndex, type: "button", style: collapserButton, onClick: toggleCollapse, children: (0, jsx_runtime_1.jsx)(TimelineCollapseToggle_1.TimelineCollapseToggle, { collapsed: collapsed }) })) : ((0, jsx_runtime_1.jsx)("div", { style: collapser })), sequence.parent && nestedDepth > 0 ? ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("div", { style: smallSpace }), (0, jsx_runtime_1.jsx)("div", { style: hookContainer, children: (0, jsx_runtime_1.jsx)("div", { style: hookStyle }) }), (0, jsx_runtime_1.jsx)("div", { style: space })] })) : null, (0, jsx_runtime_1.jsxs)("div", { title: text || 'Untitled', style: textStyle, children: [text || 'Untitled', (0, jsx_runtime_1.jsx)(TimelineSequenceFrame_1.TimelineSequenceFrame, { duration: sequence.duration, from: sequence.from })] }), (0, jsx_runtime_1.jsx)(layout_1.Spacing, { x: 1 })] }));
102
+ return ((0, jsx_runtime_1.jsxs)("div", { style: outer, children: [(0, jsx_runtime_1.jsx)("div", { style: padder }), canCollapse ? ((0, jsx_runtime_1.jsx)("button", { tabIndex: tabIndex, type: "button", style: collapserButton, onClick: toggleCollapse, children: (0, jsx_runtime_1.jsx)(TimelineCollapseToggle_1.TimelineCollapseToggle, { color: colors_1.LIGHT_COLOR, collapsed: collapsed }) })) : ((0, jsx_runtime_1.jsx)("div", { style: collapser })), sequence.parent && nestedDepth > 0 ? ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("div", { style: smallSpace }), (0, jsx_runtime_1.jsx)("div", { style: hookContainer, children: (0, jsx_runtime_1.jsx)("div", { style: hookStyle }) }), (0, jsx_runtime_1.jsx)("div", { style: space })] })) : null, (0, jsx_runtime_1.jsxs)("div", { title: text || 'Untitled', style: textStyle, children: [text || 'Untitled', (0, jsx_runtime_1.jsx)(TimelineSequenceFrame_1.TimelineSequenceFrame, { duration: sequence.duration, from: sequence.from })] }), (0, jsx_runtime_1.jsx)(layout_1.Spacing, { x: 1 })] }));
102
103
  };
103
104
  exports.TimelineListItem = TimelineListItem;
@@ -4,6 +4,7 @@ exports.TimelineScrollable = void 0;
4
4
  const jsx_runtime_1 = require("react/jsx-runtime");
5
5
  const react_1 = require("react");
6
6
  const colors_1 = require("../../helpers/colors");
7
+ const is_menu_item_1 = require("../Menu/is-menu-item");
7
8
  const timeline_refs_1 = require("./timeline-refs");
8
9
  const outer = {
9
10
  width: '100%',
@@ -20,6 +21,6 @@ const TimelineScrollable = ({ children }) => {
20
21
  minHeight: '100%',
21
22
  };
22
23
  }, []);
23
- return ((0, jsx_runtime_1.jsx)("div", { ref: timeline_refs_1.scrollableRef, style: outer, children: (0, jsx_runtime_1.jsx)("div", { style: containerStyle, children: children }) }));
24
+ return ((0, jsx_runtime_1.jsx)("div", { ref: timeline_refs_1.scrollableRef, style: outer, className: is_menu_item_1.HORIZONTAL_SCROLLBAR_CLASSNAME, children: (0, jsx_runtime_1.jsx)("div", { style: containerStyle, children: children }) }));
24
25
  };
25
26
  exports.TimelineScrollable = TimelineScrollable;
@@ -7,13 +7,11 @@ const react_1 = require("react");
7
7
  const remotion_1 = require("remotion");
8
8
  const get_timeline_sequence_layout_1 = require("../../helpers/get-timeline-sequence-layout");
9
9
  const timeline_layout_1 = require("../../helpers/timeline-layout");
10
- const rich_timeline_1 = require("../../state/rich-timeline");
11
10
  const AudioWaveform_1 = require("../AudioWaveform");
12
- const Thumbnail_1 = require("../Thumbnail");
13
11
  const LoopedTimelineIndicators_1 = require("./LoopedTimelineIndicators");
14
12
  const timeline_refs_1 = require("./timeline-refs");
15
13
  const TimelineVideoInfo_1 = require("./TimelineVideoInfo");
16
- const SEQUENCE_GRADIENT = 'linear-gradient(to bottom, #3697e1, #348AC7 60%)';
14
+ const SEQUENCE_GRADIENT = 'var(--blue)';
17
15
  const AUDIO_GRADIENT = 'linear-gradient(rgb(16 171 58), rgb(43 165 63) 60%)';
18
16
  const VIDEO_GRADIENT = 'linear-gradient(to top, #8e44ad, #9b59b6)';
19
17
  const TimelineSequence = ({ s, fps }) => {
@@ -22,7 +20,6 @@ const TimelineSequence = ({ s, fps }) => {
22
20
  triggerOnWindowResize: false,
23
21
  shouldApplyCssTransforms: true,
24
22
  });
25
- const { richTimeline } = (0, react_1.useContext)(rich_timeline_1.RichTimelineContext);
26
23
  const windowWidth = (_a = size === null || size === void 0 ? void 0 : size.width) !== null && _a !== void 0 ? _a : 0;
27
24
  // If a duration is 1, it is essentially a still and it should have width 0
28
25
  // Some compositions may not be longer than their media duration,
@@ -58,15 +55,6 @@ const TimelineSequence = ({ s, fps }) => {
58
55
  overflow: 'hidden',
59
56
  };
60
57
  }, [marginLeft, s.type, width]);
61
- const row = (0, react_1.useMemo)(() => {
62
- return {
63
- flexDirection: 'row',
64
- display: 'flex',
65
- borderRadius: 5,
66
- overflow: 'hidden',
67
- };
68
- }, []);
69
- const thumbnailWidth = timeline_layout_1.TIMELINE_LAYER_HEIGHT * (video.width / video.height);
70
- return ((0, jsx_runtime_1.jsxs)("div", { style: style, title: s.displayName, children: [(0, jsx_runtime_1.jsx)("div", { style: row, children: richTimeline && s.type === 'sequence' ? ((0, jsx_runtime_1.jsx)(Thumbnail_1.Thumbnail, { targetHeight: timeline_layout_1.TIMELINE_LAYER_HEIGHT, targetWidth: thumbnailWidth, composition: video, frameToDisplay: Math.floor(s.from + s.duration / 2) })) : null }), s.type === 'audio' ? ((0, jsx_runtime_1.jsx)(AudioWaveform_1.AudioWaveform, { src: s.src, doesVolumeChange: s.doesVolumeChange, visualizationWidth: width, startFrom: s.startMediaFrom, durationInFrames: s.duration, fps: fps, volume: s.volume, setMaxMediaDuration: setMaxMediaDuration, playbackRate: s.playbackRate })) : null, s.type === 'video' ? (0, jsx_runtime_1.jsx)(TimelineVideoInfo_1.TimelineVideoInfo, { src: s.src }) : null, s.showLoopTimesInTimeline === undefined ? null : ((0, jsx_runtime_1.jsx)(LoopedTimelineIndicators_1.LoopedTimelineIndicator, { loops: s.showLoopTimesInTimeline }))] }, s.id));
58
+ return ((0, jsx_runtime_1.jsxs)("div", { style: style, title: s.displayName, children: [s.type === 'audio' ? ((0, jsx_runtime_1.jsx)(AudioWaveform_1.AudioWaveform, { src: s.src, doesVolumeChange: s.doesVolumeChange, visualizationWidth: width, startFrom: s.startMediaFrom, durationInFrames: s.duration, fps: fps, volume: s.volume, setMaxMediaDuration: setMaxMediaDuration, playbackRate: s.playbackRate })) : null, s.type === 'video' ? (0, jsx_runtime_1.jsx)(TimelineVideoInfo_1.TimelineVideoInfo, { src: s.src }) : null, s.showLoopTimesInTimeline === undefined ? null : ((0, jsx_runtime_1.jsx)(LoopedTimelineIndicators_1.LoopedTimelineIndicator, { loops: s.showLoopTimesInTimeline }))] }, s.id));
71
59
  };
72
60
  exports.TimelineSequence = TimelineSequence;
@@ -16,6 +16,7 @@ const TimelineSequenceFrame = ({ from, duration }) => {
16
16
  const frame = (0, remotion_1.useCurrentFrame)();
17
17
  const { fps } = (0, remotion_1.useVideoConfig)();
18
18
  const relativeFrame = frame - from;
19
+ const roundedFrame = Math.round(relativeFrame * 100) / 100;
19
20
  const isInRange = relativeFrame >= 0 && relativeFrame < duration;
20
21
  if (!isInRange) {
21
22
  return null;
@@ -26,6 +27,6 @@ The current time within the sequence.
26
27
  Call \`useCurrentFrame()\` within the sequence to get the time programmatically.
27
28
 
28
29
  Call \`const {durationInFrames} = useVideoConfig()\` to get the duration of the sequence.
29
- `.trim(), style: relativeFrameStyle, children: [(0, render_frame_1.renderFrame)(relativeFrame, fps), " (", relativeFrame, ")"] }));
30
+ `.trim(), style: relativeFrameStyle, children: [(0, render_frame_1.renderFrame)(relativeFrame, fps), " (", roundedFrame, ")"] }));
30
31
  };
31
32
  exports.TimelineSequenceFrame = TimelineSequenceFrame;
@@ -14,6 +14,7 @@ const container = {
14
14
  color: 'black',
15
15
  flexDirection: 'row',
16
16
  display: 'flex',
17
+ alignItems: 'center',
17
18
  };
18
19
  const buttonStyle = {
19
20
  fontSize: 24,
@@ -22,10 +23,6 @@ const iconStyle = {
22
23
  color: 'white',
23
24
  width: 14,
24
25
  };
25
- const slider = {
26
- width: 60,
27
- accentColor: 'var(--blue)',
28
- };
29
26
  const TimelineZoomControls = () => {
30
27
  const { setZoom, zoom } = (0, react_1.useContext)(timeline_zoom_1.TimelineZoomCtx);
31
28
  const { tabIndex } = (0, z_index_1.useZIndex)();
@@ -42,6 +39,6 @@ const TimelineZoomControls = () => {
42
39
  if (isStill) {
43
40
  return null;
44
41
  }
45
- return ((0, jsx_runtime_1.jsxs)("div", { style: container, children: [(0, jsx_runtime_1.jsx)(ControlButton_1.ControlButton, { onClick: onMinusClicked, style: buttonStyle, title: "Zoom out timeline", role: 'ControlButton', type: "button", disabled: timeline_zoom_1.TIMELINE_MIN_ZOOM === zoom, children: (0, jsx_runtime_1.jsx)(minus_1.Minus, { style: iconStyle }) }), (0, jsx_runtime_1.jsx)(layout_1.Spacing, { x: 0.5 }), (0, jsx_runtime_1.jsx)("input", { title: `Timeline zoom (${zoom}x)`, alt: `Timeline zoom (${zoom}x)`, type: 'range', min: timeline_zoom_1.TIMELINE_MIN_ZOOM, step: 0.1, value: zoom, max: timeline_zoom_1.TIMELINE_MAX_ZOOM, onChange: onChange, style: slider, tabIndex: tabIndex }), (0, jsx_runtime_1.jsx)(layout_1.Spacing, { x: 0.5 }), (0, jsx_runtime_1.jsx)(ControlButton_1.ControlButton, { onClick: onPlusClicked, style: buttonStyle, title: "Zoom in timeline", role: 'button', type: "button", disabled: timeline_zoom_1.TIMELINE_MAX_ZOOM === zoom, children: (0, jsx_runtime_1.jsx)(plus_1.Plus, { style: iconStyle }) })] }));
42
+ return ((0, jsx_runtime_1.jsxs)("div", { style: container, children: [(0, jsx_runtime_1.jsx)(ControlButton_1.ControlButton, { onClick: onMinusClicked, style: buttonStyle, title: "Zoom out timeline", role: 'ControlButton', type: "button", disabled: timeline_zoom_1.TIMELINE_MIN_ZOOM === zoom, children: (0, jsx_runtime_1.jsx)(minus_1.Minus, { style: iconStyle }) }), (0, jsx_runtime_1.jsx)(layout_1.Spacing, { x: 0.5 }), (0, jsx_runtime_1.jsx)("input", { title: `Timeline zoom (${zoom}x)`, alt: `Timeline zoom (${zoom}x)`, type: 'range', min: timeline_zoom_1.TIMELINE_MIN_ZOOM, step: 0.1, value: zoom, max: timeline_zoom_1.TIMELINE_MAX_ZOOM, onChange: onChange, className: "__remotion-timeline-slider", tabIndex: tabIndex }), (0, jsx_runtime_1.jsx)(layout_1.Spacing, { x: 0.5 }), (0, jsx_runtime_1.jsx)(ControlButton_1.ControlButton, { onClick: onPlusClicked, style: buttonStyle, title: "Zoom in timeline", role: 'button', type: "button", disabled: timeline_zoom_1.TIMELINE_MAX_ZOOM === zoom, children: (0, jsx_runtime_1.jsx)(plus_1.Plus, { style: iconStyle }) })] }));
46
43
  };
47
44
  exports.TimelineZoomControls = TimelineZoomControls;
@@ -1,7 +1,3 @@
1
- export declare let currentFrame: number;
2
- export declare let currentZoom: number;
3
- export declare let currentDuration: number;
4
- export declare let currentFps: number;
5
1
  export declare const getCurrentZoom: () => number;
6
2
  export declare const setCurrentZoom: (z: number) => void;
7
3
  export declare const getCurrentFrame: () => number;
@@ -1,39 +1,39 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.setCurrentFps = exports.getCurrentFps = exports.setCurrentDuration = exports.getCurrentDuration = exports.setCurrentFrame = exports.getCurrentFrame = exports.setCurrentZoom = exports.getCurrentZoom = exports.currentFps = exports.currentDuration = exports.currentZoom = exports.currentFrame = void 0;
4
- exports.currentFrame = 0;
5
- exports.currentZoom = 1;
6
- exports.currentDuration = 1;
7
- exports.currentFps = 1;
3
+ exports.setCurrentFps = exports.getCurrentFps = exports.setCurrentDuration = exports.getCurrentDuration = exports.setCurrentFrame = exports.getCurrentFrame = exports.setCurrentZoom = exports.getCurrentZoom = void 0;
4
+ let currentFrame = 0;
5
+ let currentZoom = 1;
6
+ let currentDuration = 1;
7
+ let currentFps = 1;
8
8
  const getCurrentZoom = () => {
9
- return exports.currentZoom;
9
+ return currentZoom;
10
10
  };
11
11
  exports.getCurrentZoom = getCurrentZoom;
12
12
  const setCurrentZoom = (z) => {
13
- exports.currentZoom = z;
13
+ currentZoom = z;
14
14
  };
15
15
  exports.setCurrentZoom = setCurrentZoom;
16
16
  const getCurrentFrame = () => {
17
- return exports.currentFrame;
17
+ return currentFrame;
18
18
  };
19
19
  exports.getCurrentFrame = getCurrentFrame;
20
20
  const setCurrentFrame = (f) => {
21
- exports.currentFrame = f;
21
+ currentFrame = f;
22
22
  };
23
23
  exports.setCurrentFrame = setCurrentFrame;
24
24
  const getCurrentDuration = () => {
25
- return exports.currentDuration;
25
+ return currentDuration;
26
26
  };
27
27
  exports.getCurrentDuration = getCurrentDuration;
28
28
  const setCurrentDuration = (d) => {
29
- exports.currentDuration = d;
29
+ currentDuration = d;
30
30
  };
31
31
  exports.setCurrentDuration = setCurrentDuration;
32
32
  const getCurrentFps = () => {
33
- return exports.currentFps;
33
+ return currentFps;
34
34
  };
35
35
  exports.getCurrentFps = getCurrentFps;
36
36
  const setCurrentFps = (d) => {
37
- exports.currentFps = d;
37
+ currentFps = d;
38
38
  };
39
39
  exports.setCurrentFps = setCurrentFps;
@@ -9,11 +9,10 @@ const isTrackHidden = (track, allTracks, viewState) => {
9
9
  if (!track.sequence.parent) {
10
10
  return false;
11
11
  }
12
- const parent = allTracks.find((t) => t.sequence.id === track.sequence.parent);
13
- if (!parent) {
14
- // TODO: Tighten up, when toggling rich timeline this case can happen right now
12
+ if (!track.canCollapse) {
15
13
  return false;
16
14
  }
15
+ const parent = allTracks.find((t) => t.sequence.id === track.sequence.parent);
17
16
  if ((0, exports.isTrackCollapsed)(parent.hash, viewState)) {
18
17
  return true;
19
18
  }
@@ -24,7 +24,6 @@ export declare const getScrollPositionForCursorOnRightEdge: ({ nextFrame, durati
24
24
  nextFrame: number;
25
25
  durationInFrames: number;
26
26
  }) => number;
27
- export declare const getFrameIncrement: (durationInFrames: number) => number;
28
27
  export declare const getFrameIncrementFromWidth: (durationInFrames: number, width: number) => number;
29
28
  export declare const getFrameWhileScrollingRight: ({ durationInFrames, width, }: {
30
29
  durationInFrames: number;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.zoomAndPreserveCursor = exports.getFrameFromX = exports.getFrameWhileScrollingRight = exports.getFrameIncrementFromWidth = exports.getFrameIncrement = exports.getScrollPositionForCursorOnRightEdge = exports.getScrollPositionForCursorOnLeftEdge = exports.scrollToTimelineXOffset = exports.ensureFrameIsInViewport = exports.isCursorInViewport = exports.getFrameWhileScrollingLeft = exports.canScrollTimelineIntoDirection = void 0;
3
+ exports.zoomAndPreserveCursor = exports.getFrameFromX = exports.getFrameWhileScrollingRight = exports.getFrameIncrementFromWidth = exports.getScrollPositionForCursorOnRightEdge = exports.getScrollPositionForCursorOnLeftEdge = exports.scrollToTimelineXOffset = exports.ensureFrameIsInViewport = exports.isCursorInViewport = exports.getFrameWhileScrollingLeft = exports.canScrollTimelineIntoDirection = void 0;
4
4
  const remotion_1 = require("remotion");
5
5
  const timeline_layout_1 = require("../../helpers/timeline-layout");
6
6
  const timeline_refs_1 = require("./timeline-refs");
@@ -23,7 +23,7 @@ const calculateFrameWhileScrollingRight = ({ durationInFrames, width, scrollLeft
23
23
  extrapolate: 'clamp',
24
24
  }) +
25
25
  Math.ceil((((_a = timeline_refs_1.scrollableRef.current) === null || _a === void 0 ? void 0 : _a.clientWidth) - timeline_layout_1.TIMELINE_PADDING) /
26
- (0, exports.getFrameIncrement)(durationInFrames)));
26
+ getFrameIncrement(durationInFrames)));
27
27
  };
28
28
  const getFrameWhileScrollingLeft = ({ durationInFrames, width, }) => {
29
29
  var _a, _b;
@@ -145,14 +145,14 @@ const scrollToTimelineXOffset = (scrollPos) => {
145
145
  };
146
146
  exports.scrollToTimelineXOffset = scrollToTimelineXOffset;
147
147
  const getScrollPositionForCursorOnLeftEdge = ({ nextFrame, durationInFrames, }) => {
148
- const frameIncrement = (0, exports.getFrameIncrement)(durationInFrames);
148
+ const frameIncrement = getFrameIncrement(durationInFrames);
149
149
  const scrollPos = frameIncrement * nextFrame;
150
150
  return scrollPos;
151
151
  };
152
152
  exports.getScrollPositionForCursorOnLeftEdge = getScrollPositionForCursorOnLeftEdge;
153
153
  const getScrollPositionForCursorOnRightEdge = ({ nextFrame, durationInFrames, }) => {
154
154
  var _a, _b;
155
- const frameIncrement = (0, exports.getFrameIncrement)(durationInFrames);
155
+ const frameIncrement = getFrameIncrement(durationInFrames);
156
156
  const framesRemaining = durationInFrames - 1 - nextFrame;
157
157
  const fromRight = framesRemaining * frameIncrement + timeline_layout_1.TIMELINE_PADDING;
158
158
  const scrollPos = ((_a = timeline_refs_1.scrollableRef.current) === null || _a === void 0 ? void 0 : _a.scrollWidth) -
@@ -168,7 +168,6 @@ const getFrameIncrement = (durationInFrames) => {
168
168
  const width = (_b = (_a = timeline_refs_1.scrollableRef.current) === null || _a === void 0 ? void 0 : _a.scrollWidth) !== null && _b !== void 0 ? _b : 0;
169
169
  return (0, exports.getFrameIncrementFromWidth)(durationInFrames, width);
170
170
  };
171
- exports.getFrameIncrement = getFrameIncrement;
172
171
  const getFrameIncrementFromWidth = (durationInFrames, width) => {
173
172
  return (width - timeline_layout_1.TIMELINE_PADDING * 2) / (durationInFrames - 1);
174
173
  };
@@ -209,7 +208,7 @@ const zoomAndPreserveCursor = ({ oldZoom, newZoom, currentFrame, currentDuration
209
208
  if (!current) {
210
209
  return;
211
210
  }
212
- const frameIncrement = (0, exports.getFrameIncrement)(currentDurationInFrames);
211
+ const frameIncrement = getFrameIncrement(currentDurationInFrames);
213
212
  const prevCursorPosition = frameIncrement * currentFrame + timeline_layout_1.TIMELINE_PADDING;
214
213
  const newCursorPosition = ratio * (prevCursorPosition - timeline_layout_1.TIMELINE_PADDING) + timeline_layout_1.TIMELINE_PADDING;
215
214
  current.scrollLeft += newCursorPosition - prevCursorPosition;
@@ -145,6 +145,7 @@ const TimelineInOutPointToggle = () => {
145
145
  },
146
146
  commandCtrlKey: false,
147
147
  preventDefault: true,
148
+ triggerIfInputFieldFocused: false,
148
149
  });
149
150
  const oKey = keybindings.registerKeybinding({
150
151
  event: 'keypress',
@@ -154,6 +155,7 @@ const TimelineInOutPointToggle = () => {
154
155
  },
155
156
  commandCtrlKey: false,
156
157
  preventDefault: true,
158
+ triggerIfInputFieldFocused: false,
157
159
  });
158
160
  const xKey = keybindings.registerKeybinding({
159
161
  event: 'keypress',
@@ -163,6 +165,7 @@ const TimelineInOutPointToggle = () => {
163
165
  },
164
166
  commandCtrlKey: false,
165
167
  preventDefault: true,
168
+ triggerIfInputFieldFocused: false,
166
169
  });
167
170
  return () => {
168
171
  oKey.unregister();
@@ -1,2 +1,3 @@
1
1
  import React from 'react';
2
+ export declare const useResponsiveSidebarStatus: () => 'collapsed' | 'expanded';
2
3
  export declare const TopPanel: React.FC;
@@ -1,16 +1,17 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TopPanel = void 0;
3
+ exports.TopPanel = exports.useResponsiveSidebarStatus = void 0;
4
4
  const jsx_runtime_1 = require("react/jsx-runtime");
5
5
  const react_1 = require("react");
6
- const use_compact_ui_1 = require("../helpers/use-compact-ui");
6
+ const use_breakpoint_1 = require("../helpers/use-breakpoint");
7
7
  const sidebar_1 = require("../state/sidebar");
8
8
  const Canvas_1 = require("./Canvas");
9
- const CollapsedCompositionSelector_1 = require("./CollapsedCompositionSelector");
10
9
  const CompositionSelector_1 = require("./CompositionSelector");
10
+ const CurrentCompositionSideEffects_1 = require("./CurrentCompositionSideEffects");
11
11
  const InitialCompositionLoader_1 = require("./InitialCompositionLoader");
12
12
  const MenuToolbar_1 = require("./MenuToolbar");
13
13
  const PreviewToolbar_1 = require("./PreviewToolbar");
14
+ const RightPanel_1 = require("./RightPanel");
14
15
  const SplitterContainer_1 = require("./Splitter/SplitterContainer");
15
16
  const SplitterElement_1 = require("./Splitter/SplitterElement");
16
17
  const SplitterHandle_1 = require("./Splitter/SplitterHandle");
@@ -33,25 +34,38 @@ const canvasContainer = {
33
34
  const leftContainer = {
34
35
  flex: 1,
35
36
  display: 'flex',
37
+ maxWidth: '100%',
36
38
  };
37
- const TopPanel = () => {
38
- const compactUi = (0, use_compact_ui_1.useCompactUI)();
39
- const { setSidebarCollapsedState, sidebarCollapsedState } = (0, react_1.useContext)(sidebar_1.SidebarContext);
40
- const actualState = (0, react_1.useMemo)(() => {
41
- if (sidebarCollapsedState === 'collapsed') {
39
+ const useResponsiveSidebarStatus = () => {
40
+ const { sidebarCollapsedStateLeft } = (0, react_1.useContext)(sidebar_1.SidebarContext);
41
+ const responsiveLeftStatus = (0, use_breakpoint_1.useBreakpoint)(1200) ? 'collapsed' : 'expanded';
42
+ const actualStateLeft = (0, react_1.useMemo)(() => {
43
+ if (sidebarCollapsedStateLeft === 'collapsed') {
42
44
  return 'collapsed';
43
45
  }
44
- if (sidebarCollapsedState === 'expanded') {
46
+ if (sidebarCollapsedStateLeft === 'expanded') {
45
47
  return 'expanded';
46
48
  }
47
- return compactUi ? 'collapsed' : 'expanded';
48
- }, [compactUi, sidebarCollapsedState]);
49
- const onCollapse = (0, react_1.useCallback)(() => {
50
- setSidebarCollapsedState('collapsed');
49
+ return responsiveLeftStatus;
50
+ }, [sidebarCollapsedStateLeft, responsiveLeftStatus]);
51
+ return actualStateLeft;
52
+ };
53
+ exports.useResponsiveSidebarStatus = useResponsiveSidebarStatus;
54
+ const TopPanel = () => {
55
+ const { setSidebarCollapsedState, sidebarCollapsedStateRight } = (0, react_1.useContext)(sidebar_1.SidebarContext);
56
+ const actualStateLeft = (0, exports.useResponsiveSidebarStatus)();
57
+ const actualStateRight = (0, react_1.useMemo)(() => {
58
+ if (sidebarCollapsedStateRight === 'collapsed') {
59
+ return 'collapsed';
60
+ }
61
+ return 'expanded';
62
+ }, [sidebarCollapsedStateRight]);
63
+ const onCollapseLeft = (0, react_1.useCallback)(() => {
64
+ setSidebarCollapsedState({ left: 'collapsed', right: null });
51
65
  }, [setSidebarCollapsedState]);
52
- const onExpand = (0, react_1.useCallback)(() => {
53
- setSidebarCollapsedState('expanded');
66
+ const onCollapseRight = (0, react_1.useCallback)(() => {
67
+ setSidebarCollapsedState({ left: null, right: 'collapsed' });
54
68
  }, [setSidebarCollapsedState]);
55
- return ((0, jsx_runtime_1.jsxs)("div", { style: container, children: [(0, jsx_runtime_1.jsx)(InitialCompositionLoader_1.InitialCompositionLoader, {}), (0, jsx_runtime_1.jsx)(MenuToolbar_1.MenuToolbar, {}), (0, jsx_runtime_1.jsxs)("div", { style: row, children: [actualState === 'collapsed' ? ((0, jsx_runtime_1.jsx)(CollapsedCompositionSelector_1.CollapsedCompositionSelector, { onExpand: onExpand })) : null, (0, jsx_runtime_1.jsxs)(SplitterContainer_1.SplitterContainer, { minFlex: 0.15, maxFlex: 0.4, defaultFlex: 0.2, id: "sidebar-to-preview", orientation: "vertical", children: [actualState === 'expanded' ? ((0, jsx_runtime_1.jsx)(SplitterElement_1.SplitterElement, { type: "flexer", children: (0, jsx_runtime_1.jsx)("div", { style: leftContainer, className: "css-reset", children: (0, jsx_runtime_1.jsx)(CompositionSelector_1.CompositionSelector, {}) }) })) : null, actualState === 'expanded' ? ((0, jsx_runtime_1.jsx)(SplitterHandle_1.SplitterHandle, { allowToCollapse: true, onCollapse: onCollapse })) : null, (0, jsx_runtime_1.jsx)(SplitterElement_1.SplitterElement, { type: "anti-flexer", children: (0, jsx_runtime_1.jsx)("div", { style: canvasContainer, children: (0, jsx_runtime_1.jsx)(Canvas_1.Canvas, {}) }) })] })] }), (0, jsx_runtime_1.jsx)(PreviewToolbar_1.PreviewToolbar, {})] }));
69
+ return ((0, jsx_runtime_1.jsxs)("div", { style: container, children: [(0, jsx_runtime_1.jsx)(InitialCompositionLoader_1.InitialCompositionLoader, {}), (0, jsx_runtime_1.jsx)(MenuToolbar_1.MenuToolbar, {}), (0, jsx_runtime_1.jsx)("div", { style: row, children: (0, jsx_runtime_1.jsxs)(SplitterContainer_1.SplitterContainer, { minFlex: 0.15, maxFlex: 0.4, defaultFlex: 0.2, id: "sidebar-to-preview", orientation: "vertical", children: [actualStateLeft === 'expanded' ? ((0, jsx_runtime_1.jsx)(SplitterElement_1.SplitterElement, { type: "flexer", children: (0, jsx_runtime_1.jsx)("div", { style: leftContainer, className: "css-reset", children: (0, jsx_runtime_1.jsx)(CompositionSelector_1.CompositionSelector, {}) }) })) : null, actualStateLeft === 'expanded' ? ((0, jsx_runtime_1.jsx)(SplitterHandle_1.SplitterHandle, { allowToCollapse: "left", onCollapse: onCollapseLeft })) : null, (0, jsx_runtime_1.jsx)(SplitterElement_1.SplitterElement, { type: "anti-flexer", children: (0, jsx_runtime_1.jsxs)(SplitterContainer_1.SplitterContainer, { minFlex: 0.5, maxFlex: 0.8, defaultFlex: 0.7, id: "canvas-to-right-sidebar", orientation: "vertical", children: [(0, jsx_runtime_1.jsx)(SplitterElement_1.SplitterElement, { type: "flexer", children: (0, jsx_runtime_1.jsx)("div", { style: canvasContainer, children: (0, jsx_runtime_1.jsx)(Canvas_1.Canvas, {}) }) }), actualStateRight === 'expanded' ? ((0, jsx_runtime_1.jsx)(SplitterHandle_1.SplitterHandle, { allowToCollapse: "right", onCollapse: onCollapseRight })) : null, actualStateRight === 'expanded' ? ((0, jsx_runtime_1.jsx)(SplitterElement_1.SplitterElement, { type: "anti-flexer", children: (0, jsx_runtime_1.jsx)(RightPanel_1.RightPanel, {}) })) : null] }) })] }) }), (0, jsx_runtime_1.jsx)(PreviewToolbar_1.PreviewToolbar, {}), (0, jsx_runtime_1.jsx)(CurrentCompositionSideEffects_1.CurrentCompositionKeybindings, {}), (0, jsx_runtime_1.jsx)(CurrentCompositionSideEffects_1.TitleUpdater, {})] }));
56
70
  };
57
71
  exports.TopPanel = TopPanel;
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ export declare const ZoomGesturesProvider: React.FC<{
3
+ children: React.ReactNode;
4
+ }>;
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ZoomGesturesProvider = void 0;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const react_1 = require("react");
6
+ const editor_zoom_gestures_1 = require("../state/editor-zoom-gestures");
7
+ const ZoomGesturesProvider = ({ children }) => {
8
+ const [editorZoomGestures, setEditorZoomGesturesState] = (0, react_1.useState)(() => (0, editor_zoom_gestures_1.loadEditorZoomGesturesOption)());
9
+ const setEditorZoomGestures = (0, react_1.useCallback)((newValue) => {
10
+ setEditorZoomGesturesState((prevState) => {
11
+ const newVal = newValue(prevState);
12
+ (0, editor_zoom_gestures_1.persistEditorZoomGesturesOption)(newVal);
13
+ return newVal;
14
+ });
15
+ }, []);
16
+ const editorZoomGesturesCtx = (0, react_1.useMemo)(() => {
17
+ return {
18
+ editorZoomGestures,
19
+ setEditorZoomGestures,
20
+ };
21
+ }, [editorZoomGestures, setEditorZoomGestures]);
22
+ return ((0, jsx_runtime_1.jsx)(editor_zoom_gestures_1.EditorZoomGesturesContext.Provider, { value: editorZoomGesturesCtx, children: children }));
23
+ };
24
+ exports.ZoomGesturesProvider = ZoomGesturesProvider;
@@ -1,4 +1,3 @@
1
1
  import type React from 'react';
2
- export declare const persistCurrentZoom: (zoom: number) => void;
3
2
  export declare const getZoomForComposition: (composition: string) => number;
4
3
  export declare const ZoomPersistor: React.FC;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ZoomPersistor = exports.getZoomForComposition = exports.persistCurrentZoom = void 0;
3
+ exports.ZoomPersistor = exports.getZoomForComposition = void 0;
4
4
  const react_1 = require("react");
5
5
  const remotion_1 = require("remotion");
6
6
  const timeline_zoom_1 = require("../state/timeline-zoom");
@@ -15,7 +15,6 @@ const persistCurrentZoom = (zoom) => {
15
15
  }
16
16
  localStorage.setItem(makeKey(currentComposition), String(zoom));
17
17
  };
18
- exports.persistCurrentZoom = persistCurrentZoom;
19
18
  const getZoomForComposition = (composition) => {
20
19
  const zoom = localStorage.getItem(makeKey(composition));
21
20
  return zoom ? Number(zoom) : 0;
@@ -30,7 +29,7 @@ const ZoomPersistor = () => {
30
29
  if (!isActive) {
31
30
  return;
32
31
  }
33
- (0, exports.persistCurrentZoom)(zoom);
32
+ persistCurrentZoom(zoom);
34
33
  }, [zoom, isActive, playing]);
35
34
  return null;
36
35
  };
@@ -0,0 +1,10 @@
1
+ import React from 'react';
2
+ export declare type ZodType = Awaited<typeof import('zod')>['z'];
3
+ export declare type ZodTypesType = Awaited<typeof import('@remotion/zod-types')>;
4
+ export declare const getZodIfPossible: () => Promise<ZodType | null>;
5
+ export declare const getZTypesIfPossible: () => Promise<ZodTypesType | null>;
6
+ export declare const useZodIfPossible: () => typeof import("zod/lib/external") | null;
7
+ export declare const useZodTypesIfPossible: () => typeof import("@remotion/zod-types") | null;
8
+ export declare const ZodProvider: React.FC<{
9
+ children: React.ReactNode;
10
+ }>;
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.ZodProvider = exports.useZodTypesIfPossible = exports.useZodIfPossible = exports.getZTypesIfPossible = exports.getZodIfPossible = void 0;
27
+ const jsx_runtime_1 = require("react/jsx-runtime");
28
+ const react_1 = require("react");
29
+ const getZodIfPossible = async () => {
30
+ try {
31
+ const { z } = await Promise.resolve().then(() => __importStar(require('zod')));
32
+ return z;
33
+ }
34
+ catch (err) {
35
+ return null;
36
+ }
37
+ };
38
+ exports.getZodIfPossible = getZodIfPossible;
39
+ const getZTypesIfPossible = async () => {
40
+ try {
41
+ const mod = await Promise.resolve().then(() => __importStar(require('@remotion/zod-types')));
42
+ return mod;
43
+ }
44
+ catch (err) {
45
+ return null;
46
+ }
47
+ };
48
+ exports.getZTypesIfPossible = getZTypesIfPossible;
49
+ const useZodIfPossible = () => {
50
+ var _a;
51
+ const context = (0, react_1.useContext)(ZodContext);
52
+ return (_a = context === null || context === void 0 ? void 0 : context.zod) !== null && _a !== void 0 ? _a : null;
53
+ };
54
+ exports.useZodIfPossible = useZodIfPossible;
55
+ const useZodTypesIfPossible = () => {
56
+ var _a;
57
+ const context = (0, react_1.useContext)(ZodContext);
58
+ return (_a = context === null || context === void 0 ? void 0 : context.zodTypes) !== null && _a !== void 0 ? _a : null;
59
+ };
60
+ exports.useZodTypesIfPossible = useZodTypesIfPossible;
61
+ const ZodContext = (0, react_1.createContext)(null);
62
+ const ZodProvider = ({ children }) => {
63
+ const [zod, setZod] = (0, react_1.useState)(null);
64
+ const [zodTypes, setZodTypes] = (0, react_1.useState)(null);
65
+ (0, react_1.useEffect)(() => {
66
+ (0, exports.getZodIfPossible)().then((z) => setZod(z));
67
+ }, []);
68
+ (0, react_1.useEffect)(() => {
69
+ (0, exports.getZTypesIfPossible)().then((z) => setZodTypes(z));
70
+ }, []);
71
+ const contextValue = (0, react_1.useMemo)(() => {
72
+ return {
73
+ zod,
74
+ zodTypes,
75
+ };
76
+ }, [zod, zodTypes]);
77
+ return ((0, jsx_runtime_1.jsx)(ZodContext.Provider, { value: contextValue, children: children }));
78
+ };
79
+ exports.ZodProvider = ZodProvider;