@remotion/studio 4.0.473 → 4.0.474

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (79) hide show
  1. package/dist/components/AssetSelectorItem.js +30 -6
  2. package/dist/components/Canvas.js +71 -0
  3. package/dist/components/Modals.js +1 -2
  4. package/dist/components/NewComposition/InputDragger.d.ts +1 -0
  5. package/dist/components/NewComposition/InputDragger.js +9 -6
  6. package/dist/components/SelectedOutlineOverlay.d.ts +7 -5
  7. package/dist/components/SelectedOutlineOverlay.js +78 -67
  8. package/dist/components/Timeline/KeyframeSettingsModal.js +4 -4
  9. package/dist/components/Timeline/SequencePropsObserver.js +3 -3
  10. package/dist/components/Timeline/TimelineClipboardKeybindings.d.ts +7 -7
  11. package/dist/components/Timeline/TimelineClipboardKeybindings.js +19 -16
  12. package/dist/components/Timeline/TimelineDeleteKeybindings.js +11 -9
  13. package/dist/components/Timeline/TimelineEffectItem.js +7 -7
  14. package/dist/components/Timeline/TimelineEffectPropItem.js +17 -17
  15. package/dist/components/Timeline/TimelineExpandedKeyframeRow.js +6 -1
  16. package/dist/components/Timeline/TimelineExpandedSection.js +5 -5
  17. package/dist/components/Timeline/TimelineKeyframeControls.js +8 -8
  18. package/dist/components/Timeline/TimelineKeyframeDiamond.js +0 -1
  19. package/dist/components/Timeline/TimelineKeyframeEasingLine.d.ts +9 -0
  20. package/dist/components/Timeline/TimelineKeyframeEasingLine.js +120 -0
  21. package/dist/components/Timeline/TimelineKeyframedValue.js +1 -1
  22. package/dist/components/Timeline/TimelineNumberField.js +15 -7
  23. package/dist/components/Timeline/TimelineRotationField.js +17 -11
  24. package/dist/components/Timeline/TimelineScaleField.js +16 -12
  25. package/dist/components/Timeline/TimelineSelection.d.ts +15 -0
  26. package/dist/components/Timeline/TimelineSelection.js +26 -1
  27. package/dist/components/Timeline/TimelineSequence.js +6 -6
  28. package/dist/components/Timeline/TimelineSequenceItem.js +21 -14
  29. package/dist/components/Timeline/TimelineSequencePropItem.js +37 -37
  30. package/dist/components/Timeline/TimelineSequenceRightEdgeDragHandle.d.ts +5 -5
  31. package/dist/components/Timeline/TimelineSequenceRightEdgeDragHandle.js +46 -44
  32. package/dist/components/Timeline/TimelineTranslateField.js +24 -19
  33. package/dist/components/Timeline/TimelineUvCoordinateField.js +18 -12
  34. package/dist/components/Timeline/{apply-effect-response-to-code-values.d.ts → apply-effect-response-to-prop-statuses.d.ts} +1 -1
  35. package/dist/components/Timeline/{apply-effect-response-to-code-values.js → apply-effect-response-to-prop-statuses.js} +3 -3
  36. package/dist/components/Timeline/call-add-keyframe.d.ts +5 -5
  37. package/dist/components/Timeline/call-add-keyframe.js +6 -6
  38. package/dist/components/Timeline/call-delete-keyframe.d.ts +7 -7
  39. package/dist/components/Timeline/call-delete-keyframe.js +7 -7
  40. package/dist/components/Timeline/call-move-keyframe.d.ts +3 -3
  41. package/dist/components/Timeline/call-move-keyframe.js +3 -3
  42. package/dist/components/Timeline/call-update-keyframe-settings.d.ts +5 -5
  43. package/dist/components/Timeline/call-update-keyframe-settings.js +6 -6
  44. package/dist/components/Timeline/delete-selected-keyframe.d.ts +5 -5
  45. package/dist/components/Timeline/delete-selected-keyframe.js +5 -5
  46. package/dist/components/Timeline/delete-selected-timeline-item.d.ts +5 -5
  47. package/dist/components/Timeline/delete-selected-timeline-item.js +6 -4
  48. package/dist/components/Timeline/get-node-keyframes.d.ts +3 -3
  49. package/dist/components/Timeline/get-node-keyframes.js +4 -4
  50. package/dist/components/Timeline/get-timeline-easing-segments.d.ts +9 -0
  51. package/dist/components/Timeline/get-timeline-easing-segments.js +19 -0
  52. package/dist/components/Timeline/reset-selected-timeline-props.d.ts +7 -7
  53. package/dist/components/Timeline/reset-selected-timeline-props.js +10 -10
  54. package/dist/components/Timeline/save-effect-prop.d.ts +2 -2
  55. package/dist/components/Timeline/save-effect-prop.js +5 -5
  56. package/dist/components/Timeline/save-prop-queue.d.ts +3 -3
  57. package/dist/components/Timeline/save-prop-queue.js +3 -3
  58. package/dist/components/Timeline/save-sequence-prop.d.ts +3 -3
  59. package/dist/components/Timeline/save-sequence-prop.js +4 -4
  60. package/dist/components/Timeline/timeline-field-utils.d.ts +10 -0
  61. package/dist/components/Timeline/timeline-field-utils.js +26 -5
  62. package/dist/components/Timeline/timeline-translate-utils.d.ts +1 -1
  63. package/dist/components/Timeline/timeline-translate-utils.js +4 -5
  64. package/dist/components/Timeline/use-expanded-track-keyframe-rows.js +7 -7
  65. package/dist/components/Timeline/use-sequence-props-subscription.js +3 -3
  66. package/dist/components/Timeline/use-timeline-height.js +3 -3
  67. package/dist/components/Timeline/use-timeline-keyframe-drag.js +13 -11
  68. package/dist/components/import-assets.d.ts +15 -0
  69. package/dist/components/import-assets.js +63 -1
  70. package/dist/esm/{chunk-q0jkt0zq.js → chunk-xjvc8qen.js} +1708 -1394
  71. package/dist/esm/internals.mjs +1708 -1394
  72. package/dist/esm/previewEntry.mjs +1711 -1397
  73. package/dist/esm/renderEntry.mjs +1 -1
  74. package/dist/helpers/timeline-layout.d.ts +6 -6
  75. package/dist/helpers/timeline-layout.js +5 -5
  76. package/dist/state/modals.d.ts +0 -3
  77. package/package.json +10 -10
  78. package/dist/components/NewComposition/DeleteStaticFile.d.ts +0 -4
  79. package/dist/components/NewComposition/DeleteStaticFile.js +0 -44
