@npo/player 1.29.0 → 2.0.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (532) hide show
  1. package/README.md +32 -24
  2. package/dist/logErrorEvent-DbEp9rzx.js +25 -0
  3. package/dist/logErrorEvent-DbEp9rzx.js.map +1 -0
  4. package/dist/main-XvJyWo8j.js +53061 -0
  5. package/dist/main-XvJyWo8j.js.map +1 -0
  6. package/dist/main.d.ts +1163 -0
  7. package/dist/npoplayer-audio.es.js +19 -0
  8. package/dist/npoplayer-audio.es.js.map +1 -0
  9. package/dist/npoplayer-audio.umd.js +53088 -0
  10. package/dist/npoplayer-audio.umd.js.map +1 -0
  11. package/package.json +72 -86
  12. package/CHANGELOG.md +0 -3
  13. package/LICENSE +0 -15
  14. package/lib/js/markers/updateLiveMarkers.d.ts +0 -9
  15. package/lib/js/markers/updateLiveMarkers.js +0 -56
  16. package/lib/js/markers/updateLiveMarkers.test.d.ts +0 -1
  17. package/lib/js/markers/updateLiveMarkers.test.js +0 -63
  18. package/lib/js/playeractions/handlers/handleoffsets.d.ts +0 -4
  19. package/lib/js/playeractions/handlers/handleoffsets.js +0 -58
  20. package/lib/js/playeractions/handlers/handleoffsets.test.d.ts +0 -1
  21. package/lib/js/playeractions/handlers/handleoffsets.test.js +0 -93
  22. package/lib/js/playeractions/handlers/mediasessionactions.d.ts +0 -7
  23. package/lib/js/playeractions/handlers/mediasessionactions.js +0 -123
  24. package/lib/js/playeractions/handlers/processplayerconfig.d.ts +0 -3
  25. package/lib/js/playeractions/handlers/processplayerconfig.js +0 -56
  26. package/lib/js/playeractions/handlers/processplayerconfig.test.d.ts +0 -1
  27. package/lib/js/playeractions/handlers/processplayerconfig.test.js +0 -116
  28. package/lib/js/playeractions/handlers/processsourceconfig.d.ts +0 -15
  29. package/lib/js/playeractions/handlers/processsourceconfig.js +0 -232
  30. package/lib/js/playeractions/handlers/processsourceconfig.test.d.ts +0 -1
  31. package/lib/js/playeractions/handlers/processsourceconfig.test.js +0 -25
  32. package/lib/js/playeractions/handlers/removereplayclass.d.ts +0 -2
  33. package/lib/js/playeractions/handlers/removereplayclass.js +0 -12
  34. package/lib/js/playeractions/handlers/removereplayclass.test.d.ts +0 -1
  35. package/lib/js/playeractions/handlers/removereplayclass.test.js +0 -33
  36. package/lib/js/playeractions/playeractions.d.ts +0 -3
  37. package/lib/js/playeractions/playeractions.js +0 -3
  38. package/lib/js/settings/localization.d.ts +0 -82
  39. package/lib/js/settings/localization.js +0 -7
  40. package/lib/js/settings/settings.user-agent.d.ts +0 -1
  41. package/lib/js/settings/settings.user-agent.js +0 -1
  42. package/lib/js/utilities/utilities.element.d.ts +0 -16
  43. package/lib/js/utilities/utilities.element.js +0 -18
  44. package/lib/js/utilities/utilities.element.test.d.ts +0 -1
  45. package/lib/js/utilities/utilities.element.test.js +0 -38
  46. package/lib/js/utilities/utilities.jwt.d.ts +0 -5
  47. package/lib/js/utilities/utilities.jwt.js +0 -44
  48. package/lib/js/utilities/utilities.jwt.test.d.ts +0 -1
  49. package/lib/js/utilities/utilities.jwt.test.js +0 -32
  50. package/lib/js/utilities/utilities.locale.d.ts +0 -2
  51. package/lib/js/utilities/utilities.locale.js +0 -4
  52. package/lib/js/utilities/utilities.locale.test.d.ts +0 -1
  53. package/lib/js/utilities/utilities.locale.test.js +0 -10
  54. package/lib/js/utilities/utilities.module.d.ts +0 -1
  55. package/lib/js/utilities/utilities.module.js +0 -4
  56. package/lib/js/utilities/utilities.module.test.d.ts +0 -1
  57. package/lib/js/utilities/utilities.module.test.js +0 -19
  58. package/lib/js/utilities/utilities.prid.d.ts +0 -6
  59. package/lib/js/utilities/utilities.prid.js +0 -8
  60. package/lib/js/utilities/utilities.prid.test.d.ts +0 -1
  61. package/lib/js/utilities/utilities.prid.test.js +0 -46
  62. package/lib/js/utilities/utilities.stream.d.ts +0 -7
  63. package/lib/js/utilities/utilities.stream.js +0 -19
  64. package/lib/js/utilities/utilities.stream.test.d.ts +0 -1
  65. package/lib/js/utilities/utilities.stream.test.js +0 -32
  66. package/lib/js/utilities/utilities.text.d.ts +0 -1
  67. package/lib/js/utilities/utilities.text.js +0 -3
  68. package/lib/js/utilities/utilities.text.test.d.ts +0 -1
  69. package/lib/js/utilities/utilities.text.test.js +0 -18
  70. package/lib/js/utilities/utilities.time.d.ts +0 -1
  71. package/lib/js/utilities/utilities.time.js +0 -3
  72. package/lib/js/utilities/utilities.time.test.d.ts +0 -1
  73. package/lib/js/utilities/utilities.time.test.js +0 -8
  74. package/lib/js/utilities/utilities.url.d.ts +0 -3
  75. package/lib/js/utilities/utilities.url.js +0 -29
  76. package/lib/js/utilities/utilities.url.test.d.ts +0 -1
  77. package/lib/js/utilities/utilities.url.test.js +0 -46
  78. package/lib/js/utilities/utilities.user-agent.d.ts +0 -3
  79. package/lib/js/utilities/utilities.user-agent.js +0 -13
  80. package/lib/js/utilities/utilities.user-agent.test.d.ts +0 -1
  81. package/lib/js/utilities/utilities.user-agent.test.js +0 -60
  82. package/lib/js/utilities/utilities.version.d.ts +0 -1
  83. package/lib/js/utilities/utilities.version.js +0 -26
  84. package/lib/js/utilities/utilities.version.test.d.ts +0 -1
  85. package/lib/js/utilities/utilities.version.test.js +0 -26
  86. package/lib/lang/nl.json +0 -77
  87. package/lib/lang/subtitleLabels/nl.json +0 -14
  88. package/lib/npoplayer.d.ts +0 -64
  89. package/lib/npoplayer.js +0 -428
  90. package/lib/npoplayer.test.d.ts +0 -1
  91. package/lib/npoplayer.test.js +0 -22
  92. package/lib/package.json +0 -105
  93. package/lib/services/a11y/setup.d.ts +0 -2
  94. package/lib/services/a11y/setup.js +0 -15
  95. package/lib/services/a11y/setup.test.d.ts +0 -1
  96. package/lib/services/a11y/setup.test.js +0 -88
  97. package/lib/services/advertHandlers/discardAdBreak.d.ts +0 -2
  98. package/lib/services/advertHandlers/discardAdBreak.js +0 -9
  99. package/lib/services/advertHandlers/discardAdBreak.test.d.ts +0 -1
  100. package/lib/services/advertHandlers/discardAdBreak.test.js +0 -40
  101. package/lib/services/advertHandlers/handlePreRolls.d.ts +0 -2
  102. package/lib/services/advertHandlers/handlePreRolls.js +0 -136
  103. package/lib/services/advertHandlers/handlePrerolls.test.d.ts +0 -1
  104. package/lib/services/advertHandlers/handlePrerolls.test.js +0 -112
  105. package/lib/services/avTypeHandlers/getAVType.d.ts +0 -2
  106. package/lib/services/avTypeHandlers/getAVType.js +0 -9
  107. package/lib/services/avTypeHandlers/getAVType.test.d.ts +0 -1
  108. package/lib/services/avTypeHandlers/getAVType.test.js +0 -18
  109. package/lib/services/backButton/backButton.d.ts +0 -2
  110. package/lib/services/backButton/backButton.js +0 -24
  111. package/lib/services/cdnProviders/cdnProviders.d.ts +0 -4
  112. package/lib/services/cdnProviders/cdnProviders.js +0 -24
  113. package/lib/services/cdnProviders/cndProviders.test.d.ts +0 -1
  114. package/lib/services/cdnProviders/cndProviders.test.js +0 -22
  115. package/lib/services/chapterHandlers/chapterHandler.d.ts +0 -35
  116. package/lib/services/chapterHandlers/chapterHandler.js +0 -230
  117. package/lib/services/drmHandlers/constants.d.ts +0 -15
  118. package/lib/services/drmHandlers/constants.js +0 -13
  119. package/lib/services/drmHandlers/decideprofile.d.ts +0 -2
  120. package/lib/services/drmHandlers/decideprofile.js +0 -57
  121. package/lib/services/drmHandlers/decideprofile.test.d.ts +0 -1
  122. package/lib/services/drmHandlers/decideprofile.test.js +0 -38
  123. package/lib/services/drmHandlers/drmhandlers.d.ts +0 -2
  124. package/lib/services/drmHandlers/drmhandlers.js +0 -2
  125. package/lib/services/drmHandlers/utils.d.ts +0 -5
  126. package/lib/services/drmHandlers/utils.js +0 -29
  127. package/lib/services/drmHandlers/utils.test.d.ts +0 -1
  128. package/lib/services/drmHandlers/utils.test.js +0 -81
  129. package/lib/services/drmHandlers/verifydrm.d.ts +0 -2
  130. package/lib/services/drmHandlers/verifydrm.js +0 -39
  131. package/lib/services/drmHandlers/verifydrm.test.d.ts +0 -1
  132. package/lib/services/drmHandlers/verifydrm.test.js +0 -112
  133. package/lib/services/errors/errorBackground.test.d.ts +0 -1
  134. package/lib/services/errors/errorBackground.test.js +0 -48
  135. package/lib/services/errors/errorHandler.d.ts +0 -5
  136. package/lib/services/errors/errorHandler.js +0 -59
  137. package/lib/services/errors/errorHandler.test.d.ts +0 -1
  138. package/lib/services/errors/errorHandler.test.js +0 -148
  139. package/lib/services/errors/errorRetryHandler.d.ts +0 -2
  140. package/lib/services/errors/errorRetryHandler.js +0 -14
  141. package/lib/services/errors/errorRetryHandler.test.d.ts +0 -1
  142. package/lib/services/errors/errorRetryHandler.test.js +0 -62
  143. package/lib/services/errors/errorText.d.ts +0 -2
  144. package/lib/services/errors/errorText.js +0 -62
  145. package/lib/services/errors/errorText.test.d.ts +0 -1
  146. package/lib/services/errors/errorText.test.js +0 -66
  147. package/lib/services/eventListenerHandlers/removeEventListeners.d.ts +0 -2
  148. package/lib/services/eventListenerHandlers/removeEventListeners.js +0 -24
  149. package/lib/services/eventListenerHandlers/removeEventListeners.test.d.ts +0 -1
  150. package/lib/services/eventListenerHandlers/removeEventListeners.test.js +0 -36
  151. package/lib/services/infoPanel/infoPanel.d.ts +0 -3
  152. package/lib/services/infoPanel/infoPanel.js +0 -35
  153. package/lib/services/infoPanel/infoPanel.test.d.ts +0 -1
  154. package/lib/services/infoPanel/infoPanel.test.js +0 -70
  155. package/lib/services/keyboardHandlers/resolvekeypress.d.ts +0 -2
  156. package/lib/services/keyboardHandlers/resolvekeypress.js +0 -63
  157. package/lib/services/keyboardHandlers/resolvekeypress.test.d.ts +0 -1
  158. package/lib/services/keyboardHandlers/resolvekeypress.test.js +0 -92
  159. package/lib/services/liveStreamHandlers/handleLiveStreamControls.d.ts +0 -6
  160. package/lib/services/liveStreamHandlers/handleLiveStreamControls.js +0 -36
  161. package/lib/services/liveStreamHandlers/handleLiveStreamControls.test.d.ts +0 -2
  162. package/lib/services/liveStreamHandlers/handleLiveStreamControls.test.js +0 -65
  163. package/lib/services/localStorageHandlers/localStorageHandlers.d.ts +0 -4
  164. package/lib/services/localStorageHandlers/localStorageHandlers.js +0 -36
  165. package/lib/services/localStorageHandlers/localStorageHandlers.test.d.ts +0 -1
  166. package/lib/services/localStorageHandlers/localStorageHandlers.test.js +0 -104
  167. package/lib/services/nicamHandlers/nicamhandler.d.ts +0 -6
  168. package/lib/services/nicamHandlers/nicamhandler.js +0 -69
  169. package/lib/services/nicamHandlers/nicamhandler.test.d.ts +0 -1
  170. package/lib/services/nicamHandlers/nicamhandler.test.js +0 -127
  171. package/lib/services/npoPlayerAPI/contants.d.ts +0 -25
  172. package/lib/services/npoPlayerAPI/contants.js +0 -11
  173. package/lib/services/npoPlayerAPI/npoPlayerAPI.d.ts +0 -53
  174. package/lib/services/npoPlayerAPI/npoPlayerAPI.js +0 -193
  175. package/lib/services/npoPlayerAPI/npoPlayerAPI.test.d.ts +0 -1
  176. package/lib/services/npoPlayerAPI/npoPlayerAPI.test.js +0 -127
  177. package/lib/services/npoPlayerAPI/playerModules.d.ts +0 -1
  178. package/lib/services/npoPlayerAPI/playerModules.js +0 -48
  179. package/lib/services/preferences/handlePreferences.d.ts +0 -2
  180. package/lib/services/preferences/handlePreferences.js +0 -47
  181. package/lib/services/preferences/handlePreferences.test.d.ts +0 -1
  182. package/lib/services/preferences/handlePreferences.test.js +0 -138
  183. package/lib/services/segmentHandlers/addSegmentEventListeners.d.ts +0 -2
  184. package/lib/services/segmentHandlers/addSegmentEventListeners.js +0 -15
  185. package/lib/services/segmentHandlers/addSegmentEventListeners.test.d.ts +0 -1
  186. package/lib/services/segmentHandlers/addSegmentEventListeners.test.js +0 -44
  187. package/lib/services/segmentHandlers/convertFragmentToSegment.d.ts +0 -2
  188. package/lib/services/segmentHandlers/convertFragmentToSegment.js +0 -8
  189. package/lib/services/segmentHandlers/convertFragmentToSegment.test.d.ts +0 -1
  190. package/lib/services/segmentHandlers/convertFragmentToSegment.test.js +0 -17
  191. package/lib/services/segmentHandlers/handleSegmentSeek.d.ts +0 -5
  192. package/lib/services/segmentHandlers/handleSegmentSeek.js +0 -15
  193. package/lib/services/segmentHandlers/handleSegmentSeek.test.d.ts +0 -1
  194. package/lib/services/segmentHandlers/handleSegmentSeek.test.js +0 -73
  195. package/lib/services/segmentHandlers/handleSegmentTimeChanged.d.ts +0 -2
  196. package/lib/services/segmentHandlers/handleSegmentTimeChanged.js +0 -21
  197. package/lib/services/segmentHandlers/handleSegmentTimeChanged.test.d.ts +0 -1
  198. package/lib/services/segmentHandlers/handleSegmentTimeChanged.test.js +0 -43
  199. package/lib/services/segmentHandlers/initSegment.d.ts +0 -7
  200. package/lib/services/segmentHandlers/initSegment.js +0 -10
  201. package/lib/services/segmentHandlers/initSegment.test.d.ts +0 -1
  202. package/lib/services/segmentHandlers/initSegment.test.js +0 -38
  203. package/lib/services/segmentHandlers/isSegmentInBounds.d.ts +0 -2
  204. package/lib/services/segmentHandlers/isSegmentInBounds.js +0 -5
  205. package/lib/services/segmentHandlers/isSegmentInBounds.test.d.ts +0 -1
  206. package/lib/services/segmentHandlers/isSegmentInBounds.test.js +0 -27
  207. package/lib/services/segmentHandlers/setSegmentMarkers.d.ts +0 -2
  208. package/lib/services/segmentHandlers/setSegmentMarkers.js +0 -25
  209. package/lib/services/segmentHandlers/setSegmentMarkers.test.d.ts +0 -1
  210. package/lib/services/segmentHandlers/setSegmentMarkers.test.js +0 -32
  211. package/lib/services/services.d.ts +0 -34
  212. package/lib/services/services.js +0 -129
  213. package/lib/services/streamFetchHandler/fetchStream.d.ts +0 -2
  214. package/lib/services/streamFetchHandler/fetchStream.js +0 -49
  215. package/lib/services/streamFetchHandler/fetchstream.test.d.ts +0 -1
  216. package/lib/services/streamFetchHandler/fetchstream.test.js +0 -92
  217. package/lib/services/streamoptionsHandlers/streamOptionsHandler.d.ts +0 -6
  218. package/lib/services/streamoptionsHandlers/streamOptionsHandler.js +0 -80
  219. package/lib/services/streamoptionsHandlers/streamOptionsHandler.test.d.ts +0 -1
  220. package/lib/services/streamoptionsHandlers/streamOptionsHandler.test.js +0 -199
  221. package/lib/services/trackingHandlers/eventBinding.d.ts +0 -2
  222. package/lib/services/trackingHandlers/eventBinding.js +0 -129
  223. package/lib/services/trackingHandlers/eventBinding.test.d.ts +0 -1
  224. package/lib/services/trackingHandlers/eventBinding.test.js +0 -145
  225. package/lib/services/trackingHandlers/eventLogging.d.ts +0 -2
  226. package/lib/services/trackingHandlers/eventLogging.js +0 -37
  227. package/lib/services/trackingHandlers/eventLogging.test.d.ts +0 -1
  228. package/lib/services/trackingHandlers/eventLogging.test.js +0 -63
  229. package/lib/services/trackingHandlers/index.d.ts +0 -3
  230. package/lib/services/trackingHandlers/index.js +0 -3
  231. package/lib/services/trackingHandlers/playerTrackerInit.d.ts +0 -2
  232. package/lib/services/trackingHandlers/playerTrackerInit.js +0 -20
  233. package/lib/services/trackingHandlers/playerTrackerInit.test.d.ts +0 -1
  234. package/lib/services/trackingHandlers/playerTrackerInit.test.js +0 -75
  235. package/lib/services/trackingHandlers/playerTrackerStart.d.ts +0 -2
  236. package/lib/services/trackingHandlers/playerTrackerStart.js +0 -28
  237. package/lib/services/trackingHandlers/playerTrackerStart.test.d.ts +0 -1
  238. package/lib/services/trackingHandlers/playerTrackerStart.test.js +0 -76
  239. package/lib/services/trackingHandlers/streamTrackerInit.d.ts +0 -3
  240. package/lib/services/trackingHandlers/streamTrackerInit.js +0 -27
  241. package/lib/services/trackingHandlers/streamTrackerInit.test.d.ts +0 -1
  242. package/lib/services/trackingHandlers/streamTrackerInit.test.js +0 -84
  243. package/lib/services/uiHandlers/uiVisiblityHandler.d.ts +0 -3
  244. package/lib/services/uiHandlers/uiVisiblityHandler.js +0 -32
  245. package/lib/services/uiHandlers/uiVisiblityHandler.test.d.ts +0 -1
  246. package/lib/services/uiHandlers/uiVisiblityHandler.test.js +0 -62
  247. package/lib/services/verticalVideoHandlers/handleVerticalVideoControls.d.ts +0 -2
  248. package/lib/services/verticalVideoHandlers/handleVerticalVideoControls.js +0 -6
  249. package/lib/services/verticalVideoHandlers/handleVerticalVideoControls.test.d.ts +0 -1
  250. package/lib/services/verticalVideoHandlers/handleVerticalVideoControls.test.js +0 -23
  251. package/lib/services/verticalVideoHandlers/handleVerticalVideoSettings.d.ts +0 -2
  252. package/lib/services/verticalVideoHandlers/handleVerticalVideoSettings.js +0 -26
  253. package/lib/services/verticalVideoHandlers/handleVerticalVideoSettings.test.d.ts +0 -1
  254. package/lib/services/verticalVideoHandlers/handleVerticalVideoSettings.test.js +0 -73
  255. package/lib/src/js/markers/updateLiveMarkers.d.ts +0 -9
  256. package/lib/src/js/markers/updateLiveMarkers.test.d.ts +0 -1
  257. package/lib/src/js/playeractions/handlers/handleoffsets.d.ts +0 -4
  258. package/lib/src/js/playeractions/handlers/handleoffsets.test.d.ts +0 -1
  259. package/lib/src/js/playeractions/handlers/mediasessionactions.d.ts +0 -7
  260. package/lib/src/js/playeractions/handlers/processplayerconfig.d.ts +0 -3
  261. package/lib/src/js/playeractions/handlers/processplayerconfig.test.d.ts +0 -1
  262. package/lib/src/js/playeractions/handlers/processsourceconfig.d.ts +0 -15
  263. package/lib/src/js/playeractions/handlers/processsourceconfig.test.d.ts +0 -1
  264. package/lib/src/js/playeractions/handlers/removereplayclass.d.ts +0 -2
  265. package/lib/src/js/playeractions/handlers/removereplayclass.test.d.ts +0 -1
  266. package/lib/src/js/playeractions/playeractions.d.ts +0 -3
  267. package/lib/src/js/settings/localization.d.ts +0 -82
  268. package/lib/src/js/settings/settings.user-agent.d.ts +0 -1
  269. package/lib/src/js/utilities/utilities.element.d.ts +0 -16
  270. package/lib/src/js/utilities/utilities.element.test.d.ts +0 -1
  271. package/lib/src/js/utilities/utilities.jwt.d.ts +0 -5
  272. package/lib/src/js/utilities/utilities.jwt.test.d.ts +0 -1
  273. package/lib/src/js/utilities/utilities.locale.d.ts +0 -2
  274. package/lib/src/js/utilities/utilities.locale.test.d.ts +0 -1
  275. package/lib/src/js/utilities/utilities.module.d.ts +0 -1
  276. package/lib/src/js/utilities/utilities.module.test.d.ts +0 -1
  277. package/lib/src/js/utilities/utilities.prid.d.ts +0 -6
  278. package/lib/src/js/utilities/utilities.prid.test.d.ts +0 -1
  279. package/lib/src/js/utilities/utilities.stream.d.ts +0 -7
  280. package/lib/src/js/utilities/utilities.stream.test.d.ts +0 -1
  281. package/lib/src/js/utilities/utilities.text.d.ts +0 -1
  282. package/lib/src/js/utilities/utilities.text.test.d.ts +0 -1
  283. package/lib/src/js/utilities/utilities.time.d.ts +0 -1
  284. package/lib/src/js/utilities/utilities.time.test.d.ts +0 -1
  285. package/lib/src/js/utilities/utilities.url.d.ts +0 -3
  286. package/lib/src/js/utilities/utilities.url.test.d.ts +0 -1
  287. package/lib/src/js/utilities/utilities.user-agent.d.ts +0 -3
  288. package/lib/src/js/utilities/utilities.user-agent.test.d.ts +0 -1
  289. package/lib/src/js/utilities/utilities.version.d.ts +0 -1
  290. package/lib/src/js/utilities/utilities.version.test.d.ts +0 -1
  291. package/lib/src/npoplayer.d.ts +0 -64
  292. package/lib/src/npoplayer.test.d.ts +0 -1
  293. package/lib/src/services/a11y/setup.d.ts +0 -2
  294. package/lib/src/services/a11y/setup.test.d.ts +0 -1
  295. package/lib/src/services/advertHandlers/discardAdBreak.d.ts +0 -2
  296. package/lib/src/services/advertHandlers/discardAdBreak.test.d.ts +0 -1
  297. package/lib/src/services/advertHandlers/handlePreRolls.d.ts +0 -2
  298. package/lib/src/services/advertHandlers/handlePrerolls.test.d.ts +0 -1
  299. package/lib/src/services/avTypeHandlers/getAVType.d.ts +0 -2
  300. package/lib/src/services/avTypeHandlers/getAVType.test.d.ts +0 -1
  301. package/lib/src/services/backButton/backButton.d.ts +0 -2
  302. package/lib/src/services/cdnProviders/cdnProviders.d.ts +0 -4
  303. package/lib/src/services/cdnProviders/cndProviders.test.d.ts +0 -1
  304. package/lib/src/services/chapterHandlers/chapterHandler.d.ts +0 -35
  305. package/lib/src/services/drmHandlers/constants.d.ts +0 -15
  306. package/lib/src/services/drmHandlers/decideprofile.d.ts +0 -2
  307. package/lib/src/services/drmHandlers/decideprofile.test.d.ts +0 -1
  308. package/lib/src/services/drmHandlers/drmhandlers.d.ts +0 -2
  309. package/lib/src/services/drmHandlers/utils.d.ts +0 -5
  310. package/lib/src/services/drmHandlers/utils.test.d.ts +0 -1
  311. package/lib/src/services/drmHandlers/verifydrm.d.ts +0 -2
  312. package/lib/src/services/drmHandlers/verifydrm.test.d.ts +0 -1
  313. package/lib/src/services/errors/errorBackground.test.d.ts +0 -1
  314. package/lib/src/services/errors/errorHandler.d.ts +0 -5
  315. package/lib/src/services/errors/errorHandler.test.d.ts +0 -1
  316. package/lib/src/services/errors/errorRetryHandler.d.ts +0 -2
  317. package/lib/src/services/errors/errorRetryHandler.test.d.ts +0 -1
  318. package/lib/src/services/errors/errorText.d.ts +0 -2
  319. package/lib/src/services/errors/errorText.test.d.ts +0 -1
  320. package/lib/src/services/eventListenerHandlers/removeEventListeners.d.ts +0 -2
  321. package/lib/src/services/eventListenerHandlers/removeEventListeners.test.d.ts +0 -1
  322. package/lib/src/services/infoPanel/infoPanel.d.ts +0 -3
  323. package/lib/src/services/infoPanel/infoPanel.test.d.ts +0 -1
  324. package/lib/src/services/keyboardHandlers/resolvekeypress.d.ts +0 -2
  325. package/lib/src/services/keyboardHandlers/resolvekeypress.test.d.ts +0 -1
  326. package/lib/src/services/liveStreamHandlers/handleLiveStreamControls.d.ts +0 -6
  327. package/lib/src/services/liveStreamHandlers/handleLiveStreamControls.test.d.ts +0 -2
  328. package/lib/src/services/localStorageHandlers/localStorageHandlers.d.ts +0 -4
  329. package/lib/src/services/localStorageHandlers/localStorageHandlers.test.d.ts +0 -1
  330. package/lib/src/services/nicamHandlers/nicamhandler.d.ts +0 -6
  331. package/lib/src/services/nicamHandlers/nicamhandler.test.d.ts +0 -1
  332. package/lib/src/services/npoPlayerAPI/contants.d.ts +0 -25
  333. package/lib/src/services/npoPlayerAPI/npoPlayerAPI.d.ts +0 -53
  334. package/lib/src/services/npoPlayerAPI/npoPlayerAPI.test.d.ts +0 -1
  335. package/lib/src/services/npoPlayerAPI/playerModules.d.ts +0 -1
  336. package/lib/src/services/preferences/handlePreferences.d.ts +0 -2
  337. package/lib/src/services/preferences/handlePreferences.test.d.ts +0 -1
  338. package/lib/src/services/segmentHandlers/addSegmentEventListeners.d.ts +0 -2
  339. package/lib/src/services/segmentHandlers/addSegmentEventListeners.test.d.ts +0 -1
  340. package/lib/src/services/segmentHandlers/convertFragmentToSegment.d.ts +0 -2
  341. package/lib/src/services/segmentHandlers/convertFragmentToSegment.test.d.ts +0 -1
  342. package/lib/src/services/segmentHandlers/handleSegmentSeek.d.ts +0 -5
  343. package/lib/src/services/segmentHandlers/handleSegmentSeek.test.d.ts +0 -1
  344. package/lib/src/services/segmentHandlers/handleSegmentTimeChanged.d.ts +0 -2
  345. package/lib/src/services/segmentHandlers/handleSegmentTimeChanged.test.d.ts +0 -1
  346. package/lib/src/services/segmentHandlers/initSegment.d.ts +0 -7
  347. package/lib/src/services/segmentHandlers/initSegment.test.d.ts +0 -1
  348. package/lib/src/services/segmentHandlers/isSegmentInBounds.d.ts +0 -2
  349. package/lib/src/services/segmentHandlers/isSegmentInBounds.test.d.ts +0 -1
  350. package/lib/src/services/segmentHandlers/setSegmentMarkers.d.ts +0 -2
  351. package/lib/src/services/segmentHandlers/setSegmentMarkers.test.d.ts +0 -1
  352. package/lib/src/services/services.d.ts +0 -34
  353. package/lib/src/services/streamFetchHandler/fetchStream.d.ts +0 -2
  354. package/lib/src/services/streamFetchHandler/fetchstream.test.d.ts +0 -1
  355. package/lib/src/services/streamoptionsHandlers/streamOptionsHandler.d.ts +0 -6
  356. package/lib/src/services/streamoptionsHandlers/streamOptionsHandler.test.d.ts +0 -1
  357. package/lib/src/services/trackingHandlers/eventBinding.d.ts +0 -2
  358. package/lib/src/services/trackingHandlers/eventBinding.test.d.ts +0 -1
  359. package/lib/src/services/trackingHandlers/eventLogging.d.ts +0 -2
  360. package/lib/src/services/trackingHandlers/eventLogging.test.d.ts +0 -1
  361. package/lib/src/services/trackingHandlers/index.d.ts +0 -3
  362. package/lib/src/services/trackingHandlers/playerTrackerInit.d.ts +0 -2
  363. package/lib/src/services/trackingHandlers/playerTrackerInit.test.d.ts +0 -1
  364. package/lib/src/services/trackingHandlers/playerTrackerStart.d.ts +0 -2
  365. package/lib/src/services/trackingHandlers/playerTrackerStart.test.d.ts +0 -1
  366. package/lib/src/services/trackingHandlers/streamTrackerInit.d.ts +0 -3
  367. package/lib/src/services/trackingHandlers/streamTrackerInit.test.d.ts +0 -1
  368. package/lib/src/services/uiHandlers/uiVisiblityHandler.d.ts +0 -3
  369. package/lib/src/services/uiHandlers/uiVisiblityHandler.test.d.ts +0 -1
  370. package/lib/src/services/verticalVideoHandlers/handleVerticalVideoControls.d.ts +0 -2
  371. package/lib/src/services/verticalVideoHandlers/handleVerticalVideoControls.test.d.ts +0 -1
  372. package/lib/src/services/verticalVideoHandlers/handleVerticalVideoSettings.d.ts +0 -2
  373. package/lib/src/services/verticalVideoHandlers/handleVerticalVideoSettings.test.d.ts +0 -1
  374. package/lib/src/types/classes.d.ts +0 -10
  375. package/lib/src/types/events.d.ts +0 -98
  376. package/lib/src/types/interfaces.d.ts +0 -246
  377. package/lib/src/ui/components/adbutton.d.ts +0 -4
  378. package/lib/src/ui/components/adlabel.d.ts +0 -4
  379. package/lib/src/ui/components/audio/controlbar.d.ts +0 -3
  380. package/lib/src/ui/components/backButton.d.ts +0 -2
  381. package/lib/src/ui/components/buttons.d.ts +0 -42
  382. package/lib/src/ui/components/controlbar.d.ts +0 -3
  383. package/lib/src/ui/components/ctabar.d.ts +0 -4
  384. package/lib/src/ui/components/infopanel/infopanel.d.ts +0 -3
  385. package/lib/src/ui/components/infopanel/togglebutton.d.ts +0 -3
  386. package/lib/src/ui/components/playnext.d.ts +0 -4
  387. package/lib/src/ui/components/seekbar.d.ts +0 -6
  388. package/lib/src/ui/components/settingspanel.d.ts +0 -3
  389. package/lib/src/ui/components/titlebar.d.ts +0 -3
  390. package/lib/src/ui/components/topbar.d.ts +0 -3
  391. package/lib/src/ui/components/verticalvideo/controlbar.d.ts +0 -3
  392. package/lib/src/ui/components/verticalvideo/settingspanel.d.ts +0 -2
  393. package/lib/src/ui/handlers/accessibilityhandler.d.ts +0 -2
  394. package/lib/src/ui/handlers/accessibilityhandler.test.d.ts +0 -1
  395. package/lib/src/ui/handlers/domhandlers.d.ts +0 -3
  396. package/lib/src/ui/handlers/domhandlers.test.d.ts +0 -1
  397. package/lib/src/ui/handlers/listboxhandlers.d.ts +0 -19
  398. package/lib/src/ui/handlers/playnextscreen.d.ts +0 -6
  399. package/lib/src/ui/handlers/playnextscreen.test.d.ts +0 -1
  400. package/lib/src/ui/handlers/timecontrolhandlers.d.ts +0 -3
  401. package/lib/src/ui/uicontainer.d.ts +0 -3
  402. package/lib/src/ui/uicontainer.test.d.ts +0 -1
  403. package/lib/tests/jest.setup-files-after-env.d.ts +0 -0
  404. package/lib/tests/jest.setup-files-after-env.js +0 -6
  405. package/lib/tests/jest.setup-tests.d.ts +0 -1
  406. package/lib/tests/jest.setup-tests.js +0 -2
  407. package/lib/tests/mocks/mockLogEmitter.d.ts +0 -2
  408. package/lib/tests/mocks/mockLogEmitter.js +0 -20
  409. package/lib/tests/mocks/mockNpoplayer.d.ts +0 -2
  410. package/lib/tests/mocks/mockNpoplayer.js +0 -105
  411. package/lib/tests/mocks/mockPlayerAPI.d.ts +0 -3
  412. package/lib/tests/mocks/mockPlayerAPI.js +0 -195
  413. package/lib/tests/mocks/mockPlayerUi.d.ts +0 -64
  414. package/lib/tests/mocks/mockPlayerUi.js +0 -251
  415. package/lib/tests/mocks/mockStreamObject.d.ts +0 -2
  416. package/lib/tests/mocks/mockStreamObject.js +0 -21
  417. package/lib/tests/mocks/playerContextMock.d.ts +0 -7
  418. package/lib/tests/mocks/playerContextMock.js +0 -153
  419. package/lib/types/classes.d.ts +0 -10
  420. package/lib/types/classes.js +0 -15
  421. package/lib/types/events.d.ts +0 -98
  422. package/lib/types/events.js +0 -184
  423. package/lib/types/interfaces.d.ts +0 -246
  424. package/lib/types/interfaces.js +0 -20
  425. package/lib/ui/components/adbutton.d.ts +0 -4
  426. package/lib/ui/components/adbutton.js +0 -12
  427. package/lib/ui/components/adlabel.d.ts +0 -4
  428. package/lib/ui/components/adlabel.js +0 -8
  429. package/lib/ui/components/audio/controlbar.d.ts +0 -3
  430. package/lib/ui/components/audio/controlbar.js +0 -23
  431. package/lib/ui/components/backButton.d.ts +0 -2
  432. package/lib/ui/components/backButton.js +0 -8
  433. package/lib/ui/components/buttons.d.ts +0 -42
  434. package/lib/ui/components/buttons.js +0 -144
  435. package/lib/ui/components/controlbar.d.ts +0 -3
  436. package/lib/ui/components/controlbar.js +0 -40
  437. package/lib/ui/components/ctabar.d.ts +0 -4
  438. package/lib/ui/components/ctabar.js +0 -28
  439. package/lib/ui/components/infopanel/infopanel.d.ts +0 -3
  440. package/lib/ui/components/infopanel/infopanel.js +0 -42
  441. package/lib/ui/components/infopanel/togglebutton.d.ts +0 -3
  442. package/lib/ui/components/infopanel/togglebutton.js +0 -18
  443. package/lib/ui/components/playnext.d.ts +0 -4
  444. package/lib/ui/components/playnext.js +0 -10
  445. package/lib/ui/components/seekbar.d.ts +0 -6
  446. package/lib/ui/components/seekbar.js +0 -26
  447. package/lib/ui/components/settingspanel.d.ts +0 -3
  448. package/lib/ui/components/settingspanel.js +0 -159
  449. package/lib/ui/components/titlebar.d.ts +0 -3
  450. package/lib/ui/components/titlebar.js +0 -14
  451. package/lib/ui/components/topbar.d.ts +0 -3
  452. package/lib/ui/components/topbar.js +0 -36
  453. package/lib/ui/components/verticalvideo/controlbar.d.ts +0 -3
  454. package/lib/ui/components/verticalvideo/controlbar.js +0 -40
  455. package/lib/ui/components/verticalvideo/settingspanel.d.ts +0 -2
  456. package/lib/ui/components/verticalvideo/settingspanel.js +0 -25
  457. package/lib/ui/handlers/accessibilityhandler.d.ts +0 -2
  458. package/lib/ui/handlers/accessibilityhandler.js +0 -22
  459. package/lib/ui/handlers/accessibilityhandler.test.d.ts +0 -1
  460. package/lib/ui/handlers/accessibilityhandler.test.js +0 -54
  461. package/lib/ui/handlers/domhandlers.d.ts +0 -3
  462. package/lib/ui/handlers/domhandlers.js +0 -7
  463. package/lib/ui/handlers/domhandlers.test.d.ts +0 -1
  464. package/lib/ui/handlers/domhandlers.test.js +0 -31
  465. package/lib/ui/handlers/listboxhandlers.d.ts +0 -19
  466. package/lib/ui/handlers/listboxhandlers.js +0 -43
  467. package/lib/ui/handlers/playnextscreen.d.ts +0 -6
  468. package/lib/ui/handlers/playnextscreen.js +0 -28
  469. package/lib/ui/handlers/playnextscreen.test.d.ts +0 -1
  470. package/lib/ui/handlers/playnextscreen.test.js +0 -57
  471. package/lib/ui/handlers/timecontrolhandlers.d.ts +0 -3
  472. package/lib/ui/handlers/timecontrolhandlers.js +0 -17
  473. package/lib/ui/uicontainer.d.ts +0 -3
  474. package/lib/ui/uicontainer.js +0 -80
  475. package/lib/ui/uicontainer.test.d.ts +0 -1
  476. package/lib/ui/uicontainer.test.js +0 -84
  477. package/src/style/components/_advert.scss +0 -119
  478. package/src/style/components/_audio.scss +0 -4
  479. package/src/style/components/_back-button.scss +0 -42
  480. package/src/style/components/_buffering.scss +0 -69
  481. package/src/style/components/_controlbars.scss +0 -26
  482. package/src/style/components/_error.scss +0 -71
  483. package/src/style/components/_hugeplaybacktogglebutton.scss +0 -97
  484. package/src/style/components/_icons.scss +0 -177
  485. package/src/style/components/_infopanel.scss +0 -105
  486. package/src/style/components/_metadata.scss +0 -52
  487. package/src/style/components/_nicam.scss +0 -117
  488. package/src/style/components/_playnext.scss +0 -72
  489. package/src/style/components/_poster.scss +0 -3
  490. package/src/style/components/_replay.scss +0 -25
  491. package/src/style/components/_seekbar.scss +0 -114
  492. package/src/style/components/_seekbarthumbnail.scss +0 -61
  493. package/src/style/components/_settingspanel.scss +0 -290
  494. package/src/style/components/_subtitles.scss +0 -78
  495. package/src/style/components/_textbuttons.scss +0 -82
  496. package/src/style/components/_volumeslider.scss +0 -94
  497. package/src/style/components/audio/_bottombar.scss +0 -54
  498. package/src/style/components/audio/_buffering.scss +0 -8
  499. package/src/style/components/audio/_errors.scss +0 -13
  500. package/src/style/components/audio/_metadata.scss +0 -60
  501. package/src/style/components/audio/_playbutton.scss +0 -54
  502. package/src/style/components/audio/_poster.scss +0 -19
  503. package/src/style/components/audio/_replay.scss +0 -28
  504. package/src/style/components/audio/_seekbar.scss +0 -28
  505. package/src/style/components/audio/_topbar.scss +0 -35
  506. package/src/style/components/audio/_vars.scss +0 -5
  507. package/src/style/components/audio/_volumeslider.scss +0 -41
  508. package/src/style/components/vertical-video/_bottombar.scss +0 -60
  509. package/src/style/components/vertical-video/_buttons.scss +0 -25
  510. package/src/style/components/vertical-video/_hugeplaybacktogglebutton.scss +0 -34
  511. package/src/style/components/vertical-video/_seekbar.scss +0 -19
  512. package/src/style/components/vertical-video/_settingsbutton.scss +0 -7
  513. package/src/style/components/vertical-video/_settingspanel.scss +0 -31
  514. package/src/style/components/vertical-video/_shortvideo.scss +0 -14
  515. package/src/style/components/vertical-video/_subtitles.scss +0 -3
  516. package/src/style/components/vertical-video/_topbar.scss +0 -58
  517. package/src/style/components/vertical-video/_volumeslider.scss +0 -9
  518. package/src/style/npoplayer.css +0 -908
  519. package/src/style/npoplayer.scss +0 -58
  520. package/src/style/variants/_player-audio-only.scss +0 -32
  521. package/src/style/variants/_player-audio.scss +0 -55
  522. package/src/style/variants/_player-base.scss +0 -101
  523. package/src/style/variants/_player-debug.scss +0 -14
  524. package/src/style/variants/_player-large.scss +0 -99
  525. package/src/style/variants/_player-medium.scss +0 -68
  526. package/src/style/variants/_player-small.scss +0 -203
  527. package/src/style/variants/_player-vertical.scss +0 -23
  528. package/src/style/vars/_audio.scss +0 -5
  529. package/src/style/vars/_colors.scss +0 -25
  530. package/src/style/vars/_fonts.scss +0 -26
  531. package/src/style/vars/_icons.scss +0 -29
  532. package/src/style/vars/_z-index.scss +0 -1
