@clober/v2-sdk 1.0.0-rc.4 → 1.0.0-rc.40

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 (166) hide show
  1. package/dist/cjs/calls/index.js +1 -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/constants/abis/core/controller-abi.js +24 -1
  6. package/dist/cjs/constants/abis/core/controller-abi.js.map +1 -1
  7. package/dist/cjs/constants/chain-configs/addresses.js +21 -21
  8. package/dist/cjs/constants/chain-configs/addresses.js.map +1 -1
  9. package/dist/cjs/constants/chain-configs/chain.js +2 -2
  10. package/dist/cjs/constants/chain-configs/chain.js.map +1 -1
  11. package/dist/cjs/constants/chain-configs/currency.js +94 -24
  12. package/dist/cjs/constants/chain-configs/currency.js.map +1 -1
  13. package/dist/cjs/constants/chain-configs/fee.js +2 -2
  14. package/dist/cjs/constants/chain-configs/fee.js.map +1 -1
  15. package/dist/cjs/constants/chain-configs/subgraph.js +2 -2
  16. package/dist/cjs/constants/chain-configs/subgraph.js.map +1 -1
  17. package/dist/cjs/constants/networks/test-chain.js +1 -24
  18. package/dist/cjs/constants/networks/test-chain.js.map +1 -1
  19. package/dist/cjs/entities/analytics/apis/index.js +83 -16
  20. package/dist/cjs/entities/analytics/apis/index.js.map +1 -1
  21. package/dist/cjs/entities/book/apis/index.js +46 -15
  22. package/dist/cjs/entities/book/apis/index.js.map +1 -1
  23. package/dist/cjs/entities/currency/apis/total-supply.js +3 -6
  24. package/dist/cjs/entities/currency/apis/total-supply.js.map +1 -1
  25. package/dist/cjs/entities/market/apis/index.js +3 -3
  26. package/dist/cjs/entities/market/apis/index.js.map +1 -1
  27. package/dist/cjs/entities/market/apis/snapshot.js +234 -80
  28. package/dist/cjs/entities/market/apis/snapshot.js.map +1 -1
  29. package/dist/cjs/entities/market/utils/market-id.js +1 -1
  30. package/dist/cjs/entities/market/utils/market-id.js.map +1 -1
  31. package/dist/cjs/entities/pool/apis/index.js +1 -0
  32. package/dist/cjs/entities/pool/apis/index.js.map +1 -1
  33. package/dist/cjs/entities/pool/apis/snapshot.js +21 -16
  34. package/dist/cjs/entities/pool/apis/snapshot.js.map +1 -1
  35. package/dist/cjs/entities/pool/model.js +9 -1
  36. package/dist/cjs/entities/pool/model.js.map +1 -1
  37. package/dist/cjs/types/index.js.map +1 -1
  38. package/dist/cjs/utils/bigint.js +4 -1
  39. package/dist/cjs/utils/bigint.js.map +1 -1
  40. package/dist/cjs/views/analytics.js +9 -1
  41. package/dist/cjs/views/analytics.js.map +1 -1
  42. package/dist/cjs/views/currency.js +5 -1
  43. package/dist/cjs/views/currency.js.map +1 -1
  44. package/dist/cjs/views/index.js +5 -1
  45. package/dist/cjs/views/index.js.map +1 -1
  46. package/dist/cjs/views/market/chart-log.js +2 -2
  47. package/dist/cjs/views/market/index.js +1 -1
  48. package/dist/cjs/views/market/index.js.map +1 -1
  49. package/dist/cjs/views/market/snapshot.js.map +1 -1
  50. package/dist/cjs/views/subgraph.js +12 -2
  51. package/dist/cjs/views/subgraph.js.map +1 -1
  52. package/dist/esm/calls/index.js +0 -1
  53. package/dist/esm/calls/index.js.map +1 -1
  54. package/dist/esm/calls/market/limit.js +6 -1
  55. package/dist/esm/calls/market/limit.js.map +1 -1
  56. package/dist/esm/constants/abis/core/controller-abi.js +24 -1
  57. package/dist/esm/constants/abis/core/controller-abi.js.map +1 -1
  58. package/dist/esm/constants/chain-configs/addresses.js +24 -33
  59. package/dist/esm/constants/chain-configs/addresses.js.map +1 -1
  60. package/dist/esm/constants/chain-configs/chain.js +4 -6
  61. package/dist/esm/constants/chain-configs/chain.js.map +1 -1
  62. package/dist/esm/constants/chain-configs/currency.js +96 -38
  63. package/dist/esm/constants/chain-configs/currency.js.map +1 -1
  64. package/dist/esm/constants/chain-configs/fee.js +2 -4
  65. package/dist/esm/constants/chain-configs/fee.js.map +1 -1
  66. package/dist/esm/constants/chain-configs/subgraph.js +2 -4
  67. package/dist/esm/constants/chain-configs/subgraph.js.map +1 -1
  68. package/dist/esm/constants/networks/test-chain.js +0 -23
  69. package/dist/esm/constants/networks/test-chain.js.map +1 -1
  70. package/dist/esm/entities/analytics/apis/index.js +80 -15
  71. package/dist/esm/entities/analytics/apis/index.js.map +1 -1
  72. package/dist/esm/entities/book/apis/index.js +46 -15
  73. package/dist/esm/entities/book/apis/index.js.map +1 -1
  74. package/dist/esm/entities/currency/apis/total-supply.js +4 -7
  75. package/dist/esm/entities/currency/apis/total-supply.js.map +1 -1
  76. package/dist/esm/entities/market/apis/index.js +3 -3
  77. package/dist/esm/entities/market/apis/index.js.map +1 -1
  78. package/dist/esm/entities/market/apis/snapshot.js +236 -81
  79. package/dist/esm/entities/market/apis/snapshot.js.map +1 -1
  80. package/dist/esm/entities/market/utils/market-id.js +2 -2
  81. package/dist/esm/entities/market/utils/market-id.js.map +1 -1
  82. package/dist/esm/entities/pool/apis/index.js +1 -0
  83. package/dist/esm/entities/pool/apis/index.js.map +1 -1
  84. package/dist/esm/entities/pool/apis/snapshot.js +22 -17
  85. package/dist/esm/entities/pool/apis/snapshot.js.map +1 -1
  86. package/dist/esm/entities/pool/model.js +9 -1
  87. package/dist/esm/entities/pool/model.js.map +1 -1
  88. package/dist/esm/types/index.js.map +1 -1
  89. package/dist/esm/utils/bigint.js +2 -0
  90. package/dist/esm/utils/bigint.js.map +1 -1
  91. package/dist/esm/views/analytics.js +7 -1
  92. package/dist/esm/views/analytics.js.map +1 -1
  93. package/dist/esm/views/currency.js +4 -1
  94. package/dist/esm/views/currency.js.map +1 -1
  95. package/dist/esm/views/index.js +3 -3
  96. package/dist/esm/views/index.js.map +1 -1
  97. package/dist/esm/views/market/chart-log.js +2 -2
  98. package/dist/esm/views/market/index.js +1 -2
  99. package/dist/esm/views/market/index.js.map +1 -1
  100. package/dist/esm/views/market/snapshot.js.map +1 -1
  101. package/dist/esm/views/subgraph.js +22 -1
  102. package/dist/esm/views/subgraph.js.map +1 -1
  103. package/dist/tsconfig.build.tsbuildinfo +1 -1
  104. package/dist/types/calls/index.d.ts +0 -1
  105. package/dist/types/calls/index.d.ts.map +1 -1
  106. package/dist/types/calls/market/limit.d.ts +1 -0
  107. package/dist/types/calls/market/limit.d.ts.map +1 -1
  108. package/dist/types/constants/abis/core/controller-abi.d.ts +19 -1
  109. package/dist/types/constants/abis/core/controller-abi.d.ts.map +1 -1
  110. package/dist/types/constants/chain-configs/addresses.d.ts.map +1 -1
  111. package/dist/types/constants/chain-configs/chain.d.ts +1 -1
  112. package/dist/types/constants/chain-configs/chain.d.ts.map +1 -1
  113. package/dist/types/constants/chain-configs/currency.d.ts +8 -11
  114. package/dist/types/constants/chain-configs/currency.d.ts.map +1 -1
  115. package/dist/types/constants/chain-configs/fee.d.ts.map +1 -1
  116. package/dist/types/constants/chain-configs/subgraph.d.ts.map +1 -1
  117. package/dist/types/constants/networks/test-chain.d.ts +0 -1
  118. package/dist/types/constants/networks/test-chain.d.ts.map +1 -1
  119. package/dist/types/entities/analytics/apis/index.d.ts +3 -1
  120. package/dist/types/entities/analytics/apis/index.d.ts.map +1 -1
  121. package/dist/types/entities/analytics/types.d.ts +12 -1
  122. package/dist/types/entities/analytics/types.d.ts.map +1 -1
  123. package/dist/types/entities/book/apis/index.d.ts +1 -1
  124. package/dist/types/entities/book/apis/index.d.ts.map +1 -1
  125. package/dist/types/entities/currency/apis/total-supply.d.ts.map +1 -1
  126. package/dist/types/entities/market/apis/index.d.ts +1 -1
  127. package/dist/types/entities/market/apis/index.d.ts.map +1 -1
  128. package/dist/types/entities/market/apis/snapshot.d.ts +1 -1
  129. package/dist/types/entities/market/apis/snapshot.d.ts.map +1 -1
  130. package/dist/types/entities/market/types.d.ts +2 -0
  131. package/dist/types/entities/market/types.d.ts.map +1 -1
  132. package/dist/types/entities/pool/apis/index.d.ts.map +1 -1
  133. package/dist/types/entities/pool/apis/snapshot.d.ts.map +1 -1
  134. package/dist/types/entities/pool/model.d.ts +3 -1
  135. package/dist/types/entities/pool/model.d.ts.map +1 -1
  136. package/dist/types/entities/pool/types.d.ts +4 -0
  137. package/dist/types/entities/pool/types.d.ts.map +1 -1
  138. package/dist/types/types/index.d.ts +1 -0
  139. package/dist/types/types/index.d.ts.map +1 -1
  140. package/dist/types/utils/bigint.d.ts +1 -0
  141. package/dist/types/utils/bigint.d.ts.map +1 -1
  142. package/dist/types/views/analytics.d.ts +8 -1
  143. package/dist/types/views/analytics.d.ts.map +1 -1
  144. package/dist/types/views/currency.d.ts +5 -6
  145. package/dist/types/views/currency.d.ts.map +1 -1
  146. package/dist/types/views/index.d.ts +3 -3
  147. package/dist/types/views/index.d.ts.map +1 -1
  148. package/dist/types/views/market/index.d.ts +0 -2
  149. package/dist/types/views/market/index.d.ts.map +1 -1
  150. package/dist/types/views/market/snapshot.d.ts +1 -1
  151. package/dist/types/views/market/snapshot.d.ts.map +1 -1
  152. package/dist/types/views/subgraph.d.ts +20 -0
  153. package/dist/types/views/subgraph.d.ts.map +1 -1
  154. package/package.json +1 -1
  155. package/dist/cjs/calls/pool/market-making/strategy.js +0 -78
  156. package/dist/cjs/calls/pool/market-making/strategy.js.map +0 -1
  157. package/dist/cjs/entities/book/apis/open.js +0 -46
  158. package/dist/cjs/entities/book/apis/open.js.map +0 -1
  159. package/dist/esm/calls/pool/market-making/strategy.js +0 -75
  160. package/dist/esm/calls/pool/market-making/strategy.js.map +0 -1
  161. package/dist/esm/entities/book/apis/open.js +0 -42
  162. package/dist/esm/entities/book/apis/open.js.map +0 -1
  163. package/dist/types/calls/pool/market-making/strategy.d.ts +0 -23
  164. package/dist/types/calls/pool/market-making/strategy.d.ts.map +0 -1
  165. package/dist/types/entities/book/apis/open.d.ts +0 -4
  166. package/dist/types/entities/book/apis/open.d.ts.map +0 -1
