@remotion/cli 4.0.0-preload.13 → 4.0.0-spawn.13

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 (112) hide show
  1. package/dist/compositions.js +13 -3
  2. package/dist/editor/components/AudioWaveform.js +2 -2
  3. package/dist/editor/components/AudioWaveformBar.js +1 -1
  4. package/dist/editor/components/Canvas.js +1 -1
  5. package/dist/editor/components/CheckboardToggle.js +1 -1
  6. package/dist/editor/components/ClipboardIcon.js +1 -1
  7. package/dist/editor/components/CollapsedCompositionSelector.d.ts +4 -0
  8. package/dist/editor/components/CollapsedCompositionSelector.js +39 -0
  9. package/dist/editor/components/CompositionManager.d.ts +4 -0
  10. package/dist/editor/components/CompositionManager.js +60 -0
  11. package/dist/editor/components/CompositionSelector.js +5 -45
  12. package/dist/editor/components/CompositionSelectorItem.js +3 -3
  13. package/dist/editor/components/ControlButton.js +1 -1
  14. package/dist/editor/components/CopyButton.js +2 -2
  15. package/dist/editor/components/CurrentComposition.js +2 -2
  16. package/dist/editor/components/Editor.js +6 -4
  17. package/dist/editor/components/EditorContent.js +3 -2
  18. package/dist/editor/components/FpsCounter.js +1 -1
  19. package/dist/editor/components/InitialCompositionLoader.d.ts +4 -0
  20. package/dist/editor/components/InitialCompositionLoader.js +60 -0
  21. package/dist/editor/components/KeyboardShortcutsModal.js +1 -1
  22. package/dist/editor/components/LoadingIndicator.js +1 -1
  23. package/dist/editor/components/LoopToggle.js +1 -1
  24. package/dist/editor/components/Menu/MenuDivider.js +1 -1
  25. package/dist/editor/components/Menu/MenuItem.js +3 -3
  26. package/dist/editor/components/Menu/MenuSubItem.js +3 -3
  27. package/dist/editor/components/Menu/SubMenu.js +1 -1
  28. package/dist/editor/components/MenuToolbar.js +68 -5
  29. package/dist/editor/components/ModalContainer.js +1 -1
  30. package/dist/editor/components/ModalHeader.js +1 -1
  31. package/dist/editor/components/MuteToggle.js +1 -1
  32. package/dist/editor/components/NewComposition/CancelButton.js +1 -1
  33. package/dist/editor/components/NewComposition/ComboBox.js +3 -3
  34. package/dist/editor/components/NewComposition/CopyHint.js +1 -1
  35. package/dist/editor/components/NewComposition/InputDragger.js +2 -2
  36. package/dist/editor/components/NewComposition/MenuContent.js +1 -1
  37. package/dist/editor/components/NewComposition/NewCompAspectRatio.js +1 -1
  38. package/dist/editor/components/NewComposition/NewCompDuration.js +1 -1
  39. package/dist/editor/components/NewComposition/NewComposition.js +4 -4
  40. package/dist/editor/components/NewComposition/RemInput.js +1 -1
  41. package/dist/editor/components/NewComposition/ToggleAspectRatio.js +1 -1
  42. package/dist/editor/components/NewComposition/ValidationMessage.js +2 -2
  43. package/dist/editor/components/PlayPause.js +40 -11
  44. package/dist/editor/components/PlaybackRateSelector.js +2 -2
  45. package/dist/editor/components/Preview.js +2 -2
  46. package/dist/editor/components/PreviewToolbar.js +1 -1
  47. package/dist/editor/components/RichTimelineToggle.js +1 -1
  48. package/dist/editor/components/SizeSelector.js +2 -2
  49. package/dist/editor/components/Splitter/SplitterContainer.js +1 -1
  50. package/dist/editor/components/Splitter/SplitterElement.js +4 -2
  51. package/dist/editor/components/Splitter/SplitterHandle.d.ts +4 -1
  52. package/dist/editor/components/Splitter/SplitterHandle.js +28 -7
  53. package/dist/editor/components/Thumbnail.js +1 -1
  54. package/dist/editor/components/TimeValue.js +1 -1
  55. package/dist/editor/components/Timeline/LoopedIndicator.js +2 -2
  56. package/dist/editor/components/Timeline/LoopedTimelineIndicators.js +3 -3
  57. package/dist/editor/components/Timeline/MaxTimelineTracks.js +1 -1
  58. package/dist/editor/components/Timeline/Timeline.js +2 -1
  59. package/dist/editor/components/Timeline/TimelineCollapseToggle.js +2 -2
  60. package/dist/editor/components/Timeline/TimelineDragHandler.js +1 -1
  61. package/dist/editor/components/Timeline/TimelineInOutPointer.js +2 -2
  62. package/dist/editor/components/Timeline/TimelineInOutPointerHandle.js +1 -1
  63. package/dist/editor/components/Timeline/TimelineList.js +1 -1
  64. package/dist/editor/components/Timeline/TimelineListItem.js +1 -1
  65. package/dist/editor/components/Timeline/TimelineSequence.js +1 -1
  66. package/dist/editor/components/Timeline/TimelineSequenceFrame.js +1 -1
  67. package/dist/editor/components/Timeline/TimelineSlider.js +1 -1
  68. package/dist/editor/components/Timeline/TimelineSliderHandle.js +1 -1
  69. package/dist/editor/components/Timeline/TimelineTracks.js +2 -2
  70. package/dist/editor/components/Timeline/TimelineVideoInfo.js +1 -1
  71. package/dist/editor/components/TimelineInOutToggle.js +1 -1
  72. package/dist/editor/components/TopPanel.js +23 -1
  73. package/dist/editor/components/UpdateCheck.js +1 -1
  74. package/dist/editor/components/UpdateModal/UpdateModal.js +1 -1
  75. package/dist/editor/components/layout.js +4 -4
  76. package/dist/editor/helpers/use-compact-ui.d.ts +1 -0
  77. package/dist/editor/helpers/use-compact-ui.js +18 -0
  78. package/dist/editor/icons/Checkmark.js +1 -1
  79. package/dist/editor/icons/caret.d.ts +1 -1
  80. package/dist/editor/icons/caret.js +4 -4
  81. package/dist/editor/icons/film.js +1 -1
  82. package/dist/editor/icons/folder.js +2 -2
  83. package/dist/editor/icons/jump-to-start.d.ts +2 -0
  84. package/dist/editor/icons/jump-to-start.js +8 -0
  85. package/dist/editor/icons/keys.js +3 -3
  86. package/dist/editor/icons/lock.js +2 -2
  87. package/dist/editor/icons/media-volume.js +2 -2
  88. package/dist/editor/icons/pause.js +1 -1
  89. package/dist/editor/icons/play.js +1 -1
  90. package/dist/editor/icons/step-back.js +1 -1
  91. package/dist/editor/icons/step-forward.js +1 -1
  92. package/dist/editor/icons/still.js +1 -1
  93. package/dist/editor/icons/timeline.js +1 -1
  94. package/dist/editor/icons/timelineInOutPointer.js +2 -2
  95. package/dist/editor/state/folders.d.ts +11 -0
  96. package/dist/editor/state/folders.js +23 -0
  97. package/dist/editor/state/highest-z-index.js +2 -2
  98. package/dist/editor/state/keybindings.js +1 -1
  99. package/dist/editor/state/sidebar.d.ts +12 -0
  100. package/dist/editor/state/sidebar.js +40 -0
  101. package/dist/editor/state/z-index.js +1 -1
  102. package/dist/get-cli-options.d.ts +2 -1
  103. package/dist/get-cli-options.js +6 -2
  104. package/dist/index.d.ts +2 -1
  105. package/dist/index.js +5 -1
  106. package/dist/parse-command-line.js +3 -0
  107. package/dist/previewEntry.js +2 -2
  108. package/dist/print-error.js +1 -0
  109. package/dist/render.js +25 -24
  110. package/dist/still.js +45 -15
  111. package/dist/upgrade.js +1 -0
  112. package/package.json +8 -8
