@skalenetwork/upgrade-tools 3.0.0-merge → 3.0.0-proxy-admin.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 (87) hide show
  1. package/dist/hardhat.config.d.ts +3 -3
  2. package/dist/hardhat.config.js +6 -4
  3. package/dist/hardhat.config.js.map +1 -0
  4. package/dist/src/abi.d.ts +2 -2
  5. package/dist/src/abi.js +8 -4
  6. package/dist/src/abi.js.map +1 -0
  7. package/dist/src/contractFactory.d.ts +4 -0
  8. package/dist/src/contractFactory.js +84 -0
  9. package/dist/src/contractFactory.js.map +1 -0
  10. package/dist/src/deploy.d.ts +4 -4
  11. package/dist/src/deploy.js +59 -60
  12. package/dist/src/deploy.js.map +1 -0
  13. package/dist/src/exitCodes.d.ts +7 -0
  14. package/dist/src/exitCodes.js +12 -0
  15. package/dist/src/exitCodes.js.map +1 -0
  16. package/dist/src/gnosis-safe.d.ts +2 -2
  17. package/dist/src/gnosis-safe.js +125 -81
  18. package/dist/src/gnosis-safe.js.map +1 -0
  19. package/dist/src/index.d.ts +0 -1
  20. package/dist/src/index.js +1 -1
  21. package/dist/src/index.js.map +1 -0
  22. package/dist/src/nonceProvider.d.ts +10 -0
  23. package/dist/src/nonceProvider.js +34 -0
  24. package/dist/src/nonceProvider.js.map +1 -0
  25. package/dist/src/submitters/auto-submitter.d.ts +19 -5
  26. package/dist/src/submitters/auto-submitter.js +128 -118
  27. package/dist/src/submitters/auto-submitter.js.map +1 -0
  28. package/dist/src/submitters/eoa-submitter.d.ts +3 -2
  29. package/dist/src/submitters/eoa-submitter.js +19 -13
  30. package/dist/src/submitters/eoa-submitter.js.map +1 -0
  31. package/dist/src/submitters/index.js +1 -0
  32. package/dist/src/submitters/index.js.map +1 -0
  33. package/dist/src/submitters/safe-ima-legacy-marionette-submitter.d.ts +4 -3
  34. package/dist/src/submitters/safe-ima-legacy-marionette-submitter.js +14 -13
  35. package/dist/src/submitters/safe-ima-legacy-marionette-submitter.js.map +1 -0
  36. package/dist/src/submitters/safe-ima-marionette-submitter.d.ts +3 -3
  37. package/dist/src/submitters/safe-ima-marionette-submitter.js +13 -11
  38. package/dist/src/submitters/safe-ima-marionette-submitter.js.map +1 -0
  39. package/dist/src/submitters/safe-submitter.d.ts +4 -4
  40. package/dist/src/submitters/safe-submitter.js +3 -2
  41. package/dist/src/submitters/safe-submitter.js.map +1 -0
  42. package/dist/src/submitters/safe-to-ima-submitter.d.ts +11 -6
  43. package/dist/src/submitters/safe-to-ima-submitter.js +23 -15
  44. package/dist/src/submitters/safe-to-ima-submitter.js.map +1 -0
  45. package/dist/src/submitters/submitter.d.ts +3 -3
  46. package/dist/src/submitters/submitter.js +11 -7
  47. package/dist/src/submitters/submitter.js.map +1 -0
  48. package/dist/src/submitters/types/marionette.d.ts +6 -3
  49. package/dist/src/submitters/types/marionette.js +1 -0
  50. package/dist/src/submitters/types/marionette.js.map +1 -0
  51. package/dist/src/types/SkaleManifestData.js +1 -0
  52. package/dist/src/types/SkaleManifestData.js.map +1 -0
  53. package/dist/src/types/upgrader.d.ts +12 -0
  54. package/dist/src/types/upgrader.js +3 -0
  55. package/dist/src/types/upgrader.js.map +1 -0
  56. package/dist/src/upgrader.d.ts +26 -7
  57. package/dist/src/upgrader.js +175 -96
  58. package/dist/src/upgrader.js.map +1 -0
  59. package/dist/src/verification.d.ts +2 -2
  60. package/dist/src/verification.js +53 -28
  61. package/dist/src/verification.js.map +1 -0
  62. package/dist/src/version.js +11 -6
  63. package/dist/src/version.js.map +1 -0
  64. package/dist/typechain-types/AdminUpgradeabilityProxy.d.ts +59 -54
  65. package/dist/typechain-types/AdminUpgradeabilityProxy.js +1 -0
  66. package/dist/typechain-types/AdminUpgradeabilityProxy.js.map +1 -0
  67. package/dist/typechain-types/ProxyAdmin.d.ts +94 -137
  68. package/dist/typechain-types/ProxyAdmin.js +1 -0
  69. package/dist/typechain-types/ProxyAdmin.js.map +1 -0
  70. package/dist/typechain-types/common.d.ts +40 -11
  71. package/dist/typechain-types/common.js +1 -0
  72. package/dist/typechain-types/common.js.map +1 -0
  73. package/dist/typechain-types/factories/AdminUpgradeabilityProxy__factory.d.ts +71 -41
  74. package/dist/typechain-types/factories/AdminUpgradeabilityProxy__factory.js +8 -11
  75. package/dist/typechain-types/factories/AdminUpgradeabilityProxy__factory.js.map +1 -0
  76. package/dist/typechain-types/factories/ProxyAdmin__factory.d.ts +129 -41
  77. package/dist/typechain-types/factories/ProxyAdmin__factory.js +8 -11
  78. package/dist/typechain-types/factories/ProxyAdmin__factory.js.map +1 -0
  79. package/dist/typechain-types/factories/index.d.ts +2 -0
  80. package/dist/typechain-types/factories/index.js +11 -0
  81. package/dist/typechain-types/factories/index.js.map +1 -0
  82. package/dist/typechain-types/index.d.ts +1 -0
  83. package/dist/typechain-types/index.js +26 -1
  84. package/dist/typechain-types/index.js.map +1 -0
  85. package/package.json +15 -14
  86. package/dist/src/multiSend.d.ts +0 -2
  87. package/dist/src/multiSend.js +0 -46
