@npo/player 1.13.2 → 1.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (71) hide show
  1. package/lib/js/checks/{safari.d.ts → apple.d.ts} +1 -0
  2. package/lib/js/checks/{safari.js → apple.js} +11 -1
  3. package/lib/js/checks/apple.js.map +1 -0
  4. package/lib/js/checks/apple.test.js +21 -0
  5. package/lib/js/checks/apple.test.js.map +1 -0
  6. package/lib/js/drm/drm.d.ts +2 -0
  7. package/lib/js/drm/drm.js +3 -0
  8. package/lib/js/drm/drm.js.map +1 -0
  9. package/lib/js/drm/handlers/decideprofile.d.ts +3 -0
  10. package/lib/js/drm/handlers/decideprofile.js +52 -0
  11. package/lib/js/drm/handlers/decideprofile.js.map +1 -0
  12. package/lib/js/drm/{verifydrm.d.ts → handlers/verifydrm.d.ts} +2 -2
  13. package/lib/js/drm/{verifydrm.js → handlers/verifydrm.js} +2 -2
  14. package/lib/js/drm/handlers/verifydrm.js.map +1 -0
  15. package/lib/js/drm/handlers/verifydrm.test.js.map +1 -0
  16. package/lib/js/playeractions/handlers/handleoffsets.js.map +1 -1
  17. package/lib/js/playeractions/handlers/mediasessionactions.d.ts +2 -0
  18. package/lib/js/playeractions/handlers/mediasessionactions.js +107 -0
  19. package/lib/js/playeractions/handlers/mediasessionactions.js.map +1 -0
  20. package/lib/js/playeractions/handlers/processplayerconfig.js +2 -2
  21. package/lib/js/playeractions/handlers/processplayerconfig.js.map +1 -1
  22. package/lib/js/playeractions/handlers/processsourceconfig.d.ts +3 -0
  23. package/lib/js/playeractions/handlers/processsourceconfig.js +158 -0
  24. package/lib/js/playeractions/handlers/processsourceconfig.js.map +1 -0
  25. package/lib/js/playeractions/playeractions.d.ts +1 -0
  26. package/lib/js/playeractions/playeractions.js +1 -0
  27. package/lib/js/playeractions/playeractions.js.map +1 -1
  28. package/lib/js/tracking/handlers/eventlogging.js +1 -1
  29. package/lib/js/tracking/handlers/eventlogging.js.map +1 -1
  30. package/lib/js/ui/components/nativemobile/buttons.d.ts +1 -1
  31. package/lib/js/ui/components/nativemobile/buttons.js +34 -33
  32. package/lib/js/ui/components/nativemobile/buttons.js.map +1 -1
  33. package/lib/js/ui/components/nativemobile/controlbar.js +6 -13
  34. package/lib/js/ui/components/nativemobile/controlbar.js.map +1 -1
  35. package/lib/js/ui/components/nativemobile/topbar.js +7 -15
  36. package/lib/js/ui/components/nativemobile/topbar.js.map +1 -1
  37. package/lib/js/ui/components/shared/playnextscreen.js +1 -1
  38. package/lib/js/ui/components/shared/playnextscreen.js.map +1 -1
  39. package/lib/js/ui/nativemobileuicontainer.d.ts +1 -1
  40. package/lib/js/ui/nativemobileuicontainer.js +11 -3
  41. package/lib/js/ui/nativemobileuicontainer.js.map +1 -1
  42. package/lib/js/ui/nativemobileuifactory.js +4 -4
  43. package/lib/js/ui/nativemobileuifactory.js.map +1 -1
  44. package/lib/js/utilities/utilities.js +3 -1
  45. package/lib/js/utilities/utilities.js.map +1 -1
  46. package/lib/npoplayer.d.ts +2 -4
  47. package/lib/npoplayer.js +8 -215
  48. package/lib/npoplayer.js.map +1 -1
  49. package/lib/package.json +2 -2
  50. package/lib/src/js/checks/{safari.d.ts → apple.d.ts} +1 -0
  51. package/lib/src/js/drm/drm.d.ts +2 -0
  52. package/lib/src/js/drm/handlers/decideprofile.d.ts +3 -0
  53. package/lib/src/js/drm/{verifydrm.d.ts → handlers/verifydrm.d.ts} +2 -2
  54. package/lib/src/js/playeractions/handlers/mediasessionactions.d.ts +2 -0
  55. package/lib/src/js/playeractions/handlers/processsourceconfig.d.ts +3 -0
  56. package/lib/src/js/playeractions/playeractions.d.ts +1 -0
  57. package/lib/src/js/ui/components/nativemobile/buttons.d.ts +1 -1
  58. package/lib/src/js/ui/nativemobileuicontainer.d.ts +1 -1
  59. package/lib/src/npoplayer.d.ts +2 -4
  60. package/package.json +2 -2
  61. package/src/scss/npoplayer.css +21 -18
  62. package/lib/js/checks/safari.js.map +0 -1
  63. package/lib/js/checks/safari.test.js +0 -21
  64. package/lib/js/checks/safari.test.js.map +0 -1
  65. package/lib/js/drm/verifydrm.js.map +0 -1
  66. package/lib/js/drm/verifydrm.test.js.map +0 -1
  67. /package/lib/js/checks/{safari.test.d.ts → apple.test.d.ts} +0 -0
  68. /package/lib/js/drm/{verifydrm.test.d.ts → handlers/verifydrm.test.d.ts} +0 -0
  69. /package/lib/js/drm/{verifydrm.test.js → handlers/verifydrm.test.js} +0 -0
  70. /package/lib/src/js/checks/{safari.test.d.ts → apple.test.d.ts} +0 -0
  71. /package/lib/src/js/drm/{verifydrm.test.d.ts → handlers/verifydrm.test.d.ts} +0 -0
