@playkit-js/playkit-js-providers 2.43.2 → 2.43.3-canary.0-c82994b

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.
@@ -1,2 +1,2 @@
1
- !function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var r=t();for(var n in r)("object"==typeof exports?exports:e)[n]=r[n]}}(self,(function(){return function(){"use strict";var e={d:function(t,r){for(var n in r)e.o(r,n)&&!e.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:r[n]})},o:function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r:function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},t={};function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function n(e){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(e)}function o(e){var t=function(e,t){if("object"!==n(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var o=r.call(e,"string");if("object"!==n(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===n(t)?t:String(t)}function i(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,o(n.key),n)}}function s(e,t,r){return t&&i(e.prototype,t),r&&i(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e}function u(e,t,r){return(t=o(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}e.r(t),e.d(t,{NAME:function(){return S},OVPConfiguration:function(){return y},OVPStatsService:function(){return T},RequestBuilder:function(){return l},VERSION:function(){return C}});var a=function(){return{VERSION:"",DEBUG:{value:"",name:""},ERROR:{value:"",name:""},INFO:{value:"",name:""},OFF:{value:"",name:""},TIME:{value:"",name:""},TRACE:{value:"",name:""},WARN:{value:"",name:""},createDefaultHandler:function(){},debug:function(){},enabledFor:function(){},error:function(){},get:function(){},getLevel:function(){},info:function(){},log:function(){},setHandler:function(){},setLevel:function(){},time:function(){},timeEnd:function(){},trace:function(){},useDefaults:function(){},warn:function(){}}};var c=function(e){return a(e)},f=s((function e(t,n,o){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};r(this,e),this.severity=t,this.category=n,this.code=o,this.data=i,e._logger.error("Category:".concat(n," | Code:").concat(o," |"),i)}));u(f,"Severity",{RECOVERABLE:1,CRITICAL:2}),u(f,"Category",{NETWORK:1,SERVICE:2,PROVIDER:3}),u(f,"Code",{UNSUPPORTED_SCHEME:1e3,BAD_HTTP_STATUS:1001,HTTP_ERROR:1002,TIMEOUT:1003,MALFORMED_DATA_URI:1004,BAD_SERVER_RESPONSE:1005,MULTIREQUEST_API_ERROR:1006,API_RESPONSE_MISMATCH:1007,ERROR:2e3,BLOCK_ACTION:2001,MEDIA_STATUS_NOT_READY:2002,SCHEDULED_RESTRICTED:2003,MISSING_MANDATORY_PARAMS:3e3,MISSING_PLAY_SOURCE:3001,METHOD_NOT_IMPLEMENTED:3002}),u(f,"_logger",c("Error"));var l=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new Map;r(this,e),u(this,"retryConfig",{async:!0,timeout:0,maxAttempts:4}),u(this,"_attemptCounter",1),this.headers=t}return s(e,[{key:"getUrl",value:function(e){return e+"/service/"+this.service+(this.action?"/action/"+this.action:"")}},{key:"doHttpRequest",value:function(){var e=this,t=new Promise((function(t,r){e._requestPromise={resolve:t,reject:r}}));return this.url||this._requestPromise.reject(new f(f.Severity.CRITICAL,f.Category.NETWORK,f.Code.MALFORMED_DATA_URI,{url:this.url})),this._createXHR(),t}},{key:"_createXHR",value:function(){var e=this,t=new XMLHttpRequest;t.onreadystatechange=function(){if(4===t.readyState&&200===t.status)try{var r=JSON.parse(t.responseText);return e.responseHeaders=e._getResponseHeaders(t),e._requestPromise.resolve(r)}catch(r){e._requestPromise.reject(e._createError(t,f.Code.BAD_SERVER_RESPONSE,{text:t.responseText}))}},t.open(this.method,this.url,this.retryConfig.async),this.retryConfig.async&&this.retryConfig.timeout&&(t.timeout=this.retryConfig.timeout);var r=performance.now();t.ontimeout=function(){e._handleError(t,f.Code.TIMEOUT,{timeout:(performance.now()-r)/1e3,statusText:t.statusText})},t.onerror=t.onabort=function(){e._handleError(t,f.Code.HTTP_ERROR,{text:t.responseText,statusText:t.statusText})},this.headers.forEach((function(e,r){t.setRequestHeader(r,e)})),t.send(this.params)}},{key:"_getResponseHeaders",value:function(e){return e.getAllResponseHeaders().split("\n").filter((function(e){return 0===e.toLowerCase().indexOf("x-")}))}},{key:"_handleError",value:function(e,t,r){var n=this._createError(e,t,r);if(e.onreadystatechange=function(){},e.onerror=function(){},e.ontimeout=function(){},e.onabort=function(){},!(this.retryConfig.maxAttempts&&this._attemptCounter<this.retryConfig.maxAttempts))return this._requestPromise.reject(n);this._attemptCounter++,this._createXHR()}},{key:"_createError",value:function(e,t,r){return Object.assign(r,{url:this.url,headers:this._getResponseHeaders(e),attempt:this._attemptCounter}),new f(f.Severity.CRITICAL,f.Category.NETWORK,t,r)}}]),e}(),p=function e(t){var r;return Array.isArray(t)?(r=t.length>0?t.slice(0):[]).forEach((function(t,o){("object"===n(t)||Array.isArray(t)&&t.length>0)&&(r[o]=e(t))})):"object"===n(t)?(r=Object.assign({},t),Object.keys(r).forEach((function(t){("object"===n(r[t])||Array.isArray(r[t])&&r[t].length>0)&&(r[t]=e(r[t]))}))):r=t,r},h={serviceUrl:"https://cdnapisec.kaltura.com/api_v3",cdnUrl:"https://cdnapisec.kaltura.com",serviceParams:{apiVersion:"3.3.0",format:1},useApiCaptions:!0,loadThumbnailWithKs:!1,replaceHostOnlyManifestUrls:!1},y=function(){function e(){r(this,e)}return s(e,null,[{key:"set",value:function(e){null!=e&&e.overrideServiceUrl&&(e.serviceUrl=e.overrideServiceUrl),e&&Object.assign(h,e)}},{key:"get",value:function(){return p(h)}},{key:"serviceUrl",get:function(){return h.serviceUrl}}]),e}();function v(e,t){return v=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},v(e,t)}function d(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&v(e,t)}function m(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function g(e,t){if(t&&("object"===n(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return m(e)}function R(e){return R=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},R(e)}var E=s((function e(t){r(this,e),u(this,"hasError",!1),"KalturaAPIException"===t.objectType?(this.hasError=!0,this.error=new b(t.code,t.message)):t.error&&"KalturaAPIException"===t.error.objectType?(this.hasError=!0,this.error=new b(t.error.code,t.error.message)):this.data=t})),b=s((function e(t,n){r(this,e),this.code=t,this.message=n}));var O=function(e){d(i,e);var t,n,o=(t=i,n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,r=R(t);if(n){var o=R(this).constructor;e=Reflect.construct(r,arguments,o)}else e=r.apply(this,arguments);return g(this,e)});function i(){var e;r(this,i);for(var t=arguments.length,n=new Array(t),s=0;s<t;s++)n[s]=arguments[s];return u(m(e=o.call.apply(o,[this].concat(n))),"requests",[]),e}return s(i,[{key:"add",value:function(e){this.requests.push(e);var t={},r={service:e.service,action:e.action};return Object.assign(t,u({},this.requests.length,Object.assign(r,e.params))),Object.assign(t,this.params),this.params=t,this}},{key:"execute",value:function(e){var t=this;return new Promise((function(r,n){try{t.params=JSON.stringify(t.params)}catch(e){i._logger.error("".concat(e.message)),n(new f(f.Severity.CRITICAL,f.Category.PROVIDER,f.Code.FAILED_PARSING_REQUEST,{error:e,params:t.params}))}t.doHttpRequest().then((function(o){var i=new _(o,e);i.success?r({headers:t.responseHeaders,response:i}):n(new f(f.Severity.CRITICAL,f.Category.NETWORK,f.Code.MULTIREQUEST_API_ERROR,{url:t.url,headers:t.responseHeaders,results:i.results}))}),(function(e){n(e)}))}))}}]),i}(l);u(O,"_logger",c("MultiRequestBuilder"));var _=s((function e(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];r(this,e),u(this,"results",[]);var o=t.result?t.result:t,i=(Array.isArray(o)?o:[o]).map((function(e){return new E(e)})),s=i.filter((function(e){return e.hasError}));s.forEach((function(t){e._logger.error("Service returned an error with error code: ".concat(t.error.code," and message: ").concat(t.error.message,"."))})),this.results=i,n&&s.length||s.length===this.results.length?this.success=!1:(this.results=this.results.filter((function(e){return!e.hasError})),this.success=!0)}));u(_,"_logger",c("MultiRequestResult"));var T=function(e){d(u,e);var t,o,i=(t=u,o=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,r=R(t);if(o){var n=R(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return g(this,e)});function u(){return r(this,u),i.apply(this,arguments)}return s(u,null,[{key:"collect",value:function(e,t,r,o){var i=y.get(),s={};Object.assign(s,i.serviceParams,{ks:t,clientTag:"html5:v"+r},o);var u,a,c,f,p,h=new l;return h.service="stats",h.action="collect",h.method="GET",h.tag="stats-collect",h.params=s,h.url=e+"?service="+h.service+"&action="+h.action+"&"+(u=h.params,a=[],c=/\[\]$/,f=function(e){return"[object Array]"===Object.prototype.toString.call(e)},p=function(e,t){t="function"==typeof t?t():null==t?"":t,a[a.length]=encodeURIComponent(e)+"="+encodeURIComponent(t)},function e(t,r){var o,i,s;if(t)if(f(r))for(o=0,i=r.length;o<i;o++)c.test(t)?p(t,r[o]):e(t+":"+("object"===n(r[o])?o:""),r[o]);else if(r&&"[object Object]"===String(r))for(s in r)e(t+":"+s,r[s]);else p(t,r);else if(f(r))for(o=0,i=r.length;o<i;o++)p(r[o].name,r[o].value);else for(s in r)e(s,r[s]);return a}("",u).join("&").replace(/%20/g,"+")),h}}]),u}(function(){function e(){r(this,e)}return s(e,null,[{key:"getMultiRequest",value:function(e,t,r){var n=y.get(),o=n.serviceParams;Object.assign(o,{ks:t,clientTag:"html5:v"+e}),r&&Object.assign(o,{partnerId:r});var i=new Map;i.set("Content-Type","application/json");var s=new O(i);return s.method="POST",s.service="multirequest",s.url=s.getUrl(n.serviceUrl),s.params=o,s}}]),e}()),S="@playkit-js/playkit-js-providers-stats-service",C="2.43.2";return t}()}));
1
+ !function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var r=t();for(var n in r)("object"==typeof exports?exports:e)[n]=r[n]}}(self,(function(){return function(){"use strict";var e={d:function(t,r){for(var n in r)e.o(r,n)&&!e.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:r[n]})},o:function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r:function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},t={};function r(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function n(e){return n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},n(e)}function o(e){var t=function(e,t){if("object"!==n(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var o=r.call(e,"string");if("object"!==n(o))return o;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e);return"symbol"===n(t)?t:String(t)}function i(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,o(n.key),n)}}function s(e,t,r){return t&&i(e.prototype,t),r&&i(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e}function u(e,t,r){return(t=o(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}e.r(t),e.d(t,{NAME:function(){return S},OVPConfiguration:function(){return y},OVPStatsService:function(){return T},RequestBuilder:function(){return l},VERSION:function(){return C}});var a=function(){return{VERSION:"",DEBUG:{value:"",name:""},ERROR:{value:"",name:""},INFO:{value:"",name:""},OFF:{value:"",name:""},TIME:{value:"",name:""},TRACE:{value:"",name:""},WARN:{value:"",name:""},createDefaultHandler:function(){},debug:function(){},enabledFor:function(){},error:function(){},get:function(){},getLevel:function(){},info:function(){},log:function(){},setHandler:function(){},setLevel:function(){},time:function(){},timeEnd:function(){},trace:function(){},useDefaults:function(){},warn:function(){}}};var c=function(e){return a(e)},f=s((function e(t,n,o){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};r(this,e),this.severity=t,this.category=n,this.code=o,this.data=i,e._logger.error("Category:".concat(n," | Code:").concat(o," |"),i)}));u(f,"Severity",{RECOVERABLE:1,CRITICAL:2}),u(f,"Category",{NETWORK:1,SERVICE:2,PROVIDER:3}),u(f,"Code",{UNSUPPORTED_SCHEME:1e3,BAD_HTTP_STATUS:1001,HTTP_ERROR:1002,TIMEOUT:1003,MALFORMED_DATA_URI:1004,BAD_SERVER_RESPONSE:1005,MULTIREQUEST_API_ERROR:1006,API_RESPONSE_MISMATCH:1007,ERROR:2e3,BLOCK_ACTION:2001,MEDIA_STATUS_NOT_READY:2002,SCHEDULED_RESTRICTED:2003,MISSING_MANDATORY_PARAMS:3e3,MISSING_PLAY_SOURCE:3001,METHOD_NOT_IMPLEMENTED:3002}),u(f,"_logger",c("Error"));var l=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new Map;r(this,e),u(this,"retryConfig",{async:!0,timeout:0,maxAttempts:4}),u(this,"_attemptCounter",1),this.headers=t}return s(e,[{key:"getUrl",value:function(e){return e+"/service/"+this.service+(this.action?"/action/"+this.action:"")}},{key:"doHttpRequest",value:function(){var e=this,t=new Promise((function(t,r){e._requestPromise={resolve:t,reject:r}}));return this.url||this._requestPromise.reject(new f(f.Severity.CRITICAL,f.Category.NETWORK,f.Code.MALFORMED_DATA_URI,{url:this.url})),this._createXHR(),t}},{key:"_createXHR",value:function(){var e=this,t=new XMLHttpRequest;t.onreadystatechange=function(){if(4===t.readyState&&200===t.status)try{var r=JSON.parse(t.responseText);return e.responseHeaders=e._getResponseHeaders(t),e._requestPromise.resolve(r)}catch(r){e._requestPromise.reject(e._createError(t,f.Code.BAD_SERVER_RESPONSE,{text:t.responseText}))}},t.open(this.method,this.url,this.retryConfig.async),this.retryConfig.async&&this.retryConfig.timeout&&(t.timeout=this.retryConfig.timeout);var r=performance.now();t.ontimeout=function(){e._handleError(t,f.Code.TIMEOUT,{timeout:(performance.now()-r)/1e3,statusText:t.statusText})},t.onerror=t.onabort=function(){e._handleError(t,f.Code.HTTP_ERROR,{text:t.responseText,statusText:t.statusText})},this.headers.forEach((function(e,r){t.setRequestHeader(r,e)})),t.send(this.params)}},{key:"_getResponseHeaders",value:function(e){return e.getAllResponseHeaders().split("\n").filter((function(e){return 0===e.toLowerCase().indexOf("x-")}))}},{key:"_handleError",value:function(e,t,r){var n=this._createError(e,t,r);if(e.onreadystatechange=function(){},e.onerror=function(){},e.ontimeout=function(){},e.onabort=function(){},!(this.retryConfig.maxAttempts&&this._attemptCounter<this.retryConfig.maxAttempts))return this._requestPromise.reject(n);this._attemptCounter++,this._createXHR()}},{key:"_createError",value:function(e,t,r){return Object.assign(r,{url:this.url,headers:this._getResponseHeaders(e),attempt:this._attemptCounter}),new f(f.Severity.CRITICAL,f.Category.NETWORK,t,r)}}]),e}(),p=function e(t){var r;return Array.isArray(t)?(r=t.length>0?t.slice(0):[]).forEach((function(t,o){("object"===n(t)||Array.isArray(t)&&t.length>0)&&(r[o]=e(t))})):"object"===n(t)?(r=Object.assign({},t),Object.keys(r).forEach((function(t){("object"===n(r[t])||Array.isArray(r[t])&&r[t].length>0)&&(r[t]=e(r[t]))}))):r=t,r},h={serviceUrl:"https://cdnapisec.kaltura.com/api_v3",cdnUrl:"https://cdnapisec.kaltura.com",serviceParams:{apiVersion:"3.3.0",format:1},useApiCaptions:!0,loadThumbnailWithKs:!1,replaceHostOnlyManifestUrls:!1},y=function(){function e(){r(this,e)}return s(e,null,[{key:"set",value:function(e){null!=e&&e.overrideServiceUrl&&(e.serviceUrl=e.overrideServiceUrl),e&&Object.assign(h,e)}},{key:"get",value:function(){return p(h)}},{key:"serviceUrl",get:function(){return h.serviceUrl}}]),e}();function v(e,t){return v=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},v(e,t)}function d(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&v(e,t)}function m(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function g(e,t){if(t&&("object"===n(t)||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return m(e)}function R(e){return R=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},R(e)}var E=s((function e(t){r(this,e),u(this,"hasError",!1),"KalturaAPIException"===t.objectType?(this.hasError=!0,this.error=new b(t.code,t.message)):t.error&&"KalturaAPIException"===t.error.objectType?(this.hasError=!0,this.error=new b(t.error.code,t.error.message)):this.data=t})),b=s((function e(t,n){r(this,e),this.code=t,this.message=n}));var O=function(e){d(i,e);var t,n,o=(t=i,n=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,r=R(t);if(n){var o=R(this).constructor;e=Reflect.construct(r,arguments,o)}else e=r.apply(this,arguments);return g(this,e)});function i(){var e;r(this,i);for(var t=arguments.length,n=new Array(t),s=0;s<t;s++)n[s]=arguments[s];return u(m(e=o.call.apply(o,[this].concat(n))),"requests",[]),e}return s(i,[{key:"add",value:function(e){this.requests.push(e);var t={},r={service:e.service,action:e.action};return Object.assign(t,u({},this.requests.length,Object.assign(r,e.params))),Object.assign(t,this.params),this.params=t,this}},{key:"execute",value:function(e){var t=this;return new Promise((function(r,n){try{t.params=JSON.stringify(t.params)}catch(e){i._logger.error("".concat(e.message)),n(new f(f.Severity.CRITICAL,f.Category.PROVIDER,f.Code.FAILED_PARSING_REQUEST,{error:e,params:t.params}))}t.doHttpRequest().then((function(o){var i=new _(o,e);i.success?r({headers:t.responseHeaders,response:i}):n(new f(f.Severity.CRITICAL,f.Category.NETWORK,f.Code.MULTIREQUEST_API_ERROR,{url:t.url,headers:t.responseHeaders,results:i.results}))}),(function(e){n(e)}))}))}}]),i}(l);u(O,"_logger",c("MultiRequestBuilder"));var _=s((function e(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];r(this,e),u(this,"results",[]);var o=t.result?t.result:t,i=(Array.isArray(o)?o:[o]).map((function(e){return new E(e)})),s=i.filter((function(e){return e.hasError}));s.forEach((function(t){e._logger.error("Service returned an error with error code: ".concat(t.error.code," and message: ").concat(t.error.message,"."))})),this.results=i,n&&s.length||s.length===this.results.length?this.success=!1:(this.results=this.results.filter((function(e){return!e.hasError})),this.success=!0)}));u(_,"_logger",c("MultiRequestResult"));var T=function(e){d(u,e);var t,o,i=(t=u,o=function(){if("undefined"==typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"==typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}(),function(){var e,r=R(t);if(o){var n=R(this).constructor;e=Reflect.construct(r,arguments,n)}else e=r.apply(this,arguments);return g(this,e)});function u(){return r(this,u),i.apply(this,arguments)}return s(u,null,[{key:"collect",value:function(e,t,r,o){var i=y.get(),s={};Object.assign(s,i.serviceParams,{ks:t,clientTag:"html5:v"+r},o);var u,a,c,f,p,h=new l;return h.service="stats",h.action="collect",h.method="GET",h.tag="stats-collect",h.params=s,h.url=e+"?service="+h.service+"&action="+h.action+"&"+(u=h.params,a=[],c=/\[\]$/,f=function(e){return"[object Array]"===Object.prototype.toString.call(e)},p=function(e,t){t="function"==typeof t?t():null==t?"":t,a[a.length]=encodeURIComponent(e)+"="+encodeURIComponent(t)},function e(t,r){var o,i,s;if(t)if(f(r))for(o=0,i=r.length;o<i;o++)c.test(t)?p(t,r[o]):e(t+":"+("object"===n(r[o])?o:""),r[o]);else if(r&&"[object Object]"===String(r))for(s in r)e(t+":"+s,r[s]);else p(t,r);else if(f(r))for(o=0,i=r.length;o<i;o++)p(r[o].name,r[o].value);else for(s in r)e(s,r[s]);return a}("",u).join("&").replace(/%20/g,"+")),h}}]),u}(function(){function e(){r(this,e)}return s(e,null,[{key:"getMultiRequest",value:function(e,t,r){var n=y.get(),o=n.serviceParams;Object.assign(o,{ks:t,clientTag:"html5:v"+e}),r&&Object.assign(o,{partnerId:r});var i=new Map;i.set("Content-Type","application/json");var s=new O(i);return s.method="POST",s.service="multirequest",s.url=s.getUrl(n.serviceUrl),s.params=o,s}}]),e}()),S="@playkit-js/playkit-js-providers-stats-service",C="2.43.3-canary.0-c82994b";return t}()}));
2
2
  //# sourceMappingURL=playkit-stats-service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"playkit-stats-service.js","mappings":"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","sources":["webpack://@playkit-js/playkit-js-providers/webpack/universalModuleDefinition","webpack://@playkit-js/playkit-js-providers/webpack/bootstrap","webpack://@playkit-js/playkit-js-providers/webpack/runtime/define property getters","webpack://@playkit-js/playkit-js-providers/webpack/runtime/hasOwnProperty shorthand","webpack://@playkit-js/playkit-js-providers/webpack/runtime/make namespace object","webpack://@playkit-js/playkit-js-providers/./node_modules/@babel/runtime/helpers/esm/classCallCheck.js","webpack://@playkit-js/playkit-js-providers/./node_modules/@babel/runtime/helpers/esm/typeof.js","webpack://@playkit-js/playkit-js-providers/./node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","webpack://@playkit-js/playkit-js-providers/./node_modules/@babel/runtime/helpers/esm/toPrimitive.js","webpack://@playkit-js/playkit-js-providers/./node_modules/@babel/runtime/helpers/esm/createClass.js","webpack://@playkit-js/playkit-js-providers/./node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack://@playkit-js/playkit-js-providers/./src/util/logger.ts","webpack://@playkit-js/playkit-js-providers/./src/util/error/error.ts","webpack://@playkit-js/playkit-js-providers/./src/util/error/severity.ts","webpack://@playkit-js/playkit-js-providers/./src/util/error/category.ts","webpack://@playkit-js/playkit-js-providers/./src/util/error/code.ts","webpack://@playkit-js/playkit-js-providers/./src/util/request-builder.ts","webpack://@playkit-js/playkit-js-providers/./src/util/clone.ts","webpack://@playkit-js/playkit-js-providers/./src/k-provider/ovp/config.ts","webpack://@playkit-js/playkit-js-providers/./node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","webpack://@playkit-js/playkit-js-providers/./node_modules/@babel/runtime/helpers/esm/inherits.js","webpack://@playkit-js/playkit-js-providers/./node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","webpack://@playkit-js/playkit-js-providers/./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js","webpack://@playkit-js/playkit-js-providers/./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js","webpack://@playkit-js/playkit-js-providers/./src/k-provider/common/base-service-result.ts","webpack://@playkit-js/playkit-js-providers/./src/k-provider/common/multi-request-builder.ts","webpack://@playkit-js/playkit-js-providers/./src/k-provider/ovp/services/stats/stats-service.ts","webpack://@playkit-js/playkit-js-providers/./src/util/param.ts","webpack://@playkit-js/playkit-js-providers/./src/k-provider/ovp/services/ovp-service.ts","webpack://@playkit-js/playkit-js-providers/./src/k-provider/ovp/services/stats/index.ts"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse {\n\t\tvar a = factory();\n\t\tfor(var i in a) (typeof exports === 'object' ? exports : root)[i] = a[i];\n\t}\n})(self, function() {\nreturn ","// The require scope\nvar __webpack_require__ = {};\n\n","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","export default function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}","import _typeof from \"./typeof.js\";\nexport default function _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);\n }\n}\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","export type LogLevelObject = {value: number, name: string};\nexport type LogLevelType = {[level: string]: LogLevelObject};\nexport type loggerFunctionType = {\n VERSION: string,\n DEBUG: LogLevelObject,\n ERROR: LogLevelObject,\n INFO: LogLevelObject,\n OFF: LogLevelObject,\n TIME: LogLevelObject,\n TRACE: LogLevelObject,\n WARN: LogLevelObject,\n createDefaultHandler: () => any\n debug: () => any\n enabledFor: () => any\n error: () => any\n get: () => any\n getLevel: () => any\n info: () => any\n log: () => any\n setHandler: () => any\n setLevel: () => any\n time: () => any\n timeEnd: () => any\n trace: () => any\n useDefaults: () => any\n warn: () => any\n};\n\ntype LoggerType = {\n getLogger: loggerFunctionType,\n LogLevel: LogLevelType\n};\n\nconst JsLogger = {\n get: (): any => ({\n VERSION: '',\n DEBUG: {value: '', name: ''},\n ERROR: {value: '', name: ''},\n INFO: {value: '', name: ''},\n OFF: {value: '', name: ''},\n TIME: {value: '', name: ''},\n TRACE: {value: '', name: ''},\n WARN: {value: '', name: ''},\n createDefaultHandler: (): any => {},\n debug: (): any => {},\n enabledFor: (): any => {},\n error: (): any => {},\n get: (): any => {},\n getLevel: (): any => {},\n info: (): any => {},\n log: (): any => {},\n setHandler: (): any => {},\n setLevel: (): any => {},\n time: (): any => {},\n timeEnd: (): any => {},\n trace: (): any => {},\n useDefaults: (): any => {},\n warn: (): any => {}\n })\n};\n\nlet LogLevel: LogLevelType = {};\n/**\n * set logger\n * @param {LoggerType} logger - the logger\n * @returns {void}\n */\nfunction setLogger(logger?: LoggerType): void {\n if (logger && typeof logger.getLogger === 'function') {\n JsLogger.get = logger.getLogger;\n }\n if (logger && logger.LogLevel) {\n LogLevel = logger.LogLevel;\n }\n}\n\n/**\n * get a logger\n * @param {?string} name - the logger name\n * @returns {Object} - the logger class\n */\nfunction getLogger(name?: string): any {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n //@ts-ignore\n return JsLogger.get(name);\n}\n\n/**\n * get the log level\n * @param {?string} name - the logger name\n * @returns {LogLevelObject} - the log level\n */\nfunction getLogLevel(name?: string): LogLevelObject {\n return getLogger(name).getLevel();\n}\n\n/**\n * sets the logger level\n * @param {LogLevelObject} level - the log level\n * @param {?string} name - the logger name\n * @returns {void}\n */\nfunction setLogLevel(level: LogLevelObject, name?: string): void {\n getLogger(name).setLevel(level);\n}\n\nexport default getLogger;\nexport {getLogLevel, setLogLevel, setLogger, LogLevel, LoggerType};\n","import getLogger from '../logger';\nimport {Severity} from './severity';\nimport type {SeverityType} from './severity';\nimport {Code} from './code';\nimport type {CodeType} from './code';\nimport {Category} from './category';\nimport type {CategoryType} from './category';\n\nconst CLASS_NAME: string = 'Error';\n\n/**\n * @classdesc This is a description of the error class.\n */\nexport default class Error {\n public severity: number;\n public category: number;\n public code: number;\n public data: any;\n /**\n * @enum {number}\n */\n public static Severity: SeverityType = Severity;\n /**\n * @enum {number}\n */\n public static Category: CategoryType = Category;\n /**\n * @enum {number}\n */\n public static Code: CodeType = Code;\n private static _logger: any = getLogger(CLASS_NAME);\n\n /**\n * @constructor\n * @param {number} severity - error's severity\n * @param {number} category - error's category.\n * @param {number} code - error's code.\n * @param {any} data - additional data for the error.\n */\n constructor(severity: number, category: number, code: number, data: any = {}) {\n this.severity = severity;\n this.category = category;\n this.code = code;\n this.data = data;\n Error._logger.error(`Category:${category} | Code:${code} |`, data);\n }\n}\n","type SeverityType = {[severity: string]: number};\n\nconst Severity: SeverityType = {\n /**\n * An error occurred, but the Player is attempting to recover from the error.\n *\n * If the Player cannot ultimately recover, it still may not throw a CRITICAL\n * error. For example, retrying for a media segment will never result in\n * a CRITICAL error (the Player will just retry forever).\n */\n RECOVERABLE: 1,\n /**\n * A critical error that the library cannot recover from. These usually cause\n * the Player to stop loading or updating. A new manifest must be loaded\n * to reset the library.\n */\n CRITICAL: 2\n};\n\nexport {Severity};\nexport type {SeverityType};\n","type CategoryType = {[category: string]: number};\n\nconst Category: CategoryType = {\n /** Errors from the network stack. */\n NETWORK: 1,\n SERVICE: 2,\n PROVIDER: 3\n};\n\nexport {Category};\nexport type {CategoryType};\n","type CodeType = {[code: string]: number};\n\nconst Code: CodeType = {\n /**\n * A network request was made using an unsupported URI scheme.\n */\n UNSUPPORTED_SCHEME: 1000,\n\n /**\n * An HTTP network request returned an HTTP status that indicated a failure.\n */\n BAD_HTTP_STATUS: 1001,\n\n /**\n * An HTTP network request failed with an error, but not from the server.\n */\n HTTP_ERROR: 1002,\n\n /**\n * A network request timed out.\n */\n TIMEOUT: 1003,\n\n /**\n * A network request was made with a malformed data URI.\n */\n MALFORMED_DATA_URI: 1004,\n\n /**\n * The server responsded with 2xx response, but it couldn't be parsed\n */\n BAD_SERVER_RESPONSE: 1005,\n\n /**\n * The server response had a valid structure but contained an error from the API\n */\n MULTIREQUEST_API_ERROR: 1006,\n\n /**\n * The server response had a valid structure and valid API result, but it did not match the request\n */\n API_RESPONSE_MISMATCH: 1007,\n\n /**\n * The server responded with an error\n */\n ERROR: 2000,\n\n /**\n * The server responded with a block action\n */\n BLOCK_ACTION: 2001,\n\n /**\n * The server responded with status import or pre convert\n */\n MEDIA_STATUS_NOT_READY: 2002,\n\n /**\n * The server responded with a scheduled restricted code\n */\n SCHEDULED_RESTRICTED: 2003,\n\n /**\n * The provider is missing mandatory parameter/s\n */\n\n MISSING_MANDATORY_PARAMS: 3000,\n\n /**\n * The server responded with empty sources objects (for HLS, Dash and progressive)\n */\n MISSING_PLAY_SOURCE: 3001,\n\n /**\n * The provider doesn't implement the called api\n */\n METHOD_NOT_IMPLEMENTED: 3002\n};\n\nexport {Code};\nexport type {CodeType};\n","import Error from './error/error';\nimport {ProviderNetworkRetryParameters} from '../types';\n\nconst KALTURA_HEADER_PREFIX: string = 'x-';\n\nexport default class RequestBuilder {\n /**\n * @member - Service name\n * @type {string}\n */\n public service!: string;\n /**\n * @member - Service action\n * @type {string}\n */\n public action!: string;\n /**\n * @member - Service params\n * @type {any}\n */\n public params: any;\n /**\n * @memberof - Service headers\n * @type {Map<string, string>}\n */\n public headers: Map<string, string>;\n /**\n * @memberof - Service URL\n * @type {string}\n */\n public url!: string;\n /**\n * @memberof - Service method (POST,GET,DELETE etc..)\n * @type {string}\n */\n public method!: string;\n /**\n * @memberof - Service tag\n * @type {string}\n */\n public tag!: string;\n /**\n * @memberof - the response headers of the arra\n * @type {Array<string>}\n */\n public responseHeaders!: Array<string>;\n /**\n * @description network retry configuration\n * @memberof RequestBuilder\n * @type {ProviderNetworkRetryParameters}\n */\n public retryConfig: ProviderNetworkRetryParameters = {\n async: true,\n timeout: 0,\n maxAttempts: 4\n };\n\n /**\n * @description number of xhr attempts for the same multi - request.\n * @memberof RequestBuilder\n * @type {number}\n * @private\n */\n private _attemptCounter: number = 1;\n\n /**\n * @description hold the promise result of the XHR request(s) - if all tries fails, it rejects with the error.\n * @memberof RequestBuilder\n * @type {Object}\n * @private\n */\n private _requestPromise: any;\n\n /**\n * @constructor\n * @param {Map<string, string>} headers The request headers\n */\n constructor(headers: Map<string, string> = new Map()) {\n this.headers = headers;\n }\n\n /**\n * Builds restful service URL\n * @function getUrl\n * @param {string} serviceUrl - The service base URL\n * @returns {string} The service URL\n */\n public getUrl(serviceUrl: string): string {\n return serviceUrl + '/service/' + this.service + (this.action ? '/action/' + this.action : '');\n }\n\n /**\n * Executes service\n * @function doHttpRequest\n * @returns {Promise.<any>} Service response as promise\n */\n public doHttpRequest(): Promise<any> {\n const promise = new Promise((resolve, reject) => {\n this._requestPromise = {\n resolve,\n reject\n };\n });\n if (!this.url) {\n this._requestPromise.reject(\n new Error(Error.Severity.CRITICAL, Error.Category.NETWORK, Error.Code.MALFORMED_DATA_URI, {\n url: this.url\n })\n );\n }\n this._createXHR();\n return promise;\n }\n\n private _createXHR(): void {\n const request = new XMLHttpRequest();\n request.onreadystatechange = (): void => {\n if (request.readyState === 4) {\n if (request.status === 200) {\n try {\n const response = JSON.parse(request.responseText);\n this.responseHeaders = this._getResponseHeaders(request);\n // the promise returns the response for backwards compatibility\n return this._requestPromise.resolve(response);\n } catch (error) {\n this._requestPromise.reject(\n this._createError(request, Error.Code.BAD_SERVER_RESPONSE, {\n text: request.responseText\n })\n );\n }\n }\n }\n };\n request.open(this.method, this.url, this.retryConfig.async);\n if (this.retryConfig.async && this.retryConfig.timeout) {\n request.timeout = this.retryConfig.timeout;\n }\n const requestTime = performance.now();\n request.ontimeout = (): void => {\n this._handleError(request, Error.Code.TIMEOUT, {\n timeout: (performance.now() - requestTime) / 1000,\n statusText: request.statusText\n });\n };\n request.onerror = request.onabort = (): void => {\n this._handleError(request, Error.Code.HTTP_ERROR, {\n text: request.responseText,\n statusText: request.statusText\n });\n };\n this.headers.forEach((value, key) => {\n request.setRequestHeader(key, value);\n });\n request.send(this.params);\n }\n\n private _getResponseHeaders(request: XMLHttpRequest): Array<string> {\n return request\n .getAllResponseHeaders()\n .split('\\n')\n .filter(header => header.toLowerCase().indexOf(KALTURA_HEADER_PREFIX) === 0);\n }\n\n private _handleError(request: XMLHttpRequest, code: number, data: any): Promise<void> | void {\n const error = this._createError(request, code, data);\n request.onreadystatechange = function (): void {};\n request.onerror = function (): void {};\n request.ontimeout = function (): void {};\n request.onabort = function (): void {};\n if (this.retryConfig.maxAttempts && this._attemptCounter < this.retryConfig.maxAttempts) {\n this._attemptCounter++;\n this._createXHR();\n } else {\n return this._requestPromise.reject(error);\n }\n }\n\n private _createError(request: XMLHttpRequest, code: number, data: any): Error {\n Object.assign(data, {\n url: this.url,\n headers: this._getResponseHeaders(request),\n attempt: this._attemptCounter\n });\n return new Error(Error.Severity.CRITICAL, Error.Category.NETWORK, code, data);\n }\n}\n","const clone = (data): any => {\n let node;\n if (Array.isArray(data)) {\n node = data.length > 0 ? data.slice(0) : [];\n node.forEach((e, i) => {\n if ((typeof e === 'object') || (Array.isArray(e) && e.length > 0)) {\n node[i] = clone(e);\n }\n });\n } else if (typeof data === 'object') {\n node = Object.assign({}, data);\n Object.keys(node).forEach(key => {\n if ((typeof node[key] === 'object') || (Array.isArray(node[key]) && node[key].length > 0)) {\n node[key] = clone(node[key]);\n }\n });\n } else {\n node = data;\n }\n return node;\n};\n\nexport {clone};\n","import {clone} from '../../util/clone';\nimport {ProviderEnvConfigObject} from '../../types';\n\nconst defaultConfig: any = {\n serviceUrl: 'https://cdnapisec.kaltura.com/api_v3',\n cdnUrl: 'https://cdnapisec.kaltura.com',\n serviceParams: {\n apiVersion: '3.3.0',\n format: 1\n },\n useApiCaptions: true,\n loadThumbnailWithKs: false,\n replaceHostOnlyManifestUrls: false\n};\n\nexport default class OVPConfiguration {\n public static set(clientConfig?: ProviderEnvConfigObject): void {\n if(clientConfig?.overrideServiceUrl) {\n clientConfig.serviceUrl = clientConfig.overrideServiceUrl;\n }\n if (clientConfig) {\n Object.assign(defaultConfig, clientConfig);\n }\n }\n\n public static get(): any {\n return clone(defaultConfig);\n }\n\n public static get serviceUrl(): string {\n return defaultConfig.serviceUrl;\n }\n}\n\nexport {OVPConfiguration};\n","export default function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n}","import setPrototypeOf from \"./setPrototypeOf.js\";\nexport default function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n Object.defineProperty(subClass, \"prototype\", {\n writable: false\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}","export default function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n}","import _typeof from \"./typeof.js\";\nimport assertThisInitialized from \"./assertThisInitialized.js\";\nexport default function _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n return assertThisInitialized(self);\n}","export default function _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}","export default class ServiceResult {\n /**\n * @member - Is service returned an error\n * @type {boolean}\n */\n public hasError: boolean = false;\n /**\n * @member - The service error\n * @type {ServiceError}\n */\n public error!: ServiceError;\n /**\n * @member - The service result data\n * @type {Object}\n */\n public data: any;\n\n /**\n * @constructor\n * @param {Object} response - Service response\n */\n constructor(response: any) {\n if (response.objectType === 'KalturaAPIException') {\n this.hasError = true;\n this.error = new ServiceError(response.code, response.message);\n } else if (response.error && response.error.objectType === 'KalturaAPIException') {\n this.hasError = true;\n this.error = new ServiceError(response.error.code, response.error.message);\n } else {\n this.data = response;\n }\n }\n}\n\nclass ServiceError {\n /**\n * @member - The error code\n * @type {string}\n */\n public code: string;\n /**\n * @member - The error message\n * @type {string}\n */\n public message: string;\n\n /**\n * @constructor\n * @param {string} code - The result code\n * @param {string} message - The result message\n */\n constructor(code: string, message: string) {\n this.code = code;\n this.message = message;\n }\n}\n","import RequestBuilder from '../../util/request-builder';\nimport getLogger from '../../util/logger';\nimport ServiceResult from './base-service-result';\nimport Error from '../../util/error/error';\n\nexport default class MultiRequestBuilder extends RequestBuilder {\n private static _logger = getLogger('MultiRequestBuilder');\n /**\n * @memberof - MultiRequestBuilder\n * @type {Array<RequestBuilder>}\n */\n public requests: Array<RequestBuilder> = [];\n /**\n * Adds request to requests array\n * @function add\n * @param {RequestBuilder} request The request\n * @returns {MultiRequestBuilder} The multiRequest\n */\n public add(request: RequestBuilder): MultiRequestBuilder {\n this.requests.push(request);\n const requestParams = {};\n const serviceDef: any = {service: request.service, action: request.action};\n Object.assign(requestParams, {[this.requests.length]: Object.assign(serviceDef, request.params)});\n Object.assign(requestParams, this.params);\n this.params = requestParams;\n return this;\n }\n\n /**\n * Executes a multi request\n * @function execute\n * @param {boolean} requestsMustSucceed whether all of the requests must succeed or not\n * @returns {Promise} The multirequest execution promise\n */\n public execute(requestsMustSucceed?: boolean): Promise<any> {\n return new Promise((resolve, reject) => {\n try {\n this.params = JSON.stringify(this.params);\n } catch (err) {\n MultiRequestBuilder._logger.error(`${err.message}`);\n reject(\n new Error(Error.Severity.CRITICAL, Error.Category.PROVIDER, Error.Code.FAILED_PARSING_REQUEST, {\n error: err,\n params: this.params\n })\n );\n }\n this.doHttpRequest().then(\n data => {\n const multiRequestResult = new MultiRequestResult(data, requestsMustSucceed);\n if (multiRequestResult.success) {\n resolve({\n headers: this.responseHeaders,\n response: multiRequestResult\n });\n } else {\n reject(\n new Error(Error.Severity.CRITICAL, Error.Category.NETWORK, Error.Code.MULTIREQUEST_API_ERROR, {\n url: this.url,\n headers: this.responseHeaders,\n results: multiRequestResult.results\n })\n );\n }\n },\n err => {\n reject(err);\n }\n );\n });\n }\n}\n\nexport class MultiRequestResult {\n private static _logger = getLogger('MultiRequestResult');\n /**\n * @memberof MultiRequestResult\n * @type {boolean}\n */\n public success: boolean;\n /**\n * @memberof MultiRequestResult\n * @type {Object}\n */\n public results: Array<ServiceResult> = [];\n /**\n * @constructor\n * @param {Object} response data\n * @param {boolean} requestsMustSucceed whether all of the requests must succeed\n */\n constructor(response: any, requestsMustSucceed: boolean = true) {\n const result = response.result ? response.result : response;\n const responseArr = Array.isArray(result) ? result : [result];\n const results = responseArr.map(result => new ServiceResult(result));\n const errorResults = results.filter(serviceResult => serviceResult.hasError);\n\n errorResults.forEach(serviceResult => {\n MultiRequestResult._logger.error(\n `Service returned an error with error code: ${serviceResult.error.code} and message: ${serviceResult.error.message}.`\n );\n });\n\n this.results = results;\n if ((requestsMustSucceed && errorResults.length) || errorResults.length === this.results.length) {\n this.success = false;\n } else {\n this.results = this.results.filter(serviceResult => !serviceResult.hasError);\n this.success = true;\n }\n }\n}\n","import OVPService from '../ovp-service';\nimport RequestBuilder from '../../../../util/request-builder';\nimport OVPConfiguration from '../../config';\nimport {param} from '../../../../util/param';\n\nconst SERVICE_NAME: string = 'stats';\n\nexport default class OVPStatsService extends OVPService {\n /**\n * Creates an instance of RequestBuilder for stats.collect\n * @function collect\n * @param {string} serviceUrl - The service base url\n * @param {string} ks - The ks\n * @param {string} playerVersion - The player version\n * @param {Object} event - The event data\n * @returns {RequestBuilder} - The request builder\n * @static\n */\n public static collect(serviceUrl: string, ks: string, playerVersion: string, event: any): RequestBuilder {\n const ovpParams = OVPConfiguration.get();\n const serviceParams = {};\n Object.assign(serviceParams, ovpParams.serviceParams, {ks: ks, clientTag: 'html5:v' + playerVersion}, event);\n const request = new RequestBuilder();\n request.service = SERVICE_NAME;\n request.action = 'collect';\n request.method = 'GET';\n request.tag = 'stats-collect';\n request.params = serviceParams;\n request.url = serviceUrl + '?service=' + request.service + '&action=' + request.action + '&' + param(request.params);\n return request;\n }\n}\n","const param = (a): any => {\n const s: string[] = [],\n rbracket = /\\[\\]$/,\n isArray = function (obj): boolean {\n return Object.prototype.toString.call(obj) === '[object Array]';\n },\n add = function (k, v): any {\n v = typeof v === 'function' ? v() : v === null ? '' : v === undefined ? '' : v;\n s[s.length] = encodeURIComponent(k) + '=' + encodeURIComponent(v);\n },\n buildParams = function (prefix, obj): any {\n let i, len, key;\n\n if (prefix) {\n if (isArray(obj)) {\n for (i = 0, len = obj.length; i < len; i++) {\n if (rbracket.test(prefix)) {\n add(prefix, obj[i]);\n } else {\n buildParams(prefix + ':' + (typeof obj[i] === 'object' ? i : ''), obj[i]);\n }\n }\n } else if (obj && String(obj) === '[object Object]') {\n for (key in obj) {\n buildParams(prefix + ':' + key, obj[key]);\n }\n } else {\n add(prefix, obj);\n }\n } else if (isArray(obj)) {\n for (i = 0, len = obj.length; i < len; i++) {\n add(obj[i].name, obj[i].value);\n }\n } else {\n for (key in obj) {\n buildParams(key, obj[key]);\n }\n }\n return s;\n };\n\n return buildParams('', a).join('&').replace(/%20/g, '+');\n};\n\nexport {param};\n","import MultiRequestBuilder from '../../common/multi-request-builder';\nimport OVPConfiguration from '../config';\n\nconst SERVICE_NAME: string = 'multirequest';\n\nexport default class OVPService {\n /**\n * Gets a new instance of MultiRequestBuilder with ovp params\n * @function getMultiRequest\n * @param {string} playerVersion The player version\n * @param {string} ks The ks\n * @param {string} partnerId The partner ID\n * @returns {MultiRequestBuilder} The multi request builder\n * @static\n */\n public static getMultiRequest(playerVersion: string, ks: string, partnerId?: number): MultiRequestBuilder {\n const config = OVPConfiguration.get();\n const ovpParams = config.serviceParams;\n Object.assign(ovpParams, {ks: ks, clientTag: 'html5:v' + playerVersion});\n if (partnerId) {\n Object.assign(ovpParams, {partnerId: partnerId});\n }\n const headers: Map<string, string> = new Map();\n headers.set('Content-Type', 'application/json');\n const multiReq = new MultiRequestBuilder(headers);\n multiReq.method = 'POST';\n multiReq.service = SERVICE_NAME;\n multiReq.url = multiReq.getUrl(config.serviceUrl);\n multiReq.params = ovpParams;\n return multiReq;\n }\n}\n","import RequestBuilder from '../../../../util/request-builder';\nimport OVPConfiguration from '../../config';\nimport OVPStatsService from './stats-service';\n\ndeclare let __VERSION__: string;\ndeclare let __NAME__: string;\n\nconst NAME = __NAME__ + '-stats-service';\nconst VERSION = __VERSION__;\n\nexport {OVPStatsService, OVPConfiguration, RequestBuilder, NAME, VERSION};\n"],"names":["root","factory","exports","module","define","amd","a","i","self","__webpack_require__","definition","key","o","Object","defineProperty","enumerable","get","obj","prop","prototype","hasOwnProperty","call","Symbol","toStringTag","value","_classCallCheck","instance","Constructor","TypeError","_typeof","iterator","constructor","_toPropertyKey","arg","input","hint","prim","toPrimitive","undefined","res","String","_defineProperties","target","props","length","descriptor","configurable","writable","_createClass","protoProps","staticProps","_defineProperty","JsLogger","VERSION","DEBUG","name","ERROR","INFO","OFF","TIME","TRACE","WARN","createDefaultHandler","debug","enabledFor","error","getLevel","info","log","setHandler","setLevel","time","timeEnd","trace","useDefaults","warn","Error","severity","category","code","data","arguments","this","_logger","concat","RECOVERABLE","CRITICAL","NETWORK","SERVICE","PROVIDER","UNSUPPORTED_SCHEME","BAD_HTTP_STATUS","HTTP_ERROR","TIMEOUT","MALFORMED_DATA_URI","BAD_SERVER_RESPONSE","MULTIREQUEST_API_ERROR","API_RESPONSE_MISMATCH","BLOCK_ACTION","MEDIA_STATUS_NOT_READY","SCHEDULED_RESTRICTED","MISSING_MANDATORY_PARAMS","MISSING_PLAY_SOURCE","METHOD_NOT_IMPLEMENTED","getLogger","RequestBuilder","headers","Map","async","timeout","maxAttempts","serviceUrl","service","action","_this","promise","Promise","resolve","reject","_requestPromise","url","Severity","Category","Code","_createXHR","_this2","request","XMLHttpRequest","onreadystatechange","readyState","status","response","JSON","parse","responseText","responseHeaders","_getResponseHeaders","_createError","text","open","method","retryConfig","requestTime","performance","now","ontimeout","_handleError","statusText","onerror","onabort","forEach","setRequestHeader","send","params","getAllResponseHeaders","split","filter","header","toLowerCase","indexOf","_attemptCounter","assign","attempt","clone","node","Array","isArray","slice","e","keys","defaultConfig","cdnUrl","serviceParams","apiVersion","format","useApiCaptions","loadThumbnailWithKs","replaceHostOnlyManifestUrls","OVPConfiguration","clientConfig","overrideServiceUrl","_setPrototypeOf","p","setPrototypeOf","bind","__proto__","_inherits","subClass","superClass","create","_assertThisInitialized","ReferenceError","_possibleConstructorReturn","_getPrototypeOf","getPrototypeOf","ServiceResult","objectType","hasError","ServiceError","message","MultiRequestBuilder","_RequestBuilder","_super","_len","args","_key","apply","requests","push","requestParams","serviceDef","requestsMustSucceed","stringify","err","FAILED_PARSING_REQUEST","doHttpRequest","then","multiRequestResult","MultiRequestResult","success","results","result","map","errorResults","serviceResult","OVPStatsService","_OVPService","ks","playerVersion","event","ovpParams","clientTag","s","rbracket","add","tag","toString","k","v","encodeURIComponent","buildParams","prefix","len","test","join","replace","OVPService","partnerId","config","set","multiReq","getUrl","NAME","__NAME__","__VERSION__"],"sourceRoot":""}
1
+ {"version":3,"file":"playkit-stats-service.js","mappings":"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","sources":["webpack://@playkit-js/playkit-js-providers/webpack/universalModuleDefinition","webpack://@playkit-js/playkit-js-providers/webpack/bootstrap","webpack://@playkit-js/playkit-js-providers/webpack/runtime/define property getters","webpack://@playkit-js/playkit-js-providers/webpack/runtime/hasOwnProperty shorthand","webpack://@playkit-js/playkit-js-providers/webpack/runtime/make namespace object","webpack://@playkit-js/playkit-js-providers/./node_modules/@babel/runtime/helpers/esm/classCallCheck.js","webpack://@playkit-js/playkit-js-providers/./node_modules/@babel/runtime/helpers/esm/typeof.js","webpack://@playkit-js/playkit-js-providers/./node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","webpack://@playkit-js/playkit-js-providers/./node_modules/@babel/runtime/helpers/esm/toPrimitive.js","webpack://@playkit-js/playkit-js-providers/./node_modules/@babel/runtime/helpers/esm/createClass.js","webpack://@playkit-js/playkit-js-providers/./node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack://@playkit-js/playkit-js-providers/./src/util/logger.ts","webpack://@playkit-js/playkit-js-providers/./src/util/error/error.ts","webpack://@playkit-js/playkit-js-providers/./src/util/error/severity.ts","webpack://@playkit-js/playkit-js-providers/./src/util/error/category.ts","webpack://@playkit-js/playkit-js-providers/./src/util/error/code.ts","webpack://@playkit-js/playkit-js-providers/./src/util/request-builder.ts","webpack://@playkit-js/playkit-js-providers/./src/util/clone.ts","webpack://@playkit-js/playkit-js-providers/./src/k-provider/ovp/config.ts","webpack://@playkit-js/playkit-js-providers/./node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","webpack://@playkit-js/playkit-js-providers/./node_modules/@babel/runtime/helpers/esm/inherits.js","webpack://@playkit-js/playkit-js-providers/./node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","webpack://@playkit-js/playkit-js-providers/./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js","webpack://@playkit-js/playkit-js-providers/./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js","webpack://@playkit-js/playkit-js-providers/./src/k-provider/common/base-service-result.ts","webpack://@playkit-js/playkit-js-providers/./src/k-provider/common/multi-request-builder.ts","webpack://@playkit-js/playkit-js-providers/./src/k-provider/ovp/services/stats/stats-service.ts","webpack://@playkit-js/playkit-js-providers/./src/util/param.ts","webpack://@playkit-js/playkit-js-providers/./src/k-provider/ovp/services/ovp-service.ts","webpack://@playkit-js/playkit-js-providers/./src/k-provider/ovp/services/stats/index.ts"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse {\n\t\tvar a = factory();\n\t\tfor(var i in a) (typeof exports === 'object' ? exports : root)[i] = a[i];\n\t}\n})(self, function() {\nreturn ","// The require scope\nvar __webpack_require__ = {};\n\n","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","export default function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, _typeof(o);\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}","import _typeof from \"./typeof.js\";\nexport default function _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);\n }\n}\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","export type LogLevelObject = {value: number, name: string};\nexport type LogLevelType = {[level: string]: LogLevelObject};\nexport type loggerFunctionType = {\n VERSION: string,\n DEBUG: LogLevelObject,\n ERROR: LogLevelObject,\n INFO: LogLevelObject,\n OFF: LogLevelObject,\n TIME: LogLevelObject,\n TRACE: LogLevelObject,\n WARN: LogLevelObject,\n createDefaultHandler: () => any\n debug: () => any\n enabledFor: () => any\n error: () => any\n get: () => any\n getLevel: () => any\n info: () => any\n log: () => any\n setHandler: () => any\n setLevel: () => any\n time: () => any\n timeEnd: () => any\n trace: () => any\n useDefaults: () => any\n warn: () => any\n};\n\ntype LoggerType = {\n getLogger: loggerFunctionType,\n LogLevel: LogLevelType\n};\n\nconst JsLogger = {\n get: (): any => ({\n VERSION: '',\n DEBUG: {value: '', name: ''},\n ERROR: {value: '', name: ''},\n INFO: {value: '', name: ''},\n OFF: {value: '', name: ''},\n TIME: {value: '', name: ''},\n TRACE: {value: '', name: ''},\n WARN: {value: '', name: ''},\n createDefaultHandler: (): any => {},\n debug: (): any => {},\n enabledFor: (): any => {},\n error: (): any => {},\n get: (): any => {},\n getLevel: (): any => {},\n info: (): any => {},\n log: (): any => {},\n setHandler: (): any => {},\n setLevel: (): any => {},\n time: (): any => {},\n timeEnd: (): any => {},\n trace: (): any => {},\n useDefaults: (): any => {},\n warn: (): any => {}\n })\n};\n\nlet LogLevel: LogLevelType = {};\n/**\n * set logger\n * @param {LoggerType} logger - the logger\n * @returns {void}\n */\nfunction setLogger(logger?: LoggerType): void {\n if (logger && typeof logger.getLogger === 'function') {\n JsLogger.get = logger.getLogger;\n }\n if (logger && logger.LogLevel) {\n LogLevel = logger.LogLevel;\n }\n}\n\n/**\n * get a logger\n * @param {?string} name - the logger name\n * @returns {Object} - the logger class\n */\nfunction getLogger(name?: string): any {\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n //@ts-ignore\n return JsLogger.get(name);\n}\n\n/**\n * get the log level\n * @param {?string} name - the logger name\n * @returns {LogLevelObject} - the log level\n */\nfunction getLogLevel(name?: string): LogLevelObject {\n return getLogger(name).getLevel();\n}\n\n/**\n * sets the logger level\n * @param {LogLevelObject} level - the log level\n * @param {?string} name - the logger name\n * @returns {void}\n */\nfunction setLogLevel(level: LogLevelObject, name?: string): void {\n getLogger(name).setLevel(level);\n}\n\nexport default getLogger;\nexport {getLogLevel, setLogLevel, setLogger, LogLevel, LoggerType};\n","import getLogger from '../logger';\nimport {Severity} from './severity';\nimport type {SeverityType} from './severity';\nimport {Code} from './code';\nimport type {CodeType} from './code';\nimport {Category} from './category';\nimport type {CategoryType} from './category';\n\nconst CLASS_NAME: string = 'Error';\n\n/**\n * @classdesc This is a description of the error class.\n */\nexport default class Error {\n public severity: number;\n public category: number;\n public code: number;\n public data: any;\n /**\n * @enum {number}\n */\n public static Severity: SeverityType = Severity;\n /**\n * @enum {number}\n */\n public static Category: CategoryType = Category;\n /**\n * @enum {number}\n */\n public static Code: CodeType = Code;\n private static _logger: any = getLogger(CLASS_NAME);\n\n /**\n * @constructor\n * @param {number} severity - error's severity\n * @param {number} category - error's category.\n * @param {number} code - error's code.\n * @param {any} data - additional data for the error.\n */\n constructor(severity: number, category: number, code: number, data: any = {}) {\n this.severity = severity;\n this.category = category;\n this.code = code;\n this.data = data;\n Error._logger.error(`Category:${category} | Code:${code} |`, data);\n }\n}\n","type SeverityType = {[severity: string]: number};\n\nconst Severity: SeverityType = {\n /**\n * An error occurred, but the Player is attempting to recover from the error.\n *\n * If the Player cannot ultimately recover, it still may not throw a CRITICAL\n * error. For example, retrying for a media segment will never result in\n * a CRITICAL error (the Player will just retry forever).\n */\n RECOVERABLE: 1,\n /**\n * A critical error that the library cannot recover from. These usually cause\n * the Player to stop loading or updating. A new manifest must be loaded\n * to reset the library.\n */\n CRITICAL: 2\n};\n\nexport {Severity};\nexport type {SeverityType};\n","type CategoryType = {[category: string]: number};\n\nconst Category: CategoryType = {\n /** Errors from the network stack. */\n NETWORK: 1,\n SERVICE: 2,\n PROVIDER: 3\n};\n\nexport {Category};\nexport type {CategoryType};\n","type CodeType = {[code: string]: number};\n\nconst Code: CodeType = {\n /**\n * A network request was made using an unsupported URI scheme.\n */\n UNSUPPORTED_SCHEME: 1000,\n\n /**\n * An HTTP network request returned an HTTP status that indicated a failure.\n */\n BAD_HTTP_STATUS: 1001,\n\n /**\n * An HTTP network request failed with an error, but not from the server.\n */\n HTTP_ERROR: 1002,\n\n /**\n * A network request timed out.\n */\n TIMEOUT: 1003,\n\n /**\n * A network request was made with a malformed data URI.\n */\n MALFORMED_DATA_URI: 1004,\n\n /**\n * The server responsded with 2xx response, but it couldn't be parsed\n */\n BAD_SERVER_RESPONSE: 1005,\n\n /**\n * The server response had a valid structure but contained an error from the API\n */\n MULTIREQUEST_API_ERROR: 1006,\n\n /**\n * The server response had a valid structure and valid API result, but it did not match the request\n */\n API_RESPONSE_MISMATCH: 1007,\n\n /**\n * The server responded with an error\n */\n ERROR: 2000,\n\n /**\n * The server responded with a block action\n */\n BLOCK_ACTION: 2001,\n\n /**\n * The server responded with status import or pre convert\n */\n MEDIA_STATUS_NOT_READY: 2002,\n\n /**\n * The server responded with a scheduled restricted code\n */\n SCHEDULED_RESTRICTED: 2003,\n\n /**\n * The provider is missing mandatory parameter/s\n */\n\n MISSING_MANDATORY_PARAMS: 3000,\n\n /**\n * The server responded with empty sources objects (for HLS, Dash and progressive)\n */\n MISSING_PLAY_SOURCE: 3001,\n\n /**\n * The provider doesn't implement the called api\n */\n METHOD_NOT_IMPLEMENTED: 3002\n};\n\nexport {Code};\nexport type {CodeType};\n","import Error from './error/error';\nimport {ProviderNetworkRetryParameters} from '../types';\n\nconst KALTURA_HEADER_PREFIX: string = 'x-';\n\nexport default class RequestBuilder {\n /**\n * @member - Service name\n * @type {string}\n */\n public service!: string;\n /**\n * @member - Service action\n * @type {string}\n */\n public action!: string;\n /**\n * @member - Service params\n * @type {any}\n */\n public params: any;\n /**\n * @memberof - Service headers\n * @type {Map<string, string>}\n */\n public headers: Map<string, string>;\n /**\n * @memberof - Service URL\n * @type {string}\n */\n public url!: string;\n /**\n * @memberof - Service method (POST,GET,DELETE etc..)\n * @type {string}\n */\n public method!: string;\n /**\n * @memberof - Service tag\n * @type {string}\n */\n public tag!: string;\n /**\n * @memberof - the response headers of the arra\n * @type {Array<string>}\n */\n public responseHeaders!: Array<string>;\n /**\n * @description network retry configuration\n * @memberof RequestBuilder\n * @type {ProviderNetworkRetryParameters}\n */\n public retryConfig: ProviderNetworkRetryParameters = {\n async: true,\n timeout: 0,\n maxAttempts: 4\n };\n\n /**\n * @description number of xhr attempts for the same multi - request.\n * @memberof RequestBuilder\n * @type {number}\n * @private\n */\n private _attemptCounter: number = 1;\n\n /**\n * @description hold the promise result of the XHR request(s) - if all tries fails, it rejects with the error.\n * @memberof RequestBuilder\n * @type {Object}\n * @private\n */\n private _requestPromise: any;\n\n /**\n * @constructor\n * @param {Map<string, string>} headers The request headers\n */\n constructor(headers: Map<string, string> = new Map()) {\n this.headers = headers;\n }\n\n /**\n * Builds restful service URL\n * @function getUrl\n * @param {string} serviceUrl - The service base URL\n * @returns {string} The service URL\n */\n public getUrl(serviceUrl: string): string {\n return serviceUrl + '/service/' + this.service + (this.action ? '/action/' + this.action : '');\n }\n\n /**\n * Executes service\n * @function doHttpRequest\n * @returns {Promise.<any>} Service response as promise\n */\n public doHttpRequest(): Promise<any> {\n const promise = new Promise((resolve, reject) => {\n this._requestPromise = {\n resolve,\n reject\n };\n });\n if (!this.url) {\n this._requestPromise.reject(\n new Error(Error.Severity.CRITICAL, Error.Category.NETWORK, Error.Code.MALFORMED_DATA_URI, {\n url: this.url\n })\n );\n }\n this._createXHR();\n return promise;\n }\n\n private _createXHR(): void {\n const request = new XMLHttpRequest();\n request.onreadystatechange = (): void => {\n if (request.readyState === 4) {\n if (request.status === 200) {\n try {\n const response = JSON.parse(request.responseText);\n this.responseHeaders = this._getResponseHeaders(request);\n // the promise returns the response for backwards compatibility\n return this._requestPromise.resolve(response);\n } catch (error) {\n this._requestPromise.reject(\n this._createError(request, Error.Code.BAD_SERVER_RESPONSE, {\n text: request.responseText\n })\n );\n }\n }\n }\n };\n request.open(this.method, this.url, this.retryConfig.async);\n if (this.retryConfig.async && this.retryConfig.timeout) {\n request.timeout = this.retryConfig.timeout;\n }\n const requestTime = performance.now();\n request.ontimeout = (): void => {\n this._handleError(request, Error.Code.TIMEOUT, {\n timeout: (performance.now() - requestTime) / 1000,\n statusText: request.statusText\n });\n };\n request.onerror = request.onabort = (): void => {\n this._handleError(request, Error.Code.HTTP_ERROR, {\n text: request.responseText,\n statusText: request.statusText\n });\n };\n this.headers.forEach((value, key) => {\n request.setRequestHeader(key, value);\n });\n request.send(this.params);\n }\n\n private _getResponseHeaders(request: XMLHttpRequest): Array<string> {\n return request\n .getAllResponseHeaders()\n .split('\\n')\n .filter(header => header.toLowerCase().indexOf(KALTURA_HEADER_PREFIX) === 0);\n }\n\n private _handleError(request: XMLHttpRequest, code: number, data: any): Promise<void> | void {\n const error = this._createError(request, code, data);\n request.onreadystatechange = function (): void {};\n request.onerror = function (): void {};\n request.ontimeout = function (): void {};\n request.onabort = function (): void {};\n if (this.retryConfig.maxAttempts && this._attemptCounter < this.retryConfig.maxAttempts) {\n this._attemptCounter++;\n this._createXHR();\n } else {\n return this._requestPromise.reject(error);\n }\n }\n\n private _createError(request: XMLHttpRequest, code: number, data: any): Error {\n Object.assign(data, {\n url: this.url,\n headers: this._getResponseHeaders(request),\n attempt: this._attemptCounter\n });\n return new Error(Error.Severity.CRITICAL, Error.Category.NETWORK, code, data);\n }\n}\n","const clone = (data): any => {\n let node;\n if (Array.isArray(data)) {\n node = data.length > 0 ? data.slice(0) : [];\n node.forEach((e, i) => {\n if ((typeof e === 'object') || (Array.isArray(e) && e.length > 0)) {\n node[i] = clone(e);\n }\n });\n } else if (typeof data === 'object') {\n node = Object.assign({}, data);\n Object.keys(node).forEach(key => {\n if ((typeof node[key] === 'object') || (Array.isArray(node[key]) && node[key].length > 0)) {\n node[key] = clone(node[key]);\n }\n });\n } else {\n node = data;\n }\n return node;\n};\n\nexport {clone};\n","import {clone} from '../../util/clone';\nimport {ProviderEnvConfigObject} from '../../types';\n\nconst defaultConfig: any = {\n serviceUrl: 'https://cdnapisec.kaltura.com/api_v3',\n cdnUrl: 'https://cdnapisec.kaltura.com',\n serviceParams: {\n apiVersion: '3.3.0',\n format: 1\n },\n useApiCaptions: true,\n loadThumbnailWithKs: false,\n replaceHostOnlyManifestUrls: false\n};\n\nexport default class OVPConfiguration {\n public static set(clientConfig?: ProviderEnvConfigObject): void {\n if(clientConfig?.overrideServiceUrl) {\n clientConfig.serviceUrl = clientConfig.overrideServiceUrl;\n }\n if (clientConfig) {\n Object.assign(defaultConfig, clientConfig);\n }\n }\n\n public static get(): any {\n return clone(defaultConfig);\n }\n\n public static get serviceUrl(): string {\n return defaultConfig.serviceUrl;\n }\n}\n\nexport {OVPConfiguration};\n","export default function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n}","import setPrototypeOf from \"./setPrototypeOf.js\";\nexport default function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n Object.defineProperty(subClass, \"prototype\", {\n writable: false\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}","export default function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n}","import _typeof from \"./typeof.js\";\nimport assertThisInitialized from \"./assertThisInitialized.js\";\nexport default function _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n return assertThisInitialized(self);\n}","export default function _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}","export default class ServiceResult {\n /**\n * @member - Is service returned an error\n * @type {boolean}\n */\n public hasError: boolean = false;\n /**\n * @member - The service error\n * @type {ServiceError}\n */\n public error!: ServiceError;\n /**\n * @member - The service result data\n * @type {Object}\n */\n public data: any;\n\n /**\n * @constructor\n * @param {Object} response - Service response\n */\n constructor(response: any) {\n if (response.objectType === 'KalturaAPIException') {\n this.hasError = true;\n this.error = new ServiceError(response.code, response.message);\n } else if (response.error && response.error.objectType === 'KalturaAPIException') {\n this.hasError = true;\n this.error = new ServiceError(response.error.code, response.error.message);\n } else {\n this.data = response;\n }\n }\n}\n\nclass ServiceError {\n /**\n * @member - The error code\n * @type {string}\n */\n public code: string;\n /**\n * @member - The error message\n * @type {string}\n */\n public message: string;\n\n /**\n * @constructor\n * @param {string} code - The result code\n * @param {string} message - The result message\n */\n constructor(code: string, message: string) {\n this.code = code;\n this.message = message;\n }\n}\n","import RequestBuilder from '../../util/request-builder';\nimport getLogger from '../../util/logger';\nimport ServiceResult from './base-service-result';\nimport Error from '../../util/error/error';\n\nexport default class MultiRequestBuilder extends RequestBuilder {\n private static _logger = getLogger('MultiRequestBuilder');\n /**\n * @memberof - MultiRequestBuilder\n * @type {Array<RequestBuilder>}\n */\n public requests: Array<RequestBuilder> = [];\n /**\n * Adds request to requests array\n * @function add\n * @param {RequestBuilder} request The request\n * @returns {MultiRequestBuilder} The multiRequest\n */\n public add(request: RequestBuilder): MultiRequestBuilder {\n this.requests.push(request);\n const requestParams = {};\n const serviceDef: any = {service: request.service, action: request.action};\n Object.assign(requestParams, {[this.requests.length]: Object.assign(serviceDef, request.params)});\n Object.assign(requestParams, this.params);\n this.params = requestParams;\n return this;\n }\n\n /**\n * Executes a multi request\n * @function execute\n * @param {boolean} requestsMustSucceed whether all of the requests must succeed or not\n * @returns {Promise} The multirequest execution promise\n */\n public execute(requestsMustSucceed?: boolean): Promise<any> {\n return new Promise((resolve, reject) => {\n try {\n this.params = JSON.stringify(this.params);\n } catch (err) {\n MultiRequestBuilder._logger.error(`${err.message}`);\n reject(\n new Error(Error.Severity.CRITICAL, Error.Category.PROVIDER, Error.Code.FAILED_PARSING_REQUEST, {\n error: err,\n params: this.params\n })\n );\n }\n this.doHttpRequest().then(\n data => {\n const multiRequestResult = new MultiRequestResult(data, requestsMustSucceed);\n if (multiRequestResult.success) {\n resolve({\n headers: this.responseHeaders,\n response: multiRequestResult\n });\n } else {\n reject(\n new Error(Error.Severity.CRITICAL, Error.Category.NETWORK, Error.Code.MULTIREQUEST_API_ERROR, {\n url: this.url,\n headers: this.responseHeaders,\n results: multiRequestResult.results\n })\n );\n }\n },\n err => {\n reject(err);\n }\n );\n });\n }\n}\n\nexport class MultiRequestResult {\n private static _logger = getLogger('MultiRequestResult');\n /**\n * @memberof MultiRequestResult\n * @type {boolean}\n */\n public success: boolean;\n /**\n * @memberof MultiRequestResult\n * @type {Object}\n */\n public results: Array<ServiceResult> = [];\n /**\n * @constructor\n * @param {Object} response data\n * @param {boolean} requestsMustSucceed whether all of the requests must succeed\n */\n constructor(response: any, requestsMustSucceed: boolean = true) {\n const result = response.result ? response.result : response;\n const responseArr = Array.isArray(result) ? result : [result];\n const results = responseArr.map(result => new ServiceResult(result));\n const errorResults = results.filter(serviceResult => serviceResult.hasError);\n\n errorResults.forEach(serviceResult => {\n MultiRequestResult._logger.error(\n `Service returned an error with error code: ${serviceResult.error.code} and message: ${serviceResult.error.message}.`\n );\n });\n\n this.results = results;\n if ((requestsMustSucceed && errorResults.length) || errorResults.length === this.results.length) {\n this.success = false;\n } else {\n this.results = this.results.filter(serviceResult => !serviceResult.hasError);\n this.success = true;\n }\n }\n}\n","import OVPService from '../ovp-service';\nimport RequestBuilder from '../../../../util/request-builder';\nimport OVPConfiguration from '../../config';\nimport {param} from '../../../../util/param';\n\nconst SERVICE_NAME: string = 'stats';\n\nexport default class OVPStatsService extends OVPService {\n /**\n * Creates an instance of RequestBuilder for stats.collect\n * @function collect\n * @param {string} serviceUrl - The service base url\n * @param {string} ks - The ks\n * @param {string} playerVersion - The player version\n * @param {Object} event - The event data\n * @returns {RequestBuilder} - The request builder\n * @static\n */\n public static collect(serviceUrl: string, ks: string, playerVersion: string, event: any): RequestBuilder {\n const ovpParams = OVPConfiguration.get();\n const serviceParams = {};\n Object.assign(serviceParams, ovpParams.serviceParams, {ks: ks, clientTag: 'html5:v' + playerVersion}, event);\n const request = new RequestBuilder();\n request.service = SERVICE_NAME;\n request.action = 'collect';\n request.method = 'GET';\n request.tag = 'stats-collect';\n request.params = serviceParams;\n request.url = serviceUrl + '?service=' + request.service + '&action=' + request.action + '&' + param(request.params);\n return request;\n }\n}\n","const param = (a): any => {\n const s: string[] = [],\n rbracket = /\\[\\]$/,\n isArray = function (obj): boolean {\n return Object.prototype.toString.call(obj) === '[object Array]';\n },\n add = function (k, v): any {\n v = typeof v === 'function' ? v() : v === null ? '' : v === undefined ? '' : v;\n s[s.length] = encodeURIComponent(k) + '=' + encodeURIComponent(v);\n },\n buildParams = function (prefix, obj): any {\n let i, len, key;\n\n if (prefix) {\n if (isArray(obj)) {\n for (i = 0, len = obj.length; i < len; i++) {\n if (rbracket.test(prefix)) {\n add(prefix, obj[i]);\n } else {\n buildParams(prefix + ':' + (typeof obj[i] === 'object' ? i : ''), obj[i]);\n }\n }\n } else if (obj && String(obj) === '[object Object]') {\n for (key in obj) {\n buildParams(prefix + ':' + key, obj[key]);\n }\n } else {\n add(prefix, obj);\n }\n } else if (isArray(obj)) {\n for (i = 0, len = obj.length; i < len; i++) {\n add(obj[i].name, obj[i].value);\n }\n } else {\n for (key in obj) {\n buildParams(key, obj[key]);\n }\n }\n return s;\n };\n\n return buildParams('', a).join('&').replace(/%20/g, '+');\n};\n\nexport {param};\n","import MultiRequestBuilder from '../../common/multi-request-builder';\nimport OVPConfiguration from '../config';\n\nconst SERVICE_NAME: string = 'multirequest';\n\nexport default class OVPService {\n /**\n * Gets a new instance of MultiRequestBuilder with ovp params\n * @function getMultiRequest\n * @param {string} playerVersion The player version\n * @param {string} ks The ks\n * @param {string} partnerId The partner ID\n * @returns {MultiRequestBuilder} The multi request builder\n * @static\n */\n public static getMultiRequest(playerVersion: string, ks: string, partnerId?: number): MultiRequestBuilder {\n const config = OVPConfiguration.get();\n const ovpParams = config.serviceParams;\n Object.assign(ovpParams, {ks: ks, clientTag: 'html5:v' + playerVersion});\n if (partnerId) {\n Object.assign(ovpParams, {partnerId: partnerId});\n }\n const headers: Map<string, string> = new Map();\n headers.set('Content-Type', 'application/json');\n const multiReq = new MultiRequestBuilder(headers);\n multiReq.method = 'POST';\n multiReq.service = SERVICE_NAME;\n multiReq.url = multiReq.getUrl(config.serviceUrl);\n multiReq.params = ovpParams;\n return multiReq;\n }\n}\n","import RequestBuilder from '../../../../util/request-builder';\nimport OVPConfiguration from '../../config';\nimport OVPStatsService from './stats-service';\n\ndeclare let __VERSION__: string;\ndeclare let __NAME__: string;\n\nconst NAME = __NAME__ + '-stats-service';\nconst VERSION = __VERSION__;\n\nexport {OVPStatsService, OVPConfiguration, RequestBuilder, NAME, VERSION};\n"],"names":["root","factory","exports","module","define","amd","a","i","self","__webpack_require__","definition","key","o","Object","defineProperty","enumerable","get","obj","prop","prototype","hasOwnProperty","call","Symbol","toStringTag","value","_classCallCheck","instance","Constructor","TypeError","_typeof","iterator","constructor","_toPropertyKey","arg","input","hint","prim","toPrimitive","undefined","res","String","_defineProperties","target","props","length","descriptor","configurable","writable","_createClass","protoProps","staticProps","_defineProperty","JsLogger","VERSION","DEBUG","name","ERROR","INFO","OFF","TIME","TRACE","WARN","createDefaultHandler","debug","enabledFor","error","getLevel","info","log","setHandler","setLevel","time","timeEnd","trace","useDefaults","warn","Error","severity","category","code","data","arguments","this","_logger","concat","RECOVERABLE","CRITICAL","NETWORK","SERVICE","PROVIDER","UNSUPPORTED_SCHEME","BAD_HTTP_STATUS","HTTP_ERROR","TIMEOUT","MALFORMED_DATA_URI","BAD_SERVER_RESPONSE","MULTIREQUEST_API_ERROR","API_RESPONSE_MISMATCH","BLOCK_ACTION","MEDIA_STATUS_NOT_READY","SCHEDULED_RESTRICTED","MISSING_MANDATORY_PARAMS","MISSING_PLAY_SOURCE","METHOD_NOT_IMPLEMENTED","getLogger","RequestBuilder","headers","Map","async","timeout","maxAttempts","serviceUrl","service","action","_this","promise","Promise","resolve","reject","_requestPromise","url","Severity","Category","Code","_createXHR","_this2","request","XMLHttpRequest","onreadystatechange","readyState","status","response","JSON","parse","responseText","responseHeaders","_getResponseHeaders","_createError","text","open","method","retryConfig","requestTime","performance","now","ontimeout","_handleError","statusText","onerror","onabort","forEach","setRequestHeader","send","params","getAllResponseHeaders","split","filter","header","toLowerCase","indexOf","_attemptCounter","assign","attempt","clone","node","Array","isArray","slice","e","keys","defaultConfig","cdnUrl","serviceParams","apiVersion","format","useApiCaptions","loadThumbnailWithKs","replaceHostOnlyManifestUrls","OVPConfiguration","clientConfig","overrideServiceUrl","_setPrototypeOf","p","setPrototypeOf","bind","__proto__","_inherits","subClass","superClass","create","_assertThisInitialized","ReferenceError","_possibleConstructorReturn","_getPrototypeOf","getPrototypeOf","ServiceResult","objectType","hasError","ServiceError","message","MultiRequestBuilder","_RequestBuilder","_super","_len","args","_key","apply","requests","push","requestParams","serviceDef","requestsMustSucceed","stringify","err","FAILED_PARSING_REQUEST","doHttpRequest","then","multiRequestResult","MultiRequestResult","success","results","result","map","errorResults","serviceResult","OVPStatsService","_OVPService","ks","playerVersion","event","ovpParams","clientTag","s","rbracket","add","tag","toString","k","v","encodeURIComponent","buildParams","prefix","len","test","join","replace","OVPService","partnerId","config","set","multiReq","getUrl","NAME","__NAME__","__VERSION__"],"sourceRoot":""}
package/dist/types.d.ts CHANGED
@@ -1,3 +1,9 @@
1
+ /** @internal */
2
+ declare interface ActiveLiveStreamTime {
3
+ startTime: number;
4
+ endTime: number;
5
+ }
6
+
1
7
  export declare type AdapterDataConfig = {
2
8
  [key: string]: {
3
9
  value: string;
@@ -191,6 +197,7 @@ export declare type ProviderMediaConfigSessionObject = {
191
197
  };
192
198
 
193
199
  export declare type ProviderMediaConfigSourcesObject = {
200
+ activeLiveStreamTime?: ActiveLiveStreamTime;
194
201
  dash: Array<ProviderMediaSourceObject>;
195
202
  hls: Array<ProviderMediaSourceObject>;
196
203
  progressive: Array<ProviderMediaSourceObject>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@playkit-js/playkit-js-providers",
3
- "version": "2.43.2",
3
+ "version": "2.43.3-canary.0-c82994b",
4
4
  "description": "",
5
5
  "files": [
6
6
  "dist/**/*",
@@ -1,6 +1,7 @@
1
1
  import MediaSources from './media-sources';
2
2
  import {ProviderMediaEntryObject} from '../types';
3
3
  import {Poster} from '../types/poster';
4
+ import {ActiveLiveStreamTime} from '../k-provider/ovp/response-types/kaltura-active-live-stream-time';
4
5
 
5
6
  export default class MediaEntry {
6
7
  public static Type: {[type: string]: string} = {
@@ -91,6 +92,7 @@ export default class MediaEntry {
91
92
  * @type {Array<string>}
92
93
  */
93
94
  public capabilities?: Array<string>;
95
+ public activeLiveStreamTime?: ActiveLiveStreamTime;
94
96
 
95
97
  /**
96
98
  * @constructor
@@ -53,7 +53,7 @@ export default class OVPPlaylistLoader implements ILoader {
53
53
  const config = OVPConfiguration.get();
54
54
  const requests: Array<RequestBuilder> = [];
55
55
  requests.push(OVPPlaylistService.get(config.serviceUrl, params.ks, params.playlistId));
56
- requests.push(OVPPlaylistService.execute(config.serviceUrl, params.ks, params.playlistId));
56
+ requests.push(OVPPlaylistService.execute(config.serviceUrl, params.ks, params.playlistId, params.cacheToken));
57
57
  requests.push(OVPPlaylistService.getLastEntryId(config.serviceUrl, params.ks, params.playlistId));
58
58
  return requests;
59
59
  }
@@ -1,4 +1,4 @@
1
- import { KalturaPlaybackContext, KalturaUserEntry } from './response-types';
1
+ import {KalturaPlaybackContext, KalturaUserEntry} from './response-types';
2
2
  import {KalturaMetadataListResponse} from './response-types';
3
3
  import {KalturaMediaEntry} from './response-types';
4
4
  import {KalturaPlaybackSource} from './response-types';
@@ -43,7 +43,7 @@ class OVPProviderParser {
43
43
  const playbackContext = mediaEntryResponse.playBackContextResult;
44
44
  const metadataList = mediaEntryResponse.metadataListResult;
45
45
  const kalturaSources = playbackContext.sources;
46
-
46
+ mediaEntry.activeLiveStreamTime = playbackContext.activeLiveStreamTime;
47
47
  mediaEntry.sources = OVPProviderParser._getParsedSources(kalturaSources, ks, partnerId, uiConfId, entry, playbackContext);
48
48
  OVPProviderParser._fillBaseData(mediaEntry, entry, metadataList, playbackContext);
49
49
  if (mediaEntry.type !== MediaEntry.Type.LIVE && OVPConfiguration.get().useApiCaptions && playbackContext.data.playbackCaptions) {
@@ -151,7 +151,12 @@ class OVPProviderParser {
151
151
  }
152
152
  }
153
153
 
154
- private static _fillBaseData(mediaEntry: MediaEntry, entry: KalturaMediaEntry, metadataList?: KalturaMetadataListResponse, playbackContext?: any): MediaEntry {
154
+ private static _fillBaseData(
155
+ mediaEntry: MediaEntry,
156
+ entry: KalturaMediaEntry,
157
+ metadataList?: KalturaMetadataListResponse,
158
+ playbackContext?: any
159
+ ): MediaEntry {
155
160
  mediaEntry.poster = entry.poster;
156
161
  mediaEntry.rawThumbnailUrl = entry.rawThumbnailUrl;
157
162
  mediaEntry.id = entry.id;
@@ -177,10 +182,7 @@ class OVPProviderParser {
177
182
  mediaEntry.dvrStatus = entry.dvrStatus;
178
183
  }
179
184
 
180
- if (playbackContext &&
181
- playbackContext.flavorAssets[0] &&
182
- playbackContext.flavorAssets[0].width && playbackContext.flavorAssets[0].height) {
183
-
185
+ if (playbackContext && playbackContext.flavorAssets[0] && playbackContext.flavorAssets[0].width && playbackContext.flavorAssets[0].height) {
184
186
  const {height, width} = playbackContext.flavorAssets[0];
185
187
  mediaEntry.metadata.aspectRatio = +Number(width / height).toFixed(2);
186
188
  }
@@ -194,27 +196,27 @@ class OVPProviderParser {
194
196
  private static _getEntryType(entryTypeEnum: number, typeEnum: number | string): string {
195
197
  let type = MediaEntry.Type.UNKNOWN;
196
198
  switch (entryTypeEnum) {
197
- case KalturaMediaEntry.MediaType.IMAGE.value:
198
- type = MediaEntry.Type.IMAGE;
199
- break;
200
- case KalturaMediaEntry.MediaType.AUDIO.value:
201
- type = MediaEntry.Type.AUDIO;
202
- break;
203
- default:
204
- switch (typeEnum) {
205
- case KalturaMediaEntry.EntryType.MEDIA_CLIP.value:
206
- type = MediaEntry.Type.VOD;
207
- break;
208
- case KalturaMediaEntry.EntryType.LIVE_STREAM.value:
209
- case KalturaMediaEntry.EntryType.LIVE_CHANNEL.value:
210
- type = MediaEntry.Type.LIVE;
199
+ case KalturaMediaEntry.MediaType.IMAGE.value:
200
+ type = MediaEntry.Type.IMAGE;
211
201
  break;
212
- case KalturaMediaEntry.EntryType.DOCUMENT.value:
213
- type = MediaEntry.Type.DOCUMENT;
202
+ case KalturaMediaEntry.MediaType.AUDIO.value:
203
+ type = MediaEntry.Type.AUDIO;
214
204
  break;
215
205
  default:
216
- type = MediaEntry.Type.UNKNOWN;
217
- }
206
+ switch (typeEnum) {
207
+ case KalturaMediaEntry.EntryType.MEDIA_CLIP.value:
208
+ type = MediaEntry.Type.VOD;
209
+ break;
210
+ case KalturaMediaEntry.EntryType.LIVE_STREAM.value:
211
+ case KalturaMediaEntry.EntryType.LIVE_CHANNEL.value:
212
+ type = MediaEntry.Type.LIVE;
213
+ break;
214
+ case KalturaMediaEntry.EntryType.DOCUMENT.value:
215
+ type = MediaEntry.Type.DOCUMENT;
216
+ break;
217
+ default:
218
+ type = MediaEntry.Type.UNKNOWN;
219
+ }
218
220
  }
219
221
  return type;
220
222
  }
@@ -26,9 +26,13 @@ import {
26
26
  import OVPUserService from './services/user-service';
27
27
  import {KalturaUserGetResponse} from './response-types/kaltura-user-get-response';
28
28
 
29
+ const MAX_RETRY_ATTEMPTS = 10;
30
+ const RETRY_INTERVAL = 10000;
31
+
29
32
  export default class OVPProvider extends BaseProvider<OVPProviderMediaInfoObject> {
30
33
  private _filterOptionsConfig: ProviderFilterOptionsObject = {redirectFromEntryId: true};
31
34
  private _vrTag: string;
35
+ private _retryAttempts = 0;
32
36
  /**
33
37
  * @constructor
34
38
  * @param {ProviderOptionsObject} options - provider options
@@ -44,11 +48,13 @@ export default class OVPProvider extends BaseProvider<OVPProviderMediaInfoObject
44
48
 
45
49
  this._isAnonymous = !this._ks ? true : undefined;
46
50
  if (this._isAnonymous === undefined) {
47
- this.initializeUserResponse(OVPConfiguration.serviceUrl, this._ks).then(() => {
48
- this._logger.info('User response initialized');
49
- }).catch(err => {
50
- this._logger.error('Failed to initialize user response', err);
51
- });
51
+ this.initializeUserResponse(OVPConfiguration.serviceUrl, this._ks)
52
+ .then(() => {
53
+ this._logger.info('User response initialized');
54
+ })
55
+ .catch(err => {
56
+ this._logger.error('Failed to initialize user response', err);
57
+ });
52
58
  }
53
59
  }
54
60
 
@@ -136,8 +142,8 @@ export default class OVPProvider extends BaseProvider<OVPProviderMediaInfoObject
136
142
  return typeof mediaInfo.redirectFromEntryId === 'boolean'
137
143
  ? mediaInfo.redirectFromEntryId
138
144
  : typeof this._filterOptionsConfig.redirectFromEntryId === 'boolean'
139
- ? this._filterOptionsConfig.redirectFromEntryId
140
- : true;
145
+ ? this._filterOptionsConfig.redirectFromEntryId
146
+ : true;
141
147
  }
142
148
 
143
149
  private _setFilterOptionsConfig(options?: ProviderFilterOptionsObject): void {
@@ -182,12 +188,12 @@ export default class OVPProvider extends BaseProvider<OVPProviderMediaInfoObject
182
188
  action: OVPProviderParser.getBlockAction(response),
183
189
  messages: OVPProviderParser.getErrorMessages(response)
184
190
  });
185
- }
186
- else if (OVPProviderParser.hasScheduledRestriction(response)) {
191
+ } else if (OVPProviderParser.hasScheduledRestriction(response)) {
187
192
  throw new Error(Error.Severity.CRITICAL, Error.Category.SERVICE, Error.Code.SCHEDULED_RESTRICTED, {
188
193
  messages: OVPProviderParser.getErrorMessages(response)
189
194
  });
190
195
  }
196
+
191
197
  const mediaEntry = OVPProviderParser.getMediaEntry(this.ks, this.partnerId, this.uiConfId, response);
192
198
  Object.assign(mediaConfig.sources, this._getSourcesObject(mediaEntry));
193
199
  this._verifyMediaStatus(mediaEntry);
@@ -237,7 +243,11 @@ export default class OVPProvider extends BaseProvider<OVPProviderMediaInfoObject
237
243
  this._dataLoader.add(OVPPlaylistLoader, {playlistId, ks});
238
244
  this._dataLoader.fetchData().then(
239
245
  response => {
240
- resolve(this._parsePlaylistDataFromResponse(response));
246
+ try {
247
+ this._handlePlaylistResponse(response, resolve, reject, playlistInfo);
248
+ } catch (err) {
249
+ reject(err);
250
+ }
241
251
  },
242
252
  err => {
243
253
  reject(err);
@@ -249,6 +259,81 @@ export default class OVPProvider extends BaseProvider<OVPProviderMediaInfoObject
249
259
  });
250
260
  }
251
261
 
262
+ private _handlePlaylistResponse(
263
+ response: Map<string, ILoader>,
264
+ resolve: (value: ProviderPlaylistObject) => void,
265
+ reject: (reason?: any) => void,
266
+ playlistInfo: ProviderPlaylistInfoObject
267
+ ): void {
268
+ this._logger.debug('Handling playlist response', {attempt: this._retryAttempts + 1, maxAttempts: MAX_RETRY_ATTEMPTS});
269
+ const playlistData = this._parsePlaylistDataFromResponse(response);
270
+
271
+ if (playlistData.items.length > 0) {
272
+ this._handlePlaylistSuccess(playlistData, resolve);
273
+ } else {
274
+ this._handlePlaylistRetry(resolve, reject, playlistInfo);
275
+ }
276
+ }
277
+
278
+ private _handlePlaylistSuccess(
279
+ playlistData: ProviderPlaylistObject,
280
+ resolve: (value: ProviderPlaylistObject) => void
281
+ ): void {
282
+ this._logger.debug('Playlist items found', {itemsCount: playlistData.items.length, totalAttempts: this._retryAttempts + 1});
283
+ this._retryAttempts = 0;
284
+ resolve(playlistData);
285
+ }
286
+
287
+ private _handlePlaylistRetry(
288
+ resolve: (value: ProviderPlaylistObject) => void,
289
+ reject: (reason?: any) => void,
290
+ playlistInfo: ProviderPlaylistInfoObject
291
+ ): void {
292
+ if (this._retryAttempts >= MAX_RETRY_ATTEMPTS) {
293
+ this._handleMaxRetriesReached(reject);
294
+ } else {
295
+ this._retryAttempts++;
296
+ this._schedulePlaylistRetry(resolve, reject, playlistInfo);
297
+ }
298
+ }
299
+
300
+ private _handleMaxRetriesReached(reject: (reason?: any) => void): void {
301
+ this._logger.error('Max retry attempts reached - rejecting playlist', {maxAttempts: MAX_RETRY_ATTEMPTS});
302
+ this._retryAttempts = 0;
303
+ const playlistData = this._getPlaylistObject();
304
+ reject(playlistData);
305
+ }
306
+
307
+ private _schedulePlaylistRetry(
308
+ resolve: (value: ProviderPlaylistObject) => void,
309
+ reject: (reason?: any) => void,
310
+ playlistInfo: ProviderPlaylistInfoObject
311
+ ): void {
312
+ setTimeout(() => {
313
+ this._dataLoader = new OVPDataLoaderManager(this.playerVersion, this.partnerId, this.ks, this._networkRetryConfig);
314
+ let ks: string = this.ks;
315
+ if (!ks) {
316
+ ks = '{1:result:ks}';
317
+ this._dataLoader.add(OVPSessionLoader, {widgetId: this.widgetId});
318
+ }
319
+ // Add commas to BaseEntryResponseProfile fields to bust cache on retry
320
+ const retryParams = {
321
+ playlistId: playlistInfo.playlistId,
322
+ ks,
323
+ cacheToken: ','.repeat(this._retryAttempts)
324
+ };
325
+ this._dataLoader.add(OVPPlaylistLoader, retryParams);
326
+ this._dataLoader.fetchData().then(
327
+ retryResponse => {
328
+ this._handlePlaylistResponse(retryResponse, resolve, reject, playlistInfo);
329
+ },
330
+ err => {
331
+ reject(err);
332
+ }
333
+ );
334
+ }, RETRY_INTERVAL);
335
+ }
336
+
252
337
  private _parsePlaylistDataFromResponse(data: Map<string, ILoader>): ProviderPlaylistObject {
253
338
  this._logger.debug('Data parsing started');
254
339
  const playlistConfig: ProviderPlaylistObject = this._getPlaylistObject();
@@ -368,10 +453,17 @@ export default class OVPProvider extends BaseProvider<OVPProviderMediaInfoObject
368
453
  sourcesObject.downloadUrl = mediaEntry.downloadUrl;
369
454
  sourcesObject.rootEntryId = mediaEntry.rootEntryId;
370
455
  sourcesObject.capabilities = mediaEntry.capabilities;
456
+ if (mediaEntry.activeLiveStreamTime) {
457
+ sourcesObject.activeLiveStreamTime = mediaEntry.activeLiveStreamTime;
458
+ }
371
459
  if (mediaEntry.sources.captions) {
372
460
  sourcesObject.captions = mediaEntry.sources.captions;
373
461
  }
374
- if (mediaEntry.metadata && typeof mediaEntry.metadata.tags === 'string' && mediaEntry.metadata.tags.split(',').some(tag => tag.trim() === this._vrTag)) {
462
+ if (
463
+ mediaEntry.metadata &&
464
+ typeof mediaEntry.metadata.tags === 'string' &&
465
+ mediaEntry.metadata.tags.split(',').some(tag => tag.trim() === this._vrTag)
466
+ ) {
375
467
  sourcesObject.vr = {};
376
468
  }
377
469
 
@@ -0,0 +1,5 @@
1
+ /** @internal */
2
+ export interface ActiveLiveStreamTime {
3
+ startTime: number;
4
+ endTime: number;
5
+ }