@aztec/stdlib 0.0.1-commit.6b113946b → 0.0.1-commit.6bd18f1aa

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 (111) hide show
  1. package/dest/abi/abi.d.ts +138 -1
  2. package/dest/abi/abi.d.ts.map +1 -1
  3. package/dest/abi/abi.js +10 -2
  4. package/dest/abi/buffer.d.ts +14 -4
  5. package/dest/abi/buffer.d.ts.map +1 -1
  6. package/dest/abi/buffer.js +25 -4
  7. package/dest/abi/decoder.d.ts +5 -44
  8. package/dest/abi/decoder.d.ts.map +1 -1
  9. package/dest/abi/decoder.js +12 -67
  10. package/dest/abi/function_selector.js +1 -1
  11. package/dest/abi/function_signature_decoder.d.ts +43 -0
  12. package/dest/abi/function_signature_decoder.d.ts.map +1 -0
  13. package/dest/abi/function_signature_decoder.js +66 -0
  14. package/dest/abi/index.d.ts +2 -1
  15. package/dest/abi/index.d.ts.map +1 -1
  16. package/dest/abi/index.js +1 -0
  17. package/dest/avm/avm.d.ts +300 -300
  18. package/dest/block/l2_block_source.d.ts +5 -3
  19. package/dest/block/l2_block_source.d.ts.map +1 -1
  20. package/dest/contract/index.d.ts +1 -3
  21. package/dest/contract/index.d.ts.map +1 -1
  22. package/dest/contract/index.js +0 -2
  23. package/dest/contract/interfaces/contract_class.d.ts +3 -156
  24. package/dest/contract/interfaces/contract_class.d.ts.map +1 -1
  25. package/dest/contract/interfaces/contract_class.js +1 -28
  26. package/dest/epoch-helpers/index.d.ts +5 -1
  27. package/dest/epoch-helpers/index.d.ts.map +1 -1
  28. package/dest/epoch-helpers/index.js +9 -0
  29. package/dest/file-store/factory.d.ts +4 -3
  30. package/dest/file-store/factory.d.ts.map +1 -1
  31. package/dest/file-store/factory.js +2 -2
  32. package/dest/file-store/http.d.ts +9 -2
  33. package/dest/file-store/http.d.ts.map +1 -1
  34. package/dest/file-store/http.js +20 -9
  35. package/dest/file-store/index.d.ts +2 -1
  36. package/dest/file-store/index.d.ts.map +1 -1
  37. package/dest/hash/hash.d.ts +4 -1
  38. package/dest/hash/hash.d.ts.map +1 -1
  39. package/dest/hash/hash.js +5 -0
  40. package/dest/interfaces/aztec-node-admin.d.ts +1 -4
  41. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  42. package/dest/interfaces/proving-job.d.ts +34 -34
  43. package/dest/interfaces/validator.d.ts +2 -10
  44. package/dest/interfaces/validator.d.ts.map +1 -1
  45. package/dest/interfaces/validator.js +0 -1
  46. package/dest/logs/message_context.d.ts +4 -7
  47. package/dest/logs/message_context.d.ts.map +1 -1
  48. package/dest/logs/message_context.js +23 -9
  49. package/dest/logs/pending_tagged_log.d.ts +2 -3
  50. package/dest/logs/pending_tagged_log.d.ts.map +1 -1
  51. package/dest/logs/pending_tagged_log.js +2 -2
  52. package/dest/logs/shared_secret_derivation.d.ts +11 -10
  53. package/dest/logs/shared_secret_derivation.d.ts.map +1 -1
  54. package/dest/logs/shared_secret_derivation.js +15 -9
  55. package/dest/logs/siloed_tag.d.ts +4 -1
  56. package/dest/logs/siloed_tag.d.ts.map +1 -1
  57. package/dest/logs/siloed_tag.js +7 -3
  58. package/dest/messaging/l1_to_l2_message.d.ts +3 -2
  59. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
  60. package/dest/messaging/l1_to_l2_message.js +11 -13
  61. package/dest/note/note_dao.d.ts +1 -1
  62. package/dest/note/note_dao.d.ts.map +1 -1
  63. package/dest/note/note_dao.js +1 -4
  64. package/dest/proofs/chonk_proof.d.ts +46 -2
  65. package/dest/proofs/chonk_proof.d.ts.map +1 -1
  66. package/dest/proofs/chonk_proof.js +85 -10
  67. package/dest/tests/factories.d.ts +2 -4
  68. package/dest/tests/factories.d.ts.map +1 -1
  69. package/dest/tests/factories.js +0 -27
  70. package/dest/tx/capsule.d.ts +6 -2
  71. package/dest/tx/capsule.d.ts.map +1 -1
  72. package/dest/tx/capsule.js +9 -3
  73. package/dest/tx/simulated_tx.d.ts +109 -1
  74. package/dest/tx/simulated_tx.d.ts.map +1 -1
  75. package/dest/tx/validator/error_texts.d.ts +5 -1
  76. package/dest/tx/validator/error_texts.d.ts.map +1 -1
  77. package/dest/tx/validator/error_texts.js +6 -0
  78. package/package.json +8 -8
  79. package/src/abi/abi.ts +25 -2
  80. package/src/abi/buffer.ts +25 -4
  81. package/src/abi/decoder.ts +23 -78
  82. package/src/abi/function_selector.ts +1 -1
  83. package/src/abi/function_signature_decoder.ts +77 -0
  84. package/src/abi/index.ts +1 -0
  85. package/src/block/l2_block_source.ts +4 -2
  86. package/src/contract/index.ts +0 -2
  87. package/src/contract/interfaces/contract_class.ts +2 -82
  88. package/src/epoch-helpers/index.ts +19 -0
  89. package/src/file-store/factory.ts +13 -4
  90. package/src/file-store/http.ts +29 -10
  91. package/src/file-store/index.ts +1 -0
  92. package/src/hash/hash.ts +5 -0
  93. package/src/interfaces/validator.ts +1 -5
  94. package/src/logs/message_context.ts +17 -7
  95. package/src/logs/pending_tagged_log.ts +1 -3
  96. package/src/logs/shared_secret_derivation.ts +21 -10
  97. package/src/logs/siloed_tag.ts +7 -2
  98. package/src/messaging/l1_to_l2_message.ts +12 -9
  99. package/src/note/note_dao.ts +1 -4
  100. package/src/proofs/chonk_proof.ts +91 -5
  101. package/src/tests/factories.ts +0 -33
  102. package/src/tx/capsule.ts +10 -2
  103. package/src/tx/validator/error_texts.ts +8 -0
  104. package/dest/contract/private_function_membership_proof.d.ts +0 -32
  105. package/dest/contract/private_function_membership_proof.d.ts.map +0 -1
  106. package/dest/contract/private_function_membership_proof.js +0 -124
  107. package/dest/contract/utility_function_membership_proof.d.ts +0 -27
  108. package/dest/contract/utility_function_membership_proof.d.ts.map +0 -1
  109. package/dest/contract/utility_function_membership_proof.js +0 -87
  110. package/src/contract/private_function_membership_proof.ts +0 -167
  111. package/src/contract/utility_function_membership_proof.ts +0 -118
