@bosonprotocol/core-sdk 1.23.0-alpha.19 → 1.23.0-alpha.20

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 (55) hide show
  1. package/dist/cjs/erc1155/handler.d.ts +9 -0
  2. package/dist/cjs/erc1155/handler.d.ts.map +1 -0
  3. package/dist/cjs/erc1155/handler.js +28 -0
  4. package/dist/cjs/erc1155/handler.js.map +1 -0
  5. package/dist/cjs/erc1155/index.d.ts +3 -0
  6. package/dist/cjs/erc1155/index.d.ts.map +1 -0
  7. package/dist/cjs/erc1155/index.js +29 -0
  8. package/dist/cjs/erc1155/index.js.map +1 -0
  9. package/dist/cjs/erc1155/interface.d.ts +3 -0
  10. package/dist/cjs/erc1155/interface.d.ts.map +1 -0
  11. package/dist/cjs/erc1155/interface.js +7 -0
  12. package/dist/cjs/erc1155/interface.js.map +1 -0
  13. package/dist/cjs/erc20/handler.d.ts +5 -0
  14. package/dist/cjs/erc20/handler.d.ts.map +1 -1
  15. package/dist/cjs/erc20/handler.js +12 -1
  16. package/dist/cjs/erc20/handler.js.map +1 -1
  17. package/dist/cjs/erc721/handler.d.ts +5 -0
  18. package/dist/cjs/erc721/handler.d.ts.map +1 -1
  19. package/dist/cjs/erc721/handler.js +12 -1
  20. package/dist/cjs/erc721/handler.js.map +1 -1
  21. package/dist/cjs/offers/mixin.d.ts +1 -0
  22. package/dist/cjs/offers/mixin.d.ts.map +1 -1
  23. package/dist/cjs/offers/mixin.js +46 -0
  24. package/dist/cjs/offers/mixin.js.map +1 -1
  25. package/dist/esm/erc1155/handler.d.ts +9 -0
  26. package/dist/esm/erc1155/handler.d.ts.map +1 -0
  27. package/dist/esm/erc1155/handler.js +13 -0
  28. package/dist/esm/erc1155/handler.js.map +1 -0
  29. package/dist/esm/erc1155/index.d.ts +3 -0
  30. package/dist/esm/erc1155/index.d.ts.map +1 -0
  31. package/dist/esm/erc1155/index.js +3 -0
  32. package/dist/esm/erc1155/index.js.map +1 -0
  33. package/dist/esm/erc1155/interface.d.ts +3 -0
  34. package/dist/esm/erc1155/interface.d.ts.map +1 -0
  35. package/dist/esm/erc1155/interface.js +4 -0
  36. package/dist/esm/erc1155/interface.js.map +1 -0
  37. package/dist/esm/erc20/handler.d.ts +5 -0
  38. package/dist/esm/erc20/handler.d.ts.map +1 -1
  39. package/dist/esm/erc20/handler.js +8 -0
  40. package/dist/esm/erc20/handler.js.map +1 -1
  41. package/dist/esm/erc721/handler.d.ts +5 -0
  42. package/dist/esm/erc721/handler.d.ts.map +1 -1
  43. package/dist/esm/erc721/handler.js +8 -0
  44. package/dist/esm/erc721/handler.js.map +1 -1
  45. package/dist/esm/offers/mixin.d.ts +1 -0
  46. package/dist/esm/offers/mixin.d.ts.map +1 -1
  47. package/dist/esm/offers/mixin.js +44 -0
  48. package/dist/esm/offers/mixin.js.map +1 -1
  49. package/package.json +3 -3
  50. package/src/erc1155/handler.ts +21 -0
  51. package/src/erc1155/index.ts +2 -0
  52. package/src/erc1155/interface.ts +4 -0
  53. package/src/erc20/handler.ts +14 -0
  54. package/src/erc721/handler.ts +14 -0
  55. package/src/offers/mixin.ts +56 -2
@@ -0,0 +1,9 @@
1
+ import { Web3LibAdapter } from "@bosonprotocol/common";
2
+ import { BigNumberish } from "@ethersproject/bignumber";
3
+ export declare function balanceOf(args: {
4
+ contractAddress: string;
5
+ tokenId: BigNumberish;
6
+ owner: string;
7
+ web3Lib: Web3LibAdapter;
8
+ }): Promise<string>;
9
+ //# sourceMappingURL=handler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../../src/erc1155/handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAGxD,wBAAsB,SAAS,CAAC,IAAI,EAAE;IACpC,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,YAAY,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,cAAc,CAAC;CACzB,GAAG,OAAO,CAAC,MAAM,CAAC,CAWlB"}
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.balanceOf = void 0;
13
+ const interface_1 = require("./interface");
14
+ function balanceOf(args) {
15
+ return __awaiter(this, void 0, void 0, function* () {
16
+ const result = yield args.web3Lib.call({
17
+ to: args.contractAddress,
18
+ data: interface_1.erc1155Iface.encodeFunctionData("balanceOf", [
19
+ args.owner,
20
+ args.tokenId
21
+ ])
22
+ });
23
+ const [balance] = interface_1.erc1155Iface.decodeFunctionResult("balanceOf", result);
24
+ return String(balance);
25
+ });
26
+ }
27
+ exports.balanceOf = balanceOf;
28
+ //# sourceMappingURL=handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/erc1155/handler.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,2CAA2C;AAE3C,SAAsB,SAAS,CAAC,IAK/B;;QACC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;YACrC,EAAE,EAAE,IAAI,CAAC,eAAe;YACxB,IAAI,EAAE,wBAAY,CAAC,kBAAkB,CAAC,WAAW,EAAE;gBACjD,IAAI,CAAC,KAAK;gBACV,IAAI,CAAC,OAAO;aACb,CAAC;SACH,CAAC,CAAC;QAEH,MAAM,CAAC,OAAO,CAAC,GAAG,wBAAY,CAAC,oBAAoB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QACzE,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;IACzB,CAAC;CAAA;AAhBD,8BAgBC"}
@@ -0,0 +1,3 @@
1
+ export * as iface from "./interface";
2
+ export * as handler from "./handler";
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/erc1155/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,aAAa,CAAC;AACrC,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC"}
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.handler = exports.iface = void 0;
27
+ exports.iface = __importStar(require("./interface"));
28
+ exports.handler = __importStar(require("./handler"));
29
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/erc1155/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qDAAqC;AACrC,qDAAqC"}
@@ -0,0 +1,3 @@
1
+ import { Interface } from "@ethersproject/abi";
2
+ export declare const erc1155Iface: Interface;
3
+ //# sourceMappingURL=interface.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interface.d.ts","sourceRoot":"","sources":["../../../src/erc1155/interface.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,eAAO,MAAM,YAAY,WAA8B,CAAC"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.erc1155Iface = void 0;
4
+ const common_1 = require("@bosonprotocol/common");
5
+ const abi_1 = require("@ethersproject/abi");
6
+ exports.erc1155Iface = new abi_1.Interface(common_1.abis.ERC1155);
7
+ //# sourceMappingURL=interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interface.js","sourceRoot":"","sources":["../../../src/erc1155/interface.ts"],"names":[],"mappings":";;;AAAA,kDAA6C;AAC7C,4CAA+C;AAElC,QAAA,YAAY,GAAG,IAAI,eAAS,CAAC,aAAI,CAAC,OAAO,CAAC,CAAC"}
@@ -31,4 +31,9 @@ export declare function ensureAllowance(args: {
31
31
  value: BigNumberish;
32
32
  web3Lib: Web3LibAdapter;
33
33
  }): Promise<void>;
