@bze/bze-ui-kit 0.2.0 → 0.2.2

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/dist/index.mjs CHANGED
@@ -2949,12 +2949,29 @@ function useBalance(denom) {
2949
2949
  }
2950
2950
 
2951
2951
  // src/hooks/useEpochs.ts
2952
- import { useMemo as useMemo6 } from "react";
2952
+ import { useCallback as useCallback6, useMemo as useMemo6 } from "react";
2953
+ import BigNumber9 from "bignumber.js";
2953
2954
  var EPOCH_HOUR2 = "hour";
2954
2955
  var EPOCH_DAY2 = "day";
2955
2956
  var EPOCH_WEEK2 = "week";
2957
+ function getEpochDurationByIdentifier2(identifier) {
2958
+ const hourMs = 60 * 60 * 1e3;
2959
+ switch (identifier) {
2960
+ case EPOCH_HOUR2:
2961
+ return hourMs;
2962
+ case EPOCH_DAY2:
2963
+ return hourMs * 24;
2964
+ case EPOCH_WEEK2:
2965
+ return hourMs * 24 * 7;
2966
+ default:
2967
+ return hourMs;
2968
+ }
2969
+ }
2956
2970
  function useEpochs() {
2957
2971
  const { epochs, isLoading, updateEpochs } = useAssetsContext();
2972
+ const getCurrentEpoch2 = useCallback6((identifier) => {
2973
+ return epochs.get(identifier);
2974
+ }, [epochs]);
2958
2975
  const hourEpochInfo = useMemo6(() => {
2959
2976
  return epochs.get(EPOCH_HOUR2);
2960
2977
  }, [epochs]);
@@ -2964,19 +2981,65 @@ function useEpochs() {
2964
2981
  const weekEpochInfo = useMemo6(() => {
2965
2982
  return epochs.get(EPOCH_WEEK2);
2966
2983
  }, [epochs]);
2984
+ const getHourEpochInfo2 = useCallback6(() => {
2985
+ return epochs.get(EPOCH_HOUR2);
2986
+ }, [epochs]);
2987
+ const getDayEpochInfo = useCallback6(() => {
2988
+ return epochs.get(EPOCH_DAY2);
2989
+ }, [epochs]);
2990
+ const getWeekEpochInfo2 = useCallback6(() => {
2991
+ return epochs.get(EPOCH_WEEK2);
2992
+ }, [epochs]);
2993
+ const getPeriodicEpochEndTime2 = useCallback6((identifier, modWeek = 1) => {
2994
+ const epoch = epochs.get(identifier);
2995
+ if (!epoch || !epoch.current_epoch_start_time) {
2996
+ return void 0;
2997
+ }
2998
+ const current = new BigNumber9(epoch.current_epoch);
2999
+ let remainingEpochs = modWeek - current.toNumber() % modWeek;
3000
+ if (remainingEpochs === modWeek) {
3001
+ remainingEpochs = 0;
3002
+ }
3003
+ const startAt = new Date(epoch.current_epoch_start_time);
3004
+ const duration = getEpochDurationByIdentifier2(identifier);
3005
+ startAt.setTime(startAt.getTime() + duration + duration * remainingEpochs);
3006
+ return startAt;
3007
+ }, [epochs]);
3008
+ const getCurrentWeekEpochEndTime2 = useCallback6(() => {
3009
+ return getPeriodicEpochEndTime2(EPOCH_WEEK2);
3010
+ }, [getPeriodicEpochEndTime2]);
3011
+ const getPeriodicWeekEpochEndTime2 = useCallback6((modWeek = 1) => {
3012
+ return getPeriodicEpochEndTime2(EPOCH_WEEK2, modWeek);
3013
+ }, [getPeriodicEpochEndTime2]);
3014
+ const epochsList = useMemo6(() => Array.from(epochs.values()), [epochs]);
2967
3015
  return {
2968
- epochs,
3016
+ epochs: epochsList,
3017
+ epochsMap: epochs,
2969
3018
  hourEpochInfo,
2970
3019
  dayEpochInfo,
2971
3020
  weekEpochInfo,
2972
3021
  isLoading,
2973
- updateEpochs
3022
+ updateEpochs,
3023
+ getCurrentEpoch: getCurrentEpoch2,
3024
+ getHourEpochInfo: getHourEpochInfo2,
3025
+ getDayEpochInfo,
3026
+ getWeekEpochInfo: getWeekEpochInfo2,
3027
+ getCurrentWeekEpochEndTime: getCurrentWeekEpochEndTime2,
3028
+ getPeriodicWeekEpochEndTime: getPeriodicWeekEpochEndTime2,
3029
+ getPeriodicEpochEndTime: getPeriodicEpochEndTime2
3030
+ };
3031
+ }
3032
+ function useEpochsManager() {
3033
+ const { updateEpochs, isLoading } = useAssetsContext();
3034
+ return {
3035
+ updateEpochs,
3036
+ isLoading
2974
3037
  };
2975
3038
  }
2976
3039
 
2977
3040
  // src/hooks/useLiquidityPools.ts
2978
- import { useCallback as useCallback6, useMemo as useMemo7 } from "react";
2979
- import BigNumber9 from "bignumber.js";
3041
+ import { useCallback as useCallback7, useMemo as useMemo7 } from "react";
3042
+ import BigNumber10 from "bignumber.js";
2980
3043
  function useLiquidityPools() {
2981
3044
  const { poolsMap, poolsDataMap, updateLiquidityPools, isLoading, assetsMap } = useAssetsContext();
2982
3045
  const pools = useMemo7(() => {
@@ -2986,7 +3049,7 @@ function useLiquidityPools() {
2986
3049
  const poolId = poolIdFromPoolDenom(lpDenom);
2987
3050
  return poolsMap.get(poolId);
2988
3051
  };
2989
- const getDenomsPool = useCallback6((denomA, denomB) => {
3052
+ const getDenomsPool = useCallback7((denomA, denomB) => {
2990
3053
  const poolId = createPoolId(denomA, denomB);
2991
3054
  return poolsMap.get(poolId);
2992
3055
  }, [poolsMap]);
@@ -3030,7 +3093,7 @@ function useAssetLiquidityPools(denom) {
3030
3093
  return newMap;
3031
3094
  }, [assetPools, poolsDataMap, isLoading, denom]);
3032
3095
  const asset24HoursVolume = useMemo7(() => {
3033
- let volume = BigNumber9(0);
3096
+ let volume = BigNumber10(0);
3034
3097
  if (isLoading || denom === "") return volume;
3035
3098
  assetPoolsData.forEach((poolData) => {
3036
3099
  if (poolData.base === denom) {
@@ -3085,13 +3148,13 @@ function useLiquidityPool(poolId) {
3085
3148
  const reserveQuote = toBigNumber(pool.reserve_quote);
3086
3149
  return userShares.dividedBy(totalShares).multipliedBy(reserveQuote);
3087
3150
  }, [pool, userShares, totalShares]);
3088
- const calculateOppositeAmount = useCallback6((amount, isBase) => {
3151
+ const calculateOppositeAmount = useCallback7((amount, isBase) => {
3089
3152
  if (!pool) {
3090
3153
  return toBigNumber(0);
3091
3154
  }
3092
3155
  return calculatePoolOppositeAmount(pool, amount, isBase);
3093
3156
  }, [pool]);
3094
- const calculateSharesFromAmounts = useCallback6((baseAmount, quoteAmount) => {
3157
+ const calculateSharesFromAmounts = useCallback7((baseAmount, quoteAmount) => {
3095
3158
  if (!pool || !totalShares) {
3096
3159
  return toBigNumber(0);
3097
3160
  }
@@ -3107,9 +3170,9 @@ function useLiquidityPool(poolId) {
3107
3170
  }
3108
3171
  const baseRatio = baseAmountBN.dividedBy(reserveBase);
3109
3172
  const quoteRatio = quoteAmountBN.dividedBy(reserveQuote);
3110
- const mintRatio = BigNumber9.minimum(baseRatio, quoteRatio);
3173
+ const mintRatio = BigNumber10.minimum(baseRatio, quoteRatio);
3111
3174
  const tokensToMint = mintRatio.multipliedBy(totalShares);
3112
- return tokensToMint.integerValue(BigNumber9.ROUND_DOWN);
3175
+ return tokensToMint.integerValue(BigNumber10.ROUND_DOWN);
3113
3176
  }, [pool, totalShares]);
3114
3177
  return {
3115
3178
  isLoading,
@@ -3126,11 +3189,21 @@ function useLiquidityPool(poolId) {
3126
3189
  }
3127
3190
 
3128
3191
  // src/hooks/useAssetsValue.ts
3129
- import { useCallback as useCallback7, useMemo as useMemo8 } from "react";
3130
- import BigNumber10 from "bignumber.js";
3192
+ import { useCallback as useCallback8, useMemo as useMemo8 } from "react";
3193
+ import BigNumber11 from "bignumber.js";
3131
3194
  function useAssetsValue() {
3132
3195
  const { assetsMap, usdPricesMap, balancesMap, isLoading: isLoadingPrices } = useAssetsContext();
3133
- const totalUsdValue = useMemo8(() => {
3196
+ const totalUsdValue = useCallback8((prettyBalances) => {
3197
+ let usdValue = BigNumber11(0);
3198
+ prettyBalances.map((denomBalance) => {
3199
+ const assetPrice = usdPricesMap.get(denomBalance.denom);
3200
+ if (assetPrice && assetPrice.gt(0)) {
3201
+ usdValue = usdValue.plus(assetPrice.multipliedBy(denomBalance.amount));
3202
+ }
3203
+ });
3204
+ return usdValue;
3205
+ }, [usdPricesMap]);
3206
+ const walletTotalUsdValue = useMemo8(() => {
3134
3207
  let total = toBigNumber(0);
3135
3208
  balancesMap.forEach((balance, denom) => {
3136
3209
  const price = usdPricesMap.get(denom);
@@ -3141,21 +3214,21 @@ function useAssetsValue() {
3141
3214
  });
3142
3215
  return total;
3143
3216
  }, [balancesMap, usdPricesMap, assetsMap]);
3144
- const denomUsdValue = useCallback7((denom, uAmount) => {
3217
+ const denomUsdValue = useCallback8((denom, uAmount) => {
3145
3218
  const price = usdPricesMap.get(denom);
3146
3219
  if (!price || !price.gt(0)) return toBigNumber(0);
3147
3220
  const asset = assetsMap.get(denom);
3148
3221
  if (!asset) return toBigNumber(0);
3149
3222
  return price.multipliedBy(uAmountToBigNumberAmount(uAmount, asset.decimals));
3150
3223
  }, [usdPricesMap, assetsMap]);
3151
- const compareValues = useCallback7((a, b) => {
3224
+ const compareValues = useCallback8((a, b) => {
3152
3225
  var _a2;
3153
- let aValue = BigNumber10(0);
3226
+ let aValue = BigNumber11(0);
3154
3227
  const aPrice = usdPricesMap.get(a.denom);
3155
3228
  if (aPrice) {
3156
3229
  aValue = aPrice.multipliedBy(a.amount);
3157
3230
  }
3158
- let bValue = BigNumber10(0);
3231
+ let bValue = BigNumber11(0);
3159
3232
  const bPrice = usdPricesMap.get(b.denom);
3160
3233
  if (bPrice) {
3161
3234
  bValue = bPrice.multipliedBy(b.amount);
@@ -3164,6 +3237,7 @@ function useAssetsValue() {
3164
3237
  }, [usdPricesMap]);
3165
3238
  return {
3166
3239
  totalUsdValue,
3240
+ walletTotalUsdValue,
3167
3241
  denomUsdValue,
3168
3242
  compareValues,
3169
3243
  isLoading: isLoadingPrices
@@ -3207,17 +3281,17 @@ function useFeeTokens() {
3207
3281
  }
3208
3282
 
3209
3283
  // src/hooks/useMarkets.ts
3210
- import { useCallback as useCallback8, useMemo as useMemo10 } from "react";
3211
- import BigNumber11 from "bignumber.js";
3284
+ import { useCallback as useCallback9, useMemo as useMemo10 } from "react";
3285
+ import BigNumber12 from "bignumber.js";
3212
3286
  function useMarkets() {
3213
3287
  const { marketsMap, marketsDataMap, updateMarkets, isLoading } = useAssetsContext();
3214
3288
  const markets = useMemo10(() => {
3215
3289
  return Array.from(marketsMap.values());
3216
3290
  }, [marketsMap]);
3217
3291
  const marketsData = useMemo10(() => Array.from(marketsDataMap.values()), [marketsDataMap]);
3218
- const marketExists = useCallback8((marketId) => marketsMap.has(marketId), [marketsMap]);
3219
- const getMarketData = useCallback8((marketId) => marketsDataMap.get(marketId), [marketsDataMap]);
3220
- const getMarket = useCallback8((marketId) => marketsMap.get(marketId), [marketsMap]);
3292
+ const marketExists = useCallback9((marketId) => marketsMap.has(marketId), [marketsMap]);
3293
+ const getMarketData = useCallback9((marketId) => marketsDataMap.get(marketId), [marketsDataMap]);
3294
+ const getMarket = useCallback9((marketId) => marketsMap.get(marketId), [marketsMap]);
3221
3295
  return {
3222
3296
  markets,
3223
3297
  marketsData,
@@ -3260,7 +3334,7 @@ function useAssetMarkets(denom) {
3260
3334
  return acc.plus(market.quote_volume || 0);
3261
3335
  }
3262
3336
  return acc;
3263
- }, new BigNumber11(0));
3337
+ }, new BigNumber12(0));
3264
3338
  }, [assetMarketsData, denom]);
3265
3339
  return {
3266
3340
  isLoading,
@@ -3313,7 +3387,7 @@ function useMarketsManager() {
3313
3387
  }
3314
3388
 
3315
3389
  // src/hooks/useToast.tsx
3316
- import { useCallback as useCallback9, useMemo as useMemo11 } from "react";
3390
+ import { useCallback as useCallback10, useMemo as useMemo11 } from "react";
3317
3391
 
3318
3392
  // src/components/toaster.tsx
3319
3393
  import {
@@ -3343,7 +3417,7 @@ var Toaster = () => {
3343
3417
 
3344
3418
  // src/hooks/useToast.tsx
3345
3419
  var useToast = () => {
3346
- const clickableSuccess = useCallback9((title, actionFn, actionLabel, description, duration = 5e3) => {
3420
+ const clickableSuccess = useCallback10((title, actionFn, actionLabel, description, duration = 5e3) => {
3347
3421
  toaster.create({
3348
3422
  title,
3349
3423
  description,
@@ -3356,7 +3430,7 @@ var useToast = () => {
3356
3430
  }
3357
3431
  });
3358
3432
  }, []);
3359
- const success = useCallback9((title, description, duration = 5e3) => {
3433
+ const success = useCallback10((title, description, duration = 5e3) => {
3360
3434
  toaster.create({
3361
3435
  title,
3362
3436
  description,
@@ -3365,7 +3439,7 @@ var useToast = () => {
3365
3439
  closable: true
3366
3440
  });
3367
3441
  }, []);
3368
- const error = useCallback9((title, description, duration = 8e3) => {
3442
+ const error = useCallback10((title, description, duration = 8e3) => {
3369
3443
  toaster.create({
3370
3444
  title,
3371
3445
  description,
@@ -3374,7 +3448,7 @@ var useToast = () => {
3374
3448
  closable: true
3375
3449
  });
3376
3450
  }, []);
3377
- const warning = useCallback9((title, description, duration = 6e3) => {
3451
+ const warning = useCallback10((title, description, duration = 6e3) => {
3378
3452
  toaster.create({
3379
3453
  title,
3380
3454
  description,
@@ -3383,7 +3457,7 @@ var useToast = () => {
3383
3457
  closable: true
3384
3458
  });
3385
3459
  }, []);
3386
- const info = useCallback9((title, description, duration = 5e3) => {
3460
+ const info = useCallback10((title, description, duration = 5e3) => {
3387
3461
  toaster.create({
3388
3462
  title,
3389
3463
  description,
@@ -3392,7 +3466,7 @@ var useToast = () => {
3392
3466
  closable: true
3393
3467
  });
3394
3468
  }, []);
3395
- const loading = useCallback9((title, description) => {
3469
+ const loading = useCallback10((title, description) => {
3396
3470
  return toaster.create({
3397
3471
  title,
3398
3472
  description,
@@ -3400,7 +3474,7 @@ var useToast = () => {
3400
3474
  closable: false
3401
3475
  });
3402
3476
  }, []);
3403
- const dismiss = useCallback9((id) => {
3477
+ const dismiss = useCallback10((id) => {
3404
3478
  toaster.dismiss(id);
3405
3479
  }, []);
3406
3480
  const toast = useMemo11(() => ({
@@ -3418,8 +3492,8 @@ var useToast = () => {
3418
3492
  // src/hooks/useTx.tsx
3419
3493
  import { coins, isDeliverTxSuccess } from "@cosmjs/stargate";
3420
3494
  import { useChain as useChain2 } from "@interchain-kit/react";
3421
- import BigNumber12 from "bignumber.js";
3422
- import { useCallback as useCallback10, useMemo as useMemo12, useState as useState3 } from "react";
3495
+ import BigNumber13 from "bignumber.js";
3496
+ import { useCallback as useCallback11, useMemo as useMemo12, useState as useState3 } from "react";
3423
3497
  var TxStatus = /* @__PURE__ */ ((TxStatus2) => {
3424
3498
  TxStatus2["Failed"] = "Transaction Failed";
3425
3499
  TxStatus2["Successful"] = "Transaction Successful";
@@ -3459,18 +3533,18 @@ var useTx = (chainName, isCosmos, isIBC) => {
3459
3533
  const { getDenomsPool } = useLiquidityPools();
3460
3534
  const { feeDenom } = useSettings();
3461
3535
  const defaultChainName = useMemo12(() => getChainName(), []);
3462
- const canUseClient = useCallback10(async () => {
3536
+ const canUseClient = useCallback11(async () => {
3463
3537
  if (!isSigningClientReady) {
3464
3538
  console.error("waiting for signing client to be ready", signingClientError);
3465
3539
  await sleep(1e3);
3466
3540
  }
3467
3541
  return isSigningClientReady;
3468
3542
  }, [isSigningClientReady, signingClientError]);
3469
- const simulateFee = useCallback10(async (messages, memo) => {
3543
+ const simulateFee = useCallback11(async (messages, memo) => {
3470
3544
  const gasPrice = 0.02;
3471
3545
  const nativeDenom = getChainNativeAssetDenom();
3472
3546
  const gasEstimated = await signingClient.simulate(address, messages, memo);
3473
- const gasAmount = BigNumber12(gasEstimated).multipliedBy(1.5);
3547
+ const gasAmount = BigNumber13(gasEstimated).multipliedBy(1.5);
3474
3548
  const gasPayment = gasAmount.multipliedBy(gasPrice);
3475
3549
  const nativeFee = {
3476
3550
  amount: coins(gasPayment.toFixed(0).toString(), nativeDenom),
@@ -3487,16 +3561,16 @@ var useTx = (chainName, isCosmos, isIBC) => {
3487
3561
  if (!expectedAmount.isPositive()) {
3488
3562
  return nativeFee;
3489
3563
  }
3490
- expectedAmount = expectedAmount.multipliedBy(1.5).integerValue(BigNumber12.ROUND_FLOOR);
3564
+ expectedAmount = expectedAmount.multipliedBy(1.5).integerValue(BigNumber13.ROUND_FLOOR);
3491
3565
  if (expectedAmount.multipliedBy(pool.fee).lt(1)) {
3492
- expectedAmount = toBigNumber(1).dividedBy(pool.fee).integerValue(BigNumber12.ROUND_CEIL);
3566
+ expectedAmount = toBigNumber(1).dividedBy(pool.fee).integerValue(BigNumber13.ROUND_CEIL);
3493
3567
  }
3494
3568
  return {
3495
3569
  amount: coins(expectedAmount.toFixed(0).toString(), feeDenom),
3496
3570
  gas: gasAmount.multipliedBy(1.5).toFixed(0)
3497
3571
  };
3498
3572
  }, [signingClient, address, feeDenom, getDenomsPool]);
3499
- const getFee = useCallback10(async (messages, options) => {
3573
+ const getFee = useCallback11(async (messages, options) => {
3500
3574
  try {
3501
3575
  if (options == null ? void 0 : options.fee) {
3502
3576
  return options.fee;
@@ -3513,7 +3587,7 @@ var useTx = (chainName, isCosmos, isIBC) => {
3513
3587
  }
3514
3588
  }
3515
3589
  }, [simulateFee]);
3516
- const tx = useCallback10(async (msgs, options) => {
3590
+ const tx = useCallback11(async (msgs, options) => {
3517
3591
  var _a2;
3518
3592
  if (!address) {
3519
3593
  toast.error("Transaction Failed" /* Failed */, "Please connect the wallet");
@@ -3766,7 +3840,7 @@ import {
3766
3840
  } from "@chakra-ui/react";
3767
3841
  import { Select, Portal as Portal3 } from "@chakra-ui/react";
3768
3842
  import { useTheme } from "next-themes";
3769
- import { useState as useState6, useEffect as useEffect4, useMemo as useMemo13, useCallback as useCallback11 } from "react";
3843
+ import { useState as useState6, useEffect as useEffect4, useMemo as useMemo13, useCallback as useCallback12 } from "react";
3770
3844
  import { jsx as jsx4, jsxs as jsxs3 } from "react/jsx-runtime";
3771
3845
  var SettingsSidebarContent = ({ accentColor = "blue" }) => {
3772
3846
  const { setTheme, resolvedTheme } = useTheme();
@@ -3786,7 +3860,7 @@ var SettingsSidebarContent = ({ accentColor = "blue" }) => {
3786
3860
  setPreferredFeeDenom(settings.preferredFeeDenom || getChainNativeAssetDenom());
3787
3861
  }
3788
3862
  }, [isLoaded, settings]);
3789
- const handleValidateEndpoints = useCallback11(async (rest, rpc) => {
3863
+ const handleValidateEndpoints = useCallback12(async (rest, rpc) => {
3790
3864
  setIsValidating(true);
3791
3865
  setValidationResults({});
3792
3866
  try {
@@ -3806,7 +3880,7 @@ var SettingsSidebarContent = ({ accentColor = "blue" }) => {
3806
3880
  setTimeout(() => setValidationResults({}), 1e4);
3807
3881
  }
3808
3882
  }, []);
3809
- const handleSaveSettings = useCallback11(async (rest, rpc, feeDenom) => {
3883
+ const handleSaveSettings = useCallback12(async (rest, rpc, feeDenom) => {
3810
3884
  setValidationResults({});
3811
3885
  const results = await validateEndpoints(rest, rpc);
3812
3886
  if (!results.isValid) {
@@ -3826,7 +3900,7 @@ var SettingsSidebarContent = ({ accentColor = "blue" }) => {
3826
3900
  toast.success("Success!", "Settings have been saved.");
3827
3901
  }
3828
3902
  }, []);
3829
- const handleResetToDefaults = useCallback11(() => {
3903
+ const handleResetToDefaults = useCallback12(() => {
3830
3904
  setRestEndpoint(defaultSettings.endpoints.restEndpoint);
3831
3905
  setRpcEndpoint(defaultSettings.endpoints.rpcEndpoint);
3832
3906
  setPreferredFeeDenom(defaultSettings.preferredFeeDenom);
@@ -3859,7 +3933,7 @@ var SettingsSidebarContent = ({ accentColor = "blue" }) => {
3859
3933
  name: token.ticker || token.name
3860
3934
  }))
3861
3935
  }), [feeTokens]);
3862
- const handleFeeTokenChange = useCallback11((denom) => {
3936
+ const handleFeeTokenChange = useCallback12((denom) => {
3863
3937
  setPreferredFeeDenom(denom || void 0);
3864
3938
  }, []);
3865
3939
  const hasUnsavedChanges = restEndpoint !== settings.endpoints.restEndpoint || rpcEndpoint !== settings.endpoints.rpcEndpoint || preferredFeeDenom !== settings.preferredFeeDenom;
@@ -4035,15 +4109,15 @@ import {
4035
4109
  VStack as VStack2
4036
4110
  } from "@chakra-ui/react";
4037
4111
  import { LuCopy, LuExternalLink, LuX as LuX2 } from "react-icons/lu";
4038
- import { useCallback as useCallback12, useEffect as useEffect5, useMemo as useMemo14, useRef as useRef3, useState as useState7 } from "react";
4112
+ import { useCallback as useCallback13, useEffect as useEffect5, useMemo as useMemo14, useRef as useRef3, useState as useState7 } from "react";
4039
4113
  import { WalletState } from "@interchain-kit/core";
4040
- import BigNumber13 from "bignumber.js";
4114
+ import BigNumber14 from "bignumber.js";
4041
4115
  import { cosmos } from "@bze/bzejs";
4042
4116
  import { jsx as jsx5, jsxs as jsxs4 } from "react/jsx-runtime";
4043
4117
  var validateAmount = (amount, coin, onError) => {
4044
4118
  if (!coin) return;
4045
4119
  if (amount === "") return;
4046
- const amountNumber = BigNumber13(amount);
4120
+ const amountNumber = BigNumber14(amount);
4047
4121
  if (amountNumber.isNaN()) {
4048
4122
  onError("Invalid amount");
4049
4123
  return;
@@ -4137,13 +4211,13 @@ var SendForm = ({ balances, onClose, selectedTicker, accentColor }) => {
4137
4211
  const isValidForm = useMemo14(() => {
4138
4212
  return selectedCoin && memoError === "" && recipientError === "" && sendAmountError === "" && sendAmount !== "" && recipient !== "";
4139
4213
  }, [selectedCoin, memoError, recipientError, sendAmountError, sendAmount, recipient]);
4140
- const resetSendForm = useCallback12(() => {
4214
+ const resetSendForm = useCallback13(() => {
4141
4215
  setSelectedCoin(void 0);
4142
4216
  setSendAmount("");
4143
4217
  setRecipient("");
4144
4218
  setMemo("");
4145
4219
  }, []);
4146
- const handleSend = useCallback12(async () => {
4220
+ const handleSend = useCallback13(async () => {
4147
4221
  var _a2, _b2;
4148
4222
  if (!isValidForm) {
4149
4223
  toast.error("Can not send coins!", "Please check the input data.");
@@ -4168,11 +4242,11 @@ var SendForm = ({ balances, onClose, selectedTicker, accentColor }) => {
4168
4242
  setIsLoading(false);
4169
4243
  onClose();
4170
4244
  }, [address, memo, onClose, recipient, selectedCoin, sendAmount, status]);
4171
- const handleCancel = useCallback12(() => {
4245
+ const handleCancel = useCallback13(() => {
4172
4246
  resetSendForm();
4173
4247
  onClose();
4174
4248
  }, [onClose, resetSendForm]);
4175
- const onRecipientChange = useCallback12((recipient2) => {
4249
+ const onRecipientChange = useCallback13((recipient2) => {
4176
4250
  setRecipient(recipient2);
4177
4251
  if (recipient2.length === 0) {
4178
4252
  setRecipientError("");
@@ -4185,11 +4259,11 @@ var SendForm = ({ balances, onClose, selectedTicker, accentColor }) => {
4185
4259
  setRecipientError(validate.message);
4186
4260
  }
4187
4261
  }, []);
4188
- const onAmountChange = useCallback12((amount) => {
4262
+ const onAmountChange = useCallback13((amount) => {
4189
4263
  setSendAmount(sanitizeNumberInput(amount));
4190
4264
  setSendAmountError("");
4191
4265
  }, []);
4192
- const onCoinSelectChange = useCallback12((ticker) => {
4266
+ const onCoinSelectChange = useCallback13((ticker) => {
4193
4267
  if (ticker === "") return;
4194
4268
  const selectedCoin2 = balances.find((item) => item.ticker === ticker);
4195
4269
  if (selectedCoin2) {
@@ -4197,13 +4271,13 @@ var SendForm = ({ balances, onClose, selectedTicker, accentColor }) => {
4197
4271
  validateAmount(sendAmount, selectedCoin2, setSendAmountError);
4198
4272
  }
4199
4273
  }, [sendAmount, balances]);
4200
- const setMaxAmount = useCallback12(() => {
4274
+ const setMaxAmount = useCallback13(() => {
4201
4275
  if (!selectedCoin) return;
4202
4276
  const maxAmount = uAmountToBigNumberAmount(selectedCoin.amount, selectedCoin.decimals);
4203
4277
  onAmountChange(maxAmount.toString());
4204
4278
  validateAmount(maxAmount.toString(), selectedCoin, setSendAmountError);
4205
4279
  }, [selectedCoin, onAmountChange]);
4206
- const onMemoChange = useCallback12((memo2) => {
4280
+ const onMemoChange = useCallback13((memo2) => {
4207
4281
  setMemo(memo2);
4208
4282
  if (memo2.length > 256) {
4209
4283
  setMemoError("Memo must be less than or equal to 256 characters");
@@ -4414,15 +4488,15 @@ var WalletSidebarContent = ({ accentColor = "blue" }) => {
4414
4488
  setShowCopiedTooltip(true);
4415
4489
  setTimeout(() => setShowCopiedTooltip(false), 2e3);
4416
4490
  };
4417
- const handleCancel = useCallback12(() => {
4491
+ const handleCancel = useCallback13(() => {
4418
4492
  setViewState("balances");
4419
4493
  setClickedBalance("");
4420
4494
  }, []);
4421
- const onBalanceClick = useCallback12((ticker) => {
4495
+ const onBalanceClick = useCallback13((ticker) => {
4422
4496
  setClickedBalance(ticker);
4423
4497
  setViewState("send");
4424
4498
  }, []);
4425
- const handleDisconnectAll = useCallback12(async () => {
4499
+ const handleDisconnectAll = useCallback13(async () => {
4426
4500
  setIsDisconnecting(true);
4427
4501
  try {
4428
4502
  console.log("Disconnected from all chains");
@@ -4818,6 +4892,7 @@ export {
4818
4892
  useBalances,
4819
4893
  useConnectionType,
4820
4894
  useEpochs,
4895
+ useEpochsManager,
4821
4896
  useFeeTokens,
4822
4897
  useIBCChains,
4823
4898
  useIBCTx,