@stake-dao/reader 0.4.26 → 0.4.28

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (104) hide show
  1. package/dist/esm/bytecodes/gaugeManager/curveGaugeRewardsData.js +36 -0
  2. package/dist/esm/bytecodes/gaugeManager/curveGaugeRewardsData.js.map +1 -0
  3. package/dist/esm/bytecodes/strategies/batches/batchPancakeSwapPositions.js +2 -2
  4. package/dist/esm/bytecodes/strategies/batches/batchPancakeSwapPositions.js.map +1 -1
  5. package/dist/esm/bytecodes/votemarket/batchCampaigns.js +11 -1
  6. package/dist/esm/bytecodes/votemarket/batchCampaigns.js.map +1 -1
  7. package/dist/esm/bytecodes/votemarket/batchClaimableData.js +21 -0
  8. package/dist/esm/bytecodes/votemarket/batchClaimableData.js.map +1 -0
  9. package/dist/esm/bytecodes/votemarket/batchGaugesWeight.js +13 -0
  10. package/dist/esm/bytecodes/votemarket/batchGaugesWeight.js.map +1 -0
  11. package/dist/esm/bytecodes/votemarket/batchVotes.js +13 -0
  12. package/dist/esm/bytecodes/votemarket/batchVotes.js.map +1 -0
  13. package/dist/esm/bytecodes/votemarket/curve/batchCurveGaugesMetadata.js +4 -3
  14. package/dist/esm/bytecodes/votemarket/curve/batchCurveGaugesMetadata.js.map +1 -1
  15. package/dist/esm/gaugeManager/curve/gmFetchGauge.js +34 -0
  16. package/dist/esm/gaugeManager/curve/gmFetchGauge.js.map +1 -0
  17. package/dist/esm/index.js +14 -0
  18. package/dist/esm/index.js.map +1 -1
  19. package/dist/esm/strategies/pancakeswap/endpoints.js +1 -1
  20. package/dist/esm/strategies/pancakeswap/fetch/getPancakeV3Positions.js +24 -5
  21. package/dist/esm/strategies/pancakeswap/fetch/getPancakeV3Positions.js.map +1 -1
  22. package/dist/esm/tsconfig.build.tsbuildinfo +1 -1
  23. package/dist/esm/utils.js +43 -1
  24. package/dist/esm/utils.js.map +1 -1
  25. package/dist/esm/votemarket/curve/config.js +1 -1
  26. package/dist/esm/votemarket/curve/fetchCurveGauges.js +2 -0
  27. package/dist/esm/votemarket/curve/fetchCurveGauges.js.map +1 -1
  28. package/dist/esm/votemarket/curve/fetchSnapshotUserData.js.map +1 -1
  29. package/dist/esm/votemarket/fetchCampaigns.js +115 -12
  30. package/dist/esm/votemarket/fetchCampaigns.js.map +1 -1
  31. package/dist/esm/votemarket/fetchClaimableData.js +36 -0
  32. package/dist/esm/votemarket/fetchClaimableData.js.map +1 -0
  33. package/dist/esm/votemarket/fetchEpochVotes.js +30 -0
  34. package/dist/esm/votemarket/fetchEpochVotes.js.map +1 -0
  35. package/dist/esm/votemarket/generateProofs/config.js +53 -0
  36. package/dist/esm/votemarket/generateProofs/config.js.map +1 -0
  37. package/dist/esm/votemarket/generateProofs/getBlockProof.js +33 -0
  38. package/dist/esm/votemarket/generateProofs/getBlockProof.js.map +1 -0
  39. package/dist/esm/votemarket/generateProofs/getGaugeProof.js +50 -0
  40. package/dist/esm/votemarket/generateProofs/getGaugeProof.js.map +1 -0
  41. package/dist/esm/votemarket/generateProofs/getUserProof.js +49 -0
  42. package/dist/esm/votemarket/generateProofs/getUserProof.js.map +1 -0
  43. package/dist/esm/votemarket/types.js +2 -0
  44. package/dist/esm/votemarket/types.js.map +1 -0
  45. package/dist/types/bytecodes/gaugeManager/curveGaugeRewardsData.d.ts +4 -0
  46. package/dist/types/bytecodes/gaugeManager/curveGaugeRewardsData.d.ts.map +1 -0
  47. package/dist/types/bytecodes/votemarket/batchCampaigns.d.ts.map +1 -1
  48. package/dist/types/bytecodes/votemarket/batchClaimableData.d.ts +4 -0
  49. package/dist/types/bytecodes/votemarket/batchClaimableData.d.ts.map +1 -0
  50. package/dist/types/bytecodes/votemarket/batchGaugesWeight.d.ts +4 -0
  51. package/dist/types/bytecodes/votemarket/batchGaugesWeight.d.ts.map +1 -0
  52. package/dist/types/bytecodes/votemarket/batchVotes.d.ts +4 -0
  53. package/dist/types/bytecodes/votemarket/batchVotes.d.ts.map +1 -0
  54. package/dist/types/bytecodes/votemarket/curve/batchCurveGaugesMetadata.d.ts.map +1 -1
  55. package/dist/types/gaugeManager/curve/gmFetchGauge.d.ts +25 -0
  56. package/dist/types/gaugeManager/curve/gmFetchGauge.d.ts.map +1 -0
  57. package/dist/types/index.d.ts +10 -0
  58. package/dist/types/index.d.ts.map +1 -1
  59. package/dist/types/strategies/pancakeswap/fetch/getPancakeV3Positions.d.ts.map +1 -1
  60. package/dist/types/utils.d.ts +14 -1
  61. package/dist/types/utils.d.ts.map +1 -1
  62. package/dist/types/votemarket/curve/config.d.ts +1 -1
  63. package/dist/types/votemarket/curve/fetchCurveGauges.d.ts.map +1 -1
  64. package/dist/types/votemarket/curve/fetchSnapshotUserData.d.ts.map +1 -1
  65. package/dist/types/votemarket/fetchCampaigns.d.ts +4 -11
  66. package/dist/types/votemarket/fetchCampaigns.d.ts.map +1 -1
  67. package/dist/types/votemarket/fetchClaimableData.d.ts +6 -0
  68. package/dist/types/votemarket/fetchClaimableData.d.ts.map +1 -0
  69. package/dist/types/votemarket/fetchEpochVotes.d.ts +9 -0
  70. package/dist/types/votemarket/fetchEpochVotes.d.ts.map +1 -0
  71. package/dist/types/votemarket/generateProofs/config.d.ts +32 -0
  72. package/dist/types/votemarket/generateProofs/config.d.ts.map +1 -0
  73. package/dist/types/votemarket/generateProofs/getBlockProof.d.ts +6 -0
  74. package/dist/types/votemarket/generateProofs/getBlockProof.d.ts.map +1 -0
  75. package/dist/types/votemarket/generateProofs/getGaugeProof.d.ts +6 -0
  76. package/dist/types/votemarket/generateProofs/getGaugeProof.d.ts.map +1 -0
  77. package/dist/types/votemarket/generateProofs/getUserProof.d.ts +6 -0
  78. package/dist/types/votemarket/generateProofs/getUserProof.d.ts.map +1 -0
  79. package/dist/types/votemarket/types.d.ts +63 -0
  80. package/dist/types/votemarket/types.d.ts.map +1 -0
  81. package/package.json +1 -1
  82. package/src/bytecodes/gaugeManager/curveGaugeRewardsData.ts +39 -0
  83. package/src/bytecodes/strategies/batches/batchPancakeSwapPositions.ts +2 -2
  84. package/src/bytecodes/votemarket/batchCampaigns.ts +11 -1
  85. package/src/bytecodes/votemarket/batchClaimableData.ts +24 -0
  86. package/src/bytecodes/votemarket/batchGaugesWeight.ts +15 -0
  87. package/src/bytecodes/votemarket/batchVotes.ts +15 -0
  88. package/src/bytecodes/votemarket/curve/batchCurveGaugesMetadata.ts +4 -3
  89. package/src/gaugeManager/curve/gmFetchGauge.ts +68 -0
  90. package/src/index.ts +23 -0
  91. package/src/strategies/pancakeswap/endpoints.ts +1 -1
  92. package/src/strategies/pancakeswap/fetch/getPancakeV3Positions.ts +33 -8
  93. package/src/utils.ts +67 -2
  94. package/src/votemarket/curve/config.ts +1 -1
  95. package/src/votemarket/curve/fetchCurveGauges.ts +3 -0
  96. package/src/votemarket/curve/fetchSnapshotUserData.ts +1 -0
  97. package/src/votemarket/fetchCampaigns.ts +149 -24
  98. package/src/votemarket/fetchClaimableData.ts +50 -0
  99. package/src/votemarket/fetchEpochVotes.ts +48 -0
  100. package/src/votemarket/generateProofs/config.ts +53 -0
  101. package/src/votemarket/generateProofs/getBlockProof.ts +48 -0
  102. package/src/votemarket/generateProofs/getGaugeProof.ts +75 -0
  103. package/src/votemarket/generateProofs/getUserProof.ts +74 -0
  104. package/src/votemarket/types.ts +67 -0