@@ -281,12 +281,30 @@ export declare class SimulationOverrides {
281
281
  files: z.ZodRecord<z.ZodString, z.ZodObject<{
282
282
  source: z.ZodString;
283
283
  path: z.ZodString;
284
+ function_locations: z.ZodArray<z.ZodObject<{
285
+ start: z.ZodNumber;
286
+ name: z.ZodString;
287
+ }, "strip", z.ZodTypeAny, {
288
+ start: number;
289
+ name: string;
290
+ }, {
291
+ start: number;
292
+ name: string;
293
+ }>, "many">;
284
294
  }, "strip", z.ZodTypeAny, {
285
295
  source: string;
286
296
  path: string;
297
+ function_locations: {
298
+ start: number;
299
+ name: string;
300
+ }[];
287
301
  }, {
288
302
  source: string;
289
303
  path: string;
304
+ function_locations: {
305
+ start: number;
306
+ name: string;
307
+ }[];
290
308
  }>>;
291
309
  }, "strip", z.ZodTypeAny, {
292
310
  debugSymbols: {
@@ -308,6 +326,10 @@ export declare class SimulationOverrides {
308
326
  files: Record<string, {
309
327
  source: string;
310
328
  path: string;
329
+ function_locations: {
330
+ start: number;
331
+ name: string;
332
+ }[];
311
333
  }>;
312
334
  }, {
313
335
  debugSymbols: {
@@ -329,6 +351,10 @@ export declare class SimulationOverrides {
329
351
  files: Record<string, {
330
352
  source: string;
331
353
  path: string;
354
+ function_locations: {
355
+ start: number;
356
+ name: string;
357
+ }[];
332
358
  }>;
333
359
  }>>;
334
360
  }, "strip", z.ZodTypeAny, {
@@ -355,6 +381,10 @@ export declare class SimulationOverrides {
355
381
  files: Record<string, {
356
382
  source: string;
357
383
  path: string;
384
+ function_locations: {
385
+ start: number;
386
+ name: string;
387
+ }[];
358
388
  }>;
359
389
  } | undefined;
360
390
  }, {
@@ -381,6 +411,10 @@ export declare class SimulationOverrides {
381
411
  files: Record<string, {
382
412
  source: string;
383
413
  path: string;
414
+ function_locations: {
415
+ start: number;
416
+ name: string;
417
+ }[];
384
418
  }>;
385
419
  } | undefined;
386
420
  }>>, "many">;
@@ -497,12 +531,30 @@ export declare class SimulationOverrides {
497
531
  fileMap: z.ZodRecord<z.ZodNumber, z.ZodObject<{
498
532
  source: z.ZodString;
499
533
  path: z.ZodString;
534
+ function_locations: z.ZodArray<z.ZodObject<{
535
+ start: z.ZodNumber;
536
+ name: z.ZodString;
537
+ }, "strip", z.ZodTypeAny, {
538
+ start: number;
539
+ name: string;
540
+ }, {
541
+ start: number;
542
+ name: string;
543
+ }>, "many">;
500
544
  }, "strip", z.ZodTypeAny, {
501
545
  source: string;
502
546
  path: string;
547
+ function_locations: {
548
+ start: number;
549
+ name: string;
550
+ }[];
503
551
  }, {
504
552
  source: string;
505
553
  path: string;
554
+ function_locations: {
555
+ start: number;
556
+ name: string;
557
+ }[];
506
558
  }>>;
507
559
  }, "strip", z.ZodTypeAny, {
508
560
  name: string;
@@ -552,6 +604,10 @@ export declare class SimulationOverrides {
552
604
  files: Record<string, {
553
605
  source: string;
554
606
  path: string;
607
+ function_locations: {
608
+ start: number;
609
+ name: string;
610
+ }[];
555
611
  }>;
556
612
  } | undefined;
557
613
  })[];
@@ -588,6 +644,10 @@ export declare class SimulationOverrides {
588
644
  fileMap: Record<number, {
589
645
  source: string;
590
646
  path: string;
647
+ function_locations: {
648
+ start: number;
649
+ name: string;
650
+ }[];
591
651
  }>;
592
652
  }, {
593
653
  name: string;
@@ -637,6 +697,10 @@ export declare class SimulationOverrides {
637
697
  files: Record<string, {
638
698
  source: string;
639
699
  path: string;
700
+ function_locations: {
701
+ start: number;
702
+ name: string;
703
+ }[];
640
704
  }>;
641
705
  } | undefined;
642
706
  })[];
@@ -673,6 +737,10 @@ export declare class SimulationOverrides {
673
737
  fileMap: Record<number, {
674
738
  source: string;
675
739
  path: string;
740
+ function_locations: {
741
+ start: number;
742
+ name: string;
743
+ }[];
676
744
  }>;
677
745
  }>;
678
746
  }, "strip", z.ZodTypeAny, {
@@ -735,6 +803,10 @@ export declare class SimulationOverrides {
735
803
  files: Record<string, {
736
804
  source: string;
737
805
  path: string;
806
+ function_locations: {
807
+ start: number;
808
+ name: string;
809
+ }[];
738
810
  }>;
739
811
  } | undefined;
740
812
  })[];
@@ -771,6 +843,10 @@ export declare class SimulationOverrides {
771
843
  fileMap: Record<number, {
772
844
  source: string;
773
845
  path: string;
846
+ function_locations: {
847
+ start: number;
848
+ name: string;
849
+ }[];
774
850
  }>;
775
851
  };
776
852
  }, {
@@ -838,6 +914,10 @@ export declare class SimulationOverrides {
838
914
  files: Record<string, {
839
915
  source: string;
840
916
  path: string;
917
+ function_locations: {
918
+ start: number;
919
+ name: string;
920
+ }[];
841
921
  }>;
842
922
  } | undefined;
843
923
  })[];
@@ -874,6 +954,10 @@ export declare class SimulationOverrides {
874
954
  fileMap: Record<number, {
875
955
  source: string;
876
956
  path: string;
957
+ function_locations: {
958
+ start: number;
959
+ name: string;
960
+ }[];
877
961
  }>;
878
962
  };
879
963
  }>>>;
@@ -938,6 +1022,10 @@ export declare class SimulationOverrides {
938
1022
  files: Record<string, {
939
1023
  source: string;
940
1024
  path: string;
1025
+ function_locations: {
1026
+ start: number;
1027
+ name: string;
1028
+ }[];
941
1029
  }>;
942
1030
  } | undefined;
