@argonprotocol/mainchain 1.4.2 → 1.4.3-dev.01764b00

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/browser/index.d.ts +1497 -1769
  2. package/browser/index.js +1264 -118
  3. package/browser/index.js.map +1 -1
  4. package/lib/chunk-OGBJMM67.cjs +175 -0
  5. package/lib/chunk-OGBJMM67.cjs.map +1 -0
  6. package/lib/chunk-P3UCQHON.js +175 -0
  7. package/lib/chunk-P3UCQHON.js.map +1 -0
  8. package/lib/index.cjs +1289 -118
  9. package/lib/index.cjs.map +1 -1
  10. package/lib/index.d.cts +1497 -1769
  11. package/lib/index.d.ts +1497 -1769
  12. package/lib/index.js +1289 -118
  13. package/lib/index.js.map +1 -1
  14. package/lib/lib-5YJZFR7N.cjs +708 -0
  15. package/lib/lib-5YJZFR7N.cjs.map +1 -0
  16. package/lib/lib-D6ZIRTBH.js +708 -0
  17. package/lib/lib-D6ZIRTBH.js.map +1 -0
  18. package/lib/setPreset-CXGXLYRI.js +15 -0
  19. package/lib/setPreset-CXGXLYRI.js.map +1 -0
  20. package/lib/setPreset-VYFMBE77.cjs +15 -0
  21. package/lib/setPreset-VYFMBE77.cjs.map +1 -0
  22. package/package.json +31 -25
  23. package/src/interfaces/augment-api-consts.ts +603 -0
  24. package/src/interfaces/augment-api-errors.ts +1180 -0
  25. package/src/interfaces/augment-api-events.ts +1816 -0
  26. package/src/interfaces/augment-api-query.ts +1554 -0
  27. package/src/interfaces/augment-api-rpc.ts +1133 -0
  28. package/src/interfaces/augment-api-runtime.ts +332 -0
  29. package/src/interfaces/augment-api-tx.ts +2184 -0
  30. package/src/interfaces/augment-api.ts +10 -0
  31. package/src/interfaces/augment-types.ts +2688 -0
  32. package/src/interfaces/definitions.ts +57 -0
  33. package/src/interfaces/ethereum/index.ts +4 -0
  34. package/src/interfaces/ethereum/types.ts +54 -0
  35. package/src/interfaces/lookup.ts +3776 -0
  36. package/src/interfaces/registry.ts +560 -0
  37. package/src/interfaces/types-lookup.ts +4356 -0