package/lib/npoplayer.js CHANGED
@@ -1,9 +1,9 @@
1
- import { HttpResponseType, Player, PlayerEvent, } from 'bitmovin-player';
1
+ import { Player, PlayerEvent, } from 'bitmovin-player';
2
2
  import AdsModuleBM from 'bitmovin-player/modules/bitmovinplayer-advertising-bitmovin';
3
3
  import { logEvent, initPlayerTracker, startPlayerTracker } from './js/tracking/playertracker';
4
4
  import { hidePlayNextScreen, showPlayNextScreen } from './js/ui/components/shared/playnextscreen';
5
5
  import * as utility from './js/utilities/utilities';
6
- import { verifyDRM } from './js/drm/verifydrm';
6
+ import * as drm from './js/drm/drm';
7
7
  import { setFragments } from './js/fragments/setfragments';
8
8
  import * as playerAction from './js/playeractions/playeractions';
9
9
  import { getStreamObject } from './js/api/getstreamobject';
@@ -13,11 +13,11 @@ import { customSpecificErrorMessageOverlayConfig } from './js/playeractions/hand
13
13
  import { createUIContainer } from './js/ui/uicontainer';
14
14
  import { processNicam } from './js/ui/handlers/nicamhandler';
15
15
  import { addAccessibilityAttributes } from './js/ui/handlers/accessibilityhandler';
16
- import { npoCdnProviders } from './js/cdnproviders';
17
16
  import { LogEmitter } from './types/classes';
18
17
  import { handlePreRolls } from './js/ads/ster';
19
18
  import pkg from '../package.json';
20
19
  import { nativeMobileUiFactory } from './js/ui/nativemobileuifactory';
