@eluvio/elv-client-js 4.0.10 → 4.0.11
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.
- package/dist/ElvClient-min.js +10 -11
- package/dist/ElvClient-node-min.js +10 -11
- package/dist/ElvFrameClient-min.js +10 -11
- package/dist/ElvPermissionsClient-min.js +9 -10
- package/dist/ElvWalletClient-min.js +9 -10
- package/dist/ElvWalletClient-node-min.js +9 -10
- package/dist/src/AuthorizationClient.js +2070 -1550
- package/dist/src/ContentObjectVerification.js +185 -134
- package/dist/src/Crypto.js +319 -224
- package/dist/src/ElvClient.js +1114 -822
- package/dist/src/ElvWallet.js +106 -64
- package/dist/src/EthClient.js +974 -719
- package/dist/src/FrameClient.js +318 -222
- package/dist/src/HttpClient.js +154 -112
- package/dist/src/Id.js +6 -1
- package/dist/src/LogMessage.js +8 -4
- package/dist/src/PermissionsClient.js +1271 -973
- package/dist/src/RemoteSigner.js +232 -161
- package/dist/src/UserProfileClient.js +1038 -781
- package/dist/src/Utils.js +299 -159
- package/dist/src/Validation.js +17 -2
- package/dist/src/client/ABRPublishing.js +942 -772
- package/dist/src/client/AccessGroups.js +1095 -849
- package/dist/src/client/ContentAccess.js +4196 -3323
- package/dist/src/client/ContentManagement.js +2288 -1814
- package/dist/src/client/Contracts.js +614 -468
- package/dist/src/client/Files.js +1831 -1490
- package/dist/src/client/NFT.js +116 -94
- package/dist/src/client/NTP.js +425 -326
- package/dist/src/index.js +5 -2
- package/dist/src/walletClient/ClientMethods.js +1763 -1368
- package/dist/src/walletClient/Configuration.js +2 -4
- package/dist/src/walletClient/Notifications.js +127 -98
- package/dist/src/walletClient/Profile.js +246 -184
- package/dist/src/walletClient/Utils.js +122 -76
- package/dist/src/walletClient/index.js +1496 -1171
- package/package.json +1 -1
- package/src/AuthorizationClient.js +5 -5
- package/src/client/Files.js +1 -1
- package/testScripts/CreateMezMonolithic.js +0 -779
package/dist/src/HttpClient.js
CHANGED
|
@@ -1,23 +1,33 @@
|
|
|
1
1
|
var _regeneratorRuntime = require("@babel/runtime/regenerator");
|
|
2
|
+
|
|
2
3
|
var _asyncToGenerator = require("@babel/runtime/helpers/asyncToGenerator");
|
|
4
|
+
|
|
3
5
|
var _classCallCheck = require("@babel/runtime/helpers/classCallCheck");
|
|
6
|
+
|
|
4
7
|
var _createClass = require("@babel/runtime/helpers/createClass");
|
|
8
|
+
|
|
5
9
|
var URI = require("urijs");
|
|
10
|
+
|
|
6
11
|
var _Fetch = typeof fetch !== "undefined" ? fetch : require("node-fetch")["default"];
|
|
12
|
+
|
|
7
13
|
var _require = require("./LogMessage"),
|
|
8
|
-
|
|
14
|
+
LogMessage = _require.LogMessage;
|
|
15
|
+
|
|
9
16
|
var HttpClient = /*#__PURE__*/function () {
|
|
10
17
|
"use strict";
|
|
11
18
|
|
|
12
19
|
function HttpClient(_ref) {
|
|
13
20
|
var uris = _ref.uris,
|
|
14
|
-
|
|
21
|
+
debug = _ref.debug;
|
|
22
|
+
|
|
15
23
|
_classCallCheck(this, HttpClient);
|
|
24
|
+
|
|
16
25
|
this.uris = uris;
|
|
17
26
|
this.uriIndex = 0;
|
|
18
27
|
this.debug = debug;
|
|
19
28
|
this.draftURIs = {};
|
|
20
29
|
}
|
|
30
|
+
|
|
21
31
|
_createClass(HttpClient, [{
|
|
22
32
|
key: "Log",
|
|
23
33
|
value: function Log(message) {
|
|
@@ -38,14 +48,17 @@ var HttpClient = /*#__PURE__*/function () {
|
|
|
38
48
|
key: "RequestHeaders",
|
|
39
49
|
value: function RequestHeaders(bodyType) {
|
|
40
50
|
var headers = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
51
|
+
|
|
41
52
|
if (!headers.Accept) {
|
|
42
53
|
headers["Accept"] = "application/json";
|
|
43
54
|
}
|
|
55
|
+
|
|
44
56
|
if (bodyType === "JSON") {
|
|
45
57
|
headers["Content-type"] = "application/json";
|
|
46
58
|
} else if (bodyType === "BINARY") {
|
|
47
59
|
headers["Content-type"] = "application/octet-stream";
|
|
48
60
|
}
|
|
61
|
+
|
|
49
62
|
return headers;
|
|
50
63
|
}
|
|
51
64
|
}, {
|
|
@@ -53,133 +66,160 @@ var HttpClient = /*#__PURE__*/function () {
|
|
|
53
66
|
value: function () {
|
|
54
67
|
var _Request = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(_ref2) {
|
|
55
68
|
var method, path, _ref2$queryParams, queryParams, body, _ref2$bodyType, bodyType, _ref2$headers, headers, _ref2$attempts, attempts, _ref2$failover, failover, _ref2$forceFailover, forceFailover, baseURI, writeTokenMatch, writeToken, uri, fetchParameters, response, responseType, errorBody, error;
|
|
69
|
+
|
|
56
70
|
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
57
|
-
while (1)
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
71
|
+
while (1) {
|
|
72
|
+
switch (_context.prev = _context.next) {
|
|
73
|
+
case 0:
|
|
74
|
+
method = _ref2.method, path = _ref2.path, _ref2$queryParams = _ref2.queryParams, queryParams = _ref2$queryParams === void 0 ? {} : _ref2$queryParams, body = _ref2.body, _ref2$bodyType = _ref2.bodyType, bodyType = _ref2$bodyType === void 0 ? "JSON" : _ref2$bodyType, _ref2$headers = _ref2.headers, headers = _ref2$headers === void 0 ? {} : _ref2$headers, _ref2$attempts = _ref2.attempts, attempts = _ref2$attempts === void 0 ? 0 : _ref2$attempts, _ref2$failover = _ref2.failover, failover = _ref2$failover === void 0 ? true : _ref2$failover, _ref2$forceFailover = _ref2.forceFailover, forceFailover = _ref2$forceFailover === void 0 ? false : _ref2$forceFailover;
|
|
75
|
+
baseURI = this.BaseURI(); // If URL contains a write token, it must go to the correct server and can not fail over
|
|
76
|
+
|
|
77
|
+
writeTokenMatch = path.replace(/^\//, "").match(/(qlibs\/ilib[a-zA-Z0-9]+|q|qid)\/(tqw__[a-zA-Z0-9]+)/);
|
|
78
|
+
writeToken = writeTokenMatch ? writeTokenMatch[2] : undefined;
|
|
79
|
+
|
|
80
|
+
if (writeToken) {
|
|
81
|
+
if (this.draftURIs[writeToken]) {
|
|
82
|
+
// Use saved write token URI
|
|
83
|
+
baseURI = this.draftURIs[writeToken];
|
|
84
|
+
} else {
|
|
85
|
+
// Save current URI for all future requests involving this write token
|
|
86
|
+
this.draftURIs[writeToken] = baseURI;
|
|
87
|
+
}
|
|
70
88
|
}
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
if (
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
89
|
+
|
|
90
|
+
uri = baseURI.path(path).query(queryParams).hash("");
|
|
91
|
+
fetchParameters = {
|
|
92
|
+
method: method,
|
|
93
|
+
headers: this.RequestHeaders(bodyType, headers)
|
|
94
|
+
};
|
|
95
|
+
|
|
96
|
+
if (method === "POST" || method === "PUT" || method === "DELETE") {
|
|
97
|
+
if (body && bodyType === "JSON") {
|
|
98
|
+
fetchParameters.body = JSON.stringify(body);
|
|
99
|
+
} else if (body) {
|
|
100
|
+
fetchParameters.body = body;
|
|
101
|
+
}
|
|
82
102
|
}
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
case 14:
|
|
92
|
-
_context.prev = 14;
|
|
93
|
-
_context.t0 = _context["catch"](8);
|
|
94
|
-
response = {
|
|
95
|
-
ok: false,
|
|
96
|
-
status: 500,
|
|
97
|
-
statusText: "ElvClient Error: " + _context.t0.message,
|
|
98
|
-
url: uri.toString(),
|
|
99
|
-
stack: _context.t0.stack
|
|
100
|
-
};
|
|
101
|
-
case 17:
|
|
102
|
-
if (response.ok) {
|
|
103
|
-
_context.next = 40;
|
|
104
|
-
break;
|
|
105
|
-
}
|
|
106
|
-
if (!(!writeToken && (failover && parseInt(response.status) >= 500 || forceFailover) && attempts < this.uris.length)) {
|
|
107
|
-
_context.next = 24;
|
|
108
|
-
break;
|
|
109
|
-
}
|
|
110
|
-
// Server error - Try next node
|
|
111
|
-
this.Log("HttpClient failing over from ".concat(this.BaseURI(), ": ").concat(attempts + 1, " attempts"), true);
|
|
112
|
-
this.uriIndex = (this.uriIndex + 1) % this.uris.length;
|
|
113
|
-
_context.next = 23;
|
|
114
|
-
return this.Request({
|
|
115
|
-
method: method,
|
|
116
|
-
path: path,
|
|
117
|
-
queryParams: queryParams,
|
|
118
|
-
body: body,
|
|
119
|
-
bodyType: bodyType,
|
|
120
|
-
headers: headers,
|
|
121
|
-
attempts: attempts + 1,
|
|
122
|
-
forceFailover: forceFailover
|
|
123
|
-
});
|
|
124
|
-
case 23:
|
|
125
|
-
return _context.abrupt("return", _context.sent);
|
|
126
|
-
case 24:
|
|
127
|
-
// Parse JSON error if headers indicate JSON
|
|
128
|
-
responseType = response.headers ? response.headers.get("content-type") || "" : "";
|
|
129
|
-
errorBody = "";
|
|
130
|
-
if (!(response.text && response.json)) {
|
|
131
|
-
_context.next = 37;
|
|
103
|
+
|
|
104
|
+
_context.prev = 8;
|
|
105
|
+
_context.next = 11;
|
|
106
|
+
return HttpClient.Fetch(uri.toString(), fetchParameters);
|
|
107
|
+
|
|
108
|
+
case 11:
|
|
109
|
+
response = _context.sent;
|
|
110
|
+
_context.next = 17;
|
|
132
111
|
break;
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
_context.
|
|
112
|
+
|
|
113
|
+
case 14:
|
|
114
|
+
_context.prev = 14;
|
|
115
|
+
_context.t0 = _context["catch"](8);
|
|
116
|
+
response = {
|
|
117
|
+
ok: false,
|
|
118
|
+
status: 500,
|
|
119
|
+
statusText: "ElvClient Error: " + _context.t0.message,
|
|
120
|
+
url: uri.toString(),
|
|
121
|
+
stack: _context.t0.stack
|
|
122
|
+
};
|
|
123
|
+
|
|
124
|
+
case 17:
|
|
125
|
+
if (response.ok) {
|
|
126
|
+
_context.next = 40;
|
|
127
|
+
break;
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
if (!(!writeToken && (failover && parseInt(response.status) >= 500 || forceFailover) && attempts < this.uris.length)) {
|
|
131
|
+
_context.next = 24;
|
|
132
|
+
break;
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
// Server error - Try next node
|
|
136
|
+
this.Log("HttpClient failing over from ".concat(this.BaseURI(), ": ").concat(attempts + 1, " attempts"), true);
|
|
137
|
+
this.uriIndex = (this.uriIndex + 1) % this.uris.length;
|
|
138
|
+
_context.next = 23;
|
|
139
|
+
return this.Request({
|
|
140
|
+
method: method,
|
|
141
|
+
path: path,
|
|
142
|
+
queryParams: queryParams,
|
|
143
|
+
body: body,
|
|
144
|
+
bodyType: bodyType,
|
|
145
|
+
headers: headers,
|
|
146
|
+
attempts: attempts + 1,
|
|
147
|
+
forceFailover: forceFailover
|
|
148
|
+
});
|
|
149
|
+
|
|
150
|
+
case 23:
|
|
151
|
+
return _context.abrupt("return", _context.sent);
|
|
152
|
+
|
|
153
|
+
case 24:
|
|
154
|
+
// Parse JSON error if headers indicate JSON
|
|
155
|
+
responseType = response.headers ? response.headers.get("content-type") || "" : "";
|
|
156
|
+
errorBody = "";
|
|
157
|
+
|
|
158
|
+
if (!(response.text && response.json)) {
|
|
159
|
+
_context.next = 37;
|
|
160
|
+
break;
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
if (!responseType.includes("application/json")) {
|
|
164
|
+
_context.next = 33;
|
|
165
|
+
break;
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
_context.next = 30;
|
|
169
|
+
return response.json();
|
|
170
|
+
|
|
171
|
+
case 30:
|
|
172
|
+
_context.t1 = _context.sent;
|
|
173
|
+
_context.next = 36;
|
|
136
174
|
break;
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
175
|
+
|
|
176
|
+
case 33:
|
|
177
|
+
_context.next = 35;
|
|
178
|
+
return response.text();
|
|
179
|
+
|
|
180
|
+
case 35:
|
|
181
|
+
_context.t1 = _context.sent;
|
|
182
|
+
|
|
183
|
+
case 36:
|
|
184
|
+
errorBody = _context.t1;
|
|
185
|
+
|
|
186
|
+
case 37:
|
|
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
|
+
this.Log(JSON.stringify(error, null, 2), true);
|
|
197
|
+
throw error;
|
|
198
|
+
|
|
199
|
+
case 40:
|
|
200
|
+
this.Log("".concat(response.status, " - ").concat(method, " ").concat(uri.toString()));
|
|
201
|
+
return _context.abrupt("return", response);
|
|
202
|
+
|
|
203
|
+
case 42:
|
|
204
|
+
case "end":
|
|
205
|
+
return _context.stop();
|
|
206
|
+
}
|
|
169
207
|
}
|
|
170
208
|
}, _callee, this, [[8, 14]]);
|
|
171
209
|
}));
|
|
210
|
+
|
|
172
211
|
function Request(_x) {
|
|
173
212
|
return _Request.apply(this, arguments);
|
|
174
213
|
}
|
|
214
|
+
|
|
175
215
|
return Request;
|
|
176
216
|
}()
|
|
177
217
|
}, {
|
|
178
218
|
key: "URL",
|
|
179
219
|
value: function URL(_ref3) {
|
|
180
220
|
var path = _ref3.path,
|
|
181
|
-
|
|
182
|
-
|
|
221
|
+
_ref3$queryParams = _ref3.queryParams,
|
|
222
|
+
queryParams = _ref3$queryParams === void 0 ? {} : _ref3$queryParams;
|
|
183
223
|
return this.BaseURI().path(path).query(queryParams).hash("").toString();
|
|
184
224
|
}
|
|
185
225
|
}], [{
|
|
@@ -189,6 +229,8 @@ var HttpClient = /*#__PURE__*/function () {
|
|
|
189
229
|
return _Fetch(url, params);
|
|
190
230
|
}
|
|
191
231
|
}]);
|
|
232
|
+
|
|
192
233
|
return HttpClient;
|
|
193
234
|
}();
|
|
235
|
+
|
|
194
236
|
module.exports = HttpClient;
|
package/dist/src/Id.js
CHANGED
|
@@ -1,14 +1,17 @@
|
|
|
1
1
|
var _classCallCheck = require("@babel/runtime/helpers/classCallCheck");
|
|
2
|
+
|
|
2
3
|
var _createClass = require("@babel/runtime/helpers/createClass");
|
|
3
|
-
// Incremental numerical IDs
|
|
4
4
|
|
|
5
|
+
// Incremental numerical IDs
|
|
5
6
|
var __id = 0;
|
|
7
|
+
|
|
6
8
|
var Id = /*#__PURE__*/function () {
|
|
7
9
|
"use strict";
|
|
8
10
|
|
|
9
11
|
function Id() {
|
|
10
12
|
_classCallCheck(this, Id);
|
|
11
13
|
}
|
|
14
|
+
|
|
12
15
|
_createClass(Id, null, [{
|
|
13
16
|
key: "next",
|
|
14
17
|
value: function next() {
|
|
@@ -16,6 +19,8 @@ var Id = /*#__PURE__*/function () {
|
|
|
16
19
|
return __id;
|
|
17
20
|
}
|
|
18
21
|
}]);
|
|
22
|
+
|
|
19
23
|
return Id;
|
|
20
24
|
}();
|
|
25
|
+
|
|
21
26
|
module.exports = Id;
|
package/dist/src/LogMessage.js
CHANGED
|
@@ -1,25 +1,29 @@
|
|
|
1
1
|
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
2
|
+
|
|
2
3
|
var CustomLogFunc = function CustomLogFunc(attrName, debugOpts) {
|
|
3
4
|
return _typeof(debugOpts) === "object" && typeof debugOpts[attrName] === "function" ? debugOpts[attrName] : null;
|
|
4
5
|
};
|
|
6
|
+
|
|
5
7
|
var StringifyIfObject = function StringifyIfObject(message) {
|
|
6
8
|
return _typeof(message) === "object" ? JSON.stringify(message) : message;
|
|
7
9
|
};
|
|
10
|
+
|
|
8
11
|
var LogMessage = function LogMessage(reporter, message) {
|
|
9
12
|
var error = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
|
|
13
|
+
|
|
10
14
|
if (!reporter.debug) {
|
|
11
15
|
return;
|
|
12
16
|
}
|
|
17
|
+
|
|
13
18
|
var customLog = CustomLogFunc("log", reporter.debugOptions);
|
|
14
19
|
var customError = CustomLogFunc("error", reporter.debugOptions);
|
|
15
20
|
var prefix = "(elv-client-js#".concat(reporter.constructor.name, ")");
|
|
16
21
|
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
|
|
22
|
+
error ? customError ? customError(prefix, message) : // eslint-disable-next-line no-console
|
|
23
|
+
console.error(standardMsg) : customLog ? customLog(prefix, message) : // eslint-disable-next-line no-console
|
|
21
24
|
console.log(standardMsg);
|
|
22
25
|
};
|
|
26
|
+
|
|
23
27
|
module.exports = {
|
|
24
28
|
LogMessage: LogMessage
|
|
25
29
|
};
|