@aztec/blob-client 3.0.0-nightly.20251223 → 3.0.0-nightly.20251225

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 (47) hide show
  1. package/dest/archive/blobscan_archive_client.d.ts +1 -2
  2. package/dest/archive/blobscan_archive_client.d.ts.map +1 -1
  3. package/dest/archive/blobscan_archive_client.js +1 -4
  4. package/dest/blobstore/blob_store_test_suite.d.ts +1 -1
  5. package/dest/blobstore/blob_store_test_suite.d.ts.map +1 -1
  6. package/dest/blobstore/blob_store_test_suite.js +18 -49
  7. package/dest/blobstore/interface.d.ts +4 -4
  8. package/dest/blobstore/interface.d.ts.map +1 -1
  9. package/dest/blobstore/memory_blob_store.d.ts +4 -4
  10. package/dest/blobstore/memory_blob_store.d.ts.map +1 -1
  11. package/dest/blobstore/memory_blob_store.js +3 -3
  12. package/dest/client/http.d.ts +7 -7
  13. package/dest/client/http.d.ts.map +1 -1
  14. package/dest/client/http.js +21 -24
  15. package/dest/client/interface.d.ts +3 -4
  16. package/dest/client/interface.d.ts.map +1 -1
  17. package/dest/client/local.d.ts +2 -3
  18. package/dest/client/local.d.ts.map +1 -1
  19. package/dest/client/local.js +2 -4
  20. package/dest/client/tests.d.ts +1 -1
  21. package/dest/client/tests.d.ts.map +1 -1
  22. package/dest/client/tests.js +2 -16
  23. package/dest/filestore/filestore_blob_client.d.ts +3 -4
  24. package/dest/filestore/filestore_blob_client.d.ts.map +1 -1
  25. package/dest/filestore/filestore_blob_client.js +4 -12
  26. package/package.json +7 -8
  27. package/src/archive/blobscan_archive_client.ts +8 -10
  28. package/src/blobstore/blob_store_test_suite.ts +15 -42
  29. package/src/blobstore/interface.ts +3 -3
  30. package/src/blobstore/memory_blob_store.ts +6 -6
  31. package/src/client/http.ts +32 -36
  32. package/src/client/interface.ts +2 -9
  33. package/src/client/local.ts +2 -9
  34. package/src/client/tests.ts +2 -18
  35. package/src/filestore/filestore_blob_client.ts +5 -13
  36. package/dest/types/api.d.ts +0 -65
  37. package/dest/types/api.d.ts.map +0 -1
  38. package/dest/types/api.js +0 -22
  39. package/dest/types/blob_with_index.d.ts +0 -25
  40. package/dest/types/blob_with_index.d.ts.map +0 -1
  41. package/dest/types/blob_with_index.js +0 -43
  42. package/dest/types/index.d.ts +0 -2
  43. package/dest/types/index.d.ts.map +0 -1
  44. package/dest/types/index.js +0 -1
  45. package/src/types/api.ts +0 -50
  46. package/src/types/blob_with_index.ts +0 -48
  47. package/src/types/index.ts +0 -1
