@aztec/standard-contracts 0.0.1-commit.330febf → 0.0.1-commit.431c48d
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/artifacts/AuthRegistry.json +2469 -229
- package/artifacts/HandshakeRegistry.json +162 -158
- package/artifacts/MultiCallEntrypoint.json +2830 -438
- package/artifacts/PublicChecks.json +2751 -665
- package/artifacts-historical/HandshakeRegistry-5.0.1.d.json.ts +4 -0
- package/artifacts-historical/HandshakeRegistry-5.0.1.json +1 -0
- package/dest/contract_data.d.ts +2 -2
- package/dest/contract_data.d.ts.map +1 -1
- package/dest/contract_data.js +2 -2
- package/dest/handshake-registry/constants.d.ts +2 -1
- package/dest/handshake-registry/constants.d.ts.map +1 -1
- package/dest/handshake-registry/constants.js +1 -0
- package/dest/handshake-registry/historical.d.ts +11 -0
- package/dest/handshake-registry/historical.d.ts.map +1 -0
- package/dest/handshake-registry/historical.js +38 -0
- package/dest/handshake-registry/index.d.ts +4 -2
- package/dest/handshake-registry/index.d.ts.map +1 -1
- package/dest/handshake-registry/index.js +15 -2
- package/dest/handshake-registry/lazy.d.ts +4 -2
- package/dest/handshake-registry/lazy.d.ts.map +1 -1
- package/dest/handshake-registry/lazy.js +14 -2
- package/dest/index.d.ts +2 -1
- package/dest/index.d.ts.map +1 -1
- package/dest/index.js +1 -0
- package/dest/make_standard_contract.d.ts +13 -1
- package/dest/make_standard_contract.d.ts.map +1 -1
- package/dest/make_standard_contract.js +18 -5
- package/dest/preloaded/index.d.ts +8 -0
- package/dest/preloaded/index.d.ts.map +1 -0
- package/dest/preloaded/index.js +21 -0
- package/dest/preloaded/lazy.d.ts +8 -0
- package/dest/preloaded/lazy.d.ts.map +1 -0
- package/dest/preloaded/lazy.js +21 -0
- package/dest/standard_contract_data.js +20 -20
- package/package.json +4 -3
- package/src/contract_data.ts +2 -2
- package/src/handshake-registry/constants.ts +2 -0
- package/src/handshake-registry/historical.ts +44 -0
- package/src/handshake-registry/index.ts +19 -1
- package/src/handshake-registry/lazy.ts +19 -1
- package/src/index.ts +1 -0
- package/src/make_standard_contract.ts +28 -5
- package/src/preloaded/index.ts +19 -0
- package/src/preloaded/lazy.ts +19 -0
- package/src/standard_contract_data.ts +20 -20
package/dest/contract_data.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ import { FunctionSelector } from '@aztec/stdlib/abi';
|
|
|
3
3
|
import { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
4
4
|
import type { NoirCompiledContract } from '@aztec/stdlib/noir';
|
|
5
5
|
/** Root of the noir-contracts package relative to `yarn-project/standard-contracts`. */
|
|
6
|
-
export declare const NOIR_CONTRACTS_ROOT = "../../noir-projects/
|
|
6
|
+
export declare const NOIR_CONTRACTS_ROOT = "../../noir-projects/noir-contracts";
|
|
7
7
|
/** Directory holding the freshly-compiled Noir artifacts the generator reads from. */
|
|
8
8
|
export declare const NOIR_ARTIFACTS_SRC_PATH: string;
|
|
9
9
|
/** Output directory inside this package where the trimmed artifacts get copied. */
|
|
@@ -60,4 +60,4 @@ export declare function loadArtifact(srcName: string): Promise<NoirCompiledContr
|
|
|
60
60
|
* are performed.
|
|
61
61
|
*/
|
|
62
62
|
export declare function computeContractData(artifact: NoirCompiledContract): Promise<ContractData>;
|
|
63
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udHJhY3RfZGF0YS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2NvbnRyYWN0X2RhdGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBWUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3BELE9BQU8sRUFBRSxnQkFBZ0IsRUFBd0IsTUFBTSxtQkFBbUIsQ0FBQztBQUMzRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFPM0QsT0FBTyxLQUFLLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUsvRCx3RkFBd0Y7QUFDeEYsZUFBTyxNQUFNLG1CQUFtQix1Q0FBdUMsQ0FBQztBQUN4RSxzRkFBc0Y7QUFDdEYsZUFBTyxNQUFNLHVCQUF1QixRQUE2QyxDQUFDO0FBQ2xGLG1GQUFtRjtBQUNuRixlQUFPLE1BQU0sMkJBQTJCLGdCQUFnQixDQUFDO0FBQ3pELHVFQUF1RTtBQUN2RSxlQUFPLE1BQU0sa0NBQWtDLG9DQUFvQyxDQUFDO0FBSXBGLGVBQU8sTUFBTSw2QkFBNkIsVUFBbUUsQ0FBQztBQUU5Ryx1RUFBdUU7QUFDdkUsZUFBTyxNQUFNLHNCQUFzQixJQUFZLENBQUM7QUFDaEQsa0ZBQWtGO0FBQ2xGLGVBQU8sTUFBTSwwQkFBMEIsY0FBc0IsQ0FBQztBQUU5RDs7Ozs7Ozs7Ozs7R0FXRztBQUNILGVBQU8sTUFBTSxpQkFBaUIsRUFBRTtJQUFFLElBQUksRUFBRSxNQUFNLENBQUM7SUFBQyxHQUFHLEVBQUUsTUFBTSxDQUFDO0lBQUMsT0FBTyxFQUFFLE1BQU0sR0FBRyxJQUFJLENBQUE7Q0FBRSxFQWFwRixDQUFDO0FBRUYsOEZBQThGO0FBQzlGLE1BQU0sTUFBTSxZQUFZLEdBQUc7SUFDekIsT0FBTyxFQUFFLFlBQVksQ0FBQztJQUN0QixPQUFPLEVBQUUsRUFBRSxDQUFDO0lBQ1osWUFBWSxFQUFFLEVBQUUsQ0FBQztJQUNqQixvQkFBb0IsRUFBRSxFQUFFLENBQUM7SUFDekIsd0JBQXdCLEVBQUUsRUFBRSxDQUFDO0lBQzdCLGtCQUFrQixFQUFFLEVBQUUsQ0FBQztJQUN2QixnQkFBZ0IsRUFBRTtRQUFFLFFBQVEsRUFBRSxnQkFBZ0IsQ0FBQztRQUFDLE1BQU0sRUFBRSxFQUFFLENBQUE7S0FBRSxFQUFFLENBQUM7Q0FDaEUsQ0FBQztBQUVGOzs7O0dBSUc7QUFDSCx3QkFBc0IsWUFBWSxDQUFDLE9BQU8sRUFBRSxNQUFNLEdBQUcsT0FBTyxDQUFDLG9CQUFvQixDQUFDLENBR2pGO0FBRUQ7Ozs7Ozs7R0FPRztBQUNILHdCQUFzQixtQkFBbUIsQ0FBQyxRQUFRLEVBQUUsb0JBQW9CLEdBQUcsT0FBTyxDQUFDLFlBQVksQ0FBQyxDQXlCL0YifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contract_data.d.ts","sourceRoot":"","sources":["../src/contract_data.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAwB,MAAM,mBAAmB,CAAC;AAC3E,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAO3D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAK/D,wFAAwF;AACxF,eAAO,MAAM,mBAAmB,
|
|
1
|
+
{"version":3,"file":"contract_data.d.ts","sourceRoot":"","sources":["../src/contract_data.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAwB,MAAM,mBAAmB,CAAC;AAC3E,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAO3D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAK/D,wFAAwF;AACxF,eAAO,MAAM,mBAAmB,uCAAuC,CAAC;AACxE,sFAAsF;AACtF,eAAO,MAAM,uBAAuB,QAA6C,CAAC;AAClF,mFAAmF;AACnF,eAAO,MAAM,2BAA2B,gBAAgB,CAAC;AACzD,uEAAuE;AACvE,eAAO,MAAM,kCAAkC,oCAAoC,CAAC;AAIpF,eAAO,MAAM,6BAA6B,UAAmE,CAAC;AAE9G,uEAAuE;AACvE,eAAO,MAAM,sBAAsB,IAAY,CAAC;AAChD,kFAAkF;AAClF,eAAO,MAAM,0BAA0B,cAAsB,CAAC;AAE9D;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,iBAAiB,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,EAapF,CAAC;AAEF,8FAA8F;AAC9F,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,EAAE,YAAY,CAAC;IACtB,OAAO,EAAE,EAAE,CAAC;IACZ,YAAY,EAAE,EAAE,CAAC;IACjB,oBAAoB,EAAE,EAAE,CAAC;IACzB,wBAAwB,EAAE,EAAE,CAAC;IAC7B,kBAAkB,EAAE,EAAE,CAAC;IACvB,gBAAgB,EAAE;QAAE,QAAQ,EAAE,gBAAgB,CAAC;QAAC,MAAM,EAAE,EAAE,CAAA;KAAE,EAAE,CAAC;CAChE,CAAC;AAEF;;;;GAIG;AACH,wBAAsB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAGjF;AAED;;;;;;;GAOG;AACH,wBAAsB,mBAAmB,CAAC,QAAQ,EAAE,oBAAoB,GAAG,OAAO,CAAC,YAAY,CAAC,CAyB/F"}
|
package/dest/contract_data.js
CHANGED
|
@@ -17,7 +17,7 @@ import { computeContractAddressFromInstance, computeInitializationHash, getContr
|
|
|
17
17
|
import { PublicKeys } from '@aztec/stdlib/keys';
|
|
18
18
|
import { promises as fs } from 'fs';
|
|
19
19
|
import path from 'path';
|
|
20
|
-
/** Root of the noir-contracts package relative to `yarn-project/standard-contracts`. */ export const NOIR_CONTRACTS_ROOT = '../../noir-projects/
|
|
20
|
+
/** Root of the noir-contracts package relative to `yarn-project/standard-contracts`. */ export const NOIR_CONTRACTS_ROOT = '../../noir-projects/noir-contracts';
|
|
21
21
|
/** Directory holding the freshly-compiled Noir artifacts the generator reads from. */ export const NOIR_ARTIFACTS_SRC_PATH = path.join(NOIR_CONTRACTS_ROOT, './target');
|
|
22
22
|
/** Output directory inside this package where the trimmed artifacts get copied. */ export const STANDARD_ARTIFACTS_DEST_DIR = './artifacts';
|
|
23
23
|
/** Path of the generated TS data file (addresses, class IDs, etc.). */ export const STANDARD_CONTRACT_DATA_OUTPUT_PATH = './src/standard_contract_data.ts';
|
|
@@ -25,7 +25,7 @@ import path from 'path';
|
|
|
25
25
|
// source so circuits can reference standard-contract addresses at compile time (e.g. authwit and
|
|
26
26
|
// public_checks) without re-hashing at runtime.
|
|
27
27
|
export const NOIR_STANDARD_ADDRESSES_PATHS = [
|
|
28
|
-
'../../noir-projects/
|
|
28
|
+
'../../noir-projects/aztec-nr/aztec/src/standard_addresses.nr'
|
|
29
29
|
];
|
|
30
30
|
/** The deployment salt baked into every standard contract instance. */ export const STANDARD_CONTRACT_SALT = new Fr(1);
|
|
31
31
|
/** Every standard contract is deployed by the zero address (universal deploy). */ export const STANDARD_CONTRACT_DEPLOYER = AztecAddress.zero();
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { Fr } from '@aztec/foundation/curves/bn254';
|
|
2
2
|
import type { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
3
|
+
export { HISTORICAL_STANDARD_HANDSHAKE_REGISTRY_ADDRESSES } from './historical.js';
|
|
3
4
|
export declare const STANDARD_HANDSHAKE_REGISTRY_ADDRESS: AztecAddress;
|
|
4
5
|
export declare const STANDARD_HANDSHAKE_REGISTRY_CLASS_ID: Fr;
|
|
5
6
|
export declare const STANDARD_HANDSHAKE_REGISTRY_SALT: Fr;
|
|
@@ -8,4 +9,4 @@ export declare const STANDARD_HANDSHAKE_REGISTRY_SALT: Fr;
|
|
|
8
9
|
* `resolveCustomRequest` hook. Mirrors `INTERACTIVE_HANDSHAKE_REQUEST_KIND` in the registry contract.
|
|
9
10
|
*/
|
|
10
11
|
export declare const INTERACTIVE_HANDSHAKE_REQUEST_KIND: Fr;
|
|
11
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
12
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaGFuZHNoYWtlLXJlZ2lzdHJ5L2NvbnN0YW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxPQUFPLEtBQUssRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN6RCxPQUFPLEtBQUssRUFBRSxZQUFZLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUloRSxPQUFPLEVBQUUsZ0RBQWdELEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUVuRixlQUFPLE1BQU0sbUNBQW1DLEVBQUUsWUFBd0QsQ0FBQztBQUMzRyxlQUFPLE1BQU0sb0NBQW9DLElBQTRDLENBQUM7QUFDOUYsZUFBTyxNQUFNLGdDQUFnQyxJQUF5QyxDQUFDO0FBRXZGOzs7R0FHRztBQUlILGVBQU8sTUFBTSxrQ0FBa0MsRUFBRSxFQUUvQyxDQUFDIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/handshake-registry/constants.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACzD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAIhE,eAAO,MAAM,mCAAmC,EAAE,YAAwD,CAAC;AAC3G,eAAO,MAAM,oCAAoC,IAA4C,CAAC;AAC9F,eAAO,MAAM,gCAAgC,IAAyC,CAAC;AAEvF;;;GAGG;AAIH,eAAO,MAAM,kCAAkC,EAAE,EAE/C,CAAC"}
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/handshake-registry/constants.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACzD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAIhE,OAAO,EAAE,gDAAgD,EAAE,MAAM,iBAAiB,CAAC;AAEnF,eAAO,MAAM,mCAAmC,EAAE,YAAwD,CAAC;AAC3G,eAAO,MAAM,oCAAoC,IAA4C,CAAC;AAC9F,eAAO,MAAM,gCAAgC,IAAyC,CAAC;AAEvF;;;GAGG;AAIH,eAAO,MAAM,kCAAkC,EAAE,EAE/C,CAAC"}
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
// `HandshakeRegistry.json` static import.
|
|
4
4
|
import { sha256ToField } from '@aztec/foundation/crypto/sha256';
|
|
5
5
|
import { StandardContractAddress, StandardContractClassId, StandardContractSalt } from '../standard_contract_data.js';
|
|
6
|
+
export { HISTORICAL_STANDARD_HANDSHAKE_REGISTRY_ADDRESSES } from './historical.js';
|
|
6
7
|
export const STANDARD_HANDSHAKE_REGISTRY_ADDRESS = StandardContractAddress.HandshakeRegistry;
|
|
7
8
|
export const STANDARD_HANDSHAKE_REGISTRY_CLASS_ID = StandardContractClassId.HandshakeRegistry;
|
|
8
9
|
export const STANDARD_HANDSHAKE_REGISTRY_SALT = StandardContractSalt.HandshakeRegistry;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
2
|
+
import type { StandardContractData } from '../make_standard_contract.js';
|
|
3
|
+
/** Deployment data of the standard HandshakeRegistry released in v5.0.1 and superseded in v5.1.0. */
|
|
4
|
+
export declare const HANDSHAKE_REGISTRY_V5_0_1_DATA: StandardContractData;
|
|
5
|
+
/**
|
|
6
|
+
* Addresses of superseded standard HandshakeRegistry deployments that remain live onchain. PXE registers these
|
|
7
|
+
* alongside the current deployment and authorizes their read functions, so contracts compiled against older
|
|
8
|
+
* releases can still reach the registry version they were built for.
|
|
9
|
+
*/
|
|
10
|
+
export declare const HISTORICAL_STANDARD_HANDSHAKE_REGISTRY_ADDRESSES: AztecAddress[];
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGlzdG9yaWNhbC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hhbmRzaGFrZS1yZWdpc3RyeS9oaXN0b3JpY2FsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU9BLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUUzRCxPQUFPLEtBQUssRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRXpFLHFHQUFxRztBQUNyRyxlQUFPLE1BQU0sOEJBQThCLEVBQUUsb0JBc0I1QyxDQUFDO0FBRUY7Ozs7R0FJRztBQUNILGVBQU8sTUFBTSxnREFBZ0QsRUFBRSxZQUFZLEVBRTFFLENBQUMifQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"historical.d.ts","sourceRoot":"","sources":["../../src/handshake-registry/historical.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAE3D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAEzE,qGAAqG;AACrG,eAAO,MAAM,8BAA8B,EAAE,oBAsB5C,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,gDAAgD,EAAE,YAAY,EAE1E,CAAC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
// Deployment data of superseded standard HandshakeRegistry versions. When a release changes the registry (and thus
|
|
2
|
+
// its canonical address), contracts compiled against earlier releases keep the old address baked into their
|
|
3
|
+
// bytecode, and the old instance stays live onchain. Archiving the retired deployment here (data below, trimmed
|
|
4
|
+
// artifact under `artifacts-historical/`) lets PXE keep registering and authorizing it, so apps built on older
|
|
5
|
+
// releases keep working against newer aztec.js versions.
|
|
6
|
+
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
7
|
+
import { FunctionSelector } from '@aztec/stdlib/abi';
|
|
8
|
+
import { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
9
|
+
/** Deployment data of the standard HandshakeRegistry released in v5.0.1 and superseded in v5.1.0. */ export const HANDSHAKE_REGISTRY_V5_0_1_DATA = {
|
|
10
|
+
address: AztecAddress.fromStringUnsafe('0x086c3c67589e1141c70ed0ed8ae324c51d3bf7c5637043fd84c424ffb625831d'),
|
|
11
|
+
salt: new Fr(1),
|
|
12
|
+
classId: Fr.fromString('0x020ec1998d06036ddab4ba170e9b0d9b96e52beb58aa5ea83d72b22f589cbe6c'),
|
|
13
|
+
artifactHash: Fr.fromString('0x2dd01b80cabc352f7d01799a6e5dd6255cc0d7f01fe42d270760d0bf0a0b5daf'),
|
|
14
|
+
privateFunctionsRoot: Fr.fromString('0x0c80100ee31d91778c8f3d4453d056a58467b50f86d446f3209b96d87acb354e'),
|
|
15
|
+
publicBytecodeCommitment: Fr.fromString('0x0ce4c618c3ed7f3a20410e618c06bb701e150af7fe28a3e92f68e7733809f33e'),
|
|
16
|
+
initializationHash: Fr.fromString('0x0000000000000000000000000000000000000000000000000000000000000000'),
|
|
17
|
+
privateFunctions: [
|
|
18
|
+
{
|
|
19
|
+
selector: FunctionSelector.fromField(new Fr(0x19f8b409)),
|
|
20
|
+
vkHash: Fr.fromString('0x033a99c31fd390e320398efa03eb1a34d0db2f2e0201fbb0062aa915f406f3d7')
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
selector: FunctionSelector.fromField(new Fr(0xdb548fcf)),
|
|
24
|
+
vkHash: Fr.fromString('0x12964f25be85fded4079591a3871e85d15967c75fd70f3d0edf10d72abfea59c')
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
selector: FunctionSelector.fromField(new Fr(0xf1ff839b)),
|
|
28
|
+
vkHash: Fr.fromString('0x049120d4c9a12a2286c83df31064637b53746ea13868b0756174dcb3e036bb9d')
|
|
29
|
+
}
|
|
30
|
+
]
|
|
31
|
+
};
|
|
32
|
+
/**
|
|
33
|
+
* Addresses of superseded standard HandshakeRegistry deployments that remain live onchain. PXE registers these
|
|
34
|
+
* alongside the current deployment and authorizes their read functions, so contracts compiled against older
|
|
35
|
+
* releases can still reach the registry version they were built for.
|
|
36
|
+
*/ export const HISTORICAL_STANDARD_HANDSHAKE_REGISTRY_ADDRESSES = [
|
|
37
|
+
HANDSHAKE_REGISTRY_V5_0_1_DATA.address
|
|
38
|
+
];
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import type { StandardContract } from '../standard_contract.js';
|
|
2
|
-
export { INTERACTIVE_HANDSHAKE_REQUEST_KIND, STANDARD_HANDSHAKE_REGISTRY_ADDRESS, STANDARD_HANDSHAKE_REGISTRY_CLASS_ID, STANDARD_HANDSHAKE_REGISTRY_SALT, } from './constants.js';
|
|
2
|
+
export { HISTORICAL_STANDARD_HANDSHAKE_REGISTRY_ADDRESSES, INTERACTIVE_HANDSHAKE_REQUEST_KIND, STANDARD_HANDSHAKE_REGISTRY_ADDRESS, STANDARD_HANDSHAKE_REGISTRY_CLASS_ID, STANDARD_HANDSHAKE_REGISTRY_SALT, } from './constants.js';
|
|
3
3
|
export declare const HandshakeRegistryArtifact: import("@aztec/stdlib/abi").ContractArtifact;
|
|
4
4
|
/** Returns the standard deployment of the handshake registry. */
|
|
5
5
|
export declare function getStandardHandshakeRegistry(): Promise<StandardContract>;
|
|
6
|
-
|
|
6
|
+
/** Returns superseded standard deployments of the handshake registry that remain live onchain. */
|
|
7
|
+
export declare function getHistoricalStandardHandshakeRegistries(): Promise<StandardContract[]>;
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9oYW5kc2hha2UtcmVnaXN0cnkvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBTUEsT0FBTyxLQUFLLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUdoRSxPQUFPLEVBQ0wsZ0RBQWdELEVBQ2hELGtDQUFrQyxFQUNsQyxtQ0FBbUMsRUFDbkMsb0NBQW9DLEVBQ3BDLGdDQUFnQyxHQUNqQyxNQUFNLGdCQUFnQixDQUFDO0FBRXhCLGVBQU8sTUFBTSx5QkFBeUIsOENBQXNFLENBQUM7QUFJN0csaUVBQWlFO0FBQ2pFLHdCQUFnQiw0QkFBNEIsSUFBSSxPQUFPLENBQUMsZ0JBQWdCLENBQUMsQ0FLeEU7QUFJRCxrR0FBa0c7QUFDbEcsd0JBQWdCLHdDQUF3QyxJQUFJLE9BQU8sQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLENBVXRGIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/handshake-registry/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/handshake-registry/index.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAGhE,OAAO,EACL,gDAAgD,EAChD,kCAAkC,EAClC,mCAAmC,EACnC,oCAAoC,EACpC,gCAAgC,GACjC,MAAM,gBAAgB,CAAC;AAExB,eAAO,MAAM,yBAAyB,8CAAsE,CAAC;AAI7G,iEAAiE;AACjE,wBAAgB,4BAA4B,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAKxE;AAID,kGAAkG;AAClG,wBAAgB,wCAAwC,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAUtF"}
|
|
@@ -1,9 +1,13 @@
|
|
|
1
1
|
import { loadContractArtifact } from '@aztec/stdlib/abi';
|
|
2
|
+
import HandshakeRegistryV501Json from '../../artifacts-historical/HandshakeRegistry-5.0.1.json' with {
|
|
3
|
+
type: 'json'
|
|
4
|
+
};
|
|
2
5
|
import HandshakeRegistryJson from '../../artifacts/HandshakeRegistry.json' with {
|
|
3
6
|
type: 'json'
|
|
4
7
|
};
|
|
5
|
-
import { makeStandardContract } from '../make_standard_contract.js';
|
|
6
|
-
|
|
8
|
+
import { makeStandardContract, makeStandardContractFromData } from '../make_standard_contract.js';
|
|
9
|
+
import { HANDSHAKE_REGISTRY_V5_0_1_DATA } from './historical.js';
|
|
10
|
+
export { HISTORICAL_STANDARD_HANDSHAKE_REGISTRY_ADDRESSES, INTERACTIVE_HANDSHAKE_REQUEST_KIND, STANDARD_HANDSHAKE_REGISTRY_ADDRESS, STANDARD_HANDSHAKE_REGISTRY_CLASS_ID, STANDARD_HANDSHAKE_REGISTRY_SALT } from './constants.js';
|
|
7
11
|
export const HandshakeRegistryArtifact = loadContractArtifact(HandshakeRegistryJson);
|
|
8
12
|
let standardContract;
|
|
9
13
|
/** Returns the standard deployment of the handshake registry. */ export function getStandardHandshakeRegistry() {
|
|
@@ -12,3 +16,12 @@ let standardContract;
|
|
|
12
16
|
}
|
|
13
17
|
return Promise.resolve(standardContract);
|
|
14
18
|
}
|
|
19
|
+
let historicalStandardContracts;
|
|
20
|
+
/** Returns superseded standard deployments of the handshake registry that remain live onchain. */ export function getHistoricalStandardHandshakeRegistries() {
|
|
21
|
+
if (!historicalStandardContracts) {
|
|
22
|
+
historicalStandardContracts = [
|
|
23
|
+
makeStandardContractFromData(HANDSHAKE_REGISTRY_V5_0_1_DATA, loadContractArtifact(HandshakeRegistryV501Json))
|
|
24
|
+
];
|
|
25
|
+
}
|
|
26
|
+
return Promise.resolve(historicalStandardContracts);
|
|
27
|
+
}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import { type ContractArtifact } from '@aztec/stdlib/abi';
|
|
2
2
|
import type { StandardContract } from '../standard_contract.js';
|
|
3
|
-
export { STANDARD_HANDSHAKE_REGISTRY_ADDRESS, STANDARD_HANDSHAKE_REGISTRY_CLASS_ID, STANDARD_HANDSHAKE_REGISTRY_SALT, } from './constants.js';
|
|
3
|
+
export { HISTORICAL_STANDARD_HANDSHAKE_REGISTRY_ADDRESSES, STANDARD_HANDSHAKE_REGISTRY_ADDRESS, STANDARD_HANDSHAKE_REGISTRY_CLASS_ID, STANDARD_HANDSHAKE_REGISTRY_SALT, } from './constants.js';
|
|
4
4
|
export declare function getHandshakeRegistryArtifact(): Promise<ContractArtifact>;
|
|
5
5
|
/** Returns the standard deployment of the handshake registry. */
|
|
6
6
|
export declare function getStandardHandshakeRegistry(): Promise<StandardContract>;
|
|
7
|
-
|
|
7
|
+
/** Returns superseded standard deployments of the handshake registry that remain live onchain. */
|
|
8
|
+
export declare function getHistoricalStandardHandshakeRegistries(): Promise<StandardContract[]>;
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF6eS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hhbmRzaGFrZS1yZWdpc3RyeS9sYXp5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLGdCQUFnQixFQUF3QixNQUFNLG1CQUFtQixDQUFDO0FBR2hGLE9BQU8sS0FBSyxFQUFFLGdCQUFnQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFHaEUsT0FBTyxFQUNMLGdEQUFnRCxFQUNoRCxtQ0FBbUMsRUFDbkMsb0NBQW9DLEVBQ3BDLGdDQUFnQyxHQUNqQyxNQUFNLGdCQUFnQixDQUFDO0FBS3hCLHdCQUFzQiw0QkFBNEIsSUFBSSxPQUFPLENBQUMsZ0JBQWdCLENBQUMsQ0FXOUU7QUFFRCxpRUFBaUU7QUFDakUsd0JBQXNCLDRCQUE0QixJQUFJLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxDQU05RTtBQUlELGtHQUFrRztBQUNsRyx3QkFBc0Isd0NBQXdDLElBQUksT0FBTyxDQUFDLGdCQUFnQixFQUFFLENBQUMsQ0FXNUYifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lazy.d.ts","sourceRoot":"","sources":["../../src/handshake-registry/lazy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,gBAAgB,EAAwB,MAAM,mBAAmB,CAAC;AAGhF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"lazy.d.ts","sourceRoot":"","sources":["../../src/handshake-registry/lazy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,gBAAgB,EAAwB,MAAM,mBAAmB,CAAC;AAGhF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAGhE,OAAO,EACL,gDAAgD,EAChD,mCAAmC,EACnC,oCAAoC,EACpC,gCAAgC,GACjC,MAAM,gBAAgB,CAAC;AAKxB,wBAAsB,4BAA4B,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAW9E;AAED,iEAAiE;AACjE,wBAAsB,4BAA4B,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAM9E;AAID,kGAAkG;AAClG,wBAAsB,wCAAwC,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAW5F"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { loadContractArtifact } from '@aztec/stdlib/abi';
|
|
2
|
-
import { makeStandardContract } from '../make_standard_contract.js';
|
|
3
|
-
|
|
2
|
+
import { makeStandardContract, makeStandardContractFromData } from '../make_standard_contract.js';
|
|
3
|
+
import { HANDSHAKE_REGISTRY_V5_0_1_DATA } from './historical.js';
|
|
4
|
+
export { HISTORICAL_STANDARD_HANDSHAKE_REGISTRY_ADDRESSES, STANDARD_HANDSHAKE_REGISTRY_ADDRESS, STANDARD_HANDSHAKE_REGISTRY_CLASS_ID, STANDARD_HANDSHAKE_REGISTRY_SALT } from './constants.js';
|
|
4
5
|
let standardContract;
|
|
5
6
|
let standardContractArtifact;
|
|
6
7
|
export async function getHandshakeRegistryArtifact() {
|
|
@@ -22,3 +23,14 @@ export async function getHandshakeRegistryArtifact() {
|
|
|
22
23
|
}
|
|
23
24
|
return standardContract;
|
|
24
25
|
}
|
|
26
|
+
let historicalStandardContracts;
|
|
27
|
+
/** Returns superseded standard deployments of the handshake registry that remain live onchain. */ export async function getHistoricalStandardHandshakeRegistries() {
|
|
28
|
+
if (!historicalStandardContracts) {
|
|
29
|
+
// Same bundler-compatible lazy import as `getHandshakeRegistryArtifact` above.
|
|
30
|
+
const { default: handshakeRegistryV501Json } = await import('../../artifacts-historical/HandshakeRegistry-5.0.1.json');
|
|
31
|
+
historicalStandardContracts = [
|
|
32
|
+
makeStandardContractFromData(HANDSHAKE_REGISTRY_V5_0_1_DATA, loadContractArtifact(handshakeRegistryV501Json))
|
|
33
|
+
];
|
|
34
|
+
}
|
|
35
|
+
return historicalStandardContracts;
|
|
36
|
+
}
|
package/dest/index.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export * from './auth-registry/index.js';
|
|
2
2
|
export * from './handshake-registry/index.js';
|
|
3
3
|
export * from './multi-call-entrypoint/index.js';
|
|
4
|
+
export * from './preloaded/index.js';
|
|
4
5
|
export * from './public-checks/index.js';
|
|
5
6
|
export * from './publishable_standard_contracts.js';
|
|
6
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyxxQ0FBcUMsQ0FBQyJ9
|
package/dest/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,kCAAkC,CAAC;AACjD,cAAc,0BAA0B,CAAC;AACzC,cAAc,qCAAqC,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAC;AACzC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,kCAAkC,CAAC;AACjD,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,qCAAqC,CAAC"}
|
package/dest/index.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
export * from './auth-registry/index.js';
|
|
2
2
|
export * from './handshake-registry/index.js';
|
|
3
3
|
export * from './multi-call-entrypoint/index.js';
|
|
4
|
+
export * from './preloaded/index.js';
|
|
4
5
|
export * from './public-checks/index.js';
|
|
5
6
|
export * from './publishable_standard_contracts.js';
|
|
@@ -1,9 +1,21 @@
|
|
|
1
|
+
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
1
2
|
import type { ContractArtifact } from '@aztec/stdlib/abi';
|
|
3
|
+
import type { ContractData } from './contract_data.js';
|
|
2
4
|
import type { StandardContract } from './standard_contract.js';
|
|
3
5
|
import { type StandardContractName } from './standard_contract_data.js';
|
|
6
|
+
/** Precomputed deployment values of a standard contract, enough to reconstruct it without any hash computations. */
|
|
7
|
+
export type StandardContractData = ContractData & {
|
|
8
|
+
salt: Fr;
|
|
9
|
+
};
|
|
4
10
|
/**
|
|
5
11
|
* Reconstructs a StandardContract from precomputed data without performing any hash computations.
|
|
6
12
|
* Internal to the standard-contracts package — not part of the public API.
|
|
7
13
|
*/
|
|
8
14
|
export declare function makeStandardContract(name: StandardContractName, artifact: ContractArtifact): StandardContract;
|
|
9
|
-
|
|
15
|
+
/**
|
|
16
|
+
* Reconstructs a StandardContract from explicit precomputed data, for deployments not covered by the generated
|
|
17
|
+
* `standard_contract_data.ts` records (namely historical deployments from previous releases).
|
|
18
|
+
* Internal to the standard-contracts package, not part of the public API.
|
|
19
|
+
*/
|
|
20
|
+
export declare function makeStandardContractFromData(data: StandardContractData, artifact: ContractArtifact): StandardContract;
|
|
21
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFrZV9zdGFuZGFyZF9jb250cmFjdC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL21ha2Vfc3RhbmRhcmRfY29udHJhY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3BELE9BQU8sS0FBSyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFJMUQsT0FBTyxLQUFLLEVBQUUsWUFBWSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDdkQsT0FBTyxLQUFLLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUMvRCxPQUFPLEVBS0wsS0FBSyxvQkFBb0IsRUFHMUIsTUFBTSw2QkFBNkIsQ0FBQztBQUVyQyxvSEFBb0g7QUFDcEgsTUFBTSxNQUFNLG9CQUFvQixHQUFHLFlBQVksR0FBRztJQUFFLElBQUksRUFBRSxFQUFFLENBQUE7Q0FBRSxDQUFDO0FBRS9EOzs7R0FHRztBQUNILHdCQUFnQixvQkFBb0IsQ0FBQyxJQUFJLEVBQUUsb0JBQW9CLEVBQUUsUUFBUSxFQUFFLGdCQUFnQixHQUFHLGdCQUFnQixDQWU3RztBQUVEOzs7O0dBSUc7QUFDSCx3QkFBZ0IsNEJBQTRCLENBQUMsSUFBSSxFQUFFLG9CQUFvQixFQUFFLFFBQVEsRUFBRSxnQkFBZ0IsR0FBRyxnQkFBZ0IsQ0EyQnJIIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"make_standard_contract.d.ts","sourceRoot":"","sources":["../src/make_standard_contract.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"make_standard_contract.d.ts","sourceRoot":"","sources":["../src/make_standard_contract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAI1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,EAKL,KAAK,oBAAoB,EAG1B,MAAM,6BAA6B,CAAC;AAErC,oHAAoH;AACpH,MAAM,MAAM,oBAAoB,GAAG,YAAY,GAAG;IAAE,IAAI,EAAE,EAAE,CAAA;CAAE,CAAC;AAE/D;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,oBAAoB,EAAE,QAAQ,EAAE,gBAAgB,GAAG,gBAAgB,CAe7G;AAED;;;;GAIG;AACH,wBAAgB,4BAA4B,CAAC,IAAI,EAAE,oBAAoB,EAAE,QAAQ,EAAE,gBAAgB,GAAG,gBAAgB,CA2BrH"}
|
|
@@ -6,11 +6,24 @@ import { StandardContractAddress, StandardContractClassId, StandardContractClass
|
|
|
6
6
|
* Reconstructs a StandardContract from precomputed data without performing any hash computations.
|
|
7
7
|
* Internal to the standard-contracts package — not part of the public API.
|
|
8
8
|
*/ export function makeStandardContract(name, artifact) {
|
|
9
|
-
const address = StandardContractAddress[name];
|
|
10
|
-
const salt = StandardContractSalt[name];
|
|
11
|
-
const classId = StandardContractClassId[name];
|
|
12
9
|
const { artifactHash, privateFunctionsRoot, publicBytecodeCommitment } = StandardContractClassIdPreimage[name];
|
|
13
|
-
|
|
10
|
+
return makeStandardContractFromData({
|
|
11
|
+
address: StandardContractAddress[name],
|
|
12
|
+
salt: StandardContractSalt[name],
|
|
13
|
+
classId: StandardContractClassId[name],
|
|
14
|
+
artifactHash,
|
|
15
|
+
privateFunctionsRoot,
|
|
16
|
+
publicBytecodeCommitment,
|
|
17
|
+
initializationHash: StandardContractInitializationHash[name],
|
|
18
|
+
privateFunctions: StandardContractPrivateFunctions[name]
|
|
19
|
+
}, artifact);
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Reconstructs a StandardContract from explicit precomputed data, for deployments not covered by the generated
|
|
23
|
+
* `standard_contract_data.ts` records (namely historical deployments from previous releases).
|
|
24
|
+
* Internal to the standard-contracts package, not part of the public API.
|
|
25
|
+
*/ export function makeStandardContractFromData(data, artifact) {
|
|
26
|
+
const { address, salt, classId, artifactHash, privateFunctionsRoot, publicBytecodeCommitment, initializationHash } = data;
|
|
14
27
|
const contractClass = {
|
|
15
28
|
id: classId,
|
|
16
29
|
version: 1,
|
|
@@ -18,7 +31,7 @@ import { StandardContractAddress, StandardContractClassId, StandardContractClass
|
|
|
18
31
|
privateFunctionsRoot,
|
|
19
32
|
publicBytecodeCommitment,
|
|
20
33
|
packedBytecode: artifact.functions.find((f)=>f.name === 'public_dispatch')?.bytecode ?? Buffer.alloc(0),
|
|
21
|
-
privateFunctions:
|
|
34
|
+
privateFunctions: data.privateFunctions
|
|
22
35
|
};
|
|
23
36
|
const instance = {
|
|
24
37
|
version: 2,
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { StandardContract } from '../standard_contract.js';
|
|
2
|
+
/**
|
|
3
|
+
* Returns the standard contracts every PXE registers by default: the MultiCallEntrypoint, the AuthRegistry, and the
|
|
4
|
+
* HandshakeRegistry, plus superseded HandshakeRegistry deployments that remain live onchain so contracts compiled
|
|
5
|
+
* against older releases keep resolving the registry version they were built for.
|
|
6
|
+
*/
|
|
7
|
+
export declare function getDefaultStandardPreloadedContracts(): Promise<StandardContract[]>;
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wcmVsb2FkZWQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsT0FBTyxLQUFLLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUVoRTs7OztHQUlHO0FBQ0gsd0JBQXNCLG9DQUFvQyxJQUFJLE9BQU8sQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLENBUXhGIn0=
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/preloaded/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE;;;;GAIG;AACH,wBAAsB,oCAAoC,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAQxF"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { getStandardAuthRegistry } from '../auth-registry/index.js';
|
|
2
|
+
import { getHistoricalStandardHandshakeRegistries, getStandardHandshakeRegistry } from '../handshake-registry/index.js';
|
|
3
|
+
import { getStandardMultiCallEntrypoint } from '../multi-call-entrypoint/index.js';
|
|
4
|
+
/**
|
|
5
|
+
* Returns the standard contracts every PXE registers by default: the MultiCallEntrypoint, the AuthRegistry, and the
|
|
6
|
+
* HandshakeRegistry, plus superseded HandshakeRegistry deployments that remain live onchain so contracts compiled
|
|
7
|
+
* against older releases keep resolving the registry version they were built for.
|
|
8
|
+
*/ export async function getDefaultStandardPreloadedContracts() {
|
|
9
|
+
const [multiCallEntrypoint, authRegistry, handshakeRegistry, historicalHandshakeRegistries] = await Promise.all([
|
|
10
|
+
getStandardMultiCallEntrypoint(),
|
|
11
|
+
getStandardAuthRegistry(),
|
|
12
|
+
getStandardHandshakeRegistry(),
|
|
13
|
+
getHistoricalStandardHandshakeRegistries()
|
|
14
|
+
]);
|
|
15
|
+
return [
|
|
16
|
+
multiCallEntrypoint,
|
|
17
|
+
authRegistry,
|
|
18
|
+
handshakeRegistry,
|
|
19
|
+
...historicalHandshakeRegistries
|
|
20
|
+
];
|
|
21
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { StandardContract } from '../standard_contract.js';
|
|
2
|
+
/**
|
|
3
|
+
* Returns the standard contracts every PXE registers by default: the MultiCallEntrypoint, the AuthRegistry, and the
|
|
4
|
+
* HandshakeRegistry, plus superseded HandshakeRegistry deployments that remain live onchain so contracts compiled
|
|
5
|
+
* against older releases keep resolving the registry version they were built for.
|
|
6
|
+
*/
|
|
7
|
+
export declare function getDefaultStandardPreloadedContracts(): Promise<StandardContract[]>;
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF6eS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3ByZWxvYWRlZC9sYXp5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sS0FBSyxFQUFFLGdCQUFnQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFaEU7Ozs7R0FJRztBQUNILHdCQUFzQixvQ0FBb0MsSUFBSSxPQUFPLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxDQVF4RiJ9
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lazy.d.ts","sourceRoot":"","sources":["../../src/preloaded/lazy.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE;;;;GAIG;AACH,wBAAsB,oCAAoC,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAQxF"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { getStandardAuthRegistry } from '../auth-registry/lazy.js';
|
|
2
|
+
import { getHistoricalStandardHandshakeRegistries, getStandardHandshakeRegistry } from '../handshake-registry/lazy.js';
|
|
3
|
+
import { getStandardMultiCallEntrypoint } from '../multi-call-entrypoint/lazy.js';
|
|
4
|
+
/**
|
|
5
|
+
* Returns the standard contracts every PXE registers by default: the MultiCallEntrypoint, the AuthRegistry, and the
|
|
6
|
+
* HandshakeRegistry, plus superseded HandshakeRegistry deployments that remain live onchain so contracts compiled
|
|
7
|
+
* against older releases keep resolving the registry version they were built for.
|
|
8
|
+
*/ export async function getDefaultStandardPreloadedContracts() {
|
|
9
|
+
const [multiCallEntrypoint, authRegistry, handshakeRegistry, historicalHandshakeRegistries] = await Promise.all([
|
|
10
|
+
getStandardMultiCallEntrypoint(),
|
|
11
|
+
getStandardAuthRegistry(),
|
|
12
|
+
getStandardHandshakeRegistry(),
|
|
13
|
+
getHistoricalStandardHandshakeRegistries()
|
|
14
|
+
]);
|
|
15
|
+
return [
|
|
16
|
+
multiCallEntrypoint,
|
|
17
|
+
authRegistry,
|
|
18
|
+
handshakeRegistry,
|
|
19
|
+
...historicalHandshakeRegistries
|
|
20
|
+
];
|
|
21
|
+
}
|
|
@@ -15,36 +15,36 @@ export const StandardContractSalt = {
|
|
|
15
15
|
HandshakeRegistry: new Fr(1)
|
|
16
16
|
};
|
|
17
17
|
export const StandardContractAddress = {
|
|
18
|
-
AuthRegistry: AztecAddress.fromStringUnsafe('
|
|
19
|
-
MultiCallEntrypoint: AztecAddress.fromStringUnsafe('
|
|
20
|
-
PublicChecks: AztecAddress.fromStringUnsafe('
|
|
21
|
-
HandshakeRegistry: AztecAddress.fromStringUnsafe('
|
|
18
|
+
AuthRegistry: AztecAddress.fromStringUnsafe('0x1e8e7e73c592a1b1c9199b4b655ddc7a16fa8a8488df595610b71d3dc1cc666c'),
|
|
19
|
+
MultiCallEntrypoint: AztecAddress.fromStringUnsafe('0x246d60af8b79a5dceece7d2388921203401c0df02ce674c5781c6c2162922986'),
|
|
20
|
+
PublicChecks: AztecAddress.fromStringUnsafe('0x031b75e2c220f6a6f27da5d61f7b2a12756a127fd25b95fad5da1c5520994b18'),
|
|
21
|
+
HandshakeRegistry: AztecAddress.fromStringUnsafe('0x06127814dca78709650de6629637194f7381d2e05b35eb9d53a4746636c9aa9d')
|
|
22
22
|
};
|
|
23
23
|
export const StandardContractClassId = {
|
|
24
|
-
AuthRegistry: Fr.fromString('
|
|
25
|
-
MultiCallEntrypoint: Fr.fromString('
|
|
26
|
-
PublicChecks: Fr.fromString('
|
|
27
|
-
HandshakeRegistry: Fr.fromString('
|
|
24
|
+
AuthRegistry: Fr.fromString('0x04182c4b482c8e60c386e473f6dbb6bb3e2ef18e5156f7c9db5ac46af81abdcf'),
|
|
25
|
+
MultiCallEntrypoint: Fr.fromString('0x2f20566eaff9091697f8f5c43a19041267c7591d54074b57043eae90fca8ea64'),
|
|
26
|
+
PublicChecks: Fr.fromString('0x04bc93d415c4d48acab6063b6410f74e1cc257ba8e519020f8773b4ce8ccd31e'),
|
|
27
|
+
HandshakeRegistry: Fr.fromString('0x2e04c07c83ee8107e921c3ae4ade010ee183860a89b7534ea3367efb561d2c3b')
|
|
28
28
|
};
|
|
29
29
|
export const StandardContractClassIdPreimage = {
|
|
30
30
|
AuthRegistry: {
|
|
31
|
-
artifactHash: Fr.fromString('
|
|
32
|
-
privateFunctionsRoot: Fr.fromString('
|
|
31
|
+
artifactHash: Fr.fromString('0x0f050d2517afac6974e02937314e095569f4c7bb70d98cea097c562313872c8c'),
|
|
32
|
+
privateFunctionsRoot: Fr.fromString('0x1b16157ab0b322bcaf3de5cb197b276c5e29ca3668a0c440668ca56aa7dfff77'),
|
|
33
33
|
publicBytecodeCommitment: Fr.fromString('0x0c7984b020afc901da3b5898b8f94d1d9a09ea2b37d6e0043409abc0b0332906')
|
|
34
34
|
},
|
|
35
35
|
MultiCallEntrypoint: {
|
|
36
|
-
artifactHash: Fr.fromString('
|
|
37
|
-
privateFunctionsRoot: Fr.fromString('
|
|
36
|
+
artifactHash: Fr.fromString('0x2c0df1970a0307e54c4445670a7f915a77ed57650ffd37a76c47e512c88e0302'),
|
|
37
|
+
privateFunctionsRoot: Fr.fromString('0x10228bc99b6715f15c866a1df0d9cb63c31920cb8e61a6b79058bf98658d7f39'),
|
|
38
38
|
publicBytecodeCommitment: Fr.fromString('0x0ce4c618c3ed7f3a20410e618c06bb701e150af7fe28a3e92f68e7733809f33e')
|
|
39
39
|
},
|
|
40
40
|
PublicChecks: {
|
|
41
|
-
artifactHash: Fr.fromString('
|
|
41
|
+
artifactHash: Fr.fromString('0x0e6f595db5f0830c2f52f1a5aec5cc85193b89a47408cfbbb2d6ad8f3a7c8a52'),
|
|
42
42
|
privateFunctionsRoot: Fr.fromString('0x202860adb1b8975971eeaf571aaaa88a27f4035290d58532ae7d60b0dfaad54c'),
|
|
43
43
|
publicBytecodeCommitment: Fr.fromString('0x013c4f854a5c87c9daf86c5f9bc07a42c2a061f1d924a5b3564ec7edc8e18cb7')
|
|
44
44
|
},
|
|
45
45
|
HandshakeRegistry: {
|
|
46
|
-
artifactHash: Fr.fromString('
|
|
47
|
-
privateFunctionsRoot: Fr.fromString('
|
|
46
|
+
artifactHash: Fr.fromString('0x005a9c5db229999895a873e4c2bcaf6ca2523522b5c520c52c39b1bdb1b5faee'),
|
|
47
|
+
privateFunctionsRoot: Fr.fromString('0x1bb83fa540ba6654ffe4a4c75ec9349180a2f0ecd0d3851ca28d665ab2926c73'),
|
|
48
48
|
publicBytecodeCommitment: Fr.fromString('0x0ce4c618c3ed7f3a20410e618c06bb701e150af7fe28a3e92f68e7733809f33e')
|
|
49
49
|
}
|
|
50
50
|
};
|
|
@@ -58,28 +58,28 @@ export const StandardContractPrivateFunctions = {
|
|
|
58
58
|
AuthRegistry: [
|
|
59
59
|
{
|
|
60
60
|
selector: FunctionSelector.fromField(Fr.fromString('0x0000000000000000000000000000000000000000000000000000000079a3d418')),
|
|
61
|
-
vkHash: Fr.fromString('
|
|
61
|
+
vkHash: Fr.fromString('0x2d46cdec4cc2afd813ba2b50106dba455821e4c7b3c10f1c7293bbc759dccf64')
|
|
62
62
|
}
|
|
63
63
|
],
|
|
64
64
|
MultiCallEntrypoint: [
|
|
65
65
|
{
|
|
66
66
|
selector: FunctionSelector.fromField(Fr.fromString('0x00000000000000000000000000000000000000000000000000000000f04908a9')),
|
|
67
|
-
vkHash: Fr.fromString('
|
|
67
|
+
vkHash: Fr.fromString('0x0699bae67183ce084da1cd76ce05d18f45f796237f2baafaf7d4bfbf9663c433')
|
|
68
68
|
}
|
|
69
69
|
],
|
|
70
70
|
PublicChecks: [],
|
|
71
71
|
HandshakeRegistry: [
|
|
72
72
|
{
|
|
73
73
|
selector: FunctionSelector.fromField(Fr.fromString('0x0000000000000000000000000000000000000000000000000000000019f8b409')),
|
|
74
|
-
vkHash: Fr.fromString('
|
|
74
|
+
vkHash: Fr.fromString('0x195d78c4fa1f3f8accaa2dcc45115c5b0536e68cdd4c06f5999185554f7b73e4')
|
|
75
75
|
},
|
|
76
76
|
{
|
|
77
77
|
selector: FunctionSelector.fromField(Fr.fromString('0x00000000000000000000000000000000000000000000000000000000db548fcf')),
|
|
78
|
-
vkHash: Fr.fromString('
|
|
78
|
+
vkHash: Fr.fromString('0x06ea812f1c792a864a36003312327d78995fdd894fbf48d54928a315e84df342')
|
|
79
79
|
},
|
|
80
80
|
{
|
|
81
81
|
selector: FunctionSelector.fromField(Fr.fromString('0x00000000000000000000000000000000000000000000000000000000f1ff839b')),
|
|
82
|
-
vkHash: Fr.fromString('
|
|
82
|
+
vkHash: Fr.fromString('0x049120d4c9a12a2286c83df31064637b53746ea13868b0756174dcb3e036bb9d')
|
|
83
83
|
}
|
|
84
84
|
]
|
|
85
85
|
};
|
package/package.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"name": "@aztec/standard-contracts",
|
|
3
3
|
"homepage": "https://github.com/AztecProtocol/aztec-packages/tree/master/yarn-project/standard-contracts",
|
|
4
4
|
"description": "Standard non-protocol contracts for the Aztec Network",
|
|
5
|
-
"version": "0.0.1-commit.
|
|
5
|
+
"version": "0.0.1-commit.431c48d",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"exports": {
|
|
8
8
|
".": "./dest/index.js",
|
|
@@ -74,8 +74,8 @@
|
|
|
74
74
|
]
|
|
75
75
|
},
|
|
76
76
|
"dependencies": {
|
|
77
|
-
"@aztec/foundation": "0.0.1-commit.
|
|
78
|
-
"@aztec/stdlib": "0.0.1-commit.
|
|
77
|
+
"@aztec/foundation": "0.0.1-commit.431c48d",
|
|
78
|
+
"@aztec/stdlib": "0.0.1-commit.431c48d",
|
|
79
79
|
"tslib": "^2.4.0"
|
|
80
80
|
},
|
|
81
81
|
"devDependencies": {
|
|
@@ -95,6 +95,7 @@
|
|
|
95
95
|
"src",
|
|
96
96
|
"!*.test.*",
|
|
97
97
|
"artifacts",
|
|
98
|
+
"artifacts-historical",
|
|
98
99
|
"!src/scripts/*"
|
|
99
100
|
],
|
|
100
101
|
"engines": {
|
package/src/contract_data.ts
CHANGED
|
@@ -25,7 +25,7 @@ import { promises as fs } from 'fs';
|
|
|
25
25
|
import path from 'path';
|
|
26
26
|
|
|
27
27
|
/** Root of the noir-contracts package relative to `yarn-project/standard-contracts`. */
|
|
28
|
-
export const NOIR_CONTRACTS_ROOT = '../../noir-projects/
|
|
28
|
+
export const NOIR_CONTRACTS_ROOT = '../../noir-projects/noir-contracts';
|
|
29
29
|
/** Directory holding the freshly-compiled Noir artifacts the generator reads from. */
|
|
30
30
|
export const NOIR_ARTIFACTS_SRC_PATH = path.join(NOIR_CONTRACTS_ROOT, './target');
|
|
31
31
|
/** Output directory inside this package where the trimmed artifacts get copied. */
|
|
@@ -35,7 +35,7 @@ export const STANDARD_CONTRACT_DATA_OUTPUT_PATH = './src/standard_contract_data.
|
|
|
35
35
|
// The `aztec` crate in aztec-nr needs a twin of the generated addresses module stamped into its
|
|
36
36
|
// source so circuits can reference standard-contract addresses at compile time (e.g. authwit and
|
|
37
37
|
// public_checks) without re-hashing at runtime.
|
|
38
|
-
export const NOIR_STANDARD_ADDRESSES_PATHS = ['../../noir-projects/
|
|
38
|
+
export const NOIR_STANDARD_ADDRESSES_PATHS = ['../../noir-projects/aztec-nr/aztec/src/standard_addresses.nr'];
|
|
39
39
|
|
|
40
40
|
/** The deployment salt baked into every standard contract instance. */
|
|
41
41
|
export const STANDARD_CONTRACT_SALT = new Fr(1);
|
|
@@ -7,6 +7,8 @@ import type { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
|
7
7
|
|
|
8
8
|
import { StandardContractAddress, StandardContractClassId, StandardContractSalt } from '../standard_contract_data.js';
|
|
9
9
|
|
|
10
|
+
export { HISTORICAL_STANDARD_HANDSHAKE_REGISTRY_ADDRESSES } from './historical.js';
|
|
11
|
+
|
|
10
12
|
export const STANDARD_HANDSHAKE_REGISTRY_ADDRESS: AztecAddress = StandardContractAddress.HandshakeRegistry;
|
|
11
13
|
export const STANDARD_HANDSHAKE_REGISTRY_CLASS_ID = StandardContractClassId.HandshakeRegistry;
|
|
12
14
|
export const STANDARD_HANDSHAKE_REGISTRY_SALT = StandardContractSalt.HandshakeRegistry;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
// Deployment data of superseded standard HandshakeRegistry versions. When a release changes the registry (and thus
|
|
2
|
+
// its canonical address), contracts compiled against earlier releases keep the old address baked into their
|
|
3
|
+
// bytecode, and the old instance stays live onchain. Archiving the retired deployment here (data below, trimmed
|
|
4
|
+
// artifact under `artifacts-historical/`) lets PXE keep registering and authorizing it, so apps built on older
|
|
5
|
+
// releases keep working against newer aztec.js versions.
|
|
6
|
+
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
7
|
+
import { FunctionSelector } from '@aztec/stdlib/abi';
|
|
8
|
+
import { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
9
|
+
|
|
10
|
+
import type { StandardContractData } from '../make_standard_contract.js';
|
|
11
|
+
|
|
12
|
+
/** Deployment data of the standard HandshakeRegistry released in v5.0.1 and superseded in v5.1.0. */
|
|
13
|
+
export const HANDSHAKE_REGISTRY_V5_0_1_DATA: StandardContractData = {
|
|
14
|
+
address: AztecAddress.fromStringUnsafe('0x086c3c67589e1141c70ed0ed8ae324c51d3bf7c5637043fd84c424ffb625831d'),
|
|
15
|
+
salt: new Fr(1),
|
|
16
|
+
classId: Fr.fromString('0x020ec1998d06036ddab4ba170e9b0d9b96e52beb58aa5ea83d72b22f589cbe6c'),
|
|
17
|
+
artifactHash: Fr.fromString('0x2dd01b80cabc352f7d01799a6e5dd6255cc0d7f01fe42d270760d0bf0a0b5daf'),
|
|
18
|
+
privateFunctionsRoot: Fr.fromString('0x0c80100ee31d91778c8f3d4453d056a58467b50f86d446f3209b96d87acb354e'),
|
|
19
|
+
publicBytecodeCommitment: Fr.fromString('0x0ce4c618c3ed7f3a20410e618c06bb701e150af7fe28a3e92f68e7733809f33e'),
|
|
20
|
+
initializationHash: Fr.fromString('0x0000000000000000000000000000000000000000000000000000000000000000'),
|
|
21
|
+
privateFunctions: [
|
|
22
|
+
{
|
|
23
|
+
selector: FunctionSelector.fromField(new Fr(0x19f8b409)),
|
|
24
|
+
vkHash: Fr.fromString('0x033a99c31fd390e320398efa03eb1a34d0db2f2e0201fbb0062aa915f406f3d7'),
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
selector: FunctionSelector.fromField(new Fr(0xdb548fcf)),
|
|
28
|
+
vkHash: Fr.fromString('0x12964f25be85fded4079591a3871e85d15967c75fd70f3d0edf10d72abfea59c'),
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
selector: FunctionSelector.fromField(new Fr(0xf1ff839b)),
|
|
32
|
+
vkHash: Fr.fromString('0x049120d4c9a12a2286c83df31064637b53746ea13868b0756174dcb3e036bb9d'),
|
|
33
|
+
},
|
|
34
|
+
],
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* Addresses of superseded standard HandshakeRegistry deployments that remain live onchain. PXE registers these
|
|
39
|
+
* alongside the current deployment and authorizes their read functions, so contracts compiled against older
|
|
40
|
+
* releases can still reach the registry version they were built for.
|
|
41
|
+
*/
|
|
42
|
+
export const HISTORICAL_STANDARD_HANDSHAKE_REGISTRY_ADDRESSES: AztecAddress[] = [
|
|
43
|
+
HANDSHAKE_REGISTRY_V5_0_1_DATA.address,
|
|
44
|
+
];
|