34
+ export declare function balanceOf(args: {
35
+ contractAddress: string;
36
+ owner: string;
37
+ web3Lib: Web3LibAdapter;
38
+ }): Promise<string>;
34
39
  //# sourceMappingURL=handler.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../../src/erc20/handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAa,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAGnE,wBAAsB,OAAO,CAAC,IAAI,EAAE;IAClC,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,YAAY,CAAC;IACpB,OAAO,EAAE,cAAc,CAAC;CACzB,gEAKA;AAED,wBAAsB,YAAY,CAAC,IAAI,EAAE;IACvC,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,cAAc,CAAC;CACzB,mBAQA;AAED,wBAAsB,WAAW,CAAC,IAAI,EAAE;IACtC,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,cAAc,CAAC;CACzB,mBAQA;AAED,wBAAsB,SAAS,CAAC,IAAI,EAAE;IACpC,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,cAAc,CAAC;CACzB,mBAQA;AAED,wBAAsB,OAAO,CAAC,IAAI,EAAE;IAClC,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,cAAc,CAAC;CACzB,mBAQA;AAED,wBAAsB,eAAe,CAAC,IAAI,EAAE;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,YAAY,CAAC;IACpB,OAAO,EAAE,cAAc,CAAC;CACzB,iBAMA"}
1
+ {"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../../src/erc20/handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAa,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAGnE,wBAAsB,OAAO,CAAC,IAAI,EAAE;IAClC,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,YAAY,CAAC;IACpB,OAAO,EAAE,cAAc,CAAC;CACzB,gEAKA;AAED,wBAAsB,YAAY,CAAC,IAAI,EAAE;IACvC,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,cAAc,CAAC;CACzB,mBAQA;AAED,wBAAsB,WAAW,CAAC,IAAI,EAAE;IACtC,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,cAAc,CAAC;CACzB,mBAQA;AAED,wBAAsB,SAAS,CAAC,IAAI,EAAE;IACpC,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,cAAc,CAAC;CACzB,mBAQA;AAED,wBAAsB,OAAO,CAAC,IAAI,EAAE;IAClC,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,cAAc,CAAC;CACzB,mBAQA;AAED,wBAAsB,eAAe,CAAC,IAAI,EAAE;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,YAAY,CAAC;IACpB,OAAO,EAAE,cAAc,CAAC;CACzB,iBAMA;AAED,wBAAsB,SAAS,CAAC,IAAI,EAAE;IACpC,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,cAAc,CAAC;CACzB,GAAG,OAAO,CAAC,MAAM,CAAC,CAQlB"}
@@ -9,7 +9,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  });
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.ensureAllowance = exports.getName = exports.getSymbol = exports.getDecimals = exports.getAllowance = exports.approve = void 0;
12
+ exports.balanceOf = exports.ensureAllowance = exports.getName = exports.getSymbol = exports.getDecimals = exports.getAllowance = exports.approve = void 0;
13
13
  const bignumber_1 = require("@ethersproject/bignumber");
14
14
  const interface_1 = require("./interface");
15
15
  function approve(args) {
@@ -75,4 +75,15 @@ function ensureAllowance(args) {
75
75
  });
76
76
  }
77
77
  exports.ensureAllowance = ensureAllowance;
78
+ function balanceOf(args) {
79
+ return __awaiter(this, void 0, void 0, function* () {
80
+ const result = yield args.web3Lib.call({
81
+ to: args.contractAddress,
82
+ data: interface_1.erc20Iface.encodeFunctionData("balanceOf", [args.owner])
83
+ });
84
+ const [balance] = interface_1.erc20Iface.decodeFunctionResult("balanceOf", result);
85
+ return String(balance);
86
+ });
87
+ }
88
+ exports.balanceOf = balanceOf;
78
89
  //# sourceMappingURL=handler.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/erc20/handler.ts"],"names":[],"mappings":";;;;;;;;;;;;AACA,wDAAmE;AACnE,2CAAyC;AAEzC,SAAsB,OAAO,CAAC,IAK7B;;QACC,OAAO,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC;YAClC,EAAE,EAAE,IAAI,CAAC,eAAe;YACxB,IAAI,EAAE,sBAAU,CAAC,kBAAkB,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;SAC3E,CAAC,CAAC;IACL,CAAC;CAAA;AAVD,0BAUC;AAED,SAAsB,YAAY,CAAC,IAKlC;;QACC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;YACrC,EAAE,EAAE,IAAI,CAAC,eAAe;YACxB,IAAI,EAAE,sBAAU,CAAC,kBAAkB,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;SAC7E,CAAC,CAAC;QAEH,MAAM,CAAC,SAAS,CAAC,GAAG,sBAAU,CAAC,oBAAoB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QACzE,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC;IAC3B,CAAC;CAAA;AAbD,oCAaC;AAED,SAAsB,WAAW,CAAC,IAGjC;;QACC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;YACrC,EAAE,EAAE,IAAI,CAAC,eAAe;YACxB,IAAI,EAAE,sBAAU,CAAC,kBAAkB,CAAC,UAAU,EAAE,EAAE,CAAC;SACpD,CAAC,CAAC;QAEH,MAAM,CAAC,QAAQ,CAAC,GAAG,sBAAU,CAAC,oBAAoB,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QACvE,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC1B,CAAC;CAAA;AAXD,kCAWC;AAED,SAAsB,SAAS,CAAC,IAG/B;;QACC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;YACrC,EAAE,EAAE,IAAI,CAAC,eAAe;YACxB,IAAI,EAAE,sBAAU,CAAC,kBAAkB,CAAC,QAAQ,EAAE,EAAE,CAAC;SAClD,CAAC,CAAC;QAEH,MAAM,CAAC,OAAO,CAAC,GAAG,sBAAU,CAAC,oBAAoB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACpE,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;IACzB,CAAC;CAAA;AAXD,8BAWC;AAED,SAAsB,OAAO,CAAC,IAG7B;;QACC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;YACrC,EAAE,EAAE,IAAI,CAAC,eAAe;YACxB,IAAI,EAAE,sBAAU,CAAC,kBAAkB,CAAC,MAAM,EAAE,EAAE,CAAC;SAChD,CAAC,CAAC;QAEH,MAAM,CAAC,IAAI,CAAC,GAAG,sBAAU,CAAC,oBAAoB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC/D,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC;CAAA;AAXD,0BAWC;AAED,SAAsB,eAAe,CAAC,IAMrC;;QACC,MAAM,SAAS,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,qBAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YAC5C,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;YACtC,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;SACxB;IACH,CAAC;CAAA;AAZD,0CAYC"}