@@ -3,6 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.StepBack = void 0;
4
4
  const jsx_runtime_1 = require("react/jsx-runtime");
5
5
  const StepBack = (props) => {
6
- return ((0, jsx_runtime_1.jsx)("svg", { viewBox: "0 0 448 512", ...props, children: (0, jsx_runtime_1.jsx)("path", { fill: "currentColor", d: "M64 468V44c0-6.6 5.4-12 12-12h48c6.6 0 12 5.4 12 12v176.4l195.5-181C352.1 22.3 384 36.6 384 64v384c0 27.4-31.9 41.7-52.5 24.6L136 292.7V468c0 6.6-5.4 12-12 12H76c-6.6 0-12-5.4-12-12z" }, void 0) }, void 0));
6
+ return ((0, jsx_runtime_1.jsx)("svg", { viewBox: "0 0 448 512", ...props, children: (0, jsx_runtime_1.jsx)("path", { fill: "currentColor", d: "M64 468V44c0-6.6 5.4-12 12-12h48c6.6 0 12 5.4 12 12v176.4l195.5-181C352.1 22.3 384 36.6 384 64v384c0 27.4-31.9 41.7-52.5 24.6L136 292.7V468c0 6.6-5.4 12-12 12H76c-6.6 0-12-5.4-12-12z" }) }));
7
7
  };
8
8
  exports.StepBack = StepBack;
@@ -3,6 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.StepForward = void 0;
4
4
  const jsx_runtime_1 = require("react/jsx-runtime");
5
5
  const StepForward = (props) => {
6
- return ((0, jsx_runtime_1.jsx)("svg", { viewBox: "0 0 448 512", ...props, children: (0, jsx_runtime_1.jsx)("path", { fill: "currentColor", d: "M384 44v424c0 6.6-5.4 12-12 12h-48c-6.6 0-12-5.4-12-12V291.6l-195.5 181C95.9 489.7 64 475.4 64 448V64c0-27.4 31.9-41.7 52.5-24.6L312 219.3V44c0-6.6 5.4-12 12-12h48c6.6 0 12 5.4 12 12z" }, void 0) }, void 0));
6
+ return ((0, jsx_runtime_1.jsx)("svg", { viewBox: "0 0 448 512", ...props, children: (0, jsx_runtime_1.jsx)("path", { fill: "currentColor", d: "M384 44v424c0 6.6-5.4 12-12 12h-48c-6.6 0-12-5.4-12-12V291.6l-195.5 181C95.9 489.7 64 475.4 64 448V64c0-27.4 31.9-41.7 52.5-24.6L312 219.3V44c0-6.6 5.4-12 12-12h48c6.6 0 12 5.4 12 12z" }) }));
7
7
  };
