@alphafi/alphafi-sdk 0.0.32 → 0.0.34
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/collectReward.d.ts +2 -0
- package/dist/cjs/collectReward.d.ts.map +1 -0
- package/dist/cjs/collectReward.js +7 -0
- package/dist/cjs/collectReward.js.map +1 -0
- package/dist/cjs/common/alphaTypes.d.ts +110 -0
- package/dist/cjs/common/cetus_mainnet_config.d.ts +3 -0
- package/dist/cjs/common/coins.d.ts +5 -0
- package/dist/cjs/common/constants.d.ts +998 -0
- package/dist/cjs/common/constants.d.ts.map +1 -1
- package/dist/cjs/common/constants.js +74 -1
- package/dist/cjs/common/constants.js.map +1 -1
- package/dist/cjs/common/maps.d.ts +76 -0
- package/dist/cjs/common/maps.d.ts.map +1 -1
- package/dist/cjs/common/maps.js +162 -23
- package/dist/cjs/common/maps.js.map +1 -1
- package/dist/cjs/common/pyth.d.ts +7 -0
- package/dist/cjs/common/types.d.ts +463 -0
- package/dist/cjs/common/types.d.ts.map +1 -1
- package/dist/cjs/common/types.js.map +1 -1
- package/dist/cjs/example.d.ts +3 -0
- package/dist/cjs/getAirdropShare.d.ts +2 -0
- package/dist/cjs/getAllVaults.d.ts +4 -0
- package/dist/cjs/getAlphaUnlocks.d.ts +14 -0
- package/dist/cjs/getAprs.d.ts +6 -0
- package/dist/cjs/getHoldersFromTransactions.d.ts +9 -0
- package/dist/cjs/getLastAutoCompoundTime.d.ts +3 -0
- package/dist/cjs/getLastAutoCompoundTime.js +1 -1
- package/dist/cjs/getLastAutoCompoundTime.js.map +1 -1
- package/dist/cjs/getRebalanceHistory.d.ts +4 -0
- package/dist/cjs/getVaultBalances.d.ts +9 -0
- package/dist/cjs/getVaults.d.ts +5 -0
- package/dist/cjs/graphql/client.d.ts +4 -0
- package/dist/cjs/graphql/executeMutations.d.ts +4 -0
- package/dist/cjs/graphql/fetchAutoCompoundingEventsGql.d.ts +27 -0
- package/dist/cjs/graphql/fetchData.d.ts +11 -0
- package/dist/cjs/graphql/fetchNftHolders.d.ts +3 -0
- package/dist/cjs/graphql/fetchReceipts.d.ts +3 -0
- package/dist/cjs/graphql/getMultiReceipts.d.ts +3 -0
- package/dist/cjs/graphql/getMultiReceipts.d.ts.map +1 -1
- package/dist/cjs/graphql/getMultiReceipts.js +9 -2
- package/dist/cjs/graphql/getMultiReceipts.js.map +1 -1
- package/dist/cjs/graphql/mutations.d.ts +4 -0
- package/dist/cjs/graphql/parseData.d.ts +2 -0
- package/dist/cjs/graphql/parseLockedTableId.d.ts +7 -0
- package/dist/cjs/graphql/queries/autoCompoundEvents.d.ts +2 -0
- package/dist/cjs/graphql/queries/cetusPools.d.ts +2 -0
- package/dist/cjs/graphql/queries/getMultiReceipts.d.ts +2 -0
- package/dist/cjs/graphql/queries/investors.d.ts +2 -0
- package/dist/cjs/graphql/queries/lockedTableData.d.ts +2 -0
- package/dist/cjs/graphql/queries/lockedTableDataFragment.d.ts +2 -0
- package/dist/cjs/graphql/queries/nftHolders.d.ts +2 -0
- package/dist/cjs/graphql/queries/pools.d.ts +2 -0
- package/dist/cjs/graphql/queries/receiptData.d.ts +2 -0
- package/dist/cjs/graphql/queries/userVaultBalances.d.ts +2 -0
- package/dist/cjs/graphql/queries/userVaults.d.ts +2 -0
- package/dist/cjs/graphql/queries.d.ts +15 -0
- package/dist/cjs/graphql/types.d.ts +112 -0
- package/dist/cjs/index.d.ts +29 -0
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +14 -3
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/sui-sdk/client.d.ts +31 -0
- package/dist/cjs/sui-sdk/events/fetchAfterTransactionEvents.d.ts +8 -0
- package/dist/cjs/sui-sdk/events/fetchAfterTransactionEvents.d.ts.map +1 -0
- package/dist/cjs/sui-sdk/events/fetchAfterTransactionEvents.js +126 -0
- package/dist/cjs/sui-sdk/events/fetchAfterTransactionEvents.js.map +1 -0
- package/dist/cjs/sui-sdk/events/fetchAutoCompoundingEvents.d.ts +6 -0
- package/dist/cjs/sui-sdk/events/fetchEvents.d.ts +3 -0
- package/dist/cjs/sui-sdk/events/fetchEvents.d.ts.map +1 -1
- package/dist/cjs/sui-sdk/events/fetchEvents.js +64 -2
- package/dist/cjs/sui-sdk/events/fetchEvents.js.map +1 -1
- package/dist/cjs/sui-sdk/events/fetchLiquidityChangeEvents.d.ts +3 -0
- package/dist/cjs/sui-sdk/events/fetchRebalanceEvents.d.ts +5 -0
- package/dist/cjs/sui-sdk/events/fetchWithdrawV2Events.d.ts +3 -0
- package/dist/cjs/sui-sdk/events/fetchWithdrawV2Events.js +1 -1
- package/dist/cjs/sui-sdk/events/fetchWithdrawV2Events.js.map +1 -1
- package/dist/cjs/sui-sdk/events/parseData.d.ts +4 -0
- package/dist/cjs/sui-sdk/events/types.d.ts +183 -0
- package/dist/cjs/sui-sdk/events/types.d.ts.map +1 -1
- package/dist/cjs/sui-sdk/events/types.js.map +1 -1
- package/dist/cjs/sui-sdk/functions/fetchTableData.d.ts +50 -0
- package/dist/cjs/sui-sdk/functions/fetchUserVaultBalances.d.ts +3 -0
- package/dist/cjs/sui-sdk/functions/fetchUserVaults.d.ts +3 -0
- package/dist/cjs/sui-sdk/functions/getPortfolioAmounts.d.ts +33 -0
- package/dist/cjs/sui-sdk/functions/getReceipts.d.ts +29 -0
- package/dist/cjs/sui-sdk/functions/getReceipts.d.ts.map +1 -1
- package/dist/cjs/sui-sdk/functions/getReceipts.js +53 -0
- package/dist/cjs/sui-sdk/functions/getReceipts.js.map +1 -1
- package/dist/cjs/sui-sdk/transactions/constants.d.ts +4 -0
- package/dist/cjs/sui-sdk/transactions/fetchTransactions.d.ts +4 -0
- package/dist/cjs/sui-sdk/transactions/types.d.ts +8 -0
- package/dist/cjs/types.d.ts +213 -0
- package/dist/cjs/utils/clmm/prices.d.ts +20 -0
- package/dist/cjs/utils/clmm/tokenAmountFromLiquidity.d.ts +11 -0
- package/dist/cjs/utils/clmm/types.d.ts +25 -0
- package/dist/cjs/utils/constants.d.ts +3 -0
- package/dist/cjs/utils/getHoldersFromTransactionsUtils.d.ts +6 -0
- package/dist/cjs/utils/getReceipts.d.ts +4 -0
- package/dist/cjs/utils/hop.d.ts +16 -0
- package/dist/cjs/utils/prices.d.ts +6 -0
- package/dist/cjs/utils/simpleCache.d.ts +10 -0
- package/dist/cjs/utils/types.d.ts +5 -0
- package/dist/cjs/utils/userHoldings.d.ts +6 -0
- package/dist/cjs/utils/userHoldings.d.ts.map +1 -1
- package/dist/cjs/utils/userHoldings.js +26 -7
- package/dist/cjs/utils/userHoldings.js.map +1 -1
- package/dist/cjs/vaultFunctions.d.ts +5 -0
- package/dist/esm/collectReward.d.ts +2 -0
- package/dist/esm/collectReward.d.ts.map +1 -0
- package/dist/esm/collectReward.js +4 -0
- package/dist/esm/collectReward.js.map +1 -0
- package/dist/esm/common/alphaTypes.d.ts +110 -0
- package/dist/esm/common/cetus_mainnet_config.d.ts +3 -0
- package/dist/esm/common/coins.d.ts +5 -0
- package/dist/esm/common/constants.d.ts +998 -0
- package/dist/esm/common/constants.d.ts.map +1 -1
- package/dist/esm/common/constants.js +72 -0
- package/dist/esm/common/constants.js.map +1 -1
- package/dist/esm/common/maps.d.ts +76 -0
- package/dist/esm/common/maps.d.ts.map +1 -1
- package/dist/esm/common/maps.js +161 -23
- package/dist/esm/common/maps.js.map +1 -1
- package/dist/esm/common/pyth.d.ts +7 -0
- package/dist/esm/common/types.d.ts +463 -0
- package/dist/esm/common/types.d.ts.map +1 -1
- package/dist/esm/common/types.js.map +1 -1
- package/dist/esm/example.d.ts +3 -0
- package/dist/esm/getAirdropShare.d.ts +2 -0
- package/dist/esm/getAllVaults.d.ts +4 -0
- package/dist/esm/getAlphaUnlocks.d.ts +14 -0
- package/dist/esm/getAprs.d.ts +6 -0
- package/dist/esm/getHoldersFromTransactions.d.ts +9 -0
- package/dist/esm/getLastAutoCompoundTime.d.ts +3 -0
- package/dist/esm/getLastAutoCompoundTime.js +1 -1
- package/dist/esm/getLastAutoCompoundTime.js.map +1 -1
- package/dist/esm/getRebalanceHistory.d.ts +4 -0
- package/dist/esm/getVaultBalances.d.ts +9 -0
- package/dist/esm/getVaults.d.ts +5 -0
- package/dist/esm/graphql/client.d.ts +4 -0
- package/dist/esm/graphql/executeMutations.d.ts +4 -0
- package/dist/esm/graphql/fetchAutoCompoundingEventsGql.d.ts +27 -0
- package/dist/esm/graphql/fetchData.d.ts +11 -0
- package/dist/esm/graphql/fetchNftHolders.d.ts +3 -0
- package/dist/esm/graphql/fetchReceipts.d.ts +3 -0
- package/dist/esm/graphql/getMultiReceipts.d.ts +3 -0
- package/dist/esm/graphql/getMultiReceipts.d.ts.map +1 -1
- package/dist/esm/graphql/getMultiReceipts.js +9 -2
- package/dist/esm/graphql/getMultiReceipts.js.map +1 -1
- package/dist/esm/graphql/mutations.d.ts +4 -0
- package/dist/esm/graphql/parseData.d.ts +2 -0
- package/dist/esm/graphql/parseLockedTableId.d.ts +7 -0
- package/dist/esm/graphql/queries/autoCompoundEvents.d.ts +2 -0
- package/dist/esm/graphql/queries/cetusPools.d.ts +2 -0
- package/dist/esm/graphql/queries/getMultiReceipts.d.ts +2 -0
- package/dist/esm/graphql/queries/investors.d.ts +2 -0
- package/dist/esm/graphql/queries/lockedTableData.d.ts +2 -0
- package/dist/esm/graphql/queries/lockedTableDataFragment.d.ts +2 -0
- package/dist/esm/graphql/queries/nftHolders.d.ts +2 -0
- package/dist/esm/graphql/queries/pools.d.ts +2 -0
- package/dist/esm/graphql/queries/receiptData.d.ts +2 -0
- package/dist/esm/graphql/queries/userVaultBalances.d.ts +2 -0
- package/dist/esm/graphql/queries/userVaults.d.ts +2 -0
- package/dist/esm/graphql/queries.d.ts +15 -0
- package/dist/esm/graphql/types.d.ts +112 -0
- package/dist/esm/index.d.ts +29 -0
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +5 -3
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/sui-sdk/client.d.ts +31 -0
- package/dist/esm/sui-sdk/events/fetchAfterTransactionEvents.d.ts +8 -0
- package/dist/esm/sui-sdk/events/fetchAfterTransactionEvents.d.ts.map +1 -0
- package/dist/esm/sui-sdk/events/fetchAfterTransactionEvents.js +123 -0
- package/dist/esm/sui-sdk/events/fetchAfterTransactionEvents.js.map +1 -0
- package/dist/esm/sui-sdk/events/fetchAutoCompoundingEvents.d.ts +6 -0
- package/dist/esm/sui-sdk/events/fetchEvents.d.ts +3 -0
- package/dist/esm/sui-sdk/events/fetchEvents.d.ts.map +1 -1
- package/dist/esm/sui-sdk/events/fetchEvents.js +64 -2
- package/dist/esm/sui-sdk/events/fetchEvents.js.map +1 -1
- package/dist/esm/sui-sdk/events/fetchLiquidityChangeEvents.d.ts +3 -0
- package/dist/esm/sui-sdk/events/fetchRebalanceEvents.d.ts +5 -0
- package/dist/esm/sui-sdk/events/fetchWithdrawV2Events.d.ts +3 -0
- package/dist/esm/sui-sdk/events/fetchWithdrawV2Events.js +1 -1
- package/dist/esm/sui-sdk/events/fetchWithdrawV2Events.js.map +1 -1
- package/dist/esm/sui-sdk/events/parseData.d.ts +4 -0
- package/dist/esm/sui-sdk/events/types.d.ts +183 -0
- package/dist/esm/sui-sdk/events/types.d.ts.map +1 -1
- package/dist/esm/sui-sdk/events/types.js.map +1 -1
- package/dist/esm/sui-sdk/functions/fetchTableData.d.ts +50 -0
- package/dist/esm/sui-sdk/functions/fetchUserVaultBalances.d.ts +3 -0
- package/dist/esm/sui-sdk/functions/fetchUserVaults.d.ts +3 -0
- package/dist/esm/sui-sdk/functions/getPortfolioAmounts.d.ts +33 -0
- package/dist/esm/sui-sdk/functions/getReceipts.d.ts +29 -0
- package/dist/esm/sui-sdk/functions/getReceipts.d.ts.map +1 -1
- package/dist/esm/sui-sdk/functions/getReceipts.js +52 -0
- package/dist/esm/sui-sdk/functions/getReceipts.js.map +1 -1
- package/dist/esm/sui-sdk/transactions/constants.d.ts +4 -0
- package/dist/esm/sui-sdk/transactions/fetchTransactions.d.ts +4 -0
- package/dist/esm/sui-sdk/transactions/types.d.ts +8 -0
- package/dist/esm/types.d.ts +213 -0
- package/dist/esm/utils/clmm/prices.d.ts +20 -0
- package/dist/esm/utils/clmm/tokenAmountFromLiquidity.d.ts +11 -0
- package/dist/esm/utils/clmm/types.d.ts +25 -0
- package/dist/esm/utils/constants.d.ts +3 -0
- package/dist/esm/utils/getHoldersFromTransactionsUtils.d.ts +6 -0
- package/dist/esm/utils/getReceipts.d.ts +4 -0
- package/dist/esm/utils/hop.d.ts +16 -0
- package/dist/esm/utils/prices.d.ts +6 -0
- package/dist/esm/utils/simpleCache.d.ts +10 -0
- package/dist/esm/utils/types.d.ts +5 -0
- package/dist/esm/utils/userHoldings.d.ts +6 -0
- package/dist/esm/utils/userHoldings.d.ts.map +1 -1
- package/dist/esm/utils/userHoldings.js +27 -8
- package/dist/esm/utils/userHoldings.js.map +1 -1
- package/dist/esm/vaultFunctions.d.ts +5 -0
- package/package.json +3 -3
- package/dist/index.js +0 -3
- package/dist/index.js.LICENSE.txt +0 -48
- package/dist/index.js.map +0 -1
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
import { parentPoolMap, poolCoinMap, poolInfo } from "../../common/maps.js";
|
|
2
|
+
import { fetchEvents } from "./fetchEvents.js";
|
|
3
|
+
import { getSuiClient } from "../client.js";
|
|
4
|
+
import { conf, CONF_ENV } from "../../common/constants.js";
|
|
5
|
+
import { coins } from "../../common/coins.js";
|
|
6
|
+
export async function fetchAfterTransactionEvents(params) {
|
|
7
|
+
const eventTypesSet = new Set();
|
|
8
|
+
if (params.poolNames) {
|
|
9
|
+
params.poolNames.forEach((poolName) => {
|
|
10
|
+
const eventType = poolInfo[poolName].afterTransactionEventType;
|
|
11
|
+
if (eventType !== undefined && eventType !== null && eventType !== "") {
|
|
12
|
+
eventTypesSet.add(eventType);
|
|
13
|
+
}
|
|
14
|
+
});
|
|
15
|
+
}
|
|
16
|
+
else {
|
|
17
|
+
// Iterate over all the values in poolInfo and add each autoCompoundingEventType to the Set
|
|
18
|
+
Object.values(poolInfo).forEach((info) => {
|
|
19
|
+
const eventType = info.afterTransactionEventType;
|
|
20
|
+
if (eventType !== undefined && eventType !== null && eventType !== "") {
|
|
21
|
+
eventTypesSet.add(eventType);
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
const eventTypes = Array.from(eventTypesSet);
|
|
26
|
+
const eventsPromises = eventTypes.map(async (eventType) => {
|
|
27
|
+
const events = await fetchEvents({
|
|
28
|
+
startTime: params.startTime,
|
|
29
|
+
endTime: params.endTime,
|
|
30
|
+
eventTypes: [eventType],
|
|
31
|
+
});
|
|
32
|
+
return events;
|
|
33
|
+
});
|
|
34
|
+
const events = (await Promise.all(eventsPromises)).flat();
|
|
35
|
+
const afterTransactionEvents = events.map((e) => {
|
|
36
|
+
return e;
|
|
37
|
+
});
|
|
38
|
+
if (params.poolNames &&
|
|
39
|
+
params.poolNames.length === 1 &&
|
|
40
|
+
params.poolNames[0] === "ALPHA") {
|
|
41
|
+
return afterTransactionEvents;
|
|
42
|
+
}
|
|
43
|
+
const afterTransactionEventsWithPool = await (async () => {
|
|
44
|
+
const txDigests = [];
|
|
45
|
+
for (const event of afterTransactionEvents) {
|
|
46
|
+
if (!event.poolName) {
|
|
47
|
+
txDigests.push(event.id.txDigest);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
const suiClient = getSuiClient();
|
|
51
|
+
let eventsFromTx = [];
|
|
52
|
+
while (txDigests.length > 0) {
|
|
53
|
+
const batch = txDigests.splice(0, Math.min(50, txDigests.length));
|
|
54
|
+
const eventsFromTxBatch = await suiClient.multiGetTransactionBlocks({
|
|
55
|
+
digests: batch,
|
|
56
|
+
options: { showEvents: true },
|
|
57
|
+
});
|
|
58
|
+
eventsFromTx = eventsFromTx.concat(eventsFromTxBatch);
|
|
59
|
+
}
|
|
60
|
+
return new Map(eventsFromTx.map((txData) => {
|
|
61
|
+
return [txData.digest, txData];
|
|
62
|
+
}));
|
|
63
|
+
})();
|
|
64
|
+
for (let i = 0; i < afterTransactionEvents.length; i++) {
|
|
65
|
+
const event = afterTransactionEvents[i];
|
|
66
|
+
if (event.poolName)
|
|
67
|
+
continue;
|
|
68
|
+
const otherEvents = afterTransactionEventsWithPool.get(event.id.txDigest)?.events;
|
|
69
|
+
if (!otherEvents) {
|
|
70
|
+
throw new Error(`SuiTransactionBlockResponse not found for digest: ${event.id.txDigest}`);
|
|
71
|
+
}
|
|
72
|
+
const thisPoolName = ((otherEvents) => {
|
|
73
|
+
for (let j = 0; j < otherEvents.length; j++) {
|
|
74
|
+
const otherEvent = otherEvents[j];
|
|
75
|
+
if (otherEvent.type === conf[CONF_ENV].CETUS_ADD_LIQUIDITY_EVENT ||
|
|
76
|
+
otherEvent.type === conf[CONF_ENV].CETUS_REMOVE_LIQUIDITY_EVENT) {
|
|
77
|
+
//CETUS
|
|
78
|
+
const eventJson = otherEvent.parsedJson;
|
|
79
|
+
const cetusPoolId = eventJson.pool;
|
|
80
|
+
const poolName = Object.keys(parentPoolMap).find((pool) => parentPoolMap[pool] === cetusPoolId);
|
|
81
|
+
if (!poolName)
|
|
82
|
+
throw new Error(`cetusPoolName not found for event: ${otherEvent}`);
|
|
83
|
+
return poolName;
|
|
84
|
+
}
|
|
85
|
+
else if (otherEvent.type === conf[CONF_ENV].NAVI_POOL_DEPOSIT_EVENT ||
|
|
86
|
+
otherEvent.type === conf[CONF_ENV].NAVI_POOL_WITHDRAW_EVENT) {
|
|
87
|
+
//NAVI
|
|
88
|
+
const eventJson = otherEvent.parsedJson;
|
|
89
|
+
const naviCoinId = eventJson.pool ===
|
|
90
|
+
"0000000000000000000000000000000000000000000000000000000000000002::sui::SUI"
|
|
91
|
+
? "0x2::sui::SUI"
|
|
92
|
+
: `0x${eventJson.pool}`;
|
|
93
|
+
const coinName = Object.keys(coins).find((coin) => coins[coin].type === naviCoinId);
|
|
94
|
+
const poolName = Object.keys(poolCoinMap).find((pool) => poolCoinMap[pool] === coinName);
|
|
95
|
+
if (!poolName) {
|
|
96
|
+
console.error("for event: ", otherEvent);
|
|
97
|
+
throw new Error(`naviPoolName not found`);
|
|
98
|
+
}
|
|
99
|
+
return poolName;
|
|
100
|
+
}
|
|
101
|
+
else {
|
|
102
|
+
if (j === otherEvents.length - 1) {
|
|
103
|
+
console.error("digest", event.id.txDigest);
|
|
104
|
+
throw new Error("deposit/withdraw events not found for either CETUS, or NAVI");
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
})(otherEvents);
|
|
109
|
+
if (!thisPoolName)
|
|
110
|
+
throw new Error(`PoolName not found`);
|
|
111
|
+
const eventWithPool = {
|
|
112
|
+
...event,
|
|
113
|
+
poolName: thisPoolName,
|
|
114
|
+
};
|
|
115
|
+
afterTransactionEvents[i] = eventWithPool;
|
|
116
|
+
}
|
|
117
|
+
if (params.poolNames && params.poolNames.length >= 1) {
|
|
118
|
+
const allowedPoolNames = params.poolNames;
|
|
119
|
+
return afterTransactionEvents.filter((event) => allowedPoolNames.includes(event.poolName));
|
|
120
|
+
}
|
|
121
|
+
return afterTransactionEvents;
|
|
122
|
+
}
|
|
123
|
+
//# sourceMappingURL=fetchAfterTransactionEvents.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetchAfterTransactionEvents.js","sourceRoot":"","sources":["../../../../src/sui-sdk/events/fetchAfterTransactionEvents.ts"],"names":[],"mappings":"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","sourcesContent":["import { SuiEvent, SuiTransactionBlockResponse } from \"@mysten/sui/client\";\nimport { parentPoolMap, poolCoinMap, poolInfo } from \"../../common/maps.js\";\nimport {\n CoinName,\n PoolName,\n SingleAssetPoolNames,\n} from \"../../common/types.js\";\nimport { fetchEvents } from \"./fetchEvents.js\";\nimport {\n AfterTransactionEventNode,\n CetusAddLiquidityEvent,\n CetusRemoveLiquidityEvent,\n NaviPoolDepositEvent,\n NaviPoolWithdrawEvent,\n} from \"./types.js\";\nimport { getSuiClient } from \"../client.js\";\nimport { conf, CONF_ENV } from \"../../common/constants.js\";\nimport { coins } from \"../../common/coins.js\";\n\nexport async function fetchAfterTransactionEvents(params: {\n startTime: number;\n endTime: number;\n poolNames?: PoolName[];\n}) {\n const eventTypesSet = new Set<string>();\n if (params.poolNames) {\n params.poolNames.forEach((poolName) => {\n const eventType = poolInfo[poolName].afterTransactionEventType;\n if (eventType !== undefined && eventType !== null && eventType !== \"\") {\n eventTypesSet.add(eventType);\n }\n });\n } else {\n // Iterate over all the values in poolInfo and add each autoCompoundingEventType to the Set\n Object.values(poolInfo).forEach((info) => {\n const eventType = info.afterTransactionEventType;\n if (eventType !== undefined && eventType !== null && eventType !== \"\") {\n eventTypesSet.add(eventType);\n }\n });\n }\n const eventTypes = Array.from(eventTypesSet);\n\n const eventsPromises = eventTypes.map(async (eventType) => {\n const events = await fetchEvents({\n startTime: params.startTime,\n endTime: params.endTime,\n eventTypes: [eventType],\n });\n return events;\n });\n const events = (await Promise.all(eventsPromises)).flat();\n const afterTransactionEvents = events.map((e) => {\n return e as AfterTransactionEventNode;\n });\n\n if (\n params.poolNames &&\n params.poolNames.length === 1 &&\n params.poolNames[0] === \"ALPHA\"\n ) {\n return afterTransactionEvents;\n }\n const afterTransactionEventsWithPool = await (async () => {\n const txDigests: string[] = [];\n for (const event of afterTransactionEvents) {\n if (!event.poolName) {\n txDigests.push(event.id.txDigest);\n }\n }\n const suiClient = getSuiClient();\n let eventsFromTx: SuiTransactionBlockResponse[] = [];\n while (txDigests.length > 0) {\n const batch = txDigests.splice(0, Math.min(50, txDigests.length));\n const eventsFromTxBatch = await suiClient.multiGetTransactionBlocks({\n digests: batch,\n options: { showEvents: true },\n });\n eventsFromTx = eventsFromTx.concat(eventsFromTxBatch);\n }\n return new Map<string, SuiTransactionBlockResponse>(\n eventsFromTx.map((txData) => {\n return [txData.digest, txData];\n }),\n );\n })();\n for (let i = 0; i < afterTransactionEvents.length; i++) {\n const event = afterTransactionEvents[i];\n if (event.poolName) continue;\n const otherEvents = afterTransactionEventsWithPool.get(\n event.id.txDigest,\n )?.events;\n if (!otherEvents) {\n throw new Error(\n `SuiTransactionBlockResponse not found for digest: ${event.id.txDigest}`,\n );\n }\n const thisPoolName = ((otherEvents: SuiEvent[]) => {\n for (let j = 0; j < otherEvents.length; j++) {\n const otherEvent = otherEvents[j];\n if (\n otherEvent.type === conf[CONF_ENV].CETUS_ADD_LIQUIDITY_EVENT ||\n otherEvent.type === conf[CONF_ENV].CETUS_REMOVE_LIQUIDITY_EVENT\n ) {\n //CETUS\n const eventJson = otherEvent.parsedJson as\n | CetusAddLiquidityEvent\n | CetusRemoveLiquidityEvent;\n const cetusPoolId = eventJson.pool;\n const poolName = Object.keys(parentPoolMap).find(\n (pool) => parentPoolMap[pool] === cetusPoolId,\n );\n if (!poolName)\n throw new Error(`cetusPoolName not found for event: ${otherEvent}`);\n return poolName;\n } else if (\n otherEvent.type === conf[CONF_ENV].NAVI_POOL_DEPOSIT_EVENT ||\n otherEvent.type === conf[CONF_ENV].NAVI_POOL_WITHDRAW_EVENT\n ) {\n //NAVI\n const eventJson = otherEvent.parsedJson as\n | NaviPoolDepositEvent\n | NaviPoolWithdrawEvent;\n const naviCoinId =\n eventJson.pool ===\n \"0000000000000000000000000000000000000000000000000000000000000002::sui::SUI\"\n ? \"0x2::sui::SUI\"\n : `0x${eventJson.pool}`;\n const coinName = Object.keys(coins).find(\n (coin) => coins[coin as CoinName].type === naviCoinId,\n );\n const poolName = Object.keys(poolCoinMap).find(\n (pool) => poolCoinMap[pool as SingleAssetPoolNames] === coinName,\n );\n if (!poolName) {\n console.error(\"for event: \", otherEvent);\n throw new Error(`naviPoolName not found`);\n }\n return poolName;\n } else {\n if (j === otherEvents.length - 1) {\n console.error(\"digest\", event.id.txDigest);\n throw new Error(\n \"deposit/withdraw events not found for either CETUS, or NAVI\",\n );\n }\n }\n }\n })(otherEvents);\n if (!thisPoolName) throw new Error(`PoolName not found`);\n const eventWithPool: AfterTransactionEventNode = {\n ...event,\n poolName: thisPoolName as PoolName,\n };\n afterTransactionEvents[i] = eventWithPool;\n }\n\n if (params.poolNames && params.poolNames.length >= 1) {\n const allowedPoolNames = params.poolNames;\n return afterTransactionEvents.filter((event) =>\n allowedPoolNames.includes(event.poolName!),\n );\n }\n\n return afterTransactionEvents;\n}\n"]}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { PoolName } from "../../common/types.js";
|
|
2
|
+
import { AutoCompoundingEventNode, FetchAutoCompoundingEventsParams } from "./types.js";
|
|
3
|
+
export declare function fetchAutoCompoundingEvents(params: FetchAutoCompoundingEventsParams): Promise<AutoCompoundingEventNode[]>;
|
|
4
|
+
export declare function calculateAprForInvestor(events: AutoCompoundingEventNode[]): Promise<number>;
|
|
5
|
+
export declare function calculateAprForPools(events: AutoCompoundingEventNode[]): Promise<Record<PoolName, number>>;
|
|
6
|
+
//# sourceMappingURL=fetchAutoCompoundingEvents.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetchEvents.d.ts","sourceRoot":"","sources":["../../../../src/sui-sdk/events/fetchEvents.ts"],"names":[],"mappings":"AAEA,OAAO,EAKL,SAAS,EACT,iBAAiB,
|
|
1
|
+
{"version":3,"file":"fetchEvents.d.ts","sourceRoot":"","sources":["../../../../src/sui-sdk/events/fetchEvents.ts"],"names":[],"mappings":"AAEA,OAAO,EAKL,SAAS,EACT,iBAAiB,EAUlB,MAAM,YAAY,CAAC;AAIpB,wBAAsB,WAAW,CAC/B,MAAM,EAAE,iBAAiB,GACxB,OAAO,CAAC,SAAS,EAAE,CAAC,CAyRtB"}
|
|
@@ -139,7 +139,8 @@ export async function fetchEvents(params) {
|
|
|
139
139
|
else if (isLiquidityChangeEvent(suiEvent.type) &&
|
|
140
140
|
"amount" in suiEventJson &&
|
|
141
141
|
!("investor_id" in suiEventJson) &&
|
|
142
|
-
!("amount_withdrawn_from_locked" in suiEventJson)
|
|
142
|
+
!("amount_withdrawn_from_locked" in suiEventJson) &&
|
|
143
|
+
!("xtokenSupply" in suiEventJson)) {
|
|
143
144
|
// Handling NaviLiquidityChangeEvent and AlphaLiquidityChangeEvent
|
|
144
145
|
eventNode = {
|
|
145
146
|
type: suiEvent.type,
|
|
@@ -172,7 +173,60 @@ export async function fetchEvents(params) {
|
|
|
172
173
|
x_token_supply: suiEventJson.x_token_supply,
|
|
173
174
|
};
|
|
174
175
|
}
|
|
176
|
+
else if (isAfterTransactionEvent(suiEvent.type) &&
|
|
177
|
+
"tokensInvested" in suiEventJson &&
|
|
178
|
+
!("liquidity" in suiEventJson) &&
|
|
179
|
+
!("amount" in suiEventJson)) {
|
|
180
|
+
//handling alpha after transaction event
|
|
181
|
+
if (suiEvent.id.eventSeq === "0")
|
|
182
|
+
continue;
|
|
183
|
+
eventNode = {
|
|
184
|
+
type: suiEvent.type,
|
|
185
|
+
timestamp: Number(suiEvent.timestampMs),
|
|
186
|
+
poolName: "ALPHA",
|
|
187
|
+
id: {
|
|
188
|
+
eventSeq: Number(suiEvent.id.eventSeq),
|
|
189
|
+
txDigest: suiEvent.id.txDigest,
|
|
190
|
+
},
|
|
191
|
+
tokensInvested: suiEventJson.tokensInvested,
|
|
192
|
+
xTokenSupply: suiEventJson.xTokenSupply,
|
|
193
|
+
};
|
|
194
|
+
}
|
|
195
|
+
else if (isAfterTransactionEvent(suiEvent.type) &&
|
|
196
|
+
"tokensInvested" in suiEventJson &&
|
|
197
|
+
"liquidity" in suiEventJson) {
|
|
198
|
+
//handling cetus after transaction event
|
|
199
|
+
eventNode = {
|
|
200
|
+
type: suiEvent.type,
|
|
201
|
+
timestamp: Number(suiEvent.timestampMs),
|
|
202
|
+
poolName: undefined,
|
|
203
|
+
id: {
|
|
204
|
+
eventSeq: Number(suiEvent.id.eventSeq),
|
|
205
|
+
txDigest: suiEvent.id.txDigest,
|
|
206
|
+
},
|
|
207
|
+
tokensInvested: suiEventJson.tokensInvested,
|
|
208
|
+
xtokenSupply: suiEventJson.xtokenSupply,
|
|
209
|
+
liquidity: suiEventJson.liquidity,
|
|
210
|
+
};
|
|
211
|
+
}
|
|
212
|
+
else if (isAfterTransactionEvent(suiEvent.type) &&
|
|
213
|
+
"amount" in suiEventJson &&
|
|
214
|
+
"tokensInvested" in suiEventJson) {
|
|
215
|
+
eventNode = {
|
|
216
|
+
type: suiEvent.type,
|
|
217
|
+
timestamp: Number(suiEvent.timestampMs),
|
|
218
|
+
poolName: undefined,
|
|
219
|
+
id: {
|
|
220
|
+
eventSeq: Number(suiEvent.id.eventSeq),
|
|
221
|
+
txDigest: suiEvent.id.txDigest,
|
|
222
|
+
},
|
|
223
|
+
tokensInvested: suiEventJson.tokensInvested,
|
|
224
|
+
xtokenSupply: suiEventJson.xtokenSupply,
|
|
225
|
+
amount: suiEventJson.amount,
|
|
226
|
+
};
|
|
227
|
+
}
|
|
175
228
|
else {
|
|
229
|
+
console.error("event: ", suiEvent, "json: ", suiEventJson);
|
|
176
230
|
throw new Error("Unknown event type");
|
|
177
231
|
}
|
|
178
232
|
allEvents.push(eventNode);
|
|
@@ -211,7 +265,15 @@ const isLiquidityChangeEvent = (eventType) => {
|
|
|
211
265
|
const isWithdrawV2Event = (eventType) => {
|
|
212
266
|
const eventTypes = Object.values(poolInfo)
|
|
213
267
|
.map((info) => {
|
|
214
|
-
return info.
|
|
268
|
+
return info.withdrawV2EventType;
|
|
269
|
+
})
|
|
270
|
+
.filter((type) => type !== undefined);
|
|
271
|
+
return eventTypes.includes(eventType);
|
|
272
|
+
};
|
|
273
|
+
const isAfterTransactionEvent = (eventType) => {
|
|
274
|
+
const eventTypes = Object.values(poolInfo)
|
|
275
|
+
.map((info) => {
|
|
276
|
+
return info.afterTransactionEventType;
|
|
215
277
|
})
|
|
216
278
|
.filter((type) => type !== undefined);
|
|
217
279
|
return eventTypes.includes(eventType);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetchEvents.js","sourceRoot":"","sources":["../../../../src/sui-sdk/events/fetchEvents.ts"],"names":[],"mappings":"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","sourcesContent":["import { getSuiClient } from \"../client.js\";\nimport { EventId, PaginatedEvents } from \"@mysten/sui/client\";\nimport {\n AlphaLiquidityChangeEvent,\n AlphaAutoCompoundingEvent,\n CetusAutoCompoundingEvent,\n CetusLiquidityChangeEvent,\n EventNode,\n FetchEventsParams,\n LiquidityChangeEventNode,\n NaviAutoCompoundingEvent,\n NaviLoopAutoCompoundingEvent,\n NaviLiquidityChangeEvent,\n RebalanceEvent,\n AutoCompoundingEventNode,\n AlphaWithdrawV2Event,\n WithdrawV2EventNode,\n} from \"./types.js\";\nimport { poolInfo } from \"../../common/maps.js\";\nimport { conf, CONF_ENV } from \"../../common/constants.js\";\n\nexport async function fetchEvents(\n params: FetchEventsParams,\n): Promise<EventNode[]> {\n const allEvents: EventNode[] = [];\n let hasNextPage = true;\n let startCursor: EventId | null | undefined = null;\n\n if (params.eventTypes.length > 1) {\n console.warn(\n \"Multiple eventTypes not supported right now, pass only one element in the array.\",\n );\n }\n\n if (params.eventTypes.length < 1) {\n hasNextPage = false;\n }\n\n const now = Date.now();\n const twentyFourHoursAgo = now - 24 * 60 * 60 * 1000; // timestamp for 24 hours ago\n const startTime = params.startTime ? params.startTime : twentyFourHoursAgo;\n const endTime = params.endTime ? params.endTime : now;\n\n if (startTime >= endTime) {\n throw new Error(\"startTime must be less than endTime\");\n }\n\n const suiClient = getSuiClient();\n //const prevTS = 0;\n\n while (hasNextPage) {\n const result: PaginatedEvents = await suiClient.queryEvents({\n cursor: startCursor,\n order: \"descending\",\n query: {\n MoveEventType: params.eventTypes[0],\n },\n });\n\n const se = result.data;\n for (let i = 0; i < se.length; i++) {\n const suiEvent = se[i];\n\n if (Number(suiEvent.timestampMs) > endTime) {\n continue;\n }\n\n if (Number(suiEvent.timestampMs) < startTime) {\n hasNextPage = false; // Stop further pagination\n break; // Exit the loop\n }\n\n const suiEventJson = suiEvent.parsedJson as\n | CetusAutoCompoundingEvent\n | NaviAutoCompoundingEvent\n | NaviLoopAutoCompoundingEvent\n | RebalanceEvent\n | CetusLiquidityChangeEvent\n | AlphaLiquidityChangeEvent\n | NaviLiquidityChangeEvent\n | AlphaAutoCompoundingEvent\n | AlphaWithdrawV2Event;\n\n let eventNode: EventNode;\n\n if (\n isAutoCompoundingEvent(suiEvent.type) &&\n \"compound_amount_a\" in suiEventJson &&\n \"compound_amount_b\" in suiEventJson\n ) {\n // Handling CetusAutoCompoundingEvent\n eventNode = {\n type: suiEvent.type,\n timestamp: Number(suiEvent.timestampMs),\n compound_amount_a: BigInt(suiEventJson.compound_amount_a.toString()),\n compound_amount_b: BigInt(suiEventJson.compound_amount_b.toString()),\n current_liquidity: BigInt(suiEventJson.current_liquidity.toString()),\n fee_collected_a: BigInt(suiEventJson.fee_collected_a.toString()),\n fee_collected_b: BigInt(suiEventJson.fee_collected_b.toString()),\n free_balance_a: BigInt(suiEventJson.free_balance_a.toString()),\n free_balance_b: BigInt(suiEventJson.free_balance_b.toString()),\n investor_id: suiEventJson.investor_id,\n total_amount_a: BigInt(suiEventJson.total_amount_a.toString()),\n total_amount_b: BigInt(suiEventJson.total_amount_b.toString()),\n };\n\n // if (\n // eventNode.investor_id ===\n // \"0xd060e81548aee885bd3d37ae0caec181185be792bf45412e0d0acccd1e0174e6\"\n // ) {\n // console.log(\n // eventNode.timestamp,\n // (prevTS - eventNode.timestamp) / (1000 * 60),\n // );\n // prevTS = eventNode.timestamp;\n // }\n } else if (\n isAutoCompoundingEvent(suiEvent.type) &&\n \"compound_amount\" in suiEventJson\n ) {\n // Handling NaviAutoCompoundingEvent\n eventNode = {\n type: suiEvent.type,\n timestamp: Number(suiEvent.timestampMs),\n compound_amount: BigInt(suiEventJson.compound_amount.toString()),\n fee_collected: BigInt(suiEventJson.fee_collected.toString()),\n investor_id: suiEventJson.investor_id,\n location: suiEventJson.location,\n total_amount: BigInt(suiEventJson.total_amount.toString()),\n };\n if (\n \"cur_total_debt\" in suiEventJson &&\n \"accrued_interest\" in suiEventJson\n ) {\n const loopEvent: AutoCompoundingEventNode = {\n ...eventNode,\n cur_total_debt: BigInt(suiEventJson.cur_total_debt.toString()),\n accrued_interest: BigInt(suiEventJson.accrued_interest.toString()),\n };\n eventNode = loopEvent;\n }\n } else if (\n isAutoCompoundingEvent(suiEvent.type) &&\n \"amount\" in suiEventJson\n ) {\n eventNode = {\n type: suiEvent.type,\n timestamp: Number(suiEvent.timestampMs),\n amount: suiEventJson.amount,\n investor_id: conf[CONF_ENV].ALPHA_POOL,\n };\n } else if (\n isRebalanceEvent(suiEvent.type) &&\n \"lower_tick_after\" in suiEventJson\n ) {\n // Handling RebalanceEvent\n eventNode = {\n type: suiEvent.type,\n timestamp: Number(suiEvent.timestampMs),\n investor_id: suiEventJson.investor_id.toString(),\n lower_tick_after: suiEventJson.lower_tick_after.toString(),\n upper_tick_after: suiEventJson.upper_tick_after.toString(),\n sqrt_price_after: suiEventJson.sqrt_price_after.toString(),\n amount_a_before: suiEventJson.amount_a_before.toString(),\n amount_b_before: suiEventJson.amount_b_before.toString(),\n amount_a_after: suiEventJson.amount_a_after.toString(),\n amount_b_after: suiEventJson.amount_b_after.toString(),\n };\n } else if (\n isLiquidityChangeEvent(suiEvent.type) &&\n \"amount_a\" in suiEventJson\n ) {\n // Handling CetusLiquidityChangeEvent\n eventNode = {\n type: suiEvent.type,\n timestamp: Number(suiEvent.timestampMs),\n amount_a: suiEventJson.amount_a,\n amount_b: suiEventJson.amount_b,\n event_type: suiEventJson.event_type,\n fee_collected_a: suiEventJson.fee_collected_a,\n fee_collected_b: suiEventJson.fee_collected_b,\n pool_id: suiEventJson.pool_id,\n sender: suiEventJson.sender,\n tokens_invested: suiEventJson.tokens_invested,\n total_amount_a: suiEventJson.total_amount_a,\n total_amount_b: suiEventJson.total_amount_b,\n user_total_x_token_balance: suiEventJson.user_total_x_token_balance,\n x_token_supply: suiEventJson.x_token_supply,\n } as LiquidityChangeEventNode;\n } else if (\n isLiquidityChangeEvent(suiEvent.type) &&\n \"amount\" in suiEventJson &&\n !(\"investor_id\" in suiEventJson) &&\n !(\"amount_withdrawn_from_locked\" in suiEventJson)\n ) {\n // Handling NaviLiquidityChangeEvent and AlphaLiquidityChangeEvent\n eventNode = {\n type: suiEvent.type,\n timestamp: Number(suiEvent.timestampMs),\n amount: suiEventJson.amount,\n event_type: suiEventJson.event_type,\n fee_collected: suiEventJson.fee_collected,\n pool_id: suiEventJson.pool_id,\n sender: suiEventJson.sender,\n tokens_invested: suiEventJson.tokens_invested,\n user_total_x_token_balance: suiEventJson.user_total_x_token_balance,\n x_token_supply: suiEventJson.x_token_supply,\n } as LiquidityChangeEventNode;\n } else if (\n isWithdrawV2Event(suiEvent.type) &&\n \"amount_withdrawn_from_locked\" in suiEventJson\n ) {\n // Handling Alpha WithdrawV2 Events\n eventNode = {\n type: suiEvent.type,\n timestamp: Number(suiEvent.timestampMs),\n amount: suiEventJson.amount,\n amount_withdrawn_from_locked:\n suiEventJson.amount_withdrawn_from_locked,\n amount_withdrawn_from_unlocked:\n suiEventJson.amount_withdrawn_from_unlocked,\n fee_collected: suiEventJson.fee_collected,\n instant_withdraw_fee_collected:\n suiEventJson.instant_withdraw_fee_collected,\n pool_id: suiEventJson.pool_id,\n sender: suiEventJson.sender,\n tokens_invested: suiEventJson.tokens_invested,\n user_total_x_token_balance: suiEventJson.user_total_x_token_balance,\n x_token_supply: suiEventJson.x_token_supply,\n } as WithdrawV2EventNode;\n } else {\n throw new Error(\"Unknown event type\");\n }\n\n allEvents.push(eventNode);\n }\n\n // If we set hasPreviousPage to false, exit the outer loop as well\n if (!hasNextPage) {\n break;\n }\n\n hasNextPage = result.hasNextPage;\n startCursor = result.nextCursor;\n }\n\n return allEvents;\n}\n\nconst isAutoCompoundingEvent = (eventType: string) => {\n const eventTypes: string[] = Object.values(poolInfo).map((info) => {\n return info.autoCompoundingEventType;\n });\n return eventTypes.includes(eventType);\n};\n\nconst isRebalanceEvent = (eventType: string) => {\n const eventTypes: string[] = Object.values(poolInfo)\n .filter((info) => {\n return info.rebalanceEventType ? true : false;\n })\n .map((info) => {\n return info.rebalanceEventType as string;\n });\n return eventTypes.includes(eventType);\n};\n\nconst isLiquidityChangeEvent = (eventType: string) => {\n const eventTypes: string[] = Object.values(poolInfo).map((info) => {\n return info.liquidityChangeEventType;\n });\n return eventTypes.includes(eventType);\n};\n\nconst isWithdrawV2Event = (eventType: string) => {\n const eventTypes: string[] = Object.values(poolInfo)\n .map((info) => {\n return info.withdrawV2Event;\n })\n .filter((type) => type !== undefined);\n return eventTypes.includes(eventType);\n};\n"]}
|
|
1
|
+
{"version":3,"file":"fetchEvents.js","sourceRoot":"","sources":["../../../../src/sui-sdk/events/fetchEvents.ts"],"names":[],"mappings":"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","sourcesContent":["import { getSuiClient } from \"../client.js\";\nimport { EventId, PaginatedEvents } from \"@mysten/sui/client\";\nimport {\n AlphaLiquidityChangeEvent,\n AlphaAutoCompoundingEvent,\n CetusAutoCompoundingEvent,\n CetusLiquidityChangeEvent,\n EventNode,\n FetchEventsParams,\n LiquidityChangeEventNode,\n NaviAutoCompoundingEvent,\n NaviLoopAutoCompoundingEvent,\n NaviLiquidityChangeEvent,\n RebalanceEvent,\n AutoCompoundingEventNode,\n AlphaWithdrawV2Event,\n WithdrawV2EventNode,\n AfterTransactionEventNode,\n} from \"./types.js\";\nimport { poolInfo } from \"../../common/maps.js\";\nimport { conf, CONF_ENV } from \"../../common/constants.js\";\n\nexport async function fetchEvents(\n params: FetchEventsParams,\n): Promise<EventNode[]> {\n const allEvents: EventNode[] = [];\n let hasNextPage = true;\n let startCursor: EventId | null | undefined = null;\n\n if (params.eventTypes.length > 1) {\n console.warn(\n \"Multiple eventTypes not supported right now, pass only one element in the array.\",\n );\n }\n\n if (params.eventTypes.length < 1) {\n hasNextPage = false;\n }\n\n const now = Date.now();\n const twentyFourHoursAgo = now - 24 * 60 * 60 * 1000; // timestamp for 24 hours ago\n const startTime = params.startTime ? params.startTime : twentyFourHoursAgo;\n const endTime = params.endTime ? params.endTime : now;\n\n if (startTime >= endTime) {\n throw new Error(\"startTime must be less than endTime\");\n }\n\n const suiClient = getSuiClient();\n //const prevTS = 0;\n\n while (hasNextPage) {\n const result: PaginatedEvents = await suiClient.queryEvents({\n cursor: startCursor,\n order: \"descending\",\n query: {\n MoveEventType: params.eventTypes[0],\n },\n });\n\n const se = result.data;\n for (let i = 0; i < se.length; i++) {\n const suiEvent = se[i];\n\n if (Number(suiEvent.timestampMs) > endTime) {\n continue;\n }\n\n if (Number(suiEvent.timestampMs) < startTime) {\n hasNextPage = false; // Stop further pagination\n break; // Exit the loop\n }\n\n const suiEventJson = suiEvent.parsedJson as\n | CetusAutoCompoundingEvent\n | NaviAutoCompoundingEvent\n | NaviLoopAutoCompoundingEvent\n | RebalanceEvent\n | CetusLiquidityChangeEvent\n | AlphaLiquidityChangeEvent\n | NaviLiquidityChangeEvent\n | AlphaAutoCompoundingEvent\n | AlphaWithdrawV2Event\n | AfterTransactionEventNode;\n\n let eventNode: EventNode;\n\n if (\n isAutoCompoundingEvent(suiEvent.type) &&\n \"compound_amount_a\" in suiEventJson &&\n \"compound_amount_b\" in suiEventJson\n ) {\n // Handling CetusAutoCompoundingEvent\n eventNode = {\n type: suiEvent.type,\n timestamp: Number(suiEvent.timestampMs),\n compound_amount_a: BigInt(suiEventJson.compound_amount_a.toString()),\n compound_amount_b: BigInt(suiEventJson.compound_amount_b.toString()),\n current_liquidity: BigInt(suiEventJson.current_liquidity.toString()),\n fee_collected_a: BigInt(suiEventJson.fee_collected_a.toString()),\n fee_collected_b: BigInt(suiEventJson.fee_collected_b.toString()),\n free_balance_a: BigInt(suiEventJson.free_balance_a.toString()),\n free_balance_b: BigInt(suiEventJson.free_balance_b.toString()),\n investor_id: suiEventJson.investor_id,\n total_amount_a: BigInt(suiEventJson.total_amount_a.toString()),\n total_amount_b: BigInt(suiEventJson.total_amount_b.toString()),\n };\n\n // if (\n // eventNode.investor_id ===\n // \"0xd060e81548aee885bd3d37ae0caec181185be792bf45412e0d0acccd1e0174e6\"\n // ) {\n // console.log(\n // eventNode.timestamp,\n // (prevTS - eventNode.timestamp) / (1000 * 60),\n // );\n // prevTS = eventNode.timestamp;\n // }\n } else if (\n isAutoCompoundingEvent(suiEvent.type) &&\n \"compound_amount\" in suiEventJson\n ) {\n // Handling NaviAutoCompoundingEvent\n eventNode = {\n type: suiEvent.type,\n timestamp: Number(suiEvent.timestampMs),\n compound_amount: BigInt(suiEventJson.compound_amount.toString()),\n fee_collected: BigInt(suiEventJson.fee_collected.toString()),\n investor_id: suiEventJson.investor_id,\n location: suiEventJson.location,\n total_amount: BigInt(suiEventJson.total_amount.toString()),\n };\n if (\n \"cur_total_debt\" in suiEventJson &&\n \"accrued_interest\" in suiEventJson\n ) {\n const loopEvent: AutoCompoundingEventNode = {\n ...eventNode,\n cur_total_debt: BigInt(suiEventJson.cur_total_debt.toString()),\n accrued_interest: BigInt(suiEventJson.accrued_interest.toString()),\n };\n eventNode = loopEvent;\n }\n } else if (\n isAutoCompoundingEvent(suiEvent.type) &&\n \"amount\" in suiEventJson\n ) {\n eventNode = {\n type: suiEvent.type,\n timestamp: Number(suiEvent.timestampMs),\n amount: suiEventJson.amount,\n investor_id: conf[CONF_ENV].ALPHA_POOL,\n };\n } else if (\n isRebalanceEvent(suiEvent.type) &&\n \"lower_tick_after\" in suiEventJson\n ) {\n // Handling RebalanceEvent\n eventNode = {\n type: suiEvent.type,\n timestamp: Number(suiEvent.timestampMs),\n investor_id: suiEventJson.investor_id.toString(),\n lower_tick_after: suiEventJson.lower_tick_after.toString(),\n upper_tick_after: suiEventJson.upper_tick_after.toString(),\n sqrt_price_after: suiEventJson.sqrt_price_after.toString(),\n amount_a_before: suiEventJson.amount_a_before.toString(),\n amount_b_before: suiEventJson.amount_b_before.toString(),\n amount_a_after: suiEventJson.amount_a_after.toString(),\n amount_b_after: suiEventJson.amount_b_after.toString(),\n };\n } else if (\n isLiquidityChangeEvent(suiEvent.type) &&\n \"amount_a\" in suiEventJson\n ) {\n // Handling CetusLiquidityChangeEvent\n eventNode = {\n type: suiEvent.type,\n timestamp: Number(suiEvent.timestampMs),\n amount_a: suiEventJson.amount_a,\n amount_b: suiEventJson.amount_b,\n event_type: suiEventJson.event_type,\n fee_collected_a: suiEventJson.fee_collected_a,\n fee_collected_b: suiEventJson.fee_collected_b,\n pool_id: suiEventJson.pool_id,\n sender: suiEventJson.sender,\n tokens_invested: suiEventJson.tokens_invested,\n total_amount_a: suiEventJson.total_amount_a,\n total_amount_b: suiEventJson.total_amount_b,\n user_total_x_token_balance: suiEventJson.user_total_x_token_balance,\n x_token_supply: suiEventJson.x_token_supply,\n } as LiquidityChangeEventNode;\n } else if (\n isLiquidityChangeEvent(suiEvent.type) &&\n \"amount\" in suiEventJson &&\n !(\"investor_id\" in suiEventJson) &&\n !(\"amount_withdrawn_from_locked\" in suiEventJson) &&\n !(\"xtokenSupply\" in suiEventJson)\n ) {\n // Handling NaviLiquidityChangeEvent and AlphaLiquidityChangeEvent\n eventNode = {\n type: suiEvent.type,\n timestamp: Number(suiEvent.timestampMs),\n amount: suiEventJson.amount,\n event_type: suiEventJson.event_type,\n fee_collected: suiEventJson.fee_collected,\n pool_id: suiEventJson.pool_id,\n sender: suiEventJson.sender,\n tokens_invested: suiEventJson.tokens_invested,\n user_total_x_token_balance: suiEventJson.user_total_x_token_balance,\n x_token_supply: suiEventJson.x_token_supply,\n } as LiquidityChangeEventNode;\n } else if (\n isWithdrawV2Event(suiEvent.type) &&\n \"amount_withdrawn_from_locked\" in suiEventJson\n ) {\n // Handling Alpha WithdrawV2 Events\n eventNode = {\n type: suiEvent.type,\n timestamp: Number(suiEvent.timestampMs),\n amount: suiEventJson.amount,\n amount_withdrawn_from_locked:\n suiEventJson.amount_withdrawn_from_locked,\n amount_withdrawn_from_unlocked:\n suiEventJson.amount_withdrawn_from_unlocked,\n fee_collected: suiEventJson.fee_collected,\n instant_withdraw_fee_collected:\n suiEventJson.instant_withdraw_fee_collected,\n pool_id: suiEventJson.pool_id,\n sender: suiEventJson.sender,\n tokens_invested: suiEventJson.tokens_invested,\n user_total_x_token_balance: suiEventJson.user_total_x_token_balance,\n x_token_supply: suiEventJson.x_token_supply,\n } as WithdrawV2EventNode;\n } else if (\n isAfterTransactionEvent(suiEvent.type) &&\n \"tokensInvested\" in suiEventJson &&\n !(\"liquidity\" in suiEventJson) &&\n !(\"amount\" in suiEventJson)\n ) {\n //handling alpha after transaction event\n if (suiEvent.id.eventSeq === \"0\") continue;\n eventNode = {\n type: suiEvent.type,\n timestamp: Number(suiEvent.timestampMs),\n poolName: \"ALPHA\",\n id: {\n eventSeq: Number(suiEvent.id.eventSeq),\n txDigest: suiEvent.id.txDigest,\n },\n tokensInvested: suiEventJson.tokensInvested,\n xTokenSupply: suiEventJson.xTokenSupply,\n };\n } else if (\n isAfterTransactionEvent(suiEvent.type) &&\n \"tokensInvested\" in suiEventJson &&\n \"liquidity\" in suiEventJson\n ) {\n //handling cetus after transaction event\n eventNode = {\n type: suiEvent.type,\n timestamp: Number(suiEvent.timestampMs),\n poolName: undefined,\n id: {\n eventSeq: Number(suiEvent.id.eventSeq),\n txDigest: suiEvent.id.txDigest,\n },\n tokensInvested: suiEventJson.tokensInvested,\n xtokenSupply: suiEventJson.xtokenSupply,\n liquidity: suiEventJson.liquidity,\n };\n } else if (\n isAfterTransactionEvent(suiEvent.type) &&\n \"amount\" in suiEventJson &&\n \"tokensInvested\" in suiEventJson\n ) {\n eventNode = {\n type: suiEvent.type,\n timestamp: Number(suiEvent.timestampMs),\n poolName: undefined,\n id: {\n eventSeq: Number(suiEvent.id.eventSeq),\n txDigest: suiEvent.id.txDigest,\n },\n tokensInvested: suiEventJson.tokensInvested,\n xtokenSupply: suiEventJson.xtokenSupply,\n amount: suiEventJson.amount,\n };\n } else {\n console.error(\"event: \", suiEvent, \"json: \", suiEventJson);\n throw new Error(\"Unknown event type\");\n }\n\n allEvents.push(eventNode);\n }\n\n // If we set hasPreviousPage to false, exit the outer loop as well\n if (!hasNextPage) {\n break;\n }\n\n hasNextPage = result.hasNextPage;\n startCursor = result.nextCursor;\n }\n\n return allEvents;\n}\n\nconst isAutoCompoundingEvent = (eventType: string) => {\n const eventTypes: string[] = Object.values(poolInfo).map((info) => {\n return info.autoCompoundingEventType;\n });\n return eventTypes.includes(eventType);\n};\n\nconst isRebalanceEvent = (eventType: string) => {\n const eventTypes: string[] = Object.values(poolInfo)\n .filter((info) => {\n return info.rebalanceEventType ? true : false;\n })\n .map((info) => {\n return info.rebalanceEventType as string;\n });\n return eventTypes.includes(eventType);\n};\n\nconst isLiquidityChangeEvent = (eventType: string) => {\n const eventTypes: string[] = Object.values(poolInfo).map((info) => {\n return info.liquidityChangeEventType;\n });\n return eventTypes.includes(eventType);\n};\n\nconst isWithdrawV2Event = (eventType: string) => {\n const eventTypes: string[] = Object.values(poolInfo)\n .map((info) => {\n return info.withdrawV2EventType;\n })\n .filter((type) => type !== undefined);\n return eventTypes.includes(eventType);\n};\n\nconst isAfterTransactionEvent = (eventType: string) => {\n const eventTypes: string[] = Object.values(poolInfo)\n .map((info) => {\n return info.afterTransactionEventType;\n })\n .filter((type) => type !== undefined);\n return eventTypes.includes(eventType);\n};\n"]}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import { FetchLiquidityChangeEventsParams, LiquidityChangeEventNode } from "./types.js";
|
|
2
|
+
export declare function fetchLiquidityChangeEvents(params: FetchLiquidityChangeEventsParams): Promise<LiquidityChangeEventNode[]>;
|
|
3
|
+
//# sourceMappingURL=fetchLiquidityChangeEvents.d.ts.map
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { PoolName, RebalanceHistoryType } from "../../common/types.js";
|
|
2
|
+
import { FetchRebalanceEventsParams, RebalanceEventNode } from "./types.js";
|
|
3
|
+
export declare function fetchRebalanceEvents(params: FetchRebalanceEventsParams): Promise<RebalanceEventNode[]>;
|
|
4
|
+
export declare function calculateRebalanceHistoryFromEvents(events: RebalanceEventNode[]): Promise<Record<PoolName, RebalanceHistoryType[]>>;
|
|
5
|
+
//# sourceMappingURL=fetchRebalanceEvents.d.ts.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { poolInfo } from "../../common/maps.js";
|
|
2
2
|
import { fetchEvents } from "./fetchEvents.js";
|
|
3
3
|
export async function fetchWithdrawV2Events(params) {
|
|
4
|
-
const eventTypes = [poolInfo["ALPHA"].
|
|
4
|
+
const eventTypes = [poolInfo["ALPHA"].withdrawV2EventType];
|
|
5
5
|
const eventsPromises = eventTypes.map(async (eventType) => {
|
|
6
6
|
if (!eventType) {
|
|
7
7
|
console.error(`Event type not found: ${eventTypes}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetchWithdrawV2Events.js","sourceRoot":"","sources":["../../../../src/sui-sdk/events/fetchWithdrawV2Events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAG/C,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,MAAmC;IAEnC,MAAM,UAAU,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"fetchWithdrawV2Events.js","sourceRoot":"","sources":["../../../../src/sui-sdk/events/fetchWithdrawV2Events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAG/C,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,MAAmC;IAEnC,MAAM,UAAU,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,mBAAmB,CAAC,CAAC;IAC3D,MAAM,cAAc,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE;QACxD,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,yBAAyB,UAAU,EAAE,CAAC,CAAC;YACrD,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAC5C,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC;YAC/B,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,UAAU,EAAE,CAAC,SAAS,CAAC;SACxB,CAAC,CAAC;QACH,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC1D,MAAM,oBAAoB,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QAC5C,OAAO,CAAwB,CAAC;IAClC,CAAC,CAAC,CAAC;IAEH,OAAO,oBAAoB,CAAC;AAC9B,CAAC","sourcesContent":["import { poolInfo } from \"../../common/maps.js\";\nimport { fetchEvents } from \"./fetchEvents.js\";\nimport { FetchWithdrawV2EventsParams, WithdrawV2EventNode } from \"./types.js\";\n\nexport async function fetchWithdrawV2Events(\n params: FetchWithdrawV2EventsParams,\n): Promise<WithdrawV2EventNode[]> {\n const eventTypes = [poolInfo[\"ALPHA\"].withdrawV2EventType];\n const eventsPromises = eventTypes.map(async (eventType) => {\n if (!eventType) {\n console.error(`Event type not found: ${eventTypes}`);\n throw new Error(\"Incomplete Event Types\");\n }\n const events = await fetchEvents({\n startTime: params.startTime,\n endTime: params.endTime,\n eventTypes: [eventType],\n });\n return events;\n });\n const events = (await Promise.all(eventsPromises)).flat();\n const withdrawV2EventNodes = events.map((e) => {\n return e as WithdrawV2EventNode;\n });\n\n return withdrawV2EventNodes;\n}\n"]}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { LiquidityChangeEventNode } from "./types.js";
|
|
2
|
+
export declare function parseHoldersFromLCEvents(events: LiquidityChangeEventNode[]): string[];
|
|
3
|
+
export declare function parseXTokensFromLCEvent(events: LiquidityChangeEventNode[]): [string, string, string][];
|
|
4
|
+
//# sourceMappingURL=parseData.d.ts.map
|
|
@@ -0,0 +1,183 @@
|
|
|
1
|
+
import { PoolName } from "../../common/types.js";
|
|
2
|
+
interface CommonEventAttributes {
|
|
3
|
+
type: string;
|
|
4
|
+
timestamp: number;
|
|
5
|
+
}
|
|
6
|
+
export interface CetusAutoCompoundingEvent {
|
|
7
|
+
compound_amount_a: bigint;
|
|
8
|
+
compound_amount_b: bigint;
|
|
9
|
+
current_liquidity: bigint;
|
|
10
|
+
fee_collected_a: bigint;
|
|
11
|
+
fee_collected_b: bigint;
|
|
12
|
+
free_balance_a: bigint;
|
|
13
|
+
free_balance_b: bigint;
|
|
14
|
+
investor_id: string;
|
|
15
|
+
total_amount_a: bigint;
|
|
16
|
+
total_amount_b: bigint;
|
|
17
|
+
}
|
|
18
|
+
export interface NaviAutoCompoundingEvent {
|
|
19
|
+
compound_amount: bigint;
|
|
20
|
+
fee_collected: bigint;
|
|
21
|
+
investor_id: string;
|
|
22
|
+
location: number;
|
|
23
|
+
total_amount: bigint;
|
|
24
|
+
}
|
|
25
|
+
export interface NaviLoopAutoCompoundingEvent extends NaviAutoCompoundingEvent {
|
|
26
|
+
cur_total_debt: bigint;
|
|
27
|
+
accrued_interest: bigint;
|
|
28
|
+
}
|
|
29
|
+
export interface RebalanceEvent {
|
|
30
|
+
investor_id: string;
|
|
31
|
+
lower_tick_after: string;
|
|
32
|
+
upper_tick_after: string;
|
|
33
|
+
sqrt_price_after: string;
|
|
34
|
+
amount_a_before: string;
|
|
35
|
+
amount_b_before: string;
|
|
36
|
+
amount_a_after: string;
|
|
37
|
+
amount_b_after: string;
|
|
38
|
+
}
|
|
39
|
+
export interface AlphaAutoCompoundingEvent {
|
|
40
|
+
amount: string;
|
|
41
|
+
investor_id: string;
|
|
42
|
+
}
|
|
43
|
+
export interface CetusLiquidityChangeEvent {
|
|
44
|
+
amount_a: string;
|
|
45
|
+
amount_b: string;
|
|
46
|
+
event_type: number;
|
|
47
|
+
fee_collected_a: string;
|
|
48
|
+
fee_collected_b: string;
|
|
49
|
+
pool_id: string;
|
|
50
|
+
sender: string;
|
|
51
|
+
tokens_invested: string;
|
|
52
|
+
total_amount_a: string;
|
|
53
|
+
total_amount_b: string;
|
|
54
|
+
user_total_x_token_balance: string;
|
|
55
|
+
x_token_supply: string;
|
|
56
|
+
}
|
|
57
|
+
export interface NaviLiquidityChangeEvent {
|
|
58
|
+
amount: string;
|
|
59
|
+
event_type: number;
|
|
60
|
+
fee_collected: string;
|
|
61
|
+
pool_id: string;
|
|
62
|
+
sender: string;
|
|
63
|
+
tokens_invested: string;
|
|
64
|
+
user_total_x_token_balance: string;
|
|
65
|
+
x_token_supply: string;
|
|
66
|
+
}
|
|
67
|
+
export interface AlphaLiquidityChangeEvent {
|
|
68
|
+
amount: string;
|
|
69
|
+
event_type: number;
|
|
70
|
+
fee_collected: string;
|
|
71
|
+
pool_id: string;
|
|
72
|
+
sender: string;
|
|
73
|
+
tokens_invested: string;
|
|
74
|
+
user_total_x_token_balance: string;
|
|
75
|
+
x_token_supply: string;
|
|
76
|
+
}
|
|
77
|
+
export interface AlphaWithdrawV2Event {
|
|
78
|
+
amount: string;
|
|
79
|
+
amount_withdrawn_from_locked: string;
|
|
80
|
+
amount_withdrawn_from_unlocked: string;
|
|
81
|
+
fee_collected: string;
|
|
82
|
+
instant_withdraw_fee_collected: string;
|
|
83
|
+
pool_id: string;
|
|
84
|
+
sender: string;
|
|
85
|
+
tokens_invested: string;
|
|
86
|
+
user_total_x_token_balance: string;
|
|
87
|
+
x_token_supply: string;
|
|
88
|
+
}
|
|
89
|
+
export interface CetusAfterTransactionEvent {
|
|
90
|
+
liquidity: string;
|
|
91
|
+
tokensInvested: string;
|
|
92
|
+
xtokenSupply: string;
|
|
93
|
+
}
|
|
94
|
+
export interface NaviAfterTransactionEvent {
|
|
95
|
+
amount: string;
|
|
96
|
+
tokensInvested: string;
|
|
97
|
+
xtokenSupply: string;
|
|
98
|
+
}
|
|
99
|
+
export interface AlphaBeforeAndAfterEvent {
|
|
100
|
+
tokensInvested: string;
|
|
101
|
+
xTokenSupply: string;
|
|
102
|
+
}
|
|
103
|
+
export type CetusAddLiquidityEvent = {
|
|
104
|
+
after_liquidity: string;
|
|
105
|
+
amount_a: string;
|
|
106
|
+
amount_b: string;
|
|
107
|
+
liquidity: string;
|
|
108
|
+
pool: string;
|
|
109
|
+
position: string;
|
|
110
|
+
tick_lower: {
|
|
111
|
+
bits: number;
|
|
112
|
+
};
|
|
113
|
+
tick_upper: {
|
|
114
|
+
bits: number;
|
|
115
|
+
};
|
|
116
|
+
};
|
|
117
|
+
export type CetusRemoveLiquidityEvent = {
|
|
118
|
+
after_liquidity: string;
|
|
119
|
+
amount_a: string;
|
|
120
|
+
amount_b: string;
|
|
121
|
+
liquidity: string;
|
|
122
|
+
pool: string;
|
|
123
|
+
position: string;
|
|
124
|
+
tick_lower: {
|
|
125
|
+
bits: number;
|
|
126
|
+
};
|
|
127
|
+
tick_upper: {
|
|
128
|
+
bits: number;
|
|
129
|
+
};
|
|
130
|
+
};
|
|
131
|
+
export type NaviPoolDepositEvent = {
|
|
132
|
+
amount: string;
|
|
133
|
+
pool: string;
|
|
134
|
+
sender: string;
|
|
135
|
+
};
|
|
136
|
+
export type NaviPoolWithdrawEvent = {
|
|
137
|
+
amount: string;
|
|
138
|
+
pool: string;
|
|
139
|
+
recipient: string;
|
|
140
|
+
sender: string;
|
|
141
|
+
};
|
|
142
|
+
export type AfterTransactionEventNode = (CetusAfterTransactionEvent & CommonEventAttributes & {
|
|
143
|
+
poolName: PoolName | undefined;
|
|
144
|
+
id: {
|
|
145
|
+
eventSeq: number;
|
|
146
|
+
txDigest: string;
|
|
147
|
+
};
|
|
148
|
+
}) | (NaviAfterTransactionEvent & CommonEventAttributes & {
|
|
149
|
+
poolName: PoolName | undefined;
|
|
150
|
+
id: {
|
|
151
|
+
eventSeq: number;
|
|
152
|
+
txDigest: string;
|
|
153
|
+
};
|
|
154
|
+
}) | (AlphaBeforeAndAfterEvent & CommonEventAttributes & {
|
|
155
|
+
poolName: PoolName | undefined;
|
|
156
|
+
id: {
|
|
157
|
+
eventSeq: number;
|
|
158
|
+
txDigest: string;
|
|
159
|
+
};
|
|
160
|
+
});
|
|
161
|
+
export type AutoCompoundingEventNode = (CetusAutoCompoundingEvent & CommonEventAttributes) | (NaviAutoCompoundingEvent & CommonEventAttributes) | (NaviLoopAutoCompoundingEvent & CommonEventAttributes) | (AlphaAutoCompoundingEvent & CommonEventAttributes);
|
|
162
|
+
export type RebalanceEventNode = RebalanceEvent & CommonEventAttributes;
|
|
163
|
+
export type LiquidityChangeEventNode = (CetusLiquidityChangeEvent & CommonEventAttributes) | (NaviLiquidityChangeEvent & CommonEventAttributes) | (AlphaLiquidityChangeEvent & CommonEventAttributes);
|
|
164
|
+
export type WithdrawV2EventNode = AlphaWithdrawV2Event & CommonEventAttributes;
|
|
165
|
+
export type EventNode = AutoCompoundingEventNode | RebalanceEventNode | LiquidityChangeEventNode | WithdrawV2EventNode | AfterTransactionEventNode;
|
|
166
|
+
export type FetchAutoCompoundingEventsParams = {
|
|
167
|
+
startTime?: number;
|
|
168
|
+
endTime?: number;
|
|
169
|
+
poolNames?: PoolName[];
|
|
170
|
+
};
|
|
171
|
+
export type FetchRebalanceEventsParams = FetchAutoCompoundingEventsParams;
|
|
172
|
+
export type FetchLiquidityChangeEventsParams = FetchAutoCompoundingEventsParams;
|
|
173
|
+
export type FetchWithdrawV2EventsParams = {
|
|
174
|
+
startTime?: number;
|
|
175
|
+
endTime?: number;
|
|
176
|
+
};
|
|
177
|
+
export type FetchEventsParams = {
|
|
178
|
+
eventTypes: string[];
|
|
179
|
+
startTime?: number;
|
|
180
|
+
endTime?: number;
|
|
181
|
+
};
|
|
182
|
+
export {};
|
|
183
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/sui-sdk/events/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/sui-sdk/events/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/sui-sdk/events/types.ts"],"names":[],"mappings":"","sourcesContent":["import { PoolName } from \"../../common/types.js\";\n\ninterface CommonEventAttributes {\n type: string;\n timestamp: number;\n}\n\nexport interface CetusAutoCompoundingEvent {\n compound_amount_a: bigint;\n compound_amount_b: bigint;\n current_liquidity: bigint;\n fee_collected_a: bigint;\n fee_collected_b: bigint;\n free_balance_a: bigint;\n free_balance_b: bigint;\n investor_id: string;\n total_amount_a: bigint;\n total_amount_b: bigint;\n}\n\nexport interface NaviAutoCompoundingEvent {\n compound_amount: bigint;\n fee_collected: bigint;\n investor_id: string;\n location: number;\n total_amount: bigint;\n}\n\nexport interface NaviLoopAutoCompoundingEvent extends NaviAutoCompoundingEvent {\n cur_total_debt: bigint;\n accrued_interest: bigint;\n}\n\nexport interface RebalanceEvent {\n investor_id: string;\n lower_tick_after: string;\n upper_tick_after: string;\n sqrt_price_after: string;\n amount_a_before: string;\n amount_b_before: string;\n amount_a_after: string;\n amount_b_after: string;\n}\n\n//verify, this might be wrong, alphapool reward event is defined as alpha autocompounding event\nexport interface AlphaAutoCompoundingEvent {\n amount: string;\n investor_id: string;\n}\n\nexport interface CetusLiquidityChangeEvent {\n amount_a: string;\n amount_b: string;\n event_type: number;\n fee_collected_a: string;\n fee_collected_b: string;\n pool_id: string;\n sender: string;\n tokens_invested: string;\n total_amount_a: string;\n total_amount_b: string;\n user_total_x_token_balance: string;\n x_token_supply: string;\n}\n\nexport interface NaviLiquidityChangeEvent {\n amount: string;\n event_type: number;\n fee_collected: string;\n pool_id: string;\n sender: string;\n tokens_invested: string;\n user_total_x_token_balance: string;\n x_token_supply: string;\n}\n\nexport interface AlphaLiquidityChangeEvent {\n amount: string;\n event_type: number;\n fee_collected: string;\n pool_id: string;\n sender: string;\n tokens_invested: string;\n user_total_x_token_balance: string;\n x_token_supply: string;\n}\n\nexport interface AlphaWithdrawV2Event {\n amount: string;\n amount_withdrawn_from_locked: string;\n amount_withdrawn_from_unlocked: string;\n fee_collected: string;\n instant_withdraw_fee_collected: string;\n pool_id: string;\n sender: string;\n tokens_invested: string;\n user_total_x_token_balance: string;\n x_token_supply: string;\n}\n\nexport type AutoCompoundingEventNode =\n | (CetusAutoCompoundingEvent & CommonEventAttributes)\n | (NaviAutoCompoundingEvent & CommonEventAttributes)\n | (NaviLoopAutoCompoundingEvent & CommonEventAttributes)\n | (AlphaAutoCompoundingEvent & CommonEventAttributes);\n\nexport type RebalanceEventNode = RebalanceEvent & CommonEventAttributes;\n\nexport type LiquidityChangeEventNode =\n | (CetusLiquidityChangeEvent & CommonEventAttributes)\n | (NaviLiquidityChangeEvent & CommonEventAttributes)\n | (AlphaLiquidityChangeEvent & CommonEventAttributes);\n\nexport type WithdrawV2EventNode = AlphaWithdrawV2Event & CommonEventAttributes;\n\nexport type EventNode =\n | AutoCompoundingEventNode\n | RebalanceEventNode\n | LiquidityChangeEventNode\n | WithdrawV2EventNode;\n\nexport type FetchAutoCompoundingEventsParams = {\n startTime?: number;\n endTime?: number;\n poolNames?: PoolName[];\n};\n\nexport type FetchRebalanceEventsParams = FetchAutoCompoundingEventsParams;\n\nexport type FetchLiquidityChangeEventsParams = FetchAutoCompoundingEventsParams;\n\nexport type FetchWithdrawV2EventsParams = {\n startTime?: number;\n endTime?: number;\n};\n\nexport type FetchEventsParams = {\n eventTypes: string[];\n startTime?: number;\n endTime?: number;\n};\n"]}
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/sui-sdk/events/types.ts"],"names":[],"mappings":"","sourcesContent":["import { PoolName } from \"../../common/types.js\";\n\ninterface CommonEventAttributes {\n type: string;\n timestamp: number;\n}\n\nexport interface CetusAutoCompoundingEvent {\n compound_amount_a: bigint;\n compound_amount_b: bigint;\n current_liquidity: bigint;\n fee_collected_a: bigint;\n fee_collected_b: bigint;\n free_balance_a: bigint;\n free_balance_b: bigint;\n investor_id: string;\n total_amount_a: bigint;\n total_amount_b: bigint;\n}\n\nexport interface NaviAutoCompoundingEvent {\n compound_amount: bigint;\n fee_collected: bigint;\n investor_id: string;\n location: number;\n total_amount: bigint;\n}\n\nexport interface NaviLoopAutoCompoundingEvent extends NaviAutoCompoundingEvent {\n cur_total_debt: bigint;\n accrued_interest: bigint;\n}\n\nexport interface RebalanceEvent {\n investor_id: string;\n lower_tick_after: string;\n upper_tick_after: string;\n sqrt_price_after: string;\n amount_a_before: string;\n amount_b_before: string;\n amount_a_after: string;\n amount_b_after: string;\n}\n\n//verify, this might be wrong, alphapool reward event is defined as alpha autocompounding event\nexport interface AlphaAutoCompoundingEvent {\n amount: string;\n investor_id: string;\n}\n\nexport interface CetusLiquidityChangeEvent {\n amount_a: string;\n amount_b: string;\n event_type: number;\n fee_collected_a: string;\n fee_collected_b: string;\n pool_id: string;\n sender: string;\n tokens_invested: string;\n total_amount_a: string;\n total_amount_b: string;\n user_total_x_token_balance: string;\n x_token_supply: string;\n}\n\nexport interface NaviLiquidityChangeEvent {\n amount: string;\n event_type: number;\n fee_collected: string;\n pool_id: string;\n sender: string;\n tokens_invested: string;\n user_total_x_token_balance: string;\n x_token_supply: string;\n}\n\nexport interface AlphaLiquidityChangeEvent {\n amount: string;\n event_type: number;\n fee_collected: string;\n pool_id: string;\n sender: string;\n tokens_invested: string;\n user_total_x_token_balance: string;\n x_token_supply: string;\n}\n\nexport interface AlphaWithdrawV2Event {\n amount: string;\n amount_withdrawn_from_locked: string;\n amount_withdrawn_from_unlocked: string;\n fee_collected: string;\n instant_withdraw_fee_collected: string;\n pool_id: string;\n sender: string;\n tokens_invested: string;\n user_total_x_token_balance: string;\n x_token_supply: string;\n}\n\nexport interface CetusAfterTransactionEvent {\n liquidity: string;\n tokensInvested: string;\n xtokenSupply: string;\n}\nexport interface NaviAfterTransactionEvent {\n amount: string;\n tokensInvested: string;\n xtokenSupply: string;\n}\n\n// only event sequence non zero are after transaction\nexport interface AlphaBeforeAndAfterEvent {\n tokensInvested: string;\n xTokenSupply: string;\n}\n\nexport type CetusAddLiquidityEvent = {\n after_liquidity: string;\n amount_a: string;\n amount_b: string;\n liquidity: string;\n pool: string;\n position: string;\n tick_lower: { bits: number };\n tick_upper: { bits: number };\n};\nexport type CetusRemoveLiquidityEvent = {\n after_liquidity: string;\n amount_a: string;\n amount_b: string;\n liquidity: string;\n pool: string;\n position: string;\n tick_lower: { bits: number };\n tick_upper: { bits: number };\n};\n\nexport type NaviPoolDepositEvent = {\n amount: string;\n pool: string;\n sender: string;\n};\nexport type NaviPoolWithdrawEvent = {\n amount: string;\n pool: string;\n recipient: string;\n sender: string;\n};\n\nexport type AfterTransactionEventNode =\n | (CetusAfterTransactionEvent &\n CommonEventAttributes & {\n poolName: PoolName | undefined;\n id: { eventSeq: number; txDigest: string };\n })\n | (NaviAfterTransactionEvent &\n CommonEventAttributes & {\n poolName: PoolName | undefined;\n id: { eventSeq: number; txDigest: string };\n })\n | (AlphaBeforeAndAfterEvent &\n CommonEventAttributes & {\n poolName: PoolName | undefined;\n id: { eventSeq: number; txDigest: string };\n });\n\nexport type AutoCompoundingEventNode =\n | (CetusAutoCompoundingEvent & CommonEventAttributes)\n | (NaviAutoCompoundingEvent & CommonEventAttributes)\n | (NaviLoopAutoCompoundingEvent & CommonEventAttributes)\n | (AlphaAutoCompoundingEvent & CommonEventAttributes);\n\nexport type RebalanceEventNode = RebalanceEvent & CommonEventAttributes;\n\nexport type LiquidityChangeEventNode =\n | (CetusLiquidityChangeEvent & CommonEventAttributes)\n | (NaviLiquidityChangeEvent & CommonEventAttributes)\n | (AlphaLiquidityChangeEvent & CommonEventAttributes);\n\nexport type WithdrawV2EventNode = AlphaWithdrawV2Event & CommonEventAttributes;\n\nexport type EventNode =\n | AutoCompoundingEventNode\n | RebalanceEventNode\n | LiquidityChangeEventNode\n | WithdrawV2EventNode\n | AfterTransactionEventNode;\n\nexport type FetchAutoCompoundingEventsParams = {\n startTime?: number;\n endTime?: number;\n poolNames?: PoolName[];\n};\n\nexport type FetchRebalanceEventsParams = FetchAutoCompoundingEventsParams;\n\nexport type FetchLiquidityChangeEventsParams = FetchAutoCompoundingEventsParams;\n\nexport type FetchWithdrawV2EventsParams = {\n startTime?: number;\n endTime?: number;\n};\n\nexport type FetchEventsParams = {\n eventTypes: string[];\n startTime?: number;\n endTime?: number;\n};\n"]}
|