@aztec/aztec.js 0.79.0 → 0.80.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dest/api/abi.d.ts CHANGED
@@ -1,3 +1,3 @@
1
- export { type ContractArtifact, type FunctionArtifact, EventSelector, FunctionSelector, FunctionCall, NoteSelector, type ABIParameter, decodeFromAbi, encodeArguments, type AbiType, isAddressStruct, isAztecAddressStruct, isEthAddressStruct, isWrappedFieldStruct, isFunctionSelectorStruct, loadContractArtifact, contractArtifactToBuffer, contractArtifactFromBuffer, } from '@aztec/stdlib/abi';
1
+ export { type ContractArtifact, type FunctionArtifact, type FunctionAbi, EventSelector, FunctionType, FunctionSelector, FunctionCall, NoteSelector, type ABIParameter, decodeFromAbi, encodeArguments, type AbiType, isAddressStruct, isAztecAddressStruct, isEthAddressStruct, isWrappedFieldStruct, isFunctionSelectorStruct, loadContractArtifact, loadContractArtifactForPublic, getAllFunctionAbis, contractArtifactToBuffer, contractArtifactFromBuffer, } from '@aztec/stdlib/abi';
2
2
  export { type NoirCompiledContract } from '@aztec/stdlib/noir';
3
3
  //# sourceMappingURL=abi.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"abi.d.ts","sourceRoot":"","sources":["../../src/api/abi.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,aAAa,EACb,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,KAAK,YAAY,EACjB,aAAa,EACb,eAAe,EACf,KAAK,OAAO,EACZ,eAAe,EACf,oBAAoB,EACpB,kBAAkB,EAClB,oBAAoB,EACpB,wBAAwB,EACxB,oBAAoB,EACpB,wBAAwB,EACxB,0BAA0B,GAC3B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"abi.d.ts","sourceRoot":"","sources":["../../src/api/abi.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACrB,KAAK,WAAW,EAChB,aAAa,EACb,YAAY,EACZ,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,KAAK,YAAY,EACjB,aAAa,EACb,eAAe,EACf,KAAK,OAAO,EACZ,eAAe,EACf,oBAAoB,EACpB,kBAAkB,EAClB,oBAAoB,EACpB,wBAAwB,EACxB,oBAAoB,EACpB,6BAA6B,EAC7B,kBAAkB,EAClB,wBAAwB,EACxB,0BAA0B,GAC3B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,oBAAoB,CAAC"}
