@clober/v2-sdk 0.0.1-b → 0.0.1-d
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/.graphclient/index.js +243 -0
- package/dist/cjs/.graphclient/index.js.map +1 -0
- package/dist/cjs/.graphclient/sources/clober-v2/introspectionSchema.js +14482 -0
- package/dist/cjs/.graphclient/sources/clober-v2/introspectionSchema.js.map +1 -0
- package/dist/cjs/.graphclient/sources/clober-v2/types.js +4 -0
- package/dist/cjs/.graphclient/sources/clober-v2/types.js.map +1 -0
- package/dist/cjs/abis/core/controller-abi.js +989 -0
- package/dist/cjs/abis/core/controller-abi.js.map +1 -0
- package/dist/cjs/abis/core/params-abi.js +62 -0
- package/dist/cjs/abis/core/params-abi.js.map +1 -0
- package/dist/cjs/apis/currency.js +87 -0
- package/dist/cjs/apis/currency.js.map +1 -0
- package/dist/cjs/apis/market.js +63 -0
- package/dist/cjs/apis/market.js.map +1 -0
- package/dist/cjs/apis/open-order.js +90 -0
- package/dist/cjs/apis/open-order.js.map +1 -0
- package/dist/cjs/approval.js +74 -0
- package/dist/cjs/approval.js.map +1 -0
- package/dist/cjs/call.js +545 -0
- package/dist/cjs/call.js.map +1 -0
- package/dist/cjs/constants/action.js +14 -0
- package/dist/cjs/constants/action.js.map +1 -0
- package/dist/cjs/constants/addresses.js +13 -0
- package/dist/cjs/constants/addresses.js.map +1 -0
- package/dist/cjs/constants/chain.js +13 -0
- package/dist/cjs/constants/chain.js.map +1 -0
- package/dist/cjs/constants/currency.js +12 -0
- package/dist/cjs/constants/currency.js.map +1 -0
- package/dist/cjs/constants/fee.js +7 -0
- package/dist/cjs/constants/fee.js.map +1 -0
- package/dist/cjs/constants/price.js +6 -0
- package/dist/cjs/constants/price.js.map +1 -0
- package/dist/cjs/constants/subgraph-url.js +8 -0
- package/dist/cjs/constants/subgraph-url.js.map +1 -0
- package/dist/cjs/index.js +22 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/model/book.js +130 -0
- package/dist/cjs/model/book.js.map +1 -0
- package/dist/cjs/model/currency.js +3 -0
- package/dist/cjs/model/currency.js.map +1 -0
- package/dist/cjs/model/depth.js +3 -0
- package/dist/cjs/model/depth.js.map +1 -0
- package/dist/cjs/model/fee-policy.js +42 -0
- package/dist/cjs/model/fee-policy.js.map +1 -0
- package/dist/cjs/model/market.js +215 -0
- package/dist/cjs/model/market.js.map +1 -0
- package/dist/cjs/model/open-order.js +3 -0
- package/dist/cjs/model/open-order.js.map +1 -0
- package/dist/cjs/package.json +1 -0
- package/dist/cjs/signature.js +178 -0
- package/dist/cjs/signature.js.map +1 -0
- package/dist/cjs/tsconfig.build.tsbuildinfo +1 -0
- package/dist/cjs/type.js +6 -0
- package/dist/cjs/type.js.map +1 -0
- package/dist/cjs/utils/approval.js +46 -0
- package/dist/cjs/utils/approval.js.map +1 -0
- package/dist/cjs/utils/book-id.js +25 -0
- package/dist/cjs/utils/book-id.js.map +1 -0
- package/dist/cjs/utils/build-transaction.js +31 -0
- package/dist/cjs/utils/build-transaction.js.map +1 -0
- package/dist/cjs/utils/decimals.js +17 -0
- package/dist/cjs/utils/decimals.js.map +1 -0
- package/dist/cjs/utils/market.js +53 -0
- package/dist/cjs/utils/market.js.map +1 -0
- package/dist/cjs/utils/math.js +83 -0
- package/dist/cjs/utils/math.js.map +1 -0
- package/dist/cjs/utils/prices.js +22 -0
- package/dist/cjs/utils/prices.js.map +1 -0
- package/dist/cjs/utils/tick.js +106 -0
- package/dist/cjs/utils/tick.js.map +1 -0
- package/dist/cjs/utils/time.js +9 -0
- package/dist/cjs/utils/time.js.map +1 -0
- package/dist/cjs/utils/unit.js +38 -0
- package/dist/cjs/utils/unit.js.map +1 -0
- package/dist/cjs/view.js +185 -0
- package/dist/cjs/view.js.map +1 -0
- package/dist/esm/.graphclient/index.js +233 -0
- package/dist/esm/.graphclient/index.js.map +1 -0
- package/dist/esm/.graphclient/sources/clober-v2/introspectionSchema.js +14480 -0
- package/dist/esm/.graphclient/sources/clober-v2/introspectionSchema.js.map +1 -0
- package/dist/esm/.graphclient/sources/clober-v2/types.js +3 -0
- package/dist/esm/.graphclient/sources/clober-v2/types.js.map +1 -0
- package/dist/esm/abis/core/controller-abi.js +986 -0
- package/dist/esm/abis/core/controller-abi.js.map +1 -0
- package/dist/esm/abis/core/params-abi.js +59 -0
- package/dist/esm/abis/core/params-abi.js.map +1 -0
- package/dist/esm/apis/currency.js +83 -0
- package/dist/esm/apis/currency.js.map +1 -0
- package/dist/esm/apis/market.js +59 -0
- package/dist/esm/apis/market.js.map +1 -0
- package/dist/esm/apis/open-order.js +85 -0
- package/dist/esm/apis/open-order.js.map +1 -0
- package/dist/esm/approval.js +70 -0
- package/dist/esm/approval.js.map +1 -0
- package/dist/esm/call.js +535 -0
- package/dist/esm/call.js.map +1 -0
- package/dist/esm/constants/action.js +11 -0
- package/dist/esm/constants/action.js.map +1 -0
- package/dist/esm/constants/addresses.js +10 -0
- package/dist/esm/constants/addresses.js.map +1 -0
- package/dist/esm/constants/chain.js +10 -0
- package/dist/esm/constants/chain.js.map +1 -0
- package/dist/esm/constants/currency.js +9 -0
- package/dist/esm/constants/currency.js.map +1 -0
- package/dist/esm/constants/fee.js +4 -0
- package/dist/esm/constants/fee.js.map +1 -0
- package/dist/esm/constants/price.js +3 -0
- package/dist/esm/constants/price.js.map +1 -0
- package/dist/esm/constants/subgraph-url.js +5 -0
- package/dist/esm/constants/subgraph-url.js.map +1 -0
- package/dist/esm/index.js +6 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/model/book.js +126 -0
- package/dist/esm/model/book.js.map +1 -0
- package/dist/esm/model/currency.js +2 -0
- package/dist/esm/model/currency.js.map +1 -0
- package/dist/esm/model/depth.js +2 -0
- package/dist/esm/model/depth.js.map +1 -0
- package/dist/esm/model/fee-policy.js +38 -0
- package/dist/esm/model/fee-policy.js.map +1 -0
- package/dist/esm/model/market.js +211 -0
- package/dist/esm/model/market.js.map +1 -0
- package/dist/esm/model/open-order.js +2 -0
- package/dist/esm/model/open-order.js.map +1 -0
- package/dist/esm/package.json +1 -0
- package/dist/esm/signature.js +174 -0
- package/dist/esm/signature.js.map +1 -0
- package/dist/esm/tsconfig.build.tsbuildinfo +1 -0
- package/dist/esm/type.js +2 -0
- package/dist/esm/type.js.map +1 -0
- package/dist/esm/utils/approval.js +42 -0
- package/dist/esm/utils/approval.js.map +1 -0
- package/{src/utils/book-id.ts → dist/esm/utils/book-id.js} +9 -19
- package/dist/esm/utils/book-id.js.map +1 -0
- package/dist/esm/utils/build-transaction.js +27 -0
- package/dist/esm/utils/build-transaction.js.map +1 -0
- package/dist/esm/utils/decimals.js +12 -0
- package/dist/esm/utils/decimals.js.map +1 -0
- package/dist/esm/utils/market.js +49 -0
- package/dist/esm/utils/market.js.map +1 -0
- package/dist/esm/utils/math.js +78 -0
- package/dist/esm/utils/math.js.map +1 -0
- package/dist/esm/utils/prices.js +17 -0
- package/dist/esm/utils/prices.js.map +1 -0
- package/dist/esm/utils/tick.js +100 -0
- package/dist/esm/utils/tick.js.map +1 -0
- package/dist/esm/utils/time.js +5 -0
- package/dist/esm/utils/time.js.map +1 -0
- package/dist/esm/utils/unit.js +34 -0
- package/dist/esm/utils/unit.js.map +1 -0
- package/dist/esm/view.js +177 -0
- package/dist/esm/view.js.map +1 -0
- package/dist/types/.graphclient/index.d.ts +1281 -0
- package/dist/types/.graphclient/index.d.ts.map +1 -0
- package/dist/types/.graphclient/sources/clober-v2/introspectionSchema.d.ts +3 -0
- package/dist/types/.graphclient/sources/clober-v2/introspectionSchema.d.ts.map +1 -0
- package/dist/types/.graphclient/sources/clober-v2/types.d.ts +984 -0
- package/dist/types/.graphclient/sources/clober-v2/types.d.ts.map +1 -0
- package/dist/types/abis/core/controller-abi.d.ts +757 -0
- package/dist/types/abis/core/controller-abi.d.ts.map +1 -0
- package/dist/types/abis/core/params-abi.d.ts +21 -0
- package/dist/types/abis/core/params-abi.d.ts.map +1 -0
- package/dist/types/apis/currency.d.ts +4 -0
- package/dist/types/apis/currency.d.ts.map +1 -0
- package/dist/types/apis/market.d.ts +4 -0
- package/dist/types/apis/market.d.ts.map +1 -0
- package/dist/types/apis/open-order.d.ts +5 -0
- package/dist/types/apis/open-order.d.ts.map +1 -0
- package/dist/types/approval.d.ts +32 -0
- package/dist/types/approval.d.ts.map +1 -0
- package/dist/types/call.d.ts +234 -0
- package/dist/types/call.d.ts.map +1 -0
- package/dist/types/constants/action.d.ts +10 -0
- package/dist/types/constants/action.d.ts.map +1 -0
- package/dist/types/constants/addresses.d.ts +9 -0
- package/dist/types/constants/addresses.d.ts.map +1 -0
- package/dist/types/constants/chain.d.ts +9 -0
- package/dist/types/constants/chain.d.ts.map +1 -0
- package/dist/types/constants/currency.d.ts +8 -0
- package/dist/types/constants/currency.d.ts.map +1 -0
- package/dist/types/constants/fee.d.ts +4 -0
- package/dist/types/constants/fee.d.ts.map +1 -0
- package/dist/types/constants/price.d.ts +3 -0
- package/dist/types/constants/price.d.ts.map +1 -0
- package/dist/types/constants/subgraph-url.d.ts +5 -0
- package/dist/types/constants/subgraph-url.d.ts.map +1 -0
- package/dist/types/index.d.ts +6 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/model/book.d.ts +31 -0
- package/dist/types/model/book.d.ts.map +1 -0
- package/dist/types/model/currency.d.ts +7 -0
- package/dist/types/model/currency.d.ts.map +1 -0
- package/dist/types/model/depth.d.ts +11 -0
- package/dist/types/model/depth.d.ts.map +1 -0
- package/dist/types/model/fee-policy.d.ts +15 -0
- package/dist/types/model/fee-policy.d.ts.map +1 -0
- package/dist/types/model/market.d.ts +44 -0
- package/dist/types/model/market.d.ts.map +1 -0
- package/dist/types/model/open-order.d.ts +28 -0
- package/dist/types/model/open-order.d.ts.map +1 -0
- package/dist/types/signature.d.ts +40 -0
- package/dist/types/signature.d.ts.map +1 -0
- package/dist/types/type.d.ts +34 -0
- package/dist/types/type.d.ts.map +1 -0
- package/dist/types/utils/approval.d.ts +3 -0
- package/dist/types/utils/approval.d.ts.map +1 -0
- package/dist/types/utils/book-id.d.ts +2 -0
- package/dist/types/utils/book-id.d.ts.map +1 -0
- package/dist/types/utils/build-transaction.d.ts +5 -0
- package/dist/types/utils/build-transaction.d.ts.map +1 -0
- package/dist/types/utils/decimals.d.ts +3 -0
- package/dist/types/utils/decimals.d.ts.map +1 -0
- package/dist/types/utils/market.d.ts +7 -0
- package/dist/types/utils/market.d.ts.map +1 -0
- package/dist/types/utils/math.d.ts +3 -0
- package/dist/types/utils/math.d.ts.map +1 -0
- package/dist/types/utils/prices.d.ts +3 -0
- package/dist/types/utils/prices.d.ts.map +1 -0
- package/dist/types/utils/tick.d.ts +4 -0
- package/dist/types/utils/tick.d.ts.map +1 -0
- package/dist/types/utils/time.d.ts +2 -0
- package/dist/types/utils/time.d.ts.map +1 -0
- package/dist/types/utils/unit.d.ts +4 -0
- package/dist/types/utils/unit.d.ts.map +1 -0
- package/dist/types/view.d.ts +129 -0
- package/dist/types/view.d.ts.map +1 -0
- package/package.json +14 -6
- package/.eslintignore +0 -1
- package/.eslintrc.yaml +0 -34
- package/.github/workflows/ci.yaml +0 -88
- package/.github/workflows/deployer.yaml +0 -19
- package/.nvmrc +0 -1
- package/.prettierignore +0 -6
- package/.prettierrc +0 -7
- package/src/.graphclient/index.ts +0 -1695
- package/src/.graphclient/schema.graphql +0 -1116
- package/src/.graphclient/sources/clober-v2/introspectionSchema.ts +0 -14481
- package/src/.graphclient/sources/clober-v2/schema.graphql +0 -1116
- package/src/.graphclient/sources/clober-v2/types.ts +0 -1133
- package/src/.graphclientrc.yml +0 -12
- package/src/abis/core/controller-abi.ts +0 -985
- package/src/abis/core/params-abi.ts +0 -59
- package/src/apis/currency.ts +0 -92
- package/src/apis/graphql/books.graphql +0 -25
- package/src/apis/graphql/open-order.graphql +0 -29
- package/src/apis/graphql/open-orders.graphql +0 -29
- package/src/apis/market.ts +0 -85
- package/src/apis/open-order.ts +0 -145
- package/src/approval.ts +0 -82
- package/src/call.ts +0 -705
- package/src/constants/action.ts +0 -9
- package/src/constants/addresses.ts +0 -17
- package/src/constants/chain.ts +0 -12
- package/src/constants/currency.ts +0 -15
- package/src/constants/fee.ts +0 -4
- package/src/constants/price.ts +0 -3
- package/src/constants/subgraph-url.ts +0 -8
- package/src/index.ts +0 -5
- package/src/model/book.ts +0 -166
- package/src/model/currency.ts +0 -6
- package/src/model/depth.ts +0 -11
- package/src/model/fee-policy.ts +0 -51
- package/src/model/market.ts +0 -320
- package/src/model/open-order.ts +0 -16
- package/src/signature.ts +0 -196
- package/src/type.ts +0 -38
- package/src/utils/approval.ts +0 -48
- package/src/utils/build-transaction.ts +0 -39
- package/src/utils/decimals.ts +0 -22
- package/src/utils/market.ts +0 -74
- package/src/utils/math.ts +0 -117
- package/src/utils/prices.ts +0 -29
- package/src/utils/tick.ts +0 -104
- package/src/utils/time.ts +0 -6
- package/src/utils/unit.ts +0 -43
- package/src/view.ts +0 -258
- package/test/book-id.test.ts +0 -101
- package/test/fee-policy.test.ts +0 -228
- package/test/get-expected-input.test.ts +0 -206
- package/test/get-expected-output.test.ts +0 -206
- package/test/limit-order.test.ts +0 -279
- package/test/market-order.test.ts +0 -245
- package/test/market.test.ts +0 -68
- package/test/math.test.ts +0 -91
- package/test/open-order.test.ts +0 -112
- package/test/open.test.ts +0 -15
- package/test/tick.test.ts +0 -230
- package/test/tsconfig.json +0 -12
- package/test/utils/chain.ts +0 -12
- package/test/utils/constants.ts +0 -25
- package/test/utils/currency.ts +0 -44
- package/test/utils/depth.ts +0 -148
- package/test/utils/test-chain.ts +0 -26
- package/test/vitest.config.ts +0 -15
- package/tsconfig.base.json +0 -37
- package/tsconfig.build.json +0 -9
- package/tsconfig.json +0 -9
package/dist/cjs/view.js
ADDED
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getOpenOrders = exports.getOpenOrder = exports.getExpectedInput = exports.getExpectedOutput = exports.getMarket = void 0;
|
|
4
|
+
const viem_1 = require("viem");
|
|
5
|
+
const market_1 = require("./apis/market");
|
|
6
|
+
const prices_1 = require("./utils/prices");
|
|
7
|
+
const price_1 = require("./constants/price");
|
|
8
|
+
const open_order_1 = require("./apis/open-order");
|
|
9
|
+
/**
|
|
10
|
+
* Get market information by chain id and token addresses
|
|
11
|
+
* @param chainId - chain id from {@link CHAIN_IDS}
|
|
12
|
+
* @param token0 - token0 address
|
|
13
|
+
* @param token1 - token1 address
|
|
14
|
+
* @param options
|
|
15
|
+
* @param options.rpcUrl - RPC URL of the blockchain
|
|
16
|
+
* @returns A market {@link Market}
|
|
17
|
+
*
|
|
18
|
+
* @example
|
|
19
|
+
* import { getMarket } from '@clober/v2-sdk'
|
|
20
|
+
*
|
|
21
|
+
* const market = await getMarket(
|
|
22
|
+
* 421614,
|
|
23
|
+
* '0x00bfd44e79fb7f6dd5887a9426c8ef85a0cd23e0',
|
|
24
|
+
* '0x0000000000000000000000000000000000000000',
|
|
25
|
+
* )
|
|
26
|
+
*/
|
|
27
|
+
const getMarket = async (chainId, token0, token1, options) => {
|
|
28
|
+
if ((0, viem_1.isAddressEqual)(token0, token1)) {
|
|
29
|
+
throw new Error('Token0 and token1 must be different');
|
|
30
|
+
}
|
|
31
|
+
const market = await (0, market_1.fetchMarket)(chainId, [token0, token1], options?.rpcUrl);
|
|
32
|
+
return {
|
|
33
|
+
chainId,
|
|
34
|
+
quote: market.quote,
|
|
35
|
+
base: market.base,
|
|
36
|
+
makerFee: market.makerFee,
|
|
37
|
+
takerFee: market.takerFee,
|
|
38
|
+
bids: market.bids,
|
|
39
|
+
bidBookOpen: market.bidBookOpen,
|
|
40
|
+
asks: market.asks,
|
|
41
|
+
askBookOpen: market.askBookOpen,
|
|
42
|
+
};
|
|
43
|
+
};
|
|
44
|
+
exports.getMarket = getMarket;
|
|
45
|
+
/**
|
|
46
|
+
* Calculates the expected output for a given input amount, based on the provided market data.
|
|
47
|
+
*
|
|
48
|
+
* @param chainId The chain ID of the blockchain.
|
|
49
|
+
* @param inputToken The address of the input token.
|
|
50
|
+
* @param outputToken The address of the output token.
|
|
51
|
+
* @param amountIn The amount of expected input amount. (ex 1.2 ETH -> 1.2)
|
|
52
|
+
* @param options
|
|
53
|
+
* @param options.limitPrice The maximum limit price to spend.
|
|
54
|
+
* @param options.rpcUrl The RPC URL of the blockchain.
|
|
55
|
+
* @returns A Promise resolving to an object containing the taken amount, spend amount and result of the calculation.
|
|
56
|
+
* @example
|
|
57
|
+
* import { getExpectedOutput } from '@clober/v2-sdk'
|
|
58
|
+
*
|
|
59
|
+
* const { takenAmount, spendAmount } = await getExpectedOutput(
|
|
60
|
+
* 421614,
|
|
61
|
+
* '0x00bfd44e79fb7f6dd5887a9426c8ef85a0cd23e0',
|
|
62
|
+
* '0x0000000000000000000000000000000000000000',
|
|
63
|
+
* '1000.123', // spend 1000.123 USDC
|
|
64
|
+
* )
|
|
65
|
+
*/
|
|
66
|
+
const getExpectedOutput = async (chainId, inputToken, outputToken, amountIn, options) => {
|
|
67
|
+
const market = await (0, market_1.fetchMarket)(chainId, [inputToken, outputToken], options?.rpcUrl);
|
|
68
|
+
const isBid = (0, viem_1.isAddressEqual)(market.quote.address, inputToken);
|
|
69
|
+
const rawLimitPrice = options && options.limitPrice
|
|
70
|
+
? (0, prices_1.parsePrice)(Number(options.limitPrice), market.quote.decimals, market.base.decimals)
|
|
71
|
+
: isBid
|
|
72
|
+
? price_1.MAX_PRICE
|
|
73
|
+
: 0n;
|
|
74
|
+
const inputCurrency = isBid ? market.quote : market.base;
|
|
75
|
+
const result = market.spend({
|
|
76
|
+
spendBase: !isBid,
|
|
77
|
+
limitPrice: rawLimitPrice,
|
|
78
|
+
amountIn: (0, viem_1.parseUnits)(amountIn, inputCurrency.decimals),
|
|
79
|
+
});
|
|
80
|
+
const { takenAmount, spendAmount } = Object.values(result).reduce((acc, { takenAmount, spendAmount }) => ({
|
|
81
|
+
takenAmount: acc.takenAmount + takenAmount,
|
|
82
|
+
spendAmount: acc.spendAmount + spendAmount,
|
|
83
|
+
}), { takenAmount: 0n, spendAmount: 0n });
|
|
84
|
+
return {
|
|
85
|
+
takenAmount: (0, viem_1.formatUnits)(takenAmount, isBid ? market.base.decimals : market.quote.decimals),
|
|
86
|
+
spendAmount: (0, viem_1.formatUnits)(spendAmount, isBid ? market.quote.decimals : market.base.decimals),
|
|
87
|
+
result: Object.entries(result).map(([bookId, { takenAmount, spendAmount }]) => ({
|
|
88
|
+
bookId: BigInt(bookId),
|
|
89
|
+
takenAmount,
|
|
90
|
+
spendAmount,
|
|
91
|
+
})),
|
|
92
|
+
};
|
|
93
|
+
};
|
|
94
|
+
exports.getExpectedOutput = getExpectedOutput;
|
|
95
|
+
/**
|
|
96
|
+
* Calculates the expected input for a given output amount, based on the provided market data.
|
|
97
|
+
*
|
|
98
|
+
* @param chainId The chain ID of the blockchain.
|
|
99
|
+
* @param inputToken The address of the input token.
|
|
100
|
+
* @param outputToken The address of the output token.
|
|
101
|
+
* @param amountOut The amount of expected output amount. (ex 1.2 ETH -> 1.2)
|
|
102
|
+
* @param options
|
|
103
|
+
* @param options.limitPrice The maximum limit price to take.
|
|
104
|
+
* @param options.rpcUrl The RPC URL of the blockchain.
|
|
105
|
+
* @returns A Promise resolving to an object containing the taken amount, spend amount and result of the calculation.
|
|
106
|
+
* @example
|
|
107
|
+
* import { getExpectedInput } from '@clober/v2-sdk'
|
|
108
|
+
*
|
|
109
|
+
* const { takenAmount, spendAmount } = await getExpectedInput(
|
|
110
|
+
* 421614,
|
|
111
|
+
* '0x00bfd44e79fb7f6dd5887a9426c8ef85a0cd23e0',
|
|
112
|
+
* '0x0000000000000000000000000000000000000000',
|
|
113
|
+
* '0.1', // take 0.1 ETH
|
|
114
|
+
* )
|
|
115
|
+
*/
|
|
116
|
+
const getExpectedInput = async (chainId, inputToken, outputToken, amountOut, options) => {
|
|
117
|
+
const market = await (0, market_1.fetchMarket)(chainId, [inputToken, outputToken], options?.rpcUrl);
|
|
118
|
+
const isBid = (0, viem_1.isAddressEqual)(market.quote.address, inputToken);
|
|
119
|
+
const rawLimitPrice = options && options.limitPrice
|
|
120
|
+
? (0, prices_1.parsePrice)(Number(options.limitPrice), market.quote.decimals, market.base.decimals)
|
|
121
|
+
: isBid
|
|
122
|
+
? price_1.MAX_PRICE
|
|
123
|
+
: 0n;
|
|
124
|
+
const outputCurrency = isBid ? market.base : market.quote;
|
|
125
|
+
const result = market.take({
|
|
126
|
+
takeQuote: !isBid,
|
|
127
|
+
limitPrice: rawLimitPrice,
|
|
128
|
+
amountOut: (0, viem_1.parseUnits)(amountOut, outputCurrency.decimals),
|
|
129
|
+
});
|
|
130
|
+
const { takenAmount, spendAmount } = Object.values(result).reduce((acc, { takenAmount, spendAmount }) => ({
|
|
131
|
+
takenAmount: acc.takenAmount + takenAmount,
|
|
132
|
+
spendAmount: acc.spendAmount + spendAmount,
|
|
133
|
+
}), { takenAmount: 0n, spendAmount: 0n });
|
|
134
|
+
return {
|
|
135
|
+
takenAmount: (0, viem_1.formatUnits)(takenAmount, isBid ? market.base.decimals : market.quote.decimals),
|
|
136
|
+
spendAmount: (0, viem_1.formatUnits)(spendAmount, isBid ? market.quote.decimals : market.base.decimals),
|
|
137
|
+
result: Object.entries(result).map(([bookId, { takenAmount, spendAmount }]) => ({
|
|
138
|
+
bookId: BigInt(bookId),
|
|
139
|
+
takenAmount,
|
|
140
|
+
spendAmount,
|
|
141
|
+
})),
|
|
142
|
+
};
|
|
143
|
+
};
|
|
144
|
+
exports.getExpectedInput = getExpectedInput;
|
|
145
|
+
/**
|
|
146
|
+
* Retrieves the open order with the specified ID on the given chain.
|
|
147
|
+
*
|
|
148
|
+
* @param {CHAIN_IDS} chainId The chain ID.
|
|
149
|
+
* @param {string} id The ID of the open order.
|
|
150
|
+
* @param options
|
|
151
|
+
* @param options.rpcUrl The RPC URL of the blockchain.
|
|
152
|
+
* @returns {Promise<OpenOrder>} Promise resolving to the open order object, or undefined if not found.
|
|
153
|
+
* @example
|
|
154
|
+
* import { getOpenOrder } from '@clober/v2-sdk'
|
|
155
|
+
*
|
|
156
|
+
* const openOrder = await getOpenOrder(
|
|
157
|
+
* 421614,
|
|
158
|
+
* '46223845323662364279893361453861711542636620039907198451770258805035840307200'
|
|
159
|
+
* )
|
|
160
|
+
*/
|
|
161
|
+
const getOpenOrder = async (chainId, id, options) => {
|
|
162
|
+
return (0, open_order_1.fetchOpenOrder)(chainId, id, options?.rpcUrl);
|
|
163
|
+
};
|
|
164
|
+
exports.getOpenOrder = getOpenOrder;
|
|
165
|
+
/**
|
|
166
|
+
* Retrieves open orders for the specified user on the given chain.
|
|
167
|
+
*
|
|
168
|
+
* @param {CHAIN_IDS} chainId The chain ID.
|
|
169
|
+
* @param {`0x${string}`} userAddress The Ethereum address of the user.
|
|
170
|
+
* @param options
|
|
171
|
+
* @param options.rpcUrl The RPC URL of the blockchain.
|
|
172
|
+
* @returns {Promise<OpenOrder[]>} Promise resolving to an array of open orders.
|
|
173
|
+
* @example
|
|
174
|
+
* import { getOpenOrders } from '@clober/v2-sdk'
|
|
175
|
+
*
|
|
176
|
+
* const openOrders = await getOpenOrders(
|
|
177
|
+
* 421614,
|
|
178
|
+
* '0x5F79EE8f8fA862E98201120d83c4eC39D9468D49'
|
|
179
|
+
* )
|
|
180
|
+
*/
|
|
181
|
+
const getOpenOrders = async (chainId, userAddress, options) => {
|
|
182
|
+
return (0, open_order_1.fetchOpenOrders)(chainId, userAddress, options?.rpcUrl);
|
|
183
|
+
};
|
|
184
|
+
exports.getOpenOrders = getOpenOrders;
|
|
185
|
+
//# sourceMappingURL=view.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"view.js","sourceRoot":"","sources":["../../src/view.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,233 @@
|
|
|
1
|
+
import { gql } from '@graphql-mesh/utils';
|
|
2
|
+
import { PubSub } from '@graphql-mesh/utils';
|
|
3
|
+
import { DefaultLogger } from '@graphql-mesh/utils';
|
|
4
|
+
import MeshCache from "@graphql-mesh/cache-localforage";
|
|
5
|
+
import { fetch as fetchFn } from '@whatwg-node/fetch';
|
|
6
|
+
import GraphqlHandler from "@graphql-mesh/graphql";
|
|
7
|
+
import BareMerger from "@graphql-mesh/merger-bare";
|
|
8
|
+
import { printWithCache } from '@graphql-mesh/utils';
|
|
9
|
+
import { createMeshHTTPHandler } from '@graphql-mesh/http';
|
|
10
|
+
import { getMesh } from '@graphql-mesh/runtime';
|
|
11
|
+
import { MeshStore, FsStoreStorageAdapter } from '@graphql-mesh/store';
|
|
12
|
+
import { path as pathModule } from '@graphql-mesh/cross-helpers';
|
|
13
|
+
import * as importedModule$0 from "./sources/clober-v2/introspectionSchema";
|
|
14
|
+
const baseDir = pathModule.join(typeof __dirname === 'string' ? __dirname : '/', '..');
|
|
15
|
+
const importFn = (moduleId) => {
|
|
16
|
+
const relativeModuleId = (pathModule.isAbsolute(moduleId) ? pathModule.relative(baseDir, moduleId) : moduleId).split('\\').join('/').replace(baseDir + '/', '');
|
|
17
|
+
switch (relativeModuleId) {
|
|
18
|
+
case ".graphclient/sources/clober-v2/introspectionSchema":
|
|
19
|
+
return Promise.resolve(importedModule$0);
|
|
20
|
+
default:
|
|
21
|
+
return Promise.reject(new Error(`Cannot find module '${relativeModuleId}'.`));
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
const rootStore = new MeshStore('.graphclient', new FsStoreStorageAdapter({
|
|
25
|
+
cwd: baseDir,
|
|
26
|
+
importFn,
|
|
27
|
+
fileType: "ts",
|
|
28
|
+
}), {
|
|
29
|
+
readonly: true,
|
|
30
|
+
validate: false
|
|
31
|
+
});
|
|
32
|
+
export const rawServeConfig = undefined;
|
|
33
|
+
export async function getMeshOptions() {
|
|
34
|
+
const pubsub = new PubSub();
|
|
35
|
+
const sourcesStore = rootStore.child('sources');
|
|
36
|
+
const logger = new DefaultLogger("GraphClient");
|
|
37
|
+
const cache = new MeshCache({
|
|
38
|
+
...{},
|
|
39
|
+
importFn,
|
|
40
|
+
store: rootStore.child('cache'),
|
|
41
|
+
pubsub,
|
|
42
|
+
logger,
|
|
43
|
+
});
|
|
44
|
+
const sources = [];
|
|
45
|
+
const transforms = [];
|
|
46
|
+
const additionalEnvelopPlugins = [];
|
|
47
|
+
const cloberV2Transforms = [];
|
|
48
|
+
const additionalTypeDefs = [];
|
|
49
|
+
const cloberV2Handler = new GraphqlHandler({
|
|
50
|
+
name: "clober-v2",
|
|
51
|
+
config: { "endpoint": "{context.url:https://subgraph.satsuma-prod.com/f6a8c4889b7b/clober/v2-core-subgraph/api}" },
|
|
52
|
+
baseDir,
|
|
53
|
+
cache,
|
|
54
|
+
pubsub,
|
|
55
|
+
store: sourcesStore.child("clober-v2"),
|
|
56
|
+
logger: logger.child("clober-v2"),
|
|
57
|
+
importFn,
|
|
58
|
+
});
|
|
59
|
+
sources[0] = {
|
|
60
|
+
name: 'clober-v2',
|
|
61
|
+
handler: cloberV2Handler,
|
|
62
|
+
transforms: cloberV2Transforms
|
|
63
|
+
};
|
|
64
|
+
const additionalResolvers = [];
|
|
65
|
+
const merger = new BareMerger({
|
|
66
|
+
cache,
|
|
67
|
+
pubsub,
|
|
68
|
+
logger: logger.child('bareMerger'),
|
|
69
|
+
store: rootStore.child('bareMerger')
|
|
70
|
+
});
|
|
71
|
+
return {
|
|
72
|
+
sources,
|
|
73
|
+
transforms,
|
|
74
|
+
additionalTypeDefs,
|
|
75
|
+
additionalResolvers,
|
|
76
|
+
cache,
|
|
77
|
+
pubsub,
|
|
78
|
+
merger,
|
|
79
|
+
logger,
|
|
80
|
+
additionalEnvelopPlugins,
|
|
81
|
+
get documents() {
|
|
82
|
+
return [
|
|
83
|
+
{
|
|
84
|
+
document: GetBooksDocument,
|
|
85
|
+
get rawSDL() {
|
|
86
|
+
return printWithCache(GetBooksDocument);
|
|
87
|
+
},
|
|
88
|
+
location: 'GetBooksDocument.graphql'
|
|
89
|
+
}, {
|
|
90
|
+
document: GetOpenOrderDocument,
|
|
91
|
+
get rawSDL() {
|
|
92
|
+
return printWithCache(GetOpenOrderDocument);
|
|
93
|
+
},
|
|
94
|
+
location: 'GetOpenOrderDocument.graphql'
|
|
95
|
+
}, {
|
|
96
|
+
document: GetOpenOrdersDocument,
|
|
97
|
+
get rawSDL() {
|
|
98
|
+
return printWithCache(GetOpenOrdersDocument);
|
|
99
|
+
},
|
|
100
|
+
location: 'GetOpenOrdersDocument.graphql'
|
|
101
|
+
}
|
|
102
|
+
];
|
|
103
|
+
},
|
|
104
|
+
fetchFn,
|
|
105
|
+
};
|
|
106
|
+
}
|
|
107
|
+
export function createBuiltMeshHTTPHandler() {
|
|
108
|
+
return createMeshHTTPHandler({
|
|
109
|
+
baseDir,
|
|
110
|
+
getBuiltMesh: getBuiltGraphClient,
|
|
111
|
+
rawServeConfig: undefined,
|
|
112
|
+
});
|
|
113
|
+
}
|
|
114
|
+
let meshInstance$;
|
|
115
|
+
export function getBuiltGraphClient() {
|
|
116
|
+
if (meshInstance$ == null) {
|
|
117
|
+
meshInstance$ = getMeshOptions().then(meshOptions => getMesh(meshOptions)).then(mesh => {
|
|
118
|
+
const id = mesh.pubsub.subscribe('destroy', () => {
|
|
119
|
+
meshInstance$ = undefined;
|
|
120
|
+
mesh.pubsub.unsubscribe(id);
|
|
121
|
+
});
|
|
122
|
+
return mesh;
|
|
123
|
+
});
|
|
124
|
+
}
|
|
125
|
+
return meshInstance$;
|
|
126
|
+
}
|
|
127
|
+
export const execute = (...args) => getBuiltGraphClient().then(({ execute }) => execute(...args));
|
|
128
|
+
export const subscribe = (...args) => getBuiltGraphClient().then(({ subscribe }) => subscribe(...args));
|
|
129
|
+
export function getBuiltGraphSDK(globalContext) {
|
|
130
|
+
const sdkRequester$ = getBuiltGraphClient().then(({ sdkRequesterFactory }) => sdkRequesterFactory(globalContext));
|
|
131
|
+
return getSdk((...args) => sdkRequester$.then(sdkRequester => sdkRequester(...args)));
|
|
132
|
+
}
|
|
133
|
+
export const getBooksDocument = gql `
|
|
134
|
+
query getBooks($baseTokenAddress: String!, $quoteTokenAddress: String!) {
|
|
135
|
+
books(
|
|
136
|
+
where: {base: $baseTokenAddress, quote: $quoteTokenAddress, makerPolicy: "8888308", takerPolicy: "8889608", hooks: "0x0000000000000000000000000000000000000000"}
|
|
137
|
+
) {
|
|
138
|
+
id
|
|
139
|
+
base {
|
|
140
|
+
id
|
|
141
|
+
name
|
|
142
|
+
symbol
|
|
143
|
+
decimals
|
|
144
|
+
}
|
|
145
|
+
quote {
|
|
146
|
+
id
|
|
147
|
+
name
|
|
148
|
+
symbol
|
|
149
|
+
decimals
|
|
150
|
+
}
|
|
151
|
+
unit
|
|
152
|
+
depths {
|
|
153
|
+
tick
|
|
154
|
+
price
|
|
155
|
+
rawAmount
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
`;
|
|
160
|
+
export const getOpenOrderDocument = gql `
|
|
161
|
+
query getOpenOrder($orderId: ID!) {
|
|
162
|
+
openOrder(id: $orderId) {
|
|
163
|
+
id
|
|
164
|
+
book {
|
|
165
|
+
id
|
|
166
|
+
base {
|
|
167
|
+
id
|
|
168
|
+
name
|
|
169
|
+
symbol
|
|
170
|
+
decimals
|
|
171
|
+
}
|
|
172
|
+
quote {
|
|
173
|
+
id
|
|
174
|
+
name
|
|
175
|
+
symbol
|
|
176
|
+
decimals
|
|
177
|
+
}
|
|
178
|
+
unit
|
|
179
|
+
}
|
|
180
|
+
tick
|
|
181
|
+
txHash
|
|
182
|
+
createdAt
|
|
183
|
+
rawAmount
|
|
184
|
+
rawFilledAmount
|
|
185
|
+
rawClaimedAmount
|
|
186
|
+
rawClaimableAmount
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
`;
|
|
190
|
+
export const getOpenOrdersDocument = gql `
|
|
191
|
+
query getOpenOrders($userAddress: String!) {
|
|
192
|
+
openOrders(where: {user: $userAddress}) {
|
|
193
|
+
id
|
|
194
|
+
book {
|
|
195
|
+
id
|
|
196
|
+
base {
|
|
197
|
+
id
|
|
198
|
+
name
|
|
199
|
+
symbol
|
|
200
|
+
decimals
|
|
201
|
+
}
|
|
202
|
+
quote {
|
|
203
|
+
id
|
|
204
|
+
name
|
|
205
|
+
symbol
|
|
206
|
+
decimals
|
|
207
|
+
}
|
|
208
|
+
unit
|
|
209
|
+
}
|
|
210
|
+
tick
|
|
211
|
+
txHash
|
|
212
|
+
createdAt
|
|
213
|
+
rawAmount
|
|
214
|
+
rawFilledAmount
|
|
215
|
+
rawClaimedAmount
|
|
216
|
+
rawClaimableAmount
|
|
217
|
+
}
|
|
218
|
+
}
|
|
219
|
+
`;
|
|
220
|
+
export function getSdk(requester) {
|
|
221
|
+
return {
|
|
222
|
+
getBooks(variables, options) {
|
|
223
|
+
return requester(getBooksDocument, variables, options);
|
|
224
|
+
},
|
|
225
|
+
getOpenOrder(variables, options) {
|
|
226
|
+
return requester(getOpenOrderDocument, variables, options);
|
|
227
|
+
},
|
|
228
|
+
getOpenOrders(variables, options) {
|
|
229
|
+
return requester(getOpenOrdersDocument, variables, options);
|
|
230
|
+
}
|
|
231
|
+
};
|
|
232
|
+
}
|
|
233
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/.graphclient/index.ts"],"names":[],"mappings":"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"}
|