8
8
  exports.StepForward = StepForward;
@@ -3,6 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.StillIcon = void 0;
4
4
  const jsx_runtime_1 = require("react/jsx-runtime");
5
5
  const StillIcon = (props) => {
6
- return ((0, jsx_runtime_1.jsx)("svg", { viewBox: "0 0 512 512", ...props, children: (0, jsx_runtime_1.jsx)("path", { fill: "currentColor", d: "M464 64H48C21.49 64 0 85.49 0 112v288c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V112c0-26.51-21.49-48-48-48zm-6 336H54a6 6 0 0 1-6-6V118a6 6 0 0 1 6-6h404a6 6 0 0 1 6 6v276a6 6 0 0 1-6 6zM128 152c-22.091 0-40 17.909-40 40s17.909 40 40 40 40-17.909 40-40-17.909-40-40-40zM96 352h320v-80l-87.515-87.515c-4.686-4.686-12.284-4.686-16.971 0L192 304l-39.515-39.515c-4.686-4.686-12.284-4.686-16.971 0L96 304v48z" }, void 0) }, void 0));
6
+ return ((0, jsx_runtime_1.jsx)("svg", { viewBox: "0 0 512 512", ...props, children: (0, jsx_runtime_1.jsx)("path", { fill: "currentColor", d: "M464 64H48C21.49 64 0 85.49 0 112v288c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V112c0-26.51-21.49-48-48-48zm-6 336H54a6 6 0 0 1-6-6V118a6 6 0 0 1 6-6h404a6 6 0 0 1 6 6v276a6 6 0 0 1-6 6zM128 152c-22.091 0-40 17.909-40 40s17.909 40 40 40 40-17.909 40-40-17.909-40-40-40zM96 352h320v-80l-87.515-87.515c-4.686-4.686-12.284-4.686-16.971 0L192 304l-39.515-39.515c-4.686-4.686-12.284-4.686-16.971 0L96 304v48z" }) }));
7
7
  };
8
8
  exports.StillIcon = StillIcon;
@@ -4,6 +4,6 @@ exports.TimelineIcon = void 0;
4
4
  const jsx_runtime_1 = require("react/jsx-runtime");
