shaka-player 4.3.0 → 4.3.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.github/workflows/build-and-test.yaml +20 -0
- package/AUTHORS +2 -0
- package/CHANGELOG.md +44 -0
- package/CONTRIBUTORS +2 -0
- package/README.md +1 -1
- package/conditional/dummy_cast_proxy.js +120 -0
- package/dist/demo.compiled.debug.js +104 -110
- package/dist/demo.compiled.debug.map +3 -3
- package/dist/demo.compiled.js +104 -110
- package/dist/demo.compiled.map +3 -3
- package/dist/deps.js +8 -6
- package/dist/locales.js +32 -32
- package/dist/receiver.compiled.debug.js +54 -60
- package/dist/receiver.compiled.debug.map +3 -3
- package/dist/receiver.compiled.js +54 -60
- package/dist/receiver.compiled.map +3 -3
- package/dist/shaka-player.compiled.d.ts +19 -2
- package/dist/shaka-player.compiled.debug.d.ts +19 -2
- package/dist/shaka-player.compiled.debug.externs.js +102 -80
- package/dist/shaka-player.compiled.debug.js +657 -652
- package/dist/shaka-player.compiled.debug.map +4 -4
- package/dist/shaka-player.compiled.externs.js +102 -80
- package/dist/shaka-player.compiled.js +904 -901
- package/dist/shaka-player.compiled.map +4 -4
- package/dist/shaka-player.ui.d.ts +19 -2
- package/dist/shaka-player.ui.debug.d.ts +19 -2
- package/dist/shaka-player.ui.debug.externs.js +102 -80
- package/dist/shaka-player.ui.debug.js +703 -698
- package/dist/shaka-player.ui.debug.map +4 -4
- package/dist/shaka-player.ui.externs.js +102 -80
- package/dist/shaka-player.ui.js +1029 -1026
- package/dist/shaka-player.ui.map +4 -4
- package/docs/tutorials/welcome.md +2 -2
- package/externs/shaka/mp4_parser.js +3 -0
- package/externs/shaka/player.js +2 -1
- package/lib/ads/ad_manager.js +2 -2
- package/lib/cea/cea708_window.js +2 -2
- package/lib/cea/mp4_cea_parser.js +37 -16
- package/lib/dash/segment_template.js +1 -1
- package/lib/hls/hls_parser.js +49 -23
- package/lib/media/content_workarounds.js +12 -0
- package/lib/media/media_source_capabilities.js +36 -0
- package/lib/media/media_source_engine.js +28 -7
- package/lib/media/segment_reference.js +3 -0
- package/lib/media/streaming_engine.js +33 -10
- package/lib/media/transmuxer.js +6 -4
- package/lib/player.js +10 -6
- package/lib/polyfill/abort_controller.js +143 -0
- package/lib/polyfill/media_capabilities.js +65 -11
- package/lib/polyfill/patchedmediakeys_apple.js +33 -28
- package/lib/text/ttml_text_parser.js +32 -7
- package/lib/text/ui_text_displayer.js +17 -0
- package/lib/util/mp4_box_parsers.js +24 -0
- package/lib/util/mp4_parser.js +35 -0
- package/lib/util/player_configuration.js +10 -3
- package/lib/util/stream_utils.js +35 -13
- package/package.json +4 -4
- package/shaka-player.uncompiled.js +1 -0
- package/test/ads/ad_manager_unit.js +3 -1
- package/test/dash/dash_parser_manifest_unit.js +1 -0
- package/test/hls/hls_parser_unit.js +132 -0
- package/test/media/drm_engine_unit.js +11 -1
- package/test/media/media_source_engine_integration.js +78 -2
- package/test/player_integration.js +10 -3
- package/test/polyfill/media_capabilities_unit.js +259 -0
- package/test/polyfill/patchedmediakeys_apple_unit.js +6 -0
- package/test/test/boot.js +29 -11
- package/test/test/util/manifest_parser_util.js +4 -3
- package/test/test/util/stream_generator.js +212 -8
- package/test/test/util/test_scheme.js +6 -5
- package/test/test/util/util.js +3 -2
- package/test/text/mp4_ttml_parser_unit.js +6 -4
- package/test/text/ttml_text_parser_unit.js +119 -86
- package/test/text/ui_text_displayer_unit.js +76 -0
- package/test/util/stream_utils_unit.js +18 -0
- package/test/util/xml_utils_unit.js +6 -1
- package/third_party/closure-uri/uri.js +1 -1
- package/ui/controls.js +49 -36
|
@@ -15,19 +15,19 @@ e}};$jscomp.construct={valueOf:$jscomp.getConstructImplementation}.valueOf();$js
|
|
|
15
15
|
$jscomp.inherits=function(a,b){a.prototype=$jscomp.objectCreate(b.prototype);a.prototype.constructor=a;if($jscomp.setPrototypeOf){var c=$jscomp.setPrototypeOf;c(a,b)}else for(c in b)if("prototype"!=c)if(Object.defineProperties){var d=Object.getOwnPropertyDescriptor(b,c);d&&Object.defineProperty(a,c,d)}else a[c]=b[c];a.superClass_=b.prototype};$jscomp.generator={};
|
|
16
16
|
$jscomp.generator.ensureIteratorResultIsObject_=function(a){if(!(a instanceof Object))throw new TypeError("Iterator result "+a+" is not an object");};$jscomp.generator.Context=function(){this.isRunning_=!1;this.yieldAllIterator_=null;this.yieldResult=void 0;this.nextAddress=1;this.finallyAddress_=this.catchAddress_=0;this.finallyContexts_=this.abruptCompletion_=null};
|
|
17
17
|
$jscomp.generator.Context.prototype.start_=function(){if(this.isRunning_)throw new TypeError("Generator is already running");this.isRunning_=!0};$jscomp.generator.Context.prototype.stop_=function(){this.isRunning_=!1};$jscomp.generator.Context.prototype.jumpToErrorHandler_=function(){this.nextAddress=this.catchAddress_||this.finallyAddress_};$jscomp.generator.Context.prototype.next_=function(a){this.yieldResult=a};
|
|
18
|
-
$jscomp.generator.Context.prototype.throw_=function(a){this.abruptCompletion_={exception:a,isException:!0};this.jumpToErrorHandler_()};$jscomp.generator.Context.prototype
|
|
19
|
-
$jscomp.generator.Context.prototype.yieldAll=function(a,b){
|
|
18
|
+
$jscomp.generator.Context.prototype.throw_=function(a){this.abruptCompletion_={exception:a,isException:!0};this.jumpToErrorHandler_()};$jscomp.generator.Context.prototype.return=function(a){this.abruptCompletion_={return:a};this.nextAddress=this.finallyAddress_};$jscomp.generator.Context.prototype.jumpThroughFinallyBlocks=function(a){this.abruptCompletion_={jumpTo:a};this.nextAddress=this.finallyAddress_};$jscomp.generator.Context.prototype.yield=function(a,b){this.nextAddress=b;return{value:a}};
|
|
19
|
+
$jscomp.generator.Context.prototype.yieldAll=function(a,b){a=$jscomp.makeIterator(a);var c=a.next();$jscomp.generator.ensureIteratorResultIsObject_(c);if(c.done)this.yieldResult=c.value,this.nextAddress=b;else return this.yieldAllIterator_=a,this.yield(c.value,b)};$jscomp.generator.Context.prototype.jumpTo=function(a){this.nextAddress=a};$jscomp.generator.Context.prototype.jumpToEnd=function(){this.nextAddress=0};
|
|
20
20
|
$jscomp.generator.Context.prototype.setCatchFinallyBlocks=function(a,b){this.catchAddress_=a;void 0!=b&&(this.finallyAddress_=b)};$jscomp.generator.Context.prototype.setFinallyBlock=function(a){this.catchAddress_=0;this.finallyAddress_=a||0};$jscomp.generator.Context.prototype.leaveTryBlock=function(a,b){this.nextAddress=a;this.catchAddress_=b||0};
|
|
21
21
|
$jscomp.generator.Context.prototype.enterCatchBlock=function(a){this.catchAddress_=a||0;a=this.abruptCompletion_.exception;this.abruptCompletion_=null;return a};$jscomp.generator.Context.prototype.enterFinallyBlock=function(a,b,c){c?this.finallyContexts_[c]=this.abruptCompletion_:this.finallyContexts_=[this.abruptCompletion_];this.catchAddress_=a||0;this.finallyAddress_=b||0};
|
|
22
|
-
$jscomp.generator.Context.prototype.leaveFinallyBlock=function(a,b){
|
|
22
|
+
$jscomp.generator.Context.prototype.leaveFinallyBlock=function(a,b){b=this.finallyContexts_.splice(b||0)[0];if(b=this.abruptCompletion_=this.abruptCompletion_||b){if(b.isException)return this.jumpToErrorHandler_();void 0!=b.jumpTo&&this.finallyAddress_<b.jumpTo?(this.nextAddress=b.jumpTo,this.abruptCompletion_=null):this.nextAddress=this.finallyAddress_}else this.nextAddress=a};$jscomp.generator.Context.prototype.forIn=function(a){return new $jscomp.generator.Context.PropertyIterator(a)};
|
|
23
23
|
$jscomp.generator.Context.PropertyIterator=function(a){this.object_=a;this.properties_=[];for(var b in a)this.properties_.push(b);this.properties_.reverse()};$jscomp.generator.Context.PropertyIterator.prototype.getNext=function(){for(;0<this.properties_.length;){var a=this.properties_.pop();if(a in this.object_)return a}return null};$jscomp.generator.Engine_=function(a){this.context_=new $jscomp.generator.Context;this.program_=a};
|
|
24
24
|
$jscomp.generator.Engine_.prototype.next_=function(a){this.context_.start_();if(this.context_.yieldAllIterator_)return this.yieldAllStep_(this.context_.yieldAllIterator_.next,a,this.context_.next_);this.context_.next_(a);return this.nextStep_()};
|
|
25
|
-
$jscomp.generator.Engine_.prototype.return_=function(a){this.context_.start_();var b=this.context_.yieldAllIterator_;if(b)return this.yieldAllStep_("return"in b?b["return"]:function(c){return{value:c,done:!0}},a,this.context_
|
|
25
|
+
$jscomp.generator.Engine_.prototype.return_=function(a){this.context_.start_();var b=this.context_.yieldAllIterator_;if(b)return this.yieldAllStep_("return"in b?b["return"]:function(c){return{value:c,done:!0}},a,this.context_.return);this.context_.return(a);return this.nextStep_()};
|
|
26
26
|
$jscomp.generator.Engine_.prototype.throw_=function(a){this.context_.start_();if(this.context_.yieldAllIterator_)return this.yieldAllStep_(this.context_.yieldAllIterator_["throw"],a,this.context_.next_);this.context_.throw_(a);return this.nextStep_()};
|
|
27
27
|
$jscomp.generator.Engine_.prototype.yieldAllStep_=function(a,b,c){try{var d=a.call(this.context_.yieldAllIterator_,b);$jscomp.generator.ensureIteratorResultIsObject_(d);if(!d.done)return this.context_.stop_(),d;var e=d.value}catch(f){return this.context_.yieldAllIterator_=null,this.context_.throw_(f),this.nextStep_()}this.context_.yieldAllIterator_=null;c.call(this.context_,e);return this.nextStep_()};
|
|
28
|
-
$jscomp.generator.Engine_.prototype.nextStep_=function(){for(;this.context_.nextAddress;)try{var a=this.program_(this.context_);if(a)return this.context_.stop_(),{value:a.value,done:!1}}catch(b){this.context_.yieldResult=void 0,this.context_.throw_(b)}this.context_.stop_();if(this.context_.abruptCompletion_){a=this.context_.abruptCompletion_;this.context_.abruptCompletion_=null;if(a.isException)throw a.exception;return{value:a
|
|
29
|
-
$jscomp.generator.Generator_=function(a){this.next=function(b){return a.next_(b)};this
|
|
30
|
-
$jscomp.asyncExecutePromiseGenerator=function(a){function b(d){return a.next(d)}function c(d){return a
|
|
28
|
+
$jscomp.generator.Engine_.prototype.nextStep_=function(){for(;this.context_.nextAddress;)try{var a=this.program_(this.context_);if(a)return this.context_.stop_(),{value:a.value,done:!1}}catch(b){this.context_.yieldResult=void 0,this.context_.throw_(b)}this.context_.stop_();if(this.context_.abruptCompletion_){a=this.context_.abruptCompletion_;this.context_.abruptCompletion_=null;if(a.isException)throw a.exception;return{value:a.return,done:!0}}return{value:void 0,done:!0}};
|
|
29
|
+
$jscomp.generator.Generator_=function(a){this.next=function(b){return a.next_(b)};this.throw=function(b){return a.throw_(b)};this.return=function(b){return a.return_(b)};this[Symbol.iterator]=function(){return this}};$jscomp.generator.createGenerator=function(a,b){b=new $jscomp.generator.Generator_(new $jscomp.generator.Engine_(b));$jscomp.setPrototypeOf&&a.prototype&&$jscomp.setPrototypeOf(b,a.prototype);return b};
|
|
30
|
+
$jscomp.asyncExecutePromiseGenerator=function(a){function b(d){return a.next(d)}function c(d){return a.throw(d)}return new Promise(function(d,e){function f(g){g.done?d(g.value):Promise.resolve(g.value).then(b,c).then(f,e)}f(a.next())})};$jscomp.asyncExecutePromiseGeneratorFunction=function(a){return $jscomp.asyncExecutePromiseGenerator(a())};$jscomp.asyncExecutePromiseGeneratorProgram=function(a){return $jscomp.asyncExecutePromiseGenerator(new $jscomp.generator.Generator_(new $jscomp.generator.Engine_(a)))};
|
|
31
31
|
$jscomp.polyfill("Reflect",function(a){return a?a:{}},"es6","es3");$jscomp.polyfill("Reflect.construct",function(a){return $jscomp.construct},"es6","es3");$jscomp.polyfill("Reflect.setPrototypeOf",function(a){if(a)return a;if($jscomp.setPrototypeOf){var b=$jscomp.setPrototypeOf;return function(c,d){try{return b(c,d),!0}catch(e){return!1}}}return null},"es6","es5");$jscomp.initSymbol=function(){};
|
|
32
32
|
$jscomp.polyfill("Symbol",function(a){if(a)return a;var b=function(f,g){this.$jscomp$symbol$id_=f;$jscomp.defineProperty(this,"description",{configurable:!0,writable:!0,value:g})};b.prototype.toString=function(){return this.$jscomp$symbol$id_};var c="jscomp_symbol_"+(1E9*Math.random()>>>0)+"_",d=0,e=function(f){if(this instanceof e)throw new TypeError("Symbol is not a constructor");return new b(c+(f||"")+"_"+d++,f)};return e},"es6","es3");
|
|
33
33
|
$jscomp.polyfill("Symbol.iterator",function(a){if(a)return a;a=Symbol("Symbol.iterator");for(var b="Array Int8Array Uint8Array Uint8ClampedArray Int16Array Uint16Array Int32Array Uint32Array Float32Array Float64Array".split(" "),c=0;c<b.length;c++){var d=$jscomp.global[b[c]];"function"===typeof d&&"function"!=typeof d.prototype[a]&&$jscomp.defineProperty(d.prototype,a,{configurable:!0,writable:!0,value:function(){return $jscomp.iteratorPrototype($jscomp.arrayIteratorImpl(this))}})}return a},"es6",
|
|
@@ -38,31 +38,31 @@ try{g(h.resolve,h.reject)}catch(k){h.reject(k)}};e.prototype.createResolveAndRej
|
|
|
38
38
|
this.fulfill_(g)}};e.prototype.resolveToNonPromiseObj_=function(g){var h=void 0;try{h=g.then}catch(k){this.reject_(k);return}"function"==typeof h?this.settleSameAsThenable_(h,g):this.fulfill_(g)};e.prototype.reject_=function(g){this.settle_(2,g)};e.prototype.fulfill_=function(g){this.settle_(1,g)};e.prototype.settle_=function(g,h){if(0!=this.state_)throw Error("Cannot settle("+g+", "+h+"): Promise already settled in state"+this.state_);this.state_=g;this.result_=h;2===this.state_&&this.scheduleUnhandledRejectionCheck_();
|
|
39
39
|
this.executeOnSettledCallbacks_()};e.prototype.scheduleUnhandledRejectionCheck_=function(){var g=this;d(function(){if(g.notifyUnhandledRejection_()){var h=$jscomp.global.console;"undefined"!==typeof h&&h.error(g.result_)}},1)};e.prototype.notifyUnhandledRejection_=function(){if(this.isRejectionHandled_)return!1;var g=$jscomp.global.CustomEvent,h=$jscomp.global.Event,k=$jscomp.global.dispatchEvent;if("undefined"===typeof k)return!0;"function"===typeof g?g=new g("unhandledrejection",{cancelable:!0}):
|
|
40
40
|
"function"===typeof h?g=new h("unhandledrejection",{cancelable:!0}):(g=$jscomp.global.document.createEvent("CustomEvent"),g.initCustomEvent("unhandledrejection",!1,!0,g));g.promise=this;g.reason=this.result_;return k(g)};e.prototype.executeOnSettledCallbacks_=function(){if(null!=this.onSettledCallbacks_){for(var g=0;g<this.onSettledCallbacks_.length;++g)f.asyncExecute(this.onSettledCallbacks_[g]);this.onSettledCallbacks_=null}};var f=new b;e.prototype.settleSameAsPromise_=function(g){var h=this.createResolveAndReject_();
|
|
41
|
-
g.callWhenSettled_(h.resolve,h.reject)};e.prototype.settleSameAsThenable_=function(g,h){var k=this.createResolveAndReject_();try{g.call(h,k.resolve,k.reject)}catch(l){k.reject(l)}};e.prototype.then=function(g,h){function k(p,q){return"function"==typeof p?function(
|
|
41
|
+
g.callWhenSettled_(h.resolve,h.reject)};e.prototype.settleSameAsThenable_=function(g,h){var k=this.createResolveAndReject_();try{g.call(h,k.resolve,k.reject)}catch(l){k.reject(l)}};e.prototype.then=function(g,h){function k(p,q){return"function"==typeof p?function(t){try{l(p(t))}catch(r){m(r)}}:q}var l,m,n=new e(function(p,q){l=p;m=q});this.callWhenSettled_(k(g,l),k(h,m));return n};e.prototype.catch=function(g){return this.then(void 0,g)};e.prototype.callWhenSettled_=function(g,h){function k(){switch(l.state_){case 1:g(l.result_);
|
|
42
42
|
break;case 2:h(l.result_);break;default:throw Error("Unexpected state: "+l.state_);}}var l=this;null==this.onSettledCallbacks_?f.asyncExecute(k):this.onSettledCallbacks_.push(k);this.isRejectionHandled_=!0};e.resolve=c;e.reject=function(g){return new e(function(h,k){k(g)})};e.race=function(g){return new e(function(h,k){for(var l=$jscomp.makeIterator(g),m=l.next();!m.done;m=l.next())c(m.value).callWhenSettled_(h,k)})};e.all=function(g){var h=$jscomp.makeIterator(g),k=h.next();return k.done?c([]):new e(function(l,
|
|
43
|
-
m){function n(
|
|
43
|
+
m){function n(t){return function(r){p[t]=r;q--;0==q&&l(p)}}var p=[],q=0;do p.push(void 0),q++,c(k.value).callWhenSettled_(n(p.length-1),m),k=h.next();while(!k.done)})};return e},"es6","es3");$jscomp.checkEs6ConformanceViaProxy=function(){try{var a={},b=Object.create(new $jscomp.global.Proxy(a,{get:function(c,d,e){return c==a&&"q"==d&&e==b}}));return!0===b.q}catch(c){return!1}};$jscomp.USE_PROXY_FOR_ES6_CONFORMANCE_CHECKS=!1;$jscomp.ES6_CONFORMANCE=$jscomp.USE_PROXY_FOR_ES6_CONFORMANCE_CHECKS&&$jscomp.checkEs6ConformanceViaProxy();
|
|
44
44
|
$jscomp.owns=function(a,b){return Object.prototype.hasOwnProperty.call(a,b)};
|
|
45
|
-
$jscomp.polyfill("WeakMap",function(a){function b(){if(!a||!Object.seal)return!1;try{var l=Object.seal({}),m=Object.seal({}),n=new a([[l,2],[m,3]]);if(2!=n.get(l)||3!=n.get(m))return!1;n
|
|
45
|
+
$jscomp.polyfill("WeakMap",function(a){function b(){if(!a||!Object.seal)return!1;try{var l=Object.seal({}),m=Object.seal({}),n=new a([[l,2],[m,3]]);if(2!=n.get(l)||3!=n.get(m))return!1;n.delete(l);n.set(m,4);return!n.has(l)&&4==n.get(m)}catch(p){return!1}}function c(){}function d(l){var m=typeof l;return"object"===m&&null!==l||"function"===m}function e(l){if(!$jscomp.owns(l,g)){var m=new c;$jscomp.defineProperty(l,g,{value:m})}}function f(l){if(!$jscomp.ISOLATE_POLYFILLS){var m=Object[l];m&&(Object[l]=
|
|
46
46
|
function(n){if(n instanceof c)return n;Object.isExtensible(n)&&e(n);return m(n)})}}if($jscomp.USE_PROXY_FOR_ES6_CONFORMANCE_CHECKS){if(a&&$jscomp.ES6_CONFORMANCE)return a}else if(b())return a;var g="$jscomp_hidden_"+Math.random();f("freeze");f("preventExtensions");f("seal");var h=0,k=function(l){this.id_=(h+=Math.random()+1).toString();if(l){l=$jscomp.makeIterator(l);for(var m;!(m=l.next()).done;)m=m.value,this.set(m[0],m[1])}};k.prototype.set=function(l,m){if(!d(l))throw Error("Invalid WeakMap key");
|
|
47
|
-
e(l);if(!$jscomp.owns(l,g))throw Error("WeakMap key fail: "+l);l[g][this.id_]=m;return this};k.prototype.get=function(l){return d(l)&&$jscomp.owns(l,g)?l[g][this.id_]:void 0};k.prototype.has=function(l){return d(l)&&$jscomp.owns(l,g)&&$jscomp.owns(l[g],this.id_)};k.prototype
|
|
47
|
+
e(l);if(!$jscomp.owns(l,g))throw Error("WeakMap key fail: "+l);l[g][this.id_]=m;return this};k.prototype.get=function(l){return d(l)&&$jscomp.owns(l,g)?l[g][this.id_]:void 0};k.prototype.has=function(l){return d(l)&&$jscomp.owns(l,g)&&$jscomp.owns(l[g],this.id_)};k.prototype.delete=function(l){return d(l)&&$jscomp.owns(l,g)&&$jscomp.owns(l[g],this.id_)?delete l[g][this.id_]:!1};return k},"es6","es3");$jscomp.MapEntry=function(){};
|
|
48
48
|
$jscomp.polyfill("Map",function(a){function b(){if($jscomp.ASSUME_NO_NATIVE_MAP||!a||"function"!=typeof a||!a.prototype.entries||"function"!=typeof Object.seal)return!1;try{var k=Object.seal({x:4}),l=new a($jscomp.makeIterator([[k,"s"]]));if("s"!=l.get(k)||1!=l.size||l.get({x:4})||l.set({x:4},"t")!=l||2!=l.size)return!1;var m=l.entries(),n=m.next();if(n.done||n.value[0]!=k||"s"!=n.value[1])return!1;n=m.next();return n.done||4!=n.value[0].x||"t"!=n.value[1]||!m.next().done?!1:!0}catch(p){return!1}}
|
|
49
49
|
if($jscomp.USE_PROXY_FOR_ES6_CONFORMANCE_CHECKS){if(a&&$jscomp.ES6_CONFORMANCE)return a}else if(b())return a;var c=new WeakMap,d=function(k){this.data_={};this.head_=g();this.size=0;if(k){k=$jscomp.makeIterator(k);for(var l;!(l=k.next()).done;)l=l.value,this.set(l[0],l[1])}};d.prototype.set=function(k,l){k=0===k?0:k;var m=e(this,k);m.list||(m.list=this.data_[m.id]=[]);m.entry?m.entry.value=l:(m.entry={next:this.head_,previous:this.head_.previous,head:this.head_,key:k,value:l},m.list.push(m.entry),
|
|
50
|
-
this.head_.previous.next=m.entry,this.head_.previous=m.entry,this.size++);return this};d.prototype
|
|
50
|
+
this.head_.previous.next=m.entry,this.head_.previous=m.entry,this.size++);return this};d.prototype.delete=function(k){k=e(this,k);return k.entry&&k.list?(k.list.splice(k.index,1),k.list.length||delete this.data_[k.id],k.entry.previous.next=k.entry.next,k.entry.next.previous=k.entry.previous,k.entry.head=null,this.size--,!0):!1};d.prototype.clear=function(){this.data_={};this.head_=this.head_.previous=g();this.size=0};d.prototype.has=function(k){return!!e(this,k).entry};d.prototype.get=function(k){return(k=
|
|
51
51
|
e(this,k).entry)&&k.value};d.prototype.entries=function(){return f(this,function(k){return[k.key,k.value]})};d.prototype.keys=function(){return f(this,function(k){return k.key})};d.prototype.values=function(){return f(this,function(k){return k.value})};d.prototype.forEach=function(k,l){for(var m=this.entries(),n;!(n=m.next()).done;)n=n.value,k.call(l,n[1],n[0],this)};d.prototype[Symbol.iterator]=d.prototype.entries;var e=function(k,l){var m=l&&typeof l;"object"==m||"function"==m?c.has(l)?m=c.get(l):
|
|
52
|
-
(m=""+ ++h,c.set(l,m)):m="p_"+l;var n=k.data_[m];if(n&&$jscomp.owns(k.data_,m))for(
|
|
53
|
-
|
|
52
|
+
(m=""+ ++h,c.set(l,m)):m="p_"+l;var n=k.data_[m];if(n&&$jscomp.owns(k.data_,m))for(k=0;k<n.length;k++){var p=n[k];if(l!==l&&p.key!==p.key||l===p.key)return{id:m,list:n,index:k,entry:p}}return{id:m,list:n,index:-1,entry:void 0}},f=function(k,l){var m=k.head_;return $jscomp.iteratorPrototype(function(){if(m){for(;m.head!=k.head_;)m=m.previous;for(;m.next!=m.head;)return m=m.next,{done:!1,value:l(m)};m=null}return{done:!0,value:void 0}})},g=function(){var k={};return k.previous=k.next=k.head=k},h=0;
|
|
53
|
+
return d},"es6","es3");$jscomp.polyfill("Object.is",function(a){return a?a:function(b,c){return b===c?0!==b||1/b===1/c:b!==b&&c!==c}},"es6","es3");$jscomp.polyfill("Array.prototype.includes",function(a){return a?a:function(b,c){var d=this;d instanceof String&&(d=String(d));var e=d.length;c=c||0;for(0>c&&(c=Math.max(c+e,0));c<e;c++){var f=d[c];if(f===b||Object.is(f,b))return!0}return!1}},"es7","es3");
|
|
54
54
|
$jscomp.checkStringArgs=function(a,b,c){if(null==a)throw new TypeError("The 'this' value for String.prototype."+c+" must not be null or undefined");if(b instanceof RegExp)throw new TypeError("First argument to String.prototype."+c+" must not be a regular expression");return a+""};$jscomp.polyfill("String.prototype.includes",function(a){return a?a:function(b,c){return-1!==$jscomp.checkStringArgs(this,b,"includes").indexOf(b,c||0)}},"es6","es3");
|
|
55
55
|
$jscomp.iteratorFromArray=function(a,b){a instanceof String&&(a+="");var c=0,d=!1,e={next:function(){if(!d&&c<a.length){var f=c++;return{value:b(f,a[f]),done:!1}}d=!0;return{done:!0,value:void 0}}};e[Symbol.iterator]=function(){return e};return e};$jscomp.polyfill("Array.prototype.entries",function(a){return a?a:function(){return $jscomp.iteratorFromArray(this,function(b,c){return[b,c]})}},"es6","es3");
|
|
56
56
|
$jscomp.assign=$jscomp.TRUST_ES6_POLYFILLS&&"function"==typeof Object.assign?Object.assign:function(a,b){for(var c=1;c<arguments.length;c++){var d=arguments[c];if(d)for(var e in d)$jscomp.owns(d,e)&&(a[e]=d[e])}return a};$jscomp.polyfill("Object.assign",function(a){return a||$jscomp.assign},"es6","es3");$jscomp.polyfill("Array.prototype.keys",function(a){return a?a:function(){return $jscomp.iteratorFromArray(this,function(b){return b})}},"es6","es3");
|
|
57
57
|
$jscomp.polyfill("Array.from",function(a){return a?a:function(b,c,d){c=null!=c?c:function(h){return h};var e=[],f="undefined"!=typeof Symbol&&Symbol.iterator&&b[Symbol.iterator];if("function"==typeof f){b=f.call(b);for(var g=0;!(f=b.next()).done;)e.push(c.call(d,f.value,g++))}else for(f=b.length,g=0;g<f;g++)e.push(c.call(d,b[g],g));return e}},"es6","es3");
|
|
58
58
|
$jscomp.polyfill("Set",function(a){function b(){if($jscomp.ASSUME_NO_NATIVE_SET||!a||"function"!=typeof a||!a.prototype.entries||"function"!=typeof Object.seal)return!1;try{var d=Object.seal({x:4}),e=new a($jscomp.makeIterator([d]));if(!e.has(d)||1!=e.size||e.add(d)!=e||1!=e.size||e.add({x:4})!=e||2!=e.size)return!1;var f=e.entries(),g=f.next();if(g.done||g.value[0]!=d||g.value[1]!=d)return!1;g=f.next();return g.done||g.value[0]==d||4!=g.value[0].x||g.value[1]!=g.value[0]?!1:f.next().done}catch(h){return!1}}
|
|
59
|
-
if($jscomp.USE_PROXY_FOR_ES6_CONFORMANCE_CHECKS){if(a&&$jscomp.ES6_CONFORMANCE)return a}else if(b())return a;var c=function(d){this.map_=new Map;if(d){d=$jscomp.makeIterator(d);for(var e;!(e=d.next()).done;)this.add(e.value)}this.size=this.map_.size};c.prototype.add=function(d){d=0===d?0:d;this.map_.set(d,d);this.size=this.map_.size;return this};c.prototype
|
|
60
|
-
|
|
59
|
+
if($jscomp.USE_PROXY_FOR_ES6_CONFORMANCE_CHECKS){if(a&&$jscomp.ES6_CONFORMANCE)return a}else if(b())return a;var c=function(d){this.map_=new Map;if(d){d=$jscomp.makeIterator(d);for(var e;!(e=d.next()).done;)this.add(e.value)}this.size=this.map_.size};c.prototype.add=function(d){d=0===d?0:d;this.map_.set(d,d);this.size=this.map_.size;return this};c.prototype.delete=function(d){d=this.map_.delete(d);this.size=this.map_.size;return d};c.prototype.clear=function(){this.map_.clear();this.size=0};c.prototype.has=
|
|
60
|
+
function(d){return this.map_.has(d)};c.prototype.entries=function(){return this.map_.entries()};c.prototype.values=function(){return this.map_.values()};c.prototype.keys=c.prototype.values;c.prototype[Symbol.iterator]=c.prototype.values;c.prototype.forEach=function(d,e){var f=this;this.map_.forEach(function(g){return d.call(e,g,g,f)})};return c},"es6","es3");
|
|
61
61
|
$jscomp.polyfill("String.prototype.replaceAll",function(a){return a?a:function(b,c){if(b instanceof RegExp&&!b.global)throw new TypeError("String.prototype.replaceAll called with a non-global RegExp argument.");return b instanceof RegExp?this.replace(b,c):this.replace(new RegExp(String(b).replace(/([-()\[\]{}+?*.$\^|,:#<!\\])/g,"\\$1").replace(/\x08/g,"\\x08"),"g"),c)}},"es_2021","es3");
|
|
62
|
-
$jscomp.polyfill("String.prototype.startsWith",function(a){return a?a:function(b,c){var d=$jscomp.checkStringArgs(this,b,"startsWith");b+="";
|
|
62
|
+
$jscomp.polyfill("String.prototype.startsWith",function(a){return a?a:function(b,c){var d=$jscomp.checkStringArgs(this,b,"startsWith");b+="";var e=d.length,f=b.length;c=Math.max(0,Math.min(c|0,d.length));for(var g=0;g<f&&c<e;)if(d[c++]!=b[g++])return!1;return g>=f}},"es6","es3");$jscomp.polyfill("Object.entries",function(a){return a?a:function(b){var c=[],d;for(d in b)$jscomp.owns(b,d)&&c.push([d,b[d]]);return c}},"es8","es3");
|
|
63
63
|
$jscomp.polyfill("Array.prototype.values",function(a){return a?a:function(){return $jscomp.iteratorFromArray(this,function(b,c){return c})}},"es8","es3");$jscomp.polyfill("Object.values",function(a){return a?a:function(b){var c=[],d;for(d in b)$jscomp.owns(b,d)&&c.push(b[d]);return c}},"es8","es3");var COMPILED=!0,goog=goog||{};goog.global=this||self;
|
|
64
64
|
goog.exportPath_=function(a,b,c,d){a=a.split(".");d=d||goog.global;a[0]in d||"undefined"==typeof d.execScript||d.execScript("var "+a[0]);for(var e;a.length&&(e=a.shift());)if(a.length||void 0===b)d=d[e]&&d[e]!==Object.prototype[e]?d[e]:d[e]={};else if(!c&&goog.isObject(b)&&goog.isObject(d[e]))for(var f in b)b.hasOwnProperty(f)&&(d[e][f]=b[f]);else d[e]=b};
|
|
65
|
-
goog.define=function(a,b){
|
|
65
|
+
goog.define=function(a,b){if(!COMPILED){var c=goog.global.CLOSURE_UNCOMPILED_DEFINES,d=goog.global.CLOSURE_DEFINES;c&&void 0===c.nodeType&&Object.prototype.hasOwnProperty.call(c,a)?b=c[a]:d&&void 0===d.nodeType&&Object.prototype.hasOwnProperty.call(d,a)&&(b=d[a])}return b};goog.FEATURESET_YEAR=2012;goog.DEBUG=!0;goog.LOCALE="en";goog.getLocale=function(){return goog.LOCALE};goog.TRUSTED_SITE=!0;goog.DISALLOW_TEST_ONLY_CODE=COMPILED&&!goog.DEBUG;goog.ENABLE_CHROME_APP_SAFE_SCRIPT_LOADING=!1;
|
|
66
66
|
goog.provide=function(a){if(goog.isInModuleLoader_())throw Error("goog.provide cannot be used within a module.");if(!COMPILED&&goog.isProvided_(a))throw Error('Namespace "'+a+'" already declared.');goog.constructNamespace_(a)};goog.constructNamespace_=function(a,b,c){if(!COMPILED){delete goog.implicitNamespaces_[a];for(var d=a;(d=d.substring(0,d.lastIndexOf(".")))&&!goog.getObjectByName(d);)goog.implicitNamespaces_[d]=!0}goog.exportPath_(a,b,c)};goog.NONCE_PATTERN_=/^[\w+/_-]+[=]{0,2}$/;
|
|
67
67
|
goog.getScriptNonce_=function(a){a=(a||goog.global).document;return(a=a.querySelector&&a.querySelector("script[nonce]"))&&(a=a.nonce||a.getAttribute("nonce"))&&goog.NONCE_PATTERN_.test(a)?a:""};goog.VALID_MODULE_RE_=/^[a-zA-Z_$][a-zA-Z0-9._$]*$/;
|
|
68
68
|
goog.module=function(a){if("string"!==typeof a||!a||-1==a.search(goog.VALID_MODULE_RE_))throw Error("Invalid module identifier");if(!goog.isInGoogModuleLoader_())throw Error("Module "+a+" has been loaded incorrectly. Note, modules cannot be loaded as normal scripts. They require some kind of pre-processing step. You're likely trying to load a module via a script tag or as a part of a concatenated bundle without rewriting the module. For more info see: https://github.com/google/closure-library/wiki/goog.module:-an-ES6-module-like-alternative-to-goog.provide.");if(goog.moduleLoaderState_.moduleName)throw Error("goog.module may only be called once per module.");
|
|
@@ -71,59 +71,53 @@ goog.isInModuleLoader_=function(){return goog.isInGoogModuleLoader_()||goog.isIn
|
|
|
71
71
|
goog.module.declareLegacyNamespace=function(){if(!COMPILED&&!goog.isInGoogModuleLoader_())throw Error("goog.module.declareLegacyNamespace must be called from within a goog.module");if(!COMPILED&&!goog.moduleLoaderState_.moduleName)throw Error("goog.module must be called prior to goog.module.declareLegacyNamespace.");goog.moduleLoaderState_.declareLegacyNamespace=!0};
|
|
72
72
|
goog.declareModuleId=function(a){if(!COMPILED){if(!goog.isInEs6ModuleLoader_())throw Error("goog.declareModuleId may only be called from within an ES6 module");if(goog.moduleLoaderState_&&goog.moduleLoaderState_.moduleName)throw Error("goog.declareModuleId may only be called once per module.");if(a in goog.loadedModules_)throw Error('Module with namespace "'+a+'" already exists.');}if(goog.moduleLoaderState_)goog.moduleLoaderState_.moduleName=a;else{var b=goog.global.$jscomp;if(!b||"function"!=typeof b.getCurrentModulePath)throw Error('Module with namespace "'+
|
|
73
73
|
a+'" has been loaded incorrectly.');b=b.require(b.getCurrentModulePath());goog.loadedModules_[a]={exports:b,type:goog.ModuleType.ES6,moduleId:a}}};goog.setTestOnly=function(a){if(goog.DISALLOW_TEST_ONLY_CODE)throw a=a||"",Error("Importing test-only code into non-debug environment"+(a?": "+a:"."));};goog.forwardDeclare=function(a){};COMPILED||(goog.isProvided_=function(a){return a in goog.loadedModules_||!goog.implicitNamespaces_[a]&&null!=goog.getObjectByName(a)},goog.implicitNamespaces_={"goog.module":!0});
|
|
74
|
-
goog.getObjectByName=function(a,b){
|
|
75
|
-
goog.require=function(a){if(!COMPILED){goog.ENABLE_DEBUG_LOADER&&goog.debugLoader_.requested(a);if(goog.isProvided_(a)){if(goog.isInModuleLoader_())return goog.module.getInternal_(a)}else if(goog.ENABLE_DEBUG_LOADER){var b=goog.moduleLoaderState_;goog.moduleLoaderState_=null;try{goog.debugLoader_.load_(a)}finally{goog.moduleLoaderState_=b}}return null}};goog.requireType=function(a){return{}};goog.basePath="";goog.
|
|
76
|
-
goog.
|
|
77
|
-
goog.
|
|
74
|
+
goog.getObjectByName=function(a,b){a=a.split(".");b=b||goog.global;for(var c=0;c<a.length;c++)if(b=b[a[c]],null==b)return null;return b};goog.addDependency=function(a,b,c,d){!COMPILED&&goog.DEPENDENCIES_ENABLED&&goog.debugLoader_.addDependency(a,b,c,d)};goog.ENABLE_DEBUG_LOADER=!0;goog.logToConsole_=function(a){goog.global.console&&goog.global.console.error(a)};
|
|
75
|
+
goog.require=function(a){if(!COMPILED){goog.ENABLE_DEBUG_LOADER&&goog.debugLoader_.requested(a);if(goog.isProvided_(a)){if(goog.isInModuleLoader_())return goog.module.getInternal_(a)}else if(goog.ENABLE_DEBUG_LOADER){var b=goog.moduleLoaderState_;goog.moduleLoaderState_=null;try{goog.debugLoader_.load_(a)}finally{goog.moduleLoaderState_=b}}return null}};goog.requireType=function(a){return{}};goog.basePath="";goog.abstractMethod=function(){throw Error("unimplemented abstract method");};
|
|
76
|
+
goog.addSingletonGetter=function(a){a.instance_=void 0;a.getInstance=function(){if(a.instance_)return a.instance_;goog.DEBUG&&(goog.instantiatedSingletons_[goog.instantiatedSingletons_.length]=a);return a.instance_=new a}};goog.instantiatedSingletons_=[];goog.LOAD_MODULE_USING_EVAL=!0;goog.SEAL_MODULE_EXPORTS=goog.DEBUG;goog.loadedModules_={};goog.DEPENDENCIES_ENABLED=!COMPILED&&goog.ENABLE_DEBUG_LOADER;goog.TRANSPILE="detect";goog.ASSUME_ES_MODULES_TRANSPILED=!1;goog.TRUSTED_TYPES_POLICY_NAME="goog";
|
|
77
|
+
goog.hasBadLetScoping=null;
|
|
78
78
|
goog.loadModule=function(a){var b=goog.moduleLoaderState_;try{goog.moduleLoaderState_={moduleName:"",declareLegacyNamespace:!1,type:goog.ModuleType.GOOG};var c={},d=c;if("function"===typeof a)d=a.call(void 0,d);else if("string"===typeof a)d=goog.loadModuleFromSource_.call(void 0,d,a);else throw Error("Invalid module definition");var e=goog.moduleLoaderState_.moduleName;if("string"===typeof e&&e)goog.moduleLoaderState_.declareLegacyNamespace?goog.constructNamespace_(e,d,c!==d):goog.SEAL_MODULE_EXPORTS&&
|
|
79
79
|
Object.seal&&"object"==typeof d&&null!=d&&Object.seal(d),goog.loadedModules_[e]={exports:d,type:goog.ModuleType.GOOG,moduleId:goog.moduleLoaderState_.moduleName};else throw Error('Invalid module name "'+e+'"');}finally{goog.moduleLoaderState_=b}};goog.loadModuleFromSource_=function(a,b){eval(goog.CLOSURE_EVAL_PREFILTER_.createScript(b));return a};goog.normalizePath_=function(a){a=a.split("/");for(var b=0;b<a.length;)"."==a[b]?a.splice(b,1):b&&".."==a[b]&&a[b-1]&&".."!=a[b-1]?a.splice(--b,2):b++;return a.join("/")};
|
|
80
|
-
goog.loadFileSync_=function(a){if(goog.global.CLOSURE_LOAD_FILE_SYNC)return goog.global.CLOSURE_LOAD_FILE_SYNC(a);try{var b=new goog.global.XMLHttpRequest;b.open("get",a,!1);b.send();return 0==b.status||200==b.status?b.responseText:null}catch(c){return null}};
|
|
81
|
-
goog.
|
|
82
|
-
goog.
|
|
83
|
-
goog.isObject=function(a){var b=typeof a;return"object"==b&&null!=a||"function"==b};goog.getUid=function(a){return Object.prototype.hasOwnProperty.call(a,goog.UID_PROPERTY_)&&a[goog.UID_PROPERTY_]||(a[goog.UID_PROPERTY_]=++goog.uidCounter_)};goog.hasUid=function(a){return!!a[goog.UID_PROPERTY_]};goog.removeUid=function(a){null!==a&&"removeAttribute"in a&&a.removeAttribute(goog.UID_PROPERTY_);try{delete a[goog.UID_PROPERTY_]}catch(b){}};goog.UID_PROPERTY_="closure_uid_"+(1E9*Math.random()>>>0);
|
|
84
|
-
goog.uidCounter_=0;goog.cloneObject=function(a){var b=goog.typeOf(a);if("object"==b||"array"==b){if("function"===typeof a.clone)return a.clone();if("undefined"!==typeof Map&&a instanceof Map)return new Map(a);if("undefined"!==typeof Set&&a instanceof Set)return new Set(a);b="array"==b?[]:{};for(var c in a)b[c]=goog.cloneObject(a[c]);return b}return a};goog.bindNative_=function(a,b,c){return a.call.apply(a.bind,arguments)};
|
|
80
|
+
goog.loadFileSync_=function(a){if(goog.global.CLOSURE_LOAD_FILE_SYNC)return goog.global.CLOSURE_LOAD_FILE_SYNC(a);try{var b=new goog.global.XMLHttpRequest;b.open("get",a,!1);b.send();return 0==b.status||200==b.status?b.responseText:null}catch(c){return null}};goog.typeOf=function(a){var b=typeof a;return"object"!=b?b:a?Array.isArray(a)?"array":b:"null"};goog.isArrayLike=function(a){var b=goog.typeOf(a);return"array"==b||"object"==b&&"number"==typeof a.length};
|
|
81
|
+
goog.isDateLike=function(a){return goog.isObject(a)&&"function"==typeof a.getFullYear};goog.isObject=function(a){var b=typeof a;return"object"==b&&null!=a||"function"==b};goog.getUid=function(a){return Object.prototype.hasOwnProperty.call(a,goog.UID_PROPERTY_)&&a[goog.UID_PROPERTY_]||(a[goog.UID_PROPERTY_]=++goog.uidCounter_)};goog.hasUid=function(a){return!!a[goog.UID_PROPERTY_]};goog.removeUid=function(a){null!==a&&"removeAttribute"in a&&a.removeAttribute(goog.UID_PROPERTY_);try{delete a[goog.UID_PROPERTY_]}catch(b){}};
|
|
82
|
+
goog.UID_PROPERTY_="closure_uid_"+(1E9*Math.random()>>>0);goog.uidCounter_=0;goog.cloneObject=function(a){var b=goog.typeOf(a);if("object"==b||"array"==b){if("function"===typeof a.clone)return a.clone();if("undefined"!==typeof Map&&a instanceof Map)return new Map(a);if("undefined"!==typeof Set&&a instanceof Set)return new Set(a);b="array"==b?[]:{};for(var c in a)b[c]=goog.cloneObject(a[c]);return b}return a};goog.bindNative_=function(a,b,c){return a.call.apply(a.bind,arguments)};
|
|
85
83
|
goog.bindJs_=function(a,b,c){if(!a)throw Error();if(2<arguments.length){var d=Array.prototype.slice.call(arguments,2);return function(){var e=Array.prototype.slice.call(arguments);Array.prototype.unshift.apply(e,d);return a.apply(b,e)}}return function(){return a.apply(b,arguments)}};goog.bind=function(a,b,c){Function.prototype.bind&&-1!=Function.prototype.bind.toString().indexOf("native code")?goog.bind=goog.bindNative_:goog.bind=goog.bindJs_;return goog.bind.apply(null,arguments)};
|
|
86
|
-
goog.partial=function(a,b){var c=Array.prototype.slice.call(arguments,1);return function(){var d=c.slice();d.push.apply(d,arguments);return a.apply(this,d)}};goog.
|
|
87
|
-
goog.getCssName=function(a,b){if("."==String(a).charAt(0))throw Error('className passed in goog.getCssName must not start with ".". You passed: '+a);var c=function(e){return goog.cssNameMapping_[e]||e},d=function(e){e=e.split("-");for(var f=[],g=0;g<e.length;g++)f.push(c(e[g]));return f.join("-")};d=goog.cssNameMapping_?"BY_WHOLE"==goog.cssNameMappingStyle_?c:d:function(e){return e};
|
|
88
|
-
goog.setCssNameMapping=function(a,b){goog.cssNameMapping_=a;goog.cssNameMappingStyle_=b};!COMPILED&&goog.global.CLOSURE_CSS_NAME_MAPPING&&(goog.cssNameMapping_=goog.global.CLOSURE_CSS_NAME_MAPPING);goog.
|
|
89
|
-
goog.
|
|
90
|
-
goog.scope=function(a){if(goog.isInModuleLoader_())throw Error("goog.scope is not supported within a module.");a.call(goog.global)};COMPILED||(goog.global.COMPILED=COMPILED);
|
|
84
|
+
goog.partial=function(a,b){var c=Array.prototype.slice.call(arguments,1);return function(){var d=c.slice();d.push.apply(d,arguments);return a.apply(this,d)}};goog.now=function(){return Date.now()};goog.globalEval=function(a){(0,eval)(a)};
|
|
85
|
+
goog.getCssName=function(a,b){if("."==String(a).charAt(0))throw Error('className passed in goog.getCssName must not start with ".". You passed: '+a);var c=function(e){return goog.cssNameMapping_[e]||e},d=function(e){e=e.split("-");for(var f=[],g=0;g<e.length;g++)f.push(c(e[g]));return f.join("-")};d=goog.cssNameMapping_?"BY_WHOLE"==goog.cssNameMappingStyle_?c:d:function(e){return e};a=b?a+"-"+d(b):d(a);return goog.global.CLOSURE_CSS_NAME_MAP_FN?goog.global.CLOSURE_CSS_NAME_MAP_FN(a):a};
|
|
86
|
+
goog.setCssNameMapping=function(a,b){goog.cssNameMapping_=a;goog.cssNameMappingStyle_=b};!COMPILED&&goog.global.CLOSURE_CSS_NAME_MAPPING&&(goog.cssNameMapping_=goog.global.CLOSURE_CSS_NAME_MAPPING);goog.GetMsgOptions=function(){};
|
|
87
|
+
goog.getMsg=function(a,b,c){c&&c.html&&(a=a.replace(/</g,"<"));c&&c.unescapeHtmlEntities&&(a=a.replace(/</g,"<").replace(/>/g,">").replace(/'/g,"'").replace(/"/g,'"').replace(/&/g,"&"));b&&(a=a.replace(/\{\$([^}]+)}/g,function(d,e){return null!=b&&e in b?b[e]:d}));return a};goog.getMsgWithFallback=function(a,b){return a};goog.exportSymbol=function(a,b,c){goog.exportPath_(a,b,!0,c)};goog.exportProperty=function(a,b,c){a[b]=c};
|
|
88
|
+
goog.inherits=function(a,b){function c(){}c.prototype=b.prototype;a.superClass_=b.prototype;a.prototype=new c;a.prototype.constructor=a;a.base=function(d,e,f){for(var g=Array(arguments.length-2),h=2;h<arguments.length;h++)g[h-2]=arguments[h];return b.prototype[e].apply(d,g)}};goog.scope=function(a){if(goog.isInModuleLoader_())throw Error("goog.scope is not supported within a module.");a.call(goog.global)};COMPILED||(goog.global.COMPILED=COMPILED);
|
|
91
89
|
goog.defineClass=function(a,b){var c=b.constructor,d=b.statics;c&&c!=Object.prototype.constructor||(c=function(){throw Error("cannot instantiate an interface (no constructor defined).");});c=goog.defineClass.createSealingConstructor_(c,a);a&&goog.inherits(c,a);delete b.constructor;delete b.statics;goog.defineClass.applyProperties_(c.prototype,b);null!=d&&(d instanceof Function?d(c):goog.defineClass.applyProperties_(c,d));return c};goog.defineClass.SEAL_CLASS_INSTANCES=goog.DEBUG;
|
|
92
90
|
goog.defineClass.createSealingConstructor_=function(a,b){return goog.defineClass.SEAL_CLASS_INSTANCES?function(){var c=a.apply(this,arguments)||this;c[goog.UID_PROPERTY_]=c[goog.UID_PROPERTY_];return c}:a};goog.defineClass.OBJECT_PROTOTYPE_FIELDS_="constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf".split(" ");
|
|
93
91
|
goog.defineClass.applyProperties_=function(a,b){for(var c in b)Object.prototype.hasOwnProperty.call(b,c)&&(a[c]=b[c]);for(var d=0;d<goog.defineClass.OBJECT_PROTOTYPE_FIELDS_.length;d++)c=goog.defineClass.OBJECT_PROTOTYPE_FIELDS_[d],Object.prototype.hasOwnProperty.call(b,c)&&(a[c]=b[c])};goog.identity_=function(a){return a};
|
|
94
92
|
goog.createTrustedTypesPolicy=function(a){var b=null,c=goog.global.trustedTypes;if(!c||!c.createPolicy)return b;try{b=c.createPolicy(a,{createHTML:goog.identity_,createScript:goog.identity_,createScriptURL:goog.identity_})}catch(d){goog.logToConsole_(d.message)}return b};
|
|
95
93
|
!COMPILED&&goog.DEPENDENCIES_ENABLED&&(goog.isEdge_=function(){return!!(goog.global.navigator&&goog.global.navigator.userAgent?goog.global.navigator.userAgent:"").match(/Edge\/(\d+)(\.\d)*/i)},goog.inHtmlDocument_=function(){var a=goog.global.document;return null!=a&&"write"in a},goog.isDocumentLoading_=function(){var a=goog.global.document;return a.attachEvent?"complete"!=a.readyState:"loading"==a.readyState},goog.findBasePath_=function(){if(void 0!=goog.global.CLOSURE_BASE_PATH&&"string"===typeof goog.global.CLOSURE_BASE_PATH)goog.basePath=
|
|
96
|
-
goog.global.CLOSURE_BASE_PATH;else if(goog.inHtmlDocument_()){var a=goog.global.document,b=a.currentScript;a=b?[b]:a.getElementsByTagName("SCRIPT");for(b=a.length-1;0<=b;--b){var c=a[b].src,d=c.lastIndexOf("?");d=-1==d?c.length:d;if("base.js"==c.
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
this.
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
d&&
|
|
103
|
-
this.
|
|
104
|
-
|
|
105
|
-
a
|
|
106
|
-
|
|
107
|
-
function(a){
|
|
108
|
-
b
|
|
109
|
-
|
|
110
|
-
function(
|
|
111
|
-
goog.
|
|
112
|
-
var f='<script src="'+this.path+'"'+c+(goog.Dependency.defer_?" defer":"")+' id="script-'+e+'">\x3c/script>';f+="<script"+c+">";f=goog.Dependency.defer_?f+("document.getElementById('script-"+e+"').onload = function() {\n goog.Dependency.callback_('"+e+"', this);\n};\n"):f+("goog.Dependency.callback_('"+e+"', document.getElementById('script-"+e+"'));");f+="\x3c/script>";b.write(goog.TRUSTED_TYPES_POLICY_?goog.TRUSTED_TYPES_POLICY_.createHTML(f):f)}else{var g=b.createElement("script");g.defer=goog.Dependency.defer_;
|
|
113
|
-
g.async=!1;c&&(g.nonce=c);g.onload=function(){g.onload=null;a.loaded()};g.src=goog.TRUSTED_TYPES_POLICY_?goog.TRUSTED_TYPES_POLICY_.createScriptURL(this.path):this.path;b.head.appendChild(g)}}else goog.logToConsole_("Cannot use default debug loader outside of HTML documents."),"deps.js"==this.relativePath?(goog.logToConsole_("Consider setting CLOSURE_IMPORT_SCRIPT before loading base.js, or setting CLOSURE_NO_DEPS to true."),a.loaded()):a.pause()},goog.Es6ModuleDependency=function(a,b,c,d,e){goog.Dependency.call(this,
|
|
114
|
-
a,b,c,d,e)},goog.inherits(goog.Es6ModuleDependency,goog.Dependency),goog.Es6ModuleDependency.prototype.load=function(a){function b(l,m){var n="",p=goog.getScriptNonce_();p&&(n=' nonce="'+p+'"');n=m?'<script type="module" crossorigin'+n+">"+m+"\x3c/script>":'<script type="module" crossorigin src="'+l+'"'+n+">\x3c/script>";d.write(goog.TRUSTED_TYPES_POLICY_?goog.TRUSTED_TYPES_POLICY_.createHTML(n):n)}function c(l,m){var n=d.createElement("script");n.defer=!0;n.async=!1;n.type="module";n.setAttribute("crossorigin",
|
|
94
|
+
goog.global.CLOSURE_BASE_PATH;else if(goog.inHtmlDocument_()){var a=goog.global.document,b=a.currentScript;a=b?[b]:a.getElementsByTagName("SCRIPT");for(b=a.length-1;0<=b;--b){var c=a[b].src,d=c.lastIndexOf("?");d=-1==d?c.length:d;if("base.js"==c.slice(d-7,d)){goog.basePath=c.slice(0,d-7);break}}}},goog.findBasePath_(),goog.protectScriptTag_=function(a){return a.replace(/<\/(SCRIPT)/ig,"\\x3c/$1")},goog.DebugLoader_=function(){this.dependencies_={};this.idToPath_={};this.written_={};this.loadingDeps_=
|
|
95
|
+
[];this.depsToLoad_=[];this.paused_=!1;this.factory_=new goog.DependencyFactory;this.deferredCallbacks_={};this.deferredQueue_=[]},goog.DebugLoader_.prototype.bootstrap=function(a,b){function c(){d&&(goog.global.setTimeout(d,0),d=null)}var d=b;if(a.length){b=[];for(var e=0;e<a.length;e++){var f=this.getPathFromDeps_(a[e]);if(!f)throw Error("Unregonized namespace: "+a[e]);b.push(this.dependencies_[f])}f=goog.require;var g=0;for(e=0;e<a.length;e++)f(a[e]),b[e].onLoad(function(){++g==a.length&&c()})}else c()},
|
|
96
|
+
goog.DebugLoader_.prototype.loadClosureDeps=function(){this.depsToLoad_.push(this.factory_.createDependency(goog.normalizePath_(goog.basePath+"deps.js"),"deps.js",[],[],{}));this.loadDeps_()},goog.DebugLoader_.prototype.requested=function(a,b){(a=this.getPathFromDeps_(a))&&(b||this.areDepsLoaded_(this.dependencies_[a].requires))&&(b=this.deferredCallbacks_[a])&&(delete this.deferredCallbacks_[a],b())},goog.DebugLoader_.prototype.setDependencyFactory=function(a){this.factory_=a},goog.DebugLoader_.prototype.load_=
|
|
97
|
+
function(a){if(this.getPathFromDeps_(a)){var b=this,c=[],d=function(e){var f=b.getPathFromDeps_(e);if(!f)throw Error("Bad dependency path or symbol: "+e);if(!b.written_[f]){b.written_[f]=!0;e=b.dependencies_[f];for(f=0;f<e.requires.length;f++)goog.isProvided_(e.requires[f])||d(e.requires[f]);c.push(e)}};d(a);a=!!this.depsToLoad_.length;this.depsToLoad_=this.depsToLoad_.concat(c);this.paused_||a||this.loadDeps_()}else goog.logToConsole_("goog.require could not find: "+a)},goog.DebugLoader_.prototype.loadDeps_=
|
|
98
|
+
function(){for(var a=this,b=this.paused_;this.depsToLoad_.length&&!b;)(function(){var c=!1,d=a.depsToLoad_.shift(),e=!1;a.loading_(d);var f={pause:function(){if(c)throw Error("Cannot call pause after the call to load.");b=!0},resume:function(){c?a.resume_():b=!1},loaded:function(){if(e)throw Error("Double call to loaded.");e=!0;a.loaded_(d)},pending:function(){for(var g=[],h=0;h<a.loadingDeps_.length;h++)g.push(a.loadingDeps_[h]);return g},setModuleState:function(g){goog.moduleLoaderState_={type:g,
|
|
99
|
+
moduleName:"",declareLegacyNamespace:!1}},registerEs6ModuleExports:function(g,h,k){k&&(goog.loadedModules_[k]={exports:h,type:goog.ModuleType.ES6,moduleId:k||""})},registerGoogModuleExports:function(g,h){goog.loadedModules_[g]={exports:h,type:goog.ModuleType.GOOG,moduleId:g}},clearModuleState:function(){goog.moduleLoaderState_=null},defer:function(g){if(c)throw Error("Cannot register with defer after the call to load.");a.defer_(d,g)},areDepsLoaded:function(){return a.areDepsLoaded_(d.requires)}};
|
|
100
|
+
try{d.load(f)}finally{c=!0}})();b&&this.pause_()},goog.DebugLoader_.prototype.pause_=function(){this.paused_=!0},goog.DebugLoader_.prototype.resume_=function(){this.paused_&&(this.paused_=!1,this.loadDeps_())},goog.DebugLoader_.prototype.loading_=function(a){this.loadingDeps_.push(a)},goog.DebugLoader_.prototype.loaded_=function(a){for(var b=0;b<this.loadingDeps_.length;b++)if(this.loadingDeps_[b]==a){this.loadingDeps_.splice(b,1);break}for(b=0;b<this.deferredQueue_.length;b++)if(this.deferredQueue_[b]==
|
|
101
|
+
a.path){this.deferredQueue_.splice(b,1);break}if(this.loadingDeps_.length==this.deferredQueue_.length&&!this.depsToLoad_.length)for(;this.deferredQueue_.length;)this.requested(this.deferredQueue_.shift(),!0);a.loaded()},goog.DebugLoader_.prototype.areDepsLoaded_=function(a){for(var b=0;b<a.length;b++){var c=this.getPathFromDeps_(a[b]);if(!c||!(c in this.deferredCallbacks_||goog.isProvided_(a[b])))return!1}return!0},goog.DebugLoader_.prototype.getPathFromDeps_=function(a){return a in this.idToPath_?
|
|
102
|
+
this.idToPath_[a]:a in this.dependencies_?a:null},goog.DebugLoader_.prototype.defer_=function(a,b){this.deferredCallbacks_[a.path]=b;this.deferredQueue_.push(a.path)},goog.LoadController=function(){},goog.LoadController.prototype.pause=function(){},goog.LoadController.prototype.resume=function(){},goog.LoadController.prototype.loaded=function(){},goog.LoadController.prototype.pending=function(){},goog.LoadController.prototype.registerEs6ModuleExports=function(a,b,c){},goog.LoadController.prototype.setModuleState=
|
|
103
|
+
function(a){},goog.LoadController.prototype.clearModuleState=function(){},goog.LoadController.prototype.defer=function(a){},goog.LoadController.prototype.areDepsLoaded=function(){},goog.Dependency=function(a,b,c,d,e){this.path=a;this.relativePath=b;this.provides=c;this.requires=d;this.loadFlags=e;this.loaded_=!1;this.loadCallbacks_=[]},goog.Dependency.prototype.getPathName=function(){var a=this.path,b=a.indexOf("://");0<=b&&(a=a.substring(b+3),b=a.indexOf("/"),0<=b&&(a=a.substring(b+1)));return a},
|
|
104
|
+
goog.Dependency.prototype.onLoad=function(a){this.loaded_?a():this.loadCallbacks_.push(a)},goog.Dependency.prototype.loaded=function(){this.loaded_=!0;var a=this.loadCallbacks_;this.loadCallbacks_=[];for(var b=0;b<a.length;b++)a[b]()},goog.Dependency.defer_=!1,goog.Dependency.callbackMap_={},goog.Dependency.registerCallback_=function(a){var b=Math.random().toString(32);goog.Dependency.callbackMap_[b]=a;return b},goog.Dependency.unregisterCallback_=function(a){delete goog.Dependency.callbackMap_[a]},
|
|
105
|
+
goog.Dependency.callback_=function(a,b){if(a in goog.Dependency.callbackMap_){for(var c=goog.Dependency.callbackMap_[a],d=[],e=1;e<arguments.length;e++)d.push(arguments[e]);c.apply(void 0,d)}else throw Error("Callback key "+a+" does not exist (was base.js loaded more than once?).");},goog.Dependency.prototype.load=function(a){if(goog.global.CLOSURE_IMPORT_SCRIPT)goog.global.CLOSURE_IMPORT_SCRIPT(this.path)?a.loaded():a.pause();else if(goog.inHtmlDocument_()){var b=goog.global.document;if("complete"==
|
|
106
|
+
b.readyState&&!goog.ENABLE_CHROME_APP_SAFE_SCRIPT_LOADING){if(/\bdeps.js$/.test(this.path)){a.loaded();return}throw Error('Cannot write "'+this.path+'" after document load');}var c=goog.getScriptNonce_();if(!goog.ENABLE_CHROME_APP_SAFE_SCRIPT_LOADING&&goog.isDocumentLoading_()){var d=function(h){h.readyState&&"complete"!=h.readyState?h.onload=d:(goog.Dependency.unregisterCallback_(e),a.loaded())};var e=goog.Dependency.registerCallback_(d);c=c?' nonce="'+c+'"':"";var f='<script src="'+this.path+'"'+
|
|
107
|
+
c+(goog.Dependency.defer_?" defer":"")+' id="script-'+e+'">\x3c/script>';f+="<script"+c+">";f=goog.Dependency.defer_?f+("document.getElementById('script-"+e+"').onload = function() {\n goog.Dependency.callback_('"+e+"', this);\n};\n"):f+("goog.Dependency.callback_('"+e+"', document.getElementById('script-"+e+"'));");f+="\x3c/script>";b.write(goog.TRUSTED_TYPES_POLICY_?goog.TRUSTED_TYPES_POLICY_.createHTML(f):f)}else{var g=b.createElement("script");g.defer=goog.Dependency.defer_;g.async=!1;c&&(g.nonce=
|
|
108
|
+
c);g.onload=function(){g.onload=null;a.loaded()};g.src=goog.TRUSTED_TYPES_POLICY_?goog.TRUSTED_TYPES_POLICY_.createScriptURL(this.path):this.path;b.head.appendChild(g)}}else goog.logToConsole_("Cannot use default debug loader outside of HTML documents."),"deps.js"==this.relativePath?(goog.logToConsole_("Consider setting CLOSURE_IMPORT_SCRIPT before loading base.js, or setting CLOSURE_NO_DEPS to true."),a.loaded()):a.pause()},goog.Es6ModuleDependency=function(a,b,c,d,e){goog.Dependency.call(this,a,
|
|
109
|
+
b,c,d,e)},goog.inherits(goog.Es6ModuleDependency,goog.Dependency),goog.Es6ModuleDependency.prototype.load=function(a){function b(l,m){var n="",p=goog.getScriptNonce_();p&&(n=' nonce="'+p+'"');l=m?'<script type="module" crossorigin'+n+">"+m+"\x3c/script>":'<script type="module" crossorigin src="'+l+'"'+n+">\x3c/script>";d.write(goog.TRUSTED_TYPES_POLICY_?goog.TRUSTED_TYPES_POLICY_.createHTML(l):l)}function c(l,m){var n=d.createElement("script");n.defer=!0;n.async=!1;n.type="module";n.setAttribute("crossorigin",
|
|
115
110
|
!0);var p=goog.getScriptNonce_();p&&(n.nonce=p);m?n.text=goog.TRUSTED_TYPES_POLICY_?goog.TRUSTED_TYPES_POLICY_.createScript(m):m:n.src=goog.TRUSTED_TYPES_POLICY_?goog.TRUSTED_TYPES_POLICY_.createScriptURL(l):l;d.head.appendChild(n)}if(goog.global.CLOSURE_IMPORT_SCRIPT)goog.global.CLOSURE_IMPORT_SCRIPT(this.path)?a.loaded():a.pause();else if(goog.inHtmlDocument_()){var d=goog.global.document,e=this;if(goog.isDocumentLoading_()){var f=b;goog.Dependency.defer_=!0}else f=c;var g=goog.Dependency.registerCallback_(function(){goog.Dependency.unregisterCallback_(g);
|
|
116
111
|
a.setModuleState(goog.ModuleType.ES6)});f(void 0,'goog.Dependency.callback_("'+g+'")');f(this.path,void 0);var h=goog.Dependency.registerCallback_(function(l){goog.Dependency.unregisterCallback_(h);a.registerEs6ModuleExports(e.path,l,goog.moduleLoaderState_.moduleName)});f(void 0,'import * as m from "'+this.path+'"; goog.Dependency.callback_("'+h+'", m)');var k=goog.Dependency.registerCallback_(function(){goog.Dependency.unregisterCallback_(k);a.clearModuleState();a.loaded()});f(void 0,'goog.Dependency.callback_("'+
|
|
117
112
|
k+'")')}else goog.logToConsole_("Cannot use default debug loader outside of HTML documents."),a.pause()},goog.TransformedDependency=function(a,b,c,d,e){goog.Dependency.call(this,a,b,c,d,e);this.contents_=null;this.lazyFetch_=!goog.inHtmlDocument_()||!("noModule"in goog.global.document.createElement("script"))},goog.inherits(goog.TransformedDependency,goog.Dependency),goog.TransformedDependency.prototype.load=function(a){function b(){e.contents_=goog.loadFileSync_(e.path);e.contents_&&(e.contents_=
|
|
118
113
|
e.transform(e.contents_),e.contents_&&(e.contents_+="\n//# sourceURL="+e.path))}function c(){e.lazyFetch_&&b();if(e.contents_){f&&a.setModuleState(goog.ModuleType.ES6);try{var l=e.contents_;e.contents_=null;goog.globalEval(goog.CLOSURE_EVAL_PREFILTER_.createScript(l));if(f)var m=goog.moduleLoaderState_.moduleName}finally{f&&a.clearModuleState()}f&&goog.global.$jscomp.require.ensure([e.getPathName()],function(){a.registerEs6ModuleExports(e.path,goog.global.$jscomp.require(e.getPathName()),m)});a.loaded()}}
|
|
119
114
|
function d(){var l=goog.global.document,m=goog.Dependency.registerCallback_(function(){goog.Dependency.unregisterCallback_(m);c()}),n=goog.getScriptNonce_();n="<script"+(n?' nonce="'+n+'"':"")+">"+goog.protectScriptTag_('goog.Dependency.callback_("'+m+'");')+"\x3c/script>";l.write(goog.TRUSTED_TYPES_POLICY_?goog.TRUSTED_TYPES_POLICY_.createHTML(n):n)}var e=this;if(goog.global.CLOSURE_IMPORT_SCRIPT)b(),this.contents_&&goog.global.CLOSURE_IMPORT_SCRIPT("",this.contents_)?(this.contents_=null,a.loaded()):
|
|
120
115
|
a.pause();else{var f=this.loadFlags.module==goog.ModuleType.ES6;this.lazyFetch_||b();var g=1<a.pending().length;if(goog.Dependency.defer_&&(g||goog.isDocumentLoading_()))a.defer(function(){c()});else{var h=goog.global.document;g=goog.inHtmlDocument_()&&("ActiveXObject"in goog.global||goog.isEdge_());if(f&&goog.inHtmlDocument_()&&goog.isDocumentLoading_()&&!g){goog.Dependency.defer_=!0;a.pause();var k=h.onreadystatechange;h.onreadystatechange=function(){"interactive"==h.readyState&&(h.onreadystatechange=
|
|
121
|
-
k,c(),a.resume());"function"===typeof k&&k.apply(void 0,arguments)}}else goog.inHtmlDocument_()&&goog.isDocumentLoading_()?d():c()}}},goog.TransformedDependency.prototype.transform=function(a){},goog.
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
null,goog.global.CLOSURE_NO_DEPS||goog.debugLoader_.loadClosureDeps(),goog.bootstrap=function(a,b){goog.debugLoader_.bootstrap(a,b)});if(!COMPILED){var isChrome87=!1;try{isChrome87=eval(goog.global.trustedTypes.emptyScript)!==goog.global.trustedTypes.emptyScript}catch(a){}goog.CLOSURE_EVAL_PREFILTER_=goog.global.trustedTypes&&isChrome87&&goog.createTrustedTypesPolicy("goog#base#devonly#eval")||{createScript:goog.identity_}};/*
|
|
116
|
+
k,c(),a.resume());"function"===typeof k&&k.apply(void 0,arguments)}}else goog.inHtmlDocument_()&&goog.isDocumentLoading_()?d():c()}}},goog.TransformedDependency.prototype.transform=function(a){},goog.PreTranspiledEs6ModuleDependency=function(a,b,c,d,e){goog.TransformedDependency.call(this,a,b,c,d,e)},goog.inherits(goog.PreTranspiledEs6ModuleDependency,goog.TransformedDependency),goog.PreTranspiledEs6ModuleDependency.prototype.transform=function(a){return a},goog.GoogModuleDependency=function(a,b,
|
|
117
|
+
c,d,e){goog.TransformedDependency.call(this,a,b,c,d,e)},goog.inherits(goog.GoogModuleDependency,goog.TransformedDependency),goog.GoogModuleDependency.prototype.transform=function(a){return goog.LOAD_MODULE_USING_EVAL&&void 0!==goog.global.JSON?"goog.loadModule("+goog.global.JSON.stringify(a+"\n//# sourceURL="+this.path+"\n")+");":'goog.loadModule(function(exports) {"use strict";'+a+"\n;return exports});\n//# sourceURL="+this.path+"\n"},goog.DebugLoader_.prototype.addDependency=function(a,b,c,d){b=
|
|
118
|
+
b||[];a=a.replace(/\\/g,"/");var e=goog.normalizePath_(goog.basePath+a);d&&"boolean"!==typeof d||(d=d?{module:goog.ModuleType.GOOG}:{});c=this.factory_.createDependency(e,a,b,c,d);this.dependencies_[e]=c;for(c=0;c<b.length;c++)this.idToPath_[b[c]]=e;this.idToPath_[a]=e},goog.DependencyFactory=function(){},goog.DependencyFactory.prototype.createDependency=function(a,b,c,d,e){return e.module==goog.ModuleType.GOOG?new goog.GoogModuleDependency(a,b,c,d,e):e.module==goog.ModuleType.ES6?goog.ASSUME_ES_MODULES_TRANSPILED?
|
|
119
|
+
new goog.PreTranspiledEs6ModuleDependency(a,b,c,d,e):new goog.Es6ModuleDependency(a,b,c,d,e):new goog.Dependency(a,b,c,d,e)},goog.debugLoader_=new goog.DebugLoader_,goog.loadClosureDeps=function(){goog.debugLoader_.loadClosureDeps()},goog.setDependencyFactory=function(a){goog.debugLoader_.setDependencyFactory(a)},goog.TRUSTED_TYPES_POLICY_=goog.TRUSTED_TYPES_POLICY_NAME?goog.createTrustedTypesPolicy(goog.TRUSTED_TYPES_POLICY_NAME+"#base"):null,goog.global.CLOSURE_NO_DEPS||goog.debugLoader_.loadClosureDeps(),
|
|
120
|
+
goog.bootstrap=function(a,b){goog.debugLoader_.bootstrap(a,b)});if(!COMPILED){var isChrome87=!1;try{isChrome87=eval(goog.global.trustedTypes.emptyScript)!==goog.global.trustedTypes.emptyScript}catch(a){}goog.CLOSURE_EVAL_PREFILTER_=goog.global.trustedTypes&&isChrome87&&goog.createTrustedTypesPolicy("goog#base#devonly#eval")||{createScript:goog.identity_}};/*
|
|
127
121
|
@license
|
|
128
122
|
Shaka Player
|
|
129
123
|
Copyright 2016 Google LLC
|
|
@@ -259,7 +253,7 @@ this.progressCircleBar_.classList.add("progress-circle-bar");a.appendChild(this.
|
|
|
259
253
|
shakaDemo.AssetCard.prototype.addFeatureIcon_=function(a,b){var c=document.createElement("div");c.classList.add("feature-icon");c.setAttribute("icon",a);this.featureIconsContainer_.appendChild(c);shakaDemo.Tooltips.make(c,b)};
|
|
260
254
|
shakaDemo.AssetCard.prototype.addFeatureIcons_=function(a){var b=shakaAssets.Feature,c=shakaAssets.KeySystem;b=(new Map).set(b.SUBTITLES,"subtitles").set(b.CAPTIONS,"closed_caption").set(b.LIVE,"live").set(b.TRICK_MODE,"trick_mode").set(b.HIGH_DEFINITION,"high_definition").set(b.ULTRA_HIGH_DEFINITION,"ultra_high_definition").set(b.SURROUND,"surround_sound").set(b.MULTIPLE_LANGUAGES,"multiple_languages").set(b.ADS,"ad").set(b.AUDIO_ONLY,"audio_only");for(var d=$jscomp.makeIterator(a.features),e=d.next();!e.done;e=
|
|
261
255
|
d.next()){e=e.value;var f=b.get(e);f&&this.addFeatureIcon_(f,e)}a=$jscomp.makeIterator(a.drm);for(b=a.next();!b.done;b=a.next())switch(b=b.value,b){case c.WIDEVINE:this.addFeatureIcon_("widevine",b);break;case c.CLEAR_KEY:this.addFeatureIcon_("clear_key",b);break;case c.PLAYREADY:this.addFeatureIcon_("playready",b)}};shakaDemo.AssetCard.prototype.markAsUnsupported=function(a){this.card_.classList.add("asset-card-unsupported");this.makeUnsupportedButton_(shakaDemo.MessageIds.UNSUPPORTED,a)};
|
|
262
|
-
shakaDemo.AssetCard.prototype.makeUnsupportedButton_=function(a,b){
|
|
256
|
+
shakaDemo.AssetCard.prototype.makeUnsupportedButton_=function(a,b){a=this.addButton(a,function(){});a.setAttribute("disabled","");var c=document.createElement("div");a.parentElement&&a.parentElement.removeChild(a);c.classList.add("tooltip-attach-point");c.appendChild(a);this.actions_.appendChild(c);shakaDemo.Tooltips.make(c,b);return a};shakaDemo.AssetCard.prototype.selectByAsset=function(a){this.card_.classList.remove("selected");this.asset_==a&&this.card_.classList.add("selected")};
|
|
263
257
|
shakaDemo.AssetCard.prototype.remakeButtons=function(){shaka.util.Dom.removeAllChildren(this.actions_);this.remakeButtonsFn_(this)};
|
|
264
258
|
shakaDemo.AssetCard.prototype.addStoreButton=function(){var a=this,b=function(f,g,h){g.classList.add("asset-card-corner-button");g=document.createElement("i");g.textContent=h;g.classList.add("material-icons-round");f.appendChild(g)},c=shakaDemoMain.getAssetUnsupportedReason(this.asset_,!0);c||goog.asserts.assert(this.asset_.storeCallback,"A storage callback is expected for all supported assets!");if(c)c=this.makeUnsupportedButton_(null,c),b(c,c.parentElement||c,"get_app");else if(this.asset_.isStored()){var d=
|
|
265
259
|
this.addButton(null,function(){a.attachDeleteDialog_(d)});b(d,d,"offline_pin")}else{var e=this.addButton(null,function(){return $jscomp.asyncExecutePromiseGeneratorProgram(function(f){if(1==f.nextAddress)return e.disabled=!0,f.yield(a.asset_.storeCallback(),2);a.remakeButtons();f.jumpToEnd()})});b(e,e,"get_app")}};
|
|
@@ -267,7 +261,7 @@ shakaDemo.AssetCard.prototype.attachDeleteDialog_=function(a){var b=this,c=this.
|
|
|
267
261
|
shakaDemo.AssetCard.prototype.makeYesNoDialogue_=function(a,b,c){var d=this,e=document.createElement("dialog");e.classList.add("mdl-dialog");a.appendChild(e);e.showModal||dialogPolyfill.registerDialog(e);a=document.createElement("h2");a.classList.add("mdl-typography--title");a.textContent=shakaDemoMain.getLocalizedString(b);e.appendChild(a);var f=document.createElement("div");e.appendChild(f);b=function(g,h){var k=document.createElement("button");k.textContent=shakaDemoMain.getLocalizedString(g);
|
|
268
262
|
k.classList.add("mdl-button");k.classList.add("mdl-button--colored");k.classList.add("mdl-js-button");k.classList.add("mdl-js-ripple-effect");k.addEventListener("click",function(){h()});f.appendChild(k);k.blur()};b(shakaDemo.MessageIds.PROMPT_YES,function(){return $jscomp.asyncExecutePromiseGeneratorProgram(function(g){if(1==g.nextAddress)return e.close(),g.yield(c(),2);d.remakeButtons();g.jumpToEnd()})});b(shakaDemo.MessageIds.PROMPT_NO,function(){e.close()});e.showModal()};
|
|
269
263
|
shakaDemo.AssetCard.prototype.updateProgress=function(){if(1>this.asset_.storedProgress){this.progressCircle_.classList.remove("hidden");for(var a=$jscomp.makeIterator(this.actions_.childNodes),b=a.next();!b.done;b=a.next())b=b.value,b instanceof HTMLButtonElement&&(b.disabled=!0)}else for(this.progressCircle_.classList.add("hidden"),a=$jscomp.makeIterator(this.actions_.childNodes),b=a.next();!b.done;b=a.next())b=b.value,b instanceof HTMLButtonElement&&(b.disabled=!1);this.styleProgressCircle_(this.asset_.storedProgress)};
|
|
270
|
-
shakaDemo.AssetCard.prototype.addButton=function(a,b,c){var d=this,e=document.createElement("button");e.classList.add("mdl-button");e.classList.add("mdl-button--colored");e.classList.add("mdl-js-button");e.classList.add("mdl-js-ripple-effect");e.textContent=a?shakaDemoMain.getLocalizedString(a):"";e.addEventListener("click",function(){e.hasAttribute("disabled")||(c?d.makeYesNoDialogue_(d.actions_,c,b):b())});this.actions_.appendChild(e);return e};shakaDemo.CloseButton=function(a,b){
|
|
264
|
+
shakaDemo.AssetCard.prototype.addButton=function(a,b,c){var d=this,e=document.createElement("button");e.classList.add("mdl-button");e.classList.add("mdl-button--colored");e.classList.add("mdl-js-button");e.classList.add("mdl-js-ripple-effect");e.textContent=a?shakaDemoMain.getLocalizedString(a):"";e.addEventListener("click",function(){e.hasAttribute("disabled")||(c?d.makeYesNoDialogue_(d.actions_,c,b):b())});this.actions_.appendChild(e);return e};shakaDemo.CloseButton=function(a,b){a=shaka.ui.Element.call(this,a,b)||this;a.button_=document.createElement("button");a.button_.classList.add("material-icons-round");a.button_.classList.add("close-button");a.button_.textContent="close";a.parent.appendChild(a.button_);a.button_.addEventListener("click",function(){shakaDemoMain.unload()});return a};$jscomp.inherits(shakaDemo.CloseButton,shaka.ui.Element);shakaDemo.CloseButton.Factory=function(){};
|
|
271
265
|
shakaDemo.CloseButton.Factory.prototype.create=function(a,b){return new shakaDemo.CloseButton(a,b)};shakaDemo.Input=function(a,b,c,d,e){var f=this;this.container_=document.createElement(c);a.latestElementContainer.appendChild(this.container_);this.input_=document.createElement(b);this.input_.onchange=function(){e(f.input_,f)};"textarea"==b&&(this.input_.oninput=function(){e(f.input_,f)});this.input_.id=shakaDemo.Input.generateNewId_("input");this.container_.appendChild(this.input_);a.latestTooltip&&(b=document.createElement("span"),b.textContent=a.latestTooltip,b.classList.add("hidden"),b.id=shakaDemo.Input.generateNewId_("extra-info"),
|
|
272
266
|
this.container_.appendChild(b),this.input_.setAttribute("aria-describedby",b.id));this.extra_=null;d&&(this.extra_=document.createElement(d),this.container_.appendChild(this.extra_))};shakaDemo.Input.prototype.input=function(){return this.input_};shakaDemo.Input.prototype.container=function(){return this.container_};shakaDemo.Input.prototype.extra=function(){return this.extra_};
|
|
273
267
|
shakaDemo.Input.prototype.setValid=function(a){a?(this.input_.setCustomValidity(""),this.container_.classList.remove("is-invalid")):(this.input_.setCustomValidity("invalid"),this.container_.parentElement.classList.add("is-invalid"))};shakaDemo.Input.generateNewId_=function(a){var b=shakaDemo.Input.lastId_;shakaDemo.Input.lastId_+=1;return a+"-labeled-"+b};shakaDemo.Input.lastId_=0;
|
|
@@ -281,7 +275,7 @@ shakaDemo.NumberInput=function(a,b,c,d,e,f){shakaDemo.TextInput.call(this,a,b,c,
|
|
|
281
275
|
shakaDemo.InputContainer.prototype.open=function(){var a=this;!this.style_!=shakaDemo.InputContainer.Style.ACCORDION&&(this.table_.classList.remove("hidden"),setTimeout(function(){a.table_.classList.add("show")},20),this.header_.classList.add("mdl-button--colored"))};
|
|
282
276
|
shakaDemo.InputContainer.prototype.close=function(){var a=this;this.style_==shakaDemo.InputContainer.Style.ACCORDION&&(this.table_.classList.remove("show"),this.table_.addEventListener("transitionend",function(b){a.table_.classList.add("hidden")},{once:!0}),this.header_.classList.remove("mdl-button--colored"))};
|
|
283
277
|
shakaDemo.InputContainer.prototype.createHeader_=function(a,b){var c=this;this.style_==shakaDemo.InputContainer.Style.ACCORDION?(this.header_=document.createElement("button"),this.header_.classList.add("mdl-button--raised"),this.header_.classList.add("mdl-button"),this.header_.classList.add("mdl-js-button"),this.header_.classList.add("mdl-js-ripple-effect"),this.header_.addEventListener("click",function(){c.getIsOpen()?c.close():c.open()})):(this.header_=document.createElement("div"),this.header_.classList.add("input-header"));
|
|
284
|
-
this.header_.textContent=shakaDemoMain.getLocalizedString(b);a.appendChild(this.header_)};shakaDemo.InputContainer.prototype.addDocLink_=function(a,b){var c=document.createElement("a");c.href=b;c.target="_blank";c.classList.add("mdl-button");c.classList.add("mdl-js-button");c.classList.add("mdl-js-ripple-effect");c.classList.add("mdl-button--colored");
|
|
278
|
+
this.header_.textContent=shakaDemoMain.getLocalizedString(b);a.appendChild(this.header_)};shakaDemo.InputContainer.prototype.addDocLink_=function(a,b){var c=document.createElement("a");c.href=b;c.target="_blank";c.classList.add("mdl-button");c.classList.add("mdl-js-button");c.classList.add("mdl-js-ripple-effect");c.classList.add("mdl-button--colored");b=document.createElement("i");b.classList.add("material-icons-round");b.textContent="help";c.appendChild(b);a.appendChild(c)};
|
|
285
279
|
shakaDemo.InputContainer.prototype.setDefaultRowClass=function(a){this.defaultRowClass_=a};shakaDemo.InputContainer.prototype.getClassList=function(){return this.table_.classList};
|
|
286
280
|
shakaDemo.InputContainer.prototype.addRow=function(a,b,c){c=c||this.defaultRowClass_||"";this.latestRow_=document.createElement("div");c&&this.latestRow_.classList.add(c);this.table_.appendChild(this.latestRow_);c="input-container-row-"+this.numRows_;this.numRows_+=1;if(a){var d=document.createElement("label");d.setAttribute("for",c);d.classList.add("input-container-label");var e=document.createElement("b");e.textContent=shakaDemoMain.getLocalizedString(a);d.appendChild(e);this.latestRow_.appendChild(d)}this.latestElementContainer=
|
|
287
281
|
document.createElement("div");this.latestRow_.appendChild(this.latestElementContainer);this.latestElementContainer.classList.add("input-container-row");this.latestElementContainer.id=c;if(this.latestTooltip=b)shakaDemo.Tooltips.make(this.latestRow_,b),this.latestRow_.setAttribute("tabindex",-1),this.latestRow_.classList.add("borderless")};shakaDemo.InputContainer.Style={VERTICAL:"input-container-style-vertical",ACCORDION:"input-container-style-accordion",FLEX:"input-container-style-flex"};var shakaDemoConfig;shakaDemo.Config=function(a){var b=this;this.container_=a;this.sections_=[];this.latestInput_=null;this.reload_();document.addEventListener("shaka-main-config-change",function(){b.reloadAndSaveState_()});document.addEventListener("shaka-main-locale-changed",function(){b.reloadAndSaveState_()});document.addEventListener("shaka-main-drawer-state-change",function(){b.setContentAvailability_(shakaDemoMain.getIsDrawerOpen())});this.setContentAvailability_(shakaDemoMain.getIsDrawerOpen())};
|
|
@@ -300,10 +294,10 @@ shakaDemo.Config.prototype.addAbrSection_=function(){var a=shakaDemo.MessageIds,
|
|
|
300
294
|
"abr.switchInterval",!0).addNumberInput_(a.MIN_TOTAL_BYTES,"abr.advanced.minTotalBytes").addNumberInput_(a.MIN_BYTES,"abr.advanced.minBytes").addNumberInput_(a.FAST_HALF_LIFE,"abr.advanced.fastHalfLife",!0).addNumberInput_(a.SLOW_HALF_LIFE,"abr.advanced.slowHalfLife",!0).addBoolInput_(a.RESTRICT_TO_ELEMENT_SIZE,"abr.restrictToElementSize").addBoolInput_(a.RESTRICT_TO_SCREEN_SIZE,"abr.restrictToScreenSize").addBoolInput_(a.IGNORE_DEVICE_PIXEL_RATIO,"abr.ignoreDevicePixelRatio");this.addRetrictionsSection_("abr",
|
|
301
295
|
a.ADAPTATION_RESTRICTIONS_SECTION_HEADER)};shakaDemo.Config.prototype.addCmcdSection_=function(){var a=shakaDemo.MessageIds,b=this.resolveExternLink_(".CmcdConfiguration");this.addSection_(a.CMCD_SECTION_HEADER,b).addBoolInput_(a.ENABLED,"cmcd.enabled").addTextInput_(a.SESSION_ID,"cmcd.sessionId").addTextInput_(a.CONTENT_ID,"cmcd.contentId").addBoolInput_(a.USE_HEADERS,"cmcd.useHeaders")};
|
|
302
296
|
shakaDemo.Config.prototype.addLcevcSection_=function(){var a=shakaDemo.MessageIds,b=this.resolveExternLink_(".LcevcConfiguration");this.addSection_(a.LCEVC_SECTION_HEADER,b).addBoolInput_(a.ENABLED,"lcevc.enabled").addBoolInput_(a.LCEVC_DYNAMIC_PERFORMANCE_SCALING,"lcevc.dynamicPerformanceScaling").addNumberInput_(a.LCEVC_LOG_LEVEL,"lcevc.logLevel").addBoolInput_(a.LCEVC_DRAW_LOGO,"lcevc.drawLogo")};
|
|
303
|
-
shakaDemo.Config.prototype.addRetrictionsSection_=function(a,b){var c=shakaDemo.MessageIds
|
|
304
|
-
|
|
305
|
-
shakaDemo.Config.prototype.addRetrySection_=function(a,b){var c=shakaDemo.MessageIds
|
|
306
|
-
|
|
297
|
+
shakaDemo.Config.prototype.addRetrictionsSection_=function(a,b){var c=shakaDemo.MessageIds;a=(a?a+".":"")+"restrictions.";var d=this.resolveExternLink_(".Restrictions");this.addSection_(b,d).addNumberInput_(c.MIN_WIDTH,a+"minWidth").addNumberInput_(c.MAX_WIDTH,a+"maxWidth").addNumberInput_(c.MIN_HEIGHT,a+"minHeight").addNumberInput_(c.MAX_HEIGHT,a+"maxHeight").addNumberInput_(c.MIN_PIXELS,a+"minPixels").addNumberInput_(c.MAX_PIXELS,a+"maxPixels").addNumberInput_(c.MIN_FRAMERATE,a+"minFrameRate").addNumberInput_(c.MAX_FRAMERATE,
|
|
298
|
+
a+"maxFrameRate").addNumberInput_(c.MIN_BANDWIDTH,a+"minBandwidth").addNumberInput_(c.MAX_BANDWIDTH,a+"maxBandwidth")};
|
|
299
|
+
shakaDemo.Config.prototype.addRetrySection_=function(a,b){var c=shakaDemo.MessageIds;a+=".retryParameters.";var d=this.resolveExternLink_(".RetryParameters");this.addSection_(b,d).addNumberInput_(c.MAX_ATTEMPTS,a+"maxAttempts").addNumberInput_(c.BASE_DELAY,a+"baseDelay",!0).addNumberInput_(c.BACKOFF_FACTOR,a+"backoffFactor",!0).addNumberInput_(c.FUZZ_FACTOR,a+"fuzzFactor",!0).addNumberInput_(c.TIMEOUT,a+"timeout",!0).addNumberInput_(c.STALL_TIMEOUT,a+"stallTimeout",!0).addNumberInput_(c.CONNECTION_TIMEOUT,
|
|
300
|
+
a+"connectionTimeout",!0)};shakaDemo.Config.prototype.addOfflineSection_=function(){var a=shakaDemo.MessageIds,b=this.resolveExternLink_(".OfflineConfiguration");this.addSection_(a.OFFLINE_SECTION_HEADER,b).addBoolInput_(a.USE_PERSISTENT_LICENSES,"offline.usePersistentLicense").addNumberInput_(a.NUMBER_OF_PARALLEL_DOWNLOADS,"offline.numberOfParallelDownloads")};
|
|
307
301
|
shakaDemo.Config.prototype.addStreamingSection_=function(){var a=shakaDemo.MessageIds,b=this.resolveExternLink_(".StreamingConfiguration");this.addSection_(a.STREAMING_SECTION_HEADER,b).addNumberInput_(a.GAP_DETECTION_THRESHOLD,"streaming.gapDetectionThreshold",!0).addNumberInput_(a.BUFFERING_GOAL,"streaming.bufferingGoal",!0).addNumberInput_(a.DURATION_BACKOFF,"streaming.durationBackoff",!0).addNumberInput_(a.REBUFFERING_GOAL,"streaming.rebufferingGoal",!0).addNumberInput_(a.BUFFER_BEHIND,"streaming.bufferBehind",
|
|
308
302
|
!0).addNumberInput_(a.SAFE_SEEK_OFFSET,"streaming.safeSeekOffset",!0).addNumberInput_(a.STALL_THRESHOLD,"streaming.stallThreshold",!0).addNumberInput_(a.SAFE_SKIP_DISTANCE,"streaming.stallSkip",!0).addNumberInput_(a.INACCURATE_MANIFEST_TOLERANCE,"streaming.inaccurateManifestTolerance",!0).addBoolInput_(a.LOW_LATENCY,"streaming.lowLatencyMode").addBoolInput_(a.AUTO_LOW_LATENCY,"streaming.autoLowLatencyMode").addBoolInput_(a.FORCE_HTTPS,"streaming.forceHTTPS").addBoolInput_(a.PREFER_NATIVE_HLS,"streaming.preferNativeHls").addNumberInput_(a.UPDATE_INTERVAL_SECONDS,
|
|
309
303
|
"streaming.updateIntervalSeconds",!0).addBoolInput_(a.DISPATCH_ALL_EMSG_BOXES,"streaming.dispatchAllEmsgBoxes").addBoolInput_(a.OBSERVE_QUALITY_CHANGES,"streaming.observeQualityChanges").addNumberInput_(a.MAX_DISABLED_TIME,"streaming.maxDisabledTime");shakaDemoMain.getNativeControlsEnabled()?(this.addCustomBoolInput_(a.ALWAYS_STREAM_TEXT,function(c){},a.ALWAYS_STREAM_TEXT_WARNING),this.latestInput_.input().disabled=!0,this.latestInput_.input().checked=!0):this.addBoolInput_(a.ALWAYS_STREAM_TEXT,"streaming.alwaysStreamText");
|
|
@@ -326,33 +320,33 @@ shakaDemo.Custom=function(a){var b=this;this.dialog_=document.createElement("dia
|
|
|
326
320
|
c.appendChild(d);document.addEventListener("shaka-main-selected-asset-changed",function(){b.updateSelected_()});document.addEventListener("shaka-main-offline-progress",function(){b.updateOfflineProgress_()});document.addEventListener("shaka-main-locale-changed",function(){b.remakeSavedList_()});document.addEventListener("shaka-main-page-changed",function(){b.savedList_.childNodes.length||a.classList.contains("hidden")||b.remakeSavedList_()})};
|
|
327
321
|
shakaDemo.Custom.init=function(){var a=shakaDemoMain.addNavButton("custom");shakaDemoCustom=new shakaDemo.Custom(a.container)};shakaDemo.Custom.prototype.assets=function(){return Array.from(this.assets_)};shakaDemo.Custom.prototype.updateOfflineProgress_=function(){for(var a=$jscomp.makeIterator(this.assetCards_),b=a.next();!b.done;b=a.next())b.value.updateProgress()};
|
|
328
322
|
shakaDemo.Custom.prototype.makeField_=function(a,b,c,d,e){a.addRow(null,null);a=new shakaDemo.TextInput(a,b,d,e);a.extra().textContent=b;c(a.input(),a.container())};
|
|
329
|
-
shakaDemo.Custom.prototype.makeAssetDialogContentsHeaders_=function(a,b){var c=this,d=document.createElement("div"),e=[],f=function(k
|
|
330
|
-
|
|
331
|
-
$jscomp.makeIterator(a.licenseRequestHeaders.keys())
|
|
332
|
-
shakaDemo.Custom.prototype.makeAssetDialogContentsHLS_=function(a,b){
|
|
333
|
-
|
|
334
|
-
shakaDemo.Custom.prototype.makeAssetDialogContentsAds_=function(a,b){var c=this
|
|
335
|
-
a.imaContentSrcId);c.manifestField_.required=c.checkManifestRequired_(a)},function(
|
|
336
|
-
this.makeField_(e,f,
|
|
337
|
-
shakaDemo.Custom.prototype.makeAssetDialogContentsDrm_=function(a,b){
|
|
338
|
-
this.makeField_(
|
|
339
|
-
|
|
340
|
-
shakaDemo.Custom.prototype.makeAssetDialogContentsExtra_=function(a,b){var c=document.createElement("div"),d=new shakaDemo.InputContainer(c,null,shakaDemo.InputContainer.Style.FLEX,null);d.getClassList().add("wide-input");d.setDefaultRowClass("wide-input");var e=shakaDemoMain.getLocalizedString(shakaDemo.MessageIds.EXTRA_SHAKA_PLAYER_CONFIG);this.makeField_(d,e,function(f,g){f.setAttribute("rows",10);a.extraConfig&&(f.value=JSON.stringify(a.extraConfig,null,2));b.push(f);
|
|
341
|
-
|
|
323
|
+
shakaDemo.Custom.prototype.makeAssetDialogContentsHeaders_=function(a,b){var c=this,d=document.createElement("div"),e=[],f=function(h,k){var l=document.createElement("div");d.appendChild(l);var m=new shakaDemo.InputContainer(l,shakaDemo.MessageIds.LICENSE_HEADER_TITLE,shakaDemo.InputContainer.Style.VERTICAL,null),n={headerName:h,div:l};e.push(n);var p=!h,q=function(r,u){h&&a.licenseRequestHeaders.delete(h);h=r;n.headerName=r;k=u;if(h&&k)for(p&&(p=!1,f(null,null),componentHandler.upgradeDom()),a.addLicenseRequestHeader(h,
|
|
324
|
+
k),r=$jscomp.makeIterator(e),u=r.next();!u.done;u=r.next()){if(u=u.value,u!=n&&h==u.headerName){r=e.indexOf(u);e.splice(r,1);d.removeChild(u.div);break}}else p||d.removeChild(l)},t=shakaDemoMain.getLocalizedString(shakaDemo.MessageIds.LICENSE_HEADER_NAME);c.makeField_(m,t,function(r,u){h&&(r.value=h)},function(r){q(r.value,k)});t=shakaDemoMain.getLocalizedString(shakaDemo.MessageIds.LICENSE_HEADER_VALUE);c.makeField_(m,t,function(r,u){k&&(r.value=k)},function(r){q(h,r.value)})};if(0!=a.licenseRequestHeaders.size){b=
|
|
325
|
+
$jscomp.makeIterator(a.licenseRequestHeaders.keys());for(var g=b.next();!g.done;g=b.next())g=g.value,f(g,a.licenseRequestHeaders.get(g))}f(null,null);return d};
|
|
326
|
+
shakaDemo.Custom.prototype.makeAssetDialogContentsHLS_=function(a,b){b=document.createElement("div");var c=new shakaDemo.InputContainer(b,null,shakaDemo.InputContainer.Style.FLEX,null);c.getClassList().add("wide-input");c.setDefaultRowClass("wide-input");var d=shakaDemoMain.getLocalizedString(shakaDemo.MessageIds.HLS_FULL_MIME_TYPE);this.makeField_(c,d,function(e,f){a.mediaPlaylistFullMimeType&&(e.value=a.mediaPlaylistFullMimeType);f=shaka.util.PlayerConfiguration.createDefault();e.placeholder=f.manifest.hls.mediaPlaylistFullMimeType},
|
|
327
|
+
function(e){a.setMediaPlaylistFullMimeType(e.value)});return b};
|
|
328
|
+
shakaDemo.Custom.prototype.makeAssetDialogContentsAds_=function(a,b){var c=this;b=document.createElement("div");var d=new shakaDemo.InputContainer(b,null,shakaDemo.InputContainer.Style.VERTICAL,null),e=shakaDemoMain.getLocalizedString(shakaDemo.MessageIds.AD_TAG_URL);this.makeField_(d,e,function(f,g){a.adTagUri&&(f.value=a.adTagUri)},function(f){a.adTagUri=f.value});e=shakaDemoMain.getLocalizedString(shakaDemo.MessageIds.IMA_CONTENT_SRC_ID);this.makeField_(d,e,function(f,g){a.imaContentSrcId&&(f.value=
|
|
329
|
+
a.imaContentSrcId);c.manifestField_.required=c.checkManifestRequired_(a)},function(f){a.imaContentSrcId=f.value;c.manifestField_.required=c.checkManifestRequired_(a)});e=shakaDemoMain.getLocalizedString(shakaDemo.MessageIds.IMA_VIDEO_ID);this.makeField_(d,e,function(f,g){a.imaVideoId&&(f.value=a.imaVideoId);c.manifestField_.required=c.checkManifestRequired_(a)},function(f){a.imaVideoId=f.value;c.manifestField_.required=c.checkManifestRequired_(a)});e=shakaDemoMain.getLocalizedString(shakaDemo.MessageIds.IMA_ASSET_KEY);
|
|
330
|
+
this.makeField_(d,e,function(f,g){a.imaAssetKey&&(f.value=a.imaAssetKey);c.manifestField_.required=c.checkManifestRequired_(a)},function(f){a.imaAssetKey=f.value;c.manifestField_.required=c.checkManifestRequired_(a)});return b};
|
|
331
|
+
shakaDemo.Custom.prototype.makeAssetDialogContentsDrm_=function(a,b){b=document.createElement("div");var c=new shakaDemo.InputContainer(b,null,shakaDemo.InputContainer.Style.VERTICAL,null),d,e,f=function(){var h=d.value,k=e.value;if(h){a.licenseServers.clear();for(var l=$jscomp.makeIterator(shakaDemo.Main.commonDrmSystems),m=l.next();!m.done;m=l.next())a.licenseServers.set(m.value,h);k&&a.licenseServers.set(k,h)}else a.licenseServers.clear()},g=shakaDemoMain.getLocalizedString(shakaDemo.MessageIds.LICENSE_SERVER_URL);
|
|
332
|
+
this.makeField_(c,g,function(h,k){d=h;(k=a.licenseServers.keys().next())&&k.value&&(h.value=a.licenseServers.get(k.value))},function(h){f()});g=shakaDemoMain.getLocalizedString(shakaDemo.MessageIds.LICENSE_CERTIFICATE_URL);this.makeField_(c,g,function(h,k){a.certificateUri&&(h.value=a.certificateUri)},function(h){a.certificateUri=h.value});g=shakaDemoMain.getLocalizedString(shakaDemo.MessageIds.DRM_SYSTEM);this.makeField_(c,g,function(h,k){e=h;k=a.licenseServers.keys();k=$jscomp.makeIterator(k);for(var l=
|
|
333
|
+
k.next();!l.done;l=k.next())if(l=l.value,!shakaDemo.Main.commonDrmSystems.includes(l)){h.value=l;break}},function(h){f()});return b};
|
|
334
|
+
shakaDemo.Custom.prototype.makeAssetDialogContentsExtra_=function(a,b){var c=document.createElement("div"),d=new shakaDemo.InputContainer(c,null,shakaDemo.InputContainer.Style.FLEX,null);d.getClassList().add("wide-input");d.setDefaultRowClass("wide-input");var e=shakaDemoMain.getLocalizedString(shakaDemo.MessageIds.EXTRA_SHAKA_PLAYER_CONFIG);this.makeField_(d,e,function(f,g){f.setAttribute("rows",10);a.extraConfig&&(f.value=JSON.stringify(a.extraConfig,null,2));b.push(f);f=document.createElement("span");
|
|
335
|
+
f.classList.add("mdl-textfield__error");f.textContent=shakaDemoMain.getLocalizedString(shakaDemo.MessageIds.INVALID_JSON_CONFIG_ERROR);g.appendChild(f)},function(f,g){try{if(f.value){var h=JSON.parse(f.value);a.extraConfig=h}else a.extraConfig=null;g.setValid(!0)}catch(k){g.setValid(!1)}},!0);return c};
|
|
342
336
|
shakaDemo.Custom.prototype.makeAssetDialogContentsMain_=function(a,b,c){var d=this,e=document.createElement("div"),f=new shakaDemo.InputContainer(e,null,shakaDemo.InputContainer.Style.VERTICAL,null),g=shakaDemoMain.getLocalizedString(shakaDemo.MessageIds.MANIFEST_URL);this.makeField_(f,g,function(h,k){h.value=a.manifestUri;b.push(h);var l=document.createElement("span");l.classList.add("mdl-textfield__error");l.textContent=shakaDemoMain.getLocalizedString(shakaDemo.MessageIds.MANIFEST_URL_ERROR);k.appendChild(l);
|
|
343
|
-
h.required=d.checkManifestRequired_(a);h.pattern="^(?!([\r\n\t\f\v ]+)$).*$";d.manifestField_=h},function(h){a.manifestUri=h.value});g=shakaDemoMain.getLocalizedString(shakaDemo.MessageIds.NAME);this.makeField_(f,g,function(h,k){h.value=a.name;b.push(h);var l=document.createElement("span");l.classList.add("mdl-textfield__error");l.textContent=shakaDemoMain.getLocalizedString(shakaDemo.MessageIds.NAME_ERROR);k.appendChild(l);h.required=!0;h.pattern="^(?!( *";
|
|
344
|
-
|
|
337
|
+
h.required=d.checkManifestRequired_(a);h.pattern="^(?!([\r\n\t\f\v ]+)$).*$";d.manifestField_=h},function(h){a.manifestUri=h.value});g=shakaDemoMain.getLocalizedString(shakaDemo.MessageIds.NAME);this.makeField_(f,g,function(h,k){h.value=a.name;b.push(h);var l=document.createElement("span");l.classList.add("mdl-textfield__error");l.textContent=shakaDemoMain.getLocalizedString(shakaDemo.MessageIds.NAME_ERROR);k.appendChild(l);h.required=!0;h.pattern="^(?!( *";k=$jscomp.makeIterator(d.assets_);for(l=
|
|
338
|
+
k.next();!l.done;l=k.next())l=l.value,l!=a&&(h.pattern+="|"+l.name.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"));h.pattern+=")$).*$"},function(h){a.name=h.value});g=shakaDemoMain.getLocalizedString(shakaDemo.MessageIds.ICON_URL);this.makeField_(f,g,function(h,k){a.iconUri&&(h.value=a.iconUri,k=document.createElement("img"),k.src=h.value,k.alt="",c.appendChild(k))},function(h){shaka.util.Dom.removeAllChildren(c);if(a.iconUri=h.value){var k=document.createElement("img");k.src=h.value;k.alt="";c.appendChild(k)}});
|
|
345
339
|
g=shakaDemoMain.getLocalizedString(shakaDemo.MessageIds.MIME_TYPE);this.makeField_(f,g,function(h,k){a.mimeType&&(h.value=a.mimeType)},function(h){a.mimeType=h.value||null});return e};shakaDemo.Custom.prototype.checkManifestRequired_=function(a){return!(a.imaContentSrcId&&a.imaVideoId||null!=a.imaAssetKey)};
|
|
346
340
|
shakaDemo.Custom.prototype.makeAssetDialogContentsFinish_=function(a,b){var c=this,d=document.createElement("tr"),e=shakaDemo.Custom.ButtonStyle_.RAISED,f=shakaDemoMain.getLocalizedString(shakaDemo.MessageIds.SAVE_BUTTON);d.appendChild(this.makeButton_(f,e,function(){for(var g=$jscomp.makeIterator(b),h=g.next();!h.done;h=g.next())if(!h.value.validity.valid)return;shakaDemoMain.setupOfflineSupport(a);c.assets_.add(a);c.saveAssetInfos_(c.assets_);c.remakeSavedList_();c.dialog_.close()}));f=shakaDemoMain.getLocalizedString(shakaDemo.MessageIds.CANCEL_BUTTON);
|
|
347
341
|
d.appendChild(this.makeButton_(f,e,function(){c.dialog_.close()}));return d};
|
|
348
342
|
shakaDemo.Custom.prototype.showAssetDialog_=function(a){var b=this;shaka.util.Dom.removeAllChildren(this.dialog_);var c=[],d=document.createElement("div"),e=this.makeAssetDialogContentsMain_(a,c,d),f=this.makeAssetDialogContentsDrm_(a,c),g=this.makeAssetDialogContentsHeaders_(a,c),h=this.makeAssetDialogContentsAds_(a,c),k=this.makeAssetDialogContentsHLS_(a,c),l=this.makeAssetDialogContentsExtra_(a,c);a=this.makeAssetDialogContentsFinish_(a,c);var m=document.createElement("tr"),n=[],p=[];c=function(q,
|
|
349
|
-
r
|
|
343
|
+
t,r){var u=shakaDemo.Custom.ButtonStyle_.PLAIN;q=shakaDemoMain.getLocalizedString(q);var v=b.makeButton_(q,u,function(){for(var x=$jscomp.makeIterator(n),w=x.next();!w.done;w=x.next())w.value.classList.add("hidden");t.classList.remove("hidden");x=$jscomp.makeIterator(p);for(w=x.next();!w.done;w=x.next())w.value.classList.remove("mdl-button--accent");v.classList.add("mdl-button--accent")});m.appendChild(v);n.push(t);p.push(v);r?v.classList.add("mdl-button--accent"):t.classList.add("hidden")};c(shakaDemo.MessageIds.MAIN_TAB,
|
|
350
344
|
e,!0);c(shakaDemo.MessageIds.DRM_TAB,f,!1);c(shakaDemo.MessageIds.HEADERS_TAB,g,!1);c(shakaDemo.MessageIds.ADS_TAB,h,!1);c(shakaDemo.MessageIds.HLS_TAB,k,!1);c(shakaDemo.MessageIds.EXTRA_TAB,l,!1);this.dialog_.appendChild(m);this.dialog_.appendChild(e);this.dialog_.appendChild(f);this.dialog_.appendChild(g);this.dialog_.appendChild(h);this.dialog_.appendChild(k);this.dialog_.appendChild(l);this.dialog_.appendChild(a);this.dialog_.appendChild(d);componentHandler.upgradeDom();this.dialog_.showModal()};
|
|
351
345
|
shakaDemo.Custom.prototype.loadAssetInfos_=function(){var a=window.localStorage.getItem(shakaDemo.Custom.saveId_);return a?(a=JSON.parse(a),new Set(a.map(function(b){b=ShakaDemoAssetInfo.fromJSON(b);shakaDemoMain.setupOfflineSupport(b);return b}))):new Set};shakaDemo.Custom.prototype.saveAssetInfos_=function(a){var b=shakaDemo.Custom.saveId_;a=Array.from(a);window.localStorage.setItem(b,JSON.stringify(a))};
|
|
352
346
|
shakaDemo.Custom.prototype.makeButton_=function(a,b,c){var d=document.createElement("button");switch(b){case shakaDemo.Custom.ButtonStyle_.FAB:d.classList.add("mdl-button--fab");d.classList.add("mdl-button--colored");b=document.createElement("i");b.classList.add("material-icons-round");b.textContent=a;d.appendChild(b);break;case shakaDemo.Custom.ButtonStyle_.RAISED:d.textContent=a;d.classList.add("mdl-button--raised");break;case shakaDemo.Custom.ButtonStyle_.PLAIN:d.textContent=a}d.addEventListener("click",
|
|
353
347
|
c);d.classList.add("mdl-button");d.classList.add("mdl-js-button");d.classList.add("mdl-js-ripple-effect");return d};
|
|
354
348
|
shakaDemo.Custom.prototype.createAssetCardFor_=function(a){var b=this;return new shakaDemo.AssetCard(this.savedList_,a,!1,function(c){c.addButton(shakaDemo.MessageIds.PLAY,function(){shakaDemoMain.loadAsset(a);b.updateSelected_()});c.addButton(shakaDemo.MessageIds.EDIT_CUSTOM,function(){return $jscomp.asyncExecutePromiseGeneratorProgram(function(d){if(1==d.nextAddress)return a.unstoreCallback?d.yield(a.unstoreCallback(),2):d.jumpTo(2);b.showAssetDialog_(a);d.jumpToEnd()})});c.addButton(shakaDemo.MessageIds.DELETE_CUSTOM,
|
|
355
|
-
function(){return $jscomp.asyncExecutePromiseGeneratorProgram(function(d){if(1==d.nextAddress)return b.assets_
|
|
349
|
+
function(){return $jscomp.asyncExecutePromiseGeneratorProgram(function(d){if(1==d.nextAddress)return b.assets_.delete(a),a.unstoreCallback?d.yield(a.unstoreCallback(),2):d.jumpTo(2);b.saveAssetInfos_(b.assets_);b.remakeSavedList_();d.jumpToEnd()})},shakaDemo.MessageIds.DELETE_CUSTOM);c.addStoreButton()})};shakaDemo.Custom.prototype.updateSelected_=function(){for(var a=$jscomp.makeIterator(this.assetCards_),b=a.next();!b.done;b=a.next())b.value.selectByAsset(shakaDemoMain.selectedAsset)};
|
|
356
350
|
shakaDemo.Custom.prototype.remakeSavedList_=function(){var a=this;shaka.util.Dom.removeAllChildren(this.savedList_);if(0==this.assets_.size){var b=function(c,d){var e=document.createElement("h2");e.classList.add("mdl-typography--"+c);e.textContent=d;a.savedList_.appendChild(e)};b("title",shakaDemoMain.getLocalizedString(shakaDemo.MessageIds.CUSTOM_INTRO_ONE));b("body-2",shakaDemoMain.getLocalizedString(shakaDemo.MessageIds.CUSTOM_INTRO_TWO));b("body-1",shakaDemoMain.getLocalizedString(shakaDemo.MessageIds.CUSTOM_INTRO_THREE))}else this.assetCards_=
|
|
357
351
|
Array.from(this.assets_).map(function(c){return a.createAssetCardFor_(c)}),this.updateSelected_()};shakaDemo.Custom.ButtonStyle_={RAISED:0,FAB:1,PLAIN:2};shakaDemo.Custom.saveId_="shakaPlayerDemoSavedAssets";document.addEventListener("shaka-main-loaded",shakaDemo.Custom.init);document.addEventListener("shaka-main-cleanup",function(){shakaDemoCustom=null});shakaDemo.Utils=function(){};
|
|
358
352
|
shakaDemo.Utils.runThroughHashParams=function(a,b){var c=[],d=function(k,l){c.push(l);a(k,l)};d("audiolang","preferredAudioLanguage");d("textlang","preferredTextLanguage");d("textrole","preferredTextRole");d("channels","preferredAudioChannelCount");c.push("abr.enabled");c.push("drm.advanced");c.push("drm.servers");var e=[],f=[],g=function(k){for(var l in k){e.includes(l)&&!f.includes(l)&&f.push(l);e.push(l);var m=k[l];"number"!=typeof m&&"string"!=typeof m&&"boolean"!=typeof m&&g(m)}};g(b);var h=
|
|
@@ -367,25 +361,25 @@ shakaDemo.Front.prototype.updateSelected_=function(){for(var a=$jscomp.makeItera
|
|
|
367
361
|
a=new shakaDemo.InputContainer(d,null,shakaDemo.InputContainer.Style.VERTICAL,null);a.addRow(null,null);this.screenshotButton_=document.createElement("button");a.latestElementContainer.appendChild(this.screenshotButton_);this.screenshotButton_.textContent=shakaDemoMain.getLocalizedString(shakaDemo.MessageIds.VISUALIZER_SCREENSHOT_BUTTON);this.screenshotButton_.classList.add("mdl-button");this.screenshotButton_.classList.add("mdl-button--colored");this.screenshotButton_.classList.add("mdl-js-button");
|
|
368
362
|
this.screenshotButton_.classList.add("mdl-js-ripple-effect");this.screenshotButton_.addEventListener("click",function(){g.takeScreenshot_()});a.addRow(shakaDemo.MessageIds.VISUALIZER_AUTO_SCREENSHOT_TOGGLE,null);this.autoScreenshotToggle_=new shakaDemo.BoolInput(a,shakaDemo.MessageIds.VISUALIZER_AUTO_SCREENSHOT_TOGGLE,function(h){g.takeAutoScreenshots_=h.checked})};
|
|
369
363
|
shakaDemo.Visualizer.prototype.start=function(){this.timer_.tickEvery(shakaDemo.Visualizer.updateFrequency_);this.div_.classList.remove("hidden");this.autoScreenshotTaken_=!0};shakaDemo.Visualizer.prototype.stop=function(){this.timer_.stop();this.div_.classList.add("hidden");this.updates_=[]};
|
|
370
|
-
shakaDemo.Visualizer.prototype.drawBufferInfoCanvasBar_=function(a,b,c,d,e,f){var g=this,h=b.filter(function(
|
|
371
|
-
|
|
372
|
-
(
|
|
364
|
+
shakaDemo.Visualizer.prototype.drawBufferInfoCanvasBar_=function(a,b,c,d,e,f){var g=this,h=b.filter(function(v){return v.replaceAll("F","A").replaceAll("0","4")}),k=function(v){return Math.round((v-g.video_.currentTime)*e+g.canvas_.width/2)},l=Math.floor(d/4);a.textAlign="center";a.font="bold "+l+"px serif";a.textBaseline="bottom";for(var m=e>4*l,n=$jscomp.makeIterator(this.updates_),p=n.next();!p.done;p=n.next()){p=p.value;var q=k(p.start),t=k(p.end);if(0<=t&&q<this.canvas_.width){q=Math.max(q,0);
|
|
365
|
+
t=Math.min(t,this.canvas_.width);a.fillStyle="#FFFFFF";a.globalAlpha=.1+.2*(1-p.age/shakaDemo.Visualizer.maxUpdateAge_);a.fillRect(q,c,t-q,d);a.globalAlpha=1;var r=p.contentType.toUpperCase();m||(r=r[0]);q+=(t-q)/2;t=c+d;switch(p.contentType){case "video":t-=2*l;break;case "audio":t-=l}a.fillText(r,q,t)}}m=this.player_.getConfiguration().streaming.gapDetectionThreshold;for(n=0;n<this.video_.buffered.length;n++){var u=k(this.video_.buffered.start(n));p=k(this.video_.buffered.end(n));0<=p&&u<this.canvas_.width&&
|
|
366
|
+
(u=Math.max(u,0),p=Math.min(p,this.canvas_.width),r=(n-f+this.colorIOffset_+1E4*b.length)%b.length,q=(d-3*l)/b.length,t=c+r*q,a.fillStyle=b[r],a.fillRect(u,t,p-u,q),u=Math.max(u,k(this.video_.buffered.end(n)-m)),a.fillStyle=h[r],a.fillRect(u,t,p-u,q))}};shakaDemo.Visualizer.prototype.takeAutomaticScreenshots_=function(){2>=this.video_.readyState?!this.autoScreenshotTaken_&&this.takeAutoScreenshots_&&(this.takeScreenshot_(),this.autoScreenshotTaken_=!0):this.autoScreenshotTaken_=!1};
|
|
373
367
|
shakaDemo.Visualizer.prototype.ageUpdates_=function(){for(var a=$jscomp.makeIterator(this.updates_),b=a.next();!b.done;b=a.next())b.value.age+=shakaDemo.Visualizer.updateFrequency_;this.updates_=this.updates_.filter(function(c){return c.age<shakaDemo.Visualizer.maxUpdateAge_})};
|
|
374
368
|
shakaDemo.Visualizer.prototype.takeScreenshot_=function(){shaka.util.Dom.removeAllChildren(this.screenshotDiv_);var a=document.createElement("canvas");a.width=this.canvas_.width;a.height=this.canvas_.height;a.getContext("2d").drawImage(this.canvas_,0,0);this.screenshotDiv_.appendChild(a)};
|
|
375
369
|
shakaDemo.Visualizer.prototype.updateCanvas_=function(){this.canvas_.width=this.canvas_.offsetWidth;this.canvas_.height=this.canvas_.offsetHeight;var a=this.canvas_.getContext("2d");a.imageSmoothingEnabled=!1;a.fillStyle="#000000";a.fillRect(0,0,this.canvas_.width,this.canvas_.height);for(var b=["#FF0000","#00FF00","#0000FF"],c=-1,d=-1,e=this.lastCurrentTime_,f=this.video_.currentTime,g=this.video_.buffered,h=0;h<g.length;h++)e>=g.start(h)&&e<=g.end(h)&&(d=h),f>=g.start(h)&&f<=g.end(h)&&(c=h);this.lastCurrentTime_=
|
|
376
|
-
f;-1!=c&&-1!=d&&(this.colorIOffset_+=c-d);d=[50,5];e=this.canvas_.height/d.length;for(f=0;f<d.length;f++)g=.75*e,this.drawBufferInfoCanvasBar_(a,b,e*f+(e-g)/2,g,d[f],c);a.fillStyle="#FFFFFF";a.fillRect(this.canvas_.width/2-1,0,2,this.canvas_.height)};shakaDemo.Visualizer.maxUpdateAge_=20;shakaDemo.Visualizer.updateFrequency_=.05;shakaDemo.VisualizerButton=function(a,b){var c=shaka.ui.Element.call(this,a,b)||this;c.button_=document.createElement("button");c.button_.classList.add("shaka-pip-button");c.button_.classList.add("shaka-tooltip");c.icon_=document.createElement("i");c.icon_.classList.add("material-icons-round");c.setIcon_();c.button_.appendChild(c.icon_);
|
|
377
|
-
|
|
370
|
+
f;-1!=c&&-1!=d&&(this.colorIOffset_+=c-d);d=[50,5];e=this.canvas_.height/d.length;for(f=0;f<d.length;f++)g=.75*e,this.drawBufferInfoCanvasBar_(a,b,e*f+(e-g)/2,g,d[f],c);a.fillStyle="#FFFFFF";a.fillRect(this.canvas_.width/2-1,0,2,this.canvas_.height)};shakaDemo.Visualizer.maxUpdateAge_=20;shakaDemo.Visualizer.updateFrequency_=.05;shakaDemo.VisualizerButton=function(a,b){var c=shaka.ui.Element.call(this,a,b)||this;c.button_=document.createElement("button");c.button_.classList.add("shaka-pip-button");c.button_.classList.add("shaka-tooltip");c.icon_=document.createElement("i");c.icon_.classList.add("material-icons-round");c.setIcon_();c.button_.appendChild(c.icon_);a=document.createElement("label");a.classList.add("shaka-overflow-button-label");a.classList.add("shaka-overflow-menu-only");c.nameSpan_=document.createElement("span");
|
|
371
|
+
a.appendChild(c.nameSpan_);c.currentPipState_=document.createElement("span");c.currentPipState_.classList.add("shaka-current-selection-span");a.appendChild(c.currentPipState_);c.button_.appendChild(a);c.parent.appendChild(c.button_);c.eventManager.listen(c.button_,"click",function(){shakaDemoMain.setIsVisualizerActive(!shakaDemoMain.getIsVisualizerActive());c.setIcon_()});c.eventManager.listen(c.localization,shaka.ui.Localization.LOCALE_UPDATED,function(){c.updateLocalizedStrings_()});c.eventManager.listen(c.localization,
|
|
378
372
|
shaka.ui.Localization.LOCALE_CHANGED,function(){c.updateLocalizedStrings_()});return c};$jscomp.inherits(shakaDemo.VisualizerButton,shaka.ui.Element);shakaDemo.VisualizerButton.prototype.updateLocalizedStrings_=function(){this.nameSpan_.textContent=shakaDemoMain.getLocalizedString(shakaDemo.MessageIds.VISUALIZER_BUTTON)};shakaDemo.VisualizerButton.prototype.setIcon_=function(){shakaDemoMain.getIsVisualizerActive()?this.icon_.textContent="bar_chart":this.icon_.textContent="add_chart"};
|
|
379
373
|
shakaDemo.VisualizerButton.Factory=function(){};shakaDemo.VisualizerButton.Factory.prototype.create=function(a,b){return new shakaDemo.VisualizerButton(a,b)};shakaDemo.Main=function(){this.localization_=this.selectedAsset=this.player_=this.container_=this.video_=null;this.fullyLoaded_=!1;this.controls_=null;this.nativeControlsEnabled_=this.trickPlayControlsEnabled_=!1;this.uiLocale_="";this.noInput_=!1;this.errorDisplayLink_=document.getElementById("error-display-link");this.currentErrorSeverity_=null;MaterialLayout.prototype.Constant_.MENU_ICON="settings";this.visualizer_=null};
|
|
380
374
|
shakaDemo.Main.prototype.initCommon_=function(){var a=this;window.addEventListener("error",function(b){if(!b.message.includes("cvox.Api"))a.onError_(b.error)});document.getElementById("error-display-close-button").addEventListener("click",function(b){return a.closeError_()});this.setUpVersionStrings_()};
|
|
381
|
-
shakaDemo.Main.prototype.initFailed=function(a){var b=this,c,d,e,f,g,h,k,l,m,n,p,q;return $jscomp.asyncExecutePromiseGeneratorProgram(function(
|
|
382
|
-
for(f=h.next();!f.done;f=h.next())k=f.value,d.push(k);l=$jscomp.makeIterator(d);for(f=l.next();!f.done;f=l.next())m=f.value,m.tabIndex=-1,m.classList.add("disabled-by-fail");b.localization_=new shaka.ui.Localization("en");b.localization_.changeLocale(navigator.languages||[]);return
|
|
383
|
-
"https://github.com/shaka-project/shaka-player#platform-and-browser-support-matrix";break;case shaka.ui.Overlay.FailReasonCode.PLAYER_FAILED_TO_LOAD:q=b.getLocalizedString(shakaDemo.MessageIds.FAILURE_MISC)}b.handleError_(n,q,p);
|
|
375
|
+
shakaDemo.Main.prototype.initFailed=function(a){var b=this,c,d,e,f,g,h,k,l,m,n,p,q;return $jscomp.asyncExecutePromiseGeneratorProgram(function(t){if(1==t.nextAddress){b.initCommon_();b.makeVersionLinks_();c=document.getElementById("error-display-close-button");c.style.display="none";componentHandler.upgradeDom();d=[];e=$jscomp.makeIterator(document.getElementsByClassName("should-disable-on-fail"));for(f=e.next();!f.done;f=e.next())g=f.value,d.push(g);h=$jscomp.makeIterator(document.getElementsByClassName("mdl-layout__drawer-button"));
|
|
376
|
+
for(f=h.next();!f.done;f=h.next())k=f.value,d.push(k);l=$jscomp.makeIterator(d);for(f=l.next();!f.done;f=l.next())m=f.value,m.tabIndex=-1,m.classList.add("disabled-by-fail");b.localization_=new shaka.ui.Localization("en");b.localization_.changeLocale(navigator.languages||[]);return t.yield(b.setupLocalization_(),2)}n=shaka.util.Error.Severity.CRITICAL;q=p="";switch(a){case shaka.ui.Overlay.FailReasonCode.NO_BROWSER_SUPPORT:q=b.getLocalizedString(shakaDemo.MessageIds.FAILURE_NO_BROWSER_SUPPORT);p=
|
|
377
|
+
"https://github.com/shaka-project/shaka-player#platform-and-browser-support-matrix";break;case shaka.ui.Overlay.FailReasonCode.PLAYER_FAILED_TO_LOAD:q=b.getLocalizedString(shakaDemo.MessageIds.FAILURE_MISC)}b.handleError_(n,q,p);t.jumpToEnd()})};
|
|
384
378
|
shakaDemo.Main.prototype.init=function(){var a=this,b,c,d,e,f,g,h,k,l,m,n;return $jscomp.asyncExecutePromiseGeneratorProgram(function(p){switch(p.nextAddress){case 1:return a.initCommon_(),b=a,p.yield(shaka.Player.probeSupport(),2);case 2:return b.support_=p.yieldResult,a.video_=document.getElementById("video"),a.video_.poster=shakaDemo.Main.mainPoster_,a.container_=document.getElementsByClassName("video-container")[0],navigator.serviceWorker&&(console.debug("Registering service worker."),navigator.serviceWorker.register("service_worker.js")),
|
|
385
379
|
a.noInput_="noinput"in a.getParams_(),p.yield(a.setupPlayer_(),3);case 3:return a.readHash_(),window.addEventListener("hashchange",function(){return a.hashChanged_()}),p.yield(a.setupStorage_(),4);case 4:a.setupBugButton_();if(a.noInput_){c=$jscomp.makeIterator(document.getElementsByClassName("should-hide-in-no-input-mode"));for(d=c.next();!d.done;d=c.next())e=d.value,a.hideElement_(e);f=$jscomp.makeIterator(document.getElementsByClassName("should-show-in-no-input-mode"));for(d=f.next();!d.done;d=
|
|
386
380
|
f.next())g=d.value,a.showElement_(g);a.container_.classList.add("no-input-sized");document.getElementById("video-bar").classList.add("no-input-sized")}else goog.asserts.assert(a.player_,"Player should exist by now."),h=document.getElementById("visualizer-canvas"),k=document.getElementById("visualizer-div"),l=document.getElementById("visualizer-controls-div"),m=document.getElementById("visualizer-screenshot-div"),a.visualizer_=new shakaDemo.Visualizer(h,k,m,l,a.video_,a.player_);a.dispatchEventWithName_("shaka-main-loaded");
|
|
387
381
|
return p.yield(Promise.resolve(),5);case 5:componentHandler.upgradeDom(),n=a.getLastAssetFromHash_(),a.fullyLoaded_=!0,a.remakeHash(),n&&!a.selectedAsset&&a.loadAsset(n),p.jumpToEnd()}})};
|
|
388
|
-
shakaDemo.Main.prototype.loadText_=function(a){var b,c,d,e,f,g,h;return $jscomp.asyncExecutePromiseGeneratorProgram(function(k){return 1==k.nextAddress?(b=new shaka.net.NetworkingEngine,c=shaka.net.NetworkingEngine.defaultRetryParameters(),d=shaka.net.NetworkingEngine.makeRequest([a],c),e=shaka.net.NetworkingEngine.RequestType.APP,f=b.request(e,d),k.yield(f.promise,2)):3!=k.nextAddress?(g=k.yieldResult,h=shaka.util.StringUtils.fromUTF8(g.data),k.yield(b.destroy(),3)):k
|
|
382
|
+
shakaDemo.Main.prototype.loadText_=function(a){var b,c,d,e,f,g,h;return $jscomp.asyncExecutePromiseGeneratorProgram(function(k){return 1==k.nextAddress?(b=new shaka.net.NetworkingEngine,c=shaka.net.NetworkingEngine.defaultRetryParameters(),d=shaka.net.NetworkingEngine.makeRequest([a],c),e=shaka.net.NetworkingEngine.RequestType.APP,f=b.request(e,d),k.yield(f.promise,2)):3!=k.nextAddress?(g=k.yieldResult,h=shaka.util.StringUtils.fromUTF8(g.data),k.yield(b.destroy(),3)):k.return(h)})};
|
|
389
383
|
shakaDemo.Main.prototype.reportBug_=function(){var a=this,b,c,d,e;return $jscomp.asyncExecutePromiseGeneratorProgram(function(f){switch(f.nextAddress){case 1:return f.yield(a.loadText_("autoTemplate.txt"),2);case 2:b=f.yieldResult;c=function(g,h){b=b.replace(g,h)};c("RE:player",shaka.Player.version);c("RE:link",window.location.href);c("RE:browser",navigator.userAgent);if(!a.selectedAsset||a.selectedAsset.source!=shakaAssets.Source.CUSTOM){c("RE:customwarning\n","");f.jumpTo(3);break}return f.yield(a.loadText_("customWarning.txt"),
|
|
390
384
|
4);case 4:d=f.yieldResult,c("RE:customwarning",d);case 3:e="https://github.com/shaka-project/shaka-player/issues/new?",e+="body="+encodeURIComponent(b),window.open(e,"_blank"),f.jumpToEnd()}})};
|
|
391
385
|
shakaDemo.Main.prototype.setupBugButton_=function(){var a=this,b=document.getElementById("bug-button");b.addEventListener("click",function(){return a.reportBug_()});navigator.onLine||b.setAttribute("disabled","");window.addEventListener("online",function(){b.removeAttribute("disabled")});window.addEventListener("offline",function(){b.setAttribute("disabled","")})};
|
|
@@ -395,34 +389,34 @@ shakaDemo.Main.prototype.setupPlayer_=function(){var a=this,b,c,d,e,f,g,h,k,l,m;
|
|
|
395
389
|
a.defaultConfig_=a.player_.getConfiguration(),a.desiredConfig_=a.player_.getConfiguration(),f=navigator.languages||["en-us"],a.configure("preferredAudioLanguage",f[0]),a.configure("preferredTextLanguage",f[0]),a.uiLocale_=f[0],g=function(p){return a.onErrorEvent_(p)},a.player_.addEventListener("error",g),a.controls_=c.getControls(),a.controls_.addEventListener("error",g),a.controls_.addEventListener("caststatuschanged",function(p){a.onCastStatusChange_(p.newStatus)}),a.localization_=a.controls_.getLocalization(),
|
|
396
390
|
n.yield(a.setupLocalization_(),2);h=document.getElementById("drawer-close-button");h.addEventListener("click",function(){document.getElementById("main-layout").MaterialLayout.toggleDrawer();a.dispatchEventWithName_("shaka-main-drawer-state-change");a.hideElement_(h)});k=document.querySelector(".mdl-layout__drawer-button");goog.asserts.assert(k,"There should be a drawer button.");l=function(){a.dispatchEventWithName_("shaka-main-drawer-state-change");a.showElement_(h)};k.addEventListener("click",l);
|
|
397
391
|
k.addEventListener("keydown",function(p){p=p.key;" "!=p&&"Spacebar"!=p&&"Enter"!=p||l()});m=document.querySelector(".mdl-layout__obfuscator");goog.asserts.assert(m,"There should be an obfuscator.");m.addEventListener("click",function(){a.dispatchEventWithName_("shaka-main-drawer-state-change");a.hideElement_(h)});a.hideElement_(h);n.jumpToEnd()})};
|
|
398
|
-
shakaDemo.Main.prototype.setupLocalization_=function(){var a=this,b,c,d,e;return $jscomp.asyncExecutePromiseGeneratorProgram(function(f){if(1==f.nextAddress)return b=function(){a.localizeHTMLElements_();a.dispatchEventWithName_("shaka-main-locale-changed")},c=shaka.ui.Localization.UNKNOWN_LOCALES,a.localization_.addEventListener(c,function(g){var h={};g=$jscomp.makeIterator(g.locales);for(var k=g.next();!k.done;h={$jscomp$loop$prop$locale$
|
|
399
|
-
k.value,a.loadUILocale_(h.$jscomp$loop$prop$locale$
|
|
392
|
+
shakaDemo.Main.prototype.setupLocalization_=function(){var a=this,b,c,d,e;return $jscomp.asyncExecutePromiseGeneratorProgram(function(f){if(1==f.nextAddress)return b=function(){a.localizeHTMLElements_();a.dispatchEventWithName_("shaka-main-locale-changed")},c=shaka.ui.Localization.UNKNOWN_LOCALES,a.localization_.addEventListener(c,function(g){var h={};g=$jscomp.makeIterator(g.locales);for(var k=g.next();!k.done;h={$jscomp$loop$prop$locale$82:h.$jscomp$loop$prop$locale$82},k=g.next())h.$jscomp$loop$prop$locale$82=
|
|
393
|
+
k.value,a.loadUILocale_(h.$jscomp$loop$prop$locale$82).then(function(l){return function(){l.$jscomp$loop$prop$locale$82==a.uiLocale_&&b()}}(h))}),d=shaka.ui.Localization.LOCALE_CHANGED,a.localization_.addEventListener(d,function(g){b()}),e=[],e.push(a.loadUILocale_(a.uiLocale_)),a.uiLocale_.includes("-")&&e.push(a.loadUILocale_(a.uiLocale_.split("-")[0])),a.uiLocale_.startsWith("en")||e.push(a.loadUILocale_("en")),f.yield(Promise.all(e),2);a.localizeHTMLElements_();f.jumpToEnd()})};
|
|
400
394
|
shakaDemo.Main.prototype.getIsDrawerOpen=function(){var a=document.querySelector(".mdl-layout__drawer");goog.asserts.assert(a,"There should be a drawer.");return a.classList.contains("is-visible")};shakaDemo.Main.prototype.getIdentifierFromAsset_=function(a){return a.name+(a.source==shakaAssets.Source.CUSTOM?" [CUSTOM]":"")};
|
|
401
|
-
shakaDemo.Main.prototype.makeStorageInstance_=function(){var a=this;if(!shaka.offline.Storage.support())return null;var b=new shaka.offline.Storage;b.configure(this.desiredConfig_);b.configure("offline.progressCallback",function(c,d){
|
|
402
|
-
f.
|
|
403
|
-
shakaDemo.Main.prototype.setupOfflineSupport=function(a){var b=this;if(this.initialStoredList_){a.storedContent=null;for(var c=$jscomp.makeIterator(this.initialStoredList_),d=c.next();!d.done;d=c.next()){d=d.value;var e=d.appMetadata.identifier;this.getIdentifierFromAsset_(a)==e&&(a.storedContent=d)}a.storeCallback=function(){var f,g,h,k,l,m;return $jscomp.asyncExecutePromiseGeneratorProgram(function(n){switch(n.nextAddress){case 1:f=b.makeStorageInstance_();if(!f)return n
|
|
395
|
+
shakaDemo.Main.prototype.makeStorageInstance_=function(){var a=this;if(!shaka.offline.Storage.support())return null;var b=new shaka.offline.Storage;b.configure(this.desiredConfig_);b.configure("offline.progressCallback",function(c,d){c=c.appMetadata.identifier;a:{for(var e=$jscomp.makeIterator(shakaAssets.testAssets),f=e.next();!f.done;f=e.next())if(f=f.value,a.getIdentifierFromAsset_(f)==c){c=f;break a}if(shakaDemoCustom)for(e=$jscomp.makeIterator(shakaDemoCustom.assets()),f=e.next();!f.done;f=e.next())if(f=
|
|
396
|
+
f.value,a.getIdentifierFromAsset_(f)==c){c=f;break a}c=null}c&&(c.storedProgress=d,a.dispatchEventWithName_("shaka-main-offline-progress"))});return b};
|
|
397
|
+
shakaDemo.Main.prototype.setupOfflineSupport=function(a){var b=this;if(this.initialStoredList_){a.storedContent=null;for(var c=$jscomp.makeIterator(this.initialStoredList_),d=c.next();!d.done;d=c.next()){d=d.value;var e=d.appMetadata.identifier;this.getIdentifierFromAsset_(a)==e&&(a.storedContent=d)}a.storeCallback=function(){var f,g,h,k,l,m;return $jscomp.asyncExecutePromiseGeneratorProgram(function(n){switch(n.nextAddress){case 1:f=b.makeStorageInstance_();if(!f)return n.return();n.setCatchFinallyBlocks(2);
|
|
404
398
|
return n.yield(b.drmConfiguration_(a,f),4);case 4:return g={identifier:b.getIdentifierFromAsset_(a),downloaded:new Date},a.storedProgress=0,b.dispatchEventWithName_("shaka-main-offline-progress"),h=Date.now(),n.yield(f.store(a.manifestUri,g).promise,5);case 5:k=n.yieldResult;l=Date.now();console.log("Download time:",l-h);a.storedContent=k;n.leaveTryBlock(3);break;case 2:m=n.enterCatchBlock(),b.onError_(m),a.storedContent=null;case 3:f.destroy(),a.storedProgress=1,b.dispatchEventWithName_("shaka-main-offline-progress"),
|
|
405
|
-
n.jumpToEnd()}})};a.unstoreCallback=function(){var f,g;return $jscomp.asyncExecutePromiseGeneratorProgram(function(h){switch(h.nextAddress){case 1:a==b.selectedAsset&&b.unload();if(!a.storedContent||!a.storedContent.offlineUri){h.jumpTo(0);break}f=b.makeStorageInstance_();if(!f)return h
|
|
399
|
+
n.jumpToEnd()}})};a.unstoreCallback=function(){var f,g;return $jscomp.asyncExecutePromiseGeneratorProgram(function(h){switch(h.nextAddress){case 1:a==b.selectedAsset&&b.unload();if(!a.storedContent||!a.storedContent.offlineUri){h.jumpTo(0);break}f=b.makeStorageInstance_();if(!f)return h.return();h.setCatchFinallyBlocks(3);a.storedProgress=0;b.dispatchEventWithName_("shaka-main-offline-progress");return h.yield(f.remove(a.storedContent.offlineUri),5);case 5:a.storedContent=null;h.leaveTryBlock(4);
|
|
406
400
|
break;case 3:g=h.enterCatchBlock(),b.onError_(g);case 4:f.destroy(),a.storedProgress=1,b.dispatchEventWithName_("shaka-main-offline-progress"),h.jumpToEnd()}})}}};
|
|
407
|
-
shakaDemo.Main.prototype.setupStorage_=function(){var a=this,b,c,d,e,f,g;return $jscomp.asyncExecutePromiseGeneratorProgram(function(h){switch(h.nextAddress){case 1:b=a.makeStorageInstance_();if(!b)return h
|
|
401
|
+
shakaDemo.Main.prototype.setupStorage_=function(){var a=this,b,c,d,e,f,g;return $jscomp.asyncExecutePromiseGeneratorProgram(function(h){switch(h.nextAddress){case 1:b=a.makeStorageInstance_();if(!b)return h.return();h.setCatchFinallyBlocks(2,3);c=a;return h.yield(b.list(),5);case 5:c.initialStoredList_=h.yieldResult;case 3:h.enterFinallyBlock();b.destroy();h.leaveFinallyBlock(4);break;case 2:d=h.enterCatchBlock();console.error(d);a.initialStoredList_=null;h.jumpTo(3);break;case 4:e=$jscomp.makeIterator(shakaAssets.testAssets);
|
|
408
402
|
for(f=e.next();!f.done;f=e.next())g=f.value,a.getAssetUnsupportedReason(g,!0)||a.setupOfflineSupport(g);h.jumpToEnd()}})};shakaDemo.Main.prototype.hashChanged_=function(){this.readHash_();this.dispatchEventWithName_("shaka-main-config-change")};
|
|
409
|
-
shakaDemo.Main.prototype.getAssetUnsupportedReason=function(a,b){var c=this;if(b&&(!shaka.offline.Storage.support()||!this.initialStoredList_))return shakaDemo.MessageIds.UNSUPPORTED_NO_OFFLINE;if(a.source==shakaAssets.Source.CUSTOM)return null;if(a.disabled)return shakaDemo.MessageIds.UNSUPPORTED_DISABLED;if(b&&!a.features.includes(shakaAssets.Feature.OFFLINE))return shakaDemo.MessageIds.UNSUPPORTED_NO_DOWNLOAD;if(!a.isClear()){if(!a.drm.some(function(
|
|
410
|
-
if(b&&!a.drm.some(function(
|
|
411
|
-
|
|
403
|
+
shakaDemo.Main.prototype.getAssetUnsupportedReason=function(a,b){var c=this;if(b&&(!shaka.offline.Storage.support()||!this.initialStoredList_))return shakaDemo.MessageIds.UNSUPPORTED_NO_OFFLINE;if(a.source==shakaAssets.Source.CUSTOM)return null;if(a.disabled)return shakaDemo.MessageIds.UNSUPPORTED_DISABLED;if(b&&!a.features.includes(shakaAssets.Feature.OFFLINE))return shakaDemo.MessageIds.UNSUPPORTED_NO_DOWNLOAD;if(!a.isClear()){if(!a.drm.some(function(d){return c.support_.drm[shakaAssets.identifierForKeySystem(d)]}))return shakaDemo.MessageIds.UNSUPPORTED_NO_KEY_SUPPORT;
|
|
404
|
+
if(b&&!a.drm.some(function(d){d=shakaAssets.identifierForKeySystem(d);return c.support_.drm[d]&&c.support_.drm[d].persistentState}))return shakaDemo.MessageIds.UNSUPPORTED_NO_LICENSE_SUPPORT}if(a.features.includes(shakaAssets.Feature.DASH)&&!this.support_.manifest.mpd)return shakaDemo.MessageIds.UNSUPPORTED_NO_DASH_SUPPORT;if(a.features.includes(shakaAssets.Feature.HLS)&&!this.support_.manifest.m3u8)return shakaDemo.MessageIds.UNSUPPORTED_NO_HLS_SUPPORT;b=[];a.features.includes(shakaAssets.Feature.WEBM)&&
|
|
405
|
+
b.push("video/webm");a.features.includes(shakaAssets.Feature.MP4)&&b.push("video/mp4");a.features.includes(shakaAssets.Feature.MP2TS)&&b.push("video/mp2t");a.features.includes(shakaAssets.Feature.CONTAINERLESS)&&b.push("audio/aac");return b.some(function(d){return c.support_.media[d]})?null:shakaDemo.MessageIds.UNSUPPORTED_NO_FORMAT_SUPPORT};shakaDemo.Main.prototype.setTrickPlayControlsEnabled=function(a){this.trickPlayControlsEnabled_=a;this.configureUI_();this.remakeHash()};
|
|
412
406
|
shakaDemo.Main.prototype.getTrickPlayControlsEnabled=function(){return this.trickPlayControlsEnabled_};shakaDemo.Main.prototype.setNativeControlsEnabled=function(a){this.nativeControlsEnabled_=a;this.remakeHash()};shakaDemo.Main.prototype.getNativeControlsEnabled=function(){return this.nativeControlsEnabled_};
|
|
413
407
|
shakaDemo.Main.prototype.localizeHTMLElements_=function(){for(var a=$jscomp.makeIterator(document.querySelectorAll("[localized-string]")),b=a.next();!b.done;b=a.next()){b=b.value;var c=b.getAttribute("localized-string");if(c=shakaDemo.MessageIds[c])b.textContent=this.getLocalizedString(c)}};shakaDemo.Main.prototype.getLocalizedString=function(a){return this.localization_.resolve(a)};
|
|
414
|
-
shakaDemo.Main.prototype.loadUILocale_=function(a){var b=this,c;return $jscomp.asyncExecutePromiseGeneratorProgram(function(d){if(!a)return d
|
|
408
|
+
shakaDemo.Main.prototype.loadUILocale_=function(a){var b=this,c;return $jscomp.asyncExecutePromiseGeneratorProgram(function(d){if(!a)return d.return();c=function(e){var f,g,h,k;return $jscomp.asyncExecutePromiseGeneratorProgram(function(l){if(1==l.nextAddress)return f=e+"/locales/"+a+".json",l.setCatchFinallyBlocks(2),l.yield(b.loadText_(f),4);if(2!=l.nextAddress)return g=l.yieldResult,h=JSON.parse(g),k=new Map(Object.entries(h)),b.localization_.insert(a,k),l.leaveTryBlock(0);l.enterCatchBlock();
|
|
415
409
|
console.warn("Unable to load locale",a,"for url",f);l.jumpToEnd()})};return d.yield(Promise.all([c("../ui"),c("../demo")]),0)})};shakaDemo.Main.prototype.setUILocale=function(a){this.uiLocale_=a;a=[a].concat(navigator.languages);this.localization_.changeLocale(a)};shakaDemo.Main.prototype.getUILocale=function(){return this.uiLocale_};
|
|
416
410
|
shakaDemo.Main.prototype.getLastAssetFromHash_=function(){var a=this.getParams_(),b=a.asset,c=a.adTagUri;if(b){for(var d=$jscomp.makeIterator(shakaAssets.testAssets),e=d.next();!e.done;e=d.next())if(e=e.value,e.manifestUri==b&&e.adTagUri==c)return e;c=$jscomp.makeIterator(shakaDemoCustom.assets());for(e=c.next();!e.done;e=c.next())if(d=e.value,d.manifestUri==b)return d;b=new ShakaDemoAssetInfo("loaded asset","",b,shakaAssets.Source.CUSTOM);if("license"in a)for(c=shakaDemo.Main.commonDrmSystems,("drmSystem"in
|
|
417
411
|
a)&&(c=[a.drmSystem]),c=$jscomp.makeIterator(c),d=c.next();!d.done;d=c.next())b.addLicenseServer(d.value,a.license);"certificate"in a&&b.addCertificateUri(a.certificate);return b}return null};
|
|
418
|
-
shakaDemo.Main.prototype.readHash_=function(){var a=this,b=this.getParams_();if(this.player_){var c=this.player_.getConfiguration();shakaDemo.Utils.runThroughHashParams(function(f,g){if(f in b){var h=a.getCurrentConfigValue(g)
|
|
412
|
+
shakaDemo.Main.prototype.readHash_=function(){var a=this,b=this.getParams_();if(this.player_){var c=this.player_.getConfiguration();shakaDemo.Utils.runThroughHashParams(function(f,g){if(f in b){var h=a.getCurrentConfigValue(g);f=b[f];"boolean"==typeof h?f="true"==f:"number"==typeof h&&(f=parseFloat(f));a.configure(g,f)}},c);if(c=this.getCurrentConfigValue("drm.advanced"))for(var d=$jscomp.makeIterator(shakaDemo.Main.commonDrmSystems),e=d.next();!e.done;e=d.next())e=e.value,c[e]||(c[e]=shakaDemo.Main.defaultAdvancedDrmConfig()),
|
|
419
413
|
"videoRobustness"in b&&(c[e].videoRobustness=b.videoRobustness),"audioRobustness"in b&&(c[e].audioRobustness=b.audioRobustness)}"lang"in b&&(c=b.lang,this.configure("preferredAudioLanguage",c),this.configure("preferredTextLanguage",c),this.setUILocale(c));"uilang"in b&&this.setUILocale(b.uilang);"noadaptation"in b&&this.configure("abr.enabled",!1);this.makeVersionLinks_();this.nativeControlsEnabled_="nativecontrols"in b;"trickplay"in b&&(this.trickPlayControlsEnabled_=!0,this.configureUI_());shakaDemo.Utils.browserSupportsUncompiledMode()||
|
|
420
414
|
(c=document.getElementById("uncompiled-link"),goog.asserts.assert(c instanceof HTMLAnchorElement,"Wrong element type!"),c.setAttribute("disabled",""),c.removeAttribute("href"),c.title="requires a newer browser");shaka.log&&("vv"in b?shaka.log.setLevel(shaka.log.Level.V2):"v"in b?shaka.log.setLevel(shaka.log.Level.V1):"debug"in b?shaka.log.setLevel(shaka.log.Level.DEBUG):"info"in b&&shaka.log.setLevel(shaka.log.Level.INFO))};
|
|
421
|
-
shakaDemo.Main.prototype.makeVersionLinks_=function(){var a=this,b=this.getParams_(),c="uncompiled";"build"in b?c=b.build:"compiled"in b&&(c="compiled");b={};for(var d=$jscomp.makeIterator(["compiled","debug_compiled","uncompiled"]),e=d.next();!e.done;b={$jscomp$loop$prop$type$
|
|
422
|
-
c==b.$jscomp$loop$prop$type$
|
|
423
|
-
shakaDemo.Main.prototype.getParams_=function(){var a=location.search.substr(1);a=a?a.split(";"):[];var b=location.hash.substr(1);b=b?b.split(";"):[];b=a.concat(b);a={};b=$jscomp.makeIterator(b);for(var c=b.next();!c.done;c=b.next())c=c.value.split("="),a[c[0]]=c.slice(1).join("=");return a};shakaDemo.Main.prototype.getValueFromGivenConfig_=function(a,b){for(
|
|
415
|
+
shakaDemo.Main.prototype.makeVersionLinks_=function(){var a=this,b=this.getParams_(),c="uncompiled";"build"in b?c=b.build:"compiled"in b&&(c="compiled");b={};for(var d=$jscomp.makeIterator(["compiled","debug_compiled","uncompiled"]),e=d.next();!e.done;b={$jscomp$loop$prop$type$84:b.$jscomp$loop$prop$type$84},e=d.next())b.$jscomp$loop$prop$type$84=e.value,e=document.getElementById(b.$jscomp$loop$prop$type$84.split("_").join("-")+"-link"),goog.asserts.assert(e instanceof HTMLAnchorElement,"Wrong element type!"),
|
|
416
|
+
c==b.$jscomp$loop$prop$type$84?(e.setAttribute("disabled",""),e.removeAttribute("href"),e.title="currently selected"):(e.removeAttribute("disabled"),e.addEventListener("click",function(f){return function(){var g=location.hash.substr(1).split(";").filter(function(h){return"compiled"!=h&&"build"!=h.split("=")[0]});g.push("build="+f.$jscomp$loop$prop$type$84);a.setNewHashSilent_(g.join(";"));location.reload();return!1}}(b)))};
|
|
417
|
+
shakaDemo.Main.prototype.getParams_=function(){var a=location.search.substr(1);a=a?a.split(";"):[];var b=location.hash.substr(1);b=b?b.split(";"):[];b=a.concat(b);a={};b=$jscomp.makeIterator(b);for(var c=b.next();!c.done;c=b.next())c=c.value.split("="),a[c[0]]=c.slice(1).join("=");return a};shakaDemo.Main.prototype.getValueFromGivenConfig_=function(a,b){for(;a;){var c=a.split(/\.(.+)/);if(3==c.length)a=c[1],b=b[c[0]];else return b[c[0]]}};
|
|
424
418
|
shakaDemo.Main.prototype.getCurrentConfigValue=function(a){return this.getValueFromGivenConfig_(a,this.desiredConfig_)};shakaDemo.Main.prototype.resetConfiguration=function(a){this.configure(a,void 0)};shakaDemo.Main.prototype.configure=function(a,b){2==arguments.length&&"string"==typeof a&&(a=shaka.util.ConfigUtils.convertToConfigObject(a,b));shaka.util.PlayerConfiguration.mergeConfigObjects(this.desiredConfig_,a,this.defaultConfig_);this.player_.configure(a,b)};
|
|
425
|
-
shakaDemo.Main.prototype.getConfiguration=function(){return this.desiredConfig_};shakaDemo.Main.prototype.requestCertificate_=function(a,b){var c,d,e;return $jscomp.asyncExecutePromiseGeneratorProgram(function(f){if(1==f.nextAddress)return c=shaka.net.NetworkingEngine.RequestType.APP,d={uris:[a]},f.yield(b.request(c,d).promise,2);e=f.yieldResult;return f
|
|
419
|
+
shakaDemo.Main.prototype.getConfiguration=function(){return this.desiredConfig_};shakaDemo.Main.prototype.requestCertificate_=function(a,b){var c,d,e;return $jscomp.asyncExecutePromiseGeneratorProgram(function(f){if(1==f.nextAddress)return c=shaka.net.NetworkingEngine.RequestType.APP,d={uris:[a]},f.yield(b.request(c,d).promise,2);e=f.yieldResult;return f.return(e.data)})};shakaDemo.Main.prototype.getIsVisualizerActive=function(){return this.visualizer_?this.visualizer_.active:!1};
|
|
426
420
|
shakaDemo.Main.prototype.setIsVisualizerActive=function(a){if(this.visualizer_){var b=this.visualizer_.active;this.visualizer_.active=a;b!=a&&(a?this.visualizer_.start():this.visualizer_.stop())}};
|
|
427
421
|
shakaDemo.Main.prototype.unload=function(){this.visualizer_&&this.visualizer_.stop();this.selectedAsset=null;var a=document.getElementById("video-bar");this.hideElement_(a);this.video_.poster=shakaDemo.Main.mainPoster_;document.fullscreenElement&&document.exitFullscreen();this.video_.webkitDisplayingFullscreen&&this.video_.webkitExitFullscreen();document.pictureInPictureElement&&document.exitPictureInPicture();this.player_.unload();this.dispatchEventWithName_("shaka-main-selected-asset-changed");
|
|
428
422
|
navigator.mediaSession&&(navigator.mediaSession.metadata=null);this.remakeHash()};
|
|
@@ -433,18 +427,18 @@ shakaDemo.Main.prototype.loadAsset=function(a){var b=this,c,d,e,f,g,h;return $js
|
|
|
433
427
|
b.player_.setVideoContainer(b.container_)),k.yield(b.drmConfiguration_(a),4);case 4:b.controls_.getCastProxy().setAppData({asset:a});c=a.manifestUri;a.storedContent&&a.storedContent.offlineUri&&(c=a.storedContent.offlineUri);if(!(a.imaAssetKey||a.imaContentSrcId&&a.imaVideoId)){k.jumpTo(5);break}return k.yield(b.getManifestUriFromAdManager_(a),6);case 6:c=k.yieldResult;case 5:return k.yield(b.player_.load(c,null,a.mimeType||void 0),7);case 7:b.player_.isAudioOnly()&&(b.video_.poster=shakaDemo.Main.audioOnlyPoster_);
|
|
434
428
|
if((d=b.player_.getAdManager())&&a.adTagUri)try{goog.asserts.assert(null!=b.video_,"this.video should exist!"),d.initClientSide(b.controls_.getClientSideAdContainer(),b.video_),e=new google.ima.AdsRequest,e.adTagUrl=a.adTagUri,d.requestClientSideAds(e)}catch(l){console.log(l),console.warn("Ads code has been prevented from running. Proceeding without ads.")}navigator.mediaSession&&(f={title:a.name,artwork:[{src:a.iconUri}]},f.artist=a.source,navigator.mediaSession.metadata=new MediaMetadata(f));b.visualizer_&&
|
|
435
429
|
b.visualizer_.active&&b.visualizer_.start();k.leaveTryBlock(3);break;case 2:if(h=g=k.enterCatchBlock(),h.code==shaka.util.Error.Code.LOAD_INTERRUPTED)console.debug("load() interrupted");else b.onError_(h);case 3:b.remakeHash(),k.jumpToEnd()}})};
|
|
436
|
-
shakaDemo.Main.prototype.remakeHash=function(){var a=this;if(this.fullyLoaded_){var b=[];if(this.player_){var c=this.player_.getConfiguration();shakaDemo.Utils.runThroughHashParams(function(f,g){var h=a.getCurrentConfigValue(g)
|
|
430
|
+
shakaDemo.Main.prototype.remakeHash=function(){var a=this;if(this.fullyLoaded_){var b=[];if(this.player_){var c=this.player_.getConfiguration();shakaDemo.Utils.runThroughHashParams(function(f,g){var h=a.getCurrentConfigValue(g);g=a.getValueFromGivenConfig_(g,a.defaultConfig_);var k=isNaN(h)&&isNaN(g);h==g||k||b.push(f+"="+h)},c);var d=this.getCurrentConfigValue("drm.advanced");if(d){var e=$jscomp.makeIterator(shakaDemo.Main.commonDrmSystems);for(c=e.next();!c.done;c=e.next())if(c=d[c.value]){c.videoRobustness&&
|
|
437
431
|
b.push("videoRobustness="+c.videoRobustness);c.audioRobustness&&b.push("audioRobustness="+c.audioRobustness);break}}}this.getCurrentConfigValue("abr.enabled")||b.push("noadaptation");b.push("uilang="+this.getUILocale());if(this.selectedAsset){d=shakaAssets.testAssets.includes(this.selectedAsset);b.push("asset="+this.selectedAsset.manifestUri);this.selectedAsset.adTagUri&&b.push("adTagUri="+this.selectedAsset.adTagUri);if(!d&&this.selectedAsset.licenseServers.size)for(c=this.selectedAsset.licenseServers.values().next().value,
|
|
438
432
|
b.push("license="+c),e=$jscomp.makeIterator(this.selectedAsset.licenseServers.keys()),c=e.next();!c.done;c=e.next())if(c=c.value,!shakaDemo.Main.commonDrmSystems.includes(c)){b.push("drmSystem="+c);break}!d&&this.selectedAsset.certificateUri&&b.push("certificate="+this.selectedAsset.certificateUri)}c=document.getElementById("nav-button-container");c=$jscomp.makeIterator(c.childNodes);for(d=c.next();!d.done;d=c.next())if(d=d.value,d.nodeType==Node.ELEMENT_NODE&&(goog.asserts.assert(d instanceof HTMLElement,
|
|
439
433
|
"Wrong node type!"),d.classList.contains("mdl-button--accent"))){b.push("panel="+d.getAttribute("tab-identifier"));(c=d.getAttribute("tab-hash"))&&b.push("panelData="+c);break}c=$jscomp.makeIterator(["compiled","debug_compiled","uncompiled"]);for(d=c.next();!d.done;d=c.next())d=d.value,document.getElementById(d.split("_").join("-")+"-link").hasAttribute("disabled")&&b.push("build="+d);this.noInput_&&b.push("noinput");this.nativeControlsEnabled_&&b.push("nativecontrols");this.trickPlayControlsEnabled_&&
|
|
440
434
|
b.push("trickplay");if(shaka.log&&shaka.log.currentLevel!=shaka.log.MAX_LOG_LEVEL)switch(shaka.log.currentLevel){case shaka.log.Level.INFO:b.push("info");break;case shaka.log.Level.DEBUG:b.push("debug");break;case shaka.log.Level.V2:b.push("vv");break;case shaka.log.Level.V1:b.push("v")}this.setNewHashSilent_(b.join(";"))}};shakaDemo.Main.prototype.setNewHashSilent_=function(a){history.replaceState(null,"",document.location.pathname+"#"+a)};shakaDemo.Main.prototype.getHamburgerMenu=function(){return document.getElementById("hamburger-menu-contents")};
|
|
441
435
|
shakaDemo.Main.prototype.hideElement_=function(a){a.classList.add("hidden")};shakaDemo.Main.prototype.showElement_=function(a){a.classList.remove("hidden")};
|
|
442
436
|
shakaDemo.Main.prototype.getManifestUriFromAdManager_=function(a){var b=this,c,d,e,f,g;return $jscomp.asyncExecutePromiseGeneratorProgram(function(h){if(1==h.nextAddress)return c=b.player_.getAdManager(),d=b.controls_.getServerSideAdContainer(),h.setCatchFinallyBlocks(2),goog.asserts.assert(null!=b.video_,"Video should not be null!"),c.initServerSide(d,b.video_),null!=a.imaAssetKey?(e=new google.ima.dai.api.LiveStreamRequest,e.assetKey=a.imaAssetKey):(goog.asserts.assert(null!=a.imaContentSrcId&&
|
|
443
|
-
null!=a.imaVideoId,"Asset should have ima ids!"),e=new google.ima.dai.api.VODStreamRequest,e.contentSourceId=a.imaContentSrcId,e.videoId=a.imaVideoId),h.yield(c.requestServerSideStream(e,a.manifestUri),4);if(2!=h.nextAddress)return f=h.yieldResult,h
|
|
437
|
+
null!=a.imaVideoId,"Asset should have ima ids!"),e=new google.ima.dai.api.VODStreamRequest,e.contentSourceId=a.imaContentSrcId,e.videoId=a.imaVideoId),h.yield(c.requestServerSideStream(e,a.manifestUri),4);if(2!=h.nextAddress)return f=h.yieldResult,h.return(f);g=h.enterCatchBlock();console.log(g);console.warn("Ads code has been prevented from running or returned an error. Proceeding without ads.");return h.return(a.manifestUri)})};
|
|
444
438
|
shakaDemo.Main.prototype.addNavButton=function(a){var b=this,c=document.getElementById("nav-button-container"),d=document.getElementById("contents"),e=document.getElementById("nav-button-"+a),f=this.getParams_();(a=f.panel==encodeURI(e.getAttribute("tab-identifier")))?(f=f.panelData)&&e.setAttribute("tab-hash",f):f.panel||(a=null!=e.getAttribute("defaultselected"));var g=document.createElement("div");this.hideElement_(g);d.appendChild(g);f=function(){for(var h=$jscomp.makeIterator(c.childNodes),k=
|
|
445
439
|
h.next();!k.done;k=h.next())k=k.value,k.nodeType==Node.ELEMENT_NODE&&(goog.asserts.assert(k instanceof Element,"Wrong node type!"),k.classList.remove("mdl-button--accent"));h=$jscomp.makeIterator(d.childNodes);for(k=h.next();!k.done;k=h.next())k=k.value,k.nodeType==Node.ELEMENT_NODE&&(goog.asserts.assert(k instanceof Element,"Wrong node type!"),b.hideElement_(k));e.classList.add("mdl-button--accent");b.showElement_(g);b.remakeHash();b.dispatchEventWithName_("shaka-main-page-changed");g.scrollIntoView({behavior:"smooth",
|
|
446
440
|
block:"start"})};e.addEventListener("click",f);a&&Promise.resolve().then(f);return{container:g,button:e}};shakaDemo.Main.prototype.dispatchEventWithName_=function(a){var b=document.createEvent("CustomEvent");b.initCustomEvent(a,!1,!1,null);document.dispatchEvent(b)};
|
|
447
|
-
shakaDemo.Main.prototype.setUpVersionStrings_=function(){for(var a=shaka.Player.version.split("-"),b=[],c={},d=$jscomp.makeIterator(["debug","uncompiled"]),e=d.next();!e.done;c={$jscomp$loop$prop$whitelisted$
|
|
441
|
+
shakaDemo.Main.prototype.setUpVersionStrings_=function(){for(var a=shaka.Player.version.split("-"),b=[],c={},d=$jscomp.makeIterator(["debug","uncompiled"]),e=d.next();!e.done;c={$jscomp$loop$prop$whitelisted$86:c.$jscomp$loop$prop$whitelisted$86},e=d.next())c.$jscomp$loop$prop$whitelisted$86=e.value,a.includes(c.$jscomp$loop$prop$whitelisted$86)&&(b.push(c.$jscomp$loop$prop$whitelisted$86),a=a.filter(function(f){return function(g){return g!=f.$jscomp$loop$prop$whitelisted$86}}(c)));c=document.getElementsByClassName("version-string");
|
|
448
442
|
c=$jscomp.makeIterator(c);for(d=c.next();!d.done;d=c.next())d=d.value,d.textContent=a.join("-"),0<b.length&&(d.textContent+=" ("+b.join(", ")+")")};shakaDemo.Main.prototype.closeError_=function(){document.getElementById("error-display").classList.add("hidden");this.errorDisplayLink_.href="";this.errorDisplayLink_.textContent="";this.currentErrorSeverity_=null};shakaDemo.Main.prototype.onErrorEvent_=function(a){this.onError_(a.detail)};
|
|
449
443
|
shakaDemo.Main.prototype.onError_=function(a){var b=a.severity;if(null==b||void 0==a.severity)b=shaka.util.Error.Severity.CRITICAL;var c=a.message||"Error code "+a.code,d="";a.code&&(d="../docs/api/shaka.util.Error.html#value:"+a.code);console.error(a);this.handleError_(b,c,d)};
|
|
450
444
|
shakaDemo.Main.prototype.handleError_=function(a,b,c){if(null==this.currentErrorSeverity_||a>this.currentErrorSeverity_)this.errorDisplayLink_.href=c,void 0===this.errorDisplayLink_.textContent?this.errorDisplayLink_.innerText=b:this.errorDisplayLink_.textContent=b,this.currentErrorSeverity_=a,this.errorDisplayLink_.href?this.errorDisplayLink_.classList.remove("input-disabled"):this.errorDisplayLink_.classList.add("input-disabled"),document.getElementById("error-display").classList.remove("hidden")};
|
|
@@ -460,7 +454,7 @@ shakaDemo.Search.prototype.updateOfflineProgress_=function(){for(var a=$jscomp.m
|
|
|
460
454
|
shakaDemo.Search.prototype.remakeResultsDiv_=function(){var a=this;shaka.util.Dom.removeAllChildren(this.resultsDiv_);this.assetCards_=this.searchResults_().map(function(b){return a.createAssetCardFor_(b)});this.updateSelected_()};
|
|
461
455
|
shakaDemo.Search.prototype.checkDesiredTerm_=function(a,b){switch(b){case shakaDemo.Search.TermType.DRM:return this.desiredDRM_==a;case shakaDemo.Search.TermType.SOURCE:return this.desiredSource_==a;case shakaDemo.Search.TermType.FEATURE:return this.desiredFeatures_.includes(a);default:return!1}};
|
|
462
456
|
shakaDemo.Search.prototype.addDesiredTerm_=function(a,b,c){switch(b){case shakaDemo.Search.TermType.DRM:this.desiredDRM_=a;break;case shakaDemo.Search.TermType.SOURCE:this.desiredSource_=a;break;case shakaDemo.Search.TermType.FEATURE:b=$jscomp.makeIterator(c);for(c=b.next();!c.done;c=b.next())c=this.desiredFeatures_.indexOf(c.value),-1!=c&&this.desiredFeatures_.splice(c,1);this.desiredFeatures_.push(a)}};
|
|
463
|
-
shakaDemo.Search.prototype.removeDesiredTerm_=function(a,b){switch(b){case shakaDemo.Search.TermType.DRM:this.desiredDRM_=null;break;case shakaDemo.Search.TermType.SOURCE:this.desiredSource_=null;break;case shakaDemo.Search.TermType.FEATURE:
|
|
457
|
+
shakaDemo.Search.prototype.removeDesiredTerm_=function(a,b){switch(b){case shakaDemo.Search.TermType.DRM:this.desiredDRM_=null;break;case shakaDemo.Search.TermType.SOURCE:this.desiredSource_=null;break;case shakaDemo.Search.TermType.FEATURE:a=this.desiredFeatures_.indexOf(a),-1!=a&&this.desiredFeatures_.splice(a,1)}};
|
|
464
458
|
shakaDemo.Search.prototype.makeBooleanInput_=function(a,b,c,d){var e=this;a.addRow(b,d,"significant-right-padding");(new shakaDemo.BoolInput(a,b,function(f){f.checked?e.addDesiredTerm_(b,c,[b]):e.removeDesiredTerm_(b,c);e.remakeResultsDiv_();componentHandler.upgradeDom();e.updateHashParameters_()})).input().checked=this.checkDesiredTerm_(b,c)};
|
|
465
459
|
shakaDemo.Search.prototype.makeSelectInput_=function(a,b,c,d){var e=this;a.addRow(null,null);for(var f={},g=$jscomp.makeIterator(c),h=g.next();!h.done;h=g.next())h=h.value,f[h]=shakaDemoMain.getLocalizedString(h);var k=f["---"]="---";a=new shakaDemo.SelectInput(a,b,function(l){"---"!=l.value?e.addDesiredTerm_(l.value,d,c):e.removeDesiredTerm_(k,d);k=l.value;e.remakeResultsDiv_();componentHandler.upgradeDom();e.updateHashParameters_()},f);a.input().value="---";b=$jscomp.makeIterator(c);for(f=b.next();!f.done;f=
|
|
466
460
|
b.next())if(f=f.value,this.checkDesiredTerm_(f,d)){k=a.input().value=f;break}};
|