@bosonprotocol/core-sdk 1.25.0-alpha.2 → 1.25.0-alpha.21

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 (217) hide show
  1. package/dist/cjs/accounts/mixin.d.ts +4 -4
  2. package/dist/cjs/accounts/mixin.d.ts.map +1 -1
  3. package/dist/cjs/accounts/mixin.js +8 -8
  4. package/dist/cjs/accounts/mixin.js.map +1 -1
  5. package/dist/cjs/accounts/subgraph.d.ts +1 -1
  6. package/dist/cjs/accounts/subgraph.d.ts.map +1 -1
  7. package/dist/cjs/accounts/subgraph.js +7 -7
  8. package/dist/cjs/accounts/subgraph.js.map +1 -1
  9. package/dist/cjs/accounts/types.d.ts +1 -1
  10. package/dist/cjs/accounts/types.d.ts.map +1 -1
  11. package/dist/cjs/core-sdk.d.ts +1 -0
  12. package/dist/cjs/core-sdk.d.ts.map +1 -1
  13. package/dist/cjs/core-sdk.js +3 -0
  14. package/dist/cjs/core-sdk.js.map +1 -1
  15. package/dist/cjs/erc1155/mixin.d.ts +1 -1
  16. package/dist/cjs/erc1155/mixin.d.ts.map +1 -1
  17. package/dist/cjs/erc1155/mixin.js +2 -2
  18. package/dist/cjs/erc1155/mixin.js.map +1 -1
  19. package/dist/cjs/erc20/mixin.d.ts +7 -7
  20. package/dist/cjs/erc20/mixin.d.ts.map +1 -1
  21. package/dist/cjs/erc20/mixin.js +14 -14
  22. package/dist/cjs/erc20/mixin.js.map +1 -1
  23. package/dist/cjs/erc721/mixin.d.ts +3 -3
  24. package/dist/cjs/erc721/mixin.d.ts.map +1 -1
  25. package/dist/cjs/erc721/mixin.js +6 -6
  26. package/dist/cjs/erc721/mixin.js.map +1 -1
  27. package/dist/cjs/exchanges/handler.js +12 -12
  28. package/dist/cjs/exchanges/handler.js.map +1 -1
  29. package/dist/cjs/exchanges/mixin.d.ts +3 -3
  30. package/dist/cjs/exchanges/mixin.js +3 -3
  31. package/dist/cjs/forwarder/handler.d.ts +1 -1
  32. package/dist/cjs/forwarder/handler.d.ts.map +1 -1
  33. package/dist/cjs/forwarder/handler.js +2 -4
  34. package/dist/cjs/forwarder/handler.js.map +1 -1
  35. package/dist/cjs/index.d.ts +1 -0
  36. package/dist/cjs/index.d.ts.map +1 -1
  37. package/dist/cjs/index.js +2 -1
  38. package/dist/cjs/index.js.map +1 -1
  39. package/dist/cjs/meta-tx/biconomy.d.ts +17 -3
  40. package/dist/cjs/meta-tx/biconomy.d.ts.map +1 -1
  41. package/dist/cjs/meta-tx/biconomy.js +19 -0
  42. package/dist/cjs/meta-tx/biconomy.js.map +1 -1
  43. package/dist/cjs/meta-tx/handler.d.ts +38 -4
  44. package/dist/cjs/meta-tx/handler.d.ts.map +1 -1
  45. package/dist/cjs/meta-tx/handler.js +92 -23
  46. package/dist/cjs/meta-tx/handler.js.map +1 -1
  47. package/dist/cjs/meta-tx/mixin.d.ts +25 -3
  48. package/dist/cjs/meta-tx/mixin.d.ts.map +1 -1
  49. package/dist/cjs/meta-tx/mixin.js +51 -22
  50. package/dist/cjs/meta-tx/mixin.js.map +1 -1
  51. package/dist/cjs/offers/handler.d.ts +15 -0
  52. package/dist/cjs/offers/handler.d.ts.map +1 -1
  53. package/dist/cjs/offers/handler.js +28 -4
  54. package/dist/cjs/offers/handler.js.map +1 -1
  55. package/dist/cjs/offers/interface.d.ts +1 -1
  56. package/dist/cjs/offers/interface.d.ts.map +1 -1
  57. package/dist/cjs/offers/interface.js +3 -2
  58. package/dist/cjs/offers/interface.js.map +1 -1
  59. package/dist/cjs/offers/mixin.d.ts +26 -3
  60. package/dist/cjs/offers/mixin.d.ts.map +1 -1
  61. package/dist/cjs/offers/mixin.js +46 -3
  62. package/dist/cjs/offers/mixin.js.map +1 -1
  63. package/dist/cjs/offers/renderContractualAgreement.d.ts.map +1 -1
  64. package/dist/cjs/offers/renderContractualAgreement.js +5 -4
  65. package/dist/cjs/offers/renderContractualAgreement.js.map +1 -1
  66. package/dist/cjs/seaport/abi.d.ts +41 -0
  67. package/dist/cjs/seaport/abi.d.ts.map +1 -0
  68. package/dist/cjs/seaport/abi.js +153 -0
  69. package/dist/cjs/seaport/abi.js.map +1 -0
  70. package/dist/cjs/seaport/handler.d.ts +46 -0
  71. package/dist/cjs/seaport/handler.d.ts.map +1 -0
  72. package/dist/cjs/seaport/handler.js +28 -0
  73. package/dist/cjs/seaport/handler.js.map +1 -0
  74. package/dist/cjs/seaport/index.d.ts +2 -0
  75. package/dist/cjs/seaport/index.d.ts.map +1 -0
  76. package/dist/cjs/seaport/index.js +28 -0
  77. package/dist/cjs/seaport/index.js.map +1 -0
  78. package/dist/cjs/subgraph.d.ts +1451 -212
  79. package/dist/cjs/subgraph.d.ts.map +1 -1
  80. package/dist/cjs/subgraph.js +67 -11
  81. package/dist/cjs/subgraph.js.map +1 -1
  82. package/dist/cjs/voucher/handler.d.ts +31 -0
  83. package/dist/cjs/voucher/handler.d.ts.map +1 -1
  84. package/dist/cjs/voucher/handler.js +57 -1
  85. package/dist/cjs/voucher/handler.js.map +1 -1
  86. package/dist/cjs/voucher/interface.d.ts +8 -0
  87. package/dist/cjs/voucher/interface.d.ts.map +1 -1
  88. package/dist/cjs/voucher/interface.js +81 -1
  89. package/dist/cjs/voucher/interface.js.map +1 -1
  90. package/dist/cjs/voucher/mixin.d.ts +11 -0
  91. package/dist/cjs/voucher/mixin.d.ts.map +1 -1
  92. package/dist/cjs/voucher/mixin.js +47 -0
  93. package/dist/cjs/voucher/mixin.js.map +1 -1
  94. package/dist/esm/accounts/mixin.d.ts +4 -4
  95. package/dist/esm/accounts/mixin.d.ts.map +1 -1
  96. package/dist/esm/accounts/mixin.js +8 -8
  97. package/dist/esm/accounts/mixin.js.map +1 -1
  98. package/dist/esm/accounts/subgraph.d.ts +1 -1
  99. package/dist/esm/accounts/subgraph.d.ts.map +1 -1
  100. package/dist/esm/accounts/subgraph.js +5 -5
  101. package/dist/esm/accounts/subgraph.js.map +1 -1
  102. package/dist/esm/accounts/types.d.ts +1 -1
  103. package/dist/esm/accounts/types.d.ts.map +1 -1
  104. package/dist/esm/core-sdk.d.ts +1 -0
  105. package/dist/esm/core-sdk.d.ts.map +1 -1
  106. package/dist/esm/core-sdk.js +3 -0
  107. package/dist/esm/core-sdk.js.map +1 -1
  108. package/dist/esm/erc1155/mixin.d.ts +1 -1
  109. package/dist/esm/erc1155/mixin.d.ts.map +1 -1
  110. package/dist/esm/erc1155/mixin.js +2 -2
  111. package/dist/esm/erc1155/mixin.js.map +1 -1
  112. package/dist/esm/erc20/mixin.d.ts +7 -7
  113. package/dist/esm/erc20/mixin.d.ts.map +1 -1
  114. package/dist/esm/erc20/mixin.js +14 -14
  115. package/dist/esm/erc20/mixin.js.map +1 -1
  116. package/dist/esm/erc721/mixin.d.ts +3 -3
  117. package/dist/esm/erc721/mixin.d.ts.map +1 -1
  118. package/dist/esm/erc721/mixin.js +6 -6
  119. package/dist/esm/erc721/mixin.js.map +1 -1
  120. package/dist/esm/exchanges/handler.js +12 -12
  121. package/dist/esm/exchanges/handler.js.map +1 -1
  122. package/dist/esm/exchanges/mixin.d.ts +3 -3
  123. package/dist/esm/exchanges/mixin.js +3 -3
  124. package/dist/esm/forwarder/handler.d.ts +1 -1
  125. package/dist/esm/forwarder/handler.d.ts.map +1 -1
  126. package/dist/esm/forwarder/handler.js +2 -4
  127. package/dist/esm/forwarder/handler.js.map +1 -1
  128. package/dist/esm/index.d.ts +1 -0
  129. package/dist/esm/index.d.ts.map +1 -1
  130. package/dist/esm/index.js +1 -0
  131. package/dist/esm/index.js.map +1 -1
  132. package/dist/esm/meta-tx/biconomy.d.ts +17 -3
  133. package/dist/esm/meta-tx/biconomy.d.ts.map +1 -1
  134. package/dist/esm/meta-tx/biconomy.js +17 -0
  135. package/dist/esm/meta-tx/biconomy.js.map +1 -1
  136. package/dist/esm/meta-tx/handler.d.ts +38 -4
  137. package/dist/esm/meta-tx/handler.d.ts.map +1 -1
  138. package/dist/esm/meta-tx/handler.js +118 -21
  139. package/dist/esm/meta-tx/handler.js.map +1 -1
  140. package/dist/esm/meta-tx/mixin.d.ts +25 -3
  141. package/dist/esm/meta-tx/mixin.d.ts.map +1 -1
  142. package/dist/esm/meta-tx/mixin.js +67 -17
  143. package/dist/esm/meta-tx/mixin.js.map +1 -1
  144. package/dist/esm/offers/handler.d.ts +15 -0
  145. package/dist/esm/offers/handler.d.ts.map +1 -1
  146. package/dist/esm/offers/handler.js +21 -3
  147. package/dist/esm/offers/handler.js.map +1 -1
  148. package/dist/esm/offers/interface.d.ts +1 -1
  149. package/dist/esm/offers/interface.d.ts.map +1 -1
  150. package/dist/esm/offers/interface.js +3 -2
  151. package/dist/esm/offers/interface.js.map +1 -1
  152. package/dist/esm/offers/mixin.d.ts +26 -3
  153. package/dist/esm/offers/mixin.d.ts.map +1 -1
  154. package/dist/esm/offers/mixin.js +42 -3
  155. package/dist/esm/offers/mixin.js.map +1 -1
  156. package/dist/esm/offers/renderContractualAgreement.d.ts.map +1 -1
  157. package/dist/esm/offers/renderContractualAgreement.js +5 -4
  158. package/dist/esm/offers/renderContractualAgreement.js.map +1 -1
  159. package/dist/esm/seaport/abi.d.ts +41 -0
  160. package/dist/esm/seaport/abi.d.ts.map +1 -0
  161. package/dist/esm/seaport/abi.js +150 -0
  162. package/dist/esm/seaport/abi.js.map +1 -0
  163. package/dist/esm/seaport/handler.d.ts +46 -0
  164. package/dist/esm/seaport/handler.d.ts.map +1 -0
  165. package/dist/esm/seaport/handler.js +24 -0
  166. package/dist/esm/seaport/handler.js.map +1 -0
  167. package/dist/esm/seaport/index.d.ts +2 -0
  168. package/dist/esm/seaport/index.d.ts.map +1 -0
  169. package/dist/esm/seaport/index.js +2 -0
  170. package/dist/esm/seaport/index.js.map +1 -0
  171. package/dist/esm/subgraph.d.ts +1451 -212
  172. package/dist/esm/subgraph.d.ts.map +1 -1
  173. package/dist/esm/subgraph.js +64 -8
  174. package/dist/esm/subgraph.js.map +1 -1
  175. package/dist/esm/voucher/handler.d.ts +31 -0
  176. package/dist/esm/voucher/handler.d.ts.map +1 -1
  177. package/dist/esm/voucher/handler.js +39 -1
  178. package/dist/esm/voucher/handler.js.map +1 -1
  179. package/dist/esm/voucher/interface.d.ts +8 -0
  180. package/dist/esm/voucher/interface.d.ts.map +1 -1
  181. package/dist/esm/voucher/interface.js +72 -0
  182. package/dist/esm/voucher/interface.js.map +1 -1
  183. package/dist/esm/voucher/mixin.d.ts +11 -0
  184. package/dist/esm/voucher/mixin.d.ts.map +1 -1
  185. package/dist/esm/voucher/mixin.js +41 -0
  186. package/dist/esm/voucher/mixin.js.map +1 -1
  187. package/package.json +3 -3
  188. package/src/accounts/interface.ts +1 -1
  189. package/src/accounts/mixin.ts +15 -14
  190. package/src/accounts/queries.graphql +4 -4
  191. package/src/accounts/subgraph.ts +6 -6
  192. package/src/accounts/types.ts +1 -1
  193. package/src/core-sdk.ts +4 -0
  194. package/src/erc1155/mixin.ts +2 -2
  195. package/src/erc20/mixin.ts +14 -14
  196. package/src/erc721/mixin.ts +6 -6
  197. package/src/exchanges/handler.ts +13 -13
  198. package/src/exchanges/mixin.ts +3 -3
  199. package/src/forwarder/handler.ts +3 -5
  200. package/src/index.ts +1 -0
  201. package/src/meta-tx/biconomy.ts +35 -2
  202. package/src/meta-tx/handler.ts +202 -31
  203. package/src/meta-tx/mixin.ts +135 -21
  204. package/src/metadata/base.graphql +3 -0
  205. package/src/metadata/product-v1.graphql +12 -0
  206. package/src/offers/handler.ts +36 -3
  207. package/src/offers/interface.ts +4 -2
  208. package/src/offers/mixin.ts +57 -2
  209. package/src/offers/queries.graphql +13 -0
  210. package/src/offers/renderContractualAgreement.ts +6 -9
  211. package/src/seaport/abi.ts +149 -0
  212. package/src/seaport/handler.ts +57 -0
  213. package/src/seaport/index.ts +1 -0
  214. package/src/subgraph.ts +1501 -216
  215. package/src/voucher/handler.ts +78 -1
  216. package/src/voucher/interface.ts +88 -0
  217. package/src/voucher/mixin.ts +76 -0