5
5
  const TimelineIcon = (props) => {
6
6
  var _a;
7
- return ((0, jsx_runtime_1.jsx)("svg", { "aria-hidden": "true", focusable: "false", "data-prefix": "fas", "data-icon": "stream", className: "svg-inline--fa fa-stream fa-w-16", role: "img", xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 512 512", ...props, children: (0, jsx_runtime_1.jsx)("path", { fill: (_a = props.style) === null || _a === void 0 ? void 0 : _a.color, d: "M16 128h416c8.84 0 16-7.16 16-16V48c0-8.84-7.16-16-16-16H16C7.16 32 0 39.16 0 48v64c0 8.84 7.16 16 16 16zm480 80H80c-8.84 0-16 7.16-16 16v64c0 8.84 7.16 16 16 16h416c8.84 0 16-7.16 16-16v-64c0-8.84-7.16-16-16-16zm-64 176H16c-8.84 0-16 7.16-16 16v64c0 8.84 7.16 16 16 16h416c8.84 0 16-7.16 16-16v-64c0-8.84-7.16-16-16-16z" }, void 0) }, void 0));
7
+ return ((0, jsx_runtime_1.jsx)("svg", { "aria-hidden": "true", focusable: "false", "data-prefix": "fas", "data-icon": "stream", className: "svg-inline--fa fa-stream fa-w-16", role: "img", xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 512 512", ...props, children: (0, jsx_runtime_1.jsx)("path", { fill: (_a = props.style) === null || _a === void 0 ? void 0 : _a.color, d: "M16 128h416c8.84 0 16-7.16 16-16V48c0-8.84-7.16-16-16-16H16C7.16 32 0 39.16 0 48v64c0 8.84 7.16 16 16 16zm480 80H80c-8.84 0-16 7.16-16 16v64c0 8.84 7.16 16 16 16h416c8.84 0 16-7.16 16-16v-64c0-8.84-7.16-16-16-16zm-64 176H16c-8.84 0-16 7.16-16 16v64c0 8.84 7.16 16 16 16h416c8.84 0 16-7.16 16-16v-64c0-8.84-7.16-16-16-16z" }) }));
8
8
  };
9
9
  exports.TimelineIcon = TimelineIcon;
@@ -3,10 +3,10 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.TimelineOutPointer = exports.TimelineInPointer = void 0;
4
4
  const jsx_runtime_1 = require("react/jsx-runtime");
5
5
  const TimelineInPointer = (props) => {
6
- return ((0, jsx_runtime_1.jsx)("svg", { viewBox: "0 0 256 256", fill: "none", ...props, children: (0, jsx_runtime_1.jsx)("path", { d: "M158 25H99V230.5H158", stroke: props.color, strokeWidth: "42", strokeLinecap: "round", strokeLinejoin: "round" }, void 0) }, void 0));
6
+ return ((0, jsx_runtime_1.jsx)("svg", { viewBox: "0 0 256 256", fill: "none", ...props, children: (0, jsx_runtime_1.jsx)("path", { d: "M158 25H99V230.5H158", stroke: props.color, strokeWidth: "42", strokeLinecap: "round", strokeLinejoin: "round" }) }));
7
7
  };
8
8
  exports.TimelineInPointer = TimelineInPointer;
9
9
  const TimelineOutPointer = (props) => {
10
- return ((0, jsx_runtime_1.jsx)("svg", { viewBox: "0 0 256 256", fill: "none", ...props, children: (0, jsx_runtime_1.jsx)("path", { d: "M98 25H157V230.5H98", stroke: props.color, strokeWidth: "42", strokeLinecap: "round", strokeLinejoin: "round" }, void 0) }, void 0));
10
+ return ((0, jsx_runtime_1.jsx)("svg", { viewBox: "0 0 256 256", fill: "none", ...props, children: (0, jsx_runtime_1.jsx)("path", { d: "M98 25H157V230.5H98", stroke: props.color, strokeWidth: "42", strokeLinecap: "round", strokeLinejoin: "round" }) }));
11
11
  };
12
12
  exports.TimelineOutPointer = TimelineOutPointer;
@@ -0,0 +1,11 @@
1
+ import React from 'react';
2
+ import { ExpandedFoldersState } from '../helpers/persist-open-folders';
3
+ declare type TFolderContext = {
4
+ foldersExpanded: ExpandedFoldersState;
5
+ setFoldersExpanded: React.Dispatch<React.SetStateAction<ExpandedFoldersState>>;
6
+ };
7
+ export declare const FolderContext: React.Context<TFolderContext>;
8
+ export declare const FolderContextProvider: React.FC<{
9
+ children: React.ReactNode;
10
+ }>;
11
+ export {};
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.FolderContextProvider = exports.FolderContext = void 0;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const react_1 = require("react");
6
+ const persist_open_folders_1 = require("../helpers/persist-open-folders");
7
+ exports.FolderContext = (0, react_1.createContext)({
8
+ foldersExpanded: {},
9
+ setFoldersExpanded: () => {
10
+ throw new Error('default state');
11
+ },
12
+ });
13
+ const FolderContextProvider = ({ children }) => {
14
+ const [foldersExpanded, setFoldersExpanded] = (0, react_1.useState)((0, persist_open_folders_1.loadExpandedFolders)());
15
+ const value = (0, react_1.useMemo)(() => {
16
+ return {
17
+ foldersExpanded,
18
+ setFoldersExpanded,
19
+ };
20
+ }, [foldersExpanded]);
21
+ return ((0, jsx_runtime_1.jsx)(exports.FolderContext.Provider, { value: value, children: children }));
22
+ };
23
+ exports.FolderContextProvider = FolderContextProvider;
@@ -19,7 +19,7 @@ const HighestZIndexProvider = ({ children }) => {
19
19
  if (index === -1) {
20
20
  throw new Error('did not find z-index ' + newIndex);
21
21
  }
22
- return prev.filter((n, i) => i !== index);
22
+ return prev.filter((_n, i) => i !== index);
23
23
  });
24
24
  }, []);
25
25
  const highestIndex = Math.max(...zIndexes);
@@ -30,6 +30,6 @@ const HighestZIndexProvider = ({ children }) => {
30
30
  unregisterZIndex,
31
31
  };
32
32
  }, [registerZIndex, unregisterZIndex, highestIndex]);
33
- return ((0, jsx_runtime_1.jsx)(exports.HighestZIndexContext.Provider, { value: value, children: children }, void 0));
33
+ return ((0, jsx_runtime_1.jsx)(exports.HighestZIndexContext.Provider, { value: value, children: children }));
34
34
  };
35
35
  exports.HighestZIndexProvider = HighestZIndexProvider;
@@ -36,6 +36,6 @@ const KeybindingContextProvider = ({ children }) => {
36
36
  unregisterPane,
37
37
  };
38
38
  }, [registerKeybinding, unregisterKeybinding, unregisterPane]);
39
- return ((0, jsx_runtime_1.jsx)(exports.KeybindingContext.Provider, { value: value, children: children }, void 0));
39
+ return ((0, jsx_runtime_1.jsx)(exports.KeybindingContext.Provider, { value: value, children: children }));
40
40
  };
41
41
  exports.KeybindingContextProvider = KeybindingContextProvider;
@@ -0,0 +1,12 @@
1
+ import React from 'react';
2
+ export declare type SidebarCollapsedState = 'collapsed' | 'expanded' | 'responsive';
3
+ declare type Context = {
4
+ sidebarCollapsedState: SidebarCollapsedState;
5
+ setSidebarCollapsedState: (newState: SidebarCollapsedState) => void;
6
+ };
7
+ export declare const getSavedCollapsedState: () => SidebarCollapsedState;
8
+ export declare const SidebarContext: React.Context<Context>;
9
+ export declare const SidebarContextProvider: React.FC<{
10
+ children: React.ReactNode;
11
+ }>;
12
+ export {};
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SidebarContextProvider = exports.SidebarContext = exports.getSavedCollapsedState = void 0;
4
+ const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const react_1 = require("react");
6
+ const storageKey = 'remotion.sidebarCollapsing';
7
+ const getSavedCollapsedState = () => {
8
+ const state = window.localStorage.getItem(storageKey);
9
+ if (state === 'collapsed') {
10
+ return 'collapsed';
11
+ }
12
+ if (state === 'expanded') {
13
+ return 'expanded';
14
+ }
15
+ return 'responsive';
16
+ };
17
+ exports.getSavedCollapsedState = getSavedCollapsedState;
18
+ const setSavedCollapsedState = (type) => {
19
+ window.localStorage.setItem(storageKey, type);
20
+ };
21
+ exports.SidebarContext = (0, react_1.createContext)({
22
+ sidebarCollapsedState: 'collapsed',
23
+ setSidebarCollapsedState: () => {
24
+ throw new Error('sidebar collapsed state');
25
+ },
26
+ });
27
+ const SidebarContextProvider = ({ children }) => {
28
+ const [sidebarCollapsedState, setSidebarCollapsedState] = (0, react_1.useState)(() => (0, exports.getSavedCollapsedState)());
29
+ const value = (0, react_1.useMemo)(() => {
30
+ return {
31
+ setSidebarCollapsedState: (state) => {
32
+ setSidebarCollapsedState(state);
33
+ setSavedCollapsedState(state);
34
+ },
35
+ sidebarCollapsedState,
36
+ };
37
+ }, [sidebarCollapsedState]);
38
+ return ((0, jsx_runtime_1.jsx)(exports.SidebarContext.Provider, { value: value, children: children }));
39
+ };
40
+ exports.SidebarContextProvider = SidebarContextProvider;
@@ -49,7 +49,7 @@ const HigherZIndex = ({ children, onEscape, onOutsideClick }) => {
49
49
  currentIndex,
50
50
  };
