@remotion/cli 4.0.0-oops.3 → 4.0.0-prefetch.7

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 (479) hide show
  1. package/dist/bundle.d.ts +1 -0
  2. package/dist/bundle.js +32 -0
  3. package/dist/chalk/index.d.ts +58 -0
  4. package/dist/chalk/index.js +138 -0
  5. package/dist/code-frame.d.ts +1 -1
  6. package/dist/code-frame.js +10 -12
  7. package/dist/compositions.d.ts +1 -1
  8. package/dist/compositions.js +38 -8
  9. package/dist/config/browser-executable.d.ts +3 -0
  10. package/dist/config/browser-executable.js +12 -0
  11. package/dist/config/browser.d.ts +3 -0
  12. package/dist/config/browser.js +18 -0
  13. package/dist/config/bundle-out-dir.d.ts +2 -0
  14. package/dist/config/bundle-out-dir.js +12 -0
  15. package/dist/config/chromium-flags.d.ts +9 -0
  16. package/dist/config/chromium-flags.js +33 -0
  17. package/dist/config/codec.d.ts +7 -0
  18. package/dist/config/codec.js +40 -0
  19. package/dist/config/concurrency.d.ts +3 -0
  20. package/dist/config/concurrency.js +12 -0
  21. package/dist/config/crf.d.ts +4 -0
  22. package/dist/config/crf.js +23 -0
  23. package/dist/config/enforce-audio-track.d.ts +2 -0
  24. package/dist/config/enforce-audio-track.js +13 -0
  25. package/dist/config/env-file.d.ts +2 -0
  26. package/dist/config/env-file.js +10 -0
  27. package/dist/config/every-nth-frame.d.ts +3 -0
  28. package/dist/config/every-nth-frame.js +20 -0
  29. package/dist/config/ffmpeg-executable.d.ts +5 -0
  30. package/dist/config/ffmpeg-executable.js +21 -0
  31. package/dist/config/frame-range.d.ts +4 -0
  32. package/dist/config/frame-range.js +35 -0
  33. package/dist/config/get-public-path.d.ts +2 -0
  34. package/dist/config/get-public-path.js +12 -0
  35. package/dist/config/image-format.d.ts +3 -0
  36. package/dist/config/image-format.js +20 -0
  37. package/dist/config/image-sequence.d.ts +3 -0
  38. package/dist/config/image-sequence.js +15 -0
  39. package/dist/config/index.d.ts +49 -0
  40. package/dist/config/index.js +176 -0
  41. package/dist/config/keyboard-shortcuts.d.ts +2 -0
  42. package/dist/config/keyboard-shortcuts.js +12 -0
  43. package/dist/config/log.d.ts +3 -0
  44. package/dist/config/log.js +12 -0
  45. package/dist/config/max-timeline-tracks.d.ts +2 -0
  46. package/dist/config/max-timeline-tracks.js +24 -0
  47. package/dist/config/muted.d.ts +2 -0
  48. package/dist/config/muted.js +13 -0
  49. package/dist/config/number-of-gif-loops.d.ts +4 -0
  50. package/dist/config/number-of-gif-loops.js +21 -0
  51. package/dist/config/output-location.d.ts +2 -0
  52. package/dist/config/output-location.js +16 -0
  53. package/dist/config/override-webpack.d.ts +5 -0
  54. package/dist/config/override-webpack.js +14 -0
  55. package/dist/config/overwrite.d.ts +2 -0
  56. package/dist/config/overwrite.js +14 -0
  57. package/dist/config/pixel-format.d.ts +3 -0
  58. package/dist/config/pixel-format.js +16 -0
  59. package/dist/config/preview-server.d.ts +2 -0
  60. package/dist/config/preview-server.js +20 -0
  61. package/dist/config/prores-profile.d.ts +3 -0
  62. package/dist/config/prores-profile.js +12 -0
  63. package/dist/config/public-dir.d.ts +2 -0
  64. package/dist/config/public-dir.js +12 -0
  65. package/dist/config/quality.d.ts +2 -0
  66. package/dist/config/quality.js +17 -0
  67. package/dist/config/scale.d.ts +3 -0
  68. package/dist/config/scale.js +15 -0
  69. package/dist/config/still-frame.d.ts +2 -0
  70. package/dist/config/still-frame.js +12 -0
  71. package/dist/config/timeout.d.ts +2 -0
  72. package/dist/config/timeout.js +17 -0
  73. package/dist/config/webpack-caching.d.ts +3 -0
  74. package/dist/config/webpack-caching.js +16 -0
  75. package/dist/download-progress.d.ts +2 -1
  76. package/dist/download-progress.js +19 -4
  77. package/dist/editor/components/AudioWaveform.js +2 -2
  78. package/dist/editor/components/AudioWaveformBar.js +1 -1
  79. package/dist/editor/components/Button.d.ts +4 -0
  80. package/dist/editor/components/Button.js +24 -0
  81. package/dist/editor/components/Canvas.js +191 -1
  82. package/dist/editor/components/CheckboardToggle.js +9 -2
  83. package/dist/editor/components/ClipboardIcon.js +1 -1
  84. package/dist/editor/components/CollapsedCompositionSelector.d.ts +4 -0
  85. package/dist/editor/components/CollapsedCompositionSelector.js +39 -0
  86. package/dist/editor/components/CompositionSelector.js +7 -45
  87. package/dist/editor/components/CompositionSelectorItem.d.ts +2 -2
  88. package/dist/editor/components/CompositionSelectorItem.js +6 -4
  89. package/dist/editor/components/ControlButton.js +1 -1
  90. package/dist/editor/components/CopyButton.js +5 -18
  91. package/dist/editor/components/CurrentComposition.js +7 -2
  92. package/dist/editor/components/Editor.js +22 -90
  93. package/dist/editor/components/EditorContent.js +3 -2
  94. package/dist/editor/components/EditorContexts.d.ts +4 -0
  95. package/dist/editor/components/EditorContexts.js +83 -0
  96. package/dist/editor/components/FpsCounter.js +1 -1
  97. package/dist/editor/components/FramePersistor.d.ts +1 -1
  98. package/dist/editor/components/GlobalKeybindings.d.ts +1 -1
  99. package/dist/editor/components/GlobalKeybindings.js +26 -11
  100. package/dist/editor/components/InitialCompositionLoader.d.ts +4 -0
  101. package/dist/editor/components/InitialCompositionLoader.js +86 -0
  102. package/dist/editor/components/KeyboardShortcutsModal.js +15 -1
  103. package/dist/editor/components/LoopToggle.js +1 -1
  104. package/dist/editor/components/Menu/MenuDivider.js +1 -1
  105. package/dist/editor/components/Menu/MenuItem.d.ts +2 -2
  106. package/dist/editor/components/Menu/MenuItem.js +4 -4
  107. package/dist/editor/components/Menu/MenuSubItem.d.ts +1 -1
  108. package/dist/editor/components/Menu/MenuSubItem.js +5 -4
  109. package/dist/editor/components/Menu/SubMenu.d.ts +2 -2
  110. package/dist/editor/components/Menu/SubMenu.js +1 -1
  111. package/dist/editor/components/Menu/styles.d.ts +3 -2
  112. package/dist/editor/components/Menu/styles.js +10 -3
  113. package/dist/editor/components/MenuBuildIndicator.d.ts +2 -0
  114. package/dist/editor/components/MenuBuildIndicator.js +26 -0
  115. package/dist/editor/components/MenuToolbar.js +109 -20
  116. package/dist/editor/components/ModalContainer.js +1 -1
  117. package/dist/editor/components/ModalHeader.js +1 -1
  118. package/dist/editor/components/MuteToggle.js +1 -1
  119. package/dist/editor/components/NewComposition/CancelButton.d.ts +2 -1
  120. package/dist/editor/components/NewComposition/CancelButton.js +1 -1
  121. package/dist/editor/components/NewComposition/ComboBox.js +15 -5
  122. package/dist/editor/components/NewComposition/CopyHint.js +1 -1
  123. package/dist/editor/components/NewComposition/InputDragger.d.ts +2 -1
  124. package/dist/editor/components/NewComposition/InputDragger.js +2 -2
  125. package/dist/editor/components/NewComposition/MenuContent.d.ts +1 -1
  126. package/dist/editor/components/NewComposition/MenuContent.js +43 -8
  127. package/dist/editor/components/NewComposition/NewCompAspectRatio.js +1 -1
  128. package/dist/editor/components/NewComposition/NewCompDuration.js +1 -1
  129. package/dist/editor/components/NewComposition/NewComposition.d.ts +1 -1
  130. package/dist/editor/components/NewComposition/NewComposition.js +4 -4
  131. package/dist/editor/components/NewComposition/RemInput.js +1 -1
  132. package/dist/editor/components/NewComposition/ToggleAspectRatio.js +1 -1
  133. package/dist/editor/components/NewComposition/ValidationMessage.js +2 -2
  134. package/dist/editor/components/NewComposition/new-comp-layout.d.ts +1 -1
  135. package/dist/editor/components/NoRegisterRoot.d.ts +2 -0
  136. package/dist/editor/components/NoRegisterRoot.js +41 -0
  137. package/dist/editor/components/Notifications/ColorDot.d.ts +4 -0
  138. package/dist/editor/components/Notifications/ColorDot.js +22 -0
  139. package/dist/editor/components/Notifications/Notification.d.ts +8 -0
  140. package/dist/editor/components/Notifications/Notification.js +31 -0
  141. package/dist/editor/components/Notifications/NotificationCenter.d.ts +13 -0
  142. package/dist/editor/components/Notifications/NotificationCenter.js +40 -0
  143. package/dist/editor/components/Notifications/ServerDisconnected.d.ts +6 -0
  144. package/dist/editor/components/Notifications/ServerDisconnected.js +59 -0
  145. package/dist/editor/components/PlayPause.js +121 -23
  146. package/dist/editor/components/PlaybackKeyboardShortcutsManager.d.ts +1 -1
  147. package/dist/editor/components/PlaybackKeyboardShortcutsManager.js +24 -21
  148. package/dist/editor/components/PlaybackRatePersistor.d.ts +1 -1
  149. package/dist/editor/components/PlaybackRateSelector.js +7 -2
  150. package/dist/editor/components/Preview.d.ts +2 -1
  151. package/dist/editor/components/Preview.js +27 -16
  152. package/dist/editor/components/PreviewToolbar.js +4 -2
  153. package/dist/editor/components/PreviewZoomControls.d.ts +2 -0
  154. package/dist/editor/components/PreviewZoomControls.js +67 -0
  155. package/dist/editor/components/ResetZoomButton.d.ts +4 -0
  156. package/dist/editor/components/ResetZoomButton.js +9 -0
  157. package/dist/editor/components/RichTimelineToggle.js +1 -1
  158. package/dist/editor/components/SizeSelector.d.ts +3 -2
  159. package/dist/editor/components/SizeSelector.js +58 -18
  160. package/dist/editor/components/Splitter/SplitterContainer.d.ts +1 -1
  161. package/dist/editor/components/Splitter/SplitterContainer.js +1 -1
  162. package/dist/editor/components/Splitter/SplitterElement.js +5 -2
  163. package/dist/editor/components/Splitter/SplitterHandle.d.ts +4 -1
  164. package/dist/editor/components/Splitter/SplitterHandle.js +28 -7
  165. package/dist/editor/components/Thumbnail.d.ts +1 -1
  166. package/dist/editor/components/Thumbnail.js +1 -1
  167. package/dist/editor/components/TimeValue.js +9 -5
  168. package/dist/editor/components/Timeline/LoopedIndicator.js +2 -2
  169. package/dist/editor/components/Timeline/LoopedTimelineIndicators.js +3 -3
  170. package/dist/editor/components/Timeline/MaxTimelineTracks.d.ts +1 -0
  171. package/dist/editor/components/Timeline/MaxTimelineTracks.js +6 -4
  172. package/dist/editor/components/Timeline/Timeline.js +12 -4
  173. package/dist/editor/components/Timeline/TimelineCollapseToggle.js +2 -2
  174. package/dist/editor/components/Timeline/TimelineDragHandler.js +123 -25
  175. package/dist/editor/components/Timeline/TimelineInOutPointer.js +4 -3
  176. package/dist/editor/components/Timeline/TimelineInOutPointerHandle.js +1 -1
  177. package/dist/editor/components/Timeline/TimelineList.d.ts +2 -2
  178. package/dist/editor/components/Timeline/TimelineList.js +7 -4
  179. package/dist/editor/components/Timeline/TimelineListItem.d.ts +3 -2
  180. package/dist/editor/components/Timeline/TimelineListItem.js +10 -5
  181. package/dist/editor/components/Timeline/TimelinePlayCursorSyncer.d.ts +2 -0
  182. package/dist/editor/components/Timeline/TimelinePlayCursorSyncer.js +76 -0
  183. package/dist/editor/components/Timeline/TimelineScrollable.d.ts +4 -0
  184. package/dist/editor/components/Timeline/TimelineScrollable.js +25 -0
  185. package/dist/editor/components/Timeline/TimelineSequence.d.ts +1 -1
  186. package/dist/editor/components/Timeline/TimelineSequence.js +1 -1
  187. package/dist/editor/components/Timeline/TimelineSequenceFrame.js +1 -1
  188. package/dist/editor/components/Timeline/TimelineSlider.d.ts +3 -0
  189. package/dist/editor/components/Timeline/TimelineSlider.js +35 -2
  190. package/dist/editor/components/Timeline/TimelineSliderHandle.js +1 -3
  191. package/dist/editor/components/Timeline/TimelineTimeIndicators.d.ts +5 -0
  192. package/dist/editor/components/Timeline/TimelineTimeIndicators.js +168 -0
  193. package/dist/editor/components/Timeline/TimelineTracks.d.ts +2 -2
  194. package/dist/editor/components/Timeline/TimelineTracks.js +14 -9
  195. package/dist/editor/components/Timeline/TimelineVideoInfo.js +1 -1
  196. package/dist/editor/components/Timeline/TimelineZoomControls.d.ts +2 -0
  197. package/dist/editor/components/Timeline/TimelineZoomControls.js +45 -0
  198. package/dist/editor/components/Timeline/imperative-state.d.ts +12 -0
  199. package/dist/editor/components/Timeline/imperative-state.js +39 -0
  200. package/dist/editor/components/Timeline/is-collapsed.d.ts +2 -2
  201. package/dist/editor/components/Timeline/timeline-refs.d.ts +2 -0
  202. package/dist/editor/components/Timeline/timeline-refs.js +3 -1
  203. package/dist/editor/components/Timeline/timeline-scroll-logic.d.ts +44 -0
  204. package/dist/editor/components/Timeline/timeline-scroll-logic.js +218 -0
  205. package/dist/editor/components/TimelineInOutToggle.d.ts +2 -2
  206. package/dist/editor/components/TimelineInOutToggle.js +85 -20
  207. package/dist/editor/components/TopPanel.js +24 -1
  208. package/dist/editor/components/UpdateCheck.d.ts +1 -1
  209. package/dist/editor/components/UpdateCheck.js +1 -1
  210. package/dist/editor/components/UpdateModal/UpdateModal.d.ts +1 -1
  211. package/dist/editor/components/UpdateModal/UpdateModal.js +1 -1
  212. package/dist/editor/components/ZoomPersistor.d.ts +4 -0
  213. package/dist/editor/components/ZoomPersistor.js +37 -0
  214. package/dist/editor/components/layout.js +4 -4
  215. package/dist/editor/helpers/calculate-timeline.d.ts +2 -2
  216. package/dist/editor/helpers/colors.d.ts +2 -1
  217. package/dist/editor/helpers/colors.js +2 -1
  218. package/dist/editor/helpers/copy-text.d.ts +1 -1
  219. package/dist/editor/helpers/copy-text.js +5 -4
  220. package/dist/editor/helpers/create-folder-tree.d.ts +2 -2
  221. package/dist/editor/helpers/get-effective-translation.d.ts +26 -0
  222. package/dist/editor/helpers/get-effective-translation.js +45 -0
  223. package/dist/editor/helpers/get-left-of-timeline-slider.d.ts +1 -0
  224. package/dist/editor/helpers/get-left-of-timeline-slider.js +7 -4
  225. package/dist/editor/helpers/get-sequence-visible-range.d.ts +1 -1
  226. package/dist/editor/helpers/get-timeline-nestedness.d.ts +1 -1
  227. package/dist/editor/helpers/get-timeline-sequence-hash.d.ts +1 -1
  228. package/dist/editor/helpers/get-timeline-sequence-layout.d.ts +1 -1
  229. package/dist/editor/helpers/get-timeline-sequence-layout.js +29 -9
  230. package/dist/editor/helpers/get-timeline-sequence-sort-key.d.ts +1 -1
  231. package/dist/editor/helpers/is-composition-still.d.ts +1 -1
  232. package/dist/editor/helpers/is-current-selected-still.d.ts +4 -0
  233. package/dist/editor/helpers/is-current-selected-still.js +15 -1
  234. package/dist/editor/helpers/normalize-wheel.d.ts +5 -0
  235. package/dist/editor/helpers/normalize-wheel.js +20 -0
  236. package/dist/editor/helpers/normalize-zoom.d.ts +1 -0
  237. package/dist/editor/helpers/normalize-zoom.js +16 -0
  238. package/dist/editor/helpers/pick-color.d.ts +1 -0
  239. package/dist/editor/helpers/pick-color.js +36 -0
  240. package/dist/editor/helpers/use-compact-ui.d.ts +1 -0
  241. package/dist/editor/helpers/use-compact-ui.js +18 -0
  242. package/dist/editor/helpers/use-keybinding.d.ts +8 -2
  243. package/dist/editor/helpers/use-keybinding.js +23 -6
  244. package/dist/editor/helpers/validate-new-comp-data.d.ts +1 -1
  245. package/dist/editor/icons/Checkmark.js +1 -1
  246. package/dist/editor/icons/caret.d.ts +1 -1
  247. package/dist/editor/icons/caret.js +4 -4
  248. package/dist/editor/icons/film.d.ts +2 -1
  249. package/dist/editor/icons/film.js +1 -1
  250. package/dist/editor/icons/folder.d.ts +2 -1
  251. package/dist/editor/icons/folder.js +2 -2
  252. package/dist/editor/icons/jump-to-start.d.ts +2 -0
  253. package/dist/editor/icons/jump-to-start.js +8 -0
  254. package/dist/editor/icons/keys.js +3 -3
  255. package/dist/editor/icons/lock.d.ts +2 -1
  256. package/dist/editor/icons/lock.js +2 -2
  257. package/dist/editor/icons/media-volume.js +2 -2
  258. package/dist/editor/icons/minus.d.ts +3 -0
  259. package/dist/editor/icons/minus.js +8 -0
  260. package/dist/editor/icons/pause.d.ts +2 -1
  261. package/dist/editor/icons/pause.js +1 -1
  262. package/dist/editor/icons/play.d.ts +2 -1
  263. package/dist/editor/icons/play.js +1 -1
  264. package/dist/editor/icons/plus.d.ts +3 -0
  265. package/dist/editor/icons/plus.js +8 -0
  266. package/dist/editor/icons/step-back.d.ts +2 -1
  267. package/dist/editor/icons/step-back.js +1 -1
  268. package/dist/editor/icons/step-forward.d.ts +2 -1
  269. package/dist/editor/icons/step-forward.js +1 -1
  270. package/dist/editor/icons/still.d.ts +2 -1
  271. package/dist/editor/icons/still.js +1 -1
  272. package/dist/editor/icons/timeline.d.ts +2 -1
  273. package/dist/editor/icons/timeline.js +1 -1
  274. package/dist/editor/icons/timelineInOutPointer.d.ts +2 -1
  275. package/dist/editor/icons/timelineInOutPointer.js +2 -2
  276. package/dist/editor/state/folders.d.ts +11 -0
  277. package/dist/editor/state/folders.js +23 -0
  278. package/dist/editor/state/highest-z-index.js +2 -2
  279. package/dist/editor/state/in-out.d.ts +12 -0
  280. package/dist/editor/state/in-out.js +23 -0
  281. package/dist/editor/state/keybindings.js +4 -2
  282. package/dist/editor/state/modals.d.ts +2 -2
  283. package/dist/editor/state/preview-size.d.ts +6 -3
  284. package/dist/editor/state/preview-size.js +39 -5
  285. package/dist/editor/state/render-frame.js +12 -3
  286. package/dist/editor/state/sidebar.d.ts +12 -0
  287. package/dist/editor/state/sidebar.js +40 -0
  288. package/dist/editor/state/timeline-zoom.d.ts +10 -0
  289. package/dist/editor/state/timeline-zoom.js +38 -0
  290. package/dist/editor/state/z-index.js +7 -2
  291. package/dist/event-source-events.d.ts +6 -0
  292. package/dist/event-source-events.js +2 -0
  293. package/dist/event-source.d.ts +1 -0
  294. package/dist/event-source.js +28 -0
  295. package/dist/find-closest-package-json.d.ts +2 -0
  296. package/dist/find-closest-package-json.js +35 -0
  297. package/dist/format-bytes.d.ts +6 -0
  298. package/dist/format-bytes.js +103 -0
  299. package/dist/get-cli-options.d.ts +15 -8
  300. package/dist/get-cli-options.js +56 -46
  301. package/dist/get-composition-id.d.ts +1 -2
  302. package/dist/get-composition-id.js +2 -3
  303. package/dist/get-config-file-name.d.ts +1 -1
  304. package/dist/get-config-file-name.js +9 -6
  305. package/dist/get-env.js +6 -4
  306. package/dist/get-filename.d.ts +4 -3
  307. package/dist/get-filename.js +5 -5
  308. package/dist/get-final-output-codec.d.ts +6 -0
  309. package/dist/get-final-output-codec.js +63 -0
  310. package/dist/get-input-props.d.ts +1 -1
  311. package/dist/get-input-props.js +10 -1
  312. package/dist/get-latest-remotion-version.d.ts +1 -0
  313. package/dist/get-latest-remotion-version.js +31 -0
  314. package/dist/handle-common-errors.js +5 -0
  315. package/dist/image-formats.d.ts +3 -2
  316. package/dist/image-formats.js +6 -4
  317. package/dist/index.d.ts +79 -22
  318. package/dist/index.js +33 -15
  319. package/dist/initialize-render-cli.d.ts +1 -1
  320. package/dist/initialize-render-cli.js +8 -3
  321. package/dist/lambda-command.d.ts +1 -1
  322. package/dist/lambda-command.js +8 -4
  323. package/dist/list-of-remotion-packages.d.ts +1 -0
  324. package/dist/list-of-remotion-packages.js +20 -0
  325. package/dist/load-config.d.ts +1 -1
  326. package/dist/load-config.js +16 -5
  327. package/dist/log.js +11 -13
  328. package/dist/parse-command-line.d.ts +8 -1
  329. package/dist/parse-command-line.js +56 -28
  330. package/dist/prepare-entry-point.d.ts +12 -0
  331. package/dist/prepare-entry-point.js +37 -0
  332. package/dist/preview-server/dev-middleware/compatible-api.d.ts +7 -0
  333. package/dist/preview-server/dev-middleware/compatible-api.js +20 -0
  334. package/dist/preview-server/dev-middleware/get-paths.d.ts +7 -0
  335. package/dist/preview-server/dev-middleware/get-paths.js +19 -0
  336. package/dist/preview-server/dev-middleware/index.d.ts +3 -0
  337. package/dist/preview-server/dev-middleware/index.js +27 -0
  338. package/dist/preview-server/dev-middleware/is-color-supported.d.ts +1 -0
  339. package/dist/preview-server/dev-middleware/is-color-supported.js +37 -0
  340. package/dist/preview-server/dev-middleware/middleware.d.ts +10 -0
  341. package/dist/preview-server/dev-middleware/middleware.js +224 -0
  342. package/dist/preview-server/dev-middleware/range-parser.d.ts +15 -0
  343. package/dist/preview-server/dev-middleware/range-parser.js +96 -0
  344. package/dist/preview-server/dev-middleware/ready.d.ts +3 -0
  345. package/dist/preview-server/dev-middleware/ready.js +11 -0
  346. package/dist/preview-server/dev-middleware/setup-hooks.d.ts +2 -0
  347. package/dist/preview-server/dev-middleware/setup-hooks.js +42 -0
  348. package/dist/preview-server/dev-middleware/setup-output-filesystem.d.ts +2 -0
  349. package/dist/preview-server/dev-middleware/setup-output-filesystem.js +13 -0
  350. package/dist/preview-server/dev-middleware/types.d.ts +10 -0
  351. package/dist/preview-server/dev-middleware/types.js +2 -0
  352. package/dist/preview-server/error-overlay/entry-basic.d.ts +1 -0
  353. package/dist/preview-server/error-overlay/entry-basic.js +21 -0
  354. package/dist/preview-server/error-overlay/react-overlay/effects/format-warning.d.ts +11 -0
  355. package/dist/preview-server/error-overlay/react-overlay/effects/format-warning.js +41 -0
  356. package/dist/preview-server/error-overlay/react-overlay/effects/map-error-to-react-stack.d.ts +7 -0
  357. package/dist/preview-server/error-overlay/react-overlay/effects/map-error-to-react-stack.js +46 -0
  358. package/dist/preview-server/error-overlay/react-overlay/effects/proxy-console.d.ts +24 -0
  359. package/dist/preview-server/error-overlay/react-overlay/effects/proxy-console.js +64 -0
  360. package/dist/preview-server/error-overlay/react-overlay/effects/resolve-file-source.d.ts +3 -0
  361. package/dist/preview-server/error-overlay/react-overlay/effects/resolve-file-source.js +31 -0
  362. package/dist/preview-server/error-overlay/react-overlay/effects/stack-trace-limit.d.ts +3 -0
  363. package/dist/preview-server/error-overlay/react-overlay/effects/stack-trace-limit.js +43 -0
  364. package/dist/preview-server/error-overlay/react-overlay/effects/unhandled-error.d.ts +4 -0
  365. package/dist/preview-server/error-overlay/react-overlay/effects/unhandled-error.js +45 -0
  366. package/dist/preview-server/error-overlay/react-overlay/effects/unhandled-rejection.d.ts +4 -0
  367. package/dist/preview-server/error-overlay/react-overlay/effects/unhandled-rejection.js +41 -0
  368. package/dist/preview-server/error-overlay/react-overlay/index.d.ts +2 -0
  369. package/dist/preview-server/error-overlay/react-overlay/index.js +21 -0
  370. package/dist/preview-server/error-overlay/react-overlay/listen-to-runtime-errors.d.ts +8 -0
  371. package/dist/preview-server/error-overlay/react-overlay/listen-to-runtime-errors.js +87 -0
  372. package/dist/preview-server/error-overlay/react-overlay/utils/get-file-source.d.ts +1 -0
  373. package/dist/preview-server/error-overlay/react-overlay/utils/get-file-source.js +21 -0
  374. package/dist/preview-server/error-overlay/react-overlay/utils/get-lines-around.d.ts +14 -0
  375. package/dist/preview-server/error-overlay/react-overlay/utils/get-lines-around.js +24 -0
  376. package/dist/preview-server/error-overlay/react-overlay/utils/get-source-map.d.ts +7 -0
  377. package/dist/preview-server/error-overlay/react-overlay/utils/get-source-map.js +50 -0
  378. package/dist/preview-server/error-overlay/react-overlay/utils/get-stack-frames.d.ts +2 -0
  379. package/dist/preview-server/error-overlay/react-overlay/utils/get-stack-frames.js +27 -0
  380. package/dist/preview-server/error-overlay/react-overlay/utils/open-in-editor.d.ts +16 -0
  381. package/dist/preview-server/error-overlay/react-overlay/utils/open-in-editor.js +483 -0
  382. package/dist/preview-server/error-overlay/react-overlay/utils/parser.d.ts +2 -0
  383. package/dist/preview-server/error-overlay/react-overlay/utils/parser.js +117 -0
  384. package/dist/preview-server/error-overlay/react-overlay/utils/stack-frame.d.ts +40 -0
  385. package/dist/preview-server/error-overlay/react-overlay/utils/stack-frame.js +31 -0
  386. package/dist/preview-server/error-overlay/react-overlay/utils/unmapper.d.ts +2 -0
  387. package/dist/preview-server/error-overlay/react-overlay/utils/unmapper.js +64 -0
  388. package/dist/preview-server/error-overlay/remotion-overlay/AskOnDiscord.d.ts +4 -0
  389. package/dist/preview-server/error-overlay/remotion-overlay/AskOnDiscord.js +32 -0
  390. package/dist/preview-server/error-overlay/remotion-overlay/Button.d.ts +7 -0
  391. package/dist/preview-server/error-overlay/remotion-overlay/Button.js +31 -0
  392. package/dist/preview-server/error-overlay/remotion-overlay/CodeFrame.d.ts +6 -0
  393. package/dist/preview-server/error-overlay/remotion-overlay/CodeFrame.js +30 -0
  394. package/dist/preview-server/error-overlay/remotion-overlay/DismissButton.d.ts +2 -0
  395. package/dist/preview-server/error-overlay/remotion-overlay/DismissButton.js +23 -0
  396. package/dist/preview-server/error-overlay/remotion-overlay/ErrorDisplay.d.ts +6 -0
  397. package/dist/preview-server/error-overlay/remotion-overlay/ErrorDisplay.js +48 -0
  398. package/dist/preview-server/error-overlay/remotion-overlay/ErrorLoader.d.ts +5 -0
  399. package/dist/preview-server/error-overlay/remotion-overlay/ErrorLoader.js +61 -0
  400. package/dist/preview-server/error-overlay/remotion-overlay/ErrorMessage.d.ts +4 -0
  401. package/dist/preview-server/error-overlay/remotion-overlay/ErrorMessage.js +69 -0
  402. package/dist/preview-server/error-overlay/remotion-overlay/ErrorTitle.d.ts +6 -0
  403. package/dist/preview-server/error-overlay/remotion-overlay/ErrorTitle.js +37 -0
  404. package/dist/preview-server/error-overlay/remotion-overlay/HelpLink.d.ts +6 -0
  405. package/dist/preview-server/error-overlay/remotion-overlay/HelpLink.js +35 -0
  406. package/dist/preview-server/error-overlay/remotion-overlay/OpenInEditor.d.ts +6 -0
  407. package/dist/preview-server/error-overlay/remotion-overlay/OpenInEditor.js +109 -0
  408. package/dist/preview-server/error-overlay/remotion-overlay/Overlay.d.ts +14 -0
  409. package/dist/preview-server/error-overlay/remotion-overlay/Overlay.js +50 -0
  410. package/dist/preview-server/error-overlay/remotion-overlay/SearchGitHubIssues.d.ts +5 -0
  411. package/dist/preview-server/error-overlay/remotion-overlay/SearchGitHubIssues.js +31 -0
  412. package/dist/preview-server/error-overlay/remotion-overlay/ShortcutHint.d.ts +5 -0
  413. package/dist/preview-server/error-overlay/remotion-overlay/ShortcutHint.js +16 -0
  414. package/dist/preview-server/error-overlay/remotion-overlay/StackFrame.d.ts +8 -0
  415. package/dist/preview-server/error-overlay/remotion-overlay/StackFrame.js +50 -0
  416. package/dist/preview-server/error-overlay/remotion-overlay/Symbolicating.d.ts +2 -0
  417. package/dist/preview-server/error-overlay/remotion-overlay/Symbolicating.js +8 -0
  418. package/dist/preview-server/error-overlay/remotion-overlay/carets.d.ts +5 -0
  419. package/dist/preview-server/error-overlay/remotion-overlay/carets.js +12 -0
  420. package/dist/preview-server/error-overlay/remotion-overlay/format-location.d.ts +1 -0
  421. package/dist/preview-server/error-overlay/remotion-overlay/format-location.js +10 -0
  422. package/dist/preview-server/error-overlay/remotion-overlay/get-help-link.d.ts +5 -0
  423. package/dist/preview-server/error-overlay/remotion-overlay/get-help-link.js +43 -0
  424. package/dist/preview-server/error-overlay/remotion-overlay/index.d.ts +1 -0
  425. package/dist/preview-server/error-overlay/remotion-overlay/index.js +18 -0
  426. package/dist/preview-server/get-package-manager.d.ts +10 -0
  427. package/dist/preview-server/get-package-manager.js +47 -0
  428. package/dist/preview-server/hot-middleware/client.d.ts +19 -0
  429. package/dist/preview-server/hot-middleware/client.js +177 -0
  430. package/dist/preview-server/hot-middleware/index.d.ts +8 -0
  431. package/dist/preview-server/hot-middleware/index.js +150 -0
  432. package/dist/preview-server/hot-middleware/process-update.d.ts +12 -0
  433. package/dist/preview-server/hot-middleware/process-update.js +144 -0
  434. package/dist/preview-server/hot-middleware/strip-ansi.d.ts +1 -0
  435. package/dist/preview-server/hot-middleware/strip-ansi.js +21 -0
  436. package/dist/preview-server/hot-middleware/types.d.ts +27 -0
  437. package/dist/preview-server/hot-middleware/types.js +10 -0
  438. package/dist/preview-server/live-events.d.ts +8 -0
  439. package/dist/preview-server/live-events.js +41 -0
  440. package/dist/preview-server/project-info.d.ts +5 -0
  441. package/dist/preview-server/project-info.js +22 -0
  442. package/dist/preview-server/routes.d.ts +12 -0
  443. package/dist/preview-server/routes.js +161 -0
  444. package/dist/preview-server/serve-static.d.ts +9 -0
  445. package/dist/preview-server/serve-static.js +77 -0
  446. package/dist/preview-server/start-server.d.ts +15 -0
  447. package/dist/preview-server/start-server.js +81 -0
  448. package/dist/preview-server/update-available.d.ts +11 -0
  449. package/dist/preview-server/update-available.js +47 -0
  450. package/dist/preview.d.ts +1 -1
  451. package/dist/preview.js +38 -8
  452. package/dist/previewEntry.js +12 -2
  453. package/dist/print-error.js +6 -8
  454. package/dist/print-help.js +11 -14
  455. package/dist/progress-bar.d.ts +7 -4
  456. package/dist/progress-bar.js +19 -15
  457. package/dist/render.d.ts +1 -1
  458. package/dist/render.js +88 -55
  459. package/dist/setup-cache.d.ts +16 -2
  460. package/dist/setup-cache.js +53 -14
  461. package/dist/smooth-zoom.d.ts +4 -0
  462. package/dist/smooth-zoom.js +20 -0
  463. package/dist/still.d.ts +1 -1
  464. package/dist/still.js +93 -43
  465. package/dist/truthy.d.ts +3 -0
  466. package/dist/truthy.js +7 -0
  467. package/dist/upgrade.d.ts +1 -1
  468. package/dist/upgrade.js +18 -32
  469. package/dist/user-passed-output-location.d.ts +5 -1
  470. package/dist/user-passed-output-location.js +14 -7
  471. package/dist/versions.d.ts +2 -2
  472. package/dist/versions.js +16 -24
  473. package/dist/warn-about-ffmpeg-version.d.ts +1 -1
  474. package/package.json +15 -16
  475. package/tsconfig.json +2 -1
  476. package/vitest.config.ts +9 -0
  477. package/web/favicon.png +0 -0
  478. package/dist/editor/components/LoadingIndicator.d.ts +0 -2
  479. package/dist/editor/components/LoadingIndicator.js +0 -35
