@remotion/studio 4.0.527 → 4.0.528
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/components/AgentPrompt.js +1 -2
- package/dist/components/AudioWaveform.d.ts +1 -0
- package/dist/components/AudioWaveform.js +10 -14
- package/dist/components/CodeFrame.js +1 -1
- package/dist/components/ColorPicker/checker.d.ts +1 -1
- package/dist/components/CurrentAsset.js +3 -2
- package/dist/components/EditorRuler/Ruler.js +6 -3
- package/dist/components/EffectPickerModal.js +69 -43
- package/dist/components/ElementInstallConfirmation.js +3 -3
- package/dist/components/ElementLibrariesSettings.d.ts +2 -0
- package/dist/components/ElementLibrariesSettings.js +200 -0
- package/dist/components/InitialCompositionLoader.js +3 -1
- package/dist/components/InspectorOpenInEditor.js +13 -0
- package/dist/components/InspectorPanel/AlignmentControls.js +28 -9
- package/dist/components/InspectorPanel/CollapsibleInspectorSectionHeader.js +1 -1
- package/dist/components/InspectorPanel/EasingInspector.js +6 -2
- package/dist/components/InspectorPanel/ElementLibraryButton.js +1 -1
- package/dist/components/InspectorPanel/KeyframeEasingNavigator.js +1 -1
- package/dist/components/InspectorPanel/KeyframeInspector.js +28 -24
- package/dist/components/InspectorPanel/MultiSequenceNumberField.js +1 -1
- package/dist/components/InspectorPanel/SequenceInspectorHeader.d.ts +3 -1
- package/dist/components/InspectorPanel/SequenceSelectionInspector.js +30 -2
- package/dist/components/InspectorPanel/SequenceWrapAction.d.ts +8 -0
- package/dist/components/InspectorPanel/SequenceWrapAction.js +151 -0
- package/dist/components/InspectorPanel/easing-inspector-selection.d.ts +2 -1
- package/dist/components/InspectorPanel/easing-inspector-selection.js +4 -3
- package/dist/components/InspectorPanel/keyframe-inspector-frame.d.ts +2 -1
- package/dist/components/InspectorPanel/keyframe-inspector-frame.js +2 -2
- package/dist/components/InspectorSequenceSection.d.ts +1 -0
- package/dist/components/InspectorSequenceSection.js +7 -5
- package/dist/components/KeyboardShortcutsSettings.js +1 -1
- package/dist/components/Menu/styles.d.ts +2 -2
- package/dist/components/Modals.js +7 -6
- package/dist/components/ModelManager.js +10 -9
- package/dist/components/NewComposition/CancelButton.js +10 -4
- package/dist/components/NewComposition/InputDragger.d.ts +3 -1
- package/dist/components/NewComposition/InputDragger.js +28 -9
- package/dist/components/NewComposition/NewComposition.js +7 -6
- package/dist/components/NewComposition/RemInput.d.ts +1 -1
- package/dist/components/NewComposition/menu-typeahead.js +1 -1
- package/dist/components/Preview.js +3 -2
- package/dist/components/RenderModal/SchemaEditor/create-zod-values.js +1 -2
- package/dist/components/RenderModal/WebRenderModalPicture.js +1 -2
- package/dist/components/RenderQueue/CaptionQueueItem.js +14 -5
- package/dist/components/RenderQueue/CaptionQueueProcessor.js +30 -7
- package/dist/components/RenderQueue/QueueJobError.d.ts +8 -0
- package/dist/components/RenderQueue/QueueJobError.js +24 -0
- package/dist/components/RenderQueue/QueueJobErrorModal.d.ts +8 -0
- package/dist/components/RenderQueue/QueueJobErrorModal.js +63 -0
- package/dist/components/RenderQueue/RenderQueueItemCancelButton.d.ts +3 -1
- package/dist/components/RenderQueue/RenderQueueItemCancelButton.js +11 -4
- package/dist/components/RenderQueue/RenderQueueRepeat.d.ts +3 -1
- package/dist/components/RenderQueue/RenderQueueRepeat.js +20 -3
- package/dist/components/RenderQueue/VideoMattingQueueItem.js +24 -27
- package/dist/components/RenderQueue/VideoMattingQueueProcessor.js +68 -28
- package/dist/components/RenderQueue/caption-job-types.d.ts +3 -1
- package/dist/components/RenderQueue/context.d.ts +4 -0
- package/dist/components/RenderQueue/context.js +58 -8
- package/dist/components/RenderQueue/index.js +2 -3
- package/dist/components/RenderQueue/load-model-for-job.d.ts +2 -1
- package/dist/components/RenderQueue/load-model-for-job.js +5 -1
- package/dist/components/RenderQueue/video-matting-job-types.d.ts +13 -6
- package/dist/components/SelectedOutlineCropControls.js +2 -1
- package/dist/components/SelectedOutlineEditingHandles.js +9 -2
- package/dist/components/SelectedOutlineElement.js +9 -3
- package/dist/components/SelectedOutlineKeyboardControls.d.ts +2 -4
- package/dist/components/SelectedOutlineKeyboardControls.js +4 -22
- package/dist/components/SelectedOutlineOverlay.js +152 -106
- package/dist/components/SelectedOutlinePathPoints.d.ts +8 -0
- package/dist/components/SelectedOutlinePathPoints.js +433 -0
- package/dist/components/SelectedOutlinePolygon.js +21 -46
- package/dist/components/SelectedOutlineRenderer.d.ts +3 -5
- package/dist/components/SelectedOutlineRenderer.js +32 -136
- package/dist/components/SelectedOutlineTransformOriginHandle.js +3 -2
- package/dist/components/SelectedOutlineUvControls.js +12 -7
- package/dist/components/SettingsModal.js +30 -3
- package/dist/components/SettingsModalFooter.d.ts +1 -0
- package/dist/components/SettingsModalFooter.js +7 -3
- package/dist/components/ShowOutlinesProvider.js +1 -1
- package/dist/components/SkillsSettings.d.ts +0 -1
- package/dist/components/SkillsSettings.js +13 -14
- package/dist/components/Splitter/SplitterElement.js +1 -2
- package/dist/components/TimeValue.js +1 -1
- package/dist/components/Timeline/LoopedTimelineIndicators.d.ts +1 -0
- package/dist/components/Timeline/LoopedTimelineIndicators.js +7 -6
- package/dist/components/Timeline/TimelineArrayField.js +1 -1
- package/dist/components/Timeline/TimelineClipboardKeybindings.js +0 -1
- package/dist/components/Timeline/TimelineColorField.js +1 -1
- package/dist/components/Timeline/TimelineDragHandler.js +1 -1
- package/dist/components/Timeline/TimelineEffectPropItem.d.ts +1 -0
- package/dist/components/Timeline/TimelineEffectPropItem.js +12 -5
- package/dist/components/Timeline/TimelineExpandedRow.d.ts +1 -0
- package/dist/components/Timeline/TimelineExpandedRow.js +5 -4
- package/dist/components/Timeline/TimelineExpandedSection.d.ts +1 -0
- package/dist/components/Timeline/TimelineExpandedSection.js +2 -2
- package/dist/components/Timeline/TimelineExpandedTrackKeyframes.d.ts +1 -0
- package/dist/components/Timeline/TimelineExpandedTrackKeyframes.js +3 -1
- package/dist/components/Timeline/TimelineFontFamilyField.js +12 -12
- package/dist/components/Timeline/TimelineKeyframeControls.d.ts +1 -0
- package/dist/components/Timeline/TimelineKeyframeControls.js +39 -28
- package/dist/components/Timeline/TimelineLayerChildren.js +1 -1
- package/dist/components/Timeline/TimelineList.js +1 -1
- package/dist/components/Timeline/TimelineNumberField.js +2 -4
- package/dist/components/Timeline/TimelinePrimitiveFieldValue.js +1 -1
- package/dist/components/Timeline/TimelineSelection.d.ts +9 -9
- package/dist/components/Timeline/TimelineSelection.js +16 -9
- package/dist/components/Timeline/TimelineSequence.d.ts +3 -1
- package/dist/components/Timeline/TimelineSequence.js +39 -21
- package/dist/components/Timeline/TimelineSequenceItem.d.ts +1 -0
- package/dist/components/Timeline/TimelineSequenceItem.js +18 -8
- package/dist/components/Timeline/TimelineSequencePropItem.d.ts +3 -0
- package/dist/components/Timeline/TimelineSequencePropItem.js +262 -25
- package/dist/components/Timeline/TimelineSequenceRightEdgeDragHandle.d.ts +11 -13
- package/dist/components/Timeline/TimelineSequenceRightEdgeDragHandle.js +98 -77
- package/dist/components/Timeline/TimelineTextContentField.js +27 -4
- package/dist/components/Timeline/TimelineTimeIndicators.js +10 -5
- package/dist/components/Timeline/TimelineTrack.js +1 -1
- package/dist/components/Timeline/TimelineTrimTooltip.d.ts +11 -0
- package/dist/components/Timeline/TimelineTrimTooltip.js +41 -0
- package/dist/components/Timeline/TimelineVideoInfo.d.ts +1 -0
- package/dist/components/Timeline/TimelineVideoInfo.js +13 -10
- package/dist/components/Timeline/delete-selected-keyframe.js +22 -8
- package/dist/components/Timeline/delete-selected-timeline-item.d.ts +1 -5
- package/dist/components/Timeline/delete-selected-timeline-item.js +7 -93
- package/dist/components/Timeline/get-animation-item-selection-for-frame.d.ts +2 -1
- package/dist/components/Timeline/get-animation-item-selection-for-frame.js +7 -5
- package/dist/components/Timeline/get-keyframed-sequence-drag-targets.d.ts +23 -0
- package/dist/components/Timeline/get-keyframed-sequence-drag-targets.js +57 -0
- package/dist/components/Timeline/get-node-keyframes.d.ts +2 -1
- package/dist/components/Timeline/get-node-keyframes.js +6 -4
- package/dist/components/Timeline/get-playback-rate-keyframe-changes.d.ts +21 -0
- package/dist/components/Timeline/get-playback-rate-keyframe-changes.js +142 -0
- package/dist/components/Timeline/get-timeline-keyframes.d.ts +15 -2
- package/dist/components/Timeline/get-timeline-keyframes.js +44 -6
- package/dist/components/Timeline/keyframe-clipboard.js +17 -3
- package/dist/components/Timeline/split-selected-timeline-item.js +4 -1
- package/dist/components/Timeline/timeline-field-display-utils.js +1 -0
- package/dist/components/Timeline/timeline-field-row-layout.js +1 -0
- package/dist/components/Timeline/use-delete-timeline-items.js +17 -11
- package/dist/components/Timeline/use-expanded-track-keyframe-rows.d.ts +2 -1
- package/dist/components/Timeline/use-expanded-track-keyframe-rows.js +3 -1
- package/dist/components/Timeline/use-sequence-freeze-frame-menu-item.js +7 -3
- package/dist/components/Timeline/use-timeline-keyframe-drag.js +28 -19
- package/dist/components/Transcription/Models.js +1 -1
- package/dist/components/Transcription/TranscriptionModal.js +3 -1
- package/dist/components/Transcription/resample-media-to-16-khz.d.ts +2 -1
- package/dist/components/Transcription/resample-media-to-16-khz.js +20 -2
- package/dist/components/UpdatesSettings.js +2 -0
- package/dist/components/VideoMatting/Models.js +1 -1
- package/dist/components/VideoMatting/VideoMattingModal.js +30 -47
- package/dist/components/VideoMatting/VideoMattingModalWithOptionalPackage.js +1 -1
- package/dist/components/WebMcp.js +22 -40
- package/dist/components/composition-drop-preview.js +1 -0
- package/dist/components/effect-drag-and-drop.d.ts +13 -5
- package/dist/components/effect-drag-and-drop.js +19 -4
- package/dist/components/get-open-in-menu-items.d.ts +2 -1
- package/dist/components/get-open-in-menu-items.js +17 -1
- package/dist/components/selected-outline-drag.d.ts +1 -6
- package/dist/components/selected-outline-drag.js +22 -6
- package/dist/components/selected-outline-geometry.d.ts +2 -18
- package/dist/components/selected-outline-measurement.d.ts +23 -41
- package/dist/components/selected-outline-measurement.js +14 -252
- package/dist/components/selected-outline-order.d.ts +4 -11
- package/dist/components/selected-outline-order.js +2 -254
- package/dist/components/selected-outline-snap.d.ts +1 -1
- package/dist/components/selected-outline-snap.js +2 -1
- package/dist/components/selected-outline-types.d.ts +18 -28
- package/dist/components/selected-outline-uv.d.ts +4 -4
- package/dist/components/selected-outline-uv.js +6 -111
- package/dist/components/sequence-props-api.js +0 -10
- package/dist/components/use-selected-outline-control-target.js +12 -21
- package/dist/components/wrap-jsx-node-api.d.ts +2 -0
- package/dist/components/wrap-jsx-node-api.js +13 -0
- package/dist/error-overlay/remotion-overlay/OpenInEditor.js +45 -2
- package/dist/error-overlay/remotion-overlay/StackFrame.js +32 -3
- package/dist/esm/{CaptionQueueProcessor-npa6szn1.mjs → CaptionQueueProcessor-nr7hjcga.mjs} +63 -17
- package/dist/esm/LazyModels-ajkn7fs3.mjs +12 -0
- package/dist/esm/LazyModels-g1g7cf4e.mjs +12 -0
- package/dist/esm/{TranscriptionModal-79m5wgcj.mjs → TranscriptionModal-e18bzbkb.mjs} +15 -15
- package/dist/esm/{VideoMattingModal-31pew0xj.mjs → VideoMattingModal-5bz2s4rs.mjs} +47 -65
- package/dist/esm/{VideoMattingQueueProcessor-t1hgm2rm.mjs → VideoMattingQueueProcessor-4tkj0f4k.mjs} +69 -26
- package/dist/esm/{index-v4tr1bft.mjs → index-09txs1bj.mjs} +5 -0
- package/dist/esm/{index-n5gmcvhz.mjs → index-5ycb9e9q.mjs} +2 -4
- package/dist/esm/{index-5t2dwxsk.mjs → index-890dd9b3.mjs} +259 -21
- package/dist/esm/{index-ac5550e7.mjs → index-8nt6a0mw.mjs} +3 -3
- package/dist/esm/{index-614tdz2q.mjs → index-9q9w8v9p.mjs} +3 -3
- package/dist/esm/{index-s7qa3xbw.mjs → index-c2wabcdt.mjs} +6 -6
- package/dist/esm/{index-r1gr3j3a.mjs → index-dfy1t576.mjs} +50 -1
- package/dist/esm/{index-21hxsfaa.mjs → index-dh3zk2hv.mjs} +6 -25
- package/dist/esm/{index-4zen9prq.mjs → index-dpyss74p.mjs} +6563 -5485
- package/dist/esm/{index-9x6e1dq0.mjs → index-hqxc6tzp.mjs} +40 -6
- package/dist/esm/{index-9xxg6218.mjs → index-qve7mdfp.mjs} +19 -1
- package/dist/esm/{index-e855w59j.mjs → index-s6qya2gg.mjs} +3 -5
- package/dist/esm/index-t7tbt980.mjs +103 -0
- package/dist/esm/{index-r0ejh5sy.mjs → index-t7xnxdf8.mjs} +44 -26
- package/dist/esm/index-wqc43mw0.mjs +158 -0
- package/dist/esm/{index-ppspzgn9.mjs → index-x6r9bn12.mjs} +4026 -4761
- package/dist/esm/{index-vxwg66ar.mjs → index-xac20sv4.mjs} +44 -57
- package/dist/esm/index.mjs +4 -5
- package/dist/esm/internals.mjs +13 -13
- package/dist/esm/previewEntry.mjs +18 -15
- package/dist/esm/renderEntry.mjs +5 -1
- package/dist/helpers/calculate-timeline.d.ts +5 -1
- package/dist/helpers/calculate-timeline.js +1 -1
- package/dist/helpers/checkerboard-background.d.ts +2 -2
- package/dist/helpers/colors.d.ts +132 -112
- package/dist/helpers/colors.js +117 -95
- package/dist/helpers/create-folder-tree.js +2 -1
- package/dist/helpers/editor-guide-selection.d.ts +1 -1
- package/dist/helpers/editor-ruler.js +23 -12
- package/dist/helpers/get-connected-compositions.d.ts +6 -1
- package/dist/helpers/get-connected-compositions.js +1 -1
- package/dist/helpers/get-sequence-double-click-action.js +1 -1
- package/dist/helpers/get-sequence-visible-range.d.ts +1 -1
- package/dist/helpers/get-sequence-visible-range.js +2 -5
- package/dist/helpers/get-timeline-nestedness.d.ts +1 -1
- package/dist/helpers/get-timeline-nestedness.js +1 -1
- package/dist/helpers/get-timeline-sequence-sort-key.d.ts +1 -1
- package/dist/helpers/get-timeline-sequence-sort-key.js +1 -1
- package/dist/helpers/hoverable.js +4 -4
- package/dist/helpers/inject-css.js +5 -7
- package/dist/helpers/prism-vsc-dark-plus.d.ts +1 -1
- package/dist/helpers/prism-vsc-dark-plus.js +52 -51
- package/dist/helpers/resolve-studio-color.d.ts +1 -0
- package/dist/helpers/resolve-studio-color.js +11 -0
- package/dist/helpers/studio-css-variables.d.ts +1 -0
- package/dist/helpers/studio-css-variables.js +105 -0
- package/dist/helpers/studio-pixel-ratio.d.ts +1 -0
- package/dist/helpers/studio-pixel-ratio.js +7 -0
- package/dist/helpers/timeline-node-path-key.d.ts +1 -1
- package/dist/helpers/timeline-node-path-key.js +2 -2
- package/dist/helpers/use-runtime-values.js +2 -28
- package/dist/hot-middleware-client/client.js +5 -3
- package/dist/icons/align-center-horizontal.js +2 -1
- package/dist/icons/align-left.js +2 -1
- package/dist/icons/align-right.js +2 -1
- package/dist/icons/{separation.d.ts → background-removal.d.ts} +1 -1
- package/dist/icons/background-removal.js +9 -0
- package/dist/icons/wrap.d.ts +4 -0
- package/dist/icons/wrap.js +10 -0
- package/dist/previewEntry.js +2 -0
- package/dist/renderEntry.js +2 -0
- package/dist/state/modals.d.ts +15 -1
- package/dist/state/timeline-sequence-hover.d.ts +6 -16
- package/dist/state/timeline-sequence-hover.js +6 -67
- package/package.json +20 -19
- package/dist/components/Timeline/get-easing-selection-after-keyframe-delete.d.ts +0 -15
- package/dist/components/Timeline/get-easing-selection-after-keyframe-delete.js +0 -31
- package/dist/esm/LazyModels-nh3c8h9p.mjs +0 -12
- package/dist/esm/LazyModels-rr5v8h5y.mjs +0 -12
- package/dist/esm/index-cw0pnpg5.mjs +0 -50
- package/dist/esm/index-k426ye99.mjs +0 -139
- package/dist/helpers/get-box-quads-polyfill-internals.d.ts +0 -82
- package/dist/helpers/get-box-quads-polyfill-internals.js +0 -2403
- package/dist/helpers/get-box-quads-ponyfill.d.ts +0 -10
- package/dist/helpers/get-box-quads-ponyfill.js +0 -23
- package/dist/icons/separation.js +0 -7
- /package/dist/esm/{resolve-composition-component-location-qrp05g62.mjs → resolve-composition-component-location-2hgf6g0a.mjs} +0 -0
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.studioCssVariables = void 0;
|
|
4
|
+
// Injected in every Studio document, including standalone previews and cursors.
|
|
5
|
+
// Zero specificity lets a theme override defaults regardless of injection order.
|
|
6
|
+
exports.studioCssVariables = `
|
|
7
|
+
:where(:root) {
|
|
8
|
+
--remotion-studio-black: black;
|
|
9
|
+
--remotion-studio-white: white;
|
|
10
|
+
--remotion-studio-red: red;
|
|
11
|
+
--remotion-studio-transparent: transparent;
|
|
12
|
+
--remotion-studio-current-color: currentColor;
|
|
13
|
+
--remotion-studio-background: rgb(31,36,40);
|
|
14
|
+
--remotion-studio-background-transparent: rgba(31,36,40, 0);
|
|
15
|
+
--remotion-studio-input-background: #2f363d;
|
|
16
|
+
--remotion-studio-light-color: #ddd;
|
|
17
|
+
--remotion-studio-light-text: #A6A7A9;
|
|
18
|
+
--remotion-studio-ruler-color: #808080;
|
|
19
|
+
--remotion-studio-white-alpha-05: rgba(255, 255, 255, 0.05);
|
|
20
|
+
--remotion-studio-white-alpha-06: rgba(255, 255, 255, 0.06);
|
|
21
|
+
--remotion-studio-white-alpha-08: rgba(255, 255, 255, 0.08);
|
|
22
|
+
--remotion-studio-white-alpha-10: rgba(255, 255, 255, 0.1);
|
|
23
|
+
--remotion-studio-white-alpha-12: rgba(255, 255, 255, 0.12);
|
|
24
|
+
--remotion-studio-white-alpha-15: rgba(255, 255, 255, 0.15);
|
|
25
|
+
--remotion-studio-white-alpha-20: rgba(255, 255, 255, 0.2);
|
|
26
|
+
--remotion-studio-white-alpha-25: rgba(255, 255, 255, 0.25);
|
|
27
|
+
--remotion-studio-white-alpha-30: rgba(255, 255, 255, 0.3);
|
|
28
|
+
--remotion-studio-white-alpha-35: rgba(255, 255, 255, 0.35);
|
|
29
|
+
--remotion-studio-white-alpha-40: rgba(255, 255, 255, 0.4);
|
|
30
|
+
--remotion-studio-white-alpha-45: rgba(255, 255, 255, 0.45);
|
|
31
|
+
--remotion-studio-white-alpha-50: rgba(255, 255, 255, 0.5);
|
|
32
|
+
--remotion-studio-white-alpha-60: rgba(255, 255, 255, 0.6);
|
|
33
|
+
--remotion-studio-white-alpha-70: rgba(255, 255, 255, 0.7);
|
|
34
|
+
--remotion-studio-white-alpha-72: rgba(255, 255, 255, 0.72);
|
|
35
|
+
--remotion-studio-white-alpha-80: rgba(255, 255, 255, 0.8);
|
|
36
|
+
--remotion-studio-white-alpha-90: rgba(255, 255, 255, 0.9);
|
|
37
|
+
--remotion-studio-black-alpha-10: rgba(0, 0, 0, 0.1);
|
|
38
|
+
--remotion-studio-black-alpha-28: rgba(0, 0, 0, 0.28);
|
|
39
|
+
--remotion-studio-black-alpha-30: rgba(0, 0, 0, 0.3);
|
|
40
|
+
--remotion-studio-black-alpha-40: rgba(0, 0, 0, 0.4);
|
|
41
|
+
--remotion-studio-black-alpha-50: rgba(0, 0, 0, 0.5);
|
|
42
|
+
--remotion-studio-black-alpha-60: rgba(0, 0, 0, 0.6);
|
|
43
|
+
--remotion-studio-black-alpha-80: rgba(0, 0, 0, 0.8);
|
|
44
|
+
--remotion-studio-black-alpha-85: rgba(0, 0, 0, 0.85);
|
|
45
|
+
--remotion-studio-black-alpha-90: rgba(0, 0, 0, 0.9);
|
|
46
|
+
--remotion-studio-fail-color: #ff3232;
|
|
47
|
+
--remotion-studio-warning-color: #f1c40f;
|
|
48
|
+
--remotion-studio-blue: #0b84f3;
|
|
49
|
+
--remotion-studio-blue-hovered: #4da3f7;
|
|
50
|
+
--remotion-studio-blue-disabled: #284f73;
|
|
51
|
+
--remotion-studio-unselected-guide: #7e1219;
|
|
52
|
+
--remotion-studio-selected-guide: #d22d3a;
|
|
53
|
+
--remotion-studio-line-color: #363A3E;
|
|
54
|
+
--remotion-studio-timeline-track-separator: #13161B;
|
|
55
|
+
--remotion-studio-light-gray: #ccc;
|
|
56
|
+
--remotion-studio-keyboard-shortcut-key-color: #eee;
|
|
57
|
+
--remotion-studio-notification-background: #111111;
|
|
58
|
+
--remotion-studio-render-status-background: #222;
|
|
59
|
+
--remotion-studio-error-code-frame-background: #070707;
|
|
60
|
+
--remotion-studio-error-code-frame-line-background: #121212;
|
|
61
|
+
--remotion-studio-error-link-color: #58a6ff;
|
|
62
|
+
--remotion-studio-info-blue: #60a5fa;
|
|
63
|
+
--remotion-studio-server-disconnected-background: #e74c3c;
|
|
64
|
+
--remotion-studio-timeline-background-color: #15181B;
|
|
65
|
+
--remotion-studio-timeline-negative-start-background-color: #2C2F32;
|
|
66
|
+
--remotion-studio-timeline-negative-start-border-color: #414446;
|
|
67
|
+
--remotion-studio-timeline-selected-background-color: #3B3F42;
|
|
68
|
+
--remotion-studio-timeline-selected-label-background-color: #B0B0B0;
|
|
69
|
+
--remotion-studio-timeline-blue: #0b84ff;
|
|
70
|
+
--remotion-studio-timeline-playhead-color: #f02c00;
|
|
71
|
+
--remotion-studio-timeline-drop-blue-alpha-12: rgba(0, 155, 255, 0.12);
|
|
72
|
+
--remotion-studio-timeline-drop-blue-alpha-16: rgba(0, 155, 255, 0.16);
|
|
73
|
+
--remotion-studio-timeline-drop-blue-alpha-75: rgba(0, 155, 255, 0.75);
|
|
74
|
+
--remotion-studio-timeline-marquee-blue-alpha-16: rgba(70, 130, 255, 0.16);
|
|
75
|
+
--remotion-studio-timeline-marquee-blue-alpha-75: rgba(70, 130, 255, 0.75);
|
|
76
|
+
--remotion-studio-easing-selected-background: rgba(11, 132, 243, 0.18);
|
|
77
|
+
--remotion-studio-info-blue-background: rgba(59, 130, 246, 0.15);
|
|
78
|
+
--remotion-studio-color-picker-checker-background-color: #444;
|
|
79
|
+
--remotion-studio-color-picker-hue-gradient: linear-gradient(to right, #f00 0%, #ff0 17%, #0f0 33%, #0ff 50%, #00f 67%, #f0f 83%, #f00 100%);
|
|
80
|
+
--remotion-studio-timeline-audio-gradient: linear-gradient(rgb(16 171 58), rgb(43 165 63) 60%);
|
|
81
|
+
--remotion-studio-timeline-video-gradient: linear-gradient(to top, #8e44ad, #9b59b6);
|
|
82
|
+
--remotion-studio-focus-color: #555;
|
|
83
|
+
--remotion-studio-color-picker-checker-color: #888;
|
|
84
|
+
--remotion-studio-info-blue-border-color: rgba(59, 130, 246, 0.4);
|
|
85
|
+
--remotion-studio-black-alpha-22: rgba(0, 0, 0, 0.22);
|
|
86
|
+
--remotion-studio-font-family-error-color: #ff8a8a;
|
|
87
|
+
--remotion-studio-selected-outline-snap-color: #ff00ff;
|
|
88
|
+
--remotion-studio-prism-text-color: #d4d4d4;
|
|
89
|
+
--remotion-studio-prism-selection-background: #264f78;
|
|
90
|
+
--remotion-studio-prism-background: #1e1e1e;
|
|
91
|
+
--remotion-studio-prism-inline-color: #db4c69;
|
|
92
|
+
--remotion-studio-prism-keyword-color: #569cd6;
|
|
93
|
+
--remotion-studio-prism-variable-color: #9cdcfe;
|
|
94
|
+
--remotion-studio-prism-comment-color: #6a9955;
|
|
95
|
+
--remotion-studio-prism-number-color: #b5cea8;
|
|
96
|
+
--remotion-studio-prism-string-color: #ce9178;
|
|
97
|
+
--remotion-studio-prism-control-flow-color: #c586c0;
|
|
98
|
+
--remotion-studio-prism-function-color: #dcdcaa;
|
|
99
|
+
--remotion-studio-prism-regex-color: #d16969;
|
|
100
|
+
--remotion-studio-prism-class-name-color: #4ec9b0;
|
|
101
|
+
--remotion-studio-prism-selector-color: #d7ba7d;
|
|
102
|
+
--remotion-studio-prism-line-highlight-background: #f7ebc6;
|
|
103
|
+
--remotion-studio-prism-line-highlight-border-color: #f7d87c;
|
|
104
|
+
}
|
|
105
|
+
`;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const getStudioPixelRatio: () => number;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getStudioPixelRatio = void 0;
|
|
4
|
+
// Set this to a number temporarily to increase Studio canvas backing resolution.
|
|
5
|
+
const OVERRIDE_PIXEL_RATIO = null;
|
|
6
|
+
const getStudioPixelRatio = () => OVERRIDE_PIXEL_RATIO !== null && OVERRIDE_PIXEL_RATIO !== void 0 ? OVERRIDE_PIXEL_RATIO : window.devicePixelRatio;
|
|
7
|
+
exports.getStudioPixelRatio = getStudioPixelRatio;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import type { SequenceNodePathInfo } from './get-timeline-sequence-sort-key';
|
|
2
|
-
export
|
|
2
|
+
export declare const timelineSequenceNodePathToKey: (key: import("remotion").SequencePropsSubscriptionKey) => string;
|
|
3
3
|
export declare const timelineNodePathInfoToKey: (info: SequenceNodePathInfo) => string;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.timelineNodePathInfoToKey = exports.timelineSequenceNodePathToKey = void 0;
|
|
4
|
-
const studio_shared_1 = require("@remotion/studio-shared");
|
|
5
4
|
const canvas_1 = require("@remotion/canvas");
|
|
6
|
-
|
|
5
|
+
const studio_shared_1 = require("@remotion/studio-shared");
|
|
6
|
+
({ timelineSequenceNodePathToKey: exports.timelineSequenceNodePathToKey } = canvas_1.CanvasInternals);
|
|
7
7
|
const timelineNodePathInfoToKey = (info) => [
|
|
8
8
|
(0, studio_shared_1.stringifySequenceExpandedRowKey)(info.sequenceSubscriptionKey),
|
|
9
9
|
info.auxiliaryKeys.join('.'),
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.useRuntimeValueSnapshots = exports.useRuntimeValueSelector = exports.useRuntimeStoreValue = exports.useRuntimeValue = exports.useRuntimeValues = void 0;
|
|
4
|
+
const canvas_1 = require("@remotion/canvas");
|
|
4
5
|
const react_1 = require("react");
|
|
5
6
|
const use_sync_external_store_1 = require("./use-sync-external-store");
|
|
6
7
|
const EMPTY_RUNTIME_VALUES = {};
|
|
@@ -51,31 +52,4 @@ const useRuntimeValueSelector = ({ controls, selector, isEqual = Object.is, }) =
|
|
|
51
52
|
return (0, use_sync_external_store_1.useSyncExternalStore)(selectedStore.subscribe, selectedStore.getSnapshot, selectedStore.getSnapshot);
|
|
52
53
|
};
|
|
53
54
|
exports.useRuntimeValueSelector = useRuntimeValueSelector;
|
|
54
|
-
|
|
55
|
-
const stores = (0, react_1.useMemo)(() => controls.map((control) => control.runtimeValues), [controls]);
|
|
56
|
-
const aggregateStore = (0, react_1.useMemo)(() => {
|
|
57
|
-
let lastSnapshots = stores.map((store) => store.getSnapshot());
|
|
58
|
-
const getSnapshot = () => {
|
|
59
|
-
const nextSnapshots = stores.map((store) => store.getSnapshot());
|
|
60
|
-
if (nextSnapshots.length === lastSnapshots.length &&
|
|
61
|
-
nextSnapshots.every((snapshot, index) => snapshot === lastSnapshots[index])) {
|
|
62
|
-
return lastSnapshots;
|
|
63
|
-
}
|
|
64
|
-
lastSnapshots = nextSnapshots;
|
|
65
|
-
return lastSnapshots;
|
|
66
|
-
};
|
|
67
|
-
return {
|
|
68
|
-
getSnapshot,
|
|
69
|
-
subscribe: (listener) => {
|
|
70
|
-
const unsubscribers = stores.map((store) => store.subscribe(listener));
|
|
71
|
-
return () => {
|
|
72
|
-
for (const unsubscribe of unsubscribers) {
|
|
73
|
-
unsubscribe();
|
|
74
|
-
}
|
|
75
|
-
};
|
|
76
|
-
},
|
|
77
|
-
};
|
|
78
|
-
}, [stores]);
|
|
79
|
-
return (0, use_sync_external_store_1.useSyncExternalStore)(aggregateStore.subscribe, aggregateStore.getSnapshot, aggregateStore.getSnapshot);
|
|
80
|
-
};
|
|
81
|
-
exports.useRuntimeValueSnapshots = useRuntimeValueSnapshots;
|
|
55
|
+
({ useCanvasRuntimeValueSnapshots: exports.useRuntimeValueSnapshots } = canvas_1.CanvasInternals);
|
|
@@ -5,13 +5,15 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
5
5
|
exports.enableHotMiddleware = void 0;
|
|
6
6
|
const studio_shared_1 = require("@remotion/studio-shared");
|
|
7
7
|
const error_origin_1 = require("../error-overlay/error-origin");
|
|
8
|
-
const colors_1 = require("../helpers/colors");
|
|
9
8
|
const preview_server_events_1 = require("../helpers/preview-server-events");
|
|
10
9
|
const process_update_1 = require("./process-update");
|
|
10
|
+
// DevTools console styles cannot inherit CSS variables from the page.
|
|
11
|
+
const HOT_MIDDLEWARE_ERROR_STYLE = 'color: #ff0000;';
|
|
12
|
+
const HOT_MIDDLEWARE_WARNING_STYLE = 'color: #999933;';
|
|
11
13
|
function createReporter() {
|
|
12
14
|
const styles = {
|
|
13
|
-
errors:
|
|
14
|
-
warnings:
|
|
15
|
+
errors: HOT_MIDDLEWARE_ERROR_STYLE,
|
|
16
|
+
warnings: HOT_MIDDLEWARE_WARNING_STYLE,
|
|
15
17
|
};
|
|
16
18
|
let previousProblems = null;
|
|
17
19
|
function log(type, obj) {
|
|
@@ -2,9 +2,10 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.AlignCenterHorizontalIcon = void 0;
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const colors_1 = require("../helpers/colors");
|
|
5
6
|
const AlignCenterHorizontalIcon = (props) => {
|
|
6
7
|
var _a;
|
|
7
|
-
const color = (_a = props.color) !== null && _a !== void 0 ? _a :
|
|
8
|
+
const color = (_a = props.color) !== null && _a !== void 0 ? _a : colors_1.CURRENT_COLOR;
|
|
8
9
|
return (jsx_runtime_1.jsxs("svg", { ...props, viewBox: "0 0 16 16", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: [
|
|
9
10
|
jsx_runtime_1.jsx("path", { d: "M8 2V14", stroke: color, strokeLinecap: "square" }), jsx_runtime_1.jsx("line", { x1: "3", y1: "6", x2: "12", y2: "6", stroke: color, strokeWidth: "2" }), jsx_runtime_1.jsx("line", { x1: "4", y1: "10", x2: "11", y2: "10", stroke: color, strokeWidth: "2" })
|
|
10
11
|
] }));
|
package/dist/icons/align-left.js
CHANGED
|
@@ -2,9 +2,10 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.AlignLeftIcon = void 0;
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const colors_1 = require("../helpers/colors");
|
|
5
6
|
const AlignLeftIcon = (props) => {
|
|
6
7
|
var _a;
|
|
7
|
-
const color = (_a = props.color) !== null && _a !== void 0 ? _a :
|
|
8
|
+
const color = (_a = props.color) !== null && _a !== void 0 ? _a : colors_1.CURRENT_COLOR;
|
|
8
9
|
return (jsx_runtime_1.jsxs("svg", { ...props, viewBox: "0 0 16 16", fill: "none", children: [
|
|
9
10
|
jsx_runtime_1.jsx("path", { d: "M2 2L2 14", stroke: color, strokeLinecap: "square" }), jsx_runtime_1.jsx("line", { x1: "4", y1: "6", x2: "13", y2: "6", stroke: color, strokeWidth: "2" }), jsx_runtime_1.jsx("line", { x1: "4", y1: "10", x2: "11", y2: "10", stroke: color, strokeWidth: "2" })
|
|
10
11
|
] }));
|
|
@@ -2,9 +2,10 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.AlignRightIcon = void 0;
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const colors_1 = require("../helpers/colors");
|
|
5
6
|
const AlignRightIcon = (props) => {
|
|
6
7
|
var _a;
|
|
7
|
-
const color = (_a = props.color) !== null && _a !== void 0 ? _a :
|
|
8
|
+
const color = (_a = props.color) !== null && _a !== void 0 ? _a : colors_1.CURRENT_COLOR;
|
|
8
9
|
return (jsx_runtime_1.jsxs("svg", { ...props, viewBox: "0 0 16 16", fill: "none", children: [
|
|
9
10
|
jsx_runtime_1.jsx("path", { d: "M14 2V14", stroke: color, strokeLinecap: "square" }), jsx_runtime_1.jsx("line", { x1: "3", y1: "6", x2: "12", y2: "6", stroke: color, strokeWidth: "2" }), jsx_runtime_1.jsx("line", { x1: "5", y1: "10", x2: "12", y2: "10", stroke: color, strokeWidth: "2" })
|
|
10
11
|
] }));
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import type { SVGProps } from 'react';
|
|
2
|
-
export declare const
|
|
2
|
+
export declare const BackgroundRemovalIcon: ({ color, ...props }: SVGProps<SVGSVGElement> & {
|
|
3
3
|
readonly color?: string | undefined;
|
|
4
4
|
}) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BackgroundRemovalIcon = void 0;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const colors_1 = require("../helpers/colors");
|
|
6
|
+
// Font Awesome Pro v7.3.1, Copyright 2026 Fonticons, Inc.
|
|
7
|
+
// https://fontawesome.com/license
|
|
8
|
+
const BackgroundRemovalIcon = ({ color, ...props }) => (jsx_runtime_1.jsx("svg", { xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 640 640", ...props, children: jsx_runtime_1.jsx("path", { fill: color !== null && color !== void 0 ? color : colors_1.CURRENT_COLOR_LOWERCASE, d: "M128 64C92.7 64 64 92.7 64 128L64 208C64 216.8 71.2 224 80 224C88.8 224 96 216.8 96 208L96 128C96 110.3 110.3 96 128 96L208 96C216.8 96 224 88.8 224 80C224 71.2 216.8 64 208 64L128 64zM512 64L432 64C423.2 64 416 71.2 416 80C416 88.8 423.2 96 432 96L512 96C529.7 96 544 110.3 544 128L544 208C544 216.8 551.2 224 560 224C568.8 224 576 216.8 576 208L576 128C576 92.7 547.3 64 512 64zM64 512C64 547.3 92.7 576 128 576L208 576C216.8 576 224 568.8 224 560C224 551.2 216.8 544 208 544L128 544C110.3 544 96 529.7 96 512L96 432C96 423.2 88.8 416 80 416C71.2 416 64 423.2 64 432L64 512zM512 576C547.3 576 576 547.3 576 512L576 432C576 423.2 568.8 416 560 416C551.2 416 544 423.2 544 432L544 512C544 529.7 529.7 544 512 544L432 544C423.2 544 416 551.2 416 560C416 568.8 423.2 576 432 576L512 576zM296 288C296 274.7 285.3 264 272 264C258.7 264 248 274.7 248 288C248 301.3 258.7 312 272 312C285.3 312 296 301.3 296 288zM368 312C381.3 312 392 301.3 392 288C392 274.7 381.3 264 368 264C354.7 264 344 274.7 344 288C344 301.3 354.7 312 368 312zM320 192C390.7 192 448 249.3 448 320C448 390.7 390.7 448 320 448C249.3 448 192 390.7 192 320C192 249.3 249.3 192 320 192zM320 480C408.4 480 480 408.4 480 320C480 231.6 408.4 160 320 160C231.6 160 160 231.6 160 320C160 408.4 231.6 480 320 480zM278.4 352C274 344.4 264.2 341.7 256.5 346.2C248.8 350.7 246.2 360.4 250.7 368.1C264.5 392 290.4 408.1 320 408.1C349.6 408.1 375.5 392 389.3 368.1C393.7 360.4 391.1 350.7 383.5 346.2C375.9 341.7 366.1 344.4 361.6 352C353.3 366.4 337.8 376 320 376C302.2 376 286.7 366.4 278.4 352z" }) }));
|
|
9
|
+
exports.BackgroundRemovalIcon = BackgroundRemovalIcon;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WrapIcon = void 0;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
// Font Awesome Pro v7.3.1, Copyright 2026 Fonticons, Inc.
|
|
6
|
+
// https://fontawesome.com/license (Commercial License)
|
|
7
|
+
const WrapIcon = ({ color, ...props }) => {
|
|
8
|
+
return (jsx_runtime_1.jsx("svg", { ...props, xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 640 640", children: jsx_runtime_1.jsx("path", { fill: color, d: "M480 128C497.7 128 512 142.3 512 160L512 224C512 241.7 497.7 256 480 256L160 256C142.3 256 128 241.7 128 224L128 160C128 142.3 142.3 128 160 128L480 128zM208 288L480 288C515.3 288 544 259.3 544 224L544 160C544 124.7 515.3 96 480 96L160 96C124.7 96 96 124.7 96 160L96 224C96 259.3 124.7 288 160 288L176 288L176 384C176 428.2 211.8 464 256 464L288 464L288 480C288 515.3 316.7 544 352 544L480 544C515.3 544 544 515.3 544 480L544 416C544 380.7 515.3 352 480 352L352 352C316.7 352 288 380.7 288 416L288 432L256 432C229.5 432 208 410.5 208 384L208 288zM320 432L320 416C320 398.3 334.3 384 352 384L480 384C497.7 384 512 398.3 512 416L512 480C512 497.7 497.7 512 480 512L352 512C334.3 512 320 497.7 320 480L320 432z" }) }));
|
|
9
|
+
};
|
|
10
|
+
exports.WrapIcon = WrapIcon;
|
package/dist/previewEntry.js
CHANGED
|
@@ -11,9 +11,11 @@ const NoRegisterRoot_1 = require("./components/NoRegisterRoot");
|
|
|
11
11
|
const entry_basic_1 = require("./error-overlay/entry-basic");
|
|
12
12
|
const colors_1 = require("./helpers/colors");
|
|
13
13
|
const install_fiber_sequence_order_observer_1 = require("./helpers/install-fiber-sequence-order-observer");
|
|
14
|
+
const studio_css_variables_1 = require("./helpers/studio-css-variables");
|
|
14
15
|
const client_2 = require("./hot-middleware-client/client");
|
|
15
16
|
const Studio_1 = require("./Studio");
|
|
16
17
|
(0, install_fiber_sequence_order_observer_1.installFiberCommitOrderObserver)(window);
|
|
18
|
+
remotion_1.Internals.CSSUtils.injectCSS(studio_css_variables_1.studioCssVariables);
|
|
17
19
|
remotion_1.Internals.CSSUtils.injectCSS(remotion_1.Internals.CSSUtils.makeDefaultPreviewCSS(null, colors_1.BACKGROUND_HEX));
|
|
18
20
|
if (!window.__remotionOverlayStarted) {
|
|
19
21
|
window.__remotionOverlayStarted = true;
|
package/dist/renderEntry.js
CHANGED
|
@@ -50,6 +50,7 @@ const client_1 = __importDefault(require("react-dom/client"));
|
|
|
50
50
|
const remotion_1 = require("remotion");
|
|
51
51
|
const no_react_1 = require("remotion/no-react");
|
|
52
52
|
const colors_1 = require("./helpers/colors");
|
|
53
|
+
const studio_css_variables_1 = require("./helpers/studio-css-variables");
|
|
53
54
|
let currentBundleMode = {
|
|
54
55
|
type: 'index',
|
|
55
56
|
};
|
|
@@ -59,6 +60,7 @@ const setBundleMode = (state) => {
|
|
|
59
60
|
const getBundleMode = () => {
|
|
60
61
|
return currentBundleMode;
|
|
61
62
|
};
|
|
63
|
+
remotion_1.Internals.CSSUtils.injectCSS(studio_css_variables_1.studioCssVariables);
|
|
62
64
|
remotion_1.Internals.CSSUtils.injectCSS(remotion_1.Internals.CSSUtils.makeDefaultPreviewCSS(null, colors_1.BACKGROUND_HEX));
|
|
63
65
|
const getCanSerializeDefaultProps = (object) => {
|
|
64
66
|
try {
|
package/dist/state/modals.d.ts
CHANGED
|
@@ -8,6 +8,8 @@ import type { StaticFile } from '../api/get-static-files';
|
|
|
8
8
|
import type { CompType } from '../components/NewComposition/DuplicateComposition';
|
|
9
9
|
import type { QuickSwitcherMode } from '../components/QuickSwitcher/NoResults';
|
|
10
10
|
import type { RenderType } from '../components/RenderModal/RenderModalAdvanced';
|
|
11
|
+
import type { useTimelineSelection } from '../components/Timeline/TimelineSelection';
|
|
12
|
+
import type { SequenceNodePathInfo } from '../helpers/get-timeline-sequence-sort-key';
|
|
11
13
|
export type WebRenderModalState = {
|
|
12
14
|
type: 'web-render';
|
|
13
15
|
initialFrame: number;
|
|
@@ -106,8 +108,9 @@ export type SvgImportDialogState = {
|
|
|
106
108
|
export type AddEffectModalState = {
|
|
107
109
|
type: 'add-effect';
|
|
108
110
|
fileName: string;
|
|
109
|
-
|
|
111
|
+
nodePathInfo: SequenceNodePathInfo;
|
|
110
112
|
clientId: string;
|
|
113
|
+
selectItems: ReturnType<typeof useTimelineSelection>['selectItems'];
|
|
111
114
|
};
|
|
112
115
|
export type AssetSelectionModalState = {
|
|
113
116
|
readonly type: 'asset-selection';
|
|
@@ -137,6 +140,10 @@ export type VideoMattingModalState = {
|
|
|
137
140
|
type: 'video-matting';
|
|
138
141
|
src: string;
|
|
139
142
|
displayName: string;
|
|
143
|
+
target: {
|
|
144
|
+
fileName: string;
|
|
145
|
+
nodePath: SequencePropsSubscriptionKey;
|
|
146
|
+
} | null;
|
|
140
147
|
};
|
|
141
148
|
export type CanvasCaptureImport = {
|
|
142
149
|
readonly data: CanvasCaptureData;
|
|
@@ -202,6 +209,13 @@ export type ModalState = {
|
|
|
202
209
|
} | RenderModalState | WebRenderModalState | {
|
|
203
210
|
type: 'render-progress';
|
|
204
211
|
jobId: string;
|
|
212
|
+
} | {
|
|
213
|
+
type: 'queue-job-error';
|
|
214
|
+
title: string;
|
|
215
|
+
error: {
|
|
216
|
+
message: string;
|
|
217
|
+
stack: string | null;
|
|
218
|
+
};
|
|
205
219
|
} | {
|
|
206
220
|
type: 'fix-computed-value';
|
|
207
221
|
prop: string;
|
|
@@ -1,23 +1,13 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { CanvasHover, CanvasHoverController } from '@remotion/canvas';
|
|
2
2
|
import type { SequenceNodePathInfo } from '../helpers/get-timeline-sequence-sort-key';
|
|
3
|
-
export type TimelineSequenceHover =
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
type TimelineSequenceHoverStore = {
|
|
9
|
-
readonly getSnapshot: () => TimelineSequenceHover | null;
|
|
10
|
-
readonly subscribe: (listener: () => void) => () => void;
|
|
11
|
-
readonly setHoveredSequence: Dispatch<SetStateAction<TimelineSequenceHover | null>>;
|
|
12
|
-
};
|
|
13
|
-
export declare const createTimelineSequenceHoverStore: () => TimelineSequenceHoverStore;
|
|
14
|
-
export declare const TimelineSequenceHoverContext: import("react").Context<TimelineSequenceHoverStore>;
|
|
15
|
-
export declare const useTimelineSequenceHoverState: () => TimelineSequenceHover | null;
|
|
16
|
-
export declare const useSetTimelineSequenceHover: () => Dispatch<SetStateAction<TimelineSequenceHover | null>>;
|
|
3
|
+
export type TimelineSequenceHover = CanvasHover;
|
|
4
|
+
export declare const createTimelineSequenceHoverStore: () => CanvasHoverController;
|
|
5
|
+
export declare const TimelineSequenceHoverContext: import("react").Context<CanvasHoverController>;
|
|
6
|
+
export declare const useTimelineSequenceHoverState: () => CanvasHover | null;
|
|
7
|
+
export declare const useSetTimelineSequenceHover: () => import("react").Dispatch<import("react").SetStateAction<CanvasHover | null>>;
|
|
17
8
|
export declare const useIsTimelineSequenceHovered: (nodePathKey: string | null) => boolean;
|
|
18
9
|
export declare const useTimelineSequenceHover: (nodePathInfo: SequenceNodePathInfo | null) => {
|
|
19
10
|
hovered: boolean;
|
|
20
11
|
onPointerEnter: () => void;
|
|
21
12
|
onPointerLeave: () => void;
|
|
22
13
|
};
|
|
23
|
-
export {};
|
|
@@ -1,35 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.useTimelineSequenceHover = exports.useIsTimelineSequenceHovered = exports.useSetTimelineSequenceHover = exports.useTimelineSequenceHoverState = exports.TimelineSequenceHoverContext = exports.createTimelineSequenceHoverStore = void 0;
|
|
4
|
+
const canvas_1 = require("@remotion/canvas");
|
|
4
5
|
const react_1 = require("react");
|
|
5
|
-
const
|
|
6
|
-
|
|
7
|
-
const createTimelineSequenceHoverStore = () => {
|
|
8
|
-
let hoveredSequence = null;
|
|
9
|
-
const listeners = new Set();
|
|
10
|
-
return {
|
|
11
|
-
getSnapshot: () => hoveredSequence,
|
|
12
|
-
subscribe: (listener) => {
|
|
13
|
-
listeners.add(listener);
|
|
14
|
-
return () => listeners.delete(listener);
|
|
15
|
-
},
|
|
16
|
-
setHoveredSequence: (action) => {
|
|
17
|
-
const nextHoveredSequence = typeof action === 'function' ? action(hoveredSequence) : action;
|
|
18
|
-
if (nextHoveredSequence === hoveredSequence) {
|
|
19
|
-
return;
|
|
20
|
-
}
|
|
21
|
-
hoveredSequence = nextHoveredSequence;
|
|
22
|
-
for (const listener of listeners) {
|
|
23
|
-
listener();
|
|
24
|
-
}
|
|
25
|
-
},
|
|
26
|
-
};
|
|
27
|
-
};
|
|
28
|
-
exports.createTimelineSequenceHoverStore = createTimelineSequenceHoverStore;
|
|
6
|
+
const { useIsCanvasSequenceHovered } = canvas_1.CanvasInternals;
|
|
7
|
+
exports.createTimelineSequenceHoverStore = canvas_1.createCanvasHoverController;
|
|
29
8
|
exports.TimelineSequenceHoverContext = (0, react_1.createContext)((0, exports.createTimelineSequenceHoverStore)());
|
|
30
9
|
const useTimelineSequenceHoverState = () => {
|
|
31
|
-
|
|
32
|
-
return (0, use_sync_external_store_1.useSyncExternalStore)(store.subscribe, store.getSnapshot, store.getSnapshot);
|
|
10
|
+
return (0, canvas_1.useCanvasHover)((0, react_1.useContext)(exports.TimelineSequenceHoverContext));
|
|
33
11
|
};
|
|
34
12
|
exports.useTimelineSequenceHoverState = useTimelineSequenceHoverState;
|
|
35
13
|
const useSetTimelineSequenceHover = () => {
|
|
@@ -37,49 +15,10 @@ const useSetTimelineSequenceHover = () => {
|
|
|
37
15
|
};
|
|
38
16
|
exports.useSetTimelineSequenceHover = useSetTimelineSequenceHover;
|
|
39
17
|
const useIsTimelineSequenceHovered = (nodePathKey) => {
|
|
40
|
-
|
|
41
|
-
const getSnapshot = (0, react_1.useCallback)(() => {
|
|
42
|
-
var _a;
|
|
43
|
-
return nodePathKey !== null && ((_a = store.getSnapshot()) === null || _a === void 0 ? void 0 : _a.nodePathKey) === nodePathKey;
|
|
44
|
-
}, [nodePathKey, store]);
|
|
45
|
-
return (0, use_sync_external_store_1.useSyncExternalStore)(store.subscribe, getSnapshot, getSnapshot);
|
|
18
|
+
return useIsCanvasSequenceHovered((0, react_1.useContext)(exports.TimelineSequenceHoverContext), nodePathKey);
|
|
46
19
|
};
|
|
47
20
|
exports.useIsTimelineSequenceHovered = useIsTimelineSequenceHovered;
|
|
48
21
|
const useTimelineSequenceHover = (nodePathInfo) => {
|
|
49
|
-
|
|
50
|
-
const sequenceKey = (0, react_1.useMemo)(() => nodePathInfo === null
|
|
51
|
-
? null
|
|
52
|
-
: (0, timeline_node_path_key_1.timelineNodePathInfoToKey)({ ...nodePathInfo, auxiliaryKeys: [] }), [nodePathInfo]);
|
|
53
|
-
const nodePathKey = (0, react_1.useMemo)(() => nodePathInfo === null
|
|
54
|
-
? null
|
|
55
|
-
: (0, timeline_node_path_key_1.timelineSequenceNodePathToKey)(nodePathInfo.sequenceSubscriptionKey), [nodePathInfo]);
|
|
56
|
-
const hovered = (0, exports.useIsTimelineSequenceHovered)(nodePathKey);
|
|
57
|
-
const onPointerEnter = (0, react_1.useCallback)(() => {
|
|
58
|
-
if (sequenceKey === null || nodePathKey === null) {
|
|
59
|
-
return;
|
|
60
|
-
}
|
|
61
|
-
store.setHoveredSequence((currentHover) => {
|
|
62
|
-
if ((currentHover === null || currentHover === void 0 ? void 0 : currentHover.key) === sequenceKey &&
|
|
63
|
-
currentHover.nodePathKey === nodePathKey &&
|
|
64
|
-
currentHover.source === 'timeline') {
|
|
65
|
-
return currentHover;
|
|
66
|
-
}
|
|
67
|
-
return {
|
|
68
|
-
key: sequenceKey,
|
|
69
|
-
nodePathKey,
|
|
70
|
-
source: 'timeline',
|
|
71
|
-
};
|
|
72
|
-
});
|
|
73
|
-
}, [nodePathKey, sequenceKey, store]);
|
|
74
|
-
const onPointerLeave = (0, react_1.useCallback)(() => {
|
|
75
|
-
store.setHoveredSequence((currentHover) => {
|
|
76
|
-
if ((currentHover === null || currentHover === void 0 ? void 0 : currentHover.source) !== 'timeline' ||
|
|
77
|
-
currentHover.key !== sequenceKey) {
|
|
78
|
-
return currentHover;
|
|
79
|
-
}
|
|
80
|
-
return null;
|
|
81
|
-
});
|
|
82
|
-
}, [sequenceKey, store]);
|
|
83
|
-
return (0, react_1.useMemo)(() => ({ hovered, onPointerEnter, onPointerLeave }), [hovered, onPointerEnter, onPointerLeave]);
|
|
22
|
+
return (0, canvas_1.useCanvasSequenceHover)((0, react_1.useContext)(exports.TimelineSequenceHoverContext), nodePathInfo, 'timeline');
|
|
84
23
|
};
|
|
85
24
|
exports.useTimelineSequenceHover = useTimelineSequenceHover;
|
package/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"url": "https://github.com/remotion-dev/remotion/tree/main/packages/studio"
|
|
4
4
|
},
|
|
5
5
|
"name": "@remotion/studio",
|
|
6
|
-
"version": "4.0.
|
|
6
|
+
"version": "4.0.528",
|
|
7
7
|
"description": "APIs for interacting with the Remotion Studio",
|
|
8
8
|
"main": "dist",
|
|
9
9
|
"scripts": {
|
|
@@ -20,8 +20,8 @@
|
|
|
20
20
|
"url": "https://github.com/remotion-dev/remotion/issues"
|
|
21
21
|
},
|
|
22
22
|
"peerDependencies": {
|
|
23
|
-
"@remotion/video-matting": "4.0.
|
|
24
|
-
"@remotion/whisper-webgpu": "4.0.
|
|
23
|
+
"@remotion/video-matting": "4.0.528",
|
|
24
|
+
"@remotion/whisper-webgpu": "4.0.528",
|
|
25
25
|
"react": ">=16.8.0",
|
|
26
26
|
"react-dom": ">=16.8.0"
|
|
27
27
|
},
|
|
@@ -35,32 +35,33 @@
|
|
|
35
35
|
},
|
|
36
36
|
"dependencies": {
|
|
37
37
|
"@jridgewell/trace-mapping": "0.3.31",
|
|
38
|
-
"@remotion/canvas": "4.0.
|
|
39
|
-
"@remotion/captions": "4.0.
|
|
40
|
-
"@remotion/media": "4.0.
|
|
41
|
-
"@remotion/media-utils": "4.0.
|
|
42
|
-
"@remotion/
|
|
43
|
-
"@remotion/
|
|
44
|
-
"@remotion/
|
|
45
|
-
"@remotion/
|
|
46
|
-
"@remotion/studio-
|
|
47
|
-
"@remotion/
|
|
48
|
-
"@remotion/
|
|
49
|
-
"@remotion/
|
|
38
|
+
"@remotion/canvas": "4.0.528",
|
|
39
|
+
"@remotion/captions": "4.0.528",
|
|
40
|
+
"@remotion/media": "4.0.528",
|
|
41
|
+
"@remotion/media-utils": "4.0.528",
|
|
42
|
+
"@remotion/paths": "4.0.528",
|
|
43
|
+
"@remotion/player": "4.0.528",
|
|
44
|
+
"@remotion/renderer": "4.0.528",
|
|
45
|
+
"@remotion/codemods": "4.0.528",
|
|
46
|
+
"@remotion/studio-protocol": "4.0.528",
|
|
47
|
+
"@remotion/studio-shared": "4.0.528",
|
|
48
|
+
"@remotion/timeline-utils": "4.0.528",
|
|
49
|
+
"@remotion/web-renderer": "4.0.528",
|
|
50
|
+
"@remotion/zod-types": "4.0.528",
|
|
50
51
|
"@tanstack/react-virtual": "3.14.9",
|
|
51
52
|
"mediabunny": "1.56.1",
|
|
52
53
|
"memfs": "3.4.3",
|
|
53
54
|
"open": "8.4.2",
|
|
54
55
|
"prismjs": "1.30.0",
|
|
55
|
-
"remotion": "4.0.
|
|
56
|
+
"remotion": "4.0.528",
|
|
56
57
|
"semver": "7.5.3",
|
|
57
58
|
"zod": "4.5.4"
|
|
58
59
|
},
|
|
59
60
|
"devDependencies": {
|
|
60
61
|
"@happy-dom/global-registrator": "14.5.1",
|
|
61
|
-
"@remotion/eslint-config-internal": "4.0.
|
|
62
|
-
"@remotion/video-matting": "4.0.
|
|
63
|
-
"@remotion/whisper-webgpu": "4.0.
|
|
62
|
+
"@remotion/eslint-config-internal": "4.0.528",
|
|
63
|
+
"@remotion/video-matting": "4.0.528",
|
|
64
|
+
"@remotion/whisper-webgpu": "4.0.528",
|
|
64
65
|
"@testing-library/react": "16.1.0",
|
|
65
66
|
"@types/prismjs": "1.26.4",
|
|
66
67
|
"@types/semver": "7.5.3",
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import type { CanUpdateSequencePropStatusKeyframed } from 'remotion';
|
|
2
|
-
import type { SequenceNodePathInfo } from '../../helpers/get-timeline-sequence-sort-key';
|
|
3
|
-
export declare const getEasingSelectionAfterKeyframeDelete: ({ deletedSourceFrames, keyframeDisplayOffset, nodePathInfo, propStatus, timelinePosition, }: {
|
|
4
|
-
readonly deletedSourceFrames: readonly number[];
|
|
5
|
-
readonly keyframeDisplayOffset: number;
|
|
6
|
-
readonly nodePathInfo: SequenceNodePathInfo;
|
|
7
|
-
readonly propStatus: CanUpdateSequencePropStatusKeyframed;
|
|
8
|
-
readonly timelinePosition: number;
|
|
9
|
-
}) => {
|
|
10
|
-
readonly type: "easing";
|
|
11
|
-
readonly nodePathInfo: SequenceNodePathInfo;
|
|
12
|
-
readonly fromFrame: number;
|
|
13
|
-
readonly toFrame: number;
|
|
14
|
-
readonly segmentIndex: number;
|
|
15
|
-
} | null;
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getEasingSelectionAfterKeyframeDelete = void 0;
|
|
4
|
-
const get_timeline_keyframes_1 = require("./get-timeline-keyframes");
|
|
5
|
-
const getEasingSelectionAfterKeyframeDelete = ({ deletedSourceFrames, keyframeDisplayOffset, nodePathInfo, propStatus, timelinePosition, }) => {
|
|
6
|
-
const resolvedKeyframeDisplayOffset = (0, get_timeline_keyframes_1.getKeyframeDisplayOffset)({
|
|
7
|
-
propStatus,
|
|
8
|
-
keyframeDisplayOffset,
|
|
9
|
-
});
|
|
10
|
-
const deletedSourceFrameSet = new Set(deletedSourceFrames);
|
|
11
|
-
const remainingKeyframes = propStatus.keyframes.filter((keyframe) => !deletedSourceFrameSet.has(keyframe.frame));
|
|
12
|
-
const sourceFrame = timelinePosition - resolvedKeyframeDisplayOffset;
|
|
13
|
-
for (let i = 0; i < remainingKeyframes.length - 1; i++) {
|
|
14
|
-
const keyframe = remainingKeyframes[i];
|
|
15
|
-
const nextKeyframe = remainingKeyframes[i + 1];
|
|
16
|
-
if (!keyframe || !nextKeyframe) {
|
|
17
|
-
continue;
|
|
18
|
-
}
|
|
19
|
-
if (sourceFrame > keyframe.frame && sourceFrame < nextKeyframe.frame) {
|
|
20
|
-
return {
|
|
21
|
-
type: 'easing',
|
|
22
|
-
nodePathInfo,
|
|
23
|
-
fromFrame: keyframe.frame + resolvedKeyframeDisplayOffset,
|
|
24
|
-
toFrame: nextKeyframe.frame + resolvedKeyframeDisplayOffset,
|
|
25
|
-
segmentIndex: i,
|
|
26
|
-
};
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
return null;
|
|
30
|
-
};
|
|
31
|
-
exports.getEasingSelectionAfterKeyframeDelete = getEasingSelectionAfterKeyframeDelete;
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
Models
|
|
3
|
-
} from "./index-614tdz2q.mjs";
|
|
4
|
-
import"./index-r0ejh5sy.mjs";
|
|
5
|
-
import"./index-5t2dwxsk.mjs";
|
|
6
|
-
import"./index-9xxg6218.mjs";
|
|
7
|
-
import"./index-5zrb1ft4.mjs";
|
|
8
|
-
import"./index-k426ye99.mjs";
|
|
9
|
-
import"./index-rcv7qkt5.mjs";
|
|
10
|
-
export {
|
|
11
|
-
Models as default
|
|
12
|
-
};
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
Models
|
|
3
|
-
} from "./index-ac5550e7.mjs";
|
|
4
|
-
import"./index-r0ejh5sy.mjs";
|
|
5
|
-
import"./index-5t2dwxsk.mjs";
|
|
6
|
-
import"./index-9xxg6218.mjs";
|
|
7
|
-
import"./index-5zrb1ft4.mjs";
|
|
8
|
-
import"./index-k426ye99.mjs";
|
|
9
|
-
import"./index-rcv7qkt5.mjs";
|
|
10
|
-
export {
|
|
11
|
-
Models as default
|
|
12
|
-
};
|