@playkit-js/playkit-js-providers 2.44.2-canary.0-3ee5cd1 → 2.45.0-canary.0-0441953

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.
@@ -57,6 +57,12 @@ declare class DataLoaderManager {
57
57
  * @protected
58
58
  */
59
59
  protected _multiRequest: MultiRequestBuilder;
60
+ /**
61
+ * @member - Loaders single requests
62
+ * @type {RequestSequenceBuilder}
63
+ * @protected
64
+ */
65
+ protected _singleRequests: RequestSequenceBuilder;
60
66
  /**
61
67
  * @member - Loaders multi response
62
68
  * @type {MultiRequestResult}
@@ -516,6 +522,53 @@ declare class RequestBuilder {
516
522
  private _createError;
517
523
  }
518
524
 
525
+ /**
526
+ * RequestSequenceBuilder provides a builder pattern for executing multiple individual requests
527
+ * sequentially, as an alternative to the MultiRequestBuilder which batches them together.
528
+ * @class RequestSequenceBuilder
529
+ */
530
+ declare class RequestSequenceBuilder {
531
+ private _logger;
532
+ /**
533
+ * Loaders to be executed
534
+ * @type {Map<string, ILoader>}
535
+ * @private
536
+ */
537
+ loaders: Map<string, ILoader>;
538
+ /**
539
+ * Global parameters for all requests
540
+ * @type {Record<string, unknown>}
541
+ * @private
542
+ */
543
+ private _globalParams;
544
+ /**
545
+ * Add a loader to the builder
546
+ * @function add
547
+ * @param {ILoader} loader The loader to add
548
+ */
549
+ add(loader: ILoader): void;
550
+ /**
551
+ * Executes a single request
552
+ * @function execute
553
+ * @param {RequestBuilder} request - The request to execute
554
+ * @returns {Promise<ServiceResult>} - Promise with the service result
555
+ */
556
+ private _executeRequest;
557
+ /**
558
+ * Executes multiple requests sequentially
559
+ * @function executeSequence
560
+ * @param {Array<RequestBuilder>} requests - The requests to execute in order
561
+ * @returns {Promise<SingleRequestsResult>} - Promise with the combined results
562
+ */
563
+ private _executeSequence;
564
+ /**
565
+ * Executes all added loaders as separate requests
566
+ * @function execute
567
+ * @returns {Promise<Map<string, ILoader>>} - Promise with the loaded loaders
568
+ */
569
+ execute(): Promise<Map<string, ILoader>>;
570
+ }
571
+
519
572
  declare class ServiceError {
520
573
  /**
521
574
  * @member - The error code
@@ -71,6 +71,12 @@ declare class DataLoaderManager {
71
71
  * @protected
72
72
  */
73
73
  protected _multiRequest: MultiRequestBuilder;
74
+ /**
75
+ * @member - Loaders single requests
76
+ * @type {RequestSequenceBuilder}
77
+ * @protected
78
+ */
79
+ protected _singleRequests: RequestSequenceBuilder;
74
80
  /**
75
81
  * @member - Loaders multi response
76
82
  * @type {MultiRequestResult}
@@ -1621,6 +1627,53 @@ declare type RequestLoader = {
1621
1627
  params: any;
1622
1628
  };
1623
1629
 
1630
+ /**
1631
+ * RequestSequenceBuilder provides a builder pattern for executing multiple individual requests
1632
+ * sequentially, as an alternative to the MultiRequestBuilder which batches them together.
1633
+ * @class RequestSequenceBuilder
1634
+ */
1635
+ declare class RequestSequenceBuilder {
1636
+ private _logger;
1637
+ /**
1638
+ * Loaders to be executed
1639
+ * @type {Map<string, ILoader>}
1640
+ * @private
1641
+ */
1642
+ loaders: Map<string, ILoader>;
1643
+ /**
1644
+ * Global parameters for all requests
1645
+ * @type {Record<string, unknown>}
1646
+ * @private
1647
+ */
1648
+ private _globalParams;
1649
+ /**
1650
+ * Add a loader to the builder
1651
+ * @function add
1652
+ * @param {ILoader} loader The loader to add
1653
+ */
1654
+ add(loader: ILoader): void;
1655
+ /**
1656
+ * Executes a single request
1657
+ * @function execute
1658
+ * @param {RequestBuilder} request - The request to execute
1659
+ * @returns {Promise<ServiceResult>} - Promise with the service result
1660
+ */
1661
+ private _executeRequest;
1662
+ /**
1663
+ * Executes multiple requests sequentially
1664
+ * @function executeSequence
1665
+ * @param {Array<RequestBuilder>} requests - The requests to execute in order
1666
+ * @returns {Promise<SingleRequestsResult>} - Promise with the combined results
1667
+ */
1668
+ private _executeSequence;
1669
+ /**
1670
+ * Executes all added loaders as separate requests
1671
+ * @function execute
1672
+ * @returns {Promise<Map<string, ILoader>>} - Promise with the loaded loaders
1673
+ */
1674
+ execute(): Promise<Map<string, ILoader>>;
1675
+ }
1676
+
1624
1677
  declare namespace ResponseTypes {
1625
1678
  export {
1626
1679
  KalturaBaseEntryListResponse,
@@ -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 a(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 A},OVPAnalyticsService:function(){return C},OVPConfiguration:function(){return v},RequestBuilder:function(){return l},VERSION:function(){return P}});var c=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 u=function(e){return c(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)}));a(f,"Severity",{RECOVERABLE:1,CRITICAL:2}),a(f,"Category",{NETWORK:1,SERVICE:2,PROVIDER:3}),a(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}),a(f,"_logger",u("Error"));var l=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new Map;r(this,e),a(this,"retryConfig",{async:!0,timeout:0,maxAttempts:4}),a(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},y={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},v=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(y,e)}},{key:"get",value:function(){return p(y)}},{key:"serviceUrl",get:function(){return y.serviceUrl}}]),e}();function h(e,t){return h=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},h(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&&h(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 E(e){return E=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},E(e)}var R=s((function e(t){r(this,e),a(this,"hasError",!1),"KalturaAPIException"===t.objectType?(this.hasError=!0,this.error=new O(t.code,t.message)):t.error&&"KalturaAPIException"===t.error.objectType?(this.hasError=!0,this.error=new O(t.error.code,t.error.message)):this.data=t})),O=s((function e(t,n){r(this,e),this.code=t,this.message=n}));var b=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=E(t);if(n){var o=E(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 a(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,a({},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);a(b,"_logger",u("MultiRequestBuilder"));var _=s((function e(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];r(this,e),a(this,"results",[]);var o=t.result?t.result:t,i=(Array.isArray(o)?o:[o]).map((function(e){return new R(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)}));a(_,"_logger",u("MultiRequestResult"));var T=function(e){var t=[],r=/\[\]$/,o=function(e){return"[object Array]"===Object.prototype.toString.call(e)},i=function(e,r){r="function"==typeof r?r():null==r?"":r,t[t.length]=encodeURIComponent(e)+"="+encodeURIComponent(r)};return function e(s,a){var c,u,f;if(s)if(o(a))for(c=0,u=a.length;c<u;c++)r.test(s)?i(s,a[c]):e(s+":"+("object"===n(a[c])?c:""),a[c]);else if(a&&"[object Object]"===String(a))for(f in a)e(s+":"+f,a[f]);else i(s,a);else if(o(a))for(c=0,u=a.length;c<u;c++)i(a[c].name,a[c].value);else for(f in a)e(f,a[f]);return t}("",e).join("&").replace(/%20/g,"+")};var S="analytics",C=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=E(t);if(n){var o=E(this).constructor;e=Reflect.construct(r,arguments,o)}else e=r.apply(this,arguments);return g(this,e)});function i(){return r(this,i),o.apply(this,arguments)}return s(i,null,[{key:"trackEvent",value:function(e,t,r){return"POST"===r?i._trackEventByPOST(e,t):i._trackEventByGET(e,t)}},{key:"_trackEventByGET",value:function(e,t){var r=v.get(),n={};Object.assign(n,r.serviceParams,t);var o=new l;return o.service=S,o.action="trackEvent",o.method="GET",o.retryConfig.maxAttempts=1,o.tag="analytics-trackEvent",o.params=n,o.url=e+"?service="+o.service+"&action="+o.action+"&"+T(o.params),o}},{key:"_trackEventByPOST",value:function(e,t){var r=v.get(),n={};Object.assign(n,r.serviceParams,t);var o=new Map;o.set("Content-Type","application/json");var i=new l(o),s={eventType:n.eventType,partnerId:n.partnerId,entryId:n.entryId,sessionId:n.sessionId};return["eventType","partnerId","entryId","sessionId"].forEach((function(e){return delete n[e]})),i.service=S,i.action="trackEvent",i.method="POST",i.retryConfig.maxAttempts=1,i.tag="analytics-trackEvent",i.params=JSON.stringify(n),i.url=e+"?service="+i.service+"&action="+i.action+"&"+T(s),i}}]),i}(function(){function e(){r(this,e)}return s(e,null,[{key:"getMultiRequest",value:function(e,t,r){var n=v.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 b(i);return s.method="POST",s.service="multirequest",s.url=s.getUrl(n.serviceUrl),s.params=o,s}}]),e}()),A="@playkit-js/playkit-js-providers-analytics-service",P="2.44.2-canary.0-3ee5cd1";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 a(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 A},OVPAnalyticsService:function(){return C},OVPConfiguration:function(){return v},RequestBuilder:function(){return l},VERSION:function(){return P}});var c=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 u=function(e){return c(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)}));a(f,"Severity",{RECOVERABLE:1,CRITICAL:2}),a(f,"Category",{NETWORK:1,SERVICE:2,PROVIDER:3}),a(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,DELETED_ENTRY:2004,MISSING_MANDATORY_PARAMS:3e3,MISSING_PLAY_SOURCE:3001,METHOD_NOT_IMPLEMENTED:3002}),a(f,"_logger",u("Error"));var l=function(){function e(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:new Map;r(this,e),a(this,"retryConfig",{async:!0,timeout:0,maxAttempts:4}),a(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},y={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},v=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(y,e)}},{key:"get",value:function(){return p(y)}},{key:"serviceUrl",get:function(){return y.serviceUrl}}]),e}();function h(e,t){return h=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},h(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&&h(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 E(e){return E=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},E(e)}var R=s((function e(t){r(this,e),a(this,"hasError",!1),"KalturaAPIException"===t.objectType?(this.hasError=!0,this.error=new O(t.code,t.message)):t.error&&"KalturaAPIException"===t.error.objectType?(this.hasError=!0,this.error=new O(t.error.code,t.error.message)):this.data=t})),O=s((function e(t,n){r(this,e),this.code=t,this.message=n}));var b=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=E(t);if(n){var o=E(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 a(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,a({},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);a(b,"_logger",u("MultiRequestBuilder"));var _=s((function e(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];r(this,e),a(this,"results",[]);var o=t.result?t.result:t,i=(Array.isArray(o)?o:[o]).map((function(e){return new R(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)}));a(_,"_logger",u("MultiRequestResult"));var T=function(e){var t=[],r=/\[\]$/,o=function(e){return"[object Array]"===Object.prototype.toString.call(e)},i=function(e,r){r="function"==typeof r?r():null==r?"":r,t[t.length]=encodeURIComponent(e)+"="+encodeURIComponent(r)};return function e(s,a){var c,u,f;if(s)if(o(a))for(c=0,u=a.length;c<u;c++)r.test(s)?i(s,a[c]):e(s+":"+("object"===n(a[c])?c:""),a[c]);else if(a&&"[object Object]"===String(a))for(f in a)e(s+":"+f,a[f]);else i(s,a);else if(o(a))for(c=0,u=a.length;c<u;c++)i(a[c].name,a[c].value);else for(f in a)e(f,a[f]);return t}("",e).join("&").replace(/%20/g,"+")};var S="analytics",C=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=E(t);if(n){var o=E(this).constructor;e=Reflect.construct(r,arguments,o)}else e=r.apply(this,arguments);return g(this,e)});function i(){return r(this,i),o.apply(this,arguments)}return s(i,null,[{key:"trackEvent",value:function(e,t,r){return"POST"===r?i._trackEventByPOST(e,t):i._trackEventByGET(e,t)}},{key:"_trackEventByGET",value:function(e,t){var r=v.get(),n={};Object.assign(n,r.serviceParams,t);var o=new l;return o.service=S,o.action="trackEvent",o.method="GET",o.retryConfig.maxAttempts=1,o.tag="analytics-trackEvent",o.params=n,o.url=e+"?service="+o.service+"&action="+o.action+"&"+T(o.params),o}},{key:"_trackEventByPOST",value:function(e,t){var r=v.get(),n={};Object.assign(n,r.serviceParams,t);var o=new Map;o.set("Content-Type","application/json");var i=new l(o),s={eventType:n.eventType,partnerId:n.partnerId,entryId:n.entryId,sessionId:n.sessionId};return["eventType","partnerId","entryId","sessionId"].forEach((function(e){return delete n[e]})),i.service=S,i.action="trackEvent",i.method="POST",i.retryConfig.maxAttempts=1,i.tag="analytics-trackEvent",i.params=JSON.stringify(n),i.url=e+"?service="+i.service+"&action="+i.action+"&"+T(s),i}}]),i}(function(){function e(){r(this,e)}return s(e,null,[{key:"getMultiRequest",value:function(e,t,r){var n=v.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 b(i);return s.method="POST",s.service="multirequest",s.url=s.getUrl(n.serviceUrl),s.params=o,s}}]),e}()),A="@playkit-js/playkit-js-providers-analytics-service",P="2.45.0-canary.0-0441953";return t}()}));
2
2
  //# sourceMappingURL=playkit-analytics-service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"playkit-analytics-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/ovp-service.ts","webpack://@playkit-js/playkit-js-providers/./src/util/param.ts","webpack://@playkit-js/playkit-js-providers/./src/k-provider/ovp/services/analytics/analytics-service.ts","webpack://@playkit-js/playkit-js-providers/./src/k-provider/ovp/services/analytics/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 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","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 OVPService from '../ovp-service';\nimport RequestBuilder from '../../../../util/request-builder';\nimport OVPConfiguration from '../../config';\nimport {param} from '../../../../util/param';\n\nconst SERVICE_NAME: string = 'analytics';\n\nexport default class OVPAnalyticsService extends OVPService {\n /**\n * Creates an instance of RequestBuilder for analytics.trackEvent\n * @function trackEvent\n * @param {string} serviceUrl - The service base url\n * @param {Object} params - The event params\n * @param {string} [requestMethod] - The request method GET or POST\n * @returns {RequestBuilder} - The request builder\n * @static\n */\n public static trackEvent(serviceUrl: string, params: any, requestMethod?: string): RequestBuilder {\n return requestMethod === 'POST'\n ? OVPAnalyticsService._trackEventByPOST(serviceUrl, params)\n : OVPAnalyticsService._trackEventByGET(serviceUrl, params);\n }\n\n private static _trackEventByGET(serviceUrl: string, params: any): RequestBuilder {\n const ovpParams = OVPConfiguration.get();\n const serviceParams = {};\n Object.assign(serviceParams, ovpParams.serviceParams, params);\n const request = new RequestBuilder();\n request.service = SERVICE_NAME;\n request.action = 'trackEvent';\n request.method = 'GET';\n request.retryConfig.maxAttempts = 1;\n request.tag = 'analytics-trackEvent';\n request.params = serviceParams;\n request.url = serviceUrl + '?service=' + request.service + '&action=' + request.action + '&' + param(request.params);\n return request;\n }\n\n private static _trackEventByPOST(serviceUrl: string, params: any): RequestBuilder {\n const ovpParams = OVPConfiguration.get();\n const serviceParams: any = {};\n Object.assign(serviceParams, ovpParams.serviceParams, params);\n const headers: Map<string, string> = new Map();\n headers.set('Content-Type', 'application/json');\n const request = new RequestBuilder(headers);\n const {eventType, partnerId, entryId, sessionId} = serviceParams;\n const urlParams = {eventType, partnerId, entryId, sessionId};\n ['eventType', 'partnerId', 'entryId', 'sessionId'].forEach(key => delete serviceParams[key]);\n request.service = SERVICE_NAME;\n request.action = 'trackEvent';\n request.method = 'POST';\n request.retryConfig.maxAttempts = 1;\n request.tag = 'analytics-trackEvent';\n request.params = JSON.stringify(serviceParams);\n request.url = serviceUrl + '?service=' + request.service + '&action=' + request.action + '&' + param(urlParams);\n return request;\n }\n}\n","import RequestBuilder from '../../../../util/request-builder';\nimport OVPConfiguration from '../../config';\nimport OVPAnalyticsService from './analytics-service';\n\ndeclare let __VERSION__: string;\ndeclare let __NAME__: string;\n\nconst NAME = __NAME__ + '-analytics-service';\nconst VERSION = __VERSION__;\n\nexport {OVPAnalyticsService, 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","param","s","rbracket","toString","add","k","v","encodeURIComponent","buildParams","prefix","len","test","join","replace","SERVICE_NAME","OVPAnalyticsService","_OVPService","requestMethod","_trackEventByPOST","_trackEventByGET","ovpParams","tag","set","urlParams","eventType","partnerId","entryId","sessionId","OVPService","playerVersion","ks","config","clientTag","multiReq","getUrl","NAME","__NAME__","__VERSION__"],"sourceRoot":""}
