Compare commits

...

12 Commits

Author SHA1 Message Date
Crowdin Bot
5c20d0adb7 chore(i18n): synchronize translations from crowdin 2021-06-02 09:35:14 +00:00
Crowdin Bot
ca6295fcb7 chore(i18n): synchronize translations from crowdin 2021-06-02 07:35:26 +00:00
Crowdin Bot
e8af59198d chore(i18n): synchronize translations from crowdin 2021-06-02 06:49:31 +00:00
Crowdin Bot
cd4c43b482 chore(i18n): synchronize translations from crowdin 2021-06-02 05:07:18 +00:00
jab416171
c1e07f3713 Fixing some instances of the removeChild issue (#1793)
specifically when the google translate extension triggers it
2021-06-01 20:39:53 -07:00
Crowdin Bot
bccda20473 chore(i18n): synchronize translations from crowdin 2021-06-02 03:03:17 +00:00
Moody Salem
bed8dd5110 fix: do not show price data on non-mainnet 2021-06-01 17:33:50 -05:00
Moody Salem
6bcbabec23 refactor: remove storybook 2021-06-01 17:04:26 -05:00
Justin Domingue
71a490f2aa fix(#1694): fix popup item header overlap (#1783) 2021-06-01 14:30:08 -07:00
Moody Salem
abcf1f5a5c fix: background should show up while loading the js 2021-06-01 16:20:31 -05:00
Crowdin Bot
65e5e9c98e chore(i18n): synchronize translations from crowdin 2021-06-01 20:55:07 +00:00
Moody Salem
fdabb90f0e fix: fire a GA event when the locale is switched 2021-06-01 15:31:15 -05:00
27 changed files with 366 additions and 3697 deletions

2
.env
View File

@@ -1,4 +1,2 @@
REACT_APP_INFURA_KEY="4bf032f2d38a4ed6bb975b80d6340847"
REACT_APP_WALLETCONNECT_BRIDGE_URL="https://uniswap.bridge.walletconnect.org"
# Because we use storybook which has its own babel-loader dependency @ 8.2.2, where react-scripts uses 8.1.0
SKIP_PREFLIGHT_CHECK=true

View File

@@ -1,16 +0,0 @@
const { dirname, join, parse, resolve } = require('path')
const { existsSync } = require('fs')
module.exports = {
stories: ['../src/**/*.stories.@(ts|tsx)'],
addons: ['@storybook/addon-links', '@storybook/addon-essentials', '@storybook/preset-create-react-app'],
typescript: {
check: true,
checkOptions: {},
reactDocgen: 'react-docgen-typescript',
reactDocgenTypescriptOptions: {
shouldExtractLiteralValuesFromEnum: true,
propFilter: (prop) => (prop.parent ? !/node_modules/.test(prop.parent.fileName) : true),
},
},
}

View File

@@ -1,4 +0,0 @@
import { addons } from '@storybook/addons'
import { light } from './theme'
addons.setConfig({ theme: light })

View File

@@ -1,90 +0,0 @@
import '../src/index.css'
import { Story } from '@storybook/react/types-6-0'
import { createWeb3ReactRoot, Web3ReactProvider } from '@web3-react/core'
import React from 'react'
import { Provider as StoreProvider } from 'react-redux'
import { ThemeProvider as SCThemeProvider } from 'styled-components'
import { NetworkContextName } from '../src/constants/misc'
import store from '../src/state'
import { theme, ThemedGlobalStyle } from '../src/theme'
import getLibrary from '../src/utils/getLibrary'
import * as storybookThemes from './theme'
export const parameters = {
actions: { argTypesRegex: '^on[A-Z].*' },
dependencies: {
withStoriesOnly: true,
hideEmpty: true,
},
docs: {
theme: storybookThemes.light,
},
viewport: {
viewports: {
mobile: {
name: 'iPhone X',
styles: {
width: '375px',
height: '812px',
},
},
tablet: {
name: 'iPad',
styles: {
width: '768px',
height: '1024px',
},
},
laptop: {
name: 'Laptop',
styles: {
width: '1024px',
height: '768px',
},
},
desktop: {
name: 'Desktop',
styles: {
width: '1440px',
height: '1024px',
},
},
},
},
}
export const globalTypes = {
theme: {
name: 'Theme',
description: 'Global theme for components',
defaultValue: 'light',
toolbar: {
icon: 'circlehollow',
items: ['light', 'dark'],
},
},
}
const Web3ProviderNetwork = createWeb3ReactRoot(NetworkContextName)
const withProviders = (Component: Story, context: Record<string, any>) => {
const THEME = theme(context.globals.theme === 'dark')
return (
<>
<Web3ReactProvider getLibrary={getLibrary}>
<Web3ProviderNetwork getLibrary={getLibrary}>
<StoreProvider store={store}>
<SCThemeProvider theme={THEME}>
<ThemedGlobalStyle />
<main>
<Component />
</main>
</SCThemeProvider>
</StoreProvider>
</Web3ProviderNetwork>
</Web3ReactProvider>
</>
)
}
export const decorators = [withProviders]

View File

@@ -1,17 +0,0 @@
import { create } from '@storybook/theming'
// this themes the storybook UI
const uniswapBaseTheme = {
brandTitle: 'Uniswap Design',
brandUrl: 'https://uniswap.org',
brandImage: 'https://ipfs.io/ipfs/QmNa8mQkrNKp1WEEeGjFezDmDeodkWRevGFN8JCV7b4Xir',
}
export const light = create({
base: 'light',
...uniswapBaseTheme,
})
// export const dark = create({
// base: 'dark',
// ...uniswapBaseTheme,
// })

View File

@@ -15,16 +15,6 @@
"@reach/portal": "^0.10.3",
"@react-hook/window-scroll": "^1.3.0",
"@reduxjs/toolkit": "^1.3.5",
"@storybook/addon-actions": "^6.1.17",
"@storybook/addon-essentials": "^6.1.17",
"@storybook/addon-links": "^6.1.17",
"@storybook/addons": "^6.1.17",
"@storybook/components": "^6.1.17",
"@storybook/preset-create-react-app": "^3.1.5",
"@storybook/preset-typescript": "^3.0.0",
"@storybook/react": "^6.1.17",
"@storybook/theming": "^6.1.17",
"@styled-system/css": "^5.1.5",
"@typechain/ethers-v5": "^7.0.0",
"@types/jest": "^25.2.1",
"@types/lingui__core": "^2.7.1",
@@ -131,7 +121,6 @@
"integration-test": "start-server-and-test 'serve build -l 3000' http://localhost:3000 'cypress run'",
"postinstall": "yarn compile-contract-types",
"start": "yarn compile-contract-types && react-scripts start",
"storybook": "start-storybook -p 6006",
"test": "react-scripts test --env=jsdom"
},
"eslintConfig": {

View File

@@ -1,5 +1,5 @@
<!DOCTYPE html>
<html lang="en">
<html lang="en" translate="no">
<head>
<meta charset="utf-8" />
<link rel="shortcut icon" type="image/png" href="%PUBLIC_URL%/favicon.png" />
@@ -24,6 +24,67 @@
Learn how to configure a non-root public URL by running `npm run build`.
-->
<style>
* {
font-family: 'Inter', sans-serif;
box-sizing: border-box;
}
@supports (font-variation-settings: normal) {
* {
font-family: 'Inter var', sans-serif;
}
}
html,
body {
margin: 0;
padding: 0;
}
button {
user-select: none;
}
html {
font-size: 16px;
font-variant: none;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
font-feature-settings: 'ss01' on, 'ss02' on, 'cv01' on, 'cv03' on;
}
#background-radial-gradient {
position: fixed;
top: 0;
left: 0;
right: 0;
pointer-events: none;
width: 200vw;
height: 200vh;
mix-blend-mode: color;
background: radial-gradient(50% 50% at 50% 50%, #fc077d10 0%, rgba(255, 255, 255, 0) 100%);
transform: translate(-50vw, -100vh);
z-index: -1;
}
html {
min-height: 100%;
}
@media (prefers-color-scheme: dark) {
html {
background-color: #212429;
}
}
@media (prefers-color-scheme: light) {
html {
background-color: #F7F8FA;
}
}
</style>
<title>Uniswap Interface</title>
</head>
<body>

View File

@@ -1,44 +0,0 @@
import { Story } from '@storybook/react/types-6-0'
import React, { PropsWithChildren } from 'react'
import Component, { BadgeProps, BadgeVariant } from './index'
export default {
title: 'Badge',
argTypes: {
variant: {
name: 'variant',
type: { name: 'string', require: false },
defaultValue: BadgeVariant.DEFAULT,
description: 'badge variant',
control: {
type: 'select',
options: Object.values(BadgeVariant),
},
},
},
args: {
children: '🦄 UNISWAP 🦄',
},
}
const Template: Story<PropsWithChildren<BadgeProps>> = (args) => <Component {...args}>{args.children}</Component>
export const DefaultBadge = Template.bind({})
DefaultBadge.args = {
variant: BadgeVariant.DEFAULT,
}
export const WarningBadge = Template.bind({})
WarningBadge.args = {
variant: BadgeVariant.WARNING,
}
export const NegativeBadge = Template.bind({})
NegativeBadge.args = {
variant: BadgeVariant.NEGATIVE,
}
export const PositiveBadge = Template.bind({})
PositiveBadge.args = {
variant: BadgeVariant.POSITIVE,
}

View File

@@ -1,153 +0,0 @@
import { Story } from '@storybook/react/types-6-0'
import styled from 'styled-components/macro'
import React from 'react'
import {
ButtonConfirmed,
ButtonDropdown,
ButtonDropdownGrey,
ButtonDropdownLight,
ButtonEmpty,
ButtonError,
ButtonGray,
ButtonLight,
ButtonOutlined,
ButtonPink,
ButtonPrimary,
ButtonRadio,
ButtonSecondary,
ButtonUNIGradient,
ButtonWhite,
} from './index'
const wrapperCss = styled.main`
font-size: 2em;
margin: 3em;
max-width: 300px;
`
export default {
title: 'Buttons',
argTypes: {
disabled: { control: { type: 'boolean' } },
onClick: { action: 'clicked' },
},
decorators: [
(Component: Story) => (
<div css={wrapperCss}>
<Component />
</div>
),
],
}
const Unicorn = () => (
<span role="img" aria-label="unicorn">
🦄
</span>
)
export const Radio = () => (
<ButtonRadio>
<Unicorn />
&nbsp;UNISWAP&nbsp;
<Unicorn />
</ButtonRadio>
)
export const DropdownLight = () => (
<ButtonDropdownLight>
<Unicorn />
&nbsp;UNISWAP&nbsp;
<Unicorn />
</ButtonDropdownLight>
)
export const DropdownGrey = () => (
<ButtonDropdownGrey>
<Unicorn />
&nbsp;UNISWAP&nbsp;
<Unicorn />
</ButtonDropdownGrey>
)
export const Dropdown = () => (
<ButtonDropdown>
<Unicorn />
&nbsp;UNISWAP&nbsp;
<Unicorn />
</ButtonDropdown>
)
export const Error = () => (
<ButtonError>
<Unicorn />
&nbsp;UNISWAP&nbsp;
<Unicorn />
</ButtonError>
)
export const Confirmed = () => (
<ButtonConfirmed>
<Unicorn />
&nbsp;UNISWAP&nbsp;
<Unicorn />
</ButtonConfirmed>
)
export const White = () => (
<ButtonWhite>
<Unicorn />
&nbsp;UNISWAP&nbsp;
<Unicorn />
</ButtonWhite>
)
export const Empty = () => (
<ButtonEmpty>
<Unicorn />
&nbsp;UNISWAP&nbsp;
<Unicorn />
</ButtonEmpty>
)
export const Outlined = () => (
<ButtonOutlined>
<Unicorn />
&nbsp;UNISWAP&nbsp;
<Unicorn />
</ButtonOutlined>
)
export const UNIGradient = () => (
<ButtonUNIGradient>
<Unicorn />
&nbsp;UNISWAP&nbsp;
<Unicorn />
</ButtonUNIGradient>
)
export const Pink = () => (
<ButtonPink>
<Unicorn />
&nbsp;UNISWAP&nbsp;
<Unicorn />
</ButtonPink>
)
export const Secondary = () => (
<ButtonSecondary>
<Unicorn />
&nbsp;UNISWAP&nbsp;
<Unicorn />
</ButtonSecondary>
)
export const Gray = () => (
<ButtonGray>
<Unicorn />
&nbsp;UNISWAP&nbsp;
<Unicorn />
</ButtonGray>
)
export const Light = () => (
<ButtonLight>
<Unicorn />
&nbsp;UNISWAP&nbsp;
<Unicorn />
</ButtonLight>
)
export const Primary = () => (
<ButtonPrimary>
<Unicorn />
&nbsp;UNISWAP&nbsp;
<Unicorn />
</ButtonPrimary>
)

View File

@@ -1,18 +0,0 @@
import { Story } from '@storybook/react/types-6-0'
import React from 'react'
import { DAI, WBTC } from '../../constants/tokens'
import Component, { DoubleCurrencyLogoProps } from './index'
export default {
title: 'DoubleCurrencyLogo',
decorators: [],
}
const Template: Story<DoubleCurrencyLogoProps> = (args) => <Component {...args} />
export const DoubleCurrencyLogo = Template.bind({})
DoubleCurrencyLogo.args = {
currency0: DAI,
currency1: WBTC,
size: 220,
}

View File

@@ -1,90 +0,0 @@
import { Story } from '@storybook/react/types-6-0'
import React from 'react'
// import Row, { RowFixed } from 'components/Row'
import styled from 'styled-components/macro'
import Component, { LineChartProps } from './'
import { dummyData } from './data'
// import { AutoColumn } from 'components/Column'
// import { TYPE } from 'theme'
// import DoubleCurrencyLogo from 'components/DoubleLogo'
// import { MKR } from 'constants'
// import { ETHER } from '@uniswap/sdk'
// import LineChart from '.'
const Wrapper = styled.div`
margin: 1em 2em;
max-width: 500px;
& > * {
font-size: 1em;
}
`
export default {
title: 'Charts',
argTypes: {
disabled: { control: { type: 'boolean' } },
onClick: { action: 'clicked' },
},
decorators: [
(Component: Story) => (
<Wrapper>
<Component />
</Wrapper>
),
],
}
const Template: Story<LineChartProps> = (args) => <Component {...args}>{args.children}</Component>
export const Basic = Template.bind({})
Basic.args = { data: dummyData }
// const Full = () => {
// const [value, setValue] = useState<number | undefined>(dummyData[dummyData.length - 1].value)
// const dummyUSDPrice = 410 // used for conversion
// const TopLeftContent = () => (
// <AutoColumn gap="md">
// <RowFixed align="center">
// <DoubleCurrencyLogo currency0={MKR} currency1={ETHER} size={20} />{' '}
// <TYPE.main fontSize="20px" color="white" ml="10px">
// ETH / MKR
// </TYPE.main>
// </RowFixed>
// <Row>
// <TYPE.main fontSize="20px" color="white">
// {value} MKR
// </TYPE.main>
// <TYPE.main color="#565A69" fontSize="20px" ml="10px">
// ($
// {value
// ? (value * dummyUSDPrice).toLocaleString('USD', {
// currency: 'USD',
// minimumFractionDigits: 2
// })
// : null}{' '}
// )
// </TYPE.main>
// </Row>
// </AutoColumn>
// )
// return (
// <Wrapper>
// <LineChart data={dummyData} setValue={setValue} topLeft={<TopLeftContent />} />
// </Wrapper>
// )
// }
// export const FullVersion = Template.bind(() => <LineChart data={dummyData} />)
// Full.args = { data: dummyData }
// Full.decorators = [
// (Story: any) => {
// return (
// <Wrapper>
// <LineChart data={dummyData} />
// </Wrapper>
// )
// }
// ]

View File

@@ -1,23 +0,0 @@
import { Story } from '@storybook/react/types-6-0'
import React from 'react'
import styled from 'styled-components/macro'
import Component from './index'
const Wrapper = styled.div`
max-width: 150px;
`
export default {
title: 'Menu',
decorators: [
() => (
<Wrapper>
<Component />
</Wrapper>
),
],
}
const Template: Story<any> = (args) => <Component {...args} />
export const Menu = Template.bind({})
Menu.args = {}

View File

@@ -33,7 +33,7 @@ const MobilePopupInner = styled.div`
const FixedPopupColumn = styled(AutoColumn)<{ extraPadding: boolean }>`
position: fixed;
top: ${({ extraPadding }) => (extraPadding ? '72px' : '88px')};
top: ${({ extraPadding }) => (extraPadding ? '80px' : '88px')};
right: 1rem;
max-width: 355px !important;
width: 100%;

View File

@@ -1,53 +0,0 @@
// import { Story } from '@storybook/react/types-6-0'
// import React from 'react'
// import { Position } from 'types/position'
// import { basisPointsToPercent } from 'utils'
// import { DAI, WBTC } from '../../constants'
// import Component, { PositionListProps } from './index'
// import { CurrencyAmount } from '@uniswap/sdk-core'
// import JSBI from 'jsbi'
// const FEE_BIPS = {
// FIVE: basisPointsToPercent(5),
// THIRTY: basisPointsToPercent(30),
// ONE_HUNDRED: basisPointsToPercent(100),
// }
// const daiAmount = CurrencyAmount.fromRawAmount(DAI, JSBI.BigInt(500 * 10 ** 18))
// const wbtcAmount = CurrencyAmount.fromRawAmount(WBTC, JSBI.BigInt(10 ** 7))
// const positions = [
// {
// feesEarned: {
// DAI: 1000,
// WBTC: 0.005,
// },
// feeLevel: FEE_BIPS.FIVE,
// tokenAmount0: daiAmount,
// tokenAmount1: wbtcAmount,
// tickLower: 40000,
// tickUpper: 60000,
// },
// {
// feesEarned: {
// DAI: 1000,
// WBTC: 0.005,
// },
// feeLevel: FEE_BIPS.THIRTY,
// tokenAmount0: daiAmount,
// tokenAmount1: wbtcAmount,
// tickLower: 45000,
// tickUpper: 55000,
// },
// ]
// const positions: Position[] = []
export default {
title: 'PositionList',
}
// const Template: Story<PositionListProps> = (args) => <Component {...args} />
// export const PositionList = Template.bind({})
// PositionList.args = {
// positions,
// showUnwrapped: true,
// }

View File

@@ -1,31 +0,0 @@
// import { Story } from '@storybook/react/types-6-0'
// import { FeeAmount, MAX_TICK, MIN_TICK, TICK_SPACINGS } from '@uniswap/v3-sdk'
// import { BigNumber } from 'ethers'
// import React from 'react'
// import { Position } from 'types/position'
// import Component, { PositionListItemProps } from './index'
// const position: Position = {
// nonce: BigNumber.from(0),
// operator: '',
// token0: '',
// token1: '',
// fee: FeeAmount.LOW,
// tickLower: MIN_TICK(TICK_SPACINGS[FeeAmount.LOW]),
// tickUpper: MAX_TICK(TICK_SPACINGS[FeeAmount.LOW]),
// liquidity,
// feeGrowthInside0LastX128fee
// feeGrowthInside0LastX128
// feeGrowthInside1LastX128
// tokensOwed0
// tokensOwed1
// }
export default {
title: 'PositionListItem',
}
// const Template: Story<PositionListItemProps> = (args) => <Component {...args} />
// export const PositionListItem = Template.bind({})
// PositionListItem.args = {position}

View File

@@ -1,5 +1,6 @@
import { Trans } from '@lingui/macro'
import React, { useMemo } from 'react'
import ReactGA from 'react-ga'
import { useLocation } from 'react-router'
import styled from 'styled-components/macro'
import { DEFAULT_LOCALE, LOCALE_LABEL, SupportedLocale } from '../../constants/locales'
@@ -38,7 +39,21 @@ export function SwitchLocaleLink() {
return (
<Container>
<Trans>
Uniswap available in: {<StyledInternalLink to={target}>{LOCALE_LABEL[targetLocale]}</StyledInternalLink>}
Uniswap available in:{' '}
{
<StyledInternalLink
onClick={() => {
ReactGA.event({
category: 'Localization',
action: 'Switch Locale',
label: `${activeLocale} -> ${targetLocale}`,
})
}}
to={target}
>
{LOCALE_LABEL[targetLocale]}
</StyledInternalLink>
}
</Trans>
</Container>
)

View File

@@ -1,14 +0,0 @@
import { Story } from '@storybook/react/types-6-0'
import React from 'react'
import Component from './index'
export default {
title: 'ThemeColorPalette',
}
const Template: Story<any> = (_args: any, context: Record<string, any>) => {
const isDarkMode = context.globals.theme === 'dark'
return <Component isDarkMode={isDarkMode} />
}
export const Palette = Template.bind({})

View File

@@ -1,35 +0,0 @@
import { Story } from '@storybook/react/types-6-0'
import styled from 'styled-components/macro'
import React, { useState } from 'react'
import MultiToggle from './MultiToggle'
const wrapperCss = styled.main`
font-size: 2em;
margin: 3em;
max-width: 300px;
`
export default {
title: 'Toggles',
argTypes: {
width: { control: { type: 'string' } },
},
decorators: [
(Component: Story) => (
<div css={wrapperCss}>
<Component />
</div>
),
],
}
export const MultiToggleExample = () => {
const [active, setActive] = useState(0)
function doSomethingWithIndex(index: number) {
// here's where youd update state based on index choice
// switch(index){} ...
setActive(index)
}
return <MultiToggle toggle={doSomethingWithIndex} activeIndex={active} options={['option1', 'option2', 'option3']} />
}

View File

@@ -1,4 +1,3 @@
import React from 'react'
import styled from 'styled-components/macro'
export const ToggleWrapper = styled.button<{ width?: string }>`
@@ -31,32 +30,3 @@ export const ToggleElement = styled.span<{ isActive?: boolean; fontSize?: string
color: ${({ theme, isActive }) => (isActive ? theme.text2 : theme.text3)};
}
`
export const ToggleText = styled.div`
color: ${({ theme }) => theme.text3};
font-size: 12px;
margin-right: 0.5rem;
width: 100%;
white-space: nowrap;
padding: 0 0 0 4px;
`
export interface ToggleProps {
options: string[]
activeIndex: number
toggle: (index: number) => void
id?: string
width?: string
}
export default function MultiToggle({ id, options, activeIndex, toggle, width }: ToggleProps) {
return (
<ToggleWrapper id={id} width={width}>
{options.map((option, index) => (
<ToggleElement key={id + '-' + index} isActive={index === activeIndex} onClick={() => toggle(index)}>
{option}
</ToggleElement>
))}
</ToggleWrapper>
)
}

View File

@@ -26,15 +26,8 @@ export default function useUSDCPrice(currency?: Currency): Price<Currency, Token
return undefined
}
// return some fake price data for non-mainnet
if (chainId !== 1) {
const fakeUSDC = new Token(chainId, '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48', 6, 'fUSDC', 'Fake USDC')
return new Price(
currency,
fakeUSDC,
10 ** Math.max(0, currency.decimals - 6),
15 * 10 ** Math.max(6 - currency.decimals, 0)
)
return undefined
}
// handle usdc

View File

@@ -1,62 +0,0 @@
@import '~inter-ui';
@import '~@reach/dialog/styles.css';
* {
font-family: 'Inter', sans-serif;
box-sizing: border-box;
}
@supports (font-variation-settings: normal) {
* {
font-family: 'Inter var', sans-serif;
}
}
html,
body {
margin: 0;
padding: 0;
}
button {
user-select: none;
}
html {
font-size: 16px;
font-variant: none;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
font-feature-settings: 'ss01' on, 'ss02' on, 'cv01' on, 'cv03' on;
}
#background-radial-gradient {
position: fixed;
top: 0;
left: 0;
right: 0;
pointer-events: none;
width: 200vw;
height: 200vh;
mix-blend-mode: color;
background: radial-gradient(50% 50% at 50% 50%, #fc077d10 0%, rgba(255, 255, 255, 0) 100%);
transform: translate(-50vw, -100vh);
z-index: -1;
}
html {
min-height: 100%;
}
@media (prefers-color-scheme: dark) {
html {
background-color: #212429;
}
}
@media (prefers-color-scheme: light) {
html {
background-color: #F7F8FA;
}
}

View File

@@ -1,4 +1,5 @@
import './index.css'
import 'inter-ui'
import '@reach/dialog/styles.css'
import { createWeb3ReactRoot, Web3ReactProvider } from '@web3-react/core'
import React, { StrictMode } from 'react'
import { isMobile } from 'react-device-detect'

View File

@@ -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-01 20:00\n"
"PO-Revision-Date: 2021-06-01 20:54\n"
#: src/pages/Pool/PositionPage.tsx
#: src/pages/Pool/PositionPage.tsx
@@ -113,11 +113,11 @@ msgstr "<0>Dafür</0><1>{0}</1>"
#: 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>Tipp:</0> Entfernen von Pool-Token wandelt deine Position zurück in zugrunde liegende Token zum aktuellen Kurs, proportional zum Anteil am Pool. Die angesammelten Gebühren sind in den Beträgen enthalten, die Sie erhalten."
msgstr "<0>Tipp:</0> Durch das Entfernen von Pool-Token wird Ihre Position zum aktuellen Kurs proportional zu Ihrem Anteil am Pool in die zugrunde liegenden Token umgewandelt. Eingenommene Gebühren sind in den Beträgen enthalten, die Sie erhalten."
#: src/pages/PoolFinder/index.tsx
msgid "<0>Tip:</0> Use this tool to find pairs that don't automatically appear in the interface."
msgstr "<0>Tipp:</0> Benutzen Sie dieses Werkzeug, um Paare zu finden, die nicht automatisch in der Schnittstelle erscheinen."
msgstr "<0>Tipp:</0> Verwenden Sie dieses Tool, um Paare zu finden, die nicht automatisch in der Benutzeroberfläche angezeigt werden."
#: 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."
@@ -125,7 +125,7 @@ msgstr "<0>Tipp:</0> Wenn Sie Liquidität hinzufügen, erhalten Sie Pool-Token,
#: src/pages/Vote/VotePage.tsx
msgid "<0>Unlock voting</0> to prepare for the next proposal."
msgstr "<0>Abstimmung freischalten</0> um den nächsten Vorschlag vorzubereiten."
msgstr "<0>Abstimmen freischalten</0> um bereit zu sein für den nächsten Vorschlag."
#: src/components/claim/ClaimModal.tsx
msgid "<0>🎉 </0>Welcome to team Unicorn :) <1>🎉</1>"
@@ -133,7 +133,7 @@ msgstr "<0>🎉 </0>Willkommen im Team Unicorn :) <1>🎉</1>"
#: src/pages/Vote/index.tsx
msgid "A minimum threshold of 1% of the total UNI supply is required to submit proposals"
msgstr "Mindestens 1% des gesamten UNI-Angebots ist erforderlich, um Vorschläge einzureichen"
msgstr "Mindestens 1% des gesamten UNI-Vorrats ist erforderlich, um Vorschläge einzureichen"
#: src/components/Menu/index.tsx
msgid "About"
@@ -174,7 +174,7 @@ msgstr "Liquidität hinzufügen."
#: src/components/TransactionConfirmationModal/index.tsx
msgid "Add {0} to Metamask <0/>"
msgstr "{0} zur Metamask <0/> hinzufügen"
msgstr "{0} zu Metamask hinzufügen <0/>"
#: src/pages/AddLiquidityV2/index.tsx
#: src/pages/AddLiquidityV2/index.tsx
@@ -187,15 +187,15 @@ msgstr "{0}-{1} Liquidität hinzufügen"
#: src/pages/AddLiquidity/index.tsx
msgid "Add {0}/{1} V3 liquidity"
msgstr "Liquidität {0}/{1} V3 hinzufügen"
msgstr "{0}/{1} V3 Liquidität hinzufügen"
#: src/components/TransactionConfirmationModal/index.tsx
msgid "Added {0}"
msgstr "Hinzugefügt {0}"
msgstr "{0} hinzugefügt"
#: src/components/claim/AddressClaimModal.tsx
msgid "Address has no available claim"
msgstr "Adresse hat keinen verfügbaren Anspruch"
msgstr "Adresse hat keinen gültigen Anspruch"
#: src/pages/Vote/VotePage.tsx
msgid "Against"
@@ -203,19 +203,19 @@ msgstr "Gegen"
#: src/pages/MigrateV2/MigrateV2Pair.tsx
msgid "Allow LP token migration"
msgstr "Erlaube LP-Token Migration"
msgstr "LP-Token Migration erlauben"
#: src/components/Settings/index.tsx
msgid "Allow high price impact trades and skip the confirm screen. Use at your own risk."
msgstr "Erlaube hohe Preisauswirkungen und überspringe den Bestätigungs-Bildschirm. Auf eigene Gefahr."
msgstr "Erlaube hohe Preisauswirkungen und überspringe den Bestätigungsbildschirm. Auf eigene Gefahr."
#: src/pages/Swap/index.tsx
msgid "Allow the Uniswap Protocol to use your {0}"
msgstr "Erlaube dem Uniswap-Protokoll Ihre {0} zu verwenden"
msgstr "Erlaube dem Uniswap Protokoll, {0} zu verwenden"
#: src/pages/MigrateV2/MigrateV2Pair.tsx
msgid "Allowed"
msgstr "Zulässig"
msgstr "Erlaubt"
#: src/components/Header/URLWarning.tsx
msgid "Always make sure the URL is<0>app.uniswap.org</0> - bookmark it to be safe."
@@ -227,11 +227,11 @@ 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 die Gebühr für Transfer- und Rebase-Token nicht mit Uniswap V3 kompatibel ist."
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."
#: src/components/Menu/index.tsx
msgid "Analytics"
msgstr "Analytik"
msgstr "Statistiken"
#: src/components/earn/StakingModal.tsx
#: src/pages/RemoveLiquidity/index.tsx
@@ -241,7 +241,7 @@ msgstr "Bestätigen"
#: src/pages/AddLiquidityV2/index.tsx
#: src/pages/AddLiquidityV2/index.tsx
msgid "Approve {0}"
msgstr "{0} freigeben"
msgstr "{0} freischalten"
#: src/pages/RemoveLiquidity/index.tsx
msgid "Approved"
@@ -250,32 +250,32 @@ msgstr "Genehmigt"
#: src/pages/MigrateV2/MigrateV2Pair.tsx
#: src/pages/RemoveLiquidity/index.tsx
msgid "Approving"
msgstr "Genehmigung"
msgstr "Bestätige"
#: src/pages/AddLiquidityV2/index.tsx
#: src/pages/AddLiquidityV2/index.tsx
msgid "Approving {0}"
msgstr "{0} genehmigen"
msgstr "Schalte {0} frei"
#: src/components/Settings/index.tsx
msgid "Are you sure?"
msgstr "Bist du sicher?"
msgstr "Sind Sie sicher?"
#: 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 "Als Mitglied der Uniswap Community kannst du behaupten, dass die UNI für Abstimmungen und Governance verwendet wird.<0/><1/><2>Weitere Informationen über UNI</2>"
msgstr "Als Mitglied der Uniswap-Community können Sie UNI beantragen, dass für Abstimmungen verwendet wird.<0/><1/><2>Lesen Sie mehr über 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."
msgstr "Mindestens {0} {1} und {2} {3} werden aufgrund des gewählten Preisbereichs auf Ihre Brieftasche zurückerstattet."
msgstr "Mindestens {0} {1} und {2} {3} werden aufgrund des gewählten Preisbereichs in Ihren Account zurückerstattet."
#: src/components/TransactionSettings/index.tsx
msgid "Auto"
msgstr "Auto"
msgstr "Autom."
#: src/components/earn/StakingModal.tsx
msgid "Available to deposit: {0}"
msgstr "Verfügbar für die Einzahlung: {0}"
msgstr "Zur Einlage verfügbar: {0}"
#: src/components/WalletModal/index.tsx
msgid "Back"
@@ -287,7 +287,7 @@ msgstr "Kontostand:"
#: src/components/CurrencyInputPanel/index.tsx
msgid "Balance: {0} {1}"
msgstr "Balance: {0} {1}"
msgstr "Guthaben: {0} {1}"
#: src/components/FeeSelector/index.tsx
msgid "Best for exotic pairs."
@@ -307,15 +307,15 @@ msgstr "Gesperrte Adresse"
#: 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 "Durch das Hinzufügen von Liquidität verdienen Sie 0,3% aller Transaktionen an diesem Paar, proportional zu Ihrem Anteil am Pool. Die Gebühren werden dem Pool zugerechnet, in Echtzeit anfallen und können durch Abzug der Liquidität in Anspruch genommen werden."
msgstr "Durch das Hinzufügen von Liquidität verdienen Sie 0,3% aller Transaktionen an diesem Paar, proportional zu Ihrem Anteil am Pool. Diese Gebühren werden dem Pool zugerechnet, fallen in Echtzeit an und können durch Entfernen Ihrer Liquidität geltend gemacht werden."
#: 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 "Durch das Hinzufügen dieser Liste vertrauen Sie implizit darauf, dass die Daten korrekt sind. Jeder kann eine Liste erstellen, einschließlich der Erstellung gefälschter Versionen bestehender Listen und Listen, die vorgeben, Projekte zu repräsentieren, die keine haben."
msgstr "Durch das Hinzufügen dieser Liste vertrauen Sie implizit darauf, dass die Daten korrekt sind. Jeder kann eine Liste erstellen, einschließlich gefälschter Versionen bestehender Listen oder Listen die vorgeben Projekte zu repräsentieren, die keine Liste haben."
#: 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 "Durch das Verbinden einer Brieftasche erklären Sie sich mit den <0>Nutzungsbedingungen</0> von Uniswap Labs einverstanden und bestätigen, dass Sie den <1>Uniswap Protokoll Haftungsausschluss gelesen und verstanden haben</1>."
msgstr "Durch das Verbinden mit einer Wallet erklären Sie sich mit den <0>Nutzungsbedingungen</0> von Uniswap Labs einverstanden und bestätigen, dass Sie den <1>Uniswap Protokoll Haftungsausschluss</1> gelesen und verstanden haben."
#: src/components/AccountDetails/index.tsx
msgid "Change"
@@ -323,17 +323,17 @@ msgstr "Ändern"
#: src/components/Header/index.tsx
msgid "Charts"
msgstr "Diagramme"
msgstr "Charts"
#: src/pages/Pool/CTACards.tsx
msgid "Check out our v3 LP walkthrough and migration guides."
msgstr "Schauen Sie sich unsere v3 LP Walkthrough und Migrationsleitfäden an."
msgstr "Schauen Sie sich unseren v3 LP walkthrough und die Migrationsleitlinien an."
#: src/components/earn/ClaimRewardModal.tsx
#: src/components/earn/ClaimRewardModal.tsx
#: src/pages/Earn/Manage.tsx
msgid "Claim"
msgstr "Claim"
msgstr "Einfordern"
#: src/components/Header/index.tsx
#: src/components/Menu/index.tsx
@@ -341,41 +341,41 @@ msgstr "Claim"
#: src/components/claim/ClaimModal.tsx
#: src/components/claim/ClaimModal.tsx
msgid "Claim UNI"
msgstr "Claim UNI"
msgstr "UNI einfordern"
#: src/components/claim/AddressClaimModal.tsx
msgid "Claim UNI Token"
msgstr "Claim UNI Token"
msgstr "UNI Token einfordern"
#: src/components/earn/ClaimRewardModal.tsx
#: src/components/earn/ClaimRewardModal.tsx
msgid "Claim accumulated UNI rewards"
msgstr "Angesammelte UNI-Belohnungen beanspruchen"
msgstr "Angesammelte UNI-Belohnungen einfordern"
#: src/pages/Pool/PositionPage.tsx
msgid "Claim fees"
msgstr "Gebühren beantragen"
msgstr "Gebühren einfordern"
#: src/components/Popups/ClaimPopup.tsx
msgid "Claim your UNI tokens"
msgstr "Fordern Sie Ihre UNI-Token an"
msgstr "Fordern Sie Ihre UNI-Token ein"
#: src/components/claim/AddressClaimModal.tsx
msgid "Claimed"
msgstr "Beansprucht"
msgstr "Eingefordert"
#: src/components/earn/ClaimRewardModal.tsx
#: src/components/earn/UnstakingModal.tsx
msgid "Claimed UNI!"
msgstr "Gewonnene UNI!"
msgstr "UNI erhalten!"
#: src/components/claim/AddressClaimModal.tsx
msgid "Claiming"
msgstr "Beanspruchen"
msgstr "Fordere ein"
#: src/components/Header/index.tsx
msgid "Claiming UNI"
msgstr "UNI anfordern"
msgstr "Fordere UNI ein"
#: src/components/earn/ClaimRewardModal.tsx
#: src/components/earn/UnstakingModal.tsx
@@ -414,27 +414,27 @@ msgstr "Als MIT sammeln"
#: src/pages/Pool/PositionPage.tsx
msgid "Collect fees"
msgstr "Gebühren einlösen"
msgstr "Gebühren beziehen"
#: src/pages/Pool/PositionPage.tsx
msgid "Collected"
msgstr "Abgeholt"
msgstr "Eingezogen"
#: src/pages/Pool/PositionPage.tsx
msgid "Collecting"
msgstr "Sammeln"
msgstr "Ziehe ein"
#: src/pages/Pool/PositionPage.tsx
msgid "Collecting fees"
msgstr "Sammelgebühren"
msgstr "Ziehe Gebühren ein"
#: src/pages/Pool/PositionPage.tsx
msgid "Collecting fees will withdraw currently available fees for you."
msgstr "Die Erhebung von Gebühren wird für Sie derzeit verfügbare Gebühren abheben."
msgstr "Gebühren einziehen wird für Sie derzeit verfügbare Gebühren beziehen."
#: src/components/SearchModal/CommonBases.tsx
msgid "Common bases"
msgstr "Gemeinsame Basen"
msgstr "Häufige Token"
#: src/pages/RemoveLiquidity/index.tsx
msgid "Confirm"

View File

@@ -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-01 16:24\n"
"PO-Revision-Date: 2021-06-01 20:54\n"
#: src/pages/Pool/PositionPage.tsx
#: src/pages/Pool/PositionPage.tsx

View File

@@ -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-01 16:24\n"
"PO-Revision-Date: 2021-06-02 09:35\n"
#: src/pages/Pool/PositionPage.tsx
#: src/pages/Pool/PositionPage.tsx
@@ -68,15 +68,15 @@ msgstr "0 UNI/週"
#: src/components/FeeSelector/index.tsx
msgid "0.05% fee"
msgstr "0.05%手数料"
msgstr "0.05% 手数料"
#: src/components/FeeSelector/index.tsx
msgid "0.3% fee"
msgstr "0.3%手数料"
msgstr "0.3% 手数料"
#: src/components/FeeSelector/index.tsx
msgid "1% fee"
msgstr "1% 手数料"
msgstr "1% 手数料"
#: src/pages/RemoveLiquidity/V3.tsx
msgid "25%"
@@ -113,27 +113,27 @@ msgstr "<0></0><1>{0}</1>"
#: 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 pairs that don't automatically appear in the interface."
msgstr "<0>ヒント:</0>このツールを使用して、インターフェイスに自動的に表示されないペアを見つけます。"
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."
msgstr "<0>投票のロックを解除</0>次の提案に備えてください。"
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 1% of the total UNI supply is required to submit proposals"
msgstr "提案を提出するには、UNI総供給量の1%以上の閾値が必要です"
msgstr "提案を提出するには、総供給量の1%以上のUNIが必要です"
#: src/components/Menu/index.tsx
msgid "About"
@@ -187,7 +187,7 @@ msgstr "{0}-{1} の流動性を追加"
#: src/pages/AddLiquidity/index.tsx
msgid "Add {0}/{1} V3 liquidity"
msgstr "{0}/{1} V3流動性を追加"
msgstr "{0}/{1} V3流動性を追加"
#: src/components/TransactionConfirmationModal/index.tsx
msgid "Added {0}"
@@ -207,11 +207,11 @@ 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} の使用をユニスワッププロトコルに許可する"
msgstr "{0} の使用をUniswapプロトコルに許可する"
#: src/pages/MigrateV2/MigrateV2Pair.tsx
msgid "Allowed"
@@ -227,7 +227,7 @@ 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と互換性がないことにご注意ください。"
msgstr "スワップを実行しようとした際、エラーが発生しました。スリッページの許容範囲を増やす必要があるかもしれません。それでも上手くいかない場合は、取引しているトークンとの互換性がない可能性があります。転送時に手数料が発生するトークンおよびリベーストークンは、UniswapV3と互換性がないことにご注意ください。"
#: src/components/Menu/index.tsx
msgid "Analytics"
@@ -241,7 +241,7 @@ msgstr "承認"
#: src/pages/AddLiquidityV2/index.tsx
#: src/pages/AddLiquidityV2/index.tsx
msgid "Approve {0}"
msgstr "承認 {0}"
msgstr "{0} を承認する"
#: src/pages/RemoveLiquidity/index.tsx
msgid "Approved"
@@ -255,15 +255,15 @@ msgstr "承認中"
#: src/pages/AddLiquidityV2/index.tsx
#: src/pages/AddLiquidityV2/index.tsx
msgid "Approving {0}"
msgstr "承認中 {0}"
msgstr "{0} を承認中"
#: src/components/Settings/index.tsx
msgid "Are you sure?"
msgstr "よろしいですか?"
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."
@@ -287,7 +287,7 @@ 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."
@@ -295,11 +295,11 @@ 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"
@@ -307,15 +307,15 @@ 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>に同意し、<1>Uniswapプロトコル免責事項</1>を読み、理解したことに同意します。"
#: src/components/AccountDetails/index.tsx
msgid "Change"
@@ -327,13 +327,13 @@ msgstr "チャート"
#: src/pages/Pool/CTACards.tsx
msgid "Check out our v3 LP walkthrough and migration guides."
msgstr "私たちのv3 LPウォークスルーと移行ガイドをご覧ください。"
msgstr "v3LPウォークスルーと移行ガイドをご覧ください。"
#: src/components/earn/ClaimRewardModal.tsx
#: src/components/earn/ClaimRewardModal.tsx
#: src/pages/Earn/Manage.tsx
msgid "Claim"
msgstr "Claim"
msgstr "請求"
#: src/components/Header/index.tsx
#: src/components/Menu/index.tsx
@@ -341,16 +341,16 @@ msgstr "Claim"
#: src/components/claim/ClaimModal.tsx
#: src/components/claim/ClaimModal.tsx
msgid "Claim UNI"
msgstr "Claim UNI"
msgstr "UNIを請求する"
#: src/components/claim/AddressClaimModal.tsx
msgid "Claim UNI Token"
msgstr "Claim UNI Token"
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"
@@ -367,7 +367,7 @@ msgstr "請求済み"
#: src/components/earn/ClaimRewardModal.tsx
#: src/components/earn/UnstakingModal.tsx
msgid "Claimed UNI!"
msgstr "UNIを主張しました"
msgstr "請求済みのUNI"
#: src/components/claim/AddressClaimModal.tsx
msgid "Claiming"
@@ -380,7 +380,7 @@ msgstr "UNIを請求中"
#: src/components/earn/ClaimRewardModal.tsx
#: src/components/earn/UnstakingModal.tsx
msgid "Claiming {0} UNI"
msgstr "UNIを {0} 個要求中"
msgstr "{0} UNIを請求中"
#: src/pages/AddLiquidity/index.tsx
msgid "Clear All"
@@ -481,11 +481,11 @@ msgstr "ウォレットに接続"
#: src/pages/PoolFinder/index.tsx
msgid "Connect to a wallet to find pools"
msgstr "プールを見つけるにはウォレット接続してください"
msgstr "プールを見つけるにはウォレット接続してください"
#: src/pages/MigrateV2/index.tsx
msgid "Connect to a wallet to view your V2 liquidity."
msgstr "ウォレットに接続してV2流動性を確認します。"
msgstr "ウォレットに接続してV2流動性を確認します。"
#: src/pages/Pool/v2.tsx
msgid "Connect to a wallet to view your liquidity."
@@ -524,11 +524,11 @@ 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"
msgstr "プールを作成し、 {0}/{1} V3流動性を追加"
msgstr "プールを作成し、 {0}/{1} V3流動性を追加"
#: src/pages/PoolFinder/index.tsx
msgid "Create pool."
@@ -536,16 +536,16 @@ msgstr "プールを作成"
#: src/pages/AddLiquidity/index.tsx
msgid "Current Price"
msgstr "現在価格"
msgstr "現在価格"
#: src/components/PositionPreview/index.tsx
#: src/pages/Pool/PositionPage.tsx
msgid "Current price"
msgstr "現在価格"
msgstr "現在価格"
#: src/pages/AddLiquidity/index.tsx
msgid "Current {0} Price:"
msgstr "現在の {0} 価格:"
msgstr "{0} の現在価格:"
#: src/components/vote/DelegateModal.tsx
msgid "Delegate Votes"
@@ -564,35 +564,35 @@ msgstr "投票を委任中"
#: src/components/earn/StakingModal.tsx
#: src/pages/Earn/Manage.tsx
msgid "Deposit"
msgstr "Deposit預金"
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 "預金流動性format@@0"
msgstr "流動性を預ける"
#: src/pages/Earn/index.tsx
msgid "Deposit your Liquidity Provider tokens to receive UNI, the Uniswap protocol governance token."
msgstr "流動性プロバイダトークンをデポジットして、UNI、Uniswapプロトコルガバナンストークンを受け取ります。"
msgstr "LPトークンを預けて、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"
@@ -628,15 +628,15 @@ msgstr "ドキュメント"
#: src/pages/MigrateV2/index.tsx
msgid "Dont 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/swap/hooks.ts
msgid "Enter a recipient"
msgstr "受信者を入力してください"
msgstr "受取人を入力ください"
#: src/components/TransactionSettings/index.tsx
msgid "Enter a valid slippage percentage"
@@ -644,7 +644,7 @@ 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."
msgstr "UNIクレームを発生させるアドレスを入力します。アドレスに請求可能なUNIがある場合は、送信時に送信されます。"
msgstr "UNIの請求を行うためのアドレスを入力してください。そのアドレスに請求可能なUNIがあれば、送信時にそのアドレスに送信されます。"
#: src/components/earn/ClaimRewardModal.tsx
#: src/components/earn/UnstakingModal.tsx
@@ -655,11 +655,11 @@ msgstr "UNIクレームを発生させるアドレスを入力します。アド
#: src/state/stake/hooks.ts
#: src/state/swap/hooks.ts
msgid "Enter an amount"
msgstr "金額を入力"
msgstr "数量を入力してください"
#: src/components/SearchModal/ManageLists.tsx
msgid "Enter valid list location"
msgstr "有効なリストの場所を入力してください"
msgstr "有効なリストの位置を入力ください"
#: src/components/SearchModal/ManageTokens.tsx
msgid "Enter valid token address"
@@ -685,40 +685,40 @@ 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 Analyticsで人気のプールを探しま。"
msgstr "Uniswap Analyticsで人気のあるプールを探しましょう。"
#: src/components/PositionPreview/index.tsx
msgid "Fee Tier"
msgstr "手数料段階"
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 "以下に示す各プールについては、format@@0をクリックしてUniswap V2から流動性を削除し、Uniswap V3に入金します。"
msgstr "以下各プールで「移行」をクリックすると、Uniswap V2 から流動性を取り出し、Uniswap V3 に預けます。"
#: src/components/swap/SwapModalHeader.tsx
#: src/pages/Swap/index.tsx
msgid "From"
msgstr "差出人:"
msgstr "売るトークン:"
#: src/pages/Swap/index.tsx
msgid "From (at most)"
msgstr "(最大)から"
msgstr "(最大)売るトークン"
#: src/components/ErrorBoundary/index.tsx
msgid "Get support on Discord"
msgstr "Discordサポートを受ける"
msgstr "Discordサポートを受ける"
#: src/pages/Pool/index.tsx
msgid "Hide closed positions"
msgstr "閉じた位置を隠す"
msgstr "決済したポジションを隠す"
#: src/pages/Swap/index.tsx
msgid "High Price Impact"
@@ -730,7 +730,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
@@ -756,7 +756,7 @@ msgstr "範囲内"
#: src/pages/Pool/PositionPage.tsx
msgid "Increase Liquidity"
msgstr "流動性を上げる"
msgstr "流動性を増やす"
#: src/pages/AddLiquidityV2/index.tsx
msgid "Initial prices and pool share"
@@ -768,7 +768,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"
@@ -788,7 +788,7 @@ msgstr "この取引には流動性が不足しています。マルチホップ
#: src/state/mint/v3/hooks.ts
#: src/state/swap/hooks.ts
msgid "Insufficient {0} balance"
msgstr "不十分な {0} バランス"
msgstr "{0} が残高不足です"
#: src/components/Settings/index.tsx
msgid "Interface Settings"
@@ -805,16 +805,16 @@ msgstr "無効なペアです。"
#: src/state/mint/v3/hooks.ts
msgid "Invalid price input"
msgstr "無効な価格入力"
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"
@@ -823,19 +823,19 @@ msgstr "詳細情報"
#: src/components/claim/ClaimModal.tsx
#: src/pages/Pool/PositionPage.tsx
msgid "Liquidity"
msgstr "<unk>"
msgstr "流動性"
#: src/components/swap/AdvancedSwapDetails.tsx
msgid "Liquidity Provider Fee"
msgstr "流動性プロバイダー手数料"
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"
@@ -871,15 +871,15 @@ msgstr "管理"
#: src/components/PositionCard/index.tsx
msgid "Manage Liquidity in Rewards Pool"
msgstr "リワードプールで流動性を管理"
msgstr "報酬プールで流動性を管理"
#: src/components/SearchModal/CurrencySearch.tsx
msgid "Manage Token Lists"
msgstr "トークンリスト管理"
msgstr "トークンリスト管理"
#: src/pages/PoolFinder/index.tsx
msgid "Manage this pool."
msgstr "このプールを管理します"
msgstr "このプールを管理"
#: src/pages/RemoveLiquidity/V3.tsx
msgid "Max"
@@ -925,7 +925,7 @@ msgstr "V2の流動性を移行"
#: src/pages/Pool/index.tsx
msgid "Migrate V2 liquidity"
msgstr "V2流動性移行"
msgstr "V2流動性移行"
#: src/pages/MigrateV2/index.tsx
msgid "Migrate your liquidity tokens from Uniswap V2 to Uniswap V3."
@@ -962,7 +962,7 @@ msgstr "新しいポジション"
#: src/pages/MigrateV2/index.tsx
msgid "No V2 Liquidity found."
msgstr "V2流動性が見つかりません。"
msgstr "V2流動性が見つかりません。"
#: src/pages/Earn/index.tsx
#: src/pages/Earn/index.tsx
@@ -987,15 +987,15 @@ msgstr "結果が見つかりませんでした。"
#: src/components/Toggle/ListToggle.tsx
msgid "OFF"
msgstr "オフ"
msgstr "OFF"
#: src/components/Toggle/ListToggle.tsx
msgid "ON"
msgstr "オン"
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"
@@ -1007,15 +1007,15 @@ msgstr "オン"
#: 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."
msgstr "ブロック {0} が投票の対象となる前に自己委任または他のアドレスに委任されたUNI投票のみ。"
msgstr "ブロック{0} 前に自己委任または他のアドレスに委任されたUNIのみが投票の対象となります。"
#: src/components/Web3ReactManager/index.tsx
msgid "Oops! An unknown error occurred. Please refresh the page, or visit from another browser or device."
msgstr "おっと!不明なエラーが発生しました。ページを更新するか、別のブラウザまたはデバイスからアクセスしてください。"
msgstr "不明なエラーが発生しました。ページを更新するか、別のブラウザまたはデバイスからアクセスしてください。"
#: src/components/Badge/RangeBadge.tsx
msgid "Out of range"
@@ -1024,15 +1024,15 @@ 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>"
msgstr "出力は <0>{0}</0> に送信されます"
msgstr "結果は <0>{0}</0> に送信されます"
#: src/pages/Pool/PositionPage.tsx
msgid "Owner"
@@ -1040,7 +1040,7 @@ msgstr "所有者"
#: src/pages/Earn/index.tsx
msgid "Participating pools"
msgstr "参加するプール"
msgstr "参加中のプール"
#: src/components/WalletModal/index.tsx
msgid "Please connect to the appropriate Ethereum network."
@@ -1102,11 +1102,11 @@ msgstr "価格への影響"
#: src/pages/Swap/index.tsx
msgid "Price Impact Too High"
msgstr "価格の影響がすぎます"
msgstr "価格の影響が大きすぎます"
#: src/components/swap/SwapModalHeader.tsx
msgid "Price Updated"
msgstr "価格更新"
msgstr "価格更新されています"
#: src/components/PositionList/index.tsx
#: src/pages/Pool/PositionPage.tsx
@@ -1131,7 +1131,7 @@ msgstr "コミュニティメンバーが提出した提案はここに表示さ
#: src/pages/Vote/VotePage.tsx
msgid "Proposer"
msgstr "提案"
msgstr "提案"
#: src/pages/AddLiquidityV2/ConfirmAddModalBottom.tsx
msgid "Rates"
@@ -1139,19 +1139,19 @@ msgstr "レート"
#: src/pages/Earn/index.tsx
msgid "Read more about UNI"
msgstr "UNIについてもっと読む"
msgstr "UNIについてもっと見る"
#: src/pages/Vote/index.tsx
msgid "Read more about Uniswap governance"
msgstr "Uniswapガバナンスについてもっと読む"
msgstr "Uniswapガバナンスについてもっと見る"
#: src/pages/Pool/v2.tsx
msgid "Read more about providing liquidity"
msgstr "流動性の提供についてもっと読む"
msgstr "流動性の提供についてもっと見る"
#: src/components/swap/UnsupportedCurrencyFooter.tsx
msgid "Read more about unsupported assets"
msgstr "サポートされていないアセットの詳細を読む"
msgstr "サポートされていないアセットの詳細を見る"
#: src/components/AccountDetails/index.tsx
msgid "Recent Transactions"
@@ -1167,7 +1167,7 @@ msgstr "削除"
#: src/pages/RemoveLiquidity/index.tsx
msgid "Remove Amount"
msgstr "金額を削除"
msgstr "数量を削除"
#: src/components/vote/DelegateModal.tsx
msgid "Remove Delegate"
@@ -1202,11 +1202,11 @@ msgstr "スワップをダイレクトペアのみに制限します。"
#: src/components/TransactionConfirmationModal/index.tsx
msgid "Return"
msgstr "Return"
msgstr "戻る"
#: src/components/swap/AdvancedSwapDetails.tsx
msgid "Route"
msgstr "ルート"
msgstr "取引ルート"
#: src/components/SearchModal/CurrencySearch.tsx
msgid "Search name or paste address"
@@ -1218,7 +1218,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
@@ -1242,7 +1242,7 @@ msgstr "選択した範囲"
#: src/pages/Vote/index.tsx
msgid "Self"
msgstr "自己|自分format@@0"
msgstr "自"
#: src/components/vote/DelegateModal.tsx
msgid "Self Delegate"
@@ -1259,7 +1259,7 @@ msgstr "開始価格を設定"
#: src/pages/AddLiquidityV2/ConfirmAddModalBottom.tsx
msgid "Share of Pool:"
msgstr "プールの共有:"
msgstr "プールのシェア:"
#: src/components/AccountDetails/index.tsx
msgid "Show Portis"
@@ -1272,7 +1272,7 @@ msgstr "単純な"
#: src/components/TransactionSettings/index.tsx
#: src/components/swap/AdvancedSwapDetails.tsx
msgid "Slippage tolerance"
msgstr "スリップページの許容"
msgstr "スリップページの許容"
#: src/components/swap/UnsupportedCurrencyFooter.tsx
msgid "Some assets are not available through this interface because they may not work well with the smart contracts or we are unable to allow trading for legal reasons."
@@ -1304,12 +1304,12 @@ msgstr "{0} {1} と {2} {3} を供給しています"
#: src/pages/Swap/index.tsx
#: src/pages/Swap/index.tsx
msgid "Swap"
msgstr "入れ替え"
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}"

