dequanto 0.1.81 → 0.1.84

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 (56) hide show
  1. package/lib/cjs/blocks/BlockDateResolver.js +59 -23
  2. package/lib/cjs/blocks/BlockDateResolver.js.map +1 -1
  3. package/lib/cjs/erc4337/Erc4337Factory.js +0 -1
  4. package/lib/cjs/erc4337/Erc4337Factory.js.map +1 -1
  5. package/lib/cjs/prebuilt-factories/TimelockControllerFactory.js +251 -0
  6. package/lib/cjs/prebuilt-factories/TimelockControllerFactory.js.map +1 -0
  7. package/lib/cjs/services/TimelockService/TimelockService.js +24 -4
  8. package/lib/cjs/services/TimelockService/TimelockService.js.map +1 -1
  9. package/lib/cjs/txs/TxWriter.js +1 -1
  10. package/lib/cjs/txs/TxWriter.js.map +1 -1
  11. package/lib/cjs/txs/agents/TimelockAgent.js +90 -0
  12. package/lib/cjs/txs/agents/TimelockAgent.js.map +1 -0
  13. package/lib/cjs/txs/agents/TxWriterAccountAgents.js +2 -0
  14. package/lib/cjs/txs/agents/TxWriterAccountAgents.js.map +1 -1
  15. package/lib/cjs/utils/$account.js +17 -1
  16. package/lib/cjs/utils/$account.js.map +1 -1
  17. package/lib/cjs/utils/$date.js +11 -0
  18. package/lib/cjs/utils/$date.js.map +1 -1
  19. package/lib/esm/blocks/BlockDateResolver.js.map +1 -1
  20. package/lib/esm/blocks/BlockDateResolver.mjs +59 -23
  21. package/lib/esm/erc4337/Erc4337Factory.js.map +1 -1
  22. package/lib/esm/erc4337/Erc4337Factory.mjs +0 -1
  23. package/lib/esm/prebuilt-factories/TimelockControllerFactory.js.map +1 -0
  24. package/lib/esm/prebuilt-factories/TimelockControllerFactory.mjs +244 -0
  25. package/lib/esm/services/TimelockService/TimelockService.js.map +1 -1
  26. package/lib/esm/services/TimelockService/TimelockService.mjs +24 -4
  27. package/lib/esm/txs/TxWriter.js.map +1 -1
  28. package/lib/esm/txs/TxWriter.mjs +1 -1
  29. package/lib/esm/txs/agents/TimelockAgent.js.map +1 -0
  30. package/lib/esm/txs/agents/TimelockAgent.mjs +85 -0
  31. package/lib/esm/txs/agents/TxWriterAccountAgents.js.map +1 -1
  32. package/lib/esm/txs/agents/TxWriterAccountAgents.mjs +2 -0
  33. package/lib/esm/utils/$account.js.map +1 -1
  34. package/lib/esm/utils/$account.mjs +17 -1
  35. package/lib/esm/utils/$date.js.map +1 -1
  36. package/lib/esm/utils/$date.mjs +11 -0
  37. package/lib/types/blocks/BlockDateResolver.d.ts +7 -5
  38. package/lib/types/models/TAccount.d.ts +7 -1
  39. package/lib/types/prebuilt-factories/TimelockControllerFactory.d.ts +188 -0
  40. package/lib/types/services/TimelockService/TimelockService.d.ts +14 -3
  41. package/lib/types/txs/TxWriter.d.ts +20 -13
  42. package/lib/types/txs/agents/TimelockAgent.d.ts +26 -0
  43. package/lib/types/txs/agents/TxWriterAccountAgents.d.ts +2 -2
  44. package/lib/types/utils/$account.d.ts +2 -1
  45. package/lib/types/utils/$date.d.ts +1 -0
  46. package/package.json +1 -1
  47. package/src/blocks/BlockDateResolver.ts +61 -28
  48. package/src/erc4337/Erc4337Factory.ts +0 -2
  49. package/src/models/TAccount.ts +11 -1
  50. package/src/prebuilt-factories/TimelockControllerFactory.ts +582 -0
  51. package/src/services/TimelockService/TimelockService.ts +48 -8
  52. package/src/txs/TxWriter.ts +29 -17
  53. package/src/txs/agents/TimelockAgent.ts +116 -0
  54. package/src/txs/agents/TxWriterAccountAgents.ts +4 -2
  55. package/src/utils/$account.ts +18 -2
  56. package/src/utils/$date.ts +11 -1
@@ -1,11 +1,19 @@
1
1
  "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
2
8
  var __importDefault = (this && this.__importDefault) || function (mod) {
3
9
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
10
  };
5
11
  Object.defineProperty(exports, "__esModule", { value: true });
6
12
  exports.BlockDateResolver = void 0;
7
- const _block_1 = require("../utils/$block.js");
8
13
  const alot_1 = __importDefault(require("alot"));