@@ -0,0 +1,161 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.handleRoutes = void 0;
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");
11
+ const get_file_source_1 = require("./error-overlay/react-overlay/utils/get-file-source");
12
+ const open_in_editor_1 = require("./error-overlay/react-overlay/utils/open-in-editor");
13
+ const get_package_manager_1 = require("./get-package-manager");
14
+ const project_info_1 = require("./project-info");
15
+ const serve_static_1 = require("./serve-static");
16
+ const update_available_1 = require("./update-available");
17
+ const handleUpdate = async (remotionRoot, _, response) => {
18
+ const data = await (0, update_available_1.isUpdateAvailableWithTimeout)(remotionRoot);
19
+ response.setHeader('content-type', 'application/json');
20
+ response.writeHead(200);
21
+ response.end(JSON.stringify(data));
22
+ };
23
+ const editorGuess = (0, open_in_editor_1.guessEditor)();
24
+ const static404 = (response) => {
25
+ response.writeHead(404);
26
+ response.end('The static/ prefix has been changed, this URL is no longer valid.');
27
+ };
28
+ const handleFallback = async ({ remotionRoot, hash, response, getCurrentInputProps, }) => {
29
+ const [edit] = await editorGuess;
30
+ const displayName = (0, open_in_editor_1.getDisplayNameForEditor)(edit ? edit.command : null);
31
+ response.setHeader('content-type', 'text/html');
32
+ response.writeHead(200);
33
+ const packageManager = (0, get_package_manager_1.getPackageManager)(remotionRoot);
34
+ response.end(bundler_1.BundlerInternals.indexHtml({
35
+ staticHash: hash,
36
+ baseDir: '/',
37
+ editorName: displayName,
38
+ inputProps: getCurrentInputProps(),
39
+ remotionRoot,
40
+ previewServerCommand: packageManager === 'unknown' ? null : packageManager.startCommand,
41
+ }));
42
+ };
43
+ const handleProjectInfo = async (remotionRoot, _, response) => {
44
+ const data = await (0, project_info_1.getProjectInfo)(remotionRoot);
45
+ response.setHeader('content-type', 'application/json');
46
+ response.writeHead(200);
47
+ response.end(JSON.stringify(data));
48
+ };
49
+ const handleFileSource = async ({ method, remotionRoot, search, response, }) => {
50
+ if (method === 'OPTIONS') {
51
+ response.writeHead(200);
52
+ response.end();
53
+ return;
54
+ }
55
+ if (!search.startsWith('?')) {
56
+ throw new Error('query must start with ?');
57
+ }
58
+ const query = new url_1.URLSearchParams(search);
59
+ const f = query.get('f');
60
+ if (typeof f !== 'string') {
61
+ throw new Error('must pass `f` parameter');
62
+ }
63
+ const data = await (0, get_file_source_1.getFileSource)(remotionRoot, decodeURIComponent(f));
64
+ response.writeHead(200);
65
+ response.write(data);
66
+ return response.end();
67
+ };
68
+ const handleOpenInEditor = async (remotionRoot, req, res) => {
69
+ if (req.method === 'OPTIONS') {
70
+ res.statusCode = 200;
71
+ res.end();
72
+ }
73
+ try {
74
+ const b = await new Promise((_resolve) => {
75
+ let data = '';
76
+ req.on('data', (chunk) => {
77
+ data += chunk;
78
+ });
79
+ req.on('end', () => {
80
+ _resolve(data.toString());
81
+ });
82
+ });
83
+ const body = JSON.parse(b);
84
+ if (!('stack' in body)) {
85
+ throw new TypeError('Need to pass stack');
86
+ }
87
+ const stack = body.stack;
88
+ const guess = await editorGuess;
89
+ const didOpen = await (0, open_in_editor_1.launchEditor)({
90
+ colNumber: stack.originalColumnNumber,
91
+ editor: guess[0],
92
+ fileName: path_1.default.resolve(remotionRoot, stack.originalFileName),
93
+ lineNumber: stack.originalLineNumber,
94
+ vsCodeNewWindow: false,
95
+ });
96
+ res.setHeader('content-type', 'application/json');
97
+ res.writeHead(200);
98
+ res.end(JSON.stringify({
99
+ success: didOpen,
100
+ }));
101
+ }
102
+ catch (err) {
103
+ res.setHeader('content-type', 'application/json');
104
+ res.writeHead(200);
105
+ res.end(JSON.stringify({
106
+ success: false,
107
+ }));
108
+ }
109
+ };
110
+ const handleFavicon = (_, response) => {
111
+ const filePath = path_1.default.join(__dirname, '..', '..', 'web', 'favicon.png');
112
+ const stat = (0, fs_1.statSync)(filePath);
113
+ response.writeHead(200, {
114
+ 'Content-Type': 'image/png',
115
+ 'Content-Length': stat.size,
116
+ });
117
+ const readStream = (0, fs_1.createReadStream)(filePath);
118
+ readStream.pipe(response);
119
+ };
120
+ const handleRoutes = ({ hash, hashPrefix, request, response, liveEventsServer, getCurrentInputProps, remotionRoot, userPassedPublicDir, }) => {
121
+ const url = new URL(request.url, 'http://localhost');
122
+ if (url.pathname === '/api/update') {
123
+ return handleUpdate(remotionRoot, request, response);
124
+ }
125
+ if (url.pathname === '/api/project-info') {
126
+ return handleProjectInfo(remotionRoot, request, response);
127
+ }
128
+ if (url.pathname === '/api/file-source') {
129
+ return handleFileSource({
130
+ remotionRoot,
131
+ search: url.search,
132
+ method: request.method,
133
+ response,
134
+ });
135
+ }
136
+ if (url.pathname === '/api/open-in-editor') {
137
+ return handleOpenInEditor(remotionRoot, request, response);
138
+ }
139
+ if (url.pathname === '/remotion.png') {
140
+ return handleFavicon(request, response);
141
+ }
142
+ if (url.pathname === '/events') {
143
+ return liveEventsServer.router(request, response);
144
+ }
145
+ if (url.pathname.startsWith(hash)) {
146
+ const publicDir = userPassedPublicDir
147
+ ? path_1.default.resolve(remotionRoot, userPassedPublicDir)
148
+ : path_1.default.join(remotionRoot, 'public');
149
+ return (0, serve_static_1.serveStatic)(publicDir, hash, request, response);
150
+ }
151
+ if (url.pathname.startsWith(hashPrefix)) {
152
+ return static404(response);
153
+ }
154
+ return handleFallback({
155
+ remotionRoot,
156
+ hash,
157
+ response,
158
+ getCurrentInputProps,
159
+ });
160
+ };
161
+ exports.handleRoutes = handleRoutes;
@@ -0,0 +1,9 @@
1
+ /*!
2
+ * serve-static
3
+ * Copyright(c) 2010 Sencha Inc.
4
+ * Copyright(c) 2011 TJ Holowaychuk
5
+ * Copyright(c) 2014-2016 Douglas Christopher Wilson
6
+ * MIT Licensed
7
+ */
8
+ import type { IncomingMessage, ServerResponse } from 'http';
9
+ export declare const serveStatic: (root: string, hash: string, req: IncomingMessage, res: ServerResponse) => Promise<void>;
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+ /*!
3
+ * serve-static
4
+ * Copyright(c) 2010 Sencha Inc.
5
+ * Copyright(c) 2011 TJ Holowaychuk
6
+ * Copyright(c) 2014-2016 Douglas Christopher Wilson
7
+ * MIT Licensed
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.serveStatic = void 0;
11
+ const renderer_1 = require("@remotion/renderer");
12
+ const fs_1 = require("fs");
13
+ const path_1 = require("path");
14
+ const middleware_1 = require("./dev-middleware/middleware");
15
+ const range_parser_1 = require("./dev-middleware/range-parser");
16
+ const serveStatic = async function (root, hash, req, res) {
17
+ if (req.method !== 'GET' && req.method !== 'HEAD') {
18
+ // method not allowed
19
+ res.statusCode = 405;
20
+ res.setHeader('Allow', 'GET, HEAD');
21
+ res.setHeader('Content-Length', '0');
22
+ res.end();
23
+ return;
24
+ }
25
+ const path = (0, path_1.join)(root, new URL(req.url, 'http://localhost').pathname.replace(new RegExp(`^${hash}`), ''));
26
+ if (!renderer_1.RenderInternals.isPathInside(path, root)) {
27
+ res.writeHead(500);
28
+ res.write('Not allowed to read');
29
+ res.end();
30
+ return;
31
+ }
32
+ const exists = (0, fs_1.existsSync)(path);
33
+ if (!exists) {
34
+ res.writeHead(404);
35
+ res.write(`${path} does not exist`);
36
+ res.end();
37
+ return;
38
+ }
39
+ const lstat = await fs_1.promises.lstat(path);
40
+ const isDirectory = lstat.isDirectory();
41
+ if (isDirectory) {
42
+ res.writeHead(500);
43
+ res.write('Is a directory');
44
+ res.end();
45
+ return;
46
+ }
47
+ const hasRange = req.headers.range && lstat.size;
48
+ if (!hasRange) {
49
+ const readStream = (0, fs_1.createReadStream)(path);
50
+ res.setHeader('content-type', renderer_1.RenderInternals.mimeLookup(path) || 'application/octet-stream');
51
+ res.setHeader('content-length', lstat.size);
52
+ res.writeHead(200);
53
+ readStream.pipe(res);
54
+ return;
55
+ }
56
+ const range = (0, range_parser_1.parseRange)(lstat.size, req.headers.range);
57
+ if (typeof range === 'object' && range.type === 'bytes') {
58
+ const { start, end } = range[0];
59
+ res.setHeader('content-type', renderer_1.RenderInternals.mimeLookup(path) || 'application/octet-stream');
60
+ res.setHeader('content-range', (0, middleware_1.getValueContentRangeHeader)('bytes', lstat.size, {
61
+ end,
62
+ start,
63
+ }));
64
+ res.setHeader('content-length', end - start + 1);
65
+ res.writeHead(206);
66
+ const readStream = (0, fs_1.createReadStream)(path, {
67
+ start,
68
+ end,
69
+ });
70
+ readStream.pipe(res);
71
+ return;
72
+ }
73
+ res.statusCode = 416;
74
+ res.setHeader('Content-Range', `bytes */${lstat.size}`);
75
+ res.end();
76
+ };
77
+ exports.serveStatic = serveStatic;
@@ -0,0 +1,15 @@
1
+ import type { WebpackOverrideFn } from 'remotion';
2
+ import type { LiveEventsServer } from './live-events';
3
+ export declare const startServer: (entry: string, userDefinedComponent: string, options: {
4
+ webpackOverride: WebpackOverrideFn;
5
+ getCurrentInputProps: () => object;
6
+ envVariables?: Record<string, string>;
7
+ port: number | null;
8
+ maxTimelineTracks?: number;
9
+ remotionRoot: string;
10
+ keyboardShortcutsEnabled: boolean;
11
+ userPassedPublicDir: string | null;
12
+ }) => Promise<{
13
+ port: number;
14
+ liveEventsServer: LiveEventsServer;
15
+ }>;
@@ -0,0 +1,81 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.startServer = void 0;
7
+ const bundler_1 = require("@remotion/bundler");
8
+ const renderer_1 = require("@remotion/renderer");
9
+ const crypto_1 = __importDefault(require("crypto"));
10
+ const fs_1 = __importDefault(require("fs"));
11
+ const http_1 = __importDefault(require("http"));
12
+ const os_1 = __importDefault(require("os"));
13
+ const path_1 = __importDefault(require("path"));
14
+ const config_1 = require("../config");
15
+ const dev_middleware_1 = require("./dev-middleware");
16
+ const hot_middleware_1 = require("./hot-middleware");
17
+ const live_events_1 = require("./live-events");
18
+ const routes_1 = require("./routes");
19
+ const startServer = async (entry, userDefinedComponent, options) => {
20
+ var _a, _b, _c, _d;
21
+ const tmpDir = await fs_1.default.promises.mkdtemp(path_1.default.join(os_1.default.tmpdir(), 'react-motion-graphics'));
22
+ const [, config] = bundler_1.BundlerInternals.webpackConfig({
23
+ entry,
24
+ userDefinedComponent,
25
+ outDir: tmpDir,
26
+ environment: 'development',
27
+ webpackOverride: (_a = options === null || options === void 0 ? void 0 : options.webpackOverride) !== null && _a !== void 0 ? _a : config_1.ConfigInternals.getWebpackOverrideFn(),
28
+ envVariables: (_b = options === null || options === void 0 ? void 0 : options.envVariables) !== null && _b !== void 0 ? _b : {},
29
+ maxTimelineTracks: (_c = options === null || options === void 0 ? void 0 : options.maxTimelineTracks) !== null && _c !== void 0 ? _c : 15,
30
+ entryPoints: [
31
+ require.resolve('./hot-middleware/client'),
32
+ require.resolve('./error-overlay/entry-basic.js'),
33
+ ],
34
+ remotionRoot: options.remotionRoot,
35
+ keyboardShortcutsEnabled: options.keyboardShortcutsEnabled,
36
+ });
37
+ const compiler = (0, bundler_1.webpack)(config);
38
+ const hashPrefix = '/static-';
39
+ const hash = `${hashPrefix}${crypto_1.default.randomBytes(6).toString('hex')}`;
40
+ const wdmMiddleware = (0, dev_middleware_1.wdm)(compiler);
41
+ const whm = (0, hot_middleware_1.webpackHotMiddleware)(compiler);
42
+ const liveEventsServer = (0, live_events_1.makeLiveEventsRouter)();
43
+ const server = http_1.default.createServer((request, response) => {
44
+ new Promise((resolve) => {
45
+ wdmMiddleware(request, response, () => {
46
+ resolve();
47
+ });
48
+ })
49
+ .then(() => {
50
+ return new Promise((resolve) => {
51
+ whm(request, response, () => {
52
+ resolve();
53
+ });
54
+ });
55
+ })
56
+ .then(() => {
57
+ return (0, routes_1.handleRoutes)({
58
+ hash,
59
+ hashPrefix,
60
+ request,
61
+ response,
62
+ liveEventsServer,
63
+ getCurrentInputProps: options.getCurrentInputProps,
64
+ remotionRoot: options.remotionRoot,
65
+ userPassedPublicDir: options.userPassedPublicDir,
66
+ });
67
+ })
68
+ .catch((err) => {
69
+ response.setHeader('content-type', 'application/json');
70
+ response.writeHead(500);
71
+ response.end(JSON.stringify({
72
+ err: err.message,
73
+ }));
74
+ });
75
+ });
76
+ const desiredPort = (_d = options === null || options === void 0 ? void 0 : options.port) !== null && _d !== void 0 ? _d : undefined;
77
+ const port = await renderer_1.RenderInternals.getDesiredPort(desiredPort, 3000, 3100);
78
+ server.listen(port);
79
+ return { port, liveEventsServer };
80
+ };
81
+ exports.startServer = startServer;
@@ -0,0 +1,11 @@
1
+ import type { PackageManager } from './get-package-manager';
2
+ declare type Info = {
3
+ currentVersion: string;
4
+ latestVersion: string;
5
+ updateAvailable: boolean;
6
+ timedOut: boolean;
7
+ packageManager: PackageManager | 'unknown';
8
+ };
9
+ export declare const getRemotionVersion: () => any;
10
+ export declare const isUpdateAvailableWithTimeout: (remotionRoot: string) => Promise<Info>;
11
+ export {};
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.isUpdateAvailableWithTimeout = exports.getRemotionVersion = void 0;
7
+ const semver_1 = __importDefault(require("semver"));
8
+ const get_latest_remotion_version_1 = require("../get-latest-remotion-version");
9
+ const get_package_manager_1 = require("./get-package-manager");
10
+ const isUpdateAvailable = async ({ remotionRoot, currentVersion, }) => {
11
+ const latest = await (0, get_latest_remotion_version_1.getLatestRemotionVersion)();
12
+ const pkgManager = (0, get_package_manager_1.getPackageManager)(remotionRoot);
13
+ return {
14
+ updateAvailable: semver_1.default.lt(currentVersion, latest),
15
+ currentVersion,
16
+ latestVersion: latest,
17
+ timedOut: false,
18
+ packageManager: pkgManager === 'unknown' ? 'unknown' : pkgManager.manager,
19
+ };
20
+ };
21
+ const getRemotionVersion = () => {
22
+ // careful when refactoring this file, path must be adjusted
23
+ const packageJson = require('../../package.json');
24
+ const { version } = packageJson;
25
+ return version;
26
+ };
27
+ exports.getRemotionVersion = getRemotionVersion;
28
+ const isUpdateAvailableWithTimeout = (remotionRoot) => {
29
+ const version = (0, exports.getRemotionVersion)();
30
+ const threeSecTimeout = new Promise((resolve) => {
31
+ const pkgManager = (0, get_package_manager_1.getPackageManager)(remotionRoot);
32
+ setTimeout(() => {
33
+ resolve({
34
+ currentVersion: version,
35
+ latestVersion: version,
36
+ updateAvailable: false,
37
+ timedOut: true,
38
+ packageManager: pkgManager === 'unknown' ? 'unknown' : pkgManager.manager,
39
+ });
40
+ }, 3000);
41
+ });
42
+ return Promise.race([
43
+ threeSecTimeout,
44
+ isUpdateAvailable({ remotionRoot, currentVersion: version }),
45
+ ]);
46
+ };
47
+ exports.isUpdateAvailableWithTimeout = isUpdateAvailableWithTimeout;
package/dist/preview.d.ts CHANGED
@@ -1 +1 @@
1
- export declare const previewCommand: () => Promise<void>;
1
+ export declare const previewCommand: (remotionRoot: string) => Promise<void>;
package/dist/preview.js CHANGED
@@ -4,17 +4,33 @@ 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 bundler_1 = require("@remotion/bundler");
8
7
  const better_opn_1 = __importDefault(require("better-opn"));
9
8
  const path_1 = __importDefault(require("path"));
10
- const remotion_1 = require("remotion");
9
+ const config_1 = require("./config");
11
10
  const get_env_1 = require("./get-env");
12
11
  const get_input_props_1 = require("./get-input-props");
13
12
  const initialize_render_cli_1 = require("./initialize-render-cli");
14
13
  const log_1 = require("./log");
15
14
  const parse_command_line_1 = require("./parse-command-line");
15
+ const start_server_1 = require("./preview-server/start-server");
16
16
  const noop = () => undefined;
17
- const previewCommand = async () => {
17
+ let liveEventsListener = null;
18
+ const waiters = [];
19
+ const setLiveEventsListener = (listener) => {
20
+ liveEventsListener = listener;
21
+ waiters.forEach((w) => w(listener));
22
+ };
23
+ const waitForLiveEventsListener = () => {
24
+ if (liveEventsListener) {
25
+ return Promise.resolve(liveEventsListener);
26
+ }
27
+ return new Promise((resolve) => {
28
+ waiters.push((list) => {
29
+ resolve(list);
30
+ });
31
+ });
32
+ };
33
+ const previewCommand = async (remotionRoot) => {
18
34
  const file = parse_command_line_1.parsedCli._[1];
19
35
  if (!file) {
20
36
  log_1.Log.error('The preview command requires you to specify a root file. For example');
@@ -24,15 +40,29 @@ const previewCommand = async () => {
24
40
  }
25
41
  const { port: desiredPort } = parse_command_line_1.parsedCli;
26
42
  const fullPath = path_1.default.join(process.cwd(), file);
27
- await (0, initialize_render_cli_1.initializeRenderCli)('preview');
28
- const inputProps = (0, get_input_props_1.getInputProps)();
43
+ await (0, initialize_render_cli_1.initializeRenderCli)(remotionRoot, 'preview');
44
+ let inputProps = (0, get_input_props_1.getInputProps)((newProps) => {
45
+ waitForLiveEventsListener().then((listener) => {
46
+ inputProps = newProps;
47
+ listener.sendEventToClient({
48
+ type: 'new-input-props',
49
+ newProps,
50
+ });
51
+ });
52
+ });
29
53
  const envVariables = await (0, get_env_1.getEnvironmentVariables)();
30
- const port = await bundler_1.BundlerInternals.startServer(path_1.default.resolve(__dirname, 'previewEntry.js'), fullPath, {
31
- inputProps,
54
+ const { port, liveEventsServer } = await (0, start_server_1.startServer)(path_1.default.resolve(__dirname, 'previewEntry.js'), fullPath, {
55
+ getCurrentInputProps: () => inputProps,
32
56
  envVariables,
33
57
  port: desiredPort,
34
- maxTimelineTracks: remotion_1.Internals.getMaxTimelineTracks(),
58
+ maxTimelineTracks: config_1.ConfigInternals.getMaxTimelineTracks(),
59
+ remotionRoot,
60
+ keyboardShortcutsEnabled: config_1.ConfigInternals.getKeyboardShortcutsEnabled(),
61
+ userPassedPublicDir: config_1.ConfigInternals.getPublicDir(),
62
+ webpackOverride: config_1.ConfigInternals.getWebpackOverrideFn(),
35
63
  });
64
+ setLiveEventsListener(liveEventsServer);
65
+ log_1.Log.info(`Server running on http://localhost:${port}`);
36
66
  (0, better_opn_1.default)(`http://localhost:${port}`);
