import { BlazePlayerEvent, BlazePlayerEventOnMomentStart, BlazePlayerEventOnStoryStart, BlazePlayerEventOnVideoStart, BlazePlayerEventType } from "../interfaces";


export class CommonParser {
    static extractPlayerEvent(playerEventType: BlazePlayerEventType, eventParams: string): BlazePlayerEvent | null {
        let playerEventParamsParsed = JSON.parse(eventParams);
        switch (playerEventType) {
            case "OnMomentStart": {
                let cast = playerEventParamsParsed as BlazePlayerEventOnMomentStart
                cast.type = 'OnMomentStart'
                return cast
            }
            case "OnStoryStart": {
                let cast = playerEventParamsParsed as BlazePlayerEventOnStoryStart
                cast.type = 'OnStoryStart'
                return cast
            }
            case "OnVideoStart": {
                let cast = playerEventParamsParsed as BlazePlayerEventOnVideoStart
                cast.type = 'OnVideoStart'
                return cast
            }
        }
    }
}