20
+ import { setupMediaSessionActionHandlers } from './js/playeractions/handlers/mediasessionactions';
21
21
  export default class NpoPlayer {
22
22
  constructor(_container, _playerConfig, _npotag, _npotaginstance) {
23
23
  this.playerConfig = _playerConfig;
@@ -69,6 +69,7 @@ export default class NpoPlayer {
69
69
  const isMedia = await utility.isMediaUrl(source);
70
70
  if (isMedia) {
71
71
  this.sourceConfig = {
72
+ ...options.sourceConfig,
72
73
  "progressive": source
73
74
  };
74
75
  this.player?.load(this.sourceConfig);
@@ -78,7 +79,7 @@ export default class NpoPlayer {
78
79
  }
79
80
  else {
80
81
  this.jwt = source;
81
- const profile = await this.decideProfile(options?.preferredDRM ?? '');
82
+ const profile = await drm.decideProfile(this.player, options?.preferredDRM ?? '');
82
83
  const defaultEndpoint = 'https://prod.npoplayer.nl/';
83
84
  const endpoint = options?.endpoint ?? defaultEndpoint;
84
85
  const payload = {
@@ -98,8 +99,8 @@ export default class NpoPlayer {
98
99
  if (this.streamObject?.stream == undefined)
99
100
  return;
100
101
  const drmType = this.streamObject.stream.drmType ?? null;
101
- this.sourceConfig = this.processSourceConfig(options.sourceConfig ?? {}, this.streamObject, drmType && drmType.length > 0 ? profile.drm : null);
102
- await verifyDRM(this, this.player, payload);
102
+ this.sourceConfig = playerAction.processSourceConfig(options.sourceConfig ?? {}, this.streamObject, drmType && drmType.length > 0 ? profile.drm : null);
103
+ await drm.verifyDRM(this, this.player, payload);
103
104
  if (_streamObject.segment != null) {
104
105
  const seg = _streamObject.segment;
105
106
  const section = {
@@ -116,6 +117,7 @@ export default class NpoPlayer {
116
117
  element.textContent = this.sourceConfig.title || '';
117
118
  }
118
119
  }
120
+ setupMediaSessionActionHandlers(this.player, this.sourceConfig, _streamObject);
119
121
  logEvent(this, 'load');
120
122
  handlePreRolls(this.player, _streamObject, this);
121
123
  startPlayerTracker(this, utility.validateStreamLength(_streamObject.metadata.duration, false), this.version, _streamObject.metadata.prid);
@@ -123,11 +125,7 @@ export default class NpoPlayer {
123
125
  processNicam(this.streamObject, this.container.id, options);
124
126
  this.player.off(PlayerEvent.SourceLoaded, () => { void addAccessibilityAttributes(this.container, this.streamObject.metadata); });
125
127
  this.player.on(PlayerEvent.SourceLoaded, () => { void addAccessibilityAttributes(this.container, this.streamObject.metadata); });
126
- const drmType = this.streamObject.stream.drmType ?? null;
127
- this.sourceConfig = this.processSourceConfig(options.sourceConfig ?? {}, this.streamObject, drmType && drmType.length > 0 ? this.drmProfile.drm : null);
128
128
  if (this.sourceConfig?.metadata) {
129
- this.sourceConfig.metadata.streamProfile = this.drmProfile.profileName;
130
- this.sourceConfig.metadata.drmType = this.drmProfile.drm;
131
129
  this.sourceConfig.metadata.jwt = source;
132
130
  this.sourceConfig.metadata.av_type = this.streamObject.stream.avType;
133
131
  }
@@ -195,201 +193,6 @@ export default class NpoPlayer {
195
193
  void setFragments(this.player, this.uiManager, fragments);
196
194
  }
197
195
  }
198
- async decideProfile(preferredDRM = '') {
199
- let bestWithDRM = '';
200
- let bestWithoutDRM = '';
201
- let bestDRM = '';
202
- let supportedTech;
203
- let supportedDRM;
204
- if (this.player == null) {
205
- console.error('No player detected');
206
- return { profileName: '', drm: '' };
207
- }
208
- else {
209
- supportedTech = this.player.getSupportedTech();
210
- supportedDRM = await this.player.getSupportedDRM();
211
- }
212
- supportedTech.forEach(function (tech) {
213
- if (bestWithoutDRM === '')
214
- bestWithoutDRM = tech.streaming;
215
- if (bestWithDRM !== '')
216
- return;
217
- if (tech.streaming === 'dash') {
218
- supportedDRM.forEach(function (drm) {
219
- if (bestDRM !== '' &&
220
- (preferredDRM === '' || preferredDRM.length > 0)) {
221
- return;
222
- }
223
- if (['com.widevine.alpha'].includes(drm)) {
224
- bestDRM = 'widevine';
225
- }
226
- if ([
227
- 'com.microsoft.playready',
228
- 'com.microsoft.playready.recommendation'
229
- ].includes(drm)) {
230
- bestDRM = 'playready';
231
- }
232
- });
233
- if (bestDRM !== '')
234
- bestWithDRM = 'dash';
235
- }
236
- if (tech.streaming === 'hls') {
237
- if (bestDRM !== '' &&
238
- (preferredDRM === '' || bestDRM === preferredDRM)) {
239
- return;
240
- }
241
- supportedDRM.forEach(function (drm) {
242
- if (['com.apple.fps.1_0', 'com.apple.fps.2_0'].includes(drm)) {
243
- bestDRM = 'fairplay';
244
- }
245
- });
246
- if (bestDRM !== '')
247
- bestWithDRM = 'hls';
248
- }
249
- });
250
- if (bestWithDRM !== '')
251
- return { profileName: bestWithDRM, drm: bestDRM };
252
- return { profileName: bestWithoutDRM, drm: bestDRM };
253
- }
254
- processSourceConfig(_sourceConfig = {}, _streamObject, drm = null) {
255
- const sourceConfig = {};
256
- sourceConfig.title =
257
- _sourceConfig.title ?? _streamObject.metadata.title ?? '';
258
- sourceConfig.description =
259
- _sourceConfig.description ??
260
- _streamObject.metadata.description ??
261
- '';
262
- sourceConfig.poster =
263
- _sourceConfig.poster ?? _streamObject.metadata.poster ?? '';
264
- sourceConfig.metadata = {
265
- title: sourceConfig.title,
266
- description: sourceConfig.description,
267
- poster: sourceConfig.poster
268
- };
269
- sourceConfig.subtitleTracks =
270
- _sourceConfig.subtitleTracks ??
271
- (_streamObject.assets.subtitles
272
- ? _streamObject.assets.subtitles.map((subtitle, i) => ({
273
- url: subtitle.location,
274
- lang: subtitle.iso,
275
- label: subtitle.name,
276
- kind: 'subtitle',
277
- id: 'sub' + i
278
- }))
279
- : undefined);
280
- sourceConfig.thumbnailTrack =
281
- _sourceConfig.thumbnailTrack ??
282
- _streamObject.assets.scrubbingThumbnail
283
- ? { url: _streamObject.assets.scrubbingThumbnail }
284
- : undefined;
285
- sourceConfig.options = _sourceConfig.options;
286
- const streamProfile = _streamObject.stream.streamProfile;
287
- const streamURL = _streamObject.stream.streamURL;
288
- const hlsConfig = _sourceConfig.hls === '' ? undefined : _sourceConfig.hls;
289
- const dashConfig = _sourceConfig.dash === '' ? undefined : _sourceConfig.dash;
290
- const progressiveConfig = _sourceConfig.progressive === '' ? undefined : _sourceConfig.progressive;
291
- if (streamProfile === 'hls') {
292
- sourceConfig.hls = hlsConfig ?? streamURL ?? '';
293
- sourceConfig.dash = '';
294
- sourceConfig.progressive = '';
295
- }
296
- else if (streamProfile === 'dash') {
297
- sourceConfig.hls = '';
298
- sourceConfig.dash = dashConfig ?? streamURL ?? '';
299
- sourceConfig.progressive = '';
300
- }
301
- else if (streamProfile === 'progressive') {
302
- sourceConfig.hls = '';
303
- sourceConfig.dash = '';
304
- sourceConfig.progressive = progressiveConfig ?? streamURL ?? '';
305
- }
306
- const npoDrmGateway = 'https://npo-drm-gateway.samgcloud.nepworldwide.nl/authentication?custom_data=';
307
- if (drm === 'fairplay') {
308
- sourceConfig.drm = {
309
- fairplay: {
310
- certificateURL: 'https://fairplay.npo.nl/certificate/fairplay.cer',
311
- LA_URL: npoDrmGateway + _streamObject.stream.drmToken,
312
- prepareMessage: event => {
313
- return new Uint8Array(event.message);
314
- },
315
- prepareContentId: url => {
316
- const link = document.createElement('a');
317
- const trimmedUrl = url
318
- .split('')
319
- .filter(char => !(char.codePointAt(0) == null))
320
- .join('');
321
- link.href = trimmedUrl.replace('T', '');
322
- return link.hostname;
323
- },
324
- prepareLicense: license => {
325
- let binary = '';
326
- const bytes = new Uint8Array(license);
327
- const len = bytes.byteLength;
328
- for (let i = 0; i < len; i++) {
329
- binary += String.fromCharCode(bytes[i]);
330
- }
331
- return window.btoa(binary);
332
- },
333
- licenseResponseType: HttpResponseType.ARRAYBUFFER,
334
- useUint16InitData: true
335
- }
336
- };
337
- }
338
- if (drm === 'widevine') {
339
- sourceConfig.drm = {
340
- widevine: {
341
- LA_URL: npoDrmGateway + _streamObject.stream.drmToken,
342
- audioRobustness: 'SW_SECURE_CRYPTO',
343
- videoRobustness: 'SW_SECURE_CRYPTO'
344
- }
345
- };
346
- }
347
- if (drm === 'playready') {
348
- sourceConfig.drm = {
349
- playready: {
350
- LA_URL: npoDrmGateway + _streamObject.stream.drmToken
351
- }
352
- };
353
- }
354
- const streamSource = _streamObject.stream.streamURL;
355
- let cdnString = streamSource;
356
- npoCdnProviders.forEach(function (value, key) {
357
- if (streamSource.includes(key)) {
358
- cdnString = value;
359
- }
360
- });
361
- if (sourceConfig.analytics == null)
362
- sourceConfig.analytics = {};
363
- sourceConfig.analytics.cdnProvider = cdnString;
364
- sourceConfig.analytics.videoId = _streamObject.metadata.prid;
365
- sourceConfig.analytics.title = _streamObject.metadata.title;
366
- sourceConfig.analytics = {
367
- ...sourceConfig.analytics,
368
- ..._sourceConfig.analytics
369
- };
370
- const getSubtitleLabels = function (data) {
371
- if (data.label === 'nl') {
372
- return 'Nederlands';
373
- }
374
- return data.label;
375
- };
376
- const getQualityLabels = function (data) {
377
- return data.height + 'p';
378
- };
379
- if (sourceConfig.progressive !== '') {
380
- sourceConfig.labeling = {
381
- dash: {
382
- qualities: getQualityLabels,
383
- subtitles: getSubtitleLabels
384
- },
385
- hls: {
386
- qualities: getQualityLabels,
387
- subtitles: getSubtitleLabels
388
- }
389
- };
390
- }
391
- return sourceConfig;
392
- }
393
196
  doError(input, status) {
394
197
  if (this.player == null)
395
198
  return;
@@ -482,16 +285,6 @@ export default class NpoPlayer {
482
285
  return false;
483
286
  }
484
287
  }
485
- isFairPlayDrmSupported(ks) {
486
- let isSupported = false;
487
- ['com.apple.fps.1_0', 'com.apple.fps.2_0'].forEach(ks => {
488
- if (typeof window.WebKitMediaKeys === 'function' &&
489
- Boolean(window.WebKitMediaKeys?.isTypeSupported(ks, 'video/mp4'))) {
490
- isSupported = true;
491
- }
492
- });
493
- return isSupported;
494
- }
495
288
  }
496
289
  window.bitmovin.playerui = function () { };
497
290
  window.bitmovin.playerui.UIFactory = {
@@ -1 +1 @@
1
- {"version":3,"file":"npoplayer.js","sourceRoot":"","sources":["../../src/npoplayer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"npoplayer.js","sourceRoot":"","sources":["../../src/npoplayer.ts"],"names":[],"mappings":"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"}
package/lib/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@npo/player",
3
- "version": "1.12.1",
3
+ "version": "1.14.0",
4
4
  "description": "NPO Player",
5
5
  "author": "Publieke Omroep <player@npo.nl>",
6
6
  "contributors": [
@@ -82,7 +82,7 @@
82
82
  },
83
83
  "dependencies": {
84
84
  "@npotag/tag": "^2.1.0",
85
- "bitmovin-player": "^8.125.0",
85
+ "bitmovin-player": "8.125.0",
86
86
  "bitmovin-player-ui": "^3.48.0"
87
87
  },
88
88
  "browserslist": [
@@ -1 +1,2 @@
1
+ export declare function isFairPlayDrmSupported(): boolean;
1
2
  export declare function isSafari(isFairPlayDrmSupported: boolean): boolean;
@@ -0,0 +1,2 @@
1
+ export { verifyDRM } from './handlers/verifydrm';
2
+ export { decideProfile } from './handlers/decideprofile';
@@ -0,0 +1,3 @@
1
+ import { PlayerAPI } from "bitmovin-player";
2
+ import { type Profile } from '../../../types/interfaces';
3
+ export declare function decideProfile(player: PlayerAPI | null, preferredDRM?: string): Promise<Profile>;
@@ -1,4 +1,4 @@
1
- import type NpoPlayer from '../../npoplayer';
2
- import { type ApiPayload } from '../../types/interfaces';
1
+ import type NpoPlayer from '../../../npoplayer';
2
+ import { type ApiPayload } from '../../../types/interfaces';
3
3
  import type { PlayerAPI } from 'bitmovin-player';
4
4
  export declare function verifyDRM(npoplayer: NpoPlayer, player: PlayerAPI, payload: ApiPayload): Promise<void>;
@@ -0,0 +1,2 @@
1
+ import { PlayerAPI, SourceConfig } from "bitmovin-player";
2
+ export declare function setupMediaSessionActionHandlers(player: PlayerAPI, sourceConfig: SourceConfig, _streamObject: any): void;
@@ -0,0 +1,3 @@
1
+ import { StreamObject } from 'types/interfaces';
2
+ import { SourceConfig } from 'bitmovin-player';
3
+ export declare function processSourceConfig(_sourceConfig: SourceConfig | undefined, _streamObject: StreamObject, drm?: string | null): SourceConfig;
@@ -2,3 +2,4 @@ export { resolveKeyPress } from "./handlers/resolvekeypress";
2
2
  export { handleStartOffset, handleLiveOffsetLogic, shiftToProgramStart } from "./handlers/handleoffsets";
3
3
  export { handlePlayerError } from "./handlers/error";
4
4
  export { processPlayerConfig } from "./handlers/processplayerconfig";
5
+ export { processSourceConfig } from "./handlers/processsourceconfig";
@@ -24,4 +24,4 @@ export declare function createVolumeToggleButton(): VolumeToggleButton;
24
24
  export declare function createPictureInPictureToggleButton(): PictureInPictureToggleButton;
25
25
  export declare function createAirPlayToggleButton(): AirPlayToggleButton;
26
26
  export declare function createCastToggleButton(): CastToggleButton;
27
- export declare function createFullscreenToggleButton(): FullscreenToggleButton;
27
+ export declare function createFullscreenToggleButton(player: PlayerAPI): FullscreenToggleButton;
@@ -1,5 +1,5 @@
1
1
  import { UIContainer } from 'bitmovin-player-ui';
2
2
  import { PlayerAPI } from 'bitmovin-player';
3
3
  import { CustomMessageHandlerInterface, CustomMessages } from '../../types/interfaces';
4
- export declare function sendCustomMessage(message: CustomMessages, data?: CustomMessageHandlerInterface): any;
4
+ export declare function sendCustomMessage(message: CustomMessages, data?: CustomMessageHandlerInterface): CustomMessageHandlerInterface;
5
5
  export declare function nativeMobileUIContainer(player: PlayerAPI): UIContainer;
@@ -3,7 +3,8 @@ import { type InitialisationProps } from '@npotag/tag/dist/types/src/npoTag';
3
3
  import { type PlayerAPI, type PlayerConfig, type SourceConfig } from 'bitmovin-player';
4
4
  import { UIManager } from 'bitmovin-player-ui';
5
5
  import { LogEmitter } from './types/classes';
6
- import { type DRMProfile, type ApiPayload, type Fragments, type NPOTagObject, type Profile, type Section, type StreamObject, type StreamOptions, type UIComponents } from './types/interfaces';
6
+ import { type DRMProfile, type ApiPayload, type Fragments, type NPOTagObject, type Section, type StreamObject, type StreamOptions, type UIComponents } from './types/interfaces';
7
+ export { type PlayerConfig, type InitialisationProps, type NPOTagObject, type StreamOptions, };
7
8
  export default class NpoPlayer {
8
9
  playerConfig: PlayerConfig;
9
10
  sourceConfig: SourceConfig;
@@ -27,8 +28,6 @@ export default class NpoPlayer {
27
28
  loadStream(source: string, options?: StreamOptions): Promise<void>;
28
29
  createUIManager(player: PlayerAPI, variant: string): Promise<void>;
29
30
  setFragments(fragments: Fragments): Promise<void>;
30
- decideProfile(preferredDRM?: string): Promise<Profile>;
31
- processSourceConfig(_sourceConfig: SourceConfig | undefined, _streamObject: StreamObject, drm?: string | null): SourceConfig;
32
31
  doError(input: any, status?: number): void;
33
32
  keyPress(e: KeyboardEvent): void;
34
33
  setVolume(volume: number): void;
@@ -42,5 +41,4 @@ export default class NpoPlayer {
42
41
  doPlayNext(): void;
43
42
  destroy(): boolean;
44
43
  unload(): boolean;
45
- isFairPlayDrmSupported(ks?: any): boolean;
46
44
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@npo/player",
3
- "version": "1.13.2",
3
+ "version": "1.14.0",
4
4
  "description": "NPO Player",
5
5
  "author": "Publieke Omroep <player@npo.nl>",
6
6
  "contributors": [
@@ -82,7 +82,7 @@
82
82
  },
83
83
  "dependencies": {
84
84
  "@npotag/tag": "^2.1.0",
85
- "bitmovin-player": "^8.125.0",
85
+ "bitmovin-player": "8.125.0",
86
86
  "bitmovin-player-ui": "^3.48.0"
87
87
  },
88
88
  "browserslist": [