@@ -1,35 +0,0 @@
1
- import { Chapter, PlayerContext } from '../../types/interfaces';
2
- export declare const defaultSkippableChapterTypes: string[];
3
- export interface ChapterHandlerOptions {
4
- chapters: Chapter[];
5
- showSkipButtons?: boolean;
6
- skippableTypes?: string[];
7
- }
8
- export declare class ChapterHandler {
9
- private readonly playerContext;
10
- private readonly defaultSkippableTypes;
11
- private readonly options;
12
- private lastShownFrom?;
13
- private hideTimeout?;
14
- private controlsVisible;
15
- private currentChapter?;
16
- private isForceShowing;
17
- private isPaused;
18
- private pausedTimeRemaining?;
19
- constructor(playerContext: PlayerContext, options: ChapterHandlerOptions);
20
- getCurrentChapter(currentTimeMs: number): Chapter | undefined;
21
- isChapterSkippable(chapter: Chapter): boolean;
22
- handleTimeChange(): void;
23
- reset(): void;
24
- handlePause(): void;
25
- handlePlay(): void;
26
- setControlsVisibility(visible: boolean): void;
27
- private setupSkipButtonHandler;
28
- private skipCurrentChapter;
29
- private updateSkipButtonVisibility;
30
- private startFadeOut;
31
- private forceShowButton;
32
- private getCurrentControlsVisibility;
33
- private startHideTimeout;
34
- private clearHideTimeout;
35
- }
@@ -1,230 +0,0 @@
1
- export const defaultSkippableChapterTypes = ['INTRO', 'RECAP'];
2
- const TEXT_BUTTON_BAR_SELECTOR = '.bmpui-controlbar-textbuttons';
3
- const FADING_OUT_CLASS = 'fading-out';
4
- const FADING_IN_CLASS = 'fading-in';
5
- export class ChapterHandler {
6
- constructor(playerContext, options) {
7
- this.defaultSkippableTypes = defaultSkippableChapterTypes;
8
- this.controlsVisible = undefined;
9
- this.isForceShowing = false;
10
- this.isPaused = false;
11
- this.playerContext = playerContext;
12
- this.options = { showSkipButtons: true, skippableTypes: this.defaultSkippableTypes, ...options };
13
- this.setupSkipButtonHandler();
14
- }
15
- getCurrentChapter(currentTimeMs) {
16
- return this.options.chapters.find((c) => currentTimeMs >= c.from && currentTimeMs < c.until);
17
- }
18
- isChapterSkippable(chapter) {
19
- if (chapter.type === 'IDENT')
20
- return false;
21
- return !!this.options.skippableTypes?.includes(chapter.type);
22
- }
23
- handleTimeChange() {
24
- const { player } = this.playerContext;
25
- if (!player || this.options.chapters.length === 0 || !this.options.showSkipButtons)
26
- return;
27
- const tMs = player.getCurrentTime() * 1000;
28
- const ch = this.getCurrentChapter(tMs);
29
- this.currentChapter = ch;
30
- if (ch && this.isChapterSkippable(ch)) {
31
- if (this.lastShownFrom === undefined || this.lastShownFrom !== ch.from) {
32
- this.lastShownFrom = ch.from;
33
- this.clearHideTimeout();
34
- this.isForceShowing = true;
35
- this.controlsVisible ?? (this.controlsVisible = this.getCurrentControlsVisibility());
36
- this.forceShowButton(true);
37
- if (!this.isPaused && !this.controlsVisible) {
38
- this.startHideTimeout();
39
- }
40
- }
41
- else if (!this.isForceShowing) {
42
- this.updateSkipButtonVisibility();
43
- }
44
- }
45
- else {
46
- if (this.lastShownFrom !== undefined) {
47
- this.clearHideTimeout();
48
- this.lastShownFrom = undefined;
49
- }
50
- if (this.isForceShowing) {
51
- this.isForceShowing = false;
52
- this.forceShowButton(false);
53
- }
54
- this.updateSkipButtonVisibility();
55
- }
56
- }
57
- reset() {
58
- this.clearHideTimeout();
59
- this.lastShownFrom = undefined;
60
- this.currentChapter = undefined;
61
- this.isForceShowing = false;
62
- this.isPaused = false;
63
- this.pausedTimeRemaining = undefined;
64
- this.controlsVisible = undefined;
65
- this.forceShowButton(false);
66
- this.updateSkipButtonVisibility();
67
- }
68
- handlePause() {
69
- if (this.hideTimeout && this.isForceShowing) {
70
- this.isPaused = true;
71
- this.clearHideTimeout();
72
- }
73
- }
74
- handlePlay() {
75
- if (this.isPaused && this.isForceShowing) {
76
- this.isPaused = false;
77
- if (!this.controlsVisible) {
78
- this.startHideTimeout();
79
- }
80
- }
81
- }
82
- setControlsVisibility(visible) {
83
- const wasVisible = this.controlsVisible;
84
- this.controlsVisible = visible;
85
- if (visible && !wasVisible && this.isForceShowing) {
86
- this.clearHideTimeout();
87
- }
88
- else if (!visible && wasVisible && this.isForceShowing && !this.isPaused) {
89
- this.clearHideTimeout();
90
- this.startHideTimeout();
91
- }
92
- if (!this.isForceShowing) {
93
- this.updateSkipButtonVisibility();
94
- }
95
- }
96
- setupSkipButtonHandler() {
97
- const { skipChapterButton } = this.playerContext.npoPlayer.uiComponents;
98
- if (!skipChapterButton)
99
- return;
100
- skipChapterButton.onClick.subscribe(() => {
101
- this.skipCurrentChapter();
102
- });
103
- }
104
- skipCurrentChapter() {
105
- if (!this.currentChapter)
106
- return;
107
- const { player } = this.playerContext;
108
- player.seek(this.currentChapter.until / 1000);
109
- this.clearHideTimeout();
110
- this.lastShownFrom = undefined;
111
- if (this.isForceShowing) {
112
- this.isForceShowing = false;
113
- this.forceShowButton(false);
114
- }
115
- this.updateSkipButtonVisibility();
116
- }
117
- updateSkipButtonVisibility() {
118
- const { skipChapterButton } = this.playerContext.npoPlayer.uiComponents;
119
- if (!skipChapterButton)
120
- return;
121
- const shouldShow = this.currentChapter && this.isChapterSkippable(this.currentChapter) && this.controlsVisible;
122
- if (shouldShow && this.currentChapter) {
123
- skipChapterButton.setText(`${this.currentChapter.title}`);
124
- skipChapterButton.show();
125
- }
126
- else {
127
- skipChapterButton.hide();
128
- }
129
- }
130
- startFadeOut() {
131
- if (!this.isForceShowing || !this.currentChapter)
132
- return;
133
- if (this.controlsVisible || this.isPaused)
134
- return;
135
- const { skipChapterButton } = this.playerContext.npoPlayer.uiComponents;
136
- if (!skipChapterButton)
137
- return;
138
- const buttonElement = skipChapterButton.getDomElement();
139
- const playerContainer = this.playerContext.player.getNpoPlayerElement();
140
- const ctaBar = playerContainer?.querySelector(TEXT_BUTTON_BAR_SELECTOR);
141
- if (buttonElement) {
142
- buttonElement.removeClass(FADING_IN_CLASS);
143
- buttonElement.addClass(FADING_OUT_CLASS);
144
- }
145
- if (ctaBar) {
146
- ctaBar.classList.remove(FADING_IN_CLASS);
147
- ctaBar.classList.add(FADING_OUT_CLASS);
148
- }
149
- setTimeout(() => {
150
- this.isForceShowing = false;
151
- this.forceShowButton(false);
152
- this.updateSkipButtonVisibility();
153
- }, 400);
154
- }
155
- forceShowButton(forceVisible) {
156
- const { skipChapterButton } = this.playerContext.npoPlayer.uiComponents;
157
- if (!skipChapterButton || !this.currentChapter)
158
- return;
159
- if (forceVisible && !this.isChapterSkippable(this.currentChapter)) {
160
- return;
161
- }
162
- const playerContainer = this.playerContext.player.getNpoPlayerElement();
163
- if (forceVisible) {
164
- skipChapterButton.setText(`${this.currentChapter.title}`);
165
- skipChapterButton.show();
166
- const buttonElement = skipChapterButton.getDomElement();
167
- if (buttonElement) {
168
- buttonElement.addClass('force-visible-skip-button');
169
- buttonElement.removeClass(FADING_OUT_CLASS);
170
- buttonElement.addClass(FADING_IN_CLASS);
171
- }
172
- const ctaBar = playerContainer?.querySelector(TEXT_BUTTON_BAR_SELECTOR);
173
- if (ctaBar) {
174
- ctaBar.classList.add('force-visible-container');
175
- ctaBar.classList.remove(FADING_OUT_CLASS);
176
- ctaBar.classList.add(FADING_IN_CLASS);
177
- }
178
- setTimeout(() => {
179
- if (buttonElement) {
180
- buttonElement.removeClass(FADING_IN_CLASS);
181
- }
182
- if (ctaBar) {
183
- ctaBar.classList.remove(FADING_IN_CLASS);
184
- }
185
- }, 50);
186
- }
187
- else {
188
- const buttonElement = skipChapterButton.getDomElement();
189
- if (buttonElement) {
190
- buttonElement.removeClass('force-visible-skip-button');
191
- buttonElement.removeClass(FADING_OUT_CLASS);
192
- buttonElement.removeClass(FADING_IN_CLASS);
193
- }
194
- const ctaBar = playerContainer?.querySelector(TEXT_BUTTON_BAR_SELECTOR);
195
- if (ctaBar) {
196
- ctaBar.classList.remove('force-visible-container');
197
- ctaBar.classList.remove(FADING_OUT_CLASS);
198
- ctaBar.classList.remove(FADING_IN_CLASS);
199
- }
200
- }
201
- }
202
- getCurrentControlsVisibility() {
203
- const { uiManager } = this.playerContext.npoPlayer;
204
- if (!uiManager?.activeUi)
205
- return true;
206
- try {
207
- const uiContainer = uiManager.activeUi.getUI();
208
- if (!uiContainer)
209
- return true;
210
- const containerElement = uiContainer.getDomElement();
211
- if (!containerElement)
212
- return true;
213
- return !containerElement.hasClass('bmpui-controls-hidden');
214
- }
215
- catch {
216
- return true;
217
- }
218
- }
219
- startHideTimeout() {
220
- this.hideTimeout = window.setTimeout(() => {
221
- this.startFadeOut();
222
- }, 7400);
223
- }
224
- clearHideTimeout() {
225
- if (this.hideTimeout) {
226
- window.clearTimeout(this.hideTimeout);
227
- this.hideTimeout = undefined;
228
- }
229
- }
230
- }
@@ -1,15 +0,0 @@
1
- export declare const appleDRM: string[];
2
- export declare const openDRM: string[];
3
- export declare enum DRM_TYPES {
4
- FAIRPLAY = "fairplay",
5
- WIDEVINE = "widevine",
6
- PLAYREADY = "playready"
7
- }
8
- export declare enum STREAM_TYPES {
9
- DASH = "dash",
10
- HLS = "hls"
11
- }
12
- export type DRMInfo = {
13
- supportedDRM: string[];
14
- preferredDRM: string;
15
- };
@@ -1,13 +0,0 @@
1
- export const appleDRM = ['com.apple.fps.1_0', 'com.apple.fps.2_0'];
2
- export const openDRM = ['com.widevine.alpha', 'com.microsoft.playready'];
3
- export var DRM_TYPES;
4
- (function (DRM_TYPES) {
5
- DRM_TYPES["FAIRPLAY"] = "fairplay";
6
- DRM_TYPES["WIDEVINE"] = "widevine";
7
- DRM_TYPES["PLAYREADY"] = "playready";
8
- })(DRM_TYPES || (DRM_TYPES = {}));
9
- export var STREAM_TYPES;
10
- (function (STREAM_TYPES) {
11
- STREAM_TYPES["DASH"] = "dash";
12
- STREAM_TYPES["HLS"] = "hls";
13
- })(STREAM_TYPES || (STREAM_TYPES = {}));
@@ -1,2 +0,0 @@
1
- import { type Profile, PlayerContext } from '../../types/interfaces';
2
- export declare function decideProfile(playerContext: PlayerContext, preferredDRM?: string): Promise<Profile>;
@@ -1,57 +0,0 @@
1
- import { DRM_TYPES, STREAM_TYPES } from './constants';
2
- import { getBestDRMForDash, getBestDRMForHls } from './utils';
3
- export async function decideProfile(playerContext, preferredDRM = '') {
4
- if (!playerContext.player) {
5
- console.error('No player detected');
6
- return { profileName: '', drm: '' };
7
- }
8
- const { player } = playerContext;
9
- const supportedTech = player.getSupportedTech();
10
- const supportedDRM = await player.getSupportedDRM();
11
- const isSafari = /^((?!chrome|android).)*safari/i.test(navigator.userAgent);
12
- if ((isSafari && supportedTech.some((tech) => tech.streaming === 'hls') && supportedDRM.includes(DRM_TYPES.FAIRPLAY)) ||
13
- preferredDRM === DRM_TYPES.FAIRPLAY) {
14
- return { profileName: STREAM_TYPES.HLS, drm: DRM_TYPES.FAIRPLAY };
15
- }
16
- const { bestWithDRM, bestDRM } = determineBestWithDRM(supportedTech, { supportedDRM, preferredDRM });
17
- const bestWithoutDRM = determineBestWithoutDRM(supportedTech);
18
- return bestWithDRM ? { profileName: bestWithDRM, drm: bestDRM } : { profileName: bestWithoutDRM, drm: undefined };
19
- }
20
- function determineBestWithDRM(supportedTech, drmInfo) {
21
- let bestWithDRM = '';
22
- let bestDRM = '';
23
- const techMap = {
24
- dash: { drm: DRM_TYPES.WIDEVINE, stream: STREAM_TYPES.DASH },
25
- hls: { drm: DRM_TYPES.FAIRPLAY, stream: STREAM_TYPES.HLS },
26
- whep: {
27
- drm: drmInfo.preferredDRM === DRM_TYPES.FAIRPLAY ? DRM_TYPES.FAIRPLAY : '',
28
- stream: drmInfo.preferredDRM === DRM_TYPES.FAIRPLAY ? STREAM_TYPES.HLS : STREAM_TYPES.DASH
29
- }
30
- };
31
- for (const tech of supportedTech) {
32
- if (bestWithDRM)
33
- continue;
34
- if (techMap[tech.streaming]) {
35
- const { drm, stream } = techMap[tech.streaming];
36
- if ((drmInfo.preferredDRM === DRM_TYPES.PLAYREADY || drmInfo.supportedDRM.includes(DRM_TYPES.PLAYREADY)) &&
37
- tech.streaming === STREAM_TYPES.DASH) {
38
- bestWithDRM = STREAM_TYPES.DASH;
39
- bestDRM = DRM_TYPES.PLAYREADY;
40
- break;
41
- }
42
- if (drmInfo.preferredDRM !== drm) {
43
- bestDRM =
44
- tech.streaming === STREAM_TYPES.DASH ? getBestDRMForDash(drmInfo) : getBestDRMForHls(drmInfo);
45
- if (bestDRM)
46
- bestWithDRM = stream;
47
- }
48
- }
49
- }
50
- return { bestWithDRM, bestDRM };
51
- }
52
- function determineBestWithoutDRM(supportedTech) {
53
- for (const tech of supportedTech) {
54
- return tech.streaming;
55
- }
56
- return '';
57
- }
@@ -1 +0,0 @@
1
- export {};
@@ -1,38 +0,0 @@
1
- import { decideProfile } from './decideprofile';
2
- import { mockNpoPlayer } from '../../../tests/mocks/mockNpoplayer';
3
- import { STREAM_TYPES, DRM_TYPES } from './constants';
4
- describe('decideProfile', () => {
5
- let mockPlayer;
6
- const mockNpoplayer = mockNpoPlayer;
7
- let mockPlayerContext;
8
- beforeEach(() => {
9
- jest.clearAllMocks();
10
- mockPlayer = {
11
- getSupportedTech: jest.fn().mockReturnValue([{ streaming: STREAM_TYPES.DASH }, { streaming: STREAM_TYPES.HLS }]),
12
- getSupportedDRM: jest
13
- .fn()
14
- .mockResolvedValue(['com.widevine.alpha', 'com.microsoft.playready', 'com.apple.fps.1_0'])
15
- };
16
- mockPlayerContext = { player: mockPlayer, npoPlayer: mockNpoplayer };
17
- });
18
- afterEach(() => {
19
- jest.clearAllMocks();
20
- });
21
- it('should return profile with dash streaming and widevine DRM', async () => {
22
- const result = await decideProfile(mockPlayerContext);
23
- expect(result).toEqual({ profileName: STREAM_TYPES.DASH, drm: DRM_TYPES.WIDEVINE });
24
- });
25
- it('should return profile with hls streaming and fairplay DRM on Safari', async () => {
26
- Object.defineProperty(window.navigator, 'userAgent', { value: 'Safari', configurable: true });
27
- const result = await decideProfile(mockPlayerContext, DRM_TYPES.FAIRPLAY);
28
- expect(result).toEqual({ profileName: STREAM_TYPES.HLS, drm: DRM_TYPES.FAIRPLAY });
29
- });
30
- it('should return profile with hls streaming and fairplay DRM when preferred DRM is Fairplay', async () => {
31
- const result = await decideProfile(mockPlayerContext, DRM_TYPES.FAIRPLAY);
32
- expect(result).toEqual({ profileName: STREAM_TYPES.HLS, drm: DRM_TYPES.FAIRPLAY });
33
- });
34
- it('should return profile with dash streaming and playready DRM when preferred DRM is PlayReady', async () => {
35
- const result = await decideProfile(mockPlayerContext, DRM_TYPES.PLAYREADY);
36
- expect(result).toEqual({ profileName: STREAM_TYPES.DASH, drm: DRM_TYPES.PLAYREADY });
37
- });
38
- });
@@ -1,2 +0,0 @@
1
- export { decideProfile } from './decideprofile';
2
- export { verifyDRM } from './verifydrm';
@@ -1,2 +0,0 @@
1
- export { decideProfile } from './decideprofile';
2
- export { verifyDRM } from './verifydrm';
@@ -1,5 +0,0 @@
1
- import { type DRMInfo } from './constants';
2
- export declare function isSupportedAppleDRM(drm: string): boolean;
3
- export declare function isSupportedOpenDRM(drm: string): boolean;
4
- export declare function getBestDRMForDash(drmInfo: DRMInfo): string;
5
- export declare function getBestDRMForHls(drmInfo: DRMInfo): string;
@@ -1,29 +0,0 @@
1
- import { appleDRM, openDRM, DRM_TYPES } from './constants';
2
- export function isSupportedAppleDRM(drm) {
3
- return appleDRM.includes(drm);
4
- }
5
- export function isSupportedOpenDRM(drm) {
6
- return openDRM.includes(drm);
7
- }
8
- export function getBestDRMForDash(drmInfo) {
9
- for (const drm of drmInfo.supportedDRM) {
10
- if (isSupportedOpenDRM(drm) && !drmInfo.preferredDRM) {
11
- if (drm === 'com.microsoft.playready') {
12
- return DRM_TYPES.PLAYREADY;
13
- }
14
- return DRM_TYPES.WIDEVINE;
15
- }
16
- if (isSupportedAppleDRM(drm) && drmInfo.preferredDRM === DRM_TYPES.FAIRPLAY) {
17
- return DRM_TYPES.FAIRPLAY;
18
- }
19
- }
20
- return '';
21
- }
22
- export function getBestDRMForHls(drmInfo) {
23
- for (const drm of drmInfo.supportedDRM) {
24
- if (isSupportedAppleDRM(drm) && (drmInfo.preferredDRM === DRM_TYPES.FAIRPLAY || !drmInfo.preferredDRM)) {
25
- return DRM_TYPES.FAIRPLAY;
26
- }
27
- }
28
- return '';
29
- }
@@ -1 +0,0 @@
1
- export {};
@@ -1,81 +0,0 @@
1
- import { isSupportedAppleDRM, isSupportedOpenDRM, getBestDRMForDash, getBestDRMForHls } from './utils';
2
- import { DRM_TYPES } from './constants';
3
- const appleFps1 = 'com.apple.fps.1_0';
4
- const appleFps2 = 'com.apple.fps.2_0';
5
- const widevine = 'com.widevine.alpha';
6
- const playready = 'com.microsoft.playready';
7
- describe('DRM Functions', () => {
8
- describe('isSupportedAppleDRM', () => {
9
- it('should return true for supported Apple DRM', () => {
10
- expect(isSupportedAppleDRM(appleFps1)).toBe(true);
11
- expect(isSupportedAppleDRM(appleFps2)).toBe(true);
12
- });
13
- it('should return false for unsupported Apple DRM', () => {
14
- expect(isSupportedAppleDRM(widevine)).toBe(false);
15
- expect(isSupportedAppleDRM(playready)).toBe(false);
16
- });
17
- });
18
- describe('isSupportedOpenDRM', () => {
19
- it('should return true for supported Open DRM', () => {
20
- expect(isSupportedOpenDRM(widevine)).toBe(true);
21
- expect(isSupportedOpenDRM(playready)).toBe(true);
22
- });
23
- it('should return false for unsupported Open DRM', () => {
24
- expect(isSupportedOpenDRM(appleFps1)).toBe(false);
25
- expect(isSupportedOpenDRM(appleFps2)).toBe(false);
26
- });
27
- });
28
- describe('getBestDRMForDash', () => {
29
- it('should return widevine for supported open DRM and no preferred DRM', () => {
30
- const drmInfo = {
31
- supportedDRM: [widevine],
32
- preferredDRM: ''
33
- };
34
- expect(getBestDRMForDash(drmInfo)).toBe('widevine');
35
- });
36
- it('should return playready for supported open DRM and no preferred DRM', () => {
37
- const drmInfo = {
38
- supportedDRM: ['com.microsoft.playready'],
39
- preferredDRM: ''
40
- };
41
- expect(getBestDRMForDash(drmInfo)).toBe('playready');
42
- });
43
- it('should return fairplay for supported Apple DRM and preferred DRM is fairplay', () => {
44
- const drmInfo = {
45
- supportedDRM: [appleFps1],
46
- preferredDRM: DRM_TYPES.FAIRPLAY
47
- };
48
- expect(getBestDRMForDash(drmInfo)).toBe(DRM_TYPES.FAIRPLAY);
49
- });
50
- it('should return empty string for no matching DRM', () => {
51
- const drmInfo = {
52
- supportedDRM: ['com.other.drm'],
53
- preferredDRM: ''
54
- };
55
- expect(getBestDRMForDash(drmInfo)).toBe('');
56
- });
57
- });
58
- describe('getBestDRMForHls', () => {
59
- it('should return fairplay for supported Apple DRM and preferred DRM is fairplay', () => {
60
- const drmInfo = {
61
- supportedDRM: [appleFps1],
62
- preferredDRM: DRM_TYPES.FAIRPLAY
63
- };
64
- expect(getBestDRMForHls(drmInfo)).toBe(DRM_TYPES.FAIRPLAY);
65
- });
66
- it('should return fairplay for supported Apple DRM and no preferred DRM', () => {
67
- const drmInfo = {
68
- supportedDRM: [appleFps2],
69
- preferredDRM: ''
70
- };
71
- expect(getBestDRMForHls(drmInfo)).toBe(DRM_TYPES.FAIRPLAY);
72
- });
73
- it('should return empty string for no matching DRM', () => {
74
- const drmInfo = {
75
- supportedDRM: ['com.other.drm'],
76
- preferredDRM: ''
77
- };
78
- expect(getBestDRMForHls(drmInfo)).toBe('');
79
- });
80
- });
81
- });
@@ -1,2 +0,0 @@
1
- import { PlayerContext, type ApiPayload } from '../../types/interfaces';
2
- export declare function verifyDRM(playerContext: PlayerContext, payload: ApiPayload): Promise<void>;
@@ -1,39 +0,0 @@
1
- import { convertJwtToBase64, convertBase64ToObject } from '../../js/utilities/utilities.jwt';
2
- export async function verifyDRM(playerContext, payload) {
3
- try {
4
- const { player, npoPlayer: { streamObject, sourceConfig } } = playerContext;
5
- const { stream } = streamObject;
6
- if (stream.drmToken) {
7
- const drmJsonTimestamp = getDRMTokenTimestamp(stream.drmToken);
8
- const currentTime = Math.trunc(Date.now() / 1000);
9
- if (drmJsonTimestamp >= currentTime) {
10
- await player.load(sourceConfig);
11
- return;
12
- }
13
- console.warn('DRM token window verstreken; item wordt herladen met een nieuwe token.');
14
- await refreshDRMToken(playerContext, payload);
15
- return;
16
- }
17
- await loadPlayer(playerContext, sourceConfig);
18
- }
19
- catch (error) {
20
- console.error(`Error verifying DRM in verifyDRM function: ${error}`);
21
- }
22
- }
23
- async function loadPlayer(playerContext, sourceConfig) {
24
- await playerContext.player.load(sourceConfig);
25
- }
26
- function getDRMTokenTimestamp(drmToken) {
27
- const drmBase64 = convertJwtToBase64(drmToken);
28
- return convertBase64ToObject(drmBase64).iat;
29
- }
30
- async function refreshDRMToken(playerContext, payload) {
31
- const { npoPlayer: { npoPlayerServices, streamObject, sourceConfig } } = playerContext;
32
- const { stream: { drmToken: newDrmToken } } = await npoPlayerServices.fetchStream(playerContext, payload);
33
- const clonedStreamObject = {
34
- ...streamObject,
35
- stream: { ...streamObject.stream, drmToken: newDrmToken }
36
- };
37
- playerContext.npoPlayer.streamObject = clonedStreamObject;
38
- await loadPlayer(playerContext, sourceConfig);
39
- }
@@ -1 +0,0 @@
1
- export {};