UNPKG

dashjs

Version:

A reference client implementation for the playback of MPEG DASH via Javascript and compliant browsers.

1,047 lines (929 loc) 4.41 MB
(function webpackUniversalModuleDefinition(root, factory) { if(typeof exports === 'object' && typeof module === 'object') module.exports = factory(); else if(typeof define === 'function' && define.amd) define([], factory); else if(typeof exports === 'object') exports["dashjs"] = factory(); else root["dashjs"] = factory(); })(self, function() { return /******/ (function() { // webpackBootstrap /******/ var __webpack_modules__ = ({ /***/ "./node_modules/@svta/common-media-library/dist/cmcd/CMCD_OBJECT.js": /*!**************************************************************************!*\ !*** ./node_modules/@svta/common-media-library/dist/cmcd/CMCD_OBJECT.js ***! \**************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ CMCD_OBJECT: function() { return /* binding */ CMCD_OBJECT; } /* harmony export */ }); /** * CMCD object header name. * * @group CMCD * * @beta */ var CMCD_OBJECT = 'CMCD-Object'; /***/ }), /***/ "./node_modules/@svta/common-media-library/dist/cmcd/CMCD_PARAM.js": /*!*************************************************************************!*\ !*** ./node_modules/@svta/common-media-library/dist/cmcd/CMCD_PARAM.js ***! \*************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ CMCD_PARAM: function() { return /* binding */ CMCD_PARAM; } /* harmony export */ }); /** * CMCD parameter name. * * @group CMCD * * @beta */ var CMCD_PARAM = 'CMCD'; /***/ }), /***/ "./node_modules/@svta/common-media-library/dist/cmcd/CMCD_REQUEST.js": /*!***************************************************************************!*\ !*** ./node_modules/@svta/common-media-library/dist/cmcd/CMCD_REQUEST.js ***! \***************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ CMCD_REQUEST: function() { return /* binding */ CMCD_REQUEST; } /* harmony export */ }); /** * CMCD request header name. * * @group CMCD * * @beta */ var CMCD_REQUEST = 'CMCD-Request'; /***/ }), /***/ "./node_modules/@svta/common-media-library/dist/cmcd/CMCD_SESSION.js": /*!***************************************************************************!*\ !*** ./node_modules/@svta/common-media-library/dist/cmcd/CMCD_SESSION.js ***! \***************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ CMCD_SESSION: function() { return /* binding */ CMCD_SESSION; } /* harmony export */ }); /** * CMCD session header name. * * @group CMCD * * @beta */ var CMCD_SESSION = 'CMCD-Session'; /***/ }), /***/ "./node_modules/@svta/common-media-library/dist/cmcd/CMCD_STATUS.js": /*!**************************************************************************!*\ !*** ./node_modules/@svta/common-media-library/dist/cmcd/CMCD_STATUS.js ***! \**************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ CMCD_STATUS: function() { return /* binding */ CMCD_STATUS; } /* harmony export */ }); /** * CMCD status header name. * * @group CMCD * * @beta */ var CMCD_STATUS = 'CMCD-Status'; /***/ }), /***/ "./node_modules/@svta/common-media-library/dist/cmcd/CmcdFormatters.js": /*!*****************************************************************************!*\ !*** ./node_modules/@svta/common-media-library/dist/cmcd/CmcdFormatters.js ***! \*****************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ CmcdFormatters: function() { return /* binding */ CmcdFormatters; } /* harmony export */ }); /* harmony import */ var _utils_urlToRelativePath_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils/urlToRelativePath.js */ "./node_modules/@svta/common-media-library/dist/utils/urlToRelativePath.js"); var toRounded = function toRounded(value) { return Math.round(value); }; var toUrlSafe = function toUrlSafe(value, options) { if (options === null || options === void 0 ? void 0 : options.baseUrl) { value = (0,_utils_urlToRelativePath_js__WEBPACK_IMPORTED_MODULE_0__.urlToRelativePath)(value, options.baseUrl); } return encodeURIComponent(value); }; var toHundred = function toHundred(value) { return toRounded(value / 100) * 100; }; /** * The default formatters for CMCD values. * * @group CMCD * * @beta */ var CmcdFormatters = { /** * Bitrate (kbps) rounded integer */ br: toRounded, /** * Duration (milliseconds) rounded integer */ d: toRounded, /** * Buffer Length (milliseconds) rounded nearest 100ms */ bl: toHundred, /** * Deadline (milliseconds) rounded nearest 100ms */ dl: toHundred, /** * Measured Throughput (kbps) rounded nearest 100kbps */ mtp: toHundred, /** * Next Object Request URL encoded */ nor: toUrlSafe, /** * Requested maximum throughput (kbps) rounded nearest 100kbps */ rtp: toHundred, /** * Top Bitrate (kbps) rounded integer */ tb: toRounded }; /***/ }), /***/ "./node_modules/@svta/common-media-library/dist/cmcd/CmcdHeaderField.js": /*!******************************************************************************!*\ !*** ./node_modules/@svta/common-media-library/dist/cmcd/CmcdHeaderField.js ***! \******************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ CmcdHeaderField: function() { return /* binding */ CmcdHeaderField; } /* harmony export */ }); /* harmony import */ var _CMCD_OBJECT_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./CMCD_OBJECT.js */ "./node_modules/@svta/common-media-library/dist/cmcd/CMCD_OBJECT.js"); /* harmony import */ var _CMCD_REQUEST_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./CMCD_REQUEST.js */ "./node_modules/@svta/common-media-library/dist/cmcd/CMCD_REQUEST.js"); /* harmony import */ var _CMCD_SESSION_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./CMCD_SESSION.js */ "./node_modules/@svta/common-media-library/dist/cmcd/CMCD_SESSION.js"); /* harmony import */ var _CMCD_STATUS_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./CMCD_STATUS.js */ "./node_modules/@svta/common-media-library/dist/cmcd/CMCD_STATUS.js"); /** * CMCD header fields. * * @group CMCD * * @enum * * @beta */ var CmcdHeaderField = { /** * keys whose values vary with the object being requested. */ OBJECT: _CMCD_OBJECT_js__WEBPACK_IMPORTED_MODULE_0__.CMCD_OBJECT, /** * keys whose values vary with each request. */ REQUEST: _CMCD_REQUEST_js__WEBPACK_IMPORTED_MODULE_1__.CMCD_REQUEST, /** * keys whose values are expected to be invariant over the life of the session. */ SESSION: _CMCD_SESSION_js__WEBPACK_IMPORTED_MODULE_2__.CMCD_SESSION, /** * keys whose values do not vary with every request or object. */ STATUS: _CMCD_STATUS_js__WEBPACK_IMPORTED_MODULE_3__.CMCD_STATUS }; /***/ }), /***/ "./node_modules/@svta/common-media-library/dist/cmcd/CmcdHeaderMap.js": /*!****************************************************************************!*\ !*** ./node_modules/@svta/common-media-library/dist/cmcd/CmcdHeaderMap.js ***! \****************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ CmcdHeaderMap: function() { return /* binding */ CmcdHeaderMap; } /* harmony export */ }); /* harmony import */ var _babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "./node_modules/@babel/runtime/helpers/esm/defineProperty.js"); /* harmony import */ var _CmcdHeaderField_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./CmcdHeaderField.js */ "./node_modules/@svta/common-media-library/dist/cmcd/CmcdHeaderField.js"); /** * The map of CMCD header fields to official CMCD keys. * * @internal * * @group CMCD */ var CmcdHeaderMap = (0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__["default"])((0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__["default"])((0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__["default"])((0,_babel_runtime_helpers_defineProperty__WEBPACK_IMPORTED_MODULE_0__["default"])({}, _CmcdHeaderField_js__WEBPACK_IMPORTED_MODULE_1__.CmcdHeaderField.OBJECT, ['br', 'd', 'ot', 'tb']), _CmcdHeaderField_js__WEBPACK_IMPORTED_MODULE_1__.CmcdHeaderField.REQUEST, ['bl', 'dl', 'mtp', 'nor', 'nrr', 'su']), _CmcdHeaderField_js__WEBPACK_IMPORTED_MODULE_1__.CmcdHeaderField.SESSION, ['cid', 'pr', 'sf', 'sid', 'st', 'v']), _CmcdHeaderField_js__WEBPACK_IMPORTED_MODULE_1__.CmcdHeaderField.STATUS, ['bs', 'rtp']); /***/ }), /***/ "./node_modules/@svta/common-media-library/dist/cmcd/CmcdObjectType.js": /*!*****************************************************************************!*\ !*** ./node_modules/@svta/common-media-library/dist/cmcd/CmcdObjectType.js ***! \*****************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ CmcdObjectType: function() { return /* binding */ CmcdObjectType; } /* harmony export */ }); /* harmony import */ var _cta_CmObjectType_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../cta/CmObjectType.js */ "./node_modules/@svta/common-media-library/dist/cta/CmObjectType.js"); /** * Common Media Client Data Object Type * * @group CMCD * * @beta * * @enum */ var CmcdObjectType = _cta_CmObjectType_js__WEBPACK_IMPORTED_MODULE_0__.CmObjectType; /***/ }), /***/ "./node_modules/@svta/common-media-library/dist/cmcd/CmcdStreamType.js": /*!*****************************************************************************!*\ !*** ./node_modules/@svta/common-media-library/dist/cmcd/CmcdStreamType.js ***! \*****************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ CmcdStreamType: function() { return /* binding */ CmcdStreamType; } /* harmony export */ }); /* harmony import */ var _cta_CmStreamType_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../cta/CmStreamType.js */ "./node_modules/@svta/common-media-library/dist/cta/CmStreamType.js"); /** * Common Media Client Data Stream Type * * @group CMCD * * @enum * * @beta */ var CmcdStreamType = _cta_CmStreamType_js__WEBPACK_IMPORTED_MODULE_0__.CmStreamType; /***/ }), /***/ "./node_modules/@svta/common-media-library/dist/cmcd/CmcdStreamingFormat.js": /*!**********************************************************************************!*\ !*** ./node_modules/@svta/common-media-library/dist/cmcd/CmcdStreamingFormat.js ***! \**********************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ CmcdStreamingFormat: function() { return /* binding */ CmcdStreamingFormat; } /* harmony export */ }); /* harmony import */ var _cta_CmStreamingFormat_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../cta/CmStreamingFormat.js */ "./node_modules/@svta/common-media-library/dist/cta/CmStreamingFormat.js"); /** * Common Media Client Data Streaming Format * * @group CMCD * * @enum * * @beta */ var CmcdStreamingFormat = _cta_CmStreamingFormat_js__WEBPACK_IMPORTED_MODULE_0__.CmStreamingFormat; /***/ }), /***/ "./node_modules/@svta/common-media-library/dist/cmcd/encodeCmcd.js": /*!*************************************************************************!*\ !*** ./node_modules/@svta/common-media-library/dist/cmcd/encodeCmcd.js ***! \*************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ encodeCmcd: function() { return /* binding */ encodeCmcd; } /* harmony export */ }); /* harmony import */ var core_js_modules_es_object_assign_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core-js/modules/es.object.assign.js */ "./node_modules/core-js/modules/es.object.assign.js"); /* harmony import */ var core_js_modules_es_object_assign_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_assign_js__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _structuredfield_encodeSfDict_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../structuredfield/encodeSfDict.js */ "./node_modules/@svta/common-media-library/dist/structuredfield/encodeSfDict.js"); /* harmony import */ var _utils_processCmcd_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./utils/processCmcd.js */ "./node_modules/@svta/common-media-library/dist/cmcd/utils/processCmcd.js"); /** * Encode a CMCD object to a string. * * @param cmcd - The CMCD object to encode. * @param options - Options for encoding. * * @returns The encoded CMCD string. * * @group CMCD * * @beta */ function encodeCmcd(cmcd) { var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; if (!cmcd) { return ''; } return (0,_structuredfield_encodeSfDict_js__WEBPACK_IMPORTED_MODULE_1__.encodeSfDict)((0,_utils_processCmcd_js__WEBPACK_IMPORTED_MODULE_2__.processCmcd)(cmcd, options), Object.assign({ whitespace: false }, options)); } /***/ }), /***/ "./node_modules/@svta/common-media-library/dist/cmcd/toCmcdHeaders.js": /*!****************************************************************************!*\ !*** ./node_modules/@svta/common-media-library/dist/cmcd/toCmcdHeaders.js ***! \****************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ toCmcdHeaders: function() { return /* binding */ toCmcdHeaders; } /* harmony export */ }); /* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "./node_modules/@babel/runtime/helpers/esm/slicedToArray.js"); /* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! core-js/modules/es.array.concat.js */ "./node_modules/core-js/modules/es.array.concat.js"); /* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_1__); /* harmony import */ var core_js_modules_es_array_find_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! core-js/modules/es.array.find.js */ "./node_modules/core-js/modules/es.array.find.js"); /* harmony import */ var core_js_modules_es_array_find_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_find_js__WEBPACK_IMPORTED_MODULE_2__); /* harmony import */ var core_js_modules_es_array_includes_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! core-js/modules/es.array.includes.js */ "./node_modules/core-js/modules/es.array.includes.js"); /* harmony import */ var core_js_modules_es_array_includes_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_includes_js__WEBPACK_IMPORTED_MODULE_3__); /* harmony import */ var core_js_modules_es_object_entries_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! core-js/modules/es.object.entries.js */ "./node_modules/core-js/modules/es.object.entries.js"); /* harmony import */ var core_js_modules_es_object_entries_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_entries_js__WEBPACK_IMPORTED_MODULE_4__); /* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! core-js/modules/es.object.to-string.js */ "./node_modules/core-js/modules/es.object.to-string.js"); /* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_5__); /* harmony import */ var core_js_modules_es_string_includes_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! core-js/modules/es.string.includes.js */ "./node_modules/core-js/modules/es.string.includes.js"); /* harmony import */ var core_js_modules_es_string_includes_js__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_includes_js__WEBPACK_IMPORTED_MODULE_6__); /* harmony import */ var _CmcdHeaderField_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./CmcdHeaderField.js */ "./node_modules/@svta/common-media-library/dist/cmcd/CmcdHeaderField.js"); /* harmony import */ var _CmcdHeaderMap_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./CmcdHeaderMap.js */ "./node_modules/@svta/common-media-library/dist/cmcd/CmcdHeaderMap.js"); /* harmony import */ var _encodeCmcd_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./encodeCmcd.js */ "./node_modules/@svta/common-media-library/dist/cmcd/encodeCmcd.js"); /** * Convert a CMCD data object to request headers * * @param cmcd - The CMCD data object to convert. * @param options - Options for encoding the CMCD object. * * @returns The CMCD header shards. * * @group CMCD * * @beta */ function toCmcdHeaders(cmcd) { var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; var result = {}; if (!cmcd) { return result; } var entries = Object.entries(cmcd); var headerMap = Object.entries(_CmcdHeaderMap_js__WEBPACK_IMPORTED_MODULE_8__.CmcdHeaderMap).concat(Object.entries((options === null || options === void 0 ? void 0 : options.customHeaderMap) || {})); var shards = entries.reduce(function (acc, entry) { var _a, _b; var _entry = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__["default"])(entry, 2), key = _entry[0], value = _entry[1]; var field = ((_a = headerMap.find(function (entry) { return entry[1].includes(key); })) === null || _a === void 0 ? void 0 : _a[0]) || _CmcdHeaderField_js__WEBPACK_IMPORTED_MODULE_7__.CmcdHeaderField.REQUEST; (_b = acc[field]) !== null && _b !== void 0 ? _b : acc[field] = {}; acc[field][key] = value; return acc; }, {}); return Object.entries(shards).reduce(function (acc, _ref) { var _ref2 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_0__["default"])(_ref, 2), field = _ref2[0], value = _ref2[1]; acc[field] = (0,_encodeCmcd_js__WEBPACK_IMPORTED_MODULE_9__.encodeCmcd)(value, options); return acc; }, result); } /***/ }), /***/ "./node_modules/@svta/common-media-library/dist/cmcd/utils/processCmcd.js": /*!********************************************************************************!*\ !*** ./node_modules/@svta/common-media-library/dist/cmcd/utils/processCmcd.js ***! \********************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ processCmcd: function() { return /* binding */ processCmcd; } /* harmony export */ }); /* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "./node_modules/@babel/runtime/helpers/esm/typeof.js"); /* harmony import */ var core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! core-js/modules/es.array.filter.js */ "./node_modules/core-js/modules/es.array.filter.js"); /* harmony import */ var core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_filter_js__WEBPACK_IMPORTED_MODULE_1__); /* harmony import */ var core_js_modules_es_array_sort_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! core-js/modules/es.array.sort.js */ "./node_modules/core-js/modules/es.array.sort.js"); /* harmony import */ var core_js_modules_es_array_sort_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_sort_js__WEBPACK_IMPORTED_MODULE_2__); /* harmony import */ var core_js_modules_es_object_assign_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! core-js/modules/es.object.assign.js */ "./node_modules/core-js/modules/es.object.assign.js"); /* harmony import */ var core_js_modules_es_object_assign_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_assign_js__WEBPACK_IMPORTED_MODULE_3__); /* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! core-js/modules/es.object.keys.js */ "./node_modules/core-js/modules/es.object.keys.js"); /* harmony import */ var core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_keys_js__WEBPACK_IMPORTED_MODULE_4__); /* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! core-js/modules/es.object.to-string.js */ "./node_modules/core-js/modules/es.object.to-string.js"); /* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_5__); /* harmony import */ var core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! core-js/modules/web.dom-collections.for-each.js */ "./node_modules/core-js/modules/web.dom-collections.for-each.js"); /* harmony import */ var core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_web_dom_collections_for_each_js__WEBPACK_IMPORTED_MODULE_6__); /* harmony import */ var _cta_utils_isTokenField_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../cta/utils/isTokenField.js */ "./node_modules/@svta/common-media-library/dist/cta/utils/isTokenField.js"); /* harmony import */ var _cta_utils_isValid_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../cta/utils/isValid.js */ "./node_modules/@svta/common-media-library/dist/cta/utils/isValid.js"); /* harmony import */ var _structuredfield_SfToken_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../structuredfield/SfToken.js */ "./node_modules/@svta/common-media-library/dist/structuredfield/SfToken.js"); /* harmony import */ var _CmcdFormatters_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../CmcdFormatters.js */ "./node_modules/@svta/common-media-library/dist/cmcd/CmcdFormatters.js"); /** * Internal CMCD processing function. * * @param obj - The CMCD object to process. * @param map - The mapping function to use. * @param options - Options for encoding. * * @internal * * @group CMCD */ function processCmcd(obj, options) { var results = {}; if (obj == null || (0,_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__["default"])(obj) !== 'object') { return results; } var keys = Object.keys(obj).sort(); var formatters = Object.assign({}, _CmcdFormatters_js__WEBPACK_IMPORTED_MODULE_10__.CmcdFormatters, options === null || options === void 0 ? void 0 : options.formatters); var filter = options === null || options === void 0 ? void 0 : options.filter; keys.forEach(function (key) { if (filter === null || filter === void 0 ? void 0 : filter(key)) { return; } var value = obj[key]; var formatter = formatters[key]; if (formatter) { value = formatter(value, options); } // Version should only be reported if not equal to 1. if (key === 'v' && value === 1) { return; } // Playback rate should only be sent if not equal to 1. if (key == 'pr' && value === 1) { return; } // ignore invalid values if (!(0,_cta_utils_isValid_js__WEBPACK_IMPORTED_MODULE_8__.isValid)(value)) { return; } if ((0,_cta_utils_isTokenField_js__WEBPACK_IMPORTED_MODULE_7__.isTokenField)(key) && typeof value === 'string') { value = new _structuredfield_SfToken_js__WEBPACK_IMPORTED_MODULE_9__.SfToken(value); } results[key] = value; }); return results; } /***/ }), /***/ "./node_modules/@svta/common-media-library/dist/cmsd/CMSD_DYNAMIC.js": /*!***************************************************************************!*\ !*** ./node_modules/@svta/common-media-library/dist/cmsd/CMSD_DYNAMIC.js ***! \***************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ CMSD_DYNAMIC: function() { return /* binding */ CMSD_DYNAMIC; } /* harmony export */ }); /** * CMSD dynamic header name. * * @group CMSD * * @beta */ var CMSD_DYNAMIC = 'CMSD-Dynamic'; /***/ }), /***/ "./node_modules/@svta/common-media-library/dist/cmsd/CMSD_STATIC.js": /*!**************************************************************************!*\ !*** ./node_modules/@svta/common-media-library/dist/cmsd/CMSD_STATIC.js ***! \**************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ CMSD_STATIC: function() { return /* binding */ CMSD_STATIC; } /* harmony export */ }); /** * CMSD static header name. * * @group CMSD * * @beta */ var CMSD_STATIC = 'CMSD-Static'; /***/ }), /***/ "./node_modules/@svta/common-media-library/dist/cmsd/CmsdObjectType.js": /*!*****************************************************************************!*\ !*** ./node_modules/@svta/common-media-library/dist/cmsd/CmsdObjectType.js ***! \*****************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ CmsdObjectType: function() { return /* binding */ CmsdObjectType; } /* harmony export */ }); /* harmony import */ var _cta_CmObjectType_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../cta/CmObjectType.js */ "./node_modules/@svta/common-media-library/dist/cta/CmObjectType.js"); /** * Common Media Server Data Object Type * * @group CMSD * * @enum * * @beta */ var CmsdObjectType = _cta_CmObjectType_js__WEBPACK_IMPORTED_MODULE_0__.CmObjectType; /***/ }), /***/ "./node_modules/@svta/common-media-library/dist/cmsd/decodeCmsdDynamic.js": /*!********************************************************************************!*\ !*** ./node_modules/@svta/common-media-library/dist/cmsd/decodeCmsdDynamic.js ***! \********************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ decodeCmsdDynamic: function() { return /* binding */ decodeCmsdDynamic; } /* harmony export */ }); /* harmony import */ var _structuredfield_decodeSfList_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../structuredfield/decodeSfList.js */ "./node_modules/@svta/common-media-library/dist/structuredfield/decodeSfList.js"); /** * Decode a CMSD dynamic string to an object. * * @param cmsd - The CMSD string to decode. * * @returns The decoded CMSD object. * * @group CMSD * * @beta */ function decodeCmsdDynamic(cmsd) { if (!cmsd) { return []; } var sfDict = (0,_structuredfield_decodeSfList_js__WEBPACK_IMPORTED_MODULE_0__.decodeSfList)(cmsd); return sfDict; } /***/ }), /***/ "./node_modules/@svta/common-media-library/dist/cmsd/decodeCmsdStatic.js": /*!*******************************************************************************!*\ !*** ./node_modules/@svta/common-media-library/dist/cmsd/decodeCmsdStatic.js ***! \*******************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ decodeCmsdStatic: function() { return /* binding */ decodeCmsdStatic; } /* harmony export */ }); /* harmony import */ var _babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "./node_modules/@babel/runtime/helpers/esm/typeof.js"); /* harmony import */ var _babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "./node_modules/@babel/runtime/helpers/esm/slicedToArray.js"); /* harmony import */ var core_js_modules_es_object_entries_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! core-js/modules/es.object.entries.js */ "./node_modules/core-js/modules/es.object.entries.js"); /* harmony import */ var core_js_modules_es_object_entries_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_entries_js__WEBPACK_IMPORTED_MODULE_2__); /* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! core-js/modules/es.object.to-string.js */ "./node_modules/core-js/modules/es.object.to-string.js"); /* harmony import */ var core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_object_to_string_js__WEBPACK_IMPORTED_MODULE_3__); /* harmony import */ var _cta_utils_symbolToStr_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../cta/utils/symbolToStr.js */ "./node_modules/@svta/common-media-library/dist/cta/utils/symbolToStr.js"); /* harmony import */ var _structuredfield_decodeSfDict_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../structuredfield/decodeSfDict.js */ "./node_modules/@svta/common-media-library/dist/structuredfield/decodeSfDict.js"); /** * Decode a CMSD Static dict string to an object. * * @param cmsd - The CMSD string to decode. * * @returns The decoded CMSD object. * * @group CMSD * * @beta */ function decodeCmsdStatic(cmsd) { if (!cmsd) { return {}; } return Object.entries((0,_structuredfield_decodeSfDict_js__WEBPACK_IMPORTED_MODULE_5__.decodeSfDict)(cmsd)).reduce(function (acc, _ref) { var _ref2 = (0,_babel_runtime_helpers_slicedToArray__WEBPACK_IMPORTED_MODULE_1__["default"])(_ref, 2), key = _ref2[0], item = _ref2[1]; var value = item.value; acc[key] = (0,_babel_runtime_helpers_typeof__WEBPACK_IMPORTED_MODULE_0__["default"])(value) === 'symbol' ? (0,_cta_utils_symbolToStr_js__WEBPACK_IMPORTED_MODULE_4__.symbolToStr)(value) : value; return acc; }, {}); } /***/ }), /***/ "./node_modules/@svta/common-media-library/dist/cta/608/CaptionScreen.js": /*!*******************************************************************************!*\ !*** ./node_modules/@svta/common-media-library/dist/cta/608/CaptionScreen.js ***! \*******************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ CaptionScreen: function() { return /* binding */ CaptionScreen; } /* harmony export */ }); /* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); /* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); /* harmony import */ var core_js_modules_es_array_join_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! core-js/modules/es.array.join.js */ "./node_modules/core-js/modules/es.array.join.js"); /* harmony import */ var core_js_modules_es_array_join_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_join_js__WEBPACK_IMPORTED_MODULE_2__); /* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! core-js/modules/es.array.push.js */ "./node_modules/core-js/modules/es.array.push.js"); /* harmony import */ var core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_push_js__WEBPACK_IMPORTED_MODULE_3__); /* harmony import */ var core_js_modules_es_array_splice_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! core-js/modules/es.array.splice.js */ "./node_modules/core-js/modules/es.array.splice.js"); /* harmony import */ var core_js_modules_es_array_splice_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_splice_js__WEBPACK_IMPORTED_MODULE_4__); /* harmony import */ var core_js_modules_es_json_stringify_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! core-js/modules/es.json.stringify.js */ "./node_modules/core-js/modules/es.json.stringify.js"); /* harmony import */ var core_js_modules_es_json_stringify_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_json_stringify_js__WEBPACK_IMPORTED_MODULE_5__); /* harmony import */ var core_js_modules_es_string_trim_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! core-js/modules/es.string.trim.js */ "./node_modules/core-js/modules/es.string.trim.js"); /* harmony import */ var core_js_modules_es_string_trim_js__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_string_trim_js__WEBPACK_IMPORTED_MODULE_6__); /* harmony import */ var _CaptionsLogger_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./CaptionsLogger.js */ "./node_modules/@svta/common-media-library/dist/cta/608/CaptionsLogger.js"); /* harmony import */ var _Row_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./Row.js */ "./node_modules/@svta/common-media-library/dist/cta/608/Row.js"); /* harmony import */ var _utils_NR_ROWS_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./utils/NR_ROWS.js */ "./node_modules/@svta/common-media-library/dist/cta/608/utils/NR_ROWS.js"); /* harmony import */ var _VerboseLevel_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./VerboseLevel.js */ "./node_modules/@svta/common-media-library/dist/cta/608/VerboseLevel.js"); /** * * This code was ported from the dash.js project at: * https://github.com/Dash-Industry-Forum/dash.js/blob/development/externals/cea608-parser.js * https://github.com/Dash-Industry-Forum/dash.js/commit/8269b26a761e0853bb21d78780ed945144ecdd4d#diff-71bc295a2d6b6b7093a1d3290d53a4b2 * * The original copyright appears below: * * The copyright in this software is being made available under the BSD License, * included below. This software may be subject to other third party and contributor * rights, including patent rights, and no such rights are granted under this license. * * Copyright (c) 2015-2016, DASH Industry Forum. * All rights reserved. * * Redistribution and use in source and binary forms, with or without modification, * are permitted provided that the following conditions are met: * 1. Redistributions of source code must retain the above copyright notice, this * list of conditions and the following disclaimer. * * Redistributions in binary form must reproduce the above copyright notice, * this list of conditions and the following disclaimer in the documentation and/or * other materials provided with the distribution. * 2. Neither the name of Dash Industry Forum nor the names of its * contributors may be used to endorse or promote products derived from this software * without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS AS IS AND ANY * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. * IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. */ /** * Keep a CTA-608 screen of 32x15 styled characters * * @group CTA-608 * @beta */ var CaptionScreen = /*#__PURE__*/function () { function CaptionScreen() { var logger = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : new _CaptionsLogger_js__WEBPACK_IMPORTED_MODULE_7__.CaptionsLogger(); (0,_babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__["default"])(this, CaptionScreen); this.rows = []; this.currRow = _utils_NR_ROWS_js__WEBPACK_IMPORTED_MODULE_9__.NR_ROWS - 1; this.nrRollUpRows = null; this.lastOutputScreen = null; for (var i = 0; i < _utils_NR_ROWS_js__WEBPACK_IMPORTED_MODULE_9__.NR_ROWS; i++) { this.rows.push(new _Row_js__WEBPACK_IMPORTED_MODULE_8__.Row(logger)); } this.logger = logger; } return (0,_babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__["default"])(CaptionScreen, [{ key: "reset", value: function reset() { for (var i = 0; i < _utils_NR_ROWS_js__WEBPACK_IMPORTED_MODULE_9__.NR_ROWS; i++) { this.rows[i].clear(); } this.currRow = _utils_NR_ROWS_js__WEBPACK_IMPORTED_MODULE_9__.NR_ROWS - 1; } }, { key: "equals", value: function equals(other) { var equal = true; for (var i = 0; i < _utils_NR_ROWS_js__WEBPACK_IMPORTED_MODULE_9__.NR_ROWS; i++) { if (!this.rows[i].equals(other.rows[i])) { equal = false; break; } } return equal; } }, { key: "copy", value: function copy(other) { for (var i = 0; i < _utils_NR_ROWS_js__WEBPACK_IMPORTED_MODULE_9__.NR_ROWS; i++) { this.rows[i].copy(other.rows[i]); } } }, { key: "isEmpty", value: function isEmpty() { var empty = true; for (var i = 0; i < _utils_NR_ROWS_js__WEBPACK_IMPORTED_MODULE_9__.NR_ROWS; i++) { if (!this.rows[i].isEmpty()) { empty = false; break; } } return empty; } }, { key: "backSpace", value: function backSpace() { var row = this.rows[this.currRow]; row.backSpace(); } }, { key: "clearToEndOfRow", value: function clearToEndOfRow() { var row = this.rows[this.currRow]; row.clearToEndOfRow(); } /** * Insert a character (without styling) in the current row. */ }, { key: "insertChar", value: function insertChar(char) { var row = this.rows[this.currRow]; row.insertChar(char); } }, { key: "setPen", value: function setPen(styles) { var row = this.rows[this.currRow]; row.setPenStyles(styles); } }, { key: "moveCursor", value: function moveCursor(relPos) { var row = this.rows[this.currRow]; row.moveCursor(relPos); } }, { key: "setCursor", value: function setCursor(absPos) { this.logger.log(_VerboseLevel_js__WEBPACK_IMPORTED_MODULE_10__.VerboseLevel.INFO, 'setCursor: ' + absPos); var row = this.rows[this.currRow]; row.setCursor(absPos); } }, { key: "setPAC", value: function setPAC(pacData) { this.logger.log(_VerboseLevel_js__WEBPACK_IMPORTED_MODULE_10__.VerboseLevel.INFO, function () { return 'pacData = ' + JSON.stringify(pacData); }); var newRow = pacData.row - 1; if (this.nrRollUpRows && newRow < this.nrRollUpRows - 1) { newRow = this.nrRollUpRows - 1; } // Make sure this only affects Roll-up Captions by checking this.nrRollUpRows if (this.nrRollUpRows && this.currRow !== newRow) { // clear all rows first for (var i = 0; i < _utils_NR_ROWS_js__WEBPACK_IMPORTED_MODULE_9__.NR_ROWS; i++) { this.rows[i].clear(); } // Copy this.nrRollUpRows rows from lastOutputScreen and place it in the newRow location // topRowIndex - the start of rows to copy (inclusive index) var topRowIndex = this.currRow + 1 - this.nrRollUpRows; // We only copy if the last position was already shown. // We use the cueStartTime value to check this. var lastOutputScreen = this.lastOutputScreen; if (lastOutputScreen) { var prevLineTime = lastOutputScreen.rows[topRowIndex].cueStartTime; var time = this.logger.time; if (prevLineTime !== null && time !== null && prevLineTime < time) { for (var _i = 0; _i < this.nrRollUpRows; _i++) { this.rows[newRow - this.nrRollUpRows + _i + 1].copy(lastOutputScreen.rows[topRowIndex + _i]); } } } } this.currRow = newRow; var row = this.rows[this.currRow]; if (pacData.indent !== null) { var indent = pacData.indent; var prevPos = Math.max(indent - 1, 0); row.setCursor(pacData.indent); pacData.color = row.chars[prevPos].penState.foreground; } var styles = { foreground: pacData.color, underline: pacData.underline, italics: pacData.italics, background: 'black', flash: false }; this.setPen(styles); } /** * Set background/extra foreground, but first do back_space, and then insert space (backwards compatibility). */ }, { key: "setBkgData", value: function setBkgData(bkgData) { this.logger.log(_VerboseLevel_js__WEBPACK_IMPORTED_MODULE_10__.VerboseLevel.INFO, function () { return 'bkgData = ' + JSON.stringify(bkgData); }); this.backSpace(); this.setPen(bkgData); this.insertChar(0x20); // Space } }, { key: "setRollUpRows", value: function setRollUpRows(nrRows) { this.nrRollUpRows = nrRows; } }, { key: "rollUp", value: function rollUp() { var _this = this; if (this.nrRollUpRows === null) { this.logger.log(_VerboseLevel_js__WEBPACK_IMPORTED_MODULE_10__.VerboseLevel.DEBUG, 'roll_up but nrRollUpRows not set yet'); return; // Not properly setup } this.logger.log(_VerboseLevel_js__WEBPACK_IMPORTED_MODULE_10__.VerboseLevel.TEXT, function () { return _this.getDisplayText(); }); var topRowIndex = this.currRow + 1 - this.nrRollUpRows; var topRow = this.rows.splice(topRowIndex, 1)[0]; topRow.clear(); this.rows.splice(this.currRow, 0, topRow); this.logger.log(_VerboseLevel_js__WEBPACK_IMPORTED_MODULE_10__.VerboseLevel.INFO, 'Rolling up'); } /** * Get all non-empty rows with as unicode text. */ }, { key: "getDisplayText", value: function getDisplayText(asOneRow) { asOneRow = asOneRow || false; var displayText = []; var text = ''; var rowNr = -1; for (var i = 0; i < _utils_NR_ROWS_js__WEBPACK_IMPORTED_MODULE_9__.NR_ROWS; i++) { var rowText = this.rows[i].getTextString(); if (rowText) { rowNr = i + 1; if (asOneRow) { displayText.push('Row ' + rowNr + ": '" + rowText + "'"); } else { displayText.push(rowText.trim()); } } } if (displayText.length > 0) { if (asOneRow) { text = '[' + displayText.join(' | ') + ']'; } else { text = displayText.join('\n'); } } return text; } }, { key: "getTextAndFormat", value: function getTextAndFormat() { return this.rows; } }]); }(); /***/ }), /***/ "./node_modules/@svta/common-media-library/dist/cta/608/CaptionsLogger.js": /*!********************************************************************************!*\ !*** ./node_modules/@svta/common-media-library/dist/cta/608/CaptionsLogger.js ***! \********************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { "use strict"; __webpack_require__.r(__webpack_exports__); /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ CaptionsLogger: function() { return /* binding */ CaptionsLogger; } /* harmony export */ }); /* harmony import */ var _babel_runtime_helpers_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "./node_modules/@babel/runtime/helpers/esm/classCallCheck.js"); /* harmony import */ var _babel_runtime_helpers_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/createClass */ "./node_modules/@babel/runtime/helpers/esm/createClass.js"); /* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! core-js/modules/es.array.concat.js */ "./node_modules/core-js/modules/es.array.concat.js"); /* harmony import */ var core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(core_js_modules_es_array_concat_js__WEBPACK_IMPORTED_MODULE_2__); /* harmony import */ var _VerboseLevel_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./VerboseLevel.js */ "./node_modules/@svta/common-media-library/dist/cta/608/VerboseLevel.js"); /** * * This code was ported from the dash.js project at: * https://github.com/Dash-Industry-Forum/dash.js/blob/development/externals/cea608-parser.js * https://github.com/Dash-Industry-Forum/dash.js/commit/8269b26a761e0853bb21d78780ed945144ecdd4d#diff-71bc295a2d6b6b7093a1d3290d53a4b2 * * The original copyright appears below: * * The copyright in this software is being made available under the BSD License, * included below. This software may be subject to other third party and contributor * rights, including patent rights, and no such rights are granted under this license. * * Copyright (c) 2015-2016, DASH Industry Forum. * All rights reserved. * * Redistribution and use in source and binary forms, with or without modification, * are permitted provided that the following conditions are met: * 1. Redistributions of source code must retain the above copyright notice, this * list of conditions and t