@aztec/stdlib 0.0.1-commit.3100065 → 0.0.1-commit.330febf

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 (231) hide show
  1. package/dest/abi/abi.d.ts +32 -7
  2. package/dest/abi/abi.d.ts.map +1 -1
  3. package/dest/abi/abi.js +11 -2
  4. package/dest/abi/contract_artifact.d.ts +1 -14
  5. package/dest/abi/contract_artifact.d.ts.map +1 -1
  6. package/dest/abi/contract_artifact.js +35 -36
  7. package/dest/abi/decoder.d.ts +12 -5
  8. package/dest/abi/decoder.d.ts.map +1 -1
  9. package/dest/abi/decoder.js +18 -21
  10. package/dest/abi/function_call.d.ts +17 -8
  11. package/dest/abi/function_call.d.ts.map +1 -1
  12. package/dest/abi/function_call.js +28 -9
  13. package/dest/avm/avm.d.ts +212 -211
  14. package/dest/avm/avm.d.ts.map +1 -1
  15. package/dest/avm/avm.js +3 -1
  16. package/dest/avm/index.d.ts +1 -6
  17. package/dest/avm/index.d.ts.map +1 -1
  18. package/dest/avm/index.js +0 -5
  19. package/dest/block/l2_block_source.d.ts +1 -1
  20. package/dest/block/l2_block_source.d.ts.map +1 -1
  21. package/dest/block/l2_block_source.js +6 -2
  22. package/dest/block/l2_block_stream/interfaces.d.ts +7 -5
  23. package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -1
  24. package/dest/block/l2_block_stream/l2_block_stream.d.ts +2 -1
  25. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  26. package/dest/block/l2_block_stream/l2_block_stream.js +47 -20
  27. package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
  28. package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
  29. package/dest/block/test/l2_tips_store_test_suite.js +9 -4
  30. package/dest/config/node-rpc-config.d.ts +1 -1
  31. package/dest/config/node-rpc-config.d.ts.map +1 -1
  32. package/dest/config/node-rpc-config.js +1 -1
  33. package/dest/contract/artifact_hash.d.ts +2 -2
  34. package/dest/contract/artifact_hash.d.ts.map +1 -1
  35. package/dest/contract/artifact_hash.js +10 -2
  36. package/dest/contract/contract_class.d.ts +1 -1
  37. package/dest/contract/contract_class.d.ts.map +1 -1
  38. package/dest/contract/contract_class.js +3 -2
  39. package/dest/contract/index.d.ts +1 -2
  40. package/dest/contract/index.d.ts.map +1 -1
  41. package/dest/contract/index.js +0 -1
  42. package/dest/interfaces/api_limit.d.ts +6 -1
  43. package/dest/interfaces/api_limit.d.ts.map +1 -1
  44. package/dest/interfaces/api_limit.js +3 -0
  45. package/dest/interfaces/aztec-node-admin.d.ts +2 -1
  46. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  47. package/dest/interfaces/block-builder.d.ts +7 -2
  48. package/dest/interfaces/block-builder.d.ts.map +1 -1
  49. package/dest/interfaces/configs.d.ts +7 -1
  50. package/dest/interfaces/configs.d.ts.map +1 -1
  51. package/dest/interfaces/configs.js +1 -0
  52. package/dest/interfaces/merkle_tree_operations.d.ts +8 -3
  53. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  54. package/dest/interfaces/private_kernel_prover.d.ts +64 -3
  55. package/dest/interfaces/private_kernel_prover.d.ts.map +1 -1
  56. package/dest/interfaces/proving-job.d.ts +1 -1
  57. package/dest/interfaces/server.d.ts +1 -2
  58. package/dest/interfaces/server.d.ts.map +1 -1
  59. package/dest/interfaces/server.js +0 -1
  60. package/dest/interfaces/tx_provider.d.ts +5 -1
  61. package/dest/interfaces/tx_provider.d.ts.map +1 -1
  62. package/dest/kernel/hints/index.d.ts +1 -2
  63. package/dest/kernel/hints/index.d.ts.map +1 -1
  64. package/dest/kernel/hints/index.js +0 -1
  65. package/dest/kernel/index.d.ts +5 -1
  66. package/dest/kernel/index.d.ts.map +1 -1
  67. package/dest/kernel/index.js +4 -0
  68. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +1 -9
  69. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  70. package/dest/kernel/private_kernel_circuit_public_inputs.js +3 -7
  71. package/dest/kernel/private_kernel_init_4_circuit_private_inputs.d.ts +24 -0
  72. package/dest/kernel/private_kernel_init_4_circuit_private_inputs.d.ts.map +1 -0
  73. package/dest/kernel/private_kernel_init_4_circuit_private_inputs.js +37 -0
  74. package/dest/kernel/private_kernel_init_5_circuit_private_inputs.d.ts +25 -0
  75. package/dest/kernel/private_kernel_init_5_circuit_private_inputs.d.ts.map +1 -0
  76. package/dest/kernel/private_kernel_init_5_circuit_private_inputs.js +39 -0
  77. package/dest/kernel/private_kernel_inner_4_circuit_private_inputs.d.ts +18 -0
  78. package/dest/kernel/private_kernel_inner_4_circuit_private_inputs.d.ts.map +1 -0
  79. package/dest/kernel/private_kernel_inner_4_circuit_private_inputs.js +27 -0
  80. package/dest/kernel/private_kernel_inner_5_circuit_private_inputs.d.ts +19 -0
  81. package/dest/kernel/private_kernel_inner_5_circuit_private_inputs.d.ts.map +1 -0
  82. package/dest/kernel/private_kernel_inner_5_circuit_private_inputs.js +29 -0
  83. package/dest/kernel/private_kernel_prover_output.d.ts +4 -1
  84. package/dest/kernel/private_kernel_prover_output.d.ts.map +1 -1
  85. package/dest/kernel/private_kernel_prover_output.js +4 -1
  86. package/dest/kernel/private_kernel_simulated_output.d.ts +1 -7
  87. package/dest/kernel/private_kernel_simulated_output.d.ts.map +1 -1
  88. package/dest/kernel/private_kernel_simulated_output.js +2 -1
  89. package/dest/kernel/utils/index.d.ts +1 -2
  90. package/dest/kernel/utils/index.d.ts.map +1 -1
  91. package/dest/kernel/utils/index.js +0 -1
  92. package/dest/logs/index.d.ts +3 -1
  93. package/dest/logs/index.d.ts.map +1 -1
  94. package/dest/logs/index.js +2 -0
  95. package/dest/logs/logs_query.d.ts +2 -2
  96. package/dest/logs/message_context.d.ts +17 -0
  97. package/dest/logs/message_context.d.ts.map +1 -0
  98. package/dest/logs/message_context.js +9 -0
  99. package/dest/logs/pending_tagged_log.d.ts +11 -0
  100. package/dest/logs/pending_tagged_log.d.ts.map +1 -0
  101. package/dest/logs/pending_tagged_log.js +4 -0
  102. package/dest/logs/shared_secret_derivation.d.ts +12 -2
  103. package/dest/logs/shared_secret_derivation.d.ts.map +1 -1
  104. package/dest/logs/shared_secret_derivation.js +18 -0
  105. package/dest/noir/index.d.ts +3 -3
  106. package/dest/noir/index.d.ts.map +1 -1
  107. package/dest/p2p/index.d.ts +1 -2
  108. package/dest/p2p/index.d.ts.map +1 -1
  109. package/dest/p2p/index.js +0 -1
  110. package/dest/stats/stats.d.ts +2 -2
  111. package/dest/stats/stats.d.ts.map +1 -1
  112. package/dest/tests/factories.d.ts +1 -27
  113. package/dest/tests/factories.d.ts.map +1 -1
  114. package/dest/tests/factories.js +0 -30
  115. package/dest/tx/hashed_values.d.ts +7 -1
  116. package/dest/tx/hashed_values.d.ts.map +1 -1
  117. package/dest/tx/hashed_values.js +9 -1
  118. package/dest/tx/index.d.ts +1 -2
  119. package/dest/tx/index.d.ts.map +1 -1
  120. package/dest/tx/index.js +0 -1
  121. package/dest/tx/offchain_effect.js +1 -1
  122. package/dest/tx/profiling.d.ts +1 -1
  123. package/dest/tx/profiling.d.ts.map +1 -1
  124. package/dest/tx/profiling.js +2 -0
  125. package/dest/tx/simulated_tx.d.ts +1 -1
  126. package/dest/tx/simulated_tx.d.ts.map +1 -1
  127. package/dest/tx/simulated_tx.js +7 -2
  128. package/dest/tx/tx.d.ts +8 -1
  129. package/dest/tx/tx.d.ts.map +1 -1
  130. package/dest/tx/tx.js +9 -3
  131. package/dest/validators/errors.d.ts +16 -1
  132. package/dest/validators/errors.d.ts.map +1 -1
  133. package/dest/validators/errors.js +12 -0
  134. package/dest/world-state/world_state_revision.d.ts +1 -18
  135. package/dest/world-state/world_state_revision.d.ts.map +1 -1
  136. package/dest/world-state/world_state_revision.js +0 -20
  137. package/package.json +8 -8
  138. package/src/abi/abi.ts +32 -4
  139. package/src/abi/contract_artifact.ts +40 -35
  140. package/src/abi/decoder.ts +20 -24
  141. package/src/abi/function_call.ts +19 -7
  142. package/src/avm/avm.ts +4 -1
  143. package/src/avm/index.ts +0 -5
  144. package/src/block/l2_block_source.ts +14 -2
  145. package/src/block/l2_block_stream/interfaces.ts +6 -4
  146. package/src/block/l2_block_stream/l2_block_stream.ts +58 -21
  147. package/src/block/test/l2_tips_store_test_suite.ts +5 -0
  148. package/src/config/node-rpc-config.ts +2 -1
  149. package/src/contract/artifact_hash.ts +15 -3
  150. package/src/contract/contract_class.ts +3 -2
  151. package/src/contract/index.ts +0 -1
  152. package/src/gas/README.md +108 -36
  153. package/src/interfaces/api_limit.ts +5 -0
  154. package/src/interfaces/block-builder.ts +6 -1
  155. package/src/interfaces/configs.ts +6 -0
  156. package/src/interfaces/merkle_tree_operations.ts +8 -2
  157. package/src/interfaces/private_kernel_prover.ts +94 -1
  158. package/src/interfaces/server.ts +0 -1
  159. package/src/interfaces/tx_provider.ts +4 -0
  160. package/src/kernel/hints/index.ts +0 -1
  161. package/src/kernel/index.ts +4 -0
  162. package/src/kernel/private_kernel_circuit_public_inputs.ts +0 -7
  163. package/src/kernel/private_kernel_init_4_circuit_private_inputs.ts +52 -0
  164. package/src/kernel/private_kernel_init_5_circuit_private_inputs.ts +55 -0
  165. package/src/kernel/private_kernel_inner_4_circuit_private_inputs.ts +39 -0
  166. package/src/kernel/private_kernel_inner_5_circuit_private_inputs.ts +42 -0
  167. package/src/kernel/private_kernel_prover_output.ts +4 -0
  168. package/src/kernel/private_kernel_reset_dimensions.ts +1 -1
  169. package/src/kernel/private_kernel_simulated_output.ts +0 -7
  170. package/src/kernel/utils/index.ts +0 -1
  171. package/src/logs/index.ts +2 -0
  172. package/src/logs/logs_query.ts +2 -2
  173. package/src/logs/message_context.ts +18 -0
  174. package/src/logs/pending_tagged_log.ts +12 -0
  175. package/src/logs/shared_secret_derivation.ts +18 -1
  176. package/src/noir/index.ts +2 -1
  177. package/src/p2p/index.ts +0 -1
  178. package/src/stats/stats.ts +4 -0
  179. package/src/tests/factories.ts +0 -38
  180. package/src/tx/hashed_values.ts +11 -6
  181. package/src/tx/index.ts +0 -1
  182. package/src/tx/offchain_effect.ts +1 -1
  183. package/src/tx/profiling.ts +2 -0
  184. package/src/tx/simulated_tx.ts +13 -2
  185. package/src/tx/tx.ts +19 -3
  186. package/src/validators/errors.ts +17 -0
  187. package/src/world-state/world_state_revision.ts +0 -33
  188. package/dest/avm/contract_storage_read.d.ts +0 -58
  189. package/dest/avm/contract_storage_read.d.ts.map +0 -1
  190. package/dest/avm/contract_storage_read.js +0 -65
  191. package/dest/avm/contract_storage_update_request.d.ts +0 -65
  192. package/dest/avm/contract_storage_update_request.d.ts.map +0 -1
  193. package/dest/avm/contract_storage_update_request.js +0 -80
  194. package/dest/avm/public_call_stack_item_compressed.d.ts +0 -43
  195. package/dest/avm/public_call_stack_item_compressed.d.ts.map +0 -1
  196. package/dest/avm/public_call_stack_item_compressed.js +0 -70
  197. package/dest/avm/public_data_update_request.d.ts +0 -62
  198. package/dest/avm/public_data_update_request.d.ts.map +0 -1
  199. package/dest/avm/public_data_update_request.js +0 -67
  200. package/dest/avm/public_inner_call_request.d.ts +0 -50
  201. package/dest/avm/public_inner_call_request.d.ts.map +0 -1
  202. package/dest/avm/public_inner_call_request.js +0 -74
  203. package/dest/contract/deployment_info.d.ts +0 -24
  204. package/dest/contract/deployment_info.d.ts.map +0 -1
  205. package/dest/contract/deployment_info.js +0 -3
  206. package/dest/interfaces/prover-coordination.d.ts +0 -15
  207. package/dest/interfaces/prover-coordination.d.ts.map +0 -1
  208. package/dest/interfaces/prover-coordination.js +0 -1
  209. package/dest/kernel/hints/tree_leaf_read_request.d.ts +0 -14
  210. package/dest/kernel/hints/tree_leaf_read_request.d.ts.map +0 -1
  211. package/dest/kernel/hints/tree_leaf_read_request.js +0 -33
  212. package/dest/kernel/utils/optional_number.d.ts +0 -31
  213. package/dest/kernel/utils/optional_number.d.ts.map +0 -1
  214. package/dest/kernel/utils/optional_number.js +0 -42
  215. package/dest/p2p/interface.d.ts +0 -5
  216. package/dest/p2p/interface.d.ts.map +0 -1
  217. package/dest/p2p/interface.js +0 -1
  218. package/dest/tx/validator/empty_validator.d.ts +0 -5
  219. package/dest/tx/validator/empty_validator.d.ts.map +0 -1
  220. package/dest/tx/validator/empty_validator.js +0 -7
  221. package/src/avm/contract_storage_read.ts +0 -77
  222. package/src/avm/contract_storage_update_request.ts +0 -93
  223. package/src/avm/public_call_stack_item_compressed.ts +0 -113
  224. package/src/avm/public_data_update_request.ts +0 -106
  225. package/src/avm/public_inner_call_request.ts +0 -85
  226. package/src/contract/deployment_info.ts +0 -25
  227. package/src/interfaces/prover-coordination.ts +0 -17
  228. package/src/kernel/hints/tree_leaf_read_request.ts +0 -35
  229. package/src/kernel/utils/optional_number.ts +0 -50
  230. package/src/p2p/interface.ts +0 -4
  231. package/src/tx/validator/empty_validator.ts +0 -7
