viem 0.0.0-main.20240329T205455 → 0.0.0-main.20240330T155248

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 (34) hide show
  1. package/README.md +6 -0
  2. package/_cjs/actions/public/estimateFeesPerGas.js +6 -3
  3. package/_cjs/actions/public/estimateFeesPerGas.js.map +1 -1
  4. package/_cjs/celo/chainConfig.js +2 -0
  5. package/_cjs/celo/chainConfig.js.map +1 -1
  6. package/_cjs/celo/fees.js +32 -0
  7. package/_cjs/celo/fees.js.map +1 -0
  8. package/_cjs/errors/version.js +1 -1
  9. package/_esm/actions/public/estimateFeesPerGas.js +6 -3
  10. package/_esm/actions/public/estimateFeesPerGas.js.map +1 -1
  11. package/_esm/celo/chainConfig.js +2 -0
  12. package/_esm/celo/chainConfig.js.map +1 -1
  13. package/_esm/celo/fees.js +58 -0
  14. package/_esm/celo/fees.js.map +1 -0
  15. package/_esm/errors/version.js +1 -1
  16. package/_types/actions/public/estimateFeesPerGas.d.ts +1 -2
  17. package/_types/actions/public/estimateFeesPerGas.d.ts.map +1 -1
  18. package/_types/celo/chainConfig.d.ts +2101 -0
  19. package/_types/celo/chainConfig.d.ts.map +1 -1
  20. package/_types/celo/fees.d.ts +4 -0
  21. package/_types/celo/fees.d.ts.map +1 -0
  22. package/_types/chains/definitions/celo.d.ts +2101 -1
  23. package/_types/chains/definitions/celo.d.ts.map +1 -1
  24. package/_types/chains/definitions/celoAlfajores.d.ts +2101 -1
  25. package/_types/chains/definitions/celoAlfajores.d.ts.map +1 -1
  26. package/_types/errors/version.d.ts +1 -1
  27. package/_types/types/chain.d.ts +2 -1
  28. package/_types/types/chain.d.ts.map +1 -1
  29. package/actions/public/estimateFeesPerGas.ts +7 -4
  30. package/celo/chainConfig.ts +2 -0
  31. package/celo/fees.ts +92 -0
  32. package/errors/version.ts +1 -1
  33. package/package.json +1 -1
  34. package/types/chain.ts +7 -3
package/README.md CHANGED
@@ -210,6 +210,12 @@ Check out the following places for more viem-related content:
210
210
  <img alt="supa logo" src="https://raw.githubusercontent.com/wevm/.github/main/content/sponsors/supa-light.svg" width="auto" height="50">
211
211
  </picture>
212
212
  </a>
213
+ <a href="https://syndicate.io">
214
+ <picture>
215
+ <source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/wevm/.github/main/content/sponsors/syndicate-dark.svg">
216
+ <img alt="syndicate logo" src="https://raw.githubusercontent.com/wevm/.github/main/content/sponsors/syndicate-light.svg" width="auto" height="50">
217
+ </picture>
218
+ </a>
213
219
 
214
220
  ## Contributing
215
221
 
