@keplr-wallet/hooks 0.12.39 → 0.12.40

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.
package/build/tx/fee.d.ts CHANGED
@@ -47,6 +47,7 @@ export declare class FeeConfig extends TxChainSetter implements IFeeConfig {
47
47
  protected canOsmosisTxFeesAndReady(): boolean;
48
48
  readonly getFeeTypePrettyForFeeCurrency: (feeCurrency: FeeCurrency, feeType: FeeType) => CoinPretty;
49
49
  readonly getGasPriceForFeeCurrency: (feeCurrency: FeeCurrency, feeType: FeeType) => Dec;
50
+ protected populateGasPriceStep(feeCurrency: FeeCurrency, feeType: FeeType): Dec;
50
51
  get uiProperties(): UIProperties;
51
52
  }
52
53
  export declare const useFeeConfig: (chainGetter: ChainGetter, queriesStore: QueriesStore, chainId: string, senderConfig: ISenderConfig, amountConfig: IBaseAmountConfig, gasConfig: IGasConfig, opts?: {
package/build/tx/fee.js CHANGED
@@ -39,16 +39,41 @@ class FeeConfig extends chain_1.TxChainSetter {
39
39
  return new unit_1.CoinPretty(feeCurrency, amount.roundUp()).maxDecimals(feeCurrency.coinDecimals);
40
40
  });
41
41
  this.getGasPriceForFeeCurrency = (0, mobx_utils_1.computedFn)((feeCurrency, feeType) => {
42
- var _a, _b;
43
- if (this.canOsmosisTxFeesAndReady()) {
42
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
43
+ if (this.chainInfo.hasFeature("osmosis-base-fee-beta") ||
44
+ this.canOsmosisTxFeesAndReady()) {
44
45
  const queryOsmosis = this.queriesStore.get(this.chainId).osmosis;
45
46
  if (queryOsmosis) {
47
+ const remoteBaseFeeStep = this.queriesStore.simpleQuery.queryGet("https://base-fee-step.s3.us-west-2.amazonaws.com/osmosis-base-fee-beta.json");
46
48
  const baseDenom = queryOsmosis.queryTxFeesBaseDenom.baseDenom;
47
- if (feeCurrency.coinMinimalDenom !== baseDenom &&
48
- queryOsmosis.queryTxFeesFeeTokens.isTxFeeToken(feeCurrency.coinMinimalDenom)) {
49
- const baseFeeCurrency = this.chainInfo.feeCurrencies.find((cur) => cur.coinMinimalDenom === baseDenom);
50
- if (baseFeeCurrency) {
51
- const baseGasPriceStep = (_a = baseFeeCurrency.gasPriceStep) !== null && _a !== void 0 ? _a : types_1.DefaultGasPriceStep;
49
+ let baseFeeCurrency = this.selectableFeeCurrencies.find((c) => c.coinMinimalDenom === baseDenom) || this.chainInfo.feeCurrencies[0];
50
+ const baseFee = queryOsmosis.queryBaseFee.baseFee;
51
+ if (baseFee) {
52
+ const low = ((_a = remoteBaseFeeStep.response) === null || _a === void 0 ? void 0 : _a.data.low)
53
+ ? parseFloat(baseFee
54
+ .mul(new unit_1.Dec(remoteBaseFeeStep.response.data.low))
55
+ .toString(8))
56
+ : (_c = (_b = baseFeeCurrency.gasPriceStep) === null || _b === void 0 ? void 0 : _b.low) !== null && _c !== void 0 ? _c : types_1.DefaultGasPriceStep.low;
57
+ const average = Math.max(low, ((_d = remoteBaseFeeStep.response) === null || _d === void 0 ? void 0 : _d.data.average)
58
+ ? parseFloat(baseFee
59
+ .mul(new unit_1.Dec(remoteBaseFeeStep.response.data.average))
60
+ .toString(8))
61
+ : (_f = (_e = baseFeeCurrency.gasPriceStep) === null || _e === void 0 ? void 0 : _e.average) !== null && _f !== void 0 ? _f : types_1.DefaultGasPriceStep.average);
62
+ const high = Math.max(average, ((_g = remoteBaseFeeStep.response) === null || _g === void 0 ? void 0 : _g.data.high)
63
+ ? parseFloat(baseFee
64
+ .mul(new unit_1.Dec(remoteBaseFeeStep.response.data.high))
65
+ .toString(8))
66
+ : (_j = (_h = baseFeeCurrency.gasPriceStep) === null || _h === void 0 ? void 0 : _h.high) !== null && _j !== void 0 ? _j : types_1.DefaultGasPriceStep.high);
67
+ baseFeeCurrency = Object.assign(Object.assign({}, baseFeeCurrency), { gasPriceStep: {
68
+ low,
69
+ average,
70
+ high,
71
+ } });
72
+ }
73
+ if (this.canOsmosisTxFeesAndReady()) {
74
+ if (feeCurrency.coinMinimalDenom !== baseDenom &&
75
+ queryOsmosis.queryTxFeesFeeTokens.isTxFeeToken(feeCurrency.coinMinimalDenom)) {
76
+ const baseGasPriceStep = (_k = baseFeeCurrency.gasPriceStep) !== null && _k !== void 0 ? _k : types_1.DefaultGasPriceStep;
52
77
  const baseGasPrice = new unit_1.Dec(baseGasPriceStep[feeType].toString());
53
78
  const spotPriceDec = queryOsmosis.queryTxFeesSpotPriceByDenom.getQueryDenom(feeCurrency.coinMinimalDenom).spotPriceDec;
54
79
  if (spotPriceDec.gt(new unit_1.Dec(0))) {
@@ -62,29 +87,13 @@ class FeeConfig extends chain_1.TxChainSetter {
62
87
  }
63
88
  }
64
89
  }
90
+ if (feeCurrency.coinMinimalDenom === baseFeeCurrency.coinMinimalDenom) {
91
+ return this.populateGasPriceStep(baseFeeCurrency, feeType);
92
+ }
65
93
  }
66
94
  }
67
95
  // TODO: Handle terra classic fee
68
- const gasPriceStep = (_b = feeCurrency.gasPriceStep) !== null && _b !== void 0 ? _b : types_1.DefaultGasPriceStep;
69
- let gasPrice = new unit_1.Dec(0);
70
- switch (feeType) {
71
- case "low": {
72
- gasPrice = new unit_1.Dec(gasPriceStep.low);
73
- break;
74
- }
75
- case "average": {
76
- gasPrice = new unit_1.Dec(gasPriceStep.average);
77
- break;
78
- }
79
- case "high": {
80
- gasPrice = new unit_1.Dec(gasPriceStep.high);
81
- break;
82
- }
83
- default: {
84
- throw new Error(`Unknown fee type: ${feeType}`);
85
- }
86
- }
87
- return gasPrice;
96
+ return this.populateGasPriceStep(feeCurrency, feeType);
88
97
  });
89
98
  this.additionAmountToNeedFee = additionAmountToNeedFee;
90
99
  this.computeTerraClassicTax = computeTerraClassicTax;
@@ -305,6 +314,29 @@ class FeeConfig extends chain_1.TxChainSetter {
305
314
  }
306
315
  return false;
307
316
  }
317
+ populateGasPriceStep(feeCurrency, feeType) {
318
+ var _a;
319
+ const gasPriceStep = (_a = feeCurrency.gasPriceStep) !== null && _a !== void 0 ? _a : types_1.DefaultGasPriceStep;
320
+ let gasPrice = new unit_1.Dec(0);
321
+ switch (feeType) {
322
+ case "low": {
323
+ gasPrice = new unit_1.Dec(gasPriceStep.low);
324
+ break;
325
+ }
326
+ case "average": {
327
+ gasPrice = new unit_1.Dec(gasPriceStep.average);
328
+ break;
329
+ }
330
+ case "high": {
331
+ gasPrice = new unit_1.Dec(gasPriceStep.high);
332
+ break;
333
+ }
334
+ default: {
335
+ throw new Error(`Unknown fee type: ${feeType}`);
336
+ }
337
+ }
338
+ return gasPrice;
339
+ }
308
340
  get uiProperties() {
309
341
  if (this.disableBalanceCheck) {
310
342
  return {};
@@ -347,6 +379,28 @@ class FeeConfig extends chain_1.TxChainSetter {
347
379
  }
348
380
  }
349
381
  }
382
+ if (this.chainInfo.hasFeature("osmosis-base-fee-beta")) {
383
+ const queryOsmosis = this.queriesStore.get(this.chainId).osmosis;
384
+ if (queryOsmosis) {
385
+ const queryBaseFee = queryOsmosis.queryBaseFee;
386
+ const baseFee = queryBaseFee.baseFee;
387
+ if (!baseFee) {
388
+ return {
389
+ loadingState: "loading-block",
390
+ };
391
+ }
392
+ if (queryBaseFee.isFetching) {
393
+ return {
394
+ loadingState: "loading",
395
+ };
396
+ }
397
+ if (queryBaseFee.error) {
398
+ return {
399
+ warning: new Error("Failed to fetch base fee"),
400
+ };
401
+ }
402
+ }
403
+ }
350
404
  if (this.canOsmosisTxFeesAndReady()) {
351
405
  const queryOsmosis = this.queriesStore.get(this.chainId).osmosis;
352
406
  if (queryOsmosis && this.getFeePrimitive().length > 0) {
@@ -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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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@keplr-wallet/hooks",
3
- "version": "0.12.39",
3
+ "version": "0.12.40",
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.39",
21
- "@keplr-wallet/common": "0.12.39",
22
- "@keplr-wallet/cosmos": "0.12.39",
23
- "@keplr-wallet/crypto": "0.12.39",
24
- "@keplr-wallet/proto-types": "0.12.39",
25
- "@keplr-wallet/simple-fetch": "0.12.39",
26
- "@keplr-wallet/stores": "0.12.39",
27
- "@keplr-wallet/stores-etc": "0.12.39",
28
- "@keplr-wallet/types": "0.12.39",
29
- "@keplr-wallet/unit": "0.12.39",
20
+ "@keplr-wallet/background": "0.12.40",
21
+ "@keplr-wallet/common": "0.12.40",
22
+ "@keplr-wallet/cosmos": "0.12.40",
23
+ "@keplr-wallet/crypto": "0.12.40",
24
+ "@keplr-wallet/proto-types": "0.12.40",
25
+ "@keplr-wallet/simple-fetch": "0.12.40",
26
+ "@keplr-wallet/stores": "0.12.40",
27
+ "@keplr-wallet/stores-etc": "0.12.40",
28
+ "@keplr-wallet/types": "0.12.40",
29
+ "@keplr-wallet/unit": "0.12.40",
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": "45b3e11d5e2b9437e03f88fcf028c2eecff59432"
39
+ "gitHead": "12f931df2ebc641457cad78c01173492cbbd7a32"
40
40
  }
package/src/tx/fee.ts CHANGED
@@ -388,20 +388,74 @@ export class FeeConfig extends TxChainSetter implements IFeeConfig {
388
388
 
389
389
  readonly getGasPriceForFeeCurrency = computedFn(
390
390
  (feeCurrency: FeeCurrency, feeType: FeeType): Dec => {
391
- if (this.canOsmosisTxFeesAndReady()) {
391
+ if (
392
+ this.chainInfo.hasFeature("osmosis-base-fee-beta") ||
393
+ this.canOsmosisTxFeesAndReady()
394
+ ) {
392
395
  const queryOsmosis = this.queriesStore.get(this.chainId).osmosis;
393
396
  if (queryOsmosis) {
397
+ const remoteBaseFeeStep = this.queriesStore.simpleQuery.queryGet<{
398
+ low?: number;
399
+ average?: number;
400
+ high?: number;
401
+ }>(
402
+ "https://base-fee-step.s3.us-west-2.amazonaws.com/osmosis-base-fee-beta.json"
403
+ );
404
+
394
405
  const baseDenom = queryOsmosis.queryTxFeesBaseDenom.baseDenom;
395
- if (
396
- feeCurrency.coinMinimalDenom !== baseDenom &&
397
- queryOsmosis.queryTxFeesFeeTokens.isTxFeeToken(
398
- feeCurrency.coinMinimalDenom
399
- )
400
- ) {
401
- const baseFeeCurrency = this.chainInfo.feeCurrencies.find(
402
- (cur) => cur.coinMinimalDenom === baseDenom
406
+ let baseFeeCurrency =
407
+ this.selectableFeeCurrencies.find(
408
+ (c) => c.coinMinimalDenom === baseDenom
409
+ ) || this.chainInfo.feeCurrencies[0];
410
+
411
+ const baseFee = queryOsmosis.queryBaseFee.baseFee;
412
+ if (baseFee) {
413
+ const low = remoteBaseFeeStep.response?.data.low
414
+ ? parseFloat(
415
+ baseFee
416
+ .mul(new Dec(remoteBaseFeeStep.response.data.low))
417
+ .toString(8)
418
+ )
419
+ : baseFeeCurrency.gasPriceStep?.low ?? DefaultGasPriceStep.low;
420
+ const average = Math.max(
421
+ low,
422
+ remoteBaseFeeStep.response?.data.average
423
+ ? parseFloat(
424
+ baseFee
425
+ .mul(new Dec(remoteBaseFeeStep.response.data.average))
426
+ .toString(8)
427
+ )
428
+ : baseFeeCurrency.gasPriceStep?.average ??
429
+ DefaultGasPriceStep.average
403
430
  );
404
- if (baseFeeCurrency) {
431
+ const high = Math.max(
432
+ average,
433
+ remoteBaseFeeStep.response?.data.high
434
+ ? parseFloat(
435
+ baseFee
436
+ .mul(new Dec(remoteBaseFeeStep.response.data.high))
437
+ .toString(8)
438
+ )
439
+ : baseFeeCurrency.gasPriceStep?.high ?? DefaultGasPriceStep.high
440
+ );
441
+
442
+ baseFeeCurrency = {
443
+ ...baseFeeCurrency,
444
+ gasPriceStep: {
445
+ low,
446
+ average,
447
+ high,
448
+ },
449
+ };
450
+ }
451
+
452
+ if (this.canOsmosisTxFeesAndReady()) {
453
+ if (
454
+ feeCurrency.coinMinimalDenom !== baseDenom &&
455
+ queryOsmosis.queryTxFeesFeeTokens.isTxFeeToken(
456
+ feeCurrency.coinMinimalDenom
457
+ )
458
+ ) {
405
459
  const baseGasPriceStep =
406
460
  baseFeeCurrency.gasPriceStep ?? DefaultGasPriceStep;
407
461
 
@@ -422,35 +476,48 @@ export class FeeConfig extends TxChainSetter implements IFeeConfig {
422
476
  }
423
477
  }
424
478
  }
479
+
480
+ if (
481
+ feeCurrency.coinMinimalDenom === baseFeeCurrency.coinMinimalDenom
482
+ ) {
483
+ return this.populateGasPriceStep(baseFeeCurrency, feeType);
484
+ }
425
485
  }
426
486
  }
427
487
 
428
488
  // TODO: Handle terra classic fee
429
489
 
430
- const gasPriceStep = feeCurrency.gasPriceStep ?? DefaultGasPriceStep;
431
- let gasPrice = new Dec(0);
432
- switch (feeType) {
433
- case "low": {
434
- gasPrice = new Dec(gasPriceStep.low);
435
- break;
436
- }
437
- case "average": {
438
- gasPrice = new Dec(gasPriceStep.average);
439
- break;
440
- }
441
- case "high": {
442
- gasPrice = new Dec(gasPriceStep.high);
443
- break;
444
- }
445
- default: {
446
- throw new Error(`Unknown fee type: ${feeType}`);
447
- }
448
- }
449
-
450
- return gasPrice;
490
+ return this.populateGasPriceStep(feeCurrency, feeType);
451
491
  }
452
492
  );
453
493
 
494
+ protected populateGasPriceStep(
495
+ feeCurrency: FeeCurrency,
496
+ feeType: FeeType
497
+ ): Dec {
498
+ const gasPriceStep = feeCurrency.gasPriceStep ?? DefaultGasPriceStep;
499
+ let gasPrice = new Dec(0);
500
+ switch (feeType) {
501
+ case "low": {
502
+ gasPrice = new Dec(gasPriceStep.low);
503
+ break;
504
+ }
505
+ case "average": {
506
+ gasPrice = new Dec(gasPriceStep.average);
507
+ break;
508
+ }
509
+ case "high": {
510
+ gasPrice = new Dec(gasPriceStep.high);
511
+ break;
512
+ }
513
+ default: {
514
+ throw new Error(`Unknown fee type: ${feeType}`);
515
+ }
516
+ }
517
+
518
+ return gasPrice;
519
+ }
520
+
454
521
  @computed
455
522
  get uiProperties(): UIProperties {
456
523
  if (this.disableBalanceCheck) {
@@ -504,6 +571,29 @@ export class FeeConfig extends TxChainSetter implements IFeeConfig {
504
571
  }
505
572
  }
506
573
 
574
+ if (this.chainInfo.hasFeature("osmosis-base-fee-beta")) {
575
+ const queryOsmosis = this.queriesStore.get(this.chainId).osmosis;
576
+ if (queryOsmosis) {
577
+ const queryBaseFee = queryOsmosis.queryBaseFee;
578
+ const baseFee = queryBaseFee.baseFee;
579
+ if (!baseFee) {
580
+ return {
581
+ loadingState: "loading-block",
582
+ };
583
+ }
584
+ if (queryBaseFee.isFetching) {
585
+ return {
586
+ loadingState: "loading",
587
+ };
588
+ }
589
+ if (queryBaseFee.error) {
590
+ return {
591
+ warning: new Error("Failed to fetch base fee"),
592
+ };
593
+ }
594
+ }
595
+ }
596
+
507
597
  if (this.canOsmosisTxFeesAndReady()) {
508
598
  const queryOsmosis = this.queriesStore.get(this.chainId).osmosis;
509
599
  if (queryOsmosis && this.getFeePrimitive().length > 0) {