@openzeppelin/wizard 0.9.0 → 0.10.2

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 (59) hide show
  1. package/README.md +17 -57
  2. package/dist/account.js +13 -8
  3. package/dist/account.js.map +1 -1
  4. package/dist/api.d.ts +11 -0
  5. package/dist/api.d.ts.map +1 -1
  6. package/dist/api.js +9 -0
  7. package/dist/api.js.map +1 -1
  8. package/dist/environments/hardhat/package-lock.json +64 -64
  9. package/dist/environments/hardhat/package.json +2 -2
  10. package/dist/environments/hardhat/upgradeable/package-lock.json +69 -69
  11. package/dist/environments/hardhat/upgradeable/package.json +4 -4
  12. package/dist/erc20.js +1 -1
  13. package/dist/generate/account.js +1 -1
  14. package/dist/generate/account.js.map +1 -1
  15. package/dist/generate/stablecoin.js +2 -2
  16. package/dist/generate/stablecoin.js.map +1 -1
  17. package/dist/get-versioned-remappings.d.ts +3 -0
  18. package/dist/get-versioned-remappings.d.ts.map +1 -0
  19. package/dist/get-versioned-remappings.js +15 -0
  20. package/dist/get-versioned-remappings.js.map +1 -0
  21. package/dist/print.d.ts.map +1 -1
  22. package/dist/print.js +4 -3
  23. package/dist/print.js.map +1 -1
  24. package/dist/set-upgradeable.d.ts.map +1 -1
  25. package/dist/set-upgradeable.js +2 -0
  26. package/dist/set-upgradeable.js.map +1 -1
  27. package/dist/signer.d.ts +12 -8
  28. package/dist/signer.d.ts.map +1 -1
  29. package/dist/signer.js +49 -18
  30. package/dist/signer.js.map +1 -1
  31. package/dist/stablecoin.d.ts +2 -2
  32. package/dist/stablecoin.d.ts.map +1 -1
  33. package/dist/stablecoin.js +44 -62
  34. package/dist/stablecoin.js.map +1 -1
  35. package/dist/utils/convert-strings.d.ts +3 -3
  36. package/dist/utils/convert-strings.js +3 -3
  37. package/dist/utils/version.d.ts +1 -1
  38. package/dist/utils/version.js +1 -1
  39. package/dist/zip-hardhat.d.ts.map +1 -1
  40. package/dist/zip-hardhat.js +1 -0
  41. package/dist/zip-hardhat.js.map +1 -1
  42. package/package.json +3 -3
  43. package/src/account.ts +14 -8
  44. package/src/api.ts +21 -0
  45. package/src/environments/hardhat/package-lock.json +64 -64
  46. package/src/environments/hardhat/package.json +3 -3
  47. package/src/environments/hardhat/upgradeable/package-lock.json +69 -69
  48. package/src/environments/hardhat/upgradeable/package.json +5 -5
  49. package/src/erc20.ts +1 -1
  50. package/src/generate/account.ts +1 -1
  51. package/src/generate/stablecoin.ts +2 -2
  52. package/src/get-versioned-remappings.ts +10 -0
  53. package/src/print.ts +7 -3
  54. package/src/set-upgradeable.ts +2 -0
  55. package/src/signer.ts +53 -19
  56. package/src/stablecoin.ts +49 -68
  57. package/src/utils/convert-strings.ts +3 -3
  58. package/src/utils/version.ts +1 -1
  59. package/src/zip-hardhat.ts +1 -0
@@ -1,8 +1,8 @@
1
1
  import type { Contract } from './contract';
2
2
  import type { ERC20Options } from './erc20';
3
3
  export interface StablecoinOptions extends ERC20Options {
4
- limitations?: false | 'allowlist' | 'blocklist';
5
- custodian?: boolean;
4
+ restrictions?: false | 'allowlist' | 'blocklist';
5
+ freezable?: boolean;
6
6
  }
7
7
  export declare const defaults: Required<StablecoinOptions>;
8
8
  export declare function printStablecoin(opts?: StablecoinOptions): string;
