@zero-tech/zauction-sdk 0.0.60 → 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- package/lib/actions/acceptBid.js +43 -9
- package/lib/actions/acceptBid.js.map +1 -1
- package/lib/actions/approveDomainTransfer.d.ts +2 -0
- package/lib/actions/approveDomainTransfer.js +14 -0
- package/lib/actions/approveDomainTransfer.js.map +1 -0
- package/lib/actions/approveSpender.d.ts +2 -0
- package/lib/actions/approveSpender.js +13 -0
- package/lib/actions/approveSpender.js.map +1 -0
- package/lib/actions/buyNow.d.ts +3 -0
- package/lib/actions/buyNow.js +54 -0
- package/lib/actions/buyNow.js.map +1 -0
- package/lib/actions/cancelBid.d.ts +4 -0
- package/lib/actions/cancelBid.js +20 -0
- package/lib/actions/cancelBid.js.map +1 -0
- package/lib/actions/getPaymentTokenAllowance.d.ts +2 -0
- package/lib/actions/getPaymentTokenAllowance.js +12 -0
- package/lib/actions/getPaymentTokenAllowance.js.map +1 -0
- package/lib/actions/index.d.ts +5 -0
- package/lib/actions/index.js +5 -0
- package/lib/actions/index.js.map +1 -1
- package/lib/actions/isZAuctionApproved.d.ts +1 -3
- package/lib/actions/isZAuctionApproved.js +2 -6
- package/lib/actions/isZAuctionApproved.js.map +1 -1
- package/lib/actions/placeBid.d.ts +3 -3
- package/lib/actions/placeBid.js +15 -8
- package/lib/actions/placeBid.js.map +1 -1
- package/lib/api/actions/encodeBid.js +1 -0
- package/lib/api/actions/encodeBid.js.map +1 -1
- package/lib/api/actions/helpers.js +2 -0
- package/lib/api/actions/helpers.js.map +1 -1
- package/lib/api/actions/submitBid.js +1 -0
- package/lib/api/actions/submitBid.js.map +1 -1
- package/lib/api/types.d.ts +2 -1
- package/lib/contracts/index.d.ts +2 -2
- package/lib/contracts/index.js +6 -9
- package/lib/contracts/index.js.map +1 -1
- package/lib/contracts/types/factories/IZNSHub__factory.d.ts +22 -0
- package/lib/contracts/types/factories/IZNSHub__factory.js +308 -0
- package/lib/contracts/types/factories/IZNSHub__factory.js.map +1 -0
- package/lib/contracts/types/factories/ZAuction__factory.js +416 -17
- package/lib/contracts/types/factories/ZAuction__factory.js.map +1 -1
- package/lib/contracts/types/index.d.ts +2 -0
- package/lib/contracts/types/index.js +3 -1
- package/lib/contracts/types/index.js.map +1 -1
- package/lib/index.js +135 -98
- package/lib/index.js.map +1 -1
- package/lib/subgraph/actions/listAllSales.d.ts +1 -1
- package/lib/subgraph/actions/listAllSales.js +1 -2
- package/lib/subgraph/actions/listAllSales.js.map +1 -1
- package/lib/subgraph/client.d.ts +1 -1
- package/lib/subgraph/client.js +2 -2
- package/lib/subgraph/client.js.map +1 -1
- package/lib/subgraph/queries.js +1 -2
- package/lib/subgraph/queries.js.map +1 -1
- package/lib/types.d.ts +17 -10
- package/lib/types.js.map +1 -1
- package/package.json +4 -3
package/lib/actions/acceptBid.js
CHANGED
@@ -3,25 +3,59 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.acceptBid = void 0;
|
4
4
|
const ethers_1 = require("ethers");
|
5
5
|
const contracts_1 = require("../contracts");
|
6
|
+
const verifyAccount = async (zAuction, data, signedMessage, bidder) => {
|
7
|
+
const unsignedMessage = await zAuction.toEthSignedMessageHash(ethers_1.ethers.utils.arrayify(data));
|
8
|
+
const recoveredAccount = await zAuction.recover(unsignedMessage, signedMessage);
|
9
|
+
if (recoveredAccount !== bidder) {
|
10
|
+
throw Error("Recovered incorrect account");
|
11
|
+
}
|
12
|
+
};
|
13
|
+
// Accept a bid for a domain, supporting legacy bids
|
6
14
|
const acceptBid = async (bid, signer, config) => {
|
7
|
-
// TODO move to archive or delete a bid when accepted
|
8
15
|
// If not explicitly v2 bid, then assume v1
|
9
16
|
const isVersion2 = bid.version === "2.0";
|
10
17
|
// route to legacy if version 1.0
|
11
18
|
const zAuctionAddress = isVersion2
|
12
19
|
? config.zAuctionAddress
|
13
20
|
: config.zAuctionLegacyAddress;
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
21
|
+
const hub = await (0, contracts_1.getZnsHubContract)(signer, config.znsHubAddress);
|
22
|
+
const domainContract = await hub.getRegistrarForDomain(bid.tokenId);
|
23
|
+
const nftContract = await (0, contracts_1.getERC721Contract)(signer, domainContract);
|
24
|
+
const owner = await nftContract.ownerOf(bid.tokenId);
|
25
|
+
const signerAddress = await signer.getAddress();
|
26
|
+
if (owner !== signerAddress) {
|
27
|
+
throw Error("Cannot accept a bid for a domain that is not yours");
|
28
|
+
}
|
29
|
+
if (owner === bid.bidder) {
|
30
|
+
throw Error("Cannot sell to self");
|
31
|
+
}
|
32
|
+
if (isVersion2) {
|
33
|
+
const zAuction = await (0, contracts_1.getZAuctionContract)(signer, zAuctionAddress);
|
34
|
+
if (bid.bidToken) {
|
35
|
+
// v2.1 bid
|
36
|
+
const data = await zAuction.createBidV2(bid.bidNonce, bid.amount, bid.tokenId, "0", bid.startBlock, bid.expireBlock, bid.bidToken);
|
37
|
+
await verifyAccount(zAuction, data, bid.signedMessage, bid.bidder);
|
38
|
+
const tx = await zAuction.connect(signer).acceptBidV2(bid.signedMessage, bid.bidNonce, bid.bidder, bid.amount, bid.tokenId, "0", // minimum bid as string
|
39
|
+
bid.startBlock, bid.expireBlock, bid.bidToken);
|
40
|
+
return tx;
|
41
|
+
}
|
42
|
+
// v2.0 bid
|
43
|
+
const data = await zAuction.createBid(bid.bidNonce, bid.amount, bid.contract, bid.tokenId, "0", bid.startBlock, bid.expireBlock);
|
44
|
+
await verifyAccount(zAuction, data, bid.signedMessage, bid.bidder);
|
45
|
+
const tx = await zAuction.connect(signer).acceptBid(bid.signedMessage, bid.bidNonce, bid.bidder, bid.amount, bid.tokenId, "0", // minimum bid
|
18
46
|
bid.startBlock, bid.expireBlock);
|
19
47
|
return tx;
|
20
48
|
}
|
21
|
-
|
22
|
-
const
|
23
|
-
|
24
|
-
|
49
|
+
//v1 legacy bid
|
50
|
+
const zAuctionV1 = await (0, contracts_1.getZAuctionV1Contract)(signer, zAuctionAddress);
|
51
|
+
const data = await zAuctionV1.createBid(bid.bidNonce, bid.amount, bid.contract, bid.tokenId, "0", bid.startBlock, bid.expireBlock);
|
52
|
+
await verifyAccount(zAuctionV1, data, bid.signedMessage, bid.bidder);
|
53
|
+
// For any v1 bid this will always return the default registrar
|
54
|
+
// const registrar = await hub.getRegistrarForDomain(bid.tokenId);
|
55
|
+
const tx = await zAuctionV1.connect(signer).acceptBid(bid.signedMessage, bid.bidNonce, bid.bidder, bid.amount, bid.contract, bid.tokenId, "0", // minimum bid as string
|
56
|
+
bid.startBlock, bid.expireBlock);
|
57
|
+
const receipt = await tx.wait(1);
|
58
|
+
console.log(receipt.transactionHash);
|
25
59
|
return tx;
|
26
60
|
};
|
27
61
|
exports.acceptBid = acceptBid;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"acceptBid.js","sourceRoot":"","sources":["../../src/actions/acceptBid.ts"],"names":[],"mappings":";;;AAAA,mCAAgC;AAChC,
|
1
|
+
{"version":3,"file":"acceptBid.js","sourceRoot":"","sources":["../../src/actions/acceptBid.ts"],"names":[],"mappings":"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"}
|
@@ -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,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,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,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"}
|
package/lib/actions/index.d.ts
CHANGED
@@ -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";
|
package/lib/actions/index.js
CHANGED
@@ -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
|
package/lib/actions/index.js.map
CHANGED
@@ -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 {
|
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.
|
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":";;;
|
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
|
-
interface PlaceBidActionParameters {
|
7
|
+
export interface PlaceBidActionParameters {
|
8
8
|
bid: NewBidParameters;
|
9
|
-
|
9
|
+
config: Config;
|
10
10
|
bidder: string;
|
11
11
|
encodeBid: EncodeBidFunction;
|
12
12
|
signMessage: SignMessageFunction;
|
package/lib/actions/placeBid.js
CHANGED
@@ -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;
|
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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"encodeBid.js","sourceRoot":"","sources":["../../../src/api/actions/encodeBid.ts"],"names":[],"mappings":";;;AACA,uCAAwC;AAQjC,MAAM,SAAS,GAAG,KAAK,EAC5B,MAAc,EACd,SAAwB,EACF,EAAE;IACxB,MAAM,GAAG,GAAG,GAAG,MAAM,MAAM,CAAC;IAC5B,MAAM,QAAQ,GAAG,MAAM,IAAA,qBAAW,EAAe,GAAG,EAAE,MAAM,EAAE;QAC5D,SAAS,EAAE,SAAS,CAAC,MAAM;QAC3B,OAAO,EAAE,SAAS,CAAC,OAAO;QAC1B,eAAe,EAAE,SAAS,CAAC,QAAQ;QACnC,UAAU,EAAE,GAAG;QACf,UAAU,EAAE,SAAS,CAAC,UAAU;QAChC,WAAW,EAAE,SAAS,CAAC,WAAW;
|
1
|
+
{"version":3,"file":"encodeBid.js","sourceRoot":"","sources":["../../../src/api/actions/encodeBid.ts"],"names":[],"mappings":";;;AACA,uCAAwC;AAQjC,MAAM,SAAS,GAAG,KAAK,EAC5B,MAAc,EACd,SAAwB,EACF,EAAE;IACxB,MAAM,GAAG,GAAG,GAAG,MAAM,MAAM,CAAC;IAC5B,MAAM,QAAQ,GAAG,MAAM,IAAA,qBAAW,EAAe,GAAG,EAAE,MAAM,EAAE;QAC5D,SAAS,EAAE,SAAS,CAAC,MAAM;QAC3B,OAAO,EAAE,SAAS,CAAC,OAAO;QAC1B,eAAe,EAAE,SAAS,CAAC,QAAQ;QACnC,UAAU,EAAE,GAAG;QACf,UAAU,EAAE,SAAS,CAAC,UAAU;QAChC,WAAW,EAAE,SAAS,CAAC,WAAW;QAClC,QAAQ,EAAE,SAAS,CAAC,QAAQ;KAC7B,CAAC,CAAC;IAEH,MAAM,SAAS,GAAgB;QAC7B,GAAG,EAAE;YACH,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,GAAG,SAAS;SACC;QACf,OAAO,EAAE,QAAQ,CAAC,OAAO;KAC1B,CAAC;IAEF,OAAO,SAAS,CAAC;AACnB,CAAC,CAAC;AAxBW,QAAA,SAAS,aAwBpB"}
|
@@ -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
|
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 +1 @@
|
|
1
|
-
{"version":3,"file":"submitBid.js","sourceRoot":"","sources":["../../../src/api/actions/submitBid.ts"],"names":[],"mappings":";;;AACA,uCAAwC;AAEjC,MAAM,SAAS,GAAG,KAAK,EAC5B,MAAc,EACd,SAAoB,EACL,EAAE;IACjB,MAAM,GAAG,GAAG,GAAG,MAAM,OAAO,CAAC;IAE7B,MAAM,IAAA,qBAAW,EAAC,GAAG,EAAE,MAAM,EAAE;QAC7B,OAAO,EAAE,SAAS,CAAC,GAAG,CAAC,MAAM;QAC7B,QAAQ,EAAE,SAAS,CAAC,GAAG,CAAC,QAAQ;QAChC,OAAO,EAAE,SAAS,CAAC,GAAG,CAAC,OAAO;QAC9B,eAAe,EAAE,SAAS,CAAC,GAAG,CAAC,QAAQ;QACvC,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,MAAM;QAC/B,aAAa,EAAE,SAAS,CAAC,aAAa;QACtC,UAAU,EAAE,GAAG;QACf,UAAU,EAAE,SAAS,CAAC,GAAG,CAAC,UAAU;QACpC,WAAW,EAAE,SAAS,CAAC,GAAG,CAAC,WAAW;
|
1
|
+
{"version":3,"file":"submitBid.js","sourceRoot":"","sources":["../../../src/api/actions/submitBid.ts"],"names":[],"mappings":";;;AACA,uCAAwC;AAEjC,MAAM,SAAS,GAAG,KAAK,EAC5B,MAAc,EACd,SAAoB,EACL,EAAE;IACjB,MAAM,GAAG,GAAG,GAAG,MAAM,OAAO,CAAC;IAE7B,MAAM,IAAA,qBAAW,EAAC,GAAG,EAAE,MAAM,EAAE;QAC7B,OAAO,EAAE,SAAS,CAAC,GAAG,CAAC,MAAM;QAC7B,QAAQ,EAAE,SAAS,CAAC,GAAG,CAAC,QAAQ;QAChC,OAAO,EAAE,SAAS,CAAC,GAAG,CAAC,OAAO;QAC9B,eAAe,EAAE,SAAS,CAAC,GAAG,CAAC,QAAQ;QACvC,SAAS,EAAE,SAAS,CAAC,GAAG,CAAC,MAAM;QAC/B,aAAa,EAAE,SAAS,CAAC,aAAa;QACtC,UAAU,EAAE,GAAG;QACf,UAAU,EAAE,SAAS,CAAC,GAAG,CAAC,UAAU;QACpC,WAAW,EAAE,SAAS,CAAC,GAAG,CAAC,WAAW;QACtC,QAAQ,EAAE,SAAS,CAAC,GAAG,CAAC,QAAQ;KACjC,CAAC,CAAC;AACL,CAAC,CAAC;AAlBW,QAAA,SAAS,aAkBpB"}
|
package/lib/api/types.d.ts
CHANGED
@@ -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;
|
package/lib/contracts/index.d.ts
CHANGED
@@ -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
|
7
|
+
export declare const getZnsHubContract: (web3Provider: ethers.providers.Provider | ethers.Signer, address: string) => Promise<IZNSHub>;
|
package/lib/contracts/index.js
CHANGED
@@ -1,9 +1,8 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.
|
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
|
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
|
28
|
-
const
|
29
|
-
|
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.
|
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,
|
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
|
+
}
|