rx-player 4.0.0-dev.2023092900 → 4.0.0-dev.2023102700

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 (576) hide show
  1. package/CHANGELOG.md +221 -12
  2. package/FILES.md +0 -4
  3. package/MAINTAINERS.md +1 -0
  4. package/README.md +0 -21
  5. package/VERSION +1 -1
  6. package/dist/_esm5.processed/compat/add_class_name.js +6 -3
  7. package/dist/_esm5.processed/compat/add_text_track.js +11 -8
  8. package/dist/_esm5.processed/compat/browser_compatibility_types.js +13 -9
  9. package/dist/_esm5.processed/compat/browser_detection.js +49 -34
  10. package/dist/_esm5.processed/compat/browser_version.js +11 -8
  11. package/dist/_esm5.processed/compat/can_patch_isobmff.js +6 -3
  12. package/dist/_esm5.processed/compat/can_rely_on_video_visibility_and_size.js +9 -6
  13. package/dist/_esm5.processed/compat/can_reuse_media_keys.js +6 -3
  14. package/dist/_esm5.processed/compat/change_source_buffer_type.js +6 -3
  15. package/dist/_esm5.processed/compat/clear_element_src.js +12 -9
  16. package/dist/_esm5.processed/compat/eme/close_session.js +45 -106
  17. package/dist/_esm5.processed/compat/eme/constants.js +6 -3
  18. package/dist/_esm5.processed/compat/eme/custom_key_system_access.js +18 -22
  19. package/dist/_esm5.processed/compat/eme/custom_media_keys/ie11_media_keys.js +78 -102
  20. package/dist/_esm5.processed/compat/eme/custom_media_keys/index.js +16 -6
  21. package/dist/_esm5.processed/compat/eme/custom_media_keys/moz_media_keys_constructor.js +18 -15
  22. package/dist/_esm5.processed/compat/eme/custom_media_keys/ms_media_keys_constructor.js +7 -5
  23. package/dist/_esm5.processed/compat/eme/custom_media_keys/old_webkit_media_keys.js +70 -88
  24. package/dist/_esm5.processed/compat/eme/custom_media_keys/types.js +2 -1
  25. package/dist/_esm5.processed/compat/eme/custom_media_keys/webkit_media_keys.js +91 -117
  26. package/dist/_esm5.processed/compat/eme/custom_media_keys/webkit_media_keys_constructor.js +7 -7
  27. package/dist/_esm5.processed/compat/eme/eme-api-implementation.js +82 -83
  28. package/dist/_esm5.processed/compat/eme/generate_key_request.js +36 -31
  29. package/dist/_esm5.processed/compat/eme/get_init_data.js +28 -25
  30. package/dist/_esm5.processed/compat/eme/get_uuid_kid_from_keystatus_kid.js +8 -5
  31. package/dist/_esm5.processed/compat/eme/get_webkit_fairplay_initdata.js +17 -14
  32. package/dist/_esm5.processed/compat/eme/index.js +13 -7
  33. package/dist/_esm5.processed/compat/eme/load_session.js +26 -69
  34. package/dist/_esm5.processed/compat/enable_audio_track.js +7 -4
  35. package/dist/_esm5.processed/compat/event_listeners.js +130 -102
  36. package/dist/_esm5.processed/compat/get_start_date.js +7 -4
  37. package/dist/_esm5.processed/compat/global_scope.js +7 -5
  38. package/dist/_esm5.processed/compat/has_issues_with_high_media_source_duration.js +6 -3
  39. package/dist/_esm5.processed/compat/index.js +47 -24
  40. package/dist/_esm5.processed/compat/is_codec_supported.js +8 -5
  41. package/dist/_esm5.processed/compat/is_debug_mode_enabled.js +4 -1
  42. package/dist/_esm5.processed/compat/is_node.js +5 -3
  43. package/dist/_esm5.processed/compat/is_seeking_approximate.js +5 -3
  44. package/dist/_esm5.processed/compat/is_vtt_cue.js +6 -3
  45. package/dist/_esm5.processed/compat/is_worker.js +3 -1
  46. package/dist/_esm5.processed/compat/make_vtt_cue.js +10 -7
  47. package/dist/_esm5.processed/compat/on_height_width_change.js +25 -22
  48. package/dist/_esm5.processed/compat/patch_webkit_source_buffer.js +19 -17
  49. package/dist/_esm5.processed/compat/remove_cue.js +12 -9
  50. package/dist/_esm5.processed/compat/should_favour_custom_safari_EME.js +7 -4
  51. package/dist/_esm5.processed/compat/should_reload_media_source_on_decipherability_update.js +4 -1
  52. package/dist/_esm5.processed/compat/should_renew_media_key_system_access.js +6 -3
  53. package/dist/_esm5.processed/compat/should_unset_media_keys.js +6 -3
  54. package/dist/_esm5.processed/compat/should_validate_metadata.js +6 -3
  55. package/dist/_esm5.processed/compat/should_wait_for_data_before_loaded.js +6 -3
  56. package/dist/_esm5.processed/compat/should_wait_for_have_enough_data.js +6 -3
  57. package/dist/_esm5.processed/config.js +15 -14
  58. package/dist/_esm5.processed/core/adaptive/adaptive_representation_selector.js +123 -94
  59. package/dist/_esm5.processed/core/adaptive/buffer_based_chooser.js +43 -42
  60. package/dist/_esm5.processed/core/adaptive/guess_based_chooser.js +37 -44
  61. package/dist/_esm5.processed/core/adaptive/index.js +4 -2
  62. package/dist/_esm5.processed/core/adaptive/network_analyzer.js +75 -74
  63. package/dist/_esm5.processed/core/adaptive/utils/bandwidth_estimator.js +24 -23
  64. package/dist/_esm5.processed/core/adaptive/utils/ewma.js +13 -12
  65. package/dist/_esm5.processed/core/adaptive/utils/filter_by_bitrate.js +9 -6
  66. package/dist/_esm5.processed/core/adaptive/utils/filter_by_resolution.js +18 -19
  67. package/dist/_esm5.processed/core/adaptive/utils/get_buffer_levels.js +10 -7
  68. package/dist/_esm5.processed/core/adaptive/utils/last_estimate_storage.js +8 -7
  69. package/dist/_esm5.processed/core/adaptive/utils/pending_requests_store.js +26 -23
  70. package/dist/_esm5.processed/core/adaptive/utils/representation_score_calculator.js +25 -23
  71. package/dist/_esm5.processed/core/adaptive/utils/select_optimal_representation.js +6 -3
  72. package/dist/_esm5.processed/core/api/debug/buffer_graph.js +41 -40
  73. package/dist/_esm5.processed/core/api/debug/buffer_size_graph.js +31 -30
  74. package/dist/_esm5.processed/core/api/debug/constants.js +4 -1
  75. package/dist/_esm5.processed/core/api/debug/index.js +4 -2
  76. package/dist/_esm5.processed/core/api/debug/modules/general_info.js +64 -72
  77. package/dist/_esm5.processed/core/api/debug/modules/segment_buffer_content.js +49 -46
  78. package/dist/_esm5.processed/core/api/debug/modules/segment_buffer_size.js +15 -12
  79. package/dist/_esm5.processed/core/api/debug/render.js +16 -13
  80. package/dist/_esm5.processed/core/api/debug/utils.js +18 -13
  81. package/dist/_esm5.processed/core/api/index.js +7 -4
  82. package/dist/_esm5.processed/core/api/option_utils.js +85 -58
  83. package/dist/_esm5.processed/core/api/playback_observer.js +135 -124
  84. package/dist/_esm5.processed/core/api/public_api.js +610 -684
  85. package/dist/_esm5.processed/core/api/track_management/index.js +19 -3
  86. package/dist/_esm5.processed/core/api/track_management/media_element_tracks_store.js +233 -247
  87. package/dist/_esm5.processed/core/api/track_management/track_dispatcher.js +45 -58
  88. package/dist/_esm5.processed/core/api/track_management/tracks_store.js +300 -324
  89. package/dist/_esm5.processed/core/api/utils.js +32 -24
  90. package/dist/_esm5.processed/core/decrypt/__tests__/__global__/utils.js +155 -185
  91. package/dist/_esm5.processed/core/decrypt/attach_media_keys.js +42 -81
  92. package/dist/_esm5.processed/core/decrypt/clear_on_stop.js +15 -12
  93. package/dist/_esm5.processed/core/decrypt/content_decryptor.js +392 -510
  94. package/dist/_esm5.processed/core/decrypt/create_or_load_session.js +44 -90
  95. package/dist/_esm5.processed/core/decrypt/create_session.js +90 -149
  96. package/dist/_esm5.processed/core/decrypt/dispose_decryption_resources.js +24 -67
  97. package/dist/_esm5.processed/core/decrypt/find_key_system.js +94 -155
  98. package/dist/_esm5.processed/core/decrypt/get_key_system_configuration.js +6 -3
  99. package/dist/_esm5.processed/core/decrypt/get_media_keys.js +59 -109
  100. package/dist/_esm5.processed/core/decrypt/index.js +26 -7
  101. package/dist/_esm5.processed/core/decrypt/init_media_keys.js +17 -59
  102. package/dist/_esm5.processed/core/decrypt/session_events_listener.js +84 -155
  103. package/dist/_esm5.processed/core/decrypt/set_server_certificate.js +50 -103
  104. package/dist/_esm5.processed/core/decrypt/types.js +5 -2
  105. package/dist/_esm5.processed/core/decrypt/utils/are_init_values_compatible.js +22 -19
  106. package/dist/_esm5.processed/core/decrypt/utils/check_key_statuses.js +40 -61
  107. package/dist/_esm5.processed/core/decrypt/utils/clean_old_loaded_sessions.js +17 -61
  108. package/dist/_esm5.processed/core/decrypt/utils/clean_old_stored_persistent_info.js +8 -5
  109. package/dist/_esm5.processed/core/decrypt/utils/get_drm_system_id.js +8 -5
  110. package/dist/_esm5.processed/core/decrypt/utils/init_data_values_container.js +23 -23
  111. package/dist/_esm5.processed/core/decrypt/utils/is_session_usable.js +15 -12
  112. package/dist/_esm5.processed/core/decrypt/utils/key_id_comparison.js +14 -21
  113. package/dist/_esm5.processed/core/decrypt/utils/key_session_record.js +26 -27
  114. package/dist/_esm5.processed/core/decrypt/utils/loaded_sessions_store.js +206 -310
  115. package/dist/_esm5.processed/core/decrypt/utils/media_keys_infos_store.js +8 -6
  116. package/dist/_esm5.processed/core/decrypt/utils/persistent_sessions_store.js +103 -102
  117. package/dist/_esm5.processed/core/decrypt/utils/serializable_bytes.js +13 -12
  118. package/dist/_esm5.processed/core/decrypt/utils/server_certificate_store.js +18 -16
  119. package/dist/_esm5.processed/core/fetchers/cdn_prioritizer.js +37 -56
  120. package/dist/_esm5.processed/core/fetchers/index.js +7 -3
  121. package/dist/_esm5.processed/core/fetchers/manifest/index.js +4 -2
  122. package/dist/_esm5.processed/core/fetchers/manifest/manifest_fetcher.js +233 -313
  123. package/dist/_esm5.processed/core/fetchers/segment/index.js +4 -2
  124. package/dist/_esm5.processed/core/fetchers/segment/prioritized_segment_fetcher.js +12 -9
  125. package/dist/_esm5.processed/core/fetchers/segment/segment_fetcher.js +218 -234
  126. package/dist/_esm5.processed/core/fetchers/segment/segment_fetcher_creator.js +20 -19
  127. package/dist/_esm5.processed/core/fetchers/segment/task_prioritizer.js +73 -74
  128. package/dist/_esm5.processed/core/fetchers/utils/error_selector.js +8 -5
  129. package/dist/_esm5.processed/core/fetchers/utils/schedule_request.js +210 -261
  130. package/dist/_esm5.processed/core/init/directfile_content_initializer.js +73 -99
  131. package/dist/_esm5.processed/core/init/index.js +5 -1
  132. package/dist/_esm5.processed/core/init/media_source_content_initializer.js +256 -320
  133. package/dist/_esm5.processed/core/init/types.js +7 -24
  134. package/dist/_esm5.processed/core/init/utils/content_time_boundaries_observer.js +109 -135
  135. package/dist/_esm5.processed/core/init/utils/create_media_source.js +35 -30
  136. package/dist/_esm5.processed/core/init/utils/create_stream_playback_observer.js +12 -10
  137. package/dist/_esm5.processed/core/init/utils/end_of_stream.js +30 -26
  138. package/dist/_esm5.processed/core/init/utils/get_initial_time.js +41 -38
  139. package/dist/_esm5.processed/core/init/utils/get_loaded_reference.js +13 -10
  140. package/dist/_esm5.processed/core/init/utils/initial_seek_and_play.js +29 -26
  141. package/dist/_esm5.processed/core/init/utils/initialize_content_decryption.js +30 -27
  142. package/dist/_esm5.processed/core/init/utils/media_source_duration_updater.js +58 -60
  143. package/dist/_esm5.processed/core/init/utils/rebuffering_controller.js +140 -161
  144. package/dist/_esm5.processed/core/init/utils/stream_events_emitter/are_same_stream_events.js +3 -1
  145. package/dist/_esm5.processed/core/init/utils/stream_events_emitter/index.js +4 -2
  146. package/dist/_esm5.processed/core/init/utils/stream_events_emitter/refresh_scheduled_events_list.js +28 -30
  147. package/dist/_esm5.processed/core/init/utils/stream_events_emitter/stream_events_emitter.js +71 -90
  148. package/dist/_esm5.processed/core/init/utils/stream_events_emitter/types.js +2 -1
  149. package/dist/_esm5.processed/core/init/utils/throw_on_media_error.js +16 -13
  150. package/dist/_esm5.processed/core/segment_buffers/garbage_collector.js +75 -126
  151. package/dist/_esm5.processed/core/segment_buffers/implementations/audio_video/audio_video_segment_buffer.js +130 -147
  152. package/dist/_esm5.processed/core/segment_buffers/implementations/audio_video/index.js +4 -2
  153. package/dist/_esm5.processed/core/segment_buffers/implementations/index.js +20 -3
  154. package/dist/_esm5.processed/core/segment_buffers/implementations/text/html/html_text_segment_buffer.js +106 -125
  155. package/dist/_esm5.processed/core/segment_buffers/implementations/text/html/index.js +4 -2
  156. package/dist/_esm5.processed/core/segment_buffers/implementations/text/html/parsers.js +11 -8
  157. package/dist/_esm5.processed/core/segment_buffers/implementations/text/html/text_track_cues_store.js +48 -47
  158. package/dist/_esm5.processed/core/segment_buffers/implementations/text/html/types.js +2 -1
  159. package/dist/_esm5.processed/core/segment_buffers/implementations/text/html/update_proportional_elements.js +18 -15
  160. package/dist/_esm5.processed/core/segment_buffers/implementations/text/html/utils.js +22 -15
  161. package/dist/_esm5.processed/core/segment_buffers/implementations/text/native/index.js +4 -2
  162. package/dist/_esm5.processed/core/segment_buffers/implementations/text/native/native_text_segment_buffer.js +65 -82
  163. package/dist/_esm5.processed/core/segment_buffers/implementations/text/native/parsers.js +11 -8
  164. package/dist/_esm5.processed/core/segment_buffers/implementations/types.js +19 -17
  165. package/dist/_esm5.processed/core/segment_buffers/implementations/utils/manual_time_ranges.js +23 -22
  166. package/dist/_esm5.processed/core/segment_buffers/index.js +13 -6
  167. package/dist/_esm5.processed/core/segment_buffers/inventory/buffered_history.js +24 -22
  168. package/dist/_esm5.processed/core/segment_buffers/inventory/index.js +8 -3
  169. package/dist/_esm5.processed/core/segment_buffers/inventory/segment_inventory.js +151 -150
  170. package/dist/_esm5.processed/core/segment_buffers/inventory/types.js +2 -1
  171. package/dist/_esm5.processed/core/segment_buffers/inventory/utils.js +9 -4
  172. package/dist/_esm5.processed/core/segment_buffers/segment_buffers_store.js +82 -89
  173. package/dist/_esm5.processed/core/stream/adaptation/adaptation_stream.js +118 -166
  174. package/dist/_esm5.processed/core/stream/adaptation/get_representations_switch_strategy.js +31 -28
  175. package/dist/_esm5.processed/core/stream/adaptation/index.js +19 -3
  176. package/dist/_esm5.processed/core/stream/adaptation/types.js +2 -1
  177. package/dist/_esm5.processed/core/stream/index.js +4 -2
  178. package/dist/_esm5.processed/core/stream/orchestrator/get_time_ranges_for_content.js +14 -16
  179. package/dist/_esm5.processed/core/stream/orchestrator/index.js +4 -2
  180. package/dist/_esm5.processed/core/stream/orchestrator/stream_orchestrator.js +175 -222
  181. package/dist/_esm5.processed/core/stream/period/index.js +19 -3
  182. package/dist/_esm5.processed/core/stream/period/period_stream.js +172 -216
  183. package/dist/_esm5.processed/core/stream/period/types.js +2 -1
  184. package/dist/_esm5.processed/core/stream/period/utils/get_adaptation_switch_strategy.js +34 -33
  185. package/dist/_esm5.processed/core/stream/representation/index.js +19 -3
  186. package/dist/_esm5.processed/core/stream/representation/representation_stream.js +80 -68
  187. package/dist/_esm5.processed/core/stream/representation/types.js +2 -1
  188. package/dist/_esm5.processed/core/stream/representation/utils/append_segment_to_buffer.js +33 -84
  189. package/dist/_esm5.processed/core/stream/representation/utils/check_for_discontinuity.js +32 -29
  190. package/dist/_esm5.processed/core/stream/representation/utils/downloading_queue.js +126 -145
  191. package/dist/_esm5.processed/core/stream/representation/utils/force_garbage_collection.js +32 -88
  192. package/dist/_esm5.processed/core/stream/representation/utils/get_buffer_status.js +61 -48
  193. package/dist/_esm5.processed/core/stream/representation/utils/get_needed_segments.js +71 -69
  194. package/dist/_esm5.processed/core/stream/representation/utils/get_segment_priority.js +8 -5
  195. package/dist/_esm5.processed/core/stream/representation/utils/push_init_segment.js +22 -63
  196. package/dist/_esm5.processed/core/stream/representation/utils/push_media_segment.js +49 -86
  197. package/dist/_esm5.processed/default_config.js +4 -2
  198. package/dist/_esm5.processed/errors/assertion_error.js +10 -26
  199. package/dist/_esm5.processed/errors/custom_loader_error.js +12 -28
  200. package/dist/_esm5.processed/errors/encrypted_media_error.js +16 -32
  201. package/dist/_esm5.processed/errors/error_codes.js +9 -4
  202. package/dist/_esm5.processed/errors/error_message.js +5 -2
  203. package/dist/_esm5.processed/errors/format_error.js +9 -7
  204. package/dist/_esm5.processed/errors/index.js +25 -11
  205. package/dist/_esm5.processed/errors/is_known_error.js +14 -11
  206. package/dist/_esm5.processed/errors/media_error.js +17 -33
  207. package/dist/_esm5.processed/errors/network_error.js +21 -37
  208. package/dist/_esm5.processed/errors/other_error.js +15 -31
  209. package/dist/_esm5.processed/errors/request_error.js +17 -33
  210. package/dist/_esm5.processed/experimental/features/dash_wasm.js +14 -11
  211. package/dist/_esm5.processed/experimental/features/debug_element.js +7 -4
  212. package/dist/_esm5.processed/experimental/features/index.d.ts +1 -0
  213. package/dist/_esm5.processed/experimental/features/index.js +11 -3
  214. package/dist/_esm5.processed/experimental/features/local.js +9 -6
  215. package/dist/_esm5.processed/experimental/features/metaplaylist.js +9 -6
  216. package/dist/_esm5.processed/experimental/index.js +5 -2
  217. package/dist/_esm5.processed/experimental/tools/VideoThumbnailLoader/features/dash.js +6 -3
  218. package/dist/_esm5.processed/experimental/tools/VideoThumbnailLoader/features/metaplaylist.js +6 -3
  219. package/dist/_esm5.processed/experimental/tools/VideoThumbnailLoader/index.js +7 -3
  220. package/dist/_esm5.processed/experimental/tools/VideoThumbnailLoader/load_and_push_segment.js +22 -16
  221. package/dist/_esm5.processed/experimental/tools/VideoThumbnailLoader/prepare_source_buffer.js +22 -19
  222. package/dist/_esm5.processed/experimental/tools/VideoThumbnailLoader/remove_buffer_around_time.js +6 -3
  223. package/dist/_esm5.processed/experimental/tools/VideoThumbnailLoader/types.js +2 -1
  224. package/dist/_esm5.processed/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader.js +125 -186
  225. package/dist/_esm5.processed/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader_error.js +11 -27
  226. package/dist/_esm5.processed/experimental/tools/createMetaplaylist/get_duration_from_manifest.js +76 -119
  227. package/dist/_esm5.processed/experimental/tools/createMetaplaylist/index.js +24 -15
  228. package/dist/_esm5.processed/experimental/tools/index.js +11 -5
  229. package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/api/index.js +38 -43
  230. package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/api/probeMediaConfiguration.js +31 -34
  231. package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/capabilities.js +21 -18
  232. package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/index.js +4 -2
  233. package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/log.js +5 -3
  234. package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/probers/DRMInfos.js +20 -17
  235. package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/probers/HDCPPolicy.js +21 -18
  236. package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/probers/decodingInfo.js +13 -10
  237. package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/probers/defaultCodecsFinder.js +16 -13
  238. package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/probers/index.js +16 -14
  239. package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/probers/mediaContentType.js +14 -11
  240. package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/format.js +14 -11
  241. package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/probers/mediaContentTypeWithFeatures/index.js +19 -16
  242. package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/probers/mediaDisplayInfos.js +11 -8
  243. package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/types.js +5 -2
  244. package/dist/_esm5.processed/experimental/tools/mediaCapabilitiesProber/utils.js +25 -22
  245. package/dist/_esm5.processed/experimental/tools/parseBIFThumbnails.js +7 -4
  246. package/dist/_esm5.processed/features/add_features.js +11 -8
  247. package/dist/_esm5.processed/features/features_object.js +4 -2
  248. package/dist/_esm5.processed/features/index.js +7 -4
  249. package/dist/_esm5.processed/features/list/dash.js +11 -8
  250. package/dist/_esm5.processed/features/list/directfile.js +9 -5
  251. package/dist/_esm5.processed/features/list/eme.js +7 -4
  252. package/dist/_esm5.processed/features/list/html_sami_parser.js +9 -6
  253. package/dist/_esm5.processed/features/list/html_srt_parser.js +9 -6
  254. package/dist/_esm5.processed/features/list/html_text_buffer.js +7 -4
  255. package/dist/_esm5.processed/features/list/html_ttml_parser.js +9 -6
  256. package/dist/_esm5.processed/features/list/html_vtt_parser.js +9 -6
  257. package/dist/_esm5.processed/features/list/index.js +31 -14
  258. package/dist/_esm5.processed/features/list/native_sami_parser.js +9 -6
  259. package/dist/_esm5.processed/features/list/native_srt_parser.js +9 -6
  260. package/dist/_esm5.processed/features/list/native_text_buffer.js +7 -4
  261. package/dist/_esm5.processed/features/list/native_ttml_parser.js +9 -6
  262. package/dist/_esm5.processed/features/list/native_vtt_parser.js +9 -6
  263. package/dist/_esm5.processed/features/list/smooth.js +9 -6
  264. package/dist/_esm5.processed/features/types.js +2 -1
  265. package/dist/_esm5.processed/index.js +24 -9
  266. package/dist/_esm5.processed/log.js +5 -3
  267. package/dist/_esm5.processed/manifest/adaptation.js +52 -55
  268. package/dist/_esm5.processed/manifest/index.js +32 -13
  269. package/dist/_esm5.processed/manifest/manifest.js +112 -134
  270. package/dist/_esm5.processed/manifest/period.js +38 -42
  271. package/dist/_esm5.processed/manifest/representation.js +78 -61
  272. package/dist/_esm5.processed/manifest/representation_index/index.js +5 -2
  273. package/dist/_esm5.processed/manifest/representation_index/static.js +43 -42
  274. package/dist/_esm5.processed/manifest/representation_index/types.js +2 -1
  275. package/dist/_esm5.processed/manifest/types.js +5 -2
  276. package/dist/_esm5.processed/manifest/update_period_in_place.js +38 -48
  277. package/dist/_esm5.processed/manifest/update_periods.js +59 -69
  278. package/dist/_esm5.processed/manifest/utils.js +14 -9
  279. package/dist/_esm5.processed/minimal.js +9 -7
  280. package/dist/_esm5.processed/parsers/containers/isobmff/constants.js +4 -1
  281. package/dist/_esm5.processed/parsers/containers/isobmff/create_box.js +14 -10
  282. package/dist/_esm5.processed/parsers/containers/isobmff/drm/index.js +5 -1
  283. package/dist/_esm5.processed/parsers/containers/isobmff/drm/playready.js +15 -11
  284. package/dist/_esm5.processed/parsers/containers/isobmff/get_box.js +48 -40
  285. package/dist/_esm5.processed/parsers/containers/isobmff/index.js +27 -6
  286. package/dist/_esm5.processed/parsers/containers/isobmff/read.js +20 -14
  287. package/dist/_esm5.processed/parsers/containers/isobmff/take_pssh_out.js +25 -20
  288. package/dist/_esm5.processed/parsers/containers/isobmff/utils.js +130 -112
  289. package/dist/_esm5.processed/parsers/containers/matroska/index.js +6 -1
  290. package/dist/_esm5.processed/parsers/containers/matroska/utils.js +67 -63
  291. package/dist/_esm5.processed/parsers/images/bif.js +40 -29
  292. package/dist/_esm5.processed/parsers/manifest/dash/common/attach_trickmode_track.js +10 -12
  293. package/dist/_esm5.processed/parsers/manifest/dash/common/flatten_overlapping_periods.js +10 -7
  294. package/dist/_esm5.processed/parsers/manifest/dash/common/get_clock_offset.js +8 -5
  295. package/dist/_esm5.processed/parsers/manifest/dash/common/get_hdr_information.js +10 -6
  296. package/dist/_esm5.processed/parsers/manifest/dash/common/get_http_utc-timing_url.js +7 -6
  297. package/dist/_esm5.processed/parsers/manifest/dash/common/get_minimum_and_maximum_positions.js +10 -6
  298. package/dist/_esm5.processed/parsers/manifest/dash/common/get_periods_time_infos.js +14 -9
  299. package/dist/_esm5.processed/parsers/manifest/dash/common/index.js +10 -4
  300. package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/base.js +73 -67
  301. package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/get_init_segment.js +9 -4
  302. package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/get_segments_from_timeline.js +32 -25
  303. package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/index.js +11 -5
  304. package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/list.js +81 -70
  305. package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/template.js +130 -123
  306. package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_elements.js +15 -12
  307. package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/timeline/construct_timeline_from_previous_timeline.js +35 -32
  308. package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/timeline/convert_element_to_index_segment.js +14 -9
  309. package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/timeline/find_first_common_start_time.js +30 -22
  310. package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/timeline/index.js +4 -2
  311. package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/timeline/parse_s_element.js +14 -11
  312. package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/timeline/timeline_representation_index.js +131 -129
  313. package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/tokens.js +16 -10
  314. package/dist/_esm5.processed/parsers/manifest/dash/common/indexes/utils.js +7 -3
  315. package/dist/_esm5.processed/parsers/manifest/dash/common/infer_adaptation_type.js +19 -18
  316. package/dist/_esm5.processed/parsers/manifest/dash/common/manifest_bounds_calculator.js +18 -17
  317. package/dist/_esm5.processed/parsers/manifest/dash/common/parse_adaptation_sets.js +111 -111
  318. package/dist/_esm5.processed/parsers/manifest/dash/common/parse_availability_start_time.js +4 -1
  319. package/dist/_esm5.processed/parsers/manifest/dash/common/parse_mpd.js +86 -85
  320. package/dist/_esm5.processed/parsers/manifest/dash/common/parse_periods.js +97 -82
  321. package/dist/_esm5.processed/parsers/manifest/dash/common/parse_representation_index.js +39 -37
  322. package/dist/_esm5.processed/parsers/manifest/dash/common/parse_representations.js +61 -69
  323. package/dist/_esm5.processed/parsers/manifest/dash/common/resolve_base_urls.js +12 -9
  324. package/dist/_esm5.processed/parsers/manifest/dash/index.js +8 -1
  325. package/dist/_esm5.processed/parsers/manifest/dash/js-parser/index.js +4 -2
  326. package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/AdaptationSet.js +66 -62
  327. package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/BaseURL.js +7 -4
  328. package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/ContentComponent.js +7 -4
  329. package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/ContentProtection.js +22 -19
  330. package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/EventStream.js +22 -19
  331. package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/Initialization.js +11 -8
  332. package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/MPD.js +38 -34
  333. package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/Period.js +34 -30
  334. package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/Representation.js +44 -40
  335. package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/SegmentBase.js +24 -21
  336. package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/SegmentList.js +15 -12
  337. package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/SegmentTemplate.js +21 -18
  338. package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/SegmentTimeline.js +6 -3
  339. package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/SegmentURL.js +12 -9
  340. package/dist/_esm5.processed/parsers/manifest/dash/js-parser/node_parsers/utils.js +60 -64
  341. package/dist/_esm5.processed/parsers/manifest/dash/js-parser/parse_from_document.js +33 -27
  342. package/dist/_esm5.processed/parsers/manifest/dash/node_parser_types.js +2 -1
  343. package/dist/_esm5.processed/parsers/manifest/dash/parsers_types.js +2 -1
  344. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/index.js +4 -2
  345. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/dash-wasm-parser.js +192 -238
  346. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/AdaptationSet.js +67 -62
  347. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/BaseURL.js +8 -4
  348. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/ContentComponent.js +11 -7
  349. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/ContentProtection.js +17 -13
  350. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/EventStream.js +29 -24
  351. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/MPD.js +38 -33
  352. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/Period.js +37 -32
  353. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/Representation.js +43 -38
  354. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/Scheme.js +9 -5
  355. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/SegmentBase.js +16 -12
  356. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/SegmentList.js +11 -7
  357. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/SegmentTemplate.js +20 -16
  358. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/SegmentUrl.js +11 -7
  359. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/XLink.js +11 -7
  360. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/index.js +5 -1
  361. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/generators/root.js +10 -6
  362. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/parsers_stack.js +22 -20
  363. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/types.js +2 -1
  364. package/dist/_esm5.processed/parsers/manifest/dash/wasm-parser/ts/utils.js +6 -2
  365. package/dist/_esm5.processed/parsers/manifest/index.js +17 -1
  366. package/dist/_esm5.processed/parsers/manifest/local/index.js +4 -2
  367. package/dist/_esm5.processed/parsers/manifest/local/parse_local_manifest.js +30 -27
  368. package/dist/_esm5.processed/parsers/manifest/local/representation_index.js +71 -84
  369. package/dist/_esm5.processed/parsers/manifest/local/types.js +2 -1
  370. package/dist/_esm5.processed/parsers/manifest/metaplaylist/index.js +4 -2
  371. package/dist/_esm5.processed/parsers/manifest/metaplaylist/metaplaylist_parser.js +75 -72
  372. package/dist/_esm5.processed/parsers/manifest/metaplaylist/representation_index.js +52 -52
  373. package/dist/_esm5.processed/parsers/manifest/smooth/create_parser.js +200 -176
  374. package/dist/_esm5.processed/parsers/manifest/smooth/get_codecs.js +13 -8
  375. package/dist/_esm5.processed/parsers/manifest/smooth/index.js +7 -4
  376. package/dist/_esm5.processed/parsers/manifest/smooth/parse_C_nodes.js +17 -14
  377. package/dist/_esm5.processed/parsers/manifest/smooth/parse_protection_node.js +17 -15
  378. package/dist/_esm5.processed/parsers/manifest/smooth/representation_index.js +102 -98
  379. package/dist/_esm5.processed/parsers/manifest/smooth/shared_smooth_segment_timeline.js +49 -48
  380. package/dist/_esm5.processed/parsers/manifest/smooth/utils/add_segment_infos.js +10 -7
  381. package/dist/_esm5.processed/parsers/manifest/smooth/utils/parseBoolean.js +4 -1
  382. package/dist/_esm5.processed/parsers/manifest/smooth/utils/reduceChildren.js +6 -3
  383. package/dist/_esm5.processed/parsers/manifest/smooth/utils/tokens.js +5 -1
  384. package/dist/_esm5.processed/parsers/manifest/types.js +2 -1
  385. package/dist/_esm5.processed/parsers/manifest/utils/check_manifest_ids.js +27 -24
  386. package/dist/_esm5.processed/parsers/manifest/utils/clear_timeline_from_position.js +10 -7
  387. package/dist/_esm5.processed/parsers/manifest/utils/get_first_time_from_adaptation.js +8 -5
  388. package/dist/_esm5.processed/parsers/manifest/utils/get_last_time_from_adaptation.js +8 -5
  389. package/dist/_esm5.processed/parsers/manifest/utils/get_maximum_positions.js +15 -12
  390. package/dist/_esm5.processed/parsers/manifest/utils/get_minimum_position.js +15 -12
  391. package/dist/_esm5.processed/parsers/manifest/utils/index_helpers.js +31 -22
  392. package/dist/_esm5.processed/parsers/manifest/utils/is_segment_still_available.js +9 -6
  393. package/dist/_esm5.processed/parsers/manifest/utils/update_segment_timeline.js +38 -45
  394. package/dist/_esm5.processed/parsers/texttracks/index.js +2 -1
  395. package/dist/_esm5.processed/parsers/texttracks/sami/html.js +45 -43
  396. package/dist/_esm5.processed/parsers/texttracks/sami/native.js +41 -39
  397. package/dist/_esm5.processed/parsers/texttracks/srt/find_end_of_cue_block.js +7 -4
  398. package/dist/_esm5.processed/parsers/texttracks/srt/get_cue_blocks.js +11 -8
  399. package/dist/_esm5.processed/parsers/texttracks/srt/html.js +32 -29
  400. package/dist/_esm5.processed/parsers/texttracks/srt/native.js +16 -13
  401. package/dist/_esm5.processed/parsers/texttracks/srt/parse_cue.js +21 -18
  402. package/dist/_esm5.processed/parsers/texttracks/srt/parse_timestamp.js +10 -7
  403. package/dist/_esm5.processed/parsers/texttracks/ttml/get_parameters.js +37 -30
  404. package/dist/_esm5.processed/parsers/texttracks/ttml/get_styling.js +48 -48
  405. package/dist/_esm5.processed/parsers/texttracks/ttml/get_time_delimiters.js +14 -11
  406. package/dist/_esm5.processed/parsers/texttracks/ttml/html/apply_default_ttml_paragraph_style.js +7 -2
  407. package/dist/_esm5.processed/parsers/texttracks/ttml/html/apply_extent.js +15 -12
  408. package/dist/_esm5.processed/parsers/texttracks/ttml/html/apply_font_size.js +15 -12
  409. package/dist/_esm5.processed/parsers/texttracks/ttml/html/apply_line_height.js +11 -8
  410. package/dist/_esm5.processed/parsers/texttracks/ttml/html/apply_origin.js +15 -12
  411. package/dist/_esm5.processed/parsers/texttracks/ttml/html/apply_padding.js +25 -22
  412. package/dist/_esm5.processed/parsers/texttracks/ttml/html/create_element.js +117 -124
  413. package/dist/_esm5.processed/parsers/texttracks/ttml/html/generate_css_test_outline.js +11 -8
  414. package/dist/_esm5.processed/parsers/texttracks/ttml/html/index.js +4 -2
  415. package/dist/_esm5.processed/parsers/texttracks/ttml/html/parse_cue.js +12 -8
  416. package/dist/_esm5.processed/parsers/texttracks/ttml/html/parse_ttml_to_div.js +14 -11
  417. package/dist/_esm5.processed/parsers/texttracks/ttml/html/ttml_color_to_css_color.js +10 -7
  418. package/dist/_esm5.processed/parsers/texttracks/ttml/native/index.js +4 -2
  419. package/dist/_esm5.processed/parsers/texttracks/ttml/native/parse_cue.js +38 -35
  420. package/dist/_esm5.processed/parsers/texttracks/ttml/native/parse_ttml_to_vtt.js +11 -8
  421. package/dist/_esm5.processed/parsers/texttracks/ttml/parse_ttml.js +58 -58
  422. package/dist/_esm5.processed/parsers/texttracks/ttml/regexps.js +27 -13
  423. package/dist/_esm5.processed/parsers/texttracks/ttml/resolve_styles_inheritance.js +18 -18
  424. package/dist/_esm5.processed/parsers/texttracks/ttml/time_parsing.js +28 -26
  425. package/dist/_esm5.processed/parsers/texttracks/ttml/xml_utils.js +37 -25
  426. package/dist/_esm5.processed/parsers/texttracks/types.js +2 -1
  427. package/dist/_esm5.processed/parsers/texttracks/webvtt/get_cue_blocks.js +12 -9
  428. package/dist/_esm5.processed/parsers/texttracks/webvtt/get_style_blocks.js +14 -11
  429. package/dist/_esm5.processed/parsers/texttracks/webvtt/html/convert_payload_to_html.js +11 -8
  430. package/dist/_esm5.processed/parsers/texttracks/webvtt/html/create_default_style_elements.js +8 -5
  431. package/dist/_esm5.processed/parsers/texttracks/webvtt/html/create_style_attribute.js +60 -60
  432. package/dist/_esm5.processed/parsers/texttracks/webvtt/html/create_styled_element.js +30 -27
  433. package/dist/_esm5.processed/parsers/texttracks/webvtt/html/index.js +4 -2
  434. package/dist/_esm5.processed/parsers/texttracks/webvtt/html/parse_style_block.js +23 -26
  435. package/dist/_esm5.processed/parsers/texttracks/webvtt/html/parse_webvtt_to_div.js +20 -17
  436. package/dist/_esm5.processed/parsers/texttracks/webvtt/html/to_html.js +23 -18
  437. package/dist/_esm5.processed/parsers/texttracks/webvtt/native/index.js +4 -2
  438. package/dist/_esm5.processed/parsers/texttracks/webvtt/native/parse_vtt_to_cues.js +19 -16
  439. package/dist/_esm5.processed/parsers/texttracks/webvtt/native/set_settings_on_cue.js +20 -17
  440. package/dist/_esm5.processed/parsers/texttracks/webvtt/native/to_native_cue.js +8 -5
  441. package/dist/_esm5.processed/parsers/texttracks/webvtt/parse_cue_block.js +26 -18
  442. package/dist/_esm5.processed/parsers/texttracks/webvtt/parse_timestamp.js +10 -7
  443. package/dist/_esm5.processed/parsers/texttracks/webvtt/utils.js +15 -7
  444. package/dist/_esm5.processed/public_types.js +2 -1
  445. package/dist/_esm5.processed/tools/TextTrackRenderer/index.js +13 -6
  446. package/dist/_esm5.processed/tools/TextTrackRenderer/text_track_renderer.js +26 -24
  447. package/dist/_esm5.processed/tools/index.js +6 -4
  448. package/dist/_esm5.processed/tools/string_utils.js +10 -1
  449. package/dist/_esm5.processed/transports/dash/add_segment_integrity_checks_to_loader.js +16 -24
  450. package/dist/_esm5.processed/transports/dash/construct_segment_url.js +6 -3
  451. package/dist/_esm5.processed/transports/dash/extract_complete_chunks.js +17 -14
  452. package/dist/_esm5.processed/transports/dash/get_events_out_of_emsgs.js +19 -16
  453. package/dist/_esm5.processed/transports/dash/index.js +4 -2
  454. package/dist/_esm5.processed/transports/dash/init_segment_loader.js +47 -27
  455. package/dist/_esm5.processed/transports/dash/low_latency_segment_loader.js +23 -16
  456. package/dist/_esm5.processed/transports/dash/manifest_parser.js +68 -60
  457. package/dist/_esm5.processed/transports/dash/pipelines.js +20 -17
  458. package/dist/_esm5.processed/transports/dash/segment_loader.js +49 -39
  459. package/dist/_esm5.processed/transports/dash/segment_parser.js +58 -39
  460. package/dist/_esm5.processed/transports/dash/text_loader.js +36 -30
  461. package/dist/_esm5.processed/transports/dash/text_parser.js +39 -29
  462. package/dist/_esm5.processed/transports/index.js +17 -1
  463. package/dist/_esm5.processed/transports/local/index.js +4 -2
  464. package/dist/_esm5.processed/transports/local/pipelines.js +26 -23
  465. package/dist/_esm5.processed/transports/local/segment_loader.js +26 -23
  466. package/dist/_esm5.processed/transports/local/segment_parser.js +36 -25
  467. package/dist/_esm5.processed/transports/local/text_parser.js +42 -27
  468. package/dist/_esm5.processed/transports/metaplaylist/index.js +4 -2
  469. package/dist/_esm5.processed/transports/metaplaylist/manifest_loader.js +11 -7
  470. package/dist/_esm5.processed/transports/metaplaylist/pipelines.js +91 -96
  471. package/dist/_esm5.processed/transports/smooth/extract_timings_infos.js +26 -20
  472. package/dist/_esm5.processed/transports/smooth/index.js +4 -2
  473. package/dist/_esm5.processed/transports/smooth/is_mp4_embedded_track.js +4 -1
  474. package/dist/_esm5.processed/transports/smooth/isobmff/create_audio_init_segment.js +22 -19
  475. package/dist/_esm5.processed/transports/smooth/isobmff/create_boxes.js +92 -67
  476. package/dist/_esm5.processed/transports/smooth/isobmff/create_init_segment.js +29 -26
  477. package/dist/_esm5.processed/transports/smooth/isobmff/create_traf_box.js +9 -6
  478. package/dist/_esm5.processed/transports/smooth/isobmff/create_video_init_segment.js +23 -20
  479. package/dist/_esm5.processed/transports/smooth/isobmff/get_aaces_header.js +10 -7
  480. package/dist/_esm5.processed/transports/smooth/isobmff/index.js +13 -6
  481. package/dist/_esm5.processed/transports/smooth/isobmff/parse_tfrf.js +19 -16
  482. package/dist/_esm5.processed/transports/smooth/isobmff/parse_tfxd.js +9 -6
  483. package/dist/_esm5.processed/transports/smooth/isobmff/patch_segment.js +41 -38
  484. package/dist/_esm5.processed/transports/smooth/pipelines.js +106 -96
  485. package/dist/_esm5.processed/transports/smooth/segment_loader.d.ts +2 -2
  486. package/dist/_esm5.processed/transports/smooth/segment_loader.js +149 -153
  487. package/dist/_esm5.processed/transports/smooth/utils.js +7 -3
  488. package/dist/_esm5.processed/transports/types.js +2 -1
  489. package/dist/_esm5.processed/transports/utils/byte_range.js +6 -4
  490. package/dist/_esm5.processed/transports/utils/call_custom_manifest_loader.js +23 -18
  491. package/dist/_esm5.processed/transports/utils/check_isobmff_integrity.js +14 -11
  492. package/dist/_esm5.processed/transports/utils/find_complete_box.js +11 -8
  493. package/dist/_esm5.processed/transports/utils/generate_manifest_loader.js +22 -14
  494. package/dist/_esm5.processed/transports/utils/get_isobmff_timing_infos.js +13 -10
  495. package/dist/_esm5.processed/transports/utils/infer_segment_container.js +4 -1
  496. package/dist/_esm5.processed/transports/utils/parse_text_track.js +40 -26
  497. package/dist/_esm5.processed/utils/are_arrays_of_numbers_equal.js +5 -2
  498. package/dist/_esm5.processed/utils/are_codecs_compatible.js +11 -9
  499. package/dist/_esm5.processed/utils/array_find.js +7 -4
  500. package/dist/_esm5.processed/utils/array_find_index.js +6 -3
  501. package/dist/_esm5.processed/utils/array_includes.js +12 -11
  502. package/dist/_esm5.processed/utils/assert.js +13 -9
  503. package/dist/_esm5.processed/utils/assert_unreachable.js +6 -3
  504. package/dist/_esm5.processed/utils/base64.js +23 -18
  505. package/dist/_esm5.processed/utils/byte_parsing.js +30 -17
  506. package/dist/_esm5.processed/utils/cancellable_sleep.js +8 -5
  507. package/dist/_esm5.processed/utils/create_cancellable_promise.js +7 -4
  508. package/dist/_esm5.processed/utils/deep_merge.js +10 -21
  509. package/dist/_esm5.processed/utils/event_emitter.js +24 -24
  510. package/dist/_esm5.processed/utils/flat_map.js +7 -4
  511. package/dist/_esm5.processed/utils/get_fuzzed_delay.js +6 -3
  512. package/dist/_esm5.processed/utils/hash_buffer.js +7 -4
  513. package/dist/_esm5.processed/utils/id_generator.js +6 -3
  514. package/dist/_esm5.processed/utils/initialization_segment_cache.js +11 -12
  515. package/dist/_esm5.processed/utils/is_non_empty_string.js +4 -1
  516. package/dist/_esm5.processed/utils/is_null_or_undefined.js +4 -1
  517. package/dist/_esm5.processed/utils/languages/ISO_639-1_to_ISO_639-3.js +4 -2
  518. package/dist/_esm5.processed/utils/languages/ISO_639-2_to_ISO_639-3.js +4 -2
  519. package/dist/_esm5.processed/utils/languages/index.js +7 -3
  520. package/dist/_esm5.processed/utils/languages/normalize.js +26 -20
  521. package/dist/_esm5.processed/utils/logger.js +24 -23
  522. package/dist/_esm5.processed/utils/monotonic_timestamp.js +4 -1
  523. package/dist/_esm5.processed/utils/noop.js +4 -1
  524. package/dist/_esm5.processed/utils/object_assign.js +8 -10
  525. package/dist/_esm5.processed/utils/object_values.js +6 -3
  526. package/dist/_esm5.processed/utils/ranges.js +94 -71
  527. package/dist/_esm5.processed/utils/reference.js +48 -52
  528. package/dist/_esm5.processed/utils/request/fetch.js +79 -109
  529. package/dist/_esm5.processed/utils/request/index.js +9 -4
  530. package/dist/_esm5.processed/utils/request/xhr.js +49 -37
  531. package/dist/_esm5.processed/utils/resolve_url.js +18 -18
  532. package/dist/_esm5.processed/utils/retry_promise_with_backoff.js +34 -81
  533. package/dist/_esm5.processed/utils/sleep.js +5 -2
  534. package/dist/_esm5.processed/utils/slice_uint8array.js +3 -1
  535. package/dist/_esm5.processed/utils/sorted_list.js +37 -40
  536. package/dist/_esm5.processed/utils/starts_with.js +5 -2
  537. package/dist/_esm5.processed/utils/string_parsing.js +84 -73
  538. package/dist/_esm5.processed/utils/take_first_set.js +9 -10
  539. package/dist/_esm5.processed/utils/task_canceller.js +51 -71
  540. package/dist/_esm5.processed/utils/warn_once.js +7 -4
  541. package/dist/_esm5.processed/utils/weak_map_memory.js +12 -11
  542. package/dist/_esm5.processed/utils/wrapInPromise.js +5 -2
  543. package/dist/mpd-parser.wasm +0 -0
  544. package/dist/rx-player.js +43758 -45493
  545. package/dist/rx-player.min.js +1 -1
  546. package/jest.config.js +1 -22
  547. package/package.json +22 -23
  548. package/scripts/build/constants.d.ts +1 -23
  549. package/scripts/build/generate_build.js +1 -1
  550. package/scripts/check_nodejs_import_compatibility.js +1 -1
  551. package/scripts/update-version +1 -4
  552. package/sonar-project.properties +1 -1
  553. package/src/compat/event_listeners.ts +8 -8
  554. package/src/compat/global_scope.ts +2 -0
  555. package/src/core/adaptive/__tests__/buffer_based_chooser.test.ts +3 -3
  556. package/src/core/adaptive/adaptive_representation_selector.ts +27 -9
  557. package/src/core/adaptive/buffer_based_chooser.ts +1 -1
  558. package/src/core/adaptive/network_analyzer.ts +5 -4
  559. package/src/core/api/public_api.ts +2 -2
  560. package/src/core/api/track_management/track_dispatcher.ts +2 -1
  561. package/src/core/decrypt/__tests__/__global__/server_certificate.test.ts +1 -1
  562. package/src/core/fetchers/cdn_prioritizer.ts +1 -1
  563. package/src/experimental/features/__tests__/index.test.ts +19 -0
  564. package/src/experimental/features/index.ts +1 -0
  565. package/src/features/list/__tests__/index.test.ts +49 -0
  566. package/src/index.ts +28 -3
  567. package/src/transports/smooth/segment_loader.ts +4 -4
  568. package/src/typings/globals.d.ts +0 -42
  569. package/src/utils/request/fetch.ts +1 -1
  570. package/src/utils/request/xhr.ts +1 -1
  571. package/tsconfig.json +1 -1
  572. package/tsconfig.modules.json +3 -3
  573. package/dist/_esm5.processed/features/initialize_features.d.ts +0 -19
  574. package/dist/_esm5.processed/features/initialize_features.js +0 -108
  575. package/src/features/__tests__/initialize_features.test.ts +0 -657
  576. package/src/features/initialize_features.ts +0 -129
