@remotion/studio-shared 4.0.500 → 4.0.502

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.
@@ -1,6 +1,6 @@
1
- import type { ComponentProp, ElementDragData } from '@remotion/drag-and-drop';
2
1
  import type { AudioCodec, ChromeMode, Codec, ColorSpace, LogLevel, PixelFormat, StillImageFormat, VideoImageFormat, X264Preset } from '@remotion/renderer';
3
2
  import type { HardwareAccelerationOption } from '@remotion/renderer/client';
3
+ import type { ComponentProp, ElementDragData } from '@remotion/studio-protocol';
4
4
  import type { _InternalTypes, CannotUpdateSequenceReason, CanUpdateEffectPropsResponse, CanUpdateSequencePropsResponseFalse, CanUpdateSequencePropsResponseTrue, CanUpdateSequencePropStatus, ExtrapolateType, InteractivitySchema, InterpolateOutputOption, JsxComponentIdentity, SequenceNodePath, SequencePropsSubscriptionKey, VideoConfigValues } from 'remotion';
5
5
  import type { RecastCodemod, VisualControlChange } from './codemods';
6
6
  import type { EffectClipboardParam, EffectClipboardPasteType, EffectClipboardSnapshot } from './effect-clipboard-data';
@@ -259,8 +259,32 @@ export type SaveSequencePropEdit = {
259
259
  schema: InteractivitySchema;
260
260
  sourceEdit: SaveSequencePropSourceEdit | null;
261
261
  };
262
+ export type CaptionPatch = {
263
+ index: number;
264
+ before: {
265
+ text: string;
266
+ startMs: number;
267
+ endMs: number;
268
+ timestampMs: number | null;
269
+ confidence: number | null;
270
+ };
271
+ changes: Partial<{
272
+ text: string;
273
+ startMs: number;
274
+ endMs: number;
275
+ timestampMs: number | null;
276
+ confidence: number | null;
277
+ }>;
278
+ };
279
+ export type SaveInlineCaptionPatchesRequest = {
280
+ fileName: string;
281
+ nodePath: SequencePropsSubscriptionKey;
282
+ schema: InteractivitySchema;
283
+ patches: CaptionPatch[];
284
+ };
262
285
  export type SaveSequencePropsRequest = {
263
286
  edits: SaveSequencePropEdit[];
287
+ captionPatches?: SaveInlineCaptionPatchesRequest[];
264
288
  addedKeyframes: AddSequenceKeyframe[] | null;
265
289
  movedKeyframes: {
266
290
  sequenceKeyframes: MoveSequenceKeyframe[];
@@ -636,11 +660,22 @@ export type InsertElementRequest = {
636
660
  element: ElementDragData['element'];
637
661
  from: number | null;
638
662
  position: InsertableCompositionElementPosition | null;
663
+ overwriteExisting: boolean;
664
+ };
665
+ export type InsertElementFileConflict = {
666
+ filePath: string;
667
+ existingSource: string;
668
+ incomingSource: string;
639
669
  };
640
670
  export type InsertElementResponse = {
641
671
  success: true;
642
672
  } | {
643
673
  success: false;
674
+ type: 'file-conflict';
675
+ conflict: InsertElementFileConflict;
676
+ } | {
677
+ success: false;
678
+ type: 'error';
644
679
  reason: string;
645
680
  stack: string;
646
681
  };
@@ -0,0 +1,33 @@
1
+ import type { CompositionComponentInfoRequest, CompositionComponentInfoResponse, DeleteStaticFileRequest, DeleteStaticFileResponse, FindInFileRequest, FindInFileResponse, InsertJsxElementRequest, InsertJsxElementResponse, RedoResponse, RenameStaticFileRequest, RenameStaticFileResponse, SaveSequencePropsRequest, SaveSequencePropsResponse, SubscribeToDefaultPropsRequest, SubscribeToDefaultPropsResponse, SubscribeToSequencePropsRequest, SubscribeToSequencePropsResponse, UndoResponse, UnsubscribeFromDefaultPropsRequest, UnsubscribeFromSequencePropsRequest } from './api-requests';
2
+ import type { EventSourceEvent } from './event-source-event';
3
+ export type WriteStaticFileRequest = {
4
+ contents: string | ArrayBuffer;
5
+ filePath: string;
6
+ };
7
+ export type BrowserStudioOperations = {
8
+ deleteStaticFile: (request: DeleteStaticFileRequest) => Promise<DeleteStaticFileResponse>;
9
+ downloadProject: () => Promise<{
10
+ data: Uint8Array;
11
+ fileName: string;
12
+ }>;
13
+ findInFile: (request: FindInFileRequest) => Promise<FindInFileResponse>;
14
+ getFileSource: (fileName: string) => Promise<string | null>;
15
+ getCompositionFile: (compositionId: string) => string | null;
16
+ getCompositionComponentInfo: (request: CompositionComponentInfoRequest) => Promise<CompositionComponentInfoResponse>;
17
+ insertSolid: (request: InsertJsxElementRequest) => Promise<InsertJsxElementResponse>;
18
+ redo: () => Promise<RedoResponse>;
19
+ renameStaticFile: (request: RenameStaticFileRequest) => Promise<RenameStaticFileResponse>;
20
+ saveSequenceProps: (request: SaveSequencePropsRequest) => Promise<SaveSequencePropsResponse>;
21
+ subscribeToDefaultProps: (request: SubscribeToDefaultPropsRequest) => Promise<SubscribeToDefaultPropsResponse>;
22
+ subscribeToSequenceProps: (request: SubscribeToSequencePropsRequest) => Promise<SubscribeToSequencePropsResponse>;
23
+ subscribeToEvent: (listener: (event: EventSourceEvent) => void) => () => void;
24
+ undo: () => Promise<UndoResponse>;
25
+ unsubscribeFromDefaultProps: (request: UnsubscribeFromDefaultPropsRequest) => Promise<undefined>;
26
+ unsubscribeFromSequenceProps: (request: UnsubscribeFromSequencePropsRequest) => Promise<undefined>;
27
+ writeStaticFile: (request: WriteStaticFileRequest) => Promise<void>;
28
+ };
29
+ declare global {
30
+ interface Window {
31
+ remotion_browserStudio?: BrowserStudioOperations;
32
+ }
33
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,3 +1,3 @@
1
- import type { CompositionDragData } from '@remotion/drag-and-drop';
1
+ import type { CompositionDragData } from '@remotion/studio-protocol';
2
2
  import type { SymbolicatedStackFrame } from './stack-types';
3
3
  export declare const compositionDragDataToSymbolicatedStack: (dragData: CompositionDragData) => SymbolicatedStackFrame | null;
@@ -1,4 +1,4 @@
1
- import type { EffectDragData } from '@remotion/drag-and-drop';
1
+ import type { EffectDragData } from '@remotion/studio-protocol';
2
2
  export type EffectCatalogItem = {
3
3
  readonly id: string;
4
4
  readonly category: string;