@aztec/blob-client 0.0.1-commit.9ef841308 → 0.0.1-commit.a5db02d

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.
@@ -2,7 +2,7 @@ import type { BlobJson } from '@aztec/blob-lib/types';
2
2
  import { type TelemetryClient } from '@aztec/telemetry-client';
3
3
  import { z } from 'zod';
4
4
  import type { BlobArchiveClient } from './interface.js';
5
- export declare const BlobscanBlockResponseSchema: z.ZodEffects<z.ZodObject<{
5
+ export declare const BlobscanBlockResponseSchema: z.ZodPipe<z.ZodObject<{
6
6
  hash: z.ZodString;
7
7
  slot: z.ZodNumber;
8
8
  number: z.ZodNumber;
@@ -15,73 +15,9 @@ export declare const BlobscanBlockResponseSchema: z.ZodEffects<z.ZodObject<{
15
15
  proof: z.ZodString;
16
16
  size: z.ZodNumber;
17
17
  index: z.ZodOptional<z.ZodNumber>;
18
- }, "strip", z.ZodTypeAny, {
19
- versionedHash: string;
20
- data: string;
21
- commitment: string;
22
- proof: string;
23
- size: number;
24
- index?: number | undefined;
25
- }, {
26
- versionedHash: string;
27
- data: string;
28
- commitment: string;
29
- proof: string;
30
- size: number;
31
- index?: number | undefined;
32
- }>, "many">;
33
- }, "strip", z.ZodTypeAny, {
34
- hash: string;
35
- blobs: {
36
- versionedHash: string;
37
- data: string;
38
- commitment: string;
39
- proof: string;
40
- size: number;
41
- index?: number | undefined;
42
- }[];
43
- }, {
44
- hash: string;
45
- blobs: {
46
- versionedHash: string;
47
- data: string;
48
- commitment: string;
49
- proof: string;
50
- size: number;
51
- index?: number | undefined;
52
- }[];
53
- }>, "many">;
54
- }, "strip", z.ZodTypeAny, {
55
- hash: string;
56
- slot: number;
57
- number: number;
58
- transactions: {
59
- hash: string;
60
- blobs: {
61
- versionedHash: string;
62
- data: string;
63
- commitment: string;
64
- proof: string;
65
- size: number;
66
- index?: number | undefined;
67
- }[];
68
- }[];
69
- }, {
70
- hash: string;
71
- slot: number;
72
- number: number;
73
- transactions: {
74
- hash: string;
75
- blobs: {
76
- versionedHash: string;
77
- data: string;
78
- commitment: string;
79
- proof: string;
80
- size: number;
81
- index?: number | undefined;
82
- }[];
83
- }[];
84
- }>, {
18
+ }, z.core.$strip>>;
19
+ }, z.core.$strip>>;
20
+ }, z.core.$strip>, z.ZodTransform<{
85
21
  blob: string;
86
22
  kzg_commitment: string;
87
23
  }[], {
@@ -99,34 +35,14 @@ export declare const BlobscanBlockResponseSchema: z.ZodEffects<z.ZodObject<{
99
35
  index?: number | undefined;
100
36
  }[];
101
37
  }[];
