JSFiddle - React, Tailwind, and code Playground

HTML

<body onload="app.init()">
    <a href="javascript:void(0);" id="anchor" style="position:absolute;top:-20px;left:-20px;z-index:0;"></a>
    <h1 style="color:white;">Test App</h1>
    <div id="player_container"></div>
</body>

JavaScript

var playerWrapper = {
		player: null,
		licenseServerURL : null,
		token : null,
		contentURL : null,
		duration: 0,
};

var playCallBack = {
	oncurrentplaytime : function(time) { 
		playerWrapper.setCurTime(time);
		alert(window.debugStatement + 'current time: ' + time);
	},
    onresolutionchanged: function(width, height) { alert(window.debugStatement + 'resolution changed to width:' + width + ' height:' + height);},
    onstreamcompleted: function() { alert(window.debugStatement + 'stream completed');},
    onerror: function(error) { 
    	console.log(JSON.stringify(error));
    	alert(window.debugStatement + 'player error: ' + error);
	}
};

var bufferingCallBack = {
	onbufferingstart: function() {
		alert(window.debugStatement + 'buffering started');
		playerWrapper.setDuration();
    },
    onbufferingprogress: function(percent) { alert(window.debugStatement + 'buffering percent: ' + percent); },
    onbufferingcomplete: function() { alert(window.debugStatement + 'buffering complete');}
};

playerWrapper.setContentURL = function(url){
	playerWrapper.contentURL = url + '|COMPONENT=HAS';
	// playerWrapper.contentURL = url + '|COMPONENT=WMDRM';
};

playerWrapper.setLicenserURL =  function(url){
	playerWrapper.licenseServerURL = url;
	playerWrapper.player.setPlayerProperty(4, playerWrapper.licenseServerURL, playerWrapper.licenseServerURL.length);
};

playerWrapper.setToken = function(token){
	playerWrapper.token = token;
	playerWrapper.player.setPlayerProperty(3, playerWrapper.token, playerWrapper.token.length);
};

playerWrapper.setCurTime = function(time){
	alert(window.debugStatement + 'current time: ' +time);
};

playerWrapper.setWindow = function() {
	playerWrapper.player.setDisplayRect({
        top: 58,
        left: 458,
        width: 472,
        height: 270
    });
},

playerWrapper.configurePlayer = function(player){
	alert(window.debugStatement + 'Setting AVPlayer ');
	playerWrapper.player = player; 
	playerWrapper.player.init({
       ...