Deletes useMangoGroupConfig hook
This commit is contained in:
parent
578846d9b9
commit
f10a1dbce0
|
@ -4,7 +4,6 @@ import { ChevronDownIcon } from '@heroicons/react/solid'
|
|||
import { abbreviateAddress } from '../utils'
|
||||
import useMangoStore, { WalletToken } from '../stores/useMangoStore'
|
||||
import { RefreshClockwiseIcon } from './icons'
|
||||
import useMangoGroupConfig from '../hooks/useMangoGroupConfig'
|
||||
import { useTranslation } from 'next-i18next'
|
||||
import { LinkButton } from './Button'
|
||||
import { Label } from './Input'
|
||||
|
@ -23,7 +22,7 @@ const AccountSelect = ({
|
|||
hideAddress = false,
|
||||
}: AccountSelectProps) => {
|
||||
const { t } = useTranslation('common')
|
||||
const groupConfig = useMangoGroupConfig()
|
||||
const groupConfig = useMangoStore((s) => s.selectedMangoGroup.config)
|
||||
const tokenSymbols = useMemo(
|
||||
() => groupConfig.tokens.map((t) => t.symbol),
|
||||
[groupConfig]
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
import { useEffect, useState } from 'react'
|
||||
import { MenuIcon, PlusCircleIcon } from '@heroicons/react/outline'
|
||||
import useMangoGroupConfig from '../hooks/useMangoGroupConfig'
|
||||
import MarketMenuItem from './MarketMenuItem'
|
||||
import { LinkButton } from './Button'
|
||||
import MarketsModal from './MarketsModal'
|
||||
|
@ -8,13 +7,14 @@ import useLocalStorageState from '../hooks/useLocalStorageState'
|
|||
import { useViewport } from '../hooks/useViewport'
|
||||
import { breakpoints } from './TradePageGrid'
|
||||
import { useTranslation } from 'next-i18next'
|
||||
import useMangoStore from 'stores/useMangoStore'
|
||||
|
||||
const MarketSelect = () => {
|
||||
const { t } = useTranslation('common')
|
||||
const groupConfig = useMangoStore((s) => s.selectedMangoGroup.config)
|
||||
const [showMarketsModal, setShowMarketsModal] = useState(false)
|
||||
const [hiddenMarkets] = useLocalStorageState('hiddenMarkets', [])
|
||||
const [sortedMarkets, setSortedMarkets] = useState([])
|
||||
const groupConfig = useMangoGroupConfig()
|
||||
const { width } = useViewport()
|
||||
const isMobile = width ? width < breakpoints.md : false
|
||||
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
import React, { useMemo, useState } from 'react'
|
||||
import { ChevronLeftIcon, ChevronRightIcon } from '@heroicons/react/solid'
|
||||
import useMangoGroupConfig from '../hooks/useMangoGroupConfig'
|
||||
import Modal from './Modal'
|
||||
import { ElementTitle } from './styles'
|
||||
import Button, { LinkButton } from './Button'
|
||||
|
@ -197,7 +196,7 @@ const SettingsContent = ({ settingsView, setSettingsView }) => {
|
|||
|
||||
const DefaultMarketSettings = ({ setSettingsView }) => {
|
||||
const { t } = useTranslation('common')
|
||||
const groupConfig = useMangoGroupConfig()
|
||||
const groupConfig = useMangoStore((s) => s.selectedMangoGroup.config)
|
||||
const allMarkets = [
|
||||
...groupConfig.spotMarkets,
|
||||
...groupConfig.perpMarkets,
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
import { Fragment, useCallback, useMemo, useRef, useState } from 'react'
|
||||
import useMangoGroupConfig from '../hooks/useMangoGroupConfig'
|
||||
import { Popover, Transition } from '@headlessui/react'
|
||||
import { SearchIcon } from '@heroicons/react/outline'
|
||||
import { ChevronDownIcon } from '@heroicons/react/solid'
|
||||
|
@ -9,7 +8,7 @@ import MarketNavItem from './MarketNavItem'
|
|||
import useMangoStore from '../stores/useMangoStore'
|
||||
|
||||
const SwitchMarketDropdown = () => {
|
||||
const groupConfig = useMangoGroupConfig()
|
||||
const groupConfig = useMangoStore((s) => s.selectedMangoGroup.config)
|
||||
const marketConfig = useMangoStore((s) => s.selectedMarket.config)
|
||||
const baseSymbol = marketConfig.baseSymbol
|
||||
const isPerpMarket = marketConfig.kind === 'perp'
|
||||
|
|
|
@ -12,11 +12,11 @@ import Button, { LinkButton } from './Button'
|
|||
import Modal from './Modal'
|
||||
import { ElementTitle } from './styles'
|
||||
import { useTranslation } from 'next-i18next'
|
||||
import useMangoGroupConfig from '../hooks/useMangoGroupConfig'
|
||||
import { Popover, Transition } from '@headlessui/react'
|
||||
import Checkbox from './Checkbox'
|
||||
import dayjs from 'dayjs'
|
||||
import DateRangePicker from './DateRangePicker'
|
||||
import useMangoStore from 'stores/useMangoStore'
|
||||
|
||||
interface TradeHistoryFilterModalProps {
|
||||
filters: any
|
||||
|
@ -36,7 +36,7 @@ const TradeHistoryFilterModal: FunctionComponent<
|
|||
const [sizeTo, setSizeTo] = useState(filters?.size?.values?.to || '')
|
||||
const [valueFrom, setValueFrom] = useState(filters?.value?.values?.from || '')
|
||||
const [valueTo, setValueTo] = useState(filters?.value?.values?.to || '')
|
||||
const groupConfig = useMangoGroupConfig()
|
||||
const groupConfig = useMangoStore((s) => s.selectedMangoGroup.config)
|
||||
const markets = useMemo(
|
||||
() =>
|
||||
[...groupConfig.perpMarkets, ...groupConfig.spotMarkets].sort((a, b) =>
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
import { PerpMarket } from '@blockworks-foundation/mango-client'
|
||||
import { useState, useMemo } from 'react'
|
||||
import useMangoGroupConfig from '../../hooks/useMangoGroupConfig'
|
||||
import useMangoStore from '../../stores/useMangoStore'
|
||||
import Chart from '../Chart'
|
||||
import BN from 'bn.js'
|
||||
|
@ -40,7 +39,9 @@ function calculateFundingRate(
|
|||
export default function StatsPerps({ perpStats }) {
|
||||
const { t } = useTranslation('common')
|
||||
const [selectedAsset, setSelectedAsset] = useState<string>('BTC-PERP')
|
||||
const marketConfigs = useMangoGroupConfig().perpMarkets
|
||||
const marketConfigs = useMangoStore(
|
||||
(s) => s.selectedMangoGroup.config
|
||||
).perpMarkets
|
||||
const selectedMarketConfig = marketConfigs.find(
|
||||
(m) => m.name === selectedAsset
|
||||
)
|
||||
|
|
|
@ -1,16 +0,0 @@
|
|||
import { useMemo } from 'react'
|
||||
import useMangoStore from '../stores/useMangoStore'
|
||||
import { Config } from '@blockworks-foundation/mango-client'
|
||||
import { GroupConfig } from '@blockworks-foundation/mango-client/lib/src/config'
|
||||
|
||||
export default function useMangoGroupConfig(): GroupConfig {
|
||||
const mangoGroupName = useMangoStore((state) => state.selectedMangoGroup.name)
|
||||
const cluster = useMangoStore((s) => s.connection.cluster)
|
||||
|
||||
const mangoGroupConfig = useMemo(
|
||||
() => Config.ids().getGroup(cluster, mangoGroupName),
|
||||
[cluster, mangoGroupName]
|
||||
)
|
||||
|
||||
return mangoGroupConfig
|
||||
}
|
|
@ -1,7 +1,6 @@
|
|||
import { useEffect, useState } from 'react'
|
||||
import { I80F48 } from '@blockworks-foundation/mango-client'
|
||||
import useMangoStore from '../stores/useMangoStore'
|
||||
import useMangoGroupConfig from './useMangoGroupConfig'
|
||||
import { tokenPrecision } from '../utils'
|
||||
|
||||
const useMangoStats = () => {
|
||||
|
@ -33,7 +32,7 @@ const useMangoStats = () => {
|
|||
const mangoGroup = useMangoStore((s) => s.selectedMangoGroup.current)
|
||||
const mangoGroupName = useMangoStore((s) => s.selectedMangoGroup.name)
|
||||
const connection = useMangoStore((s) => s.connection.current)
|
||||
const config = useMangoGroupConfig()
|
||||
const config = useMangoStore((s) => s.selectedMangoGroup.config)
|
||||
|
||||
useEffect(() => {
|
||||
const fetchHistoricalStats = async () => {
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
import React, { useEffect } from 'react'
|
||||
import { useRouter } from 'next/router'
|
||||
import useMangoGroupConfig from '../hooks/useMangoGroupConfig'
|
||||
import useMangoStore, { serumProgramId } from '../stores/useMangoStore'
|
||||
import {
|
||||
getMarketByBaseSymbolAndKind,
|
||||
|
@ -41,7 +40,7 @@ const PerpMarket: React.FC = () => {
|
|||
const [alphaAccepted] = useLocalStorageState(ALPHA_MODAL_KEY, false)
|
||||
const [showTour] = useLocalStorageState(SHOW_TOUR_KEY, false)
|
||||
const { connected } = useWallet()
|
||||
const groupConfig = useMangoGroupConfig()
|
||||
const groupConfig = useMangoStore((s) => s.selectedMangoGroup.config)
|
||||
const setMangoStore = useMangoStore((s) => s.set)
|
||||
const mangoAccount = useMangoStore(mangoAccountSelector)
|
||||
const mangoGroup = useMangoStore((s) => s.selectedMangoGroup.current)
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
import { useTranslation } from 'next-i18next'
|
||||
import { useEffect, useState } from 'react'
|
||||
import { ChevronRightIcon } from '@heroicons/react/solid'
|
||||
import useMangoGroupConfig from '../hooks/useMangoGroupConfig'
|
||||
import useMangoStore from '../stores/useMangoStore'
|
||||
import Link from 'next/link'
|
||||
import { formatUsdValue } from '../utils'
|
||||
|
@ -20,7 +19,7 @@ export async function getStaticProps({ locale }) {
|
|||
|
||||
const SelectMarket = () => {
|
||||
const { t } = useTranslation('common')
|
||||
const groupConfig = useMangoGroupConfig()
|
||||
const groupConfig = useMangoStore((s) => s.selectedMangoGroup.config)
|
||||
const mangoGroup = useMangoStore((s) => s.selectedMangoGroup.current)
|
||||
const mangoCache = useMangoStore((s) => s.selectedMangoGroup.cache)
|
||||
|
||||
|
|
Loading…
Reference in New Issue