@openzeppelin/wizard 0.3.0 → 0.4.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.
Files changed (92) hide show
  1. package/dist/add-pausable.d.ts +1 -0
  2. package/dist/add-pausable.d.ts.map +1 -1
  3. package/dist/add-pausable.js +9 -5
  4. package/dist/add-pausable.js.map +1 -1
  5. package/dist/contract.d.ts +13 -9
  6. package/dist/contract.d.ts.map +1 -1
  7. package/dist/contract.js +5 -5
  8. package/dist/contract.js.map +1 -1
  9. package/dist/environments/hardhat/package-lock.json +1488 -7247
  10. package/dist/environments/hardhat/package.json +4 -22
  11. package/dist/environments/hardhat/upgradeable/package-lock.json +1668 -7725
  12. package/dist/environments/hardhat/upgradeable/package.json +5 -22
  13. package/dist/erc1155.js +24 -15
  14. package/dist/erc1155.js.map +1 -1
  15. package/dist/erc20.d.ts +0 -1
  16. package/dist/erc20.d.ts.map +1 -1
  17. package/dist/erc20.js +45 -62
  18. package/dist/erc20.js.map +1 -1
  19. package/dist/erc721.js +54 -53
  20. package/dist/erc721.js.map +1 -1
  21. package/dist/generate/erc20.d.ts.map +1 -1
  22. package/dist/generate/erc20.js +0 -1
  23. package/dist/generate/erc20.js.map +1 -1
  24. package/dist/generate/governor.js +1 -1
  25. package/dist/generate/governor.js.map +1 -1
  26. package/dist/governor.d.ts +2 -2
  27. package/dist/governor.d.ts.map +1 -1
  28. package/dist/governor.js +104 -98
  29. package/dist/governor.js.map +1 -1
  30. package/dist/infer-transpiled.d.ts +3 -0
  31. package/dist/infer-transpiled.d.ts.map +1 -0
  32. package/dist/infer-transpiled.js +9 -0
  33. package/dist/infer-transpiled.js.map +1 -0
  34. package/dist/options.d.ts +3 -4
  35. package/dist/options.d.ts.map +1 -1
  36. package/dist/options.js +14 -11
  37. package/dist/options.js.map +1 -1
  38. package/dist/print-versioned.d.ts.map +1 -1
  39. package/dist/print-versioned.js +6 -1
  40. package/dist/print-versioned.js.map +1 -1
  41. package/dist/print.d.ts.map +1 -1
  42. package/dist/print.js +17 -9
  43. package/dist/print.js.map +1 -1
  44. package/dist/scripts/prepare.js +0 -1
  45. package/dist/scripts/prepare.js.map +1 -1
  46. package/dist/set-access-control.d.ts +1 -1
  47. package/dist/set-access-control.d.ts.map +1 -1
  48. package/dist/set-access-control.js +18 -7
  49. package/dist/set-access-control.js.map +1 -1
  50. package/dist/set-upgradeable.d.ts.map +1 -1
  51. package/dist/set-upgradeable.js +5 -4
  52. package/dist/set-upgradeable.js.map +1 -1
  53. package/dist/solidity-version.json +1 -1
  54. package/dist/zip-foundry.d.ts +5 -0
  55. package/dist/zip-foundry.d.ts.map +1 -0
  56. package/dist/zip-foundry.js +224 -0
  57. package/dist/zip-foundry.js.map +1 -0
  58. package/dist/zip-hardhat.d.ts.map +1 -1
  59. package/dist/zip-hardhat.js +36 -11
  60. package/dist/zip-hardhat.js.map +1 -1
  61. package/package.json +3 -4
  62. package/src/add-pausable.ts +7 -3
  63. package/src/contract.ts +17 -15
  64. package/src/environments/hardhat/package-lock.json +1488 -7247
  65. package/src/environments/hardhat/package.json +4 -22
  66. package/src/environments/hardhat/upgradeable/package-lock.json +1668 -7725
  67. package/src/environments/hardhat/upgradeable/package.json +5 -22
  68. package/src/erc1155.ts +30 -23
  69. package/src/erc20.ts +46 -67
  70. package/src/erc721.ts +64 -66
  71. package/src/generate/erc20.ts +0 -1
  72. package/src/generate/governor.ts +1 -1
  73. package/src/governor.ts +110 -109
  74. package/src/infer-transpiled.ts +5 -0
  75. package/src/options.ts +18 -16
  76. package/src/print-versioned.ts +6 -2
  77. package/src/print.ts +17 -13
  78. package/src/scripts/prepare.ts +0 -2
  79. package/src/set-access-control.ts +18 -7
  80. package/src/set-upgradeable.ts +5 -4
  81. package/src/solidity-version.json +1 -1
  82. package/src/zip-foundry.ts +259 -0
  83. package/src/zip-hardhat.ts +39 -11
  84. package/CHANGELOG.md +0 -30
  85. package/dist/zip.d.ts +0 -4
  86. package/dist/zip.d.ts.map +0 -1
  87. package/dist/zip.js +0 -48
  88. package/dist/zip.js.map +0 -1
  89. package/src/.DS_Store +0 -0
  90. package/src/environments/.DS_Store +0 -0
  91. package/src/environments/hardhat/.DS_Store +0 -0
  92. package/src/zip.ts +0 -53
