Skip to content

Commit

Permalink
Merge pull request #1 from chiew256/feat/global-prioritization-fee
Browse files Browse the repository at this point in the history
feat: global prioritization fee
  • Loading branch information
chiew256 committed Apr 30, 2024
2 parents ae01d80 + a544932 commit d143bef
Show file tree
Hide file tree
Showing 7 changed files with 763 additions and 313 deletions.
33 changes: 18 additions & 15 deletions src/components/Jupiter.tsx
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { JupiterProvider } from '@jup-ag/react-hook';
import { useConnection } from '@jup-ag/wallet-adapter';
import { QueryClient, QueryClientProvider } from '@tanstack/react-query';
import React, { useEffect, useMemo, useState } from 'react';
import { useEffect, useMemo, useState } from 'react';

import { useScreenState } from 'src/contexts/ScreenProvider';
import { SwapContextProvider } from 'src/contexts/SwapContext';
Expand All @@ -11,6 +11,7 @@ import { ROUTE_CACHE_DURATION } from 'src/misc/constants';
import { IInit } from 'src/types';

import { PublicKey } from '@solana/web3.js';
import { PrioritizationFeeContextProvider } from 'src/contexts/PrioritizationFeeContextProvider';
import CloseIcon from 'src/icons/CloseIcon';
import Header from '../components/Header';
import { AccountsProvider } from '../contexts/accounts';
Expand Down Expand Up @@ -96,20 +97,22 @@ const JupiterApp = (props: IInit) => {
platformFeeAndAccounts={platformFeeAndAccounts}
asLegacyTransaction={asLegacyTransaction}
>
<SwapContextProvider
displayMode={displayMode}
formProps={formProps}
scriptDomain={props.scriptDomain}
asLegacyTransaction={asLegacyTransaction}
setAsLegacyTransaction={setAsLegacyTransaction}
maxAccounts={maxAccounts}
useUserSlippage={props.useUserSlippage ?? true}
slippagePresets={props.slippagePresets}
>
<USDValueProvider>
<Content />
</USDValueProvider>
</SwapContextProvider>
<PrioritizationFeeContextProvider>
<SwapContextProvider
displayMode={displayMode}
formProps={formProps}
scriptDomain={props.scriptDomain}
asLegacyTransaction={asLegacyTransaction}
setAsLegacyTransaction={setAsLegacyTransaction}
maxAccounts={maxAccounts}
useUserSlippage={props.useUserSlippage ?? true}
slippagePresets={props.slippagePresets}
>
<USDValueProvider>
<Content />
</USDValueProvider>
</SwapContextProvider>
</PrioritizationFeeContextProvider>
</JupiterProvider>
</AccountsProvider>
</QueryClientProvider>
Expand Down
16 changes: 7 additions & 9 deletions src/components/PriceInfo/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -4,16 +4,16 @@ import { TokenInfo } from '@solana/spl-token-registry';
import classNames from 'classnames';
import Decimal from 'decimal.js';
import JSBI from 'jsbi';
import React, { useEffect, useMemo, useState } from 'react';
import { useSwapContext } from 'src/contexts/SwapContext';
import { useEffect, useMemo, useState } from 'react';
import { usePrioritizationFee } from 'src/contexts/PrioritizationFeeContextProvider';
import { useWalletPassThrough } from 'src/contexts/WalletPassthroughProvider';
import { useAccounts } from 'src/contexts/accounts';
import { formatNumber } from 'src/misc/utils';
import ExchangeRate from '../ExchangeRate';
import Deposits from './Deposits';
import Fees from './Fees';
import TransactionFee from './TransactionFee';
import { useAccounts } from 'src/contexts/accounts';
import PlatformFees, { PlatformFeesInfo } from './PlatformFees';
import TransactionFee from './TransactionFee';

const Index = ({
quoteResponse,
Expand Down Expand Up @@ -79,9 +79,7 @@ const Index = ({
const hasAtaDeposit = (feeInformation?.ataDeposits.length ?? 0) > 0;
const hasSerumDeposit = (feeInformation?.openOrdersDeposits.length ?? 0) > 0;

const {
jupiter: { priorityFeeInSOL },
} = useSwapContext();
const { priorityFee } = usePrioritizationFee();

return (
<div className={classNames('mt-4 space-y-4 border border-white/5 rounded-xl p-3', containerClassName)}>
Expand Down Expand Up @@ -126,10 +124,10 @@ const Index = ({
/>
) : null}

{priorityFeeInSOL > 0 ? (
{priorityFee > 0 ? (
<div className="flex items-center justify-between text-xs">
<div className="text-white/30">Priority Fee</div>
<div className="text-white/30">{new Decimal(priorityFeeInSOL).toString()}</div>
<div className="text-white/30">{new Decimal(priorityFee).toString()} SOL</div>
</div>
) : null}
</>
Expand Down
Loading

0 comments on commit d143bef

Please sign in to comment.