@@ -0,0 +1,10 @@
1
+ import { Signer } from "ethers";
2
+ export declare class NonceProvider {
3
+ currentNonce: number;
4
+ releasedNonces: number[];
5
+ constructor(nonce: number);
6
+ static createForWallet(signer: Signer): Promise<NonceProvider>;
7
+ reserveNonce(): number | undefined;
8
+ releaseNonce(nonce: number): void;
9
+ private static next;
10
+ }
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NonceProvider = void 0;
4
+ class NonceProvider {
5
+ constructor(nonce) {
6
+ this.currentNonce = nonce;
7
+ this.releasedNonces = [];
8
+ }
9
+ static async createForWallet(signer) {
10
+ return new NonceProvider(await signer.getNonce());
11
+ }
12
+ reserveNonce() {
13
+ if (!this.releasedNonces) {
14
+ const nonce = this.currentNonce;
15
+ this.currentNonce += 1;
16
+ return nonce;
17
+ }
18
+ return this.releasedNonces.shift();
19
+ }
20
+ releaseNonce(nonce) {
21
+ if (NonceProvider.next(nonce) === this.currentNonce) {
22
+ this.currentNonce -= 1;
23
+ }
24
+ else {
25
+ this.releasedNonces.push(nonce);
26
+ }
27
+ }
28
+ static next(nonce) {
29
+ const nextDiff = 1;
30
+ return nonce + nextDiff;
31
+ }
32
+ }
33
+ exports.NonceProvider = NonceProvider;
34
+ //# sourceMappingURL=nonceProvider.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nonceProvider.js","sourceRoot":"","sources":["../../src/nonceProvider.ts"],"names":[],"mappings":";;;AAEA,MAAa,aAAa;IAItB,YAAa,KAAa;QACtB,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC1B,IAAI,CAAC,cAAc,GAAG,EAAE,CAAC;IAC7B,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,eAAe,CAAE,MAAc;QACxC,OAAO,IAAI,aAAa,CAAC,MAAM,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;IACtD,CAAC;IAED,YAAY;QACR,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE;YACtB,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC;YAChC,IAAI,CAAC,YAAY,IAAI,CAAC,CAAC;YACvB,OAAO,KAAK,CAAC;SAChB;QACD,OAAO,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;IACvC,CAAC;IAED,YAAY,CAAE,KAAa;QACvB,IAAI,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,YAAY,EAAE;YACjD,IAAI,CAAC,YAAY,IAAI,CAAC,CAAC;SAC1B;aAAM;YACH,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SACnC;IACL,CAAC;IAEO,MAAM,CAAC,IAAI,CAAE,KAAa;QAC9B,MAAM,QAAQ,GAAG,CAAC,CAAC;QACnB,OAAO,KAAK,GAAG,QAAQ,CAAC;IAC5B,CAAC;CACJ;AAlCD,sCAkCC"}
@@ -1,10 +1,24 @@
1
1
  import { Transaction } from "ethers";
2
2
  import { Submitter } from "./submitter";
3
3
  export declare class AutoSubmitter extends Submitter {
4
+ name: string;
5
+ static marionetteInterface: {
6
+ inputs: never[];
7
+ name: string;
8
+ outputs: {
9
+ internalType: string;
10
+ name: string;
11
+ type: string;
12
+ }[];
13
+ stateMutability: string;
14
+ type: string;
15
+ }[];
4
16
  submit(transactions: Transaction[]): Promise<void>;
5
- _getImaInstance(): Promise<import("@skalenetwork/skale-contracts/lib/instance").Instance<import("ethers").BaseContract>>;
6
- _getSafeAddress(): string;
7
- _getSchainHash(): string;
8
- _getMainnetChainId(): number;
9
- _versionFunctionExists(): Promise<boolean>;
17
+ private static getSubmitter;
18
+ private static getSubmitterForContractOwner;
19
+ private static getImaInstance;
20
+ private static getSafeAddress;
21
+ private static getSchainHash;
22
+ private static getMainnetChainId;
23
+ private static _versionFunctionExists;
10
24
  }
@@ -1,159 +1,169 @@
1
1
  "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || function (mod) {
19
- if (mod && mod.__esModule) return mod;
20
- var result = {};
21
- if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
- __setModuleDefault(result, mod);
23
- return result;
24
- };
25
2
  var __importDefault = (this && this.__importDefault) || function (mod) {
26
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
4
  };
