Thanks to visit codestin.com
Credit goes to github.com

Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions apps/extension/src/app/common/app-analytics.ts
Original file line number Diff line number Diff line change
Expand Up @@ -105,11 +105,11 @@ export function useAccountScaledBalanceAnalytics({ accountIndex }: { accountInde
return money ? scaleValue(Number(convertAmountToBaseUnit(money))) : undefined;
}
const scaledStxAvailableBalance = getScaledValueFromMoney(
stxBalance.value?.stx.availableUnlockedBalance
stxBalance.data?.stx.availableUnlockedBalance
);
const scaledStxLockedBalance = getScaledValueFromMoney(stxBalance.value?.stx.lockedBalance);
const scaledBtcAvailableBalance = getScaledValueFromMoney(btcBalance.value?.btc.availableBalance);
const scaledUsdBalance = getScaledValueFromMoney(totalBalance.value);
const scaledStxLockedBalance = getScaledValueFromMoney(stxBalance.data?.stx.lockedBalance);
const scaledBtcAvailableBalance = getScaledValueFromMoney(btcBalance.data?.btc.availableBalance);
const scaledUsdBalance = getScaledValueFromMoney(totalBalance.data);

const fingerprint = useWalletFingerprint();

Expand Down
10 changes: 5 additions & 5 deletions apps/extension/src/app/components/account-total-balance.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -17,17 +17,17 @@ export const AccountTotalBalance = memo(function AccountTotalBalance({
}: AccountTotalBalanceProps) {
const accountTotalBalance = useAccountTotalBalance(accountIndex);

if (accountTotalBalance.state !== 'loading' && !accountTotalBalance.value) return null;
if (!accountTotalBalance.isLoading && !accountTotalBalance.data) return null;

return (
<SkeletonLoader height="20px" isLoading={accountTotalBalance.state === 'loading'}>
<SkeletonLoader height="20px" isLoading={accountTotalBalance.isLoading}>
<styled.span
className={shimmerStyles}
textStyle="label.02"
data-state={accountTotalBalance.state === 'loading' ? 'loading' : undefined}
data-state={accountTotalBalance.isLoading ? 'loading' : undefined}
>
{accountTotalBalance.value && (
<PrivateText>{formatCurrency(accountTotalBalance.value)}</PrivateText>
{accountTotalBalance.data && (
<PrivateText>{formatCurrency(accountTotalBalance.data)}</PrivateText>
)}
</styled.span>
</SkeletonLoader>
Expand Down
2 changes: 1 addition & 1 deletion apps/extension/src/app/components/balance/stx-balance.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ interface StxBalanceProps {
}
export function StxBalance(props: StxBalanceProps) {
const { address } = props;
const { value: balance } = useStxAddressBalance(address);
const { data: balance } = useStxAddressBalance(address);

const stxBalance = useMemo(
() =>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,11 +19,11 @@ export function BtcAssetItemBalanceLoader({
children,
}: BtcAssetItemBalanceLoaderProps) {
const nativeSegwitBalance = useNativeSegwitBtcAccountBalance(accountIndex);
const isLoading = nativeSegwitBalance.state === 'loading';
const isLoading = nativeSegwitBalance.isLoading;
if (isLoading) return <CryptoAssetItemPlaceholder />;
if (nativeSegwitBalance.state === 'error') {
if (nativeSegwitBalance.isError || !nativeSegwitBalance.data) {
return <CryptoAssetItemError caption="BTC" icon={<BtcAvatarIcon />} title="Bitcoin" />;
}

return children(nativeSegwitBalance.value, isLoading, false);
return children(nativeSegwitBalance.data, isLoading, false);
}
10 changes: 5 additions & 5 deletions apps/extension/src/app/components/loaders/stx-balance-loader.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,8 @@ interface StxBalanceLoaderProps {
}
export function StxBalanceLoader({ address, children }: StxBalanceLoaderProps) {
const balance = useStxAddressBalance(address);
if (!balance.value) return;
return children(balance.value.stx, balance.state !== 'success', balance.state !== 'success');
if (!balance.data) return;
return children(balance.data.stx, balance.isLoading, balance.isLoading);
}

interface StxAssetItemBalanceLoaderProps {
Expand All @@ -37,11 +37,11 @@ export function StxAssetItemBalanceLoader({
children,
}: StxAssetItemBalanceLoaderProps) {
const stxBalance = useStxAccountBalance(accountIndex);
const isLoading = stxBalance.state === 'loading';
const isLoading = stxBalance.isLoading;
if (isLoading) return <CryptoAssetItemPlaceholder />;
if (stxBalance.state === 'error') {
if (stxBalance.isError || !stxBalance.data) {
return <CryptoAssetItemError caption="STX" icon={<StxAvatarIcon />} title="Stacks" />;
}

return children(stxBalance.value, isLoading, false);
return children(stxBalance.data, isLoading, false);
}
Original file line number Diff line number Diff line change
Expand Up @@ -33,14 +33,14 @@ export function RunesAssetList({
const { isEnabled } = useManagedRunesTools(accountIndex);

useEffect(() => {
if (runes.value && runes.value.runes.length > 0 && setHasManageableTokens) {
if (runes.data && runes.data.runes.length > 0 && setHasManageableTokens) {
setHasManageableTokens(true);
}
}, [runes, setHasManageableTokens]);

if (runes.state !== 'success' && !runes.value) return null;
if (runes.status !== 'success' && !runes.data) return null;

return runes.value.runes.map((rune, i) => {
return runes.data.runes.map((rune, i) => {
const key = `${rune.asset.symbol}${i}`;
const captionLeft = 'Runes';
const icon = <RunesAvatarIcon />;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,16 +32,16 @@ export function Sip10TokenAssetList({
const { isEnabled } = useManagedSip10Tools(accountIndex);

useEffect(() => {
if (sip10s.value && sip10s.value.sip10s.length > 0 && setHasManageableTokens) {
if (sip10s.data && sip10s.data.sip10s.length > 0 && setHasManageableTokens) {
setHasManageableTokens(true);
}
}, [sip10s, setHasManageableTokens]);

if (sip10s.state !== 'success' && !sip10s.value) return null;
if (!sip10s.data) return null;

return (
<Stack>
{sip10s.value.sip10s.map(sip10 => (
{sip10s.data.sip10s.map(sip10 => (
<Sip10TokenAssetItem
key={sip10.asset.assetId}
assetRightElementVariant={assetRightElementVariant}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,13 +13,13 @@ export function useInscribedSpendableUtxos() {
const { utxos } = useCurrentNativeSegwitInscribedUtxos();

return useMemo(() => {
if (!utxos || !nativeSegwitInscriptions.value) return [];
if (!utxos || !nativeSegwitInscriptions.data) return [];

// Preformatting utxos so that inscriptions are declared as an object
// property aids the following filter logic
const utxosFormatted = utxos.map(utxo => ({
...utxo,
inscriptions: nativeSegwitInscriptions.value.filter(
inscriptions: nativeSegwitInscriptions.data.filter(
inscription => inscription.txid === utxo.txid && Number(inscription.output) === utxo.vout
),
}));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ export function useTransactionError() {

const currentAccount = useCurrentStacksAccount();
const balance = useStxAddressBalance(currentAccount?.address ?? '');
const availableUnlockedBalance = balance.value?.stx.unlockedBalance;
const availableUnlockedBalance = balance.data?.stx.unlockedBalance;

const unsignedTx = useUnsignedStacksTransactionBaseState();
const { data: stxFees } = useCalculateStacksTxFees(unsignedTx.transaction);
Expand All @@ -42,7 +42,7 @@ export function useTransactionError() {
return useMemo<TransactionErrorReason | void>(() => {
if (!origin) return TransactionErrorReason.ExpiredRequest;

if (balance.state !== 'success' || isVerifyingSbtcEligibilty) return;
if (balance.isLoading || isVerifyingSbtcEligibilty) return;

if (!transactionRequest || !availableUnlockedBalance || !currentAccount) {
return TransactionErrorReason.Generic;
Expand Down Expand Up @@ -75,7 +75,7 @@ export function useTransactionError() {
}
return;
}, [
balance.state,
balance.isLoading,
origin,
transactionRequest,
contractInterface,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ function SendButtonSuspense() {
const stxBalance = useStxAddressBalance(stxAddress);
const { sip10s: stacksFtAssets } = useSip10AddressTransferableTokenBalances(stxAddress);

const isDisabled = !btcAddress && !stxBalance.value && stacksFtAssets.length === 0;
const isDisabled = !btcAddress && !stxBalance.data && stacksFtAssets.length === 0;

return (
<IconButton
Expand Down
8 changes: 4 additions & 4 deletions apps/extension/src/app/pages/home/home-current.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -47,15 +47,15 @@ export function Home() {
<AccountCard
name={name}
availableBalance={
balance.state !== 'success' ? emptyAmountPlaceholder : formatCurrency(balance.value)
!balance.data ? emptyAmountPlaceholder : formatCurrency(balance.data)
}
totalBalance={
balance.state !== 'success' ? emptyAmountPlaceholder : formatCurrency(balance.value)
!balance.data ? emptyAmountPlaceholder : formatCurrency(balance.data)
}
toggleSwitchAccount={() => toggleSwitchAccount()}
isFetchingBnsName={isFetchingBnsName}
isLoadingBalance={balance.state === 'loading'}
isLoadingAdditionalData={balance.state === 'loading'}
isLoadingBalance={balance.isLoading}
isLoadingAdditionalData={balance.isLoading}
isBalancePrivate={isPrivateMode}
onShowBalance={togglePrivateMode}
>
Expand Down
8 changes: 4 additions & 4 deletions apps/extension/src/app/pages/home/home-legacy.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -46,15 +46,15 @@ export function HomeLegacy() {
<AccountCard
name={name}
availableBalance={
balance.state !== 'success' ? emptyAmountPlaceholder : formatCurrency(balance.value)
!balance.data ? emptyAmountPlaceholder : formatCurrency(balance.data)
}
totalBalance={
balance.state !== 'success' ? emptyAmountPlaceholder : formatCurrency(balance.value)
!balance.data ? emptyAmountPlaceholder : formatCurrency(balance.data)
}
toggleSwitchAccount={() => toggleSwitchAccount()}
isFetchingBnsName={isFetchingBnsName}
isLoadingBalance={balance.state === 'loading'}
isLoadingAdditionalData={balance.state === 'loading'}
isLoadingBalance={balance.isLoading}
isLoadingAdditionalData={balance.isLoading}
isBalancePrivate={isPrivateMode}
onShowBalance={togglePrivateMode}
>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ function Sip10TokenSendFormLoader({ children }: Sip10TokenSendFormLoaderProps) {
return children({
asset: tokenBalance.asset,
balance: tokenBalance.crypto,
marketData: marketData.value?.price.amount.isGreaterThan(0) ? marketData.value : undefined,
marketData: marketData.data?.price.amount.isGreaterThan(0) ? marketData.data : undefined,
});
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ export function useStxSendForm() {

// get stx balance
const balance = useStxAddressBalance(address);
const availableBalance = balance.value?.stx.availableUnlockedBalance ?? createMoney(0, 'STX');
const availableBalance = balance.data?.stx.availableUnlockedBalance ?? createMoney(0, 'STX');

const sendMaxBalance = useMemo(() => {
const standardFee = stxFees?.estimates[1]?.fee.amount || 0;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -65,15 +65,15 @@ function TransactionRequestBase() {
const stxAddress = useCurrentStacksAccountAddress();

const stxBalance = useStxAddressBalance(stxAddress);
const availableUnlockedBalance = stxBalance.value?.stx.availableUnlockedBalance;
const availableUnlockedBalance = stxBalance.data?.stx.availableUnlockedBalance;

const { data: nextNonce, status: nonceQueryStatus } = useNextNonce(stxAddress);

const { isVerifying: isVerifyingSbtcSponsorship, result: sbtcSponsorshipEligibility } =
useCheckSbtcSponsorshipEligible({ baseTx: unsignedTx, stxFees });

const canSubmit =
stxBalance.state === 'success' && nonceQueryStatus === 'success' && !isVerifyingSbtcSponsorship;
!stxBalance.isLoading && nonceQueryStatus === 'success' && !isVerifyingSbtcSponsorship;

const navigate = useNavigate();
const { stacksBroadcastTransaction } = useStacksBroadcastTransaction({ token: 'STX' });
Expand Down
25 changes: 11 additions & 14 deletions apps/extension/src/app/query/bitcoin/balance/btc-balance.hooks.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@ import { createBtcBalance, createMoney } from '@leather.io/utils';
import { useAccountAddresses } from '@app/services/accounts/use-account-addresses';
import { useNativeSegwitAccountRequest } from '@app/services/accounts/use-native-segwit-account-request';
import { useTaprootAccountRequest } from '@app/services/accounts/use-taproot-account-request';
import { toFetchState } from '@app/services/fetch-state';
import { useDiscardedInscriptions } from '@app/store/settings/settings.selectors';

import { useGetBtcAccountBalanceQuery } from './btc-balance.query';
Expand All @@ -23,24 +22,22 @@ export function useCurrentTaprootBtcBalanceWithFallback() {
}

function useBtcBalanceWithFallback(request: AccountRequest) {
const balance = toFetchState(useGetBtcAccountBalanceQuery(request));
const balance = useGetBtcAccountBalanceQuery(request);
return {
isLoading: balance.state !== 'success',
btc: balance.value?.btc ?? fallbackBtcBalance,
quote: balance.value?.quote ?? fallbackQuoteBalance,
isLoading: balance.isLoading,
btc: balance.data?.btc ?? fallbackBtcBalance,
quote: balance.data?.quote ?? fallbackQuoteBalance,
};
}

export function useNativeSegwitBtcAccountBalance(accountIndex: number) {
const account = useAccountAddresses(accountIndex);
const discardedInscriptions = useDiscardedInscriptions();
return toFetchState(
useGetBtcAccountBalanceQuery({
account,
protections: {
discardedInscriptions,
},
exclusions: { taprootAddresses: true },
})
);
return useGetBtcAccountBalanceQuery({
account,
protections: {
discardedInscriptions,
},
exclusions: { taprootAddresses: true },
});
}
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@ import { minutesInMs, secondsInMs } from '@leather.io/utils';

import { useCurrentNetworkState } from '@app/query/leather-query-provider';
import { useNativeSegwitAccountRequest } from '@app/services/accounts/use-native-segwit-account-request';
import { toFetchState } from '@app/services/fetch-state';
import { useCurrentBitcoinAccountXpubs } from '@app/store/accounts/blockchain/bitcoin/bitcoin.hooks';

import { useBitcoinClient } from '../../clients/bitcoin-client';
Expand Down Expand Up @@ -46,7 +45,7 @@ export function useNumberOfInscriptionsOnUtxo() {

export function useCurrentNativeSegwitInscriptions() {
const request = useNativeSegwitAccountRequest();
return toFetchState(useGetAccountInscriptionsQuery(request));
return useGetAccountInscriptionsQuery(request);
}

function useGetAccountInscriptionsQuery(request: AccountRequest) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,13 +7,12 @@ import { isSameAsset } from '@leather.io/utils';
import { useUserSettings } from '@app/hooks/use-user-settings';
import { balanceQueryOptionsWithRefetch } from '@app/query/common/balance-query-options';
import { useAccountAddresses } from '@app/services/accounts/use-account-addresses';
import { toFetchState } from '@app/services/fetch-state';

export function useManagedRunesTools(accountIndex: number) {
const enabledRunes = useRunesAccountBalance(accountIndex);
return {
isEnabled: (rune: RuneBalance) =>
!!enabledRunes.value?.runes.find(r => isSameAsset(r.asset, rune.asset)),
!!enabledRunes.data?.runes.find(r => isSameAsset(r.asset, rune.asset)),
};
}

Expand All @@ -22,12 +21,10 @@ export function useRunesAccountBalance(
options?: { includeHiddenAssets?: boolean }
) {
const account = useAccountAddresses(accountIndex);
return toFetchState(
useGetRunesAccountBalanceQuery({
account,
assets: { includeHiddenAssets: options?.includeHiddenAssets },
})
);
return useGetRunesAccountBalanceQuery({
account,
assets: { includeHiddenAssets: options?.includeHiddenAssets },
});
}

function useGetRunesAccountBalanceQuery(request: AccountRequest) {
Expand Down
Loading
Loading