@eluvio/elv-client-js 4.0.112 → 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.
Files changed (124) hide show
  1. package/package.json +1 -1
  2. package/dist/ElvClient-min.js +0 -67
  3. package/dist/ElvClient-node-min.js +0 -66
  4. package/dist/ElvFrameClient-min.js +0 -60
  5. package/dist/ElvPermissionsClient-min.js +0 -60
  6. package/dist/ElvWalletClient-min.js +0 -67
  7. package/dist/ElvWalletClient-node-min.js +0 -66
  8. package/dist/src/AuthorizationClient.js +0 -2157
  9. package/dist/src/ContentObjectAudit.js +0 -175
  10. package/dist/src/ContentObjectVerification.js +0 -281
  11. package/dist/src/Crypto.js +0 -412
  12. package/dist/src/ElvClient.js +0 -2022
  13. package/dist/src/ElvWallet.js +0 -245
  14. package/dist/src/EthClient.js +0 -1154
  15. package/dist/src/FrameClient.js +0 -485
  16. package/dist/src/HttpClient.js +0 -315
  17. package/dist/src/Id.js +0 -21
  18. package/dist/src/LogMessage.js +0 -25
  19. package/dist/src/PermissionsClient.js +0 -1544
  20. package/dist/src/RemoteSigner.js +0 -385
  21. package/dist/src/UserProfileClient.js +0 -1450
  22. package/dist/src/Utils.js +0 -894
  23. package/dist/src/Validation.js +0 -121
  24. package/dist/src/abr_profiles/abr_profile_live_drm.js +0 -1661
  25. package/dist/src/abr_profiles/abr_profile_live_to_vod.js +0 -1606
  26. package/dist/src/client/ABRPublishing.js +0 -1018
  27. package/dist/src/client/AccessGroups.js +0 -1503
  28. package/dist/src/client/ContentAccess.js +0 -5173
  29. package/dist/src/client/ContentManagement.js +0 -2680
  30. package/dist/src/client/Contracts.js +0 -1520
  31. package/dist/src/client/Files.js +0 -2181
  32. package/dist/src/client/LiveConf.js +0 -567
  33. package/dist/src/client/LiveStream.js +0 -2638
  34. package/dist/src/client/NFT.js +0 -162
  35. package/dist/src/client/NTP.js +0 -581
  36. package/dist/src/contracts/v2/AccessIndexor.js +0 -831
  37. package/dist/src/contracts/v2/Accessible.js +0 -31
  38. package/dist/src/contracts/v2/BaseAccessControlGroup.js +0 -1263
  39. package/dist/src/contracts/v2/BaseAccessWallet.js +0 -1609
  40. package/dist/src/contracts/v2/BaseAccessWalletFactory.js +0 -93
  41. package/dist/src/contracts/v2/BaseContent.js +0 -1076
  42. package/dist/src/contracts/v2/BaseContentFactory.js +0 -219
  43. package/dist/src/contracts/v2/BaseContentSpace.js +0 -1352
  44. package/dist/src/contracts/v2/BaseContentType.js +0 -364
  45. package/dist/src/contracts/v2/BaseFactory.js +0 -107
  46. package/dist/src/contracts/v2/BaseGroupFactory.js +0 -93
  47. package/dist/src/contracts/v2/BaseLibrary.js +0 -1041
  48. package/dist/src/contracts/v2/BaseLibraryFactory.js +0 -96
  49. package/dist/src/contracts/v2/Certifyer.js +0 -86
  50. package/dist/src/contracts/v2/Container.js +0 -540
  51. package/dist/src/contracts/v2/Content.js +0 -443
  52. package/dist/src/contracts/v2/Editable.js +0 -306
  53. package/dist/src/contracts/v2/ExternalUserWallet.js +0 -379
  54. package/dist/src/contracts/v2/IFactorySpace.js +0 -57
  55. package/dist/src/contracts/v2/IKmsSpace.js +0 -52
  56. package/dist/src/contracts/v2/INodeSpace.js +0 -18
  57. package/dist/src/contracts/v2/IUserSpace.js +0 -18
  58. package/dist/src/contracts/v2/LvRecordableStream.js +0 -1037
  59. package/dist/src/contracts/v2/LvRecording.js +0 -627
  60. package/dist/src/contracts/v2/LvStreamRightsHolder.js +0 -562
  61. package/dist/src/contracts/v2/MetaObject.js +0 -119
  62. package/dist/src/contracts/v2/Node.js +0 -167
  63. package/dist/src/contracts/v2/NodeSpace.js +0 -273
  64. package/dist/src/contracts/v2/Ownable.js +0 -87
  65. package/dist/src/contracts/v2/PaymentService.js +0 -627
  66. package/dist/src/contracts/v2/Precompile.js +0 -15
  67. package/dist/src/contracts/v2/Transactable.js +0 -82
  68. package/dist/src/contracts/v2/UserSpace.js +0 -29
  69. package/dist/src/contracts/v2/Utils.js +0 -18
  70. package/dist/src/contracts/v2/Verifier.js +0 -53
  71. package/dist/src/contracts/v2/strings.js +0 -4
  72. package/dist/src/contracts/v3/AccessIndexor.js +0 -774
  73. package/dist/src/contracts/v3/Accessible.js +0 -232
  74. package/dist/src/contracts/v3/Adminable.js +0 -107
  75. package/dist/src/contracts/v3/AvailsDelivery.js +0 -586
  76. package/dist/src/contracts/v3/BaseAccessControlGroup.js +0 -1603
  77. package/dist/src/contracts/v3/BaseAccessWallet.js +0 -1628
  78. package/dist/src/contracts/v3/BaseAccessWalletFactory.js +0 -112
  79. package/dist/src/contracts/v3/BaseContent.js +0 -1312
  80. package/dist/src/contracts/v3/BaseContentFactory.js +0 -183
  81. package/dist/src/contracts/v3/BaseContentFactoryExt.js +0 -175
  82. package/dist/src/contracts/v3/BaseContentSpace.js +0 -1515
  83. package/dist/src/contracts/v3/BaseContentType.js +0 -527
  84. package/dist/src/contracts/v3/BaseFactory.js +0 -126
  85. package/dist/src/contracts/v3/BaseGroupFactory.js +0 -112
  86. package/dist/src/contracts/v3/BaseLibrary.js +0 -1204
  87. package/dist/src/contracts/v3/BaseLibraryFactory.js +0 -115
  88. package/dist/src/contracts/v3/BaseTenantSpace.js +0 -1587
  89. package/dist/src/contracts/v3/Certifyer.js +0 -86
  90. package/dist/src/contracts/v3/Container.js +0 -739
  91. package/dist/src/contracts/v3/Content.js +0 -438
  92. package/dist/src/contracts/v3/CounterObject.js +0 -243
  93. package/dist/src/contracts/v3/Editable.js +0 -519
  94. package/dist/src/contracts/v3/EncToken.js +0 -4
  95. package/dist/src/contracts/v3/ExternalUserWallet.js +0 -587
  96. package/dist/src/contracts/v3/IAdmin.js +0 -18
  97. package/dist/src/contracts/v3/IFactorySpace.js +0 -57
  98. package/dist/src/contracts/v3/IKmsSpace.js +0 -52
  99. package/dist/src/contracts/v3/INodeSpace.js +0 -18
  100. package/dist/src/contracts/v3/IUserSpace.js +0 -32
  101. package/dist/src/contracts/v3/LvRecordableStream.js +0 -1032
  102. package/dist/src/contracts/v3/LvRecording.js +0 -650
  103. package/dist/src/contracts/v3/LvStreamRightsHolder.js +0 -557
  104. package/dist/src/contracts/v3/MetaObject.js +0 -144
  105. package/dist/src/contracts/v3/Node.js +0 -178
  106. package/dist/src/contracts/v3/NodeSpace.js +0 -284
  107. package/dist/src/contracts/v3/Ownable.js +0 -98
  108. package/dist/src/contracts/v3/PaymentService.js +0 -622
  109. package/dist/src/contracts/v3/Precompile.js +0 -26
  110. package/dist/src/contracts/v3/TenantFuncsBase.js +0 -351
  111. package/dist/src/contracts/v3/Transactable.js +0 -82
  112. package/dist/src/contracts/v3/UserSpace.js +0 -43
  113. package/dist/src/contracts/v3/Utils.js +0 -18
  114. package/dist/src/contracts/v3/Verifier.js +0 -53
  115. package/dist/src/contracts/v3/strings.js +0 -4
  116. package/dist/src/contracts/v3b/BaseAccessControlGroup.js +0 -1704
  117. package/dist/src/events/Topics.js +0 -1793
  118. package/dist/src/index.js +0 -8
  119. package/dist/src/walletClient/ClientMethods.js +0 -3102
  120. package/dist/src/walletClient/Configuration.js +0 -38
  121. package/dist/src/walletClient/Notifications.js +0 -168
  122. package/dist/src/walletClient/Profile.js +0 -332
  123. package/dist/src/walletClient/Utils.js +0 -281
  124. 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 && !update)) {
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;