@@ -1 +1 @@
1
- {"version":3,"file":"stablecoin.d.ts","sourceRoot":"","sources":["../src/stablecoin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAmB,MAAM,YAAY,CAAC;AAK5D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAQ5C,MAAM,WAAW,iBAAkB,SAAQ,YAAY;IACrD,WAAW,CAAC,EAAE,KAAK,GAAG,WAAW,GAAG,WAAW,CAAC;IAChD,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,eAAO,MAAM,QAAQ,EAAE,QAAQ,CAAC,iBAAiB,CAMvC,CAAC;AAYX,wBAAgB,eAAe,CAAC,IAAI,GAAE,iBAA4B,GAAG,MAAM,CAE1E;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,OAAO,CAAC,iBAAiB,CAAC,GAAG,OAAO,CAEjF;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,iBAAiB,GAAG,QAAQ,CAiBjE"}
1
+ {"version":3,"file":"stablecoin.d.ts","sourceRoot":"","sources":["../src/stablecoin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAmB,MAAM,YAAY,CAAC;AAK5D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAQ5C,MAAM,WAAW,iBAAkB,SAAQ,YAAY;IACrD,YAAY,CAAC,EAAE,KAAK,GAAG,WAAW,GAAG,WAAW,CAAC;IACjD,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,eAAO,MAAM,QAAQ,EAAE,QAAQ,CAAC,iBAAiB,CAMvC,CAAC;AAYX,wBAAgB,eAAe,CAAC,IAAI,GAAE,iBAA4B,GAAG,MAAM,CAE1E;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,OAAO,CAAC,iBAAiB,CAAC,GAAG,OAAO,CAEjF;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,iBAAiB,GAAG,QAAQ,CAiBjE"}
@@ -12,104 +12,80 @@ exports.defaults = {
12
12
  ...erc20_1.defaults,
13
13
  name: 'MyStablecoin',
14
14
  symbol: 'MST',
15
- limitations: false,
16
- custodian: false,
15
+ restrictions: false,
16
+ freezable: false,
17
17
  };
18
18
  function withDefaults(opts) {
19
19
  return {
20
20
  ...(0, erc20_1.withDefaults)(opts),
21
21
  name: opts.name ?? exports.defaults.name,
22
22
  symbol: opts.symbol ?? exports.defaults.symbol,
23
- limitations: opts.limitations ?? exports.defaults.limitations,
24
- custodian: opts.custodian ?? exports.defaults.custodian,
23
+ restrictions: opts.restrictions ?? exports.defaults.restrictions,
24
+ freezable: opts.freezable ?? exports.defaults.freezable,
25
25
  };
26
26
  }
27
27
  function printStablecoin(opts = exports.defaults) {
28
28
  return (0, print_1.printContract)(buildStablecoin(opts));
29
29
  }
30
30
  function isAccessControlRequired(opts) {
31
- return opts.mintable || opts.limitations !== false || opts.custodian || opts.pausable || opts.upgradeable === 'uups';
31
+ return opts.mintable || opts.restrictions !== false || opts.freezable || opts.pausable || opts.upgradeable === 'uups';
32
32
  }
33
33
  function buildStablecoin(opts) {
34
34
  const allOpts = withDefaults(opts);
35
35
  // Upgradeability is not yet available for the community contracts
36
36
  allOpts.upgradeable = false;
37
37
  const c = (0, erc20_1.buildERC20)(allOpts);
38
- if (allOpts.custodian) {
39
- addCustodian(c, allOpts.access);
38
+ if (allOpts.freezable) {
39
+ addFreezable(c, allOpts.access);
40
40
  }
41
- if (allOpts.limitations) {
42
- addLimitations(c, allOpts.access, allOpts.limitations);
41
+ if (allOpts.restrictions) {
42
+ addRestrictions(c, allOpts.access, allOpts.restrictions);
43
43
  }
44
44
  return c;
45
45
  }
46
- function addLimitations(c, access, mode) {
47
- const type = mode === 'allowlist';
48
- const ERC20Limitation = {
49
- name: type ? 'ERC20Allowlist' : 'ERC20Blocklist',
50
- path: `@openzeppelin/community-contracts/token/ERC20/extensions/${type ? 'ERC20Allowlist' : 'ERC20Blocklist'}.sol`,
46
+ function addRestrictions(c, access, mode) {
47
+ const isAllowlist = mode === 'allowlist';
48
+ const ERC20Restricted = {
49
+ name: 'ERC20Restricted',
50
+ path: `@openzeppelin/community-contracts/token/ERC20/extensions/ERC20Restricted.sol`,
51
51
  };
52
- c.addParent(ERC20Limitation);
53
- c.addOverride(ERC20Limitation, functions._update);
54
- c.addOverride(ERC20Limitation, functions._approve);
55
- const [addFn, removeFn] = type
52
+ c.addParent(ERC20Restricted);
53
+ c.addOverride(ERC20Restricted, functions._update);
54
+ if (isAllowlist) {
55
+ c.addOverride(ERC20Restricted, functions.isUserAllowed);
56
+ c.setFunctionBody([`return getRestriction(user) == Restriction.ALLOWED;`], functions.isUserAllowed);
57
+ }
58
+ const [addFn, removeFn] = isAllowlist
56
59
  ? [functions.allowUser, functions.disallowUser]
57
60
  : [functions.blockUser, functions.unblockUser];
58
61
  (0, set_access_control_1.requireAccessControl)(c, addFn, access, 'LIMITER', 'limiter');
59
- c.addFunctionCode(`_${type ? 'allowUser' : 'blockUser'}(user);`, addFn);
62
+ c.addFunctionCode(`_${isAllowlist ? 'allow' : 'block'}User(user);`, addFn);
60
63
  (0, set_access_control_1.requireAccessControl)(c, removeFn, access, 'LIMITER', 'limiter');
61
- c.addFunctionCode(`_${type ? 'disallowUser' : 'unblockUser'}(user);`, removeFn);
64
+ c.addFunctionCode(`_resetUser(user);`, removeFn);
62
65
  }
63
- function addCustodian(c, access) {
64
- const ERC20Custodian = {
65
- name: 'ERC20Custodian',
66
- path: '@openzeppelin/community-contracts/token/ERC20/extensions/ERC20Custodian.sol',
66
+ function addFreezable(c, access) {
67
+ const ERC20Freezable = {
68
+ name: 'ERC20Freezable',
69
+ path: '@openzeppelin/community-contracts/token/ERC20/extensions/ERC20Freezable.sol',
67
70
  };
68
- c.addParent(ERC20Custodian);
69
- c.addOverride(ERC20Custodian, functions._update);
70
- c.addOverride(ERC20Custodian, functions._isCustodian);
71
+ c.addParent(ERC20Freezable);
72
+ c.addOverride(ERC20Freezable, functions._update);
71
73
  if (access === false) {
72
74
  access = 'ownable';
73
75
  }
74
- (0, set_access_control_1.setAccessControl)(c, access);
75
- switch (access) {
76
- case 'ownable': {
77
- c.setFunctionBody([`return user == owner();`], functions._isCustodian);
78
- break;
79
- }
80
- case 'roles': {
81
- const roleOwner = 'custodian';
82
- const roleId = 'CUSTODIAN_ROLE';
83
- const addedConstant = c.addConstantOrImmutableOrErrorDefinition(`bytes32 public constant ${roleId} = keccak256("${roleId}");`);
84
- if (roleOwner && addedConstant) {
85
- c.addConstructorArgument({ type: 'address', name: roleOwner });
86
- c.addConstructorCode(`_grantRole(${roleId}, ${roleOwner});`);
87
- }
88
- c.setFunctionBody([`return hasRole(CUSTODIAN_ROLE, user);`], functions._isCustodian);
89
- break;
90
- }
91
- case 'managed': {
92
- c.addImportOnly({
93
- name: 'AuthorityUtils',
94
- path: `@openzeppelin/contracts/access/manager/AuthorityUtils.sol`,
95
- });
96
- const logic = [
97
- `(bool immediate,) = AuthorityUtils.canCallWithDelay(authority(), user, address(this), bytes4(_msgData()[0:4]));`,
98
- `return immediate;`,
99
- ];
100
- c.setFunctionBody(logic, functions._isCustodian);
101
- break;
102
- }
103
- }
76
+ const freezeFn = functions.freeze;
77
+ (0, set_access_control_1.requireAccessControl)(c, freezeFn, access, 'FREEZER', 'freezer');
78
+ c.setFunctionBody([`_setFrozen(user, amount);`], freezeFn);
104
79
  }
105
80
  const functions = {
106
81
  ...erc20_1.functions,
107
82
  ...(0, define_functions_1.defineFunctions)({
108
- _isCustodian: {
109
- kind: 'internal',
110
- args: [{ name: 'user', type: 'address' }],
111
- returns: ['bool'],
112
- mutability: 'view',
83
+ freeze: {
84
+ kind: 'public',
85
+ args: [
86
+ { name: 'user', type: 'address' },
87
+ { name: 'amount', type: 'uint256' },
88
+ ],
113
89
  },
114
90
  allowUser: {
115
91
  kind: 'public',
@@ -127,6 +103,12 @@ const functions = {
127
103
  kind: 'public',
128
104
  args: [{ name: 'user', type: 'address' }],
129
105
  },
106
+ isUserAllowed: {
107
+ kind: 'public',
108
+ args: [{ name: 'user', type: 'address' }],
109
+ returns: ['bool'],
110
+ mutability: 'view',
111
+ },
130
112
  }),
131
113
  };
132
114
  //# sourceMappingURL=stablecoin.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"stablecoin.js","sourceRoot":"","sources":["../src/stablecoin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stablecoin.js","sourceRoot":"","sources":["../src/stablecoin.ts"],"names":[],"mappings":"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"}
@@ -2,10 +2,10 @@ export declare const UINT256_MAX: bigint;
2
2
  /**
3
3
  * Checks that a string is a valid `uint256` value and converts it to bigint.
4
4
  *
5
- * @param value The value to check.
6
- * @param field The field name to use in the error if the value is invalid.
5
+ * @param value The string value to check and convert.
6
+ * @param field The field name to use in the error message if the value is invalid.
7
7
  * @throws OptionsError if the value is not a valid number or is greater than the maximum value for `uint256`.
8
- * @returns The value as a bigint.
8
+ * @returns The validated value as a bigint.
9
9
  */
10
10
  export declare function toUint256(value: string, field: string): bigint;
11
11
  //# sourceMappingURL=convert-strings.d.ts.map
@@ -7,10 +7,10 @@ exports.UINT256_MAX = BigInt(2) ** BigInt(256) - BigInt(1);
7
7
  /**
8
8
  * Checks that a string is a valid `uint256` value and converts it to bigint.
9
9
  *
10
- * @param value The value to check.
11
- * @param field The field name to use in the error if the value is invalid.
10
+ * @param value The string value to check and convert.
11
+ * @param field The field name to use in the error message if the value is invalid.
12
12
  * @throws OptionsError if the value is not a valid number or is greater than the maximum value for `uint256`.
13
- * @returns The value as a bigint.
13
+ * @returns The validated value as a bigint.
14
14
  */
15
15
  function toUint256(value, field) {
16
16
  const isValidNumber = /^\d+$/.test(value);
@@ -1,5 +1,5 @@
1
1
  /**
2
2
  * Semantic version string representing of the minimum compatible version of Contracts to display in output.
3
3
  */
4
- export declare const compatibleContractsSemver = "^5.4.0";
4
+ export declare const compatibleContractsSemver = "^5.5.0";
5
5
  //# sourceMappingURL=version.d.ts.map
@@ -4,5 +4,5 @@ exports.compatibleContractsSemver = void 0;
4
4
  /**
5
5
  * Semantic version string representing of the minimum compatible version of Contracts to display in output.
6
6
  */
7
- exports.compatibleContractsSemver = '^5.4.0';
7
+ exports.compatibleContractsSemver = '^5.5.0';
8
8
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"zip-hardhat.d.ts","sourceRoot":"","sources":["../src/zip-hardhat.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AA6M3C,wBAAsB,UAAU,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,cAAc,kBA8BlE"}
1
+ {"version":3,"file":"zip-hardhat.d.ts","sourceRoot":"","sources":["../src/zip-hardhat.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AA8M3C,wBAAsB,UAAU,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,cAAc,kBA8BlE"}
@@ -50,6 +50,7 @@ const config: HardhatUserConfig = {
50
50
  solidity: {
51
51
  version: "${solidity_version_json_1.default}",
52
52
  settings: {
53
+ evmVersion: 'cancun',
53
54
  optimizer: {
54
55
  enabled: true,
55
56
  },
@@ -1 +1 @@
1
- {"version":3,"file":"zip-hardhat.js","sourceRoot":"","sources":["../src/zip-hardhat.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"zip-hardhat.js","sourceRoot":"","sources":["../src/zip-hardhat.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openzeppelin/wizard",
3
- "version": "0.9.0",
3
+ "version": "0.10.2",
4
4
  "description": "A boilerplate generator to get started with OpenZeppelin Contracts",
5
5
  "license": "AGPL-3.0-only",
6
6
  "repository": "https://github.com/OpenZeppelin/contracts-wizard",
@@ -26,8 +26,8 @@
26
26
  },
27
27
  "devDependencies": {
28
28
  "@openzeppelin/community-contracts": "git+https://github.com/OpenZeppelin/openzeppelin-community-contracts.git#b0ddd27",
29
- "@openzeppelin/contracts": "^5.4.0",
30
- "@openzeppelin/contracts-upgradeable": "^5.4.0",
29
+ "@openzeppelin/contracts": "^5.5.0",
30
+ "@openzeppelin/contracts-upgradeable": "^5.5.0",
31
31
  "@types/node": "^20.0.0",
32
32
  "@types/semver": "^7.5.7",
33
33
  "ava": "^6.0.0",
package/src/account.ts CHANGED
@@ -244,18 +244,23 @@ function overrideRawSignatureValidation(c: ContractBuilder, opts: AccountOptions
244
244
  // Disambiguate between Signer and AccountERC7579
245
245
  if (opts.signer && opts.ERC7579Modules) {
246
246
  const accountName = opts.upgradeable ? upgradeableName('AccountERC7579') : 'AccountERC7579';
247
- const signerName = opts.upgradeable ? upgradeableName(`Signer${opts.signer}`) : `Signer${opts.signer}`;
247
+ const signerBaseName = signers[opts.signer].name;
248
+ const signerName = opts.upgradeable ? upgradeableName(signerBaseName) : signerBaseName;
249
+
250
+ // WebAuthnSigner depends inherits from P256Signer, so the AbstractSigner override is handled by `addSigner`
251
+ if (opts.signer !== 'WebAuthn') {
252
+ c.addImportOnly({
253
+ name: 'AbstractSigner',
254
+ path: '@openzeppelin/contracts/utils/cryptography/signers/AbstractSigner.sol',
255
+ transpiled: false,
256
+ });
257
+ c.addOverride({ name: 'AbstractSigner', transpiled: false }, signerFunctions._rawSignatureValidation);
258
+ }
248
259
 
249
- c.addImportOnly({
250
- name: 'AbstractSigner',
251
- path: '@openzeppelin/contracts/utils/cryptography/signers/AbstractSigner.sol',
252
- transpiled: false,
253
- });
254
- c.addOverride({ name: 'AbstractSigner', transpiled: false }, signerFunctions._rawSignatureValidation);
255
260
  c.addOverride({ name: 'AccountERC7579' }, signerFunctions._rawSignatureValidation);
256
261
  c.setFunctionComments(
257
262
  [
258
- `// IMPORTANT: Make sure ${signerName} is most derived than ${accountName}`,
263
+ `// IMPORTANT: Make sure ${signerName} is more derived than ${accountName}`,
259
264
  `// in the inheritance chain (i.e. contract ... is ${accountName}, ..., ${signerName})`,
260
265
  '// to ensure the correct order of function resolution.',
261
266
  `// ${accountName} returns false for _rawSignatureValidation`,
@@ -286,6 +291,7 @@ const functions = {
286
291
  args: [
287
292
  { name: 'userOp', type: 'PackedUserOperation calldata' },
288
293
  { name: 'userOpHash', type: 'bytes32' },
294
+ { name: 'signature', type: 'bytes calldata' },
289
295
  ],
290
296
  returns: ['uint256'],
291
297
  },
package/src/api.ts CHANGED
@@ -37,6 +37,7 @@ import {
37
37
  defaults as customDefaults,
38
38
  isAccessControlRequired as customIsAccessControlRequired,
39
39
  } from './custom';
40
+ import { getVersionedRemappings } from './get-versioned-remappings';
40
41
 
41
42
  export interface WizardContractAPI<Options extends CommonOptions> {
42
43
  /**
@@ -44,6 +45,18 @@ export interface WizardContractAPI<Options extends CommonOptions> {
44
45
  */
45
46
  print: (opts?: Options) => string;
46
47
 
48
+ /**
49
+ * Returns remappings that map unversioned import prefixes to versioned import prefixes.
50
+ * @example
51
+ * ```ts
52
+ * [
53
+ * "@openzeppelin/contracts/=@openzeppelin/contracts@5.5.0/",
54
+ * "@openzeppelin/contracts-upgradeable/=@openzeppelin/contracts-upgradeable@5.5.0/"
55
+ * ]
56
+ * ```
57
+ */
58
+ getVersionedRemappings: (opts?: Options) => string[];
59
+
47
60
  /**
48
61
  * The default options that are used for `print`.
49
62
  */
@@ -69,40 +82,48 @@ export type Custom = WizardContractAPI<CustomOptions> & AccessControlAPI<CustomO
69
82
 
70
83
  export const erc20: ERC20 = {
71
84
  print: printERC20,
85
+ getVersionedRemappings: getVersionedRemappings,
72
86
  defaults: erc20defaults,
73
87
  isAccessControlRequired: erc20IsAccessControlRequired,
74
88
  };
75
89
  export const erc721: ERC721 = {
76
90
  print: printERC721,
91
+ getVersionedRemappings: getVersionedRemappings,
77
92
  defaults: erc721defaults,
78
93
  isAccessControlRequired: erc721IsAccessControlRequired,
79
94
  };
80
95
  export const erc1155: ERC1155 = {
81
96
  print: printERC1155,
97
+ getVersionedRemappings: getVersionedRemappings,
82
98
  defaults: erc1155defaults,
83
99
  isAccessControlRequired: erc1155IsAccessControlRequired,
84
100
  };
85
101
  export const stablecoin: Stablecoin = {
86
102
  print: printStablecoin,
103
+ getVersionedRemappings: getVersionedRemappings,
87
104
  defaults: stablecoinDefaults,
88
105
  isAccessControlRequired: stablecoinIsAccessControlRequired,
89
106
  };
90
107
  export const account: Account = {
91
108
  print: printAccount,
109
+ getVersionedRemappings: getVersionedRemappings,
92
110
  defaults: accountDefaults,
93
111
  };
94
112
  export const realWorldAsset: RealWorldAsset = {
95
113
  print: printStablecoin,
114
+ getVersionedRemappings: getVersionedRemappings,
96
115
  defaults: stablecoinDefaults,
97
116
  isAccessControlRequired: stablecoinIsAccessControlRequired,
98
117
  };
99
118
  export const governor: Governor = {
100
119
  print: printGovernor,
120
+ getVersionedRemappings: getVersionedRemappings,
101
121
  defaults: governorDefaults,
102
122
  isAccessControlRequired: governorIsAccessControlRequired,
103
123
  };
104
124
  export const custom: Custom = {
105
125
  print: printCustom,
126
+ getVersionedRemappings: getVersionedRemappings,
106
127
  defaults: customDefaults,
107
128
  isAccessControlRequired: customIsAccessControlRequired,
108
129
  };
@@ -10,8 +10,8 @@
10
10
  "license": "ISC",
11
11
  "devDependencies": {
12
12
  "@nomicfoundation/hardhat-toolbox": "^6.1.0",
13
- "@openzeppelin/contracts": "^5.4.0",
14
- "hardhat": "^2.16.1"
13
+ "@openzeppelin/contracts": "^5.5.0",
14
+ "hardhat": "^2.22.0"
15
15
  }
16
16
  },
17
17
  "node_modules/@adraffy/ens-normalize": {
@@ -1219,9 +1219,9 @@
1219
1219
  }
1220
1220
  },
1221
1221
  "node_modules/@openzeppelin/contracts": {
1222
- "version": "5.4.0",
1223
- "resolved": "https://registry.npmjs.org/@openzeppelin/contracts/-/contracts-5.4.0.tgz",
1224
- "integrity": "sha512-eCYgWnLg6WO+X52I16TZt8uEjbtdkgLC0SUX/xnAksjjrQI4Xfn4iBRoI5j55dmlOhDv1Y7BoR3cU7e3WWhC6A==",
1222
+ "version": "5.5.0",
1223
+ "resolved": "https://registry.npmjs.org/@openzeppelin/contracts/-/contracts-5.5.0.tgz",
1224
+ "integrity": "sha512-R8hq4zmKKWP2c7OxeRgAcjZwvF5W0Qq2OIX7degrtdM52Q9xYr4MLJdUAVPKGUewNJ1qo+M6YiZLLnNUnjP/gg==",
1225
1225
  "dev": true,
1226
1226
  "license": "MIT"
1227
1227
  },
@@ -2339,19 +2339,28 @@
2339
2339
  }
2340
2340
  },
2341
2341
  "node_modules/chokidar": {
2342
- "version": "4.0.3",
2343
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz",
2344
- "integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==",
2342
+ "version": "3.6.0",
2343
+ "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz",
2344
+ "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==",
2345
2345
  "dev": true,
2346
2346
  "license": "MIT",
2347
2347
  "dependencies": {
2348
- "readdirp": "^4.0.1"
2348
+ "anymatch": "~3.1.2",
2349
+ "braces": "~3.0.2",
2350
+ "glob-parent": "~5.1.2",
2351
+ "is-binary-path": "~2.1.0",
2352
+ "is-glob": "~4.0.1",
2353
+ "normalize-path": "~3.0.0",
2354
+ "readdirp": "~3.6.0"
2349
2355
  },
2350
2356
  "engines": {
2351
- "node": ">= 14.16.0"
2357
+ "node": ">= 8.10.0"
2352
2358
  },
2353
2359
  "funding": {
2354
2360
  "url": "https://paulmillr.com/funding/"
2361
+ },
2362
+ "optionalDependencies": {
2363
+ "fsevents": "~2.3.2"
2355
2364
  }
2356
2365
  },
2357
2366
  "node_modules/ci-info": {
@@ -3841,9 +3850,9 @@
3841
3850
  }
3842
3851
  },
3843
3852
  "node_modules/hardhat": {
3844
- "version": "2.26.3",
3845
- "resolved": "https://registry.npmjs.org/hardhat/-/hardhat-2.26.3.tgz",
3846
- "integrity": "sha512-gBfjbxCCEaRgMCRgTpjo1CEoJwqNPhyGMMVHYZJxoQ3LLftp2erSVf8ZF6hTQC0r2wst4NcqNmLWqMnHg1quTw==",
3853
+ "version": "2.26.5",
3854
+ "resolved": "https://registry.npmjs.org/hardhat/-/hardhat-2.26.5.tgz",
3855
+ "integrity": "sha512-TvFKUPGRaoemeVpnKsXt5I+kVCNrzP2cLwyNUveu0JKf2Q0lzh6LTgVBsWyYPlXAwBzyUQ6fsL98UgyF/QdOfA==",
3847
3856
  "dev": true,
3848
3857
  "license": "MIT",
3849
3858
  "dependencies": {
@@ -4073,6 +4082,22 @@
4073
4082
  "@scure/base": "~1.1.0"
4074
4083
  }
4075
4084
  },
4085
+ "node_modules/hardhat/node_modules/chokidar": {
4086
+ "version": "4.0.3",
4087
+ "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz",
4088
+ "integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==",
4089
+ "dev": true,
4090
+ "license": "MIT",
4091
+ "dependencies": {
4092
+ "readdirp": "^4.0.1"
4093
+ },
4094
+ "engines": {
4095
+ "node": ">= 14.16.0"
4096
+ },
4097
+ "funding": {
4098
+ "url": "https://paulmillr.com/funding/"
4099
+ }
4100
+ },
4076
4101
  "node_modules/hardhat/node_modules/ethereum-cryptography": {
4077
4102
  "version": "1.2.0",
4078
4103
  "resolved": "https://registry.npmjs.org/ethereum-cryptography/-/ethereum-cryptography-1.2.0.tgz",
@@ -4111,6 +4136,20 @@
4111
4136
  "graceful-fs": "^4.1.6"
4112
4137
  }
4113
4138
  },
4139
+ "node_modules/hardhat/node_modules/readdirp": {
4140
+ "version": "4.1.2",
4141
+ "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz",
4142
+ "integrity": "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==",
4143
+ "dev": true,
4144
+ "license": "MIT",
4145
+ "engines": {
4146
+ "node": ">= 14.18.0"
4147
+ },
4148
+ "funding": {
4149
+ "type": "individual",
4150
+ "url": "https://paulmillr.com/funding/"
4151
+ }
4152
+ },
4114
4153
  "node_modules/hardhat/node_modules/universalify": {
4115
4154
  "version": "0.1.2",
4116
4155
  "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
@@ -5092,31 +5131,6 @@
5092
5131
  "node": ">= 14.0.0"
5093
5132
  }
5094
5133
  },
5095
- "node_modules/mocha/node_modules/chokidar": {
5096
- "version": "3.6.0",
5097
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz",
5098
- "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==",
5099
- "dev": true,
5100
- "license": "MIT",
5101
- "dependencies": {
5102
- "anymatch": "~3.1.2",
5103
- "braces": "~3.0.2",
5104
- "glob-parent": "~5.1.2",
5105
- "is-binary-path": "~2.1.0",
5106
- "is-glob": "~4.0.1",
5107
- "normalize-path": "~3.0.0",
5108
- "readdirp": "~3.6.0"
5109
- },
5110
- "engines": {
5111
- "node": ">= 8.10.0"
5112
- },
5113
- "funding": {
5114
- "url": "https://paulmillr.com/funding/"
5115
- },
5116
- "optionalDependencies": {
5117
- "fsevents": "~2.3.2"
5118
- }
5119
- },
5120
5134
  "node_modules/mocha/node_modules/glob": {
5121
5135
  "version": "8.1.0",
5122
5136
  "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz",
@@ -5151,19 +5165,6 @@
5151
5165
  "node": ">=10"
5152
5166
  }
5153
5167
  },
5154
- "node_modules/mocha/node_modules/readdirp": {
5155
- "version": "3.6.0",
5156
- "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
5157
- "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==",
5158
- "dev": true,
5159
- "license": "MIT",
5160
- "dependencies": {
5161
- "picomatch": "^2.2.1"
5162
- },
5163
- "engines": {
5164
- "node": ">=8.10.0"
5165
- }
5166
- },
5167
5168
  "node_modules/mocha/node_modules/supports-color": {
5168
5169
  "version": "8.1.1",
5169
5170
  "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz",
@@ -5777,17 +5778,16 @@
5777
5778
  }
5778
5779
  },
5779
5780
  "node_modules/readdirp": {
5780
- "version": "4.1.2",
5781
- "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz",
5782
- "integrity": "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==",
5781
+ "version": "3.6.0",
5782
+ "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
5783
+ "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==",
5783
5784
  "dev": true,
5784
5785
  "license": "MIT",
5785
- "engines": {
5786
- "node": ">= 14.18.0"
5786
+ "dependencies": {
5787
+ "picomatch": "^2.2.1"
5787
5788
  },
5788
- "funding": {
5789
- "type": "individual",
5790
- "url": "https://paulmillr.com/funding/"
5789
+ "engines": {
5790
+ "node": ">=8.10.0"
5791
5791
  }
5792
5792
  },
5793
5793
  "node_modules/rechoir": {
@@ -6898,14 +6898,14 @@
6898
6898
  }
6899
6899
  },
6900
6900
  "node_modules/tinyglobby": {
6901
- "version": "0.2.14",
6902
- "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.14.tgz",
6903
- "integrity": "sha512-tX5e7OM1HnYr2+a2C/4V0htOcSQcoSTH9KgJnVvNm5zm/cyEWKJ7j7YutsH9CxMdtOkkLFy2AHrMci9IM8IPZQ==",
6901
+ "version": "0.2.15",
6902
+ "resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.15.tgz",
6903
+ "integrity": "sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==",
6904
6904
  "dev": true,
6905
6905
  "license": "MIT",
6906
6906
  "dependencies": {
6907
- "fdir": "^6.4.4",
6908
- "picomatch": "^4.0.2"
6907
+ "fdir": "^6.5.0",
6908
+ "picomatch": "^4.0.3"
6909
6909
  },
6910
6910
  "engines": {
6911
6911
  "node": ">=12.0.0"