rx-player 4.2.0-dev.2024082600 → 4.2.0-dev.2024090500

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 (628) hide show
  1. package/CHANGELOG.md +12 -3
  2. package/VERSION +1 -1
  3. package/dist/commonjs/__GENERATED_CODE/embedded_dash_wasm.d.ts.map +1 -1
  4. package/dist/commonjs/__GENERATED_CODE/embedded_dash_wasm.js +1 -1
  5. package/dist/commonjs/__GENERATED_CODE/embedded_worker.d.ts.map +1 -1
  6. package/dist/commonjs/__GENERATED_CODE/embedded_worker.js +1 -1
  7. package/dist/commonjs/compat/add_class_name.d.ts.map +1 -1
  8. package/dist/commonjs/compat/add_class_name.js +1 -2
  9. package/dist/commonjs/compat/browser_compatibility_types.d.ts.map +1 -1
  10. package/dist/commonjs/compat/browser_compatibility_types.js +4 -1
  11. package/dist/commonjs/compat/browser_detection.d.ts +3 -1
  12. package/dist/commonjs/compat/browser_detection.d.ts.map +1 -1
  13. package/dist/commonjs/compat/browser_detection.js +8 -1
  14. package/dist/commonjs/compat/can_reuse_media_keys.d.ts +2 -0
  15. package/dist/commonjs/compat/can_reuse_media_keys.d.ts.map +1 -1
  16. package/dist/commonjs/compat/can_reuse_media_keys.js +3 -1
  17. package/dist/commonjs/compat/clear_element_src.js +1 -1
  18. package/dist/commonjs/compat/eme/custom_media_keys/moz_media_keys_constructor.d.ts.map +1 -1
  19. package/dist/commonjs/compat/eme/custom_media_keys/moz_media_keys_constructor.js +2 -4
  20. package/dist/commonjs/compat/eme/custom_media_keys/ms_media_keys_constructor.d.ts.map +1 -1
  21. package/dist/commonjs/compat/eme/custom_media_keys/ms_media_keys_constructor.js +2 -4
  22. package/dist/commonjs/compat/eme/custom_media_keys/old_webkit_media_keys.d.ts.map +1 -1
  23. package/dist/commonjs/compat/eme/custom_media_keys/old_webkit_media_keys.js +3 -6
  24. package/dist/commonjs/compat/eme/custom_media_keys/webkit_media_keys.d.ts.map +1 -1
  25. package/dist/commonjs/compat/eme/custom_media_keys/webkit_media_keys.js +2 -17
  26. package/dist/commonjs/compat/eme/custom_media_keys/webkit_media_keys_constructor.d.ts.map +1 -1
  27. package/dist/commonjs/compat/eme/custom_media_keys/webkit_media_keys_constructor.js +1 -2
  28. package/dist/commonjs/compat/eme/eme-api-implementation.js +0 -2
  29. package/dist/commonjs/compat/event_listeners.d.ts.map +1 -1
  30. package/dist/commonjs/compat/event_listeners.js +2 -6
  31. package/dist/commonjs/compat/has_mse_in_worker.js +1 -1
  32. package/dist/commonjs/compat/is_codec_supported.d.ts.map +1 -1
  33. package/dist/commonjs/compat/is_codec_supported.js +0 -2
  34. package/dist/commonjs/compat/is_vtt_cue.d.ts.map +1 -1
  35. package/dist/commonjs/compat/is_vtt_cue.js +1 -2
  36. package/dist/commonjs/compat/on_height_width_change.d.ts.map +1 -1
  37. package/dist/commonjs/compat/patch_webkit_source_buffer.d.ts.map +1 -1
  38. package/dist/commonjs/compat/patch_webkit_source_buffer.js +8 -18
  39. package/dist/commonjs/compat/remove_cue.js +2 -2
  40. package/dist/commonjs/core/cmcd/cmcd_data_builder.js +1 -1
  41. package/dist/commonjs/core/fetchers/index.d.ts +4 -4
  42. package/dist/commonjs/core/fetchers/index.d.ts.map +1 -1
  43. package/dist/commonjs/core/fetchers/index.js +2 -2
  44. package/dist/commonjs/core/fetchers/segment/index.d.ts +6 -5
  45. package/dist/commonjs/core/fetchers/segment/index.d.ts.map +1 -1
  46. package/dist/commonjs/core/fetchers/segment/index.js +2 -2
  47. package/dist/commonjs/core/{stream/representation/utils/downloading_queue.d.ts → fetchers/segment/segment_queue.d.ts} +63 -80
  48. package/dist/commonjs/core/fetchers/segment/segment_queue.d.ts.map +1 -0
  49. package/dist/commonjs/core/{stream/representation/utils/downloading_queue.js → fetchers/segment/segment_queue.js} +132 -111
  50. package/dist/{es2017/core/fetchers/segment/segment_fetcher_creator.d.ts → commonjs/core/fetchers/segment/segment_queue_creator.d.ts} +25 -12
  51. package/dist/commonjs/core/fetchers/segment/segment_queue_creator.d.ts.map +1 -0
  52. package/dist/commonjs/core/fetchers/segment/{segment_fetcher_creator.js → segment_queue_creator.js} +15 -9
  53. package/dist/commonjs/core/fetchers/segment/task_prioritizer.d.ts +9 -0
  54. package/dist/commonjs/core/fetchers/segment/task_prioritizer.d.ts.map +1 -1
  55. package/dist/commonjs/core/fetchers/segment/task_prioritizer.js +38 -8
  56. package/dist/commonjs/core/fetchers/utils/schedule_request.js +1 -1
  57. package/dist/commonjs/core/main/common/content_time_boundaries_observer.js +21 -10
  58. package/dist/commonjs/core/main/worker/content_preparer.d.ts +3 -3
  59. package/dist/commonjs/core/main/worker/content_preparer.d.ts.map +1 -1
  60. package/dist/commonjs/core/main/worker/content_preparer.js +2 -2
  61. package/dist/commonjs/core/main/worker/send_message.js +1 -1
  62. package/dist/commonjs/core/main/worker/worker_main.js +3 -2
  63. package/dist/commonjs/core/segment_sinks/implementations/text/text_segment_buffer.js +1 -5
  64. package/dist/commonjs/core/segment_sinks/inventory/segment_inventory.js +39 -30
  65. package/dist/commonjs/core/segment_sinks/segment_buffers_store.d.ts.map +1 -1
  66. package/dist/commonjs/core/segment_sinks/segment_buffers_store.js +3 -2
  67. package/dist/commonjs/core/stream/adaptation/adaptation_stream.d.ts +1 -1
  68. package/dist/commonjs/core/stream/adaptation/adaptation_stream.d.ts.map +1 -1
  69. package/dist/commonjs/core/stream/adaptation/adaptation_stream.js +3 -3
  70. package/dist/commonjs/core/stream/adaptation/types.d.ts +2 -2
  71. package/dist/commonjs/core/stream/adaptation/types.d.ts.map +1 -1
  72. package/dist/commonjs/core/stream/orchestrator/get_time_ranges_for_content.d.ts.map +1 -1
  73. package/dist/commonjs/core/stream/orchestrator/get_time_ranges_for_content.js +27 -6
  74. package/dist/commonjs/core/stream/orchestrator/stream_orchestrator.d.ts +3 -3
  75. package/dist/commonjs/core/stream/orchestrator/stream_orchestrator.d.ts.map +1 -1
  76. package/dist/commonjs/core/stream/orchestrator/stream_orchestrator.js +3 -3
  77. package/dist/commonjs/core/stream/period/period_stream.d.ts +1 -1
  78. package/dist/commonjs/core/stream/period/period_stream.d.ts.map +1 -1
  79. package/dist/commonjs/core/stream/period/period_stream.js +2 -2
  80. package/dist/commonjs/core/stream/period/types.d.ts +2 -2
  81. package/dist/commonjs/core/stream/period/types.d.ts.map +1 -1
  82. package/dist/commonjs/core/stream/representation/representation_stream.d.ts +1 -1
  83. package/dist/commonjs/core/stream/representation/representation_stream.d.ts.map +1 -1
  84. package/dist/commonjs/core/stream/representation/representation_stream.js +19 -28
  85. package/dist/commonjs/core/stream/representation/types.d.ts +2 -2
  86. package/dist/commonjs/core/stream/representation/types.d.ts.map +1 -1
  87. package/dist/commonjs/core/stream/representation/utils/get_needed_segments.d.ts.map +1 -1
  88. package/dist/commonjs/core/stream/representation/utils/get_needed_segments.js +39 -18
  89. package/dist/commonjs/core/types.d.ts +2 -2
  90. package/dist/commonjs/core/types.d.ts.map +1 -1
  91. package/dist/commonjs/default_config.d.ts.map +1 -1
  92. package/dist/commonjs/default_config.js +0 -8
  93. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/decodingInfo.d.ts.map +1 -1
  94. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/decodingInfo.js +0 -13
  95. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/defaultCodecsFinder.d.ts.map +1 -1
  96. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/defaultCodecsFinder.js +0 -4
  97. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/mediaContentType.d.ts.map +1 -1
  98. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/mediaContentType.js +1 -2
  99. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/index.d.ts.map +1 -1
  100. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/index.js +2 -13
  101. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/mediaDisplayInfos.d.ts.map +1 -1
  102. package/dist/commonjs/experimental/tools/mediaCapabilitiesProber/probers/mediaDisplayInfos.js +1 -2
  103. package/dist/commonjs/features/add_features.d.ts.map +1 -1
  104. package/dist/commonjs/features/add_features.js +31 -10
  105. package/dist/commonjs/main_thread/api/option_utils.d.ts.map +1 -1
  106. package/dist/commonjs/main_thread/api/option_utils.js +2 -6
  107. package/dist/commonjs/main_thread/api/public_api.d.ts.map +1 -1
  108. package/dist/commonjs/main_thread/api/public_api.js +33 -27
  109. package/dist/commonjs/main_thread/decrypt/utils/persistent_sessions_store.d.ts.map +1 -1
  110. package/dist/commonjs/main_thread/decrypt/utils/persistent_sessions_store.js +4 -3
  111. package/dist/commonjs/main_thread/init/media_source_content_initializer.js +6 -6
  112. package/dist/commonjs/main_thread/init/multi_thread_content_initializer.d.ts.map +1 -1
  113. package/dist/commonjs/main_thread/init/multi_thread_content_initializer.js +32 -37
  114. package/dist/commonjs/main_thread/text_displayer/html/html_text_displayer.js +1 -5
  115. package/dist/commonjs/main_thread/text_displayer/native/native_text_displayer.js +3 -7
  116. package/dist/commonjs/main_thread/tracks_store/track_dispatcher.js +1 -1
  117. package/dist/commonjs/main_thread/types.d.ts.map +1 -1
  118. package/dist/commonjs/manifest/classes/adaptation.d.ts +13 -13
  119. package/dist/commonjs/manifest/classes/manifest.d.ts.map +1 -1
  120. package/dist/commonjs/manifest/classes/manifest.js +0 -6
  121. package/dist/commonjs/manifest/classes/representation.d.ts +20 -12
  122. package/dist/commonjs/manifest/classes/representation.d.ts.map +1 -1
  123. package/dist/commonjs/manifest/utils.d.ts.map +1 -1
  124. package/dist/commonjs/manifest/utils.js +72 -62
  125. package/dist/commonjs/mse/main_media_source_interface.js +1 -1
  126. package/dist/commonjs/multithread_types.d.ts +2 -2
  127. package/dist/commonjs/multithread_types.d.ts.map +1 -1
  128. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/parse_s_element.d.ts.map +1 -1
  129. package/dist/commonjs/parsers/manifest/dash/common/indexes/timeline/parse_s_element.js +12 -6
  130. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/AdaptationSet.d.ts.map +1 -1
  131. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/AdaptationSet.js +14 -7
  132. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/MPD.d.ts.map +1 -1
  133. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/MPD.js +8 -4
  134. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/Period.d.ts.map +1 -1
  135. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/Period.js +10 -5
  136. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/Representation.d.ts.map +1 -1
  137. package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/Representation.js +10 -5
  138. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/AdaptationSet.d.ts.map +1 -1
  139. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/AdaptationSet.js +14 -7
  140. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/EventStream.d.ts.map +1 -1
  141. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/EventStream.js +2 -1
  142. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/MPD.d.ts.map +1 -1
  143. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/MPD.js +8 -4
  144. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/Period.d.ts.map +1 -1
  145. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/Period.js +10 -5
  146. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/Representation.d.ts.map +1 -1
  147. package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/Representation.js +10 -5
  148. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/dash-wasm-parser.d.ts.map +1 -1
  149. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/AdaptationSet.d.ts.map +1 -1
  150. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/AdaptationSet.js +2 -1
  151. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/ContentProtection.d.ts.map +1 -1
  152. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/ContentProtection.js +2 -1
  153. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/EventStream.d.ts.map +1 -1
  154. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/EventStream.js +4 -2
  155. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/MPD.d.ts.map +1 -1
  156. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/MPD.js +10 -5
  157. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/Period.d.ts.map +1 -1
  158. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/Period.js +2 -1
  159. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/root.d.ts.map +1 -1
  160. package/dist/commonjs/parsers/manifest/dash/wasm-parser/ts/generators/root.js +2 -1
  161. package/dist/commonjs/parsers/manifest/local/representation_index.d.ts.map +1 -1
  162. package/dist/commonjs/parsers/manifest/local/representation_index.js +29 -8
  163. package/dist/commonjs/parsers/manifest/metaplaylist/metaplaylist_parser.d.ts.map +1 -1
  164. package/dist/commonjs/parsers/manifest/metaplaylist/metaplaylist_parser.js +31 -10
  165. package/dist/commonjs/parsers/manifest/smooth/create_parser.d.ts.map +1 -1
  166. package/dist/commonjs/parsers/manifest/smooth/create_parser.js +2 -1
  167. package/dist/commonjs/parsers/manifest/smooth/shared_smooth_segment_timeline.js +26 -4
  168. package/dist/commonjs/parsers/manifest/utils/get_first_time_from_adaptation.js +29 -7
  169. package/dist/commonjs/parsers/manifest/utils/get_last_time_from_adaptation.js +29 -7
  170. package/dist/commonjs/parsers/texttracks/srt/html.js +28 -6
  171. package/dist/commonjs/parsers/texttracks/ttml/html/create_element.js +1 -1
  172. package/dist/commonjs/parsers/texttracks/ttml/html/parse_ttml_to_div.js +29 -7
  173. package/dist/commonjs/parsers/texttracks/ttml/native/parse_ttml_to_vtt.d.ts.map +1 -1
  174. package/dist/commonjs/parsers/texttracks/ttml/native/parse_ttml_to_vtt.js +26 -5
  175. package/dist/commonjs/parsers/texttracks/ttml/resolve_styles_inheritance.d.ts.map +1 -1
  176. package/dist/commonjs/parsers/texttracks/ttml/resolve_styles_inheritance.js +25 -4
  177. package/dist/commonjs/parsers/texttracks/webvtt/html/to_html.d.ts +9 -3
  178. package/dist/commonjs/parsers/texttracks/webvtt/html/to_html.d.ts.map +1 -1
  179. package/dist/commonjs/parsers/texttracks/webvtt/html/to_html.js +9 -3
  180. package/dist/commonjs/parsers/texttracks/webvtt/native/parse_vtt_to_cues.js +30 -8
  181. package/dist/commonjs/public_types.d.ts +5 -7
  182. package/dist/commonjs/public_types.d.ts.map +1 -1
  183. package/dist/commonjs/transports/smooth/extract_timings_infos.js +30 -8
  184. package/dist/commonjs/utils/array_find.d.ts +1 -1
  185. package/dist/commonjs/utils/array_find.d.ts.map +1 -1
  186. package/dist/commonjs/utils/array_find.js +3 -1
  187. package/dist/commonjs/utils/array_find_index.d.ts +1 -1
  188. package/dist/commonjs/utils/array_find_index.d.ts.map +1 -1
  189. package/dist/commonjs/utils/array_find_index.js +3 -1
  190. package/dist/commonjs/utils/array_includes.d.ts.map +1 -1
  191. package/dist/commonjs/utils/array_includes.js +1 -3
  192. package/dist/commonjs/utils/assert.d.ts.map +1 -1
  193. package/dist/commonjs/utils/assert.js +0 -2
  194. package/dist/commonjs/utils/base64.d.ts +1 -1
  195. package/dist/commonjs/utils/base64.d.ts.map +1 -1
  196. package/dist/commonjs/utils/base64.js +3 -2
  197. package/dist/commonjs/utils/event_emitter.js +1 -1
  198. package/dist/commonjs/utils/flat_map.d.ts.map +1 -1
  199. package/dist/commonjs/utils/flat_map.js +1 -2
  200. package/dist/commonjs/utils/id_generator.d.ts.map +1 -1
  201. package/dist/commonjs/utils/id_generator.js +0 -1
  202. package/dist/commonjs/utils/logger.js +1 -1
  203. package/dist/commonjs/utils/monotonic_timestamp.js +2 -2
  204. package/dist/commonjs/utils/noop.js +1 -2
  205. package/dist/commonjs/utils/object_assign.d.ts.map +1 -1
  206. package/dist/commonjs/utils/object_assign.js +27 -6
  207. package/dist/commonjs/utils/object_values.d.ts.map +1 -1
  208. package/dist/commonjs/utils/object_values.js +1 -1
  209. package/dist/commonjs/utils/reference.js +1 -1
  210. package/dist/commonjs/utils/request/xhr.js +1 -1
  211. package/dist/es2017/__GENERATED_CODE/embedded_dash_wasm.d.ts.map +1 -1
  212. package/dist/es2017/__GENERATED_CODE/embedded_dash_wasm.js +1 -1
  213. package/dist/es2017/__GENERATED_CODE/embedded_worker.d.ts.map +1 -1
  214. package/dist/es2017/__GENERATED_CODE/embedded_worker.js +1 -1
  215. package/dist/es2017/compat/add_class_name.d.ts.map +1 -1
  216. package/dist/es2017/compat/add_class_name.js +1 -2
  217. package/dist/es2017/compat/browser_compatibility_types.d.ts.map +1 -1
  218. package/dist/es2017/compat/browser_compatibility_types.js +4 -1
  219. package/dist/es2017/compat/browser_detection.d.ts +3 -1
  220. package/dist/es2017/compat/browser_detection.d.ts.map +1 -1
  221. package/dist/es2017/compat/browser_detection.js +7 -1
  222. package/dist/es2017/compat/can_reuse_media_keys.d.ts +2 -0
  223. package/dist/es2017/compat/can_reuse_media_keys.d.ts.map +1 -1
  224. package/dist/es2017/compat/can_reuse_media_keys.js +4 -2
  225. package/dist/es2017/compat/clear_element_src.js +1 -1
  226. package/dist/es2017/compat/eme/custom_media_keys/moz_media_keys_constructor.d.ts.map +1 -1
  227. package/dist/es2017/compat/eme/custom_media_keys/moz_media_keys_constructor.js +2 -4
  228. package/dist/es2017/compat/eme/custom_media_keys/ms_media_keys_constructor.d.ts.map +1 -1
  229. package/dist/es2017/compat/eme/custom_media_keys/ms_media_keys_constructor.js +2 -4
  230. package/dist/es2017/compat/eme/custom_media_keys/old_webkit_media_keys.d.ts.map +1 -1
  231. package/dist/es2017/compat/eme/custom_media_keys/old_webkit_media_keys.js +3 -6
  232. package/dist/es2017/compat/eme/custom_media_keys/webkit_media_keys.d.ts.map +1 -1
  233. package/dist/es2017/compat/eme/custom_media_keys/webkit_media_keys.js +2 -17
  234. package/dist/es2017/compat/eme/custom_media_keys/webkit_media_keys_constructor.d.ts.map +1 -1
  235. package/dist/es2017/compat/eme/custom_media_keys/webkit_media_keys_constructor.js +1 -2
  236. package/dist/es2017/compat/eme/eme-api-implementation.js +0 -2
  237. package/dist/es2017/compat/event_listeners.d.ts.map +1 -1
  238. package/dist/es2017/compat/event_listeners.js +2 -6
  239. package/dist/es2017/compat/has_mse_in_worker.js +1 -1
  240. package/dist/es2017/compat/is_codec_supported.d.ts.map +1 -1
  241. package/dist/es2017/compat/is_codec_supported.js +0 -2
  242. package/dist/es2017/compat/is_vtt_cue.d.ts.map +1 -1
  243. package/dist/es2017/compat/is_vtt_cue.js +1 -2
  244. package/dist/es2017/compat/on_height_width_change.d.ts.map +1 -1
  245. package/dist/es2017/compat/patch_webkit_source_buffer.d.ts.map +1 -1
  246. package/dist/es2017/compat/patch_webkit_source_buffer.js +8 -18
  247. package/dist/es2017/compat/remove_cue.js +2 -2
  248. package/dist/es2017/core/cmcd/cmcd_data_builder.js +1 -1
  249. package/dist/es2017/core/fetchers/index.d.ts +4 -4
  250. package/dist/es2017/core/fetchers/index.d.ts.map +1 -1
  251. package/dist/es2017/core/fetchers/index.js +2 -2
  252. package/dist/es2017/core/fetchers/segment/index.d.ts +6 -5
  253. package/dist/es2017/core/fetchers/segment/index.d.ts.map +1 -1
  254. package/dist/es2017/core/fetchers/segment/index.js +2 -2
  255. package/dist/es2017/core/{stream/representation/utils/downloading_queue.d.ts → fetchers/segment/segment_queue.d.ts} +63 -80
  256. package/dist/es2017/core/fetchers/segment/segment_queue.d.ts.map +1 -0
  257. package/dist/es2017/core/{stream/representation/utils/downloading_queue.js → fetchers/segment/segment_queue.js} +126 -105
  258. package/dist/{commonjs/core/fetchers/segment/segment_fetcher_creator.d.ts → es2017/core/fetchers/segment/segment_queue_creator.d.ts} +25 -12
  259. package/dist/es2017/core/fetchers/segment/segment_queue_creator.d.ts.map +1 -0
  260. package/dist/es2017/core/fetchers/segment/{segment_fetcher_creator.js → segment_queue_creator.js} +12 -6
  261. package/dist/es2017/core/fetchers/segment/task_prioritizer.d.ts +9 -0
  262. package/dist/es2017/core/fetchers/segment/task_prioritizer.d.ts.map +1 -1
  263. package/dist/es2017/core/fetchers/segment/task_prioritizer.js +10 -2
  264. package/dist/es2017/core/fetchers/utils/schedule_request.js +1 -1
  265. package/dist/es2017/core/main/common/content_time_boundaries_observer.js +4 -4
  266. package/dist/es2017/core/main/worker/content_preparer.d.ts +3 -3
  267. package/dist/es2017/core/main/worker/content_preparer.d.ts.map +1 -1
  268. package/dist/es2017/core/main/worker/content_preparer.js +3 -3
  269. package/dist/es2017/core/main/worker/send_message.js +1 -1
  270. package/dist/es2017/core/main/worker/worker_main.js +3 -2
  271. package/dist/es2017/core/segment_sinks/implementations/text/text_segment_buffer.js +1 -5
  272. package/dist/es2017/core/segment_sinks/inventory/segment_inventory.js +1 -2
  273. package/dist/es2017/core/segment_sinks/segment_buffers_store.d.ts.map +1 -1
  274. package/dist/es2017/core/segment_sinks/segment_buffers_store.js +3 -2
  275. package/dist/es2017/core/stream/adaptation/adaptation_stream.d.ts +1 -1
  276. package/dist/es2017/core/stream/adaptation/adaptation_stream.d.ts.map +1 -1
  277. package/dist/es2017/core/stream/adaptation/adaptation_stream.js +3 -3
  278. package/dist/es2017/core/stream/adaptation/types.d.ts +2 -2
  279. package/dist/es2017/core/stream/adaptation/types.d.ts.map +1 -1
  280. package/dist/es2017/core/stream/orchestrator/get_time_ranges_for_content.d.ts.map +1 -1
  281. package/dist/es2017/core/stream/orchestrator/get_time_ranges_for_content.js +1 -2
  282. package/dist/es2017/core/stream/orchestrator/stream_orchestrator.d.ts +3 -3
  283. package/dist/es2017/core/stream/orchestrator/stream_orchestrator.d.ts.map +1 -1
  284. package/dist/es2017/core/stream/orchestrator/stream_orchestrator.js +3 -3
  285. package/dist/es2017/core/stream/period/period_stream.d.ts +1 -1
  286. package/dist/es2017/core/stream/period/period_stream.d.ts.map +1 -1
  287. package/dist/es2017/core/stream/period/period_stream.js +2 -2
  288. package/dist/es2017/core/stream/period/types.d.ts +2 -2
  289. package/dist/es2017/core/stream/period/types.d.ts.map +1 -1
  290. package/dist/es2017/core/stream/representation/representation_stream.d.ts +1 -1
  291. package/dist/es2017/core/stream/representation/representation_stream.d.ts.map +1 -1
  292. package/dist/es2017/core/stream/representation/representation_stream.js +19 -28
  293. package/dist/es2017/core/stream/representation/types.d.ts +2 -2
  294. package/dist/es2017/core/stream/representation/types.d.ts.map +1 -1
  295. package/dist/es2017/core/stream/representation/utils/get_needed_segments.d.ts.map +1 -1
  296. package/dist/es2017/core/stream/representation/utils/get_needed_segments.js +1 -2
  297. package/dist/es2017/core/types.d.ts +2 -2
  298. package/dist/es2017/core/types.d.ts.map +1 -1
  299. package/dist/es2017/default_config.d.ts.map +1 -1
  300. package/dist/es2017/default_config.js +0 -8
  301. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/decodingInfo.d.ts.map +1 -1
  302. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/decodingInfo.js +0 -13
  303. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/defaultCodecsFinder.d.ts.map +1 -1
  304. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/defaultCodecsFinder.js +0 -4
  305. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/mediaContentType.d.ts.map +1 -1
  306. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/mediaContentType.js +1 -2
  307. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/index.d.ts.map +1 -1
  308. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/index.js +2 -13
  309. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/mediaDisplayInfos.d.ts.map +1 -1
  310. package/dist/es2017/experimental/tools/mediaCapabilitiesProber/probers/mediaDisplayInfos.js +1 -2
  311. package/dist/es2017/features/add_features.d.ts.map +1 -1
  312. package/dist/es2017/features/add_features.js +1 -2
  313. package/dist/es2017/main_thread/api/option_utils.d.ts.map +1 -1
  314. package/dist/es2017/main_thread/api/option_utils.js +2 -6
  315. package/dist/es2017/main_thread/api/public_api.d.ts.map +1 -1
  316. package/dist/es2017/main_thread/api/public_api.js +29 -23
  317. package/dist/es2017/main_thread/decrypt/utils/persistent_sessions_store.d.ts.map +1 -1
  318. package/dist/es2017/main_thread/decrypt/utils/persistent_sessions_store.js +2 -1
  319. package/dist/es2017/main_thread/init/media_source_content_initializer.js +6 -6
  320. package/dist/es2017/main_thread/init/multi_thread_content_initializer.d.ts.map +1 -1
  321. package/dist/es2017/main_thread/init/multi_thread_content_initializer.js +7 -12
  322. package/dist/es2017/main_thread/text_displayer/html/html_text_displayer.js +1 -5
  323. package/dist/es2017/main_thread/text_displayer/native/native_text_displayer.js +3 -7
  324. package/dist/es2017/main_thread/tracks_store/track_dispatcher.js +1 -1
  325. package/dist/es2017/main_thread/types.d.ts.map +1 -1
  326. package/dist/es2017/manifest/classes/adaptation.d.ts +13 -13
  327. package/dist/es2017/manifest/classes/manifest.d.ts.map +1 -1
  328. package/dist/es2017/manifest/classes/manifest.js +0 -6
  329. package/dist/es2017/manifest/classes/representation.d.ts +20 -12
  330. package/dist/es2017/manifest/classes/representation.d.ts.map +1 -1
  331. package/dist/es2017/manifest/utils.d.ts.map +1 -1
  332. package/dist/es2017/manifest/utils.js +1 -2
  333. package/dist/es2017/mse/main_media_source_interface.js +1 -1
  334. package/dist/es2017/multithread_types.d.ts +2 -2
  335. package/dist/es2017/multithread_types.d.ts.map +1 -1
  336. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/parse_s_element.d.ts.map +1 -1
  337. package/dist/es2017/parsers/manifest/dash/common/indexes/timeline/parse_s_element.js +12 -6
  338. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/AdaptationSet.d.ts.map +1 -1
  339. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/AdaptationSet.js +14 -7
  340. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/MPD.d.ts.map +1 -1
  341. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/MPD.js +8 -4
  342. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/Period.d.ts.map +1 -1
  343. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/Period.js +10 -5
  344. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/Representation.d.ts.map +1 -1
  345. package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/Representation.js +10 -5
  346. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/AdaptationSet.d.ts.map +1 -1
  347. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/AdaptationSet.js +14 -7
  348. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/EventStream.d.ts.map +1 -1
  349. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/EventStream.js +2 -1
  350. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/MPD.d.ts.map +1 -1
  351. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/MPD.js +8 -4
  352. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/Period.d.ts.map +1 -1
  353. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/Period.js +10 -5
  354. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/Representation.d.ts.map +1 -1
  355. package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/Representation.js +10 -5
  356. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/dash-wasm-parser.d.ts.map +1 -1
  357. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/dash-wasm-parser.js +1 -2
  358. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/AdaptationSet.d.ts.map +1 -1
  359. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/AdaptationSet.js +2 -1
  360. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/ContentProtection.d.ts.map +1 -1
  361. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/ContentProtection.js +2 -1
  362. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/EventStream.d.ts.map +1 -1
  363. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/EventStream.js +4 -2
  364. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/MPD.d.ts.map +1 -1
  365. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/MPD.js +10 -5
  366. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/Period.d.ts.map +1 -1
  367. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/Period.js +2 -1
  368. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/root.d.ts.map +1 -1
  369. package/dist/es2017/parsers/manifest/dash/wasm-parser/ts/generators/root.js +2 -1
  370. package/dist/es2017/parsers/manifest/local/representation_index.d.ts.map +1 -1
  371. package/dist/es2017/parsers/manifest/local/representation_index.js +1 -2
  372. package/dist/es2017/parsers/manifest/metaplaylist/metaplaylist_parser.d.ts.map +1 -1
  373. package/dist/es2017/parsers/manifest/metaplaylist/metaplaylist_parser.js +2 -3
  374. package/dist/es2017/parsers/manifest/smooth/create_parser.d.ts.map +1 -1
  375. package/dist/es2017/parsers/manifest/smooth/create_parser.js +2 -1
  376. package/dist/es2017/parsers/manifest/smooth/shared_smooth_segment_timeline.js +2 -2
  377. package/dist/es2017/parsers/manifest/utils/get_first_time_from_adaptation.js +2 -2
  378. package/dist/es2017/parsers/manifest/utils/get_last_time_from_adaptation.js +2 -2
  379. package/dist/es2017/parsers/texttracks/srt/html.js +2 -2
  380. package/dist/es2017/parsers/texttracks/ttml/html/create_element.js +1 -1
  381. package/dist/es2017/parsers/texttracks/ttml/html/parse_ttml_to_div.js +3 -3
  382. package/dist/es2017/parsers/texttracks/ttml/native/parse_ttml_to_vtt.d.ts.map +1 -1
  383. package/dist/es2017/parsers/texttracks/ttml/native/parse_ttml_to_vtt.js +1 -2
  384. package/dist/es2017/parsers/texttracks/ttml/resolve_styles_inheritance.d.ts.map +1 -1
  385. package/dist/es2017/parsers/texttracks/ttml/resolve_styles_inheritance.js +1 -2
  386. package/dist/es2017/parsers/texttracks/webvtt/html/to_html.d.ts +9 -3
  387. package/dist/es2017/parsers/texttracks/webvtt/html/to_html.d.ts.map +1 -1
  388. package/dist/es2017/parsers/texttracks/webvtt/html/to_html.js +9 -3
  389. package/dist/es2017/parsers/texttracks/webvtt/native/parse_vtt_to_cues.js +2 -2
  390. package/dist/es2017/public_types.d.ts +5 -7
  391. package/dist/es2017/public_types.d.ts.map +1 -1
  392. package/dist/es2017/transports/smooth/extract_timings_infos.js +3 -3
  393. package/dist/es2017/utils/array_find.d.ts +1 -1
  394. package/dist/es2017/utils/array_find.d.ts.map +1 -1
  395. package/dist/es2017/utils/array_find.js +3 -1
  396. package/dist/es2017/utils/array_find_index.d.ts +1 -1
  397. package/dist/es2017/utils/array_find_index.d.ts.map +1 -1
  398. package/dist/es2017/utils/array_find_index.js +3 -1
  399. package/dist/es2017/utils/array_includes.d.ts.map +1 -1
  400. package/dist/es2017/utils/array_includes.js +1 -3
  401. package/dist/es2017/utils/assert.d.ts.map +1 -1
  402. package/dist/es2017/utils/assert.js +0 -2
  403. package/dist/es2017/utils/base64.d.ts +1 -1
  404. package/dist/es2017/utils/base64.d.ts.map +1 -1
  405. package/dist/es2017/utils/base64.js +3 -2
  406. package/dist/es2017/utils/event_emitter.js +1 -1
  407. package/dist/es2017/utils/flat_map.d.ts.map +1 -1
  408. package/dist/es2017/utils/flat_map.js +1 -2
  409. package/dist/es2017/utils/id_generator.d.ts.map +1 -1
  410. package/dist/es2017/utils/id_generator.js +0 -1
  411. package/dist/es2017/utils/logger.js +1 -1
  412. package/dist/es2017/utils/monotonic_timestamp.js +2 -2
  413. package/dist/es2017/utils/noop.js +1 -2
  414. package/dist/es2017/utils/object_assign.d.ts.map +1 -1
  415. package/dist/es2017/utils/object_assign.js +1 -2
  416. package/dist/es2017/utils/object_values.d.ts.map +1 -1
  417. package/dist/es2017/utils/object_values.js +1 -2
  418. package/dist/es2017/utils/reference.js +1 -1
  419. package/dist/es2017/utils/request/xhr.js +1 -1
  420. package/dist/mpd-parser.wasm +0 -0
  421. package/dist/rx-player.js +39336 -18
  422. package/dist/rx-player.min.js +18 -0
  423. package/dist/worker.js +5 -5
  424. package/package.json +16 -9
  425. package/src/__GENERATED_CODE/embedded_dash_wasm.ts +1 -1
  426. package/src/__GENERATED_CODE/embedded_worker.ts +1 -1
  427. package/src/compat/__tests__/add_text_track.test.ts +8 -12
  428. package/src/compat/__tests__/browser_compatibility_types.test.ts +0 -7
  429. package/src/compat/__tests__/browser_version.test.ts +20 -19
  430. package/src/compat/__tests__/can_patch_isobmff.test.ts +7 -10
  431. package/src/compat/__tests__/can_rely_on_video_visibility_and_size.test.ts +17 -21
  432. package/src/compat/__tests__/can_reuse_media_keys.test.ts +38 -15
  433. package/src/compat/__tests__/clear_element_src.test.ts +37 -34
  434. package/src/compat/__tests__/enable_audio_track.test.ts +22 -21
  435. package/src/compat/__tests__/is_codec_supported.test.ts +17 -18
  436. package/src/compat/__tests__/is_seeking_approximate.test.ts +8 -14
  437. package/src/compat/__tests__/is_vtt_cue.test.ts +8 -13
  438. package/src/compat/__tests__/make_vtt_cue.test.ts +7 -12
  439. package/src/compat/__tests__/patch_webkit_source_buffer.test.ts +44 -32
  440. package/src/compat/__tests__/remove_cue.test.ts +30 -31
  441. package/src/compat/__tests__/should_favour_custom_safari_EME.test.ts +21 -26
  442. package/src/compat/__tests__/should_renew_media_key_system_access.test.ts +9 -17
  443. package/src/compat/__tests__/should_unset_media_keys.test.ts +7 -14
  444. package/src/compat/__tests__/should_validate_metadata.test.ts +7 -17
  445. package/src/compat/__tests__/should_wait_for_data_before_loaded.test.ts +17 -26
  446. package/src/compat/__tests__/should_wait_for_have_enough_data.test.ts +10 -15
  447. package/src/compat/add_class_name.ts +1 -2
  448. package/src/compat/browser_compatibility_types.ts +4 -2
  449. package/src/compat/browser_detection.ts +9 -0
  450. package/src/compat/can_reuse_media_keys.ts +4 -2
  451. package/src/compat/clear_element_src.ts +1 -1
  452. package/src/compat/eme/custom_media_keys/moz_media_keys_constructor.ts +1 -2
  453. package/src/compat/eme/custom_media_keys/ms_media_keys_constructor.ts +1 -2
  454. package/src/compat/eme/custom_media_keys/old_webkit_media_keys.ts +3 -6
  455. package/src/compat/eme/custom_media_keys/webkit_media_keys.ts +2 -17
  456. package/src/compat/eme/custom_media_keys/webkit_media_keys_constructor.ts +1 -4
  457. package/src/compat/eme/eme-api-implementation.ts +0 -2
  458. package/src/compat/event_listeners.ts +2 -6
  459. package/src/compat/has_mse_in_worker.ts +1 -1
  460. package/src/compat/is_codec_supported.ts +0 -2
  461. package/src/compat/is_debug_mode_enabled.ts +1 -1
  462. package/src/compat/is_vtt_cue.ts +1 -2
  463. package/src/compat/on_height_width_change.ts +1 -2
  464. package/src/compat/patch_webkit_source_buffer.ts +48 -29
  465. package/src/compat/remove_cue.ts +2 -2
  466. package/src/core/adaptive/__tests__/buffer_based_chooser.test.ts +21 -26
  467. package/src/core/cmcd/cmcd_data_builder.ts +1 -1
  468. package/src/core/fetchers/README.md +13 -12
  469. package/src/core/fetchers/index.ts +5 -8
  470. package/src/core/fetchers/segment/__tests__/task_prioritizer.test.ts +17 -23
  471. package/src/core/fetchers/segment/index.ts +6 -5
  472. package/src/core/{stream/representation/utils/downloading_queue.ts → fetchers/segment/segment_queue.ts} +204 -166
  473. package/src/core/fetchers/segment/{segment_fetcher_creator.ts → segment_queue_creator.ts} +31 -14
  474. package/src/core/fetchers/segment/task_prioritizer.ts +10 -2
  475. package/src/core/fetchers/utils/schedule_request.ts +1 -1
  476. package/src/core/main/common/content_time_boundaries_observer.ts +4 -4
  477. package/src/core/main/worker/content_preparer.ts +5 -5
  478. package/src/core/main/worker/send_message.ts +1 -1
  479. package/src/core/main/worker/worker_main.ts +3 -2
  480. package/src/core/segment_sinks/implementations/text/text_segment_buffer.ts +1 -5
  481. package/src/core/segment_sinks/inventory/segment_inventory.ts +1 -2
  482. package/src/core/segment_sinks/segment_buffers_store.ts +3 -2
  483. package/src/core/stream/adaptation/adaptation_stream.ts +3 -3
  484. package/src/core/stream/adaptation/types.ts +2 -2
  485. package/src/core/stream/orchestrator/get_time_ranges_for_content.ts +1 -2
  486. package/src/core/stream/orchestrator/stream_orchestrator.ts +4 -4
  487. package/src/core/stream/period/period_stream.ts +2 -2
  488. package/src/core/stream/period/types.ts +2 -2
  489. package/src/core/stream/representation/representation_stream.ts +59 -56
  490. package/src/core/stream/representation/types.ts +3 -4
  491. package/src/core/stream/representation/utils/get_needed_segments.ts +1 -2
  492. package/src/core/types.ts +2 -4
  493. package/src/default_config.ts +0 -8
  494. package/src/errors/__tests__/format_error.test.ts +18 -18
  495. package/src/experimental/features/__tests__/multi_thread.test.ts +5 -5
  496. package/src/experimental/tools/mediaCapabilitiesProber/__tests__/capabilities.test.ts +11 -11
  497. package/src/experimental/tools/mediaCapabilitiesProber/__tests__/probers/DRMInfos.test.ts +18 -26
  498. package/src/experimental/tools/mediaCapabilitiesProber/__tests__/probers/HDCPPolicy.test.ts +13 -21
  499. package/src/experimental/tools/mediaCapabilitiesProber/__tests__/probers/decodingInfos.test.ts +24 -20
  500. package/src/experimental/tools/mediaCapabilitiesProber/__tests__/probers/defaultCodecFinder.test.ts +28 -30
  501. package/src/experimental/tools/mediaCapabilitiesProber/__tests__/probers/mediaContentType.test.ts +32 -38
  502. package/src/experimental/tools/mediaCapabilitiesProber/__tests__/probers/mediaDisplayInfos.test.ts +64 -51
  503. package/src/experimental/tools/mediaCapabilitiesProber/probers/decodingInfo.ts +4 -17
  504. package/src/experimental/tools/mediaCapabilitiesProber/probers/defaultCodecsFinder.ts +0 -4
  505. package/src/experimental/tools/mediaCapabilitiesProber/probers/mediaContentType.ts +1 -2
  506. package/src/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/index.ts +16 -14
  507. package/src/experimental/tools/mediaCapabilitiesProber/probers/mediaDisplayInfos.ts +1 -2
  508. package/src/features/__tests__/add_features.test.ts +12 -11
  509. package/src/features/add_features.ts +1 -2
  510. package/src/features/list/__tests__/dash_wasm.test.ts +4 -4
  511. package/src/main_thread/api/__tests__/option_utils.test.ts +114 -70
  512. package/src/main_thread/api/__tests__/public_api.test.ts +85 -48
  513. package/src/main_thread/api/option_utils.ts +2 -6
  514. package/src/main_thread/api/public_api.ts +24 -18
  515. package/src/main_thread/decrypt/__tests__/__global__/get_license.test.ts +12 -18
  516. package/src/main_thread/decrypt/__tests__/__global__/init_data.test.ts +128 -101
  517. package/src/main_thread/decrypt/__tests__/__global__/media_key_system_access.test.ts +26 -33
  518. package/src/main_thread/decrypt/__tests__/__global__/media_keys.test.ts +46 -48
  519. package/src/main_thread/decrypt/__tests__/__global__/server_certificate.test.ts +33 -34
  520. package/src/main_thread/decrypt/__tests__/__global__/utils.ts +13 -17
  521. package/src/main_thread/decrypt/session_events_listener.ts +1 -1
  522. package/src/main_thread/decrypt/utils/__tests__/clean_old_loaded_sessions.test.ts +0 -5
  523. package/src/main_thread/decrypt/utils/__tests__/clean_old_stored_persistent_info.test.ts +14 -17
  524. package/src/main_thread/decrypt/utils/persistent_sessions_store.ts +2 -1
  525. package/src/main_thread/init/media_source_content_initializer.ts +7 -7
  526. package/src/main_thread/init/multi_thread_content_initializer.ts +7 -12
  527. package/src/main_thread/init/utils/__tests__/are_same_stream_events.test.ts +11 -16
  528. package/src/main_thread/init/utils/__tests__/refresh_scheduled_events_list.test.ts +48 -18
  529. package/src/main_thread/text_displayer/html/__tests__/text_track_cues_store.test.ts +32 -17
  530. package/src/main_thread/text_displayer/html/html_text_displayer.ts +1 -5
  531. package/src/main_thread/text_displayer/native/native_text_displayer.ts +3 -7
  532. package/src/main_thread/tracks_store/__tests__/media_element_tracks_store.test.ts +33 -28
  533. package/src/main_thread/tracks_store/track_dispatcher.ts +1 -1
  534. package/src/main_thread/types.ts +0 -1
  535. package/src/manifest/classes/__tests__/adaptation.test.ts +167 -62
  536. package/src/manifest/classes/__tests__/manifest.test.ts +130 -74
  537. package/src/manifest/classes/__tests__/period.test.ts +293 -211
  538. package/src/manifest/classes/__tests__/update_period_in_place.test.ts +0 -2
  539. package/src/manifest/classes/__tests__/update_periods.test.ts +57 -57
  540. package/src/manifest/classes/adaptation.ts +13 -13
  541. package/src/manifest/classes/manifest.ts +0 -6
  542. package/src/manifest/classes/representation.ts +20 -12
  543. package/src/manifest/utils.ts +1 -2
  544. package/src/mse/main_media_source_interface.ts +1 -1
  545. package/src/mse/types.ts +1 -1
  546. package/src/multithread_types.ts +2 -2
  547. package/src/parsers/manifest/dash/common/__tests__/get_clock_offset.test.ts +5 -10
  548. package/src/parsers/manifest/dash/common/__tests__/get_http_utc-timing_url.test.ts +38 -30
  549. package/src/parsers/manifest/dash/common/__tests__/get_periods_time_infos.test.ts +0 -3
  550. package/src/parsers/manifest/dash/common/indexes/timeline/parse_s_element.ts +12 -6
  551. package/src/parsers/manifest/dash/fast-js-parser/node_parsers/AdaptationSet.ts +14 -7
  552. package/src/parsers/manifest/dash/fast-js-parser/node_parsers/MPD.ts +8 -4
  553. package/src/parsers/manifest/dash/fast-js-parser/node_parsers/Period.ts +10 -5
  554. package/src/parsers/manifest/dash/fast-js-parser/node_parsers/Representation.ts +10 -5
  555. package/src/parsers/manifest/dash/fast-js-parser/node_parsers/__tests__/ContentProtection.test.ts +15 -27
  556. package/src/parsers/manifest/dash/fast-js-parser/node_parsers/__tests__/Initialization.test.ts +13 -17
  557. package/src/parsers/manifest/dash/fast-js-parser/node_parsers/__tests__/SegmentURL.test.ts +18 -15
  558. package/src/parsers/manifest/dash/native-parser/node_parsers/AdaptationSet.ts +14 -7
  559. package/src/parsers/manifest/dash/native-parser/node_parsers/EventStream.ts +2 -1
  560. package/src/parsers/manifest/dash/native-parser/node_parsers/MPD.ts +8 -4
  561. package/src/parsers/manifest/dash/native-parser/node_parsers/Period.ts +10 -5
  562. package/src/parsers/manifest/dash/native-parser/node_parsers/Representation.ts +10 -5
  563. package/src/parsers/manifest/dash/native-parser/node_parsers/__tests__/ContentProtection.test.ts +15 -27
  564. package/src/parsers/manifest/dash/native-parser/node_parsers/__tests__/Initialization.test.ts +13 -17
  565. package/src/parsers/manifest/dash/native-parser/node_parsers/__tests__/SegmentTimeline.test.ts +9 -14
  566. package/src/parsers/manifest/dash/native-parser/node_parsers/__tests__/SegmentURL.test.ts +18 -15
  567. package/src/parsers/manifest/dash/wasm-parser/ts/dash-wasm-parser.ts +1 -2
  568. package/src/parsers/manifest/dash/wasm-parser/ts/generators/AdaptationSet.ts +2 -1
  569. package/src/parsers/manifest/dash/wasm-parser/ts/generators/ContentProtection.ts +2 -1
  570. package/src/parsers/manifest/dash/wasm-parser/ts/generators/EventStream.ts +4 -2
  571. package/src/parsers/manifest/dash/wasm-parser/ts/generators/MPD.ts +10 -5
  572. package/src/parsers/manifest/dash/wasm-parser/ts/generators/Period.ts +2 -1
  573. package/src/parsers/manifest/dash/wasm-parser/ts/generators/root.ts +2 -1
  574. package/src/parsers/manifest/local/representation_index.ts +1 -2
  575. package/src/parsers/manifest/metaplaylist/metaplaylist_parser.ts +2 -3
  576. package/src/parsers/manifest/smooth/create_parser.ts +2 -1
  577. package/src/parsers/manifest/smooth/shared_smooth_segment_timeline.ts +2 -2
  578. package/src/parsers/manifest/utils/__tests__/update_segment_timeline.test.ts +3 -8
  579. package/src/parsers/manifest/utils/get_first_time_from_adaptation.ts +2 -2
  580. package/src/parsers/manifest/utils/get_last_time_from_adaptation.ts +2 -2
  581. package/src/parsers/texttracks/srt/html.ts +2 -2
  582. package/src/parsers/texttracks/ttml/__tests__/resolve_styles_inheritance.test.ts +3 -7
  583. package/src/parsers/texttracks/ttml/html/__tests__/__global__/html_ttml_parser.test.ts +4 -4
  584. package/src/parsers/texttracks/ttml/html/create_element.ts +1 -1
  585. package/src/parsers/texttracks/ttml/html/parse_ttml_to_div.ts +3 -3
  586. package/src/parsers/texttracks/ttml/native/parse_ttml_to_vtt.ts +1 -2
  587. package/src/parsers/texttracks/ttml/resolve_styles_inheritance.ts +1 -2
  588. package/src/parsers/texttracks/webvtt/__tests__/parse_cue_block.test.ts +11 -11
  589. package/src/parsers/texttracks/webvtt/html/__tests__/convert_payload_to_html.test.ts +5 -18
  590. package/src/parsers/texttracks/webvtt/html/__tests__/parse_style_block.test.ts +23 -28
  591. package/src/parsers/texttracks/webvtt/html/__tests__/parse_webvtt_to_div.test.ts +9 -14
  592. package/src/parsers/texttracks/webvtt/html/__tests__/to_html.test.ts +11 -11
  593. package/src/parsers/texttracks/webvtt/html/to_html.ts +9 -3
  594. package/src/parsers/texttracks/webvtt/native/parse_vtt_to_cues.ts +2 -2
  595. package/src/public_types.ts +7 -8
  596. package/src/tools/TextTrackRenderer/text_track_renderer.ts +1 -1
  597. package/src/transports/smooth/extract_timings_infos.ts +3 -3
  598. package/src/transports/smooth/isobmff/__tests__/create_boxes.test.ts +30 -28
  599. package/src/transports/utils/__tests__/check_isobmff_integrity.test.ts +38 -44
  600. package/src/utils/__tests__/array_find.test.ts +12 -12
  601. package/src/utils/__tests__/array_find_index.test.ts +13 -12
  602. package/src/utils/__tests__/array_includes.test.ts +7 -7
  603. package/src/utils/__tests__/assert.test.ts +19 -25
  604. package/src/utils/__tests__/base64.test.ts +18 -13
  605. package/src/utils/__tests__/event_emitter.test.ts +225 -50
  606. package/src/utils/__tests__/flat_map.test.ts +2 -6
  607. package/src/utils/__tests__/starts_with.test.ts +7 -8
  608. package/src/utils/array_find.ts +3 -7
  609. package/src/utils/array_find_index.ts +3 -7
  610. package/src/utils/array_includes.ts +1 -3
  611. package/src/utils/assert.ts +0 -2
  612. package/src/utils/base64.ts +3 -2
  613. package/src/utils/event_emitter.ts +1 -1
  614. package/src/utils/flat_map.ts +1 -2
  615. package/src/utils/id_generator.ts +0 -2
  616. package/src/utils/is_worker.ts +1 -1
  617. package/src/utils/logger.ts +1 -1
  618. package/src/utils/monotonic_timestamp.ts +2 -2
  619. package/src/utils/noop.ts +1 -2
  620. package/src/utils/object_assign.ts +1 -2
  621. package/src/utils/object_values.ts +1 -2
  622. package/src/utils/reference.ts +1 -1
  623. package/src/utils/request/xhr.ts +1 -1
  624. package/.vscode/settings.json +0 -7
  625. package/dist/commonjs/core/fetchers/segment/segment_fetcher_creator.d.ts.map +0 -1
  626. package/dist/commonjs/core/stream/representation/utils/downloading_queue.d.ts.map +0 -1
  627. package/dist/es2017/core/fetchers/segment/segment_fetcher_creator.d.ts.map +0 -1
  628. package/dist/es2017/core/stream/representation/utils/downloading_queue.d.ts.map +0 -1
