@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
@@ -1,4 +1,5 @@
1
1
  import type { ContractBuilder, BaseFunction } from './contract';
2
2
  import { Access } from './set-access-control';
3
3
  export declare function addPausable(c: ContractBuilder, access: Access, pausableFns: BaseFunction[]): void;
4
+ export declare function addPauseFunctions(c: ContractBuilder, access: Access): void;
4
5
  //# sourceMappingURL=add-pausable.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"add-pausable.d.ts","sourceRoot":"","sources":["../src/add-pausable.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAChE,OAAO,EAAE,MAAM,EAAwB,MAAM,sBAAsB,CAAC;AAGpE,wBAAgB,WAAW,CAAC,CAAC,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,QAe1F"}
1
+ {"version":3,"file":"add-pausable.d.ts","sourceRoot":"","sources":["../src/add-pausable.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAChE,OAAO,EAAE,MAAM,EAAwB,MAAM,sBAAsB,CAAC;AAGpE,wBAAgB,WAAW,CAAC,CAAC,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,QAW1F;AAED,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,QAMnE"}
@@ -1,22 +1,26 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.addPausable = void 0;
3
+ exports.addPauseFunctions = exports.addPausable = void 0;
4
4
  const set_access_control_1 = require("./set-access-control");
5
5
  const define_functions_1 = require("./utils/define-functions");
6
6
  function addPausable(c, access, pausableFns) {
7
7
  c.addParent({
8
8
  name: 'Pausable',
9
- path: '@openzeppelin/contracts/security/Pausable.sol',
9
+ path: '@openzeppelin/contracts/utils/Pausable.sol',
10
10
  });
11
11
  for (const fn of pausableFns) {
12
12
  c.addModifier('whenNotPaused', fn);
13
13
  }
14
- (0, set_access_control_1.requireAccessControl)(c, functions.pause, access, 'PAUSER');
14
+ addPauseFunctions(c, access);
15
+ }
16
+ exports.addPausable = addPausable;
17
+ function addPauseFunctions(c, access) {
18
+ (0, set_access_control_1.requireAccessControl)(c, functions.pause, access, 'PAUSER', 'pauser');
15
19
  c.addFunctionCode('_pause();', functions.pause);
16
- (0, set_access_control_1.requireAccessControl)(c, functions.unpause, access, 'PAUSER');
20
+ (0, set_access_control_1.requireAccessControl)(c, functions.unpause, access, 'PAUSER', 'pauser');
17
21
  c.addFunctionCode('_unpause();', functions.unpause);
18
22
  }
19
- exports.addPausable = addPausable;
23
+ exports.addPauseFunctions = addPauseFunctions;
20
24
  const functions = (0, define_functions_1.defineFunctions)({
21
25
  pause: {
22
26
  kind: 'public',
@@ -1 +1 @@
1
- {"version":3,"file":"add-pausable.js","sourceRoot":"","sources":["../src/add-pausable.ts"],"names":[],"mappings":";;;AACA,6DAAoE;AACpE,+DAA2D;AAE3D,SAAgB,WAAW,CAAC,CAAkB,EAAE,MAAc,EAAE,WAA2B;IACzF,CAAC,CAAC,SAAS,CAAC;QACV,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,+CAA+C;KACtD,CAAC,CAAC;IAEH,KAAK,MAAM,EAAE,IAAI,WAAW,EAAE;QAC5B,CAAC,CAAC,WAAW,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;KACpC;IAED,IAAA,yCAAoB,EAAC,CAAC,EAAE,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC3D,CAAC,CAAC,eAAe,CAAC,WAAW,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC;IAEhD,IAAA,yCAAoB,EAAC,CAAC,EAAE,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC7D,CAAC,CAAC,eAAe,CAAC,aAAa,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;AACtD,CAAC;AAfD,kCAeC;AAED,MAAM,SAAS,GAAG,IAAA,kCAAe,EAAC;IAChC,KAAK,EAAE;QACL,IAAI,EAAE,QAAiB;QACvB,IAAI,EAAE,EAAE;KACT;IAED,OAAO,EAAE;QACP,IAAI,EAAE,QAAiB;QACvB,IAAI,EAAE,EAAE;KACT;CACF,CAAC,CAAC"}
1
+ {"version":3,"file":"add-pausable.js","sourceRoot":"","sources":["../src/add-pausable.ts"],"names":[],"mappings":";;;AACA,6DAAoE;AACpE,+DAA2D;AAE3D,SAAgB,WAAW,CAAC,CAAkB,EAAE,MAAc,EAAE,WAA2B;IACzF,CAAC,CAAC,SAAS,CAAC;QACV,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,4CAA4C;KACnD,CAAC,CAAC;IAEH,KAAK,MAAM,EAAE,IAAI,WAAW,EAAE;QAC5B,CAAC,CAAC,WAAW,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;KACpC;IAED,iBAAiB,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;AAC/B,CAAC;AAXD,kCAWC;AAED,SAAgB,iBAAiB,CAAC,CAAkB,EAAE,MAAc;IAClE,IAAA,yCAAoB,EAAC,CAAC,EAAE,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACrE,CAAC,CAAC,eAAe,CAAC,WAAW,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC;IAEhD,IAAA,yCAAoB,EAAC,CAAC,EAAE,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACvE,CAAC,CAAC,eAAe,CAAC,aAAa,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;AACtD,CAAC;AAND,8CAMC;AAED,MAAM,SAAS,GAAG,IAAA,kCAAe,EAAC;IAChC,KAAK,EAAE;QACL,IAAI,EAAE,QAAiB;QACvB,IAAI,EAAE,EAAE;KACT;IAED,OAAO,EAAE;QACP,IAAI,EAAE,QAAiB;QACvB,IAAI,EAAE,EAAE;KACT;CACF,CAAC,CAAC"}
@@ -2,9 +2,8 @@ export interface Contract {
2
2
  name: string;
3
3
  license: string;
4
4
  parents: Parent[];
5
- using: Using[];
6
5
  natspecTags: NatspecTag[];
7
- imports: string[];
6
+ imports: ParentContract[];
8
7
  functions: ContractFunction[];
9
8
  constructorCode: string[];
10
9
  constructorArgs: FunctionArgument[];
@@ -21,10 +20,13 @@ export interface Parent {
21
20
  contract: ParentContract;
22
21
  params: Value[];
23
22
  }
24
- export interface ParentContract {
25
- name: string;
23
+ export interface ParentContract extends ReferencedContract {
26
24
  path: string;
27
25
  }
26
+ export interface ReferencedContract {
27
+ name: string;
28
+ transpiled?: boolean;
29
+ }
28
30
  export interface Using {
29
31
  library: ParentContract;
30
32
  usingFor: string;
@@ -37,7 +39,7 @@ export interface BaseFunction {
37
39
  mutability?: FunctionMutability;
38
40
  }
39
41
  export interface ContractFunction extends BaseFunction {
40
- override: Set<string>;
42
+ override: Set<ReferencedContract>;
41
43
  modifiers: string[];
42
44
  code: string[];
43
45
  mutability: FunctionMutability;
@@ -47,7 +49,7 @@ export type FunctionKind = 'internal' | 'public';
47
49
  export type FunctionMutability = typeof mutabilityRank[number];
48
50
  declare const mutabilityRank: readonly ["pure", "view", "nonpayable", "payable"];
49
51
  export interface FunctionArgument {
50
- type: string;
52
+ type: string | ReferencedContract;
51
53
  name: string;
52
54
  }
53
55
  export interface NatspecTag {
@@ -67,12 +69,11 @@ export declare class ContractBuilder implements Contract {
67
69
  private functionMap;
68
70
  constructor(name: string);
69
71
  get parents(): Parent[];
70
- get imports(): string[];
72
+ get imports(): ParentContract[];
71
73
  get functions(): ContractFunction[];
72
74
  get variables(): string[];
73
75
  addParent(contract: ParentContract, params?: Value[]): boolean;
74
- addUsing(library: ParentContract, usingFor: string): void;
75
- addOverride(parent: string, baseFn: BaseFunction, mutability?: FunctionMutability): void;
76
+ addOverride(parent: ReferencedContract, baseFn: BaseFunction, mutability?: FunctionMutability): void;
76
77
  addModifier(modifier: string, baseFn: BaseFunction): void;
77
78
  addNatspecTag(key: string, value: string): void;
78
79
  private addFunction;
@@ -80,6 +81,9 @@ export declare class ContractBuilder implements Contract {
80
81
  addConstructorCode(code: string): void;
81
82
  addFunctionCode(code: string, baseFn: BaseFunction, mutability?: FunctionMutability): void;
82
83
  setFunctionBody(code: string[], baseFn: BaseFunction, mutability?: FunctionMutability): void;
84
+ /**
85
+ * Note: The type in the variable is not currently transpiled, even if it refers to a contract
86
+ */
83
87
  addVariable(code: string): boolean;
84
88
  }
85
89
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../src/contract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contract.d.ts","sourceRoot":"","sources":["../src/contract.ts"],"names":[],"mappings":"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"}
package/dist/contract.js CHANGED
@@ -35,8 +35,8 @@ class ContractBuilder {
35
35
  }
36
36
  get imports() {
37
37
  return [
38
- ...[...this.parentMap.values()].map(p => p.contract.path),
39
- ...this.using.map(u => u.library.path),
38
+ ...[...this.parentMap.values()].map(p => p.contract),
39
+ ...this.using.map(u => u.library),
40
40
  ];
41
41
  }
42
42
  get functions() {
@@ -50,9 +50,6 @@ class ContractBuilder {
50
50
  this.parentMap.set(contract.name, { contract, params });
51
51
  return !present;
52
52
  }
53
- addUsing(library, usingFor) {
54
- this.using.push({ library, usingFor });
55
- }
56
53
  addOverride(parent, baseFn, mutability) {
57
54
  const fn = this.addFunction(baseFn);
58
55
  fn.override.add(parent);
@@ -115,6 +112,9 @@ class ContractBuilder {
115
112
  fn.mutability = mutability;
116
113
  }
117
114
  }
115
+ /**
116
+ * Note: The type in the variable is not currently transpiled, even if it refers to a contract
117
+ */
118
118
  addVariable(code) {
119
119
  const present = this.variableSet.has(code);
120
120
  this.variableSet.add(code);
@@ -1 +1 @@
1
- {"version":3,"file":"contract.js","sourceRoot":"","sources":["../src/contract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"contract.js","sourceRoot":"","sources":["../src/contract.ts"],"names":[],"mappings":"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"}