match mango-v4 dev branch
Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
This commit is contained in:
parent
84cff1613e
commit
72e4808141
|
@ -38,9 +38,7 @@ const MangoAccountsList = ({
|
|||
s.activityFeed.loading = true
|
||||
})
|
||||
try {
|
||||
const reloadedMangoAccount = await retryFn(() =>
|
||||
acc.reload(client, group)
|
||||
)
|
||||
const reloadedMangoAccount = await retryFn(() => acc.reload(client))
|
||||
set((s) => {
|
||||
s.mangoAccount.current = reloadedMangoAccount
|
||||
s.mangoAccount.lastUpdatedAt = new Date().toISOString()
|
||||
|
|
|
@ -46,7 +46,7 @@ const ReadOnlyMangoAccount = () => {
|
|||
const client = mangoStore.getState().client
|
||||
const pk = new PublicKey(ma)
|
||||
const readOnlyMangoAccount = await client.getMangoAccount(pk)
|
||||
await readOnlyMangoAccount.reloadAccountData(client, group)
|
||||
await readOnlyMangoAccount.reloadAccountData(client)
|
||||
// set((state) => {
|
||||
// state.mangoAccount.current = readOnlyMangoAccount
|
||||
// state.mangoAccount.initialLoad = false
|
||||
|
|
|
@ -26,6 +26,7 @@ import HealthHeart from './account/HealthHeart'
|
|||
const SideNav = ({ collapsed }: { collapsed: boolean }) => {
|
||||
const { t } = useTranslation('common')
|
||||
const { connected } = useWallet()
|
||||
const group = mangoStore.getState().group
|
||||
const mangoAccount = mangoStore((s) => s.mangoAccount.current)
|
||||
const router = useRouter()
|
||||
const { pathname } = router
|
||||
|
@ -143,8 +144,8 @@ const SideNav = ({ collapsed }: { collapsed: boolean }) => {
|
|||
icon={
|
||||
<HealthHeart
|
||||
health={
|
||||
mangoAccount
|
||||
? mangoAccount.getHealthRatioUi(HealthType.maint)
|
||||
group && mangoAccount
|
||||
? mangoAccount.getHealthRatioUi(group, HealthType.maint)
|
||||
: undefined
|
||||
}
|
||||
size={32}
|
||||
|
|
|
@ -30,6 +30,7 @@ import { IS_ONBOARDED_KEY } from 'utils/constants'
|
|||
import { useWallet } from '@solana/wallet-adapter-react'
|
||||
import useLocalStorageState from 'hooks/useLocalStorageState'
|
||||
import AccountOnboardingTour from '@components/tours/AccountOnboardingTour'
|
||||
import { group } from 'console'
|
||||
|
||||
export async function getStaticProps({ locale }: { locale: string }) {
|
||||
return {
|
||||
|
@ -46,6 +47,7 @@ export async function getStaticProps({ locale }: { locale: string }) {
|
|||
const AccountPage = () => {
|
||||
const { t } = useTranslation('common')
|
||||
const { connected } = useWallet()
|
||||
const group = mangoStore.getState().group
|
||||
const { mangoAccount } = useMangoAccount()
|
||||
const actions = mangoStore((s) => s.actions)
|
||||
const loadPerformanceData = mangoStore(
|
||||
|
@ -71,10 +73,12 @@ const AccountPage = () => {
|
|||
const [isOnboarded] = useLocalStorageState(IS_ONBOARDED_KEY)
|
||||
|
||||
const leverage = useMemo(() => {
|
||||
if (!mangoAccount) return 0
|
||||
const liabsValue = mangoAccount.getLiabsValue(HealthType.init)!.toNumber()
|
||||
if (!group || !mangoAccount) return 0
|
||||
const liabsValue = mangoAccount
|
||||
.getLiabsValue(group, HealthType.init)!
|
||||
.toNumber()
|
||||
const totalCollateral = mangoAccount
|
||||
.getAssetsValue(HealthType.init)!
|
||||
.getAssetsValue(group, HealthType.init)!
|
||||
.toNumber()
|
||||
return liabsValue / totalCollateral
|
||||
}, [mangoAccount])
|
||||
|
@ -117,11 +121,11 @@ const AccountPage = () => {
|
|||
}
|
||||
|
||||
const { accountPnl, accountValueChange } = useMemo(() => {
|
||||
if (performanceData.length && mangoAccount) {
|
||||
if (group && performanceData.length && mangoAccount) {
|
||||
return {
|
||||
accountPnl: performanceData[performanceData.length - 1].pnl,
|
||||
accountValueChange:
|
||||
((toUiDecimalsForQuote(mangoAccount.getEquity()!.toNumber()) -
|
||||
((toUiDecimalsForQuote(mangoAccount.getEquity(group)!.toNumber()) -
|
||||
performanceData[0].account_equity) /
|
||||
performanceData[0].account_equity) *
|
||||
100,
|
||||
|
@ -166,7 +170,9 @@ const AccountPage = () => {
|
|||
}, [oneDayPerformanceData, mangoAccount])
|
||||
|
||||
const maintHealth = useMemo(() => {
|
||||
return mangoAccount ? mangoAccount.getHealthRatioUi(HealthType.maint) : 0
|
||||
return group && mangoAccount
|
||||
? mangoAccount.getHealthRatioUi(group, HealthType.maint)
|
||||
: 0
|
||||
}, [mangoAccount])
|
||||
|
||||
const handleChartToShow = (
|
||||
|
@ -198,7 +204,7 @@ const AccountPage = () => {
|
|||
</Tooltip>
|
||||
<div className="mb-1 flex items-center text-5xl font-bold text-th-fgd-1">
|
||||
$
|
||||
{mangoAccount ? (
|
||||
{group && mangoAccount ? (
|
||||
<FlipNumbers
|
||||
height={48}
|
||||
width={32}
|
||||
|
@ -206,7 +212,9 @@ const AccountPage = () => {
|
|||
delay={0.05}
|
||||
duration={1}
|
||||
numbers={formatDecimal(
|
||||
toUiDecimalsForQuote(mangoAccount.getEquity()!.toNumber()),
|
||||
toUiDecimalsForQuote(
|
||||
mangoAccount.getEquity(group)!.toNumber()
|
||||
),
|
||||
2
|
||||
)}
|
||||
/>
|
||||
|
@ -338,10 +346,10 @@ const AccountPage = () => {
|
|||
</p>
|
||||
</Tooltip>
|
||||
<p className="mt-1 mb-0.5 text-2xl font-bold text-th-fgd-1 lg:text-xl xl:text-2xl">
|
||||
{mangoAccount
|
||||
{group && mangoAccount
|
||||
? formatFixedDecimals(
|
||||
toUiDecimalsForQuote(
|
||||
mangoAccount.getCollateralValue()!.toNumber()
|
||||
mangoAccount.getCollateralValue(group)!.toNumber()
|
||||
),
|
||||
true
|
||||
)
|
||||
|
@ -356,11 +364,11 @@ const AccountPage = () => {
|
|||
>
|
||||
<span className="tooltip-underline">Total</span>:
|
||||
<span className="ml-1 font-mono text-th-fgd-2">
|
||||
{mangoAccount
|
||||
{group && mangoAccount
|
||||
? formatFixedDecimals(
|
||||
toUiDecimalsForQuote(
|
||||
mangoAccount
|
||||
.getAssetsValue(HealthType.init)!
|
||||
.getAssetsValue(group, HealthType.init)!
|
||||
.toNumber()
|
||||
),
|
||||
true
|
||||
|
|
|
@ -15,15 +15,18 @@ import { useWallet } from '@solana/wallet-adapter-react'
|
|||
const MangoAccountSummary = () => {
|
||||
const { t } = useTranslation('common')
|
||||
const { connected } = useWallet()
|
||||
const group = mangoStore.getState().group
|
||||
const mangoAccount = mangoStore((s) => s.mangoAccount.current)
|
||||
const [showDepositModal, setShowDepositModal] = useState(false)
|
||||
const [showWithdrawModal, setShowWithdrawModal] = useState(false)
|
||||
|
||||
const leverage = useMemo(() => {
|
||||
if (!mangoAccount) return 0
|
||||
const liabsValue = mangoAccount.getLiabsValue(HealthType.init)!.toNumber()
|
||||
if (!group || !mangoAccount) return 0
|
||||
const liabsValue = mangoAccount
|
||||
.getLiabsValue(group, HealthType.init)!
|
||||
.toNumber()
|
||||
const totalCollateral = mangoAccount
|
||||
.getAssetsValue(HealthType.init)!
|
||||
.getAssetsValue(group, HealthType.init)!
|
||||
.toNumber()
|
||||
return liabsValue / totalCollateral
|
||||
}, [mangoAccount])
|
||||
|
@ -34,7 +37,9 @@ const MangoAccountSummary = () => {
|
|||
<div>
|
||||
<p className="text-sm text-th-fgd-3">{t('health')}</p>
|
||||
<p className="font-mono text-sm text-th-fgd-1">
|
||||
{mangoAccount ? mangoAccount.getHealthRatioUi(HealthType.maint) : 0}
|
||||
{group && mangoAccount
|
||||
? mangoAccount.getHealthRatioUi(group, HealthType.maint)
|
||||
: 0}
|
||||
%
|
||||
</p>
|
||||
</div>
|
||||
|
@ -42,9 +47,11 @@ const MangoAccountSummary = () => {
|
|||
<p className="text-sm text-th-fgd-3">{t('account-value')}</p>
|
||||
<p className="font-mono text-sm text-th-fgd-1">
|
||||
$
|
||||
{mangoAccount
|
||||
{group && mangoAccount
|
||||
? formatDecimal(
|
||||
toUiDecimalsForQuote(mangoAccount.getEquity()!.toNumber()),
|
||||
toUiDecimalsForQuote(
|
||||
mangoAccount.getEquity(group)!.toNumber()
|
||||
),
|
||||
2
|
||||
)
|
||||
: (0).toFixed(2)}
|
||||
|
@ -53,10 +60,10 @@ const MangoAccountSummary = () => {
|
|||
<div>
|
||||
<p className="text-sm text-th-fgd-3">{t('free-collateral')}</p>
|
||||
<p className="font-mono text-sm text-th-fgd-1">
|
||||
{mangoAccount
|
||||
{group && mangoAccount
|
||||
? formatFixedDecimals(
|
||||
toUiDecimalsForQuote(
|
||||
mangoAccount.getCollateralValue()!.toNumber()
|
||||
mangoAccount.getCollateralValue(group)!.toNumber()
|
||||
),
|
||||
true
|
||||
)
|
||||
|
@ -66,10 +73,12 @@ const MangoAccountSummary = () => {
|
|||
<div>
|
||||
<p className="text-sm text-th-fgd-3">{t('total-collateral')}</p>
|
||||
<p className="font-mono text-sm text-th-fgd-1">
|
||||
{mangoAccount
|
||||
{group && mangoAccount
|
||||
? formatFixedDecimals(
|
||||
toUiDecimalsForQuote(
|
||||
mangoAccount.getAssetsValue(HealthType.init)!.toNumber()
|
||||
mangoAccount
|
||||
.getAssetsValue(group, HealthType.init)!
|
||||
.toNumber()
|
||||
),
|
||||
true
|
||||
)
|
||||
|
|
|
@ -141,7 +141,9 @@ function BorrowModal({ isOpen, onClose, token }: ModalCombinedProps) {
|
|||
}, [mangoAccount, group])
|
||||
|
||||
const initHealth = useMemo(() => {
|
||||
return mangoAccount ? mangoAccount.getHealthRatioUi(HealthType.init) : 100
|
||||
return group && mangoAccount
|
||||
? mangoAccount.getHealthRatioUi(group, HealthType.init)
|
||||
: 100
|
||||
}, [mangoAccount])
|
||||
|
||||
const showInsufficientBalance = Number(inputAmount)
|
||||
|
|
|
@ -31,7 +31,7 @@ const CloseAccountModal = ({ isOpen, onClose }: ModalProps) => {
|
|||
)
|
||||
let newCurrentAccount: MangoAccount
|
||||
if (newMangoAccounts[0]) {
|
||||
newCurrentAccount = await newMangoAccounts[0].reload(client, group)
|
||||
newCurrentAccount = await newMangoAccounts[0].reload(client)
|
||||
}
|
||||
|
||||
setLoading(false)
|
||||
|
|
|
@ -188,14 +188,14 @@ function DepositModal({ isOpen, onClose, token }: ModalCombinedProps) {
|
|||
|
||||
const exceedsAlphaMax = useMemo(() => {
|
||||
const mangoAccount = mangoStore.getState().mangoAccount.current
|
||||
if (!mangoAccount) return
|
||||
if (!group || !mangoAccount) return
|
||||
if (
|
||||
mangoAccount.owner.toString() ===
|
||||
'8SSLjXBEVk9nesbhi9UMCA32uijbVBUqWoKPPQPTekzt'
|
||||
)
|
||||
return false
|
||||
const accountValue = toUiDecimalsForQuote(
|
||||
mangoAccount.getEquity()!.toNumber()
|
||||
mangoAccount.getEquity(group)!.toNumber()
|
||||
)
|
||||
return (
|
||||
parseFloat(inputAmount) > ALPHA_DEPOSIT_LIMIT ||
|
||||
|
|
|
@ -146,7 +146,9 @@ function WithdrawModal({ isOpen, onClose, token }: ModalCombinedProps) {
|
|||
}, [mangoAccount, group])
|
||||
|
||||
const initHealth = useMemo(() => {
|
||||
return mangoAccount ? mangoAccount.getHealthRatioUi(HealthType.init) : 100
|
||||
return group && mangoAccount
|
||||
? mangoAccount.getHealthRatioUi(group, HealthType.init)
|
||||
: 100
|
||||
}, [mangoAccount])
|
||||
|
||||
const showInsufficientBalance = Number(inputAmount)
|
||||
|
|
|
@ -4,6 +4,7 @@ import { PublicKey } from '@solana/web3.js'
|
|||
import { useTranslation } from 'next-i18next'
|
||||
import { useMemo } from 'react'
|
||||
import mangoStore from '@store/mangoStore'
|
||||
import { group } from 'console'
|
||||
|
||||
const HealthImpact = ({
|
||||
uiAmount,
|
||||
|
@ -15,11 +16,12 @@ const HealthImpact = ({
|
|||
mintPk: PublicKey
|
||||
}) => {
|
||||
const { t } = useTranslation('common')
|
||||
const group = mangoStore.getState().group
|
||||
const mangoAccount = mangoStore((s) => s.mangoAccount.current)
|
||||
|
||||
const currentMaintHealth = useMemo(() => {
|
||||
if (!mangoAccount) return 0
|
||||
return mangoAccount.getHealthRatioUi(HealthType.maint)
|
||||
if (!group || !mangoAccount) return 0
|
||||
return mangoAccount.getHealthRatioUi(group, HealthType.maint)
|
||||
}, [mangoAccount])
|
||||
|
||||
const maintProjectedHealth = useMemo(() => {
|
||||
|
|
|
@ -37,6 +37,7 @@ import { useTokenMax } from './useTokenMax'
|
|||
import WalletIcon from '../icons/WalletIcon'
|
||||
import Tooltip from '@components/shared/Tooltip'
|
||||
import MaxAmountButton from '@components/shared/MaxAmountButton'
|
||||
import { group } from 'console'
|
||||
|
||||
const MAX_DIGITS = 11
|
||||
export const withValueLimit = (values: NumberFormatValues): boolean => {
|
||||
|
@ -54,6 +55,8 @@ const SwapForm = () => {
|
|||
const [showSettings, setShowSettings] = useState(false)
|
||||
const [showConfirm, setShowConfirm] = useState(false)
|
||||
|
||||
const group = mangoStore.getState().group
|
||||
|
||||
const set = mangoStore.getState().set
|
||||
const useMargin = mangoStore((s) => s.swap.margin)
|
||||
const slippage = mangoStore((s) => s.swap.slippage)
|
||||
|
@ -143,8 +146,8 @@ const SwapForm = () => {
|
|||
}, [inputTokenInfo, outputTokenInfo, set, amountOut, amountIn])
|
||||
|
||||
const currentMaintHealth = useMemo(() => {
|
||||
if (!mangoAccount) return 0
|
||||
return mangoAccount.getHealthRatioUi(HealthType.maint)
|
||||
if (!group || !mangoAccount) return 0
|
||||
return mangoAccount.getHealthRatioUi(group, HealthType.maint)
|
||||
}, [mangoAccount])
|
||||
|
||||
const maintProjectedHealth = useMemo(() => {
|
||||
|
|
|
@ -176,7 +176,7 @@ const Orderbook = () => {
|
|||
const serum3MarketExternal = useMemo(() => {
|
||||
const group = mangoStore.getState().group
|
||||
if (!group || !selectedMarket) return
|
||||
return group.serum3MarketExternalsMap.get(
|
||||
return group.serum3ExternalMarketsMap.get(
|
||||
selectedMarket.serumMarketExternal.toBase58()
|
||||
)
|
||||
}, [selectedMarket])
|
||||
|
@ -214,7 +214,7 @@ const Orderbook = () => {
|
|||
const orderbook = mangoStore.getState().selectedMarket.orderbook
|
||||
const group = mangoStore.getState().group
|
||||
if (!selectedMarket || !group) return
|
||||
const serum3MarketExternal = group.serum3MarketExternalsMap.get(
|
||||
const serum3MarketExternal = group.serum3ExternalMarketsMap.get(
|
||||
selectedMarket.serumMarketExternal.toBase58()
|
||||
)
|
||||
if (
|
||||
|
|
|
@ -16,7 +16,7 @@ const RecentTrades = () => {
|
|||
const serum3MarketExternal = useMemo(() => {
|
||||
const group = mangoStore.getState().group
|
||||
if (!group || !selectedMarketPk) return
|
||||
return group.serum3MarketExternalsMap.get(selectedMarketPk)
|
||||
return group.serum3ExternalMarketsMap.get(selectedMarketPk)
|
||||
}, [selectedMarketPk])
|
||||
|
||||
const baseSymbol = useMemo(() => {
|
||||
|
|
|
@ -12,7 +12,7 @@ export function useUnsettledSpotBalances() {
|
|||
const unsettledBalances: Record<string, { base: number; quote: number }> =
|
||||
{}
|
||||
mangoAccount.serum3Active().forEach((serumMarket) => {
|
||||
const market = group.getSerum3MarketByIndex(serumMarket.marketIndex)!
|
||||
const market = group.getSerum3MarketByMarketIndex(serumMarket.marketIndex)!
|
||||
const openOrdersAccForMkt = openOrdersAccounts.find((oo) =>
|
||||
oo.market.equals(market.serumMarketExternal)
|
||||
)
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
"postinstall": "tar -xzC public -f vendor/charting_library.tgz;tar -xzC public -f vendor/datafeeds.tgz"
|
||||
},
|
||||
"dependencies": {
|
||||
"@blockworks-foundation/mango-v4": "git+https://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:x-oauth-basic@github.com/blockworks-foundation/mango-v4.git#main",
|
||||
"@blockworks-foundation/mango-v4": "git+https://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:x-oauth-basic@github.com/blockworks-foundation/mango-v4.git#dev",
|
||||
"@headlessui/react": "^1.6.6",
|
||||
"@heroicons/react": "^2.0.10",
|
||||
"@jup-ag/core": "^2.0.0-beta.3",
|
||||
|
|
|
@ -538,10 +538,7 @@ const mangoStore = create<MangoStore>()(
|
|||
if (!mangoAccount)
|
||||
throw new Error('No mango account exists for reload')
|
||||
|
||||
const reloadedMangoAccount = await mangoAccount.reload(
|
||||
client,
|
||||
group
|
||||
)
|
||||
const reloadedMangoAccount = await mangoAccount.reload(client)
|
||||
set((state) => {
|
||||
state.mangoAccount.current = reloadedMangoAccount
|
||||
state.mangoAccount.lastUpdatedAt = new Date().toISOString()
|
||||
|
@ -586,7 +583,7 @@ const mangoStore = create<MangoStore>()(
|
|||
|
||||
if (newSelectedMangoAccount) {
|
||||
await retryFn(() =>
|
||||
newSelectedMangoAccount!.reloadAccountData(client, group)
|
||||
newSelectedMangoAccount!.reloadAccountData(client)
|
||||
)
|
||||
await actions.fetchSerumOpenOrders(newSelectedMangoAccount)
|
||||
}
|
||||
|
@ -636,7 +633,7 @@ const mangoStore = create<MangoStore>()(
|
|||
try {
|
||||
let openOrders: Record<string, Order[]> = {}
|
||||
for (const serum3Orders of mangoAccount.serum3) {
|
||||
const market = group.getSerum3MarketByIndex(
|
||||
const market = group.getSerum3MarketByMarketIndex(
|
||||
serum3Orders.marketIndex
|
||||
)
|
||||
if (market) {
|
||||
|
|
|
@ -14,7 +14,7 @@ const spotBalancesUpdater = (_newState: any, _prevState: any) => {
|
|||
const balances: SpotBalances = {}
|
||||
|
||||
for (const serumMarket of mangoAccount.serum3Active()) {
|
||||
const market = group.getSerum3MarketByIndex(serumMarket.marketIndex)
|
||||
const market = group.getSerum3MarketByMarketIndex(serumMarket.marketIndex)
|
||||
if (!market) continue
|
||||
const openOrdersAccForMkt = openOrdersAccounts.find((oo) =>
|
||||
oo.market.equals(market.serumMarketExternal)
|
||||
|
@ -52,11 +52,15 @@ const spotBalancesUpdater = (_newState: any, _prevState: any) => {
|
|||
|
||||
let quoteBalances =
|
||||
balances[
|
||||
market.getSerum3ExternalMarket(group)!.quoteMintAddress.toString()
|
||||
group
|
||||
.getSerum3ExternalMarket(market.serumMarketExternal)
|
||||
.quoteMintAddress.toString()
|
||||
]
|
||||
if (!quoteBalances) {
|
||||
quoteBalances = balances[
|
||||
market.getSerum3ExternalMarket(group)!.quoteMintAddress.toString()
|
||||
group
|
||||
.getSerum3ExternalMarket(market.serumMarketExternal)
|
||||
.quoteMintAddress.toString()
|
||||
] = { inOrders: 0, unsettled: 0 }
|
||||
}
|
||||
quoteBalances.inOrders += quoteTokenLockedInOrder || 0
|
||||
|
@ -64,11 +68,15 @@ const spotBalancesUpdater = (_newState: any, _prevState: any) => {
|
|||
|
||||
let baseBalances =
|
||||
balances[
|
||||
market.getSerum3ExternalMarket(group)!.baseMintAddress.toString()
|
||||
group
|
||||
.getSerum3ExternalMarket(market.serumMarketExternal)
|
||||
.baseMintAddress.toString()
|
||||
]
|
||||
if (!baseBalances) {
|
||||
baseBalances = balances[
|
||||
market.getSerum3ExternalMarket(group)!.baseMintAddress.toString()
|
||||
group
|
||||
.getSerum3ExternalMarket(market.serumMarketExternal)
|
||||
.baseMintAddress.toString()
|
||||
] = { inOrders: 0, unsettled: 0 }
|
||||
}
|
||||
baseBalances.inOrders += baseTokenLockedInOrder
|
||||
|
|
|
@ -43,14 +43,15 @@
|
|||
dependencies:
|
||||
regenerator-runtime "^0.13.4"
|
||||
|
||||
"@blockworks-foundation/mango-v4@git+https://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:x-oauth-basic@github.com/blockworks-foundation/mango-v4.git#main":
|
||||
"@blockworks-foundation/mango-v4@git+https://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:x-oauth-basic@github.com/blockworks-foundation/mango-v4.git#dev":
|
||||
version "0.0.1-beta.3"
|
||||
resolved "git+https://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:x-oauth-basic@github.com/blockworks-foundation/mango-v4.git#0def20960819a96d9200d76cbbffc81977f9a0b2"
|
||||
resolved "git+https://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:x-oauth-basic@github.com/blockworks-foundation/mango-v4.git#8f6fa5134ddfb61358a261658fbe6628eb2b5acd"
|
||||
dependencies:
|
||||
"@project-serum/anchor" "^0.25.0"
|
||||
"@project-serum/serum" "^0.13.65"
|
||||
"@pythnetwork/client" "^2.7.0"
|
||||
"@solana/spl-token" "^0.1.8"
|
||||
"@solana/web3.js" "^1.63.1"
|
||||
"@switchboard-xyz/switchboard-v2" "^0.0.129"
|
||||
big.js "^6.1.1"
|
||||
bs58 "^5.0.0"
|
||||
|
@ -1304,7 +1305,7 @@
|
|||
superstruct "^0.14.2"
|
||||
tweetnacl "^1.0.0"
|
||||
|
||||
"@solana/web3.js@^1.17.0", "@solana/web3.js@^1.21.0", "@solana/web3.js@^1.22.0", "@solana/web3.js@^1.32.0", "@solana/web3.js@^1.36.0", "@solana/web3.js@^1.44.3":
|
||||
"@solana/web3.js@^1.17.0", "@solana/web3.js@^1.21.0", "@solana/web3.js@^1.22.0", "@solana/web3.js@^1.32.0", "@solana/web3.js@^1.36.0", "@solana/web3.js@^1.44.3", "@solana/web3.js@^1.63.1":
|
||||
version "1.63.1"
|
||||
resolved "https://registry.yarnpkg.com/@solana/web3.js/-/web3.js-1.63.1.tgz#88a19a17f5f4aada73ad70a94044c1067cab2b4d"
|
||||
integrity sha512-wgEdGVK5FTS2zENxbcGSvKpGZ0jDS6BUdGu8Gn6ns0CzgJkK83u4ip3THSnBPEQ5i/jrqukg998BwV1H67+qiQ==
|
||||
|
|
Loading…
Reference in New Issue