@remotion/studio 4.0.80

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 (874) hide show
  1. package/.eslintrc +30 -0
  2. package/README.md +3 -0
  3. package/dist/ansi/ansi-diff.d.ts +41 -0
  4. package/dist/ansi/ansi-diff.js +220 -0
  5. package/dist/ansi/ansi-split.d.ts +2 -0
  6. package/dist/ansi/ansi-split.js +44 -0
  7. package/dist/better-opn/index.d.ts +6 -0
  8. package/dist/better-opn/index.js +202 -0
  9. package/dist/codemods/stringify-with-path.d.ts +5 -0
  10. package/dist/codemods/stringify-with-path.js +49 -0
  11. package/dist/codemods/update-default-props.d.ts +7 -0
  12. package/dist/codemods/update-default-props.js +137 -0
  13. package/dist/command.d.ts +2 -0
  14. package/dist/command.js +157 -0
  15. package/dist/components/AssetSelector.d.ts +2 -0
  16. package/dist/components/AssetSelector.js +102 -0
  17. package/dist/components/AssetSelectorItem.d.ts +10 -0
  18. package/dist/components/AssetSelectorItem.js +194 -0
  19. package/dist/components/AudioWaveform.d.ts +11 -0
  20. package/dist/components/AudioWaveform.js +122 -0
  21. package/dist/components/AudioWaveformBar.d.ts +6 -0
  22. package/dist/components/AudioWaveformBar.js +24 -0
  23. package/dist/components/Canvas.d.ts +5 -0
  24. package/dist/components/Canvas.js +260 -0
  25. package/dist/components/CanvasOrLoading.d.ts +2 -0
  26. package/dist/components/CanvasOrLoading.js +95 -0
  27. package/dist/components/CheckboardToggle.d.ts +2 -0
  28. package/dist/components/CheckboardToggle.js +26 -0
  29. package/dist/components/Checkbox.d.ts +7 -0
  30. package/dist/components/Checkbox.js +42 -0
  31. package/dist/components/CheckerboardProvider.d.ts +4 -0
  32. package/dist/components/CheckerboardProvider.js +24 -0
  33. package/dist/components/CompositionSelector.d.ts +6 -0
  34. package/dist/components/CompositionSelector.js +102 -0
  35. package/dist/components/CompositionSelectorItem.d.ts +22 -0
  36. package/dist/components/CompositionSelectorItem.js +136 -0
  37. package/dist/components/ContextMenu.d.ts +6 -0
  38. package/dist/components/ContextMenu.js +91 -0
  39. package/dist/components/ControlButton.d.ts +5 -0
  40. package/dist/components/ControlButton.js +21 -0
  41. package/dist/components/CopyButton.d.ts +6 -0
  42. package/dist/components/CopyButton.js +43 -0
  43. package/dist/components/CurrentComposition.d.ts +3 -0
  44. package/dist/components/CurrentComposition.js +45 -0
  45. package/dist/components/CurrentCompositionSideEffects.d.ts +3 -0
  46. package/dist/components/CurrentCompositionSideEffects.js +67 -0
  47. package/dist/components/Editor.d.ts +2 -0
  48. package/dist/components/Editor.js +57 -0
  49. package/dist/components/EditorContent.d.ts +2 -0
  50. package/dist/components/EditorContent.js +24 -0
  51. package/dist/components/EditorContexts.d.ts +4 -0
  52. package/dist/components/EditorContexts.js +24 -0
  53. package/dist/components/EditorGuides/Guide.d.ts +13 -0
  54. package/dist/components/EditorGuides/Guide.js +91 -0
  55. package/dist/components/EditorGuides/index.d.ts +10 -0
  56. package/dist/components/EditorGuides/index.js +32 -0
  57. package/dist/components/EditorRuler/Ruler.d.ts +16 -0
  58. package/dist/components/EditorRuler/Ruler.js +105 -0
  59. package/dist/components/EditorRuler/index.d.ts +10 -0
  60. package/dist/components/EditorRuler/index.js +167 -0
  61. package/dist/components/EditorRuler/use-is-ruler-visible.d.ts +1 -0
  62. package/dist/components/EditorRuler/use-is-ruler-visible.js +12 -0
  63. package/dist/components/ExplorerPanel.d.ts +6 -0
  64. package/dist/components/ExplorerPanel.js +57 -0
  65. package/dist/components/FilePreview.d.ts +9 -0
  66. package/dist/components/FilePreview.js +40 -0
  67. package/dist/components/FpsCounter.d.ts +4 -0
  68. package/dist/components/FpsCounter.js +74 -0
  69. package/dist/components/FramePersistor.d.ts +2 -0
  70. package/dist/components/FramePersistor.js +17 -0
  71. package/dist/components/FullscreenToggle.d.ts +2 -0
  72. package/dist/components/FullscreenToggle.js +48 -0
  73. package/dist/components/GlobalKeybindings.d.ts +2 -0
  74. package/dist/components/GlobalKeybindings.js +77 -0
  75. package/dist/components/InitialCompositionLoader.d.ts +5 -0
  76. package/dist/components/InitialCompositionLoader.js +121 -0
  77. package/dist/components/InlineAction.d.ts +8 -0
  78. package/dist/components/InlineAction.js +34 -0
  79. package/dist/components/JSONViewer.d.ts +4 -0
  80. package/dist/components/JSONViewer.js +26 -0
  81. package/dist/components/KeyboardShortcutsExplainer.d.ts +2 -0
  82. package/dist/components/KeyboardShortcutsExplainer.js +57 -0
  83. package/dist/components/KnownBugs.d.ts +5 -0
  84. package/dist/components/KnownBugs.js +21 -0
  85. package/dist/components/LoopToggle.d.ts +5 -0
  86. package/dist/components/LoopToggle.js +19 -0
  87. package/dist/components/MediaVolumeProvider.d.ts +4 -0
  88. package/dist/components/MediaVolumeProvider.js +25 -0
  89. package/dist/components/Menu/MenuDivider.d.ts +2 -0
  90. package/dist/components/Menu/MenuDivider.js +15 -0
  91. package/dist/components/Menu/MenuItem.d.ts +22 -0
  92. package/dist/components/Menu/MenuItem.js +96 -0
  93. package/dist/components/Menu/MenuSubItem.d.ts +19 -0
  94. package/dist/components/Menu/MenuSubItem.js +105 -0
  95. package/dist/components/Menu/SubMenu.d.ts +10 -0
  96. package/dist/components/Menu/SubMenu.js +14 -0
  97. package/dist/components/Menu/is-menu-item.d.ts +5 -0
  98. package/dist/components/Menu/is-menu-item.js +14 -0
  99. package/dist/components/Menu/portals.d.ts +1 -0
  100. package/dist/components/Menu/portals.js +15 -0
  101. package/dist/components/Menu/styles.d.ts +11 -0
  102. package/dist/components/Menu/styles.js +38 -0
  103. package/dist/components/MenuBuildIndicator.d.ts +2 -0
  104. package/dist/components/MenuBuildIndicator.js +45 -0
  105. package/dist/components/MenuToolbar.d.ts +2 -0
  106. package/dist/components/MenuToolbar.js +82 -0
  107. package/dist/components/ModalContainer.d.ts +8 -0
  108. package/dist/components/ModalContainer.js +34 -0
  109. package/dist/components/ModalHeader.d.ts +4 -0
  110. package/dist/components/ModalHeader.js +32 -0
  111. package/dist/components/Modals.d.ts +2 -0
  112. package/dist/components/Modals.js +23 -0
  113. package/dist/components/ModalsProvider.d.ts +4 -0
  114. package/dist/components/ModalsProvider.js +17 -0
  115. package/dist/components/MuteToggle.d.ts +5 -0
  116. package/dist/components/MuteToggle.js +19 -0
  117. package/dist/components/NewComposition/CancelButton.d.ts +5 -0
  118. package/dist/components/NewComposition/CancelButton.js +20 -0
  119. package/dist/components/NewComposition/ComboBox.d.ts +29 -0
  120. package/dist/components/NewComposition/ComboBox.js +159 -0
  121. package/dist/components/NewComposition/CopyHint.d.ts +2 -0
  122. package/dist/components/NewComposition/CopyHint.js +30 -0
  123. package/dist/components/NewComposition/InputDragger.d.ts +12 -0
  124. package/dist/components/NewComposition/InputDragger.js +122 -0
  125. package/dist/components/NewComposition/MenuContent.d.ts +12 -0
  126. package/dist/components/NewComposition/MenuContent.js +245 -0
  127. package/dist/components/NewComposition/NewCompAspectRatio.d.ts +7 -0
  128. package/dist/components/NewComposition/NewCompAspectRatio.js +20 -0
  129. package/dist/components/NewComposition/NewCompCode.d.ts +10 -0
  130. package/dist/components/NewComposition/NewCompCode.js +67 -0
  131. package/dist/components/NewComposition/NewCompDuration.d.ts +6 -0
  132. package/dist/components/NewComposition/NewCompDuration.js +23 -0
  133. package/dist/components/NewComposition/NewComposition.d.ts +6 -0
  134. package/dist/components/NewComposition/NewComposition.js +204 -0
  135. package/dist/components/NewComposition/RemInput.d.ts +17 -0
  136. package/dist/components/NewComposition/RemInput.js +74 -0
  137. package/dist/components/NewComposition/RemInputTypeColor.d.ts +8 -0
  138. package/dist/components/NewComposition/RemInputTypeColor.js +53 -0
  139. package/dist/components/NewComposition/RemTextarea.d.ts +6 -0
  140. package/dist/components/NewComposition/RemTextarea.js +92 -0
  141. package/dist/components/NewComposition/ToggleAspectRatio.d.ts +5 -0
  142. package/dist/components/NewComposition/ToggleAspectRatio.js +26 -0
  143. package/dist/components/NewComposition/ValidationMessage.d.ts +8 -0
  144. package/dist/components/NewComposition/ValidationMessage.js +34 -0
  145. package/dist/components/NewComposition/new-comp-layout.d.ts +4 -0
  146. package/dist/components/NewComposition/new-comp-layout.js +20 -0
  147. package/dist/components/NewComposition/render-aspect-ratio.d.ts +1 -0
  148. package/dist/components/NewComposition/render-aspect-ratio.js +23 -0
  149. package/dist/components/NoRegisterRoot.d.ts +2 -0
  150. package/dist/components/NoRegisterRoot.js +41 -0
  151. package/dist/components/Notifications/ColorDot.d.ts +4 -0
  152. package/dist/components/Notifications/ColorDot.js +22 -0
  153. package/dist/components/Notifications/Notification.d.ts +8 -0
  154. package/dist/components/Notifications/Notification.js +31 -0
  155. package/dist/components/Notifications/NotificationCenter.d.ts +14 -0
  156. package/dist/components/Notifications/NotificationCenter.js +50 -0
  157. package/dist/components/Notifications/ServerDisconnected.d.ts +2 -0
  158. package/dist/components/Notifications/ServerDisconnected.js +53 -0
  159. package/dist/components/OpenEditorButton.d.ts +2 -0
  160. package/dist/components/OpenEditorButton.js +55 -0
  161. package/dist/components/OptionsPanel.d.ts +8 -0
  162. package/dist/components/OptionsPanel.js +112 -0
  163. package/dist/components/PlayPause.d.ts +5 -0
  164. package/dist/components/PlayPause.js +210 -0
  165. package/dist/components/PlaybackKeyboardShortcutsManager.d.ts +4 -0
  166. package/dist/components/PlaybackKeyboardShortcutsManager.js +80 -0
  167. package/dist/components/PlaybackRatePersistor.d.ts +2 -0
  168. package/dist/components/PlaybackRatePersistor.js +17 -0
  169. package/dist/components/PlaybackRateSelector.d.ts +5 -0
  170. package/dist/components/PlaybackRateSelector.js +59 -0
  171. package/dist/components/PlayerEmitterContext.d.ts +4 -0
  172. package/dist/components/PlayerEmitterContext.js +11 -0
  173. package/dist/components/Preview.d.ts +13 -0
  174. package/dist/components/Preview.js +158 -0
  175. package/dist/components/PreviewToolbar.d.ts +2 -0
  176. package/dist/components/PreviewToolbar.js +55 -0
  177. package/dist/components/QuickSwitcher/AlgoliaCredit.d.ts +2 -0
  178. package/dist/components/QuickSwitcher/AlgoliaCredit.js +11 -0
  179. package/dist/components/QuickSwitcher/NoResults.d.ts +6 -0
  180. package/dist/components/QuickSwitcher/NoResults.js +20 -0
  181. package/dist/components/QuickSwitcher/QuickSwitcher.d.ts +7 -0
  182. package/dist/components/QuickSwitcher/QuickSwitcher.js +16 -0
  183. package/dist/components/QuickSwitcher/QuickSwitcherContent.d.ts +6 -0
  184. package/dist/components/QuickSwitcher/QuickSwitcherContent.js +303 -0
  185. package/dist/components/QuickSwitcher/QuickSwitcherResult.d.ts +21 -0
  186. package/dist/components/QuickSwitcher/QuickSwitcherResult.js +112 -0
  187. package/dist/components/QuickSwitcher/algolia-search.d.ts +2 -0
  188. package/dist/components/QuickSwitcher/algolia-search.js +62 -0
  189. package/dist/components/QuickSwitcher/fuzzy-search.d.ts +2 -0
  190. package/dist/components/QuickSwitcher/fuzzy-search.js +26 -0
  191. package/dist/components/RenderButton.d.ts +2 -0
  192. package/dist/components/RenderButton.js +97 -0
  193. package/dist/components/RenderModal/CliCopyButton.d.ts +4 -0
  194. package/dist/components/RenderModal/CliCopyButton.js +60 -0
  195. package/dist/components/RenderModal/CrfSetting.d.ts +16 -0
  196. package/dist/components/RenderModal/CrfSetting.js +42 -0
  197. package/dist/components/RenderModal/DataEditor.d.ts +22 -0
  198. package/dist/components/RenderModal/DataEditor.js +301 -0
  199. package/dist/components/RenderModal/EnforceAudioTrackSetting.d.ts +6 -0
  200. package/dist/components/RenderModal/EnforceAudioTrackSetting.js +16 -0
  201. package/dist/components/RenderModal/EnvInput.d.ts +11 -0
  202. package/dist/components/RenderModal/EnvInput.js +74 -0
  203. package/dist/components/RenderModal/FrameRangeSetting.d.ts +8 -0
  204. package/dist/components/RenderModal/FrameRangeSetting.js +26 -0
  205. package/dist/components/RenderModal/GuiRenderStatus.d.ts +5 -0
  206. package/dist/components/RenderModal/GuiRenderStatus.js +78 -0
  207. package/dist/components/RenderModal/InfoBubble.d.ts +5 -0
  208. package/dist/components/RenderModal/InfoBubble.js +116 -0
  209. package/dist/components/RenderModal/InfoTooltip.d.ts +6 -0
  210. package/dist/components/RenderModal/InfoTooltip.js +41 -0
  211. package/dist/components/RenderModal/InlineEyeIcon.d.ts +5 -0
  212. package/dist/components/RenderModal/InlineEyeIcon.js +17 -0
  213. package/dist/components/RenderModal/InlineRemoveButton.d.ts +4 -0
  214. package/dist/components/RenderModal/InlineRemoveButton.js +17 -0
  215. package/dist/components/RenderModal/JpegQualitySetting.d.ts +5 -0
  216. package/dist/components/RenderModal/JpegQualitySetting.js +11 -0
  217. package/dist/components/RenderModal/MultiRangeSlider.d.ts +12 -0
  218. package/dist/components/RenderModal/MultiRangeSlider.js +47 -0
  219. package/dist/components/RenderModal/MutedSetting.d.ts +6 -0
  220. package/dist/components/RenderModal/MutedSetting.js +16 -0
  221. package/dist/components/RenderModal/NumberOfLoopsSetting.d.ts +5 -0
  222. package/dist/components/RenderModal/NumberOfLoopsSetting.js +26 -0
  223. package/dist/components/RenderModal/NumberSetting.d.ts +12 -0
  224. package/dist/components/RenderModal/NumberSetting.js +28 -0
  225. package/dist/components/RenderModal/OptionExplainer.d.ts +5 -0
  226. package/dist/components/RenderModal/OptionExplainer.js +56 -0
  227. package/dist/components/RenderModal/OptionExplainerBubble.d.ts +5 -0
  228. package/dist/components/RenderModal/OptionExplainerBubble.js +12 -0
  229. package/dist/components/RenderModal/RenderModal.d.ts +42 -0
  230. package/dist/components/RenderModal/RenderModal.js +827 -0
  231. package/dist/components/RenderModal/RenderModalAdvanced.d.ts +36 -0
  232. package/dist/components/RenderModal/RenderModalAdvanced.js +123 -0
  233. package/dist/components/RenderModal/RenderModalAudio.d.ts +17 -0
  234. package/dist/components/RenderModal/RenderModalAudio.js +46 -0
  235. package/dist/components/RenderModal/RenderModalBasic.d.ts +23 -0
  236. package/dist/components/RenderModal/RenderModalBasic.js +79 -0
  237. package/dist/components/RenderModal/RenderModalEnvironmentVariables.d.ts +5 -0
  238. package/dist/components/RenderModal/RenderModalEnvironmentVariables.js +55 -0
  239. package/dist/components/RenderModal/RenderModalGif.d.ts +9 -0
  240. package/dist/components/RenderModal/RenderModalGif.js +19 -0
  241. package/dist/components/RenderModal/RenderModalHr.d.ts +2 -0
  242. package/dist/components/RenderModal/RenderModalHr.js +18 -0
  243. package/dist/components/RenderModal/RenderModalInput.d.ts +12 -0
  244. package/dist/components/RenderModal/RenderModalInput.js +13 -0
  245. package/dist/components/RenderModal/RenderModalJSONPropsEditor.d.ts +12 -0
  246. package/dist/components/RenderModal/RenderModalJSONPropsEditor.js +143 -0
  247. package/dist/components/RenderModal/RenderModalPicture.d.ts +35 -0
  248. package/dist/components/RenderModal/RenderModalPicture.js +71 -0
  249. package/dist/components/RenderModal/RenderStatusModal.d.ts +4 -0
  250. package/dist/components/RenderModal/RenderStatusModal.js +70 -0
  251. package/dist/components/RenderModal/ScaleSetting.d.ts +5 -0
  252. package/dist/components/RenderModal/ScaleSetting.js +16 -0
  253. package/dist/components/RenderModal/SchemaEditor/Fieldset.d.ts +6 -0
  254. package/dist/components/RenderModal/SchemaEditor/Fieldset.js +26 -0
  255. package/dist/components/RenderModal/SchemaEditor/SchemaEditor.d.ts +13 -0
  256. package/dist/components/RenderModal/SchemaEditor/SchemaEditor.js +69 -0
  257. package/dist/components/RenderModal/SchemaEditor/SchemaErrorMessages.d.ts +15 -0
  258. package/dist/components/RenderModal/SchemaEditor/SchemaErrorMessages.js +60 -0
  259. package/dist/components/RenderModal/SchemaEditor/SchemaLabel.d.ts +15 -0
  260. package/dist/components/RenderModal/SchemaEditor/SchemaLabel.js +47 -0
  261. package/dist/components/RenderModal/SchemaEditor/SchemaResetButton.d.ts +4 -0
  262. package/dist/components/RenderModal/SchemaEditor/SchemaResetButton.js +17 -0
  263. package/dist/components/RenderModal/SchemaEditor/SchemaSaveButton.d.ts +5 -0
  264. package/dist/components/RenderModal/SchemaEditor/SchemaSaveButton.js +18 -0
  265. package/dist/components/RenderModal/SchemaEditor/SchemaSeparationLine.d.ts +10 -0
  266. package/dist/components/RenderModal/SchemaEditor/SchemaSeparationLine.js +79 -0
  267. package/dist/components/RenderModal/SchemaEditor/SchemaVerticalGuide.d.ts +5 -0
  268. package/dist/components/RenderModal/SchemaEditor/SchemaVerticalGuide.js +31 -0
  269. package/dist/components/RenderModal/SchemaEditor/ZodArrayEditor.d.ts +17 -0
  270. package/dist/components/RenderModal/SchemaEditor/ZodArrayEditor.js +75 -0
  271. package/dist/components/RenderModal/SchemaEditor/ZodArrayItemEditor.d.ts +16 -0
  272. package/dist/components/RenderModal/SchemaEditor/ZodArrayItemEditor.js +33 -0
  273. package/dist/components/RenderModal/SchemaEditor/ZodBooleanEditor.d.ts +17 -0
  274. package/dist/components/RenderModal/SchemaEditor/ZodBooleanEditor.js +28 -0
  275. package/dist/components/RenderModal/SchemaEditor/ZodColorEditor.d.ts +17 -0
  276. package/dist/components/RenderModal/SchemaEditor/ZodColorEditor.js +71 -0
  277. package/dist/components/RenderModal/SchemaEditor/ZodDateEditor.d.ts +17 -0
  278. package/dist/components/RenderModal/SchemaEditor/ZodDateEditor.js +62 -0
  279. package/dist/components/RenderModal/SchemaEditor/ZodDefaultEditor.d.ts +17 -0
  280. package/dist/components/RenderModal/SchemaEditor/ZodDefaultEditor.js +10 -0
  281. package/dist/components/RenderModal/SchemaEditor/ZodDiscriminatedUnionEditor.d.ts +17 -0
  282. package/dist/components/RenderModal/SchemaEditor/ZodDiscriminatedUnionEditor.js +83 -0
  283. package/dist/components/RenderModal/SchemaEditor/ZodEffectEditor.d.ts +16 -0
  284. package/dist/components/RenderModal/SchemaEditor/ZodEffectEditor.js +31 -0
  285. package/dist/components/RenderModal/SchemaEditor/ZodEnumEditor.d.ts +15 -0
  286. package/dist/components/RenderModal/SchemaEditor/ZodEnumEditor.js +55 -0
  287. package/dist/components/RenderModal/SchemaEditor/ZodErrorMessages.d.ts +6 -0
  288. package/dist/components/RenderModal/SchemaEditor/ZodErrorMessages.js +48 -0
  289. package/dist/components/RenderModal/SchemaEditor/ZodFieldValidation.d.ts +7 -0
  290. package/dist/components/RenderModal/SchemaEditor/ZodFieldValidation.js +27 -0
  291. package/dist/components/RenderModal/SchemaEditor/ZodNonEditableValue.d.ts +9 -0
  292. package/dist/components/RenderModal/SchemaEditor/ZodNonEditableValue.js +27 -0
  293. package/dist/components/RenderModal/SchemaEditor/ZodNullableEditor.d.ts +17 -0
  294. package/dist/components/RenderModal/SchemaEditor/ZodNullableEditor.js +10 -0
  295. package/dist/components/RenderModal/SchemaEditor/ZodNumberEditor.d.ts +17 -0
  296. package/dist/components/RenderModal/SchemaEditor/ZodNumberEditor.js +69 -0
  297. package/dist/components/RenderModal/SchemaEditor/ZodObjectEditor.d.ts +22 -0
  298. package/dist/components/RenderModal/SchemaEditor/ZodObjectEditor.js +96 -0
  299. package/dist/components/RenderModal/SchemaEditor/ZodOptionalEditor.d.ts +17 -0
  300. package/dist/components/RenderModal/SchemaEditor/ZodOptionalEditor.js +10 -0
  301. package/dist/components/RenderModal/SchemaEditor/ZodOrNullishEditor.d.ts +19 -0
  302. package/dist/components/RenderModal/SchemaEditor/ZodOrNullishEditor.js +50 -0
  303. package/dist/components/RenderModal/SchemaEditor/ZodStaticFileEditor.d.ts +17 -0
  304. package/dist/components/RenderModal/SchemaEditor/ZodStaticFileEditor.js +56 -0
  305. package/dist/components/RenderModal/SchemaEditor/ZodStringEditor.d.ts +17 -0
  306. package/dist/components/RenderModal/SchemaEditor/ZodStringEditor.js +34 -0
  307. package/dist/components/RenderModal/SchemaEditor/ZodSwitch.d.ts +17 -0
  308. package/dist/components/RenderModal/SchemaEditor/ZodSwitch.js +101 -0
  309. package/dist/components/RenderModal/SchemaEditor/ZodTextareaEditor.d.ts +17 -0
  310. package/dist/components/RenderModal/SchemaEditor/ZodTextareaEditor.js +42 -0
  311. package/dist/components/RenderModal/SchemaEditor/ZodUnionEditor.d.ts +17 -0
  312. package/dist/components/RenderModal/SchemaEditor/ZodUnionEditor.js +49 -0
  313. package/dist/components/RenderModal/SchemaEditor/create-zod-values.d.ts +2 -0
  314. package/dist/components/RenderModal/SchemaEditor/create-zod-values.js +163 -0
  315. package/dist/components/RenderModal/SchemaEditor/deep-equal.d.ts +1 -0
  316. package/dist/components/RenderModal/SchemaEditor/deep-equal.js +30 -0
  317. package/dist/components/RenderModal/SchemaEditor/extract-enum-json-paths.d.ts +3 -0
  318. package/dist/components/RenderModal/SchemaEditor/extract-enum-json-paths.js +126 -0
  319. package/dist/components/RenderModal/SchemaEditor/get-schema-label.d.ts +2 -0
  320. package/dist/components/RenderModal/SchemaEditor/get-schema-label.js +15 -0
  321. package/dist/components/RenderModal/SchemaEditor/local-state.d.ts +21 -0
  322. package/dist/components/RenderModal/SchemaEditor/local-state.js +85 -0
  323. package/dist/components/RenderModal/SchemaEditor/zod-types.d.ts +1 -0
  324. package/dist/components/RenderModal/SchemaEditor/zod-types.js +2 -0
  325. package/dist/components/RenderModal/WarningIndicatorButton.d.ts +6 -0
  326. package/dist/components/RenderModal/WarningIndicatorButton.js +49 -0
  327. package/dist/components/RenderModal/get-default-codecs.d.ts +14 -0
  328. package/dist/components/RenderModal/get-default-codecs.js +29 -0
  329. package/dist/components/RenderModal/get-render-modal-warnings.d.ts +19 -0
  330. package/dist/components/RenderModal/get-render-modal-warnings.js +60 -0
  331. package/dist/components/RenderModal/human-readable-audio-codecs.d.ts +2 -0
  332. package/dist/components/RenderModal/human-readable-audio-codecs.js +18 -0
  333. package/dist/components/RenderModal/human-readable-codec.d.ts +2 -0
  334. package/dist/components/RenderModal/human-readable-codec.js +36 -0
  335. package/dist/components/RenderModal/layout.d.ts +7 -0
  336. package/dist/components/RenderModal/layout.js +45 -0
  337. package/dist/components/RenderModal/out-name-checker.d.ts +14 -0
  338. package/dist/components/RenderModal/out-name-checker.js +75 -0
  339. package/dist/components/RenderPreview.d.ts +6 -0
  340. package/dist/components/RenderPreview.js +31 -0
  341. package/dist/components/RenderQueue/CircularProgress.d.ts +5 -0
  342. package/dist/components/RenderQueue/CircularProgress.js +18 -0
  343. package/dist/components/RenderQueue/RenderQueueCopyToClipboard.d.ts +6 -0
  344. package/dist/components/RenderQueue/RenderQueueCopyToClipboard.js +52 -0
  345. package/dist/components/RenderQueue/RenderQueueError.d.ts +5 -0
  346. package/dist/components/RenderQueue/RenderQueueError.js +26 -0
  347. package/dist/components/RenderQueue/RenderQueueItem.d.ts +6 -0
  348. package/dist/components/RenderQueue/RenderQueueItem.js +94 -0
  349. package/dist/components/RenderQueue/RenderQueueItemCancelButton.d.ts +5 -0
  350. package/dist/components/RenderQueue/RenderQueueItemCancelButton.js +27 -0
  351. package/dist/components/RenderQueue/RenderQueueItemStatus.d.ts +5 -0
  352. package/dist/components/RenderQueue/RenderQueueItemStatus.js +74 -0
  353. package/dist/components/RenderQueue/RenderQueueOpenInFolder.d.ts +5 -0
  354. package/dist/components/RenderQueue/RenderQueueOpenInFolder.js +28 -0
  355. package/dist/components/RenderQueue/RenderQueueOutputName.d.ts +5 -0
  356. package/dist/components/RenderQueue/RenderQueueOutputName.js +18 -0
  357. package/dist/components/RenderQueue/RenderQueueProgressMessage.d.ts +5 -0
  358. package/dist/components/RenderQueue/RenderQueueProgressMessage.js +26 -0
  359. package/dist/components/RenderQueue/RenderQueueRemoveItem.d.ts +5 -0
  360. package/dist/components/RenderQueue/RenderQueueRemoveItem.js +37 -0
  361. package/dist/components/RenderQueue/RenderQueueRepeat.d.ts +5 -0
  362. package/dist/components/RenderQueue/RenderQueueRepeat.js +27 -0
  363. package/dist/components/RenderQueue/SuccessIcon.d.ts +2 -0
  364. package/dist/components/RenderQueue/SuccessIcon.js +14 -0
  365. package/dist/components/RenderQueue/actions.d.ts +89 -0
  366. package/dist/components/RenderQueue/actions.js +178 -0
  367. package/dist/components/RenderQueue/context.d.ts +18 -0
  368. package/dist/components/RenderQueue/context.js +49 -0
  369. package/dist/components/RenderQueue/index.d.ts +2 -0
  370. package/dist/components/RenderQueue/index.js +103 -0
  371. package/dist/components/RenderQueue/item-style.d.ts +2 -0
  372. package/dist/components/RenderQueue/item-style.js +21 -0
  373. package/dist/components/RendersTab.d.ts +6 -0
  374. package/dist/components/RendersTab.js +51 -0
  375. package/dist/components/ResetZoomButton.d.ts +4 -0
  376. package/dist/components/ResetZoomButton.js +9 -0
  377. package/dist/components/SegmentedControl.d.ts +11 -0
  378. package/dist/components/SegmentedControl.js +65 -0
  379. package/dist/components/SetTimelineInOutProvider.d.ts +4 -0
  380. package/dist/components/SetTimelineInOutProvider.js +20 -0
  381. package/dist/components/ShowGuidesProvider.d.ts +4 -0
  382. package/dist/components/ShowGuidesProvider.js +43 -0
  383. package/dist/components/ShowRulersProvider.d.ts +4 -0
  384. package/dist/components/ShowRulersProvider.js +24 -0
  385. package/dist/components/SidebarCollapserControls.d.ts +2 -0
  386. package/dist/components/SidebarCollapserControls.js +138 -0
  387. package/dist/components/SidebarRenderButton.d.ts +6 -0
  388. package/dist/components/SidebarRenderButton.js +77 -0
  389. package/dist/components/SizeSelector.d.ts +5 -0
  390. package/dist/components/SizeSelector.js +120 -0
  391. package/dist/components/Spinner.d.ts +5 -0
  392. package/dist/components/Spinner.js +41 -0
  393. package/dist/components/Splitter/SplitterContainer.d.ts +10 -0
  394. package/dist/components/Splitter/SplitterContainer.js +68 -0
  395. package/dist/components/Splitter/SplitterContext.d.ts +22 -0
  396. package/dist/components/Splitter/SplitterContext.js +19 -0
  397. package/dist/components/Splitter/SplitterElement.d.ts +6 -0
  398. package/dist/components/Splitter/SplitterElement.js +32 -0
  399. package/dist/components/Splitter/SplitterHandle.d.ts +6 -0
  400. package/dist/components/Splitter/SplitterHandle.js +128 -0
  401. package/dist/components/StaticFilePreview.d.ts +6 -0
  402. package/dist/components/StaticFilePreview.js +39 -0
  403. package/dist/components/Tabs/index.d.ts +11 -0
  404. package/dist/components/Tabs/index.js +56 -0
  405. package/dist/components/Tabs/vertical.d.ts +7 -0
  406. package/dist/components/Tabs/vertical.js +43 -0
  407. package/dist/components/TextViewer.d.ts +4 -0
  408. package/dist/components/TextViewer.js +26 -0
  409. package/dist/components/TimeValue.d.ts +2 -0
  410. package/dist/components/TimeValue.js +46 -0
  411. package/dist/components/Timeline/LoopedIndicator.d.ts +2 -0
  412. package/dist/components/Timeline/LoopedIndicator.js +44 -0
  413. package/dist/components/Timeline/LoopedTimelineIndicators.d.ts +4 -0
  414. package/dist/components/Timeline/LoopedTimelineIndicators.js +22 -0
  415. package/dist/components/Timeline/MaxTimelineTracks.d.ts +5 -0
  416. package/dist/components/Timeline/MaxTimelineTracks.js +24 -0
  417. package/dist/components/Timeline/Timeline.d.ts +2 -0
  418. package/dist/components/Timeline/Timeline.js +73 -0
  419. package/dist/components/Timeline/TimelineCollapseToggle.d.ts +5 -0
  420. package/dist/components/Timeline/TimelineCollapseToggle.js +18 -0
  421. package/dist/components/Timeline/TimelineDragHandler.d.ts +2 -0
  422. package/dist/components/Timeline/TimelineDragHandler.js +454 -0
  423. package/dist/components/Timeline/TimelineEyeToggler.d.ts +0 -0
  424. package/dist/components/Timeline/TimelineEyeToggler.js +1 -0
  425. package/dist/components/Timeline/TimelineInOutPointer.d.ts +4 -0
  426. package/dist/components/Timeline/TimelineInOutPointer.js +37 -0
  427. package/dist/components/Timeline/TimelineInOutPointerHandle.d.ts +10 -0
  428. package/dist/components/Timeline/TimelineInOutPointerHandle.js +43 -0
  429. package/dist/components/Timeline/TimelineLayerEye.d.ts +6 -0
  430. package/dist/components/Timeline/TimelineLayerEye.js +55 -0
  431. package/dist/components/Timeline/TimelineList.d.ts +5 -0
  432. package/dist/components/Timeline/TimelineList.js +25 -0
  433. package/dist/components/Timeline/TimelineListItem.d.ts +7 -0
  434. package/dist/components/Timeline/TimelineListItem.js +50 -0
  435. package/dist/components/Timeline/TimelinePlayCursorSyncer.d.ts +2 -0
  436. package/dist/components/Timeline/TimelinePlayCursorSyncer.js +86 -0
  437. package/dist/components/Timeline/TimelineScrollable.d.ts +4 -0
  438. package/dist/components/Timeline/TimelineScrollable.js +26 -0
  439. package/dist/components/Timeline/TimelineSequence.d.ts +5 -0
  440. package/dist/components/Timeline/TimelineSequence.js +77 -0
  441. package/dist/components/Timeline/TimelineSequenceFrame.d.ts +4 -0
  442. package/dist/components/Timeline/TimelineSequenceFrame.js +14 -0
  443. package/dist/components/Timeline/TimelineSlider.d.ts +5 -0
  444. package/dist/components/Timeline/TimelineSlider.js +79 -0
  445. package/dist/components/Timeline/TimelineSliderHandle.d.ts +2 -0
  446. package/dist/components/Timeline/TimelineSliderHandle.js +14 -0
  447. package/dist/components/Timeline/TimelineStack/get-stack.d.ts +1 -0
  448. package/dist/components/Timeline/TimelineStack/get-stack.js +51 -0
  449. package/dist/components/Timeline/TimelineStack/index.d.ts +6 -0
  450. package/dist/components/Timeline/TimelineStack/index.js +145 -0
  451. package/dist/components/Timeline/TimelineStack/source-attribution.d.ts +2 -0
  452. package/dist/components/Timeline/TimelineStack/source-attribution.js +16 -0
  453. package/dist/components/Timeline/TimelineTimeIndicators.d.ts +5 -0
  454. package/dist/components/Timeline/TimelineTimeIndicators.js +153 -0
  455. package/dist/components/Timeline/TimelineTracks.d.ts +6 -0
  456. package/dist/components/Timeline/TimelineTracks.js +39 -0
  457. package/dist/components/Timeline/TimelineVideoInfo.d.ts +4 -0
  458. package/dist/components/Timeline/TimelineVideoInfo.js +52 -0
  459. package/dist/components/Timeline/TimelineWidthProvider.d.ts +7 -0
  460. package/dist/components/Timeline/TimelineWidthProvider.js +17 -0
  461. package/dist/components/Timeline/TimelineZoomControls.d.ts +2 -0
  462. package/dist/components/Timeline/TimelineZoomControls.js +59 -0
  463. package/dist/components/Timeline/imperative-state.d.ts +8 -0
  464. package/dist/components/Timeline/imperative-state.js +39 -0
  465. package/dist/components/Timeline/is-collapsed.d.ts +2 -0
  466. package/dist/components/Timeline/is-collapsed.js +16 -0
  467. package/dist/components/Timeline/timeline-refs.d.ts +4 -0
  468. package/dist/components/Timeline/timeline-refs.js +10 -0
  469. package/dist/components/Timeline/timeline-scroll-logic.d.ts +43 -0
  470. package/dist/components/Timeline/timeline-scroll-logic.js +217 -0
  471. package/dist/components/Timeline/timeline-state-reducer.d.ts +19 -0
  472. package/dist/components/Timeline/timeline-state-reducer.js +47 -0
  473. package/dist/components/TimelineInOutToggle.d.ts +9 -0
  474. package/dist/components/TimelineInOutToggle.js +240 -0
  475. package/dist/components/TopPanel.d.ts +3 -0
  476. package/dist/components/TopPanel.js +72 -0
  477. package/dist/components/UpdateCheck.d.ts +16 -0
  478. package/dist/components/UpdateCheck.js +95 -0
  479. package/dist/components/UpdateModal/OpenIssueButton.d.ts +4 -0
  480. package/dist/components/UpdateModal/OpenIssueButton.js +37 -0
  481. package/dist/components/UpdateModal/UpdateModal.d.ts +6 -0
  482. package/dist/components/UpdateModal/UpdateModal.js +63 -0
  483. package/dist/components/ZoomGesturesProvider.d.ts +4 -0
  484. package/dist/components/ZoomGesturesProvider.js +24 -0
  485. package/dist/components/ZoomPersistor.d.ts +5 -0
  486. package/dist/components/ZoomPersistor.js +60 -0
  487. package/dist/components/get-zod-if-possible.d.ts +10 -0
  488. package/dist/components/get-zod-if-possible.js +79 -0
  489. package/dist/components/layout.d.ts +26 -0
  490. package/dist/components/layout.js +48 -0
  491. package/dist/error-overlay/entry-basic.d.ts +1 -0
  492. package/dist/error-overlay/entry-basic.js +21 -0
  493. package/dist/error-overlay/react-overlay/effects/format-warning.d.ts +11 -0
  494. package/dist/error-overlay/react-overlay/effects/format-warning.js +41 -0
  495. package/dist/error-overlay/react-overlay/effects/map-error-to-react-stack.d.ts +7 -0
  496. package/dist/error-overlay/react-overlay/effects/map-error-to-react-stack.js +46 -0
  497. package/dist/error-overlay/react-overlay/effects/proxy-console.d.ts +24 -0
  498. package/dist/error-overlay/react-overlay/effects/proxy-console.js +64 -0
  499. package/dist/error-overlay/react-overlay/effects/resolve-file-source.d.ts +3 -0
  500. package/dist/error-overlay/react-overlay/effects/resolve-file-source.js +31 -0
  501. package/dist/error-overlay/react-overlay/effects/stack-trace-limit.d.ts +3 -0
  502. package/dist/error-overlay/react-overlay/effects/stack-trace-limit.js +43 -0
  503. package/dist/error-overlay/react-overlay/effects/unhandled-error.d.ts +4 -0
  504. package/dist/error-overlay/react-overlay/effects/unhandled-error.js +45 -0
  505. package/dist/error-overlay/react-overlay/effects/unhandled-rejection.d.ts +4 -0
  506. package/dist/error-overlay/react-overlay/effects/unhandled-rejection.js +41 -0
  507. package/dist/error-overlay/react-overlay/index.d.ts +2 -0
  508. package/dist/error-overlay/react-overlay/index.js +21 -0
  509. package/dist/error-overlay/react-overlay/listen-to-runtime-errors.d.ts +8 -0
  510. package/dist/error-overlay/react-overlay/listen-to-runtime-errors.js +88 -0
  511. package/dist/error-overlay/react-overlay/utils/get-file-source.d.ts +1 -0
  512. package/dist/error-overlay/react-overlay/utils/get-file-source.js +22 -0
  513. package/dist/error-overlay/react-overlay/utils/get-lines-around.d.ts +14 -0
  514. package/dist/error-overlay/react-overlay/utils/get-lines-around.js +24 -0
  515. package/dist/error-overlay/react-overlay/utils/get-source-map.d.ts +8 -0
  516. package/dist/error-overlay/react-overlay/utils/get-source-map.js +51 -0
  517. package/dist/error-overlay/react-overlay/utils/get-stack-frames.d.ts +2 -0
  518. package/dist/error-overlay/react-overlay/utils/get-stack-frames.js +25 -0
  519. package/dist/error-overlay/react-overlay/utils/open-in-editor.d.ts +16 -0
  520. package/dist/error-overlay/react-overlay/utils/open-in-editor.js +503 -0
  521. package/dist/error-overlay/react-overlay/utils/parser.d.ts +3 -0
  522. package/dist/error-overlay/react-overlay/utils/parser.js +118 -0
  523. package/dist/error-overlay/react-overlay/utils/source-map-endpoint.d.ts +1 -0
  524. package/dist/error-overlay/react-overlay/utils/source-map-endpoint.js +4 -0
  525. package/dist/error-overlay/react-overlay/utils/stack-frame.d.ts +40 -0
  526. package/dist/error-overlay/react-overlay/utils/stack-frame.js +31 -0
  527. package/dist/error-overlay/react-overlay/utils/unmapper.d.ts +3 -0
  528. package/dist/error-overlay/react-overlay/utils/unmapper.js +65 -0
  529. package/dist/error-overlay/remotion-overlay/AskOnDiscord.d.ts +4 -0
  530. package/dist/error-overlay/remotion-overlay/AskOnDiscord.js +35 -0
  531. package/dist/error-overlay/remotion-overlay/Button.d.ts +11 -0
  532. package/dist/error-overlay/remotion-overlay/Button.js +35 -0
  533. package/dist/error-overlay/remotion-overlay/CalculateMetadataErrorExplainer.d.ts +2 -0
  534. package/dist/error-overlay/remotion-overlay/CalculateMetadataErrorExplainer.js +18 -0
  535. package/dist/error-overlay/remotion-overlay/CodeFrame.d.ts +6 -0
  536. package/dist/error-overlay/remotion-overlay/CodeFrame.js +48 -0
  537. package/dist/error-overlay/remotion-overlay/DismissButton.d.ts +2 -0
  538. package/dist/error-overlay/remotion-overlay/DismissButton.js +23 -0
  539. package/dist/error-overlay/remotion-overlay/ErrorDisplay.d.ts +10 -0
  540. package/dist/error-overlay/remotion-overlay/ErrorDisplay.js +52 -0
  541. package/dist/error-overlay/remotion-overlay/ErrorLoader.d.ts +9 -0
  542. package/dist/error-overlay/remotion-overlay/ErrorLoader.js +61 -0
  543. package/dist/error-overlay/remotion-overlay/ErrorMessage.d.ts +4 -0
  544. package/dist/error-overlay/remotion-overlay/ErrorMessage.js +69 -0
  545. package/dist/error-overlay/remotion-overlay/ErrorTitle.d.ts +7 -0
  546. package/dist/error-overlay/remotion-overlay/ErrorTitle.js +38 -0
  547. package/dist/error-overlay/remotion-overlay/HelpLink.d.ts +6 -0
  548. package/dist/error-overlay/remotion-overlay/HelpLink.js +39 -0
  549. package/dist/error-overlay/remotion-overlay/OpenInEditor.d.ts +6 -0
  550. package/dist/error-overlay/remotion-overlay/OpenInEditor.js +105 -0
  551. package/dist/error-overlay/remotion-overlay/Overlay.d.ts +14 -0
  552. package/dist/error-overlay/remotion-overlay/Overlay.js +50 -0
  553. package/dist/error-overlay/remotion-overlay/Retry.d.ts +4 -0
  554. package/dist/error-overlay/remotion-overlay/Retry.js +9 -0
  555. package/dist/error-overlay/remotion-overlay/SearchGitHubIssues.d.ts +5 -0
  556. package/dist/error-overlay/remotion-overlay/SearchGitHubIssues.js +34 -0
  557. package/dist/error-overlay/remotion-overlay/ShortcutHint.d.ts +6 -0
  558. package/dist/error-overlay/remotion-overlay/ShortcutHint.js +31 -0
  559. package/dist/error-overlay/remotion-overlay/StackFrame.d.ts +8 -0
  560. package/dist/error-overlay/remotion-overlay/StackFrame.js +50 -0
  561. package/dist/error-overlay/remotion-overlay/Symbolicating.d.ts +2 -0
  562. package/dist/error-overlay/remotion-overlay/Symbolicating.js +8 -0
  563. package/dist/error-overlay/remotion-overlay/carets.d.ts +5 -0
  564. package/dist/error-overlay/remotion-overlay/carets.js +12 -0
  565. package/dist/error-overlay/remotion-overlay/format-location.d.ts +1 -0
  566. package/dist/error-overlay/remotion-overlay/format-location.js +10 -0
  567. package/dist/error-overlay/remotion-overlay/get-help-link.d.ts +5 -0
  568. package/dist/error-overlay/remotion-overlay/get-help-link.js +49 -0
  569. package/dist/error-overlay/remotion-overlay/index.d.ts +1 -0
  570. package/dist/error-overlay/remotion-overlay/index.js +18 -0
  571. package/dist/event-source-events.d.ts +31 -0
  572. package/dist/event-source-events.js +2 -0
  573. package/dist/file-watcher.d.ts +9 -0
  574. package/dist/file-watcher.js +35 -0
  575. package/dist/get-default-out-name.d.ts +5 -0
  576. package/dist/get-default-out-name.js +10 -0
  577. package/dist/get-latest-remotion-version.d.ts +1 -0
  578. package/dist/get-latest-remotion-version.js +31 -0
  579. package/dist/get-network-address.d.ts +1 -0
  580. package/dist/get-network-address.js +16 -0
  581. package/dist/helpers/calculate-timeline.d.ts +6 -0
  582. package/dist/helpers/calculate-timeline.js +72 -0
  583. package/dist/helpers/checkerboard-background.d.ts +4 -0
  584. package/dist/helpers/checkerboard-background.js +30 -0
  585. package/dist/helpers/client-id.d.ts +17 -0
  586. package/dist/helpers/client-id.js +46 -0
  587. package/dist/helpers/color-math.d.ts +2 -0
  588. package/dist/helpers/color-math.js +13 -0
  589. package/dist/helpers/colors.d.ts +26 -0
  590. package/dist/helpers/colors.js +39 -0
  591. package/dist/helpers/convert-env-variables.d.ts +2 -0
  592. package/dist/helpers/convert-env-variables.js +20 -0
  593. package/dist/helpers/copy-text.d.ts +1 -0
  594. package/dist/helpers/copy-text.js +23 -0
  595. package/dist/helpers/create-folder-tree.d.ts +17 -0
  596. package/dist/helpers/create-folder-tree.js +134 -0
  597. package/dist/helpers/document-title.d.ts +4 -0
  598. package/dist/helpers/document-title.js +67 -0
  599. package/dist/helpers/editor-ruler.d.ts +36 -0
  600. package/dist/helpers/editor-ruler.js +181 -0
  601. package/dist/helpers/event-source.d.ts +3 -0
  602. package/dist/helpers/event-source.js +67 -0
  603. package/dist/helpers/format-bytes.d.ts +6 -0
  604. package/dist/helpers/format-bytes.js +103 -0
  605. package/dist/helpers/get-asset-metadata.d.ts +11 -0
  606. package/dist/helpers/get-asset-metadata.js +64 -0
  607. package/dist/helpers/get-effective-translation.d.ts +26 -0
  608. package/dist/helpers/get-effective-translation.js +45 -0
  609. package/dist/helpers/get-left-of-timeline-slider.d.ts +1 -0
  610. package/dist/helpers/get-left-of-timeline-slider.js +9 -0
  611. package/dist/helpers/get-location-of-sequence.d.ts +1 -0
  612. package/dist/helpers/get-location-of-sequence.js +21 -0
  613. package/dist/helpers/get-sequence-visible-range.d.ts +4 -0
  614. package/dist/helpers/get-sequence-visible-range.js +39 -0
  615. package/dist/helpers/get-timeline-nestedness.d.ts +2 -0
  616. package/dist/helpers/get-timeline-nestedness.js +14 -0
  617. package/dist/helpers/get-timeline-sequence-hash.d.ts +6 -0
  618. package/dist/helpers/get-timeline-sequence-hash.js +33 -0
  619. package/dist/helpers/get-timeline-sequence-layout.d.ts +13 -0
  620. package/dist/helpers/get-timeline-sequence-layout.js +45 -0
  621. package/dist/helpers/get-timeline-sequence-sort-key.d.ts +17 -0
  622. package/dist/helpers/get-timeline-sequence-sort-key.js +24 -0
  623. package/dist/helpers/is-composition-still.d.ts +3 -0
  624. package/dist/helpers/is-composition-still.js +10 -0
  625. package/dist/helpers/is-current-selected-still.d.ts +6 -0
  626. package/dist/helpers/is-current-selected-still.js +26 -0
  627. package/dist/helpers/noop.d.ts +1 -0
  628. package/dist/helpers/noop.js +5 -0
  629. package/dist/helpers/open-directory-in-finder.d.ts +1 -0
  630. package/dist/helpers/open-directory-in-finder.js +49 -0
  631. package/dist/helpers/open-in-editor.d.ts +2 -0
  632. package/dist/helpers/open-in-editor.js +22 -0
  633. package/dist/helpers/persist-open-folders.d.ts +6 -0
  634. package/dist/helpers/persist-open-folders.js +22 -0
  635. package/dist/helpers/pick-color.d.ts +1 -0
  636. package/dist/helpers/pick-color.js +41 -0
  637. package/dist/helpers/presets-labels.d.ts +2 -0
  638. package/dist/helpers/presets-labels.js +37 -0
  639. package/dist/helpers/prores-labels.d.ts +2 -0
  640. package/dist/helpers/prores-labels.js +25 -0
  641. package/dist/helpers/render-modal-sections.d.ts +10 -0
  642. package/dist/helpers/render-modal-sections.js +35 -0
  643. package/dist/helpers/smooth-zoom.d.ts +4 -0
  644. package/dist/helpers/smooth-zoom.js +20 -0
  645. package/dist/helpers/timeline-layout.d.ts +4 -0
  646. package/dist/helpers/timeline-layout.js +7 -0
  647. package/dist/helpers/use-breakpoint.d.ts +1 -0
  648. package/dist/helpers/use-breakpoint.js +17 -0
  649. package/dist/helpers/use-file-existence.d.ts +1 -0
  650. package/dist/helpers/use-file-existence.js +66 -0
  651. package/dist/helpers/use-keybinding.d.ts +16 -0
  652. package/dist/helpers/use-keybinding.js +70 -0
  653. package/dist/helpers/use-menu-structure.d.ts +7 -0
  654. package/dist/helpers/use-menu-structure.js +745 -0
  655. package/dist/helpers/use-studio-canvas-dimensions.d.ts +16 -0
  656. package/dist/helpers/use-studio-canvas-dimensions.js +59 -0
  657. package/dist/helpers/validate-new-comp-data.d.ts +4 -0
  658. package/dist/helpers/validate-new-comp-data.js +40 -0
  659. package/dist/icons/Checkmark.d.ts +2 -0
  660. package/dist/icons/Checkmark.js +10 -0
  661. package/dist/icons/audio.d.ts +2 -0
  662. package/dist/icons/audio.js +6 -0
  663. package/dist/icons/caret.d.ts +6 -0
  664. package/dist/icons/caret.js +32 -0
  665. package/dist/icons/clipboard.d.ts +4 -0
  666. package/dist/icons/clipboard.js +6 -0
  667. package/dist/icons/data.d.ts +2 -0
  668. package/dist/icons/data.js +8 -0
  669. package/dist/icons/file.d.ts +4 -0
  670. package/dist/icons/file.js +6 -0
  671. package/dist/icons/folder.d.ts +11 -0
  672. package/dist/icons/folder.js +16 -0
  673. package/dist/icons/frame.d.ts +2 -0
  674. package/dist/icons/frame.js +6 -0
  675. package/dist/icons/gear.d.ts +2 -0
  676. package/dist/icons/gear.js +6 -0
  677. package/dist/icons/gif.d.ts +2 -0
  678. package/dist/icons/gif.js +6 -0
  679. package/dist/icons/jump-to-start.d.ts +2 -0
  680. package/dist/icons/jump-to-start.js +8 -0
  681. package/dist/icons/keys.d.ts +4 -0
  682. package/dist/icons/keys.js +20 -0
  683. package/dist/icons/lock.d.ts +4 -0
  684. package/dist/icons/lock.js +12 -0
  685. package/dist/icons/media-volume.d.ts +3 -0
  686. package/dist/icons/media-volume.js +14 -0
  687. package/dist/icons/minus.d.ts +3 -0
  688. package/dist/icons/minus.js +8 -0
  689. package/dist/icons/pause.d.ts +3 -0
  690. package/dist/icons/pause.js +6 -0
  691. package/dist/icons/play.d.ts +3 -0
  692. package/dist/icons/play.js +6 -0
  693. package/dist/icons/plus.d.ts +5 -0
  694. package/dist/icons/plus.js +8 -0
  695. package/dist/icons/render.d.ts +9 -0
  696. package/dist/icons/render.js +12 -0
  697. package/dist/icons/step-back.d.ts +3 -0
  698. package/dist/icons/step-back.js +8 -0
  699. package/dist/icons/step-forward.d.ts +3 -0
  700. package/dist/icons/step-forward.js +8 -0
  701. package/dist/icons/still.d.ts +5 -0
  702. package/dist/icons/still.js +8 -0
  703. package/dist/icons/timelineInOutPointer.d.ts +4 -0
  704. package/dist/icons/timelineInOutPointer.js +12 -0
  705. package/dist/icons/video.d.ts +5 -0
  706. package/dist/icons/video.js +8 -0
  707. package/dist/index.d.ts +64 -0
  708. package/dist/index.js +27 -0
  709. package/dist/max-timeline-tracks.d.ts +2 -0
  710. package/dist/max-timeline-tracks.js +25 -0
  711. package/dist/preview-server/api-routes.d.ts +4 -0
  712. package/dist/preview-server/api-routes.js +25 -0
  713. package/dist/preview-server/api-types.d.ts +40 -0
  714. package/dist/preview-server/api-types.js +2 -0
  715. package/dist/preview-server/can-update-default-props.d.ts +1 -0
  716. package/dist/preview-server/can-update-default-props.js +9 -0
  717. package/dist/preview-server/dev-middleware/compatible-api.d.ts +7 -0
  718. package/dist/preview-server/dev-middleware/compatible-api.js +20 -0
  719. package/dist/preview-server/dev-middleware/get-paths.d.ts +7 -0
  720. package/dist/preview-server/dev-middleware/get-paths.js +19 -0
  721. package/dist/preview-server/dev-middleware/index.d.ts +3 -0
  722. package/dist/preview-server/dev-middleware/index.js +27 -0
  723. package/dist/preview-server/dev-middleware/middleware.d.ts +9 -0
  724. package/dist/preview-server/dev-middleware/middleware.js +222 -0
  725. package/dist/preview-server/dev-middleware/range-parser.d.ts +15 -0
  726. package/dist/preview-server/dev-middleware/range-parser.js +96 -0
  727. package/dist/preview-server/dev-middleware/ready.d.ts +3 -0
  728. package/dist/preview-server/dev-middleware/ready.js +11 -0
  729. package/dist/preview-server/dev-middleware/setup-hooks.d.ts +2 -0
  730. package/dist/preview-server/dev-middleware/setup-hooks.js +52 -0
  731. package/dist/preview-server/dev-middleware/setup-output-filesystem.d.ts +2 -0
  732. package/dist/preview-server/dev-middleware/setup-output-filesystem.js +13 -0
  733. package/dist/preview-server/dev-middleware/types.d.ts +10 -0
  734. package/dist/preview-server/dev-middleware/types.js +2 -0
  735. package/dist/preview-server/env-supports-fs-recursive.d.ts +1 -0
  736. package/dist/preview-server/env-supports-fs-recursive.js +18 -0
  737. package/dist/preview-server/file-existence-watchers.d.ts +13 -0
  738. package/dist/preview-server/file-existence-watchers.js +62 -0
  739. package/dist/preview-server/get-absolute-public-dir.d.ts +4 -0
  740. package/dist/preview-server/get-absolute-public-dir.js +14 -0
  741. package/dist/preview-server/get-package-manager.d.ts +10 -0
  742. package/dist/preview-server/get-package-manager.js +62 -0
  743. package/dist/preview-server/handler.d.ts +12 -0
  744. package/dist/preview-server/handler.js +36 -0
  745. package/dist/preview-server/hot-middleware/client.d.ts +21 -0
  746. package/dist/preview-server/hot-middleware/client.js +179 -0
  747. package/dist/preview-server/hot-middleware/index.d.ts +102 -0
  748. package/dist/preview-server/hot-middleware/index.js +149 -0
  749. package/dist/preview-server/hot-middleware/process-update.d.ts +7 -0
  750. package/dist/preview-server/hot-middleware/process-update.js +162 -0
  751. package/dist/preview-server/hot-middleware/types.d.ts +27 -0
  752. package/dist/preview-server/hot-middleware/types.js +10 -0
  753. package/dist/preview-server/job.d.ts +227 -0
  754. package/dist/preview-server/job.js +2 -0
  755. package/dist/preview-server/live-events.d.ts +10 -0
  756. package/dist/preview-server/live-events.js +76 -0
  757. package/dist/preview-server/parse-body.d.ts +2 -0
  758. package/dist/preview-server/parse-body.js +16 -0
  759. package/dist/preview-server/project-info.d.ts +5 -0
  760. package/dist/preview-server/project-info.js +32 -0
  761. package/dist/preview-server/public-folder.d.ts +12 -0
  762. package/dist/preview-server/public-folder.js +58 -0
  763. package/dist/preview-server/retry-payload.d.ts +3 -0
  764. package/dist/preview-server/retry-payload.js +136 -0
  765. package/dist/preview-server/routes/add-render.d.ts +3 -0
  766. package/dist/preview-server/routes/add-render.js +116 -0
  767. package/dist/preview-server/routes/can-update-default-props.d.ts +4 -0
  768. package/dist/preview-server/routes/can-update-default-props.js +40 -0
  769. package/dist/preview-server/routes/cancel-render.d.ts +3 -0
  770. package/dist/preview-server/routes/cancel-render.js +8 -0
  771. package/dist/preview-server/routes/copy-still-to-clipboard-handler.d.ts +3 -0
  772. package/dist/preview-server/routes/copy-still-to-clipboard-handler.js +17 -0
  773. package/dist/preview-server/routes/open-in-file-explorer.d.ts +3 -0
  774. package/dist/preview-server/routes/open-in-file-explorer.js +8 -0
  775. package/dist/preview-server/routes/remove-render.d.ts +3 -0
  776. package/dist/preview-server/routes/remove-render.js +8 -0
  777. package/dist/preview-server/routes/subscribe-to-file-existence.d.ts +3 -0
  778. package/dist/preview-server/routes/subscribe-to-file-existence.js +13 -0
  779. package/dist/preview-server/routes/unsubscribe-from-file-existence.d.ts +3 -0
  780. package/dist/preview-server/routes/unsubscribe-from-file-existence.js +13 -0
  781. package/dist/preview-server/routes/update-available.d.ts +3 -0
  782. package/dist/preview-server/routes/update-available.js +9 -0
  783. package/dist/preview-server/routes/update-default-props.d.ts +3 -0
  784. package/dist/preview-server/routes/update-default-props.js +34 -0
  785. package/dist/preview-server/routes.d.ts +20 -0
  786. package/dist/preview-server/routes.js +277 -0
  787. package/dist/preview-server/serve-static.d.ts +14 -0
  788. package/dist/preview-server/serve-static.js +75 -0
  789. package/dist/preview-server/start-server.d.ts +31 -0
  790. package/dist/preview-server/start-server.js +127 -0
  791. package/dist/preview-server/update-available.d.ts +3 -0
  792. package/dist/preview-server/update-available.js +47 -0
  793. package/dist/preview-server/update-default-props.d.ts +3 -0
  794. package/dist/preview-server/update-default-props.js +34 -0
  795. package/dist/previewEntry.d.ts +1 -0
  796. package/dist/previewEntry.js +26 -0
  797. package/dist/render-queue/copy-still-to-clipboard.d.ts +1 -0
  798. package/dist/render-queue/copy-still-to-clipboard.js +8 -0
  799. package/dist/render-queue/get-default-video-contexts.d.ts +14 -0
  800. package/dist/render-queue/get-default-video-contexts.js +29 -0
  801. package/dist/render-queue/job.d.ts +191 -0
  802. package/dist/render-queue/job.js +2 -0
  803. package/dist/render-queue/make-retry-payload.d.ts +2 -0
  804. package/dist/render-queue/make-retry-payload.js +136 -0
  805. package/dist/render-queue/open-directory-in-finder.d.ts +1 -0
  806. package/dist/render-queue/open-directory-in-finder.js +49 -0
  807. package/dist/render-queue/process-still.d.ts +8 -0
  808. package/dist/render-queue/process-still.js +49 -0
  809. package/dist/render-queue/process-video.d.ts +10 -0
  810. package/dist/render-queue/process-video.js +70 -0
  811. package/dist/render-queue/queue.d.ts +11 -0
  812. package/dist/render-queue/queue.js +221 -0
  813. package/dist/required-chromium-options.d.ts +3 -0
  814. package/dist/required-chromium-options.js +2 -0
  815. package/dist/routes.d.ts +26 -0
  816. package/dist/routes.js +229 -0
  817. package/dist/server-ready.d.ts +2 -0
  818. package/dist/server-ready.js +13 -0
  819. package/dist/start-studio.d.ts +26 -0
  820. package/dist/start-studio.js +117 -0
  821. package/dist/state/aspect-ratio-locked.d.ts +2 -0
  822. package/dist/state/aspect-ratio-locked.js +16 -0
  823. package/dist/state/canvas-ref.d.ts +2 -0
  824. package/dist/state/canvas-ref.js +5 -0
  825. package/dist/state/checkerboard.d.ts +9 -0
  826. package/dist/state/checkerboard.js +17 -0
  827. package/dist/state/editor-guides.d.ts +25 -0
  828. package/dist/state/editor-guides.js +34 -0
  829. package/dist/state/editor-rulers.d.ts +14 -0
  830. package/dist/state/editor-rulers.js +24 -0
  831. package/dist/state/editor-zoom-gestures.d.ts +9 -0
  832. package/dist/state/editor-zoom-gestures.js +17 -0
  833. package/dist/state/folders.d.ts +13 -0
  834. package/dist/state/folders.js +30 -0
  835. package/dist/state/highest-z-index.d.ts +11 -0
  836. package/dist/state/highest-z-index.js +35 -0
  837. package/dist/state/in-out.d.ts +13 -0
  838. package/dist/state/in-out.js +40 -0
  839. package/dist/state/input-dragger-click-lock.d.ts +2 -0
  840. package/dist/state/input-dragger-click-lock.js +10 -0
  841. package/dist/state/keybindings.d.ts +20 -0
  842. package/dist/state/keybindings.js +43 -0
  843. package/dist/state/loop.d.ts +2 -0
  844. package/dist/state/loop.js +13 -0
  845. package/dist/state/marks.d.ts +3 -0
  846. package/dist/state/marks.js +16 -0
  847. package/dist/state/modals.d.ts +64 -0
  848. package/dist/state/modals.js +8 -0
  849. package/dist/state/mute.d.ts +2 -0
  850. package/dist/state/mute.js +13 -0
  851. package/dist/state/playbackrate.d.ts +2 -0
  852. package/dist/state/playbackrate.js +19 -0
  853. package/dist/state/preview-size.d.ts +11 -0
  854. package/dist/state/preview-size.js +62 -0
  855. package/dist/state/render-frame.d.ts +1 -0
  856. package/dist/state/render-frame.js +20 -0
  857. package/dist/state/sidebar.d.ts +16 -0
  858. package/dist/state/sidebar.js +69 -0
  859. package/dist/state/timeline-ref.d.ts +7 -0
  860. package/dist/state/timeline-ref.js +5 -0
  861. package/dist/state/timeline-zoom.d.ts +10 -0
  862. package/dist/state/timeline-zoom.js +40 -0
  863. package/dist/state/timeline.d.ts +1 -0
  864. package/dist/state/timeline.js +18 -0
  865. package/dist/state/z-index.d.ts +12 -0
  866. package/dist/state/z-index.js +96 -0
  867. package/dist/symbolications.d.ts +1 -0
  868. package/dist/symbolications.js +11 -0
  869. package/dist/watch-root-file.d.ts +1 -0
  870. package/dist/watch-root-file.js +22 -0
  871. package/out.txt +1 -0
  872. package/package.json +51 -0
  873. package/styles/styles.css +123 -0
  874. package/web/favicon.png +0 -0
