@stake-dao/reader 0.4.58 → 0.4.59
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/esm/bytecodes/votemarket/batchUserVotes.js +39 -0
- package/dist/esm/bytecodes/votemarket/batchUserVotes.js.map +1 -0
- package/dist/esm/index.js +4 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/tsconfig.build.tsbuildinfo +1 -1
- package/dist/esm/votemarket/balancer/fetchBalancerUserVotes.js +42 -0
- package/dist/esm/votemarket/balancer/fetchBalancerUserVotes.js.map +1 -0
- package/dist/esm/votemarket/curve/fetchCurveUserVotes.js +8 -3
- package/dist/esm/votemarket/curve/fetchCurveUserVotes.js.map +1 -1
- package/dist/esm/votemarket/fetchCampaigns/index.js +1 -0
- package/dist/esm/votemarket/fetchCampaigns/index.js.map +1 -1
- package/dist/esm/votemarket/fetchCampaigns/pendingRemote.js +5 -1
- package/dist/esm/votemarket/fetchCampaigns/pendingRemote.js.map +1 -1
- package/dist/esm/votemarket/fetchCampaigns/processRawCampaigns.js +2 -2
- package/dist/esm/votemarket/fetchCampaigns/processRawCampaigns.js.map +1 -1
- package/dist/esm/votemarket/fxn/fetchFxnUserVotes.js +42 -0
- package/dist/esm/votemarket/fxn/fetchFxnUserVotes.js.map +1 -0
- package/dist/types/bytecodes/votemarket/batchUserVotes.d.ts +4 -0
- package/dist/types/bytecodes/votemarket/batchUserVotes.d.ts.map +1 -0
- package/dist/types/index.d.ts +2 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/votemarket/balancer/fetchBalancerUserVotes.d.ts +16 -0
- package/dist/types/votemarket/balancer/fetchBalancerUserVotes.d.ts.map +1 -0
- package/dist/types/votemarket/curve/fetchCurveUserVotes.d.ts.map +1 -1
- package/dist/types/votemarket/fetchCampaigns/index.d.ts.map +1 -1
- package/dist/types/votemarket/fetchCampaigns/pendingRemote.d.ts +2 -1
- package/dist/types/votemarket/fetchCampaigns/pendingRemote.d.ts.map +1 -1
- package/dist/types/votemarket/fxn/fetchFxnUserVotes.d.ts +16 -0
- package/dist/types/votemarket/fxn/fetchFxnUserVotes.d.ts.map +1 -0
- package/package.json +2 -2
- package/src/bytecodes/votemarket/batchUserVotes.ts +41 -0
- package/src/index.ts +6 -0
- package/src/votemarket/balancer/fetchBalancerUserVotes.ts +61 -0
- package/src/votemarket/curve/fetchCurveUserVotes.ts +9 -4
- package/src/votemarket/fetchCampaigns/index.ts +1 -0
- package/src/votemarket/fetchCampaigns/pendingRemote.ts +6 -0
- package/src/votemarket/fetchCampaigns/processRawCampaigns.ts +2 -2
- package/src/votemarket/fxn/fetchFxnUserVotes.ts +61 -0
- package/dist/esm/bytecodes/votemarket/curve/batchCurveUserVotes.js +0 -39
- package/dist/esm/bytecodes/votemarket/curve/batchCurveUserVotes.js.map +0 -1
- package/dist/types/bytecodes/votemarket/curve/batchCurveUserVotes.d.ts +0 -4
- package/dist/types/bytecodes/votemarket/curve/batchCurveUserVotes.d.ts.map +0 -1
- package/src/bytecodes/votemarket/curve/batchCurveUserVotes.ts +0 -41
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { contracts } from '@stake-dao/constants';
|
|
2
|
+
import { encodeAbiParameters, formatUnits, parseAbiParameters, zeroAddress } from 'viem';
|
|
3
|
+
import { mainnet } from 'viem/chains';
|
|
4
|
+
import batchUserVotes from '../../bytecodes/votemarket/batchUserVotes.js';
|
|
5
|
+
import { concatBytecode } from '../../index.js';
|
|
6
|
+
import { batchJsonRpc, equalTlc } from '../../utils.js';
|
|
7
|
+
export const fetchBalancerUserVotes = async (rpc, user) => {
|
|
8
|
+
const calls = [
|
|
9
|
+
concatBytecode(batchUserVotes.bytecode[mainnet.id], encodeAbiParameters(parseAbiParameters(batchUserVotes.inputType[mainnet.id]), [
|
|
10
|
+
user,
|
|
11
|
+
contracts.balancerGaugeController[1],
|
|
12
|
+
contracts.veBal[1],
|
|
13
|
+
])),
|
|
14
|
+
];
|
|
15
|
+
const rawVotes = await batchJsonRpc({
|
|
16
|
+
rpc,
|
|
17
|
+
calls,
|
|
18
|
+
outputTypeAbi: batchUserVotes.outputType[mainnet.id],
|
|
19
|
+
parse: false,
|
|
20
|
+
callsKey: `votemarket/balancer/fetchBalancerUserVotes.ts: rawGauges - chainId ${mainnet.id} - rpc ${rpc}`,
|
|
21
|
+
});
|
|
22
|
+
const veBalance = rawVotes[0].veBalance;
|
|
23
|
+
const votes = rawVotes[0].votes
|
|
24
|
+
.filter((rv) => !equalTlc(rv.gauge, zeroAddress))
|
|
25
|
+
.map((v) => ({
|
|
26
|
+
gauge: v.gauge,
|
|
27
|
+
slope: formatUnits(v.slope, 0),
|
|
28
|
+
relativeWeight: Number(v.power) / 100,
|
|
29
|
+
weight: formatUnits((veBalance * BigInt(v.power)) / BigInt(10000), 18),
|
|
30
|
+
start: Number(v.start),
|
|
31
|
+
end: Number(v.end),
|
|
32
|
+
}));
|
|
33
|
+
const unusedRelativeWeight = 10000 - votes.reduce((total, x) => total + x.relativeWeight * 100, 0);
|
|
34
|
+
const unusedVeBalance = (veBalance * BigInt(unusedRelativeWeight)) / BigInt(10000);
|
|
35
|
+
return {
|
|
36
|
+
veBalance: formatUnits(veBalance, 18),
|
|
37
|
+
unusedVeBalance: formatUnits(unusedVeBalance, 18),
|
|
38
|
+
unusedRelativeWeight: unusedRelativeWeight / 100,
|
|
39
|
+
votes,
|
|
40
|
+
};
|
|
41
|
+
};
|
|
42
|
+
//# sourceMappingURL=fetchBalancerUserVotes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetchBalancerUserVotes.js","sourceRoot":"","sources":["../../../../src/votemarket/balancer/fetchBalancerUserVotes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAChD,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,MAAM,CAAA;AACxF,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AACrC,OAAO,cAAc,MAAM,8CAA8C,CAAA;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAC/C,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAavD,MAAM,CAAC,MAAM,sBAAsB,GAAG,KAAK,EAAE,GAAW,EAAE,IAAY,EAA2B,EAAE;IACjG,MAAM,KAAK,GAAG;QACZ,cAAc,CACZ,cAAc,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAE,EACpC,mBAAmB,CAAC,kBAAkB,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAE,CAAQ,EAAE;YACpF,IAAI;YACJ,SAAS,CAAC,uBAAwB,CAAC,CAAC,CAAE;YACtC,SAAS,CAAC,KAAM,CAAC,CAAC,CAAC;SACpB,CAAC,CACH;KACF,CAAA;IAED,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC;QAClC,GAAG;QACH,KAAK;QACL,aAAa,EAAE,cAAc,CAAC,UAAW,CAAC,OAAO,CAAC,EAAE,CAAC;QACrD,KAAK,EAAE,KAAK;QACZ,QAAQ,EAAE,sEAAsE,OAAO,CAAC,EAAE,UAAU,GAAG,EAAE;KAC1G,CAAC,CAAA;IAEF,MAAM,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAEvC,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK;SAC5B,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;SAChD,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACX,KAAK,EAAE,CAAC,CAAC,KAAK;QACd,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;QAC9B,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,GAAG;QACrC,MAAM,EAAE,WAAW,CAAC,CAAC,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;QACtE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;QACtB,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC;KACnB,CAAC,CAAC,CAAA;IAEL,MAAM,oBAAoB,GAAG,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,KAAK,GAAG,CAAC,CAAC,cAAc,GAAG,GAAG,EAAE,CAAC,CAAC,CAAA;IAClG,MAAM,eAAe,GAAG,CAAC,SAAS,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;IAElF,OAAO;QACL,SAAS,EAAE,WAAW,CAAC,SAAS,EAAE,EAAE,CAAC;QACrC,eAAe,EAAE,WAAW,CAAC,eAAe,EAAE,EAAE,CAAC;QACjD,oBAAoB,EAAE,oBAAoB,GAAG,GAAG;QAChD,KAAK;KACN,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -1,16 +1,21 @@
|
|
|
1
|
+
import { contracts } from '@stake-dao/constants';
|
|
1
2
|
import { encodeAbiParameters, formatUnits, parseAbiParameters, zeroAddress } from 'viem';
|
|
2
3
|
import { mainnet } from 'viem/chains';
|
|
3
|
-
import
|
|
4
|
+
import batchUserVotes from '../../bytecodes/votemarket/batchUserVotes.js';
|
|
4
5
|
import { concatBytecode } from '../../index.js';
|
|
5
6
|
import { batchJsonRpc, equalTlc } from '../../utils.js';
|
|
6
7
|
export const fetchCurveUserVotes = async (rpc, user) => {
|
|
7
8
|
const calls = [
|
|
8
|
-
concatBytecode(
|
|
9
|
+
concatBytecode(batchUserVotes.bytecode[mainnet.id], encodeAbiParameters(parseAbiParameters(batchUserVotes.inputType[mainnet.id]), [
|
|
10
|
+
user,
|
|
11
|
+
contracts.curveGaugeController[1],
|
|
12
|
+
contracts.veCrv[1],
|
|
13
|
+
])),
|
|
9
14
|
];
|
|
10
15
|
const rawVotes = await batchJsonRpc({
|
|
11
16
|
rpc,
|
|
12
17
|
calls,
|
|
13
|
-
outputTypeAbi:
|
|
18
|
+
outputTypeAbi: batchUserVotes.outputType[mainnet.id],
|
|
14
19
|
parse: false,
|
|
15
20
|
callsKey: `votemarket/curve/fetchCurveUserVotes.ts: rawGauges - chainId ${mainnet.id} - rpc ${rpc}`,
|
|
16
21
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetchCurveUserVotes.js","sourceRoot":"","sources":["../../../../src/votemarket/curve/fetchCurveUserVotes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,MAAM,CAAA;AACxF,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AACrC,OAAO,
|
|
1
|
+
{"version":3,"file":"fetchCurveUserVotes.js","sourceRoot":"","sources":["../../../../src/votemarket/curve/fetchCurveUserVotes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAChD,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,MAAM,CAAA;AACxF,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AACrC,OAAO,cAAc,MAAM,8CAA8C,CAAA;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAC/C,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAavD,MAAM,CAAC,MAAM,mBAAmB,GAAG,KAAK,EAAE,GAAW,EAAE,IAAY,EAA2B,EAAE;IAC9F,MAAM,KAAK,GAAG;QACZ,cAAc,CACZ,cAAc,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAE,EACpC,mBAAmB,CAAC,kBAAkB,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAE,CAAQ,EAAE;YACpF,IAAI;YACJ,SAAS,CAAC,oBAAqB,CAAC,CAAC,CAAE;YACnC,SAAS,CAAC,KAAM,CAAC,CAAC,CAAE;SACrB,CAAC,CACH;KACF,CAAA;IAED,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC;QAClC,GAAG;QACH,KAAK;QACL,aAAa,EAAE,cAAc,CAAC,UAAW,CAAC,OAAO,CAAC,EAAE,CAAC;QACrD,KAAK,EAAE,KAAK;QACZ,QAAQ,EAAE,gEAAgE,OAAO,CAAC,EAAE,UAAU,GAAG,EAAE;KACpG,CAAC,CAAA;IAEF,MAAM,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAEvC,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK;SAC5B,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;SAChD,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACX,KAAK,EAAE,CAAC,CAAC,KAAK;QACd,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;QAC9B,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,GAAG;QACrC,MAAM,EAAE,WAAW,CAAC,CAAC,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;QACtE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;QACtB,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC;KACnB,CAAC,CAAC,CAAA;IAEL,MAAM,oBAAoB,GAAG,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,KAAK,GAAG,CAAC,CAAC,cAAc,GAAG,GAAG,EAAE,CAAC,CAAC,CAAA;IAClG,MAAM,eAAe,GAAG,CAAC,SAAS,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;IAElF,OAAO;QACL,SAAS,EAAE,WAAW,CAAC,SAAS,EAAE,EAAE,CAAC;QACrC,eAAe,EAAE,WAAW,CAAC,eAAe,EAAE,EAAE,CAAC;QACjD,oBAAoB,EAAE,oBAAoB,GAAG,GAAG;QAChD,KAAK;KACN,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/votemarket/fetchCampaigns/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/votemarket/fetchCampaigns/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,10 +2,11 @@ import { LA_POSTE_MESSAGE_SENT_EVENT, ONE_WEEK, One, Zero, contract } from '@sta
|
|
|
2
2
|
import { range } from 'lodash-es';
|
|
3
3
|
import { decodeAbiParameters, decodeEventLog, parseAbiParameters, zeroAddress } from 'viem';
|
|
4
4
|
import { mainnet } from 'viem/chains';
|
|
5
|
+
import { equalTlc } from '../../utils.js';
|
|
5
6
|
export const CAMPAIGNS_CHUNK_SIZE = 10;
|
|
6
7
|
export const CLAIM_WINDOW_LENGTH = 24; // weeks
|
|
7
8
|
export const CLOSE_WINDOW_LENGTH = 4; // weeks
|
|
8
|
-
export const fetchPendingRemoteCampaigns = async ({ mainnetVmRemote, chainId, fromBlock, etherscanApiKey, nextIndex, }) => {
|
|
9
|
+
export const fetchPendingRemoteCampaigns = async ({ mainnetVmRemote, chainId, fromBlock, etherscanApiKey, nextIndex, votemarket, }) => {
|
|
9
10
|
const queryParams = {
|
|
10
11
|
chainid: `${mainnet.id}`,
|
|
11
12
|
module: 'logs',
|
|
@@ -33,6 +34,9 @@ export const fetchPendingRemoteCampaigns = async ({ mainnetVmRemote, chainId, fr
|
|
|
33
34
|
'Payload payload',
|
|
34
35
|
'struct Payload { uint256 actionType; address sender; address votemarket; bytes parameters }',
|
|
35
36
|
]), decodedEvent.args.message.payload);
|
|
37
|
+
// Skip if the target is not the protocol's votmarket
|
|
38
|
+
if (!equalTlc(payload[0].votemarket, votemarket))
|
|
39
|
+
continue;
|
|
36
40
|
// Create Campaign (actionType === 0)
|
|
37
41
|
if (payload[0].actionType === Zero) {
|
|
38
42
|
const decodedParams = decodeAbiParameters(parseAbiParameters([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pendingRemote.js","sourceRoot":"","sources":["../../../../src/votemarket/fetchCampaigns/pendingRemote.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,QAAQ,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AACjG,OAAO,EAAE,KAAK,EAAE,MAAM,WAAW,CAAA;AACjC,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,MAAM,CAAA;AAC3F,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"pendingRemote.js","sourceRoot":"","sources":["../../../../src/votemarket/fetchCampaigns/pendingRemote.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ONE_WEEK, Zero,
|
|
1
|
+
import { ONE_WEEK, Zero, tokenWithAddress, tokens } from '@stake-dao/constants';
|
|
2
2
|
import { chunk, filter, remove, uniq } from 'lodash-es';
|
|
3
3
|
import { encodeAbiParameters, formatEther, formatUnits, parseAbiParameters } from 'viem';
|
|
4
4
|
import { mainnet } from 'viem/chains';
|
|
@@ -43,7 +43,7 @@ export const processRawCampaigns = async ({ rawCampaigns, platform, gaugeControl
|
|
|
43
43
|
rpc: rpcs[mainnet.id],
|
|
44
44
|
calls: [
|
|
45
45
|
concatBytecode(batchGaugesWeight.bytecode[mainnet.id], encodeAbiParameters(parseAbiParameters(batchGaugesWeight.inputType[mainnet.id]), [
|
|
46
|
-
|
|
46
|
+
gaugeController,
|
|
47
47
|
campaignsGauges,
|
|
48
48
|
])),
|
|
49
49
|
],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"processRawCampaigns.js","sourceRoot":"","sources":["../../../../src/votemarket/fetchCampaigns/processRawCampaigns.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,
|
|
1
|
+
{"version":3,"file":"processRawCampaigns.js","sourceRoot":"","sources":["../../../../src/votemarket/fetchCampaigns/processRawCampaigns.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { contracts } from '@stake-dao/constants';
|
|
2
|
+
import { encodeAbiParameters, formatUnits, parseAbiParameters, zeroAddress } from 'viem';
|
|
3
|
+
import { mainnet } from 'viem/chains';
|
|
4
|
+
import batchUserVotes from '../../bytecodes/votemarket/batchUserVotes.js';
|
|
5
|
+
import { concatBytecode } from '../../index.js';
|
|
6
|
+
import { batchJsonRpc, equalTlc } from '../../utils.js';
|
|
7
|
+
export const fetchFxnUserVotes = async (rpc, user) => {
|
|
8
|
+
const calls = [
|
|
9
|
+
concatBytecode(batchUserVotes.bytecode[mainnet.id], encodeAbiParameters(parseAbiParameters(batchUserVotes.inputType[mainnet.id]), [
|
|
10
|
+
user,
|
|
11
|
+
contracts.fxnGaugeController[1],
|
|
12
|
+
contracts.veFxn[1],
|
|
13
|
+
])),
|
|
14
|
+
];
|
|
15
|
+
const rawVotes = await batchJsonRpc({
|
|
16
|
+
rpc,
|
|
17
|
+
calls,
|
|
18
|
+
outputTypeAbi: batchUserVotes.outputType[mainnet.id],
|
|
19
|
+
parse: false,
|
|
20
|
+
callsKey: `votemarket/fxn/fetchFxnUserVotes.ts: rawGauges - chainId ${mainnet.id} - rpc ${rpc}`,
|
|
21
|
+
});
|
|
22
|
+
const veBalance = rawVotes[0].veBalance;
|
|
23
|
+
const votes = rawVotes[0].votes
|
|
24
|
+
.filter((rv) => !equalTlc(rv.gauge, zeroAddress))
|
|
25
|
+
.map((v) => ({
|
|
26
|
+
gauge: v.gauge,
|
|
27
|
+
slope: formatUnits(v.slope, 0),
|
|
28
|
+
relativeWeight: Number(v.power) / 100,
|
|
29
|
+
weight: formatUnits((veBalance * BigInt(v.power)) / BigInt(10000), 18),
|
|
30
|
+
start: Number(v.start),
|
|
31
|
+
end: Number(v.end),
|
|
32
|
+
}));
|
|
33
|
+
const unusedRelativeWeight = 10000 - votes.reduce((total, x) => total + x.relativeWeight * 100, 0);
|
|
34
|
+
const unusedVeBalance = (veBalance * BigInt(unusedRelativeWeight)) / BigInt(10000);
|
|
35
|
+
return {
|
|
36
|
+
veBalance: formatUnits(veBalance, 18),
|
|
37
|
+
unusedVeBalance: formatUnits(unusedVeBalance, 18),
|
|
38
|
+
unusedRelativeWeight: unusedRelativeWeight / 100,
|
|
39
|
+
votes,
|
|
40
|
+
};
|
|
41
|
+
};
|
|
42
|
+
//# sourceMappingURL=fetchFxnUserVotes.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetchFxnUserVotes.js","sourceRoot":"","sources":["../../../../src/votemarket/fxn/fetchFxnUserVotes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAChD,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,MAAM,CAAA;AACxF,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AACrC,OAAO,cAAc,MAAM,8CAA8C,CAAA;AACzE,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAC/C,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAavD,MAAM,CAAC,MAAM,iBAAiB,GAAG,KAAK,EAAE,GAAW,EAAE,IAAY,EAA2B,EAAE;IAC5F,MAAM,KAAK,GAAG;QACZ,cAAc,CACZ,cAAc,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAE,EACpC,mBAAmB,CAAC,kBAAkB,CAAC,cAAc,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAE,CAAQ,EAAE;YACpF,IAAI;YACJ,SAAS,CAAC,kBAAmB,CAAC,CAAC,CAAE;YACjC,SAAS,CAAC,KAAM,CAAC,CAAC,CAAE;SACrB,CAAC,CACH;KACF,CAAA;IAED,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC;QAClC,GAAG;QACH,KAAK;QACL,aAAa,EAAE,cAAc,CAAC,UAAW,CAAC,OAAO,CAAC,EAAE,CAAC;QACrD,KAAK,EAAE,KAAK;QACZ,QAAQ,EAAE,4DAA4D,OAAO,CAAC,EAAE,UAAU,GAAG,EAAE;KAChG,CAAC,CAAA;IAEF,MAAM,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAEvC,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK;SAC5B,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;SAChD,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACX,KAAK,EAAE,CAAC,CAAC,KAAK;QACd,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;QAC9B,cAAc,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,GAAG;QACrC,MAAM,EAAE,WAAW,CAAC,CAAC,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;QACtE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;QACtB,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC;KACnB,CAAC,CAAC,CAAA;IAEL,MAAM,oBAAoB,GAAG,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,KAAK,GAAG,CAAC,CAAC,cAAc,GAAG,GAAG,EAAE,CAAC,CAAC,CAAA;IAClG,MAAM,eAAe,GAAG,CAAC,SAAS,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;IAElF,OAAO;QACL,SAAS,EAAE,WAAW,CAAC,SAAS,EAAE,EAAE,CAAC;QACrC,eAAe,EAAE,WAAW,CAAC,eAAe,EAAE,EAAE,CAAC;QACjD,oBAAoB,EAAE,oBAAoB,GAAG,GAAG;QAChD,KAAK;KACN,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"batchUserVotes.d.ts","sourceRoot":"","sources":["../../../../src/bytecodes/votemarket/batchUserVotes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAEhD,QAAA,MAAM,mBAAmB,EAAE,aAoC1B,CAAA;AAED,eAAe,mBAAmB,CAAA"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -35,6 +35,8 @@ export type { Campaign } from './votemarket/types.js';
|
|
|
35
35
|
export { fetchCurveGauges } from './votemarket/curve/fetchCurveGauges.js';
|
|
36
36
|
export { fetchCurveUserVotes } from './votemarket/curve/fetchCurveUserVotes.js';
|
|
37
37
|
export { fetchSnapshotUserData } from './votemarket/curve/fetchSnapshotUserData.js';
|
|
38
|
+
export { fetchBalancerUserVotes } from './votemarket/balancer/fetchBalancerUserVotes.js';
|
|
39
|
+
export { fetchFxnUserVotes } from './votemarket/fxn/fetchFxnUserVotes.js';
|
|
38
40
|
export { fetchEpochsVotes } from './votemarket/fetchEpochVotes.js';
|
|
39
41
|
export { fetchClaimableData } from './votemarket/fetchClaimableData.js';
|
|
40
42
|
export { fetchNeededCampaignUpdate } from './votemarket/fetchNeededCampaignUpdate.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export type Vote = {
|
|
2
|
+
gauge: string;
|
|
3
|
+
slope: string;
|
|
4
|
+
relativeWeight: number;
|
|
5
|
+
weight: number;
|
|
6
|
+
start: number;
|
|
7
|
+
end: number;
|
|
8
|
+
};
|
|
9
|
+
export type GaugesUserData = {
|
|
10
|
+
veBalance: string;
|
|
11
|
+
unusedVeBalance: string;
|
|
12
|
+
unusedRelativeWeight: number;
|
|
13
|
+
votes: Vote[];
|
|
14
|
+
};
|
|
15
|
+
export declare const fetchBalancerUserVotes: (rpc: string, user: string) => Promise<GaugesUserData>;
|
|
16
|
+
//# sourceMappingURL=fetchBalancerUserVotes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetchBalancerUserVotes.d.ts","sourceRoot":"","sources":["../../../../src/votemarket/balancer/fetchBalancerUserVotes.ts"],"names":[],"mappings":"AAOA,MAAM,MAAM,IAAI,GAAG;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,cAAc,EAAE,MAAM,CAAA;IACtB,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,EAAE,MAAM,CAAA;CACZ,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,eAAe,EAAE,MAAM,CAAC;IAAC,oBAAoB,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,IAAI,EAAE,CAAA;CAAE,CAAA;AAExH,eAAO,MAAM,sBAAsB,QAAe,MAAM,QAAQ,MAAM,KAAG,OAAO,CAAC,cAAc,CA0C9F,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fetchCurveUserVotes.d.ts","sourceRoot":"","sources":["../../../../src/votemarket/curve/fetchCurveUserVotes.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"fetchCurveUserVotes.d.ts","sourceRoot":"","sources":["../../../../src/votemarket/curve/fetchCurveUserVotes.ts"],"names":[],"mappings":"AAOA,MAAM,MAAM,IAAI,GAAG;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,cAAc,EAAE,MAAM,CAAA;IACtB,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,EAAE,MAAM,CAAA;CACZ,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,eAAe,EAAE,MAAM,CAAC;IAAC,oBAAoB,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,IAAI,EAAE,CAAA;CAAE,CAAA;AAExH,eAAO,MAAM,mBAAmB,QAAe,MAAM,QAAQ,MAAM,KAAG,OAAO,CAAC,cAAc,CA0C3F,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/votemarket/fetchCampaigns/index.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAI3C,eAAO,MAAM,oBAAoB,KAAK,CAAA;AACtC,eAAO,MAAM,mBAAmB,KAAK,CAAA;AACrC,eAAO,MAAM,mBAAmB,IAAI,CAAA;AAEpC,UAAU,mBAAmB;IAC3B,QAAQ,EAAE,MAAM,CAAA;IAChB,eAAe,EAAE,MAAM,CAAA;IACvB,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE;QAAE,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAA;IACnC,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,eAAe,CAAC,EAAE,MAAM,CAAA;CACzB;AAED,eAAO,MAAM,cAAc,+FAQxB,mBAAmB,KAAG,OAAO,CAAC,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/votemarket/fetchCampaigns/index.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAA;AAI3C,eAAO,MAAM,oBAAoB,KAAK,CAAA;AACtC,eAAO,MAAM,mBAAmB,KAAK,CAAA;AACrC,eAAO,MAAM,mBAAmB,IAAI,CAAA;AAEpC,UAAU,mBAAmB;IAC3B,QAAQ,EAAE,MAAM,CAAA;IAChB,eAAe,EAAE,MAAM,CAAA;IACvB,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE;QAAE,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAA;IACnC,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,eAAe,CAAC,EAAE,MAAM,CAAA;CACzB;AAED,eAAO,MAAM,cAAc,+FAQxB,mBAAmB,KAAG,OAAO,CAAC,QAAQ,EAAE,CAiE1C,CAAA"}
|
|
@@ -7,8 +7,9 @@ interface FetchPendingRemoteCampaignsProps {
|
|
|
7
7
|
fromBlock: number;
|
|
8
8
|
etherscanApiKey: string;
|
|
9
9
|
nextIndex: number;
|
|
10
|
+
votemarket: string;
|
|
10
11
|
}
|
|
11
|
-
export declare const fetchPendingRemoteCampaigns: ({ mainnetVmRemote, chainId, fromBlock, etherscanApiKey, nextIndex, }: FetchPendingRemoteCampaignsProps) => Promise<{
|
|
12
|
+
export declare const fetchPendingRemoteCampaigns: ({ mainnetVmRemote, chainId, fromBlock, etherscanApiKey, nextIndex, votemarket, }: FetchPendingRemoteCampaignsProps) => Promise<{
|
|
12
13
|
remoteCampaigns: {
|
|
13
14
|
isPendingRemote: boolean;
|
|
14
15
|
id: bigint;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pendingRemote.d.ts","sourceRoot":"","sources":["../../../../src/votemarket/fetchCampaigns/pendingRemote.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"pendingRemote.d.ts","sourceRoot":"","sources":["../../../../src/votemarket/fetchCampaigns/pendingRemote.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,oBAAoB,KAAK,CAAA;AACtC,eAAO,MAAM,mBAAmB,KAAK,CAAA;AACrC,eAAO,MAAM,mBAAmB,IAAI,CAAA;AAEpC,UAAU,gCAAgC;IACxC,eAAe,EAAE,MAAM,CAAA;IACvB,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,eAAe,EAAE,MAAM,CAAA;IACvB,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;CACnB;AAED,eAAO,MAAM,2BAA2B,qFAOrC,gCAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyHlC,CAAA"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export type Vote = {
|
|
2
|
+
gauge: string;
|
|
3
|
+
slope: string;
|
|
4
|
+
relativeWeight: number;
|
|
5
|
+
weight: number;
|
|
6
|
+
start: number;
|
|
7
|
+
end: number;
|
|
8
|
+
};
|
|
9
|
+
export type GaugesUserData = {
|
|
10
|
+
veBalance: string;
|
|
11
|
+
unusedVeBalance: string;
|
|
12
|
+
unusedRelativeWeight: number;
|
|
13
|
+
votes: Vote[];
|
|
14
|
+
};
|
|
15
|
+
export declare const fetchFxnUserVotes: (rpc: string, user: string) => Promise<GaugesUserData>;
|
|
16
|
+
//# sourceMappingURL=fetchFxnUserVotes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fetchFxnUserVotes.d.ts","sourceRoot":"","sources":["../../../../src/votemarket/fxn/fetchFxnUserVotes.ts"],"names":[],"mappings":"AAOA,MAAM,MAAM,IAAI,GAAG;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,cAAc,EAAE,MAAM,CAAA;IACtB,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,EAAE,MAAM,CAAA;CACZ,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,eAAe,EAAE,MAAM,CAAC;IAAC,oBAAoB,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,IAAI,EAAE,CAAA;CAAE,CAAA;AAExH,eAAO,MAAM,iBAAiB,QAAe,MAAM,QAAQ,MAAM,KAAG,OAAO,CAAC,cAAc,CA0CzF,CAAA"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@stake-dao/reader",
|
|
3
3
|
"description": "",
|
|
4
|
-
"version": "0.4.
|
|
4
|
+
"version": "0.4.59",
|
|
5
5
|
"license": "AGPL-3.0-only",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
"graphql-request": "^6.0.0",
|
|
36
36
|
"lodash-es": "^4.17.21",
|
|
37
37
|
"viem": "^2.21.53",
|
|
38
|
-
"@stake-dao/constants": "0.4.
|
|
38
|
+
"@stake-dao/constants": "0.4.27"
|
|
39
39
|
},
|
|
40
40
|
"devDependencies": {
|
|
41
41
|
"@types/lodash-es": "^4.17.12",
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import type { BatchMetaData } from '../types.js'
|
|
2
|
+
|
|
3
|
+
const batchCurveUserVotes: BatchMetaData = {
|
|
4
|
+
bytecode: {
|
|
5
|
+
1: '0x608060405234801561000f575f80fd5b506040516109bd3803806109bd833981810160405281019061003191906105dc565b5f8290505f8173ffffffffffffffffffffffffffffffffffffffff1663e93841d06040518163ffffffff1660e01b8152600401602060405180830381865afa15801561007f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906100a3919061065f565b90506100ad610525565b8373ffffffffffffffffffffffffffffffffffffffff166370a08231876040518263ffffffff1660e01b81526004016100e69190610699565b602060405180830381865afa158015610101573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610125919061065f565b815f0181815250505f805b838110156103b5575f8573ffffffffffffffffffffffffffffffffffffffff1663b0539187836040518263ffffffff1660e01b815260040161017291906106c1565b602060405180830381865afa15801561018d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101b191906106da565b90506101bb61053e565b8673ffffffffffffffffffffffffffffffffffffffff16630f467f988b846040518363ffffffff1660e01b81526004016101f6929190610705565b606060405180830381865afa158015610211573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610235919061072c565b8360200184604001856080018381525083815250838152505050505f816040015111156103a65781815f019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508673ffffffffffffffffffffffffffffffffffffffff16637e418fa08b846040518363ffffffff1660e01b81526004016102ce929190610705565b602060405180830381865afa1580156102e9573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061030d919061065f565b816060018181525050805f808681526020019081526020015f205f820151815f015f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550602082015181600101556040820151816002015560608201518160030155608082015181600401559050506001846103a391906107a9565b93505b50508080600101915050610130565b506103c5816103fb60201b60201c565b82602001819052505f826040516020016103df9190610942565b6040516020818303038152906040529050602081018059038082f35b60608167ffffffffffffffff81111561041757610416610962565b5b60405190808252806020026020018201604052801561045057816020015b61043d61053e565b8152602001906001900390816104355790505b5090505f5b8281101561051f575f808281526020019081526020015f206040518060a00160405290815f82015f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016001820154815260200160028201548152602001600382015481526020016004820154815250508282815181106105075761050661098f565b5b60200260200101819052508080600101915050610455565b50919050565b60405180604001604052805f8152602001606081525090565b6040518060a001604052805f73ffffffffffffffffffffffffffffffffffffffff1681526020015f81526020015f81526020015f81526020015f81525090565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6105ab82610582565b9050919050565b6105bb816105a1565b81146105c5575f80fd5b50565b5f815190506105d6816105b2565b92915050565b5f805f606084860312156105f3576105f261057e565b5b5f610600868287016105c8565b9350506020610611868287016105c8565b9250506040610622868287016105c8565b9150509250925092565b5f819050919050565b61063e8161062c565b8114610648575f80fd5b50565b5f8151905061065981610635565b92915050565b5f602082840312156106745761067361057e565b5b5f6106818482850161064b565b91505092915050565b610693816105a1565b82525050565b5f6020820190506106ac5f83018461068a565b92915050565b6106bb8161062c565b82525050565b5f6020820190506106d45f8301846106b2565b92915050565b5f602082840312156106ef576106ee61057e565b5b5f6106fc848285016105c8565b91505092915050565b5f6040820190506107185f83018561068a565b610725602083018461068a565b9392505050565b5f805f606084860312156107435761074261057e565b5b5f6107508682870161064b565b93505060206107618682870161064b565b92505060406107728682870161064b565b9150509250925092565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f6107b38261062c565b91506107be8361062c565b92508282019050808211156107d6576107d561077c565b5b92915050565b6107e58161062c565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b61081d816105a1565b82525050565b60a082015f8201516108375f850182610814565b50602082015161084a60208501826107dc565b50604082015161085d60408501826107dc565b50606082015161087060608501826107dc565b50608082015161088360808501826107dc565b50505050565b5f6108948383610823565b60a08301905092915050565b5f602082019050919050565b5f6108b6826107eb565b6108c081856107f5565b93506108cb83610805565b805f5b838110156108fb5781516108e28882610889565b97506108ed836108a0565b9250506001810190506108ce565b5085935050505092915050565b5f604083015f83015161091d5f8601826107dc565b506020830151848203602086015261093582826108ac565b9150508091505092915050565b5f6020820190508181035f83015261095a8184610908565b905092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffdfe',
|
|
6
|
+
},
|
|
7
|
+
inputType: {
|
|
8
|
+
1: ['address user', 'address gaugeController', 'address veToken'],
|
|
9
|
+
},
|
|
10
|
+
outputTypeHr: {
|
|
11
|
+
1: [
|
|
12
|
+
'ReturnData memory returnData',
|
|
13
|
+
'struct ReturnData { uint256 veBalance; Vote[] votes; }',
|
|
14
|
+
'struct Vote { address gauge; uint256 slope; uint256 power; uint256 start; uint256 end; }',
|
|
15
|
+
],
|
|
16
|
+
},
|
|
17
|
+
outputType: {
|
|
18
|
+
1: [
|
|
19
|
+
{
|
|
20
|
+
type: 'tuple',
|
|
21
|
+
name: 'returnData',
|
|
22
|
+
components: [
|
|
23
|
+
{ type: 'uint256', name: 'veBalance' },
|
|
24
|
+
{
|
|
25
|
+
type: 'tuple[]',
|
|
26
|
+
name: 'votes',
|
|
27
|
+
components: [
|
|
28
|
+
{ type: 'address', name: 'gauge' },
|
|
29
|
+
{ type: 'uint256', name: 'slope' },
|
|
30
|
+
{ type: 'uint256', name: 'power' },
|
|
31
|
+
{ type: 'uint256', name: 'start' },
|
|
32
|
+
{ type: 'uint256', name: 'end' },
|
|
33
|
+
],
|
|
34
|
+
},
|
|
35
|
+
],
|
|
36
|
+
},
|
|
37
|
+
],
|
|
38
|
+
},
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
export default batchCurveUserVotes
|
package/src/index.ts
CHANGED
|
@@ -77,6 +77,12 @@ export { fetchCurveGauges } from './votemarket/curve/fetchCurveGauges.js'
|
|
|
77
77
|
export { fetchCurveUserVotes } from './votemarket/curve/fetchCurveUserVotes.js'
|
|
78
78
|
export { fetchSnapshotUserData } from './votemarket/curve/fetchSnapshotUserData.js'
|
|
79
79
|
|
|
80
|
+
// Balancer
|
|
81
|
+
export { fetchBalancerUserVotes } from './votemarket/balancer/fetchBalancerUserVotes.js'
|
|
82
|
+
|
|
83
|
+
// Fxn
|
|
84
|
+
export { fetchFxnUserVotes } from './votemarket/fxn/fetchFxnUserVotes.js'
|
|
85
|
+
|
|
80
86
|
// Campaign data
|
|
81
87
|
export { fetchEpochsVotes } from './votemarket/fetchEpochVotes.js'
|
|
82
88
|
export { fetchClaimableData } from './votemarket/fetchClaimableData.js'
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { contracts } from '@stake-dao/constants'
|
|
2
|
+
import { encodeAbiParameters, formatUnits, parseAbiParameters, zeroAddress } from 'viem'
|
|
3
|
+
import { mainnet } from 'viem/chains'
|
|
4
|
+
import batchUserVotes from '../../bytecodes/votemarket/batchUserVotes.js'
|
|
5
|
+
import { concatBytecode } from '../../index.js'
|
|
6
|
+
import { batchJsonRpc, equalTlc } from '../../utils.js'
|
|
7
|
+
|
|
8
|
+
export type Vote = {
|
|
9
|
+
gauge: string
|
|
10
|
+
slope: string
|
|
11
|
+
relativeWeight: number
|
|
12
|
+
weight: number
|
|
13
|
+
start: number
|
|
14
|
+
end: number
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
export type GaugesUserData = { veBalance: string; unusedVeBalance: string; unusedRelativeWeight: number; votes: Vote[] }
|
|
18
|
+
|
|
19
|
+
export const fetchBalancerUserVotes = async (rpc: string, user: string): Promise<GaugesUserData> => {
|
|
20
|
+
const calls = [
|
|
21
|
+
concatBytecode(
|
|
22
|
+
batchUserVotes.bytecode[mainnet.id]!,
|
|
23
|
+
encodeAbiParameters(parseAbiParameters(batchUserVotes.inputType[mainnet.id]!) as any, [
|
|
24
|
+
user,
|
|
25
|
+
contracts.balancerGaugeController![1]!,
|
|
26
|
+
contracts.veBal![1],
|
|
27
|
+
]),
|
|
28
|
+
),
|
|
29
|
+
]
|
|
30
|
+
|
|
31
|
+
const rawVotes = await batchJsonRpc({
|
|
32
|
+
rpc,
|
|
33
|
+
calls,
|
|
34
|
+
outputTypeAbi: batchUserVotes.outputType![mainnet.id],
|
|
35
|
+
parse: false,
|
|
36
|
+
callsKey: `votemarket/balancer/fetchBalancerUserVotes.ts: rawGauges - chainId ${mainnet.id} - rpc ${rpc}`,
|
|
37
|
+
})
|
|
38
|
+
|
|
39
|
+
const veBalance = rawVotes[0].veBalance
|
|
40
|
+
|
|
41
|
+
const votes = rawVotes[0].votes
|
|
42
|
+
.filter((rv) => !equalTlc(rv.gauge, zeroAddress))
|
|
43
|
+
.map((v) => ({
|
|
44
|
+
gauge: v.gauge,
|
|
45
|
+
slope: formatUnits(v.slope, 0),
|
|
46
|
+
relativeWeight: Number(v.power) / 100,
|
|
47
|
+
weight: formatUnits((veBalance * BigInt(v.power)) / BigInt(10000), 18),
|
|
48
|
+
start: Number(v.start),
|
|
49
|
+
end: Number(v.end),
|
|
50
|
+
}))
|
|
51
|
+
|
|
52
|
+
const unusedRelativeWeight = 10000 - votes.reduce((total, x) => total + x.relativeWeight * 100, 0)
|
|
53
|
+
const unusedVeBalance = (veBalance * BigInt(unusedRelativeWeight)) / BigInt(10000)
|
|
54
|
+
|
|
55
|
+
return {
|
|
56
|
+
veBalance: formatUnits(veBalance, 18),
|
|
57
|
+
unusedVeBalance: formatUnits(unusedVeBalance, 18),
|
|
58
|
+
unusedRelativeWeight: unusedRelativeWeight / 100,
|
|
59
|
+
votes,
|
|
60
|
+
}
|
|
61
|
+
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
+
import { contracts } from '@stake-dao/constants'
|
|
1
2
|
import { encodeAbiParameters, formatUnits, parseAbiParameters, zeroAddress } from 'viem'
|
|
2
3
|
import { mainnet } from 'viem/chains'
|
|
3
|
-
import
|
|
4
|
+
import batchUserVotes from '../../bytecodes/votemarket/batchUserVotes.js'
|
|
4
5
|
import { concatBytecode } from '../../index.js'
|
|
5
6
|
import { batchJsonRpc, equalTlc } from '../../utils.js'
|
|
6
7
|
|
|
@@ -18,15 +19,19 @@ export type GaugesUserData = { veBalance: string; unusedVeBalance: string; unuse
|
|
|
18
19
|
export const fetchCurveUserVotes = async (rpc: string, user: string): Promise<GaugesUserData> => {
|
|
19
20
|
const calls = [
|
|
20
21
|
concatBytecode(
|
|
21
|
-
|
|
22
|
-
encodeAbiParameters(parseAbiParameters(
|
|
22
|
+
batchUserVotes.bytecode[mainnet.id]!,
|
|
23
|
+
encodeAbiParameters(parseAbiParameters(batchUserVotes.inputType[mainnet.id]!) as any, [
|
|
24
|
+
user,
|
|
25
|
+
contracts.curveGaugeController![1]!,
|
|
26
|
+
contracts.veCrv![1]!,
|
|
27
|
+
]),
|
|
23
28
|
),
|
|
24
29
|
]
|
|
25
30
|
|
|
26
31
|
const rawVotes = await batchJsonRpc({
|
|
27
32
|
rpc,
|
|
28
33
|
calls,
|
|
29
|
-
outputTypeAbi:
|
|
34
|
+
outputTypeAbi: batchUserVotes.outputType![mainnet.id],
|
|
30
35
|
parse: false,
|
|
31
36
|
callsKey: `votemarket/curve/fetchCurveUserVotes.ts: rawGauges - chainId ${mainnet.id} - rpc ${rpc}`,
|
|
32
37
|
})
|
|
@@ -2,6 +2,7 @@ import { LA_POSTE_MESSAGE_SENT_EVENT, ONE_WEEK, One, Zero, contract } from '@sta
|
|
|
2
2
|
import { range } from 'lodash-es'
|
|
3
3
|
import { decodeAbiParameters, decodeEventLog, parseAbiParameters, zeroAddress } from 'viem'
|
|
4
4
|
import { mainnet } from 'viem/chains'
|
|
5
|
+
import { equalTlc } from '../../utils.js'
|
|
5
6
|
|
|
6
7
|
export const CAMPAIGNS_CHUNK_SIZE = 10
|
|
7
8
|
export const CLAIM_WINDOW_LENGTH = 24 // weeks
|
|
@@ -13,6 +14,7 @@ interface FetchPendingRemoteCampaignsProps {
|
|
|
13
14
|
fromBlock: number
|
|
14
15
|
etherscanApiKey: string
|
|
15
16
|
nextIndex: number
|
|
17
|
+
votemarket: string
|
|
16
18
|
}
|
|
17
19
|
|
|
18
20
|
export const fetchPendingRemoteCampaigns = async ({
|
|
@@ -21,6 +23,7 @@ export const fetchPendingRemoteCampaigns = async ({
|
|
|
21
23
|
fromBlock,
|
|
22
24
|
etherscanApiKey,
|
|
23
25
|
nextIndex,
|
|
26
|
+
votemarket,
|
|
24
27
|
}: FetchPendingRemoteCampaignsProps) => {
|
|
25
28
|
const queryParams = {
|
|
26
29
|
chainid: `${mainnet.id}`,
|
|
@@ -59,6 +62,9 @@ export const fetchPendingRemoteCampaigns = async ({
|
|
|
59
62
|
decodedEvent.args.message.payload,
|
|
60
63
|
)
|
|
61
64
|
|
|
65
|
+
// Skip if the target is not the protocol's votmarket
|
|
66
|
+
if (!equalTlc(payload[0].votemarket, votemarket)) continue
|
|
67
|
+
|
|
62
68
|
// Create Campaign (actionType === 0)
|
|
63
69
|
if (payload[0].actionType === Zero) {
|
|
64
70
|
const decodedParams = decodeAbiParameters(
|