@clober/v2-sdk 1.0.0-rc.5 → 1.0.0-rc.51

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.
Files changed (209) hide show
  1. package/dist/cjs/calls/index.js +4 -3
  2. package/dist/cjs/calls/index.js.map +1 -1
  3. package/dist/cjs/calls/market/limit.js +5 -0
  4. package/dist/cjs/calls/market/limit.js.map +1 -1
  5. package/dist/cjs/calls/pool/burn.js +5 -5
  6. package/dist/cjs/calls/pool/market-making/adjust.js +2 -2
  7. package/dist/cjs/calls/pool/market-making/pause.js +2 -2
  8. package/dist/cjs/calls/pool/market-making/refill.js +2 -2
  9. package/dist/cjs/calls/pool/market-making/resume.js +2 -2
  10. package/dist/cjs/calls/pool/mint.js +111 -21
  11. package/dist/cjs/calls/pool/mint.js.map +1 -1
  12. package/dist/cjs/calls/pool/open.js +2 -2
  13. package/dist/cjs/calls/pool/open.js.map +1 -1
  14. package/dist/cjs/calls/pool/wrap.js +97 -0
  15. package/dist/cjs/calls/pool/wrap.js.map +1 -0
  16. package/dist/cjs/constants/abis/core/controller-abi.js +24 -1
  17. package/dist/cjs/constants/abis/core/controller-abi.js.map +1 -1
  18. package/dist/cjs/constants/abis/rebalancer/wrapped-6909-factory-abi.js +107 -0
  19. package/dist/cjs/constants/abis/rebalancer/wrapped-6909-factory-abi.js.map +1 -0
  20. package/dist/cjs/constants/chain-configs/addresses.js +27 -22
  21. package/dist/cjs/constants/chain-configs/addresses.js.map +1 -1
  22. package/dist/cjs/constants/chain-configs/chain.js +2 -2
  23. package/dist/cjs/constants/chain-configs/chain.js.map +1 -1
  24. package/dist/cjs/constants/chain-configs/currency.js +94 -24
  25. package/dist/cjs/constants/chain-configs/currency.js.map +1 -1
  26. package/dist/cjs/constants/chain-configs/fee.js +2 -2
  27. package/dist/cjs/constants/chain-configs/fee.js.map +1 -1
  28. package/dist/cjs/constants/chain-configs/subgraph.js +2 -2
  29. package/dist/cjs/constants/chain-configs/subgraph.js.map +1 -1
  30. package/dist/cjs/constants/networks/test-chain.js +1 -24
  31. package/dist/cjs/constants/networks/test-chain.js.map +1 -1
  32. package/dist/cjs/entities/analytics/apis/index.js +89 -21
  33. package/dist/cjs/entities/analytics/apis/index.js.map +1 -1
  34. package/dist/cjs/entities/book/apis/index.js +46 -15
  35. package/dist/cjs/entities/book/apis/index.js.map +1 -1
  36. package/dist/cjs/entities/currency/apis/total-supply.js +3 -6
  37. package/dist/cjs/entities/currency/apis/total-supply.js.map +1 -1
  38. package/dist/cjs/entities/market/apis/index.js +3 -3
  39. package/dist/cjs/entities/market/apis/index.js.map +1 -1
  40. package/dist/cjs/entities/market/apis/snapshot.js +234 -80
  41. package/dist/cjs/entities/market/apis/snapshot.js.map +1 -1
  42. package/dist/cjs/entities/market/utils/market-id.js +1 -1
  43. package/dist/cjs/entities/market/utils/market-id.js.map +1 -1
  44. package/dist/cjs/entities/pool/apis/index.js +11 -1
  45. package/dist/cjs/entities/pool/apis/index.js.map +1 -1
  46. package/dist/cjs/entities/pool/apis/snapshot.js +28 -23
  47. package/dist/cjs/entities/pool/apis/snapshot.js.map +1 -1
  48. package/dist/cjs/entities/pool/model.js +28 -7
  49. package/dist/cjs/entities/pool/model.js.map +1 -1
  50. package/dist/cjs/types/index.js.map +1 -1
  51. package/dist/cjs/utils/bigint.js +4 -1
  52. package/dist/cjs/utils/bigint.js.map +1 -1
  53. package/dist/cjs/views/analytics.js +9 -1
  54. package/dist/cjs/views/analytics.js.map +1 -1
  55. package/dist/cjs/views/currency.js +5 -1
  56. package/dist/cjs/views/currency.js.map +1 -1
  57. package/dist/cjs/views/index.js +6 -1
  58. package/dist/cjs/views/index.js.map +1 -1
  59. package/dist/cjs/views/market/chart-log.js +2 -2
  60. package/dist/cjs/views/market/index.js +1 -1
  61. package/dist/cjs/views/market/index.js.map +1 -1
  62. package/dist/cjs/views/market/snapshot.js.map +1 -1
  63. package/dist/cjs/views/pool/index.js +16 -1
  64. package/dist/cjs/views/pool/index.js.map +1 -1
  65. package/dist/cjs/views/subgraph.js +12 -2
  66. package/dist/cjs/views/subgraph.js.map +1 -1
  67. package/dist/esm/calls/index.js +1 -1
  68. package/dist/esm/calls/index.js.map +1 -1
  69. package/dist/esm/calls/market/limit.js +6 -1
  70. package/dist/esm/calls/market/limit.js.map +1 -1
  71. package/dist/esm/calls/pool/burn.js +5 -5
  72. package/dist/esm/calls/pool/market-making/adjust.js +2 -2
  73. package/dist/esm/calls/pool/market-making/pause.js +2 -2
  74. package/dist/esm/calls/pool/market-making/refill.js +2 -2
  75. package/dist/esm/calls/pool/market-making/resume.js +2 -2
  76. package/dist/esm/calls/pool/mint.js +112 -74
  77. package/dist/esm/calls/pool/mint.js.map +1 -1
  78. package/dist/esm/calls/pool/open.js +7 -6
  79. package/dist/esm/calls/pool/open.js.map +1 -1
  80. package/dist/esm/calls/pool/wrap.js +138 -0
  81. package/dist/esm/calls/pool/wrap.js.map +1 -0
  82. package/dist/esm/constants/abis/core/controller-abi.js +24 -1
  83. package/dist/esm/constants/abis/core/controller-abi.js.map +1 -1
  84. package/dist/esm/constants/abis/rebalancer/wrapped-6909-factory-abi.js +104 -0
  85. package/dist/esm/constants/abis/rebalancer/wrapped-6909-factory-abi.js.map +1 -0
  86. package/dist/esm/constants/chain-configs/addresses.js +30 -34
  87. package/dist/esm/constants/chain-configs/addresses.js.map +1 -1
  88. package/dist/esm/constants/chain-configs/chain.js +4 -6
  89. package/dist/esm/constants/chain-configs/chain.js.map +1 -1
  90. package/dist/esm/constants/chain-configs/currency.js +96 -38
  91. package/dist/esm/constants/chain-configs/currency.js.map +1 -1
  92. package/dist/esm/constants/chain-configs/fee.js +2 -4
  93. package/dist/esm/constants/chain-configs/fee.js.map +1 -1
  94. package/dist/esm/constants/chain-configs/subgraph.js +2 -4
  95. package/dist/esm/constants/chain-configs/subgraph.js.map +1 -1
  96. package/dist/esm/constants/networks/test-chain.js +0 -23
  97. package/dist/esm/constants/networks/test-chain.js.map +1 -1
  98. package/dist/esm/entities/analytics/apis/index.js +86 -20
  99. package/dist/esm/entities/analytics/apis/index.js.map +1 -1
  100. package/dist/esm/entities/book/apis/index.js +46 -15
  101. package/dist/esm/entities/book/apis/index.js.map +1 -1
  102. package/dist/esm/entities/currency/apis/total-supply.js +4 -7
  103. package/dist/esm/entities/currency/apis/total-supply.js.map +1 -1
  104. package/dist/esm/entities/market/apis/index.js +3 -3
  105. package/dist/esm/entities/market/apis/index.js.map +1 -1
  106. package/dist/esm/entities/market/apis/snapshot.js +236 -81
  107. package/dist/esm/entities/market/apis/snapshot.js.map +1 -1
  108. package/dist/esm/entities/market/utils/market-id.js +2 -2
  109. package/dist/esm/entities/market/utils/market-id.js.map +1 -1
  110. package/dist/esm/entities/pool/apis/index.js +11 -1
  111. package/dist/esm/entities/pool/apis/index.js.map +1 -1
  112. package/dist/esm/entities/pool/apis/snapshot.js +29 -24
  113. package/dist/esm/entities/pool/apis/snapshot.js.map +1 -1
  114. package/dist/esm/entities/pool/model.js +28 -7
  115. package/dist/esm/entities/pool/model.js.map +1 -1
  116. package/dist/esm/types/index.js.map +1 -1
  117. package/dist/esm/utils/bigint.js +2 -0
  118. package/dist/esm/utils/bigint.js.map +1 -1
  119. package/dist/esm/views/analytics.js +7 -1
  120. package/dist/esm/views/analytics.js.map +1 -1
  121. package/dist/esm/views/currency.js +4 -1
  122. package/dist/esm/views/currency.js.map +1 -1
  123. package/dist/esm/views/index.js +4 -4
  124. package/dist/esm/views/index.js.map +1 -1
  125. package/dist/esm/views/market/chart-log.js +2 -2
  126. package/dist/esm/views/market/index.js +1 -2
  127. package/dist/esm/views/market/index.js.map +1 -1
  128. package/dist/esm/views/market/snapshot.js.map +1 -1
  129. package/dist/esm/views/pool/index.js +14 -0
  130. package/dist/esm/views/pool/index.js.map +1 -1
  131. package/dist/esm/views/subgraph.js +22 -1
  132. package/dist/esm/views/subgraph.js.map +1 -1
  133. package/dist/tsconfig.build.tsbuildinfo +1 -1
  134. package/dist/types/calls/index.d.ts +1 -1
  135. package/dist/types/calls/index.d.ts.map +1 -1
  136. package/dist/types/calls/market/limit.d.ts +1 -0
  137. package/dist/types/calls/market/limit.d.ts.map +1 -1
  138. package/dist/types/calls/pool/mint.d.ts +21 -5
  139. package/dist/types/calls/pool/mint.d.ts.map +1 -1
  140. package/dist/types/calls/pool/open.d.ts +8 -7
  141. package/dist/types/calls/pool/open.d.ts.map +1 -1
  142. package/dist/types/calls/pool/wrap.d.ts +79 -0
  143. package/dist/types/calls/pool/wrap.d.ts.map +1 -0
  144. package/dist/types/constants/abis/core/controller-abi.d.ts +19 -1
  145. package/dist/types/constants/abis/core/controller-abi.d.ts.map +1 -1
  146. package/dist/types/constants/abis/rebalancer/wrapped-6909-factory-abi.d.ts +80 -0
  147. package/dist/types/constants/abis/rebalancer/wrapped-6909-factory-abi.d.ts.map +1 -0
  148. package/dist/types/constants/chain-configs/addresses.d.ts +1 -0
  149. package/dist/types/constants/chain-configs/addresses.d.ts.map +1 -1
  150. package/dist/types/constants/chain-configs/chain.d.ts +1 -1
  151. package/dist/types/constants/chain-configs/chain.d.ts.map +1 -1
  152. package/dist/types/constants/chain-configs/currency.d.ts +8 -11
  153. package/dist/types/constants/chain-configs/currency.d.ts.map +1 -1
  154. package/dist/types/constants/chain-configs/fee.d.ts.map +1 -1
  155. package/dist/types/constants/chain-configs/subgraph.d.ts.map +1 -1
  156. package/dist/types/constants/networks/test-chain.d.ts +0 -1
  157. package/dist/types/constants/networks/test-chain.d.ts.map +1 -1
  158. package/dist/types/entities/analytics/apis/index.d.ts +3 -1
  159. package/dist/types/entities/analytics/apis/index.d.ts.map +1 -1
  160. package/dist/types/entities/analytics/types.d.ts +12 -1
  161. package/dist/types/entities/analytics/types.d.ts.map +1 -1
  162. package/dist/types/entities/book/apis/index.d.ts +1 -1
  163. package/dist/types/entities/book/apis/index.d.ts.map +1 -1
  164. package/dist/types/entities/currency/apis/total-supply.d.ts.map +1 -1
  165. package/dist/types/entities/market/apis/index.d.ts +1 -1
  166. package/dist/types/entities/market/apis/index.d.ts.map +1 -1
  167. package/dist/types/entities/market/apis/snapshot.d.ts +1 -1
  168. package/dist/types/entities/market/apis/snapshot.d.ts.map +1 -1
  169. package/dist/types/entities/market/types.d.ts +2 -0
  170. package/dist/types/entities/market/types.d.ts.map +1 -1
  171. package/dist/types/entities/pool/apis/index.d.ts.map +1 -1
  172. package/dist/types/entities/pool/apis/snapshot.d.ts.map +1 -1
  173. package/dist/types/entities/pool/model.d.ts +6 -2
  174. package/dist/types/entities/pool/model.d.ts.map +1 -1
  175. package/dist/types/entities/pool/types.d.ts +9 -4
  176. package/dist/types/entities/pool/types.d.ts.map +1 -1
  177. package/dist/types/types/index.d.ts +1 -0
  178. package/dist/types/types/index.d.ts.map +1 -1
  179. package/dist/types/utils/bigint.d.ts +1 -0
  180. package/dist/types/utils/bigint.d.ts.map +1 -1
  181. package/dist/types/views/address.d.ts +1 -0
  182. package/dist/types/views/address.d.ts.map +1 -1
  183. package/dist/types/views/analytics.d.ts +8 -1
  184. package/dist/types/views/analytics.d.ts.map +1 -1
  185. package/dist/types/views/currency.d.ts +5 -6
  186. package/dist/types/views/currency.d.ts.map +1 -1
  187. package/dist/types/views/index.d.ts +4 -4
  188. package/dist/types/views/index.d.ts.map +1 -1
  189. package/dist/types/views/market/index.d.ts +0 -2
  190. package/dist/types/views/market/index.d.ts.map +1 -1
  191. package/dist/types/views/market/snapshot.d.ts +1 -1
  192. package/dist/types/views/market/snapshot.d.ts.map +1 -1
  193. package/dist/types/views/pool/index.d.ts +8 -1
  194. package/dist/types/views/pool/index.d.ts.map +1 -1
  195. package/dist/types/views/subgraph.d.ts +20 -0
  196. package/dist/types/views/subgraph.d.ts.map +1 -1
  197. package/package.json +1 -1
  198. package/dist/cjs/calls/pool/market-making/strategy.js +0 -78
  199. package/dist/cjs/calls/pool/market-making/strategy.js.map +0 -1
  200. package/dist/cjs/entities/book/apis/open.js +0 -46
  201. package/dist/cjs/entities/book/apis/open.js.map +0 -1
  202. package/dist/esm/calls/pool/market-making/strategy.js +0 -75
  203. package/dist/esm/calls/pool/market-making/strategy.js.map +0 -1
  204. package/dist/esm/entities/book/apis/open.js +0 -42
  205. package/dist/esm/entities/book/apis/open.js.map +0 -1
  206. package/dist/types/calls/pool/market-making/strategy.d.ts +0 -23
  207. package/dist/types/calls/pool/market-making/strategy.d.ts.map +0 -1
  208. package/dist/types/entities/book/apis/open.d.ts +0 -4
  209. package/dist/types/entities/book/apis/open.d.ts.map +0 -1