37
67
  await new Promise(noop);
38
68
  };
@@ -5,14 +5,24 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const jsx_runtime_1 = require("react/jsx-runtime");
7
7
  const client_1 = __importDefault(require("react-dom/client"));
8
+ // eslint-disable-next-line no-restricted-imports
8
9
  const remotion_1 = require("remotion");
9
10
  require("../styles/styles.css");
10
11
  const Editor_1 = require("./editor/components/Editor");
12
+ const EditorContexts_1 = require("./editor/components/EditorContexts");
13
+ const ServerDisconnected_1 = require("./editor/components/Notifications/ServerDisconnected");
14
+ const event_source_1 = require("./event-source");
11
15
  remotion_1.Internals.CSSUtils.injectCSS(remotion_1.Internals.CSSUtils.makeDefaultCSS(null, '#1f2428'));
12
- const content = ((0, jsx_runtime_1.jsx)(remotion_1.Internals.RemotionRoot, { children: (0, jsx_runtime_1.jsx)(Editor_1.Editor, {}, void 0) }, void 0));
16
+ const getServerDisconnectedDomElement = () => {
17
+ return document.getElementById('server-disconnected-overlay');
18
+ };
19
+ const content = ((0, jsx_runtime_1.jsx)(remotion_1.Internals.RemotionRoot, { children: (0, jsx_runtime_1.jsx)(EditorContexts_1.EditorContexts, { children: (0, jsx_runtime_1.jsx)(Editor_1.Editor, {}) }) }));
13
20
  if (client_1.default.createRoot) {
14
21
  client_1.default.createRoot(remotion_1.Internals.getPreviewDomElement()).render(content);
22
+ client_1.default.createRoot(getServerDisconnectedDomElement()).render((0, jsx_runtime_1.jsx)(ServerDisconnected_1.ServerDisconnected, {}));
15
23
  }
