@zero-tech/zauction-sdk 0.0.60 → 0.0.61

Sign up to get free protection for your applications and to get access to all the features.
Files changed (45) hide show
  1. package/lib/actions/acceptBid.js +25 -7
  2. package/lib/actions/acceptBid.js.map +1 -1
  3. package/lib/actions/approveDomainTransfer.d.ts +2 -0
  4. package/lib/actions/approveDomainTransfer.js +14 -0
  5. package/lib/actions/approveDomainTransfer.js.map +1 -0
  6. package/lib/actions/approveSpender.d.ts +2 -0
  7. package/lib/actions/approveSpender.js +13 -0
  8. package/lib/actions/approveSpender.js.map +1 -0
  9. package/lib/actions/buyNow.d.ts +3 -0
  10. package/lib/actions/buyNow.js +54 -0
  11. package/lib/actions/buyNow.js.map +1 -0
  12. package/lib/actions/cancelBid.d.ts +4 -0
  13. package/lib/actions/cancelBid.js +20 -0
  14. package/lib/actions/cancelBid.js.map +1 -0
  15. package/lib/actions/getPaymentTokenAllowance.d.ts +2 -0
  16. package/lib/actions/getPaymentTokenAllowance.js +12 -0
  17. package/lib/actions/getPaymentTokenAllowance.js.map +1 -0
  18. package/lib/actions/index.d.ts +5 -0
  19. package/lib/actions/index.js +5 -0
  20. package/lib/actions/index.js.map +1 -1
  21. package/lib/actions/isZAuctionApproved.d.ts +1 -3
  22. package/lib/actions/isZAuctionApproved.js +2 -6
  23. package/lib/actions/isZAuctionApproved.js.map +1 -1
  24. package/lib/actions/placeBid.d.ts +2 -2
  25. package/lib/actions/placeBid.js +15 -8
  26. package/lib/actions/placeBid.js.map +1 -1
  27. package/lib/api/actions/helpers.js +2 -0
  28. package/lib/api/actions/helpers.js.map +1 -1
  29. package/lib/api/types.d.ts +2 -1
  30. package/lib/contracts/index.d.ts +2 -2
  31. package/lib/contracts/index.js +6 -9
  32. package/lib/contracts/index.js.map +1 -1
  33. package/lib/contracts/types/factories/IZNSHub__factory.d.ts +22 -0
  34. package/lib/contracts/types/factories/IZNSHub__factory.js +289 -0
  35. package/lib/contracts/types/factories/IZNSHub__factory.js.map +1 -0
  36. package/lib/contracts/types/factories/ZAuction__factory.js +373 -36
  37. package/lib/contracts/types/factories/ZAuction__factory.js.map +1 -1
  38. package/lib/contracts/types/index.d.ts +2 -0
  39. package/lib/contracts/types/index.js +3 -1
  40. package/lib/contracts/types/index.js.map +1 -1
  41. package/lib/index.js +131 -95
  42. package/lib/index.js.map +1 -1
  43. package/lib/types.d.ts +18 -10
  44. package/lib/types.js.map +1 -1
  45. package/package.json +2 -2
@@ -1,27 +1,45 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.acceptBid = void 0;
4
- const ethers_1 = require("ethers");
5
4
  const contracts_1 = require("../contracts");