14
+ const memd_1 = __importDefault(require("memd"));
15
+ const _block_1 = require("../utils/$block.js");
16
+ const _date_1 = require("../utils/$date.js");
9
17
  class BlockDateResolver {
10
18
  constructor(client) {
11
19
  this.client = client;
@@ -14,14 +22,31 @@ class BlockDateResolver {
14
22
  bsc: 3000,
15
23
  polygon: 3000,
16
24
  };
17
- this.known = [];
25
+ this._known = [];
18
26
  }
19
27
  async getDate(blockNumber) {
20
- let block = await this.client.getBlock(blockNumber);
28
+ let block = await this.getBlock(blockNumber);
21
29
  return new Date(block.timestamp * 1000);
22
30
  }
23
31
  async getBlockNumberFor(date) {
24
- this.q = date;
32
+ this._requestedDate = date;
33
+ let avg = this.AVG_INITIAL[this.client.platform] ?? this.client.blockTimeAvg ?? this.AVG_INITIAL['eth'];
34
+ let now = new Date();
35
+ let topBlock = {
36
+ blockNumber: await this.client.getBlockNumberCached(),
37
+ date: now,
38
+ avg,
39
+ };
40
+ this._known.push(topBlock);
41
+ const result = await this.moveNext(date, {
42
+ closestTime: null,
43
+ blockNumber: null,
44
+ date: null
45
+ });
46
+ return result.blockNumber;
47
+ }
48
+ async getBlockInfoFor(date) {
49
+ this._requestedDate = date;
25
50
  let avg = this.AVG_INITIAL[this.client.platform] ?? this.client.blockTimeAvg ?? this.AVG_INITIAL['eth'];
26
51
  let now = new Date();
27
52
  let topBlock = {
@@ -29,30 +54,35 @@ class BlockDateResolver {
29
54
  date: now,
30
55
  avg,
31
56
  };
32
- this.maxBlock = topBlock.blockNumber;
33
- this.known.push(topBlock);
34
- return await this.moveNext(date, {
57
+ this._known.push(topBlock);
58
+ const result = await this.moveNext(date, {
35
59
  closestTime: null,
36
60
  blockNumber: null,
61
+ date: null,
37
62
  });
63
+ return {
64
+ block: result.blockNumber,
65
+ timestamp: result.date ? _date_1.$date.toUnixTimestamp(result.date) : null,
66
+ };
38
67
  }
39
68
  async moveNext(date, ctx) {
40
69
  let closestIndex = this.getClosest(date);
41
- let block = this.known[closestIndex];
70
+ let block = this._known[closestIndex];
42
71
  let timeDiff = this.diffTime(block.date, date);
43
72
  let timeDistance = Math.abs(timeDiff);
44
73
  const BLOCKS_TOLERANCE = 2;
45
74
  if (timeDistance <= block.avg * BLOCKS_TOLERANCE) {
46
- return block.blockNumber;
75
+ return block;
47
76
  }
48
77
  if (ctx.closestTime != null && timeDistance >= ctx.closestTime) {
49
- return ctx.blockNumber;
78
+ return ctx;
50
79
  }
51
80
  ctx.closestTime = timeDistance;
52
81
  ctx.blockNumber = block.blockNumber;
82
+ ctx.date = block.date;
53
83
  let nextInfo = await this.checkPoint(block, timeDiff);
54
84
  if (nextInfo == null) {
55
- return block.blockNumber;
85
+ return block;
56
86
  }
57
87
  return this.moveNext(date, ctx);
58
88
  }
@@ -60,11 +90,11 @@ class BlockDateResolver {
60
90
  * Returns index of the first known block, which is most near to specified block (it can be before or after the specified date).
61
91
  */
62
92
  getClosest(date) {
63
- let entry = (0, alot_1.default)(this.known).map(x => [
93
+ let entry = (0, alot_1.default)(this._known).map(x => [
64
94
  this.diffTimeAbs(x.date, date),
65
95
  x
66
96
  ]).minItem(x => x[0])[1];
67
- let i = this.known.indexOf(entry);
97
+ let i = this._known.indexOf(entry);
68
98
  return i;
69
99
  }
70
100
  async checkPoint(anchor, diffTime) {
@@ -74,7 +104,7 @@ class BlockDateResolver {
74
104
  }
75
105
  let blockNumber = anchor.blockNumber + diffCount;
76
106
  if (blockNumber < 0) {
77
- throw new Error(`Date Out of range: ${this.q.toISOString()}. Based on the AVG block time, the blockchain was not active on that date`);
107
+ throw new Error(`Date Out of range: ${this._requestedDate.toISOString()}. Based on the AVG block time, the blockchain was not active on that date`);
78
108
  }
79
109
  let date = await this.getBlockDate(blockNumber);
80
110
  let info = {
@@ -87,18 +117,18 @@ class BlockDateResolver {
87
117
  }
88
118
  /** Add a know block to set */
89
119
  push(info) {
90
- for (let i = 0; i < this.known.length; i++) {
91
- let x = this.known[i];
120
+ for (let i = 0; i < this._known.length; i++) {
121
+ let x = this._known[i];
92
122
  if (info.date < x.date) {
93
- this.known.splice(i, 0, info);
123
+ this._known.splice(i, 0, info);
94
124
  return;
95
125
  }
96
126
  }
97
- this.known.push(info);
127
+ this._known.push(info);
98
128
  }
99
129
  /** Loads the block and gets the Date of the block */
100
130
  async getBlockDate(blockNumber) {
101
- let block = await this.client.getBlock(blockNumber);
131
+ let block = await this.getBlock(blockNumber);
102
132
  if (block == null) {
103
133
  throw new Error(`Block not loaded: ${blockNumber}`);
104
134
  }
@@ -120,16 +150,22 @@ class BlockDateResolver {
120
150
  }
121
151
  /** With N>1 blocks we can better find out the AVG block time */
122
152
  refineAvg() {
123
- for (let i = 1; i < this.known.length; i++) {
124
- let info = this.known[i];
125
- let prev = this.known[i - 1];
153
+ for (let i = 1; i < this._known.length; i++) {
154
+ let info = this._known[i];
155
+ let prev = this._known[i - 1];
126
156
  info.avg = this.getAvgBlockCountBetween(prev, info);
127
157
  if (i === 1) {
128
- this.known[0].avg = info.avg;
158
+ this._known[0].avg = info.avg;
129
159
  }
130
160
  }
131
161
  }
162
+ getBlock(blockNumber) {
163
+ return this.client.getBlock(blockNumber);
164
+ }
132
165
  }
166
+ __decorate([
167
+ memd_1.default.deco.memoize()
168
+ ], BlockDateResolver.prototype, "getBlock", null);
133
169
  exports.BlockDateResolver = BlockDateResolver;
134
170
  //# sourceMappingURL=BlockDateResolver.js.map
135
171
  //# sourceMappingURL=BlockDateResolver.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"BlockDateResolver.js","sourceRoot":"","sources":["../../../src/blocks/BlockDateResolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BlockDateResolver.js","sourceRoot":"","sources":["../../../src/blocks/BlockDateResolver.ts"],"names":[],"mappings":"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"}
@@ -16,7 +16,6 @@ class Erc4337Factory {
16
16
  let providers = _config_1.$config.get('erc4337');
17
17
  let provider = providers.find(x => (x.name === name || (name === 'default' && !x.name)) && x.platforms.includes(platform));
18
18
  _require_1.$require.notNull(provider, `No 4337 provider information found for ${name} and platform "${platform}"`);
19
- console.log(`CreateService`, provider.contracts.entryPoint);
20
19
  return new Erc4337Service_1.Erc4337Service(client, explorer, {
21
20
  addresses: {
22
21
  entryPoint: provider.contracts.entryPoint,
@@ -1 +1 @@
1
- {"version":3,"file":"Erc4337Factory.js","sourceRoot":"","sources":["../../../src/erc4337/Erc4337Factory.ts"],"names":[],"mappings":";;;AAAA,4FAAyF;AAGzF,2EAAwE;AAExE,qDAAkD;AAClD,uDAAoD;AACpD,qDAAkD;AAClD,uDAAoD;AAGpD,MAAa,cAAc;IACvB,MAAM,CAAC,aAAa,CAAE,IAMrB;QACG,IAAI,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC7B,IAAI,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,SAAS,CAAC;QAClC,IAAI,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,qCAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC5D,IAAI,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,qDAAyB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAExE,IAAI,SAAS,GAAG,iBAAO,CAAC,GAAG,CAAC,SAAS,CAA2B,CAAC;QACjE,IAAI,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;QAE3H,mBAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,0CAA0C,IAAI,kBAAkB,QAAQ,GAAG,CAAC,CAAC;QAExG,OAAO,CAAC,GAAG,CAAC,eAAe,EAAE,QAAQ,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAE5D,OAAO,IAAI,+BAAc,CAAC,MAAM,EAAE,QAAQ,EAAE;YACxC,SAAS,EAAE;gBACP,UAAU,EAAE,QAAQ,CAAC,SAAS,CAAC,UAAU;gBACzC,cAAc,EAAE,QAAQ,CAAC,SAAS,CAAC,cAAc;aACpD;SACJ,CAAC,CAAC;IACP,CAAC;IACD,MAAM,CAAC,YAAY,CAAE,IAMpB;QACG,IAAI,OAAO,GAAG,cAAc,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QACjD,IAAI,MAAM,GAAG,IAAI,iCAAe,CAC5B,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,QAAQ,EAChB,OAAO,CAAC,IAAI,CACf,CAAC;QACF,OAAO,MAAM,CAAC;IAClB,CAAC;CACJ;AA1CD,wCA0CC"}
1
+ {"version":3,"file":"Erc4337Factory.js","sourceRoot":"","sources":["../../../src/erc4337/Erc4337Factory.ts"],"names":[],"mappings":";;;AAAA,4FAAyF;AAGzF,2EAAwE;AAExE,qDAAkD;AAClD,uDAAoD;AACpD,qDAAkD;AAClD,uDAAoD;AAGpD,MAAa,cAAc;IACvB,MAAM,CAAC,aAAa,CAAE,IAMrB;QACG,IAAI,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC7B,IAAI,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,SAAS,CAAC;QAClC,IAAI,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,qCAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC5D,IAAI,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,qDAAyB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAExE,IAAI,SAAS,GAAG,iBAAO,CAAC,GAAG,CAAC,SAAS,CAA2B,CAAC;QACjE,IAAI,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;QAE3H,mBAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,0CAA0C,IAAI,kBAAkB,QAAQ,GAAG,CAAC,CAAC;QAExG,OAAO,IAAI,+BAAc,CAAC,MAAM,EAAE,QAAQ,EAAE;YACxC,SAAS,EAAE;gBACP,UAAU,EAAE,QAAQ,CAAC,SAAS,CAAC,UAAU;gBACzC,cAAc,EAAE,QAAQ,CAAC,SAAS,CAAC,cAAc;aACpD;SACJ,CAAC,CAAC;IACP,CAAC;IACD,MAAM,CAAC,YAAY,CAAE,IAMpB;QACG,IAAI,OAAO,GAAG,cAAc,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QACjD,IAAI,MAAM,GAAG,IAAI,iCAAe,CAC5B,OAAO,CAAC,MAAM,EACd,OAAO,CAAC,QAAQ,EAChB,OAAO,CAAC,IAAI,CACf,CAAC;QACF,OAAO,MAAM,CAAC;IAClB,CAAC;CACJ;AAxCD,wCAwCC"}
@@ -0,0 +1,251 @@
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.TimelockControllerFactory = void 0;
7
+ /**
8
+ * AUTO-Generated Class: 2024-05-17 00:25
9
+ * Implementation: https://etherscan.io/address/undefined#code
10
+ */
11
+ const a_di_1 = __importDefault(require("a-di"));
12
+ const ContractBase_1 = require("../contracts/ContractBase.js");
13
+ const Etherscan_1 = require("../explorer/Etherscan.js");
14
+ const EthWeb3Client_1 = require("../clients/EthWeb3Client.js");
15
+ function TimelockControllerFactory() {
16
+ class TimelockController extends ContractBase_1.ContractBase {
17
+ constructor(address = null, client = a_di_1.default.resolve(EthWeb3Client_1.EthWeb3Client), explorer = a_di_1.default.resolve(Etherscan_1.Etherscan)) {
18
+ super(address, client, explorer);
19
+ this.address = address;
20
+ this.client = client;
21
+ this.explorer = explorer;
22
+ this.$meta = {
23
+ "class": "./src/prebuilt/openzeppelin/TimelockController.ts"
24
+ };
25
+ this.abi = [{ "inputs": [{ "internalType": "uint256", "name": "minDelay", "type": "uint256" }, { "internalType": "address[]", "name": "proposers", "type": "address[]" }, { "internalType": "address[]", "name": "executors", "type": "address[]" }, { "internalType": "address", "name": "admin", "type": "address" }], "stateMutability": "nonpayable", "type": "constructor" }, { "anonymous": false, "inputs": [{ "indexed": true, "internalType": "bytes32", "name": "id", "type": "bytes32" }, { "indexed": true, "internalType": "uint256", "name": "index", "type": "uint256" }, { "indexed": false, "internalType": "address", "name": "target", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" }, { "indexed": false, "internalType": "bytes", "name": "data", "type": "bytes" }], "name": "CallExecuted", "type": "event" }, { "anonymous": false, "inputs": [{ "indexed": true, "internalType": "bytes32", "name": "id", "type": "bytes32" }, { "indexed": false, "internalType": "bytes32", "name": "salt", "type": "bytes32" }], "name": "CallSalt", "type": "event" }, { "anonymous": false, "inputs": [{ "indexed": true, "internalType": "bytes32", "name": "id", "type": "bytes32" }, { "indexed": true, "internalType": "uint256", "name": "index", "type": "uint256" }, { "indexed": false, "internalType": "address", "name": "target", "type": "address" }, { "indexed": false, "internalType": "uint256", "name": "value", "type": "uint256" }, { "indexed": false, "internalType": "bytes", "name": "data", "type": "bytes" }, { "indexed": false, "internalType": "bytes32", "name": "predecessor", "type": "bytes32" }, { "indexed": false, "internalType": "uint256", "name": "delay", "type": "uint256" }], "name": "CallScheduled", "type": "event" }, { "anonymous": false, "inputs": [{ "indexed": true, "internalType": "bytes32", "name": "id", "type": "bytes32" }], "name": "Cancelled", "type": "event" }, { "anonymous": false, "inputs": [{ "indexed": false, "internalType": "uint256", "name": "oldDuration", "type": "uint256" }, { "indexed": false, "internalType": "uint256", "name": "newDuration", "type": "uint256" }], "name": "MinDelayChange", "type": "event" }, { "anonymous": false, "inputs": [{ "indexed": true, "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "indexed": true, "internalType": "bytes32", "name": "previousAdminRole", "type": "bytes32" }, { "indexed": true, "internalType": "bytes32", "name": "newAdminRole", "type": "bytes32" }], "name": "RoleAdminChanged", "type": "event" }, { "anonymous": false, "inputs": [{ "indexed": true, "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "indexed": true, "internalType": "address", "name": "account", "type": "address" }, { "indexed": true, "internalType": "address", "name": "sender", "type": "address" }], "name": "RoleGranted", "type": "event" }, { "anonymous": false, "inputs": [{ "indexed": true, "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "indexed": true, "internalType": "address", "name": "account", "type": "address" }, { "indexed": true, "internalType": "address", "name": "sender", "type": "address" }], "name": "RoleRevoked", "type": "event" }, { "inputs": [], "name": "CANCELLER_ROLE", "outputs": [{ "internalType": "bytes32", "name": "", "type": "bytes32" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "DEFAULT_ADMIN_ROLE", "outputs": [{ "internalType": "bytes32", "name": "", "type": "bytes32" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "EXECUTOR_ROLE", "outputs": [{ "internalType": "bytes32", "name": "", "type": "bytes32" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "PROPOSER_ROLE", "outputs": [{ "internalType": "bytes32", "name": "", "type": "bytes32" }], "stateMutability": "view", "type": "function" }, { "inputs": [], "name": "TIMELOCK_ADMIN_ROLE", "outputs": [{ "internalType": "bytes32", "name": "", "type": "bytes32" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "bytes32", "name": "id", "type": "bytes32" }], "name": "cancel", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "target", "type": "address" }, { "internalType": "uint256", "name": "value", "type": "uint256" }, { "internalType": "bytes", "name": "payload", "type": "bytes" }, { "internalType": "bytes32", "name": "predecessor", "type": "bytes32" }, { "internalType": "bytes32", "name": "salt", "type": "bytes32" }], "name": "execute", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [{ "internalType": "address[]", "name": "targets", "type": "address[]" }, { "internalType": "uint256[]", "name": "values", "type": "uint256[]" }, { "internalType": "bytes[]", "name": "payloads", "type": "bytes[]" }, { "internalType": "bytes32", "name": "predecessor", "type": "bytes32" }, { "internalType": "bytes32", "name": "salt", "type": "bytes32" }], "name": "executeBatch", "outputs": [], "stateMutability": "payable", "type": "function" }, { "inputs": [], "name": "getMinDelay", "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "bytes32", "name": "role", "type": "bytes32" }], "name": "getRoleAdmin", "outputs": [{ "internalType": "bytes32", "name": "", "type": "bytes32" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "bytes32", "name": "id", "type": "bytes32" }], "name": "getTimestamp", "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "internalType": "address", "name": "account", "type": "address" }], "name": "grantRole", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "internalType": "address", "name": "account", "type": "address" }], "name": "hasRole", "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "target", "type": "address" }, { "internalType": "uint256", "name": "value", "type": "uint256" }, { "internalType": "bytes", "name": "data", "type": "bytes" }, { "internalType": "bytes32", "name": "predecessor", "type": "bytes32" }, { "internalType": "bytes32", "name": "salt", "type": "bytes32" }], "name": "hashOperation", "outputs": [{ "internalType": "bytes32", "name": "", "type": "bytes32" }], "stateMutability": "pure", "type": "function" }, { "inputs": [{ "internalType": "address[]", "name": "targets", "type": "address[]" }, { "internalType": "uint256[]", "name": "values", "type": "uint256[]" }, { "internalType": "bytes[]", "name": "payloads", "type": "bytes[]" }, { "internalType": "bytes32", "name": "predecessor", "type": "bytes32" }, { "internalType": "bytes32", "name": "salt", "type": "bytes32" }], "name": "hashOperationBatch", "outputs": [{ "internalType": "bytes32", "name": "", "type": "bytes32" }], "stateMutability": "pure", "type": "function" }, { "inputs": [{ "internalType": "bytes32", "name": "id", "type": "bytes32" }], "name": "isOperation", "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "bytes32", "name": "id", "type": "bytes32" }], "name": "isOperationDone", "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "bytes32", "name": "id", "type": "bytes32" }], "name": "isOperationPending", "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "bytes32", "name": "id", "type": "bytes32" }], "name": "isOperationReady", "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "", "type": "address" }, { "internalType": "uint256[]", "name": "", "type": "uint256[]" }, { "internalType": "uint256[]", "name": "", "type": "uint256[]" }, { "internalType": "bytes", "name": "", "type": "bytes" }], "name": "onERC1155BatchReceived", "outputs": [{ "internalType": "bytes4", "name": "", "type": "bytes4" }], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "", "type": "address" }, { "internalType": "uint256", "name": "", "type": "uint256" }, { "internalType": "uint256", "name": "", "type": "uint256" }, { "internalType": "bytes", "name": "", "type": "bytes" }], "name": "onERC1155Received", "outputs": [{ "internalType": "bytes4", "name": "", "type": "bytes4" }], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "", "type": "address" }, { "internalType": "address", "name": "", "type": "address" }, { "internalType": "uint256", "name": "", "type": "uint256" }, { "internalType": "bytes", "name": "", "type": "bytes" }], "name": "onERC721Received", "outputs": [{ "internalType": "bytes4", "name": "", "type": "bytes4" }], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "internalType": "address", "name": "account", "type": "address" }], "name": "renounceRole", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "bytes32", "name": "role", "type": "bytes32" }, { "internalType": "address", "name": "account", "type": "address" }], "name": "revokeRole", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "address", "name": "target", "type": "address" }, { "internalType": "uint256", "name": "value", "type": "uint256" }, { "internalType": "bytes", "name": "data", "type": "bytes" }, { "internalType": "bytes32", "name": "predecessor", "type": "bytes32" }, { "internalType": "bytes32", "name": "salt", "type": "bytes32" }, { "internalType": "uint256", "name": "delay", "type": "uint256" }], "name": "schedule", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "address[]", "name": "targets", "type": "address[]" }, { "internalType": "uint256[]", "name": "values", "type": "uint256[]" }, { "internalType": "bytes[]", "name": "payloads", "type": "bytes[]" }, { "internalType": "bytes32", "name": "predecessor", "type": "bytes32" }, { "internalType": "bytes32", "name": "salt", "type": "bytes32" }, { "internalType": "uint256", "name": "delay", "type": "uint256" }], "name": "scheduleBatch", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "inputs": [{ "internalType": "bytes4", "name": "interfaceId", "type": "bytes4" }], "name": "supportsInterface", "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }], "stateMutability": "view", "type": "function" }, { "inputs": [{ "internalType": "uint256", "name": "newDelay", "type": "uint256" }], "name": "updateDelay", "outputs": [], "stateMutability": "nonpayable", "type": "function" }, { "stateMutability": "payable", "type": "receive" }];
26
+ }
27
+ async $constructor(deployer, minDelay, proposers, executors, admin) {
28
+ throw new Error('Not implemented. Typing purpose. Use the ContractDeployer class to deploy the contract');
29
+ }
30
+ // 0xb08e51c0
31
+ async CANCELLER_ROLE() {
32
+ return this.$read(this.$getAbiItem('function', 'CANCELLER_ROLE'));
33
+ }
34
+ // 0xa217fddf
35
+ async DEFAULT_ADMIN_ROLE() {
36
+ return this.$read(this.$getAbiItem('function', 'DEFAULT_ADMIN_ROLE'));
37
+ }
38
+ // 0x07bd0265
39
+ async EXECUTOR_ROLE() {
40
+ return this.$read(this.$getAbiItem('function', 'EXECUTOR_ROLE'));
41
+ }
42
+ // 0x8f61f4f5
43
+ async PROPOSER_ROLE() {
44
+ return this.$read(this.$getAbiItem('function', 'PROPOSER_ROLE'));
45
+ }
46
+ // 0x0d3cf6fc
47
+ async TIMELOCK_ADMIN_ROLE() {
48
+ return this.$read(this.$getAbiItem('function', 'TIMELOCK_ADMIN_ROLE'));
49
+ }
50
+ // 0xc4d252f5
51
+ async cancel(sender, id) {
52
+ return this.$write(this.$getAbiItem('function', 'cancel'), sender, id);
53
+ }
54
+ // 0x134008d3
55
+ async execute(sender, target, value, payload, predecessor, salt) {
56
+ return this.$write(this.$getAbiItem('function', 'execute'), sender, target, value, payload, predecessor, salt);
57
+ }
58
+ // 0xe38335e5
59
+ async executeBatch(sender, targets, values, payloads, predecessor, salt) {
60
+ return this.$write(this.$getAbiItem('function', 'executeBatch'), sender, targets, values, payloads, predecessor, salt);
61
+ }
62
+ // 0xf27a0c92
63
+ async getMinDelay() {
64
+ return this.$read(this.$getAbiItem('function', 'getMinDelay'));
65
+ }
66
+ // 0x248a9ca3
67
+ async getRoleAdmin(role) {
68
+ return this.$read(this.$getAbiItem('function', 'getRoleAdmin'), role);
69
+ }
70
+ // 0xd45c4435
71
+ async getTimestamp(id) {
72
+ return this.$read(this.$getAbiItem('function', 'getTimestamp'), id);
73
+ }
74
+ // 0x2f2ff15d
75
+ async grantRole(sender, role, account) {
76
+ return this.$write(this.$getAbiItem('function', 'grantRole'), sender, role, account);
77
+ }
78
+ // 0x91d14854
79
+ async hasRole(role, account) {
80
+ return this.$read(this.$getAbiItem('function', 'hasRole'), role, account);
81
+ }
82
+ // 0x8065657f
83
+ async hashOperation(target, value, data, predecessor, salt) {
84
+ return this.$read(this.$getAbiItem('function', 'hashOperation'), target, value, data, predecessor, salt);
85
+ }
86
+ // 0xb1c5f427
87
+ async hashOperationBatch(targets, values, payloads, predecessor, salt) {
88
+ return this.$read(this.$getAbiItem('function', 'hashOperationBatch'), targets, values, payloads, predecessor, salt);
89
+ }
90
+ // 0x31d50750
91
+ async isOperation(id) {
92
+ return this.$read(this.$getAbiItem('function', 'isOperation'), id);
93
+ }
94
+ // 0x2ab0f529
95
+ async isOperationDone(id) {
96
+ return this.$read(this.$getAbiItem('function', 'isOperationDone'), id);
97
+ }
98
+ // 0x584b153e
99
+ async isOperationPending(id) {
100
+ return this.$read(this.$getAbiItem('function', 'isOperationPending'), id);
101
+ }
102
+ // 0x13bc9f20
103
+ async isOperationReady(id) {
104
+ return this.$read(this.$getAbiItem('function', 'isOperationReady'), id);
105
+ }
106
+ // 0xbc197c81
107
+ async onERC1155BatchReceived(sender, input0, input1, input2, input3, input4) {
108
+ return this.$write(this.$getAbiItem('function', 'onERC1155BatchReceived'), sender, input0, input1, input2, input3, input4);
109
+ }
110
+ // 0xf23a6e61
111
+ async onERC1155Received(sender, input0, input1, input2, input3, input4) {
112
+ return this.$write(this.$getAbiItem('function', 'onERC1155Received'), sender, input0, input1, input2, input3, input4);
113
+ }
114
+ // 0x150b7a02
115
+ async onERC721Received(sender, input0, input1, input2, input3) {
116
+ return this.$write(this.$getAbiItem('function', 'onERC721Received'), sender, input0, input1, input2, input3);
117
+ }
118
+ // 0x36568abe
119
+ async renounceRole(sender, role, account) {
120
+ return this.$write(this.$getAbiItem('function', 'renounceRole'), sender, role, account);
121
+ }
122
+ // 0xd547741f
123
+ async revokeRole(sender, role, account) {
124
+ return this.$write(this.$getAbiItem('function', 'revokeRole'), sender, role, account);
125
+ }
126
+ // 0x01d5062a
127
+ async schedule(sender, target, value, data, predecessor, salt, delay) {
128
+ return this.$write(this.$getAbiItem('function', 'schedule'), sender, target, value, data, predecessor, salt, delay);
129
+ }
130
+ // 0x8f2a0bb0
131
+ async scheduleBatch(sender, targets, values, payloads, predecessor, salt, delay) {
132
+ return this.$write(this.$getAbiItem('function', 'scheduleBatch'), sender, targets, values, payloads, predecessor, salt, delay);
133
+ }
134
+ // 0x01ffc9a7
135
+ async supportsInterface(interfaceId) {
136
+ return this.$read(this.$getAbiItem('function', 'supportsInterface'), interfaceId);
137
+ }
138
+ // 0x64d62353
139
+ async updateDelay(sender, newDelay) {
140
+ return this.$write(this.$getAbiItem('function', 'updateDelay'), sender, newDelay);
141
+ }
142
+ $call() {
143
+ return super.$call();
144
+ }
145
+ $signed() {
146
+ return super.$signed();
147
+ }
148
+ $data() {
149
+ return super.$data();
150
+ }
151
+ $gas() {
152
+ return super.$gas();
153
+ }
154
+ onTransaction(method, options) {
155
+ options ??= {};
156
+ options.filter ??= {};
157
+ options.filter.method = method;
158
+ return this.$onTransaction(options);
159
+ }
160
+ onLog(event, cb) {
161
+ return this.$onLog(event, cb);
162
+ }
163
+ async getPastLogs(mix, options) {
164
+ return await super.getPastLogs(mix, options);
165
+ }
166
+ onCallExecuted(fn) {
167
+ return this.$onLog('CallExecuted', fn);
168
+ }
169
+ onCallSalt(fn) {
170
+ return this.$onLog('CallSalt', fn);
171
+ }
172
+ onCallScheduled(fn) {
173
+ return this.$onLog('CallScheduled', fn);
174
+ }
175
+ onCancelled(fn) {
176
+ return this.$onLog('Cancelled', fn);
177
+ }
178
+ onMinDelayChange(fn) {
179
+ return this.$onLog('MinDelayChange', fn);
180
+ }
181
+ onRoleAdminChanged(fn) {
182
+ return this.$onLog('RoleAdminChanged', fn);
183
+ }
184
+ onRoleGranted(fn) {
185
+ return this.$onLog('RoleGranted', fn);
186
+ }
187
+ onRoleRevoked(fn) {
188
+ return this.$onLog('RoleRevoked', fn);
189
+ }
190
+ extractLogsCallExecuted(tx) {
191
+ let abi = this.$getAbiItem('event', 'CallExecuted');
192
+ return this.$extractLogs(tx, abi);
193
+ }
194
+ extractLogsCallSalt(tx) {
195
+ let abi = this.$getAbiItem('event', 'CallSalt');
196
+ return this.$extractLogs(tx, abi);
197
+ }
198
+ extractLogsCallScheduled(tx) {
199
+ let abi = this.$getAbiItem('event', 'CallScheduled');
200
+ return this.$extractLogs(tx, abi);
201
+ }
202
+ extractLogsCancelled(tx) {
203
+ let abi = this.$getAbiItem('event', 'Cancelled');
204
+ return this.$extractLogs(tx, abi);
205
+ }
206
+ extractLogsMinDelayChange(tx) {
207
+ let abi = this.$getAbiItem('event', 'MinDelayChange');
208
+ return this.$extractLogs(tx, abi);
209
+ }
210
+ extractLogsRoleAdminChanged(tx) {
211
+ let abi = this.$getAbiItem('event', 'RoleAdminChanged');
212
+ return this.$extractLogs(tx, abi);
213
+ }
214
+ extractLogsRoleGranted(tx) {
215
+ let abi = this.$getAbiItem('event', 'RoleGranted');
216
+ return this.$extractLogs(tx, abi);
217
+ }
218
+ extractLogsRoleRevoked(tx) {
219
+ let abi = this.$getAbiItem('event', 'RoleRevoked');
220
+ return this.$extractLogs(tx, abi);
221
+ }
222
+ async getPastLogsCallExecuted(options) {
223
+ return await this.$getPastLogsParsed('CallExecuted', options);
224
+ }
225
+ async getPastLogsCallSalt(options) {
226
+ return await this.$getPastLogsParsed('CallSalt', options);
227
+ }
228
+ async getPastLogsCallScheduled(options) {
229
+ return await this.$getPastLogsParsed('CallScheduled', options);
230
+ }
231
+ async getPastLogsCancelled(options) {
232
+ return await this.$getPastLogsParsed('Cancelled', options);
233
+ }
234
+ async getPastLogsMinDelayChange(options) {
235
+ return await this.$getPastLogsParsed('MinDelayChange', options);
236
+ }
237
+ async getPastLogsRoleAdminChanged(options) {
238
+ return await this.$getPastLogsParsed('RoleAdminChanged', options);
239
+ }
240
+ async getPastLogsRoleGranted(options) {
241
+ return await this.$getPastLogsParsed('RoleGranted', options);
242
+ }
243
+ async getPastLogsRoleRevoked(options) {
244
+ return await this.$getPastLogsParsed('RoleRevoked', options);
245
+ }
246
+ }
247
+ return TimelockController;
248
+ }
249
+ exports.TimelockControllerFactory = TimelockControllerFactory;
250
+ //# sourceMappingURL=TimelockControllerFactory.js.map
251
+ //# sourceMappingURL=TimelockControllerFactory.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TimelockControllerFactory.js","sourceRoot":"","sources":["../../../src/prebuilt-factories/TimelockControllerFactory.ts"],"names":[],"mappings":"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"}
@@ -11,7 +11,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.TimelockService = void 0;
13
13
  const memd_1 = __importDefault(require("memd"));
14
- const TimelockController_1 = require("../../prebuilt/openzeppelin/TimelockController.js");
15
14
  const JsonArrayStore_1 = require("../../json/JsonArrayStore.js");
16
15
  const _abiUtils_1 = require("../../utils/$abiUtils.js");
17
16
  const _contract_1 = require("../../utils/$contract.js");
@@ -23,6 +22,9 @@ const _platform_1 = require("../../utils/$platform.js");
23
22
  const _require_1 = require("../../utils/$require.js");
24
23
  const atma_io_1 = require("atma-io");
25
24
  const ITimelockService_1 = require("./ITimelockService.js");
25
+ const CONFIG = {
26
+ dir: `0x/data`
27
+ };
26
28
  class TimelockService {
27
29
  constructor(timelock, options) {
28
30
  this.timelock = timelock;
@@ -41,7 +43,7 @@ class TimelockService {
41
43
  let receipt = await this.timelock.client.getTransactionReceipt(txHash);
42
44
  _require_1.$require.notNull(receipt, `Tx ${txHash} not found`);
43
45
  let block = await this.timelock.client.getBlock(receipt.blockNumber);
44
- let contract = new TimelockController_1.TimelockController(void 0, this.timelock.client);
46
+ let contract = this.timelock;
45
47
  let callScheduled = contract.extractLogsCallScheduled(receipt);
46
48
  _require_1.$require.gte(callScheduled.length, 1, `Expected at least 1 CallScheduled log`);
47
49
  let callSaltArr = contract.extractLogsCallSalt(receipt);
@@ -93,6 +95,19 @@ class TimelockService {
93
95
  let txParams = await this.getTxParamsNormalizedFromContract(uniqueTaskName, sender, contract, method, ...params);
94
96
  return await this.processTxParams(txParams);
95
97
  }
98
+ async processData(sender, builder) {
99
+ let { to, data, value } = builder.data;
100
+ let titleKey = `${to}${data}`;
101
+ let params = {
102
+ title: _contract_1.$contract.keccak256(titleKey, 'hex'),
103
+ sender: sender,
104
+ to: to,
105
+ data: data,
106
+ value: value
107
+ };
108
+ let txParams = await this.getTxParamsNormalized(params);
109
+ return await this.processTxParams(txParams);
110
+ }
96
111
  /** Schedules-Wait-Execute a task distinguished by the unique task name
97
112
  *
98
113
  * 1. if schedule doesn't exist, create it
@@ -330,7 +345,7 @@ class TimelockService {
330
345
  async getUniqueByKey(key) {
331
346
  let store = await this.getStore();
332
347
  let all = await store.getAll();
333
- let arr = all.filter(x => x.key === key);
348
+ let arr = all.filter(x => x.key === key && x.status === 'pending');
334
349
  _require_1.$require.lt(arr.length, 2, `Timelock service expects ${key} to be unique. Found ${arr.length}`);
335
350
  return arr.length === 1 ? arr[0] : null;
336
351
  }
@@ -399,7 +414,7 @@ class TimelockService {
399
414
  }
400
415
  async getStore() {
401
416
  let { platform, network } = this.timelock.client;
402
- let dir = this.options?.dir ?? `0x/data`;
417
+ let dir = this.options?.dir ?? CONFIG.dir;
403
418
  let path = getPath(platform, dir);
404
419
  if (platform === 'hardhat' && network !== platform) {
405
420
  // forked chain
@@ -416,6 +431,11 @@ class TimelockService {
416
431
  key: x => x.id
417
432
  });
418
433
  }
434
+ static config(config) {
435
+ if (config.dir) {
436
+ CONFIG.dir = CONFIG.dir;
437
+ }
438
+ }
419
439
  }
420
440
  __decorate([
421
441
  memd_1.default.deco.queued()