@lodestar/validator 1.22.0-dev.9c62011986 → 1.22.0-dev.9fe72391be
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/lib/services/attestation.d.ts +3 -1
- package/lib/services/attestation.js +48 -19
- package/lib/services/attestation.js.map +1 -1
- package/lib/services/attestationDuties.js +3 -4
- package/lib/services/attestationDuties.js.map +1 -1
- package/lib/services/block.js +3 -4
- package/lib/services/block.js.map +1 -1
- package/lib/services/blockDuties.js +4 -5
- package/lib/services/blockDuties.js.map +1 -1
- package/lib/services/chainHeaderTracker.js +2 -2
- package/lib/services/chainHeaderTracker.js.map +1 -1
- package/lib/services/doppelgangerService.js +2 -3
- package/lib/services/doppelgangerService.js.map +1 -1
- package/lib/services/externalSignerSync.js +2 -3
- package/lib/services/externalSignerSync.js.map +1 -1
- package/lib/services/indices.js +2 -3
- package/lib/services/indices.js.map +1 -1
- package/lib/services/syncCommitteeDuties.js +2 -2
- package/lib/services/syncCommitteeDuties.js.map +1 -1
- package/lib/services/validatorStore.d.ts +3 -3
- package/lib/services/validatorStore.js +38 -21
- package/lib/services/validatorStore.js.map +1 -1
- package/lib/slashingProtection/index.js +3 -3
- package/lib/slashingProtection/index.js.map +1 -1
- package/lib/slashingProtection/interchange/formats/completeV4.js +5 -5
- package/lib/slashingProtection/interchange/formats/completeV4.js.map +1 -1
- package/lib/slashingProtection/interchange/formats/v5.js +5 -5
- package/lib/slashingProtection/interchange/formats/v5.js.map +1 -1
- package/lib/slashingProtection/utils.js +4 -4
- package/lib/slashingProtection/utils.js.map +1 -1
- package/lib/util/difference.js +3 -3
- package/lib/util/difference.js.map +1 -1
- package/lib/util/externalSignerClient.js +6 -5
- package/lib/util/externalSignerClient.js.map +1 -1
- package/lib/util/params.js +20 -0
- package/lib/util/params.js.map +1 -1
- package/lib/validator.js +5 -6
- package/lib/validator.js.map +1 -1
- package/package.json +11 -11
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"syncCommitteeDuties.js","sourceRoot":"","sources":["../../src/services/syncCommitteeDuties.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,
|
|
1
|
+
{"version":3,"file":"syncCommitteeDuties.js","sourceRoot":"","sources":["../../src/services/syncCommitteeDuties.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { SecretKey } from "@chainsafe/blst";
|
|
2
2
|
import { BeaconConfig } from "@lodestar/config";
|
|
3
|
-
import { altair, BeaconBlock, bellatrix, BlindedBeaconBlock, BLSPubkey, BLSSignature, Epoch, phase0, Root, SignedBeaconBlock, SignedBlindedBeaconBlock, Slot, ValidatorIndex } from "@lodestar/types";
|
|
3
|
+
import { altair, BeaconBlock, bellatrix, BlindedBeaconBlock, BLSPubkey, BLSSignature, Epoch, phase0, Root, SignedBeaconBlock, SignedBlindedBeaconBlock, Slot, ValidatorIndex, Attestation, SignedAggregateAndProof } from "@lodestar/types";
|
|
4
4
|
import { routes } from "@lodestar/api";
|
|
5
5
|
import { ISlashingProtection } from "../slashingProtection/index.js";
|
|
6
6
|
import { PubkeyHex } from "../types.js";
|
|
@@ -115,8 +115,8 @@ export declare class ValidatorStore {
|
|
|
115
115
|
getRemoteSignerPubkeys(signerUrl: string): PubkeyHex[];
|
|
116
116
|
signBlock(pubkey: BLSPubkey, blindedOrFull: BeaconBlock | BlindedBeaconBlock, currentSlot: Slot, logger?: LoggerVc): Promise<SignedBeaconBlock | SignedBlindedBeaconBlock>;
|
|
117
117
|
signRandao(pubkey: BLSPubkey, slot: Slot): Promise<BLSSignature>;
|
|
118
|
-
signAttestation(duty: routes.validator.AttesterDuty, attestationData: phase0.AttestationData, currentEpoch: Epoch): Promise<
|
|
119
|
-
signAggregateAndProof(duty: routes.validator.AttesterDuty, selectionProof: BLSSignature, aggregate:
|
|
118
|
+
signAttestation(duty: routes.validator.AttesterDuty, attestationData: phase0.AttestationData, currentEpoch: Epoch): Promise<Attestation>;
|
|
119
|
+
signAggregateAndProof(duty: routes.validator.AttesterDuty, selectionProof: BLSSignature, aggregate: Attestation): Promise<SignedAggregateAndProof>;
|
|
120
120
|
signSyncCommitteeSignature(pubkey: BLSPubkeyMaybeHex, validatorIndex: ValidatorIndex, slot: Slot, beaconBlockRoot: Root): Promise<altair.SyncCommitteeMessage>;
|
|
121
121
|
signContributionAndProof(duty: {
|
|
122
122
|
pubkey: BLSPubkeyMaybeHex;
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import { BitArray
|
|
1
|
+
import { BitArray } from "@chainsafe/ssz";
|
|
2
2
|
import { computeEpochAtSlot, computeSigningRoot, computeStartSlotAtEpoch, computeDomain, ZERO_HASH, blindedOrFullBlockHashTreeRoot, } from "@lodestar/state-transition";
|
|
3
|
-
import { DOMAIN_AGGREGATE_AND_PROOF, DOMAIN_BEACON_ATTESTER, DOMAIN_BEACON_PROPOSER, DOMAIN_CONTRIBUTION_AND_PROOF, DOMAIN_RANDAO, DOMAIN_SELECTION_PROOF, DOMAIN_SYNC_COMMITTEE, DOMAIN_SYNC_COMMITTEE_SELECTION_PROOF, DOMAIN_APPLICATION_BUILDER, } from "@lodestar/params";
|
|
3
|
+
import { DOMAIN_AGGREGATE_AND_PROOF, DOMAIN_BEACON_ATTESTER, DOMAIN_BEACON_PROPOSER, DOMAIN_CONTRIBUTION_AND_PROOF, DOMAIN_RANDAO, DOMAIN_SELECTION_PROOF, DOMAIN_SYNC_COMMITTEE, DOMAIN_SYNC_COMMITTEE_SELECTION_PROOF, DOMAIN_APPLICATION_BUILDER, ForkSeq, MAX_COMMITTEES_PER_SLOT, } from "@lodestar/params";
|
|
4
4
|
import { ssz, } from "@lodestar/types";
|
|
5
5
|
import { routes } from "@lodestar/api";
|
|
6
|
+
import { fromHex, toPubkeyHex, toRootHex } from "@lodestar/utils";
|
|
6
7
|
import { externalSignerPostSignature, SignableMessageType } from "../util/externalSignerClient.js";
|
|
7
8
|
import { isValidatePubkeyHex } from "../util/format.js";
|
|
8
9
|
export var SignerType;
|
|
@@ -268,8 +269,8 @@ export class ValidatorStore {
|
|
|
268
269
|
const signingRoot = ssz.phase0.SigningData.hashTreeRoot({ objectRoot: blockRoot, domain });
|
|
269
270
|
logger?.debug("Signing the block proposal", {
|
|
270
271
|
slot: signingSlot,
|
|
271
|
-
blockRoot:
|
|
272
|
-
signingRoot:
|
|
272
|
+
blockRoot: toRootHex(blockRoot),
|
|
273
|
+
signingRoot: toRootHex(signingRoot),
|
|
273
274
|
});
|
|
274
275
|
try {
|
|
275
276
|
await this.slashingProtection.checkAndInsertBlockProposal(pubkey, { slot: signingSlot, signingRoot });
|
|
@@ -324,11 +325,21 @@ export class ValidatorStore {
|
|
|
324
325
|
type: SignableMessageType.ATTESTATION,
|
|
325
326
|
data: attestationData,
|
|
326
327
|
};
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
328
|
+
if (this.config.getForkSeq(duty.slot) >= ForkSeq.electra) {
|
|
329
|
+
return {
|
|
330
|
+
aggregationBits: BitArray.fromSingleBit(duty.committeeLength, duty.validatorCommitteeIndex),
|
|
331
|
+
data: attestationData,
|
|
332
|
+
signature: await this.getSignature(duty.pubkey, signingRoot, signingSlot, signableMessage),
|
|
333
|
+
committeeBits: BitArray.fromSingleBit(MAX_COMMITTEES_PER_SLOT, duty.committeeIndex),
|
|
334
|
+
};
|
|
335
|
+
}
|
|
336
|
+
else {
|
|
337
|
+
return {
|
|
338
|
+
aggregationBits: BitArray.fromSingleBit(duty.committeeLength, duty.validatorCommitteeIndex),
|
|
339
|
+
data: attestationData,
|
|
340
|
+
signature: await this.getSignature(duty.pubkey, signingRoot, signingSlot, signableMessage),
|
|
341
|
+
};
|
|
342
|
+
}
|
|
332
343
|
}
|
|
333
344
|
async signAggregateAndProof(duty, selectionProof, aggregate) {
|
|
334
345
|
this.validateAttestationDuty(duty, aggregate.data);
|
|
@@ -339,7 +350,9 @@ export class ValidatorStore {
|
|
|
339
350
|
};
|
|
340
351
|
const signingSlot = aggregate.data.slot;
|
|
341
352
|
const domain = this.config.getDomain(signingSlot, DOMAIN_AGGREGATE_AND_PROOF);
|
|
342
|
-
const signingRoot =
|
|
353
|
+
const signingRoot = this.config.getForkSeq(duty.slot) >= ForkSeq.electra
|
|
354
|
+
? computeSigningRoot(ssz.electra.AggregateAndProof, aggregateAndProof, domain)
|
|
355
|
+
: computeSigningRoot(ssz.phase0.AggregateAndProof, aggregateAndProof, domain);
|
|
343
356
|
const signableMessage = {
|
|
344
357
|
type: SignableMessageType.AGGREGATE_AND_PROOF,
|
|
345
358
|
data: aggregateAndProof,
|
|
@@ -425,8 +438,8 @@ export class ValidatorStore {
|
|
|
425
438
|
return !this.doppelgangerService || this.doppelgangerService.isDoppelgangerSafe(pubkeyHex);
|
|
426
439
|
}
|
|
427
440
|
async signValidatorRegistration(pubkeyMaybeHex, regAttributes, _slot) {
|
|
428
|
-
const pubkey = typeof pubkeyMaybeHex === "string" ?
|
|
429
|
-
const feeRecipient =
|
|
441
|
+
const pubkey = typeof pubkeyMaybeHex === "string" ? fromHex(pubkeyMaybeHex) : pubkeyMaybeHex;
|
|
442
|
+
const feeRecipient = fromHex(regAttributes.feeRecipient);
|
|
430
443
|
const { gasLimit } = regAttributes;
|
|
431
444
|
const validatorRegistration = {
|
|
432
445
|
feeRecipient,
|
|
@@ -447,7 +460,7 @@ export class ValidatorStore {
|
|
|
447
460
|
};
|
|
448
461
|
}
|
|
449
462
|
async getValidatorRegistration(pubkeyMaybeHex, regAttributes, slot) {
|
|
450
|
-
const pubkeyHex = typeof pubkeyMaybeHex === "string" ? pubkeyMaybeHex :
|
|
463
|
+
const pubkeyHex = typeof pubkeyMaybeHex === "string" ? pubkeyMaybeHex : toPubkeyHex(pubkeyMaybeHex);
|
|
451
464
|
const { feeRecipient, gasLimit } = regAttributes;
|
|
452
465
|
const regFullKey = `${feeRecipient}-${gasLimit}`;
|
|
453
466
|
const validatorData = this.validators.get(pubkeyHex);
|
|
@@ -466,8 +479,8 @@ export class ValidatorStore {
|
|
|
466
479
|
}
|
|
467
480
|
}
|
|
468
481
|
async getSignature(pubkey, signingRoot, signingSlot, signableMessage) {
|
|
469
|
-
// TODO: Refactor indexing to not have to run
|
|
470
|
-
const pubkeyHex = typeof pubkey === "string" ? pubkey :
|
|
482
|
+
// TODO: Refactor indexing to not have to run toHex() on the pubkey every time
|
|
483
|
+
const pubkeyHex = typeof pubkey === "string" ? pubkey : toPubkeyHex(pubkey);
|
|
471
484
|
const signer = this.validators.get(pubkeyHex)?.signer;
|
|
472
485
|
if (!signer) {
|
|
473
486
|
throw Error(`Validator pubkey ${pubkeyHex} not known`);
|
|
@@ -483,7 +496,7 @@ export class ValidatorStore {
|
|
|
483
496
|
const timer = this.metrics?.remoteSignTime.startTimer();
|
|
484
497
|
try {
|
|
485
498
|
const signatureHex = await externalSignerPostSignature(this.config, signer.url, pubkeyHex, signingRoot, signingSlot, signableMessage);
|
|
486
|
-
return
|
|
499
|
+
return fromHex(signatureHex);
|
|
487
500
|
}
|
|
488
501
|
catch (e) {
|
|
489
502
|
this.metrics?.remoteSignErrors.inc();
|
|
@@ -496,8 +509,8 @@ export class ValidatorStore {
|
|
|
496
509
|
}
|
|
497
510
|
}
|
|
498
511
|
getSignerAndPubkeyHex(pubkey) {
|
|
499
|
-
// TODO: Refactor indexing to not have to run
|
|
500
|
-
const pubkeyHex = typeof pubkey === "string" ? pubkey :
|
|
512
|
+
// TODO: Refactor indexing to not have to run toHex() on the pubkey every time
|
|
513
|
+
const pubkeyHex = typeof pubkey === "string" ? pubkey : toPubkeyHex(pubkey);
|
|
501
514
|
const signer = this.validators.get(pubkeyHex)?.signer;
|
|
502
515
|
if (!signer) {
|
|
503
516
|
throw Error(`Validator pubkey ${pubkeyHex} not known`);
|
|
@@ -509,12 +522,16 @@ export class ValidatorStore {
|
|
|
509
522
|
if (duty.slot !== data.slot) {
|
|
510
523
|
throw Error(`Inconsistent duties during signing: duty.slot ${duty.slot} != att.slot ${data.slot}`);
|
|
511
524
|
}
|
|
512
|
-
|
|
525
|
+
const isPostElectra = this.config.getForkSeq(duty.slot) >= ForkSeq.electra;
|
|
526
|
+
if (!isPostElectra && duty.committeeIndex != data.index) {
|
|
513
527
|
throw Error(`Inconsistent duties during signing: duty.committeeIndex ${duty.committeeIndex} != att.committeeIndex ${data.index}`);
|
|
514
528
|
}
|
|
529
|
+
if (isPostElectra && data.index !== 0) {
|
|
530
|
+
throw Error(`Non-zero committee index post-electra during signing: att.committeeIndex ${data.index}`);
|
|
531
|
+
}
|
|
515
532
|
}
|
|
516
533
|
assertDoppelgangerSafe(pubKey) {
|
|
517
|
-
const pubkeyHex = typeof pubKey === "string" ? pubKey :
|
|
534
|
+
const pubkeyHex = typeof pubKey === "string" ? pubKey : toPubkeyHex(pubKey);
|
|
518
535
|
if (!this.isDoppelgangerSafe(pubkeyHex)) {
|
|
519
536
|
throw new Error(`Doppelganger state for key ${pubkeyHex} is not safe`);
|
|
520
537
|
}
|
|
@@ -523,7 +540,7 @@ export class ValidatorStore {
|
|
|
523
540
|
function getSignerPubkeyHex(signer) {
|
|
524
541
|
switch (signer.type) {
|
|
525
542
|
case SignerType.Local:
|
|
526
|
-
return
|
|
543
|
+
return toPubkeyHex(signer.secretKey.toPublicKey().toBytes());
|
|
527
544
|
case SignerType.Remote:
|
|
528
545
|
if (!isValidatePubkeyHex(signer.pubkey)) {
|
|
529
546
|
throw Error(`Bad format in RemoteSigner.pubkey ${signer.pubkey}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validatorStore.js","sourceRoot":"","sources":["../../src/services/validatorStore.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"validatorStore.js","sourceRoot":"","sources":["../../src/services/validatorStore.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { toPubkeyHex } from "@lodestar/utils";
|
|
2
2
|
import { uniqueVectorArr } from "../slashingProtection/utils.js";
|
|
3
3
|
import { BlockBySlotRepository, SlashingProtectionBlockService } from "./block/index.js";
|
|
4
4
|
import { AttestationByTargetRepository, AttestationLowerBoundRepository, SlashingProtectionAttestationService, } from "./attestation/index.js";
|
|
@@ -34,7 +34,7 @@ export class SlashingProtection {
|
|
|
34
34
|
async importInterchange(interchange, genesisValidatorsRoot, logger) {
|
|
35
35
|
const { data } = parseInterchange(interchange, genesisValidatorsRoot);
|
|
36
36
|
for (const validator of data) {
|
|
37
|
-
logger?.info("Importing slashing protection", { pubkey:
|
|
37
|
+
logger?.info("Importing slashing protection", { pubkey: toPubkeyHex(validator.pubkey) });
|
|
38
38
|
await this.blockService.importBlocks(validator.pubkey, validator.signedBlocks);
|
|
39
39
|
await this.attestationService.importAttestations(validator.pubkey, validator.signedAttestations);
|
|
40
40
|
}
|
|
@@ -42,7 +42,7 @@ export class SlashingProtection {
|
|
|
42
42
|
async exportInterchange(genesisValidatorsRoot, pubkeys, formatVersion, logger) {
|
|
43
43
|
const validatorData = [];
|
|
44
44
|
for (const pubkey of pubkeys) {
|
|
45
|
-
logger?.info("Exporting slashing protection", { pubkey:
|
|
45
|
+
logger?.info("Exporting slashing protection", { pubkey: toPubkeyHex(pubkey) });
|
|
46
46
|
validatorData.push({
|
|
47
47
|
pubkey,
|
|
48
48
|
signedBlocks: await this.blockService.exportBlocks(pubkey),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/slashingProtection/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/slashingProtection/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
/* eslint-disable @typescript-eslint/naming-convention */
|
|
2
|
-
import {
|
|
2
|
+
import { fromHex, toPubkeyHex, toRootHex } from "@lodestar/utils";
|
|
3
3
|
import { fromOptionalHexString, numToString, toOptionalHexString } from "../../utils.js";
|
|
4
4
|
export function serializeInterchangeCompleteV4({ data, genesisValidatorsRoot, }) {
|
|
5
5
|
return {
|
|
6
6
|
metadata: {
|
|
7
7
|
interchange_format: "complete",
|
|
8
8
|
interchange_format_version: "4",
|
|
9
|
-
genesis_validators_root:
|
|
9
|
+
genesis_validators_root: toRootHex(genesisValidatorsRoot),
|
|
10
10
|
},
|
|
11
11
|
data: data.map((validator) => ({
|
|
12
|
-
pubkey:
|
|
12
|
+
pubkey: toPubkeyHex(validator.pubkey),
|
|
13
13
|
signed_blocks: validator.signedBlocks.map((block) => ({
|
|
14
14
|
slot: numToString(block.slot),
|
|
15
15
|
signing_root: toOptionalHexString(block.signingRoot),
|
|
@@ -24,9 +24,9 @@ export function serializeInterchangeCompleteV4({ data, genesisValidatorsRoot, })
|
|
|
24
24
|
}
|
|
25
25
|
export function parseInterchangeCompleteV4(interchange) {
|
|
26
26
|
return {
|
|
27
|
-
genesisValidatorsRoot:
|
|
27
|
+
genesisValidatorsRoot: fromHex(interchange.metadata.genesis_validators_root),
|
|
28
28
|
data: interchange.data.map((validator) => ({
|
|
29
|
-
pubkey:
|
|
29
|
+
pubkey: fromHex(validator.pubkey),
|
|
30
30
|
signedBlocks: validator.signed_blocks.map((block) => ({
|
|
31
31
|
slot: parseInt(block.slot, 10),
|
|
32
32
|
signingRoot: fromOptionalHexString(block.signing_root),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"completeV4.js","sourceRoot":"","sources":["../../../../src/slashingProtection/interchange/formats/completeV4.ts"],"names":[],"mappings":"AAAA,yDAAyD;AACzD,OAAO,EAAC,
|
|
1
|
+
{"version":3,"file":"completeV4.js","sourceRoot":"","sources":["../../../../src/slashingProtection/interchange/formats/completeV4.ts"],"names":[],"mappings":"AAAA,yDAAyD;AACzD,OAAO,EAAC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAC,MAAM,iBAAiB,CAAC;AAEhE,OAAO,EAAC,qBAAqB,EAAE,WAAW,EAAE,mBAAmB,EAAC,MAAM,gBAAgB,CAAC;AAiFvF,MAAM,UAAU,8BAA8B,CAAC,EAC7C,IAAI,EACJ,qBAAqB,GACD;IACpB,OAAO;QACL,QAAQ,EAAE;YACR,kBAAkB,EAAE,UAAU;YAC9B,0BAA0B,EAAE,GAAG;YAC/B,uBAAuB,EAAE,SAAS,CAAC,qBAAqB,CAAC;SAC1D;QACD,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YAC7B,MAAM,EAAE,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC;YACrC,aAAa,EAAE,SAAS,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBACpD,IAAI,EAAE,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC;gBAC7B,YAAY,EAAE,mBAAmB,CAAC,KAAK,CAAC,WAAW,CAAC;aACrD,CAAC,CAAC;YACH,mBAAmB,EAAE,SAAS,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBAC9D,YAAY,EAAE,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC;gBAC1C,YAAY,EAAE,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC;gBAC1C,YAAY,EAAE,mBAAmB,CAAC,GAAG,CAAC,WAAW,CAAC;aACnD,CAAC,CAAC;SACJ,CAAC,CAAC;KACJ,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,WAAkC;IAC3E,OAAO;QACL,qBAAqB,EAAE,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,uBAAuB,CAAC;QAC5E,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YACzC,MAAM,EAAE,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC;YACjC,YAAY,EAAE,SAAS,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBACpD,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;gBAC9B,WAAW,EAAE,qBAAqB,CAAC,KAAK,CAAC,YAAY,CAAC;aACvD,CAAC,CAAC;YACH,kBAAkB,EAAE,SAAS,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBAC9D,WAAW,EAAE,QAAQ,CAAC,GAAG,CAAC,YAAY,EAAE,EAAE,CAAC;gBAC3C,WAAW,EAAE,QAAQ,CAAC,GAAG,CAAC,YAAY,EAAE,EAAE,CAAC;gBAC3C,WAAW,EAAE,qBAAqB,CAAC,GAAG,CAAC,YAAY,CAAC;aACrD,CAAC,CAAC;SACJ,CAAC,CAAC;KACJ,CAAC;AACJ,CAAC"}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
/* eslint-disable @typescript-eslint/naming-convention */
|
|
2
|
-
import {
|
|
2
|
+
import { fromHex, toPubkeyHex, toRootHex } from "@lodestar/utils";
|
|
3
3
|
import { fromOptionalHexString, numToString, toOptionalHexString } from "../../utils.js";
|
|
4
4
|
export function serializeInterchangeV5({ data, genesisValidatorsRoot }) {
|
|
5
5
|
return {
|
|
6
6
|
metadata: {
|
|
7
7
|
interchange_format_version: "5",
|
|
8
|
-
genesis_validators_root:
|
|
8
|
+
genesis_validators_root: toRootHex(genesisValidatorsRoot),
|
|
9
9
|
},
|
|
10
10
|
data: data.map((validator) => ({
|
|
11
|
-
pubkey:
|
|
11
|
+
pubkey: toPubkeyHex(validator.pubkey),
|
|
12
12
|
signed_blocks: validator.signedBlocks.map((block) => ({
|
|
13
13
|
slot: numToString(block.slot),
|
|
14
14
|
signing_root: toOptionalHexString(block.signingRoot),
|
|
@@ -23,9 +23,9 @@ export function serializeInterchangeV5({ data, genesisValidatorsRoot }) {
|
|
|
23
23
|
}
|
|
24
24
|
export function parseInterchangeV5(interchange) {
|
|
25
25
|
return {
|
|
26
|
-
genesisValidatorsRoot:
|
|
26
|
+
genesisValidatorsRoot: fromHex(interchange.metadata.genesis_validators_root),
|
|
27
27
|
data: interchange.data.map((validator) => ({
|
|
28
|
-
pubkey:
|
|
28
|
+
pubkey: fromHex(validator.pubkey),
|
|
29
29
|
signedBlocks: validator.signed_blocks.map((block) => ({
|
|
30
30
|
slot: parseInt(block.slot, 10),
|
|
31
31
|
signingRoot: fromOptionalHexString(block.signing_root),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"v5.js","sourceRoot":"","sources":["../../../../src/slashingProtection/interchange/formats/v5.ts"],"names":[],"mappings":"AAAA,yDAAyD;AACzD,OAAO,EAAC,
|
|
1
|
+
{"version":3,"file":"v5.js","sourceRoot":"","sources":["../../../../src/slashingProtection/interchange/formats/v5.ts"],"names":[],"mappings":"AAAA,yDAAyD;AACzD,OAAO,EAAC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAC,MAAM,iBAAiB,CAAC;AAEhE,OAAO,EAAC,qBAAqB,EAAE,WAAW,EAAE,mBAAmB,EAAC,MAAM,gBAAgB,CAAC;AAgFvF,MAAM,UAAU,sBAAsB,CAAC,EAAC,IAAI,EAAE,qBAAqB,EAAsB;IACvF,OAAO;QACL,QAAQ,EAAE;YACR,0BAA0B,EAAE,GAAG;YAC/B,uBAAuB,EAAE,SAAS,CAAC,qBAAqB,CAAC;SAC1D;QACD,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YAC7B,MAAM,EAAE,WAAW,CAAC,SAAS,CAAC,MAAM,CAAC;YACrC,aAAa,EAAE,SAAS,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBACpD,IAAI,EAAE,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC;gBAC7B,YAAY,EAAE,mBAAmB,CAAC,KAAK,CAAC,WAAW,CAAC;aACrD,CAAC,CAAC;YACH,mBAAmB,EAAE,SAAS,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBAC9D,YAAY,EAAE,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC;gBAC1C,YAAY,EAAE,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC;gBAC1C,YAAY,EAAE,mBAAmB,CAAC,GAAG,CAAC,WAAW,CAAC;aACnD,CAAC,CAAC;SACJ,CAAC,CAAC;KACJ,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,WAA0B;IAC3D,OAAO;QACL,qBAAqB,EAAE,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,uBAAuB,CAAC;QAC5E,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YACzC,MAAM,EAAE,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC;YACjC,YAAY,EAAE,SAAS,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBACpD,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;gBAC9B,WAAW,EAAE,qBAAqB,CAAC,KAAK,CAAC,YAAY,CAAC;aACvD,CAAC,CAAC;YACH,kBAAkB,EAAE,SAAS,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBAC9D,WAAW,EAAE,QAAQ,CAAC,GAAG,CAAC,YAAY,EAAE,EAAE,CAAC;gBAC3C,WAAW,EAAE,QAAQ,CAAC,GAAG,CAAC,YAAY,EAAE,EAAE,CAAC;gBAC3C,WAAW,EAAE,qBAAqB,CAAC,GAAG,CAAC,YAAY,CAAC;aACrD,CAAC,CAAC;SACJ,CAAC,CAAC;KACJ,CAAC;AACJ,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { fromHexString, toHexString } from "@chainsafe/ssz";
|
|
2
1
|
import { ssz } from "@lodestar/types";
|
|
2
|
+
import { fromHex, toHex, toRootHex } from "@lodestar/utils";
|
|
3
3
|
export const blsPubkeyLen = 48;
|
|
4
4
|
export const ZERO_ROOT = ssz.Root.defaultValue();
|
|
5
5
|
export function isEqualRoot(root1, root2) {
|
|
@@ -9,10 +9,10 @@ export function isEqualNonZeroRoot(root1, root2) {
|
|
|
9
9
|
return !isEqualRoot(root1, ZERO_ROOT) && isEqualRoot(root1, root2);
|
|
10
10
|
}
|
|
11
11
|
export function fromOptionalHexString(hex) {
|
|
12
|
-
return hex ?
|
|
12
|
+
return hex ? fromHex(hex) : ZERO_ROOT;
|
|
13
13
|
}
|
|
14
14
|
export function toOptionalHexString(root) {
|
|
15
|
-
return isEqualRoot(root, ZERO_ROOT) ? undefined :
|
|
15
|
+
return isEqualRoot(root, ZERO_ROOT) ? undefined : toRootHex(root);
|
|
16
16
|
}
|
|
17
17
|
/**
|
|
18
18
|
* Typesafe wrapper around `String()`. The String constructor accepts any which is dangerous
|
|
@@ -26,7 +26,7 @@ export function minEpoch(epochs) {
|
|
|
26
26
|
export function uniqueVectorArr(buffers) {
|
|
27
27
|
const bufferStr = new Set();
|
|
28
28
|
return buffers.filter((buffer) => {
|
|
29
|
-
const str =
|
|
29
|
+
const str = toHex(buffer);
|
|
30
30
|
const seen = bufferStr.has(str);
|
|
31
31
|
bufferStr.add(str);
|
|
32
32
|
return !seen;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/slashingProtection/utils.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/slashingProtection/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,GAAG,EAAC,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAC,OAAO,EAAE,KAAK,EAAE,SAAS,EAAC,MAAM,iBAAiB,CAAC;AAE1D,MAAM,CAAC,MAAM,YAAY,GAAG,EAAE,CAAC;AAC/B,MAAM,CAAC,MAAM,SAAS,GAAG,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;AAEjD,MAAM,UAAU,WAAW,CAAC,KAAW,EAAE,KAAW;IAClD,OAAO,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AACvC,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,KAAW,EAAE,KAAW;IACzD,OAAO,CAAC,WAAW,CAAC,KAAK,EAAE,SAAS,CAAC,IAAI,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AACrE,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,GAAuB;IAC3D,OAAO,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AACxC,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,IAAU;IAC5C,OAAO,WAAW,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;AACpE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,GAAW;IACrC,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;AACrB,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,MAAe;IACtC,OAAO,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAC9G,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,OAAqB;IACnD,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;IACpC,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE;QAC/B,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;QAC1B,MAAM,IAAI,GAAG,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAChC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACnB,OAAO,CAAC,IAAI,CAAC;IACf,CAAC,CAAC,CAAC;AACL,CAAC"}
|
package/lib/util/difference.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { toHex } from "@lodestar/utils";
|
|
2
2
|
/**
|
|
3
3
|
* Return items included in `next` but not in `prev`
|
|
4
4
|
*/
|
|
5
5
|
export function differenceHex(prev, next) {
|
|
6
|
-
const existing = new Set(prev.map((item) =>
|
|
7
|
-
return next.filter((item) => !existing.has(
|
|
6
|
+
const existing = new Set(prev.map((item) => toHex(item)));
|
|
7
|
+
return next.filter((item) => !existing.has(toHex(item)));
|
|
8
8
|
}
|
|
9
9
|
//# sourceMappingURL=difference.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"difference.js","sourceRoot":"","sources":["../../src/util/difference.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"difference.js","sourceRoot":"","sources":["../../src/util/difference.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,KAAK,EAAC,MAAM,iBAAiB,CAAC;AAEtC;;GAEG;AACH,MAAM,UAAU,aAAa,CAA8B,IAAS,EAAE,IAAS;IAC7E,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC1D,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAC3D,CAAC"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import { ContainerType
|
|
1
|
+
import { ContainerType } from "@chainsafe/ssz";
|
|
2
2
|
import { fetch } from "@lodestar/api";
|
|
3
3
|
import { ForkSeq } from "@lodestar/params";
|
|
4
4
|
import { computeEpochAtSlot, blindedOrFullBlockToHeader } from "@lodestar/state-transition";
|
|
5
5
|
import { ssz } from "@lodestar/types";
|
|
6
|
+
import { toHex, toRootHex } from "@lodestar/utils";
|
|
6
7
|
/* eslint-disable @typescript-eslint/naming-convention */
|
|
7
8
|
export var SignableMessageType;
|
|
8
9
|
(function (SignableMessageType) {
|
|
@@ -73,16 +74,16 @@ export async function externalSignerGetKeys(externalSignerUrl) {
|
|
|
73
74
|
export async function externalSignerPostSignature(config, externalSignerUrl, pubkeyHex, signingRoot, signingSlot, signableMessage) {
|
|
74
75
|
const requestObj = serializerSignableMessagePayload(config, signableMessage);
|
|
75
76
|
requestObj.type = signableMessage.type;
|
|
76
|
-
requestObj.signingRoot =
|
|
77
|
+
requestObj.signingRoot = toRootHex(signingRoot);
|
|
77
78
|
if (requiresForkInfo[signableMessage.type]) {
|
|
78
79
|
const forkInfo = config.getForkInfo(signingSlot);
|
|
79
80
|
requestObj.fork_info = {
|
|
80
81
|
fork: {
|
|
81
|
-
previous_version:
|
|
82
|
-
current_version:
|
|
82
|
+
previous_version: toHex(forkInfo.prevVersion),
|
|
83
|
+
current_version: toHex(forkInfo.version),
|
|
83
84
|
epoch: String(computeEpochAtSlot(signingSlot)),
|
|
84
85
|
},
|
|
85
|
-
genesis_validators_root:
|
|
86
|
+
genesis_validators_root: toRootHex(config.genesisValidatorsRoot),
|
|
86
87
|
};
|
|
87
88
|
}
|
|
88
89
|
const res = await fetch(`${externalSignerUrl}/api/v1/eth2/sign/${pubkeyHex}`, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"externalSignerClient.js","sourceRoot":"","sources":["../../src/util/externalSignerClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,aAAa,
|
|
1
|
+
{"version":3,"file":"externalSignerClient.js","sourceRoot":"","sources":["../../src/util/externalSignerClient.ts"],"names":[],"mappings":"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"}
|
package/lib/util/params.js
CHANGED
|
@@ -62,6 +62,7 @@ function getSpecCriticalParams(localConfig) {
|
|
|
62
62
|
const bellatrixForkRelevant = localConfig.BELLATRIX_FORK_EPOCH < Infinity;
|
|
63
63
|
const capellaForkRelevant = localConfig.CAPELLA_FORK_EPOCH < Infinity;
|
|
64
64
|
const denebForkRelevant = localConfig.DENEB_FORK_EPOCH < Infinity;
|
|
65
|
+
const electraForkRelevant = localConfig.ELECTRA_FORK_EPOCH < Infinity;
|
|
65
66
|
return {
|
|
66
67
|
// # Config
|
|
67
68
|
///////////
|
|
@@ -90,6 +91,9 @@ function getSpecCriticalParams(localConfig) {
|
|
|
90
91
|
// Deneb
|
|
91
92
|
DENEB_FORK_VERSION: denebForkRelevant,
|
|
92
93
|
DENEB_FORK_EPOCH: denebForkRelevant,
|
|
94
|
+
// electra
|
|
95
|
+
ELECTRA_FORK_VERSION: electraForkRelevant,
|
|
96
|
+
ELECTRA_FORK_EPOCH: electraForkRelevant,
|
|
93
97
|
// Time parameters
|
|
94
98
|
SECONDS_PER_SLOT: true,
|
|
95
99
|
SECONDS_PER_ETH1_BLOCK: true,
|
|
@@ -182,6 +186,22 @@ function getSpecCriticalParams(localConfig) {
|
|
|
182
186
|
MAX_BLOBS_PER_BLOCK: denebForkRelevant,
|
|
183
187
|
MAX_BLOB_COMMITMENTS_PER_BLOCK: denebForkRelevant,
|
|
184
188
|
KZG_COMMITMENT_INCLUSION_PROOF_DEPTH: denebForkRelevant,
|
|
189
|
+
// ELECTRA
|
|
190
|
+
MAX_DEPOSIT_REQUESTS_PER_PAYLOAD: electraForkRelevant,
|
|
191
|
+
MAX_WITHDRAWAL_REQUESTS_PER_PAYLOAD: electraForkRelevant,
|
|
192
|
+
MAX_ATTESTER_SLASHINGS_ELECTRA: electraForkRelevant,
|
|
193
|
+
MAX_ATTESTATIONS_ELECTRA: electraForkRelevant,
|
|
194
|
+
MAX_PENDING_PARTIALS_PER_WITHDRAWALS_SWEEP: electraForkRelevant,
|
|
195
|
+
MAX_EFFECTIVE_BALANCE_ELECTRA: electraForkRelevant,
|
|
196
|
+
MIN_SLASHING_PENALTY_QUOTIENT_ELECTRA: electraForkRelevant,
|
|
197
|
+
MIN_ACTIVATION_BALANCE: electraForkRelevant,
|
|
198
|
+
PENDING_BALANCE_DEPOSITS_LIMIT: electraForkRelevant,
|
|
199
|
+
PENDING_PARTIAL_WITHDRAWALS_LIMIT: electraForkRelevant,
|
|
200
|
+
PENDING_CONSOLIDATIONS_LIMIT: electraForkRelevant,
|
|
201
|
+
MAX_CONSOLIDATION_REQUESTS_PER_PAYLOAD: electraForkRelevant,
|
|
202
|
+
WHISTLEBLOWER_REWARD_QUOTIENT_ELECTRA: electraForkRelevant,
|
|
203
|
+
MAX_PER_EPOCH_ACTIVATION_EXIT_CHURN_LIMIT: electraForkRelevant,
|
|
204
|
+
MIN_PER_EPOCH_CHURN_LIMIT_ELECTRA: electraForkRelevant,
|
|
185
205
|
};
|
|
186
206
|
}
|
|
187
207
|
//# sourceMappingURL=params.js.map
|
package/lib/util/params.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"params.js","sourceRoot":"","sources":["../../src/util/params.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,iBAAiB,EAAC,MAAM,kBAAkB,CAAC;AAChE,OAAO,EAAC,YAAY,EAAgB,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAE1E,MAAM,OAAO,mBAAoB,SAAQ,KAAK;CAAG;AAIjD,yDAAyD;AAEzD;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,iBAAiB,CAAC,WAAwB,EAAE,gBAAwC;IAClG,0EAA0E;IAC1E,sEAAsE;IACtE,MAAM,aAAa,GAAG;QACpB,GAAG,iBAAiB,CAAC,WAAW,CAAC;QACjC,GAAG,YAAY,CAAC,YAAY,CAAC;KAC9B,CAAC;IAEF,oGAAoG;IACpG,MAAM,cAAc,GAAG,qBAAqB,CAAC,WAAW,CAAC,CAAC;IAE1D,wDAAwD;IACxD,MAAM,MAAM,GAAa,EAAE,CAAC;IAE5B,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,cAAc,CAAoC,EAAE,CAAC;QACjF;QACE,6BAA6B;QAC7B,CAAC,cAAc,CAAC,GAAG,CAAC;YACpB,wDAAwD;YACxD,aAAa,CAAC,GAAG,CAAC,KAAK,SAAS;YAChC,+GAA+G;YAC/G,mGAAmG;YACnG,0HAA0H;YAC1H,EAAE;YACF,8GAA8G;YAC9G,2GAA2G;YAC3G,6CAA6C;YAC7C,gBAAgB,CAAC,GAAG,CAAC,KAAK,SAAS,EACnC,CAAC;YACD,SAAS;QACX,CAAC;QAED,yFAAyF;QACzF,4FAA4F;QAC5F,MAAM,UAAU,GAAG,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;QAClE,MAAM,WAAW,GAAG,MAAM,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,iBAAiB,EAAE,CAAC;QACtE,IAAI,UAAU,KAAK,WAAW,EAAE,CAAC;YAC/B,MAAM,CAAC,IAAI,CAAC,GAAG,GAAG,qBAAqB,UAAU,OAAO,WAAW,EAAE,CAAC,CAAC;QACzE,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,MAAM,IAAI,mBAAmB,CAAC,0CAA0C,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAChG,CAAC;AACH,CAAC;AAED,SAAS,qBAAqB,CAAC,WAAwB;IACrD,MAAM,kBAAkB,GAAG,WAAW,CAAC,iBAAiB,GAAG,QAAQ,CAAC;IACpE,MAAM,qBAAqB,GAAG,WAAW,CAAC,oBAAoB,GAAG,QAAQ,CAAC;IAC1E,MAAM,mBAAmB,GAAG,WAAW,CAAC,kBAAkB,GAAG,QAAQ,CAAC;IACtE,MAAM,iBAAiB,GAAG,WAAW,CAAC,gBAAgB,GAAG,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"params.js","sourceRoot":"","sources":["../../src/util/params.ts"],"names":[],"mappings":"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"}
|