@remotion/studio 4.0.523 → 4.0.524

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 (98) hide show
  1. package/dist/components/ActionTooltip.d.ts +9 -0
  2. package/dist/components/ActionTooltip.js +143 -0
  3. package/dist/components/Canvas.js +3 -2
  4. package/dist/components/CheckboardToggle.js +7 -10
  5. package/dist/components/ElementInstallConfirmation.js +6 -41
  6. package/dist/components/FullscreenToggle.js +5 -8
  7. package/dist/components/GlobalKeybindings.js +57 -0
  8. package/dist/components/InspectorSequenceSection.js +5 -5
  9. package/dist/components/LazySyntaxHighlightedSource.d.ts +4 -0
  10. package/dist/components/LazySyntaxHighlightedSource.js +43 -0
  11. package/dist/components/LoopToggle.js +8 -2
  12. package/dist/components/MenuToolbar.js +6 -4
  13. package/dist/components/MuteToggle.d.ts +1 -0
  14. package/dist/components/MuteToggle.js +16 -6
  15. package/dist/components/NewComposition/NewComposition.d.ts +1 -0
  16. package/dist/components/NewComposition/NewComposition.js +5 -4
  17. package/dist/components/NewComposition/NewFolder.js +2 -4
  18. package/dist/components/NewComposition/RenameComposition.js +3 -2
  19. package/dist/components/NewComposition/RenameFolder.js +2 -4
  20. package/dist/components/NewComposition/SlugPreview.d.ts +7 -0
  21. package/dist/components/NewComposition/SlugPreview.js +18 -0
  22. package/dist/components/OutlineToggle.js +16 -10
  23. package/dist/components/PlayPause.js +7 -1
  24. package/dist/components/PlaybackKeyboardShortcutsManager.d.ts +2 -0
  25. package/dist/components/PlaybackKeyboardShortcutsManager.js +36 -1
  26. package/dist/components/PlaybackRateSelector.js +2 -2
  27. package/dist/components/PreviewToolbar.js +1 -1
  28. package/dist/components/PreviewToolbarOverflowButton.js +8 -2
  29. package/dist/components/RenderQueue/CaptionQueueItem.js +2 -1
  30. package/dist/components/RenderQueue/RenderQueueCopyToClipboard.js +2 -1
  31. package/dist/components/RenderQueue/RenderQueueDownloadItem.js +2 -1
  32. package/dist/components/RenderQueue/RenderQueueItemCancelButton.js +2 -1
  33. package/dist/components/RenderQueue/RenderQueueOpenInFolder.js +2 -1
  34. package/dist/components/RenderQueue/RenderQueueRemoveItem.js +2 -1
  35. package/dist/components/RenderQueue/RenderQueueRepeat.js +2 -1
  36. package/dist/components/RenderQueue/VideoMattingQueueItem.js +2 -1
  37. package/dist/components/RulersAndGuidesToggle.js +7 -1
  38. package/dist/components/SettingsButton.js +8 -6
  39. package/dist/components/SettingsModal.js +1 -1
  40. package/dist/components/SidebarCollapserControls.js +13 -16
  41. package/dist/components/SizeSelector.js +2 -2
  42. package/dist/components/SnappingToggle.js +6 -8
  43. package/dist/components/StudioSettings.js +32 -18
  44. package/dist/components/SyntaxHighlightedSource.d.ts +5 -0
  45. package/dist/components/{HighlightedElementSource.js → SyntaxHighlightedSource.js} +2 -2
  46. package/dist/components/Timeline/Timeline.js +47 -39
  47. package/dist/components/Timeline/TimelineLayerChildren.js +12 -9
  48. package/dist/components/Timeline/TimelineZoomControls.js +2 -1
  49. package/dist/components/Timeline/timeline-field-display-utils.js +8 -5
  50. package/dist/components/TimelineCombobox.d.ts +1 -0
  51. package/dist/components/TimelineCombobox.js +8 -4
  52. package/dist/components/TimelineInOutToggle.js +8 -15
  53. package/dist/components/handle-drop.js +3 -2
  54. package/dist/components/keyboard-shortcuts.d.ts +4 -4
  55. package/dist/components/keyboard-shortcuts.js +23 -9
  56. package/dist/error-overlay/remotion-overlay/CodeFrame.js +29 -18
  57. package/dist/esm/LazyModels-hc33szyn.mjs +11 -0
  58. package/dist/esm/LazyModels-sg40rjw6.mjs +11 -0
  59. package/dist/esm/{HighlightedElementSource-jfc66k4p.mjs → SyntaxHighlightedSource-3xks91rz.mjs} +4 -4
  60. package/dist/esm/{TranscriptionModal-916jqhry.mjs → TranscriptionModal-3ctnxpt6.mjs} +7 -7
  61. package/dist/esm/{VideoMattingModal-2tm79s9b.mjs → VideoMattingModal-b0r7e60n.mjs} +7 -7
  62. package/dist/esm/{index-te66vvrp.mjs → index-1b9skrrd.mjs} +4 -4
  63. package/dist/esm/{index-1x7bsdh6.mjs → index-2j3d1g81.mjs} +2 -2
  64. package/dist/esm/{index-hy4xcgty.mjs → index-9qtvmwtx.mjs} +1 -1
  65. package/dist/esm/{index-6cvm9a65.mjs → index-c37kme2v.mjs} +842 -556
  66. package/dist/esm/{index-5qddp5h7.mjs → index-e3zwf3e7.mjs} +1 -1
  67. package/dist/esm/{index-x7t2y7ws.mjs → index-er3mh6em.mjs} +3584 -3090
  68. package/dist/esm/{index-jg13hf2g.mjs → index-k426ye99.mjs} +2 -1
  69. package/dist/esm/{index-sgtmgc4h.mjs → index-q2epbw93.mjs} +3 -3
  70. package/dist/esm/{index-3hgr6gjx.mjs → index-q5xv20xx.mjs} +1 -1
  71. package/dist/esm/{index-czwvnn9g.mjs → index-wbmp5srk.mjs} +1 -1
  72. package/dist/esm/{index-xhe2m2qr.mjs → index-yfrysr5f.mjs} +18 -10
  73. package/dist/esm/index.mjs +3 -3
  74. package/dist/esm/internals.mjs +8 -8
  75. package/dist/esm/previewEntry.mjs +8 -8
  76. package/dist/esm/renderEntry.mjs +3 -3
  77. package/dist/helpers/colors.d.ts +1 -0
  78. package/dist/helpers/colors.js +4 -3
  79. package/dist/helpers/inject-css.js +2 -2
  80. package/dist/helpers/prism-vsc-dark-plus.d.ts +1 -0
  81. package/dist/helpers/prism-vsc-dark-plus.js +305 -0
  82. package/dist/helpers/studio-runtime-config.d.ts +1 -1
  83. package/dist/helpers/use-create-composition.d.ts +1 -0
  84. package/dist/helpers/use-create-composition.js +12 -7
  85. package/dist/helpers/use-keybinding.d.ts +1 -1
  86. package/dist/helpers/use-keyboard-shortcut-label.d.ts +2 -2
  87. package/dist/helpers/use-menu-structure.js +1 -1
  88. package/dist/helpers/use-rename-composition.d.ts +1 -0
  89. package/dist/helpers/use-rename-composition.js +11 -5
  90. package/dist/icons/skills.js +1 -1
  91. package/dist/renderEntry.js +2 -2
  92. package/package.json +20 -20
  93. package/dist/components/HighlightedElementSource.d.ts +0 -5
  94. package/dist/esm/LazyModels-2trdm224.mjs +0 -11
  95. package/dist/esm/LazyModels-fjb5ckaq.mjs +0 -11
  96. package/dist/helpers/prism-tomorrow.d.ts +0 -1
  97. package/dist/helpers/prism-tomorrow.js +0 -151
  98. /package/dist/esm/{resolve-composition-component-location-14148845.mjs → resolve-composition-component-location-bt2d6qxq.mjs} +0 -0
