@across-protocol/sdk 3.4.3 → 3.4.5-beta.1

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 (70) hide show
  1. package/dist/cjs/gasPriceOracle/adapters/arbitrum.js.map +1 -1
  2. package/dist/cjs/gasPriceOracle/adapters/ethereum.d.ts +2 -2
  3. package/dist/cjs/gasPriceOracle/adapters/ethereum.js +12 -10
  4. package/dist/cjs/gasPriceOracle/adapters/ethereum.js.map +1 -1
  5. package/dist/cjs/gasPriceOracle/adapters/linea-viem.js.map +1 -1
  6. package/dist/cjs/gasPriceOracle/adapters/linea.js.map +1 -1
  7. package/dist/cjs/gasPriceOracle/adapters/polygon.js +6 -4
  8. package/dist/cjs/gasPriceOracle/adapters/polygon.js.map +1 -1
  9. package/dist/cjs/gasPriceOracle/oracle.d.ts +1 -0
  10. package/dist/cjs/gasPriceOracle/oracle.js +12 -10
  11. package/dist/cjs/gasPriceOracle/oracle.js.map +1 -1
  12. package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.d.ts +4 -0
  13. package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.js +16 -13
  14. package/dist/cjs/relayFeeCalculator/chain-queries/baseQuery.js.map +1 -1
  15. package/dist/cjs/relayFeeCalculator/relayFeeCalculator.d.ts +4 -2
  16. package/dist/cjs/relayFeeCalculator/relayFeeCalculator.js +9 -5
  17. package/dist/cjs/relayFeeCalculator/relayFeeCalculator.js.map +1 -1
  18. package/dist/esm/gasPriceOracle/adapters/arbitrum.d.ts +4 -0
  19. package/dist/esm/gasPriceOracle/adapters/arbitrum.js +4 -0
  20. package/dist/esm/gasPriceOracle/adapters/arbitrum.js.map +1 -1
  21. package/dist/esm/gasPriceOracle/adapters/ethereum.d.ts +5 -2
  22. package/dist/esm/gasPriceOracle/adapters/ethereum.js +15 -10
  23. package/dist/esm/gasPriceOracle/adapters/ethereum.js.map +1 -1
  24. package/dist/esm/gasPriceOracle/adapters/linea-viem.d.ts +5 -3
  25. package/dist/esm/gasPriceOracle/adapters/linea-viem.js +5 -3
  26. package/dist/esm/gasPriceOracle/adapters/linea-viem.js.map +1 -1
  27. package/dist/esm/gasPriceOracle/adapters/linea.d.ts +8 -0
  28. package/dist/esm/gasPriceOracle/adapters/linea.js +8 -0
  29. package/dist/esm/gasPriceOracle/adapters/linea.js.map +1 -1
  30. package/dist/esm/gasPriceOracle/adapters/polygon.js +6 -4
  31. package/dist/esm/gasPriceOracle/adapters/polygon.js.map +1 -1
  32. package/dist/esm/gasPriceOracle/oracle.d.ts +1 -0
  33. package/dist/esm/gasPriceOracle/oracle.js +12 -10
  34. package/dist/esm/gasPriceOracle/oracle.js.map +1 -1
  35. package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.d.ts +4 -0
  36. package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.js +17 -14
  37. package/dist/esm/relayFeeCalculator/chain-queries/baseQuery.js.map +1 -1
  38. package/dist/esm/relayFeeCalculator/relayFeeCalculator.d.ts +4 -2
  39. package/dist/esm/relayFeeCalculator/relayFeeCalculator.js +9 -5
  40. package/dist/esm/relayFeeCalculator/relayFeeCalculator.js.map +1 -1
  41. package/dist/esm/utils/abi/typechain/Multicall3.d.ts +1 -4
  42. package/dist/esm/utils/abi/typechain/factories/Multicall3__factory.js.map +1 -1
  43. package/dist/types/gasPriceOracle/adapters/arbitrum.d.ts +4 -0
  44. package/dist/types/gasPriceOracle/adapters/arbitrum.d.ts.map +1 -1
  45. package/dist/types/gasPriceOracle/adapters/ethereum.d.ts +5 -2
  46. package/dist/types/gasPriceOracle/adapters/ethereum.d.ts.map +1 -1
  47. package/dist/types/gasPriceOracle/adapters/linea-viem.d.ts +5 -3
  48. package/dist/types/gasPriceOracle/adapters/linea-viem.d.ts.map +1 -1
  49. package/dist/types/gasPriceOracle/adapters/linea.d.ts +8 -0
  50. package/dist/types/gasPriceOracle/adapters/linea.d.ts.map +1 -1
  51. package/dist/types/gasPriceOracle/adapters/polygon.d.ts.map +1 -1
  52. package/dist/types/gasPriceOracle/oracle.d.ts +1 -0
  53. package/dist/types/gasPriceOracle/oracle.d.ts.map +1 -1
  54. package/dist/types/relayFeeCalculator/chain-queries/baseQuery.d.ts +4 -0
  55. package/dist/types/relayFeeCalculator/chain-queries/baseQuery.d.ts.map +1 -1
  56. package/dist/types/relayFeeCalculator/relayFeeCalculator.d.ts +4 -2
  57. package/dist/types/relayFeeCalculator/relayFeeCalculator.d.ts.map +1 -1
  58. package/dist/types/utils/abi/typechain/Multicall3.d.ts +1 -4
  59. package/dist/types/utils/abi/typechain/Multicall3.d.ts.map +1 -1
  60. package/dist/types/utils/abi/typechain/common.d.ts.map +1 -1
  61. package/dist/types/utils/abi/typechain/factories/Multicall3__factory.d.ts.map +1 -1
  62. package/package.json +1 -1
  63. package/src/gasPriceOracle/adapters/arbitrum.ts +4 -0
  64. package/src/gasPriceOracle/adapters/ethereum.ts +15 -8
  65. package/src/gasPriceOracle/adapters/linea-viem.ts +5 -3
  66. package/src/gasPriceOracle/adapters/linea.ts +8 -0
  67. package/src/gasPriceOracle/adapters/polygon.ts +5 -3
  68. package/src/gasPriceOracle/oracle.ts +9 -0
  69. package/src/relayFeeCalculator/chain-queries/baseQuery.ts +26 -4
  70. package/src/relayFeeCalculator/relayFeeCalculator.ts +10 -4
