@eluvio/elv-client-js 4.0.111 → 4.0.113
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/package.json +1 -1
- package/src/FrameClient.js +2 -0
- package/dist/ElvClient-min.js +0 -67
- package/dist/ElvClient-node-min.js +0 -66
- package/dist/ElvFrameClient-min.js +0 -60
- package/dist/ElvPermissionsClient-min.js +0 -60
- package/dist/ElvWalletClient-min.js +0 -67
- package/dist/ElvWalletClient-node-min.js +0 -66
- package/dist/src/AuthorizationClient.js +0 -2157
- package/dist/src/ContentObjectAudit.js +0 -175
- package/dist/src/ContentObjectVerification.js +0 -281
- package/dist/src/Crypto.js +0 -412
- package/dist/src/ElvClient.js +0 -2049
- package/dist/src/ElvWallet.js +0 -245
- package/dist/src/EthClient.js +0 -1154
- package/dist/src/FrameClient.js +0 -485
- package/dist/src/HttpClient.js +0 -315
- package/dist/src/Id.js +0 -21
- package/dist/src/LogMessage.js +0 -25
- package/dist/src/PermissionsClient.js +0 -1544
- package/dist/src/RemoteSigner.js +0 -385
- package/dist/src/UserProfileClient.js +0 -1450
- package/dist/src/Utils.js +0 -894
- package/dist/src/Validation.js +0 -121
- package/dist/src/abr_profiles/abr_profile_live_drm.js +0 -1661
- package/dist/src/abr_profiles/abr_profile_live_to_vod.js +0 -1606
- package/dist/src/client/ABRPublishing.js +0 -1018
- package/dist/src/client/AccessGroups.js +0 -1503
- package/dist/src/client/ContentAccess.js +0 -5173
- package/dist/src/client/ContentManagement.js +0 -2680
- package/dist/src/client/Contracts.js +0 -1520
- package/dist/src/client/Files.js +0 -2181
- package/dist/src/client/LiveConf.js +0 -567
- package/dist/src/client/LiveStream.js +0 -2638
- package/dist/src/client/NFT.js +0 -162
- package/dist/src/client/NTP.js +0 -581
- package/dist/src/contracts/v2/AccessIndexor.js +0 -831
- package/dist/src/contracts/v2/Accessible.js +0 -31
- package/dist/src/contracts/v2/BaseAccessControlGroup.js +0 -1263
- package/dist/src/contracts/v2/BaseAccessWallet.js +0 -1609
- package/dist/src/contracts/v2/BaseAccessWalletFactory.js +0 -93
- package/dist/src/contracts/v2/BaseContent.js +0 -1076
- package/dist/src/contracts/v2/BaseContentFactory.js +0 -219
- package/dist/src/contracts/v2/BaseContentSpace.js +0 -1352
- package/dist/src/contracts/v2/BaseContentType.js +0 -364
- package/dist/src/contracts/v2/BaseFactory.js +0 -107
- package/dist/src/contracts/v2/BaseGroupFactory.js +0 -93
- package/dist/src/contracts/v2/BaseLibrary.js +0 -1041
- package/dist/src/contracts/v2/BaseLibraryFactory.js +0 -96
- package/dist/src/contracts/v2/Certifyer.js +0 -86
- package/dist/src/contracts/v2/Container.js +0 -540
- package/dist/src/contracts/v2/Content.js +0 -443
- package/dist/src/contracts/v2/Editable.js +0 -306
- package/dist/src/contracts/v2/ExternalUserWallet.js +0 -379
- package/dist/src/contracts/v2/IFactorySpace.js +0 -57
- package/dist/src/contracts/v2/IKmsSpace.js +0 -52
- package/dist/src/contracts/v2/INodeSpace.js +0 -18
- package/dist/src/contracts/v2/IUserSpace.js +0 -18
- package/dist/src/contracts/v2/LvRecordableStream.js +0 -1037
- package/dist/src/contracts/v2/LvRecording.js +0 -627
- package/dist/src/contracts/v2/LvStreamRightsHolder.js +0 -562
- package/dist/src/contracts/v2/MetaObject.js +0 -119
- package/dist/src/contracts/v2/Node.js +0 -167
- package/dist/src/contracts/v2/NodeSpace.js +0 -273
- package/dist/src/contracts/v2/Ownable.js +0 -87
- package/dist/src/contracts/v2/PaymentService.js +0 -627
- package/dist/src/contracts/v2/Precompile.js +0 -15
- package/dist/src/contracts/v2/Transactable.js +0 -82
- package/dist/src/contracts/v2/UserSpace.js +0 -29
- package/dist/src/contracts/v2/Utils.js +0 -18
- package/dist/src/contracts/v2/Verifier.js +0 -53
- package/dist/src/contracts/v2/strings.js +0 -4
- package/dist/src/contracts/v3/AccessIndexor.js +0 -774
- package/dist/src/contracts/v3/Accessible.js +0 -232
- package/dist/src/contracts/v3/Adminable.js +0 -107
- package/dist/src/contracts/v3/AvailsDelivery.js +0 -586
- package/dist/src/contracts/v3/BaseAccessControlGroup.js +0 -1603
- package/dist/src/contracts/v3/BaseAccessWallet.js +0 -1628
- package/dist/src/contracts/v3/BaseAccessWalletFactory.js +0 -112
- package/dist/src/contracts/v3/BaseContent.js +0 -1312
- package/dist/src/contracts/v3/BaseContentFactory.js +0 -183
- package/dist/src/contracts/v3/BaseContentFactoryExt.js +0 -175
- package/dist/src/contracts/v3/BaseContentSpace.js +0 -1515
- package/dist/src/contracts/v3/BaseContentType.js +0 -527
- package/dist/src/contracts/v3/BaseFactory.js +0 -126
- package/dist/src/contracts/v3/BaseGroupFactory.js +0 -112
- package/dist/src/contracts/v3/BaseLibrary.js +0 -1204
- package/dist/src/contracts/v3/BaseLibraryFactory.js +0 -115
- package/dist/src/contracts/v3/BaseTenantSpace.js +0 -1587
- package/dist/src/contracts/v3/Certifyer.js +0 -86
- package/dist/src/contracts/v3/Container.js +0 -739
- package/dist/src/contracts/v3/Content.js +0 -438
- package/dist/src/contracts/v3/CounterObject.js +0 -243
- package/dist/src/contracts/v3/Editable.js +0 -519
- package/dist/src/contracts/v3/EncToken.js +0 -4
- package/dist/src/contracts/v3/ExternalUserWallet.js +0 -587
- package/dist/src/contracts/v3/IAdmin.js +0 -18
- package/dist/src/contracts/v3/IFactorySpace.js +0 -57
- package/dist/src/contracts/v3/IKmsSpace.js +0 -52
- package/dist/src/contracts/v3/INodeSpace.js +0 -18
- package/dist/src/contracts/v3/IUserSpace.js +0 -32
- package/dist/src/contracts/v3/LvRecordableStream.js +0 -1032
- package/dist/src/contracts/v3/LvRecording.js +0 -650
- package/dist/src/contracts/v3/LvStreamRightsHolder.js +0 -557
- package/dist/src/contracts/v3/MetaObject.js +0 -144
- package/dist/src/contracts/v3/Node.js +0 -178
- package/dist/src/contracts/v3/NodeSpace.js +0 -284
- package/dist/src/contracts/v3/Ownable.js +0 -98
- package/dist/src/contracts/v3/PaymentService.js +0 -622
- package/dist/src/contracts/v3/Precompile.js +0 -26
- package/dist/src/contracts/v3/TenantFuncsBase.js +0 -351
- package/dist/src/contracts/v3/Transactable.js +0 -82
- package/dist/src/contracts/v3/UserSpace.js +0 -43
- package/dist/src/contracts/v3/Utils.js +0 -18
- package/dist/src/contracts/v3/Verifier.js +0 -53
- package/dist/src/contracts/v3/strings.js +0 -4
- package/dist/src/contracts/v3b/BaseAccessControlGroup.js +0 -1704
- package/dist/src/events/Topics.js +0 -1793
- package/dist/src/index.js +0 -8
- package/dist/src/walletClient/ClientMethods.js +0 -3102
- package/dist/src/walletClient/Configuration.js +0 -38
- package/dist/src/walletClient/Notifications.js +0 -168
- package/dist/src/walletClient/Profile.js +0 -332
- package/dist/src/walletClient/Utils.js +0 -281
- package/dist/src/walletClient/index.js +0 -2106
|
@@ -1,2157 +0,0 @@
|
|
|
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 _defineProperty = require("@babel/runtime/helpers/defineProperty");
|
|
6
|
-
var _v, _v2;
|
|
7
|
-
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; }
|
|
8
|
-
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; }
|
|
9
|
-
var HttpClient = require("./HttpClient");
|
|
10
|
-
var Ethers = require("ethers");
|
|
11
|
-
var Utils = require("./Utils");
|
|
12
|
-
var UrlJoin = require("url-join");
|
|
13
|
-
var _require = require("./LogMessage"),
|
|
14
|
-
LogMessage = _require.LogMessage;
|
|
15
|
-
|
|
16
|
-
/*
|
|
17
|
-
// -- Contract javascript files built using build/BuildContracts.js
|
|
18
|
-
const SpaceContract = require("./contracts/BaseContentSpace");
|
|
19
|
-
const LibraryContract = require("./contracts/BaseLibrary");
|
|
20
|
-
const TypeContract = require("./contracts/BaseContentType");
|
|
21
|
-
const ContentContract = require("./contracts/BaseContent");
|
|
22
|
-
const AccessGroupContract = require("./contracts/BaseAccessControlGroup");
|
|
23
|
-
const WalletContract = require("./contracts/BaseAccessWallet");
|
|
24
|
-
const AccessibleContract = require("./contracts/Accessible");
|
|
25
|
-
const EditableContract = require("./contracts/Editable");
|
|
26
|
-
*/
|
|
27
|
-
|
|
28
|
-
var ACCESS_TYPES = {
|
|
29
|
-
SPACE: "space",
|
|
30
|
-
LIBRARY: "library",
|
|
31
|
-
TYPE: "type",
|
|
32
|
-
OBJECT: "object",
|
|
33
|
-
WALLET: "wallet",
|
|
34
|
-
GROUP: "group",
|
|
35
|
-
ACCESSIBLE: "accessible",
|
|
36
|
-
EDITABLE: "editable",
|
|
37
|
-
TENANT: "tenant",
|
|
38
|
-
OTHER: "other"
|
|
39
|
-
};
|
|
40
|
-
var CONTRACTS = {
|
|
41
|
-
v2: (_v = {}, _defineProperty(_v, ACCESS_TYPES.SPACE, require("./contracts/v2/BaseContentSpace")), _defineProperty(_v, ACCESS_TYPES.LIBRARY, require("./contracts/v2/BaseLibrary")), _defineProperty(_v, ACCESS_TYPES.TYPE, require("./contracts/v2/BaseContentType")), _defineProperty(_v, ACCESS_TYPES.OBJECT, require("./contracts/v2/BaseContent")), _defineProperty(_v, ACCESS_TYPES.WALLET, require("./contracts/v2/BaseAccessWallet")), _defineProperty(_v, ACCESS_TYPES.GROUP, require("./contracts/v2/BaseAccessControlGroup")), _defineProperty(_v, ACCESS_TYPES.ACCESSIBLE, require("./contracts/v2/Accessible")), _defineProperty(_v, ACCESS_TYPES.EDITABLE, require("./contracts/v2/Editable")), _v),
|
|
42
|
-
v3: (_v2 = {}, _defineProperty(_v2, ACCESS_TYPES.SPACE, require("./contracts/v3/BaseContentSpace")), _defineProperty(_v2, ACCESS_TYPES.LIBRARY, require("./contracts/v3/BaseLibrary")), _defineProperty(_v2, ACCESS_TYPES.TYPE, require("./contracts/v3/BaseContentType")), _defineProperty(_v2, ACCESS_TYPES.OBJECT, require("./contracts/v3/BaseContent")), _defineProperty(_v2, ACCESS_TYPES.WALLET, require("./contracts/v3/BaseAccessWallet")), _defineProperty(_v2, ACCESS_TYPES.GROUP, require("./contracts/v3/BaseAccessControlGroup")), _defineProperty(_v2, ACCESS_TYPES.ACCESSIBLE, require("./contracts/v3/Accessible")), _defineProperty(_v2, ACCESS_TYPES.EDITABLE, require("./contracts/v3/Editable")), _defineProperty(_v2, ACCESS_TYPES.TENANT, require("./contracts/v3/BaseTenantSpace")), _v2),
|
|
43
|
-
v3b: _defineProperty({}, ACCESS_TYPES.GROUP, require("./contracts/v3b/BaseAccessControlGroup"))
|
|
44
|
-
};
|
|
45
|
-
var AuthorizationClient = /*#__PURE__*/function () {
|
|
46
|
-
"use strict";
|
|
47
|
-
|
|
48
|
-
function AuthorizationClient(_ref) {
|
|
49
|
-
var client = _ref.client,
|
|
50
|
-
contentSpaceId = _ref.contentSpaceId,
|
|
51
|
-
_ref$debug = _ref.debug,
|
|
52
|
-
debug = _ref$debug === void 0 ? false : _ref$debug,
|
|
53
|
-
_ref$noCache = _ref.noCache,
|
|
54
|
-
noCache = _ref$noCache === void 0 ? false : _ref$noCache,
|
|
55
|
-
_ref$noAuth = _ref.noAuth,
|
|
56
|
-
noAuth = _ref$noAuth === void 0 ? false : _ref$noAuth;
|
|
57
|
-
_classCallCheck(this, AuthorizationClient);
|
|
58
|
-
this.ACCESS_TYPES = ACCESS_TYPES;
|
|
59
|
-
this.CONTRACTS = CONTRACTS;
|
|
60
|
-
this.client = client;
|
|
61
|
-
this.contentSpaceId = contentSpaceId;
|
|
62
|
-
this.noCache = noCache;
|
|
63
|
-
this.noAuth = noAuth;
|
|
64
|
-
this.debug = debug;
|
|
65
|
-
this.accessTransactions = {};
|
|
66
|
-
this.modifyTransactions = {};
|
|
67
|
-
this.transactionLocks = {};
|
|
68
|
-
this.methodAvailability = {};
|
|
69
|
-
this.accessVersions = {};
|
|
70
|
-
this.accessTypes = {};
|
|
71
|
-
this.channelContentTokens = {};
|
|
72
|
-
this.encryptionKeys = {};
|
|
73
|
-
this.reencryptionKeys = {};
|
|
74
|
-
this.requestIds = {};
|
|
75
|
-
this.providers = {};
|
|
76
|
-
}
|
|
77
|
-
_createClass(AuthorizationClient, [{
|
|
78
|
-
key: "Log",
|
|
79
|
-
value: function Log(message) {
|
|
80
|
-
var error = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
|
|
81
|
-
LogMessage(this, message, error);
|
|
82
|
-
}
|
|
83
|
-
}, {
|
|
84
|
-
key: "CreateStaticToken",
|
|
85
|
-
value: function CreateStaticToken(_ref2) {
|
|
86
|
-
var libraryId = _ref2.libraryId;
|
|
87
|
-
var token = {
|
|
88
|
-
qspace_id: this.client.contentSpaceId
|
|
89
|
-
};
|
|
90
|
-
if (libraryId) {
|
|
91
|
-
token.qlib_id = libraryId;
|
|
92
|
-
}
|
|
93
|
-
return Utils.B64(JSON.stringify(token));
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
// Return authorization token in appropriate headers
|
|
97
|
-
}, {
|
|
98
|
-
key: "AuthorizationHeader",
|
|
99
|
-
value: function () {
|
|
100
|
-
var _AuthorizationHeader = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee(params) {
|
|
101
|
-
var authorizationToken, headers;
|
|
102
|
-
return _regeneratorRuntime.wrap(function _callee$(_context) {
|
|
103
|
-
while (1) switch (_context.prev = _context.next) {
|
|
104
|
-
case 0:
|
|
105
|
-
_context.next = 2;
|
|
106
|
-
return this.AuthorizationToken(params);
|
|
107
|
-
case 2:
|
|
108
|
-
authorizationToken = _context.sent;
|
|
109
|
-
headers = {
|
|
110
|
-
Authorization: "Bearer " + authorizationToken
|
|
111
|
-
};
|
|
112
|
-
if (params.encryption && params.encryption !== "none") {
|
|
113
|
-
headers["X-Content-Fabric-Encryption-Scheme"] = params.encryption;
|
|
114
|
-
}
|
|
115
|
-
return _context.abrupt("return", headers);
|
|
116
|
-
case 6:
|
|
117
|
-
case "end":
|
|
118
|
-
return _context.stop();
|
|
119
|
-
}
|
|
120
|
-
}, _callee, this);
|
|
121
|
-
}));
|
|
122
|
-
function AuthorizationHeader(_x) {
|
|
123
|
-
return _AuthorizationHeader.apply(this, arguments);
|
|
124
|
-
}
|
|
125
|
-
return AuthorizationHeader;
|
|
126
|
-
}()
|
|
127
|
-
}, {
|
|
128
|
-
key: "AuthorizationToken",
|
|
129
|
-
value: function () {
|
|
130
|
-
var _AuthorizationToken = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2(_ref3) {
|
|
131
|
-
var libraryId, objectId, versionHash, partHash, encryption, audienceData, context, _ref3$update, update, _ref3$makeAccessReque, makeAccessRequest, _ref3$channelAuth, channelAuth, oauthToken, _ref3$noCache, noCache, _ref3$noAuth, noAuth, isWalletRequest, initialNoCache, authorizationToken;
|
|
132
|
-
return _regeneratorRuntime.wrap(function _callee2$(_context2) {
|
|
133
|
-
while (1) switch (_context2.prev = _context2.next) {
|
|
134
|
-
case 0:
|
|
135
|
-
libraryId = _ref3.libraryId, objectId = _ref3.objectId, versionHash = _ref3.versionHash, partHash = _ref3.partHash, encryption = _ref3.encryption, audienceData = _ref3.audienceData, context = _ref3.context, _ref3$update = _ref3.update, update = _ref3$update === void 0 ? false : _ref3$update, _ref3$makeAccessReque = _ref3.makeAccessRequest, makeAccessRequest = _ref3$makeAccessReque === void 0 ? false : _ref3$makeAccessReque, _ref3$channelAuth = _ref3.channelAuth, channelAuth = _ref3$channelAuth === void 0 ? false : _ref3$channelAuth, oauthToken = _ref3.oauthToken, _ref3$noCache = _ref3.noCache, noCache = _ref3$noCache === void 0 ? false : _ref3$noCache, _ref3$noAuth = _ref3.noAuth, noAuth = _ref3$noAuth === void 0 ? false : _ref3$noAuth;
|
|
136
|
-
if (versionHash) {
|
|
137
|
-
objectId = this.client.utils.DecodeVersionHash(versionHash).objectId;
|
|
138
|
-
}
|
|
139
|
-
_context2.t0 = objectId && this.client.signer;
|
|
140
|
-
if (!_context2.t0) {
|
|
141
|
-
_context2.next = 10;
|
|
142
|
-
break;
|
|
143
|
-
}
|
|
144
|
-
_context2.t1 = this.client.utils;
|
|
145
|
-
_context2.next = 7;
|
|
146
|
-
return this.client.userProfileClient.WalletAddress(false);
|
|
147
|
-
case 7:
|
|
148
|
-
_context2.t2 = _context2.sent;
|
|
149
|
-
_context2.t3 = this.client.utils.HashToAddress(objectId);
|
|
150
|
-
_context2.t0 = _context2.t1.EqualAddress.call(_context2.t1, _context2.t2, _context2.t3);
|
|
151
|
-
case 10:
|
|
152
|
-
isWalletRequest = _context2.t0;
|
|
153
|
-
if (!(this.client.staticToken && !isWalletRequest)) {
|
|
154
|
-
_context2.next = 13;
|
|
155
|
-
break;
|
|
156
|
-
}
|
|
157
|
-
return _context2.abrupt("return", this.client.staticToken);
|
|
158
|
-
case 13:
|
|
159
|
-
initialNoCache = this.noCache;
|
|
160
|
-
_context2.prev = 14;
|
|
161
|
-
// noCache enabled for this call
|
|
162
|
-
if (noCache && !this.noCache) {
|
|
163
|
-
this.noCache = true;
|
|
164
|
-
}
|
|
165
|
-
if (channelAuth && this.client.signer && this.client.signer.remoteSigner) {
|
|
166
|
-
// Channel auth not supported for remote signer, use a self-signed no-auth token instead
|
|
167
|
-
noAuth = true;
|
|
168
|
-
channelAuth = false;
|
|
169
|
-
}
|
|
170
|
-
if (!channelAuth) {
|
|
171
|
-
_context2.next = 23;
|
|
172
|
-
break;
|
|
173
|
-
}
|
|
174
|
-
_context2.next = 20;
|
|
175
|
-
return this.GenerateChannelContentToken({
|
|
176
|
-
objectId: objectId,
|
|
177
|
-
versionHash: versionHash,
|
|
178
|
-
audienceData: audienceData,
|
|
179
|
-
context: context,
|
|
180
|
-
oauthToken: oauthToken
|
|
181
|
-
});
|
|
182
|
-
case 20:
|
|
183
|
-
authorizationToken = _context2.sent;
|
|
184
|
-
_context2.next = 28;
|
|
185
|
-
break;
|
|
186
|
-
case 23:
|
|
187
|
-
if (!(noAuth && this.client.signer && this.client.signer.remoteSigner && this.client.signer.unsignedPublicAuth)) {
|
|
188
|
-
_context2.next = 25;
|
|
189
|
-
break;
|
|
190
|
-
}
|
|
191
|
-
return _context2.abrupt("return", this.CreateStaticToken({
|
|
192
|
-
libraryId: libraryId
|
|
193
|
-
}));
|
|
194
|
-
case 25:
|
|
195
|
-
_context2.next = 27;
|
|
196
|
-
return this.GenerateAuthorizationToken({
|
|
197
|
-
libraryId: libraryId,
|
|
198
|
-
objectId: objectId,
|
|
199
|
-
versionHash: versionHash,
|
|
200
|
-
partHash: partHash,
|
|
201
|
-
encryption: encryption,
|
|
202
|
-
update: update,
|
|
203
|
-
makeAccessRequest: makeAccessRequest
|
|
204
|
-
});
|
|
205
|
-
case 27:
|
|
206
|
-
authorizationToken = _context2.sent;
|
|
207
|
-
case 28:
|
|
208
|
-
return _context2.abrupt("return", authorizationToken);
|
|
209
|
-
case 31:
|
|
210
|
-
_context2.prev = 31;
|
|
211
|
-
_context2.t4 = _context2["catch"](14);
|
|
212
|
-
throw _context2.t4;
|
|
213
|
-
case 34:
|
|
214
|
-
_context2.prev = 34;
|
|
215
|
-
this.noCache = initialNoCache;
|
|
216
|
-
return _context2.finish(34);
|
|
217
|
-
case 37:
|
|
218
|
-
case "end":
|
|
219
|
-
return _context2.stop();
|
|
220
|
-
}
|
|
221
|
-
}, _callee2, this, [[14, 31, 34, 37]]);
|
|
222
|
-
}));
|
|
223
|
-
function AuthorizationToken(_x2) {
|
|
224
|
-
return _AuthorizationToken.apply(this, arguments);
|
|
225
|
-
}
|
|
226
|
-
return AuthorizationToken;
|
|
227
|
-
}()
|
|
228
|
-
}, {
|
|
229
|
-
key: "GenerateAuthorizationToken",
|
|
230
|
-
value: function () {
|
|
231
|
-
var _GenerateAuthorizationToken = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee3(_ref4) {
|
|
232
|
-
var libraryId, objectId, versionHash, partHash, encryption, _ref4$update, update, _ref4$makeAccessReque, makeAccessRequest, publicKey, owner, ownerCapKey, ownerCap, cap, token, _yield$this$MakeAcces, transactionHash, signature, multiSig;
|
|
233
|
-
return _regeneratorRuntime.wrap(function _callee3$(_context3) {
|
|
234
|
-
while (1) switch (_context3.prev = _context3.next) {
|
|
235
|
-
case 0:
|
|
236
|
-
libraryId = _ref4.libraryId, objectId = _ref4.objectId, versionHash = _ref4.versionHash, partHash = _ref4.partHash, encryption = _ref4.encryption, _ref4$update = _ref4.update, update = _ref4$update === void 0 ? false : _ref4$update, _ref4$makeAccessReque = _ref4.makeAccessRequest, makeAccessRequest = _ref4$makeAccessReque === void 0 ? false : _ref4$makeAccessReque;
|
|
237
|
-
if (versionHash) {
|
|
238
|
-
objectId = Utils.DecodeVersionHash(versionHash).objectId;
|
|
239
|
-
}
|
|
240
|
-
|
|
241
|
-
// Generate AFGH public key if encryption is specified
|
|
242
|
-
_context3.t0 = encryption && encryption !== "none" && objectId;
|
|
243
|
-
if (!_context3.t0) {
|
|
244
|
-
_context3.next = 9;
|
|
245
|
-
break;
|
|
246
|
-
}
|
|
247
|
-
_context3.next = 6;
|
|
248
|
-
return this.AccessType(objectId);
|
|
249
|
-
case 6:
|
|
250
|
-
_context3.t1 = _context3.sent;
|
|
251
|
-
_context3.t2 = ACCESS_TYPES.OBJECT;
|
|
252
|
-
_context3.t0 = _context3.t1 === _context3.t2;
|
|
253
|
-
case 9:
|
|
254
|
-
if (!_context3.t0) {
|
|
255
|
-
_context3.next = 22;
|
|
256
|
-
break;
|
|
257
|
-
}
|
|
258
|
-
_context3.next = 12;
|
|
259
|
-
return this.Owner({
|
|
260
|
-
id: objectId
|
|
261
|
-
});
|
|
262
|
-
case 12:
|
|
263
|
-
owner = _context3.sent;
|
|
264
|
-
ownerCapKey = "eluv.caps.iusr".concat(Utils.AddressToHash(this.client.signer.address));
|
|
265
|
-
_context3.next = 16;
|
|
266
|
-
return this.client.ContentObjectMetadata({
|
|
267
|
-
libraryId: libraryId,
|
|
268
|
-
objectId: objectId,
|
|
269
|
-
versionHash: versionHash,
|
|
270
|
-
metadataSubtree: ownerCapKey
|
|
271
|
-
});
|
|
272
|
-
case 16:
|
|
273
|
-
ownerCap = _context3.sent;
|
|
274
|
-
if (!(!Utils.EqualAddress(owner, this.client.signer.address) && !ownerCap)) {
|
|
275
|
-
_context3.next = 22;
|
|
276
|
-
break;
|
|
277
|
-
}
|
|
278
|
-
_context3.next = 20;
|
|
279
|
-
return this.ReEncryptionConk({
|
|
280
|
-
libraryId: libraryId,
|
|
281
|
-
objectId: objectId
|
|
282
|
-
});
|
|
283
|
-
case 20:
|
|
284
|
-
cap = _context3.sent;
|
|
285
|
-
publicKey = cap.public_key;
|
|
286
|
-
case 22:
|
|
287
|
-
token = {
|
|
288
|
-
qspace_id: this.contentSpaceId,
|
|
289
|
-
addr: Utils.FormatAddress(this.client.signer && this.client.signer.address || "")
|
|
290
|
-
};
|
|
291
|
-
if (!(update || makeAccessRequest)) {
|
|
292
|
-
_context3.next = 29;
|
|
293
|
-
break;
|
|
294
|
-
}
|
|
295
|
-
_context3.next = 26;
|
|
296
|
-
return this.MakeAccessRequest({
|
|
297
|
-
libraryId: libraryId,
|
|
298
|
-
objectId: objectId,
|
|
299
|
-
versionHash: versionHash,
|
|
300
|
-
update: update,
|
|
301
|
-
publicKey: publicKey,
|
|
302
|
-
noCache: this.noCache
|
|
303
|
-
});
|
|
304
|
-
case 26:
|
|
305
|
-
_yield$this$MakeAcces = _context3.sent;
|
|
306
|
-
transactionHash = _yield$this$MakeAcces.transactionHash;
|
|
307
|
-
if (transactionHash) {
|
|
308
|
-
token.tx_id = transactionHash;
|
|
309
|
-
}
|
|
310
|
-
case 29:
|
|
311
|
-
if (libraryId) {
|
|
312
|
-
token.qlib_id = libraryId;
|
|
313
|
-
}
|
|
314
|
-
if (partHash) {
|
|
315
|
-
token.qphash = partHash;
|
|
316
|
-
}
|
|
317
|
-
if (publicKey) {
|
|
318
|
-
token.afgh_pk = publicKey;
|
|
319
|
-
}
|
|
320
|
-
token = Utils.B64(JSON.stringify(token));
|
|
321
|
-
_context3.next = 35;
|
|
322
|
-
return this.Sign(Ethers.utils.keccak256(Ethers.utils.toUtf8Bytes(token)));
|
|
323
|
-
case 35:
|
|
324
|
-
signature = _context3.sent;
|
|
325
|
-
multiSig = Utils.FormatSignature(signature);
|
|
326
|
-
return _context3.abrupt("return", "".concat(token, ".").concat(Utils.B64(multiSig)));
|
|
327
|
-
case 38:
|
|
328
|
-
case "end":
|
|
329
|
-
return _context3.stop();
|
|
330
|
-
}
|
|
331
|
-
}, _callee3, this);
|
|
332
|
-
}));
|
|
333
|
-
function GenerateAuthorizationToken(_x3) {
|
|
334
|
-
return _GenerateAuthorizationToken.apply(this, arguments);
|
|
335
|
-
}
|
|
336
|
-
return GenerateAuthorizationToken;
|
|
337
|
-
}()
|
|
338
|
-
}, {
|
|
339
|
-
key: "MakeAccessRequest",
|
|
340
|
-
value: function () {
|
|
341
|
-
var _MakeAccessRequest = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee4(_ref5) {
|
|
342
|
-
var _this = this;
|
|
343
|
-
var libraryId, objectId, versionHash, _ref5$args, args, _ref5$publicKey, publicKey, _ref5$update, update, _ref5$skipCache, skipCache, _ref5$noCache, noCache, cacheOnly, walletContractAddress, walletCreated, id, _yield$this$ContractI, isV3, accessType, abi, _yield$this$AccessInf, accessArgs, checkAccessCharge, address, elapsed, _cache, accessRequest, cache;
|
|
344
|
-
return _regeneratorRuntime.wrap(function _callee4$(_context4) {
|
|
345
|
-
while (1) switch (_context4.prev = _context4.next) {
|
|
346
|
-
case 0:
|
|
347
|
-
libraryId = _ref5.libraryId, objectId = _ref5.objectId, versionHash = _ref5.versionHash, _ref5$args = _ref5.args, args = _ref5$args === void 0 ? [] : _ref5$args, _ref5$publicKey = _ref5.publicKey, publicKey = _ref5$publicKey === void 0 ? "" : _ref5$publicKey, _ref5$update = _ref5.update, update = _ref5$update === void 0 ? false : _ref5$update, _ref5$skipCache = _ref5.skipCache, skipCache = _ref5$skipCache === void 0 ? false : _ref5$skipCache, _ref5$noCache = _ref5.noCache, noCache = _ref5$noCache === void 0 ? false : _ref5$noCache, cacheOnly = _ref5.cacheOnly;
|
|
348
|
-
if (this.client.signer) {
|
|
349
|
-
_context4.next = 3;
|
|
350
|
-
break;
|
|
351
|
-
}
|
|
352
|
-
return _context4.abrupt("return", {
|
|
353
|
-
transactionHash: ""
|
|
354
|
-
});
|
|
355
|
-
case 3:
|
|
356
|
-
_context4.next = 5;
|
|
357
|
-
return this.client.userProfileClient.UserWalletAddress({
|
|
358
|
-
address: this.client.signer.address
|
|
359
|
-
});
|
|
360
|
-
case 5:
|
|
361
|
-
walletContractAddress = _context4.sent;
|
|
362
|
-
if (walletContractAddress) {
|
|
363
|
-
_context4.next = 12;
|
|
364
|
-
break;
|
|
365
|
-
}
|
|
366
|
-
_context4.next = 9;
|
|
367
|
-
return this.client.userProfileClient.WalletAddress();
|
|
368
|
-
case 9:
|
|
369
|
-
walletCreated = _context4.sent;
|
|
370
|
-
if (walletCreated) {
|
|
371
|
-
_context4.next = 12;
|
|
372
|
-
break;
|
|
373
|
-
}
|
|
374
|
-
throw Error("User wallet contract is required to make access requests");
|
|
375
|
-
case 12:
|
|
376
|
-
if (versionHash) {
|
|
377
|
-
objectId = Utils.DecodeVersionHash(versionHash).objectId;
|
|
378
|
-
}
|
|
379
|
-
id = objectId || libraryId || this.contentSpaceId;
|
|
380
|
-
_context4.next = 16;
|
|
381
|
-
return this.ContractInfo({
|
|
382
|
-
id: id
|
|
383
|
-
});
|
|
384
|
-
case 16:
|
|
385
|
-
_yield$this$ContractI = _context4.sent;
|
|
386
|
-
isV3 = _yield$this$ContractI.isV3;
|
|
387
|
-
accessType = _yield$this$ContractI.accessType;
|
|
388
|
-
abi = _yield$this$ContractI.abi;
|
|
389
|
-
if (!(typeof accessType === "undefined")) {
|
|
390
|
-
_context4.next = 22;
|
|
391
|
-
break;
|
|
392
|
-
}
|
|
393
|
-
throw Error("Unable to determine contract info for ".concat(id, " (").concat(this.client.utils.HashToAddress(id), ") - Wrong network?"));
|
|
394
|
-
case 22:
|
|
395
|
-
_context4.next = 24;
|
|
396
|
-
return this.AccessInfo({
|
|
397
|
-
accessType: accessType,
|
|
398
|
-
publicKey: publicKey,
|
|
399
|
-
update: update,
|
|
400
|
-
args: args,
|
|
401
|
-
isV3: isV3
|
|
402
|
-
});
|
|
403
|
-
case 24:
|
|
404
|
-
_yield$this$AccessInf = _context4.sent;
|
|
405
|
-
accessArgs = _yield$this$AccessInf.accessArgs;
|
|
406
|
-
checkAccessCharge = _yield$this$AccessInf.checkAccessCharge;
|
|
407
|
-
address = Utils.HashToAddress(id);
|
|
408
|
-
elapsed = 0;
|
|
409
|
-
case 29:
|
|
410
|
-
if (!this.transactionLocks[id]) {
|
|
411
|
-
_context4.next = 36;
|
|
412
|
-
break;
|
|
413
|
-
}
|
|
414
|
-
_context4.next = 32;
|
|
415
|
-
return new Promise(function (resolve) {
|
|
416
|
-
return setTimeout(resolve, 100);
|
|
417
|
-
});
|
|
418
|
-
case 32:
|
|
419
|
-
elapsed += 100;
|
|
420
|
-
if (elapsed > 15000) {
|
|
421
|
-
this.Log("Lock never released for ".concat(id, " - releasing lock"));
|
|
422
|
-
delete this.transactionLocks[id];
|
|
423
|
-
}
|
|
424
|
-
_context4.next = 29;
|
|
425
|
-
break;
|
|
426
|
-
case 36:
|
|
427
|
-
_context4.prev = 36;
|
|
428
|
-
this.transactionLocks[id] = true;
|
|
429
|
-
|
|
430
|
-
// Check cache for existing transaction
|
|
431
|
-
if (!(!noCache && !skipCache)) {
|
|
432
|
-
_context4.next = 46;
|
|
433
|
-
break;
|
|
434
|
-
}
|
|
435
|
-
_cache = update ? this.modifyTransactions : this.accessTransactions;
|
|
436
|
-
if (!_cache[address]) {
|
|
437
|
-
_context4.next = 46;
|
|
438
|
-
break;
|
|
439
|
-
}
|
|
440
|
-
if (!(_cache[address].issuedAt > Date.now() - 12 * 60 * 60 * 1000)) {
|
|
441
|
-
_context4.next = 45;
|
|
442
|
-
break;
|
|
443
|
-
}
|
|
444
|
-
return _context4.abrupt("return", _cache[address]);
|
|
445
|
-
case 45:
|
|
446
|
-
// Token expired
|
|
447
|
-
delete _cache[address];
|
|
448
|
-
case 46:
|
|
449
|
-
if (!cacheOnly) {
|
|
450
|
-
_context4.next = 48;
|
|
451
|
-
break;
|
|
452
|
-
}
|
|
453
|
-
return _context4.abrupt("return");
|
|
454
|
-
case 48:
|
|
455
|
-
if (!update) {
|
|
456
|
-
_context4.next = 55;
|
|
457
|
-
break;
|
|
458
|
-
}
|
|
459
|
-
this.Log("Making update request on ".concat(accessType, " ").concat(id));
|
|
460
|
-
_context4.next = 52;
|
|
461
|
-
return this.UpdateRequest({
|
|
462
|
-
id: id,
|
|
463
|
-
abi: abi
|
|
464
|
-
});
|
|
465
|
-
case 52:
|
|
466
|
-
accessRequest = _context4.sent;
|
|
467
|
-
_context4.next = 59;
|
|
468
|
-
break;
|
|
469
|
-
case 55:
|
|
470
|
-
this.Log("Making access request on ".concat(accessType, " ").concat(id));
|
|
471
|
-
_context4.next = 58;
|
|
472
|
-
return this.AccessRequest({
|
|
473
|
-
id: id,
|
|
474
|
-
args: accessArgs,
|
|
475
|
-
checkAccessCharge: checkAccessCharge
|
|
476
|
-
});
|
|
477
|
-
case 58:
|
|
478
|
-
accessRequest = _context4.sent;
|
|
479
|
-
case 59:
|
|
480
|
-
cache = update ? this.modifyTransactions : this.accessTransactions;
|
|
481
|
-
_context4.prev = 60;
|
|
482
|
-
if (!noCache) {
|
|
483
|
-
cache[address] = {
|
|
484
|
-
issuedAt: Date.now(),
|
|
485
|
-
transactionHash: accessRequest.transactionHash
|
|
486
|
-
};
|
|
487
|
-
|
|
488
|
-
// Save request ID if present
|
|
489
|
-
accessRequest.logs.some(function (log) {
|
|
490
|
-
if (log.args && (log.args.requestID || log.args.requestNonce)) {
|
|
491
|
-
_this.requestIds[address] = (log.args.requestID || log.args.requestNonce || "").toString().replace(/^0x/, "");
|
|
492
|
-
return true;
|
|
493
|
-
}
|
|
494
|
-
});
|
|
495
|
-
}
|
|
496
|
-
return _context4.abrupt("return", accessRequest);
|
|
497
|
-
case 65:
|
|
498
|
-
_context4.prev = 65;
|
|
499
|
-
_context4.t0 = _context4["catch"](60);
|
|
500
|
-
if (!noCache) {
|
|
501
|
-
delete cache[address];
|
|
502
|
-
}
|
|
503
|
-
throw _context4.t0;
|
|
504
|
-
case 69:
|
|
505
|
-
_context4.prev = 69;
|
|
506
|
-
delete this.transactionLocks[id];
|
|
507
|
-
return _context4.finish(69);
|
|
508
|
-
case 72:
|
|
509
|
-
case "end":
|
|
510
|
-
return _context4.stop();
|
|
511
|
-
}
|
|
512
|
-
}, _callee4, this, [[36,, 69, 72], [60, 65]]);
|
|
513
|
-
}));
|
|
514
|
-
function MakeAccessRequest(_x4) {
|
|
515
|
-
return _MakeAccessRequest.apply(this, arguments);
|
|
516
|
-
}
|
|
517
|
-
return MakeAccessRequest;
|
|
518
|
-
}()
|
|
519
|
-
}, {
|
|
520
|
-
key: "AccessRequest",
|
|
521
|
-
value: function () {
|
|
522
|
-
var _AccessRequest = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee5(_ref6) {
|
|
523
|
-
var id, _ref6$args, args, _ref6$checkAccessChar, checkAccessCharge, _yield$this$ContractI2, isV3, accessType, abi, accessCharge, owner, accessChargeArgs, event, methodName, contractAddress;
|
|
524
|
-
return _regeneratorRuntime.wrap(function _callee5$(_context5) {
|
|
525
|
-
while (1) switch (_context5.prev = _context5.next) {
|
|
526
|
-
case 0:
|
|
527
|
-
id = _ref6.id, _ref6$args = _ref6.args, args = _ref6$args === void 0 ? [] : _ref6$args, _ref6$checkAccessChar = _ref6.checkAccessCharge, checkAccessCharge = _ref6$checkAccessChar === void 0 ? false : _ref6$checkAccessChar;
|
|
528
|
-
_context5.next = 3;
|
|
529
|
-
return this.ContractInfo({
|
|
530
|
-
id: id
|
|
531
|
-
});
|
|
532
|
-
case 3:
|
|
533
|
-
_yield$this$ContractI2 = _context5.sent;
|
|
534
|
-
isV3 = _yield$this$ContractI2.isV3;
|
|
535
|
-
accessType = _yield$this$ContractI2.accessType;
|
|
536
|
-
abi = _yield$this$ContractI2.abi;
|
|
537
|
-
// Send some bux if access charge is required
|
|
538
|
-
accessCharge = 0;
|
|
539
|
-
if (!(checkAccessCharge && accessType === ACCESS_TYPES.OBJECT)) {
|
|
540
|
-
_context5.next = 26;
|
|
541
|
-
break;
|
|
542
|
-
}
|
|
543
|
-
_context5.next = 11;
|
|
544
|
-
return this.Owner({
|
|
545
|
-
id: id,
|
|
546
|
-
abi: abi
|
|
547
|
-
});
|
|
548
|
-
case 11:
|
|
549
|
-
owner = _context5.sent;
|
|
550
|
-
if (Utils.EqualAddress(this.client.signer.address, owner)) {
|
|
551
|
-
_context5.next = 26;
|
|
552
|
-
break;
|
|
553
|
-
}
|
|
554
|
-
_context5.prev = 13;
|
|
555
|
-
// Extract level, custom values and stakeholders from accessRequest arguments
|
|
556
|
-
accessChargeArgs = isV3 ? [0, [], []] : [args[0], args[3], args[4]]; // Access charge is in wei, but methods take ether - convert to charge to ether
|
|
557
|
-
_context5.t0 = Utils;
|
|
558
|
-
_context5.next = 18;
|
|
559
|
-
return this.GetAccessCharge({
|
|
560
|
-
objectId: id,
|
|
561
|
-
args: accessChargeArgs
|
|
562
|
-
});
|
|
563
|
-
case 18:
|
|
564
|
-
_context5.t1 = _context5.sent;
|
|
565
|
-
accessCharge = _context5.t0.WeiToEther.call(_context5.t0, _context5.t1);
|
|
566
|
-
_context5.next = 26;
|
|
567
|
-
break;
|
|
568
|
-
case 22:
|
|
569
|
-
_context5.prev = 22;
|
|
570
|
-
_context5.t2 = _context5["catch"](13);
|
|
571
|
-
this.Log("Failed to get access charge for", id);
|
|
572
|
-
this.Log(_context5.t2);
|
|
573
|
-
case 26:
|
|
574
|
-
if (accessCharge > 0) {
|
|
575
|
-
this.Log("Access charge: ".concat(accessCharge));
|
|
576
|
-
}
|
|
577
|
-
contractAddress = Utils.HashToAddress(id);
|
|
578
|
-
if (isV3) {
|
|
579
|
-
methodName = "accessRequestV3";
|
|
580
|
-
} else {
|
|
581
|
-
methodName = "accessRequest";
|
|
582
|
-
}
|
|
583
|
-
_context5.next = 31;
|
|
584
|
-
return this.ContractHasMethod({
|
|
585
|
-
contractAddress: contractAddress,
|
|
586
|
-
abi: abi,
|
|
587
|
-
methodName: methodName
|
|
588
|
-
});
|
|
589
|
-
case 31:
|
|
590
|
-
if (_context5.sent) {
|
|
591
|
-
_context5.next = 34;
|
|
592
|
-
break;
|
|
593
|
-
}
|
|
594
|
-
this.Log("".concat(accessType, " ").concat(id, " has no ").concat(methodName, " method. Skipping"));
|
|
595
|
-
return _context5.abrupt("return", {
|
|
596
|
-
transactionHash: "",
|
|
597
|
-
logs: []
|
|
598
|
-
});
|
|
599
|
-
case 34:
|
|
600
|
-
_context5.next = 36;
|
|
601
|
-
return this.client.CallContractMethodAndWait({
|
|
602
|
-
contractAddress: contractAddress,
|
|
603
|
-
abi: abi,
|
|
604
|
-
methodName: methodName,
|
|
605
|
-
methodArgs: args,
|
|
606
|
-
value: accessCharge
|
|
607
|
-
});
|
|
608
|
-
case 36:
|
|
609
|
-
event = _context5.sent;
|
|
610
|
-
if (!(event.logs.length === 0)) {
|
|
611
|
-
_context5.next = 39;
|
|
612
|
-
break;
|
|
613
|
-
}
|
|
614
|
-
throw Error("Access denied (".concat(id, ")"));
|
|
615
|
-
case 39:
|
|
616
|
-
return _context5.abrupt("return", event);
|
|
617
|
-
case 40:
|
|
618
|
-
case "end":
|
|
619
|
-
return _context5.stop();
|
|
620
|
-
}
|
|
621
|
-
}, _callee5, this, [[13, 22]]);
|
|
622
|
-
}));
|
|
623
|
-
function AccessRequest(_x5) {
|
|
624
|
-
return _AccessRequest.apply(this, arguments);
|
|
625
|
-
}
|
|
626
|
-
return AccessRequest;
|
|
627
|
-
}()
|
|
628
|
-
}, {
|
|
629
|
-
key: "UpdateRequest",
|
|
630
|
-
value: function () {
|
|
631
|
-
var _UpdateRequest = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee6(_ref7) {
|
|
632
|
-
var id, abi, event, updateRequestEvent;
|
|
633
|
-
return _regeneratorRuntime.wrap(function _callee6$(_context6) {
|
|
634
|
-
while (1) switch (_context6.prev = _context6.next) {
|
|
635
|
-
case 0:
|
|
636
|
-
id = _ref7.id, abi = _ref7.abi;
|
|
637
|
-
_context6.next = 3;
|
|
638
|
-
return this.client.CallContractMethodAndWait({
|
|
639
|
-
contractAddress: Utils.HashToAddress(id),
|
|
640
|
-
abi: abi,
|
|
641
|
-
methodName: "updateRequest",
|
|
642
|
-
methodArgs: []
|
|
643
|
-
});
|
|
644
|
-
case 3:
|
|
645
|
-
event = _context6.sent;
|
|
646
|
-
updateRequestEvent = this.client.ExtractEventFromLogs({
|
|
647
|
-
abi: abi,
|
|
648
|
-
event: event,
|
|
649
|
-
eventName: "UpdateRequest"
|
|
650
|
-
});
|
|
651
|
-
if (!(event.logs.length === 0 || !updateRequestEvent)) {
|
|
652
|
-
_context6.next = 7;
|
|
653
|
-
break;
|
|
654
|
-
}
|
|
655
|
-
throw Error("Update request denied for ".concat(id));
|
|
656
|
-
case 7:
|
|
657
|
-
return _context6.abrupt("return", event);
|
|
658
|
-
case 8:
|
|
659
|
-
case "end":
|
|
660
|
-
return _context6.stop();
|
|
661
|
-
}
|
|
662
|
-
}, _callee6, this);
|
|
663
|
-
}));
|
|
664
|
-
function UpdateRequest(_x6) {
|
|
665
|
-
return _UpdateRequest.apply(this, arguments);
|
|
666
|
-
}
|
|
667
|
-
return UpdateRequest;
|
|
668
|
-
}()
|
|
669
|
-
}, {
|
|
670
|
-
key: "AudienceData",
|
|
671
|
-
value: function AudienceData(_ref8) {
|
|
672
|
-
var objectId = _ref8.objectId,
|
|
673
|
-
versionHash = _ref8.versionHash,
|
|
674
|
-
_ref8$protocols = _ref8.protocols,
|
|
675
|
-
protocols = _ref8$protocols === void 0 ? [] : _ref8$protocols,
|
|
676
|
-
_ref8$drms = _ref8.drms,
|
|
677
|
-
drms = _ref8$drms === void 0 ? [] : _ref8$drms,
|
|
678
|
-
context = _ref8.context;
|
|
679
|
-
this.Log("Retrieving audience data: ".concat(objectId));
|
|
680
|
-
context = context || this.client.authContext || {};
|
|
681
|
-
if (Object.values(context).find(function (value) {
|
|
682
|
-
return typeof value !== "string";
|
|
683
|
-
})) {
|
|
684
|
-
throw Error("Context must be a map of string->string");
|
|
685
|
-
}
|
|
686
|
-
var data = _objectSpread({
|
|
687
|
-
user_address: Utils.FormatAddress(this.client.signer.address),
|
|
688
|
-
content_id: objectId || Utils.DecodeVersionHash(versionHash).id,
|
|
689
|
-
content_hash: versionHash,
|
|
690
|
-
hostname: this.client.HttpClient.BaseURI().hostname(),
|
|
691
|
-
access_time: Math.round(new Date().getTime()).toString(),
|
|
692
|
-
format: protocols.join(","),
|
|
693
|
-
drm: drms.join(",")
|
|
694
|
-
}, context);
|
|
695
|
-
if (typeof window !== "undefined" && window.navigator) {
|
|
696
|
-
data.user_string = window.navigator.userAgent;
|
|
697
|
-
data.language = window.navigator.language;
|
|
698
|
-
}
|
|
699
|
-
this.Log(data);
|
|
700
|
-
return data;
|
|
701
|
-
}
|
|
702
|
-
}, {
|
|
703
|
-
key: "GenerateChannelContentToken",
|
|
704
|
-
value: function () {
|
|
705
|
-
var _GenerateChannelContentToken = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee7(_ref9) {
|
|
706
|
-
var objectId, versionHash, issuer, code, email, audienceData, context, oauthToken, _ref9$value, value, token, tenantId, kmsAddress, stateChannelApi, additionalParams, payload, signature, multiSig;
|
|
707
|
-
return _regeneratorRuntime.wrap(function _callee7$(_context7) {
|
|
708
|
-
while (1) switch (_context7.prev = _context7.next) {
|
|
709
|
-
case 0:
|
|
710
|
-
objectId = _ref9.objectId, versionHash = _ref9.versionHash, issuer = _ref9.issuer, code = _ref9.code, email = _ref9.email, audienceData = _ref9.audienceData, context = _ref9.context, oauthToken = _ref9.oauthToken, _ref9$value = _ref9.value, value = _ref9$value === void 0 ? 0 : _ref9$value;
|
|
711
|
-
if (!oauthToken) {
|
|
712
|
-
_context7.next = 5;
|
|
713
|
-
break;
|
|
714
|
-
}
|
|
715
|
-
_context7.next = 4;
|
|
716
|
-
return this.GenerateOauthChannelToken({
|
|
717
|
-
objectId: objectId,
|
|
718
|
-
token: oauthToken
|
|
719
|
-
});
|
|
720
|
-
case 4:
|
|
721
|
-
return _context7.abrupt("return", _context7.sent);
|
|
722
|
-
case 5:
|
|
723
|
-
if (!(!this.noCache && this.channelContentTokens[objectId])) {
|
|
724
|
-
_context7.next = 11;
|
|
725
|
-
break;
|
|
726
|
-
}
|
|
727
|
-
if (!(this.channelContentTokens[objectId].issuedAt > Date.now() - 12 * 60 * 60 * 1000)) {
|
|
728
|
-
_context7.next = 10;
|
|
729
|
-
break;
|
|
730
|
-
}
|
|
731
|
-
return _context7.abrupt("return", this.channelContentTokens[objectId].token);
|
|
732
|
-
case 10:
|
|
733
|
-
// Token expired
|
|
734
|
-
delete this.channelContentTokens[objectId];
|
|
735
|
-
case 11:
|
|
736
|
-
this.Log("Making state channel access request: ".concat(objectId));
|
|
737
|
-
if (!issuer) {
|
|
738
|
-
_context7.next = 43;
|
|
739
|
-
break;
|
|
740
|
-
}
|
|
741
|
-
// Ticket API
|
|
742
|
-
tenantId = issuer.replace(/^\//, "").split("/")[2];
|
|
743
|
-
_context7.prev = 14;
|
|
744
|
-
_context7.next = 17;
|
|
745
|
-
return this.client.CallContractMethod({
|
|
746
|
-
contractAddress: Utils.HashToAddress(tenantId),
|
|
747
|
-
methodName: "addressKMS"
|
|
748
|
-
});
|
|
749
|
-
case 17:
|
|
750
|
-
kmsAddress = _context7.sent;
|
|
751
|
-
if (kmsAddress) {
|
|
752
|
-
_context7.next = 20;
|
|
753
|
-
break;
|
|
754
|
-
}
|
|
755
|
-
throw "";
|
|
756
|
-
case 20:
|
|
757
|
-
_context7.next = 27;
|
|
758
|
-
break;
|
|
759
|
-
case 22:
|
|
760
|
-
_context7.prev = 22;
|
|
761
|
-
_context7.t0 = _context7["catch"](14);
|
|
762
|
-
_context7.next = 26;
|
|
763
|
-
return this.client.DefaultKMSAddress();
|
|
764
|
-
case 26:
|
|
765
|
-
kmsAddress = _context7.sent;
|
|
766
|
-
case 27:
|
|
767
|
-
_context7.prev = 27;
|
|
768
|
-
_context7.next = 30;
|
|
769
|
-
return Utils.ResponseToFormat("text", this.MakeAuthServiceRequest({
|
|
770
|
-
kmsId: "ikms" + Utils.AddressToHash(kmsAddress),
|
|
771
|
-
method: "POST",
|
|
772
|
-
path: UrlJoin("as", issuer),
|
|
773
|
-
body: {
|
|
774
|
-
"_PASSWORD": code,
|
|
775
|
-
"_EMAIL": email
|
|
776
|
-
}
|
|
777
|
-
}));
|
|
778
|
-
case 30:
|
|
779
|
-
token = _context7.sent;
|
|
780
|
-
_context7.next = 40;
|
|
781
|
-
break;
|
|
782
|
-
case 33:
|
|
783
|
-
_context7.prev = 33;
|
|
784
|
-
_context7.t1 = _context7["catch"](27);
|
|
785
|
-
this.Log("/as token redemption failed:", true);
|
|
786
|
-
this.Log(_context7.t1, true);
|
|
787
|
-
_context7.next = 39;
|
|
788
|
-
return Utils.ResponseToFormat("text", this.MakeKMSRequest({
|
|
789
|
-
kmsId: "ikms" + Utils.AddressToHash(kmsAddress),
|
|
790
|
-
method: "POST",
|
|
791
|
-
path: UrlJoin("ks", issuer),
|
|
792
|
-
body: {
|
|
793
|
-
"_PASSWORD": code,
|
|
794
|
-
"_EMAIL": email
|
|
795
|
-
}
|
|
796
|
-
}));
|
|
797
|
-
case 39:
|
|
798
|
-
token = _context7.sent;
|
|
799
|
-
case 40:
|
|
800
|
-
// Pull target object from token so token can be cached
|
|
801
|
-
objectId = JSON.parse(Utils.FromB64(token)).qid;
|
|
802
|
-
_context7.next = 54;
|
|
803
|
-
break;
|
|
804
|
-
case 43:
|
|
805
|
-
// State channel API
|
|
806
|
-
if (!audienceData) {
|
|
807
|
-
audienceData = this.AudienceData({
|
|
808
|
-
objectId: objectId,
|
|
809
|
-
versionHash: versionHash,
|
|
810
|
-
context: context
|
|
811
|
-
});
|
|
812
|
-
}
|
|
813
|
-
stateChannelApi = "elv_channelContentRequestContext";
|
|
814
|
-
additionalParams = [JSON.stringify(audienceData)];
|
|
815
|
-
_context7.next = 48;
|
|
816
|
-
return this.MakeKMSCall({
|
|
817
|
-
objectId: objectId,
|
|
818
|
-
methodName: stateChannelApi,
|
|
819
|
-
paramTypes: ["address", "address", "uint", "uint"],
|
|
820
|
-
params: [this.client.signer.address, Utils.HashToAddress(objectId), value, Date.now()],
|
|
821
|
-
additionalParams: additionalParams
|
|
822
|
-
});
|
|
823
|
-
case 48:
|
|
824
|
-
payload = _context7.sent;
|
|
825
|
-
_context7.next = 51;
|
|
826
|
-
return this.Sign(Ethers.utils.keccak256(Ethers.utils.toUtf8Bytes(payload)));
|
|
827
|
-
case 51:
|
|
828
|
-
signature = _context7.sent;
|
|
829
|
-
multiSig = Utils.FormatSignature(signature);
|
|
830
|
-
token = "".concat(payload, ".").concat(Utils.B64(multiSig));
|
|
831
|
-
case 54:
|
|
832
|
-
if (!this.noCache) {
|
|
833
|
-
this.channelContentTokens[objectId] = {
|
|
834
|
-
token: token,
|
|
835
|
-
issuedAt: Date.now()
|
|
836
|
-
};
|
|
837
|
-
}
|
|
838
|
-
return _context7.abrupt("return", token);
|
|
839
|
-
case 56:
|
|
840
|
-
case "end":
|
|
841
|
-
return _context7.stop();
|
|
842
|
-
}
|
|
843
|
-
}, _callee7, this, [[14, 22], [27, 33]]);
|
|
844
|
-
}));
|
|
845
|
-
function GenerateChannelContentToken(_x7) {
|
|
846
|
-
return _GenerateChannelContentToken.apply(this, arguments);
|
|
847
|
-
}
|
|
848
|
-
return GenerateChannelContentToken;
|
|
849
|
-
}()
|
|
850
|
-
}, {
|
|
851
|
-
key: "ChannelContentFinalize",
|
|
852
|
-
value: function () {
|
|
853
|
-
var _ChannelContentFinalize = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee8(_ref10) {
|
|
854
|
-
var objectId, versionHash, _ref10$percent, percent, result;
|
|
855
|
-
return _regeneratorRuntime.wrap(function _callee8$(_context8) {
|
|
856
|
-
while (1) switch (_context8.prev = _context8.next) {
|
|
857
|
-
case 0:
|
|
858
|
-
objectId = _ref10.objectId, versionHash = _ref10.versionHash, _ref10$percent = _ref10.percent, percent = _ref10$percent === void 0 ? 0 : _ref10$percent;
|
|
859
|
-
this.Log("Making state channel finalize request: ".concat(objectId));
|
|
860
|
-
_context8.next = 4;
|
|
861
|
-
return this.MakeKMSCall({
|
|
862
|
-
objectId: objectId,
|
|
863
|
-
methodName: "elv_channelContentFinalizeContext",
|
|
864
|
-
paramTypes: ["address", "address", "uint", "uint"],
|
|
865
|
-
params: [this.client.signer.address, Utils.HashToAddress(objectId), percent, Date.now()],
|
|
866
|
-
additionalParams: [JSON.stringify(this.AudienceData({
|
|
867
|
-
objectId: objectId,
|
|
868
|
-
versionHash: versionHash
|
|
869
|
-
}))]
|
|
870
|
-
});
|
|
871
|
-
case 4:
|
|
872
|
-
result = _context8.sent;
|
|
873
|
-
this.channelContentTokens[objectId] = undefined;
|
|
874
|
-
return _context8.abrupt("return", result);
|
|
875
|
-
case 7:
|
|
876
|
-
case "end":
|
|
877
|
-
return _context8.stop();
|
|
878
|
-
}
|
|
879
|
-
}, _callee8, this);
|
|
880
|
-
}));
|
|
881
|
-
function ChannelContentFinalize(_x8) {
|
|
882
|
-
return _ChannelContentFinalize.apply(this, arguments);
|
|
883
|
-
}
|
|
884
|
-
return ChannelContentFinalize;
|
|
885
|
-
}()
|
|
886
|
-
}, {
|
|
887
|
-
key: "GenerateOauthChannelToken",
|
|
888
|
-
value: function () {
|
|
889
|
-
var _GenerateOauthChannelToken = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee9(_ref11) {
|
|
890
|
-
var objectId, versionHash, token, fabricToken;
|
|
891
|
-
return _regeneratorRuntime.wrap(function _callee9$(_context9) {
|
|
892
|
-
while (1) switch (_context9.prev = _context9.next) {
|
|
893
|
-
case 0:
|
|
894
|
-
objectId = _ref11.objectId, versionHash = _ref11.versionHash, token = _ref11.token;
|
|
895
|
-
if (versionHash) {
|
|
896
|
-
objectId = Utils.DecodeVersionHash(versionHash).objectId;
|
|
897
|
-
}
|
|
898
|
-
if (!(!this.noCache && this.channelContentTokens[objectId])) {
|
|
899
|
-
_context9.next = 6;
|
|
900
|
-
break;
|
|
901
|
-
}
|
|
902
|
-
if (!(this.channelContentTokens[objectId].issuedAt > Date.now() - 12 * 60 * 60 * 1000)) {
|
|
903
|
-
_context9.next = 5;
|
|
904
|
-
break;
|
|
905
|
-
}
|
|
906
|
-
return _context9.abrupt("return", this.channelContentTokens[objectId].token);
|
|
907
|
-
case 5:
|
|
908
|
-
// Token expired
|
|
909
|
-
this.channelContentTokens[objectId] = undefined;
|
|
910
|
-
case 6:
|
|
911
|
-
_context9.next = 8;
|
|
912
|
-
return this.MakeKMSRequest({
|
|
913
|
-
objectId: objectId,
|
|
914
|
-
versionHash: versionHash,
|
|
915
|
-
method: "GET",
|
|
916
|
-
path: UrlJoin("ks", "jwt", "q", objectId),
|
|
917
|
-
bodyType: "NONE",
|
|
918
|
-
headers: {
|
|
919
|
-
Authorization: "Bearer ".concat(token)
|
|
920
|
-
}
|
|
921
|
-
});
|
|
922
|
-
case 8:
|
|
923
|
-
_context9.next = 10;
|
|
924
|
-
return _context9.sent.text();
|
|
925
|
-
case 10:
|
|
926
|
-
fabricToken = _context9.sent;
|
|
927
|
-
if (!this.noCache) {
|
|
928
|
-
this.channelContentTokens[objectId] = {
|
|
929
|
-
token: fabricToken,
|
|
930
|
-
issuedAt: Date.now()
|
|
931
|
-
};
|
|
932
|
-
}
|
|
933
|
-
return _context9.abrupt("return", fabricToken);
|
|
934
|
-
case 13:
|
|
935
|
-
case "end":
|
|
936
|
-
return _context9.stop();
|
|
937
|
-
}
|
|
938
|
-
}, _callee9, this);
|
|
939
|
-
}));
|
|
940
|
-
function GenerateOauthChannelToken(_x9) {
|
|
941
|
-
return _GenerateOauthChannelToken.apply(this, arguments);
|
|
942
|
-
}
|
|
943
|
-
return GenerateOauthChannelToken;
|
|
944
|
-
}()
|
|
945
|
-
}, {
|
|
946
|
-
key: "IsV3",
|
|
947
|
-
value: function () {
|
|
948
|
-
var _IsV = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee10(_ref12) {
|
|
949
|
-
var id, contractName;
|
|
950
|
-
return _regeneratorRuntime.wrap(function _callee10$(_context10) {
|
|
951
|
-
while (1) switch (_context10.prev = _context10.next) {
|
|
952
|
-
case 0:
|
|
953
|
-
id = _ref12.id;
|
|
954
|
-
if (!this.client.assumeV3) {
|
|
955
|
-
_context10.next = 3;
|
|
956
|
-
break;
|
|
957
|
-
}
|
|
958
|
-
return _context10.abrupt("return", true);
|
|
959
|
-
case 3:
|
|
960
|
-
_context10.next = 5;
|
|
961
|
-
return this.client.ethClient.ContractName(Utils.HashToAddress(id), true);
|
|
962
|
-
case 5:
|
|
963
|
-
contractName = _context10.sent;
|
|
964
|
-
if (!this.accessVersions[contractName]) {
|
|
965
|
-
this.accessVersions[contractName] = this.ContractHasMethod({
|
|
966
|
-
contractAddress: this.client.utils.HashToAddress(id),
|
|
967
|
-
abi: this.CONTRACTS.v3[this.ACCESS_TYPES.ACCESSIBLE].abi,
|
|
968
|
-
methodName: "accessRequestV3"
|
|
969
|
-
});
|
|
970
|
-
}
|
|
971
|
-
_context10.next = 9;
|
|
972
|
-
return this.accessVersions[contractName];
|
|
973
|
-
case 9:
|
|
974
|
-
return _context10.abrupt("return", _context10.sent);
|
|
975
|
-
case 10:
|
|
976
|
-
case "end":
|
|
977
|
-
return _context10.stop();
|
|
978
|
-
}
|
|
979
|
-
}, _callee10, this);
|
|
980
|
-
}));
|
|
981
|
-
function IsV3(_x10) {
|
|
982
|
-
return _IsV.apply(this, arguments);
|
|
983
|
-
}
|
|
984
|
-
return IsV3;
|
|
985
|
-
}()
|
|
986
|
-
}, {
|
|
987
|
-
key: "AccessInfo",
|
|
988
|
-
value: function () {
|
|
989
|
-
var _AccessInfo = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee11(_ref13) {
|
|
990
|
-
var accessType, publicKey, args, isV3, checkAccessCharge;
|
|
991
|
-
return _regeneratorRuntime.wrap(function _callee11$(_context11) {
|
|
992
|
-
while (1) switch (_context11.prev = _context11.next) {
|
|
993
|
-
case 0:
|
|
994
|
-
accessType = _ref13.accessType, publicKey = _ref13.publicKey, args = _ref13.args, isV3 = _ref13.isV3;
|
|
995
|
-
checkAccessCharge = false;
|
|
996
|
-
if (accessType === ACCESS_TYPES.OBJECT) {
|
|
997
|
-
checkAccessCharge = true;
|
|
998
|
-
if (!isV3) {
|
|
999
|
-
if (args && args.length > 0) {
|
|
1000
|
-
// Inject public key of requester
|
|
1001
|
-
args[1] = this.client.signer._signingKey ? this.client.signer._signingKey().publicKey : "";
|
|
1002
|
-
} else {
|
|
1003
|
-
// Set default args
|
|
1004
|
-
args = [0,
|
|
1005
|
-
// Access level
|
|
1006
|
-
this.client.signer._signingKey ? this.client.signer._signingKey().publicKey : "",
|
|
1007
|
-
// Public key of requester
|
|
1008
|
-
publicKey,
|
|
1009
|
-
//cap.public_key,
|
|
1010
|
-
[],
|
|
1011
|
-
// Custom values
|
|
1012
|
-
[] // Stakeholders
|
|
1013
|
-
];
|
|
1014
|
-
}
|
|
1015
|
-
}
|
|
1016
|
-
}
|
|
1017
|
-
|
|
1018
|
-
if (isV3 && (!args || args.length === 0)) {
|
|
1019
|
-
args = [[],
|
|
1020
|
-
// customValues
|
|
1021
|
-
[] // stakeholders
|
|
1022
|
-
];
|
|
1023
|
-
}
|
|
1024
|
-
return _context11.abrupt("return", {
|
|
1025
|
-
accessArgs: args,
|
|
1026
|
-
checkAccessCharge: checkAccessCharge
|
|
1027
|
-
});
|
|
1028
|
-
case 5:
|
|
1029
|
-
case "end":
|
|
1030
|
-
return _context11.stop();
|
|
1031
|
-
}
|
|
1032
|
-
}, _callee11, this);
|
|
1033
|
-
}));
|
|
1034
|
-
function AccessInfo(_x11) {
|
|
1035
|
-
return _AccessInfo.apply(this, arguments);
|
|
1036
|
-
}
|
|
1037
|
-
return AccessInfo;
|
|
1038
|
-
}() // Determine type of ID based on contract version string
|
|
1039
|
-
}, {
|
|
1040
|
-
key: "AccessType",
|
|
1041
|
-
value: function () {
|
|
1042
|
-
var _AccessType = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee12(id) {
|
|
1043
|
-
var contractName, accessType;
|
|
1044
|
-
return _regeneratorRuntime.wrap(function _callee12$(_context12) {
|
|
1045
|
-
while (1) switch (_context12.prev = _context12.next) {
|
|
1046
|
-
case 0:
|
|
1047
|
-
_context12.next = 2;
|
|
1048
|
-
return this.client.ethClient.ContractName(Utils.HashToAddress(id));
|
|
1049
|
-
case 2:
|
|
1050
|
-
contractName = _context12.sent;
|
|
1051
|
-
if (this.accessTypes[id]) {
|
|
1052
|
-
_context12.next = 23;
|
|
1053
|
-
break;
|
|
1054
|
-
}
|
|
1055
|
-
_context12.t0 = contractName;
|
|
1056
|
-
_context12.next = _context12.t0 === "BaseContentSpace" ? 7 : _context12.t0 === "BaseLibrary" ? 9 : _context12.t0 === "BaseContentType" ? 11 : _context12.t0 === "BsAccessWallet" ? 13 : _context12.t0 === "BsAccessCtrlGrp" ? 15 : _context12.t0 === "BaseContent" ? 17 : _context12.t0 === "BaseTenantSpace" ? 19 : 21;
|
|
1057
|
-
break;
|
|
1058
|
-
case 7:
|
|
1059
|
-
accessType = ACCESS_TYPES.SPACE;
|
|
1060
|
-
return _context12.abrupt("break", 22);
|
|
1061
|
-
case 9:
|
|
1062
|
-
accessType = ACCESS_TYPES.LIBRARY;
|
|
1063
|
-
return _context12.abrupt("break", 22);
|
|
1064
|
-
case 11:
|
|
1065
|
-
accessType = ACCESS_TYPES.TYPE;
|
|
1066
|
-
return _context12.abrupt("break", 22);
|
|
1067
|
-
case 13:
|
|
1068
|
-
accessType = ACCESS_TYPES.WALLET;
|
|
1069
|
-
return _context12.abrupt("break", 22);
|
|
1070
|
-
case 15:
|
|
1071
|
-
accessType = ACCESS_TYPES.GROUP;
|
|
1072
|
-
return _context12.abrupt("break", 22);
|
|
1073
|
-
case 17:
|
|
1074
|
-
accessType = ACCESS_TYPES.OBJECT;
|
|
1075
|
-
return _context12.abrupt("break", 22);
|
|
1076
|
-
case 19:
|
|
1077
|
-
accessType = ACCESS_TYPES.TENANT;
|
|
1078
|
-
return _context12.abrupt("break", 22);
|
|
1079
|
-
case 21:
|
|
1080
|
-
accessType = ACCESS_TYPES.OTHER;
|
|
1081
|
-
case 22:
|
|
1082
|
-
this.accessTypes[id] = accessType;
|
|
1083
|
-
case 23:
|
|
1084
|
-
return _context12.abrupt("return", this.accessTypes[id]);
|
|
1085
|
-
case 24:
|
|
1086
|
-
case "end":
|
|
1087
|
-
return _context12.stop();
|
|
1088
|
-
}
|
|
1089
|
-
}, _callee12, this);
|
|
1090
|
-
}));
|
|
1091
|
-
function AccessType(_x12) {
|
|
1092
|
-
return _AccessType.apply(this, arguments);
|
|
1093
|
-
}
|
|
1094
|
-
return AccessType;
|
|
1095
|
-
}()
|
|
1096
|
-
}, {
|
|
1097
|
-
key: "AccessComplete",
|
|
1098
|
-
value: function () {
|
|
1099
|
-
var _AccessComplete = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee13(_ref14) {
|
|
1100
|
-
var id, score, _yield$this$ContractI3, abi, isV3, address, requestId, event;
|
|
1101
|
-
return _regeneratorRuntime.wrap(function _callee13$(_context13) {
|
|
1102
|
-
while (1) switch (_context13.prev = _context13.next) {
|
|
1103
|
-
case 0:
|
|
1104
|
-
id = _ref14.id, score = _ref14.score;
|
|
1105
|
-
this.Log("Calling access complete on ".concat(id, " with score ").concat(score));
|
|
1106
|
-
_context13.next = 4;
|
|
1107
|
-
return this.ContractInfo({
|
|
1108
|
-
id: id
|
|
1109
|
-
});
|
|
1110
|
-
case 4:
|
|
1111
|
-
_yield$this$ContractI3 = _context13.sent;
|
|
1112
|
-
abi = _yield$this$ContractI3.abi;
|
|
1113
|
-
isV3 = _yield$this$ContractI3.isV3;
|
|
1114
|
-
address = Utils.HashToAddress(id);
|
|
1115
|
-
requestId = this.requestIds[address];
|
|
1116
|
-
if (requestId) {
|
|
1117
|
-
_context13.next = 11;
|
|
1118
|
-
break;
|
|
1119
|
-
}
|
|
1120
|
-
throw Error("Unknown request ID for " + id);
|
|
1121
|
-
case 11:
|
|
1122
|
-
if (!isV3) {
|
|
1123
|
-
_context13.next = 17;
|
|
1124
|
-
break;
|
|
1125
|
-
}
|
|
1126
|
-
_context13.next = 14;
|
|
1127
|
-
return this.client.CallContractMethodAndWait({
|
|
1128
|
-
contractAddress: address,
|
|
1129
|
-
abi: abi,
|
|
1130
|
-
methodName: "accessCompleteV3",
|
|
1131
|
-
methodArgs: [requestId, [], []]
|
|
1132
|
-
});
|
|
1133
|
-
case 14:
|
|
1134
|
-
event = _context13.sent;
|
|
1135
|
-
_context13.next = 20;
|
|
1136
|
-
break;
|
|
1137
|
-
case 17:
|
|
1138
|
-
_context13.next = 19;
|
|
1139
|
-
return this.client.CallContractMethodAndWait({
|
|
1140
|
-
contractAddress: address,
|
|
1141
|
-
abi: abi,
|
|
1142
|
-
methodName: isV3 ? "accessCompleteV3" : "accessComplete",
|
|
1143
|
-
methodArgs: [requestId, score, ""]
|
|
1144
|
-
});
|
|
1145
|
-
case 19:
|
|
1146
|
-
event = _context13.sent;
|
|
1147
|
-
case 20:
|
|
1148
|
-
delete this.requestIds[address];
|
|
1149
|
-
delete this.accessTransactions[address];
|
|
1150
|
-
return _context13.abrupt("return", event);
|
|
1151
|
-
case 23:
|
|
1152
|
-
case "end":
|
|
1153
|
-
return _context13.stop();
|
|
1154
|
-
}
|
|
1155
|
-
}, _callee13, this);
|
|
1156
|
-
}));
|
|
1157
|
-
function AccessComplete(_x13) {
|
|
1158
|
-
return _AccessComplete.apply(this, arguments);
|
|
1159
|
-
}
|
|
1160
|
-
return AccessComplete;
|
|
1161
|
-
}() /* Utility methods */
|
|
1162
|
-
}, {
|
|
1163
|
-
key: "ContractInfo",
|
|
1164
|
-
value: function () {
|
|
1165
|
-
var _ContractInfo = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee14(_ref15) {
|
|
1166
|
-
var id, address, isV3, contractName, accessType, v3Version, version;
|
|
1167
|
-
return _regeneratorRuntime.wrap(function _callee14$(_context14) {
|
|
1168
|
-
while (1) switch (_context14.prev = _context14.next) {
|
|
1169
|
-
case 0:
|
|
1170
|
-
id = _ref15.id, address = _ref15.address;
|
|
1171
|
-
if (!address) {
|
|
1172
|
-
address = Utils.HashToAddress(id);
|
|
1173
|
-
}
|
|
1174
|
-
if (!id) {
|
|
1175
|
-
id = Utils.AddressToObjectId(address);
|
|
1176
|
-
}
|
|
1177
|
-
_context14.next = 5;
|
|
1178
|
-
return this.IsV3({
|
|
1179
|
-
id: id
|
|
1180
|
-
});
|
|
1181
|
-
case 5:
|
|
1182
|
-
isV3 = _context14.sent;
|
|
1183
|
-
_context14.next = 8;
|
|
1184
|
-
return this.client.ethClient.ContractName(Utils.HashToAddress(id), true);
|
|
1185
|
-
case 8:
|
|
1186
|
-
contractName = _context14.sent;
|
|
1187
|
-
_context14.next = 11;
|
|
1188
|
-
return this.AccessType(id);
|
|
1189
|
-
case 11:
|
|
1190
|
-
accessType = _context14.sent;
|
|
1191
|
-
// Contract BsAccessCtrlGrp20210809150000PO has an outdated isAdmin method that checks a managersList array instead of managersMap
|
|
1192
|
-
v3Version = contractName === "BsAccessCtrlGrp20210809150000PO" && accessType === this.ACCESS_TYPES.GROUP ? "v3b" : "v3";
|
|
1193
|
-
version = isV3 ? v3Version : "v2";
|
|
1194
|
-
if (!(accessType === this.ACCESS_TYPES.OTHER)) {
|
|
1195
|
-
_context14.next = 16;
|
|
1196
|
-
break;
|
|
1197
|
-
}
|
|
1198
|
-
return _context14.abrupt("return", {});
|
|
1199
|
-
case 16:
|
|
1200
|
-
return _context14.abrupt("return", {
|
|
1201
|
-
isV3: isV3,
|
|
1202
|
-
accessType: accessType,
|
|
1203
|
-
abi: this.CONTRACTS[version][accessType].abi
|
|
1204
|
-
});
|
|
1205
|
-
case 17:
|
|
1206
|
-
case "end":
|
|
1207
|
-
return _context14.stop();
|
|
1208
|
-
}
|
|
1209
|
-
}, _callee14, this);
|
|
1210
|
-
}));
|
|
1211
|
-
function ContractInfo(_x14) {
|
|
1212
|
-
return _ContractInfo.apply(this, arguments);
|
|
1213
|
-
}
|
|
1214
|
-
return ContractInfo;
|
|
1215
|
-
}()
|
|
1216
|
-
}, {
|
|
1217
|
-
key: "GetAccessCharge",
|
|
1218
|
-
value: function () {
|
|
1219
|
-
var _GetAccessCharge = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee15(_ref16) {
|
|
1220
|
-
var objectId, args, _yield$this$ContractI4, abi, info;
|
|
1221
|
-
return _regeneratorRuntime.wrap(function _callee15$(_context15) {
|
|
1222
|
-
while (1) switch (_context15.prev = _context15.next) {
|
|
1223
|
-
case 0:
|
|
1224
|
-
objectId = _ref16.objectId, args = _ref16.args;
|
|
1225
|
-
_context15.next = 3;
|
|
1226
|
-
return this.ContractInfo({
|
|
1227
|
-
id: objectId
|
|
1228
|
-
});
|
|
1229
|
-
case 3:
|
|
1230
|
-
_yield$this$ContractI4 = _context15.sent;
|
|
1231
|
-
abi = _yield$this$ContractI4.abi;
|
|
1232
|
-
_context15.next = 7;
|
|
1233
|
-
return this.client.CallContractMethod({
|
|
1234
|
-
contractAddress: Utils.HashToAddress(objectId),
|
|
1235
|
-
abi: abi,
|
|
1236
|
-
methodName: "getAccessInfo",
|
|
1237
|
-
methodArgs: args
|
|
1238
|
-
});
|
|
1239
|
-
case 7:
|
|
1240
|
-
info = _context15.sent;
|
|
1241
|
-
return _context15.abrupt("return", info[1] === 0 ? 0 : info[2]);
|
|
1242
|
-
case 9:
|
|
1243
|
-
case "end":
|
|
1244
|
-
return _context15.stop();
|
|
1245
|
-
}
|
|
1246
|
-
}, _callee15, this);
|
|
1247
|
-
}));
|
|
1248
|
-
function GetAccessCharge(_x15) {
|
|
1249
|
-
return _GetAccessCharge.apply(this, arguments);
|
|
1250
|
-
}
|
|
1251
|
-
return GetAccessCharge;
|
|
1252
|
-
}()
|
|
1253
|
-
}, {
|
|
1254
|
-
key: "Owner",
|
|
1255
|
-
value: function () {
|
|
1256
|
-
var _Owner = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee16(_ref17) {
|
|
1257
|
-
var id, address, ownerAddress;
|
|
1258
|
-
return _regeneratorRuntime.wrap(function _callee16$(_context16) {
|
|
1259
|
-
while (1) switch (_context16.prev = _context16.next) {
|
|
1260
|
-
case 0:
|
|
1261
|
-
id = _ref17.id, address = _ref17.address;
|
|
1262
|
-
if (this.client.signer) {
|
|
1263
|
-
_context16.next = 3;
|
|
1264
|
-
break;
|
|
1265
|
-
}
|
|
1266
|
-
return _context16.abrupt("return", false);
|
|
1267
|
-
case 3:
|
|
1268
|
-
if (id) {
|
|
1269
|
-
address = Utils.HashToAddress(id);
|
|
1270
|
-
}
|
|
1271
|
-
_context16.next = 6;
|
|
1272
|
-
return this.client.CallContractMethod({
|
|
1273
|
-
contractAddress: address,
|
|
1274
|
-
methodName: "owner",
|
|
1275
|
-
methodArgs: []
|
|
1276
|
-
});
|
|
1277
|
-
case 6:
|
|
1278
|
-
ownerAddress = _context16.sent;
|
|
1279
|
-
return _context16.abrupt("return", Utils.FormatAddress(ownerAddress));
|
|
1280
|
-
case 8:
|
|
1281
|
-
case "end":
|
|
1282
|
-
return _context16.stop();
|
|
1283
|
-
}
|
|
1284
|
-
}, _callee16, this);
|
|
1285
|
-
}));
|
|
1286
|
-
function Owner(_x16) {
|
|
1287
|
-
return _Owner.apply(this, arguments);
|
|
1288
|
-
}
|
|
1289
|
-
return Owner;
|
|
1290
|
-
}()
|
|
1291
|
-
}, {
|
|
1292
|
-
key: "Sign",
|
|
1293
|
-
value: function () {
|
|
1294
|
-
var _Sign = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee17(message) {
|
|
1295
|
-
return _regeneratorRuntime.wrap(function _callee17$(_context17) {
|
|
1296
|
-
while (1) switch (_context17.prev = _context17.next) {
|
|
1297
|
-
case 0:
|
|
1298
|
-
_context17.t0 = Ethers.utils;
|
|
1299
|
-
if (!this.client.signer.signDigest) {
|
|
1300
|
-
_context17.next = 7;
|
|
1301
|
-
break;
|
|
1302
|
-
}
|
|
1303
|
-
_context17.next = 4;
|
|
1304
|
-
return this.client.signer.signDigest(message);
|
|
1305
|
-
case 4:
|
|
1306
|
-
_context17.t1 = _context17.sent;
|
|
1307
|
-
_context17.next = 10;
|
|
1308
|
-
break;
|
|
1309
|
-
case 7:
|
|
1310
|
-
_context17.next = 9;
|
|
1311
|
-
return this.client.signer._signingKey().signDigest(message);
|
|
1312
|
-
case 9:
|
|
1313
|
-
_context17.t1 = _context17.sent;
|
|
1314
|
-
case 10:
|
|
1315
|
-
_context17.t2 = _context17.t1;
|
|
1316
|
-
_context17.next = 13;
|
|
1317
|
-
return _context17.t0.joinSignature.call(_context17.t0, _context17.t2);
|
|
1318
|
-
case 13:
|
|
1319
|
-
return _context17.abrupt("return", _context17.sent);
|
|
1320
|
-
case 14:
|
|
1321
|
-
case "end":
|
|
1322
|
-
return _context17.stop();
|
|
1323
|
-
}
|
|
1324
|
-
}, _callee17, this);
|
|
1325
|
-
}));
|
|
1326
|
-
function Sign(_x17) {
|
|
1327
|
-
return _Sign.apply(this, arguments);
|
|
1328
|
-
}
|
|
1329
|
-
return Sign;
|
|
1330
|
-
}()
|
|
1331
|
-
}, {
|
|
1332
|
-
key: "KMSAddress",
|
|
1333
|
-
value: function () {
|
|
1334
|
-
var _KMSAddress = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee18(_ref18) {
|
|
1335
|
-
var objectId, versionHash, _yield$this$ContractI5, abi;
|
|
1336
|
-
return _regeneratorRuntime.wrap(function _callee18$(_context18) {
|
|
1337
|
-
while (1) switch (_context18.prev = _context18.next) {
|
|
1338
|
-
case 0:
|
|
1339
|
-
objectId = _ref18.objectId, versionHash = _ref18.versionHash;
|
|
1340
|
-
if (versionHash) {
|
|
1341
|
-
objectId = Utils.DecodeVersionHash(versionHash).objectId;
|
|
1342
|
-
}
|
|
1343
|
-
_context18.next = 4;
|
|
1344
|
-
return this.ContractInfo({
|
|
1345
|
-
id: objectId
|
|
1346
|
-
});
|
|
1347
|
-
case 4:
|
|
1348
|
-
_yield$this$ContractI5 = _context18.sent;
|
|
1349
|
-
abi = _yield$this$ContractI5.abi;
|
|
1350
|
-
if (abi) {
|
|
1351
|
-
_context18.next = 8;
|
|
1352
|
-
break;
|
|
1353
|
-
}
|
|
1354
|
-
throw Error("Unable to determine contract info for ".concat(objectId, " - wrong network?"));
|
|
1355
|
-
case 8:
|
|
1356
|
-
_context18.next = 10;
|
|
1357
|
-
return this.client.CallContractMethod({
|
|
1358
|
-
contractAddress: Utils.HashToAddress(objectId),
|
|
1359
|
-
abi: abi,
|
|
1360
|
-
methodName: "addressKMS"
|
|
1361
|
-
});
|
|
1362
|
-
case 10:
|
|
1363
|
-
return _context18.abrupt("return", _context18.sent);
|
|
1364
|
-
case 11:
|
|
1365
|
-
case "end":
|
|
1366
|
-
return _context18.stop();
|
|
1367
|
-
}
|
|
1368
|
-
}, _callee18, this);
|
|
1369
|
-
}));
|
|
1370
|
-
function KMSAddress(_x18) {
|
|
1371
|
-
return _KMSAddress.apply(this, arguments);
|
|
1372
|
-
}
|
|
1373
|
-
return KMSAddress;
|
|
1374
|
-
}()
|
|
1375
|
-
}, {
|
|
1376
|
-
key: "KMSInfo",
|
|
1377
|
-
value: function () {
|
|
1378
|
-
var _KMSInfo = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee19(_ref19) {
|
|
1379
|
-
var objectId, versionHash, kmsId, KMSInfo, _yield$this$ContractI6, abi, _yield$this$ContractI7, _abi, publicKey;
|
|
1380
|
-
return _regeneratorRuntime.wrap(function _callee19$(_context19) {
|
|
1381
|
-
while (1) switch (_context19.prev = _context19.next) {
|
|
1382
|
-
case 0:
|
|
1383
|
-
objectId = _ref19.objectId, versionHash = _ref19.versionHash, kmsId = _ref19.kmsId;
|
|
1384
|
-
if (!kmsId) {
|
|
1385
|
-
_context19.next = 11;
|
|
1386
|
-
break;
|
|
1387
|
-
}
|
|
1388
|
-
_context19.next = 4;
|
|
1389
|
-
return this.ContractInfo({
|
|
1390
|
-
address: this.client.contentSpaceAddress
|
|
1391
|
-
});
|
|
1392
|
-
case 4:
|
|
1393
|
-
_yield$this$ContractI6 = _context19.sent;
|
|
1394
|
-
abi = _yield$this$ContractI6.abi;
|
|
1395
|
-
_context19.next = 8;
|
|
1396
|
-
return this.client.CallContractMethod({
|
|
1397
|
-
contractAddress: this.client.contentSpaceAddress,
|
|
1398
|
-
abi: abi,
|
|
1399
|
-
methodName: "getKMSInfo",
|
|
1400
|
-
methodArgs: [kmsId, []],
|
|
1401
|
-
formatArguments: false
|
|
1402
|
-
});
|
|
1403
|
-
case 8:
|
|
1404
|
-
KMSInfo = _context19.sent;
|
|
1405
|
-
_context19.next = 19;
|
|
1406
|
-
break;
|
|
1407
|
-
case 11:
|
|
1408
|
-
if (versionHash) {
|
|
1409
|
-
objectId = Utils.DecodeVersionHash(versionHash).objectId;
|
|
1410
|
-
}
|
|
1411
|
-
_context19.next = 14;
|
|
1412
|
-
return this.ContractInfo({
|
|
1413
|
-
id: objectId
|
|
1414
|
-
});
|
|
1415
|
-
case 14:
|
|
1416
|
-
_yield$this$ContractI7 = _context19.sent;
|
|
1417
|
-
_abi = _yield$this$ContractI7.abi;
|
|
1418
|
-
_context19.next = 18;
|
|
1419
|
-
return this.client.CallContractMethod({
|
|
1420
|
-
contractAddress: Utils.HashToAddress(objectId),
|
|
1421
|
-
abi: _abi,
|
|
1422
|
-
methodName: "getKMSInfo",
|
|
1423
|
-
methodArgs: [[]],
|
|
1424
|
-
formatArguments: false
|
|
1425
|
-
});
|
|
1426
|
-
case 18:
|
|
1427
|
-
KMSInfo = _context19.sent;
|
|
1428
|
-
case 19:
|
|
1429
|
-
// Public key is compressed and hashed
|
|
1430
|
-
publicKey = Ethers.utils.computePublicKey(Utils.HashToAddress(KMSInfo[1]), false);
|
|
1431
|
-
return _context19.abrupt("return", {
|
|
1432
|
-
urls: KMSInfo[0].split(","),
|
|
1433
|
-
publicKey: publicKey
|
|
1434
|
-
});
|
|
1435
|
-
case 21:
|
|
1436
|
-
case "end":
|
|
1437
|
-
return _context19.stop();
|
|
1438
|
-
}
|
|
1439
|
-
}, _callee19, this);
|
|
1440
|
-
}));
|
|
1441
|
-
function KMSInfo(_x19) {
|
|
1442
|
-
return _KMSInfo.apply(this, arguments);
|
|
1443
|
-
}
|
|
1444
|
-
return KMSInfo;
|
|
1445
|
-
}() // Retrieve symmetric key for object
|
|
1446
|
-
}, {
|
|
1447
|
-
key: "RetrieveConk",
|
|
1448
|
-
value: function () {
|
|
1449
|
-
var _RetrieveConk = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee20(_ref20) {
|
|
1450
|
-
var libraryId, objectId, kmsAddress, kmsCapId, kmsCap, cap;
|
|
1451
|
-
return _regeneratorRuntime.wrap(function _callee20$(_context20) {
|
|
1452
|
-
while (1) switch (_context20.prev = _context20.next) {
|
|
1453
|
-
case 0:
|
|
1454
|
-
libraryId = _ref20.libraryId, objectId = _ref20.objectId;
|
|
1455
|
-
if (libraryId) {
|
|
1456
|
-
_context20.next = 5;
|
|
1457
|
-
break;
|
|
1458
|
-
}
|
|
1459
|
-
_context20.next = 4;
|
|
1460
|
-
return this.client.ContentObjectLibraryId({
|
|
1461
|
-
objectId: objectId
|
|
1462
|
-
});
|
|
1463
|
-
case 4:
|
|
1464
|
-
libraryId = _context20.sent;
|
|
1465
|
-
case 5:
|
|
1466
|
-
_context20.next = 7;
|
|
1467
|
-
return this.KMSAddress({
|
|
1468
|
-
objectId: objectId
|
|
1469
|
-
});
|
|
1470
|
-
case 7:
|
|
1471
|
-
kmsAddress = _context20.sent;
|
|
1472
|
-
kmsCapId = "eluv.caps.ikms".concat(Utils.AddressToHash(kmsAddress));
|
|
1473
|
-
_context20.next = 11;
|
|
1474
|
-
return this.client.ContentObjectMetadata({
|
|
1475
|
-
libraryId: libraryId,
|
|
1476
|
-
objectId: objectId,
|
|
1477
|
-
metadataSubtree: kmsCapId
|
|
1478
|
-
});
|
|
1479
|
-
case 11:
|
|
1480
|
-
kmsCap = _context20.sent;
|
|
1481
|
-
if (kmsCap) {
|
|
1482
|
-
_context20.next = 14;
|
|
1483
|
-
break;
|
|
1484
|
-
}
|
|
1485
|
-
throw Error("No KMS key set for this object");
|
|
1486
|
-
case 14:
|
|
1487
|
-
_context20.next = 16;
|
|
1488
|
-
return this.MakeKMSCall({
|
|
1489
|
-
objectId: objectId,
|
|
1490
|
-
methodName: "elv_getEncryptionKey",
|
|
1491
|
-
paramTypes: ["string", "string", "string", "string", "string"],
|
|
1492
|
-
params: [this.client.contentSpaceId, libraryId, objectId, kmsCap || "", ""]
|
|
1493
|
-
});
|
|
1494
|
-
case 16:
|
|
1495
|
-
cap = _context20.sent;
|
|
1496
|
-
return _context20.abrupt("return", JSON.parse(Utils.FromB58(cap.replace(/^kp__/, "")).toString("utf-8")));
|
|
1497
|
-
case 18:
|
|
1498
|
-
case "end":
|
|
1499
|
-
return _context20.stop();
|
|
1500
|
-
}
|
|
1501
|
-
}, _callee20, this);
|
|
1502
|
-
}));
|
|
1503
|
-
function RetrieveConk(_x20) {
|
|
1504
|
-
return _RetrieveConk.apply(this, arguments);
|
|
1505
|
-
}
|
|
1506
|
-
return RetrieveConk;
|
|
1507
|
-
}() // Retrieve symmetric key for object
|
|
1508
|
-
}, {
|
|
1509
|
-
key: "RetrieveReencryptionSymmetricKey",
|
|
1510
|
-
value: function () {
|
|
1511
|
-
var _RetrieveReencryptionSymmetricKey = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee21(_ref21) {
|
|
1512
|
-
var libraryId, objectId, kmsAddress, kmsCapId, kmsCap;
|
|
1513
|
-
return _regeneratorRuntime.wrap(function _callee21$(_context21) {
|
|
1514
|
-
while (1) switch (_context21.prev = _context21.next) {
|
|
1515
|
-
case 0:
|
|
1516
|
-
libraryId = _ref21.libraryId, objectId = _ref21.objectId;
|
|
1517
|
-
if (libraryId) {
|
|
1518
|
-
_context21.next = 5;
|
|
1519
|
-
break;
|
|
1520
|
-
}
|
|
1521
|
-
_context21.next = 4;
|
|
1522
|
-
return this.client.ContentObjectLibraryId({
|
|
1523
|
-
objectId: objectId
|
|
1524
|
-
});
|
|
1525
|
-
case 4:
|
|
1526
|
-
libraryId = _context21.sent;
|
|
1527
|
-
case 5:
|
|
1528
|
-
_context21.next = 7;
|
|
1529
|
-
return this.KMSAddress({
|
|
1530
|
-
objectId: objectId
|
|
1531
|
-
});
|
|
1532
|
-
case 7:
|
|
1533
|
-
kmsAddress = _context21.sent;
|
|
1534
|
-
kmsCapId = "eluv.caps.ikms".concat(Utils.AddressToHash(kmsAddress));
|
|
1535
|
-
_context21.next = 11;
|
|
1536
|
-
return this.client.ContentObjectMetadata({
|
|
1537
|
-
libraryId: libraryId,
|
|
1538
|
-
objectId: objectId,
|
|
1539
|
-
metadataSubtree: kmsCapId
|
|
1540
|
-
});
|
|
1541
|
-
case 11:
|
|
1542
|
-
kmsCap = _context21.sent;
|
|
1543
|
-
if (kmsCap) {
|
|
1544
|
-
_context21.next = 14;
|
|
1545
|
-
break;
|
|
1546
|
-
}
|
|
1547
|
-
throw Error("No KMS key set for this object");
|
|
1548
|
-
case 14:
|
|
1549
|
-
_context21.next = 16;
|
|
1550
|
-
return this.MakeKMSCall({
|
|
1551
|
-
objectId: objectId,
|
|
1552
|
-
methodName: "elv_getSymmetricKeyAuth",
|
|
1553
|
-
paramTypes: ["string", "string", "string", "string", "string"],
|
|
1554
|
-
params: [this.client.contentSpaceId, libraryId, objectId, kmsCap || "", ""]
|
|
1555
|
-
});
|
|
1556
|
-
case 16:
|
|
1557
|
-
return _context21.abrupt("return", _context21.sent);
|
|
1558
|
-
case 17:
|
|
1559
|
-
case "end":
|
|
1560
|
-
return _context21.stop();
|
|
1561
|
-
}
|
|
1562
|
-
}, _callee21, this);
|
|
1563
|
-
}));
|
|
1564
|
-
function RetrieveReencryptionSymmetricKey(_x21) {
|
|
1565
|
-
return _RetrieveReencryptionSymmetricKey.apply(this, arguments);
|
|
1566
|
-
}
|
|
1567
|
-
return RetrieveReencryptionSymmetricKey;
|
|
1568
|
-
}() // Make an RPC call to the KMS with signed parameters
|
|
1569
|
-
}, {
|
|
1570
|
-
key: "MakeKMSCall",
|
|
1571
|
-
value: function () {
|
|
1572
|
-
var _MakeKMSCall = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee22(_ref22) {
|
|
1573
|
-
var kmsId, tenantId, objectId, versionHash, methodName, params, paramTypes, _ref22$additionalPara, additionalParams, _ref22$signature, signature, packedHash, KMSUrls, i, kmsUrl;
|
|
1574
|
-
return _regeneratorRuntime.wrap(function _callee22$(_context22) {
|
|
1575
|
-
while (1) switch (_context22.prev = _context22.next) {
|
|
1576
|
-
case 0:
|
|
1577
|
-
kmsId = _ref22.kmsId, tenantId = _ref22.tenantId, objectId = _ref22.objectId, versionHash = _ref22.versionHash, methodName = _ref22.methodName, params = _ref22.params, paramTypes = _ref22.paramTypes, _ref22$additionalPara = _ref22.additionalParams, additionalParams = _ref22$additionalPara === void 0 ? [] : _ref22$additionalPara, _ref22$signature = _ref22.signature, signature = _ref22$signature === void 0 ? true : _ref22$signature;
|
|
1578
|
-
if (versionHash) {
|
|
1579
|
-
objectId = Utils.DecodeVersionHash(versionHash).objectId;
|
|
1580
|
-
}
|
|
1581
|
-
if (objectId) {
|
|
1582
|
-
_context22.next = 10;
|
|
1583
|
-
break;
|
|
1584
|
-
}
|
|
1585
|
-
_context22.t0 = "ikms";
|
|
1586
|
-
_context22.t1 = Utils;
|
|
1587
|
-
_context22.next = 7;
|
|
1588
|
-
return this.client.DefaultKMSAddress({
|
|
1589
|
-
tenantId: tenantId
|
|
1590
|
-
});
|
|
1591
|
-
case 7:
|
|
1592
|
-
_context22.t2 = _context22.sent;
|
|
1593
|
-
_context22.t3 = _context22.t1.AddressToHash.call(_context22.t1, _context22.t2);
|
|
1594
|
-
kmsId = _context22.t0.concat.call(_context22.t0, _context22.t3);
|
|
1595
|
-
case 10:
|
|
1596
|
-
if (!signature) {
|
|
1597
|
-
_context22.next = 17;
|
|
1598
|
-
break;
|
|
1599
|
-
}
|
|
1600
|
-
packedHash = Ethers.utils.solidityKeccak256(paramTypes, params);
|
|
1601
|
-
_context22.t4 = params;
|
|
1602
|
-
_context22.next = 15;
|
|
1603
|
-
return this.Sign(packedHash);
|
|
1604
|
-
case 15:
|
|
1605
|
-
_context22.t5 = _context22.sent;
|
|
1606
|
-
_context22.t4.push.call(_context22.t4, _context22.t5);
|
|
1607
|
-
case 17:
|
|
1608
|
-
params = params.concat(additionalParams);
|
|
1609
|
-
_context22.next = 20;
|
|
1610
|
-
return this.KMSInfo({
|
|
1611
|
-
kmsId: kmsId,
|
|
1612
|
-
objectId: objectId,
|
|
1613
|
-
versionHash: versionHash
|
|
1614
|
-
});
|
|
1615
|
-
case 20:
|
|
1616
|
-
KMSUrls = _context22.sent.urls;
|
|
1617
|
-
i = 0;
|
|
1618
|
-
case 22:
|
|
1619
|
-
if (!(i < KMSUrls.length)) {
|
|
1620
|
-
_context22.next = 40;
|
|
1621
|
-
break;
|
|
1622
|
-
}
|
|
1623
|
-
_context22.prev = 23;
|
|
1624
|
-
this.Log("Making KMS request:\n URL: ".concat(KMSUrls[i], "\n Method: ").concat(methodName, "\n Params: ").concat(params.join(", ")));
|
|
1625
|
-
kmsUrl = KMSUrls[i];
|
|
1626
|
-
if (!this.providers[kmsUrl]) {
|
|
1627
|
-
this.providers[kmsUrl] = new Ethers.providers.JsonRpcProvider(kmsUrl, this.client.networkId);
|
|
1628
|
-
}
|
|
1629
|
-
_context22.next = 29;
|
|
1630
|
-
return this.providers[kmsUrl].send(methodName, params);
|
|
1631
|
-
case 29:
|
|
1632
|
-
return _context22.abrupt("return", _context22.sent);
|
|
1633
|
-
case 32:
|
|
1634
|
-
_context22.prev = 32;
|
|
1635
|
-
_context22.t6 = _context22["catch"](23);
|
|
1636
|
-
this.Log("KMS Call Error: ".concat(_context22.t6), true);
|
|
1637
|
-
|
|
1638
|
-
// If the request has been attempted on all KMS urls, throw the error
|
|
1639
|
-
if (!(i === KMSUrls.length - 1)) {
|
|
1640
|
-
_context22.next = 37;
|
|
1641
|
-
break;
|
|
1642
|
-
}
|
|
1643
|
-
throw _context22.t6;
|
|
1644
|
-
case 37:
|
|
1645
|
-
i++;
|
|
1646
|
-
_context22.next = 22;
|
|
1647
|
-
break;
|
|
1648
|
-
case 40:
|
|
1649
|
-
case "end":
|
|
1650
|
-
return _context22.stop();
|
|
1651
|
-
}
|
|
1652
|
-
}, _callee22, this, [[23, 32]]);
|
|
1653
|
-
}));
|
|
1654
|
-
function MakeKMSCall(_x22) {
|
|
1655
|
-
return _MakeKMSCall.apply(this, arguments);
|
|
1656
|
-
}
|
|
1657
|
-
return MakeKMSCall;
|
|
1658
|
-
}() // Make an arbitrary HTTP call to an authority server
|
|
1659
|
-
}, {
|
|
1660
|
-
key: "MakeAuthServiceRequest",
|
|
1661
|
-
value: function () {
|
|
1662
|
-
var _MakeAuthServiceRequest = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee23(_ref23) {
|
|
1663
|
-
var kmsId, objectId, versionHash, _ref23$method, method, path, bodyType, _ref23$body, body, _ref23$queryParams, queryParams, headers;
|
|
1664
|
-
return _regeneratorRuntime.wrap(function _callee23$(_context23) {
|
|
1665
|
-
while (1) switch (_context23.prev = _context23.next) {
|
|
1666
|
-
case 0:
|
|
1667
|
-
kmsId = _ref23.kmsId, objectId = _ref23.objectId, versionHash = _ref23.versionHash, _ref23$method = _ref23.method, method = _ref23$method === void 0 ? "GET" : _ref23$method, path = _ref23.path, bodyType = _ref23.bodyType, _ref23$body = _ref23.body, body = _ref23$body === void 0 ? {} : _ref23$body, _ref23$queryParams = _ref23.queryParams, queryParams = _ref23$queryParams === void 0 ? {} : _ref23$queryParams, headers = _ref23.headers;
|
|
1668
|
-
if (!(this.client.authServiceURIs.length === 0)) {
|
|
1669
|
-
_context23.next = 5;
|
|
1670
|
-
break;
|
|
1671
|
-
}
|
|
1672
|
-
_context23.next = 4;
|
|
1673
|
-
return this.MakeKMSRequest({
|
|
1674
|
-
kmsId: kmsId,
|
|
1675
|
-
objectId: objectId,
|
|
1676
|
-
versionHash: versionHash,
|
|
1677
|
-
method: method,
|
|
1678
|
-
path: path,
|
|
1679
|
-
bodyType: bodyType,
|
|
1680
|
-
body: body,
|
|
1681
|
-
queryParams: queryParams,
|
|
1682
|
-
headers: headers
|
|
1683
|
-
});
|
|
1684
|
-
case 4:
|
|
1685
|
-
return _context23.abrupt("return", _context23.sent);
|
|
1686
|
-
case 5:
|
|
1687
|
-
_context23.next = 7;
|
|
1688
|
-
return this.client.AuthHttpClient.Request({
|
|
1689
|
-
method: method,
|
|
1690
|
-
path: path,
|
|
1691
|
-
bodyType: bodyType,
|
|
1692
|
-
body: body,
|
|
1693
|
-
headers: headers,
|
|
1694
|
-
queryParams: queryParams
|
|
1695
|
-
});
|
|
1696
|
-
case 7:
|
|
1697
|
-
return _context23.abrupt("return", _context23.sent);
|
|
1698
|
-
case 8:
|
|
1699
|
-
case "end":
|
|
1700
|
-
return _context23.stop();
|
|
1701
|
-
}
|
|
1702
|
-
}, _callee23, this);
|
|
1703
|
-
}));
|
|
1704
|
-
function MakeAuthServiceRequest(_x23) {
|
|
1705
|
-
return _MakeAuthServiceRequest.apply(this, arguments);
|
|
1706
|
-
}
|
|
1707
|
-
return MakeAuthServiceRequest;
|
|
1708
|
-
}() // Make an arbitrary HTTP call to the KMS
|
|
1709
|
-
}, {
|
|
1710
|
-
key: "MakeKMSRequest",
|
|
1711
|
-
value: function () {
|
|
1712
|
-
var _MakeKMSRequest = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee24(_ref24) {
|
|
1713
|
-
var kmsId, objectId, versionHash, _ref24$method, method, path, bodyType, _ref24$body, body, _ref24$queryParams, queryParams, headers, kmsUrls, kmsHttpClient;
|
|
1714
|
-
return _regeneratorRuntime.wrap(function _callee24$(_context24) {
|
|
1715
|
-
while (1) switch (_context24.prev = _context24.next) {
|
|
1716
|
-
case 0:
|
|
1717
|
-
kmsId = _ref24.kmsId, objectId = _ref24.objectId, versionHash = _ref24.versionHash, _ref24$method = _ref24.method, method = _ref24$method === void 0 ? "GET" : _ref24$method, path = _ref24.path, bodyType = _ref24.bodyType, _ref24$body = _ref24.body, body = _ref24$body === void 0 ? {} : _ref24$body, _ref24$queryParams = _ref24.queryParams, queryParams = _ref24$queryParams === void 0 ? {} : _ref24$queryParams, headers = _ref24.headers;
|
|
1718
|
-
if (versionHash) {
|
|
1719
|
-
objectId = Utils.DecodeVersionHash(versionHash).objectId;
|
|
1720
|
-
}
|
|
1721
|
-
if (!(!objectId && !kmsId)) {
|
|
1722
|
-
_context24.next = 10;
|
|
1723
|
-
break;
|
|
1724
|
-
}
|
|
1725
|
-
_context24.t0 = "ikms";
|
|
1726
|
-
_context24.t1 = Utils;
|
|
1727
|
-
_context24.next = 7;
|
|
1728
|
-
return this.client.DefaultKMSAddress();
|
|
1729
|
-
case 7:
|
|
1730
|
-
_context24.t2 = _context24.sent;
|
|
1731
|
-
_context24.t3 = _context24.t1.AddressToHash.call(_context24.t1, _context24.t2);
|
|
1732
|
-
kmsId = _context24.t0.concat.call(_context24.t0, _context24.t3);
|
|
1733
|
-
case 10:
|
|
1734
|
-
_context24.next = 12;
|
|
1735
|
-
return this.KMSInfo({
|
|
1736
|
-
kmsId: kmsId,
|
|
1737
|
-
objectId: objectId,
|
|
1738
|
-
versionHash: versionHash
|
|
1739
|
-
});
|
|
1740
|
-
case 12:
|
|
1741
|
-
kmsUrls = _context24.sent.urls;
|
|
1742
|
-
if (!(!kmsUrls || !kmsUrls[0])) {
|
|
1743
|
-
_context24.next = 15;
|
|
1744
|
-
break;
|
|
1745
|
-
}
|
|
1746
|
-
throw Error("No KMS info set for ".concat(versionHash || objectId || "default KMS"));
|
|
1747
|
-
case 15:
|
|
1748
|
-
kmsHttpClient = new HttpClient({
|
|
1749
|
-
uris: kmsUrls
|
|
1750
|
-
});
|
|
1751
|
-
_context24.next = 18;
|
|
1752
|
-
return kmsHttpClient.Request({
|
|
1753
|
-
method: method,
|
|
1754
|
-
path: path,
|
|
1755
|
-
bodyType: bodyType,
|
|
1756
|
-
body: body,
|
|
1757
|
-
headers: headers,
|
|
1758
|
-
queryParams: queryParams
|
|
1759
|
-
});
|
|
1760
|
-
case 18:
|
|
1761
|
-
return _context24.abrupt("return", _context24.sent);
|
|
1762
|
-
case 19:
|
|
1763
|
-
case "end":
|
|
1764
|
-
return _context24.stop();
|
|
1765
|
-
}
|
|
1766
|
-
}, _callee24, this);
|
|
1767
|
-
}));
|
|
1768
|
-
function MakeKMSRequest(_x24) {
|
|
1769
|
-
return _MakeKMSRequest.apply(this, arguments);
|
|
1770
|
-
}
|
|
1771
|
-
return MakeKMSRequest;
|
|
1772
|
-
}()
|
|
1773
|
-
}, {
|
|
1774
|
-
key: "ContractHasMethod",
|
|
1775
|
-
value: function () {
|
|
1776
|
-
var _ContractHasMethod = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee25(_ref25) {
|
|
1777
|
-
var contractAddress, abi, methodName, key, method, methodSignature, methodId;
|
|
1778
|
-
return _regeneratorRuntime.wrap(function _callee25$(_context25) {
|
|
1779
|
-
while (1) switch (_context25.prev = _context25.next) {
|
|
1780
|
-
case 0:
|
|
1781
|
-
contractAddress = _ref25.contractAddress, abi = _ref25.abi, methodName = _ref25.methodName;
|
|
1782
|
-
contractAddress = Utils.FormatAddress(contractAddress);
|
|
1783
|
-
key = "".concat(contractAddress, "-").concat(methodName);
|
|
1784
|
-
if (!(this.methodAvailability[key] === undefined)) {
|
|
1785
|
-
_context25.next = 19;
|
|
1786
|
-
break;
|
|
1787
|
-
}
|
|
1788
|
-
this.Log("Checking method availability: ".concat(contractAddress, " ").concat(methodName));
|
|
1789
|
-
if (abi) {
|
|
1790
|
-
_context25.next = 9;
|
|
1791
|
-
break;
|
|
1792
|
-
}
|
|
1793
|
-
_context25.next = 8;
|
|
1794
|
-
return this.ContractInfo({
|
|
1795
|
-
address: contractAddress
|
|
1796
|
-
});
|
|
1797
|
-
case 8:
|
|
1798
|
-
abi = _context25.sent.abi;
|
|
1799
|
-
case 9:
|
|
1800
|
-
if (abi) {
|
|
1801
|
-
_context25.next = 11;
|
|
1802
|
-
break;
|
|
1803
|
-
}
|
|
1804
|
-
throw Error("No ABI for contract ".concat(contractAddress, " - Wrong network or deleted item?"));
|
|
1805
|
-
case 11:
|
|
1806
|
-
method = abi.find(function (method) {
|
|
1807
|
-
return method.name === methodName;
|
|
1808
|
-
});
|
|
1809
|
-
if (method) {
|
|
1810
|
-
_context25.next = 14;
|
|
1811
|
-
break;
|
|
1812
|
-
}
|
|
1813
|
-
return _context25.abrupt("return", false);
|
|
1814
|
-
case 14:
|
|
1815
|
-
methodSignature = "".concat(method.name, "(").concat(method.inputs.map(function (i) {
|
|
1816
|
-
return i.type;
|
|
1817
|
-
}).join(","), ")");
|
|
1818
|
-
methodId = Ethers.utils.keccak256(Ethers.utils.toUtf8Bytes(methodSignature)).replace("0x", "").slice(0, 8);
|
|
1819
|
-
_context25.next = 18;
|
|
1820
|
-
return this.MakeElvMasterCall({
|
|
1821
|
-
methodName: "elv_deployedContractHasMethod",
|
|
1822
|
-
params: [contractAddress, methodId]
|
|
1823
|
-
});
|
|
1824
|
-
case 18:
|
|
1825
|
-
this.methodAvailability[key] = _context25.sent;
|
|
1826
|
-
case 19:
|
|
1827
|
-
return _context25.abrupt("return", this.methodAvailability[key]);
|
|
1828
|
-
case 20:
|
|
1829
|
-
case "end":
|
|
1830
|
-
return _context25.stop();
|
|
1831
|
-
}
|
|
1832
|
-
}, _callee25, this);
|
|
1833
|
-
}));
|
|
1834
|
-
function ContractHasMethod(_x25) {
|
|
1835
|
-
return _ContractHasMethod.apply(this, arguments);
|
|
1836
|
-
}
|
|
1837
|
-
return ContractHasMethod;
|
|
1838
|
-
}()
|
|
1839
|
-
}, {
|
|
1840
|
-
key: "MakeElvMasterCall",
|
|
1841
|
-
value: function () {
|
|
1842
|
-
var _MakeElvMasterCall = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee26(_ref26) {
|
|
1843
|
-
var methodName, params;
|
|
1844
|
-
return _regeneratorRuntime.wrap(function _callee26$(_context26) {
|
|
1845
|
-
while (1) switch (_context26.prev = _context26.next) {
|
|
1846
|
-
case 0:
|
|
1847
|
-
methodName = _ref26.methodName, params = _ref26.params;
|
|
1848
|
-
_context26.next = 3;
|
|
1849
|
-
return this.client.ethClient.MakeProviderCall({
|
|
1850
|
-
methodName: "send",
|
|
1851
|
-
args: [methodName, params]
|
|
1852
|
-
});
|
|
1853
|
-
case 3:
|
|
1854
|
-
return _context26.abrupt("return", _context26.sent);
|
|
1855
|
-
case 4:
|
|
1856
|
-
case "end":
|
|
1857
|
-
return _context26.stop();
|
|
1858
|
-
}
|
|
1859
|
-
}, _callee26, this);
|
|
1860
|
-
}));
|
|
1861
|
-
function MakeElvMasterCall(_x26) {
|
|
1862
|
-
return _MakeElvMasterCall.apply(this, arguments);
|
|
1863
|
-
}
|
|
1864
|
-
return MakeElvMasterCall;
|
|
1865
|
-
}()
|
|
1866
|
-
}, {
|
|
1867
|
-
key: "ReEncryptionConk",
|
|
1868
|
-
value: function () {
|
|
1869
|
-
var _ReEncryptionConk = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee27(_ref27) {
|
|
1870
|
-
var libraryId, objectId, versionHash, cap;
|
|
1871
|
-
return _regeneratorRuntime.wrap(function _callee27$(_context27) {
|
|
1872
|
-
while (1) switch (_context27.prev = _context27.next) {
|
|
1873
|
-
case 0:
|
|
1874
|
-
libraryId = _ref27.libraryId, objectId = _ref27.objectId, versionHash = _ref27.versionHash;
|
|
1875
|
-
if (versionHash) {
|
|
1876
|
-
objectId = Utils.DecodeVersionHash(versionHash).objectId;
|
|
1877
|
-
}
|
|
1878
|
-
if (this.reencryptionKeys[objectId]) {
|
|
1879
|
-
_context27.next = 10;
|
|
1880
|
-
break;
|
|
1881
|
-
}
|
|
1882
|
-
_context27.next = 5;
|
|
1883
|
-
return this.client.Crypto.GenerateTargetConk();
|
|
1884
|
-
case 5:
|
|
1885
|
-
cap = _context27.sent;
|
|
1886
|
-
_context27.next = 8;
|
|
1887
|
-
return this.RetrieveReencryptionSymmetricKey({
|
|
1888
|
-
libraryId: libraryId,
|
|
1889
|
-
objectId: objectId
|
|
1890
|
-
});
|
|
1891
|
-
case 8:
|
|
1892
|
-
cap.symm_key = _context27.sent;
|
|
1893
|
-
this.reencryptionKeys[objectId] = cap;
|
|
1894
|
-
case 10:
|
|
1895
|
-
return _context27.abrupt("return", this.reencryptionKeys[objectId]);
|
|
1896
|
-
case 11:
|
|
1897
|
-
case "end":
|
|
1898
|
-
return _context27.stop();
|
|
1899
|
-
}
|
|
1900
|
-
}, _callee27, this);
|
|
1901
|
-
}));
|
|
1902
|
-
function ReEncryptionConk(_x27) {
|
|
1903
|
-
return _ReEncryptionConk.apply(this, arguments);
|
|
1904
|
-
}
|
|
1905
|
-
return ReEncryptionConk;
|
|
1906
|
-
}()
|
|
1907
|
-
}, {
|
|
1908
|
-
key: "EncryptionConk",
|
|
1909
|
-
value: function () {
|
|
1910
|
-
var _EncryptionConk = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee28(_ref28) {
|
|
1911
|
-
var libraryId, objectId, versionHash, conk, _yield$this$client$Cr, secret_key;
|
|
1912
|
-
return _regeneratorRuntime.wrap(function _callee28$(_context28) {
|
|
1913
|
-
while (1) switch (_context28.prev = _context28.next) {
|
|
1914
|
-
case 0:
|
|
1915
|
-
libraryId = _ref28.libraryId, objectId = _ref28.objectId, versionHash = _ref28.versionHash;
|
|
1916
|
-
if (versionHash) {
|
|
1917
|
-
objectId = Utils.DecodeVersionHash(versionHash).objectId;
|
|
1918
|
-
}
|
|
1919
|
-
if (libraryId) {
|
|
1920
|
-
_context28.next = 6;
|
|
1921
|
-
break;
|
|
1922
|
-
}
|
|
1923
|
-
_context28.next = 5;
|
|
1924
|
-
return this.client.ContentObjectLibraryId({
|
|
1925
|
-
objectId: objectId
|
|
1926
|
-
});
|
|
1927
|
-
case 5:
|
|
1928
|
-
libraryId = _context28.sent;
|
|
1929
|
-
case 6:
|
|
1930
|
-
if (this.encryptionKeys[objectId]) {
|
|
1931
|
-
_context28.next = 16;
|
|
1932
|
-
break;
|
|
1933
|
-
}
|
|
1934
|
-
_context28.next = 9;
|
|
1935
|
-
return this.RetrieveConk({
|
|
1936
|
-
libraryId: libraryId,
|
|
1937
|
-
objectId: objectId
|
|
1938
|
-
});
|
|
1939
|
-
case 9:
|
|
1940
|
-
conk = _context28.sent;
|
|
1941
|
-
_context28.next = 12;
|
|
1942
|
-
return this.client.Crypto.GeneratePrimaryConk({
|
|
1943
|
-
objectId: objectId
|
|
1944
|
-
});
|
|
1945
|
-
case 12:
|
|
1946
|
-
_yield$this$client$Cr = _context28.sent;
|
|
1947
|
-
secret_key = _yield$this$client$Cr.secret_key;
|
|
1948
|
-
conk.secret_key = secret_key;
|
|
1949
|
-
|
|
1950
|
-
// { secret_key, public_key, symm_key, block_size }
|
|
1951
|
-
this.encryptionKeys[objectId] = conk;
|
|
1952
|
-
case 16:
|
|
1953
|
-
return _context28.abrupt("return", this.encryptionKeys[objectId]);
|
|
1954
|
-
case 17:
|
|
1955
|
-
case "end":
|
|
1956
|
-
return _context28.stop();
|
|
1957
|
-
}
|
|
1958
|
-
}, _callee28, this);
|
|
1959
|
-
}));
|
|
1960
|
-
function EncryptionConk(_x28) {
|
|
1961
|
-
return _EncryptionConk.apply(this, arguments);
|
|
1962
|
-
}
|
|
1963
|
-
return EncryptionConk;
|
|
1964
|
-
}()
|
|
1965
|
-
}, {
|
|
1966
|
-
key: "RecordTags",
|
|
1967
|
-
value: function () {
|
|
1968
|
-
var _RecordTags = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee29(_ref29) {
|
|
1969
|
-
var accessType, libraryId, objectId, versionHash, _yield$this$ContractI8, abi, owner;
|
|
1970
|
-
return _regeneratorRuntime.wrap(function _callee29$(_context29) {
|
|
1971
|
-
while (1) switch (_context29.prev = _context29.next) {
|
|
1972
|
-
case 0:
|
|
1973
|
-
accessType = _ref29.accessType, libraryId = _ref29.libraryId, objectId = _ref29.objectId, versionHash = _ref29.versionHash;
|
|
1974
|
-
if (!(accessType !== ACCESS_TYPES.OBJECT)) {
|
|
1975
|
-
_context29.next = 3;
|
|
1976
|
-
break;
|
|
1977
|
-
}
|
|
1978
|
-
return _context29.abrupt("return");
|
|
1979
|
-
case 3:
|
|
1980
|
-
_context29.next = 5;
|
|
1981
|
-
return this.ContractInfo({
|
|
1982
|
-
id: objectId
|
|
1983
|
-
});
|
|
1984
|
-
case 5:
|
|
1985
|
-
_yield$this$ContractI8 = _context29.sent;
|
|
1986
|
-
abi = _yield$this$ContractI8.abi;
|
|
1987
|
-
_context29.next = 9;
|
|
1988
|
-
return this.Owner({
|
|
1989
|
-
id: objectId,
|
|
1990
|
-
abi: abi
|
|
1991
|
-
});
|
|
1992
|
-
case 9:
|
|
1993
|
-
owner = _context29.sent;
|
|
1994
|
-
if (Utils.EqualAddress(owner, this.client.signer.address)) {
|
|
1995
|
-
_context29.next = 13;
|
|
1996
|
-
break;
|
|
1997
|
-
}
|
|
1998
|
-
_context29.next = 13;
|
|
1999
|
-
return this.client.userProfileClient.RecordTags({
|
|
2000
|
-
libraryId: libraryId,
|
|
2001
|
-
objectId: objectId,
|
|
2002
|
-
versionHash: versionHash
|
|
2003
|
-
});
|
|
2004
|
-
case 13:
|
|
2005
|
-
case "end":
|
|
2006
|
-
return _context29.stop();
|
|
2007
|
-
}
|
|
2008
|
-
}, _callee29, this);
|
|
2009
|
-
}));
|
|
2010
|
-
function RecordTags(_x29) {
|
|
2011
|
-
return _RecordTags.apply(this, arguments);
|
|
2012
|
-
}
|
|
2013
|
-
return RecordTags;
|
|
2014
|
-
}() /* Creation methods */
|
|
2015
|
-
}, {
|
|
2016
|
-
key: "CreateAccessGroup",
|
|
2017
|
-
value: function () {
|
|
2018
|
-
var _CreateAccessGroup = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee30() {
|
|
2019
|
-
var _yield$this$client$et, contractAddress, transactionHash;
|
|
2020
|
-
return _regeneratorRuntime.wrap(function _callee30$(_context30) {
|
|
2021
|
-
while (1) switch (_context30.prev = _context30.next) {
|
|
2022
|
-
case 0:
|
|
2023
|
-
_context30.next = 2;
|
|
2024
|
-
return this.client.ethClient.DeployAccessGroupContract({
|
|
2025
|
-
contentSpaceAddress: Utils.HashToAddress(this.contentSpaceId),
|
|
2026
|
-
signer: this.client.signer
|
|
2027
|
-
});
|
|
2028
|
-
case 2:
|
|
2029
|
-
_yield$this$client$et = _context30.sent;
|
|
2030
|
-
contractAddress = _yield$this$client$et.contractAddress;
|
|
2031
|
-
transactionHash = _yield$this$client$et.transactionHash;
|
|
2032
|
-
return _context30.abrupt("return", {
|
|
2033
|
-
contractAddress: contractAddress,
|
|
2034
|
-
transactionHash: transactionHash
|
|
2035
|
-
});
|
|
2036
|
-
case 6:
|
|
2037
|
-
case "end":
|
|
2038
|
-
return _context30.stop();
|
|
2039
|
-
}
|
|
2040
|
-
}, _callee30, this);
|
|
2041
|
-
}));
|
|
2042
|
-
function CreateAccessGroup() {
|
|
2043
|
-
return _CreateAccessGroup.apply(this, arguments);
|
|
2044
|
-
}
|
|
2045
|
-
return CreateAccessGroup;
|
|
2046
|
-
}()
|
|
2047
|
-
}, {
|
|
2048
|
-
key: "CreateContentType",
|
|
2049
|
-
value: function () {
|
|
2050
|
-
var _CreateContentType = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee31() {
|
|
2051
|
-
var _yield$this$client$et2, contractAddress, transactionHash;
|
|
2052
|
-
return _regeneratorRuntime.wrap(function _callee31$(_context31) {
|
|
2053
|
-
while (1) switch (_context31.prev = _context31.next) {
|
|
2054
|
-
case 0:
|
|
2055
|
-
_context31.next = 2;
|
|
2056
|
-
return this.client.ethClient.DeployTypeContract({
|
|
2057
|
-
contentSpaceAddress: Utils.HashToAddress(this.contentSpaceId),
|
|
2058
|
-
signer: this.client.signer
|
|
2059
|
-
});
|
|
2060
|
-
case 2:
|
|
2061
|
-
_yield$this$client$et2 = _context31.sent;
|
|
2062
|
-
contractAddress = _yield$this$client$et2.contractAddress;
|
|
2063
|
-
transactionHash = _yield$this$client$et2.transactionHash;
|
|
2064
|
-
return _context31.abrupt("return", {
|
|
2065
|
-
contractAddress: contractAddress,
|
|
2066
|
-
transactionHash: transactionHash
|
|
2067
|
-
});
|
|
2068
|
-
case 6:
|
|
2069
|
-
case "end":
|
|
2070
|
-
return _context31.stop();
|
|
2071
|
-
}
|
|
2072
|
-
}, _callee31, this);
|
|
2073
|
-
}));
|
|
2074
|
-
function CreateContentType() {
|
|
2075
|
-
return _CreateContentType.apply(this, arguments);
|
|
2076
|
-
}
|
|
2077
|
-
return CreateContentType;
|
|
2078
|
-
}()
|
|
2079
|
-
}, {
|
|
2080
|
-
key: "CreateContentLibrary",
|
|
2081
|
-
value: function () {
|
|
2082
|
-
var _CreateContentLibrary = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee32(_ref30) {
|
|
2083
|
-
var kmsId, _yield$this$client$et3, contractAddress, transactionHash;
|
|
2084
|
-
return _regeneratorRuntime.wrap(function _callee32$(_context32) {
|
|
2085
|
-
while (1) switch (_context32.prev = _context32.next) {
|
|
2086
|
-
case 0:
|
|
2087
|
-
kmsId = _ref30.kmsId;
|
|
2088
|
-
_context32.next = 3;
|
|
2089
|
-
return this.client.ethClient.DeployLibraryContract({
|
|
2090
|
-
contentSpaceAddress: Utils.HashToAddress(this.contentSpaceId),
|
|
2091
|
-
kmsId: kmsId,
|
|
2092
|
-
signer: this.client.signer
|
|
2093
|
-
});
|
|
2094
|
-
case 3:
|
|
2095
|
-
_yield$this$client$et3 = _context32.sent;
|
|
2096
|
-
contractAddress = _yield$this$client$et3.contractAddress;
|
|
2097
|
-
transactionHash = _yield$this$client$et3.transactionHash;
|
|
2098
|
-
return _context32.abrupt("return", {
|
|
2099
|
-
contractAddress: contractAddress,
|
|
2100
|
-
transactionHash: transactionHash
|
|
2101
|
-
});
|
|
2102
|
-
case 7:
|
|
2103
|
-
case "end":
|
|
2104
|
-
return _context32.stop();
|
|
2105
|
-
}
|
|
2106
|
-
}, _callee32, this);
|
|
2107
|
-
}));
|
|
2108
|
-
function CreateContentLibrary(_x30) {
|
|
2109
|
-
return _CreateContentLibrary.apply(this, arguments);
|
|
2110
|
-
}
|
|
2111
|
-
return CreateContentLibrary;
|
|
2112
|
-
}()
|
|
2113
|
-
}, {
|
|
2114
|
-
key: "CreateContentObject",
|
|
2115
|
-
value: function () {
|
|
2116
|
-
var _CreateContentObject = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee33(_ref31) {
|
|
2117
|
-
var libraryId, typeId, _yield$this$client$et4, contractAddress, transactionHash;
|
|
2118
|
-
return _regeneratorRuntime.wrap(function _callee33$(_context33) {
|
|
2119
|
-
while (1) switch (_context33.prev = _context33.next) {
|
|
2120
|
-
case 0:
|
|
2121
|
-
libraryId = _ref31.libraryId, typeId = _ref31.typeId;
|
|
2122
|
-
_context33.next = 3;
|
|
2123
|
-
return this.client.ethClient.DeployContentContract({
|
|
2124
|
-
contentLibraryAddress: Utils.HashToAddress(libraryId),
|
|
2125
|
-
typeAddress: typeId ? Utils.HashToAddress(typeId) : Utils.nullAddress,
|
|
2126
|
-
signer: this.client.signer
|
|
2127
|
-
});
|
|
2128
|
-
case 3:
|
|
2129
|
-
_yield$this$client$et4 = _context33.sent;
|
|
2130
|
-
contractAddress = _yield$this$client$et4.contractAddress;
|
|
2131
|
-
transactionHash = _yield$this$client$et4.transactionHash;
|
|
2132
|
-
return _context33.abrupt("return", {
|
|
2133
|
-
contractAddress: contractAddress,
|
|
2134
|
-
transactionHash: transactionHash
|
|
2135
|
-
});
|
|
2136
|
-
case 7:
|
|
2137
|
-
case "end":
|
|
2138
|
-
return _context33.stop();
|
|
2139
|
-
}
|
|
2140
|
-
}, _callee33, this);
|
|
2141
|
-
}));
|
|
2142
|
-
function CreateContentObject(_x31) {
|
|
2143
|
-
return _CreateContentObject.apply(this, arguments);
|
|
2144
|
-
}
|
|
2145
|
-
return CreateContentObject;
|
|
2146
|
-
}() // Clear cached access transaction IDs and state channel tokens
|
|
2147
|
-
}, {
|
|
2148
|
-
key: "ClearCache",
|
|
2149
|
-
value: function ClearCache() {
|
|
2150
|
-
this.accessTransactions = {};
|
|
2151
|
-
this.modifyTransactions = {};
|
|
2152
|
-
this.channelContentTokens = {};
|
|
2153
|
-
}
|
|
2154
|
-
}]);
|
|
2155
|
-
return AuthorizationClient;
|
|
2156
|
-
}();
|
|
2157
|
-
module.exports = AuthorizationClient;
|