Add stubbed cast.framework API implementation

This commit is contained in:
hensm
2019-03-19 16:32:09 +00:00
parent 89fc20f6a3
commit 270d661de0
20 changed files with 605 additions and 21 deletions

View File

@@ -0,0 +1,59 @@
"use strict";
import RemotePlayer from "./RemotePlayer";
import RemotePlayerChangedEvent from "./RemotePlayerChangedEvent";
type EventHandler = (event: RemotePlayerChangedEvent) => void;
export default class RemotePlayerController {
constructor (player: RemotePlayer) {
console.info("STUB :: RemotePlayerController#constructor");
}
public addEventListener (type: string, handler: EventHandler): void {
console.info("STUB :: RemotePlayerContoller#addEventListener");
}
public getFormattedTime (timeInSec: number): string {
const hours = Math.floor(timeInSec / 3600) % 24;
const minutes = Math.floor(timeInSec / 60) % 60;
const seconds = timeInSec % 60;
return [ hours, minutes, seconds ]
.map(c => c.toString().padStart(2, "0"))
.join(":");
}
public getSeekPosition (currentTime: number, duration: number) {
return (currentTime / duration) * 100;
}
public getSeekTime (currentPosition: number, duration: number) {
return (duration / 100) * currentPosition;
}
public muteOrUnmute (): void {
console.info("STUB :: RemotePlayerController#muteOrUnmute");
}
public playOrPause (): void {
console.info("STUB :: RemotePlayerController#playOrPause");
}
public removeEventListener (type: string, handler: EventHandler): void {
console.info("STUB :: RemotePlayerController#removeEventListener");
}
public seek (): void {
console.info("STUB :: RemotePlayerController#seek");
}
public setVolumeLevel (): void {
console.info("STUB :: RemotePlayerController#setVolumeLevel");
}
public stop (): void {
console.info("STUB :: RemotePlayerController#stop");
}
}