@npo/player 1.29.1 → 2.0.0-beta.1
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.
- package/README.md +32 -24
- package/dist/logErrorEvent-CJYrVUlC.js +21 -0
- package/dist/main-CmlOohv1.js +39047 -0
- package/dist/main.d.ts +1242 -0
- package/dist/npoplayer-audio.es.js +18 -0
- package/dist/npoplayer-audio.umd.js +128 -0
- package/package.json +72 -86
- package/CHANGELOG.md +0 -3
- package/LICENSE +0 -15
- package/lib/js/markers/updateLiveMarkers.d.ts +0 -9
- package/lib/js/markers/updateLiveMarkers.js +0 -56
- package/lib/js/markers/updateLiveMarkers.test.d.ts +0 -1
- package/lib/js/markers/updateLiveMarkers.test.js +0 -63
- package/lib/js/playeractions/handlers/handleoffsets.d.ts +0 -4
- package/lib/js/playeractions/handlers/handleoffsets.js +0 -58
- package/lib/js/playeractions/handlers/handleoffsets.test.d.ts +0 -1
- package/lib/js/playeractions/handlers/handleoffsets.test.js +0 -93
- package/lib/js/playeractions/handlers/mediasessionactions.d.ts +0 -7
- package/lib/js/playeractions/handlers/mediasessionactions.js +0 -123
- package/lib/js/playeractions/handlers/processplayerconfig.d.ts +0 -3
- package/lib/js/playeractions/handlers/processplayerconfig.js +0 -56
- package/lib/js/playeractions/handlers/processplayerconfig.test.d.ts +0 -1
- package/lib/js/playeractions/handlers/processplayerconfig.test.js +0 -116
- package/lib/js/playeractions/handlers/processsourceconfig.d.ts +0 -15
- package/lib/js/playeractions/handlers/processsourceconfig.js +0 -234
- package/lib/js/playeractions/handlers/processsourceconfig.test.d.ts +0 -1
- package/lib/js/playeractions/handlers/processsourceconfig.test.js +0 -25
- package/lib/js/playeractions/handlers/removereplayclass.d.ts +0 -2
- package/lib/js/playeractions/handlers/removereplayclass.js +0 -12
- package/lib/js/playeractions/handlers/removereplayclass.test.d.ts +0 -1
- package/lib/js/playeractions/handlers/removereplayclass.test.js +0 -33
- package/lib/js/playeractions/playeractions.d.ts +0 -3
- package/lib/js/playeractions/playeractions.js +0 -3
- package/lib/js/settings/localization.d.ts +0 -82
- package/lib/js/settings/localization.js +0 -7
- package/lib/js/settings/settings.user-agent.d.ts +0 -1
- package/lib/js/settings/settings.user-agent.js +0 -1
- package/lib/js/utilities/utilities.element.d.ts +0 -16
- package/lib/js/utilities/utilities.element.js +0 -18
- package/lib/js/utilities/utilities.element.test.d.ts +0 -1
- package/lib/js/utilities/utilities.element.test.js +0 -38
- package/lib/js/utilities/utilities.jwt.d.ts +0 -5
- package/lib/js/utilities/utilities.jwt.js +0 -44
- package/lib/js/utilities/utilities.jwt.test.d.ts +0 -1
- package/lib/js/utilities/utilities.jwt.test.js +0 -32
- package/lib/js/utilities/utilities.locale.d.ts +0 -2
- package/lib/js/utilities/utilities.locale.js +0 -4
- package/lib/js/utilities/utilities.locale.test.d.ts +0 -1
- package/lib/js/utilities/utilities.locale.test.js +0 -10
- package/lib/js/utilities/utilities.module.d.ts +0 -1
- package/lib/js/utilities/utilities.module.js +0 -4
- package/lib/js/utilities/utilities.module.test.d.ts +0 -1
- package/lib/js/utilities/utilities.module.test.js +0 -19
- package/lib/js/utilities/utilities.prid.d.ts +0 -6
- package/lib/js/utilities/utilities.prid.js +0 -8
- package/lib/js/utilities/utilities.prid.test.d.ts +0 -1
- package/lib/js/utilities/utilities.prid.test.js +0 -46
- package/lib/js/utilities/utilities.stream.d.ts +0 -7
- package/lib/js/utilities/utilities.stream.js +0 -19
- package/lib/js/utilities/utilities.stream.test.d.ts +0 -1
- package/lib/js/utilities/utilities.stream.test.js +0 -32
- package/lib/js/utilities/utilities.text.d.ts +0 -1
- package/lib/js/utilities/utilities.text.js +0 -3
- package/lib/js/utilities/utilities.text.test.d.ts +0 -1
- package/lib/js/utilities/utilities.text.test.js +0 -18
- package/lib/js/utilities/utilities.time.d.ts +0 -1
- package/lib/js/utilities/utilities.time.js +0 -3
- package/lib/js/utilities/utilities.time.test.d.ts +0 -1
- package/lib/js/utilities/utilities.time.test.js +0 -8
- package/lib/js/utilities/utilities.url.d.ts +0 -3
- package/lib/js/utilities/utilities.url.js +0 -29
- package/lib/js/utilities/utilities.url.test.d.ts +0 -1
- package/lib/js/utilities/utilities.url.test.js +0 -46
- package/lib/js/utilities/utilities.user-agent.d.ts +0 -3
- package/lib/js/utilities/utilities.user-agent.js +0 -13
- package/lib/js/utilities/utilities.user-agent.test.d.ts +0 -1
- package/lib/js/utilities/utilities.user-agent.test.js +0 -60
- package/lib/js/utilities/utilities.version.d.ts +0 -1
- package/lib/js/utilities/utilities.version.js +0 -26
- package/lib/js/utilities/utilities.version.test.d.ts +0 -1
- package/lib/js/utilities/utilities.version.test.js +0 -26
- package/lib/lang/nl.json +0 -77
- package/lib/lang/subtitleLabels/nl.json +0 -14
- package/lib/npoplayer.d.ts +0 -64
- package/lib/npoplayer.js +0 -428
- package/lib/npoplayer.test.d.ts +0 -1
- package/lib/npoplayer.test.js +0 -22
- package/lib/package.json +0 -105
- package/lib/services/a11y/setup.d.ts +0 -2
- package/lib/services/a11y/setup.js +0 -15
- package/lib/services/a11y/setup.test.d.ts +0 -1
- package/lib/services/a11y/setup.test.js +0 -88
- package/lib/services/advertHandlers/discardAdBreak.d.ts +0 -2
- package/lib/services/advertHandlers/discardAdBreak.js +0 -9
- package/lib/services/advertHandlers/discardAdBreak.test.d.ts +0 -1
- package/lib/services/advertHandlers/discardAdBreak.test.js +0 -40
- package/lib/services/advertHandlers/handlePreRolls.d.ts +0 -2
- package/lib/services/advertHandlers/handlePreRolls.js +0 -136
- package/lib/services/advertHandlers/handlePrerolls.test.d.ts +0 -1
- package/lib/services/advertHandlers/handlePrerolls.test.js +0 -112
- package/lib/services/avTypeHandlers/getAVType.d.ts +0 -2
- package/lib/services/avTypeHandlers/getAVType.js +0 -9
- package/lib/services/avTypeHandlers/getAVType.test.d.ts +0 -1
- package/lib/services/avTypeHandlers/getAVType.test.js +0 -18
- package/lib/services/backButton/backButton.d.ts +0 -2
- package/lib/services/backButton/backButton.js +0 -24
- package/lib/services/cdnProviders/cdnProviders.d.ts +0 -4
- package/lib/services/cdnProviders/cdnProviders.js +0 -24
- package/lib/services/cdnProviders/cndProviders.test.d.ts +0 -1
- package/lib/services/cdnProviders/cndProviders.test.js +0 -22
- package/lib/services/chapterHandlers/chapterHandler.d.ts +0 -35
- package/lib/services/chapterHandlers/chapterHandler.js +0 -230
- package/lib/services/drmHandlers/constants.d.ts +0 -15
- package/lib/services/drmHandlers/constants.js +0 -13
- package/lib/services/drmHandlers/decideprofile.d.ts +0 -2
- package/lib/services/drmHandlers/decideprofile.js +0 -57
- package/lib/services/drmHandlers/decideprofile.test.d.ts +0 -1
- package/lib/services/drmHandlers/decideprofile.test.js +0 -38
- package/lib/services/drmHandlers/drmhandlers.d.ts +0 -2
- package/lib/services/drmHandlers/drmhandlers.js +0 -2
- package/lib/services/drmHandlers/utils.d.ts +0 -5
- package/lib/services/drmHandlers/utils.js +0 -29
- package/lib/services/drmHandlers/utils.test.d.ts +0 -1
- package/lib/services/drmHandlers/utils.test.js +0 -81
- package/lib/services/drmHandlers/verifydrm.d.ts +0 -2
- package/lib/services/drmHandlers/verifydrm.js +0 -39
- package/lib/services/drmHandlers/verifydrm.test.d.ts +0 -1
- package/lib/services/drmHandlers/verifydrm.test.js +0 -112
- package/lib/services/errors/errorBackground.test.d.ts +0 -1
- package/lib/services/errors/errorBackground.test.js +0 -48
- package/lib/services/errors/errorHandler.d.ts +0 -5
- package/lib/services/errors/errorHandler.js +0 -59
- package/lib/services/errors/errorHandler.test.d.ts +0 -1
- package/lib/services/errors/errorHandler.test.js +0 -148
- package/lib/services/errors/errorRetryHandler.d.ts +0 -2
- package/lib/services/errors/errorRetryHandler.js +0 -14
- package/lib/services/errors/errorRetryHandler.test.d.ts +0 -1
- package/lib/services/errors/errorRetryHandler.test.js +0 -62
- package/lib/services/errors/errorText.d.ts +0 -2
- package/lib/services/errors/errorText.js +0 -62
- package/lib/services/errors/errorText.test.d.ts +0 -1
- package/lib/services/errors/errorText.test.js +0 -66
- package/lib/services/eventListenerHandlers/removeEventListeners.d.ts +0 -2
- package/lib/services/eventListenerHandlers/removeEventListeners.js +0 -24
- package/lib/services/eventListenerHandlers/removeEventListeners.test.d.ts +0 -1
- package/lib/services/eventListenerHandlers/removeEventListeners.test.js +0 -36
- package/lib/services/infoPanel/infoPanel.d.ts +0 -3
- package/lib/services/infoPanel/infoPanel.js +0 -35
- package/lib/services/infoPanel/infoPanel.test.d.ts +0 -1
- package/lib/services/infoPanel/infoPanel.test.js +0 -70
- package/lib/services/keyboardHandlers/resolvekeypress.d.ts +0 -2
- package/lib/services/keyboardHandlers/resolvekeypress.js +0 -63
- package/lib/services/keyboardHandlers/resolvekeypress.test.d.ts +0 -1
- package/lib/services/keyboardHandlers/resolvekeypress.test.js +0 -92
- package/lib/services/liveStreamHandlers/handleLiveStreamControls.d.ts +0 -6
- package/lib/services/liveStreamHandlers/handleLiveStreamControls.js +0 -36
- package/lib/services/liveStreamHandlers/handleLiveStreamControls.test.d.ts +0 -2
- package/lib/services/liveStreamHandlers/handleLiveStreamControls.test.js +0 -65
- package/lib/services/localStorageHandlers/localStorageHandlers.d.ts +0 -4
- package/lib/services/localStorageHandlers/localStorageHandlers.js +0 -36
- package/lib/services/localStorageHandlers/localStorageHandlers.test.d.ts +0 -1
- package/lib/services/localStorageHandlers/localStorageHandlers.test.js +0 -104
- package/lib/services/nicamHandlers/nicamhandler.d.ts +0 -6
- package/lib/services/nicamHandlers/nicamhandler.js +0 -69
- package/lib/services/nicamHandlers/nicamhandler.test.d.ts +0 -1
- package/lib/services/nicamHandlers/nicamhandler.test.js +0 -127
- package/lib/services/npoPlayerAPI/contants.d.ts +0 -25
- package/lib/services/npoPlayerAPI/contants.js +0 -11
- package/lib/services/npoPlayerAPI/npoPlayerAPI.d.ts +0 -53
- package/lib/services/npoPlayerAPI/npoPlayerAPI.js +0 -193
- package/lib/services/npoPlayerAPI/npoPlayerAPI.test.d.ts +0 -1
- package/lib/services/npoPlayerAPI/npoPlayerAPI.test.js +0 -127
- package/lib/services/npoPlayerAPI/playerModules.d.ts +0 -1
- package/lib/services/npoPlayerAPI/playerModules.js +0 -48
- package/lib/services/preferences/handlePreferences.d.ts +0 -2
- package/lib/services/preferences/handlePreferences.js +0 -47
- package/lib/services/preferences/handlePreferences.test.d.ts +0 -1
- package/lib/services/preferences/handlePreferences.test.js +0 -138
- package/lib/services/segmentHandlers/addSegmentEventListeners.d.ts +0 -2
- package/lib/services/segmentHandlers/addSegmentEventListeners.js +0 -15
- package/lib/services/segmentHandlers/addSegmentEventListeners.test.d.ts +0 -1
- package/lib/services/segmentHandlers/addSegmentEventListeners.test.js +0 -44
- package/lib/services/segmentHandlers/convertFragmentToSegment.d.ts +0 -2
- package/lib/services/segmentHandlers/convertFragmentToSegment.js +0 -8
- package/lib/services/segmentHandlers/convertFragmentToSegment.test.d.ts +0 -1
- package/lib/services/segmentHandlers/convertFragmentToSegment.test.js +0 -17
- package/lib/services/segmentHandlers/handleSegmentSeek.d.ts +0 -5
- package/lib/services/segmentHandlers/handleSegmentSeek.js +0 -15
- package/lib/services/segmentHandlers/handleSegmentSeek.test.d.ts +0 -1
- package/lib/services/segmentHandlers/handleSegmentSeek.test.js +0 -73
- package/lib/services/segmentHandlers/handleSegmentTimeChanged.d.ts +0 -2
- package/lib/services/segmentHandlers/handleSegmentTimeChanged.js +0 -21
- package/lib/services/segmentHandlers/handleSegmentTimeChanged.test.d.ts +0 -1
- package/lib/services/segmentHandlers/handleSegmentTimeChanged.test.js +0 -43
- package/lib/services/segmentHandlers/initSegment.d.ts +0 -7
- package/lib/services/segmentHandlers/initSegment.js +0 -10
- package/lib/services/segmentHandlers/initSegment.test.d.ts +0 -1
- package/lib/services/segmentHandlers/initSegment.test.js +0 -38
- package/lib/services/segmentHandlers/isSegmentInBounds.d.ts +0 -2
- package/lib/services/segmentHandlers/isSegmentInBounds.js +0 -5
- package/lib/services/segmentHandlers/isSegmentInBounds.test.d.ts +0 -1
- package/lib/services/segmentHandlers/isSegmentInBounds.test.js +0 -27
- package/lib/services/segmentHandlers/setSegmentMarkers.d.ts +0 -2
- package/lib/services/segmentHandlers/setSegmentMarkers.js +0 -25
- package/lib/services/segmentHandlers/setSegmentMarkers.test.d.ts +0 -1
- package/lib/services/segmentHandlers/setSegmentMarkers.test.js +0 -32
- package/lib/services/services.d.ts +0 -34
- package/lib/services/services.js +0 -129
- package/lib/services/streamFetchHandler/fetchStream.d.ts +0 -2
- package/lib/services/streamFetchHandler/fetchStream.js +0 -49
- package/lib/services/streamFetchHandler/fetchstream.test.d.ts +0 -1
- package/lib/services/streamFetchHandler/fetchstream.test.js +0 -92
- package/lib/services/streamoptionsHandlers/streamOptionsHandler.d.ts +0 -6
- package/lib/services/streamoptionsHandlers/streamOptionsHandler.js +0 -80
- package/lib/services/streamoptionsHandlers/streamOptionsHandler.test.d.ts +0 -1
- package/lib/services/streamoptionsHandlers/streamOptionsHandler.test.js +0 -199
- package/lib/services/trackingHandlers/eventBinding.d.ts +0 -2
- package/lib/services/trackingHandlers/eventBinding.js +0 -129
- package/lib/services/trackingHandlers/eventBinding.test.d.ts +0 -1
- package/lib/services/trackingHandlers/eventBinding.test.js +0 -145
- package/lib/services/trackingHandlers/eventLogging.d.ts +0 -2
- package/lib/services/trackingHandlers/eventLogging.js +0 -37
- package/lib/services/trackingHandlers/eventLogging.test.d.ts +0 -1
- package/lib/services/trackingHandlers/eventLogging.test.js +0 -63
- package/lib/services/trackingHandlers/index.d.ts +0 -3
- package/lib/services/trackingHandlers/index.js +0 -3
- package/lib/services/trackingHandlers/playerTrackerInit.d.ts +0 -2
- package/lib/services/trackingHandlers/playerTrackerInit.js +0 -20
- package/lib/services/trackingHandlers/playerTrackerInit.test.d.ts +0 -1
- package/lib/services/trackingHandlers/playerTrackerInit.test.js +0 -75
- package/lib/services/trackingHandlers/playerTrackerStart.d.ts +0 -2
- package/lib/services/trackingHandlers/playerTrackerStart.js +0 -28
- package/lib/services/trackingHandlers/playerTrackerStart.test.d.ts +0 -1
- package/lib/services/trackingHandlers/playerTrackerStart.test.js +0 -76
- package/lib/services/trackingHandlers/streamTrackerInit.d.ts +0 -3
- package/lib/services/trackingHandlers/streamTrackerInit.js +0 -27
- package/lib/services/trackingHandlers/streamTrackerInit.test.d.ts +0 -1
- package/lib/services/trackingHandlers/streamTrackerInit.test.js +0 -84
- package/lib/services/uiHandlers/uiVisiblityHandler.d.ts +0 -3
- package/lib/services/uiHandlers/uiVisiblityHandler.js +0 -32
- package/lib/services/uiHandlers/uiVisiblityHandler.test.d.ts +0 -1
- package/lib/services/uiHandlers/uiVisiblityHandler.test.js +0 -62
- package/lib/services/verticalVideoHandlers/handleVerticalVideoControls.d.ts +0 -2
- package/lib/services/verticalVideoHandlers/handleVerticalVideoControls.js +0 -6
- package/lib/services/verticalVideoHandlers/handleVerticalVideoControls.test.d.ts +0 -1
- package/lib/services/verticalVideoHandlers/handleVerticalVideoControls.test.js +0 -23
- package/lib/services/verticalVideoHandlers/handleVerticalVideoSettings.d.ts +0 -2
- package/lib/services/verticalVideoHandlers/handleVerticalVideoSettings.js +0 -26
- package/lib/services/verticalVideoHandlers/handleVerticalVideoSettings.test.d.ts +0 -1
- package/lib/services/verticalVideoHandlers/handleVerticalVideoSettings.test.js +0 -73
- package/lib/src/js/markers/updateLiveMarkers.d.ts +0 -9
- package/lib/src/js/markers/updateLiveMarkers.test.d.ts +0 -1
- package/lib/src/js/playeractions/handlers/handleoffsets.d.ts +0 -4
- package/lib/src/js/playeractions/handlers/handleoffsets.test.d.ts +0 -1
- package/lib/src/js/playeractions/handlers/mediasessionactions.d.ts +0 -7
- package/lib/src/js/playeractions/handlers/processplayerconfig.d.ts +0 -3
- package/lib/src/js/playeractions/handlers/processplayerconfig.test.d.ts +0 -1
- package/lib/src/js/playeractions/handlers/processsourceconfig.d.ts +0 -15
- package/lib/src/js/playeractions/handlers/processsourceconfig.test.d.ts +0 -1
- package/lib/src/js/playeractions/handlers/removereplayclass.d.ts +0 -2
- package/lib/src/js/playeractions/handlers/removereplayclass.test.d.ts +0 -1
- package/lib/src/js/playeractions/playeractions.d.ts +0 -3
- package/lib/src/js/settings/localization.d.ts +0 -82
- package/lib/src/js/settings/settings.user-agent.d.ts +0 -1
- package/lib/src/js/utilities/utilities.element.d.ts +0 -16
- package/lib/src/js/utilities/utilities.element.test.d.ts +0 -1
- package/lib/src/js/utilities/utilities.jwt.d.ts +0 -5
- package/lib/src/js/utilities/utilities.jwt.test.d.ts +0 -1
- package/lib/src/js/utilities/utilities.locale.d.ts +0 -2
- package/lib/src/js/utilities/utilities.locale.test.d.ts +0 -1
- package/lib/src/js/utilities/utilities.module.d.ts +0 -1
- package/lib/src/js/utilities/utilities.module.test.d.ts +0 -1
- package/lib/src/js/utilities/utilities.prid.d.ts +0 -6
- package/lib/src/js/utilities/utilities.prid.test.d.ts +0 -1
- package/lib/src/js/utilities/utilities.stream.d.ts +0 -7
- package/lib/src/js/utilities/utilities.stream.test.d.ts +0 -1
- package/lib/src/js/utilities/utilities.text.d.ts +0 -1
- package/lib/src/js/utilities/utilities.text.test.d.ts +0 -1
- package/lib/src/js/utilities/utilities.time.d.ts +0 -1
- package/lib/src/js/utilities/utilities.time.test.d.ts +0 -1
- package/lib/src/js/utilities/utilities.url.d.ts +0 -3
- package/lib/src/js/utilities/utilities.url.test.d.ts +0 -1
- package/lib/src/js/utilities/utilities.user-agent.d.ts +0 -3
- package/lib/src/js/utilities/utilities.user-agent.test.d.ts +0 -1
- package/lib/src/js/utilities/utilities.version.d.ts +0 -1
- package/lib/src/js/utilities/utilities.version.test.d.ts +0 -1
- package/lib/src/npoplayer.d.ts +0 -64
- package/lib/src/npoplayer.test.d.ts +0 -1
- package/lib/src/services/a11y/setup.d.ts +0 -2
- package/lib/src/services/a11y/setup.test.d.ts +0 -1
- package/lib/src/services/advertHandlers/discardAdBreak.d.ts +0 -2
- package/lib/src/services/advertHandlers/discardAdBreak.test.d.ts +0 -1
- package/lib/src/services/advertHandlers/handlePreRolls.d.ts +0 -2
- package/lib/src/services/advertHandlers/handlePrerolls.test.d.ts +0 -1
- package/lib/src/services/avTypeHandlers/getAVType.d.ts +0 -2
- package/lib/src/services/avTypeHandlers/getAVType.test.d.ts +0 -1
- package/lib/src/services/backButton/backButton.d.ts +0 -2
- package/lib/src/services/cdnProviders/cdnProviders.d.ts +0 -4
- package/lib/src/services/cdnProviders/cndProviders.test.d.ts +0 -1
- package/lib/src/services/chapterHandlers/chapterHandler.d.ts +0 -35
- package/lib/src/services/drmHandlers/constants.d.ts +0 -15
- package/lib/src/services/drmHandlers/decideprofile.d.ts +0 -2
- package/lib/src/services/drmHandlers/decideprofile.test.d.ts +0 -1
- package/lib/src/services/drmHandlers/drmhandlers.d.ts +0 -2
- package/lib/src/services/drmHandlers/utils.d.ts +0 -5
- package/lib/src/services/drmHandlers/utils.test.d.ts +0 -1
- package/lib/src/services/drmHandlers/verifydrm.d.ts +0 -2
- package/lib/src/services/drmHandlers/verifydrm.test.d.ts +0 -1
- package/lib/src/services/errors/errorBackground.test.d.ts +0 -1
- package/lib/src/services/errors/errorHandler.d.ts +0 -5
- package/lib/src/services/errors/errorHandler.test.d.ts +0 -1
- package/lib/src/services/errors/errorRetryHandler.d.ts +0 -2
- package/lib/src/services/errors/errorRetryHandler.test.d.ts +0 -1
- package/lib/src/services/errors/errorText.d.ts +0 -2
- package/lib/src/services/errors/errorText.test.d.ts +0 -1
- package/lib/src/services/eventListenerHandlers/removeEventListeners.d.ts +0 -2
- package/lib/src/services/eventListenerHandlers/removeEventListeners.test.d.ts +0 -1
- package/lib/src/services/infoPanel/infoPanel.d.ts +0 -3
- package/lib/src/services/infoPanel/infoPanel.test.d.ts +0 -1
- package/lib/src/services/keyboardHandlers/resolvekeypress.d.ts +0 -2
- package/lib/src/services/keyboardHandlers/resolvekeypress.test.d.ts +0 -1
- package/lib/src/services/liveStreamHandlers/handleLiveStreamControls.d.ts +0 -6
- package/lib/src/services/liveStreamHandlers/handleLiveStreamControls.test.d.ts +0 -2
- package/lib/src/services/localStorageHandlers/localStorageHandlers.d.ts +0 -4
- package/lib/src/services/localStorageHandlers/localStorageHandlers.test.d.ts +0 -1
- package/lib/src/services/nicamHandlers/nicamhandler.d.ts +0 -6
- package/lib/src/services/nicamHandlers/nicamhandler.test.d.ts +0 -1
- package/lib/src/services/npoPlayerAPI/contants.d.ts +0 -25
- package/lib/src/services/npoPlayerAPI/npoPlayerAPI.d.ts +0 -53
- package/lib/src/services/npoPlayerAPI/npoPlayerAPI.test.d.ts +0 -1
- package/lib/src/services/npoPlayerAPI/playerModules.d.ts +0 -1
- package/lib/src/services/preferences/handlePreferences.d.ts +0 -2
- package/lib/src/services/preferences/handlePreferences.test.d.ts +0 -1
- package/lib/src/services/segmentHandlers/addSegmentEventListeners.d.ts +0 -2
- package/lib/src/services/segmentHandlers/addSegmentEventListeners.test.d.ts +0 -1
- package/lib/src/services/segmentHandlers/convertFragmentToSegment.d.ts +0 -2
- package/lib/src/services/segmentHandlers/convertFragmentToSegment.test.d.ts +0 -1
- package/lib/src/services/segmentHandlers/handleSegmentSeek.d.ts +0 -5
- package/lib/src/services/segmentHandlers/handleSegmentSeek.test.d.ts +0 -1
- package/lib/src/services/segmentHandlers/handleSegmentTimeChanged.d.ts +0 -2
- package/lib/src/services/segmentHandlers/handleSegmentTimeChanged.test.d.ts +0 -1
- package/lib/src/services/segmentHandlers/initSegment.d.ts +0 -7
- package/lib/src/services/segmentHandlers/initSegment.test.d.ts +0 -1
- package/lib/src/services/segmentHandlers/isSegmentInBounds.d.ts +0 -2
- package/lib/src/services/segmentHandlers/isSegmentInBounds.test.d.ts +0 -1
- package/lib/src/services/segmentHandlers/setSegmentMarkers.d.ts +0 -2
- package/lib/src/services/segmentHandlers/setSegmentMarkers.test.d.ts +0 -1
- package/lib/src/services/services.d.ts +0 -34
- package/lib/src/services/streamFetchHandler/fetchStream.d.ts +0 -2
- package/lib/src/services/streamFetchHandler/fetchstream.test.d.ts +0 -1
- package/lib/src/services/streamoptionsHandlers/streamOptionsHandler.d.ts +0 -6
- package/lib/src/services/streamoptionsHandlers/streamOptionsHandler.test.d.ts +0 -1
- package/lib/src/services/trackingHandlers/eventBinding.d.ts +0 -2
- package/lib/src/services/trackingHandlers/eventBinding.test.d.ts +0 -1
- package/lib/src/services/trackingHandlers/eventLogging.d.ts +0 -2
- package/lib/src/services/trackingHandlers/eventLogging.test.d.ts +0 -1
- package/lib/src/services/trackingHandlers/index.d.ts +0 -3
- package/lib/src/services/trackingHandlers/playerTrackerInit.d.ts +0 -2
- package/lib/src/services/trackingHandlers/playerTrackerInit.test.d.ts +0 -1
- package/lib/src/services/trackingHandlers/playerTrackerStart.d.ts +0 -2
- package/lib/src/services/trackingHandlers/playerTrackerStart.test.d.ts +0 -1
- package/lib/src/services/trackingHandlers/streamTrackerInit.d.ts +0 -3
- package/lib/src/services/trackingHandlers/streamTrackerInit.test.d.ts +0 -1
- package/lib/src/services/uiHandlers/uiVisiblityHandler.d.ts +0 -3
- package/lib/src/services/uiHandlers/uiVisiblityHandler.test.d.ts +0 -1
- package/lib/src/services/verticalVideoHandlers/handleVerticalVideoControls.d.ts +0 -2
- package/lib/src/services/verticalVideoHandlers/handleVerticalVideoControls.test.d.ts +0 -1
- package/lib/src/services/verticalVideoHandlers/handleVerticalVideoSettings.d.ts +0 -2
- package/lib/src/services/verticalVideoHandlers/handleVerticalVideoSettings.test.d.ts +0 -1
- package/lib/src/types/classes.d.ts +0 -10
- package/lib/src/types/events.d.ts +0 -98
- package/lib/src/types/interfaces.d.ts +0 -246
- package/lib/src/ui/components/adbutton.d.ts +0 -4
- package/lib/src/ui/components/adlabel.d.ts +0 -4
- package/lib/src/ui/components/audio/controlbar.d.ts +0 -3
- package/lib/src/ui/components/backButton.d.ts +0 -2
- package/lib/src/ui/components/buttons.d.ts +0 -42
- package/lib/src/ui/components/controlbar.d.ts +0 -3
- package/lib/src/ui/components/ctabar.d.ts +0 -4
- package/lib/src/ui/components/infopanel/infopanel.d.ts +0 -3
- package/lib/src/ui/components/infopanel/togglebutton.d.ts +0 -3
- package/lib/src/ui/components/playnext.d.ts +0 -4
- package/lib/src/ui/components/seekbar.d.ts +0 -6
- package/lib/src/ui/components/settingspanel.d.ts +0 -3
- package/lib/src/ui/components/titlebar.d.ts +0 -3
- package/lib/src/ui/components/topbar.d.ts +0 -3
- package/lib/src/ui/components/verticalvideo/controlbar.d.ts +0 -3
- package/lib/src/ui/components/verticalvideo/settingspanel.d.ts +0 -2
- package/lib/src/ui/handlers/accessibilityhandler.d.ts +0 -2
- package/lib/src/ui/handlers/accessibilityhandler.test.d.ts +0 -1
- package/lib/src/ui/handlers/domhandlers.d.ts +0 -3
- package/lib/src/ui/handlers/domhandlers.test.d.ts +0 -1
- package/lib/src/ui/handlers/listboxhandlers.d.ts +0 -19
- package/lib/src/ui/handlers/playnextscreen.d.ts +0 -6
- package/lib/src/ui/handlers/playnextscreen.test.d.ts +0 -1
- package/lib/src/ui/handlers/timecontrolhandlers.d.ts +0 -3
- package/lib/src/ui/uicontainer.d.ts +0 -3
- package/lib/src/ui/uicontainer.test.d.ts +0 -1
- package/lib/tests/jest.setup-files-after-env.d.ts +0 -0
- package/lib/tests/jest.setup-files-after-env.js +0 -6
- package/lib/tests/jest.setup-tests.d.ts +0 -1
- package/lib/tests/jest.setup-tests.js +0 -2
- package/lib/tests/mocks/mockLogEmitter.d.ts +0 -2
- package/lib/tests/mocks/mockLogEmitter.js +0 -20
- package/lib/tests/mocks/mockNpoplayer.d.ts +0 -2
- package/lib/tests/mocks/mockNpoplayer.js +0 -105
- package/lib/tests/mocks/mockPlayerAPI.d.ts +0 -3
- package/lib/tests/mocks/mockPlayerAPI.js +0 -195
- package/lib/tests/mocks/mockPlayerUi.d.ts +0 -64
- package/lib/tests/mocks/mockPlayerUi.js +0 -251
- package/lib/tests/mocks/mockStreamObject.d.ts +0 -2
- package/lib/tests/mocks/mockStreamObject.js +0 -21
- package/lib/tests/mocks/playerContextMock.d.ts +0 -7
- package/lib/tests/mocks/playerContextMock.js +0 -153
- package/lib/types/classes.d.ts +0 -10
- package/lib/types/classes.js +0 -15
- package/lib/types/events.d.ts +0 -98
- package/lib/types/events.js +0 -184
- package/lib/types/interfaces.d.ts +0 -246
- package/lib/types/interfaces.js +0 -20
- package/lib/ui/components/adbutton.d.ts +0 -4
- package/lib/ui/components/adbutton.js +0 -12
- package/lib/ui/components/adlabel.d.ts +0 -4
- package/lib/ui/components/adlabel.js +0 -8
- package/lib/ui/components/audio/controlbar.d.ts +0 -3
- package/lib/ui/components/audio/controlbar.js +0 -23
- package/lib/ui/components/backButton.d.ts +0 -2
- package/lib/ui/components/backButton.js +0 -8
- package/lib/ui/components/buttons.d.ts +0 -42
- package/lib/ui/components/buttons.js +0 -144
- package/lib/ui/components/controlbar.d.ts +0 -3
- package/lib/ui/components/controlbar.js +0 -40
- package/lib/ui/components/ctabar.d.ts +0 -4
- package/lib/ui/components/ctabar.js +0 -28
- package/lib/ui/components/infopanel/infopanel.d.ts +0 -3
- package/lib/ui/components/infopanel/infopanel.js +0 -42
- package/lib/ui/components/infopanel/togglebutton.d.ts +0 -3
- package/lib/ui/components/infopanel/togglebutton.js +0 -18
- package/lib/ui/components/playnext.d.ts +0 -4
- package/lib/ui/components/playnext.js +0 -10
- package/lib/ui/components/seekbar.d.ts +0 -6
- package/lib/ui/components/seekbar.js +0 -26
- package/lib/ui/components/settingspanel.d.ts +0 -3
- package/lib/ui/components/settingspanel.js +0 -159
- package/lib/ui/components/titlebar.d.ts +0 -3
- package/lib/ui/components/titlebar.js +0 -14
- package/lib/ui/components/topbar.d.ts +0 -3
- package/lib/ui/components/topbar.js +0 -36
- package/lib/ui/components/verticalvideo/controlbar.d.ts +0 -3
- package/lib/ui/components/verticalvideo/controlbar.js +0 -40
- package/lib/ui/components/verticalvideo/settingspanel.d.ts +0 -2
- package/lib/ui/components/verticalvideo/settingspanel.js +0 -25
- package/lib/ui/handlers/accessibilityhandler.d.ts +0 -2
- package/lib/ui/handlers/accessibilityhandler.js +0 -22
- package/lib/ui/handlers/accessibilityhandler.test.d.ts +0 -1
- package/lib/ui/handlers/accessibilityhandler.test.js +0 -54
- package/lib/ui/handlers/domhandlers.d.ts +0 -3
- package/lib/ui/handlers/domhandlers.js +0 -7
- package/lib/ui/handlers/domhandlers.test.d.ts +0 -1
- package/lib/ui/handlers/domhandlers.test.js +0 -31
- package/lib/ui/handlers/listboxhandlers.d.ts +0 -19
- package/lib/ui/handlers/listboxhandlers.js +0 -43
- package/lib/ui/handlers/playnextscreen.d.ts +0 -6
- package/lib/ui/handlers/playnextscreen.js +0 -28
- package/lib/ui/handlers/playnextscreen.test.d.ts +0 -1
- package/lib/ui/handlers/playnextscreen.test.js +0 -57
- package/lib/ui/handlers/timecontrolhandlers.d.ts +0 -3
- package/lib/ui/handlers/timecontrolhandlers.js +0 -17
- package/lib/ui/uicontainer.d.ts +0 -3
- package/lib/ui/uicontainer.js +0 -80
- package/lib/ui/uicontainer.test.d.ts +0 -1
- package/lib/ui/uicontainer.test.js +0 -84
- package/src/style/components/_advert.scss +0 -119
- package/src/style/components/_audio.scss +0 -4
- package/src/style/components/_back-button.scss +0 -42
- package/src/style/components/_buffering.scss +0 -69
- package/src/style/components/_controlbars.scss +0 -26
- package/src/style/components/_error.scss +0 -71
- package/src/style/components/_hugeplaybacktogglebutton.scss +0 -97
- package/src/style/components/_icons.scss +0 -177
- package/src/style/components/_infopanel.scss +0 -105
- package/src/style/components/_metadata.scss +0 -52
- package/src/style/components/_nicam.scss +0 -117
- package/src/style/components/_playnext.scss +0 -72
- package/src/style/components/_poster.scss +0 -3
- package/src/style/components/_replay.scss +0 -25
- package/src/style/components/_seekbar.scss +0 -114
- package/src/style/components/_seekbarthumbnail.scss +0 -61
- package/src/style/components/_settingspanel.scss +0 -290
- package/src/style/components/_subtitles.scss +0 -78
- package/src/style/components/_textbuttons.scss +0 -82
- package/src/style/components/_volumeslider.scss +0 -94
- package/src/style/components/audio/_bottombar.scss +0 -54
- package/src/style/components/audio/_buffering.scss +0 -8
- package/src/style/components/audio/_errors.scss +0 -13
- package/src/style/components/audio/_metadata.scss +0 -60
- package/src/style/components/audio/_playbutton.scss +0 -54
- package/src/style/components/audio/_poster.scss +0 -19
- package/src/style/components/audio/_replay.scss +0 -28
- package/src/style/components/audio/_seekbar.scss +0 -28
- package/src/style/components/audio/_topbar.scss +0 -35
- package/src/style/components/audio/_vars.scss +0 -5
- package/src/style/components/audio/_volumeslider.scss +0 -41
- package/src/style/components/vertical-video/_bottombar.scss +0 -60
- package/src/style/components/vertical-video/_buttons.scss +0 -25
- package/src/style/components/vertical-video/_hugeplaybacktogglebutton.scss +0 -34
- package/src/style/components/vertical-video/_seekbar.scss +0 -19
- package/src/style/components/vertical-video/_settingsbutton.scss +0 -7
- package/src/style/components/vertical-video/_settingspanel.scss +0 -31
- package/src/style/components/vertical-video/_shortvideo.scss +0 -14
- package/src/style/components/vertical-video/_subtitles.scss +0 -3
- package/src/style/components/vertical-video/_topbar.scss +0 -58
- package/src/style/components/vertical-video/_volumeslider.scss +0 -9
- package/src/style/npoplayer.css +0 -908
- package/src/style/npoplayer.scss +0 -58
- package/src/style/variants/_player-audio-only.scss +0 -32
- package/src/style/variants/_player-audio.scss +0 -55
- package/src/style/variants/_player-base.scss +0 -101
- package/src/style/variants/_player-debug.scss +0 -14
- package/src/style/variants/_player-large.scss +0 -99
- package/src/style/variants/_player-medium.scss +0 -68
- package/src/style/variants/_player-small.scss +0 -203
- package/src/style/variants/_player-vertical.scss +0 -23
- package/src/style/vars/_audio.scss +0 -5
- package/src/style/vars/_colors.scss +0 -25
- package/src/style/vars/_fonts.scss +0 -26
- package/src/style/vars/_icons.scss +0 -29
- package/src/style/vars/_z-index.scss +0 -1
package/dist/main.d.ts
ADDED
|
@@ -0,0 +1,1242 @@
|
|
|
1
|
+
import { default as default_2 } from 'shaka-player';
|
|
2
|
+
|
|
3
|
+
declare class AdvertService {
|
|
4
|
+
private readonly player;
|
|
5
|
+
private readonly vastParser;
|
|
6
|
+
private adContainer?;
|
|
7
|
+
private adVideoElement?;
|
|
8
|
+
private clickElement?;
|
|
9
|
+
private isInitialized;
|
|
10
|
+
private session?;
|
|
11
|
+
private videoElement?;
|
|
12
|
+
private readonly boundClickElementHandler;
|
|
13
|
+
constructor(player: PlayerApi);
|
|
14
|
+
initialize(): Promise<void>;
|
|
15
|
+
requestAds(streamObject: IStreamObject): Promise<void>;
|
|
16
|
+
pauseAd(): void;
|
|
17
|
+
resumeAd(): void;
|
|
18
|
+
isPlayingAd(): boolean;
|
|
19
|
+
isAdPaused(): boolean;
|
|
20
|
+
skipAd(): void;
|
|
21
|
+
getAdRemainingTime(): number;
|
|
22
|
+
getCurrentTime(): number;
|
|
23
|
+
getDuration(): number;
|
|
24
|
+
getTotalAds(): number;
|
|
25
|
+
getAdPosition(): number;
|
|
26
|
+
setVolume(volume: number): void;
|
|
27
|
+
getVolume(): number;
|
|
28
|
+
mute(): void;
|
|
29
|
+
unmute(): void;
|
|
30
|
+
destroy(): void;
|
|
31
|
+
setAdClickElement(el: HTMLElement | null): void;
|
|
32
|
+
private getContentVideo;
|
|
33
|
+
private ensureSession;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
declare type AirPlayConnectionState = {
|
|
37
|
+
available: boolean;
|
|
38
|
+
connected: boolean;
|
|
39
|
+
error?: string;
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
declare class AirPlayService implements IAirPlayService {
|
|
43
|
+
private readonly player;
|
|
44
|
+
private readonly mediaEl;
|
|
45
|
+
private readonly boundCheckConnected;
|
|
46
|
+
constructor(player: PlayerApi);
|
|
47
|
+
destroy(): void;
|
|
48
|
+
private addEventListeners;
|
|
49
|
+
private updateAirPlayState;
|
|
50
|
+
checkAvailability(): boolean;
|
|
51
|
+
private checkConnected;
|
|
52
|
+
startAirPlay(): void;
|
|
53
|
+
stopAirPlay(): void;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
declare type CastConnectionState = {
|
|
57
|
+
available: boolean;
|
|
58
|
+
connected: boolean;
|
|
59
|
+
error?: string;
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
declare type CastingData = {
|
|
63
|
+
source: string;
|
|
64
|
+
streamObject?: IStreamObject;
|
|
65
|
+
metadata?: NpoPlayerMetaData;
|
|
66
|
+
npoTagSession?: string;
|
|
67
|
+
};
|
|
68
|
+
|
|
69
|
+
declare class CastService {
|
|
70
|
+
private castInitialized;
|
|
71
|
+
private readonly receiverApplicationId;
|
|
72
|
+
private readonly player;
|
|
73
|
+
private castContext;
|
|
74
|
+
private streamObject;
|
|
75
|
+
private volumeBeforeCasting;
|
|
76
|
+
private playbackRate;
|
|
77
|
+
private npoTagSession;
|
|
78
|
+
private drmConfig;
|
|
79
|
+
private source;
|
|
80
|
+
private boundMediaListeners;
|
|
81
|
+
private currentAvailability;
|
|
82
|
+
private checkCastAvailabilityIntervalId;
|
|
83
|
+
constructor(player: PlayerApi, receiverApplicationId: string);
|
|
84
|
+
destroy(): void;
|
|
85
|
+
private initializeCastCheckInterval;
|
|
86
|
+
private checkCastAvailability;
|
|
87
|
+
private isCastConnected;
|
|
88
|
+
private getCheckCastIntervalTime;
|
|
89
|
+
private loadCastSdk;
|
|
90
|
+
updateCastingData({ source, streamObject, metadata, npoTagSession }: CastingData): void;
|
|
91
|
+
initialize(): Promise<void>;
|
|
92
|
+
isCastAvailable(): boolean;
|
|
93
|
+
isCastActive(): boolean;
|
|
94
|
+
startCastSession(): void;
|
|
95
|
+
private updateMediaElementVisibility;
|
|
96
|
+
stopCastSession(): void;
|
|
97
|
+
getCastDeviceName(): string | undefined;
|
|
98
|
+
private hasValidMediaUrl;
|
|
99
|
+
private getSession;
|
|
100
|
+
private loadMedia;
|
|
101
|
+
private getImageSizeAsync;
|
|
102
|
+
private constructMediaMetadata;
|
|
103
|
+
private attachMediaListeners;
|
|
104
|
+
private updateCastState;
|
|
105
|
+
private syncCastAndPlayer;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
declare interface Chapter {
|
|
109
|
+
from: number;
|
|
110
|
+
until: number;
|
|
111
|
+
type: string;
|
|
112
|
+
title: string;
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
declare interface ChapterSkipOptions {
|
|
116
|
+
skippableTypes?: string[];
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
declare class ChapterSkipService implements IChapterSkipService_2 {
|
|
120
|
+
private readonly player;
|
|
121
|
+
private skippableTypes;
|
|
122
|
+
private readonly chaptersMap;
|
|
123
|
+
private readonly activeChapters;
|
|
124
|
+
currentChapter: Chapter | undefined;
|
|
125
|
+
isCurrentChapterSkippable: boolean;
|
|
126
|
+
constructor(player: PlayerApi, options?: ChapterSkipOptions);
|
|
127
|
+
setSkippableTypes(types: string[]): void;
|
|
128
|
+
registerChapters(chapters: Chapter[]): void;
|
|
129
|
+
skipCurrentChapter(): void;
|
|
130
|
+
private getChapterId;
|
|
131
|
+
private convertChaptersToActions;
|
|
132
|
+
private isChapterSkippable;
|
|
133
|
+
private setupEventListeners;
|
|
134
|
+
private readonly handleActionTriggered;
|
|
135
|
+
private readonly handleActionExited;
|
|
136
|
+
private updateCurrentChapter;
|
|
137
|
+
private clearCurrentChapter;
|
|
138
|
+
private hasAnyNonSkippableChapter;
|
|
139
|
+
private hideSkipButton;
|
|
140
|
+
private findLongestSkippableChapter;
|
|
141
|
+
private setCurrentChapter;
|
|
142
|
+
private hasChapterChanged;
|
|
143
|
+
private emitChapterExitEvent;
|
|
144
|
+
private clearChapters;
|
|
145
|
+
destroy(): void;
|
|
146
|
+
reset(): void;
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
declare enum DisplayModes {
|
|
150
|
+
INLINE = "inline",
|
|
151
|
+
FULLSCREEN = "fullscreen",
|
|
152
|
+
PIP = "pip"
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
export declare const DRM_FAIRPLAY = "fairplay";
|
|
156
|
+
|
|
157
|
+
export declare const DRM_PLAYREADY = "playready";
|
|
158
|
+
|
|
159
|
+
export declare const DRM_WIDEVINE = "widevine";
|
|
160
|
+
|
|
161
|
+
export declare type DRMType = typeof DRM_WIDEVINE | typeof DRM_PLAYREADY | typeof DRM_FAIRPLAY;
|
|
162
|
+
|
|
163
|
+
declare type EmitParams<T, K extends keyof T> = {
|
|
164
|
+
eventName: K;
|
|
165
|
+
value?: T[K];
|
|
166
|
+
};
|
|
167
|
+
|
|
168
|
+
declare type ErrorListener = (error: IPlayerError) => void;
|
|
169
|
+
|
|
170
|
+
declare class ErrorManager implements IErrorManager {
|
|
171
|
+
private static globalHandlersAttached;
|
|
172
|
+
private static _lastInstance;
|
|
173
|
+
private readonly errorListeners;
|
|
174
|
+
private readonly resetListeners;
|
|
175
|
+
private readonly warningListeners;
|
|
176
|
+
private npoPlayerRef;
|
|
177
|
+
private debounceCleanup?;
|
|
178
|
+
private isDestroyed;
|
|
179
|
+
constructor(npoPlayer: NpoPlayer);
|
|
180
|
+
destroy(): void;
|
|
181
|
+
private attachGlobalErrorHandlers;
|
|
182
|
+
setNpoPlayerRef(npoPlayer: NpoPlayer): void;
|
|
183
|
+
onError(listener: ErrorListener): void;
|
|
184
|
+
onReset(listener: ResetListener): void;
|
|
185
|
+
onWarning(listener: WarningListener): void;
|
|
186
|
+
static handleSilentError(playerError: IPlayerError): void;
|
|
187
|
+
handleError(config: HandleErrorConfig): IPlayerError;
|
|
188
|
+
private _logNpoTagError;
|
|
189
|
+
handleErrorState(config: IErrorStateHandlerConfig): void;
|
|
190
|
+
setupErrorDebounce(config: IErrorDebounceConfig): void;
|
|
191
|
+
/**
|
|
192
|
+
* Simulate an error for testing purposes
|
|
193
|
+
* This triggers the error handling flow including QoS metrics logging
|
|
194
|
+
*
|
|
195
|
+
* @param errorCode - The error code to simulate (default: 1012)
|
|
196
|
+
*/
|
|
197
|
+
simulateError(errorCode?: number): IPlayerError;
|
|
198
|
+
}
|
|
199
|
+
|
|
200
|
+
declare type HandleErrorConfig = IBaseErrorConfig;
|
|
201
|
+
|
|
202
|
+
export declare interface IActionContext {
|
|
203
|
+
currentTime: number;
|
|
204
|
+
duration: number;
|
|
205
|
+
action: ITimeBoundAction;
|
|
206
|
+
player: IPlayerApi;
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
declare interface IAdUiState {
|
|
210
|
+
isPlayingAd: boolean;
|
|
211
|
+
isAdPaused: boolean;
|
|
212
|
+
duration: number;
|
|
213
|
+
remainingTime: number;
|
|
214
|
+
currentTime: number;
|
|
215
|
+
adPosition: number;
|
|
216
|
+
totalAds: number;
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
declare interface IAdUiState_2 {
|
|
220
|
+
isPlayingAd: boolean;
|
|
221
|
+
isAdPaused: boolean;
|
|
222
|
+
duration: number;
|
|
223
|
+
remainingTime: number;
|
|
224
|
+
currentTime: number;
|
|
225
|
+
adPosition: number;
|
|
226
|
+
totalAds: number;
|
|
227
|
+
}
|
|
228
|
+
|
|
229
|
+
declare interface IAirPlayService {
|
|
230
|
+
checkAvailability(): boolean;
|
|
231
|
+
startAirPlay(): void;
|
|
232
|
+
stopAirPlay(): void;
|
|
233
|
+
}
|
|
234
|
+
|
|
235
|
+
declare interface IBaseErrorConfig {
|
|
236
|
+
errorEvent: IPlayerError;
|
|
237
|
+
customErrorMessageOverlayConfig?: Record<number, string>;
|
|
238
|
+
emitError?: (payload: IPlayerError) => void;
|
|
239
|
+
setErrorState?: (payload: IPlayerError) => void;
|
|
240
|
+
resetFn?: () => void;
|
|
241
|
+
}
|
|
242
|
+
|
|
243
|
+
declare interface IChapterSkipService {
|
|
244
|
+
skipCurrentChapter(): void;
|
|
245
|
+
}
|
|
246
|
+
|
|
247
|
+
declare interface IChapterSkipService_2 {
|
|
248
|
+
currentChapter: Chapter | undefined;
|
|
249
|
+
isCurrentChapterSkippable: boolean;
|
|
250
|
+
registerChapters(chapters: Chapter[]): void;
|
|
251
|
+
skipCurrentChapter(): void;
|
|
252
|
+
setSkippableTypes(types: string[]): void;
|
|
253
|
+
destroy(): void;
|
|
254
|
+
reset(): void;
|
|
255
|
+
}
|
|
256
|
+
|
|
257
|
+
export declare interface ICustomDRMConfig {
|
|
258
|
+
drmType: DRMType;
|
|
259
|
+
profileName: ProfileName;
|
|
260
|
+
secure?: boolean;
|
|
261
|
+
headers?: Record<string, string>;
|
|
262
|
+
}
|
|
263
|
+
|
|
264
|
+
declare interface IErrorDebounceConfig {
|
|
265
|
+
player: any;
|
|
266
|
+
mediaElement: HTMLMediaElement;
|
|
267
|
+
setErrorStateFn: (errorEvent: Event) => void;
|
|
268
|
+
resetFn: () => void;
|
|
269
|
+
debounceTimeInMs?: number;
|
|
270
|
+
}
|
|
271
|
+
|
|
272
|
+
export declare interface IErrorManager {
|
|
273
|
+
handleError(config: HandleErrorConfig): IPlayerError;
|
|
274
|
+
handleErrorState(config: IErrorStateHandlerConfig): void;
|
|
275
|
+
setupErrorDebounce(config: IErrorDebounceConfig): void;
|
|
276
|
+
onError(listener: (error: IPlayerError) => void): void;
|
|
277
|
+
onReset(listener: () => void): void;
|
|
278
|
+
onWarning(listener: (warning: IPlayerError) => void): void;
|
|
279
|
+
}
|
|
280
|
+
|
|
281
|
+
declare interface IErrorStateHandlerConfig extends IBaseErrorConfig {
|
|
282
|
+
mediaElement: HTMLMediaElement;
|
|
283
|
+
retryCallback?: (lastTimestamp: number) => Promise<any>;
|
|
284
|
+
}
|
|
285
|
+
|
|
286
|
+
declare interface IInputHandler {
|
|
287
|
+
addKeyMapping(combo: KeyCombo, handler: (event: KeyboardEvent) => void): void;
|
|
288
|
+
removeKeyMapping(combo: KeyCombo): void;
|
|
289
|
+
defaultKeyCombos: Record<string, KeyCombo>;
|
|
290
|
+
playbackRateOptions: number[] | undefined;
|
|
291
|
+
}
|
|
292
|
+
|
|
293
|
+
declare interface IInputHandler_2 {
|
|
294
|
+
addKeyMapping(combo: KeyCombo_2, handler: (event: KeyboardEvent) => void): void;
|
|
295
|
+
removeKeyMapping(combo: KeyCombo_2): void;
|
|
296
|
+
defaultKeyCombos: Record<string, KeyCombo_2>;
|
|
297
|
+
playbackRateOptions: number[] | undefined;
|
|
298
|
+
}
|
|
299
|
+
|
|
300
|
+
export declare interface INpoAudioPlayerUIFactory extends INpoPlayerUIFactory {
|
|
301
|
+
init(config: NpoPlayerUIFactoryConfig): void;
|
|
302
|
+
}
|
|
303
|
+
|
|
304
|
+
declare interface INpoPlayerUIFactory {
|
|
305
|
+
mediaElement: HTMLMediaElement | null;
|
|
306
|
+
updateModeClass(): void;
|
|
307
|
+
setMetadata(metadata: IStreamObjectMetadata, infoPanelHTML?: string): void;
|
|
308
|
+
setBackButtonCallback?(callback?: () => void): void;
|
|
309
|
+
setLoadingState(): void;
|
|
310
|
+
removeLoadingState(): void;
|
|
311
|
+
resetUI(): void;
|
|
312
|
+
destroy(): void;
|
|
313
|
+
}
|
|
314
|
+
|
|
315
|
+
export declare interface INpoVideoPlayerUIFactory extends INpoPlayerUIFactory {
|
|
316
|
+
init(config: NpoPlayerUIFactoryConfig): void;
|
|
317
|
+
}
|
|
318
|
+
|
|
319
|
+
declare class InputHandler implements IInputHandler_2 {
|
|
320
|
+
private keyMappings;
|
|
321
|
+
private readonly player;
|
|
322
|
+
private readonly container;
|
|
323
|
+
private readonly focusManager;
|
|
324
|
+
private isAttached;
|
|
325
|
+
playbackRateOptions: number[];
|
|
326
|
+
constructor(player: PlayerApi, container: HTMLElement);
|
|
327
|
+
readonly defaultKeyCombos: Record<string, KeyCombo_2>;
|
|
328
|
+
private setupKeyMappings;
|
|
329
|
+
private readonly keydownHandler;
|
|
330
|
+
private matchesKeyCombo;
|
|
331
|
+
private shouldHandleKeyEvent;
|
|
332
|
+
private volumeUp;
|
|
333
|
+
private volumeDown;
|
|
334
|
+
private increasePlaybackRate;
|
|
335
|
+
private decreasePlaybackRate;
|
|
336
|
+
attach(): void;
|
|
337
|
+
detach(): void;
|
|
338
|
+
addKeyMapping(combo: KeyCombo_2, handler: (event: KeyboardEvent) => void): void;
|
|
339
|
+
removeKeyMapping(combo: KeyCombo_2): void;
|
|
340
|
+
resetInteractionState(): void;
|
|
341
|
+
hasUserInteractedOutsideContainer(): boolean;
|
|
342
|
+
isInputHandlerAttached(): boolean;
|
|
343
|
+
destroy(): void;
|
|
344
|
+
}
|
|
345
|
+
|
|
346
|
+
export declare interface IPlayerApi {
|
|
347
|
+
playerId: string;
|
|
348
|
+
player: unknown;
|
|
349
|
+
playerEvents: IPlayerEventEmitter<IPlayerEventsMap>;
|
|
350
|
+
uiEvents: any;
|
|
351
|
+
play(): Promise<void>;
|
|
352
|
+
pause(): void;
|
|
353
|
+
togglePlayPause(): Promise<void>;
|
|
354
|
+
replay(): void;
|
|
355
|
+
isLive(): boolean;
|
|
356
|
+
getMode(): Modes;
|
|
357
|
+
getSeekRange(): {
|
|
358
|
+
start: number;
|
|
359
|
+
end: number;
|
|
360
|
+
};
|
|
361
|
+
forward(seconds?: number): void;
|
|
362
|
+
backward(seconds?: number): void;
|
|
363
|
+
getMediaElement(): HTMLMediaElement | null;
|
|
364
|
+
getPlayerContainer(): HTMLElement | null;
|
|
365
|
+
reemit(eventName: string, data?: any): void;
|
|
366
|
+
on(eventName: string, handler: (evt: any) => void): void;
|
|
367
|
+
off(eventName: string, handler: (evt: any) => void): void;
|
|
368
|
+
once(eventName: string, handler: (evt: any) => void): void;
|
|
369
|
+
isBuffering(): boolean;
|
|
370
|
+
getPlaybackRate(): number;
|
|
371
|
+
setPlaybackRate(rate: number): void;
|
|
372
|
+
getVolume(): number;
|
|
373
|
+
setVolume(volume: number): void;
|
|
374
|
+
mute(): void;
|
|
375
|
+
unMute(): void;
|
|
376
|
+
isMuted(): boolean;
|
|
377
|
+
isPlaying(): boolean;
|
|
378
|
+
getDuration(): number;
|
|
379
|
+
getCurrentTime(): number;
|
|
380
|
+
seek(time: number): void;
|
|
381
|
+
seekToLiveEdge(): void;
|
|
382
|
+
getNetworkingEngine(): unknown;
|
|
383
|
+
removeAllTextTracks(): void;
|
|
384
|
+
setTextTrackVisibility(options: {
|
|
385
|
+
language: string;
|
|
386
|
+
persist?: boolean;
|
|
387
|
+
}): void;
|
|
388
|
+
getTextTracks(): TextTrackList;
|
|
389
|
+
getVariantTracks?(): Array<unknown>;
|
|
390
|
+
configure?(config: unknown): void;
|
|
391
|
+
isPlayingAd?(): boolean;
|
|
392
|
+
getAdUiState?(): IAdUiState;
|
|
393
|
+
onAdEvent?(eventName: string, handler: (evt: any) => void): void;
|
|
394
|
+
offAdEvent?(eventName: string, handler: (evt: any) => void): void;
|
|
395
|
+
setAdClickElement(button: HTMLButtonElement): void;
|
|
396
|
+
enterFullscreen(): void;
|
|
397
|
+
exitFullscreen(): void;
|
|
398
|
+
isFullscreenPossible(): boolean;
|
|
399
|
+
isDisplayModeChangeAllowed(): boolean;
|
|
400
|
+
isPipSupported(): boolean;
|
|
401
|
+
enterPip(): Promise<void>;
|
|
402
|
+
exitPip(): Promise<void>;
|
|
403
|
+
castService: {
|
|
404
|
+
isCastAvailable(): boolean;
|
|
405
|
+
isCastActive(): boolean;
|
|
406
|
+
startCastSession(): void;
|
|
407
|
+
stopCastSession(): void;
|
|
408
|
+
getCastDeviceName(): string;
|
|
409
|
+
};
|
|
410
|
+
state: IPlayerState;
|
|
411
|
+
airPlayService: IAirPlayService;
|
|
412
|
+
thumbnailService?: IThumbnailTrackService;
|
|
413
|
+
chapterSkipService?: IChapterSkipService;
|
|
414
|
+
streamTrackService?: IStreamTrackService;
|
|
415
|
+
mediaStateListeners?: () => void;
|
|
416
|
+
}
|
|
417
|
+
|
|
418
|
+
declare interface IPlayerContext {
|
|
419
|
+
source: string;
|
|
420
|
+
streamObject: IStreamObject;
|
|
421
|
+
playerConfig: NpoPlayerConfig;
|
|
422
|
+
streamOptions?: StreamOptions;
|
|
423
|
+
}
|
|
424
|
+
|
|
425
|
+
export declare interface IPlayerError {
|
|
426
|
+
code: number;
|
|
427
|
+
message: string;
|
|
428
|
+
original?: any;
|
|
429
|
+
silent?: boolean;
|
|
430
|
+
}
|
|
431
|
+
|
|
432
|
+
declare interface IPlayerEventEmitter<T extends Record<string, any>> {
|
|
433
|
+
emit<K extends keyof T>(params: {
|
|
434
|
+
eventName: K;
|
|
435
|
+
value?: T[K];
|
|
436
|
+
}): void;
|
|
437
|
+
on<K extends keyof T>(params: {
|
|
438
|
+
eventName: K;
|
|
439
|
+
listener: (event: CustomEvent<T[K]>) => void;
|
|
440
|
+
}): void;
|
|
441
|
+
off<K extends keyof T>(params: {
|
|
442
|
+
eventName: K;
|
|
443
|
+
listener: (event: CustomEvent<T[K]>) => void;
|
|
444
|
+
}): void;
|
|
445
|
+
}
|
|
446
|
+
|
|
447
|
+
declare interface IPlayerEventsMap {
|
|
448
|
+
[PlayerEventNames.MediaStateChanged]: MediaStates;
|
|
449
|
+
[PlayerEventNames.DisplayModeChanged]: DisplayModes;
|
|
450
|
+
[PlayerEventNames.CastStateChanged]: Event;
|
|
451
|
+
[PlayerEventNames.AirPlayStateChanged]: AirPlayConnectionState;
|
|
452
|
+
[PlayerEventNames.AirPlayConnectionChanged]: Event;
|
|
453
|
+
[PlayerEventNames.AdComplete]: Event;
|
|
454
|
+
[PlayerEventNames.AdError]: {
|
|
455
|
+
error: unknown;
|
|
456
|
+
};
|
|
457
|
+
[PlayerEventNames.AdPaused]: Event;
|
|
458
|
+
[PlayerEventNames.AdResumed]: Event;
|
|
459
|
+
[PlayerEventNames.AdSkipped]: Event;
|
|
460
|
+
[PlayerEventNames.AdStarted]: Event;
|
|
461
|
+
[PlayerEventNames.AdUiUpdate]: Event;
|
|
462
|
+
[PlayerEventNames.AllAdsCompleted]: Event;
|
|
463
|
+
[PlayerEventNames.CanPlay]: Event;
|
|
464
|
+
[PlayerEventNames.CanPlayThrough]: Event;
|
|
465
|
+
[PlayerEventNames.DurationChange]: Event;
|
|
466
|
+
[PlayerEventNames.Ended]: Event;
|
|
467
|
+
[PlayerEventNames.Error]: Event | Record<string, unknown>;
|
|
468
|
+
[PlayerEventNames.LoadedData]: Event;
|
|
469
|
+
[PlayerEventNames.LoadedMetadata]: Event;
|
|
470
|
+
[PlayerEventNames.Pause]: Event;
|
|
471
|
+
[PlayerEventNames.Play]: Event;
|
|
472
|
+
[PlayerEventNames.Playing]: Event;
|
|
473
|
+
[PlayerEventNames.Progress]: Event;
|
|
474
|
+
[PlayerEventNames.RateChange]: Event;
|
|
475
|
+
[PlayerEventNames.Buffering]: Event;
|
|
476
|
+
[PlayerEventNames.Seeked]: Event;
|
|
477
|
+
[PlayerEventNames.Seeking]: Event;
|
|
478
|
+
[PlayerEventNames.Stalled]: Event;
|
|
479
|
+
[PlayerEventNames.TimeUpdate]: Event;
|
|
480
|
+
[PlayerEventNames.VolumeChange]: Event;
|
|
481
|
+
[PlayerEventNames.Waiting]: Event;
|
|
482
|
+
[PlayerEventNames.TimeBoundActionTriggered]: {
|
|
483
|
+
action: ITimeBoundAction;
|
|
484
|
+
context: IActionContext;
|
|
485
|
+
};
|
|
486
|
+
[PlayerEventNames.TimeBoundActionExited]: {
|
|
487
|
+
action: ITimeBoundAction;
|
|
488
|
+
context: IActionContext;
|
|
489
|
+
};
|
|
490
|
+
[PlayerEventNames.ChapterEntered]: {
|
|
491
|
+
chapter: Chapter;
|
|
492
|
+
isSkippable: boolean;
|
|
493
|
+
};
|
|
494
|
+
[PlayerEventNames.ChapterExited]: {
|
|
495
|
+
action: ITimeBoundAction;
|
|
496
|
+
};
|
|
497
|
+
[PlayerEventNames.StreamTrackChanged]: Event;
|
|
498
|
+
}
|
|
499
|
+
|
|
500
|
+
declare interface IPlayerLoad {
|
|
501
|
+
normalizedAvType?: MediaType;
|
|
502
|
+
avType?: string;
|
|
503
|
+
hasDvrWindow?: boolean;
|
|
504
|
+
isLiveStream?: boolean;
|
|
505
|
+
streamProfile?: string;
|
|
506
|
+
sourceProfile?: string;
|
|
507
|
+
}
|
|
508
|
+
|
|
509
|
+
declare interface IPlayerState {
|
|
510
|
+
adActive: boolean;
|
|
511
|
+
adPaused: boolean;
|
|
512
|
+
airPlay: AirPlayConnectionState;
|
|
513
|
+
audioLanguage: string;
|
|
514
|
+
audioPlaybackQuality: number;
|
|
515
|
+
cast: CastConnectionState;
|
|
516
|
+
displayMode: DisplayModes;
|
|
517
|
+
forceUIVisible: boolean;
|
|
518
|
+
fullscreen: boolean;
|
|
519
|
+
language: string;
|
|
520
|
+
mediaState: MediaStates;
|
|
521
|
+
muted: boolean;
|
|
522
|
+
playbackRate: number;
|
|
523
|
+
subtitleLanguage: string;
|
|
524
|
+
useAudioDescription: boolean;
|
|
525
|
+
videoPlaybackQuality: number;
|
|
526
|
+
volume: number;
|
|
527
|
+
}
|
|
528
|
+
|
|
529
|
+
declare interface ISegment {
|
|
530
|
+
inpoint: number;
|
|
531
|
+
outpoint: number;
|
|
532
|
+
duration: number;
|
|
533
|
+
}
|
|
534
|
+
|
|
535
|
+
export declare interface ISterData {
|
|
536
|
+
identifier: string;
|
|
537
|
+
deviceType?: number;
|
|
538
|
+
os?: string;
|
|
539
|
+
osVersion?: string;
|
|
540
|
+
player?: string;
|
|
541
|
+
}
|
|
542
|
+
|
|
543
|
+
declare interface IStreamDrmConfig {
|
|
544
|
+
token?: string;
|
|
545
|
+
certificateUrl?: string;
|
|
546
|
+
licenseUrl: string;
|
|
547
|
+
type: string;
|
|
548
|
+
expirationInSeconds?: number;
|
|
549
|
+
httpHeaders?: Record<string, string>;
|
|
550
|
+
}
|
|
551
|
+
|
|
552
|
+
export declare interface IStreamObject {
|
|
553
|
+
stream: IStreamObjectStream;
|
|
554
|
+
metadata: IStreamObjectMetadata;
|
|
555
|
+
assets?: IStreamObjectAssets;
|
|
556
|
+
user: {
|
|
557
|
+
type: 'plus' | 'anonymous';
|
|
558
|
+
};
|
|
559
|
+
segment?: ISegment;
|
|
560
|
+
}
|
|
561
|
+
|
|
562
|
+
declare interface IStreamObjectAssets {
|
|
563
|
+
scrubbingThumbnail?: string;
|
|
564
|
+
subtitles?: ISubtitle[];
|
|
565
|
+
preroll?: string;
|
|
566
|
+
prerollDebug?: string;
|
|
567
|
+
}
|
|
568
|
+
|
|
569
|
+
export declare interface IStreamObjectMetadata {
|
|
570
|
+
ageRating?: string;
|
|
571
|
+
avType?: string;
|
|
572
|
+
broadcaster?: string;
|
|
573
|
+
channel?: string;
|
|
574
|
+
chapters?: Chapter[];
|
|
575
|
+
description: string;
|
|
576
|
+
duration?: string;
|
|
577
|
+
genres?: string[];
|
|
578
|
+
hasPreroll?: string;
|
|
579
|
+
nicam?: string[];
|
|
580
|
+
omroep?: string;
|
|
581
|
+
poster?: string;
|
|
582
|
+
posterIsDefault?: boolean;
|
|
583
|
+
prid?: string;
|
|
584
|
+
title: string;
|
|
585
|
+
}
|
|
586
|
+
|
|
587
|
+
declare interface IStreamObjectStream {
|
|
588
|
+
avType: string;
|
|
589
|
+
drmToken?: string;
|
|
590
|
+
drmType: string;
|
|
591
|
+
drm?: IStreamDrmConfig;
|
|
592
|
+
streamProfile: string;
|
|
593
|
+
sourceProfile: string;
|
|
594
|
+
streamURL: string;
|
|
595
|
+
isLiveStream?: boolean;
|
|
596
|
+
hasDvrWindow?: boolean;
|
|
597
|
+
}
|
|
598
|
+
|
|
599
|
+
declare interface IStreamTrackService {
|
|
600
|
+
currentTrack: StreamTrack | undefined;
|
|
601
|
+
getAvailableVideoTracks(): StreamTrack[];
|
|
602
|
+
getAudioTracksByVideoQuality(qualityValue: number): StreamTrack[];
|
|
603
|
+
getAudioOnlyTracks(): StreamTrack[];
|
|
604
|
+
setTrack(track: StreamTrack, forced: boolean): void;
|
|
605
|
+
}
|
|
606
|
+
|
|
607
|
+
declare interface ISubtitle {
|
|
608
|
+
iso: string;
|
|
609
|
+
location: string;
|
|
610
|
+
name: string;
|
|
611
|
+
}
|
|
612
|
+
|
|
613
|
+
declare interface IThumbnailTrackService {
|
|
614
|
+
isAvailable(): boolean;
|
|
615
|
+
renderThumbnailToCanvas(time: number, canvas: HTMLCanvasElement): Promise<void>;
|
|
616
|
+
}
|
|
617
|
+
|
|
618
|
+
export declare interface ITimeBoundAction {
|
|
619
|
+
id: string;
|
|
620
|
+
type: TimeBoundActionType;
|
|
621
|
+
markerType?: MarkerTypes;
|
|
622
|
+
startTime: number;
|
|
623
|
+
endTime?: number;
|
|
624
|
+
callback?: (context: IActionContext) => void;
|
|
625
|
+
label?: string;
|
|
626
|
+
fireOnce?: boolean;
|
|
627
|
+
}
|
|
628
|
+
|
|
629
|
+
declare interface ITimeBoundActionsService {
|
|
630
|
+
initialize(): void;
|
|
631
|
+
destroy(): void;
|
|
632
|
+
registerAction(action: ITimeBoundAction): void;
|
|
633
|
+
registerActions(actions: ITimeBoundAction[]): void;
|
|
634
|
+
unregisterAction(actionId: string): void;
|
|
635
|
+
clearActions(): void;
|
|
636
|
+
}
|
|
637
|
+
|
|
638
|
+
declare type KeyCombo = {
|
|
639
|
+
key: string;
|
|
640
|
+
ctrl?: boolean;
|
|
641
|
+
alt?: boolean;
|
|
642
|
+
shift?: boolean;
|
|
643
|
+
meta?: boolean;
|
|
644
|
+
};
|
|
645
|
+
|
|
646
|
+
declare type KeyCombo_2 = {
|
|
647
|
+
key: string;
|
|
648
|
+
ctrl?: boolean;
|
|
649
|
+
alt?: boolean;
|
|
650
|
+
shift?: boolean;
|
|
651
|
+
meta?: boolean;
|
|
652
|
+
};
|
|
653
|
+
|
|
654
|
+
declare type Listener<T> = (event: CustomEvent<T>) => void;
|
|
655
|
+
|
|
656
|
+
declare type Listener_2 = (...args: any[]) => void;
|
|
657
|
+
|
|
658
|
+
declare class LogEmitter {
|
|
659
|
+
private readonly listeners;
|
|
660
|
+
emit(event: LogEventType, ...args: any[]): boolean;
|
|
661
|
+
on(event: LogEventType, listener: Listener_2): this;
|
|
662
|
+
once(event: LogEventType, listener: Listener_2): this;
|
|
663
|
+
off(event: LogEventType, listener: Listener_2): this;
|
|
664
|
+
}
|
|
665
|
+
|
|
666
|
+
export declare enum LogEventType {
|
|
667
|
+
ERROR = "logError",
|
|
668
|
+
EVENT = "logEvent"
|
|
669
|
+
}
|
|
670
|
+
|
|
671
|
+
export declare enum MarkerTypes {
|
|
672
|
+
ACTION = "action",
|
|
673
|
+
SEGMENT = "segment",
|
|
674
|
+
HIDDEN = "hidden"
|
|
675
|
+
}
|
|
676
|
+
|
|
677
|
+
export declare enum MediaStates {
|
|
678
|
+
PLAY = "play",
|
|
679
|
+
PAUSE = "pause",
|
|
680
|
+
BUFFERING = "buffering",
|
|
681
|
+
READY = "ready",
|
|
682
|
+
ERROR = "error",
|
|
683
|
+
ENDED = "ended"
|
|
684
|
+
}
|
|
685
|
+
|
|
686
|
+
export declare enum MediaType {
|
|
687
|
+
VIDEO = "video",
|
|
688
|
+
AUDIO = "audio"
|
|
689
|
+
}
|
|
690
|
+
|
|
691
|
+
export declare enum Modes {
|
|
692
|
+
VOD = "vod",
|
|
693
|
+
LIVE = "live",
|
|
694
|
+
LIVE_NO_DVR = "live-no-dvr",
|
|
695
|
+
NONE = "none"
|
|
696
|
+
}
|
|
697
|
+
|
|
698
|
+
export declare class NpoAudioPlayer extends NpoPlayerCore {
|
|
699
|
+
constructor(container: HTMLElement, playerConfig: NpoAudioPlayerConfig & {
|
|
700
|
+
uiFactory?: INpoAudioPlayerUIFactory;
|
|
701
|
+
});
|
|
702
|
+
}
|
|
703
|
+
|
|
704
|
+
export declare type NpoAudioPlayerConfig = NpoPlayerConfig & {
|
|
705
|
+
options?: NpoPlayerOptions;
|
|
706
|
+
uiFactory?: INpoAudioPlayerUIFactory;
|
|
707
|
+
};
|
|
708
|
+
|
|
709
|
+
declare type NpoPlayer = NpoAudioPlayer | NpoVideoPlayer;
|
|
710
|
+
|
|
711
|
+
declare type NpoPlayerConfig = {
|
|
712
|
+
autoplay?: boolean;
|
|
713
|
+
options?: NpoPlayerOptions;
|
|
714
|
+
npoTag?: any;
|
|
715
|
+
chromecastReceiverId?: string;
|
|
716
|
+
uiFactory?: INpoPlayerUIFactory;
|
|
717
|
+
mediaType?: MediaType;
|
|
718
|
+
settingsStore?: any;
|
|
719
|
+
playbackRateOptions?: number[];
|
|
720
|
+
};
|
|
721
|
+
|
|
722
|
+
declare abstract class NpoPlayerCore {
|
|
723
|
+
player: PlayerApi;
|
|
724
|
+
uiFactory?: INpoAudioPlayerUIFactory | INpoVideoPlayerUIFactory;
|
|
725
|
+
errorManager: ErrorManager;
|
|
726
|
+
readonly version: string;
|
|
727
|
+
readonly container: HTMLElement;
|
|
728
|
+
readonly npoTagProps?: NpoTagProperties;
|
|
729
|
+
readonly logEmitter?: LogEmitter;
|
|
730
|
+
readonly playerConfig: NpoPlayerConfig;
|
|
731
|
+
readonly settingsStore: SettingsStore;
|
|
732
|
+
protected inputHandler: InputHandler;
|
|
733
|
+
protected playerContext?: IPlayerContext;
|
|
734
|
+
streamOptions: StreamOptions;
|
|
735
|
+
private readonly ready;
|
|
736
|
+
private readonly loadStreamService;
|
|
737
|
+
readonly cast: {
|
|
738
|
+
isAvailable: () => boolean;
|
|
739
|
+
isActive: () => boolean;
|
|
740
|
+
startSession: () => void;
|
|
741
|
+
stopSession: () => void;
|
|
742
|
+
};
|
|
743
|
+
constructor(container: HTMLElement, playerConfig: NpoAudioPlayerConfig | NpoVideoPlayerConfig);
|
|
744
|
+
private doError;
|
|
745
|
+
load(newSource: string, streamOptions?: StreamOptions): Promise<void>;
|
|
746
|
+
play(): Promise<void>;
|
|
747
|
+
pause(): void;
|
|
748
|
+
unload(): Promise<void>;
|
|
749
|
+
destroy(): Promise<void>;
|
|
750
|
+
seek(timestamp: number): void;
|
|
751
|
+
getCurrentTime(): number;
|
|
752
|
+
mute(): void;
|
|
753
|
+
unmute(): void;
|
|
754
|
+
isMuted(): boolean;
|
|
755
|
+
isPlaying(): boolean;
|
|
756
|
+
setVolume(volume: number): void;
|
|
757
|
+
getVolume(): number;
|
|
758
|
+
getDuration(): number;
|
|
759
|
+
isLive(): boolean;
|
|
760
|
+
isBuffering(): boolean;
|
|
761
|
+
getPlaybackRate(): number;
|
|
762
|
+
setPlaybackRate(rate: number): void;
|
|
763
|
+
getSeekRange(): {
|
|
764
|
+
start: number;
|
|
765
|
+
end: number;
|
|
766
|
+
};
|
|
767
|
+
seekToLiveEdge(): void;
|
|
768
|
+
getAvailableVideoQualities(): Array<StreamTrack>;
|
|
769
|
+
setVideoQuality(qualityValue: number): void;
|
|
770
|
+
on(eventName: string, handler: EventHandler): void;
|
|
771
|
+
off(eventName: string, handler: EventHandler): void;
|
|
772
|
+
once(eventName: string, handler: EventHandler): void;
|
|
773
|
+
/**
|
|
774
|
+
* Enable keyboard controls for the player
|
|
775
|
+
* Spacebar: Play/Pause, Left/Right arrows: Seek, Up/Down arrows: Volume, Escape: Exit fullscreen
|
|
776
|
+
*/
|
|
777
|
+
enableKeyboardControls(): void;
|
|
778
|
+
/**
|
|
779
|
+
* Disable keyboard controls for the player
|
|
780
|
+
*/
|
|
781
|
+
disableKeyboardControls(): void;
|
|
782
|
+
/**
|
|
783
|
+
* Check if keyboard controls are currently enabled
|
|
784
|
+
*/
|
|
785
|
+
isKeyboardControlsEnabled(): boolean;
|
|
786
|
+
/**
|
|
787
|
+
* Add a custom keyboard shortcut
|
|
788
|
+
* @param combo - Key combination (e.g., { key: 'k', ctrl: true })
|
|
789
|
+
* @param callback - Function to execute when key combination is pressed
|
|
790
|
+
*/
|
|
791
|
+
addKeyboardShortcut(combo: {
|
|
792
|
+
key: string;
|
|
793
|
+
ctrl?: boolean;
|
|
794
|
+
alt?: boolean;
|
|
795
|
+
shift?: boolean;
|
|
796
|
+
meta?: boolean;
|
|
797
|
+
}, callback: (event: KeyboardEvent) => void): void;
|
|
798
|
+
retry(lastTimestamp: number): Promise<void>;
|
|
799
|
+
logClick(params: Omit<NpoTagClickEvent, 'click_chapter_1'>): void;
|
|
800
|
+
}
|
|
801
|
+
|
|
802
|
+
export declare type NpoPlayerMetaData = {
|
|
803
|
+
title?: string;
|
|
804
|
+
description?: string;
|
|
805
|
+
poster?: string;
|
|
806
|
+
broadcaster?: string;
|
|
807
|
+
posterIsDefault?: boolean;
|
|
808
|
+
};
|
|
809
|
+
|
|
810
|
+
export declare type NpoPlayerOptions = {
|
|
811
|
+
autoplay?: boolean;
|
|
812
|
+
customFallbackPoster?: string;
|
|
813
|
+
enableKeyboardControls?: boolean;
|
|
814
|
+
enableSubtitles?: string | boolean;
|
|
815
|
+
hidePoster?: boolean;
|
|
816
|
+
playbackRateOptions?: number[];
|
|
817
|
+
preload?: boolean;
|
|
818
|
+
skippableChapters?: string[];
|
|
819
|
+
ster?: ISterData;
|
|
820
|
+
uiLanguage?: string;
|
|
821
|
+
};
|
|
822
|
+
|
|
823
|
+
declare type NpoPlayerUIFactoryConfig = {
|
|
824
|
+
container: HTMLElement;
|
|
825
|
+
player: IPlayerApi;
|
|
826
|
+
options: NpoPlayerOptions;
|
|
827
|
+
errorManager: IErrorManager;
|
|
828
|
+
retryCallback?: (lastTimestamp: number) => Promise<void>;
|
|
829
|
+
inputHandler?: IInputHandler;
|
|
830
|
+
logClick?: (params: Omit<NpoTagClickEvent, 'click_chapter_1'>) => void;
|
|
831
|
+
};
|
|
832
|
+
|
|
833
|
+
declare type NpoTagClickEvent = {
|
|
834
|
+
click_name: string;
|
|
835
|
+
click_type: 'navigation' | 'action' | 'exit' | 'download' | (string & {});
|
|
836
|
+
click_chapter_1?: string;
|
|
837
|
+
click_chapter_2?: string;
|
|
838
|
+
click_chapter_3?: string;
|
|
839
|
+
};
|
|
840
|
+
|
|
841
|
+
declare type NpoTagProperties = {
|
|
842
|
+
initprops: any;
|
|
843
|
+
streamTracker: any;
|
|
844
|
+
pageTracker: any;
|
|
845
|
+
npoTag: any;
|
|
846
|
+
qosMetrics: any;
|
|
847
|
+
debugMode?: boolean;
|
|
848
|
+
cleanup?: () => void;
|
|
849
|
+
};
|
|
850
|
+
|
|
851
|
+
declare class NpoVideoPlayer extends NpoPlayerCore {
|
|
852
|
+
constructor(playerConfig: NpoVideoPlayerConfig & {
|
|
853
|
+
uiFactory?: INpoVideoPlayerUIFactory;
|
|
854
|
+
}, container: HTMLElement);
|
|
855
|
+
}
|
|
856
|
+
export { NpoVideoPlayer }
|
|
857
|
+
export default NpoVideoPlayer;
|
|
858
|
+
|
|
859
|
+
export declare type NpoVideoPlayerConfig = NpoPlayerConfig & {
|
|
860
|
+
options?: NpoPlayerOptions;
|
|
861
|
+
uiFactory?: INpoVideoPlayerUIFactory;
|
|
862
|
+
};
|
|
863
|
+
|
|
864
|
+
/**
|
|
865
|
+
* The playerApi class is a wrapper around the Shaka Player API,
|
|
866
|
+
* providing a simplified interface for interacting with the player.
|
|
867
|
+
* Besides the Shaka Player API, the playerApi class also provides additional functionality
|
|
868
|
+
* for controlling the player and interacting with the mediaElement.
|
|
869
|
+
*/
|
|
870
|
+
declare class PlayerApi implements IPlayerApi {
|
|
871
|
+
airPlayService: AirPlayService;
|
|
872
|
+
castService: CastService;
|
|
873
|
+
advertService: AdvertService;
|
|
874
|
+
readonly playerId: string;
|
|
875
|
+
readonly playerEvents: PlayerEventEmitter<IPlayerEventsMap>;
|
|
876
|
+
state: IPlayerState;
|
|
877
|
+
uiEvents: any;
|
|
878
|
+
readonly mediaStateListeners: () => void;
|
|
879
|
+
thumbnailService: ThumbnailTrackService;
|
|
880
|
+
timeBoundActionsService: TimeBoundActionsService;
|
|
881
|
+
chapterSkipService: ChapterSkipService;
|
|
882
|
+
subtitlesService: SubtitlesService;
|
|
883
|
+
readonly streamTrackService: StreamTrackService;
|
|
884
|
+
readonly playerConfig: NpoPlayerConfig;
|
|
885
|
+
readonly container: HTMLElement;
|
|
886
|
+
readonly settingsStore: SettingsStore;
|
|
887
|
+
private displayModeHandler;
|
|
888
|
+
private isInitialized;
|
|
889
|
+
private _player;
|
|
890
|
+
private currentStreamMode;
|
|
891
|
+
private streamLoadingData?;
|
|
892
|
+
private readonly mediaEventListeners;
|
|
893
|
+
get player(): default_2.Player;
|
|
894
|
+
constructor(container: HTMLElement, playerConfig: NpoPlayerConfig);
|
|
895
|
+
destroy(): void;
|
|
896
|
+
initialize(): Promise<void>;
|
|
897
|
+
getPlayerContainer(): HTMLElement;
|
|
898
|
+
load(source: string, streamLoadingData?: IPlayerLoad): Promise<void>;
|
|
899
|
+
unload(): Promise<void>;
|
|
900
|
+
play(): Promise<void>;
|
|
901
|
+
pause(): void;
|
|
902
|
+
togglePlayPause(): Promise<void>;
|
|
903
|
+
replay(): void;
|
|
904
|
+
seek(time: number): void;
|
|
905
|
+
forward(seconds?: number): void;
|
|
906
|
+
backward(seconds?: number): void;
|
|
907
|
+
getCurrentTime(): number;
|
|
908
|
+
getPlaybackRate(): number;
|
|
909
|
+
setPlaybackRate(rate: number): void;
|
|
910
|
+
getVolume(): number;
|
|
911
|
+
setVolume(volume: number): void;
|
|
912
|
+
mute(): void;
|
|
913
|
+
isMuted(): boolean;
|
|
914
|
+
unMute(): void;
|
|
915
|
+
toggleMute(): void;
|
|
916
|
+
isPlaying(): boolean;
|
|
917
|
+
isLive(): boolean;
|
|
918
|
+
isBuffering(): boolean;
|
|
919
|
+
getDuration(): number;
|
|
920
|
+
seekToLiveEdge(): void;
|
|
921
|
+
getNetworkingEngine(): default_2.extern.getNetworkingEngine;
|
|
922
|
+
getSeekRange(): {
|
|
923
|
+
start: number;
|
|
924
|
+
end: number;
|
|
925
|
+
};
|
|
926
|
+
getMediaElement(): HTMLMediaElement;
|
|
927
|
+
addTextTracks(subtitles: ISubtitle[]): void;
|
|
928
|
+
addTextTrack(subtitle: ISubtitle): void;
|
|
929
|
+
setTextTrackVisibility({ language, persist }: {
|
|
930
|
+
language: string;
|
|
931
|
+
persist?: boolean;
|
|
932
|
+
}): void;
|
|
933
|
+
getSelectedTextTrack(): TextTrack | undefined;
|
|
934
|
+
removeAllTextTracks(): void;
|
|
935
|
+
getTextTracks(): TextTrackList;
|
|
936
|
+
isFullscreenPossible(): boolean;
|
|
937
|
+
enterFullscreen(): void;
|
|
938
|
+
exitFullscreen(): void;
|
|
939
|
+
isDisplayModeChangeAllowed(): boolean;
|
|
940
|
+
isPipSupported(): boolean;
|
|
941
|
+
enterPip(): Promise<void>;
|
|
942
|
+
exitPip(): Promise<void>;
|
|
943
|
+
configure(config: default_2.extern.PlayerConfiguration): void;
|
|
944
|
+
private applyPersistedSettings;
|
|
945
|
+
private setupPlaybackRateHandler;
|
|
946
|
+
private initAirPlayService;
|
|
947
|
+
private forwardAllMediaEvents;
|
|
948
|
+
private createMediaEventForwardingHandler;
|
|
949
|
+
private readonly onLoadedMetadata;
|
|
950
|
+
private toPlayerEventName;
|
|
951
|
+
on(eventName: string, handler: EventHandler): void;
|
|
952
|
+
off(eventName: string, handler: EventHandler): void;
|
|
953
|
+
once(eventName: string, handler: EventHandler): void;
|
|
954
|
+
reemit(eventName: string, data?: any): void;
|
|
955
|
+
getConfiguration(): default_2.extern.PlayerConfiguration;
|
|
956
|
+
onAdEvent(eventName: string, handler: EventHandler): void;
|
|
957
|
+
offAdEvent(eventName: string, handler: EventHandler): void;
|
|
958
|
+
isPlayingAd(): boolean;
|
|
959
|
+
setAdClickElement(adClickElement: HTMLElement): void;
|
|
960
|
+
getAdUiState(): IAdUiState_2 | undefined;
|
|
961
|
+
getMode(): Modes;
|
|
962
|
+
private determineStreamMode;
|
|
963
|
+
}
|
|
964
|
+
|
|
965
|
+
declare class PlayerEventEmitter<T extends Record<string, any>> implements EventTarget {
|
|
966
|
+
readonly playerId?: string;
|
|
967
|
+
private readonly eventTarget;
|
|
968
|
+
private _allListeners;
|
|
969
|
+
constructor(playerId?: string);
|
|
970
|
+
emit<K extends keyof T>(params: EmitParams<T, K>): void;
|
|
971
|
+
on<K extends keyof T>(params: {
|
|
972
|
+
eventName: K;
|
|
973
|
+
listener: Listener<T[K]>;
|
|
974
|
+
}): void;
|
|
975
|
+
off<K extends keyof T>(params: {
|
|
976
|
+
eventName: K;
|
|
977
|
+
listener: Listener<T[K]>;
|
|
978
|
+
}): void;
|
|
979
|
+
once<K extends keyof T>(params: {
|
|
980
|
+
eventName: K;
|
|
981
|
+
listener: Listener<T[K]>;
|
|
982
|
+
}): void;
|
|
983
|
+
addEventListener(type: string, listener: EventListenerOrEventListenerObject | null): void;
|
|
984
|
+
removeEventListener(type: string, listener: EventListenerOrEventListenerObject | null): void;
|
|
985
|
+
dispatchEvent(event: Event): boolean;
|
|
986
|
+
removeAllListeners(): void;
|
|
987
|
+
}
|
|
988
|
+
|
|
989
|
+
export declare enum PlayerEventNames {
|
|
990
|
+
MediaStateChanged = "mediaStateChanged",
|
|
991
|
+
DisplayModeChanged = "displayModeChanged",
|
|
992
|
+
CastStateChanged = "castStateChanged",
|
|
993
|
+
AirPlayStateChanged = "airPlayStateChanged",
|
|
994
|
+
AirPlayConnectionChanged = "webkitcurrentplaybacktargetiswirelesschanged",
|
|
995
|
+
AdComplete = "ad-complete",
|
|
996
|
+
AdError = "ad-error",
|
|
997
|
+
AdPaused = "ad-paused",
|
|
998
|
+
AdResumed = "ad-resumed",
|
|
999
|
+
AdSkipped = "ad-skipped",
|
|
1000
|
+
AdStarted = "ad-started",
|
|
1001
|
+
AdUiUpdate = "ad-ui-update",
|
|
1002
|
+
AllAdsCompleted = "all-ads-completed",
|
|
1003
|
+
CanPlay = "canplay",
|
|
1004
|
+
CanPlayThrough = "canplaythrough",
|
|
1005
|
+
DurationChange = "durationchange",
|
|
1006
|
+
Ended = "ended",
|
|
1007
|
+
Error = "error",
|
|
1008
|
+
LoadedData = "loadeddata",
|
|
1009
|
+
LoadedMetadata = "loadedmetadata",
|
|
1010
|
+
Pause = "pause",
|
|
1011
|
+
Play = "play",
|
|
1012
|
+
Playing = "playing",
|
|
1013
|
+
Progress = "progress",
|
|
1014
|
+
RateChange = "ratechange",
|
|
1015
|
+
Buffering = "buffering",
|
|
1016
|
+
Seeked = "seeked",
|
|
1017
|
+
Seeking = "seeking",
|
|
1018
|
+
Stalled = "stalled",
|
|
1019
|
+
TimeUpdate = "timeupdate",
|
|
1020
|
+
VolumeChange = "volumechange",
|
|
1021
|
+
Waiting = "waiting",
|
|
1022
|
+
TimeBoundActionTriggered = "time-bound-action-triggered",
|
|
1023
|
+
TimeBoundActionExited = "time-bound-action-exited",
|
|
1024
|
+
ChapterEntered = "chapter-entered",
|
|
1025
|
+
ChapterExited = "chapter-exited",
|
|
1026
|
+
StreamTrackChanged = "stream-track-changed"
|
|
1027
|
+
}
|
|
1028
|
+
|
|
1029
|
+
export declare type PlayNext = {
|
|
1030
|
+
showPlayNext?: boolean;
|
|
1031
|
+
duration?: number;
|
|
1032
|
+
offset?: number;
|
|
1033
|
+
proceedCallback?: () => void;
|
|
1034
|
+
cancelCallback?: () => void;
|
|
1035
|
+
};
|
|
1036
|
+
|
|
1037
|
+
export declare const PROFILE_DASH = "dash";
|
|
1038
|
+
|
|
1039
|
+
export declare const PROFILE_HLS = "hls";
|
|
1040
|
+
|
|
1041
|
+
export declare type ProfileName = typeof PROFILE_DASH | typeof PROFILE_HLS;
|
|
1042
|
+
|
|
1043
|
+
declare type ResetListener = () => void;
|
|
1044
|
+
|
|
1045
|
+
declare class SettingsStore {
|
|
1046
|
+
private cache;
|
|
1047
|
+
private readonly storageKey;
|
|
1048
|
+
private readonly useLocalStorage;
|
|
1049
|
+
constructor(storageKey: string, defaults?: Record<string, unknown>);
|
|
1050
|
+
set(key: string, value: unknown): void;
|
|
1051
|
+
get(key: string, fallback?: unknown): unknown;
|
|
1052
|
+
private persist;
|
|
1053
|
+
}
|
|
1054
|
+
|
|
1055
|
+
export declare type StreamOptions = {
|
|
1056
|
+
autoplay?: boolean;
|
|
1057
|
+
endpoint?: string;
|
|
1058
|
+
liveOffset?: boolean;
|
|
1059
|
+
liveProgramTime?: number;
|
|
1060
|
+
metadata?: {
|
|
1061
|
+
ageRating?: string;
|
|
1062
|
+
broadcaster?: string;
|
|
1063
|
+
description?: string;
|
|
1064
|
+
nicam?: string[];
|
|
1065
|
+
poster?: string;
|
|
1066
|
+
prid?: string;
|
|
1067
|
+
ster?: ISterData;
|
|
1068
|
+
title?: string;
|
|
1069
|
+
};
|
|
1070
|
+
npotag?: {
|
|
1071
|
+
pageTracker?: any;
|
|
1072
|
+
};
|
|
1073
|
+
playNext?: PlayNext;
|
|
1074
|
+
retryCallback?: () => void;
|
|
1075
|
+
startOffset?: number;
|
|
1076
|
+
infoPanelHTML?: string;
|
|
1077
|
+
customDRMConfig?: ICustomDRMConfig;
|
|
1078
|
+
timeBoundActions?: ITimeBoundAction[];
|
|
1079
|
+
skippableChapters?: string[];
|
|
1080
|
+
backButtonCallback?: () => void;
|
|
1081
|
+
};
|
|
1082
|
+
|
|
1083
|
+
declare type StreamTrack = {
|
|
1084
|
+
id: number;
|
|
1085
|
+
streamTrackId: number;
|
|
1086
|
+
label: string;
|
|
1087
|
+
value: number;
|
|
1088
|
+
width?: number;
|
|
1089
|
+
height?: number;
|
|
1090
|
+
bandwidth?: number;
|
|
1091
|
+
originalTrack?: any;
|
|
1092
|
+
language?: string;
|
|
1093
|
+
isAudioOnly: boolean;
|
|
1094
|
+
isAudioDescription: boolean;
|
|
1095
|
+
playlistUrl?: string;
|
|
1096
|
+
};
|
|
1097
|
+
|
|
1098
|
+
declare class StreamTrackService implements IStreamTrackService {
|
|
1099
|
+
private readonly player;
|
|
1100
|
+
private readonly hlsManifestParser;
|
|
1101
|
+
private manifestTracks;
|
|
1102
|
+
private currentManifestUri;
|
|
1103
|
+
private _currentTrack;
|
|
1104
|
+
get currentTrack(): StreamTrack | undefined;
|
|
1105
|
+
readonly idAutoTrack = -1;
|
|
1106
|
+
constructor(player: PlayerApi);
|
|
1107
|
+
isManifestTrackAvailable(): boolean;
|
|
1108
|
+
reset(): void;
|
|
1109
|
+
private getShakaPlayer;
|
|
1110
|
+
getVariantTracks(): Array<default_2.extern.VariantTrack>;
|
|
1111
|
+
getAudioTracks(): Array<default_2.extern.AudioTrack>;
|
|
1112
|
+
getVideoTracks(): Array<default_2.extern.VideoTrack>;
|
|
1113
|
+
isAudioOnly(): boolean;
|
|
1114
|
+
getAvailableVideoTracks(): Array<StreamTrack>;
|
|
1115
|
+
getAudioTracksByVideoQuality(qualityValue: number): StreamTrack[];
|
|
1116
|
+
getAudioOnlyTracks(): StreamTrack[];
|
|
1117
|
+
init(): void;
|
|
1118
|
+
setTrack(track: StreamTrack, forced: boolean): void;
|
|
1119
|
+
setVideoTrackByQuality(qualityValue: number): void;
|
|
1120
|
+
getAlternateStreamURLForSafari(): string | undefined;
|
|
1121
|
+
parseManifestForTracks(manifestUri: string): Promise<void>;
|
|
1122
|
+
private mapVariantTracksToStreamTracks;
|
|
1123
|
+
private addAutoRow;
|
|
1124
|
+
private loadQualityDirect;
|
|
1125
|
+
private loadAndResume;
|
|
1126
|
+
private updatePlayerState;
|
|
1127
|
+
private getVideoTracksFromManifest;
|
|
1128
|
+
private setStreamTrack;
|
|
1129
|
+
private setPlayerQualityState;
|
|
1130
|
+
private getActiveTrack;
|
|
1131
|
+
private hasChoiceOfTrack;
|
|
1132
|
+
}
|
|
1133
|
+
|
|
1134
|
+
declare class SubtitlesService {
|
|
1135
|
+
private readonly player;
|
|
1136
|
+
private _isAudioOnly?;
|
|
1137
|
+
constructor(player: PlayerApi);
|
|
1138
|
+
isAudioOnly(): boolean;
|
|
1139
|
+
reset(): void;
|
|
1140
|
+
handleSubtitles(streamObject: IStreamObject): void;
|
|
1141
|
+
}
|
|
1142
|
+
|
|
1143
|
+
declare interface ThumbnailCue {
|
|
1144
|
+
startTime: number;
|
|
1145
|
+
endTime: number;
|
|
1146
|
+
url: string;
|
|
1147
|
+
x: number;
|
|
1148
|
+
y: number;
|
|
1149
|
+
width: number;
|
|
1150
|
+
height: number;
|
|
1151
|
+
}
|
|
1152
|
+
|
|
1153
|
+
declare interface ThumbnailData {
|
|
1154
|
+
imageUrl: string;
|
|
1155
|
+
spriteX: number;
|
|
1156
|
+
spriteY: number;
|
|
1157
|
+
spriteWidth: number;
|
|
1158
|
+
spriteHeight: number;
|
|
1159
|
+
}
|
|
1160
|
+
|
|
1161
|
+
declare class ThumbnailTrackService implements IThumbnailTrackService {
|
|
1162
|
+
private readonly vttParser;
|
|
1163
|
+
private readonly spriteImageCache;
|
|
1164
|
+
private isInitialized;
|
|
1165
|
+
constructor();
|
|
1166
|
+
initialize(vttUrl: string | undefined): Promise<void>;
|
|
1167
|
+
private preloadInitialImages;
|
|
1168
|
+
private loadSpriteImage;
|
|
1169
|
+
getThumbnailAtTime(time: number): ThumbnailData | undefined;
|
|
1170
|
+
renderThumbnailToCanvas(time: number, canvas: HTMLCanvasElement): Promise<void>;
|
|
1171
|
+
isAvailable(): boolean;
|
|
1172
|
+
reset(): void;
|
|
1173
|
+
getParser(): ThumbnailTrackVttParser;
|
|
1174
|
+
}
|
|
1175
|
+
|
|
1176
|
+
declare class ThumbnailTrackVttParser {
|
|
1177
|
+
private static readonly TIMESTAMP_REGEX;
|
|
1178
|
+
private static readonly SPRITE_COORDINATES_REGEX;
|
|
1179
|
+
private cues;
|
|
1180
|
+
private vttFileUrl;
|
|
1181
|
+
parse(vttUrl: string): Promise<void>;
|
|
1182
|
+
private parseVttText;
|
|
1183
|
+
private parseTimestamp;
|
|
1184
|
+
private parseCueLine;
|
|
1185
|
+
private resolveUrl;
|
|
1186
|
+
getCueAtTime(time: number): ThumbnailCue | undefined;
|
|
1187
|
+
getAllCues(): ThumbnailCue[];
|
|
1188
|
+
hasLoadedCues(): boolean;
|
|
1189
|
+
clear(): void;
|
|
1190
|
+
}
|
|
1191
|
+
|
|
1192
|
+
declare class TimeBoundActionsService implements ITimeBoundActionsService {
|
|
1193
|
+
private static readonly CHECK_INTERVAL_MS;
|
|
1194
|
+
private static readonly TIME_TOLERANCE_SECONDS;
|
|
1195
|
+
private static readonly EPOCH_THRESHOLD;
|
|
1196
|
+
private readonly player;
|
|
1197
|
+
private readonly actions;
|
|
1198
|
+
private readonly triggeredOnceActions;
|
|
1199
|
+
private readonly currentActiveActions;
|
|
1200
|
+
private intervalId;
|
|
1201
|
+
private lastCheckTime;
|
|
1202
|
+
private isInitialized;
|
|
1203
|
+
private streamStartEpoch;
|
|
1204
|
+
constructor(player: PlayerApi);
|
|
1205
|
+
initialize(): void;
|
|
1206
|
+
destroy(): void;
|
|
1207
|
+
registerAction(action: ITimeBoundAction): void;
|
|
1208
|
+
registerActions(actions: ITimeBoundAction[]): void;
|
|
1209
|
+
unregisterAction(actionId: string): void;
|
|
1210
|
+
private resetFiredActions;
|
|
1211
|
+
clearActions(): void;
|
|
1212
|
+
private readonly onSeeked;
|
|
1213
|
+
private startIntervalCheck;
|
|
1214
|
+
private stopIntervalCheck;
|
|
1215
|
+
private onTimeUpdate;
|
|
1216
|
+
private isEvaluatingActions;
|
|
1217
|
+
private pendingEvaluateActions;
|
|
1218
|
+
private evaluateActions;
|
|
1219
|
+
private getNowActiveActions;
|
|
1220
|
+
private processNewActions;
|
|
1221
|
+
private processExitedActions;
|
|
1222
|
+
private handlePendingEvaluation;
|
|
1223
|
+
private detectAndSetStreamStartEpoch;
|
|
1224
|
+
private convertToPlayerTime;
|
|
1225
|
+
private isPointInTimeAction;
|
|
1226
|
+
private isWithinTolerance;
|
|
1227
|
+
private isTimeInRange;
|
|
1228
|
+
private handleActionEntered;
|
|
1229
|
+
private handleActionExited;
|
|
1230
|
+
reset(): void;
|
|
1231
|
+
}
|
|
1232
|
+
|
|
1233
|
+
export declare enum TimeBoundActionType {
|
|
1234
|
+
CHAPTER = "chapter",
|
|
1235
|
+
MARKER = "marker",
|
|
1236
|
+
CALLBACK = "callback",
|
|
1237
|
+
PLAY_NEXT = "play-next"
|
|
1238
|
+
}
|
|
1239
|
+
|
|
1240
|
+
declare type WarningListener = (warning: IPlayerError) => void;
|
|
1241
|
+
|
|
1242
|
+
export { }
|