@eluvio/elv-client-js 4.0.113 → 4.0.115

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 (129) hide show
  1. package/dist/ElvClient-min.js +67 -0
  2. package/dist/ElvClient-node-min.js +66 -0
  3. package/dist/ElvFrameClient-min.js +60 -0
  4. package/dist/ElvPermissionsClient-min.js +60 -0
  5. package/dist/ElvWalletClient-min.js +67 -0
  6. package/dist/ElvWalletClient-node-min.js +66 -0
  7. package/dist/src/AuthorizationClient.js +2169 -0
  8. package/dist/src/ContentObjectAudit.js +175 -0
  9. package/dist/src/ContentObjectVerification.js +281 -0
  10. package/dist/src/Crypto.js +412 -0
  11. package/dist/src/ElvClient.js +2044 -0
  12. package/dist/src/ElvWallet.js +245 -0
  13. package/dist/src/EthClient.js +1154 -0
  14. package/dist/src/FrameClient.js +485 -0
  15. package/dist/src/HttpClient.js +315 -0
  16. package/dist/src/Id.js +21 -0
  17. package/dist/src/LogMessage.js +25 -0
  18. package/dist/src/PermissionsClient.js +1544 -0
  19. package/dist/src/RemoteSigner.js +385 -0
  20. package/dist/src/UserProfileClient.js +1450 -0
  21. package/dist/src/Utils.js +894 -0
  22. package/dist/src/Validation.js +121 -0
  23. package/dist/src/abr_profiles/abr_profile_live_drm.js +1661 -0
  24. package/dist/src/abr_profiles/abr_profile_live_to_vod.js +1606 -0
  25. package/dist/src/client/ABRPublishing.js +1018 -0
  26. package/dist/src/client/AccessGroups.js +1503 -0
  27. package/dist/src/client/ContentAccess.js +5195 -0
  28. package/dist/src/client/ContentManagement.js +2680 -0
  29. package/dist/src/client/Contracts.js +1520 -0
  30. package/dist/src/client/Files.js +2181 -0
  31. package/dist/src/client/LiveConf.js +569 -0
  32. package/dist/src/client/LiveStream.js +2640 -0
  33. package/dist/src/client/NFT.js +162 -0
  34. package/dist/src/client/NTP.js +581 -0
  35. package/dist/src/contracts/v2/AccessIndexor.js +831 -0
  36. package/dist/src/contracts/v2/Accessible.js +31 -0
  37. package/dist/src/contracts/v2/BaseAccessControlGroup.js +1263 -0
  38. package/dist/src/contracts/v2/BaseAccessWallet.js +1609 -0
  39. package/dist/src/contracts/v2/BaseAccessWalletFactory.js +93 -0
  40. package/dist/src/contracts/v2/BaseContent.js +1076 -0
  41. package/dist/src/contracts/v2/BaseContentFactory.js +219 -0
  42. package/dist/src/contracts/v2/BaseContentSpace.js +1352 -0
  43. package/dist/src/contracts/v2/BaseContentType.js +364 -0
  44. package/dist/src/contracts/v2/BaseFactory.js +107 -0
  45. package/dist/src/contracts/v2/BaseGroupFactory.js +93 -0
  46. package/dist/src/contracts/v2/BaseLibrary.js +1041 -0
  47. package/dist/src/contracts/v2/BaseLibraryFactory.js +96 -0
  48. package/dist/src/contracts/v2/Certifyer.js +86 -0
  49. package/dist/src/contracts/v2/Container.js +540 -0
  50. package/dist/src/contracts/v2/Content.js +443 -0
  51. package/dist/src/contracts/v2/Editable.js +306 -0
  52. package/dist/src/contracts/v2/ExternalUserWallet.js +379 -0
  53. package/dist/src/contracts/v2/IFactorySpace.js +57 -0
  54. package/dist/src/contracts/v2/IKmsSpace.js +52 -0
  55. package/dist/src/contracts/v2/INodeSpace.js +18 -0
  56. package/dist/src/contracts/v2/IUserSpace.js +18 -0
  57. package/dist/src/contracts/v2/LvRecordableStream.js +1037 -0
  58. package/dist/src/contracts/v2/LvRecording.js +627 -0
  59. package/dist/src/contracts/v2/LvStreamRightsHolder.js +562 -0
  60. package/dist/src/contracts/v2/MetaObject.js +119 -0
  61. package/dist/src/contracts/v2/Node.js +167 -0
  62. package/dist/src/contracts/v2/NodeSpace.js +273 -0
  63. package/dist/src/contracts/v2/Ownable.js +87 -0
  64. package/dist/src/contracts/v2/PaymentService.js +627 -0
  65. package/dist/src/contracts/v2/Precompile.js +15 -0
  66. package/dist/src/contracts/v2/Transactable.js +82 -0
  67. package/dist/src/contracts/v2/UserSpace.js +29 -0
  68. package/dist/src/contracts/v2/Utils.js +18 -0
  69. package/dist/src/contracts/v2/Verifier.js +53 -0
  70. package/dist/src/contracts/v2/strings.js +4 -0
  71. package/dist/src/contracts/v3/AccessIndexor.js +774 -0
  72. package/dist/src/contracts/v3/Accessible.js +232 -0
  73. package/dist/src/contracts/v3/Adminable.js +107 -0
  74. package/dist/src/contracts/v3/AvailsDelivery.js +586 -0
  75. package/dist/src/contracts/v3/BaseAccessControlGroup.js +1603 -0
  76. package/dist/src/contracts/v3/BaseAccessWallet.js +1628 -0
  77. package/dist/src/contracts/v3/BaseAccessWalletFactory.js +112 -0
  78. package/dist/src/contracts/v3/BaseContent.js +1312 -0
  79. package/dist/src/contracts/v3/BaseContentFactory.js +183 -0
  80. package/dist/src/contracts/v3/BaseContentFactoryExt.js +175 -0
  81. package/dist/src/contracts/v3/BaseContentSpace.js +1515 -0
  82. package/dist/src/contracts/v3/BaseContentType.js +527 -0
  83. package/dist/src/contracts/v3/BaseFactory.js +126 -0
  84. package/dist/src/contracts/v3/BaseGroupFactory.js +112 -0
  85. package/dist/src/contracts/v3/BaseLibrary.js +1204 -0
  86. package/dist/src/contracts/v3/BaseLibraryFactory.js +115 -0
  87. package/dist/src/contracts/v3/BaseTenantSpace.js +1587 -0
  88. package/dist/src/contracts/v3/Certifyer.js +86 -0
  89. package/dist/src/contracts/v3/Container.js +739 -0
  90. package/dist/src/contracts/v3/Content.js +438 -0
  91. package/dist/src/contracts/v3/CounterObject.js +243 -0
  92. package/dist/src/contracts/v3/Editable.js +519 -0
  93. package/dist/src/contracts/v3/EncToken.js +4 -0
  94. package/dist/src/contracts/v3/ExternalUserWallet.js +587 -0
  95. package/dist/src/contracts/v3/IAdmin.js +18 -0
  96. package/dist/src/contracts/v3/IFactorySpace.js +57 -0
  97. package/dist/src/contracts/v3/IKmsSpace.js +52 -0
  98. package/dist/src/contracts/v3/INodeSpace.js +18 -0
  99. package/dist/src/contracts/v3/IUserSpace.js +32 -0
  100. package/dist/src/contracts/v3/LvRecordableStream.js +1032 -0
  101. package/dist/src/contracts/v3/LvRecording.js +650 -0
  102. package/dist/src/contracts/v3/LvStreamRightsHolder.js +557 -0
  103. package/dist/src/contracts/v3/MetaObject.js +144 -0
  104. package/dist/src/contracts/v3/Node.js +178 -0
  105. package/dist/src/contracts/v3/NodeSpace.js +284 -0
  106. package/dist/src/contracts/v3/Ownable.js +98 -0
  107. package/dist/src/contracts/v3/PaymentService.js +622 -0
  108. package/dist/src/contracts/v3/Precompile.js +26 -0
  109. package/dist/src/contracts/v3/TenantFuncsBase.js +351 -0
  110. package/dist/src/contracts/v3/Transactable.js +82 -0
  111. package/dist/src/contracts/v3/UserSpace.js +43 -0
  112. package/dist/src/contracts/v3/Utils.js +18 -0
  113. package/dist/src/contracts/v3/Verifier.js +53 -0
  114. package/dist/src/contracts/v3/strings.js +4 -0
  115. package/dist/src/contracts/v3b/BaseAccessControlGroup.js +1704 -0
  116. package/dist/src/events/Topics.js +1793 -0
  117. package/dist/src/index.js +8 -0
  118. package/dist/src/walletClient/ClientMethods.js +3102 -0
  119. package/dist/src/walletClient/Configuration.js +38 -0
  120. package/dist/src/walletClient/Notifications.js +168 -0
  121. package/dist/src/walletClient/Profile.js +332 -0
  122. package/dist/src/walletClient/Utils.js +281 -0
  123. package/dist/src/walletClient/index.js +2106 -0
  124. package/package.json +1 -1
  125. package/src/AuthorizationClient.js +25 -18
  126. package/src/ElvClient.js +19 -0
  127. package/src/client/ContentAccess.js +10 -1
  128. package/src/client/LiveConf.js +10 -8
  129. package/src/client/LiveStream.js +6 -4
