@remotion/cli 3.3.84 → 3.3.86

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 (285) hide show
  1. package/package.json +6 -6
  2. package/dist/cloudrun-command.d.ts +0 -1
  3. package/dist/cloudrun-command.js +0 -27
  4. package/dist/codemods/update-default-props.d.ts +0 -5
  5. package/dist/codemods/update-default-props.js +0 -143
  6. package/dist/color-math.d.ts +0 -1
  7. package/dist/color-math.js +0 -12
  8. package/dist/config/jpeg-quality.d.ts +0 -2
  9. package/dist/config/jpeg-quality.js +0 -17
  10. package/dist/convert-entry-point-to-serve-url.d.ts +0 -1
  11. package/dist/convert-entry-point-to-serve-url.js +0 -15
  12. package/dist/editor/components/Checkbox.d.ts +0 -6
  13. package/dist/editor/components/Checkbox.js +0 -42
  14. package/dist/editor/components/CheckerboardProvider.d.ts +0 -4
  15. package/dist/editor/components/CheckerboardProvider.js +0 -24
  16. package/dist/editor/components/CollapsableOptions.d.ts +0 -6
  17. package/dist/editor/components/CollapsableOptions.js +0 -35
  18. package/dist/editor/components/CurrentCompositionSideEffects.d.ts +0 -3
  19. package/dist/editor/components/CurrentCompositionSideEffects.js +0 -51
  20. package/dist/editor/components/InlineAction.d.ts +0 -5
  21. package/dist/editor/components/InlineAction.js +0 -35
  22. package/dist/editor/components/MediaVolumeProvider.d.ts +0 -4
  23. package/dist/editor/components/MediaVolumeProvider.js +0 -25
  24. package/dist/editor/components/Modals.d.ts +0 -2
  25. package/dist/editor/components/Modals.js +0 -23
  26. package/dist/editor/components/ModalsProvider.d.ts +0 -4
  27. package/dist/editor/components/ModalsProvider.js +0 -17
  28. package/dist/editor/components/NewComposition/RemInputTypeColor.d.ts +0 -7
  29. package/dist/editor/components/NewComposition/RemInputTypeColor.js +0 -53
  30. package/dist/editor/components/NewComposition/RemTextarea.d.ts +0 -7
  31. package/dist/editor/components/NewComposition/RemTextarea.js +0 -92
  32. package/dist/editor/components/PlayerEmitterContext.d.ts +0 -4
  33. package/dist/editor/components/PlayerEmitterContext.js +0 -11
  34. package/dist/editor/components/RenderButton.d.ts +0 -6
  35. package/dist/editor/components/RenderButton.js +0 -76
  36. package/dist/editor/components/RenderModal/CliCopyButton.d.ts +0 -4
  37. package/dist/editor/components/RenderModal/CliCopyButton.js +0 -22
  38. package/dist/editor/components/RenderModal/CrfSetting.d.ts +0 -16
  39. package/dist/editor/components/RenderModal/CrfSetting.js +0 -43
  40. package/dist/editor/components/RenderModal/EnforceAudioTrackSetting.d.ts +0 -8
  41. package/dist/editor/components/RenderModal/EnforceAudioTrackSetting.js +0 -16
  42. package/dist/editor/components/RenderModal/EnvInput.d.ts +0 -11
  43. package/dist/editor/components/RenderModal/EnvInput.js +0 -74
  44. package/dist/editor/components/RenderModal/FrameRangeSetting.d.ts +0 -8
  45. package/dist/editor/components/RenderModal/FrameRangeSetting.js +0 -42
  46. package/dist/editor/components/RenderModal/GuiRenderStatus.d.ts +0 -5
  47. package/dist/editor/components/RenderModal/GuiRenderStatus.js +0 -78
  48. package/dist/editor/components/RenderModal/InfoBubble.d.ts +0 -5
  49. package/dist/editor/components/RenderModal/InfoBubble.js +0 -115
  50. package/dist/editor/components/RenderModal/InfoTooltip.d.ts +0 -5
  51. package/dist/editor/components/RenderModal/InfoTooltip.js +0 -40
  52. package/dist/editor/components/RenderModal/InlineEyeIcon.d.ts +0 -5
  53. package/dist/editor/components/RenderModal/InlineEyeIcon.js +0 -14
  54. package/dist/editor/components/RenderModal/InlineRemoveButton.d.ts +0 -4
  55. package/dist/editor/components/RenderModal/InlineRemoveButton.js +0 -12
  56. package/dist/editor/components/RenderModal/JpegQualitySetting.d.ts +0 -5
  57. package/dist/editor/components/RenderModal/JpegQualitySetting.js +0 -12
  58. package/dist/editor/components/RenderModal/MutedSetting.d.ts +0 -8
  59. package/dist/editor/components/RenderModal/MutedSetting.js +0 -16
  60. package/dist/editor/components/RenderModal/NumberOfLoopsSetting.d.ts +0 -5
  61. package/dist/editor/components/RenderModal/NumberOfLoopsSetting.js +0 -26
  62. package/dist/editor/components/RenderModal/NumberSetting.d.ts +0 -12
  63. package/dist/editor/components/RenderModal/NumberSetting.js +0 -29
  64. package/dist/editor/components/RenderModal/OptionExplainer.d.ts +0 -5
  65. package/dist/editor/components/RenderModal/OptionExplainer.js +0 -45
  66. package/dist/editor/components/RenderModal/RenderModal.d.ts +0 -34
  67. package/dist/editor/components/RenderModal/RenderModal.js +0 -576
  68. package/dist/editor/components/RenderModal/RenderModalAdvanced.d.ts +0 -26
  69. package/dist/editor/components/RenderModal/RenderModalAdvanced.js +0 -61
  70. package/dist/editor/components/RenderModal/RenderModalAudio.d.ts +0 -17
  71. package/dist/editor/components/RenderModal/RenderModalAudio.js +0 -46
  72. package/dist/editor/components/RenderModal/RenderModalBasic.d.ts +0 -23
  73. package/dist/editor/components/RenderModal/RenderModalBasic.js +0 -79
  74. package/dist/editor/components/RenderModal/RenderModalData.d.ts +0 -9
  75. package/dist/editor/components/RenderModal/RenderModalData.js +0 -136
  76. package/dist/editor/components/RenderModal/RenderModalEnvironmentVariables.d.ts +0 -5
  77. package/dist/editor/components/RenderModal/RenderModalEnvironmentVariables.js +0 -55
  78. package/dist/editor/components/RenderModal/RenderModalGif.d.ts +0 -9
  79. package/dist/editor/components/RenderModal/RenderModalGif.js +0 -19
  80. package/dist/editor/components/RenderModal/RenderModalHr.d.ts +0 -2
  81. package/dist/editor/components/RenderModal/RenderModalHr.js +0 -18
  82. package/dist/editor/components/RenderModal/RenderModalInput.d.ts +0 -10
  83. package/dist/editor/components/RenderModal/RenderModalInput.js +0 -13
  84. package/dist/editor/components/RenderModal/RenderModalJSONInputPropsEditor.d.ts +0 -11
  85. package/dist/editor/components/RenderModal/RenderModalJSONInputPropsEditor.js +0 -118
  86. package/dist/editor/components/RenderModal/RenderModalPicture.d.ts +0 -28
  87. package/dist/editor/components/RenderModal/RenderModalPicture.js +0 -56
  88. package/dist/editor/components/RenderModal/RenderStatusModal.d.ts +0 -4
  89. package/dist/editor/components/RenderModal/RenderStatusModal.js +0 -72
  90. package/dist/editor/components/RenderModal/ScaleSetting.d.ts +0 -5
  91. package/dist/editor/components/RenderModal/ScaleSetting.js +0 -17
  92. package/dist/editor/components/RenderModal/SchemaEditor/SchemaEditor.d.ts +0 -12
  93. package/dist/editor/components/RenderModal/SchemaEditor/SchemaEditor.js +0 -35
  94. package/dist/editor/components/RenderModal/SchemaEditor/SchemaEmptyStateGraphic.d.ts +0 -2
  95. package/dist/editor/components/RenderModal/SchemaEditor/SchemaEmptyStateGraphic.js +0 -15
  96. package/dist/editor/components/RenderModal/SchemaEditor/SchemaErrorMessages.d.ts +0 -11
  97. package/dist/editor/components/RenderModal/SchemaEditor/SchemaErrorMessages.js +0 -55
  98. package/dist/editor/components/RenderModal/SchemaEditor/SchemaLabel.d.ts +0 -15
  99. package/dist/editor/components/RenderModal/SchemaEditor/SchemaLabel.js +0 -40
  100. package/dist/editor/components/RenderModal/SchemaEditor/SchemaResetButton.d.ts +0 -4
  101. package/dist/editor/components/RenderModal/SchemaEditor/SchemaResetButton.js +0 -12
  102. package/dist/editor/components/RenderModal/SchemaEditor/SchemaSaveButton.d.ts +0 -4
  103. package/dist/editor/components/RenderModal/SchemaEditor/SchemaSaveButton.js +0 -12
  104. package/dist/editor/components/RenderModal/SchemaEditor/ZodArrayEditor.d.ts +0 -14
  105. package/dist/editor/components/RenderModal/SchemaEditor/ZodArrayEditor.js +0 -79
  106. package/dist/editor/components/RenderModal/SchemaEditor/ZodArrayItemEditor.d.ts +0 -13
  107. package/dist/editor/components/RenderModal/SchemaEditor/ZodArrayItemEditor.js +0 -28
  108. package/dist/editor/components/RenderModal/SchemaEditor/ZodBooleanEditor.d.ts +0 -12
  109. package/dist/editor/components/RenderModal/SchemaEditor/ZodBooleanEditor.js +0 -27
  110. package/dist/editor/components/RenderModal/SchemaEditor/ZodColorEditor.d.ts +0 -14
  111. package/dist/editor/components/RenderModal/SchemaEditor/ZodColorEditor.js +0 -108
  112. package/dist/editor/components/RenderModal/SchemaEditor/ZodDateEditor.d.ts +0 -14
  113. package/dist/editor/components/RenderModal/SchemaEditor/ZodDateEditor.js +0 -76
  114. package/dist/editor/components/RenderModal/SchemaEditor/ZodEffectEditor.d.ts +0 -14
  115. package/dist/editor/components/RenderModal/SchemaEditor/ZodEffectEditor.js +0 -51
  116. package/dist/editor/components/RenderModal/SchemaEditor/ZodEnumEditor.d.ts +0 -14
  117. package/dist/editor/components/RenderModal/SchemaEditor/ZodEnumEditor.js +0 -68
  118. package/dist/editor/components/RenderModal/SchemaEditor/ZodErrorMessages.d.ts +0 -5
  119. package/dist/editor/components/RenderModal/SchemaEditor/ZodErrorMessages.js +0 -23
  120. package/dist/editor/components/RenderModal/SchemaEditor/ZodNonEditableValue.d.ts +0 -8
  121. package/dist/editor/components/RenderModal/SchemaEditor/ZodNonEditableValue.js +0 -27
  122. package/dist/editor/components/RenderModal/SchemaEditor/ZodNullableEditor.d.ts +0 -14
  123. package/dist/editor/components/RenderModal/SchemaEditor/ZodNullableEditor.js +0 -10
  124. package/dist/editor/components/RenderModal/SchemaEditor/ZodNumberEditor.d.ts +0 -14
  125. package/dist/editor/components/RenderModal/SchemaEditor/ZodNumberEditor.js +0 -89
  126. package/dist/editor/components/RenderModal/SchemaEditor/ZodObjectEditor.d.ts +0 -14
  127. package/dist/editor/components/RenderModal/SchemaEditor/ZodObjectEditor.js +0 -60
  128. package/dist/editor/components/RenderModal/SchemaEditor/ZodOptionalEditor.d.ts +0 -14
  129. package/dist/editor/components/RenderModal/SchemaEditor/ZodOptionalEditor.js +0 -10
  130. package/dist/editor/components/RenderModal/SchemaEditor/ZodOrNullishEditor.d.ts +0 -15
  131. package/dist/editor/components/RenderModal/SchemaEditor/ZodOrNullishEditor.js +0 -44
  132. package/dist/editor/components/RenderModal/SchemaEditor/ZodStringEditor.d.ts +0 -14
  133. package/dist/editor/components/RenderModal/SchemaEditor/ZodStringEditor.js +0 -43
  134. package/dist/editor/components/RenderModal/SchemaEditor/ZodSwitch.d.ts +0 -14
  135. package/dist/editor/components/RenderModal/SchemaEditor/ZodSwitch.js +0 -77
  136. package/dist/editor/components/RenderModal/SchemaEditor/ZodUnionEditor.d.ts +0 -14
  137. package/dist/editor/components/RenderModal/SchemaEditor/ZodUnionEditor.js +0 -45
  138. package/dist/editor/components/RenderModal/SchemaEditor/create-zod-values.d.ts +0 -2
  139. package/dist/editor/components/RenderModal/SchemaEditor/create-zod-values.js +0 -153
  140. package/dist/editor/components/RenderModal/SchemaEditor/date-serialization.d.ts +0 -2
  141. package/dist/editor/components/RenderModal/SchemaEditor/date-serialization.js +0 -21
  142. package/dist/editor/components/RenderModal/SchemaEditor/get-schema-label.d.ts +0 -2
  143. package/dist/editor/components/RenderModal/SchemaEditor/get-schema-label.js +0 -15
  144. package/dist/editor/components/RenderModal/SchemaEditor/zod-types.d.ts +0 -1
  145. package/dist/editor/components/RenderModal/SchemaEditor/zod-types.js +0 -2
  146. package/dist/editor/components/RenderModal/human-readable-audio-codecs.d.ts +0 -2
  147. package/dist/editor/components/RenderModal/human-readable-audio-codecs.js +0 -18
  148. package/dist/editor/components/RenderModal/human-readable-codec.d.ts +0 -2
  149. package/dist/editor/components/RenderModal/human-readable-codec.js +0 -36
  150. package/dist/editor/components/RenderModal/layout.d.ts +0 -7
  151. package/dist/editor/components/RenderModal/layout.js +0 -45
  152. package/dist/editor/components/RenderModal/out-name-checker.d.ts +0 -14
  153. package/dist/editor/components/RenderModal/out-name-checker.js +0 -80
  154. package/dist/editor/components/RenderQueue/CircularProgress.d.ts +0 -5
  155. package/dist/editor/components/RenderQueue/CircularProgress.js +0 -18
  156. package/dist/editor/components/RenderQueue/RenderQueueError.d.ts +0 -5
  157. package/dist/editor/components/RenderQueue/RenderQueueError.js +0 -26
  158. package/dist/editor/components/RenderQueue/RenderQueueItem.d.ts +0 -5
  159. package/dist/editor/components/RenderQueue/RenderQueueItem.js +0 -40
  160. package/dist/editor/components/RenderQueue/RenderQueueItemCancelButton.d.ts +0 -5
  161. package/dist/editor/components/RenderQueue/RenderQueueItemCancelButton.js +0 -22
  162. package/dist/editor/components/RenderQueue/RenderQueueItemStatus.d.ts +0 -5
  163. package/dist/editor/components/RenderQueue/RenderQueueItemStatus.js +0 -43
  164. package/dist/editor/components/RenderQueue/RenderQueueOpenInFolder.d.ts +0 -5
  165. package/dist/editor/components/RenderQueue/RenderQueueOpenInFolder.js +0 -22
  166. package/dist/editor/components/RenderQueue/RenderQueueOutputName.d.ts +0 -5
  167. package/dist/editor/components/RenderQueue/RenderQueueOutputName.js +0 -26
  168. package/dist/editor/components/RenderQueue/RenderQueueProgressMessage.d.ts +0 -5
  169. package/dist/editor/components/RenderQueue/RenderQueueProgressMessage.js +0 -26
  170. package/dist/editor/components/RenderQueue/RenderQueueRemoveItem.d.ts +0 -5
  171. package/dist/editor/components/RenderQueue/RenderQueueRemoveItem.js +0 -33
  172. package/dist/editor/components/RenderQueue/RenderQueueRepeat.d.ts +0 -5
  173. package/dist/editor/components/RenderQueue/RenderQueueRepeat.js +0 -22
  174. package/dist/editor/components/RenderQueue/SuccessIcon.d.ts +0 -2
  175. package/dist/editor/components/RenderQueue/SuccessIcon.js +0 -14
  176. package/dist/editor/components/RenderQueue/actions.d.ts +0 -58
  177. package/dist/editor/components/RenderQueue/actions.js +0 -119
  178. package/dist/editor/components/RenderQueue/context.d.ts +0 -18
  179. package/dist/editor/components/RenderQueue/context.js +0 -49
  180. package/dist/editor/components/RenderQueue/index.d.ts +0 -2
  181. package/dist/editor/components/RenderQueue/index.js +0 -43
  182. package/dist/editor/components/RenderQueue/item-style.d.ts +0 -2
  183. package/dist/editor/components/RenderQueue/item-style.js +0 -21
  184. package/dist/editor/components/RenderToolbarIcon.d.ts +0 -2
  185. package/dist/editor/components/RenderToolbarIcon.js +0 -99
  186. package/dist/editor/components/RendersTab.d.ts +0 -6
  187. package/dist/editor/components/RendersTab.js +0 -43
  188. package/dist/editor/components/RightPanel.d.ts +0 -8
  189. package/dist/editor/components/RightPanel.js +0 -76
  190. package/dist/editor/components/SegmentedControl.d.ts +0 -11
  191. package/dist/editor/components/SegmentedControl.js +0 -62
  192. package/dist/editor/components/SetTimelineInOutProvider.d.ts +0 -4
  193. package/dist/editor/components/SetTimelineInOutProvider.js +0 -19
  194. package/dist/editor/components/SidebarCollapserControls.d.ts +0 -2
  195. package/dist/editor/components/SidebarCollapserControls.js +0 -122
  196. package/dist/editor/components/Tabs/index.d.ts +0 -11
  197. package/dist/editor/components/Tabs/index.js +0 -58
  198. package/dist/editor/components/Tabs/vertical.d.ts +0 -7
  199. package/dist/editor/components/Tabs/vertical.js +0 -43
  200. package/dist/editor/components/ZoomGesturesProvider.d.ts +0 -4
  201. package/dist/editor/components/ZoomGesturesProvider.js +0 -24
  202. package/dist/editor/helpers/client-id.d.ts +0 -17
  203. package/dist/editor/helpers/client-id.js +0 -46
  204. package/dist/editor/helpers/convert-env-variables.d.ts +0 -2
  205. package/dist/editor/helpers/convert-env-variables.js +0 -20
  206. package/dist/editor/helpers/prores-labels.d.ts +0 -2
  207. package/dist/editor/helpers/prores-labels.js +0 -25
  208. package/dist/editor/helpers/render-modal-sections.d.ts +0 -10
  209. package/dist/editor/helpers/render-modal-sections.js +0 -32
  210. package/dist/editor/helpers/use-breakpoint.d.ts +0 -1
  211. package/dist/editor/helpers/use-breakpoint.js +0 -17
  212. package/dist/editor/helpers/use-file-existence.d.ts +0 -1
  213. package/dist/editor/helpers/use-file-existence.js +0 -66
  214. package/dist/editor/icons/RenderStillIcon.d.ts +0 -3
  215. package/dist/editor/icons/RenderStillIcon.js +0 -8
  216. package/dist/editor/icons/audio.d.ts +0 -2
  217. package/dist/editor/icons/audio.js +0 -6
  218. package/dist/editor/icons/data.d.ts +0 -2
  219. package/dist/editor/icons/data.js +0 -8
  220. package/dist/editor/icons/file.d.ts +0 -2
  221. package/dist/editor/icons/file.js +0 -6
  222. package/dist/editor/icons/frame.d.ts +0 -2
  223. package/dist/editor/icons/frame.js +0 -6
  224. package/dist/editor/icons/gear.d.ts +0 -2
  225. package/dist/editor/icons/gear.js +0 -6
  226. package/dist/editor/icons/gif.d.ts +0 -2
  227. package/dist/editor/icons/gif.js +0 -6
  228. package/dist/editor/icons/render.d.ts +0 -8
  229. package/dist/editor/icons/render.js +0 -12
  230. package/dist/editor/icons/video.d.ts +0 -5
  231. package/dist/editor/icons/video.js +0 -8
  232. package/dist/ffmpeg.d.ts +0 -2
  233. package/dist/ffmpeg.js +0 -21
  234. package/dist/file-watcher.d.ts +0 -9
  235. package/dist/file-watcher.js +0 -35
  236. package/dist/get-default-out-name.d.ts +0 -5
  237. package/dist/get-default-out-name.js +0 -10
  238. package/dist/preview-server/api-routes.d.ts +0 -4
  239. package/dist/preview-server/api-routes.js +0 -21
  240. package/dist/preview-server/api-types.d.ts +0 -25
  241. package/dist/preview-server/api-types.js +0 -2
  242. package/dist/preview-server/file-existence-watchers.d.ts +0 -13
  243. package/dist/preview-server/file-existence-watchers.js +0 -62
  244. package/dist/preview-server/handler.d.ts +0 -9
  245. package/dist/preview-server/handler.js +0 -34
  246. package/dist/preview-server/parse-body.d.ts +0 -2
  247. package/dist/preview-server/parse-body.js +0 -16
  248. package/dist/preview-server/render-queue/get-default-video-contexts.d.ts +0 -10
  249. package/dist/preview-server/render-queue/get-default-video-contexts.js +0 -13
  250. package/dist/preview-server/render-queue/job.d.ts +0 -138
  251. package/dist/preview-server/render-queue/job.js +0 -2
  252. package/dist/preview-server/render-queue/make-retry-payload.d.ts +0 -3
  253. package/dist/preview-server/render-queue/make-retry-payload.js +0 -89
  254. package/dist/preview-server/render-queue/open-directory-in-finder.d.ts +0 -1
  255. package/dist/preview-server/render-queue/open-directory-in-finder.js +0 -43
  256. package/dist/preview-server/render-queue/process-still.d.ts +0 -8
  257. package/dist/preview-server/render-queue/process-still.js +0 -46
  258. package/dist/preview-server/render-queue/process-video.d.ts +0 -8
  259. package/dist/preview-server/render-queue/process-video.js +0 -63
  260. package/dist/preview-server/render-queue/queue.d.ts +0 -9
  261. package/dist/preview-server/render-queue/queue.js +0 -205
  262. package/dist/preview-server/routes/add-render.d.ts +0 -3
  263. package/dist/preview-server/routes/add-render.js +0 -76
  264. package/dist/preview-server/routes/can-update-default-props.d.ts +0 -4
  265. package/dist/preview-server/routes/can-update-default-props.js +0 -39
  266. package/dist/preview-server/routes/cancel-render.d.ts +0 -3
  267. package/dist/preview-server/routes/cancel-render.js +0 -9
  268. package/dist/preview-server/routes/open-in-file-explorer.d.ts +0 -3
  269. package/dist/preview-server/routes/open-in-file-explorer.js +0 -8
  270. package/dist/preview-server/routes/remove-render.d.ts +0 -3
  271. package/dist/preview-server/routes/remove-render.js +0 -9
  272. package/dist/preview-server/routes/subscribe-to-file-existence.d.ts +0 -3
  273. package/dist/preview-server/routes/subscribe-to-file-existence.js +0 -13
  274. package/dist/preview-server/routes/unsubscribe-from-file-existence.d.ts +0 -3
  275. package/dist/preview-server/routes/unsubscribe-from-file-existence.js +0 -13
  276. package/dist/preview-server/routes/update-default-props.d.ts +0 -3
  277. package/dist/preview-server/routes/update-default-props.js +0 -24
  278. package/dist/progress-types.d.ts +0 -32
  279. package/dist/progress-types.js +0 -17
  280. package/dist/render-flows/render.d.ts +0 -47
  281. package/dist/render-flows/render.js +0 -290
  282. package/dist/render-flows/still.d.ts +0 -29
  283. package/dist/render-flows/still.js +0 -168
  284. package/dist/required-chromium-options.d.ts +0 -3
  285. package/dist/required-chromium-options.js +0 -2