943
1031
  })[];
@@ -974,6 +1062,10 @@ export declare class SimulationOverrides {
974
1062
  fileMap: Record<number, {
975
1063
  source: string;
976
1064
  path: string;
1065
+ function_locations: {
1066
+ start: number;
1067
+ name: string;
1068
+ }[];
977
1069
  }>;
978
1070
  };
979
1071
  }> | undefined;
@@ -1043,6 +1135,10 @@ export declare class SimulationOverrides {
1043
1135
  files: Record<string, {
1044
1136
  source: string;
1045
1137
  path: string;
1138
+ function_locations: {
1139
+ start: number;
1140
+ name: string;
1141
+ }[];
1046
1142
  }>;
1047
1143
  } | undefined;
1048
1144
  })[];
@@ -1079,6 +1175,10 @@ export declare class SimulationOverrides {
1079
1175
  fileMap: Record<number, {
1080
1176
  source: string;
1081
1177
  path: string;
1178
+ function_locations: {
1179
+ start: number;
1180
+ name: string;
1181
+ }[];
1082
1182
  }>;
1083
1183
  };
1084
1184
  }> | undefined;
@@ -1148,6 +1248,10 @@ export declare class SimulationOverrides {
1148
1248
  files: Record<string, {
1149
1249
  source: string;
1150
1250
  path: string;
1251
+ function_locations: {
1252
+ start: number;
1253
+ name: string;
1254
+ }[];
1151
1255
  }>;
1152
1256
  } | undefined;
1153
1257
  })[];
@@ -1184,6 +1288,10 @@ export declare class SimulationOverrides {
1184
1288
  fileMap: Record<number, {
1185
1289
  source: string;
1186
1290
  path: string;
1291
+ function_locations: {
1292
+ start: number;
1293
+ name: string;
1294
+ }[];
1187
1295
  }>;
1188
1296
  };
1189
1297
  }> | undefined;