102
- }>;
38
+ }>>;
103
39
  export declare const BlobscanBlocksResponseSchema: z.ZodObject<{
104
40
  blocks: z.ZodArray<z.ZodObject<{
105
41
  hash: z.ZodString;
106
42
  slot: z.ZodNumber;
107
43
  number: z.ZodNumber;
108
- }, "strip", z.ZodTypeAny, {
109
- hash: string;
110
- slot: number;
111
- number: number;
112
- }, {
113
- hash: string;
114
- slot: number;
115
- number: number;
116
- }>, "many">;
117
- }, "strip", z.ZodTypeAny, {
118
- blocks: {
119
- hash: string;
120
- slot: number;
121
- number: number;
122
- }[];
123
- }, {
124
- blocks: {
125
- hash: string;
126
- slot: number;
127
- number: number;
128
- }[];
129
- }>;
44
+ }, z.core.$strip>>;
45
+ }, z.core.$strip>;
130
46
  export declare class BlobscanArchiveClient implements BlobArchiveClient {
131
47
  private readonly logger;
132
48
  private readonly fetchOpts;
@@ -143,4 +59,4 @@ export declare class BlobscanArchiveClient implements BlobArchiveClient {
143
59
  getBlobsFromBlock(blockId: string): Promise<BlobJson[] | undefined>;
144
60
  getBlobData(id: string): Promise<Buffer | undefined>;
145
61
  }
146
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvYnNjYW5fYXJjaGl2ZV9jbGllbnQuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hcmNoaXZlL2Jsb2JzY2FuX2FyY2hpdmVfY2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBSXRELE9BQU8sRUFBRSxLQUFLLGVBQWUsRUFBc0IsTUFBTSx5QkFBeUIsQ0FBQztBQUVuRixPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sS0FBSyxDQUFDO0FBR3hCLE9BQU8sS0FBSyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEQsZUFBTyxNQUFNLDJCQUEyQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQStCdkMsQ0FBQztBQUdGLGVBQU8sTUFBTSw0QkFBNEI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBUXZDLENBQUM7QUFFSCxxQkFBYSxxQkFBc0IsWUFBVyxpQkFBaUI7SUFDN0QsT0FBTyxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQXVEO0lBQzlFLE9BQU8sQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUErQztJQUN6RSxPQUFPLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FTcEI7SUFFRixPQUFPLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBTTtJQUU5QixPQUFPLENBQUMsZUFBZSxDQUFtQztJQUUxRCxZQUFZLE9BQU8sRUFBRSxNQUFNLEVBQUUsU0FBUyxHQUFFLGVBQXNDLEVBVTdFO0lBRVksY0FBYyxJQUFJLE9BQU8sQ0FBQztRQUFFLElBQUksRUFBRSxNQUFNLENBQUM7UUFBQyxNQUFNLEVBQUUsTUFBTSxDQUFDO1FBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQTtLQUFFLENBQUMsQ0EyQnJGO0lBRU0sVUFBVSxJQUFJLE1BQU0sQ0FFMUI7SUFFWSxpQkFBaUIsQ0FBQyxPQUFPLEVBQUUsTUFBTSxHQUFHLE9BQU8sQ0FBQyxRQUFRLEVBQUUsR0FBRyxTQUFTLENBQUMsQ0E0Qi9FO0lBRVksV0FBVyxDQUFDLEVBQUUsRUFBRSxNQUFNLEdBQUcsT0FBTyxDQUFDLE1BQU0sR0FBRyxTQUFTLENBQUMsQ0EwQmhFO0NBQ0YifQ==
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvYnNjYW5fYXJjaGl2ZV9jbGllbnQuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hcmNoaXZlL2Jsb2JzY2FuX2FyY2hpdmVfY2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBSXRELE9BQU8sRUFBRSxLQUFLLGVBQWUsRUFBc0IsTUFBTSx5QkFBeUIsQ0FBQztBQUVuRixPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sS0FBSyxDQUFDO0FBR3hCLE9BQU8sS0FBSyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEQsZUFBTyxNQUFNLDJCQUEyQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBK0J2QyxDQUFDO0FBR0YsZUFBTyxNQUFNLDRCQUE0Qjs7Ozs7O2lCQVF2QyxDQUFDO0FBRUgscUJBQWEscUJBQXNCLFlBQVcsaUJBQWlCO0lBQzdELE9BQU8sQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUF1RDtJQUM5RSxPQUFPLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBK0M7SUFDekUsT0FBTyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBU3BCO0lBRUYsT0FBTyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQU07SUFFOUIsT0FBTyxDQUFDLGVBQWUsQ0FBbUM7SUFFMUQsWUFBWSxPQUFPLEVBQUUsTUFBTSxFQUFFLFNBQVMsR0FBRSxlQUFzQyxFQVU3RTtJQUVZLGNBQWMsSUFBSSxPQUFPLENBQUM7UUFBRSxJQUFJLEVBQUUsTUFBTSxDQUFDO1FBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQztRQUFDLElBQUksRUFBRSxNQUFNLENBQUE7S0FBRSxDQUFDLENBMkJyRjtJQUVNLFVBQVUsSUFBSSxNQUFNLENBRTFCO0lBRVksaUJBQWlCLENBQUMsT0FBTyxFQUFFLE1BQU0sR0FBRyxPQUFPLENBQUMsUUFBUSxFQUFFLEdBQUcsU0FBUyxDQUFDLENBNEIvRTtJQUVZLFdBQVcsQ0FBQyxFQUFFLEVBQUUsTUFBTSxHQUFHLE9BQU8sQ0FBQyxNQUFNLEdBQUcsU0FBUyxDQUFDLENBMEJoRTtDQUNGIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"blobscan_archive_client.d.ts","sourceRoot":"","sources":["../../src/archive/blobscan_archive_client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAItD,OAAO,EAAE,KAAK,eAAe,EAAsB,MAAM,yBAAyB,CAAC;AAEnF,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAExD,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+BvC,CAAC;AAGF,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;EAQvC,CAAC;AAEH,qBAAa,qBAAsB,YAAW,iBAAiB;IAC7D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAuD;IAC9E,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA+C;IACzE,OAAO,CAAC,QAAQ,CAAC,KAAK,CASpB;IAEF,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAM;IAE9B,OAAO,CAAC,eAAe,CAAmC;IAE1D,YAAY,OAAO,EAAE,MAAM,EAAE,SAAS,GAAE,eAAsC,EAU7E;IAEY,cAAc,IAAI,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CA2BrF;IAEM,UAAU,IAAI,MAAM,CAE1B;IAEY,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,GAAG,SAAS,CAAC,CA4B/E;IAEY,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CA0BhE;CACF"}
1
+ {"version":3,"file":"blobscan_archive_client.d.ts","sourceRoot":"","sources":["../../src/archive/blobscan_archive_client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAItD,OAAO,EAAE,KAAK,eAAe,EAAsB,MAAM,yBAAyB,CAAC;AAEnF,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAExD,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BvC,CAAC;AAGF,eAAO,MAAM,4BAA4B;;;;;;iBAQvC,CAAC;AAEH,qBAAa,qBAAsB,YAAW,iBAAiB;IAC7D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAuD;IAC9E,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA+C;IACzE,OAAO,CAAC,QAAQ,CAAC,KAAK,CASpB;IAEF,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAM;IAE9B,OAAO,CAAC,eAAe,CAAmC;IAE1D,YAAY,OAAO,EAAE,MAAM,EAAE,SAAS,GAAE,eAAsC,EAU7E;IAEY,cAAc,IAAI,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CA2BrF;IAEM,UAAU,IAAI,MAAM,CAE1B;IAEY,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,GAAG,SAAS,CAAC,CA4B/E;IAEY,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CA0BhE;CACF"}
@@ -24,7 +24,7 @@ export const blobClientConfigMapping = {
24
24
  blobSinkMapSizeKb: {
25
25
  env: 'BLOB_SINK_MAP_SIZE_KB',
26
26
  description: 'The maximum possible size of the blob sink DB in KB. Overwrites the general dataStoreMapSizeKb.',
27
- parseEnv: (val)=>val ? +val : undefined
27
+ ...optionalNumberConfigHelper()
28
28
  },
29
29
  blobAllowEmptySources: {
30
30
  env: 'BLOB_ALLOW_EMPTY_SOURCES',
@@ -43,7 +43,7 @@ export const blobClientConfigMapping = {
43
43
  blobHealthcheckUploadIntervalMinutes: {
44
44
  env: 'BLOB_HEALTHCHECK_UPLOAD_INTERVAL_MINUTES',
45
45
  description: 'Interval in minutes for uploading healthcheck file to file store (default: 60 = 1 hour)',
46
- parseEnv: (val)=>val ? +val : undefined
46
+ ...optionalNumberConfigHelper()
47
47
  },
48
48
  l1HttpTimeoutMS: {
49
49
  env: 'ETHEREUM_HTTP_TIMEOUT_MS',
@@ -17,10 +17,8 @@ export declare function createBlobClient(config?: BlobClientConfig, deps?: Creat
17
17
  export interface BlobClientWithFileStoresConfig extends BlobClientConfig {
18
18
  l1ChainId: number;
19
19
  rollupVersion: number;
20
- l1Contracts: {
21
- rollupAddress: {
22
- toString(): string;
23
- };
20
+ rollupAddress: {
21
+ toString(): string;
24
22
  };
25
23
  }
26
24
  /**
@@ -37,4 +35,4 @@ export interface BlobClientWithFileStoresConfig extends BlobClientConfig {
37
35
  * @returns A BlobClientInterface configured with file store support, already started
38
36
  */
39
37
  export declare function createBlobClientWithFileStores(config: BlobClientWithFileStoresConfig, logger?: Logger): Promise<BlobClientInterface>;
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFjdG9yeS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NsaWVudC9mYWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLE1BQU0sRUFBZ0IsTUFBTSx1QkFBdUIsQ0FBQztBQVFsRSxPQUFPLEtBQUssRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQ2pGLE9BQU8sRUFBRSxLQUFLLGdCQUFnQixFQUF3QixNQUFNLGFBQWEsQ0FBQztBQUUxRSxPQUFPLEtBQUssRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRzFELE1BQU0sV0FBVyxvQkFBb0I7SUFDbkMsTUFBTSxDQUFDLEVBQUUsTUFBTSxDQUFDO0lBQ2hCLDBDQUEwQztJQUMxQyxnQkFBZ0IsQ0FBQyxFQUFFLG1CQUFtQixFQUFFLENBQUM7SUFDekMsMkNBQTJDO0lBQzNDLHFCQUFxQixDQUFDLEVBQUUsbUJBQW1CLENBQUM7Q0FDN0M7QUFFRCx3QkFBZ0IsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLEVBQUUsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLEVBQUUsb0JBQW9CLEdBQUcsbUJBQW1CLENBbUI1RztBQUVEOzs7R0FHRztBQUNILE1BQU0sV0FBVyw4QkFBK0IsU0FBUSxnQkFBZ0I7SUFDdEUsU0FBUyxFQUFFLE1BQU0sQ0FBQztJQUNsQixhQUFhLEVBQUUsTUFBTSxDQUFDO0lBQ3RCLFdBQVcsRUFBRTtRQUFFLGFBQWEsRUFBRTtZQUFFLFFBQVEsSUFBSSxNQUFNLENBQUE7U0FBRSxDQUFBO0tBQUUsQ0FBQztDQUN4RDtBQUVEOzs7Ozs7Ozs7Ozs7R0FZRztBQUNILHdCQUFzQiw4QkFBOEIsQ0FDbEQsTUFBTSxFQUFFLDhCQUE4QixFQUN0QyxNQUFNLENBQUMsRUFBRSxNQUFNLEdBQ2QsT0FBTyxDQUFDLG1CQUFtQixDQUFDLENBOEI5QiJ9
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmFjdG9yeS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NsaWVudC9mYWN0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLE1BQU0sRUFBZ0IsTUFBTSx1QkFBdUIsQ0FBQztBQVFsRSxPQUFPLEtBQUssRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQ2pGLE9BQU8sRUFBRSxLQUFLLGdCQUFnQixFQUF3QixNQUFNLGFBQWEsQ0FBQztBQUUxRSxPQUFPLEtBQUssRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRzFELE1BQU0sV0FBVyxvQkFBb0I7SUFDbkMsTUFBTSxDQUFDLEVBQUUsTUFBTSxDQUFDO0lBQ2hCLDBDQUEwQztJQUMxQyxnQkFBZ0IsQ0FBQyxFQUFFLG1CQUFtQixFQUFFLENBQUM7SUFDekMsMkNBQTJDO0lBQzNDLHFCQUFxQixDQUFDLEVBQUUsbUJBQW1CLENBQUM7Q0FDN0M7QUFFRCx3QkFBZ0IsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLEVBQUUsZ0JBQWdCLEVBQUUsSUFBSSxDQUFDLEVBQUUsb0JBQW9CLEdBQUcsbUJBQW1CLENBbUI1RztBQUVEOzs7R0FHRztBQUNILE1BQU0sV0FBVyw4QkFBK0IsU0FBUSxnQkFBZ0I7SUFDdEUsU0FBUyxFQUFFLE1BQU0sQ0FBQztJQUNsQixhQUFhLEVBQUUsTUFBTSxDQUFDO0lBQ3RCLGFBQWEsRUFBRTtRQUFFLFFBQVEsSUFBSSxNQUFNLENBQUE7S0FBRSxDQUFDO0NBQ3ZDO0FBRUQ7Ozs7Ozs7Ozs7OztHQVlHO0FBQ0gsd0JBQXNCLDhCQUE4QixDQUNsRCxNQUFNLEVBQUUsOEJBQThCLEVBQ3RDLE1BQU0sQ0FBQyxFQUFFLE1BQU0sR0FDZCxPQUFPLENBQUMsbUJBQW1CLENBQUMsQ0E4QjlCIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../src/client/factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAgB,MAAM,uBAAuB,CAAC;AAQlE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AACjF,OAAO,EAAE,KAAK,gBAAgB,EAAwB,MAAM,aAAa,CAAC;AAE1E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAG1D,MAAM,WAAW,oBAAoB;IACnC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,0CAA0C;IAC1C,gBAAgB,CAAC,EAAE,mBAAmB,EAAE,CAAC;IACzC,2CAA2C;IAC3C,qBAAqB,CAAC,EAAE,mBAAmB,CAAC;CAC7C;AAED,wBAAgB,gBAAgB,CAAC,MAAM,CAAC,EAAE,gBAAgB,EAAE,IAAI,CAAC,EAAE,oBAAoB,GAAG,mBAAmB,CAmB5G;AAED;;;GAGG;AACH,MAAM,WAAW,8BAA+B,SAAQ,gBAAgB;IACtE,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE;QAAE,aAAa,EAAE;YAAE,QAAQ,IAAI,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC;CACxD;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,8BAA8B,CAClD,MAAM,EAAE,8BAA8B,EACtC,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,mBAAmB,CAAC,CA8B9B"}
1
+ {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../src/client/factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAgB,MAAM,uBAAuB,CAAC;AAQlE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AACjF,OAAO,EAAE,KAAK,gBAAgB,EAAwB,MAAM,aAAa,CAAC;AAE1E,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAG1D,MAAM,WAAW,oBAAoB;IACnC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,0CAA0C;IAC1C,gBAAgB,CAAC,EAAE,mBAAmB,EAAE,CAAC;IACzC,2CAA2C;IAC3C,qBAAqB,CAAC,EAAE,mBAAmB,CAAC;CAC7C;AAED,wBAAgB,gBAAgB,CAAC,MAAM,CAAC,EAAE,gBAAgB,EAAE,IAAI,CAAC,EAAE,oBAAoB,GAAG,mBAAmB,CAmB5G;AAED;;;GAGG;AACH,MAAM,WAAW,8BAA+B,SAAQ,gBAAgB;IACtE,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE;QAAE,QAAQ,IAAI,MAAM,CAAA;KAAE,CAAC;CACvC;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,8BAA8B,CAClD,MAAM,EAAE,8BAA8B,EACtC,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,mBAAmB,CAAC,CA8B9B"}
@@ -40,7 +40,7 @@ export function createBlobClient(config, deps) {
40
40
  const fileStoreMetadata = {
41
41
  l1ChainId: config.l1ChainId,
42
42
  rollupVersion: config.rollupVersion,
43
- rollupAddress: config.l1Contracts.rollupAddress.toString()
43
+ rollupAddress: config.rollupAddress.toString()
44
44
  };
45
45
  // Disable internal retries for blob file stores — retry logic is handled by HttpBlobClient.
46
46
  // Set a configurable timeout (default 10s) to avoid hanging on slow stores.
@@ -458,9 +458,9 @@ export class HttpBlobClient {
458
458
  }
459
459
  baseUrl += `?${params.toString()}`;
460
460
  }
461
- const { url, ...options } = getBeaconNodeFetchOptions(baseUrl, this.config, l1ConsensusHostIndex);
461
+ const { url, logSafeUrl, ...options } = getBeaconNodeFetchOptions(baseUrl, this.config, l1ConsensusHostIndex);
462
462
  this.log.debug(`Fetching blob sidecar for ${blockHashOrSlot}`, {
463
- url,
463
+ url: logSafeUrl,
464
464
  ...options
465
465
  });
466
466
  // No retry here — this is called inside the main retry loop in getBlobSidecar
@@ -469,9 +469,9 @@ export class HttpBlobClient {
469
469
  async getLatestSlotNumber(hostUrl, l1ConsensusHostIndex) {
470
470
  try {
471
471
  const baseUrl = `${hostUrl}/eth/v1/beacon/headers/head`;
472
- const { url, ...options } = getBeaconNodeFetchOptions(baseUrl, this.config, l1ConsensusHostIndex);
472
+ const { url, logSafeUrl, ...options } = getBeaconNodeFetchOptions(baseUrl, this.config, l1ConsensusHostIndex);
473
473
  this.log.debug(`Fetching latest slot number`, {
474
- url,
474
+ url: logSafeUrl,
475
475
  ...options
476
476
  });
477
477
  const res = await this.fetch(url, options);
@@ -680,11 +680,15 @@ function getBeaconNodeFetchOptions(url, config, l1ConsensusHostIndex) {
680
680
  const l1ConsensusHostApiKey = l1ConsensusHostIndex !== undefined && l1ConsensusHostApiKeys && l1ConsensusHostApiKeys[l1ConsensusHostIndex];
681
681
  const l1ConsensusHostApiKeyHeader = l1ConsensusHostIndex !== undefined && l1ConsensusHostApiKeyHeaders && l1ConsensusHostApiKeyHeaders[l1ConsensusHostIndex];
682
682
  let formattedUrl = url;
683
+ let logSafeUrl = url;
683
684
  if (l1ConsensusHostApiKey && l1ConsensusHostApiKey.getValue() !== '' && !l1ConsensusHostApiKeyHeader) {
684
- formattedUrl += `${formattedUrl.includes('?') ? '&' : '?'}key=${l1ConsensusHostApiKey.getValue()}`;
685
+ const separator = formattedUrl.includes('?') ? '&' : '?';
686
+ formattedUrl += `${separator}key=${l1ConsensusHostApiKey.getValue()}`;
687
+ logSafeUrl += `${separator}key=[REDACTED]`;
685
688
  }
686
689
  return {
687
690
  url: formattedUrl,
691
+ logSafeUrl,
688
692
  ...l1ConsensusHostApiKey && l1ConsensusHostApiKeyHeader && {
689
693
  headers: {
690
694
  [l1ConsensusHostApiKeyHeader]: l1ConsensusHostApiKey.getValue()
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aztec/blob-client",
3
- "version": "0.0.1-commit.9ef841308",
3
+ "version": "0.0.1-commit.a5db02d",
4
4
  "type": "module",
5
5
  "bin": "./dest/client/bin/index.js",
6
6
  "exports": {
@@ -56,18 +56,18 @@
56
56
  ]
57
57
  },
58
58
  "dependencies": {
59
- "@aztec/blob-lib": "0.0.1-commit.9ef841308",
60
- "@aztec/ethereum": "0.0.1-commit.9ef841308",
61
- "@aztec/foundation": "0.0.1-commit.9ef841308",
62
- "@aztec/kv-store": "0.0.1-commit.9ef841308",
63
- "@aztec/stdlib": "0.0.1-commit.9ef841308",
64
- "@aztec/telemetry-client": "0.0.1-commit.9ef841308",
59
+ "@aztec/blob-lib": "0.0.1-commit.a5db02d",
60
+ "@aztec/ethereum": "0.0.1-commit.a5db02d",
61
+ "@aztec/foundation": "0.0.1-commit.a5db02d",
62
+ "@aztec/kv-store": "0.0.1-commit.a5db02d",
63
+ "@aztec/stdlib": "0.0.1-commit.a5db02d",
64
+ "@aztec/telemetry-client": "0.0.1-commit.a5db02d",
65
65
  "express": "^4.21.2",
66
66
  "snappy": "^7.2.2",
67
67
  "source-map-support": "^0.5.21",
68
68
  "tslib": "^2.4.0",
69
69
  "viem": "npm:@aztec/viem@2.38.2",
70
- "zod": "^3.23.8"
70
+ "zod": "^4"
71
71
  },
72
72
  "devDependencies": {
73
73
  "@jest/globals": "^30.0.0",
@@ -93,7 +93,7 @@ export const blobClientConfigMapping: ConfigMappingsType<BlobClientConfig> = {
93
93
  blobSinkMapSizeKb: {
94
94
  env: 'BLOB_SINK_MAP_SIZE_KB',
95
95
  description: 'The maximum possible size of the blob sink DB in KB. Overwrites the general dataStoreMapSizeKb.',
96
- parseEnv: (val: string | undefined) => (val ? +val : undefined),
96
+ ...optionalNumberConfigHelper(),
97
97
  },
98
98
  blobAllowEmptySources: {
99
99
  env: 'BLOB_ALLOW_EMPTY_SOURCES',
@@ -116,7 +116,7 @@ export const blobClientConfigMapping: ConfigMappingsType<BlobClientConfig> = {
116
116
  blobHealthcheckUploadIntervalMinutes: {
117
117
  env: 'BLOB_HEALTHCHECK_UPLOAD_INTERVAL_MINUTES',
118
118
  description: 'Interval in minutes for uploading healthcheck file to file store (default: 60 = 1 hour)',
119
- parseEnv: (val: string | undefined) => (val ? +val : undefined),
119
+ ...optionalNumberConfigHelper(),
120
120
  },
121
121
  l1HttpTimeoutMS: {
122
122
  env: 'ETHEREUM_HTTP_TIMEOUT_MS',
@@ -48,7 +48,7 @@ export function createBlobClient(config?: BlobClientConfig, deps?: CreateBlobCli
48
48
  export interface BlobClientWithFileStoresConfig extends BlobClientConfig {
49
49
  l1ChainId: number;
50
50
  rollupVersion: number;
51
- l1Contracts: { rollupAddress: { toString(): string } };
51
+ rollupAddress: { toString(): string };
52
52
  }
53
53
 
54
54
  /**
@@ -73,7 +73,7 @@ export async function createBlobClientWithFileStores(
73
73
  const fileStoreMetadata: BlobFileStoreMetadata = {
74
74
  l1ChainId: config.l1ChainId,
75
75
  rollupVersion: config.rollupVersion,
76
- rollupAddress: config.l1Contracts.rollupAddress.toString(),
76
+ rollupAddress: config.rollupAddress.toString(),
77
77
  };
78
78
 
79
79
  // Disable internal retries for blob file stores — retry logic is handled by HttpBlobClient.
@@ -546,8 +546,8 @@ export class HttpBlobClient implements BlobClientInterface {
546
546
  baseUrl += `?${params.toString()}`;
547
547
  }
548
548
 
549
- const { url, ...options } = getBeaconNodeFetchOptions(baseUrl, this.config, l1ConsensusHostIndex);
550
- this.log.debug(`Fetching blob sidecar for ${blockHashOrSlot}`, { url, ...options });
549
+ const { url, logSafeUrl, ...options } = getBeaconNodeFetchOptions(baseUrl, this.config, l1ConsensusHostIndex);
550
+ this.log.debug(`Fetching blob sidecar for ${blockHashOrSlot}`, { url: logSafeUrl, ...options });
551
551
  // No retry here — this is called inside the main retry loop in getBlobSidecar
552
552
  return fetch(url, options);
553
553
  }
@@ -555,8 +555,8 @@ export class HttpBlobClient implements BlobClientInterface {
555
555
  private async getLatestSlotNumber(hostUrl: string, l1ConsensusHostIndex?: number): Promise<number | undefined> {
556
556
  try {
557
557
  const baseUrl = `${hostUrl}/eth/v1/beacon/headers/head`;
558
- const { url, ...options } = getBeaconNodeFetchOptions(baseUrl, this.config, l1ConsensusHostIndex);
559
- this.log.debug(`Fetching latest slot number`, { url, ...options });
558
+ const { url, logSafeUrl, ...options } = getBeaconNodeFetchOptions(baseUrl, this.config, l1ConsensusHostIndex);
559
+ this.log.debug(`Fetching latest slot number`, { url: logSafeUrl, ...options });
560
560
  const res = await this.fetch(url, options);
561
561
  if (res.ok) {
562
562
  const body = await res.json();
@@ -819,12 +819,16 @@ function getBeaconNodeFetchOptions(url: string, config: BlobClientConfig, l1Cons
819
819
  l1ConsensusHostApiKeyHeaders[l1ConsensusHostIndex];
820
820
 
821
821
  let formattedUrl = url;
822
+ let logSafeUrl = url;
822
823
  if (l1ConsensusHostApiKey && l1ConsensusHostApiKey.getValue() !== '' && !l1ConsensusHostApiKeyHeader) {
823
- formattedUrl += `${formattedUrl.includes('?') ? '&' : '?'}key=${l1ConsensusHostApiKey.getValue()}`;
824
+ const separator = formattedUrl.includes('?') ? '&' : '?';
825
+ formattedUrl += `${separator}key=${l1ConsensusHostApiKey.getValue()}`;
826
+ logSafeUrl += `${separator}key=[REDACTED]`;
824
827
  }
825
828
 
826
829
  return {
827
830
  url: formattedUrl,
831
+ logSafeUrl,
828
832
  ...(l1ConsensusHostApiKey &&
829
833
  l1ConsensusHostApiKeyHeader && {
830
834
  headers: {