package/dest/abi/abi.d.ts CHANGED
@@ -9,6 +9,13 @@ export interface BasicValue<T extends string, V> {
9
9
  }
10
10
  /** An exported value. */
11
11
  export type AbiValue = BasicValue<'boolean', boolean> | BasicValue<'string', string> | BasicValue<'array', AbiValue[]> | TupleValue | IntegerValue | StructValue;
12
+ /** An exported value together with the name of the global that produced it. */
13
+ export interface AbiNamedValue {
14
+ /** The name of the exported global. */
15
+ name: string;
16
+ /** The exported value. */
17
+ value: AbiValue;
18
+ }
12
19
  export declare const AbiValueSchema: z.ZodType<AbiValue>;
13
20
  export type TypedStructFieldValue<T> = {
14
21
  name: string;
@@ -120,13 +127,27 @@ export interface FunctionAbi {
120
127
  isStatic: boolean;
121
128
  /** Function parameters. */
122
129
  parameters: ABIParameter[];
123
- /** The types of the return values. */
124
- returnTypes: AbiType[];
130
+ /** The type of the value the function returns, or undefined if it returns nothing. */
131
+ returnType?: AbiType;
132
+ /**
133
+ * The same type as `returnType`, as a list that is either:
134
+ * - a single entry, when the function returns something. Multiple return values are expressed as a single `tuple`
135
+ * type, so this never holds more than one entry.
136
+ * - empty, when the function returns nothing.
137
+ *
138
+ * @deprecated Read it through {@link getFunctionReturnType}.
139
+ */
140
+ returnTypes?: AbiType[];
125
141
  /** The types of the errors that the function can throw. */
126
142
  errorTypes: Partial<Record<string, AbiErrorType>>;
127
143
  /** Whether the function is flagged as an initializer. */
128
144
  isInitializer: boolean;
129
145
  }
146
+ /**
147
+ * The type a function returns, or undefined if it returns nothing. Falls back to the deprecated `returnTypes` so that
148
+ * artifacts serialized before `returnType` existed still resolve.
149
+ */
150
+ export declare function getFunctionReturnType(abi: Pick<FunctionAbi, 'returnType' | 'returnTypes'>): AbiType | undefined;
130
151
  export declare const FunctionAbiSchema: z.ZodObject<{
131
152
  name: z.ZodString;
132
153
  functionType: z.ZodEnum<typeof FunctionType>;
@@ -142,7 +163,8 @@ export declare const FunctionAbiSchema: z.ZodObject<{
142
163
  public: "public";
143
164
  }>;
144
165
  }, z.core.$strip>>;
145
- returnTypes: z.ZodArray<z.ZodType<AbiType, unknown, z.core.$ZodTypeInternals<AbiType, unknown>>>;
166
+ returnType: z.ZodOptional<z.ZodType<AbiType, unknown, z.core.$ZodTypeInternals<AbiType, unknown>>>;
167
+ returnTypes: z.ZodOptional<z.ZodArray<z.ZodType<AbiType, unknown, z.core.$ZodTypeInternals<AbiType, unknown>>>>;
146
168
  errorTypes: z.ZodRecord<z.ZodString, z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
147
169
  error_kind: z.ZodLiteral<"string">;
148
170
  string: z.ZodString;
@@ -217,7 +239,8 @@ export declare const FunctionArtifactSchema: z.ZodIntersection<z.ZodObject<{
217
239
  public: "public";
218
240
  }>;
219
241
  }, z.core.$strip>>;