package/dist/print.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"print.js","sourceRoot":"","sources":["../src/print.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"print.js","sourceRoot":"","sources":["../src/print.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,6 @@ const path_1 = __importDefault(require("path"));
8
8
  const hardhat_1 = __importDefault(require("hardhat"));
9
9
  const utils_1 = require("solidity-ast/utils");
10
10
  const rimraf_1 = require("rimraf");
11
- require("util");
12
11
  const package_json_1 = require("@openzeppelin/contracts/package.json");
13
12
  const sources_1 = require("../generate/sources");
14
13
  const map_values_1 = require("../utils/map-values");
@@ -1 +1 @@
1
- {"version":3,"file":"prepare.js","sourceRoot":"","sources":["../../src/scripts/prepare.ts"],"names":[],"mappings":";;;;;AAAA,2BAAoC;AACpC,gDAAwB;AACxB,sDAA0B;AAG1B,8CAA6C;AAC7C,mCAAgC;AAChC,gBAAiC;AACjC,uEAA+D;AAG/D,iDAA4D;AAC5D,oDAAgD;AAChD,oEAAgE;AAEhE,KAAK,UAAU,IAAI;;IACjB,MAAM,oBAAoB,GAAG,cAAI,CAAC,IAAI,CAAC,iBAAG,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IAC9E,MAAM,IAAA,eAAM,EAAC,oBAAoB,CAAC,CAAC;IACnC,MAAM,IAAA,+BAAqB,EAAC,oBAAoB,EAAE,eAAe,CAAC,CAAC;IACnE,MAAM,iBAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAEzB,MAAM,YAAY,GAAgC,EAAE,CAAC;IACrD,MAAM,OAAO,GAA2B,EAAE,CAAC;IAE3C,KAAK,MAAM,aAAa,IAAI,MAAM,iBAAG,CAAC,SAAS,CAAC,iBAAiB,EAAE,EAAE;QACnE,MAAM,SAAS,GAAc,IAAI,CAAC,KAAK,CACrC,MAAM,aAAE,CAAC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC,CACzC,CAAC;QAEF,KAAK,MAAM,CAAC,UAAU,EAAE,EAAE,GAAG,EAAE,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE;YAC5E,IAAI,UAAU,CAAC,UAAU,CAAC,yBAAyB,CAAC,EAAE;gBACpD,MAAM,kBAAkB,GAAG,OAAC,YAAY,CAAC,UAAU,qCAAvB,YAAY,CAAC,UAAU,IAAM,IAAI,GAAG,EAAE,EAAC,CAAC;gBACpE,KAAK,MAAM,GAAG,IAAI,IAAA,eAAO,EAAC,iBAAiB,EAAE,GAAG,CAAC,EAAE;oBACjD,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;iBAC1C;aACF;SACF;QAED,KAAK,MAAM,CAAC,UAAU,EAAE,EAAE,OAAO,EAAE,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE;YAC/E,IAAI,UAAU,CAAC,UAAU,CAAC,yBAAyB,CAAC,EAAE;gBACpD,OAAO,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC;aAC/B;SACF;KACF;IAED,MAAM,SAAS,GAA0B;QACvC,OAAO,EAAP,sBAAO;QACP,OAAO;QACP,YAAY,EAAE,IAAA,sBAAS,EAAC,IAAA,sCAAiB,EAAC,YAAY,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;KAC7E,CAAC;IAEF,MAAM,aAAE,CAAC,SAAS,CAAC,6BAA6B,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AACxF,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;IACf,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACjB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"prepare.js","sourceRoot":"","sources":["../../src/scripts/prepare.ts"],"names":[],"mappings":";;;;;AAAA,2BAAoC;AACpC,gDAAwB;AACxB,sDAA0B;AAE1B,8CAA6C;AAC7C,mCAAgC;AAChC,uEAA+D;AAG/D,iDAA4D;AAC5D,oDAAgD;AAChD,oEAAgE;AAEhE,KAAK,UAAU,IAAI;;IACjB,MAAM,oBAAoB,GAAG,cAAI,CAAC,IAAI,CAAC,iBAAG,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,WAAW,CAAC,CAAC;IAC9E,MAAM,IAAA,eAAM,EAAC,oBAAoB,CAAC,CAAC;IACnC,MAAM,IAAA,+BAAqB,EAAC,oBAAoB,EAAE,eAAe,CAAC,CAAC;IACnE,MAAM,iBAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAEzB,MAAM,YAAY,GAAgC,EAAE,CAAC;IACrD,MAAM,OAAO,GAA2B,EAAE,CAAC;IAE3C,KAAK,MAAM,aAAa,IAAI,MAAM,iBAAG,CAAC,SAAS,CAAC,iBAAiB,EAAE,EAAE;QACnE,MAAM,SAAS,GAAc,IAAI,CAAC,KAAK,CACrC,MAAM,aAAE,CAAC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC,CACzC,CAAC;QAEF,KAAK,MAAM,CAAC,UAAU,EAAE,EAAE,GAAG,EAAE,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE;YAC5E,IAAI,UAAU,CAAC,UAAU,CAAC,yBAAyB,CAAC,EAAE;gBACpD,MAAM,kBAAkB,GAAG,OAAC,YAAY,CAAC,UAAU,qCAAvB,YAAY,CAAC,UAAU,IAAM,IAAI,GAAG,EAAE,EAAC,CAAC;gBACpE,KAAK,MAAM,GAAG,IAAI,IAAA,eAAO,EAAC,iBAAiB,EAAE,GAAG,CAAC,EAAE;oBACjD,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;iBAC1C;aACF;SACF;QAED,KAAK,MAAM,CAAC,UAAU,EAAE,EAAE,OAAO,EAAE,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE;YAC/E,IAAI,UAAU,CAAC,UAAU,CAAC,yBAAyB,CAAC,EAAE;gBACpD,OAAO,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC;aAC/B;SACF;KACF;IAED,MAAM,SAAS,GAA0B;QACvC,OAAO,EAAP,sBAAO;QACP,OAAO;QACP,YAAY,EAAE,IAAA,sBAAS,EAAC,IAAA,sCAAiB,EAAC,YAAY,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;KAC7E,CAAC;IAEF,MAAM,aAAE,CAAC,SAAS,CAAC,6BAA6B,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AACxF,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;IACf,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACjB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
@@ -8,5 +8,5 @@ export declare function setAccessControl(c: ContractBuilder, access: Access): vo
8
8
  /**
9
9
  * Enables access control for the contract and restricts the given function with access control.
10
10
  */
11
- export declare function requireAccessControl(c: ContractBuilder, fn: BaseFunction, access: Access, role: string): void;
11
+ export declare function requireAccessControl(c: ContractBuilder, fn: BaseFunction, access: Access, roleIdPrefix: string, roleOwner: string | undefined): void;
12
12
  //# sourceMappingURL=set-access-control.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"set-access-control.d.ts","sourceRoot":"","sources":["../src/set-access-control.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAGhE,eAAO,MAAM,aAAa,sCAAuC,CAAC;AAElE,MAAM,MAAM,MAAM,GAAG,OAAO,aAAa,CAAC,MAAM,CAAC,CAAC;AAElD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,QAclE;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,eAAe,EAAE,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,QAqBtG"}
1
+ {"version":3,"file":"set-access-control.d.ts","sourceRoot":"","sources":["../src/set-access-control.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAGhE,eAAO,MAAM,aAAa,sCAAuC,CAAC;AAElE,MAAM,MAAM,MAAM,GAAG,OAAO,aAAa,CAAC,MAAM,CAAC,CAAC;AAElD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,QAuBlE;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,eAAe,EAAE,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,SAAS,QAuB7I"}
@@ -9,14 +9,23 @@ exports.accessOptions = [false, 'ownable', 'roles'];
9
9
  function setAccessControl(c, access) {
10
10
  switch (access) {
11
11
  case 'ownable': {
12
- c.addParent(parents.Ownable);
12
+ if (c.addParent(parents.Ownable, [{ lit: 'initialOwner' }])) {
13
+ c.addConstructorArgument({
14
+ type: 'address',
15
+ name: 'initialOwner'
16
+ });
17
+ }
13
18
  break;
14
19
  }
15
20
  case 'roles': {
16
21
  if (c.addParent(parents.AccessControl)) {
17
- c.addConstructorCode('_grantRole(DEFAULT_ADMIN_ROLE, msg.sender);');
22
+ c.addConstructorArgument({
23
+ type: 'address',
24
+ name: 'defaultAdmin'
25
+ });
26
+ c.addConstructorCode('_grantRole(DEFAULT_ADMIN_ROLE, defaultAdmin);');
18
27
  }
19
- c.addOverride(parents.AccessControl.name, common_functions_1.supportsInterface);
28
+ c.addOverride(parents.AccessControl, common_functions_1.supportsInterface);
20
29
  break;
21
30
  }
22
31
  }
@@ -25,7 +34,7 @@ exports.setAccessControl = setAccessControl;
25
34
  /**
26
35
  * Enables access control for the contract and restricts the given function with access control.
27
36
  */
28
- function requireAccessControl(c, fn, access, role) {
37
+ function requireAccessControl(c, fn, access, roleIdPrefix, roleOwner) {
29
38
  if (access === false) {
30
39
  access = 'ownable';
31
40
  }
@@ -36,9 +45,11 @@ function requireAccessControl(c, fn, access, role) {
36
45
  break;
37
46
  }
38
47
  case 'roles': {
39
- const roleId = role + '_ROLE';
40
- if (c.addVariable(`bytes32 public constant ${roleId} = keccak256("${roleId}");`)) {
41
- c.addConstructorCode(`_grantRole(${roleId}, msg.sender);`);
48
+ const roleId = roleIdPrefix + '_ROLE';
49
+ const addedConstant = c.addVariable(`bytes32 public constant ${roleId} = keccak256("${roleId}");`);
50
+ if (roleOwner && addedConstant) {
51
+ c.addConstructorArgument({ type: 'address', name: roleOwner });
52
+ c.addConstructorCode(`_grantRole(${roleId}, ${roleOwner});`);
42
53
  }
43
54
  c.addModifier(`onlyRole(${roleId})`, fn);
44
55
  break;
@@ -1 +1 @@
1
- {"version":3,"file":"set-access-control.js","sourceRoot":"","sources":["../src/set-access-control.ts"],"names":[],"mappings":";;;AACA,yDAAuD;AAE1C,QAAA,aAAa,GAAG,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,CAAU,CAAC;AAIlE;;GAEG;AACH,SAAgB,gBAAgB,CAAC,CAAkB,EAAE,MAAc;IACjE,QAAQ,MAAM,EAAE;QACd,KAAK,SAAS,CAAC,CAAC;YACd,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;YAC7B,MAAM;SACP;QACD,KAAK,OAAO,CAAC,CAAC;YACZ,IAAI,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE;gBACtC,CAAC,CAAC,kBAAkB,CAAC,6CAA6C,CAAC,CAAC;aACrE;YACD,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,EAAE,oCAAiB,CAAC,CAAC;YAC7D,MAAM;SACP;KACF;AACH,CAAC;AAdD,4CAcC;AAED;;GAEG;AACH,SAAgB,oBAAoB,CAAC,CAAkB,EAAE,EAAgB,EAAE,MAAc,EAAE,IAAY;IACrG,IAAI,MAAM,KAAK,KAAK,EAAE;QACpB,MAAM,GAAG,SAAS,CAAC;KACpB;IAED,gBAAgB,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IAE5B,QAAQ,MAAM,EAAE;QACd,KAAK,SAAS,CAAC,CAAC;YACd,CAAC,CAAC,WAAW,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;YAC/B,MAAM;SACP;QACD,KAAK,OAAO,CAAC,CAAC;YACZ,MAAM,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC;YAC9B,IAAI,CAAC,CAAC,WAAW,CAAC,2BAA2B,MAAM,iBAAiB,MAAM,KAAK,CAAC,EAAE;gBAChF,CAAC,CAAC,kBAAkB,CAAC,cAAc,MAAM,gBAAgB,CAAC,CAAC;aAC5D;YACD,CAAC,CAAC,WAAW,CAAC,YAAY,MAAM,GAAG,EAAE,EAAE,CAAC,CAAC;YACzC,MAAM;SACP;KACF;AACH,CAAC;AArBD,oDAqBC;AAED,MAAM,OAAO,GAAG;IACd,OAAO,EAAE;QACP,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,4CAA4C;KACnD;IACD,aAAa,EAAE;QACb,IAAI,EAAE,eAAe;QACrB,IAAI,EAAE,kDAAkD;KACzD;CACF,CAAC"}
1
+ {"version":3,"file":"set-access-control.js","sourceRoot":"","sources":["../src/set-access-control.ts"],"names":[],"mappings":";;;AACA,yDAAuD;AAE1C,QAAA,aAAa,GAAG,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,CAAU,CAAC;AAIlE;;GAEG;AACH,SAAgB,gBAAgB,CAAC,CAAkB,EAAE,MAAc;IACjE,QAAQ,MAAM,EAAE;QACd,KAAK,SAAS,CAAC,CAAC;YACd,IAAI,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,CAAE,EAAC,GAAG,EAAE,cAAc,EAAC,CAAE,CAAC,EAAE;gBAC3D,CAAC,CAAC,sBAAsB,CAAC;oBACvB,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,cAAc;iBACrB,CAAC,CAAC;aACJ;YACD,MAAM;SACP;QACD,KAAK,OAAO,CAAC,CAAC;YACZ,IAAI,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE;gBACtC,CAAC,CAAC,sBAAsB,CAAC;oBACvB,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,cAAc;iBACrB,CAAC,CAAC;gBACH,CAAC,CAAC,kBAAkB,CAAC,+CAA+C,CAAC,CAAC;aACvE;YACD,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,aAAa,EAAE,oCAAiB,CAAC,CAAC;YACxD,MAAM;SACP;KACF;AACH,CAAC;AAvBD,4CAuBC;AAED;;GAEG;AACH,SAAgB,oBAAoB,CAAC,CAAkB,EAAE,EAAgB,EAAE,MAAc,EAAE,YAAoB,EAAE,SAA6B;IAC5I,IAAI,MAAM,KAAK,KAAK,EAAE;QACpB,MAAM,GAAG,SAAS,CAAC;KACpB;IAED,gBAAgB,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IAE5B,QAAQ,MAAM,EAAE;QACd,KAAK,SAAS,CAAC,CAAC;YACd,CAAC,CAAC,WAAW,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;YAC/B,MAAM;SACP;QACD,KAAK,OAAO,CAAC,CAAC;YACZ,MAAM,MAAM,GAAG,YAAY,GAAG,OAAO,CAAC;YACtC,MAAM,aAAa,GAAG,CAAC,CAAC,WAAW,CAAC,2BAA2B,MAAM,iBAAiB,MAAM,KAAK,CAAC,CAAC;YACnG,IAAI,SAAS,IAAI,aAAa,EAAE;gBAC9B,CAAC,CAAC,sBAAsB,CAAC,EAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAC,CAAC,CAAC;gBAC7D,CAAC,CAAC,kBAAkB,CAAC,cAAc,MAAM,KAAK,SAAS,IAAI,CAAC,CAAC;aAC9D;YACD,CAAC,CAAC,WAAW,CAAC,YAAY,MAAM,GAAG,EAAE,EAAE,CAAC,CAAC;YACzC,MAAM;SACP;KACF;AACH,CAAC;AAvBD,oDAuBC;AAED,MAAM,OAAO,GAAG;IACd,OAAO,EAAE;QACP,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,4CAA4C;KACnD;IACD,aAAa,EAAE;QACb,IAAI,EAAE,eAAe;QACrB,IAAI,EAAE,kDAAkD;KACzD;CACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"set-upgradeable.d.ts","sourceRoot":"","sources":["../src/set-upgradeable.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,MAAM,EAAwB,MAAM,sBAAsB,CAAC;AAGpE,eAAO,MAAM,kBAAkB,yCAA0C,CAAC;AAE1E,MAAM,MAAM,WAAW,GAAG,OAAO,kBAAkB,CAAC,MAAM,CAAC,CAAC;AAE5D,wBAAgB,cAAc,CAAC,CAAC,EAAE,eAAe,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,QA+B1F"}
1
+ {"version":3,"file":"set-upgradeable.d.ts","sourceRoot":"","sources":["../src/set-upgradeable.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,MAAM,EAAwB,MAAM,sBAAsB,CAAC;AAGpE,eAAO,MAAM,kBAAkB,yCAA0C,CAAC;AAE1E,MAAM,MAAM,WAAW,GAAG,OAAO,kBAAkB,CAAC,MAAM,CAAC,CAAC;AAE5D,wBAAgB,cAAc,CAAC,CAAC,EAAE,eAAe,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,QAgC1F"}
@@ -16,12 +16,13 @@ function setUpgradeable(c, upgradeable, access) {
16
16
  switch (upgradeable) {
17
17
  case 'transparent': break;
18
18
  case 'uups': {
19
- (0, set_access_control_1.requireAccessControl)(c, functions._authorizeUpgrade, access, 'UPGRADER');
20
- c.addParent({
19
+ (0, set_access_control_1.requireAccessControl)(c, functions._authorizeUpgrade, access, 'UPGRADER', 'upgrader');
20
+ const UUPSUpgradeable = {
21
21
  name: 'UUPSUpgradeable',
22
22
  path: '@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol',
23
- });
24
- c.addOverride('UUPSUpgradeable', functions._authorizeUpgrade);
23
+ };
24
+ c.addParent(UUPSUpgradeable);
25
+ c.addOverride(UUPSUpgradeable, functions._authorizeUpgrade);
25
26
  c.setFunctionBody([], functions._authorizeUpgrade);
26
27
  break;
27
28
  }
@@ -1 +1 @@
1
- {"version":3,"file":"set-upgradeable.js","sourceRoot":"","sources":["../src/set-upgradeable.ts"],"names":[],"mappings":";;;AACA,6DAAoE;AACpE,+DAA2D;AAE9C,QAAA,kBAAkB,GAAG,CAAC,KAAK,EAAE,aAAa,EAAE,MAAM,CAAU,CAAC;AAI1E,SAAgB,cAAc,CAAC,CAAkB,EAAE,WAAwB,EAAE,MAAc;IACzF,IAAI,WAAW,KAAK,KAAK,EAAE;QACzB,OAAO;KACR;IAED,CAAC,CAAC,WAAW,GAAG,IAAI,CAAC;IAErB,CAAC,CAAC,SAAS,CAAC;QACV,IAAI,EAAE,eAAe;QACrB,IAAI,EAAE,uDAAuD;KAC9D,CAAC,CAAC;IAEH,QAAQ,WAAW,EAAE;QACnB,KAAK,aAAa,CAAC,CAAC,MAAM;QAE1B,KAAK,MAAM,CAAC,CAAC;YACX,IAAA,yCAAoB,EAAC,CAAC,EAAE,SAAS,CAAC,iBAAiB,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;YACzE,CAAC,CAAC,SAAS,CAAC;gBACV,IAAI,EAAE,iBAAiB;gBACvB,IAAI,EAAE,yDAAyD;aAChE,CAAC,CAAC;YACH,CAAC,CAAC,WAAW,CAAC,iBAAiB,EAAE,SAAS,CAAC,iBAAiB,CAAC,CAAC;YAC9D,CAAC,CAAC,eAAe,CAAC,EAAE,EAAE,SAAS,CAAC,iBAAiB,CAAC,CAAC;YACnD,MAAM;SACP;QAED,OAAO,CAAC,CAAC;YACP,MAAM,CAAC,GAAU,WAAW,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;SACpD;KACF;AACH,CAAC;AA/BD,wCA+BC;AAED,MAAM,SAAS,GAAG,IAAA,kCAAe,EAAC;IAChC,iBAAiB,EAAE;QACjB,IAAI,EAAE;YACJ,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,SAAS,EAAE;SAC/C;QACD,IAAI,EAAE,UAAU;KACjB;CACF,CAAC,CAAC"}
1
+ {"version":3,"file":"set-upgradeable.js","sourceRoot":"","sources":["../src/set-upgradeable.ts"],"names":[],"mappings":";;;AACA,6DAAoE;AACpE,+DAA2D;AAE9C,QAAA,kBAAkB,GAAG,CAAC,KAAK,EAAE,aAAa,EAAE,MAAM,CAAU,CAAC;AAI1E,SAAgB,cAAc,CAAC,CAAkB,EAAE,WAAwB,EAAE,MAAc;IACzF,IAAI,WAAW,KAAK,KAAK,EAAE;QACzB,OAAO;KACR;IAED,CAAC,CAAC,WAAW,GAAG,IAAI,CAAC;IAErB,CAAC,CAAC,SAAS,CAAC;QACV,IAAI,EAAE,eAAe;QACrB,IAAI,EAAE,uDAAuD;KAC9D,CAAC,CAAC;IAEH,QAAQ,WAAW,EAAE;QACnB,KAAK,aAAa,CAAC,CAAC,MAAM;QAE1B,KAAK,MAAM,CAAC,CAAC;YACX,IAAA,yCAAoB,EAAC,CAAC,EAAE,SAAS,CAAC,iBAAiB,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;YACrF,MAAM,eAAe,GAAG;gBACtB,IAAI,EAAE,iBAAiB;gBACvB,IAAI,EAAE,yDAAyD;aAChE,CAAC;YACF,CAAC,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;YAC7B,CAAC,CAAC,WAAW,CAAC,eAAe,EAAE,SAAS,CAAC,iBAAiB,CAAC,CAAC;YAC5D,CAAC,CAAC,eAAe,CAAC,EAAE,EAAE,SAAS,CAAC,iBAAiB,CAAC,CAAC;YACnD,MAAM;SACP;QAED,OAAO,CAAC,CAAC;YACP,MAAM,CAAC,GAAU,WAAW,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;SACpD;KACF;AACH,CAAC;AAhCD,wCAgCC;AAED,MAAM,SAAS,GAAG,IAAA,kCAAe,EAAC;IAChC,iBAAiB,EAAE;QACjB,IAAI,EAAE;YACJ,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,SAAS,EAAE;SAC/C;QACD,IAAI,EAAE,UAAU;KACjB;CACF,CAAC,CAAC"}
@@ -1 +1 @@
1
- "0.8.9"
1
+ "0.8.20"
@@ -0,0 +1,5 @@
1
+ import JSZip from "jszip";
2
+ import type { GenericOptions } from "./build-generic";
3
+ import type { Contract } from "./contract";
4
+ export declare function zipFoundry(c: Contract, opts?: GenericOptions): Promise<JSZip>;
5
+ //# sourceMappingURL=zip-foundry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zip-foundry.d.ts","sourceRoot":"","sources":["../src/zip-foundry.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;AAsP3C,wBAAsB,UAAU,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,cAAc,kBAUlE"}
@@ -0,0 +1,224 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.zipFoundry = void 0;
7
+ const jszip_1 = __importDefault(require("jszip"));
8
+ const print_1 = require("./print");
9
+ const solidity_version_json_1 = __importDefault(require("./solidity-version.json"));
10
+ const openzeppelin_contracts_1 = __importDefault(require("../openzeppelin-contracts"));
11
+ const format_lines_1 = require("./utils/format-lines");
12
+ function getHeader(c) {
13
+ return [
14
+ `// SPDX-License-Identifier: ${c.license}`,
15
+ `pragma solidity ^${solidity_version_json_1.default};`
16
+ ];
17
+ }
18
+ const test = (c, opts) => {
19
+ return (0, format_lines_1.formatLinesWithSpaces)(2, ...(0, format_lines_1.spaceBetween)(getHeader(c), getImports(c), getTestCase(c)));
20
+ function getImports(c) {
21
+ return [
22
+ 'import "forge-std/Test.sol";',
23
+ `import "../src/${c.name}.sol";`,
24
+ ];
25
+ }
26
+ function getTestCase(c) {
27
+ const args = getAddressArgs(c);
28
+ return [
29
+ `contract ${c.name}Test is Test {`,
30
+ (0, format_lines_1.spaceBetween)([
31
+ `${c.name} public instance;`,
32
+ ], [
33
+ 'function setUp() public {',
34
+ getAddressVariables(args),
35
+ [
36
+ `instance = new ${getDeploymentCall(c, args)};`,
37
+ ],
38
+ '}',
39
+ ], getContractSpecificTestFunction()),
40
+ '}',
41
+ ];
42
+ }
43
+ function getAddressVariables(args) {
44
+ const vars = [];
45
+ for (let i = 0; i < args.length; i++) {
46
+ // use i + 1 as the private key since it must be non-zero
47
+ vars.push(`address ${args[i]} = vm.addr(${i + 1});`);
48
+ }
49
+ return vars;
50
+ }
51
+ function getContractSpecificTestFunction() {
52
+ if (opts !== undefined) {
53
+ switch (opts.kind) {
54
+ case 'ERC20':
55
+ case 'ERC721':
56
+ return [
57
+ 'function testName() public {',
58
+ [
59
+ `assertEq(instance.name(), "${opts.name}");`
60
+ ],
61
+ '}',
62
+ ];
63
+ case 'ERC1155':
64
+ return [
65
+ 'function testUri() public {',
66
+ [
67
+ `assertEq(instance.uri(0), "${opts.uri}");`
68
+ ],
69
+ '}',
70
+ ];
71
+ case 'Governor':
72
+ case 'Custom':
73
+ return [
74
+ 'function testSomething() public {',
75
+ [
76
+ '// Add your test here',
77
+ ],
78
+ '}',
79
+ ];
80
+ default:
81
+ throw new Error('Unknown ERC');
82
+ }
83
+ }
84
+ return [];
85
+ }
86
+ };
87
+ function getAddressArgs(c) {
88
+ const args = [];
89
+ for (const constructorArg of c.constructorArgs) {
90
+ if (constructorArg.type === 'address') {
91
+ args.push(constructorArg.name);
92
+ }
93
+ }
94
+ return args;
95
+ }
96
+ function getDeploymentCall(c, args) {
97
+ return `${c.name}(${args.join(', ')})`;
98
+ }
99
+ const script = (c) => {
100
+ return (0, format_lines_1.formatLinesWithSpaces)(2, ...(0, format_lines_1.spaceBetween)(getHeader(c), getImports(c), getScript(c)));
101
+ function getImports(c) {
102
+ return [
103
+ 'import "forge-std/Script.sol";',
104
+ `import "../src/${c.name}.sol";`,
105
+ ];
106
+ }
107
+ function getScript(c) {
108
+ const args = getAddressArgs(c);
109
+ const deploymentLines = [
110
+ 'vm.startBroadcast();',
111
+ `${c.name} instance = new ${getDeploymentCall(c, args)};`,
112
+ 'console.log("Contract deployed to %s", address(instance));',
113
+ 'vm.stopBroadcast();',
114
+ ];
115
+ return [
116
+ `contract ${c.name}Script is Script {`,
117
+ (0, format_lines_1.spaceBetween)([
118
+ 'function setUp() public {}',
119
+ ], [
120
+ 'function run() public {',
121
+ args.length > 0 ? addTodoAndCommentOut(deploymentLines) : deploymentLines,
122
+ '}',
123
+ ]),
124
+ '}',
125
+ ];
126
+ }
127
+ function addTodoAndCommentOut(lines) {
128
+ return [
129
+ '// TODO: Set addresses for the contract arguments below, then uncomment the following lines',
130
+ ...lines.map(l => `// ${l}`),
131
+ ];
132
+ }
133
+ };
134
+ const setupSh = `\
135
+ #!/usr/bin/env bash
136
+
137
+ # Check if git is installed
138
+ if ! which git &> /dev/null
139
+ then
140
+ echo "git command not found. Install git and try again."
141
+ exit 1
142
+ fi
143
+
144
+ # Check if Foundry is installed
145
+ if ! which forge &> /dev/null
146
+ then
147
+ echo "forge command not found. Install Foundry and try again. See https://book.getfoundry.sh/getting-started/installation"
148
+ exit 1
149
+ fi
150
+
151
+ # Setup Foundry project
152
+ if ! [ -f "foundry.toml" ]
153
+ then
154
+ echo "Initializing Foundry project..."
155
+
156
+ # Initialize sample Foundry project
157
+ forge init --force --no-commit --quiet
158
+
159
+ # Install OpenZeppelin Contracts
160
+ forge install OpenZeppelin/openzeppelin-contracts@v${openzeppelin_contracts_1.default.version} --no-commit --quiet
161
+
162
+ # Remove template contracts
163
+ rm src/Counter.sol
164
+ rm script/Counter.s.sol
165
+ rm test/Counter.t.sol
166
+
167
+ # Add remappings
168
+ if [ -f "remappings.txt" ]
169
+ then
170
+ echo "" >> remappings.txt
171
+ fi
172
+ echo "@openzeppelin/contracts/=lib/openzeppelin-contracts/contracts/" >> remappings.txt
173
+
174
+ # Perform initial git commit
175
+ git add .
176
+ git commit -m "openzeppelin: add wizard output" --quiet
177
+
178
+ echo "Done."
179
+ else
180
+ echo "Foundry project already initialized."
181
+ fi
182
+ `;
183
+ const readme = (c) => `\
184
+ # Sample Foundry Project
185
+
186
+ This project demonstrates a basic Foundry use case. It comes with a contract generated by [OpenZeppelin Wizard](https://wizard.openzeppelin.com/), a test for that contract, and a script that deploys that contract.
187
+
188
+ ## Installing Foundry
189
+
190
+ See [Foundry installation guide](https://book.getfoundry.sh/getting-started/installation).
191
+
192
+ ## Initializing the project
193
+
194
+ \`\`\`
195
+ bash setup.sh
196
+ \`\`\`
197
+
198
+ ## Testing the contract
199
+
200
+ \`\`\`
201
+ forge test
202
+ \`\`\`
203
+
204
+ ## Deploying the contract
205
+
206
+ You can simulate a deployment by running the script:
207
+
208
+ \`\`\`
209
+ forge script script/${c.name}.s.sol
210
+ \`\`\`
211
+
212
+ See [Solidity scripting guide](https://book.getfoundry.sh/tutorials/solidity-scripting) for more information.
213
+ `;
214
+ async function zipFoundry(c, opts) {
215
+ const zip = new jszip_1.default();
216
+ zip.file(`src/${c.name}.sol`, (0, print_1.printContract)(c));
217
+ zip.file(`test/${c.name}.t.sol`, test(c, opts));
218
+ zip.file(`script/${c.name}.s.sol`, script(c));
219
+ zip.file('setup.sh', setupSh);
220
+ zip.file('README.md', readme(c));
221
+ return zip;
222
+ }
223
+ exports.zipFoundry = zipFoundry;
224
+ //# sourceMappingURL=zip-foundry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"zip-foundry.js","sourceRoot":"","sources":["../src/zip-foundry.ts"],"names":[],"mappings":"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"}
@@ -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;AAmK3C,wBAAsB,UAAU,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,cAAc,kBAoBlE"}
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;AA+L3C,wBAAsB,UAAU,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,EAAE,cAAc,kBAoBlE"}
@@ -57,7 +57,8 @@ const tsConfig = `\
57
57
  "esModuleInterop": true,
58
58
  "forceConsistentCasingInFileNames": true,
59
59
  "strict": true,
60
- "skipLibCheck": true
60
+ "skipLibCheck": true,
61
+ "resolveJsonModule": true
61
62
  }
62
63
  }
63
64
  `;
@@ -69,23 +70,24 @@ coverage.json
69
70
  typechain
70
71
  typechain-types
71
72
 
72
- #Hardhat files
73
+ # Hardhat files
73
74
  cache
74
75
  artifacts
75
76
  `;
76
77
  const test = (c, opts) => {
77
78
  return (0, format_lines_1.formatLinesWithSpaces)(2, ...(0, format_lines_1.spaceBetween)(getImports(c), getTestCase(c)));
78
79
  function getTestCase(c) {
80
+ const args = getAddressArgs(c);
79
81
  return [
80
82
  `describe("${c.name}", function () {`,
81
83
  [
82
84
  'it("Test contract", async function () {',
83
85
  (0, format_lines_1.spaceBetween)([
84
86
  `const ContractFactory = await ethers.getContractFactory("${c.name}");`,
85
- ], [
86
- `const instance = await ${c.upgradeable ? 'upgrades.deployProxy(ContractFactory)' : 'ContractFactory.deploy()'};`,
87
- 'await instance.deployed();'
88
- ], getContractSpecificExpects()),
87
+ ], getAddressVariables(args), [
88
+ `const instance = await ${getDeploymentCall(c, args)};`,
89
+ 'await instance.waitForDeployment();'
90
+ ], getExpects()),
89
91
  '});'
90
92
  ],
91
93
  '});',
@@ -97,7 +99,7 @@ const test = (c, opts) => {
97
99
  `import { ${getHardhatPlugins(c).join(', ')} } from "hardhat";`,
98
100
  ];
99
101
  }
100
- function getContractSpecificExpects() {
102
+ function getExpects() {
101
103
  if (opts !== undefined) {
102
104
  switch (opts.kind) {
103
105
  case 'ERC20':
@@ -114,17 +116,39 @@ const test = (c, opts) => {
114
116
  }
115
117
  return [];
116
118
  }
119
+ function getAddressVariables(args) {
120
+ const vars = [];
121
+ for (let i = 0; i < args.length; i++) {
122
+ vars.push(`const ${args[i]} = (await ethers.getSigners())[${i}].address;`);
123
+ }
124
+ return vars;
125
+ }
117
126
  };
118
- const script = (c) => `\
127
+ function getAddressArgs(c) {
128
+ const args = [];
129
+ for (const constructorArg of c.constructorArgs) {
130
+ if (constructorArg.type === 'address') {
131
+ args.push(constructorArg.name);
132
+ }
133
+ }
134
+ return args;
135
+ }
136
+ function getDeploymentCall(c, args) {
137
+ return c.upgradeable ? `upgrades.deployProxy(ContractFactory, [${args.join(', ')}])` : `ContractFactory.deploy(${args.join(', ')})`;
138
+ }
139
+ const script = (c) => {
140
+ const args = getAddressArgs(c);
141
+ return `\
119
142
  import { ${getHardhatPlugins(c).join(', ')} } from "hardhat";
120
143
 
121
144
  async function main() {
122
145
  const ContractFactory = await ethers.getContractFactory("${c.name}");
123
146
 
124
- const instance = await ${c.upgradeable ? 'upgrades.deployProxy(ContractFactory)' : 'ContractFactory.deploy()'};
125
- await instance.deployed();
147
+ ${args.length > 0 ? '// TODO: Set addresses for the contract arguments below' : ''}
148
+ const instance = await ${getDeploymentCall(c, args)};
149
+ await instance.waitForDeployment();
126
150
 
127
- console.log(\`${c.upgradeable ? 'Proxy' : 'Contract'} deployed to \${instance.address}\`);
151
+ console.log(\`${c.upgradeable ? 'Proxy' : 'Contract'} deployed to \${await instance.getAddress()}\`);
128
152
  }
129
153
 
130
154
  // We recommend this pattern to be able to use async/await everywhere
@@ -134,6 +158,7 @@ main().catch((error) => {
134
158
  process.exitCode = 1;
135
159
  });
136
160
  `;
161
+ };
137
162
  const readme = `\
138
163
  # Sample Hardhat Project
139
164
 
@@ -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.3.0",
3
+ "version": "0.4.0",
4
4
  "description": "A boilerplate generator to get started with OpenZeppelin Contracts",
5
5
  "license": "MIT",
6
6
  "repository": "github:OpenZeppelin/contracts-wizard",
@@ -20,10 +20,9 @@
20
20
  "update-env": "rm ./src/environments/hardhat/package-lock.json && npm install --package-lock-only --prefix ./src/environments/hardhat && rm ./src/environments/hardhat/upgradeable/package-lock.json && npm install --package-lock-only --prefix ./src/environments/hardhat/upgradeable"
21
21
  },
22
22
  "devDependencies": {
23
- "@openzeppelin/contracts": "4.9.0",
24
- "@openzeppelin/contracts-upgradeable": "4.9.0",
23
+ "@openzeppelin/contracts": "^5.0.0",
24
+ "@openzeppelin/contracts-upgradeable": "^5.0.0",
25
25
  "@types/node": "^10.17.51",
26
- "@types/rimraf": "^3.0.0",
27
26
  "array.prototype.flat": "^1.2.4",
28
27
  "ava": "^5.0.0",
29
28
  "hardhat": "^2.1.1",
@@ -5,17 +5,21 @@ import { defineFunctions } from './utils/define-functions';
5
5
  export function addPausable(c: ContractBuilder, access: Access, pausableFns: BaseFunction[]) {
6
6
  c.addParent({
7
7
  name: 'Pausable',
8
- path: '@openzeppelin/contracts/security/Pausable.sol',
8
+ path: '@openzeppelin/contracts/utils/Pausable.sol',
9
9
  });
10
10
 
11
11
  for (const fn of pausableFns) {
12
12
  c.addModifier('whenNotPaused', fn);
13
13
  }
14
14
 
15
- requireAccessControl(c, functions.pause, access, 'PAUSER');
15
+ addPauseFunctions(c, access);
16
+ }
17
+
18
+ export function addPauseFunctions(c: ContractBuilder, access: Access) {
19
+ requireAccessControl(c, functions.pause, access, 'PAUSER', 'pauser');
16
20
  c.addFunctionCode('_pause();', functions.pause);
17
21
 
18
- requireAccessControl(c, functions.unpause, access, 'PAUSER');
22
+ requireAccessControl(c, functions.unpause, access, 'PAUSER', 'pauser');
19
23
  c.addFunctionCode('_unpause();', functions.unpause);
20
24
  }
21
25