@@ -1,3 +1,4 @@
1
+ "use strict";
1
2
  /**
2
3
  * Copyright 2015 CANAL+ Group
3
4
  *
@@ -13,72 +14,78 @@
13
14
  * See the License for the specific language governing permissions and
14
15
  * limitations under the License.
15
16
  */
16
- import log from "../../../log";
17
- import isNonEmptyString from "../../../utils/is_non_empty_string";
18
- var CELL_RESOLUTION_REGEXP = /(\d+) (\d+)/;
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ const log_1 = require("../../../log");
19
+ const is_non_empty_string_1 = require("../../../utils/is_non_empty_string");
20
+ const CELL_RESOLUTION_REGEXP = /(\d+) (\d+)/;
19
21
  /**
20
22
  * Returns global parameters from a TTML Document
21
23
  * @param {Element} tt - <tt> node
22
24
  * @throws Error - Throws if the spacing style is invalid.
23
25
  * @returns {Object}
24
26
  */
25
- export default function getParameters(tt) {
26
- var parsedFrameRate = tt.getAttribute("ttp:frameRate");
27
- var parsedSubFrameRate = tt.getAttribute("ttp:subFramRate");
28
- var parsedTickRate = tt.getAttribute("ttp:tickRate");
29
- var parsedFrameRateMultiplier = tt.getAttribute("ttp:frameRateMultiplier");
30
- var parsedSpaceStyle = tt.getAttribute("xml:space");
31
- var parsedCellResolution = tt.getAttribute("ttp:cellResolution");
32
- var cellResolution = { columns: 32,
27
+ function getParameters(tt) {
28
+ const parsedFrameRate = tt.getAttribute("ttp:frameRate");
29
+ const parsedSubFrameRate = tt.getAttribute("ttp:subFramRate");
30
+ const parsedTickRate = tt.getAttribute("ttp:tickRate");
31
+ const parsedFrameRateMultiplier = tt.getAttribute("ttp:frameRateMultiplier");
32
+ const parsedSpaceStyle = tt.getAttribute("xml:space");
33
+ const parsedCellResolution = tt.getAttribute("ttp:cellResolution");
34
+ let cellResolution = { columns: 32,
33
35
  rows: 15 };
34
36
  if (parsedCellResolution !== null) {
35
- var extractedData = CELL_RESOLUTION_REGEXP.exec(parsedCellResolution);
37
+ const extractedData = CELL_RESOLUTION_REGEXP.exec(parsedCellResolution);
36
38
  if (extractedData === null || extractedData.length < 3) {
37
- log.warn("TTML Parser: Invalid cellResolution");
39
+ log_1.default.warn("TTML Parser: Invalid cellResolution");
38
40
  }
39
41
  else {
40
- var columns = parseInt(extractedData[1], 10);
41
- var rows = parseInt(extractedData[2], 10);
42
+ const columns = parseInt(extractedData[1], 10);
43
+ const rows = parseInt(extractedData[2], 10);
42
44
  if (isNaN(columns) || isNaN(rows)) {
43
- log.warn("TTML Parser: Invalid cellResolution");
45
+ log_1.default.warn("TTML Parser: Invalid cellResolution");
44
46
  }
45
47
  else {
46
- cellResolution = { columns: columns, rows: rows };
48
+ cellResolution = { columns, rows };
47
49
  }
48
50
  }
49
51
  }
50
- if (isNonEmptyString(parsedSpaceStyle) &&
52
+ if ((0, is_non_empty_string_1.default)(parsedSpaceStyle) &&
51
53
  parsedSpaceStyle !== "default" &&
52
54
  parsedSpaceStyle !== "preserve") {
53
55
  throw new Error("Invalid spacing style");
54
56
  }
55
- var nbFrameRate = Number(parsedFrameRate);
57
+ let nbFrameRate = Number(parsedFrameRate);
56
58
  if (isNaN(nbFrameRate) || nbFrameRate <= 0) {
57
59
  nbFrameRate = 30;
58
60
  }
59
- var nbSubFrameRate = Number(parsedSubFrameRate);
61
+ let nbSubFrameRate = Number(parsedSubFrameRate);
60
62
  if (isNaN(nbSubFrameRate) || nbSubFrameRate <= 0) {
61
63
  nbSubFrameRate = 1;
62
64
  }
63
- var nbTickRate = Number(parsedTickRate);
65
+ let nbTickRate = Number(parsedTickRate);
64
66
  if (isNaN(nbTickRate) || nbTickRate <= 0) {
65
67
  nbTickRate = undefined;
66
68
  }
67
- var frameRate = nbFrameRate;
68
- var subFrameRate = nbSubFrameRate != null ? nbSubFrameRate :
69
+ let frameRate = nbFrameRate;
70
+ const subFrameRate = nbSubFrameRate != null ? nbSubFrameRate :
69
71
  1;
70
- var spaceStyle = parsedSpaceStyle !== null ? parsedSpaceStyle :
72
+ const spaceStyle = parsedSpaceStyle !== null ? parsedSpaceStyle :
71
73
  "default";
72
- var tickRate = nbTickRate !== undefined ? nbTickRate :
74
+ const tickRate = nbTickRate !== undefined ? nbTickRate :
73
75
  nbFrameRate * nbSubFrameRate;
74
76
  if (parsedFrameRateMultiplier !== null) {
75
- var multiplierResults = /^(\d+) (\d+)$/g.exec(parsedFrameRateMultiplier);
77
+ const multiplierResults = /^(\d+) (\d+)$/g.exec(parsedFrameRateMultiplier);
76
78
  if (multiplierResults !== null) {
77
- var numerator = Number(multiplierResults[1]);
78
- var denominator = Number(multiplierResults[2]);
79
- var multiplierNum = numerator / denominator;
79
+ const numerator = Number(multiplierResults[1]);
80
+ const denominator = Number(multiplierResults[2]);
81
+ const multiplierNum = numerator / denominator;
80
82
  frameRate = nbFrameRate * multiplierNum;
81
83
  }
82
84
  }
83
- return { cellResolution: cellResolution, tickRate: tickRate, frameRate: frameRate, subFrameRate: subFrameRate, spaceStyle: spaceStyle };
85
+ return { cellResolution,
86
+ tickRate,
87
+ frameRate,
88
+ subFrameRate,
89
+ spaceStyle };
84
90
  }
91
+ exports.default = getParameters;
@@ -1,3 +1,4 @@
1
+ "use strict";
1
2
  /**
2
3
  * Copyright 2015 CANAL+ Group
3
4
  *
@@ -13,10 +14,12 @@
13
14
  * See the License for the specific language governing permissions and
14
15
  * limitations under the License.
15
16
  */
16
- import arrayFind from "../../../utils/array_find";
17
- import arrayIncludes from "../../../utils/array_includes";
18
- import isNonEmptyString from "../../../utils/is_non_empty_string";
19
- import startsWith from "../../../utils/starts_with";
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.getStylingFromElement = exports.getStylingAttributes = void 0;
19
+ const array_find_1 = require("../../../utils/array_find");
20
+ const array_includes_1 = require("../../../utils/array_includes");
21
+ const is_non_empty_string_1 = require("../../../utils/is_non_empty_string");
22
+ const starts_with_1 = require("../../../utils/starts_with");
20
23
  /**
21
24
  * Retrieve the attributes given in arguments in the given nodes and their
22
25
  * associated style(s)/region.
@@ -30,50 +33,50 @@ import startsWith from "../../../utils/starts_with";
30
33
  * @param {Array.<Object>} regions
31
34
  * @returns {Object}
32
35
  */
33
- export function getStylingAttributes(attributes, nodes, styles, regions) {
34
- var currentStyle = {};
35
- var leftAttributes = attributes.slice();
36
- var _loop_1 = function (i) {
37
- var node = nodes[i];
36
+ function getStylingAttributes(attributes, nodes, styles, regions) {
37
+ const currentStyle = {};
38
+ const leftAttributes = attributes.slice();
39
+ for (let i = 0; i <= nodes.length - 1; i++) {
40
+ const node = nodes[i];
38
41
  if (node !== undefined) {
39
- var styleID_1;
40
- var regionID_1;
42
+ let styleID;
43
+ let regionID;
41
44
  // 1. the style is directly set on a "tts:" attribute
42
45
  if (node.nodeType === Node.ELEMENT_NODE) {
43
- var element = node;
44
- for (var j = 0; j <= element.attributes.length - 1; j++) {
45
- var attribute = element.attributes[j];
46
- var name_1 = attribute.name;
47
- if (name_1 === "style") {
48
- styleID_1 = attribute.value;
46
+ const element = node;
47
+ for (let j = 0; j <= element.attributes.length - 1; j++) {
48
+ const attribute = element.attributes[j];
49
+ const name = attribute.name;
50
+ if (name === "style") {
51
+ styleID = attribute.value;
49
52
  }
50
- else if (name_1 === "region") {
51
- regionID_1 = attribute.value;
53
+ else if (name === "region") {
54
+ regionID = attribute.value;
52
55
  }
53
56
  else {
54
- var nameWithoutTTS = name_1.substring(4);
55
- if (arrayIncludes(leftAttributes, nameWithoutTTS)) {
57
+ const nameWithoutTTS = name.substring(4);
58
+ if ((0, array_includes_1.default)(leftAttributes, nameWithoutTTS)) {
56
59
  currentStyle[nameWithoutTTS] = attribute.value;
57
60
  leftAttributes.splice(j, 1);
58
61
  if (leftAttributes.length === 0) {
59
- return { value: currentStyle };
62
+ return currentStyle;
60
63
  }
61
64
  }
62
65
  }
63
66
  }
64
67
  }
65
68
  // 2. the style is referenced on a "style" attribute
66
- if (isNonEmptyString(styleID_1)) {
67
- var style = arrayFind(styles, function (x) { return x.id === styleID_1; });
69
+ if ((0, is_non_empty_string_1.default)(styleID)) {
70
+ const style = (0, array_find_1.default)(styles, (x) => x.id === styleID);
68
71
  if (style !== undefined) {
69
- for (var j = 0; j <= leftAttributes.length - 1; j++) {
70
- var attribute = leftAttributes[j];
71
- if (!isNonEmptyString(currentStyle[attribute])) {
72
- if (isNonEmptyString(style.style[attribute])) {
72
+ for (let j = 0; j <= leftAttributes.length - 1; j++) {
73
+ const attribute = leftAttributes[j];
74
+ if (!(0, is_non_empty_string_1.default)(currentStyle[attribute])) {
75
+ if ((0, is_non_empty_string_1.default)(style.style[attribute])) {
73
76
  currentStyle[attribute] = style.style[attribute];
74
77
  leftAttributes.splice(j, 1);
75
78
  if (leftAttributes.length === 0) {
76
- return { value: currentStyle };
79
+ return currentStyle;
77
80
  }
78
81
  j--;
79
82
  }
@@ -83,17 +86,17 @@ export function getStylingAttributes(attributes, nodes, styles, regions) {
83
86
  }
84
87
  // 3. the node reference a region (which can have a value for the
85
88
  // corresponding style)
86
- if (isNonEmptyString(regionID_1)) {
87
- var region = arrayFind(regions, function (x) { return x.id === regionID_1; });
89
+ if ((0, is_non_empty_string_1.default)(regionID)) {
90
+ const region = (0, array_find_1.default)(regions, (x) => x.id === regionID);
88
91
  if (region !== undefined) {
89
- for (var j = 0; j <= leftAttributes.length - 1; j++) {
90
- var attribute = leftAttributes[j];
91
- if (!isNonEmptyString(currentStyle[attribute])) {
92
- if (isNonEmptyString(region.style[attribute])) {
92
+ for (let j = 0; j <= leftAttributes.length - 1; j++) {
93
+ const attribute = leftAttributes[j];
94
+ if (!(0, is_non_empty_string_1.default)(currentStyle[attribute])) {
95
+ if ((0, is_non_empty_string_1.default)(region.style[attribute])) {
93
96
  currentStyle[attribute] = region.style[attribute];
94
97
  leftAttributes.splice(j, 1);
95
98
  if (leftAttributes.length === 0) {
96
- return { value: currentStyle };
99
+ return currentStyle;
97
100
  }
98
101
  j--;
99
102
  }
@@ -102,31 +105,28 @@ export function getStylingAttributes(attributes, nodes, styles, regions) {
102
105
  }
103
106
  }
104
107
  }
105
- };
106
- for (var i = 0; i <= nodes.length - 1; i++) {
107
- var state_1 = _loop_1(i);
108
- if (typeof state_1 === "object")
109
- return state_1.value;
110
108
  }
111
109
  return currentStyle;
112
110
  }
111
+ exports.getStylingAttributes = getStylingAttributes;
113
112
  /**
114
113
  * Returns the styling directly linked to an element.
115
114
  * @param {Node} node
116
115
  * @returns {Object}
117
116
  */
118
- export function getStylingFromElement(node) {
117
+ function getStylingFromElement(node) {
119
118
  if (node.nodeType !== Node.ELEMENT_NODE) {
120
119
  return {};
121
120
  }
122
- var element = node;
123
- var currentStyle = {};
124
- for (var i = 0; i <= element.attributes.length - 1; i++) {
125
- var styleAttribute = element.attributes[i];
126
- if (startsWith(styleAttribute.name, "tts")) {
127
- var nameWithoutTTS = styleAttribute.name.substring(4);
121
+ const element = node;
122
+ const currentStyle = {};
123
+ for (let i = 0; i <= element.attributes.length - 1; i++) {
124
+ const styleAttribute = element.attributes[i];
125
+ if ((0, starts_with_1.default)(styleAttribute.name, "tts")) {
126
+ const nameWithoutTTS = styleAttribute.name.substring(4);
128
127
  currentStyle[nameWithoutTTS] = styleAttribute.value;
129
128
  }
130
129
  }
131
130
  return currentStyle;
132
131
  }
132
+ exports.getStylingFromElement = getStylingFromElement;
@@ -1,3 +1,4 @@
1
+ "use strict";
1
2
  /**
2
3
  * Copyright 2015 CANAL+ Group
3
4
  *
@@ -13,29 +14,31 @@
13
14
  * See the License for the specific language governing permissions and
14
15
  * limitations under the License.
15
16
  */
16
- import isNonEmptyString from "../../../utils/is_non_empty_string";
17
- import parseTime from "./time_parsing";
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ const is_non_empty_string_1 = require("../../../utils/is_non_empty_string");
19
+ const time_parsing_1 = require("./time_parsing");
18
20
  /**
19
21
  * Get start and end time of an element.
20
22
  * @param {Element} element
21
23
  * @param {Object} ttParams
22
24
  * @returns {Object}
23
25
  */
24
- export default function getTimeDelimiters(element, ttParams) {
25
- var beginAttr = element.getAttribute("begin");
26
- var durationAttr = element.getAttribute("dur");
27
- var endAttr = element.getAttribute("end");
28
- var start = isNonEmptyString(beginAttr) ? parseTime(beginAttr, ttParams) :
26
+ function getTimeDelimiters(element, ttParams) {
27
+ const beginAttr = element.getAttribute("begin");
28
+ const durationAttr = element.getAttribute("dur");
29
+ const endAttr = element.getAttribute("end");
30
+ const start = (0, is_non_empty_string_1.default)(beginAttr) ? (0, time_parsing_1.default)(beginAttr, ttParams) :
29
31
  null;
30
- var duration = isNonEmptyString(durationAttr) ? parseTime(durationAttr, ttParams) :
32
+ const duration = (0, is_non_empty_string_1.default)(durationAttr) ? (0, time_parsing_1.default)(durationAttr, ttParams) :
31
33
  null;
32
- var parsedEnd = isNonEmptyString(endAttr) ? parseTime(endAttr, ttParams) :
34
+ const parsedEnd = (0, is_non_empty_string_1.default)(endAttr) ? (0, time_parsing_1.default)(endAttr, ttParams) :
33
35
  null;
34
36
  if (start == null || (parsedEnd == null && duration == null)) {
35
37
  throw new Error("Invalid text cue");
36
38
  }
37
39
  // Huh? Is TypeScript that dumb here?
38
- var end = parsedEnd == null ? start + duration :
40
+ const end = parsedEnd == null ? start + duration :
39
41
  parsedEnd;
40
- return { start: start, end: end };
42
+ return { start, end };
41
43
  }
44
+ exports.default = getTimeDelimiters;
@@ -1,3 +1,4 @@
1
+ "use strict";
1
2
  /**
2
3
  * Copyright 2015 CANAL+ Group
3
4
  *
@@ -13,6 +14,8 @@
13
14
  * See the License for the specific language governing permissions and
14
15
  * limitations under the License.
15
16
  */
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.applyDefaultTTMLStyle = exports.shouldApplyDefaultTTMLStyle = void 0;
16
19
  /**
17
20
  * Return true if no style has been already declared and no conflict is
18
21
  * detected with current cue style.
@@ -22,7 +25,7 @@
22
25
  * @param {object} paragraphStyle
23
26
  * @returns {boolean}
24
27
  */
25
- export function shouldApplyDefaultTTMLStyle(paragraphStyle) {
28
+ function shouldApplyDefaultTTMLStyle(paragraphStyle) {
26
29
  return paragraphStyle.extent === undefined &&
27
30
  paragraphStyle.origin === undefined &&
28
31
  paragraphStyle.displayAlign === undefined &&
@@ -30,6 +33,7 @@ export function shouldApplyDefaultTTMLStyle(paragraphStyle) {
30
33
  paragraphStyle.textAlign === undefined &&
31
34
  paragraphStyle.fontSize === undefined;
32
35
  }
36
+ exports.shouldApplyDefaultTTMLStyle = shouldApplyDefaultTTMLStyle;
33
37
  /**
34
38
  * Apply a default style to TTML cue.
35
39
  *
@@ -52,10 +56,11 @@ export function shouldApplyDefaultTTMLStyle(paragraphStyle) {
52
56
  * possible styles that can enter in conflict.
53
57
  * A better solution should be found in the future
54
58
  */
55
- export function applyDefaultTTMLStyle(paragraphStyle) {
59
+ function applyDefaultTTMLStyle(paragraphStyle) {
56
60
  paragraphStyle.extent = "70% 20%";
57
61
  paragraphStyle.fontSize = "1c";
58
62
  paragraphStyle.origin = "15% 80%";
59
63
  paragraphStyle.displayAlign = "before";
60
64
  paragraphStyle.textAlign = "center";
61
65
  }
66
+ exports.applyDefaultTTMLStyle = applyDefaultTTMLStyle;
@@ -1,3 +1,4 @@
1
+ "use strict";
1
2
  /**
2
3
  * Copyright 2015 CANAL+ Group
3
4
  *
@@ -13,25 +14,26 @@
13
14
  * See the License for the specific language governing permissions and
14
15
  * limitations under the License.
15
16
  */
16
- import { addClassName } from "../../../../compat";
17
- import log from "../../../../log";
18
- import { REGXP_LENGTH } from "../regexps";
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ const compat_1 = require("../../../../compat");
19
+ const log_1 = require("../../../../log");
20
+ const regexps_1 = require("../regexps");
19
21
  /**
20
22
  * Apply `tts:extent` styling to an HTML element.
21
23
  * @param {HTMLElement} element
22
24
  * @param {string} extent
23
25
  */
24
- export default function applyExtent(element, extent) {
25
- var trimmedExtent = extent.trim();
26
+ function applyExtent(element, extent) {
27
+ const trimmedExtent = extent.trim();
26
28
  if (trimmedExtent === "auto") {
27
29
  return;
28
30
  }
29
- var splittedExtent = trimmedExtent.split(" ");
31
+ const splittedExtent = trimmedExtent.split(" ");
30
32
  if (splittedExtent.length !== 2) {
31
33
  return;
32
34
  }
33
- var firstExtent = REGXP_LENGTH.exec(splittedExtent[0]);
34
- var secondExtent = REGXP_LENGTH.exec(splittedExtent[1]);
35
+ const firstExtent = regexps_1.REGXP_LENGTH.exec(splittedExtent[0]);
36
+ const secondExtent = regexps_1.REGXP_LENGTH.exec(splittedExtent[1]);
35
37
  if (firstExtent !== null && secondExtent !== null) {
36
38
  if (firstExtent[2] === "px" ||
37
39
  firstExtent[2] === "%" ||
@@ -39,11 +41,11 @@ export default function applyExtent(element, extent) {
39
41
  element.style.width = firstExtent[1] + firstExtent[2];
40
42
  }
41
43
  else if (firstExtent[2] === "c") {
42
- addClassName(element, "proportional-style");
44
+ (0, compat_1.addClassName)(element, "proportional-style");
43
45
  element.setAttribute("data-proportional-width", firstExtent[1]);
44
46
  }
45
47
  else {
46
- log.warn("TTML Parser: unhandled extent unit:", firstExtent[2]);
48
+ log_1.default.warn("TTML Parser: unhandled extent unit:", firstExtent[2]);
47
49
  }
48
50
  if (secondExtent[2] === "px" ||
49
51
  secondExtent[2] === "%" ||
@@ -51,11 +53,12 @@ export default function applyExtent(element, extent) {
51
53
  element.style.height = secondExtent[1] + secondExtent[2];
52
54
  }
53
55
  else if (secondExtent[2] === "c") {
54
- addClassName(element, "proportional-style");
56
+ (0, compat_1.addClassName)(element, "proportional-style");
55
57
  element.setAttribute("data-proportional-height", secondExtent[1]);
56
58
  }
57
59
  else {
58
- log.warn("TTML Parser: unhandled extent unit:", secondExtent[2]);
60
+ log_1.default.warn("TTML Parser: unhandled extent unit:", secondExtent[2]);
59
61
  }
60
62
  }
61
63
  }
64
+ exports.default = applyExtent;
@@ -1,3 +1,4 @@
1
+ "use strict";
1
2
  /**
2
3
  * Copyright 2015 CANAL+ Group
3
4
  *
@@ -13,21 +14,22 @@
13
14
  * See the License for the specific language governing permissions and
14
15
  * limitations under the License.
15
16
  */
16
- import { addClassName } from "../../../../compat";
17
- import log from "../../../../log";
18
- import { REGXP_LENGTH } from "../regexps";
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ const compat_1 = require("../../../../compat");
19
+ const log_1 = require("../../../../log");
20
+ const regexps_1 = require("../regexps");
19
21
  /**
20
22
  * Apply `tts:fontSize` styling to an HTML element.
21
23
  * @param {HTMLElement} element
22
24
  * @param {string} fontSize
23
25
  */
24
- export default function applyFontSize(element, fontSize) {
25
- var trimmedFontSize = fontSize.trim();
26
- var splittedFontSize = trimmedFontSize.split(" ");
26
+ function applyFontSize(element, fontSize) {
27
+ const trimmedFontSize = fontSize.trim();
28
+ const splittedFontSize = trimmedFontSize.split(" ");
27
29
  if (splittedFontSize.length === 0) {
28
30
  return;
29
31
  }
30
- var firstFontSize = REGXP_LENGTH.exec(splittedFontSize[0]);
32
+ const firstFontSize = regexps_1.REGXP_LENGTH.exec(splittedFontSize[0]);
31
33
  if (firstFontSize === null) {
32
34
  return;
33
35
  }
@@ -37,23 +39,24 @@ export default function applyFontSize(element, fontSize) {
37
39
  }
38
40
  else if (firstFontSize[2] === "c") {
39
41
  element.style.position = "relative";
40
- addClassName(element, "proportional-style");
42
+ (0, compat_1.addClassName)(element, "proportional-style");
41
43
  element.setAttribute("data-proportional-font-size", firstFontSize[1]);
42
44
  }
43
45
  else if (firstFontSize[2] === "%") {
44
- var toNum = Number(firstFontSize[1]);
46
+ const toNum = Number(firstFontSize[1]);
45
47
  if (isNaN(toNum)) {
46
- log.warn("TTML Parser: could not parse fontSize value \"" +
48
+ log_1.default.warn("TTML Parser: could not parse fontSize value \"" +
47
49
  firstFontSize[1] +
48
50
  "\" into a number");
49
51
  }
50
52
  else {
51
53
  element.style.position = "relative";
52
- addClassName(element, "proportional-style");
54
+ (0, compat_1.addClassName)(element, "proportional-style");
53
55
  element.setAttribute("data-proportional-font-size", String(toNum / 100));
54
56
  }
55
57
  }
56
58
  else {
57
- log.warn("TTML Parser: unhandled fontSize unit:", firstFontSize[2]);
59
+ log_1.default.warn("TTML Parser: unhandled fontSize unit:", firstFontSize[2]);
58
60
  }
59
61
  }
62
+ exports.default = applyFontSize;
@@ -1,3 +1,4 @@
1
+ "use strict";
1
2
  /**
2
3
  * Copyright 2015 CANAL+ Group
3
4
  *
@@ -13,19 +14,20 @@
13
14
  * See the License for the specific language governing permissions and
14
15
  * limitations under the License.
15
16
  */
16
- import { addClassName } from "../../../../compat";
17
- import log from "../../../../log";
18
- import { REGXP_LENGTH } from "../regexps";
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ const compat_1 = require("../../../../compat");
19
+ const log_1 = require("../../../../log");
20
+ const regexps_1 = require("../regexps");
19
21
  /**
20
22
  * @param {HTMLElement} element
21
23
  * @param {string} lineHeight
22
24
  */
23
- export default function applyLineHeight(element, lineHeight) {
24
- var trimmedLineHeight = lineHeight.trim();
25
+ function applyLineHeight(element, lineHeight) {
26
+ const trimmedLineHeight = lineHeight.trim();
25
27
  if (trimmedLineHeight === "auto") {
26
28
  return;
27
29
  }
28
- var firstLineHeight = REGXP_LENGTH.exec(trimmedLineHeight[0]);
30
+ const firstLineHeight = regexps_1.REGXP_LENGTH.exec(trimmedLineHeight[0]);
29
31
  if (firstLineHeight === null) {
30
32
  return;
31
33
  }
@@ -35,10 +37,11 @@ export default function applyLineHeight(element, lineHeight) {
35
37
  element.style.lineHeight = firstLineHeight[1] + firstLineHeight[2];
36
38
  }
37
39
  else if (firstLineHeight[2] === "c") {
38
- addClassName(element, "proportional-style");
40
+ (0, compat_1.addClassName)(element, "proportional-style");
39
41
  element.setAttribute("data-proportional-line-height", firstLineHeight[1]);
40
42
  }
41
43
  else {
42
- log.warn("TTML Parser: unhandled lineHeight unit:", firstLineHeight[2]);
44
+ log_1.default.warn("TTML Parser: unhandled lineHeight unit:", firstLineHeight[2]);
43
45
  }
44
46
  }
47
+ exports.default = applyLineHeight;
@@ -1,3 +1,4 @@
1
+ "use strict";
1
2
  /**
2
3
  * Copyright 2015 CANAL+ Group
3
4
  *
@@ -13,24 +14,25 @@
13
14
  * See the License for the specific language governing permissions and
14
15
  * limitations under the License.
15
16
  */
16
- import { addClassName } from "../../../../compat";
17
- import log from "../../../../log";
18
- import { REGXP_LENGTH } from "../regexps";
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ const compat_1 = require("../../../../compat");
19
+ const log_1 = require("../../../../log");
20
+ const regexps_1 = require("../regexps");
19
21
  /**
20
22
  * @param {HTMLElement} element
21
23
  * @param {string} origin
22
24
  */
23
- export default function applyOrigin(element, origin) {
24
- var trimmedOrigin = origin.trim();
25
+ function applyOrigin(element, origin) {
26
+ const trimmedOrigin = origin.trim();
25
27
  if (trimmedOrigin === "auto") {
26
28
  return;
27
29
  }
28
- var splittedOrigin = trimmedOrigin.split(" ");
30
+ const splittedOrigin = trimmedOrigin.split(" ");
29
31
  if (splittedOrigin.length !== 2) {
30
32
  return;
31
33
  }
32
- var firstOrigin = REGXP_LENGTH.exec(splittedOrigin[0]);
33
- var secondOrigin = REGXP_LENGTH.exec(splittedOrigin[1]);
34
+ const firstOrigin = regexps_1.REGXP_LENGTH.exec(splittedOrigin[0]);
35
+ const secondOrigin = regexps_1.REGXP_LENGTH.exec(splittedOrigin[1]);
34
36
  if (firstOrigin !== null && secondOrigin !== null) {
35
37
  if (firstOrigin[2] === "px" ||
36
38
  firstOrigin[2] === "%" ||
@@ -38,11 +40,11 @@ export default function applyOrigin(element, origin) {
38
40
  element.style.left = firstOrigin[1] + firstOrigin[2];
39
41
  }
40
42
  else if (firstOrigin[2] === "c") {
41
- addClassName(element, "proportional-style");
43
+ (0, compat_1.addClassName)(element, "proportional-style");
42
44
  element.setAttribute("data-proportional-left", firstOrigin[1]);
43
45
  }
44
46
  else {
45
- log.warn("TTML Parser: unhandled origin unit:", firstOrigin[2]);
47
+ log_1.default.warn("TTML Parser: unhandled origin unit:", firstOrigin[2]);
46
48
  }
47
49
  if (secondOrigin[2] === "px" ||
48
50
  secondOrigin[2] === "%" ||
@@ -50,11 +52,12 @@ export default function applyOrigin(element, origin) {
50
52
  element.style.top = secondOrigin[1] + secondOrigin[2];
51
53
  }
52
54
  else if (secondOrigin[2] === "c") {
53
- addClassName(element, "proportional-style");
55
+ (0, compat_1.addClassName)(element, "proportional-style");
54
56
  element.setAttribute("data-proportional-top", secondOrigin[1]);
55
57
  }
56
58
  else {
57
- log.warn("TTML Parser: unhandled origin unit:", secondOrigin[2]);
59
+ log_1.default.warn("TTML Parser: unhandled origin unit:", secondOrigin[2]);
58
60
  }
59
61
  }
60
62
  }
63
+ exports.default = applyOrigin;