220
- returnTypes: z.ZodArray<z.ZodType<AbiType, unknown, z.core.$ZodTypeInternals<AbiType, unknown>>>;
242
+ returnType: z.ZodOptional<z.ZodType<AbiType, unknown, z.core.$ZodTypeInternals<AbiType, unknown>>>;
243
+ returnTypes: z.ZodOptional<z.ZodArray<z.ZodType<AbiType, unknown, z.core.$ZodTypeInternals<AbiType, unknown>>>>;
221
244
  errorTypes: z.ZodRecord<z.ZodString, z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
222
245
  error_kind: z.ZodLiteral<"string">;
223
246
  string: z.ZodString;
@@ -361,7 +384,8 @@ export declare const ContractArtifactSchema: z.ZodObject<{
361
384
  public: "public";
362
385
  }>;
363
386
  }, z.core.$strip>>;
364
- returnTypes: z.ZodArray<z.ZodType<AbiType, unknown, z.core.$ZodTypeInternals<AbiType, unknown>>>;
387
+ returnType: z.ZodOptional<z.ZodType<AbiType, unknown, z.core.$ZodTypeInternals<AbiType, unknown>>>;
388
+ returnTypes: z.ZodOptional<z.ZodArray<z.ZodType<AbiType, unknown, z.core.$ZodTypeInternals<AbiType, unknown>>>>;
365
389
  errorTypes: z.ZodRecord<z.ZodString, z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
366
390
  error_kind: z.ZodLiteral<"string">;
367
391
  string: z.ZodString;
@@ -418,7 +442,8 @@ export declare const ContractArtifactSchema: z.ZodObject<{
418
442
  public: "public";
419
443
  }>;
420
444
  }, z.core.$strip>>;
421
- returnTypes: z.ZodArray<z.ZodType<AbiType, unknown, z.core.$ZodTypeInternals<AbiType, unknown>>>;
445
+ returnType: z.ZodOptional<z.ZodType<AbiType, unknown, z.core.$ZodTypeInternals<AbiType, unknown>>>;
446
+ returnTypes: z.ZodOptional<z.ZodArray<z.ZodType<AbiType, unknown, z.core.$ZodTypeInternals<AbiType, unknown>>>>;
422
447
  errorTypes: z.ZodRecord<z.ZodString, z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
423
448
  error_kind: z.ZodLiteral<"string">;
424
449
  string: z.ZodString;
@@ -487,4 +512,4 @@ export declare function emptyFunctionAbi(): FunctionAbi;
487
512
  export declare function emptyFunctionArtifact(): FunctionArtifact;
488
513
  export declare function emptyContractArtifact(): ContractArtifact;
489
514
  export {};