@@ -30,14 +30,17 @@ async function internal_estimateFeesPerGas(client, args) {
30
30
  const block = block_
31
31
  ? block_
32
32
  : await (0, getAction_js_1.getAction)(client, getBlock_js_1.getBlock, 'getBlock')({});
33
- if (typeof chain?.fees?.estimateFeesPerGas === 'function')
34
- return chain.fees.estimateFeesPerGas({
33
+ if (typeof chain?.fees?.estimateFeesPerGas === 'function') {
34
+ const fees = (await chain.fees.estimateFeesPerGas({
35
35
  block: block_,
36
36
  client,
37
37
  multiply,
38
38
  request,
39
39
  type,
40
- });
40
+ }));
41
+ if (fees !== null)
42
+ return fees;
43
+ }
41
44
  if (type === 'eip1559') {
42
45
  if (typeof block.baseFeePerGas !== 'bigint')
43
46
  throw new fee_js_1.Eip1559FeesNotSupportedError();
@@ -1 +1 @@
1
- {"version":3,"file":"estimateFeesPerGas.js","sourceRoot":"","sources":["../../../actions/public/estimateFeesPerGas.ts"],"names":[],"mappings":";;;AAEA,gDAK4B;AAc5B,2DAAoD;AAEpD,uFAG0C;AAC1C,+CAAwC;AACxC,qDAAyE;AAsDlE,KAAK,UAAU,kBAAkB,CAKtC,MAAgC,EAChC,IAA2E;IAE3E,OAAO,2BAA2B,CAAC,MAAM,EAAE,IAAW,CAAC,CAAA;AACzD,CAAC;AATD,gDASC;AAEM,KAAK,UAAU,2BAA2B,CAK/C,MAAgC,EAChC,IAGC;IAED,MAAM,EACJ,KAAK,EAAE,MAAM,EACb,KAAK,GAAG,MAAM,CAAC,KAAK,EACpB,OAAO,EACP,IAAI,GAAG,SAAS,GACjB,GAAG,IAAI,IAAI,EAAE,CAAA;IAEd,MAAM,iBAAiB,GAAG,MAAM,CAAC,KAAK,IAAI,EAAE;QAC1C,IAAI,OAAO,KAAK,EAAE,IAAI,EAAE,iBAAiB,KAAK,UAAU;YACtD,OAAO,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC;gBAClC,KAAK,EAAE,MAAe;gBACtB,MAAM;gBACN,OAAO;aACiB,CAAC,CAAA;QAC7B,OAAO,KAAK,EAAE,IAAI,EAAE,iBAAiB,IAAI,GAAG,CAAA;IAC9C,CAAC,CAAC,EAAE,CAAA;IACJ,IAAI,iBAAiB,GAAG,CAAC;QAAE,MAAM,IAAI,2BAAkB,EAAE,CAAA;IAEzD,MAAM,QAAQ,GAAG,iBAAiB,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,IAAI,CAAC,CAAA;IACxE,MAAM,WAAW,GAAG,EAAE,IAAI,QAAQ,CAAA;IAClC,MAAM,QAAQ,GAAG,CAAC,IAAY,EAAE,EAAE,CAChC,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,GAAG,WAAW,CAAC,CAAC,CAAC;QAC3D,MAAM,CAAC,WAAW,CAAC,CAAA;IAErB,MAAM,KAAK,GAAG,MAAM;QAClB,CAAC,CAAC,MAAM;QACR,CAAC,CAAC,MAAM,IAAA,wBAAS,EAAC,MAAM,EAAE,sBAAQ,EAAE,UAAU,CAAC,CAAC,EAAE,CAAC,CAAA;IAErD,IAAI,OAAO,KAAK,EAAE,IAAI,EAAE,kBAAkB,KAAK,UAAU;QACvD,OAAO,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC;YACnC,KAAK,EAAE,MAAe;YACtB,MAAM;YACN,QAAQ;YACR,OAAO;YACP,IAAI;SACkC,CAAkD,CAAA;IAE5F,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;QACvB,IAAI,OAAO,KAAK,CAAC,aAAa,KAAK,QAAQ;YACzC,MAAM,IAAI,qCAA4B,EAAE,CAAA;QAE1C,MAAM,oBAAoB,GACxB,OAAO,OAAO,EAAE,oBAAoB,KAAK,QAAQ;YAC/C,CAAC,CAAC,OAAO,CAAC,oBAAoB;YAC9B,CAAC,CAAC,MAAM,IAAA,uEAAqC,EACzC,MAAkC,EAClC;gBACE,KAAK,EAAE,KAAc;gBACrB,KAAK;gBACL,OAAO;aACR,CACF,CAAA;QAEP,MAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC,aAAa,CAAC,CAAA;QACnD,MAAM,YAAY,GAChB,OAAO,EAAE,YAAY,IAAI,aAAa,GAAG,oBAAoB,CAAA;QAE/D,OAAO;YACL,YAAY;YACZ,oBAAoB;SACiB,CAAA;IACzC,CAAC;IAED,MAAM,QAAQ,GACZ,OAAO,EAAE,QAAQ;QACjB,QAAQ,CAAC,MAAM,IAAA,wBAAS,EAAC,MAAM,EAAE,4BAAW,EAAE,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IACnE,OAAO;QACL,QAAQ;KAC6B,CAAA;AACzC,CAAC;AAhFD,kEAgFC"}
1
+ {"version":3,"file":"estimateFeesPerGas.js","sourceRoot":"","sources":["../../../actions/public/estimateFeesPerGas.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.chainConfig = void 0;
4
+ const fees_js_1 = require("./fees.js");
4
5
  const formatters_js_1 = require("./formatters.js");
5
6
  const serializers_js_1 = require("./serializers.js");
6
7
  exports.chainConfig = {
7
8
  formatters: formatters_js_1.formatters,
8
9
  serializers: serializers_js_1.serializers,
10
+ fees: fees_js_1.fees,
9
11
  };
10
12
  //# sourceMappingURL=chainConfig.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chainConfig.js","sourceRoot":"","sources":["../../celo/chainConfig.ts"],"names":[],"mappings":";;;AAAA,mDAA4C;AAC5C,qDAA8C;AAEjC,QAAA,WAAW,GAAG;IACzB,UAAU,EAAV,0BAAU;IACV,WAAW,EAAX,4BAAW;CACH,CAAA"}
1
+ {"version":3,"file":"chainConfig.js","sourceRoot":"","sources":["../../celo/chainConfig.ts"],"names":[],"mappings":";;;AAAA,uCAAgC;AAChC,mDAA4C;AAC5C,qDAA8C;AAEjC,QAAA,WAAW,GAAG;IACzB,UAAU,EAAV,0BAAU;IACV,WAAW,EAAX,4BAAW;IACX,IAAI,EAAJ,cAAI;CACI,CAAA"}
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.fees = void 0;
4
+ exports.fees = {
5
+ estimateFeesPerGas: async (params) => {
6
+ if (!params.request?.feeCurrency)
7
+ return null;
8
+ const [maxFeePerGas, maxPriorityFeePerGas] = await Promise.all([
9
+ estimateFeePerGasInFeeCurrency(params.client, params.request.feeCurrency),
10
+ estimateMaxPriorityFeePerGasInFeeCurrency(params.client, params.request.feeCurrency),
11
+ ]);
12
+ return {
13
+ maxFeePerGas,
14
+ maxPriorityFeePerGas,
15
+ };
16
+ },
17
+ };
18
+ async function estimateFeePerGasInFeeCurrency(client, feeCurrency) {
19
+ const fee = await client.request({
20
+ method: 'eth_gasPrice',
21
+ params: [feeCurrency],
22
+ });
23
+ return BigInt(fee);
24
+ }
25
+ async function estimateMaxPriorityFeePerGasInFeeCurrency(client, feeCurrency) {
26
+ const feesPerGas = await client.request({
27
+ method: 'eth_maxPriorityFeePerGas',
28
+ params: [feeCurrency],
29
+ });
30
+ return BigInt(feesPerGas);
31
+ }
32
+ //# sourceMappingURL=fees.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fees.js","sourceRoot":"","sources":["../../celo/fees.ts"],"names":[],"mappings":";;;AAUa,QAAA,IAAI,GAAiC;IAUhD,kBAAkB,EAAE,KAAK,EACvB,MAA8D,EAC9D,EAAE;QACF,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,WAAW;YAAE,OAAO,IAAI,CAAA;QAE7C,MAAM,CAAC,YAAY,EAAE,oBAAoB,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC7D,8BAA8B,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC;YACzE,yCAAyC,CACvC,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,OAAO,CAAC,WAAW,CAC3B;SACF,CAAC,CAAA;QAEF,OAAO;YACL,YAAY;YACZ,oBAAoB;SACrB,CAAA;IACH,CAAC;CACF,CAAA;AAiBD,KAAK,UAAU,8BAA8B,CAC3C,MAAc,EACd,WAAoB;IAEpB,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,OAAO,CAAqC;QACnE,MAAM,EAAE,cAAc;QACtB,MAAM,EAAE,CAAC,WAAW,CAAC;KACtB,CAAC,CAAA;IACF,OAAO,MAAM,CAAC,GAAG,CAAC,CAAA;AACpB,CAAC;AAiBD,KAAK,UAAU,yCAAyC,CACtD,MAAc,EACd,WAAoB;IAEpB,MAAM,UAAU,GACd,MAAM,MAAM,CAAC,OAAO,CAAwC;QAC1D,MAAM,EAAE,0BAA0B;QAClC,MAAM,EAAE,CAAC,WAAW,CAAC;KACtB,CAAC,CAAA;IACJ,OAAO,MAAM,CAAC,UAAU,CAAC,CAAA;AAC3B,CAAC"}
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.version = void 0;
4
- exports.version = '0.0.0-main.20240329T205455';
4
+ exports.version = '0.0.0-main.20240330T155248';
5
5
  //# sourceMappingURL=version.js.map
@@ -49,14 +49,17 @@ export async function internal_estimateFeesPerGas(client, args) {
49
49
  const block = block_
50
50
  ? block_
51
51
  : await getAction(client, getBlock, 'getBlock')({});
52
- if (typeof chain?.fees?.estimateFeesPerGas === 'function')
53
- return chain.fees.estimateFeesPerGas({
52
+ if (typeof chain?.fees?.estimateFeesPerGas === 'function') {
53
+ const fees = (await chain.fees.estimateFeesPerGas({
54
54
  block: block_,
55
55
  client,
56
56
  multiply,
57
57
  request,
58
58
  type,
59
- });
59
+ }));
60
+ if (fees !== null)
61
+ return fees;
62
+ }
60
63
  if (type === 'eip1559') {
61
64
  if (typeof block.baseFeePerGas !== 'bigint')
62
65
  throw new Eip1559FeesNotSupportedError();
@@ -1 +1 @@
1
- {"version":3,"file":"estimateFeesPerGas.js","sourceRoot":"","sources":["../../../actions/public/estimateFeesPerGas.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"estimateFeesPerGas.js","sourceRoot":"","sources":["../../../actions/public/estimateFeesPerGas.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,9 @@
1
+ import { fees } from './fees.js';
1
2
  import { formatters } from './formatters.js';
2
3
  import { serializers } from './serializers.js';
3
4
  export const chainConfig = {
4
5
  formatters,
5
6
  serializers,
7
+ fees,
6
8
  };
7
9
  //# sourceMappingURL=chainConfig.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"chainConfig.js","sourceRoot":"","sources":["../../celo/chainConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAE9C,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,UAAU;IACV,WAAW;CACH,CAAA"}
1
+ {"version":3,"file":"chainConfig.js","sourceRoot":"","sources":["../../celo/chainConfig.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAE9C,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,UAAU;IACV,WAAW;IACX,IAAI;CACI,CAAA"}
@@ -0,0 +1,58 @@
1
+ import {} from '../index.js';
2
+ import { formatters } from './formatters.js';
3
+ export const fees = {
4
+ /*
5
+ * Estimates the fees per gas for a transaction.
6
+
7
+ * If the transaction is to be paid in a token (feeCurrency is present) then the fees
8
+ * are estimated in the value of the token. Otherwise falls back to the default
9
+ * estimation by returning null.
10
+ *
11
+ * @param params fee estimation function parameters
12
+ */
13
+ estimateFeesPerGas: async (params) => {
14
+ if (!params.request?.feeCurrency)
15
+ return null;
16
+ const [maxFeePerGas, maxPriorityFeePerGas] = await Promise.all([
17
+ estimateFeePerGasInFeeCurrency(params.client, params.request.feeCurrency),
18
+ estimateMaxPriorityFeePerGasInFeeCurrency(params.client, params.request.feeCurrency),
19
+ ]);
20
+ return {
21
+ maxFeePerGas,
22
+ maxPriorityFeePerGas,
23
+ };
24
+ },
25
+ };
26
+ /*
27
+ * Estimate the fee per gas in the value of the fee token
28
+
29
+ *
30
+ * @param client - Client to use
31
+ * @param feeCurrency - Address of a whitelisted fee token
32
+ * @returns The fee per gas in wei in the value of the fee token
33
+ *
34
+ */
35
+ async function estimateFeePerGasInFeeCurrency(client, feeCurrency) {
36
+ const fee = await client.request({
37
+ method: 'eth_gasPrice',
38
+ params: [feeCurrency],
39
+ });
40
+ return BigInt(fee);
41
+ }
42
+ /*
43
+ * Estimate the max priority fee per gas in the value of the fee token
44
+
45
+ *
46
+ * @param client - Client to use
47
+ * @param feeCurrency - Address of a whitelisted fee token
48
+ * @returns The fee per gas in wei in the value of the fee token
49
+ *
50
+ */
51
+ async function estimateMaxPriorityFeePerGasInFeeCurrency(client, feeCurrency) {
52
+ const feesPerGas = await client.request({
53
+ method: 'eth_maxPriorityFeePerGas',
54
+ params: [feeCurrency],
55
+ });
56
+ return BigInt(feesPerGas);
57
+ }
58
+ //# sourceMappingURL=fees.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fees.js","sourceRoot":"","sources":["../../celo/fees.ts"],"names":[],"mappings":"AACA,OAAO,EAKN,MAAM,aAAa,CAAA;AAEpB,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAA;AAE5C,MAAM,CAAC,MAAM,IAAI,GAAiC;IAChD;;;;;;;;OAQG;IACH,kBAAkB,EAAE,KAAK,EACvB,MAA8D,EAC9D,EAAE;QACF,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,WAAW;YAAE,OAAO,IAAI,CAAA;QAE7C,MAAM,CAAC,YAAY,EAAE,oBAAoB,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC7D,8BAA8B,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC;YACzE,yCAAyC,CACvC,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,OAAO,CAAC,WAAW,CAC3B;SACF,CAAC,CAAA;QAEF,OAAO;YACL,YAAY;YACZ,oBAAoB;SACrB,CAAA;IACH,CAAC;CACF,CAAA;AAQD;;;;;;;;GAQG;AACH,KAAK,UAAU,8BAA8B,CAC3C,MAAc,EACd,WAAoB;IAEpB,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,OAAO,CAAqC;QACnE,MAAM,EAAE,cAAc;QACtB,MAAM,EAAE,CAAC,WAAW,CAAC;KACtB,CAAC,CAAA;IACF,OAAO,MAAM,CAAC,GAAG,CAAC,CAAA;AACpB,CAAC;AAQD;;;;;;;;GAQG;AACH,KAAK,UAAU,yCAAyC,CACtD,MAAc,EACd,WAAoB;IAEpB,MAAM,UAAU,GACd,MAAM,MAAM,CAAC,OAAO,CAAwC;QAC1D,MAAM,EAAE,0BAA0B;QAClC,MAAM,EAAE,CAAC,WAAW,CAAC;KACtB,CAAC,CAAA;IACJ,OAAO,MAAM,CAAC,UAAU,CAAC,CAAA;AAC3B,CAAC"}
@@ -1,2 +1,2 @@
1
- export const version = '0.0.0-main.20240329T205455';
1
+ export const version = '0.0.0-main.20240330T155248';
2
2
  //# sourceMappingURL=version.js.map
@@ -3,8 +3,7 @@ import type { Transport } from '../../clients/transports/createTransport.js';
3
3
  import { type BaseFeeScalarErrorType, type Eip1559FeesNotSupportedErrorType } from '../../errors/fee.js';
4
4
  import type { ErrorType } from '../../errors/utils.js';
5
5
  import type { Block } from '../../types/block.js';
6
- import type { Chain } from '../../types/chain.js';
7
- import type { GetChainParameter } from '../../types/chain.js';
6
+ import type { Chain, GetChainParameter } from '../../types/chain.js';
8
7
  import type { FeeValuesEIP1559, FeeValuesLegacy, FeeValuesType } from '../../types/fee.js';
9
8
  import type { PrepareTransactionRequestParameters } from '../wallet/prepareTransactionRequest.js';
10
9
  import { type EstimateMaxPriorityFeePerGasErrorType } from './estimateMaxPriorityFeePerGas.js';
@@ -1 +1 @@
1
- {"version":3,"file":"estimateFeesPerGas.d.ts","sourceRoot":"","sources":["../../../actions/public/estimateFeesPerGas.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAA;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6CAA6C,CAAA;AAC5E,OAAO,EAEL,KAAK,sBAAsB,EAE3B,KAAK,gCAAgC,EACtC,MAAM,qBAAqB,CAAA;AAC5B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,KAAK,EACV,KAAK,EAGN,MAAM,sBAAsB,CAAA;AAC7B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAA;AAC7D,OAAO,KAAK,EACV,gBAAgB,EAChB,eAAe,EACf,aAAa,EACd,MAAM,oBAAoB,CAAA;AAE3B,OAAO,KAAK,EAAE,mCAAmC,EAAE,MAAM,wCAAwC,CAAA;AACjG,OAAO,EACL,KAAK,qCAAqC,EAE3C,MAAM,mCAAmC,CAAA;AAE1C,OAAO,EAAE,KAAK,oBAAoB,EAAe,MAAM,kBAAkB,CAAA;AAEzE,MAAM,MAAM,4BAA4B,CACtC,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACnD,aAAa,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EAC3D,IAAI,SAAS,aAAa,GAAG,aAAa,IACxC;IACF;;;;;;;OAOG;IACH,IAAI,CAAC,EAAE,IAAI,GAAG,aAAa,GAAG,SAAS,CAAA;CACxC,GAAG,iBAAiB,CAAC,KAAK,EAAE,aAAa,CAAC,CAAA;AAE3C,MAAM,MAAM,4BAA4B,CACtC,IAAI,SAAS,aAAa,GAAG,aAAa,IAExC,CAAC,IAAI,SAAS,QAAQ,GAAG,eAAe,GAAG,KAAK,CAAC,GACjD,CAAC,IAAI,SAAS,SAAS,GAAG,gBAAgB,GAAG,KAAK,CAAC,CAAA;AAEvD,MAAM,MAAM,2BAA2B,GACnC,sBAAsB,GACtB,qCAAqC,GACrC,oBAAoB,GACpB,gCAAgC,GAChC,SAAS,CAAA;AAEb;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAsB,kBAAkB,CACtC,KAAK,SAAS,KAAK,GAAG,SAAS,EAC/B,aAAa,SAAS,KAAK,GAAG,SAAS,EACvC,IAAI,SAAS,aAAa,GAAG,SAAS,EAEtC,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,EAChC,IAAI,CAAC,EAAE,4BAA4B,CAAC,KAAK,EAAE,aAAa,EAAE,IAAI,CAAC,GAAG,SAAS,GAC1E,OAAO,CAAC,4BAA4B,CAAC,IAAI,CAAC,CAAC,CAE7C;AAED,wBAAsB,2BAA2B,CAC/C,KAAK,SAAS,KAAK,GAAG,SAAS,EAC/B,aAAa,SAAS,KAAK,GAAG,SAAS,EACvC,IAAI,SAAS,aAAa,GAAG,SAAS,EAEtC,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,EAChC,IAAI,EAAE,4BAA4B,CAAC,KAAK,EAAE,aAAa,EAAE,IAAI,CAAC,GAAG;IAC/D,KAAK,CAAC,EAAE,KAAK,GAAG,SAAS,CAAA;IACzB,OAAO,CAAC,EAAE,mCAAmC,GAAG,SAAS,CAAA;CAC1D,GACA,OAAO,CAAC,4BAA4B,CAAC,IAAI,CAAC,CAAC,CAsE7C"}
1
+ {"version":3,"file":"estimateFeesPerGas.d.ts","sourceRoot":"","sources":["../../../actions/public/estimateFeesPerGas.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAA;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,6CAA6C,CAAA;AAC5E,OAAO,EAEL,KAAK,sBAAsB,EAE3B,KAAK,gCAAgC,EACtC,MAAM,qBAAqB,CAAA;AAC5B,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACtD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AACjD,OAAO,KAAK,EACV,KAAK,EAGL,iBAAiB,EAClB,MAAM,sBAAsB,CAAA;AAC7B,OAAO,KAAK,EACV,gBAAgB,EAChB,eAAe,EACf,aAAa,EACd,MAAM,oBAAoB,CAAA;AAE3B,OAAO,KAAK,EAAE,mCAAmC,EAAE,MAAM,wCAAwC,CAAA;AACjG,OAAO,EACL,KAAK,qCAAqC,EAE3C,MAAM,mCAAmC,CAAA;AAE1C,OAAO,EAAE,KAAK,oBAAoB,EAAe,MAAM,kBAAkB,CAAA;AAEzE,MAAM,MAAM,4BAA4B,CACtC,KAAK,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EACnD,aAAa,SAAS,KAAK,GAAG,SAAS,GAAG,KAAK,GAAG,SAAS,EAC3D,IAAI,SAAS,aAAa,GAAG,aAAa,IACxC;IACF;;;;;;;OAOG;IACH,IAAI,CAAC,EAAE,IAAI,GAAG,aAAa,GAAG,SAAS,CAAA;CACxC,GAAG,iBAAiB,CAAC,KAAK,EAAE,aAAa,CAAC,CAAA;AAE3C,MAAM,MAAM,4BAA4B,CACtC,IAAI,SAAS,aAAa,GAAG,aAAa,IAExC,CAAC,IAAI,SAAS,QAAQ,GAAG,eAAe,GAAG,KAAK,CAAC,GACjD,CAAC,IAAI,SAAS,SAAS,GAAG,gBAAgB,GAAG,KAAK,CAAC,CAAA;AAEvD,MAAM,MAAM,2BAA2B,GACnC,sBAAsB,GACtB,qCAAqC,GACrC,oBAAoB,GACpB,gCAAgC,GAChC,SAAS,CAAA;AAEb;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAsB,kBAAkB,CACtC,KAAK,SAAS,KAAK,GAAG,SAAS,EAC/B,aAAa,SAAS,KAAK,GAAG,SAAS,EACvC,IAAI,SAAS,aAAa,GAAG,SAAS,EAEtC,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,EAChC,IAAI,CAAC,EAAE,4BAA4B,CAAC,KAAK,EAAE,aAAa,EAAE,IAAI,CAAC,GAAG,SAAS,GAC1E,OAAO,CAAC,4BAA4B,CAAC,IAAI,CAAC,CAAC,CAE7C;AAED,wBAAsB,2BAA2B,CAC/C,KAAK,SAAS,KAAK,GAAG,SAAS,EAC/B,aAAa,SAAS,KAAK,GAAG,SAAS,EACvC,IAAI,SAAS,aAAa,GAAG,SAAS,EAEtC,MAAM,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,CAAC,EAChC,IAAI,EAAE,4BAA4B,CAAC,KAAK,EAAE,aAAa,EAAE,IAAI,CAAC,GAAG;IAC/D,KAAK,CAAC,EAAE,KAAK,GAAG,SAAS,CAAA;IACzB,OAAO,CAAC,EAAE,mCAAmC,GAAG,SAAS,CAAA;CAC1D,GACA,OAAO,CAAC,4BAA4B,CAAC,IAAI,CAAC,CAAC,CAyE7C"}