5
+ // Accept a bid for a domain, supporting legacy bids
6
6
  const acceptBid = async (bid, signer, config) => {
7
- // TODO move to archive or delete a bid when accepted
8
7
  // If not explicitly v2 bid, then assume v1
9
8
  const isVersion2 = bid.version === "2.0";
10
9
  // route to legacy if version 1.0
11
10
  const zAuctionAddress = isVersion2
12
11
  ? config.zAuctionAddress
13
12
  : config.zAuctionLegacyAddress;
13
+ const hub = await (0, contracts_1.getZnsHubContract)(signer, config.znsHubAddress);
14
+ const domainContract = await hub.getRegistrarForDomain(bid.tokenId);
15
+ const nftContract = await (0, contracts_1.getERC721Contract)(signer, domainContract);
16
+ const owner = await nftContract.ownerOf(bid.tokenId);
17
+ const signerAddress = await signer.getAddress();
18
+ if (owner !== signerAddress) {
19
+ throw Error("Cannot accept a bid for a domain that is not yours");
20
+ }
21
+ if (owner === bid.bidder) {
22
+ throw Error("Cannot sell to self");
23
+ }
14
24
  if (!isVersion2) {
15
25
  const zAuction = await (0, contracts_1.getZAuctionV1Contract)(signer, zAuctionAddress);
16
- const tx = await zAuction.connect(signer).acceptBid(bid.signedMessage, bid.bidNonce, bid.bidder, bid.amount, config.tokenContract, // comment out for v2
17
- bid.tokenId, ethers_1.ethers.BigNumber.from("0"), // minimum bid as string
26
+ const hub = await (0, contracts_1.getZnsHubContract)(config.web3Provider, config.znsHubAddress);
27
+ // For any v1 bid this will always return the default registrar
28
+ const registrar = await hub.getRegistrarForDomain(bid.tokenId);
29
+ const tx = await zAuction.connect(signer).acceptBid(bid.signedMessage, bid.bidNonce, bid.bidder, bid.amount, registrar, bid.tokenId, "0", // minimum bid as string
18
30
  bid.startBlock, bid.expireBlock);
19
31
  return tx;
20
32
  }
21
33
  const zAuction = await (0, contracts_1.getZAuctionContract)(signer, zAuctionAddress);
22
- const tx = await zAuction
23
- .connect(signer)
24
- .acceptBid(bid.signedMessage, bid.bidNonce, bid.bidder, bid.amount, bid.tokenId, 0, bid.startBlock, bid.expireBlock);
34
+ if (!bid.bidToken) {
35
+ // If version is 2.0 but there is still no bidToken it's v2 not v2.1
36
+ const tx = await zAuction.connect(signer).acceptBid(bid.signedMessage, bid.bidNonce, bid.bidder, bid.amount, bid.tokenId, "0", // minimum bid as string
37
+ bid.startBlock, bid.expireBlock);
38
+ return tx;
39
+ }
40
+ // Otherwise, it is v2.1
41
+ const tx = await zAuction.connect(signer).acceptBid(bid.signedMessage, bid.bidNonce, bid.bidder, bid.amount, bid.tokenId, "0", // minimum bid as string
42
+ bid.startBlock, bid.expireBlock);
25
43
  return tx;
26
44
  };
27
45
  exports.acceptBid = acceptBid;
@@ -1 +1 @@
1
- {"version":3,"file":"acceptBid.js","sourceRoot":"","sources":["../../src/actions/acceptBid.ts"],"names":[],"mappings":";;;AAAA,mCAAgC;AAChC,4CAA0E;AAGnE,MAAM,SAAS,GAAG,KAAK,EAC5B,GAAQ,EACR,MAAqB,EACrB,MAAc,EACuB,EAAE;IACvC,qDAAqD;IACrD,2CAA2C;IAC3C,MAAM,UAAU,GAAG,GAAG,CAAC,OAAO,KAAK,KAAK,CAAC;IAEzC,iCAAiC;IACjC,MAAM,eAAe,GAAG,UAAU;QAChC,CAAC,CAAC,MAAM,CAAC,eAAe;QACxB,CAAC,CAAC,MAAM,CAAC,qBAAqB,CAAC;IAEjC,IAAI,CAAC,UAAU,EAAE;QACf,MAAM,QAAQ,GAAG,MAAM,IAAA,iCAAqB,EAAC,MAAM,EAAE,eAAe,CAAC,CAAC;QAEtE,MAAM,EAAE,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,SAAS,CACjD,GAAG,CAAC,aAAa,EACjB,GAAG,CAAC,QAAQ,EACZ,GAAG,CAAC,MAAM,EACV,GAAG,CAAC,MAAM,EACV,MAAM,CAAC,aAAa,EAAE,qBAAqB;QAC3C,GAAG,CAAC,OAAO,EACX,eAAM,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,wBAAwB;QACpD,GAAG,CAAC,UAAU,EACd,GAAG,CAAC,WAAW,CAChB,CAAC;QAEF,OAAO,EAAE,CAAC;KACX;IAED,MAAM,QAAQ,GAAG,MAAM,IAAA,+BAAmB,EAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAEpE,MAAM,EAAE,GAAG,MAAM,QAAQ;SACtB,OAAO,CAAC,MAAM,CAAC;SACf,SAAS,CACR,GAAG,CAAC,aAAa,EACjB,GAAG,CAAC,QAAQ,EACZ,GAAG,CAAC,MAAM,EACV,GAAG,CAAC,MAAM,EACV,GAAG,CAAC,OAAO,EACX,CAAC,EACD,GAAG,CAAC,UAAU,EACd,GAAG,CAAC,WAAW,CAChB,CAAC;IAEJ,OAAO,EAAE,CAAC;AACZ,CAAC,CAAC;AAhDW,QAAA,SAAS,aAgDpB"}
1
+ {"version":3,"file":"acceptBid.js","sourceRoot":"","sources":["../../src/actions/acceptBid.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { ethers } from "ethers";
2
+ export declare const approveDomainTransfer: (domainContractAddress: string, zAuctionAddress: string, signer: ethers.Signer) => Promise<ethers.ContractTransaction>;
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.approveDomainTransfer = void 0;
4
+ const contracts_1 = require("../contracts");
5
+ // Approve zAuction to transfer domains on behalf of the signer
6
+ const approveDomainTransfer = async (domainContractAddress, zAuctionAddress, signer) => {
7
+ const nftContract = await (0, contracts_1.getERC721Contract)(signer, domainContractAddress);
8
+ const tx = await nftContract
9
+ .connect(signer)
10
+ .setApprovalForAll(zAuctionAddress, true);
11
+ return tx;
12
+ };
13
+ exports.approveDomainTransfer = approveDomainTransfer;
14
+ //# sourceMappingURL=approveDomainTransfer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"approveDomainTransfer.js","sourceRoot":"","sources":["../../src/actions/approveDomainTransfer.ts"],"names":[],"mappings":";;;AACA,4CAAiD;AAEjD,+DAA+D;AACxD,MAAM,qBAAqB,GAAG,KAAK,EACxC,qBAA6B,EAC7B,eAAuB,EACvB,MAAqB,EACgB,EAAE;IACrC,MAAM,WAAW,GAAG,MAAM,IAAA,6BAAiB,EAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;IAE3E,MAAM,EAAE,GAAG,MAAM,WAAW;SACzB,OAAO,CAAC,MAAM,CAAC;SACf,iBAAiB,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;IAE5C,OAAO,EAAE,CAAC;AACd,CAAC,CAAC;AAZW,QAAA,qBAAqB,yBAYhC"}
@@ -0,0 +1,2 @@
1
+ import { ethers } from "ethers";
2
+ export declare const approveSpender: (paymentTokenAddress: string, zAuctionAddress: string, signer: ethers.Signer) => Promise<ethers.ContractTransaction>;
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.approveSpender = void 0;
4
+ const ethers_1 = require("ethers");
5
+ const contracts_1 = require("../contracts");
6
+ // Approve zAuction to spend ERC20 tokens on behalf of the signer
7
+ const approveSpender = async (paymentTokenAddress, zAuctionAddress, signer) => {
8
+ const paymentToken = await (0, contracts_1.getERC20Contract)(signer, paymentTokenAddress);
9
+ const tx = await paymentToken.connect(signer).approve(zAuctionAddress, ethers_1.ethers.constants.MaxUint256);
10
+ return tx;
11
+ };
12
+ exports.approveSpender = approveSpender;
13
+ //# sourceMappingURL=approveSpender.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"approveSpender.js","sourceRoot":"","sources":["../../src/actions/approveSpender.ts"],"names":[],"mappings":";;;AAAA,mCAAgC;AAChC,4CAAgD;AAGhD,iEAAiE;AAC1D,MAAM,cAAc,GAAG,KAAK,EACjC,mBAA2B,EAC3B,eAAuB,EACvB,MAAqB,EACgB,EAAE;IACvC,MAAM,YAAY,GAAW,MAAM,IAAA,4BAAgB,EAAC,MAAM,EAAE,mBAAmB,CAAC,CAAC;IACjF,MAAM,EAAE,GAAG,MAAM,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,eAAe,EAAE,eAAM,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IAEpG,OAAO,EAAE,CAAC;AACZ,CAAC,CAAC;AATW,QAAA,cAAc,kBASzB"}
@@ -0,0 +1,3 @@
1
+ import { ethers } from "ethers";
2
+ import { BuyNowParams, Config } from "../types";
3
+ export declare const buyNow: (params: BuyNowParams, signer: ethers.Signer, config: Config) => Promise<ethers.ContractTransaction>;
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buyNow = void 0;
4
+ const ethers_1 = require("ethers");
5
+ const contracts_1 = require("../contracts");
6
+ const getPaymentTokenAllowance_1 = require("./getPaymentTokenAllowance");
7
+ const isZAuctionApproved_1 = require("./isZAuctionApproved");
8
+ // Perform an immediate buy, supporting legacy domain listings
9
+ const buyNow = async (params, signer, config) => {
10
+ const hub = await (0, contracts_1.getZnsHubContract)(signer, config.znsHubAddress);
11
+ const tokenContract = await hub.getRegistrarForDomain(params.tokenId);
12
+ const nftContract = await (0, contracts_1.getERC721Contract)(signer, tokenContract);
13
+ const seller = await nftContract.ownerOf(params.tokenId);
14
+ const isApproved = await (0, isZAuctionApproved_1.isZAuctionApprovedNftTransfer)(seller, config.zAuctionAddress, nftContract);
15
+ if (!isApproved) {
16
+ throw Error("Seller did not approve zAuction to transfer NFT");
17
+ }
18
+ const buyer = await signer.getAddress();
19
+ if (seller === buyer) {
20
+ throw Error("Cannot sell a domain to yourself");
21
+ }
22
+ const zAuction = await (0, contracts_1.getZAuctionContract)(signer, config.zAuctionAddress);
23
+ const listing = await zAuction.priceInfo(params.tokenId);
24
+ if (listing.price.eq("0")) {
25
+ throw Error("Domain is not for sale");
26
+ }
27
+ if (!listing.price.eq(params.amount)) {
28
+ throw Error("Incorrect buyNow price given");
29
+ }
30
+ if (!listing.paymentToken ||
31
+ listing.paymentToken === ethers_1.ethers.constants.AddressZero) {
32
+ // If no bidToken it is not a v2.1 listing, use WILD
33
+ const allowance = await (0, getPaymentTokenAllowance_1.getPaymentTokenAllowance)(buyer, config.wildTokenAddress, config.web3Provider, config.zAuctionAddress);
34
+ // Ensure buyer has approved zAuction to transfer tokens on their behalf
35
+ if (allowance.lt(params.amount)) {
36
+ throw Error("zAuction is not approved to transfer this many tokens");
37
+ }
38
+ const tx = await zAuction
39
+ .connect(signer)
40
+ .buyNow(params.amount, params.tokenId);
41
+ return tx;
42
+ }
43
+ const allowance = await (0, getPaymentTokenAllowance_1.getPaymentTokenAllowance)(buyer, listing.paymentToken, config.web3Provider, config.zAuctionAddress);
44
+ // Ensure buyer has approved zAuction to transfer tokens on their behalf
45
+ if (allowance.lt(params.amount)) {
46
+ throw Error("zAuction is not approved to transfer this many tokens");
47
+ }
48
+ const tx = await zAuction
49
+ .connect(signer)
50
+ .buyNowV2(params.amount, params.tokenId);
51
+ return tx;
52
+ };
53
+ exports.buyNow = buyNow;
54
+ //# sourceMappingURL=buyNow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buyNow.js","sourceRoot":"","sources":["../../src/actions/buyNow.ts"],"names":[],"mappings":";;;AAAA,mCAAgC;AAChC,4CAIsB;AAGtB,yEAAsE;AACtE,6DAAqE;AAErE,8DAA8D;AACvD,MAAM,MAAM,GAAG,KAAK,EACzB,MAAoB,EACpB,MAAqB,EACrB,MAAc,EACd,EAAE;IACF,MAAM,GAAG,GAAG,MAAM,IAAA,6BAAiB,EAAC,MAAM,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC;IAClE,MAAM,aAAa,GAAG,MAAM,GAAG,CAAC,qBAAqB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAEtE,MAAM,WAAW,GAAG,MAAM,IAAA,6BAAiB,EAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IAEnE,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAEzD,MAAM,UAAU,GAAG,MAAM,IAAA,kDAA6B,EACpD,MAAM,EACN,MAAM,CAAC,eAAe,EACtB,WAAW,CACZ,CAAC;IAEF,IAAI,CAAC,UAAU,EAAE;QACf,MAAM,KAAK,CAAC,iDAAiD,CAAC,CAAC;KAChE;IAED,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,UAAU,EAAE,CAAC;IAExC,IAAI,MAAM,KAAK,KAAK,EAAE;QACpB,MAAM,KAAK,CAAC,kCAAkC,CAAC,CAAC;KACjD;IAED,MAAM,QAAQ,GAAa,MAAM,IAAA,+BAAmB,EAClD,MAAM,EACN,MAAM,CAAC,eAAe,CACvB,CAAC;IAEF,MAAM,OAAO,GAAkB,MAAM,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAExE,IAAI,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE;QACzB,MAAM,KAAK,CAAC,wBAAwB,CAAC,CAAC;KACvC;IACD,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE;QACpC,MAAM,KAAK,CAAC,8BAA8B,CAAC,CAAC;KAC7C;IAED,IACE,CAAC,OAAO,CAAC,YAAY;QACrB,OAAO,CAAC,YAAY,KAAK,eAAM,CAAC,SAAS,CAAC,WAAW,EACrD;QACA,oDAAoD;QACpD,MAAM,SAAS,GAAG,MAAM,IAAA,mDAAwB,EAC9C,KAAK,EACL,MAAM,CAAC,gBAAgB,EACvB,MAAM,CAAC,YAAY,EACnB,MAAM,CAAC,eAAe,CACvB,CAAC;QAEF,wEAAwE;QACxE,IAAI,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE;YAC/B,MAAM,KAAK,CAAC,uDAAuD,CAAC,CAAC;SACtE;QAED,MAAM,EAAE,GAAG,MAAM,QAAQ;aACtB,OAAO,CAAC,MAAM,CAAC;aACf,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;QAEzC,OAAO,EAAE,CAAC;KACX;IAED,MAAM,SAAS,GAAG,MAAM,IAAA,mDAAwB,EAC9C,KAAK,EACL,OAAO,CAAC,YAAa,EACrB,MAAM,CAAC,YAAY,EACnB,MAAM,CAAC,eAAe,CACvB,CAAC;IAEF,wEAAwE;IACxE,IAAI,SAAS,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE;QAC/B,MAAM,KAAK,CAAC,uDAAuD,CAAC,CAAC;KACtE;IAED,MAAM,EAAE,GAAG,MAAM,QAAQ;SACtB,OAAO,CAAC,MAAM,CAAC;SACf,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC;IAE3C,OAAO,EAAE,CAAC;AACZ,CAAC,CAAC;AAnFW,QAAA,MAAM,UAmFjB"}
@@ -0,0 +1,4 @@
1
+ import { ethers } from "ethers";
2
+ import { ApiClient } from "../api";
3
+ import { Bid } from "../types";
4
+ export declare const cancelBid: (bid: Bid, cancelOnChain: boolean, apiClient: ApiClient, zAuctionAddress: string, signer: ethers.Signer) => Promise<ethers.ContractTransaction | void>;
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.cancelBid = void 0;
4
+ const contracts_1 = require("../contracts");
5
+ // Cancel a bid for a domain, supporting legacy bids
6
+ const cancelBid = async (bid, cancelOnChain, apiClient, zAuctionAddress, signer) => {
7
+ const encodedCancelMessage = await apiClient.encodeCancelBid(bid.signedMessage);
8
+ const signedCancelMessage = await signer.signMessage(encodedCancelMessage);
9
+ // Always cancel the bid through the API
10
+ await apiClient.submitCancelBid(signedCancelMessage, bid.signedMessage);
11
+ // If enabled, also cancel the bid with the zAuction smart contract
12
+ if (cancelOnChain) {
13
+ const zAuction = await (0, contracts_1.getZAuctionContract)(signer, zAuctionAddress);
14
+ const account = await signer.getAddress();
15
+ const tx = await zAuction.connect(signer).cancelBid(account, bid.bidNonce);
16
+ return tx;
17
+ }
18
+ };
19
+ exports.cancelBid = cancelBid;
20
+ //# sourceMappingURL=cancelBid.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cancelBid.js","sourceRoot":"","sources":["../../src/actions/cancelBid.ts"],"names":[],"mappings":";;;AAEA,4CAA6F;AAG7F,oDAAoD;AAC7C,MAAM,SAAS,GAAG,KAAK,EAC5B,GAAQ,EACR,aAAsB,EACtB,SAAoB,EACpB,eAAuB,EACvB,MAAqB,EACuB,EAAE;IAE9C,MAAM,oBAAoB,GAAG,MAAM,SAAS,CAAC,eAAe,CAC1D,GAAG,CAAC,aAAa,CAClB,CAAC;IACF,MAAM,mBAAmB,GAAG,MAAM,MAAM,CAAC,WAAW,CAClD,oBAAoB,CACrB,CAAC;IAEF,wCAAwC;IACxC,MAAM,SAAS,CAAC,eAAe,CAAC,mBAAmB,EAAE,GAAG,CAAC,aAAa,CAAC,CAAC;IAExE,mEAAmE;IACnE,IAAI,aAAa,EAAE;QACjB,MAAM,QAAQ,GAAG,MAAM,IAAA,+BAAmB,EACxC,MAAM,EACN,eAAe,CAChB,CAAC;QAEF,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,UAAU,EAAE,CAAC;QAE1C,MAAM,EAAE,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC3E,OAAO,EAAE,CAAC;KACX;AACH,CAAC,CAAC;AA9BW,QAAA,SAAS,aA8BpB"}
@@ -0,0 +1,2 @@
1
+ import { ethers } from "ethers";
2
+ export declare const getPaymentTokenAllowance: (account: string, paymentTokenAddress: string, provider: ethers.providers.Provider | ethers.Signer, zAuctionAddress: string) => Promise<ethers.BigNumber>;
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getPaymentTokenAllowance = void 0;
4
+ const contracts_1 = require("../contracts");
5
+ // Return the amount the given account has allowed zAuction to spend on its behalf
6
+ const getPaymentTokenAllowance = async (account, paymentTokenAddress, provider, zAuctionAddress) => {
7
+ const paymentToken = await (0, contracts_1.getERC20Contract)(provider, paymentTokenAddress);
8
+ const allowance = await paymentToken.allowance(account, zAuctionAddress);
9
+ return allowance;
10
+ };
11
+ exports.getPaymentTokenAllowance = getPaymentTokenAllowance;
12
+ //# sourceMappingURL=getPaymentTokenAllowance.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getPaymentTokenAllowance.js","sourceRoot":"","sources":["../../src/actions/getPaymentTokenAllowance.ts"],"names":[],"mappings":";;;AACA,4CAAgD;AAGhD,kFAAkF;AAC3E,MAAM,wBAAwB,GAAG,KAAK,EACzC,OAAe,EACf,mBAA2B,EAC3B,QAAmD,EACnD,eAAuB,EACI,EAAE;IAC7B,MAAM,YAAY,GAAW,MAAM,IAAA,4BAAgB,EAAC,QAAQ,EAAE,mBAAmB,CAAC,CAAC;IACnF,MAAM,SAAS,GAAG,MAAM,YAAY,CAAC,SAAS,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;IAEzE,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAVS,QAAA,wBAAwB,4BAUjC"}
@@ -1,3 +1,8 @@
1
1
  export * from "./placeBid";
2
2
  export * from "./isZAuctionApproved";
3
3
  export * from "./acceptBid";
4
+ export * from "./cancelBid";
5
+ export * from "./buyNow";
6
+ export * from "./approveSpender";
7
+ export * from "./approveDomainTransfer";
8
+ export * from "./getPaymentTokenAllowance";
@@ -13,4 +13,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
13
13
  __exportStar(require("./placeBid"), exports);
14
14
  __exportStar(require("./isZAuctionApproved"), exports);
15
15
  __exportStar(require("./acceptBid"), exports);
16
+ __exportStar(require("./cancelBid"), exports);
17
+ __exportStar(require("./buyNow"), exports);
18
+ __exportStar(require("./approveSpender"), exports);
19
+ __exportStar(require("./approveDomainTransfer"), exports);
20
+ __exportStar(require("./getPaymentTokenAllowance"), exports);
16
21
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/actions/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAA2B;AAC3B,uDAAqC;AACrC,8CAA4B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/actions/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,6CAA2B;AAC3B,uDAAqC;AACrC,8CAA4B;AAC5B,8CAA4B;AAC5B,2CAAyB;AACzB,mDAAiC;AACjC,0DAAwC;AACxC,6DAA2C"}
@@ -1,4 +1,2 @@
1
- import { ethers } from "ethers";
2
- import { IERC20, IERC721 } from "../contracts/types";
1
+ import { IERC721 } from "../contracts/types";
3
2
  export declare const isZAuctionApprovedNftTransfer: (account: string, zAuctionAddress: string, nftContract: IERC721) => Promise<boolean>;
4
- export declare const getZAuctionTradeTokenAllowance: (account: string, zAuctionAddress: string, erc20Contract: IERC20) => Promise<ethers.BigNumber>;
@@ -1,14 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getZAuctionTradeTokenAllowance = exports.isZAuctionApprovedNftTransfer = void 0;
3
+ exports.isZAuctionApprovedNftTransfer = void 0;
4
+ // Check whether or not zAuction is approved to transfer NFTs for the user
4
5
  const isZAuctionApprovedNftTransfer = async (account, zAuctionAddress, nftContract) => {
5
6
  const isApproved = await nftContract.isApprovedForAll(account, zAuctionAddress);
6
7
  return isApproved;
7
8
  };
8
9
  exports.isZAuctionApprovedNftTransfer = isZAuctionApprovedNftTransfer;
9
- const getZAuctionTradeTokenAllowance = async (account, zAuctionAddress, erc20Contract) => {
10
- const allowance = await erc20Contract.allowance(account, zAuctionAddress);
11
- return allowance;
12
- };
13
- exports.getZAuctionTradeTokenAllowance = getZAuctionTradeTokenAllowance;
14
10
  //# sourceMappingURL=isZAuctionApproved.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"isZAuctionApproved.js","sourceRoot":"","sources":["../../src/actions/isZAuctionApproved.ts"],"names":[],"mappings":";;;AAGO,MAAM,6BAA6B,GAAG,KAAK,EAChD,OAAe,EACf,eAAuB,EACvB,WAAoB,EACF,EAAE;IACpB,MAAM,UAAU,GAAG,MAAM,WAAW,CAAC,gBAAgB,CACnD,OAAO,EACP,eAAe,CAChB,CAAC;IACF,OAAO,UAAU,CAAC;AACpB,CAAC,CAAC;AAVW,QAAA,6BAA6B,iCAUxC;AAEK,MAAM,8BAA8B,GAAG,KAAK,EACjD,OAAe,EACf,eAAuB,EACvB,aAAqB,EACM,EAAE;IAC7B,MAAM,SAAS,GAAG,MAAM,aAAa,CAAC,SAAS,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;IAE1E,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AARW,QAAA,8BAA8B,kCAQzC"}
1
+ {"version":3,"file":"isZAuctionApproved.js","sourceRoot":"","sources":["../../src/actions/isZAuctionApproved.ts"],"names":[],"mappings":";;;AAEA,0EAA0E;AACnE,MAAM,6BAA6B,GAAG,KAAK,EAChD,OAAe,EACf,eAAuB,EACvB,WAAoB,EACF,EAAE;IACpB,MAAM,UAAU,GAAG,MAAM,WAAW,CAAC,gBAAgB,CACnD,OAAO,EACP,eAAe,CAChB,CAAC;IACF,OAAO,UAAU,CAAC;AACpB,CAAC,CAAC;AAVW,QAAA,6BAA6B,iCAUxC"}
@@ -1,12 +1,12 @@
1
1
  import { ethers } from "ethers";
2
2
  import { BidParameters, SignableBid, SignedBid } from "../api/types";
3
- import { PlaceBidStatusCallback, NewBidParameters } from "../types";
3
+ import { PlaceBidStatusCallback, NewBidParameters, Config } from "../types";
4
4
  declare type SignMessageFunction = (message: string | ethers.utils.Bytes) => Promise<string>;
5
5
  declare type EncodeBidFunction = (bidParams: BidParameters) => Promise<SignableBid>;
6
6
  declare type SubmitBidFunction = (signedBid: SignedBid) => Promise<void>;
7
7
  interface PlaceBidActionParameters {
8
8
  bid: NewBidParameters;
9
- contract: string;
9
+ config: Config;
10
10
  bidder: string;
11
11
  encodeBid: EncodeBidFunction;
12
12
  signMessage: SignMessageFunction;
@@ -2,20 +2,27 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.placeBid = void 0;
4
4
  const ethers_1 = require("ethers");
5
+ const contracts_1 = require("../contracts");
5
6
  const types_1 = require("../types");
6
7
  const placeBid = async (params) => {
7
8
  var _a, _b;
8
9
  params.statusCallback ? params.statusCallback(types_1.PlaceBidStatus.Encoding) : null;
10
+ const hub = await (0, contracts_1.getZnsHubContract)(params.config.web3Provider, params.config.znsHubAddress);
11
+ const registrar = await hub.getRegistrarForDomain(params.bid.tokenId);
12
+ const contract = await (0, contracts_1.getZAuctionContract)(params.config.web3Provider, params.config.zAuctionAddress);
13
+ const paymentToken = await contract.getPaymentTokenForDomain(params.bid.tokenId);
9
14
  let signableBid;
15
+ const bidParams = {
16
+ bidder: params.bidder,
17
+ tokenId: params.bid.tokenId,
18
+ contract: registrar,
19
+ amount: params.bid.bidAmount,
20
+ startBlock: (_a = params.bid.startBlock) !== null && _a !== void 0 ? _a : "0",
21
+ expireBlock: (_b = params.bid.expireBlock) !== null && _b !== void 0 ? _b : "9999999999",
22
+ bidToken: paymentToken
23
+ };
10
24
  try {
11
- signableBid = await params.encodeBid({
12
- bidder: params.bidder,
13
- contract: params.contract,
14
- tokenId: params.bid.tokenId,
15
- amount: params.bid.bidAmount,
16
- startBlock: (_a = params.bid.startBlock) !== null && _a !== void 0 ? _a : "0",
17
- expireBlock: (_b = params.bid.expireBlock) !== null && _b !== void 0 ? _b : "9999999999",
18
- });
25
+ signableBid = await params.encodeBid(bidParams);
19
26
  }
20
27
  catch (e) {
21
28
  throw Error(`Failed to encode bid: ${e}`);
@@ -1 +1 @@
1
- {"version":3,"file":"placeBid.js","sourceRoot":"","sources":["../../src/actions/placeBid.ts"],"names":[],"mappings":";;;AAAA,mCAAgC;AAGhC,oCAIkB;AAmBX,MAAM,QAAQ,GAAG,KAAK,EAC3B,MAAgC,EACjB,EAAE;;IACjB,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,sBAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAE9E,IAAI,WAA+B,CAAC;IAEpC,IAAI;QACF,WAAW,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC;YACnC,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,OAAO;YAC3B,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,SAAS;YAC5B,UAAU,EAAE,MAAA,MAAM,CAAC,GAAG,CAAC,UAAU,mCAAI,GAAG;YACxC,WAAW,EAAE,MAAA,MAAM,CAAC,GAAG,CAAC,WAAW,mCAAI,YAAY;SACnC,CAAC,CAAC;KACrB;IAAC,OAAO,CAAC,EAAE;QACV,MAAM,KAAK,CAAC,yBAAyB,CAAC,EAAE,CAAC,CAAC;KAC3C;IAED,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,sBAAc,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAE7E,IAAI,gBAA+B,CAAC;IACpC,IAAI;QACF,gBAAgB,GAAG,MAAM,MAAM,CAAC,WAAW,CACzC,eAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,CAC3C,CAAC;KACH;IAAC,OAAO,CAAC,EAAE;QACV,MAAM,KAAK,CAAC,+BAA+B,CAAC,EAAE,CAAC,CAAC;KACjD;IAED,MAAM,CAAC,cAAc;QACnB,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,sBAAc,CAAC,UAAU,CAAC;QAClD,CAAC,CAAC,IAAI,CAAC;IAET,IAAI;QACF,MAAM,MAAM,CAAC,SAAS,CAAC;YACrB,GAAG,EAAE,WAAW,CAAC,GAAG;YACpB,aAAa,EAAE,gBAAgB;SACnB,CAAC,CAAC;KACjB;IAAC,OAAO,CAAC,EAAE;QACV,MAAM,KAAK,CAAC,yBAAyB,CAAC,EAAE,CAAC,CAAC;KAC3C;IAED,MAAM,CAAC,cAAc;QACnB,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,sBAAc,CAAC,SAAS,CAAC;QACjD,CAAC,CAAC,IAAI,CAAC;AACX,CAAC,CAAC;AA/CW,QAAA,QAAQ,YA+CnB"}
1
+ {"version":3,"file":"placeBid.js","sourceRoot":"","sources":["../../src/actions/placeBid.ts"],"names":[],"mappings":";;;AAAA,mCAAgC;AAEhC,4CAAsE;AAEtE,oCAKkB;AAmBX,MAAM,QAAQ,GAAG,KAAK,EAC3B,MAAgC,EACjB,EAAE;;IACjB,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,sBAAc,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAE9E,MAAM,GAAG,GAAG,MAAM,IAAA,6BAAiB,EACjC,MAAM,CAAC,MAAM,CAAC,YAAY,EAC1B,MAAM,CAAC,MAAM,CAAC,aAAa,CAC5B,CAAC;IACF,MAAM,SAAS,GAAG,MAAM,GAAG,CAAC,qBAAqB,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAEtE,MAAM,QAAQ,GAAG,MAAM,IAAA,+BAAmB,EAAC,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,MAAM,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;IACtG,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,wBAAwB,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAEjF,IAAI,WAA+B,CAAC;IAEpC,MAAM,SAAS,GAAkB;QAC/B,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,OAAO;QAC3B,QAAQ,EAAE,SAAS;QACnB,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,SAAS;QAC5B,UAAU,EAAE,MAAA,MAAM,CAAC,GAAG,CAAC,UAAU,mCAAI,GAAG;QACxC,WAAW,EAAE,MAAA,MAAM,CAAC,GAAG,CAAC,WAAW,mCAAI,YAAY;QACnD,QAAQ,EAAE,YAAY;KACvB,CAAA;IACD,IAAI;QACF,WAAW,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;KACjD;IAAC,OAAO,CAAC,EAAE;QACV,MAAM,KAAK,CAAC,yBAAyB,CAAC,EAAE,CAAC,CAAC;KAC3C;IAED,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,sBAAc,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAE7E,IAAI,gBAA+B,CAAC;IACpC,IAAI;QACF,gBAAgB,GAAG,MAAM,MAAM,CAAC,WAAW,CACzC,eAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,CAC3C,CAAC;KACH;IAAC,OAAO,CAAC,EAAE;QACV,MAAM,KAAK,CAAC,+BAA+B,CAAC,EAAE,CAAC,CAAC;KACjD;IAED,MAAM,CAAC,cAAc;QACnB,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,sBAAc,CAAC,UAAU,CAAC;QAClD,CAAC,CAAC,IAAI,CAAC;IAET,IAAI;QACF,MAAM,MAAM,CAAC,SAAS,CAAC;YACrB,GAAG,EAAE,WAAW,CAAC,GAAG;YACpB,aAAa,EAAE,gBAAgB;SACnB,CAAC,CAAC;KACjB;IAAC,OAAO,CAAC,EAAE;QACV,MAAM,KAAK,CAAC,yBAAyB,CAAC,EAAE,CAAC,CAAC;KAC3C;IAED,MAAM,CAAC,cAAc;QACnB,CAAC,CAAC,MAAM,CAAC,cAAc,CAAC,sBAAc,CAAC,SAAS,CAAC;QACjD,CAAC,CAAC,IAAI,CAAC;AACX,CAAC,CAAC;AA1DW,QAAA,QAAQ,YA0DnB"}
@@ -32,9 +32,11 @@ const makeApiCall = async (url, method, body, softFail, softFailMessage) => {
32
32
  };
33
33
  exports.makeApiCall = makeApiCall;
34
34
  const convertBidDtoToBid = (bid) => {
35
+ var _a;
35
36
  const localBid = {
36
37
  bidNonce: bid.bidNonce,
37
38
  bidder: bid.account,
39
+ bidToken: (_a = bid.bidToken) !== null && _a !== void 0 ? _a : "",
38
40
  contract: bid.contractAddress,
39
41
  tokenId: bid.tokenId,
40
42
  amount: bid.bidAmount,
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/api/actions/helpers.ts"],"names":[],"mappings":";;;AAAA,6CAAgC;AAChC,mCAAgC;AAIzB,MAAM,WAAW,GAAG,KAAK,EAC9B,GAAW,EACX,MAAsB,EACtB,IAAuC,EACvC,QAAkB,EAClB,eAAwB,EACZ,EAAE;IACd,MAAM,OAAO,GAA2B,EAAE,CAAC;IAE3C,IAAI,IAAI,EAAE;QACR,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;YAC5B,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YAC5B,OAAO,CAAC,cAAc,CAAC,GAAG,kBAAkB,CAAC;YAC7C,OAAO,CAAC,6BAA6B,CAAC,GAAG,GAAG,CAAC;SAC9C;KACF;IAED,MAAM,GAAG,GAAG,MAAM,IAAA,qBAAK,EAAC,GAAG,EAAE;QAC3B,MAAM;QACN,IAAI;QACJ,OAAO;KACR,CAAC,CAAC;IAEH,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE;QACnC,MAAM,KAAK,CAAC,4BAA4B,GAAG,CAAC,MAAM,KAAK,MAAM,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;KAC5E;IAED,IAAI,QAAQ,EAAE;QACZ,MAAM,YAAY,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QACtC,YAAY,CAAC,iBAAiB,CAAC,GAAG,eAAe,CAAC;QAClD,OAAO,YAAiB,CAAC;KAC1B;SAAM;QACL,MAAM,YAAY,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QACtC,OAAO,YAAiB,CAAC;KAC1B;AACH,CAAC,CAAC;AAnCW,QAAA,WAAW,eAmCtB;AAEK,MAAM,kBAAkB,GAAG,CAAC,GAAW,EAAO,EAAE;IACrD,MAAM,QAAQ,GAAQ;QACpB,QAAQ,EAAE,GAAG,CAAC,QAAQ;QACtB,MAAM,EAAE,GAAG,CAAC,OAAO;QACnB,QAAQ,EAAE,GAAG,CAAC,eAAe;QAC7B,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,MAAM,EAAE,GAAG,CAAC,SAAS;QACrB,UAAU,EAAE,GAAG,CAAC,UAAU;QAC1B,WAAW,EAAE,GAAG,CAAC,WAAW;QAC5B,aAAa,EAAE,GAAG,CAAC,aAAa;QAChC,SAAS,EAAE,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE;QAC9B,OAAO,EAAE,GAAG,CAAC,OAAO;KACrB,CAAC;IAEF,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AAfW,QAAA,kBAAkB,sBAe7B;AAEK,MAAM,cAAc,GAAG,CAAC,QAAgB,EAAE,OAAe,EAAU,EAAE;IAC1E,MAAM,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC;IACpC,MAAM,aAAa,GAAG,eAAM,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IACzD,MAAM,KAAK,GAAG,eAAM,CAAC,KAAK,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;IAEpD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AANW,QAAA,cAAc,kBAMzB"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../../src/api/actions/helpers.ts"],"names":[],"mappings":";;;AAAA,6CAAgC;AAChC,mCAAgC;AAIzB,MAAM,WAAW,GAAG,KAAK,EAC9B,GAAW,EACX,MAAsB,EACtB,IAAuC,EACvC,QAAkB,EAClB,eAAwB,EACZ,EAAE;IACd,MAAM,OAAO,GAA2B,EAAE,CAAC;IAE3C,IAAI,IAAI,EAAE;QACR,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;YAC5B,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YAC5B,OAAO,CAAC,cAAc,CAAC,GAAG,kBAAkB,CAAC;YAC7C,OAAO,CAAC,6BAA6B,CAAC,GAAG,GAAG,CAAC;SAC9C;KACF;IAED,MAAM,GAAG,GAAG,MAAM,IAAA,qBAAK,EAAC,GAAG,EAAE;QAC3B,MAAM;QACN,IAAI;QACJ,OAAO;KACR,CAAC,CAAC;IAEH,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE;QACnC,MAAM,KAAK,CAAC,4BAA4B,GAAG,CAAC,MAAM,KAAK,MAAM,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;KAC5E;IAED,IAAI,QAAQ,EAAE;QACZ,MAAM,YAAY,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QACtC,YAAY,CAAC,iBAAiB,CAAC,GAAG,eAAe,CAAC;QAClD,OAAO,YAAiB,CAAC;KAC1B;SAAM;QACL,MAAM,YAAY,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QACtC,OAAO,YAAiB,CAAC;KAC1B;AACH,CAAC,CAAC;AAnCW,QAAA,WAAW,eAmCtB;AAEK,MAAM,kBAAkB,GAAG,CAAC,GAAW,EAAO,EAAE;;IACrD,MAAM,QAAQ,GAAQ;QACpB,QAAQ,EAAE,GAAG,CAAC,QAAQ;QACtB,MAAM,EAAE,GAAG,CAAC,OAAO;QACnB,QAAQ,EAAE,MAAA,GAAG,CAAC,QAAQ,mCAAI,EAAE;QAC5B,QAAQ,EAAE,GAAG,CAAC,eAAe;QAC7B,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,MAAM,EAAE,GAAG,CAAC,SAAS;QACrB,UAAU,EAAE,GAAG,CAAC,UAAU;QAC1B,WAAW,EAAE,GAAG,CAAC,WAAW;QAC5B,aAAa,EAAE,GAAG,CAAC,aAAa;QAChC,SAAS,EAAE,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE;QAC9B,OAAO,EAAE,GAAG,CAAC,OAAO;KACrB,CAAC;IAEF,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AAhBW,QAAA,kBAAkB,sBAgB7B;AAEK,MAAM,cAAc,GAAG,CAAC,QAAgB,EAAE,OAAe,EAAU,EAAE;IAC1E,MAAM,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC;IACpC,MAAM,aAAa,GAAG,eAAM,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IACzD,MAAM,KAAK,GAAG,eAAM,CAAC,KAAK,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;IAEpD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AANW,QAAA,cAAc,kBAMzB"}
@@ -1,5 +1,4 @@
1
1
  export interface BidParamsDto {
2
- nftId: string;
3
2
  account: string;
4
3
  bidNonce: string;
5
4
  bidAmount: string;
@@ -8,6 +7,7 @@ export interface BidParamsDto {
8
7
  startBlock: string;
9
8
  expireBlock: string;
10
9
  tokenId: string;
10
+ bidToken?: string;
11
11
  }
12
12
  export interface BidDto extends BidParamsDto {
13
13
  date: number;
@@ -21,6 +21,7 @@ export interface BidParameters {
21
21
  amount: string;
22
22
  startBlock: string;
23
23
  expireBlock: string;
24
+ bidToken?: string;
24
25
  }
25
26
  export interface BidMessage extends BidParameters {
26
27
  bidNonce: string;
@@ -1,7 +1,7 @@
1
1
  import { ethers } from "ethers";
2
- import { IERC20, IERC721, ZAuction, ZAuctionV1 } from "./types";
2
+ import { IERC20, IERC721, IZNSHub, ZAuction, ZAuctionV1 } from "./types";
3
3
  export declare const getZAuctionContract: (web3Provider: ethers.providers.Provider | ethers.Signer, address: string) => Promise<ZAuction>;
4
4
  export declare const getZAuctionV1Contract: (web3Provider: ethers.providers.Provider | ethers.Signer, address: string) => Promise<ZAuctionV1>;
5
5
  export declare const getERC20Contract: (web3Provider: ethers.providers.Provider | ethers.Signer, address: string) => Promise<IERC20>;
6
6
  export declare const getERC721Contract: (web3Provider: ethers.providers.Provider | ethers.Signer, address: string) => Promise<IERC721>;
7
- export declare const getZAuctionTradeToken: (web3Provider: ethers.providers.Provider | ethers.Signer, zAuctionAddress: string) => Promise<IERC20>;
7
+ export declare const getZnsHubContract: (web3Provider: ethers.providers.Provider | ethers.Signer, address: string) => Promise<IZNSHub>;
@@ -1,9 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getZAuctionTradeToken = exports.getERC721Contract = exports.getERC20Contract = exports.getZAuctionV1Contract = exports.getZAuctionContract = void 0;
3
+ exports.getZnsHubContract = exports.getERC721Contract = exports.getERC20Contract = exports.getZAuctionV1Contract = exports.getZAuctionContract = void 0;
4
4
  const types_1 = require("./types");
5
- const getZAuctionContract = async (web3Provider, address // to change on new deployment
6
- ) => {
5
+ const getZAuctionContract = async (web3Provider, address) => {
7
6
  const contract = types_1.ZAuction__factory.connect(address, web3Provider);
8
7
  return contract;
9
8
  };
@@ -24,11 +23,9 @@ const getERC721Contract = async (web3Provider, address) => {
24
23
  return contract;
25
24
  };
26
25
  exports.getERC721Contract = getERC721Contract;
27
- const getZAuctionTradeToken = async (web3Provider, zAuctionAddress) => {
28
- const zAuction = await (0, exports.getZAuctionContract)(web3Provider, zAuctionAddress);
29
- const tokenAddress = await zAuction.token();
30
- const tokenContract = await (0, exports.getERC20Contract)(web3Provider, tokenAddress);
31
- return tokenContract;
26
+ const getZnsHubContract = async (web3Provider, address) => {
27
+ const contract = types_1.IZNSHub__factory.connect(address, web3Provider);
28
+ return contract;
32
29
  };
33
- exports.getZAuctionTradeToken = getZAuctionTradeToken;
30
+ exports.getZnsHubContract = getZnsHubContract;
34
31
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/contracts/index.ts"],"names":[],"mappings":";;;AACA,mCASiB;AAEV,MAAM,mBAAmB,GAAG,KAAK,EACtC,YAAuD,EACvD,OAAe,CAAC,8BAA8B;EAC3B,EAAE;IACrB,MAAM,QAAQ,GAAG,yBAAiB,CAAC,OAAO,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IAClE,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AANW,QAAA,mBAAmB,uBAM9B;AAEK,MAAM,qBAAqB,GAAG,KAAK,EACxC,YAAuD,EACvD,OAAe,CAAC,8BAA8B;EACzB,EAAE;IACvB,MAAM,QAAQ,GAAG,2BAAmB,CAAC,OAAO,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACpE,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AANW,QAAA,qBAAqB,yBAMhC;AAEK,MAAM,gBAAgB,GAAG,KAAK,EACnC,YAAuD,EACvD,OAAe,EACE,EAAE;IACnB,MAAM,QAAQ,GAAG,uBAAe,CAAC,OAAO,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IAChE,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AANW,QAAA,gBAAgB,oBAM3B;AAEK,MAAM,iBAAiB,GAAG,KAAK,EACpC,YAAuD,EACvD,OAAe,EACG,EAAE;IACpB,MAAM,QAAQ,GAAG,wBAAgB,CAAC,OAAO,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACjE,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AANW,QAAA,iBAAiB,qBAM5B;AAEK,MAAM,qBAAqB,GAAG,KAAK,EACxC,YAAuD,EACvD,eAAuB,EACN,EAAE;IACnB,MAAM,QAAQ,GAAG,MAAM,IAAA,2BAAmB,EAAC,YAAY,EAAE,eAAe,CAAC,CAAC;IAC1E,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,KAAK,EAAE,CAAC;IAE5C,MAAM,aAAa,GAAG,MAAM,IAAA,wBAAgB,EAAC,YAAY,EAAE,YAAY,CAAC,CAAC;IAEzE,OAAO,aAAa,CAAC;AACvB,CAAC,CAAC;AAVW,QAAA,qBAAqB,yBAUhC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/contracts/index.ts"],"names":[],"mappings":";;;AACA,mCAWiB;AAEV,MAAM,mBAAmB,GAAG,KAAK,EACtC,YAAuD,EACvD,OAAe,EACI,EAAE;IACrB,MAAM,QAAQ,GAAG,yBAAiB,CAAC,OAAO,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IAClE,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AANW,QAAA,mBAAmB,uBAM9B;AAEK,MAAM,qBAAqB,GAAG,KAAK,EACxC,YAAuD,EACvD,OAAe,CAAC,8BAA8B;EACzB,EAAE;IACvB,MAAM,QAAQ,GAAG,2BAAmB,CAAC,OAAO,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACpE,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AANW,QAAA,qBAAqB,yBAMhC;AAEK,MAAM,gBAAgB,GAAG,KAAK,EACnC,YAAuD,EACvD,OAAe,EACE,EAAE;IACnB,MAAM,QAAQ,GAAG,uBAAe,CAAC,OAAO,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IAChE,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AANW,QAAA,gBAAgB,oBAM3B;AAEK,MAAM,iBAAiB,GAAG,KAAK,EACpC,YAAuD,EACvD,OAAe,EACG,EAAE;IACpB,MAAM,QAAQ,GAAG,wBAAgB,CAAC,OAAO,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACjE,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AANW,QAAA,iBAAiB,qBAM5B;AAEK,MAAM,iBAAiB,GAAG,KAAK,EACpC,YAAuD,EACvD,OAAe,EACG,EAAE;IACpB,MAAM,QAAQ,GAAG,wBAAgB,CAAC,OAAO,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IACjE,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AANW,QAAA,iBAAiB,qBAM5B"}
@@ -0,0 +1,22 @@
1
+ import { Signer } from "ethers";
2
+ import { Provider } from "@ethersproject/providers";
3
+ import type { IZNSHub, IZNSHubInterface } from "../IZNSHub";
4
+ export declare class IZNSHub__factory {
5
+ static readonly abi: {
6
+ inputs: {
7
+ internalType: string;
8
+ name: string;
9
+ type: string;
10
+ }[];
11
+ name: string;
12
+ outputs: {
13
+ internalType: string;
14
+ name: string;
15
+ type: string;
16
+ }[];
17
+ stateMutability: string;
18
+ type: string;
19
+ }[];
20
+ static createInterface(): IZNSHubInterface;
21
+ static connect(address: string, signerOrProvider: Signer | Provider): IZNSHub;
22
+ }