@@ -1 +1 @@
1
- {"version":3,"file":"arbitrum.js","sourceRoot":"","sources":["../../../../src/gasPriceOracle/adapters/arbitrum.ts"],"names":[],"mappings":";;;;AACA,qCAAoC;AAEpC,2DAAuC;AAWvC,SAAsB,OAAO,CAAC,QAA4B,EAAE,IAA6B;;;;;wBACzB,WAAM,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAA;;oBAA9F,KAAwD,SAAsC,EAA9E,aAAa,kBAAA,EAAE,oBAAoB,0BAAA;oBAInD,YAAY,GAAG,aAAa,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,GAAG,CAAC,aAAK,CAAC,CAAC;oBAExE,WAAO,EAAE,oBAAoB,EAAE,aAAK,EAAE,YAAY,cAAA,EAAE,EAAC;;;;CACtD;AARD,0BAQC"}
1
+ {"version":3,"file":"arbitrum.js","sourceRoot":"","sources":["../../../../src/gasPriceOracle/adapters/arbitrum.ts"],"names":[],"mappings":";;;;AACA,qCAAoC;AAEpC,2DAAuC;AAevC,SAAsB,OAAO,CAAC,QAA4B,EAAE,IAA6B;;;;;wBACzB,WAAM,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAA;;oBAA9F,KAAwD,SAAsC,EAA9E,aAAa,kBAAA,EAAE,oBAAoB,0BAAA;oBAInD,YAAY,GAAG,aAAa,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,GAAG,CAAC,aAAK,CAAC,CAAC;oBAExE,WAAO,EAAE,oBAAoB,EAAE,aAAK,EAAE,YAAY,cAAA,EAAE,EAAC;;;;CACtD;AARD,0BAQC"}
@@ -3,6 +3,6 @@ import { BigNumber } from "../../utils";
3
3
  import { GasPriceEstimate } from "../types";
4
4
  import { GasPriceEstimateOptions } from "../oracle";
5
5
  export declare function eip1559(provider: providers.Provider, opts: GasPriceEstimateOptions): Promise<GasPriceEstimate>;
6
- export declare function eip1559Raw(provider: providers.Provider, chainId: number, baseFeeMultiplier: BigNumber): Promise<GasPriceEstimate>;
7
- export declare function eip1559Bad(provider: providers.Provider, chainId: number, baseFeeMultiplier: BigNumber): Promise<GasPriceEstimate>;
6
+ export declare function eip1559Raw(provider: providers.Provider, chainId: number, baseFeeMultiplier: BigNumber, priorityFeeMultiplier: BigNumber): Promise<GasPriceEstimate>;
7
+ export declare function eip1559Bad(provider: providers.Provider, chainId: number, baseFeeMultiplier: BigNumber, priorityFeeMultiplier: BigNumber): Promise<GasPriceEstimate>;
8
8
  export declare function legacy(provider: providers.Provider, opts: GasPriceEstimateOptions): Promise<GasPriceEstimate>;
@@ -8,13 +8,13 @@ var util_1 = require("../util");
8
8
  function eip1559(provider, opts) {
9
9
  var useRaw = process.env["GAS_PRICE_EIP1559_RAW_".concat(opts.chainId)] === "true";
10
10
  return useRaw
11
- ? eip1559Raw(provider, opts.chainId, opts.baseFeeMultiplier)
12
- : eip1559Bad(provider, opts.chainId, opts.baseFeeMultiplier);
11
+ ? eip1559Raw(provider, opts.chainId, opts.baseFeeMultiplier, opts.priorityFeeMultiplier)
12
+ : eip1559Bad(provider, opts.chainId, opts.baseFeeMultiplier, opts.priorityFeeMultiplier);
13
13
  }
14
14
  exports.eip1559 = eip1559;