@@ -8,7 +8,7 @@ const element_install_request_1 = require("./element-install-request");
8
8
  const import_assets_1 = require("./import-assets");
9
9
  const handleDrop = async ({ chooseSvgImportMode, compositionFile, compositionId, destinationDimensions, dropPosition, event, fps, from, localFiles, preferCompositionStart, }) => {
10
10
  var _a;
11
- var _b, _c, _d;
11
+ var _b, _c, _d, _e;
12
12
  if (localFiles !== null || (0, drop_handler_data_1.isFileDragEvent)(event)) {
13
13
  const files = localFiles !== null && localFiles !== void 0 ? localFiles : Array.from((_b = (_a = event.dataTransfer) === null || _a === void 0 ? void 0 : _a.files) !== null && _b !== void 0 ? _b : []);
14
14
  if (files.length === 0) {
@@ -91,7 +91,8 @@ const handleDrop = async ({ chooseSvgImportMode, compositionFile, compositionId,
91
91
  element: {
92
92
  ...element.element,
93
93
  durationInFrames: (_c = element.element.durationInFrames) !== null && _c !== void 0 ? _c : null,
94
- installationMode: (_d = element.element.installationMode) !== null && _d !== void 0 ? _d : null,
94
+ initialProps: (_d = element.element.initialProps) !== null && _d !== void 0 ? _d : null,
95
+ installationMode: (_e = element.element.installationMode) !== null && _e !== void 0 ? _e : null,
95
96
  },
96
97
  from: (0, import_assets_1.getFromForDrop)({
97
98
  durationInFrames: element.element.durationInFrames,
@@ -12,15 +12,15 @@ export type KeyboardShortcutGroup = {
12
12
  export declare const defaultKeyboardShortcuts: Record<StudioKeyboardShortcutAction, readonly StudioKeyboardShortcut[]>;
13
13
  export declare const keyboardShortcutGroups: readonly KeyboardShortcutGroup[];
14
14
  export declare const askAIKeyboardShortcutGroup: KeyboardShortcutGroup;
15
- export declare const getKeyboardShortcutsForAction: (action: "askAI" | "clearInOutPoints" | "copyEffectsAndValues" | "cutEffects" | "deleteSelection" | "duplicateSequences" | "enterFullscreen" | "goToFrame" | "jumpToBeginning" | "jumpToEnd" | "nextComposition" | "pauseAndReturnToPlaybackStart" | "pausePlayback" | "playForward" | "playPause" | "previousComposition" | "quickSwitcher" | "redo" | "render" | "resetZoom" | "reversePlayback" | "selectAllSequenceRows" | "selectOpacityProp" | "selectRotateProp" | "selectScaleProp" | "selectTranslateProp" | "setInPoint" | "setOutPoint" | "showKeyboardShortcuts" | "toggleBothSidebars" | "toggleCheckerboard" | "toggleLeftSidebar" | "toggleRightSidebar" | "toggleSnapping" | "undo" | "zoomIn" | "zoomOut", configured?: Partial<Record<"askAI" | "clearInOutPoints" | "copyEffectsAndValues" | "cutEffects" | "deleteSelection" | "duplicateSequences" | "enterFullscreen" | "goToFrame" | "jumpToBeginning" | "jumpToEnd" | "nextComposition" | "pauseAndReturnToPlaybackStart" | "pausePlayback" | "playForward" | "playPause" | "previousComposition" | "quickSwitcher" | "redo" | "render" | "resetZoom" | "reversePlayback" | "selectAllSequenceRows" | "selectOpacityProp" | "selectRotateProp" | "selectScaleProp" | "selectTranslateProp" | "setInPoint" | "setOutPoint" | "showKeyboardShortcuts" | "toggleBothSidebars" | "toggleCheckerboard" | "toggleLeftSidebar" | "toggleRightSidebar" | "toggleSnapping" | "undo" | "zoomIn" | "zoomOut", StudioKeyboardShortcutValue>> | null) => readonly StudioKeyboardShortcut[];
15
+ export declare const getKeyboardShortcutsForAction: (action: "askAI" | "clearInOutPoints" | "copyEffectsAndValues" | "cutEffects" | "deleteSelection" | "duplicateSequences" | "enterFullscreen" | "goToFrame" | "jumpToBeginning" | "jumpToEnd" | "nextComposition" | "pauseAndReturnToPlaybackStart" | "pausePlayback" | "playForward" | "playPause" | "previousComposition" | "quickSwitcher" | "redo" | "render" | "resetZoom" | "reversePlayback" | "selectAllSequenceRows" | "selectOpacityProp" | "selectRotateProp" | "selectScaleProp" | "selectTranslateProp" | "setInPoint" | "setOutPoint" | "showKeyboardShortcuts" | "toggleBothSidebars" | "toggleCheckerboard" | "toggleLeftSidebar" | "toggleLoop" | "toggleMute" | "toggleOutlines" | "toggleRightSidebar" | "toggleRulersAndGuides" | "toggleSnapping" | "undo" | "zoomIn" | "zoomOut", configured?: Partial<Record<"askAI" | "clearInOutPoints" | "copyEffectsAndValues" | "cutEffects" | "deleteSelection" | "duplicateSequences" | "enterFullscreen" | "goToFrame" | "jumpToBeginning" | "jumpToEnd" | "nextComposition" | "pauseAndReturnToPlaybackStart" | "pausePlayback" | "playForward" | "playPause" | "previousComposition" | "quickSwitcher" | "redo" | "render" | "resetZoom" | "reversePlayback" | "selectAllSequenceRows" | "selectOpacityProp" | "selectRotateProp" | "selectScaleProp" | "selectTranslateProp" | "setInPoint" | "setOutPoint" | "showKeyboardShortcuts" | "toggleBothSidebars" | "toggleCheckerboard" | "toggleLeftSidebar" | "toggleLoop" | "toggleMute" | "toggleOutlines" | "toggleRightSidebar" | "toggleRulersAndGuides" | "toggleSnapping" | "undo" | "zoomIn" | "zoomOut", StudioKeyboardShortcutValue>> | null) => readonly StudioKeyboardShortcut[];
16
16
  export declare const keyboardEventMatchesShortcut: ({ event, shortcut: value, }: {
17
17
  readonly event: KeyboardEvent;
18
18
  readonly shortcut: StudioKeyboardShortcut;
19
19
  }) => boolean;
20
20
  export declare const keyboardShortcutsOverlap: (first: StudioKeyboardShortcut, second: StudioKeyboardShortcut) => boolean;
21
- export declare const keyboardEventMatchesAction: (event: KeyboardEvent, action: "askAI" | "clearInOutPoints" | "copyEffectsAndValues" | "cutEffects" | "deleteSelection" | "duplicateSequences" | "enterFullscreen" | "goToFrame" | "jumpToBeginning" | "jumpToEnd" | "nextComposition" | "pauseAndReturnToPlaybackStart" | "pausePlayback" | "playForward" | "playPause" | "previousComposition" | "quickSwitcher" | "redo" | "render" | "resetZoom" | "reversePlayback" | "selectAllSequenceRows" | "selectOpacityProp" | "selectRotateProp" | "selectScaleProp" | "selectTranslateProp" | "setInPoint" | "setOutPoint" | "showKeyboardShortcuts" | "toggleBothSidebars" | "toggleCheckerboard" | "toggleLeftSidebar" | "toggleRightSidebar" | "toggleSnapping" | "undo" | "zoomIn" | "zoomOut") => boolean;
21
+ export declare const keyboardEventMatchesAction: (event: KeyboardEvent, action: "askAI" | "clearInOutPoints" | "copyEffectsAndValues" | "cutEffects" | "deleteSelection" | "duplicateSequences" | "enterFullscreen" | "goToFrame" | "jumpToBeginning" | "jumpToEnd" | "nextComposition" | "pauseAndReturnToPlaybackStart" | "pausePlayback" | "playForward" | "playPause" | "previousComposition" | "quickSwitcher" | "redo" | "render" | "resetZoom" | "reversePlayback" | "selectAllSequenceRows" | "selectOpacityProp" | "selectRotateProp" | "selectScaleProp" | "selectTranslateProp" | "setInPoint" | "setOutPoint" | "showKeyboardShortcuts" | "toggleBothSidebars" | "toggleCheckerboard" | "toggleLeftSidebar" | "toggleLoop" | "toggleMute" | "toggleOutlines" | "toggleRightSidebar" | "toggleRulersAndGuides" | "toggleSnapping" | "undo" | "zoomIn" | "zoomOut") => boolean;
22
22
  export declare const formatKeyboardShortcut: (value: StudioKeyboardShortcut) => readonly string[];
23
23
  export declare const formatKeyboardShortcutForAria: (value: StudioKeyboardShortcut) => string;
24
- export declare const getKeyboardShortcutLabel: (action: "askAI" | "clearInOutPoints" | "copyEffectsAndValues" | "cutEffects" | "deleteSelection" | "duplicateSequences" | "enterFullscreen" | "goToFrame" | "jumpToBeginning" | "jumpToEnd" | "nextComposition" | "pauseAndReturnToPlaybackStart" | "pausePlayback" | "playForward" | "playPause" | "previousComposition" | "quickSwitcher" | "redo" | "render" | "resetZoom" | "reversePlayback" | "selectAllSequenceRows" | "selectOpacityProp" | "selectRotateProp" | "selectScaleProp" | "selectTranslateProp" | "setInPoint" | "setOutPoint" | "showKeyboardShortcuts" | "toggleBothSidebars" | "toggleCheckerboard" | "toggleLeftSidebar" | "toggleRightSidebar" | "toggleSnapping" | "undo" | "zoomIn" | "zoomOut") => string;
25
- export declare const getKeyboardShortcutAriaKeyShortcuts: (action: "askAI" | "clearInOutPoints" | "copyEffectsAndValues" | "cutEffects" | "deleteSelection" | "duplicateSequences" | "enterFullscreen" | "goToFrame" | "jumpToBeginning" | "jumpToEnd" | "nextComposition" | "pauseAndReturnToPlaybackStart" | "pausePlayback" | "playForward" | "playPause" | "previousComposition" | "quickSwitcher" | "redo" | "render" | "resetZoom" | "reversePlayback" | "selectAllSequenceRows" | "selectOpacityProp" | "selectRotateProp" | "selectScaleProp" | "selectTranslateProp" | "setInPoint" | "setOutPoint" | "showKeyboardShortcuts" | "toggleBothSidebars" | "toggleCheckerboard" | "toggleLeftSidebar" | "toggleRightSidebar" | "toggleSnapping" | "undo" | "zoomIn" | "zoomOut") => string;
24
+ export declare const getKeyboardShortcutLabel: (action: "askAI" | "clearInOutPoints" | "copyEffectsAndValues" | "cutEffects" | "deleteSelection" | "duplicateSequences" | "enterFullscreen" | "goToFrame" | "jumpToBeginning" | "jumpToEnd" | "nextComposition" | "pauseAndReturnToPlaybackStart" | "pausePlayback" | "playForward" | "playPause" | "previousComposition" | "quickSwitcher" | "redo" | "render" | "resetZoom" | "reversePlayback" | "selectAllSequenceRows" | "selectOpacityProp" | "selectRotateProp" | "selectScaleProp" | "selectTranslateProp" | "setInPoint" | "setOutPoint" | "showKeyboardShortcuts" | "toggleBothSidebars" | "toggleCheckerboard" | "toggleLeftSidebar" | "toggleLoop" | "toggleMute" | "toggleOutlines" | "toggleRightSidebar" | "toggleRulersAndGuides" | "toggleSnapping" | "undo" | "zoomIn" | "zoomOut") => string;
25
+ export declare const getKeyboardShortcutAriaKeyShortcuts: (action: "askAI" | "clearInOutPoints" | "copyEffectsAndValues" | "cutEffects" | "deleteSelection" | "duplicateSequences" | "enterFullscreen" | "goToFrame" | "jumpToBeginning" | "jumpToEnd" | "nextComposition" | "pauseAndReturnToPlaybackStart" | "pausePlayback" | "playForward" | "playPause" | "previousComposition" | "quickSwitcher" | "redo" | "render" | "resetZoom" | "reversePlayback" | "selectAllSequenceRows" | "selectOpacityProp" | "selectRotateProp" | "selectScaleProp" | "selectTranslateProp" | "setInPoint" | "setOutPoint" | "showKeyboardShortcuts" | "toggleBothSidebars" | "toggleCheckerboard" | "toggleLeftSidebar" | "toggleLoop" | "toggleMute" | "toggleOutlines" | "toggleRightSidebar" | "toggleRulersAndGuides" | "toggleSnapping" | "undo" | "zoomIn" | "zoomOut") => string;
26
26
  export declare const shortcutFromKeyboardEvent: (event: KeyboardEvent) => StudioKeyboardShortcut | null;
@@ -7,11 +7,13 @@ const shortcut = (action, actionId) => ({ action, actionId });
7
7
  const fixedShortcut = (action, fixedChords, fixedReason) => ({ action, actionId: null, fixedChords, fixedReason });
8
8
  exports.defaultKeyboardShortcuts = {
9
9
  playPause: [{ key: 'Space' }],
10
+ toggleMute: [{ key: 'm', shift: false }],
11
+ toggleLoop: [{ key: 'l', shift: true }],
10
12
  jumpToBeginning: [{ key: 'a' }],
11
13
  jumpToEnd: [{ key: 'e' }],
12
14
  reversePlayback: [{ key: 'j' }],
13
15
  pausePlayback: [{ key: 'k' }],
14
- playForward: [{ key: 'l' }],
16
+ playForward: [{ key: 'l', shift: false }],
15
17
  goToFrame: [{ key: 'g' }],
16
18
  pauseAndReturnToPlaybackStart: [{ key: 'Enter' }],
17
19
  toggleLeftSidebar: [{ key: 'b', commandOrControl: true }],
@@ -19,14 +21,16 @@ exports.defaultKeyboardShortcuts = {
19
21
  toggleBothSidebars: [{ key: 'g', commandOrControl: true }],
20
22
  enterFullscreen: [{ key: 'f' }],
21
23
  toggleSnapping: [{ key: 'm', shift: true }],
24
+ toggleOutlines: [{ key: 'o', shift: true }],
25
+ toggleRulersAndGuides: [{ key: 'r', shift: true }],
22
26
  previousComposition: [{ key: 'PageUp' }],
23
27
  nextComposition: [{ key: 'PageDown' }],
24
28
  showKeyboardShortcuts: [{ key: '?', shift: true }],
25
29
  quickSwitcher: [{ key: 'k', commandOrControl: true }],
26
- render: [{ key: 'r' }],
30
+ render: [{ key: 'r', shift: false }],
27
31
  toggleCheckerboard: [{ key: 't' }],
28
32
  setInPoint: [{ key: 'i' }],
29
- setOutPoint: [{ key: 'o' }],
33
+ setOutPoint: [{ key: 'o', shift: false }],
30
34
  clearInOutPoints: [{ key: 'x' }],
31
35
  zoomIn: [{ key: '+', shift: true }, { key: '+' }],
32
36
  zoomOut: [{ key: '-' }],
@@ -39,7 +43,7 @@ exports.defaultKeyboardShortcuts = {
39
43
  selectAllSequenceRows: [{ key: 'a', commandOrControl: true }],
40
44
  selectTranslateProp: [{ key: 'p' }],
41
45
  selectOpacityProp: [{ key: 't' }],
42
- selectRotateProp: [{ key: 'r' }],
46
+ selectRotateProp: [{ key: 'r', shift: false }],
43
47
  selectScaleProp: [{ key: 's' }],
44
48
  duplicateSequences: [{ key: 'd', commandOrControl: true }],
45
49
  copyEffectsAndValues: [{ key: 'c', commandOrControl: true }],
@@ -54,6 +58,8 @@ exports.keyboardShortcutGroups = [
54
58
  fixedShortcut('1 second back', [['Shift', '←']], 'Context-sensitive timeline control'),
55
59
  fixedShortcut('Previous frame', [['←']], 'Context-sensitive timeline control'),
56
60
  shortcut('Play / Pause', 'playPause'),
61
+ shortcut('Mute / Unmute', 'toggleMute'),
62
+ shortcut('Loop', 'toggleLoop'),
57
63
  fixedShortcut('Next frame', [['→']], 'Context-sensitive timeline control'),
58
64
  fixedShortcut('1 second forward', [['Shift', '→']], 'Context-sensitive timeline control'),
59
65
  shortcut('Jump to beginning', 'jumpToBeginning'),
@@ -79,6 +85,8 @@ exports.keyboardShortcutGroups = [
79
85
  shortcut('Enter fullscreen', 'enterFullscreen'),
80
86
  fixedShortcut('Exit fullscreen', [['Esc']], 'Handled by the browser'),
81
87
  shortcut('Enable snapping', 'toggleSnapping'),
88
+ shortcut('Outlines', 'toggleOutlines'),
89
+ shortcut('Rulers and guides', 'toggleRulersAndGuides'),
82
90
  ],
83
91
  },
84
92
  {
@@ -157,14 +165,20 @@ const keyboardEventMatchesShortcut = ({ event, shortcut: value, }) => {
157
165
  return (event.key.toLowerCase() === normalizeKey(value.key).toLowerCase() &&
158
166
  commandOrControl === ((_a = value.commandOrControl) !== null && _a !== void 0 ? _a : false) &&
159
167
  (is_mac_1.isMac ? !event.ctrlKey : !event.metaKey) &&
160
- (!value.shift || event.shiftKey) &&
161
- (!value.alt || event.altKey));
168
+ (value.shift === undefined || event.shiftKey === value.shift) &&
169
+ (value.alt === undefined || event.altKey === value.alt));
162
170
  };
163
171
  exports.keyboardEventMatchesShortcut = keyboardEventMatchesShortcut;
164
172
  const keyboardShortcutsOverlap = (first, second) => {
165
173
  var _a, _b;
166
174
  return first.key.toLowerCase() === second.key.toLowerCase() &&
167
- ((_a = first.commandOrControl) !== null && _a !== void 0 ? _a : false) === ((_b = second.commandOrControl) !== null && _b !== void 0 ? _b : false);
175
+ ((_a = first.commandOrControl) !== null && _a !== void 0 ? _a : false) === ((_b = second.commandOrControl) !== null && _b !== void 0 ? _b : false) &&
176
+ (first.shift === undefined ||
177
+ second.shift === undefined ||
178
+ first.shift === second.shift) &&
179
+ (first.alt === undefined ||
180
+ second.alt === undefined ||
181
+ first.alt === second.alt);
168
182
  };
169
183
  exports.keyboardShortcutsOverlap = keyboardShortcutsOverlap;
170
184
  const keyboardEventMatchesAction = (event, action) => (0, exports.getKeyboardShortcutsForAction)(action).some((value) => (0, exports.keyboardEventMatchesShortcut)({ event, shortcut: value }));
@@ -216,8 +230,8 @@ const shortcutFromKeyboardEvent = (event) => {
216
230
  ...((is_mac_1.isMac ? event.metaKey : event.ctrlKey)
217
231
  ? { commandOrControl: true }
218
232
  : {}),
219
- ...(event.shiftKey ? { shift: true } : {}),
220
- ...(event.altKey ? { alt: true } : {}),
233
+ shift: event.shiftKey,
234
+ alt: event.altKey,
221
235
  };
222
236
  };
223
237
  exports.shortcutFromKeyboardEvent = shortcutFromKeyboardEvent;
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.CodeFrame = void 0;
4
4
  const jsx_runtime_1 = require("react/jsx-runtime");
5
+ const LazySyntaxHighlightedSource_1 = require("../../components/LazySyntaxHighlightedSource");
5
6
  const is_menu_item_1 = require("../../components/Menu/is-menu-item");
6
7
  const colors_1 = require("../../helpers/colors");
7
8
  const container = {
@@ -13,6 +14,8 @@ const frame = {
13
14
  backgroundColor: colors_1.ERROR_CODE_FRAME_BACKGROUND,
14
15
  borderRadius: 6,
15
16
  marginBottom: 20,
17
+ marginLeft: 14,
18
+ marginRight: 14,
16
19
  overflowY: 'auto',
17
20
  };
18
21
  const lineNumber = {
@@ -29,23 +32,31 @@ const lineNumber = {
29
32
  fontFamily: 'monospace',
30
33
  };
31
34
  const CodeFrame = ({ source, lineNumberWidth }) => {
32
- return (jsx_runtime_1.jsx("div", { style: frame, className: is_menu_item_1.HORIZONTAL_SCROLLBAR_CLASSNAME, children: source.map((s, j) => {
33
- return (jsx_runtime_1.jsxs("div", { style: container, children: [
34
- jsx_runtime_1.jsx("div", { style: {
35
- ...lineNumber,
36
- backgroundColor: colors_1.ERROR_CODE_FRAME_LINE_BACKGROUND,
37
- color: s.highlight ? colors_1.WHITE : colors_1.WHITE_ALPHA_40,
38
- }, children: String(s.lineNumber).padStart(lineNumberWidth, ' ') }), jsx_runtime_1.jsx("div", { style: {
39
- fontFamily: 'monospace',
40
- whiteSpace: 'pre',
41
- tabSize: 2,
42
- color: s.highlight ? colors_1.WHITE : colors_1.WHITE_ALPHA_40,
43
- backgroundColor: colors_1.TRANSPARENT,
44
- lineHeight: 1.7,
45
- paddingRight: 12,
46
- paddingLeft: 12,
47
- }, children: s.content })
48
- ] }, j));
49
- }) }));
35
+ return (jsx_runtime_1.jsx("div", { style: frame, className: is_menu_item_1.HORIZONTAL_SCROLLBAR_CLASSNAME, children: jsx_runtime_1.jsx("div", { style: { minWidth: '100%', width: 'max-content' }, children: source.map((s, j) => {
36
+ return (jsx_runtime_1.jsxs("div", { style: {
37
+ ...container,
38
+ backgroundColor: s.highlight
39
+ ? colors_1.SELECTED_BACKGROUND
40
+ : colors_1.TRANSPARENT,
41
+ }, children: [
42
+ jsx_runtime_1.jsx("div", { style: {
43
+ ...lineNumber,
44
+ backgroundColor: s.highlight
45
+ ? colors_1.TRANSPARENT
46
+ : colors_1.ERROR_CODE_FRAME_LINE_BACKGROUND,
47
+ color: s.highlight ? colors_1.WHITE : colors_1.WHITE_ALPHA_40,
48
+ }, children: String(s.lineNumber).padStart(lineNumberWidth, ' ') }), jsx_runtime_1.jsx("code", { className: "language-tsx", style: {
49
+ fontFamily: 'monospace',
50
+ fontSize: 14,
51
+ color: '#9cdcfe',
52
+ whiteSpace: 'pre',
53
+ tabSize: 2,
54
+ backgroundColor: colors_1.TRANSPARENT,
55
+ lineHeight: 1.7,
56
+ paddingRight: 12,
57
+ paddingLeft: 12,
58
+ }, children: jsx_runtime_1.jsx(LazySyntaxHighlightedSource_1.LazySyntaxHighlightedSource, { source: s.content }) })
59
+ ] }, j));
60
+ }) }) }));
50
61
  };
51
62
  exports.CodeFrame = CodeFrame;
@@ -0,0 +1,11 @@
1
+ import {
2
+ Models
3
+ } from "./index-e3zwf3e7.mjs";
4
+ import"./index-2j3d1g81.mjs";
5
+ import"./index-yfrysr5f.mjs";
6
+ import"./index-5zrb1ft4.mjs";
7
+ import"./index-k426ye99.mjs";
8
+ import"./index-rcv7qkt5.mjs";
9
+ export {
10
+ Models as default
11
+ };
@@ -0,0 +1,11 @@
1
+ import {
2
+ Models
3
+ } from "./index-wbmp5srk.mjs";
4
+ import"./index-2j3d1g81.mjs";
5
+ import"./index-yfrysr5f.mjs";
6
+ import"./index-5zrb1ft4.mjs";
7
+ import"./index-k426ye99.mjs";
8
+ import"./index-rcv7qkt5.mjs";
9
+ export {
10
+ Models as default
11
+ };
@@ -1184,7 +1184,7 @@ var init_prism_tsx = __esm(() => {
1184
1184
  })(Prism);
1185
1185
  });
1186
1186
 
1187
- // src/components/HighlightedElementSource.tsx
1187
+ // src/components/SyntaxHighlightedSource.tsx
1188
1188
  var import_prismjs = __toESM(require_prism(), 1);
1189
1189
  import React, { useMemo } from "react";
1190
1190
  import { jsx } from "react/jsx-runtime";
@@ -1221,7 +1221,7 @@ var renderTokens = (tokens) => {
1221
1221
  children: renderTokens(tokens.content)
1222
1222
  });
1223
1223
  };
1224
- var HighlightedElementSource = ({
1224
+ var SyntaxHighlightedSource = ({
1225
1225
  source
1226
1226
  }) => {
1227
1227
  const tokens = useMemo(() => import_prismjs.default.tokenize(source, import_prismjs.default.languages.tsx), [source]);
@@ -1230,7 +1230,7 @@ var HighlightedElementSource = ({
1230
1230
  children: renderTokens(tokens)
1231
1231
  });
1232
1232
  };
1233
- var HighlightedElementSource_default = HighlightedElementSource;
1233
+ var SyntaxHighlightedSource_default = SyntaxHighlightedSource;
1234
1234
  export {
1235
- HighlightedElementSource_default as default
1235
+ SyntaxHighlightedSource_default as default
1236
1236
  };
@@ -6,7 +6,7 @@ import {
6
6
  NumberSetting,
7
7
  getDefaultCaptionOutputName,
8
8
  validateCaptionOutputName
9
- } from "./index-sgtmgc4h.mjs";
9
+ } from "./index-q2epbw93.mjs";
10
10
  import {
11
11
  Button,
12
12
  Checkbox,
@@ -32,20 +32,20 @@ import {
32
32
  rightRow,
33
33
  showNotification,
34
34
  useStaticFiles
35
- } from "./index-6cvm9a65.mjs";
35
+ } from "./index-c37kme2v.mjs";
36
36
  import {
37
37
  RenderQueueContext
38
38
  } from "./index-9x6e1dq0.mjs";
39
39
  import {
40
40
  openInFileExplorer
41
- } from "./index-hy4xcgty.mjs";
41
+ } from "./index-9qtvmwtx.mjs";
42
42
  import {
43
43
  getBrowserStudioOperations
44
44
  } from "./index-cw0pnpg5.mjs";
45
45
  import {
46
46
  Models
47
- } from "./index-5qddp5h7.mjs";
48
- import"./index-1x7bsdh6.mjs";
47
+ } from "./index-e3zwf3e7.mjs";
48
+ import"./index-2j3d1g81.mjs";
49
49
  import {
50
50
  InlineAction,
51
51
  Spacing,
@@ -61,13 +61,13 @@ import {
61
61
  leftSidebar,
62
62
  optionsPanel,
63
63
  outerModalStyle
64
- } from "./index-xhe2m2qr.mjs";
64
+ } from "./index-yfrysr5f.mjs";
65
65
  import"./index-5zrb1ft4.mjs";
66
66
  import {
67
67
  BLUE_DISABLED,
68
68
  LIGHT_TEXT,
69
69
  WHITE
70
- } from "./index-jg13hf2g.mjs";
70
+ } from "./index-k426ye99.mjs";
71
71
  import"./index-rcv7qkt5.mjs";
72
72
 
73
73
  // src/components/Transcription/TranscriptionModal.tsx
@@ -3,7 +3,7 @@ import {
3
3
  } from "./index-7tt71e8n.mjs";
4
4
  import {
5
5
  RenderModalOutputName
6
- } from "./index-te66vvrp.mjs";
6
+ } from "./index-1b9skrrd.mjs";
7
7
  import {
8
8
  Button,
9
9
  Checkmark,
@@ -25,16 +25,16 @@ import {
25
25
  rightRow,
26
26
  useStaticFiles,
27
27
  validatePublicOutputName
28
- } from "./index-6cvm9a65.mjs";
28
+ } from "./index-c37kme2v.mjs";
29
29
  import {
30
30
  RenderQueueContext
31
31
  } from "./index-9x6e1dq0.mjs";
32
- import"./index-hy4xcgty.mjs";
32
+ import"./index-9qtvmwtx.mjs";
33
33
  import"./index-cw0pnpg5.mjs";
34
34
  import {
35
35
  Models
36
- } from "./index-czwvnn9g.mjs";
37
- import"./index-1x7bsdh6.mjs";
36
+ } from "./index-wbmp5srk.mjs";
37
+ import"./index-2j3d1g81.mjs";
38
38
  import {
39
39
  VERTICAL_SCROLLBAR_CLASSNAME,
40
40
  ValidationMessage,
@@ -48,11 +48,11 @@ import {
48
48
  leftSidebar,
49
49
  optionsPanel,
50
50
  outerModalStyle
51
- } from "./index-xhe2m2qr.mjs";
51
+ } from "./index-yfrysr5f.mjs";
52
52
  import"./index-5zrb1ft4.mjs";
53
53
  import {
54
54
  BLUE_DISABLED
55
- } from "./index-jg13hf2g.mjs";
55
+ } from "./index-k426ye99.mjs";
56
56
  import"./index-rcv7qkt5.mjs";
57
57
 
58
58
  // src/components/VideoMatting/VideoMattingModal.tsx
@@ -6,10 +6,10 @@ import {
6
6
  optionRow,
7
7
  rightRow,
8
8
  showNotification
9
- } from "./index-6cvm9a65.mjs";
9
+ } from "./index-c37kme2v.mjs";
10
10
  import {
11
11
  openInFileExplorer
12
- } from "./index-hy4xcgty.mjs";
12
+ } from "./index-9qtvmwtx.mjs";
13
13
  import {
14
14
  getBrowserStudioOperations
15
15
  } from "./index-cw0pnpg5.mjs";
@@ -18,10 +18,10 @@ import {
18
18
  InlineAction,
19
19
  Spacing,
20
20
  ValidationMessage
21
- } from "./index-xhe2m2qr.mjs";
21
+ } from "./index-yfrysr5f.mjs";
22
22
  import {
23
23
  WHITE
24
- } from "./index-jg13hf2g.mjs";
24
+ } from "./index-k426ye99.mjs";
25
25
 
26
26
  // src/components/RenderModal/RenderModalOutputName.tsx
27
27
  import { useCallback } from "react";
@@ -7,13 +7,13 @@ import {
7
7
  VERTICAL_SCROLLBAR_CLASSNAME,
8
8
  ValidationMessage,
9
9
  optionsPanel
10
- } from "./index-xhe2m2qr.mjs";
10
+ } from "./index-yfrysr5f.mjs";
11
11
  import {
12
12
  BLUE,
13
13
  BORDER_WHITE_ALPHA_12,
14
14
  LIGHT_TEXT,
15
15
  WHITE
16
- } from "./index-jg13hf2g.mjs";
16
+ } from "./index-k426ye99.mjs";
17
17
 
18
18
  // src/components/ModelManager.tsx
19
19
  import { formatBytes } from "@remotion/studio-shared";
@@ -7,7 +7,7 @@ import {
7
7
  import {
8
8
  CURRENT_COLOR,
9
9
  CURRENT_COLOR_LOWERCASE
10
- } from "./index-jg13hf2g.mjs";
10
+ } from "./index-k426ye99.mjs";
11
11
  import {
12
12
  __require,
13
13
  __toESM