@clober/v2-sdk 1.0.0-rc.4 → 1.0.0-rc.41
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/calls/index.js +4 -3
- package/dist/cjs/calls/index.js.map +1 -1
- package/dist/cjs/calls/market/limit.js +5 -0
- package/dist/cjs/calls/market/limit.js.map +1 -1
- package/dist/cjs/calls/pool/burn.js +2 -2
- package/dist/cjs/calls/pool/market-making/adjust.js +2 -2
- package/dist/cjs/calls/pool/market-making/pause.js +2 -2
- package/dist/cjs/calls/pool/market-making/refill.js +2 -2
- package/dist/cjs/calls/pool/market-making/resume.js +2 -2
- package/dist/cjs/calls/pool/mint.js +2 -2
- package/dist/cjs/calls/pool/open.js +2 -2
- package/dist/cjs/calls/pool/open.js.map +1 -1
- package/dist/cjs/calls/pool/wrap.js +105 -0
- package/dist/cjs/calls/pool/wrap.js.map +1 -0
- package/dist/cjs/constants/abis/core/controller-abi.js +24 -1
- package/dist/cjs/constants/abis/core/controller-abi.js.map +1 -1
- package/dist/cjs/constants/abis/rebalancer/wrapped-6909-factory-abi.js +107 -0
- package/dist/cjs/constants/abis/rebalancer/wrapped-6909-factory-abi.js.map +1 -0
- package/dist/cjs/constants/chain-configs/addresses.js +26 -21
- package/dist/cjs/constants/chain-configs/addresses.js.map +1 -1
- package/dist/cjs/constants/chain-configs/chain.js +2 -2
- package/dist/cjs/constants/chain-configs/chain.js.map +1 -1
- package/dist/cjs/constants/chain-configs/currency.js +94 -24
- package/dist/cjs/constants/chain-configs/currency.js.map +1 -1
- package/dist/cjs/constants/chain-configs/fee.js +2 -2
- package/dist/cjs/constants/chain-configs/fee.js.map +1 -1
- package/dist/cjs/constants/chain-configs/subgraph.js +2 -2
- package/dist/cjs/constants/chain-configs/subgraph.js.map +1 -1
- package/dist/cjs/constants/networks/test-chain.js +1 -24
- package/dist/cjs/constants/networks/test-chain.js.map +1 -1
- package/dist/cjs/entities/analytics/apis/index.js +83 -16
- package/dist/cjs/entities/analytics/apis/index.js.map +1 -1
- package/dist/cjs/entities/book/apis/index.js +46 -15
- package/dist/cjs/entities/book/apis/index.js.map +1 -1
- package/dist/cjs/entities/currency/apis/total-supply.js +3 -6
- package/dist/cjs/entities/currency/apis/total-supply.js.map +1 -1
- package/dist/cjs/entities/market/apis/index.js +3 -3
- package/dist/cjs/entities/market/apis/index.js.map +1 -1
- package/dist/cjs/entities/market/apis/snapshot.js +234 -80
- package/dist/cjs/entities/market/apis/snapshot.js.map +1 -1
- package/dist/cjs/entities/market/utils/market-id.js +1 -1
- package/dist/cjs/entities/market/utils/market-id.js.map +1 -1
- package/dist/cjs/entities/pool/apis/index.js +1 -0
- package/dist/cjs/entities/pool/apis/index.js.map +1 -1
- package/dist/cjs/entities/pool/apis/snapshot.js +23 -18
- package/dist/cjs/entities/pool/apis/snapshot.js.map +1 -1
- package/dist/cjs/entities/pool/model.js +9 -1
- package/dist/cjs/entities/pool/model.js.map +1 -1
- package/dist/cjs/types/index.js.map +1 -1
- package/dist/cjs/utils/bigint.js +4 -1
- package/dist/cjs/utils/bigint.js.map +1 -1
- package/dist/cjs/views/analytics.js +9 -1
- package/dist/cjs/views/analytics.js.map +1 -1
- package/dist/cjs/views/currency.js +5 -1
- package/dist/cjs/views/currency.js.map +1 -1
- package/dist/cjs/views/index.js +5 -1
- package/dist/cjs/views/index.js.map +1 -1
- package/dist/cjs/views/market/chart-log.js +2 -2
- package/dist/cjs/views/market/index.js +1 -1
- package/dist/cjs/views/market/index.js.map +1 -1
- package/dist/cjs/views/market/snapshot.js.map +1 -1
- package/dist/cjs/views/subgraph.js +12 -2
- package/dist/cjs/views/subgraph.js.map +1 -1
- package/dist/esm/calls/index.js +1 -1
- package/dist/esm/calls/index.js.map +1 -1
- package/dist/esm/calls/market/limit.js +6 -1
- package/dist/esm/calls/market/limit.js.map +1 -1
- package/dist/esm/calls/pool/burn.js +2 -2
- package/dist/esm/calls/pool/market-making/adjust.js +2 -2
- package/dist/esm/calls/pool/market-making/pause.js +2 -2
- package/dist/esm/calls/pool/market-making/refill.js +2 -2
- package/dist/esm/calls/pool/market-making/resume.js +2 -2
- package/dist/esm/calls/pool/mint.js +2 -2
- package/dist/esm/calls/pool/open.js +7 -6
- package/dist/esm/calls/pool/open.js.map +1 -1
- package/dist/esm/calls/pool/wrap.js +146 -0
- package/dist/esm/calls/pool/wrap.js.map +1 -0
- package/dist/esm/constants/abis/core/controller-abi.js +24 -1
- package/dist/esm/constants/abis/core/controller-abi.js.map +1 -1
- package/dist/esm/constants/abis/rebalancer/wrapped-6909-factory-abi.js +104 -0
- package/dist/esm/constants/abis/rebalancer/wrapped-6909-factory-abi.js.map +1 -0
- package/dist/esm/constants/chain-configs/addresses.js +29 -33
- package/dist/esm/constants/chain-configs/addresses.js.map +1 -1
- package/dist/esm/constants/chain-configs/chain.js +4 -6
- package/dist/esm/constants/chain-configs/chain.js.map +1 -1
- package/dist/esm/constants/chain-configs/currency.js +96 -38
- package/dist/esm/constants/chain-configs/currency.js.map +1 -1
- package/dist/esm/constants/chain-configs/fee.js +2 -4
- package/dist/esm/constants/chain-configs/fee.js.map +1 -1
- package/dist/esm/constants/chain-configs/subgraph.js +2 -4
- package/dist/esm/constants/chain-configs/subgraph.js.map +1 -1
- package/dist/esm/constants/networks/test-chain.js +0 -23
- package/dist/esm/constants/networks/test-chain.js.map +1 -1
- package/dist/esm/entities/analytics/apis/index.js +80 -15
- package/dist/esm/entities/analytics/apis/index.js.map +1 -1
- package/dist/esm/entities/book/apis/index.js +46 -15
- package/dist/esm/entities/book/apis/index.js.map +1 -1
- package/dist/esm/entities/currency/apis/total-supply.js +4 -7
- package/dist/esm/entities/currency/apis/total-supply.js.map +1 -1
- package/dist/esm/entities/market/apis/index.js +3 -3
- package/dist/esm/entities/market/apis/index.js.map +1 -1
- package/dist/esm/entities/market/apis/snapshot.js +236 -81
- package/dist/esm/entities/market/apis/snapshot.js.map +1 -1
- package/dist/esm/entities/market/utils/market-id.js +2 -2
- package/dist/esm/entities/market/utils/market-id.js.map +1 -1
- package/dist/esm/entities/pool/apis/index.js +1 -0
- package/dist/esm/entities/pool/apis/index.js.map +1 -1
- package/dist/esm/entities/pool/apis/snapshot.js +24 -19
- package/dist/esm/entities/pool/apis/snapshot.js.map +1 -1
- package/dist/esm/entities/pool/model.js +9 -1
- package/dist/esm/entities/pool/model.js.map +1 -1
- package/dist/esm/types/index.js.map +1 -1
- package/dist/esm/utils/bigint.js +2 -0
- package/dist/esm/utils/bigint.js.map +1 -1
- package/dist/esm/views/analytics.js +7 -1
- package/dist/esm/views/analytics.js.map +1 -1
- package/dist/esm/views/currency.js +4 -1
- package/dist/esm/views/currency.js.map +1 -1
- package/dist/esm/views/index.js +3 -3
- package/dist/esm/views/index.js.map +1 -1
- package/dist/esm/views/market/chart-log.js +2 -2
- package/dist/esm/views/market/index.js +1 -2
- package/dist/esm/views/market/index.js.map +1 -1
- package/dist/esm/views/market/snapshot.js.map +1 -1
- package/dist/esm/views/subgraph.js +22 -1
- package/dist/esm/views/subgraph.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/types/calls/index.d.ts +1 -1
- package/dist/types/calls/index.d.ts.map +1 -1
- package/dist/types/calls/market/limit.d.ts +1 -0
- package/dist/types/calls/market/limit.d.ts.map +1 -1
- package/dist/types/calls/pool/open.d.ts +8 -7
- package/dist/types/calls/pool/open.d.ts.map +1 -1
- package/dist/types/calls/pool/wrap.d.ts +77 -0
- package/dist/types/calls/pool/wrap.d.ts.map +1 -0
- package/dist/types/constants/abis/core/controller-abi.d.ts +19 -1
- package/dist/types/constants/abis/core/controller-abi.d.ts.map +1 -1
- package/dist/types/constants/abis/rebalancer/wrapped-6909-factory-abi.d.ts +80 -0
- package/dist/types/constants/abis/rebalancer/wrapped-6909-factory-abi.d.ts.map +1 -0
- package/dist/types/constants/chain-configs/addresses.d.ts +1 -0
- package/dist/types/constants/chain-configs/addresses.d.ts.map +1 -1
- package/dist/types/constants/chain-configs/chain.d.ts +1 -1
- package/dist/types/constants/chain-configs/chain.d.ts.map +1 -1
- package/dist/types/constants/chain-configs/currency.d.ts +8 -11
- package/dist/types/constants/chain-configs/currency.d.ts.map +1 -1
- package/dist/types/constants/chain-configs/fee.d.ts.map +1 -1
- package/dist/types/constants/chain-configs/subgraph.d.ts.map +1 -1
- package/dist/types/constants/networks/test-chain.d.ts +0 -1
- package/dist/types/constants/networks/test-chain.d.ts.map +1 -1
- package/dist/types/entities/analytics/apis/index.d.ts +3 -1
- package/dist/types/entities/analytics/apis/index.d.ts.map +1 -1
- package/dist/types/entities/analytics/types.d.ts +12 -1
- package/dist/types/entities/analytics/types.d.ts.map +1 -1
- package/dist/types/entities/book/apis/index.d.ts +1 -1
- package/dist/types/entities/book/apis/index.d.ts.map +1 -1
- package/dist/types/entities/currency/apis/total-supply.d.ts.map +1 -1
- package/dist/types/entities/market/apis/index.d.ts +1 -1
- package/dist/types/entities/market/apis/index.d.ts.map +1 -1
- package/dist/types/entities/market/apis/snapshot.d.ts +1 -1
- package/dist/types/entities/market/apis/snapshot.d.ts.map +1 -1
- package/dist/types/entities/market/types.d.ts +2 -0
- package/dist/types/entities/market/types.d.ts.map +1 -1
- package/dist/types/entities/pool/apis/index.d.ts.map +1 -1
- package/dist/types/entities/pool/apis/snapshot.d.ts.map +1 -1
- package/dist/types/entities/pool/model.d.ts +3 -1
- package/dist/types/entities/pool/model.d.ts.map +1 -1
- package/dist/types/entities/pool/types.d.ts +6 -2
- package/dist/types/entities/pool/types.d.ts.map +1 -1
- package/dist/types/types/index.d.ts +1 -0
- package/dist/types/types/index.d.ts.map +1 -1
- package/dist/types/utils/bigint.d.ts +1 -0
- package/dist/types/utils/bigint.d.ts.map +1 -1
- package/dist/types/views/address.d.ts +1 -0
- package/dist/types/views/address.d.ts.map +1 -1
- package/dist/types/views/analytics.d.ts +8 -1
- package/dist/types/views/analytics.d.ts.map +1 -1
- package/dist/types/views/currency.d.ts +5 -6
- package/dist/types/views/currency.d.ts.map +1 -1
- package/dist/types/views/index.d.ts +3 -3
- package/dist/types/views/index.d.ts.map +1 -1
- package/dist/types/views/market/index.d.ts +0 -2
- package/dist/types/views/market/index.d.ts.map +1 -1
- package/dist/types/views/market/snapshot.d.ts +1 -1
- package/dist/types/views/market/snapshot.d.ts.map +1 -1
- package/dist/types/views/subgraph.d.ts +20 -0
- package/dist/types/views/subgraph.d.ts.map +1 -1
- package/package.json +1 -1
- package/dist/cjs/calls/pool/market-making/strategy.js +0 -78
- package/dist/cjs/calls/pool/market-making/strategy.js.map +0 -1
- package/dist/cjs/entities/book/apis/open.js +0 -46
- package/dist/cjs/entities/book/apis/open.js.map +0 -1
- package/dist/esm/calls/pool/market-making/strategy.js +0 -75
- package/dist/esm/calls/pool/market-making/strategy.js.map +0 -1
- package/dist/esm/entities/book/apis/open.js +0 -42
- package/dist/esm/entities/book/apis/open.js.map +0 -1
- package/dist/types/calls/pool/market-making/strategy.d.ts +0 -23
- package/dist/types/calls/pool/market-making/strategy.d.ts.map +0 -1
- package/dist/types/entities/book/apis/open.d.ts +0 -4
- package/dist/types/entities/book/apis/open.d.ts.map +0 -1
|
@@ -5,27 +5,23 @@ export const ETH = {
|
|
|
5
5
|
name: 'Ethereum',
|
|
6
6
|
symbol: 'ETH',
|
|
7
7
|
decimals: 18,
|
|
8
|
-
totalSupply: 120000000000000000000000000n, // 120M
|
|
9
8
|
};
|
|
10
|
-
// export const S: Currency = {
|
|
11
|
-
// address: zeroAddress,
|
|
12
|
-
// name: 'Sonic',
|
|
13
|
-
// symbol: 'S',
|
|
14
|
-
// decimals: 18,
|
|
15
|
-
// }
|
|
16
9
|
export const NATIVE_CURRENCY = {
|
|
17
10
|
[CHAIN_IDS.CLOBER_TESTNET]: ETH,
|
|
18
|
-
[CHAIN_IDS.CLOBER_TESTNET_2]: ETH,
|
|
19
11
|
[CHAIN_IDS.ARBITRUM_SEPOLIA]: ETH,
|
|
20
12
|
// [CHAIN_IDS.BASE]: ETH,
|
|
21
|
-
|
|
13
|
+
[CHAIN_IDS.BERACHAIN_MAINNET]: {
|
|
14
|
+
address: zeroAddress,
|
|
15
|
+
name: 'Berachain',
|
|
16
|
+
symbol: 'BERA',
|
|
17
|
+
decimals: 18,
|
|
18
|
+
},
|
|
22
19
|
[CHAIN_IDS.RISE_SEPOLIA]: ETH,
|
|
23
20
|
[CHAIN_IDS.MONAD_TESTNET]: {
|
|
24
21
|
address: zeroAddress,
|
|
25
22
|
name: 'Monad Token',
|
|
26
23
|
symbol: 'MON',
|
|
27
24
|
decimals: 18,
|
|
28
|
-
totalSupply: 10000000000000000000000000000n, // 10B
|
|
29
25
|
},
|
|
30
26
|
// [CHAIN_IDS.SONIC_MAINNET]: S,
|
|
31
27
|
};
|
|
@@ -35,51 +31,61 @@ export const REFERENCE_CURRENCY = {
|
|
|
35
31
|
symbol: 'WETH',
|
|
36
32
|
name: 'Wrapped Ether',
|
|
37
33
|
decimals: 18,
|
|
38
|
-
totalSupply: 120000000000000000000000000n, // 120M
|
|
39
|
-
},
|
|
40
|
-
[CHAIN_IDS.CLOBER_TESTNET_2]: {
|
|
41
|
-
address: getAddress('0xF2e615A933825De4B39b497f6e6991418Fb31b78'), // Mock WETH
|
|
42
|
-
symbol: 'WETH',
|
|
43
|
-
name: 'Wrapped Ether',
|
|
44
|
-
decimals: 18,
|
|
45
|
-
totalSupply: 120000000000000000000000000n, // 120M
|
|
46
34
|
},
|
|
47
35
|
[CHAIN_IDS.ARBITRUM_SEPOLIA]: {
|
|
48
36
|
address: getAddress('0xF2e615A933825De4B39b497f6e6991418Fb31b78'), // Mock WETH
|
|
49
37
|
symbol: 'WETH',
|
|
50
38
|
name: 'Wrapped Ether',
|
|
51
39
|
decimals: 18,
|
|
52
|
-
totalSupply: 120000000000000000000000000n, // 120M
|
|
53
40
|
},
|
|
54
41
|
// [CHAIN_IDS.BASE]: '0x4200000000000000000000000000000000000006',
|
|
55
|
-
|
|
42
|
+
[CHAIN_IDS.BERACHAIN_MAINNET]: {
|
|
43
|
+
address: getAddress('0x6969696969696969696969696969696969696969'), // WBERA
|
|
44
|
+
symbol: 'WBERA',
|
|
45
|
+
name: 'Wrapped Bera',
|
|
46
|
+
decimals: 18,
|
|
47
|
+
},
|
|
56
48
|
[CHAIN_IDS.RISE_SEPOLIA]: {
|
|
57
49
|
address: getAddress('0x4200000000000000000000000000000000000006'), // Mock WETH
|
|
58
50
|
symbol: 'WETH',
|
|
59
51
|
name: 'Wrapped Ether',
|
|
60
52
|
decimals: 18,
|
|
61
|
-
totalSupply: 120000000000000000000000000n, // 120M
|
|
62
53
|
},
|
|
63
54
|
[CHAIN_IDS.MONAD_TESTNET]: {
|
|
64
55
|
address: getAddress('0x760AfE86e5de5fa0Ee542fc7B7B713e1c5425701'), // WMON
|
|
65
56
|
symbol: 'WMON',
|
|
66
57
|
name: 'Wrapped Monad',
|
|
67
58
|
decimals: 18,
|
|
68
|
-
totalSupply: 10000000000000000000000000000n, // 10B
|
|
69
59
|
},
|
|
70
60
|
// [CHAIN_IDS.SONIC_MAINNET]: '0x039e2fB66102314Ce7b64Ce5Ce3E5183bc94aD38', // wS
|
|
71
61
|
};
|
|
62
|
+
export const NATIVE_CURRENCY_TOTAL_SUPPLY = {
|
|
63
|
+
[CHAIN_IDS.CLOBER_TESTNET]: 120000000000000000000000000n,
|
|
64
|
+
[CHAIN_IDS.ARBITRUM_SEPOLIA]: 120000000000000000000000000n,
|
|
65
|
+
// [CHAIN_IDS.BASE]: ETH,
|
|
66
|
+
[CHAIN_IDS.BERACHAIN_MAINNET]: 502000000000000000000000000n,
|
|
67
|
+
[CHAIN_IDS.RISE_SEPOLIA]: 120000000000000000000000000n,
|
|
68
|
+
[CHAIN_IDS.MONAD_TESTNET]: 10000000000000000000000000000n,
|
|
69
|
+
// [CHAIN_IDS.SONIC_MAINNET]: S,
|
|
70
|
+
};
|
|
72
71
|
// @dev: https://defillama.com/stablecoins
|
|
73
72
|
// order by total circulating supply (over $40M)
|
|
74
|
-
export const
|
|
73
|
+
export const STABLE_COINS = {
|
|
75
74
|
[CHAIN_IDS.CLOBER_TESTNET]: [
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
75
|
+
{
|
|
76
|
+
address: getAddress('0x00BFD44e79FB7f6dd5887A9426c8EF85A0CD23e0'),
|
|
77
|
+
name: 'Mock USDT',
|
|
78
|
+
symbol: 'MT',
|
|
79
|
+
decimals: 6,
|
|
80
|
+
},
|
|
80
81
|
],
|
|
81
82
|
[CHAIN_IDS.ARBITRUM_SEPOLIA]: [
|
|
82
|
-
|
|
83
|
+
{
|
|
84
|
+
address: getAddress('0x00BFD44e79FB7f6dd5887A9426c8EF85A0CD23e0'),
|
|
85
|
+
name: 'Mock USDT',
|
|
86
|
+
symbol: 'MT',
|
|
87
|
+
decimals: 6,
|
|
88
|
+
},
|
|
83
89
|
],
|
|
84
90
|
// [CHAIN_IDS.BASE]: [
|
|
85
91
|
// '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913', // USDC
|
|
@@ -88,19 +94,71 @@ export const STABLE_COIN_ADDRESSES = {
|
|
|
88
94
|
// '0xB79DD08EA68A908A97220C76d19A6aA9cBDE4376', // USD+
|
|
89
95
|
// '0x50c5725949A6F0c72E6C4a641F24049A917DB0Cb', // DAI
|
|
90
96
|
// ],
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
+
[CHAIN_IDS.BERACHAIN_MAINNET]: [
|
|
98
|
+
{
|
|
99
|
+
address: getAddress('0xFCBD14DC51f0A4d49d5E53C2E0950e0bC26d0Dce'),
|
|
100
|
+
name: 'Honey',
|
|
101
|
+
symbol: 'HONEY',
|
|
102
|
+
decimals: 18,
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
address: getAddress('0x5d3a1Ff2b6BAb83b63cd9AD0787074081a52ef34'),
|
|
106
|
+
name: 'USDe',
|
|
107
|
+
symbol: 'USDe',
|
|
108
|
+
decimals: 18,
|
|
109
|
+
},
|
|
110
|
+
{
|
|
111
|
+
address: getAddress('0x549943e04f40284185054145c6E4e9568C1D3241'),
|
|
112
|
+
name: 'Bridged USDC (Stargate)',
|
|
113
|
+
symbol: 'USDC.e',
|
|
114
|
+
decimals: 6,
|
|
115
|
+
},
|
|
116
|
+
{
|
|
117
|
+
address: getAddress('0x779Ded0c9e1022225f8E0630b35a9b54bE713736'),
|
|
118
|
+
name: 'USD₮0',
|
|
119
|
+
symbol: 'USD₮0',
|
|
120
|
+
decimals: 6,
|
|
121
|
+
},
|
|
122
|
+
],
|
|
97
123
|
[CHAIN_IDS.RISE_SEPOLIA]: [
|
|
98
|
-
|
|
124
|
+
{
|
|
125
|
+
address: getAddress('0xA985e387dDF21b87c1Fe8A0025D827674040221E'),
|
|
126
|
+
name: 'Clober USD',
|
|
127
|
+
symbol: 'cUSD',
|
|
128
|
+
decimals: 6,
|
|
129
|
+
},
|
|
130
|
+
{
|
|
131
|
+
address: getAddress('0x40918Ba7f132E0aCba2CE4de4c4baF9BD2D7D849'),
|
|
132
|
+
name: 'Tether USD',
|
|
133
|
+
symbol: 'USDT',
|
|
134
|
+
decimals: 8,
|
|
135
|
+
},
|
|
136
|
+
{
|
|
137
|
+
address: getAddress('0x8A93d247134d91e0de6f96547cB0204e5BE8e5D8'),
|
|
138
|
+
name: 'USD Coin',
|
|
139
|
+
symbol: 'USDC',
|
|
140
|
+
decimals: 6,
|
|
141
|
+
},
|
|
99
142
|
],
|
|
100
143
|
[CHAIN_IDS.MONAD_TESTNET]: [
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
144
|
+
{
|
|
145
|
+
address: getAddress('0x43D614B1bA4bA469fAEAa4557AEAFdec039b8795'),
|
|
146
|
+
name: 'MockB',
|
|
147
|
+
symbol: 'MOCKB',
|
|
148
|
+
decimals: 6,
|
|
149
|
+
},
|
|
150
|
+
{
|
|
151
|
+
address: getAddress('0xf817257fed379853cDe0fa4F97AB987181B1E5Ea'),
|
|
152
|
+
name: 'USD Coin',
|
|
153
|
+
symbol: 'USDC',
|
|
154
|
+
decimals: 6,
|
|
155
|
+
},
|
|
156
|
+
{
|
|
157
|
+
address: getAddress('0x88b8E2161DEDC77EF4ab7585569D2415a1C1055D'),
|
|
158
|
+
name: 'Tether USD',
|
|
159
|
+
symbol: 'USDT',
|
|
160
|
+
decimals: 6,
|
|
161
|
+
},
|
|
104
162
|
],
|
|
105
163
|
// [CHAIN_IDS.SONIC_MAINNET]: [
|
|
106
164
|
// '0x29219dd400f2Bf60E5a23d13Be72B486D4038894', // USDC
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"currency.js","sourceRoot":"","sources":["../../../../src/constants/chain-configs/currency.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,MAAM,CAAA;AAI9C,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAEnC,MAAM,CAAC,MAAM,GAAG,
|
|
1
|
+
{"version":3,"file":"currency.js","sourceRoot":"","sources":["../../../../src/constants/chain-configs/currency.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,20 +2,18 @@ import { FeePolicy } from '../../entities/fee-policy/model';
|
|
|
2
2
|
import { CHAIN_IDS } from './chain';
|
|
3
3
|
export const MAKER_DEFAULT_POLICY = {
|
|
4
4
|
[CHAIN_IDS.CLOBER_TESTNET]: new FeePolicy(true, -300n), // -0.03%,
|
|
5
|
-
[CHAIN_IDS.CLOBER_TESTNET_2]: new FeePolicy(true, -300n), // -0.03%,
|
|
6
5
|
[CHAIN_IDS.ARBITRUM_SEPOLIA]: new FeePolicy(true, 0n), // 0%,
|
|
7
6
|
// [CHAIN_IDS.BASE]: new FeePolicy(true, 0n), // 0%,
|
|
8
|
-
|
|
7
|
+
[CHAIN_IDS.BERACHAIN_MAINNET]: new FeePolicy(true, 0n), // 0%,
|
|
9
8
|
[CHAIN_IDS.RISE_SEPOLIA]: new FeePolicy(true, 0n), // 0%,
|
|
10
9
|
[CHAIN_IDS.MONAD_TESTNET]: new FeePolicy(true, 0n), // 0%,
|
|
11
10
|
// [CHAIN_IDS.SONIC_MAINNET]: new FeePolicy(true, 0n), // 0%,
|
|
12
11
|
};
|
|
13
12
|
export const TAKER_DEFAULT_POLICY = {
|
|
14
13
|
[CHAIN_IDS.CLOBER_TESTNET]: new FeePolicy(true, 1000n), // 0.1%
|
|
15
|
-
[CHAIN_IDS.CLOBER_TESTNET_2]: new FeePolicy(true, 1000n), // 0.1%
|
|
16
14
|
[CHAIN_IDS.ARBITRUM_SEPOLIA]: new FeePolicy(true, 100n), // 0.01%
|
|
17
15
|
// [CHAIN_IDS.BASE]: new FeePolicy(true, 100n), // 0.01%
|
|
18
|
-
|
|
16
|
+
[CHAIN_IDS.BERACHAIN_MAINNET]: new FeePolicy(true, 100n), // 0.01%
|
|
19
17
|
[CHAIN_IDS.RISE_SEPOLIA]: new FeePolicy(true, 100n), // 0.01%
|
|
20
18
|
[CHAIN_IDS.MONAD_TESTNET]: new FeePolicy(true, 100n), // 0.01%
|
|
21
19
|
// [CHAIN_IDS.SONIC_MAINNET]: new FeePolicy(true, 100n), // 0.01%
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fee.js","sourceRoot":"","sources":["../../../../src/constants/chain-configs/fee.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAA;AAE3D,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAEnC,MAAM,CAAC,MAAM,oBAAoB,GAE7B;IACF,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE,IAAI,SAAS,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE,UAAU;IAClE,CAAC,SAAS,CAAC,gBAAgB,CAAC,EAAE,IAAI,SAAS,CAAC,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"fee.js","sourceRoot":"","sources":["../../../../src/constants/chain-configs/fee.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAA;AAE3D,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAEnC,MAAM,CAAC,MAAM,oBAAoB,GAE7B;IACF,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE,IAAI,SAAS,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE,UAAU;IAClE,CAAC,SAAS,CAAC,gBAAgB,CAAC,EAAE,IAAI,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,MAAM;IAC7D,oDAAoD;IACpD,CAAC,SAAS,CAAC,iBAAiB,CAAC,EAAE,IAAI,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,MAAM;IAC9D,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,IAAI,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,MAAM;IACzD,CAAC,SAAS,CAAC,aAAa,CAAC,EAAE,IAAI,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,MAAM;IAC1D,6DAA6D;CAC9D,CAAA;AAED,MAAM,CAAC,MAAM,oBAAoB,GAE7B;IACF,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE,IAAI,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,OAAO;IAC/D,CAAC,SAAS,CAAC,gBAAgB,CAAC,EAAE,IAAI,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,QAAQ;IACjE,wDAAwD;IACxD,CAAC,SAAS,CAAC,iBAAiB,CAAC,EAAE,IAAI,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,QAAQ;IAClE,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,IAAI,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,QAAQ;IAC7D,CAAC,SAAS,CAAC,aAAa,CAAC,EAAE,IAAI,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,QAAQ;IAC9D,iEAAiE;CAClE,CAAA"}
|
|
@@ -2,14 +2,12 @@ import axios from 'axios';
|
|
|
2
2
|
import { CHAIN_IDS } from './chain';
|
|
3
3
|
export const SUBGRAPH_URL = {
|
|
4
4
|
[CHAIN_IDS.CLOBER_TESTNET]: 'https://subgraph.satsuma-prod.com/f6a8c4889b7b/clober/v2-subgraph-arbitrum-sepolia/api',
|
|
5
|
-
[CHAIN_IDS.CLOBER_TESTNET_2]: 'https://subgraph.satsuma-prod.com/f6a8c4889b7b/clober/v2-subgraph-arbitrum-sepolia/api',
|
|
6
5
|
[CHAIN_IDS.ARBITRUM_SEPOLIA]: 'https://subgraph.satsuma-prod.com/f6a8c4889b7b/clober/v2-subgraph-arbitrum-sepolia/api',
|
|
7
6
|
// [CHAIN_IDS.BASE]:
|
|
8
7
|
// 'https://subgraph.satsuma-prod.com/f6a8c4889b7b/clober/v2-core-subgraph-base/api',
|
|
9
|
-
|
|
10
|
-
// 'https://subgraph.satsuma-prod.com/f6a8c4889b7b/clober/v2-core-subgraph-berachain-mainnet/api',
|
|
8
|
+
[CHAIN_IDS.BERACHAIN_MAINNET]: 'https://subgraph.satsuma-prod.com/f6a8c4889b7b/clober/v2-subgraph-berachain-mainnet/api',
|
|
11
9
|
[CHAIN_IDS.RISE_SEPOLIA]: 'https://api.goldsky.com/api/public/project_clsljw95chutg01w45cio46j0/subgraphs/v2-subgraph-rise-sepolia/latest/gn',
|
|
12
|
-
[CHAIN_IDS.MONAD_TESTNET]: 'https://
|
|
10
|
+
[CHAIN_IDS.MONAD_TESTNET]: 'https://api.goldsky.com/api/public/project_clsljw95chutg01w45cio46j0/subgraphs/v2-subgraph-monad-testnet/latest/gn',
|
|
13
11
|
// [CHAIN_IDS.SONIC_MAINNET]:
|
|
14
12
|
// 'https://subgraph.satsuma-prod.com/f6a8c4889b7b/clober/v2-core-subgraph-sonic-mainnet/api',
|
|
15
13
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subgraph.js","sourceRoot":"","sources":["../../../../src/constants/chain-configs/subgraph.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAEnC,MAAM,CAAC,MAAM,YAAY,GAErB;IACF,CAAC,SAAS,CAAC,cAAc,CAAC,EACxB,wFAAwF;IAC1F,CAAC,SAAS,CAAC,gBAAgB,CAAC,EAC1B,wFAAwF;IAC1F,CAAC,SAAS,CAAC,
|
|
1
|
+
{"version":3,"file":"subgraph.js","sourceRoot":"","sources":["../../../../src/constants/chain-configs/subgraph.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAEnC,MAAM,CAAC,MAAM,YAAY,GAErB;IACF,CAAC,SAAS,CAAC,cAAc,CAAC,EACxB,wFAAwF;IAC1F,CAAC,SAAS,CAAC,gBAAgB,CAAC,EAC1B,wFAAwF;IAC1F,oBAAoB;IACpB,uFAAuF;IACvF,CAAC,SAAS,CAAC,iBAAiB,CAAC,EAC3B,yFAAyF;IAC3F,CAAC,SAAS,CAAC,YAAY,CAAC,EACtB,mHAAmH;IACrH,CAAC,SAAS,CAAC,aAAa,CAAC,EACvB,oHAAoH;IACtH,6BAA6B;IAC7B,gGAAgG;CACjG,CAAA;AAED,MAAM,OAAO,QAAQ;IACZ,MAAM,CAAC,KAAK,CAAC,GAAG,CACrB,OAAkB,EAClB,aAAqB,EACrB,KAAa,EACb,SAAa;QAEb,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;QACnD,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,IAAI,CAC/B,YAAY,CAAC,OAAO,CAAC,EACrB;YACE,KAAK;YACL,SAAS;YACT,aAAa;SACd,EACD;YACE,OAAO,EAAE,IAAI,EAAE,yBAAyB;SACzC,CACF,CAAA;QAED,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,EAAE,CAAC;YAC5B,OAAO,QAAQ,CAAC,IAAI,CAAA;QACtB,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CAAE,QAAQ,CAAC,IAAY,CAAC,MAAM,IAAI,sBAAsB,CAAC,CAAA;QAC1E,CAAC;IACH,CAAC;CACF"}
|
|
@@ -21,27 +21,4 @@ export const cloberTestChain = {
|
|
|
21
21
|
},
|
|
22
22
|
},
|
|
23
23
|
};
|
|
24
|
-
export const cloberTestChain2 = {
|
|
25
|
-
id: 77772,
|
|
26
|
-
name: 'Clober Test Chain 2',
|
|
27
|
-
nativeCurrency: {
|
|
28
|
-
name: 'Ether',
|
|
29
|
-
symbol: 'ETH',
|
|
30
|
-
decimals: 18,
|
|
31
|
-
},
|
|
32
|
-
rpcUrls: {
|
|
33
|
-
default: {
|
|
34
|
-
http: ['http://127.0.0.1'],
|
|
35
|
-
},
|
|
36
|
-
public: {
|
|
37
|
-
http: ['http://127.0.0.1'],
|
|
38
|
-
},
|
|
39
|
-
},
|
|
40
|
-
contracts: {
|
|
41
|
-
multicall3: {
|
|
42
|
-
address: '0xca11bde05977b3631167028862be2a173976ca11',
|
|
43
|
-
blockCreated: 81930,
|
|
44
|
-
},
|
|
45
|
-
},
|
|
46
|
-
};
|
|
47
24
|
//# sourceMappingURL=test-chain.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"test-chain.js","sourceRoot":"","sources":["../../../../src/constants/networks/test-chain.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,eAAe,GAAU;IACpC,EAAE,EAAE,IAAI;IACR,IAAI,EAAE,mBAAmB;IACzB,cAAc,EAAE;QACd,IAAI,EAAE,OAAO;QACb,MAAM,EAAE,KAAK;QACb,QAAQ,EAAE,EAAE;KACb;IACD,OAAO,EAAE;QACP,OAAO,EAAE;YACP,IAAI,EAAE,CAAC,kBAAkB,CAAC;SAC3B;QACD,MAAM,EAAE;YACN,IAAI,EAAE,CAAC,kBAAkB,CAAC;SAC3B;KACF;IACD,SAAS,EAAE;QACT,UAAU,EAAE;YACV,OAAO,EAAE,4CAA4C;YACrD,YAAY,EAAE,KAAK;SACpB;KACF;CACF,CAAA
|
|
1
|
+
{"version":3,"file":"test-chain.js","sourceRoot":"","sources":["../../../../src/constants/networks/test-chain.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,eAAe,GAAU;IACpC,EAAE,EAAE,IAAI;IACR,IAAI,EAAE,mBAAmB;IACzB,cAAc,EAAE;QACd,IAAI,EAAE,OAAO;QACb,MAAM,EAAE,KAAK;QACb,QAAQ,EAAE,EAAE;KACb;IACD,OAAO,EAAE;QACP,OAAO,EAAE;YACP,IAAI,EAAE,CAAC,kBAAkB,CAAC;SAC3B;QACD,MAAM,EAAE;YACN,IAAI,EAAE,CAAC,kBAAkB,CAAC;SAC3B;KACF;IACD,SAAS,EAAE;QACT,UAAU,EAAE;YACV,OAAO,EAAE,4CAA4C;YACrD,YAAY,EAAE,KAAK;SACpB;KACF;CACF,CAAA"}
|
|
@@ -1,26 +1,60 @@
|
|
|
1
1
|
import { getAddress } from 'viem';
|
|
2
2
|
import { Subgraph } from '../../../constants/chain-configs/subgraph';
|
|
3
|
+
import { convertTokenToDecimal } from '../../../utils/bigint';
|
|
4
|
+
const UNKNOWN = 'Unknown';
|
|
3
5
|
const FUNCTION_SIG_MAP = {
|
|
4
|
-
'0x7d773110': '
|
|
5
|
-
'0xfe815746': '
|
|
6
|
-
'
|
|
7
|
-
'
|
|
8
|
-
'
|
|
9
|
-
'
|
|
10
|
-
'
|
|
11
|
-
'
|
|
12
|
-
'
|
|
13
|
-
'
|
|
14
|
-
'
|
|
6
|
+
'0x7d773110': 'Limit', // make
|
|
7
|
+
'0xfe815746': 'Limit', // limit
|
|
8
|
+
'0xb305b94c': 'Limit', // make
|
|
9
|
+
'0x08b2c1d8': 'Limit', // limit
|
|
10
|
+
'0x8feb85b7': 'Claim',
|
|
11
|
+
'0xa04c796b': 'Cancel',
|
|
12
|
+
'0xc0e8e89a': 'Market',
|
|
13
|
+
'0x4f28185a': 'Add-Liq',
|
|
14
|
+
'0x0a31b953': 'Remove-Liq',
|
|
15
|
+
'0x7e865aa4': 'Swap',
|
|
16
|
+
'0xa0f15331': UNKNOWN, // update position
|
|
17
|
+
'0xed56531a': UNKNOWN, // pause
|
|
18
|
+
'0xf4dfd83a': UNKNOWN, // arbitrage
|
|
15
19
|
};
|
|
16
20
|
export async function fetchProtocolAnalytics(chainId) {
|
|
17
|
-
const { data: { cloberDayDatas }, } = await Subgraph.get(chainId, 'getDailyCloberSnapshot', 'query getDailyCloberSnapshot { cloberDayDatas(orderBy: date, orderDirection: asc) { date walletCount newWalletCount transactionTypes { type txCount } tokenDayData { volumeUSD totalValueLockedUSD protocolFeesUSD token { id name symbol decimals priceUSD } } } }', {});
|
|
21
|
+
const { data: { cloberDayDatas }, } = await Subgraph.get(chainId, 'getDailyCloberSnapshot', 'query getDailyCloberSnapshot { cloberDayDatas(first: 1000, orderBy: date, orderDirection: asc) { date walletCount newWalletCount transactionTypes { type txCount } tokenDayData { volumeUSD totalValueLockedUSD protocolFeesUSD token { id name symbol decimals priceUSD } } } }', {});
|
|
22
|
+
const { data: { pools }, } = await Subgraph.get(chainId, 'getDailyPoolSnapshot', 'query getDailyPoolSnapshot { pools { id tokenA { id name symbol decimals tokenDayData(first: 1000, orderBy: date, orderDirection: desc) { date priceUSD } } tokenB { id name symbol decimals tokenDayData(first: 1000, orderBy: date, orderDirection: desc) { date priceUSD } } poolDayData(first: 1000, orderBy: date, orderDirection: desc) { date liquidityA liquidityB totalValueLockedUSD } } }', {});
|
|
23
|
+
const poolTvlMap = pools.reduce((acc, pool) => {
|
|
24
|
+
pool.poolDayData.forEach((poolDayData) => {
|
|
25
|
+
const date = poolDayData.date;
|
|
26
|
+
if (!acc[date]) {
|
|
27
|
+
acc[date] = {
|
|
28
|
+
usd: 0,
|
|
29
|
+
tvlMap: {},
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
acc[date].usd += Number(poolDayData.totalValueLockedUSD);
|
|
33
|
+
const tokenA = getAddress(pool.tokenA.id);
|
|
34
|
+
const tokenAPriceUSD = Number(pool.tokenA.tokenDayData.find((item) => item.date === date)
|
|
35
|
+
?.priceUSD ?? '0');
|
|
36
|
+
const tokenB = getAddress(pool.tokenB.id);
|
|
37
|
+
const tokenBPriceUSD = Number(pool.tokenB.tokenDayData.find((item) => item.date === date)
|
|
38
|
+
?.priceUSD ?? '0');
|
|
39
|
+
if (!acc[date].tvlMap[tokenA]) {
|
|
40
|
+
acc[date].tvlMap[tokenA] = 0;
|
|
41
|
+
}
|
|
42
|
+
if (!acc[date].tvlMap[tokenB]) {
|
|
43
|
+
acc[date].tvlMap[tokenB] = 0;
|
|
44
|
+
}
|
|
45
|
+
acc[date].tvlMap[tokenA] +=
|
|
46
|
+
convertTokenToDecimal(BigInt(poolDayData.liquidityA), Number(pool.tokenA.decimals)) * tokenAPriceUSD;
|
|
47
|
+
acc[date].tvlMap[tokenB] +=
|
|
48
|
+
convertTokenToDecimal(BigInt(poolDayData.liquidityB), Number(pool.tokenB.decimals)) * tokenBPriceUSD;
|
|
49
|
+
});
|
|
50
|
+
return acc;
|
|
51
|
+
}, {});
|
|
18
52
|
const analyticsSnapshots = cloberDayDatas.map((item) => ({
|
|
19
53
|
timestamp: item.date,
|
|
20
54
|
activeUsers: Number(item.walletCount),
|
|
21
55
|
firstTimeUsers: Number(item.newWalletCount),
|
|
22
56
|
transactionTypeCounts: Object.fromEntries(item.transactionTypes.map((transactionType) => [
|
|
23
|
-
FUNCTION_SIG_MAP[transactionType.type] ??
|
|
57
|
+
FUNCTION_SIG_MAP[transactionType.type] ?? UNKNOWN,
|
|
24
58
|
Number(transactionType.txCount),
|
|
25
59
|
])),
|
|
26
60
|
volume24hUSD: item.tokenDayData.reduce((acc, token) => acc + Number(token.volumeUSD), 0),
|
|
@@ -49,7 +83,21 @@ export async function fetchProtocolAnalytics(chainId) {
|
|
|
49
83
|
usd: Number(token.protocolFeesUSD),
|
|
50
84
|
},
|
|
51
85
|
])),
|
|
52
|
-
|
|
86
|
+
poolTotalValueLockedUSD: poolTvlMap?.[item.date]?.usd ?? 0,
|
|
87
|
+
poolTotalValueLockedUSDMap: Object.fromEntries(item.tokenDayData.map((token) => [
|
|
88
|
+
getAddress(token.token.id),
|
|
89
|
+
{
|
|
90
|
+
currency: {
|
|
91
|
+
address: getAddress(token.token.id),
|
|
92
|
+
name: token.token.name,
|
|
93
|
+
symbol: token.token.symbol,
|
|
94
|
+
decimals: Number(token.token.decimals),
|
|
95
|
+
},
|
|
96
|
+
usd: Number(poolTvlMap?.[item.date]?.tvlMap?.[getAddress(token.token.id)] ?? 0),
|
|
97
|
+
},
|
|
98
|
+
])),
|
|
99
|
+
totalValueLockedUSD: (poolTvlMap?.[item.date]?.usd ?? 0) +
|
|
100
|
+
item.tokenDayData.reduce((acc, token) => acc + Number(token.totalValueLockedUSD), 0),
|
|
53
101
|
totalValueLockedUSDMap: Object.fromEntries(item.tokenDayData.map((token) => [
|
|
54
102
|
getAddress(token.token.id),
|
|
55
103
|
{
|
|
@@ -59,7 +107,9 @@ export async function fetchProtocolAnalytics(chainId) {
|
|
|
59
107
|
symbol: token.token.symbol,
|
|
60
108
|
decimals: Number(token.token.decimals),
|
|
61
109
|
},
|
|
62
|
-
usd: Number(token.totalValueLockedUSD)
|
|
110
|
+
usd: Number(token.totalValueLockedUSD) +
|
|
111
|
+
Number(poolTvlMap?.[item.date]?.tvlMap?.[getAddress(token.token.id)] ??
|
|
112
|
+
0),
|
|
63
113
|
},
|
|
64
114
|
])),
|
|
65
115
|
}));
|
|
@@ -93,4 +143,19 @@ export async function fetchUserVolumeSnapshots(chainId, userAddress) {
|
|
|
93
143
|
])),
|
|
94
144
|
}));
|
|
95
145
|
}
|
|
146
|
+
export async function fetchTopUsersByNativeVolume(chainId) {
|
|
147
|
+
const { data: { users }, } = await Subgraph.get(chainId, 'getTopUsersByNativeVolume', 'query getTopUsersByNativeVolume { users(first: 1000, orderBy: nativeVolume, orderDirection: desc) { id firstSeenTimestamp firstSeenBlockNumber nativeVolume } }', {});
|
|
148
|
+
return users.map((item) => ({
|
|
149
|
+
address: getAddress(item.id),
|
|
150
|
+
firstSeenTimestamp: Number(item.firstSeenTimestamp),
|
|
151
|
+
firstSeenBlockNumber: Number(item.firstSeenBlockNumber),
|
|
152
|
+
nativeVolume: Number(item.nativeVolume),
|
|
153
|
+
}));
|
|
154
|
+
}
|
|
155
|
+
export async function fetchUserNativeVolume(chainId, userAddress) {
|
|
156
|
+
const { data: { user }, } = await Subgraph.get(chainId, 'getUserNativeVolume', 'query getUserNativeVolume($user: ID!) { user(id: $user) { nativeVolume } }', {
|
|
157
|
+
user: userAddress.toLowerCase(),
|
|
158
|
+
});
|
|
159
|
+
return Number(user.nativeVolume);
|
|
160
|
+
}
|
|
96
161
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/entities/analytics/apis/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAA;AAGjC,OAAO,EAAE,QAAQ,EAAE,MAAM,2CAA2C,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/entities/analytics/apis/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,13 +4,14 @@ import { BOOK_VIEWER_ABI } from '../../../constants/abis/core/book-viewer-abi';
|
|
|
4
4
|
import { Subgraph } from '../../../constants/chain-configs/subgraph';
|
|
5
5
|
import { toBookId } from '../utils/book-id';
|
|
6
6
|
import { BookModel } from '../model';
|
|
7
|
-
|
|
8
|
-
export const fetchBook = async (publicClient, chainId, quoteCurrency, baseCurrency, useSubgraph
|
|
7
|
+
const MAX_DEPTH = 20n; // if the depth is too large, it may cause revert errors in the contract call
|
|
8
|
+
export const fetchBook = async (publicClient, chainId, quoteCurrency, baseCurrency, useSubgraph) => {
|
|
9
9
|
const unitSize = calculateUnitSize(chainId, quoteCurrency);
|
|
10
10
|
const bookId = toBookId(chainId, quoteCurrency.address, baseCurrency.address, unitSize);
|
|
11
11
|
if (useSubgraph) {
|
|
12
|
-
const { data: { book }, } = await Subgraph.get(chainId, 'getBook', 'query getBook($bookId: ID!) { book(id: $bookId) { depths(where: {unitAmount_gt: 0}) { tick unitAmount } } }', {
|
|
13
|
-
bookId,
|
|
12
|
+
const { data: { book }, } = await Subgraph.get(chainId, 'getBook', 'query getBook($bookId: ID!, $first: Int!) { book(id: $bookId) { depths(first: $first where: {unitAmount_gt: 0}, orderBy: tick, orderDirection: desc) { tick unitAmount } } }', {
|
|
13
|
+
bookId: bookId.toString(),
|
|
14
|
+
first: 1000, // Adjust as needed for depth
|
|
14
15
|
});
|
|
15
16
|
return new BookModel({
|
|
16
17
|
chainId,
|
|
@@ -27,26 +28,56 @@ export const fetchBook = async (publicClient, chainId, quoteCurrency, baseCurren
|
|
|
27
28
|
isOpened: book !== null,
|
|
28
29
|
});
|
|
29
30
|
}
|
|
30
|
-
const [depths, isOpened] = await
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
31
|
+
const [{ result: depths, error }, { result: isOpened }] = await publicClient.multicall({
|
|
32
|
+
contracts: [
|
|
33
|
+
{
|
|
34
|
+
address: CONTRACT_ADDRESSES[chainId].BookViewer,
|
|
35
|
+
abi: BOOK_VIEWER_ABI,
|
|
36
|
+
functionName: 'getLiquidity',
|
|
37
|
+
args: [bookId, Number(2n ** 19n - 1n), MAX_DEPTH],
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
address: CONTRACT_ADDRESSES[chainId].BookManager,
|
|
41
|
+
abi: [
|
|
42
|
+
{
|
|
43
|
+
inputs: [
|
|
44
|
+
{
|
|
45
|
+
internalType: 'BookId',
|
|
46
|
+
name: 'id',
|
|
47
|
+
type: 'uint192',
|
|
48
|
+
},
|
|
49
|
+
],
|
|
50
|
+
name: 'isOpened',
|
|
51
|
+
outputs: [
|
|
52
|
+
{
|
|
53
|
+
internalType: 'bool',
|
|
54
|
+
name: '',
|
|
55
|
+
type: 'bool',
|
|
56
|
+
},
|
|
57
|
+
],
|
|
58
|
+
stateMutability: 'view',
|
|
59
|
+
type: 'function',
|
|
60
|
+
},
|
|
61
|
+
],
|
|
62
|
+
functionName: 'isOpened',
|
|
63
|
+
args: [bookId],
|
|
64
|
+
},
|
|
65
|
+
],
|
|
66
|
+
});
|
|
67
|
+
if (error) {
|
|
68
|
+
throw new Error(`Failed to fetch book data: ${error.message}`);
|
|
69
|
+
}
|
|
39
70
|
return new BookModel({
|
|
40
71
|
chainId,
|
|
41
72
|
id: bookId,
|
|
42
73
|
base: baseCurrency,
|
|
43
74
|
quote: quoteCurrency,
|
|
44
75
|
unitSize,
|
|
45
|
-
depths: depths.map(({ tick, depth }) => ({
|
|
76
|
+
depths: (depths ?? []).map(({ tick, depth }) => ({
|
|
46
77
|
tick: BigInt(tick),
|
|
47
78
|
unitAmount: depth,
|
|
48
79
|
})),
|
|
49
|
-
isOpened,
|
|
80
|
+
isOpened: isOpened ?? false,
|
|
50
81
|
});
|
|
51
82
|
};
|
|
52
83
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/entities/book/apis/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAC5D,OAAO,EAAE,kBAAkB,EAAE,MAAM,4CAA4C,CAAA;AAC/E,OAAO,EAAE,eAAe,EAAE,MAAM,8CAA8C,CAAA;AAC9E,OAAO,EAAE,QAAQ,EAAE,MAAM,2CAA2C,CAAA;AACpE,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAA;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAEpC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/entities/book/apis/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { zeroAddress, isAddressEqual } from 'viem';
|
|
2
|
-
import {
|
|
2
|
+
import { NATIVE_CURRENCY_TOTAL_SUPPLY } from '../../../constants/chain-configs/currency';
|
|
3
3
|
const abi = [
|
|
4
4
|
{
|
|
5
5
|
name: 'totalSupply',
|
|
@@ -15,7 +15,7 @@ const getFromCache = (chainId, address) => totalSupplyCache.get(buildCacheKey(ch
|
|
|
15
15
|
const setToCache = (chainId, address, value) => totalSupplyCache.set(buildCacheKey(chainId, address), value);
|
|
16
16
|
export const fetchTotalSupply = async (publicClient, chainId, address) => {
|
|
17
17
|
if (isAddressEqual(address, zeroAddress)) {
|
|
18
|
-
return
|
|
18
|
+
return NATIVE_CURRENCY_TOTAL_SUPPLY[chainId];
|
|
19
19
|
}
|
|
20
20
|
const cached = getFromCache(chainId, address);
|
|
21
21
|
if (cached !== undefined) {
|
|
@@ -49,17 +49,14 @@ export const fetchTotalSupplyMap = async (publicClient, chainId, addresses) => {
|
|
|
49
49
|
: [];
|
|
50
50
|
const fetched = Object.fromEntries(results.map((r, i) => {
|
|
51
51
|
const address = toFetch[i];
|
|
52
|
-
const result = r.result;
|
|
53
|
-
if (!result) {
|
|
54
|
-
throw new Error(`Failed to fetch totalSupply for ${address}`);
|
|
55
|
-
}
|
|
52
|
+
const result = r.result ?? 0n;
|
|
56
53
|
setToCache(chainId, address, result);
|
|
57
54
|
return [address, result];
|
|
58
55
|
}));
|
|
59
56
|
return {
|
|
60
57
|
...cached,
|
|
61
58
|
...fetched,
|
|
62
|
-
[zeroAddress]:
|
|
59
|
+
[zeroAddress]: NATIVE_CURRENCY_TOTAL_SUPPLY[chainId],
|
|
63
60
|
};
|
|
64
61
|
};
|
|
65
62
|
//# sourceMappingURL=total-supply.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"total-supply.js","sourceRoot":"","sources":["../../../../../src/entities/currency/apis/total-supply.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,WAAW,EAAE,cAAc,EAAE,MAAM,MAAM,CAAA;AAEhE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"total-supply.js","sourceRoot":"","sources":["../../../../../src/entities/currency/apis/total-supply.ts"],"names":[],"mappings":"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"}
|