1
+ {"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/erc20/handler.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,11 @@ export declare function balanceOf(args: {
5
5
  owner: string;
6
6
  web3Lib: Web3LibAdapter;
7
7
  }): Promise<string>;
8
+ export declare function ownerOf(args: {
9
+ contractAddress: string;
10
+ tokenId: BigNumberish;
11
+ web3Lib: Web3LibAdapter;
12
+ }): Promise<string>;
8
13
  export declare function tokenOfOwnerByIndex(args: {
9
14
  contractAddress: string;
10
15
  owner: string;
@@ -1 +1 @@
1
- {"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../../src/erc721/handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAGxD,wBAAsB,SAAS,CAAC,IAAI,EAAE;IACpC,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,cAAc,CAAC;CACzB,GAAG,OAAO,CAAC,MAAM,CAAC,CAQlB;AAED,wBAAsB,mBAAmB,CAAC,IAAI,EAAE;IAC9C,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,YAAY,CAAC;IACpB,OAAO,EAAE,cAAc,CAAC;CACzB,GAAG,OAAO,CAAC,MAAM,CAAC,CAclB"}
1
+ {"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../../src/erc721/handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAGxD,wBAAsB,SAAS,CAAC,IAAI,EAAE;IACpC,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,cAAc,CAAC;CACzB,GAAG,OAAO,CAAC,MAAM,CAAC,CAQlB;AAED,wBAAsB,OAAO,CAAC,IAAI,EAAE;IAClC,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,YAAY,CAAC;IACtB,OAAO,EAAE,cAAc,CAAC;CACzB,GAAG,OAAO,CAAC,MAAM,CAAC,CAQlB;AAED,wBAAsB,mBAAmB,CAAC,IAAI,EAAE;IAC9C,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,YAAY,CAAC;IACpB,OAAO,EAAE,cAAc,CAAC;CACzB,GAAG,OAAO,CAAC,MAAM,CAAC,CAclB"}
@@ -9,7 +9,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  });
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.tokenOfOwnerByIndex = exports.balanceOf = void 0;
12
+ exports.tokenOfOwnerByIndex = exports.ownerOf = exports.balanceOf = void 0;
13
13
  const interface_1 = require("./interface");
14
14
  function balanceOf(args) {
15
15
  return __awaiter(this, void 0, void 0, function* () {
@@ -22,6 +22,17 @@ function balanceOf(args) {
22
22
  });
23
23
  }
24
24
  exports.balanceOf = balanceOf;
25
+ function ownerOf(args) {
26
+ return __awaiter(this, void 0, void 0, function* () {
27
+ const result = yield args.web3Lib.call({
28
+ to: args.contractAddress,
29
+ data: interface_1.erc721Iface.encodeFunctionData("ownerOf", [args.tokenId])
30
+ });
31
+ const [owner] = interface_1.erc721Iface.decodeFunctionResult("ownerOf", result);
32
+ return String(owner);
33
+ });
34
+ }
35
+ exports.ownerOf = ownerOf;
25
36
  function tokenOfOwnerByIndex(args) {
26
37
  return __awaiter(this, void 0, void 0, function* () {
27
38
  const result = yield args.web3Lib.call({
@@ -1 +1 @@
1
- {"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/erc721/handler.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,2CAA0C;AAE1C,SAAsB,SAAS,CAAC,IAI/B;;QACC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;YACrC,EAAE,EAAE,IAAI,CAAC,eAAe;YACxB,IAAI,EAAE,uBAAW,CAAC,kBAAkB,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAChE,CAAC,CAAC;QAEH,MAAM,CAAC,OAAO,CAAC,GAAG,uBAAW,CAAC,oBAAoB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QACxE,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;IACzB,CAAC;CAAA;AAZD,8BAYC;AAED,SAAsB,mBAAmB,CAAC,IAKzC;;QACC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;YACrC,EAAE,EAAE,IAAI,CAAC,eAAe;YACxB,IAAI,EAAE,uBAAW,CAAC,kBAAkB,CAAC,qBAAqB,EAAE;gBAC1D,IAAI,CAAC,KAAK;gBACV,IAAI,CAAC,KAAK;aACX,CAAC;SACH,CAAC,CAAC;QAEH,MAAM,CAAC,OAAO,CAAC,GAAG,uBAAW,CAAC,oBAAoB,CAChD,qBAAqB,EACrB,MAAM,CACP,CAAC;QACF,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;IACzB,CAAC;CAAA;AAnBD,kDAmBC"}
1
+ {"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/erc721/handler.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,2CAA0C;AAE1C,SAAsB,SAAS,CAAC,IAI/B;;QACC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;YACrC,EAAE,EAAE,IAAI,CAAC,eAAe;YACxB,IAAI,EAAE,uBAAW,CAAC,kBAAkB,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAChE,CAAC,CAAC;QAEH,MAAM,CAAC,OAAO,CAAC,GAAG,uBAAW,CAAC,oBAAoB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QACxE,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;IACzB,CAAC;CAAA;AAZD,8BAYC;AAED,SAAsB,OAAO,CAAC,IAI7B;;QACC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;YACrC,EAAE,EAAE,IAAI,CAAC,eAAe;YACxB,IAAI,EAAE,uBAAW,CAAC,kBAAkB,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;SAChE,CAAC,CAAC;QAEH,MAAM,CAAC,KAAK,CAAC,GAAG,uBAAW,CAAC,oBAAoB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QACpE,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;CAAA;AAZD,0BAYC;AAED,SAAsB,mBAAmB,CAAC,IAKzC;;QACC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;YACrC,EAAE,EAAE,IAAI,CAAC,eAAe;YACxB,IAAI,EAAE,uBAAW,CAAC,kBAAkB,CAAC,qBAAqB,EAAE;gBAC1D,IAAI,CAAC,KAAK;gBACV,IAAI,CAAC,KAAK;aACX,CAAC;SACH,CAAC,CAAC;QAEH,MAAM,CAAC,OAAO,CAAC,GAAG,uBAAW,CAAC,oBAAoB,CAChD,qBAAqB,EACrB,MAAM,CACP,CAAC;QACF,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;IACzB,CAAC;CAAA;AAnBD,kDAmBC"}
@@ -128,5 +128,6 @@ export declare class OfferMixin extends BaseCoreSDK {
128
128
  spender: string;
129
129
  owner: string;
130
130
  }>): Promise<string>;
131
+ checkTokenGatedCondition(offerCondition: subgraph.OfferFieldsFragment["condition"], buyerAddress: string): Promise<boolean>;
131
132
  }
132
133
  //# sourceMappingURL=mixin.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mixin.d.ts","sourceRoot":"","sources":["../../../src/offers/mixin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mixin.d.ts","sourceRoot":"","sources":["../../../src/offers/mixin.ts"],"names":[],"mappings":"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"}
@@ -35,10 +35,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
35
35
  exports.OfferMixin = void 0;
36
36
  const base_core_sdk_1 = require("./../mixins/base-core-sdk");
37
37
  const erc20 = __importStar(require("../erc20"));
38
+ const erc721 = __importStar(require("../erc721"));
39
+ const erc1155 = __importStar(require("../erc1155"));
38
40
  const offers = __importStar(require("."));
39
41
  const accounts = __importStar(require("../accounts"));
40
42
  const orchestration = __importStar(require("../orchestration"));
41
43
  const groups = __importStar(require("../groups"));
44
+ const common_1 = require("@bosonprotocol/common");
45
+ const bignumber_1 = require("@ethersproject/bignumber");
42
46
  const logs_1 = require("../utils/logs");
43
47
  const tokenInfoManager_1 = require("../utils/tokenInfoManager");
44
48
  class OfferMixin extends base_core_sdk_1.BaseCoreSDK {
@@ -287,6 +291,48 @@ class OfferMixin extends base_core_sdk_1.BaseCoreSDK {
287
291
  });
288
292
  });
289
293
  }
294
+ checkTokenGatedCondition(offerCondition, buyerAddress) {
295
+ return __awaiter(this, void 0, void 0, function* () {
296
+ const { tokenId, tokenType, threshold, method, tokenAddress } = offerCondition;
297
+ if (tokenType === common_1.TokenType.FungibleToken) {
298
+ const balance = yield erc20.handler.balanceOf({
299
+ contractAddress: tokenAddress,
300
+ owner: buyerAddress,
301
+ web3Lib: this._web3Lib
302
+ });
303
+ return bignumber_1.BigNumber.from(balance).gte(threshold);
304
+ }
305
+ if (tokenType === common_1.TokenType.NonFungibleToken) {
306
+ if (method === common_1.EvaluationMethod.Threshold) {
307
+ const balance = yield erc721.handler.balanceOf({
308
+ contractAddress: tokenAddress,
309
+ owner: buyerAddress,
310
+ web3Lib: this._web3Lib
311
+ });
312
+ return bignumber_1.BigNumber.from(balance).gte(threshold);
313
+ }
314
+ if (method === common_1.EvaluationMethod.SpecificToken) {
315
+ const owner = yield erc721.handler.ownerOf({
316
+ contractAddress: tokenAddress,
317
+ tokenId,
318
+ web3Lib: this._web3Lib
319
+ });
320
+ return owner === buyerAddress;
321
+ }
322
+ throw new Error(`Unsupported method=${method} for this tokenType=${tokenType}`);
323
+ }
324
+ if (tokenType === common_1.TokenType.MultiToken) {
325
+ const balance = yield erc1155.handler.balanceOf({
326
+ contractAddress: tokenAddress,
327
+ tokenId,
328
+ owner: buyerAddress,
329
+ web3Lib: this._web3Lib
330
+ });
331
+ return bignumber_1.BigNumber.from(balance).gte(threshold);
332
+ }
333
+ throw new Error(`Unsupported tokenType=${tokenType}`);
334
+ });
335
+ }
290
336
  }