@@ -1220,4 +1328,4 @@ export declare class TxSimulationResult {
1220
1328
  * @returns
1221
1329
  */
1222
1330
  export declare function accumulatePrivateReturnValues(executionResult: PrivateExecutionResult): NestedProcessReturnValues;
1223
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltdWxhdGVkX3R4LmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdHgvc2ltdWxhdGVkX3R4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLE1BQU0sRUFBWSxNQUFNLDJCQUEyQixDQUFDO0FBQ2xFLE9BQU8sS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXhELE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEIsT0FBTyxFQUFFLEtBQUssZ0JBQWdCLEVBQTBCLE1BQU0sZUFBZSxDQUFDO0FBQzlFLE9BQU8sRUFDTCxLQUFLLDJCQUEyQixFQUVqQyxNQUFNLDZDQUE2QyxDQUFDO0FBRXJELE9BQU8sS0FBSyxFQUFFLE9BQU8sRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxvQ0FBb0MsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBRTlHLE9BQU8sS0FBSyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzNELE9BQU8sRUFFTCxzQkFBc0IsRUFHdkIsTUFBTSwrQkFBK0IsQ0FBQztBQUN2QyxPQUFPLEVBQUUsS0FBSyxlQUFlLEVBQXlCLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0UsT0FBTyxFQUFFLHlCQUF5QixFQUFFLHNCQUFzQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEcsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQU83QixNQUFNLE1BQU0saUJBQWlCLEdBQUcsTUFBTSxDQUNwQyxNQUFNLEVBQ047SUFBRSxRQUFRLEVBQUUsMkJBQTJCLENBQUM7SUFBQyxRQUFRLEVBQUUsZ0JBQWdCLENBQUE7Q0FBRSxDQUN0RSxDQUFDO0FBTUYscUJBQWEsbUJBQW1CO0lBQ1gsU0FBUyxDQUFDO0lBQTdCLFlBQW1CLFNBQVMsQ0FBQywrQkFBbUIsRUFBSTtJQUVwRCxNQUFNLEtBQUssTUFBTTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O09BYWhCO0NBQ0Y7QUFFRCxxQkFBYSx1QkFBdUI7SUFFekIsc0JBQXNCLEVBQUUsc0JBQXNCO0lBQzlDLFlBQVksRUFBRSxvQ0FBb0M7SUFGM0QsWUFDUyxzQkFBc0IsRUFBRSxzQkFBc0IsRUFDOUMsWUFBWSxFQUFFLG9DQUFvQyxFQUN2RDtJQUVKLHNCQUFzQiw4QkFFckI7SUFFSyxhQUFhLElBQUksT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQVNqQztDQUNGO0FBRUQscUJBQWEsa0JBQWtCO0lBRXBCLHNCQUFzQixFQUFFLHNCQUFzQjtJQUM5QyxZQUFZLEVBQUUsb0NBQW9DO0lBQ2xELFlBQVksQ0FBQztJQUNiLEtBQUssQ0FBQztJQUpmLFlBQ1Msc0JBQXNCLEVBQUUsc0JBQXNCLEVBQzlDLFlBQVksRUFBRSxvQ0FBb0MsRUFDbEQsWUFBWSxDQUFDLG9DQUF3QixFQUNyQyxLQUFLLENBQUMsNkJBQWlCLEVBQzVCO0lBRUosaUVBQWlFO0lBQ2pFLElBQUksZUFBZSxJQUFJLGNBQWMsRUFBRSxDQUV0QztJQUVELElBQUksT0FBTyxJQUFJLE9BQU8sQ0FTckI7SUFFRCxNQUFNLEtBQUssTUFBTSxJQUFJLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQVM5QztJQUVELE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsa0JBQWtCLENBQUMsRUFBRSxTQUFTLEdBQUcsaUJBQWlCLENBQUMsc0JBT3BGO0lBRUQsTUFBTSxDQUFDLDBDQUEwQyxDQUMvQyx1QkFBdUIsRUFBRSx1QkFBdUIsRUFDaEQsWUFBWSxDQUFDLEVBQUUsc0JBQXNCLEVBQ3JDLEtBQUssQ0FBQyxFQUFFLGVBQWUsc0JBUXhCO0lBRUQsT0FBYSxNQUFNLGdDQU1sQjtJQUVELHNCQUFzQiw4QkFFckI7SUFFRCxhQUFhLElBQUksT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUUzQjtJQUVELHFCQUFxQixnQ0FFcEI7Q0FDRjtBQUVEOzs7OztHQUtHO0FBQ0gsd0JBQWdCLDZCQUE2QixDQUFDLGVBQWUsRUFBRSxzQkFBc0IsR0FBRyx5QkFBeUIsQ0FXaEgifQ==
1331
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltdWxhdGVkX3R4LmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdHgvc2ltdWxhdGVkX3R4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLE1BQU0sRUFBWSxNQUFNLDJCQUEyQixDQUFDO0FBQ2xFLE9BQU8sS0FBSyxFQUFFLFFBQVEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXhELE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEIsT0FBTyxFQUFFLEtBQUssZ0JBQWdCLEVBQTBCLE1BQU0sZUFBZSxDQUFDO0FBQzlFLE9BQU8sRUFDTCxLQUFLLDJCQUEyQixFQUVqQyxNQUFNLDZDQUE2QyxDQUFDO0FBRXJELE9BQU8sS0FBSyxFQUFFLE9BQU8sRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxvQ0FBb0MsRUFBRSxNQUFNLHdEQUF3RCxDQUFDO0FBRTlHLE9BQU8sS0FBSyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzNELE9BQU8sRUFFTCxzQkFBc0IsRUFHdkIsTUFBTSwrQkFBK0IsQ0FBQztBQUN2QyxPQUFPLEVBQUUsS0FBSyxlQUFlLEVBQXlCLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0UsT0FBTyxFQUFFLHlCQUF5QixFQUFFLHNCQUFzQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDbEcsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLFNBQVMsQ0FBQztBQU83QixNQUFNLE1BQU0saUJBQWlCLEdBQUcsTUFBTSxDQUNwQyxNQUFNLEVBQ047SUFBRSxRQUFRLEVBQUUsMkJBQTJCLENBQUM7SUFBQyxRQUFRLEVBQUUsZ0JBQWdCLENBQUE7Q0FBRSxDQUN0RSxDQUFDO0FBTUYscUJBQWEsbUJBQW1CO0lBQ1gsU0FBUyxDQUFDO0lBQTdCLFlBQW1CLFNBQVMsQ0FBQywrQkFBbUIsRUFBSTtJQUVwRCxNQUFNLEtBQUssTUFBTTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O09BYWhCO0NBQ0Y7QUFFRCxxQkFBYSx1QkFBdUI7SUFFekIsc0JBQXNCLEVBQUUsc0JBQXNCO0lBQzlDLFlBQVksRUFBRSxvQ0FBb0M7SUFGM0QsWUFDUyxzQkFBc0IsRUFBRSxzQkFBc0IsRUFDOUMsWUFBWSxFQUFFLG9DQUFvQyxFQUN2RDtJQUVKLHNCQUFzQiw4QkFFckI7SUFFSyxhQUFhLElBQUksT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQVNqQztDQUNGO0FBRUQscUJBQWEsa0JBQWtCO0lBRXBCLHNCQUFzQixFQUFFLHNCQUFzQjtJQUM5QyxZQUFZLEVBQUUsb0NBQW9DO0lBQ2xELFlBQVksQ0FBQztJQUNiLEtBQUssQ0FBQztJQUpmLFlBQ1Msc0JBQXNCLEVBQUUsc0JBQXNCLEVBQzlDLFlBQVksRUFBRSxvQ0FBb0MsRUFDbEQsWUFBWSxDQUFDLG9DQUF3QixFQUNyQyxLQUFLLENBQUMsNkJBQWlCLEVBQzVCO0lBRUosaUVBQWlFO0lBQ2pFLElBQUksZUFBZSxJQUFJLGNBQWMsRUFBRSxDQUV0QztJQUVELElBQUksT0FBTyxJQUFJLE9BQU8sQ0FTckI7SUFFRCxNQUFNLEtBQUssTUFBTSxJQUFJLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQVM5QztJQUVELE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsa0JBQWtCLENBQUMsRUFBRSxTQUFTLEdBQUcsaUJBQWlCLENBQUMsc0JBT3BGO0lBRUQsTUFBTSxDQUFDLDBDQUEwQyxDQUMvQyx1QkFBdUIsRUFBRSx1QkFBdUIsRUFDaEQsWUFBWSxDQUFDLEVBQUUsc0JBQXNCLEVBQ3JDLEtBQUssQ0FBQyxFQUFFLGVBQWUsc0JBUXhCO0lBRUQsT0FBYSxNQUFNLGdDQU1sQjtJQUVELHNCQUFzQiw4QkFFckI7SUFFRCxhQUFhLElBQUksT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUUzQjtJQUVELHFCQUFxQixnQ0FFcEI7Q0FDRjtBQUVEOzs7OztHQUtHO0FBQ0gsd0JBQWdCLDZCQUE2QixDQUFDLGVBQWUsRUFBRSxzQkFBc0IsR0FBRyx5QkFBeUIsQ0FXaEgifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"simulated_tx.d.ts","sourceRoot":"","sources":["../../src/tx/simulated_tx.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"simulated_tx.d.ts","sourceRoot":"","sources":["../../src/tx/simulated_tx.ts"],"names":[],"mappings":"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"}
@@ -25,5 +25,9 @@ export declare const TX_ERROR_CONTRACT_CLASS_LOG_SORTING = "Incorrectly sorted c
25
25
  export declare const TX_ERROR_INCORRECT_HASH = "Incorrect tx hash";
26
26
  export declare const TX_ERROR_SIZE_ABOVE_LIMIT = "Transaction size above size limit";
27
27
  export declare const TX_ERROR_BLOCK_HEADER = "Block header not found";
28
+ export declare const TX_ERROR_INCORRECT_CONTRACT_ADDRESS = "Incorrect contract instance deployment address";
29
+ export declare const TX_ERROR_MALFORMED_CONTRACT_INSTANCE_LOG = "Failed to parse contract instance deployment log";
30
+ export declare const TX_ERROR_INCORRECT_CONTRACT_CLASS_ID = "Incorrect contract class id";
31
+ export declare const TX_ERROR_MALFORMED_CONTRACT_CLASS_LOG = "Failed to parse contract class registration log";
28
32
  export declare const TX_ERROR_DURING_VALIDATION = "Unexpected error during validation";
29
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JfdGV4dHMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90eC92YWxpZGF0b3IvZXJyb3JfdGV4dHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsZUFBTyxNQUFNLGlDQUFpQyw2QkFBNkIsQ0FBQztBQUM1RSxlQUFPLE1BQU0sdUNBQXVDLG1DQUFtQyxDQUFDO0FBQ3hGLGVBQU8sTUFBTSwrQkFBK0IsOENBQThDLENBQUM7QUFDM0YsZUFBTyxNQUFNLDJCQUEyQix3RUFBd0UsQ0FBQztBQUdqSCxlQUFPLE1BQU0sbUNBQW1DLHFDQUFxQyxDQUFDO0FBQ3RGLGVBQU8sTUFBTSx3Q0FBd0MsNENBQTRDLENBQUM7QUFDbEcsZUFBTyxNQUFNLHFDQUFxQyw4REFBOEQsQ0FBQztBQUNqSCxlQUFPLE1BQU0sOEJBQThCLCtDQUErQyxDQUFDO0FBQzNGLGVBQU8sTUFBTSxvQ0FBb0MscURBQXFELENBQUM7QUFHdkcsZUFBTyxNQUFNLGtDQUFrQyw4QkFBOEIsQ0FBQztBQUM5RSxlQUFPLE1BQU0sMkJBQTJCLHVCQUF1QixDQUFDO0FBR2hFLGVBQU8sTUFBTSxxQ0FBcUMsaUNBQWlDLENBQUM7QUFDcEYsZUFBTyxNQUFNLDhCQUE4QiwwQkFBMEIsQ0FBQztBQUN0RSxlQUFPLE1BQU0saUNBQWlDLDZCQUE2QixDQUFDO0FBQzVFLGVBQU8sTUFBTSwrQkFBK0IsMENBQTBDLENBQUM7QUFDdkYsZUFBTyxNQUFNLDBDQUEwQyxzQ0FBc0MsQ0FBQztBQUc5RixlQUFPLE1BQU0sc0JBQXNCLGtCQUFrQixDQUFDO0FBR3RELGVBQU8sTUFBTSwyQkFBMkIsdUNBQXVDLENBQUM7QUFDaEYsZUFBTyxNQUFNLGdDQUFnQyw4Q0FBOEMsQ0FBQztBQUM1RixlQUFPLE1BQU0saUNBQWlDLHVEQUF1RCxDQUFDO0FBQ3RHLGVBQU8sTUFBTSxpQ0FBaUMsNkNBQTZDLENBQUM7QUFDNUYsZUFBTyxNQUFNLGtDQUFrQyx5Q0FBeUMsQ0FBQztBQUN6RixlQUFPLE1BQU0sNEJBQTRCLG1DQUFtQyxDQUFDO0FBQzdFLGVBQU8sTUFBTSxtQ0FBbUMsMkNBQTJDLENBQUM7QUFDNUYsZUFBTyxNQUFNLHVCQUF1QixzQkFBc0IsQ0FBQztBQUczRCxlQUFPLE1BQU0seUJBQXlCLHNDQUFzQyxDQUFDO0FBRzdFLGVBQU8sTUFBTSxxQkFBcUIsMkJBQTJCLENBQUM7QUFHOUQsZUFBTyxNQUFNLDBCQUEwQix1Q0FBdUMsQ0FBQyJ9
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JfdGV4dHMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy90eC92YWxpZGF0b3IvZXJyb3JfdGV4dHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsZUFBTyxNQUFNLGlDQUFpQyw2QkFBNkIsQ0FBQztBQUM1RSxlQUFPLE1BQU0sdUNBQXVDLG1DQUFtQyxDQUFDO0FBQ3hGLGVBQU8sTUFBTSwrQkFBK0IsOENBQThDLENBQUM7QUFDM0YsZUFBTyxNQUFNLDJCQUEyQix3RUFBd0UsQ0FBQztBQUdqSCxlQUFPLE1BQU0sbUNBQW1DLHFDQUFxQyxDQUFDO0FBQ3RGLGVBQU8sTUFBTSx3Q0FBd0MsNENBQTRDLENBQUM7QUFDbEcsZUFBTyxNQUFNLHFDQUFxQyw4REFBOEQsQ0FBQztBQUNqSCxlQUFPLE1BQU0sOEJBQThCLCtDQUErQyxDQUFDO0FBQzNGLGVBQU8sTUFBTSxvQ0FBb0MscURBQXFELENBQUM7QUFHdkcsZUFBTyxNQUFNLGtDQUFrQyw4QkFBOEIsQ0FBQztBQUM5RSxlQUFPLE1BQU0sMkJBQTJCLHVCQUF1QixDQUFDO0FBR2hFLGVBQU8sTUFBTSxxQ0FBcUMsaUNBQWlDLENBQUM7QUFDcEYsZUFBTyxNQUFNLDhCQUE4QiwwQkFBMEIsQ0FBQztBQUN0RSxlQUFPLE1BQU0saUNBQWlDLDZCQUE2QixDQUFDO0FBQzVFLGVBQU8sTUFBTSwrQkFBK0IsMENBQTBDLENBQUM7QUFDdkYsZUFBTyxNQUFNLDBDQUEwQyxzQ0FBc0MsQ0FBQztBQUc5RixlQUFPLE1BQU0sc0JBQXNCLGtCQUFrQixDQUFDO0FBR3RELGVBQU8sTUFBTSwyQkFBMkIsdUNBQXVDLENBQUM7QUFDaEYsZUFBTyxNQUFNLGdDQUFnQyw4Q0FBOEMsQ0FBQztBQUM1RixlQUFPLE1BQU0saUNBQWlDLHVEQUF1RCxDQUFDO0FBQ3RHLGVBQU8sTUFBTSxpQ0FBaUMsNkNBQTZDLENBQUM7QUFDNUYsZUFBTyxNQUFNLGtDQUFrQyx5Q0FBeUMsQ0FBQztBQUN6RixlQUFPLE1BQU0sNEJBQTRCLG1DQUFtQyxDQUFDO0FBQzdFLGVBQU8sTUFBTSxtQ0FBbUMsMkNBQTJDLENBQUM7QUFDNUYsZUFBTyxNQUFNLHVCQUF1QixzQkFBc0IsQ0FBQztBQUczRCxlQUFPLE1BQU0seUJBQXlCLHNDQUFzQyxDQUFDO0FBRzdFLGVBQU8sTUFBTSxxQkFBcUIsMkJBQTJCLENBQUM7QUFHOUQsZUFBTyxNQUFNLG1DQUFtQyxtREFBbUQsQ0FBQztBQUNwRyxlQUFPLE1BQU0sd0NBQXdDLHFEQUFxRCxDQUFDO0FBRzNHLGVBQU8sTUFBTSxvQ0FBb0MsZ0NBQWdDLENBQUM7QUFDbEYsZUFBTyxNQUFNLHFDQUFxQyxvREFBb0QsQ0FBQztBQUd2RyxlQUFPLE1BQU0sMEJBQTBCLHVDQUF1QyxDQUFDIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"error_texts.d.ts","sourceRoot":"","sources":["../../../src/tx/validator/error_texts.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,iCAAiC,6BAA6B,CAAC;AAC5E,eAAO,MAAM,uCAAuC,mCAAmC,CAAC;AACxF,eAAO,MAAM,+BAA+B,8CAA8C,CAAC;AAC3F,eAAO,MAAM,2BAA2B,wEAAwE,CAAC;AAGjH,eAAO,MAAM,mCAAmC,qCAAqC,CAAC;AACtF,eAAO,MAAM,wCAAwC,4CAA4C,CAAC;AAClG,eAAO,MAAM,qCAAqC,8DAA8D,CAAC;AACjH,eAAO,MAAM,8BAA8B,+CAA+C,CAAC;AAC3F,eAAO,MAAM,oCAAoC,qDAAqD,CAAC;AAGvG,eAAO,MAAM,kCAAkC,8BAA8B,CAAC;AAC9E,eAAO,MAAM,2BAA2B,uBAAuB,CAAC;AAGhE,eAAO,MAAM,qCAAqC,iCAAiC,CAAC;AACpF,eAAO,MAAM,8BAA8B,0BAA0B,CAAC;AACtE,eAAO,MAAM,iCAAiC,6BAA6B,CAAC;AAC5E,eAAO,MAAM,+BAA+B,0CAA0C,CAAC;AACvF,eAAO,MAAM,0CAA0C,sCAAsC,CAAC;AAG9F,eAAO,MAAM,sBAAsB,kBAAkB,CAAC;AAGtD,eAAO,MAAM,2BAA2B,uCAAuC,CAAC;AAChF,eAAO,MAAM,gCAAgC,8CAA8C,CAAC;AAC5F,eAAO,MAAM,iCAAiC,uDAAuD,CAAC;AACtG,eAAO,MAAM,iCAAiC,6CAA6C,CAAC;AAC5F,eAAO,MAAM,kCAAkC,yCAAyC,CAAC;AACzF,eAAO,MAAM,4BAA4B,mCAAmC,CAAC;AAC7E,eAAO,MAAM,mCAAmC,2CAA2C,CAAC;AAC5F,eAAO,MAAM,uBAAuB,sBAAsB,CAAC;AAG3D,eAAO,MAAM,yBAAyB,sCAAsC,CAAC;AAG7E,eAAO,MAAM,qBAAqB,2BAA2B,CAAC;AAG9D,eAAO,MAAM,0BAA0B,uCAAuC,CAAC"}
1
+ {"version":3,"file":"error_texts.d.ts","sourceRoot":"","sources":["../../../src/tx/validator/error_texts.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,iCAAiC,6BAA6B,CAAC;AAC5E,eAAO,MAAM,uCAAuC,mCAAmC,CAAC;AACxF,eAAO,MAAM,+BAA+B,8CAA8C,CAAC;AAC3F,eAAO,MAAM,2BAA2B,wEAAwE,CAAC;AAGjH,eAAO,MAAM,mCAAmC,qCAAqC,CAAC;AACtF,eAAO,MAAM,wCAAwC,4CAA4C,CAAC;AAClG,eAAO,MAAM,qCAAqC,8DAA8D,CAAC;AACjH,eAAO,MAAM,8BAA8B,+CAA+C,CAAC;AAC3F,eAAO,MAAM,oCAAoC,qDAAqD,CAAC;AAGvG,eAAO,MAAM,kCAAkC,8BAA8B,CAAC;AAC9E,eAAO,MAAM,2BAA2B,uBAAuB,CAAC;AAGhE,eAAO,MAAM,qCAAqC,iCAAiC,CAAC;AACpF,eAAO,MAAM,8BAA8B,0BAA0B,CAAC;AACtE,eAAO,MAAM,iCAAiC,6BAA6B,CAAC;AAC5E,eAAO,MAAM,+BAA+B,0CAA0C,CAAC;AACvF,eAAO,MAAM,0CAA0C,sCAAsC,CAAC;AAG9F,eAAO,MAAM,sBAAsB,kBAAkB,CAAC;AAGtD,eAAO,MAAM,2BAA2B,uCAAuC,CAAC;AAChF,eAAO,MAAM,gCAAgC,8CAA8C,CAAC;AAC5F,eAAO,MAAM,iCAAiC,uDAAuD,CAAC;AACtG,eAAO,MAAM,iCAAiC,6CAA6C,CAAC;AAC5F,eAAO,MAAM,kCAAkC,yCAAyC,CAAC;AACzF,eAAO,MAAM,4BAA4B,mCAAmC,CAAC;AAC7E,eAAO,MAAM,mCAAmC,2CAA2C,CAAC;AAC5F,eAAO,MAAM,uBAAuB,sBAAsB,CAAC;AAG3D,eAAO,MAAM,yBAAyB,sCAAsC,CAAC;AAG7E,eAAO,MAAM,qBAAqB,2BAA2B,CAAC;AAG9D,eAAO,MAAM,mCAAmC,mDAAmD,CAAC;AACpG,eAAO,MAAM,wCAAwC,qDAAqD,CAAC;AAG3G,eAAO,MAAM,oCAAoC,gCAAgC,CAAC;AAClF,eAAO,MAAM,qCAAqC,oDAAoD,CAAC;AAGvG,eAAO,MAAM,0BAA0B,uCAAuC,CAAC"}
@@ -33,5 +33,11 @@ export const TX_ERROR_INCORRECT_HASH = 'Incorrect tx hash';
33
33
  export const TX_ERROR_SIZE_ABOVE_LIMIT = 'Transaction size above size limit';
34
34
  // Block header
35
35
  export const TX_ERROR_BLOCK_HEADER = 'Block header not found';
36
+ // Contract instance
37
+ export const TX_ERROR_INCORRECT_CONTRACT_ADDRESS = 'Incorrect contract instance deployment address';
38
+ export const TX_ERROR_MALFORMED_CONTRACT_INSTANCE_LOG = 'Failed to parse contract instance deployment log';
39
+ // Contract class
40
+ export const TX_ERROR_INCORRECT_CONTRACT_CLASS_ID = 'Incorrect contract class id';
41
+ export const TX_ERROR_MALFORMED_CONTRACT_CLASS_LOG = 'Failed to parse contract class registration log';
36
42
  // General
37
43
  export const TX_ERROR_DURING_VALIDATION = 'Unexpected error during validation';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aztec/stdlib",
3
- "version": "0.0.1-commit.6b113946b",
3
+ "version": "0.0.1-commit.6bd18f1aa",
4
4
  "type": "module",
5
5
  "inherits": [
6
6
  "../package.common.json",
@@ -92,13 +92,13 @@
92
92
  },
93
93
  "dependencies": {
94
94
  "@aws-sdk/client-s3": "^3.892.0",
95
- "@aztec/bb.js": "0.0.1-commit.6b113946b",
96
- "@aztec/blob-lib": "0.0.1-commit.6b113946b",
97
- "@aztec/constants": "0.0.1-commit.6b113946b",
98
- "@aztec/ethereum": "0.0.1-commit.6b113946b",
99
- "@aztec/foundation": "0.0.1-commit.6b113946b",
100
- "@aztec/l1-artifacts": "0.0.1-commit.6b113946b",
101
- "@aztec/noir-noirc_abi": "0.0.1-commit.6b113946b",
95
+ "@aztec/bb.js": "0.0.1-commit.6bd18f1aa",
96
+ "@aztec/blob-lib": "0.0.1-commit.6bd18f1aa",
97
+ "@aztec/constants": "0.0.1-commit.6bd18f1aa",
98
+ "@aztec/ethereum": "0.0.1-commit.6bd18f1aa",
99
+ "@aztec/foundation": "0.0.1-commit.6bd18f1aa",
100
+ "@aztec/l1-artifacts": "0.0.1-commit.6bd18f1aa",
101
+ "@aztec/noir-noirc_abi": "0.0.1-commit.6bd18f1aa",
102
102
  "@google-cloud/storage": "^7.15.0",
103
103
  "axios": "^1.13.5",
104
104
  "json-stringify-deterministic": "1.0.12",
package/src/abi/abi.ts CHANGED
@@ -224,7 +224,13 @@ export const FunctionDebugMetadataSchema = z.object({
224
224
  acir_locations: z.record(z.number()),
225
225
  brillig_locations: z.record(z.record(z.number())),
226
226
  }),
227
- files: z.record(z.object({ source: z.string(), path: z.string() })),
227
+ files: z.record(
228
+ z.object({
229
+ source: z.string(),
230
+ path: z.string(),
231
+ function_locations: z.array(z.object({ start: z.number(), name: z.string() })),
232
+ }),
233
+ ),
228
234
  }) satisfies z.ZodType<FunctionDebugMetadata>;
229
235
 
230
236
  /** The artifact entry of a function. */
@@ -305,6 +311,14 @@ export interface ProgramDebugInfo {
305
311
  debug_infos: Array<DebugInfo>;
306
312
  }
307
313
 
314
+ /** The range a function occupies in a file. */
315
+ export type FunctionLocation = {
316
+ /** The byte where the function starts. */
317
+ start: number;
318
+ /** The name of the function. */
319
+ name: string;
320
+ };
321
+
308
322
  /** Maps a file ID to its metadata for debugging purposes. */
309
323
  export type DebugFileMap = Record<
310
324
  FileId,
@@ -313,6 +327,8 @@ export type DebugFileMap = Record<
313
327
  source: string;
314
328
  /** The path of the file. */
315
329
  path: string;
330
+ /** The range each function occupies in the file. */
331
+ function_locations: FunctionLocation[];
316
332
  }
317
333
  >;
318
334
 
@@ -367,7 +383,14 @@ export const ContractArtifactSchema = zodFor<ContractArtifact>()(
367
383
  globals: z.record(z.array(AbiValueSchema)),
368
384
  }),
