{"version":3,"sources":["webpack:///../WCC.UI/App/components/videoOverlay/stage.html?0603","webpack:///../WCC.UI/App/components/videoOverlay/stage.scss?f6fe","webpack:///../WCC.UI/App/components/videoOverlay/stage.ts","webpack:///../WCC.UI/App/libraries/videojs.js","webpack:///../WCC.UI/App/webpack/runtime/htmlExposer.js","webpack:///../WCC.UI/node_modules/class.extend/lib/class.js","webpack:///../WCC.UI/App/components/videoOverlay/stage.scss","webpack:///../WCC.UI/node_modules/global/document.js","webpack:///../WCC.UI/node_modules/global/window.js","webpack:///../WCC.UI/App/components/videoOverlay/stage.html","webpack:///../WCC.UI/node_modules/is-function/index.js","webpack:///../WCC.UI/node_modules/keycode/index.js","webpack:///../WCC.UI/node_modules/mux.js/lib/tools/parse-sidx.js","webpack:///../WCC.UI/node_modules/mux.js/lib/utils/clock.js","webpack:///../WCC.UI/node_modules/mux.js/lib/utils/numbers.js","webpack:///../WCC.UI/node_modules/safe-json-parse/tuple.js"],"names":["content","expose","__esModule","default","api","module","i","options","exports","locals","VideoOverlayStageVM","constructor","video","info","effects","videoNode","ko","observable","lqFile","hqFile","hqLink","pluck","f","link","thumbnailURL","thumbnail","th","videoWidth","videoHeight","player","ratio","pureComputed","playerSize","currentRatio","targetWidth","device","width","maxHeight","height","targetHeight","playerWidth","p","playerHeight","this","isReady","register","node","undefined","instance","videojs","controls","preload","playbackRates","controlBar","children","on","loadingSpinner","show","hide","applyBindingsToNode","el_","toPx","withEffect","poster","sources","Array","push","src","label","type","element","__decorate","injectable","__param","inject","wccModules","componentConfig","componentInfo","registerQualitySelector","system","SystemHelpers","html","getTemplatesAndResources","forEach","document","head","appendChild","initializing","fnTest","test","xyz","Class","extend","prop","_super","prototype","name","fn","tmp","ret","apply","arguments","init","callee","___CSS_LOADER_API_IMPORT___","doccy","window","minDoc","topLevel","win","global","self","string","toString","call","setTimeout","alert","confirm","prompt","Object","keyCode","searchInput","hasKeyCode","which","charCode","names","foundNamedKey","search","String","codes","toLowerCase","aliases","length","charCodeAt","isEventKey","event","nameOrCode","code","fromCharCode","title","alias","getUint64","data","view","DataView","buffer","byteOffset","byteLength","result","version","flags","Uint8Array","subarray","references","referenceId","getUint32","timescale","earliestPresentationTime","firstOffset","referenceCount","getUint16","referenceType","referencedSize","subsegmentDuration","startsWithSap","sapType","sapDeltaTime","secondsToVideoTs","secondsToAudioTs","videoTsToSeconds","audioTsToSeconds","audioTsToVideoTs","videoTsToAudioTs","metadataTsToSeconds","seconds","sampleRate","timestamp","timelineStartPts","keepOriginalTimestamps","ONE_SECOND_IN_TS","MAX_UINT32","Math","pow","uint8","value","dv","getBigUint64","Number","MAX_SAFE_INTEGER","obj","reviver","json","error","JSON","parse","err"],"mappings":"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","file":"134.3f7e22c1107a45f55e5b.js","sourcesContent":["define([\n \"!!../../../node_modules/html-loader/dist/cjs.js??ref--26-1!./stage.html\", \n \"!../../webpack/runtime/htmlExposer.js\"], function (content, expose) {\n content = content.__esModule ? content.default : content;\n expose(content);\n return content;\n });","var api = require(\"!../../../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\");\n var content = require(\"!!../../../node_modules/css-loader/dist/cjs.js!../../../node_modules/sass-loader/dist/cjs.js!./stage.scss\");\n\n content = content.__esModule ? content.default : content;\n\n if (typeof content === 'string') {\n content = [[module.id, content, '']];\n }\n\nvar options = {};\n\noptions.insert = \"head\";\noptions.singleton = false;\n\nvar update = api(content, options);\n\n\n\nmodule.exports = content.locals || {};","import { wccModules } from 'enums/wccModules';\r\nimport device from 'managers/device';\r\nimport { inject, injectable } from 'inversify';\r\nimport { Subscribable } from 'knockout';\r\nimport videojs from 'libraries/videojs';\r\nimport { withEffect } from 'mixins/withEffect';\r\nimport { EffectsContainer } from 'mixins/withEffects';\r\nimport WCCVideo from 'models/attachments/video';\r\nimport { VideoJsPlayer } from 'video.js';\r\nimport './stage.html';\r\nimport './stage.scss';\r\n\r\nconst maxWidth = 1280;\r\nconst viewSizeX = 0.95;\r\nconst viewSizeY = 0.95;\r\nconst defaultRatio = 1.77;\r\n\r\n@injectable()\r\nexport default class VideoOverlayStageVM {\r\n videoNode = ko.observable();\r\n\r\n isReady: Subscribable\r\n\r\n constructor(\r\n @inject(wccModules.componentConfig) video: WCCVideo,\r\n @inject(wccModules.componentInfo) info: ko.components.ComponentInfo,\r\n @inject(wccModules.effects) effects: EffectsContainer\r\n ) {\r\n const lqFile = video.lqFile;\r\n const hqFile = video.hqFile;\r\n\r\n const lqLink = lqFile.pluck(f => f.link);\r\n const hqLink = hqFile.pluck(f => f.link);\r\n\r\n const thumbnail = video.thumbnail;\r\n const thumbnailURL = thumbnail.pluck(th => th.link);\r\n\r\n const videoWidth = ko.observable(0);\r\n const videoHeight = ko.observable(0);\r\n\r\n const player = ko.observable();\r\n\r\n const ratio = ko.pureComputed(() => {\r\n if (videoWidth() > 0 && videoHeight() > 0)\r\n return videoWidth() / videoHeight();\r\n\r\n return defaultRatio;\r\n });\r\n\r\n const playerSize = ko.pureComputed(() => {\r\n var currentRatio = ratio();\r\n\r\n var targetWidth = device.width() * viewSizeX,\r\n maxHeight = device.height() * viewSizeY;\r\n\r\n if (targetWidth > maxWidth)\r\n targetWidth = maxWidth;\r\n\r\n var targetHeight = targetWidth / currentRatio;\r\n\r\n if (targetHeight > maxHeight) {\r\n targetHeight = maxHeight;\r\n targetWidth = targetHeight * currentRatio;\r\n }\r\n\r\n return { width: targetWidth, height: targetHeight };\r\n });\r\n\r\n const playerWidth = playerSize.pluck(p => p.width);\r\n const playerHeight = playerSize.pluck(p => p.height);\r\n\r\n this.isReady = ko.pureComputed(() => videoWidth() > 0 && videoHeight() > 0);\r\n\r\n effects.register(node => {\r\n if (node != undefined) {\r\n const instance = videojs(node, {\r\n controls: true,\r\n preload: 'auto',\r\n playbackRates: [0.5, 1, 1.5, 2],\r\n controlBar: {\r\n children: [\r\n 'playToggle',\r\n 'volumePanel',\r\n 'progressControl',\r\n 'playbackRateMenuButton',\r\n 'pictureInPictureToggle',\r\n 'qualitySelector',\r\n 'fullscreenToggle'\r\n ]\r\n }\r\n });\r\n\r\n instance.on('loadedmetadata', () => {\r\n videoWidth(instance.videoWidth());\r\n videoHeight(instance.videoHeight());\r\n\r\n instance.on('waiting', () => instance.loadingSpinner.show());\r\n instance.on('play', () => instance.loadingSpinner.hide());\r\n });\r\n\r\n ko.applyBindingsToNode((instance).el_, {\r\n 'css': {\r\n 'video-overlay-stage__player': true\r\n },\r\n\r\n 'style': {\r\n 'width': playerWidth.toPx(true),\r\n 'height': playerHeight.toPx(true)\r\n }\r\n });\r\n\r\n player(instance);\r\n\r\n return [\r\n withEffect((thumbnailURL) => {\r\n if (thumbnailURL != undefined)\r\n instance.poster(thumbnailURL);\r\n }, [thumbnailURL], false),\r\n\r\n withEffect((hqLink) => {\r\n const sources = new Array();\r\n\r\n if (hqLink != undefined) {\r\n sources.push({\r\n src: hqLink,\r\n label: 'HD',\r\n type: 'video/mp4'\r\n });\r\n }\r\n\r\n instance.src(sources);\r\n }, [hqLink], false)\r\n ]\r\n } else {\r\n player(undefined);\r\n }\r\n }, [this.videoNode]); \r\n\r\n ko.applyBindingsToNode(info.element, {\r\n 'css': {\r\n 'video-overlay-stage': true\r\n }\r\n });\r\n }\r\n}","import videojs from 'video.js';\r\nimport 'video.js/dist/video-js.css';\r\n\r\nimport registerQualitySelector from '@silvermine/videojs-quality-selector';\r\nimport '@silvermine/videojs-quality-selector/dist/css/quality-selector.css';\r\n\r\nregisterQualitySelector(videojs);\r\n\r\nexport default videojs;","define(function () {\r\n const system = require('helpers/system').SystemHelpers;\r\n\r\n return function (html) {\r\n system.getTemplatesAndResources(html)\r\n .forEach(function (node) { document.head.appendChild(node) });\r\n }\r\n});","(function(){\n var initializing = false, fnTest = /xyz/.test(function(){xyz;}) ? /\\b_super\\b/ : /.*/;\n \n // The base Class implementation (does nothing)\n this.Class = function(){};\n \n // Create a new Class that inherits from this class\n Class.extend = function(prop) {\n var _super = this.prototype;\n \n // Instantiate a base class (but only create the instance,\n // don't run the init constructor)\n initializing = true;\n var prototype = new this();\n initializing = false;\n \n // Copy the properties over onto the new prototype\n for (var name in prop) {\n // Check if we're overwriting an existing function\n prototype[name] = typeof prop[name] == \"function\" &&\n typeof _super[name] == \"function\" && fnTest.test(prop[name]) ?\n (function(name, fn){\n return function() {\n var tmp = this._super;\n \n // Add a new ._super() method that is the same method\n // but on the super-class\n this._super = _super[name];\n \n // The method only need to be bound temporarily, so we\n // remove it when we're done executing\n var ret = fn.apply(this, arguments); \n this._super = tmp;\n \n return ret;\n };\n })(name, prop[name]) :\n prop[name];\n }\n \n // The dummy class constructor\n function Class() {\n // All construction is actually done in the init method\n if ( !initializing && this.init )\n this.init.apply(this, arguments);\n }\n \n // Populate our constructed prototype object\n Class.prototype = prototype;\n \n // Enforce the constructor to be what we expect\n Class.prototype.constructor = Class;\n \n // And make this class extendable\n Class.extend = arguments.callee;\n \n return Class;\n };\n\n //I only added this line\n module.exports = Class;\n})();\n","// Imports\nvar ___CSS_LOADER_API_IMPORT___ = require(\"../../../node_modules/css-loader/dist/runtime/api.js\");\nexports = ___CSS_LOADER_API_IMPORT___(false);\n// Module\nexports.push([module.id, \".video-overlay-stage{display:block;visibility:visible !important}.video-overlay-stage__player .vjs-tech:focus{outline:none}.video-overlay-stage__player .vjs-control:focus{outline:none}.video-overlay-stage__player .vjs-resolution-button-label{display:none}\", \"\"]);\n// Exports\nmodule.exports = exports;\n","var topLevel = typeof global !== 'undefined' ? global :\n typeof window !== 'undefined' ? window : {}\nvar minDoc = require('min-document');\n\nvar doccy;\n\nif (typeof document !== 'undefined') {\n doccy = document;\n} else {\n doccy = topLevel['__GLOBAL_DOCUMENT_CACHE@4'];\n\n if (!doccy) {\n doccy = topLevel['__GLOBAL_DOCUMENT_CACHE@4'] = minDoc;\n }\n}\n\nmodule.exports = doccy;\n","var win;\n\nif (typeof window !== \"undefined\") {\n win = window;\n} else if (typeof global !== \"undefined\") {\n win = global;\n} else if (typeof self !== \"undefined\"){\n win = self;\n} else {\n win = {};\n}\n\nmodule.exports = win;\n","// Module\nvar code = \"\";\n// Exports\nmodule.exports = code;","module.exports = isFunction\n\nvar toString = Object.prototype.toString\n\nfunction isFunction (fn) {\n if (!fn) {\n return false\n }\n var string = toString.call(fn)\n return string === '[object Function]' ||\n (typeof fn === 'function' && string !== '[object RegExp]') ||\n (typeof window !== 'undefined' &&\n // IE8 and below\n (fn === window.setTimeout ||\n fn === window.alert ||\n fn === window.confirm ||\n fn === window.prompt))\n};\n","// Source: http://jsfiddle.net/vWx8V/\n// http://stackoverflow.com/questions/5603195/full-list-of-javascript-keycodes\n\n/**\n * Conenience method returns corresponding value for given keyName or keyCode.\n *\n * @param {Mixed} keyCode {Number} or keyName {String}\n * @return {Mixed}\n * @api public\n */\n\nfunction keyCode(searchInput) {\n // Keyboard Events\n if (searchInput && 'object' === typeof searchInput) {\n var hasKeyCode = searchInput.which || searchInput.keyCode || searchInput.charCode\n if (hasKeyCode) searchInput = hasKeyCode\n }\n\n // Numbers\n if ('number' === typeof searchInput) return names[searchInput]\n\n // Everything else (cast to string)\n var search = String(searchInput)\n\n // check codes\n var foundNamedKey = codes[search.toLowerCase()]\n if (foundNamedKey) return foundNamedKey\n\n // check aliases\n var foundNamedKey = aliases[search.toLowerCase()]\n if (foundNamedKey) return foundNamedKey\n\n // weird character?\n if (search.length === 1) return search.charCodeAt(0)\n\n return undefined\n}\n\n/**\n * Compares a keyboard event with a given keyCode or keyName.\n *\n * @param {Event} event Keyboard event that should be tested\n * @param {Mixed} keyCode {Number} or keyName {String}\n * @return {Boolean}\n * @api public\n */\nkeyCode.isEventKey = function isEventKey(event, nameOrCode) {\n if (event && 'object' === typeof event) {\n var keyCode = event.which || event.keyCode || event.charCode\n if (keyCode === null || keyCode === undefined) { return false; }\n if (typeof nameOrCode === 'string') {\n // check codes\n var foundNamedKey = codes[nameOrCode.toLowerCase()]\n if (foundNamedKey) { return foundNamedKey === keyCode; }\n \n // check aliases\n var foundNamedKey = aliases[nameOrCode.toLowerCase()]\n if (foundNamedKey) { return foundNamedKey === keyCode; }\n } else if (typeof nameOrCode === 'number') {\n return nameOrCode === keyCode;\n }\n return false;\n }\n}\n\nexports = module.exports = keyCode;\n\n/**\n * Get by name\n *\n * exports.code['enter'] // => 13\n */\n\nvar codes = exports.code = exports.codes = {\n 'backspace': 8,\n 'tab': 9,\n 'enter': 13,\n 'shift': 16,\n 'ctrl': 17,\n 'alt': 18,\n 'pause/break': 19,\n 'caps lock': 20,\n 'esc': 27,\n 'space': 32,\n 'page up': 33,\n 'page down': 34,\n 'end': 35,\n 'home': 36,\n 'left': 37,\n 'up': 38,\n 'right': 39,\n 'down': 40,\n 'insert': 45,\n 'delete': 46,\n 'command': 91,\n 'left command': 91,\n 'right command': 93,\n 'numpad *': 106,\n 'numpad +': 107,\n 'numpad -': 109,\n 'numpad .': 110,\n 'numpad /': 111,\n 'num lock': 144,\n 'scroll lock': 145,\n 'my computer': 182,\n 'my calculator': 183,\n ';': 186,\n '=': 187,\n ',': 188,\n '-': 189,\n '.': 190,\n '/': 191,\n '`': 192,\n '[': 219,\n '\\\\': 220,\n ']': 221,\n \"'\": 222\n}\n\n// Helper aliases\n\nvar aliases = exports.aliases = {\n 'windows': 91,\n '⇧': 16,\n '⌥': 18,\n '⌃': 17,\n '⌘': 91,\n 'ctl': 17,\n 'control': 17,\n 'option': 18,\n 'pause': 19,\n 'break': 19,\n 'caps': 20,\n 'return': 13,\n 'escape': 27,\n 'spc': 32,\n 'spacebar': 32,\n 'pgup': 33,\n 'pgdn': 34,\n 'ins': 45,\n 'del': 46,\n 'cmd': 91\n}\n\n/*!\n * Programatically add the following\n */\n\n// lower case chars\nfor (i = 97; i < 123; i++) codes[String.fromCharCode(i)] = i - 32\n\n// numbers\nfor (var i = 48; i < 58; i++) codes[i - 48] = i\n\n// function keys\nfor (i = 1; i < 13; i++) codes['f'+i] = i + 111\n\n// numpad keys\nfor (i = 0; i < 10; i++) codes['numpad '+i] = i + 96\n\n/**\n * Get by code\n *\n * exports.name[13] // => 'Enter'\n */\n\nvar names = exports.names = exports.title = {} // title for backward compat\n\n// Create reverse mapping\nfor (i in codes) names[codes[i]] = i\n\n// Add aliases\nfor (var alias in aliases) {\n codes[alias] = aliases[alias]\n}\n","var getUint64 = require('../utils/numbers.js').getUint64;\n\nvar parseSidx = function(data) {\n var view = new DataView(data.buffer, data.byteOffset, data.byteLength),\n result = {\n version: data[0],\n flags: new Uint8Array(data.subarray(1, 4)),\n references: [],\n referenceId: view.getUint32(4),\n timescale: view.getUint32(8)\n },\n i = 12;\n\n if (result.version === 0) {\n result.earliestPresentationTime = view.getUint32(i);\n result.firstOffset = view.getUint32(i + 4);\n i += 8;\n } else {\n // read 64 bits\n result.earliestPresentationTime = getUint64(data.subarray(i));\n result.firstOffset = getUint64(data.subarray(i + 8));\n i += 16;\n }\n\n i += 2; // reserved\n\n var referenceCount = view.getUint16(i);\n\n i += 2; // start of references\n\n for (; referenceCount > 0; i += 12, referenceCount--) {\n result.references.push({\n referenceType: (data[i] & 0x80) >>> 7,\n referencedSize: view.getUint32(i) & 0x7FFFFFFF,\n subsegmentDuration: view.getUint32(i + 4),\n startsWithSap: !!(data[i + 8] & 0x80),\n sapType: (data[i + 8] & 0x70) >>> 4,\n sapDeltaTime: view.getUint32(i + 8) & 0x0FFFFFFF\n });\n }\n\n return result;\n};\n\n\nmodule.exports = parseSidx;\n","/**\n * mux.js\n *\n * Copyright (c) Brightcove\n * Licensed Apache-2.0 https://github.com/videojs/mux.js/blob/master/LICENSE\n */\nvar\n ONE_SECOND_IN_TS = 90000, // 90kHz clock\n secondsToVideoTs,\n secondsToAudioTs,\n videoTsToSeconds,\n audioTsToSeconds,\n audioTsToVideoTs,\n videoTsToAudioTs,\n metadataTsToSeconds;\n\nsecondsToVideoTs = function(seconds) {\n return seconds * ONE_SECOND_IN_TS;\n};\n\nsecondsToAudioTs = function(seconds, sampleRate) {\n return seconds * sampleRate;\n};\n\nvideoTsToSeconds = function(timestamp) {\n return timestamp / ONE_SECOND_IN_TS;\n};\n\naudioTsToSeconds = function(timestamp, sampleRate) {\n return timestamp / sampleRate;\n};\n\naudioTsToVideoTs = function(timestamp, sampleRate) {\n return secondsToVideoTs(audioTsToSeconds(timestamp, sampleRate));\n};\n\nvideoTsToAudioTs = function(timestamp, sampleRate) {\n return secondsToAudioTs(videoTsToSeconds(timestamp), sampleRate);\n};\n\n/**\n * Adjust ID3 tag or caption timing information by the timeline pts values\n * (if keepOriginalTimestamps is false) and convert to seconds\n */\nmetadataTsToSeconds = function(timestamp, timelineStartPts, keepOriginalTimestamps) {\n return videoTsToSeconds(keepOriginalTimestamps ? timestamp : timestamp - timelineStartPts);\n};\n\nmodule.exports = {\n ONE_SECOND_IN_TS: ONE_SECOND_IN_TS,\n secondsToVideoTs: secondsToVideoTs,\n secondsToAudioTs: secondsToAudioTs,\n videoTsToSeconds: videoTsToSeconds,\n audioTsToSeconds: audioTsToSeconds,\n audioTsToVideoTs: audioTsToVideoTs,\n videoTsToAudioTs: videoTsToAudioTs,\n metadataTsToSeconds: metadataTsToSeconds\n};\n","var MAX_UINT32 = Math.pow(2, 32);\n\nvar getUint64 = function(uint8) {\n var dv = new DataView(uint8.buffer, uint8.byteOffset, uint8.byteLength);\n var value;\n\n if (dv.getBigUint64) {\n value = dv.getBigUint64(0);\n\n if (value < Number.MAX_SAFE_INTEGER) {\n return Number(value);\n }\n\n return value;\n }\n\n return (dv.getUint32(0) * MAX_UINT32) + dv.getUint32(4);\n};\n\nmodule.exports = {\n getUint64: getUint64,\n MAX_UINT32: MAX_UINT32\n};\n","module.exports = SafeParseTuple\n\nfunction SafeParseTuple(obj, reviver) {\n var json\n var error = null\n\n try {\n json = JSON.parse(obj, reviver)\n } catch (err) {\n error = err\n }\n\n return [error, json]\n}\n"],"sourceRoot":""}