291
337
  exports.OfferMixin = OfferMixin;
292
338
  //# sourceMappingURL=mixin.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mixin.js","sourceRoot":"","sources":["../../../src/offers/mixin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mixin.js","sourceRoot":"","sources":["../../../src/offers/mixin.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { Web3LibAdapter } from "@bosonprotocol/common";
2
+ import { BigNumberish } from "@ethersproject/bignumber";
3
+ export declare function balanceOf(args: {
4
+ contractAddress: string;
5
+ tokenId: BigNumberish;
6
+ owner: string;
7
+ web3Lib: Web3LibAdapter;
8
+ }): Promise<string>;
9
+ //# sourceMappingURL=handler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../../src/erc1155/handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAGxD,wBAAsB,SAAS,CAAC,IAAI,EAAE;IACpC,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,YAAY,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,cAAc,CAAC;CACzB,GAAG,OAAO,CAAC,MAAM,CAAC,CAWlB"}
@@ -0,0 +1,13 @@
1
+ import { erc1155Iface } from "./interface";
2
+ export async function balanceOf(args) {
3
+ const result = await args.web3Lib.call({
4
+ to: args.contractAddress,
5
+ data: erc1155Iface.encodeFunctionData("balanceOf", [
6
+ args.owner,
7
+ args.tokenId
8
+ ])
9
+ });
10
+ const [balance] = erc1155Iface.decodeFunctionResult("balanceOf", result);
11
+ return String(balance);
12
+ }
13
+ //# sourceMappingURL=handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/erc1155/handler.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,IAK/B;IACC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;QACrC,EAAE,EAAE,IAAI,CAAC,eAAe;QACxB,IAAI,EAAE,YAAY,CAAC,kBAAkB,CAAC,WAAW,EAAE;YACjD,IAAI,CAAC,KAAK;YACV,IAAI,CAAC,OAAO;SACb,CAAC;KACH,CAAC,CAAC;IAEH,MAAM,CAAC,OAAO,CAAC,GAAG,YAAY,CAAC,oBAAoB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IACzE,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;AACzB,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * as iface from "./interface";
2
+ export * as handler from "./handler";
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/erc1155/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,aAAa,CAAC;AACrC,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * as iface from "./interface";
2
+ export * as handler from "./handler";
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/erc1155/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,aAAa,CAAC;AACrC,OAAO,KAAK,OAAO,MAAM,WAAW,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Interface } from "@ethersproject/abi";
2
+ export declare const erc1155Iface: Interface;
3
+ //# sourceMappingURL=interface.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interface.d.ts","sourceRoot":"","sources":["../../../src/erc1155/interface.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,eAAO,MAAM,YAAY,WAA8B,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { abis } from "@bosonprotocol/common";
2
+ import { Interface } from "@ethersproject/abi";
3
+ export const erc1155Iface = new Interface(abis.ERC1155);
4
+ //# sourceMappingURL=interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interface.js","sourceRoot":"","sources":["../../../src/erc1155/interface.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,MAAM,CAAC,MAAM,YAAY,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC"}
@@ -31,4 +31,9 @@ export declare function ensureAllowance(args: {
31
31
  value: BigNumberish;
32
32
  web3Lib: Web3LibAdapter;
33
33
  }): Promise<void>;
