@airgap/optimism 0.13.45-beta.1 → 0.13.45-beta.3

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.
@@ -1,62 +1,15 @@
1
1
  "use strict";
2
- var __assign = (this && this.__assign) || function () {
3
- __assign = Object.assign || function(t) {
4
- for (var s, i = 1, n = arguments.length; i < n; i++) {
5
- s = arguments[i];
6
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
- t[p] = s[p];
8
- }
9
- return t;
10
- };
11
- return __assign.apply(this, arguments);
12
- };
13
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
14
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
15
- return new (P || (P = Promise))(function (resolve, reject) {
16
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
17
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
18
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
19
- step((generator = generator.apply(thisArg, _arguments || [])).next());
20
- });
21
- };
22
- var __generator = (this && this.__generator) || function (thisArg, body) {
23
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
24
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
25
- function verb(n) { return function (v) { return step([n, v]); }; }
26
- function step(op) {
27
- if (f) throw new TypeError("Generator is already executing.");
28
- while (_) try {
29
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
30
- if (y = 0, t) op = [op[0] & 2, t.value];
31
- switch (op[0]) {
32
- case 0: case 1: t = op; break;
33
- case 4: _.label++; return { value: op[1], done: false };
34
- case 5: _.label++; y = op[1]; op = [0]; continue;
35
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
36
- default:
37
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
38
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
39
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
40
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
41
- if (t[2]) _.ops.pop();
42
- _.trys.pop(); continue;
43
- }
44
- op = body.call(thisArg, _);
45
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
46
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
47
- }
48
- };
49
2
  var __importDefault = (this && this.__importDefault) || function (mod) {
50
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
51
4
  };
52
5
  Object.defineProperty(exports, "__esModule", { value: true });
53
6
  exports.OptimismBaseProtocolImpl = void 0;
54
- var bignumber_1 = __importDefault(require("@airgap/coinlib-core/dependencies/src/bignumber.js-9.0.0/bignumber"));
55
- var v1_1 = require("@airgap/ethereum/v1");
56
- var module_kit_1 = require("@airgap/module-kit");
7
+ const bignumber_1 = __importDefault(require("@airgap/coinlib-core/dependencies/src/bignumber.js-9.0.0/bignumber"));
8
+ const v1_1 = require("@airgap/ethereum/v1");
9
+ const module_kit_1 = require("@airgap/module-kit");
57
10
  // Implementation
58
- var OptimismBaseProtocolImpl = /** @class */ (function () {
59
- function OptimismBaseProtocolImpl(ethereumProtocol, nodeClient, infoClient, options) {
11
+ class OptimismBaseProtocolImpl {
12
+ constructor(ethereumProtocol, nodeClient, infoClient, options) {
60
13
  this.ethereumProtocol = ethereumProtocol;
61
14
  this.nodeClient = nodeClient;
62
15
  this.infoClient = infoClient;
@@ -64,310 +17,159 @@ var OptimismBaseProtocolImpl = /** @class */ (function () {
64
17
  this.units = this.ethereumProtocol.units;
65
18
  this.feeUnits = this.ethereumProtocol.feeUnits;
66
19
  }
67
- OptimismBaseProtocolImpl.prototype.getMetadata = function () {
68
- return __awaiter(this, void 0, void 0, function () {
69
- return __generator(this, function (_a) {
70
- return [2 /*return*/, this.ethereumProtocol.getMetadata()];
71
- });
72
- });
73
- };
74
- OptimismBaseProtocolImpl.prototype.getAddressFromPublicKey = function (publicKey) {
75
- return __awaiter(this, void 0, void 0, function () {
76
- return __generator(this, function (_a) {
77
- return [2 /*return*/, this.ethereumProtocol.getAddressFromPublicKey(publicKey)];
78
- });
79
- });
80
- };
81
- OptimismBaseProtocolImpl.prototype.deriveFromExtendedPublicKey = function (extendedPublicKey, visibilityIndex, addressIndex) {
82
- return __awaiter(this, void 0, void 0, function () {
83
- return __generator(this, function (_a) {
84
- return [2 /*return*/, this.ethereumProtocol.deriveFromExtendedPublicKey(extendedPublicKey, visibilityIndex, addressIndex)];
85
- });
86
- });
87
- };
88
- OptimismBaseProtocolImpl.prototype.getDetailsFromTransaction = function (transaction, publicKey) {
89
- return __awaiter(this, void 0, void 0, function () {
90
- var ethereumDetails, l1DataFee, l1DataFeePerTransaction;
91
- var _this = this;
92
- return __generator(this, function (_a) {
93
- switch (_a.label) {
94
- case 0: return [4 /*yield*/, this.ethereumProtocol.getDetailsFromTransaction(transaction, publicKey)];
95
- case 1:
96
- ethereumDetails = _a.sent();
97
- l1DataFee = transaction.type === 'signed' ? transaction.l1DataFee : transaction.ethereumType === 'raw' ? transaction.l1DataFee : undefined;
98
- if (l1DataFee === undefined) {
99
- return [2 /*return*/, ethereumDetails];
100
- }
101
- l1DataFeePerTransaction = new bignumber_1.default(l1DataFee).div(ethereumDetails.length);
102
- return [2 /*return*/, ethereumDetails.map(function (details) {
103
- var feeBlockchain = (0, module_kit_1.newAmount)(details.fee).blockchain(_this.feeUnits);
104
- return __assign(__assign({}, details), { fee: (0, module_kit_1.newAmount)(l1DataFeePerTransaction.plus(feeBlockchain.value), 'blockchain') });
105
- })];
106
- }
107
- });
108
- });
109
- };
110
- OptimismBaseProtocolImpl.prototype.verifyMessageWithPublicKey = function (message, signature, publicKey) {
111
- return __awaiter(this, void 0, void 0, function () {
112
- return __generator(this, function (_a) {
113
- return [2 /*return*/, this.ethereumProtocol.verifyMessageWithPublicKey(message, signature, publicKey)];
114
- });
115
- });
116
- };
117
- OptimismBaseProtocolImpl.prototype.encryptAsymmetricWithPublicKey = function (payload, publicKey) {
118
- return __awaiter(this, void 0, void 0, function () {
119
- return __generator(this, function (_a) {
120
- return [2 /*return*/, this.ethereumProtocol.encryptAsymmetricWithPublicKey(payload, publicKey)];
121
- });
20
+ async getMetadata() {
21
+ return this.ethereumProtocol.getMetadata();
22
+ }
23
+ async getAddressFromPublicKey(publicKey) {
24
+ return this.ethereumProtocol.getAddressFromPublicKey(publicKey);
25
+ }
26
+ async deriveFromExtendedPublicKey(extendedPublicKey, visibilityIndex, addressIndex) {
27
+ return this.ethereumProtocol.deriveFromExtendedPublicKey(extendedPublicKey, visibilityIndex, addressIndex);
28
+ }
29
+ async getDetailsFromTransaction(transaction, publicKey) {
30
+ const ethereumDetails = await this.ethereumProtocol.getDetailsFromTransaction(transaction, publicKey);
31
+ const l1DataFee = transaction.type === 'signed' ? transaction.l1DataFee : transaction.ethereumType === 'raw' ? transaction.l1DataFee : undefined;
32
+ if (l1DataFee === undefined) {
33
+ return ethereumDetails;
34
+ }
35
+ const l1DataFeePerTransaction = new bignumber_1.default(l1DataFee).div(ethereumDetails.length);
36
+ return ethereumDetails.map((details) => {
37
+ const feeBlockchain = (0, module_kit_1.newAmount)(details.fee).blockchain(this.feeUnits);
38
+ return {
39
+ ...details,
40
+ fee: (0, module_kit_1.newAmount)(l1DataFeePerTransaction.plus(feeBlockchain.value), 'blockchain')
41
+ };
122
42
  });
123
- };
43
+ }
44
+ async verifyMessageWithPublicKey(message, signature, publicKey) {
45
+ return this.ethereumProtocol.verifyMessageWithPublicKey(message, signature, publicKey);
46
+ }
47
+ async encryptAsymmetricWithPublicKey(payload, publicKey) {
48
+ return this.ethereumProtocol.encryptAsymmetricWithPublicKey(payload, publicKey);
49
+ }
124
50
  // Offline
125
- OptimismBaseProtocolImpl.prototype.getCryptoConfiguration = function () {
126
- return __awaiter(this, void 0, void 0, function () {
127
- return __generator(this, function (_a) {
128
- return [2 /*return*/, this.ethereumProtocol.getCryptoConfiguration()];
129
- });
130
- });
131
- };
132
- OptimismBaseProtocolImpl.prototype.getKeyPairFromDerivative = function (derivative) {
133
- return __awaiter(this, void 0, void 0, function () {
134
- return __generator(this, function (_a) {
135
- return [2 /*return*/, this.ethereumProtocol.getKeyPairFromDerivative(derivative)];
136
- });
137
- });
138
- };
139
- OptimismBaseProtocolImpl.prototype.getExtendedKeyPairFromDerivative = function (derivative) {
140
- return __awaiter(this, void 0, void 0, function () {
141
- return __generator(this, function (_a) {
142
- return [2 /*return*/, this.ethereumProtocol.getExtendedKeyPairFromDerivative(derivative)];
143
- });
144
- });
145
- };
146
- OptimismBaseProtocolImpl.prototype.deriveFromExtendedSecretKey = function (extendedSecretKey, visibilityIndex, addressIndex) {
147
- return __awaiter(this, void 0, void 0, function () {
148
- return __generator(this, function (_a) {
149
- return [2 /*return*/, this.ethereumProtocol.deriveFromExtendedSecretKey(extendedSecretKey, visibilityIndex, addressIndex)];
150
- });
151
- });
152
- };
153
- OptimismBaseProtocolImpl.prototype.signTransactionWithSecretKey = function (transaction, secretKey) {
154
- return __awaiter(this, void 0, void 0, function () {
155
- var ethereumTransaction;
156
- return __generator(this, function (_a) {
157
- switch (_a.label) {
158
- case 0: return [4 /*yield*/, this.ethereumProtocol.signTransactionWithSecretKey(transaction, secretKey)];
159
- case 1:
160
- ethereumTransaction = _a.sent();
161
- return [2 /*return*/, transaction.ethereumType === 'raw'
162
- ? (0, module_kit_1.newSignedTransaction)(__assign(__assign({}, ethereumTransaction), { l1DataFee: transaction.l1DataFee }))
163
- : ethereumTransaction];
164
- }
165
- });
166
- });
167
- };
168
- OptimismBaseProtocolImpl.prototype.signMessageWithKeyPair = function (message, keyPair) {
169
- return __awaiter(this, void 0, void 0, function () {
170
- return __generator(this, function (_a) {
171
- return [2 /*return*/, this.ethereumProtocol.signMessageWithKeyPair(message, keyPair)];
172
- });
173
- });
174
- };
175
- OptimismBaseProtocolImpl.prototype.decryptAsymmetricWithKeyPair = function (payload, keyPair) {
176
- return __awaiter(this, void 0, void 0, function () {
177
- return __generator(this, function (_a) {
178
- return [2 /*return*/, this.ethereumProtocol.decryptAsymmetricWithKeyPair(payload, keyPair)];
179
- });
180
- });
181
- };
182
- OptimismBaseProtocolImpl.prototype.encryptAESWithSecretKey = function (payload, secretKey) {
183
- return __awaiter(this, void 0, void 0, function () {
184
- return __generator(this, function (_a) {
185
- return [2 /*return*/, this.ethereumProtocol.encryptAESWithSecretKey(payload, secretKey)];
186
- });
187
- });
188
- };
189
- OptimismBaseProtocolImpl.prototype.decryptAESWithSecretKey = function (payload, secretKey) {
190
- return __awaiter(this, void 0, void 0, function () {
191
- return __generator(this, function (_a) {
192
- return [2 /*return*/, this.ethereumProtocol.decryptAESWithSecretKey(payload, secretKey)];
193
- });
194
- });
195
- };
51
+ async getCryptoConfiguration() {
52
+ return this.ethereumProtocol.getCryptoConfiguration();
53
+ }
54
+ async getKeyPairFromDerivative(derivative) {
55
+ return this.ethereumProtocol.getKeyPairFromDerivative(derivative);
56
+ }
57
+ async getExtendedKeyPairFromDerivative(derivative) {
58
+ return this.ethereumProtocol.getExtendedKeyPairFromDerivative(derivative);
59
+ }
60
+ async deriveFromExtendedSecretKey(extendedSecretKey, visibilityIndex, addressIndex) {
61
+ return this.ethereumProtocol.deriveFromExtendedSecretKey(extendedSecretKey, visibilityIndex, addressIndex);
62
+ }
63
+ async signTransactionWithSecretKey(transaction, secretKey) {
64
+ const ethereumTransaction = await this.ethereumProtocol.signTransactionWithSecretKey(transaction, secretKey);
65
+ return transaction.ethereumType === 'raw'
66
+ ? (0, module_kit_1.newSignedTransaction)({
67
+ ...ethereumTransaction,
68
+ l1DataFee: transaction.l1DataFee
69
+ })
70
+ : ethereumTransaction;
71
+ }
72
+ async signMessageWithKeyPair(message, keyPair) {
73
+ return this.ethereumProtocol.signMessageWithKeyPair(message, keyPair);
74
+ }
75
+ async decryptAsymmetricWithKeyPair(payload, keyPair) {
76
+ return this.ethereumProtocol.decryptAsymmetricWithKeyPair(payload, keyPair);
77
+ }
78
+ async encryptAESWithSecretKey(payload, secretKey) {
79
+ return this.ethereumProtocol.encryptAESWithSecretKey(payload, secretKey);
80
+ }
81
+ async decryptAESWithSecretKey(payload, secretKey) {
82
+ return this.ethereumProtocol.decryptAESWithSecretKey(payload, secretKey);
83
+ }
196
84
  // Online
197
- OptimismBaseProtocolImpl.prototype.getNetwork = function () {
198
- return __awaiter(this, void 0, void 0, function () {
199
- return __generator(this, function (_a) {
200
- return [2 /*return*/, this.ethereumProtocol.getNetwork()];
201
- });
202
- });
203
- };
204
- OptimismBaseProtocolImpl.prototype.getTransactionsForPublicKey = function (publicKey, limit, cursor) {
205
- return __awaiter(this, void 0, void 0, function () {
206
- return __generator(this, function (_a) {
207
- return [2 /*return*/, this.ethereumProtocol.getTransactionsForPublicKey(publicKey, limit, cursor)];
208
- });
209
- });
210
- };
211
- OptimismBaseProtocolImpl.prototype.getTransactionsForAddress = function (address, limit, cursor) {
212
- return __awaiter(this, void 0, void 0, function () {
213
- return __generator(this, function (_a) {
214
- return [2 /*return*/, this.ethereumProtocol.getTransactionsForAddress(address, limit, cursor)];
215
- });
216
- });
217
- };
218
- OptimismBaseProtocolImpl.prototype.getTransactionsForAddresses = function (addresses, limit, cursor) {
219
- return __awaiter(this, void 0, void 0, function () {
220
- return __generator(this, function (_a) {
221
- return [2 /*return*/, this.ethereumProtocol.getTransactionsForAddresses(addresses, limit, cursor)];
222
- });
223
- });
224
- };
225
- OptimismBaseProtocolImpl.prototype.getTransactionStatus = function (transactionIds) {
226
- return __awaiter(this, void 0, void 0, function () {
227
- return __generator(this, function (_a) {
228
- return [2 /*return*/, this.ethereumProtocol.getTransactionStatus(transactionIds)];
229
- });
230
- });
231
- };
232
- OptimismBaseProtocolImpl.prototype.getBalanceOfPublicKey = function (publicKey) {
233
- return __awaiter(this, void 0, void 0, function () {
234
- return __generator(this, function (_a) {
235
- return [2 /*return*/, this.ethereumProtocol.getBalanceOfPublicKey(publicKey)];
236
- });
237
- });
238
- };
239
- OptimismBaseProtocolImpl.prototype.getBalanceOfAddress = function (address) {
240
- return __awaiter(this, void 0, void 0, function () {
241
- return __generator(this, function (_a) {
242
- return [2 /*return*/, this.ethereumProtocol.getBalanceOfAddress(address)];
243
- });
244
- });
245
- };
246
- OptimismBaseProtocolImpl.prototype.getBalanceOfAddresses = function (addresses) {
247
- return __awaiter(this, void 0, void 0, function () {
248
- return __generator(this, function (_a) {
249
- return [2 /*return*/, this.ethereumProtocol.getBalanceOfAddresses(addresses)];
250
- });
251
- });
252
- };
253
- OptimismBaseProtocolImpl.prototype.getTokenBalancesOfPublicKey = function (publicKey, tokens) {
254
- return __awaiter(this, void 0, void 0, function () {
255
- return __generator(this, function (_a) {
256
- return [2 /*return*/, this.ethereumProtocol.getTokenBalancesOfPublicKey(publicKey, tokens)];
257
- });
258
- });
259
- };
260
- OptimismBaseProtocolImpl.prototype.getTransactionMaxAmountWithPublicKey = function (publicKey, to, configuration) {
261
- return __awaiter(this, void 0, void 0, function () {
262
- var _a, metadata, ethereumMaxAmount, maxAmountBlockchain, maxAmountPerRecipient, ethereumTransaction, l1Fee;
263
- return __generator(this, function (_b) {
264
- switch (_b.label) {
265
- case 0: return [4 /*yield*/, Promise.all([
266
- this.getMetadata(),
267
- this.ethereumProtocol.getTransactionMaxAmountWithPublicKey(publicKey, to, configuration)
268
- ])];
269
- case 1:
270
- _a = _b.sent(), metadata = _a[0], ethereumMaxAmount = _a[1];
271
- maxAmountBlockchain = new bignumber_1.default((0, module_kit_1.newAmount)(ethereumMaxAmount).blockchain(metadata.units).value);
272
- maxAmountPerRecipient = maxAmountBlockchain.div(to.length);
273
- return [4 /*yield*/, this.ethereumProtocol.prepareTransactionWithPublicKey(publicKey, to.map(function (recipient) { return ({
274
- to: recipient,
275
- amount: (0, module_kit_1.newAmount)(maxAmountPerRecipient, 'blockchain')
276
- }); }), configuration)];
277
- case 2:
278
- ethereumTransaction = _b.sent();
279
- return [4 /*yield*/, this.nodeClient.getL1Fee(this.options.network.gasPriceOracleAddress, ethereumTransaction)];
280
- case 3:
281
- l1Fee = _b.sent();
282
- if (maxAmountBlockchain.lte(l1Fee)) {
283
- return [2 /*return*/, (0, module_kit_1.newAmount)(0, 'blockchain')];
284
- }
285
- return [2 /*return*/, (0, module_kit_1.newAmount)(maxAmountBlockchain.minus(l1Fee), 'blockchain')];
286
- }
287
- });
288
- });
289
- };
290
- OptimismBaseProtocolImpl.prototype.getTransactionFeeWithPublicKey = function (publicKey, details) {
291
- return __awaiter(this, void 0, void 0, function () {
292
- var l2Fee, ethereumTransaction, l1Fee;
293
- return __generator(this, function (_a) {
294
- switch (_a.label) {
295
- case 0: return [4 /*yield*/, this.ethereumProtocol.getTransactionFeeWithPublicKey(publicKey, details)];
296
- case 1:
297
- l2Fee = _a.sent();
298
- return [4 /*yield*/, this.ethereumProtocol.prepareTransactionWithPublicKey(publicKey, details, { fee: l2Fee.medium })];
299
- case 2:
300
- ethereumTransaction = _a.sent();
301
- return [4 /*yield*/, this.nodeClient.getL1Fee(this.options.network.gasPriceOracleAddress, ethereumTransaction)];
302
- case 3:
303
- l1Fee = _a.sent();
304
- return [2 /*return*/, {
305
- low: (0, module_kit_1.newAmount)(l1Fee.plus((0, module_kit_1.newAmount)(l2Fee.low).blockchain(this.feeUnits).value), 'blockchain'),
306
- medium: (0, module_kit_1.newAmount)(l1Fee.plus((0, module_kit_1.newAmount)(l2Fee.medium).blockchain(this.feeUnits).value), 'blockchain'),
307
- high: (0, module_kit_1.newAmount)(l1Fee.plus((0, module_kit_1.newAmount)(l2Fee.high).blockchain(this.feeUnits).value), 'blockchain')
308
- }];
309
- }
310
- });
311
- });
312
- };
313
- OptimismBaseProtocolImpl.prototype.prepareTransactionWithPublicKey = function (publicKey, details, configuration) {
314
- return __awaiter(this, void 0, void 0, function () {
315
- var ethereumTransaction, l1Gas, gasLimit, gasPrice, totalGas, l2Gas, newGasPrice;
316
- return __generator(this, function (_a) {
317
- switch (_a.label) {
318
- case 0: return [4 /*yield*/, this.ethereumProtocol.prepareTransactionWithPublicKey(publicKey, details, configuration)];
319
- case 1:
320
- ethereumTransaction = _a.sent();
321
- if (ethereumTransaction.ethereumType === 'typed') {
322
- return [2 /*return*/, ethereumTransaction];
323
- }
324
- return [4 /*yield*/, this.nodeClient.getL1Fee(this.options.network.gasPriceOracleAddress, ethereumTransaction)];
325
- case 2:
326
- l1Gas = _a.sent();
327
- gasLimit = v1_1.EthereumUtils.hexToNumber(ethereumTransaction.gasLimit);
328
- gasPrice = v1_1.EthereumUtils.hexToNumber(ethereumTransaction.gasPrice);
329
- totalGas = gasPrice.times(gasLimit);
330
- l2Gas = totalGas.minus(l1Gas).abs();
331
- newGasPrice = l2Gas.div(gasLimit).integerValue(bignumber_1.default.ROUND_CEIL);
332
- return [2 /*return*/, (0, module_kit_1.newUnsignedTransaction)(__assign(__assign({}, ethereumTransaction), { gasPrice: v1_1.EthereumUtils.toHex(newGasPrice.toFixed()), l1DataFee: l1Gas.toFixed() }))];
333
- }
334
- });
335
- });
336
- };
337
- OptimismBaseProtocolImpl.prototype.getWalletConnectChain = function () {
338
- return __awaiter(this, void 0, void 0, function () {
339
- return __generator(this, function (_a) {
340
- return [2 /*return*/, this.ethereumProtocol.getWalletConnectChain()];
341
- });
342
- });
343
- };
344
- OptimismBaseProtocolImpl.prototype.prepareWalletConnectTransactionWithPublicKey = function (publicKey, request) {
345
- return __awaiter(this, void 0, void 0, function () {
346
- var ethereumTransaction, l1Gas;
347
- return __generator(this, function (_a) {
348
- switch (_a.label) {
349
- case 0: return [4 /*yield*/, this.ethereumProtocol.prepareWalletConnectTransactionWithPublicKey(publicKey, request)];
350
- case 1:
351
- ethereumTransaction = _a.sent();
352
- if (ethereumTransaction.ethereumType === 'typed') {
353
- return [2 /*return*/, ethereumTransaction];
354
- }
355
- return [4 /*yield*/, this.nodeClient.getL1Fee(this.options.network.gasPriceOracleAddress, ethereumTransaction)];
356
- case 2:
357
- l1Gas = _a.sent();
358
- return [2 /*return*/, (0, module_kit_1.newUnsignedTransaction)(__assign(__assign({}, ethereumTransaction), { l1DataFee: l1Gas.toFixed() }))];
359
- }
360
- });
85
+ async getNetwork() {
86
+ return this.ethereumProtocol.getNetwork();
87
+ }
88
+ async getTransactionsForPublicKey(publicKey, limit, cursor) {
89
+ return this.ethereumProtocol.getTransactionsForPublicKey(publicKey, limit, cursor);
90
+ }
91
+ async getTransactionsForAddress(address, limit, cursor) {
92
+ return this.ethereumProtocol.getTransactionsForAddress(address, limit, cursor);
93
+ }
94
+ async getTransactionsForAddresses(addresses, limit, cursor) {
95
+ return this.ethereumProtocol.getTransactionsForAddresses(addresses, limit, cursor);
96
+ }
97
+ async getTransactionStatus(transactionIds) {
98
+ return this.ethereumProtocol.getTransactionStatus(transactionIds);
99
+ }
100
+ async getBalanceOfPublicKey(publicKey) {
101
+ return this.ethereumProtocol.getBalanceOfPublicKey(publicKey);
102
+ }
103
+ async getBalanceOfAddress(address) {
104
+ return this.ethereumProtocol.getBalanceOfAddress(address);
105
+ }
106
+ async getBalanceOfAddresses(addresses) {
107
+ return this.ethereumProtocol.getBalanceOfAddresses(addresses);
108
+ }
109
+ async getTokenBalancesOfPublicKey(publicKey, tokens) {
110
+ return this.ethereumProtocol.getTokenBalancesOfPublicKey(publicKey, tokens);
111
+ }
112
+ async getTransactionMaxAmountWithPublicKey(publicKey, to, configuration) {
113
+ const [metadata, ethereumMaxAmount] = await Promise.all([
114
+ this.getMetadata(),
115
+ this.ethereumProtocol.getTransactionMaxAmountWithPublicKey(publicKey, to, configuration)
116
+ ]);
117
+ const maxAmountBlockchain = new bignumber_1.default((0, module_kit_1.newAmount)(ethereumMaxAmount).blockchain(metadata.units).value);
118
+ const maxAmountPerRecipient = maxAmountBlockchain.div(to.length);
119
+ const ethereumTransaction = await this.ethereumProtocol.prepareTransactionWithPublicKey(publicKey, to.map((recipient) => ({
120
+ to: recipient,
121
+ amount: (0, module_kit_1.newAmount)(maxAmountPerRecipient, 'blockchain')
122
+ })), configuration);
123
+ const l1Fee = await this.nodeClient.getL1Fee(this.options.network.gasPriceOracleAddress, ethereumTransaction);
124
+ if (maxAmountBlockchain.lte(l1Fee)) {
125
+ return (0, module_kit_1.newAmount)(0, 'blockchain');
126
+ }
127
+ return (0, module_kit_1.newAmount)(maxAmountBlockchain.minus(l1Fee), 'blockchain');
128
+ }
129
+ async getTransactionFeeWithPublicKey(publicKey, details) {
130
+ const l2Fee = await this.ethereumProtocol.getTransactionFeeWithPublicKey(publicKey, details);
131
+ const ethereumTransaction = await this.ethereumProtocol.prepareTransactionWithPublicKey(publicKey, details, { fee: l2Fee.medium });
132
+ const l1Fee = await this.nodeClient.getL1Fee(this.options.network.gasPriceOracleAddress, ethereumTransaction);
133
+ return {
134
+ low: (0, module_kit_1.newAmount)(l1Fee.plus((0, module_kit_1.newAmount)(l2Fee.low).blockchain(this.feeUnits).value), 'blockchain'),
135
+ medium: (0, module_kit_1.newAmount)(l1Fee.plus((0, module_kit_1.newAmount)(l2Fee.medium).blockchain(this.feeUnits).value), 'blockchain'),
136
+ high: (0, module_kit_1.newAmount)(l1Fee.plus((0, module_kit_1.newAmount)(l2Fee.high).blockchain(this.feeUnits).value), 'blockchain')
137
+ };
138
+ }
139
+ async prepareTransactionWithPublicKey(publicKey, details, configuration) {
140
+ const ethereumTransaction = await this.ethereumProtocol.prepareTransactionWithPublicKey(publicKey, details, configuration);
141
+ if (ethereumTransaction.ethereumType === 'typed') {
142
+ return ethereumTransaction;
143
+ }
144
+ const l1Gas = await this.nodeClient.getL1Fee(this.options.network.gasPriceOracleAddress, ethereumTransaction);
145
+ const gasLimit = v1_1.EthereumUtils.hexToNumber(ethereumTransaction.gasLimit);
146
+ const gasPrice = v1_1.EthereumUtils.hexToNumber(ethereumTransaction.gasPrice);
147
+ const totalGas = gasPrice.times(gasLimit);
148
+ const l2Gas = totalGas.minus(l1Gas).abs();
149
+ const newGasPrice = l2Gas.div(gasLimit).integerValue(bignumber_1.default.ROUND_CEIL);
150
+ return (0, module_kit_1.newUnsignedTransaction)({
151
+ ...ethereumTransaction,
152
+ gasPrice: v1_1.EthereumUtils.toHex(newGasPrice.toFixed()),
153
+ l1DataFee: l1Gas.toFixed()
361
154
  });
362
- };
363
- OptimismBaseProtocolImpl.prototype.broadcastTransaction = function (transaction) {
364
- return __awaiter(this, void 0, void 0, function () {
365
- return __generator(this, function (_a) {
366
- return [2 /*return*/, this.ethereumProtocol.broadcastTransaction(transaction)];
367
- });
155
+ }
156
+ async getWalletConnectChain() {
157
+ return this.ethereumProtocol.getWalletConnectChain();
158
+ }
159
+ async prepareWalletConnectTransactionWithPublicKey(publicKey, request) {
160
+ const ethereumTransaction = await this.ethereumProtocol.prepareWalletConnectTransactionWithPublicKey(publicKey, request);
161
+ if (ethereumTransaction.ethereumType === 'typed') {
162
+ return ethereumTransaction;
163
+ }
164
+ const l1Gas = await this.nodeClient.getL1Fee(this.options.network.gasPriceOracleAddress, ethereumTransaction);
165
+ return (0, module_kit_1.newUnsignedTransaction)({
166
+ ...ethereumTransaction,
167
+ l1DataFee: l1Gas.toFixed()
368
168
  });
369
- };
370
- return OptimismBaseProtocolImpl;
371
- }());
169
+ }
170
+ async broadcastTransaction(transaction) {
171
+ return this.ethereumProtocol.broadcastTransaction(transaction);
172
+ }
173
+ }
372
174
  exports.OptimismBaseProtocolImpl = OptimismBaseProtocolImpl;
373
175
  //# sourceMappingURL=OptimismBaseProtocol.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"OptimismBaseProtocol.js","sourceRoot":"","sources":["../../../src/v1/protocol/OptimismBaseProtocol.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OptimismBaseProtocol.js","sourceRoot":"","sources":["../../../src/v1/protocol/OptimismBaseProtocol.ts"],"names":[],"mappings":"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"}