@opentok/client 2.29.2-alpha.2 → 2.29.2-alpha.3

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,11 +1,11 @@
1
1
  /**
2
- * @license OpenTok.js 2.29.2 a5982cc
2
+ * @license OpenTok.js 2.29.2 e5c16d9
3
3
  *
4
4
  * Copyright (c) 2010-2025 TokBox, Inc.
5
5
  * Subject to the applicable Software Development Kit (SDK) License Agreement:
6
6
  * https://www.vonage.com/legal/communications-apis/terms-of-use/
7
7
  *
8
- * Date: Fri, 21 Feb 2025 21:03:53 GMT
8
+ * Date: Tue, 25 Feb 2025 23:42:39 GMT
9
9
  */
10
10
 
11
11
  (function webpackUniversalModuleDefinition(root, factory) {
@@ -8291,7 +8291,7 @@ const logging = (0, _log.default)('StaticConfig');
8291
8291
  */
8292
8292
 
8293
8293
  /** @type builtInConfig */
8294
- const builtInConfig = (0, _cloneDeep.default)({"version":"v2.29.2","buildHash":"a5982cc","minimumVersion":{"firefox":52,"chrome":49},"debug":false,"websiteURL":"http://www.tokbox.com","configURL":"https://config.opentok.com","ipWhitelistConfigURL":"","cdnURL":"","loggingURL":"https://hlg.tokbox.com/prod","apiURL":"https://anvil.opentok.com"});
8294
+ const builtInConfig = (0, _cloneDeep.default)({"version":"v2.29.2","buildHash":"e5c16d9","minimumVersion":{"firefox":52,"chrome":49},"debug":false,"websiteURL":"http://www.tokbox.com","configURL":"https://config.opentok.com","ipWhitelistConfigURL":"","cdnURL":"","loggingURL":"https://hlg.tokbox.com/prod","apiURL":"https://anvil.opentok.com"});
8295
8295
  const whitelistAllowedRuntimeProperties = (0, _pick.default)(['apiURL', 'assetURL', 'cdnURL', 'sessionInfoOverrides', 'loggingURL']);
8296
8296
  const liveConfigMap = {
8297
8297
  apiUrl: 'apiURL',
@@ -24788,7 +24788,7 @@ var _listenForTracksEnded = _interopRequireDefault(__webpack_require__(586));
24788
24788
  var _OTHelpers = _interopRequireDefault(__webpack_require__(7));
24789
24789
  var _videoElementErrorMap = _interopRequireDefault(__webpack_require__(272));
24790
24790
  var _index = _interopRequireDefault(__webpack_require__(273));
24791
- var _addMediaElementListeners = _interopRequireDefault(__webpack_require__(589));
24791
+ var _mediaElementListeners = __webpack_require__(589);
24792
24792
  /* eslint-disable no-self-assign */
24793
24793
  // @todo enable the following disabled rules see OPENTOK-31136 for more info
24794
24794
  /* eslint-disable no-param-reassign, global-require, one-var */
@@ -24978,7 +24978,7 @@ function NativeVideoElementWrapperFactory(deps) {
24978
24978
  // See VIDCS-3383
24979
24979
  // Adding some extra logging to investigate a difficult to reproduce audio issue
24980
24980
  if (_env.default != null && _env.default.isDev) {
24981
- (0, _addMediaElementListeners.default)(this._domAudioOnlyVideoElement || this._domElement, event => {
24981
+ (0, _mediaElementListeners.addMediaElementListeners)(this._domAudioOnlyVideoElement || this._domElement, event => {
24982
24982
  this.trigger('mediaElementEvent', event);
24983
24983
  });
24984
24984
  }
@@ -25642,6 +25642,11 @@ function NativeVideoElementWrapperFactory(deps) {
25642
25642
  if (this._domAudioOnlyVideoElementEvents) {
25643
25643
  this._domAudioOnlyVideoElementEvents.removeAll();
25644
25644
  }
25645
+
25646
+ // See VIDCS-3383
25647
+ if (_env.default != null && _env.default.isDev) {
25648
+ (0, _mediaElementListeners.removeMediaElementListeners)(this._domAudioOnlyVideoElement || this._domElement);
25649
+ }
25645
25650
  if (this._audioOnlyVideoElementWatcher) {
25646
25651
  clearInterval(this._audioOnlyVideoElementWatcher);
25647
25652
  }
@@ -59934,7 +59939,7 @@ exports.clearBuffer = clearBuffer;
59934
59939
 
59935
59940
  var _interopRequireDefault = __webpack_require__(0);
59936
59941
  exports.__esModule = true;
59937
- exports.default = void 0;
59942
+ exports.removeMediaElementListeners = exports.addMediaElementListeners = void 0;
59938
59943
  var _env = _interopRequireDefault(__webpack_require__(3));
59939
59944
  /* global HTMLMediaElement */
59940
59945
  /* eslint-disable no-console */
@@ -59942,28 +59947,45 @@ var _env = _interopRequireDefault(__webpack_require__(3));
59942
59947
  // This is a subset of all possible HTMLMediaElement events. We leave some because we
59943
59948
  // either don't care about it (`encrypted`) or they might be too noisy (e.g., `timeupdate`).
59944
59949
  const mediaElementEvents = ['abort', 'canplay', 'canplaythrough', 'durationchange', 'emptied', 'ended', 'error', 'loadeddata', 'loadedmetadata', 'loadstart', 'pause', 'play', 'playing', 'progress', 'ratechange', 'seeked', 'seeking', 'stalled', 'suspend', 'volumechange', 'waiting'];
59950
+ const eventHandlers = {};
59951
+ const isValidElementAndEnv = (mediaElement, env) => {
59952
+ if (!(env != null && env.isDev)) {
59953
+ console.debug("Not in DEV, so won't add/remove debug listeners");
59954
+ return false;
59955
+ }
59956
+ if (!(mediaElement instanceof HTMLMediaElement)) {
59957
+ console.error('mediaElementListeners: Invalid HTMLMediaElement');
59958
+ return false;
59959
+ }
59960
+ return true;
59961
+ };
59945
59962
  const addMediaElementListeners = function addMediaElementListeners(mediaElement, triggerEvent, deps) {
59946
59963
  if (deps === void 0) {
59947
59964
  deps = {};
59948
59965
  }
59949
59966
  const env = deps.env || _env.default;
59950
- if (!(env != null && env.isDev)) {
59951
- console.debug("Not in DEV, so won't add debug listeners");
59952
- return;
59953
- }
59954
- if (!(mediaElement instanceof HTMLMediaElement)) {
59955
- console.error('addMediaElementListeners: Invalid HTMLMediaElement');
59956
- return;
59967
+ if (!isValidElementAndEnv(mediaElement, env)) return;
59968
+ mediaElementEvents.forEach(eventName => {
59969
+ eventHandlers[eventName] = event => {
59970
+ triggerEvent(`mediaElement:${eventName}`);
59971
+ console.debug(`HTMLMediaElement triggered: ${eventName}`, event);
59972
+ };
59973
+ mediaElement.addEventListener(eventName, eventHandlers[eventName]);
59974
+ });
59975
+ };
59976
+ exports.addMediaElementListeners = addMediaElementListeners;
59977
+ const removeMediaElementListeners = function removeMediaElementListeners(mediaElement, deps) {
59978
+ if (deps === void 0) {
59979
+ deps = {};
59957
59980
  }
59981
+ const env = deps.env || _env.default;
59982
+ if (!isValidElementAndEnv(mediaElement, env)) return;
59958
59983
  mediaElementEvents.forEach(event => {
59959
- mediaElement.addEventListener(event, e => {
59960
- triggerEvent(`mediaElement:${event}`);
59961
- console.debug(`HTMLMediaElement triggered: ${event}`, e);
59962
- });
59984
+ mediaElement.removeEventListener(event, eventHandlers[event]);
59985
+ delete eventHandlers[event];
59963
59986
  });
59964
59987
  };
59965
- var _default = addMediaElementListeners;
59966
- exports.default = _default;
59988
+ exports.removeMediaElementListeners = removeMediaElementListeners;
59967
59989
 
59968
59990
  /***/ }),
59969
59991
  /* 590 */