@npo/player 1.22.4 → 1.23.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.
- package/README.md +1 -1
- package/lib/js/ads/ster.js +23 -21
- package/lib/js/ads/ster.test.js +17 -17
- package/lib/js/api/getstreamobject.js +7 -7
- package/lib/js/api/getstreamobject.test.js +3 -3
- package/lib/js/markers/updateLiveMarkers.d.ts +3 -3
- package/lib/js/markers/updateLiveMarkers.js +14 -15
- package/lib/js/markers/updateLiveMarkers.test.js +11 -12
- package/lib/js/playeractions/customerrors.test.js +33 -33
- package/lib/js/playeractions/handlers/customerrors.js +48 -48
- package/lib/js/playeractions/handlers/error.js +1 -1
- package/lib/js/playeractions/handlers/error.test.js +11 -11
- package/lib/js/playeractions/handlers/handleoffsets.d.ts +2 -2
- package/lib/js/playeractions/handlers/handleoffsets.js +6 -6
- package/lib/js/playeractions/handlers/handleoffsets.test.js +12 -12
- package/lib/js/playeractions/handlers/mediasessionactions.d.ts +1 -1
- package/lib/js/playeractions/handlers/mediasessionactions.js +20 -15
- package/lib/js/playeractions/handlers/processplayerconfig.d.ts +2 -2
- package/lib/js/playeractions/handlers/processplayerconfig.js +4 -4
- package/lib/js/playeractions/handlers/processsourceconfig.d.ts +2 -1
- package/lib/js/playeractions/handlers/processsourceconfig.js +52 -46
- package/lib/js/playeractions/handlers/removereplayclass.d.ts +1 -1
- package/lib/js/playeractions/handlers/removereplayclass.test.d.ts +1 -1
- package/lib/js/playeractions/handlers/removereplayclass.test.js +7 -6
- package/lib/js/playeractions/playeractions.d.ts +4 -5
- package/lib/js/playeractions/playeractions.js +4 -5
- package/lib/js/settings/settings.user-agent.d.ts +1 -0
- package/lib/js/settings/settings.user-agent.js +1 -0
- package/lib/js/tracking/handlers/eventbinding.js +9 -9
- package/lib/js/tracking/handlers/eventlogging.js +2 -2
- package/lib/js/tracking/handlers/eventlogging.test.js +2 -2
- package/lib/js/tracking/handlers/playertrackerinit.d.ts +1 -1
- package/lib/js/tracking/handlers/playertrackerinit.js +5 -11
- package/lib/js/tracking/handlers/playertrackerstart.d.ts +1 -1
- package/lib/js/tracking/handlers/playertrackerstart.js +5 -10
- package/lib/js/utilities/utilities.element.d.ts +10 -0
- package/lib/js/utilities/utilities.element.js +8 -0
- package/lib/js/utilities/utilities.element.test.js +25 -0
- package/lib/js/utilities/utilities.jwt.d.ts +3 -0
- package/lib/js/utilities/utilities.jwt.js +22 -0
- package/lib/js/utilities/utilities.jwt.test.js +32 -0
- package/lib/js/utilities/utilities.locale.d.ts +2 -0
- package/lib/js/utilities/utilities.locale.js +4 -0
- package/lib/js/utilities/utilities.locale.test.js +10 -0
- package/lib/js/utilities/utilities.module.d.ts +1 -0
- package/lib/js/utilities/utilities.module.js +4 -0
- package/lib/js/utilities/utilities.module.test.js +19 -0
- package/lib/js/utilities/utilities.stream.d.ts +7 -0
- package/lib/js/utilities/utilities.stream.js +10 -0
- package/lib/js/utilities/utilities.stream.test.js +32 -0
- package/lib/js/utilities/utilities.text.d.ts +1 -0
- package/lib/js/utilities/utilities.text.js +3 -0
- package/lib/js/utilities/utilities.text.test.js +18 -0
- package/lib/js/utilities/utilities.time.d.ts +1 -0
- package/lib/js/utilities/utilities.time.js +3 -0
- package/lib/js/utilities/utilities.time.test.js +8 -0
- package/lib/js/utilities/utilities.url.d.ts +3 -0
- package/lib/js/utilities/utilities.url.js +29 -0
- package/lib/js/utilities/utilities.url.test.js +46 -0
- package/lib/js/utilities/utilities.user-agent.d.ts +3 -0
- package/lib/js/utilities/utilities.user-agent.js +13 -0
- package/lib/js/utilities/utilities.user-agent.test.js +60 -0
- package/lib/js/utilities/utilities.version.d.ts +1 -0
- package/lib/js/utilities/{printversion.js → utilities.version.js} +8 -8
- package/lib/js/utilities/utilities.version.test.js +26 -0
- package/lib/lang/nl.json +2 -1
- package/lib/npoplayer-bridge.test.d.ts +1 -1
- package/lib/npoplayer-bridge.test.js +6 -5
- package/lib/npoplayer.d.ts +14 -10
- package/lib/npoplayer.js +116 -124
- package/lib/npoplayer.test.js +3 -3
- package/lib/package.json +19 -12
- package/lib/services/a11y/setup.d.ts +2 -0
- package/lib/services/a11y/setup.js +18 -0
- package/lib/services/a11y/setup.test.js +109 -0
- package/lib/services/avTypeHandlers/getAVType.d.ts +2 -0
- package/lib/services/avTypeHandlers/getAVType.js +9 -0
- package/lib/services/avTypeHandlers/getAVType.test.js +18 -0
- package/lib/services/drmHandlers/constants.d.ts +15 -0
- package/lib/services/drmHandlers/constants.js +13 -0
- package/lib/services/drmHandlers/decideprofile.d.ts +2 -0
- package/lib/services/drmHandlers/decideprofile.js +51 -0
- package/lib/services/drmHandlers/decideprofile.test.js +34 -0
- package/lib/services/drmHandlers/drmhandlers.d.ts +2 -0
- package/lib/services/drmHandlers/drmhandlers.js +2 -0
- package/lib/services/drmHandlers/utils.d.ts +5 -0
- package/lib/services/drmHandlers/utils.js +26 -0
- package/lib/services/drmHandlers/utils.test.js +74 -0
- package/lib/services/drmHandlers/verifydrm.d.ts +2 -0
- package/lib/services/drmHandlers/verifydrm.js +40 -0
- package/lib/services/drmHandlers/verifydrm.test.js +89 -0
- package/lib/services/eventListenerHandlers/removeEventListeners.d.ts +2 -0
- package/lib/services/eventListenerHandlers/removeEventListeners.js +18 -0
- package/lib/services/eventListenerHandlers/removeEventListeners.test.js +27 -0
- package/lib/services/keyboardHandlers/resolvekeypress.d.ts +2 -0
- package/lib/services/keyboardHandlers/resolvekeypress.js +49 -0
- package/lib/{js/playeractions/handlers → services/keyboardHandlers}/resolvekeypress.test.js +21 -13
- package/lib/services/liveStreamHandlers/handleLiveStreamControls.d.ts +6 -0
- package/lib/services/liveStreamHandlers/handleLiveStreamControls.js +35 -0
- package/lib/services/localStorageHandlers/localStorageHandlers.d.ts +4 -0
- package/lib/services/localStorageHandlers/localStorageHandlers.js +33 -0
- package/lib/services/localStorageHandlers/localStorageHandlers.test.js +109 -0
- package/lib/services/npoPlayerAPI/npoPlayerAPI.d.ts +30 -0
- package/lib/services/npoPlayerAPI/npoPlayerAPI.js +91 -0
- package/lib/services/npoPlayerAPI/npoPlayerAPI.test.js +51 -0
- package/lib/services/segmentHandlers/addSegmentEventListeners.d.ts +2 -0
- package/lib/services/segmentHandlers/addSegmentEventListeners.js +14 -0
- package/lib/services/segmentHandlers/addSegmentEventListeners.test.js +43 -0
- package/lib/services/segmentHandlers/convertFragmentToSegment.d.ts +2 -0
- package/lib/services/segmentHandlers/convertFragmentToSegment.js +8 -0
- package/lib/services/segmentHandlers/convertFragmentToSegment.test.js +17 -0
- package/lib/services/segmentHandlers/handleSegmentSeek.d.ts +5 -0
- package/lib/services/segmentHandlers/handleSegmentSeek.js +15 -0
- package/lib/services/segmentHandlers/handleSegmentSeek.test.js +73 -0
- package/lib/services/segmentHandlers/handleSegmentTimeChanged.d.ts +2 -0
- package/lib/services/segmentHandlers/handleSegmentTimeChanged.js +21 -0
- package/lib/services/segmentHandlers/handleSegmentTimeChanged.test.d.ts +1 -0
- package/lib/services/segmentHandlers/handleSegmentTimeChanged.test.js +34 -0
- package/lib/services/segmentHandlers/initSegment.d.ts +7 -0
- package/lib/services/segmentHandlers/initSegment.js +10 -0
- package/lib/services/segmentHandlers/initSegment.test.d.ts +1 -0
- package/lib/services/segmentHandlers/initSegment.test.js +36 -0
- package/lib/services/segmentHandlers/setSegmentMarkers.d.ts +2 -0
- package/lib/services/segmentHandlers/setSegmentMarkers.js +25 -0
- package/lib/services/segmentHandlers/setSegmentMarkers.test.d.ts +1 -0
- package/lib/services/segmentHandlers/setSegmentMarkers.test.js +32 -0
- package/lib/services/services.d.ts +14 -0
- package/lib/services/services.js +47 -0
- package/lib/src/js/markers/updateLiveMarkers.d.ts +3 -3
- package/lib/src/js/playeractions/handlers/handleoffsets.d.ts +2 -2
- package/lib/src/js/playeractions/handlers/mediasessionactions.d.ts +1 -1
- package/lib/src/js/playeractions/handlers/processplayerconfig.d.ts +2 -2
- package/lib/src/js/playeractions/handlers/processsourceconfig.d.ts +2 -1
- package/lib/src/js/playeractions/handlers/removereplayclass.d.ts +1 -1
- package/lib/src/js/playeractions/handlers/removereplayclass.test.d.ts +1 -1
- package/lib/src/js/playeractions/playeractions.d.ts +4 -5
- package/lib/src/js/settings/settings.user-agent.d.ts +1 -0
- package/lib/src/js/tracking/handlers/playertrackerinit.d.ts +1 -1
- package/lib/src/js/tracking/handlers/playertrackerstart.d.ts +1 -1
- package/lib/src/js/utilities/utilities.element.d.ts +10 -0
- package/lib/src/js/utilities/utilities.element.test.d.ts +1 -0
- package/lib/src/js/utilities/utilities.jwt.d.ts +3 -0
- package/lib/src/js/utilities/utilities.jwt.test.d.ts +1 -0
- package/lib/src/js/utilities/utilities.locale.d.ts +2 -0
- package/lib/src/js/utilities/utilities.locale.test.d.ts +1 -0
- package/lib/src/js/utilities/utilities.module.d.ts +1 -0
- package/lib/src/js/utilities/utilities.module.test.d.ts +1 -0
- package/lib/src/js/utilities/utilities.stream.d.ts +7 -0
- package/lib/src/js/utilities/utilities.stream.test.d.ts +1 -0
- package/lib/src/js/utilities/utilities.text.d.ts +1 -0
- package/lib/src/js/utilities/utilities.text.test.d.ts +1 -0
- package/lib/src/js/utilities/utilities.time.d.ts +1 -0
- package/lib/src/js/utilities/utilities.time.test.d.ts +1 -0
- package/lib/src/js/utilities/utilities.url.d.ts +3 -0
- package/lib/src/js/utilities/utilities.url.test.d.ts +1 -0
- package/lib/src/js/utilities/utilities.user-agent.d.ts +3 -0
- package/lib/src/js/utilities/utilities.user-agent.test.d.ts +1 -0
- package/lib/src/js/utilities/utilities.version.d.ts +1 -0
- package/lib/src/js/utilities/utilities.version.test.d.ts +1 -0
- package/lib/src/npoplayer-bridge.test.d.ts +1 -1
- package/lib/src/npoplayer.d.ts +14 -10
- package/lib/src/services/a11y/setup.d.ts +2 -0
- package/lib/src/services/a11y/setup.test.d.ts +1 -0
- package/lib/src/services/avTypeHandlers/getAVType.d.ts +2 -0
- package/lib/src/services/avTypeHandlers/getAVType.test.d.ts +1 -0
- package/lib/src/services/drmHandlers/constants.d.ts +15 -0
- package/lib/src/services/drmHandlers/decideprofile.d.ts +2 -0
- package/lib/src/services/drmHandlers/decideprofile.test.d.ts +1 -0
- package/lib/src/services/drmHandlers/drmhandlers.d.ts +2 -0
- package/lib/src/services/drmHandlers/utils.d.ts +5 -0
- package/lib/src/services/drmHandlers/utils.test.d.ts +1 -0
- package/lib/src/services/drmHandlers/verifydrm.d.ts +2 -0
- package/lib/src/services/drmHandlers/verifydrm.test.d.ts +1 -0
- package/lib/src/services/eventListenerHandlers/removeEventListeners.d.ts +2 -0
- package/lib/src/services/eventListenerHandlers/removeEventListeners.test.d.ts +1 -0
- package/lib/src/services/keyboardHandlers/resolvekeypress.d.ts +2 -0
- package/lib/src/services/keyboardHandlers/resolvekeypress.test.d.ts +1 -0
- package/lib/src/services/liveStreamHandlers/handleLiveStreamControls.d.ts +6 -0
- package/lib/src/services/localStorageHandlers/localStorageHandlers.d.ts +4 -0
- package/lib/src/services/localStorageHandlers/localStorageHandlers.test.d.ts +1 -0
- package/lib/src/services/npoPlayerAPI/npoPlayerAPI.d.ts +30 -0
- package/lib/src/services/npoPlayerAPI/npoPlayerAPI.test.d.ts +1 -0
- package/lib/src/services/segmentHandlers/addSegmentEventListeners.d.ts +2 -0
- package/lib/src/services/segmentHandlers/addSegmentEventListeners.test.d.ts +1 -0
- package/lib/src/services/segmentHandlers/convertFragmentToSegment.d.ts +2 -0
- package/lib/src/services/segmentHandlers/convertFragmentToSegment.test.d.ts +1 -0
- package/lib/src/services/segmentHandlers/handleSegmentSeek.d.ts +5 -0
- package/lib/src/services/segmentHandlers/handleSegmentSeek.test.d.ts +1 -0
- package/lib/src/services/segmentHandlers/handleSegmentTimeChanged.d.ts +2 -0
- package/lib/src/services/segmentHandlers/handleSegmentTimeChanged.test.d.ts +1 -0
- package/lib/src/services/segmentHandlers/initSegment.d.ts +7 -0
- package/lib/src/services/segmentHandlers/initSegment.test.d.ts +1 -0
- package/lib/src/services/segmentHandlers/setSegmentMarkers.d.ts +2 -0
- package/lib/src/services/segmentHandlers/setSegmentMarkers.test.d.ts +1 -0
- package/lib/src/services/services.d.ts +14 -0
- package/lib/src/types/events.d.ts +91 -0
- package/lib/src/types/interfaces.d.ts +39 -15
- package/lib/{js → src}/ui/components/adbutton.d.ts +1 -1
- package/lib/{js → src}/ui/components/adlabel.d.ts +1 -1
- package/lib/{js → src}/ui/components/audio/controlbar.d.ts +1 -1
- package/lib/{js → src}/ui/components/buttons.d.ts +3 -3
- package/lib/src/ui/components/controlbar.d.ts +3 -0
- package/lib/{js → src}/ui/components/ctabar.d.ts +2 -2
- package/lib/src/ui/components/nativemobile/controlbar.d.ts +3 -0
- package/lib/src/ui/components/nativemobile/topbar.d.ts +3 -0
- package/lib/{js → src}/ui/components/playnext.d.ts +1 -1
- package/lib/src/{js/ui → ui}/components/seekbar.d.ts +1 -1
- package/lib/src/{js/ui → ui}/components/settingspanel.d.ts +1 -1
- package/lib/{js → src}/ui/components/titlebar.d.ts +1 -1
- package/lib/src/ui/components/topbar.d.ts +3 -0
- package/lib/src/ui/handlers/accessibilityhandler.test.d.ts +1 -0
- package/lib/src/ui/handlers/domhandlers.d.ts +3 -0
- package/lib/src/ui/handlers/domhandlers.test.d.ts +1 -0
- package/lib/{js → src}/ui/handlers/nicamhandler.d.ts +2 -2
- package/lib/src/ui/handlers/nicamhandler.test.d.ts +1 -0
- package/lib/{js → src}/ui/handlers/playnextstreen.test.d.ts +1 -1
- package/lib/src/{js/ui → ui}/handlers/streamhandler.d.ts +2 -2
- package/lib/{js → src}/ui/nativemobileuicontainer.d.ts +1 -1
- package/lib/src/ui/nativemobileuifactory.test.d.ts +1 -0
- package/lib/{js → src}/ui/uicontainer.d.ts +2 -3
- package/lib/tests/mocks/mockNpoplayer.js +18 -15
- package/lib/tests/mocks/mockPlayerAPI.d.ts +3 -0
- package/lib/tests/mocks/mockPlayerAPI.js +181 -0
- package/lib/tests/mocks/mockPlayerContext.d.ts +2 -0
- package/lib/tests/mocks/mockPlayerContext.js +40 -0
- package/lib/types/events.d.ts +91 -0
- package/lib/types/events.js +1 -0
- package/lib/types/interfaces.d.ts +39 -15
- package/lib/types/interfaces.js +12 -0
- package/lib/{src/js/ui → ui}/components/adbutton.d.ts +1 -1
- package/lib/{src/js/ui → ui}/components/adlabel.d.ts +1 -1
- package/lib/{src/js/ui → ui}/components/audio/controlbar.d.ts +1 -1
- package/lib/{js/ui → ui}/components/audio/controlbar.js +2 -2
- package/lib/{src/js/ui → ui}/components/buttons.d.ts +3 -3
- package/lib/{js/ui → ui}/components/buttons.js +7 -7
- package/lib/ui/components/controlbar.d.ts +3 -0
- package/lib/{js/ui → ui}/components/controlbar.js +5 -2
- package/lib/{src/js/ui → ui}/components/ctabar.d.ts +3 -3
- package/lib/{js/ui → ui}/components/ctabar.js +4 -6
- package/lib/{js/ui → ui}/components/nativemobile/buttons.js +8 -6
- package/lib/ui/components/nativemobile/controlbar.d.ts +3 -0
- package/lib/{js/ui → ui}/components/nativemobile/controlbar.js +6 -4
- package/lib/{js/ui → ui}/components/nativemobile/ctabar.js +1 -1
- package/lib/ui/components/nativemobile/topbar.d.ts +3 -0
- package/lib/{js/ui → ui}/components/nativemobile/topbar.js +6 -3
- package/lib/{src/js/ui → ui}/components/playnext.d.ts +1 -1
- package/lib/{js/ui → ui}/components/playnext.js +1 -1
- package/lib/{js/ui → ui}/components/seekbar.d.ts +1 -1
- package/lib/{js/ui → ui}/components/seekbar.js +1 -1
- package/lib/{js/ui → ui}/components/settingspanel.d.ts +1 -1
- package/lib/{js/ui → ui}/components/settingspanel.js +23 -40
- package/lib/{src/js/ui → ui}/components/titlebar.d.ts +1 -1
- package/lib/ui/components/topbar.d.ts +3 -0
- package/lib/{js/ui → ui}/components/topbar.js +8 -4
- package/lib/{js/ui → ui}/handlers/accessibilityhandler.js +10 -10
- package/lib/ui/handlers/accessibilityhandler.test.d.ts +1 -0
- package/lib/ui/handlers/domhandlers.d.ts +3 -0
- package/lib/ui/handlers/domhandlers.js +7 -0
- package/lib/ui/handlers/domhandlers.test.d.ts +1 -0
- package/lib/ui/handlers/domhandlers.test.js +51 -0
- package/lib/{js/ui → ui}/handlers/listboxhandlers.js +7 -7
- package/lib/{src/js/ui → ui}/handlers/nicamhandler.d.ts +2 -2
- package/lib/{js/ui → ui}/handlers/nicamhandler.js +31 -10
- package/lib/ui/handlers/nicamhandler.test.d.ts +1 -0
- package/lib/{js/ui → ui}/handlers/nicamhandler.test.js +4 -3
- package/lib/{js/ui → ui}/handlers/playnextscreen.js +1 -1
- package/lib/{src/js/ui → ui}/handlers/playnextstreen.test.d.ts +1 -1
- package/lib/{js/ui → ui}/handlers/playnextstreen.test.js +5 -3
- package/lib/{js/ui → ui}/handlers/streamhandler.d.ts +2 -2
- package/lib/ui/handlers/streamhandler.js +51 -0
- package/lib/{src/js/ui → ui}/nativemobileuicontainer.d.ts +1 -1
- package/lib/{js/ui → ui}/nativemobileuicontainer.js +8 -13
- package/lib/{js/ui → ui}/nativemobileuifactory.js +20 -23
- package/lib/ui/nativemobileuifactory.test.d.ts +1 -0
- package/lib/{js/ui → ui}/nativemobileuifactory.test.js +8 -6
- package/lib/{src/js/ui → ui}/uicontainer.d.ts +2 -3
- package/lib/{js/ui → ui}/uicontainer.js +31 -45
- package/package.json +19 -12
- package/src/{scss → style}/components/_controlbars.scss +4 -0
- package/src/{scss → style}/components/_icons.scss +6 -0
- package/src/style/components/_poster.scss +3 -0
- package/src/{scss → style}/components/_settingspanel.scss +15 -1
- package/src/{scss → style}/components/_subtitles.scss +25 -16
- package/src/{scss → style}/npoplayer.css +30 -20
- package/src/{scss → style}/npoplayer.scss +3 -0
- package/src/{scss → style}/variants/_player-small.scss +9 -8
- package/lib/js/checks/apple.d.ts +0 -2
- package/lib/js/checks/apple.js +0 -19
- package/lib/js/checks/apple.test.js +0 -20
- package/lib/js/drm/drm.d.ts +0 -2
- package/lib/js/drm/drm.js +0 -2
- package/lib/js/drm/handlers/decideprofile.d.ts +0 -3
- package/lib/js/drm/handlers/decideprofile.js +0 -53
- package/lib/js/drm/handlers/decideprofile.test.js +0 -33
- package/lib/js/drm/handlers/verifydrm.d.ts +0 -4
- package/lib/js/drm/handlers/verifydrm.js +0 -24
- package/lib/js/drm/handlers/verifydrm.test.js +0 -17
- package/lib/js/fragments/removefragments.d.ts +0 -2
- package/lib/js/fragments/removefragments.js +0 -5
- package/lib/js/fragments/removefragments.test.js +0 -26
- package/lib/js/fragments/setfragments.d.ts +0 -6
- package/lib/js/fragments/setfragments.js +0 -78
- package/lib/js/fragments/setfragments.test.js +0 -72
- package/lib/js/playeractions/handlers/resolvekeypress.d.ts +0 -3
- package/lib/js/playeractions/handlers/resolvekeypress.js +0 -52
- package/lib/js/ui/components/controlbar.d.ts +0 -3
- package/lib/js/ui/components/nativemobile/addFragments.d.ts +0 -1
- package/lib/js/ui/components/nativemobile/addFragments.js +0 -7
- package/lib/js/ui/components/nativemobile/controlbar.d.ts +0 -3
- package/lib/js/ui/components/nativemobile/topbar.d.ts +0 -3
- package/lib/js/ui/components/topbar.d.ts +0 -3
- package/lib/js/ui/handlers/domhandlers.d.ts +0 -3
- package/lib/js/ui/handlers/domhandlers.js +0 -7
- package/lib/js/ui/handlers/domhandlers.test.js +0 -50
- package/lib/js/ui/handlers/streamhandler.js +0 -40
- package/lib/js/utilities/printversion.d.ts +0 -1
- package/lib/js/utilities/utilities.d.ts +0 -16
- package/lib/js/utilities/utilities.js +0 -78
- package/lib/js/utilities/utilities.test.js +0 -50
- package/lib/src/js/checks/apple.d.ts +0 -2
- package/lib/src/js/drm/drm.d.ts +0 -2
- package/lib/src/js/drm/handlers/decideprofile.d.ts +0 -3
- package/lib/src/js/drm/handlers/verifydrm.d.ts +0 -4
- package/lib/src/js/fragments/removefragments.d.ts +0 -2
- package/lib/src/js/fragments/setfragments.d.ts +0 -6
- package/lib/src/js/playeractions/handlers/resolvekeypress.d.ts +0 -3
- package/lib/src/js/ui/components/controlbar.d.ts +0 -3
- package/lib/src/js/ui/components/nativemobile/addFragments.d.ts +0 -1
- package/lib/src/js/ui/components/nativemobile/controlbar.d.ts +0 -3
- package/lib/src/js/ui/components/nativemobile/topbar.d.ts +0 -3
- package/lib/src/js/ui/components/topbar.d.ts +0 -3
- package/lib/src/js/ui/handlers/domhandlers.d.ts +0 -3
- package/lib/src/js/utilities/printversion.d.ts +0 -1
- package/lib/src/js/utilities/utilities.d.ts +0 -16
- /package/lib/js/{utilities/localizationconfig.d.ts → settings/localization.d.ts} +0 -0
- /package/lib/js/{utilities/localizationconfig.js → settings/localization.js} +0 -0
- /package/lib/js/{checks/apple.test.d.ts → utilities/utilities.element.test.d.ts} +0 -0
- /package/lib/js/{drm/handlers/decideprofile.test.d.ts → utilities/utilities.jwt.test.d.ts} +0 -0
- /package/lib/js/{drm/handlers/verifydrm.test.d.ts → utilities/utilities.locale.test.d.ts} +0 -0
- /package/lib/js/{fragments/removefragments.test.d.ts → utilities/utilities.module.test.d.ts} +0 -0
- /package/lib/js/{fragments/setfragments.test.d.ts → utilities/utilities.stream.test.d.ts} +0 -0
- /package/lib/js/{playeractions/handlers/resolvekeypress.test.d.ts → utilities/utilities.text.test.d.ts} +0 -0
- /package/lib/js/{ui/handlers/accessibilityhandler.test.d.ts → utilities/utilities.time.test.d.ts} +0 -0
- /package/lib/js/{ui/handlers/domhandlers.test.d.ts → utilities/utilities.url.test.d.ts} +0 -0
- /package/lib/js/{ui/handlers/nicamhandler.test.d.ts → utilities/utilities.user-agent.test.d.ts} +0 -0
- /package/lib/js/{ui/nativemobileuifactory.test.d.ts → utilities/utilities.version.test.d.ts} +0 -0
- /package/lib/{js/utilities/utilities.test.d.ts → services/a11y/setup.test.d.ts} +0 -0
- /package/lib/{src/js/checks/apple.test.d.ts → services/avTypeHandlers/getAVType.test.d.ts} +0 -0
- /package/lib/{src/js/drm/handlers → services/drmHandlers}/decideprofile.test.d.ts +0 -0
- /package/lib/{src/js/drm/handlers/verifydrm.test.d.ts → services/drmHandlers/utils.test.d.ts} +0 -0
- /package/lib/{src/js/fragments/removefragments.test.d.ts → services/drmHandlers/verifydrm.test.d.ts} +0 -0
- /package/lib/{src/js/fragments/setfragments.test.d.ts → services/eventListenerHandlers/removeEventListeners.test.d.ts} +0 -0
- /package/lib/{src/js/playeractions/handlers → services/keyboardHandlers}/resolvekeypress.test.d.ts +0 -0
- /package/lib/{src/js/ui/handlers/accessibilityhandler.test.d.ts → services/localStorageHandlers/localStorageHandlers.test.d.ts} +0 -0
- /package/lib/{src/js/ui/handlers/domhandlers.test.d.ts → services/npoPlayerAPI/npoPlayerAPI.test.d.ts} +0 -0
- /package/lib/{src/js/ui/handlers/nicamhandler.test.d.ts → services/segmentHandlers/addSegmentEventListeners.test.d.ts} +0 -0
- /package/lib/{src/js/ui/nativemobileuifactory.test.d.ts → services/segmentHandlers/convertFragmentToSegment.test.d.ts} +0 -0
- /package/lib/{src/js/utilities/utilities.test.d.ts → services/segmentHandlers/handleSegmentSeek.test.d.ts} +0 -0
- /package/lib/src/js/{utilities/localizationconfig.d.ts → settings/localization.d.ts} +0 -0
- /package/lib/{js → src}/ui/components/nativemobile/buttons.d.ts +0 -0
- /package/lib/{js → src}/ui/components/nativemobile/ctabar.d.ts +0 -0
- /package/lib/{js → src}/ui/components/nativemobile/titlebar.d.ts +0 -0
- /package/lib/{js → src}/ui/handlers/accessibilityhandler.d.ts +0 -0
- /package/lib/{js → src}/ui/handlers/listboxhandlers.d.ts +0 -0
- /package/lib/{js → src}/ui/handlers/playnextscreen.d.ts +0 -0
- /package/lib/{js → src}/ui/handlers/timecontrolhandlers.d.ts +0 -0
- /package/lib/{js → src}/ui/nativemobileuifactory.d.ts +0 -0
- /package/lib/{js/ui → ui}/components/adbutton.js +0 -0
- /package/lib/{js/ui → ui}/components/adlabel.js +0 -0
- /package/lib/{src/js/ui → ui}/components/nativemobile/buttons.d.ts +0 -0
- /package/lib/{src/js/ui → ui}/components/nativemobile/ctabar.d.ts +0 -0
- /package/lib/{src/js/ui → ui}/components/nativemobile/titlebar.d.ts +0 -0
- /package/lib/{js/ui → ui}/components/nativemobile/titlebar.js +0 -0
- /package/lib/{js/ui → ui}/components/titlebar.js +0 -0
- /package/lib/{src/js/ui → ui}/handlers/accessibilityhandler.d.ts +0 -0
- /package/lib/{js/ui → ui}/handlers/accessibilityhandler.test.js +0 -0
- /package/lib/{src/js/ui → ui}/handlers/listboxhandlers.d.ts +0 -0
- /package/lib/{src/js/ui → ui}/handlers/playnextscreen.d.ts +0 -0
- /package/lib/{src/js/ui → ui}/handlers/timecontrolhandlers.d.ts +0 -0
- /package/lib/{js/ui → ui}/handlers/timecontrolhandlers.js +0 -0
- /package/lib/{src/js/ui → ui}/nativemobileuifactory.d.ts +0 -0
- /package/src/{scss → style}/components/_advert.scss +0 -0
- /package/src/{scss → style}/components/_audio.scss +0 -0
- /package/src/{scss → style}/components/_buffering.scss +0 -0
- /package/src/{scss → style}/components/_error.scss +0 -0
- /package/src/{scss → style}/components/_hugeplaybacktogglebutton.scss +0 -0
- /package/src/{scss → style}/components/_metadata.scss +0 -0
- /package/src/{scss → style}/components/_nicam.scss +0 -0
- /package/src/{scss → style}/components/_playnext.scss +0 -0
- /package/src/{scss → style}/components/_replay.scss +0 -0
- /package/src/{scss → style}/components/_seekbar.scss +0 -0
- /package/src/{scss → style}/components/_seekbarthumbnail.scss +0 -0
- /package/src/{scss → style}/components/_textbuttons.scss +0 -0
- /package/src/{scss → style}/components/_volumeslider.scss +0 -0
- /package/src/{scss → style}/components/audio/_bottombar.scss +0 -0
- /package/src/{scss → style}/components/audio/_buffering.scss +0 -0
- /package/src/{scss → style}/components/audio/_errors.scss +0 -0
- /package/src/{scss → style}/components/audio/_metadata.scss +0 -0
- /package/src/{scss → style}/components/audio/_playbutton.scss +0 -0
- /package/src/{scss → style}/components/audio/_poster.scss +0 -0
- /package/src/{scss → style}/components/audio/_replay.scss +0 -0
- /package/src/{scss → style}/components/audio/_seekbar.scss +0 -0
- /package/src/{scss → style}/components/audio/_topbar.scss +0 -0
- /package/src/{scss → style}/components/audio/_vars.scss +0 -0
- /package/src/{scss → style}/components/audio/_volumeslider.scss +0 -0
- /package/src/{scss → style}/variants/_player-audio.scss +0 -0
- /package/src/{scss → style}/variants/_player-base.scss +0 -0
- /package/src/{scss → style}/variants/_player-debug.scss +0 -0
- /package/src/{scss → style}/variants/_player-large.scss +0 -0
- /package/src/{scss → style}/variants/_player-medium.scss +0 -0
- /package/src/{scss → style}/variants/_player-native-mobile.scss +0 -0
- /package/src/{scss → style}/vars/_audio.scss +0 -0
- /package/src/{scss → style}/vars/_colors.scss +0 -0
- /package/src/{scss → style}/vars/_fonts.scss +0 -0
- /package/src/{scss → style}/vars/_icons.scss +0 -0
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export const handleSegmentTimeChanged = (playerContext, segment) => {
|
|
2
|
+
let isFinished = false;
|
|
3
|
+
const handleTimeGreaterThanOutpoint = (e) => {
|
|
4
|
+
if (e.time > segment.outpoint && !isFinished) {
|
|
5
|
+
isFinished = true;
|
|
6
|
+
playerContext.player.seek(Math.max(segment.inpoint, segment.outpoint));
|
|
7
|
+
playerContext.player.pause();
|
|
8
|
+
playerContext?.player.addClassToNpoPlayerElement('bmpui-player-state-replay');
|
|
9
|
+
}
|
|
10
|
+
};
|
|
11
|
+
const handleTimeLessThanInpoint = (e) => {
|
|
12
|
+
if (e.time < segment.inpoint || (e.time > segment.outpoint && isFinished)) {
|
|
13
|
+
isFinished = false;
|
|
14
|
+
playerContext.player.seek(segment.inpoint);
|
|
15
|
+
}
|
|
16
|
+
};
|
|
17
|
+
return (e) => {
|
|
18
|
+
handleTimeGreaterThanOutpoint(e);
|
|
19
|
+
handleTimeLessThanInpoint(e);
|
|
20
|
+
};
|
|
21
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { mockPlayerContext } from '../../../tests/mocks/mockPlayerContext';
|
|
2
|
+
import { handleSegmentTimeChanged } from './handleSegmentTimeChanged';
|
|
3
|
+
describe('handleSegmentTimeChanged', () => {
|
|
4
|
+
const segment = { inpoint: 10, outpoint: 20, duration: 10 };
|
|
5
|
+
const context = { ...mockPlayerContext };
|
|
6
|
+
beforeEach(() => {
|
|
7
|
+
jest.clearAllMocks();
|
|
8
|
+
});
|
|
9
|
+
it('should seek and pause player, and add class when time is greater than outpoint and isFinished is false', () => {
|
|
10
|
+
const handler = handleSegmentTimeChanged(context, segment);
|
|
11
|
+
handler({ time: 30 });
|
|
12
|
+
expect(context.player.seek).toHaveBeenCalledWith(20);
|
|
13
|
+
expect(context.player.pause).toHaveBeenCalled();
|
|
14
|
+
expect(context.player.addClassToNpoPlayerElement).toHaveBeenCalledWith('bmpui-player-state-replay');
|
|
15
|
+
});
|
|
16
|
+
it('should reset isFinished and seek to inpoint when time is less than inpoint', () => {
|
|
17
|
+
const handler = handleSegmentTimeChanged(context, segment);
|
|
18
|
+
handler({ time: 30 });
|
|
19
|
+
handler({ time: 9 });
|
|
20
|
+
expect(context.player.seek).toHaveBeenCalledWith(10);
|
|
21
|
+
});
|
|
22
|
+
it('should reset isFinished and seek to inpoint when time is greater than outpoint and isFinished is true', () => {
|
|
23
|
+
const handler = handleSegmentTimeChanged(context, segment);
|
|
24
|
+
handler({ time: 21 });
|
|
25
|
+
handler({ time: 22 });
|
|
26
|
+
expect(context.player.seek).toHaveBeenCalledWith(10);
|
|
27
|
+
});
|
|
28
|
+
it('should not call pause if time is within inpoint and outpoint', () => {
|
|
29
|
+
const handler = handleSegmentTimeChanged(context, segment);
|
|
30
|
+
handler({ time: 15 });
|
|
31
|
+
expect(context.player.seek).not.toHaveBeenCalled();
|
|
32
|
+
expect(context.player.pause).not.toHaveBeenCalled();
|
|
33
|
+
});
|
|
34
|
+
});
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { addSegmentEventListeners } from './addSegmentEventListeners';
|
|
2
|
+
import { convertFragmentToSegment } from './convertFragmentToSegment';
|
|
3
|
+
export const initSegment = (playerContext, options) => {
|
|
4
|
+
const { segment, fragment } = options;
|
|
5
|
+
const activeSegment = fragment ? convertFragmentToSegment(fragment) : segment;
|
|
6
|
+
if (activeSegment) {
|
|
7
|
+
playerContext.player.seek(activeSegment.inpoint);
|
|
8
|
+
addSegmentEventListeners(playerContext, activeSegment);
|
|
9
|
+
}
|
|
10
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { initSegment } from './initSegment';
|
|
2
|
+
import { addSegmentEventListeners } from './addSegmentEventListeners';
|
|
3
|
+
import { convertFragmentToSegment } from './convertFragmentToSegment';
|
|
4
|
+
import { mockPlayerContext } from '../../../tests/mocks/mockPlayerContext';
|
|
5
|
+
jest.mock('./addSegmentEventListeners');
|
|
6
|
+
jest.mock('./convertFragmentToSegment');
|
|
7
|
+
const createMockSegment = () => ({ inpoint: 10, outpoint: 20, duration: 10 });
|
|
8
|
+
const createMockFragment = () => ({
|
|
9
|
+
sections: [{ time: 0, duration: 10, title: 'Dummy fragment' }]
|
|
10
|
+
});
|
|
11
|
+
describe('initSegment', () => {
|
|
12
|
+
beforeEach(() => {
|
|
13
|
+
jest.clearAllMocks();
|
|
14
|
+
});
|
|
15
|
+
it('should convert fragment to segment and seek to inpoint', () => {
|
|
16
|
+
const mockFragment = createMockFragment();
|
|
17
|
+
const mockSegment = createMockSegment();
|
|
18
|
+
convertFragmentToSegment.mockReturnValue(mockSegment);
|
|
19
|
+
initSegment(mockPlayerContext, { fragment: mockFragment });
|
|
20
|
+
expect(convertFragmentToSegment).toHaveBeenCalledWith(mockFragment);
|
|
21
|
+
expect(mockPlayerContext.player.seek).toHaveBeenCalledWith(mockSegment.inpoint);
|
|
22
|
+
expect(addSegmentEventListeners).toHaveBeenCalledWith(mockPlayerContext, mockSegment);
|
|
23
|
+
});
|
|
24
|
+
it('should seek to inpoint and add event listeners if segment is provided', () => {
|
|
25
|
+
const mockSegment = createMockSegment();
|
|
26
|
+
initSegment(mockPlayerContext, { segment: mockSegment });
|
|
27
|
+
expect(mockPlayerContext.player.seek).toHaveBeenCalledWith(mockSegment.inpoint);
|
|
28
|
+
expect(addSegmentEventListeners).toHaveBeenCalledWith(mockPlayerContext, mockSegment);
|
|
29
|
+
});
|
|
30
|
+
it('should do nothing if neither segment nor fragment is provided', () => {
|
|
31
|
+
initSegment(mockPlayerContext, {});
|
|
32
|
+
expect(mockPlayerContext.player.seek).not.toHaveBeenCalled();
|
|
33
|
+
expect(addSegmentEventListeners).not.toHaveBeenCalled();
|
|
34
|
+
expect(convertFragmentToSegment).not.toHaveBeenCalled();
|
|
35
|
+
});
|
|
36
|
+
});
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import * as nlJson from '../../lang/nl.json';
|
|
2
|
+
export function setSegmentMarkers(segment, title) {
|
|
3
|
+
const unplayableClass = 'seekbar-marker-unplayable';
|
|
4
|
+
const unplayableTitle = nlJson['segment.unplayableTitle'];
|
|
5
|
+
const ONE_DAY_IN_SECONDS = 86400;
|
|
6
|
+
return [
|
|
7
|
+
{
|
|
8
|
+
time: 0,
|
|
9
|
+
duration: segment.inpoint,
|
|
10
|
+
title: unplayableTitle,
|
|
11
|
+
cssClasses: [unplayableClass]
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
time: segment.inpoint,
|
|
15
|
+
duration: segment.outpoint - segment.inpoint,
|
|
16
|
+
title: title
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
time: segment.outpoint,
|
|
20
|
+
duration: ONE_DAY_IN_SECONDS,
|
|
21
|
+
title: unplayableTitle,
|
|
22
|
+
cssClasses: [unplayableClass]
|
|
23
|
+
}
|
|
24
|
+
];
|
|
25
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { setSegmentMarkers } from './setSegmentMarkers';
|
|
2
|
+
describe('setSegmentMarkers', () => {
|
|
3
|
+
it('should create markers correctly for a given segment', () => {
|
|
4
|
+
const ONE_DAY_IN_SECONDS = 86400;
|
|
5
|
+
const segment = {
|
|
6
|
+
inpoint: 10,
|
|
7
|
+
outpoint: 50,
|
|
8
|
+
duration: 60
|
|
9
|
+
};
|
|
10
|
+
const expectedMarkers = [
|
|
11
|
+
{
|
|
12
|
+
time: 0,
|
|
13
|
+
duration: segment.inpoint,
|
|
14
|
+
title: 'Niet beschikbaar',
|
|
15
|
+
cssClasses: ['seekbar-marker-unplayable']
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
time: 10,
|
|
19
|
+
duration: segment.outpoint - segment.inpoint,
|
|
20
|
+
title: 'Test title'
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
time: segment.outpoint,
|
|
24
|
+
duration: ONE_DAY_IN_SECONDS,
|
|
25
|
+
title: 'Niet beschikbaar',
|
|
26
|
+
cssClasses: ['seekbar-marker-unplayable']
|
|
27
|
+
}
|
|
28
|
+
];
|
|
29
|
+
const result = setSegmentMarkers(segment, 'Test title');
|
|
30
|
+
expect(result).toEqual(expectedMarkers);
|
|
31
|
+
});
|
|
32
|
+
});
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { ApiPayload, Fragment, PlayerContext, Profile, Segment, TimeLineMarker, LocalStorageData, LocalStorageValues } from 'types/interfaces';
|
|
2
|
+
import { AVType } from '@npotag/tag/dist/types/src/streamTracker';
|
|
3
|
+
export declare class NpoPlayerServices {
|
|
4
|
+
getAVType(avType: string): AVType;
|
|
5
|
+
keyboardHandler(playerContext: PlayerContext, e: KeyboardEvent): void;
|
|
6
|
+
convertFragmentToSegment(fragment: Fragment): Segment;
|
|
7
|
+
segmentMarkersHandler(segment: Segment, title: string): Array<TimeLineMarker>;
|
|
8
|
+
decideProfile(playerContext: PlayerContext, preferredDRM?: string): Promise<Profile>;
|
|
9
|
+
verifyDRM(playerContext: PlayerContext, payload: ApiPayload): Promise<void>;
|
|
10
|
+
setStoredUserPrefs(key: LocalStorageValues, value: any): void;
|
|
11
|
+
getStoredUserPrefs(): LocalStorageData;
|
|
12
|
+
handleUserPrefs(playerContext: PlayerContext): void;
|
|
13
|
+
setAccessibilityAttributes(playerContext: PlayerContext): void;
|
|
14
|
+
}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { resolveKeyPress } from './keyboardHandlers/resolvekeypress';
|
|
2
|
+
import { setSegmentMarkers } from './segmentHandlers/setSegmentMarkers';
|
|
3
|
+
import { convertFragmentToSegment } from './segmentHandlers/convertFragmentToSegment';
|
|
4
|
+
import * as DRMHandlers from './drmHandlers/drmhandlers';
|
|
5
|
+
import { setupAccessibilityAttributes } from './a11y/setup';
|
|
6
|
+
import { getLocalStorage, setLocalStorage, setValuesBasedOnLocalStorage } from './localStorageHandlers/localStorageHandlers';
|
|
7
|
+
import { getAVType } from './avTypeHandlers/getAVType';
|
|
8
|
+
export class NpoPlayerServices {
|
|
9
|
+
getAVType(avType) {
|
|
10
|
+
return getAVType(avType);
|
|
11
|
+
}
|
|
12
|
+
keyboardHandler(playerContext, e) {
|
|
13
|
+
resolveKeyPress(playerContext, e);
|
|
14
|
+
}
|
|
15
|
+
convertFragmentToSegment(fragment) {
|
|
16
|
+
return convertFragmentToSegment(fragment);
|
|
17
|
+
}
|
|
18
|
+
segmentMarkersHandler(segment, title) {
|
|
19
|
+
return setSegmentMarkers(segment, title);
|
|
20
|
+
}
|
|
21
|
+
decideProfile(playerContext, preferredDRM = '') {
|
|
22
|
+
return DRMHandlers.decideProfile(playerContext, preferredDRM);
|
|
23
|
+
}
|
|
24
|
+
verifyDRM(playerContext, payload) {
|
|
25
|
+
return DRMHandlers.verifyDRM(playerContext, payload);
|
|
26
|
+
}
|
|
27
|
+
setStoredUserPrefs(key, value) {
|
|
28
|
+
return setLocalStorage(key, value);
|
|
29
|
+
}
|
|
30
|
+
getStoredUserPrefs() {
|
|
31
|
+
return getLocalStorage();
|
|
32
|
+
}
|
|
33
|
+
handleUserPrefs(playerContext) {
|
|
34
|
+
if (playerContext === undefined) {
|
|
35
|
+
console.error('playerContext is undefined');
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
38
|
+
return setValuesBasedOnLocalStorage(playerContext);
|
|
39
|
+
}
|
|
40
|
+
setAccessibilityAttributes(playerContext) {
|
|
41
|
+
if (playerContext === undefined) {
|
|
42
|
+
console.error('playerContext is undefined');
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
45
|
+
return setupAccessibilityAttributes(playerContext);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { PlayerAPI } from
|
|
2
|
-
import { UIManager } from
|
|
3
|
-
import { TimeLineMarker } from
|
|
1
|
+
import { PlayerAPI } from 'bitmovin-player';
|
|
2
|
+
import { UIManager } from 'bitmovin-player-ui';
|
|
3
|
+
import { TimeLineMarker } from 'types/interfaces';
|
|
4
4
|
export declare function updateLiveMarkers(timeLineMarkers: TimeLineMarker[], player: PlayerAPI, uiManager: UIManager, autoFillTimeLineMarkerDuration: boolean): void;
|
|
@@ -2,5 +2,5 @@ import { type PlayerAPI } from 'bitmovin-player';
|
|
|
2
2
|
import type NpoPlayer from '../../../npoplayer';
|
|
3
3
|
import { type StreamOptions } from 'types/interfaces';
|
|
4
4
|
export declare function handleStartOffset(player: PlayerAPI, offset?: number): void;
|
|
5
|
-
export declare function shiftToProgramStart(player: PlayerAPI |
|
|
6
|
-
export declare function handleLiveOffsetLogic(npoplayer: NpoPlayer, player: PlayerAPI |
|
|
5
|
+
export declare function shiftToProgramStart(player: PlayerAPI | undefined, timestamp?: number): void;
|
|
6
|
+
export declare function handleLiveOffsetLogic(npoplayer: NpoPlayer, player: PlayerAPI | undefined, options: StreamOptions): void;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { PlayerAPI, SourceConfig } from
|
|
1
|
+
import { PlayerAPI, SourceConfig } from 'bitmovin-player';
|
|
2
2
|
export declare function setupMediaSessionActionHandlers(player: PlayerAPI, sourceConfig: SourceConfig, _streamObject: any): void;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { type PlayerConfig } from
|
|
2
|
-
import NpoPlayer from
|
|
1
|
+
import { type PlayerConfig } from 'bitmovin-player';
|
|
2
|
+
import NpoPlayer from 'npoplayer';
|
|
3
3
|
export declare function processPlayerConfig(npoplayer: NpoPlayer, playerConfig: PlayerConfig): PlayerConfig;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
import { StreamObject, StreamOptions } from 'types/interfaces';
|
|
2
2
|
import { SourceConfig } from 'bitmovin-player';
|
|
3
|
-
|
|
3
|
+
import { NpoPlayerServices } from '../../../services/services';
|
|
4
|
+
export declare function processSourceConfig(NpoPlayerServices: NpoPlayerServices, _sourceConfig: SourceConfig | undefined, _streamObject: StreamObject, drm: string | undefined, streamOptions: StreamOptions, version: string, npoTagPartyId: string | undefined, npoPlayerServices: NpoPlayerServices): Promise<SourceConfig>;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import { PlayerAPI } from 'bitmovin-player';
|
|
2
|
-
export declare function removeReplayClass(player: PlayerAPI |
|
|
2
|
+
export declare function removeReplayClass(player: PlayerAPI | undefined): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
import '@testing-library/jest-dom';
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
export {
|
|
2
|
-
export {
|
|
3
|
-
export {
|
|
4
|
-
export {
|
|
5
|
-
export { processSourceConfig } from "./handlers/processsourceconfig";
|
|
1
|
+
export { handleStartOffset, handleLiveOffsetLogic, shiftToProgramStart } from './handlers/handleoffsets';
|
|
2
|
+
export { handlePlayerError } from './handlers/error';
|
|
3
|
+
export { processPlayerConfig } from './handlers/processplayerconfig';
|
|
4
|
+
export { processSourceConfig } from './handlers/processsourceconfig';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const supportedKeySystems: string[];
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { type NPOTag } from '@npotag/tag';
|
|
2
2
|
import { type InitialisationProps } from '@npotag/tag/dist/types/src/npoTag';
|
|
3
3
|
import type NpoPlayer from '../../../npoplayer';
|
|
4
|
-
export declare function initPlayerTracker(npoplayer: NpoPlayer, _npotag?: InitialisationProps |
|
|
4
|
+
export declare function initPlayerTracker(npoplayer: NpoPlayer, _npotag?: InitialisationProps | undefined, _npotaginstance?: NPOTag): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare function startPlayerTracker(playerInstance: any, duration: number, version: string, source: string |
|
|
1
|
+
export declare function startPlayerTracker(playerInstance: any, duration: number, version: string, source: string | undefined): void;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
interface ElementByQuery {
|
|
2
|
+
container: HTMLElement;
|
|
3
|
+
query: string;
|
|
4
|
+
}
|
|
5
|
+
interface RemoveClassFromElementByQuery extends ElementByQuery {
|
|
6
|
+
className: string;
|
|
7
|
+
}
|
|
8
|
+
export declare function getElementByQuery({ container, query }: ElementByQuery): Element | null;
|
|
9
|
+
export declare function removeClassFromElementByQuery(params: RemoveClassFromElementByQuery): void;
|
|
10
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function getModuleExport(module: unknown): unknown;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
interface StreamDurationInSecondsParams {
|
|
2
|
+
duration: string | number | undefined;
|
|
3
|
+
durationIsInMs?: boolean;
|
|
4
|
+
}
|
|
5
|
+
export declare function getStreamDurationInSeconds(params: StreamDurationInSecondsParams): number;
|
|
6
|
+
export declare function validatePrid(prid: string | undefined): string;
|
|
7
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function replaceSpecialCharacters(text: string): string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function convertMsToSeconds(ms: number): number;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function logVersion(version: string): void;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
import '@testing-library/jest-dom';
|
package/lib/src/npoplayer.d.ts
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
|
+
import { NpoPlayerServices } from './services/services';
|
|
1
2
|
import { type StreamTracker, type NPOTag } from '@npotag/tag';
|
|
2
3
|
import { type InitialisationProps } from '@npotag/tag/dist/types/src/npoTag';
|
|
3
4
|
import { type PlayerAPI, type PlayerConfig, type SourceConfig } from 'bitmovin-player';
|
|
4
5
|
import { UIManager } from 'bitmovin-player-ui';
|
|
5
6
|
import { LogEmitter } from './types/classes';
|
|
6
|
-
import { type DRMProfile, type ApiPayload, type NPOTagObject, type
|
|
7
|
-
export { type PlayerConfig, type InitialisationProps, type NPOTagObject, type StreamOptions, NpoPlayerUIVariants
|
|
7
|
+
import { type DRMProfile, type ApiPayload, type NPOTagObject, type StreamObject, type StreamOptions, type UIComponents, type TimeLineMarker, type LocalStorageData, type PlayerContext, type EventListeners, NpoPlayerUIVariants } from './types/interfaces';
|
|
8
|
+
export { type PlayerConfig, type InitialisationProps, type NPOTagObject, type StreamOptions, NpoPlayerUIVariants };
|
|
8
9
|
export default class NpoPlayer {
|
|
9
10
|
playerConfig: PlayerConfig;
|
|
10
11
|
sourceConfig: SourceConfig;
|
|
11
12
|
streamObject: StreamObject;
|
|
12
|
-
player: PlayerAPI |
|
|
13
|
-
uiManager: UIManager |
|
|
13
|
+
player: PlayerAPI | undefined;
|
|
14
|
+
uiManager: UIManager | undefined;
|
|
14
15
|
npoTag: NPOTagObject | undefined;
|
|
15
|
-
streamTracker: StreamTracker |
|
|
16
|
+
streamTracker: StreamTracker | undefined;
|
|
16
17
|
logEmitter: LogEmitter;
|
|
17
18
|
uiComponents: UIComponents;
|
|
18
|
-
fragment: Section | null;
|
|
19
19
|
container: HTMLElement;
|
|
20
20
|
streamOptions: StreamOptions;
|
|
21
21
|
jwt: string;
|
|
@@ -26,13 +26,17 @@ export default class NpoPlayer {
|
|
|
26
26
|
variant: NpoPlayerUIVariants;
|
|
27
27
|
isShowingPlayNextScreen: boolean;
|
|
28
28
|
canceledPlayNextScreen: boolean;
|
|
29
|
-
|
|
29
|
+
playerContext: PlayerContext | undefined;
|
|
30
|
+
npoplayerServices: NpoPlayerServices;
|
|
31
|
+
eventListeners: EventListeners | undefined;
|
|
32
|
+
mockNpoPlayer: any;
|
|
33
|
+
userPreferences: LocalStorageData;
|
|
34
|
+
constructor(_container: HTMLElement, _playerConfig: PlayerConfig, _npotag?: InitialisationProps | undefined, _npotaginstance?: NPOTag | undefined, _variant?: NpoPlayerUIVariants);
|
|
30
35
|
initPlayer(_container: HTMLElement, playerConfig: PlayerConfig, variant: NpoPlayerUIVariants): void;
|
|
31
36
|
loadStream(source: string, options?: StreamOptions): Promise<void>;
|
|
32
|
-
createUIManager(player: PlayerAPI, variant: NpoPlayerUIVariants): Promise<void>;
|
|
37
|
+
createUIManager(player: PlayerAPI, playerContext: PlayerContext, variant: NpoPlayerUIVariants): Promise<void>;
|
|
33
38
|
doError(input: any, status?: number): void;
|
|
34
|
-
|
|
35
|
-
play(): void;
|
|
39
|
+
play(): Promise<void>;
|
|
36
40
|
pause(): void;
|
|
37
41
|
setVolume(volume: number): void;
|
|
38
42
|
increaseVolume(): void;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,15 @@
|
|
|
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
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,5 @@
|
|
|
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;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { PlayerContext } from 'types/interfaces';
|
|
2
|
+
export declare const handleLiveStreamControls: (playerContext: PlayerContext) => void;
|
|
3
|
+
export declare function updateForwardButtonState(player: any): void;
|
|
4
|
+
export declare function toggleForwardButtons(forwardButtons: NodeListOf<Element>, timeShift: number): void;
|
|
5
|
+
export declare function disableForwardButton(button: Element): void;
|
|
6
|
+
export declare function enableForwardButton(button: Element): void;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { LocalStorageData, LocalStorageValues, PlayerContext } from 'types/interfaces';
|
|
2
|
+
export declare function setLocalStorage(key: LocalStorageValues, value: any): void;
|
|
3
|
+
export declare function getLocalStorage(): LocalStorageData;
|
|
4
|
+
export declare function setValuesBasedOnLocalStorage(playerContext: PlayerContext): void;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { PlayerAPI, PlayerEvent, PlayerEventCallback, SourceConfig, TimeMode, ViewMode } from 'bitmovin-player';
|
|
2
|
+
import { Technology } from 'types/interfaces';
|
|
3
|
+
export declare class NpoPlayerAPI {
|
|
4
|
+
playerAPI: PlayerAPI;
|
|
5
|
+
constructor(playerAPI: PlayerAPI);
|
|
6
|
+
load(sourceConfig: SourceConfig): Promise<void>;
|
|
7
|
+
play(): Promise<void>;
|
|
8
|
+
pause(): void;
|
|
9
|
+
mute(): void;
|
|
10
|
+
unmute(): void;
|
|
11
|
+
getVolume(): number;
|
|
12
|
+
setVolume(level: number): void;
|
|
13
|
+
setViewMode(viewMode: ViewMode): void;
|
|
14
|
+
getViewMode(): ViewMode;
|
|
15
|
+
areSubtitlesEnabled(): boolean;
|
|
16
|
+
enableSubtitles(): void;
|
|
17
|
+
isPaused(): boolean;
|
|
18
|
+
isMuted(): boolean;
|
|
19
|
+
getSupportedDRM(): Promise<string[]>;
|
|
20
|
+
getSupportedTech(): Technology[];
|
|
21
|
+
off(eventType: PlayerEvent, callback: PlayerEventCallback): void;
|
|
22
|
+
on(eventType: PlayerEvent, callback: PlayerEventCallback): void;
|
|
23
|
+
seek(time: number): void;
|
|
24
|
+
getContainer(): HTMLElement;
|
|
25
|
+
getNpoPlayerElement(): Element | null;
|
|
26
|
+
addClassToNpoPlayerElement(className: string): void | undefined;
|
|
27
|
+
removeClassFromNpoPlayerElement(className: string): void | undefined;
|
|
28
|
+
getCurrentTime(mode?: TimeMode | undefined): number;
|
|
29
|
+
getTimeShift(): number;
|
|
30
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|