@stake-dao/reader 0.4.25 → 0.4.27
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/gaugeManager/curveGaugeRewardsData.js +36 -0
- package/dist/esm/bytecodes/gaugeManager/curveGaugeRewardsData.js.map +1 -0
- package/dist/esm/bytecodes/index.js +3 -3
- package/dist/esm/bytecodes/index.js.map +1 -1
- package/dist/esm/bytecodes/strategies/batches/batchPancakeSwapPositions.js +2 -2
- package/dist/esm/bytecodes/strategies/batches/batchPancakeSwapPositions.js.map +1 -1
- package/dist/esm/bytecodes/tokenData.js +6 -18
- package/dist/esm/bytecodes/tokenData.js.map +1 -1
- package/dist/esm/bytecodes/votemarket/batchCampaigns.js +59 -0
- package/dist/esm/bytecodes/votemarket/batchCampaigns.js.map +1 -0
- package/dist/esm/bytecodes/votemarket/curve/batchCurveGauges.js.map +1 -0
- package/dist/esm/bytecodes/votemarket/curve/batchCurveGaugesMetadata.js.map +1 -0
- package/dist/esm/bytecodes/votemarket/curve/batchCurveOldLps.js.map +1 -0
- package/dist/esm/bytecodes/votemarket/curve/batchCurveUserVotes.js.map +1 -0
- package/dist/esm/gaugeManager/curve/gmFetchGauge.js +34 -0
- package/dist/esm/gaugeManager/curve/gmFetchGauge.js.map +1 -0
- package/dist/esm/index.js +9 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/strategies/curve/build.js +3 -5
- package/dist/esm/strategies/curve/build.js.map +1 -1
- package/dist/esm/strategies/pancakeswap/fetch/getPancakeV3Positions.js +24 -5
- package/dist/esm/strategies/pancakeswap/fetch/getPancakeV3Positions.js.map +1 -1
- package/dist/esm/strategies/yearn/build.js +3 -5
- package/dist/esm/strategies/yearn/build.js.map +1 -1
- package/dist/esm/tsconfig.build.tsbuildinfo +1 -1
- package/dist/esm/utils.js +1 -0
- package/dist/esm/utils.js.map +1 -1
- package/dist/esm/votemarket/curve/fetchCurveUserVotes.js +1 -1
- package/dist/esm/votemarket/curve/fetchCurveUserVotes.js.map +1 -1
- package/dist/esm/votemarket/fetchCampaigns.js +101 -0
- package/dist/esm/votemarket/fetchCampaigns.js.map +1 -0
- package/dist/esm/votemarket/types.js +2 -0
- package/dist/esm/votemarket/types.js.map +1 -0
- package/dist/types/bytecodes/gaugeManager/curveGaugeRewardsData.d.ts +4 -0
- package/dist/types/bytecodes/gaugeManager/curveGaugeRewardsData.d.ts.map +1 -0
- package/dist/types/bytecodes/index.d.ts +3 -3
- package/dist/types/bytecodes/index.d.ts.map +1 -1
- package/dist/types/bytecodes/tokenData.d.ts +2 -2
- package/dist/types/bytecodes/tokenData.d.ts.map +1 -1
- package/dist/types/bytecodes/types.d.ts +6 -0
- package/dist/types/bytecodes/types.d.ts.map +1 -1
- package/dist/types/bytecodes/votemarket/batchCampaigns.d.ts +4 -0
- package/dist/types/bytecodes/votemarket/batchCampaigns.d.ts.map +1 -0
- package/dist/types/bytecodes/votemarket/curve/batchCurveGauges.d.ts +4 -0
- package/dist/types/bytecodes/votemarket/curve/batchCurveGauges.d.ts.map +1 -0
- package/dist/types/bytecodes/votemarket/curve/batchCurveGaugesMetadata.d.ts +4 -0
- package/dist/types/bytecodes/votemarket/curve/batchCurveGaugesMetadata.d.ts.map +1 -0
- package/dist/types/bytecodes/votemarket/curve/batchCurveOldLps.d.ts +4 -0
- package/dist/types/bytecodes/votemarket/curve/batchCurveOldLps.d.ts.map +1 -0
- package/dist/types/bytecodes/votemarket/curve/batchCurveUserVotes.d.ts +4 -0
- package/dist/types/bytecodes/votemarket/curve/batchCurveUserVotes.d.ts.map +1 -0
- package/dist/types/gaugeManager/curve/gmFetchGauge.d.ts +25 -0
- package/dist/types/gaugeManager/curve/gmFetchGauge.d.ts.map +1 -0
- package/dist/types/index.d.ts +6 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/strategies/curve/build.d.ts.map +1 -1
- package/dist/types/strategies/pancakeswap/fetch/getPancakeV3Positions.d.ts.map +1 -1
- package/dist/types/strategies/yearn/build.d.ts.map +1 -1
- package/dist/types/utils.d.ts +2 -1
- package/dist/types/utils.d.ts.map +1 -1
- package/dist/types/votemarket/fetchCampaigns.d.ts +12 -0
- package/dist/types/votemarket/fetchCampaigns.d.ts.map +1 -0
- package/dist/types/votemarket/types.d.ts +40 -0
- package/dist/types/votemarket/types.d.ts.map +1 -0
- package/package.json +2 -2
- package/src/bytecodes/gaugeManager/curveGaugeRewardsData.ts +39 -0
- package/src/bytecodes/index.ts +3 -3
- package/src/bytecodes/strategies/batches/batchPancakeSwapPositions.ts +2 -2
- package/src/bytecodes/tokenData.ts +9 -22
- package/src/bytecodes/types.ts +7 -0
- package/src/bytecodes/votemarket/batchCampaigns.ts +61 -0
- package/src/bytecodes/votemarket/{batchCurveGauges.ts → curve/batchCurveGauges.ts} +1 -1
- package/src/bytecodes/votemarket/{batchCurveGaugesMetadata.ts → curve/batchCurveGaugesMetadata.ts} +1 -1
- package/src/bytecodes/votemarket/{batchCurveOldLps.ts → curve/batchCurveOldLps.ts} +1 -1
- package/src/bytecodes/votemarket/{batchCurveUserVotes.ts → curve/batchCurveUserVotes.ts} +1 -1
- package/src/gaugeManager/curve/gmFetchGauge.ts +68 -0
- package/src/index.ts +16 -0
- package/src/strategies/curve/build.ts +3 -8
- package/src/strategies/pancakeswap/fetch/getPancakeV3Positions.ts +33 -8
- package/src/strategies/yearn/build.ts +3 -8
- package/src/utils.ts +3 -1
- package/src/votemarket/curve/fetchCurveUserVotes.ts +1 -1
- package/src/votemarket/fetchCampaigns.ts +126 -0
- package/src/votemarket/types.ts +39 -0
- package/dist/esm/bytecodes/votemarket/batchCurveGauges.js.map +0 -1
- package/dist/esm/bytecodes/votemarket/batchCurveGaugesMetadata.js.map +0 -1
- package/dist/esm/bytecodes/votemarket/batchCurveOldLps.js.map +0 -1
- package/dist/esm/bytecodes/votemarket/batchCurveUserVotes.js.map +0 -1
- package/dist/types/bytecodes/votemarket/batchCurveGauges.d.ts +0 -4
- package/dist/types/bytecodes/votemarket/batchCurveGauges.d.ts.map +0 -1
- package/dist/types/bytecodes/votemarket/batchCurveGaugesMetadata.d.ts +0 -4
- package/dist/types/bytecodes/votemarket/batchCurveGaugesMetadata.d.ts.map +0 -1
- package/dist/types/bytecodes/votemarket/batchCurveOldLps.d.ts +0 -4
- package/dist/types/bytecodes/votemarket/batchCurveOldLps.d.ts.map +0 -1
- package/dist/types/bytecodes/votemarket/batchCurveUserVotes.d.ts +0 -4
- package/dist/types/bytecodes/votemarket/batchCurveUserVotes.d.ts.map +0 -1
- /package/dist/esm/bytecodes/votemarket/{batchCurveGauges.js → curve/batchCurveGauges.js} +0 -0
- /package/dist/esm/bytecodes/votemarket/{batchCurveGaugesMetadata.js → curve/batchCurveGaugesMetadata.js} +0 -0
- /package/dist/esm/bytecodes/votemarket/{batchCurveOldLps.js → curve/batchCurveOldLps.js} +0 -0
- /package/dist/esm/bytecodes/votemarket/{batchCurveUserVotes.js → curve/batchCurveUserVotes.js} +0 -0
|
@@ -1,26 +1,13 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { BatchMetaDataCommon } from './types.js'
|
|
2
2
|
|
|
3
|
-
const
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
const tokenData: BatchMetaData = {
|
|
12
|
-
bytecode: {
|
|
13
|
-
1: commonBytecode,
|
|
14
|
-
42161: commonBytecode,
|
|
15
|
-
},
|
|
16
|
-
inputType: {
|
|
17
|
-
1: commonInputType,
|
|
18
|
-
42161: commonInputType,
|
|
19
|
-
},
|
|
20
|
-
outputTypeHr: {
|
|
21
|
-
1: commonOutputType,
|
|
22
|
-
42161: commonOutputType,
|
|
23
|
-
},
|
|
3
|
+
const tokenData: BatchMetaDataCommon = {
|
|
4
|
+
bytecode:
|
|
5
|
+
'0x608060405234801561000f575f80fd5b5060405161086f38038061086f833981810160405281019061003191906104f3565b5f815190505f8167ffffffffffffffff8111156100515761005061035d565b5b60405190808252806020026020018201604052801561008a57816020015b6100776102fc565b81526020019060019003908161006f5790505b5090505f5b828110156102cd575f8482815181106100ab576100aa61053a565b5b602002602001015190505f8190508073ffffffffffffffffffffffffffffffffffffffff166306fdde036040518163ffffffff1660e01b81526004015f60405180830381865afa158015610101573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f820116820180604052508101906101299190610617565b84848151811061013c5761013b61053a565b5b60200260200101515f01819052508073ffffffffffffffffffffffffffffffffffffffff166395d89b416040518163ffffffff1660e01b81526004015f60405180830381865afa158015610192573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f820116820180604052508101906101ba9190610617565b8484815181106101cd576101cc61053a565b5b602002602001015160200181905250818484815181106101f0576101ef61053a565b5b60200260200101516040019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508073ffffffffffffffffffffffffffffffffffffffff1663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610277573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061029b9190610691565b8484815181106102ae576102ad61053a565b5b602002602001015160600181815250505050808060010191505061008f565b505f816040516020016102e0919061084e565b6040516020818303038152906040529050602081018059038082f35b604051806080016040528060608152602001606081526020015f73ffffffffffffffffffffffffffffffffffffffff1681526020015f81525090565b5f604051905090565b5f80fd5b5f80fd5b5f80fd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6103938261034d565b810181811067ffffffffffffffff821117156103b2576103b161035d565b5b80604052505050565b5f6103c4610338565b90506103d0828261038a565b919050565b5f67ffffffffffffffff8211156103ef576103ee61035d565b5b602082029050602081019050919050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61042d82610404565b9050919050565b61043d81610423565b8114610447575f80fd5b50565b5f8151905061045881610434565b92915050565b5f61047061046b846103d5565b6103bb565b9050808382526020820190506020840283018581111561049357610492610400565b5b835b818110156104bc57806104a8888261044a565b845260208401935050602081019050610495565b5050509392505050565b5f82601f8301126104da576104d9610349565b5b81516104ea84826020860161045e565b91505092915050565b5f6020828403121561050857610507610341565b5b5f82015167ffffffffffffffff81111561052557610524610345565b5b610531848285016104c6565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f80fd5b5f67ffffffffffffffff8211156105855761058461035d565b5b61058e8261034d565b9050602081019050919050565b8281835e5f83830152505050565b5f6105bb6105b68461056b565b6103bb565b9050828152602081018484840111156105d7576105d6610567565b5b6105e284828561059b565b509392505050565b5f82601f8301126105fe576105fd610349565b5b815161060e8482602086016105a9565b91505092915050565b5f6020828403121561062c5761062b610341565b5b5f82015167ffffffffffffffff81111561064957610648610345565b5b610655848285016105ea565b91505092915050565b5f819050919050565b6106708161065e565b811461067a575f80fd5b50565b5f8151905061068b81610667565b92915050565b5f602082840312156106a6576106a5610341565b5b5f6106b38482850161067d565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b5f81519050919050565b5f82825260208201905092915050565b5f610709826106e5565b61071381856106ef565b935061072381856020860161059b565b61072c8161034d565b840191505092915050565b61074081610423565b82525050565b61074f8161065e565b82525050565b5f608083015f8301518482035f86015261076f82826106ff565b9150506020830151848203602086015261078982826106ff565b915050604083015161079e6040860182610737565b5060608301516107b16060860182610746565b508091505092915050565b5f6107c78383610755565b905092915050565b5f602082019050919050565b5f6107e5826106bc565b6107ef81856106c6565b935083602082028501610801856106d6565b805f5b8581101561083c578484038952815161081d85826107bc565b9450610828836107cf565b925060208a01995050600181019050610804565b50829750879550505050505092915050565b5f6020820190508181035f83015261086681846107db565b90509291505056fe',
|
|
6
|
+
inputType: ['address[] inputs'],
|
|
7
|
+
outputTypeHr: [
|
|
8
|
+
'Erc20Data[] erc20data',
|
|
9
|
+
'struct Erc20Data { string name; string symbol; address tokenAddress; uint256 decimals; }',
|
|
10
|
+
],
|
|
24
11
|
}
|
|
25
12
|
|
|
26
13
|
export default tokenData
|
package/src/bytecodes/types.ts
CHANGED
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import type { BatchMetaData } from '../types.js'
|
|
2
|
+
|
|
3
|
+
const batchCampaigns: BatchMetaData = {
|
|
4
|
+
bytecode: {
|
|
5
|
+
1: '0x608060405234801561000f575f80fd5b5060405161123a38038061123a83398181016040528101906100319190610879565b5f8390505f821461004257816100b0565b8073ffffffffffffffffffffffffffffffffffffffff16637274e30d6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561008b573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906100af91906108c9565b5b91505f83836100bf9190610921565b67ffffffffffffffff8111156100d8576100d7610954565b5b60405190808252806020026020018201604052801561011157816020015b6100fe6106c2565b8152602001906001900390816100f65790505b5090505f8490505b83811015610693576101296106c2565b81815f0181815250508373ffffffffffffffffffffffffffffffffffffffff16635598f8cc836040518263ffffffff1660e01b815260040161016b9190610990565b61016060405180830381865afa158015610187573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101ab9190610b47565b81602001819052508373ffffffffffffffffffffffffffffffffffffffff166355b88ff6836040518263ffffffff1660e01b81526004016101ec9190610990565b602060405180830381865afa158015610207573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061022b9190610ba8565b8160400190151590811515815250508373ffffffffffffffffffffffffffffffffffffffff1663df4c3d10836040518263ffffffff1660e01b81526004016102739190610990565b602060405180830381865afa15801561028e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102b29190610ba8565b8160600190151590811515815250508373ffffffffffffffffffffffffffffffffffffffff16636fb08df2836040518263ffffffff1660e01b81526004016102fa9190610990565b5f60405180830381865afa158015610314573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f8201168201806040525081019061033c9190610c9b565b81608001819052505f62093a808573ffffffffffffffffffffffffffffffffffffffff1663766718086040518163ffffffff1660e01b8152600401602060405180830381865afa158015610392573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103b691906108c9565b6103c09190610ce2565b90505f82604001516103d257816103dd565b826020015161012001515b90508573ffffffffffffffffffffffffffffffffffffffff166352aed57885836040518363ffffffff1660e01b815260040161041a929190610d15565b608060405180830381865afa158015610435573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104599190610db1565b8360a001819052508573ffffffffffffffffffffffffffffffffffffffff16639dd5359785846040518363ffffffff1660e01b815260040161049c929190610d15565b602060405180830381865afa1580156104b7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104db91906108c9565b8360c00181815250505f8290505b83602001516101000151811115610658575f8773ffffffffffffffffffffffffffffffffffffffff166317f3a72287846040518363ffffffff1660e01b8152600401610536929190610d15565b608060405180830381865afa158015610551573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105759190610e51565b90505f8160200151146105d857805f015185602001516080019060ff16908160ff16815250508060200151856020015160c00181815250508060400151856020015160a00181815250508060600151856020015161012001818152505050610658565b8773ffffffffffffffffffffffffffffffffffffffff1663ac4746ab6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610621573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061064591906108c9565b826106509190610921565b9150506104e9565b83868a876106669190610921565b8151811061067757610676610e7c565b5b6020026020010181905250505050508080600101915050610119565b505f816040516020016106a69190611219565b6040516020818303038152906040529050602081018059038082f35b6040518060e001604052805f81526020016106db61070b565b81526020015f151581526020015f15158152602001606081526020016106ff6107b5565b81526020015f81525090565b6040518061016001604052805f81526020015f73ffffffffffffffffffffffffffffffffffffffff1681526020015f73ffffffffffffffffffffffffffffffffffffffff1681526020015f73ffffffffffffffffffffffffffffffffffffffff1681526020015f60ff1681526020015f81526020015f81526020015f81526020015f81526020015f81526020015f73ffffffffffffffffffffffffffffffffffffffff1681525090565b60405180608001604052805f81526020015f81526020015f81526020015f151581525090565b5f604051905090565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610815826107ec565b9050919050565b6108258161080b565b811461082f575f80fd5b50565b5f815190506108408161081c565b92915050565b5f819050919050565b61085881610846565b8114610862575f80fd5b50565b5f815190506108738161084f565b92915050565b5f805f606084860312156108905761088f6107e4565b5b5f61089d86828701610832565b93505060206108ae86828701610865565b92505060406108bf86828701610865565b9150509250925092565b5f602082840312156108de576108dd6107e4565b5b5f6108eb84828501610865565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61092b82610846565b915061093683610846565b925082820390508181111561094e5761094d6108f4565b5b92915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b61098a81610846565b82525050565b5f6020820190506109a35f830184610981565b92915050565b5f80fd5b5f601f19601f8301169050919050565b6109c6826109ad565b810181811067ffffffffffffffff821117156109e5576109e4610954565b5b80604052505050565b5f6109f76107db565b9050610a0382826109bd565b919050565b5f60ff82169050919050565b610a1d81610a08565b8114610a27575f80fd5b50565b5f81519050610a3881610a14565b92915050565b5f6101608284031215610a5457610a536109a9565b5b610a5f6101606109ee565b90505f610a6e84828501610865565b5f830152506020610a8184828501610832565b6020830152506040610a9584828501610832565b6040830152506060610aa984828501610832565b6060830152506080610abd84828501610a2a565b60808301525060a0610ad184828501610865565b60a08301525060c0610ae584828501610865565b60c08301525060e0610af984828501610865565b60e083015250610100610b0e84828501610865565b61010083015250610120610b2484828501610865565b61012083015250610140610b3a84828501610832565b6101408301525092915050565b5f6101608284031215610b5d57610b5c6107e4565b5b5f610b6a84828501610a3e565b91505092915050565b5f8115159050919050565b610b8781610b73565b8114610b91575f80fd5b50565b5f81519050610ba281610b7e565b92915050565b5f60208284031215610bbd57610bbc6107e4565b5b5f610bca84828501610b94565b91505092915050565b5f80fd5b5f67ffffffffffffffff821115610bf157610bf0610954565b5b602082029050602081019050919050565b5f80fd5b5f610c18610c1384610bd7565b6109ee565b90508083825260208201905060208402830185811115610c3b57610c3a610c02565b5b835b81811015610c645780610c508882610832565b845260208401935050602081019050610c3d565b5050509392505050565b5f82601f830112610c8257610c81610bd3565b5b8151610c92848260208601610c06565b91505092915050565b5f60208284031215610cb057610caf6107e4565b5b5f82015167ffffffffffffffff811115610ccd57610ccc6107e8565b5b610cd984828501610c6e565b91505092915050565b5f610cec82610846565b9150610cf783610846565b9250828201905080821115610d0f57610d0e6108f4565b5b92915050565b5f604082019050610d285f830185610981565b610d356020830184610981565b9392505050565b5f60808284031215610d5157610d506109a9565b5b610d5b60806109ee565b90505f610d6a84828501610865565b5f830152506020610d7d84828501610865565b6020830152506040610d9184828501610865565b6040830152506060610da584828501610b94565b60608301525092915050565b5f60808284031215610dc657610dc56107e4565b5b5f610dd384828501610d3c565b91505092915050565b5f60808284031215610df157610df06109a9565b5b610dfb60806109ee565b90505f610e0a84828501610a2a565b5f830152506020610e1d84828501610865565b6020830152506040610e3184828501610865565b6040830152506060610e4584828501610865565b60608301525092915050565b5f60808284031215610e6657610e656107e4565b5b5f610e7384828501610ddc565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b610edb81610846565b82525050565b610eea8161080b565b82525050565b610ef981610a08565b82525050565b61016082015f820151610f145f850182610ed2565b506020820151610f276020850182610ee1565b506040820151610f3a6040850182610ee1565b506060820151610f4d6060850182610ee1565b506080820151610f606080850182610ef0565b5060a0820151610f7360a0850182610ed2565b5060c0820151610f8660c0850182610ed2565b5060e0820151610f9960e0850182610ed2565b50610100820151610fae610100850182610ed2565b50610120820151610fc3610120850182610ed2565b50610140820151610fd8610140850182610ee1565b50505050565b610fe781610b73565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b5f6110218383610ee1565b60208301905092915050565b5f602082019050919050565b5f61104382610fed565b61104d8185610ff7565b935061105883611007565b805f5b8381101561108857815161106f8882611016565b975061107a8361102d565b92505060018101905061105b565b5085935050505092915050565b608082015f8201516110a95f850182610ed2565b5060208201516110bc6020850182610ed2565b5060408201516110cf6040850182610ed2565b5060608201516110e26060850182610fde565b50505050565b5f61028083015f8301516110fe5f860182610ed2565b5060208301516111116020860182610eff565b506040830151611125610180860182610fde565b5060608301516111396101a0860182610fde565b5060808301518482036101c08601526111528282611039565b91505060a08301516111686101e0860182611095565b5060c083015161117c610260860182610ed2565b508091505092915050565b5f61119283836110e8565b905092915050565b5f602082019050919050565b5f6111b082610ea9565b6111ba8185610eb3565b9350836020820285016111cc85610ec3565b805f5b8581101561120757848403895281516111e88582611187565b94506111f38361119a565b925060208a019950506001810190506111cf565b50829750879550505050505092915050565b5f6020820190508181035f83015261123181846111a6565b90509291505056fe',
|
|
6
|
+
},
|
|
7
|
+
inputType: {
|
|
8
|
+
1: ['address platform, uint256 skip, uint256 limit'],
|
|
9
|
+
},
|
|
10
|
+
outputTypeHr: {
|
|
11
|
+
1: [
|
|
12
|
+
'CampaignData[] memory returnData',
|
|
13
|
+
'struct CampaignData { Campaign campaign; bool isClosed; bool isWhitelistOnly; address[] addresses; }',
|
|
14
|
+
'struct Campaign { uint256 chainId; address gauge; address manager; address rewardToken; uint8 numberOfPeriods; uint256 maxRewardPerVote; uint256 totalRewardAmount; uint256 totalDistributed; uint256 startTimestamp; uint256 endTimestamp; address hook; }',
|
|
15
|
+
],
|
|
16
|
+
},
|
|
17
|
+
outputType: {
|
|
18
|
+
1: [
|
|
19
|
+
{
|
|
20
|
+
type: 'tuple[]',
|
|
21
|
+
name: 'returnData',
|
|
22
|
+
components: [
|
|
23
|
+
{ type: 'uint256', name: 'id' },
|
|
24
|
+
{
|
|
25
|
+
type: 'tuple',
|
|
26
|
+
name: 'campaign',
|
|
27
|
+
components: [
|
|
28
|
+
{ type: 'uint256', name: 'chainId' },
|
|
29
|
+
{ type: 'address', name: 'gauge' },
|
|
30
|
+
{ type: 'address', name: 'manager' },
|
|
31
|
+
{ type: 'address', name: 'rewardToken' },
|
|
32
|
+
{ type: 'uint8', name: 'numberOfPeriods' },
|
|
33
|
+
{ type: 'uint256', name: 'maxRewardPerVote' },
|
|
34
|
+
{ type: 'uint256', name: 'totalRewardAmount' },
|
|
35
|
+
{ type: 'uint256', name: 'totalDistributed' },
|
|
36
|
+
{ type: 'uint256', name: 'startTimestamp' },
|
|
37
|
+
{ type: 'uint256', name: 'endTimestamp' },
|
|
38
|
+
{ type: 'address', name: 'hook' },
|
|
39
|
+
],
|
|
40
|
+
},
|
|
41
|
+
{ type: 'bool', name: 'isKilled' },
|
|
42
|
+
{ type: 'bool', name: 'isWhitelistOnly' },
|
|
43
|
+
{ type: 'address[]', name: 'addresses' },
|
|
44
|
+
{
|
|
45
|
+
type: 'tuple',
|
|
46
|
+
name: 'currentPeriod',
|
|
47
|
+
components: [
|
|
48
|
+
{ type: 'uint256', name: 'rewardPerPeriod' },
|
|
49
|
+
{ type: 'uint256', name: 'rewardPerVote' },
|
|
50
|
+
{ type: 'uint256', name: 'leftover' },
|
|
51
|
+
{ type: 'bool', name: 'updated' },
|
|
52
|
+
],
|
|
53
|
+
},
|
|
54
|
+
{ type: 'uint256', name: 'periodLeft' },
|
|
55
|
+
],
|
|
56
|
+
},
|
|
57
|
+
],
|
|
58
|
+
},
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
export default batchCampaigns
|
package/src/bytecodes/votemarket/{batchCurveGaugesMetadata.ts → curve/batchCurveGaugesMetadata.ts}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { BatchMetaData } from '
|
|
1
|
+
import type { BatchMetaData } from '../../types.js'
|
|
2
2
|
|
|
3
3
|
const commonBytecode =
|
|
4
4
|
'0x608060405234801561000f575f80fd5b5060405161130938038061130983398181016040528101906100319190610dd1565b5f815190505f8167ffffffffffffffff81111561005157610050610c3b565b5b60405190808252806020026020018201604052801561008a57816020015b610077610b9e565b81526020019060019003908161006f5790505b5090505f5b8281101561038f5761009f610b9e565b5f8583815181106100b3576100b2610e18565b5b6020026020010151905080825f019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250505f8173ffffffffffffffffffffffffffffffffffffffff166382c630666040518163ffffffff1660e01b8152600401602060405180830381865afa15801561013e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101629190610e45565b90508083602001515f019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506101ae816103be60201b60201c565b856020015160200186602001516040018760200151606001838152508390528390525050505f6101e3826105a360201b60201c565b90505f815190505f8167ffffffffffffffff81111561020557610204610c3b565b5b60405190808252806020026020018201604052801561023e57816020015b61022b610bda565b8152602001906001900390816102235790505b5090505f5b828110156103535783818151811061025e5761025d610e18565b5b602002602001015182828151811061027957610278610e18565b5b60200260200101515f019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506102df8482815181106102cc576102cb610e18565b5b60200260200101516103be60201b60201c565b8484815181106102f2576102f1610e18565b5b60200260200101516020018585815181106103105761030f610e18565b5b602002602001015160400186868151811061032e5761032d610e18565b5b6020026020010151606001838152508390528390525050508080600101915050610243565b508086604001819052508588888151811061037157610370610e18565b5b6020026020010181905250505050505050808060010191505061008f565b505f816040516020016103a29190611128565b6040516020818303038152906040529050602081018059038082f35b6060805f8073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415801561043e575073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b1561059c575f8490508073ffffffffffffffffffffffffffffffffffffffff166306fdde036040518163ffffffff1660e01b81526004015f60405180830381865afa15801561048f573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f820116820180604052508101906104b791906111ea565b93508073ffffffffffffffffffffffffffffffffffffffff166395d89b416040518163ffffffff1660e01b81526004015f60405180830381865afa158015610501573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f8201168201806040525081019061052991906111ea565b92508073ffffffffffffffffffffffffffffffffffffffff1663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610574573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610598919061125b565b9150505b9193909250565b60605f600467ffffffffffffffff8111156105c1576105c0610c3b565b5b6040519080825280602002602001820160405280156105ef5781602001602082028036833780820191505090505b5090505f808473ffffffffffffffffffffffffffffffffffffffff166040516024016040516020818303038152906040527fa980497e000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505060405161069b91906112ca565b5f60405180830381855afa9150503d805f81146106d3576040519150601f19603f3d011682016040523d82523d5f602084013e6106d8565b606091505b50915091508180156106ea57505f8151115b1561086f578473ffffffffffffffffffffffffffffffffffffffff1663765337b66040518163ffffffff1660e01b8152600401602060405180830381865afa158015610738573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061075c9190610e45565b835f8151811061076f5761076e610e18565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508473ffffffffffffffffffffffffffffffffffffffff16632621db2f6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107f2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108169190610e45565b8360018151811061082a57610829610e18565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050829350505050610b01565b5f808673ffffffffffffffffffffffffffffffffffffffff166040516024016040516020818303038152906040527f07546172000000000000000000000000000000000000000000000000000000007bffffffffffffffffffffffffffffffffffffffffffffffffffffffff19166020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff838183161783525050505060405161091891906112ca565b5f60405180830381855afa9150503d805f8114610950576040519150601f19603f3d011682016040523d82523d5f602084013e610955565b606091505b509150915081801561096757505f8151115b1561097e5761097b81610b0660201b60201c565b96505b61098e875f610b1360201b60201c565b855f815181106109a1576109a0610e18565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506109ec876001610b1360201b60201c565b85600181518110610a00576109ff610e18565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050610a4b876002610b1360201b60201c565b85600281518110610a5f57610a5e610e18565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050610aaa876003610b1360201b60201c565b85600381518110610abe57610abd610e18565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505084955050505050505b919050565b5f60208201519050919050565b5f8273ffffffffffffffffffffffffffffffffffffffff1663c6610657836040518263ffffffff1660e01b8152600401610b4d91906112ef565b602060405180830381865afa925050508015610b8757506040513d601f19601f82011682018060405250810190610b849190610e45565b60015b610b93575f9050610b98565b809150505b92915050565b60405180606001604052805f73ffffffffffffffffffffffffffffffffffffffff168152602001610bcd610bda565b8152602001606081525090565b60405180608001604052805f73ffffffffffffffffffffffffffffffffffffffff16815260200160608152602001606081526020015f81525090565b5f604051905090565b5f80fd5b5f80fd5b5f80fd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b610c7182610c2b565b810181811067ffffffffffffffff82111715610c9057610c8f610c3b565b5b80604052505050565b5f610ca2610c16565b9050610cae8282610c68565b919050565b5f67ffffffffffffffff821115610ccd57610ccc610c3b565b5b602082029050602081019050919050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f610d0b82610ce2565b9050919050565b610d1b81610d01565b8114610d25575f80fd5b50565b5f81519050610d3681610d12565b92915050565b5f610d4e610d4984610cb3565b610c99565b90508083825260208201905060208402830185811115610d7157610d70610cde565b5b835b81811015610d9a5780610d868882610d28565b845260208401935050602081019050610d73565b5050509392505050565b5f82601f830112610db857610db7610c27565b5b8151610dc8848260208601610d3c565b91505092915050565b5f60208284031215610de657610de5610c1f565b5b5f82015167ffffffffffffffff811115610e0357610e02610c23565b5b610e0f84828501610da4565b91505092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b5f60208284031215610e5a57610e59610c1f565b5b5f610e6784828501610d28565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b610ea281610d01565b82525050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f610eda82610ea8565b610ee48185610eb2565b9350610ef4818560208601610ec2565b610efd81610c2b565b840191505092915050565b5f819050919050565b610f1a81610f08565b82525050565b5f608083015f830151610f355f860182610e99565b5060208301518482036020860152610f4d8282610ed0565b91505060408301518482036040860152610f678282610ed0565b9150506060830151610f7c6060860182610f11565b508091505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b5f610fbb8383610f20565b905092915050565b5f602082019050919050565b5f610fd982610f87565b610fe38185610f91565b935083602082028501610ff585610fa1565b805f5b8581101561103057848403895281516110118582610fb0565b945061101c83610fc3565b925060208a01995050600181019050610ff8565b50829750879550505050505092915050565b5f606083015f8301516110575f860182610e99565b506020830151848203602086015261106f8282610f20565b915050604083015184820360408601526110898282610fcf565b9150508091505092915050565b5f6110a18383611042565b905092915050565b5f602082019050919050565b5f6110bf82610e70565b6110c98185610e7a565b9350836020820285016110db85610e8a565b805f5b8581101561111657848403895281516110f78582611096565b9450611102836110a9565b925060208a019950506001810190506110de565b50829750879550505050505092915050565b5f6020820190508181035f83015261114081846110b5565b905092915050565b5f80fd5b5f67ffffffffffffffff82111561116657611165610c3b565b5b61116f82610c2b565b9050602081019050919050565b5f61118e6111898461114c565b610c99565b9050828152602081018484840111156111aa576111a9611148565b5b6111b5848285610ec2565b509392505050565b5f82601f8301126111d1576111d0610c27565b5b81516111e184826020860161117c565b91505092915050565b5f602082840312156111ff576111fe610c1f565b5b5f82015167ffffffffffffffff81111561121c5761121b610c23565b5b611228848285016111bd565b91505092915050565b61123a81610f08565b8114611244575f80fd5b50565b5f8151905061125581611231565b92915050565b5f602082840312156112705761126f610c1f565b5b5f61127d84828501611247565b91505092915050565b5f81519050919050565b5f81905092915050565b5f6112a482611286565b6112ae8185611290565b93506112be818560208601610ec2565b80840191505092915050565b5f6112d5828461129a565b915081905092915050565b6112e981610f08565b82525050565b5f6020820190506113025f8301846112e0565b9291505056fe'
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { BatchMetaData } from '
|
|
1
|
+
import type { BatchMetaData } from '../../types.js'
|
|
2
2
|
|
|
3
3
|
const commonBytecode =
|
|
4
4
|
'0x608060405234801561000f575f80fd5b50604051610f87380380610f87833981810160405281019061003191906108e3565b5f8290505f825190505f8167ffffffffffffffff811115610055576100546107a7565b5b60405190808252806020026020018201604052801561008e57816020015b61007b6106b6565b8152602001906001900390816100735790505b5090505f5b828110156104a2576100a36106b6565b5f8683815181106100b7576100b661093d565b5b6020026020010151905080825f019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250505f8673ffffffffffffffffffffffffffffffffffffffff1663bdf475c3836040518263ffffffff1660e01b81526004016101329190610979565b602060405180830381865afa15801561014d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101719190610992565b90508673ffffffffffffffffffffffffffffffffffffffff16635c911741826040518263ffffffff1660e01b81526004016101ac9190610979565b5f60405180830381865afa1580156101c6573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f820116820180604052508101906101ee9190610a6d565b83602001819052505f8773ffffffffffffffffffffffffffffffffffffffff16639ac90d3d836040518263ffffffff1660e01b81526004016102309190610979565b61010060405180830381865afa15801561024c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102709190610b62565b90505f8873ffffffffffffffffffffffffffffffffffffffff1663940494f1846040518263ffffffff1660e01b81526004016102ac9190610979565b6040805180830381865afa1580156102c6573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102ea9190610c6f565b5f600281106102fc576102fb61093d565b5b602002015190505f8167ffffffffffffffff81111561031e5761031d6107a7565b5b60405190808252806020026020018201604052801561035757816020015b6103446106ec565b81526020019060019003908161033c5790505b5090505f5b82811015610466578381600881106103775761037661093d565b5b602002015182828151811061038f5761038e61093d565b5b60200260200101515f019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506103f28482600881106103e2576103e161093d565b5b60200201516104d160201b60201c565b8484815181106104055761040461093d565b5b60200260200101516020018585815181106104235761042261093d565b5b60200260200101516040018686815181106104415761044061093d565b5b602002602001015160600183815250839052839052505050808060010191505061035c565b50808660400181905250858888815181106104845761048361093d565b5b60200260200101819052505050505050508080600101915050610093565b505f816040516020016104b59190610f3b565b6040516020818303038152906040529050602081018059038082f35b6060805f8073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614158015610551575073eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee73ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b156106af575f8490508073ffffffffffffffffffffffffffffffffffffffff166306fdde036040518163ffffffff1660e01b81526004015f60405180830381865afa1580156105a2573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f820116820180604052508101906105ca9190610a6d565b93508073ffffffffffffffffffffffffffffffffffffffff166395d89b416040518163ffffffff1660e01b81526004015f60405180830381865afa158015610614573d5f803e3d5ffd5b505050506040513d5f823e3d601f19601f8201168201806040525081019061063c9190610a6d565b92508073ffffffffffffffffffffffffffffffffffffffff1663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610687573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106ab9190610f5b565b9150505b9193909250565b60405180606001604052805f73ffffffffffffffffffffffffffffffffffffffff16815260200160608152602001606081525090565b60405180608001604052805f73ffffffffffffffffffffffffffffffffffffffff16815260200160608152602001606081526020015f81525090565b5f604051905090565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f61076282610739565b9050919050565b61077281610758565b811461077c575f80fd5b50565b5f8151905061078d81610769565b92915050565b5f80fd5b5f601f19601f8301169050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b6107dd82610797565b810181811067ffffffffffffffff821117156107fc576107fb6107a7565b5b80604052505050565b5f61080e610728565b905061081a82826107d4565b919050565b5f67ffffffffffffffff821115610839576108386107a7565b5b602082029050602081019050919050565b5f80fd5b5f61086061085b8461081f565b610805565b905080838252602082019050602084028301858111156108835761088261084a565b5b835b818110156108ac5780610898888261077f565b845260208401935050602081019050610885565b5050509392505050565b5f82601f8301126108ca576108c9610793565b5b81516108da84826020860161084e565b91505092915050565b5f80604083850312156108f9576108f8610731565b5b5f6109068582860161077f565b925050602083015167ffffffffffffffff81111561092757610926610735565b5b610933858286016108b6565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b61097381610758565b82525050565b5f60208201905061098c5f83018461096a565b92915050565b5f602082840312156109a7576109a6610731565b5b5f6109b48482850161077f565b91505092915050565b5f80fd5b5f67ffffffffffffffff8211156109db576109da6107a7565b5b6109e482610797565b9050602081019050919050565b8281835e5f83830152505050565b5f610a11610a0c846109c1565b610805565b905082815260208101848484011115610a2d57610a2c6109bd565b5b610a388482856109f1565b509392505050565b5f82601f830112610a5457610a53610793565b5b8151610a648482602086016109ff565b91505092915050565b5f60208284031215610a8257610a81610731565b5b5f82015167ffffffffffffffff811115610a9f57610a9e610735565b5b610aab84828501610a40565b91505092915050565b5f67ffffffffffffffff821115610ace57610acd6107a7565b5b602082029050919050565b5f610aeb610ae684610ab4565b610805565b90508060208402830185811115610b0557610b0461084a565b5b835b81811015610b2e5780610b1a888261077f565b845260208401935050602081019050610b07565b5050509392505050565b5f82601f830112610b4c57610b4b610793565b5b6008610b59848285610ad9565b91505092915050565b5f6101008284031215610b7857610b77610731565b5b5f610b8584828501610b38565b91505092915050565b5f67ffffffffffffffff821115610ba857610ba76107a7565b5b602082029050919050565b5f819050919050565b610bc581610bb3565b8114610bcf575f80fd5b50565b5f81519050610be081610bbc565b92915050565b5f610bf8610bf384610b8e565b610805565b90508060208402830185811115610c1257610c1161084a565b5b835b81811015610c3b5780610c278882610bd2565b845260208401935050602081019050610c14565b5050509392505050565b5f82601f830112610c5957610c58610793565b5b6002610c66848285610be6565b91505092915050565b5f60408284031215610c8457610c83610731565b5b5f610c9184828501610c45565b91505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b610ccc81610758565b82525050565b5f81519050919050565b5f82825260208201905092915050565b5f610cf682610cd2565b610d008185610cdc565b9350610d108185602086016109f1565b610d1981610797565b840191505092915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b610d5681610bb3565b82525050565b5f608083015f830151610d715f860182610cc3565b5060208301518482036020860152610d898282610cec565b91505060408301518482036040860152610da38282610cec565b9150506060830151610db86060860182610d4d565b508091505092915050565b5f610dce8383610d5c565b905092915050565b5f602082019050919050565b5f610dec82610d24565b610df68185610d2e565b935083602082028501610e0885610d3e565b805f5b85811015610e435784840389528151610e248582610dc3565b9450610e2f83610dd6565b925060208a01995050600181019050610e0b565b50829750879550505050505092915050565b5f606083015f830151610e6a5f860182610cc3565b5060208301518482036020860152610e828282610cec565b91505060408301518482036040860152610e9c8282610de2565b9150508091505092915050565b5f610eb48383610e55565b905092915050565b5f602082019050919050565b5f610ed282610c9a565b610edc8185610ca4565b935083602082028501610eee85610cb4565b805f5b85811015610f295784840389528151610f0a8582610ea9565b9450610f1583610ebc565b925060208a01995050600181019050610ef1565b50829750879550505050505092915050565b5f6020820190508181035f830152610f538184610ec8565b905092915050565b5f60208284031215610f7057610f6f610731565b5b5f610f7d84828501610bd2565b9150509291505056fe'
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { encodeAbiParameters, formatUnits, parseAbiParameters } from 'viem'
|
|
2
|
+
import curveGaugeRewardsData from '../../bytecodes/gaugeManager/curveGaugeRewardsData.js'
|
|
3
|
+
import { batchJsonRpc, concatBytecode } from '../../utils.js'
|
|
4
|
+
|
|
5
|
+
export type GmGaugeData = {
|
|
6
|
+
name: string
|
|
7
|
+
symbol: string
|
|
8
|
+
manager: string
|
|
9
|
+
managerFromGaugeManager: string
|
|
10
|
+
transferringManager: string
|
|
11
|
+
rewardCount: number
|
|
12
|
+
rewardTokens: {
|
|
13
|
+
token: string
|
|
14
|
+
distributor: string
|
|
15
|
+
periodFinish: number
|
|
16
|
+
rate: string
|
|
17
|
+
lastUpdate: number
|
|
18
|
+
integral: string
|
|
19
|
+
}[]
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
interface GmFetchGaugeProps {
|
|
23
|
+
gaugeManager: string
|
|
24
|
+
gauge: string
|
|
25
|
+
chainId: number
|
|
26
|
+
rpc: string
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
export const gmFetchGauge = async ({
|
|
30
|
+
gaugeManager,
|
|
31
|
+
gauge,
|
|
32
|
+
chainId,
|
|
33
|
+
rpc,
|
|
34
|
+
}: GmFetchGaugeProps): Promise<GmGaugeData | undefined> => {
|
|
35
|
+
const rawGaugeRewardsData = await batchJsonRpc({
|
|
36
|
+
rpc,
|
|
37
|
+
calls: [
|
|
38
|
+
concatBytecode(
|
|
39
|
+
curveGaugeRewardsData.bytecode,
|
|
40
|
+
encodeAbiParameters(parseAbiParameters(curveGaugeRewardsData.inputType) as any, [gaugeManager, gauge, chainId]),
|
|
41
|
+
),
|
|
42
|
+
],
|
|
43
|
+
outputTypeAbi: curveGaugeRewardsData.outputType,
|
|
44
|
+
parse: false,
|
|
45
|
+
callsKey: `gaugeManager/curve/fetchGaugeRewardsData.ts: rawGaugeRewardsData - chainId ${chainId} - rpc ${rpc}`,
|
|
46
|
+
})
|
|
47
|
+
|
|
48
|
+
if (rawGaugeRewardsData[0]) {
|
|
49
|
+
return {
|
|
50
|
+
name: rawGaugeRewardsData[0].name,
|
|
51
|
+
symbol: rawGaugeRewardsData[0].symbol,
|
|
52
|
+
manager: rawGaugeRewardsData[0].manager,
|
|
53
|
+
managerFromGaugeManager: rawGaugeRewardsData[0].managerFromGaugeManager,
|
|
54
|
+
transferringManager: rawGaugeRewardsData[0].transferringManager,
|
|
55
|
+
rewardCount: Number(rawGaugeRewardsData[0].rewardCount),
|
|
56
|
+
rewardTokens: rawGaugeRewardsData[0].rewardTokens.map((t) => ({
|
|
57
|
+
token: t.token,
|
|
58
|
+
distributor: t.distributor,
|
|
59
|
+
periodFinish: Number(t.period_finish),
|
|
60
|
+
rate: formatUnits(t.rate, 18),
|
|
61
|
+
lastUpdate: Number(t.last_update),
|
|
62
|
+
integral: formatUnits(t.integral, 18),
|
|
63
|
+
})),
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
return undefined
|
|
68
|
+
}
|
package/src/index.ts
CHANGED
|
@@ -3,6 +3,8 @@
|
|
|
3
3
|
///////////////////////////////////////////////////////////////
|
|
4
4
|
export { getPricesFromLlama, getPricesFromGeckoTerminal } from './prices.js'
|
|
5
5
|
export * from './sdt.js'
|
|
6
|
+
export { rpcCall, batchJsonRpc } from './utils.js'
|
|
7
|
+
export type { BatchJsonRpcArgs } from './utils.js'
|
|
6
8
|
|
|
7
9
|
////////////////////////////////////////////////////////////////
|
|
8
10
|
/// --- SDT
|
|
@@ -56,6 +58,10 @@ export { default as getPendleApiData } from './strategies/pendle/getPendleApiDat
|
|
|
56
58
|
////////////////////////////////////////////////////////////////
|
|
57
59
|
/// --- VOTEMARKET
|
|
58
60
|
|
|
61
|
+
// General
|
|
62
|
+
export { fetchCampaigns } from './votemarket/fetchCampaigns.js'
|
|
63
|
+
export type { Campaign } from './votemarket/types.js'
|
|
64
|
+
|
|
59
65
|
// Curve
|
|
60
66
|
export { fetchCurveGauges } from './votemarket/curve/fetchCurveGauges.js'
|
|
61
67
|
export { fetchCurveUserVotes } from './votemarket/curve/fetchCurveUserVotes.js'
|
|
@@ -63,3 +69,13 @@ export { fetchSnapshotUserData } from './votemarket/curve/fetchSnapshotUserData.
|
|
|
63
69
|
|
|
64
70
|
/// --- END VOTEMARKET
|
|
65
71
|
///////////////////////////////////////////////////////////////
|
|
72
|
+
|
|
73
|
+
////////////////////////////////////////////////////////////////
|
|
74
|
+
/// --- GAUGE MANAGER
|
|
75
|
+
|
|
76
|
+
// Curve
|
|
77
|
+
export { gmFetchGauge } from './gaugeManager/curve/gmFetchGauge.js'
|
|
78
|
+
export type { GmGaugeData } from './gaugeManager/curve/gmFetchGauge.js'
|
|
79
|
+
|
|
80
|
+
/// --- END GAUGE MANAGER
|
|
81
|
+
///////////////////////////////////////////////////////////////
|
|
@@ -84,17 +84,12 @@ export const buildCurveStrategies = async (
|
|
|
84
84
|
)
|
|
85
85
|
const decodedPromise = await Promise.allSettled(
|
|
86
86
|
inputArgsChunks.map(async (inputArgs) => {
|
|
87
|
-
const inputData = encodeAbiParameters(parseAbiParameters(batchTokenData.inputType
|
|
88
|
-
|
|
89
|
-
])
|
|
90
|
-
const contractCreationCode = concatBytecode(batchTokenData.bytecode[chainId]!, inputData)
|
|
87
|
+
const inputData = encodeAbiParameters(parseAbiParameters(batchTokenData.inputType || []) as any, [inputArgs])
|
|
88
|
+
const contractCreationCode = concatBytecode(batchTokenData.bytecode, inputData)
|
|
91
89
|
const returnedData = await provider.call({
|
|
92
90
|
data: contractCreationCode,
|
|
93
91
|
})
|
|
94
|
-
return decodeAbiParameters(
|
|
95
|
-
parseAbiParameters(batchTokenData.outputTypeHr[chainId] || []) as any,
|
|
96
|
-
returnedData.data,
|
|
97
|
-
)
|
|
92
|
+
return decodeAbiParameters(parseAbiParameters(batchTokenData.outputTypeHr || []) as any, returnedData.data)
|
|
98
93
|
}),
|
|
99
94
|
)
|
|
100
95
|
|
|
@@ -1,21 +1,46 @@
|
|
|
1
|
-
import { encodeAbiParameters, parseAbiParameters } from 'viem'
|
|
1
|
+
import { decodeAbiParameters, encodeAbiParameters, parseAbiParameters } from 'viem'
|
|
2
2
|
|
|
3
3
|
import { batchPancakeSwapPositions } from '../../../bytecodes/index.js'
|
|
4
4
|
|
|
5
5
|
import { contracts } from '@stake-dao/constants'
|
|
6
|
+
import { range } from 'lodash-es'
|
|
6
7
|
import { concatBytecode } from '../../../index.js'
|
|
7
|
-
import { batchJsonRpc } from '../../../utils.js'
|
|
8
|
+
import { batchJsonRpc, rpcCall } from '../../../utils.js'
|
|
9
|
+
|
|
10
|
+
const PCS_V3_POSITIONS_CHUNK_SIZE = 50
|
|
8
11
|
|
|
9
12
|
export const getPancakeV3Positions = async (rpc: string, chainId: number) => {
|
|
10
|
-
const
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
13
|
+
const nPositionsRequest = await rpcCall(rpc, [
|
|
14
|
+
{
|
|
15
|
+
to: contracts.pancakeMasterchef![chainId]!,
|
|
16
|
+
data: concatBytecode(
|
|
17
|
+
'0x70a08231', // balanceOf(address)
|
|
18
|
+
encodeAbiParameters(parseAbiParameters(['address user']) as any, [contracts.cakeLocker![chainId]]),
|
|
19
|
+
),
|
|
20
|
+
},
|
|
21
|
+
])
|
|
22
|
+
|
|
23
|
+
const nPositions = Number(decodeAbiParameters([{ type: 'uint256', name: 'balanceOf' }], nPositionsRequest[0].result))
|
|
24
|
+
|
|
25
|
+
const positionsCalls = range(0, nPositions, PCS_V3_POSITIONS_CHUNK_SIZE).map((skip) => {
|
|
26
|
+
const inputParams = [
|
|
27
|
+
contracts.pancakeMasterchef![chainId],
|
|
28
|
+
contracts.cakeStrategy![chainId],
|
|
29
|
+
contracts.cakeLocker![chainId],
|
|
30
|
+
skip,
|
|
31
|
+
skip + PCS_V3_POSITIONS_CHUNK_SIZE > nPositions ? nPositions : skip + PCS_V3_POSITIONS_CHUNK_SIZE,
|
|
32
|
+
]
|
|
33
|
+
|
|
34
|
+
const inputData = encodeAbiParameters(
|
|
35
|
+
parseAbiParameters(batchPancakeSwapPositions.inputType[chainId]!) as any,
|
|
36
|
+
inputParams,
|
|
37
|
+
)
|
|
38
|
+
return concatBytecode(batchPancakeSwapPositions.bytecode[chainId]!, inputData)
|
|
39
|
+
})
|
|
15
40
|
|
|
16
41
|
const positionsData = await batchJsonRpc({
|
|
17
42
|
rpc,
|
|
18
|
-
calls:
|
|
43
|
+
calls: positionsCalls,
|
|
19
44
|
outputTypeAbi: batchPancakeSwapPositions.outputTypeHr[chainId]!,
|
|
20
45
|
callsKey: `strategies/pancakeswap/fetch/getPancakeV3Positions.ts: positionsData - chainId ${chainId} - rpc ${rpc}`,
|
|
21
46
|
})
|
|
@@ -73,17 +73,12 @@ export const buildYearnStrategies = async (
|
|
|
73
73
|
)
|
|
74
74
|
const decodedPromise = await Promise.allSettled(
|
|
75
75
|
tokensInputArgsChunks.map(async (inputArgs) => {
|
|
76
|
-
const inputData = encodeAbiParameters(parseAbiParameters(batchTokenData.inputType
|
|
77
|
-
|
|
78
|
-
])
|
|
79
|
-
const contractCreationCode = concatBytecode(batchTokenData.bytecode[chainId]!, inputData)
|
|
76
|
+
const inputData = encodeAbiParameters(parseAbiParameters(batchTokenData.inputType || []) as any, [inputArgs])
|
|
77
|
+
const contractCreationCode = concatBytecode(batchTokenData.bytecode, inputData)
|
|
80
78
|
const returnedData = await provider.call({
|
|
81
79
|
data: contractCreationCode,
|
|
82
80
|
})
|
|
83
|
-
return decodeAbiParameters(
|
|
84
|
-
parseAbiParameters(batchTokenData.outputTypeHr[chainId] || []) as any,
|
|
85
|
-
returnedData.data,
|
|
86
|
-
)
|
|
81
|
+
return decodeAbiParameters(parseAbiParameters(batchTokenData.outputTypeHr || []) as any, returnedData.data)
|
|
87
82
|
}),
|
|
88
83
|
)
|
|
89
84
|
|
package/src/utils.ts
CHANGED
|
@@ -94,7 +94,7 @@ export const rpcCall = async (rpc: string, params: RpcCallArgs[]) => {
|
|
|
94
94
|
return request
|
|
95
95
|
}
|
|
96
96
|
|
|
97
|
-
interface BatchJsonRpcArgs {
|
|
97
|
+
export interface BatchJsonRpcArgs {
|
|
98
98
|
rpc: string
|
|
99
99
|
calls: string[]
|
|
100
100
|
outputTypeAbi: any | any[]
|
|
@@ -212,3 +212,5 @@ export const multichainMulticall = async (calls: MultiChainCall[], abi: readonly
|
|
|
212
212
|
chains.forEach((chainId, index) => (res[chainId] = promisesValues[index]))
|
|
213
213
|
return res
|
|
214
214
|
}
|
|
215
|
+
|
|
216
|
+
export const concatBytecode = (contract: string, args: string): string => contract.concat(args.slice(2))
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { encodeAbiParameters, formatUnits, parseAbiParameters, zeroAddress } from 'viem'
|
|
2
2
|
import { mainnet } from 'viem/chains'
|
|
3
|
-
import batchCurveUserVotes from '../../bytecodes/votemarket/batchCurveUserVotes.js'
|
|
3
|
+
import batchCurveUserVotes from '../../bytecodes/votemarket/curve/batchCurveUserVotes.js'
|
|
4
4
|
import { concatBytecode } from '../../index.js'
|
|
5
5
|
import { batchJsonRpc, equalTlc } from '../../utils.js'
|
|
6
6
|
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
import { ONE_WEEK, tokenWithAddress, tokens } from '@stake-dao/constants'
|
|
2
|
+
import { chunk, filter, range, remove, uniq } from 'lodash-es'
|
|
3
|
+
import { decodeAbiParameters, encodeAbiParameters, formatUnits, parseAbiParameters } from 'viem'
|
|
4
|
+
import { batchTokenData } from '../bytecodes/index.js'
|
|
5
|
+
import batchCampaigns from '../bytecodes/votemarket/batchCampaigns.js'
|
|
6
|
+
import { getPrices } from '../prices.js'
|
|
7
|
+
import { batchJsonRpc, concatBytecode, equalTlc, rpcCall } from '../utils.js'
|
|
8
|
+
import type { Campaign } from './types.js'
|
|
9
|
+
|
|
10
|
+
export const CAMPAIGNS_CHUNK_SIZE = 10
|
|
11
|
+
export const CLAIM_WINDOW_LENGTH = 24 // weeks
|
|
12
|
+
export const CLOSE_WINDOW_LENGTH = 4 // weeks
|
|
13
|
+
|
|
14
|
+
interface FetchCampaignsProps {
|
|
15
|
+
platform: string
|
|
16
|
+
chainId: number
|
|
17
|
+
rpc: string
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
export const fetchCampaigns = async ({ platform, chainId, rpc }: FetchCampaignsProps): Promise<Campaign[]> => {
|
|
21
|
+
const nCampaignsRequest = await rpcCall(rpc, [{ to: platform, data: '0x7274e30d' }]) // campaignCount
|
|
22
|
+
const nCampaigns = Number(
|
|
23
|
+
decodeAbiParameters([{ type: 'uint256', name: 'campaignCount' }], nCampaignsRequest[0].result),
|
|
24
|
+
)
|
|
25
|
+
|
|
26
|
+
const calls = range(0, nCampaigns, CAMPAIGNS_CHUNK_SIZE).map((skip) => {
|
|
27
|
+
const inputParams = [
|
|
28
|
+
platform,
|
|
29
|
+
skip,
|
|
30
|
+
skip + CAMPAIGNS_CHUNK_SIZE > nCampaigns ? nCampaigns : skip + CAMPAIGNS_CHUNK_SIZE,
|
|
31
|
+
]
|
|
32
|
+
|
|
33
|
+
const inputData = encodeAbiParameters(parseAbiParameters(batchCampaigns.inputType[1]!) as any, inputParams)
|
|
34
|
+
return concatBytecode(batchCampaigns.bytecode[1]!, inputData)
|
|
35
|
+
})
|
|
36
|
+
|
|
37
|
+
const rawCampaigns = await batchJsonRpc({
|
|
38
|
+
rpc,
|
|
39
|
+
calls,
|
|
40
|
+
outputTypeAbi: batchCampaigns.outputType![1]!,
|
|
41
|
+
parse: false,
|
|
42
|
+
callsKey: `votemarket/fetchCampaigns.ts: rawCampaigns - chainId ${chainId} - rpc ${rpc}`,
|
|
43
|
+
})
|
|
44
|
+
|
|
45
|
+
const campaignsTokens: string[] = uniq(rawCampaigns.map((rc) => rc.campaign.rewardToken))
|
|
46
|
+
const tokensToFetch: string[] = remove(campaignsTokens, (t) => !tokenWithAddress(t, chainId))
|
|
47
|
+
|
|
48
|
+
let rawTokensData: any[] = []
|
|
49
|
+
if (tokensToFetch.length > 0) {
|
|
50
|
+
const tokensChunks = chunk(tokensToFetch, 40)
|
|
51
|
+
|
|
52
|
+
const tokensCalls = tokensChunks.map((chunk) => {
|
|
53
|
+
const inputData = encodeAbiParameters(parseAbiParameters(batchTokenData.inputType) as any, [chunk])
|
|
54
|
+
return concatBytecode(batchTokenData.bytecode, inputData)
|
|
55
|
+
})
|
|
56
|
+
|
|
57
|
+
rawTokensData = await batchJsonRpc({
|
|
58
|
+
rpc,
|
|
59
|
+
calls: tokensCalls,
|
|
60
|
+
outputTypeAbi: batchTokenData.outputTypeHr,
|
|
61
|
+
callsKey: `votemarket/fetchCampaigns.ts: rawTokensData - chainId ${chainId} - rpc ${rpc}`,
|
|
62
|
+
})
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
const fetchedTokens: any = [
|
|
66
|
+
...filter(tokens, (t) => campaignsTokens.find((ct) => equalTlc(ct, t.address))),
|
|
67
|
+
...rawTokensData.map((t) => ({
|
|
68
|
+
name: t.name,
|
|
69
|
+
symbol: t.symbol,
|
|
70
|
+
address: t.tokenAddress,
|
|
71
|
+
decimals: Number(t.decimals),
|
|
72
|
+
chainId,
|
|
73
|
+
})),
|
|
74
|
+
]
|
|
75
|
+
|
|
76
|
+
const prices = await getPrices(fetchedTokens as any, chainId)
|
|
77
|
+
|
|
78
|
+
const currentTimestamp = Math.floor(Date.now() / 1000)
|
|
79
|
+
|
|
80
|
+
const campaigns = rawCampaigns.map((rc) => {
|
|
81
|
+
const rewardToken = fetchedTokens.find((t) => equalTlc(t.address, rc.campaign.rewardToken) && t.chainId === chainId)
|
|
82
|
+
const decimals = rewardToken ? rewardToken.decimals : 18
|
|
83
|
+
|
|
84
|
+
const rewardTokenPrice = prices.find((p) => equalTlc(rc.campaign.rewardToken, p.address))?.usdPrice || 0
|
|
85
|
+
|
|
86
|
+
const startTimestamp = Number(rc.campaign.startTimestamp)
|
|
87
|
+
const endTimestamp = Number(rc.campaign.endTimestamp)
|
|
88
|
+
|
|
89
|
+
return {
|
|
90
|
+
id: Number(rc.id),
|
|
91
|
+
chainId: Number(rc.campaign.chainId),
|
|
92
|
+
gauge: rc.campaign.gauge,
|
|
93
|
+
manager: rc.campaign.manager,
|
|
94
|
+
rewardToken,
|
|
95
|
+
rewardTokenPrice,
|
|
96
|
+
numberOfPeriods: Number(rc.campaign.numberOfPeriods),
|
|
97
|
+
maxRewardPerVote: formatUnits(rc.campaign.maxRewardPerVote, decimals),
|
|
98
|
+
totalRewardAmount: formatUnits(rc.campaign.totalRewardAmount, decimals),
|
|
99
|
+
totalDistributed: formatUnits(rc.campaign.totalDistributed, decimals),
|
|
100
|
+
startTimestamp,
|
|
101
|
+
endTimestamp,
|
|
102
|
+
hook: rc.campaign.hook,
|
|
103
|
+
isKilled: rc.isKilled,
|
|
104
|
+
addresses: rc.addresses,
|
|
105
|
+
isWhitelist: rc.isWhitelistOnly,
|
|
106
|
+
isBlacklist: !rc.isWhitelistOnly && rc.addresses.length > 0,
|
|
107
|
+
currentPeriod: {
|
|
108
|
+
rewardPerPeriod: formatUnits(rc.currentPeriod.rewardPerPeriod, decimals),
|
|
109
|
+
rewardPerVote: formatUnits(rc.currentPeriod.rewardPerVote, decimals),
|
|
110
|
+
leftover: formatUnits(rc.currentPeriod.leftover, decimals),
|
|
111
|
+
updated: rc.currentPeriod.updated,
|
|
112
|
+
},
|
|
113
|
+
totalPeriods: (endTimestamp - startTimestamp) / ONE_WEEK,
|
|
114
|
+
periodLeft: Number(rc.periodLeft),
|
|
115
|
+
status: {
|
|
116
|
+
voteOpen: endTimestamp - ONE_WEEK > currentTimestamp,
|
|
117
|
+
voteClosed: currentTimestamp > endTimestamp - ONE_WEEK,
|
|
118
|
+
claimOpen: currentTimestamp > startTimestamp,
|
|
119
|
+
claimClosed: currentTimestamp > endTimestamp + CLAIM_WINDOW_LENGTH * ONE_WEEK,
|
|
120
|
+
expired: currentTimestamp > endTimestamp + (CLAIM_WINDOW_LENGTH + CLOSE_WINDOW_LENGTH) * ONE_WEEK,
|
|
121
|
+
},
|
|
122
|
+
}
|
|
123
|
+
})
|
|
124
|
+
|
|
125
|
+
return campaigns
|
|
126
|
+
}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
export type Campaign = {
|
|
2
|
+
id: number
|
|
3
|
+
chainId: number
|
|
4
|
+
gauge: string
|
|
5
|
+
manager: string
|
|
6
|
+
rewardToken: {
|
|
7
|
+
name: string
|
|
8
|
+
symbol: string
|
|
9
|
+
address: string
|
|
10
|
+
decimals: number
|
|
11
|
+
chainId: number
|
|
12
|
+
}
|
|
13
|
+
numberOfPeriods: number
|
|
14
|
+
maxRewardPerVote: string
|
|
15
|
+
totalRewardAmount: string
|
|
16
|
+
totalDistributed: string
|
|
17
|
+
startTimestamp: number
|
|
18
|
+
endTimestamp: number
|
|
19
|
+
hook: string
|
|
20
|
+
isKilled: boolean
|
|
21
|
+
addresses: string[]
|
|
22
|
+
isWhitelist: boolean
|
|
23
|
+
isBlacklist: boolean
|
|
24
|
+
currentPeriod: {
|
|
25
|
+
rewardPerPeriod: string
|
|
26
|
+
rewardPerVote: string
|
|
27
|
+
leftover: string
|
|
28
|
+
updated: boolean
|
|
29
|
+
}
|
|
30
|
+
totalPeriods: number
|
|
31
|
+
periodLeft: number
|
|
32
|
+
status: {
|
|
33
|
+
voteOpen: boolean
|
|
34
|
+
voteClosed: boolean
|
|
35
|
+
claimOpen: boolean
|
|
36
|
+
claimClosed: boolean
|
|
37
|
+
expired: boolean
|
|
38
|
+
}
|
|
39
|
+
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"batchCurveGauges.js","sourceRoot":"","sources":["../../../../src/bytecodes/votemarket/batchCurveGauges.ts"],"names":[],"mappings":"AAEA,MAAM,gBAAgB,GAAkB;IACtC,QAAQ,EAAE;QACR,CAAC,EAAE,krKAAkrK;KACtrK;IACD,SAAS,EAAE;QACT,CAAC,EAAE,CAAC,4BAA4B,CAAC;KAClC;IACD,YAAY,EAAE;QACZ,CAAC,EAAE;YACD,gCAAgC;YAChC,4IAA4I;SAC7I;KACF;IACD,UAAU,EAAE;QACV,CAAC,EAAE;YACD;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,YAAY;gBAClB,UAAU,EAAE;oBACV,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE;oBAClC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACnC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,gBAAgB,EAAE;oBAC3C,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,sBAAsB,EAAE;oBACjD,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE;oBAClC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE;iBACrC;aACF;SACF;KACF;CACF,CAAA;AAED,eAAe,gBAAgB,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"batchCurveGaugesMetadata.js","sourceRoot":"","sources":["../../../../src/bytecodes/votemarket/batchCurveGaugesMetadata.ts"],"names":[],"mappings":"AAEA,MAAM,cAAc,GAClB,shTAAshT,CAAA;AAExhT,MAAM,eAAe,GACnB,4jUAA4jU,CAAA;AAE9jU,MAAM,eAAe,GAAG,CAAC,kBAAkB,CAAC,CAAA;AAE5C,MAAM,kBAAkB,GAAG;IACzB,yBAAyB;IACzB,8DAA8D;IAC9D,kFAAkF;CACnF,CAAA;AAED,MAAM,gBAAgB,GAAG;IACvB;QACE,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,YAAY;QAClB,UAAU,EAAE;YACV,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE;YAClC;gBACE,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,IAAI;gBACV,UAAU,EAAE;oBACV,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE;oBACrC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE;oBAChC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAClC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE;iBACtC;aACF;YACD;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,OAAO;gBACb,UAAU,EAAE;oBACV,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE;oBACrC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE;oBAChC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAClC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE;iBACtC;aACF;SACF;KACF;CACF,CAAA;AAED,0BAA0B;AAC1B,iCAAiC;AACjC,MAAM,wBAAwB,GAAkB;IAC9C,QAAQ,EAAE;QACR,CAAC,EAAE,cAAc;QACjB,GAAG,EAAE,eAAe;QACpB,KAAK,EAAE,eAAe;QACtB,KAAK,EAAE,eAAe;KACvB;IACD,SAAS,EAAE;QACT,CAAC,EAAE,eAAe;KACnB;IACD,YAAY,EAAE;QACZ,CAAC,EAAE,kBAAkB;KACtB;IACD,UAAU,EAAE;QACV,CAAC,EAAE,gBAAgB;KACpB;CACF,CAAA;AAED,eAAe,wBAAwB,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"batchCurveOldLps.js","sourceRoot":"","sources":["../../../../src/bytecodes/votemarket/batchCurveOldLps.ts"],"names":[],"mappings":"AAEA,MAAM,cAAc,GAClB,kxPAAkxP,CAAA;AAEpxP,MAAM,eAAe,GAAG,CAAC,iDAAiD,CAAC,CAAA;AAE3E,MAAM,kBAAkB,GAAG;IACzB,yBAAyB;IACzB,sEAAsE;IACtE,kFAAkF;CACnF,CAAA;AAED,MAAM,gBAAgB,GAAG;IACvB;QACE,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,YAAY;QAClB,UAAU,EAAE;YACV,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE;YACtC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE;YAChC;gBACE,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,OAAO;gBACb,UAAU,EAAE;oBACV,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE;oBACrC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE;oBAChC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE;oBAClC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE;iBACtC;aACF;SACF;KACF;CACF,CAAA;AAED,0BAA0B;AAC1B,iCAAiC;AACjC,MAAM,gBAAgB,GAAkB;IACtC,QAAQ,EAAE;QACR,CAAC,EAAE,cAAc;KAClB;IACD,SAAS,EAAE;QACT,CAAC,EAAE,eAAe;KACnB;IACD,YAAY,EAAE;QACZ,CAAC,EAAE,kBAAkB;KACtB;IACD,UAAU,EAAE;QACV,CAAC,EAAE,gBAAgB;KACpB;CACF,CAAA;AAED,eAAe,gBAAgB,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"batchCurveUserVotes.js","sourceRoot":"","sources":["../../../../src/bytecodes/votemarket/batchCurveUserVotes.ts"],"names":[],"mappings":"AAEA,MAAM,mBAAmB,GAAkB;IACzC,QAAQ,EAAE;QACR,CAAC,EAAE,8yJAA8yJ;KAClzJ;IACD,SAAS,EAAE;QACT,CAAC,EAAE,CAAC,cAAc,CAAC;KACpB;IACD,YAAY,EAAE;QACZ,CAAC,EAAE;YACD,8BAA8B;YAC9B,wDAAwD;YACxD,0FAA0F;SAC3F;KACF;IACD,UAAU,EAAE;QACV,CAAC,EAAE;YACD;gBACE,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,YAAY;gBAClB,UAAU,EAAE;oBACV,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,WAAW,EAAE;oBACtC;wBACE,IAAI,EAAE,SAAS;wBACf,IAAI,EAAE,OAAO;wBACb,UAAU,EAAE;4BACV,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE;4BAClC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE;4BAClC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE;4BAClC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE;4BAClC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE;yBACjC;qBACF;iBACF;aACF;SACF;KACF;CACF,CAAA;AAED,eAAe,mBAAmB,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"batchCurveGauges.d.ts","sourceRoot":"","sources":["../../../../src/bytecodes/votemarket/batchCurveGauges.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAEhD,QAAA,MAAM,gBAAgB,EAAE,aA6BvB,CAAA;AAED,eAAe,gBAAgB,CAAA"}
|