34
+ export declare function balanceOf(args: {
35
+ contractAddress: string;
36
+ owner: string;
37
+ web3Lib: Web3LibAdapter;
38
+ }): Promise<string>;
34
39
  //# sourceMappingURL=handler.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../../src/erc20/handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAa,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAGnE,wBAAsB,OAAO,CAAC,IAAI,EAAE;IAClC,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,YAAY,CAAC;IACpB,OAAO,EAAE,cAAc,CAAC;CACzB,gEAKA;AAED,wBAAsB,YAAY,CAAC,IAAI,EAAE;IACvC,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,cAAc,CAAC;CACzB,mBAQA;AAED,wBAAsB,WAAW,CAAC,IAAI,EAAE;IACtC,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,cAAc,CAAC;CACzB,mBAQA;AAED,wBAAsB,SAAS,CAAC,IAAI,EAAE;IACpC,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,cAAc,CAAC;CACzB,mBAQA;AAED,wBAAsB,OAAO,CAAC,IAAI,EAAE;IAClC,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,cAAc,CAAC;CACzB,mBAQA;AAED,wBAAsB,eAAe,CAAC,IAAI,EAAE;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,YAAY,CAAC;IACpB,OAAO,EAAE,cAAc,CAAC;CACzB,iBAMA"}
1
+ {"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../../src/erc20/handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAa,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAGnE,wBAAsB,OAAO,CAAC,IAAI,EAAE;IAClC,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,YAAY,CAAC;IACpB,OAAO,EAAE,cAAc,CAAC;CACzB,gEAKA;AAED,wBAAsB,YAAY,CAAC,IAAI,EAAE;IACvC,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,cAAc,CAAC;CACzB,mBAQA;AAED,wBAAsB,WAAW,CAAC,IAAI,EAAE;IACtC,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,cAAc,CAAC;CACzB,mBAQA;AAED,wBAAsB,SAAS,CAAC,IAAI,EAAE;IACpC,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,cAAc,CAAC;CACzB,mBAQA;AAED,wBAAsB,OAAO,CAAC,IAAI,EAAE;IAClC,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,cAAc,CAAC;CACzB,mBAQA;AAED,wBAAsB,eAAe,CAAC,IAAI,EAAE;IAC1C,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,YAAY,CAAC;IACpB,OAAO,EAAE,cAAc,CAAC;CACzB,iBAMA;AAED,wBAAsB,SAAS,CAAC,IAAI,EAAE;IACpC,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,cAAc,CAAC;CACzB,GAAG,OAAO,CAAC,MAAM,CAAC,CAQlB"}
@@ -45,4 +45,12 @@ export async function ensureAllowance(args) {
45
45
  await approveTx.wait();
46
46
  }
47
47
  }
48
+ export async function balanceOf(args) {
49
+ const result = await args.web3Lib.call({
50
+ to: args.contractAddress,
51
+ data: erc20Iface.encodeFunctionData("balanceOf", [args.owner])
52
+ });
53
+ const [balance] = erc20Iface.decodeFunctionResult("balanceOf", result);
54
+ return String(balance);
55
+ }
48
56
  //# sourceMappingURL=handler.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/erc20/handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAgB,MAAM,0BAA0B,CAAC;AACnE,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,IAK7B;IACC,OAAO,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC;QAClC,EAAE,EAAE,IAAI,CAAC,eAAe;QACxB,IAAI,EAAE,UAAU,CAAC,kBAAkB,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;KAC3E,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,IAKlC;IACC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;QACrC,EAAE,EAAE,IAAI,CAAC,eAAe;QACxB,IAAI,EAAE,UAAU,CAAC,kBAAkB,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;KAC7E,CAAC,CAAC;IAEH,MAAM,CAAC,SAAS,CAAC,GAAG,UAAU,CAAC,oBAAoB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IACzE,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC;AAC3B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,IAGjC;IACC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;QACrC,EAAE,EAAE,IAAI,CAAC,eAAe;QACxB,IAAI,EAAE,UAAU,CAAC,kBAAkB,CAAC,UAAU,EAAE,EAAE,CAAC;KACpD,CAAC,CAAC;IAEH,MAAM,CAAC,QAAQ,CAAC,GAAG,UAAU,CAAC,oBAAoB,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IACvE,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC;AAC1B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,IAG/B;IACC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;QACrC,EAAE,EAAE,IAAI,CAAC,eAAe;QACxB,IAAI,EAAE,UAAU,CAAC,kBAAkB,CAAC,QAAQ,EAAE,EAAE,CAAC;KAClD,CAAC,CAAC;IAEH,MAAM,CAAC,OAAO,CAAC,GAAG,UAAU,CAAC,oBAAoB,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACpE,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;AACzB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,IAG7B;IACC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;QACrC,EAAE,EAAE,IAAI,CAAC,eAAe;QACxB,IAAI,EAAE,UAAU,CAAC,kBAAkB,CAAC,MAAM,EAAE,EAAE,CAAC;KAChD,CAAC,CAAC;IAEH,MAAM,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,oBAAoB,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/D,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC;AACtB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,IAMrC;IACC,MAAM,SAAS,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;IAC3C,IAAI,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;QAC5C,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;QACtC,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;KACxB;AACH,CAAC"}
1
+ {"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/erc20/handler.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,11 @@ export declare function balanceOf(args: {
5
5
  owner: string;
6
6
  web3Lib: Web3LibAdapter;
7
7
  }): Promise<string>;
