@npo/player 1.11.3 → 1.11.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/lib/js/fragments/removefragments.d.ts +3 -0
  2. package/lib/js/fragments/removefragments.js +10 -0
  3. package/lib/js/fragments/removefragments.js.map +1 -0
  4. package/lib/js/fragments/setfragments.d.ts +2 -0
  5. package/lib/js/fragments/setfragments.js +42 -39
  6. package/lib/js/fragments/setfragments.js.map +1 -1
  7. package/lib/js/playeractions/handlers/processplayerconfig.js +21 -7
  8. package/lib/js/playeractions/handlers/processplayerconfig.js.map +1 -1
  9. package/lib/js/ui/components/nativemobile/buttons.d.ts +14 -3
  10. package/lib/js/ui/components/nativemobile/buttons.js +153 -15
  11. package/lib/js/ui/components/nativemobile/buttons.js.map +1 -1
  12. package/lib/js/ui/components/nativemobile/controlbar.js +9 -9
  13. package/lib/js/ui/components/nativemobile/controlbar.js.map +1 -1
  14. package/lib/js/ui/components/nativemobile/ctabar.js +1 -2
  15. package/lib/js/ui/components/nativemobile/ctabar.js.map +1 -1
  16. package/lib/js/ui/components/nativemobile/playnext.d.ts +1 -2
  17. package/lib/js/ui/components/nativemobile/playnext.js +2 -2
  18. package/lib/js/ui/components/nativemobile/playnext.js.map +1 -1
  19. package/lib/js/ui/components/nativemobile/topbar.js +4 -4
  20. package/lib/js/ui/components/nativemobile/topbar.js.map +1 -1
  21. package/lib/js/ui/nativemobileuicontainer.d.ts +2 -3
  22. package/lib/js/ui/nativemobileuicontainer.js +7 -12
  23. package/lib/js/ui/nativemobileuicontainer.js.map +1 -1
  24. package/lib/js/ui/nativemobileuifactory.js +68 -26
  25. package/lib/js/ui/nativemobileuifactory.js.map +1 -1
  26. package/lib/npoplayer.d.ts +2 -1
  27. package/lib/npoplayer.js +13 -6
  28. package/lib/npoplayer.js.map +1 -1
  29. package/lib/package.json +1 -1
  30. package/lib/src/js/fragments/removefragments.d.ts +3 -0
  31. package/lib/src/js/fragments/setfragments.d.ts +2 -0
  32. package/lib/src/js/ui/components/nativemobile/buttons.d.ts +14 -3
  33. package/lib/src/js/ui/components/nativemobile/playnext.d.ts +1 -2
  34. package/lib/src/js/ui/nativemobileuicontainer.d.ts +2 -3
  35. package/lib/src/npoplayer.d.ts +2 -1
  36. package/lib/src/types/interfaces.d.ts +21 -4
  37. package/lib/types/interfaces.d.ts +21 -4
  38. package/lib/types/interfaces.js +13 -1
  39. package/lib/types/interfaces.js.map +1 -1
  40. package/package.json +1 -1
  41. package/src/scss/components/_buffering.scss +1 -0
  42. package/src/scss/npoplayer.css +7 -4
  43. package/src/scss/variants/_player-base.scss +11 -0
  44. package/src/scss/variants/_player-small.scss +6 -1
@@ -0,0 +1,3 @@
1
+ import { PlayerAPI } from 'bitmovin-player';
2
+ import { UIManager } from 'bitmovin-player-ui';
3
+ export declare function removeFragments(player: PlayerAPI, uiManager: UIManager): Promise<void>;
@@ -0,0 +1,10 @@
1
+ import { PlayerEvent } from 'bitmovin-player';
2
+ import { checkFunction, seekFunction } from './setfragments';
3
+ export async function removeFragments(player, uiManager) {
4
+ uiManager.getTimelineMarkers().forEach(marker => {
5
+ uiManager.removeTimelineMarker(marker);
6
+ });
7
+ player.off(PlayerEvent.TimeChanged, checkFunction());
8
+ player.off(PlayerEvent.Seek, seekFunction());
9
+ }
10
+ //# sourceMappingURL=removefragments.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"removefragments.js","sourceRoot":"","sources":["../../../../src/js/fragments/removefragments.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAExD,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAE5D,MAAM,CAAC,KAAK,UAAU,eAAe,CAAE,MAAiB,EAAE,SAAoB;IAC1E,SAAS,CAAC,kBAAkB,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;QAC5C,SAAS,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAA;IAC1C,CAAC,CAAC,CAAA;IAEF,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,WAAW,EAAE,aAAa,EAAE,CAAC,CAAA;IACpD,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,EAAE,YAAY,EAAE,CAAC,CAAA;AAChD,CAAC"}
@@ -1,4 +1,6 @@
1
1
  import { PlayerAPI } from 'bitmovin-player';
2
2
  import { type Fragments } from '../../types/interfaces';
3
3
  import { UIManager } from 'bitmovin-player-ui';
4
+ export declare const checkFunction: () => (e: any) => void;
5
+ export declare const seekFunction: () => (e: any) => void;
4
6
  export declare function setFragments(player: PlayerAPI, uiManager: UIManager, fragments: Fragments): Promise<void>;
@@ -1,13 +1,48 @@
1
1
  import { PlayerEvent } from 'bitmovin-player';
