refactor: move optimistic_update fetch logic to utility function
This commit is contained in:
parent
408e1c4034
commit
efc657b790
|
@ -6,6 +6,7 @@ import { Bytes32, capella, LightClientUpdate } from "#types.js";
|
|||
import {
|
||||
consensusClient,
|
||||
deserializePubkeys,
|
||||
getConsensusOptimisticUpdate,
|
||||
optimisticUpdateFromJSON,
|
||||
optimisticUpdateVerify,
|
||||
} from "#util.js";
|
||||
|
@ -87,16 +88,8 @@ export default class Client extends BaseClient {
|
|||
}
|
||||
|
||||
protected async getLatestExecution(): Promise<ExecutionInfo | null> {
|
||||
const resp = await axios.get(
|
||||
`/eth/v1/beacon/light_client/optimistic_update`,
|
||||
);
|
||||
|
||||
const updateJSON = resp.data;
|
||||
|
||||
if (!updateJSON) {
|
||||
throw Error(`fetching optimistic update failed`);
|
||||
}
|
||||
const update = optimisticUpdateFromJSON(updateJSON.data);
|
||||
const updateJSON = await getConsensusOptimisticUpdate();
|
||||
const update = optimisticUpdateFromJSON(updateJSON);
|
||||
const verify = await optimisticUpdateVerify(
|
||||
this.latestCommittee as Uint8Array[],
|
||||
update,
|
||||
|
|
12
src/util.ts
12
src/util.ts
|
@ -77,3 +77,15 @@ export function getCommitteeHash(committee: Uint8Array[]): Uint8Array {
|
|||
|
||||
export const consensusClient = axios.create();
|
||||
axiosRetry(consensusClient, { retries: 3 });
|
||||
|
||||
export async function getConsensusOptimisticUpdate() {
|
||||
const resp = await consensusClient.get(
|
||||
`/eth/v1/beacon/light_client/optimistic_update`,
|
||||
);
|
||||
|
||||
const updateJSON = resp.data;
|
||||
|
||||
if (!updateJSON) {
|
||||
throw Error(`fetching optimistic update failed`);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue