@remotion/studio 4.0.521 → 4.0.522

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 (60) hide show
  1. package/dist/components/CanvasIfSizeIsAvailable.js +7 -0
  2. package/dist/components/CopyButton.js +7 -14
  3. package/dist/components/Editor.js +6 -5
  4. package/dist/components/EditorContent.js +1 -1
  5. package/dist/components/ElementInstallConfirmation.js +3 -1
  6. package/dist/components/FixComputedValueModal.js +20 -10
  7. package/dist/components/InspectorLocationCopy.js +10 -5
  8. package/dist/components/MenuBuildIndicator.js +7 -2
  9. package/dist/components/MenuCompositionName.js +62 -6
  10. package/dist/components/RenderModal/CliCopyButton.js +13 -27
  11. package/dist/components/RenderQueue/RenderQueueCopyToClipboard.js +7 -4
  12. package/dist/components/SidebarCollapserControls.js +11 -5
  13. package/dist/components/SkillsSettings.js +9 -5
  14. package/dist/components/Splitter/SplitterContainer.js +63 -10
  15. package/dist/components/Splitter/SplitterContext.d.ts +3 -0
  16. package/dist/components/Splitter/SplitterContext.js +5 -1
  17. package/dist/components/Splitter/SplitterElement.js +11 -2
  18. package/dist/components/Splitter/SplitterHandle.d.ts +1 -0
  19. package/dist/components/Splitter/SplitterHandle.js +55 -25
  20. package/dist/components/Timeline/SubscribeToNodePaths.d.ts +2 -1
  21. package/dist/components/Timeline/SubscribeToNodePaths.js +2 -1
  22. package/dist/components/Timeline/Timeline.js +15 -4
  23. package/dist/components/Timeline/TimelineDragHandler.js +9 -4
  24. package/dist/components/Timeline/TimelinePinchZoom.js +6 -30
  25. package/dist/components/Timeline/TimelinePlayCursorSyncer.js +1 -7
  26. package/dist/components/Timeline/TimelineSequence.js +77 -12
  27. package/dist/components/Timeline/TimelineSequenceItem.js +12 -1
  28. package/dist/components/Timeline/TimelineSequenceRightEdgeDragHandle.d.ts +13 -3
  29. package/dist/components/Timeline/TimelineSequenceRightEdgeDragHandle.js +168 -121
  30. package/dist/components/Timeline/TimelineSlider.js +1 -4
  31. package/dist/components/Timeline/TimelineWidthProvider.js +2 -5
  32. package/dist/components/Timeline/TimelineZoomControls.js +20 -20
  33. package/dist/components/Timeline/get-sequence-split-menu-item.d.ts +11 -0
  34. package/dist/components/Timeline/get-sequence-split-menu-item.js +55 -0
  35. package/dist/components/Timeline/use-sequence-props-subscription.d.ts +3 -2
  36. package/dist/components/Timeline/use-sequence-props-subscription.js +4 -10
  37. package/dist/components/TopPanel.js +3 -19
  38. package/dist/components/UpdatesSettings.js +9 -5
  39. package/dist/components/ZoomPersistor.js +6 -3
  40. package/dist/components/composition-menu-items.js +1 -1
  41. package/dist/esm/{chunk-emw4k5b0.js → chunk-3netyjd9.js} +4917 -4651
  42. package/dist/esm/internals.mjs +4917 -4651
  43. package/dist/esm/previewEntry.mjs +4895 -4629
  44. package/dist/esm/renderEntry.mjs +1 -1
  45. package/dist/helpers/copy-text.js +1 -2
  46. package/dist/helpers/use-copy-feedback.d.ts +4 -0
  47. package/dist/helpers/use-copy-feedback.js +19 -0
  48. package/dist/icons/copy.d.ts +5 -0
  49. package/dist/icons/copy.js +12 -0
  50. package/dist/state/canvas-ref.d.ts +1 -0
  51. package/dist/state/canvas-ref.js +2 -1
  52. package/dist/state/sidebar.d.ts +3 -0
  53. package/dist/state/sidebar.js +6 -1
  54. package/dist/state/timeline-zoom.d.ts +1 -1
  55. package/dist/state/timeline-zoom.js +3 -3
  56. package/dist/visual-controls/VisualControls.js +4 -0
  57. package/package.json +15 -15
  58. package/dist/esm/chunk-vkrvnx2h.js +0 -99378
  59. package/dist/helpers/use-max-media-duration.d.ts +0 -2
  60. package/dist/helpers/use-max-media-duration.js +0 -61
@@ -1,2 +0,0 @@
1
- import { type TSequence } from 'remotion';
2
- export declare const useMaxMediaDuration: (s: TSequence, fps: number) => number | null;
@@ -1,61 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.useMaxMediaDuration = void 0;
4
- const react_1 = require("react");
5
- const remotion_1 = require("remotion");
6
- const is_video_with_last_frame_hold_1 = require("./is-video-with-last-frame-hold");
7
- const use_media_metadata_1 = require("./use-media-metadata");
8
- const cache = new Map();
9
- const getCacheKey = (src, fps) => JSON.stringify([src, fps]);
10
- const getSrc = (s) => {
11
- if (s.type === 'video') {
12
- return s.src;
13
- }
14
- if (s.type === 'audio') {
15
- return s.src;
16
- }
17
- return null;
18
- };
19
- const useMaxMediaDuration = (s, fps) => {
20
- var _a;
21
- const holdsLastFrame = (0, is_video_with_last_frame_hold_1.isVideoWithLastFrameHold)(s);
22
- const src = holdsLastFrame ? null : getSrc(s);
23
- const resolvedSrc = remotion_1.Internals.usePreload(src !== null && src !== void 0 ? src : '');
24
- const cacheKey = src ? getCacheKey(resolvedSrc, fps) : null;
25
- const [maxMediaDuration, setMaxMediaDuration] = (0, react_1.useState)(cacheKey ? ((_a = cache.get(cacheKey)) !== null && _a !== void 0 ? _a : null) : Infinity);
26
- (0, react_1.useEffect)(() => {
27
- var _a;
28
- if (!src || !cacheKey) {
29
- return;
30
- }
31
- const cached = (_a = cache.get(cacheKey)) !== null && _a !== void 0 ? _a : null;
32
- setMaxMediaDuration(cached);
33
- if (cached !== null) {
34
- return;
35
- }
36
- let cancelled = false;
37
- (0, use_media_metadata_1.getMediaMetadata)(resolvedSrc)
38
- .then((metadata) => {
39
- if (cancelled || !metadata) {
40
- return;
41
- }
42
- const duration = Math.floor(metadata.duration * fps);
43
- cache.set(cacheKey, duration);
44
- setMaxMediaDuration(duration);
45
- })
46
- .catch(() => {
47
- if (cancelled) {
48
- return;
49
- }
50
- setMaxMediaDuration(null);
51
- });
52
- return () => {
53
- cancelled = true;
54
- };
55
- }, [cacheKey, fps, resolvedSrc, src]);
56
- if (holdsLastFrame) {
57
- return Infinity;
58
- }
59
- return maxMediaDuration;
60
- };
61
- exports.useMaxMediaDuration = useMaxMediaDuration;