package/dest/api/abi.js CHANGED
@@ -1 +1 @@
1
- export { EventSelector, FunctionSelector, FunctionCall, NoteSelector, decodeFromAbi, encodeArguments, isAddressStruct, isAztecAddressStruct, isEthAddressStruct, isWrappedFieldStruct, isFunctionSelectorStruct, loadContractArtifact, contractArtifactToBuffer, contractArtifactFromBuffer } from '@aztec/stdlib/abi';
1
+ export { EventSelector, FunctionType, FunctionSelector, FunctionCall, NoteSelector, decodeFromAbi, encodeArguments, isAddressStruct, isAztecAddressStruct, isEthAddressStruct, isWrappedFieldStruct, isFunctionSelectorStruct, loadContractArtifact, loadContractArtifactForPublic, getAllFunctionAbis, contractArtifactToBuffer, contractArtifactFromBuffer } from '@aztec/stdlib/abi';
@@ -1,4 +1,4 @@
1
- import type { ContractArtifact } from '@aztec/stdlib/abi';
1
+ import { type ContractArtifact } from '@aztec/stdlib/abi';
2
2
  /**
3
3
  * Validates the given ContractArtifact object by checking its functions and their parameters.
4
4
  * Ensures that the ABI has at least one function, a constructor, valid bytecode, and correct parameter types.
@@ -1 +1 @@
1
- {"version":3,"file":"checker.d.ts","sourceRoot":"","sources":["../../src/contract/checker.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAsB,gBAAgB,EAAc,MAAM,mBAAmB,CAAC;AAQ1F;;;;;;;GAOG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,gBAAgB,WA8BpD"}
1
+ {"version":3,"file":"checker.d.ts","sourceRoot":"","sources":["../../src/contract/checker.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,gBAAgB,EAGtB,MAAM,mBAAmB,CAAC;AAQ3B;;;;;;;GAOG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,gBAAgB,WA6BpD"}
@@ -1,3 +1,4 @@
1
+ import { getDefaultInitializer } from '@aztec/stdlib/abi';
1
2
  /**
2
3
  * Validates the given ContractArtifact object by checking its functions and their parameters.
3
4
  * Ensures that the ABI has at least one function, a constructor, valid bytecode, and correct parameter types.
@@ -24,8 +25,7 @@
24
25
  abiParameterTypeChecker(param.type);
25
26
  });
26
27
  });
27
- // TODO: implement a better check for constructor (right now only checks if it has it or not)
28
- if (!artifact.functions.find((func)=>func.name === 'constructor')) {
28
+ if (!getDefaultInitializer(artifact)) {
29
29
  throw new Error('ABI has no constructor');
30
30
  }
31
31
  return true;
@@ -1 +1 @@
1
- {"version":3,"file":"contract_base.d.ts","sourceRoot":"","sources":["../../src/contract/contract_base.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,KAAK,WAAW,EAEhB,gBAAgB,EACjB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,KAAK,2BAA2B,EAAyB,MAAM,wBAAwB,CAAC;AAEjG,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,2BAA2B,EAAE,MAAM,oCAAoC,CAAC;AAEjF;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,2BAA2B,CAAC,GAAG;IAC/E;;OAEG;IACH,QAAQ,EAAE,MAAM,OAAO,CAAC,gBAAgB,CAAC,CAAC;CAC3C,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,qBAAqB,CAAC,CAAC,SAAS,MAAM,IAAI;KACnD,CAAC,IAAI,CAAC,GAAG,WAAW;CACtB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,MAAM,IAAI;KAC3C,CAAC,IAAI,CAAC,GAAG,YAAY;CACvB,CAAC;AAEF;;GAEG;AACH,qBAAa,YAAY;IAOrB,iDAAiD;aACjC,QAAQ,EAAE,2BAA2B;IACrD,yDAAyD;aACzC,QAAQ,EAAE,gBAAgB;IAC1C,0DAA0D;IACnD,MAAM,EAAE,MAAM;IAXvB;;OAEG;IACI,OAAO,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,CAAA;KAAE,CAAM;IAExD,SAAS;IACP,iDAAiD;IACjC,QAAQ,EAAE,2BAA2B;IACrD,yDAAyD;IACzC,QAAQ,EAAE,gBAAgB;IAC1C,0DAA0D;IACnD,MAAM,EAAE,MAAM;IAmBvB,+BAA+B;IAC/B,IAAW,OAAO,uDAEjB;IAED,uCAAuC;IACvC,IAAW,cAAc,oDAExB;IAED;;;;OAIG;IACI,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;CAGxC"}
1
+ {"version":3,"file":"contract_base.d.ts","sourceRoot":"","sources":["../../src/contract/contract_base.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,YAAY,EACjB,KAAK,WAAW,EAEhB,gBAAgB,EAEjB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,KAAK,2BAA2B,EAAyB,MAAM,wBAAwB,CAAC;AAEjG,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAE,2BAA2B,EAAE,MAAM,oCAAoC,CAAC;AAEjF;;;GAGG;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,2BAA2B,CAAC,GAAG;IAC/E;;OAEG;IACH,QAAQ,EAAE,MAAM,OAAO,CAAC,gBAAgB,CAAC,CAAC;CAC3C,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,qBAAqB,CAAC,CAAC,SAAS,MAAM,IAAI;KACnD,CAAC,IAAI,CAAC,GAAG,WAAW;CACtB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,MAAM,IAAI;KAC3C,CAAC,IAAI,CAAC,GAAG,YAAY;CACvB,CAAC;AAEF;;GAEG;AACH,qBAAa,YAAY;IAOrB,iDAAiD;aACjC,QAAQ,EAAE,2BAA2B;IACrD,yDAAyD;aACzC,QAAQ,EAAE,gBAAgB;IAC1C,0DAA0D;IACnD,MAAM,EAAE,MAAM;IAXvB;;OAEG;IACI,OAAO,EAAE;QAAE,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,CAAA;KAAE,CAAM;IAExD,SAAS;IACP,iDAAiD;IACjC,QAAQ,EAAE,2BAA2B;IACrD,yDAAyD;IACzC,QAAQ,EAAE,gBAAgB;IAC1C,0DAA0D;IACnD,MAAM,EAAE,MAAM;IAmBvB,+BAA+B;IAC/B,IAAW,OAAO,uDAEjB;IAED,uCAAuC;IACvC,IAAW,cAAc,oDAExB;IAED;;;;OAIG;IACI,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;CAGxC"}
@@ -1,4 +1,4 @@
1
- import { FunctionSelector } from '@aztec/stdlib/abi';
1
+ import { FunctionSelector, getAllFunctionAbis } from '@aztec/stdlib/abi';
2
2
  import { computePartialAddress } from '@aztec/stdlib/contract';
3
3
  import { ContractFunctionInteraction } from './contract_function_interaction.js';
4
4
  /**
@@ -15,7 +15,7 @@ import { ContractFunctionInteraction } from './contract_function_interaction.js'
15
15
  this.artifact = artifact;
16
16
  this.wallet = wallet;
17
17
  this.methods = {};
18
- artifact.functions.forEach((f)=>{
18
+ getAllFunctionAbis(artifact).forEach((f)=>{
19
19
  const interactionFunction = (...args)=>{
20
20
  return new ContractFunctionInteraction(this.wallet, this.instance.address, f, args);
21
21
  };
@@ -1 +1 @@
1
- {"version":3,"file":"deploy_method.d.ts","sourceRoot":"","sources":["../../src/contract/deploy_method.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"deploy_method.d.ts","sourceRoot":"","sources":["../../src/contract/deploy_method.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@aztec/aztec.js",
3
3
  "homepage": "https://github.com/AztecProtocol/aztec-packages/tree/master/yarn-project/aztec.js",
4
- "version": "0.79.0",
4
+ "version": "0.80.0",
5
5
  "type": "module",
6
6
  "exports": {
7
7
  ".": "./dest/index.js",
@@ -79,12 +79,12 @@
79
79
  ]
80
80
  },
81
81
  "dependencies": {
82
- "@aztec/constants": "0.79.0",
83
- "@aztec/ethereum": "0.79.0",
84
- "@aztec/foundation": "0.79.0",
85
- "@aztec/l1-artifacts": "0.79.0",
86
- "@aztec/protocol-contracts": "0.79.0",
87
- "@aztec/stdlib": "0.79.0",
82
+ "@aztec/constants": "0.80.0",
83
+ "@aztec/ethereum": "0.80.0",
84
+ "@aztec/foundation": "0.80.0",
85
+ "@aztec/l1-artifacts": "0.80.0",
86
+ "@aztec/protocol-contracts": "0.80.0",
87
+ "@aztec/stdlib": "0.80.0",
88
88
  "axios": "^1.7.2",
89
89
  "tslib": "^2.4.0",
90
90
  "viem": "2.23.7"
package/src/api/abi.ts CHANGED
@@ -1,7 +1,9 @@
1
1
  export {
2
2
  type ContractArtifact,
3
3
  type FunctionArtifact,
4
+ type FunctionAbi,
4
5
  EventSelector,
6
+ FunctionType,
5
7
  FunctionSelector,
6
8
  FunctionCall,
7
9
  NoteSelector,
@@ -15,6 +17,8 @@ export {
15
17
  isWrappedFieldStruct,
16
18
  isFunctionSelectorStruct,
17
19
  loadContractArtifact,
20
+ loadContractArtifactForPublic,
21
+ getAllFunctionAbis,
18
22
  contractArtifactToBuffer,
19
23
  contractArtifactFromBuffer,
20
24
  } from '@aztec/stdlib/abi';
@@ -1,4 +1,10 @@
1
- import type { AbiType, BasicType, ContractArtifact, StructType } from '@aztec/stdlib/abi';
1
+ import {
2
+ type AbiType,
3
+ type BasicType,
4
+ type ContractArtifact,
5
+ type StructType,
6
+ getDefaultInitializer,
7
+ } from '@aztec/stdlib/abi';
2
8
 
3
9
  /**
4
10
  * Represents a type derived from input type T with the 'kind' property removed.
@@ -38,8 +44,7 @@ export function abiChecker(artifact: ContractArtifact) {
38
44
  });
39
45
  });
40
46
 
41
- // TODO: implement a better check for constructor (right now only checks if it has it or not)
42
- if (!artifact.functions.find(func => func.name === 'constructor')) {
47
+ if (!getDefaultInitializer(artifact)) {
43
48
  throw new Error('ABI has no constructor');
44
49
  }
45
50
 
@@ -2,8 +2,9 @@ import {
2
2
  type ContractArtifact,
3
3
  type ContractNote,
4
4
  type FieldLayout,
5
- type FunctionArtifact,
5
+ type FunctionAbi,
6
6
  FunctionSelector,
7
+ getAllFunctionAbis,
7
8
  } from '@aztec/stdlib/abi';
8
9
  import { type ContractInstanceWithAddress, computePartialAddress } from '@aztec/stdlib/contract';
9
10
 
@@ -52,7 +53,7 @@ export class ContractBase {
52
53
  /** The wallet used for interacting with this contract. */
