@remotion/studio 4.0.518 → 4.0.520
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.
- package/dist/api/visual-control.js +2 -2
- package/dist/components/AppLaunchButton.d.ts +16 -0
- package/dist/components/AppLaunchButton.js +90 -0
- package/dist/components/AssetSelector.js +7 -6
- package/dist/components/AssetSelectorItem.d.ts +12 -0
- package/dist/components/AssetSelectorItem.js +180 -62
- package/dist/components/AudioWaveform.js +6 -1
- package/dist/components/Button.js +20 -7
- package/dist/components/Canvas.js +117 -92
- package/dist/components/CanvasOrLoading.js +7 -7
- package/dist/components/CodingAgentButton.d.ts +7 -0
- package/dist/components/CodingAgentButton.js +59 -0
- package/dist/components/CompositionContextButton.d.ts +1 -0
- package/dist/components/CompositionContextButton.js +6 -3
- package/dist/components/CompositionSelector.js +21 -20
- package/dist/components/CompositionSelectorItem.js +23 -35
- package/dist/components/ConfigureLicenseModal.js +4 -48
- package/dist/components/CurrentAsset.js +1 -1
- package/dist/components/CurrentCompositionSideEffects.js +5 -0
- package/dist/components/ElementInstallConfirmation.d.ts +2 -10
- package/dist/components/ElementInstallConfirmation.js +339 -32
- package/dist/components/FixComputedValueModal.js +5 -131
- package/dist/components/FpsCounter.js +1 -1
- package/dist/components/FramePersistor.js +1 -1
- package/dist/components/InitialCompositionLoader.js +3 -2
- package/dist/components/InspectorOpenInEditor.js +48 -33
- package/dist/components/InspectorPanel/CompositionInspector.js +35 -3
- package/dist/components/InspectorPanel/CompositionInspectorHeader.js +22 -14
- package/dist/components/InspectorPanel/ConnectedCompositionsSection.js +3 -1
- package/dist/components/InspectorPanel/SequenceInspectorHeader.d.ts +1 -1
- package/dist/components/InspectorPanel/SequenceInspectorHeader.js +10 -5
- package/dist/components/InspectorPanel/SequenceSelectionInspector.js +5 -4
- package/dist/components/InspectorPanel/common.js +1 -0
- package/dist/components/InspectorPanel/styles.js +1 -0
- package/dist/components/InspectorPanel/use-composition-actions.js +5 -8
- package/dist/components/InspectorSequenceSection.js +8 -3
- package/dist/components/InspectorSourceLocation.js +5 -1
- package/dist/components/KnownBugs.d.ts +1 -1
- package/dist/components/KnownBugs.js +1 -1
- package/dist/components/LicenseExplanation.d.ts +2 -0
- package/dist/components/LicenseExplanation.js +63 -0
- package/dist/components/MenuToolbar.js +7 -1
- package/dist/components/Modals.js +1 -2
- package/dist/components/NewComposition/InputDragger.js +29 -2
- package/dist/components/NewComposition/NewCompDuration.js +1 -1
- package/dist/components/NewComposition/NewComposition.d.ts +23 -0
- package/dist/components/NewComposition/NewComposition.js +217 -80
- package/dist/components/{UpdateModal/OpenIssueButton.js → OpenIssueButton.js} +1 -1
- package/dist/components/PlayPause.js +2 -13
- package/dist/components/PreviewToolbar.js +1 -1
- package/dist/components/QuickSwitcher/ExplorerQuickSwitcherTrigger.js +2 -1
- package/dist/components/QuickSwitcher/QuickSwitcherContent.js +50 -28
- package/dist/components/QuickSwitcher/QuickSwitcherResult.d.ts +14 -1
- package/dist/components/QuickSwitcher/QuickSwitcherResult.js +64 -9
- package/dist/components/QuickSwitcher/composition-search.d.ts +16 -0
- package/dist/components/QuickSwitcher/composition-search.js +136 -0
- package/dist/components/RenderQueue/actions.d.ts +1 -0
- package/dist/components/RenderQueue/actions.js +5 -1
- package/dist/components/ResetZoomButton.js +17 -2
- package/dist/components/SelectedOutlineCanvasRotation.js +27 -1
- package/dist/components/SelectedOutlineElement.js +12 -31
- package/dist/components/SelectedOutlineKeyboardControls.d.ts +2 -2
- package/dist/components/SelectedOutlineOverlay.d.ts +3 -1
- package/dist/components/SelectedOutlineOverlay.js +21 -26
- package/dist/components/SelectedOutlinePolygon.d.ts +1 -0
- package/dist/components/SelectedOutlinePolygon.js +12 -4
- package/dist/components/SelectedOutlineRenderer.js +88 -21
- package/dist/components/SettingsContext.js +2 -1
- package/dist/components/SettingsModal.d.ts +1 -1
- package/dist/components/SettingsModal.js +19 -3
- package/dist/components/SidebarRenderButton.d.ts +1 -0
- package/dist/components/SidebarRenderButton.js +14 -5
- package/dist/components/Timeline/SequencePropsObserver.js +29 -14
- package/dist/components/Timeline/Timeline.js +2 -1
- package/dist/components/Timeline/TimelineAssetField.js +1 -0
- package/dist/components/Timeline/TimelineDeleteKeybindings.js +5 -90
- package/dist/components/Timeline/TimelineDragHandler.js +18 -8
- package/dist/components/Timeline/TimelineInOutDragHandler.js +2 -3
- package/dist/components/Timeline/TimelineKeyframeControls.js +3 -1
- package/dist/components/Timeline/TimelinePinchZoom.js +14 -4
- package/dist/components/Timeline/TimelinePlayCursorSyncer.js +8 -4
- package/dist/components/Timeline/TimelineRowChrome.js +4 -2
- package/dist/components/Timeline/TimelineSequence.js +52 -45
- package/dist/components/Timeline/TimelineSequenceItem.js +44 -32
- package/dist/components/Timeline/TimelineSequenceRightEdgeDragHandle.js +3 -3
- package/dist/components/Timeline/TimelineSlider.js +2 -2
- package/dist/components/Timeline/TimelineStack/get-stack.d.ts +1 -0
- package/dist/components/Timeline/TimelineStack/get-stack.js +35 -3
- package/dist/components/Timeline/TimelineWidthProvider.js +15 -8
- package/dist/components/Timeline/TimelineZoomControls.js +25 -8
- package/dist/components/Timeline/delete-selected-timeline-item.js +2 -2
- package/dist/components/Timeline/duplicate-selected-timeline-item.js +23 -25
- package/dist/components/Timeline/get-sequence-context-menu-items.d.ts +6 -0
- package/dist/components/Timeline/get-sequence-context-menu-items.js +34 -1
- package/dist/components/Timeline/sequence-props-subscription-store.d.ts +2 -0
- package/dist/components/Timeline/sequence-props-subscription-store.js +22 -1
- package/dist/components/Timeline/timeline-scroll-logic.d.ts +1 -0
- package/dist/components/Timeline/timeline-scroll-logic.js +21 -17
- package/dist/components/Timeline/use-delete-timeline-items.d.ts +1 -0
- package/dist/components/Timeline/use-delete-timeline-items.js +118 -0
- package/dist/components/Timeline/use-sequence-props-subscription.js +7 -0
- package/dist/components/Timeline/use-timeline-asset-drop.js +8 -14
- package/dist/components/TimelineCombobox.js +1 -0
- package/dist/components/UpdateCheck.d.ts +0 -8
- package/dist/components/UpdateCheck.js +7 -54
- package/dist/components/UpdateStatusContext.d.ts +18 -0
- package/dist/components/UpdateStatusContext.js +74 -0
- package/dist/components/UpdatesSettings.d.ts +2 -0
- package/dist/components/UpdatesSettings.js +251 -0
- package/dist/components/WebMcp.js +64 -11
- package/dist/components/ZoomPersistor.js +2 -2
- package/dist/components/composition-drag-data.d.ts +36 -0
- package/dist/components/composition-drag-data.js +232 -0
- package/dist/components/drop-handler-data.d.ts +2 -1
- package/dist/components/drop-handler-data.js +6 -4
- package/dist/components/effect-drag-and-drop.d.ts +2 -5
- package/dist/components/get-open-in-menu-items.d.ts +4 -0
- package/dist/components/get-open-in-menu-items.js +28 -24
- package/dist/components/handle-drop.js +6 -2
- package/dist/components/import-assets.d.ts +5 -13
- package/dist/components/root-composition-menu-items.d.ts +4 -1
- package/dist/components/root-composition-menu-items.js +38 -1
- package/dist/components/selected-outline-geometry.d.ts +21 -2
- package/dist/components/selected-outline-geometry.js +16 -5
- package/dist/components/selected-outline-measurement.d.ts +40 -1
- package/dist/components/selected-outline-measurement.js +239 -1
- package/dist/components/selected-outline-order.d.ts +12 -0
- package/dist/components/selected-outline-order.js +251 -0
- package/dist/components/selected-outline-types.d.ts +15 -2
- package/dist/components/selected-outline-uv.js +106 -3
- package/dist/components/use-configure-default-apps.d.ts +1 -0
- package/dist/components/use-configure-default-apps.js +24 -0
- package/dist/error-overlay/current-error.d.ts +13 -0
- package/dist/error-overlay/current-error.js +21 -0
- package/dist/error-overlay/remotion-overlay/CodeFrame.js +5 -6
- package/dist/error-overlay/remotion-overlay/CopyStackTrace.js +1 -1
- package/dist/error-overlay/remotion-overlay/ErrorDisplay.js +47 -18
- package/dist/error-overlay/remotion-overlay/ErrorLoader.js +6 -2
- package/dist/error-overlay/remotion-overlay/ErrorTitle.js +5 -4
- package/dist/error-overlay/remotion-overlay/OpenInEditor.js +48 -76
- package/dist/error-overlay/remotion-overlay/SearchGitHubIssues.js +1 -1
- package/dist/error-overlay/remotion-overlay/ShortcutHint.js +2 -2
- package/dist/error-overlay/remotion-overlay/StackFrame.js +13 -8
- package/dist/error-overlay/remotion-overlay/Symbolicating.js +1 -1
- package/dist/esm/chunk-6jf1natv.js +25 -0
- package/dist/esm/{chunk-4bxz1d3g.js → chunk-je0h1bgt.js} +1 -28
- package/dist/esm/chunk-m0jqdbkr.js +14571 -0
- package/dist/esm/{chunk-7prjt5n5.js → chunk-np6q13k5.js} +18637 -12189
- package/dist/esm/index.mjs +4 -3
- package/dist/esm/internals.mjs +35826 -14822
- package/dist/esm/previewEntry.mjs +40028 -18935
- package/dist/esm/renderEntry.mjs +6 -3
- package/dist/helpers/can-show-updates.d.ts +5 -0
- package/dist/helpers/can-show-updates.js +7 -0
- package/dist/helpers/colors.d.ts +0 -3
- package/dist/helpers/colors.js +2 -5
- package/dist/helpers/create-folder-tree.d.ts +5 -0
- package/dist/helpers/create-folder-tree.js +26 -6
- package/dist/helpers/document-title.d.ts +2 -0
- package/dist/helpers/document-title.js +14 -3
- package/dist/helpers/get-asset-metadata.js +1 -1
- package/dist/helpers/get-box-quads-polyfill-internals.d.ts +82 -0
- package/dist/helpers/get-box-quads-polyfill-internals.js +2403 -0
- package/dist/helpers/get-box-quads-ponyfill.d.ts +10 -0
- package/dist/helpers/get-box-quads-ponyfill.js +23 -0
- package/dist/helpers/get-git-menu-item.d.ts +5 -0
- package/dist/helpers/get-git-menu-item.js +15 -1
- package/dist/helpers/get-timeline-max-zoom.d.ts +34 -28
- package/dist/helpers/get-timeline-max-zoom.js +46 -29
- package/dist/helpers/hoverable.js +10 -5
- package/dist/helpers/install-fiber-sequence-order-observer.d.ts +37 -0
- package/dist/helpers/install-fiber-sequence-order-observer.js +109 -0
- package/dist/helpers/open-in-editor.js +53 -2
- package/dist/helpers/preview-server-events.js +3 -0
- package/dist/helpers/timeline-layout.d.ts +0 -1
- package/dist/helpers/timeline-layout.js +1 -5
- package/dist/helpers/url-state.d.ts +1 -0
- package/dist/helpers/url-state.js +12 -5
- package/dist/helpers/use-runtime-values.d.ts +1 -1
- package/dist/helpers/use-runtime-values.js +5 -4
- package/dist/helpers/use-sync-external-store.d.ts +3 -0
- package/dist/helpers/use-sync-external-store.js +5 -0
- package/dist/previewEntry.js +2 -0
- package/dist/renderEntry.js +2 -0
- package/dist/state/folders.d.ts +3 -0
- package/dist/state/folders.js +40 -1
- package/dist/state/modals.d.ts +19 -8
- package/dist/state/timeline-sequence-hover.js +3 -2
- package/dist/state/timeline-zoom.d.ts +0 -1
- package/dist/state/timeline-zoom.js +13 -6
- package/package.json +18 -15
- package/dist/components/UpdateModal/UpdateModal.d.ts +0 -6
- package/dist/components/UpdateModal/UpdateModal.js +0 -104
- package/dist/helpers/sort-by-nonce-history.d.ts +0 -1
- package/dist/helpers/sort-by-nonce-history.js +0 -6
- /package/dist/components/{UpdateModal/OpenIssueButton.d.ts → OpenIssueButton.d.ts} +0 -0
|
@@ -2,15 +2,15 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.CompositionSelectorItem = void 0;
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
-
const studio_protocol_1 = require("@remotion/studio-protocol");
|
|
6
|
-
const studio_shared_1 = require("@remotion/studio-shared");
|
|
7
5
|
const react_1 = require("react");
|
|
8
6
|
const client_id_1 = require("../helpers/client-id");
|
|
9
7
|
const colors_1 = require("../helpers/colors");
|
|
8
|
+
const hoverable_1 = require("../helpers/hoverable");
|
|
10
9
|
const noop_1 = require("../helpers/noop");
|
|
11
10
|
const sidebar_scroll_into_view_1 = require("../helpers/sidebar-scroll-into-view");
|
|
12
11
|
const folder_1 = require("../icons/folder");
|
|
13
12
|
const modals_1 = require("../state/modals");
|
|
13
|
+
const composition_drag_data_1 = require("./composition-drag-data");
|
|
14
14
|
const composition_menu_items_1 = require("./composition-menu-items");
|
|
15
15
|
const CompositionContextButton_1 = require("./CompositionContextButton");
|
|
16
16
|
const CompositionOrStillIcon_1 = require("./CompositionOrStillIcon");
|
|
@@ -39,7 +39,6 @@ const itemStyle = {
|
|
|
39
39
|
borderRadius: 4,
|
|
40
40
|
width: 'calc(100% - 12px)',
|
|
41
41
|
textAlign: 'left',
|
|
42
|
-
backgroundColor: colors_1.BACKGROUND,
|
|
43
42
|
height: layout_1.COMPACT_CONTROL_ROW_HEIGHT,
|
|
44
43
|
userSelect: 'none',
|
|
45
44
|
};
|
|
@@ -64,13 +63,6 @@ const CompositionSelectorItem = ({ item, level, currentComposition, tabIndex, se
|
|
|
64
63
|
}
|
|
65
64
|
return false;
|
|
66
65
|
}, [item, currentComposition]);
|
|
67
|
-
const [hovered, setHovered] = (0, react_1.useState)(false);
|
|
68
|
-
const onPointerEnter = (0, react_1.useCallback)(() => {
|
|
69
|
-
setHovered(true);
|
|
70
|
-
}, []);
|
|
71
|
-
const onPointerLeave = (0, react_1.useCallback)(() => {
|
|
72
|
-
setHovered(false);
|
|
73
|
-
}, []);
|
|
74
66
|
const [isDragging, setIsDragging] = (0, react_1.useState)(false);
|
|
75
67
|
const [dragHovered, setDragHovered] = (0, react_1.useState)(false);
|
|
76
68
|
const compositionRowRef = (0, react_1.useRef)(null);
|
|
@@ -86,22 +78,22 @@ const CompositionSelectorItem = ({ item, level, currentComposition, tabIndex, se
|
|
|
86
78
|
});
|
|
87
79
|
}, [compositionId, selected]);
|
|
88
80
|
const style = (0, react_1.useMemo)(() => {
|
|
81
|
+
const idleBackground = dragHovered
|
|
82
|
+
? colors_1.WHITE_ALPHA_12
|
|
83
|
+
: selected
|
|
84
|
+
? colors_1.WHITE_ALPHA_06
|
|
85
|
+
: colors_1.TRANSPARENT;
|
|
89
86
|
return {
|
|
90
87
|
...itemStyle,
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
:
|
|
94
|
-
|
|
95
|
-
|
|
88
|
+
...(0, hoverable_1.hoverableStyle)({
|
|
89
|
+
idleBackground,
|
|
90
|
+
hoverBackground: dragHovered ? colors_1.WHITE_ALPHA_12 : colors_1.WHITE_ALPHA_06,
|
|
91
|
+
idleColor: selected ? colors_1.WHITE : colors_1.LIGHT_TEXT,
|
|
92
|
+
hoverColor: colors_1.WHITE,
|
|
93
|
+
}),
|
|
96
94
|
paddingLeft: 12 + level * 8,
|
|
97
95
|
};
|
|
98
|
-
}, [dragHovered,
|
|
99
|
-
const label = (0, react_1.useMemo)(() => {
|
|
100
|
-
return {
|
|
101
|
-
...labelStyle,
|
|
102
|
-
color: selected || hovered ? colors_1.WHITE : colors_1.LIGHT_TEXT,
|
|
103
|
-
};
|
|
104
|
-
}, [hovered, selected]);
|
|
96
|
+
}, [dragHovered, level, selected]);
|
|
105
97
|
const onClick = (0, react_1.useCallback)((evt) => {
|
|
106
98
|
evt.preventDefault();
|
|
107
99
|
if (item.type === 'composition') {
|
|
@@ -162,8 +154,7 @@ const CompositionSelectorItem = ({ item, level, currentComposition, tabIndex, se
|
|
|
162
154
|
}
|
|
163
155
|
setIsDragging(true);
|
|
164
156
|
event.dataTransfer.effectAllowed = 'copyMove';
|
|
165
|
-
const dragData =
|
|
166
|
-
type: 'composition',
|
|
157
|
+
const dragData = (0, composition_drag_data_1.makeCompositionDragData)({
|
|
167
158
|
compositionFile: (_a = resolvedLocation === null || resolvedLocation === void 0 ? void 0 : resolvedLocation.source) !== null && _a !== void 0 ? _a : null,
|
|
168
159
|
compositionId: item.composition.id,
|
|
169
160
|
width: (_b = item.composition.width) !== null && _b !== void 0 ? _b : null,
|
|
@@ -176,10 +167,9 @@ const CompositionSelectorItem = ({ item, level, currentComposition, tabIndex, se
|
|
|
176
167
|
setIsDragging(false);
|
|
177
168
|
}, []);
|
|
178
169
|
const onFolderDragOver = (0, react_1.useCallback)((event) => {
|
|
179
|
-
var _a;
|
|
180
170
|
if (item.type !== 'folder' ||
|
|
181
171
|
window.remotion_isReadOnlyStudio ||
|
|
182
|
-
(
|
|
172
|
+
(0, composition_drag_data_1.getCompositionDragPreviewMetadata)(event.dataTransfer.types) === null) {
|
|
183
173
|
return;
|
|
184
174
|
}
|
|
185
175
|
event.preventDefault();
|
|
@@ -192,10 +182,9 @@ const CompositionSelectorItem = ({ item, level, currentComposition, tabIndex, se
|
|
|
192
182
|
setDragHovered(false);
|
|
193
183
|
}, []);
|
|
194
184
|
const onFolderChildListDragOver = (0, react_1.useCallback)((event) => {
|
|
195
|
-
var _a;
|
|
196
185
|
if (item.type !== 'folder' ||
|
|
197
186
|
window.remotion_isReadOnlyStudio ||
|
|
198
|
-
(
|
|
187
|
+
(0, composition_drag_data_1.getCompositionDragPreviewMetadata)(event.dataTransfer.types) === null) {
|
|
199
188
|
return;
|
|
200
189
|
}
|
|
201
190
|
event.preventDefault();
|
|
@@ -207,11 +196,10 @@ const CompositionSelectorItem = ({ item, level, currentComposition, tabIndex, se
|
|
|
207
196
|
if (item.type !== 'folder' || window.remotion_isReadOnlyStudio) {
|
|
208
197
|
return;
|
|
209
198
|
}
|
|
210
|
-
const
|
|
211
|
-
if (
|
|
199
|
+
const compositionDragData = (0, composition_drag_data_1.parseCompositionDragData)(event.dataTransfer);
|
|
200
|
+
if (compositionDragData === null) {
|
|
212
201
|
return;
|
|
213
202
|
}
|
|
214
|
-
const compositionDragData = parsed.data;
|
|
215
203
|
event.preventDefault();
|
|
216
204
|
event.stopPropagation();
|
|
217
205
|
clearRootDragHover();
|
|
@@ -235,7 +223,7 @@ const CompositionSelectorItem = ({ item, level, currentComposition, tabIndex, se
|
|
|
235
223
|
},
|
|
236
224
|
dryRun: false,
|
|
237
225
|
signal: controller.signal,
|
|
238
|
-
symbolicatedStack: (0,
|
|
226
|
+
symbolicatedStack: (0, composition_drag_data_1.compositionDragDataToSymbolicatedStack)(compositionDragData),
|
|
239
227
|
});
|
|
240
228
|
if (result.success) {
|
|
241
229
|
notification.dismiss();
|
|
@@ -253,13 +241,13 @@ const CompositionSelectorItem = ({ item, level, currentComposition, tabIndex, se
|
|
|
253
241
|
}, [clearRootDragHover, item, toggleFolder]);
|
|
254
242
|
if (item.type === 'folder') {
|
|
255
243
|
return (jsx_runtime_1.jsxs(jsx_runtime_1.Fragment, { children: [
|
|
256
|
-
jsx_runtime_1.jsx(ContextMenu_1.ContextMenu, { getItems: getContextMenuItems, children: jsx_runtime_1.jsx(layout_1.Row, { align: "center", children: jsx_runtime_1.jsxs("div", { style: style, className:
|
|
244
|
+
jsx_runtime_1.jsx(ContextMenu_1.ContextMenu, { getItems: getContextMenuItems, children: jsx_runtime_1.jsx(layout_1.Row, { align: "center", children: jsx_runtime_1.jsxs("div", { style: style, className: `__remotion-composition-selector-item ${hoverable_1.HOVERABLE_CLASS_NAME} ${hoverable_1.HOVER_GROUP_CLASS_NAME}`, tabIndex: tabIndex, onClick: onClick, onKeyDown: onKeyDown, onDragOver: onFolderDragOver, onDragLeave: onFolderDragLeave, onDrop: onFolderDrop, title: item.folderName, role: "button", children: [item.expanded ? (jsx_runtime_1.jsx(folder_1.ExpandedFolderIcon, { style: iconStyle, color: colors_1.CURRENT_COLOR })) : (jsx_runtime_1.jsx(folder_1.CollapsedFolderIcon, { color: colors_1.CURRENT_COLOR, style: iconStyle })), jsx_runtime_1.jsx(layout_1.Spacing, { x: 1 }), jsx_runtime_1.jsx("div", { style: labelStyle, children: item.folderName }), jsx_runtime_1.jsx(layout_1.Spacing, { x: 0.5 }), jsx_runtime_1.jsx(CompositionContextButton_1.CompositionContextButton, { getItems: getContextMenuItems, visible: true, readOnlyStudio: window.remotion_isReadOnlyStudio })
|
|
257
245
|
] }) }) }), item.expanded ? (jsx_runtime_1.jsx("div", { onDragOver: onFolderChildListDragOver, onDrop: onFolderDrop, children: item.items.map((childItem) => {
|
|
258
246
|
return (jsx_runtime_1.jsx(exports.CompositionSelectorItem, { currentComposition: currentComposition, selectComposition: selectComposition, item: childItem, tabIndex: tabIndex, level: level + 1, toggleFolder: toggleFolder, clearRootDragHover: clearRootDragHover }, childItem.key + childItem.type));
|
|
259
247
|
}) })) : null] }));
|
|
260
248
|
}
|
|
261
|
-
return (jsx_runtime_1.jsx(ContextMenu_1.ContextMenu, { getItems: getContextMenuItems, children: jsx_runtime_1.jsx(layout_1.Row, { align: "center", children: jsx_runtime_1.jsxs("a", { ref: compositionRowRef, style: style,
|
|
262
|
-
jsx_runtime_1.jsx(CompositionOrStillIcon_1.CompositionOrStillIcon, { composition: item.composition, color:
|
|
249
|
+
return (jsx_runtime_1.jsx(ContextMenu_1.ContextMenu, { getItems: getContextMenuItems, children: jsx_runtime_1.jsx(layout_1.Row, { align: "center", children: jsx_runtime_1.jsxs("a", { ref: compositionRowRef, style: style, tabIndex: tabIndex, onClick: onClick, onKeyDown: onKeyDown, draggable: !window.remotion_isReadOnlyStudio, onDragStart: onCompositionDragStart, onDragEnd: onCompositionDragEnd, type: "button", title: item.composition.id, className: `__remotion-composition __remotion-composition-selector-item ${hoverable_1.HOVERABLE_CLASS_NAME} ${hoverable_1.HOVER_GROUP_CLASS_NAME}`, "data-compname": item.composition.id, children: [
|
|
250
|
+
jsx_runtime_1.jsx(CompositionOrStillIcon_1.CompositionOrStillIcon, { composition: item.composition, color: colors_1.CURRENT_COLOR, style: iconStyle }), jsx_runtime_1.jsx(layout_1.Spacing, { x: 1 }), jsx_runtime_1.jsx("div", { style: labelStyle, children: item.composition.id }), jsx_runtime_1.jsx(layout_1.Spacing, { x: 0.5 }), jsx_runtime_1.jsx(CompositionContextButton_1.CompositionContextButton, { getItems: getContextMenuItems, visible: !isDragging, readOnlyStudio: window.remotion_isReadOnlyStudio }), jsx_runtime_1.jsx(SidebarRenderButton_1.SidebarRenderButton, { visible: !isDragging, composition: item.composition, readOnlyStudio: window.remotion_isReadOnlyStudio })
|
|
263
251
|
] }) }) }));
|
|
264
252
|
};
|
|
265
253
|
exports.CompositionSelectorItem = CompositionSelectorItem;
|
|
@@ -5,6 +5,7 @@ const jsx_runtime_1 = require("react/jsx-runtime");
|
|
|
5
5
|
const react_1 = require("react");
|
|
6
6
|
const colors_1 = require("../helpers/colors");
|
|
7
7
|
const layout_1 = require("./layout");
|
|
8
|
+
const LicenseExplanation_1 = require("./LicenseExplanation");
|
|
8
9
|
const LicenseKeyValidation_1 = require("./LicenseKeyValidation");
|
|
9
10
|
const RemInput_1 = require("./NewComposition/RemInput");
|
|
10
11
|
const ValidationMessage_1 = require("./NewComposition/ValidationMessage");
|
|
@@ -28,16 +29,12 @@ const description = {
|
|
|
28
29
|
lineHeight: 1.5,
|
|
29
30
|
margin: 0,
|
|
30
31
|
};
|
|
31
|
-
const
|
|
32
|
-
color: colors_1.
|
|
32
|
+
const externalDescriptionLink = {
|
|
33
|
+
color: colors_1.BLUE,
|
|
33
34
|
fontFamily: 'sans-serif',
|
|
34
35
|
fontSize: 14,
|
|
35
36
|
lineHeight: '21px',
|
|
36
37
|
};
|
|
37
|
-
const externalDescriptionLink = {
|
|
38
|
-
...descriptionLink,
|
|
39
|
-
color: colors_1.BLUE,
|
|
40
|
-
};
|
|
41
38
|
const externalLinkIndicator = {
|
|
42
39
|
display: 'inline-block',
|
|
43
40
|
height: 12,
|
|
@@ -45,32 +42,6 @@ const externalLinkIndicator = {
|
|
|
45
42
|
verticalAlign: -2,
|
|
46
43
|
width: 12,
|
|
47
44
|
};
|
|
48
|
-
const licenseExplanation = {
|
|
49
|
-
display: 'flex',
|
|
50
|
-
flexDirection: 'column',
|
|
51
|
-
gap: 12,
|
|
52
|
-
};
|
|
53
|
-
const licenseExplanationRow = {
|
|
54
|
-
display: 'flex',
|
|
55
|
-
alignItems: 'center',
|
|
56
|
-
gap: 12,
|
|
57
|
-
};
|
|
58
|
-
const people = {
|
|
59
|
-
display: 'grid',
|
|
60
|
-
gridTemplateColumns: 'repeat(4, 9px)',
|
|
61
|
-
gap: 3,
|
|
62
|
-
flexShrink: 0,
|
|
63
|
-
};
|
|
64
|
-
const person = {
|
|
65
|
-
display: 'block',
|
|
66
|
-
height: 24,
|
|
67
|
-
overflow: 'visible',
|
|
68
|
-
width: 9,
|
|
69
|
-
};
|
|
70
|
-
const PersonIcon = ({ handsUp, opacity }) => {
|
|
71
|
-
return (jsx_runtime_1.jsxs("svg", { "aria-hidden": "true", opacity: opacity, style: person, viewBox: "0 0 192 512", xmlns: "http://www.w3.org/2000/svg", children: [
|
|
72
|
-
jsx_runtime_1.jsx("path", { fill: colors_1.LIGHT_TEXT, d: "M128 64a32 32 0 1 0 -64 0 32 32 0 1 0 64 0zM32 64A64 64 0 1 1 160 64 64 64 0 1 1 32 64zm0 128l0 128 128 0 0-128-128 0zM0 160l192 0 0 192-32 0 0 160-32 0 0-160-64 0 0 160-32 0 0-160-32 0 0-192z" }), handsUp ? (jsx_runtime_1.jsx("path", { d: "M10.667 192 0 -32 M181.333 192 192 -32", fill: "none", stroke: colors_1.LIGHT_TEXT, strokeWidth: "32" })) : null] }));
|
|
73
|
-
};
|
|
74
45
|
const freeLicenseMessage = {
|
|
75
46
|
...description,
|
|
76
47
|
marginBottom: 5,
|
|
@@ -199,22 +170,7 @@ const LicenseSettings = () => {
|
|
|
199
170
|
});
|
|
200
171
|
const displayedError = error !== null && error !== void 0 ? error : settingsError;
|
|
201
172
|
return (jsx_runtime_1.jsx("div", { style: container, children: jsx_runtime_1.jsxs("div", { style: content, children: [
|
|
202
|
-
jsx_runtime_1.jsxs("div", {
|
|
203
|
-
jsx_runtime_1.jsxs("div", { style: licenseExplanationRow, children: [
|
|
204
|
-
jsx_runtime_1.jsxs("div", { style: people, children: [
|
|
205
|
-
jsx_runtime_1.jsx(PersonIcon, { handsUp: true, opacity: 1 }), jsx_runtime_1.jsx(PersonIcon, { handsUp: true, opacity: 1 }), jsx_runtime_1.jsx(PersonIcon, { handsUp: true, opacity: 1 })
|
|
206
|
-
] }), jsx_runtime_1.jsx("p", { style: description, children: "Remotion is free to use if you are an individual or company of 3 or less." })
|
|
207
|
-
] }), jsx_runtime_1.jsxs("div", { style: licenseExplanationRow, children: [
|
|
208
|
-
jsx_runtime_1.jsxs("div", { style: people, children: [
|
|
209
|
-
jsx_runtime_1.jsx(PersonIcon, { handsUp: false, opacity: 1 }), jsx_runtime_1.jsx(PersonIcon, { handsUp: false, opacity: 1 }), jsx_runtime_1.jsx(PersonIcon, { handsUp: false, opacity: 1 }), jsx_runtime_1.jsx(PersonIcon, { handsUp: false, opacity: 1 })
|
|
210
|
-
] }), jsx_runtime_1.jsxs("p", { style: description, children: ["If used in an organization with 4+ people, you need a", ' ', jsx_runtime_1.jsx("a", { style: descriptionLink, href: "https://remotion.pro/license", children: "Company License" }),
|
|
211
|
-
"."] })
|
|
212
|
-
] }), jsx_runtime_1.jsxs("div", { style: licenseExplanationRow, children: [
|
|
213
|
-
jsx_runtime_1.jsxs("div", { style: people, children: [
|
|
214
|
-
jsx_runtime_1.jsx(PersonIcon, { handsUp: false, opacity: 1 }), jsx_runtime_1.jsx(PersonIcon, { handsUp: false, opacity: 0.3 }), jsx_runtime_1.jsx(PersonIcon, { handsUp: false, opacity: 0.3 }), jsx_runtime_1.jsx(PersonIcon, { handsUp: false, opacity: 0.3 })
|
|
215
|
-
] }), jsx_runtime_1.jsx("p", { style: description, children: "The total headcount matters, not the amount of people using Remotion." })
|
|
216
|
-
] })
|
|
217
|
-
] }), jsx_runtime_1.jsx(layout_1.Spacing, { y: 2 }), jsx_runtime_1.jsxs("div", { "aria-label": "License type", role: "radiogroup", children: [
|
|
173
|
+
jsx_runtime_1.jsx(LicenseExplanation_1.LicenseExplanation, {}), jsx_runtime_1.jsx(layout_1.Spacing, { y: 2 }), jsx_runtime_1.jsxs("div", { "aria-label": "License type", role: "radiogroup", children: [
|
|
218
174
|
jsx_runtime_1.jsx(RadioButton_1.RadioButton, { checked: licenseType === 'free', onClick: toggleFreeLicense, children: "I am eligible for the Free License" }), licenseType === 'free' ? (jsx_runtime_1.jsx("p", { style: freeLicenseMessage, children: "That's it! Enjoy Remotion." })) : null, jsx_runtime_1.jsx(RadioButton_1.RadioButton, { checked: licenseType === 'company', onClick: toggleCompanyLicense, children: "I need a Company License" }), licenseType === 'company' ? (jsx_runtime_1.jsxs("div", { style: companyLicenseContent, children: [
|
|
219
175
|
jsx_runtime_1.jsxs("p", { style: description, children: ["Visit", ' ', jsx_runtime_1.jsxs("a", { style: externalDescriptionLink, href: "https://remotion.pro/license", target: "_blank", rel: "noopener noreferrer", children: ["remotion.pro/license",
|
|
220
176
|
jsx_runtime_1.jsx("svg", { "aria-hidden": "true", viewBox: "0 0 16 16", style: externalLinkIndicator, children: jsx_runtime_1.jsx("path", { d: "M4 12 12 4M6 4h6v6", fill: "none", stroke: colors_1.BLUE, strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "1.5" }) })
|
|
@@ -215,7 +215,7 @@ const AssetInfo = ({ assetName, contentSized = false, onAssetClick, readOnlyStud
|
|
|
215
215
|
return (jsx_runtime_1.jsxs(jsx_runtime_1.Fragment, { children: [
|
|
216
216
|
jsx_runtime_1.jsx(InspectorInfoHeader_1.InspectorInfoHeader, { contentSized: contentSized, minHeight: exports.CURRENT_ASSET_HEIGHT, padding: contentSized
|
|
217
217
|
? `0 ${InspectorPanelLayout_1.INSPECTOR_PANEL_HORIZONTAL_PADDING}px 6px`
|
|
218
|
-
: '4px 0', children: jsx_runtime_1.jsx(InlineEditableTitle_1.InlineEditableTitle, { value: fileName, canRename: canRename, getInitialSelection: use_rename_static_file_1.getStaticFileRenameSelection, onClick: onAssetClick, onCommit: onRename, size: contentSized ? 'default' : 'inspector', title: assetName }) }), fileDetails.length > 0 ? (jsx_runtime_1.jsx(common_1.InspectorSection, { header: "File", children: jsx_runtime_1.jsx("div", { style: assetMetadataStyle, children: fileDetails.map((detail) => (jsx_runtime_1.jsx(common_1.InspectorDetailRow, { label: detail.label, children: jsx_runtime_1.jsx("span", { style: assetMetadataValueStyle, children: detail.value }) }, detail.label))) }) })) : null, mediaSections && mediaSections.video ? (jsx_runtime_1.jsx(common_1.InspectorSection, { header: "Video", children: jsx_runtime_1.jsx("div", { style: assetMetadataStyle, children: mediaSections.video.map((detail) => (jsx_runtime_1.jsx(common_1.InspectorDetailRow, { label: detail.label, children: jsx_runtime_1.jsx("span", { style: assetMetadataValueStyle, children: detail.value }) }, detail.label))) }) })) : null, mediaSections && mediaSections.audio !== null ? (jsx_runtime_1.jsx(common_1.InspectorSection, { header: "Audio", children: mediaSections.audio.length === 0 ? (jsx_runtime_1.jsx("div", { style: assetEmptyStateStyle, children: "None" })) : (jsx_runtime_1.jsx("div", { style: assetMetadataStyle, children: mediaSections.audio.map((detail) => (jsx_runtime_1.jsx(common_1.InspectorDetailRow, { label: detail.label, children: jsx_runtime_1.jsx("span", { style: assetMetadataValueStyle, children: detail.value }) }, detail.label))) })) })) : null, jsx_runtime_1.jsxs(common_1.InspectorQuickActionsSection, { children: [src ? (jsx_runtime_1.jsxs(common_1.InspectorQuickAction, { disabled: false, onClick: onOpenConvert, renderIcon: (color) => (jsx_runtime_1.jsx(remotion_convert_1.RemotionConvertIcon, { color: color, style: quickActionIconStyle })), children: ["Convert",
|
|
218
|
+
: '4px 0', children: jsx_runtime_1.jsx(InlineEditableTitle_1.InlineEditableTitle, { value: fileName, canRename: canRename, getInitialSelection: use_rename_static_file_1.getStaticFileRenameSelection, onClick: onAssetClick, onCommit: onRename, size: contentSized ? 'default' : 'inspector', title: assetName }) }), fileDetails.length > 0 ? (jsx_runtime_1.jsx(common_1.InspectorSection, { header: "File", children: jsx_runtime_1.jsx("div", { style: assetMetadataStyle, children: fileDetails.map((detail) => (jsx_runtime_1.jsx(common_1.InspectorDetailRow, { label: detail.label, children: jsx_runtime_1.jsx("span", { style: assetMetadataValueStyle, children: detail.value }) }, detail.label))) }) })) : null, mediaSections && mediaSections.video ? (jsx_runtime_1.jsx(common_1.InspectorSection, { header: "Video", children: jsx_runtime_1.jsx("div", { style: assetMetadataStyle, children: mediaSections.video.map((detail) => (jsx_runtime_1.jsx(common_1.InspectorDetailRow, { label: detail.label, children: jsx_runtime_1.jsx("span", { style: assetMetadataValueStyle, children: detail.value }) }, detail.label))) }) })) : null, mediaSections && mediaSections.audio !== null ? (jsx_runtime_1.jsx(common_1.InspectorSection, { header: "Audio", children: mediaSections.audio.length === 0 ? (jsx_runtime_1.jsx("div", { style: assetEmptyStateStyle, children: "None" })) : (jsx_runtime_1.jsx("div", { style: assetMetadataStyle, children: mediaSections.audio.map((detail) => (jsx_runtime_1.jsx(common_1.InspectorDetailRow, { label: detail.label, children: jsx_runtime_1.jsx("span", { style: assetMetadataValueStyle, children: detail.value }) }, detail.label))) })) })) : null, jsx_runtime_1.jsx(common_1.InspectorSectionHeader, { children: "Actions" }), jsx_runtime_1.jsxs(common_1.InspectorQuickActionsSection, { children: [src ? (jsx_runtime_1.jsxs(common_1.InspectorQuickAction, { disabled: false, onClick: onOpenConvert, renderIcon: (color) => (jsx_runtime_1.jsx(remotion_convert_1.RemotionConvertIcon, { color: color, style: quickActionIconStyle })), children: ["Convert",
|
|
219
219
|
jsx_runtime_1.jsx("svg", { "aria-hidden": "true", viewBox: "0 0 16 16", style: convertArrowStyle, children: jsx_runtime_1.jsx("path", { d: "M4 12 12 4M6 4h6v6", fill: "none", stroke: colors_1.CURRENT_COLOR, strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "1.5" }) })
|
|
220
220
|
] })) : null, fileManagerAvailable ? (jsx_runtime_1.jsxs(common_1.InspectorQuickAction, { disabled: fileManagerDisabled, onClick: onShowInFileManager, renderIcon: (color) => (jsx_runtime_1.jsx(folder_1.ExpandedFolderIcon, { color: color, style: quickActionIconStyle })), children: ["Show in ", fileManagerName] })) : null, jsx_runtime_1.jsx(common_1.InspectorQuickAction, { disabled: mutationsDisabled, onClick: onDelete, renderIcon: (color) => (jsx_runtime_1.jsx(trash_1.TrashIcon, { color: color, style: quickActionIconStyle })), children: "Delete" })] })
|
|
221
221
|
] }));
|
|
@@ -4,10 +4,12 @@ exports.TitleUpdater = void 0;
|
|
|
4
4
|
const react_1 = require("react");
|
|
5
5
|
const remotion_1 = require("remotion");
|
|
6
6
|
const document_title_1 = require("../helpers/document-title");
|
|
7
|
+
const modals_1 = require("../state/modals");
|
|
7
8
|
const context_1 = require("./RenderQueue/context");
|
|
8
9
|
const TitleUpdater = () => {
|
|
9
10
|
const renderQueue = (0, react_1.useContext)(context_1.RenderQueueContext);
|
|
10
11
|
const { canvasContent } = (0, react_1.useContext)(remotion_1.Internals.CompositionManager);
|
|
12
|
+
const selectedModal = (0, react_1.useContext)(modals_1.SelectedModalContext);
|
|
11
13
|
const { jobs } = renderQueue;
|
|
12
14
|
(0, react_1.useEffect)(() => {
|
|
13
15
|
if (!canvasContent) {
|
|
@@ -31,6 +33,9 @@ const TitleUpdater = () => {
|
|
|
31
33
|
(0, react_1.useEffect)(() => {
|
|
32
34
|
(0, document_title_1.setRenderJobs)(jobs);
|
|
33
35
|
}, [jobs]);
|
|
36
|
+
(0, react_1.useEffect)(() => {
|
|
37
|
+
(0, document_title_1.setCurrentModal)(selectedModal);
|
|
38
|
+
}, [selectedModal]);
|
|
34
39
|
return null;
|
|
35
40
|
};
|
|
36
41
|
exports.TitleUpdater = TitleUpdater;
|
|
@@ -1,18 +1,10 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
+
import type { ElementInstallModalState } from '../state/modals';
|
|
2
3
|
export declare const ElementLibraryAddConfirmation: React.FC<{
|
|
3
4
|
readonly displayName: string | null;
|
|
4
5
|
readonly origin: string;
|
|
5
6
|
readonly url: string;
|
|
6
7
|
}>;
|
|
7
8
|
export declare const ElementInstallConfirmation: React.FC<{
|
|
8
|
-
readonly
|
|
9
|
-
readonly sourceLabel: string;
|
|
10
|
-
readonly sourceIsUnverified: boolean;
|
|
11
|
-
readonly compositionId: string;
|
|
12
|
-
readonly filePath: string;
|
|
13
|
-
readonly overwritesExistingFile: boolean;
|
|
14
|
-
readonly dependenciesToReview: string[];
|
|
15
|
-
readonly missingPackages: string[];
|
|
16
|
-
readonly sourceCode: string;
|
|
17
|
-
readonly usesBrowserDependencyResolution: boolean;
|
|
9
|
+
readonly state: ElementInstallModalState;
|
|
18
10
|
}>;
|