@@ -0,0 +1,49 @@
1
+ import { http, createPublicClient, encodeAbiParameters, fromRlp, keccak256, toHex, toRlp } from 'viem';
2
+ import { mainnet } from 'viem/chains';
3
+ import { GaugeControllerConstants } from './config.js';
4
+ // Helper function to encode user gauge data
5
+ function _encodeUserGaugeData(user, gauge, baseSlot) {
6
+ const userEncoded = keccak256(encodeAbiParameters([{ type: 'uint256' }, { type: 'address' }], [BigInt(baseSlot), user]));
7
+ return keccak256(encodeAbiParameters([{ type: 'bytes32' }, { type: 'address' }], [userEncoded, gauge]));
8
+ }
9
+ // Function to get storage slot for non-Curve protocols
10
+ function getUserGaugeStorageSlot(user, gauge, baseSlot) {
11
+ const finalSlot = _encodeUserGaugeData(user, gauge, baseSlot);
12
+ return BigInt(finalSlot);
13
+ }
14
+ // Function to get storage slot for Curve protocol (pre-Vyper 0.3)
15
+ function getUserGaugeStorageSlotPreVyper03(user, gauge, baseSlot) {
16
+ const intermediateHash = _encodeUserGaugeData(user, gauge, baseSlot);
17
+ const finalSlot = keccak256(encodeAbiParameters([{ type: 'bytes32' }], [intermediateHash]));
18
+ return BigInt(finalSlot);
19
+ }
20
+ // Main function to generate user proof
21
+ export async function generateUserProof(rpc, protocol, gaugeAddress, user, blockNumber) {
22
+ const publicClient = createPublicClient({
23
+ chain: mainnet,
24
+ transport: http(rpc[mainnet.id]),
25
+ });
26
+ const lastUserVoteBaseSlot = GaugeControllerConstants.GAUGES_SLOTS[protocol].lastUserVote;
27
+ const voteUserSlopeBaseSlot = GaugeControllerConstants.GAUGES_SLOTS[protocol].voteUserSlope;
28
+ const lastUserVoteSlot = getUserGaugeStorageSlot(user, gaugeAddress, lastUserVoteBaseSlot);
29
+ const positionFunctions = {
30
+ curve: getUserGaugeStorageSlotPreVyper03,
31
+ default: getUserGaugeStorageSlot,
32
+ };
33
+ const getPosition = positionFunctions[protocol] || positionFunctions.default;
34
+ const voteUserSlopeSlot = getPosition(user, gaugeAddress, voteUserSlopeBaseSlot);
35
+ const voteUserSlopeSlope = voteUserSlopeSlot;
36
+ const voteUserSlopeEnd = voteUserSlopeSlot + 2n;
37
+ const slots = [toHex(lastUserVoteSlot), toHex(voteUserSlopeSlope), toHex(voteUserSlopeEnd)];
38
+ const proof = await publicClient.getProof({
39
+ address: GaugeControllerConstants.GAUGE_CONTROLLER[protocol],
40
+ storageKeys: slots,
41
+ blockNumber,
42
+ });
43
+ const decodedAccountProof = proof.accountProof.map((p) => fromRlp(p));
44
+ const accountProof = toRlp(decodedAccountProof);
45
+ const decodedStorageProof = proof.storageProof.map((sp) => sp.proof.map((p) => fromRlp(p)));
46
+ const storageProof = toRlp(decodedStorageProof);
47
+ return [accountProof, storageProof];
48
+ }
49
+ //# sourceMappingURL=getUserProof.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getUserProof.js","sourceRoot":"","sources":["../../../../src/votemarket/generateProofs/getUserProof.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,MAAM,CAAA;AACtG,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAA;AACrC,OAAO,EAAE,wBAAwB,EAAE,MAAM,aAAa,CAAA;AAMtD,4CAA4C;AAC5C,SAAS,oBAAoB,CAAC,IAAmB,EAAE,KAAoB,EAAE,QAAgB;IACvF,MAAM,WAAW,GAAG,SAAS,CAC3B,mBAAmB,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,CAAC,CAC1F,CAAA;IACD,OAAO,SAAS,CAAC,mBAAmB,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC,CAAA;AACzG,CAAC;AAED,uDAAuD;AACvD,SAAS,uBAAuB,CAAC,IAAmB,EAAE,KAAoB,EAAE,QAAgB;IAC1F,MAAM,SAAS,GAAG,oBAAoB,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAA;IAC7D,OAAO,MAAM,CAAC,SAAS,CAAC,CAAA;AAC1B,CAAC;AAED,kEAAkE;AAClE,SAAS,iCAAiC,CAAC,IAAmB,EAAE,KAAoB,EAAE,QAAgB;IACpG,MAAM,gBAAgB,GAAG,oBAAoB,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAA;IACpE,MAAM,SAAS,GAAG,SAAS,CAAC,mBAAmB,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAA;IAC3F,OAAO,MAAM,CAAC,SAAS,CAAC,CAAA;AAC1B,CAAC;AAED,uCAAuC;AACvC,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,GAAS,EACT,QAAgB,EAChB,YAA2B,EAC3B,IAAmB,EACnB,WAAmB;IAEnB,MAAM,YAAY,GAAG,kBAAkB,CAAC;QACtC,KAAK,EAAE,OAAO;QACd,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;KACjC,CAAC,CAAA;IAEF,MAAM,oBAAoB,GAAG,wBAAwB,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAA;IACzF,MAAM,qBAAqB,GAAG,wBAAwB,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,aAAa,CAAA;IAE3F,MAAM,gBAAgB,GAAG,uBAAuB,CAAC,IAAI,EAAE,YAAY,EAAE,oBAAoB,CAAC,CAAA;IAE1F,MAAM,iBAAiB,GAAwB;QAC7C,KAAK,EAAE,iCAAiC;QACxC,OAAO,EAAE,uBAAuB;KACjC,CAAA;IAED,MAAM,WAAW,GAAG,iBAAiB,CAAC,QAAQ,CAAC,IAAI,iBAAiB,CAAC,OAAO,CAAA;IAC5E,MAAM,iBAAiB,GAAG,WAAW,CAAC,IAAI,EAAE,YAAY,EAAE,qBAAqB,CAAC,CAAA;IAEhF,MAAM,kBAAkB,GAAG,iBAAiB,CAAA;IAC5C,MAAM,gBAAgB,GAAG,iBAAiB,GAAG,EAAE,CAAA;IAE/C,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE,KAAK,CAAC,kBAAkB,CAAC,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAA;IAE3F,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,QAAQ,CAAC;QACxC,OAAO,EAAE,wBAAwB,CAAC,gBAAgB,CAAC,QAAQ,CAAkB;QAC7E,WAAW,EAAE,KAAK;QAClB,WAAW;KACZ,CAAC,CAAA;IAEF,MAAM,mBAAmB,GAAG,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;IACrE,MAAM,YAAY,GAAG,KAAK,CAAC,mBAAmB,CAAC,CAAA;IAE/C,MAAM,mBAAmB,GAAG,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAC3F,MAAM,YAAY,GAAG,KAAK,CAAC,mBAAmB,CAAC,CAAA;IAE/C,OAAO,CAAC,YAAY,EAAE,YAAY,CAAC,CAAA;AACrC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/votemarket/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,4 @@
1
+ import type { BatchMetaDataCommon } from '../types.js';
2
+ declare const curveGaugeRewardsData: BatchMetaDataCommon;
3
+ export default curveGaugeRewardsData;
4
+ //# sourceMappingURL=curveGaugeRewardsData.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"curveGaugeRewardsData.d.ts","sourceRoot":"","sources":["../../../../src/bytecodes/gaugeManager/curveGaugeRewardsData.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAEtD,QAAA,MAAM,qBAAqB,EAAE,mBAkC5B,CAAA;AAED,eAAe,qBAAqB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"batchCampaigns.d.ts","sourceRoot":"","sources":["../../../../src/bytecodes/votemarket/batchCampaigns.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAEhD,QAAA,MAAM,cAAc,EAAE,aAwDrB,CAAA;AAED,eAAe,cAAc,CAAA"}
1
+ {"version":3,"file":"batchCampaigns.d.ts","sourceRoot":"","sources":["../../../../src/bytecodes/votemarket/batchCampaigns.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAEhD,QAAA,MAAM,cAAc,EAAE,aAkErB,CAAA;AAED,eAAe,cAAc,CAAA"}
@@ -0,0 +1,4 @@
1
+ import type { BatchMetaData } from '../types.js';
2
+ declare const batchClaimableData: BatchMetaData;
3
+ export default batchClaimableData;
4
+ //# sourceMappingURL=batchClaimableData.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"batchClaimableData.d.ts","sourceRoot":"","sources":["../../../../src/bytecodes/votemarket/batchClaimableData.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAEhD,QAAA,MAAM,kBAAkB,EAAE,aAmBzB,CAAA;AAED,eAAe,kBAAkB,CAAA"}
@@ -0,0 +1,4 @@
1
+ import type { BatchMetaData } from '../types.js';
2
+ declare const batchGaugesWeight: BatchMetaData;
3
+ export default batchGaugesWeight;
4
+ //# sourceMappingURL=batchGaugesWeight.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"batchGaugesWeight.d.ts","sourceRoot":"","sources":["../../../../src/bytecodes/votemarket/batchGaugesWeight.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAEhD,QAAA,MAAM,iBAAiB,EAAE,aAUxB,CAAA;AAED,eAAe,iBAAiB,CAAA"}
@@ -0,0 +1,4 @@
1
+ import type { BatchMetaData } from '../types.js';
2
+ declare const batchVotes: BatchMetaData;
3
+ export default batchVotes;
4
+ //# sourceMappingURL=batchVotes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"batchVotes.d.ts","sourceRoot":"","sources":["../../../../src/bytecodes/votemarket/batchVotes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAEhD,QAAA,MAAM,UAAU,EAAE,aAUjB,CAAA;AAED,eAAe,UAAU,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"batchCurveGaugesMetadata.d.ts","sourceRoot":"","sources":["../../../../../src/bytecodes/votemarket/curve/batchCurveGaugesMetadata.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAgDnD,QAAA,MAAM,wBAAwB,EAAE,aAgB/B,CAAA;AAED,eAAe,wBAAwB,CAAA"}
1
+ {"version":3,"file":"batchCurveGaugesMetadata.d.ts","sourceRoot":"","sources":["../../../../../src/bytecodes/votemarket/curve/batchCurveGaugesMetadata.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAiDnD,QAAA,MAAM,wBAAwB,EAAE,aAgB/B,CAAA;AAED,eAAe,wBAAwB,CAAA"}
@@ -0,0 +1,25 @@
1
+ export type GmGaugeData = {
2
+ name: string;
3
+ symbol: string;
4
+ manager: string;
5
+ managerFromGaugeManager: string;
6
+ transferringManager: string;
7
+ rewardCount: number;
8
+ rewardTokens: {
9
+ token: string;
10
+ distributor: string;
11
+ periodFinish: number;
12
+ rate: string;
13
+ lastUpdate: number;
14
+ integral: string;
15
+ }[];
16
+ };
17
+ interface GmFetchGaugeProps {
18
+ gaugeManager: string;
19
+ gauge: string;
20
+ chainId: number;
21
+ rpc: string;
22
+ }
23
+ export declare const gmFetchGauge: ({ gaugeManager, gauge, chainId, rpc, }: GmFetchGaugeProps) => Promise<GmGaugeData | undefined>;
24
+ export {};
25
+ //# sourceMappingURL=gmFetchGauge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gmFetchGauge.d.ts","sourceRoot":"","sources":["../../../../src/gaugeManager/curve/gmFetchGauge.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,uBAAuB,EAAE,MAAM,CAAA;IAC/B,mBAAmB,EAAE,MAAM,CAAA;IAC3B,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE;QACZ,KAAK,EAAE,MAAM,CAAA;QACb,WAAW,EAAE,MAAM,CAAA;QACnB,YAAY,EAAE,MAAM,CAAA;QACpB,IAAI,EAAE,MAAM,CAAA;QACZ,UAAU,EAAE,MAAM,CAAA;QAClB,QAAQ,EAAE,MAAM,CAAA;KACjB,EAAE,CAAA;CACJ,CAAA;AAED,UAAU,iBAAiB;IACzB,YAAY,EAAE,MAAM,CAAA;IACpB,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,MAAM,CAAA;IACf,GAAG,EAAE,MAAM,CAAA;CACZ;AAED,eAAO,MAAM,YAAY,2CAKtB,iBAAiB,KAAG,OAAO,CAAC,WAAW,GAAG,SAAS,CAkCrD,CAAA"}
@@ -1,5 +1,7 @@
1
1
  export { getPricesFromLlama, getPricesFromGeckoTerminal } from './prices.js';
2
2
  export * from './sdt.js';
3
+ export { rpcCall, batchJsonRpc } from './utils.js';
4
+ export type { BatchJsonRpcArgs } from './utils.js';
3
5
  export { fetchSdt } from './sdt/fetch.js';
4
6
  export { fetchLockers } from './lockers/fetch/index.js';
5
7
  export { getUserCherries, getCherriesLeaderBoard, getUserSnapshotCherries } from './lockers/utils/getCherries.js';
@@ -23,7 +25,15 @@ export { fetchPendle } from './strategies/pendle/fetch.js';
23
25
  export { buildPendleStrategies } from './strategies/pendle/build.js';
24
26
  export { default as getPendleApiData } from './strategies/pendle/getPendleApiData.js';
25
27
  export { fetchCampaigns } from './votemarket/fetchCampaigns.js';
28
+ export type { Campaign } from './votemarket/types.js';
26
29
  export { fetchCurveGauges } from './votemarket/curve/fetchCurveGauges.js';
27
30
  export { fetchCurveUserVotes } from './votemarket/curve/fetchCurveUserVotes.js';
28
31
  export { fetchSnapshotUserData } from './votemarket/curve/fetchSnapshotUserData.js';
32
+ export { fetchEpochsVotes } from './votemarket/fetchEpochVotes.js';
33
+ export { fetchClaimableData } from './votemarket/fetchClaimableData.js';
34
+ export { generateBlockProof } from './votemarket/generateProofs/getBlockProof.js';
35
+ export { generateGaugeProof } from './votemarket/generateProofs/getGaugeProof.js';
36
+ export { generateUserProof } from './votemarket/generateProofs/getUserProof.js';
37
+ export { gmFetchGauge } from './gaugeManager/curve/gmFetchGauge.js';
38
+ export type { GmGaugeData } from './gaugeManager/curve/gmFetchGauge.js';
29
39
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kBAAkB,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAA;AAC5E,cAAc,UAAU,CAAA;AAKxB,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAKzC,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AACvD,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAA;AAKjH,cAAc,6BAA6B,CAAA;AAG3C,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAA;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,mCAAmC,CAAA;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,0DAA0D,CAAA;AAC1F,OAAO,EAAE,gBAAgB,EAAE,MAAM,2DAA2D,CAAA;AAC5F,OAAO,EAAE,qBAAqB,EAAE,MAAM,gEAAgE,CAAA;AAGtG,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AAGxD,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAA;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAA;AAG9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAA;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,mCAAmC,CAAA;AAG9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAA;AAC1E,OAAO,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAA;AAC9E,OAAO,EAAE,+BAA+B,EAAE,MAAM,wCAAwC,CAAA;AACxF,OAAO,EAAE,mBAAmB,EAAE,MAAM,oDAAoD,CAAA;AACxF,OAAO,EAAE,qBAAqB,EAAE,MAAM,yDAAyD,CAAA;AAG/F,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAA;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAA;AACpE,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,yCAAyC,CAAA;AASrF,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAA;AAG/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAA;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAA;AAC/E,OAAO,EAAE,qBAAqB,EAAE,MAAM,6CAA6C,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kBAAkB,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAA;AAC5E,cAAc,UAAU,CAAA;AACxB,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAClD,YAAY,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAA;AAKlD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAKzC,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AACvD,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAA;AAKjH,cAAc,6BAA6B,CAAA;AAG3C,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAA;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,mCAAmC,CAAA;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,0DAA0D,CAAA;AAC1F,OAAO,EAAE,gBAAgB,EAAE,MAAM,2DAA2D,CAAA;AAC5F,OAAO,EAAE,qBAAqB,EAAE,MAAM,gEAAgE,CAAA;AAGtG,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AAGxD,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAA;AACxE,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAA;AAG9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAA;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,mCAAmC,CAAA;AAG9D,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAA;AAC1E,OAAO,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAA;AAC9E,OAAO,EAAE,+BAA+B,EAAE,MAAM,wCAAwC,CAAA;AACxF,OAAO,EAAE,mBAAmB,EAAE,MAAM,oDAAoD,CAAA;AACxF,OAAO,EAAE,qBAAqB,EAAE,MAAM,yDAAyD,CAAA;AAG/F,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAA;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAA;AACpE,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,yCAAyC,CAAA;AASrF,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAA;AAC/D,YAAY,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAA;AAGrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wCAAwC,CAAA;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAA;AAC/E,OAAO,EAAE,qBAAqB,EAAE,MAAM,6CAA6C,CAAA;AAGnF,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAA;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAA;AAIvE,OAAO,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAA;AACjF,OAAO,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAA;AACjF,OAAO,EAAE,iBAAiB,EAAE,MAAM,6CAA6C,CAAA;AAS/E,OAAO,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAA;AACnE,YAAY,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"getPancakeV3Positions.d.ts","sourceRoot":"","sources":["../../../../../src/strategies/pancakeswap/fetch/getPancakeV3Positions.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,qBAAqB,QAAe,MAAM,WAAW,MAAM,iBAevE,CAAA"}
1
+ {"version":3,"file":"getPancakeV3Positions.d.ts","sourceRoot":"","sources":["../../../../../src/strategies/pancakeswap/fetch/getPancakeV3Positions.ts"],"names":[],"mappings":"AAWA,eAAO,MAAM,qBAAqB,QAAe,MAAM,WAAW,MAAM,iBAqCvE,CAAA"}
@@ -10,12 +10,16 @@ export declare const getTokenInfo: (coinData: any, address: string, chainId?: nu
10
10
  decimals: number;
11
11
  } | Token;
12
12
  export declare const projectWorkingBalance: (veBalance: bigint, veTotal: bigint, balance: bigint, totalSupply: bigint) => bigint;
13
+ export declare const rpcGetLastBlockTimetstamp: (rpc: string) => Promise<{
14
+ number: number;
15
+ timestamp: number;
16
+ }>;
13
17
  interface RpcCallArgs {
14
18
  to: string;
15
19
  data: string;
16
20
  }
17
21
  export declare const rpcCall: (rpc: string, params: RpcCallArgs[]) => Promise<any>;
18
- interface BatchJsonRpcArgs {
22
+ export interface BatchJsonRpcArgs {
19
23
  rpc: string;
20
24
  calls: string[];
21
25
  outputTypeAbi: any | any[];
@@ -23,6 +27,15 @@ interface BatchJsonRpcArgs {
23
27
  callsKey: string;
24
28
  }
25
29
  export declare const batchJsonRpc: (args: BatchJsonRpcArgs) => Promise<any>;
30
+ interface BatchJsonRpcWithBlocksArgs {
31
+ rpc: string;
32
+ call: string;
33
+ outputTypeAbi: any | any[];
34
+ parse?: boolean;
35
+ callsKey: string;
36
+ blocks: number[];
37
+ }
38
+ export declare const batchJsonRpcWithBlocks: (args: BatchJsonRpcWithBlocksArgs) => Promise<any>;
26
39
  export interface Call {
27
40
  address: string;
28
41
  name: string;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAQjD,eAAO,MAAM,eAAe,aAAc,MAAM,eAAe,MAAM,YAMe,CAAA;AAEpF,eAAO,MAAM,iBAAiB,UAAW,GAAG,UAAU,GAAG,cAAc,OAAO,SAAS,MAAM,UAAU,GAAG,WAezG,CAAA;AAED,eAAO,MAAM,EAAE,YAAa,MAAM,KAAG,MAA+B,CAAA;AAEpE,eAAO,MAAM,QAAQ,eAAgB,MAAM,cAAc,MAAM,KAAG,OAA4C,CAAA;AAE9G,eAAO,MAAM,YAAY,aACb,GAAG,WACJ,MAAM,YACN,MAAM,KACd;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAAG,KAiBxE,CAAA;AAED,eAAO,MAAM,qBAAqB,cAAe,MAAM,WAAW,MAAM,WAAW,MAAM,eAAe,MAAM,WAS7G,CAAA;AAED,UAAU,WAAW;IACnB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;CACb;AAED,eAAO,MAAM,OAAO,QAAe,MAAM,UAAU,WAAW,EAAE,iBAiB/D,CAAA;AAED,UAAU,gBAAgB;IACxB,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,aAAa,EAAE,GAAG,GAAG,GAAG,EAAE,CAAA;IAC1B,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,eAAO,MAAM,YAAY,SAAgB,gBAAgB,iBAkCxD,CAAA;AAED,MAAM,WAAW,IAAI;IACnB,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,CAAC,EAAE,GAAG,EAAE,CAAA;CACf;AAED,eAAO,MAAM,SAAS,aAAoB,GAAG,SAAS,IAAI,EAAE,OAAO,SAAS,GAAG,EAAE,iBAWhF,CAAA;AAED,eAAO,MAAM,QAAQ,UAAiB,MAAM,UAAU,MAAM,sBAAsB,GAAG,KAAG,OAAO,CAAC,GAAG,CAelG,CAAA;AAED,eAAO,MAAM,OAAO,QAAe,MAAM,SAAS,MAAM,WAAW,GAAG,sBAAsB,GAAG,KAAG,OAAO,CAAC,GAAG,CAO5G,CAAA;AAED,MAAM,WAAW,cAAe,SAAQ,IAAI;IAC1C,OAAO,EAAE,MAAM,CAAA;CAChB;AAED,eAAO,MAAM,mBAAmB,UAAiB,cAAc,EAAE,OAAO,SAAS,GAAG,EAAE,gBAwBrF,CAAA;AAED,eAAO,MAAM,cAAc,aAAc,MAAM,QAAQ,MAAM,KAAG,MAAwC,CAAA"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAQjD,eAAO,MAAM,eAAe,aAAc,MAAM,eAAe,MAAM,YAMe,CAAA;AAEpF,eAAO,MAAM,iBAAiB,UAAW,GAAG,UAAU,GAAG,cAAc,OAAO,SAAS,MAAM,UAAU,GAAG,WAezG,CAAA;AAED,eAAO,MAAM,EAAE,YAAa,MAAM,KAAG,MAA+B,CAAA;AAEpE,eAAO,MAAM,QAAQ,eAAgB,MAAM,cAAc,MAAM,KAAG,OAA4C,CAAA;AAE9G,eAAO,MAAM,YAAY,aACb,GAAG,WACJ,MAAM,YACN,MAAM,KACd;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,GAAG,KAiBxE,CAAA;AAED,eAAO,MAAM,qBAAqB,cAAe,MAAM,WAAW,MAAM,WAAW,MAAM,eAAe,MAAM,WAS7G,CAAA;AAED,eAAO,MAAM,yBAAyB,QAAe,MAAM;;;EAkB1D,CAAA;AAED,UAAU,WAAW;IACnB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;CACb;AAED,eAAO,MAAM,OAAO,QAAe,MAAM,UAAU,WAAW,EAAE,iBAiB/D,CAAA;AAED,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,aAAa,EAAE,GAAG,GAAG,GAAG,EAAE,CAAA;IAC1B,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,eAAO,MAAM,YAAY,SAAgB,gBAAgB,iBAkCxD,CAAA;AAED,UAAU,0BAA0B;IAClC,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,CAAA;IACZ,aAAa,EAAE,GAAG,GAAG,GAAG,EAAE,CAAA;IAC1B,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,EAAE,CAAA;CACjB;AAED,eAAO,MAAM,sBAAsB,SAAgB,0BAA0B,iBAkC5E,CAAA;AAED,MAAM,WAAW,IAAI;IACnB,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,CAAC,EAAE,GAAG,EAAE,CAAA;CACf;AAED,eAAO,MAAM,SAAS,aAAoB,GAAG,SAAS,IAAI,EAAE,OAAO,SAAS,GAAG,EAAE,iBAWhF,CAAA;AAED,eAAO,MAAM,QAAQ,UAAiB,MAAM,UAAU,MAAM,sBAAsB,GAAG,KAAG,OAAO,CAAC,GAAG,CAelG,CAAA;AAED,eAAO,MAAM,OAAO,QAAe,MAAM,SAAS,MAAM,WAAW,GAAG,sBAAsB,GAAG,KAAG,OAAO,CAAC,GAAG,CAO5G,CAAA;AAED,MAAM,WAAW,cAAe,SAAQ,IAAI;IAC1C,OAAO,EAAE,MAAM,CAAA;CAChB;AAED,eAAO,MAAM,mBAAmB,UAAiB,cAAc,EAAE,OAAO,SAAS,GAAG,EAAE,gBAwBrF,CAAA;AAED,eAAO,MAAM,cAAc,aAAc,MAAM,QAAQ,MAAM,KAAG,MAAwC,CAAA"}
@@ -1,4 +1,4 @@
1
- export declare const GAUGES_CHUNK_SIZE = 35;
1
+ export declare const GAUGES_CHUNK_SIZE = 30;
2
2
  export declare const GAUGES_METADATA_CHUNK_SIZE = 10;
3
3
  export declare const NOT_LP_GAUGES: {
4
4
  42: string;
@@ -1 +1 @@
1
- {"version":3,"file":"fetchCurveGauges.d.ts","sourceRoot":"","sources":["../../../../src/votemarket/curve/fetchCurveGauges.ts"],"names":[],"mappings":"AASA,MAAM,MAAM,KAAK,GAAG;IAClB,KAAK,EAAE,MAAM,CAAA;IACb,aAAa,EAAE,MAAM,CAAA;IACrB,cAAc,EAAE,MAAM,CAAA;IACtB,oBAAoB,EAAE,MAAM,CAAA;CAC7B,CAAA;AAED,MAAM,MAAM,UAAU,GAAG;IAAE,iBAAiB,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,KAAK,EAAE,CAAA;CAAE,CAAA;AAEvE,KAAK,IAAI,GAAG;IACV,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,gBAAgB,QAAe,IAAI,KAAG,OAAO,CAAC,UAAU,CAsJpE,CAAA"}
1
+ {"version":3,"file":"fetchCurveGauges.d.ts","sourceRoot":"","sources":["../../../../src/votemarket/curve/fetchCurveGauges.ts"],"names":[],"mappings":"AAUA,MAAM,MAAM,KAAK,GAAG;IAClB,KAAK,EAAE,MAAM,CAAA;IACb,aAAa,EAAE,MAAM,CAAA;IACrB,cAAc,EAAE,MAAM,CAAA;IACtB,oBAAoB,EAAE,MAAM,CAAA;CAC7B,CAAA;AAED,MAAM,MAAM,UAAU,GAAG;IAAE,iBAAiB,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,KAAK,EAAE,CAAA;CAAE,CAAA;AAEvE,KAAK,IAAI,GAAG;IACV,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,gBAAgB,QAAe,IAAI,KAAG,OAAO,CAAC,UAAU,CAwJpE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"fetchSnapshotUserData.d.ts","sourceRoot":"","sources":["../../../../src/votemarket/curve/fetchSnapshotUserData.ts"],"names":[],"mappings":"AAKA,UAAU,gBAAgB;IACxB,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE;QACL,UAAU,EAAE,gBAAgB,EAAE,CAAA;KAC/B,CAAA;CACF;AAED,UAAU,iBAAiB;IACzB,QAAQ,EAAE,gBAAgB,CAAA;IAC1B,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;CACd;AAED,UAAU,gBAAgB;IACxB,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,GAAG,CAAA;CACZ;AAkCD,eAAO,MAAM,qBAAqB,gBACnB,MAAM,UACX,MAAM,EAAE,KACf,OAAO,CAAC,iBAAiB,EAAE,GAAG,SAAS,CAgDzC,CAAA"}
1
+ {"version":3,"file":"fetchSnapshotUserData.d.ts","sourceRoot":"","sources":["../../../../src/votemarket/curve/fetchSnapshotUserData.ts"],"names":[],"mappings":"AAKA,UAAU,gBAAgB;IACxB,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;IAChB,KAAK,EAAE;QACL,UAAU,EAAE,gBAAgB,EAAE,CAAA;KAC/B,CAAA;CACF;AAED,UAAU,iBAAiB;IACzB,QAAQ,EAAE,gBAAgB,CAAA;IAC1B,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;CACd;AAED,UAAU,gBAAgB;IACxB,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,EAAE,GAAG,CAAA;CACZ;AAkCD,eAAO,MAAM,qBAAqB,gBACnB,MAAM,UACX,MAAM,EAAE,KACf,OAAO,CAAC,iBAAiB,EAAE,GAAG,SAAS,CAiDzC,CAAA"}
@@ -1,19 +1,12 @@
1
+ import type { Campaign } from './types.js';
1
2
  export declare const CAMPAIGNS_CHUNK_SIZE = 10;
3
+ export declare const CLAIM_WINDOW_LENGTH = 24;
4
+ export declare const CLOSE_WINDOW_LENGTH = 4;
2
5
  interface FetchCampaignsProps {
3
6
  platform: string;
4
7
  chainId: number;
5
8
  rpc: string;
6
9
  }
7
- export type Gauge = {
8
- gauge: string;
9
- inflationRate: string;
10
- relativeWeight: string;
11
- futureRelativeWeight: string;
12
- };
13
- export type GaugesData = {
14
- totalGaugesWeight: string;
15
- gauges: Gauge[];
16
- };
17
- export declare const fetchCampaigns: ({ platform, chainId, rpc }: FetchCampaignsProps) => Promise<any>;
10
+ export declare const fetchCampaigns: ({ platform, chainId, rpc }: FetchCampaignsProps) => Promise<Campaign[]>;
18
11
  export {};
19
12
  //# sourceMappingURL=fetchCampaigns.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"fetchCampaigns.d.ts","sourceRoot":"","sources":["../../../src/votemarket/fetchCampaigns.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,oBAAoB,KAAK,CAAA;AAEtC,UAAU,mBAAmB;IAC3B,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;IACf,GAAG,EAAE,MAAM,CAAA;CACZ;AAED,MAAM,MAAM,KAAK,GAAG;IAClB,KAAK,EAAE,MAAM,CAAA;IACb,aAAa,EAAE,MAAM,CAAA;IACrB,cAAc,EAAE,MAAM,CAAA;IACtB,oBAAoB,EAAE,MAAM,CAAA;CAC7B,CAAA;AAED,MAAM,MAAM,UAAU,GAAG;IAAE,iBAAiB,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,KAAK,EAAE,CAAA;CAAE,CAAA;AAEvE,eAAO,MAAM,cAAc,+BAAsC,mBAAmB,KAAG,OAAO,CAAC,GAAG,CA0FjG,CAAA"}
1
+ {"version":3,"file":"fetchCampaigns.d.ts","sourceRoot":"","sources":["../../../src/votemarket/fetchCampaigns.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,QAAQ,EAA0B,MAAM,YAAY,CAAA;AAElE,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,OAAO,EAAE,MAAM,CAAA;IACf,GAAG,EAAE,MAAM,CAAA;CACZ;AA8DD,eAAO,MAAM,cAAc,+BAAsC,mBAAmB,KAAG,OAAO,CAAC,QAAQ,EAAE,CA6JxG,CAAA"}
@@ -0,0 +1,6 @@
1
+ type Rpcs = {
2
+ [chainId: number]: string;
3
+ };
4
+ export declare const fetchClaimableData: (rpc: Rpcs, platform: string, user: string, campaigns: number[], userVotes: any[][]) => Promise<any>;
5
+ export {};
6
+ //# sourceMappingURL=fetchClaimableData.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetchClaimableData.d.ts","sourceRoot":"","sources":["../../../src/votemarket/fetchClaimableData.ts"],"names":[],"mappings":"AAOA,KAAK,IAAI,GAAG;IACV,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAA;CAC1B,CAAA;AAID,eAAO,MAAM,kBAAkB,QACxB,IAAI,YACC,MAAM,QACV,MAAM,aACD,MAAM,EAAE,aACR,GAAG,EAAE,EAAE,iBA+BnB,CAAA"}
@@ -0,0 +1,9 @@
1
+ type Rpcs = {
2
+ [chainId: number]: string;
3
+ };
4
+ export declare const fetchEpochsVotes: (rpc: Rpcs, gaugeController: string, user: string, epochs: number[]) => Promise<{
5
+ votes: any;
6
+ epoch: number | undefined;
7
+ }[]>;
8
+ export {};
9
+ //# sourceMappingURL=fetchEpochVotes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetchEpochVotes.d.ts","sourceRoot":"","sources":["../../../src/votemarket/fetchEpochVotes.ts"],"names":[],"mappings":"AAOA,KAAK,IAAI,GAAG;IACV,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAA;CAC1B,CAAA;AAED,eAAO,MAAM,gBAAgB,QAAe,IAAI,mBAAmB,MAAM,QAAQ,MAAM,UAAU,MAAM,EAAE;;;IAoCxG,CAAA"}
@@ -0,0 +1,32 @@
1
+ export declare const GaugeControllerConstants: {
2
+ GAUGES_SLOTS: {
3
+ curve: {
4
+ pointWeights: number;
5
+ lastUserVote: number;
6
+ voteUserSlope: number;
7
+ };
8
+ balancer: {
9
+ pointWeights: number;
10
+ lastUserVote: number;
11
+ voteUserSlope: number;
12
+ };
13
+ frax: {
14
+ pointWeights: number;
15
+ lastUserVote: number;
16
+ voteUserSlope: number;
17
+ };
18
+ fxn: {
19
+ pointWeights: number;
20
+ lastUserVote: number;
21
+ voteUserSlope: number;
22
+ };
23
+ };
24
+ GAUGE_CONTROLLER: {
25
+ curve: string;
26
+ balancer: string;
27
+ frax: string;
28
+ fxn: string;
29
+ };
30
+ };
31
+ export declare const BLOCK_HEADER: string[];
32
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../src/votemarket/generateProofs/config.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6BpC,CAAA;AAED,eAAO,MAAM,YAAY,UAqBxB,CAAA"}
@@ -0,0 +1,6 @@
1
+ type Rpcs = {
2
+ [chainId: number]: string;
3
+ };
4
+ export declare function generateBlockProof(rpc: Rpcs, protocol: string, gaugeAddress: `0x${string}`, currentPeriod: bigint, blockNumber: bigint): Promise<[string, string]>;
5
+ export {};
6
+ //# sourceMappingURL=getBlockProof.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getBlockProof.d.ts","sourceRoot":"","sources":["../../../../src/votemarket/generateProofs/getBlockProof.ts"],"names":[],"mappings":"AAKA,KAAK,IAAI,GAAG;IACV,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAA;CAC1B,CAAA;AAoBD,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,IAAI,EACT,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,KAAK,MAAM,EAAE,EAC3B,aAAa,EAAE,MAAM,EACrB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAc3B"}
@@ -0,0 +1,6 @@
1
+ type Rpcs = {
2
+ [chainId: number]: string;
3
+ };
4
+ export declare function generateGaugeProof(rpc: Rpcs, protocol: string, gaugeAddress: `0x${string}`, currentPeriod: bigint, blockNumber: bigint): Promise<[string, string]>;
5
+ export {};
6
+ //# sourceMappingURL=getGaugeProof.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getGaugeProof.d.ts","sourceRoot":"","sources":["../../../../src/votemarket/generateProofs/getGaugeProof.ts"],"names":[],"mappings":"AAIA,KAAK,IAAI,GAAG;IACV,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAA;CAC1B,CAAA;AAwBD,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,IAAI,EACT,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,KAAK,MAAM,EAAE,EAC3B,aAAa,EAAE,MAAM,EACrB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAsC3B"}
@@ -0,0 +1,6 @@
1
+ type Rpcs = {
2
+ [chainId: number]: string;
3
+ };
4
+ export declare function generateUserProof(rpc: Rpcs, protocol: string, gaugeAddress: `0x${string}`, user: `0x${string}`, blockNumber: bigint): Promise<[string, string]>;
5
+ export {};
6
+ //# sourceMappingURL=getUserProof.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getUserProof.d.ts","sourceRoot":"","sources":["../../../../src/votemarket/generateProofs/getUserProof.ts"],"names":[],"mappings":"AAIA,KAAK,IAAI,GAAG;IACV,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAA;CAC1B,CAAA;AAwBD,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,IAAI,EACT,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,KAAK,MAAM,EAAE,EAC3B,IAAI,EAAE,KAAK,MAAM,EAAE,EACnB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAqC3B"}
@@ -0,0 +1,63 @@
1
+ export type Period = {
2
+ rewardPerPeriod: string;
3
+ rewardPerVote: string;
4
+ leftover: string;
5
+ updated: boolean;
6
+ };
7
+ export type Campaign = {
8
+ id: number;
9
+ chainId: number;
10
+ gauge: string;
11
+ gaugeChainId: number;
12
+ manager: string;
13
+ rewardToken: {
14
+ name: string;
15
+ symbol: string;
16
+ address: string;
17
+ decimals: number;
18
+ chainId: number;
19
+ };
20
+ rewardTokenPrice: number;
21
+ numberOfPeriods: number;
22
+ maxRewardPerVote: string;
23
+ totalRewardAmount: string;
24
+ totalDistributed: string;
25
+ startTimestamp: number;
26
+ endTimestamp: number;
27
+ hook: string;
28
+ isClosed: boolean;
29
+ addresses: string[];
30
+ isWhitelist: boolean;
31
+ isBlacklist: boolean;
32
+ previousPeriod: Period;
33
+ currentPeriod: Period;
34
+ periodLeft: number;
35
+ status: {
36
+ voteOpen: boolean;
37
+ voteClosed: boolean;
38
+ claimOpen: boolean;
39
+ claimClosed: boolean;
40
+ expired: boolean;
41
+ };
42
+ claimableAmount?: string;
43
+ };
44
+ export type RawPeriod = {
45
+ rewardPerPeriod: bigint;
46
+ rewardPerVote: bigint;
47
+ leftover: bigint;
48
+ updated: boolean;
49
+ };
50
+ export type RawCampaign = {
51
+ chainId: bigint;
52
+ endTimestamp: bigint;
53
+ gauge: string;
54
+ hook: string;
55
+ manager: string;
56
+ maxRewardPerVote: bigint;
57
+ numberOfPeriods: number;
58
+ rewardToken: bigint;
59
+ startTimestamp: bigint;
60
+ totalDistributed: bigint;
61
+ totalRewardAmount: bigint;
62
+ };
63
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/votemarket/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,MAAM,GAAG;IACnB,eAAe,EAAE,MAAM,CAAA;IACvB,aAAa,EAAE,MAAM,CAAA;IACrB,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,OAAO,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,QAAQ,GAAG;IACrB,EAAE,EAAE,MAAM,CAAA;IACV,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;IACb,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,MAAM,CAAA;IACf,WAAW,EAAE;QACX,IAAI,EAAE,MAAM,CAAA;QACZ,MAAM,EAAE,MAAM,CAAA;QACd,OAAO,EAAE,MAAM,CAAA;QACf,QAAQ,EAAE,MAAM,CAAA;QAChB,OAAO,EAAE,MAAM,CAAA;KAChB,CAAA;IACD,gBAAgB,EAAE,MAAM,CAAA;IACxB,eAAe,EAAE,MAAM,CAAA;IACvB,gBAAgB,EAAE,MAAM,CAAA;IACxB,iBAAiB,EAAE,MAAM,CAAA;IACzB,gBAAgB,EAAE,MAAM,CAAA;IACxB,cAAc,EAAE,MAAM,CAAA;IACtB,YAAY,EAAE,MAAM,CAAA;IACpB,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,EAAE,OAAO,CAAA;IACjB,SAAS,EAAE,MAAM,EAAE,CAAA;IACnB,WAAW,EAAE,OAAO,CAAA;IACpB,WAAW,EAAE,OAAO,CAAA;IACpB,cAAc,EAAE,MAAM,CAAA;IACtB,aAAa,EAAE,MAAM,CAAA;IACrB,UAAU,EAAE,MAAM,CAAA;IAClB,MAAM,EAAE;QACN,QAAQ,EAAE,OAAO,CAAA;QACjB,UAAU,EAAE,OAAO,CAAA;QACnB,SAAS,EAAE,OAAO,CAAA;QAClB,WAAW,EAAE,OAAO,CAAA;QACpB,OAAO,EAAE,OAAO,CAAA;KACjB,CAAA;IACD,eAAe,CAAC,EAAE,MAAM,CAAA;CACzB,CAAA;AAID,MAAM,MAAM,SAAS,GAAG;IACtB,eAAe,EAAE,MAAM,CAAA;IACvB,aAAa,EAAE,MAAM,CAAA;IACrB,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,OAAO,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,OAAO,EAAE,MAAM,CAAA;IACf,YAAY,EAAE,MAAM,CAAA;IACpB,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,gBAAgB,EAAE,MAAM,CAAA;IACxB,eAAe,EAAE,MAAM,CAAA;IACvB,WAAW,EAAE,MAAM,CAAA;IACnB,cAAc,EAAE,MAAM,CAAA;IACtB,gBAAgB,EAAE,MAAM,CAAA;IACxB,iBAAiB,EAAE,MAAM,CAAA;CAC1B,CAAA"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@stake-dao/reader",
3
3
  "description": "",
4
- "version": "0.4.26",
4
+ "version": "0.4.28",
5
5
  "license": "AGPL-3.0-only",
6
6
  "repository": {
7
7
  "type": "git",
@@ -0,0 +1,39 @@
1
+ import type { BatchMetaDataCommon } from '../types.js'
2
+
3
+ const curveGaugeRewardsData: BatchMetaDataCommon = {
4
+ bytecode:
5
+ '0x608060405234801561000f575f80fd5b50604051610e98380380610e9883398181016040528101906100319190610819565b5f8290505f8490505f8273ffffffffffffffffffffffffffffffffffffffff1663963c94b96040518163ffffffff1660e01b8152600401602060405180830381865afa158015610083573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906100a79190610869565b90506100b16106a4565b8373ffffffffffffffffffffffffffffffffffffffff166306fdde036040518163ffffffff1660e01b81526004015f60405180830381865afa1580156100f9573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f8201168201806040525081019061012191906109d0565b815f01819052508373ffffffffffffffffffffffffffffffffffffffff166395d89b416040518163ffffffff1660e01b81526004015f60405180830381865afa158015610170573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f8201168201806040525081019061019891906109d0565b8160200181905250818160400181815250508373ffffffffffffffffffffffffffffffffffffffff1663481c6a756040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101f3573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102179190610a17565b816060019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508273ffffffffffffffffffffffffffffffffffffffff1663f72332d9876040518263ffffffff1660e01b81526004016102879190610a51565b602060405180830381865afa1580156102a2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102c69190610a17565b8160a0019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508273ffffffffffffffffffffffffffffffffffffffff1663fdff9b4d876040518263ffffffff1660e01b81526004016103369190610a51565b602060405180830381865afa158015610351573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103759190610a17565b8160c0019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508167ffffffffffffffff8111156103c6576103c56108ac565b5b6040519080825280602002602001820160405280156103ff57816020015b6103ec61071f565b8152602001906001900390816103e45790505b5081608001819052505f5b828110156106755761041a61071f565b5f8673ffffffffffffffffffffffffffffffffffffffff166354c49fe9846040518263ffffffff1660e01b81526004016104549190610a79565b602060405180830381865afa15801561046f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104939190610a17565b90506001880361051c578673ffffffffffffffffffffffffffffffffffffffff166348e9c65e826040518263ffffffff1660e01b81526004016104d69190610a51565b60c060405180830381865afa1580156104f1573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105159190610b33565b915061060c565b5f8973ffffffffffffffffffffffffffffffffffffffff166348e9c65e836040518263ffffffff1660e01b81526004016105569190610a51565b60a060405180830381865afa158015610571573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105959190610be7565b9050805f0151836020019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505080602001518360400181815250508060400151836060018181525050806060015183608001818152505080608001518360a0018181525050505b80825f019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050818460800151848151811061065b5761065a610c12565b5b60200260200101819052505050808060010191505061040a565b505f816040516020016106889190610e77565b6040516020818303038152906040529050602081018059038082f35b6040518060e0016040528060608152602001606081526020015f81526020015f73ffffffffffffffffffffffffffffffffffffffff168152602001606081526020015f73ffffffffffffffffffffffffffffffffffffffff1681526020015f73ffffffffffffffffffffffffffffffffffffffff1681525090565b6040518060c001604052805f73ffffffffffffffffffffffffffffffffffffffff1681526020015f73ffffffffffffffffffffffffffffffffffffffff1681526020015f81526020015f81526020015f81526020015f81525090565b5f604051905090565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6107b58261078c565b9050919050565b6107c5816107ab565b81146107cf575f80fd5b50565b5f815190506107e0816107bc565b92915050565b5f819050919050565b6107f8816107e6565b8114610802575f80fd5b50565b5f81519050610813816107ef565b92915050565b5f805f606084860312156108305761082f610784565b5b5f61083d868287016107d2565b935050602061084e868287016107d2565b925050604061085f86828701610805565b9150509250925092565b5f6020828403121561087e5761087d610784565b5b5f61088b84828501610805565b91505092915050565b5f80fd5b5f80fd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6108e28261089c565b810181811067ffffffffffffffff82111715610901576109006108ac565b5b80604052505050565b5f61091361077b565b905061091f82826108d9565b919050565b5f67ffffffffffffffff82111561093e5761093d6108ac565b5b6109478261089c565b9050602081019050919050565b8281835e5f83830152505050565b5f61097461096f84610924565b61090a565b9050828152602081018484840111156109905761098f610898565b5b61099b848285610954565b509392505050565b5f82601f8301126109b7576109b6610894565b5b81516109c7848260208601610962565b91505092915050565b5f602082840312156109e5576109e4610784565b5b5f82015167ffffffffffffffff811115610a0257610a01610788565b5b610a0e848285016109a3565b91505092915050565b5f60208284031215610a2c57610a2b610784565b5b5f610a39848285016107d2565b91505092915050565b610a4b816107ab565b82525050565b5f602082019050610a645f830184610a42565b92915050565b610a73816107e6565b82525050565b5f602082019050610a8c5f830184610a6a565b92915050565b5f80fd5b5f60c08284031215610aab57610aaa610a92565b5b610ab560c061090a565b90505f610ac4848285016107d2565b5f830152506020610ad7848285016107d2565b6020830152506040610aeb84828501610805565b6040830152506060610aff84828501610805565b6060830152506080610b1384828501610805565b60808301525060a0610b2784828501610805565b60a08301525092915050565b5f60c08284031215610b4857610b47610784565b5b5f610b5584828501610a96565b91505092915050565b5f60a08284031215610b7357610b72610a92565b5b610b7d60a061090a565b90505f610b8c848285016107d2565b5f830152506020610b9f84828501610805565b6020830152506040610bb384828501610805565b6040830152506060610bc784828501610805565b6060830152506080610bdb84828501610805565b60808301525092915050565b5f60a08284031215610bfc57610bfb610784565b5b5f610c0984828501610b5e565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f610c6382610c3f565b610c6d8185610c49565b9350610c7d818560208601610954565b610c868161089c565b840191505092915050565b610c9a816107e6565b82525050565b610ca9816107ab565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b60c082015f820151610cec5f850182610ca0565b506020820151610cff6020850182610ca0565b506040820151610d126040850182610c91565b506060820151610d256060850182610c91565b506080820151610d386080850182610c91565b5060a0820151610d4b60a0850182610c91565b50505050565b5f610d5c8383610cd8565b60c08301905092915050565b5f602082019050919050565b5f610d7e82610caf565b610d888185610cb9565b9350610d9383610cc9565b805f5b83811015610dc3578151610daa8882610d51565b9750610db583610d68565b925050600181019050610d96565b5085935050505092915050565b5f60e083015f8301518482035f860152610dea8282610c59565b91505060208301518482036020860152610e048282610c59565b9150506040830151610e196040860182610c91565b506060830151610e2c6060860182610ca0565b5060808301518482036080860152610e448282610d74565b91505060a0830151610e5960a0860182610ca0565b5060c0830151610e6c60c0860182610ca0565b508091505092915050565b5f6020820190508181035f830152610e8f8184610dd0565b90509291505056fe',
6
+ inputType: ['address _gaugeManager, address _gauge, uint256 _chainId'],
7
+ outputTypeHr: [
8
+ 'struct ReturnData { uint256 rewardCount; address manager; Reward[] rewardTokens; address transferringManager; address managerFromGaugeManager; }',
9
+ 'struct Reward { address token; address distributor; uint256 period_finish; uint256 rate; uint256 last_update; uint256 integral; }',
10
+ ],
11
+ outputType: [
12
+ {
13
+ type: 'tuple',
14
+ name: 'returnData',
15
+ components: [
16
+ { type: 'string', name: 'name' },
17
+ { type: 'string', name: 'symbol' },
18
+ { type: 'uint256', name: 'rewardCount' },
19
+ { type: 'address', name: 'manager' },
20
+ {
21
+ type: 'tuple[]',
22
+ name: 'rewardTokens',
23
+ components: [
24
+ { type: 'address', name: 'token' },
25
+ { type: 'address', name: 'distributor' },
26
+ { type: 'uint256', name: 'period_finish' },
27
+ { type: 'uint256', name: 'rate' },
28
+ { type: 'uint256', name: 'last_update' },
29
+ { type: 'uint256', name: 'integral' },
30
+ ],
31
+ },
32
+ { type: 'address', name: 'transferringManager' },
33
+ { type: 'address', name: 'managerFromGaugeManager' },
34
+ ],
35
+ },
36
+ ],
37
+ }
38
+
39
+ export default curveGaugeRewardsData
@@ -1,9 +1,9 @@
1
1
  import type { BatchMetaData } from '../../types.js'
2
2
 
3
3
  const commonBytecode =
4
- '0x608060405234801561000f575f80fd5b50604051610a47380380610a47833981810160405281019061003191906104ea565b5f8390505f8390505f8273ffffffffffffffffffffffffffffffffffffffff166370a08231856040518263ffffffff1660e01b81526004016100739190610549565b602060405180830381865afa15801561008e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906100b29190610595565b90505f8167ffffffffffffffff8111156100cf576100ce6105c0565b5b60405190808252806020026020018201604052801561010857816020015b6100f56103fa565b8152602001906001900390816100ed5790505b5090505f5b828110156103cb575f8573ffffffffffffffffffffffffffffffffffffffff16632f745c5988846040518363ffffffff1660e01b81526004016101519291906105fc565b602060405180830381865afa15801561016c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101909190610595565b90505f8673ffffffffffffffffffffffffffffffffffffffff16633b1acf74836040518263ffffffff1660e01b81526004016101cc9190610623565b61012060405180830381865afa1580156101e8573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061020c91906107f3565b90506102166103fa565b8281610100018181525050815f0151815f01906fffffffffffffffffffffffffffffffff1690816fffffffffffffffffffffffffffffffff1681525050816020015181602001906fffffffffffffffffffffffffffffffff1690816fffffffffffffffffffffffffffffffff16815250508160400151816040019060020b908160020b815250508160600151816060019060020b908160020b8152505081608001518160800181815250508160a001518160a00181815250508160e001518160c00181815250508161010001518160e00181815250508673ffffffffffffffffffffffffffffffffffffffff1663b3060d36846040518263ffffffff1660e01b81526004016103259190610623565b602060405180830381865afa158015610340573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610364919061081f565b81610120019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050808585815181106103b0576103af61084a565b5b6020026020010181905250505050808060010191505061010d565b505f816040516020016103de9190610a26565b6040516020818303038152906040529050602081018059038082f35b6040518061014001604052805f6fffffffffffffffffffffffffffffffff1681526020015f6fffffffffffffffffffffffffffffffff1681526020015f60020b81526020015f60020b81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f73ffffffffffffffffffffffffffffffffffffffff1681525090565b5f604051905090565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6104b982610490565b9050919050565b6104c9816104af565b81146104d3575f80fd5b50565b5f815190506104e4816104c0565b92915050565b5f805f606084860312156105015761050061048c565b5b5f61050e868287016104d6565b935050602061051f868287016104d6565b9250506040610530868287016104d6565b9150509250925092565b610543816104af565b82525050565b5f60208201905061055c5f83018461053a565b92915050565b5f819050919050565b61057481610562565b811461057e575f80fd5b50565b5f8151905061058f8161056b565b92915050565b5f602082840312156105aa576105a961048c565b5b5f6105b784828501610581565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6105f681610562565b82525050565b5f60408201905061060f5f83018561053a565b61061c60208301846105ed565b9392505050565b5f6020820190506106365f8301846105ed565b92915050565b5f80fd5b5f601f19601f8301169050919050565b61065982610640565b810181811067ffffffffffffffff82111715610678576106776105c0565b5b80604052505050565b5f61068a610483565b90506106968282610650565b919050565b5f6fffffffffffffffffffffffffffffffff82169050919050565b6106bf8161069b565b81146106c9575f80fd5b50565b5f815190506106da816106b6565b92915050565b5f8160020b9050919050565b6106f5816106e0565b81146106ff575f80fd5b50565b5f81519050610710816106ec565b92915050565b5f610120828403121561072c5761072b61063c565b5b610737610120610681565b90505f610746848285016106cc565b5f830152506020610759848285016106cc565b602083015250604061076d84828501610702565b604083015250606061078184828501610702565b606083015250608061079584828501610581565b60808301525060a06107a984828501610581565b60a08301525060c06107bd848285016104d6565b60c08301525060e06107d184828501610581565b60e0830152506101006107e684828501610581565b6101008301525092915050565b5f61012082840312156108095761080861048c565b5b5f61081684828501610716565b91505092915050565b5f602082840312156108345761083361048c565b5b5f610841848285016104d6565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b6108a98161069b565b82525050565b6108b8816106e0565b82525050565b6108c781610562565b82525050565b6108d6816104af565b82525050565b61014082015f8201516108f15f8501826108a0565b50602082015161090460208501826108a0565b50604082015161091760408501826108af565b50606082015161092a60608501826108af565b50608082015161093d60808501826108be565b5060a082015161095060a08501826108be565b5060c082015161096360c08501826108be565b5060e082015161097660e08501826108be565b5061010082015161098b6101008501826108be565b506101208201516109a06101208501826108cd565b50505050565b5f6109b183836108dc565b6101408301905092915050565b5f602082019050919050565b5f6109d482610877565b6109de8185610881565b93506109e983610891565b805f5b83811015610a19578151610a0088826109a6565b9750610a0b836109be565b9250506001810190506109ec565b5085935050505092915050565b5f6020820190508181035f830152610a3e81846109ca565b90509291505056fe'
4
+ '0x608060405234801561000f575f80fd5b50604051610af4380380610af483398181016040528101906100319190610543565b5f8590505f8590505f831461004657826100bf565b8173ffffffffffffffffffffffffffffffffffffffff166370a08231866040518263ffffffff1660e01b815260040161007f91906105c9565b602060405180830381865afa15801561009a573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906100be91906105e2565b5b92505f84846100ce919061063a565b67ffffffffffffffff8111156100e7576100e661066d565b5b60405190808252806020026020018201604052801561012057816020015b61010d610420565b8152602001906001900390816101055790505b5090505f8590505b848110156103f1575f8473ffffffffffffffffffffffffffffffffffffffff16632f745c5989846040518363ffffffff1660e01b815260040161016c9291906106a9565b602060405180830381865afa158015610187573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101ab91906105e2565b90505f8573ffffffffffffffffffffffffffffffffffffffff16633b1acf74836040518263ffffffff1660e01b81526004016101e791906106d0565b61012060405180830381865afa158015610203573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061022791906108a0565b9050610231610420565b8281610100018181525050815f0151815f01906fffffffffffffffffffffffffffffffff1690816fffffffffffffffffffffffffffffffff1681525050816020015181602001906fffffffffffffffffffffffffffffffff1690816fffffffffffffffffffffffffffffffff16815250508160400151816040019060020b908160020b815250508160600151816060019060020b908160020b8152505081608001518160800181815250508160a001518160a00181815250508160e001518160c00181815250508161010001518160e00181815250508573ffffffffffffffffffffffffffffffffffffffff1663b3060d36846040518263ffffffff1660e01b815260040161034091906106d0565b602060405180830381865afa15801561035b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061037f91906108cc565b81610120019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505080858a866103c5919061063a565b815181106103d6576103d56108f7565b5b60200260200101819052505050508080600101915050610128565b505f816040516020016104049190610ad3565b6040516020818303038152906040529050602081018059038082f35b6040518061014001604052805f6fffffffffffffffffffffffffffffffff1681526020015f6fffffffffffffffffffffffffffffffff1681526020015f60020b81526020015f60020b81526020015f81526020015f81526020015f81526020015f81526020015f81526020015f73ffffffffffffffffffffffffffffffffffffffff1681525090565b5f604051905090565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6104df826104b6565b9050919050565b6104ef816104d5565b81146104f9575f80fd5b50565b5f8151905061050a816104e6565b92915050565b5f819050919050565b61052281610510565b811461052c575f80fd5b50565b5f8151905061053d81610519565b92915050565b5f805f805f60a0868803121561055c5761055b6104b2565b5b5f610569888289016104fc565b955050602061057a888289016104fc565b945050604061058b888289016104fc565b935050606061059c8882890161052f565b92505060806105ad8882890161052f565b9150509295509295909350565b6105c3816104d5565b82525050565b5f6020820190506105dc5f8301846105ba565b92915050565b5f602082840312156105f7576105f66104b2565b5b5f6106048482850161052f565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61064482610510565b915061064f83610510565b92508282039050818111156106675761066661060d565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6106a381610510565b82525050565b5f6040820190506106bc5f8301856105ba565b6106c9602083018461069a565b9392505050565b5f6020820190506106e35f83018461069a565b92915050565b5f80fd5b5f601f19601f8301169050919050565b610706826106ed565b810181811067ffffffffffffffff821117156107255761072461066d565b5b80604052505050565b5f6107376104a9565b905061074382826106fd565b919050565b5f6fffffffffffffffffffffffffffffffff82169050919050565b61076c81610748565b8114610776575f80fd5b50565b5f8151905061078781610763565b92915050565b5f8160020b9050919050565b6107a28161078d565b81146107ac575f80fd5b50565b5f815190506107bd81610799565b92915050565b5f61012082840312156107d9576107d86106e9565b5b6107e461012061072e565b90505f6107f384828501610779565b5f83015250602061080684828501610779565b602083015250604061081a848285016107af565b604083015250606061082e848285016107af565b60608301525060806108428482850161052f565b60808301525060a06108568482850161052f565b60a08301525060c061086a848285016104fc565b60c08301525060e061087e8482850161052f565b60e0830152506101006108938482850161052f565b6101008301525092915050565b5f61012082840312156108b6576108b56104b2565b5b5f6108c3848285016107c3565b91505092915050565b5f602082840312156108e1576108e06104b2565b5b5f6108ee848285016104fc565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b61095681610748565b82525050565b6109658161078d565b82525050565b61097481610510565b82525050565b610983816104d5565b82525050565b61014082015f82015161099e5f85018261094d565b5060208201516109b1602085018261094d565b5060408201516109c4604085018261095c565b5060608201516109d7606085018261095c565b5060808201516109ea608085018261096b565b5060a08201516109fd60a085018261096b565b5060c0820151610a1060c085018261096b565b5060e0820151610a2360e085018261096b565b50610100820151610a3861010085018261096b565b50610120820151610a4d61012085018261097a565b50505050565b5f610a5e8383610989565b6101408301905092915050565b5f602082019050919050565b5f610a8182610924565b610a8b818561092e565b9350610a968361093e565b805f5b83811015610ac6578151610aad8882610a53565b9750610ab883610a6b565b925050600181019050610a99565b5085935050505092915050565b5f6020820190508181035f830152610aeb8184610a77565b90509291505056fe'
5
5
 
6
- const commonInputType = ['address _masterChef, address _strategy, address _locker']
6
+ const commonInputType = ['address _masterChef, address _strategy, address _locker, uint256 skip, uint256 limit']
7
7
 
8
8
  const commonOutputTypeHr = [
9
9
  'PositionInfo[] returnData',