@@ -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;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAU;IACrC,EAAE,EAAE,KAAK;IACT,IAAI,EAAE,qBAAqB;IAC3B,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,30 +1,65 @@
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': 'limit',
5
- '0xfe815746': 'limit',
6
- '0x8feb85b7': 'claim',
7
- '0xa04c796b': 'cancel',
8
- '0xc0e8e89a': 'market',
9
- '0x4f28185a': 'add-liquidity',
10
- '0x0a31b953': 'remove-liquidity',
11
- '0x7e865aa4': 'swap',
12
- '0xa0f15331': 'unknown', // update position
13
- '0xed56531a': 'unknown', // pause
14
- '0xf4dfd83a': 'unknown', // arbitrage
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
+ '0xb69cbf9f': 'Swap', // swap with min amount out
17
+ '0xa0f15331': UNKNOWN, // update position
18
+ '0xed56531a': UNKNOWN, // pause
19
+ '0xf4dfd83a': UNKNOWN, // arbitrage
15
20
  };
16
21
  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 } tokenDayDatas { volumeUSD totalValueLockedUSD protocolFeesUSD token { id name symbol decimals priceUSD } } } }', {});
22
+ 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 } } } }', {});
23
+ 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 } } }', {});
24
+ const poolTvlMap = pools.reduce((acc, pool) => {
25
+ pool.poolDayData.forEach((poolDayData) => {
26
+ const date = poolDayData.date;
27
+ if (!acc[date]) {
28
+ acc[date] = {
29
+ usd: 0,
30
+ tvlMap: {},
31
+ };
32
+ }
33
+ acc[date].usd += Number(poolDayData.totalValueLockedUSD);
34
+ const tokenA = getAddress(pool.tokenA.id);
35
+ const tokenAPriceUSD = Number(pool.tokenA.tokenDayData.find((item) => item.date === date)
36
+ ?.priceUSD ?? '0');
37
+ const tokenB = getAddress(pool.tokenB.id);
38
+ const tokenBPriceUSD = Number(pool.tokenB.tokenDayData.find((item) => item.date === date)
39
+ ?.priceUSD ?? '0');
40
+ if (!acc[date].tvlMap[tokenA]) {
41
+ acc[date].tvlMap[tokenA] = 0;
42
+ }
43
+ if (!acc[date].tvlMap[tokenB]) {
44
+ acc[date].tvlMap[tokenB] = 0;
45
+ }
46
+ acc[date].tvlMap[tokenA] +=
47
+ convertTokenToDecimal(BigInt(poolDayData.liquidityA), Number(pool.tokenA.decimals)) * tokenAPriceUSD;
48
+ acc[date].tvlMap[tokenB] +=
49
+ convertTokenToDecimal(BigInt(poolDayData.liquidityB), Number(pool.tokenB.decimals)) * tokenBPriceUSD;
50
+ });
51
+ return acc;
52
+ }, {});
18
53
  const analyticsSnapshots = cloberDayDatas.map((item) => ({
19
54
  timestamp: item.date,
20
55
  activeUsers: Number(item.walletCount),
21
56
  firstTimeUsers: Number(item.newWalletCount),
22
57
  transactionTypeCounts: Object.fromEntries(item.transactionTypes.map((transactionType) => [
23
- FUNCTION_SIG_MAP[transactionType.type] ?? 'unknown',
58
+ FUNCTION_SIG_MAP[transactionType.type] ?? UNKNOWN,
24
59
  Number(transactionType.txCount),
25
60
  ])),
26
- volume24hUSD: item.tokenDayDatas.reduce((acc, token) => acc + Number(token.volumeUSD), 0),
27
- volume24hUSDMap: Object.fromEntries(item.tokenDayDatas.map((token) => [
61
+ volume24hUSD: item.tokenDayData.reduce((acc, token) => acc + Number(token.volumeUSD), 0),
62
+ volume24hUSDMap: Object.fromEntries(item.tokenDayData.map((token) => [
28
63
  getAddress(token.token.id),
29
64
  {
30
65
  currency: {
@@ -36,8 +71,8 @@ export async function fetchProtocolAnalytics(chainId) {
36
71
  usd: Number(token.volumeUSD),
37
72
  },
38
73
  ])),
39
- protocolFees24hUSD: item.tokenDayDatas.reduce((acc, token) => acc + Number(token.protocolFeesUSD), 0),
40
- protocolFees24hUSDMap: Object.fromEntries(item.tokenDayDatas.map((token) => [
74
+ protocolFees24hUSD: item.tokenDayData.reduce((acc, token) => acc + Number(token.protocolFeesUSD), 0),
75
+ protocolFees24hUSDMap: Object.fromEntries(item.tokenDayData.map((token) => [
41
76
  getAddress(token.token.id),
42
77
  {
43
78
  currency: {
@@ -49,8 +84,8 @@ export async function fetchProtocolAnalytics(chainId) {
49
84
  usd: Number(token.protocolFeesUSD),
50
85
  },
51
86
  ])),
52
- totalValueLockedUSD: item.tokenDayDatas.reduce((acc, token) => acc + Number(token.totalValueLockedUSD), 0),
53
- totalValueLockedUSDMap: Object.fromEntries(item.tokenDayDatas.map((token) => [
87
+ poolTotalValueLockedUSD: poolTvlMap?.[item.date]?.usd ?? 0,
88
+ poolTotalValueLockedUSDMap: Object.fromEntries(item.tokenDayData.map((token) => [
54
89
  getAddress(token.token.id),
55
90
  {
56
91
  currency: {
@@ -59,7 +94,23 @@ export async function fetchProtocolAnalytics(chainId) {
59
94
  symbol: token.token.symbol,
60
95
  decimals: Number(token.token.decimals),
61
96
  },
62
- usd: Number(token.totalValueLockedUSD),
97
+ usd: Number(poolTvlMap?.[item.date]?.tvlMap?.[getAddress(token.token.id)] ?? 0),
98
+ },
99
+ ])),
100
+ totalValueLockedUSD: (poolTvlMap?.[item.date]?.usd ?? 0) +
101
+ item.tokenDayData.reduce((acc, token) => acc + Number(token.totalValueLockedUSD), 0),
102
+ totalValueLockedUSDMap: Object.fromEntries(item.tokenDayData.map((token) => [
103
+ getAddress(token.token.id),
104
+ {
105
+ currency: {
106
+ address: getAddress(token.token.id),
107
+ name: token.token.name,
108
+ symbol: token.token.symbol,
109
+ decimals: Number(token.token.decimals),
110
+ },
111
+ usd: Number(token.totalValueLockedUSD) +
112
+ Number(poolTvlMap?.[item.date]?.tvlMap?.[getAddress(token.token.id)] ??
113
+ 0),
63
114
  },
64
115
  ])),
65
116
  }));
@@ -93,4 +144,19 @@ export async function fetchUserVolumeSnapshots(chainId, userAddress) {
93
144
  ])),
94
145
  }));
95
146
  }
147
+ export async function fetchTopUsersByNativeVolume(chainId) {
148
+ const { data: { users }, } = await Subgraph.get(chainId, 'getTopUsersByNativeVolume', 'query getTopUsersByNativeVolume { users(first: 1000, orderBy: nativeVolume, orderDirection: desc) { id firstSeenTimestamp firstSeenBlockNumber nativeVolume } }', {});
149
+ return users.map((item) => ({
150
+ address: getAddress(item.id),
151
+ firstSeenTimestamp: Number(item.firstSeenTimestamp),
152
+ firstSeenBlockNumber: Number(item.firstSeenBlockNumber),
153
+ nativeVolume: Number(item.nativeVolume),
154
+ }));
155
+ }
156
+ export async function fetchUserNativeVolume(chainId, userAddress) {
157
+ const { data: { user }, } = await Subgraph.get(chainId, 'getUserNativeVolume', 'query getUserNativeVolume($user: ID!) { user(id: $user) { nativeVolume } }', {
158
+ user: userAddress.toLowerCase(),
159
+ });
160
+ return Number(user.nativeVolume);
161
+ }
96
162
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/entities/analytics/apis/index.ts"],"names":[],"mappings":"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"}
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
- import { fetchIsMarketOpened } from './open';
8
- export const fetchBook = async (publicClient, chainId, quoteCurrency, baseCurrency, useSubgraph, n) => {
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 Promise.all([
31
- publicClient.readContract({
32
- address: CONTRACT_ADDRESSES[chainId].BookViewer,
33
- abi: BOOK_VIEWER_ABI,
34
- functionName: 'getLiquidity',
35
- args: [bookId, Number(2n ** 19n - 1n), BigInt(n)],
36
- }),
37
- fetchIsMarketOpened(publicClient, chainId, bookId),
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,OAAO,EAAE,mBAAmB,EAAE,MAAM,QAAQ,CAAA;AAE5C,MAAM,CAAC,MAAM,SAAS,GAAG,KAAK,EAC5B,YAA0B,EAC1B,OAAkB,EAClB,aAAuB,EACvB,YAAsB,EACtB,WAAoB,EACpB,CAAS,EACW,EAAE;IACtB,MAAM,QAAQ,GAAG,iBAAiB,CAAC,OAAO,EAAE,aAAa,CAAC,CAAA;IAC1D,MAAM,MAAM,GAAG,QAAQ,CACrB,OAAO,EACP,aAAa,CAAC,OAAO,EACrB,YAAY,CAAC,OAAO,EACpB,QAAQ,CACT,CAAA;IACD,IAAI,WAAW,EAAE,CAAC;QAChB,MAAM,EACJ,IAAI,EAAE,EAAE,IAAI,EAAE,GACf,GAAG,MAAM,QAAQ,CAAC,GAAG,CAWpB,OAAO,EACP,SAAS,EACT,6GAA6G,EAC7G;YACE,MAAM;SACP,CACF,CAAA;QACD,OAAO,IAAI,SAAS,CAAC;YACnB,OAAO;YACP,EAAE,EAAE,MAAM;YACV,IAAI,EAAE,YAAY;YAClB,KAAK,EAAE,aAAa;YACpB,QAAQ;YACR,MAAM,EAAE,IAAI;gBACV,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,CAAC,EAAE,IAAI,EAAE,UAAU,EAAwC,EAAE,EAAE,CAAC,CAAC;oBAC/D,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC;oBAClB,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC;iBAC/B,CAAC,CACH;gBACH,CAAC,CAAC,EAAE;YACN,QAAQ,EAAE,IAAI,KAAK,IAAI;SACxB,CAAC,CAAA;IACJ,CAAC;IAED,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAC3C,YAAY,CAAC,YAAY,CAAC;YACxB,OAAO,EAAE,kBAAkB,CAAC,OAAO,CAAE,CAAC,UAAU;YAChD,GAAG,EAAE,eAAe;YACpB,YAAY,EAAE,cAAc;YAC5B,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,IAAI,GAAG,GAAG,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC;SAClD,CAAC;QACF,mBAAmB,CAAC,YAAY,EAAE,OAAO,EAAE,MAAM,CAAC;KACnD,CAAC,CAAA;IAEF,OAAO,IAAI,SAAS,CAAC;QACnB,OAAO;QACP,EAAE,EAAE,MAAM;QACV,IAAI,EAAE,YAAY;QAClB,KAAK,EAAE,aAAa;QACpB,QAAQ;QACR,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,EAAmC,EAAE,EAAE,CAAC,CAAC;YACxE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC;YAClB,UAAU,EAAE,KAAK;SAClB,CAAC,CAAC;QACH,QAAQ;KACT,CAAC,CAAA;AACJ,CAAC,CAAA"}
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 { NATIVE_CURRENCY } from '../../../constants/chain-configs/currency';
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 NATIVE_CURRENCY[chainId].totalSupply;
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]: NATIVE_CURRENCY[chainId].totalSupply,
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,eAAe,EAAE,MAAM,2CAA2C,CAAA;AAE3E,MAAM,GAAG,GAAG;IACV;QACE,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,CAAC,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACjE,MAAM,EAAE,EAAE;QACV,eAAe,EAAE,MAAM;QACvB,IAAI,EAAE,UAAU;KACjB;CACO,CAAA;AAEV,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAkB,CAAA;AAElD,MAAM,aAAa,GAAG,CAAC,OAAe,EAAE,OAAsB,EAAE,EAAE,CAChE,GAAG,OAAO,IAAI,OAAO,EAAE,CAAA;AAEzB,MAAM,YAAY,GAAG,CAAC,OAAe,EAAE,OAAsB,EAAE,EAAE,CAC/D,gBAAgB,CAAC,GAAG,CAAC,aAAa,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAA;AAEvD,MAAM,UAAU,GAAG,CAAC,OAAe,EAAE,OAAsB,EAAE,KAAa,EAAE,EAAE,CAC5E,gBAAgB,CAAC,GAAG,CAAC,aAAa,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,KAAK,CAAC,CAAA;AAE9D,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,EACnC,YAA0B,EAC1B,OAAe,EACf,OAAsB,EACL,EAAE;IACnB,IAAI,cAAc,CAAC,OAAO,EAAE,WAAW,CAAC,EAAE,CAAC;QACzC,OAAO,eAAe,CAAC,OAAO,CAAC,CAAC,WAAW,CAAA;IAC7C,CAAC;IAED,MAAM,MAAM,GAAG,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;IAC7C,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO,MAAM,CAAA;IACf,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,YAAY,CAAC;QAC7C,OAAO;QACP,GAAG;QACH,YAAY,EAAE,aAAa;KAC5B,CAAC,CAAA;IAEF,UAAU,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;IACpC,OAAO,MAAM,CAAA;AACf,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,EACtC,YAA0B,EAC1B,OAAe,EACf,SAA0B,EACqB,EAAE;IACjD,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CACvB,IAAI,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,cAAc,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,CAClE,CAAA;IAED,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAC/B,MAAM;SACH,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;QACf,MAAM,KAAK,GAAG,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;QAC5C,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;IACtD,CAAC,CAAC;SACD,MAAM,CAAC,OAAO,CAAuB,CACzC,CAAA;IAED,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,CAAA;IAEpD,MAAM,OAAO,GACX,OAAO,CAAC,MAAM,GAAG,CAAC;QAChB,CAAC,CAAC,MAAM,YAAY,CAAC,SAAS,CAAC;YAC3B,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;gBACnC,OAAO;gBACP,GAAG;gBACH,YAAY,EAAE,aAAa;aAC5B,CAAC,CAAC;SACJ,CAAC;QACJ,CAAC,CAAC,EAAE,CAAA;IAER,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAChC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACnB,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;QAC1B,MAAM,MAAM,GAAG,CAAC,CAAC,MAA4B,CAAA;QAC7C,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,mCAAmC,OAAO,EAAE,CAAC,CAAA;QAC/D,CAAC;QACD,UAAU,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;QACpC,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;IAC1B,CAAC,CAAC,CACH,CAAA;IAED,OAAO;QACL,GAAG,MAAM;QACT,GAAG,OAAO;QACV,CAAC,WAA4B,CAAC,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC,WAAW;KACrE,CAAA;AACH,CAAC,CAAA"}
1
+ {"version":3,"file":"total-supply.js","sourceRoot":"","sources":["../../../../../src/entities/currency/apis/total-supply.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import { MarketModel } from '../model';
2
2
  import { getMarketId } from '../utils/market-id';
3
3
  import { fetchCurrencyMap } from '../../currency/apis';
4
4
  import { fetchBook } from '../../book/apis';
5
- export async function fetchMarket(publicClient, chainId, tokenAddresses, useSubgraph, n = 100) {
5
+ export async function fetchMarket(publicClient, chainId, tokenAddresses, useSubgraph) {
6
6
  if (tokenAddresses.length !== 2) {
7
7
  throw new Error('Invalid token pair');
8
8
  }
@@ -16,8 +16,8 @@ export async function fetchMarket(publicClient, chainId, tokenAddresses, useSubg
16
16
  currencyMap[baseTokenAddress],
17
17
  ];
18
18
  const [bidBook, askBook] = await Promise.all([
19
- fetchBook(publicClient, chainId, quoteCurrency, baseCurrency, useSubgraph, n),
20
- fetchBook(publicClient, chainId, baseCurrency, quoteCurrency, useSubgraph, n),
19
+ fetchBook(publicClient, chainId, quoteCurrency, baseCurrency, useSubgraph),
20
+ fetchBook(publicClient, chainId, baseCurrency, quoteCurrency, useSubgraph),
21
21
  ]);
22
22
  return new MarketModel({
23
23
  chainId,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/entities/market/apis/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAE3C,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,YAA0B,EAC1B,OAAkB,EAClB,cAA+B,EAC/B,WAAoB,EACpB,CAAC,GAAG,GAAG;IAEP,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAA;IACvC,CAAC;IAED,MAAM,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,GAAG,WAAW,CAAC,OAAO,EAAE;QACnE,cAAc,CAAC,CAAC,CAAE;QAClB,cAAc,CAAC,CAAC,CAAE;KACnB,CAAC,CAAA;IACF,MAAM,WAAW,GAAG,MAAM,gBAAgB,CACxC,YAAY,EACZ,OAAO,EACP,CAAC,iBAAiB,EAAE,gBAAgB,CAAC,EACrC,WAAW,CACZ,CAAA;IACD,MAAM,CAAC,aAAa,EAAE,YAAY,CAAC,GAAG;QACpC,WAAW,CAAC,iBAAiB,CAAC;QAC9B,WAAW,CAAC,gBAAgB,CAAC;KAC9B,CAAA;IACD,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAC3C,SAAS,CACP,YAAY,EACZ,OAAO,EACP,aAAa,EACb,YAAY,EACZ,WAAW,EACX,CAAC,CACF;QACD,SAAS,CACP,YAAY,EACZ,OAAO,EACP,YAAY,EACZ,aAAa,EACb,WAAW,EACX,CAAC,CACF;KACF,CAAC,CAAA;IAEF,OAAO,IAAI,WAAW,CAAC;QACrB,OAAO;QACP,MAAM,EAAE,CAAC,aAAa,EAAE,YAAY,CAAC;QACrC,OAAO;QACP,OAAO;KACR,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/entities/market/apis/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAA;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAE3C,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,YAA0B,EAC1B,OAAkB,EAClB,cAA+B,EAC/B,WAAoB;IAEpB,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAA;IACvC,CAAC;IAED,MAAM,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,GAAG,WAAW,CAAC,OAAO,EAAE;QACnE,cAAc,CAAC,CAAC,CAAE;QAClB,cAAc,CAAC,CAAC,CAAE;KACnB,CAAC,CAAA;IACF,MAAM,WAAW,GAAG,MAAM,gBAAgB,CACxC,YAAY,EACZ,OAAO,EACP,CAAC,iBAAiB,EAAE,gBAAgB,CAAC,EACrC,WAAW,CACZ,CAAA;IACD,MAAM,CAAC,aAAa,EAAE,YAAY,CAAC,GAAG;QACpC,WAAW,CAAC,iBAAiB,CAAC;QAC9B,WAAW,CAAC,gBAAgB,CAAC;KAC9B,CAAA;IACD,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAC3C,SAAS,CAAC,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,WAAW,CAAC;QAC1E,SAAS,CAAC,YAAY,EAAE,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,WAAW,CAAC;KAC3E,CAAC,CAAA;IAEF,OAAO,IAAI,WAAW,CAAC;QACrB,OAAO;QACP,MAAM,EAAE,CAAC,aAAa,EAAE,YAAY,CAAC;QACrC,OAAO;QACP,OAAO;KACR,CAAC,CAAA;AACJ,CAAC"}