15
- function eip1559Raw(provider, chainId, baseFeeMultiplier) {
15
+ function eip1559Raw(provider, chainId, baseFeeMultiplier, priorityFeeMultiplier) {
16
16
  return tslib_1.__awaiter(this, void 0, void 0, function () {
17
- var _a, baseFeePerGas, _maxPriorityFeePerGas, maxPriorityFeePerGas, scaledBaseFee;
17
+ var _a, baseFeePerGas, _maxPriorityFeePerGas, maxPriorityFeePerGas, scaledPriorityFee, scaledBaseFee;
18
18
  return tslib_1.__generator(this, function (_b) {
19
19
  switch (_b.label) {
20
20
  case 0: return [4, Promise.all([
@@ -25,19 +25,20 @@ function eip1559Raw(provider, chainId, baseFeeMultiplier) {
25
25
  _a = _b.sent(), baseFeePerGas = _a[0].baseFeePerGas, _maxPriorityFeePerGas = _a[1];
26
26
  maxPriorityFeePerGas = utils_1.BigNumber.from(_maxPriorityFeePerGas);
27
27
  (0, assert_1.default)(utils_1.BigNumber.isBigNumber(baseFeePerGas), "No baseFeePerGas received on ".concat((0, utils_1.getNetworkName)(chainId)));
28
+ scaledPriorityFee = maxPriorityFeePerGas.mul(priorityFeeMultiplier).div(utils_1.fixedPointAdjustment);
28
29
  scaledBaseFee = baseFeePerGas.mul(baseFeeMultiplier).div(utils_1.fixedPointAdjustment);
29
30
  return [2, {
30
- maxFeePerGas: maxPriorityFeePerGas.add(scaledBaseFee),
31
- maxPriorityFeePerGas: maxPriorityFeePerGas,
31
+ maxFeePerGas: scaledPriorityFee.add(scaledBaseFee),
32
+ maxPriorityFeePerGas: scaledPriorityFee,
32
33
  }];
33
34
  }
34
35
  });
35
36
  });
36
37
  }
37
38
  exports.eip1559Raw = eip1559Raw;
38
- function eip1559Bad(provider, chainId, baseFeeMultiplier) {
39
+ function eip1559Bad(provider, chainId, baseFeeMultiplier, priorityFeeMultiplier) {
39
40
  return tslib_1.__awaiter(this, void 0, void 0, function () {
40
- var feeData, maxPriorityFeePerGas, scaledLastBaseFeePerGas, maxFeePerGas;
41
+ var feeData, maxPriorityFeePerGas, scaledPriorityFee, scaledLastBaseFeePerGas, maxFeePerGas;
41
42
  return tslib_1.__generator(this, function (_a) {
42
43
  switch (_a.label) {
43
44
  case 0: return [4, provider.getFeeData()];
@@ -48,11 +49,12 @@ function eip1559Bad(provider, chainId, baseFeeMultiplier) {
48
49
  (0, util_1.gasPriceError)("getFeeData()", chainId, feeData);
49
50
  });
50
51
  maxPriorityFeePerGas = feeData.maxPriorityFeePerGas;
52
+ scaledPriorityFee = maxPriorityFeePerGas.mul(priorityFeeMultiplier).div(utils_1.fixedPointAdjustment);
51
53
  scaledLastBaseFeePerGas = feeData.lastBaseFeePerGas
52
54
  .mul(baseFeeMultiplier)
53
55
  .div(utils_1.fixedPointAdjustment);
54
- maxFeePerGas = maxPriorityFeePerGas.add(scaledLastBaseFeePerGas);
55
- return [2, { maxPriorityFeePerGas: maxPriorityFeePerGas, maxFeePerGas: maxFeePerGas }];
56
+ maxFeePerGas = scaledPriorityFee.add(scaledLastBaseFeePerGas);
57
+ return [2, { maxPriorityFeePerGas: scaledPriorityFee, maxFeePerGas: maxFeePerGas }];
56
58
  }
57
59
  });
58
60
  });
@@ -1 +1 @@
1
- {"version":3,"file":"ethereum.js","sourceRoot":"","sources":["../../../../src/gasPriceOracle/adapters/ethereum.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ethereum.js","sourceRoot":"","sources":["../../../../src/gasPriceOracle/adapters/ethereum.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"linea-viem.js","sourceRoot":"","sources":["../../../../src/gasPriceOracle/adapters/linea-viem.ts"],"names":[],"mappings":";;;;AACA,oCAAyC;AACzC,6CAA+E;AAG/E,qCAAmD;AAmBnD,SAAsB,OAAO,CAC3B,QAAsB,EACtB,IAA6B;;;;;;;oBAErB,UAAU,GAAwB,IAAI,WAA5B,EAAE,iBAAiB,GAAK,IAAI,kBAAT,CAAU;oBACkB,WAAM,IAAA,mBAAW,EAAC,QAAQ,EAAE;4BAC3F,OAAO,EAAE,MAAC,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,IAAgB,mCAAI,6CAAO;4BACjD,EAAE,EAAE,MAAC,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,EAAc,mCAAI,6CAAO;4BAC1C,KAAK,EAAE,MAAM,CAAC,MAAA,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,KAAK,0CAAE,QAAQ,EAAE,mCAAI,GAAG,CAAC;4BACnD,IAAI,EAAE,MAAC,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,IAAY,mCAAI,IAAI;yBACxC,CAAC,EAAA;;oBALI,KAA2D,SAK/D,EALM,aAAa,mBAAA,EAAqB,kBAAkB,uBAAA;oBAMtD,iBAAiB,GACrB,CAAC,kBAAkB,GAAG,MAAM,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,4BAAoB,CAAC,QAAQ,EAAE,CAAC,CAAC;oBAExG,WAAO;4BACL,YAAY,EAAE,aAAa,GAAG,iBAAiB;4BAC/C,oBAAoB,EAAE,iBAAiB;yBACxC,EAAC;;;;CACH;AAlBD,0BAkBC"}
1
+ {"version":3,"file":"linea-viem.js","sourceRoot":"","sources":["../../../../src/gasPriceOracle/adapters/linea-viem.ts"],"names":[],"mappings":";;;;AACA,oCAAyC;AACzC,6CAA+E;AAG/E,qCAAmD;AAqBnD,SAAsB,OAAO,CAC3B,QAAsB,EACtB,IAA6B;;;;;;;oBAErB,UAAU,GAAwB,IAAI,WAA5B,EAAE,iBAAiB,GAAK,IAAI,kBAAT,CAAU;oBACkB,WAAM,IAAA,mBAAW,EAAC,QAAQ,EAAE;4BAC3F,OAAO,EAAE,MAAC,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,IAAgB,mCAAI,6CAAO;4BACjD,EAAE,EAAE,MAAC,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,EAAc,mCAAI,6CAAO;4BAC1C,KAAK,EAAE,MAAM,CAAC,MAAA,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,KAAK,0CAAE,QAAQ,EAAE,mCAAI,GAAG,CAAC;4BACnD,IAAI,EAAE,MAAC,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,IAAY,mCAAI,IAAI;yBACxC,CAAC,EAAA;;oBALI,KAA2D,SAK/D,EALM,aAAa,mBAAA,EAAqB,kBAAkB,uBAAA;oBAMtD,iBAAiB,GACrB,CAAC,kBAAkB,GAAG,MAAM,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC,4BAAoB,CAAC,QAAQ,EAAE,CAAC,CAAC;oBAExG,WAAO;4BACL,YAAY,EAAE,aAAa,GAAG,iBAAiB;4BAC/C,oBAAoB,EAAE,iBAAiB;yBACxC,EAAC;;;;CACH;AAlBD,0BAkBC"}
@@ -1 +1 @@
1
- {"version":3,"file":"linea.js","sourceRoot":"","sources":["../../../../src/gasPriceOracle/adapters/linea.ts"],"names":[],"mappings":";;;;AAMA,2DAAuC;AAGvC,SAAgB,OAAO,CAAC,QAA4B,EAAE,IAA6B;IAKjF,OAAO,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;AACzC,CAAC;AAND,0BAMC"}
1
+ {"version":3,"file":"linea.js","sourceRoot":"","sources":["../../../../src/gasPriceOracle/adapters/linea.ts"],"names":[],"mappings":";;;;AAMA,2DAAuC;AAWvC,SAAgB,OAAO,CAAC,QAA4B,EAAE,IAA6B;IAKjF,OAAO,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;AACzC,CAAC;AAND,0BAMC"}
@@ -83,12 +83,12 @@ var MockPolygonGasStation = (function (_super) {
83
83
  }(PolygonGasStation));
84
84
  function gasStation(provider, opts) {
85
85
  return tslib_1.__awaiter(this, void 0, void 0, function () {
86
- var chainId, baseFeeMultiplier, gasStation, maxPriorityFeePerGas, maxFeePerGas, baseFeeMinusPriorityFee, scaledBaseFee, err_1, minPriorityFee, priorityDelta;
86
+ var chainId, baseFeeMultiplier, priorityFeeMultiplier, gasStation, maxPriorityFeePerGas, maxFeePerGas, baseFeeMinusPriorityFee, scaledBaseFee, scaledPriorityFee, err_1, minPriorityFee, priorityDelta;
87
87
  var _a, _b;
88
88
  return tslib_1.__generator(this, function (_c) {
89
89
  switch (_c.label) {
90
90
  case 0:
91
- chainId = opts.chainId, baseFeeMultiplier = opts.baseFeeMultiplier;
91
+ chainId = opts.chainId, baseFeeMultiplier = opts.baseFeeMultiplier, priorityFeeMultiplier = opts.priorityFeeMultiplier;
92
92
  if (process.env.TEST_POLYGON_GAS_STATION === "true") {
93
93
  gasStation = new MockPolygonGasStation();
94
94
  }
@@ -106,14 +106,16 @@ function gasStation(provider, opts) {
106
106
  (_a = _c.sent(), maxPriorityFeePerGas = _a.maxPriorityFeePerGas, maxFeePerGas = _a.maxFeePerGas);
107
107
  baseFeeMinusPriorityFee = maxFeePerGas.sub(maxPriorityFeePerGas);
108
108
  scaledBaseFee = baseFeeMinusPriorityFee.mul(baseFeeMultiplier).div(utils_1.fixedPointAdjustment);
109
- maxFeePerGas = scaledBaseFee.add(maxPriorityFeePerGas);
109
+ scaledPriorityFee = maxPriorityFeePerGas.mul(priorityFeeMultiplier).div(utils_1.fixedPointAdjustment);
110
+ maxFeePerGas = scaledBaseFee.add(scaledPriorityFee);
111
+ maxPriorityFeePerGas = scaledPriorityFee;
110
112
  return [3, 5];
111
113
  case 3:
112
114
  err_1 = _c.sent();
113
115
  return [4, (0, ethereum_1.eip1559)(provider, opts)];
114
116
  case 4:
115
117
  (_b = _c.sent(), maxPriorityFeePerGas = _b.maxPriorityFeePerGas, maxFeePerGas = _b.maxFeePerGas);
116
- minPriorityFee = (0, utils_1.parseUnits)("30", 9);
118
+ minPriorityFee = (0, utils_1.parseUnits)("30", 9).mul(priorityFeeMultiplier).div(utils_1.fixedPointAdjustment);
117
119
  if (maxPriorityFeePerGas.lt(minPriorityFee)) {
118
120
  priorityDelta = minPriorityFee.sub(maxPriorityFeePerGas);
119
121
  maxPriorityFeePerGas = minPriorityFee;
@@ -1 +1 @@
1
- {"version":3,"file":"polygon.js","sourceRoot":"","sources":["../../../../src/gasPriceOracle/adapters/polygon.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"polygon.js","sourceRoot":"","sources":["../../../../src/gasPriceOracle/adapters/polygon.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@ import { BigNumber } from "../utils";
4
4
  import { GasPriceEstimate } from "./types";
5
5
  export interface GasPriceEstimateOptions {
6
6
  baseFeeMultiplier: BigNumber;
7
+ priorityFeeMultiplier: BigNumber;
7
8
  legacyFallback: boolean;
8
9
  chainId: number;
9
10
  unsignedTx?: PopulatedTransaction;
@@ -15,25 +15,27 @@ var GAS_PRICE_ESTIMATE_DEFAULTS = {
15
15
  legacyFallback: true,
16
16
  };
17
17
  function getGasPriceEstimate(provider, opts) {
18
- var _a, _b;
18
+ var _a, _b, _c;
19
19
  if (opts === void 0) { opts = {}; }
20
20
  return tslib_1.__awaiter(this, void 0, void 0, function () {
21
- var baseFeeMultiplier, chainId, _c, optsWithDefaults, useViem;
22
- return tslib_1.__generator(this, function (_d) {
23
- switch (_d.label) {
21
+ var baseFeeMultiplier, priorityFeeMultiplier, chainId, _d, optsWithDefaults, useViem;
22
+ return tslib_1.__generator(this, function (_e) {
23
+ switch (_e.label) {
24
24
  case 0:
25
25
  baseFeeMultiplier = (_a = opts.baseFeeMultiplier) !== null && _a !== void 0 ? _a : (0, utils_1.toBNWei)("1");
26
26
  (0, assert_1.default)(baseFeeMultiplier.gte((0, utils_1.toBNWei)("1.0")) && baseFeeMultiplier.lte((0, utils_1.toBNWei)("5")), "Require 1.0 < base fee multiplier (".concat(baseFeeMultiplier, ") <= 5.0 for a total gas multiplier within [+1.0, +5.0]"));
27
- if (!((_b = opts.chainId) !== null && _b !== void 0)) return [3, 1];
28
- _c = _b;
27
+ priorityFeeMultiplier = (_b = opts.priorityFeeMultiplier) !== null && _b !== void 0 ? _b : (0, utils_1.toBNWei)("1");
28
+ (0, assert_1.default)(priorityFeeMultiplier.gte((0, utils_1.toBNWei)("1.0")) && priorityFeeMultiplier.lte((0, utils_1.toBNWei)("5")), "Require 1.0 < priority fee multiplier (".concat(priorityFeeMultiplier, ") <= 5.0 for a total gas multiplier within [+1.0, +5.0]"));
29
+ if (!((_c = opts.chainId) !== null && _c !== void 0)) return [3, 1];
30
+ _d = _c;
29
31
  return [3, 3];
30
32
  case 1: return [4, provider.getNetwork()];
31
33
  case 2:
32
- _c = (_d.sent()).chainId;
33
- _d.label = 3;
34
+ _d = (_e.sent()).chainId;
35
+ _e.label = 3;
34
36
  case 3:
35
- chainId = _c;
36
- optsWithDefaults = tslib_1.__assign(tslib_1.__assign(tslib_1.__assign(tslib_1.__assign({}, GAS_PRICE_ESTIMATE_DEFAULTS), { baseFeeMultiplier: baseFeeMultiplier }), opts), { chainId: chainId });
37
+ chainId = _d;
38
+ optsWithDefaults = tslib_1.__assign(tslib_1.__assign(tslib_1.__assign(tslib_1.__assign({}, GAS_PRICE_ESTIMATE_DEFAULTS), { baseFeeMultiplier: baseFeeMultiplier, priorityFeeMultiplier: priorityFeeMultiplier }), opts), { chainId: chainId });
37
39
  useViem = process.env["NEW_GAS_PRICE_ORACLE_".concat(chainId)] === "true";
38
40
  return [2, useViem
39
41
  ? _getViemGasPriceEstimate(chainId, optsWithDefaults)
@@ -1 +1 @@
1
- {"version":3,"file":"oracle.js","sourceRoot":"","sources":["../../../src/gasPriceOracle/oracle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oracle.js","sourceRoot":"","sources":["../../../src/gasPriceOracle/oracle.ts"],"names":[],"mappings":"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"}
@@ -26,12 +26,16 @@ export declare class QueryBase implements QueryInterface {
26
26
  gasPrice: BigNumberish;
27
27
  gasUnits: BigNumberish;
28
28
  baseFeeMultiplier: BigNumber;
29
+ priorityFeeMultiplier: BigNumber;
30
+ opStackL1GasCostMultiplier: BigNumber;
29
31
  transport: Transport;
30
32
  }>): Promise<TransactionCostEstimate>;
31
33
  estimateGas(unsignedTx: PopulatedTransaction, senderAddress: string, provider: providers.Provider | L2Provider<providers.Provider>, options?: Partial<{
32
34
  gasPrice: BigNumberish;
33
35
  gasUnits: BigNumberish;
34
36
  baseFeeMultiplier: BigNumber;
37
+ priorityFeeMultiplier: BigNumber;
38
+ opStackL1GasCostMultiplier: BigNumber;
35
39
  transport: Transport;
36
40
  }>): Promise<TransactionCostEstimate>;
37
41
  getTokenPrice(tokenSymbol: string): Promise<number>;
@@ -26,11 +26,11 @@ var QueryBase = (function () {
26
26
  if (relayer === void 0) { relayer = constants_1.DEFAULT_SIMULATED_RELAYER_ADDRESS; }
27
27
  if (options === void 0) { options = {}; }
28
28
  return tslib_1.__awaiter(this, void 0, void 0, function () {
29
- var _a, gasPrice, gasUnits, baseFeeMultiplier, transport, tx, _b, nativeGasCost, tokenGasCost, impliedGasPrice;
29
+ var _a, gasPrice, gasUnits, baseFeeMultiplier, priorityFeeMultiplier, opStackL1GasCostMultiplier, transport, tx, _b, nativeGasCost, tokenGasCost, impliedGasPrice;
30
30
  return tslib_1.__generator(this, function (_c) {
31
31
  switch (_c.label) {
32
32
  case 0:
33
- _a = options.gasPrice, gasPrice = _a === void 0 ? this.fixedGasPrice : _a, gasUnits = options.gasUnits, baseFeeMultiplier = options.baseFeeMultiplier, transport = options.transport;
33
+ _a = options.gasPrice, gasPrice = _a === void 0 ? this.fixedGasPrice : _a, gasUnits = options.gasUnits, baseFeeMultiplier = options.baseFeeMultiplier, priorityFeeMultiplier = options.priorityFeeMultiplier, opStackL1GasCostMultiplier = options.opStackL1GasCostMultiplier, transport = options.transport;
34
34
  return [4, (0, utils_1.populateV3Relay)(this.spokePool, deposit, relayer)];
35
35
  case 1:
36
36
  tx = _c.sent();
@@ -38,6 +38,8 @@ var QueryBase = (function () {
38
38
  gasPrice: gasPrice,
39
39
  gasUnits: gasUnits,
40
40
  baseFeeMultiplier: baseFeeMultiplier,
41
+ priorityFeeMultiplier: priorityFeeMultiplier,
42
+ opStackL1GasCostMultiplier: opStackL1GasCostMultiplier,
41
43
  transport: transport,
42
44
  })];
43
45
  case 2:
@@ -54,39 +56,40 @@ var QueryBase = (function () {
54
56
  QueryBase.prototype.estimateGas = function (unsignedTx, senderAddress, provider, options) {
55
57
  if (options === void 0) { options = {}; }
56
58
  return tslib_1.__awaiter(this, void 0, void 0, function () {
57
- var _a, _gasPrice, gasUnits, _b, baseFeeMultiplier, transport, chainId, voidSigner, queries, _c, nativeGasCost, gasPrice, tokenGasCost, populatedTransaction, l1GasCost, l2GasCost;
58
- return tslib_1.__generator(this, function (_d) {
59
- switch (_d.label) {
59
+ var _a, _gasPrice, gasUnits, _b, baseFeeMultiplier, _c, priorityFeeMultiplier, _d, opStackL1GasCostMultiplier, transport, chainId, voidSigner, queries, _e, nativeGasCost, gasPrice, tokenGasCost, populatedTransaction, l1GasCost, scaledL1GasCost, l2GasCost;
60
+ return tslib_1.__generator(this, function (_f) {
61
+ switch (_f.label) {
60
62
  case 0:
61
- _a = options || {}, _gasPrice = _a.gasPrice, gasUnits = _a.gasUnits, _b = _a.baseFeeMultiplier, baseFeeMultiplier = _b === void 0 ? (0, utils_1.toBNWei)("1") : _b, transport = _a.transport;
63
+ _a = options || {}, _gasPrice = _a.gasPrice, gasUnits = _a.gasUnits, _b = _a.baseFeeMultiplier, baseFeeMultiplier = _b === void 0 ? (0, utils_1.toBNWei)("1") : _b, _c = _a.priorityFeeMultiplier, priorityFeeMultiplier = _c === void 0 ? (0, utils_1.toBNWei)("1") : _c, _d = _a.opStackL1GasCostMultiplier, opStackL1GasCostMultiplier = _d === void 0 ? (0, utils_1.toBNWei)("1") : _d, transport = _a.transport;
62
64
  return [4, provider.getNetwork()];
63
65
  case 1:
64
- chainId = (_d.sent()).chainId;
66
+ chainId = (_f.sent()).chainId;
65
67
  voidSigner = new ethers_1.VoidSigner(senderAddress, provider);
66
68
  queries = [
67
69
  gasUnits ? Promise.resolve(utils_1.BigNumber.from(gasUnits)) : voidSigner.estimateGas(unsignedTx),
68
70
  _gasPrice
69
71
  ? Promise.resolve({ maxFeePerGas: _gasPrice })
70
- : (0, oracle_1.getGasPriceEstimate)(provider, { chainId: chainId, baseFeeMultiplier: baseFeeMultiplier, transport: transport, unsignedTx: unsignedTx }),
72
+ : (0, oracle_1.getGasPriceEstimate)(provider, { chainId: chainId, baseFeeMultiplier: baseFeeMultiplier, priorityFeeMultiplier: priorityFeeMultiplier, transport: transport, unsignedTx: unsignedTx }),
71
73
  ];
72
74
  return [4, Promise.all(queries)];
73
75
  case 2:
74
- _c = _d.sent(), nativeGasCost = _c[0], gasPrice = _c[1].maxFeePerGas;
76
+ _e = _f.sent(), nativeGasCost = _e[0], gasPrice = _e[1].maxFeePerGas;
75
77
  (0, utils_1.assert)(nativeGasCost.gt(utils_1.bnZero), "Gas cost should not be 0");
76
78
  if (!(0, utils_1.chainIsOPStack)(chainId)) return [3, 5];
77
79
  (0, utils_1.assert)((0, l2_provider_1.isL2Provider)(provider), "Unexpected provider for chain ID ".concat(chainId, "."));
78
80
  return [4, voidSigner.populateTransaction(tslib_1.__assign(tslib_1.__assign({}, unsignedTx), { gasLimit: nativeGasCost }))];
79
81
  case 3:
80
- populatedTransaction = _d.sent();
82
+ populatedTransaction = _f.sent();
81
83
  return [4, provider.estimateL1GasCost(populatedTransaction)];
82
84
  case 4:
83
- l1GasCost = _d.sent();
85
+ l1GasCost = _f.sent();
86
+ scaledL1GasCost = l1GasCost.mul(opStackL1GasCostMultiplier).div(utils_1.fixedPointAdjustment);
84
87
  l2GasCost = nativeGasCost.mul(gasPrice);
85
- tokenGasCost = l1GasCost.add(l2GasCost);
88
+ tokenGasCost = scaledL1GasCost.add(l2GasCost);
86
89
  return [3, 6];
87
90
  case 5:
88
91
  tokenGasCost = nativeGasCost.mul(gasPrice);
89
- _d.label = 6;
92
+ _f.label = 6;
90
93
  case 6: return [2, {
91
94
  nativeGasCost: nativeGasCost,
92
95
  tokenGasCost: tokenGasCost,
@@ -1 +1 @@
1
- {"version":3,"file":"baseQuery.js","sourceRoot":"","sources":["../../../../src/relayFeeCalculator/chain-queries/baseQuery.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"baseQuery.js","sourceRoot":"","sources":["../../../../src/relayFeeCalculator/chain-queries/baseQuery.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,8 @@ export interface QueryInterface {
6
6
  gasPrice: BigNumberish;
7
7
  gasUnits: BigNumberish;
8
8
  baseFeeMultiplier: BigNumber;
9
+ priorityFeeMultiplier: BigNumber;
10
+ opStackL1GasCostMultiplier: BigNumber;
9
11
  transport: Transport;
10
12
  }>) => Promise<TransactionCostEstimate>;
11
13
  getTokenPrice: (tokenSymbol: string) => Promise<number>;
@@ -310,8 +312,8 @@ export declare class RelayFeeCalculator {
310
312
  };
311
313
  coingeckoId: string;
312
314
  };
313
- }, gasPrice?: BigNumberish, gasLimit?: BigNumberish, transport?: Transport): Promise<BigNumber>;
315
+ }, gasPrice?: BigNumberish, gasLimit?: BigNumberish, _tokenGasCost?: BigNumberish, transport?: Transport): Promise<BigNumber>;
314
316
  capitalFeePercent(_amountToRelay: BigNumberish, _tokenSymbol: string, _originRoute?: ChainIdAsString, _destinationRoute?: ChainIdAsString): BigNumber;
315
- relayerFeeDetails(deposit: Deposit, amountToRelay?: BigNumberish, simulateZeroFill?: boolean, relayerAddress?: string, _tokenPrice?: number, gasPrice?: BigNumberish, gasUnits?: BigNumberish): Promise<RelayerFeeDetails>;
317
+ relayerFeeDetails(deposit: Deposit, amountToRelay?: BigNumberish, simulateZeroFill?: boolean, relayerAddress?: string, _tokenPrice?: number, gasPrice?: BigNumberish, gasUnits?: BigNumberish, tokenGasCost?: BigNumberish): Promise<RelayerFeeDetails>;
316
318
  }
317
319
  export {};
@@ -86,7 +86,7 @@ var RelayFeeCalculator = (function () {
86
86
  RelayFeeCalculator.prototype.getTokenPrice = function (tokenSymbol) {
87
87
  return this.queries.getTokenPrice(tokenSymbol);
88
88
  };
89
- RelayFeeCalculator.prototype.gasFeePercent = function (deposit, amountToRelay, simulateZeroFill, relayerAddress, _tokenPrice, tokenMapping, gasPrice, gasLimit, transport) {
89
+ RelayFeeCalculator.prototype.gasFeePercent = function (deposit, amountToRelay, simulateZeroFill, relayerAddress, _tokenPrice, tokenMapping, gasPrice, gasLimit, _tokenGasCost, transport) {
90
90
  if (simulateZeroFill === void 0) { simulateZeroFill = false; }
91
91
  if (relayerAddress === void 0) { relayerAddress = constants_1.DEFAULT_SIMULATED_RELAYER_ADDRESS; }
92
92
  if (tokenMapping === void 0) { tokenMapping = constants_1.TOKEN_SYMBOLS_MAP; }
@@ -107,6 +107,10 @@ var RelayFeeCalculator = (function () {
107
107
  deposit = tslib_1.__assign(tslib_1.__assign({}, deposit), { outputAmount: simulatedAmount });
108
108
  getGasCosts = this.queries
109
109
  .getGasCosts(deposit, relayerAddress, { gasPrice: gasPrice, gasUnits: gasLimit, transport: transport })
110
+ .then(function (_a) {
111
+ var tokenGasCost = _a.tokenGasCost;
112
+ return tokenGasCost;
113
+ })
110
114
  .catch(function (error) {
111
115
  _this.logger.error({
112
116
  at: "sdk/gasFeePercent",
@@ -118,7 +122,7 @@ var RelayFeeCalculator = (function () {
118
122
  throw error;
119
123
  });
120
124
  return [4, Promise.all([
121
- getGasCosts,
125
+ _tokenGasCost ? Promise.resolve(_tokenGasCost) : getGasCosts,
122
126
  _tokenPrice !== null && _tokenPrice !== void 0 ? _tokenPrice : this.queries.getTokenPrice(token.symbol).catch(function (error) {
123
127
  _this.logger.error({
124
128
  at: "sdk/gasFeePercent",
@@ -131,7 +135,7 @@ var RelayFeeCalculator = (function () {
131
135
  }),
132
136
  ])];
133
137
  case 1:
134
- _a = _b.sent(), tokenGasCost = _a[0].tokenGasCost, tokenPrice = _a[1];
138
+ _a = _b.sent(), tokenGasCost = _a[0], tokenPrice = _a[1];
135
139
  gasFeesInToken = (0, utils_1.nativeToToken)(tokenGasCost, tokenPrice, token.decimals, this.nativeTokenDecimals);
136
140
  return [2, (0, utils_1.percent)(gasFeesInToken, amountToRelay.toString())];
137
141
  }
@@ -167,7 +171,7 @@ var RelayFeeCalculator = (function () {
167
171
  return minCharge.add(triangleCharge).add(remainderCharge).mul(utils_1.fixedPointAdjustment).div(y);
168
172
  }
169
173
  };
170
- RelayFeeCalculator.prototype.relayerFeeDetails = function (deposit, amountToRelay, simulateZeroFill, relayerAddress, _tokenPrice, gasPrice, gasUnits) {
174
+ RelayFeeCalculator.prototype.relayerFeeDetails = function (deposit, amountToRelay, simulateZeroFill, relayerAddress, _tokenPrice, gasPrice, gasUnits, tokenGasCost) {
171
175
  if (simulateZeroFill === void 0) { simulateZeroFill = false; }
172
176
  if (relayerAddress === void 0) { relayerAddress = constants_1.DEFAULT_SIMULATED_RELAYER_ADDRESS; }
173
177
  return tslib_1.__awaiter(this, void 0, void 0, function () {
@@ -181,7 +185,7 @@ var RelayFeeCalculator = (function () {
181
185
  if (!(0, utils_1.isDefined)(token)) {
182
186
  throw new Error("Could not find token information for ".concat(inputToken));
183
187
  }
184
- return [4, this.gasFeePercent(deposit, amountToRelay, simulateZeroFill, relayerAddress, _tokenPrice, undefined, gasPrice, gasUnits)];
188
+ return [4, this.gasFeePercent(deposit, amountToRelay, simulateZeroFill, relayerAddress, _tokenPrice, undefined, gasPrice, gasUnits, tokenGasCost)];
185
189
  case 1:
186
190
  gasFeePercent = _a.sent();
187
191
  gasFeeTotal = gasFeePercent.mul(amountToRelay).div(utils_1.fixedPointAdjustment);
@@ -1 +1 @@
1
- {"version":3,"file":"relayFeeCalculator.js","sourceRoot":"","sources":["../../../src/relayFeeCalculator/relayFeeCalculator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"relayFeeCalculator.js","sourceRoot":"","sources":["../../../src/relayFeeCalculator/relayFeeCalculator.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,10 @@ import { GasPriceEstimateOptions } from "../oracle";
7
7
  * Reference: https://docs.arbitrum.io/how-arbitrum-works/gas-fees so we hardcode the priority fee
8
8
  * to 1 wei.
9
9
  * @param provider Ethers Provider
10
+ * @param opts See notes below on specific parameters.
11
+ * @param baseFeeMultiplier Amount to multiply base fee.
12
+ * @param priorityFeeMultiplier Unused in this function because arbitrum priority fee is hardcoded to 1 wei by this
13
+ * function.
10
14
  * @returns GasPriceEstimate
11
15
  */
12
16
  export declare function eip1559(provider: providers.Provider, opts: GasPriceEstimateOptions): Promise<GasPriceEstimate>;
@@ -7,6 +7,10 @@ import * as ethereum from "./ethereum";
7
7
  * Reference: https://docs.arbitrum.io/how-arbitrum-works/gas-fees so we hardcode the priority fee
8
8
  * to 1 wei.
9
9
  * @param provider Ethers Provider
10
+ * @param opts See notes below on specific parameters.
11
+ * @param baseFeeMultiplier Amount to multiply base fee.
12
+ * @param priorityFeeMultiplier Unused in this function because arbitrum priority fee is hardcoded to 1 wei by this
13
+ * function.
10
14
  * @returns GasPriceEstimate
11
15
  */
12
16
  export function eip1559(provider, opts) {
@@ -1 +1 @@
1
- {"version":3,"file":"arbitrum.js","sourceRoot":"","sources":["../../../../src/gasPriceOracle/adapters/arbitrum.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AAGvC;;;;;;;GAOG;AACH,MAAM,UAAgB,OAAO,CAAC,QAA4B,EAAE,IAA6B;;;;;wBACzB,qBAAM,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAA;;oBAA9F,KAAwD,SAAsC,EAA9E,aAAa,kBAAA,EAAE,oBAAoB,0BAAA;oBAInD,YAAY,GAAG,aAAa,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;oBAExE,sBAAO,EAAE,oBAAoB,EAAE,KAAK,EAAE,YAAY,cAAA,EAAE,EAAC;;;;CACtD"}
1
+ {"version":3,"file":"arbitrum.js","sourceRoot":"","sources":["../../../../src/gasPriceOracle/adapters/arbitrum.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,OAAO,KAAK,QAAQ,MAAM,YAAY,CAAC;AAGvC;;;;;;;;;;;GAWG;AACH,MAAM,UAAgB,OAAO,CAAC,QAA4B,EAAE,IAA6B;;;;;wBACzB,qBAAM,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAA;;oBAA9F,KAAwD,SAAsC,EAA9E,aAAa,kBAAA,EAAE,oBAAoB,0BAAA;oBAInD,YAAY,GAAG,aAAa,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;oBAExE,sBAAO,EAAE,oBAAoB,EAAE,KAAK,EAAE,YAAY,cAAA,EAAE,EAAC;;;;CACtD"}
@@ -7,6 +7,9 @@ import { GasPriceEstimateOptions } from "../oracle";
7
7
  * eth_getBlock("pending").baseFee to eth_maxPriorityFeePerGas, otherwise calls the ethers provider's
8
8
  * getFeeData() method which adds eth_getBlock("latest").baseFee to a hardcoded priority fee of 1.5 gwei.
9
9
  * @param provider ethers RPC provider instance.
10
+ * @param {GasPriceEstimateOptions} opts See notes below on specific parameters.
11
+ * @param baseFeeMultiplier Amount to multiply base fee or total fee for legacy gas pricing.
12
+ * @param priorityFeeMultiplier Amount to multiply priority fee or unused for legacy gas pricing.
10
13
  * @returns Promise of gas price estimate object.
11
14
  */
12
15
  export declare function eip1559(provider: providers.Provider, opts: GasPriceEstimateOptions): Promise<GasPriceEstimate>;
@@ -17,7 +20,7 @@ export declare function eip1559(provider: providers.Provider, opts: GasPriceEsti
17
20
  * @param chainId Chain ID of the provider instance.
18
21
  * @returns Promise of gas price estimate object.
19
22
  */
20
- export declare function eip1559Raw(provider: providers.Provider, chainId: number, baseFeeMultiplier: BigNumber): Promise<GasPriceEstimate>;
23
+ export declare function eip1559Raw(provider: providers.Provider, chainId: number, baseFeeMultiplier: BigNumber, priorityFeeMultiplier: BigNumber): Promise<GasPriceEstimate>;
21
24
  /**
22
25
  * @notice Returns fee data using provider's getFeeData() method.
23
26
  * @note Resolves priority gas pricing poorly, because the priority fee is hardcoded to 1.5 Gwei in ethers v5's
@@ -27,7 +30,7 @@ export declare function eip1559Raw(provider: providers.Provider, chainId: number
27
30
  * @param chainId Chain ID of the provider instance.
28
31
  * @returns Promise of gas price estimate object.
29
32
  */
30
- export declare function eip1559Bad(provider: providers.Provider, chainId: number, baseFeeMultiplier: BigNumber): Promise<GasPriceEstimate>;
33
+ export declare function eip1559Bad(provider: providers.Provider, chainId: number, baseFeeMultiplier: BigNumber, priorityFeeMultiplier: BigNumber): Promise<GasPriceEstimate>;
31
34
  /**
32
35
  * @notice Returns result of eth_gasPrice RPC call
33
36
  * @dev Its recommended to use the eip1559Raw method over this one where possible as it will be more accurate.
@@ -10,13 +10,16 @@ import { gasPriceError } from "../util";
10
10
  * eth_getBlock("pending").baseFee to eth_maxPriorityFeePerGas, otherwise calls the ethers provider's
11
11
  * getFeeData() method which adds eth_getBlock("latest").baseFee to a hardcoded priority fee of 1.5 gwei.
12
12
  * @param provider ethers RPC provider instance.
13
+ * @param {GasPriceEstimateOptions} opts See notes below on specific parameters.
14
+ * @param baseFeeMultiplier Amount to multiply base fee or total fee for legacy gas pricing.
15
+ * @param priorityFeeMultiplier Amount to multiply priority fee or unused for legacy gas pricing.
13
16
  * @returns Promise of gas price estimate object.
14
17
  */
15
18
  export function eip1559(provider, opts) {
16
19
  var useRaw = process.env["GAS_PRICE_EIP1559_RAW_".concat(opts.chainId)] === "true";
17
20
  return useRaw
18
- ? eip1559Raw(provider, opts.chainId, opts.baseFeeMultiplier)
19
- : eip1559Bad(provider, opts.chainId, opts.baseFeeMultiplier);
21
+ ? eip1559Raw(provider, opts.chainId, opts.baseFeeMultiplier, opts.priorityFeeMultiplier)
22
+ : eip1559Bad(provider, opts.chainId, opts.baseFeeMultiplier, opts.priorityFeeMultiplier);
20
23
  }
21
24
  /**
22
25
  * @note Performs direct RPC calls to retrieve the RPC-suggested priority fee for the next block.
@@ -25,9 +28,9 @@ export function eip1559(provider, opts) {
25
28
  * @param chainId Chain ID of the provider instance.
26
29
  * @returns Promise of gas price estimate object.
27
30
  */
28
- export function eip1559Raw(provider, chainId, baseFeeMultiplier) {
31
+ export function eip1559Raw(provider, chainId, baseFeeMultiplier, priorityFeeMultiplier) {
29
32
  return __awaiter(this, void 0, void 0, function () {
30
- var _a, baseFeePerGas, _maxPriorityFeePerGas, maxPriorityFeePerGas, scaledBaseFee;
33
+ var _a, baseFeePerGas, _maxPriorityFeePerGas, maxPriorityFeePerGas, scaledPriorityFee, scaledBaseFee;
31
34
  return __generator(this, function (_b) {
32
35
  switch (_b.label) {
33
36
  case 0: return [4 /*yield*/, Promise.all([
@@ -38,10 +41,11 @@ export function eip1559Raw(provider, chainId, baseFeeMultiplier) {
38
41
  _a = _b.sent(), baseFeePerGas = _a[0].baseFeePerGas, _maxPriorityFeePerGas = _a[1];
39
42
  maxPriorityFeePerGas = BigNumber.from(_maxPriorityFeePerGas);
40
43
  assert(BigNumber.isBigNumber(baseFeePerGas), "No baseFeePerGas received on ".concat(getNetworkName(chainId)));
44
+ scaledPriorityFee = maxPriorityFeePerGas.mul(priorityFeeMultiplier).div(fixedPointAdjustment);
41
45
  scaledBaseFee = baseFeePerGas.mul(baseFeeMultiplier).div(fixedPointAdjustment);
42
46
  return [2 /*return*/, {
43
- maxFeePerGas: maxPriorityFeePerGas.add(scaledBaseFee),
44
- maxPriorityFeePerGas: maxPriorityFeePerGas,
47
+ maxFeePerGas: scaledPriorityFee.add(scaledBaseFee),
48
+ maxPriorityFeePerGas: scaledPriorityFee,
45
49
  }];
46
50
  }
47
51
  });
@@ -56,9 +60,9 @@ export function eip1559Raw(provider, chainId, baseFeeMultiplier) {
56
60
  * @param chainId Chain ID of the provider instance.
57
61
  * @returns Promise of gas price estimate object.
58
62
  */
59
- export function eip1559Bad(provider, chainId, baseFeeMultiplier) {
63
+ export function eip1559Bad(provider, chainId, baseFeeMultiplier, priorityFeeMultiplier) {
60
64
  return __awaiter(this, void 0, void 0, function () {
61
- var feeData, maxPriorityFeePerGas, scaledLastBaseFeePerGas, maxFeePerGas;
65
+ var feeData, maxPriorityFeePerGas, scaledPriorityFee, scaledLastBaseFeePerGas, maxFeePerGas;
62
66
  return __generator(this, function (_a) {
63
67
  switch (_a.label) {
64
68
  case 0: return [4 /*yield*/, provider.getFeeData()];
@@ -69,11 +73,12 @@ export function eip1559Bad(provider, chainId, baseFeeMultiplier) {
69
73
  gasPriceError("getFeeData()", chainId, feeData);
70
74
  });
71
75
  maxPriorityFeePerGas = feeData.maxPriorityFeePerGas;
76
+ scaledPriorityFee = maxPriorityFeePerGas.mul(priorityFeeMultiplier).div(fixedPointAdjustment);
72
77
  scaledLastBaseFeePerGas = feeData.lastBaseFeePerGas
73
78
  .mul(baseFeeMultiplier)
74
79
  .div(fixedPointAdjustment);
75
- maxFeePerGas = maxPriorityFeePerGas.add(scaledLastBaseFeePerGas);
76
- return [2 /*return*/, { maxPriorityFeePerGas: maxPriorityFeePerGas, maxFeePerGas: maxFeePerGas }];
80
+ maxFeePerGas = scaledPriorityFee.add(scaledLastBaseFeePerGas);
81
+ return [2 /*return*/, { maxPriorityFeePerGas: scaledPriorityFee, maxFeePerGas: maxFeePerGas }];
77
82
  }
78
83
  });
79
84
  });