369
385
  storageLayout: z.record(z.object({ slot: schemas.Fr })),
370
- fileMap: z.record(z.coerce.number(), z.object({ source: z.string(), path: z.string() })),
386
+ fileMap: z.record(
387
+ z.coerce.number(),
388
+ z.object({
389
+ source: z.string(),
390
+ path: z.string(),
391
+ function_locations: z.array(z.object({ start: z.number(), name: z.string() })),
392
+ }),
393
+ ),
371
394
  }),
372
395
  );
373
396
 
package/src/abi/buffer.ts CHANGED
@@ -26,11 +26,32 @@ export function bufferAsFields(input: Buffer, targetLength: number): Fr[] {
26
26
  }
27
27
 
28
28
  /**
29
- * Recovers a buffer from an array of fields.
30
- * @param fields - An output from bufferAsFields.
31
- * @returns The recovered buffer.
29
+ * Recovers a buffer from an array of fields previously encoded with bufferAsFields.
30
+ *
31
+ * The first field encodes the byte length of the original buffer. The remaining fields
32
+ * each carry 31 bytes of payload (the leading byte of each 32-byte field element is skipped).
33
+ *
34
+ * If the declared byte length exceeds the bytes available from the payload fields, the result
35
+ * is zero-padded to the full declared length. This is important for correctness when the field
36
+ * array has been truncated (e.g. contract class logs reconstructed from blobs using a short
37
+ * emittedLength): without padding, the resulting buffer would be shorter than declared, causing
38
+ * bytecode commitment computations to diverge from what the circuit produced.
39
+ *
40
+ * @param fields - An output from bufferAsFields: [byteLength, ...payloadFields].
41
+ * @returns A buffer of exactly `byteLength` bytes.
32
42
  */
