@clober/v2-sdk 1.0.0-beta.24 → 1.0.0-beta.26

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 (68) hide show
  1. package/dist/cjs/entities/swap/apis/index.js +48 -0
  2. package/dist/cjs/entities/swap/apis/index.js.map +1 -0
  3. package/dist/{esm/entities/take → cjs/entities/swap}/types.js.map +1 -1
  4. package/dist/cjs/types/events.js +3 -0
  5. package/dist/cjs/types/events.js.map +1 -0
  6. package/dist/cjs/types/index.js.map +1 -1
  7. package/dist/cjs/views/index.js +4 -4
  8. package/dist/cjs/views/index.js.map +1 -1
  9. package/dist/cjs/views/market/index.js +2 -2
  10. package/dist/cjs/views/market/index.js.map +1 -1
  11. package/dist/cjs/views/market/take.js +79 -5
  12. package/dist/cjs/views/market/take.js.map +1 -1
  13. package/dist/cjs/views/pool/market-making.js +1 -0
  14. package/dist/cjs/views/pool/market-making.js.map +1 -1
  15. package/dist/cjs/views/swap.js +15 -0
  16. package/dist/cjs/views/swap.js.map +1 -0
  17. package/dist/esm/entities/swap/apis/index.js +44 -0
  18. package/dist/esm/entities/swap/apis/index.js.map +1 -0
  19. package/dist/{cjs/entities/take → esm/entities/swap}/types.js.map +1 -1
  20. package/dist/esm/types/events.js +2 -0
  21. package/dist/esm/types/events.js.map +1 -0
  22. package/dist/esm/types/index.js.map +1 -1
  23. package/dist/esm/views/index.js +2 -2
  24. package/dist/esm/views/index.js.map +1 -1
  25. package/dist/esm/views/market/index.js +1 -1
  26. package/dist/esm/views/market/index.js.map +1 -1
  27. package/dist/esm/views/market/take.js +77 -3
  28. package/dist/esm/views/market/take.js.map +1 -1
  29. package/dist/esm/views/pool/market-making.js +1 -0
  30. package/dist/esm/views/pool/market-making.js.map +1 -1
  31. package/dist/esm/views/swap.js +11 -0
  32. package/dist/esm/views/swap.js.map +1 -0
  33. package/dist/tsconfig.build.tsbuildinfo +1 -1
  34. package/dist/types/entities/swap/apis/index.d.ts +5 -0
  35. package/dist/types/entities/swap/apis/index.d.ts.map +1 -0
  36. package/dist/types/entities/swap/types.d.ts +12 -0
  37. package/dist/types/entities/swap/types.d.ts.map +1 -0
  38. package/dist/types/types/events.d.ts +27 -0
  39. package/dist/types/types/events.d.ts.map +1 -0
  40. package/dist/types/types/index.d.ts +2 -1
  41. package/dist/types/types/index.d.ts.map +1 -1
  42. package/dist/types/views/index.d.ts +2 -2
  43. package/dist/types/views/index.d.ts.map +1 -1
  44. package/dist/types/views/market/index.d.ts +1 -1
  45. package/dist/types/views/market/index.d.ts.map +1 -1
  46. package/dist/types/views/market/take.d.ts +11 -5
  47. package/dist/types/views/market/take.d.ts.map +1 -1
  48. package/dist/types/views/pool/market-making.d.ts +2 -15
  49. package/dist/types/views/pool/market-making.d.ts.map +1 -1
  50. package/dist/types/views/swap.d.ts +10 -0
  51. package/dist/types/views/swap.d.ts.map +1 -0
  52. package/package.json +1 -1
  53. package/dist/cjs/entities/take/apis/index.js +0 -35
  54. package/dist/cjs/entities/take/apis/index.js.map +0 -1
  55. package/dist/cjs/views/trade.js +0 -83
  56. package/dist/cjs/views/trade.js.map +0 -1
  57. package/dist/esm/entities/take/apis/index.js +0 -31
  58. package/dist/esm/entities/take/apis/index.js.map +0 -1
  59. package/dist/esm/views/trade.js +0 -79
  60. package/dist/esm/views/trade.js.map +0 -1
  61. package/dist/types/entities/take/apis/index.d.ts +0 -4
  62. package/dist/types/entities/take/apis/index.d.ts.map +0 -1
  63. package/dist/types/entities/take/types.d.ts +0 -10
  64. package/dist/types/entities/take/types.d.ts.map +0 -1
  65. package/dist/types/views/trade.d.ts +0 -22
  66. package/dist/types/views/trade.d.ts.map +0 -1
  67. /package/dist/cjs/entities/{take → swap}/types.js +0 -0
  68. /package/dist/esm/entities/{take → swap}/types.js +0 -0
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.fetchLatestSwaps = void 0;
4
+ const viem_1 = require("viem");
5
+ const subgraph_1 = require("../../../constants/chain-configs/subgraph");
6
+ const apis_1 = require("../../currency/apis");
7
+ const fetchLatestSwaps = async (publicClient, chainId, n, useSubgraph) => {
8
+ const { data: { swaps }, } = await subgraph_1.Subgraph.get(chainId, 'getLatestSwaps', 'query getLatestSwaps($first: Int!) { swaps(first: $first, orderBy: timestamp, orderDirection: desc) { transaction { id gasUsed gasPrice value to from } timestamp inputToken outputToken inputAmount outputAmount amountUSD router } }', {
9
+ first: n,
10
+ });
11
+ const uniqueTokens = [
12
+ ...new Set(swaps.flatMap((swap) => [swap.inputToken, swap.outputToken])),
13
+ ].map((address) => (0, viem_1.getAddress)(address));
14
+ const currencyMap = await (0, apis_1.fetchCurrencyMap)(publicClient, chainId, uniqueTokens, useSubgraph);
15
+ return swaps
16
+ .map((swap) => {
17
+ return currencyMap[(0, viem_1.getAddress)(swap.inputToken)] &&
18
+ currencyMap[(0, viem_1.getAddress)(swap.outputToken)]
19
+ ? {
20
+ transaction: {
21
+ data: '',
22
+ id: swap.transaction.id,
23
+ gas: BigInt(swap.transaction.gasUsed),
24
+ gasPrice: BigInt(swap.transaction.gasPrice),
25
+ value: BigInt(swap.transaction.value),
26
+ to: (0, viem_1.getAddress)(swap.transaction.to),
27
+ from: (0, viem_1.getAddress)(swap.transaction.from),
28
+ },
29
+ timestamp: Number(swap.timestamp),
30
+ currencyIn: {
31
+ currency: currencyMap[(0, viem_1.getAddress)(swap.inputToken)],
32
+ amount: (0, viem_1.formatUnits)(BigInt(swap.inputAmount), currencyMap[(0, viem_1.getAddress)(swap.inputToken)].decimals),
33
+ direction: 'in',
34
+ },
35
+ currencyOut: {
36
+ currency: currencyMap[(0, viem_1.getAddress)(swap.outputToken)],
37
+ amount: (0, viem_1.formatUnits)(BigInt(swap.outputAmount), currencyMap[(0, viem_1.getAddress)(swap.outputToken)].decimals),
38
+ direction: 'out',
39
+ },
40
+ amountUSD: Number(swap.amountUSD),
41
+ router: (0, viem_1.getAddress)(swap.router),
42
+ }
43
+ : null;
44
+ })
45
+ .filter((swap) => swap !== null);
46
+ };
47
+ exports.fetchLatestSwaps = fetchLatestSwaps;
48
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/entities/swap/apis/index.ts"],"names":[],"mappings":";;;AAAA,+BAA4D;AAG5D,wEAAoE;AAEpE,8CAAsD;AAoB/C,MAAM,gBAAgB,GAAG,KAAK,EACnC,YAA0B,EAC1B,OAAkB,EAClB,CAAS,EACT,WAAoB,EACH,EAAE;IACnB,MAAM,EACJ,IAAI,EAAE,EAAE,KAAK,EAAE,GAChB,GAAG,MAAM,mBAAQ,CAAC,GAAG,CAKpB,OAAO,EACP,gBAAgB,EAChB,wOAAwO,EACxO;QACE,KAAK,EAAE,CAAC;KACT,CACF,CAAA;IACD,MAAM,YAAY,GAAG;QACnB,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;KACzE,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAA,iBAAU,EAAC,OAAO,CAAC,CAAC,CAAA;IACvC,MAAM,WAAW,GAAG,MAAM,IAAA,uBAAgB,EACxC,YAAY,EACZ,OAAO,EACP,YAAY,EACZ,WAAW,CACZ,CAAA;IAED,OAAO,KAAK;SACT,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACZ,OAAO,WAAW,CAAC,IAAA,iBAAU,EAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC7C,WAAW,CAAC,IAAA,iBAAU,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACzC,CAAC,CAAC;gBACE,WAAW,EAAE;oBACX,IAAI,EAAE,EAAmB;oBACzB,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,EAAmB;oBACxC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;oBACrC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC;oBAC3C,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;oBACrC,EAAE,EAAE,IAAA,iBAAU,EAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;oBACnC,IAAI,EAAE,IAAA,iBAAU,EAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;iBACxC;gBACD,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;gBACjC,UAAU,EAAE;oBACV,QAAQ,EAAE,WAAW,CAAC,IAAA,iBAAU,EAAC,IAAI,CAAC,UAAU,CAAC,CAAC;oBAClD,MAAM,EAAE,IAAA,kBAAW,EACjB,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,EACxB,WAAW,CAAC,IAAA,iBAAU,EAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAClD;oBACD,SAAS,EAAE,IAAI;iBAChB;gBACD,WAAW,EAAE;oBACX,QAAQ,EAAE,WAAW,CAAC,IAAA,iBAAU,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC;oBACnD,MAAM,EAAE,IAAA,kBAAW,EACjB,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,EACzB,WAAW,CAAC,IAAA,iBAAU,EAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,CACnD;oBACD,SAAS,EAAE,KAAK;iBACjB;gBACD,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;gBACjC,MAAM,EAAE,IAAA,iBAAU,EAAC,IAAI,CAAC,MAAM,CAAC;aAChC;YACH,CAAC,CAAC,IAAI,CAAA;IACV,CAAC,CAAC;SACD,MAAM,CAAC,CAAC,IAAI,EAAe,EAAE,CAAC,IAAI,KAAK,IAAI,CAAW,CAAA;AAC3D,CAAC,CAAA;AAnEY,QAAA,gBAAgB,oBAmE5B"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/entities/take/types.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/entities/swap/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../../../src/types/events.ts"],"names":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":";;;AAAA,0DAA4D;AAAnD,kGAAA,SAAS,OAAA;AAoClB,IAAY,mBAaX;AAbD,WAAY,mBAAmB;IAC7B,uCAAgB,CAAA;IAChB,0CAAmB,CAAA;IACnB,yCAAkB,CAAA;IAClB,yCAAkB,CAAA;IAClB,6CAAsB,CAAA;IACtB,4CAAqB,CAAA;IACrB,qCAAc,CAAA;IACd,sCAAe,CAAA;IACf,uCAAgB,CAAA;IAChB,sCAAe,CAAA;IACf,oCAAa,CAAA;IACb,qCAAc,CAAA;AAChB,CAAC,EAbW,mBAAmB,mCAAnB,mBAAmB,QAa9B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":";;;AAAA,0DAA4D;AAAnD,kGAAA,SAAS,OAAA;AAqClB,IAAY,mBAaX;AAbD,WAAY,mBAAmB;IAC7B,uCAAgB,CAAA;IAChB,0CAAmB,CAAA;IACnB,yCAAkB,CAAA;IAClB,yCAAkB,CAAA;IAClB,6CAAsB,CAAA;IACtB,4CAAqB,CAAA;IACrB,qCAAc,CAAA;IACd,sCAAe,CAAA;IACf,uCAAgB,CAAA;IAChB,sCAAe,CAAA;IACf,oCAAa,CAAA;IACb,qCAAc,CAAA;AAChB,CAAC,EAbW,mBAAmB,mCAAnB,mBAAmB,QAa9B"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getUserNativeVolume = exports.getTopUsersByNativeVolume = exports.getUserDailyVolumes = exports.getProtocolAnalytics = exports.getDailyClosePriceMap = exports.getLatestPriceMap = exports.getStableCurrencies = exports.getCurrencies = exports.getReferenceCurrency = exports.getNativeCurrency = exports.getContractAddresses = exports.getSubgraphBlock = exports.getSubgraphBlockNumber = exports.getFallbackSubgraphEndpoint = exports.getSubgraphEndpoint = exports.getOpenOrders = exports.getOpenOrder = exports.getPriceNeighborhood = exports.watchTakeEvents = exports.watchMarketMakingEvents = exports.getLpWrappedERC20Address = exports.getLastAmounts = exports.getStrategyPrice = exports.getUserPoolPositions = exports.getPoolSnapshots = exports.getPoolSnapshot = exports.getPool = exports.getLatestTakes = exports.parseMakeOrderIdsFromReceipt = exports.getQuoteToken = exports.getMarketSnapshot = exports.getMarketSnapshots = exports.getExpectedInput = exports.getExpectedOutput = exports.getLatestChartLog = exports.getChartLogs = exports.getMarket = void 0;
3
+ exports.getUserNativeVolume = exports.getTopUsersByNativeVolume = exports.getUserDailyVolumes = exports.getProtocolAnalytics = exports.getDailyClosePriceMap = exports.getLatestPriceMap = exports.getStableCurrencies = exports.getCurrencies = exports.getReferenceCurrency = exports.getNativeCurrency = exports.getContractAddresses = exports.getSubgraphBlock = exports.getSubgraphBlockNumber = exports.getFallbackSubgraphEndpoint = exports.getSubgraphEndpoint = exports.getOpenOrders = exports.getOpenOrder = exports.getPriceNeighborhood = exports.getLatestSwaps = exports.watchMarketMakingEvents = exports.getLpWrappedERC20Address = exports.getLastAmounts = exports.getStrategyPrice = exports.getUserPoolPositions = exports.getPoolSnapshots = exports.getPoolSnapshot = exports.getPool = exports.watchTakeEvents = exports.parseMakeOrderIdsFromReceipt = exports.getQuoteToken = exports.getMarketSnapshot = exports.getMarketSnapshots = exports.getExpectedInput = exports.getExpectedOutput = exports.getLatestChartLog = exports.getChartLogs = exports.getMarket = void 0;
4
4
  var market_1 = require("./market");
