@eluvio/elv-client-js 4.0.99 → 4.0.101

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 (38) hide show
  1. package/dist/ElvClient-min.js +15 -14
  2. package/dist/ElvClient-node-min.js +14 -13
  3. package/dist/ElvFrameClient-min.js +10 -10
  4. package/dist/ElvPermissionsClient-min.js +9 -9
  5. package/dist/ElvWalletClient-min.js +15 -14
  6. package/dist/ElvWalletClient-node-min.js +14 -13
  7. package/dist/src/AuthorizationClient.js +9 -12
  8. package/dist/src/ContentObjectAudit.js +3 -3
  9. package/dist/src/ContentObjectVerification.js +3 -3
  10. package/dist/src/Crypto.js +2 -2
  11. package/dist/src/ElvClient.js +47 -28
  12. package/dist/src/ElvWallet.js +7 -5
  13. package/dist/src/EthClient.js +8 -9
  14. package/dist/src/FrameClient.js +8 -9
  15. package/dist/src/HttpClient.js +1 -2
  16. package/dist/src/Id.js +1 -2
  17. package/dist/src/PermissionsClient.js +31 -19
  18. package/dist/src/RemoteSigner.js +6 -8
  19. package/dist/src/UserProfileClient.js +35 -19
  20. package/dist/src/Utils.js +2 -3
  21. package/dist/src/abr_profiles/abr_profile_live_drm.js +18 -0
  22. package/dist/src/client/ABRPublishing.js +2 -2
  23. package/dist/src/client/AccessGroups.js +2 -2
  24. package/dist/src/client/ContentAccess.js +700 -563
  25. package/dist/src/client/ContentManagement.js +3 -3
  26. package/dist/src/client/Contracts.js +2 -2
  27. package/dist/src/client/Files.js +2 -2
  28. package/dist/src/client/LiveConf.js +13 -6
  29. package/dist/src/client/LiveStream.js +31 -41
  30. package/dist/src/client/NFT.js +2 -2
  31. package/dist/src/walletClient/ClientMethods.js +2 -2
  32. package/dist/src/walletClient/Profile.js +2 -2
  33. package/dist/src/walletClient/Utils.js +4 -4
  34. package/dist/src/walletClient/index.js +18 -15
  35. package/package.json +1 -1
  36. package/src/abr_profiles/abr_profile_live_drm.js +18 -0
  37. package/src/client/LiveConf.js +9 -0
  38. package/src/client/LiveStream.js +2 -10
@@ -2,8 +2,8 @@ var _typeof = require("@babel/runtime/helpers/typeof");
2
2
  var _defineProperty = require("@babel/runtime/helpers/defineProperty");
3
3
  var _regeneratorRuntime = require("@babel/runtime/regenerator");
4
4
  var _asyncToGenerator = require("@babel/runtime/helpers/asyncToGenerator");