33
43
  export function bufferFromFields(fields: Fr[]): Buffer {
34
44
  const [length, ...payload] = fields;
35
- return Buffer.concat(payload.map(f => f.toBuffer().subarray(1))).subarray(0, length.toNumber());
45
+ const byteLength = length.toNumber();
46
+ const raw = Buffer.concat(payload.map(f => f.toBuffer().subarray(1)));
47
+ if (raw.length >= byteLength) {
48
+ return raw.subarray(0, byteLength);
49
+ }
50
+ // Pad with zeros if the declared length exceeds the available payload bytes.
51
+ // This ensures the returned buffer always matches the declared length, so that
52
+ // downstream bytecode commitment computations are consistent even when the
53
+ // source field array was truncated (e.g. reconstructed from blob with a short emittedLength).
54
+ const result = Buffer.alloc(byteLength);
55
+ raw.copy(result);
56
+ return result;
36
57
  }
@@ -1,8 +1,17 @@
1
1
  import { Fr } from '@aztec/foundation/curves/bn254';
2
+ import { EthAddress } from '@aztec/foundation/eth-address';
2
3
 
3
4
  import { AztecAddress } from '../aztec-address/index.js';
4
- import type { ABIParameter, ABIVariable, AbiType } from './abi.js';
5
- import { isAztecAddressStruct, isOptionStruct, parseSignedInt } from './utils.js';
5
+ import type { AbiType } from './abi.js';
6
+ import { FunctionSelector } from './function_selector.js';
7
+ import {
8
+ isAztecAddressStruct,
9
+ isEthAddressStruct,
10
+ isFunctionSelectorStruct,
11
+ isOptionStruct,
12
+ isWrappedFieldStruct,
13
+ parseSignedInt,
14
+ } from './utils.js';
6
15
 