28
5
  Object.defineProperty(exports, "__esModule", { value: true });
29
6
  exports.AutoSubmitter = void 0;
30
- const admin_1 = require("@openzeppelin/hardhat-upgrades/dist/admin");
31
- const submitter_1 = require("./submitter");
32
- const hardhat_1 = __importStar(require("hardhat"));
7
+ const ethers_1 = require("ethers");
8
+ const exitCodes_1 = require("../exitCodes");
33
9
  const eoa_submitter_1 = require("./eoa-submitter");
10
+ const marionette_1 = require("./types/marionette");
11
+ const safe_ima_legacy_marionette_submitter_1 = require("./safe-ima-legacy-marionette-submitter");
34
12
  const safe_submitter_1 = require("./safe-submitter");
13
+ const submitter_1 = require("./submitter");
14
+ const upgrader_1 = require("../upgrader");
35
15
  const chalk_1 = __importDefault(require("chalk"));
36
- const safe_ima_legacy_marionette_submitter_1 = require("./safe-ima-legacy-marionette-submitter");
37
- const marionette_1 = require("./types/marionette");
38
- const skale_contracts_ethers_v5_1 = require("@skalenetwork/skale-contracts-ethers-v5");
16
+ const hardhat_1 = __importDefault(require("hardhat"));
17
+ const skale_contracts_ethers_v6_1 = require("@skalenetwork/skale-contracts-ethers-v6");
39
18
  class AutoSubmitter extends submitter_1.Submitter {
19
+ constructor() {
20
+ super(...arguments);
21
+ this.name = "Auto Submitter";
22
+ }
40
23
  async submit(transactions) {
41
- let submitter;
42
- // TODO: remove unknown when move everything to ethers 6
43
- const proxyAdmin = await (0, admin_1.getManifestAdmin)(hardhat_1.default), owner = await proxyAdmin.owner();
24
+ console.log(`Submit via ${this.name}`);
25
+ const submitter = await AutoSubmitter.getSubmitter();
26
+ await submitter.submit(transactions);
27
+ }
28
+ // Private
29
+ static async getSubmitter() {
30
+ const proxyAdmin = await upgrader_1.Upgrader.getProxyAdmin();
31
+ const owner = await proxyAdmin.owner();
44
32
  if (await hardhat_1.default.ethers.provider.getCode(owner) === "0x") {
45
33
  console.log("Owner is not a contract");
46
- submitter = new eoa_submitter_1.EoaSubmitter();
34
+ return new eoa_submitter_1.EoaSubmitter();
47
35
  }
48
- else {
49
- console.log("Owner is a contract");
50
- if (hardhat_1.ethers.utils.getAddress(owner) == hardhat_1.ethers.utils.getAddress(marionette_1.MARIONETTE_ADDRESS)) {
51
- console.log("Marionette owner is detected");
52
- const imaInstance = await this._getImaInstance(), mainnetChainId = this._getMainnetChainId(), safeAddress = this._getSafeAddress(), schainHash = this._getSchainHash();
53
- // TODO: after marionette has multiSend functionality
54
- // query version and properly select a submitter
55
- // based on it
56
- //
57
- // if (await this._versionFunctionExists()) {
58
- // console.log("version() function was found. Use normal Marionette")
59
- // submitter = new SafeImaMarionetteSubmitter(
60
- // safeAddress,
61
- // imaAbi,
62
- // schainHash,
63
- // mainnetChainId
64
- // )
65
- // } else {
66
- // console.log("No version() function was found. Use legacy Marionette")
67
- // submitter = new SafeImaLegacyMarionetteSubmitter(
68
- // safeAddress,
69
- // imaAbi,
70
- // schainHash,
71
- // mainnetChainId
72
- // )
73
- // }
74
- submitter = new safe_ima_legacy_marionette_submitter_1.SafeImaLegacyMarionetteSubmitter(safeAddress, imaInstance, schainHash, mainnetChainId);
75
- }
76
- else {
77
- // assuming owner is a Gnosis Safe
78
- console.log("Using Gnosis Safe");
79
- submitter = new safe_submitter_1.SafeSubmitter(owner);
80
- }
36
+ console.log("Owner is a contract");
37
+ return AutoSubmitter.getSubmitterForContractOwner(owner);
38
+ }
39
+ static async getSubmitterForContractOwner(owner) {
40
+ if (ethers_1.ethers.getAddress(owner) ===
41
+ ethers_1.ethers.getAddress(marionette_1.MARIONETTE_ADDRESS)) {
42
+ console.log("Marionette owner is detected");
43
+ const imaInstance = await AutoSubmitter.getImaInstance();
44
+ const mainnetChainId = AutoSubmitter.getMainnetChainId();
45
+ const safeAddress = AutoSubmitter.getSafeAddress();
46
+ const schainHash = AutoSubmitter.getSchainHash();
47
+ /*
48
+ * TODO: after marionette has multiSend functionality
49
+ * query version and properly select a submitter
50
+ * based on it
51
+ *
52
+ * if (await this._versionFunctionExists()) {
53
+ * console.log("version() function was found." +
54
+ * " Use normal Marionette")
55
+ * submitter = new SafeImaMarionetteSubmitter(
56
+ * safeAddress,
57
+ * imaAbi,
58
+ * schainHash,
59
+ * mainnetChainId
60
+ * )
61
+ * } else {
62
+ * console.log("No version() function was found." +
63
+ * " Use legacy Marionette")
64
+ * submitter = new SafeImaLegacyMarionetteSubmitter(
65
+ * safeAddress,
66
+ * imaAbi,
67
+ * schainHash,
68
+ * mainnetChainId
69
+ * )
70
+ * }
71
+ */
72
+ return new safe_ima_legacy_marionette_submitter_1.SafeImaLegacyMarionetteSubmitter(safeAddress, imaInstance, {
73
+ mainnetChainId,
74
+ "targetSchainHash": schainHash
75
+ });
81
76
  }
82
- await submitter.submit(transactions);
77
+ // Assuming owner is a Gnosis Safe
78
+ console.log("Using Gnosis Safe");
79
+ return new safe_submitter_1.SafeSubmitter(owner);
83
80
  }
84
- // private
85
- async _getImaInstance() {
81
+ static async getImaInstance() {
86
82
  if (!process.env.IMA) {
87
- console.log(chalk_1.default.red("Set target IMA alias to IMA environment variable"));
88
- process.exit(1);
83
+ console.log(chalk_1.default.red("Set target IMA alias" +
84
+ " to IMA environment variable"));
85
+ process.exit(exitCodes_1.EXIT_CODES.UNKNOWN_IMA);
89
86
  }
90
- const network = await skale_contracts_ethers_v5_1.skaleContracts.getNetworkByProvider(hardhat_1.ethers.provider), ima = await network.getProject("ima");
87
+ const contractsNetwork = await skale_contracts_ethers_v6_1.skaleContracts.getNetworkByProvider(hardhat_1.default.ethers.provider);
88
+ const ima = await contractsNetwork.getProject("ima");
91
89
  return await ima.getInstance(process.env.IMA);
92
90
  }
93
- _getSafeAddress() {
91
+ static getSafeAddress() {
94
92
  if (!process.env.SAFE_ADDRESS) {
95
- console.log(chalk_1.default.red("Set Gnosis Safe owner address to SAFE_ADDRESS environment variable"));
96
- process.exit(1);
93
+ console.log(chalk_1.default.red("Set Gnosis Safe owner address" +
94
+ " to SAFE_ADDRESS environment variable"));
95
+ process.exit(exitCodes_1.EXIT_CODES.UNKNOWN_SAFE_ADDRESS);
97
96
  }
98
97
  return process.env.SAFE_ADDRESS;
99
98
  }
100
- _getSchainHash() {
101
- // query Context to get schain hash
102
- if (!process.env.SCHAIN_HASH) {
103
- if (!process.env.SCHAIN_NAME) {
104
- console.log(chalk_1.default.red("Set schain name to SCHAIN_NAME environment variable"));
105
- console.log(chalk_1.default.red("or schain hash to SCHAIN_HASH environment variable"));
106
- process.exit(1);
107
- }
108
- else {
109
- return hardhat_1.ethers.utils.solidityKeccak256(["string"], [process.env.SCHAIN_NAME]);
110
- }
111
- }
112
- else {
99
+ static getSchainHash() {
100
+ // Query Context to get schain hash
101
+ if (process.env.SCHAIN_HASH) {
113
102
  return process.env.SCHAIN_HASH;
114
103
  }
115
- }
116
- _getMainnetChainId() {
117
- if (!process.env.MAINNET_CHAIN_ID) {
118
- console.log(chalk_1.default.red("Set chainId of mainnet to MAINNET_CHAIN_ID environment variable"));
119
- console.log(chalk_1.default.red("Use 1 for Ethereum mainnet or 5 for Goerli"));
120
- process.exit(1);
104
+ if (process.env.SCHAIN_NAME) {
105
+ return ethers_1.ethers.solidityPackedKeccak256(["string"], [process.env.SCHAIN_NAME]);
121
106
  }
122
- else {
123
- return Number.parseInt(process.env.MAINNET_CHAIN_ID);
107
+ console.log(chalk_1.default.red("Set schain name" +
108
+ " to SCHAIN_NAME environment variable"));
109
+ console.log(chalk_1.default.red("or schain hash" +
110
+ " to SCHAIN_HASH environment variable"));
111
+ throw Error("Schain is not set");
112
+ }
113
+ static getMainnetChainId() {
114
+ if (process.env.MAINNET_CHAIN_ID) {
115
+ return BigInt(process.env.MAINNET_CHAIN_ID);
124
116
  }
117
+ console.log(chalk_1.default.red("Set chainId of mainnet" +
118
+ " to MAINNET_CHAIN_ID environment variable"));
119
+ console.log(chalk_1.default.red("Use 1 for Ethereum mainnet" +
120
+ " or 5 for Goerli"));
121
+ throw Error("Mainnet chainId is not set");
125
122
  }
126
- async _versionFunctionExists() {
123
+ static async _versionFunctionExists() {
127
124
  const bytecode = await hardhat_1.default.ethers.provider.getCode(marionette_1.MARIONETTE_ADDRESS);
128
- // If the bytecode doesn't include the function selector version()
129
- // is definitely not present
130
- if (!bytecode.includes(hardhat_1.ethers.utils.id("version()").slice(2, 10))) {
125
+ const hexPrefixLength = 2;
126
+ const selectorLength = 10;
127
+ /*
128
+ * If the bytecode doesn't include the function selector version()
129
+ * is definitely not present
130
+ */
131
+ if (!bytecode.includes(ethers_1.ethers.id("version()").slice(hexPrefixLength, selectorLength))) {
131
132
  return false;
132
133
  }
133
- const marionette = new hardhat_1.ethers.Contract(marionette_1.MARIONETTE_ADDRESS, [{
134
- "inputs": [],
135
- "name": "version",
136
- "outputs": [
137
- {
138
- "internalType": "string",
139
- "name": "",
140
- "type": "string"
141
- }
142
- ],
143
- "stateMutability": "view",
144
- "type": "function"
145
- }], hardhat_1.default.ethers.provider);
146
- // If gas estimation doesn't revert then an execution is possible
147
- // given the provided function selector
134
+ const marionette = new ethers_1.ethers.Contract(marionette_1.MARIONETTE_ADDRESS, AutoSubmitter.marionetteInterface, hardhat_1.default.ethers.provider);
135
+ /*
136
+ * If gas estimation doesn't revert then an execution is possible
137
+ * given the provided function selector
138
+ */
148
139
  try {
149
- await marionette.estimateGas.version();
140
+ await marionette.version.estimateGas();
150
141
  return true;
151
142
  }
152
143
  catch {
153
- // Otherwise (revert) we assume that there is no entry in the jump table
154
- // meaning that the contract doesn't include version()
144
+ /*
145
+ * Otherwise (revert) we assume
146
+ * that there is no entry in the jump table
147
+ * meaning that the contract doesn't include version()
148
+ */
155
149
  return false;
156
150
  }
157
151
  }
158
152
  }
159
153
  exports.AutoSubmitter = AutoSubmitter;
154
+ AutoSubmitter.marionetteInterface = [
155
+ {
156
+ "inputs": [],
157
+ "name": "version",
158
+ "outputs": [
159
+ {
160
+ "internalType": "string",
161
+ "name": "",
162
+ "type": "string"
163
+ }
164
+ ],
165
+ "stateMutability": "view",
166
+ "type": "function"
167
+ }
168
+ ];
169
+ //# sourceMappingURL=auto-submitter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auto-submitter.js","sourceRoot":"","sources":["../../../src/submitters/auto-submitter.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
- import { UnsignedTransaction } from "ethers";
2
1
  import { Submitter } from "./submitter";
2
+ import { Transaction } from "ethers";
3
3
  export declare class EoaSubmitter extends Submitter {
4
- submit(transactions: UnsignedTransaction[]): Promise<void>;
4
+ name: string;
5
+ submit(transactions: Transaction[]): Promise<void>;
5
6
  }
@@ -1,23 +1,29 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.EoaSubmitter = void 0;
4
- const hardhat_1 = require("hardhat");
5
4
  const submitter_1 = require("./submitter");
5
+ const hardhat_1 = require("hardhat");
6
6
  class EoaSubmitter extends submitter_1.Submitter {
7
+ constructor() {
8
+ super(...arguments);
9
+ this.name = "EOA Submitter";
10
+ }
7
11
  async submit(transactions) {
8
- this._atomicityWarning();
12
+ EoaSubmitter.atomicityWarning();
9
13
  const [deployer] = await hardhat_1.ethers.getSigners();
10
- for (const transaction of transactions) {
11
- console.log("Send transaction");
12
- const response = await deployer.sendTransaction({
13
- to: transaction.to,
14
- value: transaction.value,
15
- data: transaction.data
16
- });
17
- console.log(`Waiting for a transaction with nonce ${response.nonce}`);
18
- await response.wait();
19
- console.log("The transaction was sent");
20
- }
14
+ const nonce = await deployer.getNonce();
15
+ console.log(`Send transaction via ${this.name}`);
16
+ const responses = await Promise.all(transactions.
17
+ map((transaction, index) => deployer.sendTransaction({
18
+ "data": transaction.data,
19
+ "nonce": nonce + index,
20
+ "to": transaction.to,
21
+ "value": transaction.value
22
+ })));
23
+ console.log("Waiting for transactions");
24
+ await Promise.all(responses.map((response) => response.wait()));
25
+ console.log("The transactions were sent");
21
26
  }
22
27
  }
23
28
  exports.EoaSubmitter = EoaSubmitter;
29
+ //# sourceMappingURL=eoa-submitter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"eoa-submitter.js","sourceRoot":"","sources":["../../../src/submitters/eoa-submitter.ts"],"names":[],"mappings":";;;AAAA,2CAAsC;AAEtC,qCAA+B;AAG/B,MAAa,YAAa,SAAQ,qBAAS;IAA3C;;QACI,SAAI,GAAG,eAAe,CAAC;IAoB3B,CAAC;IAlBG,KAAK,CAAC,MAAM,CAAE,YAA2B;QACrC,YAAY,CAAC,gBAAgB,EAAE,CAAC;QAChC,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM,gBAAM,CAAC,UAAU,EAAE,CAAC;QAC7C,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,CAAC;QACxC,OAAO,CAAC,GAAG,CAAC,wBAAwB,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QACjD,MAAM,SAAS,GACX,MAAM,OAAO,CAAC,GAAG,CAAC,YAAY;YAC1B,GAAG,CAAC,CAAC,WAAW,EAAE,KAAK,EAAE,EAAE,CAAC,QAAQ,CAAC,eAAe,CAAC;YACjD,MAAM,EAAE,WAAW,CAAC,IAAI;YACxB,OAAO,EAAE,KAAK,GAAG,KAAK;YACtB,IAAI,EAAE,WAAW,CAAC,EAAE;YACpB,OAAO,EAAE,WAAW,CAAC,KAAK;SAC7B,CAAC,CAAC,CAAC,CAAC;QAEb,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;QACxC,MAAM,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;QAChE,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;IAC9C,CAAC;CACJ;AArBD,oCAqBC"}
@@ -20,3 +20,4 @@ __exportStar(require("./safe-ima-legacy-marionette-submitter"), exports);
20
20
  __exportStar(require("./safe-submitter"), exports);
21
21
  __exportStar(require("./safe-to-ima-submitter"), exports);
22
22
  __exportStar(require("./submitter"), exports);
23
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/submitters/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,mDAAiC;AACjC,kDAAgC;AAChC,yEAAuD;AACvD,mDAAiC;AACjC,0DAAwC;AACxC,8CAA4B"}
@@ -1,6 +1,7 @@
1
- import { UnsignedTransaction } from "ethers";
1
+ import { LegacyMarionette } from "./types/marionette";
2
2
  import { SafeToImaSubmitter } from "./safe-to-ima-submitter";
3
+ import { Transaction } from "ethers";
3
4
  export declare class SafeImaLegacyMarionetteSubmitter extends SafeToImaSubmitter {
4
- marionette: import("ethers").Contract;
5
- submit(transactions: UnsignedTransaction[]): Promise<void>;
5
+ marionette: LegacyMarionette;
6
+ submit(transactions: Transaction[]): Promise<void>;
6
7
  }
@@ -1,13 +1,14 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.SafeImaLegacyMarionetteSubmitter = void 0;
4
- const hardhat_1 = require("hardhat");
5
- const safe_to_ima_submitter_1 = require("./safe-to-ima-submitter");
6
4
  const marionette_1 = require("./types/marionette");
5
+ const safe_to_ima_submitter_1 = require("./safe-to-ima-submitter");
6
+ const ethers_1 = require("ethers");
7
+ const hardhat_1 = require("hardhat");
7
8
  class SafeImaLegacyMarionetteSubmitter extends safe_to_ima_submitter_1.SafeToImaSubmitter {
8
9
  constructor() {
9
10
  super(...arguments);
10
- this.marionette = new hardhat_1.ethers.Contract(marionette_1.MARIONETTE_ADDRESS, new hardhat_1.ethers.utils.Interface([
11
+ this.marionette = new hardhat_1.ethers.BaseContract(marionette_1.MARIONETTE_ADDRESS, new hardhat_1.ethers.Interface([
11
12
  {
12
13
  "inputs": [
13
14
  {
@@ -40,18 +41,18 @@ class SafeImaLegacyMarionetteSubmitter extends safe_to_ima_submitter_1.SafeToIma
40
41
  ]), hardhat_1.ethers.provider);
41
42
  }
42
43
  async submit(transactions) {
43
- if (transactions.length > 1) {
44
- this._atomicityWarning();
45
- }
46
- const transactionsToMarionette = [];
47
- for (const transaction of transactions) {
48
- transactionsToMarionette.push({
49
- to: this.marionette.address,
50
- // eslint-disable-next-line @typescript-eslint/no-unsafe-call
51
- data: await this.marionette.encodeFunctionCall(transaction.to ? transaction.to : hardhat_1.ethers.constants.AddressZero, transaction.value ? transaction.value : 0, transaction.data ? transaction.data : "0x")
52
- });
44
+ const singleTransaction = 1;
45
+ if (transactions.length > singleTransaction) {
46
+ SafeImaLegacyMarionetteSubmitter.atomicityWarning();
53
47
  }
48
+ const marionetteAddress = await this.marionette.getAddress();
49
+ const transactionsToMarionette = (await Promise.all(transactions.
50
+ map((transaction) => this.marionette.encodeFunctionCall(transaction.to ?? hardhat_1.ethers.ZeroAddress, transaction.value, transaction.data)))).map((data) => ethers_1.Transaction.from({
51
+ "data": hardhat_1.ethers.hexlify(data),
52
+ "to": marionetteAddress
53
+ }));
54
54
  await super.submit(transactionsToMarionette);
55
55
  }
56
56
  }
57
57
  exports.SafeImaLegacyMarionetteSubmitter = SafeImaLegacyMarionetteSubmitter;
58
+ //# sourceMappingURL=safe-ima-legacy-marionette-submitter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"safe-ima-legacy-marionette-submitter.js","sourceRoot":"","sources":["../../../src/submitters/safe-ima-legacy-marionette-submitter.ts"],"names":[],"mappings":";;;AAAA,mDAAwE;AACxE,mEAA2D;AAC3D,mCAAmC;AACnC,qCAA+B;AAG/B,MAAa,gCAAiC,SAAQ,0CAAkB;IAAxE;;QACI,eAAU,GAAG,IAAI,gBAAM,CAAC,YAAY,CAChC,+BAAkB,EAClB,IAAI,gBAAM,CAAC,SAAS,CAAC;YACjB;gBACI,QAAQ,EAAE;oBACN;wBACI,cAAc,EAAE,SAAS;wBACzB,MAAM,EAAE,UAAU;wBAClB,MAAM,EAAE,SAAS;qBACpB;oBACD;wBACI,cAAc,EAAE,SAAS;wBACzB,MAAM,EAAE,OAAO;wBACf,MAAM,EAAE,SAAS;qBACpB;oBACD;wBACI,cAAc,EAAE,OAAO;wBACvB,MAAM,EAAE,MAAM;wBACd,MAAM,EAAE,OAAO;qBAClB;iBACJ;gBACD,MAAM,EAAE,oBAAoB;gBAC5B,SAAS,EAAE;oBACP;wBACI,cAAc,EAAE,OAAO;wBACvB,MAAM,EAAE,EAAE;wBACV,MAAM,EAAE,OAAO;qBAClB;iBACJ;gBACD,iBAAiB,EAAE,MAAM;gBACzB,MAAM,EAAE,UAAU;aACrB;SACJ,CAAC,EACF,gBAAM,CAAC,QAAQ,CACE,CAAC;IAsB1B,CAAC;IApBG,KAAK,CAAC,MAAM,CAAE,YAA2B;QACrC,MAAM,iBAAiB,GAAG,CAAC,CAAC;QAC5B,IAAI,YAAY,CAAC,MAAM,GAAG,iBAAiB,EAAE;YACzC,gCAAgC,CAAC,gBAAgB,EAAE,CAAC;SACvD;QACD,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC;QAC7D,MAAM,wBAAwB,GAC1B,CAAC,MAAM,OAAO,CAAC,GAAG,CAAC,YAAY;YAC3B,GAAG,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,kBAAkB,CACnD,WAAW,CAAC,EAAE,IAAI,gBAAM,CAAC,WAAW,EACpC,WAAW,CAAC,KAAK,EACjB,WAAW,CAAC,IAAI,CACnB,CAAC,CAAC,CACN,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,oBAAW,CAAC,IAAI,CAAC;YAC7B,MAAM,EAAE,gBAAM,CAAC,OAAO,CAAC,IAAI,CAAC;YAC5B,IAAI,EAAE,iBAAiB;SAC1B,CAAC,CAAC,CAAC;QAER,MAAM,KAAK,CAAC,MAAM,CAAC,wBAAwB,CAAC,CAAC;IACjD,CAAC;CACJ;AAzDD,4EAyDC"}
@@ -1,7 +1,7 @@
1
- import { UnsignedTransaction } from "ethers";
2
- import { SafeToImaSubmitter } from "./safe-to-ima-submitter";
3
1
  import { Marionette } from "./types/marionette";
2
+ import { SafeToImaSubmitter } from "./safe-to-ima-submitter";
3
+ import { Transaction } from "ethers";
4
4
  export declare class SafeImaMarionetteSubmitter extends SafeToImaSubmitter {
5
5
  marionette: Marionette;
6
- submit(transactions: UnsignedTransaction[]): Promise<void>;
6
+ submit(transactions: Transaction[]): Promise<void>;
7
7
  }
@@ -1,13 +1,14 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.SafeImaMarionetteSubmitter = void 0;
4
- const hardhat_1 = require("hardhat");
5
- const safe_to_ima_submitter_1 = require("./safe-to-ima-submitter");
6
4
  const marionette_1 = require("./types/marionette");
5
+ const safe_to_ima_submitter_1 = require("./safe-to-ima-submitter");
6
+ const ethers_1 = require("ethers");
7
+ const hardhat_1 = require("hardhat");
7
8
  class SafeImaMarionetteSubmitter extends safe_to_ima_submitter_1.SafeToImaSubmitter {
8
9
  constructor() {
9
10
  super(...arguments);
10
- this.marionette = new hardhat_1.ethers.Contract(marionette_1.MARIONETTE_ADDRESS, new hardhat_1.ethers.utils.Interface([
11
+ this.marionette = new hardhat_1.ethers.BaseContract(marionette_1.MARIONETTE_ADDRESS, new hardhat_1.ethers.Interface([
11
12
  {
12
13
  "inputs": [
13
14
  {
@@ -50,17 +51,18 @@ class SafeImaMarionetteSubmitter extends safe_to_ima_submitter_1.SafeToImaSubmit
50
51
  const functionCalls = [];
51
52
  for (const transaction of transactions) {
52
53
  functionCalls.push({
53
- receiver: transaction.to ? transaction.to : hardhat_1.ethers.constants.AddressZero,
54
- value: transaction.value ? transaction.value : 0,
55
- data: (transaction.data ? transaction.data : "0x")
54
+ "data": transaction.data,
55
+ "receiver": transaction.to ?? hardhat_1.ethers.ZeroAddress,
56
+ "value": transaction.value
56
57
  });
57
58
  }
58
- await super.submit([
59
- {
60
- to: this.marionette.address,
61
- data: await this.marionette.encodeFunctionCalls(functionCalls)
62
- }
59
+ await super.submit([ethers_1.Transaction.from({
60
+ "data": hardhat_1.ethers.hexlify(await this.marionette.
61
+ encodeFunctionCalls(functionCalls)),
62
+ "to": await this.marionette.getAddress()
63
+ })
63
64
  ]);
64
65
  }
65
66
  }
66
67
  exports.SafeImaMarionetteSubmitter = SafeImaMarionetteSubmitter;
68
+ //# sourceMappingURL=safe-ima-marionette-submitter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"safe-ima-marionette-submitter.js","sourceRoot":"","sources":["../../../src/submitters/safe-ima-marionette-submitter.ts"],"names":[],"mappings":";;;AAAA,mDAAkE;AAClE,mEAA2D;AAC3D,mCAAmC;AACnC,qCAA+B;AAG/B,MAAa,0BAA2B,SAAQ,0CAAkB;IAAlE;;QACI,eAAU,GAAG,IAAI,gBAAM,CAAC,YAAY,CAChC,+BAAkB,EAClB,IAAI,gBAAM,CAAC,SAAS,CAAC;YACjB;gBACI,QAAQ,EAAE;oBACN;wBACI,YAAY,EAAE;4BACV;gCACI,cAAc,EAAE,SAAS;gCACzB,MAAM,EAAE,UAAU;gCAClB,MAAM,EAAE,SAAS;6BACpB;4BACD;gCACI,cAAc,EAAE,SAAS;gCACzB,MAAM,EAAE,OAAO;gCACf,MAAM,EAAE,SAAS;6BACpB;4BACD;gCACI,cAAc,EAAE,OAAO;gCACvB,MAAM,EAAE,MAAM;gCACd,MAAM,EAAE,OAAO;6BAClB;yBACJ;wBACD,cAAc,EAAE,mCAAmC;wBACnD,MAAM,EAAE,eAAe;wBACvB,MAAM,EAAE,SAAS;qBACpB;iBACJ;gBACD,MAAM,EAAE,qBAAqB;gBAC7B,SAAS,EAAE;oBACP;wBACI,cAAc,EAAE,OAAO;wBACvB,MAAM,EAAE,EAAE;wBACV,MAAM,EAAE,OAAO;qBAClB;iBACJ;gBACD,iBAAiB,EAAE,MAAM;gBACzB,MAAM,EAAE,UAAU;aACrB;SACJ,CAAC,EACF,gBAAM,CAAC,QAAQ,CACJ,CAAC;IAkBpB,CAAC;IAhBG,KAAK,CAAC,MAAM,CAAE,YAA2B;QACrC,MAAM,aAAa,GAAG,EAAE,CAAC;QACzB,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE;YACpC,aAAa,CAAC,IAAI,CAAC;gBACf,MAAM,EAAE,WAAW,CAAC,IAAI;gBACxB,UAAU,EAAE,WAAW,CAAC,EAAE,IAAI,gBAAM,CAAC,WAAW;gBAChD,OAAO,EAAE,WAAW,CAAC,KAAK;aAC7B,CAAC,CAAC;SACN;QACD,MAAM,KAAK,CAAC,MAAM,CAAC,CAAC,oBAAW,CAAC,IAAI,CAAC;gBAC7B,MAAM,EAAE,gBAAM,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,UAAU;oBACxC,mBAAmB,CAAC,aAAa,CAAC,CAAC;gBACvC,IAAI,EAAE,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,EAAE;aAC3C,CAAC;SACL,CAAC,CAAC;IACP,CAAC;CACJ;AA5DD,gEA4DC"}
@@ -1,8 +1,8 @@
1
- import { UnsignedTransaction } from "ethers";
2
1
  import { Submitter } from "./submitter";
2
+ import { Transaction } from "ethers";
3
3
  export declare class SafeSubmitter extends Submitter {
4
4
  safeAddress: string;
5
- chainId: number | undefined;
6
- constructor(safeAddress: string, chainId?: number);
7
- submit(transactions: UnsignedTransaction[]): Promise<void>;
5
+ chainId: bigint | undefined;
6
+ constructor(safeAddress: string, chainId?: bigint);
7
+ submit(transactions: Transaction[]): Promise<void>;
8
8
  }
@@ -1,9 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.SafeSubmitter = void 0;
4
- const hardhat_1 = require("hardhat");
5
- const gnosis_safe_1 = require("../gnosis-safe");
6
4
  const submitter_1 = require("./submitter");
5
+ const gnosis_safe_1 = require("../gnosis-safe");
6
+ const hardhat_1 = require("hardhat");
7
7
  class SafeSubmitter extends submitter_1.Submitter {
8
8
  constructor(safeAddress, chainId) {
9
9
  super();
@@ -18,3 +18,4 @@ class SafeSubmitter extends submitter_1.Submitter {
18
18
  }
19
19
  }
20
20
  exports.SafeSubmitter = SafeSubmitter;
21
+ //# sourceMappingURL=safe-submitter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"safe-submitter.js","sourceRoot":"","sources":["../../../src/submitters/safe-submitter.ts"],"names":[],"mappings":";;;AAAA,2CAAsC;AAEtC,gDAA0D;AAC1D,qCAA+B;AAG/B,MAAa,aAAc,SAAQ,qBAAS;IAKxC,YAAa,WAAmB,EAAE,OAAgB;QAC9C,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IAC3B,CAAC;IAED,KAAK,CAAC,MAAM,CAAE,YAA2B;QACrC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACf,IAAI,CAAC,OAAO,GAAG,CAAC,MAAM,gBAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC,OAAO,CAAC;SAC/D;QACD,MAAM,IAAA,wCAA0B,EAC5B,IAAI,CAAC,WAAW,EAChB,YAAY,CACf,CAAC;IACN,CAAC;CACJ;AApBD,sCAoBC"}