Compare commits
33 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a4cab75d09 | ||
|
|
882457cfef | ||
|
|
9a1bb5dbfb | ||
|
|
767cc85b3e | ||
|
|
47d726e544 | ||
|
|
32118520cd | ||
|
|
ada8a3af92 | ||
|
|
63694b32c0 | ||
|
|
c9ab94d799 | ||
|
|
a990c4af70 | ||
|
|
b5cc33c1f5 | ||
|
|
31da6cdb9d | ||
|
|
4079d8a517 | ||
|
|
e93fbfd31b | ||
|
|
7817846368 | ||
|
|
fc6a69a9af | ||
|
|
93a774092f | ||
|
|
55563e9bb2 | ||
|
|
f44aae2f53 | ||
|
|
7d674c33e7 | ||
|
|
79e6337629 | ||
|
|
3c8e8604b8 | ||
|
|
b763659788 | ||
|
|
1ac2581419 | ||
|
|
9f556680ed | ||
|
|
3f242f1b44 | ||
|
|
126688c753 | ||
|
|
374cc361a6 | ||
|
|
0198d0baa1 | ||
|
|
da2d7ba648 | ||
|
|
37cf492dd5 | ||
|
|
9e93f809a0 | ||
|
|
d9bd392e6d |
@@ -2,7 +2,7 @@ import React from 'react'
|
||||
import styled from 'styled-components/macro'
|
||||
import { darken } from 'polished'
|
||||
import { Trans } from '@lingui/macro'
|
||||
import { NavLink, Link as HistoryLink } from 'react-router-dom'
|
||||
import { NavLink, Link as HistoryLink, useLocation } from 'react-router-dom'
|
||||
import { Percent } from '@uniswap/sdk-core'
|
||||
|
||||
import { ArrowLeft } from 'react-feather'
|
||||
@@ -90,24 +90,29 @@ export function FindPoolTabs({ origin }: { origin: string }) {
|
||||
export function AddRemoveTabs({
|
||||
adding,
|
||||
creating,
|
||||
positionID,
|
||||
defaultSlippage,
|
||||
positionID,
|
||||
}: {
|
||||
adding: boolean
|
||||
creating: boolean
|
||||
positionID?: string | undefined
|
||||
defaultSlippage: Percent
|
||||
positionID?: string | undefined
|
||||
}) {
|
||||
const theme = useTheme()
|
||||
|
||||
// reset states on back
|
||||
const dispatch = useAppDispatch()
|
||||
const location = useLocation()
|
||||
|
||||
// detect if back should redirect to v3 or v2 pool page
|
||||
const poolLink = location.pathname.includes('add/v2')
|
||||
? '/pool/v2'
|
||||
: '/pool' + (!!positionID ? `/${positionID.toString()}` : '')
|
||||
|
||||
return (
|
||||
<Tabs>
|
||||
<RowBetween style={{ padding: '1rem 1rem 0 1rem' }}>
|
||||
<HistoryLink
|
||||
to={'/pool' + (!!positionID ? `/${positionID.toString()}` : '')}
|
||||
to={poolLink}
|
||||
onClick={() => {
|
||||
if (adding) {
|
||||
// not 100% sure both of these are needed
|
||||
|
||||
@@ -1,54 +1,57 @@
|
||||
import { Trans } from '@lingui/macro'
|
||||
import React from 'react'
|
||||
import { darken } from 'polished'
|
||||
import React, { ReactNode } from 'react'
|
||||
import styled from 'styled-components/macro'
|
||||
|
||||
const ToggleElement = styled.span<{ isActive?: boolean; isOnSwitch?: boolean }>`
|
||||
padding: 0.25rem 0.5rem;
|
||||
border-radius: 14px;
|
||||
background: ${({ theme, isActive, isOnSwitch }) => (isActive ? (isOnSwitch ? theme.primary1 : theme.text4) : 'none')};
|
||||
color: ${({ theme, isActive, isOnSwitch }) => (isActive ? (isOnSwitch ? theme.white : theme.text2) : theme.text3)};
|
||||
font-size: 1rem;
|
||||
font-weight: 400;
|
||||
|
||||
padding: 0.35rem 0.6rem;
|
||||
border-radius: 12px;
|
||||
background: ${({ theme, isActive, isOnSwitch }) => (isActive ? (isOnSwitch ? theme.primary1 : theme.text5) : 'none')};
|
||||
color: ${({ theme, isActive, isOnSwitch }) => (isActive ? (isOnSwitch ? theme.white : theme.text2) : theme.text2)};
|
||||
padding: 0.25rem 0.6rem;
|
||||
border-radius: 9px;
|
||||
background: ${({ theme, isActive, isOnSwitch }) => (isActive ? (isOnSwitch ? theme.primary1 : theme.bg4) : 'none')};
|
||||
color: ${({ theme, isActive }) => (isActive ? theme.white : theme.text2)};
|
||||
font-size: 1rem;
|
||||
font-weight: ${({ isOnSwitch }) => (isOnSwitch ? '500' : '400')};
|
||||
:hover {
|
||||
user-select: ${({ isOnSwitch }) => (isOnSwitch ? 'none' : 'initial')};
|
||||
background: ${({ theme, isActive, isOnSwitch }) =>
|
||||
isActive ? (isOnSwitch ? theme.primary1 : theme.text5) : 'none'};
|
||||
color: ${({ theme, isActive, isOnSwitch }) => (isActive ? (isOnSwitch ? theme.white : theme.text3) : theme.text3)};
|
||||
isActive ? (isOnSwitch ? darken(0.05, theme.primary1) : darken(0.05, theme.bg4)) : 'none'};
|
||||
color: ${({ theme, isActive, isOnSwitch }) => (isActive ? (isOnSwitch ? theme.white : theme.white) : theme.text3)};
|
||||
}
|
||||
`
|
||||
|
||||
const StyledToggle = styled.button<{ isActive?: boolean; activeElement?: boolean }>`
|
||||
border-radius: 12px;
|
||||
border: none;
|
||||
background: ${({ theme }) => theme.bg3};
|
||||
border: 2px solid;
|
||||
border-color: ${({ theme, isActive }) => (isActive ? theme.primary1 : theme.bg3)};
|
||||
background: ${({ theme }) => theme.bg1};
|
||||
display: flex;
|
||||
width: fit-content;
|
||||
cursor: pointer;
|
||||
outline: none;
|
||||
padding: 0;
|
||||
padding: 2px;
|
||||
`
|
||||
|
||||
export interface ToggleProps {
|
||||
id?: string
|
||||
isActive: boolean
|
||||
toggle: () => void
|
||||
checked?: ReactNode
|
||||
unchecked?: ReactNode
|
||||
}
|
||||
|
||||
export default function Toggle({ id, isActive, toggle }: ToggleProps) {
|
||||
export default function Toggle({
|
||||
id,
|
||||
isActive,
|
||||
toggle,
|
||||
checked = <Trans>On</Trans>,
|
||||
unchecked = <Trans>Off</Trans>,
|
||||
}: ToggleProps) {
|
||||
return (
|
||||
<StyledToggle id={id} isActive={isActive} onClick={toggle}>
|
||||
<ToggleElement isActive={isActive} isOnSwitch={true}>
|
||||
<Trans>On</Trans>
|
||||
{checked}
|
||||
</ToggleElement>
|
||||
<ToggleElement isActive={!isActive} isOnSwitch={false}>
|
||||
<Trans>Off</Trans>
|
||||
{unchecked}
|
||||
</ToggleElement>
|
||||
</StyledToggle>
|
||||
)
|
||||
|
||||
@@ -18,13 +18,19 @@ export const V2_ROUTER_ADDRESS: AddressMap = constructSameAddressMap(
|
||||
)
|
||||
|
||||
// most current governance contract address should always be the 0 index
|
||||
// only support governance on mainnet
|
||||
export const GOVERNANCE_ADDRESSES: AddressMap[] = [
|
||||
{
|
||||
[SupportedChainId.MAINNET]: '0xC4e172459f1E7939D522503B81AFAaC1014CE6F6',
|
||||
},
|
||||
constructSameAddressMap('0x5e4be8Bc9637f0EAA1A755019e06A68ce081D58F', false),
|
||||
{
|
||||
[SupportedChainId.MAINNET]: '0x5e4be8Bc9637f0EAA1A755019e06A68ce081D58F',
|
||||
},
|
||||
]
|
||||
export const TIMELOCK_ADDRESS: AddressMap = constructSameAddressMap('0x1a9C8182C09F50C8318d769245beA52c32BE35BC', false)
|
||||
export const TIMELOCK_ADDRESS: AddressMap = {
|
||||
[SupportedChainId.MAINNET]: '0x1a9C8182C09F50C8318d769245beA52c32BE35BC',
|
||||
}
|
||||
|
||||
export const MERKLE_DISTRIBUTOR_ADDRESS: AddressMap = {
|
||||
[SupportedChainId.MAINNET]: '0x090D4613473dEE047c3f2706764f49E0821D256e',
|
||||
}
|
||||
|
||||
@@ -6,7 +6,9 @@ const governanceContracts = (): Record<string, string> =>
|
||||
GOVERNANCE_ADDRESSES.reduce(
|
||||
(acc, addressMap, i) => ({
|
||||
...acc,
|
||||
[addressMap[SupportedChainId.MAINNET]]: `Governance${i === GOVERNANCE_ADDRESSES.length - 1 ? '' : ` (V${i})`}`,
|
||||
[addressMap[SupportedChainId.MAINNET]]: `Governance${
|
||||
i === 0 ? '' : ` (V${GOVERNANCE_ADDRESSES.length - 1 - i})`
|
||||
}`,
|
||||
}),
|
||||
{}
|
||||
)
|
||||
|
||||
@@ -1,2 +1 @@
|
||||
export const UNISWAP_GRANTS_START_BLOCK = 11473815
|
||||
export const EDUCATION_FUND_1_START_BLOCK = 12620175
|
||||
|
||||
@@ -179,7 +179,8 @@ export function useCurrency(currencyId: string | undefined): Currency | null | u
|
||||
const { chainId } = useActiveWeb3React()
|
||||
const isETH = currencyId?.toUpperCase() === 'ETH'
|
||||
const token = useToken(isETH ? undefined : currencyId)
|
||||
const extendedEther = useMemo(() => (chainId ? ExtendedEther.onChain(chainId) : undefined), [chainId])
|
||||
const weth = chainId ? WETH9_EXTENDED[chainId] : undefined
|
||||
if (weth?.address?.toLowerCase() === currencyId?.toLowerCase()) return weth
|
||||
return isETH ? (chainId ? ExtendedEther.onChain(chainId) : undefined) : token
|
||||
return isETH ? extendedEther : token
|
||||
}
|
||||
|
||||
@@ -46,34 +46,19 @@ import { useActiveWeb3React } from './web3'
|
||||
|
||||
// returns null on errors
|
||||
export function useContract<T extends Contract = Contract>(
|
||||
addressOrAddressMap: string | { [chainId: number]: string } | { [chainId: number]: string }[] | undefined,
|
||||
addressOrAddressMap: string | { [chainId: number]: string } | undefined,
|
||||
ABI: any,
|
||||
withSignerIfPossible = true
|
||||
): T | null {
|
||||
const { library, account, chainId } = useActiveWeb3React()
|
||||
|
||||
return useMemo(() => {
|
||||
if (!addressOrAddressMap || !ABI || !library || !chainId) {
|
||||
return null
|
||||
}
|
||||
if (!addressOrAddressMap || !ABI || !library || !chainId) return null
|
||||
let address: string | undefined
|
||||
if (typeof addressOrAddressMap === 'string') {
|
||||
address = addressOrAddressMap
|
||||
} else if (!Array.isArray(addressOrAddressMap)) {
|
||||
address = addressOrAddressMap[chainId]
|
||||
}
|
||||
if (!address && !Array.isArray(addressOrAddressMap)) {
|
||||
return null
|
||||
}
|
||||
if (typeof addressOrAddressMap === 'string') address = addressOrAddressMap
|
||||
else address = addressOrAddressMap[chainId]
|
||||
if (!address) return null
|
||||
try {
|
||||
if (Array.isArray(addressOrAddressMap)) {
|
||||
return addressOrAddressMap.map((addressMap) =>
|
||||
getContract(addressMap[chainId], ABI, library, withSignerIfPossible && account ? account : undefined)
|
||||
)
|
||||
}
|
||||
if (!address) {
|
||||
return null
|
||||
}
|
||||
return getContract(address, ABI, library, withSignerIfPossible && account ? account : undefined)
|
||||
} catch (error) {
|
||||
console.error('Failed to get contract', error)
|
||||
@@ -131,21 +116,22 @@ export function useMerkleDistributorContract() {
|
||||
return useContract(MERKLE_DISTRIBUTOR_ADDRESS, MERKLE_DISTRIBUTOR_ABI, true)
|
||||
}
|
||||
|
||||
export function useGovernanceContracts(): Contract[] | null {
|
||||
export function useGovernanceContracts(): (Contract | null)[] {
|
||||
const { library, account, chainId } = useActiveWeb3React()
|
||||
|
||||
return useMemo(() => {
|
||||
if (!library || !chainId) {
|
||||
return null
|
||||
}
|
||||
try {
|
||||
return GOVERNANCE_ADDRESSES.filter((addressMap) => Boolean(addressMap[chainId])).map((addressMap) =>
|
||||
getContract(addressMap[chainId], GOVERNANCE_ABI, library, account ? account : undefined)
|
||||
)
|
||||
} catch (error) {
|
||||
console.error('Failed to get contract', error)
|
||||
return null
|
||||
return []
|
||||
}
|
||||
|
||||
return GOVERNANCE_ADDRESSES.filter((addressMap) => Boolean(addressMap[chainId])).map((addressMap) => {
|
||||
try {
|
||||
return getContract(addressMap[chainId], GOVERNANCE_ABI, library, account ? account : undefined)
|
||||
} catch (error) {
|
||||
console.error('Failed to get contract', error)
|
||||
return null
|
||||
}
|
||||
})
|
||||
}, [library, chainId, account])
|
||||
}
|
||||
|
||||
|
||||
@@ -221,7 +221,7 @@ export function swapErrorToUserReadableMessage(error: any): string {
|
||||
default:
|
||||
if (reason?.indexOf('undefined is not an object') !== -1) {
|
||||
console.error(error, reason)
|
||||
return t`An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note fee on transfer and rebase tokens are incompatible with Uniswap V3.`
|
||||
return t`An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note: fee on transfer and rebase tokens are incompatible with Uniswap V3.`
|
||||
}
|
||||
return t`Unknown error${
|
||||
reason ? `: "${reason}"` : ''
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"POT-Creation-Date: 2021-06-16 02:37+0000\n"
|
||||
"POT-Creation-Date: 2021-06-21 15:11+0000\n"
|
||||
"Mime-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"X-Crowdin-File-ID: 4\n"
|
||||
"Project-Id-Version: uniswap-interface\n"
|
||||
"Language-Team: Afrikaans\n"
|
||||
"PO-Revision-Date: 2021-06-16 03:05\n"
|
||||
"PO-Revision-Date: 2021-06-21 16:05\n"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
@@ -92,12 +92,12 @@ msgstr "75%"
|
||||
|
||||
#: src/pages/Vote/VotePage.tsx
|
||||
msgid "<0/> All Proposals"
|
||||
msgstr "<0 /> Alle voorstelle"
|
||||
msgstr "<0/> Alle voorstelle"
|
||||
|
||||
#: src/pages/Vote/index.tsx
|
||||
#: src/pages/Vote/index.tsx
|
||||
msgid "<0/> Votes"
|
||||
msgstr "<0 /> Stemme"
|
||||
msgstr "<0/> Stemme"
|
||||
|
||||
#: src/pages/Pool/v2.tsx
|
||||
msgid "<0>Account analytics and accrued fees</0><1> ↗ </1>"
|
||||
@@ -171,7 +171,7 @@ msgstr "Voeg likiditeit by."
|
||||
|
||||
#: src/components/TransactionConfirmationModal/index.tsx
|
||||
msgid "Add {0} to Metamask <0/>"
|
||||
msgstr "Voeg {0} by Metamask <0 />"
|
||||
msgstr "Voeg {0} by Metamask <0/>"
|
||||
|
||||
#: src/pages/AddLiquidityV2/index.tsx
|
||||
#: src/pages/AddLiquidityV2/index.tsx
|
||||
@@ -223,8 +223,8 @@ msgid "Amount"
|
||||
msgstr "Bedrag"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "'n Fout het voorgekom tydens die uitvoer van hierdie ruil. U moet dalk u glyverdraagsaamheid verhoog. As dit nie werk nie, is daar moontlik 'n onverenigbaarheid met die teken wat u verhandel. Nota-fooi vir oordrag- en rebase-tekens is nie versoenbaar met Uniswap V3 nie."
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note: fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "'N Fout het voorgekom tydens die uitvoering van hierdie ruil. U moet dalk u glyverdraagsaamheid verhoog. As dit nie werk nie, kan daar 'n onversoenbaarheid wees met die teken wat u verhandel. Opmerking: fooi vir oordrag en herbasis-tokens is nie versoenbaar met Uniswap V3 nie."
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Analytics"
|
||||
@@ -264,7 +264,7 @@ msgstr "Is jy seker?"
|
||||
|
||||
#: src/components/claim/ClaimModal.tsx
|
||||
msgid "As a member of the Uniswap community you may claim UNI to be used for voting and governance.<0/><1/><2>Read more about UNI</2>"
|
||||
msgstr "As lid van die Uniswap-gemeenskap kan u daarop aanspraak maak dat UNI gebruik word vir stemming en beheer. <0 /> <1 /> <2> Lees meer oor UNI</2>"
|
||||
msgstr "As lid van die Uniswap-gemeenskap kan u daarop aanspraak maak dat UNI gebruik word vir stemming en beheer. <0/> <1/> <2> Lees meer oor UNI</2>"
|
||||
|
||||
#: src/pages/MigrateV2/MigrateV2Pair.tsx
|
||||
msgid "At least {0} {1} and {2} {3} will be refunded to your wallet due to selected price range."
|
||||
@@ -400,6 +400,10 @@ msgstr "Naby"
|
||||
msgid "Closed"
|
||||
msgstr "Gesluit"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Closed positions"
|
||||
msgstr "Geslote poste"
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Code"
|
||||
msgstr "Kode"
|
||||
@@ -727,8 +731,8 @@ msgid "Get support on Discord"
|
||||
msgstr "Kry ondersteuning op Discord"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Hide closed positions"
|
||||
msgstr "Versteek geslote posisies"
|
||||
msgid "Hide"
|
||||
msgstr "Steek weg"
|
||||
|
||||
#: src/pages/Swap/index.tsx
|
||||
msgid "High Price Impact"
|
||||
@@ -1280,6 +1284,10 @@ msgstr "Deel van die swembad"
|
||||
msgid "Share of Pool:"
|
||||
msgstr "Aandeel van die poel:"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Show"
|
||||
msgstr "Wys"
|
||||
|
||||
#: src/components/AccountDetails/index.tsx
|
||||
msgid "Show Portis"
|
||||
msgstr "Wys Portis"
|
||||
@@ -1336,7 +1344,7 @@ msgstr "Ruil {0} {1} vir {2} {3}"
|
||||
|
||||
#: src/components/Popups/ClaimPopup.tsx
|
||||
msgid "Thanks for being part of the Uniswap community <0/>"
|
||||
msgstr "Dankie dat u deel is van die Uniswap-gemeenskap <0 />"
|
||||
msgstr "Dankie dat u deel is van die Uniswap-gemeenskap <0/>"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "The Uniswap invariant x*y=k was not satisfied by the swap. This usually means one of the tokens you are swapping incorporates custom behavior on transfer."
|
||||
@@ -1872,7 +1880,7 @@ msgstr "{0} %"
|
||||
#: src/components/PositionListItem/index.tsx
|
||||
#: src/components/PositionListItem/index.tsx
|
||||
msgid "{0} <0/> per <1/>"
|
||||
msgstr "{0} <0 /> per <1 />"
|
||||
msgstr "{0} <0/> per <1/>"
|
||||
|
||||
#: src/components/SearchModal/ManageTokens.tsx
|
||||
msgid "{0} Custom Tokens"
|
||||
@@ -1999,7 +2007,7 @@ msgstr "{tokenB} per {tokenA}"
|
||||
|
||||
#: src/components/CurrencyInputPanel/FiatValue.tsx
|
||||
msgid "~$ <0/>"
|
||||
msgstr "~ $ <0 />"
|
||||
msgstr "~ $ <0/>"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
msgid "← Back to Pools Overview"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"POT-Creation-Date: 2021-06-16 02:37+0000\n"
|
||||
"POT-Creation-Date: 2021-06-21 15:11+0000\n"
|
||||
"Mime-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"X-Crowdin-File-ID: 4\n"
|
||||
"Project-Id-Version: uniswap-interface\n"
|
||||
"Language-Team: Arabic\n"
|
||||
"PO-Revision-Date: 2021-06-16 03:05\n"
|
||||
"PO-Revision-Date: 2021-06-21 16:05\n"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
@@ -223,8 +223,8 @@ msgid "Amount"
|
||||
msgstr "المبلغ"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "حدث خطأ أثناء محاولة تنفيذ هذا التبادل. قد تحتاج إلى زيادة تحملك للانزلاق. إذا لم ينجح ذلك، فقد يكون هناك عدم توافق مع الرمز المميز الذي تتداوله. رسوم الملاحظات على الرموز المميزة للنقل وإعادة التسمية غير متوافقة مع Uniswap V3."
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note: fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "حدث خطأ أثناء محاولة تنفيذ هذا التبادل. قد تحتاج إلى زيادة تحملك للانزلاق. إذا لم يفلح ذلك ، فقد يكون هناك عدم توافق مع الرمز الذي تتداوله. ملاحظة: رسوم النقل وإعادة الرموز المميزة غير متوافقة مع Uniswap V3."
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Analytics"
|
||||
@@ -400,6 +400,10 @@ msgstr "إغلاق"
|
||||
msgid "Closed"
|
||||
msgstr "مغلق"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Closed positions"
|
||||
msgstr "المراكز المغلقة"
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Code"
|
||||
msgstr "الكود"
|
||||
@@ -727,8 +731,8 @@ msgid "Get support on Discord"
|
||||
msgstr "احصل على الدعم على Discord"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Hide closed positions"
|
||||
msgstr "إخفاء المراكز المغلقة"
|
||||
msgid "Hide"
|
||||
msgstr "يخفي"
|
||||
|
||||
#: src/pages/Swap/index.tsx
|
||||
msgid "High Price Impact"
|
||||
@@ -1280,6 +1284,10 @@ msgstr "حصة من المجموعة"
|
||||
msgid "Share of Pool:"
|
||||
msgstr "مشاركة المجموعة:"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Show"
|
||||
msgstr "تبين"
|
||||
|
||||
#: src/components/AccountDetails/index.tsx
|
||||
msgid "Show Portis"
|
||||
msgstr "عرض Portis"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"POT-Creation-Date: 2021-06-16 02:37+0000\n"
|
||||
"POT-Creation-Date: 2021-06-21 15:11+0000\n"
|
||||
"Mime-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"X-Crowdin-File-ID: 4\n"
|
||||
"Project-Id-Version: uniswap-interface\n"
|
||||
"Language-Team: Catalan\n"
|
||||
"PO-Revision-Date: 2021-06-16 03:05\n"
|
||||
"PO-Revision-Date: 2021-06-21 16:05\n"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
@@ -223,8 +223,8 @@ msgid "Amount"
|
||||
msgstr "Import"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "S'ha produït un error en intentar executar aquest intercanvi. És possible que hàgiu d'augmentar la tolerància a la relliscada. Si això no funciona, és possible que hi hagi una incompatibilitat amb el testimoni que esteu negociant. La tarifa de nota en les fitxes de transferència i rebase no és compatible amb Uniswap V3."
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note: fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "S'ha produït un error en intentar executar aquest intercanvi. És possible que hàgiu d'augmentar la tolerància a la relliscada. Si això no funciona, és possible que hi hagi una incompatibilitat amb el testimoni que esteu negociant. Nota: els tokens de transferència i rebase no són compatibles amb Uniswap V3."
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Analytics"
|
||||
@@ -400,6 +400,10 @@ msgstr "Tanca"
|
||||
msgid "Closed"
|
||||
msgstr "Tancat"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Closed positions"
|
||||
msgstr "Posicions tancades"
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Code"
|
||||
msgstr "Codi"
|
||||
@@ -727,8 +731,8 @@ msgid "Get support on Discord"
|
||||
msgstr "Obteniu assistència a Discord"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Hide closed positions"
|
||||
msgstr "Amaga les posicions tancades"
|
||||
msgid "Hide"
|
||||
msgstr "Amaga"
|
||||
|
||||
#: src/pages/Swap/index.tsx
|
||||
msgid "High Price Impact"
|
||||
@@ -1280,6 +1284,10 @@ msgstr "Quota de grup"
|
||||
msgid "Share of Pool:"
|
||||
msgstr "Quota de grup:"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Show"
|
||||
msgstr "Espectacle"
|
||||
|
||||
#: src/components/AccountDetails/index.tsx
|
||||
msgid "Show Portis"
|
||||
msgstr "Mostra Portis"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"POT-Creation-Date: 2021-06-16 02:37+0000\n"
|
||||
"POT-Creation-Date: 2021-06-21 15:11+0000\n"
|
||||
"Mime-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"X-Crowdin-File-ID: 4\n"
|
||||
"Project-Id-Version: uniswap-interface\n"
|
||||
"Language-Team: Czech\n"
|
||||
"PO-Revision-Date: 2021-06-16 03:05\n"
|
||||
"PO-Revision-Date: 2021-06-21 16:05\n"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
@@ -223,8 +223,8 @@ msgid "Amount"
|
||||
msgstr "Částka"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Při pokusu o provedení tohoto swapu došlo k chybě. Možná budete muset zvýšit toleranci skluzu. Pokud to nefunguje, může to být způsobeno nekompatibilitou s žetonem, s nímž obchodujete. Pamatujte, že poplatky za převod a zpětné převzetí žetonů nejsou kompatibilní s Uniswap V3."
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note: fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Při pokusu o provedení tohoto swapu došlo k chybě. Možná budete muset zvýšit toleranci skluzu. Pokud to nefunguje, může dojít k nekompatibilitě s tokenem, s nímž obchodujete. Poznámka: Poplatky za tokeny za převody a rebase nejsou kompatibilní s Uniswap V3."
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Analytics"
|
||||
@@ -400,6 +400,10 @@ msgstr "Zavřít"
|
||||
msgid "Closed"
|
||||
msgstr "Zavřeno"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Closed positions"
|
||||
msgstr "Uzavřené pozice"
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Code"
|
||||
msgstr "Kód"
|
||||
@@ -727,8 +731,8 @@ msgid "Get support on Discord"
|
||||
msgstr "Získejte podporu o Discord"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Hide closed positions"
|
||||
msgstr "Skrýt zavřené pozice"
|
||||
msgid "Hide"
|
||||
msgstr "Skrýt"
|
||||
|
||||
#: src/pages/Swap/index.tsx
|
||||
msgid "High Price Impact"
|
||||
@@ -1280,6 +1284,10 @@ msgstr "Podíl na fondu"
|
||||
msgid "Share of Pool:"
|
||||
msgstr "Podíl na fondu:"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Show"
|
||||
msgstr "Ukázat"
|
||||
|
||||
#: src/components/AccountDetails/index.tsx
|
||||
msgid "Show Portis"
|
||||
msgstr "Zobrazit Portis"
|
||||
@@ -1336,7 +1344,7 @@ msgstr "Výměna {0} {1} za {2} {3}"
|
||||
|
||||
#: src/components/Popups/ClaimPopup.tsx
|
||||
msgid "Thanks for being part of the Uniswap community <0/>"
|
||||
msgstr "Děkujeme, že jste součástí komunity Uniswap <0 />"
|
||||
msgstr "Děkujeme, že jste součástí komunity Uniswap <0/>"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "The Uniswap invariant x*y=k was not satisfied by the swap. This usually means one of the tokens you are swapping incorporates custom behavior on transfer."
|
||||
@@ -1356,7 +1364,7 @@ msgstr "Výstupní žeton nelze přenést. Možná je s výstupním žetonem ně
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "The output token cannot be transferred. There may be an issue with the output token. Note: fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Výstupní token nelze přenést. Může dojít k problému s výstupním tokenem. Poznámka: Poplatky za tokeny za převody a rebase nejsou kompatibilní s Uniswap V3."
|
||||
msgstr "Výstupní žeton nelze přenést. Může dojít k problému s výstupním žetonem. Poznámka: Poplatky za žetony za převody a rebase nejsou kompatibilní s Uniswap V3."
|
||||
|
||||
#: src/components/Badge/RangeBadge.tsx
|
||||
msgid "The price of this pool is outside of your selected range. Your position is not currently earning fees."
|
||||
@@ -1388,7 +1396,7 @@ msgstr "Tento nástroj bezpečně migruje vaši {0} likviditu do V3. Proces je z
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "This transaction will not succeed due to price movement. Try increasing your slippage tolerance. Note: fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Tato transakce nebude úspěšná z důvodu cenového pohybu. Zkuste zvýšit toleranci skluzu. Poznámka: Poplatky za tokeny za převody a rebase nejsou kompatibilní s Uniswap V3."
|
||||
msgstr "Tato transakce nebude úspěšná z důvodu cenového pohybu. Zkuste zvýšit toleranci skluzu. Poznámka: Poplatky za žetony za převody a rebase nejsou kompatibilní s Uniswap V3."
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "This transaction will not succeed either due to price movement or fee on transfer. Try increasing your slippage tolerance."
|
||||
@@ -1527,7 +1535,7 @@ msgstr "Neznámý zdroj"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "Unknown error{0}. Try increasing your slippage tolerance. Note: fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Neznámá chyba{0}. Zkuste zvýšit toleranci skluzu. Poznámka: Poplatky za tokeny za převody a rebase nejsou kompatibilní s Uniswap V3."
|
||||
msgstr "Neznámá chyba{0}. Zkuste zvýšit toleranci skluzu. Poznámka: Poplatky za žetony za převody a rebase nejsou kompatibilní s Uniswap V3."
|
||||
|
||||
#: src/pages/Vote/VotePage.tsx
|
||||
#: src/pages/Vote/index.tsx
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"POT-Creation-Date: 2021-06-16 02:37+0000\n"
|
||||
"POT-Creation-Date: 2021-06-21 15:11+0000\n"
|
||||
"Mime-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"X-Crowdin-File-ID: 4\n"
|
||||
"Project-Id-Version: uniswap-interface\n"
|
||||
"Language-Team: Danish\n"
|
||||
"PO-Revision-Date: 2021-06-16 03:05\n"
|
||||
"PO-Revision-Date: 2021-06-21 16:05\n"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
@@ -223,8 +223,8 @@ msgid "Amount"
|
||||
msgstr "Beløb"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Der opstod en fejl under forsøg på at udføre denne swap. Det kan være nødvendigt at øge din glidningstolerance. Hvis det ikke virker, kan der være en uforenelighed med det token, du handler. Bemærk, at gebyr ved overførsel og rebase-tokens er inkompatibelt med Uniswap V3."
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note: fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Der opstod en fejl under forsøg på at udføre denne swap. Det kan være nødvendigt at øge din glidningstolerance. Hvis det ikke virker, kan der være en uforenelighed med det token, du handler. Bemærk: gebyr ved overførsel og rebase-tokens er inkompatibelt med Uniswap V3."
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Analytics"
|
||||
@@ -400,6 +400,10 @@ msgstr "Luk"
|
||||
msgid "Closed"
|
||||
msgstr "Lukket"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Closed positions"
|
||||
msgstr "Lukkede stillinger"
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Code"
|
||||
msgstr "Kode"
|
||||
@@ -727,8 +731,8 @@ msgid "Get support on Discord"
|
||||
msgstr "Få support på Discord"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Hide closed positions"
|
||||
msgstr "Skjul lukkede positioner"
|
||||
msgid "Hide"
|
||||
msgstr "Skjule"
|
||||
|
||||
#: src/pages/Swap/index.tsx
|
||||
msgid "High Price Impact"
|
||||
@@ -1280,6 +1284,10 @@ msgstr "Andel i pulje"
|
||||
msgid "Share of Pool:"
|
||||
msgstr "Andel i pulje:"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Show"
|
||||
msgstr "At vise"
|
||||
|
||||
#: src/components/AccountDetails/index.tsx
|
||||
msgid "Show Portis"
|
||||
msgstr "Vis Portis"
|
||||
@@ -1336,7 +1344,7 @@ msgstr "Byt {0} {1} til {2} {3}"
|
||||
|
||||
#: src/components/Popups/ClaimPopup.tsx
|
||||
msgid "Thanks for being part of the Uniswap community <0/>"
|
||||
msgstr "Tak, fordi du er en del af Uniswap-gruppen <0 />"
|
||||
msgstr "Tak, fordi du er en del af Uniswap-gruppen <0/>"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "The Uniswap invariant x*y=k was not satisfied by the swap. This usually means one of the tokens you are swapping incorporates custom behavior on transfer."
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"POT-Creation-Date: 2021-06-16 02:37+0000\n"
|
||||
"POT-Creation-Date: 2021-06-21 15:11+0000\n"
|
||||
"Mime-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"X-Crowdin-File-ID: 4\n"
|
||||
"Project-Id-Version: uniswap-interface\n"
|
||||
"Language-Team: German\n"
|
||||
"PO-Revision-Date: 2021-06-16 03:05\n"
|
||||
"PO-Revision-Date: 2021-06-21 16:05\n"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
@@ -223,8 +223,8 @@ msgid "Amount"
|
||||
msgstr "Betrag"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Beim Versuch, diesen Swap auszuführen, ist ein Fehler aufgetreten. Möglicherweise müssen Sie Ihre Schlupftoleranz erhöhen. Wenn dies nicht funktioniert, liegt möglicherweise eine Inkompatibilität mit dem Token vor, mit dem Sie handeln. Beachten Sie, dass Gebühr-bei-Transfer- und Rebase-Token nicht mit Uniswap V3 kompatibel sind."
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note: fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Beim Versuch, diesen Swap auszuführen, ist ein Fehler aufgetreten. Möglicherweise müssen Sie Ihre Schlupftoleranz erhöhen. Wenn dies nicht funktioniert, liegt möglicherweise eine Inkompatibilität mit dem Token vor, den Sie handeln. Hinweis: Gebühren für Transfer- und Rebase-Token sind nicht mit Uniswap V3 kompatibel."
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Analytics"
|
||||
@@ -400,6 +400,10 @@ msgstr "Schließen"
|
||||
msgid "Closed"
|
||||
msgstr "Geschlossen"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Closed positions"
|
||||
msgstr "Geschlossene Positionen"
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Code"
|
||||
msgstr "Code"
|
||||
@@ -727,8 +731,8 @@ msgid "Get support on Discord"
|
||||
msgstr "Holen Sie sich Unterstützung bei Discord"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Hide closed positions"
|
||||
msgstr "Geschlossene Positionen ausblenden"
|
||||
msgid "Hide"
|
||||
msgstr "Ausblenden"
|
||||
|
||||
#: src/pages/Swap/index.tsx
|
||||
msgid "High Price Impact"
|
||||
@@ -1280,6 +1284,10 @@ msgstr "Anteil am Pool"
|
||||
msgid "Share of Pool:"
|
||||
msgstr "Anteil am Pool:"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Show"
|
||||
msgstr "Show"
|
||||
|
||||
#: src/components/AccountDetails/index.tsx
|
||||
msgid "Show Portis"
|
||||
msgstr "Portis anzeigen"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"POT-Creation-Date: 2021-06-16 02:37+0000\n"
|
||||
"POT-Creation-Date: 2021-06-21 15:11+0000\n"
|
||||
"Mime-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"X-Crowdin-File-ID: 4\n"
|
||||
"Project-Id-Version: uniswap-interface\n"
|
||||
"Language-Team: Greek\n"
|
||||
"PO-Revision-Date: 2021-06-16 03:05\n"
|
||||
"PO-Revision-Date: 2021-06-21 16:05\n"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
@@ -223,8 +223,8 @@ msgid "Amount"
|
||||
msgstr "Ποσό"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Παρουσιάστηκε σφάλμα κατά την προσπάθεια εκτέλεσης αυτής της ανταλλαγής. Ίσως χρειαστεί να αυξήσετε την ανοχή ολίσθησης. Εάν αυτό δεν λειτουργεί, μπορεί να υπάρχει ασυμβατότητα με τη μάρκα που διαπραγματεύεστε. Σημείωση: οι χρεώσεις κατά την μεταφορά και οι μάρκες rebase είναι ασύμβατες με το Uniswap V3."
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note: fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Παρουσιάστηκε σφάλμα κατά την προσπάθεια εκτέλεσης αυτής της ανταλλαγής. Ίσως χρειαστεί να αυξήσετε την ανοχή ολίσθησης. Εάν αυτό δεν λειτουργεί, μπορεί να υπάρχει ασυμβατότητα με το διακριτικό που διαπραγματεύεστε. Σημείωση: τα τέλη μεταφοράς και επαναφοράς δεν είναι συμβατά με το Uniswap V3."
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Analytics"
|
||||
@@ -400,6 +400,10 @@ msgstr "Κλείσιμο"
|
||||
msgid "Closed"
|
||||
msgstr "Κλειστό"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Closed positions"
|
||||
msgstr "Κλειστές θέσεις"
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Code"
|
||||
msgstr "Κωδικός"
|
||||
@@ -727,8 +731,8 @@ msgid "Get support on Discord"
|
||||
msgstr "Βρείτε υποστήριξη για τη Διαφωνία"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Hide closed positions"
|
||||
msgstr "Απόκρυψη κλειστών θέσεων"
|
||||
msgid "Hide"
|
||||
msgstr "Κρύβω"
|
||||
|
||||
#: src/pages/Swap/index.tsx
|
||||
msgid "High Price Impact"
|
||||
@@ -1280,6 +1284,10 @@ msgstr "Μερίδιο από τη Δεξαμενή"
|
||||
msgid "Share of Pool:"
|
||||
msgstr "Μερίδιο από τη Δεξαμενή:"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Show"
|
||||
msgstr "προβολή"
|
||||
|
||||
#: src/components/AccountDetails/index.tsx
|
||||
msgid "Show Portis"
|
||||
msgstr "Εμφάνιση Portis"
|
||||
@@ -1554,7 +1562,7 @@ msgstr "Μη Υποστηριζόμενα Περιουσιακά Στοιχεί
|
||||
|
||||
#: src/pages/Swap/index.tsx
|
||||
msgid "Unwrap"
|
||||
msgstr "Ξεδιπλώνω"
|
||||
msgstr "Αποκαλύπτω"
|
||||
|
||||
#: src/pages/Vote/index.tsx
|
||||
msgid "Update Delegation"
|
||||
@@ -1688,7 +1696,7 @@ msgstr "Πραγματοποιήθηκε ανάληψη UNI-V2!"
|
||||
|
||||
#: src/pages/Swap/index.tsx
|
||||
msgid "Wrap"
|
||||
msgstr "Σύνοψη"
|
||||
msgstr "Καλύπτω"
|
||||
|
||||
#: src/components/WalletModal/index.tsx
|
||||
#: src/components/Web3Status/index.tsx
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"POT-Creation-Date: 2021-06-16 02:37+0000\n"
|
||||
"POT-Creation-Date: 2021-06-21 15:11+0000\n"
|
||||
"Mime-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"X-Crowdin-File-ID: 4\n"
|
||||
"Project-Id-Version: uniswap-interface\n"
|
||||
"Language-Team: Spanish\n"
|
||||
"PO-Revision-Date: 2021-06-16 03:05\n"
|
||||
"PO-Revision-Date: 2021-06-21 16:05\n"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
@@ -223,8 +223,8 @@ msgid "Amount"
|
||||
msgstr "Cantidad"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Se produjo un error al intentar ejecutar este intercambio. Es posible que deba aumentar su tolerancia al deslizamiento. Si eso no funciona, puede haber una incompatibilidad con el token que está negociando. Tenga en cuenta que la tarifa de transferencia y rebase de tokens es incompatible con Uniswap V3."
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note: fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Se produjo un error al intentar ejecutar este intercambio. Es posible que deba aumentar su tolerancia al deslizamiento. Si eso no funciona, puede haber una incompatibilidad con el token que está negociando. Nota: la tarifa de transferencia y los tokens de rebase son incompatibles con Uniswap V3."
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Analytics"
|
||||
@@ -400,6 +400,10 @@ msgstr "Cerrar"
|
||||
msgid "Closed"
|
||||
msgstr "Cerrado"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Closed positions"
|
||||
msgstr "Posiciones cerradas"
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Code"
|
||||
msgstr "Código"
|
||||
@@ -727,8 +731,8 @@ msgid "Get support on Discord"
|
||||
msgstr "Obtenga apoyo en Discord"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Hide closed positions"
|
||||
msgstr "Ocultar posiciones cerradas"
|
||||
msgid "Hide"
|
||||
msgstr "Esconder"
|
||||
|
||||
#: src/pages/Swap/index.tsx
|
||||
msgid "High Price Impact"
|
||||
@@ -1280,6 +1284,10 @@ msgstr "Participación del fondo común"
|
||||
msgid "Share of Pool:"
|
||||
msgstr "Participación del fondo común:"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Show"
|
||||
msgstr "Show"
|
||||
|
||||
#: src/components/AccountDetails/index.tsx
|
||||
msgid "Show Portis"
|
||||
msgstr "Mostrar Portis"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"POT-Creation-Date: 2021-06-16 02:37+0000\n"
|
||||
"POT-Creation-Date: 2021-06-21 15:11+0000\n"
|
||||
"Mime-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"X-Crowdin-File-ID: 4\n"
|
||||
"Project-Id-Version: uniswap-interface\n"
|
||||
"Language-Team: Finnish\n"
|
||||
"PO-Revision-Date: 2021-06-16 03:05\n"
|
||||
"PO-Revision-Date: 2021-06-21 16:05\n"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
@@ -223,8 +223,8 @@ msgid "Amount"
|
||||
msgstr "Määrä"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Tapahtui virhe yritettäessä vaihdon suorittamista. Saatat joutua lisäämään luistonsietoprosenttiasi. Jos se ei toimi, kaupankäynnin kohteena oleva rahake saattaa olla yhteensopimaton. Siirtopalkkiolliset ja joustavan tarjonnan rahakkeet eivät ole yhteensopivia Uniswap V3:n kanssa."
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note: fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Tapahtui virhe yritettäessä suorittaa tämä vaihto. Saatat joutua lisäämään luistonsietokykyäsi. Jos se ei toimi, kaupankäynnin kohteena olevan tunnuksen kanssa saattaa olla ristiriita. Huomautus: siirto- ja uudelleentase-tunnusten maksu ei ole yhteensopiva Uniswap V3: n kanssa."
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Analytics"
|
||||
@@ -400,6 +400,10 @@ msgstr "Sulje"
|
||||
msgid "Closed"
|
||||
msgstr "Suljettu"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Closed positions"
|
||||
msgstr "Suljetut asennot"
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Code"
|
||||
msgstr "Koodi"
|
||||
@@ -727,8 +731,8 @@ msgid "Get support on Discord"
|
||||
msgstr "Hae apua Discordista"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Hide closed positions"
|
||||
msgstr "Piilota suljetut positiot"
|
||||
msgid "Hide"
|
||||
msgstr "Piilottaa"
|
||||
|
||||
#: src/pages/Swap/index.tsx
|
||||
msgid "High Price Impact"
|
||||
@@ -1280,6 +1284,10 @@ msgstr "Poolin osuus"
|
||||
msgid "Share of Pool:"
|
||||
msgstr "Poolin osuus:"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Show"
|
||||
msgstr "Näytä"
|
||||
|
||||
#: src/components/AccountDetails/index.tsx
|
||||
msgid "Show Portis"
|
||||
msgstr "Näytä Portis"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"POT-Creation-Date: 2021-06-16 02:37+0000\n"
|
||||
"POT-Creation-Date: 2021-06-21 15:11+0000\n"
|
||||
"Mime-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"X-Crowdin-File-ID: 4\n"
|
||||
"Project-Id-Version: uniswap-interface\n"
|
||||
"Language-Team: French\n"
|
||||
"PO-Revision-Date: 2021-06-16 03:05\n"
|
||||
"PO-Revision-Date: 2021-06-21 16:05\n"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
@@ -223,8 +223,8 @@ msgid "Amount"
|
||||
msgstr "Montant"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Une erreur s'est produite lors de la tentative d'exécution de cet échange. Vous devrez peut-être augmenter votre acceptation du slippage. Si cela ne fonctionne pas, il peut y avoir une incompatibilité avec le jeton que vous échangez. Notez que les jeton déflationniste et de rebase sont incompatibles avec Uniswap V3."
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note: fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Une erreur s'est produite lors de la tentative d'exécution de cet échange. Vous devrez peut-être augmenter votre tolérance au glissement. Si cela ne fonctionne pas, il peut y avoir une incompatibilité avec le jeton que vous négociez. Remarque : les frais sur les jetons de transfert et de rebase sont incompatibles avec Uniswap V3."
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Analytics"
|
||||
@@ -400,6 +400,10 @@ msgstr "Fermer"
|
||||
msgid "Closed"
|
||||
msgstr "Fermé"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Closed positions"
|
||||
msgstr "Postes fermés"
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Code"
|
||||
msgstr "Code"
|
||||
@@ -727,8 +731,8 @@ msgid "Get support on Discord"
|
||||
msgstr "Obtenez de l'aide sur Discord"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Hide closed positions"
|
||||
msgstr "Masquer les positions fermées"
|
||||
msgid "Hide"
|
||||
msgstr "Cacher"
|
||||
|
||||
#: src/pages/Swap/index.tsx
|
||||
msgid "High Price Impact"
|
||||
@@ -1280,6 +1284,10 @@ msgstr "Part du pool"
|
||||
msgid "Share of Pool:"
|
||||
msgstr "Partage du pool :"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Show"
|
||||
msgstr "Spectacle"
|
||||
|
||||
#: src/components/AccountDetails/index.tsx
|
||||
msgid "Show Portis"
|
||||
msgstr "Afficher Portis"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"POT-Creation-Date: 2021-06-16 02:37+0000\n"
|
||||
"POT-Creation-Date: 2021-06-21 15:11+0000\n"
|
||||
"Mime-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@@ -14,12 +14,12 @@ msgstr ""
|
||||
"X-Crowdin-File-ID: 4\n"
|
||||
"Project-Id-Version: uniswap-interface\n"
|
||||
"Language-Team: Hebrew\n"
|
||||
"PO-Revision-Date: 2021-06-16 11:05\n"
|
||||
"PO-Revision-Date: 2021-06-21 16:05\n"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
msgid "$-"
|
||||
msgstr "$ -"
|
||||
msgstr "$-"
|
||||
|
||||
#: src/components/earn/PoolCard.tsx
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
@@ -92,12 +92,12 @@ msgstr "75%"
|
||||
|
||||
#: src/pages/Vote/VotePage.tsx
|
||||
msgid "<0/> All Proposals"
|
||||
msgstr "<0 /> כל ההצעות"
|
||||
msgstr "<0/> כל ההצעות"
|
||||
|
||||
#: src/pages/Vote/index.tsx
|
||||
#: src/pages/Vote/index.tsx
|
||||
msgid "<0/> Votes"
|
||||
msgstr "<0 /> הצבעות"
|
||||
msgstr "<0/> הצבעות"
|
||||
|
||||
#: src/pages/Pool/v2.tsx
|
||||
msgid "<0>Account analytics and accrued fees</0><1> ↗ </1>"
|
||||
@@ -137,7 +137,7 @@ msgstr "אודות"
|
||||
|
||||
#: src/components/swap/SwapModalHeader.tsx
|
||||
msgid "Accept"
|
||||
msgstr "קבלה"
|
||||
msgstr "לְקַבֵּל"
|
||||
|
||||
#: src/components/AccountDetails/index.tsx
|
||||
msgid "Account"
|
||||
@@ -171,7 +171,7 @@ msgstr "הוסף נזילות."
|
||||
|
||||
#: src/components/TransactionConfirmationModal/index.tsx
|
||||
msgid "Add {0} to Metamask <0/>"
|
||||
msgstr "הוסף {0} למטא-מסכה <0 />"
|
||||
msgstr "הוסף {0} למטא-מסכה <0/>"
|
||||
|
||||
#: src/pages/AddLiquidityV2/index.tsx
|
||||
#: src/pages/AddLiquidityV2/index.tsx
|
||||
@@ -223,8 +223,8 @@ msgid "Amount"
|
||||
msgstr "כמות"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "אירעה שגיאה בניסיון לבצע החלפה זו. יתכן שתצטרך להגביר את סובלנות ההחלקה שלך. אם זה לא עובד, ייתכן שיש אי התאמה לאסימון שאתה סוחר בו. עמלת הערה על אסימוני העברה וריבוי בסיס אינם תואמים ל- Uniswap V3."
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note: fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "אירעה שגיאה בניסיון לבצע החלפה זו. יתכן שתצטרך להגביר את סובלנות ההחלקה שלך. אם זה לא עובד, ייתכן שיש אי התאמה לאסימון שאתה סוחר בו. הערה: עמלה על אסימון העברה וריבוס אינם תואמים ל- Uniswap V3."
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Analytics"
|
||||
@@ -264,7 +264,7 @@ msgstr "האם אתה בטוח?"
|
||||
|
||||
#: src/components/claim/ClaimModal.tsx
|
||||
msgid "As a member of the Uniswap community you may claim UNI to be used for voting and governance.<0/><1/><2>Read more about UNI</2>"
|
||||
msgstr "כחבר בקהילת Uniswap אתה יכול לטעון ש- UNI משמשת להצבעה ולממשל. <0 /> <1 /> <2> קרא עוד על UNI</2>"
|
||||
msgstr "כחבר בקהילת Uniswap אתה יכול לטעון ש- UNI משמשת להצבעה ולממשל. <0/> <1/> <2> קרא עוד על UNI</2>"
|
||||
|
||||
#: src/pages/MigrateV2/MigrateV2Pair.tsx
|
||||
msgid "At least {0} {1} and {2} {3} will be refunded to your wallet due to selected price range."
|
||||
@@ -316,7 +316,7 @@ msgstr "על ידי הוספת רשימה זו אתה סומך באופן מרו
|
||||
|
||||
#: src/components/WalletModal/index.tsx
|
||||
msgid "By connecting a wallet, you agree to Uniswap Labs’ <0>Terms of Service</0> and acknowledge that you have read and understand the <1>Uniswap protocol disclaimer</1>."
|
||||
msgstr "על ידי חיבור ארנק אתה מסכים לתנאי השירות <0> של Uniswap Labs</0> ומודה כי קראת והבנת את כתב הוויתור על פרוטוקול Uniswap</1>."
|
||||
msgstr "על ידי חיבור ארנק אתה מסכים <0>לתנאי השירות</0> של Uniswap Labs ומודה כי קראת והבנת את כתב הוויתור על פרוטוקול <1>Uniswap</1>."
|
||||
|
||||
#: src/components/AccountDetails/index.tsx
|
||||
msgid "Change"
|
||||
@@ -400,6 +400,10 @@ msgstr "סגור"
|
||||
msgid "Closed"
|
||||
msgstr "סָגוּר"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Closed positions"
|
||||
msgstr "תפקידים סגורים"
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Code"
|
||||
msgstr "קוד"
|
||||
@@ -522,7 +526,7 @@ msgstr "צור זוג"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Create a pool"
|
||||
msgstr "צור בריכה"
|
||||
msgstr "צור מאגר"
|
||||
|
||||
#: src/components/ErrorBoundary/index.tsx
|
||||
msgid "Create an issue on GitHub"
|
||||
@@ -727,8 +731,8 @@ msgid "Get support on Discord"
|
||||
msgstr "קבל תמיכה בדיסקורד"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Hide closed positions"
|
||||
msgstr "הסתר עמדות סגורות"
|
||||
msgid "Hide"
|
||||
msgstr "להתחבא"
|
||||
|
||||
#: src/pages/Swap/index.tsx
|
||||
msgid "High Price Impact"
|
||||
@@ -894,7 +898,7 @@ msgstr "נהל רשימות אסימונים"
|
||||
|
||||
#: src/pages/PoolFinder/index.tsx
|
||||
msgid "Manage this pool."
|
||||
msgstr "נהל את הבריכה הזו."
|
||||
msgstr "נהל את המאגר הזה."
|
||||
|
||||
#: src/pages/RemoveLiquidity/V3.tsx
|
||||
msgid "Max"
|
||||
@@ -990,7 +994,7 @@ msgstr "לא נמצאה נזילות."
|
||||
|
||||
#: src/pages/PoolFinder/index.tsx
|
||||
msgid "No pool found."
|
||||
msgstr "לא נמצאה בריכה."
|
||||
msgstr "לא נמצא מאגר."
|
||||
|
||||
#: src/pages/Vote/index.tsx
|
||||
msgid "No proposals found."
|
||||
@@ -1068,24 +1072,24 @@ msgstr "אנא הקלד את המילה \"{confirmWord}\" כדי להפעיל מ
|
||||
#: src/components/Header/index.tsx
|
||||
#: src/components/NavigationTabs/index.tsx
|
||||
msgid "Pool"
|
||||
msgstr "בריכה"
|
||||
msgstr "מאגר"
|
||||
|
||||
#: src/pages/PoolFinder/index.tsx
|
||||
msgid "Pool Found!"
|
||||
msgstr "בריכה נמצאה!"
|
||||
msgstr "מאגר נמצא!"
|
||||
|
||||
#: src/pages/Earn/Manage.tsx
|
||||
msgid "Pool Rate"
|
||||
msgstr "תעריף בריכה"
|
||||
msgstr "תעריף מאגר"
|
||||
|
||||
#: src/components/earn/PoolCard.tsx
|
||||
msgid "Pool rate"
|
||||
msgstr "תעריף בריכה"
|
||||
msgstr "תעריף מאגר"
|
||||
|
||||
#: src/components/PositionCard/V2.tsx
|
||||
#: src/components/PositionCard/index.tsx
|
||||
msgid "Pool tokens in rewards pool:"
|
||||
msgstr "אסימונים לבריכה בבריכת תגמולים:"
|
||||
msgstr "אסימונים למאגר בבריכת תגמולים:"
|
||||
|
||||
#: src/components/PositionCard/V2.tsx
|
||||
#: src/components/PositionCard/V2.tsx
|
||||
@@ -1100,7 +1104,7 @@ msgstr "מאוגד {0}:"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Pools Overview"
|
||||
msgstr "סקירת בריכות"
|
||||
msgstr "סקירת מאגרים"
|
||||
|
||||
#: src/components/swap/SwapModalHeader.tsx
|
||||
#: src/pages/RemoveLiquidity/index.tsx
|
||||
@@ -1233,7 +1237,7 @@ msgstr "בחר בריכה"
|
||||
|
||||
#: src/components/FeeSelector/index.tsx
|
||||
msgid "Select a pool type based on your preferred liquidity provider fee."
|
||||
msgstr "בחר סוג בריכה על בסיס עמלת ספק הנזילות המועדפת עליך."
|
||||
msgstr "בחר סוג מאגר על בסיס עמלת ספק הנזילות המועדפת עליך."
|
||||
|
||||
#: src/components/CurrencyInputPanel/index.tsx
|
||||
#: src/components/SearchModal/CurrencySearch.tsx
|
||||
@@ -1274,11 +1278,15 @@ msgstr "הגדר מחיר התחלתי"
|
||||
|
||||
#: src/pages/AddLiquidityV2/PoolPriceBar.tsx
|
||||
msgid "Share of Pool"
|
||||
msgstr "נתח הבריכה"
|
||||
msgstr "נתח המאגר"
|
||||
|
||||
#: src/pages/AddLiquidityV2/ConfirmAddModalBottom.tsx
|
||||
msgid "Share of Pool:"
|
||||
msgstr "נתח הבריכה:"
|
||||
msgstr "נתח המאגר:"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Show"
|
||||
msgstr "הופעה"
|
||||
|
||||
#: src/components/AccountDetails/index.tsx
|
||||
msgid "Show Portis"
|
||||
@@ -1360,11 +1368,11 @@ msgstr "לא ניתן להעביר את אסימון הפלט. ייתכן שיש
|
||||
|
||||
#: src/components/Badge/RangeBadge.tsx
|
||||
msgid "The price of this pool is outside of your selected range. Your position is not currently earning fees."
|
||||
msgstr "המחיר של הבריכה הזו מחוץ לטווח שבחרתם. עמדתך אינה מרוויחה כרגע עמלות."
|
||||
msgstr "המחיר של המאגר הזה מחוץ לטווח שבחרתם. עמדתך אינה מרוויחה כרגע עמלות."
|
||||
|
||||
#: src/components/Badge/RangeBadge.tsx
|
||||
msgid "The price of this pool is within your selected range. Your position is currently earning fees."
|
||||
msgstr "המחיר של הבריכה הזו הוא בטווח שבחרתם. עמדתך מרוויחה כרגע עמלות."
|
||||
msgstr "המחיר של המאגר הזה הוא בטווח שבחרתם. עמדתך מרוויחה כרגע עמלות."
|
||||
|
||||
#: src/pages/AddLiquidityV2/index.tsx
|
||||
msgid "The ratio of tokens you add will set the price of this pool."
|
||||
@@ -1729,7 +1737,7 @@ msgstr "עליך לתת לחוזים החכמים של Uniswap להשתמש ב-
|
||||
|
||||
#: src/pages/MigrateV2/MigrateV2Pair.tsx
|
||||
msgid "You should only deposit liquidity into Uniswap V3 at a price you believe is correct. <0/>If the price seems incorrect, you can either make a swap to move the price or wait for someone else to do so."
|
||||
msgstr "עליכם להפקיד נזילות רק ב- Uniswap V3 במחיר שלדעתכם נכון. <0 /> אם נראה שהמחיר שגוי, באפשרותך להחליף כדי להזיז את המחיר או לחכות שמישהו אחר יעשה זאת."
|
||||
msgstr "עליכם להפקיד נזילות רק ב- Uniswap V3 במחיר שלדעתכם נכון. <0/> אם נראה שהמחיר שגוי, באפשרותך להחליף כדי להזיז את המחיר או לחכות שמישהו אחר יעשה זאת."
|
||||
|
||||
#: src/pages/RemoveLiquidity/V3.tsx
|
||||
msgid "You will also collect fees earned from this position."
|
||||
@@ -1829,7 +1837,7 @@ msgstr "העסקאות שלך יופיעו כאן ..."
|
||||
|
||||
#: src/pages/Earn/Manage.tsx
|
||||
msgid "Your unclaimed UNI"
|
||||
msgstr "האו\"ם הלא מתבקש שלך"
|
||||
msgstr "ה-UNI שלך לא נדרש"
|
||||
|
||||
#: src/components/Settings/index.tsx
|
||||
msgid "confirm"
|
||||
@@ -1841,7 +1849,7 @@ msgstr "עבור {0}"
|
||||
|
||||
#: src/components/Web3Status/index.tsx
|
||||
msgid "has socks emoji"
|
||||
msgstr "יש אימוג'י גרביים"
|
||||
msgstr "יש אימוג'י של גרביים"
|
||||
|
||||
#: src/components/SearchModal/ManageLists.tsx
|
||||
msgid "https:// or ipfs:// or ENS name"
|
||||
@@ -1872,7 +1880,7 @@ msgstr "{0} %"
|
||||
#: src/components/PositionListItem/index.tsx
|
||||
#: src/components/PositionListItem/index.tsx
|
||||
msgid "{0} <0/> per <1/>"
|
||||
msgstr "{0} <0 /> לכל <1 />"
|
||||
msgstr "{0} <0 /> לכל <1/>"
|
||||
|
||||
#: src/components/SearchModal/ManageTokens.tsx
|
||||
msgid "{0} Custom Tokens"
|
||||
@@ -1999,9 +2007,9 @@ msgstr "{tokenB} לכל {tokenA}"
|
||||
|
||||
#: src/components/CurrencyInputPanel/FiatValue.tsx
|
||||
msgid "~$ <0/>"
|
||||
msgstr "~ $ <0 />"
|
||||
msgstr "~ $ <0/>"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
msgid "← Back to Pools Overview"
|
||||
msgstr "← חזרה לסקירת בריכות"
|
||||
msgstr "← חזרה לסקירת מאגרים"
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"POT-Creation-Date: 2021-06-16 02:37+0000\n"
|
||||
"POT-Creation-Date: 2021-06-21 15:11+0000\n"
|
||||
"Mime-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"X-Crowdin-File-ID: 4\n"
|
||||
"Project-Id-Version: uniswap-interface\n"
|
||||
"Language-Team: Hungarian\n"
|
||||
"PO-Revision-Date: 2021-06-16 03:05\n"
|
||||
"PO-Revision-Date: 2021-06-21 16:05\n"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
@@ -171,7 +171,7 @@ msgstr "Adja hozzá a likviditást."
|
||||
|
||||
#: src/components/TransactionConfirmationModal/index.tsx
|
||||
msgid "Add {0} to Metamask <0/>"
|
||||
msgstr "{0} hozzáadása a Metamask <0 /> elemhez"
|
||||
msgstr "{0} hozzáadása a Metamask <0/> elemhez"
|
||||
|
||||
#: src/pages/AddLiquidityV2/index.tsx
|
||||
#: src/pages/AddLiquidityV2/index.tsx
|
||||
@@ -223,8 +223,8 @@ msgid "Amount"
|
||||
msgstr "Összeg"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Hiba történt a csere végrehajtása során. Lehet, hogy növelnie kell a csúszási toleranciát. Ha ez nem működik, akkor összeférhetetlenség állhat fenn a kereskedett tokennel. Megjegyzés: az átutalási és az újraalapítási tokenek díja nem kompatibilis a Uniswap V3-mal."
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note: fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Hiba történt a csere végrehajtása során. Lehet, hogy növelnie kell a csúszási toleranciát. Ha ez nem működik, akkor összeférhetetlenség állhat fenn az Ön által forgalmazott tokennel. Megjegyzés: az átviteli és újrabázis tokenek díja nem kompatibilis az Uniswap V3 verzióval."
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Analytics"
|
||||
@@ -400,6 +400,10 @@ msgstr "Bezárás"
|
||||
msgid "Closed"
|
||||
msgstr "Zárva"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Closed positions"
|
||||
msgstr "Zárt pozíciók"
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Code"
|
||||
msgstr "Kód"
|
||||
@@ -728,8 +732,8 @@ msgid "Get support on Discord"
|
||||
msgstr "Kérjen támogatást a Discordon"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Hide closed positions"
|
||||
msgstr "Zárt pozíciók elrejtése"
|
||||
msgid "Hide"
|
||||
msgstr "Elrejt"
|
||||
|
||||
#: src/pages/Swap/index.tsx
|
||||
msgid "High Price Impact"
|
||||
@@ -1281,6 +1285,10 @@ msgstr "Pool részesedése"
|
||||
msgid "Share of Pool:"
|
||||
msgstr "Pool részesedése:"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Show"
|
||||
msgstr "Előadás"
|
||||
|
||||
#: src/components/AccountDetails/index.tsx
|
||||
msgid "Show Portis"
|
||||
msgstr "Portis megjelenítése"
|
||||
@@ -1337,7 +1345,7 @@ msgstr "{0} {1} cseréje a következőre {2} {3}"
|
||||
|
||||
#: src/components/Popups/ClaimPopup.tsx
|
||||
msgid "Thanks for being part of the Uniswap community <0/>"
|
||||
msgstr "Köszönjük, hogy az Uniswap közösség tagja <0 />"
|
||||
msgstr "Köszönjük, hogy az Uniswap közösség tagja <0/>"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "The Uniswap invariant x*y=k was not satisfied by the swap. This usually means one of the tokens you are swapping incorporates custom behavior on transfer."
|
||||
@@ -1873,7 +1881,7 @@ msgstr "{0} %"
|
||||
#: src/components/PositionListItem/index.tsx
|
||||
#: src/components/PositionListItem/index.tsx
|
||||
msgid "{0} <0/> per <1/>"
|
||||
msgstr "{0} <0 /> per <1 />"
|
||||
msgstr "{0} <0/> per <1/>"
|
||||
|
||||
#: src/components/SearchModal/ManageTokens.tsx
|
||||
msgid "{0} Custom Tokens"
|
||||
@@ -2001,7 +2009,7 @@ msgstr "{tokenB} per {tokenA}"
|
||||
|
||||
#: src/components/CurrencyInputPanel/FiatValue.tsx
|
||||
msgid "~$ <0/>"
|
||||
msgstr "~ $ <0 />"
|
||||
msgstr "~ $ <0/>"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
msgid "← Back to Pools Overview"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"POT-Creation-Date: 2021-06-16 02:37+0000\n"
|
||||
"POT-Creation-Date: 2021-06-21 15:11+0000\n"
|
||||
"Mime-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"X-Crowdin-File-ID: 4\n"
|
||||
"Project-Id-Version: uniswap-interface\n"
|
||||
"Language-Team: Indonesian\n"
|
||||
"PO-Revision-Date: 2021-06-16 03:05\n"
|
||||
"PO-Revision-Date: 2021-06-21 16:05\n"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
@@ -223,8 +223,8 @@ msgid "Amount"
|
||||
msgstr "Jumlah"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Terjadi kesalahan saat mencoba menjalankan swap ini. Anda mungkin perlu meningkatkan toleransi slippage Anda. Jika tidak berhasil, mungkin ada ketidakcocokan dengan token yang Anda perdagangkan. Catatan biaya transfer dan token rebase tidak cocok dengan Uniswap V3."
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note: fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Terjadi kesalahan saat mencoba menjalankan swap ini. Anda mungkin perlu meningkatkan toleransi selip Anda. Jika itu tidak berhasil, mungkin ada ketidakcocokan dengan token yang Anda perdagangkan. Catatan: biaya transfer dan token rebase tidak sesuai dengan Uniswap V3."
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Analytics"
|
||||
@@ -400,6 +400,10 @@ msgstr "Tutup"
|
||||
msgid "Closed"
|
||||
msgstr "Ditutup"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Closed positions"
|
||||
msgstr "Posisi tertutup"
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Code"
|
||||
msgstr "Kode"
|
||||
@@ -727,8 +731,8 @@ msgid "Get support on Discord"
|
||||
msgstr "Dapatkan dukungan di Discord"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Hide closed positions"
|
||||
msgstr "Sembunyikan posisi tertutup"
|
||||
msgid "Hide"
|
||||
msgstr "Menyembunyikan"
|
||||
|
||||
#: src/pages/Swap/index.tsx
|
||||
msgid "High Price Impact"
|
||||
@@ -1280,6 +1284,10 @@ msgstr "Bagian dari Pool"
|
||||
msgid "Share of Pool:"
|
||||
msgstr "Bagian dari Pool:"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Show"
|
||||
msgstr "Menunjukkan"
|
||||
|
||||
#: src/components/AccountDetails/index.tsx
|
||||
msgid "Show Portis"
|
||||
msgstr "Tampilkan Portis"
|
||||
@@ -1336,7 +1344,7 @@ msgstr "Menukar {0} {1} untuk {2} {3}"
|
||||
|
||||
#: src/components/Popups/ClaimPopup.tsx
|
||||
msgid "Thanks for being part of the Uniswap community <0/>"
|
||||
msgstr "Terima kasih telah menjadi bagian dari komunitas Uniswap </>"
|
||||
msgstr "Terima kasih telah menjadi bagian dari komunitas Uniswap <0/>"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "The Uniswap invariant x*y=k was not satisfied by the swap. This usually means one of the tokens you are swapping incorporates custom behavior on transfer."
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"POT-Creation-Date: 2021-06-16 02:37+0000\n"
|
||||
"POT-Creation-Date: 2021-06-21 15:11+0000\n"
|
||||
"Mime-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"X-Crowdin-File-ID: 4\n"
|
||||
"Project-Id-Version: uniswap-interface\n"
|
||||
"Language-Team: Italian\n"
|
||||
"PO-Revision-Date: 2021-06-16 03:05\n"
|
||||
"PO-Revision-Date: 2021-06-21 16:05\n"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
@@ -223,8 +223,8 @@ msgid "Amount"
|
||||
msgstr "Importo"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Si è verificato un errore durante il tentativo di eseguire questo scambio. Potrebbe essere necessario aumentare la tolleranza allo slittamento. Se non funziona, potrebbe esserci un'incompatibilità con il token che stai scambiando. Nota la commissione sui token di trasferimento e di base non sono compatibili con Uniswap V3."
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note: fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Si è verificato un errore durante il tentativo di eseguire questo scambio. Potrebbe essere necessario aumentare la tolleranza allo slittamento. Se ciò non funziona, potrebbe esserci un'incompatibilità con il token che stai scambiando. Nota: la commissione sui token di trasferimento e rebase non è compatibile con Uniswap V3."
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Analytics"
|
||||
@@ -400,6 +400,10 @@ msgstr "Chiudi"
|
||||
msgid "Closed"
|
||||
msgstr "Chiuso"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Closed positions"
|
||||
msgstr "Posizioni chiuse"
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Code"
|
||||
msgstr "Codice"
|
||||
@@ -727,8 +731,8 @@ msgid "Get support on Discord"
|
||||
msgstr "Ottieni supporto su Discord"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Hide closed positions"
|
||||
msgstr "Nascondi posizioni chiuse"
|
||||
msgid "Hide"
|
||||
msgstr "Nascondere"
|
||||
|
||||
#: src/pages/Swap/index.tsx
|
||||
msgid "High Price Impact"
|
||||
@@ -1280,6 +1284,10 @@ msgstr "Quota del pool"
|
||||
msgid "Share of Pool:"
|
||||
msgstr "Quota del pool:"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Show"
|
||||
msgstr "Mostrare"
|
||||
|
||||
#: src/components/AccountDetails/index.tsx
|
||||
msgid "Show Portis"
|
||||
msgstr "Show Portis"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"POT-Creation-Date: 2021-06-16 02:37+0000\n"
|
||||
"POT-Creation-Date: 2021-06-21 15:11+0000\n"
|
||||
"Mime-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"X-Crowdin-File-ID: 4\n"
|
||||
"Project-Id-Version: uniswap-interface\n"
|
||||
"Language-Team: Japanese\n"
|
||||
"PO-Revision-Date: 2021-06-16 03:05\n"
|
||||
"PO-Revision-Date: 2021-06-21 16:05\n"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
@@ -105,11 +105,11 @@ msgstr "<0>アカウント分析と発生した手数料</0><1>↗ </1>"
|
||||
|
||||
#: src/pages/Swap/index.tsx
|
||||
msgid "<0>Back to </0>V3"
|
||||
msgstr "V3<0>に戻る</0>"
|
||||
msgstr "V3に<0>戻る</0>"
|
||||
|
||||
#: src/pages/RemoveLiquidity/index.tsx
|
||||
msgid "<0>Tip:</0> Removing pool tokens converts your position back into underlying tokens at the current rate, proportional to your share of the pool. Accrued fees are included in the amounts you receive."
|
||||
msgstr "<0>ヒント:</0> プールトークンを削除すると、プールのシェアに応じて現在の価格で原資産のトークンに戻ります。発生した手数料は受け取るトークンに含まれます。"
|
||||
msgstr "<0>ヒント:</0> 流動性トークンを削除すると、プールのシェアに比例して現在の価格で元のトークンに戻ります。発生した報酬は受け取るトークンに含まれます。"
|
||||
|
||||
#: src/pages/PoolFinder/index.tsx
|
||||
msgid "<0>Tip:</0> Use this tool to find v2 pools that don't automatically appear in the interface."
|
||||
@@ -117,7 +117,7 @@ msgstr "<0>ヒント:</0> このツールを使用して、画面に自動表示
|
||||
|
||||
#: src/pages/AddLiquidityV2/index.tsx
|
||||
msgid "<0>Tip:</0> When you add liquidity, you will receive pool tokens representing your position. These tokens automatically earn fees proportional to your share of the pool, and can be redeemed at any time."
|
||||
msgstr "<0>ヒント:</0> 流動性を追加すると、そのポジションを表すプールトークンを受け取ります。 プールトークンはプールのシェアに応じて自動的に報酬を獲得します。また、プールトークンはいつでも換金できます。"
|
||||
msgstr "<0>ヒント:</0> 流動性を追加すると、そのポジションを表す流動性トークンを受け取ります。 流動性トークンはプールのシェアに応じて自動的に報酬を獲得します。また、流動性トークンはいつでも償還できます。"
|
||||
|
||||
#: src/pages/Vote/VotePage.tsx
|
||||
msgid "<0>Unlock voting</0> to prepare for the next proposal."
|
||||
@@ -125,11 +125,11 @@ msgstr "次の提案に備えるため <0>投票のロックを解除</0>"
|
||||
|
||||
#: src/components/claim/ClaimModal.tsx
|
||||
msgid "<0>🎉 </0>Welcome to team Unicorn :) <1>🎉</1>"
|
||||
msgstr "<0>🎉 </0>チーム ユニコーンにようこそ:)<1>🎉</1>"
|
||||
msgstr "<0>🎉 </0>チーム ユニコーンにようこそ <1>🎉</1>"
|
||||
|
||||
#: src/pages/Vote/index.tsx
|
||||
msgid "A minimum threshold of 0.25% of the total UNI supply is required to submit proposals"
|
||||
msgstr "提案を提出するには、UNIの総供給量の0.25%以上のしきい値が必要です。"
|
||||
msgstr "提案を提出するには、UNIの総供給量の0.25%以上のUNIが必要です。"
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "About"
|
||||
@@ -167,7 +167,7 @@ msgstr "V2の流動性を追加"
|
||||
|
||||
#: src/pages/PoolFinder/index.tsx
|
||||
msgid "Add liquidity."
|
||||
msgstr "流動性を追加。"
|
||||
msgstr "流動性を追加"
|
||||
|
||||
#: src/components/TransactionConfirmationModal/index.tsx
|
||||
msgid "Add {0} to Metamask <0/>"
|
||||
@@ -188,11 +188,11 @@ msgstr "{0}/{1} V3の流動性を追加"
|
||||
|
||||
#: src/components/TransactionConfirmationModal/index.tsx
|
||||
msgid "Added {0}"
|
||||
msgstr "{0} を追加済"
|
||||
msgstr "{0} を追加"
|
||||
|
||||
#: src/components/claim/AddressClaimModal.tsx
|
||||
msgid "Address has no available claim"
|
||||
msgstr "アドレスには可能な請求がありません"
|
||||
msgstr "請求可能なアドレスではありません"
|
||||
|
||||
#: src/pages/Vote/VotePage.tsx
|
||||
msgid "Against"
|
||||
@@ -204,15 +204,15 @@ msgstr "LPトークンの移行を許可する"
|
||||
|
||||
#: src/components/Settings/index.tsx
|
||||
msgid "Allow high price impact trades and skip the confirm screen. Use at your own risk."
|
||||
msgstr "価格に大きな影響がある取引を許可し、確認画面をスキップします。自己責任でご利用ください。"
|
||||
msgstr "価格への大きな影響がある取引を許可し、確認画面をスキップします。自己責任でご利用ください。"
|
||||
|
||||
#: src/pages/Swap/index.tsx
|
||||
msgid "Allow the Uniswap Protocol to use your {0}"
|
||||
msgstr "{0} の使用をUniswapプロトコルに許可する"
|
||||
msgstr "{0} の使用をUniswapに許可する"
|
||||
|
||||
#: src/pages/MigrateV2/MigrateV2Pair.tsx
|
||||
msgid "Allowed"
|
||||
msgstr "許可済"
|
||||
msgstr "許可"
|
||||
|
||||
#: src/components/Header/URLWarning.tsx
|
||||
msgid "Always make sure the URL is<0>app.uniswap.org</0> - bookmark it to be safe."
|
||||
@@ -223,12 +223,12 @@ msgid "Amount"
|
||||
msgstr "数量"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "スワップを実行しようとした際、エラーが発生しました。スリッページの許容範囲を増やす必要があるかもしれません。それでも上手くいかない場合は、取引しているトークンとの互換性がない可能性があります。送金手数料およびリベーストークンにはUniswapV3と互換性がないことにご注意ください。"
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note: fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "このスワップを実行しようとしたときにエラーが発生しました。スリッページの許容範囲を広げる必要があるかもしれません。それが機能しない場合は、取引しているトークンとの互換性がない可能性があります。注:転送およびリベーストークンの料金は、UniswapV3と互換性がありません。"
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Analytics"
|
||||
msgstr "分析"
|
||||
msgstr "アナリティクス"
|
||||
|
||||
#: src/components/earn/StakingModal.tsx
|
||||
#: src/pages/RemoveLiquidity/index.tsx
|
||||
@@ -264,7 +264,7 @@ msgstr "本当によろしいですか?"
|
||||
|
||||
#: src/components/claim/ClaimModal.tsx
|
||||
msgid "As a member of the Uniswap community you may claim UNI to be used for voting and governance.<0/><1/><2>Read more about UNI</2>"
|
||||
msgstr "Uniswapコミュニティのメンバーとして、投票とガバナンスにUNIを請求できます。<0/><1/><2>UNIについてもっと見る</2>"
|
||||
msgstr "Uniswapコミュニティのメンバーとして、投票とガバナンスのためにUNIを使用できます。<0/><1/><2>UNIについてもっと見る</2>"
|
||||
|
||||
#: src/pages/MigrateV2/MigrateV2Pair.tsx
|
||||
msgid "At least {0} {1} and {2} {3} will be refunded to your wallet due to selected price range."
|
||||
@@ -276,7 +276,7 @@ msgstr "自動"
|
||||
|
||||
#: src/components/earn/StakingModal.tsx
|
||||
msgid "Available to deposit: {0}"
|
||||
msgstr "デポジット可能: {0}"
|
||||
msgstr "預け入れ可能: {0}"
|
||||
|
||||
#: src/components/WalletModal/index.tsx
|
||||
msgid "Back"
|
||||
@@ -288,35 +288,35 @@ msgstr "残高:"
|
||||
|
||||
#: src/components/CurrencyInputPanel/index.tsx
|
||||
msgid "Balance: {0} {1}"
|
||||
msgstr "残高: {0} {1}"
|
||||
msgstr "残高: {0} {1}"
|
||||
|
||||
#: src/components/FeeSelector/index.tsx
|
||||
msgid "Best for exotic pairs."
|
||||
msgstr "マイナーなペアに最適です。"
|
||||
msgstr "マイナーなペアに最適"
|
||||
|
||||
#: src/components/FeeSelector/index.tsx
|
||||
msgid "Best for most pairs."
|
||||
msgstr "ほとんどのペアに最適です。"
|
||||
msgstr "ほとんどのペアに最適"
|
||||
|
||||
#: src/components/FeeSelector/index.tsx
|
||||
msgid "Best for stable pairs."
|
||||
msgstr "安定したペアに最適です。"
|
||||
msgstr "安定的なペアに最適"
|
||||
|
||||
#: src/components/Blocklist/index.tsx
|
||||
msgid "Blocked address"
|
||||
msgstr "ブロック済のアドレス"
|
||||
msgstr "ブロックされたアドレス"
|
||||
|
||||
#: src/components/PositionCard/index.tsx
|
||||
msgid "By adding liquidity you'll earn 0.3% of all trades on this pair proportional to your share of the pool. Fees are added to the pool, accrue in real time and can be claimed by withdrawing your liquidity."
|
||||
msgstr "流動性を追加することで、あなたはプールのシェアに比例してこのペアのすべての取引の0.3%を得ることになります。手数料はプールに追加され、リアルタイムで発生し、流動性を引き出すことで請求できます。"
|
||||
msgstr "流動性を追加することで、このペアのすべての取引で発生する0.3%の手数料のうち、プールのシェアに応じた報酬を獲得します。報酬はリアルタイムにプールに追加され、反映されます。報酬は流動性を引き出すことで請求できます。"
|
||||
|
||||
#: src/components/SearchModal/ImportList.tsx
|
||||
msgid "By adding this list you are implicitly trusting that the data is correct. Anyone can create a list, including creating fake versions of existing lists and lists that claim to represent projects that do not have one."
|
||||
msgstr "このリストを追加することで、データが正しいことを暗黙的に信頼することになります。 誰でもリストを作成することができるため、既存リストの偽バージョンや、リストのないプロジェクトを表すリストである可能性があります。"
|
||||
msgstr "このリストを追加することで、データが正しいことを暗黙的に信頼することになります。 誰でもリストを作成することができます。そのため、既存リストの偽のバージョンや、実体のないプロジェクトを掲載するリストが作成されている可能性があります。"
|
||||
|
||||
#: src/components/WalletModal/index.tsx
|
||||
msgid "By connecting a wallet, you agree to Uniswap Labs’ <0>Terms of Service</0> and acknowledge that you have read and understand the <1>Uniswap protocol disclaimer</1>."
|
||||
msgstr "ウォレットを接続することにより、Uniswap Labsの <0>サービス利用規約</0>に同意し、<1>Uniswapプロトコルの免責事項</1>を読み、理解したことを認めます。"
|
||||
msgstr "ウォレットを接続することにより、Uniswap Labsの <0>サービス利用規約</0>に同意し、Uniswapプロトコルの<1>免責事項</1>を読み、理解したことに同意します。"
|
||||
|
||||
#: src/components/AccountDetails/index.tsx
|
||||
msgid "Change"
|
||||
@@ -328,7 +328,7 @@ msgstr "チャート"
|
||||
|
||||
#: src/pages/Pool/CTACards.tsx
|
||||
msgid "Check out our v3 LP walkthrough and migration guides."
|
||||
msgstr "V3 LPの説明と移行ガイドをご覧ください。"
|
||||
msgstr "V3の流動性と移行ガイドをご覧ください。"
|
||||
|
||||
#: src/components/earn/ClaimRewardModal.tsx
|
||||
#: src/components/earn/ClaimRewardModal.tsx
|
||||
@@ -351,7 +351,7 @@ msgstr "UNIトークンを請求する"
|
||||
#: src/components/earn/ClaimRewardModal.tsx
|
||||
#: src/components/earn/ClaimRewardModal.tsx
|
||||
msgid "Claim accumulated UNI rewards"
|
||||
msgstr "貯まったUNI報酬を請求する"
|
||||
msgstr "UNI報酬を請求する"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
msgid "Claim fees"
|
||||
@@ -400,38 +400,42 @@ msgstr "終了"
|
||||
msgid "Closed"
|
||||
msgstr "終了済"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Closed positions"
|
||||
msgstr "クローズドポジション"
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Code"
|
||||
msgstr "コード"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
msgid "Collect"
|
||||
msgstr "集める"
|
||||
msgstr "取得する"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
#: src/pages/RemoveLiquidity/V3.tsx
|
||||
msgid "Collect as WETH"
|
||||
msgstr "WETHで集める"
|
||||
msgstr "WETHで取得"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
msgid "Collect fees"
|
||||
msgstr "手数料を集める"
|
||||
msgstr "報酬を取得"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
msgid "Collected"
|
||||
msgstr "収集済"
|
||||
msgstr "取得済"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
msgid "Collecting"
|
||||
msgstr "収集中"
|
||||
msgstr "取得中"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
msgid "Collecting fees"
|
||||
msgstr "手数料の収集中"
|
||||
msgstr "報酬を取得中"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
msgid "Collecting fees will withdraw currently available fees for you."
|
||||
msgstr "手数料の収集は現在取得可能な手数料を引き出します。"
|
||||
msgstr "報酬の取得は現在取得できる報酬を引き出します。"
|
||||
|
||||
#: src/components/SearchModal/CommonBases.tsx
|
||||
msgid "Common bases"
|
||||
@@ -469,12 +473,12 @@ msgstr "ウォレットで取引を確認する"
|
||||
#: src/state/stake/hooks.ts
|
||||
#: src/state/swap/hooks.ts
|
||||
msgid "Connect Wallet"
|
||||
msgstr "ウォレットを接続"
|
||||
msgstr "ウォレットに接続"
|
||||
|
||||
#: src/components/earn/UnstakingModal.tsx
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Connect a wallet"
|
||||
msgstr "ウォレットを接続"
|
||||
msgstr "ウォレットに接続"
|
||||
|
||||
#: src/components/WalletModal/index.tsx
|
||||
#: src/components/Web3Status/index.tsx
|
||||
@@ -496,7 +500,7 @@ msgstr "ウォレットに接続して流動性を確認します。"
|
||||
#: src/components/earn/ClaimRewardModal.tsx
|
||||
#: src/pages/AddLiquidity/index.tsx
|
||||
msgid "Connect wallet"
|
||||
msgstr "ウォレットを接続"
|
||||
msgstr "ウォレットに接続"
|
||||
|
||||
#: src/components/AccountDetails/index.tsx
|
||||
msgid "Connected with {name}"
|
||||
@@ -504,7 +508,7 @@ msgstr "{name} と接続しました"
|
||||
|
||||
#: src/components/AccountDetails/Copy.tsx
|
||||
msgid "Copied"
|
||||
msgstr "コピー済"
|
||||
msgstr "コピーしました"
|
||||
|
||||
#: src/components/AccountDetails/index.tsx
|
||||
#: src/components/AccountDetails/index.tsx
|
||||
@@ -513,7 +517,7 @@ msgstr "アドレスをコピー"
|
||||
|
||||
#: src/pages/AddLiquidityV2/ConfirmAddModalBottom.tsx
|
||||
msgid "Create Pool & Supply"
|
||||
msgstr "プールおよび供給を作成"
|
||||
msgstr "プール作成と流動性の追加"
|
||||
|
||||
#: src/components/NavigationTabs/index.tsx
|
||||
#: src/pages/Pool/v2.tsx
|
||||
@@ -526,7 +530,7 @@ msgstr "プールを作成"
|
||||
|
||||
#: src/components/ErrorBoundary/index.tsx
|
||||
msgid "Create an issue on GitHub"
|
||||
msgstr "GitHubでイシューを作成"
|
||||
msgstr "GitHubでissueを作成する"
|
||||
|
||||
#: src/pages/AddLiquidity/index.tsx
|
||||
msgid "Create pool and add {0}/{1} V3 liquidity"
|
||||
@@ -534,7 +538,7 @@ msgstr "プールを作成し、 {0}/{1} のV3流動性を追加"
|
||||
|
||||
#: src/pages/PoolFinder/index.tsx
|
||||
msgid "Create pool."
|
||||
msgstr "プールを作成。"
|
||||
msgstr "プールを作成"
|
||||
|
||||
#: src/pages/AddLiquidity/index.tsx
|
||||
msgid "Current Price"
|
||||
@@ -566,35 +570,35 @@ msgstr "投票を委任中"
|
||||
#: src/components/earn/StakingModal.tsx
|
||||
#: src/pages/Earn/Manage.tsx
|
||||
msgid "Deposit"
|
||||
msgstr "デポジット"
|
||||
msgstr "預け入れ"
|
||||
|
||||
#: src/pages/AddLiquidity/index.tsx
|
||||
msgid "Deposit Amounts"
|
||||
msgstr "デポジット額"
|
||||
msgstr "預け入れる数量"
|
||||
|
||||
#: src/pages/Earn/Manage.tsx
|
||||
msgid "Deposit UNI-V2 LP Tokens"
|
||||
msgstr "UNI-V2 LPトークンをデポジット"
|
||||
msgstr "UNI-V2 LP トークンを預け入れる"
|
||||
|
||||
#: src/components/earn/StakingModal.tsx
|
||||
msgid "Deposit liquidity"
|
||||
msgstr "デポジットの流動性"
|
||||
msgstr "流動性を預ける"
|
||||
|
||||
#: src/pages/Earn/index.tsx
|
||||
msgid "Deposit your Liquidity Provider tokens to receive UNI, the Uniswap protocol governance token."
|
||||
msgstr "流動性プロバイダトークンをデポジットして、UniswapプロトコルのガバナンストークンであるUNIを受け取ります。"
|
||||
msgstr "流動性トークンを預けて、UniswapプロトコルのガバナンストークンであるUNIを受け取ります。"
|
||||
|
||||
#: src/components/earn/UnstakingModal.tsx
|
||||
msgid "Deposited liquidity:"
|
||||
msgstr "デポジット済の流動性:"
|
||||
msgstr "預け入れ流動性:"
|
||||
|
||||
#: src/components/earn/StakingModal.tsx
|
||||
msgid "Deposited {0} UNI-V2"
|
||||
msgstr "デポジット済の {0} UNI-V2"
|
||||
msgstr "預け入れた {0} UNI-V2"
|
||||
|
||||
#: src/components/earn/StakingModal.tsx
|
||||
msgid "Depositing Liquidity"
|
||||
msgstr "流動性をデポジット中"
|
||||
msgstr "流動性を預け入れ中"
|
||||
|
||||
#: src/pages/Vote/VotePage.tsx
|
||||
msgid "Description"
|
||||
@@ -622,7 +626,7 @@ msgstr "Discord"
|
||||
|
||||
#: src/components/TransactionConfirmationModal/index.tsx
|
||||
msgid "Dismiss"
|
||||
msgstr "却下"
|
||||
msgstr "注文を取り下げる"
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Docs"
|
||||
@@ -630,11 +634,11 @@ msgstr "資料"
|
||||
|
||||
#: src/pages/MigrateV2/index.tsx
|
||||
msgid "Don’t see one of your v2 positions? <0>Import it.</0>"
|
||||
msgstr "V2のポジションのひとつが表示されませんか?<0>インポートしてください。</0>"
|
||||
msgstr "V2の流動性が表示されない場合、該当のトークンを<0>インポート</0>してください"
|
||||
|
||||
#: src/components/vote/DelegateModal.tsx
|
||||
msgid "Earned UNI tokens represent voting shares in Uniswap governance."
|
||||
msgstr "獲得したUNIトークンは、Uniswapガバナンスにおける議決権を表します。"
|
||||
msgstr "保有するUNIトークンは、Uniswapのガバナンスにおける投票権を表します。"
|
||||
|
||||
#: src/state/burn/v3/hooks.ts
|
||||
msgid "Enter a percent"
|
||||
@@ -646,7 +650,7 @@ msgstr "受取人を入力"
|
||||
|
||||
#: src/components/TransactionSettings/index.tsx
|
||||
msgid "Enter a valid slippage percentage"
|
||||
msgstr "有効なスリッページの割合を入力してください"
|
||||
msgstr "有効なスリップページの値を入力してください"
|
||||
|
||||
#: src/components/claim/AddressClaimModal.tsx
|
||||
msgid "Enter an address to trigger a UNI claim. If the address has any claimable UNI it will be sent to them on submission."
|
||||
@@ -665,7 +669,7 @@ msgstr "数量を入力してください"
|
||||
|
||||
#: src/components/SearchModal/ManageLists.tsx
|
||||
msgid "Enter valid list location"
|
||||
msgstr "有効なリストの位置を入力してください"
|
||||
msgstr "有効なリストの位置を入力ください"
|
||||
|
||||
#: src/components/SearchModal/ManageTokens.tsx
|
||||
msgid "Enter valid token address"
|
||||
@@ -691,19 +695,19 @@ msgstr "リストのインポートエラー"
|
||||
|
||||
#: src/components/SearchModal/CurrencyList.tsx
|
||||
msgid "Expanded results from inactive Token Lists"
|
||||
msgstr "アクティブでないトークンリストからの拡張検索結果"
|
||||
msgstr "あなたが利用していないトークンリストからの検索結果"
|
||||
|
||||
#: src/components/Settings/index.tsx
|
||||
msgid "Expert mode turns off the confirm transaction prompt and allows high slippage trades that often result in bad rates and lost funds."
|
||||
msgstr "エキスパートモードは取引確認画面をスキップし、不利な価格や資金を失う可能性のある高スリッページ取引を許可します。"
|
||||
msgstr "エキスパートモードは取引確認画面をスキップし、不利な価格や資金を失う可能性のある高スリップページ取引を許可します。"
|
||||
|
||||
#: src/pages/Pool/CTACards.tsx
|
||||
msgid "Explore popular pools on Uniswap Analytics."
|
||||
msgstr "Uniswap分析で人気のプールを探しましょう。"
|
||||
msgstr "Uniswap分析サイトで人気のあるプールを探しましょう。"
|
||||
|
||||
#: src/components/PositionPreview/index.tsx
|
||||
msgid "Fee Tier"
|
||||
msgstr "手数料の段階"
|
||||
msgstr "設定手数料"
|
||||
|
||||
#: src/pages/Vote/VotePage.tsx
|
||||
msgid "For"
|
||||
@@ -711,7 +715,7 @@ msgstr "賛成"
|
||||
|
||||
#: src/pages/MigrateV2/index.tsx
|
||||
msgid "For each pool shown below, click migrate to remove your liquidity from Uniswap V2 and deposit it into Uniswap V3."
|
||||
msgstr "以下の各プールについて「移行」ボタンをクリックして、Uniswap V2から流動性を取り除き、Uniswap V3にデポジットします。"
|
||||
msgstr "以下の各流動性について「移行」ボタンをクリックすると、Uniswap V2から流動性を取り出し、Uniswap V3に移行します。"
|
||||
|
||||
#: src/components/swap/SwapModalHeader.tsx
|
||||
#: src/pages/Swap/index.tsx
|
||||
@@ -727,8 +731,8 @@ msgid "Get support on Discord"
|
||||
msgstr "Discordでサポートを受ける"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Hide closed positions"
|
||||
msgstr "決済したポジションを隠す"
|
||||
msgid "Hide"
|
||||
msgstr "非表示"
|
||||
|
||||
#: src/pages/Swap/index.tsx
|
||||
msgid "High Price Impact"
|
||||
@@ -740,7 +744,7 @@ msgstr "理解しました"
|
||||
|
||||
#: src/components/SearchModal/ImportList.tsx
|
||||
msgid "If you purchase a token from this list, you may not be able to sell it back."
|
||||
msgstr "このリストからトークンを購入すると、トークンを売り戻せなくなる可能性があります。"
|
||||
msgstr "このリストからトークンを購入すると、トークンを売却できなくなる可能性があります。"
|
||||
|
||||
#: src/components/SearchModal/ImportList.tsx
|
||||
#: src/components/SearchModal/ImportRow.tsx
|
||||
@@ -763,7 +767,7 @@ msgstr "V2プールのインポート"
|
||||
|
||||
#: src/components/SearchModal/ImportList.tsx
|
||||
msgid "Import at your own risk"
|
||||
msgstr "自己責任でインポート"
|
||||
msgstr "自己の責任でインポート"
|
||||
|
||||
#: src/components/Badge/RangeBadge.tsx
|
||||
msgid "In range"
|
||||
@@ -783,7 +787,7 @@ msgstr "初期化中..."
|
||||
|
||||
#: src/components/swap/SwapModalHeader.tsx
|
||||
msgid "Input is estimated. You will sell at most <0>{0} {1}</0> or the transaction will revert."
|
||||
msgstr "上記は見積です。最大<0>{0} {1}</0>で売れなければ、取引は差し戻されます。"
|
||||
msgstr "上記は概算です。最大で<0>{0} {1}</0>を売れなければ、取引は差し戻されます。"
|
||||
|
||||
#: src/components/WalletModal/index.tsx
|
||||
msgid "Install Metamask"
|
||||
@@ -807,7 +811,7 @@ msgstr "{0} の残高が足りません"
|
||||
|
||||
#: src/components/Settings/index.tsx
|
||||
msgid "Interface Settings"
|
||||
msgstr "インターフェイス設定"
|
||||
msgstr "インターフェイスの設定"
|
||||
|
||||
#: src/state/mint/hooks.ts
|
||||
#: src/state/mint/v3/hooks.ts
|
||||
@@ -825,11 +829,11 @@ msgstr "無効な価格入力"
|
||||
#: src/pages/AddLiquidity/index.tsx
|
||||
#: src/pages/MigrateV2/MigrateV2Pair.tsx
|
||||
msgid "Invalid range selected. The min price must be lower than the max price."
|
||||
msgstr "設定した価格帯は無効です。最小価格は最大価格より低くしてください。"
|
||||
msgstr "設定した価格範囲が間違っています。最小価格は最大価格より低くしてください。"
|
||||
|
||||
#: src/state/swap/hooks.ts
|
||||
msgid "Invalid recipient"
|
||||
msgstr "受取人が無効です"
|
||||
msgstr "受け取りアドレスが無効です"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Learn"
|
||||
@@ -846,11 +850,11 @@ msgstr "流動性プロバイダー手数料"
|
||||
|
||||
#: src/pages/Pool/v2.tsx
|
||||
msgid "Liquidity provider rewards"
|
||||
msgstr "流動性プロバイダー報酬"
|
||||
msgstr "流動性提供者の報酬"
|
||||
|
||||
#: src/pages/Pool/v2.tsx
|
||||
msgid "Liquidity providers earn a 0.3% fee on all trades proportional to their share of the pool. Fees are added to the pool, accrue in real time and can be claimed by withdrawing your liquidity."
|
||||
msgstr "流動性プロバイダーは、プールのシェアに応じて、すべての取引で0.3%の手数料を取得します。手数料はプールに追加され、リアルタイムで発生します。手数料は流動性を引き出すことで請求できます。"
|
||||
msgstr "流動性提供者はこのペアのすべての取引で発生する0.3%の手数料のうち、プールのシェアに応じた報酬を獲得します。 報酬はリアルタイムにプールに追加され、反映されます。報酬は流動性を引き出すことで請求できます。"
|
||||
|
||||
#: src/components/SearchModal/Manage.tsx
|
||||
msgid "Lists"
|
||||
@@ -894,7 +898,7 @@ msgstr "トークンリストを管理"
|
||||
|
||||
#: src/pages/PoolFinder/index.tsx
|
||||
msgid "Manage this pool."
|
||||
msgstr "このプールを管理します。"
|
||||
msgstr "プールを管理"
|
||||
|
||||
#: src/pages/RemoveLiquidity/V3.tsx
|
||||
msgid "Max"
|
||||
@@ -911,11 +915,11 @@ msgstr "最大価格"
|
||||
|
||||
#: src/components/PositionListItem/index.tsx
|
||||
msgid "Max:"
|
||||
msgstr "最大:"
|
||||
msgstr "最大:"
|
||||
|
||||
#: src/components/swap/AdvancedSwapDetails.tsx
|
||||
msgid "Maximum sent"
|
||||
msgstr "最大額送信済"
|
||||
msgstr "最大売却数量"
|
||||
|
||||
#: src/components/PositionCard/Sushi.tsx
|
||||
#: src/components/PositionCard/V2.tsx
|
||||
@@ -965,7 +969,7 @@ msgstr "最小:"
|
||||
|
||||
#: src/components/swap/AdvancedSwapDetails.tsx
|
||||
msgid "Minimum received"
|
||||
msgstr "最小額を受取済"
|
||||
msgstr "最小購入数量"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "More"
|
||||
@@ -1010,7 +1014,7 @@ msgstr "ON"
|
||||
|
||||
#: src/components/Settings/index.tsx
|
||||
msgid "ONLY USE THIS MODE IF YOU KNOW WHAT YOU ARE DOING."
|
||||
msgstr "このモードは、自分が何をしているかわかっている場合にのみお使いください。"
|
||||
msgstr "このモードは、あなたが何をしているかを理解している場合にのみご使用ください。"
|
||||
|
||||
#: src/components/Toggle/index.tsx
|
||||
msgid "Off"
|
||||
@@ -1022,7 +1026,7 @@ msgstr "ON"
|
||||
|
||||
#: src/pages/AddLiquidityV2/index.tsx
|
||||
msgid "Once you are happy with the rate click supply to review."
|
||||
msgstr "レートに納得しているのであれば、供給をクリックしてレビューします。"
|
||||
msgstr "価格に問題がなければ、「追加」をクリックして確認します。"
|
||||
|
||||
#: src/pages/Vote/VotePage.tsx
|
||||
msgid "Only UNI votes that were self delegated or delegated to another address before block {0} are eligible for voting."
|
||||
@@ -1039,11 +1043,11 @@ msgstr "範囲外"
|
||||
#: src/pages/AddLiquidityV2/index.tsx
|
||||
#: src/pages/RemoveLiquidity/index.tsx
|
||||
msgid "Output is estimated. If the price changes by more than {0}% your transaction will revert."
|
||||
msgstr "取引結果が見積もられました。価格が {0}%以上変化した場合、取引は差し戻されます。"
|
||||
msgstr "取引結果は概算です。価格が {0}%以上変化した場合、取引は差し戻される見込みです。"
|
||||
|
||||
#: src/components/swap/SwapModalHeader.tsx
|
||||
msgid "Output is estimated. You will receive at least <0>{0} {1}</0> or the transaction will revert."
|
||||
msgstr "取引結果は概算です。少なくとも<0>{0} {1}</0>は受け取るか、取引は差し戻されます。"
|
||||
msgstr "取引結果は概算です。<0>{0} {1}</0> 以上を買えない場合は、取引は差し戻されます。"
|
||||
|
||||
#: src/components/swap/SwapModalHeader.tsx
|
||||
msgid "Output will be sent to <0>{0}</0>"
|
||||
@@ -1096,7 +1100,7 @@ msgstr "報酬プール内のプールトークン:"
|
||||
#: src/pages/RemoveLiquidity/V3.tsx
|
||||
#: src/pages/RemoveLiquidity/V3.tsx
|
||||
msgid "Pooled {0}:"
|
||||
msgstr "プール済 {0}:"
|
||||
msgstr "プールしている {0}:"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Pools Overview"
|
||||
@@ -1121,12 +1125,12 @@ msgstr "価格の影響が大きすぎます"
|
||||
|
||||
#: src/components/swap/SwapModalHeader.tsx
|
||||
msgid "Price Updated"
|
||||
msgstr "価格更新済"
|
||||
msgstr "価格が更新されています"
|
||||
|
||||
#: src/components/PositionList/index.tsx
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
msgid "Price range"
|
||||
msgstr "価格帯"
|
||||
msgstr "価格範囲"
|
||||
|
||||
#: src/pages/RemoveLiquidity/index.tsx
|
||||
msgid "Price:"
|
||||
@@ -1225,7 +1229,7 @@ msgstr "取引ルート"
|
||||
|
||||
#: src/components/SearchModal/CurrencySearch.tsx
|
||||
msgid "Search name or paste address"
|
||||
msgstr "名前を検索またはアドレスを貼り付けてください"
|
||||
msgstr "トークン名またはアドレス"
|
||||
|
||||
#: src/components/FeeSelector/index.tsx
|
||||
msgid "Select Pool"
|
||||
@@ -1233,7 +1237,7 @@ msgstr "プールを選択"
|
||||
|
||||
#: src/components/FeeSelector/index.tsx
|
||||
msgid "Select a pool type based on your preferred liquidity provider fee."
|
||||
msgstr "希望する流動性プロバイダ手数料に基づいてプールタイプをお選びください。"
|
||||
msgstr "希望する手数料率のプールをお選びください。"
|
||||
|
||||
#: src/components/CurrencyInputPanel/index.tsx
|
||||
#: src/components/SearchModal/CurrencySearch.tsx
|
||||
@@ -1253,7 +1257,7 @@ msgstr "ペアを選択"
|
||||
|
||||
#: src/pages/AddLiquidity/index.tsx
|
||||
msgid "Selected Range"
|
||||
msgstr "選択した価格帯"
|
||||
msgstr "設定した価格範囲"
|
||||
|
||||
#: src/pages/Vote/index.tsx
|
||||
msgid "Self"
|
||||
@@ -1266,7 +1270,7 @@ msgstr "自己委任する"
|
||||
#: src/pages/AddLiquidity/index.tsx
|
||||
#: src/pages/MigrateV2/MigrateV2Pair.tsx
|
||||
msgid "Set Price Range"
|
||||
msgstr "価格帯を設定"
|
||||
msgstr "価格範囲を設定"
|
||||
|
||||
#: src/pages/AddLiquidity/index.tsx
|
||||
msgid "Set Starting Price"
|
||||
@@ -1280,6 +1284,10 @@ msgstr "プールのシェア"
|
||||
msgid "Share of Pool:"
|
||||
msgstr "プールのシェア:"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Show"
|
||||
msgstr "表示"
|
||||
|
||||
#: src/components/AccountDetails/index.tsx
|
||||
msgid "Show Portis"
|
||||
msgstr "Portisを表示"
|
||||
@@ -1328,11 +1336,11 @@ msgstr "スワップ"
|
||||
#: src/pages/Swap/index.tsx
|
||||
#: src/pages/Swap/index.tsx
|
||||
msgid "Swap Anyway"
|
||||
msgstr "とにかくスワップする"
|
||||
msgstr "問題発生の可能性があるが、スワップする"
|
||||
|
||||
#: src/components/swap/ConfirmSwapModal.tsx
|
||||
msgid "Swapping {0} {1} for {2} {3}"
|
||||
msgstr "{0} {1} を {2} {3} とスワップ中"
|
||||
msgstr "{0} {1} を {2} {3} にスワップ中"
|
||||
|
||||
#: src/components/Popups/ClaimPopup.tsx
|
||||
msgid "Thanks for being part of the Uniswap community <0/>"
|
||||
@@ -1340,19 +1348,19 @@ msgstr "Uniswapコミュニティにご参加いただきありがとうござ
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "The Uniswap invariant x*y=k was not satisfied by the swap. This usually means one of the tokens you are swapping incorporates custom behavior on transfer."
|
||||
msgstr "Uniswap不変式 x * y = kはスワップで満たされませんでした。これは通常、スワップするトークンの1つが送信時のカスタム動作を組み込んでいることを意味します。"
|
||||
msgstr "Uniswap不変式 x * y = kはスワップで満たされませんでした。これは通常、スワップするトークンの1つが転送時のカスタム動作を組み込んでいることを意味します。"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "The input token cannot be transferred. There may be an issue with the input token."
|
||||
msgstr "入力したトークンは送信できません。入力したトークンに問題がある可能性があります。"
|
||||
msgstr "売るトークンが転送できません。売るトークンに問題がある可能性があります。"
|
||||
|
||||
#: src/components/CurrencyInputPanel/index.tsx
|
||||
msgid "The market price is outside your specified price range. Single-asset deposit only."
|
||||
msgstr "市場価格があなたの設定価格帯から外れています。単一トークンのみデポジットできます。"
|
||||
msgstr "市場価格が設定した価格範囲から外れています。単一トークンのみ預け入れできます。"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "The output token cannot be transferred. There may be an issue with the output token."
|
||||
msgstr "買うトークンは送信できません。買うトークンに問題がある可能性があります。"
|
||||
msgstr "買うトークンが転送できません。買うトークンに問題がある可能性があります。"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "The output token cannot be transferred. There may be an issue with the output token. Note: fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
@@ -1360,19 +1368,19 @@ msgstr "購入するトークンは転送できません。購入するトーク
|
||||
|
||||
#: src/components/Badge/RangeBadge.tsx
|
||||
msgid "The price of this pool is outside of your selected range. Your position is not currently earning fees."
|
||||
msgstr "現在の価格はあなたの設定価格帯から外れています。そのため、現時点であなたのポジションは報酬を獲得しません。"
|
||||
msgstr "現在の価格は設定した価格範囲から外れています。そのため、現時点であなたのポジションは報酬を獲得しません。"
|
||||
|
||||
#: src/components/Badge/RangeBadge.tsx
|
||||
msgid "The price of this pool is within your selected range. Your position is currently earning fees."
|
||||
msgstr "このプールの価格はあなたの設定価格帯に入っています。現在あなたのポジションは手数料を獲得しています。"
|
||||
msgstr "現在の価格は設定した価格範囲に入っています。そのため、あなたの流動性は現在、報酬を獲得しています。"
|
||||
|
||||
#: src/pages/AddLiquidityV2/index.tsx
|
||||
msgid "The ratio of tokens you add will set the price of this pool."
|
||||
msgstr "追加するトークンの比率によって、このプールの価格が決まります。"
|
||||
msgstr "追加するトークンの比率によって、プールの価格が決まります。"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "The transaction could not be sent because the deadline has passed. Please check that your transaction deadline is not too low."
|
||||
msgstr "期限が過ぎたため、取引を送信できませんでした。あなたの取引期限が短くないことをご確認ください。"
|
||||
msgstr "期限が過ぎたため、取引を送信できませんでした。期限が短すぎないかご確認ください。"
|
||||
|
||||
#: src/components/SearchModal/CommonBases.tsx
|
||||
msgid "These tokens are commonly paired with other tokens."
|
||||
@@ -1384,7 +1392,7 @@ msgstr "このトークンはご利用中のトークンリストに存在しま
|
||||
|
||||
#: src/pages/MigrateV2/MigrateV2Pair.tsx
|
||||
msgid "This tool will safely migrate your {0} liquidity to V3. The process is completely trustless thanks to the"
|
||||
msgstr "本ツールで {0} の流動性をV3に安全に移行します。このプロセスは完全に管理者が存在しません"
|
||||
msgstr "本ツールで {0} の流動性をV3に安全に移行します。移行コントラクトは"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "This transaction will not succeed due to price movement. Try increasing your slippage tolerance. Note: fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
@@ -1392,11 +1400,11 @@ msgstr "価格変動により、この取引は成功しません。スリッペ
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "This transaction will not succeed either due to price movement or fee on transfer. Try increasing your slippage tolerance."
|
||||
msgstr "この取引は、価格変動または送信手数料のいずれかの理由により成功しません。スリッページの許容範囲を広げてみてください。"
|
||||
msgstr "この取引は、価格変動または転送時に手数料が発生するため、成功しません。スリッページの許容範囲を広げてみてください。"
|
||||
|
||||
#: src/components/SearchModal/ManageTokens.tsx
|
||||
msgid "Tip: Custom tokens are stored locally in your browser"
|
||||
msgstr "ヒント: カスタムトークンはブラウザ内にローカル保存されます"
|
||||
msgstr "ヒント:カスタムトークンの設定はブラウザ内のローカルに保存されます"
|
||||
|
||||
#: src/components/swap/SwapModalHeader.tsx
|
||||
#: src/pages/Swap/index.tsx
|
||||
@@ -1409,7 +1417,7 @@ msgstr "買うトークン(少なくとも)"
|
||||
|
||||
#: src/components/Settings/index.tsx
|
||||
msgid "Toggle Expert Mode"
|
||||
msgstr "エキスパートモードに切り替え"
|
||||
msgstr "エキスパートモード"
|
||||
|
||||
#: src/components/SearchModal/Manage.tsx
|
||||
msgid "Tokens"
|
||||
@@ -1429,11 +1437,11 @@ msgstr "総供給"
|
||||
|
||||
#: src/components/earn/PoolCard.tsx
|
||||
msgid "Total deposited"
|
||||
msgstr "合計デポジット額"
|
||||
msgstr "合計預入数量"
|
||||
|
||||
#: src/pages/Earn/Manage.tsx
|
||||
msgid "Total deposits"
|
||||
msgstr "合計デポジット"
|
||||
msgstr "合計預入額"
|
||||
|
||||
#: src/components/Settings/index.tsx
|
||||
msgid "Transaction Settings"
|
||||
@@ -1462,7 +1470,7 @@ msgstr "エキスパートモードをオンにする"
|
||||
|
||||
#: src/components/Popups/ClaimPopup.tsx
|
||||
msgid "UNI has arrived"
|
||||
msgstr "UNI到着"
|
||||
msgstr "UNIの登場"
|
||||
|
||||
#: src/components/Header/UniBalanceContent.tsx
|
||||
msgid "UNI in circulation:"
|
||||
@@ -1474,11 +1482,11 @@ msgstr "UNIの価格:"
|
||||
|
||||
#: src/pages/Vote/index.tsx
|
||||
msgid "UNI tokens represent voting shares in Uniswap governance. You can vote on each proposal yourself or delegate your votes to a third party."
|
||||
msgstr "UNIトークンはUniswapガバナンスにおける議決権を表します。各提案に対して自分で投票するか、もしくは第三者に投票を委任できます。"
|
||||
msgstr "UNIトークンはUniswapガバナンスにおける投票権を表します。各提案に対して自分で投票するか、もしくは第三者に投票を委任することができます。"
|
||||
|
||||
#: src/pages/RemoveLiquidity/index.tsx
|
||||
msgid "UNI {0}/{1} Burned"
|
||||
msgstr "UNI {0}/{1}消費済"
|
||||
msgstr "削除される UNI {0}/{1}"
|
||||
|
||||
#: src/pages/Earn/Manage.tsx
|
||||
msgid "UNI-V2 LP tokens are required. Once you've added liquidity to the {0}-{1} pool you can stake your liquidity tokens on this page."
|
||||
@@ -1495,11 +1503,11 @@ msgstr "未請求のUNI"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
msgid "Unclaimed fees"
|
||||
msgstr "未請求の手数料"
|
||||
msgstr "未請求の報酬"
|
||||
|
||||
#: src/components/Header/UniBalanceContent.tsx
|
||||
msgid "Unclaimed:"
|
||||
msgstr "未請求:"
|
||||
msgstr "未請求:"
|
||||
|
||||
#: src/pages/Vote/index.tsx
|
||||
msgid "Uniswap Governance"
|
||||
@@ -1511,7 +1519,7 @@ msgstr "Uniswap V3登場!"
|
||||
|
||||
#: src/components/SwitchLocaleLink/index.tsx
|
||||
msgid "Uniswap available in: <0>{0}</0>"
|
||||
msgstr "Uniswapが利用可能: <0>{0}</0>"
|
||||
msgstr "利用可能言語: <0>{0}</0>"
|
||||
|
||||
#: src/pages/Earn/index.tsx
|
||||
msgid "Uniswap liquidity mining"
|
||||
@@ -1519,7 +1527,7 @@ msgstr "Uniswap流動性マイニング"
|
||||
|
||||
#: src/pages/MigrateV2/MigrateV2Pair.tsx
|
||||
msgid "Uniswap migration contract↗"
|
||||
msgstr "Uniswap移行コントラクト↗"
|
||||
msgstr "こちら↗"
|
||||
|
||||
#: src/components/SearchModal/ImportToken.tsx
|
||||
msgid "Unknown Source"
|
||||
@@ -1546,7 +1554,7 @@ msgstr "投票のロックを解除中"
|
||||
#: src/pages/AddLiquidityV2/index.tsx
|
||||
#: src/pages/Swap/index.tsx
|
||||
msgid "Unsupported Asset"
|
||||
msgstr "サポートされていないアセット"
|
||||
msgstr "サポートされていないトークン"
|
||||
|
||||
#: src/components/swap/UnsupportedCurrencyFooter.tsx
|
||||
msgid "Unsupported Assets"
|
||||
@@ -1579,23 +1587,23 @@ msgstr "V3"
|
||||
#: src/pages/MigrateV2/MigrateV2Pair.tsx
|
||||
#: src/pages/MigrateV2/MigrateV2Pair.tsx
|
||||
msgid "V3 {0} Price:"
|
||||
msgstr "V3 {0} 価格:"
|
||||
msgstr "v3 {0} 価格:"
|
||||
|
||||
#: src/components/Header/UniBalanceContent.tsx
|
||||
msgid "View UNI Analytics"
|
||||
msgstr "UNI アナリティクスを見る"
|
||||
msgstr "UNI 分析サイトを表示"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "View V2 Liquidity"
|
||||
msgstr "V2の流動性を見る"
|
||||
msgstr "V2の流動性を表示"
|
||||
|
||||
#: src/components/PositionCard/index.tsx
|
||||
msgid "View accrued fees and analytics<0>↗</0>"
|
||||
msgstr "発生した手数料とアナリティクスを見る<0>↗</0>"
|
||||
msgstr "発生した報酬と分析を見る<0>↗</0>"
|
||||
|
||||
#: src/components/SearchModal/ManageLists.tsx
|
||||
msgid "View list"
|
||||
msgstr "リストを見る"
|
||||
msgstr "リストを表示"
|
||||
|
||||
#: src/components/AccountDetails/index.tsx
|
||||
#: src/components/AccountDetails/index.tsx
|
||||
@@ -1608,7 +1616,7 @@ msgstr "エクスプローラーで見る"
|
||||
#: src/components/claim/ClaimModal.tsx
|
||||
#: src/components/vote/VoteModal.tsx
|
||||
msgid "View transaction on Explorer"
|
||||
msgstr "エクスプローラーで取引を見る"
|
||||
msgstr "エクスプローラーで取引を表示する"
|
||||
|
||||
#: src/components/Header/index.tsx
|
||||
msgid "Vote"
|
||||
@@ -1650,15 +1658,15 @@ msgstr "週次の報酬"
|
||||
|
||||
#: src/components/claim/AddressClaimModal.tsx
|
||||
msgid "Welcome to team Unicorn :)"
|
||||
msgstr "チーム ユニコーンへようこそ:)"
|
||||
msgstr "チーム ユニコーンへようこそ"
|
||||
|
||||
#: src/components/earn/ClaimRewardModal.tsx
|
||||
msgid "When you claim without withdrawing your liquidity remains in the mining pool."
|
||||
msgstr "流動性を引き出さずに請求すると、流動性はマイニングプールに残ります。"
|
||||
msgstr "流動性を引き出すことなく、請求すると、流動性はマイニングプールに残ります。"
|
||||
|
||||
#: src/pages/Earn/Manage.tsx
|
||||
msgid "When you withdraw, the contract will automagically claim UNI on your behalf!"
|
||||
msgstr "引き出すと、コントラクトはあなたに代わって自動でUNIを請求します!"
|
||||
msgstr "引き出すと、コントラクトはあなたに代わって自動的にUNIを請求します。"
|
||||
|
||||
#: src/components/earn/UnstakingModal.tsx
|
||||
msgid "When you withdraw, your UNI is claimed and your liquidity is removed from the mining pool."
|
||||
@@ -1676,7 +1684,7 @@ msgstr "引き出しと請求"
|
||||
#: src/components/earn/UnstakingModal.tsx
|
||||
#: src/components/earn/UnstakingModal.tsx
|
||||
msgid "Withdraw deposited liquidity"
|
||||
msgstr "デポジットした流動性を引き出す"
|
||||
msgstr "預け入れた流動性を引き出す"
|
||||
|
||||
#: src/components/earn/UnstakingModal.tsx
|
||||
msgid "Withdrawing {0} UNI-V2"
|
||||
@@ -1684,7 +1692,7 @@ msgstr "{0} UNI-V2を引き出し中"
|
||||
|
||||
#: src/components/earn/UnstakingModal.tsx
|
||||
msgid "Withdrew UNI-V2!"
|
||||
msgstr "UNI-V2を引き出しました!"
|
||||
msgstr "UNI-V2を引き出しました"
|
||||
|
||||
#: src/pages/Swap/index.tsx
|
||||
msgid "Wrap"
|
||||
@@ -1701,7 +1709,7 @@ msgstr "プールを作成しています"
|
||||
|
||||
#: src/pages/MigrateV2/MigrateV2Pair.tsx
|
||||
msgid "You are the first liquidity provider for this Uniswap V3 pool. Your liquidity will migrate at the current {0} price."
|
||||
msgstr "あなたはUniswap V3プールの最初の流動性プロバイダです。あなたの流動性は現在 {0} での価格で移行されます。"
|
||||
msgstr "あなたはUniswap V3プールの最初の流動性提供者です。流動性は現在の {0} での価格で移行されます。"
|
||||
|
||||
#: src/pages/AddLiquidityV2/index.tsx
|
||||
msgid "You are the first liquidity provider."
|
||||
@@ -1729,11 +1737,11 @@ msgstr "{0}を使用するには、Uniswapスマートコントラクトに許
|
||||
|
||||
#: src/pages/MigrateV2/MigrateV2Pair.tsx
|
||||
msgid "You should only deposit liquidity into Uniswap V3 at a price you believe is correct. <0/>If the price seems incorrect, you can either make a swap to move the price or wait for someone else to do so."
|
||||
msgstr "Uniswap V3への流動性のデポジットは、正しいと思われる価格でのみ行ってください。<0/>もし価格が正しくないと思われる場合は、スワップをして価格を動かすか、他の人がそうするのを待つことができます。"
|
||||
msgstr "Uniswap V3への流動性の預け入れは、正しいと思われる価格でのみ行ってください。<0/>もし価格が正しくないと思われる場合は、スワップをして価格を動かすか、他の人が同様のことをするのを待つことができます。"
|
||||
|
||||
#: src/pages/RemoveLiquidity/V3.tsx
|
||||
msgid "You will also collect fees earned from this position."
|
||||
msgstr "また、このポジションから得られた手数料も受け取ります。"
|
||||
msgstr "また、このポジションから得られた報酬も受け取ります。"
|
||||
|
||||
#: src/pages/AddLiquidityV2/index.tsx
|
||||
#: src/pages/RemoveLiquidity/index.tsx
|
||||
@@ -1754,11 +1762,11 @@ msgstr "V3の流動性ポジションはこちらに表示されます。"
|
||||
|
||||
#: src/pages/Earn/Manage.tsx
|
||||
msgid "Your liquidity deposits"
|
||||
msgstr "流動性のデポジット"
|
||||
msgstr "預け入れた流動性"
|
||||
|
||||
#: src/pages/AddLiquidity/index.tsx
|
||||
msgid "Your liquidity will only earn fees when the market price of the pair is within your range. <0>Need help picking a range?</0>"
|
||||
msgstr "あなたの流動性は、ペアの市場価格があなたの範囲内にある場合にのみ手数料を得ます。<0>価格帯のヘルプが必要ですか?</0>"
|
||||
msgstr "流動性は、設定する価格範囲にペアの市場価格が入っている場合のみ報酬を獲得します。 価格帯の設定ガイドは<0>こちら</0>"
|
||||
|
||||
#: src/components/PositionCard/V2.tsx
|
||||
#: src/components/PositionCard/index.tsx
|
||||
@@ -1772,7 +1780,7 @@ msgstr "ポジション"
|
||||
|
||||
#: src/components/Badge/RangeBadge.tsx
|
||||
msgid "Your position has 0 liquidity, and is not earning fees."
|
||||
msgstr "あなたのポジションには流動性がないため、手数料を得られません。"
|
||||
msgstr "あなたのポジションには流動性がないため、報酬を得られません。"
|
||||
|
||||
#: src/components/PositionPreview/index.tsx
|
||||
#: src/components/PositionPreview/index.tsx
|
||||
@@ -1787,7 +1795,7 @@ msgstr "この価格であなたのポジションは100%の {0} になります
|
||||
#: src/pages/AddLiquidity/index.tsx
|
||||
#: src/pages/MigrateV2/MigrateV2Pair.tsx
|
||||
msgid "Your position will not earn fees or be used in trades until the market price moves into your range."
|
||||
msgstr "市場価格が設定した価格帯に入るまで、あなたのポジションは手数料を得られず、取引にも使われません。"
|
||||
msgstr "市場価格が設定した価格範囲に入るまで、あなたのポジションは報酬を得られず、取引にも使われません。"
|
||||
|
||||
#: src/components/PositionList/index.tsx
|
||||
#: src/components/PositionList/index.tsx
|
||||
@@ -1796,12 +1804,12 @@ msgstr "ポジション"
|
||||
|
||||
#: src/components/earn/PoolCard.tsx
|
||||
msgid "Your rate"
|
||||
msgstr "あなたのレート"
|
||||
msgstr "あなたの価格"
|
||||
|
||||
#: src/components/PositionCard/V2.tsx
|
||||
#: src/components/PositionCard/index.tsx
|
||||
msgid "Your total pool tokens:"
|
||||
msgstr "合計プールトークン:"
|
||||
msgstr "流動性トークン合計:"
|
||||
|
||||
#: src/pages/MigrateV2/MigrateV2Pair.tsx
|
||||
msgid "Your transaction cost will be much higher as it includes the gas to create the pool."
|
||||
@@ -1845,7 +1853,7 @@ msgstr "靴下の絵文字があります"
|
||||
|
||||
#: src/components/SearchModal/ManageLists.tsx
|
||||
msgid "https:// or ipfs:// or ENS name"
|
||||
msgstr "https://またはipfs://またはENS名"
|
||||
msgstr "https://、ipfs://またはENS"
|
||||
|
||||
#: src/components/TransactionSettings/index.tsx
|
||||
msgid "minutes"
|
||||
@@ -1861,7 +1869,7 @@ msgstr "{0} トークンリストから"
|
||||
|
||||
#: src/components/SearchModal/ImportToken.tsx
|
||||
msgid "{0, plural, one {Import token} other {Import tokens}}"
|
||||
msgstr "{0, plural, other {Import tokens}}"
|
||||
msgstr "{0, plural, one {トークンをインポート} other {トークンをインポート}}"
|
||||
|
||||
#: src/components/PositionCard/index.tsx
|
||||
#: src/pages/Vote/VotePage.tsx
|
||||
@@ -1872,7 +1880,7 @@ msgstr "{0} %"
|
||||
#: src/components/PositionListItem/index.tsx
|
||||
#: src/components/PositionListItem/index.tsx
|
||||
msgid "{0} <0/> per <1/>"
|
||||
msgstr "{0} <0/>あたり<1/>"
|
||||
msgstr "{0} <0/> / <1/>"
|
||||
|
||||
#: src/components/SearchModal/ManageTokens.tsx
|
||||
msgid "{0} Custom Tokens"
|
||||
@@ -1881,7 +1889,7 @@ msgstr "{0} カスタムトークン"
|
||||
#: src/pages/AddLiquidityV2/ConfirmAddModalBottom.tsx
|
||||
#: src/pages/AddLiquidityV2/ConfirmAddModalBottom.tsx
|
||||
msgid "{0} Deposited"
|
||||
msgstr "{0}デポジット済"
|
||||
msgstr "預け入れる {0}"
|
||||
|
||||
#: src/components/Header/index.tsx
|
||||
msgid "{0} ETH"
|
||||
@@ -1892,7 +1900,7 @@ msgstr "{0} ETH"
|
||||
#: src/pages/RemoveLiquidity/V3.tsx
|
||||
#: src/pages/RemoveLiquidity/V3.tsx
|
||||
msgid "{0} Fees Earned:"
|
||||
msgstr "{0} の手数料を獲得:"
|
||||
msgstr "{0} の獲得した報酬:"
|
||||
|
||||
#: src/components/Web3Status/index.tsx
|
||||
msgid "{0} Pending"
|
||||
@@ -1979,7 +1987,7 @@ msgstr "{0}/{1} LP NFT"
|
||||
|
||||
#: src/pages/MigrateV2/MigrateV2Pair.tsx
|
||||
msgid "{0}/{1} LP Tokens"
|
||||
msgstr "{0}/{1} LPトークン"
|
||||
msgstr "{0}/{1} 流動性トークン"
|
||||
|
||||
#: src/components/claim/ClaimModal.tsx
|
||||
msgid "{SOCKS_AMOUNT} UNI"
|
||||
@@ -2003,5 +2011,5 @@ msgstr "~$ <0/>"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
msgid "← Back to Pools Overview"
|
||||
msgstr "←プール概要に戻る"
|
||||
msgstr "プール概要に戻る"
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"POT-Creation-Date: 2021-06-16 02:37+0000\n"
|
||||
"POT-Creation-Date: 2021-06-21 15:11+0000\n"
|
||||
"Mime-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"X-Crowdin-File-ID: 4\n"
|
||||
"Project-Id-Version: uniswap-interface\n"
|
||||
"Language-Team: Korean\n"
|
||||
"PO-Revision-Date: 2021-06-16 03:05\n"
|
||||
"PO-Revision-Date: 2021-06-21 16:05\n"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
@@ -223,8 +223,8 @@ msgid "Amount"
|
||||
msgstr "금액"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "이 스왑을 실행하는 중에 오류가 발생했습니다. 슬리피지 허용치를 높여야 할 수도 있습니다. 그래도 되지 않으면 거래중인 토큰과 호환되지 않을 수 있습니다. 이체 및 리베이스 토큰에 대한 수수료가 Uniswap V3와 호환되지 않을 수도 있음에 유의하십시오."
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note: fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "이 스왑을 실행하는 중에 오류가 발생했습니다. 미끄러짐 허용치를 높여야 할 수도 있습니다. 그래도 작동하지 않으면 거래중인 토큰과 호환되지 않을 수 있습니다. 참고 : 전송 수수료 및 리베이스 토큰은 Uniswap V3와 호환되지 않습니다."
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Analytics"
|
||||
@@ -400,6 +400,10 @@ msgstr "닫기"
|
||||
msgid "Closed"
|
||||
msgstr "닫힘"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Closed positions"
|
||||
msgstr "폐쇄 포지션"
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Code"
|
||||
msgstr "코드"
|
||||
@@ -727,8 +731,8 @@ msgid "Get support on Discord"
|
||||
msgstr "Discord에서 지원 받기"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Hide closed positions"
|
||||
msgstr "마감된 포지션 숨기기"
|
||||
msgid "Hide"
|
||||
msgstr "숨는 장소"
|
||||
|
||||
#: src/pages/Swap/index.tsx
|
||||
msgid "High Price Impact"
|
||||
@@ -1280,6 +1284,10 @@ msgstr "풀 쉐어"
|
||||
msgid "Share of Pool:"
|
||||
msgstr "풀 쉐어:"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Show"
|
||||
msgstr "보여 주다"
|
||||
|
||||
#: src/components/AccountDetails/index.tsx
|
||||
msgid "Show Portis"
|
||||
msgstr "Portis 표시"
|
||||
@@ -1336,7 +1344,7 @@ msgstr "{0} {1} 을 {2} {3}(으)로 스왑"
|
||||
|
||||
#: src/components/Popups/ClaimPopup.tsx
|
||||
msgid "Thanks for being part of the Uniswap community <0/>"
|
||||
msgstr "Uniswap 커뮤니티에 참여해 주셔서 감사합니다. <0 />"
|
||||
msgstr "Uniswap 커뮤니티에 참여해 주셔서 감사합니다. <0/>"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "The Uniswap invariant x*y=k was not satisfied by the swap. This usually means one of the tokens you are swapping incorporates custom behavior on transfer."
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"POT-Creation-Date: 2021-06-16 02:37+0000\n"
|
||||
"POT-Creation-Date: 2021-06-21 15:11+0000\n"
|
||||
"Mime-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"X-Crowdin-File-ID: 4\n"
|
||||
"Project-Id-Version: uniswap-interface\n"
|
||||
"Language-Team: Dutch\n"
|
||||
"PO-Revision-Date: 2021-06-16 03:05\n"
|
||||
"PO-Revision-Date: 2021-06-21 16:05\n"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
@@ -223,8 +223,8 @@ msgid "Amount"
|
||||
msgstr "Bedrag"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Er is een fout opgetreden bij het uitvoeren van deze wissel. U dient mogelijk uw slippage-tolerantie te vergroten. Als dat niet werkt, is er mogelijk een incompatibiliteit met het token dat u verhandelt. Let op: kosten voor transfer- en rebase-tokens zijn niet compatibel met Uniswap V3."
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note: fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Er is een fout opgetreden bij het uitvoeren van deze swap. Mogelijk moet u uw sliptolerantie verhogen. Als dat niet werkt, is er mogelijk een incompatibiliteit met het token dat u verhandelt. Let op: kosten voor overdracht en rebase tokens zijn niet compatibel met Uniswap V3."
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Analytics"
|
||||
@@ -400,6 +400,10 @@ msgstr "Sluiten"
|
||||
msgid "Closed"
|
||||
msgstr "Gesloten"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Closed positions"
|
||||
msgstr "Gesloten posities"
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Code"
|
||||
msgstr "Code"
|
||||
@@ -727,8 +731,8 @@ msgid "Get support on Discord"
|
||||
msgstr "Ontvang ondersteuning op Discord"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Hide closed positions"
|
||||
msgstr "Verberg gesloten posities"
|
||||
msgid "Hide"
|
||||
msgstr "Zich verstoppen"
|
||||
|
||||
#: src/pages/Swap/index.tsx
|
||||
msgid "High Price Impact"
|
||||
@@ -1280,6 +1284,10 @@ msgstr "Aandeel in pool"
|
||||
msgid "Share of Pool:"
|
||||
msgstr "Aandeel in pool:"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Show"
|
||||
msgstr "Tonen"
|
||||
|
||||
#: src/components/AccountDetails/index.tsx
|
||||
msgid "Show Portis"
|
||||
msgstr "Toon Portis"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"POT-Creation-Date: 2021-06-16 02:37+0000\n"
|
||||
"POT-Creation-Date: 2021-06-21 15:11+0000\n"
|
||||
"Mime-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"X-Crowdin-File-ID: 4\n"
|
||||
"Project-Id-Version: uniswap-interface\n"
|
||||
"Language-Team: Norwegian\n"
|
||||
"PO-Revision-Date: 2021-06-16 03:05\n"
|
||||
"PO-Revision-Date: 2021-06-21 16:05\n"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
@@ -223,8 +223,8 @@ msgid "Amount"
|
||||
msgstr "Beløp"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Det oppstod en feil under forsøk på å utføre denne byttingen. Det kan hende du må øke glidetoleransen. Hvis det ikke fungerer, kan det være en inkompatibilitet med symbolet du handler. Noteringsgebyr ved overføring og rebase-polletter er inkompatibelt med Uniswap V3."
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note: fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Det oppstod en feil under forsøket på å utføre dette byttet. Det kan hende du må øke glidetoleransen. Hvis det ikke fungerer, kan det være en inkompatibilitet med symbolet du handler. Merk: gebyr ved overføring og rebase-tokens er inkompatibelt med Uniswap V3."
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Analytics"
|
||||
@@ -400,6 +400,10 @@ msgstr "Lukk"
|
||||
msgid "Closed"
|
||||
msgstr "Lukket"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Closed positions"
|
||||
msgstr "Stengte stillinger"
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Code"
|
||||
msgstr "Kode"
|
||||
@@ -727,8 +731,8 @@ msgid "Get support on Discord"
|
||||
msgstr "Få støtte på Discord"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Hide closed positions"
|
||||
msgstr "Skjul avsluttede posisjoner"
|
||||
msgid "Hide"
|
||||
msgstr "Gjemme seg"
|
||||
|
||||
#: src/pages/Swap/index.tsx
|
||||
msgid "High Price Impact"
|
||||
@@ -1280,6 +1284,10 @@ msgstr "Andel av pott"
|
||||
msgid "Share of Pool:"
|
||||
msgstr "Deling av pott:"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Show"
|
||||
msgstr "Vise fram"
|
||||
|
||||
#: src/components/AccountDetails/index.tsx
|
||||
msgid "Show Portis"
|
||||
msgstr "Vis portis"
|
||||
@@ -1336,7 +1344,7 @@ msgstr "Bytte {0} {1} mot {2} {3}"
|
||||
|
||||
#: src/components/Popups/ClaimPopup.tsx
|
||||
msgid "Thanks for being part of the Uniswap community <0/>"
|
||||
msgstr "Takk for at du er en del av Uniswap-fellesskapet <0 />"
|
||||
msgstr "Takk for at du er en del av Uniswap-fellesskapet <0/>"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "The Uniswap invariant x*y=k was not satisfied by the swap. This usually means one of the tokens you are swapping incorporates custom behavior on transfer."
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"POT-Creation-Date: 2021-06-16 02:37+0000\n"
|
||||
"POT-Creation-Date: 2021-06-21 15:11+0000\n"
|
||||
"Mime-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"X-Crowdin-File-ID: 4\n"
|
||||
"Project-Id-Version: uniswap-interface\n"
|
||||
"Language-Team: Polish\n"
|
||||
"PO-Revision-Date: 2021-06-16 03:05\n"
|
||||
"PO-Revision-Date: 2021-06-21 16:05\n"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
@@ -223,8 +223,8 @@ msgid "Amount"
|
||||
msgstr "Kwota"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Wystąpił błąd podczas próby wykonania tej zamiany. Konieczne może być zwiększenie tolerancji na poślizg. Jeśli to nie zadziała, może wystąpić niekompatybilność z tokenem, którym handlujesz. Uwaga opłaty za tokeny transferu i rebase są niezgodne z Uniswap V3."
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note: fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Wystąpił błąd podczas próby wykonania tej wymiany. Może być konieczne zwiększenie tolerancji na poślizg. Jeśli to nie zadziała, może występować niezgodność z tokenem, którym handlujesz. Uwaga: opłata za transfer i rebase tokeny są niezgodne z Uniswap V3."
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Analytics"
|
||||
@@ -400,6 +400,10 @@ msgstr "Zamknij"
|
||||
msgid "Closed"
|
||||
msgstr "Zamknięte"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Closed positions"
|
||||
msgstr "Pozycje zamknięte"
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Code"
|
||||
msgstr "Kod"
|
||||
@@ -727,8 +731,8 @@ msgid "Get support on Discord"
|
||||
msgstr "Uzyskaj wsparcie na Discordzie"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Hide closed positions"
|
||||
msgstr "Ukryj zamknięte pozycje"
|
||||
msgid "Hide"
|
||||
msgstr "Ukryć"
|
||||
|
||||
#: src/pages/Swap/index.tsx
|
||||
msgid "High Price Impact"
|
||||
@@ -1280,6 +1284,10 @@ msgstr "Udział puli"
|
||||
msgid "Share of Pool:"
|
||||
msgstr "Udział w puli:"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Show"
|
||||
msgstr "Pokazać"
|
||||
|
||||
#: src/components/AccountDetails/index.tsx
|
||||
msgid "Show Portis"
|
||||
msgstr "Show Portis"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"POT-Creation-Date: 2021-06-16 02:37+0000\n"
|
||||
"POT-Creation-Date: 2021-06-21 15:11+0000\n"
|
||||
"Mime-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"X-Crowdin-File-ID: 4\n"
|
||||
"Project-Id-Version: uniswap-interface\n"
|
||||
"Language-Team: Portuguese, Brazilian\n"
|
||||
"PO-Revision-Date: 2021-06-16 03:05\n"
|
||||
"PO-Revision-Date: 2021-06-21 16:05\n"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
@@ -223,8 +223,8 @@ msgid "Amount"
|
||||
msgstr "Valor"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Ocorreu um erro ao tentar executar esta conversão. Pode ser preciso aumentar sua tolerância às discrepâncias. Se não der certo, pode haver incompatibilidade com o token que você está negociando. Observe que a taxa sobre transferências e os tokens de reembasamento são incompatíveis com o Uniswap V3."
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note: fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Ocorreu um erro ao tentar executar esta troca. Pode ser necessário aumentar sua tolerância ao deslizamento. Se isso não funcionar, pode haver uma incompatibilidade com o token que você está negociando. Nota: a taxa de transferência e tokens de rebase são incompatíveis com Uniswap V3."
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Analytics"
|
||||
@@ -400,6 +400,10 @@ msgstr "Fechar"
|
||||
msgid "Closed"
|
||||
msgstr "Fechado"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Closed positions"
|
||||
msgstr "Posições fechadas"
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Code"
|
||||
msgstr "Código"
|
||||
@@ -727,8 +731,8 @@ msgid "Get support on Discord"
|
||||
msgstr "Obtenha suporte em caso de Discordância"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Hide closed positions"
|
||||
msgstr "Ocultar posições fechadas"
|
||||
msgid "Hide"
|
||||
msgstr "Esconder"
|
||||
|
||||
#: src/pages/Swap/index.tsx
|
||||
msgid "High Price Impact"
|
||||
@@ -1280,6 +1284,10 @@ msgstr "Compartilhamento de Lotes"
|
||||
msgid "Share of Pool:"
|
||||
msgstr "Compartilhamento do Lote:"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Show"
|
||||
msgstr "mostrar"
|
||||
|
||||
#: src/components/AccountDetails/index.tsx
|
||||
msgid "Show Portis"
|
||||
msgstr "Exibir Portas"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"POT-Creation-Date: 2021-06-16 02:37+0000\n"
|
||||
"POT-Creation-Date: 2021-06-21 15:11+0000\n"
|
||||
"Mime-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"X-Crowdin-File-ID: 4\n"
|
||||
"Project-Id-Version: uniswap-interface\n"
|
||||
"Language-Team: Portuguese\n"
|
||||
"PO-Revision-Date: 2021-06-16 03:05\n"
|
||||
"PO-Revision-Date: 2021-06-21 16:05\n"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
@@ -223,8 +223,8 @@ msgid "Amount"
|
||||
msgstr "Quantia"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Ocorreu um erro ao tentar executar esta troca. Pode ter de aumentar a sua tolerância ao deslizamento. Se isso não funcionar, pode haver uma incompatibilidade com o token que está a negociar. Note que a comissão sobre transferência e tokens de rebase são incompatíveis com Uniswap V3."
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note: fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Ocorreu um erro ao tentar executar esta troca. Pode ser necessário aumentar sua tolerância ao deslizamento. Se isso não funcionar, pode haver uma incompatibilidade com o token que você está negociando. Nota: a taxa de transferência e tokens de rebase são incompatíveis com Uniswap V3."
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Analytics"
|
||||
@@ -400,6 +400,10 @@ msgstr "Fechar"
|
||||
msgid "Closed"
|
||||
msgstr "Fechado"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Closed positions"
|
||||
msgstr "Posições fechadas"
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Code"
|
||||
msgstr "Código"
|
||||
@@ -727,8 +731,8 @@ msgid "Get support on Discord"
|
||||
msgstr "Obtenha suporte no Discord"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Hide closed positions"
|
||||
msgstr "Ocultar posições fechadas"
|
||||
msgid "Hide"
|
||||
msgstr "Esconder"
|
||||
|
||||
#: src/pages/Swap/index.tsx
|
||||
msgid "High Price Impact"
|
||||
@@ -1280,6 +1284,10 @@ msgstr "Parcela da Pool"
|
||||
msgid "Share of Pool:"
|
||||
msgstr "Parcela da Pool:"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Show"
|
||||
msgstr "mostrar"
|
||||
|
||||
#: src/components/AccountDetails/index.tsx
|
||||
msgid "Show Portis"
|
||||
msgstr "Apresentar Portis"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"POT-Creation-Date: 2021-06-16 02:37+0000\n"
|
||||
"POT-Creation-Date: 2021-06-21 15:11+0000\n"
|
||||
"Mime-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"X-Crowdin-File-ID: 4\n"
|
||||
"Project-Id-Version: uniswap-interface\n"
|
||||
"Language-Team: Romanian\n"
|
||||
"PO-Revision-Date: 2021-06-16 03:05\n"
|
||||
"PO-Revision-Date: 2021-06-21 16:05\n"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
@@ -101,7 +101,7 @@ msgstr "Voturi <0/>"
|
||||
|
||||
#: src/pages/Pool/v2.tsx
|
||||
msgid "<0>Account analytics and accrued fees</0><1> ↗ </1>"
|
||||
msgstr "<0>Statistici cont și comisioane acumulate</0><1> ↗ </1>"
|
||||
msgstr "<0>Statisticile contului și comisioane acumulate</0><1> ↗ </1>"
|
||||
|
||||
#: src/pages/Swap/index.tsx
|
||||
msgid "<0>Back to </0>V3"
|
||||
@@ -223,9 +223,8 @@ msgid "Amount"
|
||||
msgstr "Sumă"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "A apărut o eroare la încercarea de a executa acest schimb. Este posibil să fie nevoie să îți mărești toleranța la alunecare. Dacă acest lucru nu funcționează, poate exista o incompatibilitate cu jetonul pe care îl tranzacționezi. Atenție că taxele jetoanelor de transfer și rebase sunt \n"
|
||||
" incompatibile cu Uniswap V3."
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note: fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "A apărut o eroare la încercarea de a executa acest swap. Este posibil să fie nevoie să vă măriți toleranța la alunecare. Dacă acest lucru nu funcționează, poate exista o incompatibilitate cu jetonul pe care îl tranzacționați. Notă: taxa pentru jetoane de transfer și rebase sunt incompatibile cu Uniswap V3."
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Analytics"
|
||||
@@ -401,6 +400,10 @@ msgstr "Închide"
|
||||
msgid "Closed"
|
||||
msgstr "Închis"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Closed positions"
|
||||
msgstr "Poziții închise"
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Code"
|
||||
msgstr "Cod"
|
||||
@@ -728,8 +731,8 @@ msgid "Get support on Discord"
|
||||
msgstr "Obține asistență pentru Discord"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Hide closed positions"
|
||||
msgstr "Ascunde pozițiile închise"
|
||||
msgid "Hide"
|
||||
msgstr "Ascunde"
|
||||
|
||||
#: src/pages/Swap/index.tsx
|
||||
msgid "High Price Impact"
|
||||
@@ -1281,6 +1284,10 @@ msgstr "Cota de Grup"
|
||||
msgid "Share of Pool:"
|
||||
msgstr "Cota de Grup:"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Show"
|
||||
msgstr "Spectacol"
|
||||
|
||||
#: src/components/AccountDetails/index.tsx
|
||||
msgid "Show Portis"
|
||||
msgstr "Arată Portis"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"POT-Creation-Date: 2021-06-16 02:37+0000\n"
|
||||
"POT-Creation-Date: 2021-06-21 15:11+0000\n"
|
||||
"Mime-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"X-Crowdin-File-ID: 4\n"
|
||||
"Project-Id-Version: uniswap-interface\n"
|
||||
"Language-Team: Russian\n"
|
||||
"PO-Revision-Date: 2021-06-16 08:05\n"
|
||||
"PO-Revision-Date: 2021-06-22 08:04\n"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
@@ -223,8 +223,8 @@ msgid "Amount"
|
||||
msgstr "Сумма"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Произошла ошибка при попытке произвести этот обмен. Возможно, нужно увеличить допустимое проскальзывание. Если это не сработает, возможно, имеет место несовместимость с токеном, которым вы торгуете. Токены с комиссией за перевод или изменяемой базой несовместимы с Uniswap V3."
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note: fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Произошла ошибка при попытке произвести этот обмен. Возможно, нужно увеличить допустимое проскальзывание. Если это не сработает, возможно, имеет место несовместимость с токеном, которым вы торгуете. Обратите внимание: токены с комиссией за перевод или изменяемой базой несовместимы с Uniswap V3."
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Analytics"
|
||||
@@ -316,7 +316,7 @@ msgstr "Добавляя этот список, вы подразумевает
|
||||
|
||||
#: src/components/WalletModal/index.tsx
|
||||
msgid "By connecting a wallet, you agree to Uniswap Labs’ <0>Terms of Service</0> and acknowledge that you have read and understand the <1>Uniswap protocol disclaimer</1>."
|
||||
msgstr "Подключая кошелёк, вы соглашаетесь с <0>Условиями предоставления услуг</0> Uniswap Labs и подтверждаете, что прочитали и поняли <1>Отказ от претензий протокола Uniswap </1>."
|
||||
msgstr "Подключая кошелёк, вы соглашаетесь с <0>Условиями предоставления услуг</0> Uniswap Labs и подтверждаете, что прочитали и поняли <1>Отказ от претензий протокола Uniswap</1>."
|
||||
|
||||
#: src/components/AccountDetails/index.tsx
|
||||
msgid "Change"
|
||||
@@ -400,6 +400,10 @@ msgstr "Закрыть"
|
||||
msgid "Closed"
|
||||
msgstr "Закрыто"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Closed positions"
|
||||
msgstr "Закрытые позиции"
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Code"
|
||||
msgstr "Код"
|
||||
@@ -727,8 +731,8 @@ msgid "Get support on Discord"
|
||||
msgstr "Получите поддержку в Discord"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Hide closed positions"
|
||||
msgstr "Скрыть закрытые позиции"
|
||||
msgid "Hide"
|
||||
msgstr "Скрыть"
|
||||
|
||||
#: src/pages/Swap/index.tsx
|
||||
msgid "High Price Impact"
|
||||
@@ -1280,6 +1284,10 @@ msgstr "Доля в пуле"
|
||||
msgid "Share of Pool:"
|
||||
msgstr "Доля в пуле:"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Show"
|
||||
msgstr "Показать"
|
||||
|
||||
#: src/components/AccountDetails/index.tsx
|
||||
msgid "Show Portis"
|
||||
msgstr "Показать Portis"
|
||||
@@ -1336,7 +1344,7 @@ msgstr "Идет обмен {0} {1} на {2} {3}"
|
||||
|
||||
#: src/components/Popups/ClaimPopup.tsx
|
||||
msgid "Thanks for being part of the Uniswap community <0/>"
|
||||
msgstr "Спасибо, что присоединились к сообществу Uniswap <0 />"
|
||||
msgstr "Спасибо, что присоединились к сообществу Uniswap <0/>"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "The Uniswap invariant x*y=k was not satisfied by the swap. This usually means one of the tokens you are swapping incorporates custom behavior on transfer."
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"POT-Creation-Date: 2021-06-16 02:37+0000\n"
|
||||
"POT-Creation-Date: 2021-06-21 15:11+0000\n"
|
||||
"Mime-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"X-Crowdin-File-ID: 4\n"
|
||||
"Project-Id-Version: uniswap-interface\n"
|
||||
"Language-Team: Serbian (Cyrillic)\n"
|
||||
"PO-Revision-Date: 2021-06-16 03:05\n"
|
||||
"PO-Revision-Date: 2021-06-21 16:05\n"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
@@ -223,8 +223,8 @@ msgid "Amount"
|
||||
msgstr "Износ"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Дошло је до грешке приликом покушаја извршења ове замене. Можда ћете морати да повећате клизну толеранцију. Ако то не успе, можда доћи до некомпатибилности са токеном којим тргујете. Накнада за пренос и постављање базне вредности токена није компатибилна са Uniswap V3."
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note: fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Дошло је до грешке приликом покушаја извршења ове замене. Можда ћете морати повећати толеранцију клизања. Ако то не успе, можда постоји некомпатибилност са токеном којим тргујете. Напомена: накнада за токене за пренос и пребазу није компатибилна са Унисвап В3."
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Analytics"
|
||||
@@ -400,6 +400,10 @@ msgstr "Затвори"
|
||||
msgid "Closed"
|
||||
msgstr "Затворено"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Closed positions"
|
||||
msgstr "Затворене позиције"
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Code"
|
||||
msgstr "Код"
|
||||
@@ -727,8 +731,8 @@ msgid "Get support on Discord"
|
||||
msgstr "Затражите подршку на Discord-у"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Hide closed positions"
|
||||
msgstr "Сакриј затворене позиције"
|
||||
msgid "Hide"
|
||||
msgstr "Сакрити"
|
||||
|
||||
#: src/pages/Swap/index.tsx
|
||||
msgid "High Price Impact"
|
||||
@@ -1280,6 +1284,10 @@ msgstr "Удео фонда"
|
||||
msgid "Share of Pool:"
|
||||
msgstr "Удео фонда:"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Show"
|
||||
msgstr "Прикажи"
|
||||
|
||||
#: src/components/AccountDetails/index.tsx
|
||||
msgid "Show Portis"
|
||||
msgstr "Прикажи Portis"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"POT-Creation-Date: 2021-06-16 02:37+0000\n"
|
||||
"POT-Creation-Date: 2021-06-21 15:11+0000\n"
|
||||
"Mime-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"X-Crowdin-File-ID: 4\n"
|
||||
"Project-Id-Version: uniswap-interface\n"
|
||||
"Language-Team: Swedish\n"
|
||||
"PO-Revision-Date: 2021-06-16 03:05\n"
|
||||
"PO-Revision-Date: 2021-06-21 16:05\n"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
@@ -223,8 +223,8 @@ msgid "Amount"
|
||||
msgstr "Belopp"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Ett fel uppstod när denna swap skulle genomföras. Du kan behöva öka din toleransmarginal. Om det inte fungerar kan det finnas en oförenlighet med den token du handlar. Kom ihåg att avgifter för överföring och rebase tokens är oförenliga med Uniswap V3."
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note: fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Ett fel uppstod när det här försöket skulle genomföras. Du kan behöva öka din glidningstolerans. Om det inte fungerar kan det finnas en inkompatibilitet med det token du handlar. Obs: avgift för överföring och rebase-tokens är oförenliga med Uniswap V3."
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Analytics"
|
||||
@@ -400,6 +400,10 @@ msgstr "Stäng"
|
||||
msgid "Closed"
|
||||
msgstr "Stängd"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Closed positions"
|
||||
msgstr "Stängda positioner"
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Code"
|
||||
msgstr "Kod"
|
||||
@@ -727,8 +731,8 @@ msgid "Get support on Discord"
|
||||
msgstr "Få support angående brist på överensstämmelse"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Hide closed positions"
|
||||
msgstr "Dölj stängda positioner"
|
||||
msgid "Hide"
|
||||
msgstr "Dölj"
|
||||
|
||||
#: src/pages/Swap/index.tsx
|
||||
msgid "High Price Impact"
|
||||
@@ -1280,6 +1284,10 @@ msgstr "Andel av poolen"
|
||||
msgid "Share of Pool:"
|
||||
msgstr "Andel av Pool:"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Show"
|
||||
msgstr "Show"
|
||||
|
||||
#: src/components/AccountDetails/index.tsx
|
||||
msgid "Show Portis"
|
||||
msgstr "Visa Portis"
|
||||
@@ -1336,7 +1344,7 @@ msgstr "Byter ut {0} {1} mot {2} {3}"
|
||||
|
||||
#: src/components/Popups/ClaimPopup.tsx
|
||||
msgid "Thanks for being part of the Uniswap community <0/>"
|
||||
msgstr "Tack för att du deltar i Uniswap-gemenskapen<0 />"
|
||||
msgstr "Tack för att du deltar i Uniswap-gemenskapen<0/>"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "The Uniswap invariant x*y=k was not satisfied by the swap. This usually means one of the tokens you are swapping incorporates custom behavior on transfer."
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"POT-Creation-Date: 2021-06-16 02:37+0000\n"
|
||||
"POT-Creation-Date: 2021-06-21 15:11+0000\n"
|
||||
"Mime-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"X-Crowdin-File-ID: 4\n"
|
||||
"Project-Id-Version: uniswap-interface\n"
|
||||
"Language-Team: Turkish\n"
|
||||
"PO-Revision-Date: 2021-06-16 03:05\n"
|
||||
"PO-Revision-Date: 2021-06-21 16:05\n"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
@@ -223,8 +223,8 @@ msgid "Amount"
|
||||
msgstr "Miktar"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Bu swap'ı gerçekleştirmeye çalışırken bir hata oluştu. Kayma toleransınızı artırmanız gerekebilir. Bu işe yaramazsa, işlem yaptığınız jetonla uyumsuzluk olabilir. Transfer ve yeniden ödeme jetonları üzerindeki ücretin, Uniswap V3 ile uyumlu olmadığına dikkat edin."
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note: fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Bu takas yürütülmeye çalışılırken bir hata oluştu. Kayma toleransınızı artırmanız gerekebilir. Bu işe yaramazsa, işlem yaptığınız token ile uyumsuzluk olabilir. Not: Transfer ve rebase jetonlarındaki ücret, Uniswap V3 ile uyumlu değildir."
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Analytics"
|
||||
@@ -400,6 +400,10 @@ msgstr "Kapat"
|
||||
msgid "Closed"
|
||||
msgstr "Kapalı"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Closed positions"
|
||||
msgstr "Kapalı pozisyonlar"
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Code"
|
||||
msgstr "Kod"
|
||||
@@ -727,8 +731,8 @@ msgid "Get support on Discord"
|
||||
msgstr "Discord ile ilgili destek alın"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Hide closed positions"
|
||||
msgstr "Kapalı pozisyonları gizle"
|
||||
msgid "Hide"
|
||||
msgstr "Saklamak"
|
||||
|
||||
#: src/pages/Swap/index.tsx
|
||||
msgid "High Price Impact"
|
||||
@@ -1280,6 +1284,10 @@ msgstr "Havuz Payı"
|
||||
msgid "Share of Pool:"
|
||||
msgstr "Havuz Payı:"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Show"
|
||||
msgstr "Göstermek"
|
||||
|
||||
#: src/components/AccountDetails/index.tsx
|
||||
msgid "Show Portis"
|
||||
msgstr "Portis'i göster"
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"POT-Creation-Date: 2021-06-16 02:37+0000\n"
|
||||
"POT-Creation-Date: 2021-06-21 15:11+0000\n"
|
||||
"Mime-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"X-Crowdin-File-ID: 4\n"
|
||||
"Project-Id-Version: uniswap-interface\n"
|
||||
"Language-Team: Ukrainian\n"
|
||||
"PO-Revision-Date: 2021-06-16 03:05\n"
|
||||
"PO-Revision-Date: 2021-06-21 16:05\n"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
@@ -223,8 +223,8 @@ msgid "Amount"
|
||||
msgstr "Сума"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Під час спроби цього обміну сталася помилка. Можливо, вам доведеться збільшити толерантність до проковзування. Якщо це не спрацює, то ймовірне існування несумісності з токеном, яким ви торгуєте. Зауважте, що плата за перенесення й перебазування токенів несумісна з Uniswap V3."
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note: fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Під час спроби виконати цей обмін сталася помилка. Можливо, вам доведеться збільшити толерантність до ковзання. Якщо це не спрацює, можливо, існує несумісність з токеном, яким ви торгуєте. Примітка: плата за перенесення та перебазування токенів несумісні з Uniswap V3."
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Analytics"
|
||||
@@ -400,6 +400,10 @@ msgstr "Закрити"
|
||||
msgid "Closed"
|
||||
msgstr "Закрито"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Closed positions"
|
||||
msgstr "Закриті позиції"
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Code"
|
||||
msgstr "Код"
|
||||
@@ -727,8 +731,8 @@ msgid "Get support on Discord"
|
||||
msgstr "Отримайте підтримку в Discord"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Hide closed positions"
|
||||
msgstr "Приховати закриті позиції"
|
||||
msgid "Hide"
|
||||
msgstr "Сховати"
|
||||
|
||||
#: src/pages/Swap/index.tsx
|
||||
msgid "High Price Impact"
|
||||
@@ -1280,6 +1284,10 @@ msgstr "Частка пулу"
|
||||
msgid "Share of Pool:"
|
||||
msgstr "Частка пулу:"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Show"
|
||||
msgstr "Показати"
|
||||
|
||||
#: src/components/AccountDetails/index.tsx
|
||||
msgid "Show Portis"
|
||||
msgstr "Показати Portis"
|
||||
@@ -1729,7 +1737,7 @@ msgstr "Ви маєте дати дозвіл розумних контракт
|
||||
|
||||
#: src/pages/MigrateV2/MigrateV2Pair.tsx
|
||||
msgid "You should only deposit liquidity into Uniswap V3 at a price you believe is correct. <0/>If the price seems incorrect, you can either make a swap to move the price or wait for someone else to do so."
|
||||
msgstr "Ви маєте вносити ліквідність у Uniswap V3 лише за ціною, яку ви вважаєте правильною. <0 /> Якщо ціна здається неправильною, ви можете здійснити обмін, аби перемістити ціну, або дочекатися, поки цього зробить хтось інший."
|
||||
msgstr "Ви маєте вносити ліквідність у Uniswap V3 лише за ціною, яку ви вважаєте правильною. <0/> Якщо ціна здається неправильною, ви можете здійснити обмін, аби перемістити ціну, або дочекатися, поки цього зробить хтось інший."
|
||||
|
||||
#: src/pages/RemoveLiquidity/V3.tsx
|
||||
msgid "You will also collect fees earned from this position."
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"POT-Creation-Date: 2021-06-16 02:37+0000\n"
|
||||
"POT-Creation-Date: 2021-06-21 15:11+0000\n"
|
||||
"Mime-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"X-Crowdin-File-ID: 4\n"
|
||||
"Project-Id-Version: uniswap-interface\n"
|
||||
"Language-Team: Vietnamese\n"
|
||||
"PO-Revision-Date: 2021-06-16 03:05\n"
|
||||
"PO-Revision-Date: 2021-06-21 16:05\n"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
@@ -223,8 +223,8 @@ msgid "Amount"
|
||||
msgstr "Số tiền"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Đã xảy ra lỗi khi cố gắng thực hiện hoán đổi này. Bạn có thể cần phải tăng khả năng chịu trượt của mình. Nếu điều đó không hiệu quả, có thể có sự không tương thích với mã token bạn đang giao dịch. Lưu ý phí chuyển và mã token rebase không tương thích với Uniswap V3."
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note: fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "Đã xảy ra lỗi khi cố gắng thực hiện hoán đổi này. Bạn có thể cần phải tăng khả năng chịu trượt của mình. Nếu điều đó không hiệu quả, có thể có sự không tương thích với mã thông báo bạn đang giao dịch. Lưu ý: phí chuyển và mã thông báo rebase không tương thích với Uniswap V3."
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Analytics"
|
||||
@@ -400,6 +400,10 @@ msgstr "Đóng"
|
||||
msgid "Closed"
|
||||
msgstr "Đã đóng cửa"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Closed positions"
|
||||
msgstr "Các vị trí đã đóng"
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Code"
|
||||
msgstr "Mã"
|
||||
@@ -727,8 +731,8 @@ msgid "Get support on Discord"
|
||||
msgstr "Nhận hỗ trợ về Discord"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Hide closed positions"
|
||||
msgstr "Ẩn các vị trí đã đóng"
|
||||
msgid "Hide"
|
||||
msgstr "Ẩn giấu"
|
||||
|
||||
#: src/pages/Swap/index.tsx
|
||||
msgid "High Price Impact"
|
||||
@@ -1280,6 +1284,10 @@ msgstr "Chia sẻ của Pool"
|
||||
msgid "Share of Pool:"
|
||||
msgstr "Chia sẻ của Pool:"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Show"
|
||||
msgstr "Chỉ"
|
||||
|
||||
#: src/components/AccountDetails/index.tsx
|
||||
msgid "Show Portis"
|
||||
msgstr "Hiển thị Portis"
|
||||
@@ -1336,7 +1344,7 @@ msgstr "Đổi {0} {1} lấy {2} {3}"
|
||||
|
||||
#: src/components/Popups/ClaimPopup.tsx
|
||||
msgid "Thanks for being part of the Uniswap community <0/>"
|
||||
msgstr "Cảm ơn bạn đã tham gia cộng đồng Uniswap <0 />"
|
||||
msgstr "Cảm ơn bạn đã tham gia cộng đồng Uniswap <0/>"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "The Uniswap invariant x*y=k was not satisfied by the swap. This usually means one of the tokens you are swapping incorporates custom behavior on transfer."
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"POT-Creation-Date: 2021-06-16 02:37+0000\n"
|
||||
"POT-Creation-Date: 2021-06-21 15:11+0000\n"
|
||||
"Mime-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"X-Crowdin-File-ID: 4\n"
|
||||
"Project-Id-Version: uniswap-interface\n"
|
||||
"Language-Team: Chinese Simplified\n"
|
||||
"PO-Revision-Date: 2021-06-16 03:05\n"
|
||||
"PO-Revision-Date: 2021-06-21 16:05\n"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
@@ -223,8 +223,8 @@ msgid "Amount"
|
||||
msgstr "数额"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "尝试执行此兑换时发生错误。您可能需要增加滑点限制。如果还是不行,则可能是您正在交易的代币与 Uniswap 不兼容。注:转账时带扣除费用(fee-on-transfer)的代币和会自动重新定价(rebase)的代币都与Uniswap V3不兼容。"
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note: fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "尝试执行此交换时出错。您可能需要增加您的滑点容忍度。如果这不起作用,则可能与您交易的代币不兼容。注意:转账和 rebase 代币的费用与 Uniswap V3 不兼容。"
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Analytics"
|
||||
@@ -400,6 +400,10 @@ msgstr "关闭"
|
||||
msgid "Closed"
|
||||
msgstr "已关闭"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Closed positions"
|
||||
msgstr "已关闭的仓位"
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Code"
|
||||
msgstr "代码"
|
||||
@@ -727,8 +731,8 @@ msgid "Get support on Discord"
|
||||
msgstr "在 Discord 上寻求技术支持"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Hide closed positions"
|
||||
msgstr "隐藏已关闭的流动资金仓位"
|
||||
msgid "Hide"
|
||||
msgstr "隐藏"
|
||||
|
||||
#: src/pages/Swap/index.tsx
|
||||
msgid "High Price Impact"
|
||||
@@ -1280,6 +1284,10 @@ msgstr "流动池份额"
|
||||
msgid "Share of Pool:"
|
||||
msgstr "流动池份额:"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Show"
|
||||
msgstr "显示"
|
||||
|
||||
#: src/components/AccountDetails/index.tsx
|
||||
msgid "Show Portis"
|
||||
msgstr "显示 Portis"
|
||||
@@ -1356,7 +1364,7 @@ msgstr "输出代币无法进行转账。输出代币可能有些问题。"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "The output token cannot be transferred. There may be an issue with the output token. Note: fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "无法对输出代币进行转账。输出代币可能有些问题。注:转账时额外抽取费用(fee-on-transfer)的代币和会自动重新定价(rebase)的代币都与Uniswap V3不兼容。"
|
||||
msgstr "无法对输出代币进行转账。输出代币可能有些问题。注:转账时额外抽取费用(fee-on-transfer)的代币和弹性供应(rebase)代币都与Uniswap V3不兼容。"
|
||||
|
||||
#: src/components/Badge/RangeBadge.tsx
|
||||
msgid "The price of this pool is outside of your selected range. Your position is not currently earning fees."
|
||||
@@ -1388,7 +1396,7 @@ msgstr "该工具将安全地将您的 {0} 流动资金迁移到 V3。该过程
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "This transaction will not succeed due to price movement. Try increasing your slippage tolerance. Note: fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "由于兑换率变动,此交易将不会成功。尝试增加您的滑点容差。注:转账时额外抽取费用(fee-on-transfer)的代币和会自动重新定价(rebase)的代币都与Uniswap V3不兼容。"
|
||||
msgstr "由于兑换率变动,此交易将不会成功。尝试增加您的滑点容差。注:转账时额外抽取费用(fee-on-transfer)的代币和弹性供应(rebase)代币都与Uniswap V3不兼容。"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "This transaction will not succeed either due to price movement or fee on transfer. Try increasing your slippage tolerance."
|
||||
@@ -1527,7 +1535,7 @@ msgstr "未知来源"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "Unknown error{0}. Try increasing your slippage tolerance. Note: fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "未知错误{0}。尝试增加您的滑点容差。注:转账时额外抽取费用(fee-on-transfer)的代币和会自动重新定价(rebase)的代币都与Uniswap V3不兼容。"
|
||||
msgstr "未知错误{0}。尝试增加您的滑点容差。注:转账时额外抽取费用(fee-on-transfer)的代币和弹性供应(rebase)代币都与Uniswap V3不兼容。"
|
||||
|
||||
#: src/pages/Vote/VotePage.tsx
|
||||
#: src/pages/Vote/index.tsx
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"POT-Creation-Date: 2021-06-16 02:37+0000\n"
|
||||
"POT-Creation-Date: 2021-06-21 15:11+0000\n"
|
||||
"Mime-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"X-Crowdin-File-ID: 4\n"
|
||||
"Project-Id-Version: uniswap-interface\n"
|
||||
"Language-Team: Chinese Traditional\n"
|
||||
"PO-Revision-Date: 2021-06-16 03:05\n"
|
||||
"PO-Revision-Date: 2021-06-21 16:05\n"
|
||||
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
#: src/pages/Pool/PositionPage.tsx
|
||||
@@ -223,8 +223,8 @@ msgid "Amount"
|
||||
msgstr "數額"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "嘗試執行此兌換時發生錯誤。您可能需要增加滑點限製。如果還是不行,則可能是您正在交易的代幣與 Uniswap 不相容。註:轉帳額外抽取手續費(fee-on-transfer)的代幣和會自動重新定價(rebase)的代幣都與 Uniswap V3 不相容。"
|
||||
msgid "An error occurred when trying to execute this swap. You may need to increase your slippage tolerance. If that does not work, there may be an incompatibility with the token you are trading. Note: fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "嘗試執行此交換時出錯。您可能需要增加您的滑點容忍度。如果這不起作用,則可能與您交易的代幣不兼容。注意:轉賬和 rebase 代幣的費用與 Uniswap V3 不兼容。"
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Analytics"
|
||||
@@ -400,6 +400,10 @@ msgstr "關閉"
|
||||
msgid "Closed"
|
||||
msgstr "已關閉"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Closed positions"
|
||||
msgstr "平倉"
|
||||
|
||||
#: src/components/Menu/index.tsx
|
||||
msgid "Code"
|
||||
msgstr "代碼"
|
||||
@@ -727,8 +731,8 @@ msgid "Get support on Discord"
|
||||
msgstr "在 Discord 上尋求技術支持"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Hide closed positions"
|
||||
msgstr "隱藏已關閉的倉位"
|
||||
msgid "Hide"
|
||||
msgstr "隱藏"
|
||||
|
||||
#: src/pages/Swap/index.tsx
|
||||
msgid "High Price Impact"
|
||||
@@ -1280,6 +1284,10 @@ msgstr "流動池份額"
|
||||
msgid "Share of Pool:"
|
||||
msgstr "流動池份額:"
|
||||
|
||||
#: src/pages/Pool/index.tsx
|
||||
msgid "Show"
|
||||
msgstr "表演"
|
||||
|
||||
#: src/components/AccountDetails/index.tsx
|
||||
msgid "Show Portis"
|
||||
msgstr "顯示 Portis"
|
||||
@@ -1356,7 +1364,7 @@ msgstr "輸出代幣無法進行轉賬。輸出代幣可能有些問題。"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "The output token cannot be transferred. There may be an issue with the output token. Note: fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "無法傳輸輸出令牌。輸出令牌可能有問題。注意:轉賬和 rebase 代幣的費用與 Uniswap V3 不兼容。"
|
||||
msgstr "輸出代幣無法進行轉賬。輸出代幣可能有些問題。註:轉賬時帶扣除費用(fee-on-transfer)的代幣和會自動重新定價(rebase)的代幣都與Uniswap V3不相容。"
|
||||
|
||||
#: src/components/Badge/RangeBadge.tsx
|
||||
msgid "The price of this pool is outside of your selected range. Your position is not currently earning fees."
|
||||
@@ -1388,7 +1396,7 @@ msgstr "該工具將安全地將您的 {0} 流動資金遷移到 V3。該過程
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "This transaction will not succeed due to price movement. Try increasing your slippage tolerance. Note: fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "由於價格變動,此交易不會成功。嘗試增加您的滑點容忍度。注意:轉賬和 rebase 代幣的費用與 Uniswap V3 不兼容。"
|
||||
msgstr "由於兌換率變動,該交易將不會成功。請嘗試增加滑點容差。註:轉賬時帶扣除費用(fee-on-transfer)的代幣和會自動重新定價(rebase)的代幣都與Uniswap V3不兼容。"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "This transaction will not succeed either due to price movement or fee on transfer. Try increasing your slippage tolerance."
|
||||
@@ -1527,7 +1535,7 @@ msgstr "未知來源"
|
||||
|
||||
#: src/hooks/useSwapCallback.ts
|
||||
msgid "Unknown error{0}. Try increasing your slippage tolerance. Note: fee on transfer and rebase tokens are incompatible with Uniswap V3."
|
||||
msgstr "未知錯誤{0}。嘗試增加您的滑點容忍度。注意:轉賬和 rebase 代幣的費用與 Uniswap V3 不兼容。"
|
||||
msgstr "未知錯誤{0}。請嘗試增加滑點容差。註:轉賬時帶扣除費用(fee-on-transfer)的代幣和會自動重新定價(rebase)的代幣都與Uniswap V3不相容。"
|
||||
|
||||
#: src/pages/Vote/VotePage.tsx
|
||||
#: src/pages/Vote/index.tsx
|
||||
|
||||
@@ -55,6 +55,7 @@ import RateToggle from 'components/RateToggle'
|
||||
import { BigNumber } from '@ethersproject/bignumber'
|
||||
import { AddRemoveTabs } from 'components/NavigationTabs'
|
||||
import HoverInlineText from 'components/HoverInlineText'
|
||||
import { SwitchLocaleLink } from 'components/SwitchLocaleLink'
|
||||
|
||||
const DEFAULT_ADD_IN_RANGE_SLIPPAGE_TOLERANCE = new Percent(50, 10_000)
|
||||
|
||||
@@ -385,393 +386,397 @@ export default function AddLiquidity({
|
||||
!argentWalletContract && approvalB !== ApprovalState.APPROVED && !!parsedAmounts[Field.CURRENCY_B]
|
||||
|
||||
return (
|
||||
<ScrollablePage>
|
||||
<TransactionConfirmationModal
|
||||
isOpen={showConfirm}
|
||||
onDismiss={handleDismissConfirmation}
|
||||
attemptingTxn={attemptingTxn}
|
||||
hash={txHash}
|
||||
content={() => (
|
||||
<ConfirmationModalContent
|
||||
title={'Add Liquidity'}
|
||||
onDismiss={handleDismissConfirmation}
|
||||
topContent={() => (
|
||||
<Review
|
||||
parsedAmounts={parsedAmounts}
|
||||
position={position}
|
||||
existingPosition={existingPosition}
|
||||
priceLower={priceLower}
|
||||
priceUpper={priceUpper}
|
||||
outOfRange={outOfRange}
|
||||
/>
|
||||
)}
|
||||
bottomContent={() => (
|
||||
<ButtonPrimary style={{ marginTop: '1rem' }} onClick={onAdd}>
|
||||
<Text fontWeight={500} fontSize={20}>
|
||||
<Trans>Add</Trans>
|
||||
</Text>
|
||||
</ButtonPrimary>
|
||||
)}
|
||||
/>
|
||||
)}
|
||||
pendingText={pendingText}
|
||||
/>
|
||||
<AppBody>
|
||||
<AddRemoveTabs
|
||||
creating={false}
|
||||
adding={true}
|
||||
positionID={tokenId}
|
||||
defaultSlippage={DEFAULT_ADD_IN_RANGE_SLIPPAGE_TOLERANCE}
|
||||
/>
|
||||
<Wrapper>
|
||||
<AutoColumn gap="32px">
|
||||
{!hasExistingPosition && (
|
||||
<>
|
||||
<AutoColumn gap="md">
|
||||
<RowBetween paddingBottom="20px">
|
||||
<TYPE.label>
|
||||
<Trans>Select pair</Trans>
|
||||
</TYPE.label>
|
||||
<ButtonText onClick={clearAll}>
|
||||
<TYPE.blue fontSize="12px">
|
||||
<Trans>Clear All</Trans>
|
||||
</TYPE.blue>
|
||||
</ButtonText>
|
||||
</RowBetween>
|
||||
<RowBetween>
|
||||
<CurrencyDropdown
|
||||
value={formattedAmounts[Field.CURRENCY_A]}
|
||||
onUserInput={onFieldAInput}
|
||||
hideInput={true}
|
||||
onMax={() => {
|
||||
onFieldAInput(maxAmounts[Field.CURRENCY_A]?.toExact() ?? '')
|
||||
}}
|
||||
onCurrencySelect={handleCurrencyASelect}
|
||||
showMaxButton={!atMaxAmounts[Field.CURRENCY_A]}
|
||||
currency={currencies[Field.CURRENCY_A]}
|
||||
id="add-liquidity-input-tokena"
|
||||
showCommonBases
|
||||
/>
|
||||
<div style={{ width: '12px' }} />
|
||||
|
||||
<CurrencyDropdown
|
||||
value={formattedAmounts[Field.CURRENCY_B]}
|
||||
hideInput={true}
|
||||
onUserInput={onFieldBInput}
|
||||
onCurrencySelect={handleCurrencyBSelect}
|
||||
onMax={() => {
|
||||
onFieldBInput(maxAmounts[Field.CURRENCY_B]?.toExact() ?? '')
|
||||
}}
|
||||
showMaxButton={!atMaxAmounts[Field.CURRENCY_B]}
|
||||
currency={currencies[Field.CURRENCY_B]}
|
||||
id="add-liquidity-input-tokenb"
|
||||
showCommonBases
|
||||
/>
|
||||
</RowBetween>
|
||||
</AutoColumn>{' '}
|
||||
</>
|
||||
)}
|
||||
|
||||
{hasExistingPosition && existingPosition ? (
|
||||
<PositionPreview
|
||||
position={existingPosition}
|
||||
title={<Trans>Selected Range</Trans>}
|
||||
inRange={!outOfRange}
|
||||
/>
|
||||
) : (
|
||||
<>
|
||||
<FeeSelector
|
||||
disabled={!currencyB || !currencyA}
|
||||
feeAmount={feeAmount}
|
||||
handleFeePoolSelect={handleFeePoolSelect}
|
||||
<>
|
||||
<ScrollablePage>
|
||||
<TransactionConfirmationModal
|
||||
isOpen={showConfirm}
|
||||
onDismiss={handleDismissConfirmation}
|
||||
attemptingTxn={attemptingTxn}
|
||||
hash={txHash}
|
||||
content={() => (
|
||||
<ConfirmationModalContent
|
||||
title={'Add Liquidity'}
|
||||
onDismiss={handleDismissConfirmation}
|
||||
topContent={() => (
|
||||
<Review
|
||||
parsedAmounts={parsedAmounts}
|
||||
position={position}
|
||||
existingPosition={existingPosition}
|
||||
priceLower={priceLower}
|
||||
priceUpper={priceUpper}
|
||||
outOfRange={outOfRange}
|
||||
/>
|
||||
|
||||
{noLiquidity && (
|
||||
<DynamicSection disabled={!currencyA || !currencyB}>
|
||||
<AutoColumn gap="md">
|
||||
<RowBetween>
|
||||
<TYPE.label>
|
||||
<Trans>Set Starting Price</Trans>
|
||||
</TYPE.label>
|
||||
{baseCurrency && quoteCurrency ? (
|
||||
<RateToggle
|
||||
currencyA={baseCurrency}
|
||||
currencyB={quoteCurrency}
|
||||
handleRateToggle={() => {
|
||||
onLeftRangeInput('')
|
||||
onRightRangeInput('')
|
||||
history.push(
|
||||
`/add/${currencyIdB as string}/${currencyIdA as string}${
|
||||
feeAmount ? '/' + feeAmount : ''
|
||||
}`
|
||||
)
|
||||
}}
|
||||
/>
|
||||
) : null}
|
||||
</RowBetween>
|
||||
|
||||
<OutlineCard padding="12px">
|
||||
<StyledInput
|
||||
className="start-price-input"
|
||||
value={startPriceTypedValue}
|
||||
onUserInput={onStartPriceInput}
|
||||
/>
|
||||
</OutlineCard>
|
||||
<RowBetween style={{ backgroundColor: theme.bg1, padding: '12px', borderRadius: '12px' }}>
|
||||
<TYPE.main>
|
||||
<Trans>Current {baseCurrency?.symbol} Price:</Trans>
|
||||
</TYPE.main>
|
||||
<TYPE.main>
|
||||
{price ? (
|
||||
<TYPE.main>
|
||||
<RowFixed>
|
||||
<HoverInlineText
|
||||
maxCharacters={20}
|
||||
text={invertPrice ? price?.invert()?.toSignificant(5) : price?.toSignificant(5)}
|
||||
/>{' '}
|
||||
<span style={{ marginLeft: '4px' }}>{quoteCurrency?.symbol}</span>
|
||||
</RowFixed>
|
||||
</TYPE.main>
|
||||
) : (
|
||||
'-'
|
||||
)}
|
||||
</TYPE.main>
|
||||
</RowBetween>
|
||||
<BlueCard
|
||||
style={{
|
||||
display: 'flex',
|
||||
flexDirection: 'column',
|
||||
alignItems: 'center',
|
||||
padding: ' 1.5rem 1.25rem',
|
||||
}}
|
||||
>
|
||||
<AlertCircle color={theme.text1} size={32} style={{ marginBottom: '12px', opacity: 0.8 }} />
|
||||
<TYPE.body
|
||||
fontSize={14}
|
||||
style={{ marginBottom: 8, fontWeight: 500, opacity: 0.8 }}
|
||||
textAlign="center"
|
||||
>
|
||||
You are the first liquidity provider for this Uniswap V3 pool.
|
||||
</TYPE.body>
|
||||
|
||||
<TYPE.body fontWeight={500} textAlign="center" fontSize={14} style={{ opacity: 0.8 }}>
|
||||
The transaction cost will be much higher as it includes the gas to create the pool.
|
||||
</TYPE.body>
|
||||
</BlueCard>
|
||||
</AutoColumn>
|
||||
</DynamicSection>
|
||||
)}
|
||||
|
||||
<DynamicSection gap="md" disabled={!feeAmount || invalidPool || (noLiquidity && !startPriceTypedValue)}>
|
||||
<RowBetween>
|
||||
<TYPE.label>
|
||||
<Trans>Set Price Range</Trans>
|
||||
</TYPE.label>
|
||||
|
||||
{baseCurrency && quoteCurrency ? (
|
||||
<RateToggle
|
||||
currencyA={baseCurrency}
|
||||
currencyB={quoteCurrency}
|
||||
handleRateToggle={() => {
|
||||
onLeftRangeInput('')
|
||||
onRightRangeInput('')
|
||||
history.push(
|
||||
`/add/${currencyIdB as string}/${currencyIdA as string}${feeAmount ? '/' + feeAmount : ''}`
|
||||
)
|
||||
)}
|
||||
bottomContent={() => (
|
||||
<ButtonPrimary style={{ marginTop: '1rem' }} onClick={onAdd}>
|
||||
<Text fontWeight={500} fontSize={20}>
|
||||
<Trans>Add</Trans>
|
||||
</Text>
|
||||
</ButtonPrimary>
|
||||
)}
|
||||
/>
|
||||
)}
|
||||
pendingText={pendingText}
|
||||
/>
|
||||
<AppBody>
|
||||
<AddRemoveTabs
|
||||
creating={false}
|
||||
adding={true}
|
||||
positionID={tokenId}
|
||||
defaultSlippage={DEFAULT_ADD_IN_RANGE_SLIPPAGE_TOLERANCE}
|
||||
/>
|
||||
<Wrapper>
|
||||
<AutoColumn gap="32px">
|
||||
{!hasExistingPosition && (
|
||||
<>
|
||||
<AutoColumn gap="md">
|
||||
<RowBetween paddingBottom="20px">
|
||||
<TYPE.label>
|
||||
<Trans>Select pair</Trans>
|
||||
</TYPE.label>
|
||||
<ButtonText onClick={clearAll}>
|
||||
<TYPE.blue fontSize="12px">
|
||||
<Trans>Clear All</Trans>
|
||||
</TYPE.blue>
|
||||
</ButtonText>
|
||||
</RowBetween>
|
||||
<RowBetween>
|
||||
<CurrencyDropdown
|
||||
value={formattedAmounts[Field.CURRENCY_A]}
|
||||
onUserInput={onFieldAInput}
|
||||
hideInput={true}
|
||||
onMax={() => {
|
||||
onFieldAInput(maxAmounts[Field.CURRENCY_A]?.toExact() ?? '')
|
||||
}}
|
||||
onCurrencySelect={handleCurrencyASelect}
|
||||
showMaxButton={!atMaxAmounts[Field.CURRENCY_A]}
|
||||
currency={currencies[Field.CURRENCY_A]}
|
||||
id="add-liquidity-input-tokena"
|
||||
showCommonBases
|
||||
/>
|
||||
) : null}
|
||||
</RowBetween>
|
||||
<TYPE.main fontSize={14} fontWeight={400} style={{ marginBottom: '.5rem', lineHeight: '125%' }}>
|
||||
<Trans>
|
||||
Your liquidity will only earn fees when the market price of the pair is within your range.{' '}
|
||||
<ExternalLink
|
||||
href={'https://docs.uniswap.org/concepts/introduction/liquidity-user-guide#4-set-price-range'}
|
||||
style={{ fontSize: '14px' }}
|
||||
>
|
||||
Need help picking a range?
|
||||
</ExternalLink>
|
||||
</Trans>
|
||||
</TYPE.main>
|
||||
<div style={{ width: '12px' }} />
|
||||
|
||||
<RangeSelector
|
||||
priceLower={priceLower}
|
||||
priceUpper={priceUpper}
|
||||
getDecrementLower={getDecrementLower}
|
||||
getIncrementLower={getIncrementLower}
|
||||
getDecrementUpper={getDecrementUpper}
|
||||
getIncrementUpper={getIncrementUpper}
|
||||
onLeftRangeInput={onLeftRangeInput}
|
||||
onRightRangeInput={onRightRangeInput}
|
||||
currencyA={baseCurrency}
|
||||
currencyB={quoteCurrency}
|
||||
<CurrencyDropdown
|
||||
value={formattedAmounts[Field.CURRENCY_B]}
|
||||
hideInput={true}
|
||||
onUserInput={onFieldBInput}
|
||||
onCurrencySelect={handleCurrencyBSelect}
|
||||
onMax={() => {
|
||||
onFieldBInput(maxAmounts[Field.CURRENCY_B]?.toExact() ?? '')
|
||||
}}
|
||||
showMaxButton={!atMaxAmounts[Field.CURRENCY_B]}
|
||||
currency={currencies[Field.CURRENCY_B]}
|
||||
id="add-liquidity-input-tokenb"
|
||||
showCommonBases
|
||||
/>
|
||||
</RowBetween>
|
||||
</AutoColumn>{' '}
|
||||
</>
|
||||
)}
|
||||
|
||||
{hasExistingPosition && existingPosition ? (
|
||||
<PositionPreview
|
||||
position={existingPosition}
|
||||
title={<Trans>Selected Range</Trans>}
|
||||
inRange={!outOfRange}
|
||||
/>
|
||||
) : (
|
||||
<>
|
||||
<FeeSelector
|
||||
disabled={!currencyB || !currencyA}
|
||||
feeAmount={feeAmount}
|
||||
handleFeePoolSelect={handleFeePoolSelect}
|
||||
/>
|
||||
|
||||
{price && baseCurrency && quoteCurrency && !noLiquidity && (
|
||||
<LightCard style={{ padding: '12px' }}>
|
||||
<AutoColumn gap="4px">
|
||||
<TYPE.main fontWeight={500} textAlign="center" fontSize={12}>
|
||||
<Trans>Current Price</Trans>
|
||||
</TYPE.main>
|
||||
<TYPE.body fontWeight={500} textAlign="center" fontSize={20}>
|
||||
<HoverInlineText
|
||||
maxCharacters={20}
|
||||
text={invertPrice ? price.invert().toSignificant(6) : price.toSignificant(6)}
|
||||
/>{' '}
|
||||
</TYPE.body>
|
||||
<TYPE.main fontWeight={500} textAlign="center" fontSize={12}>
|
||||
<Trans>
|
||||
{quoteCurrency?.symbol} per {baseCurrency.symbol}
|
||||
</Trans>
|
||||
</TYPE.main>
|
||||
{noLiquidity && (
|
||||
<DynamicSection disabled={!currencyA || !currencyB}>
|
||||
<AutoColumn gap="md">
|
||||
<RowBetween>
|
||||
<TYPE.label>
|
||||
<Trans>Set Starting Price</Trans>
|
||||
</TYPE.label>
|
||||
{baseCurrency && quoteCurrency ? (
|
||||
<RateToggle
|
||||
currencyA={baseCurrency}
|
||||
currencyB={quoteCurrency}
|
||||
handleRateToggle={() => {
|
||||
onLeftRangeInput('')
|
||||
onRightRangeInput('')
|
||||
history.push(
|
||||
`/add/${currencyIdB as string}/${currencyIdA as string}${
|
||||
feeAmount ? '/' + feeAmount : ''
|
||||
}`
|
||||
)
|
||||
}}
|
||||
/>
|
||||
) : null}
|
||||
</RowBetween>
|
||||
|
||||
<OutlineCard padding="12px">
|
||||
<StyledInput
|
||||
className="start-price-input"
|
||||
value={startPriceTypedValue}
|
||||
onUserInput={onStartPriceInput}
|
||||
/>
|
||||
</OutlineCard>
|
||||
<RowBetween style={{ backgroundColor: theme.bg1, padding: '12px', borderRadius: '12px' }}>
|
||||
<TYPE.main>
|
||||
<Trans>Current {baseCurrency?.symbol} Price:</Trans>
|
||||
</TYPE.main>
|
||||
<TYPE.main>
|
||||
{price ? (
|
||||
<TYPE.main>
|
||||
<RowFixed>
|
||||
<HoverInlineText
|
||||
maxCharacters={20}
|
||||
text={invertPrice ? price?.invert()?.toSignificant(5) : price?.toSignificant(5)}
|
||||
/>{' '}
|
||||
<span style={{ marginLeft: '4px' }}>{quoteCurrency?.symbol}</span>
|
||||
</RowFixed>
|
||||
</TYPE.main>
|
||||
) : (
|
||||
'-'
|
||||
)}
|
||||
</TYPE.main>
|
||||
</RowBetween>
|
||||
<BlueCard
|
||||
style={{
|
||||
display: 'flex',
|
||||
flexDirection: 'column',
|
||||
alignItems: 'center',
|
||||
padding: ' 1.5rem 1.25rem',
|
||||
}}
|
||||
>
|
||||
<AlertCircle color={theme.text1} size={32} style={{ marginBottom: '12px', opacity: 0.8 }} />
|
||||
<TYPE.body
|
||||
fontSize={14}
|
||||
style={{ marginBottom: 8, fontWeight: 500, opacity: 0.8 }}
|
||||
textAlign="center"
|
||||
>
|
||||
You are the first liquidity provider for this Uniswap V3 pool.
|
||||
</TYPE.body>
|
||||
|
||||
<TYPE.body fontWeight={500} textAlign="center" fontSize={14} style={{ opacity: 0.8 }}>
|
||||
The transaction cost will be much higher as it includes the gas to create the pool.
|
||||
</TYPE.body>
|
||||
</BlueCard>
|
||||
</AutoColumn>
|
||||
</LightCard>
|
||||
</DynamicSection>
|
||||
)}
|
||||
|
||||
{outOfRange ? (
|
||||
<YellowCard padding="8px 12px" borderRadius="12px">
|
||||
<RowBetween>
|
||||
<AlertTriangle stroke={theme.yellow3} size="16px" />
|
||||
<TYPE.yellow ml="12px" fontSize="12px">
|
||||
<Trans>
|
||||
Your position will not earn fees or be used in trades until the market price moves into your
|
||||
range.
|
||||
</Trans>
|
||||
</TYPE.yellow>
|
||||
</RowBetween>
|
||||
</YellowCard>
|
||||
) : null}
|
||||
|
||||
{invalidRange ? (
|
||||
<YellowCard padding="8px 12px" borderRadius="12px">
|
||||
<RowBetween>
|
||||
<AlertTriangle stroke={theme.yellow3} size="16px" />
|
||||
<TYPE.yellow ml="12px" fontSize="12px">
|
||||
<Trans>Invalid range selected. The min price must be lower than the max price.</Trans>
|
||||
</TYPE.yellow>
|
||||
</RowBetween>
|
||||
</YellowCard>
|
||||
) : null}
|
||||
</DynamicSection>
|
||||
</>
|
||||
)}
|
||||
|
||||
<DynamicSection
|
||||
disabled={tickLower === undefined || tickUpper === undefined || invalidPool || invalidRange}
|
||||
>
|
||||
<AutoColumn gap="md">
|
||||
<TYPE.label>{hasExistingPosition ? 'Add more liquidity' : t`Deposit Amounts`}</TYPE.label>
|
||||
|
||||
<CurrencyInputPanel
|
||||
value={formattedAmounts[Field.CURRENCY_A]}
|
||||
onUserInput={onFieldAInput}
|
||||
onMax={() => {
|
||||
onFieldAInput(maxAmounts[Field.CURRENCY_A]?.toExact() ?? '')
|
||||
}}
|
||||
showMaxButton={!atMaxAmounts[Field.CURRENCY_A]}
|
||||
currency={currencies[Field.CURRENCY_A]}
|
||||
id="add-liquidity-input-tokena"
|
||||
fiatValue={usdcValues[Field.CURRENCY_A]}
|
||||
showCommonBases
|
||||
locked={depositADisabled}
|
||||
/>
|
||||
|
||||
<CurrencyInputPanel
|
||||
value={formattedAmounts[Field.CURRENCY_B]}
|
||||
onUserInput={onFieldBInput}
|
||||
onMax={() => {
|
||||
onFieldBInput(maxAmounts[Field.CURRENCY_B]?.toExact() ?? '')
|
||||
}}
|
||||
showMaxButton={!atMaxAmounts[Field.CURRENCY_B]}
|
||||
fiatValue={usdcValues[Field.CURRENCY_B]}
|
||||
currency={currencies[Field.CURRENCY_B]}
|
||||
id="add-liquidity-input-tokenb"
|
||||
showCommonBases
|
||||
locked={depositBDisabled}
|
||||
/>
|
||||
</AutoColumn>
|
||||
</DynamicSection>
|
||||
<div>
|
||||
{addIsUnsupported ? (
|
||||
<ButtonPrimary disabled={true} borderRadius="12px" padding={'12px'}>
|
||||
<TYPE.main mb="4px">
|
||||
<Trans>Unsupported Asset</Trans>
|
||||
</TYPE.main>
|
||||
</ButtonPrimary>
|
||||
) : !account ? (
|
||||
<ButtonLight onClick={toggleWalletModal} borderRadius="12px" padding={'12px'}>
|
||||
<Trans>Connect wallet</Trans>
|
||||
</ButtonLight>
|
||||
) : (
|
||||
<AutoColumn gap={'md'}>
|
||||
{(approvalA === ApprovalState.NOT_APPROVED ||
|
||||
approvalA === ApprovalState.PENDING ||
|
||||
approvalB === ApprovalState.NOT_APPROVED ||
|
||||
approvalB === ApprovalState.PENDING) &&
|
||||
isValid && (
|
||||
<RowBetween>
|
||||
{showApprovalA && (
|
||||
<ButtonPrimary
|
||||
borderRadius="12px"
|
||||
padding={'12px'}
|
||||
onClick={approveACallback}
|
||||
disabled={approvalA === ApprovalState.PENDING}
|
||||
width={showApprovalB ? '48%' : '100%'}
|
||||
>
|
||||
{approvalA === ApprovalState.PENDING ? (
|
||||
<Dots>
|
||||
<Trans>Approving {currencies[Field.CURRENCY_A]?.symbol}</Trans>
|
||||
</Dots>
|
||||
) : (
|
||||
<Trans>Approve {currencies[Field.CURRENCY_A]?.symbol}</Trans>
|
||||
)}
|
||||
</ButtonPrimary>
|
||||
)}
|
||||
{showApprovalB && (
|
||||
<ButtonPrimary
|
||||
borderRadius="12px"
|
||||
padding={'12px'}
|
||||
onClick={approveBCallback}
|
||||
disabled={approvalB === ApprovalState.PENDING}
|
||||
width={showApprovalA ? '48%' : '100%'}
|
||||
>
|
||||
{approvalB === ApprovalState.PENDING ? (
|
||||
<Dots>
|
||||
<Trans>Approving {currencies[Field.CURRENCY_B]?.symbol}</Trans>
|
||||
</Dots>
|
||||
) : (
|
||||
<Trans>Approve {currencies[Field.CURRENCY_B]?.symbol}</Trans>
|
||||
)}
|
||||
</ButtonPrimary>
|
||||
)}
|
||||
</RowBetween>
|
||||
)}
|
||||
<ButtonError
|
||||
onClick={() => {
|
||||
expertMode ? onAdd() : setShowConfirm(true)
|
||||
}}
|
||||
disabled={
|
||||
!isValid ||
|
||||
(!argentWalletContract && approvalA !== ApprovalState.APPROVED && !depositADisabled) ||
|
||||
(!argentWalletContract && approvalB !== ApprovalState.APPROVED && !depositBDisabled)
|
||||
}
|
||||
error={!isValid && !!parsedAmounts[Field.CURRENCY_A] && !!parsedAmounts[Field.CURRENCY_B]}
|
||||
<DynamicSection
|
||||
gap="md"
|
||||
disabled={!feeAmount || invalidPool || (noLiquidity && !startPriceTypedValue)}
|
||||
>
|
||||
<Text fontWeight={500}>{errorMessage ? errorMessage : <Trans>Add</Trans>}</Text>
|
||||
</ButtonError>
|
||||
</AutoColumn>
|
||||
<RowBetween>
|
||||
<TYPE.label>
|
||||
<Trans>Set Price Range</Trans>
|
||||
</TYPE.label>
|
||||
|
||||
{baseCurrency && quoteCurrency ? (
|
||||
<RateToggle
|
||||
currencyA={baseCurrency}
|
||||
currencyB={quoteCurrency}
|
||||
handleRateToggle={() => {
|
||||
onLeftRangeInput('')
|
||||
onRightRangeInput('')
|
||||
history.push(
|
||||
`/add/${currencyIdB as string}/${currencyIdA as string}${
|
||||
feeAmount ? '/' + feeAmount : ''
|
||||
}`
|
||||
)
|
||||
}}
|
||||
/>
|
||||
) : null}
|
||||
</RowBetween>
|
||||
<TYPE.main fontSize={14} fontWeight={400} style={{ marginBottom: '.5rem', lineHeight: '125%' }}>
|
||||
<Trans>
|
||||
Your liquidity will only earn fees when the market price of the pair is within your range.{' '}
|
||||
<ExternalLink
|
||||
href={'https://docs.uniswap.org/concepts/introduction/liquidity-user-guide#4-set-price-range'}
|
||||
style={{ fontSize: '14px' }}
|
||||
>
|
||||
Need help picking a range?
|
||||
</ExternalLink>
|
||||
</Trans>
|
||||
</TYPE.main>
|
||||
|
||||
<RangeSelector
|
||||
priceLower={priceLower}
|
||||
priceUpper={priceUpper}
|
||||
getDecrementLower={getDecrementLower}
|
||||
getIncrementLower={getIncrementLower}
|
||||
getDecrementUpper={getDecrementUpper}
|
||||
getIncrementUpper={getIncrementUpper}
|
||||
onLeftRangeInput={onLeftRangeInput}
|
||||
onRightRangeInput={onRightRangeInput}
|
||||
currencyA={baseCurrency}
|
||||
currencyB={quoteCurrency}
|
||||
feeAmount={feeAmount}
|
||||
/>
|
||||
|
||||
{price && baseCurrency && quoteCurrency && !noLiquidity && (
|
||||
<LightCard style={{ padding: '12px' }}>
|
||||
<AutoColumn gap="4px">
|
||||
<TYPE.main fontWeight={500} textAlign="center" fontSize={12}>
|
||||
<Trans>Current Price</Trans>
|
||||
</TYPE.main>
|
||||
<TYPE.body fontWeight={500} textAlign="center" fontSize={20}>
|
||||
<HoverInlineText
|
||||
maxCharacters={20}
|
||||
text={invertPrice ? price.invert().toSignificant(6) : price.toSignificant(6)}
|
||||
/>{' '}
|
||||
</TYPE.body>
|
||||
<TYPE.main fontWeight={500} textAlign="center" fontSize={12}>
|
||||
<Trans>
|
||||
{quoteCurrency?.symbol} per {baseCurrency.symbol}
|
||||
</Trans>
|
||||
</TYPE.main>
|
||||
</AutoColumn>
|
||||
</LightCard>
|
||||
)}
|
||||
|
||||
{outOfRange ? (
|
||||
<YellowCard padding="8px 12px" borderRadius="12px">
|
||||
<RowBetween>
|
||||
<AlertTriangle stroke={theme.yellow3} size="16px" />
|
||||
<TYPE.yellow ml="12px" fontSize="12px">
|
||||
<Trans>
|
||||
Your position will not earn fees or be used in trades until the market price moves into
|
||||
your range.
|
||||
</Trans>
|
||||
</TYPE.yellow>
|
||||
</RowBetween>
|
||||
</YellowCard>
|
||||
) : null}
|
||||
|
||||
{invalidRange ? (
|
||||
<YellowCard padding="8px 12px" borderRadius="12px">
|
||||
<RowBetween>
|
||||
<AlertTriangle stroke={theme.yellow3} size="16px" />
|
||||
<TYPE.yellow ml="12px" fontSize="12px">
|
||||
<Trans>Invalid range selected. The min price must be lower than the max price.</Trans>
|
||||
</TYPE.yellow>
|
||||
</RowBetween>
|
||||
</YellowCard>
|
||||
) : null}
|
||||
</DynamicSection>
|
||||
</>
|
||||
)}
|
||||
</div>
|
||||
</AutoColumn>
|
||||
</Wrapper>
|
||||
</AppBody>
|
||||
{addIsUnsupported && (
|
||||
<UnsupportedCurrencyFooter
|
||||
show={addIsUnsupported}
|
||||
currencies={[currencies.CURRENCY_A, currencies.CURRENCY_B]}
|
||||
/>
|
||||
)}
|
||||
</ScrollablePage>
|
||||
|
||||
<DynamicSection
|
||||
disabled={tickLower === undefined || tickUpper === undefined || invalidPool || invalidRange}
|
||||
>
|
||||
<AutoColumn gap="md">
|
||||
<TYPE.label>{hasExistingPosition ? 'Add more liquidity' : t`Deposit Amounts`}</TYPE.label>
|
||||
|
||||
<CurrencyInputPanel
|
||||
value={formattedAmounts[Field.CURRENCY_A]}
|
||||
onUserInput={onFieldAInput}
|
||||
onMax={() => {
|
||||
onFieldAInput(maxAmounts[Field.CURRENCY_A]?.toExact() ?? '')
|
||||
}}
|
||||
showMaxButton={!atMaxAmounts[Field.CURRENCY_A]}
|
||||
currency={currencies[Field.CURRENCY_A]}
|
||||
id="add-liquidity-input-tokena"
|
||||
fiatValue={usdcValues[Field.CURRENCY_A]}
|
||||
showCommonBases
|
||||
locked={depositADisabled}
|
||||
/>
|
||||
|
||||
<CurrencyInputPanel
|
||||
value={formattedAmounts[Field.CURRENCY_B]}
|
||||
onUserInput={onFieldBInput}
|
||||
onMax={() => {
|
||||
onFieldBInput(maxAmounts[Field.CURRENCY_B]?.toExact() ?? '')
|
||||
}}
|
||||
showMaxButton={!atMaxAmounts[Field.CURRENCY_B]}
|
||||
fiatValue={usdcValues[Field.CURRENCY_B]}
|
||||
currency={currencies[Field.CURRENCY_B]}
|
||||
id="add-liquidity-input-tokenb"
|
||||
showCommonBases
|
||||
locked={depositBDisabled}
|
||||
/>
|
||||
</AutoColumn>
|
||||
</DynamicSection>
|
||||
<div>
|
||||
{addIsUnsupported ? (
|
||||
<ButtonPrimary disabled={true} borderRadius="12px" padding={'12px'}>
|
||||
<TYPE.main mb="4px">
|
||||
<Trans>Unsupported Asset</Trans>
|
||||
</TYPE.main>
|
||||
</ButtonPrimary>
|
||||
) : !account ? (
|
||||
<ButtonLight onClick={toggleWalletModal} borderRadius="12px" padding={'12px'}>
|
||||
<Trans>Connect wallet</Trans>
|
||||
</ButtonLight>
|
||||
) : (
|
||||
<AutoColumn gap={'md'}>
|
||||
{(approvalA === ApprovalState.NOT_APPROVED ||
|
||||
approvalA === ApprovalState.PENDING ||
|
||||
approvalB === ApprovalState.NOT_APPROVED ||
|
||||
approvalB === ApprovalState.PENDING) &&
|
||||
isValid && (
|
||||
<RowBetween>
|
||||
{showApprovalA && (
|
||||
<ButtonPrimary
|
||||
onClick={approveACallback}
|
||||
disabled={approvalA === ApprovalState.PENDING}
|
||||
width={showApprovalB ? '48%' : '100%'}
|
||||
>
|
||||
{approvalA === ApprovalState.PENDING ? (
|
||||
<Dots>
|
||||
<Trans>Approving {currencies[Field.CURRENCY_A]?.symbol}</Trans>
|
||||
</Dots>
|
||||
) : (
|
||||
<Trans>Approve {currencies[Field.CURRENCY_A]?.symbol}</Trans>
|
||||
)}
|
||||
</ButtonPrimary>
|
||||
)}
|
||||
{showApprovalB && (
|
||||
<ButtonPrimary
|
||||
onClick={approveBCallback}
|
||||
disabled={approvalB === ApprovalState.PENDING}
|
||||
width={showApprovalA ? '48%' : '100%'}
|
||||
>
|
||||
{approvalB === ApprovalState.PENDING ? (
|
||||
<Dots>
|
||||
<Trans>Approving {currencies[Field.CURRENCY_B]?.symbol}</Trans>
|
||||
</Dots>
|
||||
) : (
|
||||
<Trans>Approve {currencies[Field.CURRENCY_B]?.symbol}</Trans>
|
||||
)}
|
||||
</ButtonPrimary>
|
||||
)}
|
||||
</RowBetween>
|
||||
)}
|
||||
<ButtonError
|
||||
onClick={() => {
|
||||
expertMode ? onAdd() : setShowConfirm(true)
|
||||
}}
|
||||
disabled={
|
||||
!isValid ||
|
||||
(!argentWalletContract && approvalA !== ApprovalState.APPROVED && !depositADisabled) ||
|
||||
(!argentWalletContract && approvalB !== ApprovalState.APPROVED && !depositBDisabled)
|
||||
}
|
||||
error={!isValid && !!parsedAmounts[Field.CURRENCY_A] && !!parsedAmounts[Field.CURRENCY_B]}
|
||||
>
|
||||
<Text fontWeight={500}>{errorMessage ? errorMessage : <Trans>Add</Trans>}</Text>
|
||||
</ButtonError>
|
||||
</AutoColumn>
|
||||
)}
|
||||
</div>
|
||||
</AutoColumn>
|
||||
</Wrapper>
|
||||
</AppBody>
|
||||
{addIsUnsupported && (
|
||||
<UnsupportedCurrencyFooter
|
||||
show={addIsUnsupported}
|
||||
currencies={[currencies.CURRENCY_A, currencies.CURRENCY_B]}
|
||||
/>
|
||||
)}
|
||||
</ScrollablePage>
|
||||
<SwitchLocaleLink />
|
||||
</>
|
||||
)
|
||||
}
|
||||
|
||||
@@ -42,6 +42,7 @@ import { ConfirmAddModalBottom } from './ConfirmAddModalBottom'
|
||||
import { currencyId } from '../../utils/currencyId'
|
||||
import { PoolPriceBar } from './PoolPriceBar'
|
||||
import UnsupportedCurrencyFooter from 'components/swap/UnsupportedCurrencyFooter'
|
||||
import { SwitchLocaleLink } from 'components/SwitchLocaleLink'
|
||||
import { t, Trans } from '@lingui/macro'
|
||||
|
||||
const DEFAULT_ADD_V2_SLIPPAGE_TOLERANCE = new Percent(50, 10_000)
|
||||
@@ -485,6 +486,8 @@ export default function AddLiquidity({
|
||||
</AutoColumn>
|
||||
</Wrapper>
|
||||
</AppBody>
|
||||
<SwitchLocaleLink />
|
||||
|
||||
{!addIsUnsupported ? (
|
||||
pair && !noLiquidity && pairState !== PairState.INVALID ? (
|
||||
<AutoColumn style={{ minWidth: '20rem', width: '100%', maxWidth: '400px', marginTop: '1rem' }}>
|
||||
|
||||
@@ -87,7 +87,7 @@ export default function App() {
|
||||
<Web3ReactManager>
|
||||
<Switch>
|
||||
<Route exact strict path="/vote" component={Vote} />
|
||||
<Route exact strict path="/vote/:id" component={VotePage} />
|
||||
<Route exact strict path="/vote/:governorIndex/:id" component={VotePage} />
|
||||
<Route exact strict path="/claim" component={OpenClaimAddressModalAndRedirectToSwap} />
|
||||
<Route exact strict path="/uni" component={Earn} />
|
||||
<Route exact strict path="/uni/:currencyIdA/:currencyIdB" component={Manage} />
|
||||
|
||||
@@ -16,6 +16,7 @@ import { Dots } from '../../components/swap/styleds'
|
||||
import { toV2LiquidityToken, useTrackedTokenPairs } from '../../state/user/hooks'
|
||||
import MigrateV2PositionCard from 'components/PositionCard/V2'
|
||||
import MigrateSushiPositionCard from 'components/PositionCard/Sushi'
|
||||
import { SwitchLocaleLink } from 'components/SwitchLocaleLink'
|
||||
import { PairState, useV2Pairs } from 'hooks/useV2Pairs'
|
||||
import { getCreate2Address } from '@ethersproject/address'
|
||||
import { pack, keccak256 } from '@ethersproject/solidity'
|
||||
@@ -110,73 +111,76 @@ export default function MigrateV2() {
|
||||
const v2IsLoading = fetchingPairBalances || v2Pairs.some(([pairState]) => pairState === PairState.LOADING)
|
||||
|
||||
return (
|
||||
<BodyWrapper style={{ padding: 24 }}>
|
||||
<AutoColumn gap="16px">
|
||||
<AutoRow style={{ alignItems: 'center', justifyContent: 'space-between' }} gap="8px">
|
||||
<BackArrow to="/pool/v2" />
|
||||
<TYPE.mediumHeader>
|
||||
<Trans>Migrate V2 Liquidity</Trans>
|
||||
</TYPE.mediumHeader>
|
||||
<div>
|
||||
<QuestionHelper text={<Trans>Migrate your liquidity tokens from Uniswap V2 to Uniswap V3.</Trans>} />
|
||||
</div>
|
||||
</AutoRow>
|
||||
<>
|
||||
<BodyWrapper style={{ padding: 24 }}>
|
||||
<AutoColumn gap="16px">
|
||||
<AutoRow style={{ alignItems: 'center', justifyContent: 'space-between' }} gap="8px">
|
||||
<BackArrow to="/pool/v2" />
|
||||
<TYPE.mediumHeader>
|
||||
<Trans>Migrate V2 Liquidity</Trans>
|
||||
</TYPE.mediumHeader>
|
||||
<div>
|
||||
<QuestionHelper text={<Trans>Migrate your liquidity tokens from Uniswap V2 to Uniswap V3.</Trans>} />
|
||||
</div>
|
||||
</AutoRow>
|
||||
|
||||
<TYPE.body style={{ marginBottom: 8, fontWeight: 400 }}>
|
||||
<Trans>
|
||||
For each pool shown below, click migrate to remove your liquidity from Uniswap V2 and deposit it into
|
||||
Uniswap V3.
|
||||
</Trans>
|
||||
</TYPE.body>
|
||||
|
||||
{!account ? (
|
||||
<LightCard padding="40px">
|
||||
<TYPE.body color={theme.text3} textAlign="center">
|
||||
<Trans>Connect to a wallet to view your V2 liquidity.</Trans>
|
||||
</TYPE.body>
|
||||
</LightCard>
|
||||
) : v2IsLoading ? (
|
||||
<LightCard padding="40px">
|
||||
<TYPE.body color={theme.text3} textAlign="center">
|
||||
<Dots>
|
||||
<Trans>Loading</Trans>
|
||||
</Dots>
|
||||
</TYPE.body>
|
||||
</LightCard>
|
||||
) : v2Pairs.filter(([, pair]) => !!pair).length > 0 ? (
|
||||
<>
|
||||
{v2Pairs
|
||||
.filter(([, pair]) => !!pair)
|
||||
.map(([, pair]) => (
|
||||
<MigrateV2PositionCard key={(pair as Pair).liquidityToken.address} pair={pair as Pair} />
|
||||
))}
|
||||
|
||||
{tokenPairsWithSushiBalance.map(({ sushiLiquidityToken, tokens }) => {
|
||||
return (
|
||||
<MigrateSushiPositionCard
|
||||
key={(sushiLiquidityToken as Token).address}
|
||||
tokenA={tokens[0]}
|
||||
tokenB={tokens[1]}
|
||||
liquidityToken={sushiLiquidityToken as Token}
|
||||
/>
|
||||
)
|
||||
})}
|
||||
</>
|
||||
) : (
|
||||
<EmptyState message={<Trans>No V2 Liquidity found.</Trans>} />
|
||||
)}
|
||||
|
||||
<AutoColumn justify={'center'} gap="md">
|
||||
<Text textAlign="center" fontSize={14} style={{ padding: '.5rem 0 .5rem 0' }}>
|
||||
<TYPE.body style={{ marginBottom: 8, fontWeight: 400 }}>
|
||||
<Trans>
|
||||
Don’t see one of your v2 positions?{' '}
|
||||
<StyledInternalLink id="import-pool-link" to={'/find?origin=/migrate/v2'}>
|
||||
Import it.
|
||||
</StyledInternalLink>
|
||||
For each pool shown below, click migrate to remove your liquidity from Uniswap V2 and deposit it into
|
||||
Uniswap V3.
|
||||
</Trans>
|
||||
</Text>
|
||||
</TYPE.body>
|
||||
|
||||
{!account ? (
|
||||
<LightCard padding="40px">
|
||||
<TYPE.body color={theme.text3} textAlign="center">
|
||||
<Trans>Connect to a wallet to view your V2 liquidity.</Trans>
|
||||
</TYPE.body>
|
||||
</LightCard>
|
||||
) : v2IsLoading ? (
|
||||
<LightCard padding="40px">
|
||||
<TYPE.body color={theme.text3} textAlign="center">
|
||||
<Dots>
|
||||
<Trans>Loading</Trans>
|
||||
</Dots>
|
||||
</TYPE.body>
|
||||
</LightCard>
|
||||
) : v2Pairs.filter(([, pair]) => !!pair).length > 0 ? (
|
||||
<>
|
||||
{v2Pairs
|
||||
.filter(([, pair]) => !!pair)
|
||||
.map(([, pair]) => (
|
||||
<MigrateV2PositionCard key={(pair as Pair).liquidityToken.address} pair={pair as Pair} />
|
||||
))}
|
||||
|
||||
{tokenPairsWithSushiBalance.map(({ sushiLiquidityToken, tokens }) => {
|
||||
return (
|
||||
<MigrateSushiPositionCard
|
||||
key={(sushiLiquidityToken as Token).address}
|
||||
tokenA={tokens[0]}
|
||||
tokenB={tokens[1]}
|
||||
liquidityToken={sushiLiquidityToken as Token}
|
||||
/>
|
||||
)
|
||||
})}
|
||||
</>
|
||||
) : (
|
||||
<EmptyState message={<Trans>No V2 Liquidity found.</Trans>} />
|
||||
)}
|
||||
|
||||
<AutoColumn justify={'center'} gap="md">
|
||||
<Text textAlign="center" fontSize={14} style={{ padding: '.5rem 0 .5rem 0' }}>
|
||||
<Trans>
|
||||
Don’t see one of your v2 positions?{' '}
|
||||
<StyledInternalLink id="import-pool-link" to={'/find?origin=/migrate/v2'}>
|
||||
Import it.
|
||||
</StyledInternalLink>
|
||||
</Trans>
|
||||
</Text>
|
||||
</AutoColumn>
|
||||
</AutoColumn>
|
||||
</AutoColumn>
|
||||
</BodyWrapper>
|
||||
</BodyWrapper>
|
||||
<SwitchLocaleLink />
|
||||
</>
|
||||
)
|
||||
}
|
||||
|
||||
@@ -37,6 +37,7 @@ import useTheme from '../../hooks/useTheme'
|
||||
import RateToggle from '../../components/RateToggle'
|
||||
import { useSingleCallResult } from 'state/multicall/hooks'
|
||||
import RangeBadge from '../../components/Badge/RangeBadge'
|
||||
import { SwitchLocaleLink } from '../../components/SwitchLocaleLink'
|
||||
import useUSDCPrice from 'hooks/useUSDCPrice'
|
||||
import Loader from 'components/Loader'
|
||||
import Toggle from 'components/Toggle'
|
||||
@@ -495,338 +496,341 @@ export function PositionPage({
|
||||
<div />
|
||||
</LoadingRows>
|
||||
) : (
|
||||
<PageWrapper>
|
||||
<TransactionConfirmationModal
|
||||
isOpen={showConfirm}
|
||||
onDismiss={() => setShowConfirm(false)}
|
||||
attemptingTxn={collecting}
|
||||
hash={collectMigrationHash ?? ''}
|
||||
content={() => (
|
||||
<ConfirmationModalContent
|
||||
title={<Trans>Claim fees</Trans>}
|
||||
onDismiss={() => setShowConfirm(false)}
|
||||
topContent={modalHeader}
|
||||
/>
|
||||
)}
|
||||
pendingText={<Trans>Collecting fees</Trans>}
|
||||
/>
|
||||
<AutoColumn gap="md">
|
||||
<AutoColumn gap="sm">
|
||||
<Link style={{ textDecoration: 'none', width: 'fit-content', marginBottom: '0.5rem' }} to="/pool">
|
||||
<HoverText>
|
||||
<Trans>← Back to Pools Overview</Trans>
|
||||
</HoverText>
|
||||
</Link>
|
||||
<ResponsiveRow>
|
||||
<RowFixed>
|
||||
<DoubleCurrencyLogo currency0={currencyBase} currency1={currencyQuote} size={24} margin={true} />
|
||||
<TYPE.label fontSize={'24px'} mr="10px">
|
||||
{currencyQuote?.symbol} / {currencyBase?.symbol}
|
||||
</TYPE.label>
|
||||
<Badge style={{ marginRight: '8px' }}>
|
||||
<BadgeText>
|
||||
<Trans>{new Percent(feeAmount, 1_000_000).toSignificant()}%</Trans>
|
||||
</BadgeText>
|
||||
</Badge>
|
||||
<RangeBadge removed={removed} inRange={inRange} />
|
||||
</RowFixed>
|
||||
{ownsNFT && (
|
||||
<RowFixed>
|
||||
{currency0 && currency1 && feeAmount && tokenId ? (
|
||||
<ButtonGray
|
||||
as={Link}
|
||||
to={`/increase/${currencyId(currency0)}/${currencyId(currency1)}/${feeAmount}/${tokenId}`}
|
||||
width="fit-content"
|
||||
padding="6px 8px"
|
||||
borderRadius="12px"
|
||||
style={{ marginRight: '8px' }}
|
||||
>
|
||||
<Trans>Increase Liquidity</Trans>
|
||||
</ButtonGray>
|
||||
) : null}
|
||||
{tokenId && !removed ? (
|
||||
<ResponsiveButtonPrimary
|
||||
as={Link}
|
||||
to={`/remove/${tokenId}`}
|
||||
width="fit-content"
|
||||
padding="6px 8px"
|
||||
borderRadius="12px"
|
||||
>
|
||||
<Trans>Remove Liquidity</Trans>
|
||||
</ResponsiveButtonPrimary>
|
||||
) : null}
|
||||
</RowFixed>
|
||||
)}
|
||||
</ResponsiveRow>
|
||||
<RowBetween></RowBetween>
|
||||
</AutoColumn>
|
||||
<ResponsiveRow align="flex-start">
|
||||
{'result' in metadata ? (
|
||||
<DarkCard
|
||||
width="100%"
|
||||
height="100%"
|
||||
style={{
|
||||
display: 'flex',
|
||||
alignItems: 'center',
|
||||
flexDirection: 'column',
|
||||
justifyContent: 'space-around',
|
||||
marginRight: '12px',
|
||||
}}
|
||||
>
|
||||
<div style={{ marginRight: 12 }}>
|
||||
<NFT image={metadata.result.image} height={400} />
|
||||
</div>
|
||||
{typeof chainId === 'number' && owner && !ownsNFT ? (
|
||||
<ExternalLink href={getExplorerLink(chainId, owner, ExplorerDataType.ADDRESS)}>
|
||||
<Trans>Owner</Trans>
|
||||
</ExternalLink>
|
||||
) : null}
|
||||
</DarkCard>
|
||||
) : (
|
||||
<DarkCard
|
||||
width="100%"
|
||||
height="100%"
|
||||
style={{
|
||||
marginRight: '12px',
|
||||
minWidth: '340px',
|
||||
}}
|
||||
>
|
||||
<Loader />
|
||||
</DarkCard>
|
||||
)}
|
||||
<AutoColumn gap="sm" style={{ width: '100%', height: '100%' }}>
|
||||
<DarkCard>
|
||||
<AutoColumn gap="md" style={{ width: '100%' }}>
|
||||
<AutoColumn gap="md">
|
||||
<Label>
|
||||
<Trans>Liquidity</Trans>
|
||||
</Label>
|
||||
{fiatValueOfLiquidity?.greaterThan(new Fraction(1, 100)) ? (
|
||||
<TYPE.largeHeader fontSize="36px" fontWeight={500}>
|
||||
<Trans>${fiatValueOfLiquidity.toFixed(2, { groupSeparator: ',' })}</Trans>
|
||||
</TYPE.largeHeader>
|
||||
) : (
|
||||
<TYPE.largeHeader color={theme.text1} fontSize="36px" fontWeight={500}>
|
||||
<Trans>$-</Trans>
|
||||
</TYPE.largeHeader>
|
||||
)}
|
||||
</AutoColumn>
|
||||
<LightCard padding="12px 16px">
|
||||
<AutoColumn gap="md">
|
||||
<RowBetween>
|
||||
<LinkedCurrency chainId={chainId} currency={currencyQuote} />
|
||||
<RowFixed>
|
||||
<TYPE.main>
|
||||
{inverted ? position?.amount0.toSignificant(4) : position?.amount1.toSignificant(4)}
|
||||
</TYPE.main>
|
||||
{typeof ratio === 'number' && !removed ? (
|
||||
<Badge style={{ marginLeft: '10px' }}>
|
||||
<TYPE.main fontSize={11}>
|
||||
<Trans>{inverted ? ratio : 100 - ratio}%</Trans>
|
||||
</TYPE.main>
|
||||
</Badge>
|
||||
) : null}
|
||||
</RowFixed>
|
||||
</RowBetween>
|
||||
<RowBetween>
|
||||
<LinkedCurrency chainId={chainId} currency={currencyBase} />
|
||||
<RowFixed>
|
||||
<TYPE.main>
|
||||
{inverted ? position?.amount1.toSignificant(4) : position?.amount0.toSignificant(4)}
|
||||
</TYPE.main>
|
||||
{typeof ratio === 'number' && !removed ? (
|
||||
<Badge style={{ marginLeft: '10px' }}>
|
||||
<TYPE.main color={theme.text2} fontSize={11}>
|
||||
<Trans>{inverted ? 100 - ratio : ratio}%</Trans>
|
||||
</TYPE.main>
|
||||
</Badge>
|
||||
) : null}
|
||||
</RowFixed>
|
||||
</RowBetween>
|
||||
</AutoColumn>
|
||||
</LightCard>
|
||||
</AutoColumn>
|
||||
</DarkCard>
|
||||
<DarkCard>
|
||||
<AutoColumn gap="md" style={{ width: '100%' }}>
|
||||
<AutoColumn gap="md">
|
||||
<RowBetween style={{ alignItems: 'flex-start' }}>
|
||||
<AutoColumn gap="md">
|
||||
<Label>
|
||||
<Trans>Unclaimed fees</Trans>
|
||||
</Label>
|
||||
{fiatValueOfFees?.greaterThan(new Fraction(1, 100)) ? (
|
||||
<TYPE.largeHeader color={theme.green1} fontSize="36px" fontWeight={500}>
|
||||
<Trans>${fiatValueOfFees.toFixed(2, { groupSeparator: ',' })}</Trans>
|
||||
</TYPE.largeHeader>
|
||||
) : (
|
||||
<TYPE.largeHeader color={theme.text1} fontSize="36px" fontWeight={500}>
|
||||
<Trans>$-</Trans>
|
||||
</TYPE.largeHeader>
|
||||
)}
|
||||
</AutoColumn>
|
||||
{ownsNFT && (feeValue0?.greaterThan(0) || feeValue1?.greaterThan(0) || !!collectMigrationHash) ? (
|
||||
<ButtonConfirmed
|
||||
disabled={collecting || !!collectMigrationHash}
|
||||
confirmed={!!collectMigrationHash && !isCollectPending}
|
||||
width="fit-content"
|
||||
style={{ borderRadius: '12px' }}
|
||||
padding="4px 8px"
|
||||
onClick={() => setShowConfirm(true)}
|
||||
>
|
||||
{!!collectMigrationHash && !isCollectPending ? (
|
||||
<TYPE.main color={theme.text1}>
|
||||
<Trans> Collected</Trans>
|
||||
</TYPE.main>
|
||||
) : isCollectPending || collecting ? (
|
||||
<TYPE.main color={theme.text1}>
|
||||
{' '}
|
||||
<Dots>
|
||||
<Trans>Collecting</Trans>
|
||||
</Dots>
|
||||
</TYPE.main>
|
||||
) : (
|
||||
<>
|
||||
<TYPE.main color={theme.white}>
|
||||
<Trans>Collect fees</Trans>
|
||||
</TYPE.main>
|
||||
</>
|
||||
)}
|
||||
</ButtonConfirmed>
|
||||
) : null}
|
||||
</RowBetween>
|
||||
</AutoColumn>
|
||||
<LightCard padding="12px 16px">
|
||||
<AutoColumn gap="md">
|
||||
<RowBetween>
|
||||
<RowFixed>
|
||||
<CurrencyLogo
|
||||
currency={feeValueUpper?.currency}
|
||||
size={'20px'}
|
||||
style={{ marginRight: '0.5rem' }}
|
||||
/>
|
||||
<TYPE.main>{feeValueUpper?.currency?.symbol}</TYPE.main>
|
||||
</RowFixed>
|
||||
<RowFixed>
|
||||
<TYPE.main>{feeValueUpper ? formatCurrencyAmount(feeValueUpper, 4) : '-'}</TYPE.main>
|
||||
</RowFixed>
|
||||
</RowBetween>
|
||||
<RowBetween>
|
||||
<RowFixed>
|
||||
<CurrencyLogo
|
||||
currency={feeValueLower?.currency}
|
||||
size={'20px'}
|
||||
style={{ marginRight: '0.5rem' }}
|
||||
/>
|
||||
<TYPE.main>{feeValueLower?.currency?.symbol}</TYPE.main>
|
||||
</RowFixed>
|
||||
<RowFixed>
|
||||
<TYPE.main>{feeValueLower ? formatCurrencyAmount(feeValueLower, 4) : '-'}</TYPE.main>
|
||||
</RowFixed>
|
||||
</RowBetween>
|
||||
</AutoColumn>
|
||||
</LightCard>
|
||||
{ownsNFT &&
|
||||
(feeValue0?.greaterThan(0) || feeValue1?.greaterThan(0)) &&
|
||||
currency0 &&
|
||||
currency1 &&
|
||||
(currency0.isNative || currency1.isNative) &&
|
||||
!collectMigrationHash ? (
|
||||
<AutoColumn gap="md">
|
||||
<RowBetween>
|
||||
<TYPE.main>
|
||||
<Trans>Collect as WETH</Trans>
|
||||
</TYPE.main>
|
||||
<Toggle
|
||||
id="receive-as-weth"
|
||||
isActive={receiveWETH}
|
||||
toggle={() => setReceiveWETH((receiveWETH) => !receiveWETH)}
|
||||
/>
|
||||
</RowBetween>
|
||||
</AutoColumn>
|
||||
) : null}
|
||||
</AutoColumn>
|
||||
</DarkCard>
|
||||
</AutoColumn>
|
||||
</ResponsiveRow>
|
||||
<DarkCard>
|
||||
<AutoColumn gap="md">
|
||||
<RowBetween>
|
||||
<RowFixed>
|
||||
<Label display="flex" style={{ marginRight: '12px' }}>
|
||||
<Trans>Price range</Trans>
|
||||
</Label>
|
||||
<HideExtraSmall>
|
||||
<>
|
||||
<RangeBadge removed={removed} inRange={inRange} />
|
||||
<span style={{ width: '8px' }} />
|
||||
</>
|
||||
</HideExtraSmall>
|
||||
</RowFixed>
|
||||
<RowFixed>
|
||||
{currencyBase && currencyQuote && (
|
||||
<RateToggle
|
||||
currencyA={currencyBase}
|
||||
currencyB={currencyQuote}
|
||||
handleRateToggle={() => setManuallyInverted(!manuallyInverted)}
|
||||
/>
|
||||
)}
|
||||
</RowFixed>
|
||||
</RowBetween>
|
||||
|
||||
<RowBetween>
|
||||
<LightCard padding="12px" width="100%">
|
||||
<AutoColumn gap="8px" justify="center">
|
||||
<ExtentsText>
|
||||
<Trans>Min price</Trans>
|
||||
</ExtentsText>
|
||||
<TYPE.mediumHeader textAlign="center">{priceLower?.toSignificant(5)}</TYPE.mediumHeader>
|
||||
<ExtentsText>
|
||||
{' '}
|
||||
<Trans>
|
||||
{currencyQuote?.symbol} per {currencyBase?.symbol}
|
||||
</Trans>
|
||||
</ExtentsText>
|
||||
|
||||
{inRange && (
|
||||
<TYPE.small color={theme.text3}>
|
||||
<Trans>Your position will be 100% {currencyBase?.symbol} at this price.</Trans>
|
||||
</TYPE.small>
|
||||
)}
|
||||
</AutoColumn>
|
||||
</LightCard>
|
||||
|
||||
<DoubleArrow>⟷</DoubleArrow>
|
||||
<LightCard padding="12px" width="100%">
|
||||
<AutoColumn gap="8px" justify="center">
|
||||
<ExtentsText>
|
||||
<Trans>Max price</Trans>
|
||||
</ExtentsText>
|
||||
<TYPE.mediumHeader textAlign="center">{priceUpper?.toSignificant(5)}</TYPE.mediumHeader>
|
||||
<ExtentsText>
|
||||
{' '}
|
||||
<Trans>
|
||||
{currencyQuote?.symbol} per {currencyBase?.symbol}
|
||||
</Trans>
|
||||
</ExtentsText>
|
||||
|
||||
{inRange && (
|
||||
<TYPE.small color={theme.text3}>
|
||||
<Trans>Your position will be 100% {currencyQuote?.symbol} at this price.</Trans>
|
||||
</TYPE.small>
|
||||
)}
|
||||
</AutoColumn>
|
||||
</LightCard>
|
||||
</RowBetween>
|
||||
<CurrentPriceCard
|
||||
inverted={inverted}
|
||||
pool={pool}
|
||||
currencyQuote={currencyQuote}
|
||||
currencyBase={currencyBase}
|
||||
<>
|
||||
<PageWrapper>
|
||||
<TransactionConfirmationModal
|
||||
isOpen={showConfirm}
|
||||
onDismiss={() => setShowConfirm(false)}
|
||||
attemptingTxn={collecting}
|
||||
hash={collectMigrationHash ?? ''}
|
||||
content={() => (
|
||||
<ConfirmationModalContent
|
||||
title={<Trans>Claim fees</Trans>}
|
||||
onDismiss={() => setShowConfirm(false)}
|
||||
topContent={modalHeader}
|
||||
/>
|
||||
)}
|
||||
pendingText={<Trans>Collecting fees</Trans>}
|
||||
/>
|
||||
<AutoColumn gap="md">
|
||||
<AutoColumn gap="sm">
|
||||
<Link style={{ textDecoration: 'none', width: 'fit-content', marginBottom: '0.5rem' }} to="/pool">
|
||||
<HoverText>
|
||||
<Trans>← Back to Pools Overview</Trans>
|
||||
</HoverText>
|
||||
</Link>
|
||||
<ResponsiveRow>
|
||||
<RowFixed>
|
||||
<DoubleCurrencyLogo currency0={currencyBase} currency1={currencyQuote} size={24} margin={true} />
|
||||
<TYPE.label fontSize={'24px'} mr="10px">
|
||||
{currencyQuote?.symbol} / {currencyBase?.symbol}
|
||||
</TYPE.label>
|
||||
<Badge style={{ marginRight: '8px' }}>
|
||||
<BadgeText>
|
||||
<Trans>{new Percent(feeAmount, 1_000_000).toSignificant()}%</Trans>
|
||||
</BadgeText>
|
||||
</Badge>
|
||||
<RangeBadge removed={removed} inRange={inRange} />
|
||||
</RowFixed>
|
||||
{ownsNFT && (
|
||||
<RowFixed>
|
||||
{currency0 && currency1 && feeAmount && tokenId ? (
|
||||
<ButtonGray
|
||||
as={Link}
|
||||
to={`/increase/${currencyId(currency0)}/${currencyId(currency1)}/${feeAmount}/${tokenId}`}
|
||||
width="fit-content"
|
||||
padding="6px 8px"
|
||||
borderRadius="12px"
|
||||
style={{ marginRight: '8px' }}
|
||||
>
|
||||
<Trans>Increase Liquidity</Trans>
|
||||
</ButtonGray>
|
||||
) : null}
|
||||
{tokenId && !removed ? (
|
||||
<ResponsiveButtonPrimary
|
||||
as={Link}
|
||||
to={`/remove/${tokenId}`}
|
||||
width="fit-content"
|
||||
padding="6px 8px"
|
||||
borderRadius="12px"
|
||||
>
|
||||
<Trans>Remove Liquidity</Trans>
|
||||
</ResponsiveButtonPrimary>
|
||||
) : null}
|
||||
</RowFixed>
|
||||
)}
|
||||
</ResponsiveRow>
|
||||
<RowBetween></RowBetween>
|
||||
</AutoColumn>
|
||||
</DarkCard>
|
||||
</AutoColumn>
|
||||
</PageWrapper>
|
||||
<ResponsiveRow align="flex-start">
|
||||
{'result' in metadata ? (
|
||||
<DarkCard
|
||||
width="100%"
|
||||
height="100%"
|
||||
style={{
|
||||
display: 'flex',
|
||||
alignItems: 'center',
|
||||
flexDirection: 'column',
|
||||
justifyContent: 'space-around',
|
||||
marginRight: '12px',
|
||||
}}
|
||||
>
|
||||
<div style={{ marginRight: 12 }}>
|
||||
<NFT image={metadata.result.image} height={400} />
|
||||
</div>
|
||||
{typeof chainId === 'number' && owner && !ownsNFT ? (
|
||||
<ExternalLink href={getExplorerLink(chainId, owner, ExplorerDataType.ADDRESS)}>
|
||||
<Trans>Owner</Trans>
|
||||
</ExternalLink>
|
||||
) : null}
|
||||
</DarkCard>
|
||||
) : (
|
||||
<DarkCard
|
||||
width="100%"
|
||||
height="100%"
|
||||
style={{
|
||||
marginRight: '12px',
|
||||
minWidth: '340px',
|
||||
}}
|
||||
>
|
||||
<Loader />
|
||||
</DarkCard>
|
||||
)}
|
||||
<AutoColumn gap="sm" style={{ width: '100%', height: '100%' }}>
|
||||
<DarkCard>
|
||||
<AutoColumn gap="md" style={{ width: '100%' }}>
|
||||
<AutoColumn gap="md">
|
||||
<Label>
|
||||
<Trans>Liquidity</Trans>
|
||||
</Label>
|
||||
{fiatValueOfLiquidity?.greaterThan(new Fraction(1, 100)) ? (
|
||||
<TYPE.largeHeader fontSize="36px" fontWeight={500}>
|
||||
<Trans>${fiatValueOfLiquidity.toFixed(2, { groupSeparator: ',' })}</Trans>
|
||||
</TYPE.largeHeader>
|
||||
) : (
|
||||
<TYPE.largeHeader color={theme.text1} fontSize="36px" fontWeight={500}>
|
||||
<Trans>$-</Trans>
|
||||
</TYPE.largeHeader>
|
||||
)}
|
||||
</AutoColumn>
|
||||
<LightCard padding="12px 16px">
|
||||
<AutoColumn gap="md">
|
||||
<RowBetween>
|
||||
<LinkedCurrency chainId={chainId} currency={currencyQuote} />
|
||||
<RowFixed>
|
||||
<TYPE.main>
|
||||
{inverted ? position?.amount0.toSignificant(4) : position?.amount1.toSignificant(4)}
|
||||
</TYPE.main>
|
||||
{typeof ratio === 'number' && !removed ? (
|
||||
<Badge style={{ marginLeft: '10px' }}>
|
||||
<TYPE.main fontSize={11}>
|
||||
<Trans>{inverted ? ratio : 100 - ratio}%</Trans>
|
||||
</TYPE.main>
|
||||
</Badge>
|
||||
) : null}
|
||||
</RowFixed>
|
||||
</RowBetween>
|
||||
<RowBetween>
|
||||
<LinkedCurrency chainId={chainId} currency={currencyBase} />
|
||||
<RowFixed>
|
||||
<TYPE.main>
|
||||
{inverted ? position?.amount1.toSignificant(4) : position?.amount0.toSignificant(4)}
|
||||
</TYPE.main>
|
||||
{typeof ratio === 'number' && !removed ? (
|
||||
<Badge style={{ marginLeft: '10px' }}>
|
||||
<TYPE.main color={theme.text2} fontSize={11}>
|
||||
<Trans>{inverted ? 100 - ratio : ratio}%</Trans>
|
||||
</TYPE.main>
|
||||
</Badge>
|
||||
) : null}
|
||||
</RowFixed>
|
||||
</RowBetween>
|
||||
</AutoColumn>
|
||||
</LightCard>
|
||||
</AutoColumn>
|
||||
</DarkCard>
|
||||
<DarkCard>
|
||||
<AutoColumn gap="md" style={{ width: '100%' }}>
|
||||
<AutoColumn gap="md">
|
||||
<RowBetween style={{ alignItems: 'flex-start' }}>
|
||||
<AutoColumn gap="md">
|
||||
<Label>
|
||||
<Trans>Unclaimed fees</Trans>
|
||||
</Label>
|
||||
{fiatValueOfFees?.greaterThan(new Fraction(1, 100)) ? (
|
||||
<TYPE.largeHeader color={theme.green1} fontSize="36px" fontWeight={500}>
|
||||
<Trans>${fiatValueOfFees.toFixed(2, { groupSeparator: ',' })}</Trans>
|
||||
</TYPE.largeHeader>
|
||||
) : (
|
||||
<TYPE.largeHeader color={theme.text1} fontSize="36px" fontWeight={500}>
|
||||
<Trans>$-</Trans>
|
||||
</TYPE.largeHeader>
|
||||
)}
|
||||
</AutoColumn>
|
||||
{ownsNFT && (feeValue0?.greaterThan(0) || feeValue1?.greaterThan(0) || !!collectMigrationHash) ? (
|
||||
<ButtonConfirmed
|
||||
disabled={collecting || !!collectMigrationHash}
|
||||
confirmed={!!collectMigrationHash && !isCollectPending}
|
||||
width="fit-content"
|
||||
style={{ borderRadius: '12px' }}
|
||||
padding="4px 8px"
|
||||
onClick={() => setShowConfirm(true)}
|
||||
>
|
||||
{!!collectMigrationHash && !isCollectPending ? (
|
||||
<TYPE.main color={theme.text1}>
|
||||
<Trans> Collected</Trans>
|
||||
</TYPE.main>
|
||||
) : isCollectPending || collecting ? (
|
||||
<TYPE.main color={theme.text1}>
|
||||
{' '}
|
||||
<Dots>
|
||||
<Trans>Collecting</Trans>
|
||||
</Dots>
|
||||
</TYPE.main>
|
||||
) : (
|
||||
<>
|
||||
<TYPE.main color={theme.white}>
|
||||
<Trans>Collect fees</Trans>
|
||||
</TYPE.main>
|
||||
</>
|
||||
)}
|
||||
</ButtonConfirmed>
|
||||
) : null}
|
||||
</RowBetween>
|
||||
</AutoColumn>
|
||||
<LightCard padding="12px 16px">
|
||||
<AutoColumn gap="md">
|
||||
<RowBetween>
|
||||
<RowFixed>
|
||||
<CurrencyLogo
|
||||
currency={feeValueUpper?.currency}
|
||||
size={'20px'}
|
||||
style={{ marginRight: '0.5rem' }}
|
||||
/>
|
||||
<TYPE.main>{feeValueUpper?.currency?.symbol}</TYPE.main>
|
||||
</RowFixed>
|
||||
<RowFixed>
|
||||
<TYPE.main>{feeValueUpper ? formatCurrencyAmount(feeValueUpper, 4) : '-'}</TYPE.main>
|
||||
</RowFixed>
|
||||
</RowBetween>
|
||||
<RowBetween>
|
||||
<RowFixed>
|
||||
<CurrencyLogo
|
||||
currency={feeValueLower?.currency}
|
||||
size={'20px'}
|
||||
style={{ marginRight: '0.5rem' }}
|
||||
/>
|
||||
<TYPE.main>{feeValueLower?.currency?.symbol}</TYPE.main>
|
||||
</RowFixed>
|
||||
<RowFixed>
|
||||
<TYPE.main>{feeValueLower ? formatCurrencyAmount(feeValueLower, 4) : '-'}</TYPE.main>
|
||||
</RowFixed>
|
||||
</RowBetween>
|
||||
</AutoColumn>
|
||||
</LightCard>
|
||||
{ownsNFT &&
|
||||
(feeValue0?.greaterThan(0) || feeValue1?.greaterThan(0)) &&
|
||||
currency0 &&
|
||||
currency1 &&
|
||||
(currency0.isNative || currency1.isNative) &&
|
||||
!collectMigrationHash ? (
|
||||
<AutoColumn gap="md">
|
||||
<RowBetween>
|
||||
<TYPE.main>
|
||||
<Trans>Collect as WETH</Trans>
|
||||
</TYPE.main>
|
||||
<Toggle
|
||||
id="receive-as-weth"
|
||||
isActive={receiveWETH}
|
||||
toggle={() => setReceiveWETH((receiveWETH) => !receiveWETH)}
|
||||
/>
|
||||
</RowBetween>
|
||||
</AutoColumn>
|
||||
) : null}
|
||||
</AutoColumn>
|
||||
</DarkCard>
|
||||
</AutoColumn>
|
||||
</ResponsiveRow>
|
||||
<DarkCard>
|
||||
<AutoColumn gap="md">
|
||||
<RowBetween>
|
||||
<RowFixed>
|
||||
<Label display="flex" style={{ marginRight: '12px' }}>
|
||||
<Trans>Price range</Trans>
|
||||
</Label>
|
||||
<HideExtraSmall>
|
||||
<>
|
||||
<RangeBadge removed={removed} inRange={inRange} />
|
||||
<span style={{ width: '8px' }} />
|
||||
</>
|
||||
</HideExtraSmall>
|
||||
</RowFixed>
|
||||
<RowFixed>
|
||||
{currencyBase && currencyQuote && (
|
||||
<RateToggle
|
||||
currencyA={currencyBase}
|
||||
currencyB={currencyQuote}
|
||||
handleRateToggle={() => setManuallyInverted(!manuallyInverted)}
|
||||
/>
|
||||
)}
|
||||
</RowFixed>
|
||||
</RowBetween>
|
||||
|
||||
<RowBetween>
|
||||
<LightCard padding="12px" width="100%">
|
||||
<AutoColumn gap="8px" justify="center">
|
||||
<ExtentsText>
|
||||
<Trans>Min price</Trans>
|
||||
</ExtentsText>
|
||||
<TYPE.mediumHeader textAlign="center">{priceLower?.toSignificant(5)}</TYPE.mediumHeader>
|
||||
<ExtentsText>
|
||||
{' '}
|
||||
<Trans>
|
||||
{currencyQuote?.symbol} per {currencyBase?.symbol}
|
||||
</Trans>
|
||||
</ExtentsText>
|
||||
|
||||
{inRange && (
|
||||
<TYPE.small color={theme.text3}>
|
||||
<Trans>Your position will be 100% {currencyBase?.symbol} at this price.</Trans>
|
||||
</TYPE.small>
|
||||
)}
|
||||
</AutoColumn>
|
||||
</LightCard>
|
||||
|
||||
<DoubleArrow>⟷</DoubleArrow>
|
||||
<LightCard padding="12px" width="100%">
|
||||
<AutoColumn gap="8px" justify="center">
|
||||
<ExtentsText>
|
||||
<Trans>Max price</Trans>
|
||||
</ExtentsText>
|
||||
<TYPE.mediumHeader textAlign="center">{priceUpper?.toSignificant(5)}</TYPE.mediumHeader>
|
||||
<ExtentsText>
|
||||
{' '}
|
||||
<Trans>
|
||||
{currencyQuote?.symbol} per {currencyBase?.symbol}
|
||||
</Trans>
|
||||
</ExtentsText>
|
||||
|
||||
{inRange && (
|
||||
<TYPE.small color={theme.text3}>
|
||||
<Trans>Your position will be 100% {currencyQuote?.symbol} at this price.</Trans>
|
||||
</TYPE.small>
|
||||
)}
|
||||
</AutoColumn>
|
||||
</LightCard>
|
||||
</RowBetween>
|
||||
<CurrentPriceCard
|
||||
inverted={inverted}
|
||||
pool={pool}
|
||||
currencyQuote={currencyQuote}
|
||||
currencyBase={currencyBase}
|
||||
/>
|
||||
</AutoColumn>
|
||||
</DarkCard>
|
||||
</AutoColumn>
|
||||
</PageWrapper>
|
||||
<SwitchLocaleLink />
|
||||
</>
|
||||
)
|
||||
}
|
||||
|
||||
@@ -204,11 +204,13 @@ export default function Pool() {
|
||||
{closedPositions.length > 0 ? (
|
||||
<ShowInactiveToggle>
|
||||
<TYPE.darkGray>
|
||||
<Trans>Hide closed positions</Trans>
|
||||
<Trans>Closed positions</Trans>
|
||||
</TYPE.darkGray>
|
||||
<Toggle
|
||||
isActive={userHideClosedPositions}
|
||||
isActive={!userHideClosedPositions}
|
||||
toggle={() => setUserHideClosedPositions(!userHideClosedPositions)}
|
||||
checked={<Trans>Show</Trans>}
|
||||
unchecked={<Trans>Hide</Trans>}
|
||||
/>
|
||||
</ShowInactiveToggle>
|
||||
) : null}
|
||||
|
||||
@@ -19,6 +19,7 @@ import { useV2Pairs } from '../../hooks/useV2Pairs'
|
||||
import { toV2LiquidityToken, useTrackedTokenPairs } from '../../state/user/hooks'
|
||||
import { Dots } from '../../components/swap/styleds'
|
||||
import { CardSection, DataCard, CardNoise, CardBGImage } from '../../components/earn/styled'
|
||||
import { SwitchLocaleLink } from '../../components/SwitchLocaleLink'
|
||||
import { useStakingInfo } from '../../state/stake/hooks'
|
||||
import { BIG_INT_ZERO } from '../../constants/misc'
|
||||
import { Pair } from '@uniswap/v2-sdk'
|
||||
@@ -256,6 +257,7 @@ export default function Pool() {
|
||||
</AutoColumn>
|
||||
</AutoColumn>
|
||||
</PageWrapper>
|
||||
<SwitchLocaleLink />
|
||||
</>
|
||||
)
|
||||
}
|
||||
|
||||
@@ -11,6 +11,7 @@ import { FindPoolTabs } from '../../components/NavigationTabs'
|
||||
import { MinimalPositionCard } from '../../components/PositionCard'
|
||||
import Row from '../../components/Row'
|
||||
import CurrencySearchModal from '../../components/SearchModal/CurrencySearchModal'
|
||||
import { SwitchLocaleLink } from '../../components/SwitchLocaleLink'
|
||||
import { ExtendedEther } from '../../constants/tokens'
|
||||
import { PairState, useV2Pair } from '../../hooks/useV2Pairs'
|
||||
import { useActiveWeb3React } from '../../hooks/web3'
|
||||
@@ -93,136 +94,139 @@ export default function PoolFinder() {
|
||||
)
|
||||
|
||||
return (
|
||||
<AppBody>
|
||||
<FindPoolTabs origin={query.get('origin') ?? '/pool/v2'} />
|
||||
<AutoColumn style={{ padding: '1rem' }} gap="md">
|
||||
<BlueCard>
|
||||
<AutoColumn gap="10px">
|
||||
<TYPE.link fontWeight={400} color={'primaryText1'}>
|
||||
<Trans>
|
||||
<b>Tip:</b> Use this tool to find v2 pools that don't automatically appear in the interface.
|
||||
</Trans>
|
||||
</TYPE.link>
|
||||
</AutoColumn>
|
||||
</BlueCard>
|
||||
<ButtonDropdownLight
|
||||
onClick={() => {
|
||||
setShowSearch(true)
|
||||
setActiveField(Fields.TOKEN0)
|
||||
}}
|
||||
>
|
||||
{currency0 ? (
|
||||
<Row>
|
||||
<CurrencyLogo currency={currency0} />
|
||||
<Text fontWeight={500} fontSize={20} marginLeft={'12px'}>
|
||||
{currency0.symbol}
|
||||
</Text>
|
||||
</Row>
|
||||
) : (
|
||||
<Text fontWeight={500} fontSize={20} marginLeft={'12px'}>
|
||||
<Trans>Select a token</Trans>
|
||||
</Text>
|
||||
)}
|
||||
</ButtonDropdownLight>
|
||||
|
||||
<ColumnCenter>
|
||||
<Plus size="16" color="#888D9B" />
|
||||
</ColumnCenter>
|
||||
|
||||
<ButtonDropdownLight
|
||||
onClick={() => {
|
||||
setShowSearch(true)
|
||||
setActiveField(Fields.TOKEN1)
|
||||
}}
|
||||
>
|
||||
{currency1 ? (
|
||||
<Row>
|
||||
<CurrencyLogo currency={currency1} />
|
||||
<Text fontWeight={500} fontSize={20} marginLeft={'12px'}>
|
||||
{currency1.symbol}
|
||||
</Text>
|
||||
</Row>
|
||||
) : (
|
||||
<Text fontWeight={500} fontSize={20} marginLeft={'12px'}>
|
||||
<Trans>Select a token</Trans>
|
||||
</Text>
|
||||
)}
|
||||
</ButtonDropdownLight>
|
||||
|
||||
{hasPosition && (
|
||||
<ColumnCenter
|
||||
style={{ justifyItems: 'center', backgroundColor: '', padding: '12px 0px', borderRadius: '12px' }}
|
||||
<>
|
||||
<AppBody>
|
||||
<FindPoolTabs origin={query.get('origin') ?? '/pool/v2'} />
|
||||
<AutoColumn style={{ padding: '1rem' }} gap="md">
|
||||
<BlueCard>
|
||||
<AutoColumn gap="10px">
|
||||
<TYPE.link fontWeight={400} color={'primaryText1'}>
|
||||
<Trans>
|
||||
<b>Tip:</b> Use this tool to find v2 pools that don't automatically appear in the interface.
|
||||
</Trans>
|
||||
</TYPE.link>
|
||||
</AutoColumn>
|
||||
</BlueCard>
|
||||
<ButtonDropdownLight
|
||||
onClick={() => {
|
||||
setShowSearch(true)
|
||||
setActiveField(Fields.TOKEN0)
|
||||
}}
|
||||
>
|
||||
<Text textAlign="center" fontWeight={500}>
|
||||
<Trans>Pool Found!</Trans>
|
||||
</Text>
|
||||
<StyledInternalLink to={`/pool/v2`}>
|
||||
<Text textAlign="center">
|
||||
<Trans>Manage this pool.</Trans>
|
||||
</Text>
|
||||
</StyledInternalLink>
|
||||
</ColumnCenter>
|
||||
)}
|
||||
|
||||
{currency0 && currency1 ? (
|
||||
pairState === PairState.EXISTS ? (
|
||||
hasPosition && pair ? (
|
||||
<MinimalPositionCard pair={pair} border="1px solid #CED0D9" />
|
||||
{currency0 ? (
|
||||
<Row>
|
||||
<CurrencyLogo currency={currency0} />
|
||||
<Text fontWeight={500} fontSize={20} marginLeft={'12px'}>
|
||||
{currency0.symbol}
|
||||
</Text>
|
||||
</Row>
|
||||
) : (
|
||||
<Text fontWeight={500} fontSize={20} marginLeft={'12px'}>
|
||||
<Trans>Select a token</Trans>
|
||||
</Text>
|
||||
)}
|
||||
</ButtonDropdownLight>
|
||||
|
||||
<ColumnCenter>
|
||||
<Plus size="16" color="#888D9B" />
|
||||
</ColumnCenter>
|
||||
|
||||
<ButtonDropdownLight
|
||||
onClick={() => {
|
||||
setShowSearch(true)
|
||||
setActiveField(Fields.TOKEN1)
|
||||
}}
|
||||
>
|
||||
{currency1 ? (
|
||||
<Row>
|
||||
<CurrencyLogo currency={currency1} />
|
||||
<Text fontWeight={500} fontSize={20} marginLeft={'12px'}>
|
||||
{currency1.symbol}
|
||||
</Text>
|
||||
</Row>
|
||||
) : (
|
||||
<Text fontWeight={500} fontSize={20} marginLeft={'12px'}>
|
||||
<Trans>Select a token</Trans>
|
||||
</Text>
|
||||
)}
|
||||
</ButtonDropdownLight>
|
||||
|
||||
{hasPosition && (
|
||||
<ColumnCenter
|
||||
style={{ justifyItems: 'center', backgroundColor: '', padding: '12px 0px', borderRadius: '12px' }}
|
||||
>
|
||||
<Text textAlign="center" fontWeight={500}>
|
||||
<Trans>Pool Found!</Trans>
|
||||
</Text>
|
||||
<StyledInternalLink to={`/pool/v2`}>
|
||||
<Text textAlign="center">
|
||||
<Trans>Manage this pool.</Trans>
|
||||
</Text>
|
||||
</StyledInternalLink>
|
||||
</ColumnCenter>
|
||||
)}
|
||||
|
||||
{currency0 && currency1 ? (
|
||||
pairState === PairState.EXISTS ? (
|
||||
hasPosition && pair ? (
|
||||
<MinimalPositionCard pair={pair} border="1px solid #CED0D9" />
|
||||
) : (
|
||||
<LightCard padding="45px 10px">
|
||||
<AutoColumn gap="sm" justify="center">
|
||||
<Text textAlign="center">
|
||||
<Trans>You don’t have liquidity in this pool yet.</Trans>
|
||||
</Text>
|
||||
<StyledInternalLink to={`/add/${currencyId(currency0)}/${currencyId(currency1)}`}>
|
||||
<Text textAlign="center">
|
||||
<Trans>Add liquidity.</Trans>
|
||||
</Text>
|
||||
</StyledInternalLink>
|
||||
</AutoColumn>
|
||||
</LightCard>
|
||||
)
|
||||
) : validPairNoLiquidity ? (
|
||||
<LightCard padding="45px 10px">
|
||||
<AutoColumn gap="sm" justify="center">
|
||||
<Text textAlign="center">
|
||||
<Trans>You don’t have liquidity in this pool yet.</Trans>
|
||||
<Trans>No pool found.</Trans>
|
||||
</Text>
|
||||
<StyledInternalLink to={`/add/${currencyId(currency0)}/${currencyId(currency1)}`}>
|
||||
<Text textAlign="center">
|
||||
<Trans>Add liquidity.</Trans>
|
||||
</Text>
|
||||
<Trans>Create pool.</Trans>
|
||||
</StyledInternalLink>
|
||||
</AutoColumn>
|
||||
</LightCard>
|
||||
)
|
||||
) : validPairNoLiquidity ? (
|
||||
<LightCard padding="45px 10px">
|
||||
<AutoColumn gap="sm" justify="center">
|
||||
<Text textAlign="center">
|
||||
<Trans>No pool found.</Trans>
|
||||
</Text>
|
||||
<StyledInternalLink to={`/add/${currencyId(currency0)}/${currencyId(currency1)}`}>
|
||||
<Trans>Create pool.</Trans>
|
||||
</StyledInternalLink>
|
||||
</AutoColumn>
|
||||
</LightCard>
|
||||
) : pairState === PairState.INVALID ? (
|
||||
<LightCard padding="45px 10px">
|
||||
<AutoColumn gap="sm" justify="center">
|
||||
<Text textAlign="center" fontWeight={500}>
|
||||
<Trans>Invalid pair.</Trans>
|
||||
</Text>
|
||||
</AutoColumn>
|
||||
</LightCard>
|
||||
) : pairState === PairState.LOADING ? (
|
||||
<LightCard padding="45px 10px">
|
||||
<AutoColumn gap="sm" justify="center">
|
||||
<Text textAlign="center">
|
||||
<Trans>Loading</Trans>
|
||||
<Dots />
|
||||
</Text>
|
||||
</AutoColumn>
|
||||
</LightCard>
|
||||
) : null
|
||||
) : (
|
||||
prerequisiteMessage
|
||||
)}
|
||||
</AutoColumn>
|
||||
) : pairState === PairState.INVALID ? (
|
||||
<LightCard padding="45px 10px">
|
||||
<AutoColumn gap="sm" justify="center">
|
||||
<Text textAlign="center" fontWeight={500}>
|
||||
<Trans>Invalid pair.</Trans>
|
||||
</Text>
|
||||
</AutoColumn>
|
||||
</LightCard>
|
||||
) : pairState === PairState.LOADING ? (
|
||||
<LightCard padding="45px 10px">
|
||||
<AutoColumn gap="sm" justify="center">
|
||||
<Text textAlign="center">
|
||||
<Trans>Loading</Trans>
|
||||
<Dots />
|
||||
</Text>
|
||||
</AutoColumn>
|
||||
</LightCard>
|
||||
) : null
|
||||
) : (
|
||||
prerequisiteMessage
|
||||
)}
|
||||
</AutoColumn>
|
||||
|
||||
<CurrencySearchModal
|
||||
isOpen={showSearch}
|
||||
onCurrencySelect={handleCurrencySelect}
|
||||
onDismiss={handleSearchDismiss}
|
||||
showCommonBases
|
||||
selectedCurrency={(activeField === Fields.TOKEN0 ? currency1 : currency0) ?? undefined}
|
||||
/>
|
||||
</AppBody>
|
||||
<CurrencySearchModal
|
||||
isOpen={showSearch}
|
||||
onCurrencySelect={handleCurrencySelect}
|
||||
onDismiss={handleSearchDismiss}
|
||||
showCommonBases
|
||||
selectedCurrency={(activeField === Fields.TOKEN0 ? currency1 : currency0) ?? undefined}
|
||||
/>
|
||||
</AppBody>
|
||||
<SwitchLocaleLink />
|
||||
</>
|
||||
)
|
||||
}
|
||||
|
||||
@@ -121,13 +121,13 @@ const ProposerAddressLink = styled(ExternalLink)`
|
||||
|
||||
export default function VotePage({
|
||||
match: {
|
||||
params: { id },
|
||||
params: { governorIndex, id },
|
||||
},
|
||||
}: RouteComponentProps<{ id: string }>) {
|
||||
}: RouteComponentProps<{ governorIndex: string; id: string }>) {
|
||||
const { chainId, account } = useActiveWeb3React()
|
||||
|
||||
// get data for this specific proposal
|
||||
const proposalData: ProposalData | undefined = useProposalData(id)
|
||||
const proposalData: ProposalData | undefined = useProposalData(Number.parseInt(governorIndex), id)
|
||||
|
||||
// update support based on button interactions
|
||||
const [support, setSupport] = useState<boolean>(true)
|
||||
|
||||
@@ -248,9 +248,9 @@ export default function Vote() {
|
||||
</TYPE.subHeader>
|
||||
</EmptyProposals>
|
||||
)}
|
||||
{allProposals?.reverse().map((p: ProposalData, i) => {
|
||||
{allProposals?.reverse()?.map((p: ProposalData) => {
|
||||
return (
|
||||
<Proposal as={Link} to={'/vote/' + p.id} key={i}>
|
||||
<Proposal as={Link} to={`/vote/${p.governorIndex}/${p.id}`} key={`${p.governorIndex}${p.id}`}>
|
||||
<ProposalNumber>{p.id}</ProposalNumber>
|
||||
<ProposalTitle>{p.title}</ProposalTitle>
|
||||
<ProposalStatus status={p.status}>{ProposalState[p.status]}</ProposalStatus>
|
||||
|
||||
@@ -2,16 +2,17 @@ import { TransactionResponse } from '@ethersproject/providers'
|
||||
import { abi as GOV_ABI } from '@uniswap/governance/build/GovernorAlpha.json'
|
||||
import { CurrencyAmount, Token } from '@uniswap/sdk-core'
|
||||
import { GOVERNANCE_ADDRESSES } from 'constants/addresses'
|
||||
import { SupportedChainId } from 'constants/chains'
|
||||
import { UNISWAP_GRANTS_PROPOSAL_DESCRIPTION } from 'constants/proposals/uniswap_grants_proposal_description'
|
||||
import { ethers, utils } from 'ethers'
|
||||
import { BigNumber, ethers, utils } from 'ethers'
|
||||
import { isAddress } from 'ethers/lib/utils'
|
||||
import { useGovernanceContracts, useUniContract } from 'hooks/useContract'
|
||||
import { useActiveWeb3React } from 'hooks/web3'
|
||||
import { useCallback, useEffect, useMemo, useState } from 'react'
|
||||
import { calculateGasMargin } from 'utils/calculateGasMargin'
|
||||
import { EDUCATION_FUND_1_START_BLOCK, UNISWAP_GRANTS_START_BLOCK } from '../../constants/proposals'
|
||||
import { UNISWAP_GRANTS_START_BLOCK } from '../../constants/proposals'
|
||||
import { UNI } from '../../constants/tokens'
|
||||
import { useMultipleContractMultipleData, useMultipleContractSingleData, useSingleCallResult } from '../multicall/hooks'
|
||||
import { useMultipleContractMultipleData, useSingleCallResult } from '../multicall/hooks'
|
||||
import { useTransactionAdder } from '../transactions/hooks'
|
||||
|
||||
interface ProposalDetail {
|
||||
@@ -31,6 +32,7 @@ export interface ProposalData {
|
||||
startBlock: number
|
||||
endBlock: number
|
||||
details: ProposalDetail[]
|
||||
governorIndex: number // index in the governance address array for which this proposal pertains
|
||||
}
|
||||
|
||||
export enum ProposalState {
|
||||
@@ -46,84 +48,95 @@ export enum ProposalState {
|
||||
}
|
||||
|
||||
const GovernanceInterface = new ethers.utils.Interface(GOV_ABI)
|
||||
// get count of all proposals made
|
||||
export function useProposalCounts(): Record<string, number> | undefined {
|
||||
const { chainId } = useActiveWeb3React()
|
||||
const addresses = useMemo(() => {
|
||||
if (!chainId) {
|
||||
return []
|
||||
}
|
||||
return GOVERNANCE_ADDRESSES.map((addressMap) => addressMap[chainId])
|
||||
}, [chainId])
|
||||
const responses = useMultipleContractSingleData(addresses, GovernanceInterface, 'proposalCount')
|
||||
return useMemo(() => {
|
||||
return responses.reduce((acc, response, i) => {
|
||||
if (response.result && !response.loading) {
|
||||
return {
|
||||
...acc,
|
||||
[addresses[i]]: parseInt(response.result[0]),
|
||||
}
|
||||
}
|
||||
return acc
|
||||
}, {})
|
||||
}, [addresses, responses])
|
||||
// get count of all proposals made in the latest governor contract
|
||||
function useLatestProposalCount(): number | undefined {
|
||||
const govContracts = useGovernanceContracts()
|
||||
|
||||
const res = useSingleCallResult(govContracts[0], 'proposalCount')
|
||||
|
||||
if (res?.result?.[0]) {
|
||||
return (res.result[0] as BigNumber).toNumber()
|
||||
}
|
||||
|
||||
return undefined
|
||||
}
|
||||
|
||||
/**
|
||||
* Need proposal events to get description data emitted from
|
||||
* new proposal event.
|
||||
*/
|
||||
export function useDataFromEventLogs() {
|
||||
function useDataFromEventLogs():
|
||||
| {
|
||||
description: string
|
||||
details: { target: string; functionSig: string; callData: string }[]
|
||||
}[][]
|
||||
| undefined {
|
||||
const { library, chainId } = useActiveWeb3React()
|
||||
const [formattedEvents, setFormattedEvents] =
|
||||
useState<{ description: string; details: { target: string; functionSig: string; callData: string }[] }[]>()
|
||||
useState<{ description: string; details: { target: string; functionSig: string; callData: string }[] }[][]>()
|
||||
|
||||
const govContracts = useGovernanceContracts()
|
||||
|
||||
// create filter for these specific events
|
||||
// create filters for ProposalCreated events
|
||||
const filters = useMemo(
|
||||
() =>
|
||||
govContracts
|
||||
? govContracts.map((contract) => ({
|
||||
...contract.filters.ProposalCreated(),
|
||||
fromBlock: 10861678,
|
||||
toBlock: 'latest',
|
||||
}))
|
||||
govContracts?.filter((govContract) => !!govContract)?.length > 0
|
||||
? govContracts
|
||||
.filter((govContract): govContract is ethers.Contract => !!govContract)
|
||||
.map((contract) => ({
|
||||
...contract.filters.ProposalCreated(),
|
||||
fromBlock: 10861678, // TODO could optimize this on a per-contract basis, this is the safe value
|
||||
toBlock: 'latest',
|
||||
}))
|
||||
: undefined,
|
||||
[govContracts]
|
||||
)
|
||||
|
||||
// clear logs on chainId change
|
||||
useEffect(() => {
|
||||
return () => {
|
||||
setFormattedEvents(undefined)
|
||||
}
|
||||
}, [chainId])
|
||||
|
||||
useEffect(() => {
|
||||
if (!filters || !library) return
|
||||
let stale = false
|
||||
|
||||
if (!formattedEvents) {
|
||||
const filterRequests = filters.map((filter) => library.getLogs(filter))
|
||||
Promise.all(filterRequests)
|
||||
.then((events) => events.flat())
|
||||
Promise.all(filters.map((filter) => library.getLogs(filter)))
|
||||
.then((governanceContractsProposalEvents) => {
|
||||
if (stale) return
|
||||
const formattedEventData = governanceContractsProposalEvents.map((event) => {
|
||||
const eventParsed = GovernanceInterface.parseLog(event).args
|
||||
return {
|
||||
description: eventParsed.description,
|
||||
details: eventParsed.targets.map((target: string, i: number) => {
|
||||
const signature = eventParsed.signatures[i]
|
||||
const [name, types] = signature.substr(0, signature.length - 1).split('(')
|
||||
const calldata = eventParsed.calldatas[i]
|
||||
const decoded = utils.defaultAbiCoder.decode(types.split(','), calldata)
|
||||
return {
|
||||
target,
|
||||
functionSig: name,
|
||||
callData: decoded.join(', '),
|
||||
}
|
||||
}),
|
||||
}
|
||||
|
||||
const formattedEventData = governanceContractsProposalEvents.map((proposalEvents) => {
|
||||
return proposalEvents.map((event) => {
|
||||
const eventParsed = GovernanceInterface.parseLog(event).args
|
||||
return {
|
||||
description: eventParsed.description,
|
||||
details: eventParsed.targets.map((target: string, i: number) => {
|
||||
const signature = eventParsed.signatures[i]
|
||||
const [name, types] = signature.substr(0, signature.length - 1).split('(')
|
||||
const calldata = eventParsed.calldatas[i]
|
||||
const decoded = utils.defaultAbiCoder.decode(types.split(','), calldata)
|
||||
return {
|
||||
target,
|
||||
functionSig: name,
|
||||
callData: decoded.join(', '),
|
||||
}
|
||||
}),
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
setFormattedEvents(formattedEventData)
|
||||
})
|
||||
.catch((error) => {
|
||||
if (stale) return
|
||||
|
||||
console.error('Failed to fetch proposals', error)
|
||||
setFormattedEvents(undefined)
|
||||
})
|
||||
|
||||
return () => {
|
||||
stale = true
|
||||
}
|
||||
@@ -136,41 +149,22 @@ export function useDataFromEventLogs() {
|
||||
}
|
||||
|
||||
// get data for all past and active proposals
|
||||
export function useAllProposalData() {
|
||||
export function useAllProposalData(): ProposalData[] {
|
||||
const { chainId } = useActiveWeb3React()
|
||||
const proposalCounts = useProposalCounts()
|
||||
|
||||
const proposalIndexes = useMemo(() => {
|
||||
const results: number[][][] = []
|
||||
const emptyState = new Array(GOVERNANCE_ADDRESSES.length).fill([], 0)
|
||||
GOVERNANCE_ADDRESSES.forEach((addressMap, i) => {
|
||||
results[i] = []
|
||||
if (!chainId) {
|
||||
return emptyState
|
||||
}
|
||||
const address = addressMap[chainId]
|
||||
if (!proposalCounts || proposalCounts[address] === undefined) {
|
||||
return emptyState
|
||||
}
|
||||
for (let j = 1; j <= proposalCounts[address]; j++) {
|
||||
results[i].push([j])
|
||||
}
|
||||
return results
|
||||
})
|
||||
return results.filter((indexArray) => indexArray.length > 0)
|
||||
}, [chainId, proposalCounts])
|
||||
const proposalCount = useLatestProposalCount()
|
||||
|
||||
const addresses = useMemo(() => {
|
||||
if (!chainId) {
|
||||
return []
|
||||
}
|
||||
return GOVERNANCE_ADDRESSES.map((addressMap) => addressMap[chainId]).filter(
|
||||
(address) => proposalCounts && proposalCounts[address] > 0
|
||||
)
|
||||
}, [chainId, proposalCounts])
|
||||
return chainId === SupportedChainId.MAINNET ? GOVERNANCE_ADDRESSES.map((addressMap) => addressMap[chainId]) : []
|
||||
}, [chainId])
|
||||
|
||||
// get metadata from past events
|
||||
const formattedEvents = useDataFromEventLogs()
|
||||
const proposalIndexes = useMemo(() => {
|
||||
return chainId === SupportedChainId.MAINNET
|
||||
? [
|
||||
typeof proposalCount === 'number' ? new Array(proposalCount).fill(0).map((_, i) => [i + 1]) : [], // dynamic for current governor alpha
|
||||
[[1], [2], [3], [4]], // hardcoded for governor alpha V0
|
||||
]
|
||||
: []
|
||||
}, [chainId, proposalCount])
|
||||
|
||||
// get all proposal entities
|
||||
const allProposalsCallData = useMultipleContractMultipleData(
|
||||
@@ -178,7 +172,7 @@ export function useAllProposalData() {
|
||||
GovernanceInterface,
|
||||
'proposals',
|
||||
proposalIndexes
|
||||
).flat()
|
||||
)
|
||||
|
||||
// get all proposal states
|
||||
const allProposalStatesCallData = useMultipleContractMultipleData(
|
||||
@@ -186,44 +180,64 @@ export function useAllProposalData() {
|
||||
GovernanceInterface,
|
||||
'state',
|
||||
proposalIndexes
|
||||
).flat()
|
||||
)
|
||||
|
||||
if (
|
||||
!allProposalsCallData?.every((p) => Boolean(p.result)) ||
|
||||
!allProposalStatesCallData?.every((p) => Boolean(p.result)) ||
|
||||
!formattedEvents?.every((p) => Boolean(p))
|
||||
// get metadata from past events
|
||||
const allFormattedEvents = useDataFromEventLogs()
|
||||
|
||||
// early return until events are fetched
|
||||
if (!allFormattedEvents) return []
|
||||
|
||||
const results: ProposalData[][] = []
|
||||
|
||||
for (
|
||||
let governanceContractIndex = 0;
|
||||
governanceContractIndex < allProposalsCallData.length;
|
||||
governanceContractIndex++
|
||||
) {
|
||||
return []
|
||||
const proposalsCallData = allProposalsCallData[governanceContractIndex]
|
||||
const proposalStatesCallData = allProposalStatesCallData[governanceContractIndex]
|
||||
const formattedEvents = allFormattedEvents[governanceContractIndex]
|
||||
|
||||
if (
|
||||
!proposalsCallData?.every((p) => Boolean(p.result)) ||
|
||||
!proposalStatesCallData?.every((p) => Boolean(p.result)) ||
|
||||
!formattedEvents?.every((p) => Boolean(p))
|
||||
) {
|
||||
results.push([])
|
||||
continue
|
||||
}
|
||||
|
||||
results.push(
|
||||
proposalsCallData.map((proposal, i) => {
|
||||
let description = formattedEvents[i].description
|
||||
const startBlock = parseInt(proposal?.result?.startBlock?.toString())
|
||||
if (startBlock === UNISWAP_GRANTS_START_BLOCK) {
|
||||
description = UNISWAP_GRANTS_PROPOSAL_DESCRIPTION
|
||||
}
|
||||
return {
|
||||
id: proposal?.result?.id.toString(),
|
||||
title: description?.split(/# |\n/g)[1] ?? 'Untitled',
|
||||
description: description ?? 'No description.',
|
||||
proposer: proposal?.result?.proposer,
|
||||
status: proposalStatesCallData[i]?.result?.[0] ?? ProposalState.Undetermined,
|
||||
forCount: parseFloat(ethers.utils.formatUnits(proposal?.result?.forVotes.toString(), 18)),
|
||||
againstCount: parseFloat(ethers.utils.formatUnits(proposal?.result?.againstVotes.toString(), 18)),
|
||||
startBlock,
|
||||
endBlock: parseInt(proposal?.result?.endBlock?.toString()),
|
||||
details: formattedEvents[i].details,
|
||||
governorIndex: governanceContractIndex,
|
||||
}
|
||||
})
|
||||
)
|
||||
}
|
||||
|
||||
const omittedProposalStartBlocks = [EDUCATION_FUND_1_START_BLOCK]
|
||||
|
||||
return allProposalsCallData
|
||||
.map((proposal, i) => {
|
||||
let description = formattedEvents[i].description
|
||||
const startBlock = parseInt(proposal?.result?.startBlock?.toString())
|
||||
if (startBlock === UNISWAP_GRANTS_START_BLOCK) {
|
||||
description = UNISWAP_GRANTS_PROPOSAL_DESCRIPTION
|
||||
}
|
||||
return {
|
||||
id: proposal?.result?.id.toString(),
|
||||
title: description?.split(/# |\n/g)[1] ?? 'Untitled',
|
||||
description: description ?? 'No description.',
|
||||
proposer: proposal?.result?.proposer,
|
||||
status: allProposalStatesCallData[i]?.result?.[0] ?? ProposalState.Undetermined,
|
||||
forCount: parseFloat(ethers.utils.formatUnits(proposal?.result?.forVotes.toString(), 18)),
|
||||
againstCount: parseFloat(ethers.utils.formatUnits(proposal?.result?.againstVotes.toString(), 18)),
|
||||
startBlock,
|
||||
endBlock: parseInt(proposal?.result?.endBlock?.toString()),
|
||||
details: formattedEvents[i].details,
|
||||
}
|
||||
})
|
||||
.filter((proposal) => !omittedProposalStartBlocks.includes(proposal.startBlock))
|
||||
return results.flat()
|
||||
}
|
||||
|
||||
export function useProposalData(id: string): ProposalData | undefined {
|
||||
export function useProposalData(governorIndex: number, id: string): ProposalData | undefined {
|
||||
const allProposalData = useAllProposalData()
|
||||
return allProposalData?.find((p) => p.id === id)
|
||||
return allProposalData?.filter((p) => p.governorIndex === governorIndex)?.find((p) => p.id === id)
|
||||
}
|
||||
|
||||
// get the users delegatee if it exists
|
||||
|
||||
Reference in New Issue
Block a user