8
+ export declare function ownerOf(args: {
9
+ contractAddress: string;
10
+ tokenId: BigNumberish;
11
+ web3Lib: Web3LibAdapter;
12
+ }): Promise<string>;
8
13
  export declare function tokenOfOwnerByIndex(args: {
9
14
  contractAddress: string;
10
15
  owner: string;
@@ -1 +1 @@
1
- {"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../../src/erc721/handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAGxD,wBAAsB,SAAS,CAAC,IAAI,EAAE;IACpC,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,cAAc,CAAC;CACzB,GAAG,OAAO,CAAC,MAAM,CAAC,CAQlB;AAED,wBAAsB,mBAAmB,CAAC,IAAI,EAAE;IAC9C,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,YAAY,CAAC;IACpB,OAAO,EAAE,cAAc,CAAC;CACzB,GAAG,OAAO,CAAC,MAAM,CAAC,CAclB"}
1
+ {"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../../src/erc721/handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAGxD,wBAAsB,SAAS,CAAC,IAAI,EAAE;IACpC,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,cAAc,CAAC;CACzB,GAAG,OAAO,CAAC,MAAM,CAAC,CAQlB;AAED,wBAAsB,OAAO,CAAC,IAAI,EAAE;IAClC,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,YAAY,CAAC;IACtB,OAAO,EAAE,cAAc,CAAC;CACzB,GAAG,OAAO,CAAC,MAAM,CAAC,CAQlB;AAED,wBAAsB,mBAAmB,CAAC,IAAI,EAAE;IAC9C,eAAe,EAAE,MAAM,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,YAAY,CAAC;IACpB,OAAO,EAAE,cAAc,CAAC;CACzB,GAAG,OAAO,CAAC,MAAM,CAAC,CAclB"}
@@ -7,6 +7,14 @@ export async function balanceOf(args) {
7
7
  const [balance] = erc721Iface.decodeFunctionResult("balanceOf", result);
8
8
  return String(balance);
9
9
  }
10
+ export async function ownerOf(args) {
11
+ const result = await args.web3Lib.call({
12
+ to: args.contractAddress,
13
+ data: erc721Iface.encodeFunctionData("ownerOf", [args.tokenId])
14
+ });
15
+ const [owner] = erc721Iface.decodeFunctionResult("ownerOf", result);
16
+ return String(owner);
17
+ }
10
18
  export async function tokenOfOwnerByIndex(args) {
11
19
  const result = await args.web3Lib.call({
12
20
  to: args.contractAddress,
@@ -1 +1 @@
1
- {"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/erc721/handler.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,IAI/B;IACC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;QACrC,EAAE,EAAE,IAAI,CAAC,eAAe;QACxB,IAAI,EAAE,WAAW,CAAC,kBAAkB,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAChE,CAAC,CAAC;IAEH,MAAM,CAAC,OAAO,CAAC,GAAG,WAAW,CAAC,oBAAoB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IACxE,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;AACzB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,IAKzC;IACC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;QACrC,EAAE,EAAE,IAAI,CAAC,eAAe;QACxB,IAAI,EAAE,WAAW,CAAC,kBAAkB,CAAC,qBAAqB,EAAE;YAC1D,IAAI,CAAC,KAAK;YACV,IAAI,CAAC,KAAK;SACX,CAAC;KACH,CAAC,CAAC;IAEH,MAAM,CAAC,OAAO,CAAC,GAAG,WAAW,CAAC,oBAAoB,CAChD,qBAAqB,EACrB,MAAM,CACP,CAAC;IACF,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;AACzB,CAAC"}
1
+ {"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/erc721/handler.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,IAI/B;IACC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;QACrC,EAAE,EAAE,IAAI,CAAC,eAAe;QACxB,IAAI,EAAE,WAAW,CAAC,kBAAkB,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KAChE,CAAC,CAAC;IAEH,MAAM,CAAC,OAAO,CAAC,GAAG,WAAW,CAAC,oBAAoB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IACxE,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;AACzB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,IAI7B;IACC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;QACrC,EAAE,EAAE,IAAI,CAAC,eAAe;QACxB,IAAI,EAAE,WAAW,CAAC,kBAAkB,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;KAChE,CAAC,CAAC;IAEH,MAAM,CAAC,KAAK,CAAC,GAAG,WAAW,CAAC,oBAAoB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IACpE,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;AACvB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,IAKzC;IACC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC;QACrC,EAAE,EAAE,IAAI,CAAC,eAAe;QACxB,IAAI,EAAE,WAAW,CAAC,kBAAkB,CAAC,qBAAqB,EAAE;YAC1D,IAAI,CAAC,KAAK;YACV,IAAI,CAAC,KAAK;SACX,CAAC;KACH,CAAC,CAAC;IAEH,MAAM,CAAC,OAAO,CAAC,GAAG,WAAW,CAAC,oBAAoB,CAChD,qBAAqB,EACrB,MAAM,CACP,CAAC;IACF,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;AACzB,CAAC"}
@@ -128,5 +128,6 @@ export declare class OfferMixin extends BaseCoreSDK {
128
128
  spender: string;
129
129
  owner: string;
130
130
  }>): Promise<string>;
131
+ checkTokenGatedCondition(offerCondition: subgraph.OfferFieldsFragment["condition"], buyerAddress: string): Promise<boolean>;
131
132
  }
132
133
  //# sourceMappingURL=mixin.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mixin.d.ts","sourceRoot":"","sources":["../../../src/offers/mixin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mixin.d.ts","sourceRoot":"","sources":["../../../src/offers/mixin.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,13 @@
1
1
  import { BaseCoreSDK } from "./../mixins/base-core-sdk";
2
2
  import * as erc20 from "../erc20";
3
+ import * as erc721 from "../erc721";
4
+ import * as erc1155 from "../erc1155";
3
5
  import * as offers from ".";
4
6
  import * as accounts from "../accounts";
5
7
  import * as orchestration from "../orchestration";
6
8
  import * as groups from "../groups";
9
+ import { TokenType, EvaluationMethod } from "@bosonprotocol/common";
10
+ import { BigNumber } from "@ethersproject/bignumber";
7
11
  import { getValueFromLogs, getValuesFromLogs } from "../utils/logs";
8
12
  import { TokenInfoManager } from "../utils/tokenInfoManager";
9
13
  export class OfferMixin extends BaseCoreSDK {
@@ -228,5 +232,45 @@ export class OfferMixin extends BaseCoreSDK {
228
232
  web3Lib: this._web3Lib
229
233
  });
230
234
  }
235
+ async checkTokenGatedCondition(offerCondition, buyerAddress) {
236
+ const { tokenId, tokenType, threshold, method, tokenAddress } = offerCondition;
237
+ if (tokenType === TokenType.FungibleToken) {
238
+ const balance = await erc20.handler.balanceOf({
239
+ contractAddress: tokenAddress,
240
+ owner: buyerAddress,
241
+ web3Lib: this._web3Lib
242
+ });
243
+ return BigNumber.from(balance).gte(threshold);
244
+ }
245
+ if (tokenType === TokenType.NonFungibleToken) {
246
+ if (method === EvaluationMethod.Threshold) {
247
+ const balance = await erc721.handler.balanceOf({
248
+ contractAddress: tokenAddress,
249
+ owner: buyerAddress,
250
+ web3Lib: this._web3Lib
251
+ });
252
+ return BigNumber.from(balance).gte(threshold);
253
+ }
254
+ if (method === EvaluationMethod.SpecificToken) {
255
+ const owner = await erc721.handler.ownerOf({
256
+ contractAddress: tokenAddress,
257
+ tokenId,
258
+ web3Lib: this._web3Lib
259
+ });
260
+ return owner === buyerAddress;
261
+ }
262
+ throw new Error(`Unsupported method=${method} for this tokenType=${tokenType}`);
263
+ }
264
+ if (tokenType === TokenType.MultiToken) {
265
+ const balance = await erc1155.handler.balanceOf({
266
+ contractAddress: tokenAddress,
267
+ tokenId,
268
+ owner: buyerAddress,
269
+ web3Lib: this._web3Lib
270
+ });
271
+ return BigNumber.from(balance).gte(threshold);
272
+ }
273
+ throw new Error(`Unsupported tokenType=${tokenType}`);
274
+ }
231
275
  }
232
276
  //# sourceMappingURL=mixin.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mixin.js","sourceRoot":"","sources":["../../../src/offers/mixin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,KAAK,KAAK,MAAM,UAAU,CAAC;AAElC,OAAO,KAAK,MAAM,MAAM,GAAG,CAAC;AAC5B,OAAO,KAAK,QAAQ,MAAM,aAAa,CAAC;AACxC,OAAO,KAAK,aAAa,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,MAAM,MAAM,WAAW,CAAC;AAGpC,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACpE,OAAO,EAAc,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAEzE,MAAM,OAAO,UAAW,SAAQ,WAAW;IACzC,gFAAgF;IAChF,gFAAgF;IAChF,gFAAgF;IAEhF;;;;;;OAMG;IACI,KAAK,CAAC,WAAW,CACtB,aAAqC,EACrC,YAEK,EAAE;QAEP,OAAO,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC;YAChC,aAAa;YACb,OAAO,EAAE,IAAI,CAAC,QAAQ;YACtB,eAAe,EAAE,IAAI,CAAC,gBAAgB;YACtC,eAAe,EAAE,IAAI,CAAC,gBAAgB;YACtC,eAAe,EAAE,SAAS,CAAC,eAAe,IAAI,IAAI,CAAC,gBAAgB;SACpE,CAAC,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,gBAAgB,CAC3B,cAAwC,EACxC,YAEK,EAAE;QAEP,OAAO,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC;YACrC,cAAc;YACd,OAAO,EAAE,IAAI,CAAC,QAAQ;YACtB,eAAe,EAAE,IAAI,CAAC,gBAAgB;YACtC,eAAe,EAAE,IAAI,CAAC,gBAAgB;YACtC,eAAe,EAAE,SAAS,CAAC,eAAe,IAAI,IAAI,CAAC,gBAAgB;SACpE,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACI,yBAAyB,CAAC,IAAW;QAC1C,MAAM,OAAO,GAAG,gBAAgB,CAAC;YAC/B,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,sBAAsB;YAC1C,IAAI;YACJ,YAAY,EAAE,SAAS;YACvB,SAAS,EAAE,cAAc;SAC1B,CAAC,CAAC;QAEH,OAAO,CACL,OAAO;YACP,gBAAgB,CAAC;gBACf,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC,8BAA8B;gBACzD,IAAI;gBACJ,YAAY,EAAE,SAAS;gBACvB,SAAS,EAAE,cAAc;aAC1B,CAAC,CACH,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACI,0BAA0B,CAAC,IAAW;QAC3C,OAAO,iBAAiB,CAAC;YACvB,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,sBAAsB;YAC1C,IAAI;YACJ,YAAY,EAAE,SAAS;YACvB,SAAS,EAAE,cAAc;SAC1B,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACI,0BAA0B,CAAC,IAAW;QAC3C,OAAO,iBAAiB,CAAC;YACvB,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,sBAAsB;YAC1C,IAAI;YACJ,YAAY,EAAE,SAAS;YACvB,SAAS,EAAE,cAAc;SAC1B,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACI,0BAA0B,CAAC,IAAW;QAC3C,MAAM,QAAQ,GAAG,gBAAgB,CAAC;YAChC,KAAK,EAAE,QAAQ,CAAC,KAAK,CAAC,wBAAwB;YAC9C,IAAI;YACJ,YAAY,EAAE,UAAU;YACxB,SAAS,EAAE,eAAe;SAC3B,CAAC,CAAC;QAEH,OAAO,CACL,QAAQ;YACR,gBAAgB,CAAC;gBACf,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC,8BAA8B;gBACzD,IAAI;gBACJ,YAAY,EAAE,UAAU;gBACxB,SAAS,EAAE,eAAe;aAC3B,CAAC,CACH,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,SAAS,CACpB,OAAqB,EACrB,YAEK,EAAE;QAEP,OAAO,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC;YAC9B,OAAO;YACP,OAAO,EAAE,IAAI,CAAC,QAAQ;YACtB,WAAW,EAAE,IAAI,CAAC,YAAY;YAC9B,eAAe,EAAE,SAAS,CAAC,eAAe,IAAI,IAAI,CAAC,gBAAgB;SACpE,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;OAOG;IACI,KAAK,CAAC,cAAc,CACzB,QAAwB,EACxB,YAEK,EAAE;QAEP,OAAO,MAAM,CAAC,OAAO,CAAC,cAAc,CAAC;YACnC,QAAQ;YACR,OAAO,EAAE,IAAI,CAAC,QAAQ;YACtB,WAAW,EAAE,IAAI,CAAC,YAAY;YAC9B,eAAe,EAAE,SAAS,CAAC,eAAe,IAAI,IAAI,CAAC,gBAAgB;SACpE,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,YAAY,CACvB,OAAqB,EACrB,SAAqD;QAErD,OAAO,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;IAC7E,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,SAAS,CACpB,SAAiD;QAEjD,OAAO,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;IACjE,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,kCAAkC,CAC7C,OAAqB;QAErB,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,YAAY,CAClD,IAAI,CAAC,YAAY,EACjB,OAAO,CACR,CAAC;QACF,OAAO,MAAM,CAAC,kCAAkC,CAAC,SAAS,CAAC,CAAC;IAC9D,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,0BAA0B,CACrC,QAAgB,EAChB,SAAiC,EACjC,aAA6C;QAE7C,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;QAC3E,OAAO,MAAM,CAAC,0BAA0B,CACtC,QAAQ,EACR,SAAS,EACT,aAAa,EACb,SAAS,CACV,CAAC;IACJ,CAAC;IAED,gFAAgF;IAChF,gFAAgF;IAChF,gFAAgF;IAEhF;;;;;OAKG;IACI,KAAK,CAAC,yBAAyB,CACpC,aAAqB,EACrB,YAGK,EAAE;QAEP,OAAO,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC;YAChC,OAAO,EAAE,IAAI,CAAC,QAAQ;YACtB,eAAe,EAAE,aAAa;YAC9B,OAAO,EAAE,SAAS,CAAC,OAAO,IAAI,IAAI,CAAC,gBAAgB;YACnD,KAAK,EAAE,SAAS,CAAC,KAAK,IAAI,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,gBAAgB,EAAE,CAAC;SACnE,CAAC,CAAC;IACL,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,oBAAoB,CAC/B,aAAqB;QAErB,IAAI,IAAI,CAAC,iBAAiB,KAAK,SAAS,EAAE;YACxC,IAAI,CAAC,iBAAiB,GAAG,IAAI,gBAAgB,CAC3C,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,YAAY,CAClB,CAAC;SACH;QAED,OAAO,IAAI,CAAC,iBAAiB,CAAC,oBAAoB,CAAC,aAAa,CAAC,CAAC;IACpE,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,oBAAoB,CAC/B,aAAqB,EACrB,KAAmB,EACnB,YAEK,EAAE;QAEP,OAAO,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;YAC3B,eAAe,EAAE,aAAa;YAC9B,OAAO,EAAE,SAAS,CAAC,OAAO,IAAI,IAAI,CAAC,gBAAgB;YACnD,KAAK;YACL,OAAO,EAAE,IAAI,CAAC,QAAQ;SACvB,CAAC,CAAC;IACL,CAAC;IAEM,KAAK,CAAC,oBAAoB,CAC/B,aAAqB,EACrB,YAGK,EAAE;QAEP,OAAO,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC;YAChC,eAAe,EAAE,aAAa;YAC9B,KAAK,EAAE,SAAS,CAAC,KAAK,IAAI,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,gBAAgB,EAAE,CAAC;YAClE,OAAO,EAAE,SAAS,CAAC,OAAO,IAAI,IAAI,CAAC,gBAAgB;YACnD,OAAO,EAAE,IAAI,CAAC,QAAQ;SACvB,CAAC,CAAC;IACL,CAAC;CACF"}
1
+ {"version":3,"file":"mixin.js","sourceRoot":"","sources":["../../../src/offers/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.23.0-alpha.19",
3
+ "version": "1.23.0-alpha.20",
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.20.0-alpha.8",
36
+ "@bosonprotocol/common": "^1.20.0-alpha.9",
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": "18275f0c1689c61bd6c5ad551471c8fac3e4e0e2"
57
+ "gitHead": "ea79d2bdff53d454e10d9cfa8cbd523b77352d2a"
58
58
  }
@@ -0,0 +1,21 @@
1
+ import { Web3LibAdapter } from "@bosonprotocol/common";
2
+ import { BigNumberish } from "@ethersproject/bignumber";
3
+ import { erc1155Iface } from "./interface";
4
+
5
+ export async function balanceOf(args: {
6
+ contractAddress: string;
7
+ tokenId: BigNumberish;
8
+ owner: string;
9
+ web3Lib: Web3LibAdapter;
10
+ }): Promise<string> {
11
+ const result = await args.web3Lib.call({
12
+ to: args.contractAddress,
13
+ data: erc1155Iface.encodeFunctionData("balanceOf", [
14
+ args.owner,
15
+ args.tokenId
16
+ ])
17
+ });
18
+
19
+ const [balance] = erc1155Iface.decodeFunctionResult("balanceOf", result);
20
+ return String(balance);
21
+ }
@@ -0,0 +1,2 @@
1
+ export * as iface from "./interface";
2
+ export * as handler from "./handler";
@@ -0,0 +1,4 @@
1
+ import { abis } from "@bosonprotocol/common";
2
+ import { Interface } from "@ethersproject/abi";
3
+
4
+ export const erc1155Iface = new Interface(abis.ERC1155);
@@ -81,3 +81,17 @@ export async function ensureAllowance(args: {
81
81
  await approveTx.wait();
82
82
  }
83
83
  }
84
+
85
+ export async function balanceOf(args: {
86
+ contractAddress: string;
87
+ owner: string;
88
+ web3Lib: Web3LibAdapter;
89
+ }): Promise<string> {
90
+ const result = await args.web3Lib.call({
91
+ to: args.contractAddress,
92
+ data: erc20Iface.encodeFunctionData("balanceOf", [args.owner])
93
+ });
94
+
95
+ const [balance] = erc20Iface.decodeFunctionResult("balanceOf", result);
96
+ return String(balance);
97
+ }
@@ -16,6 +16,20 @@ export async function balanceOf(args: {
16
16
  return String(balance);
17
17
  }
18
18
 
19
+ export async function ownerOf(args: {
20
+ contractAddress: string;
21
+ tokenId: BigNumberish;
22
+ web3Lib: Web3LibAdapter;
23
+ }): Promise<string> {
24
+ const result = await args.web3Lib.call({
25
+ to: args.contractAddress,
26
+ data: erc721Iface.encodeFunctionData("ownerOf", [args.tokenId])
27
+ });
28
+
29
+ const [owner] = erc721Iface.decodeFunctionResult("ownerOf", result);
30
+ return String(owner);
31
+ }
32
+
19
33
  export async function tokenOfOwnerByIndex(args: {
20
34
  contractAddress: string;
21
35
  owner: string;
@@ -1,12 +1,19 @@
1
1
  import { BaseCoreSDK } from "./../mixins/base-core-sdk";
2
2
  import * as erc20 from "../erc20";
3
+ import * as erc721 from "../erc721";
4
+ import * as erc1155 from "../erc1155";
3
5
  import * as subgraph from "../subgraph";
4
6
  import * as offers from ".";
5
7
  import * as accounts from "../accounts";
6
8
  import * as orchestration from "../orchestration";
7
9
  import * as groups from "../groups";
8
- import { TransactionResponse, Log } from "@bosonprotocol/common";
9
- import { BigNumberish } from "@ethersproject/bignumber";
10
+ import {
11
+ TransactionResponse,
12
+ Log,
13
+ TokenType,
14
+ EvaluationMethod
15
+ } from "@bosonprotocol/common";
16
+ import { BigNumber, BigNumberish } from "@ethersproject/bignumber";
10
17
  import { getValueFromLogs, getValuesFromLogs } from "../utils/logs";
11
18
  import { ITokenInfo, TokenInfoManager } from "../utils/tokenInfoManager";
12
19
 
@@ -319,4 +326,51 @@ export class OfferMixin extends BaseCoreSDK {
319
326
  web3Lib: this._web3Lib
320
327
  });
321
328
  }
329
+
330
+ public async checkTokenGatedCondition(
331
+ offerCondition: subgraph.OfferFieldsFragment["condition"],
332
+ buyerAddress: string
333
+ ): Promise<boolean> {
334
+ const { tokenId, tokenType, threshold, method, tokenAddress } =
335
+ offerCondition;
336
+ if (tokenType === TokenType.FungibleToken) {
337
+ const balance: string = await erc20.handler.balanceOf({
338
+ contractAddress: tokenAddress,
339
+ owner: buyerAddress,
340
+ web3Lib: this._web3Lib
341
+ });
342
+ return BigNumber.from(balance).gte(threshold);
343
+ }
344
+ if (tokenType === TokenType.NonFungibleToken) {
345
+ if (method === EvaluationMethod.Threshold) {
346
+ const balance: string = await erc721.handler.balanceOf({
347
+ contractAddress: tokenAddress,
348
+ owner: buyerAddress,
349
+ web3Lib: this._web3Lib
350
+ });
351
+ return BigNumber.from(balance).gte(threshold);
352
+ }
353
+ if (method === EvaluationMethod.SpecificToken) {
354
+ const owner: string = await erc721.handler.ownerOf({
355
+ contractAddress: tokenAddress,
356
+ tokenId,
357
+ web3Lib: this._web3Lib
358
+ });
359
+ return owner === buyerAddress;
360
+ }
361
+ throw new Error(
362
+ `Unsupported method=${method} for this tokenType=${tokenType}`
363
+ );
364
+ }
365
+ if (tokenType === TokenType.MultiToken) {
366
+ const balance: string = await erc1155.handler.balanceOf({
367
+ contractAddress: tokenAddress,
368
+ tokenId,
369
+ owner: buyerAddress,
370
+ web3Lib: this._web3Lib
371
+ });
372
+ return BigNumber.from(balance).gte(threshold);
373
+ }
374
+ throw new Error(`Unsupported tokenType=${tokenType}`);
375
+ }
322
376
  }