@@ -209,7 +209,7 @@ var renderContent = (Root) => {
209
209
  renderToDOM(/* @__PURE__ */ jsx("div", {
210
210
  children: /* @__PURE__ */ jsx(DelayedSpinner, {})
211
211
  }));
212
- import("./chunk-q0jkt0zq.js").then(({ StudioInternals }) => {
212
+ import("./chunk-xjvc8qen.js").then(({ StudioInternals }) => {
213
213
  window.remotion_isStudio = true;
214
214
  window.remotion_isReadOnlyStudio = true;
215
215
  window.remotion_inputProps = "{}";
@@ -1,9 +1,9 @@
1
- import { type AnySchemaFieldInfo, type CodeValues, type DragOverrides, type EffectSchemaFieldInfo, type SchemaFieldInfo, type SequenceControls, type SequenceSchemaFieldInfo } from '@remotion/studio-shared';
1
+ import { type AnySchemaFieldInfo, type DragOverrides, type EffectSchemaFieldInfo, type PropStatuses, type SchemaFieldInfo, type SequenceControls, type SequenceSchemaFieldInfo } from '@remotion/studio-shared';
2
2
  import type { GetDragOverrides, GetEffectDragOverrides, SequenceSchema as SequenceSchemaShape, TSequence } from 'remotion';
3
3
  import type { GetIsExpanded } from '../components/ExpandedTracksProvider';
4
4
  import type { SequenceNodePathInfo } from './get-timeline-sequence-sort-key';
5
5
  export { getEffectFieldsToShow, getFieldsToShow, SCHEMA_FIELD_ROW_HEIGHT, } from '@remotion/studio-shared';
6
- export type { AnySchemaFieldInfo, CodeValues, DragOverrides, EffectSchemaFieldInfo, SchemaFieldInfo, SequenceControls, SequenceSchemaFieldInfo, };
6
+ export type { AnySchemaFieldInfo, DragOverrides, EffectSchemaFieldInfo, PropStatuses, SchemaFieldInfo, SequenceControls, SequenceSchemaFieldInfo, };
7
7
  export declare const TIMELINE_PADDING = 16;
8
8
  export declare const TIMELINE_BORDER = 1;
9
9
  export declare const TIMELINE_ITEM_BORDER_BOTTOM = 1;
@@ -29,12 +29,12 @@ export type TimelineTreeNode = {
29
29
  readonly label: string;
30
30
  readonly field: AnySchemaFieldInfo | null;
31
31
  };
32
- export declare const buildTimelineTree: ({ sequence, nodePathInfo, getDragOverrides, getEffectDragOverrides, codeValues, }: {
32
+ export declare const buildTimelineTree: ({ sequence, nodePathInfo, getDragOverrides, getEffectDragOverrides, propStatuses, }: {
33
33
  sequence: TSequence;
34
34
  nodePathInfo: SequenceNodePathInfo;
35
35
  getDragOverrides: GetDragOverrides;
36
36
  getEffectDragOverrides: GetEffectDragOverrides;
37
- codeValues: CodeValues;
37
+ propStatuses: PropStatuses;
38
38
  }) => TimelineTreeNode[];
39
39
  export type FlatTreeRow = {
40
40
  readonly node: TimelineTreeNode;
@@ -46,11 +46,11 @@ export declare const flattenVisibleTreeNodes: ({ nodes, getIsExpanded, depth, }:
46
46
  depth?: number | undefined;
47
47
  }) => FlatTreeRow[];
48
48
  export declare const getTreeRowHeight: (node: TimelineTreeNode) => number;
49
- export declare const getExpandedTrackHeight: ({ sequence, nodePathInfo, getIsExpanded, codeValues, }: {
49
+ export declare const getExpandedTrackHeight: ({ sequence, nodePathInfo, getIsExpanded, propStatuses, }: {
50
50
  sequence: TSequence;
51
51
  nodePathInfo: SequenceNodePathInfo;
52
52
  getIsExpanded: GetIsExpanded;
53
- codeValues: CodeValues;
53
+ propStatuses: PropStatuses;
54
54
  }) => number;
55
55
  export declare const TIMELINE_LAYER_FILMSTRIP_HEIGHT = 26;
56
56
  export declare const TIMELINE_VIDEO_INFO_WAVEFORM_HEIGHT = 17;
@@ -12,7 +12,7 @@ exports.TIMELINE_ITEM_BORDER_BOTTOM = 1;
12
12
  exports.TIMELINE_TRACK_EXPANDED_HEIGHT = 100;
13
13
  exports.TREE_GROUP_ROW_HEIGHT = 22;
14
14
  exports.EXPANDED_SECTION_PADDING_RIGHT = 10;
15
- const buildTimelineTree = ({ sequence, nodePathInfo, getDragOverrides, getEffectDragOverrides, codeValues, }) => {
15
+ const buildTimelineTree = ({ sequence, nodePathInfo, getDragOverrides, getEffectDragOverrides, propStatuses, }) => {
16
16
  var _a;
17
17
  const roots = [];
18
18
  const { sequenceSubscriptionKey, index, auxiliaryKeys, supportsEffects } = nodePathInfo;
@@ -20,7 +20,7 @@ const buildTimelineTree = ({ sequence, nodePathInfo, getDragOverrides, getEffect
20
20
  schema: sequence.controls.schema,
21
21
  currentRuntimeValueDotNotation: sequence.controls.currentRuntimeValueDotNotation,
22
22
  getDragOverrides,
23
- codeValues,
23
+ propStatuses,
24
24
  nodePath: sequenceSubscriptionKey,
25
25
  });
26
26
  if (controlFields && controlFields.length > 0) {
@@ -57,7 +57,7 @@ const buildTimelineTree = ({ sequence, nodePathInfo, getDragOverrides, getEffect
57
57
  effect,
58
58
  effectIndex: i,
59
59
  nodePath: sequenceSubscriptionKey,
60
- codeValues,
60
+ propStatuses,
61
61
  getEffectDragOverrides,
62
62
  });
63
63
  return {
@@ -124,14 +124,14 @@ const getTreeRowHeight = (node) => {
124
124
  return exports.TREE_GROUP_ROW_HEIGHT;
125
125
  };
126
126
  exports.getTreeRowHeight = getTreeRowHeight;
127
- const getExpandedTrackHeight = ({ sequence, nodePathInfo, getIsExpanded, codeValues, }) => {
127
+ const getExpandedTrackHeight = ({ sequence, nodePathInfo, getIsExpanded, propStatuses, }) => {
128
128
  const tree = (0, exports.buildTimelineTree)({
129
129
  sequence,
130
130
  nodePathInfo,
131
131
  // We assume that no drag overrides can change the timeline layout
132
132
  getDragOverrides: () => ({}),
133
133
  getEffectDragOverrides: () => ({}),
134
- codeValues,
134
+ propStatuses,
135
135
  });
136
136
  const flat = (0, exports.flattenVisibleTreeNodes)({ nodes: tree, getIsExpanded });
137
137
  if (flat.length === 0) {
@@ -117,9 +117,6 @@ export type ModalState = {
117
117
  folderName: string;
118
118
  parentName: string | null;
119
119
  stack: string | null;
120
- } | {
121
- type: 'delete-static-file';
122
- relativePath: string;
123
120
  } | {
124
121
  type: 'rename-static-file';
125
122
  relativePath: string;
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.473",
6
+ "version": "4.0.474",
7
7
  "description": "APIs for interacting with the Remotion Studio",
8
8
  "main": "dist",
9
9
  "scripts": {
@@ -25,14 +25,14 @@
25
25
  },
26
26
  "dependencies": {
27
27
  "semver": "7.5.3",
28
- "remotion": "4.0.473",
29
- "@remotion/player": "4.0.473",
30
- "@remotion/media-utils": "4.0.473",
31
- "@remotion/renderer": "4.0.473",
32
- "@remotion/web-renderer": "4.0.473",
33
- "@remotion/studio-shared": "4.0.473",
34
- "@remotion/timeline-utils": "4.0.473",
35
- "@remotion/zod-types": "4.0.473",
28
+ "remotion": "4.0.474",
29
+ "@remotion/player": "4.0.474",
30
+ "@remotion/media-utils": "4.0.474",
31
+ "@remotion/renderer": "4.0.474",
32
+ "@remotion/web-renderer": "4.0.474",
33
+ "@remotion/studio-shared": "4.0.474",
34
+ "@remotion/timeline-utils": "4.0.474",
35
+ "@remotion/zod-types": "4.0.474",
36
36
  "@jridgewell/trace-mapping": "0.3.31",
37
37
  "mediabunny": "1.45.0",
38
38
  "memfs": "3.4.3",
@@ -43,7 +43,7 @@
43
43
  "react": "19.2.3",
44
44
  "react-dom": "19.2.3",
45
45
  "@types/semver": "7.5.3",
46
- "@remotion/eslint-config-internal": "4.0.473",
46
+ "@remotion/eslint-config-internal": "4.0.474",
47
47
  "eslint": "9.19.0",
48
48
  "@typescript/native-preview": "7.0.0-dev.20260217.1"
49
49
  },
@@ -1,4 +0,0 @@
1
- import React from 'react';
2
- export declare const DeleteStaticFileModal: React.FC<{
3
- readonly relativePath: string;
4
- }>;
@@ -1,44 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DeleteStaticFileModal = void 0;
4
- const jsx_runtime_1 = require("react/jsx-runtime");
5
- const react_1 = require("react");
6
- const delete_static_file_1 = require("../../api/delete-static-file");
7
- const modals_1 = require("../../state/modals");
8
- const Button_1 = require("../Button");
9
- const layout_1 = require("../layout");
10
- const styles_1 = require("../Menu/styles");
11
- const ModalFooter_1 = require("../ModalFooter");
12
- const ModalHeader_1 = require("../ModalHeader");
13
- const NotificationCenter_1 = require("../Notifications/NotificationCenter");
14
- const DismissableModal_1 = require("./DismissableModal");
15
- const content = {
16
- padding: 16,
17
- fontSize: 14,
18
- flex: 1,
19
- minWidth: 500,
20
- };
21
- const DeleteStaticFileModal = ({ relativePath }) => {
22
- const { setSelectedModal } = (0, react_1.useContext)(modals_1.ModalsContext);
23
- const [submitting, setSubmitting] = (0, react_1.useState)(false);
24
- const onDelete = (0, react_1.useCallback)(() => {
25
- setSubmitting(true);
26
- const notification = (0, NotificationCenter_1.showNotification)(`Deleting ${relativePath}...`, null);
27
- (0, delete_static_file_1.deleteStaticFile)(relativePath)
28
- .then(() => {
29
- setSelectedModal(null);
30
- notification.replaceContent(`Deleted ${relativePath}`, 2000);
31
- })
32
- .catch((err) => {
33
- setSubmitting(false);
34
- notification.replaceContent(`Could not delete ${relativePath}: ${err.message}`, 3000);
35
- });
36
- }, [relativePath, setSelectedModal]);
37
- return (jsx_runtime_1.jsxs(DismissableModal_1.DismissableModal, { children: [
38
- jsx_runtime_1.jsx(ModalHeader_1.ModalHeader, { title: 'Delete asset' }), jsx_runtime_1.jsxs("div", { style: content, children: ["Do you want to delete the asset", ' ', jsx_runtime_1.jsx("code", { style: styles_1.inlineCodeSnippet, children: relativePath }),
39
- " from your public folder?"] }), jsx_runtime_1.jsx(ModalFooter_1.ModalFooterContainer, { children: jsx_runtime_1.jsxs(layout_1.Row, { align: "center", justify: "flex-end", children: [
40
- jsx_runtime_1.jsx(Button_1.Button, { onClick: () => setSelectedModal(null), children: "Cancel" }), jsx_runtime_1.jsx(layout_1.Spacing, { x: 1 }), jsx_runtime_1.jsx(Button_1.Button, { onClick: onDelete, disabled: submitting, children: "Delete" })
41
- ] }) })
42
- ] }));
43
- };
44
- exports.DeleteStaticFileModal = DeleteStaticFileModal;