5
5
  Object.defineProperty(exports, "getMarket", { enumerable: true, get: function () { return market_1.getMarket; } });
6
6
  Object.defineProperty(exports, "getChartLogs", { enumerable: true, get: function () { return market_1.getChartLogs; } });
@@ -11,7 +11,7 @@ Object.defineProperty(exports, "getMarketSnapshots", { enumerable: true, get: fu
11
11
  Object.defineProperty(exports, "getMarketSnapshot", { enumerable: true, get: function () { return market_1.getMarketSnapshot; } });
12
12
  Object.defineProperty(exports, "getQuoteToken", { enumerable: true, get: function () { return market_1.getQuoteToken; } });
13
13
  Object.defineProperty(exports, "parseMakeOrderIdsFromReceipt", { enumerable: true, get: function () { return market_1.parseMakeOrderIdsFromReceipt; } });
14
- Object.defineProperty(exports, "getLatestTakes", { enumerable: true, get: function () { return market_1.getLatestTakes; } });
14
+ Object.defineProperty(exports, "watchTakeEvents", { enumerable: true, get: function () { return market_1.watchTakeEvents; } });
15
15
  var pool_1 = require("./pool");
16
16
  Object.defineProperty(exports, "getPool", { enumerable: true, get: function () { return pool_1.getPool; } });
17
17
  Object.defineProperty(exports, "getPoolSnapshot", { enumerable: true, get: function () { return pool_1.getPoolSnapshot; } });
@@ -21,8 +21,8 @@ Object.defineProperty(exports, "getStrategyPrice", { enumerable: true, get: func
21
21
  Object.defineProperty(exports, "getLastAmounts", { enumerable: true, get: function () { return pool_1.getLastAmounts; } });
22
22
  Object.defineProperty(exports, "getLpWrappedERC20Address", { enumerable: true, get: function () { return pool_1.getLpWrappedERC20Address; } });
23
23
  Object.defineProperty(exports, "watchMarketMakingEvents", { enumerable: true, get: function () { return pool_1.watchMarketMakingEvents; } });
24
- var trade_1 = require("./trade");
25
- Object.defineProperty(exports, "watchTakeEvents", { enumerable: true, get: function () { return trade_1.watchTakeEvents; } });
24
+ var swap_1 = require("./swap");
25
+ Object.defineProperty(exports, "getLatestSwaps", { enumerable: true, get: function () { return swap_1.getLatestSwaps; } });
26
26
  var tick_1 = require("./tick");
27
27
  Object.defineProperty(exports, "getPriceNeighborhood", { enumerable: true, get: function () { return tick_1.getPriceNeighborhood; } });
28
28
  var open_order_1 = require("./open-order");
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/views/index.ts"],"names":[],"mappings":";;;AAAA,mCAWiB;AAVf,mGAAA,SAAS,OAAA;AACT,sGAAA,YAAY,OAAA;AACZ,2GAAA,iBAAiB,OAAA;AACjB,2GAAA,iBAAiB,OAAA;AACjB,0GAAA,gBAAgB,OAAA;AAChB,4GAAA,kBAAkB,OAAA;AAClB,2GAAA,iBAAiB,OAAA;AACjB,uGAAA,aAAa,OAAA;AACb,sHAAA,4BAA4B,OAAA;AAC5B,wGAAA,cAAc,OAAA;AAEhB,+BASe;AARb,+FAAA,OAAO,OAAA;AACP,uGAAA,eAAe,OAAA;AACf,wGAAA,gBAAgB,OAAA;AAChB,4GAAA,oBAAoB,OAAA;AACpB,wGAAA,gBAAgB,OAAA;AAChB,sGAAA,cAAc,OAAA;AACd,gHAAA,wBAAwB,OAAA;AACxB,+GAAA,uBAAuB,OAAA;AAEzB,iCAAyC;AAAhC,wGAAA,eAAe,OAAA;AAExB,+BAA6C;AAApC,4GAAA,oBAAoB,OAAA;AAC7B,2CAA0D;AAAjD,0GAAA,YAAY,OAAA;AAAE,2GAAA,aAAa,OAAA;AACpC,uCAKmB;AAJjB,+GAAA,mBAAmB,OAAA;AACnB,uHAAA,2BAA2B,OAAA;AAC3B,kHAAA,sBAAsB,OAAA;AACtB,4GAAA,gBAAgB,OAAA;AAElB,qCAAgD;AAAvC,+GAAA,oBAAoB,OAAA;AAC7B,uCAOmB;AANjB,6GAAA,iBAAiB,OAAA;AACjB,gHAAA,oBAAoB,OAAA;AACpB,yGAAA,aAAa,OAAA;AACb,+GAAA,mBAAmB,OAAA;AACnB,6GAAA,iBAAiB,OAAA;AACjB,iHAAA,qBAAqB,OAAA;AAEvB,yCAKoB;AAJlB,iHAAA,oBAAoB,OAAA;AACpB,gHAAA,mBAAmB,OAAA;AACnB,sHAAA,yBAAyB,OAAA;AACzB,gHAAA,mBAAmB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/views/index.ts"],"names":[],"mappings":";;;AAAA,mCAWiB;AAVf,mGAAA,SAAS,OAAA;AACT,sGAAA,YAAY,OAAA;AACZ,2GAAA,iBAAiB,OAAA;AACjB,2GAAA,iBAAiB,OAAA;AACjB,0GAAA,gBAAgB,OAAA;AAChB,4GAAA,kBAAkB,OAAA;AAClB,2GAAA,iBAAiB,OAAA;AACjB,uGAAA,aAAa,OAAA;AACb,sHAAA,4BAA4B,OAAA;AAC5B,yGAAA,eAAe,OAAA;AAEjB,+BASe;AARb,+FAAA,OAAO,OAAA;AACP,uGAAA,eAAe,OAAA;AACf,wGAAA,gBAAgB,OAAA;AAChB,4GAAA,oBAAoB,OAAA;AACpB,wGAAA,gBAAgB,OAAA;AAChB,sGAAA,cAAc,OAAA;AACd,gHAAA,wBAAwB,OAAA;AACxB,+GAAA,uBAAuB,OAAA;AAEzB,+BAAuC;AAA9B,sGAAA,cAAc,OAAA;AAEvB,+BAA6C;AAApC,4GAAA,oBAAoB,OAAA;AAC7B,2CAA0D;AAAjD,0GAAA,YAAY,OAAA;AAAE,2GAAA,aAAa,OAAA;AACpC,uCAKmB;AAJjB,+GAAA,mBAAmB,OAAA;AACnB,uHAAA,2BAA2B,OAAA;AAC3B,kHAAA,sBAAsB,OAAA;AACtB,4GAAA,gBAAgB,OAAA;AAElB,qCAAgD;AAAvC,+GAAA,oBAAoB,OAAA;AAC7B,uCAOmB;AANjB,6GAAA,iBAAiB,OAAA;AACjB,gHAAA,oBAAoB,OAAA;AACpB,yGAAA,aAAa,OAAA;AACb,+GAAA,mBAAmB,OAAA;AACnB,6GAAA,iBAAiB,OAAA;AACjB,iHAAA,qBAAqB,OAAA;AAEvB,yCAKoB;AAJlB,iHAAA,oBAAoB,OAAA;AACpB,gHAAA,mBAAmB,OAAA;AACnB,sHAAA,yBAAyB,OAAA;AACzB,gHAAA,mBAAmB,OAAA"}
@@ -1,11 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getMarket = exports.parseMakeOrderIdsFromReceipt = exports.getQuoteToken = exports.getMarketSnapshot = exports.getMarketSnapshots = exports.getLatestChartLog = exports.getChartLogs = exports.getExpectedInput = exports.getExpectedOutput = exports.getLatestTakes = void 0;
3
+ exports.getMarket = exports.parseMakeOrderIdsFromReceipt = exports.getQuoteToken = exports.getMarketSnapshot = exports.getMarketSnapshots = exports.getLatestChartLog = exports.getChartLogs = exports.getExpectedInput = exports.getExpectedOutput = exports.watchTakeEvents = void 0;
4
4
  const viem_1 = require("viem");
5
5
  const chain_1 = require("../../constants/chain-configs/chain");
6
6
  const apis_1 = require("../../entities/market/apis");
7
7
  var take_1 = require("./take");
8
- Object.defineProperty(exports, "getLatestTakes", { enumerable: true, get: function () { return take_1.getLatestTakes; } });
8
+ Object.defineProperty(exports, "watchTakeEvents", { enumerable: true, get: function () { return take_1.watchTakeEvents; } });
9
9
  var quote_1 = require("./quote");
10
10
  Object.defineProperty(exports, "getExpectedOutput", { enumerable: true, get: function () { return quote_1.getExpectedOutput; } });
11
11
  Object.defineProperty(exports, "getExpectedInput", { enumerable: true, get: function () { return quote_1.getExpectedInput; } });
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/views/market/index.ts"],"names":[],"mappings":";;;AAAA,+BAA+D;AAE/D,+DAA0E;AAE1E,qDAAwD;AAExD,+BAAuC;AAA9B,sGAAA,cAAc,OAAA;AACvB,iCAA6D;AAApD,0GAAA,iBAAiB,OAAA;AAAE,yGAAA,gBAAgB,OAAA;AAC5C,yCAA6D;AAApD,yGAAA,YAAY,OAAA;AAAE,8GAAA,iBAAiB,OAAA;AACxC,uCAAkE;AAAzD,8GAAA,kBAAkB,OAAA;AAAE,6GAAA,iBAAiB,OAAA;AAC9C,iCAAuC;AAA9B,sGAAA,aAAa,OAAA;AACtB,iCAAsD;AAA7C,qHAAA,4BAA4B,OAAA;AAmB9B,MAAM,SAAS,GAAG,KAAK,EAAE,EAC9B,OAAO,EACP,MAAM,EACN,MAAM,EACN,OAAO,GAQR,EAAmB,EAAE;IACpB,IAAI,IAAA,qBAAc,EAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;IACxD,CAAC;IACD,MAAM,YAAY,GAAG,IAAA,yBAAkB,EAAC;QACtC,KAAK,EAAE,iBAAS,CAAC,OAAO,CAAC;QACzB,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,IAAA,WAAI,EAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAA,WAAI,GAAE;KAC3D,CAAC,CAAA;IACF,MAAM,MAAM,GAAG,MAAM,IAAA,kBAAW,EAC9B,YAAY,EACZ,OAAO,EACP,CAAC,MAAM,EAAE,MAAM,CAAC,EAChB,CAAC,CAAC,CAAC,OAAO,IAAI,OAAO,CAAC,WAAW,CAAC,CACnC,CAAA;IACD,OAAO,MAAM,CAAC,MAAM,EAAE,CAAA;AACxB,CAAC,CAAA;AA3BY,QAAA,SAAS,aA2BrB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/views/market/index.ts"],"names":[],"mappings":";;;AAAA,+BAA+D;AAE/D,+DAA0E;AAE1E,qDAAwD;AAExD,+BAAwC;AAA/B,uGAAA,eAAe,OAAA;AACxB,iCAA6D;AAApD,0GAAA,iBAAiB,OAAA;AAAE,yGAAA,gBAAgB,OAAA;AAC5C,yCAA6D;AAApD,yGAAA,YAAY,OAAA;AAAE,8GAAA,iBAAiB,OAAA;AACxC,uCAAkE;AAAzD,8GAAA,kBAAkB,OAAA;AAAE,6GAAA,iBAAiB,OAAA;AAC9C,iCAAuC;AAA9B,sGAAA,aAAa,OAAA;AACtB,iCAAsD;AAA7C,qHAAA,4BAA4B,OAAA;AAmB9B,MAAM,SAAS,GAAG,KAAK,EAAE,EAC9B,OAAO,EACP,MAAM,EACN,MAAM,EACN,OAAO,GAQR,EAAmB,EAAE;IACpB,IAAI,IAAA,qBAAc,EAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;IACxD,CAAC;IACD,MAAM,YAAY,GAAG,IAAA,yBAAkB,EAAC;QACtC,KAAK,EAAE,iBAAS,CAAC,OAAO,CAAC;QACzB,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,IAAA,WAAI,EAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAA,WAAI,GAAE;KAC3D,CAAC,CAAA;IACF,MAAM,MAAM,GAAG,MAAM,IAAA,kBAAW,EAC9B,YAAY,EACZ,OAAO,EACP,CAAC,MAAM,EAAE,MAAM,CAAC,EAChB,CAAC,CAAC,CAAC,OAAO,IAAI,OAAO,CAAC,WAAW,CAAC,CACnC,CAAA;IACD,OAAO,MAAM,CAAC,MAAM,EAAE,CAAA;AACxB,CAAC,CAAA;AA3BY,QAAA,SAAS,aA2BrB"}
@@ -1,9 +1,83 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getLatestTakes = void 0;
4
- const apis_1 = require("../../entities/take/apis");
5
- const getLatestTakes = async ({ chainId, token0, token1, }) => {
6
- return (0, apis_1.fetchLatestTakes)(chainId, token0, token1);
3
+ exports.watchTakeEvents = void 0;
4
+ const viem_1 = require("viem");
5
+ const chain_1 = require("../../constants/chain-configs/chain");
6
+ const utils_1 = require("../../utils");
7
+ const address_1 = require("../address");
8
+ const book_manager_abi_1 = require("../../constants/abis/core/book-manager-abi");
9
+ const handleTakeLog = (log, market, onEvent) => {
10
+ const { args } = log;
11
+ const isTakingBidBook = BigInt(market.bidBook.id) === args.bookId;
12
+ const tick = BigInt(args.tick);
13
+ const unit = BigInt(args.unit);
14
+ const price = isTakingBidBook
15
+ ? (0, utils_1.formatPrice)((0, utils_1.toPrice)(tick), market.quote.decimals, market.base.decimals)
16
+ : (0, utils_1.formatPrice)((0, utils_1.toPrice)((0, utils_1.invertTick)(tick)), market.quote.decimals, market.base.decimals);
17
+ const amount = isTakingBidBook
18
+ ? (0, viem_1.formatUnits)((0, utils_1.quoteToBase)(tick, unit * BigInt(market.bidBook.unitSize), false), market.base.decimals)
19
+ : (0, viem_1.formatUnits)(unit * BigInt(market.askBook.unitSize), market.base.decimals);
20
+ onEvent({
21
+ transactionHash: log.transactionHash,
22
+ logIndex: Number(log.logIndex),
23
+ timestamp: Number(log.blockTimestamp),
24
+ blockNumber: Number(log.blockNumber),
25
+ price: parseFloat(price),
26
+ amount: parseFloat(amount),
27
+ amountUSD: Number(parseFloat(price) * parseFloat(amount)),
28
+ side: isTakingBidBook ? 'sell' : 'buy',
29
+ });
7
30
  };
8
- exports.getLatestTakes = getLatestTakes;
31
+ const backfillRebalanceEvents = async ({ publicClient, chainId, market, backfillBlocks, onEvent, }) => {
32
+ const currentBlock = await publicClient.getBlockNumber();
33
+ const fromBlock = currentBlock > backfillBlocks ? currentBlock - backfillBlocks : 0n;
34
+ const logs = await publicClient.getLogs({
35
+ address: (0, address_1.getContractAddresses)({ chainId }).BookManager,
36
+ event: (0, viem_1.parseAbiItem)('event Take(uint192 indexed bookId, address indexed user, int24 tick, uint64 unit)'),
37
+ args: {
38
+ bookId: [BigInt(market.bidBook.id), BigInt(market.askBook.id)],
39
+ },
40
+ fromBlock,
41
+ toBlock: currentBlock,
42
+ });
43
+ for (const log of logs) {
44
+ handleTakeLog(log, market, onEvent);
45
+ }
46
+ return currentBlock;
47
+ };
48
+ const watchTakeEvents = async ({ chainId, market, onEvent, onError, options, }) => {
49
+ const publicClient = (0, viem_1.createPublicClient)({
50
+ chain: chain_1.CHAIN_MAP[chainId],
51
+ transport: options?.rpcUrl ? (0, viem_1.http)(options.rpcUrl) : (0, viem_1.http)(),
52
+ });
53
+ const seen = new Set();
54
+ const lastBackfilledBlock = await backfillRebalanceEvents({
55
+ publicClient,
56
+ chainId,
57
+ market,
58
+ backfillBlocks: options?.backfillBlocks ?? 100n,
59
+ onEvent,
60
+ });
61
+ return publicClient.watchContractEvent({
62
+ address: (0, address_1.getContractAddresses)({ chainId }).BookManager,
63
+ abi: book_manager_abi_1.BOOK_MANAGER_ABI,
64
+ eventName: 'Take',
65
+ args: {
66
+ bookId: [BigInt(market.bidBook.id), BigInt(market.askBook.id)],
67
+ },
68
+ fromBlock: lastBackfilledBlock + 1n,
69
+ onLogs: (logs) => {
70
+ for (const log of logs) {
71
+ const key = `${log.transactionHash}-${log.logIndex}`;
72
+ if (seen.has(key)) {
73
+ continue;
74
+ }
75
+ seen.add(key);
76
+ handleTakeLog(log, market, onEvent);
77
+ }
78
+ },
79
+ onError,
80
+ });
81
+ };
82
+ exports.watchTakeEvents = watchTakeEvents;
9
83
  //# sourceMappingURL=take.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"take.js","sourceRoot":"","sources":["../../../../src/views/market/take.ts"],"names":[],"mappings":";;;AAEA,mDAA2D;AAEpD,MAAM,cAAc,GAAG,KAAK,EAAE,EACnC,OAAO,EACP,MAAM,EACN,MAAM,GAKP,EAAmB,EAAE;IACpB,OAAO,IAAA,uBAAgB,EAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;AAClD,CAAC,CAAA;AAVY,QAAA,cAAc,kBAU1B"}
1
+ {"version":3,"file":"take.js","sourceRoot":"","sources":["../../../../src/views/market/take.ts"],"names":[],"mappings":"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"}
@@ -29,6 +29,7 @@ const handleRebalanceLog = (log, poolSnapshot, onEvent) => {
29
29
  const { args } = log;
30
30
  onEvent({
31
31
  transactionHash: log.transactionHash,
32
+ logIndex: Number(log.logIndex),
32
33
  timestamp: Number(log.blockTimestamp),
33
34
  blockNumber: Number(log.blockNumber),
34
35
  bidOrderList: args.orderListA.map((orderId) => {
@@ -1 +1 @@
1
- {"version":3,"file":"market-making.js","sourceRoot":"","sources":["../../../../src/views/pool/market-making.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"market-making.js","sourceRoot":"","sources":["../../../../src/views/pool/market-making.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getLatestSwaps = void 0;
4
+ const viem_1 = require("viem");
5
+ const chain_1 = require("../constants/chain-configs/chain");
6
+ const apis_1 = require("../entities/swap/apis");
7
+ const getLatestSwaps = async ({ chainId, n, options, }) => {
8
+ const publicClient = (0, viem_1.createPublicClient)({
9
+ chain: chain_1.CHAIN_MAP[chainId],
10
+ transport: options?.rpcUrl ? (0, viem_1.http)(options.rpcUrl) : (0, viem_1.http)(),
11
+ });
12
+ return (0, apis_1.fetchLatestSwaps)(publicClient, chainId, n, !!(options && options.useSubgraph));
13
+ };
14
+ exports.getLatestSwaps = getLatestSwaps;
15
+ //# sourceMappingURL=swap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"swap.js","sourceRoot":"","sources":["../../../src/views/swap.ts"],"names":[],"mappings":";;;AAAA,+BAA+C;AAE/C,4DAAuE;AAEvE,gDAAwD;AAEjD,MAAM,cAAc,GAAG,KAAK,EAAE,EACnC,OAAO,EACP,CAAC,EACD,OAAO,GAOR,EAAmB,EAAE;IACpB,MAAM,YAAY,GAAG,IAAA,yBAAkB,EAAC;QACtC,KAAK,EAAE,iBAAS,CAAC,OAAO,CAAC;QACzB,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,IAAA,WAAI,EAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAA,WAAI,GAAE;KAC3D,CAAC,CAAA;IACF,OAAO,IAAA,uBAAgB,EACrB,YAAY,EACZ,OAAO,EACP,CAAC,EACD,CAAC,CAAC,CAAC,OAAO,IAAI,OAAO,CAAC,WAAW,CAAC,CACnC,CAAA;AACH,CAAC,CAAA;AArBY,QAAA,cAAc,kBAqB1B"}
@@ -0,0 +1,44 @@
1
+ import { formatUnits, getAddress } from 'viem';
2
+ import { Subgraph } from '../../../constants/chain-configs/subgraph';
3
+ import { fetchCurrencyMap } from '../../currency/apis';
4
+ export const fetchLatestSwaps = async (publicClient, chainId, n, useSubgraph) => {
5
+ const { data: { swaps }, } = await Subgraph.get(chainId, 'getLatestSwaps', 'query getLatestSwaps($first: Int!) { swaps(first: $first, orderBy: timestamp, orderDirection: desc) { transaction { id gasUsed gasPrice value to from } timestamp inputToken outputToken inputAmount outputAmount amountUSD router } }', {
6
+ first: n,
7
+ });
8
+ const uniqueTokens = [
9
+ ...new Set(swaps.flatMap((swap) => [swap.inputToken, swap.outputToken])),
10
+ ].map((address) => getAddress(address));
11
+ const currencyMap = await fetchCurrencyMap(publicClient, chainId, uniqueTokens, useSubgraph);
12
+ return swaps
13
+ .map((swap) => {
14
+ return currencyMap[getAddress(swap.inputToken)] &&
15
+ currencyMap[getAddress(swap.outputToken)]
16
+ ? {
17
+ transaction: {
18
+ data: '',
19
+ id: swap.transaction.id,
20
+ gas: BigInt(swap.transaction.gasUsed),
21
+ gasPrice: BigInt(swap.transaction.gasPrice),
22
+ value: BigInt(swap.transaction.value),
23
+ to: getAddress(swap.transaction.to),
24
+ from: getAddress(swap.transaction.from),
25
+ },
26
+ timestamp: Number(swap.timestamp),
27
+ currencyIn: {
28
+ currency: currencyMap[getAddress(swap.inputToken)],
29
+ amount: formatUnits(BigInt(swap.inputAmount), currencyMap[getAddress(swap.inputToken)].decimals),
30
+ direction: 'in',
31
+ },
32
+ currencyOut: {
33
+ currency: currencyMap[getAddress(swap.outputToken)],
34
+ amount: formatUnits(BigInt(swap.outputAmount), currencyMap[getAddress(swap.outputToken)].decimals),
35
+ direction: 'out',
36
+ },
37
+ amountUSD: Number(swap.amountUSD),
38
+ router: getAddress(swap.router),
39
+ }
40
+ : null;
41
+ })
42
+ .filter((swap) => swap !== null);
43
+ };
44
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/entities/swap/apis/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,UAAU,EAAgB,MAAM,MAAM,CAAA;AAG5D,OAAO,EAAE,QAAQ,EAAE,MAAM,2CAA2C,CAAA;AAEpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAA;AAoBtD,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,EACnC,YAA0B,EAC1B,OAAkB,EAClB,CAAS,EACT,WAAoB,EACH,EAAE;IACnB,MAAM,EACJ,IAAI,EAAE,EAAE,KAAK,EAAE,GAChB,GAAG,MAAM,QAAQ,CAAC,GAAG,CAKpB,OAAO,EACP,gBAAgB,EAChB,wOAAwO,EACxO;QACE,KAAK,EAAE,CAAC;KACT,CACF,CAAA;IACD,MAAM,YAAY,GAAG;QACnB,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;KACzE,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAA;IACvC,MAAM,WAAW,GAAG,MAAM,gBAAgB,CACxC,YAAY,EACZ,OAAO,EACP,YAAY,EACZ,WAAW,CACZ,CAAA;IAED,OAAO,KAAK;SACT,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACZ,OAAO,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC7C,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACzC,CAAC,CAAC;gBACE,WAAW,EAAE;oBACX,IAAI,EAAE,EAAmB;oBACzB,EAAE,EAAE,IAAI,CAAC,WAAW,CAAC,EAAmB;oBACxC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;oBACrC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC;oBAC3C,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;oBACrC,EAAE,EAAE,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;oBACnC,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;iBACxC;gBACD,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;gBACjC,UAAU,EAAE;oBACV,QAAQ,EAAE,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;oBAClD,MAAM,EAAE,WAAW,CACjB,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,EACxB,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAClD;oBACD,SAAS,EAAE,IAAI;iBAChB;gBACD,WAAW,EAAE;oBACX,QAAQ,EAAE,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;oBACnD,MAAM,EAAE,WAAW,CACjB,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,EACzB,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,CACnD;oBACD,SAAS,EAAE,KAAK;iBACjB;gBACD,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;gBACjC,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC;aAChC;YACH,CAAC,CAAC,IAAI,CAAA;IACV,CAAC,CAAC;SACD,MAAM,CAAC,CAAC,IAAI,EAAe,EAAE,CAAC,IAAI,KAAK,IAAI,CAAW,CAAA;AAC3D,CAAC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/entities/take/types.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/entities/swap/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../../../src/types/events.ts"],"names":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAA;AAoC5D,MAAM,CAAN,IAAY,mBAaX;AAbD,WAAY,mBAAmB;IAC7B,uCAAgB,CAAA;IAChB,0CAAmB,CAAA;IACnB,yCAAkB,CAAA;IAClB,yCAAkB,CAAA;IAClB,6CAAsB,CAAA;IACtB,4CAAqB,CAAA;IACrB,qCAAc,CAAA;IACd,sCAAe,CAAA;IACf,uCAAgB,CAAA;IAChB,sCAAe,CAAA;IACf,oCAAa,CAAA;IACb,qCAAc,CAAA;AAChB,CAAC,EAbW,mBAAmB,KAAnB,mBAAmB,QAa9B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAA;AAqC5D,MAAM,CAAN,IAAY,mBAaX;AAbD,WAAY,mBAAmB;IAC7B,uCAAgB,CAAA;IAChB,0CAAmB,CAAA;IACnB,yCAAkB,CAAA;IAClB,yCAAkB,CAAA;IAClB,6CAAsB,CAAA;IACtB,4CAAqB,CAAA;IACrB,qCAAc,CAAA;IACd,sCAAe,CAAA;IACf,uCAAgB,CAAA;IAChB,sCAAe,CAAA;IACf,oCAAa,CAAA;IACb,qCAAc,CAAA;AAChB,CAAC,EAbW,mBAAmB,KAAnB,mBAAmB,QAa9B"}
@@ -1,6 +1,6 @@
1
- export { getMarket, getChartLogs, getLatestChartLog, getExpectedOutput, getExpectedInput, getMarketSnapshots, getMarketSnapshot, getQuoteToken, parseMakeOrderIdsFromReceipt, getLatestTakes, } from './market';
1
+ export { getMarket, getChartLogs, getLatestChartLog, getExpectedOutput, getExpectedInput, getMarketSnapshots, getMarketSnapshot, getQuoteToken, parseMakeOrderIdsFromReceipt, watchTakeEvents, } from './market';
2
2
  export { getPool, getPoolSnapshot, getPoolSnapshots, getUserPoolPositions, getStrategyPrice, getLastAmounts, getLpWrappedERC20Address, watchMarketMakingEvents, } from './pool';
3
- export { watchTakeEvents } from './trade';
3
+ export { getLatestSwaps } from './swap';
4
4
  export { getPriceNeighborhood } from './tick';
5
5
  export { getOpenOrder, getOpenOrders } from './open-order';
6
6
  export { getSubgraphEndpoint, getFallbackSubgraphEndpoint, getSubgraphBlockNumber, getSubgraphBlock, } from './subgraph';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/views/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,aAAa,EACb,4BAA4B,EAC5B,cAAc,GACf,MAAM,UAAU,CAAA;AACjB,OAAO,EACL,OAAO,EACP,eAAe,EACf,gBAAgB,EAChB,oBAAoB,EACpB,gBAAgB,EAChB,cAAc,EACd,wBAAwB,EACxB,uBAAuB,GACxB,MAAM,QAAQ,CAAA;AACf,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAEzC,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAA;AAC7C,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAC1D,OAAO,EACL,mBAAmB,EACnB,2BAA2B,EAC3B,sBAAsB,EACtB,gBAAgB,GACjB,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAA;AAChD,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,aAAa,EACb,mBAAmB,EACnB,iBAAiB,EACjB,qBAAqB,GACtB,MAAM,YAAY,CAAA;AACnB,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,yBAAyB,EACzB,mBAAmB,GACpB,MAAM,aAAa,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/views/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,aAAa,EACb,4BAA4B,EAC5B,eAAe,GAChB,MAAM,UAAU,CAAA;AACjB,OAAO,EACL,OAAO,EACP,eAAe,EACf,gBAAgB,EAChB,oBAAoB,EACpB,gBAAgB,EAChB,cAAc,EACd,wBAAwB,EACxB,uBAAuB,GACxB,MAAM,QAAQ,CAAA;AACf,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAA;AAEvC,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAA;AAC7C,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAC1D,OAAO,EACL,mBAAmB,EACnB,2BAA2B,EAC3B,sBAAsB,EACtB,gBAAgB,GACjB,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAA;AAChD,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,aAAa,EACb,mBAAmB,EACnB,iBAAiB,EACjB,qBAAqB,GACtB,MAAM,YAAY,CAAA;AACnB,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,yBAAyB,EACzB,mBAAmB,GACpB,MAAM,aAAa,CAAA"}
@@ -1,7 +1,7 @@
1
1
  import { createPublicClient, http, isAddressEqual } from 'viem';
2
2
  import { CHAIN_MAP } from '../../constants/chain-configs/chain';
3
3
  import { fetchMarket } from '../../entities/market/apis';
4
- export { getLatestTakes } from './take';
4
+ export { watchTakeEvents } from './take';
5
5
  export { getExpectedOutput, getExpectedInput } from './quote';
6
6
  export { getChartLogs, getLatestChartLog } from './chart-log';
7
7
  export { getMarketSnapshots, getMarketSnapshot } from './snapshot';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/views/market/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,MAAM,CAAA;AAE/D,OAAO,EAAa,SAAS,EAAE,MAAM,qCAAqC,CAAA;AAE1E,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AAExD,OAAO,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAA;AACvC,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAC7D,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAC7D,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AACvC,OAAO,EAAE,4BAA4B,EAAE,MAAM,SAAS,CAAA;AAEtD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,KAAK,EAAE,EAC9B,OAAO,EACP,MAAM,EACN,MAAM,EACN,OAAO,GAQR,EAAmB,EAAE;IACpB,IAAI,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;IACxD,CAAC;IACD,MAAM,YAAY,GAAG,kBAAkB,CAAC;QACtC,KAAK,EAAE,SAAS,CAAC,OAAO,CAAC;QACzB,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;KAC3D,CAAC,CAAA;IACF,MAAM,MAAM,GAAG,MAAM,WAAW,CAC9B,YAAY,EACZ,OAAO,EACP,CAAC,MAAM,EAAE,MAAM,CAAC,EAChB,CAAC,CAAC,CAAC,OAAO,IAAI,OAAO,CAAC,WAAW,CAAC,CACnC,CAAA;IACD,OAAO,MAAM,CAAC,MAAM,EAAE,CAAA;AACxB,CAAC,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/views/market/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,MAAM,CAAA;AAE/D,OAAO,EAAa,SAAS,EAAE,MAAM,qCAAqC,CAAA;AAE1E,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAA;AAExD,OAAO,EAAE,eAAe,EAAE,MAAM,QAAQ,CAAA;AACxC,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAA;AAC7D,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAA;AAC7D,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AACvC,OAAO,EAAE,4BAA4B,EAAE,MAAM,SAAS,CAAA;AAEtD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,KAAK,EAAE,EAC9B,OAAO,EACP,MAAM,EACN,MAAM,EACN,OAAO,GAQR,EAAmB,EAAE;IACpB,IAAI,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;IACxD,CAAC;IACD,MAAM,YAAY,GAAG,kBAAkB,CAAC;QACtC,KAAK,EAAE,SAAS,CAAC,OAAO,CAAC;QACzB,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;KAC3D,CAAC,CAAA;IACF,MAAM,MAAM,GAAG,MAAM,WAAW,CAC9B,YAAY,EACZ,OAAO,EACP,CAAC,MAAM,EAAE,MAAM,CAAC,EAChB,CAAC,CAAC,CAAC,OAAO,IAAI,OAAO,CAAC,WAAW,CAAC,CACnC,CAAA;IACD,OAAO,MAAM,CAAC,MAAM,EAAE,CAAA;AACxB,CAAC,CAAA"}
@@ -1,5 +1,79 @@
1
- import { fetchLatestTakes } from '../../entities/take/apis';
2
- export const getLatestTakes = async ({ chainId, token0, token1, }) => {
3
- return fetchLatestTakes(chainId, token0, token1);
1
+ import { createPublicClient, formatUnits, http, parseAbiItem } from 'viem';
2
+ import { CHAIN_MAP } from '../../constants/chain-configs/chain';
3
+ import { formatPrice, invertTick, quoteToBase, toPrice } from '../../utils';
4
+ import { getContractAddresses } from '../address';
5
+ import { BOOK_MANAGER_ABI } from '../../constants/abis/core/book-manager-abi';
6
+ const handleTakeLog = (log, market, onEvent) => {
7
+ const { args } = log;
8
+ const isTakingBidBook = BigInt(market.bidBook.id) === args.bookId;
9
+ const tick = BigInt(args.tick);
10
+ const unit = BigInt(args.unit);
11
+ const price = isTakingBidBook
12
+ ? formatPrice(toPrice(tick), market.quote.decimals, market.base.decimals)
13
+ : formatPrice(toPrice(invertTick(tick)), market.quote.decimals, market.base.decimals);
14
+ const amount = isTakingBidBook
15
+ ? formatUnits(quoteToBase(tick, unit * BigInt(market.bidBook.unitSize), false), market.base.decimals)
16
+ : formatUnits(unit * BigInt(market.askBook.unitSize), market.base.decimals);
17
+ onEvent({
18
+ transactionHash: log.transactionHash,
19
+ logIndex: Number(log.logIndex),
20
+ timestamp: Number(log.blockTimestamp),
21
+ blockNumber: Number(log.blockNumber),
22
+ price: parseFloat(price),
23
+ amount: parseFloat(amount),
24
+ amountUSD: Number(parseFloat(price) * parseFloat(amount)),
25
+ side: isTakingBidBook ? 'sell' : 'buy',
26
+ });
27
+ };
28
+ const backfillRebalanceEvents = async ({ publicClient, chainId, market, backfillBlocks, onEvent, }) => {
29
+ const currentBlock = await publicClient.getBlockNumber();
30
+ const fromBlock = currentBlock > backfillBlocks ? currentBlock - backfillBlocks : 0n;
31
+ const logs = await publicClient.getLogs({
32
+ address: getContractAddresses({ chainId }).BookManager,
33
+ event: parseAbiItem('event Take(uint192 indexed bookId, address indexed user, int24 tick, uint64 unit)'),
34
+ args: {
35
+ bookId: [BigInt(market.bidBook.id), BigInt(market.askBook.id)],
36
+ },
37
+ fromBlock,
38
+ toBlock: currentBlock,
39
+ });
40
+ for (const log of logs) {
41
+ handleTakeLog(log, market, onEvent);
42
+ }
43
+ return currentBlock;
44
+ };
45
+ export const watchTakeEvents = async ({ chainId, market, onEvent, onError, options, }) => {
46
+ const publicClient = createPublicClient({
47
+ chain: CHAIN_MAP[chainId],
48
+ transport: options?.rpcUrl ? http(options.rpcUrl) : http(),
49
+ });
50
+ const seen = new Set();
51
+ const lastBackfilledBlock = await backfillRebalanceEvents({
52
+ publicClient,
53
+ chainId,
54
+ market,
55
+ backfillBlocks: options?.backfillBlocks ?? 100n,
56
+ onEvent,
57
+ });
58
+ return publicClient.watchContractEvent({
59
+ address: getContractAddresses({ chainId }).BookManager,
60
+ abi: BOOK_MANAGER_ABI,
61
+ eventName: 'Take',
62
+ args: {
63
+ bookId: [BigInt(market.bidBook.id), BigInt(market.askBook.id)],
64
+ },
65
+ fromBlock: lastBackfilledBlock + 1n,
66
+ onLogs: (logs) => {
67
+ for (const log of logs) {
68
+ const key = `${log.transactionHash}-${log.logIndex}`;
69
+ if (seen.has(key)) {
70
+ continue;
71
+ }
72
+ seen.add(key);
73
+ handleTakeLog(log, market, onEvent);
74
+ }
75
+ },
76
+ onError,
77
+ });
4
78
  };
5
79
  //# sourceMappingURL=take.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"take.js","sourceRoot":"","sources":["../../../../src/views/market/take.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAA;AAE3D,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EAAE,EACnC,OAAO,EACP,MAAM,EACN,MAAM,GAKP,EAAmB,EAAE;IACpB,OAAO,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;AAClD,CAAC,CAAA"}
1
+ {"version":3,"file":"take.js","sourceRoot":"","sources":["../../../../src/views/market/take.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,7 @@ const handleRebalanceLog = (log, poolSnapshot, onEvent) => {
24
24
  const { args } = log;
25
25
  onEvent({
26
26
  transactionHash: log.transactionHash,
27
+ logIndex: Number(log.logIndex),
27
28
  timestamp: Number(log.blockTimestamp),
28
29
  blockNumber: Number(log.blockNumber),
29
30
  bidOrderList: args.orderListA.map((orderId) => {
@@ -1 +1 @@
1
- {"version":3,"file":"market-making.js","sourceRoot":"","sources":["../../../../src/views/pool/market-making.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"market-making.js","sourceRoot":"","sources":["../../../../src/views/pool/market-making.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import { createPublicClient, http } from 'viem';
2
+ import { CHAIN_MAP } from '../constants/chain-configs/chain';
3
+ import { fetchLatestSwaps } from '../entities/swap/apis';
4
+ export const getLatestSwaps = async ({ chainId, n, options, }) => {
5
+ const publicClient = createPublicClient({
6
+ chain: CHAIN_MAP[chainId],
7
+ transport: options?.rpcUrl ? http(options.rpcUrl) : http(),
8
+ });
9
+ return fetchLatestSwaps(publicClient, chainId, n, !!(options && options.useSubgraph));
10
+ };
11
+ //# sourceMappingURL=swap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"swap.js","sourceRoot":"","sources":["../../../src/views/swap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAE/C,OAAO,EAAa,SAAS,EAAE,MAAM,kCAAkC,CAAA;AAEvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AAExD,MAAM,CAAC,MAAM,cAAc,GAAG,KAAK,EAAE,EACnC,OAAO,EACP,CAAC,EACD,OAAO,GAOR,EAAmB,EAAE;IACpB,MAAM,YAAY,GAAG,kBAAkB,CAAC;QACtC,KAAK,EAAE,SAAS,CAAC,OAAO,CAAC;QACzB,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;KAC3D,CAAC,CAAA;IACF,OAAO,gBAAgB,CACrB,YAAY,EACZ,OAAO,EACP,CAAC,EACD,CAAC,CAAC,CAAC,OAAO,IAAI,OAAO,CAAC,WAAW,CAAC,CACnC,CAAA;AACH,CAAC,CAAA"}