UNPKG

@haxtheweb/a11y-media-player

Version:

A feature rich, highly accessible video player

1,416 lines (1,415 loc) 124 kB
{ "schemaVersion": "1.0.0", "readme": "", "modules": [ { "kind": "javascript-module", "path": "a11y-media-player.js", "declarations": [ { "kind": "class", "description": "`a11y-media-player`\nan accessible video player\n\n### Styling\n`<a11y-media-player>` provides the following basic custom properties\nfor styling:\n\n#### Basic Styling\n\nCustom property | Description | Default\n----------------|-------------|----------\n`--a11y-media-color` | default text color | `--simple-colors-default-theme-grey-11`\n`--a11y-media-bg-color` | default background color | `--simple-colors-default-theme-grey-2`\n`--a11y-media-border-color` | default border color | `--simple-colors-default-theme-grey-3`\n`--a11y-media-hover-color` | text color when hovering | `--simple-colors-default-theme-grey-12`\n`--a11y-media-hover-bg-color` | background color when hovering | `--simple-colors-default-theme-grey-2`\n`--a11y-media-accent-color` | accent color | `--simple-colors-default-theme-accent-9`\n`--a11y-media-faded-accent-color` | accent color when faded | `--simple-colors-default-theme-accent-8`\n`--a11y-media-disabled-color` | color for disabled items | `--simple-colors-default-theme-grey-5`\n`--a11y-media-transcript-color` | default text color of transcript | `--simple-colors-default-theme-grey-7`\n`--a11y-media-transcript-bg-color` | default background color of transcript | `--simple-colors-default-theme-grey-1`\n`--a11y-media-transcript-accent-color` | default accent color of transcript | `--simple-colors-default-theme-accent-8`\n`--a11y-media-transcript-faded-accent-color` | accent color of transcript, faded | `--simple-colors-default-theme-accent-10`\n`--a11y-media-transcript-cue-color` | text color of transcript cue | `--simple-colors-fixed-theme-grey-12`\n`--a11y-media-transcript-cue-bg-color` | background color of transcript cue | `--simple-colors-fixed-theme-grey-1`\n`--a11y-media-transcript-active-cue-color` | text color of active transcript cue | `--simple-colors-fixed-theme-grey-12`\n`--a11y-media-transcript-active-cue-bg-color` | background color of active transcript cue | `--simple-colors-fixed-theme-accent-1`\n`--a11y-media-transcript-focused-cue-color` | text color of focused transcript cue | `--simple-colors-fixed-theme-grey-12`\n`--a11y-media-transcript-focused-cue-bg-color` | background color of focused transcript cue | `--simple-colors-fixed-theme-grey-2`\n`--a11y-media-transcript-match-color` | text color of matched term in transcript search | `--simple-colors-fixed-theme-grey-1`\n`--a11y-media-transcript-match-bg-color` | background color of matched term in transcript search | `--simple-colors-fixed-theme-accent-10`\n`--a11y-media-transcript-match-border-color` | border color of matched term in transcript search | `--simple-colors-fixed-theme-accent-12`\n\n#### Controls\nCustom property | Description | Default \n----------------|-------------|----------\n`--a11y-media-scrollbar-width` | default width of scrollbars | `5px`\n`--a11y-media-controls-font-family` | font-family of controls\n\n#### Buttons\nCustom property | Description | Default\n----------------|-------------|----------\n`--a11y-media-button-color` | button text color | `--a11y-media-color`\n`--a11y-media-button-bg-color` | button background color | `--a11y-media-bg-color`\n`--a11y-media-button-hover-color` | button text color when hovering | `--a11y-media-accent-color`\n`--a11y-media-button-hover-bg-color` | button background color when hovering | `--a11y-media-hover-bg-color`\n`--a11y-media-button-disabled-color` | button text color when disabled | `--a11y-media-disabled-color`\n`--a11y-media-button-toggle-color` | button text color when toggled | `--a11y-media-faded-accent-color`\n\n#### Sliders\nCustom property | Description | Default\n----------------|-------------|----------\n`--simple-range-input-active-color` | slider color when active | `--a11y-media-accent-color`\n`--simple-range-input-secondary-color` | slider color for buffering | `--a11y-media-faded-accent-color`\n`--simple-range-input-pin-color` | slider pin color | `--a11y-media-bg-color`\n`--simple-range-input-pin-start-color` | slider pin color in start position | `--a11y-media-bg-color`\n`--simple-range-input-pin-end-color` | slider pin color in end position | `--a11y-media-bg-color`\n`--simple-range-input-knob-color` | slider knob color | `--a11y-media-accent-color`\n`--simple-range-input-knob-start-color` | slider knob color in start position | `--a11y-media-accent-color`\n`--simple-range-input-knob-end-color` | slider knob color in end position | `--a11y-media-bg-accent-color`\n`--simple-range-input-knob-border-color` | slider knob border color | `--a11y-media-accent-color`\n`--simple-range-input-knob-start-border-color` | slider knob border color in start position | `--a11y-media-bg-color`\n`--simple-range-input-knob-end-border-color` | slider knob border color in end position | `--a11y-media-bg-color`\n\n#### Settings Menu\nCustom property | Description | Default\n----------------|-------------|----------\n`--a11y-media-settings-menu-color` | settings menu text color | `--a11y-media-color`\n`--a11y-media-settings-menu-bg-color` | settings menu background color | `--a11y-media-bg-color`\n`--a11y-media-settings-menu-hover-color` | settings menu text color when hovering | `--a11y-media-hover-color`\n`--a11y-media-settings-menu-hover-bg-color` | settings menu background color when hovering | `--a11y-media-hover-bg-color`\n\n#### Link Sharing Toast\nCustom property | Description | Default\n----------------|-------------|----------\n`--simple-toast-color` | toast text color | `--a11y-media-color`\n`--simple-toast-background-color` | toast background color | `--a11y-media-bg-color`", "name": "A11yMediaPlayer", "members": [ { "kind": "field", "name": "tag", "static": true, "description": "Store the tag name to make it easier to obtain directly.", "readonly": true }, { "kind": "method", "name": "_getTranslation", "parameters": [ { "name": "key", "description": "The translation key to access", "type": { "text": "string" } }, { "name": "fallback", "description": "The fallback string to use if translation is not available", "type": { "text": "string" } } ], "description": "Helper method to safely access translation strings", "return": { "type": { "text": "string" } } }, { "kind": "field", "name": "anchor", "description": "gets anchors from page and uses their timecodes", "readonly": true, "return": { "type": { "text": "number" } } }, { "kind": "field", "name": "aspect", "description": "the aspect ratio of the media, or if unknown, `16/9`", "readonly": true, "return": { "type": { "text": "number" } } }, { "kind": "field", "name": "audioNoThumb", "description": "returns true if an attribute is set to a value", "readonly": true, "return": { "type": { "text": "boolean" } } }, { "kind": "field", "name": "buffered", "description": "returns buffered media", "readonly": true, "return": { "type": { "text": "number" } } }, { "kind": "field", "name": "captionCues", "description": "gets caption cues that should be visible for custom captions", "readonly": true, "return": { "type": { "text": "array" } } }, { "kind": "field", "name": "captionsPicker", "description": "gets options for captions picker", "readonly": true }, { "kind": "field", "name": "captionsTrackKey", "description": "`key` of selected textTrack based on `captionsTrack` and `cc` values", "readonly": true }, { "kind": "field", "name": "cues", "description": "returns cues array", "readonly": true }, { "kind": "field", "name": "duration", "description": "returns media duration", "readonly": true, "return": { "type": { "text": "number" } } }, { "kind": "field", "name": "flexLayout", "description": "determines if player is in flex-layout mode", "return": { "type": { "text": "boolean" } }, "readonly": true }, { "kind": "field", "name": "fullFlex", "description": "determines if parent is wide enough for full flex-layout mode", "return": { "type": { "text": "boolean" } }, "readonly": true }, { "kind": "field", "name": "fullscreenButton", "description": "whether or not the fullscreen mode is be disabled", "return": { "type": { "text": "boolean" } }, "readonly": true }, { "kind": "field", "name": "hasCaptions", "description": "whether the media has any tracks", "readonly": true, "return": { "type": { "text": "boolean" } } }, { "kind": "field", "name": "isYoutube", "description": "whether media is YouTube", "readonly": true, "return": { "type": { "text": "boolean" } } }, { "kind": "field", "name": "loadedTracks", "description": "HTML `audio` or `video` tag where textTracks, if any, can be found", "readonly": true, "return": { "type": { "text": "object" } } }, { "kind": "field", "name": "media", "description": "media used for playback", "readonly": true }, { "kind": "field", "name": "mediaCaption", "description": "gets media caption", "readonly": true, "return": { "type": { "text": "string" } } }, { "kind": "field", "name": "mediaEnd", "description": "gets media media time if set", "readonly": true, "return": { "type": { "text": "number" } } }, { "kind": "field", "name": "mediaMaxWidth", "description": "`style` for `#player-and-controls`", "readonly": true, "return": { "type": { "text": "string" } } }, { "kind": "field", "name": "mediaSeekable", "description": "whether media has a seekable time range", "readonly": true, "return": { "type": { "text": "boolean" } } }, { "kind": "field", "name": "mediaStart", "description": "gets media start time", "readonly": true, "return": { "type": { "text": "number" } } }, { "kind": "field", "name": "playing", "description": "whether media is currently playing", "readonly": true, "return": { "type": { "text": "boolean" } } }, { "kind": "field", "name": "playerStyle", "description": "`style` for `#player`", "readonly": true, "return": { "type": { "text": "string" } } }, { "kind": "field", "name": "poster", "description": "`poster` image for video", "readonly": true, "return": { "type": { "text": "string" } } }, { "kind": "field", "name": "printCaption", "description": "gets print caption", "readonly": true, "return": { "type": { "text": "string" } } }, { "kind": "field", "name": "currentTime", "privacy": "public", "type": { "text": "number" }, "description": "returns the current playback progress or slider position", "readonly": true, "return": { "type": { "text": "number" } }, "attribute": "currentTime" }, { "kind": "field", "name": "shareLink", "description": "gets the link for sharing the video at a specific timecode", "readonly": true, "return": { "type": { "text": "string" } } }, { "kind": "field", "name": "showCustomCaptions", "description": "Show custom CC (for audio and YouTube)?", "return": { "type": { "text": "boolean" } }, "readonly": true }, { "kind": "field", "name": "status", "description": "gets playback status text", "readonly": true, "return": { "type": { "text": "string" } } }, { "kind": "field", "name": "stickyMode", "description": "Show custom CC (for audio and YouTube)?", "return": { "type": { "text": "boolean" } }, "readonly": true }, { "kind": "field", "name": "initialTimecode", "description": "gets initial timecode parameter", "readonly": true, "return": { "type": { "text": "number" } } }, { "kind": "field", "name": "transcriptCues", "description": "gets transcript cues that should be visible", "readonly": true, "return": { "type": { "text": "array" } } }, { "kind": "field", "name": "transcriptPicker", "description": "gets options for transcript picker", "readonly": true }, { "kind": "field", "name": "transcriptTrackKey", "description": "`key` of selected textTrack based on `transcriptTrack` and `hide-transcript` values", "readonly": true }, { "kind": "field", "name": "videoData", "readonly": true }, { "kind": "field", "name": "videoId", "readonly": true }, { "kind": "field", "name": "youtube", "description": "youtube embed element", "readonly": true, "return": { "type": { "text": "object" } } }, { "kind": "method", "name": "_setAttribute", "parameters": [ { "name": "attr" }, { "name": "val" } ] }, { "kind": "method", "name": "_captionsChanged", "description": "updates track mode & `__captionsOption` when `captionsTrack` or `cc` changes" }, { "kind": "method", "name": "_captionsOptionChanged", "description": "updates track mode & `captionsTrack` when `__captionsOption` changes" }, { "kind": "method", "name": "_handleMuteChanged", "description": "handles mute change" }, { "kind": "method", "name": "download", "description": "gets download data for the active transcript", "parameters": [ { "description": "title of the media", "name": "the", "type": { "text": "string" } } ] }, { "kind": "method", "name": "goToYoutube", "description": "takes the user to YouTube" }, { "kind": "method", "name": "print", "description": "prints the active transcript", "parameters": [ { "description": "title of the media", "name": "the", "type": { "text": "string" } } ] }, { "kind": "method", "name": "play", "description": "plays the media" }, { "kind": "method", "name": "pause", "description": "pauses the media" }, { "kind": "method", "name": "stop", "description": "stops the media" }, { "kind": "method", "name": "restart", "description": "restarts the media" }, { "kind": "method", "name": "rewind", "parameters": [ { "name": "amt" }, { "description": "elepsed time, in seconds", "name": "the", "type": { "text": "float" } } ], "description": "seeks media backward at a set increment" }, { "kind": "method", "name": "forward", "parameters": [ { "name": "amt" }, { "description": "elepsed time, in seconds", "name": "the", "type": { "text": "float" } } ], "description": "seeks media forward at a set increment" }, { "kind": "method", "name": "seek", "parameters": [ { "name": "time", "default": "0" }, { "description": "time, in seconds, to seek", "name": "the", "type": { "text": "float" } } ], "description": "seeks to a specific time" }, { "kind": "method", "name": "selectCaptionByKeyEvent", "parameters": [ { "name": "e" } ], "description": "Event version for Lit version requirements" }, { "kind": "method", "name": "selectCaptionByKey", "parameters": [ { "name": "id" } ], "description": "selects `captionsTrack` by key and adjusts `cc` accordingly" }, { "kind": "method", "name": "selectTranscriptByKeyEvent", "parameters": [ { "name": "e" } ], "description": "Event version for Lit version requirements" }, { "kind": "method", "name": "selectTranscriptByKey", "parameters": [ { "name": "id" } ], "description": "selects `transcriptTrack` by key and adjusts `hideTranscript` accordingly" }, { "kind": "method", "name": "getloadedTracks", "description": "media tag where sources and tracks can be found", "readonly": true }, { "kind": "method", "name": "_getTrack", "parameters": [ { "name": "track", "description": "text track", "type": { "text": "track" } } ], "description": "selects a specific transcript track" }, { "kind": "method", "name": "selectTranscript", "parameters": [ { "name": "track", "description": "text track", "type": { "text": "track" } } ], "description": "selects a specific track as transcript" }, { "kind": "method", "name": "setPlaybackRate", "parameters": [ { "name": "value" }, { "description": "playback rate, where 1 = 100%", "name": "the", "type": { "text": "float" } } ], "description": "set speed/playback rate of media" }, { "kind": "method", "name": "setVolume", "parameters": [ { "name": "value", "default": "70" }, { "description": "volume level from 0-100", "name": "the", "type": { "text": "integer" } } ], "description": "set volume of media" }, { "kind": "method", "name": "toggleCC", "parameters": [ { "name": "mode" }, { "description": "CC on? `true` is on, `false` is off, and `null` toggles based on current state.", "name": "Toggle", "type": { "text": "boolean" } } ], "description": "toggles captions" }, { "kind": "field", "name": "fullscreenTarget", "description": "element to make fullscreen, can be overidden", "readonly": true }, { "kind": "method", "name": "toggleFullscreen", "parameters": [ { "name": "mode" }, { "description": "fullscreen on? `true` is on, `false` is off, and `null` toggles based on current state.", "name": "Toggle", "type": { "text": "boolean" } } ], "description": "toggles fullscreen" }, { "kind": "method", "name": "toggleLoop", "parameters": [ { "name": "mode" }, { "description": "looping on? `true` is on, `false` is off, and `null` toggles based on current state.", "name": "Toggle", "type": { "text": "boolean" } } ], "description": "toggles looping" }, { "kind": "method", "name": "togglePlay", "description": "toggles play", "parameters": [ { "description": "play/pause? `true` is on, `false` is off, and `null` toggles based on current state.", "name": "Toggle", "type": { "text": "boolean" } } ] }, { "kind": "method", "name": "toggleMute", "parameters": [ { "name": "mode" }, { "description": "mute on? `true` is on, `false` is off, and `null` toggles based on current state.", "name": "Toggle", "type": { "text": "boolean" } } ], "description": "toggles mute" }, { "kind": "method", "name": "toggleSettings", "parameters": [ { "name": "mode" } ] }, { "kind": "method", "name": "_toggleAudioDescription", "parameters": [ { "name": "e" } ], "description": "Handle audio description toggle from settings checkbox" }, { "kind": "method", "name": "_handleAudioDescriptionButtonClick", "description": "Handle audio description toggle from main controls button" }, { "kind": "method", "name": "toggleSticky", "parameters": [ { "name": "mode" }, { "description": "sticky mode on? `true` is on, `false` is off, and `null` toggles based on current state.", "name": "Toggle", "type": { "text": "boolean" } } ], "description": "toggles sticky attribute" }, { "kind": "method", "name": "toggleTranscript", "parameters": [ { "name": "mode" }, { "description": "transcript on? `true` is on, `false` is off, and `null` toggles based on current state.", "name": "Toggle", "type": { "text": "boolean" } } ], "description": "toggles transcript" }, { "kind": "method", "name": "_addSourcesAndTracks", "parameters": [ { "name": "media" }, { "description": "audio or video object", "name": "HTML", "type": { "text": "object" } } ], "description": "loads a track's cue metadata" }, { "kind": "method", "name": "_handleCloseLink", "description": "handles closing the share link toast" }, { "kind": "method", "name": "_handleCopyLink", "description": "handles copying the share link" }, { "kind": "method", "name": "_handleCueSeek", "parameters": [ { "name": "cue" }, { "description": "seek event", "name": "e", "type": { "text": "event" } } ], "description": "handles the seek function when a transcript cue is activated" }, { "kind": "method", "name": "_handleMediaLoaded", "parameters": [ { "name": "e" } ], "description": "handles media metadata when media is loaded" }, { "kind": "method", "name": "_handleSearchAdded", "parameters": [ { "name": "e", "description": "searchbar event", "type": { "text": "event" } } ], "description": "sets search the simple-search element" }, { "kind": "method", "name": "_handleSpeedChanged", "parameters": [ { "name": "e", "description": "slider event", "type": { "text": "event" } } ], "description": "handles speed slider change thhat sets playback rate" }, { "kind": "method", "name": "_handleSliderDragging", "parameters": [ { "name": "e", "description": "slider start event", "type": { "text": "event" } } ], "description": "handles duration slider dragging with a mouse" }, { "kind": "method", "name": "_handleSliderChanged", "parameters": [ { "name": "e", "description": "slider start event", "type": { "text": "event" } } ], "description": "handles duration slider dragging with a mouse" }, { "kind": "method", "name": "_handleTimeUpdate", "description": "handles time updates" }, { "kind": "method", "name": "_getTrackId", "parameters": [ { "name": "track", "description": "textTrack", "type": { "text": "object" } } ], "description": "gets `key` of given track", "return": { "type": { "text": "number" } } }, { "kind": "method", "name": "_handleVolumeChanged", "parameters": [ { "name": "e", "description": "volume change event", "type": { "text": "event" } } ], "description": "handles volume slider change" }, { "kind": "method", "name": "_onAddTrack", "parameters": [ { "name": "track" }, { "name": "textTrack", "type": { "text": "object" } } ], "description": "adds a track's cues to cues array" }, { "kind": "method", "name": "_onRemoveTrack", "parameters": [ { "name": "track" }, { "name": "textTrack", "type": { "text": "object" } } ], "description": "removes a track's cues from cues array" }, { "kind": "method", "name": "_setActiveCue", "parameters": [ { "name": "e", "description": "onenter event", "type": { "text": "event" } } ], "description": "on a cue.onenter event scrolls the first active cue to position" }, { "kind": "method", "name": "_transcriptScroll", "parameters": [ { "name": "e", "description": "scroll event", "type": { "text": "event" } } ], "description": "handles transcript scroll toggle" }, { "kind": "method", "name": "_getHHMMSS", "parameters": [ { "name": "val" }, { "name": "max" }, { "description": "duration, in seconds", "name": "the", "type": { "text": "float" } } ], "description": "converts time in millesconds to HH:MM:SS", "return": { "type": { "text": "string" } } }, { "kind": "method", "name": "_onSettingsKeydown", "parameters": [ { "name": "event" } ], "description": "Handle ESC key to close settings when open" }, { "kind": "method", "name": "_onSettingsDocumentClick", "parameters": [ { "name": "event" } ], "description": "Handle click-away to close settings when user clicks outside" }, { "kind": "method", "name": "_getSeconds", "parameters": [ { "name": "time", "default": "0", "type": { "text": "string" } } ], "description": "returns time in seconds of a string, such as 00:00:00.0, 0h0m0.0s, or 0hh0mm0.0ss", "return": { "type": { "text": "float" } } }, { "kind": "field", "name": "__playerReady", "privacy": "public", "type": { "text": "boolean" }, "default": "false", "attribute": "__playerReady" }, { "kind": "field", "name": "audioOnly", "privacy": "public", "type": { "text": "boolean" }, "description": "Is this an audio file?", "default": "false", "attribute": "audio-only", "reflects": true }, { "kind": "field", "name": "autoplay", "privacy": "public", "type": { "text": "boolean" }, "description": "autoplay is an option,\nbut generally not recommended for a11y", "default": "false", "attribute": "autoplay" }, { "kind": "field", "name": "allowConcurrent", "privacy": "public", "type": { "text": "boolean" }, "description": "Allow this media to play concurrently with other a11y-media-players?\nDefault is to pause this a11y-media-player when other a11y-media-player starts playing.", "default": "false", "attribute": "allow-concurrent" }, { "kind": "field", "name": "cc", "privacy": "public", "type": { "text": "boolean" }, "description": "show closed captions", "default": "false", "attribute": "cc" }, { "kind": "field", "name": "darkTranscript", "privacy": "public", "type": { "text": "boolean" }, "description": "Use dark theme on transcript? Default is false, even when player is dark.", "default": "false", "attribute": "dark-transcript" }, { "kind": "field", "name": "disableFullscreen", "privacy": "public", "type": { "text": "boolean" }, "description": "disable fullscreen option", "default": "false", "attribute": "disable-fullscreen" }, { "kind": "field", "name": "disableInteractive", "privacy": "public", "type": { "text": "boolean" }, "description": "disable interactive mode that makes the transcript clickable", "default": "false", "attribute": "disable-interactive" }, { "kind": "field", "name": "disablePrintButton", "privacy": "public", "type": { "text": "boolean" }, "description": "disable transcript print button", "default": "false", "attribute": "disable-print-button" }, { "kind": "field", "name": "disableSearch", "privacy": "public", "type": { "text": "boolean" }, "description": "disable transcript search feature", "default": "false", "attribute": "disable-search" }, { "kind": "field", "name": "disableScroll", "privacy": "public", "type": { "text": "boolean" }, "description": "disable autoscrolling as transcript plays", "default": "false", "attribute": "disable-scroll" }, { "kind": "field", "name": "disableSeek", "privacy": "public", "type": { "text": "boolean" }, "description": "disables seeking", "default": "false", "attribute": "disable-seek" }, { "kind": "field", "name": "hideElapsedTime", "privacy": "public", "type": { "text": "boolean" }, "description": "Hide elapsed time?", "default": "false", "attribute": "hide-elapsed-time" }, { "kind": "field", "name": "hideTimestamps", "privacy": "public", "type": { "text": "boolean" }, "description": "show cue's start and end time", "default": "false", "attribute": "hide-timestamps" }, { "kind": "field", "name": "hideTranscript", "privacy": "public", "type": { "text": "boolean" }, "description": "initially hide the transcript?", "default": "false", "attribute": "hide-transcript", "reflects": true }, { "kind": "field", "name": "id", "privacy": "public", "type": { "text": "null" }, "description": "initially hide the transcript?", "default": "null", "attribute": "id", "reflects": true }, { "kind": "field", "name": "lang", "privacy": "public", "type": { "text": "string" }, "description": "Language", "default": "\"en\"", "attribute": "lang" }, { "kind": "field", "name": "learningMode", "privacy": "public", "type": { "text": "boolean" }, "description": "Learning mode", "default": "false", "attribute": "learning-mode" }, { "kind": "field", "name": "linkable", "privacy": "public", "type": { "text": "boolean" }, "description": "has link button", "default": "false", "attribute": "linkable" }, { "kind": "field", "name": "t", "type": { "text": "object" }, "default": "{ ...this.t, audioLabel: \"Audio\", audioNotSupported: \"HTML5 video is not supported.\", autoScrollLabel: \"Scroll Transcript\", captionsLabel: \"Closed Captions\", captionsOff: \"Off\", downloadLabel: \"Download Transcript\", forwardLabel: \"Forward\", fullscreenLabel: \"Fullscreen\", copyLinkLabel: \"Copy Media Link\", closeLinkLabel: \"Close\", loadingLabel: \"Loading...\", loopLabel: \"Loop Playback\", muteLabel: \"Mute\", nextResultLabel: \"Next\", pauseLabel: \"Pause\", playLabel: \"Play\", prevResultLabel: \"Previous\", printLabel: \"Print Transcript\", restartLabel: \"Restart\", rewindLabel: \"Backward\", searchLabel: \"Search the transcript.\", seekSliderLabel: \"Seek Slider\", settingsLabel: \"Settings\", speedLabel: \"Speed %\", transcriptLabel: \"Transcript\", transcriptLoading: \"Loading the transcript(s)...\", transcriptOff: \"Off\", transcriptSkip: \"Skip to the transcript.\", unmuteLabel: \"Unmute\", videoLabel: \"Video\", videoNotSupported: \"HTML5 video is not supported.\", volumeLabel: \"Volume\", youTubeLoadingLabel: \"Loading...\", youTubeStartLoading: \"Press play.\", youTubeTranscriptLabel: \"Transcript will load once media plays.\", audioDescriptionLabel: \"Audio Description\", }" }, { "kind": "field", "name": "loop", "privacy": "public", "type": { "text": "boolean" }, "description": "Loop the video?", "default": "false", "attribute": "loop" }, { "kind": "field", "name": "audioDescriptionSource", "privacy": "public", "type": { "text": "string" }, "description": "URL to audio description track (MP3 file)", "default": "\"\"", "attribute": "audio-description-source", "reflects": true }, { "kind": "field", "name": "audioDescriptionEnabled", "privacy": "public", "type": { "text": "boolean" }, "description": "Whether audio description is currently enabled", "default": "false", "attribute": "audio-description-enabled", "reflects": true }, { "kind": "field", "name": "mediaTitle", "privacy": "public", "type": { "text": "string" }, "description": "optional title of media (shows when printed)", "default": "\"\"", "attribute": "media-title" }, { "kind": "field", "name": "mediaLang", "privacy": "public", "type": { "text": "string" }, "description": "Dash.js manifest source?\n/\n\"manifest\": {\n\"attribute\": \"manifest\",\n\"type\": String\n},\n/**\nthe language of the media (if different from user interface language)", "default": "\"en\"", "attribute": "media-lang" }, { "kind": "field", "name": "muted", "privacy": "public", "type": { "text": "boolean" }, "description": "Is audio muted?", "default": "false", "attribute": "muted" }, { "kind": "field", "name": "hideYoutubeLink", "privacy": "public", "type": { "text": "boolean" }, "description": "Open on YouTube button", "default": "false", "attribute": "hide-youtube-link" }, { "kind": "field", "name": "preload", "privacy": "public", "type": { "text": "string" }, "description": "Preload `none`, `metadata`, or `auto`.", "default": "\"metadata\"", "attribute": "preload", "reflects": true }, { "kind": "field", "name": "playbackRate", "privacy": "public", "type": { "text": "number" }, "description": "Playback rate where `1` is normal speed, `0.`5 is half-speed, and `2` is double speed", "default": "1", "attribute": "playback-rate" }, { "kind": "field", "name": "search", "privacy": "public", "type": { "text": "null" }, "description": "the search tool for the transcript", "default": "null", "attribute": "search" }, { "kind": "field", "name": "standAlone", "privacy": "public", "type": { "text": "boolean" }, "description": "Is stand-alone player (without transcript)?",