7
16
  /**
8
17
  * The type of our decoded ABI.
@@ -12,6 +21,9 @@ export type AbiDecoded =
12
21
  | boolean
13
22
  | string
14
23
  | AztecAddress
24
+ | EthAddress
25
+ | FunctionSelector
26
+ | Fr
15
27
  | AbiDecoded[]
16
28
  | { [key: string]: AbiDecoded }
17
29
  | undefined;
@@ -58,6 +70,15 @@ class AbiDecoder {
58
70
  if (isAztecAddressStruct(abiType)) {
59
71
  return new AztecAddress(this.getNextField().toBuffer());
60
72
  }
73
+ if (isEthAddressStruct(abiType)) {
74
+ return EthAddress.fromField(this.getNextField());
75
+ }
76
+ if (isFunctionSelectorStruct(abiType)) {
77
+ return FunctionSelector.fromField(this.getNextField());
78
+ }
79
+ if (isWrappedFieldStruct(abiType)) {
80
+ return this.getNextField();
81
+ }
61
82
  if (isOptionStruct(abiType)) {
62
83
  const isSome = this.decodeNext(abiType.fields[0].type);
63
84
  const value = this.decodeNext(abiType.fields[1].type);
@@ -123,79 +144,3 @@ class AbiDecoder {
123
144
  export function decodeFromAbi(typ: AbiType[], buffer: Fr[]) {
124
145
  return new AbiDecoder(typ, buffer.slice()).decode();
125
146
  }
126
-
127
- /**
128
- * Decodes the signature of a function from the name and parameters.
129
- */
130
- export class FunctionSignatureDecoder {
131
- private separator: string;
132
- constructor(
133
- private name: string,
134
- private parameters: ABIParameter[],
135
- private includeNames = false,
136
- ) {
137
- this.separator = includeNames ? ', ' : ',';
138
- }
139
-
140
- /**
141
- * Decodes a single function parameter type for the function signature.
142
- * @param param - The parameter type to decode.
143
- * @returns A string representing the parameter type.
144
- */
145
- private getParameterType(param: AbiType): string {
146
- switch (param.kind) {
147
- case 'field':
148
- return 'Field';
149
- case 'integer':
150
- return param.sign === 'signed' ? `i${param.width}` : `u${param.width}`;
151
- case 'boolean':
152
- return 'bool';
153
- case 'array':
154
- return `[${this.getParameterType(param.type)};${param.length}]`;
155
- case 'string':
156
- return `str<${param.length}>`;
157
- case 'struct':
158
- return `(${param.fields.map(field => `${this.decodeParameter(field)}`).join(this.separator)})`;
159
- default:
160
- throw new Error(`Unsupported type: ${param.kind}`);
161
- }
162
- }
163
-
164
- /**
165
- * Decodes a single function parameter for the function signature.
166
- * @param param - The parameter to decode.
167
- * @returns A string representing the parameter type and optionally its name.
168
- */
169
- private decodeParameter(param: ABIVariable): string {
170
- const type = this.getParameterType(param.type);
171
- return this.includeNames ? `${param.name}: ${type}` : type;
172
- }
173
-
174
- /**
175
- * Decodes all the parameters and build the function signature
176
- * @returns The function signature.
177
- */
178
- public decode(): string {
179
- return `${this.name}(${this.parameters.map(param => this.decodeParameter(param)).join(this.separator)})`;
180
- }
181
- }
182
-
183
- /**
184
- * Decodes a function signature from the name and parameters.
185
- * @param name - The name of the function.
186
- * @param parameters - The parameters of the function.
187
- * @returns - The function signature.
188
- */
189
- export function decodeFunctionSignature(name: string, parameters: ABIParameter[]) {
190
- return new FunctionSignatureDecoder(name, parameters).decode();
191
- }
192
-
193
- /**
194
- * Decodes a function signature from the name and parameters including parameter names.
195
- * @param name - The name of the function.
196
- * @param parameters - The parameters of the function.
197
- * @returns - The user-friendly function signature.
198
- */
199
- export function decodeFunctionSignatureWithParameterNames(name: string, parameters: ABIParameter[]) {
200
- return new FunctionSignatureDecoder(name, parameters, true).decode();
201
- }
@@ -6,7 +6,7 @@ import { type ZodFor, hexSchemaFor } from '@aztec/foundation/schemas';
6
6
  import { BufferReader, FieldReader, TypeRegistry } from '@aztec/foundation/serialize';
