rx-player 4.1.0-dev.2024061700 → 4.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (176) hide show
  1. package/CHANGELOG.md +5 -1
  2. package/VERSION +1 -1
  3. package/dist/commonjs/__GENERATED_CODE/embedded_worker.d.ts.map +1 -1
  4. package/dist/commonjs/__GENERATED_CODE/embedded_worker.js +1 -1
  5. package/dist/commonjs/core/main/common/content_time_boundaries_observer.js +41 -19
  6. package/dist/commonjs/core/segment_sinks/garbage_collector.js +44 -24
  7. package/dist/commonjs/core/segment_sinks/inventory/utils.js +25 -3
  8. package/dist/commonjs/errors/custom_loader_error.d.ts +0 -1
  9. package/dist/commonjs/errors/custom_loader_error.d.ts.map +1 -1
  10. package/dist/commonjs/errors/custom_loader_error.js +1 -2
  11. package/dist/commonjs/errors/encrypted_media_error.d.ts +0 -1
  12. package/dist/commonjs/errors/encrypted_media_error.d.ts.map +1 -1
  13. package/dist/commonjs/errors/encrypted_media_error.js +1 -2
  14. package/dist/commonjs/errors/media_error.d.ts +0 -1
  15. package/dist/commonjs/errors/media_error.d.ts.map +1 -1
  16. package/dist/commonjs/errors/media_error.js +1 -2
  17. package/dist/commonjs/errors/network_error.d.ts +0 -1
  18. package/dist/commonjs/errors/network_error.d.ts.map +1 -1
  19. package/dist/commonjs/errors/network_error.js +1 -2
  20. package/dist/commonjs/errors/other_error.d.ts +0 -1
  21. package/dist/commonjs/errors/other_error.d.ts.map +1 -1
  22. package/dist/commonjs/errors/other_error.js +1 -2
  23. package/dist/commonjs/errors/source_buffer_error.d.ts +0 -1
  24. package/dist/commonjs/errors/source_buffer_error.d.ts.map +1 -1
  25. package/dist/commonjs/errors/source_buffer_error.js +1 -2
  26. package/dist/commonjs/errors/worker_initialization_error.d.ts +0 -1
  27. package/dist/commonjs/errors/worker_initialization_error.d.ts.map +1 -1
  28. package/dist/commonjs/errors/worker_initialization_error.js +1 -2
  29. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader_error.d.ts +0 -1
  30. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader_error.d.ts.map +1 -1
  31. package/dist/commonjs/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader_error.js +2 -2
  32. package/dist/commonjs/main_thread/api/debug/buffer_graph.js +48 -15
  33. package/dist/commonjs/main_thread/api/debug/modules/segment_buffer_content.d.ts.map +1 -1
  34. package/dist/commonjs/main_thread/api/debug/modules/segment_buffer_content.js +38 -17
  35. package/dist/commonjs/main_thread/api/public_api.js +2 -2
  36. package/dist/commonjs/main_thread/decrypt/session_events_listener.js +2 -2
  37. package/dist/commonjs/main_thread/decrypt/utils/check_key_statuses.js +1 -1
  38. package/dist/commonjs/main_thread/init/multi_thread_content_initializer.js +19 -9
  39. package/dist/commonjs/main_thread/init/utils/rebuffering_controller.js +48 -26
  40. package/dist/commonjs/main_thread/init/utils/stream_events_emitter/refresh_scheduled_events_list.d.ts.map +1 -1
  41. package/dist/commonjs/main_thread/init/utils/stream_events_emitter/refresh_scheduled_events_list.js +85 -54
  42. package/dist/commonjs/main_thread/text_displayer/html/html_text_displayer.d.ts.map +1 -1
  43. package/dist/commonjs/main_thread/text_displayer/html/html_text_displayer.js +65 -12
  44. package/dist/commonjs/main_thread/text_displayer/html/text_track_cues_store.js +39 -7
  45. package/dist/commonjs/main_thread/text_displayer/native/native_text_displayer.js +27 -5
  46. package/dist/commonjs/parsers/containers/isobmff/utils.d.ts.map +1 -1
  47. package/dist/commonjs/parsers/containers/isobmff/utils.js +3 -1
  48. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/utils.d.ts +0 -1
  49. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/utils.d.ts.map +1 -1
  50. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/utils.js +1 -2
  51. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/utils.d.ts +0 -1
  52. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/utils.d.ts.map +1 -1
  53. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/utils.js +1 -2
  54. package/dist/commonjs/playback_observer/utils/observation_position.d.ts +11 -0
  55. package/dist/commonjs/playback_observer/utils/observation_position.d.ts.map +1 -1
  56. package/dist/commonjs/playback_observer/utils/observation_position.js +11 -0
  57. package/dist/commonjs/transports/dash/low_latency_segment_loader.d.ts.map +1 -1
  58. package/dist/commonjs/transports/dash/low_latency_segment_loader.js +1 -0
  59. package/dist/commonjs/utils/assert.d.ts +0 -1
  60. package/dist/commonjs/utils/assert.d.ts.map +1 -1
  61. package/dist/commonjs/utils/assert.js +1 -2
  62. package/dist/commonjs/utils/request/fetch.d.ts.map +1 -1
  63. package/dist/commonjs/utils/request/fetch.js +14 -0
  64. package/dist/commonjs/utils/request/request_error.d.ts +0 -1
  65. package/dist/commonjs/utils/request/request_error.d.ts.map +1 -1
  66. package/dist/commonjs/utils/request/request_error.js +14 -12
  67. package/dist/commonjs/utils/request/xhr.d.ts.map +1 -1
  68. package/dist/commonjs/utils/request/xhr.js +17 -0
  69. package/dist/commonjs/utils/task_canceller.d.ts +0 -1
  70. package/dist/commonjs/utils/task_canceller.d.ts.map +1 -1
  71. package/dist/commonjs/utils/task_canceller.js +3 -2
  72. package/dist/es2017/__GENERATED_CODE/embedded_worker.d.ts.map +1 -1
  73. package/dist/es2017/__GENERATED_CODE/embedded_worker.js +1 -1
  74. package/dist/es2017/core/main/common/content_time_boundaries_observer.js +6 -6
  75. package/dist/es2017/core/segment_sinks/garbage_collector.js +2 -4
  76. package/dist/es2017/core/segment_sinks/inventory/utils.js +3 -3
  77. package/dist/es2017/errors/custom_loader_error.d.ts +0 -1
  78. package/dist/es2017/errors/custom_loader_error.d.ts.map +1 -1
  79. package/dist/es2017/errors/custom_loader_error.js +1 -2
  80. package/dist/es2017/errors/encrypted_media_error.d.ts +0 -1
  81. package/dist/es2017/errors/encrypted_media_error.d.ts.map +1 -1
  82. package/dist/es2017/errors/encrypted_media_error.js +1 -2
  83. package/dist/es2017/errors/media_error.d.ts +0 -1
  84. package/dist/es2017/errors/media_error.d.ts.map +1 -1
  85. package/dist/es2017/errors/media_error.js +1 -2
  86. package/dist/es2017/errors/network_error.d.ts +0 -1
  87. package/dist/es2017/errors/network_error.d.ts.map +1 -1
  88. package/dist/es2017/errors/network_error.js +1 -2
  89. package/dist/es2017/errors/other_error.d.ts +0 -1
  90. package/dist/es2017/errors/other_error.d.ts.map +1 -1
  91. package/dist/es2017/errors/other_error.js +1 -2
  92. package/dist/es2017/errors/source_buffer_error.d.ts +0 -1
  93. package/dist/es2017/errors/source_buffer_error.d.ts.map +1 -1
  94. package/dist/es2017/errors/source_buffer_error.js +1 -2
  95. package/dist/es2017/errors/worker_initialization_error.d.ts +0 -1
  96. package/dist/es2017/errors/worker_initialization_error.d.ts.map +1 -1
  97. package/dist/es2017/errors/worker_initialization_error.js +1 -2
  98. package/dist/es2017/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader_error.d.ts +0 -1
  99. package/dist/es2017/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader_error.d.ts.map +1 -1
  100. package/dist/es2017/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader_error.js +2 -2
  101. package/dist/es2017/main_thread/api/debug/buffer_graph.js +6 -6
  102. package/dist/es2017/main_thread/api/debug/modules/segment_buffer_content.d.ts.map +1 -1
  103. package/dist/es2017/main_thread/api/debug/modules/segment_buffer_content.js +1 -2
  104. package/dist/es2017/main_thread/api/public_api.js +2 -2
  105. package/dist/es2017/main_thread/decrypt/session_events_listener.js +2 -2
  106. package/dist/es2017/main_thread/decrypt/utils/check_key_statuses.js +1 -1
  107. package/dist/es2017/main_thread/init/multi_thread_content_initializer.js +1 -2
  108. package/dist/es2017/main_thread/init/utils/rebuffering_controller.js +3 -3
  109. package/dist/es2017/main_thread/init/utils/stream_events_emitter/refresh_scheduled_events_list.d.ts.map +1 -1
  110. package/dist/es2017/main_thread/init/utils/stream_events_emitter/refresh_scheduled_events_list.js +2 -4
  111. package/dist/es2017/main_thread/text_displayer/html/html_text_displayer.d.ts.map +1 -1
  112. package/dist/es2017/main_thread/text_displayer/html/html_text_displayer.js +7 -8
  113. package/dist/es2017/main_thread/text_displayer/html/text_track_cues_store.js +7 -7
  114. package/dist/es2017/main_thread/text_displayer/native/native_text_displayer.js +2 -2
  115. package/dist/es2017/parsers/containers/isobmff/utils.d.ts.map +1 -1
  116. package/dist/es2017/parsers/containers/isobmff/utils.js +3 -1
  117. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/utils.d.ts +0 -1
  118. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/utils.d.ts.map +1 -1
  119. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/utils.js +1 -2
  120. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/utils.d.ts +0 -1
  121. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/utils.d.ts.map +1 -1
  122. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/utils.js +1 -2
  123. package/dist/es2017/playback_observer/utils/observation_position.d.ts +11 -0
  124. package/dist/es2017/playback_observer/utils/observation_position.d.ts.map +1 -1
  125. package/dist/es2017/playback_observer/utils/observation_position.js +11 -0
  126. package/dist/es2017/transports/dash/low_latency_segment_loader.d.ts.map +1 -1
  127. package/dist/es2017/transports/dash/low_latency_segment_loader.js +1 -0
  128. package/dist/es2017/utils/assert.d.ts +0 -1
  129. package/dist/es2017/utils/assert.d.ts.map +1 -1
  130. package/dist/es2017/utils/assert.js +1 -2
  131. package/dist/es2017/utils/request/fetch.d.ts.map +1 -1
  132. package/dist/es2017/utils/request/fetch.js +14 -0
  133. package/dist/es2017/utils/request/request_error.d.ts +0 -1
  134. package/dist/es2017/utils/request/request_error.d.ts.map +1 -1
  135. package/dist/es2017/utils/request/request_error.js +13 -12
  136. package/dist/es2017/utils/request/xhr.d.ts.map +1 -1
  137. package/dist/es2017/utils/request/xhr.js +17 -0
  138. package/dist/es2017/utils/task_canceller.d.ts +0 -1
  139. package/dist/es2017/utils/task_canceller.d.ts.map +1 -1
  140. package/dist/es2017/utils/task_canceller.js +2 -2
  141. package/dist/rx-player.js +16 -16
  142. package/dist/worker.js +6 -6
  143. package/package.json +2 -12
  144. package/src/__GENERATED_CODE/embedded_worker.ts +1 -1
  145. package/src/core/main/common/content_time_boundaries_observer.ts +6 -6
  146. package/src/core/segment_sinks/garbage_collector.ts +2 -4
  147. package/src/core/segment_sinks/inventory/utils.ts +3 -3
  148. package/src/errors/custom_loader_error.ts +1 -4
  149. package/src/errors/encrypted_media_error.ts +1 -3
  150. package/src/errors/media_error.ts +1 -3
  151. package/src/errors/network_error.ts +1 -3
  152. package/src/errors/other_error.ts +1 -3
  153. package/src/errors/source_buffer_error.ts +1 -3
  154. package/src/errors/worker_initialization_error.ts +1 -3
  155. package/src/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader_error.ts +3 -3
  156. package/src/main_thread/api/debug/buffer_graph.ts +5 -6
  157. package/src/main_thread/api/debug/modules/segment_buffer_content.ts +1 -2
  158. package/src/main_thread/api/public_api.ts +2 -2
  159. package/src/main_thread/decrypt/session_events_listener.ts +2 -2
  160. package/src/main_thread/decrypt/utils/check_key_statuses.ts +1 -1
  161. package/src/main_thread/init/multi_thread_content_initializer.ts +1 -2
  162. package/src/main_thread/init/utils/rebuffering_controller.ts +3 -3
  163. package/src/main_thread/init/utils/stream_events_emitter/refresh_scheduled_events_list.ts +2 -4
  164. package/src/main_thread/text_displayer/html/html_text_displayer.ts +7 -8
  165. package/src/main_thread/text_displayer/html/text_track_cues_store.ts +7 -7
  166. package/src/main_thread/text_displayer/native/native_text_displayer.ts +2 -2
  167. package/src/parsers/containers/isobmff/utils.ts +3 -1
  168. package/src/parsers/manifest/dash/fast-js-parser/node_parsers/utils.ts +1 -3
  169. package/src/parsers/manifest/dash/native-parser/node_parsers/utils.ts +1 -4
  170. package/src/playback_observer/utils/observation_position.ts +11 -0
  171. package/src/transports/dash/low_latency_segment_loader.ts +1 -0
  172. package/src/utils/assert.ts +1 -3
  173. package/src/utils/request/fetch.ts +14 -0
  174. package/src/utils/request/request_error.ts +16 -15
  175. package/src/utils/request/xhr.ts +17 -0
  176. package/src/utils/task_canceller.ts +2 -3