@@ -1,6 +1,7 @@
1
1
  import { handler } from ".";
2
2
  import { accounts } from "..";
3
3
  import { getOfferById } from "../offers/subgraph";
4
+ import { encodeValidate } from "../seaport/handler";
4
5
  import { BaseCoreSDK } from "./../mixins/base-core-sdk";
5
6
  export class VoucherMixin extends BaseCoreSDK {
6
7
  /**
@@ -91,5 +92,45 @@ export class VoucherMixin extends BaseCoreSDK {
91
92
  web3Lib: this._web3Lib
92
93
  });
93
94
  }
95
+ async setApprovalForAllToContract(operator, approved, overrides = {}) {
96
+ const sellerAddress = await this._web3Lib.getSignerAddress();
97
+ const seller = await accounts.subgraph.getSellerByAddress(this._subgraphUrl, sellerAddress);
98
+ return handler.setApprovalForAllToContract({
99
+ operator,
100
+ approved,
101
+ contractAddress: overrides.contractAddress || seller.voucherCloneAddress,
102
+ web3Lib: this._web3Lib
103
+ });
104
+ }
105
+ async setContractURI(contractURI, overrides = {}) {
106
+ const sellerAddress = await this._web3Lib.getSignerAddress();
107
+ const seller = await accounts.subgraph.getSellerByAddress(this._subgraphUrl, sellerAddress);
108
+ return handler.setContractURI({
109
+ contractURI,
110
+ contractAddress: overrides.contractAddress || seller.voucherCloneAddress,
111
+ web3Lib: this._web3Lib
112
+ });
113
+ }
114
+ async validateSeaportOrders(openseaConduit, seaportContract, orders, overrides = { approveIfNeeded: true }) {
115
+ const sellerAddress = await this._web3Lib.getSignerAddress();
116
+ const seller = await accounts.subgraph.getSellerByAddress(this._subgraphUrl, sellerAddress);
117
+ if (overrides.approveIfNeeded) {
118
+ // Check the openseaConduit is approved for preminted tokens
119
+ const isApprovedForAll = await this.isApprovedForAll(openseaConduit, {
120
+ owner: seller.voucherCloneAddress,
121
+ contractAddress: overrides.contractAddress || seller.voucherCloneAddress
122
+ });
123
+ if (!isApprovedForAll) {
124
+ const txApproval = await this.setApprovalForAllToContract(openseaConduit, true, overrides);
125
+ await txApproval.wait();
126
+ }
127
+ }
128
+ return handler.callExternalContract({
129
+ to: seaportContract,
130
+ data: encodeValidate(orders),
131
+ contractAddress: overrides.contractAddress || seller.voucherCloneAddress,
132
+ web3Lib: this._web3Lib
133
+ });
134
+ }
94
135
  }
95
136
  //# sourceMappingURL=mixin.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mixin.js","sourceRoot":"","sources":["../../../src/voucher/mixin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mixin.js","sourceRoot":"","sources":["../../../src/voucher/mixin.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bosonprotocol/core-sdk",
3
- "version": "1.25.0-alpha.2",
3
+ "version": "1.25.0-alpha.21",
4
4
  "description": "Facilitates interaction with the contracts and subgraphs of the Boson Protocol",
5
5
  "main": "./dist/cjs/index.js",
6
6
  "module": "./dist/esm/index.js",
@@ -33,7 +33,7 @@
33
33
  "access": "public"
34
34
  },
35
35
  "dependencies": {
36
- "@bosonprotocol/common": "^1.21.0-alpha.2",
36
+ "@bosonprotocol/common": "^1.21.0-alpha.21",
37
37
  "@ethersproject/abi": "^5.5.0",
38
38
  "@ethersproject/address": "^5.5.0",
39
39
  "@ethersproject/bignumber": "^5.5.0",
@@ -54,5 +54,5 @@
54
54
  "ts-jest": "^27.1.3",
55
55
  "typescript": "^4.5.5"
56
56
  },
57
- "gitHead": "5e4fcaa85d1581afd6e7dc3a9f3cced5dc50049e"
57
+ "gitHead": "805450ddd063fffb5397c5eaca19bb6b4961fa25"
58
58
  }
@@ -163,7 +163,7 @@ export function updateSellerArgsToStruct(args: UpdateSellerArgs) {
163
163
  }
164
164
 
165
165
  function argsToSellerStruct(args: {
166
- operator: string;
166
+ assistant: string;
167
167
  admin: string;
168
168
  clerk: string;
169
169
  treasury: string;
@@ -34,17 +34,17 @@ export class AccountsMixin extends BaseCoreSDK {
34
34
 
35
35
  /**
36
36
  * Returns seller entity from subgraph.
37
- * @param operator - Operator address of seller entity to query for.
37
+ * @param assistant - Assistant address of seller entity to query for.
38
38
  * @param queryVars - Optional query variables to skip, order or filter.
39
39
  * @returns Seller entity from subgraph.
40
40
  */
41
- public async getSellerByOperator(
42
- operator: string,
41
+ public async getSellerByAssistant(
42
+ assistant: string,
43
43
  queryVars?: subgraph.GetSellersQueryQueryVariables
44
44
  ): Promise<subgraph.SellerFieldsFragment> {
45
- return accounts.subgraph.getSellerByOperator(
45
+ return accounts.subgraph.getSellerByAssistant(
46
46
  this._subgraphUrl,
47
- operator,
47
+ assistant,
48
48
  queryVars
49
49
  );
50
50
  }
@@ -101,7 +101,7 @@ export class AccountsMixin extends BaseCoreSDK {
101
101
  }
102
102
 
103
103
  /**
104
- * Returns seller entity from subgraph. Matches `operator`, `clerk`, `admin` or `treasury`.
104
+ * Returns seller entity from subgraph. Matches `assistant`, `clerk`, `admin` or `treasury`.
105
105
  * @param address - Address of seller entity to query for.
106
106
  * @param queryVars - Optional query variables to skip, order or filter.
107
107
  * @returns Seller entity from subgraph.
@@ -318,7 +318,8 @@ export class AccountsMixin extends BaseCoreSDK {
318
318
  await this._web3Lib.getSignerAddress()
319
319
  ).toLowerCase();
320
320
  const fieldsToUpdate = {
321
- operator: currentAccount === pendingSellerUpdate.operator?.toLowerCase(),
321
+ assistant:
322
+ currentAccount === pendingSellerUpdate.assistant?.toLowerCase(),
322
323
  clerk: currentAccount === pendingSellerUpdate.clerk?.toLowerCase(),
323
324
  admin: currentAccount === pendingSellerUpdate.admin?.toLowerCase(),
324
325
  authToken:
@@ -327,7 +328,7 @@ export class AccountsMixin extends BaseCoreSDK {
327
328
  pendingSellerUpdate.tokenType !== AuthTokenType.NONE
328
329
  };
329
330
  if (
330
- fieldsToUpdate.operator ||
331
+ fieldsToUpdate.assistant ||
331
332
  fieldsToUpdate.clerk ||
332
333
  fieldsToUpdate.admin ||
333
334
  fieldsToUpdate.authToken
@@ -335,8 +336,8 @@ export class AccountsMixin extends BaseCoreSDK {
335
336
  return this.optInToSellerUpdate({
336
337
  id: sellerUpdates.id,
337
338
  fieldsToUpdate: {
338
- operator:
339
- currentAccount === pendingSellerUpdate.operator.toLowerCase(),
339
+ assistant:
340
+ currentAccount === pendingSellerUpdate.assistant.toLowerCase(),
340
341
  clerk: currentAccount === pendingSellerUpdate.clerk.toLowerCase(),
341
342
  admin: currentAccount === pendingSellerUpdate.admin.toLowerCase(),
342
343
  authToken: pendingSellerUpdate.tokenType !== AuthTokenType.NONE
@@ -414,7 +415,7 @@ export class AccountsMixin extends BaseCoreSDK {
414
415
  * @returns Created exchange id.
415
416
  */
416
417
  public getPendingSellerUpdateFromLogs(logs: Log[]): {
417
- operator: string;
418
+ assistant: string;
418
419
  clerk: string;
419
420
  admin: string;
420
421
  tokenType: number;
@@ -424,7 +425,7 @@ export class AccountsMixin extends BaseCoreSDK {
424
425
  // SellerUpdatePending or SellerUpdateApplied events
425
426
  const valuesFromLogs = getValuesFromLogsExt<
426
427
  | {
427
- operator: string;
428
+ assistant: string;
428
429
  clerk: string;
429
430
  admin: string;
430
431
  }
@@ -440,7 +441,7 @@ export class AccountsMixin extends BaseCoreSDK {
440
441
  });
441
442
  const pendingSellerStruct = (
442
443
  valuesFromLogs["pendingSeller"] as {
443
- operator: string;
444
+ assistant: string;
444
445
  clerk: string;
445
446
  admin: string;
446
447
  }[]
@@ -452,7 +453,7 @@ export class AccountsMixin extends BaseCoreSDK {
452
453
  }[]
453
454
  )?.[0];
454
455
  return {
455
- operator: pendingSellerStruct?.operator,
456
+ assistant: pendingSellerStruct?.assistant,
456
457
  admin: pendingSellerStruct?.admin,
457
458
  clerk: pendingSellerStruct?.clerk,
458
459
  tokenId: pendingAuthTokenStruct?.tokenId,
@@ -235,7 +235,7 @@ fragment SellerFields on Seller {
235
235
 
236
236
  fragment BaseSellerFields on Seller {
237
237
  id
238
- operator
238
+ assistant
239
239
  admin
240
240
  clerk
241
241
  treasury
@@ -248,7 +248,7 @@ fragment BaseSellerFields on Seller {
248
248
  }
249
249
 
250
250
  fragment PendingSellerFields on PendingSeller {
251
- operator
251
+ assistant
252
252
  admin
253
253
  clerk
254
254
  authTokenId
@@ -323,7 +323,7 @@ fragment BaseDisputeResolverFields on DisputeResolver {
323
323
  admin
324
324
  clerk
325
325
  treasury
326
- operator
326
+ assistant
327
327
  metadataUri
328
328
  active
329
329
  sellerAllowList
@@ -333,7 +333,7 @@ fragment BaseDisputeResolverFields on DisputeResolver {
333
333
  }
334
334
 
335
335
  fragment PendingDisputeResolverFields on PendingDisputeResolver {
336
- operator
336
+ assistant
337
337
  admin
338
338
  clerk
339
339
  }
@@ -71,15 +71,15 @@ export async function getSellers(
71
71
  return sellers;
72
72
  }
73
73
 
74
- export async function getSellerByOperator(
74
+ export async function getSellerByAssistant(
75
75
  subgraphUrl: string,
76
- operatorAddress: string,
76
+ assistantAddress: string,
77
77
  queryVars: GetSellersQueryQueryVariables = {}
78
78
  ): Promise<SellerFieldsFragment | undefined> {
79
79
  const sellers = await getSellers(subgraphUrl, {
80
80
  sellersFilter: {
81
81
  ...queryVars.sellersFilter,
82
- operator: operatorAddress.toLowerCase()
82
+ assistant: assistantAddress.toLowerCase()
83
83
  },
84
84
  ...queryVars
85
85
  });
@@ -153,13 +153,13 @@ export async function getSellerByAddress(
153
153
  address: string,
154
154
  queryVars: GetSellersQueryQueryVariables = {}
155
155
  ): Promise<SellerFieldsFragment> {
156
- const [operator, admin, clerk] = await Promise.all([
157
- getSellerByOperator(subgraphUrl, address, queryVars),
156
+ const [assistant, admin, clerk] = await Promise.all([
157
+ getSellerByAssistant(subgraphUrl, address, queryVars),
158
158
  getSellerByAdmin(subgraphUrl, address, queryVars),
159
159
  getSellerByClerk(subgraphUrl, address, queryVars)
160
160
  ]);
161
161
 
162
- return operator || admin || clerk;
162
+ return assistant || admin || clerk;
163
163
  }
164
164
 
165
165
  export async function getDisputeResolverById(
@@ -18,7 +18,7 @@ export {
18
18
 
19
19
  export type CreateDisputeResolverArgs = {
20
20
  escalationResponsePeriodInMS: number;
21
- operator: string;
21
+ assistant: string;
22
22
  admin: string;
23
23
  clerk: string;
24
24
  treasury: string;
package/src/core-sdk.ts CHANGED
@@ -65,6 +65,10 @@ export class CoreSDK extends BaseCoreSDK {
65
65
  });
66
66
  }
67
67
 
68
+ public get subgraphUrl() {
69
+ return this._subgraphUrl;
70
+ }
71
+
68
72
  public get metaTxConfig() {
69
73
  return this._metaTxConfig;
70
74
  }
@@ -6,8 +6,8 @@ export class ERC1155Mixin extends BaseCoreSDK {
6
6
  /* ERC1155 related methods */
7
7
  /* -------------------------------------------------------------------------- */
8
8
  public async erc1155BalanceOf(
9
- ...args: Parameters<typeof balanceOf>
9
+ args: Omit<Parameters<typeof balanceOf>[0], "web3Lib">
10
10
  ): Promise<ReturnType<typeof balanceOf>> {
11
- return balanceOf(...args);
11
+ return balanceOf({ web3Lib: this._web3Lib, ...args });
12
12
  }
13
13
  }
@@ -14,44 +14,44 @@ export class ERC20Mixin extends BaseCoreSDK {
14
14
  /* ERC20 related methods */
15
15
  /* -------------------------------------------------------------------------- */
16
16
  public async erc20Approve(
17
- ...args: Parameters<typeof approve>
17
+ args: Omit<Parameters<typeof approve>[0], "web3Lib">
18
18
  ): Promise<ReturnType<typeof approve>> {
19
- return approve(...args);
19
+ return approve({ web3Lib: this._web3Lib, ...args });
20
20
  }
21
21
 
22
22
  public async erc20GetAllowance(
23
- ...args: Parameters<typeof getAllowance>
23
+ args: Omit<Parameters<typeof getAllowance>[0], "web3Lib">
24
24
  ): Promise<ReturnType<typeof getAllowance>> {
25
- return getAllowance(...args);
25
+ return getAllowance({ web3Lib: this._web3Lib, ...args });
26
26
  }
27
27
 
28
28
  public async erc20GetDecimals(
29
- ...args: Parameters<typeof getDecimals>
29
+ args: Omit<Parameters<typeof getDecimals>[0], "web3Lib">
30
30
  ): Promise<ReturnType<typeof getDecimals>> {
31
- return getDecimals(...args);
31
+ return getDecimals({ web3Lib: this._web3Lib, ...args });
32
32
  }
33
33
 
34
34
  public async erc20GetSymbol(
35
- ...args: Parameters<typeof getSymbol>
35
+ args: Omit<Parameters<typeof getSymbol>[0], "web3Lib">
36
36
  ): Promise<ReturnType<typeof getSymbol>> {
37
- return getSymbol(...args);
37
+ return getSymbol({ web3Lib: this._web3Lib, ...args });
38
38
  }
39
39
 
40
40
  public async erc20GetName(
41
- ...args: Parameters<typeof getName>
41
+ args: Omit<Parameters<typeof getName>[0], "web3Lib">
42
42
  ): Promise<ReturnType<typeof getName>> {
43
- return getName(...args);
43
+ return getName({ web3Lib: this._web3Lib, ...args });
44
44
  }
45
45
 
46
46
  public async erc20EnsureAllowance(
47
- ...args: Parameters<typeof ensureAllowance>
47
+ args: Omit<Parameters<typeof ensureAllowance>[0], "web3Lib">
48
48
  ): Promise<ReturnType<typeof ensureAllowance>> {
49
- return ensureAllowance(...args);
49
+ return ensureAllowance({ web3Lib: this._web3Lib, ...args });
50
50
  }
51
51
 
52
52
  public async erc20BalanceOf(
53
- ...args: Parameters<typeof balanceOf>
53
+ args: Omit<Parameters<typeof balanceOf>[0], "web3Lib">
54
54
  ): Promise<ReturnType<typeof balanceOf>> {
55
- return balanceOf(...args);
55
+ return balanceOf({ web3Lib: this._web3Lib, ...args });
56
56
  }
57
57
  }
@@ -6,20 +6,20 @@ export class ERC721Mixin extends BaseCoreSDK {
6
6
  /* ERC721 related methods */
7
7
  /* -------------------------------------------------------------------------- */
8
8
  public async erc721BalanceOf(
9
- ...args: Parameters<typeof balanceOf>
9
+ args: Omit<Parameters<typeof balanceOf>[0], "web3Lib">
10
10
  ): Promise<ReturnType<typeof balanceOf>> {
11
- return balanceOf(...args);
11
+ return balanceOf({ web3Lib: this._web3Lib, ...args });
12
12
  }
13
13
 
14
14
  public async erc721OwnerOf(
15
- ...args: Parameters<typeof ownerOf>
15
+ args: Omit<Parameters<typeof ownerOf>[0], "web3Lib">
16
16
  ): Promise<ReturnType<typeof ownerOf>> {
17
- return ownerOf(...args);
17
+ return ownerOf({ web3Lib: this._web3Lib, ...args });
18
18
  }
19
19
 
20
20
  public async erc721TokenOfOwnerByIndex(
21
- ...args: Parameters<typeof tokenOfOwnerByIndex>
21
+ args: Omit<Parameters<typeof tokenOfOwnerByIndex>[0], "web3Lib">
22
22
  ): Promise<ReturnType<typeof tokenOfOwnerByIndex>> {
23
- return tokenOfOwnerByIndex(...args);
23
+ return tokenOfOwnerByIndex({ web3Lib: this._web3Lib, ...args });
24
24
  }
25
25
  }
@@ -123,7 +123,7 @@ export async function revokeVoucher(
123
123
 
124
124
  assertExchange(args.exchangeId, exchange);
125
125
  assertExchangeState(exchange, ExchangeState.Committed);
126
- assertSignerIsOperator(signerAddress, exchange);
126
+ assertSignerIsAssistant(signerAddress, exchange);
127
127
 
128
128
  return args.web3Lib.sendTransaction({
129
129
  to: args.contractAddress,
@@ -218,13 +218,13 @@ function assertExchangeState(
218
218
  }
219
219
  }
220
220
 
221
- function assertSignerIsOperator(
221
+ function assertSignerIsAssistant(
222
222
  signer: string,
223
223
  exchange: ExchangeFieldsFragment
224
224
  ) {
225
- if (exchange.seller.operator.toLowerCase() !== signer.toLowerCase()) {
225
+ if (exchange.seller.assistant.toLowerCase() !== signer.toLowerCase()) {
226
226
  throw new Error(
227
- `Signer ${signer} is not the operator ${exchange.seller.operator}`
227
+ `Signer ${signer} is not the assistant ${exchange.seller.assistant}`
228
228
  );
229
229
  }
230
230
  }
@@ -237,24 +237,24 @@ function assertSignerIsBuyer(signer: string, exchange: ExchangeFieldsFragment) {
237
237
  }
238
238
  }
239
239
 
240
- function assertSignerIsBuyerOrOperator(
240
+ function assertSignerIsBuyerOrAssistant(
241
241
  signer: string,
242
242
  exchange: ExchangeFieldsFragment
243
243
  ) {
244
244
  const { seller, buyer } = exchange;
245
245
  const buyerAddress = buyer.wallet;
246
- const operatorAddress = seller.operator;
247
- const isSignerOperator =
248
- signer.toLowerCase() === operatorAddress.toLowerCase();
246
+ const assistantAddress = seller.assistant;
247
+ const isSignerAssistant =
248
+ signer.toLowerCase() === assistantAddress.toLowerCase();
249
249
  const isSignerBuyer = signer.toLowerCase() === buyerAddress.toLowerCase();
250
250
 
251
- if (!isSignerOperator && !isSignerBuyer) {
251
+ if (!isSignerAssistant && !isSignerBuyer) {
252
252
  throw new Error(
253
- `Signer ${signer} is required to be the buyer ${buyerAddress} or operator ${operatorAddress}`
253
+ `Signer ${signer} is required to be the buyer ${buyerAddress} or assistant ${assistantAddress}`
254
254
  );
255
255
  }
256
256
 
257
- return { isSignerBuyer, isSignerOperator };
257
+ return { isSignerBuyer, isSignerAssistant };
258
258
  }
259
259
 
260
260
  function assertCompletableExchange(
@@ -264,12 +264,12 @@ function assertCompletableExchange(
264
264
  ) {
265
265
  assertExchange(exchangeId, exchange);
266
266
 
267
- const { isSignerOperator, isSignerBuyer } = assertSignerIsBuyerOrOperator(
267
+ const { isSignerAssistant, isSignerBuyer } = assertSignerIsBuyerOrAssistant(
268
268
  signer,
269
269
  exchange
270
270
  );
271
271
 
272
- if (isSignerOperator && !isSignerBuyer) {
272
+ if (isSignerAssistant && !isSignerBuyer) {
273
273
  const elapsedSinceRedeemMS =
274
274
  Date.now() - Number(exchange.redeemedDate || "0") * 1000;
275
275
  const didDisputePeriodElapse =
@@ -83,7 +83,7 @@ export class ExchangesMixin extends BaseCoreSDK {
83
83
 
84
84
  /**
85
85
  * Revokes an existing voucher by calling the `ExchangeHandlerContract`.
86
- * Callable by seller `operator`.
86
+ * Callable by seller `assistant`.
87
87
  * @param exchangeId - ID of exchange to revoke.
88
88
  * @returns Transaction response.
89
89
  */
@@ -134,7 +134,7 @@ export class ExchangesMixin extends BaseCoreSDK {
134
134
 
135
135
  /**
136
136
  * Completes an existing voucher by calling the `ExchangeHandlerContract`.
137
- * Callable by buyer or seller operator.
137
+ * Callable by buyer or seller assistant.
138
138
  * @param exchangeId - ID of exchange to complete.
139
139
  * @returns Transaction response.
140
140
  */
@@ -151,7 +151,7 @@ export class ExchangesMixin extends BaseCoreSDK {
151
151
 
152
152
  /**
153
153
  * Completes a batch of existing vouchers by calling the `ExchangeHandlerContract`.
154
- * Callable by buyer or seller operator.
154
+ * Callable by buyer or seller assistant.
155
155
  * @param exchangeIds - IDs of exchange to complete.
156
156
  * @returns Transaction response.
157
157
  */
@@ -7,13 +7,13 @@ export async function getNonce(args: {
7
7
  contractAddress: string;
8
8
  user: string;
9
9
  web3Lib: Web3LibAdapter;
10
- batchId: BigNumberish;
10
+ batchId?: BigNumberish;
11
11
  forwarderAbi: typeof abis.MockForwarderABI | typeof abis.BiconomyForwarderABI;
12
12
  }): Promise<string> {
13
13
  const isMock = args.forwarderAbi === mockInterface.abi;
14
14
  const data = isMock
15
15
  ? mockInterface.encodeGetNonce(args.user)
16
- : biconomyInterface.encodeGetNonce(args.user, args.batchId);
16
+ : biconomyInterface.encodeGetNonce(args.user, args.batchId || "0");
17
17
 
18
18
  const result = await args.web3Lib.call({
19
19
  to: args.contractAddress,
@@ -45,12 +45,10 @@ export async function verifyEIP712(args: {
45
45
  args.signature
46
46
  );
47
47
  try {
48
- const result = await args.web3Lib.call({
48
+ await args.web3Lib.call({
49
49
  to: args.contractAddress,
50
50
  data
51
51
  });
52
- const ret = biconomyInterface.decodeVerifyEIP712(result);
53
- console.log({ ret });
54
52
  return true;
55
53
  } catch (e) {
56
54
  return false;
package/src/index.ts CHANGED
@@ -13,6 +13,7 @@ export * as subgraph from "./subgraph";
13
13
  export * as groups from "./groups";
14
14
  export * as forwarder from "./forwarder";
15
15
  export * as voucher from "./voucher";
16
+ export * as seaport from "./seaport";
16
17
 
17
18
  export {
18
19
  defaultConfigs,
@@ -44,13 +44,46 @@ export type GetRetriedHashesArgs = {
44
44
  transactionHash: string;
45
45
  };
46
46
 
47
+ export type ForwarderDomainData = {
48
+ name: string;
49
+ version: string;
50
+ verifyingContract: string;
51
+ salt: string;
52
+ };
53
+
47
54
  export class Biconomy {
48
55
  public constructor(
49
56
  private _relayerUrl: string,
50
- private _apiKey: string,
51
- private _apiId: string
57
+ private _apiKey?: string,
58
+ private _apiId?: string
52
59
  ) {}
53
60
 
61
+ public async getForwarderDomainDetails(
62
+ args: { chainId: number },
63
+ overrides: Partial<{
64
+ relayerUrl: string;
65
+ forwarderAddress: string;
66
+ }> = {}
67
+ ): Promise<{ [key: string]: ForwarderDomainData }> {
68
+ const url = `${
69
+ overrides.relayerUrl || this._relayerUrl
70
+ }/api/v2/meta-tx/systemInfo?networkId=${args.chainId}`;
71
+ const response = await fetch(url, { method: "GET" });
72
+
73
+ if (!response.ok) {
74
+ let message;
75
+ try {
76
+ const jsonResponse = await response.json();
77
+ message = JSON.stringify(jsonResponse);
78
+ } catch {
79
+ message = response.statusText;
80
+ }
81
+ throw new ApiError(response.status, `Failed to relay tx: ${message}`);
82
+ }
83
+ const txResponse = await response.json();
84
+ return txResponse?.forwarderDomainDetails;
85
+ }
86
+
54
87
  public async relayTransaction(
55
88
  args: RelayTransactionArgs,
56
89
  overrides: Partial<RelayOverrides> = {}