@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.
- package/dist/cjs/entities/swap/apis/index.js +48 -0
- package/dist/cjs/entities/swap/apis/index.js.map +1 -0
- package/dist/{esm/entities/take → cjs/entities/swap}/types.js.map +1 -1
- package/dist/cjs/types/events.js +3 -0
- package/dist/cjs/types/events.js.map +1 -0
- package/dist/cjs/types/index.js.map +1 -1
- package/dist/cjs/views/index.js +4 -4
- package/dist/cjs/views/index.js.map +1 -1
- package/dist/cjs/views/market/index.js +2 -2
- package/dist/cjs/views/market/index.js.map +1 -1
- package/dist/cjs/views/market/take.js +79 -5
- package/dist/cjs/views/market/take.js.map +1 -1
- package/dist/cjs/views/pool/market-making.js +1 -0
- package/dist/cjs/views/pool/market-making.js.map +1 -1
- package/dist/cjs/views/swap.js +15 -0
- package/dist/cjs/views/swap.js.map +1 -0
- package/dist/esm/entities/swap/apis/index.js +44 -0
- package/dist/esm/entities/swap/apis/index.js.map +1 -0
- package/dist/{cjs/entities/take → esm/entities/swap}/types.js.map +1 -1
- package/dist/esm/types/events.js +2 -0
- package/dist/esm/types/events.js.map +1 -0
- package/dist/esm/types/index.js.map +1 -1
- package/dist/esm/views/index.js +2 -2
- package/dist/esm/views/index.js.map +1 -1
- package/dist/esm/views/market/index.js +1 -1
- package/dist/esm/views/market/index.js.map +1 -1
- package/dist/esm/views/market/take.js +77 -3
- package/dist/esm/views/market/take.js.map +1 -1
- package/dist/esm/views/pool/market-making.js +1 -0
- package/dist/esm/views/pool/market-making.js.map +1 -1
- package/dist/esm/views/swap.js +11 -0
- package/dist/esm/views/swap.js.map +1 -0
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/types/entities/swap/apis/index.d.ts +5 -0
- package/dist/types/entities/swap/apis/index.d.ts.map +1 -0
- package/dist/types/entities/swap/types.d.ts +12 -0
- package/dist/types/entities/swap/types.d.ts.map +1 -0
- package/dist/types/types/events.d.ts +27 -0
- package/dist/types/types/events.d.ts.map +1 -0
- package/dist/types/types/index.d.ts +2 -1
- package/dist/types/types/index.d.ts.map +1 -1
- package/dist/types/views/index.d.ts +2 -2
- package/dist/types/views/index.d.ts.map +1 -1
- package/dist/types/views/market/index.d.ts +1 -1
- package/dist/types/views/market/index.d.ts.map +1 -1
- package/dist/types/views/market/take.d.ts +11 -5
- package/dist/types/views/market/take.d.ts.map +1 -1
- package/dist/types/views/pool/market-making.d.ts +2 -15
- package/dist/types/views/pool/market-making.d.ts.map +1 -1
- package/dist/types/views/swap.d.ts +10 -0
- package/dist/types/views/swap.d.ts.map +1 -0
- package/package.json +1 -1
- package/dist/cjs/entities/take/apis/index.js +0 -35
- package/dist/cjs/entities/take/apis/index.js.map +0 -1
- package/dist/cjs/views/trade.js +0 -83
- package/dist/cjs/views/trade.js.map +0 -1
- package/dist/esm/entities/take/apis/index.js +0 -31
- package/dist/esm/entities/take/apis/index.js.map +0 -1
- package/dist/esm/views/trade.js +0 -79
- package/dist/esm/views/trade.js.map +0 -1
- package/dist/types/entities/take/apis/index.d.ts +0 -4
- package/dist/types/entities/take/apis/index.d.ts.map +0 -1
- package/dist/types/entities/take/types.d.ts +0 -10
- package/dist/types/entities/take/types.d.ts.map +0 -1
- package/dist/types/views/trade.d.ts +0 -22
- package/dist/types/views/trade.d.ts.map +0 -1
- /package/dist/cjs/entities/{take → swap}/types.js +0 -0
- /package/dist/esm/entities/{take → swap}/types.js +0 -0
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { PublicClient } from 'viem';
|
|
2
|
+
import { Swap } from '../types';
|
|
3
|
+
import { CHAIN_IDS } from '../../../constants/chain-configs/chain';
|
|
4
|
+
export declare const fetchLatestSwaps: (publicClient: PublicClient, chainId: CHAIN_IDS, n: number, useSubgraph: boolean) => Promise<Swap[]>;
|
|
5
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/entities/swap/apis/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,YAAY,EAAE,MAAM,MAAM,CAAA;AAE5D,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAA;AAE/B,OAAO,EAAE,SAAS,EAAE,MAAM,wCAAwC,CAAA;AAqBlE,eAAO,MAAM,gBAAgB,iBACb,YAAY,WACjB,SAAS,KACf,MAAM,eACI,OAAO,KACnB,QAAQ,IAAI,EAAE,CA8DhB,CAAA"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { CurrencyFlow, Transaction } from '../../types';
|
|
2
|
+
export type Swap = {
|
|
3
|
+
transaction: Transaction & {
|
|
4
|
+
id: `0x${string}`;
|
|
5
|
+
};
|
|
6
|
+
timestamp: number;
|
|
7
|
+
currencyIn: CurrencyFlow;
|
|
8
|
+
currencyOut: CurrencyFlow;
|
|
9
|
+
amountUSD: number;
|
|
10
|
+
router: `0x${string}`;
|
|
11
|
+
};
|
|
12
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/entities/swap/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAEvD,MAAM,MAAM,IAAI,GAAG;IACjB,WAAW,EAAE,WAAW,GAAG;QACzB,EAAE,EAAE,KAAK,MAAM,EAAE,CAAA;KAClB,CAAA;IACD,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,YAAY,CAAA;IACxB,WAAW,EAAE,YAAY,CAAA;IACzB,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,KAAK,MAAM,EAAE,CAAA;CACtB,CAAA"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
export type TakeEvent = {
|
|
2
|
+
transactionHash: `0x${string}`;
|
|
3
|
+
logIndex: number;
|
|
4
|
+
timestamp: number;
|
|
5
|
+
blockNumber: number;
|
|
6
|
+
amount: number;
|
|
7
|
+
price: number;
|
|
8
|
+
amountUSD: number;
|
|
9
|
+
side: 'buy' | 'sell';
|
|
10
|
+
};
|
|
11
|
+
export type RebalanceEvent = {
|
|
12
|
+
transactionHash: `0x${string}`;
|
|
13
|
+
logIndex: number;
|
|
14
|
+
timestamp: number;
|
|
15
|
+
blockNumber: number;
|
|
16
|
+
bidOrderList: {
|
|
17
|
+
price: string;
|
|
18
|
+
size: string;
|
|
19
|
+
}[];
|
|
20
|
+
askOrderList: {
|
|
21
|
+
price: string;
|
|
22
|
+
size: string;
|
|
23
|
+
}[];
|
|
24
|
+
quoteReserve: string;
|
|
25
|
+
baseReserve: string;
|
|
26
|
+
};
|
|
27
|
+
//# sourceMappingURL=events.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../../src/types/events.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,SAAS,GAAG;IACtB,eAAe,EAAE,KAAK,MAAM,EAAE,CAAA;IAC9B,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;IACnB,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,EAAE,KAAK,GAAG,MAAM,CAAA;CACrB,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,eAAe,EAAE,KAAK,MAAM,EAAE,CAAA;IAC9B,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;IAC/C,YAAY,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAA;IAC/C,YAAY,EAAE,MAAM,CAAA;IACpB,WAAW,EAAE,MAAM,CAAA;CACpB,CAAA"}
|
|
@@ -4,7 +4,8 @@ export type { OpenOrder, OnChainOpenOrder } from '../entities/open-order/types';
|
|
|
4
4
|
export type { Book, Depth } from '../entities/book/types';
|
|
5
5
|
export type { Market, MarketSnapshot, ChartLog } from '../entities/market/types';
|
|
6
6
|
export type { Pool, PoolSnapshot, LastAmounts, StrategyPosition, UserPoolPosition, } from '../entities/pool/types';
|
|
7
|
-
export type {
|
|
7
|
+
export type { Swap } from '../entities/swap/types';
|
|
8
|
+
export type { TakeEvent, RebalanceEvent } from '../types/events';
|
|
8
9
|
export type { DefaultReadContractOptions, DefaultWriteContractOptions, } from './default-options';
|
|
9
10
|
export type { Transaction } from './transaction';
|
|
10
11
|
export type { PermitSignature, ERC20PermitParam } from './permit';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAA;AAC5D,YAAY,EACV,QAAQ,EACR,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,YAAY,EACZ,gBAAgB,GACjB,MAAM,4BAA4B,CAAA;AACnC,YAAY,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;AAC/E,YAAY,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAA;AACzD,YAAY,EAAE,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AAChF,YAAY,EACV,IAAI,EACJ,YAAY,EACZ,WAAW,EACX,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,wBAAwB,CAAA;AAC/B,YAAY,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAA;AAClD,YAAY,EACV,0BAA0B,EAC1B,2BAA2B,GAC5B,MAAM,mBAAmB,CAAA;AAE1B,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAChD,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AACjE,YAAY,EACV,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EAChB,OAAO,EACP,gBAAgB,GACjB,MAAM,6BAA6B,CAAA;AAEpC,oBAAY,mBAAmB;IAC7B,SAAS,OAAO;IAChB,YAAY,OAAO;IACnB,WAAW,OAAO;IAClB,UAAU,QAAQ;IAClB,cAAc,QAAQ;IACtB,aAAa,QAAQ;IACrB,OAAO,OAAO;IACd,QAAQ,OAAO;IACf,SAAS,OAAO;IAChB,QAAQ,OAAO;IACf,MAAM,OAAO;IACb,OAAO,OAAO;CACf"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAA;AAC5D,YAAY,EACV,QAAQ,EACR,YAAY,EACZ,cAAc,EACd,kBAAkB,EAClB,YAAY,EACZ,gBAAgB,GACjB,MAAM,4BAA4B,CAAA;AACnC,YAAY,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;AAC/E,YAAY,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAA;AACzD,YAAY,EAAE,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAA;AAChF,YAAY,EACV,IAAI,EACJ,YAAY,EACZ,WAAW,EACX,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,wBAAwB,CAAA;AAC/B,YAAY,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAA;AAClD,YAAY,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAA;AAChE,YAAY,EACV,0BAA0B,EAC1B,2BAA2B,GAC5B,MAAM,mBAAmB,CAAA;AAE1B,YAAY,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAChD,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AACjE,YAAY,EACV,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,gBAAgB,EAChB,OAAO,EACP,gBAAgB,GACjB,MAAM,6BAA6B,CAAA;AAEpC,oBAAY,mBAAmB;IAC7B,SAAS,OAAO;IAChB,YAAY,OAAO;IACnB,WAAW,OAAO;IAClB,UAAU,QAAQ;IAClB,cAAc,QAAQ;IACtB,aAAa,QAAQ;IACrB,OAAO,OAAO;IACd,QAAQ,OAAO;IACf,SAAS,OAAO;IAChB,QAAQ,OAAO;IACf,MAAM,OAAO;IACb,OAAO,OAAO;CACf"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
export { getMarket, getChartLogs, getLatestChartLog, getExpectedOutput, getExpectedInput, getMarketSnapshots, getMarketSnapshot, getQuoteToken, parseMakeOrderIdsFromReceipt,
|
|
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 {
|
|
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.d.ts","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,
|
|
1
|
+
{"version":3,"file":"index.d.ts","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,6 +1,6 @@
|
|
|
1
1
|
import { CHAIN_IDS } from '../../constants/chain-configs/chain';
|
|
2
2
|
import { DefaultReadContractOptions, Market } from '../../types';
|
|
3
|
-
export {
|
|
3
|
+
export { watchTakeEvents } from './take';
|
|
4
4
|
export { getExpectedOutput, getExpectedInput } from './quote';
|
|
5
5
|
export { getChartLogs, getLatestChartLog } from './chart-log';
|
|
6
6
|
export { getMarketSnapshots, getMarketSnapshot } from './snapshot';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/market/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAa,MAAM,qCAAqC,CAAA;AAC1E,OAAO,EAAE,0BAA0B,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAGhE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/market/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAa,MAAM,qCAAqC,CAAA;AAC1E,OAAO,EAAE,0BAA0B,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAGhE,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,eAAO,MAAM,SAAS,0CAKnB;IACD,OAAO,EAAE,SAAS,CAAA;IAClB,MAAM,EAAE,KAAK,MAAM,EAAE,CAAA;IACrB,MAAM,EAAE,KAAK,MAAM,EAAE,CAAA;IACrB,OAAO,CAAC,EAAE;QACR,WAAW,CAAC,EAAE,OAAO,CAAA;KACtB,GAAG,0BAA0B,CAAA;CAC/B,KAAG,QAAQ,MAAM,CAejB,CAAA"}
|
|
@@ -1,8 +1,14 @@
|
|
|
1
1
|
import { CHAIN_IDS } from '../../constants/chain-configs/chain';
|
|
2
|
-
import {
|
|
3
|
-
|
|
2
|
+
import { DefaultReadContractOptions, Market, TakeEvent } from '../../types';
|
|
3
|
+
declare const handleTakeLog: (log: any, market: Market, onEvent: (args: TakeEvent) => void) => void;
|
|
4
|
+
export declare const watchTakeEvents: ({ chainId, market, onEvent, onError, options, }: {
|
|
4
5
|
chainId: CHAIN_IDS;
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
6
|
+
market: Market;
|
|
7
|
+
onEvent: Parameters<typeof handleTakeLog>[2];
|
|
8
|
+
onError?: (error: Error) => void;
|
|
9
|
+
options?: {
|
|
10
|
+
backfillBlocks?: bigint;
|
|
11
|
+
} & DefaultReadContractOptions;
|
|
12
|
+
}) => Promise<import("viem").WatchContractEventReturnType>;
|
|
13
|
+
export {};
|
|
8
14
|
//# sourceMappingURL=take.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"take.d.ts","sourceRoot":"","sources":["../../../../src/views/market/take.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"take.d.ts","sourceRoot":"","sources":["../../../../src/views/market/take.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAa,MAAM,qCAAqC,CAAA;AAC1E,OAAO,EAAE,0BAA0B,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAK3E,QAAA,MAAM,aAAa,QACZ,GAAG,UACA,MAAM,WACL,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,SA+BnC,CAAA;AAuCD,eAAO,MAAM,eAAe,oDAMzB;IACD,OAAO,EAAE,SAAS,CAAA;IAClB,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,WAAW,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAA;IAC5C,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAA;IAChC,OAAO,CAAC,EAAE;QACR,cAAc,CAAC,EAAE,MAAM,CAAA;KACxB,GAAG,0BAA0B,CAAA;CAC/B,yDAsCA,CAAA"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { CHAIN_IDS } from '../../constants/chain-configs/chain';
|
|
2
2
|
import { DefaultReadContractOptions, LastAmounts, PoolSnapshot, StrategyPosition } from '../../types';
|
|
3
|
+
import { RebalanceEvent } from '../../types/events';
|
|
3
4
|
export declare const getStrategyPrice: ({ chainId, poolKey, options, }: {
|
|
4
5
|
chainId: CHAIN_IDS;
|
|
5
6
|
poolKey: `0x${string}`;
|
|
@@ -10,21 +11,7 @@ export declare const getLastAmounts: ({ chainId, poolKey, options, }: {
|
|
|
10
11
|
poolKey: `0x${string}`;
|
|
11
12
|
options?: DefaultReadContractOptions;
|
|
12
13
|
}) => Promise<LastAmounts>;
|
|
13
|
-
declare const handleRebalanceLog: (log: any, poolSnapshot: PoolSnapshot, onEvent: (args:
|
|
14
|
-
transactionHash: `0x${string}`;
|
|
15
|
-
timestamp: number;
|
|
16
|
-
blockNumber: number;
|
|
17
|
-
bidOrderList: {
|
|
18
|
-
price: string;
|
|
19
|
-
size: string;
|
|
20
|
-
}[];
|
|
21
|
-
askOrderList: {
|
|
22
|
-
price: string;
|
|
23
|
-
size: string;
|
|
24
|
-
}[];
|
|
25
|
-
quoteReserve: string;
|
|
26
|
-
baseReserve: string;
|
|
27
|
-
}) => void) => void;
|
|
14
|
+
declare const handleRebalanceLog: (log: any, poolSnapshot: PoolSnapshot, onEvent: (args: RebalanceEvent) => void) => void;
|
|
28
15
|
export declare const watchMarketMakingEvents: ({ chainId, poolSnapshot, options, onEvent, onError, }: {
|
|
29
16
|
chainId: CHAIN_IDS;
|
|
30
17
|
poolSnapshot: PoolSnapshot;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"market-making.d.ts","sourceRoot":"","sources":["../../../../src/views/pool/market-making.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAa,MAAM,qCAAqC,CAAA;AAC1E,OAAO,EACL,0BAA0B,EAC1B,WAAW,EACX,YAAY,EACZ,gBAAgB,EACjB,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"market-making.d.ts","sourceRoot":"","sources":["../../../../src/views/pool/market-making.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAa,MAAM,qCAAqC,CAAA;AAC1E,OAAO,EACL,0BAA0B,EAC1B,WAAW,EACX,YAAY,EACZ,gBAAgB,EACjB,MAAM,aAAa,CAAA;AASpB,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAEnD,eAAO,MAAM,gBAAgB,mCAI1B;IACD,OAAO,EAAE,SAAS,CAAA;IAClB,OAAO,EAAE,KAAK,MAAM,EAAE,CAAA;IACtB,OAAO,CAAC,EAAE,0BAA0B,CAAA;CACrC,KAAG,QAAQ,gBAAgB,CAM3B,CAAA;AAED,eAAO,MAAM,cAAc,mCAIxB;IACD,OAAO,EAAE,SAAS,CAAA;IAClB,OAAO,EAAE,KAAK,MAAM,EAAE,CAAA;IACtB,OAAO,CAAC,EAAE,0BAA0B,CAAA;CACrC,KAAG,QAAQ,WAAW,CAMtB,CAAA;AAED,QAAA,MAAM,kBAAkB,QACjB,GAAG,gBACM,YAAY,WACjB,CAAC,IAAI,EAAE,cAAc,KAAK,IAAI,SA0CxC,CAAA;AAuCD,eAAO,MAAM,uBAAuB,0DAMjC;IACD,OAAO,EAAE,SAAS,CAAA;IAClB,YAAY,EAAE,YAAY,CAAA;IAC1B,OAAO,EAAE,WAAW,yBAAyB,CAAC,CAAC,CAAC,CAAC,CAAA;IACjD,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAA;IAChC,OAAO,CAAC,EAAE;QACR,cAAc,CAAC,EAAE,MAAM,CAAA;KACxB,GAAG,0BAA0B,CAAA;CAC/B,yDAuCA,CAAA"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { CHAIN_IDS } from '../constants/chain-configs/chain';
|
|
2
|
+
import { DefaultReadContractOptions, Swap } from '../types';
|
|
3
|
+
export declare const getLatestSwaps: ({ chainId, n, options, }: {
|
|
4
|
+
chainId: CHAIN_IDS;
|
|
5
|
+
n: number;
|
|
6
|
+
options?: {
|
|
7
|
+
useSubgraph?: boolean;
|
|
8
|
+
} & DefaultReadContractOptions;
|
|
9
|
+
}) => Promise<Swap[]>;
|
|
10
|
+
//# sourceMappingURL=swap.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"swap.d.ts","sourceRoot":"","sources":["../../../src/views/swap.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAa,MAAM,kCAAkC,CAAA;AACvE,OAAO,EAAE,0BAA0B,EAAE,IAAI,EAAE,MAAM,UAAU,CAAA;AAG3D,eAAO,MAAM,cAAc,6BAIxB;IACD,OAAO,EAAE,SAAS,CAAA;IAClB,CAAC,EAAE,MAAM,CAAA;IACT,OAAO,CAAC,EAAE;QACR,WAAW,CAAC,EAAE,OAAO,CAAA;KACtB,GAAG,0BAA0B,CAAA;CAC/B,KAAG,QAAQ,IAAI,EAAE,CAWjB,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.fetchLatestTakes = void 0;
|
|
4
|
-
const viem_1 = require("viem");
|
|
5
|
-
const subgraph_1 = require("../../../constants/chain-configs/subgraph");
|
|
6
|
-
const market_id_1 = require("../../market/utils/market-id");
|
|
7
|
-
const fetchLatestTakes = async (chainId, tokenA, tokenB) => {
|
|
8
|
-
const { data: { takes }, } = await subgraph_1.Subgraph.get(chainId, 'getLatestTrades', 'query TakesByTokenPair($tokenA: String!, $tokenB: String!) { takes( orderBy: timestamp orderDirection: desc where: {or: [{inputToken: $tokenA, outputToken: $tokenB}, {inputToken: $tokenB, outputToken: $tokenA}]} ) { id timestamp amountUSD inputAmount outputAmount inputToken { id decimals } outputToken { id decimals } origin } }', {
|
|
9
|
-
tokenA: tokenA.toLowerCase(),
|
|
10
|
-
tokenB: tokenB.toLowerCase(),
|
|
11
|
-
});
|
|
12
|
-
const { quoteTokenAddress } = (0, market_id_1.getMarketId)(chainId, [tokenA, tokenB]);
|
|
13
|
-
return takes.map((swap) => {
|
|
14
|
-
const side = (0, viem_1.isAddressEqual)(swap.inputToken.id, quoteTokenAddress)
|
|
15
|
-
? 'buy'
|
|
16
|
-
: 'sell';
|
|
17
|
-
const baseAmount = Number((0, viem_1.formatUnits)(BigInt(side === 'buy' ? swap.outputAmount : swap.inputAmount), side === 'buy'
|
|
18
|
-
? Number(swap.outputToken.decimals)
|
|
19
|
-
: Number(swap.inputToken.decimals)));
|
|
20
|
-
const quoteAmount = Number((0, viem_1.formatUnits)(BigInt(side === 'buy' ? swap.inputAmount : swap.outputAmount), side === 'buy'
|
|
21
|
-
? Number(swap.inputToken.decimals)
|
|
22
|
-
: Number(swap.outputToken.decimals)));
|
|
23
|
-
return {
|
|
24
|
-
transactionHash: swap.id.split('-')[0],
|
|
25
|
-
timestamp: parseInt(swap.timestamp),
|
|
26
|
-
side,
|
|
27
|
-
price: quoteAmount / baseAmount,
|
|
28
|
-
amount: baseAmount,
|
|
29
|
-
amountUSD: Number(swap.amountUSD),
|
|
30
|
-
user: (0, viem_1.getAddress)(swap.origin),
|
|
31
|
-
};
|
|
32
|
-
});
|
|
33
|
-
};
|
|
34
|
-
exports.fetchLatestTakes = fetchLatestTakes;
|
|
35
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/entities/take/apis/index.ts"],"names":[],"mappings":";;;AAAA,+BAA8D;AAG9D,wEAAoE;AAEpE,4DAA0D;AAuBnD,MAAM,gBAAgB,GAAG,KAAK,EACnC,OAAkB,EAClB,MAAqB,EACrB,MAAqB,EACJ,EAAE;IACnB,MAAM,EACJ,IAAI,EAAE,EAAE,KAAK,EAAE,GAChB,GAAG,MAAM,mBAAQ,CAAC,GAAG,CAKpB,OAAO,EACP,iBAAiB,EACjB,2UAA2U,EAC3U;QACE,MAAM,EAAE,MAAM,CAAC,WAAW,EAAE;QAC5B,MAAM,EAAE,MAAM,CAAC,WAAW,EAAE;KAC7B,CACF,CAAA;IACD,MAAM,EAAE,iBAAiB,EAAE,GAAG,IAAA,uBAAW,EAAC,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;IAEpE,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACxB,MAAM,IAAI,GAAG,IAAA,qBAAc,EAAC,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,iBAAiB,CAAC;YAChE,CAAC,CAAC,KAAK;YACP,CAAC,CAAC,MAAM,CAAA;QACV,MAAM,UAAU,GAAG,MAAM,CACvB,IAAA,kBAAW,EACT,MAAM,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,EAC7D,IAAI,KAAK,KAAK;YACZ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC;YACnC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CACrC,CACF,CAAA;QACD,MAAM,WAAW,GAAG,MAAM,CACxB,IAAA,kBAAW,EACT,MAAM,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,EAC7D,IAAI,KAAK,KAAK;YACZ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;YAClC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CACtC,CACF,CAAA;QACD,OAAO;YACL,eAAe,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAkB;YACvD,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC;YACnC,IAAI;YACJ,KAAK,EAAE,WAAW,GAAG,UAAU;YAC/B,MAAM,EAAE,UAAU;YAClB,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;YACjC,IAAI,EAAE,IAAA,iBAAU,EAAC,IAAI,CAAC,MAAM,CAAC;SAC9B,CAAA;IACH,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA;AApDY,QAAA,gBAAgB,oBAoD5B"}
|
package/dist/cjs/views/trade.js
DELETED
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.watchTakeEvents = void 0;
|
|
4
|
-
const viem_1 = require("viem");
|
|
5
|
-
const chain_1 = require("../constants/chain-configs/chain");
|
|
6
|
-
const book_manager_abi_1 = require("../constants/abis/core/book-manager-abi");
|
|
7
|
-
const utils_1 = require("../utils");
|
|
8
|
-
const address_1 = require("./address");
|
|
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 unitSize = BigInt(isTakingBidBook ? market.bidBook.unitSize : market.askBook.unitSize);
|
|
15
|
-
const price = isTakingBidBook
|
|
16
|
-
? (0, utils_1.formatPrice)((0, utils_1.toPrice)(tick), market.quote.decimals, market.base.decimals)
|
|
17
|
-
: (0, utils_1.formatPrice)((0, utils_1.toPrice)((0, utils_1.invertTick)(tick)), market.quote.decimals, market.base.decimals);
|
|
18
|
-
const size = isTakingBidBook
|
|
19
|
-
? (0, viem_1.formatUnits)((0, utils_1.quoteToBase)(tick, unit * unitSize, false), market.base.decimals)
|
|
20
|
-
: (0, viem_1.formatUnits)(unit * unitSize, market.base.decimals);
|
|
21
|
-
onEvent({
|
|
22
|
-
transactionHash: log.transactionHash,
|
|
23
|
-
timestamp: Number(log.blockTimestamp),
|
|
24
|
-
blockNumber: Number(log.blockNumber),
|
|
25
|
-
price,
|
|
26
|
-
size,
|
|
27
|
-
usdValue: Number(parseFloat(price) * parseFloat(size)),
|
|
28
|
-
side: isTakingBidBook ? 'sell' : 'buy',
|
|
29
|
-
});
|
|
30
|
-
};
|
|
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;
|
|
83
|
-
//# sourceMappingURL=trade.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"trade.js","sourceRoot":"","sources":["../../../src/views/trade.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import { formatUnits, getAddress, isAddressEqual } from 'viem';
|
|
2
|
-
import { Subgraph } from '../../../constants/chain-configs/subgraph';
|
|
3
|
-
import { getMarketId } from '../../market/utils/market-id';
|
|
4
|
-
export const fetchLatestTakes = async (chainId, tokenA, tokenB) => {
|
|
5
|
-
const { data: { takes }, } = await Subgraph.get(chainId, 'getLatestTrades', 'query TakesByTokenPair($tokenA: String!, $tokenB: String!) { takes( orderBy: timestamp orderDirection: desc where: {or: [{inputToken: $tokenA, outputToken: $tokenB}, {inputToken: $tokenB, outputToken: $tokenA}]} ) { id timestamp amountUSD inputAmount outputAmount inputToken { id decimals } outputToken { id decimals } origin } }', {
|
|
6
|
-
tokenA: tokenA.toLowerCase(),
|
|
7
|
-
tokenB: tokenB.toLowerCase(),
|
|
8
|
-
});
|
|
9
|
-
const { quoteTokenAddress } = getMarketId(chainId, [tokenA, tokenB]);
|
|
10
|
-
return takes.map((swap) => {
|
|
11
|
-
const side = isAddressEqual(swap.inputToken.id, quoteTokenAddress)
|
|
12
|
-
? 'buy'
|
|
13
|
-
: 'sell';
|
|
14
|
-
const baseAmount = Number(formatUnits(BigInt(side === 'buy' ? swap.outputAmount : swap.inputAmount), side === 'buy'
|
|
15
|
-
? Number(swap.outputToken.decimals)
|
|
16
|
-
: Number(swap.inputToken.decimals)));
|
|
17
|
-
const quoteAmount = Number(formatUnits(BigInt(side === 'buy' ? swap.inputAmount : swap.outputAmount), side === 'buy'
|
|
18
|
-
? Number(swap.inputToken.decimals)
|
|
19
|
-
: Number(swap.outputToken.decimals)));
|
|
20
|
-
return {
|
|
21
|
-
transactionHash: swap.id.split('-')[0],
|
|
22
|
-
timestamp: parseInt(swap.timestamp),
|
|
23
|
-
side,
|
|
24
|
-
price: quoteAmount / baseAmount,
|
|
25
|
-
amount: baseAmount,
|
|
26
|
-
amountUSD: Number(swap.amountUSD),
|
|
27
|
-
user: getAddress(swap.origin),
|
|
28
|
-
};
|
|
29
|
-
});
|
|
30
|
-
};
|
|
31
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/entities/take/apis/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,MAAM,CAAA;AAG9D,OAAO,EAAE,QAAQ,EAAE,MAAM,2CAA2C,CAAA;AAEpE,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAA;AAuB1D,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,EACnC,OAAkB,EAClB,MAAqB,EACrB,MAAqB,EACJ,EAAE;IACnB,MAAM,EACJ,IAAI,EAAE,EAAE,KAAK,EAAE,GAChB,GAAG,MAAM,QAAQ,CAAC,GAAG,CAKpB,OAAO,EACP,iBAAiB,EACjB,2UAA2U,EAC3U;QACE,MAAM,EAAE,MAAM,CAAC,WAAW,EAAE;QAC5B,MAAM,EAAE,MAAM,CAAC,WAAW,EAAE;KAC7B,CACF,CAAA;IACD,MAAM,EAAE,iBAAiB,EAAE,GAAG,WAAW,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAA;IAEpE,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACxB,MAAM,IAAI,GAAG,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,iBAAiB,CAAC;YAChE,CAAC,CAAC,KAAK;YACP,CAAC,CAAC,MAAM,CAAA;QACV,MAAM,UAAU,GAAG,MAAM,CACvB,WAAW,CACT,MAAM,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,EAC7D,IAAI,KAAK,KAAK;YACZ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC;YACnC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CACrC,CACF,CAAA;QACD,MAAM,WAAW,GAAG,MAAM,CACxB,WAAW,CACT,MAAM,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,EAC7D,IAAI,KAAK,KAAK;YACZ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;YAClC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CACtC,CACF,CAAA;QACD,OAAO;YACL,eAAe,EAAE,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAkB;YACvD,SAAS,EAAE,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC;YACnC,IAAI;YACJ,KAAK,EAAE,WAAW,GAAG,UAAU;YAC/B,MAAM,EAAE,UAAU;YAClB,SAAS,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;YACjC,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC;SAC9B,CAAA;IACH,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA"}
|
package/dist/esm/views/trade.js
DELETED
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
import { createPublicClient, formatUnits, http, parseAbiItem } from 'viem';
|
|
2
|
-
import { CHAIN_MAP } from '../constants/chain-configs/chain';
|
|
3
|
-
import { BOOK_MANAGER_ABI } from '../constants/abis/core/book-manager-abi';
|
|
4
|
-
import { formatPrice, invertTick, quoteToBase, toPrice } from '../utils';
|
|
5
|
-
import { getContractAddresses } from './address';
|
|
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 unitSize = BigInt(isTakingBidBook ? market.bidBook.unitSize : market.askBook.unitSize);
|
|
12
|
-
const price = isTakingBidBook
|
|
13
|
-
? formatPrice(toPrice(tick), market.quote.decimals, market.base.decimals)
|
|
14
|
-
: formatPrice(toPrice(invertTick(tick)), market.quote.decimals, market.base.decimals);
|
|
15
|
-
const size = isTakingBidBook
|
|
16
|
-
? formatUnits(quoteToBase(tick, unit * unitSize, false), market.base.decimals)
|
|
17
|
-
: formatUnits(unit * unitSize, market.base.decimals);
|
|
18
|
-
onEvent({
|
|
19
|
-
transactionHash: log.transactionHash,
|
|
20
|
-
timestamp: Number(log.blockTimestamp),
|
|
21
|
-
blockNumber: Number(log.blockNumber),
|
|
22
|
-
price,
|
|
23
|
-
size,
|
|
24
|
-
usdValue: Number(parseFloat(price) * parseFloat(size)),
|
|
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
|
-
});
|
|
78
|
-
};
|
|
79
|
-
//# sourceMappingURL=trade.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"trade.js","sourceRoot":"","sources":["../../../src/views/trade.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/entities/take/apis/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,UAAU,CAAA;AAE/B,OAAO,EAAE,SAAS,EAAE,MAAM,wCAAwC,CAAA;AAwBlE,eAAO,MAAM,gBAAgB,YAClB,SAAS,UACV,KAAK,MAAM,EAAE,UACb,KAAK,MAAM,EAAE,KACpB,QAAQ,IAAI,EAAE,CAgDhB,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/entities/take/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,IAAI,GAAG;IACjB,eAAe,EAAE,KAAK,MAAM,EAAE,CAAA;IAC9B,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,EAAE,KAAK,GAAG,MAAM,CAAA;IACpB,IAAI,EAAE,KAAK,MAAM,EAAE,CAAA;CACpB,CAAA"}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { CHAIN_IDS } from '../constants/chain-configs/chain';
|
|
2
|
-
import type { DefaultReadContractOptions, Market } from '../types';
|
|
3
|
-
declare const handleTakeLog: (log: any, market: Market, onEvent: (args: {
|
|
4
|
-
transactionHash: `0x${string}`;
|
|
5
|
-
timestamp: number;
|
|
6
|
-
blockNumber: number;
|
|
7
|
-
price: string;
|
|
8
|
-
size: string;
|
|
9
|
-
usdValue: number;
|
|
10
|
-
side: 'buy' | 'sell';
|
|
11
|
-
}) => void) => void;
|
|
12
|
-
export declare const watchTakeEvents: ({ chainId, market, onEvent, onError, options, }: {
|
|
13
|
-
chainId: CHAIN_IDS;
|
|
14
|
-
market: Market;
|
|
15
|
-
onEvent: Parameters<typeof handleTakeLog>[2];
|
|
16
|
-
onError?: (error: Error) => void;
|
|
17
|
-
options?: {
|
|
18
|
-
backfillBlocks?: bigint;
|
|
19
|
-
} & DefaultReadContractOptions;
|
|
20
|
-
}) => Promise<import("viem").WatchContractEventReturnType>;
|
|
21
|
-
export {};
|
|
22
|
-
//# sourceMappingURL=trade.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"trade.d.ts","sourceRoot":"","sources":["../../../src/views/trade.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAa,MAAM,kCAAkC,CAAA;AACvE,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAMlE,QAAA,MAAM,aAAa,QACZ,GAAG,UACA,MAAM,WACL,CAAC,IAAI,EAAE;IACd,eAAe,EAAE,KAAK,MAAM,EAAE,CAAA;IAC9B,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE,KAAK,GAAG,MAAM,CAAA;CACrB,KAAK,IAAI,SAkCX,CAAA;AAuCD,eAAO,MAAM,eAAe,oDAMzB;IACD,OAAO,EAAE,SAAS,CAAA;IAClB,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,WAAW,oBAAoB,CAAC,CAAC,CAAC,CAAC,CAAA;IAC5C,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,IAAI,CAAA;IAChC,OAAO,CAAC,EAAE;QACR,cAAc,CAAC,EAAE,MAAM,CAAA;KACxB,GAAG,0BAA0B,CAAA;CAC/B,yDAsCA,CAAA"}
|
|
File without changes
|
|
File without changes
|