genlayer-js 0.18.3 → 0.18.5
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/CHANGELOG.md +9 -0
- package/CLAUDE.md +66 -0
- package/README.md +52 -1
- package/dist/chains/index.cjs +2 -2
- package/dist/chains/index.d.cts +2 -2
- package/dist/chains/index.d.ts +2 -2
- package/dist/chains/index.js +1 -1
- package/dist/{chains-BYSCF33g.d.cts → chains-B7B7UXdn.d.cts} +7 -2
- package/dist/{chains-BYSCF33g.d.ts → chains-B7B7UXdn.d.ts} +7 -2
- package/dist/{chunk-GEN4SJ6K.js → chunk-NZI52PRP.js} +535 -4
- package/dist/{chunk-ZKBMABRA.cjs → chunk-TBF5WZHL.cjs} +536 -5
- package/dist/{index-Bw-kn7CF.d.cts → index-BVDASTaU.d.cts} +1 -1
- package/dist/index-DPyenUTZ.d.ts +1380 -0
- package/dist/index-Dfaw9WiR.d.cts +1380 -0
- package/dist/{index-DCzgdyMa.d.ts → index-ucNO2REF.d.ts} +1 -1
- package/dist/index.cjs +541 -39
- package/dist/index.d.cts +17 -5
- package/dist/index.d.ts +17 -5
- package/dist/index.js +518 -16
- package/dist/types/index.cjs +2 -2
- package/dist/types/index.d.cts +2 -2
- package/dist/types/index.d.ts +2 -2
- package/dist/types/index.js +1 -1
- package/package.json +1 -1
- package/src/abi/index.ts +1 -0
- package/src/abi/staking.ts +518 -0
- package/src/chains/localnet.ts +3 -1
- package/src/chains/studionet.ts +2 -0
- package/src/chains/testnetAsimov.ts +885 -877
- package/src/client/client.ts +17 -15
- package/src/index.ts +1 -0
- package/src/staking/actions.ts +598 -0
- package/src/staking/index.ts +2 -0
- package/src/staking/utils.ts +22 -0
- package/src/transactions/actions.ts +6 -8
- package/src/types/chains.ts +7 -2
- package/src/types/clients.ts +6 -6
- package/src/types/index.ts +1 -0
- package/src/types/staking.ts +228 -0
- package/tsconfig.vitest-temp.json +41 -0
- package/dist/index-Rls_T310.d.ts +0 -407
- package/dist/index-tixobC8m.d.cts +0 -407
- /package/dist/{chunk-FPZNF3JH.cjs → chunk-W4V73RPN.cjs} +0 -0
- /package/dist/{chunk-47QDX7IX.js → chunk-ZHBOSLFN.js} +0 -0
|
@@ -3996,7 +3996,8 @@ var CONSENSUS_DATA_CONTRACT = {
|
|
|
3996
3996
|
bytecode: ""
|
|
3997
3997
|
};
|
|
3998
3998
|
var localnet = defineChain({
|
|
3999
|
-
id:
|
|
3999
|
+
id: 61127,
|
|
4000
|
+
isStudio: true,
|
|
4000
4001
|
name: "Genlayer Localnet",
|
|
4001
4002
|
rpcUrls: {
|
|
4002
4003
|
default: {
|
|
@@ -4017,6 +4018,7 @@ var localnet = defineChain({
|
|
|
4017
4018
|
testnet: true,
|
|
4018
4019
|
consensusMainContract: CONSENSUS_MAIN_CONTRACT,
|
|
4019
4020
|
consensusDataContract: CONSENSUS_DATA_CONTRACT,
|
|
4021
|
+
stakingContract: null,
|
|
4020
4022
|
defaultNumberOfInitialValidators: 5,
|
|
4021
4023
|
defaultConsensusMaxRotations: 3
|
|
4022
4024
|
});
|
|
@@ -8009,6 +8011,7 @@ var CONSENSUS_DATA_CONTRACT2 = {
|
|
|
8009
8011
|
};
|
|
8010
8012
|
var studionet = defineChain2({
|
|
8011
8013
|
id: 61999,
|
|
8014
|
+
isStudio: true,
|
|
8012
8015
|
name: "Genlayer Studio Network",
|
|
8013
8016
|
rpcUrls: {
|
|
8014
8017
|
default: {
|
|
@@ -8029,16 +8032,540 @@ var studionet = defineChain2({
|
|
|
8029
8032
|
testnet: true,
|
|
8030
8033
|
consensusMainContract: CONSENSUS_MAIN_CONTRACT2,
|
|
8031
8034
|
consensusDataContract: CONSENSUS_DATA_CONTRACT2,
|
|
8035
|
+
stakingContract: null,
|
|
8032
8036
|
defaultNumberOfInitialValidators: 5,
|
|
8033
8037
|
defaultConsensusMaxRotations: 3
|
|
8034
8038
|
});
|
|
8035
8039
|
|
|
8036
8040
|
// src/chains/testnetAsimov.ts
|
|
8037
8041
|
import { defineChain as defineChain3 } from "viem";
|
|
8038
|
-
|
|
8042
|
+
|
|
8043
|
+
// src/abi/staking.ts
|
|
8044
|
+
var VALIDATOR_WALLET_ABI = [
|
|
8045
|
+
{
|
|
8046
|
+
name: "operator",
|
|
8047
|
+
type: "function",
|
|
8048
|
+
stateMutability: "view",
|
|
8049
|
+
inputs: [],
|
|
8050
|
+
outputs: [{ name: "", type: "address" }]
|
|
8051
|
+
},
|
|
8052
|
+
{
|
|
8053
|
+
name: "owner",
|
|
8054
|
+
type: "function",
|
|
8055
|
+
stateMutability: "view",
|
|
8056
|
+
inputs: [],
|
|
8057
|
+
outputs: [{ name: "", type: "address" }]
|
|
8058
|
+
},
|
|
8059
|
+
{
|
|
8060
|
+
name: "getIdentity",
|
|
8061
|
+
type: "function",
|
|
8062
|
+
stateMutability: "view",
|
|
8063
|
+
inputs: [],
|
|
8064
|
+
outputs: [
|
|
8065
|
+
{
|
|
8066
|
+
name: "",
|
|
8067
|
+
type: "tuple",
|
|
8068
|
+
components: [
|
|
8069
|
+
{ name: "moniker", type: "string" },
|
|
8070
|
+
{ name: "logoUri", type: "string" },
|
|
8071
|
+
{ name: "website", type: "string" },
|
|
8072
|
+
{ name: "description", type: "string" },
|
|
8073
|
+
{ name: "email", type: "string" },
|
|
8074
|
+
{ name: "twitter", type: "string" },
|
|
8075
|
+
{ name: "telegram", type: "string" },
|
|
8076
|
+
{ name: "github", type: "string" },
|
|
8077
|
+
{ name: "extraCid", type: "bytes" }
|
|
8078
|
+
]
|
|
8079
|
+
}
|
|
8080
|
+
]
|
|
8081
|
+
},
|
|
8082
|
+
{
|
|
8083
|
+
name: "setOperator",
|
|
8084
|
+
type: "function",
|
|
8085
|
+
stateMutability: "nonpayable",
|
|
8086
|
+
inputs: [{ name: "_operator", type: "address" }],
|
|
8087
|
+
outputs: []
|
|
8088
|
+
},
|
|
8089
|
+
{
|
|
8090
|
+
name: "setIdentity",
|
|
8091
|
+
type: "function",
|
|
8092
|
+
stateMutability: "nonpayable",
|
|
8093
|
+
inputs: [
|
|
8094
|
+
{ name: "moniker", type: "string" },
|
|
8095
|
+
{ name: "logoUri", type: "string" },
|
|
8096
|
+
{ name: "website", type: "string" },
|
|
8097
|
+
{ name: "description", type: "string" },
|
|
8098
|
+
{ name: "email", type: "string" },
|
|
8099
|
+
{ name: "twitter", type: "string" },
|
|
8100
|
+
{ name: "telegram", type: "string" },
|
|
8101
|
+
{ name: "github", type: "string" },
|
|
8102
|
+
{ name: "extraCid", type: "bytes" }
|
|
8103
|
+
],
|
|
8104
|
+
outputs: []
|
|
8105
|
+
}
|
|
8106
|
+
];
|
|
8107
|
+
var STAKING_ABI = [
|
|
8108
|
+
// Custom errors
|
|
8109
|
+
{ name: "BelowMinStake", type: "error", inputs: [] },
|
|
8110
|
+
{ name: "AlreadyValidator", type: "error", inputs: [] },
|
|
8111
|
+
{ name: "NotValidator", type: "error", inputs: [] },
|
|
8112
|
+
{ name: "NotOwner", type: "error", inputs: [] },
|
|
8113
|
+
{ name: "NotOperator", type: "error", inputs: [] },
|
|
8114
|
+
{ name: "ValidatorBanned", type: "error", inputs: [] },
|
|
8115
|
+
{ name: "ValidatorQuarantined", type: "error", inputs: [] },
|
|
8116
|
+
{ name: "InsufficientShares", type: "error", inputs: [] },
|
|
8117
|
+
{ name: "NothingToClaim", type: "error", inputs: [] },
|
|
8118
|
+
{ name: "NotYetClaimable", type: "error", inputs: [] },
|
|
8119
|
+
{ name: "ZeroAmount", type: "error", inputs: [] },
|
|
8120
|
+
{ name: "InvalidOperator", type: "error", inputs: [] },
|
|
8121
|
+
// Validator functions
|
|
8122
|
+
{
|
|
8123
|
+
name: "validatorJoin",
|
|
8124
|
+
type: "function",
|
|
8125
|
+
stateMutability: "payable",
|
|
8126
|
+
inputs: [],
|
|
8127
|
+
outputs: [{ name: "validator", type: "address" }]
|
|
8128
|
+
},
|
|
8129
|
+
{
|
|
8130
|
+
name: "validatorJoin",
|
|
8131
|
+
type: "function",
|
|
8132
|
+
stateMutability: "payable",
|
|
8133
|
+
inputs: [{ name: "_operator", type: "address" }],
|
|
8134
|
+
outputs: [{ name: "validator", type: "address" }]
|
|
8135
|
+
},
|
|
8136
|
+
{
|
|
8137
|
+
name: "validatorDeposit",
|
|
8138
|
+
type: "function",
|
|
8139
|
+
stateMutability: "payable",
|
|
8140
|
+
inputs: [],
|
|
8141
|
+
outputs: []
|
|
8142
|
+
},
|
|
8143
|
+
{
|
|
8144
|
+
name: "validatorExit",
|
|
8145
|
+
type: "function",
|
|
8146
|
+
stateMutability: "nonpayable",
|
|
8147
|
+
inputs: [{ name: "_sharesWithdrawal", type: "uint256" }],
|
|
8148
|
+
outputs: []
|
|
8149
|
+
},
|
|
8150
|
+
{
|
|
8151
|
+
name: "validatorClaim",
|
|
8152
|
+
type: "function",
|
|
8153
|
+
stateMutability: "nonpayable",
|
|
8154
|
+
inputs: [{ name: "_validator", type: "address" }],
|
|
8155
|
+
outputs: [{ name: "", type: "uint256" }]
|
|
8156
|
+
},
|
|
8157
|
+
{
|
|
8158
|
+
name: "validatorPrime",
|
|
8159
|
+
type: "function",
|
|
8160
|
+
stateMutability: "nonpayable",
|
|
8161
|
+
inputs: [{ name: "_validator", type: "address" }],
|
|
8162
|
+
outputs: []
|
|
8163
|
+
},
|
|
8164
|
+
// Delegator functions
|
|
8165
|
+
{
|
|
8166
|
+
name: "delegatorJoin",
|
|
8167
|
+
type: "function",
|
|
8168
|
+
stateMutability: "payable",
|
|
8169
|
+
inputs: [{ name: "_validator", type: "address" }],
|
|
8170
|
+
outputs: []
|
|
8171
|
+
},
|
|
8172
|
+
{
|
|
8173
|
+
name: "delegatorExit",
|
|
8174
|
+
type: "function",
|
|
8175
|
+
stateMutability: "nonpayable",
|
|
8176
|
+
inputs: [
|
|
8177
|
+
{ name: "_validator", type: "address" },
|
|
8178
|
+
{ name: "_sharesExit", type: "uint256" }
|
|
8179
|
+
],
|
|
8180
|
+
outputs: []
|
|
8181
|
+
},
|
|
8182
|
+
{
|
|
8183
|
+
name: "delegatorClaim",
|
|
8184
|
+
type: "function",
|
|
8185
|
+
stateMutability: "nonpayable",
|
|
8186
|
+
inputs: [
|
|
8187
|
+
{ name: "_delegator", type: "address" },
|
|
8188
|
+
{ name: "_validator", type: "address" }
|
|
8189
|
+
],
|
|
8190
|
+
outputs: []
|
|
8191
|
+
},
|
|
8192
|
+
// View functions
|
|
8193
|
+
{
|
|
8194
|
+
name: "isValidator",
|
|
8195
|
+
type: "function",
|
|
8196
|
+
stateMutability: "view",
|
|
8197
|
+
inputs: [{ name: "_address", type: "address" }],
|
|
8198
|
+
outputs: [{ name: "", type: "bool" }]
|
|
8199
|
+
},
|
|
8200
|
+
{
|
|
8201
|
+
name: "validatorView",
|
|
8202
|
+
type: "function",
|
|
8203
|
+
stateMutability: "view",
|
|
8204
|
+
inputs: [{ name: "_validator", type: "address" }],
|
|
8205
|
+
outputs: [
|
|
8206
|
+
{
|
|
8207
|
+
name: "",
|
|
8208
|
+
type: "tuple",
|
|
8209
|
+
components: [
|
|
8210
|
+
{ name: "left", type: "address" },
|
|
8211
|
+
{ name: "right", type: "address" },
|
|
8212
|
+
{ name: "parent", type: "address" },
|
|
8213
|
+
{ name: "eBanned", type: "uint256" },
|
|
8214
|
+
{ name: "ePrimed", type: "uint256" },
|
|
8215
|
+
{ name: "vStake", type: "uint256" },
|
|
8216
|
+
{ name: "vShares", type: "uint256" },
|
|
8217
|
+
{ name: "dStake", type: "uint256" },
|
|
8218
|
+
{ name: "dShares", type: "uint256" },
|
|
8219
|
+
{ name: "vDeposit", type: "uint256" },
|
|
8220
|
+
{ name: "vWithdrawal", type: "uint256" },
|
|
8221
|
+
{ name: "live", type: "bool" }
|
|
8222
|
+
]
|
|
8223
|
+
}
|
|
8224
|
+
]
|
|
8225
|
+
},
|
|
8226
|
+
{
|
|
8227
|
+
name: "sharesOf",
|
|
8228
|
+
type: "function",
|
|
8229
|
+
stateMutability: "view",
|
|
8230
|
+
inputs: [
|
|
8231
|
+
{ name: "_delegator", type: "address" },
|
|
8232
|
+
{ name: "_validator", type: "address" }
|
|
8233
|
+
],
|
|
8234
|
+
outputs: [{ name: "", type: "uint256" }]
|
|
8235
|
+
},
|
|
8236
|
+
{
|
|
8237
|
+
name: "stakeOf",
|
|
8238
|
+
type: "function",
|
|
8239
|
+
stateMutability: "view",
|
|
8240
|
+
inputs: [
|
|
8241
|
+
{ name: "_delegator", type: "address" },
|
|
8242
|
+
{ name: "_validator", type: "address" }
|
|
8243
|
+
],
|
|
8244
|
+
outputs: [{ name: "", type: "uint256" }]
|
|
8245
|
+
},
|
|
8246
|
+
{
|
|
8247
|
+
name: "epoch",
|
|
8248
|
+
type: "function",
|
|
8249
|
+
stateMutability: "view",
|
|
8250
|
+
inputs: [],
|
|
8251
|
+
outputs: [{ name: "", type: "uint256" }]
|
|
8252
|
+
},
|
|
8253
|
+
{
|
|
8254
|
+
name: "validatorMinStake",
|
|
8255
|
+
type: "function",
|
|
8256
|
+
stateMutability: "view",
|
|
8257
|
+
inputs: [],
|
|
8258
|
+
outputs: [{ name: "", type: "uint256" }]
|
|
8259
|
+
},
|
|
8260
|
+
{
|
|
8261
|
+
name: "delegatorMinStake",
|
|
8262
|
+
type: "function",
|
|
8263
|
+
stateMutability: "view",
|
|
8264
|
+
inputs: [],
|
|
8265
|
+
outputs: [{ name: "", type: "uint256" }]
|
|
8266
|
+
},
|
|
8267
|
+
{
|
|
8268
|
+
name: "activeValidators",
|
|
8269
|
+
type: "function",
|
|
8270
|
+
stateMutability: "view",
|
|
8271
|
+
inputs: [],
|
|
8272
|
+
outputs: [{ name: "", type: "address[]" }]
|
|
8273
|
+
},
|
|
8274
|
+
{
|
|
8275
|
+
name: "activeValidatorsCount",
|
|
8276
|
+
type: "function",
|
|
8277
|
+
stateMutability: "view",
|
|
8278
|
+
inputs: [],
|
|
8279
|
+
outputs: [{ name: "", type: "uint256" }]
|
|
8280
|
+
},
|
|
8281
|
+
{
|
|
8282
|
+
name: "epochOdd",
|
|
8283
|
+
type: "function",
|
|
8284
|
+
stateMutability: "view",
|
|
8285
|
+
inputs: [],
|
|
8286
|
+
outputs: [
|
|
8287
|
+
{
|
|
8288
|
+
name: "",
|
|
8289
|
+
type: "tuple",
|
|
8290
|
+
components: [
|
|
8291
|
+
{ name: "start", type: "uint256" },
|
|
8292
|
+
{ name: "end", type: "uint256" },
|
|
8293
|
+
{ name: "inflation", type: "uint256" },
|
|
8294
|
+
{ name: "weight", type: "uint256" },
|
|
8295
|
+
{ name: "weightDeposit", type: "uint256" },
|
|
8296
|
+
{ name: "weightWithdrawal", type: "uint256" },
|
|
8297
|
+
{ name: "vcount", type: "uint256" },
|
|
8298
|
+
{ name: "claimed", type: "uint256" },
|
|
8299
|
+
{ name: "stakeDeposit", type: "uint256" },
|
|
8300
|
+
{ name: "stakeWithdrawal", type: "uint256" }
|
|
8301
|
+
]
|
|
8302
|
+
}
|
|
8303
|
+
]
|
|
8304
|
+
},
|
|
8305
|
+
{
|
|
8306
|
+
name: "epochEven",
|
|
8307
|
+
type: "function",
|
|
8308
|
+
stateMutability: "view",
|
|
8309
|
+
inputs: [],
|
|
8310
|
+
outputs: [
|
|
8311
|
+
{
|
|
8312
|
+
name: "",
|
|
8313
|
+
type: "tuple",
|
|
8314
|
+
components: [
|
|
8315
|
+
{ name: "start", type: "uint256" },
|
|
8316
|
+
{ name: "end", type: "uint256" },
|
|
8317
|
+
{ name: "inflation", type: "uint256" },
|
|
8318
|
+
{ name: "weight", type: "uint256" },
|
|
8319
|
+
{ name: "weightDeposit", type: "uint256" },
|
|
8320
|
+
{ name: "weightWithdrawal", type: "uint256" },
|
|
8321
|
+
{ name: "vcount", type: "uint256" },
|
|
8322
|
+
{ name: "claimed", type: "uint256" },
|
|
8323
|
+
{ name: "stakeDeposit", type: "uint256" },
|
|
8324
|
+
{ name: "stakeWithdrawal", type: "uint256" }
|
|
8325
|
+
]
|
|
8326
|
+
}
|
|
8327
|
+
]
|
|
8328
|
+
},
|
|
8329
|
+
{
|
|
8330
|
+
name: "epochMinDuration",
|
|
8331
|
+
type: "function",
|
|
8332
|
+
stateMutability: "view",
|
|
8333
|
+
inputs: [],
|
|
8334
|
+
outputs: [{ name: "", type: "uint256" }]
|
|
8335
|
+
},
|
|
8336
|
+
{
|
|
8337
|
+
name: "getQuarantinedValidators",
|
|
8338
|
+
type: "function",
|
|
8339
|
+
stateMutability: "view",
|
|
8340
|
+
inputs: [],
|
|
8341
|
+
outputs: [{ name: "", type: "address[]" }]
|
|
8342
|
+
},
|
|
8343
|
+
{
|
|
8344
|
+
name: "getAllQuarantinedValidators",
|
|
8345
|
+
type: "function",
|
|
8346
|
+
stateMutability: "view",
|
|
8347
|
+
inputs: [
|
|
8348
|
+
{ name: "_startIndex", type: "uint256" },
|
|
8349
|
+
{ name: "_size", type: "uint256" }
|
|
8350
|
+
],
|
|
8351
|
+
outputs: [
|
|
8352
|
+
{
|
|
8353
|
+
name: "validatorList",
|
|
8354
|
+
type: "tuple[]",
|
|
8355
|
+
components: [
|
|
8356
|
+
{ name: "validator", type: "address" },
|
|
8357
|
+
{ name: "untilEpochBanned", type: "uint256" },
|
|
8358
|
+
{ name: "permanentlyBanned", type: "bool" }
|
|
8359
|
+
]
|
|
8360
|
+
}
|
|
8361
|
+
]
|
|
8362
|
+
},
|
|
8363
|
+
{
|
|
8364
|
+
name: "getAllBannedValidators",
|
|
8365
|
+
type: "function",
|
|
8366
|
+
stateMutability: "view",
|
|
8367
|
+
inputs: [
|
|
8368
|
+
{ name: "_startIndex", type: "uint256" },
|
|
8369
|
+
{ name: "_size", type: "uint256" }
|
|
8370
|
+
],
|
|
8371
|
+
outputs: [
|
|
8372
|
+
{
|
|
8373
|
+
name: "validatorList",
|
|
8374
|
+
type: "tuple[]",
|
|
8375
|
+
components: [
|
|
8376
|
+
{ name: "validator", type: "address" },
|
|
8377
|
+
{ name: "untilEpochBanned", type: "uint256" },
|
|
8378
|
+
{ name: "permanentlyBanned", type: "bool" }
|
|
8379
|
+
]
|
|
8380
|
+
}
|
|
8381
|
+
]
|
|
8382
|
+
},
|
|
8383
|
+
// Deposit query functions
|
|
8384
|
+
{
|
|
8385
|
+
name: "validatorDepositLen",
|
|
8386
|
+
type: "function",
|
|
8387
|
+
stateMutability: "view",
|
|
8388
|
+
inputs: [{ name: "_validator", type: "address" }],
|
|
8389
|
+
outputs: [{ name: "len_", type: "uint256" }]
|
|
8390
|
+
},
|
|
8391
|
+
{
|
|
8392
|
+
name: "validatorDeposit",
|
|
8393
|
+
type: "function",
|
|
8394
|
+
stateMutability: "view",
|
|
8395
|
+
inputs: [
|
|
8396
|
+
{ name: "_validator", type: "address" },
|
|
8397
|
+
{ name: "_index", type: "uint256" }
|
|
8398
|
+
],
|
|
8399
|
+
outputs: [
|
|
8400
|
+
{ name: "epoch_", type: "uint256" },
|
|
8401
|
+
{
|
|
8402
|
+
name: "commit_",
|
|
8403
|
+
type: "tuple",
|
|
8404
|
+
components: [
|
|
8405
|
+
{ name: "input", type: "uint256" },
|
|
8406
|
+
{ name: "output", type: "uint256" },
|
|
8407
|
+
{ name: "epoch", type: "uint256" },
|
|
8408
|
+
{ name: "linkToNextCommit", type: "uint256" }
|
|
8409
|
+
]
|
|
8410
|
+
}
|
|
8411
|
+
]
|
|
8412
|
+
},
|
|
8413
|
+
{
|
|
8414
|
+
name: "delegatorDepositLen",
|
|
8415
|
+
type: "function",
|
|
8416
|
+
stateMutability: "view",
|
|
8417
|
+
inputs: [
|
|
8418
|
+
{ name: "_delegator", type: "address" },
|
|
8419
|
+
{ name: "_validator", type: "address" }
|
|
8420
|
+
],
|
|
8421
|
+
outputs: [{ name: "", type: "uint256" }]
|
|
8422
|
+
},
|
|
8423
|
+
{
|
|
8424
|
+
name: "delegatorDeposit",
|
|
8425
|
+
type: "function",
|
|
8426
|
+
stateMutability: "view",
|
|
8427
|
+
inputs: [
|
|
8428
|
+
{ name: "_delegator", type: "address" },
|
|
8429
|
+
{ name: "_validator", type: "address" },
|
|
8430
|
+
{ name: "_index", type: "uint256" }
|
|
8431
|
+
],
|
|
8432
|
+
outputs: [
|
|
8433
|
+
{
|
|
8434
|
+
name: "claim_",
|
|
8435
|
+
type: "tuple",
|
|
8436
|
+
components: [
|
|
8437
|
+
{ name: "quantity", type: "uint256" },
|
|
8438
|
+
{ name: "commit", type: "uint256" }
|
|
8439
|
+
]
|
|
8440
|
+
},
|
|
8441
|
+
{
|
|
8442
|
+
name: "commit_",
|
|
8443
|
+
type: "tuple",
|
|
8444
|
+
components: [
|
|
8445
|
+
{ name: "input", type: "uint256" },
|
|
8446
|
+
{ name: "output", type: "uint256" },
|
|
8447
|
+
{ name: "epoch", type: "uint256" },
|
|
8448
|
+
{ name: "linkToNextCommit", type: "uint256" }
|
|
8449
|
+
]
|
|
8450
|
+
}
|
|
8451
|
+
]
|
|
8452
|
+
},
|
|
8453
|
+
// Withdrawal query functions
|
|
8454
|
+
{
|
|
8455
|
+
name: "validatorWithdrawalLen",
|
|
8456
|
+
type: "function",
|
|
8457
|
+
stateMutability: "view",
|
|
8458
|
+
inputs: [{ name: "_validator", type: "address" }],
|
|
8459
|
+
outputs: [{ name: "len_", type: "uint256" }]
|
|
8460
|
+
},
|
|
8461
|
+
{
|
|
8462
|
+
name: "validatorWithdrawal",
|
|
8463
|
+
type: "function",
|
|
8464
|
+
stateMutability: "view",
|
|
8465
|
+
inputs: [
|
|
8466
|
+
{ name: "_validator", type: "address" },
|
|
8467
|
+
{ name: "_index", type: "uint256" }
|
|
8468
|
+
],
|
|
8469
|
+
outputs: [
|
|
8470
|
+
{ name: "epoch_", type: "uint256" },
|
|
8471
|
+
{
|
|
8472
|
+
name: "commit_",
|
|
8473
|
+
type: "tuple",
|
|
8474
|
+
components: [
|
|
8475
|
+
{ name: "input", type: "uint256" },
|
|
8476
|
+
{ name: "output", type: "uint256" },
|
|
8477
|
+
{ name: "epoch", type: "uint256" },
|
|
8478
|
+
{ name: "linkToNextCommit", type: "uint256" }
|
|
8479
|
+
]
|
|
8480
|
+
}
|
|
8481
|
+
]
|
|
8482
|
+
},
|
|
8483
|
+
{
|
|
8484
|
+
name: "delegatorWithdrawalLen",
|
|
8485
|
+
type: "function",
|
|
8486
|
+
stateMutability: "view",
|
|
8487
|
+
inputs: [
|
|
8488
|
+
{ name: "_delegator", type: "address" },
|
|
8489
|
+
{ name: "_validator", type: "address" }
|
|
8490
|
+
],
|
|
8491
|
+
outputs: [{ name: "", type: "uint256" }]
|
|
8492
|
+
},
|
|
8493
|
+
{
|
|
8494
|
+
name: "delegatorWithdrawal",
|
|
8495
|
+
type: "function",
|
|
8496
|
+
stateMutability: "view",
|
|
8497
|
+
inputs: [
|
|
8498
|
+
{ name: "_delegator", type: "address" },
|
|
8499
|
+
{ name: "_validator", type: "address" },
|
|
8500
|
+
{ name: "_index", type: "uint256" }
|
|
8501
|
+
],
|
|
8502
|
+
outputs: [
|
|
8503
|
+
{
|
|
8504
|
+
name: "claim_",
|
|
8505
|
+
type: "tuple",
|
|
8506
|
+
components: [
|
|
8507
|
+
{ name: "quantity", type: "uint256" },
|
|
8508
|
+
{ name: "commit", type: "uint256" }
|
|
8509
|
+
]
|
|
8510
|
+
},
|
|
8511
|
+
{
|
|
8512
|
+
name: "commit_",
|
|
8513
|
+
type: "tuple",
|
|
8514
|
+
components: [
|
|
8515
|
+
{ name: "input", type: "uint256" },
|
|
8516
|
+
{ name: "output", type: "uint256" },
|
|
8517
|
+
{ name: "epoch", type: "uint256" },
|
|
8518
|
+
{ name: "linkToNextCommit", type: "uint256" }
|
|
8519
|
+
]
|
|
8520
|
+
}
|
|
8521
|
+
]
|
|
8522
|
+
},
|
|
8523
|
+
// Events (none indexed to match deployed contract)
|
|
8524
|
+
{
|
|
8525
|
+
name: "ValidatorJoin",
|
|
8526
|
+
type: "event",
|
|
8527
|
+
inputs: [
|
|
8528
|
+
{ name: "operator", type: "address", indexed: false },
|
|
8529
|
+
{ name: "validator", type: "address", indexed: false },
|
|
8530
|
+
{ name: "amount", type: "uint256", indexed: false }
|
|
8531
|
+
]
|
|
8532
|
+
},
|
|
8533
|
+
{
|
|
8534
|
+
name: "ValidatorDeposit",
|
|
8535
|
+
type: "event",
|
|
8536
|
+
inputs: [
|
|
8537
|
+
{ name: "validator", type: "address", indexed: false },
|
|
8538
|
+
{ name: "amount", type: "uint256", indexed: false }
|
|
8539
|
+
]
|
|
8540
|
+
},
|
|
8541
|
+
{
|
|
8542
|
+
name: "ValidatorExit",
|
|
8543
|
+
type: "event",
|
|
8544
|
+
inputs: [
|
|
8545
|
+
{ name: "validator", type: "address", indexed: false },
|
|
8546
|
+
{ name: "shares", type: "uint256", indexed: false }
|
|
8547
|
+
]
|
|
8548
|
+
},
|
|
8549
|
+
{
|
|
8550
|
+
name: "DelegatorJoin",
|
|
8551
|
+
type: "event",
|
|
8552
|
+
inputs: [
|
|
8553
|
+
{ name: "delegator", type: "address", indexed: false },
|
|
8554
|
+
{ name: "validator", type: "address", indexed: false },
|
|
8555
|
+
{ name: "amount", type: "uint256", indexed: false }
|
|
8556
|
+
]
|
|
8557
|
+
}
|
|
8558
|
+
];
|
|
8559
|
+
|
|
8560
|
+
// src/chains/testnetAsimov.ts
|
|
8561
|
+
var TESTNET_JSON_RPC_URL = "https://genlayer-testnet.rpc.caldera.xyz/http";
|
|
8562
|
+
var STAKING_CONTRACT = {
|
|
8563
|
+
address: "0x03f410748EBdb4026a6b8299E9B6603A273709D1",
|
|
8564
|
+
abi: STAKING_ABI
|
|
8565
|
+
};
|
|
8039
8566
|
var EXPLORER_URL2 = "https://explorer-asimov.genlayer.com/";
|
|
8040
8567
|
var CONSENSUS_MAIN_CONTRACT3 = {
|
|
8041
|
-
address: "
|
|
8568
|
+
address: "0x67fd4aC71530FB220E0B7F90668BAF977B88fF07",
|
|
8042
8569
|
abi: [
|
|
8043
8570
|
{
|
|
8044
8571
|
inputs: [],
|
|
@@ -9427,7 +9954,7 @@ var CONSENSUS_MAIN_CONTRACT3 = {
|
|
|
9427
9954
|
bytecode: ""
|
|
9428
9955
|
};
|
|
9429
9956
|
var CONSENSUS_DATA_CONTRACT3 = {
|
|
9430
|
-
address: "
|
|
9957
|
+
address: "0xB6E1316E57d47d82FDcEa5002028a554754EF243",
|
|
9431
9958
|
abi: [
|
|
9432
9959
|
{
|
|
9433
9960
|
inputs: [],
|
|
@@ -12009,6 +12536,7 @@ var CONSENSUS_DATA_CONTRACT3 = {
|
|
|
12009
12536
|
};
|
|
12010
12537
|
var testnetAsimov = defineChain3({
|
|
12011
12538
|
id: 4221,
|
|
12539
|
+
isStudio: false,
|
|
12012
12540
|
name: "Genlayer Asimov Testnet",
|
|
12013
12541
|
rpcUrls: {
|
|
12014
12542
|
default: {
|
|
@@ -12029,6 +12557,7 @@ var testnetAsimov = defineChain3({
|
|
|
12029
12557
|
testnet: true,
|
|
12030
12558
|
consensusMainContract: CONSENSUS_MAIN_CONTRACT3,
|
|
12031
12559
|
consensusDataContract: CONSENSUS_DATA_CONTRACT3,
|
|
12560
|
+
stakingContract: STAKING_CONTRACT,
|
|
12032
12561
|
defaultNumberOfInitialValidators: 5,
|
|
12033
12562
|
defaultConsensusMaxRotations: 3
|
|
12034
12563
|
});
|
|
@@ -12036,6 +12565,8 @@ var testnetAsimov = defineChain3({
|
|
|
12036
12565
|
export {
|
|
12037
12566
|
localnet,
|
|
12038
12567
|
studionet,
|
|
12568
|
+
VALIDATOR_WALLET_ABI,
|
|
12569
|
+
STAKING_ABI,
|
|
12039
12570
|
testnetAsimov,
|
|
12040
12571
|
chains_exports
|
|
12041
12572
|
};
|