View File

@@ -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-01 16:24\n"
"PO-Revision-Date: 2021-06-02 05:48\n"
#: src/pages/Pool/PositionPage.tsx
#: src/pages/Pool/PositionPage.tsx
@@ -64,7 +64,7 @@ msgstr "-{feeAmountFormatted}%"
#: src/pages/Earn/Manage.tsx
#: src/pages/Earn/Manage.tsx
msgid "0 UNI / week"
msgstr "0 UNI / 周"
msgstr "0 UNI / 周"
#: src/components/FeeSelector/index.tsx
msgid "0.05% fee"
@@ -121,7 +121,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."
@@ -129,7 +129,7 @@ msgstr "<0>解锁投票</0>,以准备下一个提案。"
#: src/components/claim/ClaimModal.tsx
msgid "<0>🎉 </0>Welcome to team Unicorn :) <1>🎉</1>"
msgstr "<0>🎉 </0>欢迎加入Unicorn(独角兽)团队 :) <1>🎉</1>"
msgstr "<0>🎉 </0>欢迎加入 Unicorn 团队 :) <1>🎉</1>"
#: src/pages/Vote/index.tsx
msgid "A minimum threshold of 1% of the total UNI supply is required to submit proposals"
@@ -149,7 +149,7 @@ msgstr "账户"
#: src/components/SearchModal/ImportRow.tsx
msgid "Active"
msgstr "已激活"
msgstr "已启用"
#: src/components/PositionCard/index.tsx
#: src/pages/AddLiquidity/index.tsx
@@ -158,23 +158,23 @@ msgstr "添加"
#: src/components/vote/DelegateModal.tsx
msgid "Add Delegate +"
msgstr "添加代表 +"
msgstr "添加委托 +"
#: src/components/NavigationTabs/index.tsx
msgid "Add Liquidity"
msgstr "注入流动资金"
msgstr "添加流动性"
#: src/pages/Pool/v2.tsx
msgid "Add V2 Liquidity"
msgstr "注入 V2 流动资金"
msgstr "添加 V2 流动"
#: src/pages/PoolFinder/index.tsx
msgid "Add liquidity."
msgstr "注入流动资金。"
msgstr "添加流动性。"
#: src/components/TransactionConfirmationModal/index.tsx
msgid "Add {0} to Metamask <0/>"
msgstr "将 {0} 添加到Metamask <0/>"
msgstr "将 {0} 添加到 Metamask <0/>"
#: src/pages/AddLiquidityV2/index.tsx
#: src/pages/AddLiquidityV2/index.tsx
@@ -183,11 +183,11 @@ msgstr "注入 {0} {1} 和 {2} {3}"
#: src/pages/Earn/Manage.tsx
msgid "Add {0}-{1} liquidity"
msgstr "注入 {0}-{1} 流动资金"
msgstr "注入 {0}-{1} 流动"
#: src/pages/AddLiquidity/index.tsx
msgid "Add {0}/{1} V3 liquidity"
msgstr "注入 {0}/{1} V3 流动资金"
msgstr "注入 {0}/{1} V3 流动"
#: src/components/TransactionConfirmationModal/index.tsx
msgid "Added {0}"
@@ -195,7 +195,7 @@ msgstr "已添加 {0}"
#: src/components/claim/AddressClaimModal.tsx
msgid "Address has no available claim"
msgstr "地址没有可赎的代币"
msgstr "地址没有可赎的代币"
#: src/pages/Vote/VotePage.tsx
msgid "Against"
@@ -203,11 +203,11 @@ msgstr "反对"
#: src/pages/MigrateV2/MigrateV2Pair.tsx
msgid "Allow LP token migration"
msgstr "允许资金池代币迁移"
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}"
@@ -291,7 +291,7 @@ 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."

2946
yarn.lock

File diff suppressed because it is too large Load Diff