7
7
 
8
8
  import type { ABIParameter } from './abi.js';
9
- import { decodeFunctionSignature } from './decoder.js';
9
+ import { decodeFunctionSignature } from './function_signature_decoder.js';
10
10
  import { Selector } from './selector.js';
11
11
 
12
12
  /* eslint-disable @typescript-eslint/no-unsafe-declaration-merging */
@@ -0,0 +1,77 @@
1
+ import type { ABIParameter, ABIVariable, AbiType } from './abi.js';
2
+
3
+ /**
4
+ * Decodes the signature of a function from the name and parameters.
5
+ */
6
+ export class FunctionSignatureDecoder {
7
+ private separator: string;
8
+ constructor(
9
+ private name: string,
10
+ private parameters: ABIParameter[],
11
+ private includeNames = false,
12
+ ) {
13
+ this.separator = includeNames ? ', ' : ',';
14
+ }
15
+
16
+ /**
17
+ * Decodes a single function parameter type for the function signature.
18
+ * @param param - The parameter type to decode.
19
+ * @returns A string representing the parameter type.
20
+ */
21
+ private getParameterType(param: AbiType): string {
22
+ switch (param.kind) {
23
+ case 'field':
24
+ return 'Field';
25
+ case 'integer':
26
+ return param.sign === 'signed' ? `i${param.width}` : `u${param.width}`;
27
+ case 'boolean':
28
+ return 'bool';
29
+ case 'array':
30
+ return `[${this.getParameterType(param.type)};${param.length}]`;
31
+ case 'string':
32
+ return `str<${param.length}>`;
33
+ case 'struct':
34
+ return `(${param.fields.map(field => `${this.decodeParameter(field)}`).join(this.separator)})`;
35
+ default:
36
+ throw new Error(`Unsupported type: ${param.kind}`);
37
+ }
38
+ }
39
+
40
+ /**
41
+ * Decodes a single function parameter for the function signature.
42
+ * @param param - The parameter to decode.
43
+ * @returns A string representing the parameter type and optionally its name.
44
+ */
45
+ private decodeParameter(param: ABIVariable): string {
46
+ const type = this.getParameterType(param.type);
47
+ return this.includeNames ? `${param.name}: ${type}` : type;
48
+ }
49
+
50
+ /**
51
+ * Decodes all the parameters and build the function signature
52
+ * @returns The function signature.
53
+ */
54
+ public decode(): string {
55
+ return `${this.name}(${this.parameters.map(param => this.decodeParameter(param)).join(this.separator)})`;
56
+ }
57
+ }
58
+
59
+ /**
60
+ * Decodes a function signature from the name and parameters.
61
+ * @param name - The name of the function.
62
+ * @param parameters - The parameters of the function.
63
+ * @returns - The function signature.
64
+ */
65
+ export function decodeFunctionSignature(name: string, parameters: ABIParameter[]) {
66
+ return new FunctionSignatureDecoder(name, parameters).decode();
67
+ }
68
+
69
+ /**
70
+ * Decodes a function signature from the name and parameters including parameter names.
71
+ * @param name - The name of the function.
72
+ * @param parameters - The parameters of the function.
73
+ * @returns - The user-friendly function signature.
74
+ */
75
+ export function decodeFunctionSignatureWithParameterNames(name: string, parameters: ABIParameter[]) {
76
+ return new FunctionSignatureDecoder(name, parameters, true).decode();
77
+ }