@@ -1,4 +1,15 @@
1
1
  "use strict";
2
+ var __values = (this && this.__values) || function(o) {
3
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
4
+ if (m) return m.call(o);
5
+ if (o && typeof o.length === "number") return {
6
+ next: function () {
7
+ if (o && i >= o.length) o = void 0;
8
+ return { value: o && o[i++], done: !o };
9
+ }
10
+ };
11
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
12
+ };
2
13
  Object.defineProperty(exports, "__esModule", { value: true });
3
14
  var manifest_1 = require("../../../../manifest");
4
15
  var is_null_or_undefined_1 = require("../../../../utils/is_null_or_undefined");
@@ -51,7 +62,8 @@ function createSegmentSinkGraph(instance, bufferType, title, parentElt, cancelSi
51
62
  });
52
63
  }
53
64
  function updateBufferMetrics() {
54
- var _a, _b, _c, _d;
65
+ var e_1, _a;
66
+ var _b, _c, _d, _e;
55
67
  var showAllInfo = (0, utils_1.isExtendedMode)(parentElt);
56
68
  var inventory = bufferMetrics === null || bufferMetrics === void 0 ? void 0 : bufferMetrics.segmentSinks[bufferType].segmentInventory;
57
69
  if (bufferMetrics === null || inventory === undefined) {
@@ -65,8 +77,8 @@ function createSegmentSinkGraph(instance, bufferType, title, parentElt, cancelSi
65
77
  var width = Math.min(parentElt.clientWidth - 150, 600);
66
78
  bufferGraph.update({
67
79
  currentTime: currentTime,
68
- minimumPosition: (_a = instance.getMinimumPosition()) !== null && _a !== void 0 ? _a : undefined,
69
- maximumPosition: (_b = instance.getMaximumPosition()) !== null && _b !== void 0 ? _b : undefined,
80
+ minimumPosition: (_b = instance.getMinimumPosition()) !== null && _b !== void 0 ? _b : undefined,
81
+ maximumPosition: (_c = instance.getMaximumPosition()) !== null && _c !== void 0 ? _c : undefined,
70
82
  inventory: inventory,
71
83
  width: width,
72
84
  height: 10,
@@ -77,23 +89,32 @@ function createSegmentSinkGraph(instance, bufferType, title, parentElt, cancelSi
77
89
  return;
78
90
  }
79
91
  currentRangeRepInfoElt.innerHTML = "";
80
- for (var i = 0; i < inventory.length; i++) {
81
- var rangeInfo = inventory[i];
82
- var bufferedStart = rangeInfo.bufferedStart, bufferedEnd = rangeInfo.bufferedEnd, infos = rangeInfo.infos;
83
- if (bufferedStart !== undefined &&
84
- bufferedEnd !== undefined &&
85
- currentTime >= bufferedStart &&
86
- currentTime < bufferedEnd) {
87
- currentRangeRepInfoElt.appendChild((0, utils_1.createMetricTitle)("play"));
88
- currentRangeRepInfoElt.appendChild((0, utils_1.createElement)("span", {
89
- textContent: constructRepresentationInfo(infos),
90
- }));
91
- break;
92
+ try {
93
+ for (var inventory_1 = __values(inventory), inventory_1_1 = inventory_1.next(); !inventory_1_1.done; inventory_1_1 = inventory_1.next()) {
94
+ var rangeInfo = inventory_1_1.value;
95
+ var bufferedStart = rangeInfo.bufferedStart, bufferedEnd = rangeInfo.bufferedEnd, infos = rangeInfo.infos;
96
+ if (bufferedStart !== undefined &&
97
+ bufferedEnd !== undefined &&
98
+ currentTime >= bufferedStart &&
99
+ currentTime < bufferedEnd) {
100
+ currentRangeRepInfoElt.appendChild((0, utils_1.createMetricTitle)("play"));
101
+ currentRangeRepInfoElt.appendChild((0, utils_1.createElement)("span", {
102
+ textContent: constructRepresentationInfo(infos),
103
+ }));
104
+ break;
105
+ }
106
+ }
107
+ }
108
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
109
+ finally {
110
+ try {
111
+ if (inventory_1_1 && !inventory_1_1.done && (_a = inventory_1.return)) _a.call(inventory_1);
92
112
  }
113
+ finally { if (e_1) throw e_1.error; }
93
114
  }
94
115
  loadingRangeRepInfoElt.innerHTML = "";
95
- var rep = (_c = instance.__priv_getCurrentRepresentations()) === null || _c === void 0 ? void 0 : _c[bufferType];
96
- var adap = (_d = instance.__priv_getCurrentAdaptation()) === null || _d === void 0 ? void 0 : _d[bufferType];
116
+ var rep = (_d = instance.__priv_getCurrentRepresentations()) === null || _d === void 0 ? void 0 : _d[bufferType];
117
+ var adap = (_e = instance.__priv_getCurrentAdaptation()) === null || _e === void 0 ? void 0 : _e[bufferType];
97
118
  var manifest = instance.__priv_getManifest();
98
119
  if (manifest !== null && !(0, is_null_or_undefined_1.default)(rep) && !(0, is_null_or_undefined_1.default)(adap)) {
99
120
  var period = (0, manifest_1.getPeriodForTime)(manifest, currentTime);
@@ -164,7 +164,7 @@ var Player = /** @class */ (function (_super) {
164
164
  // Workaround to support Firefox autoplay on FF 42.
165
165
  // See: https://bugzilla.mozilla.org/show_bug.cgi?id=1194624
166
166
  videoElement.preload = "auto";
167
- _this.version = /* PLAYER_VERSION */ "4.1.0-dev.2024061700";
167
+ _this.version = /* PLAYER_VERSION */ "4.1.0";
168
168
  _this.log = log_1.default;
169
169
  _this.state = "STOPPED";
170
170
  _this.videoElement = videoElement;
@@ -2590,5 +2590,5 @@ var Player = /** @class */ (function (_super) {
2590
2590
  Player._priv_currentlyUsedVideoElements = new WeakSet();
2591
2591
  return Player;
2592
2592
  }(event_emitter_1.default));
2593
- Player.version = /* PLAYER_VERSION */ "4.1.0-dev.2024061700";
2593
+ Player.version = /* PLAYER_VERSION */ "4.1.0";
2594
2594
  exports.default = Player;
@@ -298,7 +298,7 @@ function updateSessionWithMessage(session, message) {
298
298
  var BlacklistedSessionError = /** @class */ (function (_super) {
299
299
  __extends(BlacklistedSessionError, _super);
300
300
  function BlacklistedSessionError(sessionError) {
301
- var _this = _super.call(this) || this;
301
+ var _this = _super.call(this, sessionError.message) || this;
302
302
  // @see https://stackoverflow.com/questions/41102060/typescript-extending-error-class
303
303
  Object.setPrototypeOf(_this, BlacklistedSessionError.prototype);
304
304
  _this.sessionError = sessionError;
@@ -315,7 +315,7 @@ exports.BlacklistedSessionError = BlacklistedSessionError;
315
315
  var GetLicenseTimeoutError = /** @class */ (function (_super) {
316
316
  __extends(GetLicenseTimeoutError, _super);
317
317
  function GetLicenseTimeoutError(message) {
318
- var _this = _super.call(this) || this;
318
+ var _this = _super.call(this, message) || this;
319
319
  // @see https://stackoverflow.com/questions/41102060/typescript-extending-error-class
320
320
  Object.setPrototypeOf(_this, BlacklistedSessionError.prototype);
321
321
  _this.message = message;
@@ -77,7 +77,7 @@ var DecommissionedSessionError = /** @class */ (function (_super) {
77
77
  * current MediaKeySession. Should be used for reporting purposes.
78
78
  */
79
79
  function DecommissionedSessionError(reason) {
80
- var _this = _super.call(this) || this;
80
+ var _this = _super.call(this, reason.message) || this;
81
81
  // @see https://stackoverflow.com/questions/41102060/typescript-extending-error-class
82
82
  Object.setPrototypeOf(_this, DecommissionedSessionError.prototype);
83
83
  _this.reason = reason;
@@ -1469,7 +1469,8 @@ function updateManifestCodecSupport(manifest) {
1469
1469
  __spreadArray(__spreadArray(__spreadArray([], __read(((_a = p.adaptations.audio) !== null && _a !== void 0 ? _a : [])), false), __read(((_b = p.adaptations.video) !== null && _b !== void 0 ? _b : [])), false), __read(((_c = p.adaptations.text) !== null && _c !== void 0 ? _c : [])), false).forEach(function (a) {
1470
1470
  var hasSupportedCodecs = false;
1471
1471
  a.representations.forEach(function (r) {
1472
- var _a, _b;
1472
+ var e_2, _a;
1473
+ var _b, _c;
1473
1474
  if (r.isSupported !== undefined) {
1474
1475
  if (!hasSupportedCodecs && r.isSupported) {
1475
1476
  hasSupportedCodecs = true;
@@ -1477,18 +1478,27 @@ function updateManifestCodecSupport(manifest) {
1477
1478
  return;
1478
1479
  }
1479
1480
  var isSupported = false;
1480
- var mimeType = (_a = r.mimeType) !== null && _a !== void 0 ? _a : "";
1481
- var codecs = (_b = r.codecs) !== null && _b !== void 0 ? _b : [];
1481
+ var mimeType = (_b = r.mimeType) !== null && _b !== void 0 ? _b : "";
1482
+ var codecs = (_c = r.codecs) !== null && _c !== void 0 ? _c : [];
1482
1483
  if (codecs.length === 0) {
1483
1484
  codecs = [""];
1484
1485
  }
1485
- for (var codecIdx = 0; codecIdx < codecs.length; codecIdx++) {
1486
- var codec = codecs[codecIdx];
1487
- isSupported = checkCodecSupport(mimeType, codec);
1488
- if (isSupported) {
1489
- r.codecs = [codec];
1490
- break;
1486
+ try {
1487
+ for (var codecs_1 = __values(codecs), codecs_1_1 = codecs_1.next(); !codecs_1_1.done; codecs_1_1 = codecs_1.next()) {
1488
+ var codec = codecs_1_1.value;
1489
+ isSupported = checkCodecSupport(mimeType, codec);
1490
+ if (isSupported) {
1491
+ r.codecs = [codec];
1492
+ break;
1493
+ }
1494
+ }
1495
+ }
1496
+ catch (e_2_1) { e_2 = { error: e_2_1 }; }
1497
+ finally {
1498
+ try {
1499
+ if (codecs_1_1 && !codecs_1_1.done && (_a = codecs_1.return)) _a.call(codecs_1);
1491
1500
  }
1501
+ finally { if (e_2) throw e_2.error; }
1492
1502
  }
1493
1503
  r.isSupported = isSupported;
1494
1504
  if (r.isSupported) {
@@ -29,6 +29,17 @@ var __extends = (this && this.__extends) || (function () {
29
29
  d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
30
30
  };
31
31
  })();
32
+ var __values = (this && this.__values) || function(o) {
33
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
34
+ if (m) return m.call(o);
35
+ if (o && typeof o.length === "number") return {
36
+ next: function () {
37
+ if (o && i >= o.length) o = void 0;
38
+ return { value: o && o[i++], done: !o };
39
+ }
40
+ };
41
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
42
+ };
32
43
  Object.defineProperty(exports, "__esModule", { value: true });
33
44
  var config_1 = require("../../../config");
34
45
  var errors_1 = require("../../../errors");
@@ -263,43 +274,54 @@ exports.default = RebufferingController;
263
274
  * @returns {number|null}
264
275
  */
265
276
  function findSeekableDiscontinuity(discontinuitiesStore, manifest, stalledPosition) {
277
+ var e_1, _a;
266
278
  if (discontinuitiesStore.length === 0) {
267
279
  return null;
268
280
  }
269
281
  var maxDiscontinuityEnd = null;
270
- for (var i = 0; i < discontinuitiesStore.length; i++) {
271
- var period = discontinuitiesStore[i].period;
272
- if (period.start > stalledPosition) {
273
- return maxDiscontinuityEnd;
274
- }
275
- var discontinuityEnd = void 0;
276
- if (period.end === undefined || period.end > stalledPosition) {
277
- var _a = discontinuitiesStore[i], discontinuity = _a.discontinuity, position = _a.position;
278
- var start = discontinuity.start, end = discontinuity.end;
279
- var discontinuityLowerLimit = start !== null && start !== void 0 ? start : position;
280
- if (stalledPosition >= discontinuityLowerLimit - EPSILON) {
281
- if (end === null) {
282
- var nextPeriod = (0, manifest_1.getPeriodAfter)(manifest, period);
283
- if (nextPeriod !== null) {
284
- discontinuityEnd = nextPeriod.start + EPSILON;
282
+ try {
283
+ for (var discontinuitiesStore_1 = __values(discontinuitiesStore), discontinuitiesStore_1_1 = discontinuitiesStore_1.next(); !discontinuitiesStore_1_1.done; discontinuitiesStore_1_1 = discontinuitiesStore_1.next()) {
284
+ var discontinuityInfo = discontinuitiesStore_1_1.value;
285
+ var period = discontinuityInfo.period;
286
+ if (period.start > stalledPosition) {
287
+ return maxDiscontinuityEnd;
288
+ }
289
+ var discontinuityEnd = void 0;
290
+ if (period.end === undefined || period.end > stalledPosition) {
291
+ var discontinuity = discontinuityInfo.discontinuity, position = discontinuityInfo.position;
292
+ var start = discontinuity.start, end = discontinuity.end;
293
+ var discontinuityLowerLimit = start !== null && start !== void 0 ? start : position;
294
+ if (stalledPosition >= discontinuityLowerLimit - EPSILON) {
295
+ if (end === null) {
296
+ var nextPeriod = (0, manifest_1.getPeriodAfter)(manifest, period);
297
+ if (nextPeriod !== null) {
298
+ discontinuityEnd = nextPeriod.start + EPSILON;
299
+ }
300
+ else {
301
+ log_1.default.warn("Init: discontinuity at Period's end but no next Period");
302
+ }
285
303
  }
286
- else {
287
- log_1.default.warn("Init: discontinuity at Period's end but no next Period");
304
+ else if (stalledPosition < end + EPSILON) {
305
+ discontinuityEnd = end + EPSILON;
288
306
  }
289
307
  }
290
- else if (stalledPosition < end + EPSILON) {
291
- discontinuityEnd = end + EPSILON;
308
+ if (discontinuityEnd !== undefined) {
309
+ log_1.default.info("Init: discontinuity found", stalledPosition, discontinuityEnd);
310
+ maxDiscontinuityEnd =
311
+ maxDiscontinuityEnd !== null && maxDiscontinuityEnd > discontinuityEnd
312
+ ? maxDiscontinuityEnd
313
+ : discontinuityEnd;
292
314
  }
293
315
  }
294
- if (discontinuityEnd !== undefined) {
295
- log_1.default.info("Init: discontinuity found", stalledPosition, discontinuityEnd);
296
- maxDiscontinuityEnd =
297
- maxDiscontinuityEnd !== null && maxDiscontinuityEnd > discontinuityEnd
298
- ? maxDiscontinuityEnd
299
- : discontinuityEnd;
300
- }
301
316
  }
302
317
  }
318
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
319
+ finally {
320
+ try {
321
+ if (discontinuitiesStore_1_1 && !discontinuitiesStore_1_1.done && (_a = discontinuitiesStore_1.return)) _a.call(discontinuitiesStore_1);
322
+ }
323
+ finally { if (e_1) throw e_1.error; }
324
+ }
303
325
  return maxDiscontinuityEnd;
304
326
  }
305
327
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"refresh_scheduled_events_list.d.ts","sourceRoot":"","sources":["../../../../../../src/main_thread/init/utils/stream_events_emitter/refresh_scheduled_events_list.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAE9D,OAAO,KAAK,EAAE,4BAA4B,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAEjF;;;;;GAKG;AACH,iBAAS,0BAA0B,CACjC,kBAAkB,EAAE,KAAK,CAAC,mBAAmB,GAAG,4BAA4B,CAAC,EAC7E,QAAQ,EAAE,iBAAiB,GAC1B,KAAK,CAAC,mBAAmB,GAAG,4BAA4B,CAAC,CA+D3D;AAED,eAAe,0BAA0B,CAAC"}
1
+ {"version":3,"file":"refresh_scheduled_events_list.d.ts","sourceRoot":"","sources":["../../../../../../src/main_thread/init/utils/stream_events_emitter/refresh_scheduled_events_list.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAE9D,OAAO,KAAK,EAAE,4BAA4B,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAEjF;;;;;GAKG;AACH,iBAAS,0BAA0B,CACjC,kBAAkB,EAAE,KAAK,CAAC,mBAAmB,GAAG,4BAA4B,CAAC,EAC7E,QAAQ,EAAE,iBAAiB,GAC1B,KAAK,CAAC,mBAAmB,GAAG,4BAA4B,CAAC,CA6D3D;AAED,eAAe,0BAA0B,CAAC"}
@@ -25,6 +25,17 @@ var __assign = (this && this.__assign) || function () {
25
25
  };
26
26
  return __assign.apply(this, arguments);
27
27
  };
28
+ var __values = (this && this.__values) || function(o) {
29
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
30
+ if (m) return m.call(o);
31
+ if (o && typeof o.length === "number") return {
32
+ next: function () {
33
+ if (o && i >= o.length) o = void 0;
34
+ return { value: o && o[i++], done: !o };
35
+ }
36
+ };
37
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
38
+ };
28
39
  Object.defineProperty(exports, "__esModule", { value: true });
29
40
  var are_same_stream_events_1 = require("./are_same_stream_events");
30
41
  /**
@@ -34,64 +45,84 @@ var are_same_stream_events_1 = require("./are_same_stream_events");
34
45
  * @returns {Array.<Object>}
35
46
  */
36
47
  function refreshScheduledEventsList(oldScheduledEvents, manifest) {
48
+ var e_1, _a;
37
49
  var scheduledEvents = [];
38
50
  var periods = manifest.periods;
39
- for (var i = 0; i < periods.length; i++) {
40
- var period = periods[i];
41
- var streamEvents = period.streamEvents;
42
- streamEvents.forEach(function (_a) {
43
- var start = _a.start, end = _a.end, id = _a.id, data = _a.data;
44
- for (var j = 0; j < oldScheduledEvents.length; j++) {
45
- var currentScheduledEvent = oldScheduledEvents[j];
46
- if ((0, are_same_stream_events_1.default)(currentScheduledEvent, { id: id, start: start, end: end })) {
47
- scheduledEvents.push(currentScheduledEvent);
51
+ try {
52
+ for (var periods_1 = __values(periods), periods_1_1 = periods_1.next(); !periods_1_1.done; periods_1_1 = periods_1.next()) {
53
+ var period = periods_1_1.value;
54
+ var streamEvents = period.streamEvents;
55
+ streamEvents.forEach(function (_a) {
56
+ var e_2, _b;
57
+ var start = _a.start, end = _a.end, id = _a.id, data = _a.data;
58
+ try {
59
+ for (var oldScheduledEvents_1 = (e_2 = void 0, __values(oldScheduledEvents)), oldScheduledEvents_1_1 = oldScheduledEvents_1.next(); !oldScheduledEvents_1_1.done; oldScheduledEvents_1_1 = oldScheduledEvents_1.next()) {
60
+ var currentScheduledEvent = oldScheduledEvents_1_1.value;
61
+ if ((0, are_same_stream_events_1.default)(currentScheduledEvent, { id: id, start: start, end: end })) {
62
+ scheduledEvents.push(currentScheduledEvent);
63
+ return;
64
+ }
65
+ }
66
+ }
67
+ catch (e_2_1) { e_2 = { error: e_2_1 }; }
68
+ finally {
69
+ try {
70
+ if (oldScheduledEvents_1_1 && !oldScheduledEvents_1_1.done && (_b = oldScheduledEvents_1.return)) _b.call(oldScheduledEvents_1);
71
+ }
72
+ finally { if (e_2) throw e_2.error; }
73
+ }
74
+ var element;
75
+ if (data.value.element !== undefined) {
76
+ element = data.value.element;
77
+ }
78
+ else if (data.value.xmlData !== undefined) {
79
+ // First, we will create a parent Element defining all namespaces that
80
+ // should have been encountered until know.
81
+ // This is needed because the DOMParser API might throw when
82
+ // encountering unknown namespaced attributes or elements in the given
83
+ // `<Event>` xml subset.
84
+ var parentNode = data.value.xmlData.namespaces.reduce(function (acc, ns) {
85
+ return acc + "xmlns:" + ns.key + '="' + ns.value + '" ';
86
+ }, "<toremove ");
87
+ parentNode += ">";
88
+ var parsedDom = new DOMParser().parseFromString(parentNode + data.value.xmlData.data + "</toremove>", "application/xml").documentElement;
89
+ element =
90
+ parsedDom.children.length > 0
91
+ ? parsedDom.children[0]
92
+ : parsedDom.childNodes[0];
93
+ }
94
+ else {
48
95
  return;
49
96
  }
50
- }
51
- var element;
52
- if (data.value.element !== undefined) {
53
- element = data.value.element;
54
- }
55
- else if (data.value.xmlData !== undefined) {
56
- // First, we will create a parent Element defining all namespaces that
57
- // should have been encountered until know.
58
- // This is needed because the DOMParser API might throw when
59
- // encountering unknown namespaced attributes or elements in the given
60
- // `<Event>` xml subset.
61
- var parentNode = data.value.xmlData.namespaces.reduce(function (acc, ns) {
62
- return acc + "xmlns:" + ns.key + '="' + ns.value + '" ';
63
- }, "<toremove ");
64
- parentNode += ">";
65
- var parsedDom = new DOMParser().parseFromString(parentNode + data.value.xmlData.data + "</toremove>", "application/xml").documentElement;
66
- element =
67
- parsedDom.children.length > 0
68
- ? parsedDom.children[0]
69
- : parsedDom.childNodes[0];
70
- }
71
- else {
72
- return;
73
- }
74
- var actualData = { type: data.type, value: __assign(__assign({}, data.value), { element: element }) };
75
- if (end === undefined) {
76
- var newScheduledEvent = {
77
- start: start,
78
- id: id,
79
- data: actualData,
80
- publicEvent: { start: start, data: actualData },
81
- };
82
- scheduledEvents.push(newScheduledEvent);
83
- }
84
- else {
85
- var newScheduledEvent = {
86
- start: start,
87
- end: end,
88
- id: id,
89
- data: actualData,
90
- publicEvent: { start: start, end: end, data: actualData },
91
- };
92
- scheduledEvents.push(newScheduledEvent);
93
- }
94
- });
97
+ var actualData = { type: data.type, value: __assign(__assign({}, data.value), { element: element }) };
98
+ if (end === undefined) {
99
+ var newScheduledEvent = {
100
+ start: start,
101
+ id: id,
102
+ data: actualData,
103
+ publicEvent: { start: start, data: actualData },
104
+ };
105
+ scheduledEvents.push(newScheduledEvent);
106
+ }
107
+ else {
108
+ var newScheduledEvent = {
109
+ start: start,
110
+ end: end,
111
+ id: id,
112
+ data: actualData,
113
+ publicEvent: { start: start, end: end, data: actualData },
114
+ };
115
+ scheduledEvents.push(newScheduledEvent);
116
+ }
117
+ });
118
+ }
119
+ }
120
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
121
+ finally {
122
+ try {
123
+ if (periods_1_1 && !periods_1_1.done && (_a = periods_1.return)) _a.call(periods_1);
124
+ }
125
+ finally { if (e_1) throw e_1.error; }
95
126
  }
96
127
  return scheduledEvents;
97
128
  }
@@ -1 +1 @@
1
- {"version":3,"file":"html_text_displayer.d.ts","sourceRoot":"","sources":["../../../../../src/main_thread/text_displayer/html/html_text_displayer.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAKpD,OAAO,KAAK,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAqCnE;;;;GAIG;AACH,MAAM,CAAC,OAAO,OAAO,iBAAkB,YAAW,cAAc;IAC9D;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAmB;IAEjD,oEAAoE;IACpE,OAAO,CAAC,2BAA2B,CAAgB;IAEnD,8CAA8C;IAC9C,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAc;IAEhD,iCAAiC;IACjC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;IAE7C;;;;OAIG;IACH,OAAO,CAAC,oBAAoB,CAAgB;IAE5C,+CAA+C;IAC/C,OAAO,CAAC,YAAY,CAQjB;IAEH,iDAAiD;IACjD,OAAO,CAAC,SAAS,CAAmB;IAEpC;;;;;;OAMG;IACH,OAAO,CAAC,iBAAiB,CAAU;IAEnC;;;OAGG;gBACS,YAAY,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,WAAW;IAazE;;;;OAIG;IACI,YAAY,CAAC,KAAK,EAAE,kBAAkB,GAAG,MAAM,EAAE;IAkFxD;;;;;OAKG;IACI,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE;IAazD;;;OAGG;IACI,iBAAiB,IAAI,MAAM,EAAE;IAI7B,KAAK,IAAI,IAAI;IAMb,IAAI,IAAI,IAAI;IAYnB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAU3B;;;OAGG;IACH,OAAO,CAAC,YAAY;IA2DpB;;;;OAIG;IACH,OAAO,CAAC,oBAAoB;IA2C5B;;;OAGG;IACH,OAAO,CAAC,gBAAgB;CAoBzB;AAED,uEAAuE;AACvE,MAAM,WAAW,4BAA4B;IAC3C,8DAA8D;IAC9D,IAAI,EAAE,MAAM,CAAC;IACb,8DAA8D;IAC9D,IAAI,EAAE,MAAM,CAAC;IACb;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,2DAA2D;IAC3D,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,0DAA0D;IAC1D,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC1B"}
1
+ {"version":3,"file":"html_text_displayer.d.ts","sourceRoot":"","sources":["../../../../../src/main_thread/text_displayer/html/html_text_displayer.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAKpD,OAAO,KAAK,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAqCnE;;;;GAIG;AACH,MAAM,CAAC,OAAO,OAAO,iBAAkB,YAAW,cAAc;IAC9D;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAmB;IAEjD,oEAAoE;IACpE,OAAO,CAAC,2BAA2B,CAAgB;IAEnD,8CAA8C;IAC9C,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAc;IAEhD,iCAAiC;IACjC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;IAE7C;;;;OAIG;IACH,OAAO,CAAC,oBAAoB,CAAgB;IAE5C,+CAA+C;IAC/C,OAAO,CAAC,YAAY,CAQjB;IAEH,iDAAiD;IACjD,OAAO,CAAC,SAAS,CAAmB;IAEpC;;;;;;OAMG;IACH,OAAO,CAAC,iBAAiB,CAAU;IAEnC;;;OAGG;gBACS,YAAY,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,WAAW;IAazE;;;;OAIG;IACI,YAAY,CAAC,KAAK,EAAE,kBAAkB,GAAG,MAAM,EAAE;IAkFxD;;;;;OAKG;IACI,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE;IAazD;;;OAGG;IACI,iBAAiB,IAAI,MAAM,EAAE;IAI7B,KAAK,IAAI,IAAI;IAMb,IAAI,IAAI,IAAI;IAYnB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAU3B;;;OAGG;IACH,OAAO,CAAC,YAAY;IA0DpB;;;;OAIG;IACH,OAAO,CAAC,oBAAoB;IA2C5B;;;OAGG;IACH,OAAO,CAAC,gBAAgB;CAoBzB;AAED,uEAAuE;AACvE,MAAM,WAAW,4BAA4B;IAC3C,8DAA8D;IAC9D,IAAI,EAAE,MAAM,CAAC;IACb,8DAA8D;IAC9D,IAAI,EAAE,MAAM,CAAC;IACb;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,2DAA2D;IAC3D,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,0DAA0D;IAC1D,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC1B"}
@@ -1,4 +1,15 @@
1
1
  "use strict";
2
+ var __values = (this && this.__values) || function(o) {
3
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
4
+ if (m) return m.call(o);
5
+ if (o && typeof o.length === "number") return {
6
+ next: function () {
7
+ if (o && i >= o.length) o = void 0;
8
+ return { value: o && o[i++], done: !o };
9
+ }
10
+ };
11
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
12
+ };
2
13
  Object.defineProperty(exports, "__esModule", { value: true });
3
14
  var event_listeners_1 = require("../../../compat/event_listeners");
4
15
  var on_height_width_change_1 = require("../../../compat/on_height_width_change");
@@ -180,10 +191,21 @@ var HTMLTextDisplayer = /** @class */ (function () {
180
191
  * Remove the current cue from being displayed.
181
192
  */
182
193
  HTMLTextDisplayer.prototype._disableCurrentCues = function () {
194
+ var e_1, _a;
183
195
  this._sizeUpdateCanceller.cancel();
184
196
  if (this._currentCues.length > 0) {
185
- for (var i = 0; i < this._currentCues.length; i++) {
186
- safelyRemoveChild(this._textTrackElement, this._currentCues[i].element);
197
+ try {
198
+ for (var _b = __values(this._currentCues), _c = _b.next(); !_c.done; _c = _b.next()) {
199
+ var cue = _c.value;
200
+ safelyRemoveChild(this._textTrackElement, cue.element);
201
+ }
202
+ }
203
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
204
+ finally {
205
+ try {
206
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
207
+ }
208
+ finally { if (e_1) throw e_1.error; }
187
209
  }
188
210
  this._currentCues = [];
189
211
  }
@@ -193,6 +215,7 @@ var HTMLTextDisplayer = /** @class */ (function () {
193
215
  * @param {HTMLElement} elements
194
216
  */
195
217
  HTMLTextDisplayer.prototype._displayCues = function (elements) {
218
+ var e_2, _a, e_3, _b;
196
219
  var nothingChanged = this._currentCues.length === elements.length &&
197
220
  this._currentCues.every(function (current, index) { return current.element === elements[index]; });
198
221
  if (nothingChanged) {
@@ -201,15 +224,34 @@ var HTMLTextDisplayer = /** @class */ (function () {
201
224
  // Remove and re-display everything
202
225
  // TODO More intelligent handling
203
226
  this._sizeUpdateCanceller.cancel();
204
- for (var i = 0; i < this._currentCues.length; i++) {
205
- safelyRemoveChild(this._textTrackElement, this._currentCues[i].element);
227
+ try {
228
+ for (var _c = __values(this._currentCues), _d = _c.next(); !_d.done; _d = _c.next()) {
229
+ var cue = _d.value;
230
+ safelyRemoveChild(this._textTrackElement, cue.element);
231
+ }
232
+ }
233
+ catch (e_2_1) { e_2 = { error: e_2_1 }; }
234
+ finally {
235
+ try {
236
+ if (_d && !_d.done && (_a = _c.return)) _a.call(_c);
237
+ }
238
+ finally { if (e_2) throw e_2.error; }
206
239
  }
207
240
  this._currentCues = [];
208
- for (var i = 0; i < elements.length; i++) {
209
- var element = elements[i];
210
- var resolution = getElementResolution(element);
211
- this._currentCues.push({ element: element, resolution: resolution });
212
- this._textTrackElement.appendChild(element);
241
+ try {
242
+ for (var elements_1 = __values(elements), elements_1_1 = elements_1.next(); !elements_1_1.done; elements_1_1 = elements_1.next()) {
243
+ var element = elements_1_1.value;
244
+ var resolution = getElementResolution(element);
245
+ this._currentCues.push({ element: element, resolution: resolution });
246
+ this._textTrackElement.appendChild(element);
247
+ }
248
+ }
249
+ catch (e_3_1) { e_3 = { error: e_3_1 }; }
250
+ finally {
251
+ try {
252
+ if (elements_1_1 && !elements_1_1.done && (_b = elements_1.return)) _b.call(elements_1);
253
+ }
254
+ finally { if (e_3) throw e_3.error; }
213
255
  }
214
256
  var proportionalCues = this._currentCues.filter(function (cue) { return cue.resolution !== null; });
215
257
  if (proportionalCues.length > 0) {
@@ -219,10 +261,21 @@ var HTMLTextDisplayer = /** @class */ (function () {
219
261
  // update propertionally-sized elements periodically
220
262
  var heightWidthRef = (0, on_height_width_change_1.default)(this._textTrackElement, TEXT_TRACK_SIZE_CHECKS_INTERVAL, this._sizeUpdateCanceller.signal);
221
263
  heightWidthRef.onUpdate(function (_a) {
264
+ var e_4, _b;
222
265
  var height = _a.height, width = _a.width;
223
- for (var i = 0; i < proportionalCues.length; i++) {
224
- var _b = proportionalCues[i], resolution = _b.resolution, element = _b.element;
225
- (0, update_proportional_elements_1.default)(height, width, resolution, element);
266
+ try {
267
+ for (var proportionalCues_1 = __values(proportionalCues), proportionalCues_1_1 = proportionalCues_1.next(); !proportionalCues_1_1.done; proportionalCues_1_1 = proportionalCues_1.next()) {
268
+ var cue = proportionalCues_1_1.value;
269
+ var resolution = cue.resolution, element = cue.element;
270
+ (0, update_proportional_elements_1.default)(height, width, resolution, element);
271
+ }
272
+ }
273
+ catch (e_4_1) { e_4 = { error: e_4_1 }; }
274
+ finally {
275
+ try {
276
+ if (proportionalCues_1_1 && !proportionalCues_1_1.done && (_b = proportionalCues_1.return)) _b.call(proportionalCues_1);
277
+ }
278
+ finally { if (e_4) throw e_4.error; }
226
279
  }
227
280
  }, {
228
281
  clearSignal: this._sizeUpdateCanceller.signal,
@@ -1,4 +1,15 @@
1
1
  "use strict";
2
+ var __values = (this && this.__values) || function(o) {
3
+ var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
4
+ if (m) return m.call(o);
5
+ if (o && typeof o.length === "number") return {
6
+ next: function () {
7
+ if (o && i >= o.length) o = void 0;
8
+ return { value: o && o[i++], done: !o };
9
+ }
10
+ };
11
+ throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
12
+ };
2
13
  var __read = (this && this.__read) || function (o, n) {
3
14
  var m = typeof Symbol === "function" && o[Symbol.iterator];
4
15
  if (!m) return o;
@@ -66,6 +77,7 @@ var TextTrackCuesStore = /** @class */ (function () {
66
77
  * time.
67
78
  */
68
79
  TextTrackCuesStore.prototype.get = function (time) {
80
+ var e_1, _a, e_2, _b;
69
81
  var cuesBuffer = this._cuesBuffer;
70
82
  var ret = [];
71
83
  // begins at the end as most of the time the player will ask for the last
@@ -74,21 +86,41 @@ var TextTrackCuesStore = /** @class */ (function () {
74
86
  var segment = cuesBuffer[cueIdx];
75
87
  if (time < segment.end && time >= segment.start) {
76
88
  var cues = segment.cues;
77
- for (var j = 0; j < cues.length; j++) {
78
- if (time >= cues[j].start && time < cues[j].end) {
79
- ret.push(cues[j].element);
89
+ try {
90
+ for (var cues_1 = (e_1 = void 0, __values(cues)), cues_1_1 = cues_1.next(); !cues_1_1.done; cues_1_1 = cues_1.next()) {
91
+ var cue = cues_1_1.value;
92
+ if (time >= cue.start && time < cue.end) {
93
+ ret.push(cue.element);
94
+ }
80
95
  }
81
96
  }
97
+ catch (e_1_1) { e_1 = { error: e_1_1 }; }
98
+ finally {
99
+ try {
100
+ if (cues_1_1 && !cues_1_1.done && (_a = cues_1.return)) _a.call(cues_1);
101
+ }
102
+ finally { if (e_1) throw e_1.error; }
103
+ }
82
104
  // first or last IHTMLCue in a group can have a slighlty different start
83
105
  // or end time than the start or end time of the ICuesGroup due to parsing
84
106
  // approximation.
85
107
  // Add a tolerance of 1ms to fix this issue
86
108
  if (ret.length === 0 && cues.length > 0) {
87
- for (var j = 0; j < cues.length; j++) {
88
- if ((0, utils_1.areNearlyEqual)(time, cues[j].start, DELTA_CUES_GROUP) ||
89
- (0, utils_1.areNearlyEqual)(time, cues[j].end, DELTA_CUES_GROUP)) {
90
- ret.push(cues[j].element);
109
+ try {
110
+ for (var cues_2 = (e_2 = void 0, __values(cues)), cues_2_1 = cues_2.next(); !cues_2_1.done; cues_2_1 = cues_2.next()) {
111
+ var cue = cues_2_1.value;
112
+ if ((0, utils_1.areNearlyEqual)(time, cue.start, DELTA_CUES_GROUP) ||
113
+ (0, utils_1.areNearlyEqual)(time, cue.end, DELTA_CUES_GROUP)) {
114
+ ret.push(cue.element);
115
+ }
116
+ }
117
+ }
118
+ catch (e_2_1) { e_2 = { error: e_2_1 }; }
119
+ finally {
120
+ try {
121
+ if (cues_2_1 && !cues_2_1.done && (_b = cues_2.return)) _b.call(cues_2);
91
122
  }
123
+ finally { if (e_2) throw e_2.error; }
92
124
  }
93
125
  }
94
126
  return ret;