@cross-nft-marketplace/auction-house-nft-hooks
Version:
Generic react hooks for fetching cross-nft-marketplace auctions, nfts, and data on arbitary 721s. Powers nft-components.
96 lines (95 loc) • 5.01 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.transformNFTIndexerV2Response = exports.transformNFTIndexerResponse = void 0;
const addresses_1 = require("../constants/addresses");
const TransformFetchResults_1 = require("./TransformFetchResults");
function transformNFTIndexerResponse(data, auction, currency) {
var _a, _b, _c, _d, _e;
return {
nft: {
tokenId: data.tokenId.toString(),
contract: {
address: data.address,
name: (_b = (_a = data.tokenContract) === null || _a === void 0 ? void 0 : _a.name) === null || _b === void 0 ? void 0 : _b.toString(),
symbol: (_d = (_c = data.tokenContract) === null || _c === void 0 ? void 0 : _c.symbol) === null || _d === void 0 ? void 0 : _d.toString(),
},
owner: data.owner,
creator: data.minter || undefined,
metadataURI: data.tokenURI || '',
},
zoraNFT: data.media
? {
// TODO(iain): make properly optional
createdAtTimestamp: ((_e = data.mintTransferEvent) === null || _e === void 0 ? void 0 : _e.blockTimestamp) || 0,
// TODO(iain): make properly optional
contentURI: data.media.contentURI || '',
contentHash: data.media.contentHash,
// TODO(iain): make properly optional
metadataURI: data.media.metadataURI || '',
metadataHash: data.media.metadataHash,
ownerBidShare: undefined,
ownerBidSharePercentage: 0,
creatorBidShare: undefined,
creatorBidSharePercentage: 0,
}
: undefined,
zoraIndexerResponse: data,
pricing: TransformFetchResults_1.addAuctionInformation({
reserve: TransformFetchResults_1.auctionDataToPricing(auction),
}, currency),
};
}
exports.transformNFTIndexerResponse = transformNFTIndexerResponse;
function transformNFTIndexerV2Response(data, auction, currency) {
var _a, _b, _c, _d, _e, _f, _g, _h;
return {
nft: {
tokenId: data.token.tokenId,
contract: {
address: data.token.collectionAddress,
name: ((_a = data.token.tokenContract) === null || _a === void 0 ? void 0 : _a.name) || '',
symbol: ((_b = data.token.tokenContract) === null || _b === void 0 ? void 0 : _b.symbol) || '',
},
owner: data.token.owner || '',
creator: (_c = data.token.mintInfo) === null || _c === void 0 ? void 0 : _c.toAddress,
metadataURI: data.token.tokenUrl || '',
},
zoraIndexerResponse: {
metadata: {
json: data.token.metadata
},
mintTransferEvent: data.token.mintInfo != null ? {
transactionHash: data.token.mintInfo.mintContext.transactionHash,
blockNumber: data.token.mintInfo.mintContext.blockNumber,
blockTimestamp: new Date(data.token.mintInfo.mintContext.blockTimestamp).toISOString().replace('Z', ''), //convert to v1 type without offset and Z
} : undefined,
auctions: [],
minter: (_d = data.token.mintInfo) === null || _d === void 0 ? void 0 : _d.originatorAddress,
owner: data.token.owner || '',
id: data.token.collectionAddress + "-" + data.token.tokenId,
tokenId: data.token.tokenId,
tokenContract: data.token.tokenContract != null ? {
address: data.token.collectionAddress,
name: ((_e = data.token.tokenContract) === null || _e === void 0 ? void 0 : _e.name) || '',
symbol: ((_f = data.token.tokenContract) === null || _f === void 0 ? void 0 : _f.symbol) || '',
} : undefined,
address: data.token.collectionAddress,
},
zoraNFT: ((_g = data.token.tokenContract) === null || _g === void 0 ? void 0 : _g.chain) != undefined &&
data.token.collectionAddress.toLowerCase() == addresses_1.ZORA_MEDIA_CONTRACT_BY_NETWORK[data.token.tokenContract.chain.toString()].toLowerCase() ? {
createdAtTimestamp: 0,
contentURI: ((_h = data.token.content) === null || _h === void 0 ? void 0 : _h.url) || '',
contentHash: undefined,
metadataURI: data.token.tokenUrl || '',
metadataHash: undefined,
ownerBidShare: undefined,
ownerBidSharePercentage: 0,
creatorBidShare: undefined,
creatorBidSharePercentage: 0,
} : undefined,
pricing: TransformFetchResults_1.addAuctionInformation({
reserve: TransformFetchResults_1.auctionDataToPricing(auction),
}, currency),
};
}
exports.transformNFTIndexerV2Response = transformNFTIndexerV2Response;