51
51
  }, [currentIndex]);
52
- return ((0, jsx_runtime_1.jsxs)(exports.ZIndexContext.Provider, { value: value, children: [(0, jsx_runtime_1.jsx)(EscapeHook, { onEscape: onEscape }, void 0), (0, jsx_runtime_1.jsx)("div", { ref: containerRef, children: children }, void 0)] }, void 0));
52
+ return ((0, jsx_runtime_1.jsxs)(exports.ZIndexContext.Provider, { value: value, children: [(0, jsx_runtime_1.jsx)(EscapeHook, { onEscape: onEscape }), (0, jsx_runtime_1.jsx)("div", { ref: containerRef, children: children })] }));
53
53
  };
54
54
  exports.HigherZIndex = HigherZIndex;
55
55
  const useZIndex = () => {
@@ -2,7 +2,7 @@ import { ChromiumOptions } from '@remotion/renderer';
2
2
  import { BrowserExecutable, FrameRange } from 'remotion';
3
3
  export declare const getCliOptions: (options: {
4
4
  isLambda: boolean;
5
- type: 'still' | 'series';
5
+ type: 'still' | 'series' | 'get-compositions';
6
6
  }) => Promise<{
7
7
  puppeteerTimeout: number;
8
8
  parallelism: number | null;
@@ -25,4 +25,5 @@ export declare const getCliOptions: (options: {
25
25
  logLevel: "verbose" | "info" | "warn" | "error";
26
26
  scale: number;
27
27
  chromiumOptions: ChromiumOptions;
28
+ port: number | null;
28
29
  }>;
@@ -117,14 +117,16 @@ const getAndValidateBrowser = async (browserExecutable) => {
117
117
  const getCliOptions = async (options) => {
118
118
  var _a;
119
119
  const frameRange = getAndValidateFrameRange();
120
- const codec = await getFinalCodec({ isLambda: options.isLambda });
120
+ const codec = options.type === 'get-compositions'
121
+ ? 'h264'
122
+ : await getFinalCodec({ isLambda: options.isLambda });
121
123
  const shouldOutputImageSequence = options.type === 'still'
122
124
  ? true
123
125
  : await getAndValidateShouldOutputImageSequence({
124
126
  frameRange,
125
127
  isLambda: options.isLambda,
126
128
  });
127
- const outputFile = options.isLambda
129
+ const outputFile = options.isLambda || options.type === 'get-compositions'
128
130
  ? null
129
131
  : (0, get_filename_1.getOutputFilename)({
130
132
  codec,
@@ -143,6 +145,7 @@ const getCliOptions = async (options) => {
143
145
  const browserExecutable = remotion_1.Internals.getBrowserExecutable();
144
146
  const ffmpegExecutable = remotion_1.Internals.getCustomFfmpegExecutable();
145
147
  const scale = remotion_1.Internals.getScale();
148
+ const port = remotion_1.Internals.getServerPort();
146
149
  const chromiumOptions = {
147
150
  disableWebSecurity: remotion_1.Internals.getChromiumDisableWebSecurity(),
148
151
  ignoreCertificateErrors: remotion_1.Internals.getIgnoreCertificateErrors(),
@@ -173,6 +176,7 @@ const getCliOptions = async (options) => {
173
176
  logLevel: remotion_1.Internals.Logging.getLogLevel(),
174
177
  scale,
175
178
  chromiumOptions,
179
+ port: port !== null && port !== void 0 ? port : null,
176
180
  };
177
181
  };
178
182
  exports.getCliOptions = getCliOptions;
package/dist/index.d.ts CHANGED
@@ -27,7 +27,7 @@ export declare const CliInternals: {
27
27
  loadConfigFile: (configFileName: string, isJavascript: boolean) => Promise<string | null>;
28
28
  getCliOptions: (options: {
29
29
  isLambda: boolean;
30
- type: "still" | "series";
30
+ type: "still" | "series" | "get-compositions";
31
31
  }) => Promise<{
32
32
  puppeteerTimeout: number;
33
33
  parallelism: number | null;
@@ -50,6 +50,7 @@ export declare const CliInternals: {
50
50
  logLevel: "verbose" | "info" | "warn" | "error";
51
51
  scale: number;
52
52
  chromiumOptions: import("@remotion/renderer").ChromiumOptions;
53
+ port: number | null;
53
54
  }>;
54
55
  parseCommandLine: (type: "sequence" | "still" | "lambda" | "preview" | "versions") => void;
55
56
  loadConfig: () => Promise<string | null>;
package/dist/index.js CHANGED
@@ -1,7 +1,11 @@
1
1
  "use strict";
2
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
3
  if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
5
9
  }) : (function(o, m, k, k2) {
6
10
  if (k2 === undefined) k2 = k;
7
11
  o[k2] = m[k];
@@ -113,6 +113,9 @@ const parseCommandLine = (type) => {
113
113
  if (typeof exports.parsedCli.scale !== 'undefined') {
114
114
  remotion_1.Config.Rendering.setScale(exports.parsedCli.scale);
115
115
  }
116
+ if (typeof exports.parsedCli.port !== 'undefined') {
117
+ remotion_1.Config.Bundling.setPort(exports.parsedCli.port);
118
+ }
116
119
  };
117
120
  exports.parseCommandLine = parseCommandLine;
118
121
  const quietFlagProvided = () => exports.parsedCli.quiet || exports.parsedCli.q;
@@ -9,10 +9,10 @@ const remotion_1 = require("remotion");
9
9
  require("../styles/styles.css");
10
10
  const Editor_1 = require("./editor/components/Editor");
11
11
  remotion_1.Internals.CSSUtils.injectCSS(remotion_1.Internals.CSSUtils.makeDefaultCSS(null, '#1f2428'));
12
- const content = ((0, jsx_runtime_1.jsx)(remotion_1.Internals.RemotionRoot, { children: (0, jsx_runtime_1.jsx)(Editor_1.Editor, {}, void 0) }, void 0));
12
+ const content = ((0, jsx_runtime_1.jsx)(remotion_1.Internals.RemotionRoot, { children: (0, jsx_runtime_1.jsx)(Editor_1.Editor, {}) }));
13
13
  if (client_1.default.createRoot) {
14
14
  client_1.default.createRoot(remotion_1.Internals.getPreviewDomElement()).render(content);
15
15
  }
16
16
  else {
17
- client_1.default.render((0, jsx_runtime_1.jsx)(remotion_1.Internals.RemotionRoot, { children: (0, jsx_runtime_1.jsx)(Editor_1.Editor, {}, void 0) }, void 0), remotion_1.Internals.getPreviewDomElement());
17
+ client_1.default.render((0, jsx_runtime_1.jsx)(remotion_1.Internals.RemotionRoot, { children: (0, jsx_runtime_1.jsx)(Editor_1.Editor, {}) }), remotion_1.Internals.getPreviewDomElement());
18
18
  }
@@ -25,6 +25,7 @@ const printError = async (err) => {
25
25
  }
26
26
  catch (e) {
27
27
  output.update(chalk_1.default.red('(Error occurred symbolicating stack trace - printing minified stack trace)\n'));
28
+ log_1.Log.error();
28
29
  log_1.Log.error(err.stack || err);
29
30
  }
30
31
  return;
package/dist/render.js CHANGED
@@ -31,13 +31,13 @@ const render = async () => {
31
31
  ? file
32
32
  : path_1.default.join(process.cwd(), file);
33
33
  await (0, initialize_render_cli_1.initializeRenderCli)('sequence');
34
- const { codec, proResProfile, parallelism, frameRange, shouldOutputImageSequence, absoluteOutputFile, overwrite, inputProps, envVariables, quality, browser, crf, pixelFormat, imageFormat, browserExecutable, ffmpegExecutable, scale, chromiumOptions, } = await (0, get_cli_options_1.getCliOptions)({ isLambda: false, type: 'series' });
34
+ const { codec, proResProfile, parallelism, frameRange, shouldOutputImageSequence, absoluteOutputFile, overwrite, inputProps, envVariables, quality, browser, crf, pixelFormat, imageFormat, browserExecutable, ffmpegExecutable, scale, chromiumOptions, port, puppeteerTimeout, } = await (0, get_cli_options_1.getCliOptions)({ isLambda: false, type: 'series' });
35
35
  if (!absoluteOutputFile) {
36
36
  throw new Error('assertion error - expected absoluteOutputFile to not be null');
37
37
  }
38
38
  log_1.Log.verbose('Browser executable: ', browserExecutable);
39
39
  await (0, validate_ffmpeg_version_1.checkAndValidateFfmpegVersion)({
40
- ffmpegExecutable: remotion_1.Internals.getCustomFfmpegExecutable(),
40
+ ffmpegExecutable,
41
41
  });
42
42
  const browserInstance = (0, renderer_1.openBrowser)(browser, {
43
43
  browserExecutable,
@@ -53,9 +53,22 @@ const render = async () => {
53
53
  const urlOrBundle = renderer_1.RenderInternals.isServeUrl(fullPath)
54
54
  ? fullPath
55
55
  : await (0, setup_cache_1.bundleOnCli)(fullPath, steps);
56
- const { serveUrl, closeServer } = await renderer_1.RenderInternals.prepareServer(urlOrBundle);
56
+ const onDownload = (src) => {
57
+ const id = Math.random();
58
+ const download = {
59
+ id,
60
+ name: src,
61
+ progress: 0,
62
+ };
63
+ downloads.push(download);
64
+ updateRenderProgress();
65
+ return ({ percent }) => {
66
+ download.progress = percent;
67
+ updateRenderProgress();
68
+ };
69
+ };
57
70
  const puppeteerInstance = await browserInstance;
58
- const comps = await (0, renderer_1.getCompositions)(serveUrl, {
71
+ const comps = await (0, renderer_1.getCompositions)(urlOrBundle, {
59
72
  inputProps,
60
73
  puppeteerInstance,
61
74
  envVariables,
@@ -140,16 +153,19 @@ const render = async () => {
140
153
  }
141
154
  },
142
155
  outputDir,
143
- serveUrl,
156
+ serveUrl: urlOrBundle,
144
157
  dumpBrowserLogs: remotion_1.Internals.Logging.isEqualOrBelowLogLevel(remotion_1.Internals.Logging.getLogLevel(), 'verbose'),
145
158
  envVariables,
146
159
  frameRange,
147
160
  parallelism,
148
161
  puppeteerInstance,
149
162
  quality,
150
- timeoutInMilliseconds: remotion_1.Internals.getCurrentPuppeteerTimeout(),
163
+ timeoutInMilliseconds: puppeteerTimeout,
151
164
  chromiumOptions,
152
165
  scale,
166
+ ffmpegExecutable,
167
+ browserExecutable,
168
+ port,
153
169
  });
154
170
  renderedDoneIn = Date.now() - startTime;
155
171
  updateRenderProgress();
@@ -182,21 +198,8 @@ const render = async () => {
182
198
  pixelFormat,
183
199
  proResProfile,
184
200
  quality,
185
- serveUrl,
186
- onDownload: (src) => {
187
- const id = Math.random();
188
- const download = {
189
- id,
190
- name: src,
191
- progress: 0,
192
- };
193
- downloads.push(download);
194
- updateRenderProgress();
195
- return ({ percent }) => {
196
- download.progress = percent;
197
- updateRenderProgress();
198
- };
199
- },
201
+ serveUrl: urlOrBundle,
202
+ onDownload,
200
203
  dumpBrowserLogs: remotion_1.Internals.Logging.isEqualOrBelowLogLevel(remotion_1.Internals.Logging.getLogLevel(), 'verbose'),
201
204
  onStart: ({ frameCount }) => {
202
205
  totalFrames = frameCount;
@@ -204,6 +207,7 @@ const render = async () => {
204
207
  chromiumOptions,
205
208
  timeoutInMilliseconds: remotion_1.Internals.getCurrentPuppeteerTimeout(),
206
209
  scale,
210
+ port,
207
211
  });
208
212
  log_1.Log.info();
209
213
  log_1.Log.info();
@@ -225,8 +229,5 @@ const render = async () => {
225
229
  log_1.Log.warn('Do you have minimum required Node.js version?');
226
230
  }
227
231
  log_1.Log.info(chalk_1.default.green('\nYour video is ready!'));
228
- closeServer().catch((err) => {
229
- log_1.Log.error('Could not close web server', err);
230
- });
231
232
  };
232
233
  exports.render = render;
package/dist/still.js CHANGED
@@ -33,7 +33,7 @@ const still = async () => {
33
33
  log_1.Log.verbose('Output file has a PNG extension, therefore setting the image format to PNG.');
34
34
  remotion_1.Config.Rendering.setImageFormat('png');
35
35
  }
36
- const { inputProps, envVariables, quality, browser, imageFormat, stillFrame, browserExecutable, chromiumOptions, scale, } = await (0, get_cli_options_1.getCliOptions)({ isLambda: false, type: 'still' });
36
+ const { inputProps, envVariables, quality, browser, imageFormat, stillFrame, browserExecutable, chromiumOptions, scale, ffmpegExecutable, overwrite, puppeteerTimeout, port, } = await (0, get_cli_options_1.getCliOptions)({ isLambda: false, type: 'still' });
37
37
  log_1.Log.verbose('Browser executable: ', browserExecutable);
38
38
  if (imageFormat === 'none') {
39
39
  log_1.Log.error('No image format was selected - this is probably an error in Remotion - please post your command on Github Issues for help.');
@@ -63,14 +63,16 @@ const still = async () => {
63
63
  const urlOrBundle = renderer_1.RenderInternals.isServeUrl(fullPath)
64
64
  ? Promise.resolve(fullPath)
65
65
  : await (0, setup_cache_1.bundleOnCli)(fullPath, steps);
66
- const { serveUrl, closeServer } = await renderer_1.RenderInternals.prepareServer(await urlOrBundle);
67
66
  const puppeteerInstance = await browserInstance;
68
- const comps = await (0, renderer_1.getCompositions)(serveUrl, {
67
+ const comps = await (0, renderer_1.getCompositions)(await urlOrBundle, {
69
68
  inputProps,
70
69
  puppeteerInstance,
71
70
  envVariables,
72
- timeoutInMilliseconds: remotion_1.Internals.getCurrentPuppeteerTimeout(),
71
+ timeoutInMilliseconds: puppeteerTimeout,
73
72
  chromiumOptions,
73
+ port,
74
+ browserExecutable,
75
+ ffmpegExecutable,
74
76
  });
75
77
  const compositionId = (0, get_composition_id_1.getCompositionId)(comps);
76
78
  const composition = comps.find((c) => c.id === compositionId);
@@ -79,11 +81,42 @@ const still = async () => {
79
81
  }
80
82
  const renderProgress = (0, progress_bar_1.createOverwriteableCliOutput)((0, parse_command_line_1.quietFlagProvided)());
81
83
  const renderStart = Date.now();
84
+ const downloads = [];
85
+ let frames = 0;
86
+ const totalFrames = 1;
87
+ const updateProgress = () => {
88
+ renderProgress.update((0, progress_bar_1.makeRenderingAndStitchingProgress)({
89
+ rendering: {
90
+ frames,
91
+ concurrency: 1,
92
+ doneIn: frames === totalFrames ? Date.now() - renderStart : null,
93
+ steps,
94
+ totalFrames,
95
+ },
96
+ downloads,
97
+ stitching: null,
98
+ }));
99
+ };
100
+ updateProgress();
101
+ const onDownload = (src) => {
102
+ const id = Math.random();
103
+ const download = {
104
+ id,
105
+ name: src,
106
+ progress: 0,
107
+ };
108
+ downloads.push(download);
109
+ updateProgress();
110
+ return ({ percent }) => {
111
+ download.progress = percent;
112
+ updateProgress();
113
+ };
114
+ };
82
115
  await (0, renderer_1.renderStill)({
83
116
  composition,
84
117
  frame: stillFrame,
85
118
  output: userOutput,
86
- serveUrl,
119
+ serveUrl: await urlOrBundle,
87
120
  quality,
88
121
  dumpBrowserLogs: remotion_1.Internals.Logging.isEqualOrBelowLogLevel(remotion_1.Internals.Logging.getLogLevel(), 'verbose'),
89
122
  envVariables,
@@ -92,18 +125,15 @@ const still = async () => {
92
125
  chromiumOptions,
93
126
  timeoutInMilliseconds: remotion_1.Internals.getCurrentPuppeteerTimeout(),
94
127
  scale,
128
+ ffmpegExecutable,
129
+ browserExecutable,
130
+ overwrite,
131
+ onDownload,
95
132
  });
133
+ frames = 1;
134
+ updateProgress();
135
+ log_1.Log.info();
96
136
  const closeBrowserPromise = puppeteerInstance.close();
97
- closeServer().catch((err) => {
98
- log_1.Log.error('Could not close web server', err);
99
- });
100
- renderProgress.update((0, progress_bar_1.makeRenderingProgress)({
101
- frames: 1,
102
- concurrency: 1,
103
- doneIn: Date.now() - renderStart,
104
- steps,
105
- totalFrames: 1,
106
- }));
107
137
  log_1.Log.info(chalk_1.default.green('\nYour still frame is ready!'));
108
138
  const seconds = Math.round((Date.now() - startTime) / 1000);
109
139
  log_1.Log.info([
package/dist/upgrade.js CHANGED
@@ -43,6 +43,7 @@ const upgrade = async () => {
43
43
  '@remotion/media-utils',
44
44
  '@remotion/babel-loader',
45
45
  '@remotion/lambda',
46
+ '@remotion/preload',
46
47
  '@remotion/three',
47
48
  '@remotion/gif',
48
49
  'remotion',
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@remotion/cli",
3
- "version": "4.0.0-preload.13+f7b159495",
3
+ "version": "4.0.0-spawn.13+5f3607e8b",
4
4
  "description": "CLI for Remotion",
5
5
  "main": "dist/index.js",
6
6
  "sideEffects": false,
@@ -23,16 +23,16 @@
23
23
  "author": "Jonny Burger <jonny@remotion.dev>",
24
24
  "license": "SEE LICENSE IN LICENSE.md",
25
25
  "dependencies": {
26
- "@remotion/bundler": "4.0.0-preload.13+f7b159495",
27
- "@remotion/media-utils": "4.0.0-preload.13+f7b159495",
28
- "@remotion/player": "4.0.0-preload.13+f7b159495",
29
- "@remotion/renderer": "4.0.0-preload.13+f7b159495",
26
+ "@remotion/bundler": "4.0.0-spawn.13+5f3607e8b",
27
+ "@remotion/media-utils": "4.0.0-spawn.13+5f3607e8b",
28
+ "@remotion/player": "4.0.0-spawn.13+5f3607e8b",
29
+ "@remotion/renderer": "4.0.0-spawn.13+5f3607e8b",
30
30
  "better-opn": "2.1.1",
31
31
  "chalk": "4.1.2",
32
32
  "dotenv": "9.0.2",
33
33
  "execa": "5.1.1",
34
34
  "minimist": "1.2.6",
35
- "remotion": "4.0.0-preload.13+f7b159495",
35
+ "remotion": "4.0.0-spawn.13+5f3607e8b",
36
36
  "semver": "7.3.5",
37
37
  "webpack": "5.72.0"
38
38
  },
@@ -59,7 +59,7 @@
59
59
  "react": "^18.0.0",
60
60
  "react-dom": "^18.0.0",
61
61
  "ts-jest": "^27.0.5",
62
- "typescript": "^4.5.5"
62
+ "typescript": "^4.7.0"
63
63
  },
64
64
  "keywords": [
65
65
  "remotion",
@@ -72,5 +72,5 @@
72
72
  "publishConfig": {
73
73
  "access": "public"
74
74
  },
75
- "gitHead": "f7b1594951e881444050f2f9d4af8d442bbec942"
75
+ "gitHead": "5f3607e8b8b958cf0604798639c8d901e9f2a295"
76
76
  }