mirror of
https://github.com/gosticks/DefinitelyTyped.git
synced 2026-10-05 23:37:04 +00:00
Merge pull request #14388 from M0ns1gn0r/videojs-as-module
Export videojs as module and add tslint.json
This commit is contained in:
Vendored
+59
-57
@@ -1,63 +1,65 @@
|
||||
// Type definitions for Video.js
|
||||
// Type definitions for Video.js 5.16
|
||||
// Project: https://github.com/zencoder/video-js
|
||||
// Definitions by: Vincent Bortone <https://github.com/vbortone/>
|
||||
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
|
||||
|
||||
// The Video.js API allows you to interact with the video through Javascript, whether the browser is playing the video through HTML5 video, Flash, or any other supported playback technologies.
|
||||
// The Video.js API allows you to interact with the video through
|
||||
// Javascript, whether the browser is playing the video through HTML5
|
||||
// video, Flash, or any other supported playback technologies.
|
||||
|
||||
interface VideoJSOptions {
|
||||
techOrder?: string[];
|
||||
html5?: Object;
|
||||
width?: number;
|
||||
height?: number;
|
||||
defaultVolume?: number;
|
||||
children?: Object;
|
||||
controls?: boolean;
|
||||
src?: string;
|
||||
autoplay?: boolean;
|
||||
preload?: string;
|
||||
declare var videojs: videojsStatic;
|
||||
export = videojs;
|
||||
export as namespace videojs;
|
||||
|
||||
type videojsStatic =
|
||||
(id: any, options?: videojs.PlayerOptions, ready?: () => void) => videojs.Player;
|
||||
|
||||
declare namespace videojs {
|
||||
|
||||
interface PlayerOptions {
|
||||
techOrder?: string[];
|
||||
html5?: any;
|
||||
width?: number;
|
||||
height?: number;
|
||||
defaultVolume?: number;
|
||||
children?: string[];
|
||||
controls?: boolean;
|
||||
src?: string;
|
||||
autoplay?: boolean;
|
||||
preload?: string;
|
||||
}
|
||||
|
||||
interface Source {
|
||||
type: string;
|
||||
src: string;
|
||||
}
|
||||
|
||||
interface Player {
|
||||
play(): Player;
|
||||
pause(): Player;
|
||||
paused(): boolean;
|
||||
src(newSource: string | Source | Source[]): Player;
|
||||
currentTime(seconds: number): Player;
|
||||
currentTime(): number;
|
||||
duration(): number;
|
||||
buffered(): TimeRanges;
|
||||
bufferedPercent(): number;
|
||||
volume(percentAsDecimal: number): TimeRanges;
|
||||
volume(): number;
|
||||
width(): number;
|
||||
width(pixels: number): Player;
|
||||
height(): number;
|
||||
height(pixels: number): Player;
|
||||
size(width: number, height: number): Player;
|
||||
requestFullScreen(): Player;
|
||||
cancelFullScreen(): Player;
|
||||
ready(callback: () => void ): Player;
|
||||
on(eventName: string, callback: (eventObject: Event) => void ): void;
|
||||
off(eventName?: string, callback?: (eventObject: Event) => void ): void;
|
||||
dispose(): void;
|
||||
addRemoteTextTrack(options: {}): HTMLTrackElement;
|
||||
removeRemoteTextTrack(track: HTMLTrackElement): void;
|
||||
poster(val?: string): string | Player;
|
||||
playbackRate(rate?: number): number;
|
||||
}
|
||||
}
|
||||
|
||||
interface VideoJSSource {
|
||||
type: string;
|
||||
src: string;
|
||||
}
|
||||
|
||||
interface VideoJSPlayer {
|
||||
play(): VideoJSPlayer;
|
||||
pause(): VideoJSPlayer;
|
||||
paused(): boolean;
|
||||
src(newSource: string): VideoJSPlayer;
|
||||
src(newSource: VideoJSSource): VideoJSPlayer;
|
||||
src(newSource: VideoJSSource[]): VideoJSPlayer;
|
||||
currentTime(seconds: number): VideoJSPlayer;
|
||||
currentTime(): number;
|
||||
duration(): number;
|
||||
buffered(): TimeRanges;
|
||||
bufferedPercent(): number;
|
||||
volume(percentAsDecimal: number): TimeRanges;
|
||||
volume(): number;
|
||||
width(): number;
|
||||
width(pixels: number): VideoJSPlayer;
|
||||
height(): number;
|
||||
height(pixels: number): VideoJSPlayer;
|
||||
size(width: number, height: number): VideoJSPlayer;
|
||||
requestFullScreen(): VideoJSPlayer;
|
||||
cancelFullScreen(): VideoJSPlayer;
|
||||
ready(callback: () => void ): VideoJSPlayer;
|
||||
on(eventName: string, callback: (eventObject: Event) => void ): void;
|
||||
off(eventName: string, callback: () => void ): void;
|
||||
off(eventName: string): void;
|
||||
off(): void;
|
||||
dispose(): void;
|
||||
addRemoteTextTrack(options : {}) : HTMLTrackElement;
|
||||
removeRemoteTextTrack(track : HTMLTrackElement) : void;
|
||||
poster(val?: string) : string|VideoJSPlayer;
|
||||
playbackRate(rate?: number) : number;
|
||||
}
|
||||
|
||||
interface VideoJSStatic {
|
||||
(id: any, options?: VideoJSOptions, ready?: () => void): VideoJSPlayer;
|
||||
}
|
||||
|
||||
declare var videojs:VideoJSStatic;
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
{ "extends": "../tslint.json" }
|
||||
@@ -1,9 +1,10 @@
|
||||
// Tests for Video.js API
|
||||
|
||||
import * as videojs from 'videojs';
|
||||
|
||||
videojs("example_video_1").ready(function(){
|
||||
|
||||
var myPlayer:VideoJSPlayer = this;
|
||||
var myPlayer: videojs.Player = this;
|
||||
|
||||
// EXAMPLE: Start playing the video.
|
||||
myPlayer.play();
|
||||
@@ -57,17 +58,35 @@ videojs("example_video_1").ready(function(){
|
||||
|
||||
myPlayer.height(480);
|
||||
|
||||
myPlayer.size(640,480);
|
||||
myPlayer.size(640, 480);
|
||||
|
||||
myPlayer.requestFullScreen();
|
||||
|
||||
myPlayer.cancelFullScreen();
|
||||
|
||||
testEvents(myPlayer);
|
||||
});
|
||||
|
||||
var myFunc = function(){
|
||||
var myPlayer: VideoJSPlayer = this;
|
||||
function testEvents(myPlayer: videojs.Player) {
|
||||
const myFunc = function() {
|
||||
const myPlayer: videojs.Player = this;
|
||||
// Do something when the event is fired
|
||||
};
|
||||
//myPlayer.addEvent("volumechange", myFunc);
|
||||
//myPlayer.removeEvent("volumechange", myFunc);
|
||||
});
|
||||
myPlayer.on("error", myFunc);
|
||||
// Removes the specified listener only.
|
||||
myPlayer.off("error", myFunc);
|
||||
|
||||
|
||||
const myFuncWithArg = function(e: Event) {
|
||||
const myPlayer: videojs.Player = this;
|
||||
// Do something when the event is fired
|
||||
};
|
||||
myPlayer.on("volumechange", myFuncWithArg);
|
||||
// Removes all listeners for the given event type.
|
||||
myPlayer.off("volumechange");
|
||||
|
||||
|
||||
myPlayer.on("loadeddata", function() { /* Some handler. */ });
|
||||
// Removes all listeners.
|
||||
myPlayer.off();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user