@@ -0,0 +1,827 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RenderModalWithLoader = void 0;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const client_1 = require("@remotion/renderer/client");
6
+ const react_1 = require("react");
7
+ const remotion_1 = require("remotion");
8
+ const audio_1 = require("../../icons/audio");
9
+ const data_1 = require("../../icons/data");
10
+ const file_1 = require("../../icons/file");
11
+ const frame_1 = require("../../icons/frame");
12
+ const gear_1 = require("../../icons/gear");
13
+ const gif_1 = require("../../icons/gif");
14
+ const Button_1 = require("../../error-overlay/remotion-overlay/Button");
15
+ const ShortcutHint_1 = require("../../error-overlay/remotion-overlay/ShortcutHint");
16
+ const get_default_out_name_1 = require("../../get-default-out-name");
17
+ const colors_1 = require("../../helpers/colors");
18
+ const convert_env_variables_1 = require("../../helpers/convert-env-variables");
19
+ const render_modal_sections_1 = require("../../helpers/render-modal-sections");
20
+ const use_keybinding_1 = require("../../helpers/use-keybinding");
21
+ const Checkmark_1 = require("../../icons/Checkmark");
22
+ const modals_1 = require("../../state/modals");
23
+ const sidebar_1 = require("../../state/sidebar");
24
+ const layout_1 = require("../layout");
25
+ const is_menu_item_1 = require("../Menu/is-menu-item");
26
+ const styles_1 = require("../Menu/styles");
27
+ const ModalContainer_1 = require("../ModalContainer");
28
+ const ModalHeader_1 = require("../ModalHeader");
29
+ const OptionsPanel_1 = require("../OptionsPanel");
30
+ const actions_1 = require("../RenderQueue/actions");
31
+ const SegmentedControl_1 = require("../SegmentedControl");
32
+ const Spinner_1 = require("../Spinner");
33
+ const vertical_1 = require("../Tabs/vertical");
34
+ const CrfSetting_1 = require("./CrfSetting");
35
+ const DataEditor_1 = require("./DataEditor");
36
+ const get_default_codecs_1 = require("./get-default-codecs");
37
+ const out_name_checker_1 = require("./out-name-checker");
38
+ const RenderModalAdvanced_1 = require("./RenderModalAdvanced");
39
+ const RenderModalAudio_1 = require("./RenderModalAudio");
40
+ const RenderModalBasic_1 = require("./RenderModalBasic");
41
+ const RenderModalGif_1 = require("./RenderModalGif");
42
+ const RenderModalPicture_1 = require("./RenderModalPicture");
43
+ const initialState = { type: 'idle' };
44
+ const reducer = (state, action) => {
45
+ if (action.type === 'start') {
46
+ return {
47
+ type: 'load',
48
+ };
49
+ }
50
+ if (action.type === 'fail') {
51
+ return {
52
+ type: 'error',
53
+ };
54
+ }
55
+ if (action.type === 'succeed') {
56
+ return {
57
+ type: 'success',
58
+ };
59
+ }
60
+ return state;
61
+ };
62
+ const container = {
63
+ display: 'flex',
64
+ flexDirection: 'row',
65
+ alignItems: 'center',
66
+ padding: '12px 16px',
67
+ borderBottom: '1px solid black',
68
+ };
69
+ const optionsPanel = {
70
+ display: 'flex',
71
+ width: '100%',
72
+ };
73
+ const horizontalLayout = {
74
+ display: 'flex',
75
+ flexDirection: 'row',
76
+ overflowY: 'auto',
77
+ flex: 1,
78
+ };
79
+ const leftSidebar = {
80
+ padding: 12,
81
+ };
82
+ const horizontalTab = {
83
+ width: 250,
84
+ display: 'flex',
85
+ flexDirection: 'row',
86
+ alignItems: 'center',
87
+ textAlign: 'left',
88
+ fontSize: 16,
89
+ fontWeight: 'bold',
90
+ paddingLeft: 15,
91
+ paddingTop: 12,
92
+ paddingBottom: 12,
93
+ };
94
+ const iconContainer = {
95
+ width: 20,
96
+ height: 20,
97
+ marginRight: 15,
98
+ display: 'inline-flex',
99
+ justifyContent: 'center',
100
+ alignItems: 'center',
101
+ };
102
+ const icon = {
103
+ color: 'currentcolor',
104
+ height: 20,
105
+ };
106
+ const buttonStyle = {
107
+ backgroundColor: colors_1.BLUE,
108
+ color: 'white',
109
+ };
110
+ const flexer = {
111
+ flex: 1,
112
+ };
113
+ const outer = {
114
+ width: (0, ModalContainer_1.getMaxModalWidth)(1000),
115
+ height: (0, ModalContainer_1.getMaxModalHeight)(640),
116
+ overflow: 'hidden',
117
+ display: 'flex',
118
+ flexDirection: 'column',
119
+ };
120
+ const RenderModal = ({ initialFrame, initialVideoImageFormat, initialStillImageFormat, initialJpegQuality, initialScale, initialLogLevel, initialConcurrency, maxConcurrency, minConcurrency, initialMuted, initialEnforceAudioTrack, initialProResProfile, initialx264Preset, initialPixelFormat, initialVideoBitrate, initialAudioBitrate, initialEveryNthFrame, initialNumberOfGifLoops, initialDelayRenderTimeout, initialOffthreadVideoCacheSizeInBytes, initialEnvVariables, initialDisableWebSecurity, initialGl, initialHeadless, initialIgnoreCertificateErrors, initialEncodingBufferSize, initialEncodingMaxRate, initialUserAgent, defaultProps, inFrameMark, outFrameMark, onClose, resolvedComposition, unresolvedComposition, initialColorSpace, initialMultiProcessOnLinux, defaultConfigurationAudioCodec, defaultConfigurationVideoCodec, }) => {
121
+ const isMounted = (0, react_1.useRef)(true);
122
+ const [isVideo] = (0, react_1.useState)(() => {
123
+ return typeof resolvedComposition.durationInFrames === 'undefined'
124
+ ? true
125
+ : resolvedComposition.durationInFrames > 1;
126
+ });
127
+ const [{ initialAudioCodec, initialRenderType, initialVideoCodec, initialVideoCodecForAudioTab, initialVideoCodecForVideoTab, },] = (0, react_1.useState)(() => {
128
+ return (0, get_default_codecs_1.getDefaultCodecs)({
129
+ defaultConfigurationVideoCodec,
130
+ compositionDefaultVideoCodec: resolvedComposition.defaultCodec,
131
+ defaultConfigurationAudioCodec,
132
+ renderType: isVideo ? 'video' : 'still',
133
+ });
134
+ });
135
+ const [state, dispatch] = (0, react_1.useReducer)(reducer, initialState);
136
+ const [unclampedFrame, setFrame] = (0, react_1.useState)(() => initialFrame);
137
+ const [saving, setSaving] = (0, react_1.useState)(false);
138
+ const [stillImageFormat, setStillImageFormat] = (0, react_1.useState)(() => initialStillImageFormat);
139
+ const [videoImageFormat, setVideoImageFormat] = (0, react_1.useState)(() => initialVideoImageFormat);
140
+ const [sequenceImageFormat, setSequenceImageFormat] = (0, react_1.useState)(() => initialStillImageFormat === 'jpeg' ? 'jpeg' : 'png');
141
+ const [concurrency, setConcurrency] = (0, react_1.useState)(() => initialConcurrency);
142
+ const [videoCodecForVideoTab, setVideoCodecForVideoTab] = (0, react_1.useState)(() => initialVideoCodecForVideoTab);
143
+ const [userSelectedAudioCodec, setUserSelectedAudioCodec] = (0, react_1.useState)(() => initialAudioCodec);
144
+ const [envVariables, setEnvVariables] = (0, react_1.useState)(() => (0, convert_env_variables_1.envVariablesObjectToArray)(initialEnvVariables).filter(([key]) => key !== 'NODE_ENV'));
145
+ const [initialOutName] = (0, react_1.useState)(() => {
146
+ return (0, get_default_out_name_1.getDefaultOutLocation)({
147
+ compositionName: resolvedComposition.id,
148
+ defaultExtension: isVideo
149
+ ? client_1.BrowserSafeApis.getFileExtensionFromCodec(initialVideoCodec, initialAudioCodec)
150
+ : initialStillImageFormat,
151
+ type: 'asset',
152
+ });
153
+ });
154
+ const [videoCodecForAudioTab, setVideoCodecForAudioTab] = (0, react_1.useState)(() => initialVideoCodecForAudioTab);
155
+ const [mutedState, setMuted] = (0, react_1.useState)(() => initialMuted);
156
+ const [enforceAudioTrackState, setEnforceAudioTrackState] = (0, react_1.useState)(() => initialEnforceAudioTrack);
157
+ const [renderMode, setRenderModeState] = (0, react_1.useState)(initialRenderType);
158
+ const [jpegQuality, setJpegQuality] = (0, react_1.useState)(() => initialJpegQuality);
159
+ const [scale, setScale] = (0, react_1.useState)(() => initialScale);
160
+ const [logLevel, setLogLevel] = (0, react_1.useState)(() => initialLogLevel);
161
+ const [disallowParallelEncoding, setDisallowParallelEncoding] = (0, react_1.useState)(false);
162
+ const [disableWebSecurity, setDisableWebSecurity] = (0, react_1.useState)(() => initialDisableWebSecurity);
163
+ const [headless, setHeadless] = (0, react_1.useState)(() => initialHeadless);
164
+ const [ignoreCertificateErrors, setIgnoreCertificateErrors] = (0, react_1.useState)(() => initialIgnoreCertificateErrors);
165
+ const [multiProcessOnLinux, setChromiumMultiProcessOnLinux] = (0, react_1.useState)(() => initialMultiProcessOnLinux);
166
+ const [openGlOption, setOpenGlOption] = (0, react_1.useState)(() => initialGl !== null && initialGl !== void 0 ? initialGl : 'default');
167
+ const [colorSpace, setColorSpace] = (0, react_1.useState)(() => initialColorSpace);
168
+ const [userAgent, setUserAgent] = (0, react_1.useState)(() => initialUserAgent === null
169
+ ? null
170
+ : initialUserAgent.trim() === ''
171
+ ? null
172
+ : initialUserAgent);
173
+ const chromiumOptions = (0, react_1.useMemo)(() => {
174
+ return {
175
+ headless,
176
+ disableWebSecurity,
177
+ ignoreCertificateErrors,
178
+ gl: openGlOption === 'default' ? null : openGlOption,
179
+ userAgent: userAgent === null ? null : userAgent.trim() === '' ? null : userAgent,
180
+ enableMultiProcessOnLinux: multiProcessOnLinux,
181
+ };
182
+ }, [
183
+ headless,
184
+ disableWebSecurity,
185
+ ignoreCertificateErrors,
186
+ openGlOption,
187
+ userAgent,
188
+ multiProcessOnLinux,
189
+ ]);
190
+ const [outName, setOutName] = (0, react_1.useState)(() => initialOutName);
191
+ const [endFrameOrNull, setEndFrame] = (0, react_1.useState)(() => outFrameMark !== null && outFrameMark !== void 0 ? outFrameMark : null);
192
+ const [startFrameOrNull, setStartFrame] = (0, react_1.useState)(() => inFrameMark !== null && inFrameMark !== void 0 ? inFrameMark : null);
193
+ const [proResProfileSetting, setProResProfile] = (0, react_1.useState)(() => initialProResProfile);
194
+ const [x264PresetSetting, setx264Preset] = (0, react_1.useState)(() => initialx264Preset);
195
+ const [userPreferredPixelFormat, setPixelFormat] = (0, react_1.useState)(() => initialPixelFormat);
196
+ const [preferredQualityControlType, setQualityControl] = (0, react_1.useState)(() => initialVideoBitrate === null ? 'crf' : 'bitrate');
197
+ const [shouldHaveCustomTargetAudioBitrate, setShouldHaveCustomTargetAudioBitrate,] = (0, react_1.useState)(() => initialAudioBitrate !== null);
198
+ const [customTargetAudioBitrate, setCustomTargetAudioBitrateValue] = (0, react_1.useState)(() => initialAudioBitrate !== null && initialAudioBitrate !== void 0 ? initialAudioBitrate : '320K');
199
+ const [customTargetVideoBitrate, setCustomTargetVideoBitrateValue] = (0, react_1.useState)(() => initialVideoBitrate !== null && initialVideoBitrate !== void 0 ? initialVideoBitrate : '1M');
200
+ const [encodingMaxRate, setEncodingMaxRate] = (0, react_1.useState)(() => initialEncodingMaxRate !== null && initialEncodingMaxRate !== void 0 ? initialEncodingMaxRate : null);
201
+ const [encodingBufferSize, setEncodingBufferSize] = (0, react_1.useState)(() => initialEncodingBufferSize !== null && initialEncodingBufferSize !== void 0 ? initialEncodingBufferSize : null);
202
+ const [limitNumberOfGifLoops, setLimitNumberOfGifLoops] = (0, react_1.useState)(() => initialNumberOfGifLoops !== null);
203
+ const [numberOfGifLoopsSetting, setNumberOfGifLoopsSetting] = (0, react_1.useState)(() => initialNumberOfGifLoops !== null && initialNumberOfGifLoops !== void 0 ? initialNumberOfGifLoops : 1);
204
+ const [delayRenderTimeout, setDelayRenderTimeout] = (0, react_1.useState)(() => initialDelayRenderTimeout);
205
+ const [offthreadVideoCacheSizeInBytes, setOffthreadVideoCacheSizeInBytes] = (0, react_1.useState)(initialOffthreadVideoCacheSizeInBytes);
206
+ const codec = (0, react_1.useMemo)(() => {
207
+ if (renderMode === 'audio') {
208
+ return videoCodecForAudioTab;
209
+ }
210
+ return videoCodecForVideoTab;
211
+ }, [videoCodecForAudioTab, renderMode, videoCodecForVideoTab]);
212
+ const numberOfGifLoops = (0, react_1.useMemo)(() => {
213
+ if (codec === 'gif' && limitNumberOfGifLoops) {
214
+ return numberOfGifLoopsSetting;
215
+ }
216
+ return null;
217
+ }, [codec, limitNumberOfGifLoops, numberOfGifLoopsSetting]);
218
+ const audioBitrate = (0, react_1.useMemo)(() => {
219
+ if (shouldHaveCustomTargetAudioBitrate) {
220
+ return customTargetAudioBitrate;
221
+ }
222
+ return null;
223
+ }, [customTargetAudioBitrate, shouldHaveCustomTargetAudioBitrate]);
224
+ const supportsCrf = client_1.BrowserSafeApis.codecSupportsCrf(codec);
225
+ const supportsVideoBitrate = client_1.BrowserSafeApis.codecSupportsVideoBitrate(codec);
226
+ const supportsBothQualityControls = (0, react_1.useMemo)(() => {
227
+ return supportsCrf && supportsVideoBitrate;
228
+ }, [supportsCrf, supportsVideoBitrate]);
229
+ const qualityControlType = (0, react_1.useMemo)(() => {
230
+ if (supportsBothQualityControls) {
231
+ return preferredQualityControlType;
232
+ }
233
+ if (supportsCrf) {
234
+ return 'crf';
235
+ }
236
+ if (supportsVideoBitrate) {
237
+ return 'bitrate';
238
+ }
239
+ return null;
240
+ }, [
241
+ preferredQualityControlType,
242
+ supportsBothQualityControls,
243
+ supportsCrf,
244
+ supportsVideoBitrate,
245
+ ]);
246
+ const videoBitrate = (0, react_1.useMemo)(() => {
247
+ if (qualityControlType === 'bitrate') {
248
+ return customTargetVideoBitrate;
249
+ }
250
+ return null;
251
+ }, [customTargetVideoBitrate, qualityControlType]);
252
+ const { crf, maxCrf, minCrf, setCrf } = (0, CrfSetting_1.useCrfState)(codec);
253
+ const dispatchIfMounted = (0, react_1.useCallback)((payload) => {
254
+ if (isMounted.current === false)
255
+ return;
256
+ dispatch(payload);
257
+ }, []);
258
+ const muted = (0, react_1.useMemo)(() => {
259
+ if (renderMode === 'video') {
260
+ return mutedState;
261
+ }
262
+ return false;
263
+ }, [mutedState, renderMode]);
264
+ const enforceAudioTrack = (0, react_1.useMemo)(() => {
265
+ if (renderMode === 'video') {
266
+ return enforceAudioTrackState;
267
+ }
268
+ if (renderMode === 'audio') {
269
+ return enforceAudioTrackState;
270
+ }
271
+ return false;
272
+ }, [enforceAudioTrackState, renderMode]);
273
+ const proResProfile = (0, react_1.useMemo)(() => {
274
+ if (renderMode === 'video' && codec === 'prores') {
275
+ return proResProfileSetting;
276
+ }
277
+ return null;
278
+ }, [codec, proResProfileSetting, renderMode]);
279
+ const x264Preset = (0, react_1.useMemo)(() => {
280
+ if (renderMode === 'video' && codec === 'h264') {
281
+ return x264PresetSetting;
282
+ }
283
+ return null;
284
+ }, [codec, x264PresetSetting, renderMode]);
285
+ const [inputProps, setInputProps] = (0, react_1.useState)(() => defaultProps);
286
+ const endFrame = (0, react_1.useMemo)(() => {
287
+ if (endFrameOrNull === null) {
288
+ return resolvedComposition.durationInFrames - 1;
289
+ }
290
+ return Math.max(0, Math.min(resolvedComposition.durationInFrames - 1, endFrameOrNull));
291
+ }, [resolvedComposition.durationInFrames, endFrameOrNull]);
292
+ const startFrame = (0, react_1.useMemo)(() => {
293
+ if (startFrameOrNull === null) {
294
+ return 0;
295
+ }
296
+ return Math.max(0, Math.min(endFrame - 1, startFrameOrNull));
297
+ }, [endFrame, startFrameOrNull]);
298
+ const frame = (0, react_1.useMemo)(() => {
299
+ const parsed = Math.floor(unclampedFrame);
300
+ return Math.max(0, Math.min(resolvedComposition.durationInFrames - 1, parsed));
301
+ }, [resolvedComposition.durationInFrames, unclampedFrame]);
302
+ const getStringBeforeSuffix = (0, react_1.useCallback)((fileName) => {
303
+ const dotPos = fileName.lastIndexOf('.');
304
+ if (dotPos === -1) {
305
+ return fileName;
306
+ }
307
+ const bitBeforeDot = fileName.substring(0, dotPos);
308
+ return bitBeforeDot;
309
+ }, []);
310
+ const deriveFinalAudioCodec = (0, react_1.useCallback)((passedVideoCodec, passedAudioCodec) => {
311
+ if (passedAudioCodec !== null &&
312
+ client_1.BrowserSafeApis.supportedAudioCodecs[passedVideoCodec].includes(passedAudioCodec)) {
313
+ return passedAudioCodec;
314
+ }
315
+ return client_1.BrowserSafeApis.defaultAudioCodecs[passedVideoCodec]
316
+ .compressed;
317
+ }, []);
318
+ const setDefaultOutName = (0, react_1.useCallback)((options) => {
319
+ if (options.type === 'still') {
320
+ setOutName((prev) => {
321
+ const newFileName = getStringBeforeSuffix(prev) + '.' + options.imageFormat;
322
+ return newFileName;
323
+ });
324
+ }
325
+ else if (options.type === 'sequence') {
326
+ setOutName((prev) => {
327
+ const folderName = getStringBeforeSuffix(prev);
328
+ return folderName;
329
+ });
330
+ }
331
+ else {
332
+ setOutName((prev) => {
333
+ const codecSuffix = client_1.BrowserSafeApis.getFileExtensionFromCodec(options.codec, deriveFinalAudioCodec(options.codec, options.audioCodec));
334
+ const newFileName = getStringBeforeSuffix(prev) + '.' + codecSuffix;
335
+ return newFileName;
336
+ });
337
+ }
338
+ }, [deriveFinalAudioCodec, getStringBeforeSuffix]);
339
+ const setAudioCodec = (0, react_1.useCallback)((newAudioCodec) => {
340
+ setUserSelectedAudioCodec(newAudioCodec);
341
+ setDefaultOutName({
342
+ type: 'render',
343
+ codec: videoCodecForVideoTab,
344
+ audioCodec: newAudioCodec,
345
+ });
346
+ }, [setDefaultOutName, videoCodecForVideoTab]);
347
+ const setCodec = (0, react_1.useCallback)((newCodec) => {
348
+ if (renderMode === 'audio') {
349
+ setVideoCodecForAudioTab(newCodec);
350
+ }
351
+ else {
352
+ setVideoCodecForVideoTab(newCodec);
353
+ }
354
+ setDefaultOutName({
355
+ type: 'render',
356
+ codec: newCodec,
357
+ audioCodec: deriveFinalAudioCodec(newCodec, userSelectedAudioCodec),
358
+ });
359
+ }, [
360
+ userSelectedAudioCodec,
361
+ deriveFinalAudioCodec,
362
+ renderMode,
363
+ setDefaultOutName,
364
+ ]);
365
+ const setStillFormat = (0, react_1.useCallback)((format) => {
366
+ setStillImageFormat(format);
367
+ setDefaultOutName({ type: 'still', imageFormat: format });
368
+ }, [setDefaultOutName]);
369
+ const { setSidebarCollapsedState } = (0, react_1.useContext)(sidebar_1.SidebarContext);
370
+ const onClickStill = (0, react_1.useCallback)(() => {
371
+ var _a;
372
+ setSidebarCollapsedState({ left: null, right: 'expanded' });
373
+ (0, OptionsPanel_1.persistSelectedOptionsSidebarPanel)('renders');
374
+ (_a = OptionsPanel_1.optionsSidebarTabs.current) === null || _a === void 0 ? void 0 : _a.selectRendersPanel();
375
+ dispatchIfMounted({ type: 'start' });
376
+ (0, actions_1.addStillRenderJob)({
377
+ compositionId: resolvedComposition.id,
378
+ outName,
379
+ imageFormat: stillImageFormat,
380
+ jpegQuality,
381
+ frame,
382
+ scale,
383
+ logLevel,
384
+ chromiumOptions,
385
+ delayRenderTimeout,
386
+ envVariables: (0, convert_env_variables_1.envVariablesArrayToObject)(envVariables),
387
+ inputProps,
388
+ offthreadVideoCacheSizeInBytes,
389
+ multiProcessOnLinux,
390
+ })
391
+ .then(() => {
392
+ dispatchIfMounted({ type: 'succeed' });
393
+ onClose();
394
+ })
395
+ .catch(() => {
396
+ dispatchIfMounted({ type: 'fail' });
397
+ });
398
+ }, [
399
+ setSidebarCollapsedState,
400
+ dispatchIfMounted,
401
+ resolvedComposition.id,
402
+ outName,
403
+ stillImageFormat,
404
+ jpegQuality,
405
+ frame,
406
+ scale,
407
+ logLevel,
408
+ chromiumOptions,
409
+ delayRenderTimeout,
410
+ envVariables,
411
+ inputProps,
412
+ offthreadVideoCacheSizeInBytes,
413
+ multiProcessOnLinux,
414
+ onClose,
415
+ ]);
416
+ const [everyNthFrameSetting, setEveryNthFrameSetting] = (0, react_1.useState)(() => initialEveryNthFrame);
417
+ const everyNthFrame = (0, react_1.useMemo)(() => {
418
+ if (codec === 'gif') {
419
+ return everyNthFrameSetting;
420
+ }
421
+ return 1;
422
+ }, [codec, everyNthFrameSetting]);
423
+ const audioCodec = deriveFinalAudioCodec(codec, userSelectedAudioCodec);
424
+ const availablePixelFormats = (0, react_1.useMemo)(() => {
425
+ return client_1.BrowserSafeApis.validPixelFormatsForCodec(codec);
426
+ }, [codec]);
427
+ const pixelFormat = (0, react_1.useMemo)(() => {
428
+ if (availablePixelFormats.includes(userPreferredPixelFormat)) {
429
+ return userPreferredPixelFormat;
430
+ }
431
+ return availablePixelFormats[0];
432
+ }, [availablePixelFormats, userPreferredPixelFormat]);
433
+ const onClickVideo = (0, react_1.useCallback)(() => {
434
+ var _a;
435
+ setSidebarCollapsedState({ left: null, right: 'expanded' });
436
+ (0, OptionsPanel_1.persistSelectedOptionsSidebarPanel)('renders');
437
+ (_a = OptionsPanel_1.optionsSidebarTabs.current) === null || _a === void 0 ? void 0 : _a.selectRendersPanel();
438
+ dispatchIfMounted({ type: 'start' });
439
+ (0, actions_1.addVideoRenderJob)({
440
+ compositionId: resolvedComposition.id,
441
+ outName,
442
+ imageFormat: videoImageFormat,
443
+ jpegQuality: stillImageFormat === 'jpeg' ? jpegQuality : null,
444
+ scale,
445
+ logLevel,
446
+ codec,
447
+ concurrency,
448
+ crf: qualityControlType === 'crf' ? crf : null,
449
+ endFrame,
450
+ startFrame,
451
+ muted,
452
+ enforceAudioTrack,
453
+ proResProfile,
454
+ x264Preset,
455
+ pixelFormat,
456
+ audioBitrate,
457
+ videoBitrate,
458
+ everyNthFrame,
459
+ numberOfGifLoops,
460
+ delayRenderTimeout,
461
+ audioCodec,
462
+ disallowParallelEncoding,
463
+ chromiumOptions,
464
+ envVariables: (0, convert_env_variables_1.envVariablesArrayToObject)(envVariables),
465
+ inputProps,
466
+ offthreadVideoCacheSizeInBytes,
467
+ colorSpace,
468
+ multiProcessOnLinux,
469
+ encodingBufferSize,
470
+ encodingMaxRate,
471
+ })
472
+ .then(() => {
473
+ dispatchIfMounted({ type: 'succeed' });
474
+ onClose();
475
+ })
476
+ .catch(() => {
477
+ dispatchIfMounted({ type: 'fail' });
478
+ });
479
+ }, [
480
+ setSidebarCollapsedState,
481
+ dispatchIfMounted,
482
+ resolvedComposition.id,
483
+ outName,
484
+ videoImageFormat,
485
+ stillImageFormat,
486
+ jpegQuality,
487
+ scale,
488
+ logLevel,
489
+ codec,
490
+ concurrency,
491
+ qualityControlType,
492
+ crf,
493
+ endFrame,
494
+ startFrame,
495
+ muted,
496
+ enforceAudioTrack,
497
+ proResProfile,
498
+ x264Preset,
499
+ pixelFormat,
500
+ audioBitrate,
501
+ videoBitrate,
502
+ everyNthFrame,
503
+ numberOfGifLoops,
504
+ delayRenderTimeout,
505
+ audioCodec,
506
+ disallowParallelEncoding,
507
+ chromiumOptions,
508
+ envVariables,
509
+ inputProps,
510
+ offthreadVideoCacheSizeInBytes,
511
+ colorSpace,
512
+ multiProcessOnLinux,
513
+ encodingBufferSize,
514
+ encodingMaxRate,
515
+ onClose,
516
+ ]);
517
+ const onClickSequence = (0, react_1.useCallback)(() => {
518
+ var _a;
519
+ setSidebarCollapsedState({ left: null, right: 'expanded' });
520
+ (0, OptionsPanel_1.persistSelectedOptionsSidebarPanel)('renders');
521
+ (_a = OptionsPanel_1.optionsSidebarTabs.current) === null || _a === void 0 ? void 0 : _a.selectRendersPanel();
522
+ dispatchIfMounted({ type: 'start' });
523
+ (0, actions_1.addSequenceRenderJob)({
524
+ compositionId: resolvedComposition.id,
525
+ outName,
526
+ imageFormat: sequenceImageFormat,
527
+ scale,
528
+ logLevel,
529
+ concurrency,
530
+ endFrame,
531
+ jpegQuality,
532
+ startFrame,
533
+ delayRenderTimeout,
534
+ chromiumOptions,
535
+ envVariables: (0, convert_env_variables_1.envVariablesArrayToObject)(envVariables),
536
+ inputProps,
537
+ offthreadVideoCacheSizeInBytes,
538
+ disallowParallelEncoding,
539
+ multiProcessOnLinux,
540
+ })
541
+ .then(() => {
542
+ dispatchIfMounted({ type: 'succeed' });
543
+ onClose();
544
+ })
545
+ .catch(() => {
546
+ dispatchIfMounted({ type: 'fail' });
547
+ });
548
+ }, [
549
+ setSidebarCollapsedState,
550
+ dispatchIfMounted,
551
+ resolvedComposition.id,
552
+ outName,
553
+ sequenceImageFormat,
554
+ scale,
555
+ logLevel,
556
+ concurrency,
557
+ endFrame,
558
+ jpegQuality,
559
+ startFrame,
560
+ delayRenderTimeout,
561
+ chromiumOptions,
562
+ envVariables,
563
+ inputProps,
564
+ offthreadVideoCacheSizeInBytes,
565
+ disallowParallelEncoding,
566
+ multiProcessOnLinux,
567
+ onClose,
568
+ ]);
569
+ (0, react_1.useEffect)(() => {
570
+ return () => {
571
+ isMounted.current = false;
572
+ };
573
+ }, []);
574
+ const imageFormatOptions = (0, react_1.useMemo)(() => {
575
+ if (renderMode === 'still') {
576
+ return [
577
+ {
578
+ label: 'PNG',
579
+ onClick: () => setStillFormat('png'),
580
+ key: 'png',
581
+ selected: stillImageFormat === 'png',
582
+ },
583
+ {
584
+ label: 'JPEG',
585
+ onClick: () => setStillFormat('jpeg'),
586
+ key: 'jpeg',
587
+ selected: stillImageFormat === 'jpeg',
588
+ },
589
+ {
590
+ label: 'PDF',
591
+ onClick: () => setStillFormat('pdf'),
592
+ key: 'pdf',
593
+ selected: stillImageFormat === 'pdf',
594
+ },
595
+ {
596
+ label: 'WebP',
597
+ onClick: () => setStillFormat('webp'),
598
+ key: 'webp',
599
+ selected: stillImageFormat === 'webp',
600
+ },
601
+ ];
602
+ }
603
+ if (renderMode === 'sequence') {
604
+ return [
605
+ {
606
+ label: 'PNG',
607
+ onClick: () => setSequenceImageFormat('png'),
608
+ key: 'png',
609
+ selected: sequenceImageFormat === 'png',
610
+ },
611
+ {
612
+ label: 'JPEG',
613
+ onClick: () => setSequenceImageFormat('jpeg'),
614
+ key: 'jpeg',
615
+ selected: sequenceImageFormat === 'jpeg',
616
+ },
617
+ ];
618
+ }
619
+ return [
620
+ {
621
+ label: 'PNG',
622
+ onClick: () => setVideoImageFormat('png'),
623
+ key: 'png',
624
+ selected: videoImageFormat === 'png',
625
+ },
626
+ {
627
+ label: 'JPEG',
628
+ onClick: () => setVideoImageFormat('jpeg'),
629
+ key: 'jpeg',
630
+ selected: videoImageFormat === 'jpeg',
631
+ },
632
+ ];
633
+ }, [
634
+ renderMode,
635
+ videoImageFormat,
636
+ stillImageFormat,
637
+ setStillFormat,
638
+ sequenceImageFormat,
639
+ ]);
640
+ const setRenderMode = (0, react_1.useCallback)((newRenderMode) => {
641
+ setRenderModeState(newRenderMode);
642
+ if (newRenderMode === 'audio') {
643
+ setDefaultOutName({
644
+ type: 'render',
645
+ codec: videoCodecForAudioTab,
646
+ audioCodec: deriveFinalAudioCodec(videoCodecForAudioTab, userSelectedAudioCodec),
647
+ });
648
+ }
649
+ if (newRenderMode === 'video') {
650
+ setDefaultOutName({
651
+ type: 'render',
652
+ codec: videoCodecForVideoTab,
653
+ audioCodec: deriveFinalAudioCodec(videoCodecForVideoTab, userSelectedAudioCodec),
654
+ });
655
+ }
656
+ if (newRenderMode === 'still') {
657
+ setDefaultOutName({ type: 'still', imageFormat: stillImageFormat });
658
+ }
659
+ if (newRenderMode === 'sequence') {
660
+ setDefaultOutName({ type: 'sequence' });
661
+ }
662
+ }, [
663
+ videoCodecForAudioTab,
664
+ userSelectedAudioCodec,
665
+ deriveFinalAudioCodec,
666
+ setDefaultOutName,
667
+ stillImageFormat,
668
+ videoCodecForVideoTab,
669
+ ]);
670
+ const renderTabOptions = (0, react_1.useMemo)(() => {
671
+ if ((resolvedComposition === null || resolvedComposition === void 0 ? void 0 : resolvedComposition.durationInFrames) < 2) {
672
+ return [
673
+ {
674
+ label: 'Still',
675
+ onClick: () => {
676
+ setRenderMode('still');
677
+ },
678
+ key: 'still',
679
+ selected: renderMode === 'still',
680
+ },
681
+ ];
682
+ }
683
+ return [
684
+ {
685
+ label: 'Still',
686
+ onClick: () => {
687
+ setRenderMode('still');
688
+ },
689
+ key: 'still',
690
+ selected: renderMode === 'still',
691
+ },
692
+ {
693
+ label: 'Video',
694
+ onClick: () => {
695
+ setRenderMode('video');
696
+ },
697
+ key: 'video',
698
+ selected: renderMode === 'video',
699
+ },
700
+ {
701
+ label: 'Audio',
702
+ onClick: () => {
703
+ setRenderMode('audio');
704
+ },
705
+ key: 'audio',
706
+ selected: renderMode === 'audio',
707
+ },
708
+ {
709
+ label: 'Image sequence',
710
+ onClick: () => {
711
+ setRenderMode('sequence');
712
+ },
713
+ key: 'sequence',
714
+ selected: renderMode === 'sequence',
715
+ },
716
+ ];
717
+ }, [resolvedComposition === null || resolvedComposition === void 0 ? void 0 : resolvedComposition.durationInFrames, renderMode, setRenderMode]);
718
+ const outnameValidation = (0, out_name_checker_1.validateOutnameGui)({
719
+ outName,
720
+ codec,
721
+ audioCodec,
722
+ renderMode,
723
+ stillImageFormat,
724
+ });
725
+ const { tab, setTab, shownTabs } = (0, render_modal_sections_1.useRenderModalSections)(renderMode, codec);
726
+ const { registerKeybinding } = (0, use_keybinding_1.useKeybinding)();
727
+ const renderDisabled = state.type === 'load' || !outnameValidation.valid;
728
+ const trigger = (0, react_1.useCallback)(() => {
729
+ if (renderDisabled) {
730
+ return;
731
+ }
732
+ if (renderMode === 'still') {
733
+ onClickStill();
734
+ }
735
+ else if (renderMode === 'sequence') {
736
+ onClickSequence();
737
+ }
738
+ else {
739
+ onClickVideo();
740
+ }
741
+ }, [onClickSequence, onClickStill, onClickVideo, renderDisabled, renderMode]);
742
+ (0, react_1.useEffect)(() => {
743
+ const enter = registerKeybinding({
744
+ callback() {
745
+ trigger();
746
+ },
747
+ commandCtrlKey: true,
748
+ key: 'Enter',
749
+ event: 'keydown',
750
+ preventDefault: true,
751
+ triggerIfInputFieldFocused: true,
752
+ keepRegisteredWhenNotHighestContext: false,
753
+ });
754
+ return () => {
755
+ enter.unregister();
756
+ };
757
+ }, [registerKeybinding, trigger]);
758
+ const pixelFormatOptions = (0, react_1.useMemo)(() => {
759
+ return availablePixelFormats.map((option) => {
760
+ return {
761
+ label: option,
762
+ onClick: () => setPixelFormat(option),
763
+ key: option,
764
+ id: option,
765
+ keyHint: null,
766
+ leftItem: pixelFormat === option ? (0, jsx_runtime_1.jsx)(Checkmark_1.Checkmark, {}) : null,
767
+ quickSwitcherLabel: null,
768
+ subMenu: null,
769
+ type: 'item',
770
+ value: option,
771
+ };
772
+ });
773
+ }, [availablePixelFormats, pixelFormat]);
774
+ return ((0, jsx_runtime_1.jsxs)("div", { style: outer, children: [(0, jsx_runtime_1.jsx)(ModalHeader_1.NewCompHeader, { title: `Render ${resolvedComposition.id}` }), (0, jsx_runtime_1.jsxs)("div", { style: container, children: [(0, jsx_runtime_1.jsx)(SegmentedControl_1.SegmentedControl, { items: renderTabOptions, needsWrapping: false }), (0, jsx_runtime_1.jsx)("div", { style: flexer }), (0, jsx_runtime_1.jsxs)(Button_1.Button, { autoFocus: true, onClick: trigger, disabled: renderDisabled, style: {
775
+ ...buttonStyle,
776
+ backgroundColor: outnameValidation.valid ? colors_1.BLUE : colors_1.BLUE_DISABLED,
777
+ }, children: [state.type === 'idle' ? `Render ${renderMode}` : 'Rendering...', (0, jsx_runtime_1.jsx)(ShortcutHint_1.ShortcutHint, { keyToPress: "\u21B5", cmdOrCtrl: true })] })] }), (0, jsx_runtime_1.jsxs)("div", { style: horizontalLayout, children: [(0, jsx_runtime_1.jsxs)("div", { style: leftSidebar, children: [shownTabs.includes('general') ? ((0, jsx_runtime_1.jsxs)(vertical_1.VerticalTab, { style: horizontalTab, selected: tab === 'general', onClick: () => setTab('general'), children: [(0, jsx_runtime_1.jsx)("div", { style: iconContainer, children: (0, jsx_runtime_1.jsx)(file_1.FileIcon, { style: icon }) }), "General"] })) : null, shownTabs.includes('data') ? ((0, jsx_runtime_1.jsxs)(vertical_1.VerticalTab, { style: horizontalTab, selected: tab === 'data', onClick: () => setTab('data'), children: [(0, jsx_runtime_1.jsx)("div", { style: iconContainer, children: (0, jsx_runtime_1.jsx)(data_1.DataIcon, { style: icon }) }), "Input Props"] })) : null, shownTabs.includes('picture') ? ((0, jsx_runtime_1.jsxs)(vertical_1.VerticalTab, { style: horizontalTab, selected: tab === 'picture', onClick: () => setTab('picture'), children: [(0, jsx_runtime_1.jsx)("div", { style: iconContainer, children: (0, jsx_runtime_1.jsx)(frame_1.PicIcon, { style: icon }) }), "Picture"] })) : null, shownTabs.includes('audio') ? ((0, jsx_runtime_1.jsxs)(vertical_1.VerticalTab, { style: horizontalTab, selected: tab === 'audio', onClick: () => setTab('audio'), children: [(0, jsx_runtime_1.jsx)("div", { style: iconContainer, children: (0, jsx_runtime_1.jsx)(audio_1.AudioIcon, { style: icon }) }), "Audio"] })) : null, shownTabs.includes('gif') ? ((0, jsx_runtime_1.jsxs)(vertical_1.VerticalTab, { style: horizontalTab, selected: tab === 'gif', onClick: () => setTab('gif'), children: [(0, jsx_runtime_1.jsx)("div", { style: iconContainer, children: (0, jsx_runtime_1.jsx)(gif_1.GifIcon, { style: icon }) }), "GIF"] })) : null, shownTabs.includes('advanced') ? ((0, jsx_runtime_1.jsxs)(vertical_1.VerticalTab, { style: horizontalTab, selected: tab === 'advanced', onClick: () => setTab('advanced'), children: [(0, jsx_runtime_1.jsx)("div", { style: iconContainer, children: (0, jsx_runtime_1.jsx)(gear_1.GearIcon, { style: icon }) }), "Other"] })) : null] }), (0, jsx_runtime_1.jsx)("div", { style: optionsPanel, className: is_menu_item_1.VERTICAL_SCROLLBAR_CLASSNAME, children: tab === 'general' ? ((0, jsx_runtime_1.jsx)(RenderModalBasic_1.RenderModalBasic, { codec: codec, resolvedComposition: resolvedComposition, frame: frame, imageFormatOptions: imageFormatOptions, outName: outName, proResProfile: proResProfile, renderMode: renderMode, setVideoCodec: setCodec, setFrame: setFrame, setOutName: setOutName, setProResProfile: setProResProfile, endFrame: endFrame, setEndFrame: setEndFrame, setStartFrame: setStartFrame, startFrame: startFrame, validationMessage: outnameValidation.valid ? null : outnameValidation.error.message })) : tab === 'picture' ? ((0, jsx_runtime_1.jsx)(RenderModalPicture_1.RenderModalPicture, { renderMode: renderMode, scale: scale, setScale: setScale, pixelFormat: pixelFormat, pixelFormatOptions: pixelFormatOptions, imageFormatOptions: imageFormatOptions, crf: crf, setCrf: setCrf, customTargetVideoBitrate: customTargetVideoBitrate, maxCrf: maxCrf, minCrf: minCrf, jpegQuality: jpegQuality, qualityControlType: qualityControlType, setJpegQuality: setJpegQuality, setColorSpace: setColorSpace, colorSpace: colorSpace, setCustomTargetVideoBitrateValue: setCustomTargetVideoBitrateValue, setQualityControl: setQualityControl, videoImageFormat: videoImageFormat, stillImageFormat: stillImageFormat, shouldDisplayQualityControlPicker: supportsBothQualityControls, encodingBufferSize: encodingBufferSize, setEncodingBufferSize: setEncodingBufferSize, encodingMaxRate: encodingMaxRate, setEncodingMaxRate: setEncodingMaxRate })) : tab === 'audio' ? ((0, jsx_runtime_1.jsx)(RenderModalAudio_1.RenderModalAudio, { muted: muted, renderMode: renderMode, setMuted: setMuted, codec: codec, audioCodec: audioCodec, setAudioCodec: setAudioCodec, enforceAudioTrack: enforceAudioTrack, setEnforceAudioTrackState: setEnforceAudioTrackState, customTargetAudioBitrate: customTargetAudioBitrate, setCustomTargetAudioBitrateValue: setCustomTargetAudioBitrateValue, setShouldHaveCustomTargetAudioBitrate: setShouldHaveCustomTargetAudioBitrate, shouldHaveCustomTargetAudioBitrate: shouldHaveCustomTargetAudioBitrate })) : tab === 'gif' ? ((0, jsx_runtime_1.jsx)(RenderModalGif_1.RenderModalGif, { everyNthFrame: everyNthFrame, limitNumberOfGifLoops: limitNumberOfGifLoops, numberOfGifLoopsSetting: numberOfGifLoopsSetting, setEveryNthFrameSetting: setEveryNthFrameSetting, setLimitNumberOfGifLoops: setLimitNumberOfGifLoops, setNumberOfGifLoopsSetting: setNumberOfGifLoopsSetting })) : tab === 'data' ? ((0, jsx_runtime_1.jsx)(DataEditor_1.DataEditor, { inputProps: inputProps, setInputProps: setInputProps, unresolvedComposition: unresolvedComposition, mayShowSaveButton: false, propsEditType: "input-props", saving: saving, setSaving: setSaving })) : ((0, jsx_runtime_1.jsx)(RenderModalAdvanced_1.RenderModalAdvanced, { x264Preset: x264Preset, setx264Preset: setx264Preset, concurrency: concurrency, maxConcurrency: maxConcurrency, minConcurrency: minConcurrency, renderMode: renderMode, setConcurrency: setConcurrency, setVerboseLogging: setLogLevel, logLevel: logLevel, delayRenderTimeout: delayRenderTimeout, setDelayRenderTimeout: setDelayRenderTimeout, disallowParallelEncoding: disallowParallelEncoding, setDisallowParallelEncoding: setDisallowParallelEncoding, setDisableWebSecurity: setDisableWebSecurity, setIgnoreCertificateErrors: setIgnoreCertificateErrors, setHeadless: setHeadless, headless: headless, ignoreCertificateErrors: ignoreCertificateErrors, disableWebSecurity: disableWebSecurity, openGlOption: openGlOption, setOpenGlOption: setOpenGlOption, setEnvVariables: setEnvVariables, envVariables: envVariables, offthreadVideoCacheSizeInBytes: offthreadVideoCacheSizeInBytes, setOffthreadVideoCacheSizeInBytes: setOffthreadVideoCacheSizeInBytes, enableMultiProcessOnLinux: multiProcessOnLinux, setChromiumMultiProcessOnLinux: setChromiumMultiProcessOnLinux, codec: codec, userAgent: userAgent, setUserAgent: setUserAgent })) })] })] }));
778
+ };
779
+ const RenderModalWithLoader = (props) => {
780
+ const { setSelectedModal } = (0, react_1.useContext)(modals_1.ModalsContext);
781
+ const onQuit = (0, react_1.useCallback)(() => {
782
+ setSelectedModal(null);
783
+ }, [setSelectedModal]);
784
+ (0, react_1.useEffect)(() => {
785
+ const { current } = remotion_1.Internals.resolveCompositionsRef;
786
+ if (!current) {
787
+ throw new Error('resolveCompositionsRef');
788
+ }
789
+ current.setCurrentRenderModalComposition(props.compositionId);
790
+ return () => {
791
+ current.setCurrentRenderModalComposition(null);
792
+ };
793
+ }, [props.compositionId]);
794
+ const resolved = remotion_1.Internals.useResolvedVideoConfig(props.compositionId);
795
+ const unresolvedContext = (0, react_1.useContext)(remotion_1.Internals.CompositionManager);
796
+ const unresolved = unresolvedContext.compositions.find((c) => props.compositionId === c.id);
797
+ if (!unresolved) {
798
+ throw new Error('Composition not found: ' + props.compositionId);
799
+ }
800
+ if (!resolved) {
801
+ return null;
802
+ }
803
+ if (resolved.type === 'loading') {
804
+ return ((0, jsx_runtime_1.jsx)(ModalContainer_1.ModalContainer, { onOutsideClick: onQuit, onEscape: onQuit, children: (0, jsx_runtime_1.jsxs)("div", { style: loaderContainer, children: [(0, jsx_runtime_1.jsx)(Spinner_1.Spinner, { duration: 1, size: 30 }), (0, jsx_runtime_1.jsx)(layout_1.Spacing, { y: 2 }), (0, jsx_runtime_1.jsxs)("div", { style: loaderLabel, children: ["Running ", (0, jsx_runtime_1.jsx)("code", { style: styles_1.inlineCodeSnippet, children: "calculateMetadata()" })] })] }) }));
805
+ }
806
+ if (resolved.type === 'error') {
807
+ return ((0, jsx_runtime_1.jsx)(ModalContainer_1.ModalContainer, { onOutsideClick: onQuit, onEscape: onQuit, children: (0, jsx_runtime_1.jsxs)("div", { style: loaderContainer, children: [(0, jsx_runtime_1.jsx)(layout_1.Spacing, { y: 2 }), (0, jsx_runtime_1.jsxs)("div", { style: loaderLabel, children: ["Running ", (0, jsx_runtime_1.jsx)("code", { style: styles_1.inlineCodeSnippet, children: "calculateMetadata()" }), ' ', "yielded an error:"] }), (0, jsx_runtime_1.jsx)(layout_1.Spacing, { y: 1 }), (0, jsx_runtime_1.jsx)("div", { style: loaderLabel, children: resolved.error.message || 'Unknown error' })] }) }));
808
+ }
809
+ return ((0, jsx_runtime_1.jsx)(ModalContainer_1.ModalContainer, { onOutsideClick: onQuit, onEscape: onQuit, children: (0, jsx_runtime_1.jsx)(RenderModal, { unresolvedComposition: unresolved, ...props, onClose: onQuit, resolvedComposition: resolved.result }) }));
810
+ };
811
+ exports.RenderModalWithLoader = RenderModalWithLoader;
812
+ const loaderContainer = {
813
+ paddingTop: 40,
814
+ paddingBottom: 40,
815
+ paddingLeft: 100,
816
+ paddingRight: 100,
817
+ display: 'flex',
818
+ justifyContent: 'center',
819
+ alignItems: 'center',
820
+ flexDirection: 'column',
821
+ };
822
+ const loaderLabel = {
823
+ fontSize: 14,
824
+ color: colors_1.LIGHT_TEXT,
825
+ fontFamily: 'sans-serif',
826
+ lineHeight: 1.5,
827
+ };