1
+ {"version":3,"file":"playkit-analytics-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/ovp-service.ts","webpack://@playkit-js/playkit-js-providers/./src/util/param.ts","webpack://@playkit-js/playkit-js-providers/./src/k-provider/ovp/services/analytics/analytics-service.ts","webpack://@playkit-js/playkit-js-providers/./src/k-provider/ovp/services/analytics/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 entry status is deleted\n */\n DELETED_ENTRY: 2004,\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 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","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 OVPService from '../ovp-service';\nimport RequestBuilder from '../../../../util/request-builder';\nimport OVPConfiguration from '../../config';\nimport {param} from '../../../../util/param';\n\nconst SERVICE_NAME: string = 'analytics';\n\nexport default class OVPAnalyticsService extends OVPService {\n /**\n * Creates an instance of RequestBuilder for analytics.trackEvent\n * @function trackEvent\n * @param {string} serviceUrl - The service base url\n * @param {Object} params - The event params\n * @param {string} [requestMethod] - The request method GET or POST\n * @returns {RequestBuilder} - The request builder\n * @static\n */\n public static trackEvent(serviceUrl: string, params: any, requestMethod?: string): RequestBuilder {\n return requestMethod === 'POST'\n ? OVPAnalyticsService._trackEventByPOST(serviceUrl, params)\n : OVPAnalyticsService._trackEventByGET(serviceUrl, params);\n }\n\n private static _trackEventByGET(serviceUrl: string, params: any): RequestBuilder {\n const ovpParams = OVPConfiguration.get();\n const serviceParams = {};\n Object.assign(serviceParams, ovpParams.serviceParams, params);\n const request = new RequestBuilder();\n request.service = SERVICE_NAME;\n request.action = 'trackEvent';\n request.method = 'GET';\n request.retryConfig.maxAttempts = 1;\n request.tag = 'analytics-trackEvent';\n request.params = serviceParams;\n request.url = serviceUrl + '?service=' + request.service + '&action=' + request.action + '&' + param(request.params);\n return request;\n }\n\n private static _trackEventByPOST(serviceUrl: string, params: any): RequestBuilder {\n const ovpParams = OVPConfiguration.get();\n const serviceParams: any = {};\n Object.assign(serviceParams, ovpParams.serviceParams, params);\n const headers: Map<string, string> = new Map();\n headers.set('Content-Type', 'application/json');\n const request = new RequestBuilder(headers);\n const {eventType, partnerId, entryId, sessionId} = serviceParams;\n const urlParams = {eventType, partnerId, entryId, sessionId};\n ['eventType', 'partnerId', 'entryId', 'sessionId'].forEach(key => delete serviceParams[key]);\n request.service = SERVICE_NAME;\n request.action = 'trackEvent';\n request.method = 'POST';\n request.retryConfig.maxAttempts = 1;\n request.tag = 'analytics-trackEvent';\n request.params = JSON.stringify(serviceParams);\n request.url = serviceUrl + '?service=' + request.service + '&action=' + request.action + '&' + param(urlParams);\n return request;\n }\n}\n","import RequestBuilder from '../../../../util/request-builder';\nimport OVPConfiguration from '../../config';\nimport OVPAnalyticsService from './analytics-service';\n\ndeclare let __VERSION__: string;\ndeclare let __NAME__: string;\n\nconst NAME = __NAME__ + '-analytics-service';\nconst VERSION = __VERSION__;\n\nexport {OVPAnalyticsService, 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","DELETED_ENTRY","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","param","s","rbracket","toString","add","k","v","encodeURIComponent","buildParams","prefix","len","test","join","replace","SERVICE_NAME","OVPAnalyticsService","_OVPService","requestMethod","_trackEventByPOST","_trackEventByGET","ovpParams","tag","set","urlParams","eventType","partnerId","entryId","sessionId","OVPService","playerVersion","ks","config","clientTag","multiReq","getUrl","NAME","__NAME__","__VERSION__"],"sourceRoot":""}
@@ -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 a(e,t,r){return t&&i(e.prototype,t),r&&i(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e}function s(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},OTTBookmarkService:function(){return T},OTTConfiguration:function(){return h},RequestBuilder:function(){return l},VERSION:function(){return C}});var u=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 u(e)},f=a((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)}));s(f,"Severity",{RECOVERABLE:1,CRITICAL:2}),s(f,"Category",{NETWORK:1,SERVICE:2,PROVIDER:3}),s(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}),s(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),s(this,"retryConfig",{async:!0,timeout:0,maxAttempts:4}),s(this,"_attemptCounter",1),this.headers=t}return a(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},y={serviceParams:{apiVersion:"7.8.1"}},h=function(){function e(){r(this,e)}return a(e,null,[{key:"set",value:function(e){e&&Object.assign(y,e)}},{key:"get",value:function(){return p(y)}}]),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=a((function e(t){r(this,e),s(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=a((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),a=0;a<t;a++)n[a]=arguments[a];return s(m(e=o.call.apply(o,[this].concat(n))),"requests",[]),e}return a(i,[{key:"add",value:function(e){this.requests.push(e);var t={},r={service:e.service,action:e.action};return Object.assign(t,s({},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);s(O,"_logger",c("MultiRequestBuilder"));var _=a((function e(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];r(this,e),s(this,"results",[]);var o=t.result?t.result:t,i=(Array.isArray(o)?o:[o]).map((function(e){return new E(e)})),a=i.filter((function(e){return e.hasError}));a.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&&a.length||a.length===this.results.length?this.success=!1:(this.results=this.results.filter((function(e){return!e.hasError})),this.success=!0)}));s(_,"_logger",c("MultiRequestResult"));var T=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(){return r(this,i),o.apply(this,arguments)}return a(i,null,[{key:"add",value:function(e,t,r){var n=new Map;n.set("Content-Type","application/json");var o=new l(n);o.service="bookmark",o.action="add",o.method="POST",o.url=o.getUrl(e);var i={objectType:"KalturaBookmarkPlayerData",action:r.playerData.action,averageBitrate:r.playerData.averageBitrate,totalBitrate:r.playerData.totalBitrate,currentBitrate:r.playerData.currentBitrate,fileId:r.playerData.fileId},a={objectType:"KalturaBookmark",type:r.type,context:r.context,id:r.id,position:r.position,playerData:i};r.programId&&(a.programId=r.programId);var s=h.get().serviceParams;return Object.assign(s,{bookmark:a,ks:t}),o.params=JSON.stringify(s),o}}]),i}(function(){function e(){r(this,e)}return a(e,null,[{key:"getMultiRequest",value:function(e,t){var r=h.get(),n=r.serviceParams;e&&Object.assign(n,{ks:e}),t&&Object.assign(n,{partnerId:t});var o=new Map;o.set("Content-Type","application/json");var i=new O(o);return i.method="POST",i.service="multirequest",i.url=i.getUrl(r.serviceUrl),i.params=n,i}}]),e}()),S="@playkit-js/playkit-js-providers-bookmark-service",C="2.44.2-canary.0-3ee5cd1";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 a(e,t,r){return t&&i(e.prototype,t),r&&i(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e}function s(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},OTTBookmarkService:function(){return T},OTTConfiguration:function(){return h},RequestBuilder:function(){return l},VERSION:function(){return C}});var u=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 u(e)},f=a((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)}));s(f,"Severity",{RECOVERABLE:1,CRITICAL:2}),s(f,"Category",{NETWORK:1,SERVICE:2,PROVIDER:3}),s(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,DELETED_ENTRY:2004,MISSING_MANDATORY_PARAMS:3e3,MISSING_PLAY_SOURCE:3001,METHOD_NOT_IMPLEMENTED:3002}),s(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),s(this,"retryConfig",{async:!0,timeout:0,maxAttempts:4}),s(this,"_attemptCounter",1),this.headers=t}return a(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},y={serviceParams:{apiVersion:"7.8.1"}},h=function(){function e(){r(this,e)}return a(e,null,[{key:"set",value:function(e){e&&Object.assign(y,e)}},{key:"get",value:function(){return p(y)}}]),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=a((function e(t){r(this,e),s(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=a((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),a=0;a<t;a++)n[a]=arguments[a];return s(m(e=o.call.apply(o,[this].concat(n))),"requests",[]),e}return a(i,[{key:"add",value:function(e){this.requests.push(e);var t={},r={service:e.service,action:e.action};return Object.assign(t,s({},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);s(O,"_logger",c("MultiRequestBuilder"));var _=a((function e(t){var n=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];r(this,e),s(this,"results",[]);var o=t.result?t.result:t,i=(Array.isArray(o)?o:[o]).map((function(e){return new E(e)})),a=i.filter((function(e){return e.hasError}));a.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&&a.length||a.length===this.results.length?this.success=!1:(this.results=this.results.filter((function(e){return!e.hasError})),this.success=!0)}));s(_,"_logger",c("MultiRequestResult"));var T=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(){return r(this,i),o.apply(this,arguments)}return a(i,null,[{key:"add",value:function(e,t,r){var n=new Map;n.set("Content-Type","application/json");var o=new l(n);o.service="bookmark",o.action="add",o.method="POST",o.url=o.getUrl(e);var i={objectType:"KalturaBookmarkPlayerData",action:r.playerData.action,averageBitrate:r.playerData.averageBitrate,totalBitrate:r.playerData.totalBitrate,currentBitrate:r.playerData.currentBitrate,fileId:r.playerData.fileId},a={objectType:"KalturaBookmark",type:r.type,context:r.context,id:r.id,position:r.position,playerData:i};r.programId&&(a.programId=r.programId);var s=h.get().serviceParams;return Object.assign(s,{bookmark:a,ks:t}),o.params=JSON.stringify(s),o}}]),i}(function(){function e(){r(this,e)}return a(e,null,[{key:"getMultiRequest",value:function(e,t){var r=h.get(),n=r.serviceParams;e&&Object.assign(n,{ks:e}),t&&Object.assign(n,{partnerId:t});var o=new Map;o.set("Content-Type","application/json");var i=new O(o);return i.method="POST",i.service="multirequest",i.url=i.getUrl(r.serviceUrl),i.params=n,i}}]),e}()),S="@playkit-js/playkit-js-providers-bookmark-service",C="2.45.0-canary.0-0441953";return t}()}));
2
2
  //# sourceMappingURL=playkit-bookmark-service.js.map