@remotion/studio 4.0.477 → 4.0.479
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/AssetSelector.js +8 -14
- package/dist/components/Button.d.ts +1 -0
- package/dist/components/Button.js +8 -5
- package/dist/components/CanvasIfSizeIsAvailable.js +2 -6
- package/dist/components/CompactExplanation.d.ts +12 -0
- package/dist/components/CompactExplanation.js +52 -0
- package/dist/components/CompositionSelector.js +2 -4
- package/dist/components/CurrentAsset.d.ts +3 -1
- package/dist/components/CurrentAsset.js +42 -34
- package/dist/components/CurrentComposition.d.ts +1 -1
- package/dist/components/CurrentComposition.js +38 -31
- package/dist/components/DefaultPropsEditor.d.ts +12 -2
- package/dist/components/DefaultPropsEditor.js +2 -2
- package/dist/components/EditorGuides/Guide.js +37 -9
- package/dist/components/EditorRuler/Ruler.js +4 -14
- package/dist/components/EditorRuler/index.js +9 -4
- package/dist/components/EffectPickerModal.d.ts +5 -0
- package/dist/components/EffectPickerModal.js +179 -0
- package/dist/components/InlineAction.js +1 -0
- package/dist/components/InspectorInfoHeader.d.ts +11 -0
- package/dist/components/InspectorInfoHeader.js +55 -0
- package/dist/components/InspectorPanel/DefaultInspector.d.ts +8 -0
- package/dist/components/InspectorPanel/DefaultInspector.js +93 -0
- package/dist/components/InspectorPanel/EasingInspector.d.ts +5 -0
- package/dist/components/InspectorPanel/EasingInspector.js +41 -0
- package/dist/components/InspectorPanel/GuideInspector.d.ts +7 -0
- package/dist/components/InspectorPanel/GuideInspector.js +55 -0
- package/dist/components/InspectorPanel/KeyframeInspector.d.ts +7 -0
- package/dist/components/InspectorPanel/KeyframeInspector.js +109 -0
- package/dist/components/InspectorPanel/SelectedInspector.d.ts +5 -0
- package/dist/components/InspectorPanel/SelectedInspector.js +26 -0
- package/dist/components/InspectorPanel/SequenceSelectionInspector.d.ts +5 -0
- package/dist/components/InspectorPanel/SequenceSelectionInspector.js +116 -0
- package/dist/components/InspectorPanel/common.d.ts +15 -0
- package/dist/components/InspectorPanel/common.js +18 -0
- package/dist/components/InspectorPanel/inspector-selection.d.ts +10 -0
- package/dist/components/InspectorPanel/inspector-selection.js +34 -0
- package/dist/components/InspectorPanel/styles.d.ts +27 -0
- package/dist/components/InspectorPanel/styles.js +178 -0
- package/dist/components/InspectorPanel/use-track-for-selection.d.ts +2 -0
- package/dist/components/InspectorPanel/use-track-for-selection.js +22 -0
- package/dist/components/InspectorPanel.d.ts +8 -0
- package/dist/components/InspectorPanel.js +26 -0
- package/dist/components/InspectorPanelLayout.d.ts +1 -0
- package/dist/components/InspectorPanelLayout.js +4 -0
- package/dist/components/InspectorSequenceSection.d.ts +16 -0
- package/dist/components/InspectorSequenceSection.js +147 -0
- package/dist/components/InspectorSourceLocation.d.ts +7 -0
- package/dist/components/InspectorSourceLocation.js +71 -0
- package/dist/components/MenuToolbar.d.ts +1 -0
- package/dist/components/MenuToolbar.js +4 -1
- package/dist/components/Modals.js +3 -3
- package/dist/components/NewComposition/InputDragger.js +1 -1
- package/dist/components/NewComposition/RemInput.d.ts +1 -0
- package/dist/components/NewComposition/RemInput.js +8 -2
- package/dist/components/NewComposition/RemTextarea.d.ts +1 -0
- package/dist/components/NewComposition/RemTextarea.js +8 -2
- package/dist/components/NewComposition/ValidationMessage.d.ts +3 -0
- package/dist/components/NewComposition/ValidationMessage.js +16 -5
- package/dist/components/OptionsPanel.d.ts +1 -1
- package/dist/components/OptionsPanel.js +8 -17
- package/dist/components/QuickSwitcher/QuickSwitcherContent.js +2 -7
- package/dist/components/QuickSwitcher/QuickSwitcherResult.js +3 -10
- package/dist/components/QuickSwitcher/shared.d.ts +4 -0
- package/dist/components/QuickSwitcher/shared.js +24 -0
- package/dist/components/RenderModal/DataEditor.d.ts +29 -2
- package/dist/components/RenderModal/DataEditor.js +107 -56
- package/dist/components/RenderModal/RenderModalJSONPropsEditor.d.ts +1 -0
- package/dist/components/RenderModal/RenderModalJSONPropsEditor.js +25 -7
- package/dist/components/RenderModal/SchemaEditor/Fieldset.d.ts +2 -1
- package/dist/components/RenderModal/SchemaEditor/Fieldset.js +10 -5
- package/dist/components/RenderModal/SchemaEditor/SchemaEditor.d.ts +4 -0
- package/dist/components/RenderModal/SchemaEditor/SchemaEditor.js +27 -4
- package/dist/components/RenderModal/SchemaEditor/SchemaErrorMessages.d.ts +12 -4
- package/dist/components/RenderModal/SchemaEditor/SchemaErrorMessages.js +23 -9
- package/dist/components/RenderModal/SchemaEditor/SchemaLabel.js +3 -3
- package/dist/components/RenderModal/SchemaEditor/SchemaSeparationLine.js +8 -1
- package/dist/components/RenderModal/SchemaEditor/ZodColorEditor.js +1 -1
- package/dist/components/RenderModal/SchemaEditor/ZodDateEditor.js +1 -1
- package/dist/components/RenderModal/SchemaEditor/ZodDiscriminatedUnionEditor.js +1 -1
- package/dist/components/RenderModal/SchemaEditor/ZodEnumEditor.js +1 -1
- package/dist/components/RenderModal/SchemaEditor/ZodErrorMessages.d.ts +1 -0
- package/dist/components/RenderModal/SchemaEditor/ZodErrorMessages.js +23 -6
- package/dist/components/RenderModal/SchemaEditor/ZodFieldValidation.js +2 -2
- package/dist/components/RenderModal/SchemaEditor/ZodNonEditableValue.js +2 -1
- package/dist/components/RenderModal/SchemaEditor/ZodNumberEditor.js +1 -1
- package/dist/components/RenderModal/SchemaEditor/ZodObjectEditor.js +9 -11
- package/dist/components/RenderModal/SchemaEditor/ZodOrNullishEditor.js +1 -1
- package/dist/components/RenderModal/SchemaEditor/ZodStaticFileEditor.js +1 -1
- package/dist/components/RenderModal/SchemaEditor/ZodStringEditor.js +1 -1
- package/dist/components/RenderModal/SchemaEditor/ZodTextareaEditor.js +1 -1
- package/dist/components/RenderModal/WarningIndicatorButton.d.ts +1 -0
- package/dist/components/RenderModal/WarningIndicatorButton.js +17 -4
- package/dist/components/RenderModal/get-render-modal-warnings.d.ts +2 -1
- package/dist/components/RenderModal/get-render-modal-warnings.js +6 -3
- package/dist/components/RendersTab.js +1 -1
- package/dist/components/SegmentedControl.d.ts +3 -0
- package/dist/components/SegmentedControl.js +11 -5
- package/dist/components/SelectedOutlineElement.js +135 -31
- package/dist/components/SelectedOutlineOverlay.d.ts +1 -1
- package/dist/components/SelectedOutlineOverlay.js +45 -29
- package/dist/components/SelectedOutlineUvControls.d.ts +9 -0
- package/dist/components/SelectedOutlineUvControls.js +64 -10
- package/dist/components/Tabs/index.js +4 -4
- package/dist/components/Timeline/EasingEditorModal.d.ts +5 -4
- package/dist/components/Timeline/EasingEditorModal.js +597 -124
- package/dist/components/Timeline/KeyframeSettingsModal.d.ts +2 -2
- package/dist/components/Timeline/SubscribeToNodePaths.d.ts +2 -2
- package/dist/components/Timeline/TimelineClipboardKeybindings.d.ts +15 -3
- package/dist/components/Timeline/TimelineClipboardKeybindings.js +85 -1
- package/dist/components/Timeline/TimelineDeleteKeybindings.js +10 -3
- package/dist/components/Timeline/TimelineEffectItem.d.ts +2 -2
- package/dist/components/Timeline/TimelineEffectPropItem.d.ts +8 -0
- package/dist/components/Timeline/TimelineEffectPropItem.js +24 -20
- package/dist/components/Timeline/TimelineExpandedRow.d.ts +5 -2
- package/dist/components/Timeline/TimelineExpandedRow.js +4 -4
- package/dist/components/Timeline/TimelineExpandedSection.d.ts +1 -1
- package/dist/components/Timeline/TimelineExpandedSection.js +5 -19
- package/dist/components/Timeline/TimelineKeyframeControls.d.ts +8 -2
- package/dist/components/Timeline/TimelineKeyframeControls.js +24 -3
- package/dist/components/Timeline/TimelineKeyframeEasingLine.js +2 -47
- package/dist/components/Timeline/TimelineKeyframedValue.d.ts +1 -1
- package/dist/components/Timeline/TimelineKeyframedValue.js +8 -10
- package/dist/components/Timeline/TimelineNumberField.js +5 -11
- package/dist/components/Timeline/TimelineRotationField.js +5 -6
- package/dist/components/Timeline/TimelineScaleField.js +4 -8
- package/dist/components/Timeline/TimelineSelection.d.ts +6 -0
- package/dist/components/Timeline/TimelineSelection.js +109 -14
- package/dist/components/Timeline/TimelineSequence.js +22 -14
- package/dist/components/Timeline/TimelineSequenceItem.js +12 -67
- package/dist/components/Timeline/TimelineSequencePropItem.d.ts +12 -2
- package/dist/components/Timeline/TimelineSequencePropItem.js +56 -52
- package/dist/components/Timeline/TimelineTransformOriginField.js +4 -5
- package/dist/components/Timeline/TimelineTranslateField.js +4 -5
- package/dist/components/Timeline/TimelineUvCoordinateField.js +4 -4
- package/dist/components/Timeline/TimelineVideoInfo.d.ts +1 -0
- package/dist/components/Timeline/TimelineVideoInfo.js +93 -8
- package/dist/components/Timeline/call-add-keyframe.d.ts +4 -4
- package/dist/components/Timeline/call-delete-keyframe.d.ts +4 -4
- package/dist/components/Timeline/call-move-keyframe.d.ts +2 -2
- package/dist/components/Timeline/call-update-keyframe-settings.d.ts +3 -3
- package/dist/components/Timeline/delete-selected-timeline-item.d.ts +2 -1
- package/dist/components/Timeline/delete-selected-timeline-item.js +27 -1
- package/dist/components/Timeline/duplicate-selected-timeline-item.d.ts +7 -0
- package/dist/components/Timeline/duplicate-selected-timeline-item.js +32 -3
- package/dist/components/Timeline/parse-keyframe-field-from-node-path.js +2 -2
- package/dist/components/Timeline/reset-selected-timeline-props.d.ts +3 -3
- package/dist/components/Timeline/reset-selected-timeline-props.js +19 -5
- package/dist/components/Timeline/save-effect-prop.d.ts +2 -2
- package/dist/components/Timeline/save-sequence-prop.d.ts +2 -2
- package/dist/components/Timeline/sequence-props-subscription-store.d.ts +3 -3
- package/dist/components/Timeline/timeline-field-display-utils.d.ts +5 -0
- package/dist/components/Timeline/timeline-field-display-utils.js +244 -0
- package/dist/components/Timeline/timeline-video-filmstrip-times.d.ts +17 -0
- package/dist/components/Timeline/timeline-video-filmstrip-times.js +22 -0
- package/dist/components/Timeline/update-selected-easing.d.ts +47 -4
- package/dist/components/Timeline/update-selected-easing.js +40 -9
- package/dist/components/Timeline/use-sequence-freeze-frame-menu-item.d.ts +13 -0
- package/dist/components/Timeline/use-sequence-freeze-frame-menu-item.js +73 -0
- package/dist/components/Timeline/use-sequence-props-subscription.d.ts +3 -3
- package/dist/components/Timeline/use-timeline-expanded-tree.d.ts +11 -0
- package/dist/components/Timeline/use-timeline-expanded-tree.js +33 -0
- package/dist/components/VisualControls/VisualControlsContent.d.ts +1 -1
- package/dist/components/VisualControls/VisualControlsContent.js +4 -5
- package/dist/components/effect-drag-and-drop.d.ts +10 -0
- package/dist/components/effect-drag-and-drop.js +17 -8
- package/dist/components/effect-picker-search.d.ts +5 -0
- package/dist/components/effect-picker-search.js +77 -0
- package/dist/components/import-assets.d.ts +11 -2
- package/dist/components/import-assets.js +61 -6
- package/dist/components/selected-outline-drag.d.ts +44 -2
- package/dist/components/selected-outline-drag.js +74 -1
- package/dist/components/selected-outline-types.d.ts +7 -7
- package/dist/components/selected-outline-uv.d.ts +4 -3
- package/dist/components/selected-outline-uv.js +6 -2
- package/dist/error-overlay/remotion-overlay/Overlay.js +3 -0
- package/dist/esm/{chunk-t8fjnw2d.js → chunk-fge2mq5p.js} +17004 -13432
- package/dist/esm/internals.mjs +17004 -13432
- package/dist/esm/previewEntry.mjs +26617 -23041
- package/dist/esm/renderEntry.mjs +1 -1
- package/dist/helpers/editor-guide-selection.js +1 -1
- package/dist/helpers/get-preview-file-type.js +1 -1
- package/dist/helpers/render-codec-label.d.ts +2 -0
- package/dist/helpers/render-codec-label.js +49 -0
- package/dist/helpers/ruler-canvas-size.d.ts +5 -0
- package/dist/helpers/ruler-canvas-size.js +17 -0
- package/dist/helpers/timeline-layout.d.ts +4 -4
- package/dist/helpers/use-media-metadata.d.ts +8 -2
- package/dist/helpers/use-media-metadata.js +17 -4
- package/dist/state/modals.d.ts +9 -4
- package/package.json +12 -12
|
@@ -113,14 +113,41 @@ const SelectedOutlineTransformOriginHandle = ({ outline, onDraggingChange, targe
|
|
|
113
113
|
? JSON.stringify(transformOriginDrag.translateDefault)
|
|
114
114
|
: null;
|
|
115
115
|
let last = null;
|
|
116
|
+
let currentPointerX = event.clientX;
|
|
117
|
+
let currentPointerY = event.clientY;
|
|
118
|
+
let axisLocked = event.shiftKey;
|
|
116
119
|
onDraggingChange(true);
|
|
117
120
|
(0, ForceSpecificCursor_1.forceSpecificCursor)('crosshair');
|
|
118
|
-
const
|
|
121
|
+
const updateFromPointerPosition = () => {
|
|
119
122
|
const point = {
|
|
120
|
-
x:
|
|
121
|
-
y:
|
|
123
|
+
x: currentPointerX - svgRect.left,
|
|
124
|
+
y: currentPointerY - svgRect.top,
|
|
122
125
|
};
|
|
123
|
-
const
|
|
126
|
+
const rawUv = (0, selected_outline_uv_1.getUvCoordinateForPoint)(outline.points, point);
|
|
127
|
+
const lockedAxis = (0, selected_outline_drag_1.getSelectedOutlineTransformOriginLockedAxis)({
|
|
128
|
+
axisLocked,
|
|
129
|
+
dimensions,
|
|
130
|
+
startUv: uv,
|
|
131
|
+
uv: rawUv,
|
|
132
|
+
});
|
|
133
|
+
const axisLockedUv = (0, selected_outline_drag_1.applySelectedOutlineTransformOriginAxisLock)({
|
|
134
|
+
lockedAxis,
|
|
135
|
+
startUv: uv,
|
|
136
|
+
uv: rawUv,
|
|
137
|
+
});
|
|
138
|
+
const snapPoint = lockedAxis === null
|
|
139
|
+
? point
|
|
140
|
+
: (0, selected_outline_uv_1.getUvHandlePosition)(outline.points, axisLockedUv);
|
|
141
|
+
const snappedUv = (0, selected_outline_drag_1.snapSelectedOutlineTransformOriginUv)({
|
|
142
|
+
point: snapPoint,
|
|
143
|
+
points: outline.points,
|
|
144
|
+
uv: axisLockedUv,
|
|
145
|
+
});
|
|
146
|
+
const nextUv = (0, selected_outline_drag_1.applySelectedOutlineTransformOriginAxisLock)({
|
|
147
|
+
lockedAxis,
|
|
148
|
+
startUv: uv,
|
|
149
|
+
uv: snappedUv,
|
|
150
|
+
});
|
|
124
151
|
const deltaOrigin = [
|
|
125
152
|
(nextUv[0] - uv[0]) * dimensions.width,
|
|
126
153
|
(nextUv[1] - uv[1]) * dimensions.height,
|
|
@@ -152,15 +179,31 @@ const SelectedOutlineTransformOriginHandle = ({ outline, onDraggingChange, targe
|
|
|
152
179
|
})
|
|
153
180
|
: remotion_1.Internals.makeStaticDragOverride(translate));
|
|
154
181
|
};
|
|
155
|
-
|
|
182
|
+
updateFromPointerPosition();
|
|
156
183
|
const onPointerMove = (moveEvent) => {
|
|
157
184
|
moveEvent.preventDefault();
|
|
158
|
-
|
|
185
|
+
currentPointerX = moveEvent.clientX;
|
|
186
|
+
currentPointerY = moveEvent.clientY;
|
|
187
|
+
axisLocked = moveEvent.shiftKey;
|
|
188
|
+
updateFromPointerPosition();
|
|
189
|
+
};
|
|
190
|
+
const onKeyChange = (keyEvent) => {
|
|
191
|
+
if (keyEvent.key !== 'Shift') {
|
|
192
|
+
return;
|
|
193
|
+
}
|
|
194
|
+
const nextAxisLocked = keyEvent.type === 'keydown';
|
|
195
|
+
if (nextAxisLocked === axisLocked) {
|
|
196
|
+
return;
|
|
197
|
+
}
|
|
198
|
+
axisLocked = nextAxisLocked;
|
|
199
|
+
updateFromPointerPosition();
|
|
159
200
|
};
|
|
160
201
|
const onPointerUp = () => {
|
|
161
202
|
window.removeEventListener('pointermove', onPointerMove);
|
|
162
203
|
window.removeEventListener('pointerup', onPointerUp);
|
|
163
204
|
window.removeEventListener('pointercancel', onPointerUp);
|
|
205
|
+
window.removeEventListener('keydown', onKeyChange);
|
|
206
|
+
window.removeEventListener('keyup', onKeyChange);
|
|
164
207
|
(0, ForceSpecificCursor_1.stopForcingSpecificCursor)();
|
|
165
208
|
onDraggingChange(false);
|
|
166
209
|
if (last === null || (0, selected_outline_drag_1.uvsEqual)(last.uv, uv)) {
|
|
@@ -242,6 +285,8 @@ const SelectedOutlineTransformOriginHandle = ({ outline, onDraggingChange, targe
|
|
|
242
285
|
window.addEventListener('pointermove', onPointerMove);
|
|
243
286
|
window.addEventListener('pointerup', onPointerUp);
|
|
244
287
|
window.addEventListener('pointercancel', onPointerUp);
|
|
288
|
+
window.addEventListener('keydown', onKeyChange);
|
|
289
|
+
window.addEventListener('keyup', onKeyChange);
|
|
245
290
|
}, [
|
|
246
291
|
clearDragOverrides,
|
|
247
292
|
onDraggingChange,
|
|
@@ -258,7 +303,9 @@ const SelectedOutlineTransformOriginHandle = ({ outline, onDraggingChange, targe
|
|
|
258
303
|
position === null) {
|
|
259
304
|
return null;
|
|
260
305
|
}
|
|
261
|
-
return (jsx_runtime_1.jsxs("g", { pointerEvents: "all", cursor: "crosshair", onPointerDown: onPointerDown, "aria-hidden": "true",
|
|
306
|
+
return (jsx_runtime_1.jsxs("g", { pointerEvents: "all", cursor: "crosshair", onPointerDown: onPointerDown, "aria-hidden": "true", style: {
|
|
307
|
+
filter: 'drop-shadow(0 0 1px rgba(255, 255, 255, 0.2))',
|
|
308
|
+
}, children: [
|
|
262
309
|
jsx_runtime_1.jsx("circle", { cx: position.x, cy: position.y, r: 4, stroke: colors_1.BLUE, fill: "none", strokeWidth: 2, vectorEffect: "non-scaling-stroke" }), jsx_runtime_1.jsx("line", { x1: position.x - 8, y1: position.y, x2: position.x + 8, y2: position.y, stroke: colors_1.BLUE, strokeWidth: 2, vectorEffect: "non-scaling-stroke" }), jsx_runtime_1.jsx("line", { x1: position.x, y1: position.y - 8, x2: position.x, y2: position.y + 8, stroke: colors_1.BLUE, strokeWidth: 2, vectorEffect: "non-scaling-stroke" })
|
|
263
310
|
] }));
|
|
264
311
|
};
|
|
@@ -506,8 +553,6 @@ const SelectedOutlineScaleEdgeLine = ({ allScaleDragTargets, contextMenuValues,
|
|
|
506
553
|
if (interaction.shiftKey || interaction.toggleKey) {
|
|
507
554
|
return;
|
|
508
555
|
}
|
|
509
|
-
onDraggingChange(true);
|
|
510
|
-
(0, ForceSpecificCursor_1.forceSpecificCursor)(edgeInfo.cursor);
|
|
511
556
|
const startPointer = { x: event.clientX, y: event.clientY };
|
|
512
557
|
const dragStates = (0, selected_outline_drag_1.getSelectedOutlineScaleDragStates)({
|
|
513
558
|
dragTargets: selected ? allScaleDragTargets : [scaleDrag],
|
|
@@ -515,12 +560,24 @@ const SelectedOutlineScaleEdgeLine = ({ allScaleDragTargets, contextMenuValues,
|
|
|
515
560
|
timelinePosition: timelinePositionRef.current,
|
|
516
561
|
});
|
|
517
562
|
let lastValues = new Map();
|
|
563
|
+
let dragStarted = false;
|
|
518
564
|
const onPointerMove = (moveEvent) => {
|
|
519
565
|
moveEvent.preventDefault();
|
|
520
566
|
const delta = {
|
|
521
567
|
x: moveEvent.clientX - startPointer.x,
|
|
522
568
|
y: moveEvent.clientY - startPointer.y,
|
|
523
569
|
};
|
|
570
|
+
if (!dragStarted) {
|
|
571
|
+
if (!(0, selected_outline_drag_1.isSelectedOutlineDragPastThreshold)({
|
|
572
|
+
deltaX: delta.x,
|
|
573
|
+
deltaY: delta.y,
|
|
574
|
+
})) {
|
|
575
|
+
return;
|
|
576
|
+
}
|
|
577
|
+
dragStarted = true;
|
|
578
|
+
onDraggingChange(true);
|
|
579
|
+
(0, ForceSpecificCursor_1.forceSpecificCursor)(edgeInfo.cursor);
|
|
580
|
+
}
|
|
524
581
|
const projectedDelta = (0, selected_outline_measurement_1.dot)(delta, edgeInfo.normal);
|
|
525
582
|
const scaleFactor = Math.max(0.001, 1 + projectedDelta / edgeInfo.extent);
|
|
526
583
|
lastValues = (0, selected_outline_drag_1.getSelectedOutlineScaleDragValues)({
|
|
@@ -549,8 +606,10 @@ const SelectedOutlineScaleEdgeLine = ({ allScaleDragTargets, contextMenuValues,
|
|
|
549
606
|
window.removeEventListener('pointermove', onPointerMove);
|
|
550
607
|
window.removeEventListener('pointerup', onPointerUp);
|
|
551
608
|
window.removeEventListener('pointercancel', onPointerUp);
|
|
552
|
-
|
|
553
|
-
|
|
609
|
+
if (dragStarted) {
|
|
610
|
+
(0, ForceSpecificCursor_1.stopForcingSpecificCursor)();
|
|
611
|
+
onDraggingChange(false);
|
|
612
|
+
}
|
|
554
613
|
const changes = (0, selected_outline_drag_1.getSelectedOutlineScaleDragChanges)({
|
|
555
614
|
dragStates,
|
|
556
615
|
lastValues,
|
|
@@ -658,15 +717,17 @@ const SelectedOutlineRotationCornerHandle = ({ allRotationDragTargets, contextMe
|
|
|
658
717
|
return;
|
|
659
718
|
}
|
|
660
719
|
const interaction = (0, selected_outline_measurement_1.getOutlineSelectionInteraction)(event);
|
|
661
|
-
const shouldUpdateSelection = !selected || interaction.
|
|
720
|
+
const shouldUpdateSelection = !selected || interaction.toggleKey;
|
|
662
721
|
if (shouldUpdateSelection && target !== undefined) {
|
|
663
|
-
onSelect(target.selection,
|
|
722
|
+
onSelect(target.selection, {
|
|
723
|
+
shiftKey: false,
|
|
724
|
+
toggleKey: interaction.toggleKey,
|
|
725
|
+
});
|
|
664
726
|
}
|
|
665
|
-
if (interaction.
|
|
727
|
+
if (interaction.toggleKey) {
|
|
666
728
|
return;
|
|
667
729
|
}
|
|
668
|
-
|
|
669
|
-
(0, ForceSpecificCursor_1.forceSpecificCursor)(cornerInfo.cursor);
|
|
730
|
+
const startPointer = { x: event.clientX, y: event.clientY };
|
|
670
731
|
const svgRect = svg.getBoundingClientRect();
|
|
671
732
|
const center = svgPointToClientPoint((0, selected_outline_measurement_1.getSelectedOutlineRotationPivot)({
|
|
672
733
|
dimensions: outline.dimensions,
|
|
@@ -683,23 +744,21 @@ const SelectedOutlineRotationCornerHandle = ({ allRotationDragTargets, contextMe
|
|
|
683
744
|
y: event.clientY,
|
|
684
745
|
});
|
|
685
746
|
let accumulatedDelta = 0;
|
|
747
|
+
let rotationLocked = event.shiftKey;
|
|
686
748
|
let lastValues = new Map();
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
const
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
to: nextAngle,
|
|
696
|
-
});
|
|
697
|
-
previousAngle = nextAngle;
|
|
749
|
+
let dragStarted = false;
|
|
750
|
+
const updateRotationDragOverrides = () => {
|
|
751
|
+
const rotationDeltaDegrees = rotationLocked
|
|
752
|
+
? (0, selected_outline_drag_1.snapSelectedOutlineRotationDeltaDegrees)({
|
|
753
|
+
dragStates,
|
|
754
|
+
rotationDeltaDegrees: accumulatedDelta,
|
|
755
|
+
})
|
|
756
|
+
: accumulatedDelta;
|
|
698
757
|
lastValues = (0, selected_outline_drag_1.getSelectedOutlineRotationDragValues)({
|
|
699
758
|
dragStates,
|
|
700
|
-
rotationDeltaDegrees
|
|
759
|
+
rotationDeltaDegrees,
|
|
701
760
|
});
|
|
702
|
-
(0, ForceSpecificCursor_1.forceSpecificCursor)((0, selected_outline_measurement_1.getRotationCursor)(cornerInfo.cursorDegrees +
|
|
761
|
+
(0, ForceSpecificCursor_1.forceSpecificCursor)((0, selected_outline_measurement_1.getRotationCursor)(cornerInfo.cursorDegrees + rotationDeltaDegrees));
|
|
703
762
|
for (const dragState of dragStates) {
|
|
704
763
|
const value = lastValues.get(dragState.key);
|
|
705
764
|
if (value === undefined) {
|
|
@@ -717,12 +776,55 @@ const SelectedOutlineRotationCornerHandle = ({ allRotationDragTargets, contextMe
|
|
|
717
776
|
}
|
|
718
777
|
}
|
|
719
778
|
};
|
|
779
|
+
const onPointerMove = (moveEvent) => {
|
|
780
|
+
moveEvent.preventDefault();
|
|
781
|
+
const screenDeltaX = moveEvent.clientX - startPointer.x;
|
|
782
|
+
const screenDeltaY = moveEvent.clientY - startPointer.y;
|
|
783
|
+
if (!dragStarted) {
|
|
784
|
+
if (!(0, selected_outline_drag_1.isSelectedOutlineDragPastThreshold)({
|
|
785
|
+
deltaX: screenDeltaX,
|
|
786
|
+
deltaY: screenDeltaY,
|
|
787
|
+
})) {
|
|
788
|
+
return;
|
|
789
|
+
}
|
|
790
|
+
dragStarted = true;
|
|
791
|
+
onDraggingChange(true);
|
|
792
|
+
}
|
|
793
|
+
const nextAngle = (0, selected_outline_measurement_1.getAngleDegrees)(center, {
|
|
794
|
+
x: moveEvent.clientX,
|
|
795
|
+
y: moveEvent.clientY,
|
|
796
|
+
});
|
|
797
|
+
accumulatedDelta += (0, selected_outline_measurement_1.getSelectedOutlineRotationDeltaDegrees)({
|
|
798
|
+
from: previousAngle,
|
|
799
|
+
to: nextAngle,
|
|
800
|
+
});
|
|
801
|
+
previousAngle = nextAngle;
|
|
802
|
+
rotationLocked = moveEvent.shiftKey;
|
|
803
|
+
updateRotationDragOverrides();
|
|
804
|
+
};
|
|
805
|
+
const onKeyChange = (keyEvent) => {
|
|
806
|
+
if (keyEvent.key !== 'Shift') {
|
|
807
|
+
return;
|
|
808
|
+
}
|
|
809
|
+
const nextRotationLocked = keyEvent.type === 'keydown';
|
|
810
|
+
if (nextRotationLocked === rotationLocked) {
|
|
811
|
+
return;
|
|
812
|
+
}
|
|
813
|
+
rotationLocked = nextRotationLocked;
|
|
814
|
+
if (dragStarted) {
|
|
815
|
+
updateRotationDragOverrides();
|
|
816
|
+
}
|
|
817
|
+
};
|
|
720
818
|
const onPointerUp = () => {
|
|
721
819
|
window.removeEventListener('pointermove', onPointerMove);
|
|
722
820
|
window.removeEventListener('pointerup', onPointerUp);
|
|
723
821
|
window.removeEventListener('pointercancel', onPointerUp);
|
|
724
|
-
(
|
|
725
|
-
|
|
822
|
+
window.removeEventListener('keydown', onKeyChange);
|
|
823
|
+
window.removeEventListener('keyup', onKeyChange);
|
|
824
|
+
if (dragStarted) {
|
|
825
|
+
(0, ForceSpecificCursor_1.stopForcingSpecificCursor)();
|
|
826
|
+
onDraggingChange(false);
|
|
827
|
+
}
|
|
726
828
|
const changes = (0, selected_outline_drag_1.getSelectedOutlineRotationDragChanges)({
|
|
727
829
|
dragStates,
|
|
728
830
|
lastValues,
|
|
@@ -774,6 +876,8 @@ const SelectedOutlineRotationCornerHandle = ({ allRotationDragTargets, contextMe
|
|
|
774
876
|
window.addEventListener('pointermove', onPointerMove);
|
|
775
877
|
window.addEventListener('pointerup', onPointerUp);
|
|
776
878
|
window.addEventListener('pointercancel', onPointerUp);
|
|
879
|
+
window.addEventListener('keydown', onKeyChange);
|
|
880
|
+
window.addEventListener('keyup', onKeyChange);
|
|
777
881
|
}, [
|
|
778
882
|
allRotationDragTargets,
|
|
779
883
|
clearDragOverrides,
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
export { applySelectedOutlineDragAxisLock, compensateTranslateForTransformOrigin, getSelectedOutlineDragChanges, getSelectedOutlineDragValues, getSelectedOutlineKeyboardNudgeDelta, getSelectedOutlineKeyboardNudgeDeltas, getSelectedOutlineRotationDragChanges, getSelectedOutlineRotationDragStates, getSelectedOutlineRotationDragValues, getSelectedOutlineScaleDragChanges, getSelectedOutlineScaleDragStates, getSelectedOutlineScaleDragValues, getSelectedOutlineScaleEdgeInfo, isSelectedOutlineDragPastThreshold, } from './selected-outline-drag';
|
|
2
|
+
export { applySelectedOutlineDragAxisLock, applySelectedOutlineTransformOriginAxisLock, compensateTranslateForTransformOrigin, getSelectedOutlineActiveSchema, getSelectedOutlineDragChanges, getSelectedOutlineDragValues, getSelectedOutlineKeyboardNudgeDelta, getSelectedOutlineKeyboardNudgeDeltas, getSelectedOutlineRotationDragChanges, getSelectedOutlineRotationDragStates, getSelectedOutlineRotationDragValues, getSelectedOutlineScaleDragChanges, getSelectedOutlineScaleDragStates, getSelectedOutlineScaleDragValues, getSelectedOutlineScaleEdgeInfo, getSelectedOutlineTransformOriginLockedAxis, isSelectedOutlineDragPastThreshold, selectedOutlineUvSnapThresholdPx, selectedOutlineTransformOriginSnapThresholdPx, snapSelectedOutlineRotationDeltaDegrees, snapSelectedOutlineUv, snapSelectedOutlineTransformOriginUv, } from './selected-outline-drag';
|
|
3
3
|
export { getOutlineSelectionInteraction, getSelectedEffectFieldsBySequenceKey, getSelectedOutlineRotationCornerInfo, getSelectedOutlineRotationDeltaDegrees, getSelectedOutlineRotationPivot, getSelectedSequenceKeys, getSequencesWithSelectableOutlines, getTransformedSvgViewportPoints, } from './selected-outline-measurement';
|
|
4
4
|
export { selectedOutlineDragThresholdPx } from './selected-outline-types';
|
|
5
5
|
export type { SelectedOutlineDragState, SelectedOutlineRotationDragState, SelectedOutlineScaleDragState, } from './selected-outline-types';
|
|
@@ -33,7 +33,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
33
33
|
};
|
|
34
34
|
})();
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.SelectedOutlineOverlay = exports.selectedOutlineDragThresholdPx = exports.getTransformedSvgViewportPoints = exports.getSequencesWithSelectableOutlines = exports.getSelectedSequenceKeys = exports.getSelectedOutlineRotationPivot = exports.getSelectedOutlineRotationDeltaDegrees = exports.getSelectedOutlineRotationCornerInfo = exports.getSelectedEffectFieldsBySequenceKey = exports.getOutlineSelectionInteraction = exports.isSelectedOutlineDragPastThreshold = exports.getSelectedOutlineScaleEdgeInfo = exports.getSelectedOutlineScaleDragValues = exports.getSelectedOutlineScaleDragStates = exports.getSelectedOutlineScaleDragChanges = exports.getSelectedOutlineRotationDragValues = exports.getSelectedOutlineRotationDragStates = exports.getSelectedOutlineRotationDragChanges = exports.getSelectedOutlineKeyboardNudgeDeltas = exports.getSelectedOutlineKeyboardNudgeDelta = exports.getSelectedOutlineDragValues = exports.getSelectedOutlineDragChanges = exports.compensateTranslateForTransformOrigin = exports.applySelectedOutlineDragAxisLock = void 0;
|
|
36
|
+
exports.SelectedOutlineOverlay = exports.selectedOutlineDragThresholdPx = exports.getTransformedSvgViewportPoints = exports.getSequencesWithSelectableOutlines = exports.getSelectedSequenceKeys = exports.getSelectedOutlineRotationPivot = exports.getSelectedOutlineRotationDeltaDegrees = exports.getSelectedOutlineRotationCornerInfo = exports.getSelectedEffectFieldsBySequenceKey = exports.getOutlineSelectionInteraction = exports.snapSelectedOutlineTransformOriginUv = exports.snapSelectedOutlineUv = exports.snapSelectedOutlineRotationDeltaDegrees = exports.selectedOutlineTransformOriginSnapThresholdPx = exports.selectedOutlineUvSnapThresholdPx = exports.isSelectedOutlineDragPastThreshold = exports.getSelectedOutlineTransformOriginLockedAxis = exports.getSelectedOutlineScaleEdgeInfo = exports.getSelectedOutlineScaleDragValues = exports.getSelectedOutlineScaleDragStates = exports.getSelectedOutlineScaleDragChanges = exports.getSelectedOutlineRotationDragValues = exports.getSelectedOutlineRotationDragStates = exports.getSelectedOutlineRotationDragChanges = exports.getSelectedOutlineKeyboardNudgeDeltas = exports.getSelectedOutlineKeyboardNudgeDelta = exports.getSelectedOutlineDragValues = exports.getSelectedOutlineDragChanges = exports.getSelectedOutlineActiveSchema = exports.compensateTranslateForTransformOrigin = exports.applySelectedOutlineTransformOriginAxisLock = exports.applySelectedOutlineDragAxisLock = void 0;
|
|
37
37
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
38
38
|
const player_1 = require("@remotion/player");
|
|
39
39
|
const react_1 = __importStar(require("react"));
|
|
@@ -57,7 +57,9 @@ const timeline_scroll_logic_1 = require("./Timeline/timeline-scroll-logic");
|
|
|
57
57
|
const TimelineSelection_1 = require("./Timeline/TimelineSelection");
|
|
58
58
|
const selected_outline_drag_2 = require("./selected-outline-drag");
|
|
59
59
|
Object.defineProperty(exports, "applySelectedOutlineDragAxisLock", { enumerable: true, get: function () { return selected_outline_drag_2.applySelectedOutlineDragAxisLock; } });
|
|
60
|
+
Object.defineProperty(exports, "applySelectedOutlineTransformOriginAxisLock", { enumerable: true, get: function () { return selected_outline_drag_2.applySelectedOutlineTransformOriginAxisLock; } });
|
|
60
61
|
Object.defineProperty(exports, "compensateTranslateForTransformOrigin", { enumerable: true, get: function () { return selected_outline_drag_2.compensateTranslateForTransformOrigin; } });
|
|
62
|
+
Object.defineProperty(exports, "getSelectedOutlineActiveSchema", { enumerable: true, get: function () { return selected_outline_drag_2.getSelectedOutlineActiveSchema; } });
|
|
61
63
|
Object.defineProperty(exports, "getSelectedOutlineDragChanges", { enumerable: true, get: function () { return selected_outline_drag_2.getSelectedOutlineDragChanges; } });
|
|
62
64
|
Object.defineProperty(exports, "getSelectedOutlineDragValues", { enumerable: true, get: function () { return selected_outline_drag_2.getSelectedOutlineDragValues; } });
|
|
63
65
|
Object.defineProperty(exports, "getSelectedOutlineKeyboardNudgeDelta", { enumerable: true, get: function () { return selected_outline_drag_2.getSelectedOutlineKeyboardNudgeDelta; } });
|
|
@@ -69,7 +71,13 @@ Object.defineProperty(exports, "getSelectedOutlineScaleDragChanges", { enumerabl
|
|
|
69
71
|
Object.defineProperty(exports, "getSelectedOutlineScaleDragStates", { enumerable: true, get: function () { return selected_outline_drag_2.getSelectedOutlineScaleDragStates; } });
|
|
70
72
|
Object.defineProperty(exports, "getSelectedOutlineScaleDragValues", { enumerable: true, get: function () { return selected_outline_drag_2.getSelectedOutlineScaleDragValues; } });
|
|
71
73
|
Object.defineProperty(exports, "getSelectedOutlineScaleEdgeInfo", { enumerable: true, get: function () { return selected_outline_drag_2.getSelectedOutlineScaleEdgeInfo; } });
|
|
74
|
+
Object.defineProperty(exports, "getSelectedOutlineTransformOriginLockedAxis", { enumerable: true, get: function () { return selected_outline_drag_2.getSelectedOutlineTransformOriginLockedAxis; } });
|
|
72
75
|
Object.defineProperty(exports, "isSelectedOutlineDragPastThreshold", { enumerable: true, get: function () { return selected_outline_drag_2.isSelectedOutlineDragPastThreshold; } });
|
|
76
|
+
Object.defineProperty(exports, "selectedOutlineUvSnapThresholdPx", { enumerable: true, get: function () { return selected_outline_drag_2.selectedOutlineUvSnapThresholdPx; } });
|
|
77
|
+
Object.defineProperty(exports, "selectedOutlineTransformOriginSnapThresholdPx", { enumerable: true, get: function () { return selected_outline_drag_2.selectedOutlineTransformOriginSnapThresholdPx; } });
|
|
78
|
+
Object.defineProperty(exports, "snapSelectedOutlineRotationDeltaDegrees", { enumerable: true, get: function () { return selected_outline_drag_2.snapSelectedOutlineRotationDeltaDegrees; } });
|
|
79
|
+
Object.defineProperty(exports, "snapSelectedOutlineUv", { enumerable: true, get: function () { return selected_outline_drag_2.snapSelectedOutlineUv; } });
|
|
80
|
+
Object.defineProperty(exports, "snapSelectedOutlineTransformOriginUv", { enumerable: true, get: function () { return selected_outline_drag_2.snapSelectedOutlineTransformOriginUv; } });
|
|
73
81
|
const selected_outline_measurement_2 = require("./selected-outline-measurement");
|
|
74
82
|
Object.defineProperty(exports, "getOutlineSelectionInteraction", { enumerable: true, get: function () { return selected_outline_measurement_2.getOutlineSelectionInteraction; } });
|
|
75
83
|
Object.defineProperty(exports, "getSelectedEffectFieldsBySequenceKey", { enumerable: true, get: function () { return selected_outline_measurement_2.getSelectedEffectFieldsBySequenceKey; } });
|
|
@@ -127,8 +135,7 @@ const SelectedOutlineOverlay = ({ scale }) => {
|
|
|
127
135
|
sequences,
|
|
128
136
|
overrideIdsToNodePaths: overrideIdToNodePathMappings,
|
|
129
137
|
}).map(({ key, keyframeDisplayOffset, nodePathInfo, sequence }) => {
|
|
130
|
-
var _a;
|
|
131
|
-
var _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
|
|
138
|
+
var _a, _b, _c, _d, _e, _f;
|
|
132
139
|
if (sequence.refForOutline === null) {
|
|
133
140
|
throw new Error('Expected sequence to have a ref for outline');
|
|
134
141
|
}
|
|
@@ -136,26 +143,36 @@ const SelectedOutlineOverlay = ({ scale }) => {
|
|
|
136
143
|
const containsSelection = sequenceKeysContainingSelection.has(key);
|
|
137
144
|
const nodePath = nodePathInfo.sequenceSubscriptionKey;
|
|
138
145
|
const { controls } = sequence;
|
|
139
|
-
const fieldSchema = controls === null || controls === void 0 ? void 0 : controls.schema[selected_outline_types_1.translateFieldKey];
|
|
140
146
|
const nodePropStatuses = remotion_1.Internals.getPropStatusesCtx(propStatuses, nodePath);
|
|
147
|
+
const sourceFrame = timelinePosition - keyframeDisplayOffset;
|
|
148
|
+
const dragOverrides = (_a = getDragOverrides(nodePath)) !== null && _a !== void 0 ? _a : {};
|
|
149
|
+
const activeSchema = controls
|
|
150
|
+
? (0, selected_outline_drag_1.getSelectedOutlineActiveSchema)({
|
|
151
|
+
schema: controls.schema,
|
|
152
|
+
currentRuntimeValueDotNotation: controls.currentRuntimeValueDotNotation,
|
|
153
|
+
dragOverrides,
|
|
154
|
+
propStatus: nodePropStatuses,
|
|
155
|
+
frame: sourceFrame,
|
|
156
|
+
})
|
|
157
|
+
: null;
|
|
158
|
+
const fieldSchema = activeSchema === null || activeSchema === void 0 ? void 0 : activeSchema[selected_outline_types_1.translateFieldKey];
|
|
141
159
|
const propStatus = nodePropStatuses === null || nodePropStatuses === void 0 ? void 0 : nodePropStatuses[selected_outline_types_1.translateFieldKey];
|
|
142
|
-
const scaleFieldSchema =
|
|
160
|
+
const scaleFieldSchema = activeSchema === null || activeSchema === void 0 ? void 0 : activeSchema[selected_outline_types_1.scaleFieldKey];
|
|
143
161
|
const scalePropStatus = nodePropStatuses === null || nodePropStatuses === void 0 ? void 0 : nodePropStatuses[selected_outline_types_1.scaleFieldKey];
|
|
144
|
-
const rotationFieldSchema =
|
|
145
|
-
const rotationPropStatus =
|
|
146
|
-
const transformOriginFieldSchema =
|
|
162
|
+
const rotationFieldSchema = activeSchema === null || activeSchema === void 0 ? void 0 : activeSchema[selected_outline_types_1.rotateFieldKey];
|
|
163
|
+
const rotationPropStatus = nodePropStatuses === null || nodePropStatuses === void 0 ? void 0 : nodePropStatuses[selected_outline_types_1.rotateFieldKey];
|
|
164
|
+
const transformOriginFieldSchema = activeSchema === null || activeSchema === void 0 ? void 0 : activeSchema[selected_outline_types_1.transformOriginFieldKey];
|
|
147
165
|
const transformOriginPropStatus = nodePropStatuses === null || nodePropStatuses === void 0 ? void 0 : nodePropStatuses[selected_outline_types_1.transformOriginFieldKey];
|
|
148
|
-
const rotationSourceFrame = timelinePosition - keyframeDisplayOffset;
|
|
149
166
|
const transformOriginValueForRotation = (transformOriginFieldSchema === null || transformOriginFieldSchema === void 0 ? void 0 : transformOriginFieldSchema.type) === 'transform-origin' &&
|
|
150
167
|
((transformOriginPropStatus === null || transformOriginPropStatus === void 0 ? void 0 : transformOriginPropStatus.status) === 'static' ||
|
|
151
168
|
(transformOriginPropStatus === null || transformOriginPropStatus === void 0 ? void 0 : transformOriginPropStatus.status) === 'keyframed')
|
|
152
|
-
? String((
|
|
169
|
+
? String((_b = remotion_1.Internals.getEffectiveVisualModeValue({
|
|
153
170
|
propStatus: transformOriginPropStatus,
|
|
154
|
-
dragOverrideValue:
|
|
171
|
+
dragOverrideValue: dragOverrides[selected_outline_types_1.transformOriginFieldKey],
|
|
155
172
|
defaultValue: transformOriginFieldSchema.default,
|
|
156
|
-
frame:
|
|
173
|
+
frame: sourceFrame,
|
|
157
174
|
shouldResortToDefaultValueIfUndefined: true,
|
|
158
|
-
})) !== null &&
|
|
175
|
+
})) !== null && _b !== void 0 ? _b : transformOriginFieldSchema.default)
|
|
159
176
|
: '50% 50%';
|
|
160
177
|
const canDragStatus = (propStatus === null || propStatus === void 0 ? void 0 : propStatus.status) === 'static' ||
|
|
161
178
|
((propStatus === null || propStatus === void 0 ? void 0 : propStatus.status) === 'keyframed' &&
|
|
@@ -181,7 +198,7 @@ const SelectedOutlineOverlay = ({ scale }) => {
|
|
|
181
198
|
const selectedForTransformOrigin = (selectedTransformOriginInfo === null || selectedTransformOriginInfo === void 0 ? void 0 : selectedTransformOriginInfo.sequenceKey) === key;
|
|
182
199
|
const transformOriginSourceFrame = (selectedTransformOriginInfo === null || selectedTransformOriginInfo === void 0 ? void 0 : selectedTransformOriginInfo.displayFrame) === null ||
|
|
183
200
|
(selectedTransformOriginInfo === null || selectedTransformOriginInfo === void 0 ? void 0 : selectedTransformOriginInfo.displayFrame) === undefined
|
|
184
|
-
?
|
|
201
|
+
? sourceFrame
|
|
185
202
|
: selectedTransformOriginInfo.displayFrame - keyframeDisplayOffset;
|
|
186
203
|
const canTransformOriginStatus = (transformOriginPropStatus === null || transformOriginPropStatus === void 0 ? void 0 : transformOriginPropStatus.status) === 'static' ||
|
|
187
204
|
((transformOriginPropStatus === null || transformOriginPropStatus === void 0 ? void 0 : transformOriginPropStatus.status) === 'keyframed' &&
|
|
@@ -234,8 +251,7 @@ const SelectedOutlineOverlay = ({ scale }) => {
|
|
|
234
251
|
nodePath,
|
|
235
252
|
fieldKey: selected_outline_types_1.scaleFieldKey,
|
|
236
253
|
defaultValue: (() => {
|
|
237
|
-
|
|
238
|
-
const dragOverrideValue = ((_a = getDragOverrides(nodePath)) !== null && _a !== void 0 ? _a : {})[selected_outline_types_1.scaleFieldKey];
|
|
254
|
+
const dragOverrideValue = dragOverrides[selected_outline_types_1.scaleFieldKey];
|
|
239
255
|
const effectiveValue = remotion_1.Internals.getEffectiveVisualModeValue({
|
|
240
256
|
propStatus: scalePropStatus,
|
|
241
257
|
dragOverrideValue,
|
|
@@ -269,48 +285,48 @@ const SelectedOutlineOverlay = ({ scale }) => {
|
|
|
269
285
|
nodePath,
|
|
270
286
|
originDefault: transformOriginFieldSchema.default,
|
|
271
287
|
originPropStatus: transformOriginPropStatus,
|
|
272
|
-
originValue: String((
|
|
288
|
+
originValue: String((_c = remotion_1.Internals.getEffectiveVisualModeValue({
|
|
273
289
|
propStatus: transformOriginPropStatus,
|
|
274
|
-
dragOverrideValue:
|
|
290
|
+
dragOverrideValue: dragOverrides[selected_outline_types_1.transformOriginFieldKey],
|
|
275
291
|
defaultValue: transformOriginFieldSchema.default,
|
|
276
292
|
frame: transformOriginSourceFrame,
|
|
277
293
|
shouldResortToDefaultValueIfUndefined: true,
|
|
278
|
-
})) !== null &&
|
|
294
|
+
})) !== null && _c !== void 0 ? _c : transformOriginFieldSchema.default),
|
|
279
295
|
rotateValue: String((rotationPropStatus === null || rotationPropStatus === void 0 ? void 0 : rotationPropStatus.status) === 'static' ||
|
|
280
296
|
(rotationPropStatus === null || rotationPropStatus === void 0 ? void 0 : rotationPropStatus.status) === 'keyframed'
|
|
281
|
-
? ((
|
|
297
|
+
? ((_d = remotion_1.Internals.getEffectiveVisualModeValue({
|
|
282
298
|
propStatus: rotationPropStatus,
|
|
283
|
-
dragOverrideValue:
|
|
299
|
+
dragOverrideValue: dragOverrides[selected_outline_types_1.rotateFieldKey],
|
|
284
300
|
defaultValue: (rotationFieldSchema === null || rotationFieldSchema === void 0 ? void 0 : rotationFieldSchema.type) === 'rotation-css'
|
|
285
301
|
? rotationFieldSchema.default
|
|
286
302
|
: '0deg',
|
|
287
303
|
frame: transformOriginSourceFrame,
|
|
288
304
|
shouldResortToDefaultValueIfUndefined: true,
|
|
289
|
-
})) !== null &&
|
|
305
|
+
})) !== null && _d !== void 0 ? _d : '0deg')
|
|
290
306
|
: '0deg'),
|
|
291
307
|
scaleValue: (scalePropStatus === null || scalePropStatus === void 0 ? void 0 : scalePropStatus.status) === 'static' ||
|
|
292
308
|
(scalePropStatus === null || scalePropStatus === void 0 ? void 0 : scalePropStatus.status) === 'keyframed'
|
|
293
|
-
? String((
|
|
309
|
+
? String((_e = remotion_1.Internals.getEffectiveVisualModeValue({
|
|
294
310
|
propStatus: scalePropStatus,
|
|
295
|
-
dragOverrideValue:
|
|
311
|
+
dragOverrideValue: dragOverrides[selected_outline_types_1.scaleFieldKey],
|
|
296
312
|
defaultValue: (scaleFieldSchema === null || scaleFieldSchema === void 0 ? void 0 : scaleFieldSchema.type) === 'scale'
|
|
297
313
|
? scaleFieldSchema.default
|
|
298
314
|
: 1,
|
|
299
315
|
frame: transformOriginSourceFrame,
|
|
300
316
|
shouldResortToDefaultValueIfUndefined: true,
|
|
301
|
-
})) !== null &&
|
|
317
|
+
})) !== null && _e !== void 0 ? _e : 1)
|
|
302
318
|
: '1',
|
|
303
319
|
schema: controls.schema,
|
|
304
320
|
sourceFrame: transformOriginSourceFrame,
|
|
305
321
|
translateDefault: fieldSchema.default,
|
|
306
322
|
translatePropStatus: propStatus,
|
|
307
|
-
translateValue: String((
|
|
323
|
+
translateValue: String((_f = remotion_1.Internals.getEffectiveVisualModeValue({
|
|
308
324
|
propStatus,
|
|
309
|
-
dragOverrideValue:
|
|
325
|
+
dragOverrideValue: dragOverrides[selected_outline_types_1.translateFieldKey],
|
|
310
326
|
defaultValue: fieldSchema.default,
|
|
311
327
|
frame: transformOriginSourceFrame,
|
|
312
328
|
shouldResortToDefaultValueIfUndefined: true,
|
|
313
|
-
})) !== null &&
|
|
329
|
+
})) !== null && _f !== void 0 ? _f : fieldSchema.default),
|
|
314
330
|
}
|
|
315
331
|
: null,
|
|
316
332
|
uvHandles: containsSelection
|
|
@@ -604,6 +620,6 @@ const SelectedOutlineOverlay = ({ scale }) => {
|
|
|
604
620
|
if (outlineTargets.length === 0) {
|
|
605
621
|
return null;
|
|
606
622
|
}
|
|
607
|
-
return (jsx_runtime_1.jsxs("svg", { ref: overlayRef, style: outlineContainer, width: "100%", height: "100%", "aria-hidden": "true", children: [outlines.map((outline) => (jsx_runtime_1.jsx(SelectedOutlineElement_1.SelectedOutlineElement, { allDragTargets: allDragTargets, allRotationDragTargets: allRotationDragTargets, allScaleDragTargets: allScaleDragTargets, dragging: draggingOutline, hovered: hoveredOutlineKey === outline.key, outline: outline, onDraggingChange: onDraggingChange, onHoverChange: setHoveredOutlineKey, onSelect: selectItem, scale: scale, target: targetsByKey.get(outline.key) }, outline.key))), outlines.map((outline) => (jsx_runtime_1.jsx(SelectedOutlineUvControls_1.SelectedOutlineUvHandleConnectionLayer, { outline: outline, target: targetsByKey.get(outline.key) }, `${outline.key}-uv-connection-lines`))), outlines.map((outline) => (jsx_runtime_1.jsx(SelectedOutlineUvControls_1.SelectedOutlineUvHandleCircleLayer, { onDraggingChange: onDraggingChange, outline: outline, target: targetsByKey.get(outline.key) }, `${outline.key}-uv-handles`)))] }));
|
|
623
|
+
return (jsx_runtime_1.jsxs("svg", { ref: overlayRef, style: outlineContainer, width: "100%", height: "100%", "aria-hidden": "true", children: [outlines.map((outline) => (jsx_runtime_1.jsx(SelectedOutlineElement_1.SelectedOutlineElement, { allDragTargets: allDragTargets, allRotationDragTargets: allRotationDragTargets, allScaleDragTargets: allScaleDragTargets, dragging: draggingOutline, hovered: hoveredOutlineKey === outline.key, outline: outline, onDraggingChange: onDraggingChange, onHoverChange: setHoveredOutlineKey, onSelect: selectItem, scale: scale, target: targetsByKey.get(outline.key) }, outline.key))), outlines.map((outline) => (jsx_runtime_1.jsx(SelectedOutlineUvControls_1.SelectedOutlineUvHandleConnectionLayer, { outline: outline, target: targetsByKey.get(outline.key) }, `${outline.key}-uv-connection-lines`))), outlines.map((outline) => (jsx_runtime_1.jsx(SelectedOutlineUvControls_1.SelectedOutlineUvHandleCircleLayer, { onDraggingChange: onDraggingChange, onSelect: selectItem, outline: outline, target: targetsByKey.get(outline.key) }, `${outline.key}-uv-handles`)))] }));
|
|
608
624
|
};
|
|
609
625
|
exports.SelectedOutlineOverlay = SelectedOutlineOverlay;
|
|
@@ -1,8 +1,16 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
+
import type { SequenceNodePathInfo } from '../helpers/get-timeline-sequence-sort-key';
|
|
2
3
|
import type { SelectedOutline } from './selected-outline-geometry';
|
|
3
4
|
import { type SelectedOutlineUvHandle } from './selected-outline-uv';
|
|
5
|
+
import type { TimelineSelection, TimelineSelectionInteraction } from './Timeline/TimelineSelection';
|
|
6
|
+
export declare const getSelectedOutlineUvHandleTimelineSelection: ({ effectIndex, fieldKey, nodePathInfo, }: {
|
|
7
|
+
readonly effectIndex: number;
|
|
8
|
+
readonly fieldKey: string;
|
|
9
|
+
readonly nodePathInfo: SequenceNodePathInfo;
|
|
10
|
+
}) => TimelineSelection;
|
|
4
11
|
type UvTarget = {
|
|
5
12
|
readonly containsSelection: boolean;
|
|
13
|
+
readonly nodePathInfo: SequenceNodePathInfo;
|
|
6
14
|
readonly uvHandles: readonly SelectedOutlineUvHandle[];
|
|
7
15
|
};
|
|
8
16
|
export declare const SelectedOutlineUvHandleConnectionLayer: React.FC<{
|
|
@@ -11,6 +19,7 @@ export declare const SelectedOutlineUvHandleConnectionLayer: React.FC<{
|
|
|
11
19
|
}>;
|
|
12
20
|
export declare const SelectedOutlineUvHandleCircleLayer: React.FC<{
|
|
13
21
|
readonly onDraggingChange: (dragging: boolean) => void;
|
|
22
|
+
readonly onSelect: (item: TimelineSelection, interaction?: TimelineSelectionInteraction) => void;
|
|
14
23
|
readonly outline: SelectedOutline;
|
|
15
24
|
readonly target: UvTarget | undefined;
|
|
16
25
|
}>;
|