@@ -0,0 +1,315 @@
1
+ var _regeneratorRuntime = require("@babel/runtime/regenerator");
2
+ var _asyncToGenerator = require("@babel/runtime/helpers/asyncToGenerator");
3
+ var _classCallCheck = require("@babel/runtime/helpers/classCallCheck");
4
+ var _createClass = require("@babel/runtime/helpers/createClass");
5
+ var URI = require("urijs");
6
+ var _Fetch = typeof fetch !== "undefined" ? fetch : require("node-fetch")["default"];
7
+ var _require = require("./LogMessage"),
8
+ LogMessage = _require.LogMessage;
9
+ var Utils = require("./Utils");
10
+ var HttpClient = /*#__PURE__*/function () {
11
+ "use strict";
12
+
13
+ function HttpClient(_ref) {
14
+ var uris = _ref.uris,
15
+ debug = _ref.debug;
16
+ _classCallCheck(this, HttpClient);
17
+ this.uris = uris;
18
+ this.uriIndex = 0;
19
+ this.debug = debug;
20
+ this.draftURIs = {};
21
+ this.retries = Math.max(3, uris.length);
22
+ }
23
+ _createClass(HttpClient, [{
24
+ key: "Log",
25
+ value: function Log(message) {
26
+ var error = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
27
+ LogMessage(this, message, error);
28
+ }
29
+ }, {
30
+ key: "BaseURI",
31
+ value: function BaseURI(uriIndex) {
32
+ if (uriIndex === undefined) {
33
+ uriIndex = this.uriIndex;
34
+ }
35
+ return new URI(this.uris[uriIndex]);
36
+ }
37
+ }, {
38
+ key: "RecordWriteToken",
39
+ value: function RecordWriteToken(writeToken, nodeUrlStr) {
40
+ if (!nodeUrlStr) throw Error("RecordWriteToken() - nodeUrlStr not supplied");
41
+ if (!writeToken) throw Error("RecordWriteToken() - writeToken not supplied");
42
+ this.draftURIs[writeToken] = new URI(nodeUrlStr);
43
+ }
44
+ }, {
45
+ key: "ClearWriteToken",
46
+ value: function ClearWriteToken(_ref2) {
47
+ var writeToken = _ref2.writeToken;
48
+ if (Object.hasOwn(this.draftURIs, writeToken)) {
49
+ delete this.draftURIs[writeToken];
50
+ }
51
+ }
52
+ }, {
53
+ key: "RequestHeaders",
54
+ value: function RequestHeaders(bodyType) {
55
+ var headers = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
56
+ if (!headers.Accept) {
57
+ headers["Accept"] = "application/json";
58
+ }
59
+ if (bodyType === "JSON") {
60
+ headers["Content-type"] = "application/json";
61
+ } else if (bodyType === "BINARY") {
62
+ headers["Content-type"] = "application/octet-stream";
63
+ }
64
+ return headers;
65
+ }
66
+ }, {
67
+ key: "Request",
68
+ value: function () {
69
+ var _Request = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(_ref3) {
70
+ var method, path, _ref3$queryParams, queryParams, body, _ref3$bodyType, bodyType, _ref3$headers, headers, _ref3$attempts, attempts, _ref3$allowFailover, allowFailover, _ref3$forceFailover, forceFailover, _ref3$allowRetry, allowRetry, uriIndex, baseURI, writeTokenMatch, writeToken, uri, fetchParameters, response, responseType, errorBody, error;
71
+ return _regeneratorRuntime.wrap(function _callee$(_context) {
72
+ while (1) switch (_context.prev = _context.next) {
73
+ case 0:
74
+ method = _ref3.method, path = _ref3.path, _ref3$queryParams = _ref3.queryParams, queryParams = _ref3$queryParams === void 0 ? {} : _ref3$queryParams, body = _ref3.body, _ref3$bodyType = _ref3.bodyType, bodyType = _ref3$bodyType === void 0 ? "JSON" : _ref3$bodyType, _ref3$headers = _ref3.headers, headers = _ref3$headers === void 0 ? {} : _ref3$headers, _ref3$attempts = _ref3.attempts, attempts = _ref3$attempts === void 0 ? 0 : _ref3$attempts, _ref3$allowFailover = _ref3.allowFailover, allowFailover = _ref3$allowFailover === void 0 ? true : _ref3$allowFailover, _ref3$forceFailover = _ref3.forceFailover, forceFailover = _ref3$forceFailover === void 0 ? false : _ref3$forceFailover, _ref3$allowRetry = _ref3.allowRetry, allowRetry = _ref3$allowRetry === void 0 ? true : _ref3$allowRetry, uriIndex = _ref3.uriIndex;
75
+ baseURI = this.BaseURI(uriIndex); // If URL contains a write token, it must go to the correct server and can not fail over
76
+ writeTokenMatch = path.replace(/^\//, "").match(/(qlibs\/ilib[a-zA-Z0-9]+|q|qid)\/(tqw__[a-zA-Z0-9]+)/);
77
+ writeToken = writeTokenMatch ? writeTokenMatch[2] : undefined;
78
+ if (writeToken) {
79
+ allowFailover = false;
80
+ if (this.draftURIs[writeToken]) {
81
+ // Use saved write token URI
82
+ baseURI = this.draftURIs[writeToken];
83
+ } else {
84
+ // Save current URI for all future requests involving this write token
85
+ this.draftURIs[writeToken] = baseURI;
86
+ }
87
+ }
88
+ uri = baseURI.path(path).query(queryParams).hash("");
89
+ fetchParameters = {
90
+ method: method,
91
+ headers: this.RequestHeaders(bodyType, headers)
92
+ };
93
+ if (method === "POST" || method === "PUT" || method === "DELETE") {
94
+ if (body && bodyType === "JSON") {
95
+ fetchParameters.body = JSON.stringify(body);
96
+ } else if (body) {
97
+ fetchParameters.body = body;
98
+ }
99
+ }
100
+ if (this.debug) {
101
+ this.Log("".concat(method, " - ").concat(uri.toString()));
102
+ this.Log("fetchParameters: ".concat(JSON.stringify(fetchParameters, null, 2)));
103
+ }
104
+ _context.prev = 9;
105
+ _context.next = 12;
106
+ return HttpClient.Fetch(uri.toString(), fetchParameters);
107
+ case 12:
108
+ response = _context.sent;
109
+ _context.next = 18;
110
+ break;
111
+ case 15:
112
+ _context.prev = 15;
113
+ _context.t0 = _context["catch"](9);
114
+ response = {
115
+ ok: false,
116
+ status: 500,
117
+ statusText: "ElvClient Error: " + _context.t0.message,
118
+ url: uri.toString(),
119
+ stack: _context.t0.stack
120
+ };
121
+ case 18:
122
+ if (response.ok) {
123
+ _context.next = 47;
124
+ break;
125
+ }
126
+ if (!((parseInt(response.status) >= 500 || forceFailover) && allowRetry && attempts < this.retries)) {
127
+ _context.next = 31;
128
+ break;
129
+ }
130
+ if (!allowFailover) {
131
+ _context.next = 25;
132
+ break;
133
+ }
134
+ // Fail over to alternate node
135
+ this.uriIndex = (this.uriIndex + 1) % this.uris.length;
136
+ this.Log("HttpClient failing over from ".concat(baseURI.toString(), ": ").concat(attempts + 1, " attempts"), true);
137
+ _context.next = 28;
138
+ break;
139
+ case 25:
140
+ // Wait and retry
141
+ this.Log("HttpClient retrying request from ".concat(baseURI.toString(), ": ").concat(attempts + 1, " attempts"), true);
142
+ _context.next = 28;
143
+ return new Promise(function (resolve) {
144
+ return setTimeout(resolve, 1000);
145
+ });
146
+ case 28:
147
+ _context.next = 30;
148
+ return this.Request({
149
+ method: method,
150
+ path: path,
151
+ queryParams: queryParams,
152
+ body: body,
153
+ bodyType: bodyType,
154
+ headers: headers,
155
+ attempts: attempts + 1,
156
+ uriIndex: uriIndex,
157
+ forceFailover: forceFailover
158
+ });
159
+ case 30:
160
+ return _context.abrupt("return", _context.sent);
161
+ case 31:
162
+ // Parse JSON error if headers indicate JSON
163
+ responseType = response.headers ? response.headers.get("content-type") || "" : "";
164
+ errorBody = "";
165
+ if (!(response.text && response.json)) {
166
+ _context.next = 44;
167
+ break;
168
+ }
169
+ if (!responseType.includes("application/json")) {
170
+ _context.next = 40;
171
+ break;
172
+ }
173
+ _context.next = 37;
174
+ return response.json();
175
+ case 37:
176
+ _context.t1 = _context.sent;
177
+ _context.next = 43;
178
+ break;
179
+ case 40:
180
+ _context.next = 42;
181
+ return response.text();
182
+ case 42:
183
+ _context.t1 = _context.sent;
184
+ case 43:
185
+ errorBody = _context.t1;
186
+ case 44:
187
+ error = {
188
+ name: "ElvHttpClientError",
189
+ status: response.status,
190
+ statusText: response.statusText,
191
+ message: response.statusText,
192
+ url: uri.toString(),
193
+ body: errorBody,
194
+ requestParams: fetchParameters
195
+ };
196
+ if (this.debug) this.Log(JSON.stringify(error, null, 2), true);
197
+ throw error;
198
+ case 47:
199
+ this.Log("".concat(response.status, " - ").concat(method, " ").concat(uri.toString()));
200
+ return _context.abrupt("return", response);
201
+ case 49:
202
+ case "end":
203
+ return _context.stop();
204
+ }
205
+ }, _callee, this, [[9, 15]]);
206
+ }));
207
+ function Request(_x) {
208
+ return _Request.apply(this, arguments);
209
+ }
210
+ return Request;
211
+ }()
212
+ }, {
213
+ key: "RequestAll",
214
+ value: function () {
215
+ var _RequestAll = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee3(_ref4) {
216
+ var _this = this;
217
+ var method, path, _ref4$queryParams, queryParams, body, _ref4$bodyType, bodyType, _ref4$headers, headers;
218
+ return _regeneratorRuntime.wrap(function _callee3$(_context3) {
219
+ while (1) switch (_context3.prev = _context3.next) {
220
+ case 0:
221
+ method = _ref4.method, path = _ref4.path, _ref4$queryParams = _ref4.queryParams, queryParams = _ref4$queryParams === void 0 ? {} : _ref4$queryParams, body = _ref4.body, _ref4$bodyType = _ref4.bodyType, bodyType = _ref4$bodyType === void 0 ? "JSON" : _ref4$bodyType, _ref4$headers = _ref4.headers, headers = _ref4$headers === void 0 ? {} : _ref4$headers;
222
+ _context3.next = 3;
223
+ return Promise.all(Array.from(new Array(this.uris.length).keys()).map( /*#__PURE__*/function () {
224
+ var _ref5 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(uriIndex) {
225
+ return _regeneratorRuntime.wrap(function _callee2$(_context2) {
226
+ while (1) switch (_context2.prev = _context2.next) {
227
+ case 0:
228
+ _context2.prev = 0;
229
+ _context2.next = 3;
230
+ return _this.Request({
231
+ method: method,
232
+ path: path,
233
+ queryParams: queryParams,
234
+ body: body,
235
+ bodyType: bodyType,
236
+ headers: headers,
237
+ allowFailover: false,
238
+ uriIndex: uriIndex
239
+ });
240
+ case 3:
241
+ return _context2.abrupt("return", _context2.sent);
242
+ case 6:
243
+ _context2.prev = 6;
244
+ _context2.t0 = _context2["catch"](0);
245
+ return _context2.abrupt("return", _context2.t0);
246
+ case 9:
247
+ case "end":
248
+ return _context2.stop();
249
+ }
250
+ }, _callee2, null, [[0, 6]]);
251
+ }));
252
+ return function (_x3) {
253
+ return _ref5.apply(this, arguments);
254
+ };
255
+ }()));
256
+ case 3:
257
+ return _context3.abrupt("return", _context3.sent);
258
+ case 4:
259
+ case "end":
260
+ return _context3.stop();
261
+ }
262
+ }, _callee3, this);
263
+ }));
264
+ function RequestAll(_x2) {
265
+ return _RequestAll.apply(this, arguments);
266
+ }
267
+ return RequestAll;
268
+ }() // Perform http request and then return response body parsed as JSON
269
+ // ResponseToJson() will log response if this.debug === true
270
+ }, {
271
+ key: "RequestJsonBody",
272
+ value: function () {
273
+ var _RequestJsonBody = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee4(params) {
274
+ return _regeneratorRuntime.wrap(function _callee4$(_context4) {
275
+ while (1) switch (_context4.prev = _context4.next) {
276
+ case 0:
277
+ return _context4.abrupt("return", Utils.ResponseToJson(this.Request(params), this.debug, this.Log.bind(this)));
278
+ case 1:
279
+ case "end":
280
+ return _context4.stop();
281
+ }
282
+ }, _callee4, this);
283
+ }));
284
+ function RequestJsonBody(_x4) {
285
+ return _RequestJsonBody.apply(this, arguments);
286
+ }
287
+ return RequestJsonBody;
288
+ }()
289
+ }, {
290
+ key: "URL",
291
+ value: function URL(_ref6) {
292
+ var path = _ref6.path,
293
+ _ref6$queryParams = _ref6.queryParams,
294
+ queryParams = _ref6$queryParams === void 0 ? {} : _ref6$queryParams;
295
+ var baseURI = this.BaseURI();
296
+
297
+ // If URL contains a write token, it must go to the correct server and can not fail over
298
+ var writeTokenMatch = path.replace(/^\//, "").match(/(qlibs\/ilib[a-zA-Z0-9]+|q|qid)\/(tqw__[a-zA-Z0-9]+)/);
299
+ var writeToken = writeTokenMatch ? writeTokenMatch[2] : undefined;
300
+ if (writeToken && this.draftURIs[writeToken]) {
301
+ // Use saved write token URI
302
+ baseURI = this.draftURIs[writeToken];
303
+ }
304
+ return baseURI.path(path).query(queryParams).hash("").toString();
305
+ }
306
+ }], [{
307
+ key: "Fetch",
308
+ value: function Fetch(url) {
309
+ var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
310
+ return _Fetch(url, params);
311
+ }
312
+ }]);
313
+ return HttpClient;
314
+ }();
315
+ module.exports = HttpClient;
package/dist/src/Id.js ADDED
@@ -0,0 +1,21 @@
1
+ var _classCallCheck = require("@babel/runtime/helpers/classCallCheck");
2
+ var _createClass = require("@babel/runtime/helpers/createClass");
3
+ // Incremental numerical IDs
4
+
5
+ var __id = 0;
6
+ var Id = /*#__PURE__*/function () {
7
+ "use strict";
8
+
9
+ function Id() {
10
+ _classCallCheck(this, Id);
11
+ }
12
+ _createClass(Id, null, [{
13
+ key: "next",
14
+ value: function next() {
15
+ __id++;
16
+ return __id;
17
+ }
18
+ }]);
19
+ return Id;
20
+ }();
21
+ module.exports = Id;
@@ -0,0 +1,25 @@
1
+ var _typeof = require("@babel/runtime/helpers/typeof");
2
+ var CustomLogFunc = function CustomLogFunc(attrName, debugOpts) {
3
+ return _typeof(debugOpts) === "object" && typeof debugOpts[attrName] === "function" ? debugOpts[attrName] : null;
4
+ };
5
+ var StringifyIfObject = function StringifyIfObject(message) {
6
+ return _typeof(message) === "object" ? JSON.stringify(message) : message;
7
+ };
8
+ var LogMessage = function LogMessage(reporter, message) {
9
+ var error = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
10
+ if (!reporter.debug) {
11
+ return;
12
+ }
13
+ var customLog = CustomLogFunc("log", reporter.debugOptions);
14
+ var customError = CustomLogFunc("error", reporter.debugOptions);
15
+ var prefix = "(elv-client-js#".concat(reporter.constructor.name, ")");
16
+ var standardMsg = "\n".concat(prefix, " ").concat(StringifyIfObject(message), "\n");
17
+ error ? customError ? customError(prefix, message) :
18
+ // eslint-disable-next-line no-console
19
+ console.error(standardMsg) : customLog ? customLog(prefix, message) :
20
+ // eslint-disable-next-line no-console
21
+ console.log(standardMsg);
22
+ };
23
+ module.exports = {
24
+ LogMessage: LogMessage
25
+ };