@@ -1,576 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.RenderModal = 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 Button_1 = require("../../../preview-server/error-overlay/remotion-overlay/Button");
9
- const ShortcutHint_1 = require("../../../preview-server/error-overlay/remotion-overlay/ShortcutHint");
10
- const convert_env_variables_1 = require("../../helpers/convert-env-variables");
11
- const render_modal_sections_1 = require("../../helpers/render-modal-sections");
12
- const use_keybinding_1 = require("../../helpers/use-keybinding");
13
- const audio_1 = require("../../icons/audio");
14
- const data_1 = require("../../icons/data");
15
- const file_1 = require("../../icons/file");
16
- const frame_1 = require("../../icons/frame");
17
- const gear_1 = require("../../icons/gear");
18
- const gif_1 = require("../../icons/gif");
19
- const modals_1 = require("../../state/modals");
20
- const sidebar_1 = require("../../state/sidebar");
21
- const is_menu_item_1 = require("../Menu/is-menu-item");
22
- const ModalContainer_1 = require("../ModalContainer");
23
- const ModalHeader_1 = require("../ModalHeader");
24
- const actions_1 = require("../RenderQueue/actions");
25
- const RightPanel_1 = require("../RightPanel");
26
- const SegmentedControl_1 = require("../SegmentedControl");
27
- const vertical_1 = require("../Tabs/vertical");
28
- const CrfSetting_1 = require("./CrfSetting");
29
- const out_name_checker_1 = require("./out-name-checker");
30
- const RenderModalAdvanced_1 = require("./RenderModalAdvanced");
31
- const RenderModalAudio_1 = require("./RenderModalAudio");
32
- const RenderModalBasic_1 = require("./RenderModalBasic");
33
- const RenderModalData_1 = require("./RenderModalData");
34
- const RenderModalGif_1 = require("./RenderModalGif");
35
- const RenderModalPicture_1 = require("./RenderModalPicture");
36
- const initialState = { type: 'idle' };
37
- const reducer = (state, action) => {
38
- if (action.type === 'start') {
39
- return {
40
- type: 'load',
41
- };
42
- }
43
- if (action.type === 'fail') {
44
- return {
45
- type: 'error',
46
- };
47
- }
48
- if (action.type === 'succeed') {
49
- return {
50
- type: 'success',
51
- };
52
- }
53
- return state;
54
- };
55
- const container = {
56
- display: 'flex',
57
- flexDirection: 'row',
58
- alignItems: 'center',
59
- padding: '12px 16px',
60
- borderBottom: '1px solid black',
61
- };
62
- const rightPanel = {
63
- display: 'flex',
64
- width: '100%',
65
- height: 600,
66
- };
67
- const horizontalLayout = {
68
- display: 'flex',
69
- flexDirection: 'row',
70
- overflowY: 'auto',
71
- };
72
- const leftSidebar = {
73
- padding: 12,
74
- };
75
- const horizontalTab = {
76
- width: 250,
77
- display: 'flex',
78
- flexDirection: 'row',
79
- alignItems: 'center',
80
- textAlign: 'left',
81
- fontSize: 16,
82
- fontWeight: 'bold',
83
- paddingLeft: 15,
84
- paddingTop: 12,
85
- paddingBottom: 12,
86
- };
87
- const iconContainer = {
88
- width: 20,
89
- height: 20,
90
- marginRight: 15,
91
- display: 'inline-flex',
92
- justifyContent: 'center',
93
- alignItems: 'center',
94
- };
95
- const icon = {
96
- color: 'currentcolor',
97
- height: 20,
98
- };
99
- const buttonStyle = {
100
- backgroundColor: 'var(--blue)',
101
- color: 'white',
102
- };
103
- const flexer = {
104
- flex: 1,
105
- };
106
- const outer = {
107
- width: (0, ModalContainer_1.getMaxModalWidth)(1000),
108
- height: (0, ModalContainer_1.getMaxModalHeight)(640),
109
- overflow: 'hidden',
110
- };
111
- // TODO: Copy edited props from Props editor to Render modal
112
- const RenderModal = ({ compositionId, initialFrame, initialVideoImageFormat, initialStillImageFormat, initialJpegQuality, initialScale, initialVerbose, initialOutName, initialRenderType, initialVideoCodecForAudioTab, initialVideoCodecForVideoTab, initialConcurrency, maxConcurrency, minConcurrency, initialMuted, initialEnforceAudioTrack, initialProResProfile, initialPixelFormat, initialVideoBitrate, initialAudioBitrate, initialEveryNthFrame, initialNumberOfGifLoops, initialDelayRenderTimeout, initialAudioCodec, initialEnvVariables, initialDisableWebSecurity, initialGl, initialHeadless, initialIgnoreCertificateErrors, }) => {
113
- const { setSelectedModal } = (0, react_1.useContext)(modals_1.ModalsContext);
114
- const onQuit = (0, react_1.useCallback)(() => {
115
- setSelectedModal(null);
116
- }, [setSelectedModal]);
117
- const isMounted = (0, react_1.useRef)(true);
118
- const [state, dispatch] = (0, react_1.useReducer)(reducer, initialState);
119
- const [unclampedFrame, setFrame] = (0, react_1.useState)(() => initialFrame);
120
- const [stillImageFormat, setStillImageFormat] = (0, react_1.useState)(() => initialStillImageFormat);
121
- const [videoImageFormat, setVideoImageFormat] = (0, react_1.useState)(() => initialVideoImageFormat);
122
- const [concurrency, setConcurrency] = (0, react_1.useState)(() => initialConcurrency);
123
- const [videoCodecForVideoTab, setVideoCodecForVideoTab] = (0, react_1.useState)(() => initialVideoCodecForVideoTab);
124
- const [userSelectedAudioCodec, setUserSelectedAudioCodec] = (0, react_1.useState)(() => initialAudioCodec);
125
- const [envVariables, setEnvVariables] = (0, react_1.useState)(() => (0, convert_env_variables_1.envVariablesObjectToArray)(initialEnvVariables).filter(([key]) => key !== 'NODE_ENV'));
126
- const [videoCodecForAudioTab, setVideoCodecForAudioTab] = (0, react_1.useState)(() => initialVideoCodecForAudioTab);
127
- const [mutedState, setMuted] = (0, react_1.useState)(() => initialMuted);
128
- const [enforceAudioTrackState, setEnforceAudioTrackState] = (0, react_1.useState)(() => initialEnforceAudioTrack);
129
- const [renderMode, setRenderModeState] = (0, react_1.useState)(initialRenderType);
130
- const [jpegQuality, setJpegQuality] = (0, react_1.useState)(() => initialJpegQuality);
131
- const [scale, setScale] = (0, react_1.useState)(() => initialScale);
132
- const [verbose, setVerboseLogging] = (0, react_1.useState)(() => initialVerbose);
133
- const [disallowParallelEncoding, setDisallowParallelEncoding] = (0, react_1.useState)(false);
134
- const [disableWebSecurity, setDisableWebSecurity] = (0, react_1.useState)(() => initialDisableWebSecurity);
135
- const [headless, setHeadless] = (0, react_1.useState)(() => initialHeadless);
136
- const [ignoreCertificateErrors, setIgnoreCertificateErrors] = (0, react_1.useState)(() => initialIgnoreCertificateErrors);
137
- const [openGlOption, setOpenGlOption] = (0, react_1.useState)(() => initialGl !== null && initialGl !== void 0 ? initialGl : 'default');
138
- const chromiumOptions = (0, react_1.useMemo)(() => {
139
- return {
140
- headless,
141
- disableWebSecurity,
142
- ignoreCertificateErrors,
143
- gl: openGlOption === 'default' ? null : openGlOption,
144
- // TODO: Make this configurable at some point (not necessary for V4)
145
- userAgent: null,
146
- };
147
- }, [headless, disableWebSecurity, ignoreCertificateErrors, openGlOption]);
148
- const [outName, setOutName] = (0, react_1.useState)(() => initialOutName);
149
- const [endFrameOrNull, setEndFrame] = (0, react_1.useState)(() => null);
150
- const [startFrameOrNull, setStartFrame] = (0, react_1.useState)(() => null);
151
- const [proResProfileSetting, setProResProfile] = (0, react_1.useState)(() => initialProResProfile);
152
- const [pixelFormat, setPixelFormat] = (0, react_1.useState)(() => initialPixelFormat);
153
- const [qualityControlType, setQualityControl] = (0, react_1.useState)(() => initialVideoBitrate === null ? 'crf' : 'bitrate');
154
- const [shouldHaveCustomTargetAudioBitrate, setShouldHaveCustomTargetAudioBitrate,] = (0, react_1.useState)(() => initialAudioBitrate !== null);
155
- const [customTargetAudioBitrate, setCustomTargetAudioBitrateValue] = (0, react_1.useState)(() => initialAudioBitrate !== null && initialAudioBitrate !== void 0 ? initialAudioBitrate : '320K');
156
- const [customTargetVideoBitrate, setCustomTargetVideoBitrateValue] = (0, react_1.useState)(() => initialVideoBitrate !== null && initialVideoBitrate !== void 0 ? initialVideoBitrate : '1M');
157
- const [limitNumberOfGifLoops, setLimitNumberOfGifLoops] = (0, react_1.useState)(() => initialNumberOfGifLoops !== null);
158
- const [numberOfGifLoopsSetting, setNumberOfGifLoopsSetting] = (0, react_1.useState)(() => initialNumberOfGifLoops !== null && initialNumberOfGifLoops !== void 0 ? initialNumberOfGifLoops : 1);
159
- const [delayRenderTimeout, setDelayRenderTimeout] = (0, react_1.useState)(() => initialDelayRenderTimeout);
160
- const codec = (0, react_1.useMemo)(() => {
161
- if (renderMode === 'audio') {
162
- return videoCodecForAudioTab;
163
- }
164
- return videoCodecForVideoTab;
165
- }, [videoCodecForAudioTab, renderMode, videoCodecForVideoTab]);
166
- const numberOfGifLoops = (0, react_1.useMemo)(() => {
167
- if (codec === 'gif' && limitNumberOfGifLoops) {
168
- return numberOfGifLoopsSetting;
169
- }
170
- return null;
171
- }, [codec, limitNumberOfGifLoops, numberOfGifLoopsSetting]);
172
- const audioBitrate = (0, react_1.useMemo)(() => {
173
- if (shouldHaveCustomTargetAudioBitrate) {
174
- return customTargetAudioBitrate;
175
- }
176
- return null;
177
- }, [customTargetAudioBitrate, shouldHaveCustomTargetAudioBitrate]);
178
- const videoBitrate = (0, react_1.useMemo)(() => {
179
- if (qualityControlType === 'bitrate') {
180
- return customTargetVideoBitrate;
181
- }
182
- return null;
183
- }, [customTargetVideoBitrate, qualityControlType]);
184
- const { crf, maxCrf, minCrf, setCrf, shouldDisplayOption: shouldDisplayCrfOption, } = (0, CrfSetting_1.useCrfState)(codec);
185
- const dispatchIfMounted = (0, react_1.useCallback)((payload) => {
186
- if (isMounted.current === false)
187
- return;
188
- dispatch(payload);
189
- }, []);
190
- const muted = (0, react_1.useMemo)(() => {
191
- if (renderMode === 'video') {
192
- return mutedState;
193
- }
194
- return false;
195
- }, [mutedState, renderMode]);
196
- const enforceAudioTrack = (0, react_1.useMemo)(() => {
197
- if (renderMode === 'video') {
198
- return enforceAudioTrackState;
199
- }
200
- return false;
201
- }, [enforceAudioTrackState, renderMode]);
202
- const proResProfile = (0, react_1.useMemo)(() => {
203
- if (renderMode === 'video' && codec === 'prores') {
204
- return proResProfileSetting;
205
- }
206
- return null;
207
- }, [codec, proResProfileSetting, renderMode]);
208
- const { compositions } = (0, react_1.useContext)(remotion_1.Internals.CompositionManager);
209
- const currentComposition = (0, react_1.useMemo)(() => {
210
- for (const composition of compositions) {
211
- if (composition.id === compositionId) {
212
- return composition;
213
- }
214
- }
215
- return null;
216
- }, [compositionId, compositions]);
217
- if (currentComposition === null) {
218
- throw new Error('This composition does not exist');
219
- }
220
- const [inputProps, setInputProps] = (0, react_1.useState)(() => currentComposition.defaultProps);
221
- const endFrame = (0, react_1.useMemo)(() => {
222
- if (endFrameOrNull === null) {
223
- return currentComposition.durationInFrames - 1;
224
- }
225
- return Math.max(0, Math.min(currentComposition.durationInFrames - 1, endFrameOrNull));
226
- }, [currentComposition.durationInFrames, endFrameOrNull]);
227
- const startFrame = (0, react_1.useMemo)(() => {
228
- if (startFrameOrNull === null) {
229
- return 0;
230
- }
231
- return Math.max(0, Math.min(endFrame - 1, startFrameOrNull));
232
- }, [endFrame, startFrameOrNull]);
233
- const frame = (0, react_1.useMemo)(() => {
234
- const parsed = Math.floor(unclampedFrame);
235
- return Math.max(0, Math.min(currentComposition.durationInFrames - 1, parsed));
236
- }, [currentComposition.durationInFrames, unclampedFrame]);
237
- const getStringBeforeSuffix = (0, react_1.useCallback)((fileName) => {
238
- const dotPos = fileName.lastIndexOf('.');
239
- const bitBeforeDot = fileName.substring(0, dotPos);
240
- return bitBeforeDot;
241
- }, []);
242
- const deriveFinalAudioCodec = (0, react_1.useCallback)((passedVideoCodec, passedAudioCodec) => {
243
- if (passedAudioCodec !== null &&
244
- client_1.BrowserSafeApis.supportedAudioCodecs[passedVideoCodec].includes(passedAudioCodec)) {
245
- return passedAudioCodec;
246
- }
247
- return client_1.BrowserSafeApis.defaultAudioCodecs[passedVideoCodec]
248
- .compressed;
249
- }, []);
250
- const setDefaultOutName = (0, react_1.useCallback)((options) => {
251
- if (options.type === 'still') {
252
- setOutName((prev) => {
253
- const newFileName = getStringBeforeSuffix(prev) + '.' + options.imageFormat;
254
- return newFileName;
255
- });
256
- }
257
- else {
258
- setOutName((prev) => {
259
- const codecSuffix = client_1.BrowserSafeApis.getFileExtensionFromCodec(options.codec, deriveFinalAudioCodec(options.codec, options.audioCodec));
260
- const newFileName = getStringBeforeSuffix(prev) + '.' + codecSuffix;
261
- return newFileName;
262
- });
263
- }
264
- }, [deriveFinalAudioCodec, getStringBeforeSuffix]);
265
- const setAudioCodec = (0, react_1.useCallback)((newAudioCodec) => {
266
- setUserSelectedAudioCodec(newAudioCodec);
267
- setDefaultOutName({
268
- type: 'render',
269
- codec: videoCodecForVideoTab,
270
- audioCodec: newAudioCodec,
271
- });
272
- }, [setDefaultOutName, videoCodecForVideoTab]);
273
- const setCodec = (0, react_1.useCallback)((newCodec) => {
274
- if (renderMode === 'audio') {
275
- setVideoCodecForAudioTab(newCodec);
276
- }
277
- else {
278
- setVideoCodecForVideoTab(newCodec);
279
- }
280
- setDefaultOutName({
281
- type: 'render',
282
- codec: newCodec,
283
- audioCodec: deriveFinalAudioCodec(newCodec, userSelectedAudioCodec),
284
- });
285
- }, [
286
- userSelectedAudioCodec,
287
- deriveFinalAudioCodec,
288
- renderMode,
289
- setDefaultOutName,
290
- ]);
291
- const setStillFormat = (0, react_1.useCallback)((format) => {
292
- setStillImageFormat(format);
293
- setDefaultOutName({ type: 'still', imageFormat: format });
294
- }, [setDefaultOutName]);
295
- const { setSidebarCollapsedState } = (0, react_1.useContext)(sidebar_1.SidebarContext);
296
- const onClickStill = (0, react_1.useCallback)(() => {
297
- var _a;
298
- setSidebarCollapsedState({ left: null, right: 'expanded' });
299
- (0, RightPanel_1.persistSelectedPanel)('renders');
300
- (_a = RightPanel_1.rightSidebarTabs.current) === null || _a === void 0 ? void 0 : _a.selectRendersPanel();
301
- dispatchIfMounted({ type: 'start' });
302
- (0, actions_1.addStillRenderJob)({
303
- compositionId,
304
- outName,
305
- imageFormat: stillImageFormat,
306
- jpegQuality: stillImageFormat === 'jpeg' ? jpegQuality : null,
307
- frame,
308
- scale,
309
- verbose,
310
- chromiumOptions,
311
- delayRenderTimeout,
312
- envVariables: (0, convert_env_variables_1.envVariablesArrayToObject)(envVariables),
313
- inputProps,
314
- })
315
- .then(() => {
316
- dispatchIfMounted({ type: 'succeed' });
317
- setSelectedModal(null);
318
- })
319
- .catch(() => {
320
- dispatchIfMounted({ type: 'fail' });
321
- });
322
- }, [
323
- setSidebarCollapsedState,
324
- dispatchIfMounted,
325
- compositionId,
326
- outName,
327
- stillImageFormat,
328
- jpegQuality,
329
- frame,
330
- scale,
331
- verbose,
332
- chromiumOptions,
333
- delayRenderTimeout,
334
- envVariables,
335
- inputProps,
336
- setSelectedModal,
337
- ]);
338
- const [everyNthFrameSetting, setEveryNthFrameSetting] = (0, react_1.useState)(() => initialEveryNthFrame);
339
- const everyNthFrame = (0, react_1.useMemo)(() => {
340
- if (codec === 'gif') {
341
- return everyNthFrameSetting;
342
- }
343
- return 1;
344
- }, [codec, everyNthFrameSetting]);
345
- const audioCodec = deriveFinalAudioCodec(codec, userSelectedAudioCodec);
346
- const onClickVideo = (0, react_1.useCallback)(() => {
347
- var _a;
348
- setSidebarCollapsedState({ left: null, right: 'expanded' });
349
- (0, RightPanel_1.persistSelectedPanel)('renders');
350
- (_a = RightPanel_1.rightSidebarTabs.current) === null || _a === void 0 ? void 0 : _a.selectRendersPanel();
351
- dispatchIfMounted({ type: 'start' });
352
- (0, actions_1.addVideoRenderJob)({
353
- compositionId,
354
- outName,
355
- imageFormat: videoImageFormat,
356
- jpegQuality: stillImageFormat === 'jpeg' ? jpegQuality : null,
357
- scale,
358
- verbose,
359
- codec,
360
- concurrency,
361
- crf: qualityControlType === 'crf' ? crf : null,
362
- endFrame,
363
- startFrame,
364
- muted,
365
- enforceAudioTrack,
366
- proResProfile,
367
- pixelFormat,
368
- audioBitrate,
369
- videoBitrate,
370
- everyNthFrame,
371
- numberOfGifLoops,
372
- delayRenderTimeout,
373
- audioCodec,
374
- disallowParallelEncoding,
375
- chromiumOptions,
376
- envVariables: (0, convert_env_variables_1.envVariablesArrayToObject)(envVariables),
377
- inputProps,
378
- })
379
- .then(() => {
380
- dispatchIfMounted({ type: 'succeed' });
381
- setSelectedModal(null);
382
- })
383
- .catch(() => {
384
- dispatchIfMounted({ type: 'fail' });
385
- });
386
- }, [
387
- setSidebarCollapsedState,
388
- dispatchIfMounted,
389
- compositionId,
390
- outName,
391
- videoImageFormat,
392
- stillImageFormat,
393
- jpegQuality,
394
- scale,
395
- verbose,
396
- codec,
397
- concurrency,
398
- qualityControlType,
399
- crf,
400
- endFrame,
401
- startFrame,
402
- muted,
403
- enforceAudioTrack,
404
- proResProfile,
405
- pixelFormat,
406
- audioBitrate,
407
- videoBitrate,
408
- everyNthFrame,
409
- numberOfGifLoops,
410
- delayRenderTimeout,
411
- audioCodec,
412
- disallowParallelEncoding,
413
- chromiumOptions,
414
- envVariables,
415
- inputProps,
416
- setSelectedModal,
417
- ]);
418
- (0, react_1.useEffect)(() => {
419
- return () => {
420
- isMounted.current = false;
421
- };
422
- }, []);
423
- const imageFormatOptions = (0, react_1.useMemo)(() => {
424
- if (renderMode === 'still') {
425
- return [
426
- {
427
- label: 'PNG',
428
- onClick: () => setStillFormat('png'),
429
- key: 'png',
430
- selected: stillImageFormat === 'png',
431
- },
432
- {
433
- label: 'JPEG',
434
- onClick: () => setStillFormat('jpeg'),
435
- key: 'jpeg',
436
- selected: stillImageFormat === 'jpeg',
437
- },
438
- {
439
- label: 'PDF',
440
- onClick: () => setStillFormat('pdf'),
441
- key: 'pdf',
442
- selected: stillImageFormat === 'pdf',
443
- },
444
- {
445
- label: 'WebP',
446
- onClick: () => setStillFormat('webp'),
447
- key: 'webp',
448
- selected: stillImageFormat === 'webp',
449
- },
450
- ];
451
- }
452
- return [
453
- {
454
- label: 'PNG',
455
- onClick: () => setVideoImageFormat('png'),
456
- key: 'png',
457
- selected: videoImageFormat === 'png',
458
- },
459
- {
460
- label: 'JPEG',
461
- onClick: () => setVideoImageFormat('jpeg'),
462
- key: 'jpeg',
463
- selected: videoImageFormat === 'jpeg',
464
- },
465
- ];
466
- }, [stillImageFormat, renderMode, setStillFormat, videoImageFormat]);
467
- const setRenderMode = (0, react_1.useCallback)((newRenderMode) => {
468
- setRenderModeState(newRenderMode);
469
- if (newRenderMode === 'audio') {
470
- setDefaultOutName({
471
- type: 'render',
472
- codec: videoCodecForAudioTab,
473
- audioCodec: deriveFinalAudioCodec(videoCodecForAudioTab, userSelectedAudioCodec),
474
- });
475
- }
476
- if (newRenderMode === 'video') {
477
- setDefaultOutName({
478
- type: 'render',
479
- codec: videoCodecForVideoTab,
480
- audioCodec: deriveFinalAudioCodec(videoCodecForVideoTab, userSelectedAudioCodec),
481
- });
482
- }
483
- if (newRenderMode === 'still') {
484
- setDefaultOutName({ type: 'still', imageFormat: stillImageFormat });
485
- }
486
- }, [
487
- videoCodecForAudioTab,
488
- userSelectedAudioCodec,
489
- deriveFinalAudioCodec,
490
- setDefaultOutName,
491
- stillImageFormat,
492
- videoCodecForVideoTab,
493
- ]);
494
- const renderTabOptions = (0, react_1.useMemo)(() => {
495
- if ((currentComposition === null || currentComposition === void 0 ? void 0 : currentComposition.durationInFrames) < 2) {
496
- return [
497
- {
498
- label: 'Still',
499
- onClick: () => {
500
- setRenderMode('still');
501
- },
502
- key: 'still',
503
- selected: renderMode === 'still',
504
- },
505
- ];
506
- }
507
- return [
508
- {
509
- label: 'Still',
510
- onClick: () => {
511
- setRenderMode('still');
512
- },
513
- key: 'still',
514
- selected: renderMode === 'still',
515
- },
516
- {
517
- label: 'Video',
518
- onClick: () => {
519
- setRenderMode('video');
520
- },
521
- key: 'video',
522
- selected: renderMode === 'video',
523
- },
524
- {
525
- label: 'Audio',
526
- onClick: () => {
527
- setRenderMode('audio');
528
- },
529
- key: 'audio',
530
- selected: renderMode === 'audio',
531
- },
532
- ];
533
- }, [currentComposition === null || currentComposition === void 0 ? void 0 : currentComposition.durationInFrames, renderMode, setRenderMode]);
534
- const outnameValidation = (0, out_name_checker_1.validateOutnameGui)({
535
- outName,
536
- codec,
537
- audioCodec,
538
- renderMode,
539
- stillImageFormat,
540
- });
541
- const { tab, setTab, shownTabs } = (0, render_modal_sections_1.useRenderModalSections)(renderMode, codec);
542
- const { registerKeybinding } = (0, use_keybinding_1.useKeybinding)();
543
- const renderDisabled = state.type === 'load' || !outnameValidation.valid;
544
- const trigger = (0, react_1.useCallback)(() => {
545
- if (renderDisabled) {
546
- return;
547
- }
548
- if (renderMode === 'still') {
549
- onClickStill();
550
- }
551
- else {
552
- onClickVideo();
553
- }
554
- }, [onClickStill, onClickVideo, renderDisabled, renderMode]);
555
- (0, react_1.useEffect)(() => {
556
- registerKeybinding({
557
- callback() {
558
- trigger();
559
- },
560
- commandCtrlKey: true,
561
- key: 'Enter',
562
- event: 'keydown',
563
- preventDefault: true,
564
- triggerIfInputFieldFocused: false,
565
- });
566
- }, [registerKeybinding, trigger]);
567
- return ((0, jsx_runtime_1.jsx)(ModalContainer_1.ModalContainer, { onOutsideClick: onQuit, onEscape: onQuit, children: (0, jsx_runtime_1.jsxs)("div", { style: outer, children: [(0, jsx_runtime_1.jsx)(ModalHeader_1.NewCompHeader, { title: `Render ${compositionId}` }), (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: {
568
- ...buttonStyle,
569
- backgroundColor: outnameValidation.valid
570
- ? 'var(--blue)'
571
- : 'var(--blue-disabled)',
572
- }, 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: rightPanel, className: is_menu_item_1.VERTICAL_SCROLLBAR_CLASSNAME, children: tab === 'general' ? ((0, jsx_runtime_1.jsx)(RenderModalBasic_1.RenderModalBasic, { codec: codec, currentComposition: currentComposition, 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
573
- ? null
574
- : outnameValidation.error.message })) : tab === 'picture' ? ((0, jsx_runtime_1.jsx)(RenderModalPicture_1.RenderModalPicture, { renderMode: renderMode, scale: scale, setScale: setScale, pixelFormat: pixelFormat, setPixelFormat: setPixelFormat, imageFormatOptions: imageFormatOptions, crf: crf, setCrf: setCrf, customTargetVideoBitrate: customTargetVideoBitrate, maxCrf: maxCrf, minCrf: minCrf, jpegQuality: jpegQuality, qualityControlType: qualityControlType, setJpegQuality: setJpegQuality, setCustomTargetVideoBitrateValue: setCustomTargetVideoBitrateValue, setQualityControl: setQualityControl, shouldDisplayCrfOption: shouldDisplayCrfOption, videoImageFormat: videoImageFormat, stillImageFormat: stillImageFormat })) : 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)(RenderModalData_1.RenderModalData, { inputProps: inputProps, setInputProps: setInputProps, composition: currentComposition, compact: false, mayShowSaveButton: false })) : ((0, jsx_runtime_1.jsx)(RenderModalAdvanced_1.RenderModalAdvanced, { concurrency: concurrency, maxConcurrency: maxConcurrency, minConcurrency: minConcurrency, renderMode: renderMode, setConcurrency: setConcurrency, setVerboseLogging: setVerboseLogging, verbose: verbose, 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 })) })] })] }) }));
575
- };
576
- exports.RenderModal = RenderModal;
@@ -1,26 +0,0 @@
1
- import React from 'react';
2
- import type { UiOpenGlOptions } from '../../../required-chromium-options';
3
- export declare type RenderType = 'still' | 'video' | 'audio';
4
- export declare const RenderModalAdvanced: React.FC<{
5
- renderMode: RenderType;
6
- minConcurrency: number;
7
- maxConcurrency: number;
8
- setConcurrency: React.Dispatch<React.SetStateAction<number>>;
9
- concurrency: number;
10
- setVerboseLogging: React.Dispatch<React.SetStateAction<boolean>>;
11
- verbose: boolean;
12
- delayRenderTimeout: number;
13
- setDelayRenderTimeout: React.Dispatch<React.SetStateAction<number>>;
14
- disallowParallelEncoding: boolean;
15
- setDisallowParallelEncoding: React.Dispatch<React.SetStateAction<boolean>>;
16
- setDisableWebSecurity: React.Dispatch<React.SetStateAction<boolean>>;
17
- setIgnoreCertificateErrors: React.Dispatch<React.SetStateAction<boolean>>;
18
- setHeadless: React.Dispatch<React.SetStateAction<boolean>>;
19
- headless: boolean;
20
- ignoreCertificateErrors: boolean;
21
- disableWebSecurity: boolean;
22
- openGlOption: UiOpenGlOptions;
23
- setOpenGlOption: React.Dispatch<React.SetStateAction<UiOpenGlOptions>>;
24
- envVariables: [string, string][];
25
- setEnvVariables: React.Dispatch<React.SetStateAction<[string, string][]>>;
26
- }>;
@@ -1,61 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.RenderModalAdvanced = void 0;
4
- const jsx_runtime_1 = require("react/jsx-runtime");
5
- const react_1 = require("react");
6
- const Checkmark_1 = require("../../icons/Checkmark");
7
- const Checkbox_1 = require("../Checkbox");
8
- const is_menu_item_1 = require("../Menu/is-menu-item");
9
- const ComboBox_1 = require("../NewComposition/ComboBox");
10
- const layout_1 = require("./layout");
11
- const NumberSetting_1 = require("./NumberSetting");
12
- const RenderModalEnvironmentVariables_1 = require("./RenderModalEnvironmentVariables");
13
- const RenderModalHr_1 = require("./RenderModalHr");
14
- const container = {
15
- flex: 1,
16
- overflowY: 'auto',
17
- };
18
- const RenderModalAdvanced = ({ renderMode, maxConcurrency, minConcurrency, setConcurrency, concurrency, setVerboseLogging, verbose, delayRenderTimeout, setDelayRenderTimeout, disallowParallelEncoding, setDisallowParallelEncoding, setDisableWebSecurity, setIgnoreCertificateErrors, setHeadless, headless, ignoreCertificateErrors, disableWebSecurity, openGlOption, setOpenGlOption, setEnvVariables, envVariables, }) => {
19
- const extendedOpenGlOptions = (0, react_1.useMemo)(() => {
20
- return ['angle', 'egl', 'swangle', 'swiftshader', 'default'];
21
- }, []);
22
- const onVerboseLoggingChanged = (0, react_1.useCallback)((e) => {
23
- setVerboseLogging(e.target.checked);
24
- }, [setVerboseLogging]);
25
- const onDisallowParallelEncodingChanged = (0, react_1.useCallback)((e) => {
26
- setDisallowParallelEncoding(e.target.checked);
27
- }, [setDisallowParallelEncoding]);
28
- const onDisableWebSecurityChanged = (0, react_1.useCallback)((e) => {
29
- setDisableWebSecurity(e.target.checked);
30
- }, [setDisableWebSecurity]);
31
- const onIgnoreCertificatErrors = (0, react_1.useCallback)((e) => {
32
- setIgnoreCertificateErrors(e.target.checked);
33
- }, [setIgnoreCertificateErrors]);
34
- const onHeadless = (0, react_1.useCallback)((e) => {
35
- setHeadless(e.target.checked);
36
- }, [setHeadless]);
37
- const openGlOptions = (0, react_1.useMemo)(() => {
38
- return extendedOpenGlOptions.map((option) => {
39
- return {
40
- label: option === 'default' ? 'Default' : option,
41
- onClick: () => setOpenGlOption(option),
42
- key: option,
43
- leftItem: openGlOption === option ? (0, jsx_runtime_1.jsx)(Checkmark_1.Checkmark, {}) : null,
44
- id: option,
45
- keyHint: null,
46
- quickSwitcherLabel: null,
47
- subMenu: null,
48
- type: 'item',
49
- value: option,
50
- };
51
- });
52
- }, [extendedOpenGlOptions, openGlOption, setOpenGlOption]);
53
- return ((0, jsx_runtime_1.jsxs)("div", { style: container, className: is_menu_item_1.VERTICAL_SCROLLBAR_CLASSNAME, children: [renderMode === 'still' ? null : ((0, jsx_runtime_1.jsx)(NumberSetting_1.NumberSetting, { min: minConcurrency, max: maxConcurrency, step: 1, name: "Concurrency", formatter: (w) => `${w}x`, onValueChanged: setConcurrency, value: concurrency })), (0, jsx_runtime_1.jsx)(NumberSetting_1.NumberSetting
54
- // TODO: Should be right aligned
55
- // Also appears in packages/renderer/src/validate-puppeteer-timeout.ts
56
- , {
57
- // TODO: Should be right aligned
58
- // Also appears in packages/renderer/src/validate-puppeteer-timeout.ts
59
- min: 7000, max: 900000, name: "delayRender() timeout", onValueChanged: setDelayRenderTimeout, formatter: (w) => `${w}ms`, step: 1000, value: delayRenderTimeout }), (0, jsx_runtime_1.jsxs)("div", { style: layout_1.optionRow, children: [(0, jsx_runtime_1.jsx)("div", { style: layout_1.label, children: "No parallel encoding" }), (0, jsx_runtime_1.jsx)("div", { style: layout_1.rightRow, children: (0, jsx_runtime_1.jsx)(Checkbox_1.Checkbox, { checked: disallowParallelEncoding, onChange: onDisallowParallelEncodingChanged }) })] }), (0, jsx_runtime_1.jsxs)("div", { style: layout_1.optionRow, children: [(0, jsx_runtime_1.jsx)("div", { style: layout_1.label, children: "Verbose logging" }), (0, jsx_runtime_1.jsx)("div", { style: layout_1.rightRow, children: (0, jsx_runtime_1.jsx)(Checkbox_1.Checkbox, { checked: verbose, onChange: onVerboseLoggingChanged }) })] }), (0, jsx_runtime_1.jsx)(RenderModalHr_1.RenderModalHr, {}), (0, jsx_runtime_1.jsxs)("div", { style: layout_1.optionRow, children: [(0, jsx_runtime_1.jsx)("div", { style: layout_1.label, children: "Disable web security" }), (0, jsx_runtime_1.jsx)("div", { style: layout_1.rightRow, children: (0, jsx_runtime_1.jsx)(Checkbox_1.Checkbox, { checked: disableWebSecurity, onChange: onDisableWebSecurityChanged }) })] }), (0, jsx_runtime_1.jsxs)("div", { style: layout_1.optionRow, children: [(0, jsx_runtime_1.jsx)("div", { style: layout_1.label, children: "Ignore certificate errors " }), (0, jsx_runtime_1.jsx)("div", { style: layout_1.rightRow, children: (0, jsx_runtime_1.jsx)(Checkbox_1.Checkbox, { checked: ignoreCertificateErrors, onChange: onIgnoreCertificatErrors }) })] }), (0, jsx_runtime_1.jsxs)("div", { style: layout_1.optionRow, children: [(0, jsx_runtime_1.jsx)("div", { style: layout_1.label, children: "Headless mode" }), (0, jsx_runtime_1.jsx)("div", { style: layout_1.rightRow, children: (0, jsx_runtime_1.jsx)(Checkbox_1.Checkbox, { checked: headless, onChange: onHeadless }) })] }), (0, jsx_runtime_1.jsxs)("div", { style: layout_1.optionRow, children: [(0, jsx_runtime_1.jsx)("div", { style: layout_1.label, children: "OpenGL render backend" }), (0, jsx_runtime_1.jsx)("div", { style: layout_1.rightRow, children: (0, jsx_runtime_1.jsx)(ComboBox_1.Combobox, { values: openGlOptions, selectedId: openGlOption, title: "OpenGl option" }) })] }), (0, jsx_runtime_1.jsx)(RenderModalHr_1.RenderModalHr, {}), (0, jsx_runtime_1.jsx)(RenderModalEnvironmentVariables_1.RenderModalEnvironmentVariables, { envVariables: envVariables, setEnvVariables: setEnvVariables })] }));
60
- };
61
- exports.RenderModalAdvanced = RenderModalAdvanced;