16
24
  else {
17
- client_1.default.render((0, jsx_runtime_1.jsx)(remotion_1.Internals.RemotionRoot, { children: (0, jsx_runtime_1.jsx)(Editor_1.Editor, {}, void 0) }, void 0), remotion_1.Internals.getPreviewDomElement());
25
+ client_1.default.render(content, remotion_1.Internals.getPreviewDomElement());
26
+ client_1.default.render((0, jsx_runtime_1.jsx)(ServerDisconnected_1.ServerDisconnected, {}), getServerDisconnectedDomElement());
18
27
  }
28
+ (0, event_source_1.openEventSource)();
@@ -1,30 +1,28 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.printError = void 0;
7
4
  const renderer_1 = require("@remotion/renderer");
8
- const chalk_1 = __importDefault(require("chalk"));
5
+ const chalk_1 = require("./chalk");
9
6
  const code_frame_1 = require("./code-frame");
10
7
  const log_1 = require("./log");
11
8
  const progress_bar_1 = require("./progress-bar");
12
9
  const printError = async (err) => {
13
10
  if (err instanceof renderer_1.RenderInternals.SymbolicateableError) {
14
11
  const output = (0, progress_bar_1.createOverwriteableCliOutput)(false);
15
- output.update(chalk_1.default.red('Symbolicating minified error message...\n' + err.message));
12
+ output.update(chalk_1.chalk.red('Symbolicating minified error message...\n' + err.message));
16
13
  try {
17
14
  const symbolicated = await renderer_1.RenderInternals.symbolicateError(err);
18
15
  if (symbolicated.frame === null) {
19
- output.update(chalk_1.default.red('An error occurred:\n'));
16
+ output.update(chalk_1.chalk.red('An error occurred:\n'));
20
17
  }
21
18
  else {
22
- output.update(chalk_1.default.red(`An error occurred while rendering frame ${err.frame}:\n`));
19
+ output.update(chalk_1.chalk.red(`An error occurred while rendering frame ${err.frame}:\n`));
23
20
  }
24
21
  (0, code_frame_1.printCodeFrameAndStack)(symbolicated);
25
22
  }
26
23
  catch (e) {
27
- output.update(chalk_1.default.red('(Error occurred symbolicating stack trace - printing minified stack trace)\n'));
24
+ output.update(chalk_1.chalk.red('(Error occurred symbolicating stack trace - printing minified stack trace)\n'));
25
+ log_1.Log.error();
28
26
  log_1.Log.error(err.stack || err);
29
27
  }
30
28
  return;
@@ -1,16 +1,13 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.printHelp = void 0;
7
- const chalk_1 = __importDefault(require("chalk"));
4
+ const chalk_1 = require("./chalk");
8
5
  const log_1 = require("./log");
9
6
  const versions_1 = require("./versions");
10
7
  const packagejson = require('../package.json');
11
8
  const printFlags = (flags) => {
12
9
  flags.forEach(([flag, description]) => {
13
- log_1.Log.info(chalk_1.default.blue(`${flag.padEnd(22, ' ')} ${description}`));
10
+ log_1.Log.info(chalk_1.chalk.blue(`${flag.padEnd(22, ' ')} ${description}`));
14
11
  });
15
12
  };
16
13
  const printHelp = () => {
@@ -18,12 +15,12 @@ const printHelp = () => {
18
15
  log_1.Log.info();
19
16
  log_1.Log.info('Available commands:');
20
17
  log_1.Log.info('');
21
- log_1.Log.info('remotion preview <index-file.ts>');
22
- log_1.Log.info(chalk_1.default.gray('Start the preview server.'));
18
+ log_1.Log.info('remotion preview <entry-point.ts>');
19
+ log_1.Log.info(chalk_1.chalk.gray('Start the preview server.'));
23
20
  printFlags([['--props', 'Pass input props as filename or as JSON']]);
24
21
  log_1.Log.info();
25
- log_1.Log.info('remotion render <index-file.ts> <comp-name> <output-file.mp4>');
26
- log_1.Log.info(chalk_1.default.gray('Render video, audio or an image sequence.'));
22
+ log_1.Log.info('remotion render <entry-point.ts> <comp-name> <output-file.mp4>');
23
+ log_1.Log.info(chalk_1.chalk.gray('Render video, audio or an image sequence.'));
27
24
  printFlags([
28
25
  ['--props', 'Pass input props as filename or as JSON'],
29
26
  ['--concurrency', 'How many frames to render in parallel'],
@@ -43,8 +40,8 @@ const printHelp = () => {
43
40
  ['--env-file', 'Specify a location for a dotenv file'],
44
41
  ]);
45
42
  log_1.Log.info();
46
- log_1.Log.info('remotion still <index-file.ts> <comp-name> <still.png>');
47
- log_1.Log.info(chalk_1.default.gray('Render a still frame and save it as an image.'));
43
+ log_1.Log.info('remotion still <entry-point.ts> <comp-name> <still.png>');
44
+ log_1.Log.info(chalk_1.chalk.gray('Render a still frame and save it as an image.'));
48
45
  printFlags([
49
46
  ['--frame', 'Which frame to render (default 0)'],
50
47
  ['--image-format', 'Format to render the frames in, "jpeg" or "png"'],
@@ -60,13 +57,13 @@ const printHelp = () => {
60
57
  ]);
61
58
  log_1.Log.info();
62
59
  log_1.Log.info('remotion compositions <index-file.ts>');
63
- log_1.Log.info(chalk_1.default.gray('Prints the available compositions.'));
60
+ log_1.Log.info(chalk_1.chalk.gray('Prints the available compositions.'));
64
61
  log_1.Log.info();
65
62
  log_1.Log.info('remotion ' + versions_1.VERSIONS_COMMAND);
66
- log_1.Log.info(chalk_1.default.gray('Prints and validates versions of all Remotion packages.'));
63
+ log_1.Log.info(chalk_1.chalk.gray('Prints and validates versions of all Remotion packages.'));
67
64
  log_1.Log.info();
68
65
  log_1.Log.info('remotion upgrade');
69
- log_1.Log.info(chalk_1.default.gray('Ensure Remotion is on the newest version.'));
66
+ log_1.Log.info(chalk_1.chalk.gray('Ensure Remotion is on the newest version.'));
70
67
  log_1.Log.info();
71
68
  log_1.Log.info('Visit https://www.remotion.dev/docs/cli for browsable CLI documentation.');
72
69
  };
@@ -1,5 +1,5 @@
1
- import { StitchingState } from '@remotion/renderer';
2
- import { RenderStep } from './step';
1
+ import type { Codec, StitchingState } from '@remotion/renderer';
2
+ import type { RenderStep } from './step';
3
3
  export declare const createProgressBar: (quiet: boolean) => {
4
4
  update: (str: string) => boolean;
5
5
  };
@@ -25,12 +25,15 @@ declare type StitchingProgressInput = {
25
25
  steps: RenderStep[];
26
26
  doneIn: number | null;
27
27
  stage: StitchingState;
28
+ codec: Codec;
28
29
  };
29
- export declare const makeStitchingProgress: ({ frames, totalFrames, steps, doneIn, stage, }: StitchingProgressInput) => string;
30
+ export declare const makeStitchingProgress: ({ frames, totalFrames, steps, doneIn, stage, codec, }: StitchingProgressInput) => string;
30
31
  export declare type DownloadProgress = {
31
32
  name: string;
32
33
  id: number;
33
- progress: number;
34
+ progress: number | null;
35
+ totalBytes: number | null;
36
+ downloaded: number;
34
37
  };
35
38
  export declare const makeRenderingAndStitchingProgress: ({ rendering, stitching, downloads, }: {
36
39
  rendering: RenderingProgressInput;