2
+ import { removeFragments } from './removefragments';
3
+ let fragment = null;
4
+ let playerInstance = null;
5
+ const setTitle = () => {
6
+ const element = document.querySelector('.bmpui-npo-player .bmpui-seekbar-label-title');
7
+ if (element !== null && element.textContent === '') {
8
+ element.textContent = fragment?.title || '';
9
+ }
10
+ };
11
+ export const checkFunction = () => (e) => {
12
+ if (!fragment || !playerInstance)
13
+ return;
14
+ if (e.time > fragment.end) {
15
+ playerInstance.seek(Math.max(fragment.start, fragment.end));
16
+ playerInstance.pause();
17
+ }
18
+ else if (e.time < fragment.start) {
19
+ playerInstance.seek(fragment.start);
20
+ }
21
+ setTitle();
22
+ };
23
+ export const seekFunction = () => (e) => {
24
+ if (!fragment || !playerInstance)
25
+ return;
26
+ const seekTarget = e.seekTarget ? e.seekTarget : e.to.time;
27
+ if (seekTarget > fragment.end || seekTarget < fragment.start) {
28
+ playerInstance.seek(Math.max(fragment.start, Math.min(fragment.end, seekTarget)));
29
+ }
30
+ setTitle();
31
+ };
2
32
  export async function setFragments(player, uiManager, fragments) {
3
- const fragment = fragments.sections[0];
33
+ fragment = fragments.sections[0] || null;
34
+ playerInstance = player;
35
+ const unplayableClass = 'seekbar-marker-unplayable';
4
36
  const playFragmentFromStart = () => {
37
+ if (!fragment)
38
+ return;
5
39
  player.seek(fragment.start);
6
40
  if (player.isPaused())
7
41
  void player.play();
8
42
  };
9
- const unplayableClass = 'seekbar-marker-unplayable';
10
43
  const addMarkers = () => {
44
+ if (!fragment)
45
+ return;
11
46
  const timelineMarkers = [
12
47
  {
13
48
  time: 0,
@@ -26,44 +61,12 @@ export async function setFragments(player, uiManager, fragments) {
26
61
  uiManager.addTimelineMarker(marker);
27
62
  });
28
63
  playFragmentFromStart();
64
+ player.off(PlayerEvent.TimeChanged, checkFunction());
65
+ player.off(PlayerEvent.Seek, seekFunction());
66
+ player.on(PlayerEvent.TimeChanged, checkFunction());
67
+ player.on(PlayerEvent.Seek, seekFunction());
29
68
  };
30
- const removeMarkers = () => {
31
- uiManager.getTimelineMarkers().forEach(marker => {
32
- uiManager.removeTimelineMarker(marker);
33
- });
34
- };
35
- const setTitle = () => {
36
- const element = document.querySelector('.bmpui-npo-player .bmpui-seekbar-label-title');
37
- if (element !== null && element.textContent === '') {
38
- element.textContent = fragment.title || '';
39
- }
40
- };
41
- const checkFunction = (e) => {
42
- if (fragment == null)
43
- return;
44
- if (e.time > fragment.end) {
45
- player.seek(Math.max(fragment.start, fragment.end));
46
- player.pause();
47
- }
48
- else if (e.time < fragment.start) {
49
- player.seek(fragment.start);
50
- }
51
- setTitle();
52
- };
53
- const seekFunction = (e) => {
54
- if (fragment == null)
55
- return;
56
- const seekTarget = e.seekTarget ? e.seekTarget : e.to.time;
57
- if (seekTarget > fragment.end || seekTarget < fragment.start) {
58
- player.seek(Math.max(fragment.start, Math.min(fragment.end, seekTarget)));
59
- }
60
- setTitle();
61
- };
62
- player.off(PlayerEvent.TimeChanged, checkFunction);
63
- player.off(PlayerEvent.Seek, seekFunction);
64
- player.on(PlayerEvent.TimeChanged, checkFunction);
65
- player.on(PlayerEvent.Seek, seekFunction);
66
- removeMarkers();
69
+ removeFragments(player, uiManager);
67
70
  addMarkers();
68
71
  }
69
72
  //# sourceMappingURL=setfragments.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"setfragments.js","sourceRoot":"","sources":["../../../../src/js/fragments/setfragments.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"setfragments.js","sourceRoot":"","sources":["../../../../src/js/fragments/setfragments.ts"],"names":[],"mappings":"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"}
@@ -11,13 +11,27 @@ export function processPlayerConfig(npoplayer, playerConfig) {
11
11
  };
12
12
  }
13
13
  processedConfig.ui = false;
14
- if (!processedConfig.remotecontrol)
15
- processedConfig.remotecontrol = {
16
- type: 'googlecast',
17
- receiverApplicationId: 'CC38EB17',
18
- receiverVersion: 'v3',
19
- messageNamespace: 'urn:x-cast:com.bitmovin.player.caf'
20
- };
14
+ const defaultRemoteControlConfig = {
15
+ type: 'googlecast',
16
+ receiverApplicationId: 'CC38EB17',
17
+ receiverVersion: 'v3',
18
+ messageNamespace: 'urn:x-cast:com.bitmovin.player.caf',
19
+ customReceiverConfig: {
20
+ drm: npoplayer.drmProfile.drm,
21
+ profileName: npoplayer.drmProfile.profileName,
22
+ jwt: npoplayer.jwt
23
+ }
24
+ };
25
+ const userRemoteControlConfig = processedConfig.remotecontrol || defaultRemoteControlConfig;
26
+ const mergedRemoteControlConfig = {
27
+ ...defaultRemoteControlConfig,
28
+ ...userRemoteControlConfig,
29
+ customReceiverConfig: {
30
+ ...defaultRemoteControlConfig.customReceiverConfig,
31
+ ...userRemoteControlConfig.customReceiverConfig
32
+ }
33
+ };
34
+ processedConfig.remotecontrol = mergedRemoteControlConfig;
21
35
  if (!processedConfig.logs)