@@ -1,78 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.setStrategyConfig = void 0;
4
- const viem_1 = require("viem");
5
- const chain_1 = require("../../../constants/chain-configs/chain");
6
- const apis_1 = require("../../../entities/pool/apis");
7
- const build_transaction_1 = require("../../../utils/build-transaction");
8
- const addresses_1 = require("../../../constants/chain-configs/addresses");
9
- const strategy_abi_1 = require("../../../constants/abis/rebalancer/strategy-abi");
10
- const setStrategyConfig = async ({ chainId, userAddress, token0, token1, salt, config, options, }) => {
11
- if (Number(config.referenceThreshold) < 0 ||
12
- Number(config.referenceThreshold) > 1) {
13
- throw new Error('Reference threshold must be in the range [0, 1]');
14
- }
15
- if (Number(config.rebalanceThreshold) < 0 ||
16
- Number(config.rebalanceThreshold) > 1) {
17
- throw new Error('Rebalance threshold must be in the range [0, 1]');
18
- }
19
- if (Number(config.priceThresholdA) < 0 ||
20
- Number(config.priceThresholdA) > 1 ||
21
- Number(config.priceThresholdB) < 0 ||
22
- Number(config.priceThresholdB) > 1) {
23
- throw new Error('Price threshold must be in the range [0, 1]');
24
- }
25
- if (Number(config.rateA) < 0 ||
26
- Number(config.rateA) > 1 ||
27
- Number(config.rateB) < 0 ||
28
- Number(config.rateB) > 1) {
29
- throw new Error('Rate must be in the range [0, 1]');
30
- }
31
- if (Number(config.minRateA) < 0 ||
32
- Number(config.minRateA) > 1 ||
33
- Number(config.minRateB) < 0 ||
34
- Number(config.minRateB) > 1) {
35
- throw new Error('Min rate must be in the range [0, 1]');
36
- }
37
- if (Number(config.minRateA) > Number(config.rateA) ||
38
- Number(config.minRateB) > Number(config.rateB)) {
39
- throw new Error('Min rate must be less or equal to rate');
40
- }
41
- const publicClient = (0, viem_1.createPublicClient)({
42
- chain: chain_1.CHAIN_MAP[chainId],
43
- transport: options?.rpcUrl ? (0, viem_1.http)(options.rpcUrl) : (0, viem_1.http)(),
44
- });
45
- const pool = await (0, apis_1.fetchPool)(publicClient, chainId, [token0, token1], salt, !!(options && options.useSubgraph));
46
- if (!pool.isOpened) {
47
- throw new Error(`
48
- Open the pool before set strategy config.
49
- import { openPool } from '@clober/v2-sdk'
50
-
51
- const transaction = await openPool({
52
- chainId: ${chainId},
53
- tokenA: '${token0}',
54
- tokenB: '${token1}',
55
- })
56
- `);
57
- }
58
- const configRaw = {
59
- referenceThreshold: (0, viem_1.parseUnits)(config.referenceThreshold, 6),
60
- rebalanceThreshold: (0, viem_1.parseUnits)(config.rebalanceThreshold, 6),
61
- rateA: (0, viem_1.parseUnits)(config.rateA, 6),
62
- rateB: (0, viem_1.parseUnits)(config.rateB, 6),
63
- minRateA: (0, viem_1.parseUnits)(config.minRateA, 6),
64
- minRateB: (0, viem_1.parseUnits)(config.minRateB, 6),
65
- priceThresholdA: (0, viem_1.parseUnits)(config.priceThresholdA, 6),
66
- priceThresholdB: (0, viem_1.parseUnits)(config.priceThresholdB, 6),
67
- };
68
- return (0, build_transaction_1.buildTransaction)(publicClient, {
69
- chain: chain_1.CHAIN_MAP[chainId],
70
- account: userAddress,
71
- address: addresses_1.CONTRACT_ADDRESSES[chainId].Strategy,
72
- abi: strategy_abi_1.STRATEGY_ABI,
73
- functionName: 'setConfig',
74
- args: [pool.key, configRaw],
75
- }, options?.gasLimit);
76
- };
77
- exports.setStrategyConfig = setStrategyConfig;
78
- //# sourceMappingURL=strategy.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"strategy.js","sourceRoot":"","sources":["../../../../../src/calls/pool/market-making/strategy.ts"],"names":[],"mappings":"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"}
@@ -1,46 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.fetchIsMarketOpened = void 0;
4
- const addresses_1 = require("../../../constants/chain-configs/addresses");
5
- const buildBookCacheKey = (chainId, bookId) => `${chainId}:${bookId}`;
6
- const isMarketOpenedCache = new Map();
7
- const getIsMarketOpenedFromCache = (chainId, bookId) => isMarketOpenedCache.get(buildBookCacheKey(chainId, bookId));
8
- const setIsMarketOpenedToCache = (chainId, bookId, isOpened) => isMarketOpenedCache.set(buildBookCacheKey(chainId, bookId), isOpened);
9
- async function fetchIsMarketOpened(publicClient, chainId, bookId) {
10
- const cachedIsMarketOpened = getIsMarketOpenedFromCache(chainId, bookId);
11
- if (cachedIsMarketOpened !== undefined) {
12
- return cachedIsMarketOpened;
13
- }
14
- const isMarketOpened = await publicClient.readContract({
15
- address: addresses_1.CONTRACT_ADDRESSES[chainId].BookManager,
16
- abi: [
17
- {
18
- inputs: [
19
- {
20
- internalType: 'BookId',
21
- name: 'id',
22
- type: 'uint192',
23
- },
24
- ],
25
- name: 'isOpened',
26
- outputs: [
27
- {
28
- internalType: 'bool',
29
- name: '',
30
- type: 'bool',
31
- },
32
- ],
33
- stateMutability: 'view',
34
- type: 'function',
35
- },
36
- ],
37
- functionName: 'isOpened',
38
- args: [bookId],
39
- });
40
- if (isMarketOpened) {
41
- setIsMarketOpenedToCache(chainId, bookId, isMarketOpened);
42
- }
43
- return isMarketOpened;
44
- }
45
- exports.fetchIsMarketOpened = fetchIsMarketOpened;
46
- //# sourceMappingURL=open.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"open.js","sourceRoot":"","sources":["../../../../../src/entities/book/apis/open.ts"],"names":[],"mappings":";;;AAGA,0EAA+E;AAE/E,MAAM,iBAAiB,GAAG,CAAC,OAAkB,EAAE,MAAc,EAAE,EAAE,CAC/D,GAAG,OAAO,IAAI,MAAM,EAAE,CAAA;AACxB,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAmB,CAAA;AACtD,MAAM,0BAA0B,GAAG,CAAC,OAAkB,EAAE,MAAc,EAAE,EAAE,CACxE,mBAAmB,CAAC,GAAG,CAAC,iBAAiB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAA;AAC7D,MAAM,wBAAwB,GAAG,CAC/B,OAAkB,EAClB,MAAc,EACd,QAAiB,EACjB,EAAE,CAAC,mBAAmB,CAAC,GAAG,CAAC,iBAAiB,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,QAAQ,CAAC,CAAA;AAEnE,KAAK,UAAU,mBAAmB,CACvC,YAA0B,EAC1B,OAAkB,EAClB,MAAc;IAEd,MAAM,oBAAoB,GAAG,0BAA0B,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;IACxE,IAAI,oBAAoB,KAAK,SAAS,EAAE,CAAC;QACvC,OAAO,oBAAoB,CAAA;IAC7B,CAAC;IACD,MAAM,cAAc,GAAG,MAAM,YAAY,CAAC,YAAY,CAAC;QACrD,OAAO,EAAE,8BAAkB,CAAC,OAAO,CAAE,CAAC,WAAW;QACjD,GAAG,EAAE;YACH;gBACE,MAAM,EAAE;oBACN;wBACE,YAAY,EAAE,QAAQ;wBACtB,IAAI,EAAE,IAAI;wBACV,IAAI,EAAE,SAAS;qBAChB;iBACF;gBACD,IAAI,EAAE,UAAU;gBAChB,OAAO,EAAE;oBACP;wBACE,YAAY,EAAE,MAAM;wBACpB,IAAI,EAAE,EAAE;wBACR,IAAI,EAAE,MAAM;qBACb;iBACF;gBACD,eAAe,EAAE,MAAM;gBACvB,IAAI,EAAE,UAAU;aACjB;SACO;QACV,YAAY,EAAE,UAAU;QACxB,IAAI,EAAE,CAAC,MAAM,CAAC;KACf,CAAC,CAAA;IACF,IAAI,cAAc,EAAE,CAAC;QACnB,wBAAwB,CAAC,OAAO,EAAE,MAAM,EAAE,cAAc,CAAC,CAAA;IAC3D,CAAC;IACD,OAAO,cAAc,CAAA;AACvB,CAAC;AAvCD,kDAuCC"}
@@ -1,75 +0,0 @@
1
- import { createPublicClient, http, parseUnits } from 'viem';
2
- import { CHAIN_MAP } from '../../../constants/chain-configs/chain';
3
- import { fetchPool } from '../../../entities/pool/apis';
4
- import { buildTransaction } from '../../../utils/build-transaction';
5
- import { CONTRACT_ADDRESSES } from '../../../constants/chain-configs/addresses';
6
- import { STRATEGY_ABI } from '../../../constants/abis/rebalancer/strategy-abi';
7
- export const setStrategyConfig = async ({ chainId, userAddress, token0, token1, salt, config, options, }) => {
8
- // validate config
9
- if (Number(config.referenceThreshold) < 0 ||
10
- Number(config.referenceThreshold) > 1) {
11
- throw new Error('Reference threshold must be in the range [0, 1]');
12
- }
13
- if (Number(config.rebalanceThreshold) < 0 ||
14
- Number(config.rebalanceThreshold) > 1) {
15
- throw new Error('Rebalance threshold must be in the range [0, 1]');
16
- }
17
- if (Number(config.priceThresholdA) < 0 ||
18
- Number(config.priceThresholdA) > 1 ||
19
- Number(config.priceThresholdB) < 0 ||
20
- Number(config.priceThresholdB) > 1) {
21
- throw new Error('Price threshold must be in the range [0, 1]');
22
- }
23
- if (Number(config.rateA) < 0 ||
24
- Number(config.rateA) > 1 ||
25
- Number(config.rateB) < 0 ||
26
- Number(config.rateB) > 1) {
27
- throw new Error('Rate must be in the range [0, 1]');
28
- }
29
- if (Number(config.minRateA) < 0 ||
30
- Number(config.minRateA) > 1 ||
31
- Number(config.minRateB) < 0 ||
32
- Number(config.minRateB) > 1) {
33
- throw new Error('Min rate must be in the range [0, 1]');
34
- }
35
- if (Number(config.minRateA) > Number(config.rateA) ||
36
- Number(config.minRateB) > Number(config.rateB)) {
37
- throw new Error('Min rate must be less or equal to rate');
38
- }
39
- const publicClient = createPublicClient({
40
- chain: CHAIN_MAP[chainId],
41
- transport: options?.rpcUrl ? http(options.rpcUrl) : http(),
42
- });
43
- const pool = await fetchPool(publicClient, chainId, [token0, token1], salt, !!(options && options.useSubgraph));
44
- if (!pool.isOpened) {
45
- throw new Error(`
46
- Open the pool before set strategy config.
47
- import { openPool } from '@clober/v2-sdk'
48
-
49
- const transaction = await openPool({
50
- chainId: ${chainId},
51
- tokenA: '${token0}',
52
- tokenB: '${token1}',
53
- })
54
- `);
55
- }
56
- const configRaw = {
57
- referenceThreshold: parseUnits(config.referenceThreshold, 6),
58
- rebalanceThreshold: parseUnits(config.rebalanceThreshold, 6),
59
- rateA: parseUnits(config.rateA, 6),
60
- rateB: parseUnits(config.rateB, 6),
61
- minRateA: parseUnits(config.minRateA, 6),
62
- minRateB: parseUnits(config.minRateB, 6),
63
- priceThresholdA: parseUnits(config.priceThresholdA, 6),
64
- priceThresholdB: parseUnits(config.priceThresholdB, 6),
65
- };
66
- return buildTransaction(publicClient, {
67
- chain: CHAIN_MAP[chainId],
68
- account: userAddress,
69
- address: CONTRACT_ADDRESSES[chainId].Strategy,
70
- abi: STRATEGY_ABI,
71
- functionName: 'setConfig',
72
- args: [pool.key, configRaw],
73
- }, options?.gasLimit);
74
- };
75
- //# sourceMappingURL=strategy.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"strategy.js","sourceRoot":"","sources":["../../../../../src/calls/pool/market-making/strategy.ts"],"names":[],"mappings":"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"}
@@ -1,42 +0,0 @@
1
- import { CONTRACT_ADDRESSES } from '../../../constants/chain-configs/addresses';
2
- const buildBookCacheKey = (chainId, bookId) => `${chainId}:${bookId}`;
3
- const isMarketOpenedCache = new Map();
4
- const getIsMarketOpenedFromCache = (chainId, bookId) => isMarketOpenedCache.get(buildBookCacheKey(chainId, bookId));
5
- const setIsMarketOpenedToCache = (chainId, bookId, isOpened) => isMarketOpenedCache.set(buildBookCacheKey(chainId, bookId), isOpened);
6
- export async function fetchIsMarketOpened(publicClient, chainId, bookId) {
7
- const cachedIsMarketOpened = getIsMarketOpenedFromCache(chainId, bookId);
8
- if (cachedIsMarketOpened !== undefined) {
9
- return cachedIsMarketOpened;
10
- }
11
- const isMarketOpened = await publicClient.readContract({
12
- address: CONTRACT_ADDRESSES[chainId].BookManager,
13
- abi: [
14
- {
15
- inputs: [
16
- {
17
- internalType: 'BookId',
18
- name: 'id',
19
- type: 'uint192',
20
- },
21
- ],
22
- name: 'isOpened',
23
- outputs: [
24
- {
25
- internalType: 'bool',
26
- name: '',
27
- type: 'bool',
28
- },
29
- ],
30
- stateMutability: 'view',
31
- type: 'function',
32
- },
33
- ],
34
- functionName: 'isOpened',
35
- args: [bookId],
36
- });
37
- if (isMarketOpened) {
38
- setIsMarketOpenedToCache(chainId, bookId, isMarketOpened);
39
- }
40
- return isMarketOpened;
41
- }
42
- //# sourceMappingURL=open.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"open.js","sourceRoot":"","sources":["../../../../../src/entities/book/apis/open.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kBAAkB,EAAE,MAAM,4CAA4C,CAAA;AAE/E,MAAM,iBAAiB,GAAG,CAAC,OAAkB,EAAE,MAAc,EAAE,EAAE,CAC/D,GAAG,OAAO,IAAI,MAAM,EAAE,CAAA;AACxB,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAmB,CAAA;AACtD,MAAM,0BAA0B,GAAG,CAAC,OAAkB,EAAE,MAAc,EAAE,EAAE,CACxE,mBAAmB,CAAC,GAAG,CAAC,iBAAiB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAA;AAC7D,MAAM,wBAAwB,GAAG,CAC/B,OAAkB,EAClB,MAAc,EACd,QAAiB,EACjB,EAAE,CAAC,mBAAmB,CAAC,GAAG,CAAC,iBAAiB,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,QAAQ,CAAC,CAAA;AAE1E,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,YAA0B,EAC1B,OAAkB,EAClB,MAAc;IAEd,MAAM,oBAAoB,GAAG,0BAA0B,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;IACxE,IAAI,oBAAoB,KAAK,SAAS,EAAE,CAAC;QACvC,OAAO,oBAAoB,CAAA;IAC7B,CAAC;IACD,MAAM,cAAc,GAAG,MAAM,YAAY,CAAC,YAAY,CAAC;QACrD,OAAO,EAAE,kBAAkB,CAAC,OAAO,CAAE,CAAC,WAAW;QACjD,GAAG,EAAE;YACH;gBACE,MAAM,EAAE;oBACN;wBACE,YAAY,EAAE,QAAQ;wBACtB,IAAI,EAAE,IAAI;wBACV,IAAI,EAAE,SAAS;qBAChB;iBACF;gBACD,IAAI,EAAE,UAAU;gBAChB,OAAO,EAAE;oBACP;wBACE,YAAY,EAAE,MAAM;wBACpB,IAAI,EAAE,EAAE;wBACR,IAAI,EAAE,MAAM;qBACb;iBACF;gBACD,eAAe,EAAE,MAAM;gBACvB,IAAI,EAAE,UAAU;aACjB;SACO;QACV,YAAY,EAAE,UAAU;QACxB,IAAI,EAAE,CAAC,MAAM,CAAC;KACf,CAAC,CAAA;IACF,IAAI,cAAc,EAAE,CAAC;QACnB,wBAAwB,CAAC,OAAO,EAAE,MAAM,EAAE,cAAc,CAAC,CAAA;IAC3D,CAAC;IACD,OAAO,cAAc,CAAA;AACvB,CAAC"}
@@ -1,23 +0,0 @@
1
- import { CHAIN_IDS } from '../../../constants/chain-configs/chain';
2
- import { DefaultWriteContractOptions, Transaction } from '../../../types';
3
- export declare const setStrategyConfig: ({ chainId, userAddress, token0, token1, salt, config, options, }: {
4
- chainId: CHAIN_IDS;
5
- userAddress: `0x${string}`;
6
- token0: `0x${string}`;
7
- token1: `0x${string}`;
8
- salt: `0x${string}`;
9
- config: {
10
- referenceThreshold: string;
11
- rebalanceThreshold: string;
12
- rateA: string;
13
- rateB: string;
14
- minRateA: string;
15
- minRateB: string;
16
- priceThresholdA: string;
17
- priceThresholdB: string;
18
- };
19
- options?: {
20
- useSubgraph?: boolean;
21
- } & DefaultWriteContractOptions;
22
- }) => Promise<Transaction>;
23
- //# sourceMappingURL=strategy.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"strategy.d.ts","sourceRoot":"","sources":["../../../../../src/calls/pool/market-making/strategy.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAa,MAAM,wCAAwC,CAAA;AAC7E,OAAO,EAAE,2BAA2B,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAMzE,eAAO,MAAM,iBAAiB,qEAQ3B;IACD,OAAO,EAAE,SAAS,CAAA;IAClB,WAAW,EAAE,KAAK,MAAM,EAAE,CAAA;IAC1B,MAAM,EAAE,KAAK,MAAM,EAAE,CAAA;IACrB,MAAM,EAAE,KAAK,MAAM,EAAE,CAAA;IACrB,IAAI,EAAE,KAAK,MAAM,EAAE,CAAA;IACnB,MAAM,EAAE;QACN,kBAAkB,EAAE,MAAM,CAAA;QAC1B,kBAAkB,EAAE,MAAM,CAAA;QAC1B,KAAK,EAAE,MAAM,CAAA;QACb,KAAK,EAAE,MAAM,CAAA;QACb,QAAQ,EAAE,MAAM,CAAA;QAChB,QAAQ,EAAE,MAAM,CAAA;QAChB,eAAe,EAAE,MAAM,CAAA;QACvB,eAAe,EAAE,MAAM,CAAA;KACxB,CAAA;IACD,OAAO,CAAC,EAAE;QACR,WAAW,CAAC,EAAE,OAAO,CAAA;KACtB,GAAG,2BAA2B,CAAA;CAChC,KAAG,QAAQ,WAAW,CA0FtB,CAAA"}
@@ -1,4 +0,0 @@
1
- import { PublicClient } from 'viem';
2
- import { CHAIN_IDS } from '../../../constants/chain-configs/chain';
3
- export declare function fetchIsMarketOpened(publicClient: PublicClient, chainId: CHAIN_IDS, bookId: bigint): Promise<boolean>;
4
- //# sourceMappingURL=open.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"open.d.ts","sourceRoot":"","sources":["../../../../../src/entities/book/apis/open.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,MAAM,CAAA;AAEnC,OAAO,EAAE,SAAS,EAAE,MAAM,wCAAwC,CAAA;AAclE,wBAAsB,mBAAmB,CACvC,YAAY,EAAE,YAAY,EAC1B,OAAO,EAAE,SAAS,EAClB,MAAM,EAAE,MAAM,oBAoCf"}