@keplr-wallet/hooks 0.12.69 → 0.12.71-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -16,7 +16,8 @@ export declare class IBCRecipientConfig extends RecipientConfig {
16
16
  setIsIBCTransfer(isIBCTransfer: boolean): void;
17
17
  }
18
18
  export declare const useIBCRecipientConfig: (chainGetter: ChainGetter, chainId: string, channelConfig: IIBCChannelConfig, options: {
19
- allowHexAddressOnEthermint?: boolean | undefined;
19
+ allowHexAddressToBech32Address?: boolean | undefined;
20
+ allowHexAddressOnly?: boolean | undefined;
20
21
  icns?: {
21
22
  chainId: string;
22
23
  resolverContractAddress: string;
@@ -57,7 +57,8 @@ exports.IBCRecipientConfig = IBCRecipientConfig;
57
57
  const useIBCRecipientConfig = (chainGetter, chainId, channelConfig, options = {}, isIBCTransfer) => {
58
58
  const [config] = (0, react_1.useState)(() => new IBCRecipientConfig(chainGetter, chainId, channelConfig, isIBCTransfer));
59
59
  config.setChain(chainId);
60
- config.setAllowHexAddressOnEthermint(options.allowHexAddressOnEthermint);
60
+ config.setAllowHexAddressToBech32Address(options.allowHexAddressToBech32Address);
61
+ config.setAllowHexAddressOnly(options.allowHexAddressOnly);
61
62
  config.setICNS(options.icns);
62
63
  config.setIsIBCTransfer(isIBCTransfer);
63
64
  return config;
@@ -1 +1 @@
1
- {"version":3,"file":"reciepient.js","sourceRoot":"","sources":["../../src/ibc/reciepient.ts"],"names":[],"mappings":";;;;;;;;;AAAA,8BAAsD;AAGtD,iCAAiC;AACjC,+BAAoE;AACpE,qCAA8C;AAE9C;;;;;GAKG;AACH,MAAa,kBAAmB,SAAQ,oBAAe;IAIrD,YACE,WAAwB,EACxB,cAAsB,EACH,aAAgC,EACnD,aAAsB;QAEtB,KAAK,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;QAHhB,kBAAa,GAAb,aAAa,CAAmB;QAL3C,kBAAa,GAAY,KAAK,CAAC;QAUvC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QAEnC,IAAA,qBAAc,EAAC,IAAI,CAAC,CAAC;IACvB,CAAC;IAED,IAAa,OAAO;QAClB,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YACnE,OAAO,KAAK,CAAC,OAAO,CAAC;SACtB;QAED,OAAO,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;aACvE,mBAAmB,CAAC;IACzB,CAAC;IAGD,IAAa,YAAY;QACvB,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YAClE,OAAO;gBACL,KAAK,EAAE,IAAI,2BAAkB,CAAC,iBAAiB,CAAC;aACjD,CAAC;SACH;QAED,OAAO,KAAK,CAAC,YAAY,CAAC;IAC5B,CAAC;IAGD,gBAAgB,CAAC,aAAsB;QACrC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;IACrC,CAAC;CACF;AAvCC;IADC,iBAAU;yDAC8B;AAyBzC;IADC,eAAQ;sDASR;AAGD;IADC,aAAM;0DAGN;AAxCH,gDAyCC;AAEM,MAAM,qBAAqB,GAAG,CACnC,WAAwB,EACxB,OAAe,EACf,aAAgC,EAChC,UAMI,EAAE,EACN,aAAsB,EACtB,EAAE;IACF,MAAM,CAAC,MAAM,CAAC,GAAG,IAAA,gBAAQ,EACvB,GAAG,EAAE,CACH,IAAI,kBAAkB,CAAC,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE,aAAa,CAAC,CAC7E,CAAC;IACF,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACzB,MAAM,CAAC,6BAA6B,CAAC,OAAO,CAAC,0BAA0B,CAAC,CAAC;IACzE,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,MAAM,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;IAEvC,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAvBW,QAAA,qBAAqB,yBAuBhC"}
1
+ {"version":3,"file":"reciepient.js","sourceRoot":"","sources":["../../src/ibc/reciepient.ts"],"names":[],"mappings":";;;;;;;;;AAAA,8BAAsD;AAGtD,iCAAiC;AACjC,+BAAoE;AACpE,qCAA8C;AAE9C;;;;;GAKG;AACH,MAAa,kBAAmB,SAAQ,oBAAe;IAIrD,YACE,WAAwB,EACxB,cAAsB,EACH,aAAgC,EACnD,aAAsB;QAEtB,KAAK,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;QAHhB,kBAAa,GAAb,aAAa,CAAmB;QAL3C,kBAAa,GAAY,KAAK,CAAC;QAUvC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QAEnC,IAAA,qBAAc,EAAC,IAAI,CAAC,CAAC;IACvB,CAAC;IAED,IAAa,OAAO;QAClB,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YACnE,OAAO,KAAK,CAAC,OAAO,CAAC;SACtB;QAED,OAAO,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;aACvE,mBAAmB,CAAC;IACzB,CAAC;IAGD,IAAa,YAAY;QACvB,IAAI,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;YAClE,OAAO;gBACL,KAAK,EAAE,IAAI,2BAAkB,CAAC,iBAAiB,CAAC;aACjD,CAAC;SACH;QAED,OAAO,KAAK,CAAC,YAAY,CAAC;IAC5B,CAAC;IAGD,gBAAgB,CAAC,aAAsB;QACrC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;IACrC,CAAC;CACF;AAvCC;IADC,iBAAU;yDAC8B;AAyBzC;IADC,eAAQ;sDASR;AAGD;IADC,aAAM;0DAGN;AAxCH,gDAyCC;AAEM,MAAM,qBAAqB,GAAG,CACnC,WAAwB,EACxB,OAAe,EACf,aAAgC,EAChC,UAOI,EAAE,EACN,aAAsB,EACtB,EAAE;IACF,MAAM,CAAC,MAAM,CAAC,GAAG,IAAA,gBAAQ,EACvB,GAAG,EAAE,CACH,IAAI,kBAAkB,CAAC,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE,aAAa,CAAC,CAC7E,CAAC;IACF,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACzB,MAAM,CAAC,iCAAiC,CACtC,OAAO,CAAC,8BAA8B,CACvC,CAAC;IACF,MAAM,CAAC,sBAAsB,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAC3D,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7B,MAAM,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;IAEvC,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AA3BW,QAAA,qBAAqB,yBA2BhC"}
@@ -12,7 +12,7 @@ import { ChainGetter, IQueriesStore } from "@keplr-wallet/stores";
12
12
  * @param options
13
13
  */
14
14
  export declare const useIBCTransferConfig: (chainGetter: ChainGetter, queriesStore: IQueriesStore, chainId: string, sender: string, initialGas: number, options?: {
15
- allowHexAddressOnEthermint?: boolean | undefined;
15
+ allowHexAddressToBech32Address?: boolean | undefined;
16
16
  icns?: {
17
17
  chainId: string;
18
18
  resolverContractAddress: string;
@@ -27,7 +27,8 @@ export declare const useIBCTransferConfig: (chainGetter: ChainGetter, queriesSto
27
27
  senderConfig: import("../tx").SenderConfig;
28
28
  };
29
29
  export declare const useSendMixedIBCTransferConfig: (chainGetter: ChainGetter, queriesStore: IQueriesStore, chainId: string, sender: string, initialGas: number, isIBCTransfer: boolean, options?: {
30
- allowHexAddressOnEthermint?: boolean | undefined;
30
+ allowHexAddressToBech32Address?: boolean | undefined;
31
+ allowHexAddressOnly?: boolean | undefined;
31
32
  icns?: {
32
33
  chainId: string;
33
34
  resolverContractAddress: string;
@@ -1 +1 @@
1
- {"version":3,"file":"send-ibc-transfer.js","sourceRoot":"","sources":["../../src/ibc/send-ibc-transfer.ts"],"names":[],"mappings":";;;AACA,8BAKe;AACf,qCAA8C;AAC9C,uCAAgD;AAChD,6CAAqD;AAErD;;;;;;;;;;;GAWG;AACI,MAAM,oBAAoB,GAAG,CAClC,WAAwB,EACxB,YAA2B,EAC3B,OAAe,EACf,MAAc,EACd,UAAkB,EAClB,UAMI,EAAE,EACN,EAAE;IACF,MAAM,aAAa,GAAG,IAAA,6BAAmB,GAAE,CAAC;IAE5C,MAAM,YAAY,GAAG,IAAA,oBAAe,EAAC,WAAW,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAEnE,MAAM,YAAY,GAAG,IAAA,2BAAkB,EACrC,WAAW,EACX,YAAY,EACZ,OAAO,EACP,YAAY,EACZ,aAAa,EACb,IAAI,CACL,CAAC;IAEF,MAAM,UAAU,GAAG,IAAA,kBAAa,EAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IACvD,MAAM,SAAS,GAAG,IAAA,iBAAY,EAAC,WAAW,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;IACjE,MAAM,SAAS,GAAG,IAAA,iBAAY,EAC5B,WAAW,EACX,YAAY,EACZ,OAAO,EACP,YAAY,EACZ,YAAY,EACZ,SAAS,CACV,CAAC;IAEF,YAAY,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IAErC,MAAM,eAAe,GAAG,IAAA,kCAAqB,EAC3C,WAAW,EACX,OAAO,EACP,aAAa,EACb,OAAO,EACP,IAAI,CACL,CAAC;IAEF,OAAO;QACL,YAAY;QACZ,UAAU;QACV,SAAS;QACT,SAAS;QACT,eAAe;QACf,aAAa;QACb,YAAY;KACb,CAAC;AACJ,CAAC,CAAC;AAzDW,QAAA,oBAAoB,wBAyD/B;AAEK,MAAM,6BAA6B,GAAG,CAC3C,WAAwB,EACxB,YAA2B,EAC3B,OAAe,EACf,MAAc,EACd,UAAkB,EAClB,aAAsB,EACtB,UAOI,EAAE,EACN,EAAE;IACF,MAAM,aAAa,GAAG,IAAA,6BAAmB,EAAC,CAAC,aAAa,CAAC,CAAC;IAE1D,MAAM,YAAY,GAAG,IAAA,oBAAe,EAAC,WAAW,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAEnE,MAAM,YAAY,GAAG,IAAA,2BAAkB,EACrC,WAAW,EACX,YAAY,EACZ,OAAO,EACP,YAAY,EACZ,aAAa,EACb,aAAa,CACd,CAAC;IAEF,MAAM,UAAU,GAAG,IAAA,kBAAa,EAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IACvD,MAAM,SAAS,GAAG,IAAA,iBAAY,EAAC,WAAW,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;IACjE,MAAM,SAAS,GAAG,IAAA,iBAAY,EAC5B,WAAW,EACX,YAAY,EACZ,OAAO,EACP,YAAY,EACZ,YAAY,EACZ,SAAS,EACT;QACE,sBAAsB,EAAE,aAAa;YACnC,CAAC,CAAC,KAAK;YACP,CAAC,CAAC,OAAO,CAAC,sBAAsB;KACnC,CACF,CAAC;IAEF,YAAY,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IAErC,MAAM,eAAe,GAAG,IAAA,kCAAqB,EAC3C,WAAW,EACX,OAAO,EACP,aAAa,EACb,OAAO,EACP,aAAa,CACd,CAAC;IAEF,OAAO;QACL,YAAY;QACZ,UAAU;QACV,SAAS;QACT,SAAS;QACT,eAAe;QACf,aAAa;QACb,YAAY;KACb,CAAC;AACJ,CAAC,CAAC;AAhEW,QAAA,6BAA6B,iCAgExC"}
1
+ {"version":3,"file":"send-ibc-transfer.js","sourceRoot":"","sources":["../../src/ibc/send-ibc-transfer.ts"],"names":[],"mappings":";;;AACA,8BAKe;AACf,qCAA8C;AAC9C,uCAAgD;AAChD,6CAAqD;AAErD;;;;;;;;;;;GAWG;AACI,MAAM,oBAAoB,GAAG,CAClC,WAAwB,EACxB,YAA2B,EAC3B,OAAe,EACf,MAAc,EACd,UAAkB,EAClB,UAMI,EAAE,EACN,EAAE;IACF,MAAM,aAAa,GAAG,IAAA,6BAAmB,GAAE,CAAC;IAE5C,MAAM,YAAY,GAAG,IAAA,oBAAe,EAAC,WAAW,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAEnE,MAAM,YAAY,GAAG,IAAA,2BAAkB,EACrC,WAAW,EACX,YAAY,EACZ,OAAO,EACP,YAAY,EACZ,aAAa,EACb,IAAI,CACL,CAAC;IAEF,MAAM,UAAU,GAAG,IAAA,kBAAa,EAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IACvD,MAAM,SAAS,GAAG,IAAA,iBAAY,EAAC,WAAW,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;IACjE,MAAM,SAAS,GAAG,IAAA,iBAAY,EAC5B,WAAW,EACX,YAAY,EACZ,OAAO,EACP,YAAY,EACZ,YAAY,EACZ,SAAS,CACV,CAAC;IAEF,YAAY,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IAErC,MAAM,eAAe,GAAG,IAAA,kCAAqB,EAC3C,WAAW,EACX,OAAO,EACP,aAAa,EACb,OAAO,EACP,IAAI,CACL,CAAC;IAEF,OAAO;QACL,YAAY;QACZ,UAAU;QACV,SAAS;QACT,SAAS;QACT,eAAe;QACf,aAAa;QACb,YAAY;KACb,CAAC;AACJ,CAAC,CAAC;AAzDW,QAAA,oBAAoB,wBAyD/B;AAEK,MAAM,6BAA6B,GAAG,CAC3C,WAAwB,EACxB,YAA2B,EAC3B,OAAe,EACf,MAAc,EACd,UAAkB,EAClB,aAAsB,EACtB,UAQI,EAAE,EACN,EAAE;IACF,MAAM,aAAa,GAAG,IAAA,6BAAmB,EAAC,CAAC,aAAa,CAAC,CAAC;IAE1D,MAAM,YAAY,GAAG,IAAA,oBAAe,EAAC,WAAW,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAEnE,MAAM,YAAY,GAAG,IAAA,2BAAkB,EACrC,WAAW,EACX,YAAY,EACZ,OAAO,EACP,YAAY,EACZ,aAAa,EACb,aAAa,CACd,CAAC;IAEF,MAAM,UAAU,GAAG,IAAA,kBAAa,EAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IACvD,MAAM,SAAS,GAAG,IAAA,iBAAY,EAAC,WAAW,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;IACjE,MAAM,SAAS,GAAG,IAAA,iBAAY,EAC5B,WAAW,EACX,YAAY,EACZ,OAAO,EACP,YAAY,EACZ,YAAY,EACZ,SAAS,EACT;QACE,sBAAsB,EAAE,aAAa;YACnC,CAAC,CAAC,KAAK;YACP,CAAC,CAAC,OAAO,CAAC,sBAAsB;KACnC,CACF,CAAC;IAEF,YAAY,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IAErC,MAAM,eAAe,GAAG,IAAA,kCAAqB,EAC3C,WAAW,EACX,OAAO,EACP,aAAa,EACb,OAAO,EACP,aAAa,CACd,CAAC;IAEF,OAAO;QACL,YAAY;QACZ,UAAU;QACV,SAAS;QACT,SAAS;QACT,eAAe;QACf,aAAa;QACb,YAAY;KACb,CAAC;AACJ,CAAC,CAAC;AAjEW,QAAA,6BAA6B,iCAiExC"}
package/build/tx/fee.d.ts CHANGED
@@ -45,8 +45,13 @@ export declare class FeeConfig extends TxChainSetter implements IFeeConfig {
45
45
  currency: FeeCurrency;
46
46
  }[];
47
47
  protected canOsmosisTxFeesAndReady(): boolean;
48
+ protected canEIP1559TxFeesAndReady(): boolean;
48
49
  readonly getFeeTypePrettyForFeeCurrency: (feeCurrency: FeeCurrency, feeType: FeeType) => CoinPretty;
49
50
  readonly getGasPriceForFeeCurrency: (feeCurrency: FeeCurrency, feeType: FeeType) => Dec;
51
+ readonly getEIP1559TxFees: (feeType: FeeType) => {
52
+ maxPriorityFeePerGas: Dec;
53
+ maxFeePerGas: Dec;
54
+ };
50
55
  protected populateGasPriceStep(feeCurrency: FeeCurrency, feeType: FeeType): Dec;
51
56
  get uiProperties(): UIProperties;
52
57
  }
package/build/tx/fee.js CHANGED
@@ -15,6 +15,33 @@ const mobx_utils_1 = require("mobx-utils");
15
15
  const react_1 = require("react");
16
16
  const errors_1 = require("./errors");
17
17
  const common_1 = require("@keplr-wallet/common");
18
+ const ETH_FEE_SETTINGS_BY_FEE_TYPE = {
19
+ low: {
20
+ percentile: 10,
21
+ baseFeePercentageMultiplier: new unit_1.Dec(1.1),
22
+ priorityFeePercentageMultiplier: new unit_1.Dec(0.94),
23
+ minSuggestedMaxPriorityFeePerGas: new unit_1.Dec(1000000000),
24
+ },
25
+ average: {
26
+ percentile: 20,
27
+ baseFeePercentageMultiplier: new unit_1.Dec(1.2),
28
+ priorityFeePercentageMultiplier: new unit_1.Dec(0.97),
29
+ minSuggestedMaxPriorityFeePerGas: new unit_1.Dec(1500000000),
30
+ },
31
+ high: {
32
+ percentile: 30,
33
+ baseFeePercentageMultiplier: new unit_1.Dec(1.25),
34
+ priorityFeePercentageMultiplier: new unit_1.Dec(0.98),
35
+ minSuggestedMaxPriorityFeePerGas: new unit_1.Dec(2000000000),
36
+ },
37
+ };
38
+ const ETH_FEE_HISTRORY_BLOCK_COUNT = 5;
39
+ const ETH_FEE_HISTORY_NEWEST_BLOCK = "latest";
40
+ const ETH_FEE_HISTORY_REWARD_PERCENTILES = [
41
+ ETH_FEE_SETTINGS_BY_FEE_TYPE.low.percentile,
42
+ ETH_FEE_SETTINGS_BY_FEE_TYPE.average.percentile,
43
+ ETH_FEE_SETTINGS_BY_FEE_TYPE.high.percentile,
44
+ ];
18
45
  class FeeConfig extends chain_1.TxChainSetter {
19
46
  constructor(chainGetter, queriesStore, initialChainId, senderConfig, amountConfig, gasConfig, additionAmountToNeedFee = true, computeTerraClassicTax = false) {
20
47
  super(chainGetter, initialChainId);
@@ -35,8 +62,9 @@ class FeeConfig extends chain_1.TxChainSetter {
35
62
  this._disableBalanceCheck = false;
36
63
  this.getFeeTypePrettyForFeeCurrency = (0, mobx_utils_1.computedFn)((feeCurrency, feeType) => {
37
64
  const gas = this.gasConfig.gas;
38
- const amount = this.getGasPriceForFeeCurrency(feeCurrency, feeType).mul(new unit_1.Dec(gas));
39
- return new unit_1.CoinPretty(feeCurrency, amount.roundUp()).maxDecimals(feeCurrency.coinDecimals);
65
+ const gasPrice = this.getGasPriceForFeeCurrency(feeCurrency, feeType);
66
+ const feeAmount = gasPrice.mul(new unit_1.Dec(gas));
67
+ return new unit_1.CoinPretty(feeCurrency, feeAmount.roundUp()).maxDecimals(feeCurrency.coinDecimals);
40
68
  });
41
69
  this.getGasPriceForFeeCurrency = (0, mobx_utils_1.computedFn)((feeCurrency, feeType) => {
42
70
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
@@ -94,9 +122,41 @@ class FeeConfig extends chain_1.TxChainSetter {
94
122
  }
95
123
  }
96
124
  }
125
+ if (this.canEIP1559TxFeesAndReady()) {
126
+ const { maxFeePerGas } = this.getEIP1559TxFees(feeType);
127
+ return maxFeePerGas;
128
+ }
97
129
  // TODO: Handle terra classic fee
98
130
  return this.populateGasPriceStep(feeCurrency, feeType);
99
131
  });
132
+ this.getEIP1559TxFees = (0, mobx_utils_1.computedFn)((feeType) => {
133
+ var _a, _b, _c, _d, _e;
134
+ if (this.canEIP1559TxFeesAndReady()) {
135
+ const ethereumQueries = this.queriesStore.get(this.chainId).ethereum;
136
+ const feeHistory = ethereumQueries === null || ethereumQueries === void 0 ? void 0 : ethereumQueries.queryEthereumFeeHistory.getQueryByFeeHistoryParams(ETH_FEE_HISTRORY_BLOCK_COUNT, ETH_FEE_HISTORY_NEWEST_BLOCK, ETH_FEE_HISTORY_REWARD_PERCENTILES).feeHistory;
137
+ if (feeHistory) {
138
+ const latestBaseFeePerGas = parseInt((_b = (_a = feeHistory.baseFeePerGas) === null || _a === void 0 ? void 0 : _a[feeHistory.baseFeePerGas.length - 1]) !== null && _b !== void 0 ? _b : "0");
139
+ const baseFeePerGas = new unit_1.Dec(latestBaseFeePerGas).mul(ETH_FEE_SETTINGS_BY_FEE_TYPE[feeType].baseFeePercentageMultiplier);
140
+ const priorityFeesPerGas = (_c = feeHistory.reward) === null || _c === void 0 ? void 0 : _c.map((priorityFeeByRewardPercentileIndex) => priorityFeeByRewardPercentileIndex[ETH_FEE_HISTORY_REWARD_PERCENTILES.findIndex((percentile) => percentile ===
141
+ ETH_FEE_SETTINGS_BY_FEE_TYPE[feeType].percentile)]);
142
+ const medianOfPriorityFeesPerGas = (_e = (_d = priorityFeesPerGas === null || priorityFeesPerGas === void 0 ? void 0 : priorityFeesPerGas.sort((a, b) => parseInt(a) - parseInt(b))) === null || _d === void 0 ? void 0 : _d[Math.floor((priorityFeesPerGas.length - 1) / 2)]) !== null && _e !== void 0 ? _e : "0";
143
+ const adjustedMaxPriorityFeePerGas = new unit_1.Dec(parseInt(medianOfPriorityFeesPerGas)).mul(ETH_FEE_SETTINGS_BY_FEE_TYPE[feeType].priorityFeePercentageMultiplier);
144
+ const maxPriorityFeePerGas = adjustedMaxPriorityFeePerGas.gt(ETH_FEE_SETTINGS_BY_FEE_TYPE[feeType].minSuggestedMaxPriorityFeePerGas)
145
+ ? adjustedMaxPriorityFeePerGas
146
+ : ETH_FEE_SETTINGS_BY_FEE_TYPE[feeType]
147
+ .minSuggestedMaxPriorityFeePerGas;
148
+ const maxFeePerGas = baseFeePerGas.add(maxPriorityFeePerGas);
149
+ return {
150
+ maxPriorityFeePerGas: maxPriorityFeePerGas.truncateDec(),
151
+ maxFeePerGas: maxFeePerGas.truncateDec(),
152
+ };
153
+ }
154
+ }
155
+ return {
156
+ maxPriorityFeePerGas: new unit_1.Dec(0),
157
+ maxFeePerGas: new unit_1.Dec(0),
158
+ };
159
+ });
100
160
  this.additionAmountToNeedFee = additionAmountToNeedFee;
101
161
  this.computeTerraClassicTax = computeTerraClassicTax;
102
162
  (0, mobx_1.makeObservable)(this);
@@ -316,6 +376,21 @@ class FeeConfig extends chain_1.TxChainSetter {
316
376
  }
317
377
  return false;
318
378
  }
379
+ canEIP1559TxFeesAndReady() {
380
+ if (this.chainInfo.evm) {
381
+ const queries = this.queriesStore.get(this.chainId);
382
+ if (!queries.ethereum) {
383
+ console.log("Chain supports EVM. But no ethereum queries provided.");
384
+ return false;
385
+ }
386
+ const feeHistory = queries.ethereum.queryEthereumFeeHistory.getQueryByFeeHistoryParams(ETH_FEE_HISTRORY_BLOCK_COUNT, ETH_FEE_HISTORY_NEWEST_BLOCK, ETH_FEE_HISTORY_REWARD_PERCENTILES).feeHistory;
387
+ const latestBlock = queries.ethereum.queryEthereumBlock.getQueryByBlockNumberOrTag(ETH_FEE_HISTORY_NEWEST_BLOCK).block;
388
+ if ((feeHistory === null || feeHistory === void 0 ? void 0 : feeHistory.baseFeePerGas) && (latestBlock === null || latestBlock === void 0 ? void 0 : latestBlock.baseFeePerGas)) {
389
+ return true;
390
+ }
391
+ }
392
+ return false;
393
+ }
319
394
  populateGasPriceStep(feeCurrency, feeType) {
320
395
  var _a;
321
396
  const gasPriceStep = (_a = feeCurrency.gasPriceStep) !== null && _a !== void 0 ? _a : types_1.DefaultGasPriceStep;
@@ -1 +1 @@
1
- {"version":3,"file":"fee.js","sourceRoot":"","sources":["../../src/tx/fee.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fee.js","sourceRoot":"","sources":["../../src/tx/fee.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { CosmosQueriesImpl, IQueriesStore, OsmosisQueries } from "@keplr-wallet/stores";
2
2
  import { KeplrETCQueriesImpl } from "@keplr-wallet/stores-etc";
3
- export type QueriesStore = IQueriesStore<Partial<OsmosisQueries> & {
3
+ import { EthereumQueries } from "@keplr-wallet/stores-eth";
4
+ export type QueriesStore = IQueriesStore<Partial<OsmosisQueries> & Partial<EthereumQueries> & {
4
5
  cosmos?: Pick<CosmosQueriesImpl, "queryDelegations">;
5
6
  } & {
6
7
  keplrETC?: Pick<KeplrETCQueriesImpl, "queryTerraClassicTaxRate" | "queryTerraClassicTaxCaps">;
@@ -8,7 +8,8 @@ interface ICNSFetchData {
8
8
  }
9
9
  export declare class RecipientConfig extends TxChainSetter implements IRecipientConfig, IRecipientConfigWithICNS {
10
10
  protected _value: string;
11
- protected _allowHexAddressOnEthermint: boolean | undefined;
11
+ protected _allowHexAddressToBech32Address: boolean | undefined;
12
+ protected _allowHexAddressOnly: boolean | undefined;
12
13
  protected _bech32Prefix: string | undefined;
13
14
  protected _icns: {
14
15
  chainId: string;
@@ -28,13 +29,16 @@ export declare class RecipientConfig extends TxChainSetter implements IRecipient
28
29
  get isICNSFetching(): boolean;
29
30
  get icnsExpectedBech32Prefix(): string;
30
31
  get recipient(): string;
31
- setAllowHexAddressOnEthermint(value: boolean | undefined): void;
32
+ setAllowHexAddressToBech32Address(value: boolean | undefined): void;
33
+ setAllowHexAddressOnly(value: boolean | undefined): void;
32
34
  get uiProperties(): UIProperties;
33
35
  get value(): string;
34
36
  setValue(value: string): void;
37
+ get isRecipientEthereumHexAddress(): boolean;
35
38
  }
36
39
  export declare const useRecipientConfig: (chainGetter: ChainGetter, chainId: string, options?: {
37
- allowHexAddressOnEthermint?: boolean | undefined;
40
+ allowHexAddressToBech32Address?: boolean | undefined;
41
+ allowHexAddressOnly?: boolean | undefined;
38
42
  icns?: {
39
43
  chainId: string;
40
44
  resolverContractAddress: string;
@@ -8,18 +8,19 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.useRecipientConfig = exports.RecipientConfig = void 0;
10
10
  const chain_1 = require("./chain");
11
+ const stores_eth_1 = require("@keplr-wallet/stores-eth");
11
12
  const mobx_1 = require("mobx");
12
13
  const errors_1 = require("./errors");
13
14
  const cosmos_1 = require("@keplr-wallet/cosmos");
14
15
  const react_1 = require("react");
15
- const address_1 = require("@ethersproject/address");
16
16
  const buffer_1 = require("buffer/");
17
17
  const common_1 = require("@keplr-wallet/common");
18
18
  class RecipientConfig extends chain_1.TxChainSetter {
19
19
  constructor(chainGetter, initialChainId) {
20
20
  super(chainGetter, initialChainId);
21
21
  this._value = "";
22
- this._allowHexAddressOnEthermint = undefined;
22
+ this._allowHexAddressToBech32Address = undefined;
23
+ this._allowHexAddressOnly = undefined;
23
24
  this._bech32Prefix = undefined;
24
25
  // Deep equal check is required to avoid infinite re-render.
25
26
  this._icns = undefined;
@@ -117,28 +118,24 @@ class RecipientConfig extends chain_1.TxChainSetter {
117
118
  return "";
118
119
  }
119
120
  }
120
- if (this._allowHexAddressOnEthermint) {
121
- const chainInfo = this.chainInfo;
122
- const hasEthereumAddress = chainInfo.bip44.coinType === 60 ||
123
- !!((_a = chainInfo.features) === null || _a === void 0 ? void 0 : _a.includes("eth-address-gen")) ||
124
- !!((_b = chainInfo.features) === null || _b === void 0 ? void 0 : _b.includes("eth-key-sign"));
125
- if (hasEthereumAddress && rawRecipient.startsWith("0x")) {
126
- try {
127
- if ((0, address_1.isAddress)(rawRecipient)) {
128
- const buf = buffer_1.Buffer.from(rawRecipient.replace("0x", "").toLowerCase(), "hex");
129
- return new cosmos_1.Bech32Address(buf).toBech32(this.bech32Prefix);
130
- }
131
- }
132
- catch (_d) {
133
- return "";
134
- }
135
- return "";
136
- }
121
+ const chainInfo = this.chainInfo;
122
+ const isEvmChain = !!stores_eth_1.EthereumAccountBase.evmInfo(this.chainInfo);
123
+ const hasEthereumAddress = chainInfo.bip44.coinType === 60 ||
124
+ !!((_a = chainInfo.features) === null || _a === void 0 ? void 0 : _a.includes("eth-address-gen")) ||
125
+ !!((_b = chainInfo.features) === null || _b === void 0 ? void 0 : _b.includes("eth-key-sign")) ||
126
+ isEvmChain;
127
+ if (hasEthereumAddress &&
128
+ stores_eth_1.EthereumAccountBase.isEthereumHexAddressWithChecksum(rawRecipient) &&
129
+ this._allowHexAddressToBech32Address) {
130
+ return new cosmos_1.Bech32Address(buffer_1.Buffer.from(rawRecipient.replace("0x", "").toLowerCase(), "hex")).toBech32(this.bech32Prefix);
137
131
  }
138
132
  return rawRecipient;
139
133
  }
140
- setAllowHexAddressOnEthermint(value) {
141
- this._allowHexAddressOnEthermint = value;
134
+ setAllowHexAddressToBech32Address(value) {
135
+ this._allowHexAddressToBech32Address = value;
136
+ }
137
+ setAllowHexAddressOnly(value) {
138
+ this._allowHexAddressOnly = value;
142
139
  }
143
140
  get uiProperties() {
144
141
  var _a, _b;
@@ -176,27 +173,21 @@ class RecipientConfig extends chain_1.TxChainSetter {
176
173
  };
177
174
  }
178
175
  }
179
- if (this._allowHexAddressOnEthermint) {
180
- const chainInfo = this.chainInfo;
181
- const hasEthereumAddress = chainInfo.bip44.coinType === 60 ||
182
- !!((_a = chainInfo.features) === null || _a === void 0 ? void 0 : _a.includes("eth-address-gen")) ||
183
- !!((_b = chainInfo.features) === null || _b === void 0 ? void 0 : _b.includes("eth-key-sign"));
184
- if (hasEthereumAddress && rawRecipient.startsWith("0x")) {
185
- try {
186
- if ((0, address_1.isAddress)(rawRecipient)) {
187
- return {};
188
- }
189
- else {
190
- return {
191
- error: new errors_1.InvalidHexError("Invalid hex address for chain"),
192
- };
193
- }
194
- }
195
- catch (e) {
196
- return {
197
- error: e,
198
- };
199
- }
176
+ const chainInfo = this.chainInfo;
177
+ const isEvmChain = !!stores_eth_1.EthereumAccountBase.evmInfo(this.chainInfo);
178
+ const hasEthereumAddress = chainInfo.bip44.coinType === 60 ||
179
+ !!((_a = chainInfo.features) === null || _a === void 0 ? void 0 : _a.includes("eth-address-gen")) ||
180
+ !!((_b = chainInfo.features) === null || _b === void 0 ? void 0 : _b.includes("eth-key-sign")) ||
181
+ isEvmChain;
182
+ if (hasEthereumAddress &&
183
+ (rawRecipient.startsWith("0x") || this._allowHexAddressOnly)) {
184
+ if (stores_eth_1.EthereumAccountBase.isEthereumHexAddressWithChecksum(rawRecipient)) {
185
+ return {};
186
+ }
187
+ else {
188
+ return {
189
+ error: new errors_1.InvalidHexError("Invalid hex address for chain"),
190
+ };
200
191
  }
201
192
  }
202
193
  try {
@@ -215,13 +206,20 @@ class RecipientConfig extends chain_1.TxChainSetter {
215
206
  setValue(value) {
216
207
  this._value = value;
217
208
  }
209
+ get isRecipientEthereumHexAddress() {
210
+ const rawRecipient = this.value.trim();
211
+ return stores_eth_1.EthereumAccountBase.isEthereumHexAddressWithChecksum(rawRecipient);
212
+ }
218
213
  }
219
214
  __decorate([
220
215
  mobx_1.observable
221
216
  ], RecipientConfig.prototype, "_value", void 0);
222
217
  __decorate([
223
218
  mobx_1.observable
224
- ], RecipientConfig.prototype, "_allowHexAddressOnEthermint", void 0);
219
+ ], RecipientConfig.prototype, "_allowHexAddressToBech32Address", void 0);
220
+ __decorate([
221
+ mobx_1.observable
222
+ ], RecipientConfig.prototype, "_allowHexAddressOnly", void 0);
225
223
  __decorate([
226
224
  mobx_1.observable
227
225
  ], RecipientConfig.prototype, "_bech32Prefix", void 0);
@@ -248,18 +246,25 @@ __decorate([
248
246
  ], RecipientConfig.prototype, "isICNSFetching", null);
249
247
  __decorate([
250
248
  mobx_1.action
251
- ], RecipientConfig.prototype, "setAllowHexAddressOnEthermint", null);
249
+ ], RecipientConfig.prototype, "setAllowHexAddressToBech32Address", null);
250
+ __decorate([
251
+ mobx_1.action
252
+ ], RecipientConfig.prototype, "setAllowHexAddressOnly", null);
252
253
  __decorate([
253
254
  mobx_1.computed
254
255
  ], RecipientConfig.prototype, "uiProperties", null);
255
256
  __decorate([
256
257
  mobx_1.action
257
258
  ], RecipientConfig.prototype, "setValue", null);
259
+ __decorate([
260
+ mobx_1.computed
261
+ ], RecipientConfig.prototype, "isRecipientEthereumHexAddress", null);
258
262
  exports.RecipientConfig = RecipientConfig;
259
263
  const useRecipientConfig = (chainGetter, chainId, options = {}) => {
260
264
  const [config] = (0, react_1.useState)(() => new RecipientConfig(chainGetter, chainId));
261
265
  config.setChain(chainId);
262
- config.setAllowHexAddressOnEthermint(options.allowHexAddressOnEthermint);
266
+ config.setAllowHexAddressToBech32Address(options.allowHexAddressToBech32Address);
267
+ config.setAllowHexAddressToBech32Address(options.allowHexAddressOnly);
263
268
  config.setICNS(options.icns);
264
269
  return config;
265
270
  };
@@ -1 +1 @@
1
- {"version":3,"file":"recipient.js","sourceRoot":"","sources":["../../src/tx/recipient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"recipient.js","sourceRoot":"","sources":["../../src/tx/recipient.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { ChainGetter } from "@keplr-wallet/stores";
2
2
  import { QueriesStore } from "./internal";
3
3
  export declare const useSendTxConfig: (chainGetter: ChainGetter, queriesStore: QueriesStore, chainId: string, sender: string, initialGas: number, options?: {
4
- allowHexAddressOnEthermint?: boolean | undefined;
4
+ allowHexAddressToBech32Address?: boolean | undefined;
5
5
  icns?: {
6
6
  chainId: string;
7
7
  resolverContractAddress: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@keplr-wallet/hooks",
3
- "version": "0.12.69",
3
+ "version": "0.12.71-rc.0",
4
4
  "main": "build/index.js",
5
5
  "author": "chainapsis",
6
6
  "license": "Apache-2.0",
@@ -17,16 +17,16 @@
17
17
  },
18
18
  "dependencies": {
19
19
  "@ethersproject/address": "^5.6.0",
20
- "@keplr-wallet/background": "0.12.69",
21
- "@keplr-wallet/common": "0.12.69",
22
- "@keplr-wallet/cosmos": "0.12.69",
23
- "@keplr-wallet/crypto": "0.12.69",
24
- "@keplr-wallet/proto-types": "0.12.69",
25
- "@keplr-wallet/simple-fetch": "0.12.69",
26
- "@keplr-wallet/stores": "0.12.69",
27
- "@keplr-wallet/stores-etc": "0.12.69",
28
- "@keplr-wallet/types": "0.12.69",
29
- "@keplr-wallet/unit": "0.12.69",
20
+ "@keplr-wallet/background": "0.12.71-rc.0",
21
+ "@keplr-wallet/common": "0.12.71-rc.0",
22
+ "@keplr-wallet/cosmos": "0.12.71-rc.0",
23
+ "@keplr-wallet/crypto": "0.12.71-rc.0",
24
+ "@keplr-wallet/proto-types": "0.12.71-rc.0",
25
+ "@keplr-wallet/simple-fetch": "0.12.71-rc.0",
26
+ "@keplr-wallet/stores": "0.12.71-rc.0",
27
+ "@keplr-wallet/stores-etc": "0.12.71-rc.0",
28
+ "@keplr-wallet/types": "0.12.71-rc.0",
29
+ "@keplr-wallet/unit": "0.12.71-rc.0",
30
30
  "buffer": "^6.0.3",
31
31
  "long": "^4.0.0",
32
32
  "utility-types": "^3.10.0"
@@ -36,5 +36,5 @@
36
36
  "mobx-utils": "^6",
37
37
  "react": "^16.8.0 || ^17 || ^18"
38
38
  },
39
- "gitHead": "8d79f9aa5a77fc822cdcab75b8992376f7af1d1a"
39
+ "gitHead": "5a94681ed08ad2c2fe2ef3edb33a1c7cf6fa0dfc"
40
40
  }
@@ -59,7 +59,8 @@ export const useIBCRecipientConfig = (
59
59
  chainId: string,
60
60
  channelConfig: IIBCChannelConfig,
61
61
  options: {
62
- allowHexAddressOnEthermint?: boolean;
62
+ allowHexAddressToBech32Address?: boolean;
63
+ allowHexAddressOnly?: boolean;
63
64
  icns?: {
64
65
  chainId: string;
65
66
  resolverContractAddress: string;
@@ -72,7 +73,10 @@ export const useIBCRecipientConfig = (
72
73
  new IBCRecipientConfig(chainGetter, chainId, channelConfig, isIBCTransfer)
73
74
  );
74
75
  config.setChain(chainId);
75
- config.setAllowHexAddressOnEthermint(options.allowHexAddressOnEthermint);
76
+ config.setAllowHexAddressToBech32Address(
77
+ options.allowHexAddressToBech32Address
78
+ );
79
+ config.setAllowHexAddressOnly(options.allowHexAddressOnly);
76
80
  config.setICNS(options.icns);
77
81
  config.setIsIBCTransfer(isIBCTransfer);
78
82
 
@@ -28,7 +28,7 @@ export const useIBCTransferConfig = (
28
28
  sender: string,
29
29
  initialGas: number,
30
30
  options: {
31
- allowHexAddressOnEthermint?: boolean;
31
+ allowHexAddressToBech32Address?: boolean;
32
32
  icns?: {
33
33
  chainId: string;
34
34
  resolverContractAddress: string;
@@ -88,7 +88,8 @@ export const useSendMixedIBCTransferConfig = (
88
88
  initialGas: number,
89
89
  isIBCTransfer: boolean,
90
90
  options: {
91
- allowHexAddressOnEthermint?: boolean;
91
+ allowHexAddressToBech32Address?: boolean;
92
+ allowHexAddressOnly?: boolean;
92
93
  icns?: {
93
94
  chainId: string;
94
95
  resolverContractAddress: string;
package/src/tx/fee.ts CHANGED
@@ -18,6 +18,42 @@ import { InsufficientFeeError } from "./errors";
18
18
  import { QueriesStore } from "./internal";
19
19
  import { DenomHelper } from "@keplr-wallet/common";
20
20
 
21
+ const ETH_FEE_SETTINGS_BY_FEE_TYPE: Record<
22
+ FeeType,
23
+ {
24
+ percentile: number;
25
+ baseFeePercentageMultiplier: Dec;
26
+ priorityFeePercentageMultiplier: Dec;
27
+ minSuggestedMaxPriorityFeePerGas: Dec;
28
+ }
29
+ > = {
30
+ low: {
31
+ percentile: 10,
32
+ baseFeePercentageMultiplier: new Dec(1.1),
33
+ priorityFeePercentageMultiplier: new Dec(0.94),
34
+ minSuggestedMaxPriorityFeePerGas: new Dec(1_000_000_000),
35
+ },
36
+ average: {
37
+ percentile: 20,
38
+ baseFeePercentageMultiplier: new Dec(1.2),
39
+ priorityFeePercentageMultiplier: new Dec(0.97),
40
+ minSuggestedMaxPriorityFeePerGas: new Dec(1_500_000_000),
41
+ },
42
+ high: {
43
+ percentile: 30,
44
+ baseFeePercentageMultiplier: new Dec(1.25),
45
+ priorityFeePercentageMultiplier: new Dec(0.98),
46
+ minSuggestedMaxPriorityFeePerGas: new Dec(2_000_000_000),
47
+ },
48
+ };
49
+ const ETH_FEE_HISTRORY_BLOCK_COUNT = 5;
50
+ const ETH_FEE_HISTORY_NEWEST_BLOCK = "latest";
51
+ const ETH_FEE_HISTORY_REWARD_PERCENTILES = [
52
+ ETH_FEE_SETTINGS_BY_FEE_TYPE.low.percentile,
53
+ ETH_FEE_SETTINGS_BY_FEE_TYPE.average.percentile,
54
+ ETH_FEE_SETTINGS_BY_FEE_TYPE.high.percentile,
55
+ ];
56
+
21
57
  export class FeeConfig extends TxChainSetter implements IFeeConfig {
22
58
  @observable.ref
23
59
  protected _fee:
@@ -373,14 +409,40 @@ export class FeeConfig extends TxChainSetter implements IFeeConfig {
373
409
  return false;
374
410
  }
375
411
 
412
+ protected canEIP1559TxFeesAndReady(): boolean {
413
+ if (this.chainInfo.evm) {
414
+ const queries = this.queriesStore.get(this.chainId);
415
+ if (!queries.ethereum) {
416
+ console.log("Chain supports EVM. But no ethereum queries provided.");
417
+ return false;
418
+ }
419
+
420
+ const feeHistory =
421
+ queries.ethereum.queryEthereumFeeHistory.getQueryByFeeHistoryParams(
422
+ ETH_FEE_HISTRORY_BLOCK_COUNT,
423
+ ETH_FEE_HISTORY_NEWEST_BLOCK,
424
+ ETH_FEE_HISTORY_REWARD_PERCENTILES
425
+ ).feeHistory;
426
+ const latestBlock =
427
+ queries.ethereum.queryEthereumBlock.getQueryByBlockNumberOrTag(
428
+ ETH_FEE_HISTORY_NEWEST_BLOCK
429
+ ).block;
430
+
431
+ if (feeHistory?.baseFeePerGas && latestBlock?.baseFeePerGas) {
432
+ return true;
433
+ }
434
+ }
435
+
436
+ return false;
437
+ }
438
+
376
439
  readonly getFeeTypePrettyForFeeCurrency = computedFn(
377
440
  (feeCurrency: FeeCurrency, feeType: FeeType) => {
378
441
  const gas = this.gasConfig.gas;
379
- const amount = this.getGasPriceForFeeCurrency(feeCurrency, feeType).mul(
380
- new Dec(gas)
381
- );
442
+ const gasPrice = this.getGasPriceForFeeCurrency(feeCurrency, feeType);
443
+ const feeAmount = gasPrice.mul(new Dec(gas));
382
444
 
383
- return new CoinPretty(feeCurrency, amount.roundUp()).maxDecimals(
445
+ return new CoinPretty(feeCurrency, feeAmount.roundUp()).maxDecimals(
384
446
  feeCurrency.coinDecimals
385
447
  );
386
448
  }
@@ -488,12 +550,74 @@ export class FeeConfig extends TxChainSetter implements IFeeConfig {
488
550
  }
489
551
  }
490
552
 
553
+ if (this.canEIP1559TxFeesAndReady()) {
554
+ const { maxFeePerGas } = this.getEIP1559TxFees(feeType);
555
+
556
+ return maxFeePerGas;
557
+ }
558
+
491
559
  // TODO: Handle terra classic fee
492
560
 
493
561
  return this.populateGasPriceStep(feeCurrency, feeType);
494
562
  }
495
563
  );
496
564
 
565
+ readonly getEIP1559TxFees = computedFn((feeType: FeeType) => {
566
+ if (this.canEIP1559TxFeesAndReady()) {
567
+ const ethereumQueries = this.queriesStore.get(this.chainId).ethereum;
568
+ const feeHistory =
569
+ ethereumQueries?.queryEthereumFeeHistory.getQueryByFeeHistoryParams(
570
+ ETH_FEE_HISTRORY_BLOCK_COUNT,
571
+ ETH_FEE_HISTORY_NEWEST_BLOCK,
572
+ ETH_FEE_HISTORY_REWARD_PERCENTILES
573
+ ).feeHistory;
574
+ if (feeHistory) {
575
+ const latestBaseFeePerGas = parseInt(
576
+ feeHistory.baseFeePerGas?.[feeHistory.baseFeePerGas.length - 1] ?? "0"
577
+ );
578
+ const baseFeePerGas = new Dec(latestBaseFeePerGas).mul(
579
+ ETH_FEE_SETTINGS_BY_FEE_TYPE[feeType].baseFeePercentageMultiplier
580
+ );
581
+ const priorityFeesPerGas = feeHistory.reward?.map(
582
+ (priorityFeeByRewardPercentileIndex) =>
583
+ priorityFeeByRewardPercentileIndex[
584
+ ETH_FEE_HISTORY_REWARD_PERCENTILES.findIndex(
585
+ (percentile) =>
586
+ percentile ===
587
+ ETH_FEE_SETTINGS_BY_FEE_TYPE[feeType].percentile
588
+ )
589
+ ]
590
+ );
591
+ const medianOfPriorityFeesPerGas =
592
+ priorityFeesPerGas?.sort((a, b) => parseInt(a) - parseInt(b))?.[
593
+ Math.floor((priorityFeesPerGas.length - 1) / 2)
594
+ ] ?? "0";
595
+ const adjustedMaxPriorityFeePerGas = new Dec(
596
+ parseInt(medianOfPriorityFeesPerGas)
597
+ ).mul(
598
+ ETH_FEE_SETTINGS_BY_FEE_TYPE[feeType].priorityFeePercentageMultiplier
599
+ );
600
+ const maxPriorityFeePerGas = adjustedMaxPriorityFeePerGas.gt(
601
+ ETH_FEE_SETTINGS_BY_FEE_TYPE[feeType].minSuggestedMaxPriorityFeePerGas
602
+ )
603
+ ? adjustedMaxPriorityFeePerGas
604
+ : ETH_FEE_SETTINGS_BY_FEE_TYPE[feeType]
605
+ .minSuggestedMaxPriorityFeePerGas;
606
+ const maxFeePerGas = baseFeePerGas.add(maxPriorityFeePerGas);
607
+
608
+ return {
609
+ maxPriorityFeePerGas: maxPriorityFeePerGas.truncateDec(),
610
+ maxFeePerGas: maxFeePerGas.truncateDec(),
611
+ };
612
+ }
613
+ }
614
+
615
+ return {
616
+ maxPriorityFeePerGas: new Dec(0),
617
+ maxFeePerGas: new Dec(0),
618
+ };
619
+ });
620
+
497
621
  protected populateGasPriceStep(
498
622
  feeCurrency: FeeCurrency,
499
623
  feeType: FeeType
@@ -4,14 +4,16 @@ import {
4
4
  OsmosisQueries,
5
5
  } from "@keplr-wallet/stores";
6
6
  import { KeplrETCQueriesImpl } from "@keplr-wallet/stores-etc";
7
+ import { EthereumQueries } from "@keplr-wallet/stores-eth";
7
8
 
8
9
  export type QueriesStore = IQueriesStore<
9
- Partial<OsmosisQueries> & {
10
- cosmos?: Pick<CosmosQueriesImpl, "queryDelegations">;
11
- } & {
12
- keplrETC?: Pick<
13
- KeplrETCQueriesImpl,
14
- "queryTerraClassicTaxRate" | "queryTerraClassicTaxCaps"
15
- >;
16
- }
10
+ Partial<OsmosisQueries> &
11
+ Partial<EthereumQueries> & {
12
+ cosmos?: Pick<CosmosQueriesImpl, "queryDelegations">;
13
+ } & {
14
+ keplrETC?: Pick<
15
+ KeplrETCQueriesImpl,
16
+ "queryTerraClassicTaxRate" | "queryTerraClassicTaxCaps"
17
+ >;
18
+ }
17
19
  >;
@@ -5,6 +5,7 @@ import {
5
5
  } from "./types";
6
6
  import { TxChainSetter } from "./chain";
7
7
  import { ChainGetter } from "@keplr-wallet/stores";
8
+ import { EthereumAccountBase } from "@keplr-wallet/stores-eth";
8
9
  import {
9
10
  action,
10
11
  computed,
@@ -20,7 +21,6 @@ import {
20
21
  } from "./errors";
21
22
  import { Bech32Address, ChainIdHelper } from "@keplr-wallet/cosmos";
22
23
  import { useState } from "react";
23
- import { isAddress } from "@ethersproject/address";
24
24
  import { Buffer } from "buffer/";
25
25
  import { validateICNSName } from "@keplr-wallet/common";
26
26
 
@@ -38,7 +38,10 @@ export class RecipientConfig
38
38
  protected _value: string = "";
39
39
 
40
40
  @observable
41
- protected _allowHexAddressOnEthermint: boolean | undefined = undefined;
41
+ protected _allowHexAddressToBech32Address: boolean | undefined = undefined;
42
+
43
+ @observable
44
+ protected _allowHexAddressOnly: boolean | undefined = undefined;
42
45
 
43
46
  @observable
44
47
  protected _bech32Prefix: string | undefined = undefined;
@@ -178,34 +181,34 @@ export class RecipientConfig
178
181
  }
179
182
  }
180
183
 
181
- if (this._allowHexAddressOnEthermint) {
182
- const chainInfo = this.chainInfo;
183
- const hasEthereumAddress =
184
- chainInfo.bip44.coinType === 60 ||
185
- !!chainInfo.features?.includes("eth-address-gen") ||
186
- !!chainInfo.features?.includes("eth-key-sign");
187
- if (hasEthereumAddress && rawRecipient.startsWith("0x")) {
188
- try {
189
- if (isAddress(rawRecipient)) {
190
- const buf = Buffer.from(
191
- rawRecipient.replace("0x", "").toLowerCase(),
192
- "hex"
193
- );
194
- return new Bech32Address(buf).toBech32(this.bech32Prefix);
195
- }
196
- } catch {
197
- return "";
198
- }
199
- return "";
200
- }
184
+ const chainInfo = this.chainInfo;
185
+ const isEvmChain = !!EthereumAccountBase.evmInfo(this.chainInfo);
186
+ const hasEthereumAddress =
187
+ chainInfo.bip44.coinType === 60 ||
188
+ !!chainInfo.features?.includes("eth-address-gen") ||
189
+ !!chainInfo.features?.includes("eth-key-sign") ||
190
+ isEvmChain;
191
+ if (
192
+ hasEthereumAddress &&
193
+ EthereumAccountBase.isEthereumHexAddressWithChecksum(rawRecipient) &&
194
+ this._allowHexAddressToBech32Address
195
+ ) {
196
+ return new Bech32Address(
197
+ Buffer.from(rawRecipient.replace("0x", "").toLowerCase(), "hex")
198
+ ).toBech32(this.bech32Prefix);
201
199
  }
202
200
 
203
201
  return rawRecipient;
204
202
  }
205
203
 
206
204
  @action
207
- setAllowHexAddressOnEthermint(value: boolean | undefined) {
208
- this._allowHexAddressOnEthermint = value;
205
+ setAllowHexAddressToBech32Address(value: boolean | undefined) {
206
+ this._allowHexAddressToBech32Address = value;
207
+ }
208
+
209
+ @action
210
+ setAllowHexAddressOnly(value: boolean | undefined) {
211
+ this._allowHexAddressOnly = value;
209
212
  }
210
213
 
211
214
  @computed
@@ -254,26 +257,23 @@ export class RecipientConfig
254
257
  }
255
258
  }
256
259
 
257
- if (this._allowHexAddressOnEthermint) {
258
- const chainInfo = this.chainInfo;
259
- const hasEthereumAddress =
260
- chainInfo.bip44.coinType === 60 ||
261
- !!chainInfo.features?.includes("eth-address-gen") ||
262
- !!chainInfo.features?.includes("eth-key-sign");
263
- if (hasEthereumAddress && rawRecipient.startsWith("0x")) {
264
- try {
265
- if (isAddress(rawRecipient)) {
266
- return {};
267
- } else {
268
- return {
269
- error: new InvalidHexError("Invalid hex address for chain"),
270
- };
271
- }
272
- } catch (e) {
273
- return {
274
- error: e,
275
- };
276
- }
260
+ const chainInfo = this.chainInfo;
261
+ const isEvmChain = !!EthereumAccountBase.evmInfo(this.chainInfo);
262
+ const hasEthereumAddress =
263
+ chainInfo.bip44.coinType === 60 ||
264
+ !!chainInfo.features?.includes("eth-address-gen") ||
265
+ !!chainInfo.features?.includes("eth-key-sign") ||
266
+ isEvmChain;
267
+ if (
268
+ hasEthereumAddress &&
269
+ (rawRecipient.startsWith("0x") || this._allowHexAddressOnly)
270
+ ) {
271
+ if (EthereumAccountBase.isEthereumHexAddressWithChecksum(rawRecipient)) {
272
+ return {};
273
+ } else {
274
+ return {
275
+ error: new InvalidHexError("Invalid hex address for chain"),
276
+ };
277
277
  }
278
278
  }
279
279
 
@@ -297,13 +297,20 @@ export class RecipientConfig
297
297
  setValue(value: string): void {
298
298
  this._value = value;
299
299
  }
300
+
301
+ @computed
302
+ get isRecipientEthereumHexAddress(): boolean {
303
+ const rawRecipient = this.value.trim();
304
+ return EthereumAccountBase.isEthereumHexAddressWithChecksum(rawRecipient);
305
+ }
300
306
  }
301
307
 
302
308
  export const useRecipientConfig = (
303
309
  chainGetter: ChainGetter,
304
310
  chainId: string,
305
311
  options: {
306
- allowHexAddressOnEthermint?: boolean;
312
+ allowHexAddressToBech32Address?: boolean;
313
+ allowHexAddressOnly?: boolean;
307
314
  icns?: {
308
315
  chainId: string;
309
316
  resolverContractAddress: string;
@@ -312,7 +319,10 @@ export const useRecipientConfig = (
312
319
  ) => {
313
320
  const [config] = useState(() => new RecipientConfig(chainGetter, chainId));
314
321
  config.setChain(chainId);
315
- config.setAllowHexAddressOnEthermint(options.allowHexAddressOnEthermint);
322
+ config.setAllowHexAddressToBech32Address(
323
+ options.allowHexAddressToBech32Address
324
+ );
325
+ config.setAllowHexAddressToBech32Address(options.allowHexAddressOnly);
316
326
  config.setICNS(options.icns);
317
327
 
318
328
  return config;
package/src/tx/send-tx.ts CHANGED
@@ -16,7 +16,7 @@ export const useSendTxConfig = (
16
16
  sender: string,
17
17
  initialGas: number,
18
18
  options: {
19
- allowHexAddressOnEthermint?: boolean;
19
+ allowHexAddressToBech32Address?: boolean;
20
20
  icns?: {
21
21
  chainId: string;
22
22
  resolverContractAddress: string;