@lodestar/api 1.19.0-dev.fd2fb16380 → 1.19.0-rc.0

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/README.md CHANGED
@@ -3,7 +3,7 @@
3
3
  [![Discord](https://img.shields.io/discord/593655374469660673.svg?label=Discord&logo=discord)](https://discord.gg/aMxzVcr)
4
4
  [![ETH Beacon APIs Spec v2.1.0](https://img.shields.io/badge/ETH%20beacon--APIs-2.1.0-blue)](https://github.com/ethereum/beacon-APIs/releases/tag/v2.1.0)
5
5
  ![ES Version](https://img.shields.io/badge/ES-2021-yellow)
6
- ![Node Version](https://img.shields.io/badge/node-20.x-green)
6
+ ![Node Version](https://img.shields.io/badge/node-22.x-green)
7
7
 
8
8
  > This package is part of [ChainSafe's Lodestar](https://lodestar.chainsafe.io) project
9
9
 
@@ -1,5 +1,6 @@
1
1
  import type { Api } from "./routes/index.js";
2
- export * as routes from "./routes/index.js";
2
+ import * as routes from "./routes/index.js";
3
+ export { routes };
3
4
  export { getClient } from "./client/index.js";
4
5
  export type { Api };
5
6
  export type ApiNamespace = keyof Api;
@@ -1,5 +1,6 @@
1
1
  // NOTE: Don't export server here so it's not bundled to all consumers
2
- export * as routes from "./routes/index.js";
2
+ import * as routes from "./routes/index.js";
3
+ export { routes };
3
4
  export { getClient } from "./client/index.js";
4
5
  const allNamespacesObj = {
5
6
  beacon: true,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/beacon/index.ts"],"names":[],"mappings":"AAEA,sEAAsE;AAEtE,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAC,SAAS,EAAC,MAAM,mBAAmB,CAAC;AAK5C,MAAM,gBAAgB,GAA6B;IACjD,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,IAAI;IACZ,KAAK,EAAE,IAAI;IACX,MAAM,EAAE,IAAI;IACZ,WAAW,EAAE,IAAI;IACjB,QAAQ,EAAE,IAAI;IACd,IAAI,EAAE,IAAI;IACV,KAAK,EAAE,IAAI;IACX,SAAS,EAAE,IAAI;CAChB,CAAC;AACF,MAAM,CAAC,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAmB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/beacon/index.ts"],"names":[],"mappings":"AAEA,sEAAsE;AAEtE,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAC,MAAM,EAAC,CAAC;AAChB,OAAO,EAAC,SAAS,EAAC,MAAM,mBAAmB,CAAC;AAK5C,MAAM,gBAAgB,GAA6B;IACjD,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,IAAI;IACZ,KAAK,EAAE,IAAI;IACX,MAAM,EAAE,IAAI;IACZ,WAAW,EAAE,IAAI;IACjB,QAAQ,EAAE,IAAI;IACd,IAAI,EAAE,IAAI;IACV,KAAK,EAAE,IAAI;IACX,SAAS,EAAE,IAAI;CAChB,CAAC;AACF,MAAM,CAAC,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAmB,CAAC"}
@@ -7,10 +7,7 @@ import * as block from "./block.js";
7
7
  import * as pool from "./pool.js";
8
8
  import * as state from "./state.js";
9
9
  import * as rewards from "./rewards.js";
10
- export * as block from "./block.js";
11
- export * as pool from "./pool.js";
12
- export * as state from "./state.js";
13
- export * as rewards from "./rewards.js";
10
+ export { block, pool, state, rewards };
14
11
  export { BroadcastValidation } from "./block.js";
15
12
  export type { BlockId, BlockHeaderResponse } from "./block.js";
16
13
  export type { AttestationFilters } from "./pool.js";
@@ -8,10 +8,7 @@ import * as rewards from "./rewards.js";
8
8
  // See /packages/api/src/routes/index.ts for reasoning and instructions to add new routes
9
9
  // NOTE: We choose to split the block, pool, and state namespaces so the files are not too big.
10
10
  // However, for a consumer all these methods are within the same service "beacon"
11
- export * as block from "./block.js";
12
- export * as pool from "./pool.js";
13
- export * as state from "./state.js";
14
- export * as rewards from "./rewards.js";
11
+ export { block, pool, state, rewards };
15
12
  export { BroadcastValidation } from "./block.js";
16
13
  export const routesData = {
17
14
  getGenesis: { url: "/eth/v1/beacon/genesis", method: "GET" },
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/beacon/routes/beacon/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAS,GAAG,EAAC,MAAM,iBAAiB,CAAC;AAE5C,OAAO,EAAC,cAAc,EAAC,MAAM,yCAAyC,CAAC;AACvE,OAAO,EAA0B,QAAQ,EAAE,aAAa,EAAC,MAAM,yBAAyB,CAAC;AACzF,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,OAAO,MAAM,cAAc,CAAC;AAExC,yFAAyF;AAEzF,+FAA+F;AAC/F,iFAAiF;AAEjF,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,OAAO,MAAM,cAAc,CAAC;AACxC,OAAO,EAAC,mBAAmB,EAAC,MAAM,YAAY,CAAC;AA+B/C,MAAM,CAAC,MAAM,UAAU,GAAoB;IACzC,UAAU,EAAE,EAAC,GAAG,EAAE,wBAAwB,EAAE,MAAM,EAAE,KAAK,EAAC;IAC1D,GAAG,KAAK,CAAC,UAAU;IACnB,GAAG,IAAI,CAAC,UAAU;IAClB,GAAG,KAAK,CAAC,UAAU;IACnB,GAAG,OAAO,CAAC,UAAU;CACtB,CAAC;AAMF,4EAA4E;AAC5E,MAAM,UAAU,iBAAiB,CAAC,MAAuB;IACvD,OAAO;QACL,UAAU,EAAE,QAAQ;QACpB,GAAG,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC;QAClC,GAAG,IAAI,CAAC,iBAAiB,EAAE;QAC3B,GAAG,KAAK,CAAC,iBAAiB,EAAE;QAC5B,GAAG,OAAO,CAAC,iBAAiB,EAAE;KAC/B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,cAAc;IAC5B,OAAO;QACL,UAAU,EAAE,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC;QAC7C,GAAG,KAAK,CAAC,cAAc,EAAE;QACzB,GAAG,IAAI,CAAC,cAAc,EAAE;QACxB,GAAG,KAAK,CAAC,cAAc,EAAE;QACzB,GAAG,OAAO,CAAC,cAAc,EAAE;KAC5B,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/beacon/routes/beacon/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAS,GAAG,EAAC,MAAM,iBAAiB,CAAC;AAE5C,OAAO,EAAC,cAAc,EAAC,MAAM,yCAAyC,CAAC;AACvE,OAAO,EAA0B,QAAQ,EAAE,aAAa,EAAC,MAAM,yBAAyB,CAAC;AACzF,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,OAAO,MAAM,cAAc,CAAC;AAExC,yFAAyF;AAEzF,+FAA+F;AAC/F,iFAAiF;AACjF,OAAO,EAAC,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAC,CAAC;AACrC,OAAO,EAAC,mBAAmB,EAAC,MAAM,YAAY,CAAC;AA+B/C,MAAM,CAAC,MAAM,UAAU,GAAoB;IACzC,UAAU,EAAE,EAAC,GAAG,EAAE,wBAAwB,EAAE,MAAM,EAAE,KAAK,EAAC;IAC1D,GAAG,KAAK,CAAC,UAAU;IACnB,GAAG,IAAI,CAAC,UAAU;IAClB,GAAG,KAAK,CAAC,UAAU;IACnB,GAAG,OAAO,CAAC,UAAU;CACtB,CAAC;AAMF,4EAA4E;AAC5E,MAAM,UAAU,iBAAiB,CAAC,MAAuB;IACvD,OAAO;QACL,UAAU,EAAE,QAAQ;QACpB,GAAG,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC;QAClC,GAAG,IAAI,CAAC,iBAAiB,EAAE;QAC3B,GAAG,KAAK,CAAC,iBAAiB,EAAE;QAC5B,GAAG,OAAO,CAAC,iBAAiB,EAAE;KAC/B,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,cAAc;IAC5B,OAAO;QACL,UAAU,EAAE,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC;QAC7C,GAAG,KAAK,CAAC,cAAc,EAAE;QACzB,GAAG,IAAI,CAAC,cAAc,EAAE;QACxB,GAAG,KAAK,CAAC,cAAc,EAAE;QACzB,GAAG,OAAO,CAAC,cAAc,EAAE;KAC5B,CAAC;AACJ,CAAC"}
@@ -7,15 +7,16 @@ import { Api as LodestarApi } from "./lodestar.js";
7
7
  import { Api as NodeApi } from "./node.js";
8
8
  import { Api as ProofApi } from "./proof.js";
9
9
  import { Api as ValidatorApi } from "./validator.js";
10
- export * as beacon from "./beacon/index.js";
11
- export * as config from "./config.js";
12
- export * as debug from "./debug.js";
13
- export * as events from "./events.js";
14
- export * as lightclient from "./lightclient.js";
15
- export * as lodestar from "./lodestar.js";
16
- export * as node from "./node.js";
17
- export * as proof from "./proof.js";
18
- export * as validator from "./validator.js";
10
+ import * as beacon from "./beacon/index.js";
11
+ import * as config from "./config.js";
12
+ import * as debug from "./debug.js";
13
+ import * as events from "./events.js";
14
+ import * as lightclient from "./lightclient.js";
15
+ import * as lodestar from "./lodestar.js";
16
+ import * as node from "./node.js";
17
+ import * as proof from "./proof.js";
18
+ import * as validator from "./validator.js";
19
+ export { beacon, config, debug, events, lightclient, lodestar, node, proof, validator };
19
20
  export type Api = {
20
21
  beacon: BeaconApi;
21
22
  config: ConfigApi;
@@ -1,12 +1,13 @@
1
- export * as beacon from "./beacon/index.js";
2
- export * as config from "./config.js";
3
- export * as debug from "./debug.js";
4
- export * as events from "./events.js";
5
- export * as lightclient from "./lightclient.js";
6
- export * as lodestar from "./lodestar.js";
7
- export * as node from "./node.js";
8
- export * as proof from "./proof.js";
9
- export * as validator from "./validator.js";
1
+ import * as beacon from "./beacon/index.js";
2
+ import * as config from "./config.js";
3
+ import * as debug from "./debug.js";
4
+ import * as events from "./events.js";
5
+ import * as lightclient from "./lightclient.js";
6
+ import * as lodestar from "./lodestar.js";
7
+ import * as node from "./node.js";
8
+ import * as proof from "./proof.js";
9
+ import * as validator from "./validator.js";
10
+ export { beacon, config, debug, events, lightclient, lodestar, node, proof, validator };
10
11
  // Reasoning of the API definitions
11
12
  // ================================
12
13
  //
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/beacon/routes/index.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AACtC,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AACtC,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAC;AAChD,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAC;AAC1C,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAC;AAc5C,mCAAmC;AACnC,mCAAmC;AACnC,EAAE;AACF,+FAA+F;AAC/F,+CAA+C;AAC/C,cAAc;AACd,iDAAiD;AACjD,kBAAkB;AAClB,sCAAsC;AACtC,cAAc;AACd,wCAAwC;AACxC,EAAE;AACF,0FAA0F;AAC1F,+FAA+F;AAC/F,EAAE;AACF,oGAAoG;AACpG,oCAAoC;AACpC,sCAAsC;AACtC,EAAE;AACF,2FAA2F;AAC3F,+FAA+F;AAC/F,yFAAyF;AACzF,EAAE;AACF,kGAAkG;AAClG,sGAAsG;AACtG,EAAE;AACF,EAAE;AACF,wBAAwB;AACxB,wBAAwB;AACxB,EAAE;AACF,iHAAiH;AACjH,+GAA+G;AAC/G,0FAA0F;AAC1F,yDAAyD;AACzD,8GAA8G;AAC9G,yDAAyD;AACzD,8GAA8G;AAC9G,gGAAgG"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/beacon/routes/index.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AACtC,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AACtC,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAC;AAChD,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAC;AAC1C,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,KAAK,MAAM,YAAY,CAAC;AACpC,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAC,CAAC;AActF,mCAAmC;AACnC,mCAAmC;AACnC,EAAE;AACF,+FAA+F;AAC/F,+CAA+C;AAC/C,cAAc;AACd,iDAAiD;AACjD,kBAAkB;AAClB,sCAAsC;AACtC,cAAc;AACd,wCAAwC;AACxC,EAAE;AACF,0FAA0F;AAC1F,+FAA+F;AAC/F,EAAE;AACF,oGAAoG;AACpG,oCAAoC;AACpC,sCAAsC;AACtC,EAAE;AACF,2FAA2F;AAC3F,+FAA+F;AAC/F,yFAAyF;AACzF,EAAE;AACF,kGAAkG;AAClG,sGAAsG;AACtG,EAAE;AACF,EAAE;AACF,wBAAwB;AACxB,wBAAwB;AACxB,EAAE;AACF,iHAAiH;AACjH,+GAA+G;AAC/G,0FAA0F;AAC1F,yDAAyD;AACzD,8GAA8G;AAC9G,yDAAyD;AACzD,8GAA8G;AAC9G,gGAAgG"}
@@ -14,8 +14,8 @@ export function getRoutes(config, api) {
14
14
  handler: async (req) => {
15
15
  const response = await api.getBlock(...reqSerializers.getBlock.parseReq(req));
16
16
  if (response instanceof Uint8Array) {
17
- // Fastify 3.x.x will automatically add header `Content-Type: application/octet-stream` if Buffer
18
- return Buffer.from(response);
17
+ // Fastify 4.x.x will automatically add header `Content-Type: application/octet-stream` if TypedArray
18
+ return response;
19
19
  }
20
20
  else {
21
21
  return returnTypes.getBlock.toJson(response);
@@ -30,8 +30,8 @@ export function getRoutes(config, api) {
30
30
  const slot = extractSlotFromBlockBytes(response);
31
31
  const version = config.getForkName(slot);
32
32
  void res.header("Eth-Consensus-Version", version);
33
- // Fastify 3.x.x will automatically add header `Content-Type: application/octet-stream` if Buffer
34
- return Buffer.from(response);
33
+ // Fastify 4.x.x will automatically add header `Content-Type: application/octet-stream` if TypedArray
34
+ return response;
35
35
  }
36
36
  else {
37
37
  void res.header("Eth-Consensus-Version", response.version);
@@ -1 +1 @@
1
- {"version":3,"file":"beacon.js","sourceRoot":"","sources":["../../../src/beacon/server/beacon.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,GAAG,EAAC,MAAM,iBAAiB,CAAC;AACpC,OAAO,EAAgB,UAAU,EAAE,cAAc,EAAE,iBAAiB,EAAC,MAAM,2BAA2B,CAAC;AACvG,OAAO,EAAe,oBAAoB,EAAC,MAAM,6BAA6B,CAAC;AAG/E,MAAM,UAAU,SAAS,CAAC,MAAuB,EAAE,GAAmB;IACpE,MAAM,cAAc,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;IACjD,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IAErC,0DAA0D;IAC1D,MAAM,YAAY,GAAG,oBAAoB,CACvC,EAAC,UAAU,EAAE,cAAc,EAAE,iBAAiB,EAAC,EAC/C,MAAM,EACN,GAAG,CACJ,CAAC;IACF,OAAO;QACL,GAAG,YAAY;QACf,sEAAsE;QACtE,QAAQ,EAAE;YACR,GAAG,YAAY,CAAC,QAAQ;YACxB,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;gBACrB,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC,GAAG,cAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC9E,IAAI,QAAQ,YAAY,UAAU,EAAE,CAAC;oBACnC,iGAAiG;oBACjG,OAAO,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC/B,CAAC;qBAAM,CAAC;oBACN,OAAO,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBAC/C,CAAC;YACH,CAAC;SACF;QACD,UAAU,EAAE;YACV,GAAG,YAAY,CAAC,UAAU;YAC1B,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;gBAC1B,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,GAAG,cAAc,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;gBAClF,IAAI,QAAQ,YAAY,UAAU,EAAE,CAAC;oBACnC,MAAM,IAAI,GAAG,yBAAyB,CAAC,QAAQ,CAAC,CAAC;oBACjD,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;oBACzC,KAAK,GAAG,CAAC,MAAM,CAAC,uBAAuB,EAAE,OAAO,CAAC,CAAC;oBAClD,iGAAiG;oBACjG,OAAO,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC/B,CAAC;qBAAM,CAAC;oBACN,KAAK,GAAG,CAAC,MAAM,CAAC,uBAAuB,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;oBAC3D,OAAO,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACjD,CAAC;YACH,CAAC;SACF;KACF,CAAC;AACJ,CAAC;AAED,SAAS,yBAAyB,CAAC,KAAiB;IAClD,MAAM,EAAC,SAAS,EAAC,GAAG,GAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,MAAM,CAAC;IACxD;;;;;;;;OAQG;IACH,MAAM,MAAM,GAAG,CAAC,GAAG,SAAS,CAAC,WAAW,CAAC;IACzC,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACnE,OAAO,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;AACrC,CAAC"}
1
+ {"version":3,"file":"beacon.js","sourceRoot":"","sources":["../../../src/beacon/server/beacon.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,GAAG,EAAC,MAAM,iBAAiB,CAAC;AACpC,OAAO,EAAgB,UAAU,EAAE,cAAc,EAAE,iBAAiB,EAAC,MAAM,2BAA2B,CAAC;AACvG,OAAO,EAAe,oBAAoB,EAAC,MAAM,6BAA6B,CAAC;AAG/E,MAAM,UAAU,SAAS,CAAC,MAAuB,EAAE,GAAmB;IACpE,MAAM,cAAc,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;IACjD,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IAErC,0DAA0D;IAC1D,MAAM,YAAY,GAAG,oBAAoB,CACvC,EAAC,UAAU,EAAE,cAAc,EAAE,iBAAiB,EAAC,EAC/C,MAAM,EACN,GAAG,CACJ,CAAC;IACF,OAAO;QACL,GAAG,YAAY;QACf,sEAAsE;QACtE,QAAQ,EAAE;YACR,GAAG,YAAY,CAAC,QAAQ;YACxB,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;gBACrB,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC,GAAG,cAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC9E,IAAI,QAAQ,YAAY,UAAU,EAAE,CAAC;oBACnC,qGAAqG;oBACrG,OAAO,QAAQ,CAAC;gBAClB,CAAC;qBAAM,CAAC;oBACN,OAAO,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBAC/C,CAAC;YACH,CAAC;SACF;QACD,UAAU,EAAE;YACV,GAAG,YAAY,CAAC,UAAU;YAC1B,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;gBAC1B,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,GAAG,cAAc,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;gBAClF,IAAI,QAAQ,YAAY,UAAU,EAAE,CAAC;oBACnC,MAAM,IAAI,GAAG,yBAAyB,CAAC,QAAQ,CAAC,CAAC;oBACjD,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;oBACzC,KAAK,GAAG,CAAC,MAAM,CAAC,uBAAuB,EAAE,OAAO,CAAC,CAAC;oBAClD,qGAAqG;oBACrG,OAAO,QAAQ,CAAC;gBAClB,CAAC;qBAAM,CAAC;oBACN,KAAK,GAAG,CAAC,MAAM,CAAC,uBAAuB,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;oBAC3D,OAAO,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACjD,CAAC;YACH,CAAC;SACF;KACF,CAAC;AACJ,CAAC;AAED,SAAS,yBAAyB,CAAC,KAAiB;IAClD,MAAM,EAAC,SAAS,EAAC,GAAG,GAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,MAAM,CAAC;IACxD;;;;;;;;OAQG;IACH,MAAM,MAAM,GAAG,CAAC,GAAG,SAAS,CAAC,WAAW,CAAC;IACzC,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACnE,OAAO,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;AACrC,CAAC"}
@@ -13,8 +13,8 @@ export function getRoutes(config, api) {
13
13
  handler: async (req) => {
14
14
  const response = await api.getState(...reqSerializers.getState.parseReq(req));
15
15
  if (response instanceof Uint8Array) {
16
- // Fastify 3.x.x will automatically add header `Content-Type: application/octet-stream` if Buffer
17
- return Buffer.from(response);
16
+ // Fastify 4.x.x will automatically add header `Content-Type: application/octet-stream` if TypedArray
17
+ return response;
18
18
  }
19
19
  else {
20
20
  return returnTypes.getState.toJson(response);
@@ -29,8 +29,8 @@ export function getRoutes(config, api) {
29
29
  const slot = extractSlotFromStateBytes(response);
30
30
  const version = config.getForkName(slot);
31
31
  void res.header("Eth-Consensus-Version", version);
32
- // Fastify 3.x.x will automatically add header `Content-Type: application/octet-stream` if Buffer
33
- return Buffer.from(response.buffer, response.byteOffset, response.byteLength);
32
+ // Fastify 4.x.x will automatically add header `Content-Type: application/octet-stream` if TypedArray
33
+ return response;
34
34
  }
35
35
  else {
36
36
  void res.header("Eth-Consensus-Version", response.version);
@@ -1 +1 @@
1
- {"version":3,"file":"debug.js","sourceRoot":"","sources":["../../../src/beacon/server/debug.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,GAAG,EAAC,MAAM,iBAAiB,CAAC;AACpC,OAAO,EAAgB,UAAU,EAAE,cAAc,EAAE,iBAAiB,EAAC,MAAM,oBAAoB,CAAC;AAChG,OAAO,EAAe,oBAAoB,EAAC,MAAM,6BAA6B,CAAC;AAG/E,MAAM,UAAU,SAAS,CAAC,MAAuB,EAAE,GAAmB;IACpE,MAAM,cAAc,GAAG,iBAAiB,EAAE,CAAC;IAC3C,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IAErC,MAAM,YAAY,GAAG,oBAAoB,CACvC,EAAC,UAAU,EAAE,cAAc,EAAE,iBAAiB,EAAC,EAC/C,MAAM,EACN,GAAG,CACJ,CAAC;IAEF,OAAO;QACL,GAAG,YAAY;QAEf,sEAAsE;QACtE,QAAQ,EAAE;YACR,GAAG,YAAY,CAAC,QAAQ;YACxB,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;gBACrB,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC,GAAG,cAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC9E,IAAI,QAAQ,YAAY,UAAU,EAAE,CAAC;oBACnC,iGAAiG;oBACjG,OAAO,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC/B,CAAC;qBAAM,CAAC;oBACN,OAAO,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBAC/C,CAAC;YACH,CAAC;SACF;QACD,UAAU,EAAE;YACV,GAAG,YAAY,CAAC,UAAU;YAC1B,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;gBAC1B,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,GAAG,cAAc,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;gBAClF,IAAI,QAAQ,YAAY,UAAU,EAAE,CAAC;oBACnC,MAAM,IAAI,GAAG,yBAAyB,CAAC,QAAQ,CAAC,CAAC;oBACjD,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;oBACzC,KAAK,GAAG,CAAC,MAAM,CAAC,uBAAuB,EAAE,OAAO,CAAC,CAAC;oBAClD,iGAAiG;oBACjG,OAAO,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;gBAChF,CAAC;qBAAM,CAAC;oBACN,KAAK,GAAG,CAAC,MAAM,CAAC,uBAAuB,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;oBAC3D,OAAO,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACjD,CAAC;YACH,CAAC;SACF;KACF,CAAC;AACJ,CAAC;AAED,SAAS,yBAAyB,CAAC,KAAiB;IAClD,MAAM,EAAC,WAAW,EAAE,qBAAqB,EAAC,GAAG,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC;IAC3E;;;;;;OAMG;IACH,MAAM,MAAM,GAAG,WAAW,CAAC,UAAU,GAAG,qBAAqB,CAAC,WAAW,CAAC;IAC1E,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACnE,OAAO,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;AACrC,CAAC"}
1
+ {"version":3,"file":"debug.js","sourceRoot":"","sources":["../../../src/beacon/server/debug.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,GAAG,EAAC,MAAM,iBAAiB,CAAC;AACpC,OAAO,EAAgB,UAAU,EAAE,cAAc,EAAE,iBAAiB,EAAC,MAAM,oBAAoB,CAAC;AAChG,OAAO,EAAe,oBAAoB,EAAC,MAAM,6BAA6B,CAAC;AAG/E,MAAM,UAAU,SAAS,CAAC,MAAuB,EAAE,GAAmB;IACpE,MAAM,cAAc,GAAG,iBAAiB,EAAE,CAAC;IAC3C,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IAErC,MAAM,YAAY,GAAG,oBAAoB,CACvC,EAAC,UAAU,EAAE,cAAc,EAAE,iBAAiB,EAAC,EAC/C,MAAM,EACN,GAAG,CACJ,CAAC;IAEF,OAAO;QACL,GAAG,YAAY;QAEf,sEAAsE;QACtE,QAAQ,EAAE;YACR,GAAG,YAAY,CAAC,QAAQ;YACxB,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;gBACrB,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC,GAAG,cAAc,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC9E,IAAI,QAAQ,YAAY,UAAU,EAAE,CAAC;oBACnC,qGAAqG;oBACrG,OAAO,QAAQ,CAAC;gBAClB,CAAC;qBAAM,CAAC;oBACN,OAAO,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBAC/C,CAAC;YACH,CAAC;SACF;QACD,UAAU,EAAE;YACV,GAAG,YAAY,CAAC,UAAU;YAC1B,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;gBAC1B,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,GAAG,cAAc,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;gBAClF,IAAI,QAAQ,YAAY,UAAU,EAAE,CAAC;oBACnC,MAAM,IAAI,GAAG,yBAAyB,CAAC,QAAQ,CAAC,CAAC;oBACjD,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;oBACzC,KAAK,GAAG,CAAC,MAAM,CAAC,uBAAuB,EAAE,OAAO,CAAC,CAAC;oBAClD,qGAAqG;oBACrG,OAAO,QAAQ,CAAC;gBAClB,CAAC;qBAAM,CAAC;oBACN,KAAK,GAAG,CAAC,MAAM,CAAC,uBAAuB,EAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;oBAC3D,OAAO,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACjD,CAAC;YACH,CAAC;SACF;KACF,CAAC;AACJ,CAAC;AAED,SAAS,yBAAyB,CAAC,KAAiB;IAClD,MAAM,EAAC,WAAW,EAAE,qBAAqB,EAAC,GAAG,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC;IAC3E;;;;;;OAMG;IACH,MAAM,MAAM,GAAG,WAAW,CAAC,UAAU,GAAG,qBAAqB,CAAC,WAAW,CAAC;IAC1E,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACnE,OAAO,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;AACrC,CAAC"}
@@ -15,8 +15,8 @@ export function getRoutes(config, api) {
15
15
  for (let i = 0; i < leaves.length; i++) {
16
16
  response.set(leaves[i], i * 32);
17
17
  }
18
- // Fastify 3.x.x will automatically add header `Content-Type: application/octet-stream` if Buffer
19
- return Buffer.from(response);
18
+ // Fastify 4.x.x will automatically add header `Content-Type: application/octet-stream` if TypedArray
19
+ return response;
20
20
  },
21
21
  },
22
22
  getBlockProof: {
@@ -29,8 +29,8 @@ export function getRoutes(config, api) {
29
29
  for (let i = 0; i < leaves.length; i++) {
30
30
  response.set(leaves[i], i * 32);
31
31
  }
32
- // Fastify 3.x.x will automatically add header `Content-Type: application/octet-stream` if Buffer
33
- return Buffer.from(response);
32
+ // Fastify 4.x.x will automatically add header `Content-Type: application/octet-stream` if TypedArray
33
+ return response;
34
34
  },
35
35
  },
36
36
  };
@@ -1 +1 @@
1
- {"version":3,"file":"proof.js","sourceRoot":"","sources":["../../../src/beacon/server/proof.ts"],"names":[],"mappings":"AAEA,OAAO,EAAgB,UAAU,EAAE,cAAc,EAAE,iBAAiB,EAAC,MAAM,oBAAoB,CAAC;AAChG,OAAO,EAAe,oBAAoB,EAAC,MAAM,6BAA6B,CAAC;AAG/E,MAAM,UAAU,SAAS,CAAC,MAAuB,EAAE,GAAmB;IACpE,MAAM,cAAc,GAAG,iBAAiB,EAAE,CAAC;IAC3C,MAAM,YAAY,GAAG,oBAAoB,CACvC,EAAC,UAAU,EAAE,cAAc,EAAE,iBAAiB,EAAC,EAC/C,MAAM,EACN,GAAG,CACJ,CAAC;IAEF,OAAO;QACL,iCAAiC;QACjC,aAAa,EAAE;YACb,GAAG,YAAY,CAAC,aAAa;YAC7B,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;gBACrB,MAAM,IAAI,GAAG,cAAc,CAAC,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;gBACxD,MAAM,EAAC,IAAI,EAAC,GAAG,MAAM,GAAG,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,CAAC;gBAChD,MAAM,MAAM,GAAI,IAA0B,CAAC,MAAM,CAAC;gBAClD,MAAM,QAAQ,GAAG,IAAI,UAAU,CAAC,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;gBACpD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBACvC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;gBAClC,CAAC;gBACD,iGAAiG;gBACjG,OAAO,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC/B,CAAC;SACF;QACD,aAAa,EAAE;YACb,GAAG,YAAY,CAAC,aAAa;YAC7B,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;gBACrB,MAAM,IAAI,GAAG,cAAc,CAAC,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;gBACxD,MAAM,EAAC,IAAI,EAAC,GAAG,MAAM,GAAG,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,CAAC;gBAChD,MAAM,MAAM,GAAI,IAA0B,CAAC,MAAM,CAAC;gBAClD,MAAM,QAAQ,GAAG,IAAI,UAAU,CAAC,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;gBACpD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBACvC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;gBAClC,CAAC;gBACD,iGAAiG;gBACjG,OAAO,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC/B,CAAC;SACF;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"proof.js","sourceRoot":"","sources":["../../../src/beacon/server/proof.ts"],"names":[],"mappings":"AAEA,OAAO,EAAgB,UAAU,EAAE,cAAc,EAAE,iBAAiB,EAAC,MAAM,oBAAoB,CAAC;AAChG,OAAO,EAAe,oBAAoB,EAAC,MAAM,6BAA6B,CAAC;AAG/E,MAAM,UAAU,SAAS,CAAC,MAAuB,EAAE,GAAmB;IACpE,MAAM,cAAc,GAAG,iBAAiB,EAAE,CAAC;IAC3C,MAAM,YAAY,GAAG,oBAAoB,CACvC,EAAC,UAAU,EAAE,cAAc,EAAE,iBAAiB,EAAC,EAC/C,MAAM,EACN,GAAG,CACJ,CAAC;IAEF,OAAO;QACL,iCAAiC;QACjC,aAAa,EAAE;YACb,GAAG,YAAY,CAAC,aAAa;YAC7B,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;gBACrB,MAAM,IAAI,GAAG,cAAc,CAAC,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;gBACxD,MAAM,EAAC,IAAI,EAAC,GAAG,MAAM,GAAG,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,CAAC;gBAChD,MAAM,MAAM,GAAI,IAA0B,CAAC,MAAM,CAAC;gBAClD,MAAM,QAAQ,GAAG,IAAI,UAAU,CAAC,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;gBACpD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBACvC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;gBAClC,CAAC;gBACD,qGAAqG;gBACrG,OAAO,QAAQ,CAAC;YAClB,CAAC;SACF;QACD,aAAa,EAAE;YACb,GAAG,YAAY,CAAC,aAAa;YAC7B,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;gBACrB,MAAM,IAAI,GAAG,cAAc,CAAC,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;gBACxD,MAAM,EAAC,IAAI,EAAC,GAAG,MAAM,GAAG,CAAC,aAAa,CAAC,GAAG,IAAI,CAAC,CAAC;gBAChD,MAAM,MAAM,GAAI,IAA0B,CAAC,MAAM,CAAC;gBAClD,MAAM,QAAQ,GAAG,IAAI,UAAU,CAAC,EAAE,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;gBACpD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBACvC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;gBAClC,CAAC;gBACD,qGAAqG;gBACrG,OAAO,QAAQ,CAAC;YAClB,CAAC;SACF;KACF,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -11,7 +11,7 @@
11
11
  "bugs": {
12
12
  "url": "https://github.com/ChainSafe/lodestar/issues"
13
13
  },
14
- "version": "1.19.0-dev.fd2fb16380",
14
+ "version": "1.19.0-rc.0",
15
15
  "type": "module",
16
16
  "exports": {
17
17
  ".": {
@@ -69,10 +69,10 @@
69
69
  "dependencies": {
70
70
  "@chainsafe/persistent-merkle-tree": "^0.7.1",
71
71
  "@chainsafe/ssz": "^0.15.1",
72
- "@lodestar/config": "1.19.0-dev.fd2fb16380",
73
- "@lodestar/params": "1.19.0-dev.fd2fb16380",
74
- "@lodestar/types": "1.19.0-dev.fd2fb16380",
75
- "@lodestar/utils": "1.19.0-dev.fd2fb16380",
72
+ "@lodestar/config": "1.19.0-rc.0",
73
+ "@lodestar/params": "1.19.0-rc.0",
74
+ "@lodestar/types": "1.19.0-rc.0",
75
+ "@lodestar/utils": "1.19.0-rc.0",
76
76
  "eventsource": "^2.0.2",
77
77
  "qs": "^6.11.1"
78
78
  },
@@ -80,7 +80,7 @@
80
80
  "@types/eventsource": "^1.1.11",
81
81
  "@types/qs": "^6.9.7",
82
82
  "ajv": "^8.12.0",
83
- "fastify": "^4.26.2"
83
+ "fastify": "^4.27.0"
84
84
  },
85
85
  "keywords": [
86
86
  "ethereum",
@@ -89,5 +89,5 @@
89
89
  "api",
90
90
  "blockchain"
91
91
  ],
92
- "gitHead": "c0f638080c63598d52145148f8a4ca05c9cca3cc"
92
+ "gitHead": "696ad4c02f63b6ea27a77c552ce7b366d75c8ae8"
93
93
  }