bigscreen-player 10.16.0 → 10.17.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.
@@ -1,5 +1,5 @@
1
1
  import { fromXML, generateISD, renderHTML } from 'smp-imsc';
2
- import { U as Utils, a as DebugTool, P as Plugins, D as DOMHelpers } from './main-bfedf7e6.js';
2
+ import { U as Utils, a as DebugTool, P as Plugins, D as DOMHelpers } from './main-e3834c42.js';
3
3
  import 'tslib';
4
4
 
5
5
  function EmbeddedSubtitles(mediaPlayer, parentElement, { autoStart = false, defaultStyleOpts = {} } = {}) {
@@ -1,5 +1,5 @@
1
1
  import { fromXML, generateISD, renderHTML } from 'smp-imsc';
2
- import { f as findSegmentTemplate, L as LoadUrl, a as DebugTool, P as Plugins, U as Utils, D as DOMHelpers } from './main-bfedf7e6.js';
2
+ import { f as findSegmentTemplate, L as LoadUrl, a as DebugTool, P as Plugins, U as Utils, D as DOMHelpers } from './main-e3834c42.js';
3
3
  import 'tslib';
4
4
 
5
5
  const SEGMENTS_BUFFER_SIZE = 3;
@@ -1,4 +1,4 @@
1
- import { D as DOMHelpers, a as DebugTool, P as Plugins, L as LoadUrl, T as TransportControlPosition } from './main-bfedf7e6.js';
1
+ import { D as DOMHelpers, a as DebugTool, P as Plugins, L as LoadUrl, T as TransportControlPosition } from './main-e3834c42.js';
2
2
  import 'tslib';
3
3
 
4
4
  /**
@@ -799,7 +799,7 @@ function createDebugTool() {
799
799
  toggleVisibility,
800
800
  };
801
801
  }
802
- const DebugTool = createDebugTool();
802
+ const DebugTool$1 = createDebugTool();
803
803
 
804
804
  const ManifestType = {
805
805
  STATIC: "static",
@@ -979,7 +979,7 @@ function LegacyPlayerAdapter(mediaSources, playbackElement, isUHD, player) {
979
979
  if (Object.prototype.hasOwnProperty.call(handleEvent, event.type)) {
980
980
  handleEvent[event.type].call(this, event);
981
981
  } else {
982
- DebugTool.info(`${getSelection()} Event:${event.type}`);
982
+ DebugTool$1.info(`${getSelection()} Event:${event.type}`);
983
983
  }
984
984
  }
985
985
 
@@ -1005,7 +1005,7 @@ function LegacyPlayerAdapter(mediaSources, playbackElement, isUHD, player) {
1005
1005
  }
1006
1006
 
1007
1007
  function onTimeUpdate(event) {
1008
- DebugTool.updateElementTime(event.currentTime);
1008
+ DebugTool$1.updateElementTime(event.currentTime);
1009
1009
 
1010
1010
  isPaused = false;
1011
1011
 
@@ -1772,7 +1772,7 @@ function Cehtml() {
1772
1772
  const clampedTime = getClampedTime(seconds);
1773
1773
 
1774
1774
  if (clampedTime !== seconds) {
1775
- DebugTool.info(
1775
+ DebugTool$1.info(
1776
1776
  "playFrom " +
1777
1777
  seconds +
1778
1778
  " clamped to " +
@@ -1814,7 +1814,7 @@ function Cehtml() {
1814
1814
  }
1815
1815
 
1816
1816
  function reportError(errorMessage) {
1817
- DebugTool.info(errorMessage);
1817
+ DebugTool$1.info(errorMessage);
1818
1818
  emitEvent(MediaPlayerBase.EVENT.ERROR, { errorMessage: errorMessage });
1819
1819
  }
1820
1820
 
@@ -2312,7 +2312,7 @@ function Html5() {
2312
2312
  }
2313
2313
 
2314
2314
  function reportError(errorString, mediaError) {
2315
- DebugTool.info("HTML5 Media Player error: " + errorString);
2315
+ DebugTool$1.info("HTML5 Media Player error: " + errorString);
2316
2316
  emitEvent(MediaPlayerBase.EVENT.ERROR, mediaError);
2317
2317
  }
2318
2318
 
@@ -3260,7 +3260,7 @@ function SamsungMaple() {
3260
3260
  const clampedTime = getClampedTime(seconds);
3261
3261
 
3262
3262
  if (clampedTime !== seconds) {
3263
- DebugTool.info(
3263
+ DebugTool$1.info(
3264
3264
  "playFrom " +
3265
3265
  seconds +
3266
3266
  " clamped to " +
@@ -3396,7 +3396,7 @@ function SamsungMaple() {
3396
3396
  }
3397
3397
 
3398
3398
  function _reportError(errorMessage) {
3399
- DebugTool.info(errorMessage);
3399
+ DebugTool$1.info(errorMessage);
3400
3400
  _emitEvent(MediaPlayerBase.EVENT.ERROR, { errorMessage: errorMessage });
3401
3401
  }
3402
3402
 
@@ -4062,7 +4062,7 @@ function SamsungStreaming() {
4062
4062
  const clampedTime = _getClampedTime(seconds);
4063
4063
 
4064
4064
  if (clampedTime !== seconds) {
4065
- DebugTool.info(
4065
+ DebugTool$1.info(
4066
4066
  "playFrom " +
4067
4067
  seconds +
4068
4068
  " clamped to " +
@@ -4246,7 +4246,7 @@ function SamsungStreaming() {
4246
4246
  }
4247
4247
 
4248
4248
  function _reportError(errorMessage) {
4249
- DebugTool.info(errorMessage);
4249
+ DebugTool$1.info(errorMessage);
4250
4250
  _emitEvent(MediaPlayerBase.EVENT.ERROR, { errorMessage: errorMessage });
4251
4251
  }
4252
4252
 
@@ -4851,7 +4851,7 @@ function SamsungStreaming2015() {
4851
4851
  const clampedTime = _getClampedTime(seconds);
4852
4852
 
4853
4853
  if (clampedTime !== seconds) {
4854
- DebugTool.info(
4854
+ DebugTool$1.info(
4855
4855
  "playFrom " +
4856
4856
  seconds +
4857
4857
  " clamped to " +
@@ -5034,7 +5034,7 @@ function SamsungStreaming2015() {
5034
5034
  }
5035
5035
 
5036
5036
  function _reportError(errorMessage) {
5037
- DebugTool.info(errorMessage);
5037
+ DebugTool$1.info(errorMessage);
5038
5038
  _emitEvent(MediaPlayerBase.EVENT.ERROR, { errorMessage: errorMessage });
5039
5039
  }
5040
5040
 
@@ -5197,7 +5197,7 @@ function autoResumeAtStartOfRange(currentTime, seekableRange, addEventCallback,
5197
5197
  const duration = end - start;
5198
5198
  const windowLengthInSeconds = timeShiftBufferDepthInSeconds && duration < timeShiftBufferDepthInSeconds ? timeShiftBufferDepthInSeconds : duration;
5199
5199
  const resumeTimeOut = Math.max(0, windowLengthInSeconds - (end - currentTime) - AUTO_RESUME_WINDOW_START_CUSHION_SECONDS);
5200
- DebugTool.dynamicMetric("auto-resume", resumeTimeOut);
5200
+ DebugTool$1.dynamicMetric("auto-resume", resumeTimeOut);
5201
5201
  const autoResumeTimer = setTimeout(() => {
5202
5202
  removeEventCallback(undefined, detectIfUnpaused);
5203
5203
  resume();
@@ -5530,7 +5530,7 @@ function BasicStrategy(mediaSources, mediaKind, playbackElement) {
5530
5530
  }
5531
5531
 
5532
5532
  function onTimeUpdate() {
5533
- DebugTool.updateElementTime(mediaElement.currentTime);
5533
+ DebugTool$1.updateElementTime(mediaElement.currentTime);
5534
5534
 
5535
5535
  publishTimeUpdate();
5536
5536
  }
@@ -5710,7 +5710,7 @@ BasicStrategy.getLiveSupport = () => LiveSupport.SEEKABLE;
5710
5710
  function StrategyPicker() {
5711
5711
  return new Promise((resolve, reject) => {
5712
5712
  if (window.bigscreenPlayer.playbackStrategy === PlaybackStrategy.MSE) {
5713
- return import('./msestrategy-b3da415e.js')
5713
+ return import('./msestrategy-57d05400.js')
5714
5714
  .then(({ default: MSEStrategy }) => resolve(MSEStrategy))
5715
5715
  .catch((reason) => {
5716
5716
  const error = new Error(isError(reason) ? reason.message : undefined);
@@ -5967,6 +5967,7 @@ function CallCallbacks(callbacks, data) {
5967
5967
  }
5968
5968
 
5969
5969
  let plugins = [];
5970
+ const pluginContext = {};
5970
5971
 
5971
5972
  function callOnAllPlugins(funcKey, evt) {
5972
5973
  const clonedEvent = Utils.deepClone(evt);
@@ -5978,8 +5979,37 @@ function callOnAllPlugins(funcKey, evt) {
5978
5979
  }
5979
5980
 
5980
5981
  var Plugins = {
5982
+ /**
5983
+ * @param {function (*): *} updater - a function which accepts the current context, and returns a new context
5984
+ */
5985
+ updateContext: (updater) => {
5986
+ const newContext = updater(Utils.deepClone(pluginContext));
5987
+
5988
+ if (typeof newContext !== "object") {
5989
+ throw new TypeError("context must be an object")
5990
+ }
5991
+
5992
+ // update object (preserving reference)
5993
+ for (const prop of Object.keys(pluginContext)) {
5994
+ delete pluginContext[prop];
5995
+ }
5996
+
5997
+ Object.assign(pluginContext, newContext);
5998
+
5999
+ // call context update handlers
6000
+ for (const plugin of plugins) {
6001
+ plugin.onContextUpdated?.(pluginContext);
6002
+ }
6003
+ },
6004
+
6005
+ /**
6006
+ * @param {*} plugin - an object
6007
+ */
5981
6008
  registerPlugin: (plugin) => {
5982
6009
  plugins.push(plugin);
6010
+
6011
+ // provide initial context
6012
+ plugin.onContextUpdated?.(pluginContext);
5983
6013
  },
5984
6014
 
5985
6015
  unregisterPlugin: (plugin) => {
@@ -6349,6 +6379,9 @@ function PlayerComponent(
6349
6379
  });
6350
6380
  }
6351
6381
 
6382
+ // Not an ideal place for this, but I've been warned of a possible playercomponent rewrite
6383
+ Plugins.updateContext((context) => ({ ...context, attemptCdnFailover }));
6384
+
6352
6385
  function clearFatalErrorTimeout() {
6353
6386
  if (fatalErrorTimeout !== null) {
6354
6387
  clearTimeout(fatalErrorTimeout);
@@ -6446,10 +6479,10 @@ function PlayerComponent(
6446
6479
 
6447
6480
  if (mediaSources.isAudioDescribedEnabled()) {
6448
6481
  audioDescribedCallback(true);
6449
- DebugTool.info("Source changed. Audio Described on.");
6482
+ DebugTool$1.info("Source changed. Audio Described on.");
6450
6483
  } else if (mediaSources.isAudioDescribedAvailable()) {
6451
6484
  audioDescribedCallback(false);
6452
- DebugTool.info("Source changed. Audio Described off.");
6485
+ DebugTool$1.info("Source changed. Audio Described off.");
6453
6486
  }
6454
6487
  }
6455
6488
 
@@ -6511,7 +6544,7 @@ const PauseTriggers = {
6511
6544
  DEVICE: 3,
6512
6545
  };
6513
6546
 
6514
- var Version = "10.16.0";
6547
+ var Version = "10.17.0";
6515
6548
 
6516
6549
  /* eslint-disable no-use-before-define */
6517
6550
 
@@ -7176,7 +7209,7 @@ function parse({ body, type }) {
7176
7209
  }
7177
7210
  })