@@ -1,65 +0,0 @@
1
- import { z } from 'zod';
2
- export interface PostBlobSidecarRequest {
3
- blobs: Array<{
4
- index: number;
5
- blob: {
6
- type: string;
7
- data: string;
8
- };
9
- }>;
10
- }
11
- export declare const blockRootSchema: z.ZodEffects<z.ZodString, `0x${string}`, string>;
12
- export declare const slotSchema: z.ZodNumber;
13
- export declare const indicesSchema: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, number[], string>>;
14
- /**
15
- * Block identifier. The spec allows for <hex encoded blockRoot with 0x prefix>, <slot>, "head", "genesis", "finalized", but we only support the block root.
16
- * See https://ethereum.github.io/beacon-APIs/?urls.primaryName=dev#/Beacon/getBlobSidecars.
17
- */
18
- export declare const blockIdSchema: z.ZodEffects<z.ZodString, `0x${string}`, string>;
19
- export declare const postBlobSidecarSchema: z.ZodObject<{
20
- block_id: z.ZodEffects<z.ZodString, `0x${string}`, string>;
21
- blobs: z.ZodArray<z.ZodObject<{
22
- index: z.ZodNumber;
23
- blob: z.ZodObject<{
24
- type: z.ZodString;
25
- data: z.ZodString;
26
- }, "strip", z.ZodTypeAny, {
27
- type: string;
28
- data: string;
29
- }, {
30
- type: string;
31
- data: string;
32
- }>;
33
- }, "strip", z.ZodTypeAny, {
34
- index: number;
35
- blob: {
36
- type: string;
37
- data: string;
38
- };
39
- }, {
40
- index: number;
41
- blob: {
42
- type: string;
43
- data: string;
44
- };
45
- }>, "many">;
46
- }, "strip", z.ZodTypeAny, {
47
- block_id: `0x${string}`;
48
- blobs: {
49
- index: number;
50
- blob: {
51
- type: string;
52
- data: string;
53
- };
54
- }[];
55
- }, {
56
- block_id: string;
57
- blobs: {
58
- index: number;
59
- blob: {
60
- type: string;
61
- data: string;
62
- };
63
- }[];
64
- }>;
65
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBpLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdHlwZXMvYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEIsTUFBTSxXQUFXLHNCQUFzQjtJQUNyQyxLQUFLLEVBQUUsS0FBSyxDQUFDO1FBQ1gsS0FBSyxFQUFFLE1BQU0sQ0FBQztRQUNkLElBQUksRUFBRTtZQUNKLElBQUksRUFBRSxNQUFNLENBQUM7WUFDYixJQUFJLEVBQUUsTUFBTSxDQUFDO1NBQ2QsQ0FBQztLQUNILENBQUMsQ0FBQztDQUNKO0FBRUQsZUFBTyxNQUFNLGVBQWUsa0RBSUcsQ0FBQztBQUVoQyxlQUFPLE1BQU0sVUFBVSxhQUE4QixDQUFDO0FBR3RELGVBQU8sTUFBTSxhQUFhLDBGQU96QixDQUFDO0FBRUY7OztHQUdHO0FBQ0gsZUFBTyxNQUFNLGFBQWEsa0RBQWtCLENBQUM7QUFFN0MsZUFBTyxNQUFNLHFCQUFxQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBWWhDLENBQUMifQ==
@@ -1 +0,0 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/types/api.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,KAAK,CAAC;QACX,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE;YACJ,IAAI,EAAE,MAAM,CAAC;YACb,IAAI,EAAE,MAAM,CAAC;SACd,CAAC;KACH,CAAC,CAAC;CACJ;AAED,eAAO,MAAM,eAAe,kDAIG,CAAC;AAEhC,eAAO,MAAM,UAAU,aAA8B,CAAC;AAGtD,eAAO,MAAM,aAAa,0FAOzB,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,aAAa,kDAAkB,CAAC;AAE7C,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAYhC,CAAC"}
package/dest/types/api.js DELETED
@@ -1,22 +0,0 @@
1
- import { z } from 'zod';
2
- export const blockRootSchema = z.string().regex(/^0x[0-9a-fA-F]{0,64}$/).max(66).transform((str)=>str);
3
- export const slotSchema = z.number().int().positive();
4
- // Define the Zod schema for an array of numbers
5
- export const indicesSchema = z.optional(z.string().refine((str)=>str.split(',').every((item)=>!isNaN(Number(item))), {
6
- message: 'All items in the query must be valid numbers.'
7
- }).transform((str)=>str.split(',').map(Number))); // Convert to an array of numbers
8
- /**
9
- * Block identifier. The spec allows for <hex encoded blockRoot with 0x prefix>, <slot>, "head", "genesis", "finalized", but we only support the block root.
10
- * See https://ethereum.github.io/beacon-APIs/?urls.primaryName=dev#/Beacon/getBlobSidecars.
11
- */ export const blockIdSchema = blockRootSchema;
12
- export const postBlobSidecarSchema = z.object({
13
- // eslint-disable-next-line camelcase
14
- block_id: blockIdSchema,
15
- blobs: z.array(z.object({
16
- index: z.number().int().nonnegative(),
17
- blob: z.object({
18
- type: z.string(),
19
- data: z.string()
20
- })
21
- }))
22
- });
@@ -1,25 +0,0 @@
1
- import { Blob, type BlobJson } from '@aztec/blob-lib';
2
- import { BufferReader } from '@aztec/foundation/serialize';
3
- /** Serialized an array of blobs with their indexes to be stored at a given block id */
4
- export declare class BlobsWithIndexes {
5
- blobs: BlobWithIndex[];
6
- constructor(blobs: BlobWithIndex[]);
7
- toBuffer(): Buffer;
8
- static fromBuffer(buffer: Buffer | BufferReader): BlobsWithIndexes;
9
- getBlobsFromIndices(indices: number[]): BlobWithIndex[];
10
- }
11
- /** We store blobs alongside their index in the block */
12
- export declare class BlobWithIndex {
13
- blob: Blob;
14
- index: number;
15
- constructor(
16
- /** The blob */
17
- blob: Blob,
18
- /** The index of the blob in the block */
19
- index: number);
20
- toBuffer(): Buffer;
21
- static fromBuffer(buffer: Buffer | BufferReader): BlobWithIndex;
22
- static fromJson(json: BlobJson): BlobWithIndex;
23
- toJSON(): BlobJson;
24
- }
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvYl93aXRoX2luZGV4LmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdHlwZXMvYmxvYl93aXRoX2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQUUsS0FBSyxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsWUFBWSxFQUFxQixNQUFNLDZCQUE2QixDQUFDO0FBRTlFLHVGQUF1RjtBQUN2RixxQkFBYSxnQkFBZ0I7SUFDUixLQUFLLEVBQUUsYUFBYSxFQUFFO0lBQXpDLFlBQW1CLEtBQUssRUFBRSxhQUFhLEVBQUUsRUFBSTtJQUV0QyxRQUFRLElBQUksTUFBTSxDQUV4QjtJQUVELE9BQWMsVUFBVSxDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsWUFBWSxHQUFHLGdCQUFnQixDQUd4RTtJQUVNLG1CQUFtQixDQUFDLE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxhQUFhLEVBQUUsQ0FFN0Q7Q0FDRjtBQUVELHdEQUF3RDtBQUN4RCxxQkFBYSxhQUFhO0lBR2YsSUFBSSxFQUFFLElBQUk7SUFFVixLQUFLLEVBQUUsTUFBTTtJQUp0QjtJQUNFLGVBQWU7SUFDUixJQUFJLEVBQUUsSUFBSTtJQUNqQix5Q0FBeUM7SUFDbEMsS0FBSyxFQUFFLE1BQU0sRUFDbEI7SUFFRyxRQUFRLElBQUksTUFBTSxDQUV4QjtJQUVELE9BQWMsVUFBVSxDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsWUFBWSxHQUFHLGFBQWEsQ0FHckU7SUFFRCxPQUFjLFFBQVEsQ0FBQyxJQUFJLEVBQUUsUUFBUSxHQUFHLGFBQWEsQ0FFcEQ7SUFHTSxNQUFNLElBQUksUUFBUSxDQUV4QjtDQUNGIn0=
@@ -1 +0,0 @@
1
- {"version":3,"file":"blob_with_index.d.ts","sourceRoot":"","sources":["../../src/types/blob_with_index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,KAAK,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAqB,MAAM,6BAA6B,CAAC;AAE9E,uFAAuF;AACvF,qBAAa,gBAAgB;IACR,KAAK,EAAE,aAAa,EAAE;IAAzC,YAAmB,KAAK,EAAE,aAAa,EAAE,EAAI;IAEtC,QAAQ,IAAI,MAAM,CAExB;IAED,OAAc,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,gBAAgB,CAGxE;IAEM,mBAAmB,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,aAAa,EAAE,CAE7D;CACF;AAED,wDAAwD;AACxD,qBAAa,aAAa;IAGf,IAAI,EAAE,IAAI;IAEV,KAAK,EAAE,MAAM;IAJtB;IACE,eAAe;IACR,IAAI,EAAE,IAAI;IACjB,yCAAyC;IAClC,KAAK,EAAE,MAAM,EAClB;IAEG,QAAQ,IAAI,MAAM,CAExB;IAED,OAAc,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,aAAa,CAGrE;IAED,OAAc,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,aAAa,CAEpD;IAGM,MAAM,IAAI,QAAQ,CAExB;CACF"}
@@ -1,43 +0,0 @@
1
- import { Blob } from '@aztec/blob-lib';
2
- import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
3
- /** Serialized an array of blobs with their indexes to be stored at a given block id */ export class BlobsWithIndexes {
4
- blobs;
5
- constructor(blobs){
6
- this.blobs = blobs;
7
- }
8
- toBuffer() {
9
- return serializeToBuffer(this.blobs.length, this.blobs);
10
- }
11
- static fromBuffer(buffer) {
12
- const reader = BufferReader.asReader(buffer);
13
- return new BlobsWithIndexes(reader.readArray(reader.readNumber(), BlobWithIndex));
14
- }
15
- getBlobsFromIndices(indices) {
16
- return this.blobs.filter((_, index)=>indices.includes(index));
17
- }
18
- }
19
- /** We store blobs alongside their index in the block */ export class BlobWithIndex {
20
- blob;
21
- index;
22
- constructor(/** The blob */ blob, /** The index of the blob in the block */ index){
23
- this.blob = blob;
24
- this.index = index;
25
- }
26
- toBuffer() {
27
- return serializeToBuffer([
28
- this.blob,
29
- this.index
30
- ]);
31
- }
32
- static fromBuffer(buffer) {
33
- const reader = BufferReader.asReader(buffer);
34
- return new BlobWithIndex(reader.readObject(Blob), reader.readNumber());
35
- }
36
- static fromJson(json) {
37
- return new BlobWithIndex(Blob.fromJson(json), parseInt(json.index));
38
- }
39
- // Follows the structure the beacon node api expects
40
- toJSON() {
41
- return this.blob.toJson(this.index);
42
- }
43
- }
@@ -1,2 +0,0 @@
1
- export * from './blob_with_index.js';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90eXBlcy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLHNCQUFzQixDQUFDIn0=
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC"}
@@ -1 +0,0 @@
1
- export * from './blob_with_index.js';
package/src/types/api.ts DELETED
@@ -1,50 +0,0 @@
1
- import type { Hex } from 'viem';
2
- import { z } from 'zod';
3
-
4
- export interface PostBlobSidecarRequest {
5
- blobs: Array<{
6
- index: number;
7
- blob: {
8
- type: string;
9
- data: string;
10
- };
11
- }>;
12
- }
13
-
14
- export const blockRootSchema = z
15
- .string()
16
- .regex(/^0x[0-9a-fA-F]{0,64}$/)
17
- .max(66)
18
- .transform(str => str as Hex);
19
-
20
- export const slotSchema = z.number().int().positive();
21
-
22
- // Define the Zod schema for an array of numbers
23
- export const indicesSchema = z.optional(
24
- z
25
- .string()
26
- .refine(str => str.split(',').every(item => !isNaN(Number(item))), {
27
- message: 'All items in the query must be valid numbers.',
28
- })
29
- .transform(str => str.split(',').map(Number)),
30
- ); // Convert to an array of numbers
31
-
32
- /**
33
- * Block identifier. The spec allows for <hex encoded blockRoot with 0x prefix>, <slot>, "head", "genesis", "finalized", but we only support the block root.
34
- * See https://ethereum.github.io/beacon-APIs/?urls.primaryName=dev#/Beacon/getBlobSidecars.
35
- */
36
- export const blockIdSchema = blockRootSchema;
37
-
38
- export const postBlobSidecarSchema = z.object({
39
- // eslint-disable-next-line camelcase
40
- block_id: blockIdSchema,
41
- blobs: z.array(
42
- z.object({
43
- index: z.number().int().nonnegative(),
44
- blob: z.object({
45
- type: z.string(),
46
- data: z.string(),
47
- }),
48
- }),
49
- ),
50
- });
@@ -1,48 +0,0 @@
1
- import { Blob, type BlobJson } from '@aztec/blob-lib';
2
- import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
3
-
4
- /** Serialized an array of blobs with their indexes to be stored at a given block id */
5
- export class BlobsWithIndexes {
6
- constructor(public blobs: BlobWithIndex[]) {}
7
-
8
- public toBuffer(): Buffer {
9
- return serializeToBuffer(this.blobs.length, this.blobs);
10
- }
11
-
12
- public static fromBuffer(buffer: Buffer | BufferReader): BlobsWithIndexes {
13
- const reader = BufferReader.asReader(buffer);
14
- return new BlobsWithIndexes(reader.readArray(reader.readNumber(), BlobWithIndex));
15
- }
16
-
17
- public getBlobsFromIndices(indices: number[]): BlobWithIndex[] {
18
- return this.blobs.filter((_, index) => indices.includes(index));
19
- }
20
- }
21
-
22
- /** We store blobs alongside their index in the block */
23
- export class BlobWithIndex {
24
- constructor(
25
- /** The blob */
26
- public blob: Blob,
27
- /** The index of the blob in the block */
28
- public index: number,
29
- ) {}
30
-
31
- public toBuffer(): Buffer {
32
- return serializeToBuffer([this.blob, this.index]);
33
- }
34
-
35
- public static fromBuffer(buffer: Buffer | BufferReader): BlobWithIndex {
36
- const reader = BufferReader.asReader(buffer);
37
- return new BlobWithIndex(reader.readObject(Blob), reader.readNumber());
38
- }
39
-
40
- public static fromJson(json: BlobJson): BlobWithIndex {
41
- return new BlobWithIndex(Blob.fromJson(json), parseInt(json.index));
42
- }
43
-
44
- // Follows the structure the beacon node api expects
45
- public toJSON(): BlobJson {
46
- return this.blob.toJson(this.index);
47
- }
48
- }
@@ -1 +0,0 @@
1
- export * from './blob_with_index.js';