@@ -0,0 +1,175 @@
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});// node_modules/@lodestar/params/lib/types.js
2
+ var beaconPresetTypes = {
3
+ // Misc
4
+ MAX_COMMITTEES_PER_SLOT: "number",
5
+ TARGET_COMMITTEE_SIZE: "number",
6
+ MAX_VALIDATORS_PER_COMMITTEE: "number",
7
+ SHUFFLE_ROUND_COUNT: "number",
8
+ HYSTERESIS_QUOTIENT: "number",
9
+ HYSTERESIS_DOWNWARD_MULTIPLIER: "number",
10
+ HYSTERESIS_UPWARD_MULTIPLIER: "number",
11
+ // Gwei Values
12
+ MIN_DEPOSIT_AMOUNT: "number",
13
+ MAX_EFFECTIVE_BALANCE: "number",
14
+ EFFECTIVE_BALANCE_INCREMENT: "number",
15
+ // Time parameters
16
+ MIN_ATTESTATION_INCLUSION_DELAY: "number",
17
+ SLOTS_PER_EPOCH: "number",
18
+ MIN_SEED_LOOKAHEAD: "number",
19
+ MAX_SEED_LOOKAHEAD: "number",
20
+ EPOCHS_PER_ETH1_VOTING_PERIOD: "number",
21
+ SLOTS_PER_HISTORICAL_ROOT: "number",
22
+ MIN_EPOCHS_TO_INACTIVITY_PENALTY: "number",
23
+ // State vector lengths
24
+ EPOCHS_PER_HISTORICAL_VECTOR: "number",
25
+ EPOCHS_PER_SLASHINGS_VECTOR: "number",
26
+ HISTORICAL_ROOTS_LIMIT: "number",
27
+ VALIDATOR_REGISTRY_LIMIT: "number",
28
+ // Reward and penalty quotients
29
+ BASE_REWARD_FACTOR: "number",
30
+ WHISTLEBLOWER_REWARD_QUOTIENT: "number",
31
+ PROPOSER_REWARD_QUOTIENT: "number",
32
+ INACTIVITY_PENALTY_QUOTIENT: "number",
33
+ MIN_SLASHING_PENALTY_QUOTIENT: "number",
34
+ PROPORTIONAL_SLASHING_MULTIPLIER: "number",
35
+ // Max operations per block
36
+ MAX_PROPOSER_SLASHINGS: "number",
37
+ MAX_ATTESTER_SLASHINGS: "number",
38
+ MAX_ATTESTATIONS: "number",
39
+ MAX_DEPOSITS: "number",
40
+ MAX_VOLUNTARY_EXITS: "number",
41
+ // ALTAIR
42
+ /////////
43
+ SYNC_COMMITTEE_SIZE: "number",
44
+ EPOCHS_PER_SYNC_COMMITTEE_PERIOD: "number",
45
+ INACTIVITY_PENALTY_QUOTIENT_ALTAIR: "number",
46
+ MIN_SLASHING_PENALTY_QUOTIENT_ALTAIR: "number",
47
+ PROPORTIONAL_SLASHING_MULTIPLIER_ALTAIR: "number",
48
+ MIN_SYNC_COMMITTEE_PARTICIPANTS: "number",
49
+ UPDATE_TIMEOUT: "number",
50
+ // BELLATRIX
51
+ ////////////
52
+ INACTIVITY_PENALTY_QUOTIENT_BELLATRIX: "number",
53
+ MIN_SLASHING_PENALTY_QUOTIENT_BELLATRIX: "number",
54
+ PROPORTIONAL_SLASHING_MULTIPLIER_BELLATRIX: "number",
55
+ MAX_BYTES_PER_TRANSACTION: "number",
56
+ MAX_TRANSACTIONS_PER_PAYLOAD: "number",
57
+ BYTES_PER_LOGS_BLOOM: "number",
58
+ MAX_EXTRA_DATA_BYTES: "number",
59
+ // CAPELLA
60
+ //////////
61
+ MAX_BLS_TO_EXECUTION_CHANGES: "number",
62
+ MAX_WITHDRAWALS_PER_PAYLOAD: "number",
63
+ MAX_VALIDATORS_PER_WITHDRAWALS_SWEEP: "number",
64
+ // DENEB
65
+ ///////////
66
+ FIELD_ELEMENTS_PER_BLOB: "number",
67
+ MAX_BLOB_COMMITMENTS_PER_BLOCK: "number",
68
+ KZG_COMMITMENT_INCLUSION_PROOF_DEPTH: "number",
69
+ // ELECTRA
70
+ MAX_DEPOSIT_REQUESTS_PER_PAYLOAD: "number",
71
+ MAX_WITHDRAWAL_REQUESTS_PER_PAYLOAD: "number",
72
+ MAX_ATTESTER_SLASHINGS_ELECTRA: "number",
73
+ MAX_ATTESTATIONS_ELECTRA: "number",
74
+ MAX_PENDING_PARTIALS_PER_WITHDRAWALS_SWEEP: "number",
75
+ MAX_PENDING_DEPOSITS_PER_EPOCH: "number",
76
+ MAX_EFFECTIVE_BALANCE_ELECTRA: "number",
77
+ MIN_SLASHING_PENALTY_QUOTIENT_ELECTRA: "number",
78
+ MIN_ACTIVATION_BALANCE: "number",
79
+ PENDING_DEPOSITS_LIMIT: "number",
80
+ PENDING_PARTIAL_WITHDRAWALS_LIMIT: "number",
81
+ PENDING_CONSOLIDATIONS_LIMIT: "number",
82
+ MAX_CONSOLIDATION_REQUESTS_PER_PAYLOAD: "number",
83
+ WHISTLEBLOWER_REWARD_QUOTIENT_ELECTRA: "number",
84
+ // FULU
85
+ ///////////
86
+ NUMBER_OF_COLUMNS: "number",
87
+ CELLS_PER_EXT_BLOB: "number",
88
+ FIELD_ELEMENTS_PER_CELL: "number",
89
+ FIELD_ELEMENTS_PER_EXT_BLOB: "number",
90
+ KZG_COMMITMENTS_INCLUSION_PROOF_DEPTH: "number",
91
+ // GLOAS
92
+ PTC_SIZE: "number",
93
+ MAX_PAYLOAD_ATTESTATIONS: "number",
94
+ BUILDER_REGISTRY_LIMIT: "number",
95
+ BUILDER_PENDING_WITHDRAWALS_LIMIT: "number",
96
+ MAX_BUILDERS_PER_WITHDRAWALS_SWEEP: "number"
97
+ };
98
+
99
+ // node_modules/@lodestar/params/lib/json.js
100
+ function presetToJson(preset) {
101
+ const json = {};
102
+ for (const key of Object.keys(preset)) {
103
+ json[key] = serializePresetValue(preset[key]);
104
+ }
105
+ return json;
106
+ }
107
+ function serializePresetValue(value) {
108
+ return value.toString(10);
109
+ }
110
+ function presetFromJson(json) {
111
+ const beaconPreset = {};
112
+ for (const key of Object.keys(beaconPresetTypes)) {
113
+ const value = json[key];
114
+ if (value !== void 0) {
115
+ beaconPreset[key] = deserializePresetValue(value, key);
116
+ }
117
+ }
118
+ return beaconPreset;
119
+ }
120
+ function deserializePresetValue(valueStr, keyName) {
121
+ if (typeof valueStr !== "string") {
122
+ throw Error(`Invalid ${keyName} value ${valueStr} expected string`);
123
+ }
124
+ const value = parseInt(valueStr, 10);
125
+ if (Number.isNaN(value)) {
126
+ throw Error(`Invalid ${keyName} value ${valueStr} expected number`);
127
+ }
128
+ return value;
129
+ }
130
+
131
+ // node_modules/@lodestar/params/lib/presetName.js
132
+ var PresetName;
133
+ (function(PresetName2) {
134
+ PresetName2["mainnet"] = "mainnet";
135
+ PresetName2["minimal"] = "minimal";
136
+ PresetName2["gnosis"] = "gnosis";
137
+ })(PresetName || (PresetName = exports.PresetName = {}));
138
+
139
+ // node_modules/@lodestar/params/lib/presetStatus.js
140
+ var presetStatus = {
141
+ frozen: false
142
+ };
143
+
144
+ // node_modules/@lodestar/params/lib/setPreset.js
145
+ var userSelectedPreset = null;
146
+ var userOverrides = void 0;
147
+ function setActivePreset(presetName, overrides) {
148
+ if (presetStatus.frozen) {
149
+ throw Error(`Lodestar preset is already frozen. You must call setActivePreset() at the top of your
150
+ application entry point, before importing @lodestar/params, or any library that may import it.
151
+
152
+ \`\`\`
153
+ // index.ts
154
+ import {setActivePreset, PresetName} from "@lodestar/params/setPreset"
155
+ setActivePreset(PresetName.minimal)
156
+ // Now you can safely import from other paths and consume params
157
+ import {SLOTS_PER_EPOCH} from "@lodestar/params"
158
+ console.log({SLOTS_PER_EPOCH})
159
+ \`\`\`
160
+ `);
161
+ }
162
+ userSelectedPreset = exports.userSelectedPreset = presetName;
163
+ userOverrides = exports.userOverrides = overrides;
164
+ }
165
+
166
+
167
+
168
+
169
+
170
+
171
+
172
+
173
+
174
+ exports.presetToJson = presetToJson; exports.presetFromJson = presetFromJson; exports.PresetName = PresetName; exports.presetStatus = presetStatus; exports.userSelectedPreset = userSelectedPreset; exports.userOverrides = userOverrides; exports.setActivePreset = setActivePreset;
175
+ //# sourceMappingURL=chunk-OGBJMM67.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["/home/runner/work/mainchain/mainchain/client/nodejs/lib/chunk-OGBJMM67.cjs","../node_modules/@lodestar/params/src/types.ts","../node_modules/@lodestar/params/src/json.ts","../node_modules/@lodestar/params/src/presetName.ts","../node_modules/@lodestar/params/src/presetStatus.ts","../node_modules/@lodestar/params/src/setPreset.ts"],"names":["PresetName"],"mappings":"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","file":"/home/runner/work/mainchain/mainchain/client/nodejs/lib/chunk-OGBJMM67.cjs","sourcesContent":[null,"/**\n * Compile-time chain configuration\n */\nexport type BeaconPreset = {\n // Misc\n MAX_COMMITTEES_PER_SLOT: number;\n TARGET_COMMITTEE_SIZE: number;\n MAX_VALIDATORS_PER_COMMITTEE: number;\n\n SHUFFLE_ROUND_COUNT: number;\n\n HYSTERESIS_QUOTIENT: number;\n HYSTERESIS_DOWNWARD_MULTIPLIER: number;\n HYSTERESIS_UPWARD_MULTIPLIER: number;\n\n // Gwei Values\n MIN_DEPOSIT_AMOUNT: number;\n MAX_EFFECTIVE_BALANCE: number;\n EFFECTIVE_BALANCE_INCREMENT: number;\n\n // Time parameters\n MIN_ATTESTATION_INCLUSION_DELAY: number;\n SLOTS_PER_EPOCH: number;\n MIN_SEED_LOOKAHEAD: number;\n MAX_SEED_LOOKAHEAD: number;\n EPOCHS_PER_ETH1_VOTING_PERIOD: number;\n SLOTS_PER_HISTORICAL_ROOT: number;\n MIN_EPOCHS_TO_INACTIVITY_PENALTY: number;\n\n // State vector lengths\n EPOCHS_PER_HISTORICAL_VECTOR: number;\n EPOCHS_PER_SLASHINGS_VECTOR: number;\n HISTORICAL_ROOTS_LIMIT: number;\n VALIDATOR_REGISTRY_LIMIT: number;\n\n // Reward and penalty quotients\n BASE_REWARD_FACTOR: number;\n WHISTLEBLOWER_REWARD_QUOTIENT: number;\n PROPOSER_REWARD_QUOTIENT: number;\n INACTIVITY_PENALTY_QUOTIENT: number;\n MIN_SLASHING_PENALTY_QUOTIENT: number;\n PROPORTIONAL_SLASHING_MULTIPLIER: number;\n\n // Max operations per block\n MAX_PROPOSER_SLASHINGS: number;\n MAX_ATTESTER_SLASHINGS: number;\n MAX_ATTESTATIONS: number;\n MAX_DEPOSITS: number;\n MAX_VOLUNTARY_EXITS: number;\n\n // ALTAIR\n /////////\n SYNC_COMMITTEE_SIZE: number;\n EPOCHS_PER_SYNC_COMMITTEE_PERIOD: number;\n INACTIVITY_PENALTY_QUOTIENT_ALTAIR: number;\n MIN_SLASHING_PENALTY_QUOTIENT_ALTAIR: number;\n PROPORTIONAL_SLASHING_MULTIPLIER_ALTAIR: number;\n MIN_SYNC_COMMITTEE_PARTICIPANTS: number;\n UPDATE_TIMEOUT: number;\n\n // BELLATRIX\n ////////////\n INACTIVITY_PENALTY_QUOTIENT_BELLATRIX: number;\n MIN_SLASHING_PENALTY_QUOTIENT_BELLATRIX: number;\n PROPORTIONAL_SLASHING_MULTIPLIER_BELLATRIX: number;\n MAX_BYTES_PER_TRANSACTION: number;\n MAX_TRANSACTIONS_PER_PAYLOAD: number;\n BYTES_PER_LOGS_BLOOM: number;\n MAX_EXTRA_DATA_BYTES: number;\n\n // CAPELLA\n //////////\n MAX_BLS_TO_EXECUTION_CHANGES: number;\n MAX_WITHDRAWALS_PER_PAYLOAD: number;\n MAX_VALIDATORS_PER_WITHDRAWALS_SWEEP: number;\n\n // DENEB\n ///////////\n FIELD_ELEMENTS_PER_BLOB: number;\n MAX_BLOB_COMMITMENTS_PER_BLOCK: number;\n KZG_COMMITMENT_INCLUSION_PROOF_DEPTH: number;\n\n // ELECTRA\n MAX_DEPOSIT_REQUESTS_PER_PAYLOAD: number;\n MAX_WITHDRAWAL_REQUESTS_PER_PAYLOAD: number;\n MAX_ATTESTER_SLASHINGS_ELECTRA: number;\n MAX_ATTESTATIONS_ELECTRA: number;\n MAX_PENDING_PARTIALS_PER_WITHDRAWALS_SWEEP: number;\n MAX_PENDING_DEPOSITS_PER_EPOCH: number;\n MAX_EFFECTIVE_BALANCE_ELECTRA: number;\n MIN_SLASHING_PENALTY_QUOTIENT_ELECTRA: number;\n MIN_ACTIVATION_BALANCE: number;\n PENDING_DEPOSITS_LIMIT: number;\n PENDING_PARTIAL_WITHDRAWALS_LIMIT: number;\n PENDING_CONSOLIDATIONS_LIMIT: number;\n MAX_CONSOLIDATION_REQUESTS_PER_PAYLOAD: number;\n WHISTLEBLOWER_REWARD_QUOTIENT_ELECTRA: number;\n\n // FULU\n ///////////\n NUMBER_OF_COLUMNS: number;\n CELLS_PER_EXT_BLOB: number;\n FIELD_ELEMENTS_PER_CELL: number;\n FIELD_ELEMENTS_PER_EXT_BLOB: number;\n KZG_COMMITMENTS_INCLUSION_PROOF_DEPTH: number;\n\n // GLOAS\n PTC_SIZE: number;\n MAX_PAYLOAD_ATTESTATIONS: number;\n BUILDER_REGISTRY_LIMIT: number;\n BUILDER_PENDING_WITHDRAWALS_LIMIT: number;\n MAX_BUILDERS_PER_WITHDRAWALS_SWEEP: number;\n};\n\n/**\n * Presets only contain numbers, just used to filter out extraneous keys\n * when overriding the active preset with custom values from file\n */\nexport const beaconPresetTypes: BeaconPresetTypes = {\n // Misc\n MAX_COMMITTEES_PER_SLOT: \"number\",\n TARGET_COMMITTEE_SIZE: \"number\",\n MAX_VALIDATORS_PER_COMMITTEE: \"number\",\n\n SHUFFLE_ROUND_COUNT: \"number\",\n\n HYSTERESIS_QUOTIENT: \"number\",\n HYSTERESIS_DOWNWARD_MULTIPLIER: \"number\",\n HYSTERESIS_UPWARD_MULTIPLIER: \"number\",\n\n // Gwei Values\n MIN_DEPOSIT_AMOUNT: \"number\",\n MAX_EFFECTIVE_BALANCE: \"number\",\n EFFECTIVE_BALANCE_INCREMENT: \"number\",\n\n // Time parameters\n MIN_ATTESTATION_INCLUSION_DELAY: \"number\",\n SLOTS_PER_EPOCH: \"number\",\n MIN_SEED_LOOKAHEAD: \"number\",\n MAX_SEED_LOOKAHEAD: \"number\",\n EPOCHS_PER_ETH1_VOTING_PERIOD: \"number\",\n SLOTS_PER_HISTORICAL_ROOT: \"number\",\n MIN_EPOCHS_TO_INACTIVITY_PENALTY: \"number\",\n\n // State vector lengths\n EPOCHS_PER_HISTORICAL_VECTOR: \"number\",\n EPOCHS_PER_SLASHINGS_VECTOR: \"number\",\n HISTORICAL_ROOTS_LIMIT: \"number\",\n VALIDATOR_REGISTRY_LIMIT: \"number\",\n\n // Reward and penalty quotients\n BASE_REWARD_FACTOR: \"number\",\n WHISTLEBLOWER_REWARD_QUOTIENT: \"number\",\n PROPOSER_REWARD_QUOTIENT: \"number\",\n INACTIVITY_PENALTY_QUOTIENT: \"number\",\n MIN_SLASHING_PENALTY_QUOTIENT: \"number\",\n PROPORTIONAL_SLASHING_MULTIPLIER: \"number\",\n\n // Max operations per block\n MAX_PROPOSER_SLASHINGS: \"number\",\n MAX_ATTESTER_SLASHINGS: \"number\",\n MAX_ATTESTATIONS: \"number\",\n MAX_DEPOSITS: \"number\",\n MAX_VOLUNTARY_EXITS: \"number\",\n\n // ALTAIR\n /////////\n SYNC_COMMITTEE_SIZE: \"number\",\n EPOCHS_PER_SYNC_COMMITTEE_PERIOD: \"number\",\n INACTIVITY_PENALTY_QUOTIENT_ALTAIR: \"number\",\n MIN_SLASHING_PENALTY_QUOTIENT_ALTAIR: \"number\",\n PROPORTIONAL_SLASHING_MULTIPLIER_ALTAIR: \"number\",\n MIN_SYNC_COMMITTEE_PARTICIPANTS: \"number\",\n UPDATE_TIMEOUT: \"number\",\n\n // BELLATRIX\n ////////////\n INACTIVITY_PENALTY_QUOTIENT_BELLATRIX: \"number\",\n MIN_SLASHING_PENALTY_QUOTIENT_BELLATRIX: \"number\",\n PROPORTIONAL_SLASHING_MULTIPLIER_BELLATRIX: \"number\",\n MAX_BYTES_PER_TRANSACTION: \"number\",\n MAX_TRANSACTIONS_PER_PAYLOAD: \"number\",\n BYTES_PER_LOGS_BLOOM: \"number\",\n MAX_EXTRA_DATA_BYTES: \"number\",\n\n // CAPELLA\n //////////\n MAX_BLS_TO_EXECUTION_CHANGES: \"number\",\n MAX_WITHDRAWALS_PER_PAYLOAD: \"number\",\n MAX_VALIDATORS_PER_WITHDRAWALS_SWEEP: \"number\",\n\n // DENEB\n ///////////\n FIELD_ELEMENTS_PER_BLOB: \"number\",\n MAX_BLOB_COMMITMENTS_PER_BLOCK: \"number\",\n KZG_COMMITMENT_INCLUSION_PROOF_DEPTH: \"number\",\n\n // ELECTRA\n MAX_DEPOSIT_REQUESTS_PER_PAYLOAD: \"number\",\n MAX_WITHDRAWAL_REQUESTS_PER_PAYLOAD: \"number\",\n MAX_ATTESTER_SLASHINGS_ELECTRA: \"number\",\n MAX_ATTESTATIONS_ELECTRA: \"number\",\n MAX_PENDING_PARTIALS_PER_WITHDRAWALS_SWEEP: \"number\",\n MAX_PENDING_DEPOSITS_PER_EPOCH: \"number\",\n MAX_EFFECTIVE_BALANCE_ELECTRA: \"number\",\n MIN_SLASHING_PENALTY_QUOTIENT_ELECTRA: \"number\",\n MIN_ACTIVATION_BALANCE: \"number\",\n PENDING_DEPOSITS_LIMIT: \"number\",\n PENDING_PARTIAL_WITHDRAWALS_LIMIT: \"number\",\n PENDING_CONSOLIDATIONS_LIMIT: \"number\",\n MAX_CONSOLIDATION_REQUESTS_PER_PAYLOAD: \"number\",\n WHISTLEBLOWER_REWARD_QUOTIENT_ELECTRA: \"number\",\n\n // FULU\n ///////////\n NUMBER_OF_COLUMNS: \"number\",\n CELLS_PER_EXT_BLOB: \"number\",\n FIELD_ELEMENTS_PER_CELL: \"number\",\n FIELD_ELEMENTS_PER_EXT_BLOB: \"number\",\n KZG_COMMITMENTS_INCLUSION_PROOF_DEPTH: \"number\",\n\n // GLOAS\n PTC_SIZE: \"number\",\n MAX_PAYLOAD_ATTESTATIONS: \"number\",\n BUILDER_REGISTRY_LIMIT: \"number\",\n BUILDER_PENDING_WITHDRAWALS_LIMIT: \"number\",\n MAX_BUILDERS_PER_WITHDRAWALS_SWEEP: \"number\",\n};\n\ntype BeaconPresetTypes = {\n [K in keyof BeaconPreset]: \"number\";\n};\n","import {BeaconPreset, beaconPresetTypes} from \"./types.js\";\n\n/**\n * Render BeaconPreset to JSON strings\n * - Numbers: Render as a quoted decimal string\n */\nexport function presetToJson(preset: BeaconPreset): Record<string, string> {\n const json: Record<string, string> = {};\n\n for (const key of Object.keys(preset) as (keyof BeaconPreset)[]) {\n json[key] = serializePresetValue(preset[key]);\n }\n\n return json;\n}\n\n/**\n * Type Wrapper to ensure that all values of BeaconPreset are number.\n * If there are more types, expand this function with a type switch\n */\nfunction serializePresetValue(value: number): string {\n return value.toString(10);\n}\n\n/**\n * Parse JSON strings of BeaconPreset\n * - Numbers: Convert quoted decimal string to number\n */\nexport function presetFromJson(json: Record<string, unknown>): Partial<BeaconPreset> {\n const beaconPreset = {} as BeaconPreset;\n\n for (const key of Object.keys(beaconPresetTypes) as (keyof BeaconPreset)[]) {\n const value = json[key];\n if (value !== undefined) {\n beaconPreset[key] = deserializePresetValue(value, key);\n }\n }\n\n return beaconPreset;\n}\n\n/**\n * Ensure that all values of parsed BeaconPreset are numbers\n * If there are more types, expand this function with a type switch\n */\nfunction deserializePresetValue(valueStr: unknown, keyName: string): number {\n if (typeof valueStr !== \"string\") {\n throw Error(`Invalid ${keyName} value ${valueStr as string} expected string`);\n }\n\n const value = parseInt(valueStr, 10);\n\n if (Number.isNaN(value)) {\n throw Error(`Invalid ${keyName} value ${valueStr} expected number`);\n }\n\n return value;\n}\n","export enum PresetName {\n mainnet = \"mainnet\",\n minimal = \"minimal\",\n gnosis = \"gnosis\",\n}\n","export const presetStatus = {\n frozen: false,\n};\n","import {presetFromJson} from \"./json.js\";\nimport {PresetName} from \"./presetName.js\";\nimport {presetStatus} from \"./presetStatus.js\";\nimport {BeaconPreset} from \"./types.js\";\n\nexport {PresetName, presetFromJson};\n\n/**\n * The preset name currently exported by this library\n *\n * The `LODESTAR_PRESET` environment variable is used to select the active preset\n * If `LODESTAR_PRESET` is not set, the default is `mainnet`.\n *\n * The active preset can be manually overridden with `setActivePreset`\n */\nexport let userSelectedPreset: PresetName | null = null;\n\nexport let userOverrides: Partial<BeaconPreset> | undefined = undefined;\n\n/**\n * Override the active preset\n *\n * WARNING: Lodestar libraries rely on preset values being _constant_, so the active preset must be set _before_ loading any other lodestar libraries.\n *\n * Only call this function if you _really_ know what you are doing.\n *\n * @param presetName - the preset to use as a base\n * @param overrides - customized fields\n */\nexport function setActivePreset(presetName: PresetName | null, overrides?: Partial<BeaconPreset>): void {\n if (presetStatus.frozen) {\n throw Error(`Lodestar preset is already frozen. You must call setActivePreset() at the top of your\napplication entry point, before importing @lodestar/params, or any library that may import it.\n\n\\`\\`\\`\n// index.ts\nimport {setActivePreset, PresetName} from \"@lodestar/params/setPreset\"\nsetActivePreset(PresetName.minimal)\n// Now you can safely import from other paths and consume params\nimport {SLOTS_PER_EPOCH} from \"@lodestar/params\"\nconsole.log({SLOTS_PER_EPOCH})\n\\`\\`\\`\n`);\n }\n\n userSelectedPreset = presetName;\n userOverrides = overrides;\n}\n"]}
@@ -0,0 +1,175 @@
1
+ // node_modules/@lodestar/params/lib/types.js
2
+ var beaconPresetTypes = {
3
+ // Misc
4
+ MAX_COMMITTEES_PER_SLOT: "number",
5
+ TARGET_COMMITTEE_SIZE: "number",
6
+ MAX_VALIDATORS_PER_COMMITTEE: "number",
7
+ SHUFFLE_ROUND_COUNT: "number",
8
+ HYSTERESIS_QUOTIENT: "number",
9
+ HYSTERESIS_DOWNWARD_MULTIPLIER: "number",
10
+ HYSTERESIS_UPWARD_MULTIPLIER: "number",
11
+ // Gwei Values
12
+ MIN_DEPOSIT_AMOUNT: "number",
13
+ MAX_EFFECTIVE_BALANCE: "number",
14
+ EFFECTIVE_BALANCE_INCREMENT: "number",
15
+ // Time parameters
16
+ MIN_ATTESTATION_INCLUSION_DELAY: "number",
17
+ SLOTS_PER_EPOCH: "number",
18
+ MIN_SEED_LOOKAHEAD: "number",
19
+ MAX_SEED_LOOKAHEAD: "number",
20
+ EPOCHS_PER_ETH1_VOTING_PERIOD: "number",
21
+ SLOTS_PER_HISTORICAL_ROOT: "number",
22
+ MIN_EPOCHS_TO_INACTIVITY_PENALTY: "number",
23
+ // State vector lengths
24
+ EPOCHS_PER_HISTORICAL_VECTOR: "number",
25
+ EPOCHS_PER_SLASHINGS_VECTOR: "number",
26
+ HISTORICAL_ROOTS_LIMIT: "number",
27
+ VALIDATOR_REGISTRY_LIMIT: "number",
28
+ // Reward and penalty quotients
29
+ BASE_REWARD_FACTOR: "number",
30
+ WHISTLEBLOWER_REWARD_QUOTIENT: "number",
31
+ PROPOSER_REWARD_QUOTIENT: "number",
32
+ INACTIVITY_PENALTY_QUOTIENT: "number",
33
+ MIN_SLASHING_PENALTY_QUOTIENT: "number",
34
+ PROPORTIONAL_SLASHING_MULTIPLIER: "number",
35
+ // Max operations per block
36
+ MAX_PROPOSER_SLASHINGS: "number",
37
+ MAX_ATTESTER_SLASHINGS: "number",
38
+ MAX_ATTESTATIONS: "number",
39
+ MAX_DEPOSITS: "number",
40
+ MAX_VOLUNTARY_EXITS: "number",
41
+ // ALTAIR
42
+ /////////
43
+ SYNC_COMMITTEE_SIZE: "number",
44
+ EPOCHS_PER_SYNC_COMMITTEE_PERIOD: "number",
45
+ INACTIVITY_PENALTY_QUOTIENT_ALTAIR: "number",
46
+ MIN_SLASHING_PENALTY_QUOTIENT_ALTAIR: "number",
47
+ PROPORTIONAL_SLASHING_MULTIPLIER_ALTAIR: "number",
48
+ MIN_SYNC_COMMITTEE_PARTICIPANTS: "number",
49
+ UPDATE_TIMEOUT: "number",
50
+ // BELLATRIX
51
+ ////////////
52
+ INACTIVITY_PENALTY_QUOTIENT_BELLATRIX: "number",
53
+ MIN_SLASHING_PENALTY_QUOTIENT_BELLATRIX: "number",
54
+ PROPORTIONAL_SLASHING_MULTIPLIER_BELLATRIX: "number",
55
+ MAX_BYTES_PER_TRANSACTION: "number",
56
+ MAX_TRANSACTIONS_PER_PAYLOAD: "number",
57
+ BYTES_PER_LOGS_BLOOM: "number",
58
+ MAX_EXTRA_DATA_BYTES: "number",
59
+ // CAPELLA
60
+ //////////
61
+ MAX_BLS_TO_EXECUTION_CHANGES: "number",
62
+ MAX_WITHDRAWALS_PER_PAYLOAD: "number",
63
+ MAX_VALIDATORS_PER_WITHDRAWALS_SWEEP: "number",
64
+ // DENEB
65
+ ///////////
66
+ FIELD_ELEMENTS_PER_BLOB: "number",
67
+ MAX_BLOB_COMMITMENTS_PER_BLOCK: "number",
68
+ KZG_COMMITMENT_INCLUSION_PROOF_DEPTH: "number",
69
+ // ELECTRA
70
+ MAX_DEPOSIT_REQUESTS_PER_PAYLOAD: "number",
71
+ MAX_WITHDRAWAL_REQUESTS_PER_PAYLOAD: "number",
72
+ MAX_ATTESTER_SLASHINGS_ELECTRA: "number",
73
+ MAX_ATTESTATIONS_ELECTRA: "number",
74
+ MAX_PENDING_PARTIALS_PER_WITHDRAWALS_SWEEP: "number",
75
+ MAX_PENDING_DEPOSITS_PER_EPOCH: "number",
76
+ MAX_EFFECTIVE_BALANCE_ELECTRA: "number",
77
+ MIN_SLASHING_PENALTY_QUOTIENT_ELECTRA: "number",
78
+ MIN_ACTIVATION_BALANCE: "number",
79
+ PENDING_DEPOSITS_LIMIT: "number",
80
+ PENDING_PARTIAL_WITHDRAWALS_LIMIT: "number",
81
+ PENDING_CONSOLIDATIONS_LIMIT: "number",
82
+ MAX_CONSOLIDATION_REQUESTS_PER_PAYLOAD: "number",
83
+ WHISTLEBLOWER_REWARD_QUOTIENT_ELECTRA: "number",
84
+ // FULU
85
+ ///////////
86
+ NUMBER_OF_COLUMNS: "number",
87
+ CELLS_PER_EXT_BLOB: "number",
88
+ FIELD_ELEMENTS_PER_CELL: "number",
89
+ FIELD_ELEMENTS_PER_EXT_BLOB: "number",
90
+ KZG_COMMITMENTS_INCLUSION_PROOF_DEPTH: "number",
91
+ // GLOAS
92
+ PTC_SIZE: "number",
93
+ MAX_PAYLOAD_ATTESTATIONS: "number",
94
+ BUILDER_REGISTRY_LIMIT: "number",
95
+ BUILDER_PENDING_WITHDRAWALS_LIMIT: "number",
96
+ MAX_BUILDERS_PER_WITHDRAWALS_SWEEP: "number"
97
+ };
98
+
99
+ // node_modules/@lodestar/params/lib/json.js
100
+ function presetToJson(preset) {
101
+ const json = {};
102
+ for (const key of Object.keys(preset)) {
103
+ json[key] = serializePresetValue(preset[key]);
104
+ }
105
+ return json;
106
+ }
107
+ function serializePresetValue(value) {
108
+ return value.toString(10);
109
+ }
110
+ function presetFromJson(json) {
111
+ const beaconPreset = {};
112
+ for (const key of Object.keys(beaconPresetTypes)) {
113
+ const value = json[key];
114
+ if (value !== void 0) {
115
+ beaconPreset[key] = deserializePresetValue(value, key);
116
+ }
117
+ }
118
+ return beaconPreset;
119
+ }
120
+ function deserializePresetValue(valueStr, keyName) {
121
+ if (typeof valueStr !== "string") {
122
+ throw Error(`Invalid ${keyName} value ${valueStr} expected string`);
123
+ }
124
+ const value = parseInt(valueStr, 10);
125
+ if (Number.isNaN(value)) {
126
+ throw Error(`Invalid ${keyName} value ${valueStr} expected number`);
127
+ }
128
+ return value;
129
+ }
130
+
131
+ // node_modules/@lodestar/params/lib/presetName.js
132
+ var PresetName;
133
+ (function(PresetName2) {
134
+ PresetName2["mainnet"] = "mainnet";
135
+ PresetName2["minimal"] = "minimal";
136
+ PresetName2["gnosis"] = "gnosis";
137
+ })(PresetName || (PresetName = {}));
138
+
139
+ // node_modules/@lodestar/params/lib/presetStatus.js
140
+ var presetStatus = {
141
+ frozen: false
142
+ };
143
+
144
+ // node_modules/@lodestar/params/lib/setPreset.js
145
+ var userSelectedPreset = null;
146
+ var userOverrides = void 0;
147
+ function setActivePreset(presetName, overrides) {
148
+ if (presetStatus.frozen) {
149
+ throw Error(`Lodestar preset is already frozen. You must call setActivePreset() at the top of your
150
+ application entry point, before importing @lodestar/params, or any library that may import it.
151
+
152
+ \`\`\`
153
+ // index.ts
154
+ import {setActivePreset, PresetName} from "@lodestar/params/setPreset"
155
+ setActivePreset(PresetName.minimal)
156
+ // Now you can safely import from other paths and consume params
157
+ import {SLOTS_PER_EPOCH} from "@lodestar/params"
158
+ console.log({SLOTS_PER_EPOCH})
159
+ \`\`\`
160
+ `);
161
+ }
162
+ userSelectedPreset = presetName;
163
+ userOverrides = overrides;
164
+ }
165
+
166
+ export {
167
+ presetToJson,
168
+ presetFromJson,
169
+ PresetName,
170
+ presetStatus,
171
+ userSelectedPreset,
172
+ userOverrides,
173
+ setActivePreset
174
+ };
175
+ //# sourceMappingURL=chunk-P3UCQHON.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../node_modules/@lodestar/params/src/types.ts","../node_modules/@lodestar/params/src/json.ts","../node_modules/@lodestar/params/src/presetName.ts","../node_modules/@lodestar/params/src/presetStatus.ts","../node_modules/@lodestar/params/src/setPreset.ts"],"sourcesContent":["/**\n * Compile-time chain configuration\n */\nexport type BeaconPreset = {\n // Misc\n MAX_COMMITTEES_PER_SLOT: number;\n TARGET_COMMITTEE_SIZE: number;\n MAX_VALIDATORS_PER_COMMITTEE: number;\n\n SHUFFLE_ROUND_COUNT: number;\n\n HYSTERESIS_QUOTIENT: number;\n HYSTERESIS_DOWNWARD_MULTIPLIER: number;\n HYSTERESIS_UPWARD_MULTIPLIER: number;\n\n // Gwei Values\n MIN_DEPOSIT_AMOUNT: number;\n MAX_EFFECTIVE_BALANCE: number;\n EFFECTIVE_BALANCE_INCREMENT: number;\n\n // Time parameters\n MIN_ATTESTATION_INCLUSION_DELAY: number;\n SLOTS_PER_EPOCH: number;\n MIN_SEED_LOOKAHEAD: number;\n MAX_SEED_LOOKAHEAD: number;\n EPOCHS_PER_ETH1_VOTING_PERIOD: number;\n SLOTS_PER_HISTORICAL_ROOT: number;\n MIN_EPOCHS_TO_INACTIVITY_PENALTY: number;\n\n // State vector lengths\n EPOCHS_PER_HISTORICAL_VECTOR: number;\n EPOCHS_PER_SLASHINGS_VECTOR: number;\n HISTORICAL_ROOTS_LIMIT: number;\n VALIDATOR_REGISTRY_LIMIT: number;\n\n // Reward and penalty quotients\n BASE_REWARD_FACTOR: number;\n WHISTLEBLOWER_REWARD_QUOTIENT: number;\n PROPOSER_REWARD_QUOTIENT: number;\n INACTIVITY_PENALTY_QUOTIENT: number;\n MIN_SLASHING_PENALTY_QUOTIENT: number;\n PROPORTIONAL_SLASHING_MULTIPLIER: number;\n\n // Max operations per block\n MAX_PROPOSER_SLASHINGS: number;\n MAX_ATTESTER_SLASHINGS: number;\n MAX_ATTESTATIONS: number;\n MAX_DEPOSITS: number;\n MAX_VOLUNTARY_EXITS: number;\n\n // ALTAIR\n /////////\n SYNC_COMMITTEE_SIZE: number;\n EPOCHS_PER_SYNC_COMMITTEE_PERIOD: number;\n INACTIVITY_PENALTY_QUOTIENT_ALTAIR: number;\n MIN_SLASHING_PENALTY_QUOTIENT_ALTAIR: number;\n PROPORTIONAL_SLASHING_MULTIPLIER_ALTAIR: number;\n MIN_SYNC_COMMITTEE_PARTICIPANTS: number;\n UPDATE_TIMEOUT: number;\n\n // BELLATRIX\n ////////////\n INACTIVITY_PENALTY_QUOTIENT_BELLATRIX: number;\n MIN_SLASHING_PENALTY_QUOTIENT_BELLATRIX: number;\n PROPORTIONAL_SLASHING_MULTIPLIER_BELLATRIX: number;\n MAX_BYTES_PER_TRANSACTION: number;\n MAX_TRANSACTIONS_PER_PAYLOAD: number;\n BYTES_PER_LOGS_BLOOM: number;\n MAX_EXTRA_DATA_BYTES: number;\n\n // CAPELLA\n //////////\n MAX_BLS_TO_EXECUTION_CHANGES: number;\n MAX_WITHDRAWALS_PER_PAYLOAD: number;\n MAX_VALIDATORS_PER_WITHDRAWALS_SWEEP: number;\n\n // DENEB\n ///////////\n FIELD_ELEMENTS_PER_BLOB: number;\n MAX_BLOB_COMMITMENTS_PER_BLOCK: number;\n KZG_COMMITMENT_INCLUSION_PROOF_DEPTH: number;\n\n // ELECTRA\n MAX_DEPOSIT_REQUESTS_PER_PAYLOAD: number;\n MAX_WITHDRAWAL_REQUESTS_PER_PAYLOAD: number;\n MAX_ATTESTER_SLASHINGS_ELECTRA: number;\n MAX_ATTESTATIONS_ELECTRA: number;\n MAX_PENDING_PARTIALS_PER_WITHDRAWALS_SWEEP: number;\n MAX_PENDING_DEPOSITS_PER_EPOCH: number;\n MAX_EFFECTIVE_BALANCE_ELECTRA: number;\n MIN_SLASHING_PENALTY_QUOTIENT_ELECTRA: number;\n MIN_ACTIVATION_BALANCE: number;\n PENDING_DEPOSITS_LIMIT: number;\n PENDING_PARTIAL_WITHDRAWALS_LIMIT: number;\n PENDING_CONSOLIDATIONS_LIMIT: number;\n MAX_CONSOLIDATION_REQUESTS_PER_PAYLOAD: number;\n WHISTLEBLOWER_REWARD_QUOTIENT_ELECTRA: number;\n\n // FULU\n ///////////\n NUMBER_OF_COLUMNS: number;\n CELLS_PER_EXT_BLOB: number;\n FIELD_ELEMENTS_PER_CELL: number;\n FIELD_ELEMENTS_PER_EXT_BLOB: number;\n KZG_COMMITMENTS_INCLUSION_PROOF_DEPTH: number;\n\n // GLOAS\n PTC_SIZE: number;\n MAX_PAYLOAD_ATTESTATIONS: number;\n BUILDER_REGISTRY_LIMIT: number;\n BUILDER_PENDING_WITHDRAWALS_LIMIT: number;\n MAX_BUILDERS_PER_WITHDRAWALS_SWEEP: number;\n};\n\n/**\n * Presets only contain numbers, just used to filter out extraneous keys\n * when overriding the active preset with custom values from file\n */\nexport const beaconPresetTypes: BeaconPresetTypes = {\n // Misc\n MAX_COMMITTEES_PER_SLOT: \"number\",\n TARGET_COMMITTEE_SIZE: \"number\",\n MAX_VALIDATORS_PER_COMMITTEE: \"number\",\n\n SHUFFLE_ROUND_COUNT: \"number\",\n\n HYSTERESIS_QUOTIENT: \"number\",\n HYSTERESIS_DOWNWARD_MULTIPLIER: \"number\",\n HYSTERESIS_UPWARD_MULTIPLIER: \"number\",\n\n // Gwei Values\n MIN_DEPOSIT_AMOUNT: \"number\",\n MAX_EFFECTIVE_BALANCE: \"number\",\n EFFECTIVE_BALANCE_INCREMENT: \"number\",\n\n // Time parameters\n MIN_ATTESTATION_INCLUSION_DELAY: \"number\",\n SLOTS_PER_EPOCH: \"number\",\n MIN_SEED_LOOKAHEAD: \"number\",\n MAX_SEED_LOOKAHEAD: \"number\",\n EPOCHS_PER_ETH1_VOTING_PERIOD: \"number\",\n SLOTS_PER_HISTORICAL_ROOT: \"number\",\n MIN_EPOCHS_TO_INACTIVITY_PENALTY: \"number\",\n\n // State vector lengths\n EPOCHS_PER_HISTORICAL_VECTOR: \"number\",\n EPOCHS_PER_SLASHINGS_VECTOR: \"number\",\n HISTORICAL_ROOTS_LIMIT: \"number\",\n VALIDATOR_REGISTRY_LIMIT: \"number\",\n\n // Reward and penalty quotients\n BASE_REWARD_FACTOR: \"number\",\n WHISTLEBLOWER_REWARD_QUOTIENT: \"number\",\n PROPOSER_REWARD_QUOTIENT: \"number\",\n INACTIVITY_PENALTY_QUOTIENT: \"number\",\n MIN_SLASHING_PENALTY_QUOTIENT: \"number\",\n PROPORTIONAL_SLASHING_MULTIPLIER: \"number\",\n\n // Max operations per block\n MAX_PROPOSER_SLASHINGS: \"number\",\n MAX_ATTESTER_SLASHINGS: \"number\",\n MAX_ATTESTATIONS: \"number\",\n MAX_DEPOSITS: \"number\",\n MAX_VOLUNTARY_EXITS: \"number\",\n\n // ALTAIR\n /////////\n SYNC_COMMITTEE_SIZE: \"number\",\n EPOCHS_PER_SYNC_COMMITTEE_PERIOD: \"number\",\n INACTIVITY_PENALTY_QUOTIENT_ALTAIR: \"number\",\n MIN_SLASHING_PENALTY_QUOTIENT_ALTAIR: \"number\",\n PROPORTIONAL_SLASHING_MULTIPLIER_ALTAIR: \"number\",\n MIN_SYNC_COMMITTEE_PARTICIPANTS: \"number\",\n UPDATE_TIMEOUT: \"number\",\n\n // BELLATRIX\n ////////////\n INACTIVITY_PENALTY_QUOTIENT_BELLATRIX: \"number\",\n MIN_SLASHING_PENALTY_QUOTIENT_BELLATRIX: \"number\",\n PROPORTIONAL_SLASHING_MULTIPLIER_BELLATRIX: \"number\",\n MAX_BYTES_PER_TRANSACTION: \"number\",\n MAX_TRANSACTIONS_PER_PAYLOAD: \"number\",\n BYTES_PER_LOGS_BLOOM: \"number\",\n MAX_EXTRA_DATA_BYTES: \"number\",\n\n // CAPELLA\n //////////\n MAX_BLS_TO_EXECUTION_CHANGES: \"number\",\n MAX_WITHDRAWALS_PER_PAYLOAD: \"number\",\n MAX_VALIDATORS_PER_WITHDRAWALS_SWEEP: \"number\",\n\n // DENEB\n ///////////\n FIELD_ELEMENTS_PER_BLOB: \"number\",\n MAX_BLOB_COMMITMENTS_PER_BLOCK: \"number\",\n KZG_COMMITMENT_INCLUSION_PROOF_DEPTH: \"number\",\n\n // ELECTRA\n MAX_DEPOSIT_REQUESTS_PER_PAYLOAD: \"number\",\n MAX_WITHDRAWAL_REQUESTS_PER_PAYLOAD: \"number\",\n MAX_ATTESTER_SLASHINGS_ELECTRA: \"number\",\n MAX_ATTESTATIONS_ELECTRA: \"number\",\n MAX_PENDING_PARTIALS_PER_WITHDRAWALS_SWEEP: \"number\",\n MAX_PENDING_DEPOSITS_PER_EPOCH: \"number\",\n MAX_EFFECTIVE_BALANCE_ELECTRA: \"number\",\n MIN_SLASHING_PENALTY_QUOTIENT_ELECTRA: \"number\",\n MIN_ACTIVATION_BALANCE: \"number\",\n PENDING_DEPOSITS_LIMIT: \"number\",\n PENDING_PARTIAL_WITHDRAWALS_LIMIT: \"number\",\n PENDING_CONSOLIDATIONS_LIMIT: \"number\",\n MAX_CONSOLIDATION_REQUESTS_PER_PAYLOAD: \"number\",\n WHISTLEBLOWER_REWARD_QUOTIENT_ELECTRA: \"number\",\n\n // FULU\n ///////////\n NUMBER_OF_COLUMNS: \"number\",\n CELLS_PER_EXT_BLOB: \"number\",\n FIELD_ELEMENTS_PER_CELL: \"number\",\n FIELD_ELEMENTS_PER_EXT_BLOB: \"number\",\n KZG_COMMITMENTS_INCLUSION_PROOF_DEPTH: \"number\",\n\n // GLOAS\n PTC_SIZE: \"number\",\n MAX_PAYLOAD_ATTESTATIONS: \"number\",\n BUILDER_REGISTRY_LIMIT: \"number\",\n BUILDER_PENDING_WITHDRAWALS_LIMIT: \"number\",\n MAX_BUILDERS_PER_WITHDRAWALS_SWEEP: \"number\",\n};\n\ntype BeaconPresetTypes = {\n [K in keyof BeaconPreset]: \"number\";\n};\n","import {BeaconPreset, beaconPresetTypes} from \"./types.js\";\n\n/**\n * Render BeaconPreset to JSON strings\n * - Numbers: Render as a quoted decimal string\n */\nexport function presetToJson(preset: BeaconPreset): Record<string, string> {\n const json: Record<string, string> = {};\n\n for (const key of Object.keys(preset) as (keyof BeaconPreset)[]) {\n json[key] = serializePresetValue(preset[key]);\n }\n\n return json;\n}\n\n/**\n * Type Wrapper to ensure that all values of BeaconPreset are number.\n * If there are more types, expand this function with a type switch\n */\nfunction serializePresetValue(value: number): string {\n return value.toString(10);\n}\n\n/**\n * Parse JSON strings of BeaconPreset\n * - Numbers: Convert quoted decimal string to number\n */\nexport function presetFromJson(json: Record<string, unknown>): Partial<BeaconPreset> {\n const beaconPreset = {} as BeaconPreset;\n\n for (const key of Object.keys(beaconPresetTypes) as (keyof BeaconPreset)[]) {\n const value = json[key];\n if (value !== undefined) {\n beaconPreset[key] = deserializePresetValue(value, key);\n }\n }\n\n return beaconPreset;\n}\n\n/**\n * Ensure that all values of parsed BeaconPreset are numbers\n * If there are more types, expand this function with a type switch\n */\nfunction deserializePresetValue(valueStr: unknown, keyName: string): number {\n if (typeof valueStr !== \"string\") {\n throw Error(`Invalid ${keyName} value ${valueStr as string} expected string`);\n }\n\n const value = parseInt(valueStr, 10);\n\n if (Number.isNaN(value)) {\n throw Error(`Invalid ${keyName} value ${valueStr} expected number`);\n }\n\n return value;\n}\n","export enum PresetName {\n mainnet = \"mainnet\",\n minimal = \"minimal\",\n gnosis = \"gnosis\",\n}\n","export const presetStatus = {\n frozen: false,\n};\n","import {presetFromJson} from \"./json.js\";\nimport {PresetName} from \"./presetName.js\";\nimport {presetStatus} from \"./presetStatus.js\";\nimport {BeaconPreset} from \"./types.js\";\n\nexport {PresetName, presetFromJson};\n\n/**\n * The preset name currently exported by this library\n *\n * The `LODESTAR_PRESET` environment variable is used to select the active preset\n * If `LODESTAR_PRESET` is not set, the default is `mainnet`.\n *\n * The active preset can be manually overridden with `setActivePreset`\n */\nexport let userSelectedPreset: PresetName | null = null;\n\nexport let userOverrides: Partial<BeaconPreset> | undefined = undefined;\n\n/**\n * Override the active preset\n *\n * WARNING: Lodestar libraries rely on preset values being _constant_, so the active preset must be set _before_ loading any other lodestar libraries.\n *\n * Only call this function if you _really_ know what you are doing.\n *\n * @param presetName - the preset to use as a base\n * @param overrides - customized fields\n */\nexport function setActivePreset(presetName: PresetName | null, overrides?: Partial<BeaconPreset>): void {\n if (presetStatus.frozen) {\n throw Error(`Lodestar preset is already frozen. You must call setActivePreset() at the top of your\napplication entry point, before importing @lodestar/params, or any library that may import it.\n\n\\`\\`\\`\n// index.ts\nimport {setActivePreset, PresetName} from \"@lodestar/params/setPreset\"\nsetActivePreset(PresetName.minimal)\n// Now you can safely import from other paths and consume params\nimport {SLOTS_PER_EPOCH} from \"@lodestar/params\"\nconsole.log({SLOTS_PER_EPOCH})\n\\`\\`\\`\n`);\n }\n\n userSelectedPreset = presetName;\n userOverrides = overrides;\n}\n"],"mappings":";AAsHO,IAAM,oBAAuC;;EAElD,yBAAyB;EACzB,uBAAuB;EACvB,8BAA8B;EAE9B,qBAAqB;EAErB,qBAAqB;EACrB,gCAAgC;EAChC,8BAA8B;;EAG9B,oBAAoB;EACpB,uBAAuB;EACvB,6BAA6B;;EAG7B,iCAAiC;EACjC,iBAAiB;EACjB,oBAAoB;EACpB,oBAAoB;EACpB,+BAA+B;EAC/B,2BAA2B;EAC3B,kCAAkC;;EAGlC,8BAA8B;EAC9B,6BAA6B;EAC7B,wBAAwB;EACxB,0BAA0B;;EAG1B,oBAAoB;EACpB,+BAA+B;EAC/B,0BAA0B;EAC1B,6BAA6B;EAC7B,+BAA+B;EAC/B,kCAAkC;;EAGlC,wBAAwB;EACxB,wBAAwB;EACxB,kBAAkB;EAClB,cAAc;EACd,qBAAqB;;;EAIrB,qBAAqB;EACrB,kCAAkC;EAClC,oCAAoC;EACpC,sCAAsC;EACtC,yCAAyC;EACzC,iCAAiC;EACjC,gBAAgB;;;EAIhB,uCAAuC;EACvC,yCAAyC;EACzC,4CAA4C;EAC5C,2BAA2B;EAC3B,8BAA8B;EAC9B,sBAAsB;EACtB,sBAAsB;;;EAItB,8BAA8B;EAC9B,6BAA6B;EAC7B,sCAAsC;;;EAItC,yBAAyB;EACzB,gCAAgC;EAChC,sCAAsC;;EAGtC,kCAAkC;EAClC,qCAAqC;EACrC,gCAAgC;EAChC,0BAA0B;EAC1B,4CAA4C;EAC5C,gCAAgC;EAChC,+BAA+B;EAC/B,uCAAuC;EACvC,wBAAwB;EACxB,wBAAwB;EACxB,mCAAmC;EACnC,8BAA8B;EAC9B,wCAAwC;EACxC,uCAAuC;;;EAIvC,mBAAmB;EACnB,oBAAoB;EACpB,yBAAyB;EACzB,6BAA6B;EAC7B,uCAAuC;;EAGvC,UAAU;EACV,0BAA0B;EAC1B,wBAAwB;EACxB,mCAAmC;EACnC,oCAAoC;;;;AC5NhC,SAAU,aAAa,QAA8C;AACzE,QAAM,OAA+B,CAAA;AAErC,aAAW,OAAO,OAAO,KAAK,MAAM,GAA6B;AAC/D,SAAK,GAAG,IAAI,qBAAqB,OAAO,GAAG,CAAC;EAC9C;AAEA,SAAO;AAAK;AAOd,SAAS,qBAAqB,OAAuB;AACnD,SAAO,MAAM,SAAS,EAAE;AAAE;AAOtB,SAAU,eAAe,MAAsD;AACnF,QAAM,eAAe,CAAA;AAErB,aAAW,OAAO,OAAO,KAAK,iBAAiB,GAA6B;AAC1E,UAAM,QAAQ,KAAK,GAAG;AACtB,QAAI,UAAU,QAAW;AACvB,mBAAa,GAAG,IAAI,uBAAuB,OAAO,GAAG;IACvD;EACF;AAEA,SAAO;AAAa;AAOtB,SAAS,uBAAuB,UAAmB,SAAyB;AAC1E,MAAI,OAAO,aAAa,UAAU;AAChC,UAAM,MAAM,WAAW,OAAO,UAAU,QAAkB,kBAAkB;EAC9E;AAEA,QAAM,QAAQ,SAAS,UAAU,EAAE;AAEnC,MAAI,OAAO,MAAM,KAAK,GAAG;AACvB,UAAM,MAAM,WAAW,OAAO,UAAU,QAAQ,kBAAkB;EACpE;AAEA,SAAO;AAAM;;;ACxDf,IAAY;CAAZ,SAAYA,aAAU;AACpB,EAAAA,YAAA,SAAA,IAAA;AACA,EAAAA,YAAA,SAAA,IAAA;AACA,EAAAA,YAAA,QAAA,IAAA;AAAkB,GAHR,eAAA,aAAU,CAAA,EAAA;;;ACAf,IAAM,eAAe;EAC1B,QAAQ;;;;ACcH,IAAI,qBAAwC;AAE5C,IAAI,gBAAmD;AAYxD,SAAU,gBAAgB,YAA+B,WAAyC;AACtG,MAAI,aAAa,QAAQ;AACvB,UAAM,MAAM;;;;;;;;;;;CAWf;EACC;AAEA,uBAAqB;AACrB,kBAAgB;AAAU;","names":["PresetName"]}