@@ -146,9 +146,8 @@ export default class DashWasmParser {
146
146
  /** Re-used TextDecoder instance. */
147
147
  const textDecoder = new TextDecoder();
148
148
 
149
- /* eslint-disable @typescript-eslint/no-this-alias */
149
+ // eslint-disable-next-line @typescript-eslint/no-this-alias
150
150
  const self = this;
151
- /* eslint-enable @typescript-eslint/no-this-alias */
152
151
 
153
152
  const imports = {
154
153
  env: {
@@ -363,10 +363,11 @@ export function generateAdaptationSetAttrParser(
363
363
  case AttributeName.AvailabilityTimeComplete:
364
364
  adaptationAttrs.availabilityTimeComplete = dataView.getUint8(0) === 0;
365
365
  break;
366
- case AttributeName.Label:
366
+ case AttributeName.Label: {
367
367
  const label = parseString(textDecoder, linearMemory.buffer, ptr, len);
368
368
  adaptationAttrs.label = label;
369
369
  break;
370
+ }
370
371
 
371
372
  // TODO
372
373
  // case AttributeName.StartsWithSap:
@@ -41,10 +41,11 @@ export function generateContentProtectionAttrParser(
41
41
  case AttributeName.ContentProtectionValue:
42
42
  cpAttrs.value = parseString(textDecoder, linearMemory.buffer, ptr, len);
43
43
  break;
44
- case AttributeName.ContentProtectionKeyId:
44
+ case AttributeName.ContentProtectionKeyId: {
45
45
  const kid = parseString(textDecoder, linearMemory.buffer, ptr, len);
46
46
  cpAttrs.keyId = hexToBytes(kid.replace(/-/g, ""));
47
47
  break;
48
+ }
48
49
  case AttributeName.ContentProtectionCencPSSH:
49
50
  try {
50
51
  const b64 = parseString(textDecoder, linearMemory.buffer, ptr, len);
@@ -80,7 +80,7 @@ export function generateEventStreamAttrParser(
80
80
  case AttributeName.TimeScale:
81
81
  esAttrs.timescale = dataView.getFloat64(ptr, true);
82
82
  break;
83
- case AttributeName.Namespace:
83
+ case AttributeName.Namespace: {
84
84
  const xmlNs = { key: "", value: "" };
85
85
  let offset = ptr;
86
86
  const keySize = dataView.getUint32(offset);
@@ -99,6 +99,7 @@ export function generateEventStreamAttrParser(
99
99
  esAttrs.namespaces.push(xmlNs);
100
100
  }
101
101
  break;
102
+ }
102
103
  }
103
104
  };
104
105
  }
@@ -127,11 +128,12 @@ function generateEventAttrParser(
127
128
  case AttributeName.Id:
128
129
  eventAttr.id = parseString(textDecoder, linearMemory.buffer, ptr, len);
129
130
  break;
130
- case AttributeName.EventStreamEltRange:
131
+ case AttributeName.EventStreamEltRange: {
131
132
  const rangeStart = dataView.getFloat64(ptr, true);
132
133
  const rangeEnd = dataView.getFloat64(ptr + 8, true);
133
134
  eventAttr.eventStreamData = fullMpd.slice(rangeStart, rangeEnd);
134
135
  break;
136
+ }
135
137
  }
136
138
  };
137
139
  }
@@ -122,18 +122,21 @@ export function generateMPDAttrParser(
122
122
  case AttributeName.Type:
123
123
  mpdAttrs.type = parseString(textDecoder, linearMemory.buffer, ptr, len);
124
124
  break;
125
- case AttributeName.AvailabilityStartTime:
125
+ case AttributeName.AvailabilityStartTime: {
126
126
  const startTime = parseString(textDecoder, linearMemory.buffer, ptr, len);
127
127
  mpdAttrs.availabilityStartTime = new Date(startTime).getTime() / 1000;
128
128
  break;
129
- case AttributeName.AvailabilityEndTime:
129
+ }
130
+ case AttributeName.AvailabilityEndTime: {
130
131
  const endTime = parseString(textDecoder, linearMemory.buffer, ptr, len);
131
132
  mpdAttrs.availabilityEndTime = new Date(endTime).getTime() / 1000;
132
133
  break;
133
- case AttributeName.PublishTime:
134
+ }
135
+ case AttributeName.PublishTime: {
134
136
  const publishTime = parseString(textDecoder, linearMemory.buffer, ptr, len);
135
137
  mpdAttrs.publishTime = new Date(publishTime).getTime() / 1000;
136
138
  break;
139
+ }
137
140
  case AttributeName.MediaPresentationDuration:
138
141
  dataView = new DataView(linearMemory.buffer);
139
142
  mpdAttrs.duration = dataView.getFloat64(ptr, true);
@@ -162,11 +165,12 @@ export function generateMPDAttrParser(
162
165
  dataView = new DataView(linearMemory.buffer);
163
166
  mpdAttrs.maxSubsegmentDuration = dataView.getFloat64(ptr, true);
164
167
  break;
165
- case AttributeName.Location:
168
+ case AttributeName.Location: {
166
169
  const location = parseString(textDecoder, linearMemory.buffer, ptr, len);
167
170
  mpdChildren.locations.push(location);
168
171
  break;
169
- case AttributeName.Namespace:
172
+ }
173
+ case AttributeName.Namespace: {
170
174
  const xmlNs = { key: "", value: "" };
171
175
  dataView = new DataView(linearMemory.buffer);
172
176
  let offset = ptr;
@@ -186,6 +190,7 @@ export function generateMPDAttrParser(
186
190
  mpdAttrs.namespaces.push(xmlNs);
187
191
  }
188
192
  break;
193
+ }
189
194
  }
190
195
  };
191
196
  }
@@ -183,7 +183,7 @@ export function generatePeriodAttrParser(
183
183
  periodAttrs.availabilityTimeComplete =
184
184
  new DataView(linearMemory.buffer).getUint8(0) === 0;
185
185
  break;
186
- case AttributeName.Namespace:
186
+ case AttributeName.Namespace: {
187
187
  const xmlNs = { key: "", value: "" };
188
188
  const dataView = new DataView(linearMemory.buffer);
189
189
  let offset = ptr;
@@ -203,6 +203,7 @@ export function generatePeriodAttrParser(
203
203
  periodAttrs.namespaces.push(xmlNs);
204
204
  }
205
205
  break;
206
+ }
206
207
  }
207
208
  };