7178
7211
  .catch((error) => {
7179
- DebugTool.error(error);
7212
+ DebugTool$1.error(error);
7180
7213
  Plugins.interface.onManifestParseError({ code: error.code, message: error.message });
7181
7214
  return {
7182
7215
  manifestType: ManifestType.STATIC,
@@ -7435,7 +7468,7 @@ function MediaSources() {
7435
7468
  function isFailoverInfoValid(failoverParams) {
7436
7469
  const infoValid = typeof failoverParams === "object" && typeof failoverParams.isBufferingTimeoutError === "boolean";
7437
7470
  if (!infoValid) {
7438
- DebugTool.error("failoverInfo is not valid");
7471
+ DebugTool$1.error("failoverInfo is not valid");
7439
7472
  }
7440
7473
  return infoValid;
7441
7474
  }
@@ -7465,10 +7498,10 @@ function MediaSources() {
7465
7498
  .then(({ time: newTime, transferFormat: newTransferFormat }) => {
7466
7499
  time = newTime;
7467
7500
  transferFormat = newTransferFormat;
7468
- DebugTool.sourceLoaded(Object.assign(Object.assign({}, time), { transferFormat }));
7501
+ DebugTool$1.sourceLoaded(Object.assign(Object.assign({}, time), { transferFormat }));
7469
7502
  })
7470
7503
  .catch((reason) => {
7471
- DebugTool.error(`Failed to load manifest: ${isError(reason) ? reason.message : "cause n/a"}`);
7504
+ DebugTool$1.error(`Failed to load manifest: ${isError(reason) ? reason.message : "cause n/a"}`);
7472
7505
  return failover({
7473
7506
  isBufferingTimeoutError: false,
7474
7507
  code: PluginEnums.ERROR_CODES.MANIFEST_LOAD,
@@ -7515,7 +7548,7 @@ function MediaSources() {
7515
7548
  const failoverResetToken = setTimeout(() => {
7516
7549
  if (mediaSource == null || sources[currentSources].length === 0)
7517
7550
  return;
7518
- DebugTool.info(`${mediaSource.cdn} has been added back in to available CDNs`);
7551
+ DebugTool$1.info(`${mediaSource.cdn} has been added back in to available CDNs`);
7519
7552
  sources[currentSources].push(mediaSource);
7520
7553
  updateDebugOutput();
7521
7554
  }, failoverResetTimeMs);
@@ -7564,10 +7597,10 @@ function MediaSources() {
7564
7597
  return subtitlesSources.map((subtitleSource) => subtitleSource.cdn);
7565
7598
  }
7566
7599
  function updateDebugOutput() {
7567
- DebugTool.dynamicMetric("cdns-available", availableCdns());
7568
- DebugTool.dynamicMetric("current-url", stripQueryParamsAndHash(getCurrentUrl()));
7569
- DebugTool.dynamicMetric("subtitle-cdns-available", availableSubtitlesCdns());
7570
- DebugTool.dynamicMetric("subtitle-current-url", stripQueryParamsAndHash(getCurrentSubtitlesUrl()));
7600
+ DebugTool$1.dynamicMetric("cdns-available", availableCdns());
7601
+ DebugTool$1.dynamicMetric("current-url", stripQueryParamsAndHash(getCurrentUrl()));
7602
+ DebugTool$1.dynamicMetric("subtitle-cdns-available", availableSubtitlesCdns());
7603
+ DebugTool$1.dynamicMetric("subtitle-current-url", stripQueryParamsAndHash(getCurrentSubtitlesUrl()));
7571
7604
  }
7572
7605
  function tearDown() {
7573
7606
  failoverResetTokens.forEach((token) => clearTimeout(token));
@@ -7703,7 +7736,7 @@ function Subtitles(
7703
7736
 
7704
7737
  if (available()) {
7705
7738
  if (useLegacySubs) {
7706
- import('./legacysubtitles-cd82cb3e.js')
7739
+ import('./legacysubtitles-77573f88.js')
7707
7740
  .then(({ default: LegacySubtitles }) => {
7708
7741
  subtitlesContainer = LegacySubtitles(mediaPlayer, playbackElement, mediaSources, {
7709
7742
  alwaysOnTop,
@@ -7717,7 +7750,7 @@ function Subtitles(
7717
7750
  Plugins.interface.onSubtitlesDynamicLoadError();
7718
7751
  });
7719
7752
  } else if (embeddedSubs) {
7720
- import('./embeddedsubtitles-e981440e.js')
7753
+ import('./embeddedsubtitles-d03e3c93.js')
7721
7754
  .then(({ default: EmbeddedSubtitles }) => {
7722
7755
  subtitlesContainer = EmbeddedSubtitles(mediaPlayer, playbackElement, {
7723
7756
  autoStart,
@@ -7730,7 +7763,7 @@ function Subtitles(
7730
7763
  Plugins.interface.onSubtitlesDynamicLoadError();
7731
7764
  });
7732
7765
  } else {
7733
- import('./imscsubtitles-70f433df.js')
7766
+ import('./imscsubtitles-2ecda44e.js')
7734
7767
  .then(({ default: IMSCSubtitles }) => {
7735
7768
  subtitlesContainer = IMSCSubtitles(mediaPlayer, playbackElement, mediaSources, {
7736
7769
  alwaysOnTop,
@@ -7817,6 +7850,16 @@ function Subtitles(
7817
7850
  subtitlesContainer?.tearDown();
7818
7851
  }
7819
7852
 
7853
+ function attemptSubtitleCdnFailover(opts) {
7854
+ hide();
7855
+ mediaSources
7856
+ .failoverSubtitles(opts)
7857
+ .then(() => show())
7858
+ .catch(() => DebugTool.info("No more CDNs available for subtitle failover"));
7859
+ }
7860
+
7861
+ Plugins.updateContext((context) => ({ ...context, attemptSubtitleCdnFailover }));
7862
+
7820
7863
  return {
7821
7864
  enable,
7822
7865
  disable,
@@ -7924,7 +7967,7 @@ function BigscreenPlayer() {
7924
7967
  }
7925
7968
 
7926
7969
  stateObject.endOfStream = endOfStream;
7927
- DebugTool.statechange(evt.data.state);
7970
+ DebugTool$1.statechange(evt.data.state);
7928
7971
 
7929
7972
  CallCallbacks(_callbacks.stateChange, stateObject);
7930
7973
  }
@@ -7934,11 +7977,11 @@ function BigscreenPlayer() {
7934
7977
  typeof evt.data.seekableRange.start === "number" &&
7935
7978
  typeof evt.data.seekableRange.end === "number"
7936
7979
  ) {
7937
- DebugTool.staticMetric("seekable-range", [evt.data.seekableRange.start, evt.data.seekableRange.end]);
7980
+ DebugTool$1.staticMetric("seekable-range", [evt.data.seekableRange.start, evt.data.seekableRange.end]);
7938
7981
  }
7939
7982
 
7940
7983
  if (evt.data.duration) {
7941
- DebugTool.staticMetric("duration", evt.data.duration);
7984
+ DebugTool$1.staticMetric("duration", evt.data.duration);
7942
7985
  }
7943
7986
 
7944
7987
  if (playerComponent && readyHelper) {
@@ -8062,7 +8105,7 @@ function BigscreenPlayer() {
8062
8105
 
8063
8106
  function toggleDebug() {
8064
8107
  if (playerComponent) {
8065
- DebugTool.toggleVisibility();
8108
+ DebugTool$1.toggleVisibility();
8066
8109
  }
8067
8110
  }
8068
8111
 
@@ -8110,8 +8153,8 @@ function BigscreenPlayer() {
8110
8153
  */
8111
8154
  init: (newPlaybackElement, bigscreenPlayerData, callbacks = {}) => {
8112
8155
  playbackElement = newPlaybackElement;
8113
- DebugTool.init();
8114
- DebugTool.setRootElement(playbackElement);
8156
+ DebugTool$1.init();
8157
+ DebugTool$1.setRootElement(playbackElement);
8115
8158
  resizer = Resizer();
8116
8159
 
8117
8160
  mediaKind = bigscreenPlayerData.media.kind;
@@ -8120,15 +8163,15 @@ function BigscreenPlayer() {
8120
8163
  initialPlaybackTime = createPlaybackTime(bigscreenPlayerData.initialPlaybackTime);
8121
8164
  }
8122
8165
 
8123
- DebugTool.staticMetric("version", Version);
8166
+ DebugTool$1.staticMetric("version", Version);
8124
8167
 
8125
8168
  if (initialPlaybackTime) {
8126
8169
  const { seconds, timeline } = initialPlaybackTime;
8127
- DebugTool.staticMetric("initial-playback-time", [seconds, timeline]);
8170
+ DebugTool$1.staticMetric("initial-playback-time", [seconds, timeline]);
8128
8171
  }
8129
8172
 
8130
8173
  if (typeof window.bigscreenPlayer?.playbackStrategy === "string") {
8131
- DebugTool.staticMetric("strategy", window.bigscreenPlayer && window.bigscreenPlayer.playbackStrategy);
8174
+ DebugTool$1.staticMetric("strategy", window.bigscreenPlayer && window.bigscreenPlayer.playbackStrategy);
8132
8175
  }
8133
8176
 
8134
8177
  _callbacks.playerReady = callbacks.onSuccess;
@@ -8144,6 +8187,8 @@ function BigscreenPlayer() {
8144
8187
  callbacks.onError(reason);
8145
8188
  }
8146
8189
  });
8190
+
8191
+ Plugins.updateContext((context) => ({ ...context, mediaSources }));
8147
8192
  },
8148
8193
 
8149
8194
  /**
@@ -8178,7 +8223,7 @@ function BigscreenPlayer() {
8178
8223
  pauseTrigger = undefined;
8179
8224
  resizer = undefined;
8180
8225
  this.unregisterPlugin();
8181
- DebugTool.tearDown();
8226
+ DebugTool$1.tearDown();
8182
8227
  },
8183
8228
 
8184
8229
  /**
@@ -8279,7 +8324,7 @@ function BigscreenPlayer() {
8279
8324
  setCurrentTime(seconds, timeline) {
8280
8325
  const playbackTime = createPlaybackTime({ seconds, timeline });
8281
8326
 
8282
- DebugTool.apicall("setCurrentTime", [playbackTime.seconds.toFixed(3), playbackTime.timeline]);
8327
+ DebugTool$1.apicall("setCurrentTime", [playbackTime.seconds.toFixed(3), playbackTime.timeline]);
8283
8328
 
8284
8329
  if (playerComponent) {
8285
8330
  // this flag must be set before calling into playerComponent.setCurrentTime - as this synchronously fires a WAITING event (when native strategy).
@@ -8388,7 +8433,7 @@ function BigscreenPlayer() {
8388
8433
  * @function
8389
8434
  */
8390
8435
  play: () => {
8391
- DebugTool.apicall("play");
8436
+ DebugTool$1.apicall("play");
8392
8437
 
8393
8438
  playerComponent.play();
8394
8439
  },
@@ -8399,7 +8444,7 @@ function BigscreenPlayer() {
8399
8444
  * @param {boolean} opts.userPause
8400
8445
  */
8401
8446
  pause: (opts) => {
8402
- DebugTool.apicall("pause");
8447
+ DebugTool$1.apicall("pause");
8403
8448
 
8404
8449
  pauseTrigger = opts?.userPause || opts?.userPause == null ? PauseTriggers.USER : PauseTriggers.APP;
8405
8450
 
@@ -8574,7 +8619,7 @@ function BigscreenPlayer() {
8574
8619
  },
8575
8620
 
8576
8621
  /**
8577
- * Register a plugin for extended events.
8622
+ * Register a plugin for extended events & custom functionality.
8578
8623
  * @function
8579
8624
  * @param {*} plugin
8580
8625
  */
@@ -8616,14 +8661,14 @@ function BigscreenPlayer() {
8616
8661
  * @function
8617
8662
  * @return {Object} - Key value pairs of available log levels
8618
8663
  */
8619
- getLogLevels: () => DebugTool.logLevels,
8664
+ getLogLevels: () => DebugTool$1.logLevels,
8620
8665
 
8621
8666
  /**
8622
8667
  * @function
8623
8668
  * @param logLevel - log level to display @see getLogLevels
8624
8669
  */
8625
- setLogLevel: (level) => DebugTool.setLogLevel(level),
8626
- getDebugLogs: () => DebugTool.getDebugLogs(),
8670
+ setLogLevel: (level) => DebugTool$1.setLogLevel(level),
8671
+ getDebugLogs: () => DebugTool$1.getDebugLogs(),
8627
8672
  convertPresentationTimeToMediaSampleTimeInSeconds,
8628
8673
  convertMediaSampleTimeToPresentationTimeInSeconds,
8629
8674
  convertPresentationTimeToAvailabilityTimeInMilliseconds,
@@ -8674,4 +8719,4 @@ const WindowTypes = {
8674
8719
  SLIDING: "slidingWindow",
8675
8720
  };
8676
8721
 
8677
- export { BigscreenPlayer as B, DOMHelpers as D, EntryCategory as E, LoadUrl as L, MediaKinds as M, Plugins as P, TransportControlPosition as T, Utils as U, WindowTypes as W, DebugTool as a, LiveSupport as b, ManifestType as c, MediaState as d, autoResumeAtStartOfRange as e, findSegmentTemplate as f, MockBigscreenPlayer as g, PauseTriggers as h, PlaybackStrategy as i, TransferFormat as j, Timeline as k, isMessage as l, isMetric as m, isTrace as n };
8722
+ export { BigscreenPlayer as B, DOMHelpers as D, EntryCategory as E, LoadUrl as L, MediaKinds as M, Plugins as P, TransportControlPosition as T, Utils as U, WindowTypes as W, DebugTool$1 as a, LiveSupport as b, ManifestType as c, MediaState as d, autoResumeAtStartOfRange as e, findSegmentTemplate as f, MockBigscreenPlayer as g, PauseTriggers as h, PlaybackStrategy as i, TransferFormat as j, Timeline as k, isMessage as l, isMetric as m, isTrace as n };
@@ -262,7 +262,7 @@ declare function BigscreenPlayer(): {
262
262
  */
263
263
  mockJasmine(opts: any): void;
264
264
  /**
265
- * Register a plugin for extended events.
265
+ * Register a plugin for extended events & custom functionality.
266
266
  * @function
267
267
  * @param {*} plugin
268
268
  */
package/dist/esm/main.js CHANGED
@@ -1,2 +1,2 @@
1
- export { B as BigscreenPlayer, a as DebugTool, E as EntryCategory, b as LiveSupport, c as ManifestType, M as MediaKinds, d as MediaState, g as MockBigscreenPlayer, h as PauseTriggers, i as PlaybackStrategy, k as Timeline, j as TransferFormat, T as TransportControlPosition, W as WindowTypes, l as isMessage, m as isMetric, n as isTrace } from './main-bfedf7e6.js';
1
+ export { B as BigscreenPlayer, a as DebugTool, E as EntryCategory, b as LiveSupport, c as ManifestType, M as MediaKinds, d as MediaState, g as MockBigscreenPlayer, h as PauseTriggers, i as PlaybackStrategy, k as Timeline, j as TransferFormat, T as TransportControlPosition, W as WindowTypes, l as isMessage, m as isMetric, n as isTrace } from './main-e3834c42.js';
2
2
  import 'tslib';
@@ -1,5 +1,5 @@
1
1
  import { MediaPlayer } from 'dashjs/index';
2
- import { U as Utils, M as MediaKinds, b as LiveSupport, a as DebugTool, c as ManifestType, P as Plugins, d as MediaState, e as autoResumeAtStartOfRange, D as DOMHelpers } from './main-bfedf7e6.js';
2
+ import { U as Utils, M as MediaKinds, b as LiveSupport, a as DebugTool, c as ManifestType, P as Plugins, d as MediaState, e as autoResumeAtStartOfRange, D as DOMHelpers } from './main-e3834c42.js';
3
3
  import 'tslib';
4
4
 
5
5
  function filter(manifest, representationOptions) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bigscreen-player",
3
- "version": "10.16.0",
3
+ "version": "10.17.0",
4
4
  "type": "module",
5
5
  "description": "Simplified media playback for bigscreen devices.",
6
6
  "main": "dist/esm/main.js",