53
54
  public wallet: Wallet,
54
55
  ) {
55
- artifact.functions.forEach((f: FunctionArtifact) => {
56
+ getAllFunctionAbis(artifact).forEach((f: FunctionAbi) => {
56
57
  const interactionFunction = (...args: any[]) => {
57
58
  return new ContractFunctionInteraction(this.wallet, this.instance.address, f, args);
58
59
  };
@@ -1,5 +1,5 @@
1
1
  import type { Fr } from '@aztec/foundation/fields';
2
- import { type ContractArtifact, type FunctionArtifact, getInitializer } from '@aztec/stdlib/abi';
2
+ import { type ContractArtifact, type FunctionAbi, type FunctionArtifact, getInitializer } from '@aztec/stdlib/abi';
3
3
  import { AztecAddress } from '@aztec/stdlib/aztec-address';
4
4
  import {
5
5
  type ContractInstanceWithAddress,
@@ -51,7 +51,7 @@ export class DeployMethod<TContract extends ContractBase = Contract> extends Bas
51
51
  private instance?: ContractInstanceWithAddress = undefined;
52
52
 
53
53
  /** Constructor function to call. */
54
- private constructorArtifact: FunctionArtifact | undefined;
54
+ private constructorArtifact: FunctionAbi | undefined;
55
55
 
56
56
  constructor(
57
57
  private publicKeys: PublicKeys,