@remotion/studio 4.0.522 → 4.0.523
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/install-package.js +4 -2
- package/dist/components/AssetAudioVolume.d.ts +5 -0
- package/dist/components/AssetAudioVolume.js +33 -0
- package/dist/components/Canvas.js +5 -6
- package/dist/components/CaptionInspector.js +74 -20
- package/dist/components/CheckboardToggle.js +8 -6
- package/dist/components/Checkbox.d.ts +1 -0
- package/dist/components/Checkbox.js +2 -2
- package/dist/components/CompositionContextButton.js +4 -1
- package/dist/components/CompositionSelectorItem.js +2 -2
- package/dist/components/ConfigureLicenseModal.js +1 -1
- package/dist/components/CurrentAsset.js +40 -6
- package/dist/components/EditorContexts.js +3 -1
- package/dist/components/ElementInstallConfirmation.js +287 -135
- package/dist/components/FixComputedValueModal.js +38 -8
- package/dist/components/FullscreenToggle.js +9 -8
- package/dist/components/GlobalKeybindings.js +50 -49
- package/dist/components/HighlightedElementSource.d.ts +5 -0
- package/dist/components/HighlightedElementSource.js +78 -0
- package/dist/components/InspectorPanel/MultiSequenceField.d.ts +12 -0
- package/dist/components/InspectorPanel/MultiSequenceField.js +131 -0
- package/dist/components/InspectorPanel/MultiSequenceInspector.d.ts +8 -0
- package/dist/components/InspectorPanel/MultiSequenceInspector.js +102 -0
- package/dist/components/InspectorPanel/MultiSequenceNumberField.d.ts +9 -0
- package/dist/components/InspectorPanel/MultiSequenceNumberField.js +88 -0
- package/dist/components/InspectorPanel.js +4 -0
- package/dist/components/InspectorSequenceSection.js +64 -1
- package/dist/components/InstallPackage.js +4 -5
- package/dist/components/KeyboardShortcutsSettings.js +212 -33
- package/dist/components/MenuToolbar.js +7 -5
- package/dist/components/ModalContainer.d.ts +1 -0
- package/dist/components/ModalContainer.js +2 -2
- package/dist/components/Modals.js +3 -1
- package/dist/components/ModelManager.d.ts +16 -0
- package/dist/components/ModelManager.js +200 -0
- package/dist/components/ModelsSettings.d.ts +2 -0
- package/dist/components/ModelsSettings.js +133 -0
- package/dist/components/NewComposition/DismissableModal.d.ts +1 -0
- package/dist/components/NewComposition/DismissableModal.js +2 -2
- package/dist/components/NewComposition/InputDragger.d.ts +2 -2
- package/dist/components/NewComposition/InputDragger.js +6 -6
- package/dist/components/NewComposition/NewFolder.js +11 -8
- package/dist/components/NewComposition/RenameFolder.js +17 -10
- package/dist/components/OptionalPackageModal.d.ts +11 -0
- package/dist/components/OptionalPackageModal.js +155 -0
- package/dist/components/PlayPause.js +4 -8
- package/dist/components/PlaybackKeyboardShortcutsManager.js +3 -6
- package/dist/components/PreviewToolbarOverflowButton.js +11 -2
- package/dist/components/QuickSwitcher/ExplorerQuickSwitcherTrigger.js +5 -2
- package/dist/components/RadioButton.d.ts +1 -0
- package/dist/components/RadioButton.js +2 -2
- package/dist/components/RenderButton.js +5 -1
- package/dist/components/RenderModal/NumberSetting.d.ts +6 -1
- package/dist/components/RenderModal/NumberSetting.js +2 -2
- package/dist/components/RenderModal/RenderModalBasic.js +1 -1
- package/dist/components/RenderModal/RenderModalOutputName.d.ts +3 -1
- package/dist/components/RenderModal/RenderModalOutputName.js +4 -4
- package/dist/components/RenderModal/SeparateAudioOption.js +1 -1
- package/dist/components/RenderModal/WebRenderModalBasic.js +1 -1
- package/dist/components/RenderQueue/CaptionQueueItem.d.ts +6 -0
- package/dist/components/RenderQueue/CaptionQueueItem.js +129 -0
- package/dist/components/RenderQueue/CaptionQueueProcessor.d.ts +1 -0
- package/dist/components/RenderQueue/CaptionQueueProcessor.js +110 -0
- package/dist/components/RenderQueue/CaptionQueueProcessorLoader.d.ts +2 -0
- package/dist/components/RenderQueue/CaptionQueueProcessorLoader.js +54 -0
- package/dist/components/RenderQueue/RenderQueueItem.js +3 -3
- package/dist/components/RenderQueue/VideoMattingQueueItem.d.ts +6 -0
- package/dist/components/RenderQueue/VideoMattingQueueItem.js +129 -0
- package/dist/components/RenderQueue/VideoMattingQueueProcessor.d.ts +1 -0
- package/dist/components/RenderQueue/VideoMattingQueueProcessor.js +105 -0
- package/dist/components/RenderQueue/VideoMattingQueueProcessorLoader.d.ts +2 -0
- package/dist/components/RenderQueue/VideoMattingQueueProcessorLoader.js +54 -0
- package/dist/components/RenderQueue/caption-job-types.d.ts +47 -0
- package/dist/components/RenderQueue/caption-job-types.js +7 -0
- package/dist/components/RenderQueue/context.d.ts +16 -0
- package/dist/components/RenderQueue/context.js +224 -11
- package/dist/components/RenderQueue/index.js +34 -10
- package/dist/components/RenderQueue/item-style.d.ts +1 -0
- package/dist/components/RenderQueue/item-style.js +2 -1
- package/dist/components/RenderQueue/load-model-for-job.d.ts +11 -0
- package/dist/components/RenderQueue/load-model-for-job.js +14 -0
- package/dist/components/RenderQueue/video-matting-job-types.d.ts +38 -0
- package/dist/components/RenderQueue/video-matting-job-types.js +5 -0
- package/dist/components/RendersTab.js +4 -4
- package/dist/components/SegmentedControl.d.ts +2 -2
- package/dist/components/SegmentedControl.js +38 -13
- package/dist/components/SelectedOutlinePolygon.js +8 -2
- package/dist/components/SettingsButton.d.ts +4 -0
- package/dist/components/SettingsButton.js +49 -0
- package/dist/components/SettingsModal.d.ts +1 -1
- package/dist/components/SettingsModal.js +3 -1
- package/dist/components/ShowOutlinesProvider.js +12 -0
- package/dist/components/SidebarCollapserControls.js +10 -11
- package/dist/components/SizeSelector.js +10 -2
- package/dist/components/SkillsSettings.js +2 -3
- package/dist/components/SnappingToggle.js +5 -2
- package/dist/components/Tabs/vertical.d.ts +1 -0
- package/dist/components/Tabs/vertical.js +2 -2
- package/dist/components/TimeValue.js +2 -3
- package/dist/components/Timeline/SequencePropsObserver.js +4 -0
- package/dist/components/Timeline/Timeline.js +2 -42
- package/dist/components/Timeline/TimelineClipboardKeybindings.js +2 -4
- package/dist/components/Timeline/TimelineDeleteKeybindings.js +3 -18
- package/dist/components/Timeline/TimelineDragHandler.js +2 -2
- package/dist/components/Timeline/TimelineExpandedKeyframeRow.js +1 -0
- package/dist/components/Timeline/TimelineRowChrome.js +11 -3
- package/dist/components/Timeline/TimelineSchemaField.js +8 -4
- package/dist/components/Timeline/TimelineSelection.d.ts +2 -0
- package/dist/components/Timeline/TimelineSelection.js +55 -2
- package/dist/components/Timeline/TimelineSequence.js +75 -17
- package/dist/components/Timeline/TimelineSequenceItem.d.ts +0 -1
- package/dist/components/Timeline/TimelineSequenceItem.js +208 -111
- package/dist/components/Timeline/TimelineSequenceRightEdgeDragHandle.d.ts +23 -3
- package/dist/components/Timeline/TimelineSequenceRightEdgeDragHandle.js +73 -25
- package/dist/components/Timeline/TimelineTimeIndicators.js +1 -0
- package/dist/components/Timeline/use-asset-timeline-context-menu.d.ts +2 -0
- package/dist/components/Timeline/use-asset-timeline-context-menu.js +52 -0
- package/dist/components/TimelineInOutToggle.js +20 -17
- package/dist/components/Transcription/LazyModels.d.ts +1 -0
- package/dist/components/Transcription/LazyModels.js +5 -0
- package/dist/components/Transcription/Models.d.ts +6 -0
- package/dist/components/Transcription/Models.js +18 -0
- package/dist/components/Transcription/TranscriptionModal.d.ts +3 -0
- package/dist/components/Transcription/TranscriptionModal.js +428 -0
- package/dist/components/Transcription/TranscriptionModalWithOptionalWhisper.d.ts +5 -0
- package/dist/components/Transcription/TranscriptionModalWithOptionalWhisper.js +48 -0
- package/dist/components/Transcription/caption-output-name.d.ts +2 -0
- package/dist/components/Transcription/caption-output-name.js +10 -0
- package/dist/components/Transcription/resample-media-to-16-khz.d.ts +6 -0
- package/dist/components/Transcription/resample-media-to-16-khz.js +82 -0
- package/dist/components/Transcription/whisper-languages.d.ts +2 -0
- package/dist/components/Transcription/whisper-languages.js +104 -0
- package/dist/components/Transcription/whisper-webgpu-capability.d.ts +2 -0
- package/dist/components/Transcription/whisper-webgpu-capability.js +7 -0
- package/dist/components/UndoRedoButtons.js +13 -38
- package/dist/components/UpdatesSettings.js +8 -12
- package/dist/components/VideoMatting/LazyModels.d.ts +1 -0
- package/dist/components/VideoMatting/LazyModels.js +5 -0
- package/dist/components/VideoMatting/Models.d.ts +6 -0
- package/dist/components/VideoMatting/Models.js +18 -0
- package/dist/components/VideoMatting/VideoMattingModal.d.ts +3 -0
- package/dist/components/VideoMatting/VideoMattingModal.js +207 -0
- package/dist/components/VideoMatting/VideoMattingModalWithOptionalPackage.d.ts +5 -0
- package/dist/components/VideoMatting/VideoMattingModalWithOptionalPackage.js +46 -0
- package/dist/components/VideoMatting/video-matting-capability.d.ts +2 -0
- package/dist/components/VideoMatting/video-matting-capability.js +7 -0
- package/dist/components/WebMcp.js +439 -22
- package/dist/components/import-assets.d.ts +3 -2
- package/dist/components/import-assets.js +5 -9
- package/dist/components/keyboard-shortcuts.d.ts +17 -1
- package/dist/components/keyboard-shortcuts.js +177 -89
- package/dist/components/public-output-name.d.ts +5 -0
- package/dist/components/public-output-name.js +60 -0
- package/dist/components/use-model-cache-status.d.ts +7 -0
- package/dist/components/use-model-cache-status.js +35 -0
- package/dist/esm/CaptionQueueProcessor-k0yrm3dj.mjs +211 -0
- package/dist/esm/HighlightedElementSource-jfc66k4p.mjs +1236 -0
- package/dist/esm/LazyModels-2trdm224.mjs +11 -0
- package/dist/esm/LazyModels-fjb5ckaq.mjs +11 -0
- package/dist/esm/TranscriptionModal-916jqhry.mjs +1011 -0
- package/dist/esm/VideoMattingModal-2tm79s9b.mjs +374 -0
- package/dist/esm/VideoMattingQueueProcessor-t1hgm2rm.mjs +109 -0
- package/dist/esm/index-1x7bsdh6.mjs +261 -0
- package/dist/esm/index-3hgr6gjx.mjs +41 -0
- package/dist/esm/index-5qddp5h7.mjs +36 -0
- package/dist/esm/index-5zrb1ft4.mjs +39 -0
- package/dist/esm/index-6cvm9a65.mjs +45923 -0
- package/dist/esm/index-7tt71e8n.mjs +36 -0
- package/dist/esm/index-9x6e1dq0.mjs +428 -0
- package/dist/esm/index-cw0pnpg5.mjs +50 -0
- package/dist/esm/index-czwvnn9g.mjs +35 -0
- package/dist/esm/index-hy4xcgty.mjs +1366 -0
- package/dist/esm/{chunk-je0h1bgt.js → index-jg13hf2g.mjs} +3 -1
- package/dist/esm/{chunk-6jf1natv.js → index-rcv7qkt5.mjs} +18 -1
- package/dist/esm/index-sgtmgc4h.mjs +423 -0
- package/dist/esm/index-te66vvrp.mjs +142 -0
- package/dist/esm/index-v4tr1bft.mjs +20 -0
- package/dist/esm/index-x7t2y7ws.mjs +54194 -0
- package/dist/esm/index-xhe2m2qr.mjs +1146 -0
- package/dist/esm/index.mjs +45 -933
- package/dist/esm/internals.mjs +13 -114393
- package/dist/esm/previewEntry.mjs +387 -115050
- package/dist/esm/renderEntry.mjs +3 -3
- package/dist/esm/{chunk-m0jqdbkr.js → resolve-composition-component-location-14148845.mjs} +1 -1
- package/dist/helpers/drag-aware-double-click.d.ts +2 -1
- package/dist/helpers/drag-aware-double-click.js +12 -1
- package/dist/helpers/get-asset-metadata.d.ts +1 -0
- package/dist/helpers/get-asset-metadata.js +4 -0
- package/dist/helpers/hoverable.js +8 -0
- package/dist/helpers/inject-css.js +2 -0
- package/dist/helpers/optional-package-dependencies.d.ts +3 -0
- package/dist/helpers/optional-package-dependencies.js +24 -0
- package/dist/helpers/pointer-session.d.ts +6 -0
- package/dist/helpers/pointer-session.js +36 -14
- package/dist/helpers/prism-tomorrow.d.ts +1 -0
- package/dist/helpers/prism-tomorrow.js +151 -0
- package/dist/helpers/sequence-node-path-mutations.js +11 -0
- package/dist/helpers/slugify-name.d.ts +1 -0
- package/dist/helpers/slugify-name.js +14 -0
- package/dist/helpers/studio-runtime-config.d.ts +1 -0
- package/dist/helpers/studio-runtime-config.js +6 -1
- package/dist/helpers/use-keybinding.d.ts +9 -3
- package/dist/helpers/use-keybinding.js +8 -9
- package/dist/helpers/use-keyboard-shortcut-label.d.ts +2 -0
- package/dist/helpers/use-keyboard-shortcut-label.js +15 -0
- package/dist/helpers/use-menu-structure.js +58 -13
- package/dist/icons/input-props.d.ts +1 -1
- package/dist/icons/input-props.js +2 -2
- package/dist/icons/models.d.ts +4 -0
- package/dist/icons/models.js +7 -0
- package/dist/icons/separation.d.ts +4 -0
- package/dist/icons/separation.js +7 -0
- package/dist/icons/transcription.d.ts +4 -0
- package/dist/icons/transcription.js +7 -0
- package/dist/icons/upload.js +1 -1
- package/dist/state/modals.d.ts +14 -2
- package/package.json +34 -20
- package/dist/components/UpdateCheck.d.ts +0 -1
- package/dist/components/UpdateCheck.js +0 -79
- package/dist/esm/chunk-3netyjd9.js +0 -99793
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SettingsButton = void 0;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const react_1 = require("react");
|
|
6
|
+
const browser_studio_operations_1 = require("../helpers/browser-studio-operations");
|
|
7
|
+
const colors_1 = require("../helpers/colors");
|
|
8
|
+
const gear_1 = require("../icons/gear");
|
|
9
|
+
const modals_1 = require("../state/modals");
|
|
10
|
+
const InlineAction_1 = require("./InlineAction");
|
|
11
|
+
const UpdateStatusContext_1 = require("./UpdateStatusContext");
|
|
12
|
+
const SettingsButton = ({ showUpdates }) => {
|
|
13
|
+
const { setSelectedModal } = (0, react_1.useContext)(modals_1.SetSelectedModalContext);
|
|
14
|
+
const { info, knownBugs } = (0, UpdateStatusContext_1.useUpdateStatus)();
|
|
15
|
+
const updateAvailable = showUpdates &&
|
|
16
|
+
Boolean((info === null || info === void 0 ? void 0 : info.updateAvailable) || (info === null || info === void 0 ? void 0 : info.skillsUpdateAvailable));
|
|
17
|
+
const hasBugfixesAvailable = showUpdates &&
|
|
18
|
+
Boolean((info === null || info === void 0 ? void 0 : info.updateAvailable) && knownBugs && knownBugs.length > 0);
|
|
19
|
+
const openModal = (0, react_1.useCallback)(() => {
|
|
20
|
+
var _a;
|
|
21
|
+
var _b;
|
|
22
|
+
setSelectedModal({
|
|
23
|
+
type: 'settings',
|
|
24
|
+
initialTab: updateAvailable
|
|
25
|
+
? 'updates'
|
|
26
|
+
: (0, browser_studio_operations_1.getBrowserStudioOperations)() === null
|
|
27
|
+
? 'rendering'
|
|
28
|
+
: 'shortcuts',
|
|
29
|
+
initialPublicLicenseKey: (_b = (_a = window.remotion_renderDefaults) === null || _a === void 0 ? void 0 : _a.publicLicenseKey) !== null && _b !== void 0 ? _b : null,
|
|
30
|
+
});
|
|
31
|
+
}, [setSelectedModal, updateAvailable]);
|
|
32
|
+
const renderGearIcon = (0, react_1.useCallback)((color) => {
|
|
33
|
+
return jsx_runtime_1.jsx(gear_1.GearIcon, { color: color, width: 16, height: 16 });
|
|
34
|
+
}, []);
|
|
35
|
+
const renderUpdateIcon = (0, react_1.useCallback)((color) => {
|
|
36
|
+
return (jsx_runtime_1.jsx("svg", { xmlns: "http://www.w3.org/2000/svg", style: {
|
|
37
|
+
height: 16,
|
|
38
|
+
width: 16,
|
|
39
|
+
color,
|
|
40
|
+
flexShrink: 0,
|
|
41
|
+
}, viewBox: "0 0 512 512", children: jsx_runtime_1.jsx("path", { fill: color, d: "M256 32a224 224 0 1 1 0 448 224 224 0 1 1 0-448zm0 480a256 256 0 1 0 0-512 256 256 0 1 0 0 512zM377 231L273 127c-9.4-9.4-24.6-9.4-33.9 0L135 231c-6.9 6.9-8.9 17.2-5.2 26.2S142.3 272 152 272l40 0 0 72c0 22.1 17.9 40 40 40l48 0c22.1 0 40-17.9 40-40l0-72 40 0c9.7 0 18.5-5.8 22.2-14.8s1.7-19.3-5.2-26.2z" }) }));
|
|
42
|
+
}, []);
|
|
43
|
+
return (jsx_runtime_1.jsx(InlineAction_1.InlineAction, { variant: null, onClick: openModal, renderAction: updateAvailable ? renderUpdateIcon : renderGearIcon, unhoveredColor: hasBugfixesAvailable ? colors_1.WARNING_COLOR : colors_1.WHITE_ALPHA_80, title: hasBugfixesAvailable
|
|
44
|
+
? 'Bugfixes available'
|
|
45
|
+
: updateAvailable
|
|
46
|
+
? 'Update available'
|
|
47
|
+
: 'Settings' }));
|
|
48
|
+
};
|
|
49
|
+
exports.SettingsButton = SettingsButton;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
type SettingsTab = 'apps' | 'rendering' | 'studio' | 'packages' | 'shortcuts' | 'skills' | 'license' | 'updates';
|
|
2
|
+
type SettingsTab = 'apps' | 'rendering' | 'studio' | 'packages' | 'models' | 'shortcuts' | 'skills' | 'license' | 'updates';
|
|
3
3
|
export declare const SettingsModal: React.FC<{
|
|
4
4
|
readonly initialTab: SettingsTab;
|
|
5
5
|
readonly initialPublicLicenseKey: string | null;
|
|
@@ -10,6 +10,7 @@ const apps_1 = require("../icons/apps");
|
|
|
10
10
|
const cloud_download_1 = require("../icons/cloud-download");
|
|
11
11
|
const keyboard_1 = require("../icons/keyboard");
|
|
12
12
|
const license_1 = require("../icons/license");
|
|
13
|
+
const models_1 = require("../icons/models");
|
|
13
14
|
const package_1 = require("../icons/package");
|
|
14
15
|
const remotion_triangle_1 = require("../icons/remotion-triangle");
|
|
15
16
|
const skills_1 = require("../icons/skills");
|
|
@@ -21,6 +22,7 @@ const InstallPackage_1 = require("./InstallPackage");
|
|
|
21
22
|
const KeyboardShortcutsSettings_1 = require("./KeyboardShortcutsSettings");
|
|
22
23
|
const is_menu_item_1 = require("./Menu/is-menu-item");
|
|
23
24
|
const ModalHeader_1 = require("./ModalHeader");
|
|
25
|
+
const ModelsSettings_1 = require("./ModelsSettings");
|
|
24
26
|
const DismissableModal_1 = require("./NewComposition/DismissableModal");
|
|
25
27
|
const RenderingSettings_1 = require("./RenderingSettings");
|
|
26
28
|
const render_modals_1 = require("./RenderModal/render-modals");
|
|
@@ -102,6 +104,6 @@ const SettingsModal = ({ initialPublicLicenseKey, initialTab }) => {
|
|
|
102
104
|
}, [initialPublicLicenseKey, setPublicLicenseKey]);
|
|
103
105
|
return (jsx_runtime_1.jsx(DismissableModal_1.DismissableModal, { panelStyle: render_modals_1.outerModalStyle, children: jsx_runtime_1.jsxs(jsx_runtime_1.Fragment, { children: [
|
|
104
106
|
jsx_runtime_1.jsx(ModalHeader_1.ModalHeader, { title: "Settings", onClose: dismiss }), jsx_runtime_1.jsxs("div", { style: render_modals_1.horizontalLayout, children: [
|
|
105
|
-
jsx_runtime_1.jsxs("div", { style: settingsLeftSidebar, children: [isBrowserStudio ? null : (jsx_runtime_1.jsx(vertical_1.VerticalTab, { style: render_modals_1.horizontalTab, selected: tab === 'rendering', onClick: () => selectTab('rendering'), renderIcon: (color) => (jsx_runtime_1.jsx("div", { style: render_modals_1.iconContainer, children: jsx_runtime_1.jsx(video_1.FilmIcon, { color: color, style: render_modals_1.icon }) })), children: "Defaults" })), isBrowserStudio ? null : (jsx_runtime_1.jsx(vertical_1.VerticalTab, { style: render_modals_1.horizontalTab, selected: tab === 'studio', onClick: () => selectTab('studio'), renderIcon: (color) => (jsx_runtime_1.jsx("div", { style: render_modals_1.iconContainer, children: jsx_runtime_1.jsx(remotion_triangle_1.RemotionTriangleIcon, { color: color, style: render_modals_1.icon }) })), children: "Studio" })), jsx_runtime_1.jsx(vertical_1.VerticalTab, { style: render_modals_1.horizontalTab, selected: tab === 'shortcuts', onClick: () => selectTab('shortcuts'), renderIcon: (color) => (jsx_runtime_1.jsx("div", { style: render_modals_1.iconContainer, children: jsx_runtime_1.jsx(keyboard_1.KeyboardIcon, { color: color, style: keyboardIcon }) })), children: "Shortcuts" }), showPackages ? (jsx_runtime_1.jsx(vertical_1.VerticalTab, { style: render_modals_1.horizontalTab, selected: tab === 'packages', onClick: () => selectTab('packages'), renderIcon: (color) => (jsx_runtime_1.jsx("div", { style: render_modals_1.iconContainer, children: jsx_runtime_1.jsx(package_1.PackageIcon, { color: color, style: render_modals_1.icon }) })), children: "Packages" })) : null, isBrowserStudio ? null : (jsx_runtime_1.jsx(vertical_1.VerticalTab, { style: render_modals_1.horizontalTab, selected: tab === 'skills', onClick: () => selectTab('skills'), renderIcon: (color) => (jsx_runtime_1.jsx("div", { style: render_modals_1.iconContainer, children: jsx_runtime_1.jsx(skills_1.SkillsIcon, { color: color, style: skillsIcon }) })), children: "Skills" })), isBrowserStudio ? null : (jsx_runtime_1.jsx(vertical_1.VerticalTab, { style: render_modals_1.horizontalTab, selected: tab === 'apps', onClick: () => selectTab('apps'), renderIcon: (color) => (jsx_runtime_1.jsx("div", { style: render_modals_1.iconContainer, children: jsx_runtime_1.jsx(apps_1.AppsIcon, { color: color, style: appsIcon }) })), children: "Apps" })), isBrowserStudio ? null : (jsx_runtime_1.jsx(vertical_1.VerticalTab, { style: render_modals_1.horizontalTab, selected: tab === 'license', onClick: () => selectTab('license'), renderIcon: (color) => (jsx_runtime_1.jsx("div", { style: render_modals_1.iconContainer, children: jsx_runtime_1.jsx(license_1.LicenseIcon, { color: color, style: render_modals_1.icon }) })), children: "License" })), showUpdates ? (jsx_runtime_1.jsx(vertical_1.VerticalTab, { style: render_modals_1.horizontalTab, selected: tab === 'updates', onClick: () => selectTab('updates'), renderIcon: (color) => (jsx_runtime_1.jsx("div", { style: render_modals_1.iconContainer, children: jsx_runtime_1.jsx(cloud_download_1.CloudDownloadIcon, { color: color, style: render_modals_1.icon }) })), children: "Updates" })) : null] }), openedTabs.includes('packages') ? (jsx_runtime_1.jsx("div", { style: tab === 'packages' ? render_modals_1.optionsPanel : hiddenPanel, children: jsx_runtime_1.jsx(InstallPackage_1.InstallPackageSettings, { footerContainer: packagesFooterContainer, packageManager: packageManager }) })) : null, openedTabs.includes('apps') ? (jsx_runtime_1.jsx("div", { style: tab === 'apps' ? settingsOptionsPanel : hiddenPanel, className: is_menu_item_1.VERTICAL_SCROLLBAR_CLASSNAME, children: jsx_runtime_1.jsx(ConfigureDefaultEditorModal_1.DefaultEditorSettings, {}) })) : null, openedTabs.includes('license') ? (jsx_runtime_1.jsx("div", { style: tab === 'license' ? settingsOptionsPanel : hiddenPanel, className: is_menu_item_1.VERTICAL_SCROLLBAR_CLASSNAME, children: jsx_runtime_1.jsx(ConfigureLicenseModal_1.LicenseSettings, {}) })) : null, openedTabs.includes('skills') ? (jsx_runtime_1.jsx("div", { style: tab === 'skills' ? settingsOptionsPanel : hiddenPanel, className: is_menu_item_1.VERTICAL_SCROLLBAR_CLASSNAME, children: jsx_runtime_1.jsx(SkillsSettings_1.SkillsSettings, {}) })) : null, openedTabs.includes('shortcuts') ? (jsx_runtime_1.jsx("div", { style: tab === 'shortcuts' ? settingsOptionsPanel : hiddenPanel, className: is_menu_item_1.VERTICAL_SCROLLBAR_CLASSNAME, children: jsx_runtime_1.jsx(KeyboardShortcutsSettings_1.KeyboardShortcutsSettings, {}) })) : null, openedTabs.includes('rendering') ? (jsx_runtime_1.jsx("div", { style: tab === 'rendering' ? settingsOptionsPanel : hiddenPanel, className: is_menu_item_1.VERTICAL_SCROLLBAR_CLASSNAME, children: jsx_runtime_1.jsx(RenderingSettings_1.RenderingSettings, {}) })) : null, openedTabs.includes('studio') ? (jsx_runtime_1.jsx("div", { style: tab === 'studio' ? settingsOptionsPanel : hiddenPanel, className: is_menu_item_1.VERTICAL_SCROLLBAR_CLASSNAME, children: jsx_runtime_1.jsx(StudioSettings_1.StudioSettings, {}) })) : null, showUpdates && openedTabs.includes('updates') ? (jsx_runtime_1.jsx("div", { style: tab === 'updates' ? settingsOptionsPanel : hiddenPanel, className: is_menu_item_1.VERTICAL_SCROLLBAR_CLASSNAME, children: jsx_runtime_1.jsx(UpdatesSettings_1.UpdatesSettings, {}) })) : null] }), tab === 'packages' ? (jsx_runtime_1.jsx("div", { ref: setPackagesFooterContainer })) : isBrowserStudio || tab === 'updates' ? null : (jsx_runtime_1.jsx(SettingsModalFooter_1.SettingsModalFooter, { showLicenseFaq: tab === 'license' }))] }) }));
|
|
107
|
+
jsx_runtime_1.jsxs("div", { style: settingsLeftSidebar, children: [isBrowserStudio ? null : (jsx_runtime_1.jsx(vertical_1.VerticalTab, { style: render_modals_1.horizontalTab, selected: tab === 'rendering', onClick: () => selectTab('rendering'), renderIcon: (color) => (jsx_runtime_1.jsx("div", { style: render_modals_1.iconContainer, children: jsx_runtime_1.jsx(video_1.FilmIcon, { color: color, style: render_modals_1.icon }) })), children: "Defaults" })), isBrowserStudio ? null : (jsx_runtime_1.jsx(vertical_1.VerticalTab, { style: render_modals_1.horizontalTab, selected: tab === 'studio', onClick: () => selectTab('studio'), renderIcon: (color) => (jsx_runtime_1.jsx("div", { style: render_modals_1.iconContainer, children: jsx_runtime_1.jsx(remotion_triangle_1.RemotionTriangleIcon, { color: color, style: render_modals_1.icon }) })), children: "Studio" })), jsx_runtime_1.jsx(vertical_1.VerticalTab, { style: render_modals_1.horizontalTab, selected: tab === 'shortcuts', onClick: () => selectTab('shortcuts'), renderIcon: (color) => (jsx_runtime_1.jsx("div", { style: render_modals_1.iconContainer, children: jsx_runtime_1.jsx(keyboard_1.KeyboardIcon, { color: color, style: keyboardIcon }) })), children: "Shortcuts" }), showPackages ? (jsx_runtime_1.jsx(vertical_1.VerticalTab, { style: render_modals_1.horizontalTab, selected: tab === 'packages', onClick: () => selectTab('packages'), renderIcon: (color) => (jsx_runtime_1.jsx("div", { style: render_modals_1.iconContainer, children: jsx_runtime_1.jsx(package_1.PackageIcon, { color: color, style: render_modals_1.icon }) })), children: "Packages" })) : null, isBrowserStudio ? null : (jsx_runtime_1.jsx(vertical_1.VerticalTab, { style: render_modals_1.horizontalTab, selected: tab === 'skills', onClick: () => selectTab('skills'), renderIcon: (color) => (jsx_runtime_1.jsx("div", { style: render_modals_1.iconContainer, children: jsx_runtime_1.jsx(skills_1.SkillsIcon, { color: color, style: skillsIcon }) })), children: "Skills" })), jsx_runtime_1.jsx(vertical_1.VerticalTab, { style: render_modals_1.horizontalTab, selected: tab === 'models', onClick: () => selectTab('models'), renderIcon: (color) => (jsx_runtime_1.jsx("div", { style: render_modals_1.iconContainer, children: jsx_runtime_1.jsx(models_1.ModelsIcon, { color: color, style: render_modals_1.icon }) })), children: "Models" }), isBrowserStudio ? null : (jsx_runtime_1.jsx(vertical_1.VerticalTab, { style: render_modals_1.horizontalTab, selected: tab === 'apps', onClick: () => selectTab('apps'), renderIcon: (color) => (jsx_runtime_1.jsx("div", { style: render_modals_1.iconContainer, children: jsx_runtime_1.jsx(apps_1.AppsIcon, { color: color, style: appsIcon }) })), children: "Apps" })), isBrowserStudio ? null : (jsx_runtime_1.jsx(vertical_1.VerticalTab, { style: render_modals_1.horizontalTab, selected: tab === 'license', onClick: () => selectTab('license'), renderIcon: (color) => (jsx_runtime_1.jsx("div", { style: render_modals_1.iconContainer, children: jsx_runtime_1.jsx(license_1.LicenseIcon, { color: color, style: render_modals_1.icon }) })), children: "License" })), showUpdates ? (jsx_runtime_1.jsx(vertical_1.VerticalTab, { style: render_modals_1.horizontalTab, selected: tab === 'updates', onClick: () => selectTab('updates'), renderIcon: (color) => (jsx_runtime_1.jsx("div", { style: render_modals_1.iconContainer, children: jsx_runtime_1.jsx(cloud_download_1.CloudDownloadIcon, { color: color, style: render_modals_1.icon }) })), children: "Updates" })) : null] }), openedTabs.includes('packages') ? (jsx_runtime_1.jsx("div", { style: tab === 'packages' ? render_modals_1.optionsPanel : hiddenPanel, children: jsx_runtime_1.jsx(InstallPackage_1.InstallPackageSettings, { footerContainer: packagesFooterContainer, packageManager: packageManager }) })) : null, openedTabs.includes('apps') ? (jsx_runtime_1.jsx("div", { style: tab === 'apps' ? settingsOptionsPanel : hiddenPanel, className: is_menu_item_1.VERTICAL_SCROLLBAR_CLASSNAME, children: jsx_runtime_1.jsx(ConfigureDefaultEditorModal_1.DefaultEditorSettings, {}) })) : null, openedTabs.includes('models') ? (jsx_runtime_1.jsx("div", { style: tab === 'models' ? settingsOptionsPanel : hiddenPanel, className: is_menu_item_1.VERTICAL_SCROLLBAR_CLASSNAME, children: jsx_runtime_1.jsx(ModelsSettings_1.ModelsSettings, {}) })) : null, openedTabs.includes('license') ? (jsx_runtime_1.jsx("div", { style: tab === 'license' ? settingsOptionsPanel : hiddenPanel, className: is_menu_item_1.VERTICAL_SCROLLBAR_CLASSNAME, children: jsx_runtime_1.jsx(ConfigureLicenseModal_1.LicenseSettings, {}) })) : null, openedTabs.includes('skills') ? (jsx_runtime_1.jsx("div", { style: tab === 'skills' ? settingsOptionsPanel : hiddenPanel, className: is_menu_item_1.VERTICAL_SCROLLBAR_CLASSNAME, children: jsx_runtime_1.jsx(SkillsSettings_1.SkillsSettings, {}) })) : null, openedTabs.includes('shortcuts') ? (jsx_runtime_1.jsx("div", { style: tab === 'shortcuts' ? settingsOptionsPanel : hiddenPanel, className: is_menu_item_1.VERTICAL_SCROLLBAR_CLASSNAME, children: jsx_runtime_1.jsx(KeyboardShortcutsSettings_1.KeyboardShortcutsSettings, {}) })) : null, openedTabs.includes('rendering') ? (jsx_runtime_1.jsx("div", { style: tab === 'rendering' ? settingsOptionsPanel : hiddenPanel, className: is_menu_item_1.VERTICAL_SCROLLBAR_CLASSNAME, children: jsx_runtime_1.jsx(RenderingSettings_1.RenderingSettings, {}) })) : null, openedTabs.includes('studio') ? (jsx_runtime_1.jsx("div", { style: tab === 'studio' ? settingsOptionsPanel : hiddenPanel, className: is_menu_item_1.VERTICAL_SCROLLBAR_CLASSNAME, children: jsx_runtime_1.jsx(StudioSettings_1.StudioSettings, {}) })) : null, showUpdates && openedTabs.includes('updates') ? (jsx_runtime_1.jsx("div", { style: tab === 'updates' ? settingsOptionsPanel : hiddenPanel, className: is_menu_item_1.VERTICAL_SCROLLBAR_CLASSNAME, children: jsx_runtime_1.jsx(UpdatesSettings_1.UpdatesSettings, {}) })) : null] }), tab === 'packages' ? (jsx_runtime_1.jsx("div", { ref: setPackagesFooterContainer })) : isBrowserStudio || tab === 'models' || tab === 'updates' ? null : (jsx_runtime_1.jsx(SettingsModalFooter_1.SettingsModalFooter, { showLicenseFaq: tab === 'license' }))] }) }));
|
|
106
108
|
};
|
|
107
109
|
exports.SettingsModal = SettingsModal;
|
|
@@ -5,9 +5,21 @@ const jsx_runtime_1 = require("react/jsx-runtime");
|
|
|
5
5
|
const react_1 = require("react");
|
|
6
6
|
const editor_outlines_1 = require("../state/editor-outlines");
|
|
7
7
|
const timeline_sequence_hover_1 = require("../state/timeline-sequence-hover");
|
|
8
|
+
const browserStudioPointerLeaveEvent = 'remotion-browser-studio-pointerleave';
|
|
8
9
|
const ShowOutlinesProvider = ({ children }) => {
|
|
9
10
|
const [editorShowOutlines, setEditorShowOutlinesState] = (0, react_1.useState)(() => (0, editor_outlines_1.loadEditorShowOutlinesOption)());
|
|
10
11
|
const timelineSequenceHoverStore = (0, react_1.useMemo)(() => (0, timeline_sequence_hover_1.createTimelineSequenceHoverStore)(), []);
|
|
12
|
+
(0, react_1.useEffect)(() => {
|
|
13
|
+
const onPointerLeave = () => {
|
|
14
|
+
timelineSequenceHoverStore.setHoveredSequence((hover) => (hover === null || hover === void 0 ? void 0 : hover.source) === 'timeline' ? null : hover);
|
|
15
|
+
};
|
|
16
|
+
window.addEventListener('pointerleave', onPointerLeave);
|
|
17
|
+
window.addEventListener(browserStudioPointerLeaveEvent, onPointerLeave);
|
|
18
|
+
return () => {
|
|
19
|
+
window.removeEventListener('pointerleave', onPointerLeave);
|
|
20
|
+
window.removeEventListener(browserStudioPointerLeaveEvent, onPointerLeave);
|
|
21
|
+
};
|
|
22
|
+
}, [timelineSequenceHoverStore]);
|
|
11
23
|
const setEditorShowOutlines = (0, react_1.useCallback)((newValue) => {
|
|
12
24
|
setEditorShowOutlinesState((prevState) => {
|
|
13
25
|
const newVal = newValue(prevState);
|
|
@@ -3,9 +3,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.SidebarCollapserControl = void 0;
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
5
|
const react_1 = require("react");
|
|
6
|
-
const ShortcutHint_1 = require("../error-overlay/remotion-overlay/ShortcutHint");
|
|
7
6
|
const colors_1 = require("../helpers/colors");
|
|
8
7
|
const use_keybinding_1 = require("../helpers/use-keybinding");
|
|
8
|
+
const use_keyboard_shortcut_label_1 = require("../helpers/use-keyboard-shortcut-label");
|
|
9
9
|
const sidebar_1 = require("../state/sidebar");
|
|
10
10
|
const InlineAction_1 = require("./InlineAction");
|
|
11
11
|
const TopPanel_1 = require("./TopPanel");
|
|
@@ -92,8 +92,7 @@ const SidebarCollapserControl = ({ side }) => {
|
|
|
92
92
|
if (side === 'left') {
|
|
93
93
|
const left = keybindings.registerKeybinding({
|
|
94
94
|
event: 'keydown',
|
|
95
|
-
|
|
96
|
-
commandCtrlKey: true,
|
|
95
|
+
action: 'toggleLeftSidebar',
|
|
97
96
|
callback: toggleLeft,
|
|
98
97
|
preventDefault: true,
|
|
99
98
|
triggerIfInputFieldFocused: false,
|
|
@@ -101,8 +100,7 @@ const SidebarCollapserControl = ({ side }) => {
|
|
|
101
100
|
});
|
|
102
101
|
const zen = keybindings.registerKeybinding({
|
|
103
102
|
event: 'keydown',
|
|
104
|
-
|
|
105
|
-
commandCtrlKey: true,
|
|
103
|
+
action: 'toggleBothSidebars',
|
|
106
104
|
callback: toggleBoth,
|
|
107
105
|
preventDefault: true,
|
|
108
106
|
triggerIfInputFieldFocused: false,
|
|
@@ -115,8 +113,7 @@ const SidebarCollapserControl = ({ side }) => {
|
|
|
115
113
|
}
|
|
116
114
|
const right = keybindings.registerKeybinding({
|
|
117
115
|
event: 'keydown',
|
|
118
|
-
|
|
119
|
-
commandCtrlKey: true,
|
|
116
|
+
action: 'toggleRightSidebar',
|
|
120
117
|
callback: toggleRight,
|
|
121
118
|
preventDefault: true,
|
|
122
119
|
triggerIfInputFieldFocused: false,
|
|
@@ -126,12 +123,14 @@ const SidebarCollapserControl = ({ side }) => {
|
|
|
126
123
|
right.unregister();
|
|
127
124
|
};
|
|
128
125
|
}, [keybindings, side, toggleBoth, toggleLeft, toggleRight]);
|
|
129
|
-
const
|
|
126
|
+
const leftShortcut = (0, use_keyboard_shortcut_label_1.useKeyboardShortcutLabel)('toggleLeftSidebar');
|
|
127
|
+
const rightShortcut = (0, use_keyboard_shortcut_label_1.useKeyboardShortcutLabel)('toggleRightSidebar');
|
|
128
|
+
const toggleLeftTooltip = (0, use_keybinding_1.areKeyboardShortcutsDisabled)() || leftShortcut === ''
|
|
130
129
|
? 'Toggle Left Sidebar'
|
|
131
|
-
: `Toggle Left Sidebar (${
|
|
132
|
-
const toggleRightTooltip = (0, use_keybinding_1.areKeyboardShortcutsDisabled)()
|
|
130
|
+
: `Toggle Left Sidebar (${leftShortcut})`;
|
|
131
|
+
const toggleRightTooltip = (0, use_keybinding_1.areKeyboardShortcutsDisabled)() || rightShortcut === ''
|
|
133
132
|
? 'Toggle Right Sidebar'
|
|
134
|
-
: `Toggle Right Sidebar (${
|
|
133
|
+
: `Toggle Right Sidebar (${rightShortcut})`;
|
|
135
134
|
const colorStyle = (0, react_1.useCallback)((color) => {
|
|
136
135
|
return {
|
|
137
136
|
...style,
|
|
@@ -6,6 +6,8 @@ const react_1 = require("react");
|
|
|
6
6
|
const remotion_1 = require("remotion");
|
|
7
7
|
const colors_1 = require("../helpers/colors");
|
|
8
8
|
const get_preview_file_type_1 = require("../helpers/get-preview-file-type");
|
|
9
|
+
const use_keybinding_1 = require("../helpers/use-keybinding");
|
|
10
|
+
const use_keyboard_shortcut_label_1 = require("../helpers/use-keyboard-shortcut-label");
|
|
9
11
|
const canvas_zoom_1 = require("../icons/canvas-zoom");
|
|
10
12
|
const Checkmark_1 = require("../icons/Checkmark");
|
|
11
13
|
const TimelineCombobox_1 = require("./TimelineCombobox");
|
|
@@ -87,6 +89,10 @@ const usePreviewSizeMenuItems = () => {
|
|
|
87
89
|
}
|
|
88
90
|
return false;
|
|
89
91
|
}, [canvasContent]);
|
|
92
|
+
const configuredResetZoomShortcut = (0, use_keyboard_shortcut_label_1.useKeyboardShortcutLabel)('resetZoom');
|
|
93
|
+
const resetZoomShortcut = (0, use_keybinding_1.areKeyboardShortcutsDisabled)()
|
|
94
|
+
? ''
|
|
95
|
+
: configuredResetZoomShortcut;
|
|
90
96
|
const items = (0, react_1.useMemo)(() => {
|
|
91
97
|
return (0, exports.getUniqueSizes)(size).map((newSize) => {
|
|
92
98
|
return {
|
|
@@ -99,13 +105,15 @@ const usePreviewSizeMenuItems = () => {
|
|
|
99
105
|
},
|
|
100
106
|
type: 'item',
|
|
101
107
|
value: newSize.size,
|
|
102
|
-
keyHint: newSize.size === 'auto'
|
|
108
|
+
keyHint: newSize.size === 'auto' && resetZoomShortcut !== ''
|
|
109
|
+
? resetZoomShortcut
|
|
110
|
+
: null,
|
|
103
111
|
leftItem: String(size.size) === String(newSize.size) ? jsx_runtime_1.jsx(Checkmark_1.Checkmark, {}) : null,
|
|
104
112
|
subMenu: null,
|
|
105
113
|
quickSwitcherLabel: null,
|
|
106
114
|
};
|
|
107
115
|
});
|
|
108
|
-
}, [setSize, size]);
|
|
116
|
+
}, [resetZoomShortcut, setSize, size]);
|
|
109
117
|
return {
|
|
110
118
|
items,
|
|
111
119
|
selectedId: String(size.size),
|
|
@@ -8,7 +8,6 @@ const copy_text_1 = require("../helpers/copy-text");
|
|
|
8
8
|
const use_copy_feedback_1 = require("../helpers/use-copy-feedback");
|
|
9
9
|
const check_circle_filled_1 = require("../icons/check-circle-filled");
|
|
10
10
|
const copy_1 = require("../icons/copy");
|
|
11
|
-
const minus_1 = require("../icons/minus");
|
|
12
11
|
const InlineAction_1 = require("./InlineAction");
|
|
13
12
|
const ValidationMessage_1 = require("./NewComposition/ValidationMessage");
|
|
14
13
|
const NotificationCenter_1 = require("./Notifications/NotificationCenter");
|
|
@@ -126,8 +125,8 @@ const SkillsSettings = () => {
|
|
|
126
125
|
: 'Not installed';
|
|
127
126
|
return (jsx_runtime_1.jsxs("div", { role: "listitem", style: index === remotionSkillsInfo.skills.length - 1
|
|
128
127
|
? lastSkillRow
|
|
129
|
-
: skillRow, children: [
|
|
130
|
-
|
|
128
|
+
: skillRow, children: [
|
|
129
|
+
jsx_runtime_1.jsxs("span", { style: skillName, children: ["/", skill.name] }), jsx_runtime_1.jsx("span", { style: status, children: installedLocation }), installed ? (jsx_runtime_1.jsx(check_circle_filled_1.CheckCircleFilled, { "aria-hidden": true, style: { ...statusIcon, fill: colors_1.BLUE } })) : null] }, skill.name));
|
|
131
130
|
}) })) : null] }));
|
|
132
131
|
};
|
|
133
132
|
exports.SkillsSettings = SkillsSettings;
|
|
@@ -6,6 +6,7 @@ const react_1 = require("react");
|
|
|
6
6
|
const no_react_1 = require("remotion/no-react");
|
|
7
7
|
const colors_1 = require("../helpers/colors");
|
|
8
8
|
const use_keybinding_1 = require("../helpers/use-keybinding");
|
|
9
|
+
const use_keyboard_shortcut_label_1 = require("../helpers/use-keyboard-shortcut-label");
|
|
9
10
|
const magnet_1 = require("../icons/magnet");
|
|
10
11
|
const editor_snapping_1 = require("../state/editor-snapping");
|
|
11
12
|
const ControlButton_1 = require("./ControlButton");
|
|
@@ -14,12 +15,14 @@ const SnappingToggle = () => {
|
|
|
14
15
|
const onClick = (0, react_1.useCallback)(() => {
|
|
15
16
|
setEditorSnapping((current) => !current);
|
|
16
17
|
}, [setEditorSnapping]);
|
|
18
|
+
const shortcut = (0, use_keyboard_shortcut_label_1.useKeyboardShortcutLabel)('toggleSnapping');
|
|
19
|
+
const ariaKeyShortcuts = (0, use_keyboard_shortcut_label_1.useKeyboardShortcutAriaKeyShortcuts)('toggleSnapping');
|
|
17
20
|
const accessibilityLabel = [
|
|
18
21
|
editorSnapping ? 'Disable snapping' : 'Enable snapping',
|
|
19
|
-
(0, use_keybinding_1.areKeyboardShortcutsDisabled)() ? null :
|
|
22
|
+
(0, use_keybinding_1.areKeyboardShortcutsDisabled)() || shortcut === '' ? null : `(${shortcut})`,
|
|
20
23
|
]
|
|
21
24
|
.filter(no_react_1.NoReactInternals.truthy)
|
|
22
25
|
.join(' ');
|
|
23
|
-
return (jsx_runtime_1.jsx(ControlButton_1.ControlButton, { title: accessibilityLabel, "aria-label": accessibilityLabel, "aria-pressed": editorSnapping, "aria-keyshortcuts":
|
|
26
|
+
return (jsx_runtime_1.jsx(ControlButton_1.ControlButton, { title: accessibilityLabel, "aria-label": accessibilityLabel, "aria-pressed": editorSnapping, "aria-keyshortcuts": ariaKeyShortcuts || undefined, onClick: onClick, children: (color) => (jsx_runtime_1.jsx(magnet_1.MagnetIcon, { style: { width: 18, height: 18, transform: 'translateY(1px)' }, color: editorSnapping ? colors_1.BLUE : color, "aria-hidden": "true", focusable: "false" })) }));
|
|
24
27
|
};
|
|
25
28
|
exports.SnappingToggle = SnappingToggle;
|
|
@@ -19,7 +19,7 @@ const selectorButton = {
|
|
|
19
19
|
userSelect: 'none',
|
|
20
20
|
WebkitUserSelect: 'none',
|
|
21
21
|
};
|
|
22
|
-
const VerticalTab = ({ children, onClick, renderIcon, style, selected }) => {
|
|
22
|
+
const VerticalTab = ({ children, onClick, renderIcon, style, selected, autoFocus }) => {
|
|
23
23
|
const [hovered, setHovered] = (0, react_1.useState)(false);
|
|
24
24
|
const { tabIndex } = (0, z_index_1.useZIndex)();
|
|
25
25
|
const onPointerEnter = (0, react_1.useCallback)(() => {
|
|
@@ -38,6 +38,6 @@ const VerticalTab = ({ children, onClick, renderIcon, style, selected }) => {
|
|
|
38
38
|
...style,
|
|
39
39
|
};
|
|
40
40
|
}, [color, hovered, selected, style]);
|
|
41
|
-
return (jsx_runtime_1.jsxs("button", { style: definiteStyle, type: "button", onClick: onClick, tabIndex: tabIndex, onPointerLeave: onPointerLeave, onPointerEnter: onPointerEnter, children: [renderIcon ? renderIcon(color) : null, children] }));
|
|
41
|
+
return (jsx_runtime_1.jsxs("button", { autoFocus: autoFocus, style: definiteStyle, type: "button", onClick: onClick, tabIndex: tabIndex, onPointerLeave: onPointerLeave, onPointerEnter: onPointerEnter, children: [renderIcon ? renderIcon(color) : null, children] }));
|
|
42
42
|
};
|
|
43
43
|
exports.VerticalTab = VerticalTab;
|
|
@@ -102,13 +102,12 @@ const TimeValue = () => {
|
|
|
102
102
|
}), [seek, play, pause, toggle]);
|
|
103
103
|
(0, react_1.useEffect)(() => {
|
|
104
104
|
const gKey = keybindings.registerKeybinding({
|
|
105
|
-
event: '
|
|
106
|
-
|
|
105
|
+
event: 'keydown',
|
|
106
|
+
action: 'goToFrame',
|
|
107
107
|
callback: () => {
|
|
108
108
|
var _a;
|
|
109
109
|
(_a = ref.current) === null || _a === void 0 ? void 0 : _a.click();
|
|
110
110
|
},
|
|
111
|
-
commandCtrlKey: false,
|
|
112
111
|
preventDefault: true,
|
|
113
112
|
triggerIfInputFieldFocused: false,
|
|
114
113
|
keepRegisteredWhenNotHighestContext: false,
|
|
@@ -8,6 +8,7 @@ const client_id_1 = require("../../helpers/client-id");
|
|
|
8
8
|
const sequence_node_path_mutations_1 = require("../../helpers/sequence-node-path-mutations");
|
|
9
9
|
const ExpandedTracksProvider_1 = require("../ExpandedTracksProvider");
|
|
10
10
|
const sequence_props_subscription_store_1 = require("./sequence-props-subscription-store");
|
|
11
|
+
const TimelineSelection_1 = require("./TimelineSelection");
|
|
11
12
|
const SequencePropsObserver = () => {
|
|
12
13
|
const { subscribeToEvent } = (0, react_1.useContext)(client_id_1.StudioServerConnectionCtx);
|
|
13
14
|
const { remapPropStatuses, setPropStatuses } = (0, react_1.useContext)(remotion_1.Internals.VisualModeSettersContext);
|
|
@@ -18,6 +19,7 @@ const SequencePropsObserver = () => {
|
|
|
18
19
|
const { setOverrideIdToNodePath } = (0, react_1.useContext)(remotion_1.Internals.OverrideIdsToNodePathsSettersContext);
|
|
19
20
|
const { fastRefreshes } = (0, react_1.useContext)(fast_refresh_context_1.FastRefreshContext);
|
|
20
21
|
const { migrateExpandedTracksForSubscriptionKey } = (0, react_1.useContext)(ExpandedTracksProvider_1.ExpandedTracksSetterContext);
|
|
22
|
+
const { remapSelectionNodePaths } = (0, TimelineSelection_1.useTimelineSelection)();
|
|
21
23
|
(0, react_1.useEffect)(() => {
|
|
22
24
|
const handleEvent = (event) => {
|
|
23
25
|
if (event.type !== 'sequence-props-updated') {
|
|
@@ -36,6 +38,7 @@ const SequencePropsObserver = () => {
|
|
|
36
38
|
if (mutations.length === 0) {
|
|
37
39
|
return;
|
|
38
40
|
}
|
|
41
|
+
remapSelectionNodePaths(mutations);
|
|
39
42
|
const statusRemappings = [];
|
|
40
43
|
const overrideUpdates = [];
|
|
41
44
|
const overrideIdsToRefresh = new Set();
|
|
@@ -127,6 +130,7 @@ const SequencePropsObserver = () => {
|
|
|
127
130
|
fastRefreshes,
|
|
128
131
|
migrateExpandedTracksForSubscriptionKey,
|
|
129
132
|
propStatusesRef,
|
|
133
|
+
remapSelectionNodePaths,
|
|
130
134
|
remapPropStatuses,
|
|
131
135
|
setOverrideIdToNodePath,
|
|
132
136
|
]);
|
|
@@ -63,7 +63,6 @@ const should_subscribe_to_sequence_props_1 = require("./should-subscribe-to-sequ
|
|
|
63
63
|
const SubscribeToNodePaths_1 = require("./SubscribeToNodePaths");
|
|
64
64
|
const timeline_asset_drop_context_1 = require("./timeline-asset-drop-context");
|
|
65
65
|
const timeline_refs_1 = require("./timeline-refs");
|
|
66
|
-
const timeline_scroll_logic_1 = require("./timeline-scroll-logic");
|
|
67
66
|
const TimelineDragHandler_1 = require("./TimelineDragHandler");
|
|
68
67
|
const TimelineHeightContainer_1 = require("./TimelineHeightContainer");
|
|
69
68
|
const TimelineInOutDragHandler_1 = require("./TimelineInOutDragHandler");
|
|
@@ -75,7 +74,7 @@ const TimelinePinchZoom_1 = require("./TimelinePinchZoom");
|
|
|
75
74
|
const TimelinePlayCursorSyncer_1 = require("./TimelinePlayCursorSyncer");
|
|
76
75
|
const TimelineScrollable_1 = require("./TimelineScrollable");
|
|
77
76
|
const TimelineSelection_1 = require("./TimelineSelection");
|
|
78
|
-
const
|
|
77
|
+
const TimelineSequenceRightEdgeDragHandle_1 = require("./TimelineSequenceRightEdgeDragHandle");
|
|
79
78
|
const TimelineSlider_1 = require("./TimelineSlider");
|
|
80
79
|
const TimelineTickFormatProvider_1 = require("./TimelineTickFormatProvider");
|
|
81
80
|
const TimelineTimeIndicators_1 = require("./TimelineTimeIndicators");
|
|
@@ -99,7 +98,6 @@ const TimelineContextMenuArea = ({ children }) => {
|
|
|
99
98
|
const assetDropFrame = (0, use_timeline_asset_drop_1.useTimelineAssetDrop)();
|
|
100
99
|
const { compositions, canvasContent } = (0, react_1.useContext)(remotion_1.Internals.CompositionManager);
|
|
101
100
|
const videoConfig = remotion_1.Internals.useUnsafeVideoConfig();
|
|
102
|
-
const isStill = (0, is_current_selected_still_1.useIsStill)();
|
|
103
101
|
const [isAddingSolid, setIsAddingSolid] = (0, react_1.useState)(false);
|
|
104
102
|
const [isAddingAsset, setIsAddingAsset] = (0, react_1.useState)(false);
|
|
105
103
|
const { previewServerState } = (0, react_1.useContext)(client_id_1.StudioServerConnectionCtx);
|
|
@@ -107,44 +105,6 @@ const TimelineContextMenuArea = ({ children }) => {
|
|
|
107
105
|
const previewInteractive = previewConnected && (0, interactivity_enabled_1.isStudioInteractivityEnabled)();
|
|
108
106
|
const browserStudioOperations = (0, browser_studio_operations_1.getBrowserStudioOperations)();
|
|
109
107
|
const browserStudioCanInsertSolid = browserStudioOperations !== null;
|
|
110
|
-
(0, react_1.useEffect)(() => {
|
|
111
|
-
const verticalScroll = timeline_refs_1.timelineVerticalScroll.current;
|
|
112
|
-
if (!verticalScroll) {
|
|
113
|
-
return;
|
|
114
|
-
}
|
|
115
|
-
const autoScroll = (0, timeline_scroll_logic_1.startTimelineEdgeAutoScroll)({
|
|
116
|
-
includeHorizontal: false,
|
|
117
|
-
includeVertical: true,
|
|
118
|
-
verticalTopOffset: isStill ? 0 : TimelineTimeIndicators_1.TIMELINE_TIME_INDICATOR_HEIGHT,
|
|
119
|
-
onTick: (directions) => {
|
|
120
|
-
if (directions.y === null) {
|
|
121
|
-
return;
|
|
122
|
-
}
|
|
123
|
-
verticalScroll.scrollTop +=
|
|
124
|
-
directions.y === 'up'
|
|
125
|
-
? -timeline_scroll_logic_1.EDGE_SCROLL_VERTICAL_INCREMENT
|
|
126
|
-
: timeline_scroll_logic_1.EDGE_SCROLL_VERTICAL_INCREMENT;
|
|
127
|
-
},
|
|
128
|
-
});
|
|
129
|
-
const onDragOver = (event) => {
|
|
130
|
-
if (!event.dataTransfer ||
|
|
131
|
-
!Array.from(event.dataTransfer.types).includes(TimelineSequenceItem_1.SEQUENCE_REORDER_MIME_TYPE)) {
|
|
132
|
-
autoScroll.stop();
|
|
133
|
-
return;
|
|
134
|
-
}
|
|
135
|
-
autoScroll.update(event);
|
|
136
|
-
};
|
|
137
|
-
const stopAutoScroll = () => autoScroll.stop();
|
|
138
|
-
verticalScroll.addEventListener('dragover', onDragOver, true);
|
|
139
|
-
document.addEventListener('dragend', stopAutoScroll, true);
|
|
140
|
-
document.addEventListener('drop', stopAutoScroll, true);
|
|
141
|
-
return () => {
|
|
142
|
-
autoScroll.stop();
|
|
143
|
-
verticalScroll.removeEventListener('dragover', onDragOver, true);
|
|
144
|
-
document.removeEventListener('dragend', stopAutoScroll, true);
|
|
145
|
-
document.removeEventListener('drop', stopAutoScroll, true);
|
|
146
|
-
};
|
|
147
|
-
}, [isStill]);
|
|
148
108
|
const currentCompositionId = (canvasContent === null || canvasContent === void 0 ? void 0 : canvasContent.type) === 'composition' ? canvasContent.compositionId : null;
|
|
149
109
|
const currentComposition = (0, react_1.useMemo)(() => {
|
|
150
110
|
var _a;
|
|
@@ -413,6 +373,6 @@ const TimelineInner = () => {
|
|
|
413
373
|
};
|
|
414
374
|
const MemoizedTimelineInner = react_1.default.memo(TimelineInner);
|
|
415
375
|
const Timeline = () => {
|
|
416
|
-
return (jsx_runtime_1.jsx(TimelineTickFormatProvider_1.TimelineTickFormatProvider, { children: jsx_runtime_1.jsx(MemoizedTimelineInner, {}) }));
|
|
376
|
+
return (jsx_runtime_1.jsx(TimelineTickFormatProvider_1.TimelineTickFormatProvider, { children: jsx_runtime_1.jsx(TimelineSequenceRightEdgeDragHandle_1.TimelineSequenceMediaDurationDragLimitsProvider, { children: jsx_runtime_1.jsx(MemoizedTimelineInner, {}) }) }));
|
|
417
377
|
};
|
|
418
378
|
exports.Timeline = Timeline;
|
|
@@ -367,7 +367,7 @@ const TimelineClipboardKeybindings = () => {
|
|
|
367
367
|
const { clientId } = previewServerState;
|
|
368
368
|
const copy = keybindings.registerKeybinding({
|
|
369
369
|
event: 'keydown',
|
|
370
|
-
|
|
370
|
+
action: 'copyEffectsAndValues',
|
|
371
371
|
callback: (e) => {
|
|
372
372
|
var _a, _b;
|
|
373
373
|
const { selectedItems } = currentSelection.current;
|
|
@@ -509,14 +509,13 @@ const TimelineClipboardKeybindings = () => {
|
|
|
509
509
|
(0, NotificationCenter_1.showNotification)(`Could not copy effects: ${err.message}`, 2000);
|
|
510
510
|
});
|
|
511
511
|
},
|
|
512
|
-
commandCtrlKey: true,
|
|
513
512
|
preventDefault: false,
|
|
514
513
|
triggerIfInputFieldFocused: false,
|
|
515
514
|
keepRegisteredWhenNotHighestContext: false,
|
|
516
515
|
});
|
|
517
516
|
const cut = keybindings.registerKeybinding({
|
|
518
517
|
event: 'keydown',
|
|
519
|
-
|
|
518
|
+
action: 'cutEffects',
|
|
520
519
|
callback: (e) => {
|
|
521
520
|
const { selectedItems, clearSelection, selectItems } = currentSelection.current;
|
|
522
521
|
if (selectedItems.length === 0) {
|
|
@@ -575,7 +574,6 @@ const TimelineClipboardKeybindings = () => {
|
|
|
575
574
|
(0, NotificationCenter_1.showNotification)(`Could not cut effects: ${err.message}`, 2000);
|
|
576
575
|
});
|
|
577
576
|
},
|
|
578
|
-
commandCtrlKey: true,
|
|
579
577
|
preventDefault: false,
|
|
580
578
|
triggerIfInputFieldFocused: false,
|
|
581
579
|
keepRegisteredWhenNotHighestContext: false,
|
|
@@ -25,31 +25,18 @@ const TimelineDeleteKeybindings = () => {
|
|
|
25
25
|
if (!canSelect || previewServerState.type !== 'connected') {
|
|
26
26
|
return;
|
|
27
27
|
}
|
|
28
|
-
const backspace = keybindings.registerKeybinding({
|
|
29
|
-
event: 'keydown',
|
|
30
|
-
key: 'Backspace',
|
|
31
|
-
callback: () => deleteTimelineItems(null),
|
|
32
|
-
commandCtrlKey: false,
|
|
33
|
-
preventDefault: true,
|
|
34
|
-
triggerIfInputFieldFocused: false,
|
|
35
|
-
keepRegisteredWhenNotHighestContext: false,
|
|
36
|
-
});
|
|
37
28
|
const deleteKey = keybindings.registerKeybinding({
|
|
38
29
|
event: 'keydown',
|
|
39
|
-
|
|
30
|
+
action: 'deleteSelection',
|
|
40
31
|
callback: () => deleteTimelineItems(null),
|
|
41
|
-
commandCtrlKey: false,
|
|
42
32
|
preventDefault: true,
|
|
43
33
|
triggerIfInputFieldFocused: false,
|
|
44
34
|
keepRegisteredWhenNotHighestContext: false,
|
|
45
35
|
});
|
|
46
36
|
const duplicate = keybindings.registerKeybinding({
|
|
47
37
|
event: 'keydown',
|
|
48
|
-
|
|
49
|
-
callback: (
|
|
50
|
-
if (!(0, split_selected_timeline_item_1.shouldHandleTimelineDuplicateShortcut)(event)) {
|
|
51
|
-
return;
|
|
52
|
-
}
|
|
38
|
+
action: 'duplicateSequences',
|
|
39
|
+
callback: () => {
|
|
53
40
|
const { selectedItems } = currentSelection.current;
|
|
54
41
|
if (selectedItems.length === 0) {
|
|
55
42
|
return;
|
|
@@ -63,7 +50,6 @@ const TimelineDeleteKeybindings = () => {
|
|
|
63
50
|
}
|
|
64
51
|
duplicatePromise.catch(() => undefined);
|
|
65
52
|
},
|
|
66
|
-
commandCtrlKey: true,
|
|
67
53
|
preventDefault: true,
|
|
68
54
|
triggerIfInputFieldFocused: false,
|
|
69
55
|
keepRegisteredWhenNotHighestContext: false,
|
|
@@ -97,7 +83,6 @@ const TimelineDeleteKeybindings = () => {
|
|
|
97
83
|
keepRegisteredWhenNotHighestContext: false,
|
|
98
84
|
});
|
|
99
85
|
return () => {
|
|
100
|
-
backspace.unregister();
|
|
101
86
|
deleteKey.unregister();
|
|
102
87
|
duplicate.unregister();
|
|
103
88
|
split.unregister();
|
|
@@ -115,7 +115,7 @@ const TimelineDragHandler = () => {
|
|
|
115
115
|
};
|
|
116
116
|
exports.TimelineDragHandler = TimelineDragHandler;
|
|
117
117
|
const TimelineDragHandlerInner = () => {
|
|
118
|
-
var _a;
|
|
118
|
+
var _a, _b;
|
|
119
119
|
const videoConfig = (0, remotion_1.useVideoConfig)();
|
|
120
120
|
const size = player_1.PlayerInternals.useElementSize(timeline_refs_1.scrollableRef, {
|
|
121
121
|
triggerOnWindowResize: true,
|
|
@@ -320,6 +320,6 @@ const TimelineDragHandlerInner = () => {
|
|
|
320
320
|
current.removeEventListener('scroll', onScroll);
|
|
321
321
|
};
|
|
322
322
|
}, []);
|
|
323
|
-
return (jsx_runtime_1.jsx("div", { ref: ref, style: style, onPointerDown: onPointerDown, children: jsx_runtime_1.jsx("div", { style: inner, className: is_menu_item_1.VERTICAL_SCROLLBAR_CLASSNAME }) }));
|
|
323
|
+
return (jsx_runtime_1.jsx("div", { ref: ref, style: { ...style, minWidth: (_b = size === null || size === void 0 ? void 0 : size.width) !== null && _b !== void 0 ? _b : 0 }, onPointerDown: onPointerDown, children: jsx_runtime_1.jsx("div", { style: inner, className: is_menu_item_1.VERTICAL_SCROLLBAR_CLASSNAME }) }));
|
|
324
324
|
};
|
|
325
325
|
const TimelineDragHandlerInnerMemo = react_1.default.memo(TimelineDragHandlerInner);
|
|
@@ -47,6 +47,7 @@ const rowClipper = {
|
|
|
47
47
|
boxSizing: 'border-box',
|
|
48
48
|
marginLeft: -timeline_layout_1.TIMELINE_PADDING,
|
|
49
49
|
marginRight: -timeline_layout_1.TIMELINE_PADDING,
|
|
50
|
+
minWidth: `calc(100% + ${timeline_layout_1.TIMELINE_PADDING * 2}px)`,
|
|
50
51
|
overflow: 'hidden',
|
|
51
52
|
paddingLeft: timeline_layout_1.TIMELINE_PADDING,
|
|
52
53
|
paddingRight: timeline_layout_1.TIMELINE_PADDING,
|
|
@@ -37,6 +37,7 @@ exports.TimelineRowChrome = exports.TimelineRowKeyframeControlsColumn = exports.
|
|
|
37
37
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
38
38
|
const react_1 = __importStar(require("react"));
|
|
39
39
|
const colors_1 = require("../../helpers/colors");
|
|
40
|
+
const drag_aware_double_click_1 = require("../../helpers/drag-aware-double-click");
|
|
40
41
|
const Padder_1 = require("./Padder");
|
|
41
42
|
const timeline_row_layout_1 = require("./timeline-row-layout");
|
|
42
43
|
const TimelineRowLayoutContext_1 = require("./TimelineRowLayoutContext");
|
|
@@ -72,6 +73,7 @@ exports.TimelineRowKeyframeControlsColumn = TimelineRowKeyframeControlsColumn;
|
|
|
72
73
|
const TimelineRowChrome = ({ depth, eye, keyframeControls, arrow, children, style, selected, selectable, onSelect, showSelectedBackground, containsSelection, hovered = false, outerHeight, onDragLeave, onDragOver, onDrop, onDoubleClick, onPointerEnter, onPointerLeave, }) => {
|
|
73
74
|
const { basePadding, rowBorderRadius, rowHorizontalMargin } = (0, react_1.useContext)(TimelineRowLayoutContext_1.TimelineRowLayoutContext);
|
|
74
75
|
const selectedBackground = (0, react_1.useContext)(exports.TimelineRowSelectedBackgroundContext);
|
|
76
|
+
const doubleClickTracker = (0, react_1.useMemo)(() => (0, drag_aware_double_click_1.createDragAwareDoubleClickTracker)(), []);
|
|
75
77
|
const indentWidth = (0, timeline_row_layout_1.getTimelineRowIndentWidth)(depth);
|
|
76
78
|
const chromeColumnStyle = (0, react_1.useMemo)(() => ({
|
|
77
79
|
alignItems: 'center',
|
|
@@ -95,7 +97,7 @@ const TimelineRowChrome = ({ depth, eye, keyframeControls, arrow, children, styl
|
|
|
95
97
|
onSelect();
|
|
96
98
|
}
|
|
97
99
|
}, [onSelect, selected]);
|
|
98
|
-
const
|
|
100
|
+
const performDoubleClickIfNotInteractive = (0, react_1.useCallback)((e) => {
|
|
99
101
|
const { target } = e;
|
|
100
102
|
if (target instanceof Element &&
|
|
101
103
|
e.currentTarget.contains(target.closest('button, input, select, textarea, a, [contenteditable="true"]'))) {
|
|
@@ -104,6 +106,12 @@ const TimelineRowChrome = ({ depth, eye, keyframeControls, arrow, children, styl
|
|
|
104
106
|
}
|
|
105
107
|
onDoubleClick === null || onDoubleClick === void 0 ? void 0 : onDoubleClick(e);
|
|
106
108
|
}, [onDoubleClick]);
|
|
109
|
+
const onClick = (0, react_1.useCallback)((e) => {
|
|
110
|
+
if (!doubleClickTracker.acceptClickAsDoubleClick(e)) {
|
|
111
|
+
return;
|
|
112
|
+
}
|
|
113
|
+
performDoubleClickIfNotInteractive(e);
|
|
114
|
+
}, [doubleClickTracker, performDoubleClickIfNotInteractive]);
|
|
107
115
|
const highlightBackground = (0, TimelineSelection_1.getTimelineRowHighlightBackground)({
|
|
108
116
|
showSelectedBackground,
|
|
109
117
|
selected,
|
|
@@ -139,8 +147,8 @@ const TimelineRowChrome = ({ depth, eye, keyframeControls, arrow, children, styl
|
|
|
139
147
|
}, [outerHeight, highlightBackground]);
|
|
140
148
|
const chrome = (jsx_runtime_1.jsxs(jsx_runtime_1.Fragment, { children: [keyframeControls ? (jsx_runtime_1.jsx(exports.TimelineRowKeyframeControlsColumn, { depth: depth, children: keyframeControls })) : (jsx_runtime_1.jsx("div", { style: leftChromeStyle, children: jsx_runtime_1.jsxs("div", { style: chromeColumnStyle, children: [eye, indentWidth > 0 ? jsx_runtime_1.jsx(Padder_1.Padder, { depth: depth }) : null, arrow] }) })), children] }));
|
|
141
149
|
if (outerStyle) {
|
|
142
|
-
return (jsx_runtime_1.jsx("div", { style: outerStyle, onDragLeave: onDragLeave, onDragOver: onDragOver, onDrop: onDrop, onPointerDown: selectable ? onPointerDown : undefined, onContextMenu: selectable ? onContextMenu : undefined,
|
|
150
|
+
return (jsx_runtime_1.jsx("div", { style: outerStyle, onDragLeave: onDragLeave, onDragOver: onDragOver, onDrop: onDrop, onPointerDownCapture: doubleClickTracker.beginPointerGesture, onPointerDown: selectable ? onPointerDown : undefined, onClick: onClick, onContextMenu: selectable ? onContextMenu : undefined, onPointerEnter: onPointerEnter, onPointerLeave: onPointerLeave, children: jsx_runtime_1.jsx("div", { style: innerRowStyle, children: chrome }) }));
|
|
143
151
|
}
|
|
144
|
-
return (jsx_runtime_1.jsx("div", { onDragLeave: onDragLeave, onDragOver: onDragOver, onDrop: onDrop, onPointerDown: selectable ? onPointerDown : undefined, onContextMenu: selectable ? onContextMenu : undefined,
|
|
152
|
+
return (jsx_runtime_1.jsx("div", { onDragLeave: onDragLeave, onDragOver: onDragOver, onDrop: onDrop, onPointerDownCapture: doubleClickTracker.beginPointerGesture, onPointerDown: selectable ? onPointerDown : undefined, onClick: onClick, onContextMenu: selectable ? onContextMenu : undefined, onPointerEnter: onPointerEnter, onPointerLeave: onPointerLeave, style: innerRowStyle, children: chrome }));
|
|
145
153
|
};
|
|
146
154
|
exports.TimelineRowChrome = TimelineRowChrome;
|
|
@@ -52,8 +52,10 @@ const unsupportedStatusWrapper = {
|
|
|
52
52
|
};
|
|
53
53
|
const unsupportedLabel = {
|
|
54
54
|
color: colors_1.WHITE_ALPHA_40,
|
|
55
|
+
fontFamily: 'Arial, Helvetica, sans-serif',
|
|
55
56
|
fontSize: 12,
|
|
56
57
|
fontStyle: 'italic',
|
|
58
|
+
lineHeight: '18px',
|
|
57
59
|
};
|
|
58
60
|
const computedValue = {
|
|
59
61
|
color: colors_1.WHITE_ALPHA_40,
|
|
@@ -119,10 +121,12 @@ const TimelineNonEditableStatus = ({ propStatus, field, runtimeValue, validatedL
|
|
|
119
121
|
});
|
|
120
122
|
}, [field.key, remotionSkillsInfo, setSelectedModal, validatedLocation]);
|
|
121
123
|
if (propStatus.status === 'computed') {
|
|
122
|
-
return (jsx_runtime_1.jsx(exports.UnsupportedStatus, { label:
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
124
|
+
return (jsx_runtime_1.jsx(exports.UnsupportedStatus, { label: runtimeValue === undefined
|
|
125
|
+
? 'computed'
|
|
126
|
+
: (0, timeline_field_display_utils_1.formatTimelineFieldValueForDisplay)({
|
|
127
|
+
fieldSchema: field.fieldSchema,
|
|
128
|
+
value: runtimeValue,
|
|
129
|
+
}), onFix: onFix, formattedValue: runtimeValue !== undefined }));
|
|
126
130
|
}
|
|
127
131
|
};
|
|
128
132
|
exports.TimelineNonEditableStatus = TimelineNonEditableStatus;
|