@hypercerts-org/marketplace-sdk 0.0.8 → 0.0.10
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.
- package/dist/index.cjs.js +63 -3
- package/dist/index.d.ts +2 -0
- package/dist/index.esm.js +63 -3
- package/dist/utils/api.d.ts +767 -0
- package/dist/utils/hypercerts-database-types.d.ts +779 -0
- package/package.json +8 -3
package/dist/index.cjs.js
CHANGED
@@ -3,6 +3,8 @@
|
|
3
3
|
var ethers = require('ethers');
|
4
4
|
var contracts = require('@hypercerts-org/contracts');
|
5
5
|
var merkletreejs = require('merkletreejs');
|
6
|
+
var supabaseJs = require('@supabase/supabase-js');
|
7
|
+
var sdk = require('@hypercerts-org/sdk');
|
6
8
|
var jsSha3 = require('js-sha3');
|
7
9
|
|
8
10
|
var abiIERC721 = [
|
@@ -1072,6 +1074,59 @@ var asDeployedChain$1 = /*#__PURE__*/Object.freeze({
|
|
1072
1074
|
asDeployedChain: asDeployedChain
|
1073
1075
|
});
|
1074
1076
|
|
1077
|
+
const HYPERCERTS_MARKETPLACE_API_URL = "https://staging.hyperboards.org";
|
1078
|
+
const SUPABASE_HYPERCERTS_URL = "https://clagjjfinooizoqdkvqc.supabase.co";
|
1079
|
+
const SUPABASE_HYPERCERTS_ANON_KEY = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6ImNsYWdqamZpbm9vaXpvcWRrdnFjIiwicm9sZSI6ImFub24iLCJpYXQiOjE2NzY5NTAxNDAsImV4cCI6MTk5MjUyNjE0MH0.LOIW3NcYEfF7w893PS3Ne1VrntACE3OPeSRFkspvyqw";
|
1080
|
+
const supabaseHypercerts = supabaseJs.createClient(SUPABASE_HYPERCERTS_URL, SUPABASE_HYPERCERTS_ANON_KEY);
|
1081
|
+
const fetchOrderNonce = async ({ address, chainId }) => {
|
1082
|
+
return fetch(`${HYPERCERTS_MARKETPLACE_API_URL}/marketplace/order-nonce`, {
|
1083
|
+
method: "POST",
|
1084
|
+
headers: {
|
1085
|
+
"Content-Type": "application/json",
|
1086
|
+
},
|
1087
|
+
body: JSON.stringify({
|
1088
|
+
address,
|
1089
|
+
chainId,
|
1090
|
+
}),
|
1091
|
+
})
|
1092
|
+
.then((res) => res.json())
|
1093
|
+
.then((res) => res.data);
|
1094
|
+
};
|
1095
|
+
const createOrder = async ({ order, signer, signature, quoteType, chainId, }) => {
|
1096
|
+
const { globalNonce, ...orderWithoutGlobalNonce } = order;
|
1097
|
+
return fetch(`${HYPERCERTS_MARKETPLACE_API_URL}/marketplace/order`, {
|
1098
|
+
method: "POST",
|
1099
|
+
headers: {
|
1100
|
+
"Content-Type": "application/json",
|
1101
|
+
},
|
1102
|
+
body: JSON.stringify({
|
1103
|
+
...orderWithoutGlobalNonce,
|
1104
|
+
globalNonce: globalNonce.toString(10),
|
1105
|
+
price: order.price.toString(10),
|
1106
|
+
quoteType,
|
1107
|
+
signer,
|
1108
|
+
signature,
|
1109
|
+
chainId,
|
1110
|
+
}),
|
1111
|
+
}).then((res) => res.json());
|
1112
|
+
};
|
1113
|
+
const fetchOrdersByHypercertId = async ({ hypercertId, chainId }) => {
|
1114
|
+
const hypercertsClient = new sdk.HypercertClient({
|
1115
|
+
chain: { id: chainId },
|
1116
|
+
});
|
1117
|
+
const fractions = await hypercertsClient.indexer.fractionsByClaim(hypercertId);
|
1118
|
+
const tokenIds = fractions.claimTokens.map((fraction) => fraction.tokenID);
|
1119
|
+
return supabaseHypercerts.from("marketplace-orders").select("*").containedBy("itemIds", tokenIds).throwOnError();
|
1120
|
+
};
|
1121
|
+
|
1122
|
+
var api = /*#__PURE__*/Object.freeze({
|
1123
|
+
__proto__: null,
|
1124
|
+
createOrder: createOrder,
|
1125
|
+
fetchOrderNonce: fetchOrderNonce,
|
1126
|
+
fetchOrdersByHypercertId: fetchOrdersByHypercertId,
|
1127
|
+
supabaseHypercerts: supabaseHypercerts
|
1128
|
+
});
|
1129
|
+
|
1075
1130
|
const goerliAddresses = {
|
1076
1131
|
EXCHANGE_V2: contracts.deployments[5].HypercertExchange,
|
1077
1132
|
TRANSFER_MANAGER_V2: contracts.deployments[5].TransferManager,
|
@@ -1079,10 +1134,14 @@ const goerliAddresses = {
|
|
1079
1134
|
ORDER_VALIDATOR_V2: contracts.deployments[5].OrderValidatorV2A,
|
1080
1135
|
};
|
1081
1136
|
const sepoliaAddresses = {
|
1082
|
-
EXCHANGE_V2:
|
1083
|
-
|
1137
|
+
// EXCHANGE_V2: deployments[11155111].HypercertExchange as string,
|
1138
|
+
// EXCHANGE_V2: "0x2d7C5512bC3BBE1A12FB9EC1F8CD7Ab0C99E6de5",
|
1139
|
+
EXCHANGE_V2: "0x7d7b6011c7BaB5A850Bd44f7A5B29C3502fd6491",
|
1140
|
+
// TRANSFER_MANAGER_V2: deployments[11155111].TransferManager as string,
|
1141
|
+
TRANSFER_MANAGER_V2: "0x2aDc7d015701e347C75415477dEb0203C36E082e",
|
1084
1142
|
WETH: "0x7b79995e5f793A07Bc00c21412e50Ecae098E7f9",
|
1085
|
-
ORDER_VALIDATOR_V2:
|
1143
|
+
// ORDER_VALIDATOR_V2: deployments[11155111].OrderValidatorV2A as string,
|
1144
|
+
ORDER_VALIDATOR_V2: "0xff9ef4786bf31158ba152638746c2a678d2c4ade",
|
1086
1145
|
};
|
1087
1146
|
/**
|
1088
1147
|
* List of useful contract addresses
|
@@ -5196,6 +5255,7 @@ const utils = {
|
|
5196
5255
|
...signMakerOrders,
|
5197
5256
|
...eip712,
|
5198
5257
|
...asDeployedChain$1,
|
5258
|
+
api,
|
5199
5259
|
};
|
5200
5260
|
|
5201
5261
|
exports.Eip712MakerMerkleTree = Eip712MakerMerkleTree;
|
package/dist/index.d.ts
CHANGED
package/dist/index.esm.js
CHANGED
@@ -1,6 +1,8 @@
|
|
1
1
|
import { Contract, ZeroAddress, AbiCoder, TypedDataEncoder, keccak256, solidityPackedKeccak256, ethers, ZeroHash, MaxUint256 } from 'ethers';
|
2
2
|
import { HypercertExchangeAbi, TransferManagerAbi, OrderValidatorV2A as OrderValidatorV2A$1, deployments } from '@hypercerts-org/contracts';
|
3
3
|
import { MerkleTree } from 'merkletreejs';
|
4
|
+
import { createClient } from '@supabase/supabase-js';
|
5
|
+
import { HypercertClient } from '@hypercerts-org/sdk';
|
4
6
|
import { keccak256 as keccak256$1 } from 'js-sha3';
|
5
7
|
|
6
8
|
var abiIERC721 = [
|
@@ -1070,6 +1072,59 @@ var asDeployedChain$1 = /*#__PURE__*/Object.freeze({
|
|
1070
1072
|
asDeployedChain: asDeployedChain
|
1071
1073
|
});
|
1072
1074
|
|
1075
|
+
const HYPERCERTS_MARKETPLACE_API_URL = "https://staging.hyperboards.org";
|
1076
|
+
const SUPABASE_HYPERCERTS_URL = "https://clagjjfinooizoqdkvqc.supabase.co";
|
1077
|
+
const SUPABASE_HYPERCERTS_ANON_KEY = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6ImNsYWdqamZpbm9vaXpvcWRrdnFjIiwicm9sZSI6ImFub24iLCJpYXQiOjE2NzY5NTAxNDAsImV4cCI6MTk5MjUyNjE0MH0.LOIW3NcYEfF7w893PS3Ne1VrntACE3OPeSRFkspvyqw";
|
1078
|
+
const supabaseHypercerts = createClient(SUPABASE_HYPERCERTS_URL, SUPABASE_HYPERCERTS_ANON_KEY);
|
1079
|
+
const fetchOrderNonce = async ({ address, chainId }) => {
|
1080
|
+
return fetch(`${HYPERCERTS_MARKETPLACE_API_URL}/marketplace/order-nonce`, {
|
1081
|
+
method: "POST",
|
1082
|
+
headers: {
|
1083
|
+
"Content-Type": "application/json",
|
1084
|
+
},
|
1085
|
+
body: JSON.stringify({
|
1086
|
+
address,
|
1087
|
+
chainId,
|
1088
|
+
}),
|
1089
|
+
})
|
1090
|
+
.then((res) => res.json())
|
1091
|
+
.then((res) => res.data);
|
1092
|
+
};
|
1093
|
+
const createOrder = async ({ order, signer, signature, quoteType, chainId, }) => {
|
1094
|
+
const { globalNonce, ...orderWithoutGlobalNonce } = order;
|
1095
|
+
return fetch(`${HYPERCERTS_MARKETPLACE_API_URL}/marketplace/order`, {
|
1096
|
+
method: "POST",
|
1097
|
+
headers: {
|
1098
|
+
"Content-Type": "application/json",
|
1099
|
+
},
|
1100
|
+
body: JSON.stringify({
|
1101
|
+
...orderWithoutGlobalNonce,
|
1102
|
+
globalNonce: globalNonce.toString(10),
|
1103
|
+
price: order.price.toString(10),
|
1104
|
+
quoteType,
|
1105
|
+
signer,
|
1106
|
+
signature,
|
1107
|
+
chainId,
|
1108
|
+
}),
|
1109
|
+
}).then((res) => res.json());
|
1110
|
+
};
|
1111
|
+
const fetchOrdersByHypercertId = async ({ hypercertId, chainId }) => {
|
1112
|
+
const hypercertsClient = new HypercertClient({
|
1113
|
+
chain: { id: chainId },
|
1114
|
+
});
|
1115
|
+
const fractions = await hypercertsClient.indexer.fractionsByClaim(hypercertId);
|
1116
|
+
const tokenIds = fractions.claimTokens.map((fraction) => fraction.tokenID);
|
1117
|
+
return supabaseHypercerts.from("marketplace-orders").select("*").containedBy("itemIds", tokenIds).throwOnError();
|
1118
|
+
};
|
1119
|
+
|
1120
|
+
var api = /*#__PURE__*/Object.freeze({
|
1121
|
+
__proto__: null,
|
1122
|
+
createOrder: createOrder,
|
1123
|
+
fetchOrderNonce: fetchOrderNonce,
|
1124
|
+
fetchOrdersByHypercertId: fetchOrdersByHypercertId,
|
1125
|
+
supabaseHypercerts: supabaseHypercerts
|
1126
|
+
});
|
1127
|
+
|
1073
1128
|
const goerliAddresses = {
|
1074
1129
|
EXCHANGE_V2: deployments[5].HypercertExchange,
|
1075
1130
|
TRANSFER_MANAGER_V2: deployments[5].TransferManager,
|
@@ -1077,10 +1132,14 @@ const goerliAddresses = {
|
|
1077
1132
|
ORDER_VALIDATOR_V2: deployments[5].OrderValidatorV2A,
|
1078
1133
|
};
|
1079
1134
|
const sepoliaAddresses = {
|
1080
|
-
EXCHANGE_V2: deployments[11155111].HypercertExchange,
|
1081
|
-
|
1135
|
+
// EXCHANGE_V2: deployments[11155111].HypercertExchange as string,
|
1136
|
+
// EXCHANGE_V2: "0x2d7C5512bC3BBE1A12FB9EC1F8CD7Ab0C99E6de5",
|
1137
|
+
EXCHANGE_V2: "0x7d7b6011c7BaB5A850Bd44f7A5B29C3502fd6491",
|
1138
|
+
// TRANSFER_MANAGER_V2: deployments[11155111].TransferManager as string,
|
1139
|
+
TRANSFER_MANAGER_V2: "0x2aDc7d015701e347C75415477dEb0203C36E082e",
|
1082
1140
|
WETH: "0x7b79995e5f793A07Bc00c21412e50Ecae098E7f9",
|
1083
|
-
ORDER_VALIDATOR_V2: deployments[11155111].OrderValidatorV2A,
|
1141
|
+
// ORDER_VALIDATOR_V2: deployments[11155111].OrderValidatorV2A as string,
|
1142
|
+
ORDER_VALIDATOR_V2: "0xff9ef4786bf31158ba152638746c2a678d2c4ade",
|
1084
1143
|
};
|
1085
1144
|
/**
|
1086
1145
|
* List of useful contract addresses
|
@@ -5194,6 +5253,7 @@ const utils = {
|
|
5194
5253
|
...signMakerOrders,
|
5195
5254
|
...eip712,
|
5196
5255
|
...asDeployedChain$1,
|
5256
|
+
api,
|
5197
5257
|
};
|
5198
5258
|
|
5199
5259
|
export { ChainId, CollectionType, Eip712MakerMerkleTree, Eip712MerkleTree, ErrorItemId, ErrorMerkleTreeDepth, ErrorQuoteType, ErrorSigner, ErrorStrategyType, ErrorTimestamp, IERC1155 as IERC1155Abi, abiIERC20 as IERC20Abi, abiIERC721 as IERC721Abi, LooksRare, LooksRareProtocol as LooksRareProtocolAbi, MAX_ORDERS_PER_TREE, MerkleTreeNodePosition, OrderValidatorCode, OrderValidatorV2A as OrderValidatorV2AAbi, QuoteType, StrategyType, TransferManager as TransferManagerAbi, WETH as WETHAbi, addressesByNetwork, chainInfo, defaultMerkleTree, utils };
|