@openzeppelin/wizard 0.5.5 → 0.5.6

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/dist/account.js CHANGED
@@ -150,11 +150,15 @@ function addMultisigFunctions(c, opts) {
150
150
  switch (opts.signer) {
151
151
  case 'MultisigWeighted':
152
152
  c.addFunctionCode(`_setSignerWeights(${functions.setSignerWeights.args.map(({ name }) => name).join(', ')});`, functions.setSignerWeights);
153
+ c.addModifier('onlyEntryPointOrSelf', functions.setSignerWeights);
153
154
  // eslint-disable-next-line no-fallthrough
154
155
  case 'Multisig':
155
156
  c.addFunctionCode(`_addSigners(${functions.addSigners.args[0].name});`, functions.addSigners);
157
+ c.addModifier('onlyEntryPointOrSelf', functions.addSigners);
156
158
  c.addFunctionCode(`_removeSigners(${functions.removeSigners.args[0].name});`, functions.removeSigners);
159
+ c.addModifier('onlyEntryPointOrSelf', functions.removeSigners);
157
160
  c.addFunctionCode(`_setThreshold(${functions.setThreshold.args[0].name});`, functions.setThreshold);
161
+ c.addModifier('onlyEntryPointOrSelf', functions.setThreshold);
158
162
  break;
159
163
  default:
160
164
  }
@@ -179,7 +183,7 @@ function overrideRawSignatureValidation(c, opts) {
179
183
  c.addOverride({ name: 'Account' }, signer_1.signerFunctions._rawSignatureValidation);
180
184
  c.setFunctionBody(['// Custom validation logic', 'return false;'], signer_1.signerFunctions._rawSignatureValidation);
181
185
  }
182
- // Dissambiguate between Signer and AccountERC7579
186
+ // Disambiguate between Signer and AccountERC7579
183
187
  if (opts.signer && opts.ERC7579Modules) {
184
188
  c.addImportOnly({
185
189
  name: 'AbstractSigner',
@@ -1 +1 @@
1
- {"version":3,"file":"account.js","sourceRoot":"","sources":["../src/account.ts"],"names":[],"mappings":";;;AAgDA,oCAEC;AAED,oCAoBC;AAxED,yCAA6C;AAE7C,+DAA2D;AAC3D,mCAAwC;AACxC,qDAAsG;AACtG,yCAAqC;AACrC,qCAAmF;AAEtE,QAAA,QAAQ,GAA6B;IAChD,GAAG,yBAAc;IACjB,IAAI,EAAE,WAAW;IACjB,mBAAmB,EAAE,SAAS;IAC9B,YAAY,EAAE,IAAI;IAClB,aAAa,EAAE,IAAI;IACnB,MAAM,EAAE,OAAO;IACf,gBAAgB,EAAE,KAAK;IACvB,cAAc,EAAE,KAAK;CACb,CAAC;AAEE,QAAA,0BAA0B,GAAG,CAAC,KAAK,EAAE,SAAS,EAAE,SAAS,CAAU,CAAC;AAGpE,QAAA,qBAAqB,GAAG,CAAC,KAAK,EAAE,gBAAgB,EAAE,sBAAsB,CAAU,CAAC;AAahG,SAAS,YAAY,CAAC,IAAoB;;IACxC,OAAO;QACL,GAAG,IAAA,mCAAkB,EAAC,IAAI,CAAC;QAC3B,IAAI,EAAE,MAAA,IAAI,CAAC,IAAI,mCAAI,gBAAQ,CAAC,IAAI;QAChC,mBAAmB,EAAE,MAAA,IAAI,CAAC,mBAAmB,mCAAI,gBAAQ,CAAC,mBAAmB;QAC7E,YAAY,EAAE,MAAA,IAAI,CAAC,YAAY,mCAAI,gBAAQ,CAAC,YAAY;QACxD,aAAa,EAAE,MAAA,IAAI,CAAC,aAAa,mCAAI,gBAAQ,CAAC,aAAa;QAC3D,MAAM,EAAE,MAAA,IAAI,CAAC,MAAM,mCAAI,gBAAQ,CAAC,MAAM;QACtC,gBAAgB,EAAE,MAAA,IAAI,CAAC,gBAAgB,mCAAI,gBAAQ,CAAC,gBAAgB;QACpE,cAAc,EAAE,MAAA,IAAI,CAAC,cAAc,mCAAI,gBAAQ,CAAC,cAAc;KAC/D,CAAC;AACJ,CAAC;AAED,SAAgB,YAAY,CAAC,OAAuB,gBAAQ;IAC1D,OAAO,IAAA,qBAAa,EAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;AAC3C,CAAC;AAED,SAAgB,YAAY,CAAC,IAAoB;IAC/C,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IAEnC,OAAO,CAAC,WAAW,GAAG,KAAK,CAAC,CAAC,kEAAkE;IAC/F,OAAO,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,kDAAkD;IAE1E,MAAM,CAAC,GAAG,IAAI,0BAAe,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAE5C,UAAU,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;IACvB,8BAA8B,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;IAC3C,IAAA,kBAAO,EAAC,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAEzB,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;QACxB,CAAC,CAAC,aAAa,CAAC;YACd,IAAI,EAAE,qBAAqB;YAC3B,IAAI,EAAE,uDAAuD;SAC9D,CAAC,CAAC;IACL,CAAC;IAED,OAAO,CAAC,CAAC;AACX,CAAC;AAED,SAAS,UAAU,CAAC,CAAkB,EAAE,IAAoB;;IAC1D,OAAO;IACP,CAAC,CAAC,SAAS,CAAC;QACV,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,uDAAuD;KAC9D,CAAC,CAAC;IACH,CAAC,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,SAAS,CAAC,eAAe,CAAC,CAAC;IAE9D,IAAI,IAAI,CAAC,mBAAmB,KAAK,SAAS;QAAE,SAAS,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAE/D,aAAa;IACb,sBAAsB,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAChC,iBAAiB,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAC3B,IAAA,kBAAS,EAAC,CAAC,EAAE,MAAA,IAAI,CAAC,MAAM,mCAAI,KAAK,CAAC,CAAC;IACnC,oBAAoB,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAC9B,mBAAmB,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAC7B,eAAe,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IACzB,gBAAgB,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;AAC5B,CAAC;AAED,SAAS,sBAAsB,CAAC,CAAkB,EAAE,IAAoB;IACtE,QAAQ,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACjC,KAAK,SAAS;YACZ,CAAC,CAAC,SAAS,CAAC;gBACV,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,kEAAkE;aACzE,CAAC,CAAC;YACH,MAAM;QACR,KAAK,SAAS;YACZ,CAAC,CAAC,SAAS,CAAC;gBACV,IAAI,EAAE,UAAU;gBAChB,IAAI,EAAE,iDAAiD;aACxD,CAAC,CAAC;YACH,CAAC,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,SAAS,CAAC,gBAAgB,CAAC,CAAC;YAChE,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;gBACzB,CAAC,CAAC,eAAe,CACf;oBACE,4GAA4G;iBAC7G,EACD,SAAS,CAAC,gBAAgB,CAC3B,CAAC;YACJ,CAAC;YACD,MAAM;IACV,CAAC;AACH,CAAC;AAED,SAAS,eAAe,CAAC,CAAkB,EAAE,IAAoB;IAC/D,IAAI,CAAC,IAAI,CAAC,YAAY;QAAE,OAAO;IAC/B,CAAC,CAAC,SAAS,CAAC;QACV,IAAI,EAAE,cAAc;QACpB,IAAI,EAAE,6DAA6D;KACpE,CAAC,CAAC;AACL,CAAC;AAED,SAAS,gBAAgB,CAAC,CAAkB,EAAE,IAAoB;IAChE,IAAI,CAAC,IAAI,CAAC,aAAa;QAAE,OAAO;IAChC,CAAC,CAAC,SAAS,CAAC;QACV,IAAI,EAAE,eAAe;QACrB,IAAI,EAAE,+DAA+D;KACtE,CAAC,CAAC;AACL,CAAC;AAED,SAAS,mBAAmB,CAAC,CAAkB,EAAE,IAAoB;IACnE,qCAAqC;IACrC,IAAI,CAAC,IAAI,CAAC,gBAAgB,IAAI,CAAC,CAAC,IAAI,CAAC,cAAc;QAAE,OAAO;IAC5D,CAAC,CAAC,SAAS,CAAC;QACV,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,kEAAkE;KACzE,CAAC,CAAC;IACH,CAAC,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,SAAS,CAAC,0BAA0B,CAAC,CAAC;IACzE,CAAC,CAAC,eAAe,CACf,CAAC,0GAA0G,CAAC,EAC5G,SAAS,CAAC,0BAA0B,CACrC,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,CAAkB,EAAE,IAAoB;IACjE,IAAI,CAAC,IAAI,CAAC,cAAc;QAAE,OAAO;IACjC,CAAC,CAAC,SAAS,CAAC;QACV,IAAI,EAAE,IAAI,CAAC,cAAc;QACzB,IAAI,EAAE,wDAAwD,IAAI,CAAC,cAAc,MAAM;KACxF,CAAC,CAAC;IACH,IAAI,IAAI,CAAC,cAAc,KAAK,gBAAgB,EAAE,CAAC;QAC7C,CAAC,CAAC,aAAa,CAAC;YACd,IAAI,EAAE,gBAAgB;YACtB,IAAI,EAAE,yEAAyE;SAChF,CAAC,CAAC;IACL,CAAC;IACD,CAAC,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,EAAE,SAAS,CAAC,gBAAgB,CAAC,CAAC;IACtE,CAAC,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,EAAE,SAAS,CAAC,eAAe,CAAC,CAAC;IAErE,IAAI,IAAI,CAAC,mBAAmB,KAAK,SAAS;QAAE,OAAO;IACnD,CAAC,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,SAAS,CAAC,gBAAgB,CAAC,CAAC;IAC/D,CAAC,CAAC,eAAe,CACf;QACE,kGAAkG;QAClG,0EAA0E;QAC1E,kEAAkE;QAClE,8GAA8G;KAC/G,EACD,SAAS,CAAC,gBAAgB,CAC3B,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAAC,CAAkB,EAAE,IAAoB;IACpE,QAAQ,IAAI,CAAC,MAAM,EAAE,CAAC;QACpB,KAAK,kBAAkB;YACrB,CAAC,CAAC,eAAe,CACf,qBAAqB,SAAS,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAC3F,SAAS,CAAC,gBAAgB,CAC3B,CAAC;QACJ,0CAA0C;QAC1C,KAAK,UAAU;YACb,CAAC,CAAC,eAAe,CAAC,eAAe,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,IAAI,IAAI,EAAE,SAAS,CAAC,UAAU,CAAC,CAAC;YAC/F,CAAC,CAAC,eAAe,CAAC,kBAAkB,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,IAAI,IAAI,EAAE,SAAS,CAAC,aAAa,CAAC,CAAC;YACxG,CAAC,CAAC,eAAe,CAAC,iBAAiB,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAE,CAAC,IAAI,IAAI,EAAE,SAAS,CAAC,YAAY,CAAC,CAAC;YACrG,MAAM;QACR,QAAQ;IACV,CAAC;AACH,CAAC;AAED,SAAS,SAAS,CAAC,CAAkB,EAAE,IAAoB;IACzD,IAAI,IAAI,CAAC,mBAAmB,IAAI,SAAS;QAAE,OAAO;IAClD,CAAC,CAAC,SAAS,CACT;QACE,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,uDAAuD;KAC9D,EACD,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CACjB,CAAC;AACJ,CAAC;AAED,SAAS,8BAA8B,CAAC,CAAkB,EAAE,IAAoB;IAC9E,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,cAAc;QAAE,OAAO,CAAC,kDAAkD;IACnG,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,cAAc;QAAE,OAAO,CAAC,0DAA0D;IAE3G,6FAA6F;IAC7F,uCAAuC;IACvC,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;QACzC,0BAA0B;QAC1B,CAAC,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,wBAAe,CAAC,uBAAuB,CAAC,CAAC;QAC5E,CAAC,CAAC,eAAe,CAAC,CAAC,4BAA4B,EAAE,eAAe,CAAC,EAAE,wBAAe,CAAC,uBAAuB,CAAC,CAAC;IAC9G,CAAC;IAED,kDAAkD;IAClD,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;QACvC,CAAC,CAAC,aAAa,CAAC;YACd,IAAI,EAAE,gBAAgB;YACtB,IAAI,EAAE,yEAAyE;SAChF,CAAC,CAAC;QACH,CAAC,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,EAAE,wBAAe,CAAC,uBAAuB,CAAC,CAAC;QACnF,CAAC,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,gBAAgB,EAAE,EAAE,wBAAe,CAAC,uBAAuB,CAAC,CAAC;QACnF,CAAC,CAAC,mBAAmB,CACnB;YACE,iCAAiC,IAAI,CAAC,MAAM,sCAAsC;YAClF,gFAAgF,IAAI,CAAC,MAAM,GAAG;YAC9F,wDAAwD;YACxD,+DAA+D;SAChE,EACD,wBAAe,CAAC,uBAAuB,CACxC,CAAC;QACF,qGAAqG;QACrG,IAAI,IAAI,CAAC,MAAM,KAAK,kBAAkB,EAAE,CAAC;YACvC,CAAC,CAAC,aAAa,CAAC,gBAAO,CAAC,QAAQ,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,SAAS,GAAG;IAChB,GAAG,IAAA,kCAAe,EAAC;QACjB,gBAAgB,EAAE;YAChB,IAAI,EAAE,QAAiB;YACvB,UAAU,EAAE,MAAe;YAC3B,IAAI,EAAE;gBACJ,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE;gBACjC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,gBAAgB,EAAE;aAC9C;YACD,OAAO,EAAE,CAAC,QAAQ,CAAC;SACpB;QACD,eAAe,EAAE;YACf,IAAI,EAAE,UAAmB;YACzB,IAAI,EAAE;gBACJ,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,8BAA8B,EAAE;gBACxD,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE;aACxC;YACD,OAAO,EAAE,CAAC,SAAS,CAAC;SACrB;QACD,0BAA0B,EAAE;YAC1B,IAAI,EAAE,UAAmB;YACzB,IAAI,EAAE;gBACJ,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE;gBACnC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE;gBACjC,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,gBAAgB,EAAE;aAClD;YACD,OAAO,EAAE,CAAC,MAAM,CAAC;YACjB,UAAU,EAAE,MAAe;SAC5B;QACD,UAAU,EAAE;YACV,IAAI,EAAE,QAAiB;YACvB,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC;SACpD;QACD,aAAa,EAAE;YACb,IAAI,EAAE,QAAiB;YACvB,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,gBAAgB,EAAE,CAAC;SACpD;QACD,YAAY,EAAE;YACZ,IAAI,EAAE,QAAiB;YACvB,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;SAC/C;QACD,gBAAgB,EAAE;YAChB,IAAI,EAAE,QAAiB;YACvB,IAAI,EAAE;gBACJ,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,gBAAgB,EAAE;gBAC3C,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,kBAAkB,EAAE;aAC9C;SACF;KACF,CAAC;CACH,CAAC"}
1
+ {"version":3,"file":"account.js","sourceRoot":"","sources":["../src/account.ts"],"names":[],"mappings":"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"}
@@ -23,7 +23,7 @@ export interface GovernorOptions extends CommonOptions {
23
23
  storage?: boolean;
24
24
  settings?: boolean;
25
25
  }
26
- export declare function isAccessControlRequired(opts: Partial<GovernorOptions>): boolean;
26
+ export declare function isAccessControlRequired(_: Partial<GovernorOptions>): boolean;
27
27
  export declare function buildGovernor(opts: GovernorOptions): Contract;
28
28
  export declare const numberPattern: RegExp;
29
29
  //# sourceMappingURL=governor.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"governor.d.ts","sourceRoot":"","sources":["../src/governor.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEtD,OAAO,KAAK,EAAE,QAAQ,EAAkB,MAAM,YAAY,CAAC;AAS3D,OAAO,EAAoB,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAEpE,eAAO,MAAM,QAAQ,EAAE,QAAQ,CAAC,eAAe,CAoBrC,CAAC;AAEX,eAAO,MAAM,YAAY,wCAAyC,CAAC;AACnE,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC;AAEzD,eAAO,MAAM,eAAe,8CAA+C,CAAC;AAC5E,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC;AAE/D,wBAAgB,aAAa,CAAC,IAAI,GAAE,eAA0B,GAAG,MAAM,CAEtE;AAED,MAAM,WAAW,eAAgB,SAAQ,aAAa;IACpD,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,SAAS,GAAG,UAAU,CAAC;IACpC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,OAAO,CAE/E;AAoBD,wBAAgB,aAAa,CAAC,IAAI,EAAE,eAAe,GAAG,QAAQ,CAoB7D;AAwKD,eAAO,MAAM,aAAa,QAAwC,CAAC"}
1
+ {"version":3,"file":"governor.d.ts","sourceRoot":"","sources":["../src/governor.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEtD,OAAO,KAAK,EAAE,QAAQ,EAAkB,MAAM,YAAY,CAAC;AAS3D,OAAO,EAAoB,KAAK,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAEpE,eAAO,MAAM,QAAQ,EAAE,QAAQ,CAAC,eAAe,CAoBrC,CAAC;AAEX,eAAO,MAAM,YAAY,wCAAyC,CAAC;AACnE,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC;AAEzD,eAAO,MAAM,eAAe,8CAA+C,CAAC;AAC5E,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC;AAE/D,wBAAgB,aAAa,CAAC,IAAI,GAAE,eAA0B,GAAG,MAAM,CAEtE;AAED,MAAM,WAAW,eAAgB,SAAQ,aAAa;IACpD,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,SAAS,GAAG,UAAU,CAAC;IACpC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,wBAAgB,uBAAuB,CAAC,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,OAAO,CAE5E;AAoBD,wBAAgB,aAAa,CAAC,IAAI,EAAE,eAAe,GAAG,QAAQ,CAoB7D;AAwKD,eAAO,MAAM,aAAa,QAAwC,CAAC"}
package/dist/governor.js CHANGED
@@ -39,8 +39,8 @@ exports.timelockOptions = [false, 'openzeppelin', 'compound'];
39
39
  function printGovernor(opts = exports.defaults) {
40
40
  return (0, print_1.printContract)(buildGovernor(opts));
41
41
  }
42
- function isAccessControlRequired(opts) {
43
- return opts.upgradeable === 'uups';
42
+ function isAccessControlRequired(_) {
43
+ return false;
44
44
  }
45
45
  function withDefaults(opts) {
46
46
  var _a, _b, _c, _d, _e, _f, _g, _h, _j;
@@ -72,7 +72,7 @@ function buildGovernor(opts) {
72
72
  addQuorum(c, allOpts);
73
73
  addTimelock(c, allOpts);
74
74
  (0, set_access_control_1.setAccessControl)(c, allOpts.access);
75
- (0, set_upgradeable_1.setUpgradeable)(c, allOpts.upgradeable, allOpts.access);
75
+ (0, set_upgradeable_1.setUpgradeableGovernor)(c, allOpts.upgradeable);
76
76
  (0, set_info_1.setInfo)(c, allOpts.info);
77
77
  return c;
78
78
  }
@@ -1 +1 @@
1
- {"version":3,"file":"governor.js","sourceRoot":"","sources":["../src/governor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"governor.js","sourceRoot":"","sources":["../src/governor.ts"],"names":[],"mappings":"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"}
@@ -3,4 +3,5 @@ import type { Access } from './set-access-control';
3
3
  export declare const upgradeableOptions: readonly [false, "transparent", "uups"];
4
4
  export type Upgradeable = (typeof upgradeableOptions)[number];
5
5
  export declare function setUpgradeable(c: ContractBuilder, upgradeable: Upgradeable, access: Access): void;
6
+ export declare function setUpgradeableGovernor(c: ContractBuilder, upgradeable: Upgradeable): void;
6
7
  //# sourceMappingURL=set-upgradeable.d.ts.map
@@ -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,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAInD,eAAO,MAAM,kBAAkB,yCAA0C,CAAC;AAE1E,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE9D,wBAAgB,cAAc,CAAC,CAAC,EAAE,eAAe,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,QAiC1F"}
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,KAAK,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAInD,eAAO,MAAM,kBAAkB,yCAA0C,CAAC;AAE1E,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC;AAyC9D,wBAAgB,cAAc,CAAC,CAAC,EAAE,eAAe,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,QAI1F;AAED,wBAAgB,sBAAsB,CAAC,CAAC,EAAE,eAAe,EAAE,WAAW,EAAE,WAAW,QAIlF"}
@@ -2,10 +2,11 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.upgradeableOptions = void 0;
4
4
  exports.setUpgradeable = setUpgradeable;
5
+ exports.setUpgradeableGovernor = setUpgradeableGovernor;
5
6
  const set_access_control_1 = require("./set-access-control");
6
7
  const define_functions_1 = require("./utils/define-functions");
7
8
  exports.upgradeableOptions = [false, 'transparent', 'uups'];
8
- function setUpgradeable(c, upgradeable, access) {
9
+ function setUpgradeableBase(c, upgradeable, restrictAuthorizeUpgradeWhenUUPS) {
9
10
  if (upgradeable === false) {
10
11
  return;
11
12
  }
@@ -18,7 +19,7 @@ function setUpgradeable(c, upgradeable, access) {
18
19
  case 'transparent':
19
20
  break;
20
21
  case 'uups': {
21
- (0, set_access_control_1.requireAccessControl)(c, functions._authorizeUpgrade, access, 'UPGRADER', 'upgrader');
22
+ restrictAuthorizeUpgradeWhenUUPS();
22
23
  const UUPSUpgradeable = {
23
24
  name: 'UUPSUpgradeable',
24
25
  path: '@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol',
@@ -34,6 +35,16 @@ function setUpgradeable(c, upgradeable, access) {
34
35
  }
35
36
  }
36
37
  }
38
+ function setUpgradeable(c, upgradeable, access) {
39
+ setUpgradeableBase(c, upgradeable, () => {
40
+ (0, set_access_control_1.requireAccessControl)(c, functions._authorizeUpgrade, access, 'UPGRADER', 'upgrader');
41
+ });
42
+ }
43
+ function setUpgradeableGovernor(c, upgradeable) {
44
+ setUpgradeableBase(c, upgradeable, () => {
45
+ c.addModifier('onlyGovernance', functions._authorizeUpgrade);
46
+ });
47
+ }
37
48
  const functions = (0, define_functions_1.defineFunctions)({
38
49
  _authorizeUpgrade: {
39
50
  args: [{ name: 'newImplementation', type: 'address' }],
@@ -1 +1 @@
1
- {"version":3,"file":"set-upgradeable.js","sourceRoot":"","sources":["../src/set-upgradeable.ts"],"names":[],"mappings":";;;AASA,wCAiCC;AAxCD,6DAA4D;AAC5D,+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,CAAC;QAC1B,OAAO;IACT,CAAC;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,CAAC;QACpB,KAAK,aAAa;YAChB,MAAM;QAER,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,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;QACR,CAAC;QAED,OAAO,CAAC,CAAC,CAAC;YACR,MAAM,CAAC,GAAU,WAAW,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;QACrD,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,SAAS,GAAG,IAAA,kCAAe,EAAC;IAChC,iBAAiB,EAAE;QACjB,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACtD,IAAI,EAAE,UAAU;KACjB;CACF,CAAC,CAAC"}
1
+ {"version":3,"file":"set-upgradeable.js","sourceRoot":"","sources":["../src/set-upgradeable.ts"],"names":[],"mappings":";;;AAgDA,wCAIC;AAED,wDAIC;AAxDD,6DAA4D;AAC5D,+DAA2D;AAE9C,QAAA,kBAAkB,GAAG,CAAC,KAAK,EAAE,aAAa,EAAE,MAAM,CAAU,CAAC;AAI1E,SAAS,kBAAkB,CACzB,CAAkB,EAClB,WAAwB,EACxB,gCAA4C;IAE5C,IAAI,WAAW,KAAK,KAAK,EAAE,CAAC;QAC1B,OAAO;IACT,CAAC;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,CAAC;QACpB,KAAK,aAAa;YAChB,MAAM;QAER,KAAK,MAAM,CAAC,CAAC,CAAC;YACZ,gCAAgC,EAAE,CAAC;YACnC,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;QACR,CAAC;QAED,OAAO,CAAC,CAAC,CAAC;YACR,MAAM,CAAC,GAAU,WAAW,CAAC;YAC7B,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;QACrD,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAgB,cAAc,CAAC,CAAkB,EAAE,WAAwB,EAAE,MAAc;IACzF,kBAAkB,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE;QACtC,IAAA,yCAAoB,EAAC,CAAC,EAAE,SAAS,CAAC,iBAAiB,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,CAAC,CAAC;IACvF,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAgB,sBAAsB,CAAC,CAAkB,EAAE,WAAwB;IACjF,kBAAkB,CAAC,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE;QACtC,CAAC,CAAC,WAAW,CAAC,gBAAgB,EAAE,SAAS,CAAC,iBAAiB,CAAC,CAAC;IAC/D,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,SAAS,GAAG,IAAA,kCAAe,EAAC;IAChC,iBAAiB,EAAE;QACjB,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;QACtD,IAAI,EAAE,UAAU;KACjB;CACF,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openzeppelin/wizard",
3
- "version": "0.5.5",
3
+ "version": "0.5.6",
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",
package/src/account.ts CHANGED
@@ -183,11 +183,15 @@ function addMultisigFunctions(c: ContractBuilder, opts: AccountOptions): void {
183
183
  `_setSignerWeights(${functions.setSignerWeights.args.map(({ name }) => name).join(', ')});`,
184
184
  functions.setSignerWeights,
185
185
  );
186
+ c.addModifier('onlyEntryPointOrSelf', functions.setSignerWeights);
186
187
  // eslint-disable-next-line no-fallthrough
187
188
  case 'Multisig':
188
189
  c.addFunctionCode(`_addSigners(${functions.addSigners.args[0]!.name});`, functions.addSigners);
190
+ c.addModifier('onlyEntryPointOrSelf', functions.addSigners);
189
191
  c.addFunctionCode(`_removeSigners(${functions.removeSigners.args[0]!.name});`, functions.removeSigners);
192
+ c.addModifier('onlyEntryPointOrSelf', functions.removeSigners);
190
193
  c.addFunctionCode(`_setThreshold(${functions.setThreshold.args[0]!.name});`, functions.setThreshold);
194
+ c.addModifier('onlyEntryPointOrSelf', functions.setThreshold);
191
195
  break;
192
196
  default:
193
197
  }
@@ -216,7 +220,7 @@ function overrideRawSignatureValidation(c: ContractBuilder, opts: AccountOptions
216
220
  c.setFunctionBody(['// Custom validation logic', 'return false;'], signerFunctions._rawSignatureValidation);
217
221
  }
218
222
 
219
- // Dissambiguate between Signer and AccountERC7579
223
+ // Disambiguate between Signer and AccountERC7579
220
224
  if (opts.signer && opts.ERC7579Modules) {
221
225
  c.addImportOnly({
222
226
  name: 'AbstractSigner',
package/src/governor.ts CHANGED
@@ -7,7 +7,7 @@ import { OptionsError } from './error';
7
7
  import { setAccessControl } from './set-access-control';
8
8
  import { printContract } from './print';
9
9
  import { setInfo } from './set-info';
10
- import { setUpgradeable } from './set-upgradeable';
10
+ import { setUpgradeableGovernor } from './set-upgradeable';
11
11
  import { defineFunctions } from './utils/define-functions';
12
12
  import { durationToBlocks, durationToTimestamp } from './utils/duration';
13
13
  import { clockModeDefault, type ClockMode } from './set-clock-mode';
@@ -61,8 +61,8 @@ export interface GovernorOptions extends CommonOptions {
61
61
  settings?: boolean;
62
62
  }
63
63
 
64
- export function isAccessControlRequired(opts: Partial<GovernorOptions>): boolean {
65
- return opts.upgradeable === 'uups';
64
+ export function isAccessControlRequired(_: Partial<GovernorOptions>): boolean {
65
+ return false;
66
66
  }
67
67
 
68
68
  function withDefaults(opts: GovernorOptions): Required<GovernorOptions> {
@@ -99,7 +99,7 @@ export function buildGovernor(opts: GovernorOptions): Contract {
99
99
  addTimelock(c, allOpts);
100
100
 
101
101
  setAccessControl(c, allOpts.access);
102
- setUpgradeable(c, allOpts.upgradeable, allOpts.access);
102
+ setUpgradeableGovernor(c, allOpts.upgradeable);
103
103
  setInfo(c, allOpts.info);
104
104
 
105
105
  return c;
@@ -7,7 +7,11 @@ export const upgradeableOptions = [false, 'transparent', 'uups'] as const;
7
7
 
8
8
  export type Upgradeable = (typeof upgradeableOptions)[number];
9
9
 
10
- export function setUpgradeable(c: ContractBuilder, upgradeable: Upgradeable, access: Access) {
10
+ function setUpgradeableBase(
11
+ c: ContractBuilder,
12
+ upgradeable: Upgradeable,
13
+ restrictAuthorizeUpgradeWhenUUPS: () => void,
14
+ ) {
11
15
  if (upgradeable === false) {
12
16
  return;
13
17
  }
@@ -24,7 +28,7 @@ export function setUpgradeable(c: ContractBuilder, upgradeable: Upgradeable, acc
24
28
  break;
25
29
 
26
30
  case 'uups': {
27
- requireAccessControl(c, functions._authorizeUpgrade, access, 'UPGRADER', 'upgrader');
31
+ restrictAuthorizeUpgradeWhenUUPS();
28
32
  const UUPSUpgradeable = {
29
33
  name: 'UUPSUpgradeable',
30
34
  path: '@openzeppelin/contracts/proxy/utils/UUPSUpgradeable.sol',
@@ -42,6 +46,18 @@ export function setUpgradeable(c: ContractBuilder, upgradeable: Upgradeable, acc
42
46
  }
43
47
  }
44
48
 
49
+ export function setUpgradeable(c: ContractBuilder, upgradeable: Upgradeable, access: Access) {
50
+ setUpgradeableBase(c, upgradeable, () => {
51
+ requireAccessControl(c, functions._authorizeUpgrade, access, 'UPGRADER', 'upgrader');
52
+ });
53
+ }
54
+
55
+ export function setUpgradeableGovernor(c: ContractBuilder, upgradeable: Upgradeable) {
56
+ setUpgradeableBase(c, upgradeable, () => {
57
+ c.addModifier('onlyGovernance', functions._authorizeUpgrade);
58
+ });
59
+ }
60
+
45
61
  const functions = defineFunctions({
46
62
  _authorizeUpgrade: {
47
63
  args: [{ name: 'newImplementation', type: 'address' }],