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