5
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
6
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
5
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
6
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
7
7
  /**
8
8
  * Methods for managing content types, libraries and objects
9
9
  *
@@ -2303,7 +2303,7 @@ exports.UpdateContentObjectGraph = /*#__PURE__*/function () {
2303
2303
  return _context30.delegateYield(_loop(), "t0", 8);
2304
2304
  case 8:
2305
2305
  _ret = _context30.t0;
2306
- if (!(_typeof(_ret) === "object")) {
2306
+ if (!_ret) {
2307
2307
  _context30.next = 11;
2308
2308
  break;
2309
2309
  }
@@ -2,8 +2,8 @@ var _defineProperty = require("@babel/runtime/helpers/defineProperty");
2
2
  var _typeof = require("@babel/runtime/helpers/typeof");
3
3
  var _regeneratorRuntime = require("@babel/runtime/regenerator");
4
4
  var _asyncToGenerator = require("@babel/runtime/helpers/asyncToGenerator");
5
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
6
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
5
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
6
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
7
7
  /**
8
8
  * Methods for deploying and interacting with contracts
9
9
  *
@@ -2,8 +2,8 @@ var _toConsumableArray = require("@babel/runtime/helpers/toConsumableArray");
2
2
  var _defineProperty = require("@babel/runtime/helpers/defineProperty");
3
3
  var _regeneratorRuntime = require("@babel/runtime/regenerator");
4
4
  var _asyncToGenerator = require("@babel/runtime/helpers/asyncToGenerator");
5
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
6
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
5
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
6
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
7
7
  /**
8
8
  * Methods for accessing and managing access groups
9
9
  *
@@ -1,8 +1,8 @@
1
1
  var _defineProperty = require("@babel/runtime/helpers/defineProperty");
2
2
  var _classCallCheck = require("@babel/runtime/helpers/classCallCheck");
3
3
  var _createClass = require("@babel/runtime/helpers/createClass");
4
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
5
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
4
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
5
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
6
6
  var LadderTemplate = {
7
7
  "2160": {
8
8
  bit_rate: 14000000,
@@ -61,6 +61,8 @@ var LiveconfTemplate = {
61
61
  ingress_node_id: ""
62
62
  },
63
63
  playout_config: {
64
+ dvr_enabled: true,
65
+ dvr_max_duration: 0,
64
66
  rebroadcast_start_time_sec_epoch: 0,
65
67
  vod_enabled: false
66
68
  },
@@ -76,11 +78,12 @@ var LiveconfTemplate = {
76
78
  part_ttl: 3600,
77
79
  playout_type: "live",
78
80
  source_timescale: null,
81
+ reconnect_timeout: 600,
79
82
  xc_params: {
80
83
  audio_bitrate: 384000,
81
84
  audio_index: [0, 0, 0, 0, 0, 0, 0, 0],
82
85
  audio_seg_duration_ts: null,
83
- connection_timeout: 60,
86
+ connection_timeout: 600,
84
87
  ecodec2: "aac",
85
88
  enc_height: null,
86
89
  enc_width: null,
@@ -127,7 +130,7 @@ var LiveConf = /*#__PURE__*/function () {
127
130
  this.overwriteOriginUrl = overwriteOriginUrl;
128
131
  this.syncAudioToVideo = syncAudioToVideo;
129
132
  }
130
- _createClass(LiveConf, [{
133
+ return _createClass(LiveConf, [{
131
134
  key: "probeKind",
132
135
  value: function probeKind() {
133
136
  var fileNameSplit = this.probeData.format.filename.split(":");
@@ -242,7 +245,6 @@ var LiveConf = /*#__PURE__*/function () {
242
245
  } else {
243
246
  seg.audio = 29.76 * 48000; // Other codecs are resampled @48000
244
247
  }
245
-
246
248
  return seg;
247
249
  }
248
250
 
@@ -471,6 +473,12 @@ var LiveConf = /*#__PURE__*/function () {
471
473
  if (customSettings.part_ttl) {
472
474
  conf.live_recording.recording_config.recording_params.part_ttl = customSettings.part_ttl;
473
475
  }
476
+ if (customSettings.connection_timeout) {
477
+ conf.live_recording.recording_config.recording_params.xc_params.connection_timeout = customSettings.connection_timeout;
478
+ }
479
+ if (customSettings.reconnect_timeout) {
480
+ conf.live_recording.recording_config.recording_params.reconnect_timeout = customSettings.reconnect_timeout;
481
+ }
474
482
 
475
483
  // Fill in specifics for protocol
476
484
  switch (this.probeKind()) {
@@ -569,6 +577,5 @@ var LiveConf = /*#__PURE__*/function () {
569
577
  return conf;
570
578
  }
571
579
  }]);
572
- return LiveConf;
573
580
  }();
574
581
  exports.LiveConf = LiveConf;
@@ -823,7 +823,6 @@ exports.StreamCreate = /*#__PURE__*/function () {
823
823
  edge_write_token: edgeToken,
824
824
  state: "active" // indicates there is an active session (set to 'closed' when done)
825
825
  },
826
-
827
826
  fabric_config: {
828
827
  edge_write_token: edgeToken
829
828
  }
@@ -1445,7 +1444,6 @@ exports.StreamInsertion = /*#__PURE__*/function () {
1445
1444
  insertionInfo = {
1446
1445
  duration_sec: 0 // Minimum of video and audio duration
1447
1446
  };
1448
-
1449
1447
  ["video", "audio"].forEach(function (mt) {
1450
1448
  var stream = offeringMeta.media_struct.streams[mt];
1451
1449
  insertionInfo[mt] = {
@@ -1664,7 +1662,7 @@ exports.StreamInsertion = /*#__PURE__*/function () {
1664
1662
  */
1665
1663
  exports.StreamConfig = /*#__PURE__*/function () {
1666
1664
  var _ref22 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee11(_ref21) {
1667
- var name, _ref21$customSettings, customSettings, probeMetadata, objectId, status, libraryId, probe, mainMeta, userConfig, parsedName, hostName, streamUrl, nodes, node, endpoint, controller, timeoutId, probeUrl, lc, liveRecordingConfig, e, writeToken;
1665
+ var name, _ref21$customSettings, customSettings, probeMetadata, objectId, status, libraryId, probe, mainMeta, userConfig, parsedName, hostName, streamUrl, nodes, node, endpoint, probeUrl, lc, liveRecordingConfig, e, writeToken;
1668
1666
  return _regeneratorRuntime.wrap(function _callee11$(_context11) {
1669
1667
  while (1) switch (_context11.prev = _context11.next) {
1670
1668
  case 0:
@@ -1696,7 +1694,7 @@ exports.StreamConfig = /*#__PURE__*/function () {
1696
1694
  parsedName = userConfig.url.replace("udp://", "https://").replace("rtmp://", "https://").replace("srt://", "https://");
1697
1695
  hostName = new URL(parsedName).hostname;
1698
1696
  streamUrl = new URL(userConfig.url);
1699
- console.log("Retrieving nodes - matching", hostName);
1697
+ this.Log("Retrieving nodes - matching: ".concat(hostName));
1700
1698
  _context11.next = 20;
1701
1699
  return this.SpaceNodes({
1702
1700
  matchEndpoint: hostName
@@ -1717,7 +1715,7 @@ exports.StreamConfig = /*#__PURE__*/function () {
1717
1715
  status.node = node;
1718
1716
  endpoint = node.endpoints[0];
1719
1717
  if (probe) {
1720
- _context11.next = 56;
1718
+ _context11.next = 53;
1721
1719
  break;
1722
1720
  }
1723
1721
  this.SetNodes({
@@ -1726,73 +1724,65 @@ exports.StreamConfig = /*#__PURE__*/function () {
1726
1724
 
1727
1725
  // Probe the stream
1728
1726
  probe = {};
1729
- controller = new AbortController();
1730
- timeoutId = setTimeout(function () {
1731
- controller.abort();
1732
- }, 60 * 1000); // milliseconds
1733
- _context11.prev = 32;
1734
- _context11.next = 35;
1727
+ _context11.prev = 30;
1728
+ _context11.next = 33;
1735
1729
  return this.Rep({
1736
1730
  libraryId: libraryId,
1737
1731
  objectId: objectId,
1738
1732
  rep: "probe"
1739
1733
  });
1740
- case 35:
1734
+ case 33:
1741
1735
  probeUrl = _context11.sent;
1742
1736
  _context11.t0 = this.utils;
1743
- _context11.next = 39;
1737
+ _context11.next = 37;
1744
1738
  return HttpClient.Fetch(probeUrl, {
1745
1739
  body: JSON.stringify({
1746
1740
  "filename": streamUrl.href,
1747
1741
  "listen": true
1748
1742
  }),
1749
- method: "POST",
1750
- signal: controller.signal
1743
+ method: "POST"
1751
1744
  });
1752
- case 39:
1745
+ case 37:
1753
1746
  _context11.t1 = _context11.sent;
1754
- _context11.next = 42;
1747
+ _context11.next = 40;
1755
1748
  return _context11.t0.ResponseToJson.call(_context11.t0, _context11.t1);
1756
- case 42:
1749
+ case 40:
1757
1750
  probe = _context11.sent;
1758
- if (probe) {
1759
- clearTimeout(timeoutId);
1760
- }
1761
1751
  if (!probe.errors) {
1762
- _context11.next = 46;
1752
+ _context11.next = 43;
1763
1753
  break;
1764
1754
  }
1765
1755
  throw probe.errors[0];
1766
- case 46:
1767
- _context11.next = 55;
1756
+ case 43:
1757
+ _context11.next = 52;
1768
1758
  break;
1769
- case 48:
1770
- _context11.prev = 48;
1771
- _context11.t2 = _context11["catch"](32);
1759
+ case 45:
1760
+ _context11.prev = 45;
1761
+ _context11.t2 = _context11["catch"](30);
1772
1762
  if (!(_context11.t2.code === "ETIMEDOUT")) {
1773
- _context11.next = 54;
1763
+ _context11.next = 51;
1774
1764
  break;
1775
1765
  }
1776
1766
  throw "Stream probe time out - make sure the stream source is available";
1777
- case 54:
1767
+ case 51:
1778
1768
  throw _context11.t2;
1779
- case 55:
1769
+ case 52:
1780
1770
  probe.format.filename = streamUrl.href;
1781
- case 56:
1771
+ case 53:
1782
1772
  // Create live recording config
1783
1773
  lc = new LiveConf(probe, node.id, endpoint, false, false, true);
1784
1774
  liveRecordingConfig = lc.generateLiveConf({
1785
1775
  customSettings: customSettings
1786
1776
  }); // Store live recording config into the stream object
1787
- _context11.next = 60;
1777
+ _context11.next = 57;
1788
1778
  return this.EditContentObject({
1789
1779
  libraryId: libraryId,
1790
1780
  objectId: objectId
1791
1781
  });
1792
- case 60:
1782
+ case 57:
1793
1783
  e = _context11.sent;
1794
1784
  writeToken = e.write_token;
1795
- _context11.next = 64;
1785
+ _context11.next = 61;
1796
1786
  return this.ReplaceMetadata({
1797
1787
  libraryId: libraryId,
1798
1788
  objectId: objectId,
@@ -1800,8 +1790,8 @@ exports.StreamConfig = /*#__PURE__*/function () {
1800
1790
  metadataSubtree: "live_recording",
1801
1791
  metadata: liveRecordingConfig.live_recording
1802
1792
  });
1803
- case 64:
1804
- _context11.next = 66;
1793
+ case 61:
1794
+ _context11.next = 63;
1805
1795
  return this.ReplaceMetadata({
1806
1796
  libraryId: libraryId,
1807
1797
  objectId: objectId,
@@ -1809,22 +1799,22 @@ exports.StreamConfig = /*#__PURE__*/function () {
1809
1799
  metadataSubtree: "live_recording_config/probe_info",
1810
1800
  metadata: probe
1811
1801
  });
1812
- case 66:
1813
- _context11.next = 68;
1802
+ case 63:
1803
+ _context11.next = 65;
1814
1804
  return this.FinalizeContentObject({
1815
1805
  libraryId: libraryId,
1816
1806
  objectId: objectId,
1817
1807
  writeToken: writeToken,
1818
1808
  commitMessage: "Apply live stream configuration"
1819
1809
  });
1820
- case 68:
1810
+ case 65:
1821
1811
  status.fin = _context11.sent;
1822
1812
  return _context11.abrupt("return", status);
1823
- case 70:
1813
+ case 67:
1824
1814
  case "end":
1825
1815
  return _context11.stop();
1826
1816
  }
1827
- }, _callee11, this, [[32, 48]]);
1817
+ }, _callee11, this, [[30, 45]]);
1828
1818
  }));
1829
1819
  return function (_x11) {
1830
1820
  return _ref22.apply(this, arguments);
@@ -1,8 +1,8 @@
1
1
  var _regeneratorRuntime = require("@babel/runtime/regenerator");
2
2
  var _defineProperty = require("@babel/runtime/helpers/defineProperty");
3
3
  var _asyncToGenerator = require("@babel/runtime/helpers/asyncToGenerator");
4
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
5
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
4
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
5
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
6
6
  /**
7
7
  * Methods for creating and managing NFTs
8
8
  *
@@ -1,8 +1,8 @@
1
1
  var _defineProperty = require("@babel/runtime/helpers/defineProperty");
2
2
  var _regeneratorRuntime = require("@babel/runtime/regenerator");
3
3
  var _asyncToGenerator = require("@babel/runtime/helpers/asyncToGenerator");
4
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
5
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
4
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
5
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
6
6
  var Utils = require("../Utils");
7
7
  var UrlJoin = require("url-join");
8
8
  var _require = require("./Utils"),
@@ -2,8 +2,8 @@ var _defineProperty = require("@babel/runtime/helpers/defineProperty");
2
2
  var _typeof = require("@babel/runtime/helpers/typeof");
3
3
  var _regeneratorRuntime = require("@babel/runtime/regenerator");
4
4
  var _asyncToGenerator = require("@babel/runtime/helpers/asyncToGenerator");
5
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
6
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
5
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
6
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
7
7
  var Utils = require("../Utils");
8
8
  var UrlJoin = require("url-join");
9
9
  var StateStorePath = function StateStorePath(_ref) {
@@ -2,8 +2,8 @@ var _regeneratorRuntime = require("@babel/runtime/regenerator");
2
2
  var _asyncToGenerator = require("@babel/runtime/helpers/asyncToGenerator");
3
3
  var _defineProperty = require("@babel/runtime/helpers/defineProperty");
4
4
  var _slicedToArray = require("@babel/runtime/helpers/slicedToArray");
5
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
6
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
5
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
6
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
7
7
  var Utils = require("../Utils");
8
8
  var RarityToPercentage = function RarityToPercentage(rarity) {
9
9
  if (!rarity) {
@@ -136,7 +136,7 @@ var FormatNFTMetadata = function FormatNFTMetadata(walletClient, nft) {
136
136
  var mediaType = (media.media_type || "").toLowerCase();
137
137
  if (mediaType === "image") {
138
138
  return _objectSpread(_objectSpread({}, media), {}, {
139
- embed_url: media.media_file.url
139
+ embed_url: media.media_file && media.media_file.url
140
140
  });
141
141
  }
142
142
  var embedUrl = new URL("https://embed.v3.contentfabric.io");
@@ -149,7 +149,7 @@ var FormatNFTMetadata = function FormatNFTMetadata(walletClient, nft) {
149
149
  embedUrl.searchParams.set("vid", LinkTargetHash(media.media_link));
150
150
  embedUrl.searchParams.set("ct", "h");
151
151
  embedUrl.searchParams.set("ap", "");
152
- } else if (mediaType === "ebook") {
152
+ } else if (mediaType === "ebook" && media.media_file) {
153
153
  embedUrl.searchParams.set("type", "ebook");
154
154
  embedUrl.searchParams.set("vid", media.media_file["."].container);
155
155
  embedUrl.searchParams.set("murl", btoa(media.media_file.url));
@@ -7,8 +7,8 @@ var _asyncToGenerator = require("@babel/runtime/helpers/asyncToGenerator");
7
7
  var _classCallCheck = require("@babel/runtime/helpers/classCallCheck");
8
8
  var _createClass = require("@babel/runtime/helpers/createClass");
9
9
  var _excluded = ["code", "address", "type", "authToken", "expiresAt"];
10
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
11
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
10
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
11
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
12
12
  var _require = require("../ElvClient"),
13
13
  ElvClient = _require.ElvClient;
14
14
  var Configuration = require("./Configuration");
@@ -79,7 +79,7 @@ var ElvWalletClient = /*#__PURE__*/function () {
79
79
  this.utils = client.utils;
80
80
  this.ForbiddenMethods = ElvWalletClient.ForbiddenMethods;
81
81
  }
82
- _createClass(ElvWalletClient, [{
82
+ return _createClass(ElvWalletClient, [{
83
83
  key: "Log",
84
84
  value: function Log(message) {
85
85
  var error = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
@@ -136,7 +136,7 @@ var ElvWalletClient = /*#__PURE__*/function () {
136
136
  */
137
137
  }, {
138
138
  key: "PersonalSign",
139
- value: function () {
139
+ value: (function () {
140
140
  var _PersonalSign = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee3(_ref2) {
141
141
  var message, parameters, url;
142
142
  return _regeneratorRuntime.wrap(function _callee3$(_context3) {
@@ -265,7 +265,7 @@ var ElvWalletClient = /*#__PURE__*/function () {
265
265
  return _PersonalSign.apply(this, arguments);
266
266
  }
267
267
  return PersonalSign;
268
- }()
268
+ }())
269
269
  }, {
270
270
  key: "LogInURL",
271
271
  value: function () {
@@ -344,7 +344,7 @@ var ElvWalletClient = /*#__PURE__*/function () {
344
344
  */
345
345
  }, {
346
346
  key: "LogIn",
347
- value: function () {
347
+ value: (function () {
348
348
  var _LogIn = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee7(_ref5) {
349
349
  var _this = this;
350
350
  var _ref5$method, method, provider, _ref5$mode, mode, callbackUrl, marketplaceParams, _ref5$clearLogin, clearLogin, callback, loginUrl;
@@ -463,14 +463,15 @@ var ElvWalletClient = /*#__PURE__*/function () {
463
463
  *
464
464
  * @methodGroup Login
465
465
  */
466
+ )
466
467
  }, {
467
468
  key: "LogOut",
468
- value: function () {
469
+ value: (function () {
469
470
  var _LogOut = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee8() {
470
471
  return _regeneratorRuntime.wrap(function _callee8$(_context8) {
471
472
  while (1) switch (_context8.prev = _context8.next) {
472
473
  case 0:
473
- if (!this.__authorization.nonce) {
474
+ if (!(this.__authorization && this.__authorization.nonce)) {
474
475
  _context8.next = 9;
475
476
  break;
476
477
  }
@@ -508,7 +509,7 @@ var ElvWalletClient = /*#__PURE__*/function () {
508
509
  return _LogOut.apply(this, arguments);
509
510
  }
510
511
  return LogOut;
511
- }()
512
+ }())
512
513
  }, {
513
514
  key: "TokenStatus",
514
515
  value: function () {
@@ -548,7 +549,7 @@ var ElvWalletClient = /*#__PURE__*/function () {
548
549
  */
549
550
  }, {
550
551
  key: "Authenticate",
551
- value: function () {
552
+ value: (function () {
552
553
  var _Authenticate = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee10(_ref7) {
553
554
  var token, decodedToken;
554
555
  return _regeneratorRuntime.wrap(function _callee10$(_context10) {
@@ -614,9 +615,10 @@ var ElvWalletClient = /*#__PURE__*/function () {
614
615
  * - signingToken - Identical to `authToken`, but also includes the ability to perform arbitrary signatures with the custodial wallet. This token should be protected and should not be
615
616
  * shared with third parties.
616
617
  */
618
+ )
617
619
  }, {
618
620
  key: "AuthenticateOAuth",
619
- value: function () {
621
+ value: (function () {
620
622
  var _AuthenticateOAuth = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee11(_ref8) {
621
623
  var idToken, tenantId, email, signerURIs, _ref8$shareEmail, shareEmail, _ref8$extraData, extraData, nonce, _ref8$createRemoteTok, createRemoteToken, _ref8$force, force, tokenDuration, fabricToken, expiresAt, tokenResponse, address, decodedToken;
622
624
  return _regeneratorRuntime.wrap(function _callee11$(_context11) {
@@ -743,9 +745,10 @@ var ElvWalletClient = /*#__PURE__*/function () {
743
745
  * @returns {Promise<string>} - Returns an authorization token that can be used to initialize the client using <a href="#Authenticate">Authenticate</a>.
744
746
  * Save this token to avoid having to reauthenticate. This token expires after 24 hours.
745
747
  */
748
+ )
746
749
  }, {
747
750
  key: "AuthenticateExternalWallet",
748
- value: function () {
751
+ value: (function () {
749
752
  var _AuthenticateExternalWallet = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee13(_ref9) {
750
753
  var _this2 = this;
751
754
  var address, _ref9$tokenDuration, tokenDuration, _ref9$walletName, walletName, Sign, expiresAt, fabricToken;
@@ -814,6 +817,7 @@ var ElvWalletClient = /*#__PURE__*/function () {
814
817
  *
815
818
  * @returns {string} - The client auth token
816
819
  */
820
+ )
817
821
  }, {
818
822
  key: "ClientAuthToken",
819
823
  value: function ClientAuthToken() {
@@ -1978,7 +1982,7 @@ var ElvWalletClient = /*#__PURE__*/function () {
1978
1982
  */
1979
1983
  }, {
1980
1984
  key: "Initialize",
1981
- value: function () {
1985
+ value: (function () {
1982
1986
  var _Initialize = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee25(_ref24) {
1983
1987
  var client, _ref24$appId, appId, _ref24$network, network, _ref24$mode, mode, localization, marketplaceParams, previewMarketplaceId, _ref24$storeAuthToken, storeAuthToken, _ref24$skipMarketplac, skipMarketplaceLoad, _ref25, tenantSlug, marketplaceSlug, marketplaceId, marketplaceHash, previewMarketplaceHash, walletClient, url, savedToken;
1984
1988
  return _regeneratorRuntime.wrap(function _callee25$(_context25) {
@@ -2096,9 +2100,8 @@ var ElvWalletClient = /*#__PURE__*/function () {
2096
2100
  return _Initialize.apply(this, arguments);
2097
2101
  }
2098
2102
  return Initialize;
2099
- }()
2103
+ }())
2100
2104
  }]);
2101
- return ElvWalletClient;
2102
2105
  }();
2103
2106
  Object.assign(ElvWalletClient.prototype, require("./ClientMethods"));
2104
2107
  Object.assign(ElvWalletClient.prototype, require("./Profile"));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eluvio/elv-client-js",
3
- "version": "4.0.99",
3
+ "version": "4.0.101",
4
4
  "description": "Javascript client for the Eluvio Content Fabric",
5
5
  "main": "src/index.js",
6
6
  "author": "Kevin Talmadge",
@@ -1890,6 +1890,24 @@ const AbrProfileLiveDrm = {
1890
1890
  "protocol": {
1891
1891
  "type": "ProtoHls"
1892
1892
  }
1893
+ },
1894
+ "hls-widevine-cenc": {
1895
+ "drm": {
1896
+ "enc_scheme_name": "cenc",
1897
+ "type": "DrmWidevine"
1898
+ },
1899
+ "protocol": {
1900
+ "type": "ProtoHls"
1901
+ }
1902
+ },
1903
+ "hls-playready-cenc": {
1904
+ "drm": {
1905
+ "enc_scheme_name": "cenc",
1906
+ "type": "DrmPlayReady"
1907
+ },
1908
+ "protocol": {
1909
+ "type": "ProtoHls"
1910
+ }
1893
1911
  }
1894
1912
  },
1895
1913
  "segment_specs": {
@@ -74,6 +74,7 @@ const LiveconfTemplate = {
74
74
  part_ttl: 3600,
75
75
  playout_type: "live",
76
76
  source_timescale: null,
77
+ reconnect_timeout: 600,
77
78
  xc_params: {
78
79
  audio_bitrate: 384000,
79
80
  audio_index: [
@@ -455,6 +456,14 @@ class LiveConf {
455
456
  conf.live_recording.recording_config.recording_params.part_ttl = customSettings.part_ttl;
456
457
  }
457
458
 
459
+ if(customSettings.connection_timeout) {
460
+ conf.live_recording.recording_config.recording_params.xc_params.connection_timeout = customSettings.connection_timeout;
461
+ }
462
+
463
+ if(customSettings.reconnect_timeout) {
464
+ conf.live_recording.recording_config.recording_params.reconnect_timeout = customSettings.reconnect_timeout;
465
+ }
466
+
458
467
  // Fill in specifics for protocol
459
468
  switch(this.probeKind()) {
460
469
  case "udp":
@@ -1357,7 +1357,7 @@ exports.StreamConfig = async function({name, customSettings={}, probeMetadata})
1357
1357
  const hostName = new URL(parsedName).hostname;
1358
1358
  const streamUrl = new URL(userConfig.url);
1359
1359
 
1360
- console.log("Retrieving nodes - matching", hostName);
1360
+ this.Log(`Retrieving nodes - matching: ${hostName}`);
1361
1361
  let nodes = await this.SpaceNodes({matchEndpoint: hostName});
1362
1362
  if(nodes.length < 1) {
1363
1363
  status.error = "No node matching stream URL " + streamUrl.href;
@@ -1375,12 +1375,7 @@ exports.StreamConfig = async function({name, customSettings={}, probeMetadata})
1375
1375
 
1376
1376
  // Probe the stream
1377
1377
  probe = {};
1378
- const controller = new AbortController();
1379
- const timeoutId = setTimeout(() => {
1380
- controller.abort();
1381
- }, 60 * 1000); // milliseconds
1382
1378
  try {
1383
-
1384
1379
  let probeUrl = await this.Rep({
1385
1380
  libraryId,
1386
1381
  objectId,
@@ -1393,13 +1388,10 @@ exports.StreamConfig = async function({name, customSettings={}, probeMetadata})
1393
1388
  "filename": streamUrl.href,
1394
1389
  "listen": true
1395
1390
  }),
1396
- method: "POST",
1397
- signal: controller.signal
1391
+ method: "POST"
1398
1392
  })
1399
1393
  );
1400
1394
 
1401
- if(probe) { clearTimeout(timeoutId); }
1402
-
1403
1395
  if(probe.errors) {
1404
1396
  throw probe.errors[0];
1405
1397
  }