@npo/player 1.25.0 → 1.27.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/playeractions/handlers/handleoffsets.js +9 -7
- package/lib/js/playeractions/handlers/handleoffsets.test.js +1 -1
- package/lib/js/playeractions/handlers/mediasessionactions.js +2 -2
- package/lib/js/playeractions/handlers/processplayerconfig.d.ts +1 -1
- package/lib/js/playeractions/handlers/processplayerconfig.js +4 -4
- package/lib/js/playeractions/handlers/processsourceconfig.d.ts +1 -0
- package/lib/js/playeractions/handlers/processsourceconfig.js +4 -5
- package/lib/js/playeractions/handlers/processsourceconfig.test.js +25 -0
- package/lib/js/playeractions/playeractions.d.ts +0 -1
- package/lib/js/playeractions/playeractions.js +0 -1
- package/lib/js/utilities/utilities.prid.d.ts +6 -0
- package/lib/js/utilities/utilities.prid.js +8 -0
- package/lib/js/utilities/utilities.prid.test.js +46 -0
- package/lib/lang/nl.json +1 -1
- package/lib/lang/subtitleLabels/nl.json +14 -0
- package/lib/npoplayer.d.ts +3 -4
- package/lib/npoplayer.js +66 -83
- package/lib/npoplayer.test.js +3 -3
- package/lib/package.json +2 -2
- package/lib/services/a11y/setup.js +2 -5
- package/lib/services/a11y/setup.test.js +2 -20
- package/lib/services/advertHandlers/discardAdBreak.js +6 -4
- package/lib/services/advertHandlers/discardAdBreak.test.js +31 -14
- package/lib/services/advertHandlers/handlePreRolls.js +19 -21
- package/lib/services/advertHandlers/handlePrerolls.test.js +66 -5
- package/lib/services/drmHandlers/decideprofile.js +8 -2
- package/lib/services/drmHandlers/decideprofile.test.js +5 -1
- package/lib/services/drmHandlers/verifydrm.js +7 -8
- package/lib/services/drmHandlers/verifydrm.test.js +32 -9
- package/lib/services/errors/errorBackground.test.js +48 -0
- package/lib/services/errors/errorHandler.d.ts +3 -0
- package/lib/services/errors/errorHandler.js +45 -0
- package/lib/services/errors/errorText.d.ts +2 -0
- package/lib/services/errors/errorText.js +59 -0
- package/lib/services/errors/errorText.test.js +66 -0
- package/lib/services/eventListenerHandlers/removeEventListeners.js +2 -2
- package/lib/services/eventListenerHandlers/removeEventListeners.test.js +9 -9
- package/lib/services/keyboardHandlers/resolvekeypress.js +21 -17
- package/lib/services/keyboardHandlers/resolvekeypress.test.js +1 -1
- package/lib/services/liveStreamHandlers/handleLiveStreamControls.js +2 -2
- package/lib/services/liveStreamHandlers/handleLiveStreamControls.test.js +2 -2
- package/lib/services/localStorageHandlers/localStorageHandlers.js +6 -3
- package/lib/services/localStorageHandlers/localStorageHandlers.test.js +2 -6
- package/lib/services/nicamHandlers/nicamhandler.d.ts +1 -2
- package/lib/services/nicamHandlers/nicamhandler.js +15 -18
- package/lib/services/nicamHandlers/nicamhandler.test.js +67 -9
- package/lib/services/npoPlayerAPI/contants.d.ts +20 -0
- package/lib/services/npoPlayerAPI/contants.js +6 -0
- package/lib/services/npoPlayerAPI/npoPlayerAPI.d.ts +6 -3
- package/lib/services/npoPlayerAPI/npoPlayerAPI.js +43 -26
- package/lib/services/npoPlayerAPI/npoPlayerAPI.test.js +11 -0
- package/lib/services/preferences/handlePreferences.d.ts +2 -0
- package/lib/services/preferences/handlePreferences.js +42 -0
- package/lib/services/preferences/handlePreferences.test.js +102 -0
- package/lib/services/segmentHandlers/addSegmentEventListeners.js +2 -2
- package/lib/services/segmentHandlers/addSegmentEventListeners.test.js +1 -1
- package/lib/services/services.d.ts +14 -4
- package/lib/services/services.js +49 -4
- package/lib/services/streamFetchHandler/fetchStream.d.ts +2 -0
- package/lib/services/streamFetchHandler/fetchStream.js +48 -0
- package/lib/services/streamFetchHandler/fetchstream.test.js +70 -0
- package/lib/services/streamoptionsHandlers/{steamOptionsHandler.js → streamOptionsHandler.js} +11 -11
- package/lib/services/streamoptionsHandlers/streamOptionsHandler.test.js +20 -20
- package/lib/services/trackingHandlers/eventBinding.d.ts +2 -0
- package/lib/{js/tracking/handlers/eventbinding.js → services/trackingHandlers/eventBinding.js} +16 -14
- package/lib/services/trackingHandlers/eventBinding.test.js +89 -0
- package/lib/services/trackingHandlers/eventLogging.d.ts +2 -0
- package/lib/{js/tracking/handlers/eventlogging.js → services/trackingHandlers/eventLogging.js} +18 -7
- package/lib/services/trackingHandlers/eventLogging.test.js +63 -0
- package/lib/services/trackingHandlers/index.d.ts +3 -0
- package/lib/services/trackingHandlers/index.js +3 -0
- package/lib/services/trackingHandlers/playerTrackerInit.d.ts +2 -0
- package/lib/{js/tracking/handlers/playertrackerinit.js → services/trackingHandlers/playerTrackerInit.js} +6 -3
- package/lib/services/trackingHandlers/playerTrackerInit.test.js +75 -0
- package/lib/services/trackingHandlers/playerTrackerStart.d.ts +2 -0
- package/lib/services/trackingHandlers/playerTrackerStart.js +25 -0
- package/lib/services/trackingHandlers/playerTrackerStart.test.js +59 -0
- package/lib/services/trackingHandlers/streamTrackerInit.d.ts +3 -0
- package/lib/services/trackingHandlers/streamTrackerInit.js +27 -0
- package/lib/services/trackingHandlers/streamTrackerInit.test.js +84 -0
- package/lib/services/uiHandlers/uiVisiblityHandler.d.ts +3 -0
- package/lib/services/uiHandlers/uiVisiblityHandler.js +26 -0
- package/lib/services/uiHandlers/uiVisiblityHandler.test.js +62 -0
- package/lib/services/verticalVideoHandlers/handleVerticalVideoControls.d.ts +2 -2
- package/lib/services/verticalVideoHandlers/handleVerticalVideoControls.js +4 -6
- package/lib/services/verticalVideoHandlers/handleVerticalVideoControls.test.js +4 -17
- package/lib/services/verticalVideoHandlers/handleVerticalVideoSettings.d.ts +2 -0
- package/lib/services/verticalVideoHandlers/handleVerticalVideoSettings.js +26 -0
- package/lib/services/verticalVideoHandlers/handleVerticalVideoSettings.test.d.ts +1 -0
- package/lib/services/verticalVideoHandlers/handleVerticalVideoSettings.test.js +82 -0
- package/lib/src/js/playeractions/handlers/processplayerconfig.d.ts +1 -1
- package/lib/src/js/playeractions/handlers/processsourceconfig.d.ts +1 -0
- package/lib/src/js/playeractions/handlers/processsourceconfig.test.d.ts +1 -0
- package/lib/src/js/playeractions/playeractions.d.ts +0 -1
- package/lib/src/js/utilities/utilities.prid.d.ts +6 -0
- package/lib/src/js/utilities/utilities.prid.test.d.ts +1 -0
- package/lib/src/npoplayer.d.ts +3 -4
- package/lib/src/services/errors/errorBackground.test.d.ts +1 -0
- package/lib/src/services/errors/errorHandler.d.ts +3 -0
- package/lib/src/services/errors/errorText.d.ts +2 -0
- package/lib/src/services/errors/errorText.test.d.ts +1 -0
- package/lib/src/services/nicamHandlers/nicamhandler.d.ts +1 -2
- package/lib/src/services/npoPlayerAPI/contants.d.ts +20 -0
- package/lib/src/services/npoPlayerAPI/npoPlayerAPI.d.ts +6 -3
- package/lib/src/services/preferences/handlePreferences.d.ts +2 -0
- package/lib/src/services/preferences/handlePreferences.test.d.ts +1 -0
- package/lib/src/services/services.d.ts +14 -4
- package/lib/src/services/streamFetchHandler/fetchStream.d.ts +2 -0
- package/lib/src/services/streamFetchHandler/fetchstream.test.d.ts +1 -0
- package/lib/src/services/trackingHandlers/eventBinding.d.ts +2 -0
- package/lib/src/services/trackingHandlers/eventBinding.test.d.ts +1 -0
- package/lib/src/services/trackingHandlers/eventLogging.d.ts +2 -0
- package/lib/src/services/trackingHandlers/eventLogging.test.d.ts +1 -0
- package/lib/src/services/trackingHandlers/index.d.ts +3 -0
- package/lib/src/services/trackingHandlers/playerTrackerInit.d.ts +2 -0
- package/lib/src/services/trackingHandlers/playerTrackerInit.test.d.ts +1 -0
- package/lib/src/services/trackingHandlers/playerTrackerStart.d.ts +2 -0
- package/lib/src/services/trackingHandlers/playerTrackerStart.test.d.ts +1 -0
- package/lib/src/services/trackingHandlers/streamTrackerInit.d.ts +3 -0
- package/lib/src/services/trackingHandlers/streamTrackerInit.test.d.ts +1 -0
- package/lib/src/services/uiHandlers/uiVisiblityHandler.d.ts +3 -0
- package/lib/src/services/uiHandlers/uiVisiblityHandler.test.d.ts +1 -0
- package/lib/src/services/verticalVideoHandlers/handleVerticalVideoControls.d.ts +2 -2
- package/lib/src/services/verticalVideoHandlers/handleVerticalVideoSettings.d.ts +2 -0
- package/lib/src/services/verticalVideoHandlers/handleVerticalVideoSettings.test.d.ts +1 -0
- package/lib/src/types/classes.d.ts +6 -0
- package/lib/src/types/interfaces.d.ts +39 -4
- package/lib/src/ui/components/adbutton.d.ts +1 -1
- package/lib/src/ui/components/adlabel.d.ts +1 -1
- package/lib/src/ui/components/buttons.d.ts +6 -16
- package/lib/src/ui/components/controlbar.d.ts +2 -2
- package/lib/src/ui/components/ctabar.d.ts +1 -1
- package/lib/src/ui/components/playnext.d.ts +1 -4
- package/lib/src/ui/components/seekbar.d.ts +2 -1
- package/lib/src/ui/components/titlebar.d.ts +1 -1
- package/lib/src/ui/components/verticalvideo/controlbar.d.ts +3 -3
- package/lib/src/ui/components/verticalvideo/settingspanel.d.ts +2 -0
- package/lib/src/ui/handlers/playnextscreen.test.d.ts +1 -0
- package/lib/src/ui/uicontainer.test.d.ts +1 -0
- package/lib/tests/mocks/mockLogEmitter.d.ts +2 -0
- package/lib/tests/mocks/mockLogEmitter.js +20 -0
- package/lib/tests/mocks/mockNpoplayer.js +2 -3
- package/lib/tests/mocks/mockStreamObject.d.ts +2 -0
- package/lib/tests/mocks/mockStreamObject.js +21 -0
- package/lib/tests/mocks/playerContextMock.d.ts +6 -3
- package/lib/tests/mocks/playerContextMock.js +12 -6
- package/lib/types/classes.d.ts +6 -0
- package/lib/types/classes.js +12 -0
- package/lib/types/interfaces.d.ts +39 -4
- package/lib/types/interfaces.js +1 -0
- package/lib/ui/components/adbutton.d.ts +1 -1
- package/lib/ui/components/adbutton.js +3 -3
- package/lib/ui/components/adlabel.d.ts +1 -1
- package/lib/ui/components/adlabel.js +3 -3
- package/lib/ui/components/audio/controlbar.js +2 -1
- package/lib/ui/components/buttons.d.ts +6 -16
- package/lib/ui/components/buttons.js +27 -10
- package/lib/ui/components/controlbar.d.ts +2 -2
- package/lib/ui/components/controlbar.js +21 -38
- package/lib/ui/components/ctabar.d.ts +1 -1
- package/lib/ui/components/ctabar.js +4 -4
- package/lib/ui/components/nativemobile/topbar.js +2 -2
- package/lib/ui/components/playnext.d.ts +1 -4
- package/lib/ui/components/playnext.js +3 -3
- package/lib/ui/components/seekbar.d.ts +2 -1
- package/lib/ui/components/seekbar.js +5 -3
- package/lib/ui/components/settingspanel.js +7 -9
- package/lib/ui/components/titlebar.d.ts +1 -1
- package/lib/ui/components/titlebar.js +2 -2
- package/lib/ui/components/topbar.js +6 -20
- package/lib/ui/components/verticalvideo/controlbar.d.ts +3 -3
- package/lib/ui/components/verticalvideo/controlbar.js +15 -12
- package/lib/ui/components/verticalvideo/settingspanel.d.ts +2 -0
- package/lib/ui/components/verticalvideo/settingspanel.js +21 -0
- package/lib/ui/handlers/domhandlers.test.js +6 -26
- package/lib/ui/handlers/playnextscreen.test.d.ts +1 -0
- package/lib/ui/nativemobileuifactory.js +2 -2
- package/lib/ui/nativemobileuifactory.test.js +2 -1
- package/lib/ui/uicontainer.js +14 -30
- package/lib/ui/uicontainer.test.d.ts +1 -0
- package/lib/ui/uicontainer.test.js +83 -0
- package/package.json +2 -2
- package/src/style/components/_advert.scss +3 -12
- package/src/style/components/_buffering.scss +14 -8
- package/src/style/components/_error.scss +44 -1
- package/src/style/components/_hugeplaybacktogglebutton.scss +1 -0
- package/src/style/components/_metadata.scss +13 -12
- package/src/style/components/_nicam.scss +16 -10
- package/src/style/components/_playnext.scss +1 -1
- package/src/style/components/_replay.scss +1 -6
- package/src/style/components/_settingspanel.scss +121 -95
- package/src/style/components/audio/_errors.scss +1 -1
- package/src/style/components/audio/_metadata.scss +14 -8
- package/src/style/components/audio/_playbutton.scss +1 -0
- package/src/style/components/audio/_topbar.scss +10 -2
- package/src/style/components/audio/_volumeslider.scss +3 -3
- package/src/style/components/vertical-video/_bottombar.scss +42 -1
- package/src/style/components/vertical-video/_hugeplaybacktogglebutton.scss +24 -4
- package/src/style/components/vertical-video/_settingspanel.scss +21 -4
- package/src/style/components/vertical-video/_topbar.scss +47 -6
- package/src/style/npoplayer.css +108 -70
- package/src/style/npoplayer.scss +4 -7
- package/src/style/variants/_player-base.scss +14 -2
- package/src/style/variants/_player-large.scss +5 -1
- package/src/style/variants/_player-small.scss +26 -9
- package/src/style/vars/_fonts.scss +13 -7
- package/src/style/vars/_z-index.scss +1 -0
- package/lib/js/api/getstreamobject.d.ts +0 -3
- package/lib/js/api/getstreamobject.js +0 -38
- package/lib/js/api/getstreamobject.test.js +0 -48
- package/lib/js/playeractions/customerrors.test.js +0 -51
- package/lib/js/playeractions/handlers/customerrors.d.ts +0 -50
- package/lib/js/playeractions/handlers/customerrors.js +0 -56
- package/lib/js/playeractions/handlers/error.d.ts +0 -3
- package/lib/js/playeractions/handlers/error.js +0 -14
- package/lib/js/playeractions/handlers/error.test.js +0 -44
- package/lib/js/tracking/handlers/eventbinding.d.ts +0 -3
- package/lib/js/tracking/handlers/eventlogging.d.ts +0 -2
- package/lib/js/tracking/handlers/eventlogging.test.js +0 -46
- package/lib/js/tracking/handlers/playertrackerinit.d.ts +0 -4
- package/lib/js/tracking/handlers/playertrackerinit.test.js +0 -74
- package/lib/js/tracking/handlers/playertrackerstart.d.ts +0 -1
- package/lib/js/tracking/handlers/playertrackerstart.js +0 -25
- package/lib/js/tracking/playertracker.d.ts +0 -4
- package/lib/js/tracking/playertracker.js +0 -4
- package/lib/src/js/api/getstreamobject.d.ts +0 -3
- package/lib/src/js/playeractions/handlers/customerrors.d.ts +0 -50
- package/lib/src/js/playeractions/handlers/error.d.ts +0 -3
- package/lib/src/js/tracking/handlers/eventbinding.d.ts +0 -3
- package/lib/src/js/tracking/handlers/eventlogging.d.ts +0 -2
- package/lib/src/js/tracking/handlers/playertrackerinit.d.ts +0 -4
- package/lib/src/js/tracking/handlers/playertrackerstart.d.ts +0 -1
- package/lib/src/js/tracking/playertracker.d.ts +0 -4
- /package/lib/js/{api/getstreamobject.test.d.ts → playeractions/handlers/processsourceconfig.test.d.ts} +0 -0
- /package/lib/js/{playeractions/customerrors.test.d.ts → utilities/utilities.prid.test.d.ts} +0 -0
- /package/lib/{js/playeractions/handlers/error.test.d.ts → services/errors/errorBackground.test.d.ts} +0 -0
- /package/lib/{js/tracking/handlers/eventlogging.test.d.ts → services/errors/errorText.test.d.ts} +0 -0
- /package/lib/{js/tracking/handlers/playertrackerinit.test.d.ts → services/preferences/handlePreferences.test.d.ts} +0 -0
- /package/lib/{src/js/api/getstreamobject.test.d.ts → services/streamFetchHandler/fetchstream.test.d.ts} +0 -0
- /package/lib/services/streamoptionsHandlers/{steamOptionsHandler.d.ts → streamOptionsHandler.d.ts} +0 -0
- /package/lib/{src/js/playeractions/customerrors.test.d.ts → services/trackingHandlers/eventBinding.test.d.ts} +0 -0
- /package/lib/{src/js/playeractions/handlers/error.test.d.ts → services/trackingHandlers/eventLogging.test.d.ts} +0 -0
- /package/lib/{src/js/tracking/handlers/eventlogging.test.d.ts → services/trackingHandlers/playerTrackerInit.test.d.ts} +0 -0
- /package/lib/{src/js/tracking/handlers/playertrackerinit.test.d.ts → services/trackingHandlers/playerTrackerStart.test.d.ts} +0 -0
- /package/lib/{src/ui/handlers/playnextstreen.test.d.ts → services/trackingHandlers/streamTrackerInit.test.d.ts} +0 -0
- /package/lib/{ui/handlers/playnextstreen.test.d.ts → services/uiHandlers/uiVisiblityHandler.test.d.ts} +0 -0
- /package/lib/src/services/streamoptionsHandlers/{steamOptionsHandler.d.ts → streamOptionsHandler.d.ts} +0 -0
- /package/lib/ui/handlers/{playnextstreen.test.js → playnextscreen.test.js} +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { PlayerContext
|
|
2
|
-
export declare const handleVerticalVideoControls: (playerContext: PlayerContext
|
|
1
|
+
import { PlayerContext } from '../../types/interfaces';
|
|
2
|
+
export declare const handleVerticalVideoControls: (playerContext: PlayerContext) => void;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -1,4 +1,10 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
import { EventEmitter } from 'events';
|
|
3
|
+
type AllowedEvents = 'logControlsVisibilityChange' | 'logError' | 'logEvent';
|
|
3
4
|
export declare class LogEmitter extends EventEmitter {
|
|
5
|
+
emit(event: AllowedEvents, ...args: any[]): boolean;
|
|
6
|
+
on(event: AllowedEvents, listener: (...args: any[]) => void): this;
|
|
7
|
+
once(event: AllowedEvents, listener: (...args: any[]) => void): this;
|
|
8
|
+
off(event: AllowedEvents, listener: (...args: any[]) => void): this;
|
|
4
9
|
}
|
|
10
|
+
export {};
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { type ErrorMessageOverlay, type Label, ControlBar, SettingsPanelItem, Button, SeekBar, CastToggleButton, SettingsPanel } from 'bitmovin-player-ui';
|
|
1
|
+
import { type ErrorMessageOverlay, type Label, ControlBar, SettingsPanelItem, Button, SeekBar, CastToggleButton, SettingsPanel, SettingsToggleButton } from 'bitmovin-player-ui';
|
|
2
2
|
import { type NPOTag, type PageTracker } from '@npotag/tag';
|
|
3
3
|
import { ButtonConfig } from 'bitmovin-player-ui/dist/js/framework/components/button';
|
|
4
4
|
import NpoPlayer from '../npoplayer';
|
|
5
5
|
import { NpoPlayerAPI } from '../services/npoPlayerAPI/npoPlayerAPI';
|
|
6
6
|
import { NpoPlayerEventCallback } from './events';
|
|
7
|
-
import { GoogleCastRemoteControlConfig,
|
|
7
|
+
import { AnalyticsConfig, DRMConfig, GoogleCastRemoteControlConfig, ProgressiveSourceConfig, SourceConfigOptions, SourceLabelingStreamTypeConfig, SubtitleTrack, ThumbnailTrack, VRConfig } from 'bitmovin-player';
|
|
8
8
|
export { Technology } from 'bitmovin-player';
|
|
9
9
|
export interface Profile {
|
|
10
10
|
profileName: string;
|
|
@@ -31,7 +31,7 @@ export interface StreamObject {
|
|
|
31
31
|
}
|
|
32
32
|
export interface PlayerContext {
|
|
33
33
|
player: NpoPlayerAPI;
|
|
34
|
-
|
|
34
|
+
npoPlayer: NpoPlayer;
|
|
35
35
|
}
|
|
36
36
|
export interface ApiPayload {
|
|
37
37
|
baseURL: string;
|
|
@@ -95,6 +95,26 @@ interface FragmentSection {
|
|
|
95
95
|
export interface Fragment {
|
|
96
96
|
sections: FragmentSection[];
|
|
97
97
|
}
|
|
98
|
+
export interface SourceConfig {
|
|
99
|
+
dash?: string;
|
|
100
|
+
hls?: string;
|
|
101
|
+
progressive?: string | ProgressiveSourceConfig[];
|
|
102
|
+
smooth?: string;
|
|
103
|
+
whep?: string;
|
|
104
|
+
poster?: string;
|
|
105
|
+
drm?: DRMConfig;
|
|
106
|
+
options?: SourceConfigOptions;
|
|
107
|
+
subtitleTracks?: SubtitleTrack[];
|
|
108
|
+
thumbnailTrack?: ThumbnailTrack;
|
|
109
|
+
vr?: VRConfig;
|
|
110
|
+
title?: string;
|
|
111
|
+
description?: string;
|
|
112
|
+
labeling?: SourceLabelingStreamTypeConfig;
|
|
113
|
+
analytics?: AnalyticsConfig;
|
|
114
|
+
metadata?: {
|
|
115
|
+
[key: string]: string;
|
|
116
|
+
};
|
|
117
|
+
}
|
|
98
118
|
export interface StreamOptions {
|
|
99
119
|
sourceConfig?: SourceConfig;
|
|
100
120
|
fragments?: Fragment;
|
|
@@ -112,6 +132,8 @@ export interface StreamOptions {
|
|
|
112
132
|
customFallbackPoster?: string;
|
|
113
133
|
autoFillTimeLineMarkerDuration?: boolean;
|
|
114
134
|
autoplay?: boolean;
|
|
135
|
+
npoTagPageTracker?: PageTracker;
|
|
136
|
+
retryCallback?: () => void;
|
|
115
137
|
}
|
|
116
138
|
export interface UIComponents {
|
|
117
139
|
errorMessageOverlay?: ErrorMessageOverlay;
|
|
@@ -131,6 +153,8 @@ export interface UIComponents {
|
|
|
131
153
|
seekBar?: SeekBar | undefined;
|
|
132
154
|
chromeCastButton?: CastToggleButton | undefined;
|
|
133
155
|
settingsPanels?: SettingsPanel[] | undefined;
|
|
156
|
+
settingsPanel?: SettingsPanel | undefined;
|
|
157
|
+
settingsToggleButton?: SettingsToggleButton | undefined;
|
|
134
158
|
}
|
|
135
159
|
export interface CustomMessageHandlerInterface {
|
|
136
160
|
defaultActionRequired?: boolean;
|
|
@@ -197,7 +221,18 @@ export type TimeLineMarker = {
|
|
|
197
221
|
export declare enum LocalStorageValues {
|
|
198
222
|
IS_MUTED = "ismuted",
|
|
199
223
|
VOLUME = "volume",
|
|
200
|
-
SUBTITLES_ENABLED = "subtitles_enabled"
|
|
224
|
+
SUBTITLES_ENABLED = "subtitles_enabled",
|
|
225
|
+
SUBTITLES_LANGUAGE = "subtitles_language"
|
|
201
226
|
}
|
|
202
227
|
export type LocalStorageData = Partial<Record<LocalStorageValues, string | number>>;
|
|
203
228
|
export type NPOGoogleCastRemoteControlConfig = GoogleCastRemoteControlConfig;
|
|
229
|
+
export interface PlayerTrackerParams {
|
|
230
|
+
playerContext: PlayerContext;
|
|
231
|
+
duration: number | undefined;
|
|
232
|
+
source: string | undefined;
|
|
233
|
+
}
|
|
234
|
+
export interface LogEventParams {
|
|
235
|
+
playerContext: PlayerContext;
|
|
236
|
+
event: string;
|
|
237
|
+
data?: any;
|
|
238
|
+
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Button } from 'bitmovin-player-ui';
|
|
2
2
|
import type NpoPlayer from '../../npoplayer';
|
|
3
|
-
export declare function createAdButton(
|
|
3
|
+
export declare function createAdButton(npoPlayer: NpoPlayer): Button<{
|
|
4
4
|
cssClass: string;
|
|
5
5
|
text: string;
|
|
6
6
|
hidden: true;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Label } from 'bitmovin-player-ui';
|
|
2
2
|
import type NpoPlayer from '../../npoplayer';
|
|
3
|
-
export declare function createAdLabel(
|
|
3
|
+
export declare function createAdLabel(npoPlayer: NpoPlayer): Label<{
|
|
4
4
|
text: string;
|
|
5
5
|
cssClass: string;
|
|
6
6
|
hidden: true;
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { type PlayerAPI } from 'bitmovin-player';
|
|
2
|
-
import { Button, ControlBar } from 'bitmovin-player-ui';
|
|
2
|
+
import { Button, ControlBar, CastToggleButton } from 'bitmovin-player-ui';
|
|
3
3
|
import type NpoPlayer from '../../npoplayer';
|
|
4
4
|
import { PlayerContext } from '../../types/interfaces';
|
|
5
|
+
import { NpoPlayerAPI } from '../../services/npoPlayerAPI/npoPlayerAPI';
|
|
5
6
|
export declare function createMiddleButtons(playerContext: PlayerContext): ControlBar;
|
|
6
7
|
export declare function createRewindButton(playerContext: PlayerContext): Button<{
|
|
7
8
|
cssClass: string;
|
|
@@ -11,35 +12,24 @@ export declare function createForwardButton(playerContext: PlayerContext): Butto
|
|
|
11
12
|
cssClass: string;
|
|
12
13
|
ariaLabel: string;
|
|
13
14
|
}>;
|
|
14
|
-
export declare function createPlayNextButton(player: PlayerAPI,
|
|
15
|
+
export declare function createPlayNextButton(player: PlayerAPI, npoPlayer: NpoPlayer): Button<{
|
|
15
16
|
cssClass: string;
|
|
16
|
-
text: string;
|
|
17
17
|
ariaLabel: string;
|
|
18
|
-
hidden: false;
|
|
19
|
-
acceptsTouchWithUiHidden: true;
|
|
20
18
|
}>;
|
|
21
|
-
export declare function createCancelPlayNextButton(player: PlayerAPI,
|
|
19
|
+
export declare function createCancelPlayNextButton(player: PlayerAPI, npoPlayer: NpoPlayer): Button<{
|
|
22
20
|
cssClass: string;
|
|
23
|
-
text: string;
|
|
24
21
|
ariaLabel: string;
|
|
25
|
-
hidden: false;
|
|
26
|
-
acceptsTouchWithUiHidden: true;
|
|
27
22
|
}>;
|
|
28
23
|
export declare function createskipIntroButton(player: PlayerAPI): Button<{
|
|
29
24
|
cssClass: string;
|
|
30
|
-
text: string;
|
|
31
25
|
ariaLabel: string;
|
|
32
|
-
hidden: true;
|
|
33
26
|
}>;
|
|
34
27
|
export declare function createGoBackLiveButton(player: PlayerAPI): Button<{
|
|
35
28
|
cssClass: string;
|
|
36
|
-
text: string;
|
|
37
29
|
ariaLabel: string;
|
|
38
|
-
hidden: true;
|
|
39
30
|
}>;
|
|
40
|
-
export declare function createWatchFromStartButton(player: PlayerAPI,
|
|
31
|
+
export declare function createWatchFromStartButton(player: PlayerAPI, npoPlayer: NpoPlayer): Button<{
|
|
41
32
|
cssClass: string;
|
|
42
|
-
text: string;
|
|
43
33
|
ariaLabel: string;
|
|
44
|
-
hidden: true;
|
|
45
34
|
}>;
|
|
35
|
+
export declare function createChromecastButton(player: NpoPlayerAPI, npoPlayer: NpoPlayer): CastToggleButton;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { ControlBar } from 'bitmovin-player-ui';
|
|
2
|
-
import { PlayerContext } from '../../types/interfaces';
|
|
3
|
-
export declare function createControlBar(playerContext: PlayerContext): ControlBar;
|
|
2
|
+
import { NpoPlayerUIVariants, PlayerContext } from '../../types/interfaces';
|
|
3
|
+
export declare function createControlBar(playerContext: PlayerContext, variant: NpoPlayerUIVariants): ControlBar;
|
|
@@ -4,7 +4,7 @@ import { type PlayerAPI } from 'bitmovin-player';
|
|
|
4
4
|
import { ButtonConfig } from 'bitmovin-player-ui/dist/js/framework/components/button';
|
|
5
5
|
import { LabelConfig } from 'bitmovin-player-ui/dist/js/framework/components/label';
|
|
6
6
|
import { NpoPlayerUIVariants } from '../../types/interfaces';
|
|
7
|
-
export declare function createCTABar(player: PlayerAPI,
|
|
7
|
+
export declare function createCTABar(player: PlayerAPI, npoPlayer: NpoPlayer, variant: NpoPlayerUIVariants): Container<{
|
|
8
8
|
components: (Button<ButtonConfig> | Label<LabelConfig>)[];
|
|
9
9
|
cssClasses: string[];
|
|
10
10
|
}>;
|
|
@@ -1,13 +1,10 @@
|
|
|
1
1
|
import { Container } from 'bitmovin-player-ui';
|
|
2
2
|
import { type PlayerAPI } from 'bitmovin-player';
|
|
3
3
|
import type NpoPlayer from '../../npoplayer';
|
|
4
|
-
export declare function createPlayNextScreen(player: PlayerAPI,
|
|
4
|
+
export declare function createPlayNextScreen(player: PlayerAPI, npoPlayer: NpoPlayer): Container<{
|
|
5
5
|
components: import("bitmovin-player-ui").Button<{
|
|
6
6
|
cssClass: string;
|
|
7
|
-
text: string;
|
|
8
7
|
ariaLabel: string;
|
|
9
|
-
hidden: false;
|
|
10
|
-
acceptsTouchWithUiHidden: true;
|
|
11
8
|
}>[];
|
|
12
9
|
cssClasses: string[];
|
|
13
10
|
}>;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Container, PlaybackTimeLabel, SeekBar } from 'bitmovin-player-ui';
|
|
2
2
|
import type NpoPlayer from '../../npoplayer';
|
|
3
|
-
|
|
3
|
+
import { NpoPlayerUIVariants } from '../../npoplayer';
|
|
4
|
+
export declare function createSeekBar(npoPlayer: NpoPlayer, variant: NpoPlayerUIVariants): Container<{
|
|
4
5
|
components: (SeekBar | PlaybackTimeLabel)[];
|
|
5
6
|
cssClasses: string[];
|
|
6
7
|
}>;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { ControlBar } from 'bitmovin-player-ui';
|
|
2
|
-
import { PlayerContext } from 'types/interfaces';
|
|
3
|
-
export declare function createVerticalVideoControlBar(playerContext: PlayerContext): ControlBar;
|
|
1
|
+
import { ControlBar, SettingsPanel } from 'bitmovin-player-ui';
|
|
2
|
+
import { PlayerContext } from '../../../types/interfaces';
|
|
3
|
+
export declare function createVerticalVideoControlBar(playerContext: PlayerContext, settingsPanel: SettingsPanel): ControlBar;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import '@testing-library/jest-dom';
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export const createLogEmitterMock = () => {
|
|
2
|
+
const logEmitterMock = {
|
|
3
|
+
emit: jest.fn(),
|
|
4
|
+
on: jest.fn(),
|
|
5
|
+
once: jest.fn(),
|
|
6
|
+
off: jest.fn(),
|
|
7
|
+
addListener: jest.fn(),
|
|
8
|
+
removeListener: jest.fn(),
|
|
9
|
+
removeAllListeners: jest.fn(),
|
|
10
|
+
listeners: jest.fn(),
|
|
11
|
+
listenerCount: jest.fn(),
|
|
12
|
+
rawListeners: jest.fn(),
|
|
13
|
+
eventNames: jest.fn(),
|
|
14
|
+
setMaxListeners: jest.fn(),
|
|
15
|
+
getMaxListeners: jest.fn(),
|
|
16
|
+
prependListener: jest.fn(),
|
|
17
|
+
prependOnceListener: jest.fn()
|
|
18
|
+
};
|
|
19
|
+
return logEmitterMock;
|
|
20
|
+
};
|
|
@@ -40,7 +40,7 @@ export const mockNpoPlayer = {
|
|
|
40
40
|
container: document.createElement('div'),
|
|
41
41
|
initPlayer: jest.fn(),
|
|
42
42
|
loadStream: jest.fn(),
|
|
43
|
-
|
|
43
|
+
keydownHandler: jest.fn(),
|
|
44
44
|
player: {
|
|
45
45
|
getCurrentTime: jest.fn().mockReturnValue(10)
|
|
46
46
|
},
|
|
@@ -68,7 +68,6 @@ export const mockNpoPlayer = {
|
|
|
68
68
|
variant: '',
|
|
69
69
|
playerContext: {},
|
|
70
70
|
isShowingPlayNextScreen: false,
|
|
71
|
-
userPreferences: {},
|
|
72
71
|
eventListeners: undefined,
|
|
73
72
|
setVolume: function (volume) {
|
|
74
73
|
jest.fn();
|
|
@@ -118,6 +117,6 @@ export const mockNpoPlayer = {
|
|
|
118
117
|
updateMarkers: function () {
|
|
119
118
|
jest.fn();
|
|
120
119
|
},
|
|
121
|
-
|
|
120
|
+
npoPlayerServices: new NpoPlayerServices(),
|
|
122
121
|
mockNpoPlayer: undefined
|
|
123
122
|
};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export const mockStreamObject = {
|
|
2
|
+
stream: {
|
|
3
|
+
isLiveStream: false,
|
|
4
|
+
hasDvrWindow: true,
|
|
5
|
+
avType: '',
|
|
6
|
+
drmType: '',
|
|
7
|
+
streamProfile: '',
|
|
8
|
+
sourceProfile: '',
|
|
9
|
+
streamURL: ''
|
|
10
|
+
},
|
|
11
|
+
metadata: {
|
|
12
|
+
description: '',
|
|
13
|
+
title: ''
|
|
14
|
+
},
|
|
15
|
+
assets: {
|
|
16
|
+
scrubbingThumbnail: '',
|
|
17
|
+
subtitles: undefined,
|
|
18
|
+
preroll: ''
|
|
19
|
+
},
|
|
20
|
+
user: { type: 'anonymous' }
|
|
21
|
+
};
|
|
@@ -15,7 +15,9 @@ export declare const createMockNpoPlayer: (overrides?: {}) => {
|
|
|
15
15
|
};
|
|
16
16
|
uiComponents: {};
|
|
17
17
|
container: HTMLDivElement;
|
|
18
|
-
streamOptions: {
|
|
18
|
+
streamOptions: {
|
|
19
|
+
enableSubtitles: boolean;
|
|
20
|
+
};
|
|
19
21
|
jwt: string;
|
|
20
22
|
apiPayload: {
|
|
21
23
|
baseURL: string;
|
|
@@ -32,17 +34,18 @@ export declare const createMockNpoPlayer: (overrides?: {}) => {
|
|
|
32
34
|
isShowingPlayNextScreen: boolean;
|
|
33
35
|
canceledPlayNextScreen: boolean;
|
|
34
36
|
playerContext: undefined;
|
|
35
|
-
|
|
37
|
+
npoPlayerServices: {
|
|
36
38
|
getStoredUserPrefs: jest.Mock<any, any, any>;
|
|
39
|
+
setStoredUserPrefs: jest.Mock<any, any, any>;
|
|
37
40
|
handleUserPrefs: jest.Mock<any, any, any>;
|
|
38
41
|
setAccessibilityAttributes: jest.Mock<any, any, any>;
|
|
39
42
|
keyboardHandler: jest.Mock<any, any, any>;
|
|
40
43
|
decideProfile: jest.Mock<any, any, any>;
|
|
41
44
|
verifyDRM: jest.Mock<any, any, any>;
|
|
45
|
+
handleError: jest.Mock<any, any, any>;
|
|
42
46
|
};
|
|
43
47
|
eventListeners: undefined;
|
|
44
48
|
mockNpoPlayer: undefined;
|
|
45
|
-
userPreferences: {};
|
|
46
49
|
initPlayer: jest.Mock<any, any, any>;
|
|
47
50
|
loadStream: jest.Mock<any, any, any>;
|
|
48
51
|
doError: jest.Mock<any, any, any>;
|
|
@@ -7,6 +7,7 @@ const setVolume = jest.fn((level) => {
|
|
|
7
7
|
export const createMockNpoPlayerAPI = (overrides = {}) => ({
|
|
8
8
|
playerAPI: mockPlayerAPI,
|
|
9
9
|
load: jest.fn(),
|
|
10
|
+
unload: jest.fn(),
|
|
10
11
|
play: jest.fn(),
|
|
11
12
|
pause: jest.fn(),
|
|
12
13
|
mute: jest.fn(),
|
|
@@ -24,6 +25,7 @@ export const createMockNpoPlayerAPI = (overrides = {}) => ({
|
|
|
24
25
|
setViewMode: jest.fn(),
|
|
25
26
|
getViewMode: jest.fn(),
|
|
26
27
|
areSubtitlesEnabled: jest.fn().mockReturnValue(false),
|
|
28
|
+
getCurrentSubtitle: jest.fn().mockReturnValue('nl'),
|
|
27
29
|
enableSubtitles: jest.fn(),
|
|
28
30
|
isPaused: jest.fn().mockReturnValue(false),
|
|
29
31
|
isMuted: jest.fn().mockReturnValue(false),
|
|
@@ -33,6 +35,7 @@ export const createMockNpoPlayerAPI = (overrides = {}) => ({
|
|
|
33
35
|
off: jest.fn(),
|
|
34
36
|
on: jest.fn(),
|
|
35
37
|
isCastAvailable: jest.fn(),
|
|
38
|
+
isCasting: jest.fn().mockReturnValue(false),
|
|
36
39
|
seek: jest.fn(),
|
|
37
40
|
timeShift: jest.fn(),
|
|
38
41
|
getContainer: jest.fn(),
|
|
@@ -45,9 +48,9 @@ export const createMockNpoPlayerAPI = (overrides = {}) => ({
|
|
|
45
48
|
getTimeShift: jest.fn().mockReturnValue(0),
|
|
46
49
|
scheduleAds: jest.fn().mockResolvedValue([]),
|
|
47
50
|
getActiveAdBreak: jest.fn().mockReturnValue(undefined),
|
|
48
|
-
discardAdBreak: jest.fn(),
|
|
49
51
|
getConfig: jest.fn().mockReturnValue({}),
|
|
50
52
|
createUIManager: jest.fn(),
|
|
53
|
+
handleErrorRetry: jest.fn(),
|
|
51
54
|
...overrides
|
|
52
55
|
});
|
|
53
56
|
export const createMockNpoPlayer = (overrides = {}) => ({
|
|
@@ -69,7 +72,9 @@ export const createMockNpoPlayer = (overrides = {}) => ({
|
|
|
69
72
|
logEmitter: { emit: jest.fn() },
|
|
70
73
|
uiComponents: {},
|
|
71
74
|
container: document.createElement('div'),
|
|
72
|
-
streamOptions: {
|
|
75
|
+
streamOptions: {
|
|
76
|
+
enableSubtitles: false
|
|
77
|
+
},
|
|
73
78
|
jwt: '',
|
|
74
79
|
apiPayload: { baseURL: '', jwt: '', data: {} },
|
|
75
80
|
adBreakActive: false,
|
|
@@ -79,17 +84,18 @@ export const createMockNpoPlayer = (overrides = {}) => ({
|
|
|
79
84
|
isShowingPlayNextScreen: false,
|
|
80
85
|
canceledPlayNextScreen: false,
|
|
81
86
|
playerContext: undefined,
|
|
82
|
-
|
|
87
|
+
npoPlayerServices: {
|
|
83
88
|
getStoredUserPrefs: jest.fn(),
|
|
89
|
+
setStoredUserPrefs: jest.fn(),
|
|
84
90
|
handleUserPrefs: jest.fn(),
|
|
85
91
|
setAccessibilityAttributes: jest.fn(),
|
|
86
92
|
keyboardHandler: jest.fn(),
|
|
87
93
|
decideProfile: jest.fn(),
|
|
88
|
-
verifyDRM: jest.fn()
|
|
94
|
+
verifyDRM: jest.fn(),
|
|
95
|
+
handleError: jest.fn()
|
|
89
96
|
},
|
|
90
97
|
eventListeners: undefined,
|
|
91
98
|
mockNpoPlayer: undefined,
|
|
92
|
-
userPreferences: {},
|
|
93
99
|
initPlayer: jest.fn(),
|
|
94
100
|
loadStream: jest.fn(),
|
|
95
101
|
doError: jest.fn(),
|
|
@@ -113,7 +119,7 @@ export const createMockNpoPlayer = (overrides = {}) => ({
|
|
|
113
119
|
});
|
|
114
120
|
export const createPlayerContextMock = (overrides = {}) => ({
|
|
115
121
|
player: createMockNpoPlayerAPI(),
|
|
116
|
-
|
|
122
|
+
npoPlayer: createMockNpoPlayer(),
|
|
117
123
|
...overrides
|
|
118
124
|
});
|
|
119
125
|
export default createPlayerContextMock;
|
package/lib/types/classes.d.ts
CHANGED
|
@@ -1,4 +1,10 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
import { EventEmitter } from 'events';
|
|
3
|
+
type AllowedEvents = 'logControlsVisibilityChange' | 'logError' | 'logEvent';
|
|
3
4
|
export declare class LogEmitter extends EventEmitter {
|
|
5
|
+
emit(event: AllowedEvents, ...args: any[]): boolean;
|
|
6
|
+
on(event: AllowedEvents, listener: (...args: any[]) => void): this;
|
|
7
|
+
once(event: AllowedEvents, listener: (...args: any[]) => void): this;
|
|
8
|
+
off(event: AllowedEvents, listener: (...args: any[]) => void): this;
|
|
4
9
|
}
|
|
10
|
+
export {};
|
package/lib/types/classes.js
CHANGED
|
@@ -1,3 +1,15 @@
|
|
|
1
1
|
import { EventEmitter } from 'events';
|
|
2
2
|
export class LogEmitter extends EventEmitter {
|
|
3
|
+
emit(event, ...args) {
|
|
4
|
+
return super.emit(event, ...args);
|
|
5
|
+
}
|
|
6
|
+
on(event, listener) {
|
|
7
|
+
return super.on(event, listener);
|
|
8
|
+
}
|
|
9
|
+
once(event, listener) {
|
|
10
|
+
return super.once(event, listener);
|
|
11
|
+
}
|
|
12
|
+
off(event, listener) {
|
|
13
|
+
return super.off(event, listener);
|
|
14
|
+
}
|
|
3
15
|
}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { type ErrorMessageOverlay, type Label, ControlBar, SettingsPanelItem, Button, SeekBar, CastToggleButton, SettingsPanel } from 'bitmovin-player-ui';
|
|
1
|
+
import { type ErrorMessageOverlay, type Label, ControlBar, SettingsPanelItem, Button, SeekBar, CastToggleButton, SettingsPanel, SettingsToggleButton } from 'bitmovin-player-ui';
|
|
2
2
|
import { type NPOTag, type PageTracker } from '@npotag/tag';
|
|
3
3
|
import { ButtonConfig } from 'bitmovin-player-ui/dist/js/framework/components/button';
|
|
4
4
|
import NpoPlayer from '../npoplayer';
|
|
5
5
|
import { NpoPlayerAPI } from '../services/npoPlayerAPI/npoPlayerAPI';
|
|
6
6
|
import { NpoPlayerEventCallback } from './events';
|
|
7
|
-
import { GoogleCastRemoteControlConfig,
|
|
7
|
+
import { AnalyticsConfig, DRMConfig, GoogleCastRemoteControlConfig, ProgressiveSourceConfig, SourceConfigOptions, SourceLabelingStreamTypeConfig, SubtitleTrack, ThumbnailTrack, VRConfig } from 'bitmovin-player';
|
|
8
8
|
export { Technology } from 'bitmovin-player';
|
|
9
9
|
export interface Profile {
|
|
10
10
|
profileName: string;
|
|
@@ -31,7 +31,7 @@ export interface StreamObject {
|
|
|
31
31
|
}
|
|
32
32
|
export interface PlayerContext {
|
|
33
33
|
player: NpoPlayerAPI;
|
|
34
|
-
|
|
34
|
+
npoPlayer: NpoPlayer;
|
|
35
35
|
}
|
|
36
36
|
export interface ApiPayload {
|
|
37
37
|
baseURL: string;
|
|
@@ -95,6 +95,26 @@ interface FragmentSection {
|
|
|
95
95
|
export interface Fragment {
|
|
96
96
|
sections: FragmentSection[];
|
|
97
97
|
}
|
|
98
|
+
export interface SourceConfig {
|
|
99
|
+
dash?: string;
|
|
100
|
+
hls?: string;
|
|
101
|
+
progressive?: string | ProgressiveSourceConfig[];
|
|
102
|
+
smooth?: string;
|
|
103
|
+
whep?: string;
|
|
104
|
+
poster?: string;
|
|
105
|
+
drm?: DRMConfig;
|
|
106
|
+
options?: SourceConfigOptions;
|
|
107
|
+
subtitleTracks?: SubtitleTrack[];
|
|
108
|
+
thumbnailTrack?: ThumbnailTrack;
|
|
109
|
+
vr?: VRConfig;
|
|
110
|
+
title?: string;
|
|
111
|
+
description?: string;
|
|
112
|
+
labeling?: SourceLabelingStreamTypeConfig;
|
|
113
|
+
analytics?: AnalyticsConfig;
|
|
114
|
+
metadata?: {
|
|
115
|
+
[key: string]: string;
|
|
116
|
+
};
|
|
117
|
+
}
|
|
98
118
|
export interface StreamOptions {
|
|
99
119
|
sourceConfig?: SourceConfig;
|
|
100
120
|
fragments?: Fragment;
|
|
@@ -112,6 +132,8 @@ export interface StreamOptions {
|
|
|
112
132
|
customFallbackPoster?: string;
|
|
113
133
|
autoFillTimeLineMarkerDuration?: boolean;
|
|
114
134
|
autoplay?: boolean;
|
|
135
|
+
npoTagPageTracker?: PageTracker;
|
|
136
|
+
retryCallback?: () => void;
|
|
115
137
|
}
|
|
116
138
|
export interface UIComponents {
|
|
117
139
|
errorMessageOverlay?: ErrorMessageOverlay;
|
|
@@ -131,6 +153,8 @@ export interface UIComponents {
|
|
|
131
153
|
seekBar?: SeekBar | undefined;
|
|
132
154
|
chromeCastButton?: CastToggleButton | undefined;
|
|
133
155
|
settingsPanels?: SettingsPanel[] | undefined;
|
|
156
|
+
settingsPanel?: SettingsPanel | undefined;
|
|
157
|
+
settingsToggleButton?: SettingsToggleButton | undefined;
|
|
134
158
|
}
|
|
135
159
|
export interface CustomMessageHandlerInterface {
|
|
136
160
|
defaultActionRequired?: boolean;
|
|
@@ -197,7 +221,18 @@ export type TimeLineMarker = {
|
|
|
197
221
|
export declare enum LocalStorageValues {
|
|
198
222
|
IS_MUTED = "ismuted",
|
|
199
223
|
VOLUME = "volume",
|
|
200
|
-
SUBTITLES_ENABLED = "subtitles_enabled"
|
|
224
|
+
SUBTITLES_ENABLED = "subtitles_enabled",
|
|
225
|
+
SUBTITLES_LANGUAGE = "subtitles_language"
|
|
201
226
|
}
|
|
202
227
|
export type LocalStorageData = Partial<Record<LocalStorageValues, string | number>>;
|
|
203
228
|
export type NPOGoogleCastRemoteControlConfig = GoogleCastRemoteControlConfig;
|
|
229
|
+
export interface PlayerTrackerParams {
|
|
230
|
+
playerContext: PlayerContext;
|
|
231
|
+
duration: number | undefined;
|
|
232
|
+
source: string | undefined;
|
|
233
|
+
}
|
|
234
|
+
export interface LogEventParams {
|
|
235
|
+
playerContext: PlayerContext;
|
|
236
|
+
event: string;
|
|
237
|
+
data?: any;
|
|
238
|
+
}
|
package/lib/types/interfaces.js
CHANGED
|
@@ -43,4 +43,5 @@ export var LocalStorageValues;
|
|
|
43
43
|
LocalStorageValues["IS_MUTED"] = "ismuted";
|
|
44
44
|
LocalStorageValues["VOLUME"] = "volume";
|
|
45
45
|
LocalStorageValues["SUBTITLES_ENABLED"] = "subtitles_enabled";
|
|
46
|
+
LocalStorageValues["SUBTITLES_LANGUAGE"] = "subtitles_language";
|
|
46
47
|
})(LocalStorageValues || (LocalStorageValues = {}));
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Button } from 'bitmovin-player-ui';
|
|
2
2
|
import type NpoPlayer from '../../npoplayer';
|
|
3
|
-
export declare function createAdButton(
|
|
3
|
+
export declare function createAdButton(npoPlayer: NpoPlayer): Button<{
|
|
4
4
|
cssClass: string;
|
|
5
5
|
text: string;
|
|
6
6
|
hidden: true;
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { Button } from 'bitmovin-player-ui';
|
|
2
|
-
export function createAdButton(
|
|
3
|
-
|
|
2
|
+
export function createAdButton(npoPlayer) {
|
|
3
|
+
npoPlayer.uiComponents.adbutton = undefined;
|
|
4
4
|
const adButton = new Button({
|
|
5
5
|
cssClass: 'ui-textbutton ui-sterbutton bmpui-ui-button',
|
|
6
6
|
text: 'Ga naar website van adverteerder',
|
|
7
7
|
hidden: true
|
|
8
8
|
});
|
|
9
|
-
|
|
9
|
+
npoPlayer.uiComponents.adbutton = adButton;
|
|
10
10
|
return adButton;
|
|
11
11
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Label } from 'bitmovin-player-ui';
|
|
2
2
|
import type NpoPlayer from '../../npoplayer';
|
|
3
|
-
export declare function createAdLabel(
|
|
3
|
+
export declare function createAdLabel(npoPlayer: NpoPlayer): Label<{
|
|
4
4
|
text: string;
|
|
5
5
|
cssClass: string;
|
|
6
6
|
hidden: true;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Label } from 'bitmovin-player-ui';
|
|
2
|
-
export function createAdLabel(
|
|
3
|
-
|
|
2
|
+
export function createAdLabel(npoPlayer) {
|
|
3
|
+
npoPlayer.uiComponents.adlabel = undefined;
|
|
4
4
|
const adLabel = new Label({ text: '', cssClass: 'adLabel', hidden: true });
|
|
5
|
-
|
|
5
|
+
npoPlayer.uiComponents.adlabel = adLabel;
|
|
6
6
|
return adLabel;
|
|
7
7
|
}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { ControlBar, Container, SeekBar, SeekBarLabel, VolumeControlButton } from 'bitmovin-player-ui';
|
|
2
2
|
import { createSeekBar } from '../seekbar';
|
|
3
|
+
import { NpoPlayerUIVariants } from '../../../npoplayer';
|
|
3
4
|
export function createAudioControlBar(npoPlayer) {
|
|
4
5
|
const seekBar = new SeekBar({ label: new SeekBarLabel() });
|
|
5
6
|
npoPlayer.uiComponents.seekBar = seekBar;
|
|
6
7
|
const controlBar = new ControlBar({
|
|
7
8
|
components: [
|
|
8
|
-
createSeekBar(npoPlayer),
|
|
9
|
+
createSeekBar(npoPlayer, NpoPlayerUIVariants.AUDIO),
|
|
9
10
|
new Container({
|
|
10
11
|
components: [
|
|
11
12
|
new VolumeControlButton({
|