490
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJpLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYWJpL2FiaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEtBQUssRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUt6RCxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sS0FBSyxDQUFDO0FBR3hCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRTFELHFCQUFxQjtBQUNyQixNQUFNLFdBQVcsVUFBVSxDQUFDLENBQUMsU0FBUyxNQUFNLEVBQUUsQ0FBQztJQUM3Qyw2QkFBNkI7SUFDN0IsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUNSLEtBQUssRUFBRSxDQUFDLENBQUM7Q0FDVjtBQUlELHlCQUF5QjtBQUN6QixNQUFNLE1BQU0sUUFBUSxHQUNoQixVQUFVLENBQUMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxHQUM5QixVQUFVLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxHQUM1QixVQUFVLENBQUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxDQUFDLEdBQy9CLFVBQVUsR0FDVixZQUFZLEdBQ1osV0FBVyxDQUFDO0FBRWhCLGVBQU8sTUFBTSxjQUFjLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBVTdDLENBQUM7QUFFSCxNQUFNLE1BQU0scUJBQXFCLENBQUMsQ0FBQyxJQUFJO0lBQUUsSUFBSSxFQUFFLE1BQU0sQ0FBQztJQUFDLEtBQUssRUFBRSxDQUFDLENBQUE7Q0FBRSxDQUFDO0FBRWxFLE1BQU0sV0FBVyxXQUFXO0lBQzFCLElBQUksRUFBRSxRQUFRLENBQUM7SUFDZixNQUFNLEVBQUUscUJBQXFCLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztDQUMzQztBQUVELE1BQU0sV0FBVyxVQUFVO0lBQ3pCLElBQUksRUFBRSxPQUFPLENBQUM7SUFDZCxNQUFNLEVBQUUsUUFBUSxFQUFFLENBQUM7Q0FDcEI7QUFFRCxN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
515
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJpLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYWJpL2FiaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEtBQUssRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUt6RCxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sS0FBSyxDQUFDO0FBR3hCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRTFELHFCQUFxQjtBQUNyQixNQUFNLFdBQVcsVUFBVSxDQUFDLENBQUMsU0FBUyxNQUFNLEVBQUUsQ0FBQztJQUM3Qyw2QkFBNkI7SUFDN0IsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUNSLEtBQUssRUFBRSxDQUFDLENBQUM7Q0FDVjtBQUlELHlCQUF5QjtBQUN6QixNQUFNLE1BQU0sUUFBUSxHQUNoQixVQUFVLENBQUMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxHQUM5QixVQUFVLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxHQUM1QixVQUFVLENBQUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxDQUFDLEdBQy9CLFVBQVUsR0FDVixZQUFZLEdBQ1osV0FBVyxDQUFDO0FBRWhCLCtFQUErRTtBQUMvRSxNQUFNLFdBQVcsYUFBYTtJQUM1Qix1Q0FBdUM7SUFDdkMsSUFBSSxFQUFFLE1BQU0sQ0FBQztJQUNiLDBCQUEwQjtJQUMxQixLQUFLLEVBQUUsUUFBUSxDQUFDO0NBQ2pCO0FBRUQsZUFBTyxNQUFNLGNBQWMsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FVN0MsQ0FBQztBQUVILE1BQU0sTUFBTSxxQkFBcUIsQ0FBQyxDQUFDLElBQUk7SUFBRSxJQUFJLEVBQUUsTUFBTSxDQUFDO0lBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQTtDQUFFLENBQUM7QUFFbEUsTUFBTSxXQUFXLFdBQVc7SUFDMUIsSUFBSSxFQUFFLFFBQVEsQ0FBQztJQUNmLE1BQU0sRUFBRSxxQkFBcUIsQ0FB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
@@ -1 +1 @@
1
- {"version":3,"file":"abi.d.ts","sourceRoot":"","sources":["../../src/abi/abi.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"abi.d.ts","sourceRoot":"","sources":["../../src/abi/abi.ts"],"names":[],"mappings":"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"}
package/dest/abi/abi.js CHANGED
@@ -102,6 +102,15 @@ const AbiErrorTypeSchema = zodFor()(z.union([
102
102
  FunctionType["UTILITY"] = "utility";
103
103
  return FunctionType;
104
104
  }({});
105
+ /**
106
+ * The type a function returns, or undefined if it returns nothing. Falls back to the deprecated `returnTypes` so that
107
+ * artifacts serialized before `returnType` existed still resolve.
108
+ */ export function getFunctionReturnType(abi) {
109
+ if (abi.returnTypes !== undefined && abi.returnTypes.length > 1) {
110
+ throw new Error(`Expected at most one return type, got ${abi.returnTypes.length}`);
111
+ }
112
+ return abi.returnType ?? abi.returnTypes?.[0];
113
+ }
105
114
  export const FunctionAbiSchema = z.object({
106
115
  name: z.string(),
107
116
  functionType: z.nativeEnum(FunctionType),
@@ -113,7 +122,8 @@ export const FunctionAbiSchema = z.object({
113
122
  type: AbiTypeSchema,
114
123
  visibility: z.enum(ABIParameterVisibility)
115
124
  })),
116
- returnTypes: z.array(AbiTypeSchema),
125
+ returnType: AbiTypeSchema.optional(),
126
+ returnTypes: z.array(AbiTypeSchema).optional(),
117
127
  errorTypes: z.record(z.string(), AbiErrorTypeSchema.optional())
118
128
  });
119
129
  export const FunctionDebugMetadataSchema = z.object({
@@ -303,7 +313,6 @@ export function emptyFunctionAbi() {
303
313
  isOnlySelf: false,
304
314
  isStatic: false,
305
315
  parameters: [],
306
- returnTypes: [],
307
316
  errorTypes: {},
308
317
  isInitializer: false
309
318
  };
@@ -19,19 +19,6 @@ export declare function contractArtifactFromBuffer(buffer: Buffer): ContractArti
19
19
  * @returns A valid contract artifact instance.
20
20
  */
21
21
  export declare function loadContractArtifact(input: NoirCompiledContract): ContractArtifact;
22
- /**
23
- * Like {@link loadContractArtifact}, but fully validates an already-processed artifact against the
24
- * contract artifact schema before returning it. Use when loading an artifact from untrusted or
25
- * external JSON (e.g. a file path passed to the CLI), so a malformed artifact is rejected up-front
26
- * with a clear schema error instead of surfacing as an opaque failure later during deployment.
27
- *
28
- * `loadContractArtifact` only runs the shallow `isContractArtifact` shape check on already-processed
29
- * artifacts; raw nargo output is validated via `generateContractArtifact` regardless. The returned
30
- * object is identical to `loadContractArtifact`'s; the schema parse is used purely for validation.
31
- * @param input - Input object as generated by nargo compile, or an already-processed artifact.
32
- * @returns A valid contract artifact instance.
33
- */
34
- export declare function loadContractArtifactWithValidation(input: NoirCompiledContract): ContractArtifact;
35
22
  /**
36
23
  * Gets nargo build output and returns a valid contract artifact instance.
37
24
  * Differs from loadContractArtifact() by retaining all bytecode.
@@ -46,4 +33,4 @@ type NoirCompiledContractFunction = NoirCompiledContract['functions'][number];
46
33
  */
47
34
  export declare function retainBytecode(input: NoirCompiledContractFunction | FunctionArtifact): boolean;
48
35
  export {};
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJhY3RfYXJ0aWZhY3QuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hYmkvY29udHJhY3RfYXJ0aWZhY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQU9MLEtBQUssb0JBQW9CLEVBQzFCLE1BQU0sa0JBQWtCLENBQUM7QUFDMUIsT0FBTyxFQU1MLEtBQUssZ0JBQWdCLEVBSXJCLEtBQUssZ0JBQWdCLEVBS3RCLE1BQU0sVUFBVSxDQUFDO0FBRWxCOzs7O0dBSUc7QUFDSCx3QkFBZ0Isd0JBQXdCLENBQUMsUUFBUSxFQUFFLGdCQUFnQixHQUFHLE1BQU0sQ0FFM0U7QUFFRDs7OztHQUlHO0FBQ0gsd0JBQWdCLDBCQUEwQixDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsZ0JBQWdCLENBRTNFO0FBRUQ7Ozs7O0dBS0c7QUFDSCx3QkFBZ0Isb0JBQW9CLENBQUMsS0FBSyxFQUFFLG9CQUFvQixHQUFHLGdCQUFnQixDQVNsRjtBQUVEOzs7Ozs7Ozs7OztHQVdHO0FBQ0gsd0JBQWdCLGtDQUFrQyxDQUFDLEtBQUssRUFBRSxvQkFBb0IsR0FBRyxnQkFBZ0IsQ0FLaEc7QUFFRDs7Ozs7R0FLRztBQUNILHdCQUFnQiw2QkFBNkIsQ0FBQyxLQUFLLEVBQUUsb0JBQW9CLEdBQUcsZ0JBQWdCLENBRTNGO0FBK0RELHlEQUF5RDtBQUN6RCxLQUFLLDRCQUE0QixHQUFHLG9CQUFvQixDQUFDLFdBQVcsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBRTlFOztHQUVHO0FBQ0gsd0JBQWdCLGNBQWMsQ0FBQyxLQUFLLEVBQUUsNEJBQTRCLEdBQUcsZ0JBQWdCLEdBQUcsT0FBTyxDQUk5RiJ9
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJhY3RfYXJ0aWZhY3QuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hYmkvY29udHJhY3RfYXJ0aWZhY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQU9MLEtBQUssb0JBQW9CLEVBQzFCLE1BQU0sa0JBQWtCLENBQUM7QUFDMUIsT0FBTyxFQVFMLEtBQUssZ0JBQWdCLEVBSXJCLEtBQUssZ0JBQWdCLEVBS3RCLE1BQU0sVUFBVSxDQUFDO0FBRWxCOzs7O0dBSUc7QUFDSCx3QkFBZ0Isd0JBQXdCLENBQUMsUUFBUSxFQUFFLGdCQUFnQixHQUFHLE1BQU0sQ0FFM0U7QUFFRDs7OztHQUlHO0FBQ0gsd0JBQWdCLDBCQUEwQixDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsZ0JBQWdCLENBRTNFO0FBRUQ7Ozs7O0dBS0c7QUFDSCx3QkFBZ0Isb0JBQW9CLENBQUMsS0FBSyxFQUFFLG9CQUFvQixHQUFHLGdCQUFnQixDQVNsRjtBQUVEOzs7OztHQUtHO0FBQ0gsd0JBQWdCLDZCQUE2QixDQUFDLEtBQUssRUFBRSxvQkFBb0IsR0FBRyxnQkFBZ0IsQ0FFM0Y7QUErREQseURBQXlEO0FBQ3pELEtBQUssNEJBQTRCLEdBQUcsb0JBQW9CLENBQUMsV0FBVyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUM7QUFFOUU7O0dBRUc7QUFDSCx3QkFBZ0IsY0FBYyxDQUFDLEtBQUssRUFBRSw0QkFBNEIsR0FBRyxnQkFBZ0IsR0FBRyxPQUFPLENBSTlGIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"contract_artifact.d.ts","sourceRoot":"","sources":["../../src/abi/contract_artifact.ts"],"names":[],"mappings":"AAEA,OAAO,EAOL,KAAK,oBAAoB,EAC1B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAML,KAAK,gBAAgB,EAIrB,KAAK,gBAAgB,EAKtB,MAAM,UAAU,CAAC;AAElB;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,gBAAgB,GAAG,MAAM,CAE3E;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB,CAE3E;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,oBAAoB,GAAG,gBAAgB,CASlF;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,kCAAkC,CAAC,KAAK,EAAE,oBAAoB,GAAG,gBAAgB,CAKhG;AAED;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,oBAAoB,GAAG,gBAAgB,CAE3F;AA+DD,yDAAyD;AACzD,KAAK,4BAA4B,GAAG,oBAAoB,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC;AAE9E;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,4BAA4B,GAAG,gBAAgB,GAAG,OAAO,CAI9F"}
1
+ {"version":3,"file":"contract_artifact.d.ts","sourceRoot":"","sources":["../../src/abi/contract_artifact.ts"],"names":[],"mappings":"AAEA,OAAO,EAOL,KAAK,oBAAoB,EAC1B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAQL,KAAK,gBAAgB,EAIrB,KAAK,gBAAgB,EAKtB,MAAM,UAAU,CAAC;AAElB;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,gBAAgB,GAAG,MAAM,CAE3E;AAED;;;;GAIG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB,CAE3E;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,oBAAoB,GAAG,gBAAgB,CASlF;AAED;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,oBAAoB,GAAG,gBAAgB,CAE3F;AA+DD,yDAAyD;AACzD,KAAK,4BAA4B,GAAG,oBAAoB,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC;AAE9E;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,4BAA4B,GAAG,gBAAgB,GAAG,OAAO,CAI9F"}
@@ -33,23 +33,6 @@ import { ARTIFACT_VERSION_BEFORE_INJECTION, ContractArtifactSchema, FunctionType
33
33
  }
34
34
  return generateContractArtifact(input);
35
35
  }
36
- /**
37
- * Like {@link loadContractArtifact}, but fully validates an already-processed artifact against the
38
- * contract artifact schema before returning it. Use when loading an artifact from untrusted or
39
- * external JSON (e.g. a file path passed to the CLI), so a malformed artifact is rejected up-front
40
- * with a clear schema error instead of surfacing as an opaque failure later during deployment.
41
- *
42
- * `loadContractArtifact` only runs the shallow `isContractArtifact` shape check on already-processed
43
- * artifacts; raw nargo output is validated via `generateContractArtifact` regardless. The returned
44
- * object is identical to `loadContractArtifact`'s; the schema parse is used purely for validation.
45
- * @param input - Input object as generated by nargo compile, or an already-processed artifact.
46
- * @returns A valid contract artifact instance.
47
- */ export function loadContractArtifactWithValidation(input) {
48
- if (isContractArtifact(input)) {
49
- ContractArtifactSchema.parse(input);
50
- }
51
- return loadContractArtifact(input);
52
- }
53
36
  /**
54
37
  * Gets nargo build output and returns a valid contract artifact instance.
55
38
  * Differs from loadContractArtifact() by retaining all bytecode.
@@ -138,11 +121,9 @@ import { ARTIFACT_VERSION_BEFORE_INJECTION, ContractArtifactSchema, FunctionType
138
121
  if (hasKernelFunctionInputs(parameters)) {
139
122
  parameters = parameters.slice(1);
140
123
  }
141
- let returnTypes = [];
124
+ let returnType;
142
125
  if (functionType === FunctionType.UTILITY) {
143
- returnTypes = fn.abi.return_type ? [
144
- fn.abi.return_type.abi_type
145
- ] : returnTypes;
126
+ returnType = fn.abi.return_type?.abi_type;
146
127
  } else {
147
128
  const pathToFind = `${contract.name}::${fn.name}_abi`;
148
129
  const abiStructs = contract.outputs.structs['functions'];
@@ -151,12 +132,7 @@ import { ARTIFACT_VERSION_BEFORE_INJECTION, ContractArtifactSchema, FunctionType
151
132
  if (returnStruct.kind !== 'struct') {
152
133
  throw new Error('Could not generate contract function artifact');
153
134
  }
154
- const returnTypeField = returnStruct.fields.find((field)=>field.name === 'return_type');
155
- if (returnTypeField) {
156
- returnTypes = [
157
- returnTypeField.type
158
- ];
159
- }
135
+ returnType = returnStruct.fields.find((field)=>field.name === 'return_type')?.type;
160
136
  }
161
137
  }
162
138
  return {
@@ -166,7 +142,12 @@ import { ARTIFACT_VERSION_BEFORE_INJECTION, ContractArtifactSchema, FunctionType
166
142
  isStatic,
167
143
  isInitializer: fn.custom_attributes.includes(AZTEC_INITIALIZER_ATTRIBUTE),
168
144
  parameters,
169
- returnTypes,
145
+ returnType,
146
+ // Old consumers expect `returnTypes` property, not `returnType`. So we write both down for now, until we can
147
+ // safely remove the old version.
148
+ returnTypes: returnType ? [
149
+ returnType
150
+ ] : [],
170
151
  errorTypes: fn.abi.error_types,
171
152
  ...fn.assert_messages ? {
172
153
  assertMessages: fn.assert_messages
@@ -213,16 +194,20 @@ function getFunctionType(fn) {
213
194
  }
214
195
  /**
215
196
  * Generates a storage layout for the contract artifact.
216
- * @param input - The compiled noir contract to get storage layout for
197
+ * @param contractName - The name of the compiled Noir contract.
198
+ * @param globals - The normalized globals exported by the contract.
217
199
  * @returns A storage layout for the contract.
218
- */ function getStorageLayout(input) {
200
+ */ function getStorageLayout(contractName, globals) {
219
201
  // If another contract is imported by the main contract, its storage layout its going to also show up here.
220
202
  // The layout export includes the contract name, so here we can find the one that belongs to the current one and
221
203
  // ignore the rest.
222
- const storageExports = input.outputs.globals.storage ? input.outputs.globals.storage : [];
204
+ const storageExports = globals.storage ?? [];
223
205
  const storageForContract = storageExports.find((storageExport)=>{
206
+ if (storageExport.kind !== 'struct') {
207
+ return false;
208
+ }
224
209
  const contractNameField = storageExport.fields.find((field)=>field.name === 'contract_name')?.value;
225
- return contractNameField.value === input.name;
210
+ return contractNameField.value === contractName;
226
211
  });
227
212
  const storageFields = storageForContract ? storageForContract.fields.find((field)=>field.name == 'fields').value.fields : [];
228
213
  if (storageFields.length === 0) {
@@ -237,6 +222,18 @@ function getFunctionType(fn) {
237
222
  return acc;
238
223
  }, {});
239
224
  }
225
+ function isAbiNamedValue(value) {
226
+ return 'name' in value;
227
+ }
228
+ function normalizeContractOutputs(outputs) {
229
+ return {
230
+ structs: outputs.structs,
231
+ globals: Object.fromEntries(Object.entries(outputs.globals).map(([tag, values])=>[
232
+ tag,
233
+ values.map((value)=>isAbiNamedValue(value) ? value.value : value)
234
+ ]))
235
+ };
236
+ }
240
237
  /**
241
238
  * Given a post-processed Nargo output defined as `contract` generates an Aztec-compatible contract artifact.
242
239
  *
@@ -246,13 +243,14 @@ function getFunctionType(fn) {
246
243
  if (!contract.transpiled) {
247
244
  throw new Error("Contract's public bytecode has not been transpiled");
248
245
  }
246
+ const outputs = normalizeContractOutputs(contract.outputs);
249
247
  return ContractArtifactSchema.parse({
250
248
  name: contract.name,
251
249
  aztecVersion: contract.aztec_version,
252
250
  functions: contract.functions.filter((f)=>retainBytecode(f)).map((f)=>generateFunctionArtifact(f, contract)),
253
251
  nonDispatchPublicFunctions: contract.functions.filter((f)=>!retainBytecode(f)).map((f)=>generateFunctionAbi(f, contract)),
254
- outputs: contract.outputs,
255
- storageLayout: getStorageLayout(contract),
252
+ outputs,
253
+ storageLayout: getStorageLayout(contract.name, outputs.globals),
256
254
  fileMap: contract.file_map
257
255
  });
258
256
  } catch (err) {
@@ -265,13 +263,14 @@ function getFunctionType(fn) {
265
263
  * Retains all public bytecode.
266
264
  */ function generateContractArtifactForPublic(contract) {
267
265
  try {
266
+ const outputs = normalizeContractOutputs(contract.outputs);
268
267
  return ContractArtifactSchema.parse({
269
268
  name: contract.name,
270
269
  aztecVersion: contract.aztec_version,
271
270
  functions: contract.functions.map((f)=>generateFunctionArtifact(f, contract)),
272
271
  nonDispatchPublicFunctions: contract.functions.filter((f)=>!retainBytecode(f)).map((f)=>generateFunctionAbi(f, contract)),
273
- outputs: contract.outputs,
274
- storageLayout: getStorageLayout(contract),
272
+ outputs,
273
+ storageLayout: getStorageLayout(contract.name, outputs.globals),
275
274
  fileMap: contract.file_map
276
275
  });
277
276
  } catch (err) {
@@ -10,10 +10,17 @@ export type AbiDecoded = bigint | boolean | string | AztecAddress | EthAddress |
10
10
  [key: string]: AbiDecoded;
11
11
  } | undefined;
12
12
  /**
13
- * Decodes values in a flattened Field array using a provided ABI.
14
- * @param abi - The ABI to use as reference.
13
+ * Decodes the single value a function returns, or undefined if it returns nothing. Multiple return values are expressed
14
+ * as one `tuple` type, so they decode through here too.
15
+ * @param type - The type the function returns.
15
16
  * @param buffer - The flattened Field array to decode.
16
- * @returns
17
17
  */
18
- export declare function decodeFromAbi(typ: AbiType[], buffer: Fr[]): AbiDecoded;
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVjb2Rlci5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FiaS9kZWNvZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFM0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3pELE9BQU8sS0FBSyxFQUFFLE9BQU8sRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUN4QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQVUxRDs7R0FFRztBQUNILE1BQU0sTUFBTSxVQUFVLEdBQ2xCLE1BQU0sR0FDTixPQUFPLEdBQ1AsTUFBTSxHQUNOLFlBQVksR0FDWixVQUFVLEdBQ1YsZ0JBQWdCLEdBQ2hCLEVBQUUsR0FDRixVQUFVLEVBQUUsR0FDWjtJQUFFLENBQUMsR0FBRyxFQUFFLE1BQU0sR0FBRyxVQUFVLENBQUE7Q0FBRSxHQUM3QixTQUFTLENBQUM7QUE2R2Q7Ozs7O0dBS0c7QUFDSCx3QkFBZ0IsYUFBYSxDQUFDLEdBQUcsRUFBRSxPQUFPLEVBQUUsRUFBRSxNQUFNLEVBQUUsRUFBRSxFQUFFLGNBRXpEIn0=
18
+ export declare function decodeFromAbi(type: AbiType | undefined, buffer: Fr[]): AbiDecoded;
19
+ /**
20
+ * Decodes one value per given type, consumed from the buffer in order. Always returns one decoded value per type, so
21
+ * callers can index the result positionally. A function's arguments are encoded this way.
22
+ * @param types - The type of each value, in order.
23
+ * @param buffer - The flattened Field array to decode.
24
+ */
25
+ export declare function decodeEachFromAbi(types: AbiType[], buffer: Fr[]): AbiDecoded[];
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVjb2Rlci5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FiaS9kZWNvZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFM0QsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3pELE9BQU8sS0FBSyxFQUFFLE9BQU8sRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUN4QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQVUxRDs7R0FFRztBQUNILE1BQU0sTUFBTSxVQUFVLEdBQ2xCLE1BQU0sR0FDTixPQUFPLEdBQ1AsTUFBTSxHQUNOLFlBQVksR0FDWixVQUFVLEdBQ1YsZ0JBQWdCLEdBQ2hCLEVBQUUsR0FDRixVQUFVLEVBQUUsR0FDWjtJQUFFLENBQUMsR0FBRyxFQUFFLE1BQU0sR0FBRyxVQUFVLENBQUE7Q0FBRSxHQUM3QixTQUFTLENBQUM7QUE4RmQ7Ozs7O0dBS0c7QUFDSCx3QkFBZ0IsYUFBYSxDQUFDLElBQUksRUFBRSxPQUFPLEdBQUcsU0FBUyxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsR0FBRyxVQUFVLENBRWpGO0FBRUQ7Ozs7O0dBS0c7QUFDSCx3QkFBZ0IsaUJBQWlCLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsR0FBRyxVQUFVLEVBQUUsQ0FHOUUifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"decoder.d.ts","sourceRoot":"","sources":["../../src/abi/decoder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAE3D,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAU1D;;GAEG;AACH,MAAM,MAAM,UAAU,GAClB,MAAM,GACN,OAAO,GACP,MAAM,GACN,YAAY,GACZ,UAAU,GACV,gBAAgB,GAChB,EAAE,GACF,UAAU,EAAE,GACZ;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAAA;CAAE,GAC7B,SAAS,CAAC;AA6Gd;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,cAEzD"}
1
+ {"version":3,"file":"decoder.d.ts","sourceRoot":"","sources":["../../src/abi/decoder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAE3D,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AACxC,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAU1D;;GAEG;AACH,MAAM,MAAM,UAAU,GAClB,MAAM,GACN,OAAO,GACP,MAAM,GACN,YAAY,GACZ,UAAU,GACV,gBAAgB,GAChB,EAAE,GACF,UAAU,EAAE,GACZ;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU,CAAA;CAAE,GAC7B,SAAS,CAAC;AA8Fd;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,OAAO,GAAG,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,UAAU,CAEjF;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,UAAU,EAAE,CAG9E"}
@@ -5,16 +5,14 @@ import { isAztecAddressStruct, isEthAddressStruct, isFunctionSelectorStruct, isO
5
5
  /**
6
6
  * Decodes values using a provided ABI.
7
7
  */ class AbiDecoder {
8
- types;
9
8
  flattened;
10
- constructor(types, flattened){
11
- this.types = types;
9
+ constructor(flattened){
12
10
  this.flattened = flattened;
13
11
  }
14
12
  /**
15
- * Decodes a single return value from field to the given type.
16
- * @param abiType - The type of the return value.
17
- * @returns The decoded return value.
13
+ * Decodes a single value from field to the given type.
14
+ * @param abiType - The type of the value.
15
+ * @returns The decoded value.
18
16
  */ decodeNext(abiType) {
19
17
  switch(abiType.kind){
20
18
  case 'field':
@@ -94,22 +92,21 @@ import { isAztecAddressStruct, isEthAddressStruct, isFunctionSelectorStruct, isO
94
92
  }
95
93
  return field;
96
94
  }
97
- /**
98
- * Decodes all the values for the given ABI.
99
- * The decided value can be simple types, structs or arrays
100
- * @returns The decoded return values.
101
- */ decode() {
102
- if (this.types.length === 1) {
103
- return this.decodeNext(this.types[0]);
104
- }
105
- return this.types.map((type)=>this.decodeNext(type));
106
- }
107
95
  }
108
96
  /**
109
- * Decodes values in a flattened Field array using a provided ABI.
110
- * @param abi - The ABI to use as reference.
97
+ * Decodes the single value a function returns, or undefined if it returns nothing. Multiple return values are expressed
98
+ * as one `tuple` type, so they decode through here too.
99
+ * @param type - The type the function returns.
100
+ * @param buffer - The flattened Field array to decode.
101
+ */ export function decodeFromAbi(type, buffer) {
102
+ return type === undefined ? undefined : new AbiDecoder(buffer.slice()).decodeNext(type);
103
+ }
104
+ /**
105
+ * Decodes one value per given type, consumed from the buffer in order. Always returns one decoded value per type, so
106
+ * callers can index the result positionally. A function's arguments are encoded this way.
107
+ * @param types - The type of each value, in order.
111
108
  * @param buffer - The flattened Field array to decode.
112
- * @returns
113
- */ export function decodeFromAbi(typ, buffer) {
114
- return new AbiDecoder(typ, buffer.slice()).decode();
109
+ */ export function decodeEachFromAbi(types, buffer) {
110
+ const decoder = new AbiDecoder(buffer.slice());
111
+ return types.map((type)=>decoder.decodeNext(type));
115
112
  }
@@ -20,8 +20,8 @@ export declare class FunctionCall {
20
20
  isStatic: boolean;
21
21
  /** The encoded args */
22
22
  args: Fr[];
23
- /** The return type for decoding */
24
- returnTypes: AbiType[];
23
+ /** The type the call returns, for decoding, or undefined if it returns nothing */
24
+ returnType?: AbiType | undefined;
25
25
  constructor(
26
26
  /** The name of the function to call */
27
27
  name: string,
@@ -37,9 +37,9 @@ export declare class FunctionCall {
37
37
  isStatic: boolean,
38
38
  /** The encoded args */
39
39
  args: Fr[],
40
- /** The return type for decoding */
41
- returnTypes: AbiType[]);
42
- static getFields(fields: FieldsOf<FunctionCall>): readonly [string, AztecAddress, FunctionSelector, FunctionType, boolean, boolean, Fr[], AbiType[]];
40
+ /** The type the call returns, for decoding, or undefined if it returns nothing */
41
+ returnType?: AbiType | undefined);
42
+ static getFields(fields: FieldsOf<FunctionCall>): readonly [string, AztecAddress, FunctionSelector, FunctionType, boolean, boolean, Fr[], AbiType | undefined];
43
43
  static from(fields: FieldsOf<FunctionCall>): FunctionCall;
44
44
  static get schema(): z.ZodPipe<z.ZodObject<{
45
45
  name: z.ZodString;
@@ -49,7 +49,8 @@ export declare class FunctionCall {
49
49
  isStatic: z.ZodBoolean;
50
50
  hideMsgSender: z.ZodBoolean;
51
51
  args: z.ZodArray<import("../schemas/index.js").ZodFor<Fr>>;
52
- returnTypes: z.ZodArray<z.ZodType<AbiType, unknown, z.core.$ZodTypeInternals<AbiType, unknown>>>;
52
+ returnType: z.ZodOptional<z.ZodType<AbiType, unknown, z.core.$ZodTypeInternals<AbiType, unknown>>>;
53
+ returnTypes: z.ZodOptional<z.ZodArray<z.ZodType<AbiType, unknown, z.core.$ZodTypeInternals<AbiType, unknown>>>>;
53
54
  }, z.core.$strip>, z.ZodTransform<FunctionCall, {
54
55
  name: string;
55
56
  to: AztecAddress;
@@ -58,8 +59,16 @@ export declare class FunctionCall {
58
59
  isStatic: boolean;
59
60
  hideMsgSender: boolean;
60
61
  args: Fr[];
61
- returnTypes: AbiType[];
62
+ returnType?: AbiType | undefined;
63
+ returnTypes?: AbiType[] | undefined;
62
64
  }>>;
65
+ /**
66
+ * Serializes the deprecated `returnTypes` alongside `returnType`, so that peers that still require the old field can
67
+ * parse calls sent by this version.
68
+ */
69
+ toJSON(): this & {
70
+ returnTypes: AbiType[];
71
+ };
63
72
  isPublicStatic(): boolean;
64
73
  /**
65
74
  * Creates an empty function call.
@@ -67,4 +76,4 @@ export declare class FunctionCall {
67
76
  */
68
77
  static empty(): FunctionCall;
69
78
  }
70
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVuY3Rpb25fY2FsbC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FiaS9mdW5jdGlvbl9jYWxsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3pELE9BQU8sS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXhELE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRXpELE9BQU8sRUFBRSxLQUFLLE9BQU8sRUFBaUIsWUFBWSxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRTFELGtEQUFrRDtBQUNsRCxxQkFBYSxZQUFZO0lBRXJCLHVDQUF1QztJQUNoQyxJQUFJLEVBQUUsTUFBTTtJQUNuQiw2QkFBNkI7SUFDdEIsRUFBRSxFQUFFLFlBQVk7SUFDdkIsZ0NBQWdDO0lBQ3pCLFFBQVEsRUFBRSxnQkFBZ0I7SUFDakMsMkJBQTJCO0lBQ3BCLElBQUksRUFBRSxZQUFZO0lBQ3pCLHFRQUFxUTtJQUM5UCxhQUFhLEVBQUUsT0FBTztJQUM3QiwrREFBK0Q7SUFDeEQsUUFBUSxFQUFFLE9BQU87SUFDeEIsdUJBQXVCO0lBQ2hCLElBQUksRUFBRSxFQUFFLEVBQUU7SUFDakIsbUNBQW1DO0lBQzVCLFdBQVcsRUFBRSxPQUFPLEVBQUU7SUFoQi9CO0lBQ0UsdUNBQXVDO0lBQ2hDLElBQUksRUFBRSxNQUFNO0lBQ25CLDZCQUE2QjtJQUN0QixFQUFFLEVBQUUsWUFBWTtJQUN2QixnQ0FBZ0M7SUFDekIsUUFBUSxFQUFFLGdCQUFnQjtJQUNqQywyQkFBMkI7SUFDcEIsSUFBSSxFQUFFLFlBQVk7SUFDekIscVFBQXFRO0lBQzlQLGFBQWEsRUFBRSxPQUFPO0lBQzdCLCtEQUErRDtJQUN4RCxRQUFRLEVBQUUsT0FBTztJQUN4Qix1QkFBdUI7SUFDaEIsSUFBSSxFQUFFLEVBQUUsRUFBRTtJQUNqQixtQ0FBbUM7SUFDNUIsV0FBVyxFQUFFLE9BQU8sRUFBRSxFQUMzQjtJQUVKLE1BQU0sQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxZQUFZLENBQUMsc0dBVzlDO0lBRUQsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLFlBQVksQ0FBQyxHQUFHLFlBQVksQ0FFeEQ7SUFFRCxNQUFNLEtBQUssTUFBTTs7Ozs7Ozs7Ozs7Ozs7Ozs7O1FBYWhCO0lBRU0sY0FBYyxJQUFJLE9BQU8sQ0FFL0I7SUFFRDs7O09BR0c7SUFDSCxPQUFjLEtBQUssaUJBV2xCO0NBQ0YifQ==
79
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVuY3Rpb25fY2FsbC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FiaS9mdW5jdGlvbl9jYWxsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3pELE9BQU8sS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXhELE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRXpELE9BQU8sRUFBRSxLQUFLLE9BQU8sRUFBaUIsWUFBWSxFQUF5QixNQUFNLFVBQVUsQ0FBQztBQUM1RixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUUxRCxrREFBa0Q7QUFDbEQscUJBQWEsWUFBWTtJQUVyQix1Q0FBdUM7SUFDaEMsSUFBSSxFQUFFLE1BQU07SUFDbkIsNkJBQTZCO0lBQ3RCLEVBQUUsRUFBRSxZQUFZO0lBQ3ZCLGdDQUFnQztJQUN6QixRQUFRLEVBQUUsZ0JBQWdCO0lBQ2pDLDJCQUEyQjtJQUNwQixJQUFJLEVBQUUsWUFBWTtJQUN6QixxUUFBcVE7SUFDOVAsYUFBYSxFQUFFLE9BQU87SUFDN0IsK0RBQStEO0lBQ3hELFFBQVEsRUFBRSxPQUFPO0lBQ3hCLHVCQUF1QjtJQUNoQixJQUFJLEVBQUUsRUFBRSxFQUFFO0lBQ2pCLGtGQUFrRjtJQUMzRSxVQUFVLENBQUM7SUFoQnBCO0lBQ0UsdUNBQXVDO0lBQ2hDLElBQUksRUFBRSxNQUFNO0lBQ25CLDZCQUE2QjtJQUN0QixFQUFFLEVBQUUsWUFBWTtJQUN2QixnQ0FBZ0M7SUFDekIsUUFBUSxFQUFFLGdCQUFnQjtJQUNqQywyQkFBMkI7SUFDcEIsSUFBSSxFQUFFLFlBQVk7SUFDekIscVFBQXFRO0lBQzlQLGFBQWEsRUFBRSxPQUFPO0lBQzdCLCtEQUErRDtJQUN4RCxRQUFRLEVBQUUsT0FBTztJQUN4Qix1QkFBdUI7SUFDaEIsSUFBSSxFQUFFLEVBQUUsRUFBRTtJQUNqQixrRkFBa0Y7SUFDM0UsVUFBVSxDQUFDLHFCQUFTLEVBQ3pCO0lBRUosTUFBTSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLFlBQVksQ0FBQyxnSEFXOUM7SUFFRCxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsWUFBWSxDQUFDLEdBQUcsWUFBWSxDQUV4RDtJQUVELE1BQU0sS0FBSyxNQUFNOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztRQWtCaEI7SUFFRDs7O09BR0c7SUFDSSxNQUFNOztNQUVaO0lBRU0sY0FBYyxJQUFJLE9BQU8sQ0FFL0I7SUFFRDs7O09BR0c7SUFDSCxPQUFjLEtBQUssaUJBVWxCO0NBQ0YifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"function_call.d.ts","sourceRoot":"","sources":["../../src/abi/function_call.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACzD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD,OAAO,EAAE,KAAK,OAAO,EAAiB,YAAY,EAAE,MAAM,UAAU,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE1D,kDAAkD;AAClD,qBAAa,YAAY;IAErB,uCAAuC;IAChC,IAAI,EAAE,MAAM;IACnB,6BAA6B;IACtB,EAAE,EAAE,YAAY;IACvB,gCAAgC;IACzB,QAAQ,EAAE,gBAAgB;IACjC,2BAA2B;IACpB,IAAI,EAAE,YAAY;IACzB,qQAAqQ;IAC9P,aAAa,EAAE,OAAO;IAC7B,+DAA+D;IACxD,QAAQ,EAAE,OAAO;IACxB,uBAAuB;IAChB,IAAI,EAAE,EAAE,EAAE;IACjB,mCAAmC;IAC5B,WAAW,EAAE,OAAO,EAAE;IAhB/B;IACE,uCAAuC;IAChC,IAAI,EAAE,MAAM;IACnB,6BAA6B;IACtB,EAAE,EAAE,YAAY;IACvB,gCAAgC;IACzB,QAAQ,EAAE,gBAAgB;IACjC,2BAA2B;IACpB,IAAI,EAAE,YAAY;IACzB,qQAAqQ;IAC9P,aAAa,EAAE,OAAO;IAC7B,+DAA+D;IACxD,QAAQ,EAAE,OAAO;IACxB,uBAAuB;IAChB,IAAI,EAAE,EAAE,EAAE;IACjB,mCAAmC;IAC5B,WAAW,EAAE,OAAO,EAAE,EAC3B;IAEJ,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,YAAY,CAAC,sGAW9C;IAED,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,YAAY,CAAC,GAAG,YAAY,CAExD;IAED,MAAM,KAAK,MAAM;;;;;;;;;;;;;;;;;;QAahB;IAEM,cAAc,IAAI,OAAO,CAE/B;IAED;;;OAGG;IACH,OAAc,KAAK,iBAWlB;CACF"}
1
+ {"version":3,"file":"function_call.d.ts","sourceRoot":"","sources":["../../src/abi/function_call.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACzD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAEzD,OAAO,EAAE,KAAK,OAAO,EAAiB,YAAY,EAAyB,MAAM,UAAU,CAAC;AAC5F,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE1D,kDAAkD;AAClD,qBAAa,YAAY;IAErB,uCAAuC;IAChC,IAAI,EAAE,MAAM;IACnB,6BAA6B;IACtB,EAAE,EAAE,YAAY;IACvB,gCAAgC;IACzB,QAAQ,EAAE,gBAAgB;IACjC,2BAA2B;IACpB,IAAI,EAAE,YAAY;IACzB,qQAAqQ;IAC9P,aAAa,EAAE,OAAO;IAC7B,+DAA+D;IACxD,QAAQ,EAAE,OAAO;IACxB,uBAAuB;IAChB,IAAI,EAAE,EAAE,EAAE;IACjB,kFAAkF;IAC3E,UAAU,CAAC;IAhBpB;IACE,uCAAuC;IAChC,IAAI,EAAE,MAAM;IACnB,6BAA6B;IACtB,EAAE,EAAE,YAAY;IACvB,gCAAgC;IACzB,QAAQ,EAAE,gBAAgB;IACjC,2BAA2B;IACpB,IAAI,EAAE,YAAY;IACzB,qQAAqQ;IAC9P,aAAa,EAAE,OAAO;IAC7B,+DAA+D;IACxD,QAAQ,EAAE,OAAO;IACxB,uBAAuB;IAChB,IAAI,EAAE,EAAE,EAAE;IACjB,kFAAkF;IAC3E,UAAU,CAAC,qBAAS,EACzB;IAEJ,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,YAAY,CAAC,gHAW9C;IAED,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,YAAY,CAAC,GAAG,YAAY,CAExD;IAED,MAAM,KAAK,MAAM;;;;;;;;;;;;;;;;;;;;QAkBhB;IAED;;;OAGG;IACI,MAAM;;MAEZ;IAEM,cAAc,IAAI,OAAO,CAE/B;IAED;;;OAGG;IACH,OAAc,KAAK,iBAUlB;CACF"}
@@ -1,7 +1,7 @@
1
1
  import { z } from 'zod';
2
2
  import { AztecAddress } from '../aztec-address/index.js';
3
3
  import { schemas } from '../schemas/index.js';
4
- import { AbiTypeSchema, FunctionType } from './abi.js';
4
+ import { AbiTypeSchema, FunctionType, getFunctionReturnType } from './abi.js';
5
5
  import { FunctionSelector } from './function_selector.js';
6
6
  /** A request to call a function on a contract. */ export class FunctionCall {
7
7
  name;
@@ -11,8 +11,8 @@ import { FunctionSelector } from './function_selector.js';
11
11
  hideMsgSender;
12
12
  isStatic;
13
13
  args;
14
- returnTypes;
15
- constructor(/** The name of the function to call */ name, /** The recipient contract */ to, /** The function being called */ selector, /** Type of the function */ type, /** Only applicable for enqueued public function calls. `hideMsgSender = true` will set the msg_sender field (the caller's address) to "null", meaning the public function (and observers around the world) won't know which smart contract address made the call. */ hideMsgSender, /** Whether this call can make modifications to state or not */ isStatic, /** The encoded args */ args, /** The return type for decoding */ returnTypes){
14
+ returnType;
15
+ constructor(/** The name of the function to call */ name, /** The recipient contract */ to, /** The function being called */ selector, /** Type of the function */ type, /** Only applicable for enqueued public function calls. `hideMsgSender = true` will set the msg_sender field (the caller's address) to "null", meaning the public function (and observers around the world) won't know which smart contract address made the call. */ hideMsgSender, /** Whether this call can make modifications to state or not */ isStatic, /** The encoded args */ args, /** The type the call returns, for decoding, or undefined if it returns nothing */ returnType){
16
16
  this.name = name;
17
17
  this.to = to;
18
18
  this.selector = selector;
@@ -20,7 +20,7 @@ import { FunctionSelector } from './function_selector.js';
20
20
  this.hideMsgSender = hideMsgSender;
21
21
  this.isStatic = isStatic;
22
22
  this.args = args;
23
- this.returnTypes = returnTypes;
23
+ this.returnType = returnType;
24
24
  }
25
25
  static getFields(fields) {
26
26
  return [
@@ -31,7 +31,7 @@ import { FunctionSelector } from './function_selector.js';
31
31
  fields.hideMsgSender,
32
32
  fields.isStatic,
33
33
  fields.args,
34
- fields.returnTypes
34
+ fields.returnType
35
35
  ];
36
36
  }
37
37
  static from(fields) {
@@ -46,8 +46,28 @@ import { FunctionSelector } from './function_selector.js';
46
46
  isStatic: z.boolean(),
47
47
  hideMsgSender: z.boolean(),
48
48
  args: z.array(schemas.Fr),
49
- returnTypes: z.array(AbiTypeSchema)
50
- }).transform(FunctionCall.from);
49
+ returnType: AbiTypeSchema.optional(),
50
+ // Old consumers send `returnTypes`, not `returnType`. So we accept both for now, until we can safely remove
51
+ // the old version.
52
+ returnTypes: z.array(AbiTypeSchema).optional()
53
+ }).transform(({ returnType, returnTypes, ...fields })=>FunctionCall.from({
54
+ ...fields,
55
+ returnType: getFunctionReturnType({
56
+ returnType,
57
+ returnTypes
58
+ })
59
+ }));
60
+ }
61
+ /**
62
+ * Serializes the deprecated `returnTypes` alongside `returnType`, so that peers that still require the old field can
63
+ * parse calls sent by this version.
64
+ */ toJSON() {
65
+ return {
66
+ ...this,
67
+ returnTypes: this.returnType ? [
68
+ this.returnType
69
+ ] : []
70
+ };
51
71
  }
52
72
  isPublicStatic() {
53
73
  return this.type === FunctionType.PUBLIC && this.isStatic;
@@ -63,8 +83,7 @@ import { FunctionSelector } from './function_selector.js';
63
83
  type: FunctionType.PUBLIC,
64
84
  hideMsgSender: false,
65
85
  isStatic: false,
66
- args: [],
67
- returnTypes: []
86
+ args: []
68
87
  });
69
88
  }
70
89
  }