@remotion/cli 4.0.0-alpha4 → 4.0.0-alpha6

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 (489) 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/better-opn/index.js +3 -3
  7. package/dist/cloudrun-command.d.ts +1 -0
  8. package/dist/cloudrun-command.js +27 -0
  9. package/dist/codemods/update-default-props.d.ts +5 -0
  10. package/dist/codemods/update-default-props.js +143 -0
  11. package/dist/color-math.d.ts +2 -0
  12. package/dist/color-math.js +13 -0
  13. package/dist/composition-prompts.d.ts +3 -4
  14. package/dist/composition-prompts.js +0 -1
  15. package/dist/compositions.js +10 -4
  16. package/dist/config/bitrate.d.ts +2 -2
  17. package/dist/config/bitrate.js +2 -2
  18. package/dist/config/browser.d.ts +1 -3
  19. package/dist/config/browser.js +2 -12
  20. package/dist/config/codec.d.ts +0 -4
  21. package/dist/config/codec.js +1 -21
  22. package/dist/config/image-format.d.ts +5 -3
  23. package/dist/config/image-format.js +32 -10
  24. package/dist/config/index.d.ts +255 -14
  25. package/dist/config/index.js +16 -49
  26. package/dist/config/jpeg-quality.d.ts +2 -0
  27. package/dist/config/jpeg-quality.js +17 -0
  28. package/dist/config/public-dir.d.ts +1 -1
  29. package/dist/config/scale.d.ts +2 -1
  30. package/dist/convert-entry-point-to-serve-url.d.ts +1 -0
  31. package/dist/convert-entry-point-to-serve-url.js +15 -0
  32. package/dist/determine-image-format.d.ts +5 -4
  33. package/dist/determine-image-format.js +17 -4
  34. package/dist/download-progress.d.ts +2 -2
  35. package/dist/download-progress.js +12 -3
  36. package/dist/editor/components/Canvas.js +3 -0
  37. package/dist/editor/components/Checkbox.d.ts +6 -0
  38. package/dist/editor/components/Checkbox.js +42 -0
  39. package/dist/editor/components/CheckerboardProvider.d.ts +4 -0
  40. package/dist/editor/components/CheckerboardProvider.js +24 -0
  41. package/dist/editor/components/CompositionSelector.js +2 -4
  42. package/dist/editor/components/CompositionSelectorItem.d.ts +3 -3
  43. package/dist/editor/components/CompositionSelectorItem.js +24 -6
  44. package/dist/editor/components/CurrentComposition.js +4 -19
  45. package/dist/editor/components/CurrentCompositionSideEffects.d.ts +3 -0
  46. package/dist/editor/components/CurrentCompositionSideEffects.js +51 -0
  47. package/dist/editor/components/Editor.js +2 -11
  48. package/dist/editor/components/EditorContent.js +1 -1
  49. package/dist/editor/components/EditorContexts.js +10 -86
  50. package/dist/editor/components/GlobalKeybindings.js +4 -0
  51. package/dist/editor/components/InitialCompositionLoader.d.ts +2 -2
  52. package/dist/editor/components/InlineAction.d.ts +7 -0
  53. package/dist/editor/components/InlineAction.js +31 -0
  54. package/dist/editor/components/KeyboardShortcutsExplainer.js +5 -4
  55. package/dist/editor/components/MediaVolumeProvider.d.ts +4 -0
  56. package/dist/editor/components/MediaVolumeProvider.js +25 -0
  57. package/dist/editor/components/Menu/MenuSubItem.d.ts +0 -1
  58. package/dist/editor/components/Menu/MenuSubItem.js +15 -3
  59. package/dist/editor/components/Menu/is-menu-item.d.ts +2 -0
  60. package/dist/editor/components/Menu/is-menu-item.js +3 -1
  61. package/dist/editor/components/Menu/styles.d.ts +4 -0
  62. package/dist/editor/components/Menu/styles.js +13 -4
  63. package/dist/editor/components/MenuToolbar.js +16 -3
  64. package/dist/editor/components/ModalContainer.d.ts +2 -0
  65. package/dist/editor/components/ModalContainer.js +12 -3
  66. package/dist/editor/components/ModalHeader.js +6 -2
  67. package/dist/editor/components/Modals.d.ts +2 -0
  68. package/dist/editor/components/Modals.js +23 -0
  69. package/dist/editor/components/ModalsProvider.d.ts +4 -0
  70. package/dist/editor/components/ModalsProvider.js +17 -0
  71. package/dist/editor/components/NewComposition/CancelButton.js +3 -0
  72. package/dist/editor/components/NewComposition/ComboBox.js +23 -15
  73. package/dist/editor/components/NewComposition/InputDragger.d.ts +4 -0
  74. package/dist/editor/components/NewComposition/InputDragger.js +12 -7
  75. package/dist/editor/components/NewComposition/MenuContent.js +14 -1
  76. package/dist/editor/components/NewComposition/NewCompDuration.js +2 -2
  77. package/dist/editor/components/NewComposition/NewComposition.js +8 -5
  78. package/dist/editor/components/NewComposition/RemInput.d.ts +14 -2
  79. package/dist/editor/components/NewComposition/RemInput.js +24 -9
  80. package/dist/editor/components/NewComposition/RemInputTypeColor.d.ts +7 -0
  81. package/dist/editor/components/NewComposition/RemInputTypeColor.js +53 -0
  82. package/dist/editor/components/NewComposition/RemTextarea.d.ts +7 -0
  83. package/dist/editor/components/NewComposition/RemTextarea.js +92 -0
  84. package/dist/editor/components/NewComposition/ValidationMessage.d.ts +2 -0
  85. package/dist/editor/components/NewComposition/ValidationMessage.js +18 -8
  86. package/dist/editor/components/Notifications/NotificationCenter.d.ts +1 -0
  87. package/dist/editor/components/Notifications/NotificationCenter.js +11 -1
  88. package/dist/editor/components/Notifications/ServerDisconnected.d.ts +0 -4
  89. package/dist/editor/components/Notifications/ServerDisconnected.js +4 -14
  90. package/dist/editor/components/PlayPause.js +6 -0
  91. package/dist/editor/components/PlaybackKeyboardShortcutsManager.js +3 -0
  92. package/dist/editor/components/PlaybackRateSelector.d.ts +0 -2
  93. package/dist/editor/components/PlaybackRateSelector.js +5 -6
  94. package/dist/editor/components/PlayerEmitterContext.d.ts +4 -0
  95. package/dist/editor/components/PlayerEmitterContext.js +11 -0
  96. package/dist/editor/components/Preview.d.ts +0 -1
  97. package/dist/editor/components/Preview.js +4 -4
  98. package/dist/editor/components/PreviewToolbar.js +2 -2
  99. package/dist/editor/components/QuickSwitcher/QuickSwitcherContent.js +8 -3
  100. package/dist/editor/components/QuickSwitcher/QuickSwitcherResult.js +4 -2
  101. package/dist/editor/components/QuickSwitcher/algolia-search.d.ts +0 -27
  102. package/dist/editor/components/QuickSwitcher/algolia-search.js +2 -3
  103. package/dist/editor/components/RenderButton.d.ts +2 -0
  104. package/dist/editor/components/RenderButton.js +103 -0
  105. package/dist/editor/components/RenderModal/CliCopyButton.d.ts +4 -0
  106. package/dist/editor/components/RenderModal/CliCopyButton.js +55 -0
  107. package/dist/editor/components/RenderModal/CrfSetting.d.ts +15 -0
  108. package/dist/editor/components/RenderModal/CrfSetting.js +42 -0
  109. package/dist/editor/components/RenderModal/EnforceAudioTrackSetting.d.ts +8 -0
  110. package/dist/editor/components/RenderModal/EnforceAudioTrackSetting.js +16 -0
  111. package/dist/editor/components/RenderModal/EnvInput.d.ts +11 -0
  112. package/dist/editor/components/RenderModal/EnvInput.js +74 -0
  113. package/dist/editor/components/RenderModal/FrameRangeSetting.d.ts +8 -0
  114. package/dist/editor/components/RenderModal/FrameRangeSetting.js +42 -0
  115. package/dist/editor/components/RenderModal/GuiRenderStatus.d.ts +5 -0
  116. package/dist/editor/components/RenderModal/GuiRenderStatus.js +78 -0
  117. package/dist/editor/components/RenderModal/InfoBubble.d.ts +5 -0
  118. package/dist/editor/components/RenderModal/InfoBubble.js +115 -0
  119. package/dist/editor/components/RenderModal/InfoTooltip.d.ts +5 -0
  120. package/dist/editor/components/RenderModal/InfoTooltip.js +41 -0
  121. package/dist/editor/components/RenderModal/InlineEyeIcon.d.ts +5 -0
  122. package/dist/editor/components/RenderModal/InlineEyeIcon.js +17 -0
  123. package/dist/editor/components/RenderModal/InlineRemoveButton.d.ts +4 -0
  124. package/dist/editor/components/RenderModal/InlineRemoveButton.js +17 -0
  125. package/dist/editor/components/RenderModal/JpegQualitySetting.d.ts +5 -0
  126. package/dist/editor/components/RenderModal/JpegQualitySetting.js +12 -0
  127. package/dist/editor/components/RenderModal/MutedSetting.d.ts +8 -0
  128. package/dist/editor/components/RenderModal/MutedSetting.js +16 -0
  129. package/dist/editor/components/RenderModal/NumberOfLoopsSetting.d.ts +5 -0
  130. package/dist/editor/components/RenderModal/NumberOfLoopsSetting.js +26 -0
  131. package/dist/editor/components/RenderModal/NumberSetting.d.ts +12 -0
  132. package/dist/editor/components/RenderModal/NumberSetting.js +29 -0
  133. package/dist/editor/components/RenderModal/OptionExplainer.d.ts +5 -0
  134. package/dist/editor/components/RenderModal/OptionExplainer.js +55 -0
  135. package/dist/editor/components/RenderModal/RenderModal.d.ts +35 -0
  136. package/dist/editor/components/RenderModal/RenderModal.js +597 -0
  137. package/dist/editor/components/RenderModal/RenderModalAdvanced.d.ts +26 -0
  138. package/dist/editor/components/RenderModal/RenderModalAdvanced.js +61 -0
  139. package/dist/editor/components/RenderModal/RenderModalAudio.d.ts +17 -0
  140. package/dist/editor/components/RenderModal/RenderModalAudio.js +46 -0
  141. package/dist/editor/components/RenderModal/RenderModalBasic.d.ts +23 -0
  142. package/dist/editor/components/RenderModal/RenderModalBasic.js +79 -0
  143. package/dist/editor/components/RenderModal/RenderModalData.d.ts +20 -0
  144. package/dist/editor/components/RenderModal/RenderModalData.js +249 -0
  145. package/dist/editor/components/RenderModal/RenderModalEnvironmentVariables.d.ts +5 -0
  146. package/dist/editor/components/RenderModal/RenderModalEnvironmentVariables.js +55 -0
  147. package/dist/editor/components/RenderModal/RenderModalGif.d.ts +9 -0
  148. package/dist/editor/components/RenderModal/RenderModalGif.js +19 -0
  149. package/dist/editor/components/RenderModal/RenderModalHr.d.ts +2 -0
  150. package/dist/editor/components/RenderModal/RenderModalHr.js +18 -0
  151. package/dist/editor/components/RenderModal/RenderModalInput.d.ts +10 -0
  152. package/dist/editor/components/RenderModal/RenderModalInput.js +13 -0
  153. package/dist/editor/components/RenderModal/RenderModalJSONPropsEditor.d.ts +15 -0
  154. package/dist/editor/components/RenderModal/RenderModalJSONPropsEditor.js +109 -0
  155. package/dist/editor/components/RenderModal/RenderModalPicture.d.ts +28 -0
  156. package/dist/editor/components/RenderModal/RenderModalPicture.js +54 -0
  157. package/dist/editor/components/RenderModal/RenderStatusModal.d.ts +4 -0
  158. package/dist/editor/components/RenderModal/RenderStatusModal.js +72 -0
  159. package/dist/editor/components/RenderModal/ScaleSetting.d.ts +5 -0
  160. package/dist/editor/components/RenderModal/ScaleSetting.js +17 -0
  161. package/dist/editor/components/RenderModal/SchemaEditor/SchemaEditor.d.ts +13 -0
  162. package/dist/editor/components/RenderModal/SchemaEditor/SchemaEditor.js +39 -0
  163. package/dist/editor/components/RenderModal/SchemaEditor/SchemaEmptyStateGraphic.d.ts +2 -0
  164. package/dist/editor/components/RenderModal/SchemaEditor/SchemaEmptyStateGraphic.js +15 -0
  165. package/dist/editor/components/RenderModal/SchemaEditor/SchemaErrorMessages.d.ts +12 -0
  166. package/dist/editor/components/RenderModal/SchemaEditor/SchemaErrorMessages.js +59 -0
  167. package/dist/editor/components/RenderModal/SchemaEditor/SchemaLabel.d.ts +16 -0
  168. package/dist/editor/components/RenderModal/SchemaEditor/SchemaLabel.js +40 -0
  169. package/dist/editor/components/RenderModal/SchemaEditor/SchemaResetButton.d.ts +4 -0
  170. package/dist/editor/components/RenderModal/SchemaEditor/SchemaResetButton.js +17 -0
  171. package/dist/editor/components/RenderModal/SchemaEditor/SchemaSaveButton.d.ts +5 -0
  172. package/dist/editor/components/RenderModal/SchemaEditor/SchemaSaveButton.js +17 -0
  173. package/dist/editor/components/RenderModal/SchemaEditor/ZodArrayEditor.d.ts +15 -0
  174. package/dist/editor/components/RenderModal/SchemaEditor/ZodArrayEditor.js +84 -0
  175. package/dist/editor/components/RenderModal/SchemaEditor/ZodArrayItemEditor.d.ts +14 -0
  176. package/dist/editor/components/RenderModal/SchemaEditor/ZodArrayItemEditor.js +28 -0
  177. package/dist/editor/components/RenderModal/SchemaEditor/ZodBooleanEditor.d.ts +13 -0
  178. package/dist/editor/components/RenderModal/SchemaEditor/ZodBooleanEditor.js +27 -0
  179. package/dist/editor/components/RenderModal/SchemaEditor/ZodColorEditor.d.ts +15 -0
  180. package/dist/editor/components/RenderModal/SchemaEditor/ZodColorEditor.js +116 -0
  181. package/dist/editor/components/RenderModal/SchemaEditor/ZodDateEditor.d.ts +15 -0
  182. package/dist/editor/components/RenderModal/SchemaEditor/ZodDateEditor.js +76 -0
  183. package/dist/editor/components/RenderModal/SchemaEditor/ZodEffectEditor.d.ts +15 -0
  184. package/dist/editor/components/RenderModal/SchemaEditor/ZodEffectEditor.js +55 -0
  185. package/dist/editor/components/RenderModal/SchemaEditor/ZodEnumEditor.d.ts +15 -0
  186. package/dist/editor/components/RenderModal/SchemaEditor/ZodEnumEditor.js +72 -0
  187. package/dist/editor/components/RenderModal/SchemaEditor/ZodErrorMessages.d.ts +5 -0
  188. package/dist/editor/components/RenderModal/SchemaEditor/ZodErrorMessages.js +23 -0
  189. package/dist/editor/components/RenderModal/SchemaEditor/ZodNonEditableValue.d.ts +9 -0
  190. package/dist/editor/components/RenderModal/SchemaEditor/ZodNonEditableValue.js +27 -0
  191. package/dist/editor/components/RenderModal/SchemaEditor/ZodNullableEditor.d.ts +15 -0
  192. package/dist/editor/components/RenderModal/SchemaEditor/ZodNullableEditor.js +10 -0
  193. package/dist/editor/components/RenderModal/SchemaEditor/ZodNumberEditor.d.ts +15 -0
  194. package/dist/editor/components/RenderModal/SchemaEditor/ZodNumberEditor.js +88 -0
  195. package/dist/editor/components/RenderModal/SchemaEditor/ZodObjectEditor.d.ts +15 -0
  196. package/dist/editor/components/RenderModal/SchemaEditor/ZodObjectEditor.js +64 -0
  197. package/dist/editor/components/RenderModal/SchemaEditor/ZodOptionalEditor.d.ts +15 -0
  198. package/dist/editor/components/RenderModal/SchemaEditor/ZodOptionalEditor.js +10 -0
  199. package/dist/editor/components/RenderModal/SchemaEditor/ZodOrNullishEditor.d.ts +16 -0
  200. package/dist/editor/components/RenderModal/SchemaEditor/ZodOrNullishEditor.js +52 -0
  201. package/dist/editor/components/RenderModal/SchemaEditor/ZodStringEditor.d.ts +15 -0
  202. package/dist/editor/components/RenderModal/SchemaEditor/ZodStringEditor.js +48 -0
  203. package/dist/editor/components/RenderModal/SchemaEditor/ZodSwitch.d.ts +15 -0
  204. package/dist/editor/components/RenderModal/SchemaEditor/ZodSwitch.js +84 -0
  205. package/dist/editor/components/RenderModal/SchemaEditor/ZodUnionEditor.d.ts +15 -0
  206. package/dist/editor/components/RenderModal/SchemaEditor/ZodUnionEditor.js +49 -0
  207. package/dist/editor/components/RenderModal/SchemaEditor/create-zod-values.d.ts +2 -0
  208. package/dist/editor/components/RenderModal/SchemaEditor/create-zod-values.js +158 -0
  209. package/dist/editor/components/RenderModal/SchemaEditor/date-serialization.d.ts +6 -0
  210. package/dist/editor/components/RenderModal/SchemaEditor/date-serialization.js +24 -0
  211. package/dist/editor/components/RenderModal/SchemaEditor/get-schema-label.d.ts +2 -0
  212. package/dist/editor/components/RenderModal/SchemaEditor/get-schema-label.js +15 -0
  213. package/dist/editor/components/RenderModal/SchemaEditor/zod-types.d.ts +1 -0
  214. package/dist/editor/components/RenderModal/SchemaEditor/zod-types.js +2 -0
  215. package/dist/editor/components/RenderModal/WarningIndicatorButton.d.ts +6 -0
  216. package/dist/editor/components/RenderModal/WarningIndicatorButton.js +49 -0
  217. package/dist/editor/components/RenderModal/get-render-modal-warnings.d.ts +15 -0
  218. package/dist/editor/components/RenderModal/get-render-modal-warnings.js +34 -0
  219. package/dist/editor/components/RenderModal/human-readable-audio-codecs.d.ts +2 -0
  220. package/dist/editor/components/RenderModal/human-readable-audio-codecs.js +18 -0
  221. package/dist/editor/components/RenderModal/human-readable-codec.d.ts +2 -0
  222. package/dist/editor/components/RenderModal/human-readable-codec.js +36 -0
  223. package/dist/editor/components/RenderModal/layout.d.ts +7 -0
  224. package/dist/editor/components/RenderModal/layout.js +45 -0
  225. package/dist/editor/components/RenderModal/out-name-checker.d.ts +14 -0
  226. package/dist/editor/components/RenderModal/out-name-checker.js +80 -0
  227. package/dist/editor/components/RenderQueue/CircularProgress.d.ts +5 -0
  228. package/dist/editor/components/RenderQueue/CircularProgress.js +18 -0
  229. package/dist/editor/components/RenderQueue/RenderQueueError.d.ts +5 -0
  230. package/dist/editor/components/RenderQueue/RenderQueueError.js +26 -0
  231. package/dist/editor/components/RenderQueue/RenderQueueItem.d.ts +5 -0
  232. package/dist/editor/components/RenderQueue/RenderQueueItem.js +40 -0
  233. package/dist/editor/components/RenderQueue/RenderQueueItemCancelButton.d.ts +5 -0
  234. package/dist/editor/components/RenderQueue/RenderQueueItemCancelButton.js +26 -0
  235. package/dist/editor/components/RenderQueue/RenderQueueItemStatus.d.ts +5 -0
  236. package/dist/editor/components/RenderQueue/RenderQueueItemStatus.js +43 -0
  237. package/dist/editor/components/RenderQueue/RenderQueueOpenInFolder.d.ts +5 -0
  238. package/dist/editor/components/RenderQueue/RenderQueueOpenInFolder.js +26 -0
  239. package/dist/editor/components/RenderQueue/RenderQueueOutputName.d.ts +5 -0
  240. package/dist/editor/components/RenderQueue/RenderQueueOutputName.js +26 -0
  241. package/dist/editor/components/RenderQueue/RenderQueueProgressMessage.d.ts +5 -0
  242. package/dist/editor/components/RenderQueue/RenderQueueProgressMessage.js +26 -0
  243. package/dist/editor/components/RenderQueue/RenderQueueRemoveItem.d.ts +5 -0
  244. package/dist/editor/components/RenderQueue/RenderQueueRemoveItem.js +37 -0
  245. package/dist/editor/components/RenderQueue/RenderQueueRepeat.d.ts +5 -0
  246. package/dist/editor/components/RenderQueue/RenderQueueRepeat.js +26 -0
  247. package/dist/editor/components/RenderQueue/SuccessIcon.d.ts +2 -0
  248. package/dist/editor/components/RenderQueue/SuccessIcon.js +14 -0
  249. package/dist/editor/components/RenderQueue/actions.d.ts +58 -0
  250. package/dist/editor/components/RenderQueue/actions.js +120 -0
  251. package/dist/editor/components/RenderQueue/context.d.ts +18 -0
  252. package/dist/editor/components/RenderQueue/context.js +49 -0
  253. package/dist/editor/components/RenderQueue/index.d.ts +2 -0
  254. package/dist/editor/components/RenderQueue/index.js +43 -0
  255. package/dist/editor/components/RenderQueue/item-style.d.ts +2 -0
  256. package/dist/editor/components/RenderQueue/item-style.js +21 -0
  257. package/dist/editor/components/RendersTab.d.ts +6 -0
  258. package/dist/editor/components/RendersTab.js +43 -0
  259. package/dist/editor/components/RightPanel.d.ts +8 -0
  260. package/dist/editor/components/RightPanel.js +76 -0
  261. package/dist/editor/components/SegmentedControl.d.ts +11 -0
  262. package/dist/editor/components/SegmentedControl.js +62 -0
  263. package/dist/editor/components/SetTimelineInOutProvider.d.ts +4 -0
  264. package/dist/editor/components/SetTimelineInOutProvider.js +19 -0
  265. package/dist/editor/components/SidebarCollapserControls.d.ts +2 -0
  266. package/dist/editor/components/SidebarCollapserControls.js +135 -0
  267. package/dist/editor/components/SidebarRenderButton.d.ts +6 -0
  268. package/dist/editor/components/SidebarRenderButton.js +85 -0
  269. package/dist/editor/components/SizeSelector.d.ts +0 -1
  270. package/dist/editor/components/SizeSelector.js +3 -3
  271. package/dist/editor/components/Splitter/SplitterHandle.d.ts +1 -2
  272. package/dist/editor/components/Splitter/SplitterHandle.js +15 -7
  273. package/dist/editor/components/Tabs/index.d.ts +11 -0
  274. package/dist/editor/components/Tabs/index.js +58 -0
  275. package/dist/editor/components/Tabs/vertical.d.ts +7 -0
  276. package/dist/editor/components/Tabs/vertical.js +43 -0
  277. package/dist/editor/components/Timeline/MaxTimelineTracks.js +1 -1
  278. package/dist/editor/components/Timeline/Timeline.js +1 -1
  279. package/dist/editor/components/Timeline/TimelineCollapseToggle.d.ts +1 -0
  280. package/dist/editor/components/Timeline/TimelineCollapseToggle.js +4 -5
  281. package/dist/editor/components/Timeline/TimelineListItem.js +2 -1
  282. package/dist/editor/components/Timeline/TimelineScrollable.js +2 -1
  283. package/dist/editor/components/Timeline/TimelineSequence.js +2 -14
  284. package/dist/editor/components/Timeline/TimelineSequenceFrame.js +2 -1
  285. package/dist/editor/components/Timeline/TimelineZoomControls.js +2 -5
  286. package/dist/editor/components/Timeline/imperative-state.d.ts +0 -4
  287. package/dist/editor/components/Timeline/imperative-state.js +13 -13
  288. package/dist/editor/components/Timeline/is-collapsed.js +2 -3
  289. package/dist/editor/components/Timeline/timeline-scroll-logic.d.ts +0 -1
  290. package/dist/editor/components/Timeline/timeline-scroll-logic.js +5 -6
  291. package/dist/editor/components/TimelineInOutToggle.js +3 -0
  292. package/dist/editor/components/TopPanel.d.ts +1 -0
  293. package/dist/editor/components/TopPanel.js +30 -16
  294. package/dist/editor/components/ZoomGesturesProvider.d.ts +4 -0
  295. package/dist/editor/components/ZoomGesturesProvider.js +24 -0
  296. package/dist/editor/components/ZoomPersistor.d.ts +0 -1
  297. package/dist/editor/components/ZoomPersistor.js +2 -3
  298. package/dist/editor/components/get-zod-if-possible.d.ts +10 -0
  299. package/dist/editor/components/get-zod-if-possible.js +79 -0
  300. package/dist/editor/components/layout.d.ts +3 -1
  301. package/dist/editor/components/layout.js +9 -7
  302. package/dist/editor/helpers/calculate-timeline.d.ts +0 -4
  303. package/dist/editor/helpers/client-id.d.ts +17 -0
  304. package/dist/editor/helpers/client-id.js +46 -0
  305. package/dist/editor/helpers/colors.d.ts +4 -2
  306. package/dist/editor/helpers/colors.js +7 -4
  307. package/dist/editor/helpers/convert-env-variables.d.ts +2 -0
  308. package/dist/editor/helpers/convert-env-variables.js +20 -0
  309. package/dist/editor/helpers/create-folder-tree.d.ts +2 -3
  310. package/dist/editor/helpers/create-folder-tree.js +3 -4
  311. package/dist/editor/helpers/get-timeline-sequence-layout.d.ts +2 -2
  312. package/dist/editor/helpers/get-timeline-sequence-sort-key.d.ts +2 -1
  313. package/dist/editor/helpers/is-composition-still.d.ts +2 -2
  314. package/dist/editor/helpers/is-composition-still.js +3 -0
  315. package/dist/editor/helpers/prores-labels.d.ts +2 -0
  316. package/dist/editor/helpers/prores-labels.js +25 -0
  317. package/dist/editor/helpers/render-modal-sections.d.ts +10 -0
  318. package/dist/editor/helpers/render-modal-sections.js +32 -0
  319. package/dist/editor/helpers/use-breakpoint.d.ts +1 -0
  320. package/dist/editor/helpers/use-breakpoint.js +17 -0
  321. package/dist/editor/helpers/use-file-existence.d.ts +1 -0
  322. package/dist/editor/helpers/use-file-existence.js +66 -0
  323. package/dist/editor/helpers/use-keybinding.d.ts +1 -0
  324. package/dist/editor/helpers/use-keybinding.js +9 -0
  325. package/dist/editor/helpers/use-menu-structure.js +99 -51
  326. package/dist/editor/helpers/validate-new-comp-data.d.ts +2 -2
  327. package/dist/editor/icons/Checkmark.js +1 -1
  328. package/dist/editor/icons/audio.d.ts +2 -0
  329. package/dist/editor/icons/audio.js +6 -0
  330. package/dist/editor/icons/caret.d.ts +4 -1
  331. package/dist/editor/icons/caret.js +17 -1
  332. package/dist/editor/icons/data.d.ts +2 -0
  333. package/dist/editor/icons/data.js +8 -0
  334. package/dist/editor/icons/file.d.ts +2 -0
  335. package/dist/editor/icons/file.js +6 -0
  336. package/dist/editor/icons/folder.d.ts +6 -2
  337. package/dist/editor/icons/folder.js +4 -4
  338. package/dist/editor/icons/frame.d.ts +2 -0
  339. package/dist/editor/icons/frame.js +6 -0
  340. package/dist/editor/icons/gear.d.ts +2 -0
  341. package/dist/editor/icons/gear.js +6 -0
  342. package/dist/editor/icons/gif.d.ts +2 -0
  343. package/dist/editor/icons/gif.js +6 -0
  344. package/dist/editor/icons/render.d.ts +9 -0
  345. package/dist/editor/icons/render.js +12 -0
  346. package/dist/editor/icons/still.d.ts +3 -1
  347. package/dist/editor/icons/still.js +2 -2
  348. package/dist/editor/icons/video.d.ts +5 -0
  349. package/dist/editor/icons/video.js +8 -0
  350. package/dist/editor/state/keybindings.d.ts +2 -1
  351. package/dist/editor/state/modals.d.ts +38 -0
  352. package/dist/editor/state/preview-size.d.ts +0 -1
  353. package/dist/editor/state/preview-size.js +3 -4
  354. package/dist/editor/state/sidebar.d.ts +7 -3
  355. package/dist/editor/state/sidebar.js +42 -13
  356. package/dist/editor/state/timeline-ref.d.ts +2 -1
  357. package/dist/editor/state/z-index.d.ts +0 -5
  358. package/dist/editor/state/z-index.js +16 -6
  359. package/dist/entry-point.js +17 -17
  360. package/dist/event-source-events.d.ts +15 -0
  361. package/dist/event-source.d.ts +2 -0
  362. package/dist/event-source.js +31 -5
  363. package/dist/ffmpeg.d.ts +2 -0
  364. package/dist/ffmpeg.js +26 -0
  365. package/dist/file-watcher.d.ts +9 -0
  366. package/dist/file-watcher.js +35 -0
  367. package/dist/get-cli-options.d.ts +3 -12
  368. package/dist/get-cli-options.js +11 -64
  369. package/dist/get-composition-id.d.ts +7 -3
  370. package/dist/get-composition-id.js +17 -3
  371. package/dist/get-composition-with-dimension-override.d.ts +5 -4
  372. package/dist/get-composition-with-dimension-override.js +6 -2
  373. package/dist/get-config-file-name.d.ts +0 -2
  374. package/dist/get-config-file-name.js +11 -11
  375. package/dist/get-default-out-name.d.ts +5 -0
  376. package/dist/get-default-out-name.js +10 -0
  377. package/dist/get-env.d.ts +1 -1
  378. package/dist/get-env.js +48 -57
  379. package/dist/get-filename.d.ts +5 -1
  380. package/dist/get-filename.js +6 -4
  381. package/dist/get-final-output-codec.d.ts +2 -1
  382. package/dist/get-final-output-codec.js +4 -1
  383. package/dist/get-input-props.d.ts +1 -5
  384. package/dist/get-input-props.js +18 -20
  385. package/dist/get-network-address.js +2 -2
  386. package/dist/image-formats.d.ts +5 -2
  387. package/dist/image-formats.js +16 -6
  388. package/dist/index.d.ts +91 -22
  389. package/dist/index.js +16 -13
  390. package/dist/list-of-remotion-packages.js +1 -0
  391. package/dist/load-config.js +9 -9
  392. package/dist/log.d.ts +14 -0
  393. package/dist/log.js +24 -8
  394. package/dist/parse-command-line.d.ts +5 -5
  395. package/dist/parse-command-line.js +6 -14
  396. package/dist/preview-server/api-routes.d.ts +4 -0
  397. package/dist/preview-server/api-routes.js +21 -0
  398. package/dist/preview-server/api-types.d.ts +25 -0
  399. package/dist/preview-server/api-types.js +2 -0
  400. package/dist/preview-server/dev-middleware/compatible-api.d.ts +2 -2
  401. package/dist/preview-server/dev-middleware/middleware.d.ts +1 -2
  402. package/dist/preview-server/dev-middleware/middleware.js +8 -9
  403. package/dist/preview-server/error-overlay/react-overlay/utils/get-file-source.js +5 -5
  404. package/dist/preview-server/error-overlay/react-overlay/utils/open-in-editor.js +17 -17
  405. package/dist/preview-server/error-overlay/remotion-overlay/AskOnDiscord.js +1 -0
  406. package/dist/preview-server/error-overlay/remotion-overlay/Button.d.ts +8 -4
  407. package/dist/preview-server/error-overlay/remotion-overlay/Button.js +12 -8
  408. package/dist/preview-server/error-overlay/remotion-overlay/ErrorDisplay.js +2 -1
  409. package/dist/preview-server/error-overlay/remotion-overlay/HelpLink.js +1 -0
  410. package/dist/preview-server/error-overlay/remotion-overlay/OpenInEditor.js +1 -0
  411. package/dist/preview-server/error-overlay/remotion-overlay/SearchGitHubIssues.js +1 -0
  412. package/dist/preview-server/error-overlay/remotion-overlay/ShortcutHint.js +16 -1
  413. package/dist/preview-server/file-existence-watchers.d.ts +13 -0
  414. package/dist/preview-server/file-existence-watchers.js +62 -0
  415. package/dist/preview-server/get-absolute-public-dir.js +3 -3
  416. package/dist/preview-server/get-package-manager.js +3 -3
  417. package/dist/preview-server/handler.d.ts +9 -0
  418. package/dist/preview-server/handler.js +34 -0
  419. package/dist/preview-server/hot-middleware/client.js +2 -2
  420. package/dist/preview-server/hot-middleware/index.d.ts +1 -1
  421. package/dist/preview-server/hot-middleware/index.js +2 -2
  422. package/dist/preview-server/live-events.d.ts +3 -1
  423. package/dist/preview-server/live-events.js +22 -2
  424. package/dist/preview-server/parse-body.d.ts +2 -0
  425. package/dist/preview-server/parse-body.js +16 -0
  426. package/dist/preview-server/project-info.js +5 -5
  427. package/dist/preview-server/public-folder.d.ts +0 -5
  428. package/dist/preview-server/public-folder.js +11 -12
  429. package/dist/preview-server/render-queue/get-default-video-contexts.d.ts +10 -0
  430. package/dist/preview-server/render-queue/get-default-video-contexts.js +13 -0
  431. package/dist/preview-server/render-queue/job.d.ts +138 -0
  432. package/dist/preview-server/render-queue/job.js +2 -0
  433. package/dist/preview-server/render-queue/make-retry-payload.d.ts +3 -0
  434. package/dist/preview-server/render-queue/make-retry-payload.js +91 -0
  435. package/dist/preview-server/render-queue/open-directory-in-finder.d.ts +1 -0
  436. package/dist/preview-server/render-queue/open-directory-in-finder.js +43 -0
  437. package/dist/preview-server/render-queue/process-still.d.ts +8 -0
  438. package/dist/preview-server/render-queue/process-still.js +46 -0
  439. package/dist/preview-server/render-queue/process-video.d.ts +8 -0
  440. package/dist/preview-server/render-queue/process-video.js +63 -0
  441. package/dist/preview-server/render-queue/queue.d.ts +9 -0
  442. package/dist/preview-server/render-queue/queue.js +212 -0
  443. package/dist/preview-server/routes/add-render.d.ts +3 -0
  444. package/dist/preview-server/routes/add-render.js +76 -0
  445. package/dist/preview-server/routes/can-update-default-props.d.ts +4 -0
  446. package/dist/preview-server/routes/can-update-default-props.js +39 -0
  447. package/dist/preview-server/routes/cancel-render.d.ts +3 -0
  448. package/dist/preview-server/routes/cancel-render.js +9 -0
  449. package/dist/preview-server/routes/open-in-file-explorer.d.ts +3 -0
  450. package/dist/preview-server/routes/open-in-file-explorer.js +8 -0
  451. package/dist/preview-server/routes/remove-render.d.ts +3 -0
  452. package/dist/preview-server/routes/remove-render.js +9 -0
  453. package/dist/preview-server/routes/subscribe-to-file-existence.d.ts +3 -0
  454. package/dist/preview-server/routes/subscribe-to-file-existence.js +13 -0
  455. package/dist/preview-server/routes/unsubscribe-from-file-existence.d.ts +3 -0
  456. package/dist/preview-server/routes/unsubscribe-from-file-existence.js +13 -0
  457. package/dist/preview-server/routes/update-default-props.d.ts +3 -0
  458. package/dist/preview-server/routes/update-default-props.js +24 -0
  459. package/dist/preview-server/routes.d.ts +3 -2
  460. package/dist/preview-server/routes.js +79 -21
  461. package/dist/preview-server/serve-static.d.ts +1 -1
  462. package/dist/preview-server/serve-static.js +7 -7
  463. package/dist/preview-server/start-server.js +3 -2
  464. package/dist/preview.js +12 -25
  465. package/dist/previewEntry.js +2 -3
  466. package/dist/print-compositions.d.ts +2 -2
  467. package/dist/print-error.js +4 -2
  468. package/dist/print-help.js +4 -8
  469. package/dist/progress-bar.d.ts +17 -37
  470. package/dist/progress-bar.js +102 -41
  471. package/dist/progress-types.d.ts +32 -0
  472. package/dist/progress-types.js +17 -0
  473. package/dist/render-flows/render.d.ts +47 -0
  474. package/dist/render-flows/render.js +293 -0
  475. package/dist/render-flows/still.d.ts +29 -0
  476. package/dist/render-flows/still.js +174 -0
  477. package/dist/render.js +42 -232
  478. package/dist/required-chromium-options.d.ts +3 -0
  479. package/dist/required-chromium-options.js +2 -0
  480. package/dist/resolve-from.js +5 -5
  481. package/dist/select-composition.d.ts +2 -1
  482. package/dist/setup-cache.d.ts +12 -9
  483. package/dist/setup-cache.js +29 -20
  484. package/dist/still.js +25 -130
  485. package/dist/upgrade.js +2 -2
  486. package/dist/user-passed-output-location.js +2 -7
  487. package/dist/versions.js +2 -2
  488. package/package.json +22 -7
  489. package/styles/styles.css +13 -3
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.handleAddRender = void 0;
4
+ const renderer_1 = require("@remotion/renderer");
5
+ const queue_1 = require("../render-queue/queue");
6
+ const handleAddRender = ({ input, entryPoint, remotionRoot, }) => {
7
+ const id = String(Math.random()).replace('0.', '');
8
+ if (input.type === 'video') {
9
+ (0, queue_1.addJob)({
10
+ entryPoint,
11
+ remotionRoot,
12
+ job: {
13
+ cleanup: [],
14
+ codec: input.codec,
15
+ audioCodec: input.audioCodec,
16
+ compositionId: input.compositionId,
17
+ deletedOutputLocation: false,
18
+ type: 'video',
19
+ status: 'idle',
20
+ id,
21
+ imageFormat: input.imageFormat,
22
+ outName: input.outName,
23
+ jpegQuality: input.jpegQuality,
24
+ scale: input.scale,
25
+ startedAt: Date.now(),
26
+ verbose: input.verbose,
27
+ cancelToken: (0, renderer_1.makeCancelSignal)(),
28
+ concurrency: input.concurrency,
29
+ crf: input.crf,
30
+ endFrame: input.endFrame,
31
+ startFrame: input.startFrame,
32
+ muted: input.muted,
33
+ enforceAudioTrack: input.enforceAudioTrack,
34
+ proResProfile: input.proResProfile,
35
+ pixelFormat: input.pixelFormat,
36
+ audioBitrate: input.audioBitrate,
37
+ videoBitrate: input.videoBitrate,
38
+ everyNthFrame: input.everyNthFrame,
39
+ numberOfGifLoops: input.numberOfGifLoops,
40
+ delayRenderTimeout: input.delayRenderTimeout,
41
+ disallowParallelEncoding: input.disallowParallelEncoding,
42
+ chromiumOptions: input.chromiumOptions,
43
+ envVariables: input.envVariables,
44
+ inputProps: input.inputProps,
45
+ },
46
+ });
47
+ }
48
+ if (input.type === 'still') {
49
+ (0, queue_1.addJob)({
50
+ job: {
51
+ compositionId: input.compositionId,
52
+ id: String(Math.random()).replace('0.', ''),
53
+ startedAt: Date.now(),
54
+ type: 'still',
55
+ outName: input.outName,
56
+ status: 'idle',
57
+ imageFormat: input.imageFormat,
58
+ jpegQuality: input.jpegQuality,
59
+ frame: input.frame,
60
+ scale: input.scale,
61
+ cleanup: [],
62
+ deletedOutputLocation: false,
63
+ verbose: input.verbose,
64
+ cancelToken: (0, renderer_1.makeCancelSignal)(),
65
+ chromiumOptions: input.chromiumOptions,
66
+ delayRenderTimeout: input.delayRenderTimeout,
67
+ envVariables: input.envVariables,
68
+ inputProps: input.inputProps,
69
+ },
70
+ entryPoint,
71
+ remotionRoot,
72
+ });
73
+ }
74
+ return Promise.resolve(undefined);
75
+ };
76
+ exports.handleAddRender = handleAddRender;
@@ -0,0 +1,4 @@
1
+ import type { ApiHandler } from '../api-types';
2
+ import type { CanUpdateDefaultPropsRequest, CanUpdateDefaultPropsResponse } from '../render-queue/job';
3
+ export declare const checkIfTypeScriptFile: (file: string) => void;
4
+ export declare const canUpdateDefaultPropsHandler: ApiHandler<CanUpdateDefaultPropsRequest, CanUpdateDefaultPropsResponse>;
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.canUpdateDefaultPropsHandler = exports.checkIfTypeScriptFile = void 0;
4
+ const node_fs_1 = require("node:fs");
5
+ const update_default_props_1 = require("../../codemods/update-default-props");
6
+ const project_info_1 = require("../project-info");
7
+ const checkIfTypeScriptFile = (file) => {
8
+ if (!file.endsWith('.tsx') &&
9
+ !file.endsWith('.ts') &&
10
+ !file.endsWith('.mtsx') &&
11
+ !file.endsWith('.mts')) {
12
+ throw new Error('Cannot update default props for non-TypeScript files');
13
+ }
14
+ };
15
+ exports.checkIfTypeScriptFile = checkIfTypeScriptFile;
16
+ const canUpdateDefaultPropsHandler = async ({ input: { compositionId }, remotionRoot }) => {
17
+ try {
18
+ const projectInfo = await (0, project_info_1.getProjectInfo)(remotionRoot);
19
+ if (!projectInfo.videoFile) {
20
+ throw new Error('Cannot find root file in project');
21
+ }
22
+ (0, exports.checkIfTypeScriptFile)(projectInfo.videoFile);
23
+ await (0, update_default_props_1.updateDefaultProps)({
24
+ compositionId,
25
+ input: (0, node_fs_1.readFileSync)(projectInfo.videoFile, 'utf-8'),
26
+ newDefaultProps: {},
27
+ });
28
+ return {
29
+ canUpdate: true,
30
+ };
31
+ }
32
+ catch (err) {
33
+ return {
34
+ canUpdate: false,
35
+ reason: err.message,
36
+ };
37
+ }
38
+ };
39
+ exports.canUpdateDefaultPropsHandler = canUpdateDefaultPropsHandler;
@@ -0,0 +1,3 @@
1
+ import type { ApiHandler } from '../api-types';
2
+ import type { CancelRenderRequest, CancelRenderResponse } from '../render-queue/job';
3
+ export declare const handleCancelRender: ApiHandler<CancelRenderRequest, CancelRenderResponse>;
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.handleCancelRender = void 0;
4
+ const queue_1 = require("../render-queue/queue");
5
+ const handleCancelRender = ({ input: { jobId } }) => {
6
+ (0, queue_1.cancelJob)(jobId);
7
+ return Promise.resolve({});
8
+ };
9
+ exports.handleCancelRender = handleCancelRender;
@@ -0,0 +1,3 @@
1
+ import type { ApiHandler } from '../api-types';
2
+ import type { OpenInFileExplorerRequest } from '../render-queue/job';
3
+ export declare const handleOpenInFileExplorer: ApiHandler<OpenInFileExplorerRequest, void>;
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.handleOpenInFileExplorer = void 0;
4
+ const open_directory_in_finder_1 = require("../render-queue/open-directory-in-finder");
5
+ const handleOpenInFileExplorer = ({ input: { directory }, remotionRoot }) => {
6
+ return (0, open_directory_in_finder_1.openDirectoryInFinder)(directory, remotionRoot);
7
+ };
8
+ exports.handleOpenInFileExplorer = handleOpenInFileExplorer;
@@ -0,0 +1,3 @@
1
+ import type { ApiHandler } from '../api-types';
2
+ import type { RemoveRenderRequest } from '../render-queue/job';
3
+ export declare const handleRemoveRender: ApiHandler<RemoveRenderRequest, undefined>;
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.handleRemoveRender = void 0;
4
+ const queue_1 = require("../render-queue/queue");
5
+ const handleRemoveRender = ({ input: { jobId }, }) => {
6
+ (0, queue_1.removeJob)(jobId);
7
+ return Promise.resolve(undefined);
8
+ };
9
+ exports.handleRemoveRender = handleRemoveRender;
@@ -0,0 +1,3 @@
1
+ import type { ApiHandler } from '../api-types';
2
+ import type { SubscribeToFileExistenceRequest, SubscribeToFileExistenceResponse } from '../render-queue/job';
3
+ export declare const subscribeToFileExistence: ApiHandler<SubscribeToFileExistenceRequest, SubscribeToFileExistenceResponse>;
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.subscribeToFileExistence = void 0;
4
+ const file_existence_watchers_1 = require("../file-existence-watchers");
5
+ const subscribeToFileExistence = ({ input: { file, clientId }, remotionRoot }) => {
6
+ const { exists } = (0, file_existence_watchers_1.subscribeToFileExistenceWatchers)({
7
+ file,
8
+ remotionRoot,
9
+ clientId,
10
+ });
11
+ return Promise.resolve({ exists });
12
+ };
13
+ exports.subscribeToFileExistence = subscribeToFileExistence;
@@ -0,0 +1,3 @@
1
+ import type { ApiHandler } from '../api-types';
2
+ import type { UnsubscribeFromFileExistenceRequest } from '../render-queue/job';
3
+ export declare const unsubscribeFromFileExistence: ApiHandler<UnsubscribeFromFileExistenceRequest, undefined>;
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.unsubscribeFromFileExistence = void 0;
4
+ const file_existence_watchers_1 = require("../file-existence-watchers");
5
+ const unsubscribeFromFileExistence = ({ input, remotionRoot }) => {
6
+ (0, file_existence_watchers_1.unsubscribeFromFileExistenceWatchers)({
7
+ file: input.file,
8
+ clientId: input.clientId,
9
+ remotionRoot,
10
+ });
11
+ return Promise.resolve(undefined);
12
+ };
13
+ exports.unsubscribeFromFileExistence = unsubscribeFromFileExistence;
@@ -0,0 +1,3 @@
1
+ import type { ApiHandler } from '../api-types';
2
+ import type { UpdateDefaultPropsRequest } from '../render-queue/job';
3
+ export declare const updateDefaultPropsHandler: ApiHandler<UpdateDefaultPropsRequest, void>;
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.updateDefaultPropsHandler = void 0;
4
+ const node_fs_1 = require("node:fs");
5
+ const update_default_props_1 = require("../../codemods/update-default-props");
6
+ const date_serialization_1 = require("../../editor/components/RenderModal/SchemaEditor/date-serialization");
7
+ const project_info_1 = require("../project-info");
8
+ const can_update_default_props_1 = require("./can-update-default-props");
9
+ const updateDefaultPropsHandler = async ({ input: { compositionId, defaultProps }, remotionRoot }) => {
10
+ const projectInfo = await (0, project_info_1.getProjectInfo)(remotionRoot);
11
+ // TODO: What happens if this error is thrown? Handle in frontend
12
+ if (!projectInfo.videoFile) {
13
+ throw new Error('Cannot find root file in project');
14
+ }
15
+ (0, can_update_default_props_1.checkIfTypeScriptFile)(projectInfo.videoFile);
16
+ // TODO: Pass error to frontend
17
+ const updated = await (0, update_default_props_1.updateDefaultProps)({
18
+ compositionId,
19
+ input: (0, node_fs_1.readFileSync)(projectInfo.videoFile, 'utf-8'),
20
+ newDefaultProps: (0, date_serialization_1.deserializeJSONWithDate)(defaultProps),
21
+ });
22
+ (0, node_fs_1.writeFileSync)(projectInfo.videoFile, updated);
23
+ };
24
+ exports.updateDefaultPropsHandler = updateDefaultPropsHandler;
@@ -1,6 +1,6 @@
1
- import type { IncomingMessage, ServerResponse } from 'http';
1
+ import type { IncomingMessage, ServerResponse } from 'node:http';
2
2
  import type { LiveEventsServer } from './live-events';
