@clober/v2-sdk 0.0.5-0.a.dev → 0.0.5-6.dev
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/cjs/apis/chart-logs.js +2 -2
- package/dist/cjs/apis/chart-logs.js.map +1 -1
- package/dist/cjs/apis/market.js +11 -12
- package/dist/cjs/apis/market.js.map +1 -1
- package/dist/cjs/apis/open-order.js +12 -12
- package/dist/cjs/apis/open-order.js.map +1 -1
- package/dist/cjs/approval.js +18 -11
- package/dist/cjs/approval.js.map +1 -1
- package/dist/cjs/call.js +72 -52
- package/dist/cjs/call.js.map +1 -1
- package/dist/cjs/constants/addresses.js +0 -5
- package/dist/cjs/constants/addresses.js.map +1 -1
- package/dist/cjs/constants/chain.js +0 -2
- package/dist/cjs/constants/chain.js.map +1 -1
- package/dist/cjs/constants/currency.js +3 -4
- package/dist/cjs/constants/currency.js.map +1 -1
- package/dist/cjs/constants/fee.js +0 -2
- package/dist/cjs/constants/fee.js.map +1 -1
- package/dist/cjs/constants/price.js +2 -1
- package/dist/cjs/constants/price.js.map +1 -1
- package/dist/cjs/constants/subgraph.js +4 -23
- package/dist/cjs/constants/subgraph.js.map +1 -1
- package/dist/cjs/constants/test-chain.js +2 -2
- package/dist/cjs/constants/test-chain.js.map +1 -1
- package/dist/cjs/constants/tick.js +6 -0
- package/dist/cjs/constants/tick.js.map +1 -0
- package/dist/cjs/model/book.js +7 -7
- package/dist/cjs/model/book.js.map +1 -1
- package/dist/cjs/model/market.js +7 -7
- package/dist/cjs/model/market.js.map +1 -1
- package/dist/cjs/signature.js +10 -6
- package/dist/cjs/signature.js.map +1 -1
- package/dist/cjs/utils/allowance.js +2 -3
- package/dist/cjs/utils/allowance.js.map +1 -1
- package/dist/cjs/utils/approval.js +2 -3
- package/dist/cjs/utils/approval.js.map +1 -1
- package/dist/cjs/utils/bigint.js +5 -1
- package/dist/cjs/utils/bigint.js.map +1 -1
- package/dist/cjs/utils/build-transaction.js +3 -4
- package/dist/cjs/utils/build-transaction.js.map +1 -1
- package/dist/cjs/utils/currency.js +8 -9
- package/dist/cjs/utils/currency.js.map +1 -1
- package/dist/cjs/utils/open.js +14 -3
- package/dist/cjs/utils/open.js.map +1 -1
- package/dist/cjs/utils/order.js +5 -7
- package/dist/cjs/utils/order.js.map +1 -1
- package/dist/cjs/utils/prices.js +15 -10
- package/dist/cjs/utils/prices.js.map +1 -1
- package/dist/cjs/utils/tick.js +12 -1
- package/dist/cjs/utils/tick.js.map +1 -1
- package/dist/cjs/utils/unit-size.js +8 -9
- package/dist/cjs/utils/unit-size.js.map +1 -1
- package/dist/cjs/utils.js +2 -1
- package/dist/cjs/utils.js.map +1 -1
- package/dist/cjs/view.js +101 -42
- package/dist/cjs/view.js.map +1 -1
- package/dist/esm/apis/chart-logs.js +3 -3
- package/dist/esm/apis/chart-logs.js.map +1 -1
- package/dist/esm/apis/market.js +12 -13
- package/dist/esm/apis/market.js.map +1 -1
- package/dist/esm/apis/open-order.js +14 -14
- package/dist/esm/apis/open-order.js.map +1 -1
- package/dist/esm/approval.js +17 -12
- package/dist/esm/approval.js.map +1 -1
- package/dist/esm/call.js +67 -54
- package/dist/esm/call.js.map +1 -1
- package/dist/esm/constants/addresses.js +0 -5
- package/dist/esm/constants/addresses.js.map +1 -1
- package/dist/esm/constants/chain.js +1 -3
- package/dist/esm/constants/chain.js.map +1 -1
- package/dist/esm/constants/currency.js +5 -4
- package/dist/esm/constants/currency.js.map +1 -1
- package/dist/esm/constants/fee.js +0 -2
- package/dist/esm/constants/fee.js.map +1 -1
- package/dist/esm/constants/price.js +1 -0
- package/dist/esm/constants/price.js.map +1 -1
- package/dist/esm/constants/subgraph.js +3 -22
- package/dist/esm/constants/subgraph.js.map +1 -1
- package/dist/esm/constants/test-chain.js +2 -2
- package/dist/esm/constants/test-chain.js.map +1 -1
- package/dist/esm/constants/tick.js +3 -0
- package/dist/esm/constants/tick.js.map +1 -0
- package/dist/esm/model/book.js +7 -7
- package/dist/esm/model/book.js.map +1 -1
- package/dist/esm/model/market.js +8 -8
- package/dist/esm/model/market.js.map +1 -1
- package/dist/esm/signature.js +10 -7
- package/dist/esm/signature.js.map +1 -1
- package/dist/esm/utils/allowance.js +2 -3
- package/dist/esm/utils/allowance.js.map +1 -1
- package/dist/esm/utils/approval.js +2 -3
- package/dist/esm/utils/approval.js.map +1 -1
- package/dist/esm/utils/bigint.js +2 -0
- package/dist/esm/utils/bigint.js.map +1 -1
- package/dist/esm/utils/build-transaction.js +3 -4
- package/dist/esm/utils/build-transaction.js.map +1 -1
- package/dist/esm/utils/currency.js +8 -9
- package/dist/esm/utils/currency.js.map +1 -1
- package/dist/esm/utils/open.js +14 -3
- package/dist/esm/utils/open.js.map +1 -1
- package/dist/esm/utils/order.js +6 -8
- package/dist/esm/utils/order.js.map +1 -1
- package/dist/esm/utils/prices.js +17 -12
- package/dist/esm/utils/prices.js.map +1 -1
- package/dist/esm/utils/tick.js +11 -1
- package/dist/esm/utils/tick.js.map +1 -1
- package/dist/esm/utils/unit-size.js +8 -9
- package/dist/esm/utils/unit-size.js.map +1 -1
- package/dist/esm/utils.js +1 -1
- package/dist/esm/utils.js.map +1 -1
- package/dist/esm/view.js +96 -44
- package/dist/esm/view.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/types/apis/chart-logs.d.ts.map +1 -1
- package/dist/types/apis/market.d.ts +2 -1
- package/dist/types/apis/market.d.ts.map +1 -1
- package/dist/types/apis/open-order.d.ts +4 -3
- package/dist/types/apis/open-order.d.ts.map +1 -1
- package/dist/types/approval.d.ts +2 -2
- package/dist/types/approval.d.ts.map +1 -1
- package/dist/types/call.d.ts +7 -7
- package/dist/types/call.d.ts.map +1 -1
- package/dist/types/constants/addresses.d.ts.map +1 -1
- package/dist/types/constants/chain.d.ts +1 -2
- package/dist/types/constants/chain.d.ts.map +1 -1
- package/dist/types/constants/currency.d.ts.map +1 -1
- package/dist/types/constants/fee.d.ts.map +1 -1
- package/dist/types/constants/price.d.ts +1 -0
- package/dist/types/constants/price.d.ts.map +1 -1
- package/dist/types/constants/subgraph.d.ts +2 -7
- package/dist/types/constants/subgraph.d.ts.map +1 -1
- package/dist/types/constants/tick.d.ts +3 -0
- package/dist/types/constants/tick.d.ts.map +1 -0
- package/dist/types/model/book.d.ts +4 -4
- package/dist/types/model/book.d.ts.map +1 -1
- package/dist/types/model/market.d.ts +4 -4
- package/dist/types/model/market.d.ts.map +1 -1
- package/dist/types/signature.d.ts +1 -1
- package/dist/types/signature.d.ts.map +1 -1
- package/dist/types/utils/allowance.d.ts +2 -2
- package/dist/types/utils/allowance.d.ts.map +1 -1
- package/dist/types/utils/approval.d.ts +2 -1
- package/dist/types/utils/approval.d.ts.map +1 -1
- package/dist/types/utils/bigint.d.ts +2 -0
- package/dist/types/utils/bigint.d.ts.map +1 -1
- package/dist/types/utils/build-transaction.d.ts +3 -3
- package/dist/types/utils/build-transaction.d.ts.map +1 -1
- package/dist/types/utils/currency.d.ts +3 -2
- package/dist/types/utils/currency.d.ts.map +1 -1
- package/dist/types/utils/open.d.ts +2 -1
- package/dist/types/utils/open.d.ts.map +1 -1
- package/dist/types/utils/order.d.ts +2 -1
- package/dist/types/utils/order.d.ts.map +1 -1
- package/dist/types/utils/prices.d.ts +3 -3
- package/dist/types/utils/prices.d.ts.map +1 -1
- package/dist/types/utils/tick.d.ts +1 -0
- package/dist/types/utils/tick.d.ts.map +1 -1
- package/dist/types/utils/unit-size.d.ts +2 -1
- package/dist/types/utils/unit-size.d.ts.map +1 -1
- package/dist/types/utils.d.ts +1 -1
- package/dist/types/utils.d.ts.map +1 -1
- package/dist/types/view.d.ts +33 -7
- package/dist/types/view.d.ts.map +1 -1
- package/package.json +1 -1
- package/dist/cjs/constants/client.js +0 -18
- package/dist/cjs/constants/client.js.map +0 -1
- package/dist/cjs/utils/decorator.js +0 -15
- package/dist/cjs/utils/decorator.js.map +0 -1
- package/dist/esm/constants/client.js +0 -14
- package/dist/esm/constants/client.js.map +0 -1
- package/dist/esm/utils/decorator.js +0 -11
- package/dist/esm/utils/decorator.js.map +0 -1
- package/dist/types/constants/client.d.ts +0 -5
- package/dist/types/constants/client.d.ts.map +0 -1
- package/dist/types/utils/decorator.d.ts +0 -6
- package/dist/types/utils/decorator.d.ts.map +0 -1
|
@@ -19,7 +19,7 @@ const CHART_LOG_INTERVAL_TIMESTAMP = {
|
|
|
19
19
|
};
|
|
20
20
|
const PAGE_SIZE = 1000;
|
|
21
21
|
const getChartLogs = async ({ chainId, first, skip, marketCode, intervalType, from, to, }) => {
|
|
22
|
-
return subgraph_1.
|
|
22
|
+
return subgraph_1.Subgraph.get(chainId, 'getChartLogs', 'query getChartLogs($first: Int!, $skip: Int!, $marketCode: String!, $intervalType: String!, $from: BigInt!, $to: BigInt!) { chartLogs( first: $first, skip: $skip, orderBy: timestamp, orderDirection: desc where: { marketCode: $marketCode, intervalType: $intervalType, timestamp_gte: $from, timestamp_lte: $to, }) { timestamp open high low close baseVolume } }', {
|
|
23
23
|
first,
|
|
24
24
|
from,
|
|
25
25
|
intervalType,
|
|
@@ -29,7 +29,7 @@ const getChartLogs = async ({ chainId, first, skip, marketCode, intervalType, fr
|
|
|
29
29
|
});
|
|
30
30
|
};
|
|
31
31
|
const getLatestChartLog = async ({ chainId, marketCode, }) => {
|
|
32
|
-
return subgraph_1.
|
|
32
|
+
return subgraph_1.Subgraph.get(chainId, 'getLatestChartLog', 'query getLatestChartLog($marketCode: String!) { chartLogs( first: 1, orderBy: timestamp, orderDirection: desc where: { marketCode: $marketCode, }) { timestamp open high low close baseVolume } }', {
|
|
33
33
|
marketCode,
|
|
34
34
|
});
|
|
35
35
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chart-logs.js","sourceRoot":"","sources":["../../../src/apis/chart-logs.ts"],"names":[],"mappings":";;;AACA,kCAAuD;AAEvD,
|
|
1
|
+
{"version":3,"file":"chart-logs.js","sourceRoot":"","sources":["../../../src/apis/chart-logs.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/apis/market.js
CHANGED
|
@@ -7,20 +7,19 @@ const market_2 = require("../utils/market");
|
|
|
7
7
|
const book_id_1 = require("../utils/book-id");
|
|
8
8
|
const unit_size_1 = require("../utils/unit-size");
|
|
9
9
|
const addresses_1 = require("../constants/addresses");
|
|
10
|
-
const client_1 = require("../constants/client");
|
|
11
10
|
const book_viewer_abi_1 = require("../abis/core/book-viewer-abi");
|
|
12
11
|
const open_1 = require("../utils/open");
|
|
13
12
|
const currency_1 = require("../utils/currency");
|
|
14
13
|
const subgraph_1 = require("../constants/subgraph");
|
|
15
14
|
const fetchBook = async (chainId, bookId) => {
|
|
16
|
-
return subgraph_1.
|
|
15
|
+
return subgraph_1.Subgraph.get(chainId, 'getBook', 'query getBook($bookId: ID!) { book(id: $bookId){ depths { tick unitAmount } } }', {
|
|
17
16
|
bookId,
|
|
18
17
|
});
|
|
19
18
|
};
|
|
20
|
-
const getBook = async (chainId, quoteCurrency, baseCurrency, n) => {
|
|
21
|
-
const unitSize = await (0, unit_size_1.calculateUnitSize)(chainId, quoteCurrency);
|
|
19
|
+
const getBook = async (publicClient, chainId, quoteCurrency, baseCurrency, useSubgraph, n) => {
|
|
20
|
+
const unitSize = await (0, unit_size_1.calculateUnitSize)(publicClient, chainId, quoteCurrency);
|
|
22
21
|
const bookId = (0, book_id_1.toBookId)(chainId, quoteCurrency.address, baseCurrency.address, unitSize);
|
|
23
|
-
if (
|
|
22
|
+
if (useSubgraph) {
|
|
24
23
|
const { data: { book }, } = await fetchBook(chainId, bookId.toString());
|
|
25
24
|
new book_1.Book({
|
|
26
25
|
chainId,
|
|
@@ -38,13 +37,13 @@ const getBook = async (chainId, quoteCurrency, baseCurrency, n) => {
|
|
|
38
37
|
});
|
|
39
38
|
}
|
|
40
39
|
const [depths, isOpened] = await Promise.all([
|
|
41
|
-
|
|
40
|
+
publicClient.readContract({
|
|
42
41
|
address: addresses_1.CONTRACT_ADDRESSES[chainId].BookViewer,
|
|
43
42
|
abi: book_viewer_abi_1.BOOK_VIEWER_ABI,
|
|
44
43
|
functionName: 'getLiquidity',
|
|
45
44
|
args: [bookId, Number(2n ** 19n - 1n), BigInt(n)],
|
|
46
45
|
}),
|
|
47
|
-
(0, open_1.fetchIsOpened)(chainId, bookId),
|
|
46
|
+
(0, open_1.fetchIsOpened)(publicClient, chainId, bookId),
|
|
48
47
|
]);
|
|
49
48
|
return new book_1.Book({
|
|
50
49
|
chainId,
|
|
@@ -59,7 +58,7 @@ const getBook = async (chainId, quoteCurrency, baseCurrency, n) => {
|
|
|
59
58
|
isOpened,
|
|
60
59
|
});
|
|
61
60
|
};
|
|
62
|
-
async function fetchMarket(chainId, tokenAddresses, n = 100) {
|
|
61
|
+
async function fetchMarket(publicClient, chainId, tokenAddresses, useSubgraph, n = 100) {
|
|
63
62
|
if (tokenAddresses.length !== 2) {
|
|
64
63
|
throw new Error('Invalid token pair');
|
|
65
64
|
}
|
|
@@ -68,12 +67,12 @@ async function fetchMarket(chainId, tokenAddresses, n = 100) {
|
|
|
68
67
|
tokenAddresses[1],
|
|
69
68
|
]);
|
|
70
69
|
const [quoteCurrency, baseCurrency] = await Promise.all([
|
|
71
|
-
(0, currency_1.fetchCurrency)(chainId, quoteTokenAddress),
|
|
72
|
-
(0, currency_1.fetchCurrency)(chainId, baseTokenAddress),
|
|
70
|
+
(0, currency_1.fetchCurrency)(publicClient, chainId, quoteTokenAddress),
|
|
71
|
+
(0, currency_1.fetchCurrency)(publicClient, chainId, baseTokenAddress),
|
|
73
72
|
]);
|
|
74
73
|
const [bidBook, askBook] = await Promise.all([
|
|
75
|
-
getBook(chainId, quoteCurrency, baseCurrency, n),
|
|
76
|
-
getBook(chainId, baseCurrency, quoteCurrency, n),
|
|
74
|
+
getBook(publicClient, chainId, quoteCurrency, baseCurrency, useSubgraph, n),
|
|
75
|
+
getBook(publicClient, chainId, baseCurrency, quoteCurrency, useSubgraph, n),
|
|
77
76
|
]);
|
|
78
77
|
return new market_1.Market({
|
|
79
78
|
chainId,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"market.js","sourceRoot":"","sources":["../../../src/apis/market.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"market.js","sourceRoot":"","sources":["../../../src/apis/market.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,21 +11,21 @@ const bigint_1 = require("../utils/bigint");
|
|
|
11
11
|
const fee_1 = require("../constants/fee");
|
|
12
12
|
const subgraph_1 = require("../constants/subgraph");
|
|
13
13
|
const getOpenOrder = async (chainId, orderId) => {
|
|
14
|
-
return subgraph_1.
|
|
14
|
+
return subgraph_1.Subgraph.get(chainId, 'getOpenOrder', 'query getOpenOrder($orderId: ID!) { openOrder(id: $orderId) { id user book { id base { id name symbol decimals } quote { id name symbol decimals } unitSize } tick txHash createdAt unitAmount unitFilledAmount unitClaimedAmount unitClaimableAmount orderIndex } }', {
|
|
15
15
|
orderId,
|
|
16
16
|
});
|
|
17
17
|
};
|
|
18
18
|
const getOpenOrders = async (chainId, orderIds) => {
|
|
19
|
-
return subgraph_1.
|
|
19
|
+
return subgraph_1.Subgraph.get(chainId, 'getOpenOrders', 'query getOpenOrders($orderIds: [ID!]!) { openOrders(where: {id_in: $orderIds}) { id user book { id base { id name symbol decimals } quote { id name symbol decimals } unitSize } tick txHash createdAt unitAmount unitFilledAmount unitClaimedAmount unitClaimableAmount orderIndex } }', {
|
|
20
20
|
orderIds,
|
|
21
21
|
});
|
|
22
22
|
};
|
|
23
23
|
const getOpenOrdersByUserAddress = async (chainId, userAddress) => {
|
|
24
|
-
return subgraph_1.
|
|
24
|
+
return subgraph_1.Subgraph.get(chainId, 'getOpenOrdersByUserAddress', 'query getOpenOrdersByUserAddress($userAddress: String!) { openOrders(where: { user: $userAddress }) { id user book { id base { id name symbol decimals } quote { id name symbol decimals } unitSize } tick txHash createdAt unitAmount unitFilledAmount unitClaimedAmount unitClaimableAmount orderIndex } }', {
|
|
25
25
|
userAddress: userAddress.toLowerCase(),
|
|
26
26
|
});
|
|
27
27
|
};
|
|
28
|
-
async function fetchOpenOrdersByUserAddress(chainId, userAddress) {
|
|
28
|
+
async function fetchOpenOrdersByUserAddress(publicClient, chainId, userAddress) {
|
|
29
29
|
const { data: { openOrders }, } = await getOpenOrdersByUserAddress(chainId, userAddress);
|
|
30
30
|
const currencies = await Promise.all(openOrders
|
|
31
31
|
.map((openOrder) => [
|
|
@@ -34,23 +34,23 @@ async function fetchOpenOrdersByUserAddress(chainId, userAddress) {
|
|
|
34
34
|
])
|
|
35
35
|
.flat()
|
|
36
36
|
.filter((address, index, self) => self.findIndex((c) => (0, viem_1.isAddressEqual)(c, address)) === index)
|
|
37
|
-
.map((address) => (0, currency_1.fetchCurrency)(chainId, address)));
|
|
37
|
+
.map((address) => (0, currency_1.fetchCurrency)(publicClient, chainId, address)));
|
|
38
38
|
return openOrders.map((openOrder) => toOpenOrder(chainId, currencies, openOrder));
|
|
39
39
|
}
|
|
40
40
|
exports.fetchOpenOrdersByUserAddress = fetchOpenOrdersByUserAddress;
|
|
41
|
-
async function fetchOpenOrder(chainId, id) {
|
|
41
|
+
async function fetchOpenOrder(publicClient, chainId, id) {
|
|
42
42
|
const { data: { openOrder }, } = await getOpenOrder(chainId, id);
|
|
43
43
|
if (!openOrder) {
|
|
44
44
|
throw new Error(`Open order not found: ${id}`);
|
|
45
45
|
}
|
|
46
46
|
const currencies = await Promise.all([
|
|
47
|
-
(0, currency_1.fetchCurrency)(chainId, (0, viem_1.getAddress)(openOrder.book.base.id)),
|
|
48
|
-
(0, currency_1.fetchCurrency)(chainId, (0, viem_1.getAddress)(openOrder.book.quote.id)),
|
|
47
|
+
(0, currency_1.fetchCurrency)(publicClient, chainId, (0, viem_1.getAddress)(openOrder.book.base.id)),
|
|
48
|
+
(0, currency_1.fetchCurrency)(publicClient, chainId, (0, viem_1.getAddress)(openOrder.book.quote.id)),
|
|
49
49
|
]);
|
|
50
50
|
return toOpenOrder(chainId, currencies, openOrder);
|
|
51
51
|
}
|
|
52
52
|
exports.fetchOpenOrder = fetchOpenOrder;
|
|
53
|
-
async function fetchOpenOrders(chainId, ids) {
|
|
53
|
+
async function fetchOpenOrders(publicClient, chainId, ids) {
|
|
54
54
|
const { data: { openOrders }, } = await getOpenOrders(chainId, ids);
|
|
55
55
|
const currencies = await Promise.all(openOrders
|
|
56
56
|
.map((openOrder) => [
|
|
@@ -59,7 +59,7 @@ async function fetchOpenOrders(chainId, ids) {
|
|
|
59
59
|
])
|
|
60
60
|
.flat()
|
|
61
61
|
.filter((address, index, self) => self.findIndex((c) => (0, viem_1.isAddressEqual)(c, address)) === index)
|
|
62
|
-
.map((address) => (0, currency_1.fetchCurrency)(chainId, address)));
|
|
62
|
+
.map((address) => (0, currency_1.fetchCurrency)(publicClient, chainId, address)));
|
|
63
63
|
return openOrders.map((openOrder) => toOpenOrder(chainId, currencies, openOrder));
|
|
64
64
|
}
|
|
65
65
|
exports.fetchOpenOrders = fetchOpenOrders;
|
|
@@ -85,7 +85,7 @@ const toOpenOrder = (chainId, currencies, openOrder) => {
|
|
|
85
85
|
const filled = isBid
|
|
86
86
|
? (0, decimals_1.quoteToBase)(tick, unitSize * unitFilledAmount, false)
|
|
87
87
|
: unitSize * unitFilledAmount;
|
|
88
|
-
const invertedTick = (0, tick_1.
|
|
88
|
+
const invertedTick = (0, tick_1.invertTick)(tick);
|
|
89
89
|
const claimed = isBid
|
|
90
90
|
? (0, decimals_1.quoteToBase)(tick, unitSize * unitClaimedAmount, false)
|
|
91
91
|
: (0, decimals_1.baseToQuote)(invertedTick, unitSize * unitClaimedAmount, false);
|
|
@@ -101,7 +101,7 @@ const toOpenOrder = (chainId, currencies, openOrder) => {
|
|
|
101
101
|
outputCurrency,
|
|
102
102
|
txHash: openOrder.txHash,
|
|
103
103
|
createdAt: Number(openOrder.createdAt),
|
|
104
|
-
price: (0, prices_1.formatPrice)(
|
|
104
|
+
price: (0, prices_1.formatPrice)((0, tick_1.toPrice)(isBid ? tick : (0, tick_1.invertTick)(tick)), quote.decimals, base.decimals),
|
|
105
105
|
tick: Number(tick),
|
|
106
106
|
orderIndex: openOrder.orderIndex,
|
|
107
107
|
amount: { currency: base, value: (0, viem_1.formatUnits)(amount, base.decimals) },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"open-order.js","sourceRoot":"","sources":["../../../src/apis/open-order.ts"],"names":[],"mappings":";;;AAAA,+
|
|
1
|
+
{"version":3,"file":"open-order.js","sourceRoot":"","sources":["../../../src/apis/open-order.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/approval.js
CHANGED
|
@@ -5,14 +5,17 @@ const viem_1 = require("viem");
|
|
|
5
5
|
const chain_1 = require("./constants/chain");
|
|
6
6
|
const addresses_1 = require("./constants/addresses");
|
|
7
7
|
const approval_1 = require("./utils/approval");
|
|
8
|
-
const decorator_1 = require("./utils/decorator");
|
|
9
8
|
const allowance_1 = require("./utils/allowance");
|
|
10
9
|
const currency_1 = require("./utils/currency");
|
|
11
|
-
|
|
10
|
+
const setApprovalOfOpenOrdersForAll = async ({ chainId, walletClient, options, }) => {
|
|
12
11
|
if (!walletClient.account) {
|
|
13
12
|
throw new Error('Account is not found');
|
|
14
13
|
}
|
|
15
|
-
const
|
|
14
|
+
const publicClient = (0, viem_1.createPublicClient)({
|
|
15
|
+
chain: chain_1.CHAIN_MAP[chainId],
|
|
16
|
+
transport: options?.rpcUrl ? (0, viem_1.http)(options.rpcUrl) : (0, viem_1.http)(),
|
|
17
|
+
});
|
|
18
|
+
const isApprovedForAll = await (0, approval_1.fetchIsApprovedForAll)(publicClient, chainId, walletClient.account.address);
|
|
16
19
|
if (isApprovedForAll) {
|
|
17
20
|
return undefined;
|
|
18
21
|
}
|
|
@@ -43,18 +46,21 @@ exports.setApprovalOfOpenOrdersForAll = (0, decorator_1.decorator)(async ({ chai
|
|
|
43
46
|
functionName: 'setApprovalForAll',
|
|
44
47
|
args: [addresses_1.CONTRACT_ADDRESSES[chainId].Controller, true],
|
|
45
48
|
});
|
|
46
|
-
}
|
|
47
|
-
exports.
|
|
49
|
+
};
|
|
50
|
+
exports.setApprovalOfOpenOrdersForAll = setApprovalOfOpenOrdersForAll;
|
|
51
|
+
const approveERC20 = async ({ chainId, walletClient, token, amount, options, }) => {
|
|
48
52
|
if (!walletClient.account) {
|
|
49
53
|
throw new Error('Account is not found');
|
|
50
54
|
}
|
|
55
|
+
const publicClient = (0, viem_1.createPublicClient)({
|
|
56
|
+
chain: chain_1.CHAIN_MAP[chainId],
|
|
57
|
+
transport: options?.rpcUrl ? (0, viem_1.http)(options.rpcUrl) : (0, viem_1.http)(),
|
|
58
|
+
});
|
|
51
59
|
const [currency, allowance] = await Promise.all([
|
|
52
|
-
(0, currency_1.fetchCurrency)(chainId, token),
|
|
53
|
-
(0, allowance_1.fetchAllowance)(
|
|
60
|
+
(0, currency_1.fetchCurrency)(publicClient, chainId, token),
|
|
61
|
+
(0, allowance_1.fetchAllowance)(publicClient, token, walletClient.account.address, addresses_1.CONTRACT_ADDRESSES[chainId].Controller),
|
|
54
62
|
]);
|
|
55
|
-
const value = amount
|
|
56
|
-
? (0, viem_1.parseUnits)(amount, currency.decimals)
|
|
57
|
-
: 2n ** 256n - 1n;
|
|
63
|
+
const value = amount ? (0, viem_1.parseUnits)(amount, currency.decimals) : 2n ** 256n - 1n;
|
|
58
64
|
if (allowance >= value) {
|
|
59
65
|
return undefined;
|
|
60
66
|
}
|
|
@@ -91,5 +97,6 @@ exports.approveERC20 = (0, decorator_1.decorator)(async ({ chainId, walletClient
|
|
|
91
97
|
functionName: 'approve',
|
|
92
98
|
args: [addresses_1.CONTRACT_ADDRESSES[chainId].Controller, value],
|
|
93
99
|
});
|
|
94
|
-
}
|
|
100
|
+
};
|
|
101
|
+
exports.approveERC20 = approveERC20;
|
|
95
102
|
//# sourceMappingURL=approval.js.map
|
package/dist/cjs/approval.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"approval.js","sourceRoot":"","sources":["../../src/approval.ts"],"names":[],"mappings":";;;AAAA,+
|
|
1
|
+
{"version":3,"file":"approval.js","sourceRoot":"","sources":["../../src/approval.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/call.js
CHANGED
|
@@ -15,16 +15,19 @@ const tick_1 = require("./utils/tick");
|
|
|
15
15
|
const view_1 = require("./view");
|
|
16
16
|
const book_id_1 = require("./utils/book-id");
|
|
17
17
|
const approval_1 = require("./utils/approval");
|
|
18
|
-
const decorator_1 = require("./utils/decorator");
|
|
19
18
|
const order_1 = require("./utils/order");
|
|
20
19
|
const bigint_1 = require("./utils/bigint");
|
|
21
|
-
|
|
22
|
-
const
|
|
20
|
+
const openMarket = async ({ chainId, userAddress, inputToken, outputToken, options, }) => {
|
|
21
|
+
const publicClient = (0, viem_1.createPublicClient)({
|
|
22
|
+
chain: chain_1.CHAIN_MAP[chainId],
|
|
23
|
+
transport: options?.rpcUrl ? (0, viem_1.http)(options.rpcUrl) : (0, viem_1.http)(),
|
|
24
|
+
});
|
|
25
|
+
const market = await (0, market_1.fetchMarket)(publicClient, chainId, [inputToken, outputToken], !!(options && options.useSubgraph));
|
|
23
26
|
const isBid = (0, viem_1.isAddressEqual)(market.quote.address, inputToken);
|
|
24
27
|
if ((isBid && !market.bidBook.isOpened) ||
|
|
25
28
|
(!isBid && !market.askBook.isOpened)) {
|
|
26
|
-
const unitSize = await (0, unit_size_1.calculateUnitSize)(chainId, isBid ? market.quote : market.base);
|
|
27
|
-
return (0, build_transaction_1.buildTransaction)(
|
|
29
|
+
const unitSize = await (0, unit_size_1.calculateUnitSize)(publicClient, chainId, isBid ? market.quote : market.base);
|
|
30
|
+
return (0, build_transaction_1.buildTransaction)(publicClient, {
|
|
28
31
|
chain: chain_1.CHAIN_MAP[chainId],
|
|
29
32
|
address: addresses_1.CONTRACT_ADDRESSES[chainId].Controller,
|
|
30
33
|
account: userAddress,
|
|
@@ -49,15 +52,20 @@ exports.openMarket = (0, decorator_1.decorator)(async ({ chainId, userAddress, i
|
|
|
49
52
|
}, options?.gasLimit);
|
|
50
53
|
}
|
|
51
54
|
return undefined;
|
|
52
|
-
}
|
|
53
|
-
exports.
|
|
55
|
+
};
|
|
56
|
+
exports.openMarket = openMarket;
|
|
57
|
+
const limitOrder = async ({ chainId, userAddress, inputToken, outputToken, amount, price, options, }) => {
|
|
54
58
|
const [roundingUpMakeBid, roundingDownMakeAsk, roundingDownTakenBid, roundingUpTakenAsk,] = [
|
|
55
59
|
options?.roundingUpMakeBid ? options.roundingUpMakeBid : false,
|
|
56
60
|
options?.roundingDownMakeAsk ? options.roundingDownMakeAsk : false,
|
|
57
61
|
options?.roundingDownTakenBid ? options.roundingDownTakenBid : false,
|
|
58
62
|
options?.roundingUpTakenAsk ? options.roundingUpTakenAsk : false,
|
|
59
63
|
];
|
|
60
|
-
const
|
|
64
|
+
const publicClient = (0, viem_1.createPublicClient)({
|
|
65
|
+
chain: chain_1.CHAIN_MAP[chainId],
|
|
66
|
+
transport: options?.rpcUrl ? (0, viem_1.http)(options.rpcUrl) : (0, viem_1.http)(),
|
|
67
|
+
});
|
|
68
|
+
const market = await (0, market_1.fetchMarket)(publicClient, chainId, [inputToken, outputToken], !!(options && options.useSubgraph));
|
|
61
69
|
const isBid = (0, viem_1.isAddressEqual)(market.quote.address, inputToken);
|
|
62
70
|
const [inputCurrency, outputCurrency] = isBid
|
|
63
71
|
? [market.quote, market.base]
|
|
@@ -75,11 +83,11 @@ exports.limitOrder = (0, decorator_1.decorator)(async ({ chainId, userAddress, i
|
|
|
75
83
|
})
|
|
76
84
|
`);
|
|
77
85
|
}
|
|
78
|
-
const {
|
|
86
|
+
const { roundingDownTick, roundingUpTick } = (0, prices_1.parsePrice)(Number(price), market.quote.decimals, market.base.decimals);
|
|
79
87
|
const tokensToSettle = [inputToken, outputToken].filter((address) => !(0, viem_1.isAddressEqual)(address, viem_1.zeroAddress));
|
|
80
88
|
const quoteAmount = (0, viem_1.parseUnits)(amount, inputCurrency.decimals);
|
|
81
89
|
const [unitSize, { takenAmount, spentAmount, bookId, events }] = await Promise.all([
|
|
82
|
-
(0, unit_size_1.calculateUnitSize)(chainId, inputCurrency),
|
|
90
|
+
(0, unit_size_1.calculateUnitSize)(publicClient, chainId, inputCurrency),
|
|
83
91
|
(0, view_1.getExpectedOutput)({
|
|
84
92
|
chainId,
|
|
85
93
|
inputToken,
|
|
@@ -97,14 +105,16 @@ exports.limitOrder = (0, decorator_1.decorator)(async ({ chainId, userAddress, i
|
|
|
97
105
|
tick: options?.makeTick
|
|
98
106
|
? Number(options.makeTick)
|
|
99
107
|
: Number(isBid
|
|
100
|
-
?
|
|
101
|
-
|
|
108
|
+
? roundingUpMakeBid
|
|
109
|
+
? roundingUpTick
|
|
110
|
+
: roundingDownTick
|
|
111
|
+
: (0, tick_1.invertTick)(roundingDownMakeAsk ? roundingDownTick : roundingUpTick)),
|
|
102
112
|
quoteAmount,
|
|
103
113
|
hookData: viem_1.zeroHash,
|
|
104
114
|
};
|
|
105
115
|
if (options?.postOnly === true || spentAmount === '0') {
|
|
106
116
|
return {
|
|
107
|
-
transaction: await (0, build_transaction_1.buildTransaction)(
|
|
117
|
+
transaction: await (0, build_transaction_1.buildTransaction)(publicClient, {
|
|
108
118
|
chain: chain_1.CHAIN_MAP[chainId],
|
|
109
119
|
account: userAddress,
|
|
110
120
|
address: addresses_1.CONTRACT_ADDRESSES[chainId].Controller,
|
|
@@ -125,7 +135,7 @@ exports.limitOrder = (0, decorator_1.decorator)(async ({ chainId, userAddress, i
|
|
|
125
135
|
direction: 'in',
|
|
126
136
|
price: (0, prices_1.formatPrice)(isBid
|
|
127
137
|
? (0, tick_1.toPrice)(BigInt(makeParam.tick))
|
|
128
|
-
: (0, tick_1.
|
|
138
|
+
: (0, tick_1.toPrice)((0, tick_1.invertTick)(BigInt(makeParam.tick))), market.quote.decimals, market.base.decimals),
|
|
129
139
|
},
|
|
130
140
|
spent: {
|
|
131
141
|
amount: '0',
|
|
@@ -144,7 +154,7 @@ exports.limitOrder = (0, decorator_1.decorator)(async ({ chainId, userAddress, i
|
|
|
144
154
|
}
|
|
145
155
|
else {
|
|
146
156
|
return {
|
|
147
|
-
transaction: await (0, build_transaction_1.buildTransaction)(
|
|
157
|
+
transaction: await (0, build_transaction_1.buildTransaction)(publicClient, {
|
|
148
158
|
chain: chain_1.CHAIN_MAP[chainId],
|
|
149
159
|
account: userAddress,
|
|
150
160
|
address: addresses_1.CONTRACT_ADDRESSES[chainId].Controller,
|
|
@@ -157,13 +167,13 @@ exports.limitOrder = (0, decorator_1.decorator)(async ({ chainId, userAddress, i
|
|
|
157
167
|
makeBookId: makeParam.id,
|
|
158
168
|
limitPrice: options?.takeLimitTick
|
|
159
169
|
? (0, tick_1.toPrice)(options.takeLimitTick)
|
|
160
|
-
: isBid
|
|
161
|
-
? (0, tick_1.
|
|
162
|
-
?
|
|
163
|
-
:
|
|
170
|
+
: (0, tick_1.toPrice)(isBid
|
|
171
|
+
? (0, tick_1.invertTick)(roundingUpTakenAsk
|
|
172
|
+
? roundingUpTick
|
|
173
|
+
: roundingDownTick)
|
|
164
174
|
: roundingDownTakenBid
|
|
165
|
-
?
|
|
166
|
-
:
|
|
175
|
+
? roundingDownTick
|
|
176
|
+
: roundingUpTick),
|
|
167
177
|
tick: makeParam.tick,
|
|
168
178
|
quoteAmount,
|
|
169
179
|
takeHookData: viem_1.zeroHash,
|
|
@@ -183,7 +193,7 @@ exports.limitOrder = (0, decorator_1.decorator)(async ({ chainId, userAddress, i
|
|
|
183
193
|
direction: 'in',
|
|
184
194
|
price: (0, prices_1.formatPrice)(isBid
|
|
185
195
|
? (0, tick_1.toPrice)(BigInt(makeParam.tick))
|
|
186
|
-
: (0, tick_1.
|
|
196
|
+
: (0, tick_1.toPrice)((0, tick_1.invertTick)(BigInt(makeParam.tick))), market.quote.decimals, market.base.decimals),
|
|
187
197
|
},
|
|
188
198
|
spent: {
|
|
189
199
|
amount: spentAmount,
|
|
@@ -206,15 +216,20 @@ exports.limitOrder = (0, decorator_1.decorator)(async ({ chainId, userAddress, i
|
|
|
206
216
|
},
|
|
207
217
|
};
|
|
208
218
|
}
|
|
209
|
-
}
|
|
210
|
-
exports.
|
|
219
|
+
};
|
|
220
|
+
exports.limitOrder = limitOrder;
|
|
221
|
+
const marketOrder = async ({ chainId, userAddress, inputToken, outputToken, amountIn, amountOut, options, }) => {
|
|
211
222
|
if (!amountIn && !amountOut) {
|
|
212
223
|
throw new Error('Either amountIn or amountOut must be provided');
|
|
213
224
|
}
|
|
214
225
|
else if (amountIn && amountOut) {
|
|
215
226
|
throw new Error('Only one of amountIn or amountOut can be provided');
|
|
216
227
|
}
|
|
217
|
-
const
|
|
228
|
+
const publicClient = (0, viem_1.createPublicClient)({
|
|
229
|
+
chain: chain_1.CHAIN_MAP[chainId],
|
|
230
|
+
transport: options?.rpcUrl ? (0, viem_1.http)(options.rpcUrl) : (0, viem_1.http)(),
|
|
231
|
+
});
|
|
232
|
+
const market = await (0, market_1.fetchMarket)(publicClient, chainId, [inputToken, outputToken], !!(options && options.useSubgraph));
|
|
218
233
|
const isTakingBid = (0, viem_1.isAddressEqual)(market.base.address, inputToken);
|
|
219
234
|
const [inputCurrency, outputCurrency] = isTakingBid
|
|
220
235
|
? [market.base, market.quote]
|
|
@@ -246,7 +261,7 @@ exports.marketOrder = (0, decorator_1.decorator)(async ({ chainId, userAddress,
|
|
|
246
261
|
});
|
|
247
262
|
const baseAmount = (0, viem_1.parseUnits)(amountIn, inputCurrency.decimals);
|
|
248
263
|
return {
|
|
249
|
-
transaction: await (0, build_transaction_1.buildTransaction)(
|
|
264
|
+
transaction: await (0, build_transaction_1.buildTransaction)(publicClient, {
|
|
250
265
|
chain: chain_1.CHAIN_MAP[chainId],
|
|
251
266
|
account: userAddress,
|
|
252
267
|
address: addresses_1.CONTRACT_ADDRESSES[chainId].Controller,
|
|
@@ -311,7 +326,7 @@ exports.marketOrder = (0, decorator_1.decorator)(async ({ chainId, userAddress,
|
|
|
311
326
|
? baseAmount
|
|
312
327
|
: 2n ** 256n - 1n);
|
|
313
328
|
return {
|
|
314
|
-
transaction: await (0, build_transaction_1.buildTransaction)(
|
|
329
|
+
transaction: await (0, build_transaction_1.buildTransaction)(publicClient, {
|
|
315
330
|
chain: chain_1.CHAIN_MAP[chainId],
|
|
316
331
|
account: userAddress,
|
|
317
332
|
address: addresses_1.CONTRACT_ADDRESSES[chainId].Controller,
|
|
@@ -358,8 +373,9 @@ exports.marketOrder = (0, decorator_1.decorator)(async ({ chainId, userAddress,
|
|
|
358
373
|
else {
|
|
359
374
|
throw new Error('Either amountIn or amountOut must be provided');
|
|
360
375
|
}
|
|
361
|
-
}
|
|
362
|
-
exports.
|
|
376
|
+
};
|
|
377
|
+
exports.marketOrder = marketOrder;
|
|
378
|
+
const claimOrder = async ({ chainId, userAddress, id, options, }) => {
|
|
363
379
|
const { transaction, result } = await (0, exports.claimOrders)({
|
|
364
380
|
chainId,
|
|
365
381
|
userAddress,
|
|
@@ -370,9 +386,14 @@ exports.claimOrder = (0, decorator_1.decorator)(async ({ chainId, userAddress, i
|
|
|
370
386
|
transaction,
|
|
371
387
|
result: result[0],
|
|
372
388
|
};
|
|
373
|
-
}
|
|
374
|
-
exports.
|
|
375
|
-
|
|
389
|
+
};
|
|
390
|
+
exports.claimOrder = claimOrder;
|
|
391
|
+
const claimOrders = async ({ chainId, userAddress, ids, options, }) => {
|
|
392
|
+
const publicClient = (0, viem_1.createPublicClient)({
|
|
393
|
+
chain: chain_1.CHAIN_MAP[chainId],
|
|
394
|
+
transport: options?.rpcUrl ? (0, viem_1.http)(options.rpcUrl) : (0, viem_1.http)(),
|
|
395
|
+
});
|
|
396
|
+
const isApprovedForAll = await (0, approval_1.fetchIsApprovedForAll)(publicClient, chainId, userAddress);
|
|
376
397
|
if (!isApprovedForAll) {
|
|
377
398
|
throw new Error(`
|
|
378
399
|
Set ApprovalForAll before calling this function.
|
|
@@ -384,18 +405,14 @@ exports.claimOrders = (0, decorator_1.decorator)(async ({ chainId, userAddress,
|
|
|
384
405
|
})
|
|
385
406
|
`);
|
|
386
407
|
}
|
|
387
|
-
const orders = (await (0, order_1.fetchOrders)(chainId, ids.map((id) => BigInt(id)))).filter((order) => (0, viem_1.isAddressEqual)(order.user, userAddress) &&
|
|
388
|
-
order.claimable.value !== '0');
|
|
408
|
+
const orders = (await (0, order_1.fetchOrders)(publicClient, chainId, ids.map((id) => BigInt(id)), !!(options && options.useSubgraph))).filter((order) => (0, viem_1.isAddressEqual)(order.user, userAddress) && order.claimable.value !== '0');
|
|
389
409
|
const tokensToSettle = orders
|
|
390
|
-
.map((order) => [
|
|
391
|
-
order.inputCurrency.address,
|
|
392
|
-
order.outputCurrency.address,
|
|
393
|
-
])
|
|
410
|
+
.map((order) => [order.inputCurrency.address, order.outputCurrency.address])
|
|
394
411
|
.flat()
|
|
395
412
|
.filter((address, index, self) => self.findIndex((c) => (0, viem_1.isAddressEqual)(c, address)) === index)
|
|
396
413
|
.filter((address) => !(0, viem_1.isAddressEqual)(address, viem_1.zeroAddress));
|
|
397
414
|
return {
|
|
398
|
-
transaction: await (0, build_transaction_1.buildTransaction)(
|
|
415
|
+
transaction: await (0, build_transaction_1.buildTransaction)(publicClient, {
|
|
399
416
|
chain: chain_1.CHAIN_MAP[chainId],
|
|
400
417
|
account: userAddress,
|
|
401
418
|
address: addresses_1.CONTRACT_ADDRESSES[chainId].Controller,
|
|
@@ -420,8 +437,9 @@ exports.claimOrders = (0, decorator_1.decorator)(async ({ chainId, userAddress,
|
|
|
420
437
|
return acc;
|
|
421
438
|
}, []),
|
|
422
439
|
};
|
|
423
|
-
}
|
|
424
|
-
exports.
|
|
440
|
+
};
|
|
441
|
+
exports.claimOrders = claimOrders;
|
|
442
|
+
const cancelOrder = async ({ chainId, userAddress, id, options, }) => {
|
|
425
443
|
const { transaction, result } = await (0, exports.cancelOrders)({
|
|
426
444
|
chainId,
|
|
427
445
|
userAddress,
|
|
@@ -432,9 +450,14 @@ exports.cancelOrder = (0, decorator_1.decorator)(async ({ chainId, userAddress,
|
|
|
432
450
|
transaction,
|
|
433
451
|
result: result[0],
|
|
434
452
|
};
|
|
435
|
-
}
|
|
436
|
-
exports.
|
|
437
|
-
|
|
453
|
+
};
|
|
454
|
+
exports.cancelOrder = cancelOrder;
|
|
455
|
+
const cancelOrders = async ({ chainId, userAddress, ids, options, }) => {
|
|
456
|
+
const publicClient = (0, viem_1.createPublicClient)({
|
|
457
|
+
chain: chain_1.CHAIN_MAP[chainId],
|
|
458
|
+
transport: options?.rpcUrl ? (0, viem_1.http)(options.rpcUrl) : (0, viem_1.http)(),
|
|
459
|
+
});
|
|
460
|
+
const isApprovedForAll = await (0, approval_1.fetchIsApprovedForAll)(publicClient, chainId, userAddress);
|
|
438
461
|
if (!isApprovedForAll) {
|
|
439
462
|
throw new Error(`
|
|
440
463
|
Set ApprovalForAll before calling this function.
|
|
@@ -446,18 +469,14 @@ exports.cancelOrders = (0, decorator_1.decorator)(async ({ chainId, userAddress,
|
|
|
446
469
|
})
|
|
447
470
|
`);
|
|
448
471
|
}
|
|
449
|
-
const orders = (await (0, order_1.fetchOrders)(chainId, ids.map((id) => BigInt(id)))).filter((order) => (0, viem_1.isAddressEqual)(order.user, userAddress) &&
|
|
450
|
-
order.cancelable.value !== '0');
|
|
472
|
+
const orders = (await (0, order_1.fetchOrders)(publicClient, chainId, ids.map((id) => BigInt(id)), !!(options && options.useSubgraph))).filter((order) => (0, viem_1.isAddressEqual)(order.user, userAddress) && order.cancelable.value !== '0');
|
|
451
473
|
const tokensToSettle = orders
|
|
452
|
-
.map((order) => [
|
|
453
|
-
order.inputCurrency.address,
|
|
454
|
-
order.outputCurrency.address,
|
|
455
|
-
])
|
|
474
|
+
.map((order) => [order.inputCurrency.address, order.outputCurrency.address])
|
|
456
475
|
.flat()
|
|
457
476
|
.filter((address, index, self) => self.findIndex((c) => (0, viem_1.isAddressEqual)(c, address)) === index)
|
|
458
477
|
.filter((address) => !(0, viem_1.isAddressEqual)(address, viem_1.zeroAddress));
|
|
459
478
|
return {
|
|
460
|
-
transaction: await (0, build_transaction_1.buildTransaction)(
|
|
479
|
+
transaction: await (0, build_transaction_1.buildTransaction)(publicClient, {
|
|
461
480
|
chain: chain_1.CHAIN_MAP[chainId],
|
|
462
481
|
account: userAddress,
|
|
463
482
|
address: addresses_1.CONTRACT_ADDRESSES[chainId].Controller,
|
|
@@ -483,5 +502,6 @@ exports.cancelOrders = (0, decorator_1.decorator)(async ({ chainId, userAddress,
|
|
|
483
502
|
return acc;
|
|
484
503
|
}, []),
|
|
485
504
|
};
|
|
486
|
-
}
|
|
505
|
+
};
|
|
506
|
+
exports.cancelOrders = cancelOrders;
|
|
487
507
|
//# sourceMappingURL=call.js.map
|