208
209
  }
@@ -35,7 +35,7 @@ export function generateRootChildrenParser(
35
35
  ): (nodeId: number) => void {
36
36
  return function onRootChildren(nodeId: number) {
37
37
  switch (nodeId) {
38
- case TagName.MPD:
38
+ case TagName.MPD: {
39
39
  rootObj.mpd = {
40
40
  children: {
41
41
  baseURLs: [],
@@ -58,6 +58,7 @@ export function generateRootChildrenParser(
58
58
  );
59
59
  parsersStack.pushParsers(nodeId, childrenParser, attributeParser);
60
60
  break;
61
+ }
61
62
 
62
63
  default:
63
64
  // Allows to make sure we're not mistakenly closing a re-opened
@@ -54,8 +54,7 @@ export default class LocalRepresentationIndex implements IRepresentationIndex {
54
54
  const startTime = up;
55
55
  const endTime = up + duration;
56
56
  const wantedSegments: ILocalIndexSegment[] = [];
57
- for (let i = 0; i < this._index.segments.length; i++) {
58
- const segment = this._index.segments[i];
57
+ for (const segment of this._index.segments) {
59
58
  const segmentStart = segment.time;
60
59
  if (endTime <= segmentStart) {
61
60
  break;
@@ -91,7 +91,7 @@ export default function parseMetaPlaylist(
91
91
  try {
92
92
  // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
93
93
  parsedData = JSON.parse(data);
94
- } catch (error) {
94
+ } catch (_error) {
95
95
  throw new Error("MPL Parser: Bad MetaPlaylist file. Expected JSON.");
96
96
  }
97
97
  } else {
@@ -118,8 +118,7 @@ export default function parseMetaPlaylist(
118
118
  throw new Error("MPL Parser: No content found.");
119
119
  }
120
120
  const ressources: Array<{ url: string; transportType: string }> = [];
121
- for (let i = 0; i < contents.length; i++) {
122
- const content = contents[i];
121
+ for (const content of contents) {
123
122
  if (
124
123
  isNullOrUndefined(content.url) ||
125
124
  isNullOrUndefined(content.startTime) ||
@@ -312,7 +312,7 @@ function createSmoothStreamingParser(
312
312
  root,
313
313
  (res, _name, node) => {
314
314
  switch (_name) {
315
- case "QualityLevel":
315
+ case "QualityLevel": {
316
316
  const qualityLevel = parseQualityLevel(node, adaptationType);
317
317
  if (qualityLevel === null) {
318
318
  return res;
@@ -326,6 +326,7 @@ function createSmoothStreamingParser(
326
326
  res.qualityLevels.push(qualityLevel);
327
327
  }
328
328
  break;
329
+ }
329
330
  case "c":
330
331
  res.cNodes.push(node);
331
332
  break;
@@ -200,11 +200,11 @@ export default class SharedSmoothSegmentTimeline {
200
200
  }
201
201
 
202
202
  this.refresh();
203
- for (let i = 0; i < nextSegments.length; i++) {
203
+ for (const nextSeg of nextSegments) {
204
204
  addSegmentInfos(
205
205
  this.timeline,
206
206
  this.timescale,
207
- nextSegments[i],
207
+ nextSeg,
208
208
  currentSegment.privateInfos.smoothMediaSegment,
209
209
  );
210
210
  }
@@ -1,12 +1,7 @@
1
1
  import type { MockInstance } from "vitest";
2
2
  import { describe, beforeEach, afterEach, it, expect, vi } from "vitest";
3
3
  import type { IIndexSegment } from "../index_helpers";
4
-
5
- /* eslint-disable @typescript-eslint/no-unsafe-member-access */
6
- /* eslint-disable @typescript-eslint/no-unsafe-call */
7
- /* eslint-disable @typescript-eslint/no-unsafe-assignment */
8
- /* eslint-disable @typescript-eslint/no-unsafe-return */
9
- /* eslint-disable @typescript-eslint/no-explicit-any */
4
+ import type IUpdateSegmentTimeline from "../update_segment_timeline";
10
5
 
11
6
  describe("Manifest Parsers utils - updateSegmentTimeline", () => {
12
7
  let mockLogWarn: MockInstance | undefined;
@@ -22,8 +17,8 @@ describe("Manifest Parsers utils - updateSegmentTimeline", () => {
22
17
  warn: mockLogWarn,
23
18
  },
24
19
  }));
25
- updateSegmentTimeline = ((await vi.importActual("../update_segment_timeline")) as any)
26
- .default;
20
+ updateSegmentTimeline = (await vi.importActual("../update_segment_timeline"))
21
+ .default as typeof IUpdateSegmentTimeline;
27
22
  });
28
23
 
29
24
  afterEach(() => {
@@ -31,8 +31,8 @@ export default function getFirstPositionFromAdaptation(
31
31
  ): number | undefined | null {
32
32
  const { representations } = adaptation;
33
33
  let max: null | number = null;
34
- for (let i = 0; i < representations.length; i++) {
35
- const firstPosition = representations[i].index.getFirstAvailablePosition();
34
+ for (const representation of representations) {
35
+ const firstPosition = representation.index.getFirstAvailablePosition();
36
36
  if (firstPosition === undefined) {
37
37
  // we cannot tell
38
38
  return undefined;
@@ -33,8 +33,8 @@ export default function getLastPositionFromAdaptation(
33
33
  ): number | undefined | null {
34
34
  const { representations } = adaptation;
35
35
  let min: null | number = null;
36
- for (let i = 0; i < representations.length; i++) {
37
- const lastPosition = representations[i].index.getLastAvailablePosition();
36
+ for (const representation of representations) {
37
+ const lastPosition = representation.index.getLastAvailablePosition();
38
38
  if (lastPosition === undefined) {
39
39
  // we cannot tell
40
40
  return undefined;
@@ -49,8 +49,8 @@ export default function parseSRTStringToHTML(
49
49
  const cueBlocks: string[][] = getCueBlocks(lines);
50
50
 
51
51
  const cues: ISRTHTMLCue[] = [];
52
- for (let i = 0; i < cueBlocks.length; i++) {
53
- const cueObject = parseCueBlock(cueBlocks[i], timeOffset);
52
+ for (const cueBlock of cueBlocks) {
53
+ const cueObject = parseCueBlock(cueBlock, timeOffset);
54
54
  if (cueObject !== null) {
55
55
  const htmlCue = toHTML(cueObject);
56
56
  if (htmlCue !== null) {
@@ -1,12 +1,8 @@
1
1
  import { describe, beforeEach, afterEach, it, expect, vi } from "vitest";
2
-
3
- /* eslint-disable @typescript-eslint/no-explicit-any */
4
- /* eslint-disable @typescript-eslint/no-unsafe-call */
5
- /* eslint-disable @typescript-eslint/no-unsafe-assignment */
6
- /* eslint-disable @typescript-eslint/no-unsafe-return */
2
+ import type IResolveStylesInheritance from "../resolve_styles_inheritance";
7
3
 
8
4
  const logWarnMock = vi.fn();
9
- let resolveStylesInheritance: any;
5
+ let resolveStylesInheritance: typeof IResolveStylesInheritance;
10
6
 
11
7
  describe("resolve_styles_inheritance", () => {
12
8
  beforeEach(async () => {
@@ -16,7 +12,7 @@ describe("resolve_styles_inheritance", () => {
16
12
  },
17
13
  }));
18
14
  resolveStylesInheritance = (await vi.importActual("../resolve_styles_inheritance"))
19
- .default;
15
+ .default as typeof IResolveStylesInheritance;
20
16
  });
21
17
  afterEach(() => {
22
18
  vi.resetModules();
@@ -164,8 +164,8 @@ describe("Global TTML HTML parsing tests", () => {
164
164
  let nbTextNodes = 0;
165
165
  {
166
166
  const textNodes = findTextNodes(res[5].element);
167
- for (let i = 0; i < textNodes.length; i++) {
168
- const parentElement = textNodes[i].parentElement;
167
+ for (const textNode of textNodes) {
168
+ const parentElement = textNode.parentElement;
169
169
  if (parentElement !== null) {
170
170
  expect(globalScope.getComputedStyle(parentElement).color).toEqual(
171
171
  "rgb(255, 255, 0)",
@@ -176,8 +176,8 @@ describe("Global TTML HTML parsing tests", () => {
176
176
  }
177
177
  {
178
178
  const textNodes = findTextNodes(res[6].element);
179
- for (let i = 0; i < textNodes.length; i++) {
180
- const parentElement = textNodes[i].parentElement;
179
+ for (const textNode of textNodes) {
180
+ const parentElement = textNode.parentElement;
181
181
  if (parentElement !== null) {
182
182
  expect(globalScope.getComputedStyle(parentElement).color).toEqual(
183
183
  "rgb(255, 255, 255)",
@@ -425,7 +425,7 @@ function generateTextContent(
425
425
  if (isNonEmptyString(backgroundColor)) {
426
426
  style.backgroundColor = backgroundColor;
427
427
  } else {
428
- delete style.backgroundColor;
428
+ style.backgroundColor = "";
429
429
  }
430
430
  const el = createTextElement(currentNode, style, shouldTrimWhiteSpaceFromParent);
431
431
  elements.push(el);
@@ -42,12 +42,12 @@ import parseCue from "./parse_cue";
42
42
  export default function parseTTMLToDiv(str: string, timeOffset: number): ITTMLHTMLCue[] {
43
43
  const parsedCues = parseTtml(str, timeOffset);
44
44
  const cues: ITTMLHTMLCue[] = [];
45
- for (let i = 0; i < parsedCues.length; i++) {
46
- const { paragraphStyle } = parsedCues[i];
45
+ for (const parsedCue of parsedCues) {
46
+ const { paragraphStyle } = parsedCue;
47
47
  if (shouldApplyDefaultTTMLStyle(paragraphStyle)) {
48
48
  applyDefaultTTMLStyle(paragraphStyle);
49
49
  }
50
- const cue = parseCue(parsedCues[i]);
50
+ const cue = parseCue(parsedCue);
51
51
  if (cue !== null) {
52
52
  cues.push(cue);
53
53
  }
@@ -28,8 +28,7 @@ export default function parseTtmlToNative(
28
28
  ): Array<TextTrackCue | ICompatVTTCue> {
29
29
  const parsedCues = parseTtml(str, timeOffset);
30
30
  const cues: Array<TextTrackCue | ICompatVTTCue> = [];
31
- for (let i = 0; i < parsedCues.length; i++) {
32
- const parsedCue = parsedCues[i];
31
+ for (const parsedCue of parsedCues) {
33
32
  const cue = parseCue(parsedCue);
34
33
  if (cue !== null) {
35
34
  cues.push(cue);
@@ -57,8 +57,7 @@ export default function resolveStylesInheritance(styles: IStyleObject[]): void {
57
57
  const recursivelyBrowsedIndexes: number[] = [];
58
58
  function resolveStyleInheritance(styleElt: IStyleObject, index: number) {
59
59
  recursivelyBrowsedIndexes.push(index);
60
- for (let j = 0; j < styleElt.extendsStyles.length; j++) {
61
- const extendedStyleID = styleElt.extendsStyles[j];
60
+ for (const extendedStyleID of styleElt.extendsStyles) {
62
61
  const extendedStyleIndex = arrayFindIndex(styles, (x) => x.id === extendedStyleID);
63
62
  if (extendedStyleIndex < 0) {
64
63
  log.warn("TTML Parser: unknown style inheritance: " + extendedStyleID);
@@ -1,10 +1,5 @@
1
1
  import { describe, beforeEach, it, expect, vi } from "vitest";
2
-
3
- /* eslint-disable @typescript-eslint/no-unsafe-member-access */
4
- /* eslint-disable @typescript-eslint/no-unsafe-call */
5
- /* eslint-disable @typescript-eslint/no-unsafe-assignment */
6
- /* eslint-disable @typescript-eslint/no-unsafe-return */
7
- /* eslint-disable @typescript-eslint/no-explicit-any */
2
+ import type IParseCueBlock from "../parse_cue_block";
8
3
 
9
4
  const cueBlock1 = [
10
5
  "112",
@@ -45,7 +40,8 @@ describe("parsers - srt - parseCueBlocks", () => {
45
40
  });
46
41
 
47
42
  it("should correctly parse regular cue blocks", async () => {
48
- const parseCueBlock = ((await vi.importActual("../parse_cue_block")) as any).default;
43
+ const parseCueBlock = (await vi.importActual("../parse_cue_block"))
44
+ .default as typeof IParseCueBlock;
49
45
  expect(parseCueBlock(cueBlock1, 0)).toEqual({
50
46
  start: 31.08,
51
47
  end: 452.2,
@@ -92,7 +88,8 @@ describe("parsers - srt - parseCueBlocks", () => {
92
88
  });
93
89
 
94
90
  it("should add timeOffset in seconds", async () => {
95
- const parseCueBlock = ((await vi.importActual("../parse_cue_block")) as any).default;
91
+ const parseCueBlock = (await vi.importActual("../parse_cue_block"))
92
+ .default as typeof IParseCueBlock;
96
93
  expect(parseCueBlock(cueBlock1, 10.1)).toEqual({
97
94
  start: 41.18,
98
95
  end: 462.3,
@@ -150,7 +147,8 @@ describe("parsers - srt - parseCueBlocks", () => {
150
147
  });
151
148
 
152
149
  it("should return null for invalid cue blocks", async () => {
153
- const parseCueBlock = ((await vi.importActual("../parse_cue_block")) as any).default;
150
+ const parseCueBlock = (await vi.importActual("../parse_cue_block"))
151
+ .default as typeof IParseCueBlock;
154
152
  expect(parseCueBlock(notCueBlock1, 0)).toEqual(null);
155
153
  expect(parseCueBlock(notCueBlock1, 5)).toEqual(null);
156
154
  expect(parseCueBlock(notCueBlock2, 0)).toEqual(null);
@@ -168,7 +166,8 @@ describe("parsers - srt - parseCueBlocks", () => {
168
166
  vi.doMock("../parse_timestamp", () => ({
169
167
  default: parseTimestamp,
170
168
  }));
171
- const parseCueBlock = ((await vi.importActual("../parse_cue_block")) as any).default;
169
+ const parseCueBlock = (await vi.importActual("../parse_cue_block"))
170
+ .default as typeof IParseCueBlock;
172
171
 
173
172
  expect(parseCueBlock(cueBlock1, 0)).toEqual(null);
174
173
  expect(parseTimestamp).toHaveBeenCalledTimes(2);
@@ -179,7 +178,8 @@ describe("parsers - srt - parseCueBlocks", () => {
179
178
  vi.doMock("../parse_timestamp", () => ({
180
179
  default: parseTimestamp,
181
180
  }));
182
- const parseCueBlock = ((await vi.importActual("../parse_cue_block")) as any).default;
181
+ const parseCueBlock = (await vi.importActual("../parse_cue_block"))
182
+ .default as typeof IParseCueBlock;
183
183
 
184
184
  expect(parseCueBlock(cueBlock1, 0)).toEqual(null);
185
185
  expect(parseTimestamp).toHaveBeenCalledTimes(2);
@@ -1,11 +1,6 @@
1
1
  import { describe, beforeEach, it, expect, vi } from "vitest";
2
2
  import globalScope from "../../../../../utils/global_scope";
3
-
4
- /* eslint-disable @typescript-eslint/no-unsafe-member-access */
5
- /* eslint-disable @typescript-eslint/no-unsafe-call */
6
- /* eslint-disable @typescript-eslint/no-unsafe-assignment */
7
- /* eslint-disable @typescript-eslint/no-unsafe-return */
8
- /* eslint-disable @typescript-eslint/no-explicit-any */
3
+ import type IConvertPayloadToHTML from "../convert_payload_to_html";
9
4
 
10
5
  describe("parsers - webvtt - convertPayloadToHTML", () => {
11
6
  beforeEach(() => {
@@ -26,9 +21,6 @@ describe("parsers - webvtt - convertPayloadToHTML", () => {
26
21
 
27
22
  const origDOMParser = gs.DOMParser;
28
23
  gs.DOMParser = class MockDOMParser {
29
- constructor() {
30
- // Useless constructor in mock
31
- }
32
24
  public parseFromString() {
33
25
  return spyParseFromString();
34
26
  }
@@ -39,9 +31,8 @@ describe("parsers - webvtt - convertPayloadToHTML", () => {
39
31
  default: spy,
40
32
  }));
41
33
 
42
- const convertPayloadToHTML = (
43
- (await vi.importActual("../convert_payload_to_html")) as any
44
- ).default;
34
+ const convertPayloadToHTML = (await vi.importActual("../convert_payload_to_html"))
35
+ .default as typeof IConvertPayloadToHTML;
45
36
  expect(convertPayloadToHTML("", {})).toEqual([]);
46
37
  expect(spyParseFromString).toHaveBeenCalledTimes(1);
47
38
  expect(spy).not.toHaveBeenCalled();
@@ -75,17 +66,13 @@ describe("parsers - webvtt - convertPayloadToHTML", () => {
75
66
 
76
67
  const origDOMParser = gs.DOMParser;
77
68
  gs.DOMParser = class MockDOMParser {
78
- constructor() {
79
- // Useless constructor in mock
80
- }
81
69
  public parseFromString() {
82
70
  return spyParseFromString();
83
71
  }
84
72
  };
85
73
 
86
- const convertPayloadToHTML = (
87
- (await vi.importActual("../convert_payload_to_html")) as any
88
- ).default;
74
+ const convertPayloadToHTML = (await vi.importActual("../convert_payload_to_html"))
75
+ .default as typeof IConvertPayloadToHTML;
89
76
  expect(convertPayloadToHTML(innerText, {})).toEqual([bNode, span]);
90
77
  expect(spyParseFromString).toHaveBeenCalledTimes(1);
91
78
  expect(spyCreateStyledElement).toHaveBeenCalledTimes(2);
@@ -1,10 +1,5 @@
1
1
  import { describe, beforeEach, it, expect, vi } from "vitest";
2
-
3
- /* eslint-disable @typescript-eslint/no-unsafe-member-access */
4
- /* eslint-disable @typescript-eslint/no-unsafe-call */
5
- /* eslint-disable @typescript-eslint/no-unsafe-assignment */
6
- /* eslint-disable @typescript-eslint/no-unsafe-return */
7
- /* eslint-disable @typescript-eslint/no-explicit-any */
2
+ import type IParseStyleBlock from "../parse_style_block";
8
3
 
9
4
  describe("parsers - webvtt - parseStyleBlock", () => {
10
5
  beforeEach(() => {
@@ -20,8 +15,8 @@ describe("parsers - webvtt - parseStyleBlock", () => {
20
15
  return mockCreateDefaultStyleElements();
21
16
  },
22
17
  }));
23
- const parseStyleBlock = ((await vi.importActual("../parse_style_block")) as any)
24
- .default;
18
+ const parseStyleBlock = (await vi.importActual("../parse_style_block"))
19
+ .default as typeof IParseStyleBlock;
25
20
  expect(parseStyleBlock(webvttStyle)).toEqual({
26
21
  classes: {},
27
22
  global: "",
@@ -45,8 +40,8 @@ describe("parsers - webvtt - parseStyleBlock", () => {
45
40
  return mockCreateDefaultStyleElements();
46
41
  },
47
42
  }));
48
- const parseStyleBlock = ((await vi.importActual("../parse_style_block")) as any)
49
- .default;
43
+ const parseStyleBlock = (await vi.importActual("../parse_style_block"))
44
+ .default as typeof IParseStyleBlock;
50
45
  expect(parseStyleBlock(webvttStyle)).toEqual({
51
46
  classes: {},
52
47
  global:
@@ -64,8 +59,8 @@ describe("parsers - webvtt - parseStyleBlock", () => {
64
59
  return mockCreateDefaultStyleElements();
65
60
  },
66
61
  }));
67
- const parseStyleBlock = ((await vi.importActual("../parse_style_block")) as any)
68
- .default;
62
+ const parseStyleBlock = (await vi.importActual("../parse_style_block"))
63
+ .default as typeof IParseStyleBlock;
69
64
  expect(parseStyleBlock(webvttStyle)).toEqual({
70
65
  classes: {
71
66
  b: " color: peachpuff;",
@@ -92,8 +87,8 @@ describe("parsers - webvtt - parseStyleBlock", () => {
92
87
  return mockCreateDefaultStyleElements();
93
88
  },
94
89
  }));
95
- const parseStyleBlock = ((await vi.importActual("../parse_style_block")) as any)
96
- .default;
90
+ const parseStyleBlock = (await vi.importActual("../parse_style_block"))
91
+ .default as typeof IParseStyleBlock;
97
92
  expect(parseStyleBlock(webvttStyle)).toEqual({
98
93
  global:
99
94
  "background-image: linear-gradient(to bottom, dimgray, lightgray);" +
@@ -116,8 +111,8 @@ describe("parsers - webvtt - parseStyleBlock", () => {
116
111
  return mockCreateDefaultStyleElements();
117
112
  },
118
113
  }));
119
- const parseStyleBlock = ((await vi.importActual("../parse_style_block")) as any)
120
- .default;
114
+ const parseStyleBlock = (await vi.importActual("../parse_style_block"))
115
+ .default as typeof IParseStyleBlock;
121
116
  expect(parseStyleBlock(webvttStyle)).toEqual({
122
117
  classes: {
123
118
  b: " color: peachpuff;",
@@ -138,8 +133,8 @@ describe("parsers - webvtt - parseStyleBlock", () => {
138
133
  return mockCreateDefaultStyleElements();
139
134
  },
140
135
  }));
141
- const parseStyleBlock = ((await vi.importActual("../parse_style_block")) as any)
142
- .default;
136
+ const parseStyleBlock = (await vi.importActual("../parse_style_block"))
137
+ .default as typeof IParseStyleBlock;
143
138
  expect(parseStyleBlock(webvttStyle)).toEqual({
144
139
  classes: {
145
140
  b: " color: peachpuff; background-color: dark;",
@@ -167,8 +162,8 @@ describe("parsers - webvtt - parseStyleBlock", () => {
167
162
  return mockCreateDefaultStyleElements();
168
163
  },
169
164
  }));
170
- const parseStyleBlock = ((await vi.importActual("../parse_style_block")) as any)
171
- .default;
165
+ const parseStyleBlock = (await vi.importActual("../parse_style_block"))
166
+ .default as typeof IParseStyleBlock;
172
167
  expect(parseStyleBlock(webvttStyle)).toEqual({
173
168
  classes: {
174
169
  b: " background-color: dark;",
@@ -197,8 +192,8 @@ describe("parsers - webvtt - parseStyleBlock", () => {
197
192
  return mockCreateDefaultStyleElements();
198
193
  },
199
194
  }));
200
- const parseStyleBlock = ((await vi.importActual("../parse_style_block")) as any)
201
- .default;
195
+ const parseStyleBlock = (await vi.importActual("../parse_style_block"))
196
+ .default as typeof IParseStyleBlock;
202
197
  expect(parseStyleBlock(webvttStyle)).toEqual({
203
198
  classes: {
204
199
  b: " background-color: dark; color: salmon;",
@@ -226,8 +221,8 @@ describe("parsers - webvtt - parseStyleBlock", () => {
226
221
  return mockCreateDefaultStyleElements();
227
222
  },
228
223
  }));
229
- const parseStyleBlock = ((await vi.importActual("../parse_style_block")) as any)
230
- .default;
224
+ const parseStyleBlock = (await vi.importActual("../parse_style_block"))
225
+ .default as typeof IParseStyleBlock;
231
226
  expect(parseStyleBlock(webvttStyle)).toEqual({
232
227
  classes: {
233
228
  b: " background-color: dark; color: salmon;",
@@ -248,8 +243,8 @@ describe("parsers - webvtt - parseStyleBlock", () => {
248
243
  return mockCreateDefaultStyleElements();
249
244
  },
250
245
  }));
251
- const parseStyleBlock = ((await vi.importActual("../parse_style_block")) as any)
252
- .default;
246
+ const parseStyleBlock = (await vi.importActual("../parse_style_block"))
247
+ .default as typeof IParseStyleBlock;
253
248
  expect(parseStyleBlock(webvttStyle)).toEqual({
254
249
  classes: {
255
250
  b: " background-color: dark;",
@@ -269,8 +264,8 @@ describe("parsers - webvtt - parseStyleBlock", () => {
269
264
  return mockCreateDefaultStyleElements();
270
265
  },
271
266
  }));
272
- const parseStyleBlock = ((await vi.importActual("../parse_style_block")) as any)
273
- .default;
267
+ const parseStyleBlock = (await vi.importActual("../parse_style_block"))
268
+ .default as typeof IParseStyleBlock;
274
269
  expect(parseStyleBlock(webvttStyle)).toEqual({
275
270
  classes: {},
276
271
  global: "",