Interface

UseTimelineExternalClipDropOptions

Options accepted by `useTimelineExternalClipDrop`.

Usage notes

`resolveDragData` converts a browser drag event into app data. `createPlacements` turns that data into one or more timeline clip placements. The hook resolves target track, drop time, snapping, edit mode, grouped drops, and command results around those app callbacks.

Signature

Type Definition
Interface UseTimelineExternalClipDropOptions

Type parameters

NameConstraintDefaultDescription
DragDataNoneNoneApp-owned payload resolved from the native drag event.
TrackKindNonestringApp-defined track kind values used by target tracks.

Properties

NameSignatureDescription
canDropOnTrack?canDropOnTrack?: TimelineExternalClipDropGuard<DragData, TrackKind>Optional app policy for rejecting target tracks before placement creation.
collapsedTrackHeight?collapsedTrackHeight?: numberCollapsed track height in pixels.
createPlacements(context: TimelineExternalClipDropContext<DragData, TrackKind>): typeOperator | nullCreates one or more clip placements from the resolved drop context.
edgeThreshold?edgeThreshold?: numberMouse/pen edge hit threshold in pixels.
editMode?editMode?: TimelineExternalClipDropEditMode | (context: Omit<TimelineExternalClipDropContext<DragData, TrackKind>, "editMode">) => TimelineExternalClipDropEditModeEdit mode for committed drops. Defaults to overwrite.
group?group?: TimelineExternalClipDropGroupOptions | (context: TimelineExternalClipDropContext<DragData, TrackKind>) => TimelineExternalClipDropGroupOptions | null | undefinedOptional metadata applied when a drop creates a grouped multi-placement edit.
resolveDragData(event: DragEvent<HTMLElement>): DragData | nullResolves app-owned drag data from the native drag event.
rulerHeight?rulerHeight?: numberHeight of the top ruler region in pixels.
snap?snap?: booleanWhether to resolve magnetic snapping for placed clips. Multi-placement drops share one group delta. Defaults to true.
touchEdgeThreshold?touchEdgeThreshold?: numberTouch edge hit threshold in pixels.
trackHeight?trackHeight?: numberDefault expanded track height in pixels.
viewportWidth?viewportWidth?: numberOptional viewport width used for track hit testing. Defaults to the drop surface width.