3
- export declare const handleRoutes: ({ hash, hashPrefix, request, response, liveEventsServer, getCurrentInputProps, getEnvVariables, remotionRoot, publicDir, }: {
3
+ export declare const handleRoutes: ({ hash, hashPrefix, request, response, liveEventsServer, getCurrentInputProps, getEnvVariables, remotionRoot, entryPoint, publicDir, }: {
4
4
  hash: string;
5
5
  hashPrefix: string;
6
6
  request: IncomingMessage;
@@ -9,5 +9,6 @@ export declare const handleRoutes: ({ hash, hashPrefix, request, response, liveE
9
9
  getCurrentInputProps: () => object;
10
10
  getEnvVariables: () => Record<string, string>;
11
11
  remotionRoot: string;
12
+ entryPoint: string;
12
13
  publicDir: string;
13
14
  }) => void | Promise<void>;
@@ -5,16 +5,22 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.handleRoutes = void 0;
7
7
  const bundler_1 = require("@remotion/bundler");
8
- const fs_1 = require("fs");
9
- const path_1 = __importDefault(require("path"));
10
- const url_1 = require("url");
8
+ const renderer_1 = require("@remotion/renderer");
9
+ const node_fs_1 = require("node:fs");
10
+ const node_path_1 = __importDefault(require("node:path"));
11
+ const node_url_1 = require("node:url");
12
+ const config_1 = require("../config");
11
13
  const number_of_shared_audio_tags_1 = require("../config/number-of-shared-audio-tags");
12
14
  const parse_command_line_1 = require("../parse-command-line");
15
+ const api_routes_1 = require("./api-routes");
13
16
  const get_file_source_1 = require("./error-overlay/react-overlay/utils/get-file-source");
14
17
  const open_in_editor_1 = require("./error-overlay/react-overlay/utils/open-in-editor");
15
18
  const get_package_manager_1 = require("./get-package-manager");
19
+ const handler_1 = require("./handler");
20
+ const parse_body_1 = require("./parse-body");
16
21
  const project_info_1 = require("./project-info");
17
22
  const public_folder_1 = require("./public-folder");
23
+ const queue_1 = require("./render-queue/queue");
18
24
  const serve_static_1 = require("./serve-static");
19
25
  const update_available_1 = require("./update-available");
20
26
  const handleUpdate = async (remotionRoot, _, response) => {
@@ -29,9 +35,32 @@ const static404 = (response) => {
29
35
  response.end('The static/ prefix has been changed, this URL is no longer valid.');
30
36
  };
31
37
  const handleFallback = async ({ remotionRoot, hash, response, getCurrentInputProps, getEnvVariables, publicDir, }) => {
32
- var _a;
38
+ var _a, _b;
33
39
  const [edit] = await editorGuess;
34
40
  const displayName = (0, open_in_editor_1.getDisplayNameForEditor)(edit ? edit.command : null);
41
+ const defaultJpegQuality = config_1.ConfigInternals.getJpegQuality();
42
+ const defaultScale = config_1.ConfigInternals.getScale();
43
+ const logLevel = config_1.ConfigInternals.Logging.getLogLevel();
44
+ const defaultCodec = config_1.ConfigInternals.getOutputCodecOrUndefined();
45
+ const concurrency = renderer_1.RenderInternals.getActualConcurrency(config_1.ConfigInternals.getConcurrency());
46
+ const muted = config_1.ConfigInternals.getMuted();
47
+ const enforceAudioTrack = config_1.ConfigInternals.getEnforceAudioTrack();
48
+ const pixelFormat = config_1.ConfigInternals.getPixelFormat();
49
+ const proResProfile = (_a = config_1.ConfigInternals.getProResProfile()) !== null && _a !== void 0 ? _a : 'hq';
50
+ const audioBitrate = config_1.ConfigInternals.getAudioBitrate();
51
+ const videoBitrate = config_1.ConfigInternals.getVideoBitrate();
52
+ const everyNthFrame = config_1.ConfigInternals.getEveryNthFrame();
53
+ const numberOfGifLoops = config_1.ConfigInternals.getNumberOfGifLoops();
54
+ const delayRenderTimeout = config_1.ConfigInternals.getCurrentPuppeteerTimeout();
55
+ const audioCodec = config_1.ConfigInternals.getAudioCodec();
56
+ const stillImageFormat = config_1.ConfigInternals.getUserPreferredStillImageFormat();
57
+ const videoImageFormat = config_1.ConfigInternals.getUserPreferredVideoImageFormat();
58
+ const disableWebSecurity = config_1.ConfigInternals.getChromiumDisableWebSecurity();
59
+ const headless = config_1.ConfigInternals.getChromiumHeadlessMode();
60
+ const ignoreCertificateErrors = config_1.ConfigInternals.getIgnoreCertificateErrors();
61
+ const openGlRenderer = config_1.ConfigInternals.getChromiumOpenGlRenderer();
62
+ const maxConcurrency = renderer_1.RenderInternals.getMaxConcurrency();
63
+ const minConcurrency = renderer_1.RenderInternals.getMinConcurrency();
35
64
  response.setHeader('content-type', 'text/html');
36
65
  response.writeHead(200);
37
66
  const packageManager = (0, get_package_manager_1.getPackageManager)(remotionRoot, undefined);
@@ -44,10 +73,36 @@ const handleFallback = async ({ remotionRoot, hash, response, getCurrentInputPro
44
73
  inputProps: getCurrentInputProps(),
45
74
  remotionRoot,
46
75
  previewServerCommand: packageManager === 'unknown' ? null : packageManager.startCommand,
47
- numberOfAudioTags: (_a = parse_command_line_1.parsedCli['number-of-shared-audio-tags']) !== null && _a !== void 0 ? _a : (0, number_of_shared_audio_tags_1.getNumberOfSharedAudioTags)(),
76
+ renderQueue: (0, queue_1.getRenderQueue)(),
77
+ numberOfAudioTags: (_b = parse_command_line_1.parsedCli['number-of-shared-audio-tags']) !== null && _b !== void 0 ? _b : (0, number_of_shared_audio_tags_1.getNumberOfSharedAudioTags)(),
48
78
  publicFiles: (0, public_folder_1.getFiles)(),
49
79
  includeFavicon: true,
50
80
  title: 'Remotion Preview',
81
+ renderDefaults: {
82
+ jpegQuality: defaultJpegQuality !== null && defaultJpegQuality !== void 0 ? defaultJpegQuality : 80,
83
+ scale: defaultScale !== null && defaultScale !== void 0 ? defaultScale : 1,
84
+ logLevel,
85
+ codec: defaultCodec !== null && defaultCodec !== void 0 ? defaultCodec : 'h264',
86
+ concurrency,
87
+ maxConcurrency,
88
+ minConcurrency,
89
+ stillImageFormat: stillImageFormat !== null && stillImageFormat !== void 0 ? stillImageFormat : renderer_1.RenderInternals.DEFAULT_STILL_IMAGE_FORMAT,
90
+ videoImageFormat: videoImageFormat !== null && videoImageFormat !== void 0 ? videoImageFormat : renderer_1.RenderInternals.DEFAULT_VIDEO_IMAGE_FORMAT,
91
+ muted,
92
+ enforceAudioTrack,
93
+ proResProfile,
94
+ pixelFormat,
95
+ audioBitrate,
96
+ videoBitrate,
97
+ everyNthFrame,
98
+ numberOfGifLoops,
99
+ delayRenderTimeout,
100
+ audioCodec,
101
+ disableWebSecurity,
102
+ headless,
103
+ ignoreCertificateErrors,
104
+ openGlRenderer,
105
+ },
51
106
  }));
52
107
  };
53
108
  const handleProjectInfo = async (remotionRoot, _, response) => {
@@ -65,7 +120,7 @@ const handleFileSource = async ({ method, remotionRoot, search, response, }) =>
65
120
  if (!search.startsWith('?')) {
66
121
  throw new Error('query must start with ?');
67
122
  }
68
- const query = new url_1.URLSearchParams(search);
123
+ const query = new node_url_1.URLSearchParams(search);
69
124
  const f = query.get('f');
70
125
  if (typeof f !== 'string') {
71
126
  throw new Error('must pass `f` parameter');
@@ -79,18 +134,10 @@ const handleOpenInEditor = async (remotionRoot, req, res) => {
79
134
  if (req.method === 'OPTIONS') {
80
135
  res.statusCode = 200;
81
136
  res.end();
137
+ return;
82
138
  }
83
139
  try {
84
- const b = await new Promise((_resolve) => {
85
- let data = '';
86
- req.on('data', (chunk) => {
87
- data += chunk;
88
- });
89
- req.on('end', () => {
90
- _resolve(data.toString());
91
- });
92
- });
93
- const body = JSON.parse(b);
140
+ const body = (await (0, parse_body_1.parseRequestBody)(req));
94
141
  if (!('stack' in body)) {
95
142
  throw new TypeError('Need to pass stack');
96
143
  }
@@ -99,7 +146,7 @@ const handleOpenInEditor = async (remotionRoot, req, res) => {
99
146
  const didOpen = await (0, open_in_editor_1.launchEditor)({
100
147
  colNumber: stack.originalColumnNumber,
101
148
  editor: guess[0],
102
- fileName: path_1.default.resolve(remotionRoot, stack.originalFileName),
149
+ fileName: node_path_1.default.resolve(remotionRoot, stack.originalFileName),
103
150
  lineNumber: stack.originalLineNumber,
104
151
  vsCodeNewWindow: false,
105
152
  });
@@ -118,16 +165,16 @@ const handleOpenInEditor = async (remotionRoot, req, res) => {
118
165
  }
119
166
  };
120
167
  const handleFavicon = (_, response) => {
121
- const filePath = path_1.default.join(__dirname, '..', '..', 'web', 'favicon.png');
122
- const stat = (0, fs_1.statSync)(filePath);
168
+ const filePath = node_path_1.default.join(__dirname, '..', '..', 'web', 'favicon.png');
169
+ const stat = (0, node_fs_1.statSync)(filePath);
123
170
  response.writeHead(200, {
124
171
  'Content-Type': 'image/png',
125
172
  'Content-Length': stat.size,
126
173
  });
127
- const readStream = (0, fs_1.createReadStream)(filePath);
174
+ const readStream = (0, node_fs_1.createReadStream)(filePath);
128
175
  readStream.pipe(response);
129
176
  };
130
- const handleRoutes = ({ hash, hashPrefix, request, response, liveEventsServer, getCurrentInputProps, getEnvVariables, remotionRoot, publicDir, }) => {
177
+ const handleRoutes = ({ hash, hashPrefix, request, response, liveEventsServer, getCurrentInputProps, getEnvVariables, remotionRoot, entryPoint, publicDir, }) => {
131
178
  const url = new URL(request.url, 'http://localhost');
132
179
  if (url.pathname === '/api/update') {
133
180
  return handleUpdate(remotionRoot, request, response);
@@ -146,6 +193,17 @@ const handleRoutes = ({ hash, hashPrefix, request, response, liveEventsServer, g
146
193
  if (url.pathname === '/api/open-in-editor') {
147
194
  return handleOpenInEditor(remotionRoot, request, response);
148
195
  }
196
+ for (const [key, value] of Object.entries(api_routes_1.allApiRoutes)) {
197
+ if (url.pathname === key) {
198
+ return (0, handler_1.handleRequest)({
199
+ remotionRoot,
200
+ entryPoint,
201
+ handler: value,
202
+ request,
203
+ response,
204
+ });
205
+ }
206
+ }
149
207
  if (url.pathname === '/remotion.png') {
150
208
  return handleFavicon(request, response);
151
209
  }
@@ -5,5 +5,5 @@
5
5
  * Copyright(c) 2014-2016 Douglas Christopher Wilson
6
6
  * MIT Licensed
7
7
  */
8
- import type { IncomingMessage, ServerResponse } from 'http';
8
+ import type { IncomingMessage, ServerResponse } from 'node:http';
9
9
  export declare const serveStatic: (root: string, hash: string, req: IncomingMessage, res: ServerResponse) => Promise<void>;
@@ -9,8 +9,8 @@
9
9
  Object.defineProperty(exports, "__esModule", { value: true });
10
10
  exports.serveStatic = void 0;
11
11
  const renderer_1 = require("@remotion/renderer");
12
- const fs_1 = require("fs");
13
- const path_1 = require("path");
12
+ const node_fs_1 = require("node:fs");
13
+ const node_path_1 = require("node:path");
14
14
  const middleware_1 = require("./dev-middleware/middleware");
15
15
  const range_parser_1 = require("./dev-middleware/range-parser");
16
16
  const serveStatic = async function (root, hash, req, res) {
@@ -23,21 +23,21 @@ const serveStatic = async function (root, hash, req, res) {
23
23
  return;
24
24
  }
25
25
  const filename = new URL(req.url, 'http://localhost').pathname.replace(new RegExp(`^${hash}`), '');
26
- const path = (0, path_1.join)(root, decodeURIComponent(filename));
26
+ const path = (0, node_path_1.join)(root, decodeURIComponent(filename));
27
27
  if (!renderer_1.RenderInternals.isPathInside(path, root)) {
28
28
  res.writeHead(500);
29
29
  res.write('Not allowed to read');
30
30
  res.end();
31
31
  return;
32
32
  }
33
- const exists = (0, fs_1.existsSync)(path);
33
+ const exists = (0, node_fs_1.existsSync)(path);
34
34
  if (!exists) {
35
35
  res.writeHead(404);
36
36
  res.write(`${path} does not exist`);
37
37
  res.end();
38
38
  return;
39
39
  }
40
- const lstat = await fs_1.promises.lstat(path);
40
+ const lstat = await node_fs_1.promises.lstat(path);
41
41
  const isDirectory = lstat.isDirectory();
42
42
  if (isDirectory) {
43
43
  res.writeHead(500);
@@ -47,7 +47,7 @@ const serveStatic = async function (root, hash, req, res) {
47
47
  }
48
48
  const hasRange = req.headers.range && lstat.size;
49
49
  if (!hasRange) {
50
- const readStream = (0, fs_1.createReadStream)(path);
50
+ const readStream = (0, node_fs_1.createReadStream)(path);
51
51
  res.setHeader('content-type', renderer_1.RenderInternals.mimeLookup(path) || 'application/octet-stream');
52
52
  res.setHeader('content-length', lstat.size);
53
53
  res.writeHead(200);
@@ -64,7 +64,7 @@ const serveStatic = async function (root, hash, req, res) {
64
64
  }));
65
65
  res.setHeader('content-length', end - start + 1);
66
66
  res.writeHead(206);
67
- const readStream = (0, fs_1.createReadStream)(path, {
67
+ const readStream = (0, node_fs_1.createReadStream)(path, {
68
68
  start,
69
69
  end,
70
70
  });
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.startServer = void 0;
7
7
  const bundler_1 = require("@remotion/bundler");
8
8
  const renderer_1 = require("@remotion/renderer");
9
- const http_1 = __importDefault(require("http"));
9
+ const node_http_1 = __importDefault(require("node:http"));
10
10
  const config_1 = require("../config");
11
11
  const log_1 = require("../log");
12
12
  const dev_middleware_1 = require("./dev-middleware");
@@ -35,7 +35,7 @@ const startServer = async (options) => {
35
35
  const wdmMiddleware = (0, dev_middleware_1.wdm)(compiler);
36
36
  const whm = (0, hot_middleware_1.webpackHotMiddleware)(compiler);
37
37
  const liveEventsServer = (0, live_events_1.makeLiveEventsRouter)();
38
- const server = http_1.default.createServer((request, response) => {
38
+ const server = node_http_1.default.createServer((request, response) => {
39
39
  new Promise((resolve) => {
40
40
  wdmMiddleware(request, response, () => {
41
41
  resolve();
@@ -58,6 +58,7 @@ const startServer = async (options) => {
58
58
  getCurrentInputProps: options.getCurrentInputProps,
59
59
  getEnvVariables: options.getEnvVariables,
60
60
  remotionRoot: options.remotionRoot,
61
+ entryPoint: options.userDefinedComponent,
61
62
  publicDir: options.publicDir,
62
63
  });
63
64
  })
package/dist/preview.js CHANGED
@@ -4,11 +4,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.previewCommand = void 0;
7
- const crypto_1 = __importDefault(require("crypto"));
8
- const path_1 = __importDefault(require("path"));
7
+ const node_crypto_1 = __importDefault(require("node:crypto"));
8
+ const node_path_1 = __importDefault(require("node:path"));
9
9
  const better_opn_1 = require("./better-opn");
10
10
  const chalk_1 = require("./chalk");
11
11
  const config_1 = require("./config");
12
+ const convert_entry_point_to_serve_url_1 = require("./convert-entry-point-to-serve-url");
12
13
  const entry_point_1 = require("./entry-point");
13
14
  const get_env_1 = require("./get-env");
14
15
  const get_input_props_1 = require("./get-input-props");
@@ -16,25 +17,10 @@ const get_network_address_1 = require("./get-network-address");
16
17
  const log_1 = require("./log");
17
18
  const parse_command_line_1 = require("./parse-command-line");
18
19
  const get_absolute_public_dir_1 = require("./preview-server/get-absolute-public-dir");
20
+ const live_events_1 = require("./preview-server/live-events");
19
21
  const public_folder_1 = require("./preview-server/public-folder");
20
22
  const start_server_1 = require("./preview-server/start-server");
21
23
  const noop = () => undefined;
22
- let liveEventsListener = null;
23
- const waiters = [];
24
- const setLiveEventsListener = (listener) => {
25
- liveEventsListener = listener;
26
- waiters.forEach((w) => w(listener));
27
- };
28
- const waitForLiveEventsListener = () => {
29
- if (liveEventsListener) {
30
- return Promise.resolve(liveEventsListener);
31
- }
32
- return new Promise((resolve) => {
33
- waiters.push((list) => {
34
- resolve(list);
35
- });
36
- });
37
- };
38
24
  const getShouldOpenBrowser = () => {
39
25
  var _a;
40
26
  if (parse_command_line_1.parsedCli['no-open']) {
@@ -74,8 +60,9 @@ const previewCommand = async (remotionRoot, args) => {
74
60
  process.exit(1);
75
61
  }
76
62
  const desiredPort = getPort();
63
+ const fullEntryPath = (0, convert_entry_point_to_serve_url_1.convertEntryPointToServeUrl)(file);
77
64
  let inputProps = (0, get_input_props_1.getInputProps)((newProps) => {
78
- waitForLiveEventsListener().then((listener) => {
65
+ (0, live_events_1.waitForLiveEventsListener)().then((listener) => {
79
66
  inputProps = newProps;
80
67
  listener.sendEventToClient({
81
68
  type: 'new-input-props',
@@ -84,7 +71,7 @@ const previewCommand = async (remotionRoot, args) => {
84
71
  });
85
72
  });
86
73
  let envVariables = await (0, get_env_1.getEnvironmentVariables)((newEnvVariables) => {
87
- waitForLiveEventsListener().then((listener) => {
74
+ (0, live_events_1.waitForLiveEventsListener)().then((listener) => {
88
75
  envVariables = newEnvVariables;
89
76
  listener.sendEventToClient({
90
77
  type: 'new-env-variables',
@@ -97,12 +84,12 @@ const previewCommand = async (remotionRoot, args) => {
97
84
  remotionRoot,
98
85
  });
99
86
  const hashPrefix = '/static-';
100
- const staticHash = `${hashPrefix}${crypto_1.default.randomBytes(6).toString('hex')}`;
87
+ const staticHash = `${hashPrefix}${node_crypto_1.default.randomBytes(6).toString('hex')}`;
101
88
  (0, public_folder_1.initPublicFolderWatch)({
102
89
  publicDir,
103
90
  remotionRoot,
104
91
  onUpdate: () => {
105
- waitForLiveEventsListener().then((listener) => {
92
+ (0, live_events_1.waitForLiveEventsListener)().then((listener) => {
106
93
  listener.sendEventToClient({
107
94
  type: 'new-public-folder',
108
95
  files: (0, public_folder_1.getFiles)(),
@@ -112,8 +99,8 @@ const previewCommand = async (remotionRoot, args) => {
112
99
  staticHash,
113
100
  });
114
101
  const { port, liveEventsServer } = await (0, start_server_1.startServer)({
115
- entry: path_1.default.resolve(__dirname, 'previewEntry.js'),
116
- userDefinedComponent: file,
102
+ entry: node_path_1.default.resolve(__dirname, 'previewEntry.js'),
103
+ userDefinedComponent: fullEntryPath,
117
104
  getCurrentInputProps: () => inputProps,
118
105
  getEnvVariables: () => envVariables,
119
106
  port: desiredPort,
@@ -127,7 +114,7 @@ const previewCommand = async (remotionRoot, args) => {
127
114
  hash: staticHash,
128
115
  hashPrefix,
129
116
  });
130
- setLiveEventsListener(liveEventsServer);
117
+ (0, live_events_1.setLiveEventsListener)(liveEventsServer);
131
118
  const networkAddress = (0, get_network_address_1.getNetworkAddress)();
132
119
  if (networkAddress) {
133
120
  log_1.Log.info(`Server ready - Local: ${chalk_1.chalk.underline(`http://localhost:${port}`)}, Network: ${chalk_1.chalk.underline(`http://${networkAddress}:${port}`)}`);
@@ -4,6 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const jsx_runtime_1 = require("react/jsx-runtime");
7
+ const react_dom_1 = require("react-dom");
7
8
  const client_1 = __importDefault(require("react-dom/client"));
8
9
  const remotion_1 = require("remotion");
9
10
  require("../styles/styles.css");
@@ -15,13 +16,11 @@ remotion_1.Internals.CSSUtils.injectCSS(remotion_1.Internals.CSSUtils.makeDefaul
15
16
  const getServerDisconnectedDomElement = () => {
16
17
  return document.getElementById('server-disconnected-overlay');
17
18
  };
18
- const content = ((0, jsx_runtime_1.jsx)(remotion_1.Internals.RemotionRoot, { numberOfAudioTags: window.remotion_numberOfAudioTags, children: (0, jsx_runtime_1.jsx)(EditorContexts_1.EditorContexts, { children: (0, jsx_runtime_1.jsx)(Editor_1.Editor, {}) }) }));
19
+ const content = ((0, jsx_runtime_1.jsx)(remotion_1.Internals.RemotionRoot, { numberOfAudioTags: window.remotion_numberOfAudioTags, children: (0, jsx_runtime_1.jsxs)(EditorContexts_1.EditorContexts, { children: [(0, jsx_runtime_1.jsx)(Editor_1.Editor, {}), (0, react_dom_1.createPortal)((0, jsx_runtime_1.jsx)(ServerDisconnected_1.ServerDisconnected, {}), getServerDisconnectedDomElement())] }) }));
19
20
  if (client_1.default.createRoot) {
20
21
  client_1.default.createRoot(remotion_1.Internals.getPreviewDomElement()).render(content);
21
- client_1.default.createRoot(getServerDisconnectedDomElement()).render((0, jsx_runtime_1.jsx)(ServerDisconnected_1.ServerDisconnected, {}));
22
22
  }
23
23
  else {
24
24
  client_1.default.render(content, remotion_1.Internals.getPreviewDomElement());
25
- client_1.default.render((0, jsx_runtime_1.jsx)(ServerDisconnected_1.ServerDisconnected, {}), getServerDisconnectedDomElement());
26
25
  }
27
26
  (0, event_source_1.openEventSource)();
@@ -1,2 +1,2 @@
1
- import type { TCompMetadata } from 'remotion';
2
- export declare const printCompositions: (compositions: TCompMetadata[]) => void;
1
+ import type { AnyCompMetadata } from 'remotion';
2
+ export declare const printCompositions: (compositions: AnyCompMetadata[]) => void;