@aztec/foundation 0.64.0 → 0.65.1
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/dest/abi/abi.d.ts +9 -9
- package/dest/abi/abi.js +2 -2
- package/dest/abi/event_selector.d.ts +2 -4
- package/dest/abi/event_selector.d.ts.map +1 -1
- package/dest/abi/event_selector.js +6 -5
- package/dest/abi/function_selector.d.ts +2 -4
- package/dest/abi/function_selector.d.ts.map +1 -1
- package/dest/abi/function_selector.js +6 -5
- package/dest/abi/note_selector.d.ts +2 -5
- package/dest/abi/note_selector.d.ts.map +1 -1
- package/dest/abi/note_selector.js +5 -7
- package/dest/abi/selector.d.ts.map +1 -1
- package/dest/abi/selector.js +3 -2
- package/dest/aztec-address/index.d.ts +2 -4
- package/dest/aztec-address/index.d.ts.map +1 -1
- package/dest/aztec-address/index.js +6 -5
- package/dest/buffer/buffer32.d.ts +2 -12
- package/dest/buffer/buffer32.d.ts.map +1 -1
- package/dest/buffer/buffer32.js +3 -16
- package/dest/config/env_var.d.ts +1 -1
- package/dest/config/env_var.d.ts.map +1 -1
- package/dest/crypto/poseidon/index.d.ts +1 -0
- package/dest/crypto/poseidon/index.d.ts.map +1 -1
- package/dest/crypto/poseidon/index.js +7 -1
- package/dest/eth-address/index.d.ts +2 -9
- package/dest/eth-address/index.d.ts.map +1 -1
- package/dest/eth-address/index.js +7 -12
- package/dest/eth-signature/eth_signature.d.ts +5 -3
- package/dest/eth-signature/eth_signature.d.ts.map +1 -1
- package/dest/eth-signature/eth_signature.js +18 -9
- package/dest/fields/fields.d.ts +4 -8
- package/dest/fields/fields.d.ts.map +1 -1
- package/dest/fields/fields.js +10 -10
- package/dest/fields/point.d.ts +6 -4
- package/dest/fields/point.d.ts.map +1 -1
- package/dest/fields/point.js +14 -6
- package/dest/json-rpc/client/fetch.d.ts.map +1 -1
- package/dest/json-rpc/client/fetch.js +20 -14
- package/dest/json-rpc/convert.d.ts.map +1 -1
- package/dest/json-rpc/convert.js +5 -2
- package/dest/json-rpc/index.d.ts +1 -1
- package/dest/json-rpc/index.d.ts.map +1 -1
- package/dest/json-rpc/index.js +2 -2
- package/dest/noir/noir_package_config.d.ts +2 -2
- package/dest/schemas/schemas.d.ts +24 -43
- package/dest/schemas/schemas.d.ts.map +1 -1
- package/dest/schemas/schemas.js +29 -48
- package/dest/schemas/utils.d.ts +18 -7
- package/dest/schemas/utils.d.ts.map +1 -1
- package/dest/schemas/utils.js +20 -8
- package/dest/serialize/type_registry.d.ts.map +1 -1
- package/dest/serialize/type_registry.js +29 -2
- package/dest/string/index.d.ts +1 -0
- package/dest/string/index.d.ts.map +1 -1
- package/dest/string/index.js +4 -1
- package/dest/testing/test_data.js +2 -2
- package/package.json +2 -2
- package/src/abi/abi.ts +1 -1
- package/src/abi/event_selector.ts +6 -4
- package/src/abi/function_selector.ts +6 -4
- package/src/abi/note_selector.ts +4 -6
- package/src/abi/selector.ts +2 -1
- package/src/aztec-address/index.ts +6 -4
- package/src/buffer/buffer32.ts +3 -17
- package/src/config/env_var.ts +1 -0
- package/src/crypto/poseidon/index.ts +11 -0
- package/src/eth-address/index.ts +6 -11
- package/src/eth-signature/eth_signature.ts +20 -9
- package/src/fields/fields.ts +11 -9
- package/src/fields/point.ts +15 -5
- package/src/json-rpc/client/fetch.ts +18 -13
- package/src/json-rpc/convert.ts +3 -1
- package/src/json-rpc/index.ts +1 -1
- package/src/schemas/schemas.ts +28 -51
- package/src/schemas/utils.ts +29 -10
- package/src/serialize/type_registry.ts +33 -1
- package/src/string/index.ts +4 -0
- package/src/testing/test_data.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/json-rpc/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/json-rpc/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC"}
|
package/dest/json-rpc/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export { jsonStringify } from './convert.js';
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
1
|
+
export { jsonStringify, jsonParseWithSchema, tryJsonStringify } from './convert.js';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvanNvbi1ycGMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGFBQWEsRUFBRSxtQkFBbUIsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGNBQWMsQ0FBQyJ9
|
|
@@ -40,8 +40,8 @@ declare const noirPackageConfigSchema: z.ZodObject<{
|
|
|
40
40
|
license?: string | undefined;
|
|
41
41
|
}, {
|
|
42
42
|
type?: "lib" | "contract" | "bin" | undefined;
|
|
43
|
-
name?: string | undefined;
|
|
44
43
|
description?: string | undefined;
|
|
44
|
+
name?: string | undefined;
|
|
45
45
|
entry?: string | undefined;
|
|
46
46
|
authors?: string[] | undefined;
|
|
47
47
|
compiler_version?: string | undefined;
|
|
@@ -88,8 +88,8 @@ declare const noirPackageConfigSchema: z.ZodObject<{
|
|
|
88
88
|
}, {
|
|
89
89
|
package: {
|
|
90
90
|
type?: "lib" | "contract" | "bin" | undefined;
|
|
91
|
-
name?: string | undefined;
|
|
92
91
|
description?: string | undefined;
|
|
92
|
+
name?: string | undefined;
|
|
93
93
|
entry?: string | undefined;
|
|
94
94
|
authors?: string[] | undefined;
|
|
95
95
|
compiler_version?: string | undefined;
|
|
@@ -8,56 +8,37 @@ import { NoteSelector } from '../abi/note_selector.js';
|
|
|
8
8
|
import { AztecAddress } from '../aztec-address/index.js';
|
|
9
9
|
import { Buffer32 } from '../buffer/buffer32.js';
|
|
10
10
|
import { EthAddress } from '../eth-address/index.js';
|
|
11
|
-
import { Signature } from '../eth-signature/eth_signature.js';
|
|
12
11
|
import { Fq, Fr } from '../fields/fields.js';
|
|
13
12
|
import { Point } from '../fields/point.js';
|
|
14
13
|
import { type ZodFor } from './types.js';
|
|
15
14
|
/** Validation schemas for common types. Every schema must match its toJSON. */
|
|
16
15
|
export declare const schemas: {
|
|
17
|
-
/** Accepts
|
|
18
|
-
EthAddress:
|
|
19
|
-
/** Accepts
|
|
20
|
-
AztecAddress:
|
|
21
|
-
/** Accepts
|
|
22
|
-
FunctionSelector:
|
|
23
|
-
/** Accepts
|
|
24
|
-
NoteSelector:
|
|
25
|
-
/** Accepts
|
|
26
|
-
EventSelector:
|
|
27
|
-
/**
|
|
28
|
-
Fr:
|
|
29
|
-
/**
|
|
30
|
-
Fq:
|
|
31
|
-
/** Point. Serialized as
|
|
32
|
-
Point: z.
|
|
33
|
-
|
|
34
|
-
y: ZodFor<Fr>;
|
|
35
|
-
isInfinite: z.ZodOptional<z.ZodBoolean>;
|
|
36
|
-
}, "strip", z.ZodTypeAny, {
|
|
37
|
-
x: Fr;
|
|
38
|
-
y: Fr;
|
|
39
|
-
isInfinite?: boolean | undefined;
|
|
40
|
-
}, {
|
|
41
|
-
x?: any;
|
|
42
|
-
y?: any;
|
|
43
|
-
isInfinite?: boolean | undefined;
|
|
44
|
-
}>, z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>]>, Point, string | {
|
|
45
|
-
x?: any;
|
|
46
|
-
y?: any;
|
|
47
|
-
isInfinite?: boolean | undefined;
|
|
48
|
-
}>;
|
|
49
|
-
/** Accepts a 0x string */
|
|
50
|
-
Signature: z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodString, `0x${string}`, string>, `0x${string}`, string>, Signature, string>;
|
|
51
|
-
/** Coerces any input to bigint */
|
|
16
|
+
/** Accepts a hex string. */
|
|
17
|
+
EthAddress: z.ZodType<EthAddress, any, string>;
|
|
18
|
+
/** Accepts a hex string. */
|
|
19
|
+
AztecAddress: z.ZodType<AztecAddress, any, string>;
|
|
20
|
+
/** Accepts a hex string. */
|
|
21
|
+
FunctionSelector: z.ZodType<FunctionSelector, any, string>;
|
|
22
|
+
/** Accepts a hex string. */
|
|
23
|
+
NoteSelector: z.ZodType<NoteSelector, any, string>;
|
|
24
|
+
/** Accepts a hex string. */
|
|
25
|
+
EventSelector: z.ZodType<EventSelector, any, string>;
|
|
26
|
+
/** Accepts a hex string. */
|
|
27
|
+
Fr: z.ZodType<Fr, any, string>;
|
|
28
|
+
/** Accepts a hex string. */
|
|
29
|
+
Fq: z.ZodType<Fq, any, string>;
|
|
30
|
+
/** Point. Serialized as a hex string. */
|
|
31
|
+
Point: z.ZodType<Point, any, string>;
|
|
32
|
+
/** Coerces any input to bigint. */
|
|
52
33
|
BigInt: z.ZodPipeline<z.ZodUnion<[z.ZodBigInt, z.ZodNumber, z.ZodString]>, z.ZodBigInt>;
|
|
53
|
-
/** Coerces any input to integer number */
|
|
34
|
+
/** Coerces any input to integer number. */
|
|
54
35
|
Integer: z.ZodPipeline<z.ZodUnion<[z.ZodBigInt, z.ZodNumber, z.ZodString]>, z.ZodNumber>;
|
|
55
|
-
/** Coerces input to UInt32 */
|
|
36
|
+
/** Coerces input to UInt32. */
|
|
56
37
|
UInt32: z.ZodPipeline<z.ZodUnion<[z.ZodBigInt, z.ZodNumber, z.ZodString]>, z.ZodNumber>;
|
|
57
|
-
/** Accepts a hex string as a Buffer32 type */
|
|
38
|
+
/** Accepts a hex string as a Buffer32 type. */
|
|
58
39
|
Buffer32: z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Buffer32, string>;
|
|
59
|
-
/** Accepts a base64 string or
|
|
60
|
-
|
|
40
|
+
/** Accepts a base64 string or an object `{ type: 'Buffer', data: [byte, byte...] }` as a buffer. */
|
|
41
|
+
Buffer: z.ZodUnion<[z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Buffer, string>, z.ZodEffects<z.ZodObject<{
|
|
61
42
|
type: z.ZodLiteral<"Buffer">;
|
|
62
43
|
data: z.ZodArray<z.ZodNumber, "many">;
|
|
63
44
|
}, "strip", z.ZodTypeAny, {
|
|
@@ -70,9 +51,9 @@ export declare const schemas: {
|
|
|
70
51
|
type: "Buffer";
|
|
71
52
|
data: number[];
|
|
72
53
|
}>]>;
|
|
73
|
-
/** Accepts a hex string
|
|
54
|
+
/** Accepts a hex string as a buffer. */
|
|
74
55
|
BufferHex: z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>, Buffer, string>;
|
|
75
|
-
/** Hex string with an optional 0x prefix
|
|
56
|
+
/** Hex string with an optional 0x prefix which gets removed as part of the parsing. */
|
|
76
57
|
HexString: z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>;
|
|
77
58
|
};
|
|
78
59
|
export declare const AbiDecodedSchema: ZodFor<AbiDecoded>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../src/schemas/schemas.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../src/schemas/schemas.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAE3C,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,YAAY,CAAC;AAGzC,+EAA+E;AAC/E,eAAO,MAAM,OAAO;IAClB,4BAA4B;;IAG5B,4BAA4B;;IAG5B,4BAA4B;;IAG5B,4BAA4B;;IAG5B,4BAA4B;;IAG5B,4BAA4B;;IAG5B,4BAA4B;;IAG5B,yCAAyC;;IAGzC,mCAAmC;;IAGnC,2CAA2C;;IAG3C,+BAA+B;;IAS/B,+CAA+C;;IAG/C,oGAAoG;;;;;;;;;;;;;;IAWpG,wCAAwC;;IAOxC,uFAAuF;;CAExF,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,UAAU,CAM9C,CAAC"}
|
package/dest/schemas/schemas.js
CHANGED
|
@@ -5,76 +5,57 @@ import { NoteSelector } from '../abi/note_selector.js';
|
|
|
5
5
|
import { AztecAddress } from '../aztec-address/index.js';
|
|
6
6
|
import { Buffer32 } from '../buffer/buffer32.js';
|
|
7
7
|
import { EthAddress } from '../eth-address/index.js';
|
|
8
|
-
import { Signature } from '../eth-signature/eth_signature.js';
|
|
9
8
|
import { Fq, Fr } from '../fields/fields.js';
|
|
10
9
|
import { Point } from '../fields/point.js';
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
const FrSchema = maybeStructuredStringSchemaFor('Fr', Fr, isHex);
|
|
14
|
-
const FqSchema = maybeStructuredStringSchemaFor('Fq', Fq, isHex);
|
|
10
|
+
import { isHex, withoutHexPrefix } from '../string/index.js';
|
|
11
|
+
import { bufferSchema, hexSchema } from './utils.js';
|
|
15
12
|
/** Validation schemas for common types. Every schema must match its toJSON. */
|
|
16
13
|
export const schemas = {
|
|
17
|
-
/** Accepts
|
|
18
|
-
EthAddress:
|
|
19
|
-
/** Accepts
|
|
20
|
-
AztecAddress:
|
|
21
|
-
/** Accepts
|
|
22
|
-
FunctionSelector:
|
|
23
|
-
/** Accepts
|
|
24
|
-
NoteSelector:
|
|
25
|
-
/** Accepts
|
|
26
|
-
EventSelector:
|
|
27
|
-
/**
|
|
28
|
-
Fr:
|
|
29
|
-
/**
|
|
30
|
-
Fq:
|
|
31
|
-
/** Point. Serialized as
|
|
32
|
-
Point:
|
|
33
|
-
|
|
34
|
-
x: FrSchema,
|
|
35
|
-
y: FrSchema,
|
|
36
|
-
isInfinite: z.boolean().optional(),
|
|
37
|
-
})
|
|
38
|
-
.or(hexSchema)
|
|
39
|
-
.transform(value => typeof value === 'string' ? Point.fromString(value) : new Point(value.x, value.y, value.isInfinite ?? false)),
|
|
40
|
-
/** Accepts a 0x string */
|
|
41
|
-
Signature: z
|
|
42
|
-
.string()
|
|
43
|
-
.refine(hasHexPrefix, 'No hex prefix')
|
|
44
|
-
.refine(Signature.isValid0xString, 'Not a valid Ethereum signature')
|
|
45
|
-
.transform(Signature.from0xString),
|
|
46
|
-
/** Coerces any input to bigint */
|
|
14
|
+
/** Accepts a hex string. */
|
|
15
|
+
EthAddress: EthAddress.schema,
|
|
16
|
+
/** Accepts a hex string. */
|
|
17
|
+
AztecAddress: AztecAddress.schema,
|
|
18
|
+
/** Accepts a hex string. */
|
|
19
|
+
FunctionSelector: FunctionSelector.schema,
|
|
20
|
+
/** Accepts a hex string. */
|
|
21
|
+
NoteSelector: NoteSelector.schema,
|
|
22
|
+
/** Accepts a hex string. */
|
|
23
|
+
EventSelector: EventSelector.schema,
|
|
24
|
+
/** Accepts a hex string. */
|
|
25
|
+
Fr: Fr.schema,
|
|
26
|
+
/** Accepts a hex string. */
|
|
27
|
+
Fq: Fq.schema,
|
|
28
|
+
/** Point. Serialized as a hex string. */
|
|
29
|
+
Point: Point.schema,
|
|
30
|
+
/** Coerces any input to bigint. */
|
|
47
31
|
BigInt: z.union([z.bigint(), z.number(), z.string()]).pipe(z.coerce.bigint()),
|
|
48
|
-
/** Coerces any input to integer number */
|
|
32
|
+
/** Coerces any input to integer number. */
|
|
49
33
|
Integer: z.union([z.bigint(), z.number(), z.string()]).pipe(z.coerce.number().int()),
|
|
50
|
-
/** Coerces input to UInt32 */
|
|
34
|
+
/** Coerces input to UInt32. */
|
|
51
35
|
UInt32: z.union([z.bigint(), z.number(), z.string()]).pipe(z.coerce
|
|
52
36
|
.number()
|
|
53
37
|
.int()
|
|
54
38
|
.min(0)
|
|
55
39
|
.max(2 ** 32 - 1)),
|
|
56
|
-
/** Accepts a hex string as a Buffer32 type */
|
|
40
|
+
/** Accepts a hex string as a Buffer32 type. */
|
|
57
41
|
Buffer32: z.string().refine(isHex, 'Not a valid hex string').transform(Buffer32.fromString),
|
|
58
|
-
/** Accepts a base64 string or
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
.string()
|
|
62
|
-
.base64()
|
|
63
|
-
.transform(data => Buffer.from(data, 'base64')),
|
|
42
|
+
/** Accepts a base64 string or an object `{ type: 'Buffer', data: [byte, byte...] }` as a buffer. */
|
|
43
|
+
Buffer: z.union([
|
|
44
|
+
bufferSchema,
|
|
64
45
|
z
|
|
65
46
|
.object({
|
|
66
47
|
type: z.literal('Buffer'),
|
|
67
|
-
data: z.array(z.number().int().max(255)),
|
|
48
|
+
data: z.array(z.number().int().min(0).max(255)),
|
|
68
49
|
})
|
|
69
50
|
.transform(({ data }) => Buffer.from(data)),
|
|
70
51
|
]),
|
|
71
|
-
/** Accepts a hex string
|
|
52
|
+
/** Accepts a hex string as a buffer. */
|
|
72
53
|
BufferHex: z
|
|
73
54
|
.string()
|
|
74
55
|
.refine(isHex, 'Not a valid hex string')
|
|
75
56
|
.transform(withoutHexPrefix)
|
|
76
57
|
.transform(data => Buffer.from(data, 'hex')),
|
|
77
|
-
/** Hex string with an optional 0x prefix
|
|
58
|
+
/** Hex string with an optional 0x prefix which gets removed as part of the parsing. */
|
|
78
59
|
HexString: hexSchema,
|
|
79
60
|
};
|
|
80
61
|
export const AbiDecodedSchema = z.union([
|
|
@@ -84,4 +65,4 @@ export const AbiDecodedSchema = z.union([
|
|
|
84
65
|
z.array(z.lazy(() => AbiDecodedSchema)),
|
|
85
66
|
z.record(z.lazy(() => AbiDecodedSchema)),
|
|
86
67
|
]);
|
|
87
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
68
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NoZW1hcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zY2hlbWFzL3NjaGVtYXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUd4QixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDekQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDL0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDakQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDN0MsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzNDLE9BQU8sRUFBRSxLQUFLLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUU3RCxPQUFPLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUVyRCwrRUFBK0U7QUFDL0UsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFHO0lBQ3JCLDRCQUE0QjtJQUM1QixVQUFVLEVBQUUsVUFBVSxDQUFDLE1BQU07SUFFN0IsNEJBQTRCO0lBQzVCLFlBQVksRUFBRSxZQUFZLENBQUMsTUFBTTtJQUVqQyw0QkFBNEI7SUFDNUIsZ0JBQWdCLEVBQUUsZ0JBQWdCLENBQUMsTUFBTTtJQUV6Qyw0QkFBNEI7SUFDNUIsWUFBWSxFQUFFLFlBQVksQ0FBQyxNQUFNO0lBRWpDLDRCQUE0QjtJQUM1QixhQUFhLEVBQUUsYUFBYSxDQUFDLE1BQU07SUFFbkMsNEJBQTRCO0lBQzVCLEVBQUUsRUFBRSxFQUFFLENBQUMsTUFBTTtJQUViLDRCQUE0QjtJQUM1QixFQUFFLEVBQUUsRUFBRSxDQUFDLE1BQU07SUFFYix5Q0FBeUM7SUFDekMsS0FBSyxFQUFFLEtBQUssQ0FBQyxNQUFNO0lBRW5CLG1DQUFtQztJQUNuQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUU3RSwyQ0FBMkM7SUFDM0MsT0FBTyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBRyxFQUFFLENBQUM7SUFFcEYsK0JBQStCO0lBQy9CLE1BQU0sRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDeEQsQ0FBQyxDQUFDLE1BQU07U0FDTCxNQUFNLEVBQUU7U0FDUixHQUFHLEVBQUU7U0FDTCxHQUFHLENBQUMsQ0FBQyxDQUFDO1NBQ04sR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQ3BCO0lBRUQsK0NBQStDO0lBQy9DLFFBQVEsRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSx3QkFBd0IsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDO0lBRTNGLG9HQUFvRztJQUNwRyxNQUFNLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQztRQUNkLFlBQVk7UUFDWixDQUFDO2FBQ0UsTUFBTSxDQUFDO1lBQ04sSUFBSSxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDO1lBQ3pCLElBQUksRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1NBQ2hELENBQUM7YUFDRCxTQUFTLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0tBQzlDLENBQUM7SUFFRix3Q0FBd0M7SUFDeEMsU0FBUyxFQUFFLENBQUM7U0FDVCxNQUFNLEVBQUU7U0FDUixNQUFNLENBQUMsS0FBSyxFQUFFLHdCQUF3QixDQUFDO1NBQ3ZDLFNBQVMsQ0FBQyxnQkFBZ0IsQ0FBQztTQUMzQixTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQztJQUU5Qyx1RkFBdUY7SUFDdkYsU0FBUyxFQUFFLFNBQVM7Q0FDckIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUF1QixDQUFDLENBQUMsS0FBSyxDQUFDO0lBQzFELE9BQU8sQ0FBQyxNQUFNO0lBQ2QsQ0FBQyxDQUFDLE9BQU8sRUFBRTtJQUNYLE9BQU8sQ0FBQyxZQUFZO0lBQ3BCLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ3ZDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0NBQ3pDLENBQUMsQ0FBQyJ9
|
package/dest/schemas/utils.d.ts
CHANGED
|
@@ -3,6 +3,8 @@
|
|
|
3
3
|
import { type ParseInput, type ParseReturnType, ZodOptional, type ZodType, type ZodTypeAny, z } from 'zod';
|
|
4
4
|
import { type ZodFor } from './types.js';
|
|
5
5
|
export declare const hexSchema: z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>;
|
|
6
|
+
/** Schema for a buffer represented as a base64 string. */
|
|
7
|
+
export declare const bufferSchema: z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, Buffer, string>;
|
|
6
8
|
export declare class ZodNullableOptional<T extends ZodTypeAny> extends ZodOptional<T> {
|
|
7
9
|
_isNullableOptional: boolean;
|
|
8
10
|
_parse(input: ParseInput): ParseReturnType<this['_output']>;
|
|
@@ -14,6 +16,9 @@ export declare class ZodNullableOptional<T extends ZodTypeAny> extends ZodOption
|
|
|
14
16
|
* need to convert nulls to undefineds as we parse.
|
|
15
17
|
*/
|
|
16
18
|
export declare function optional<T extends ZodTypeAny>(schema: T): ZodNullableOptional<T>;
|
|
19
|
+
type ToJsonIs<T, TRet> = T extends {
|
|
20
|
+
toJSON(): TRet;
|
|
21
|
+
} ? T : never;
|
|
17
22
|
/**
|
|
18
23
|
* Creates a schema that accepts a hex string and uses it to hydrate an instance.
|
|
19
24
|
* @param klazz - Class that implements either fromString or fromBuffer.
|
|
@@ -23,18 +28,24 @@ export declare function hexSchemaFor<TClass extends {
|
|
|
23
28
|
fromString(str: string): any;
|
|
24
29
|
} | {
|
|
25
30
|
fromBuffer(buf: Buffer): any;
|
|
26
|
-
}>(klazz: TClass): ZodType<TClass extends {
|
|
31
|
+
}>(klazz: TClass, refinement?: (input: string) => boolean): ZodType<TClass extends {
|
|
27
32
|
fromString(str: string): infer TInstance;
|
|
28
33
|
} | {
|
|
29
34
|
fromBuffer(buf: Buffer): infer TInstance;
|
|
30
|
-
} ? TInstance : never, any, string>;
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
35
|
+
} ? ToJsonIs<TInstance, string> : never, any, string>;
|
|
36
|
+
/**
|
|
37
|
+
* Creates a schema that accepts a base64 string and uses it to hydrate an instance.
|
|
38
|
+
* @param klazz - Class that implements fromBuffer.
|
|
39
|
+
* @returns A schema for the class.
|
|
40
|
+
*/
|
|
41
|
+
export declare function bufferSchemaFor<TClass extends {
|
|
42
|
+
fromBuffer(buf: Buffer): any;
|
|
43
|
+
}>(klazz: TClass): ZodType<TClass extends {
|
|
44
|
+
fromBuffer(buf: Buffer): infer TInstance;
|
|
45
|
+
} ? ToJsonIs<TInstance, Buffer> : never, any, string>;
|
|
36
46
|
/** Creates a schema for a js Map type that matches the serialization used in jsonStringify. */
|
|
37
47
|
export declare function mapSchema<TKey, TValue>(key: ZodFor<TKey>, value: ZodFor<TValue>): ZodFor<Map<TKey, TValue>>;
|
|
38
48
|
/** Creates a schema for a js Set type that matches the serialization used in jsonStringify. */
|
|
39
49
|
export declare function setSchema<T>(value: ZodFor<T>): ZodFor<Set<T>>;
|
|
50
|
+
export {};
|
|
40
51
|
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/schemas/utils.ts"],"names":[],"mappings":";;AAAA,OAAO,EAEL,KAAK,UAAU,EACf,KAAK,eAAe,EAEpB,WAAW,EAEX,KAAK,OAAO,EACZ,KAAK,UAAU,EACf,CAAC,EACF,MAAM,KAAK,CAAC;AAGb,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,YAAY,CAAC;AAEzC,eAAO,MAAM,SAAS,yEAAiF,CAAC;
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/schemas/utils.ts"],"names":[],"mappings":";;AAAA,OAAO,EAEL,KAAK,UAAU,EACf,KAAK,eAAe,EAEpB,WAAW,EAEX,KAAK,OAAO,EACZ,KAAK,UAAU,EACf,CAAC,EACF,MAAM,KAAK,CAAC;AAGb,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,YAAY,CAAC;AAEzC,eAAO,MAAM,SAAS,yEAAiF,CAAC;AAKxG,0DAA0D;AAC1D,eAAO,MAAM,YAAY,yEAKwB,CAAC;AAElD,qBAAa,mBAAmB,CAAC,CAAC,SAAS,UAAU,CAAE,SAAQ,WAAW,CAAC,CAAC,CAAC;IAC3E,mBAAmB,UAAQ;IAElB,MAAM,CAAC,KAAK,EAAE,UAAU,GAAG,eAAe,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;WAQpD,MAAM,CAAC,CAAC,SAAS,UAAU,EAAE,IAAI,EAAE,CAAC,GAAG,mBAAmB,CAAC,CAAC,CAAC;CAM9E;AAED;;;;GAIG;AACH,wBAAgB,QAAQ,CAAC,CAAC,SAAS,UAAU,EAAE,MAAM,EAAE,CAAC,0BAEvD;AAED,KAAK,QAAQ,CAAC,CAAC,EAAE,IAAI,IAAI,CAAC,SAAS;IAAE,MAAM,IAAI,IAAI,CAAA;CAAE,GAAG,CAAC,GAAG,KAAK,CAAC;AAElE;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,MAAM,SAAS;IAAE,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,GAAG;IAAE,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,EAC7G,KAAK,EAAE,MAAM,EACb,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,GACtC,OAAO,CACR,MAAM,SAAS;IAAE,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,SAAS,CAAA;CAAE,GAAG;IAAE,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,SAAS,CAAA;CAAE,GACtG,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,GAC3B,KAAK,EACT,GAAG,EACH,MAAM,CACP,CAMA;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,MAAM,SAAS;IAAE,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;CAAE,EAC7E,KAAK,EAAE,MAAM,GACZ,OAAO,CACR,MAAM,SAAS;IAAE,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,SAAS,CAAA;CAAE,GAAG,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,GAAG,KAAK,EACjG,GAAG,EACH,MAAM,CACP,CAEA;AAED,+FAA+F;AAC/F,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAE3G;AAED,+FAA+F;AAC/F,wBAAgB,SAAS,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAE7D"}
|
package/dest/schemas/utils.js
CHANGED
|
@@ -1,6 +1,15 @@
|
|
|
1
1
|
import { OK, ZodFirstPartyTypeKind, ZodOptional, ZodParsedType, z, } from 'zod';
|
|
2
2
|
import { isHex, withoutHexPrefix } from '../string/index.js';
|
|
3
3
|
export const hexSchema = z.string().refine(isHex, 'Not a valid hex string').transform(withoutHexPrefix);
|
|
4
|
+
// Copied from zod internals, which was copied from https://stackoverflow.com/questions/7860392/determine-if-string-is-in-base64-using-javascript
|
|
5
|
+
const base64Regex = /^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/;
|
|
6
|
+
/** Schema for a buffer represented as a base64 string. */
|
|
7
|
+
export const bufferSchema = z
|
|
8
|
+
.string()
|
|
9
|
+
// We only test the str for base64 if it's shorter than 1024 bytes, otherwise we've run into maximum
|
|
10
|
+
// stack size exceeded errors when trying to validate excessively long strings (such as contract bytecode).
|
|
11
|
+
.refine(str => str.length > 1024 || base64Regex.test(str), 'Not a valid base64 string')
|
|
12
|
+
.transform(data => Buffer.from(data, 'base64'));
|
|
4
13
|
export class ZodNullableOptional extends ZodOptional {
|
|
5
14
|
constructor() {
|
|
6
15
|
super(...arguments);
|
|
@@ -33,17 +42,20 @@ export function optional(schema) {
|
|
|
33
42
|
* @param klazz - Class that implements either fromString or fromBuffer.
|
|
34
43
|
* @returns A schema for the class.
|
|
35
44
|
*/
|
|
36
|
-
export function hexSchemaFor(klazz) {
|
|
45
|
+
export function hexSchemaFor(klazz, refinement) {
|
|
46
|
+
const stringSchema = refinement ? z.string().refine(refinement, `Not a valid instance`) : z.string();
|
|
47
|
+
const hexSchema = stringSchema.refine(isHex, 'Not a valid hex string').transform(withoutHexPrefix);
|
|
37
48
|
return 'fromString' in klazz
|
|
38
49
|
? hexSchema.transform(klazz.fromString.bind(klazz))
|
|
39
50
|
: hexSchema.transform(str => Buffer.from(str, 'hex')).transform(klazz.fromBuffer.bind(klazz));
|
|
40
51
|
}
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
52
|
+
/**
|
|
53
|
+
* Creates a schema that accepts a base64 string and uses it to hydrate an instance.
|
|
54
|
+
* @param klazz - Class that implements fromBuffer.
|
|
55
|
+
* @returns A schema for the class.
|
|
56
|
+
*/
|
|
57
|
+
export function bufferSchemaFor(klazz) {
|
|
58
|
+
return bufferSchema.transform(klazz.fromBuffer.bind(klazz));
|
|
47
59
|
}
|
|
48
60
|
/** Creates a schema for a js Map type that matches the serialization used in jsonStringify. */
|
|
49
61
|
export function mapSchema(key, value) {
|
|
@@ -53,4 +65,4 @@ export function mapSchema(key, value) {
|
|
|
53
65
|
export function setSchema(value) {
|
|
54
66
|
return z.array(value).transform(entries => new Set(entries));
|
|
55
67
|
}
|
|
56
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
68
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc2NoZW1hcy91dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsRUFBRSxFQUdGLHFCQUFxQixFQUNyQixXQUFXLEVBQ1gsYUFBYSxFQUdiLENBQUMsR0FDRixNQUFNLEtBQUssQ0FBQztBQUViLE9BQU8sRUFBRSxLQUFLLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUc3RCxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsd0JBQXdCLENBQUMsQ0FBQyxTQUFTLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztBQUV4RyxpSkFBaUo7QUFDakosTUFBTSxXQUFXLEdBQUcsa0VBQWtFLENBQUM7QUFFdkYsMERBQTBEO0FBQzFELE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxDQUFDO0tBQzFCLE1BQU0sRUFBRTtJQUNULG9HQUFvRztJQUNwRywyR0FBMkc7S0FDMUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLE1BQU0sR0FBRyxJQUFJLElBQUksV0FBVyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSwyQkFBMkIsQ0FBQztLQUN0RixTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDO0FBRWxELE1BQU0sT0FBTyxtQkFBMEMsU0FBUSxXQUFjO0lBQTdFOztRQUNFLHdCQUFtQixHQUFHLElBQUksQ0FBQztJQWdCN0IsQ0FBQztJQWRVLE1BQU0sQ0FBQyxLQUFpQjtRQUMvQixNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3hDLElBQUksVUFBVSxLQUFLLGFBQWEsQ0FBQyxTQUFTLElBQUks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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"type_registry.d.ts","sourceRoot":"","sources":["../../src/serialize/type_registry.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"type_registry.d.ts","sourceRoot":"","sources":["../../src/serialize/type_registry.ts"],"names":[],"mappings":"AAEA,KAAK,cAAc,GAAG;IAAE,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,CAAC;AAE1D;;;;;;;;;;GAUG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAA0C;WAEnD,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,cAAc,GAAG,IAAI;WAI7D,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS;CAG3E;AAmBD,wBAAgB,QAAQ,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,OAgB1C;AAGD,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,OAW9C"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { mapValues } from '../collection/object.js';
|
|
1
2
|
/**
|
|
2
3
|
* Register a class here that has a toJSON method that returns:
|
|
3
4
|
* ```
|
|
@@ -18,9 +19,35 @@ export class TypeRegistry {
|
|
|
18
19
|
}
|
|
19
20
|
}
|
|
20
21
|
TypeRegistry.registry = new Map();
|
|
22
|
+
function replace(value) {
|
|
23
|
+
if (value &&
|
|
24
|
+
typeof value === 'object' &&
|
|
25
|
+
'toString' in value &&
|
|
26
|
+
TypeRegistry.getConstructor(value.constructor.name)) {
|
|
27
|
+
return {
|
|
28
|
+
type: value.constructor.name,
|
|
29
|
+
value: value.toString(),
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
return value;
|
|
33
|
+
}
|
|
21
34
|
// Resolver function that enables JSON serialization of BigInts.
|
|
22
35
|
export function resolver(_, value) {
|
|
23
|
-
|
|
36
|
+
if (typeof value === 'bigint') {
|
|
37
|
+
return value.toString() + 'n';
|
|
38
|
+
}
|
|
39
|
+
if (typeof value === 'object' && value) {
|
|
40
|
+
if (Array.isArray(value)) {
|
|
41
|
+
return value.map(replace);
|
|
42
|
+
}
|
|
43
|
+
else if (Buffer.isBuffer(value)) {
|
|
44
|
+
return { type: 'buffer', value: value.toString('hex') };
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
return mapValues(value, replace);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
return value;
|
|
24
51
|
}
|
|
25
52
|
// Reviver function that uses TypeRegistry to instantiate objects.
|
|
26
53
|
export function reviver(key, value) {
|
|
@@ -35,4 +62,4 @@ export function reviver(key, value) {
|
|
|
35
62
|
}
|
|
36
63
|
return value;
|
|
37
64
|
}
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
65
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZV9yZWdpc3RyeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zZXJpYWxpemUvdHlwZV9yZWdpc3RyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFJcEQ7Ozs7Ozs7Ozs7R0FVRztBQUNILE1BQU0sT0FBTyxZQUFZO0lBR2hCLE1BQU0sQ0FBQyxRQUFRLENBQUMsUUFBZ0IsRUFBRSxXQUEyQjtRQUNsRSxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUVNLE1BQU0sQ0FBQyxjQUFjLENBQUMsUUFBZ0I7UUFDM0MsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNyQyxDQUFDOztBQVJjLHFCQUFRLEdBQWdDLElBQUksR0FBRyxFQUFFLENBQUM7QUFXbkUsU0FBUyxPQUFPLENBQUksS0FBUTtJQUMxQixJQUNFLEtBQUs7UUFDTCxPQUFPLEtBQUssS0FBSyxRQUFRO1FBQ3pCLFVBQVUsSUFBSSxLQUFLO1FBQ25CLFlBQVksQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFDbkQsQ0FBQztRQUNELE9BQU87WUFDTCxJQUFJLEVBQUUsS0FBSyxDQUFDLFdBQVcsQ0FBQyxJQUFJO1lBQzVCLEtBQUssRUFBRSxLQUFLLENBQUMsUUFBUSxFQUFFO1NBQ3hCLENBQUM7SUFDSixDQUFDO0lBRUQsT0FBTyxLQUFLLENBQUM7QUFDZixDQUFDO0FBRUQsZ0VBQWdFO0FBQ2hFLE1BQU0sVUFBVSxRQUFRLENBQUMsQ0FBTSxFQUFFLEtBQVU7SUFDekMsSUFBSSxPQUFPLEtBQUssS0FBSyxRQUFRLEVBQUUsQ0FBQztRQUM5QixPQUFPLEtBQUssQ0FBQyxRQUFRLEVBQUUsR0FBRyxHQUFHLENBQUM7SUFDaEMsQ0FBQztJQUVELElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxJQUFJLEtBQUssRUFBRSxDQUFDO1FBQ3ZDLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ3pCLE9BQU8sS0FBSyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM1QixDQUFDO2FBQU0sSUFBSSxNQUFNLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDbEMsT0FBTyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLEtBQUssQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUMxRCxDQUFDO2FBQU0sQ0FBQztZQUNOLE9BQU8sU0FBUyxDQUFDLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQztRQUNuQyxDQUFDO0lBQ0gsQ0FBQztJQUVELE9BQU8sS0FBSyxDQUFDO0FBQ2YsQ0FBQztBQUVELGtFQUFrRTtBQUNsRSxNQUFNLFVBQVUsT0FBTyxDQUFDLEdBQVcsRUFBRSxLQUFVO0lBQzdDLElBQUksT0FBTyxLQUFLLEtBQUssUUFBUSxJQUFJLFFBQVEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztRQUN0RCxPQUFPLE1BQU0sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUNELElBQUksS0FBSyxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsSUFBSSxNQUFNLElBQUksS0FBSyxJQUFJLE9BQU8sSUFBSSxLQUFLLEVBQUUsQ0FBQztRQUM5RSxNQUFNLFdBQVcsR0FBRyxZQUFZLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM1RCxJQUFJLFdBQVcsRUFBRSxDQUFDO1lBQ2hCLE9BQU8sV0FBVyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDN0MsQ0FBQztJQUNILENBQUM7SUFDRCxPQUFPLEtBQUssQ0FBQztBQUNmLENBQUMifQ==
|
package/dest/string/index.d.ts
CHANGED
|
@@ -4,6 +4,7 @@ export declare function hasHexPrefix(str: string): str is `0x${string}`;
|
|
|
4
4
|
export declare function withoutHexPrefix(str: string): string;
|
|
5
5
|
export declare function isHex(str: string): boolean;
|
|
6
6
|
export declare function hexToBuffer(str: string): Buffer;
|
|
7
|
+
export declare function bufferToHex(buffer: Buffer): `0x${string}`;
|
|
7
8
|
export declare function pluralize(str: string, count: number | bigint, plural?: string): string;
|
|
8
9
|
export declare function count(count: number | bigint, str: string, plural?: string): string;
|
|
9
10
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/string/index.ts"],"names":[],"mappings":";;AAAA,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,IAAI,KAAK,MAAM,EAAE,CAE9D;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEpD;AAED,wBAAgB,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAE1C;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAEtF;AAED,wBAAgB,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAElF"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/string/index.ts"],"names":[],"mappings":";;AAAA,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,IAAI,KAAK,MAAM,EAAE,CAE9D;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEpD;AAED,wBAAgB,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAE1C;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,KAAK,MAAM,EAAE,CAEzD;AAED,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAEtF;AAED,wBAAgB,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAElF"}
|
package/dest/string/index.js
CHANGED
|
@@ -10,10 +10,13 @@ export function isHex(str) {
|
|
|
10
10
|
export function hexToBuffer(str) {
|
|
11
11
|
return Buffer.from(withoutHexPrefix(str), 'hex');
|
|
12
12
|
}
|
|
13
|
+
export function bufferToHex(buffer) {
|
|
14
|
+
return `0x${buffer.toString('hex')}`;
|
|
15
|
+
}
|
|
13
16
|
export function pluralize(str, count, plural) {
|
|
14
17
|
return count === 1 || count === 1n ? str : plural ?? `${str}s`;
|
|
15
18
|
}
|
|
16
19
|
export function count(count, str, plural) {
|
|
17
20
|
return `${count} ${pluralize(str, count, plural)}`;
|
|
18
21
|
}
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
22
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc3RyaW5nL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sVUFBVSxZQUFZLENBQUMsR0FBVztJQUN0QyxPQUFPLEdBQUcsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDOUIsQ0FBQztBQUVELE1BQU0sVUFBVSxnQkFBZ0IsQ0FBQyxHQUFXO0lBQzFDLE9BQU8sWUFBWSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUM7QUFDaEQsQ0FBQztBQUVELE1BQU0sVUFBVSxLQUFLLENBQUMsR0FBVztJQUMvQixPQUFPLHFCQUFxQixDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUN6QyxDQUFDO0FBRUQsTUFBTSxVQUFVLFdBQVcsQ0FBQyxHQUFXO0lBQ3JDLE9BQU8sTUFBTSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQztBQUNuRCxDQUFDO0FBRUQsTUFBTSxVQUFVLFdBQVcsQ0FBQyxNQUFjO0lBQ3hDLE9BQU8sS0FBSyxNQUFNLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7QUFDdkMsQ0FBQztBQUVELE1BQU0sVUFBVSxTQUFTLENBQUMsR0FBVyxFQUFFLEtBQXNCLEVBQUUsTUFBZTtJQUM1RSxPQUFPLEtBQUssS0FBSyxDQUFDLElBQUksS0FBSyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxNQUFNLElBQUksR0FBRyxHQUFHLEdBQUcsQ0FBQztBQUNqRSxDQUFDO0FBRUQsTUFBTSxVQUFVLEtBQUssQ0FBQyxLQUFzQixFQUFFLEdBQVcsRUFBRSxNQUFlO0lBQ3hFLE9BQU8sR0FBRyxLQUFLLElBQUksU0FBUyxDQUFDLEdBQUcsRUFBRSxLQUFLLEVBQUUsTUFBTSxDQUFDLEVBQUUsQ0FBQztBQUNyRCxDQUFDIn0=
|
|
@@ -55,7 +55,7 @@ export function updateInlineTestData(targetFileFromRepoRoot, itemName, value) {
|
|
|
55
55
|
const logger = createConsoleLogger('aztec:testing:test_data');
|
|
56
56
|
const targetFile = getPathToFile(targetFileFromRepoRoot);
|
|
57
57
|
const contents = readFileSync(targetFile, 'utf8').toString();
|
|
58
|
-
const regex = new RegExp(`let ${itemName} =
|
|
58
|
+
const regex = new RegExp(`let ${itemName} =[\\s\\S]*?;`, 'g');
|
|
59
59
|
if (!regex.exec(contents)) {
|
|
60
60
|
throw new Error(`Test data marker for ${itemName} not found in ${targetFile}`);
|
|
61
61
|
}
|
|
@@ -70,4 +70,4 @@ function getPathToFile(targetFileFromRepoRoot) {
|
|
|
70
70
|
}
|
|
71
71
|
return join(repoRoot, targetFileFromRepoRoot);
|
|
72
72
|
}
|
|
73
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
73
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdF9kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Rlc3RpbmcvdGVzdF9kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLGFBQWEsRUFBRSxNQUFNLElBQUksQ0FBQztBQUM3RCxPQUFPLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFFOUMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDeEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRWhELE1BQU0sUUFBUSxHQUFpQyxFQUFFLENBQUM7QUFFbEQsc0RBQXNEO0FBQ3RELE1BQU0sVUFBVSx5QkFBeUI7SUFDdkMsT0FBTyxDQUFDLEdBQUcsRUFBRSxNQUFNLENBQUMsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyx3QkFBd0IsSUFBSSxFQUFFLENBQUMsSUFBSSxPQUFPLE1BQU0sS0FBSyxXQUFXLENBQUM7QUFDN0csQ0FBQztBQUVELHFGQUFxRjtBQUNyRixNQUFNLFVBQVUsWUFBWSxDQUFJLFFBQWdCLEVBQUUsSUFBTztJQUN2RCxJQUFJLENBQUMseUJBQXlCLEVBQUUsRUFBRSxDQUFDO1FBQ2pDLE9BQU87SUFDVCxDQUFDO0lBRUQsSUFBSSxPQUFPLE1BQU0sS0FBSyxXQUFXLEVBQUUsQ0FBQztRQUNsQyxPQUFPO0lBQ1QsQ0FBQztJQUVELE1BQU0sUUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxlQUFlLENBQUM7SUFDbkQsTUFBTSxZQUFZLEdBQUcsR0FBRyxRQUFRLElBQUksUUFBUSxFQUFFLENBQUM7SUFFL0MsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDO1FBQzVCLFFBQVEsQ0FBQyxZQUFZLENBQUMsR0FBRyxFQUFFLENBQUM7SUFD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
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aztec/foundation",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.65.1",
|
|
4
4
|
"packageManager": "yarn@3.4.1",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dest/index.js",
|
|
@@ -98,7 +98,7 @@
|
|
|
98
98
|
]
|
|
99
99
|
},
|
|
100
100
|
"dependencies": {
|
|
101
|
-
"@aztec/bb.js": "0.
|
|
101
|
+
"@aztec/bb.js": "0.65.1",
|
|
102
102
|
"@koa/cors": "^5.0.0",
|
|
103
103
|
"@noble/curves": "^1.2.0",
|
|
104
104
|
"bn.js": "^5.2.1",
|
package/src/abi/abi.ts
CHANGED
|
@@ -230,7 +230,7 @@ export interface FunctionArtifact extends FunctionAbi {
|
|
|
230
230
|
|
|
231
231
|
export const FunctionArtifactSchema = FunctionAbiSchema.and(
|
|
232
232
|
z.object({
|
|
233
|
-
bytecode: schemas.
|
|
233
|
+
bytecode: schemas.Buffer,
|
|
234
234
|
verificationKey: z.string().optional(),
|
|
235
235
|
debugSymbols: z.string(),
|
|
236
236
|
debug: FunctionDebugMetadataSchema.optional(),
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { fromHex, toBigIntBE } from '../bigint-buffer/index.js';
|
|
2
2
|
import { poseidon2HashBytes, randomBytes } from '../crypto/index.js';
|
|
3
3
|
import { type Fr } from '../fields/fields.js';
|
|
4
|
+
import { hexSchemaFor } from '../schemas/utils.js';
|
|
4
5
|
import { BufferReader } from '../serialize/buffer_reader.js';
|
|
5
6
|
import { Selector } from './selector.js';
|
|
6
7
|
|
|
@@ -83,9 +84,10 @@ export class EventSelector extends Selector {
|
|
|
83
84
|
}
|
|
84
85
|
|
|
85
86
|
toJSON() {
|
|
86
|
-
return
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
87
|
+
return this.toString();
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
static get schema() {
|
|
91
|
+
return hexSchemaFor(EventSelector);
|
|
90
92
|
}
|
|
91
93
|
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { fromHex, toBigIntBE } from '../bigint-buffer/index.js';
|
|
2
2
|
import { poseidon2HashBytes, randomBytes } from '../crypto/index.js';
|
|
3
3
|
import { type Fr } from '../fields/fields.js';
|
|
4
|
+
import { hexSchemaFor } from '../schemas/utils.js';
|
|
4
5
|
import { BufferReader } from '../serialize/buffer_reader.js';
|
|
5
6
|
import { FieldReader } from '../serialize/field_reader.js';
|
|
6
7
|
import { TypeRegistry } from '../serialize/type_registry.js';
|
|
@@ -132,10 +133,11 @@ export class FunctionSelector extends Selector {
|
|
|
132
133
|
}
|
|
133
134
|
|
|
134
135
|
toJSON() {
|
|
135
|
-
return
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
136
|
+
return this.toString();
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
static get schema() {
|
|
140
|
+
return hexSchemaFor(FunctionSelector);
|
|
139
141
|
}
|
|
140
142
|
}
|
|
141
143
|
|
package/src/abi/note_selector.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { toBigIntBE } from '../bigint-buffer/index.js';
|
|
2
2
|
import { randomBytes } from '../crypto/index.js';
|
|
3
3
|
import { type Fr } from '../fields/fields.js';
|
|
4
|
+
import { hexSchemaFor } from '../schemas/utils.js';
|
|
4
5
|
import { BufferReader } from '../serialize/buffer_reader.js';
|
|
5
6
|
import { TypeRegistry } from '../serialize/type_registry.js';
|
|
6
7
|
import { Selector } from './selector.js';
|
|
@@ -58,14 +59,11 @@ export class NoteSelector extends Selector {
|
|
|
58
59
|
}
|
|
59
60
|
|
|
60
61
|
toJSON() {
|
|
61
|
-
return
|
|
62
|
-
type: 'NoteSelector',
|
|
63
|
-
value: this.toString(),
|
|
64
|
-
};
|
|
62
|
+
return this.toString();
|
|
65
63
|
}
|
|
66
64
|
|
|
67
|
-
static
|
|
68
|
-
return NoteSelector
|
|
65
|
+
static get schema() {
|
|
66
|
+
return hexSchemaFor(NoteSelector);
|
|
69
67
|
}
|
|
70
68
|
}
|
|
71
69
|
|