22
36
  processedConfig.logs = {
23
37
  level: LogLevel.ERROR
@@ -1 +1 @@
1
- {"version":3,"file":"processplayerconfig.js","sourceRoot":"","sources":["../../../../../src/js/playeractions/handlers/processplayerconfig.ts"],"names":[],"mappings":"AASA,OAAO,EAAqB,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAE9D,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAE9C,MAAM,UAAU,mBAAmB,CAAC,SAAmB,EAAE,YAAyB;IAE9E,IAAI,eAAe,GAAG,YAAY,CAAA;IAElC,IAAI,QAAQ,CAAC,SAAS,CAAC,sBAAsB,EAAE,CAAC,EAAE;QAE9C,eAAe,CAAC,QAAQ,GAAG;YACvB,QAAQ,EAAE,KAAK;SAClB,CAAA;QAGD,eAAe,CAAC,MAAM,GAAG;YACrB,8CAA8C,EAAE,IAAI;SACvD,CAAA;KACJ;IAED,eAAe,CAAC,EAAE,GAAG,KAAK,CAAA;IAG1B,IAAG,CAAC,eAAe,CAAC,aAAa;QAAE,eAAe,CAAC,aAAa,GAAG;YAC/D,IAAI,EAAE,YAAY;YAClB,qBAAqB,EAAE,UAAU;YACjC,eAAe,EAAE,IAAI;YACrB,gBAAgB,EAAE,oCAAoC;SACzD,CAAA;IAED,IAAG,CAAC,eAAe,CAAC,IAAI;QAAE,eAAe,CAAC,IAAI,GAAG;YAC7C,KAAK,EAAE,QAAQ,CAAC,KAAK;SACxB,CAAA;IAGD,eAAe,CAAC,WAAW,GAAG,EAAE,CAAA;IAEhC,OAAO,eAAe,CAAA;AAC1B,CAAC"}
1
+ {"version":3,"file":"processplayerconfig.js","sourceRoot":"","sources":["../../../../../src/js/playeractions/handlers/processplayerconfig.ts"],"names":[],"mappings":"AASA,OAAO,EAAqB,QAAQ,EAAiC,MAAM,iBAAiB,CAAC;AAE7F,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAE9C,MAAM,UAAU,mBAAmB,CAAC,SAAmB,EAAE,YAAyB;IAE9E,IAAI,eAAe,GAAG,YAAY,CAAA;IAElC,IAAI,QAAQ,CAAC,SAAS,CAAC,sBAAsB,EAAE,CAAC,EAAE;QAE9C,eAAe,CAAC,QAAQ,GAAG;YACvB,QAAQ,EAAE,KAAK;SAClB,CAAA;QAGD,eAAe,CAAC,MAAM,GAAG;YACrB,8CAA8C,EAAE,IAAI;SACvD,CAAA;KACJ;IAED,eAAe,CAAC,EAAE,GAAG,KAAK,CAAA;IAE1B,MAAM,0BAA0B,GAAG;QAC/B,IAAI,EAAE,YAAY;QAClB,qBAAqB,EAAE,UAAU;QACjC,eAAe,EAAE,IAAI;QACrB,gBAAgB,EAAE,oCAAoC;QACtD,oBAAoB,EAAE;YAClB,GAAG,EAAE,SAAS,CAAC,UAAU,CAAC,GAAG;YAC7B,WAAW,EAAE,SAAS,CAAC,UAAU,CAAC,WAAW;YAC7C,GAAG,EAAE,SAAS,CAAC,GAAG;SACrB;KACJ,CAAC;IAEF,MAAM,uBAAuB,GAAG,eAAe,CAAC,aAAa,IAAI,0BAA0B,CAAC;IAG5F,MAAM,yBAAyB,GAAG;QAC9B,GAAG,0BAA0B;QAC7B,GAAG,uBAAuB;QAC1B,oBAAoB,EAAE;YAClB,GAAG,0BAA0B,CAAC,oBAAoB;YAClD,GAAG,uBAAuB,CAAC,oBAAoB;SAClD;KACJ,CAAC;IAEF,eAAe,CAAC,aAAa,GAAG,yBAA0D,CAAC;IAE3F,IAAG,CAAC,eAAe,CAAC,IAAI;QAAE,eAAe,CAAC,IAAI,GAAG;YAC7C,KAAK,EAAE,QAAQ,CAAC,KAAK;SACxB,CAAA;IAGD,eAAe,CAAC,WAAW,GAAG,EAAE,CAAA;IAEhC,OAAO,eAAe,CAAA;AAC1B,CAAC"}
@@ -1,6 +1,6 @@
1
- import { type PlayerAPI } from 'bitmovin-player';
2
- import { Button, SettingsPanel, SettingsToggleButton } from 'bitmovin-player-ui';
3
- export declare function createPlayNextButton(player: PlayerAPI): Button<{
1
+ import { AirPlayToggleButton, Button, CastToggleButton, FullscreenToggleButton, PictureInPictureToggleButton, PlaybackToggleButton, SettingsPanel, SettingsToggleButton, VolumeToggleButton } from 'bitmovin-player-ui';
2
+ import { PlayerAPI } from 'bitmovin-player';
3
+ export declare function createPlayNextButton(): Button<{
4
4
  cssClass: string;
5
5
  text: string;
6
6
  hidden: false;
@@ -10,4 +10,15 @@ export declare function createWatchFromStartButton(): Button<{
10
10
  text: string;
11
11
  hidden: true;
12
12
  }>;
13
+ export declare function createGoBackLiveButton(player: PlayerAPI): Button<{
14
+ cssClass: string;
15
+ text: string;
16
+ hidden: true;
17
+ }>;
13
18
  export declare function createSettingsButton(settingsPanel: SettingsPanel): SettingsToggleButton;
19
+ export declare function createPlaybackToggleButton(): PlaybackToggleButton;
20
+ export declare function createVolumeToggleButton(): VolumeToggleButton;
21
+ export declare function createPictureInPictureToggleButton(): PictureInPictureToggleButton;
22
+ export declare function createAirPlayToggleButton(): AirPlayToggleButton;
23
+ export declare function createCastToggleButton(): CastToggleButton;
24
+ export declare function createFullscreenToggleButton(): FullscreenToggleButton;
@@ -1,41 +1,179 @@
1
- import { Button, SettingsToggleButton } from 'bitmovin-player-ui';
1
+ import { AirPlayToggleButton, Button, CastToggleButton, FullscreenToggleButton, PictureInPictureToggleButton, PlaybackToggleButton, SettingsToggleButton, VolumeToggleButton } from 'bitmovin-player-ui';
2
2
  import { sendCustomMessage } from '../../nativemobileuicontainer';
3
3
  import { CustomMessages } from '../../../../types/interfaces';
4
- export function createPlayNextButton(player) {
4
+ export function createPlayNextButton() {
5
5
  const playNextButton = new Button({
6
6
  cssClass: 'ui-hugeplaynextbacktogglebutton ui-playNextButton bmpui-ui-button',
7
7
  text: 'De volgende aflevering wordt zo afgespeeld...',
8
8
  hidden: false
9
9
  });
10
- if (player != null) {
11
- playNextButton.onClick.subscribe(() => {
12
- const result = sendCustomMessage(CustomMessages.DO_PLAY_NEXT);
13
- if (result.defaultActionRequired === true) {
14
- console.log('do something');
15
- }
16
- else {
17
- console.log('do something else');
18
- }
19
- });
20
- }
10
+ const playNextButtonClickHandler = () => {
11
+ const result = sendCustomMessage(CustomMessages.CLICK_PLAY_NEXT);
12
+ if (result?.defaultActionRequired === false) {
13
+ console.warn('Default action for "playNextButton" not overwritten yet');
14
+ }
15
+ };
16
+ playNextButton.onClick.subscribe(() => {
17
+ playNextButtonClickHandler();
18
+ });
19
+ playNextButton.onClick.unsubscribe(() => {
20
+ playNextButtonClickHandler();
21
+ });
21
22
  return playNextButton;
22
23
  }
23
24
  export function createWatchFromStartButton() {
24
- return new Button({
25
+ const watchFromStartButton = new Button({
25
26
  cssClass: 'ui-textbutton ui-watchfromstartbutton bmpui-ui-button',
26
27
  text: 'Kijk vanaf het begin',
27
28
  hidden: true
28
29
  });
30
+ const watchFromStartButtonClickHandler = () => {
31
+ const result = sendCustomMessage(CustomMessages.CLICK_WATCH_FROM_START);
32
+ if (result?.defaultActionRequired === false) {
33
+ console.warn('Default action for "watchFromStartButton" not overwritten yet');
34
+ }
35
+ };
36
+ watchFromStartButton.onClick.subscribe(() => {
37
+ watchFromStartButtonClickHandler();
38
+ });
39
+ watchFromStartButton.onClick.unsubscribe(() => {
40
+ watchFromStartButtonClickHandler();
41
+ });
42
+ return watchFromStartButton;
43
+ }
44
+ export function createGoBackLiveButton(player) {
45
+ const goBackLiveButton = new Button({
46
+ cssClass: 'ui-textbutton ui-backtolivebutton bmpui-ui-button',
47
+ text: 'Terug naar live',
48
+ hidden: true
49
+ });
50
+ const goBackLiveButtonClickHandler = () => {
51
+ const result = sendCustomMessage(CustomMessages.CLICK_GO_BACK_TO_LIVE);
52
+ if (result.defaultActionRequired === false && player.isLive()) {
53
+ player.timeShift(0);
54
+ }
55
+ };
56
+ goBackLiveButton.onClick.subscribe(() => {
57
+ goBackLiveButtonClickHandler();
58
+ });
59
+ goBackLiveButton.onClick.unsubscribe(() => {
60
+ goBackLiveButtonClickHandler();
61
+ });
62
+ return goBackLiveButton;
29
63
  }
30
64
  export function createSettingsButton(settingsPanel) {
31
65
  const customSettingsToggleButton = new SettingsToggleButton({ settingsPanel });
32
- customSettingsToggleButton.onToggleOn.subscribe(() => {
66
+ const settingsButtonToggleOnHandler = () => {
33
67
  const result = sendCustomMessage(CustomMessages.TOGGLE_SETTINGS_PANEL);
34
68
  if (result.defaultActionRequired === false) {
35
69
  settingsPanel.hide();
36
70
  customSettingsToggleButton.off();
37
71
  }
72
+ };
73
+ customSettingsToggleButton.onToggleOn.subscribe(() => {
74
+ settingsButtonToggleOnHandler();
75
+ });
76
+ customSettingsToggleButton.onToggleOn.unsubscribe(() => {
77
+ settingsButtonToggleOnHandler();
38
78
  });
39
79
  return customSettingsToggleButton;
40
80
  }
81
+ export function createPlaybackToggleButton() {
82
+ const customPlayerbackToggleButton = new PlaybackToggleButton({
83
+ cssClass: 'ui-playbacktogglebutton'
84
+ });
85
+ const playbackToggleHandler = () => {
86
+ const result = sendCustomMessage(CustomMessages.TOGGLE_PLAY_PAUSE, { isChecked: customPlayerbackToggleButton.isOn() });
87
+ if (result?.defaultActionRequired === false) {
88
+ console.warn('Default action for "PlaybackToggleButton" not overwritten yet');
89
+ }
90
+ };
91
+ customPlayerbackToggleButton.onToggle.subscribe(() => {
92
+ playbackToggleHandler();
93
+ });
94
+ customPlayerbackToggleButton.onToggle.unsubscribe(() => {
95
+ playbackToggleHandler();
96
+ });
97
+ return customPlayerbackToggleButton;
98
+ }
99
+ export function createVolumeToggleButton() {
100
+ const customVolumeToggleButton = new VolumeToggleButton();
101
+ const volumeToggleHandler = () => {
102
+ const result = sendCustomMessage(CustomMessages.TOGGLE_MUTE, { isChecked: customVolumeToggleButton.isOn() });
103
+ if (result?.defaultActionRequired === false) {
104
+ console.warn('Default action for "VolumeToggleButton" not overwritten yet');
105
+ }
106
+ };
107
+ customVolumeToggleButton.onToggle.subscribe(() => {
108
+ volumeToggleHandler();
109
+ });
110
+ customVolumeToggleButton.onToggle.unsubscribe(() => {
111
+ volumeToggleHandler();
112
+ });
113
+ return customVolumeToggleButton;
114
+ }
115
+ export function createPictureInPictureToggleButton() {
116
+ const customPictureInPictureToggleButton = new PictureInPictureToggleButton();
117
+ const pictureInPictureToggleHandler = () => {
118
+ const result = sendCustomMessage(CustomMessages.TOGGLE_PIP, { isChecked: customPictureInPictureToggleButton.isOn() });
119
+ if (result?.defaultActionRequired === false) {
120
+ console.warn('Default action for "PictureInPictureToggleButton" not overwritten yet');
121
+ }
122
+ };
123
+ customPictureInPictureToggleButton.onToggle.subscribe(() => {
124
+ pictureInPictureToggleHandler();
125
+ });
126
+ customPictureInPictureToggleButton.onToggle.unsubscribe(() => {
127
+ pictureInPictureToggleHandler();
128
+ });
129
+ return customPictureInPictureToggleButton;
130
+ }
131
+ export function createAirPlayToggleButton() {
132
+ const customAirPlayToggleButton = new AirPlayToggleButton();
133
+ const airPlayToggleHandler = () => {
134
+ const result = sendCustomMessage(CustomMessages.TOGGLE_AIRPLAY, { isChecked: customAirPlayToggleButton.isOn() });
135
+ if (result?.defaultActionRequired === false) {
136
+ console.warn('Default action for "AirPlayToggleButton" not overwritten yet');
137
+ }
138
+ };
139
+ customAirPlayToggleButton.onToggle.subscribe(() => {
140
+ airPlayToggleHandler();
141
+ });
142
+ customAirPlayToggleButton.onToggle.unsubscribe(() => {
143
+ airPlayToggleHandler();
144
+ });
145
+ return customAirPlayToggleButton;
146
+ }
147
+ export function createCastToggleButton() {
148
+ const customCastToggleButton = new CastToggleButton();
149
+ const castToggleHandler = () => {
150
+ const result = sendCustomMessage(CustomMessages.TOGGLE_AIRPLAY, { isChecked: customCastToggleButton.isOn() });
151
+ if (result?.defaultActionRequired === false) {
152
+ console.warn('Default action for "CastToggleButton" not overwritten yet');
153
+ }
154
+ };
155
+ customCastToggleButton.onToggle.subscribe(() => {
156
+ castToggleHandler();
157
+ });
158
+ customCastToggleButton.onToggle.unsubscribe(() => {
159
+ castToggleHandler();
160
+ });
161
+ return customCastToggleButton;
162
+ }
163
+ export function createFullscreenToggleButton() {
164
+ const customFullscreenToggleButton = new FullscreenToggleButton();
165
+ const fullscreenToggleHandler = () => {
166
+ const result = sendCustomMessage(CustomMessages.TOGGLE_FULLSCREEN, { isChecked: customFullscreenToggleButton.isOn() });
167
+ if (result?.defaultActionRequired === false) {
168
+ console.warn('Default action for "FullscreenToggleButton" not overwritten yet');
169
+ }
170
+ };
171
+ customFullscreenToggleButton.onToggle.subscribe(() => {
172
+ fullscreenToggleHandler();
173
+ });
174
+ customFullscreenToggleButton.onToggle.unsubscribe(() => {
175
+ fullscreenToggleHandler();
176
+ });
177
+ return customFullscreenToggleButton;
178
+ }
41
179
  //# sourceMappingURL=buttons.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"buttons.js","sourceRoot":"","sources":["../../../../../../src/js/ui/components/nativemobile/buttons.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAiB,oBAAoB,EAAE,MAAM,oBAAoB,CAAA;AAChF,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAA8B,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAE1F,MAAM,UAAU,oBAAoB,CAAE,MAAiB;IACnD,MAAM,cAAc,GAAG,IAAI,MAAM,CAAC;QAC9B,QAAQ,EACJ,mEAAmE;QACvE,IAAI,EAAE,+CAA+C;QACrD,MAAM,EAAE,KAAK;KAChB,CAAC,CAAA;IAEF,IAAI,MAAM,IAAI,IAAI,EAAE;QAChB,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,EAAE;YAClC,MAAM,MAAM,GAA+B,iBAAiB,CAAC,cAAc,CAAC,YAAY,CAAC,CAAA;YACzF,IAAI,MAAM,CAAC,qBAAqB,KAAK,IAAI,EAAE;gBACvC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAA;aAC9B;iBAAM;gBACH,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAA;aACnC;QACL,CAAC,CAAC,CAAA;KACL;IAED,OAAO,cAAc,CAAA;AACzB,CAAC;AAED,MAAM,UAAU,0BAA0B;IACtC,OAAO,IAAI,MAAM,CAAC;QACd,QAAQ,EAAE,uDAAuD;QACjE,IAAI,EAAE,sBAAsB;QAC5B,MAAM,EAAE,IAAI;KACf,CAAC,CAAA;AACN,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAE,aAA4B;IAC9D,MAAM,0BAA0B,GAAG,IAAI,oBAAoB,CAAC,EAAE,aAAa,EAAE,CAAC,CAAA;IAE9E,0BAA0B,CAAC,UAAU,CAAC,SAAS,CAAC,GAAG,EAAE;QACjD,MAAM,MAAM,GAA+B,iBAAiB,CAAC,cAAc,CAAC,qBAAqB,CAAC,CAAA;QAClG,IAAI,MAAM,CAAC,qBAAqB,KAAK,KAAK,EAAE;YACxC,aAAa,CAAC,IAAI,EAAE,CAAA;YACpB,0BAA0B,CAAC,GAAG,EAAE,CAAA;SACnC;IACL,CAAC,CAAC,CAAA;IAEF,OAAO,0BAA0B,CAAC;AACtC,CAAC"}
1
+ {"version":3,"file":"buttons.js","sourceRoot":"","sources":["../../../../../../src/js/ui/components/nativemobile/buttons.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,13 @@
1
1
  import { PlayerEvent } from 'bitmovin-player';
2
- import { ControlBar, Container, PlaybackTimeLabel, PlaybackTimeLabelMode, SeekBar, SeekBarLabel, PlaybackToggleButton, VolumeToggleButton, VolumeSlider, Spacer, PictureInPictureToggleButton, AirPlayToggleButton, SettingsToggleButton, FullscreenToggleButton, CastToggleButton } from 'bitmovin-player-ui';
2
+ import { ControlBar, Container, PlaybackTimeLabel, PlaybackTimeLabelMode, SeekBar, SeekBarLabel, VolumeSlider, Spacer, SettingsToggleButton, } from 'bitmovin-player-ui';
3
3
  import { createForwardButton, createRewindButton } from '../buttons';
4
4
  import { airPlaySupported } from '../../../utilities/utilities';
5
+ import { createAirPlayToggleButton, createCastToggleButton, createFullscreenToggleButton, createPictureInPictureToggleButton, createPlaybackToggleButton, createVolumeToggleButton, } from './buttons';
5
6
  export function createControlBar(player, settingsPanel) {
6
7
  const rewindButton = createRewindButton(player);
7
8
  const forwardButton = createForwardButton(player);
8
- const chromeCastButton = new CastToggleButton({
9
- hidden: true
10
- });
9
+ const chromeCastButton = createCastToggleButton();
10
+ chromeCastButton.hide();
11
11
  player.on(PlayerEvent.CastAvailable, () => {
12
12
  if (player.isCastAvailable())
13
13
  chromeCastButton.show();
@@ -32,17 +32,17 @@ export function createControlBar(player, settingsPanel) {
32
32
  }),
33
33
  new Container({
34
34
  components: [
35
- new PlaybackToggleButton(),
36
- new VolumeToggleButton(),
35
+ createPlaybackToggleButton(),
36
+ createVolumeToggleButton(),
37
37
  new VolumeSlider(),
38
38
  rewindButton,
39
39
  forwardButton,
40
40
  new Spacer(),
41
- ...(document.pictureInPictureEnabled && /^((?!chrome|android).)*safari/i.test(navigator.userAgent) ? [new PictureInPictureToggleButton()] : []),
42
- ...(airPlaySupported() ? [new AirPlayToggleButton()] : []),
41
+ ...(document.pictureInPictureEnabled && /^((?!chrome|android).)*safari/i.test(navigator.userAgent) ? [createPictureInPictureToggleButton()] : []),
42
+ ...(airPlaySupported() ? [createAirPlayToggleButton()] : []),
43
43
  chromeCastButton,
44
44
  new SettingsToggleButton({ settingsPanel }),
45
- new FullscreenToggleButton()
45
+ createFullscreenToggleButton()
46
46
  ],
47
47
  cssClasses: ['controlbar-bottom']
48
48
  })
@@ -1 +1 @@
1
- {"version":3,"file":"controlbar.js","sourceRoot":"","sources":["../../../../../../src/js/ui/components/nativemobile/controlbar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,WAAW,EAAE,MAAM,iBAAiB,CAAA;AACxD,OAAO,EACH,UAAU,EACV,SAAS,EACT,iBAAiB,EACjB,qBAAqB,EACrB,OAAO,EACP,YAAY,EAEZ,oBAAoB,EACpB,kBAAkB,EAClB,YAAY,EACZ,MAAM,EACN,4BAA4B,EAC5B,mBAAmB,EACnB,oBAAoB,EACpB,sBAAsB,EACtB,gBAAgB,EACnB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;AAE/D,MAAM,UAAU,gBAAgB,CAC5B,MAAiB,EACjB,aAA4B;IAE5B,MAAM,YAAY,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAA;IAC/C,MAAM,aAAa,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAA;IAEjD,MAAM,gBAAgB,GAAG,IAAI,gBAAgB,CAAC;QAC1C,MAAM,EAAE,IAAI;KACf,CAAC,CAAA;IAEF,MAAM,CAAC,EAAE,CAAC,WAAW,CAAC,aAAa,EAAE,GAAG,EAAE;QACtC,IAAG,MAAM,CAAC,eAAe,EAAE;YAAE,gBAAgB,CAAC,IAAI,EAAE,CAAA;IACxD,CAAC,CAAC,CAAA;IAEF,OAAO,IAAI,UAAU,CAAC;QAClB,UAAU,EAAE;YACR,aAAa;YACb,IAAI,SAAS,CAAC;gBACV,UAAU,EAAE;oBACR,IAAI,iBAAiB,CAAC;wBAClB,aAAa,EAAE,qBAAqB,CAAC,WAAW;wBAChD,kBAAkB,EAAE,IAAI;wBACxB,UAAU,EAAE,CAAC,cAAc,CAAC;qBAC/B,CAAC;oBACF,IAAI,OAAO,CAAC,EAAE,KAAK,EAAE,IAAI,YAAY,EAAE,EAAE,CAAC;oBAC1C,IAAI,iBAAiB,CAAC;wBAClB,aAAa,EAAE,qBAAqB,CAAC,SAAS;wBAC9C,UAAU,EAAE,CAAC,YAAY,CAAC;qBAC7B,CAAC;iBACL;gBACD,UAAU,EAAE,CAAC,gBAAgB,CAAC;aACjC,CAAC;YACF,IAAI,SAAS,CAAC;gBACV,UAAU,EAAE;oBACR,IAAI,oBAAoB,EAAE;oBAC1B,IAAI,kBAAkB,EAAE;oBACxB,IAAI,YAAY,EAAE;oBAClB,YAAY;oBACZ,aAAa;oBACb,IAAI,MAAM,EAAE;oBACZ,GAAG,CAAC,QAAQ,CAAC,uBAAuB,IAAI,gCAAgC,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,4BAA4B,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC/I,GAAG,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,mBAAmB,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC1D,gBAAgB;oBAChB,IAAI,oBAAoB,CAAC,EAAE,aAAa,EAAE,CAAC;oBAC3C,IAAI,sBAAsB,EAAE;iBAC/B;gBACD,UAAU,EAAE,CAAC,mBAAmB,CAAC;aACpC,CAAC;SACL;KACJ,CAAC,CAAA;AACN,CAAC"}
1
+ {"version":3,"file":"controlbar.js","sourceRoot":"","sources":["../../../../../../src/js/ui/components/nativemobile/controlbar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,WAAW,EAAE,MAAM,iBAAiB,CAAA;AACxD,OAAO,EACH,UAAU,EACV,SAAS,EACT,iBAAiB,EACjB,qBAAqB,EACrB,OAAO,EACP,YAAY,EAEZ,YAAY,EACZ,MAAM,EACN,oBAAoB,GACvB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAA;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;AAC/D,OAAO,EACH,yBAAyB,EACzB,sBAAsB,EACtB,4BAA4B,EAC5B,kCAAkC,EAClC,0BAA0B,EAC1B,wBAAwB,GAC3B,MAAM,WAAW,CAAA;AAElB,MAAM,UAAU,gBAAgB,CAC5B,MAAiB,EACjB,aAA4B;IAE5B,MAAM,YAAY,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAA;IAC/C,MAAM,aAAa,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAA;IAEjD,MAAM,gBAAgB,GAAG,sBAAsB,EAAE,CAAA;IAEjD,gBAAgB,CAAC,IAAI,EAAE,CAAA;IAEvB,MAAM,CAAC,EAAE,CAAC,WAAW,CAAC,aAAa,EAAE,GAAG,EAAE;QACtC,IAAG,MAAM,CAAC,eAAe,EAAE;YAAE,gBAAgB,CAAC,IAAI,EAAE,CAAA;IACxD,CAAC,CAAC,CAAA;IAEF,OAAO,IAAI,UAAU,CAAC;QAClB,UAAU,EAAE;YACR,aAAa;YACb,IAAI,SAAS,CAAC;gBACV,UAAU,EAAE;oBACR,IAAI,iBAAiB,CAAC;wBAClB,aAAa,EAAE,qBAAqB,CAAC,WAAW;wBAChD,kBAAkB,EAAE,IAAI;wBACxB,UAAU,EAAE,CAAC,cAAc,CAAC;qBAC/B,CAAC;oBACF,IAAI,OAAO,CAAC,EAAE,KAAK,EAAE,IAAI,YAAY,EAAE,EAAE,CAAC;oBAC1C,IAAI,iBAAiB,CAAC;wBAClB,aAAa,EAAE,qBAAqB,CAAC,SAAS;wBAC9C,UAAU,EAAE,CAAC,YAAY,CAAC;qBAC7B,CAAC;iBACL;gBACD,UAAU,EAAE,CAAC,gBAAgB,CAAC;aACjC,CAAC;YACF,IAAI,SAAS,CAAC;gBACV,UAAU,EAAE;oBACR,0BAA0B,EAAE;oBAC5B,wBAAwB,EAAE;oBAC1B,IAAI,YAAY,EAAE;oBAClB,YAAY;oBACZ,aAAa;oBACb,IAAI,MAAM,EAAE;oBACZ,GAAG,CAAC,QAAQ,CAAC,uBAAuB,IAAI,gCAAgC,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,kCAAkC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBACjJ,GAAG,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,CAAC,yBAAyB,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBAC5D,gBAAgB;oBAEhB,IAAI,oBAAoB,CAAC,EAAE,aAAa,EAAE,CAAC;oBAC3C,4BAA4B,EAAE;iBACjC;gBACD,UAAU,EAAE,CAAC,mBAAmB,CAAC;aACpC,CAAC;SACL;KACJ,CAAC,CAAA;AACN,CAAC"}
@@ -1,6 +1,5 @@
1
1
  import { Container } from 'bitmovin-player-ui';
2
- import { createWatchFromStartButton } from '../nativemobile/buttons';
3
- import { createGoBackLiveButton } from '../buttons';
2
+ import { createWatchFromStartButton, createGoBackLiveButton } from '../nativemobile/buttons';
4
3
  export function createCTABar(player) {
5
4
  const goBackLiveButton = createGoBackLiveButton(player);
6
5
  const watchFromStartButton = createWatchFromStartButton();
@@ -1 +1 @@
1
- {"version":3,"file":"ctabar.js","sourceRoot":"","sources":["../../../../../../src/js/ui/components/nativemobile/ctabar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAC9C,OAAO,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAA;AACpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAA;AAGnD,MAAM,UAAU,YAAY,CAAE,MAAiB;IAC3C,MAAM,gBAAgB,GAAG,sBAAsB,CAAC,MAAM,CAAC,CAAA;IACvD,MAAM,oBAAoB,GAAG,0BAA0B,EAAE,CAAA;IAEzD,OAAO,IAAI,SAAS,CAAC;QACjB,UAAU,EAAE,CAAC,oBAAoB,EAAE,gBAAgB,CAAC;QACpD,UAAU,EAAE,CAAC,wBAAwB,CAAC;KACzC,CAAC,CAAA;AACN,CAAC"}
1
+ {"version":3,"file":"ctabar.js","sourceRoot":"","sources":["../../../../../../src/js/ui/components/nativemobile/ctabar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAC9C,OAAO,EAAE,0BAA0B,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;AAG5F,MAAM,UAAU,YAAY,CAAE,MAAiB;IAC3C,MAAM,gBAAgB,GAAG,sBAAsB,CAAC,MAAM,CAAC,CAAA;IACvD,MAAM,oBAAoB,GAAG,0BAA0B,EAAE,CAAA;IAEzD,OAAO,IAAI,SAAS,CAAC;QACjB,UAAU,EAAE,CAAC,oBAAoB,EAAE,gBAAgB,CAAC;QACpD,UAAU,EAAE,CAAC,wBAAwB,CAAC;KACzC,CAAC,CAAA;AACN,CAAC"}
@@ -1,6 +1,5 @@
1
1
  import { Container } from 'bitmovin-player-ui';
2
- import { type PlayerAPI } from 'bitmovin-player';
3
- export declare function createPlayNextScreen(player: PlayerAPI): Container<{
2
+ export declare function createPlayNextScreen(): Container<{
4
3
  components: import("bitmovin-player-ui").Button<{
5
4
  cssClass: string;
6
5
  text: string;
@@ -1,8 +1,8 @@
1
1
  import { Container } from 'bitmovin-player-ui';
2
2
  import { createPlayNextButton } from './buttons';
3
3
  import { showPlayNextScreen } from '../shared/playnextscreen';
4
- export function createPlayNextScreen(player) {
5
- const playNextButton = createPlayNextButton(player);
4
+ export function createPlayNextScreen() {
5
+ const playNextButton = createPlayNextButton();
6
6
  if (window.bitmovin.customMessageHandler) {
7
7
  window.bitmovin.customMessageHandler.on('showPlayNextScreen', () => {
8
8
  showPlayNextScreen(window.bitmovin.customMessageHandler.sendAsynchronous('doPlayNext'));
@@ -1 +1 @@
1
- {"version":3,"file":"playnext.js","sourceRoot":"","sources":["../../../../../../src/js/ui/components/nativemobile/playnext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAC9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAA;AAEhD,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAA;AAK7D,MAAM,UAAU,oBAAoB,CAAE,MAAiB;IACnD,MAAM,cAAc,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAA;IAEnD,IAAI,MAAM,CAAC,QAAQ,CAAC,oBAAoB,EAAE;QACtC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC,oBAAoB,EAAE,GAAG,EAAE;YAC/D,kBAAkB,CAAC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC,CAAC;QAC5F,CAAC,CAAC,CAAA;KACL;IAED,OAAO,IAAI,SAAS,CAAC;QACjB,UAAU,EAAE,CAAC,cAAc,CAAC;QAC5B,UAAU,EAAE,CAAC,kBAAkB,CAAC;KACnC,CAAC,CAAA;AACN,CAAC"}
1
+ {"version":3,"file":"playnext.js","sourceRoot":"","sources":["../../../../../../src/js/ui/components/nativemobile/playnext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAC9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAA;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAA;AAK7D,MAAM,UAAU,oBAAoB;IAChC,MAAM,cAAc,GAAG,oBAAoB,EAAE,CAAA;IAE7C,IAAI,MAAM,CAAC,QAAQ,CAAC,oBAAoB,EAAE;QACtC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC,oBAAoB,EAAE,GAAG,EAAE;YAC/D,kBAAkB,CAAC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC,CAAC;QAC5F,CAAC,CAAC,CAAA;KACL;IAED,OAAO,IAAI,SAAS,CAAC;QACjB,UAAU,EAAE,CAAC,cAAc,CAAC;QAC5B,UAAU,EAAE,CAAC,kBAAkB,CAAC;KACnC,CAAC,CAAA;AACN,CAAC"}
@@ -1,6 +1,6 @@
1
- import { Container, TitleBar, PictureInPictureToggleButton, AirPlayToggleButton, CastToggleButton, FullscreenToggleButton, VolumeToggleButton } from 'bitmovin-player-ui';
2
- import { createSettingsButton } from './buttons';
1
+ import { Container, TitleBar, PictureInPictureToggleButton, AirPlayToggleButton, CastToggleButton, FullscreenToggleButton, VolumeToggleButton, } from 'bitmovin-player-ui';
3
2
  import { PlayerEvent } from 'bitmovin-player';
3
+ import { createSettingsButton } from './buttons';
4
4
  export function createTopBar(player, settingsPanel) {
5
5
  const chromeCastButton = new CastToggleButton({
6
6
  hidden: true
@@ -13,12 +13,12 @@ export function createTopBar(player, settingsPanel) {
13
13
  components: [
14
14
  new Container({
15
15
  components: [
16
- new CastToggleButton(),
16
+ chromeCastButton,
17
17
  new AirPlayToggleButton(),
18
18
  createSettingsButton(settingsPanel),
19
19
  new PictureInPictureToggleButton(),
20
20
  new FullscreenToggleButton(),
21
- new VolumeToggleButton()
21
+ new VolumeToggleButton(),
22
22
  ],
23
23
  cssClasses: ['controlbar-top', 'controlbar-small']
24
24
  })
@@ -1 +1 @@
1
- {"version":3,"file":"topbar.js","sourceRoot":"","sources":["../../../../../../src/js/ui/components/nativemobile/topbar.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,SAAS,EACT,QAAQ,EACR,4BAA4B,EAC5B,mBAAmB,EACnB,gBAAgB,EAChB,sBAAsB,EACtB,kBAAkB,EACrB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAA;AAChD,OAAO,EAAa,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAExD,MAAM,UAAU,YAAY,CAAE,MAAiB,EAAE,aAA4B;IACzE,MAAM,gBAAgB,GAAG,IAAI,gBAAgB,CAAC;QAC1C,MAAM,EAAE,IAAI;KACf,CAAC,CAAA;IAEF,MAAM,CAAC,EAAE,CAAC,WAAW,CAAC,aAAa,EAAE,GAAG,EAAE;QACtC,IAAG,MAAM,CAAC,eAAe,EAAE;YAAE,gBAAgB,CAAC,IAAI,EAAE,CAAA;IACxD,CAAC,CAAC,CAAA;IAEF,OAAO,IAAI,QAAQ,CAAC;QAChB,UAAU,EAAE;YACR,IAAI,SAAS,CAAC;gBACV,UAAU,EAAE;oBACR,IAAI,gBAAgB,EAAE;oBACtB,IAAI,mBAAmB,EAAE;oBACzB,oBAAoB,CAAC,aAAa,CAAC;oBACnC,IAAI,4BAA4B,EAAE;oBAClC,IAAI,sBAAsB,EAAE;oBAC5B,IAAI,kBAAkB,EAAE;iBAC3B;gBACD,UAAU,EAAE,CAAC,gBAAgB,EAAE,kBAAkB,CAAC;aACrD,CAAC;SACL;QACD,UAAU,EAAE,CAAC,gBAAgB,CAAC;KACjC,CAAC,CAAA;AACN,CAAC"}
1
+ {"version":3,"file":"topbar.js","sourceRoot":"","sources":["../../../../../../src/js/ui/components/nativemobile/topbar.ts"],"names":[],"mappings":"AAAA,OAAO,EAEH,SAAS,EACT,QAAQ,EACR,4BAA4B,EAC5B,mBAAmB,EACnB,gBAAgB,EAChB,sBAAsB,EAEtB,kBAAkB,GACrB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,EAAa,WAAW,EAAE,MAAM,iBAAiB,CAAA;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAA;AAEhD,MAAM,UAAU,YAAY,CAAE,MAAiB,EAAE,aAA4B;IACzE,MAAM,gBAAgB,GAAG,IAAI,gBAAgB,CAAC;QAC1C,MAAM,EAAE,IAAI;KACf,CAAC,CAAA;IAEF,MAAM,CAAC,EAAE,CAAC,WAAW,CAAC,aAAa,EAAE,GAAG,EAAE;QACtC,IAAG,MAAM,CAAC,eAAe,EAAE;YAAE,gBAAgB,CAAC,IAAI,EAAE,CAAA;IACxD,CAAC,CAAC,CAAA;IAEF,OAAO,IAAI,QAAQ,CAAC;QAChB,UAAU,EAAE;YACR,IAAI,SAAS,CAAC;gBACV,UAAU,EAAE;oBACR,gBAAgB;oBAChB,IAAI,mBAAmB,EAAE;oBACzB,oBAAoB,CAAC,aAAa,CAAC;oBAEnC,IAAI,4BAA4B,EAAE;oBAClC,IAAI,sBAAsB,EAAE;oBAC5B,IAAI,kBAAkB,EAAE;iBAC3B;gBACD,UAAU,EAAE,CAAC,gBAAgB,EAAE,kBAAkB,CAAC;aACrD,CAAC;SACL;QACD,UAAU,EAAE,CAAC,gBAAgB,CAAC;KACjC,CAAC,CAAA;AACN,CAAC"}
@@ -1,6 +1,5 @@
1
1
  import { UIContainer } from 'bitmovin-player-ui';
2
2
  import { PlayerAPI } from 'bitmovin-player';
3
- import { CustomMessages } from '../../types/interfaces';
4
- export declare function sendCustomMessage(message: CustomMessages): any;
5
- export declare function getCustomMessage(message: CustomMessages): {};
3
+ import { CustomMessageHandlerInterface, CustomMessages } from '../../types/interfaces';
4
+ export declare function sendCustomMessage(message: CustomMessages, data?: CustomMessageHandlerInterface): any;
6
5
  export declare function nativeMobileUIContainer(player: PlayerAPI): UIContainer;
@@ -6,23 +6,18 @@ import { createTopBar } from './components/nativemobile/topbar';
6
6
  import { createSettingsPanel } from './components/settingspanel';
7
7
  import { createMiddleButtons } from './components/buttons';
8
8
  import { createTitleBar } from './components/nativemobile/titlebar';
9
- export function sendCustomMessage(message) {
10
- if (window.bitmovin.customMessageHandler) {
11
- return JSON.parse(window.bitmovin.customMessageHandler.sendSynchronous(message)) || {};
9
+ export function sendCustomMessage(message, data) {
10
+ try {
11
+ if (window.bitmovin.customMessageHandler) {
12
+ return JSON.parse(window.bitmovin.customMessageHandler.sendSynchronous(message, data !== undefined ? JSON.stringify(data) : '{}'));
13
+ }
12
14
  }
13
- return {};
14
- }
15
- export function getCustomMessage(message) {
16
- if (window.bitmovin.customMessageHandler) {
17
- window.bitmovin.customMessageHandler.on(message, (data) => {
18
- return JSON.parse(data || '{}');
19
- });
15
+ catch {
20
16
  }
21
- return {};
22
17
  }
23
18
  export function nativeMobileUIContainer(player) {
24
19
  const middleButtons = createMiddleButtons(player);
25
- const playNextScreen = createPlayNextScreen(player);
20
+ const playNextScreen = createPlayNextScreen();
26
21
  const settingsPanel = createSettingsPanel(player);
27
22
  const ctaBar = createCTABar(player);
28
23
  const topBar = createTopBar(player, settingsPanel);
@@ -1 +1 @@
1
- {"version":3,"file":"nativemobileuicontainer.js","sourceRoot":"","sources":["../../../../src/js/ui/nativemobileuicontainer.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,EACnB,qBAAqB,EACrB,eAAe,EACf,WAAW,GACd,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAA;AACzE,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAA;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAA;AAEvE,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAA;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AAEhE,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA;AAE1D,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAKpE,MAAM,UAAU,iBAAiB,CAAC,OAAuB;IACrD,IAAI,MAAM,CAAC,QAAQ,CAAC,oBAAoB,EAAE;QACtC,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAA;KACzF;IACD,OAAO,EAAE,CAAA;AACb,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,OAAuB;IACpD,IAAI,MAAM,CAAC,QAAQ,CAAC,oBAAoB,EAAE;QACtC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,IAAa,EAAE,EAAE;YAC/D,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC;QACpC,CAAC,CAAC,CAAA;KACL;IAED,OAAO,EAAE,CAAA;AACb,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAE,MAAiB;IACtD,MAAM,aAAa,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAA;IACjD,MAAM,cAAc,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAA;IACnD,MAAM,aAAa,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAA;IACjD,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,CAAA;IACnC,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;IAClD,MAAM,UAAU,GAAG,gBAAgB,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;IAC1D,MAAM,mBAAmB,GAAG,IAAI,mBAAmB,EAAE,CAAA;IAErD,OAAO,IAAI,WAAW,CAAC;QACnB,UAAU,EAAE;YACR,IAAI,eAAe,EAAE;YACrB,IAAI,gBAAgB,EAAE;YACtB,IAAI,qBAAqB,EAAE;YAC3B,IAAI,iBAAiB,EAAE;YACvB,cAAc;YACd,aAAa;YACb,UAAU;YACV,MAAM;YACN,MAAM;YACN,cAAc,EAAE;YAChB,mBAAmB;SACtB;QACD,UAAU,EAAE,CAAC,YAAY,EAAE,eAAe,CAAC;KAC9C,CAAC,CAAC;AACP,CAAC"}
1
+ {"version":3,"file":"nativemobileuicontainer.js","sourceRoot":"","sources":["../../../../src/js/ui/nativemobileuicontainer.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,gBAAgB,EAChB,iBAAiB,EACjB,mBAAmB,EACnB,qBAAqB,EACrB,eAAe,EACf,WAAW,GACd,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAA;AACzE,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAA;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAA;AAEvE,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAA;AAC/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AAEhE,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA;AAE1D,OAAO,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAKpE,MAAM,UAAU,iBAAiB,CAAC,OAAuB,EAAE,IAAoC;IAC3F,IAAI;QACA,IAAI,MAAM,CAAC,QAAQ,CAAC,oBAAoB,EAAE;YACtC,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,CAAC,eAAe,CAAC,OAAO,EAAE,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;SACrI;KACJ;IAAC,MAAM;KAEP;AACL,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAE,MAAiB;IACtD,MAAM,aAAa,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAA;IACjD,MAAM,cAAc,GAAG,oBAAoB,EAAE,CAAA;IAC7C,MAAM,aAAa,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAA;IACjD,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,CAAA;IACnC,MAAM,MAAM,GAAG,YAAY,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;IAClD,MAAM,UAAU,GAAG,gBAAgB,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;IAC1D,MAAM,mBAAmB,GAAG,IAAI,mBAAmB,EAAE,CAAA;IAErD,OAAO,IAAI,WAAW,CAAC;QACnB,UAAU,EAAE;YACR,IAAI,eAAe,EAAE;YACrB,IAAI,gBAAgB,EAAE;YACtB,IAAI,qBAAqB,EAAE;YAC3B,IAAI,iBAAiB,EAAE;YACvB,cAAc;YACd,aAAa;YACb,UAAU;YACV,MAAM;YACN,MAAM;YACN,cAAc,EAAE;YAChB,mBAAmB;SACtB;QACD,UAAU,EAAE,CAAC,YAAY,EAAE,eAAe,CAAC;KAC9C,CAAC,CAAC;AACP,CAAC"}