type alias PlayerItem

Built by the cards and previews that start playback, and held in PlayerProvider's queue, which localStorage keeps across reloads. An embed plays in the provider's iframe; a file (an upload) and a stream play in MediaPlayer.

Definition

(
PlayerItemBase
& { kind: "embed"; embedUrl: string; type: string; }
)

| (
PlayerItemBase
& { kind: "file"; fileUrl: string; mimeType: string; waveformUrl?: string; }
)

| (
PlayerItemBase
& { kind: "stream"; streamUrl: string; type: string; duration?: number; trackNum?: number; resolveUrl: string; resolveIndex: number; resolvedAt: number; embedUrl?: string; }
)

Usage

import { type PlayerItem } from "src/contexts/player/PlayerContext.ts";