bitmovin-player 8.263.0 → 8.264.0
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/bitmovinplayer-serviceworker.js +2 -2
- package/bitmovinplayer-serviceworker.prod.js +2 -2
- package/bitmovinplayer-ui.css +1 -1
- package/bitmovinplayer-ui.js +2 -2
- package/bitmovinplayer.js +2 -2
- package/bitmovinplayer.prod.js +2 -2
- package/modules/bitmovinplayer-abr.js +2 -2
- package/modules/bitmovinplayer-abr.prod.js +2 -2
- package/modules/bitmovinplayer-advertising-bitmovin.js +2 -2
- package/modules/bitmovinplayer-advertising-bitmovin.prod.js +2 -2
- package/modules/bitmovinplayer-advertising-core.js +2 -2
- package/modules/bitmovinplayer-advertising-core.prod.js +2 -2
- package/modules/bitmovinplayer-advertising-ima.js +2 -2
- package/modules/bitmovinplayer-advertising-ima.prod.js +2 -2
- package/modules/bitmovinplayer-advertising-omsdk.js +2 -2
- package/modules/bitmovinplayer-advertising-omsdk.prod.js +2 -2
- package/modules/bitmovinplayer-analytics.js +1 -1
- package/modules/bitmovinplayer-analytics.prod.js +1 -1
- package/modules/bitmovinplayer-container-mp4.js +2 -2
- package/modules/bitmovinplayer-container-mp4.prod.js +2 -2
- package/modules/bitmovinplayer-container-ts.js +2 -2
- package/modules/bitmovinplayer-container-ts.prod.js +2 -2
- package/modules/bitmovinplayer-container-webm.js +2 -2
- package/modules/bitmovinplayer-container-webm.prod.js +2 -2
- package/modules/bitmovinplayer-core.js +2 -2
- package/modules/bitmovinplayer-core.prod.js +2 -2
- package/modules/bitmovinplayer-crypto.js +1 -1
- package/modules/bitmovinplayer-crypto.prod.js +1 -1
- package/modules/bitmovinplayer-dash.js +1 -1
- package/modules/bitmovinplayer-dash.prod.js +1 -1
- package/modules/bitmovinplayer-drm.js +2 -2
- package/modules/bitmovinplayer-drm.prod.js +2 -2
- package/modules/bitmovinplayer-engine-bitmovin.js +2 -2
- package/modules/bitmovinplayer-engine-bitmovin.prod.js +2 -2
- package/modules/bitmovinplayer-engine-native.js +2 -2
- package/modules/bitmovinplayer-engine-native.prod.js +2 -2
- package/modules/bitmovinplayer-engine-webrtc.js +2 -2
- package/modules/bitmovinplayer-engine-webrtc.prod.js +2 -2
- package/modules/bitmovinplayer-envivio.js +1 -1
- package/modules/bitmovinplayer-envivio.prod.js +1 -1
- package/modules/bitmovinplayer-hls.js +2 -2
- package/modules/bitmovinplayer-hls.prod.js +2 -2
- package/modules/bitmovinplayer-lowlatency.js +2 -2
- package/modules/bitmovinplayer-lowlatency.prod.js +2 -2
- package/modules/bitmovinplayer-mserenderer.js +2 -2
- package/modules/bitmovinplayer-mserenderer.prod.js +2 -2
- package/modules/bitmovinplayer-patch.js +1 -1
- package/modules/bitmovinplayer-patch.prod.js +1 -1
- package/modules/bitmovinplayer-playstation4.js +2 -2
- package/modules/bitmovinplayer-playstation4.prod.js +2 -2
- package/modules/bitmovinplayer-playstation5.js +2 -2
- package/modules/bitmovinplayer-playstation5.prod.js +2 -2
- package/modules/bitmovinplayer-polyfill.js +1 -1
- package/modules/bitmovinplayer-polyfill.prod.js +1 -1
- package/modules/bitmovinplayer-reactnative.js +1 -1
- package/modules/bitmovinplayer-reactnative.prod.js +1 -1
- package/modules/bitmovinplayer-remotecontrol.js +2 -2
- package/modules/bitmovinplayer-remotecontrol.prod.js +2 -2
- package/modules/bitmovinplayer-serviceworker-client.js +2 -2
- package/modules/bitmovinplayer-serviceworker-client.prod.js +2 -2
- package/modules/bitmovinplayer-serviceworker.js +2 -2
- package/modules/bitmovinplayer-serviceworker.prod.js +2 -2
- package/modules/bitmovinplayer-sgai.js +2 -2
- package/modules/bitmovinplayer-sgai.prod.js +2 -2
- package/modules/bitmovinplayer-smooth.js +2 -2
- package/modules/bitmovinplayer-smooth.prod.js +2 -2
- package/modules/bitmovinplayer-style.js +2 -2
- package/modules/bitmovinplayer-style.prod.js +2 -2
- package/modules/bitmovinplayer-subtitles-cea608.js +2 -2
- package/modules/bitmovinplayer-subtitles-cea608.prod.js +2 -2
- package/modules/bitmovinplayer-subtitles-native.js +2 -2
- package/modules/bitmovinplayer-subtitles-native.prod.js +2 -2
- package/modules/bitmovinplayer-subtitles-ttml.js +1 -1
- package/modules/bitmovinplayer-subtitles-ttml.prod.js +2 -2
- package/modules/bitmovinplayer-subtitles-vtt.js +2 -2
- package/modules/bitmovinplayer-subtitles-vtt.prod.js +1 -1
- package/modules/bitmovinplayer-subtitles.js +2 -2
- package/modules/bitmovinplayer-subtitles.prod.js +2 -2
- package/modules/bitmovinplayer-thumbnail-imp.js +2 -2
- package/modules/bitmovinplayer-thumbnail-imp.prod.js +2 -2
- package/modules/bitmovinplayer-thumbnail.js +2 -2
- package/modules/bitmovinplayer-thumbnail.prod.js +2 -2
- package/modules/bitmovinplayer-tizen.js +2 -2
- package/modules/bitmovinplayer-tizen.prod.js +2 -2
- package/modules/bitmovinplayer-ui.js +2 -2
- package/modules/bitmovinplayer-ui.prod.js +1 -1
- package/modules/bitmovinplayer-vidaa.js +2 -2
- package/modules/bitmovinplayer-vidaa.prod.js +2 -2
- package/modules/bitmovinplayer-vr.js +2 -2
- package/modules/bitmovinplayer-vr.prod.js +2 -2
- package/modules/bitmovinplayer-webos.js +2 -2
- package/modules/bitmovinplayer-webos.prod.js +2 -2
- package/modules/bitmovinplayer-wpe.js +2 -2
- package/modules/bitmovinplayer-wpe.prod.js +1 -1
- package/modules/bitmovinplayer-xml.js +1 -1
- package/modules/bitmovinplayer-xml.prod.js +1 -1
- package/package.json +1 -1
- package/types/advertising/API.d.ts +1 -1
- package/types/core/PlayerAPI.d.ts +1 -1
|
@@ -9,10 +9,10 @@
|
|
|
9
9
|
* This software includes open-source components. See THIRD_PARTY_NOTICES
|
|
10
10
|
* in the distribution for details.
|
|
11
11
|
*
|
|
12
|
-
* Bitmovin Player Version 8.
|
|
12
|
+
* Bitmovin Player Version 8.264.0
|
|
13
13
|
*
|
|
14
14
|
****************************************************************************/
|
|
15
15
|
|
|
16
16
|
(function() {
|
|
17
|
-
"use strict";!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports["serviceworker-client"]=t():(e.bitmovin=e.bitmovin||{},e.bitmovin.player=e.bitmovin.player||{},e.bitmovin.player["serviceworker-client"]=t())}(self,(function(){return(self.webpackChunkbitmovin_player=self.webpackChunkbitmovin_player||[]).push([[930],{79868:function(e,t){var i,n;Object.defineProperty(t,"__esModule",{value:!0}),t.ResponseStatusCode=t.ServiceWorkerMessageType=void 0,function(e){e.Dispose="dispose",e.Logging="logging",e.Playlist="playlist",e.Segment="segment",e.QueryParameters="queryparameters",e.WithCredentials="withcredentials",e.PreProcessRequestStarted="preprocessRequestStarted",e.PreProcessRequestFinished="preprocessRequestFinished",e.PreProcessResponseStarted="preprocessResponseStarted",e.PreProcessResponseFinished="preprocessResponseFinished"}(i||(t.ServiceWorkerMessageType=i={})),function(e){e[e.Success=200]="Success",e[e.PartialContent=206]="PartialContent",e[e.BadRequest=400]="BadRequest"}(n||(t.ResponseStatusCode=n={}))},81772:function(e,t,i){Object.defineProperty(t,"__esModule",{value:!0}),t.ServiceWorkerClientModuleDefinition=void 0;var n=i(62756),r=i(61402);t.ServiceWorkerClientModuleDefinition={name:n.ModuleName.ServiceWorkerClient,module:function(){return{createServiceWorkerHlsManifestController:r.createServiceWorkerHlsManifestController}},dependencies:[n.ModuleName.HLS]},t.default=t.ServiceWorkerClientModuleDefinition},72439:function(e,t,i){Object.defineProperty(t,"__esModule",{value:!0}),t.ServiceWorkerClient=void 0;var n=i(25926),r=i(4224),s=i(3714),o=function(){function e(e){var t=this;this.FX=null,this.GX=function(e){if(t.DX.videoElement.getWrappedElement()){var i=t.DX.internalPlayerID;e.data.clientId&&e.data.clientId!==i?t.DX.logger.insane("".concat(i," ignores '").concat(e.data.type,"' event from another player")):t.EX[e.data.type]&&t.EX[e.data.type].forEach((function(t){return t(e.data)}))}},this.DX=e,this.EX={playlist:[],segment:[],logging:[],preprocessRequestStarted:[],preprocessResponseStarted:[]}}return e.prototype.initialize=function(){var e=this,t=this.DX.config.tweaks&&this.DX.config.tweaks.serviceworker_scope?{scope:this.DX.config.tweaks.serviceworker_scope}:{};return""===this.DX.config.location.serviceworker?(this.DX.eventHandler.dispatchEvent(s.PlayerEvent.Warning,new n.PlayerWarning(r.WarningCode.SETUP_SERVICE_WORKER_LOCATION_MISSING)),Promise.reject()):navigator.serviceWorker.register(this.DX.config.location.serviceworker,t).then((function(e){return e.update()})).then((function(){return navigator.serviceWorker.ready})).then((function(t){var i;e.FX=null!==(i=t.active)&&void 0!==i?i:navigator.serviceWorker.controller,navigator.serviceWorker.addEventListener("message",e.GX)})).catch((function(t){throw e.DX.eventHandler.dispatchEvent(s.PlayerEvent.Warning,new n.PlayerWarning(r.WarningCode.SETUP_SERVICE_WORKER_INITIALIZATION_FAILED,"ServiceWorker setup failed with error ".concat(t))),t}))},e.prototype.sendMessage=function(e){this.FX&&this.FX.postMessage(e)},e.prototype.addPlaylistListener=function(e){this.EX.playlist.push(e)},e.prototype.addSegmentListener=function(e){this.EX.segment.push(e)},e.prototype.addLoggingListener=function(e){this.EX.logging.push(e)},e.prototype.addPreprocessRequestListener=function(e){this.EX.preprocessRequestStarted.push(e)},e.prototype.addPreprocessResponseListener=function(e){this.EX.preprocessResponseStarted.push(e)},e.prototype.dispose=function(){navigator.serviceWorker.removeEventListener("message",this.GX),this.EX={playlist:[],segment:[],logging:[],preprocessRequestStarted:[],preprocessResponseStarted:[]},this.FX=null},e}();t.ServiceWorkerClient=o},61402:function(e,t,i){var n=this&&this.__extends||function(){var e=function(t,i){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i])},e(t,i)};return function(t,i){if("function"!=typeof i&&null!==i)throw new TypeError("Class extends value "+String(i)+" is not a constructor or null");function n(){this.constructor=t}e(t,i),t.prototype=null===i?Object.create(i):(n.prototype=i.prototype,new n)}}(),r=this&&this.__assign||function(){return r=Object.assign||function(e){for(var t,i=1,n=arguments.length;i<n;i++)for(var r in t=arguments[i])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},r.apply(this,arguments)},s=this&&this.__awaiter||function(e,t,i,n){return new(i||(i=Promise))((function(r,s){function o(e){try{l(n.next(e))}catch(e){s(e)}}function a(e){try{l(n.throw(e))}catch(e){s(e)}}function l(e){e.done?r(e.value):function(e){return e instanceof i?e:new i((function(t){t(e)}))}(e.value).then(o,a)}l((n=n.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var i,n,r,s={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]},o=Object.create(("function"==typeof Iterator?Iterator:Object).prototype);return o.next=a(0),o.throw=a(1),o.return=a(2),"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(a){return function(l){return function(a){if(i)throw new TypeError("Generator is already executing.");for(;o&&(o=0,a[0]&&(s=0)),s;)try{if(i=1,n&&(r=2&a[0]?n.return:a[0]?n.throw||((r=n.return)&&r.call(n),0):n.next)&&!(r=r.call(n,a[1])).done)return r;switch(n=0,r&&(a=[2&a[0],r.value]),a[0]){case 0:case 1:r=a;break;case 4:return s.label++,{value:a[1],done:!1};case 5:s.label++,n=a[1],a=[0];continue;case 7:a=s.ops.pop(),s.trys.pop();continue;default:if(!((r=(r=s.trys).length>0&&r[r.length-1])||6!==a[0]&&2!==a[0])){s=0;continue}if(3===a[0]&&(!r||a[1]>r[0]&&a[1]<r[3])){s.label=a[1];break}if(6===a[0]&&s.label<r[1]){s.label=r[1],r=a;break}if(r&&s.label<r[2]){s.label=r[2],s.ops.push(a);break}r[2]&&s.ops.pop(),s.trys.pop();continue}a=t.call(e,s)}catch(e){a=[6,e],n=0}finally{i=r=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,l])}}};Object.defineProperty(t,"__esModule",{value:!0}),t.createServiceWorkerHlsManifestController=function(e){return a||(a=function(e){function t(t){var i=e.call(this,t)||this;return i.parsedManifest=null,i.originalManifest=null,i.uz=null,i.yz=[],i.zz=function(e){return s(i,void 0,void 0,(function(){var t,i,n,s,a,l;return o(this,(function(o){switch(o.label){case 0:t=null===(l=this.context.config.network)||void 0===l?void 0:l.preprocessHttpRequest,i=r(r({},e.httpRequest),{headers:r({},e.httpRequest.headers)}),o.label=1;case 1:return o.trys.push([1,3,,4]),s=this.parsedManifest?c.HttpRequestType.MANIFEST_HLS_VARIANT:c.HttpRequestType.MANIFEST_HLS_MASTER,[4,null==t?void 0:t(s,i)];case 2:return n=o.sent(),[3,4];case 3:return a=o.sent(),this.context.logger.warn("Network preprocessHttpRequest failed with an error",a),[3,4];case 4:return this.vz.sendMessage({type:g.ServiceWorkerMessageType.PreProcessRequestFinished,id:e.id,httpRequest:null!=n?n:e.httpRequest,clientId:e.clientId}),[2]}}))}))},i.Az=function(e){return s(i,void 0,void 0,(function(){var t,i,n,s,a,l;return o(this,(function(o){switch(o.label){case 0:t=null===(l=this.context.config.network)||void 0===l?void 0:l.preprocessHttpResponse,i=r(r({},e.httpResponse),{headers:r({},e.httpResponse.headers)}),o.label=1;case 1:return o.trys.push([1,3,,4]),s=this.parsedManifest?c.HttpRequestType.MANIFEST_HLS_VARIANT:c.HttpRequestType.MANIFEST_HLS_MASTER,[4,null==t?void 0:t(s,i)];case 2:return n=o.sent(),[3,4];case 3:return a=o.sent(),this.context.logger.warn("Network preprocessHttpResponse failed with an error",a),[3,4];case 4:return this.vz.sendMessage({type:g.ServiceWorkerMessageType.PreProcessResponseFinished,id:e.id,httpResponse:null!=n?n:e.httpResponse,clientId:e.clientId}),[2]}}))}))},i.registerVariantPlaylist=function(e){var t,n=v.ModuleManager.get(y.ModuleName.HLS).NativeHlsManifestParserUtils.parseAndPrepareVariantPlaylist(i.parsedManifest,e,i.yz,i.context.config),r=n.playlist,s=n.variant,o=n.segments,a=n.discontinuitySequences;i.yz=a;var l=null===(t=o[0])||void 0===t?void 0:t.dateTime;return l&&(r.programDateTime=f.Util.timeInSeconds(l)),(0,u.extractDateRangeMetadata)(r.dateRange,r.endList?r.programDateTime:void 0,(function(e){i.dispatchDateRangeToParsedService(e)})),i.onPlaylistUpdated({playlist:r,variant:s,segments:o}),r},i.onPlaylistMessage=function(e){if(i.parsedManifest)try{i.registerVariantPlaylist(S(e))}catch(e){i.context.logger.debug("Ignoring playlist from Service Worker: ".concat(e.message))}else i.wz.resolve(i.uz),i.Cz(S(e),e.url)},i.Ez=function(e){if(i.context.videoElement.duration!==1/0)for(var t=i.segmentTimelineController.getAllTimelines(),n=Object.values(t),r=0;r<n.length;r++){var s=n[r];if(i.Dz(e.url,s)){i.segmentTimelineController.switchTimeline(s[0].variantPlaylistId);break}}else i.segmentTimelineController.addDownloadedSegments(e.url),s=i.segmentTimelineController.getCurrentTimeline(),i.Dz(e.url,s)},i.Hz=function(e){i.context.logger.debug("Logging",{message:e.message,data:e.data})},i.segmentTimelineController=new X.ServiceWorkerSegmentTimelineController(t.videoElement),i.xz={id:"not available",bitrate:0,height:0,width:0,isAuto:!0},i.context.logger.debug("Initializing controller for ServiceWorker"),i}return n(t,e),t.prototype.getDownloadedVideoData=function(){return this.xz},t.prototype.getPlayingVideoData=function(){var e,t,i=this.segmentTimelineController.getPlayingSegment(this.context.videoElement.currentTime);if(!i)return null;var n=this.parsedManifest.playlists.find((function(e){return e.id===i.variantPlaylistId}));if(!n)return null;var r=n.attributes.CODECS?p.CodecStringHelper.getExtractedCodecStrings(n.attributes.CODECS):{};return{id:n.id,bitrate:n.attributes.BANDWIDTH,frameRate:n.attributes["FRAME-RATE"]?Number(n.attributes["FRAME-RATE"]):void 0,width:null===(e=n.attributes.RESOLUTION)||void 0===e?void 0:e.width,height:null===(t=n.attributes.RESOLUTION)||void 0===t?void 0:t.height,codec:r.video}},t.prototype.init=function(){var e=this;return this.vz=new m.ServiceWorkerClient(this.context),this.vz.initialize().then((function(){var t;e.vz.addLoggingListener(e.Hz),e.vz.addPlaylistListener(e.onPlaylistMessage),e.vz.addSegmentListener(e.Ez),e.vz.addPreprocessRequestListener(e.zz),e.vz.addPreprocessResponseListener(e.Az),(null===(t=e.context.sourceContext.source.options)||void 0===t?void 0:t.withCredentials)&&e.vz.sendMessage({type:g.ServiceWorkerMessageType.WithCredentials,withCredentials:!0,clientId:e.context.internalPlayerID}),e.context.settings.QUERY_PARAMETERS&&e.vz.sendMessage({type:g.ServiceWorkerMessageType.QueryParameters,queryParameters:e.context.settings.QUERY_PARAMETERS,clientId:e.context.internalPlayerID})})).catch((function(t){throw e.dispose(),t}))},t.prototype.getParsedManifest=function(){return this.parsedManifest},t.prototype.getManifest=function(){return this.originalManifest},t.prototype.resolveMasterManifest=function(e){return this.parsedManifest?Promise.resolve(this.uz):(this.uz=e,this.Bz())},t.prototype.Bz=function(){var e=this;return this.wz=new d.Deferred,this.wz.promise.then((function(t){return h.URLHelper.appendQueryParametersToUrl(t,r(r({},e.context.config.tweaks.query_parameters),{"bitmovin-player-id":e.context.internalPlayerID}))}))},t.prototype.Cz=function(e,t){var i,n=v.ModuleManager.get(y.ModuleName.HLS).NativeHlsManifestParserUtils;this.originalManifest=e.body;var r=null!==(i=e.body)&&void 0!==i?i:"";return this.parsedManifest=n.parsePlaylist(r),n.isValidMasterPlaylist(this.parsedManifest)||(n.isValidVariantPlaylist(this.parsedManifest)?(r=b.replace("$VARIANT$",t),this.originalManifest=r,this.parsedManifest=n.parsePlaylist(r)):this.parsedManifest=null),r},t.prototype.Dz=function(e,t){var i=t.findIndex((function(t){return e.includes(t.uri)}));if(i>-1){var n=this.Fz(t[i].variantPlaylistId);if(n.bitrate!==this.xz.bitrate)return this.Gz(n,this.xz),this.xz=n,!0;this.xz=n}return!1},t.prototype.Fz=function(e){var t=this.parsedManifest.playlists.find((function(t){return t.id===e})),i={id:"",isAuto:!0,height:null,width:null,bitrate:null};return t&&t.hasOwnProperty("attributes")&&(t.attributes.RESOLUTION&&(i.id=t.attributes.RESOLUTION.height+"_",i.height=t.attributes.RESOLUTION.height,i.width=t.attributes.RESOLUTION.width),i.id+=t.attributes.BANDWIDTH,i.bitrate=t.attributes.BANDWIDTH),i},t.prototype.Gz=function(e,t){this.context.eventHandler.dispatchEvent(l.PlayerEvent.VideoDownloadQualityChange,{targetQuality:e,targetQualityId:e.id,sourceQuality:t,sourceQualityId:t.id})},t.prototype.getCurrentSegments=function(e,t,i,n){return Promise.resolve([])},t.prototype.overrideManifestUrl=function(e,t,i){return Promise.resolve(this.uz)},t.prototype.dispose=function(){e.prototype.dispose.call(this),this.parsedManifest=null,this.originalManifest=null,this.uz=null,this.vz.sendMessage({type:g.ServiceWorkerMessageType.Dispose,clientId:this.context.internalPlayerID}),this.vz.dispose()},t}(e)),a};var a,l=i(3714),u=i(32703),c=i(29669),p=i(34047),d=i(34841),h=i(58313),f=i(70850),v=i(88052),y=i(62756),g=i(79868),m=i(72439),X=i(69904),b="#EXTM3U\n#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=100000\n$VARIANT$\n";function S(e){return{url:e.url,body:e.playlist,headers:{},request:null,status:g.ResponseStatusCode.Success,statusText:"OK"}}},69904:function(e,t,i){Object.defineProperty(t,"__esModule",{value:!0}),t.ServiceWorkerSegmentTimelineController=void 0;var n=i(25541),r=i(19274),s=function(){function e(e){var t=this;this.PX=function(){t.LX.buffered.length&&!t.OX&&(n.populateCurrentTimelineWithPlaybackTime(t.getCurrentTimeline(),0,0),t.OX=!0)},this.HX={},this.IX=null,this.JX=null,this.KX=0,this.LX=e,this.MX=[],this.NX=!1,this.OX=!1,e.addEventListener(r.MediaElementEvent.progress,this.PX)}return e.prototype.QX=function(){return this.LX.duration===1/0},e.prototype.switchTimeline=function(e){this.IX!==e&&(this.QX()&&this.HX[e]&&(this.HX[e]=[]),this.HX[e]||(this.HX[e]=[]),this.JX=this.IX,this.IX=e,this.NX=!0)},e.prototype.updateTimeline=function(e,t){var i=this,r=this.HX[e],s=n.updateTimeline(r,t),o=s.reduce((function(e,t){return i.QX()||(t.playbackTime=e),e+t.duration}),0);return this.HX[e]=s,this.OX&&this.TX(s),o},e.prototype.RX=function(e){return this.JX&&this.KX&&e<this.KX?this.getPreviousTimeline():this.getCurrentTimeline()},e.prototype.getPlayingSegment=function(e){return this.RX(e).find((function(t){return e>=t.playbackTime&&e<=t.playbackTime+t.duration}))||null},e.prototype.addDownloadedSegments=function(e){this.MX.push(e),this.SX()},e.prototype.SX=function(){this.MX.length>5&&(this.MX=this.MX.slice(-5,this.MX.length))},e.prototype.TX=function(e){var t=e.findIndex((function(e){return e.hasOwnProperty("playbackTime")}));-1!==t?n.populateCurrentTimelineWithPlaybackTime(e,t,e[t].playbackTime):this.NX?(this.NX=!1,this.UX(this.IX,this.JX),this.KX=this.HX[this.IX][0].playbackTime):this.VX(this.IX)},e.prototype.UX=function(e,t){var i,r=this.HX[e]||[],s=this.HX[t]||[],o=r.findIndex((function(e){return i=s.find((function(t){return t.mediaSequenceNumber===e.mediaSequenceNumber&&t.playbackTime})),Boolean(i)}));-1!==o&&(null==i?void 0:i.playbackTime)?n.populateCurrentTimelineWithPlaybackTime(r,o,i.playbackTime):this.VX(e)},e.prototype.VX=function(e){for(var t=this.HX[e],i=this.MX.shift(),r=-1;i&&r<0;)r=t.findIndex((function(e){return i===e.uri})),i=this.MX.shift();if(t[r]){var s=this.WX(r,e);n.populateCurrentTimelineWithPlaybackTime(t,r,s)}},e.prototype.WX=function(e,t){var i=this.HX[t],n=this.LX.buffered.start(0),r=this.LX.buffered.end(0);return r-n>i[e].duration?r:n},e.prototype.getCurrentTimeline=function(){return this.HX[this.IX]||[]},e.prototype.getPreviousTimeline=function(){return this.HX[this.JX]||[]},e.prototype.getAllTimelines=function(){return this.HX},e.prototype.reset=function(){Object.values(this.HX).forEach((function(e){e.forEach((function(e){return e.consumed=!1}))}))},e.prototype.dispose=function(){this.LX.removeEventListener(r.MediaElementEvent.progress,this.PX),this.HX={},this.MX=[]},e}();t.ServiceWorkerSegmentTimelineController=s}},function(e){return function(){return e(e.s=81772)}()}])}));
|
|
17
|
+
"use strict";!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports["serviceworker-client"]=t():(e.bitmovin=e.bitmovin||{},e.bitmovin.player=e.bitmovin.player||{},e.bitmovin.player["serviceworker-client"]=t())}(self,(function(){return(self.webpackChunkbitmovin_player=self.webpackChunkbitmovin_player||[]).push([[930],{79868:function(e,t){var i,n;Object.defineProperty(t,"__esModule",{value:!0}),t.ResponseStatusCode=t.ServiceWorkerMessageType=void 0,function(e){e.Dispose="dispose",e.Logging="logging",e.Playlist="playlist",e.Segment="segment",e.QueryParameters="queryparameters",e.WithCredentials="withcredentials",e.PreProcessRequestStarted="preprocessRequestStarted",e.PreProcessRequestFinished="preprocessRequestFinished",e.PreProcessResponseStarted="preprocessResponseStarted",e.PreProcessResponseFinished="preprocessResponseFinished"}(i||(t.ServiceWorkerMessageType=i={})),function(e){e[e.Success=200]="Success",e[e.PartialContent=206]="PartialContent",e[e.BadRequest=400]="BadRequest"}(n||(t.ResponseStatusCode=n={}))},81772:function(e,t,i){Object.defineProperty(t,"__esModule",{value:!0}),t.ServiceWorkerClientModuleDefinition=void 0;var n=i(62756),r=i(61402);t.ServiceWorkerClientModuleDefinition={name:n.ModuleName.ServiceWorkerClient,module:function(){return{createServiceWorkerHlsManifestController:r.createServiceWorkerHlsManifestController}},dependencies:[n.ModuleName.HLS]},t.default=t.ServiceWorkerClientModuleDefinition},72439:function(e,t,i){Object.defineProperty(t,"__esModule",{value:!0}),t.ServiceWorkerClient=void 0;var n=i(25926),r=i(4224),s=i(3714),o=function(){function e(e){var t=this;this.FX=null,this.GX=function(e){if(t.DX.videoElement.getWrappedElement()){var i=t.DX.internalPlayerID;e.data.clientId&&e.data.clientId!==i?t.DX.logger.insane("".concat(i," ignores '").concat(e.data.type,"' event from another player")):t.EX[e.data.type]&&t.EX[e.data.type].forEach((function(t){return t(e.data)}))}},this.DX=e,this.EX={playlist:[],segment:[],logging:[],preprocessRequestStarted:[],preprocessResponseStarted:[]}}return e.prototype.initialize=function(){var e=this,t=this.DX.config.tweaks&&this.DX.config.tweaks.serviceworker_scope?{scope:this.DX.config.tweaks.serviceworker_scope}:{};return""===this.DX.config.location.serviceworker?(this.DX.eventHandler.dispatchEvent(s.PlayerEvent.Warning,new n.PlayerWarning(r.WarningCode.SETUP_SERVICE_WORKER_LOCATION_MISSING)),Promise.reject()):navigator.serviceWorker.register(this.DX.config.location.serviceworker,t).then((function(e){return e.update()})).then((function(){return navigator.serviceWorker.ready})).then((function(t){var i;e.FX=null!==(i=t.active)&&void 0!==i?i:navigator.serviceWorker.controller,navigator.serviceWorker.addEventListener("message",e.GX)})).catch((function(t){throw e.DX.eventHandler.dispatchEvent(s.PlayerEvent.Warning,new n.PlayerWarning(r.WarningCode.SETUP_SERVICE_WORKER_INITIALIZATION_FAILED,"ServiceWorker setup failed with error ".concat(t))),t}))},e.prototype.sendMessage=function(e){this.FX&&this.FX.postMessage(e)},e.prototype.addPlaylistListener=function(e){this.EX.playlist.push(e)},e.prototype.addSegmentListener=function(e){this.EX.segment.push(e)},e.prototype.addLoggingListener=function(e){this.EX.logging.push(e)},e.prototype.addPreprocessRequestListener=function(e){this.EX.preprocessRequestStarted.push(e)},e.prototype.addPreprocessResponseListener=function(e){this.EX.preprocessResponseStarted.push(e)},e.prototype.dispose=function(){navigator.serviceWorker.removeEventListener("message",this.GX),this.EX={playlist:[],segment:[],logging:[],preprocessRequestStarted:[],preprocessResponseStarted:[]},this.FX=null},e}();t.ServiceWorkerClient=o},61402:function(e,t,i){var n=this&&this.__extends||function(){var e=function(t,i){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i])},e(t,i)};return function(t,i){if("function"!=typeof i&&null!==i)throw new TypeError("Class extends value "+String(i)+" is not a constructor or null");function n(){this.constructor=t}e(t,i),t.prototype=null===i?Object.create(i):(n.prototype=i.prototype,new n)}}(),r=this&&this.__assign||function(){return r=Object.assign||function(e){for(var t,i=1,n=arguments.length;i<n;i++)for(var r in t=arguments[i])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},r.apply(this,arguments)},s=this&&this.__awaiter||function(e,t,i,n){return new(i||(i=Promise))((function(r,s){function o(e){try{l(n.next(e))}catch(e){s(e)}}function a(e){try{l(n.throw(e))}catch(e){s(e)}}function l(e){e.done?r(e.value):function(e){return e instanceof i?e:new i((function(t){t(e)}))}(e.value).then(o,a)}l((n=n.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var i,n,r,s={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]},o=Object.create(("function"==typeof Iterator?Iterator:Object).prototype);return o.next=a(0),o.throw=a(1),o.return=a(2),"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(a){return function(l){return function(a){if(i)throw new TypeError("Generator is already executing.");for(;o&&(o=0,a[0]&&(s=0)),s;)try{if(i=1,n&&(r=2&a[0]?n.return:a[0]?n.throw||((r=n.return)&&r.call(n),0):n.next)&&!(r=r.call(n,a[1])).done)return r;switch(n=0,r&&(a=[2&a[0],r.value]),a[0]){case 0:case 1:r=a;break;case 4:return s.label++,{value:a[1],done:!1};case 5:s.label++,n=a[1],a=[0];continue;case 7:a=s.ops.pop(),s.trys.pop();continue;default:if(!((r=(r=s.trys).length>0&&r[r.length-1])||6!==a[0]&&2!==a[0])){s=0;continue}if(3===a[0]&&(!r||a[1]>r[0]&&a[1]<r[3])){s.label=a[1];break}if(6===a[0]&&s.label<r[1]){s.label=r[1],r=a;break}if(r&&s.label<r[2]){s.label=r[2],s.ops.push(a);break}r[2]&&s.ops.pop(),s.trys.pop();continue}a=t.call(e,s)}catch(e){a=[6,e],n=0}finally{i=r=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,l])}}};Object.defineProperty(t,"__esModule",{value:!0}),t.createServiceWorkerHlsManifestController=function(e){return a||(a=function(e){function t(t){var i=e.call(this,t)||this;return i.parsedManifest=null,i.originalManifest=null,i.ez=null,i.iz=[],i.jz=function(e){return s(i,void 0,void 0,(function(){var t,i,n,s,a,l;return o(this,(function(o){switch(o.label){case 0:t=null===(l=this.context.config.network)||void 0===l?void 0:l.preprocessHttpRequest,i=r(r({},e.httpRequest),{headers:r({},e.httpRequest.headers)}),o.label=1;case 1:return o.trys.push([1,3,,4]),s=this.parsedManifest?c.HttpRequestType.MANIFEST_HLS_VARIANT:c.HttpRequestType.MANIFEST_HLS_MASTER,[4,null==t?void 0:t(s,i)];case 2:return n=o.sent(),[3,4];case 3:return a=o.sent(),this.context.logger.warn("Network preprocessHttpRequest failed with an error",a),[3,4];case 4:return this.fz.sendMessage({type:v.ServiceWorkerMessageType.PreProcessRequestFinished,id:e.id,httpRequest:null!=n?n:e.httpRequest,clientId:e.clientId}),[2]}}))}))},i.kz=function(e){return s(i,void 0,void 0,(function(){var t,i,n,s,a,l;return o(this,(function(o){switch(o.label){case 0:t=null===(l=this.context.config.network)||void 0===l?void 0:l.preprocessHttpResponse,i=r(r({},e.httpResponse),{headers:r({},e.httpResponse.headers)}),o.label=1;case 1:return o.trys.push([1,3,,4]),s=this.parsedManifest?c.HttpRequestType.MANIFEST_HLS_VARIANT:c.HttpRequestType.MANIFEST_HLS_MASTER,[4,null==t?void 0:t(s,i)];case 2:return n=o.sent(),[3,4];case 3:return a=o.sent(),this.context.logger.warn("Network preprocessHttpResponse failed with an error",a),[3,4];case 4:return this.fz.sendMessage({type:v.ServiceWorkerMessageType.PreProcessResponseFinished,id:e.id,httpResponse:null!=n?n:e.httpResponse,clientId:e.clientId}),[2]}}))}))},i.registerVariantPlaylist=function(e){var t,n=g.ModuleManager.get(y.ModuleName.HLS).NativeHlsManifestParserUtils.parseAndPrepareVariantPlaylist(i.parsedManifest,e,i.iz,i.context.config),r=n.playlist,s=n.variant,o=n.segments,a=n.discontinuitySequences;i.iz=a;var l=null===(t=o[0])||void 0===t?void 0:t.dateTime;return l&&(r.programDateTime=f.Util.timeInSeconds(l)),(0,u.extractDateRangeMetadata)(r.dateRange,r.endList?r.programDateTime:void 0,(function(e){i.dispatchDateRangeToParsedService(e)})),i.onPlaylistUpdated({playlist:r,variant:s,segments:o}),r},i.onPlaylistMessage=function(e){if(i.parsedManifest)try{i.registerVariantPlaylist(S(e))}catch(e){i.context.logger.debug("Ignoring playlist from Service Worker: ".concat(e.message))}else i.gz.resolve(i.ez),i.mz(S(e),e.url)},i.oz=function(e){if(i.context.videoElement.duration!==1/0)for(var t=i.segmentTimelineController.getAllTimelines(),n=Object.values(t),r=0;r<n.length;r++){var s=n[r];if(i.nz(e.url,s)){i.segmentTimelineController.switchTimeline(s[0].variantPlaylistId);break}}else i.segmentTimelineController.addDownloadedSegments(e.url),s=i.segmentTimelineController.getCurrentTimeline(),i.nz(e.url,s)},i.rz=function(e){i.context.logger.debug("Logging",{message:e.message,data:e.data})},i.segmentTimelineController=new X.ServiceWorkerSegmentTimelineController(t.videoElement),i.hz={id:"not available",bitrate:0,height:0,width:0,isAuto:!0},i.context.logger.debug("Initializing controller for ServiceWorker"),i}return n(t,e),t.prototype.getDownloadedVideoData=function(){return this.hz},t.prototype.getPlayingVideoData=function(){var e,t,i=this.segmentTimelineController.getPlayingSegment(this.context.videoElement.currentTime);if(!i)return null;var n=this.parsedManifest.playlists.find((function(e){return e.id===i.variantPlaylistId}));if(!n)return null;var r=n.attributes.CODECS?p.CodecStringHelper.getExtractedCodecStrings(n.attributes.CODECS):{};return{id:n.id,bitrate:n.attributes.BANDWIDTH,frameRate:n.attributes["FRAME-RATE"]?Number(n.attributes["FRAME-RATE"]):void 0,width:null===(e=n.attributes.RESOLUTION)||void 0===e?void 0:e.width,height:null===(t=n.attributes.RESOLUTION)||void 0===t?void 0:t.height,codec:r.video}},t.prototype.init=function(){var e=this;return this.fz=new m.ServiceWorkerClient(this.context),this.fz.initialize().then((function(){var t;e.fz.addLoggingListener(e.rz),e.fz.addPlaylistListener(e.onPlaylistMessage),e.fz.addSegmentListener(e.oz),e.fz.addPreprocessRequestListener(e.jz),e.fz.addPreprocessResponseListener(e.kz),(null===(t=e.context.sourceContext.source.options)||void 0===t?void 0:t.withCredentials)&&e.fz.sendMessage({type:v.ServiceWorkerMessageType.WithCredentials,withCredentials:!0,clientId:e.context.internalPlayerID}),e.context.settings.QUERY_PARAMETERS&&e.fz.sendMessage({type:v.ServiceWorkerMessageType.QueryParameters,queryParameters:e.context.settings.QUERY_PARAMETERS,clientId:e.context.internalPlayerID})})).catch((function(t){throw e.dispose(),t}))},t.prototype.getParsedManifest=function(){return this.parsedManifest},t.prototype.getManifest=function(){return this.originalManifest},t.prototype.resolveMasterManifest=function(e){return this.parsedManifest?Promise.resolve(this.ez):(this.ez=e,this.lz())},t.prototype.lz=function(){var e=this;return this.gz=new d.Deferred,this.gz.promise.then((function(t){return h.URLHelper.appendQueryParametersToUrl(t,r(r({},e.context.config.tweaks.query_parameters),{"bitmovin-player-id":e.context.internalPlayerID}))}))},t.prototype.mz=function(e,t){var i,n=g.ModuleManager.get(y.ModuleName.HLS).NativeHlsManifestParserUtils;this.originalManifest=e.body;var r=null!==(i=e.body)&&void 0!==i?i:"";return this.parsedManifest=n.parsePlaylist(r),n.isValidMasterPlaylist(this.parsedManifest)||(n.isValidVariantPlaylist(this.parsedManifest)?(r=b.replace("$VARIANT$",t),this.originalManifest=r,this.parsedManifest=n.parsePlaylist(r)):this.parsedManifest=null),r},t.prototype.nz=function(e,t){var i=t.findIndex((function(t){return e.includes(t.uri)}));if(i>-1){var n=this.pz(t[i].variantPlaylistId);if(n.bitrate!==this.hz.bitrate)return this.qz(n,this.hz),this.hz=n,!0;this.hz=n}return!1},t.prototype.pz=function(e){var t=this.parsedManifest.playlists.find((function(t){return t.id===e})),i={id:"",isAuto:!0,height:null,width:null,bitrate:null};return t&&t.hasOwnProperty("attributes")&&(t.attributes.RESOLUTION&&(i.id=t.attributes.RESOLUTION.height+"_",i.height=t.attributes.RESOLUTION.height,i.width=t.attributes.RESOLUTION.width),i.id+=t.attributes.BANDWIDTH,i.bitrate=t.attributes.BANDWIDTH),i},t.prototype.qz=function(e,t){this.context.eventHandler.dispatchEvent(l.PlayerEvent.VideoDownloadQualityChange,{targetQuality:e,targetQualityId:e.id,sourceQuality:t,sourceQualityId:t.id})},t.prototype.getCurrentSegments=function(e,t,i,n){return Promise.resolve([])},t.prototype.overrideManifestUrl=function(e,t,i){return Promise.resolve(this.ez)},t.prototype.dispose=function(){e.prototype.dispose.call(this),this.parsedManifest=null,this.originalManifest=null,this.ez=null,this.fz.sendMessage({type:v.ServiceWorkerMessageType.Dispose,clientId:this.context.internalPlayerID}),this.fz.dispose()},t}(e)),a};var a,l=i(3714),u=i(32703),c=i(29669),p=i(34047),d=i(34841),h=i(58313),f=i(70850),g=i(88052),y=i(62756),v=i(79868),m=i(72439),X=i(69904),b="#EXTM3U\n#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=100000\n$VARIANT$\n";function S(e){return{url:e.url,body:e.playlist,headers:{},request:null,status:v.ResponseStatusCode.Success,statusText:"OK"}}},69904:function(e,t,i){Object.defineProperty(t,"__esModule",{value:!0}),t.ServiceWorkerSegmentTimelineController=void 0;var n=i(25541),r=i(19274),s=function(){function e(e){var t=this;this.PX=function(){t.LX.buffered.length&&!t.OX&&(n.populateCurrentTimelineWithPlaybackTime(t.getCurrentTimeline(),0,0),t.OX=!0)},this.HX={},this.IX=null,this.JX=null,this.KX=0,this.LX=e,this.MX=[],this.NX=!1,this.OX=!1,e.addEventListener(r.MediaElementEvent.progress,this.PX)}return e.prototype.QX=function(){return this.LX.duration===1/0},e.prototype.switchTimeline=function(e){this.IX!==e&&(this.QX()&&this.HX[e]&&(this.HX[e]=[]),this.HX[e]||(this.HX[e]=[]),this.JX=this.IX,this.IX=e,this.NX=!0)},e.prototype.updateTimeline=function(e,t){var i=this,r=this.HX[e],s=n.updateTimeline(r,t),o=s.reduce((function(e,t){return i.QX()||(t.playbackTime=e),e+t.duration}),0);return this.HX[e]=s,this.OX&&this.TX(s),o},e.prototype.RX=function(e){return this.JX&&this.KX&&e<this.KX?this.getPreviousTimeline():this.getCurrentTimeline()},e.prototype.getPlayingSegment=function(e){return this.RX(e).find((function(t){return e>=t.playbackTime&&e<=t.playbackTime+t.duration}))||null},e.prototype.addDownloadedSegments=function(e){this.MX.push(e),this.SX()},e.prototype.SX=function(){this.MX.length>5&&(this.MX=this.MX.slice(-5,this.MX.length))},e.prototype.TX=function(e){var t=e.findIndex((function(e){return e.hasOwnProperty("playbackTime")}));-1!==t?n.populateCurrentTimelineWithPlaybackTime(e,t,e[t].playbackTime):this.NX?(this.NX=!1,this.UX(this.IX,this.JX),this.KX=this.HX[this.IX][0].playbackTime):this.VX(this.IX)},e.prototype.UX=function(e,t){var i,r=this.HX[e]||[],s=this.HX[t]||[],o=r.findIndex((function(e){return i=s.find((function(t){return t.mediaSequenceNumber===e.mediaSequenceNumber&&t.playbackTime})),Boolean(i)}));-1!==o&&(null==i?void 0:i.playbackTime)?n.populateCurrentTimelineWithPlaybackTime(r,o,i.playbackTime):this.VX(e)},e.prototype.VX=function(e){for(var t=this.HX[e],i=this.MX.shift(),r=-1;i&&r<0;)r=t.findIndex((function(e){return i===e.uri})),i=this.MX.shift();if(t[r]){var s=this.WX(r,e);n.populateCurrentTimelineWithPlaybackTime(t,r,s)}},e.prototype.WX=function(e,t){var i=this.HX[t],n=this.LX.buffered.start(0),r=this.LX.buffered.end(0);return r-n>i[e].duration?r:n},e.prototype.getCurrentTimeline=function(){return this.HX[this.IX]||[]},e.prototype.getPreviousTimeline=function(){return this.HX[this.JX]||[]},e.prototype.getAllTimelines=function(){return this.HX},e.prototype.reset=function(){Object.values(this.HX).forEach((function(e){e.forEach((function(e){return e.consumed=!1}))}))},e.prototype.dispose=function(){this.LX.removeEventListener(r.MediaElementEvent.progress,this.PX),this.HX={},this.MX=[]},e}();t.ServiceWorkerSegmentTimelineController=s}},function(e){return function(){return e(e.s=81772)}()}])}));
|
|
18
18
|
})();
|
|
@@ -9,10 +9,10 @@
|
|
|
9
9
|
* This software includes open-source components. See THIRD_PARTY_NOTICES
|
|
10
10
|
* in the distribution for details.
|
|
11
11
|
*
|
|
12
|
-
* Bitmovin Player Version 8.
|
|
12
|
+
* Bitmovin Player Version 8.264.0
|
|
13
13
|
*
|
|
14
14
|
****************************************************************************/
|
|
15
15
|
|
|
16
16
|
(function() {
|
|
17
|
-
"use strict";!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports["serviceworker-client"]=t():(e.bitmovin=e.bitmovin||{},e.bitmovin.player=e.bitmovin.player||{},e.bitmovin.player["serviceworker-client"]=t())}(self,(function(){return(self.webpackChunkbitmovin_player=self.webpackChunkbitmovin_player||[]).push([[930],{79868:function(e,t){var i,n;Object.defineProperty(t,"__esModule",{value:!0}),t.ResponseStatusCode=t.ServiceWorkerMessageType=void 0,function(e){e.Dispose="dispose",e.Logging="logging",e.Playlist="playlist",e.Segment="segment",e.QueryParameters="queryparameters",e.WithCredentials="withcredentials",e.PreProcessRequestStarted="preprocessRequestStarted",e.PreProcessRequestFinished="preprocessRequestFinished",e.PreProcessResponseStarted="preprocessResponseStarted",e.PreProcessResponseFinished="preprocessResponseFinished"}(i||(t.ServiceWorkerMessageType=i={})),function(e){e[e.Success=200]="Success",e[e.PartialContent=206]="PartialContent",e[e.BadRequest=400]="BadRequest"}(n||(t.ResponseStatusCode=n={}))},81772:function(e,t,i){Object.defineProperty(t,"__esModule",{value:!0}),t.ServiceWorkerClientModuleDefinition=void 0;var n=i(62756),r=i(61402);t.ServiceWorkerClientModuleDefinition={name:n.ModuleName.ServiceWorkerClient,module:function(){return{createServiceWorkerHlsManifestController:r.createServiceWorkerHlsManifestController}},dependencies:[n.ModuleName.HLS]},t.default=t.ServiceWorkerClientModuleDefinition},72439:function(e,t,i){Object.defineProperty(t,"__esModule",{value:!0}),t.ServiceWorkerClient=void 0;var n=i(25926),r=i(4224),s=i(3714),o=function(){function e(e){var t=this;this.IX=null,this.JX=function(e){if(t.GX.videoElement.getWrappedElement()){var i=t.GX.internalPlayerID;e.data.clientId&&e.data.clientId!==i||t.HX[e.data.type]&&t.HX[e.data.type].forEach((function(t){return t(e.data)}))}},this.GX=e,this.HX={playlist:[],segment:[],logging:[],preprocessRequestStarted:[],preprocessResponseStarted:[]}}return e.prototype.initialize=function(){var e=this,t=this.GX.config.tweaks&&this.GX.config.tweaks.serviceworker_scope?{scope:this.GX.config.tweaks.serviceworker_scope}:{};return""===this.GX.config.location.serviceworker?(this.GX.eventHandler.dispatchEvent(s.PlayerEvent.Warning,new n.PlayerWarning(r.WarningCode.SETUP_SERVICE_WORKER_LOCATION_MISSING)),Promise.reject()):navigator.serviceWorker.register(this.GX.config.location.serviceworker,t).then((function(e){return e.update()})).then((function(){return navigator.serviceWorker.ready})).then((function(t){var i;e.IX=null!==(i=t.active)&&void 0!==i?i:navigator.serviceWorker.controller,navigator.serviceWorker.addEventListener("message",e.JX)})).catch((function(t){throw e.GX.eventHandler.dispatchEvent(s.PlayerEvent.Warning,new n.PlayerWarning(r.WarningCode.SETUP_SERVICE_WORKER_INITIALIZATION_FAILED,"ServiceWorker setup failed with error ".concat(t))),t}))},e.prototype.sendMessage=function(e){this.IX&&this.IX.postMessage(e)},e.prototype.addPlaylistListener=function(e){this.HX.playlist.push(e)},e.prototype.addSegmentListener=function(e){this.HX.segment.push(e)},e.prototype.addLoggingListener=function(e){this.HX.logging.push(e)},e.prototype.addPreprocessRequestListener=function(e){this.HX.preprocessRequestStarted.push(e)},e.prototype.addPreprocessResponseListener=function(e){this.HX.preprocessResponseStarted.push(e)},e.prototype.dispose=function(){navigator.serviceWorker.removeEventListener("message",this.JX),this.HX={playlist:[],segment:[],logging:[],preprocessRequestStarted:[],preprocessResponseStarted:[]},this.IX=null},e}();t.ServiceWorkerClient=o},61402:function(e,t,i){var n=this&&this.__extends||function(){var e=function(t,i){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i])},e(t,i)};return function(t,i){if("function"!=typeof i&&null!==i)throw new TypeError("Class extends value "+String(i)+" is not a constructor or null");function n(){this.constructor=t}e(t,i),t.prototype=null===i?Object.create(i):(n.prototype=i.prototype,new n)}}(),r=this&&this.__assign||function(){return r=Object.assign||function(e){for(var t,i=1,n=arguments.length;i<n;i++)for(var r in t=arguments[i])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},r.apply(this,arguments)},s=this&&this.__awaiter||function(e,t,i,n){return new(i||(i=Promise))((function(r,s){function o(e){try{u(n.next(e))}catch(e){s(e)}}function a(e){try{u(n.throw(e))}catch(e){s(e)}}function u(e){e.done?r(e.value):function(e){return e instanceof i?e:new i((function(t){t(e)}))}(e.value).then(o,a)}u((n=n.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var i,n,r,s={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]},o=Object.create(("function"==typeof Iterator?Iterator:Object).prototype);return o.next=a(0),o.throw=a(1),o.return=a(2),"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(a){return function(u){return function(a){if(i)throw new TypeError("Generator is already executing.");for(;o&&(o=0,a[0]&&(s=0)),s;)try{if(i=1,n&&(r=2&a[0]?n.return:a[0]?n.throw||((r=n.return)&&r.call(n),0):n.next)&&!(r=r.call(n,a[1])).done)return r;switch(n=0,r&&(a=[2&a[0],r.value]),a[0]){case 0:case 1:r=a;break;case 4:return s.label++,{value:a[1],done:!1};case 5:s.label++,n=a[1],a=[0];continue;case 7:a=s.ops.pop(),s.trys.pop();continue;default:if(!((r=(r=s.trys).length>0&&r[r.length-1])||6!==a[0]&&2!==a[0])){s=0;continue}if(3===a[0]&&(!r||a[1]>r[0]&&a[1]<r[3])){s.label=a[1];break}if(6===a[0]&&s.label<r[1]){s.label=r[1],r=a;break}if(r&&s.label<r[2]){s.label=r[2],s.ops.push(a);break}r[2]&&s.ops.pop(),s.trys.pop();continue}a=t.call(e,s)}catch(e){a=[6,e],n=0}finally{i=r=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,u])}}};Object.defineProperty(t,"__esModule",{value:!0}),t.createServiceWorkerHlsManifestController=function(e){return a||(a=function(e){function t(t){var i=e.call(this,t)||this;return i.parsedManifest=null,i.originalManifest=null,i.ty=null,i.xy=[],i.yy=function(e){return s(i,void 0,void 0,(function(){var t,i,n,s,a;return o(this,(function(o){switch(o.label){case 0:t=null===(a=this.context.config.network)||void 0===a?void 0:a.preprocessHttpRequest,i=r(r({},e.httpRequest),{headers:r({},e.httpRequest.headers)}),o.label=1;case 1:return o.trys.push([1,3,,4]),s=this.parsedManifest?c.HttpRequestType.MANIFEST_HLS_VARIANT:c.HttpRequestType.MANIFEST_HLS_MASTER,[4,null==t?void 0:t(s,i)];case 2:return n=o.sent(),[3,4];case 3:return o.sent(),[3,4];case 4:return this.uy.sendMessage({type:g.ServiceWorkerMessageType.PreProcessRequestFinished,id:e.id,httpRequest:null!=n?n:e.httpRequest,clientId:e.clientId}),[2]}}))}))},i.zy=function(e){return s(i,void 0,void 0,(function(){var t,i,n,s,a;return o(this,(function(o){switch(o.label){case 0:t=null===(a=this.context.config.network)||void 0===a?void 0:a.preprocessHttpResponse,i=r(r({},e.httpResponse),{headers:r({},e.httpResponse.headers)}),o.label=1;case 1:return o.trys.push([1,3,,4]),s=this.parsedManifest?c.HttpRequestType.MANIFEST_HLS_VARIANT:c.HttpRequestType.MANIFEST_HLS_MASTER,[4,null==t?void 0:t(s,i)];case 2:return n=o.sent(),[3,4];case 3:return o.sent(),[3,4];case 4:return this.uy.sendMessage({type:g.ServiceWorkerMessageType.PreProcessResponseFinished,id:e.id,httpResponse:null!=n?n:e.httpResponse,clientId:e.clientId}),[2]}}))}))},i.registerVariantPlaylist=function(e){var t,n=y.ModuleManager.get(v.ModuleName.HLS).NativeHlsManifestParserUtils.parseAndPrepareVariantPlaylist(i.parsedManifest,e,i.xy,i.context.config),r=n.playlist,s=n.variant,o=n.segments,a=n.discontinuitySequences;i.xy=a;var u=null===(t=o[0])||void 0===t?void 0:t.dateTime;return u&&(r.programDateTime=f.Util.timeInSeconds(u)),(0,l.extractDateRangeMetadata)(r.dateRange,r.endList?r.programDateTime:void 0,(function(e){i.dispatchDateRangeToParsedService(e)})),i.onPlaylistUpdated({playlist:r,variant:s,segments:o}),r},i.onPlaylistMessage=function(e){if(i.parsedManifest)try{i.registerVariantPlaylist(P(e))}catch(e){}else i.vy.resolve(i.ty),i.By(P(e),e.url)},i.Dy=function(e){if(i.context.videoElement.duration!==1/0)for(var t=i.segmentTimelineController.getAllTimelines(),n=Object.values(t),r=0;r<n.length;r++){var s=n[r];if(i.Cy(e.url,s)){i.segmentTimelineController.switchTimeline(s[0].variantPlaylistId);break}}else i.segmentTimelineController.addDownloadedSegments(e.url),s=i.segmentTimelineController.getCurrentTimeline(),i.Cy(e.url,s)},i.Qz=function(e){},i.segmentTimelineController=new X.ServiceWorkerSegmentTimelineController(t.videoElement),i.wy={id:"not available",bitrate:0,height:0,width:0,isAuto:!0},i}return n(t,e),t.prototype.getDownloadedVideoData=function(){return this.wy},t.prototype.getPlayingVideoData=function(){var e,t,i=this.segmentTimelineController.getPlayingSegment(this.context.videoElement.currentTime);if(!i)return null;var n=this.parsedManifest.playlists.find((function(e){return e.id===i.variantPlaylistId}));if(!n)return null;var r=n.attributes.CODECS?p.CodecStringHelper.getExtractedCodecStrings(n.attributes.CODECS):{};return{id:n.id,bitrate:n.attributes.BANDWIDTH,frameRate:n.attributes["FRAME-RATE"]?Number(n.attributes["FRAME-RATE"]):void 0,width:null===(e=n.attributes.RESOLUTION)||void 0===e?void 0:e.width,height:null===(t=n.attributes.RESOLUTION)||void 0===t?void 0:t.height,codec:r.video}},t.prototype.init=function(){var e=this;return this.uy=new m.ServiceWorkerClient(this.context),this.uy.initialize().then((function(){var t;e.uy.addLoggingListener(e.Qz),e.uy.addPlaylistListener(e.onPlaylistMessage),e.uy.addSegmentListener(e.Dy),e.uy.addPreprocessRequestListener(e.yy),e.uy.addPreprocessResponseListener(e.zy),(null===(t=e.context.sourceContext.source.options)||void 0===t?void 0:t.withCredentials)&&e.uy.sendMessage({type:g.ServiceWorkerMessageType.WithCredentials,withCredentials:!0,clientId:e.context.internalPlayerID}),e.context.settings.QUERY_PARAMETERS&&e.uy.sendMessage({type:g.ServiceWorkerMessageType.QueryParameters,queryParameters:e.context.settings.QUERY_PARAMETERS,clientId:e.context.internalPlayerID})})).catch((function(t){throw e.dispose(),t}))},t.prototype.getParsedManifest=function(){return this.parsedManifest},t.prototype.getManifest=function(){return this.originalManifest},t.prototype.resolveMasterManifest=function(e){return this.parsedManifest?Promise.resolve(this.ty):(this.ty=e,this.Ay())},t.prototype.Ay=function(){var e=this;return this.vy=new d.Deferred,this.vy.promise.then((function(t){return h.URLHelper.appendQueryParametersToUrl(t,r(r({},e.context.config.tweaks.query_parameters),{"bitmovin-player-id":e.context.internalPlayerID}))}))},t.prototype.By=function(e,t){var i,n=y.ModuleManager.get(v.ModuleName.HLS).NativeHlsManifestParserUtils;this.originalManifest=e.body;var r=null!==(i=e.body)&&void 0!==i?i:"";return this.parsedManifest=n.parsePlaylist(r),n.isValidMasterPlaylist(this.parsedManifest)||(n.isValidVariantPlaylist(this.parsedManifest)?(r=T.replace("$VARIANT$",t),this.originalManifest=r,this.parsedManifest=n.parsePlaylist(r)):this.parsedManifest=null),r},t.prototype.Cy=function(e,t){var i=t.findIndex((function(t){return e.includes(t.uri)}));if(i>-1){var n=this.Ey(t[i].variantPlaylistId);if(n.bitrate!==this.wy.bitrate)return this.Fy(n,this.wy),this.wy=n,!0;this.wy=n}return!1},t.prototype.Ey=function(e){var t=this.parsedManifest.playlists.find((function(t){return t.id===e})),i={id:"",isAuto:!0,height:null,width:null,bitrate:null};return t&&t.hasOwnProperty("attributes")&&(t.attributes.RESOLUTION&&(i.id=t.attributes.RESOLUTION.height+"_",i.height=t.attributes.RESOLUTION.height,i.width=t.attributes.RESOLUTION.width),i.id+=t.attributes.BANDWIDTH,i.bitrate=t.attributes.BANDWIDTH),i},t.prototype.Fy=function(e,t){this.context.eventHandler.dispatchEvent(u.PlayerEvent.VideoDownloadQualityChange,{targetQuality:e,targetQualityId:e.id,sourceQuality:t,sourceQualityId:t.id})},t.prototype.getCurrentSegments=function(e,t,i,n){return Promise.resolve([])},t.prototype.overrideManifestUrl=function(e,t,i){return Promise.resolve(this.ty)},t.prototype.dispose=function(){e.prototype.dispose.call(this),this.parsedManifest=null,this.originalManifest=null,this.ty=null,this.uy.sendMessage({type:g.ServiceWorkerMessageType.Dispose,clientId:this.context.internalPlayerID}),this.uy.dispose()},t}(e)),a};var a,u=i(3714),l=i(32703),c=i(29669),p=i(34047),d=i(34841),h=i(58313),f=i(70850),y=i(88052),v=i(62756),g=i(79868),m=i(72439),X=i(69904),T="#EXTM3U\n#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=100000\n$VARIANT$\n";function P(e){return{url:e.url,body:e.playlist,headers:{},request:null,status:g.ResponseStatusCode.Success,statusText:"OK"}}},69904:function(e,t,i){Object.defineProperty(t,"__esModule",{value:!0}),t.ServiceWorkerSegmentTimelineController=void 0;var n=i(25541),r=i(19274),s=function(){function e(e){var t=this;this.SX=function(){t.OX.buffered.length&&!t.RX&&(n.populateCurrentTimelineWithPlaybackTime(t.getCurrentTimeline(),0,0),t.RX=!0)},this.KX={},this.LX=null,this.MX=null,this.NX=0,this.OX=e,this.PX=[],this.QX=!1,this.RX=!1,e.addEventListener(r.MediaElementEvent.progress,this.SX)}return e.prototype.TX=function(){return this.OX.duration===1/0},e.prototype.switchTimeline=function(e){this.LX!==e&&(this.TX()&&this.KX[e]&&(this.KX[e]=[]),this.KX[e]||(this.KX[e]=[]),this.MX=this.LX,this.LX=e,this.QX=!0)},e.prototype.updateTimeline=function(e,t){var i=this,r=this.KX[e],s=n.updateTimeline(r,t),o=s.reduce((function(e,t){return i.TX()||(t.playbackTime=e),e+t.duration}),0);return this.KX[e]=s,this.RX&&this.WX(s),o},e.prototype.UX=function(e){return this.MX&&this.NX&&e<this.NX?this.getPreviousTimeline():this.getCurrentTimeline()},e.prototype.getPlayingSegment=function(e){return this.UX(e).find((function(t){return e>=t.playbackTime&&e<=t.playbackTime+t.duration}))||null},e.prototype.addDownloadedSegments=function(e){this.PX.push(e),this.VX()},e.prototype.VX=function(){this.PX.length>5&&(this.PX=this.PX.slice(-5,this.PX.length))},e.prototype.WX=function(e){var t=e.findIndex((function(e){return e.hasOwnProperty("playbackTime")}));-1!==t?n.populateCurrentTimelineWithPlaybackTime(e,t,e[t].playbackTime):this.QX?(this.QX=!1,this.XX(this.LX,this.MX),this.NX=this.KX[this.LX][0].playbackTime):this.YX(this.LX)},e.prototype.XX=function(e,t){var i,r=this.KX[e]||[],s=this.KX[t]||[],o=r.findIndex((function(e){return i=s.find((function(t){return t.mediaSequenceNumber===e.mediaSequenceNumber&&t.playbackTime})),Boolean(i)}));-1!==o&&(null==i?void 0:i.playbackTime)?n.populateCurrentTimelineWithPlaybackTime(r,o,i.playbackTime):this.YX(e)},e.prototype.YX=function(e){for(var t=this.KX[e],i=this.PX.shift(),r=-1;i&&r<0;)r=t.findIndex((function(e){return i===e.uri})),i=this.PX.shift();if(t[r]){var s=this.ZX(r,e);n.populateCurrentTimelineWithPlaybackTime(t,r,s)}},e.prototype.ZX=function(e,t){var i=this.KX[t],n=this.OX.buffered.start(0),r=this.OX.buffered.end(0);return r-n>i[e].duration?r:n},e.prototype.getCurrentTimeline=function(){return this.KX[this.LX]||[]},e.prototype.getPreviousTimeline=function(){return this.KX[this.MX]||[]},e.prototype.getAllTimelines=function(){return this.KX},e.prototype.reset=function(){Object.values(this.KX).forEach((function(e){e.forEach((function(e){return e.consumed=!1}))}))},e.prototype.dispose=function(){this.OX.removeEventListener(r.MediaElementEvent.progress,this.SX),this.KX={},this.PX=[]},e}();t.ServiceWorkerSegmentTimelineController=s}},function(e){return function(){return e(e.s=81772)}()}])}));
|
|
17
|
+
"use strict";!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports["serviceworker-client"]=t():(e.bitmovin=e.bitmovin||{},e.bitmovin.player=e.bitmovin.player||{},e.bitmovin.player["serviceworker-client"]=t())}(self,(function(){return(self.webpackChunkbitmovin_player=self.webpackChunkbitmovin_player||[]).push([[930],{79868:function(e,t){var i,n;Object.defineProperty(t,"__esModule",{value:!0}),t.ResponseStatusCode=t.ServiceWorkerMessageType=void 0,function(e){e.Dispose="dispose",e.Logging="logging",e.Playlist="playlist",e.Segment="segment",e.QueryParameters="queryparameters",e.WithCredentials="withcredentials",e.PreProcessRequestStarted="preprocessRequestStarted",e.PreProcessRequestFinished="preprocessRequestFinished",e.PreProcessResponseStarted="preprocessResponseStarted",e.PreProcessResponseFinished="preprocessResponseFinished"}(i||(t.ServiceWorkerMessageType=i={})),function(e){e[e.Success=200]="Success",e[e.PartialContent=206]="PartialContent",e[e.BadRequest=400]="BadRequest"}(n||(t.ResponseStatusCode=n={}))},81772:function(e,t,i){Object.defineProperty(t,"__esModule",{value:!0}),t.ServiceWorkerClientModuleDefinition=void 0;var n=i(62756),r=i(61402);t.ServiceWorkerClientModuleDefinition={name:n.ModuleName.ServiceWorkerClient,module:function(){return{createServiceWorkerHlsManifestController:r.createServiceWorkerHlsManifestController}},dependencies:[n.ModuleName.HLS]},t.default=t.ServiceWorkerClientModuleDefinition},72439:function(e,t,i){Object.defineProperty(t,"__esModule",{value:!0}),t.ServiceWorkerClient=void 0;var n=i(25926),r=i(4224),s=i(3714),o=function(){function e(e){var t=this;this.FX=null,this.GX=function(e){if(t.DX.videoElement.getWrappedElement()){var i=t.DX.internalPlayerID;e.data.clientId&&e.data.clientId!==i||t.EX[e.data.type]&&t.EX[e.data.type].forEach((function(t){return t(e.data)}))}},this.DX=e,this.EX={playlist:[],segment:[],logging:[],preprocessRequestStarted:[],preprocessResponseStarted:[]}}return e.prototype.initialize=function(){var e=this,t=this.DX.config.tweaks&&this.DX.config.tweaks.serviceworker_scope?{scope:this.DX.config.tweaks.serviceworker_scope}:{};return""===this.DX.config.location.serviceworker?(this.DX.eventHandler.dispatchEvent(s.PlayerEvent.Warning,new n.PlayerWarning(r.WarningCode.SETUP_SERVICE_WORKER_LOCATION_MISSING)),Promise.reject()):navigator.serviceWorker.register(this.DX.config.location.serviceworker,t).then((function(e){return e.update()})).then((function(){return navigator.serviceWorker.ready})).then((function(t){var i;e.FX=null!==(i=t.active)&&void 0!==i?i:navigator.serviceWorker.controller,navigator.serviceWorker.addEventListener("message",e.GX)})).catch((function(t){throw e.DX.eventHandler.dispatchEvent(s.PlayerEvent.Warning,new n.PlayerWarning(r.WarningCode.SETUP_SERVICE_WORKER_INITIALIZATION_FAILED,"ServiceWorker setup failed with error ".concat(t))),t}))},e.prototype.sendMessage=function(e){this.FX&&this.FX.postMessage(e)},e.prototype.addPlaylistListener=function(e){this.EX.playlist.push(e)},e.prototype.addSegmentListener=function(e){this.EX.segment.push(e)},e.prototype.addLoggingListener=function(e){this.EX.logging.push(e)},e.prototype.addPreprocessRequestListener=function(e){this.EX.preprocessRequestStarted.push(e)},e.prototype.addPreprocessResponseListener=function(e){this.EX.preprocessResponseStarted.push(e)},e.prototype.dispose=function(){navigator.serviceWorker.removeEventListener("message",this.GX),this.EX={playlist:[],segment:[],logging:[],preprocessRequestStarted:[],preprocessResponseStarted:[]},this.FX=null},e}();t.ServiceWorkerClient=o},61402:function(e,t,i){var n=this&&this.__extends||function(){var e=function(t,i){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i])},e(t,i)};return function(t,i){if("function"!=typeof i&&null!==i)throw new TypeError("Class extends value "+String(i)+" is not a constructor or null");function n(){this.constructor=t}e(t,i),t.prototype=null===i?Object.create(i):(n.prototype=i.prototype,new n)}}(),r=this&&this.__assign||function(){return r=Object.assign||function(e){for(var t,i=1,n=arguments.length;i<n;i++)for(var r in t=arguments[i])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},r.apply(this,arguments)},s=this&&this.__awaiter||function(e,t,i,n){return new(i||(i=Promise))((function(r,s){function o(e){try{l(n.next(e))}catch(e){s(e)}}function a(e){try{l(n.throw(e))}catch(e){s(e)}}function l(e){e.done?r(e.value):function(e){return e instanceof i?e:new i((function(t){t(e)}))}(e.value).then(o,a)}l((n=n.apply(e,t||[])).next())}))},o=this&&this.__generator||function(e,t){var i,n,r,s={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]},o=Object.create(("function"==typeof Iterator?Iterator:Object).prototype);return o.next=a(0),o.throw=a(1),o.return=a(2),"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(a){return function(l){return function(a){if(i)throw new TypeError("Generator is already executing.");for(;o&&(o=0,a[0]&&(s=0)),s;)try{if(i=1,n&&(r=2&a[0]?n.return:a[0]?n.throw||((r=n.return)&&r.call(n),0):n.next)&&!(r=r.call(n,a[1])).done)return r;switch(n=0,r&&(a=[2&a[0],r.value]),a[0]){case 0:case 1:r=a;break;case 4:return s.label++,{value:a[1],done:!1};case 5:s.label++,n=a[1],a=[0];continue;case 7:a=s.ops.pop(),s.trys.pop();continue;default:if(!((r=(r=s.trys).length>0&&r[r.length-1])||6!==a[0]&&2!==a[0])){s=0;continue}if(3===a[0]&&(!r||a[1]>r[0]&&a[1]<r[3])){s.label=a[1];break}if(6===a[0]&&s.label<r[1]){s.label=r[1],r=a;break}if(r&&s.label<r[2]){s.label=r[2],s.ops.push(a);break}r[2]&&s.ops.pop(),s.trys.pop();continue}a=t.call(e,s)}catch(e){a=[6,e],n=0}finally{i=r=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,l])}}};Object.defineProperty(t,"__esModule",{value:!0}),t.createServiceWorkerHlsManifestController=function(e){return a||(a=function(e){function t(t){var i=e.call(this,t)||this;return i.parsedManifest=null,i.originalManifest=null,i.uz=null,i.yz=[],i.zz=function(e){return s(i,void 0,void 0,(function(){var t,i,n,s,a;return o(this,(function(o){switch(o.label){case 0:t=null===(a=this.context.config.network)||void 0===a?void 0:a.preprocessHttpRequest,i=r(r({},e.httpRequest),{headers:r({},e.httpRequest.headers)}),o.label=1;case 1:return o.trys.push([1,3,,4]),s=this.parsedManifest?c.HttpRequestType.MANIFEST_HLS_VARIANT:c.HttpRequestType.MANIFEST_HLS_MASTER,[4,null==t?void 0:t(s,i)];case 2:return n=o.sent(),[3,4];case 3:return o.sent(),[3,4];case 4:return this.vz.sendMessage({type:g.ServiceWorkerMessageType.PreProcessRequestFinished,id:e.id,httpRequest:null!=n?n:e.httpRequest,clientId:e.clientId}),[2]}}))}))},i.Az=function(e){return s(i,void 0,void 0,(function(){var t,i,n,s,a;return o(this,(function(o){switch(o.label){case 0:t=null===(a=this.context.config.network)||void 0===a?void 0:a.preprocessHttpResponse,i=r(r({},e.httpResponse),{headers:r({},e.httpResponse.headers)}),o.label=1;case 1:return o.trys.push([1,3,,4]),s=this.parsedManifest?c.HttpRequestType.MANIFEST_HLS_VARIANT:c.HttpRequestType.MANIFEST_HLS_MASTER,[4,null==t?void 0:t(s,i)];case 2:return n=o.sent(),[3,4];case 3:return o.sent(),[3,4];case 4:return this.vz.sendMessage({type:g.ServiceWorkerMessageType.PreProcessResponseFinished,id:e.id,httpResponse:null!=n?n:e.httpResponse,clientId:e.clientId}),[2]}}))}))},i.registerVariantPlaylist=function(e){var t,n=v.ModuleManager.get(y.ModuleName.HLS).NativeHlsManifestParserUtils.parseAndPrepareVariantPlaylist(i.parsedManifest,e,i.yz,i.context.config),r=n.playlist,s=n.variant,o=n.segments,a=n.discontinuitySequences;i.yz=a;var l=null===(t=o[0])||void 0===t?void 0:t.dateTime;return l&&(r.programDateTime=f.Util.timeInSeconds(l)),(0,u.extractDateRangeMetadata)(r.dateRange,r.endList?r.programDateTime:void 0,(function(e){i.dispatchDateRangeToParsedService(e)})),i.onPlaylistUpdated({playlist:r,variant:s,segments:o}),r},i.onPlaylistMessage=function(e){if(i.parsedManifest)try{i.registerVariantPlaylist(S(e))}catch(e){}else i.wz.resolve(i.uz),i.Cz(S(e),e.url)},i.Ez=function(e){if(i.context.videoElement.duration!==1/0)for(var t=i.segmentTimelineController.getAllTimelines(),n=Object.values(t),r=0;r<n.length;r++){var s=n[r];if(i.Dz(e.url,s)){i.segmentTimelineController.switchTimeline(s[0].variantPlaylistId);break}}else i.segmentTimelineController.addDownloadedSegments(e.url),s=i.segmentTimelineController.getCurrentTimeline(),i.Dz(e.url,s)},i.Hz=function(e){},i.segmentTimelineController=new X.ServiceWorkerSegmentTimelineController(t.videoElement),i.xz={id:"not available",bitrate:0,height:0,width:0,isAuto:!0},i}return n(t,e),t.prototype.getDownloadedVideoData=function(){return this.xz},t.prototype.getPlayingVideoData=function(){var e,t,i=this.segmentTimelineController.getPlayingSegment(this.context.videoElement.currentTime);if(!i)return null;var n=this.parsedManifest.playlists.find((function(e){return e.id===i.variantPlaylistId}));if(!n)return null;var r=n.attributes.CODECS?p.CodecStringHelper.getExtractedCodecStrings(n.attributes.CODECS):{};return{id:n.id,bitrate:n.attributes.BANDWIDTH,frameRate:n.attributes["FRAME-RATE"]?Number(n.attributes["FRAME-RATE"]):void 0,width:null===(e=n.attributes.RESOLUTION)||void 0===e?void 0:e.width,height:null===(t=n.attributes.RESOLUTION)||void 0===t?void 0:t.height,codec:r.video}},t.prototype.init=function(){var e=this;return this.vz=new m.ServiceWorkerClient(this.context),this.vz.initialize().then((function(){var t;e.vz.addLoggingListener(e.Hz),e.vz.addPlaylistListener(e.onPlaylistMessage),e.vz.addSegmentListener(e.Ez),e.vz.addPreprocessRequestListener(e.zz),e.vz.addPreprocessResponseListener(e.Az),(null===(t=e.context.sourceContext.source.options)||void 0===t?void 0:t.withCredentials)&&e.vz.sendMessage({type:g.ServiceWorkerMessageType.WithCredentials,withCredentials:!0,clientId:e.context.internalPlayerID}),e.context.settings.QUERY_PARAMETERS&&e.vz.sendMessage({type:g.ServiceWorkerMessageType.QueryParameters,queryParameters:e.context.settings.QUERY_PARAMETERS,clientId:e.context.internalPlayerID})})).catch((function(t){throw e.dispose(),t}))},t.prototype.getParsedManifest=function(){return this.parsedManifest},t.prototype.getManifest=function(){return this.originalManifest},t.prototype.resolveMasterManifest=function(e){return this.parsedManifest?Promise.resolve(this.uz):(this.uz=e,this.Bz())},t.prototype.Bz=function(){var e=this;return this.wz=new d.Deferred,this.wz.promise.then((function(t){return h.URLHelper.appendQueryParametersToUrl(t,r(r({},e.context.config.tweaks.query_parameters),{"bitmovin-player-id":e.context.internalPlayerID}))}))},t.prototype.Cz=function(e,t){var i,n=v.ModuleManager.get(y.ModuleName.HLS).NativeHlsManifestParserUtils;this.originalManifest=e.body;var r=null!==(i=e.body)&&void 0!==i?i:"";return this.parsedManifest=n.parsePlaylist(r),n.isValidMasterPlaylist(this.parsedManifest)||(n.isValidVariantPlaylist(this.parsedManifest)?(r=T.replace("$VARIANT$",t),this.originalManifest=r,this.parsedManifest=n.parsePlaylist(r)):this.parsedManifest=null),r},t.prototype.Dz=function(e,t){var i=t.findIndex((function(t){return e.includes(t.uri)}));if(i>-1){var n=this.Fz(t[i].variantPlaylistId);if(n.bitrate!==this.xz.bitrate)return this.Gz(n,this.xz),this.xz=n,!0;this.xz=n}return!1},t.prototype.Fz=function(e){var t=this.parsedManifest.playlists.find((function(t){return t.id===e})),i={id:"",isAuto:!0,height:null,width:null,bitrate:null};return t&&t.hasOwnProperty("attributes")&&(t.attributes.RESOLUTION&&(i.id=t.attributes.RESOLUTION.height+"_",i.height=t.attributes.RESOLUTION.height,i.width=t.attributes.RESOLUTION.width),i.id+=t.attributes.BANDWIDTH,i.bitrate=t.attributes.BANDWIDTH),i},t.prototype.Gz=function(e,t){this.context.eventHandler.dispatchEvent(l.PlayerEvent.VideoDownloadQualityChange,{targetQuality:e,targetQualityId:e.id,sourceQuality:t,sourceQualityId:t.id})},t.prototype.getCurrentSegments=function(e,t,i,n){return Promise.resolve([])},t.prototype.overrideManifestUrl=function(e,t,i){return Promise.resolve(this.uz)},t.prototype.dispose=function(){e.prototype.dispose.call(this),this.parsedManifest=null,this.originalManifest=null,this.uz=null,this.vz.sendMessage({type:g.ServiceWorkerMessageType.Dispose,clientId:this.context.internalPlayerID}),this.vz.dispose()},t}(e)),a};var a,l=i(3714),u=i(32703),c=i(29669),p=i(34047),d=i(34841),h=i(58313),f=i(70850),v=i(88052),y=i(62756),g=i(79868),m=i(72439),X=i(69904),T="#EXTM3U\n#EXT-X-STREAM-INF:PROGRAM-ID=1,BANDWIDTH=100000\n$VARIANT$\n";function S(e){return{url:e.url,body:e.playlist,headers:{},request:null,status:g.ResponseStatusCode.Success,statusText:"OK"}}},69904:function(e,t,i){Object.defineProperty(t,"__esModule",{value:!0}),t.ServiceWorkerSegmentTimelineController=void 0;var n=i(25541),r=i(19274),s=function(){function e(e){var t=this;this.PX=function(){t.LX.buffered.length&&!t.OX&&(n.populateCurrentTimelineWithPlaybackTime(t.getCurrentTimeline(),0,0),t.OX=!0)},this.HX={},this.IX=null,this.JX=null,this.KX=0,this.LX=e,this.MX=[],this.NX=!1,this.OX=!1,e.addEventListener(r.MediaElementEvent.progress,this.PX)}return e.prototype.QX=function(){return this.LX.duration===1/0},e.prototype.switchTimeline=function(e){this.IX!==e&&(this.QX()&&this.HX[e]&&(this.HX[e]=[]),this.HX[e]||(this.HX[e]=[]),this.JX=this.IX,this.IX=e,this.NX=!0)},e.prototype.updateTimeline=function(e,t){var i=this,r=this.HX[e],s=n.updateTimeline(r,t),o=s.reduce((function(e,t){return i.QX()||(t.playbackTime=e),e+t.duration}),0);return this.HX[e]=s,this.OX&&this.TX(s),o},e.prototype.RX=function(e){return this.JX&&this.KX&&e<this.KX?this.getPreviousTimeline():this.getCurrentTimeline()},e.prototype.getPlayingSegment=function(e){return this.RX(e).find((function(t){return e>=t.playbackTime&&e<=t.playbackTime+t.duration}))||null},e.prototype.addDownloadedSegments=function(e){this.MX.push(e),this.SX()},e.prototype.SX=function(){this.MX.length>5&&(this.MX=this.MX.slice(-5,this.MX.length))},e.prototype.TX=function(e){var t=e.findIndex((function(e){return e.hasOwnProperty("playbackTime")}));-1!==t?n.populateCurrentTimelineWithPlaybackTime(e,t,e[t].playbackTime):this.NX?(this.NX=!1,this.UX(this.IX,this.JX),this.KX=this.HX[this.IX][0].playbackTime):this.VX(this.IX)},e.prototype.UX=function(e,t){var i,r=this.HX[e]||[],s=this.HX[t]||[],o=r.findIndex((function(e){return i=s.find((function(t){return t.mediaSequenceNumber===e.mediaSequenceNumber&&t.playbackTime})),Boolean(i)}));-1!==o&&(null==i?void 0:i.playbackTime)?n.populateCurrentTimelineWithPlaybackTime(r,o,i.playbackTime):this.VX(e)},e.prototype.VX=function(e){for(var t=this.HX[e],i=this.MX.shift(),r=-1;i&&r<0;)r=t.findIndex((function(e){return i===e.uri})),i=this.MX.shift();if(t[r]){var s=this.WX(r,e);n.populateCurrentTimelineWithPlaybackTime(t,r,s)}},e.prototype.WX=function(e,t){var i=this.HX[t],n=this.LX.buffered.start(0),r=this.LX.buffered.end(0);return r-n>i[e].duration?r:n},e.prototype.getCurrentTimeline=function(){return this.HX[this.IX]||[]},e.prototype.getPreviousTimeline=function(){return this.HX[this.JX]||[]},e.prototype.getAllTimelines=function(){return this.HX},e.prototype.reset=function(){Object.values(this.HX).forEach((function(e){e.forEach((function(e){return e.consumed=!1}))}))},e.prototype.dispose=function(){this.LX.removeEventListener(r.MediaElementEvent.progress,this.PX),this.HX={},this.MX=[]},e}();t.ServiceWorkerSegmentTimelineController=s}},function(e){return function(){return e(e.s=81772)}()}])}));
|
|
18
18
|
})();
|
|
@@ -9,10 +9,10 @@
|
|
|
9
9
|
* This software includes open-source components. See THIRD_PARTY_NOTICES
|
|
10
10
|
* in the distribution for details.
|
|
11
11
|
*
|
|
12
|
-
* Bitmovin Player Version 8.
|
|
12
|
+
* Bitmovin Player Version 8.264.0
|
|
13
13
|
*
|
|
14
14
|
****************************************************************************/
|
|
15
15
|
|
|
16
16
|
(function() {
|
|
17
|
-
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.serviceworker=t():(e.bitmovin=e.bitmovin||{},e.bitmovin.player=e.bitmovin.player||{},e.bitmovin.player.serviceworker=t())}(self,(function(){return function(){"use strict";var e={34841:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.Deferred=void 0;var r=function(){function e(){var e=this;this.SH="pending",this.PH=new Promise((function(t,r){e.QH=function(r){return e.SH="resolved",t(r)},e.RH=function(t){return e.SH="rejected",r(t)}}))}return Object.defineProperty(e.prototype,"hasSettled",{get:function(){return"pending"!==this.SH},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"promise",{get:function(){return this.PH},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"resolve",{get:function(){return this.QH},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"reject",{get:function(){return this.RH},enumerable:!1,configurable:!0}),e}();t.Deferred=r},58313:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.URLHelper=void 0,t.extractOrigin=i,t.removeQueryParameters=function(e,t){var r=e.split("?"),n=r[0],s=r[1];if(!s)return e;var i=s.split("&").filter((function(e){var r=e.split("=")[0];return!t.includes(r)})).join("&");return i?"".concat(n,"?").concat(i):n};var r=function(){function e(){}return e.isUrlAbsolute=function(t){return!!t&&("string"!=typeof t&&(t=e.urlObjectToString(t)),!!e.isDataUri(t)||e.ABSOLUTE_URL_REGEX.test(t))},e.removeUrlParameters=function(e){return e.indexOf("?")>-1&&(e=e.split("?")[0]),e},e.urlObjectToString=function(e){return e&&"string"!=typeof e?function(e){return e&&"string"==typeof e.__text}(e)?e.__text:function(e){return e&&"string"==typeof e.url}(e)?e.url:null:e},e.concatUrlParts=function(t,r){var n="/",s=e.urlObjectToString(t),o=e.urlObjectToString(r);return!s||s.length<1||e.isUrlAbsolute(o)?o:!o||o.length<1?s:((s=e.removeUrlParameters(s)).indexOf("/")>-1&&(s=s.substring(0,s.lastIndexOf("/"))),"/"===o[0]&&(s=i(s),n=""),s+n+o)},e.removeLastPathPart=function(t){if(!t)return null;t=e.removeUrlParameters(t);var r=e.getProtocolOffset(t),n=t.lastIndexOf("/");return n===t.length-1&&(t=t.substring(0,n)),(n=t.lastIndexOf("/"))<0?"":n>t.length-1?t:n<=r?t+"/":t.substring(0,n+1)},e.isRootRelativeUrl=function(e){return!!(e&&e.length>0)&&"/"===e[0]},e.getProtocolOffset=function(e){var t=e.indexOf("://");return t>-1?t+3:-1===t&&0===e.indexOf("//")?2:0},e.replaceCdn=function(e,t){var r=i(e),n=i(t);return e.replace(r,n)},e.isSubUrl=function(e,t){return!(!e||!t)&&(0===t.indexOf("../")&&(t=t.substring(3)),e.indexOf(t)>-1)},e.concatBaseUrlWithPartial=function(t,r){return e.isUrlAbsolute(r)?(r.startsWith("/")&&(r=(function(e){return e.substring(0,e.indexOf("//"))}(t)||s())+r),r):(t=this.toFullUrl(t),r&&0!==r.length?e.isRootRelativeUrl(r)?i(t)+r:(t.endsWith("/")||(t=this.removeLastPathPart(t)),t+r):t)},e.appendQueryParametersToUrl=function(e,t){if(!t||0===Object.keys(t).length)return e;var r="",s=e.indexOf("?")>=0;for(var i in t)t.hasOwnProperty(i)&&(r+=s?"&":"?",s=!0,r=n(r,i,t[i]));return e+r},e.toFullUrl=function(t){if(e.isDataUri(t))return t;if(!t.includes("//"))return t;var r=t.startsWith("//")?s()+t:t;return t.split("//")[1].includes("/")||(r+="/"),r},e.isDataUri=function(e){return e&&0===e.indexOf(this.DATA_URI_PROTOCOL)},e.parseDataUri=function(e){if(!this.isDataUri(e))throw new Error("Invalid data uri: "+e);-1===(e=e.substring(this.DATA_URI_PROTOCOL.length)).indexOf(this.COMMA_CHARACTER)&&(e=this.DATA_URI_DEFAULT_MEDIA_TYPE+this.COMMA_CHARACTER+e);var t=e.split(this.COMMA_CHARACTER),r=t[0],n=t[1],s=r.endsWith(this.DATA_URI_BASE64_MARKER),i=r.length-this.DATA_URI_BASE64_MARKER.length-this.COMMA_CHARACTER.length;return{mediaType:s?r.substring(0,i):r,base64:s?n:void 0,data:s?atob(n):n}},e.buildAbsoluteUrl=function(t,r,n){return e.isUrlAbsolute(n)?n:e.isRootRelativeUrl(n)?r+n:t+n},e.getAbsoluteUrl=function(t,r){return e.isUrlAbsolute(t)?t:e.concatBaseUrlWithPartial(r,t)},e.removeDotSegments=function(t){for(var r=e.isUrlAbsolute(t)?i(t):"",n=[],s=0,o=t.substring(r.length).split("/");s<o.length;s++){var a=o[s];if(".."===a){if(0===n.length)return t;n.pop()}else"."!==a&&n.push(a)}return r+n.join("/")},e.DATA_URI_PROTOCOL="data:",e.DATA_URI_BASE64_MARKER="base64",e.DATA_URI_DEFAULT_MEDIA_TYPE="text/plain;charset=US-ASCII",e.ABSOLUTE_URL_REGEX=new RegExp("^(?:[a-z]+:)?//","i"),e.COMMA_CHARACTER=",",e}();function n(e,t,r){return e+=t,null!=r&&(e+="="+encodeURIComponent(r)),e}function s(){var e;return(null===(e=window.location)||void 0===e?void 0:e.protocol)||"https:"}function i(e){var t=e.indexOf("//")+2,r=e.indexOf("/",t);return-1===r&&(r=e.indexOf("?",t)),-1===r?e:e.slice(0,r)}t.URLHelper=r},79868:function(e,t){var r,n;Object.defineProperty(t,"__esModule",{value:!0}),t.ResponseStatusCode=t.ServiceWorkerMessageType=void 0,function(e){e.Dispose="dispose",e.Logging="logging",e.Playlist="playlist",e.Segment="segment",e.QueryParameters="queryparameters",e.WithCredentials="withcredentials",e.PreProcessRequestStarted="preprocessRequestStarted",e.PreProcessRequestFinished="preprocessRequestFinished",e.PreProcessResponseStarted="preprocessResponseStarted",e.PreProcessResponseFinished="preprocessResponseFinished"}(r||(t.ServiceWorkerMessageType=r={})),function(e){e[e.Success=200]="Success",e[e.PartialContent=206]="PartialContent",e[e.BadRequest=400]="BadRequest"}(n||(t.ResponseStatusCode=n={}))},9339:function(e,t,r){Object.defineProperty(t,"__esModule",{value:!0}),t.DeferringService=void 0;var n=r(34841),s=function(){function e(){this.qz={},this.rz={}}return e.prototype.saveRequest=function(e,t){this.qz[e]||(this.qz[e]=new Map);var r=new n.Deferred;return this.qz[e].set(t,r),r},e.prototype.getRequest=function(e,t){var r;return null===(r=this.qz[e])||void 0===r?void 0:r.get(t)},e.prototype.resolveRequest=function(e,t,r){var n,s=this.qz[e];s&&(null===(n=s.get(t))||void 0===n||n.resolve(r),s.delete(t))},e.prototype.saveResponse=function(e,t){this.rz[e]||(this.rz[e]=new Map);var r=new n.Deferred;return this.rz[e].set(t,r),r},e.prototype.getResponse=function(e,t){var r;return null===(r=this.rz[e])||void 0===r?void 0:r.get(t)},e.prototype.resolveResponse=function(e,t,r){var n,s=this.rz[e];s&&(null===(n=s.get(t))||void 0===n||n.resolve(r),s.delete(t))},e.prototype.rejectAll=function(e,t){this.qz[e]&&(this.qz[e].forEach((function(e){return e.reject(t)})),delete this.qz[e]),this.rz[e]&&(this.rz[e].forEach((function(e){return e.reject(t)})),delete this.rz[e])},e}();t.DeferringService=s},59691:function(e,t){function r(e){var t={};return e.forEach((function(e,r){t[r]=e})),t}Object.defineProperty(t,"__esModule",{value:!0}),t.generateUniqueId=function(e){var t=e.headers.get("range");return t?"".concat(e.url,"-").concat(t):e.url},t.fromFetchRequestToHttpRequest=function(e){return{url:e.url,headers:r(e.headers),method:e.method,body:void 0,credentials:e.credentials,responseType:"text"}},t.fromHttpRequestToFetchRequest=function(e){return new Request(e.url,{method:e.method,headers:e.headers,body:void 0,credentials:e.credentials})},t.fromFetchResponseToHttpResponse=function(e,t,n){return{url:e.url,status:e.status,statusText:e.statusText,headers:r(e.headers),body:t,request:n}},t.fromHttpResponseToFetchResponse=function(e){return new Response(e.body,{status:e.status,statusText:e.statusText,headers:e.headers})}},83706:function(e,t,r){Object.defineProperty(t,"__esModule",{value:!0}),t.HlsMediaTypes=void 0,t.extractFileExtension=c,t.addQueryParametersToPlaylist=function(e,t,r){void 0===r&&(r={});var s=t.split(/\r?\n/);return s.forEach((function(t,i){"#"!==t[0]&&t.trim().length>0?s[i]=d(e,t,r):t.indexOf("URI")>-1&&(s[i]=function(e,t,r){var s,i=t.match(o);return i?(s=(0===t.indexOf(n.Key)||0===t.indexOf(n.SessionKey))&&t.indexOf(u)>0?i[1].replace(a,"skd://"):d(e,i[1],r),t.replace(o,(function(){return'URI="'.concat(s,'"')}))):t}(e,t,r))})),s.join("\n")},t.inferMediaType=function(e){if("m3u8"===c(e))return s.Playlist;var t=e.split("?")[0];return l.test(t)?s.Playlist:null};var n,s,i=r(58313),o=/URI="([^"]+)"/,a=/([^:]+):\/\//,u='KEYFORMAT="com.apple.streamingkeydelivery"',l=/\(format=m3u8[^)]*\)/i;function c(e){return-1===(e=(e=e.split("?")[0]).substring(1+e.lastIndexOf("/")).split("#")[0].split(";")[0]).lastIndexOf(".")?"":e.substring(e.lastIndexOf(".")+1)}function d(e,t,r){var n=i.URLHelper.concatBaseUrlWithPartial(e,t);return i.URLHelper.appendQueryParametersToUrl(n,r)}!function(e){e.Key="#EXT-X-KEY",e.SessionKey="#EXT-X-SESSION-KEY"}(n||(n={})),function(e){e.Playlist="Playlist"}(s||(t.HlsMediaTypes=s={}))},16122:function(e,t,r){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var s in t=arguments[r])Object.prototype.hasOwnProperty.call(t,s)&&(e[s]=t[s]);return e},n.apply(this,arguments)};Object.defineProperty(t,"__esModule",{value:!0}),t.QueryParameterService=void 0,t.stripPlayerIdFormUrl=function(e){var t=new URL(e),r=t.search.match(o);return r?(t.search=t.search.replace(r[0],""),[t.href,r[1]]):[e,null]},t.hasPlayerId=function(e){return Boolean(e.match(o))};var s=r(58313),i=r(83706),o=/[\?&]?bitmovin-player-id=([^&=]+)&?/,a=function(){function e(){this.sz={},this.tz={}}return e.prototype.setQueryParameters=function(e,t){this.sz[e]=t},e.prototype.addQueryParametersToPlaylist=function(e,t,r){this.tz[r]||(this.tz[r]=e);var o=s.URLHelper.concatBaseUrlWithPartial(this.tz[r],e);return{absoluteUrlsPlaylist:(0,i.addQueryParametersToPlaylist)(o,t,this.sz[r]),playerIdsPlaylist:(0,i.addQueryParametersToPlaylist)(o,t,n(n({},this.sz[r]),{"bitmovin-player-id":r}))}},e.prototype.reset=function(e){delete this.sz[e],delete this.tz[e]},e}();t.QueryParameterService=a},69580:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(s,i){function o(e){try{u(n.next(e))}catch(e){i(e)}}function a(e){try{u(n.throw(e))}catch(e){i(e)}}function u(e){e.done?s(e.value):function(e){return e instanceof r?e:new r((function(t){t(e)}))}(e.value).then(o,a)}u((n=n.apply(e,t||[])).next())}))},s=this&&this.__generator||function(e,t){var r,n,s,i={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]},o=Object.create(("function"==typeof Iterator?Iterator:Object).prototype);return o.next=a(0),o.throw=a(1),o.return=a(2),"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(a){return function(u){return function(a){if(r)throw new TypeError("Generator is already executing.");for(;o&&(o=0,a[0]&&(i=0)),i;)try{if(r=1,n&&(s=2&a[0]?n.return:a[0]?n.throw||((s=n.return)&&s.call(n),0):n.next)&&!(s=s.call(n,a[1])).done)return s;switch(n=0,s&&(a=[2&a[0],s.value]),a[0]){case 0:case 1:s=a;break;case 4:return i.label++,{value:a[1],done:!1};case 5:i.label++,n=a[1],a=[0];continue;case 7:a=i.ops.pop(),i.trys.pop();continue;default:if(!((s=(s=i.trys).length>0&&s[s.length-1])||6!==a[0]&&2!==a[0])){i=0;continue}if(3===a[0]&&(!s||a[1]>s[0]&&a[1]<s[3])){i.label=a[1];break}if(6===a[0]&&i.label<s[1]){i.label=s[1],s=a;break}if(s&&i.label<s[2]){i.label=s[2],i.ops.push(a);break}s[2]&&i.ops.pop(),i.trys.pop();continue}a=t.call(e,i)}catch(e){a=[6,e],n=0}finally{r=s=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,u])}}};Object.defineProperty(t,"__esModule",{value:!0}),t.onClientDisposed=t.handlePreProcessResponseFinished=t.handlePreProcessRequestFinished=t.saveWithCredentials=t.saveQueryParameters=t.sendMessageToClient=void 0;var i=r(79868),o=r(9339),a=r(59691),u=r(83706),l=r(16122);t.default=null;var c=new o.DeferringService,d=new l.QueryParameterService,f={};self.addEventListener("install",(function(e){e.waitUntil(self.skipWaiting())})),self.addEventListener("activate",(function(e){e.waitUntil(self.clients.claim())})),self.addEventListener("message",(function(e){switch(e.data.type){case i.ServiceWorkerMessageType.Dispose:(0,t.onClientDisposed)(e.data);break;case i.ServiceWorkerMessageType.PreProcessRequestFinished:(0,t.handlePreProcessRequestFinished)(e.data);break;case i.ServiceWorkerMessageType.PreProcessResponseFinished:(0,t.handlePreProcessResponseFinished)(e.data);break;case i.ServiceWorkerMessageType.QueryParameters:(0,t.saveQueryParameters)(e.data);break;case i.ServiceWorkerMessageType.WithCredentials:(0,t.saveWithCredentials)(e.data)}})),self.addEventListener("fetch",(function(e){return n(void 0,void 0,void 0,(function(){var r,n,o,d,f,R,g,P,b;return s(this,(function(s){return(0,l.hasPlayerId)(e.request.url)&&(r=y(e.request),n=r[0],o=r[1],d=(0,a.generateUniqueId)(o),f=(0,a.fromFetchRequestToHttpRequest)(o),(R=(0,u.inferMediaType)(f.url))===u.HlsMediaTypes.Playlist&&(c.getRequest(n,d)?(0,t.sendMessageToClient)({type:i.ServiceWorkerMessageType.Logging,message:"Preprocessing already ongoing!",data:{id:e.request.url},clientId:n}):(c.saveRequest(n,d),e.waitUntil(self.clients.get(n).then((function(e){(0,t.sendMessageToClient)({type:i.ServiceWorkerMessageType.PreProcessRequestStarted,id:d,httpRequest:f,clientId:n})}))))),g=null!==(b=null===(P=c.getRequest(n,d))||void 0===P?void 0:P.promise)&&void 0!==b?b:Promise.resolve(null),e.respondWith(g.then((function(e){var t=e?(0,a.fromHttpRequestToFetchRequest)(e):o;return fetch(t).then((function(t){return Promise.resolve({response:t,preprocessedRequest:e})}))})).then((function(e){var t=e.response,r=e.preprocessedRequest;return R===u.HlsMediaTypes.Playlist?v(t,n,d,null!=r?r:f):p(t,n)})).catch((function(e){return h(e)})))),[2]}))}))}));var p=function(e,r){return e.status===i.ResponseStatusCode.Success&&(0,t.sendMessageToClient)({type:i.ServiceWorkerMessageType.Segment,url:e.url,clientId:r}),e},h=function(e){return new Response(e.body||JSON.stringify(e),{status:e.status||i.ResponseStatusCode.BadRequest,statusText:e.statusText||"Bad Request",headers:e.headers||{}})},v=function(e,r,n,s){return e.clone().text().then((function(o){var u,l,d=(0,a.fromFetchResponseToHttpResponse)(e,o,s);return e.status!==i.ResponseStatusCode.PartialContent&&((0,t.sendMessageToClient)({type:i.ServiceWorkerMessageType.PreProcessResponseStarted,id:n,httpResponse:d,clientId:r}),c.saveResponse(r,n)),null!==(l=null===(u=c.getResponse(r,n))||void 0===u?void 0:u.promise)&&void 0!==l?l:Promise.resolve(d)})).then((function(e){var n=e.body,s=e.status,o=e.url,u=d.addQueryParametersToPlaylist(o,null!=n?n:"",r);return e.body=u.playerIdsPlaylist,s!==i.ResponseStatusCode.PartialContent&&(0,t.sendMessageToClient)({type:i.ServiceWorkerMessageType.Playlist,url:o,playlist:u.absoluteUrlsPlaylist,clientId:r}),(0,a.fromHttpResponseToFetchResponse)(e)}))},y=function(e){var t=(0,l.stripPlayerIdFormUrl)(e.url),r=t[0],n=t[1],s=new Headers(e.headers);return s.delete("x-playback-session-id"),[n,new Request(r,{credentials:f[n]?"include":"omit",mode:"cors",headers:s})]};t.sendMessageToClient=function(e){self.clients.matchAll().then((function(t){t.forEach((function(t){t.postMessage(e)}))}))},t.saveQueryParameters=function(e){d.setQueryParameters(e.clientId,e.queryParameters)},t.saveWithCredentials=function(e){f[e.clientId]=e.withCredentials},t.handlePreProcessRequestFinished=function(e){var t=e.clientId,r=e.id,n=e.httpRequest;c.resolveRequest(t,r,n)},t.handlePreProcessResponseFinished=function(e){var t=e.clientId,r=e.id,n=e.httpResponse;c.resolveResponse(t,r,n)},t.onClientDisposed=function(e){c.rejectAll(e.clientId,"Client disposed"),d.reset(e.clientId),delete f[e.clientId]}}},t={};return function r(n){var s=t[n];if(void 0!==s)return s.exports;var i=t[n]={exports:{}};return e[n].call(i.exports,i,i.exports,r),i.exports}(69580)}()}));
|
|
17
|
+
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.serviceworker=t():(e.bitmovin=e.bitmovin||{},e.bitmovin.player=e.bitmovin.player||{},e.bitmovin.player.serviceworker=t())}(self,(function(){return function(){"use strict";var e={34841:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.Deferred=void 0;var r=function(){function e(){var e=this;this.YE="pending",this.VE=new Promise((function(t,r){e.WE=function(r){return e.YE="resolved",t(r)},e.XE=function(t){return e.YE="rejected",r(t)}}))}return Object.defineProperty(e.prototype,"hasSettled",{get:function(){return"pending"!==this.YE},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"promise",{get:function(){return this.VE},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"resolve",{get:function(){return this.WE},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"reject",{get:function(){return this.XE},enumerable:!1,configurable:!0}),e}();t.Deferred=r},58313:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.URLHelper=void 0,t.extractOrigin=i,t.removeQueryParameters=function(e,t){var r=e.split("?"),n=r[0],s=r[1];if(!s)return e;var i=s.split("&").filter((function(e){var r=e.split("=")[0];return!t.includes(r)})).join("&");return i?"".concat(n,"?").concat(i):n};var r=function(){function e(){}return e.isUrlAbsolute=function(t){return!!t&&("string"!=typeof t&&(t=e.urlObjectToString(t)),!!e.isDataUri(t)||e.ABSOLUTE_URL_REGEX.test(t))},e.removeUrlParameters=function(e){return e.indexOf("?")>-1&&(e=e.split("?")[0]),e},e.urlObjectToString=function(e){return e&&"string"!=typeof e?function(e){return e&&"string"==typeof e.__text}(e)?e.__text:function(e){return e&&"string"==typeof e.url}(e)?e.url:null:e},e.concatUrlParts=function(t,r){var n="/",s=e.urlObjectToString(t),o=e.urlObjectToString(r);return!s||s.length<1||e.isUrlAbsolute(o)?o:!o||o.length<1?s:((s=e.removeUrlParameters(s)).indexOf("/")>-1&&(s=s.substring(0,s.lastIndexOf("/"))),"/"===o[0]&&(s=i(s),n=""),s+n+o)},e.removeLastPathPart=function(t){if(!t)return null;t=e.removeUrlParameters(t);var r=e.getProtocolOffset(t),n=t.lastIndexOf("/");return n===t.length-1&&(t=t.substring(0,n)),(n=t.lastIndexOf("/"))<0?"":n>t.length-1?t:n<=r?t+"/":t.substring(0,n+1)},e.isRootRelativeUrl=function(e){return!!(e&&e.length>0)&&"/"===e[0]},e.getProtocolOffset=function(e){var t=e.indexOf("://");return t>-1?t+3:-1===t&&0===e.indexOf("//")?2:0},e.replaceCdn=function(e,t){var r=i(e),n=i(t);return e.replace(r,n)},e.isSubUrl=function(e,t){return!(!e||!t)&&(0===t.indexOf("../")&&(t=t.substring(3)),e.indexOf(t)>-1)},e.concatBaseUrlWithPartial=function(t,r){return e.isUrlAbsolute(r)?(r.startsWith("/")&&(r=(function(e){return e.substring(0,e.indexOf("//"))}(t)||s())+r),r):(t=this.toFullUrl(t),r&&0!==r.length?e.isRootRelativeUrl(r)?i(t)+r:(t.endsWith("/")||(t=this.removeLastPathPart(t)),t+r):t)},e.appendQueryParametersToUrl=function(e,t){if(!t||0===Object.keys(t).length)return e;var r="",s=e.indexOf("?")>=0;for(var i in t)t.hasOwnProperty(i)&&(r+=s?"&":"?",s=!0,r=n(r,i,t[i]));return e+r},e.toFullUrl=function(t){if(e.isDataUri(t))return t;if(!t.includes("//"))return t;var r=t.startsWith("//")?s()+t:t;return t.split("//")[1].includes("/")||(r+="/"),r},e.isDataUri=function(e){return e&&0===e.indexOf(this.DATA_URI_PROTOCOL)},e.parseDataUri=function(e){if(!this.isDataUri(e))throw new Error("Invalid data uri: "+e);-1===(e=e.substring(this.DATA_URI_PROTOCOL.length)).indexOf(this.COMMA_CHARACTER)&&(e=this.DATA_URI_DEFAULT_MEDIA_TYPE+this.COMMA_CHARACTER+e);var t=e.split(this.COMMA_CHARACTER),r=t[0],n=t[1],s=r.endsWith(this.DATA_URI_BASE64_MARKER),i=r.length-this.DATA_URI_BASE64_MARKER.length-this.COMMA_CHARACTER.length;return{mediaType:s?r.substring(0,i):r,base64:s?n:void 0,data:s?atob(n):n}},e.buildAbsoluteUrl=function(t,r,n){return e.isUrlAbsolute(n)?n:e.isRootRelativeUrl(n)?r+n:t+n},e.getAbsoluteUrl=function(t,r){return e.isUrlAbsolute(t)?t:e.concatBaseUrlWithPartial(r,t)},e.removeDotSegments=function(t){for(var r=e.isUrlAbsolute(t)?i(t):"",n=[],s=0,o=t.substring(r.length).split("/");s<o.length;s++){var a=o[s];if(".."===a){if(0===n.length)return t;n.pop()}else"."!==a&&n.push(a)}return r+n.join("/")},e.DATA_URI_PROTOCOL="data:",e.DATA_URI_BASE64_MARKER="base64",e.DATA_URI_DEFAULT_MEDIA_TYPE="text/plain;charset=US-ASCII",e.ABSOLUTE_URL_REGEX=new RegExp("^(?:[a-z]+:)?//","i"),e.COMMA_CHARACTER=",",e}();function n(e,t,r){return e+=t,null!=r&&(e+="="+encodeURIComponent(r)),e}function s(){var e;return(null===(e=window.location)||void 0===e?void 0:e.protocol)||"https:"}function i(e){var t=e.indexOf("//")+2,r=e.indexOf("/",t);return-1===r&&(r=e.indexOf("?",t)),-1===r?e:e.slice(0,r)}t.URLHelper=r},79868:function(e,t){var r,n;Object.defineProperty(t,"__esModule",{value:!0}),t.ResponseStatusCode=t.ServiceWorkerMessageType=void 0,function(e){e.Dispose="dispose",e.Logging="logging",e.Playlist="playlist",e.Segment="segment",e.QueryParameters="queryparameters",e.WithCredentials="withcredentials",e.PreProcessRequestStarted="preprocessRequestStarted",e.PreProcessRequestFinished="preprocessRequestFinished",e.PreProcessResponseStarted="preprocessResponseStarted",e.PreProcessResponseFinished="preprocessResponseFinished"}(r||(t.ServiceWorkerMessageType=r={})),function(e){e[e.Success=200]="Success",e[e.PartialContent=206]="PartialContent",e[e.BadRequest=400]="BadRequest"}(n||(t.ResponseStatusCode=n={}))},9339:function(e,t,r){Object.defineProperty(t,"__esModule",{value:!0}),t.DeferringService=void 0;var n=r(34841),s=function(){function e(){this.Ez={},this.Fz={}}return e.prototype.saveRequest=function(e,t){this.Ez[e]||(this.Ez[e]=new Map);var r=new n.Deferred;return this.Ez[e].set(t,r),r},e.prototype.getRequest=function(e,t){var r;return null===(r=this.Ez[e])||void 0===r?void 0:r.get(t)},e.prototype.resolveRequest=function(e,t,r){var n,s=this.Ez[e];s&&(null===(n=s.get(t))||void 0===n||n.resolve(r),s.delete(t))},e.prototype.saveResponse=function(e,t){this.Fz[e]||(this.Fz[e]=new Map);var r=new n.Deferred;return this.Fz[e].set(t,r),r},e.prototype.getResponse=function(e,t){var r;return null===(r=this.Fz[e])||void 0===r?void 0:r.get(t)},e.prototype.resolveResponse=function(e,t,r){var n,s=this.Fz[e];s&&(null===(n=s.get(t))||void 0===n||n.resolve(r),s.delete(t))},e.prototype.rejectAll=function(e,t){this.Ez[e]&&(this.Ez[e].forEach((function(e){return e.reject(t)})),delete this.Ez[e]),this.Fz[e]&&(this.Fz[e].forEach((function(e){return e.reject(t)})),delete this.Fz[e])},e}();t.DeferringService=s},59691:function(e,t){function r(e){var t={};return e.forEach((function(e,r){t[r]=e})),t}Object.defineProperty(t,"__esModule",{value:!0}),t.generateUniqueId=function(e){var t=e.headers.get("range");return t?"".concat(e.url,"-").concat(t):e.url},t.fromFetchRequestToHttpRequest=function(e){return{url:e.url,headers:r(e.headers),method:e.method,body:void 0,credentials:e.credentials,responseType:"text"}},t.fromHttpRequestToFetchRequest=function(e){return new Request(e.url,{method:e.method,headers:e.headers,body:void 0,credentials:e.credentials})},t.fromFetchResponseToHttpResponse=function(e,t,n){return{url:e.url,status:e.status,statusText:e.statusText,headers:r(e.headers),body:t,request:n}},t.fromHttpResponseToFetchResponse=function(e){return new Response(e.body,{status:e.status,statusText:e.statusText,headers:e.headers})}},83706:function(e,t,r){Object.defineProperty(t,"__esModule",{value:!0}),t.HlsMediaTypes=void 0,t.extractFileExtension=c,t.addQueryParametersToPlaylist=function(e,t,r){void 0===r&&(r={});var s=t.split(/\r?\n/);return s.forEach((function(t,i){"#"!==t[0]&&t.trim().length>0?s[i]=d(e,t,r):t.indexOf("URI")>-1&&(s[i]=function(e,t,r){var s,i=t.match(o);return i?(s=(0===t.indexOf(n.Key)||0===t.indexOf(n.SessionKey))&&t.indexOf(u)>0?i[1].replace(a,"skd://"):d(e,i[1],r),t.replace(o,(function(){return'URI="'.concat(s,'"')}))):t}(e,t,r))})),s.join("\n")},t.inferMediaType=function(e){if("m3u8"===c(e))return s.Playlist;var t=e.split("?")[0];return l.test(t)?s.Playlist:null};var n,s,i=r(58313),o=/URI="([^"]+)"/,a=/([^:]+):\/\//,u='KEYFORMAT="com.apple.streamingkeydelivery"',l=/\(format=m3u8[^)]*\)/i;function c(e){return-1===(e=(e=e.split("?")[0]).substring(1+e.lastIndexOf("/")).split("#")[0].split(";")[0]).lastIndexOf(".")?"":e.substring(e.lastIndexOf(".")+1)}function d(e,t,r){var n=i.URLHelper.concatBaseUrlWithPartial(e,t);return i.URLHelper.appendQueryParametersToUrl(n,r)}!function(e){e.Key="#EXT-X-KEY",e.SessionKey="#EXT-X-SESSION-KEY"}(n||(n={})),function(e){e.Playlist="Playlist"}(s||(t.HlsMediaTypes=s={}))},16122:function(e,t,r){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var s in t=arguments[r])Object.prototype.hasOwnProperty.call(t,s)&&(e[s]=t[s]);return e},n.apply(this,arguments)};Object.defineProperty(t,"__esModule",{value:!0}),t.QueryParameterService=void 0,t.stripPlayerIdFormUrl=function(e){var t=new URL(e),r=t.search.match(o);return r?(t.search=t.search.replace(r[0],""),[t.href,r[1]]):[e,null]},t.hasPlayerId=function(e){return Boolean(e.match(o))};var s=r(58313),i=r(83706),o=/[\?&]?bitmovin-player-id=([^&=]+)&?/,a=function(){function e(){this.Gz={},this.Hz={}}return e.prototype.setQueryParameters=function(e,t){this.Gz[e]=t},e.prototype.addQueryParametersToPlaylist=function(e,t,r){this.Hz[r]||(this.Hz[r]=e);var o=s.URLHelper.concatBaseUrlWithPartial(this.Hz[r],e);return{absoluteUrlsPlaylist:(0,i.addQueryParametersToPlaylist)(o,t,this.Gz[r]),playerIdsPlaylist:(0,i.addQueryParametersToPlaylist)(o,t,n(n({},this.Gz[r]),{"bitmovin-player-id":r}))}},e.prototype.reset=function(e){delete this.Gz[e],delete this.Hz[e]},e}();t.QueryParameterService=a},69580:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(s,i){function o(e){try{u(n.next(e))}catch(e){i(e)}}function a(e){try{u(n.throw(e))}catch(e){i(e)}}function u(e){e.done?s(e.value):function(e){return e instanceof r?e:new r((function(t){t(e)}))}(e.value).then(o,a)}u((n=n.apply(e,t||[])).next())}))},s=this&&this.__generator||function(e,t){var r,n,s,i={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]},o=Object.create(("function"==typeof Iterator?Iterator:Object).prototype);return o.next=a(0),o.throw=a(1),o.return=a(2),"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(a){return function(u){return function(a){if(r)throw new TypeError("Generator is already executing.");for(;o&&(o=0,a[0]&&(i=0)),i;)try{if(r=1,n&&(s=2&a[0]?n.return:a[0]?n.throw||((s=n.return)&&s.call(n),0):n.next)&&!(s=s.call(n,a[1])).done)return s;switch(n=0,s&&(a=[2&a[0],s.value]),a[0]){case 0:case 1:s=a;break;case 4:return i.label++,{value:a[1],done:!1};case 5:i.label++,n=a[1],a=[0];continue;case 7:a=i.ops.pop(),i.trys.pop();continue;default:if(!((s=(s=i.trys).length>0&&s[s.length-1])||6!==a[0]&&2!==a[0])){i=0;continue}if(3===a[0]&&(!s||a[1]>s[0]&&a[1]<s[3])){i.label=a[1];break}if(6===a[0]&&i.label<s[1]){i.label=s[1],s=a;break}if(s&&i.label<s[2]){i.label=s[2],i.ops.push(a);break}s[2]&&i.ops.pop(),i.trys.pop();continue}a=t.call(e,i)}catch(e){a=[6,e],n=0}finally{r=s=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,u])}}};Object.defineProperty(t,"__esModule",{value:!0}),t.onClientDisposed=t.handlePreProcessResponseFinished=t.handlePreProcessRequestFinished=t.saveWithCredentials=t.saveQueryParameters=t.sendMessageToClient=void 0;var i=r(79868),o=r(9339),a=r(59691),u=r(83706),l=r(16122);t.default=null;var c=new o.DeferringService,d=new l.QueryParameterService,f={};self.addEventListener("install",(function(e){e.waitUntil(self.skipWaiting())})),self.addEventListener("activate",(function(e){e.waitUntil(self.clients.claim())})),self.addEventListener("message",(function(e){switch(e.data.type){case i.ServiceWorkerMessageType.Dispose:(0,t.onClientDisposed)(e.data);break;case i.ServiceWorkerMessageType.PreProcessRequestFinished:(0,t.handlePreProcessRequestFinished)(e.data);break;case i.ServiceWorkerMessageType.PreProcessResponseFinished:(0,t.handlePreProcessResponseFinished)(e.data);break;case i.ServiceWorkerMessageType.QueryParameters:(0,t.saveQueryParameters)(e.data);break;case i.ServiceWorkerMessageType.WithCredentials:(0,t.saveWithCredentials)(e.data)}})),self.addEventListener("fetch",(function(e){return n(void 0,void 0,void 0,(function(){var r,n,o,d,f,R,g,P,b;return s(this,(function(s){return(0,l.hasPlayerId)(e.request.url)&&(r=y(e.request),n=r[0],o=r[1],d=(0,a.generateUniqueId)(o),f=(0,a.fromFetchRequestToHttpRequest)(o),(R=(0,u.inferMediaType)(f.url))===u.HlsMediaTypes.Playlist&&(c.getRequest(n,d)?(0,t.sendMessageToClient)({type:i.ServiceWorkerMessageType.Logging,message:"Preprocessing already ongoing!",data:{id:e.request.url},clientId:n}):(c.saveRequest(n,d),e.waitUntil(self.clients.get(n).then((function(e){(0,t.sendMessageToClient)({type:i.ServiceWorkerMessageType.PreProcessRequestStarted,id:d,httpRequest:f,clientId:n})}))))),g=null!==(b=null===(P=c.getRequest(n,d))||void 0===P?void 0:P.promise)&&void 0!==b?b:Promise.resolve(null),e.respondWith(g.then((function(e){var t=e?(0,a.fromHttpRequestToFetchRequest)(e):o;return fetch(t).then((function(t){return Promise.resolve({response:t,preprocessedRequest:e})}))})).then((function(e){var t=e.response,r=e.preprocessedRequest;return R===u.HlsMediaTypes.Playlist?v(t,n,d,null!=r?r:f):p(t,n)})).catch((function(e){return h(e)})))),[2]}))}))}));var p=function(e,r){return e.status===i.ResponseStatusCode.Success&&(0,t.sendMessageToClient)({type:i.ServiceWorkerMessageType.Segment,url:e.url,clientId:r}),e},h=function(e){return new Response(e.body||JSON.stringify(e),{status:e.status||i.ResponseStatusCode.BadRequest,statusText:e.statusText||"Bad Request",headers:e.headers||{}})},v=function(e,r,n,s){return e.clone().text().then((function(o){var u,l,d=(0,a.fromFetchResponseToHttpResponse)(e,o,s);return e.status!==i.ResponseStatusCode.PartialContent&&((0,t.sendMessageToClient)({type:i.ServiceWorkerMessageType.PreProcessResponseStarted,id:n,httpResponse:d,clientId:r}),c.saveResponse(r,n)),null!==(l=null===(u=c.getResponse(r,n))||void 0===u?void 0:u.promise)&&void 0!==l?l:Promise.resolve(d)})).then((function(e){var n=e.body,s=e.status,o=e.url,u=d.addQueryParametersToPlaylist(o,null!=n?n:"",r);return e.body=u.playerIdsPlaylist,s!==i.ResponseStatusCode.PartialContent&&(0,t.sendMessageToClient)({type:i.ServiceWorkerMessageType.Playlist,url:o,playlist:u.absoluteUrlsPlaylist,clientId:r}),(0,a.fromHttpResponseToFetchResponse)(e)}))},y=function(e){var t=(0,l.stripPlayerIdFormUrl)(e.url),r=t[0],n=t[1],s=new Headers(e.headers);return s.delete("x-playback-session-id"),[n,new Request(r,{credentials:f[n]?"include":"omit",mode:"cors",headers:s})]};t.sendMessageToClient=function(e){self.clients.matchAll().then((function(t){t.forEach((function(t){t.postMessage(e)}))}))},t.saveQueryParameters=function(e){d.setQueryParameters(e.clientId,e.queryParameters)},t.saveWithCredentials=function(e){f[e.clientId]=e.withCredentials},t.handlePreProcessRequestFinished=function(e){var t=e.clientId,r=e.id,n=e.httpRequest;c.resolveRequest(t,r,n)},t.handlePreProcessResponseFinished=function(e){var t=e.clientId,r=e.id,n=e.httpResponse;c.resolveResponse(t,r,n)},t.onClientDisposed=function(e){c.rejectAll(e.clientId,"Client disposed"),d.reset(e.clientId),delete f[e.clientId]}}},t={};return function r(n){var s=t[n];if(void 0!==s)return s.exports;var i=t[n]={exports:{}};return e[n].call(i.exports,i,i.exports,r),i.exports}(69580)}()}));
|
|
18
18
|
})();
|
|
@@ -9,10 +9,10 @@
|
|
|
9
9
|
* This software includes open-source components. See THIRD_PARTY_NOTICES
|
|
10
10
|
* in the distribution for details.
|
|
11
11
|
*
|
|
12
|
-
* Bitmovin Player Version 8.
|
|
12
|
+
* Bitmovin Player Version 8.264.0
|
|
13
13
|
*
|
|
14
14
|
****************************************************************************/
|
|
15
15
|
|
|
16
16
|
(function() {
|
|
17
|
-
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.serviceworker=t():(e.bitmovin=e.bitmovin||{},e.bitmovin.player=e.bitmovin.player||{},e.bitmovin.player.serviceworker=t())}(self,(function(){return function(){"use strict";var e={34841:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.Deferred=void 0;var r=function(){function e(){var e=this;this.mF="pending",this.jF=new Promise((function(t,r){e.kF=function(r){return e.mF="resolved",t(r)},e.lF=function(t){return e.mF="rejected",r(t)}}))}return Object.defineProperty(e.prototype,"hasSettled",{get:function(){return"pending"!==this.mF},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"promise",{get:function(){return this.jF},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"resolve",{get:function(){return this.kF},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"reject",{get:function(){return this.lF},enumerable:!1,configurable:!0}),e}();t.Deferred=r},58313:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.URLHelper=void 0,t.extractOrigin=i,t.removeQueryParameters=function(e,t){var r=e.split("?"),n=r[0],s=r[1];if(!s)return e;var i=s.split("&").filter((function(e){var r=e.split("=")[0];return!t.includes(r)})).join("&");return i?"".concat(n,"?").concat(i):n};var r=function(){function e(){}return e.isUrlAbsolute=function(t){return!!t&&("string"!=typeof t&&(t=e.urlObjectToString(t)),!!e.isDataUri(t)||e.ABSOLUTE_URL_REGEX.test(t))},e.removeUrlParameters=function(e){return e.indexOf("?")>-1&&(e=e.split("?")[0]),e},e.urlObjectToString=function(e){return e&&"string"!=typeof e?function(e){return e&&"string"==typeof e.__text}(e)?e.__text:function(e){return e&&"string"==typeof e.url}(e)?e.url:null:e},e.concatUrlParts=function(t,r){var n="/",s=e.urlObjectToString(t),o=e.urlObjectToString(r);return!s||s.length<1||e.isUrlAbsolute(o)?o:!o||o.length<1?s:((s=e.removeUrlParameters(s)).indexOf("/")>-1&&(s=s.substring(0,s.lastIndexOf("/"))),"/"===o[0]&&(s=i(s),n=""),s+n+o)},e.removeLastPathPart=function(t){if(!t)return null;t=e.removeUrlParameters(t);var r=e.getProtocolOffset(t),n=t.lastIndexOf("/");return n===t.length-1&&(t=t.substring(0,n)),(n=t.lastIndexOf("/"))<0?"":n>t.length-1?t:n<=r?t+"/":t.substring(0,n+1)},e.isRootRelativeUrl=function(e){return!!(e&&e.length>0)&&"/"===e[0]},e.getProtocolOffset=function(e){var t=e.indexOf("://");return t>-1?t+3:-1===t&&0===e.indexOf("//")?2:0},e.replaceCdn=function(e,t){var r=i(e),n=i(t);return e.replace(r,n)},e.isSubUrl=function(e,t){return!(!e||!t)&&(0===t.indexOf("../")&&(t=t.substring(3)),e.indexOf(t)>-1)},e.concatBaseUrlWithPartial=function(t,r){return e.isUrlAbsolute(r)?(r.startsWith("/")&&(r=(function(e){return e.substring(0,e.indexOf("//"))}(t)||s())+r),r):(t=this.toFullUrl(t),r&&0!==r.length?e.isRootRelativeUrl(r)?i(t)+r:(t.endsWith("/")||(t=this.removeLastPathPart(t)),t+r):t)},e.appendQueryParametersToUrl=function(e,t){if(!t||0===Object.keys(t).length)return e;var r="",s=e.indexOf("?")>=0;for(var i in t)t.hasOwnProperty(i)&&(r+=s?"&":"?",s=!0,r=n(r,i,t[i]));return e+r},e.toFullUrl=function(t){if(e.isDataUri(t))return t;if(!t.includes("//"))return t;var r=t.startsWith("//")?s()+t:t;return t.split("//")[1].includes("/")||(r+="/"),r},e.isDataUri=function(e){return e&&0===e.indexOf(this.DATA_URI_PROTOCOL)},e.parseDataUri=function(e){if(!this.isDataUri(e))throw new Error("Invalid data uri: "+e);-1===(e=e.substring(this.DATA_URI_PROTOCOL.length)).indexOf(this.COMMA_CHARACTER)&&(e=this.DATA_URI_DEFAULT_MEDIA_TYPE+this.COMMA_CHARACTER+e);var t=e.split(this.COMMA_CHARACTER),r=t[0],n=t[1],s=r.endsWith(this.DATA_URI_BASE64_MARKER),i=r.length-this.DATA_URI_BASE64_MARKER.length-this.COMMA_CHARACTER.length;return{mediaType:s?r.substring(0,i):r,base64:s?n:void 0,data:s?atob(n):n}},e.buildAbsoluteUrl=function(t,r,n){return e.isUrlAbsolute(n)?n:e.isRootRelativeUrl(n)?r+n:t+n},e.getAbsoluteUrl=function(t,r){return e.isUrlAbsolute(t)?t:e.concatBaseUrlWithPartial(r,t)},e.removeDotSegments=function(t){for(var r=e.isUrlAbsolute(t)?i(t):"",n=[],s=0,o=t.substring(r.length).split("/");s<o.length;s++){var a=o[s];if(".."===a){if(0===n.length)return t;n.pop()}else"."!==a&&n.push(a)}return r+n.join("/")},e.DATA_URI_PROTOCOL="data:",e.DATA_URI_BASE64_MARKER="base64",e.DATA_URI_DEFAULT_MEDIA_TYPE="text/plain;charset=US-ASCII",e.ABSOLUTE_URL_REGEX=new RegExp("^(?:[a-z]+:)?//","i"),e.COMMA_CHARACTER=",",e}();function n(e,t,r){return e+=t,null!=r&&(e+="="+encodeURIComponent(r)),e}function s(){var e;return(null===(e=window.location)||void 0===e?void 0:e.protocol)||"https:"}function i(e){var t=e.indexOf("//")+2,r=e.indexOf("/",t);return-1===r&&(r=e.indexOf("?",t)),-1===r?e:e.slice(0,r)}t.URLHelper=r},79868:function(e,t){var r,n;Object.defineProperty(t,"__esModule",{value:!0}),t.ResponseStatusCode=t.ServiceWorkerMessageType=void 0,function(e){e.Dispose="dispose",e.Logging="logging",e.Playlist="playlist",e.Segment="segment",e.QueryParameters="queryparameters",e.WithCredentials="withcredentials",e.PreProcessRequestStarted="preprocessRequestStarted",e.PreProcessRequestFinished="preprocessRequestFinished",e.PreProcessResponseStarted="preprocessResponseStarted",e.PreProcessResponseFinished="preprocessResponseFinished"}(r||(t.ServiceWorkerMessageType=r={})),function(e){e[e.Success=200]="Success",e[e.PartialContent=206]="PartialContent",e[e.BadRequest=400]="BadRequest"}(n||(t.ResponseStatusCode=n={}))},9339:function(e,t,r){Object.defineProperty(t,"__esModule",{value:!0}),t.DeferringService=void 0;var n=r(34841),s=function(){function e(){this.Rz={},this.Sz={}}return e.prototype.saveRequest=function(e,t){this.Rz[e]||(this.Rz[e]=new Map);var r=new n.Deferred;return this.Rz[e].set(t,r),r},e.prototype.getRequest=function(e,t){var r;return null===(r=this.Rz[e])||void 0===r?void 0:r.get(t)},e.prototype.resolveRequest=function(e,t,r){var n,s=this.Rz[e];s&&(null===(n=s.get(t))||void 0===n||n.resolve(r),s.delete(t))},e.prototype.saveResponse=function(e,t){this.Sz[e]||(this.Sz[e]=new Map);var r=new n.Deferred;return this.Sz[e].set(t,r),r},e.prototype.getResponse=function(e,t){var r;return null===(r=this.Sz[e])||void 0===r?void 0:r.get(t)},e.prototype.resolveResponse=function(e,t,r){var n,s=this.Sz[e];s&&(null===(n=s.get(t))||void 0===n||n.resolve(r),s.delete(t))},e.prototype.rejectAll=function(e,t){this.Rz[e]&&(this.Rz[e].forEach((function(e){return e.reject(t)})),delete this.Rz[e]),this.Sz[e]&&(this.Sz[e].forEach((function(e){return e.reject(t)})),delete this.Sz[e])},e}();t.DeferringService=s},59691:function(e,t){function r(e){var t={};return e.forEach((function(e,r){t[r]=e})),t}Object.defineProperty(t,"__esModule",{value:!0}),t.generateUniqueId=function(e){var t=e.headers.get("range");return t?"".concat(e.url,"-").concat(t):e.url},t.fromFetchRequestToHttpRequest=function(e){return{url:e.url,headers:r(e.headers),method:e.method,body:void 0,credentials:e.credentials,responseType:"text"}},t.fromHttpRequestToFetchRequest=function(e){return new Request(e.url,{method:e.method,headers:e.headers,body:void 0,credentials:e.credentials})},t.fromFetchResponseToHttpResponse=function(e,t,n){return{url:e.url,status:e.status,statusText:e.statusText,headers:r(e.headers),body:t,request:n}},t.fromHttpResponseToFetchResponse=function(e){return new Response(e.body,{status:e.status,statusText:e.statusText,headers:e.headers})}},83706:function(e,t,r){Object.defineProperty(t,"__esModule",{value:!0}),t.HlsMediaTypes=void 0,t.extractFileExtension=c,t.addQueryParametersToPlaylist=function(e,t,r){void 0===r&&(r={});var s=t.split(/\r?\n/);return s.forEach((function(t,i){"#"!==t[0]&&t.trim().length>0?s[i]=d(e,t,r):t.indexOf("URI")>-1&&(s[i]=function(e,t,r){var s,i=t.match(o);return i?(s=(0===t.indexOf(n.Key)||0===t.indexOf(n.SessionKey))&&t.indexOf(u)>0?i[1].replace(a,"skd://"):d(e,i[1],r),t.replace(o,(function(){return'URI="'.concat(s,'"')}))):t}(e,t,r))})),s.join("\n")},t.inferMediaType=function(e){if("m3u8"===c(e))return s.Playlist;var t=e.split("?")[0];return l.test(t)?s.Playlist:null};var n,s,i=r(58313),o=/URI="([^"]+)"/,a=/([^:]+):\/\//,u='KEYFORMAT="com.apple.streamingkeydelivery"',l=/\(format=m3u8[^)]*\)/i;function c(e){return-1===(e=(e=e.split("?")[0]).substring(1+e.lastIndexOf("/")).split("#")[0].split(";")[0]).lastIndexOf(".")?"":e.substring(e.lastIndexOf(".")+1)}function d(e,t,r){var n=i.URLHelper.concatBaseUrlWithPartial(e,t);return i.URLHelper.appendQueryParametersToUrl(n,r)}!function(e){e.Key="#EXT-X-KEY",e.SessionKey="#EXT-X-SESSION-KEY"}(n||(n={})),function(e){e.Playlist="Playlist"}(s||(t.HlsMediaTypes=s={}))},16122:function(e,t,r){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var s in t=arguments[r])Object.prototype.hasOwnProperty.call(t,s)&&(e[s]=t[s]);return e},n.apply(this,arguments)};Object.defineProperty(t,"__esModule",{value:!0}),t.QueryParameterService=void 0,t.stripPlayerIdFormUrl=function(e){var t=new URL(e),r=t.search.match(o);return r?(t.search=t.search.replace(r[0],""),[t.href,r[1]]):[e,null]},t.hasPlayerId=function(e){return Boolean(e.match(o))};var s=r(58313),i=r(83706),o=/[\?&]?bitmovin-player-id=([^&=]+)&?/,a=function(){function e(){this.Tz={},this.Uz={}}return e.prototype.setQueryParameters=function(e,t){this.Tz[e]=t},e.prototype.addQueryParametersToPlaylist=function(e,t,r){this.Uz[r]||(this.Uz[r]=e);var o=s.URLHelper.concatBaseUrlWithPartial(this.Uz[r],e);return{absoluteUrlsPlaylist:(0,i.addQueryParametersToPlaylist)(o,t,this.Tz[r]),playerIdsPlaylist:(0,i.addQueryParametersToPlaylist)(o,t,n(n({},this.Tz[r]),{"bitmovin-player-id":r}))}},e.prototype.reset=function(e){delete this.Tz[e],delete this.Uz[e]},e}();t.QueryParameterService=a},69580:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(s,i){function o(e){try{u(n.next(e))}catch(e){i(e)}}function a(e){try{u(n.throw(e))}catch(e){i(e)}}function u(e){e.done?s(e.value):function(e){return e instanceof r?e:new r((function(t){t(e)}))}(e.value).then(o,a)}u((n=n.apply(e,t||[])).next())}))},s=this&&this.__generator||function(e,t){var r,n,s,i={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]},o=Object.create(("function"==typeof Iterator?Iterator:Object).prototype);return o.next=a(0),o.throw=a(1),o.return=a(2),"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(a){return function(u){return function(a){if(r)throw new TypeError("Generator is already executing.");for(;o&&(o=0,a[0]&&(i=0)),i;)try{if(r=1,n&&(s=2&a[0]?n.return:a[0]?n.throw||((s=n.return)&&s.call(n),0):n.next)&&!(s=s.call(n,a[1])).done)return s;switch(n=0,s&&(a=[2&a[0],s.value]),a[0]){case 0:case 1:s=a;break;case 4:return i.label++,{value:a[1],done:!1};case 5:i.label++,n=a[1],a=[0];continue;case 7:a=i.ops.pop(),i.trys.pop();continue;default:if(!((s=(s=i.trys).length>0&&s[s.length-1])||6!==a[0]&&2!==a[0])){i=0;continue}if(3===a[0]&&(!s||a[1]>s[0]&&a[1]<s[3])){i.label=a[1];break}if(6===a[0]&&i.label<s[1]){i.label=s[1],s=a;break}if(s&&i.label<s[2]){i.label=s[2],i.ops.push(a);break}s[2]&&i.ops.pop(),i.trys.pop();continue}a=t.call(e,i)}catch(e){a=[6,e],n=0}finally{r=s=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,u])}}};Object.defineProperty(t,"__esModule",{value:!0}),t.onClientDisposed=t.handlePreProcessResponseFinished=t.handlePreProcessRequestFinished=t.saveWithCredentials=t.saveQueryParameters=t.sendMessageToClient=void 0;var i=r(79868),o=r(9339),a=r(59691),u=r(83706),l=r(16122);t.default=null;var c=new o.DeferringService,d=new l.QueryParameterService,f={};self.addEventListener("install",(function(e){e.waitUntil(self.skipWaiting())})),self.addEventListener("activate",(function(e){e.waitUntil(self.clients.claim())})),self.addEventListener("message",(function(e){switch(e.data.type){case i.ServiceWorkerMessageType.Dispose:(0,t.onClientDisposed)(e.data);break;case i.ServiceWorkerMessageType.PreProcessRequestFinished:(0,t.handlePreProcessRequestFinished)(e.data);break;case i.ServiceWorkerMessageType.PreProcessResponseFinished:(0,t.handlePreProcessResponseFinished)(e.data);break;case i.ServiceWorkerMessageType.QueryParameters:(0,t.saveQueryParameters)(e.data);break;case i.ServiceWorkerMessageType.WithCredentials:(0,t.saveWithCredentials)(e.data)}})),self.addEventListener("fetch",(function(e){return n(void 0,void 0,void 0,(function(){var r,n,o,d,f,R,g,P,m;return s(this,(function(s){return(0,l.hasPlayerId)(e.request.url)&&(r=y(e.request),n=r[0],o=r[1],d=(0,a.generateUniqueId)(o),f=(0,a.fromFetchRequestToHttpRequest)(o),(R=(0,u.inferMediaType)(f.url))===u.HlsMediaTypes.Playlist&&(c.getRequest(n,d)?(0,t.sendMessageToClient)({type:i.ServiceWorkerMessageType.Logging,message:"Preprocessing already ongoing!",data:{id:e.request.url},clientId:n}):(c.saveRequest(n,d),e.waitUntil(self.clients.get(n).then((function(e){(0,t.sendMessageToClient)({type:i.ServiceWorkerMessageType.PreProcessRequestStarted,id:d,httpRequest:f,clientId:n})}))))),g=null!==(m=null===(P=c.getRequest(n,d))||void 0===P?void 0:P.promise)&&void 0!==m?m:Promise.resolve(null),e.respondWith(g.then((function(e){var t=e?(0,a.fromHttpRequestToFetchRequest)(e):o;return fetch(t).then((function(t){return Promise.resolve({response:t,preprocessedRequest:e})}))})).then((function(e){var t=e.response,r=e.preprocessedRequest;return R===u.HlsMediaTypes.Playlist?v(t,n,d,null!=r?r:f):p(t,n)})).catch((function(e){return h(e)})))),[2]}))}))}));var p=function(e,r){return e.status===i.ResponseStatusCode.Success&&(0,t.sendMessageToClient)({type:i.ServiceWorkerMessageType.Segment,url:e.url,clientId:r}),e},h=function(e){return new Response(e.body||JSON.stringify(e),{status:e.status||i.ResponseStatusCode.BadRequest,statusText:e.statusText||"Bad Request",headers:e.headers||{}})},v=function(e,r,n,s){return e.clone().text().then((function(o){var u,l,d=(0,a.fromFetchResponseToHttpResponse)(e,o,s);return e.status!==i.ResponseStatusCode.PartialContent&&((0,t.sendMessageToClient)({type:i.ServiceWorkerMessageType.PreProcessResponseStarted,id:n,httpResponse:d,clientId:r}),c.saveResponse(r,n)),null!==(l=null===(u=c.getResponse(r,n))||void 0===u?void 0:u.promise)&&void 0!==l?l:Promise.resolve(d)})).then((function(e){var n=e.body,s=e.status,o=e.url,u=d.addQueryParametersToPlaylist(o,null!=n?n:"",r);return e.body=u.playerIdsPlaylist,s!==i.ResponseStatusCode.PartialContent&&(0,t.sendMessageToClient)({type:i.ServiceWorkerMessageType.Playlist,url:o,playlist:u.absoluteUrlsPlaylist,clientId:r}),(0,a.fromHttpResponseToFetchResponse)(e)}))},y=function(e){var t=(0,l.stripPlayerIdFormUrl)(e.url),r=t[0],n=t[1],s=new Headers(e.headers);return s.delete("x-playback-session-id"),[n,new Request(r,{credentials:f[n]?"include":"omit",mode:"cors",headers:s})]};t.sendMessageToClient=function(e){self.clients.matchAll().then((function(t){t.forEach((function(t){t.postMessage(e)}))}))},t.saveQueryParameters=function(e){d.setQueryParameters(e.clientId,e.queryParameters)},t.saveWithCredentials=function(e){f[e.clientId]=e.withCredentials},t.handlePreProcessRequestFinished=function(e){var t=e.clientId,r=e.id,n=e.httpRequest;c.resolveRequest(t,r,n)},t.handlePreProcessResponseFinished=function(e){var t=e.clientId,r=e.id,n=e.httpResponse;c.resolveResponse(t,r,n)},t.onClientDisposed=function(e){c.rejectAll(e.clientId,"Client disposed"),d.reset(e.clientId),delete f[e.clientId]}}},t={};return function r(n){var s=t[n];if(void 0!==s)return s.exports;var i=t[n]={exports:{}};return e[n].call(i.exports,i,i.exports,r),i.exports}(69580)}()}));
|
|
17
|
+
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.serviceworker=t():(e.bitmovin=e.bitmovin||{},e.bitmovin.player=e.bitmovin.player||{},e.bitmovin.player.serviceworker=t())}(self,(function(){return function(){"use strict";var e={34841:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.Deferred=void 0;var r=function(){function e(){var e=this;this.SH="pending",this.PH=new Promise((function(t,r){e.QH=function(r){return e.SH="resolved",t(r)},e.RH=function(t){return e.SH="rejected",r(t)}}))}return Object.defineProperty(e.prototype,"hasSettled",{get:function(){return"pending"!==this.SH},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"promise",{get:function(){return this.PH},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"resolve",{get:function(){return this.QH},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"reject",{get:function(){return this.RH},enumerable:!1,configurable:!0}),e}();t.Deferred=r},58313:function(e,t){Object.defineProperty(t,"__esModule",{value:!0}),t.URLHelper=void 0,t.extractOrigin=i,t.removeQueryParameters=function(e,t){var r=e.split("?"),n=r[0],s=r[1];if(!s)return e;var i=s.split("&").filter((function(e){var r=e.split("=")[0];return!t.includes(r)})).join("&");return i?"".concat(n,"?").concat(i):n};var r=function(){function e(){}return e.isUrlAbsolute=function(t){return!!t&&("string"!=typeof t&&(t=e.urlObjectToString(t)),!!e.isDataUri(t)||e.ABSOLUTE_URL_REGEX.test(t))},e.removeUrlParameters=function(e){return e.indexOf("?")>-1&&(e=e.split("?")[0]),e},e.urlObjectToString=function(e){return e&&"string"!=typeof e?function(e){return e&&"string"==typeof e.__text}(e)?e.__text:function(e){return e&&"string"==typeof e.url}(e)?e.url:null:e},e.concatUrlParts=function(t,r){var n="/",s=e.urlObjectToString(t),o=e.urlObjectToString(r);return!s||s.length<1||e.isUrlAbsolute(o)?o:!o||o.length<1?s:((s=e.removeUrlParameters(s)).indexOf("/")>-1&&(s=s.substring(0,s.lastIndexOf("/"))),"/"===o[0]&&(s=i(s),n=""),s+n+o)},e.removeLastPathPart=function(t){if(!t)return null;t=e.removeUrlParameters(t);var r=e.getProtocolOffset(t),n=t.lastIndexOf("/");return n===t.length-1&&(t=t.substring(0,n)),(n=t.lastIndexOf("/"))<0?"":n>t.length-1?t:n<=r?t+"/":t.substring(0,n+1)},e.isRootRelativeUrl=function(e){return!!(e&&e.length>0)&&"/"===e[0]},e.getProtocolOffset=function(e){var t=e.indexOf("://");return t>-1?t+3:-1===t&&0===e.indexOf("//")?2:0},e.replaceCdn=function(e,t){var r=i(e),n=i(t);return e.replace(r,n)},e.isSubUrl=function(e,t){return!(!e||!t)&&(0===t.indexOf("../")&&(t=t.substring(3)),e.indexOf(t)>-1)},e.concatBaseUrlWithPartial=function(t,r){return e.isUrlAbsolute(r)?(r.startsWith("/")&&(r=(function(e){return e.substring(0,e.indexOf("//"))}(t)||s())+r),r):(t=this.toFullUrl(t),r&&0!==r.length?e.isRootRelativeUrl(r)?i(t)+r:(t.endsWith("/")||(t=this.removeLastPathPart(t)),t+r):t)},e.appendQueryParametersToUrl=function(e,t){if(!t||0===Object.keys(t).length)return e;var r="",s=e.indexOf("?")>=0;for(var i in t)t.hasOwnProperty(i)&&(r+=s?"&":"?",s=!0,r=n(r,i,t[i]));return e+r},e.toFullUrl=function(t){if(e.isDataUri(t))return t;if(!t.includes("//"))return t;var r=t.startsWith("//")?s()+t:t;return t.split("//")[1].includes("/")||(r+="/"),r},e.isDataUri=function(e){return e&&0===e.indexOf(this.DATA_URI_PROTOCOL)},e.parseDataUri=function(e){if(!this.isDataUri(e))throw new Error("Invalid data uri: "+e);-1===(e=e.substring(this.DATA_URI_PROTOCOL.length)).indexOf(this.COMMA_CHARACTER)&&(e=this.DATA_URI_DEFAULT_MEDIA_TYPE+this.COMMA_CHARACTER+e);var t=e.split(this.COMMA_CHARACTER),r=t[0],n=t[1],s=r.endsWith(this.DATA_URI_BASE64_MARKER),i=r.length-this.DATA_URI_BASE64_MARKER.length-this.COMMA_CHARACTER.length;return{mediaType:s?r.substring(0,i):r,base64:s?n:void 0,data:s?atob(n):n}},e.buildAbsoluteUrl=function(t,r,n){return e.isUrlAbsolute(n)?n:e.isRootRelativeUrl(n)?r+n:t+n},e.getAbsoluteUrl=function(t,r){return e.isUrlAbsolute(t)?t:e.concatBaseUrlWithPartial(r,t)},e.removeDotSegments=function(t){for(var r=e.isUrlAbsolute(t)?i(t):"",n=[],s=0,o=t.substring(r.length).split("/");s<o.length;s++){var a=o[s];if(".."===a){if(0===n.length)return t;n.pop()}else"."!==a&&n.push(a)}return r+n.join("/")},e.DATA_URI_PROTOCOL="data:",e.DATA_URI_BASE64_MARKER="base64",e.DATA_URI_DEFAULT_MEDIA_TYPE="text/plain;charset=US-ASCII",e.ABSOLUTE_URL_REGEX=new RegExp("^(?:[a-z]+:)?//","i"),e.COMMA_CHARACTER=",",e}();function n(e,t,r){return e+=t,null!=r&&(e+="="+encodeURIComponent(r)),e}function s(){var e;return(null===(e=window.location)||void 0===e?void 0:e.protocol)||"https:"}function i(e){var t=e.indexOf("//")+2,r=e.indexOf("/",t);return-1===r&&(r=e.indexOf("?",t)),-1===r?e:e.slice(0,r)}t.URLHelper=r},79868:function(e,t){var r,n;Object.defineProperty(t,"__esModule",{value:!0}),t.ResponseStatusCode=t.ServiceWorkerMessageType=void 0,function(e){e.Dispose="dispose",e.Logging="logging",e.Playlist="playlist",e.Segment="segment",e.QueryParameters="queryparameters",e.WithCredentials="withcredentials",e.PreProcessRequestStarted="preprocessRequestStarted",e.PreProcessRequestFinished="preprocessRequestFinished",e.PreProcessResponseStarted="preprocessResponseStarted",e.PreProcessResponseFinished="preprocessResponseFinished"}(r||(t.ServiceWorkerMessageType=r={})),function(e){e[e.Success=200]="Success",e[e.PartialContent=206]="PartialContent",e[e.BadRequest=400]="BadRequest"}(n||(t.ResponseStatusCode=n={}))},9339:function(e,t,r){Object.defineProperty(t,"__esModule",{value:!0}),t.DeferringService=void 0;var n=r(34841),s=function(){function e(){this.qz={},this.rz={}}return e.prototype.saveRequest=function(e,t){this.qz[e]||(this.qz[e]=new Map);var r=new n.Deferred;return this.qz[e].set(t,r),r},e.prototype.getRequest=function(e,t){var r;return null===(r=this.qz[e])||void 0===r?void 0:r.get(t)},e.prototype.resolveRequest=function(e,t,r){var n,s=this.qz[e];s&&(null===(n=s.get(t))||void 0===n||n.resolve(r),s.delete(t))},e.prototype.saveResponse=function(e,t){this.rz[e]||(this.rz[e]=new Map);var r=new n.Deferred;return this.rz[e].set(t,r),r},e.prototype.getResponse=function(e,t){var r;return null===(r=this.rz[e])||void 0===r?void 0:r.get(t)},e.prototype.resolveResponse=function(e,t,r){var n,s=this.rz[e];s&&(null===(n=s.get(t))||void 0===n||n.resolve(r),s.delete(t))},e.prototype.rejectAll=function(e,t){this.qz[e]&&(this.qz[e].forEach((function(e){return e.reject(t)})),delete this.qz[e]),this.rz[e]&&(this.rz[e].forEach((function(e){return e.reject(t)})),delete this.rz[e])},e}();t.DeferringService=s},59691:function(e,t){function r(e){var t={};return e.forEach((function(e,r){t[r]=e})),t}Object.defineProperty(t,"__esModule",{value:!0}),t.generateUniqueId=function(e){var t=e.headers.get("range");return t?"".concat(e.url,"-").concat(t):e.url},t.fromFetchRequestToHttpRequest=function(e){return{url:e.url,headers:r(e.headers),method:e.method,body:void 0,credentials:e.credentials,responseType:"text"}},t.fromHttpRequestToFetchRequest=function(e){return new Request(e.url,{method:e.method,headers:e.headers,body:void 0,credentials:e.credentials})},t.fromFetchResponseToHttpResponse=function(e,t,n){return{url:e.url,status:e.status,statusText:e.statusText,headers:r(e.headers),body:t,request:n}},t.fromHttpResponseToFetchResponse=function(e){return new Response(e.body,{status:e.status,statusText:e.statusText,headers:e.headers})}},83706:function(e,t,r){Object.defineProperty(t,"__esModule",{value:!0}),t.HlsMediaTypes=void 0,t.extractFileExtension=c,t.addQueryParametersToPlaylist=function(e,t,r){void 0===r&&(r={});var s=t.split(/\r?\n/);return s.forEach((function(t,i){"#"!==t[0]&&t.trim().length>0?s[i]=d(e,t,r):t.indexOf("URI")>-1&&(s[i]=function(e,t,r){var s,i=t.match(o);return i?(s=(0===t.indexOf(n.Key)||0===t.indexOf(n.SessionKey))&&t.indexOf(u)>0?i[1].replace(a,"skd://"):d(e,i[1],r),t.replace(o,(function(){return'URI="'.concat(s,'"')}))):t}(e,t,r))})),s.join("\n")},t.inferMediaType=function(e){if("m3u8"===c(e))return s.Playlist;var t=e.split("?")[0];return l.test(t)?s.Playlist:null};var n,s,i=r(58313),o=/URI="([^"]+)"/,a=/([^:]+):\/\//,u='KEYFORMAT="com.apple.streamingkeydelivery"',l=/\(format=m3u8[^)]*\)/i;function c(e){return-1===(e=(e=e.split("?")[0]).substring(1+e.lastIndexOf("/")).split("#")[0].split(";")[0]).lastIndexOf(".")?"":e.substring(e.lastIndexOf(".")+1)}function d(e,t,r){var n=i.URLHelper.concatBaseUrlWithPartial(e,t);return i.URLHelper.appendQueryParametersToUrl(n,r)}!function(e){e.Key="#EXT-X-KEY",e.SessionKey="#EXT-X-SESSION-KEY"}(n||(n={})),function(e){e.Playlist="Playlist"}(s||(t.HlsMediaTypes=s={}))},16122:function(e,t,r){var n=this&&this.__assign||function(){return n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var s in t=arguments[r])Object.prototype.hasOwnProperty.call(t,s)&&(e[s]=t[s]);return e},n.apply(this,arguments)};Object.defineProperty(t,"__esModule",{value:!0}),t.QueryParameterService=void 0,t.stripPlayerIdFormUrl=function(e){var t=new URL(e),r=t.search.match(o);return r?(t.search=t.search.replace(r[0],""),[t.href,r[1]]):[e,null]},t.hasPlayerId=function(e){return Boolean(e.match(o))};var s=r(58313),i=r(83706),o=/[\?&]?bitmovin-player-id=([^&=]+)&?/,a=function(){function e(){this.sz={},this.tz={}}return e.prototype.setQueryParameters=function(e,t){this.sz[e]=t},e.prototype.addQueryParametersToPlaylist=function(e,t,r){this.tz[r]||(this.tz[r]=e);var o=s.URLHelper.concatBaseUrlWithPartial(this.tz[r],e);return{absoluteUrlsPlaylist:(0,i.addQueryParametersToPlaylist)(o,t,this.sz[r]),playerIdsPlaylist:(0,i.addQueryParametersToPlaylist)(o,t,n(n({},this.sz[r]),{"bitmovin-player-id":r}))}},e.prototype.reset=function(e){delete this.sz[e],delete this.tz[e]},e}();t.QueryParameterService=a},69580:function(e,t,r){var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(s,i){function o(e){try{u(n.next(e))}catch(e){i(e)}}function a(e){try{u(n.throw(e))}catch(e){i(e)}}function u(e){e.done?s(e.value):function(e){return e instanceof r?e:new r((function(t){t(e)}))}(e.value).then(o,a)}u((n=n.apply(e,t||[])).next())}))},s=this&&this.__generator||function(e,t){var r,n,s,i={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]},o=Object.create(("function"==typeof Iterator?Iterator:Object).prototype);return o.next=a(0),o.throw=a(1),o.return=a(2),"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function a(a){return function(u){return function(a){if(r)throw new TypeError("Generator is already executing.");for(;o&&(o=0,a[0]&&(i=0)),i;)try{if(r=1,n&&(s=2&a[0]?n.return:a[0]?n.throw||((s=n.return)&&s.call(n),0):n.next)&&!(s=s.call(n,a[1])).done)return s;switch(n=0,s&&(a=[2&a[0],s.value]),a[0]){case 0:case 1:s=a;break;case 4:return i.label++,{value:a[1],done:!1};case 5:i.label++,n=a[1],a=[0];continue;case 7:a=i.ops.pop(),i.trys.pop();continue;default:if(!((s=(s=i.trys).length>0&&s[s.length-1])||6!==a[0]&&2!==a[0])){i=0;continue}if(3===a[0]&&(!s||a[1]>s[0]&&a[1]<s[3])){i.label=a[1];break}if(6===a[0]&&i.label<s[1]){i.label=s[1],s=a;break}if(s&&i.label<s[2]){i.label=s[2],i.ops.push(a);break}s[2]&&i.ops.pop(),i.trys.pop();continue}a=t.call(e,i)}catch(e){a=[6,e],n=0}finally{r=s=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,u])}}};Object.defineProperty(t,"__esModule",{value:!0}),t.onClientDisposed=t.handlePreProcessResponseFinished=t.handlePreProcessRequestFinished=t.saveWithCredentials=t.saveQueryParameters=t.sendMessageToClient=void 0;var i=r(79868),o=r(9339),a=r(59691),u=r(83706),l=r(16122);t.default=null;var c=new o.DeferringService,d=new l.QueryParameterService,f={};self.addEventListener("install",(function(e){e.waitUntil(self.skipWaiting())})),self.addEventListener("activate",(function(e){e.waitUntil(self.clients.claim())})),self.addEventListener("message",(function(e){switch(e.data.type){case i.ServiceWorkerMessageType.Dispose:(0,t.onClientDisposed)(e.data);break;case i.ServiceWorkerMessageType.PreProcessRequestFinished:(0,t.handlePreProcessRequestFinished)(e.data);break;case i.ServiceWorkerMessageType.PreProcessResponseFinished:(0,t.handlePreProcessResponseFinished)(e.data);break;case i.ServiceWorkerMessageType.QueryParameters:(0,t.saveQueryParameters)(e.data);break;case i.ServiceWorkerMessageType.WithCredentials:(0,t.saveWithCredentials)(e.data)}})),self.addEventListener("fetch",(function(e){return n(void 0,void 0,void 0,(function(){var r,n,o,d,f,R,g,P,b;return s(this,(function(s){return(0,l.hasPlayerId)(e.request.url)&&(r=y(e.request),n=r[0],o=r[1],d=(0,a.generateUniqueId)(o),f=(0,a.fromFetchRequestToHttpRequest)(o),(R=(0,u.inferMediaType)(f.url))===u.HlsMediaTypes.Playlist&&(c.getRequest(n,d)?(0,t.sendMessageToClient)({type:i.ServiceWorkerMessageType.Logging,message:"Preprocessing already ongoing!",data:{id:e.request.url},clientId:n}):(c.saveRequest(n,d),e.waitUntil(self.clients.get(n).then((function(e){(0,t.sendMessageToClient)({type:i.ServiceWorkerMessageType.PreProcessRequestStarted,id:d,httpRequest:f,clientId:n})}))))),g=null!==(b=null===(P=c.getRequest(n,d))||void 0===P?void 0:P.promise)&&void 0!==b?b:Promise.resolve(null),e.respondWith(g.then((function(e){var t=e?(0,a.fromHttpRequestToFetchRequest)(e):o;return fetch(t).then((function(t){return Promise.resolve({response:t,preprocessedRequest:e})}))})).then((function(e){var t=e.response,r=e.preprocessedRequest;return R===u.HlsMediaTypes.Playlist?v(t,n,d,null!=r?r:f):p(t,n)})).catch((function(e){return h(e)})))),[2]}))}))}));var p=function(e,r){return e.status===i.ResponseStatusCode.Success&&(0,t.sendMessageToClient)({type:i.ServiceWorkerMessageType.Segment,url:e.url,clientId:r}),e},h=function(e){return new Response(e.body||JSON.stringify(e),{status:e.status||i.ResponseStatusCode.BadRequest,statusText:e.statusText||"Bad Request",headers:e.headers||{}})},v=function(e,r,n,s){return e.clone().text().then((function(o){var u,l,d=(0,a.fromFetchResponseToHttpResponse)(e,o,s);return e.status!==i.ResponseStatusCode.PartialContent&&((0,t.sendMessageToClient)({type:i.ServiceWorkerMessageType.PreProcessResponseStarted,id:n,httpResponse:d,clientId:r}),c.saveResponse(r,n)),null!==(l=null===(u=c.getResponse(r,n))||void 0===u?void 0:u.promise)&&void 0!==l?l:Promise.resolve(d)})).then((function(e){var n=e.body,s=e.status,o=e.url,u=d.addQueryParametersToPlaylist(o,null!=n?n:"",r);return e.body=u.playerIdsPlaylist,s!==i.ResponseStatusCode.PartialContent&&(0,t.sendMessageToClient)({type:i.ServiceWorkerMessageType.Playlist,url:o,playlist:u.absoluteUrlsPlaylist,clientId:r}),(0,a.fromHttpResponseToFetchResponse)(e)}))},y=function(e){var t=(0,l.stripPlayerIdFormUrl)(e.url),r=t[0],n=t[1],s=new Headers(e.headers);return s.delete("x-playback-session-id"),[n,new Request(r,{credentials:f[n]?"include":"omit",mode:"cors",headers:s})]};t.sendMessageToClient=function(e){self.clients.matchAll().then((function(t){t.forEach((function(t){t.postMessage(e)}))}))},t.saveQueryParameters=function(e){d.setQueryParameters(e.clientId,e.queryParameters)},t.saveWithCredentials=function(e){f[e.clientId]=e.withCredentials},t.handlePreProcessRequestFinished=function(e){var t=e.clientId,r=e.id,n=e.httpRequest;c.resolveRequest(t,r,n)},t.handlePreProcessResponseFinished=function(e){var t=e.clientId,r=e.id,n=e.httpResponse;c.resolveResponse(t,r,n)},t.onClientDisposed=function(e){c.rejectAll(e.clientId,"Client disposed"),d.reset(e.clientId),delete f[e.clientId]}}},t={};return function r(n){var s=t[n];if(void 0!==s)return s.exports;var i=t[n]={exports:{}};return e[n].call(i.exports,i,i.exports,r),i.exports}(69580)}()}));
|
|
18
18
|
})();
|