Better Robot recovery tool

This commit is contained in:
koalasat 2024-10-18 15:45:21 +02:00
parent 7bf1d5110e
commit fc1a6b360e
No known key found for this signature in database
GPG Key ID: 2F7F61C6146AB157
36 changed files with 758 additions and 756 deletions

View File

@ -56,14 +56,14 @@ function createWindow(): void {
});
// Load the index.html file from the app directory
mainWindow.loadURL(`file://${path.resolve(__dirname, 'index.html#/robot')}`, {
mainWindow.loadURL(`file://${path.resolve(__dirname, 'index.html#/garage')}`, {
extraHeaders: "pragma: no-cache\n" // Prevent caching of the loaded file
});
// Handle failed load attempts by reloading the file
mainWindow.webContents.on("did-fail-load", () => {
console.log("Failed to load the page, retrying...");
mainWindow.loadURL(`file://${__dirname}/index.html#/robot`);
mainWindow.loadURL(`file://${__dirname}/index.html#/garage`);
});
// Uncomment the following line to open the DevTools

View File

@ -86,7 +86,7 @@ const BookPage = (): JSX.Element => {
setOpenNoRobot(false);
}}
onClickGenerateRobot={() => {
navigate('/robot');
navigate('/garage');
}}
/>
{openMaker ? (
@ -99,7 +99,7 @@ const BookPage = (): JSX.Element => {
<Box sx={{ maxWidth: '18em', padding: '0.5em' }}>
<MakerForm
onClickGenerateRobot={() => {
navigate('/robot');
navigate('/garage');
}}
/>
</Box>

View File

@ -23,6 +23,7 @@ export interface OpenDialogs {
client: boolean;
update: boolean;
profile: boolean;
recovery: boolean;
}
const MainDialogs = (): JSX.Element => {

View File

@ -67,7 +67,7 @@ const MakerPage = (): JSX.Element => {
setOpenNoRobot(false);
}}
onClickGenerateRobot={() => {
navigate('/robot');
navigate('/garage');
}}
/>
<Grid item>
@ -112,7 +112,7 @@ const MakerPage = (): JSX.Element => {
}}
submitButtonLabel={matches.length > 0 && !showMatches ? 'Submit' : 'Create order'}
onClickGenerateRobot={() => {
navigate('/robot');
navigate('/garage');
}}
/>
</Paper>

View File

@ -54,8 +54,8 @@ const NavBar = (): JSX.Element => {
// change tab (page) into the current route
const pathPage: Page | string = location.pathname.split('/')[1];
if (pathPage === 'index.html') {
navigate('/robot');
setPage('robot');
navigate('/garage');
setPage('garage');
}
if (isPage(pathPage)) {
setPage(pathPage);
@ -113,7 +113,7 @@ const NavBar = (): JSX.Element => {
<Tab
sx={{ ...tabSx, minWidth: '2.5em', width: '2.5em', maxWidth: '4em' }}
value='none'
disabled={slot?.nickname === null}
disabled={!slot?.nickname}
onClick={() => {
setOpen({ ...closeAll, profile: !open.profile });
}}
@ -131,9 +131,9 @@ const NavBar = (): JSX.Element => {
/>
<Tab
label={smallBar ? undefined : t('Robot')}
label={smallBar ? undefined : t('Garage')}
sx={{ ...tabSx, minWidth: '1em' }}
value='robot'
value='garage'
icon={<SmartToy />}
iconPosition='start'
/>

View File

@ -1,8 +1,8 @@
import NavBar from './NavBar';
export type Page = 'robot' | 'order' | 'create' | 'offers' | 'settings' | 'none';
export type Page = 'garage' | 'order' | 'create' | 'offers' | 'settings' | 'none';
export default NavBar;
export function isPage(page: string): page is Page {
return ['robot', 'order', 'create', 'offers', 'settings', 'none'].includes(page);
return ['garage', 'order', 'create', 'offers', 'settings', 'none'].includes(page);
}

View File

@ -69,7 +69,7 @@ const OrderPage = (): JSX.Element => {
};
const startAgain = (): void => {
navigate('/robot');
navigate('/garage');
};
const orderDetailsSpace = currentOrder ? (
@ -78,7 +78,7 @@ const OrderPage = (): JSX.Element => {
currentOrder={currentOrder}
onClickCoordinator={onClickCoordinator}
onClickGenerateRobot={() => {
navigate('/robot');
navigate('/garage');
}}
/>
) : (

View File

@ -23,6 +23,7 @@ import { genBase62Token } from '../../utils';
import { NewTabIcon } from '../../components/Icons';
import { AppContext, type UseAppStoreType } from '../../contexts/AppContext';
import { GarageContext, type UseGarageStoreType } from '../../contexts/GarageContext';
import { UseFederationStoreType, FederationContext } from '../../contexts/FederationContext';
interface OnboardingProps {
setView: (state: 'welcome' | 'onboarding' | 'recovery' | 'profile') => void;
@ -30,23 +31,16 @@ interface OnboardingProps {
setRobot: (state: Robot) => void;
inputToken: string;
setInputToken: (state: string) => void;
getGenerateRobot: (token: string) => void;
badToken: string;
baseUrl: string;
}
const Onboarding = ({
setView,
inputToken,
setInputToken,
badToken,
getGenerateRobot,
}: OnboardingProps): JSX.Element => {
const Onboarding = ({ setView, inputToken, setInputToken }: OnboardingProps): JSX.Element => {
const { t } = useTranslation();
const navigate = useNavigate();
const { setPage } = useContext<UseAppStoreType>(AppContext);
const { garage } = useContext<UseGarageStoreType>(GarageContext);
const { federation } = useContext<UseFederationStoreType>(FederationContext);
const [step, setStep] = useState<'1' | '2' | '3'>('1');
const [generatedToken, setGeneratedToken] = useState<boolean>(false);
@ -105,7 +99,6 @@ const Onboarding = ({
autoFocusTarget='copyButton'
inputToken={inputToken}
setInputToken={setInputToken}
badToken={badToken}
onPressEnter={() => null}
/>
</Grid>
@ -123,7 +116,7 @@ const Onboarding = ({
<Button
onClick={() => {
setStep('2');
getGenerateRobot(inputToken);
garage.createRobot(federation, inputToken);
}}
variant='contained'
size='large'

View File

@ -1,66 +0,0 @@
import React from 'react';
import { useTranslation } from 'react-i18next';
import { Button, Grid, Typography } from '@mui/material';
import TokenInput from './TokenInput';
import Key from '@mui/icons-material/Key';
interface RecoveryProps {
setView: (state: 'welcome' | 'onboarding' | 'recovery' | 'profile') => void;
inputToken: string;
badToken: string;
setInputToken: (state: string) => void;
getRecoverRobot: (token: string) => void;
}
const Recovery = ({
inputToken,
badToken,
setView,
setInputToken,
getRecoverRobot,
}: RecoveryProps): JSX.Element => {
const { t } = useTranslation();
const onClickRecover = (): void => {
getRecoverRobot(inputToken);
setView('profile');
};
return (
<Grid container direction='column' alignItems='center' spacing={1} padding={2}>
<Grid item>
<Typography variant='h5' align='center'>
{t('Robot recovery')}
</Typography>
</Grid>
<Grid item>
<Typography align='center'>
{t('Enter your robot token to re-build your robot and gain access to its trades.')}
</Typography>
</Grid>
<Grid item>
<TokenInput
showCopy={false}
inputToken={inputToken}
setInputToken={setInputToken}
label={t('Paste token here')}
onPressEnter={onClickRecover}
badToken={badToken}
/>
</Grid>
<Grid item>
<Button
variant='contained'
size='large'
disabled={Boolean(badToken)}
onClick={onClickRecover}
>
<Key /> <div style={{ width: '0.5em' }} />
{t('Recover')}
</Button>
</Grid>
</Grid>
);
};
export default Recovery;

View File

@ -11,10 +11,10 @@ import {
MenuItem,
Box,
useTheme,
Tooltip,
type SelectChangeEvent,
} from '@mui/material';
import { Bolt, Add, DeleteSweep, Logout, Download } from '@mui/icons-material';
import { Key } from '@mui/icons-material';
import { Bolt, Add, DeleteSweep, Download } from '@mui/icons-material';
import RobotAvatar from '../../components/RobotAvatar';
import TokenInput from './TokenInput';
import { type Slot, type Robot } from '../../models';
@ -22,15 +22,13 @@ import { AppContext, type UseAppStoreType } from '../../contexts/AppContext';
import { genBase62Token } from '../../utils';
import { LoadingButton } from '@mui/lab';
import { GarageContext, type UseGarageStoreType } from '../../contexts/GarageContext';
import { FederationContext, UseFederationStoreType } from '../../contexts/FederationContext';
import { UseFederationStoreType, FederationContext } from '../../contexts/FederationContext';
interface RobotProfileProps {
robot: Robot;
setRobot: (state: Robot) => void;
setView: (state: 'welcome' | 'onboarding' | 'recovery' | 'profile') => void;
getGenerateRobot: (token: string, slot?: number) => void;
inputToken: string;
logoutRobot: () => void;
setInputToken: (state: string) => void;
width: number;
baseUrl: string;
@ -38,13 +36,11 @@ interface RobotProfileProps {
const RobotProfile = ({
inputToken,
getGenerateRobot,
setInputToken,
logoutRobot,
setView,
width,
}: RobotProfileProps): JSX.Element => {
const { windowSize, client } = useContext<UseAppStoreType>(AppContext);
const { windowSize, client, setOpen } = useContext<UseAppStoreType>(AppContext);
const { garage, slotUpdatedAt } = useContext<UseGarageStoreType>(GarageContext);
const { federation } = useContext<UseFederationStoreType>(FederationContext);
@ -62,7 +58,9 @@ const RobotProfile = ({
}, [slotUpdatedAt, loading]);
const handleAddRobot = (): void => {
getGenerateRobot(genBase62Token(36));
const token = genBase62Token(36);
garage.createRobot(federation, token);
setInputToken(token);
setLoading(true);
};
@ -218,26 +216,7 @@ const RobotProfile = ({
alignItems='stretch'
sx={{ width: '100%' }}
>
<Grid
item
xs={2}
sx={{ display: 'flex', justifyContent: 'stretch', alignItems: 'stretch' }}
>
<Tooltip enterTouchDelay={0} enterDelay={300} enterNextDelay={1000} title={t('Logout')}>
<Button
sx={{ minWidth: '2em', width: '100%' }}
color='primary'
variant='outlined'
onClick={() => {
logoutRobot();
setView('welcome');
}}
>
<Logout />
</Button>
</Tooltip>
</Grid>
<Grid item xs={10}>
<Grid item xs={12}>
<TokenInput
inputToken={inputToken}
editable={false}
@ -332,13 +311,29 @@ const RobotProfile = ({
<Button
color='primary'
onClick={() => {
garage.delete();
logoutRobot();
setView('welcome');
garage.deleteSlot();
if (Object.keys(garage.slots).length < 1) setView('welcome');
}}
>
<DeleteSweep /> <div style={{ width: '0.5em' }} />
{t('Delete Garage')}
{t('Delete Robot')}
</Button>
</Grid>
</Grid>
<Grid item container direction='row' alignItems='center' justifyContent='space-evenly'>
<Grid item>
<Button
size='small'
color='secondary'
variant='contained'
onClick={() => {
setOpen((open) => {
return { ...open, recovery: true };
});
}}
>
<Key /> <div style={{ width: '0.5em' }} />
{t('Recovery')}
</Button>
</Grid>
</Grid>

View File

@ -4,6 +4,7 @@ import { IconButton, LinearProgress, TextField, Tooltip } from '@mui/material';
import { ContentCopy } from '@mui/icons-material';
import { systemClient } from '../../services/System';
import { type UseGarageStoreType, GarageContext } from '../../contexts/GarageContext';
import { validateTokenEntropy } from '../../utils';
interface TokenInputProps {
editable?: boolean;
@ -12,7 +13,7 @@ interface TokenInputProps {
inputToken: string;
autoFocusTarget?: 'textfield' | 'copyButton' | 'none';
onPressEnter: () => void;
badToken?: string;
setValidToken?: (valid: boolean) => void;
setInputToken: (state: string) => void;
showCopy?: boolean;
label?: string;
@ -26,18 +27,33 @@ const TokenInput = ({
onPressEnter,
autoFocusTarget = 'textfield',
inputToken,
badToken = '',
loading = false,
setInputToken,
setValidToken = () => {},
}: TokenInputProps): JSX.Element => {
const { t } = useTranslation();
const { garage } = useContext<UseGarageStoreType>(GarageContext);
const [showCopied, setShowCopied] = useState<boolean>(false);
const [badToken, setBadToken] = useState<string>('');
useEffect(() => {}, [inputToken]);
useEffect(() => {
setShowCopied(false);
if (inputToken.length < 20) {
setBadToken(t('The token is too short'));
} else if (!validateTokenEntropy(inputToken).hasEnoughEntropy) {
setBadToken(t('Not enough entropy, make it more complex'));
} else {
setBadToken('');
}
}, [inputToken]);
useEffect(() => {
setShowCopied(false);
setValidToken(badToken === '');
}, [badToken]);
useEffect(() => {
setShowCopied(false);
}, [showCopied]);

View File

@ -1,19 +1,25 @@
import React from 'react';
import React, { useContext } from 'react';
import { useTranslation } from 'react-i18next';
import { Box, Button, Grid, Typography, useTheme } from '@mui/material';
import { RoboSatsTextIcon } from '../../components/Icons';
import { FastForward, RocketLaunch, Key } from '@mui/icons-material';
import { genBase62Token } from '../../utils';
import { UseAppStoreType, AppContext } from '../../contexts/AppContext';
import { UseFederationStoreType, FederationContext } from '../../contexts/FederationContext';
import { UseGarageStoreType, GarageContext } from '../../contexts/GarageContext';
interface WelcomeProps {
setView: (state: 'welcome' | 'onboarding' | 'recovery' | 'profile') => void;
getGenerateRobot: (token: string) => void;
width: number;
setInputToken: (state: string) => void;
}
const Welcome = ({ setView, width, getGenerateRobot }: WelcomeProps): JSX.Element => {
const Welcome = ({ setView, width, setInputToken }: WelcomeProps): JSX.Element => {
const { t } = useTranslation();
const theme = useTheme();
const { setOpen } = useContext<UseAppStoreType>(AppContext);
const { garage } = useContext<UseGarageStoreType>(GarageContext);
const { federation } = useContext<UseFederationStoreType>(FederationContext);
return (
<Grid
@ -94,7 +100,9 @@ const Welcome = ({ setView, width, getGenerateRobot }: WelcomeProps): JSX.Elemen
color='secondary'
variant='contained'
onClick={() => {
setView('recovery');
setOpen((open) => {
return { ...open, recovery: true };
});
}}
>
<Key /> <div style={{ width: '0.5em' }} />
@ -110,7 +118,9 @@ const Welcome = ({ setView, width, getGenerateRobot }: WelcomeProps): JSX.Elemen
color='primary'
onClick={() => {
setView('profile');
getGenerateRobot(genBase62Token(36));
const token = genBase62Token(36);
garage.createRobot(federation, token);
setInputToken(token);
}}
>
<FastForward /> <div style={{ width: '0.5em' }} />

View File

@ -15,18 +15,14 @@ import { useParams } from 'react-router-dom';
import Onboarding from './Onboarding';
import Welcome from './Welcome';
import RobotProfile from './RobotProfile';
import Recovery from './Recovery';
import { TorIcon } from '../../components/Icons';
import { genKey } from '../../pgp';
import { AppContext, type UseAppStoreType } from '../../contexts/AppContext';
import { validateTokenEntropy } from '../../utils';
import { FederationContext, type UseFederationStoreType } from '../../contexts/FederationContext';
import { GarageContext, type UseGarageStoreType } from '../../contexts/GarageContext';
import RecoveryDialog from '../../components/Dialogs/Recovery';
const RobotPage = (): JSX.Element => {
const { torStatus, windowSize, settings, page, client } = useContext<UseAppStoreType>(AppContext);
const { garage } = useContext<UseGarageStoreType>(GarageContext);
const { federation } = useContext<UseFederationStoreType>(FederationContext);
const { t } = useTranslation();
const params = useParams();
const urlToken = settings.selfhostedClient ? params.token : null;
@ -34,15 +30,14 @@ const RobotPage = (): JSX.Element => {
const maxHeight = windowSize.height * 0.85 - 3;
const theme = useTheme();
const [badToken, setBadToken] = useState<string>('');
const [inputToken, setInputToken] = useState<string>('');
const [view, setView] = useState<'welcome' | 'onboarding' | 'recovery' | 'profile'>(
const [view, setView] = useState<'welcome' | 'onboarding' | 'profile'>(
garage.currentSlot !== null ? 'profile' : 'welcome',
);
useEffect(() => {
const token = urlToken ?? garage.currentSlot;
if (token !== undefined && token !== null && page === 'robot') {
if (token !== undefined && token !== null && page === 'garage') {
setInputToken(token);
if (client !== 'mobile' || torStatus === 'ON' || !settings.useProxy) {
setView('profile');
@ -50,38 +45,6 @@ const RobotPage = (): JSX.Element => {
}
}, [torStatus, page]);
useEffect(() => {
if (inputToken.length < 20) {
setBadToken(t('The token is too short'));
} else if (!validateTokenEntropy(inputToken).hasEnoughEntropy) {
setBadToken(t('Not enough entropy, make it more complex'));
} else {
setBadToken('');
}
}, [inputToken]);
const getGenerateRobot = (token: string): void => {
setInputToken(token);
genKey(token)
.then((key) => {
garage.createRobot(token, Object.keys(federation.coordinators), {
token,
pubKey: key.publicKeyArmored,
encPrivKey: key.encryptedPrivateKeyArmored,
});
void garage.fetchRobot(federation, token);
garage.setCurrentSlot(token);
})
.catch((error) => {
console.error('Error:', error);
});
};
const logoutRobot = (): void => {
setInputToken('');
garage.deleteSlot();
};
if (settings.useProxy && client === 'mobile' && !(torStatus === 'ON')) {
return (
<Paper
@ -91,6 +54,7 @@ const RobotPage = (): JSX.Element => {
maxHeight: `${maxHeight}em`,
}}
>
<RecoveryDialog setInputToken={setInputToken} setView={setView}/>
<Grid container direction='column' alignItems='center' spacing={1} padding={2}>
<Grid item>
<Typography align='center' variant='h6'>
@ -141,38 +105,21 @@ const RobotPage = (): JSX.Element => {
overflowX: 'clip',
}}
>
<RecoveryDialog setInputToken={setInputToken} setView={setView} />
{view === 'welcome' ? (
<Welcome setView={setView} getGenerateRobot={getGenerateRobot} width={width} />
<Welcome setView={setView} width={width} setInputToken={setInputToken} />
) : null}
{view === 'onboarding' ? (
<Onboarding
setView={setView}
badToken={badToken}
inputToken={inputToken}
setInputToken={setInputToken}
getGenerateRobot={getGenerateRobot}
/>
<Onboarding setView={setView} inputToken={inputToken} setInputToken={setInputToken} />
) : null}
{view === 'profile' ? (
<RobotProfile
setView={setView}
logoutRobot={logoutRobot}
width={width}
inputToken={inputToken}
setInputToken={setInputToken}
getGenerateRobot={getGenerateRobot}
/>
) : null}
{view === 'recovery' ? (
<Recovery
setView={setView}
badToken={badToken}
inputToken={inputToken}
setInputToken={setInputToken}
getRecoverRobot={getGenerateRobot}
/>
) : null}
</Paper>

View File

@ -27,14 +27,14 @@ const Routes: React.FC = () => {
return (
<DomRoutes>
{['/robot/:token?', '/', ''].map((path, index) => {
{['/garage/:token?', '/', ''].map((path, index) => {
return (
<Route
path={path}
element={
<Slide
direction={page === 'robot' ? slideDirection.in : slideDirection.out}
in={page === 'robot'}
direction={page === 'garage' ? slideDirection.in : slideDirection.out}
in={page === 'garage'}
appear={slideDirection.in !== undefined}
>
<div>

View File

@ -0,0 +1,86 @@
import React, { useContext, useEffect, useState } from 'react';
import { useTranslation } from 'react-i18next';
import { Dialog, DialogContent, Typography, Button, Grid } from '@mui/material';
import TokenInput from '../../basic/RobotPage/TokenInput';
import Key from '@mui/icons-material/Key';
import { UseAppStoreType, AppContext } from '../../contexts/AppContext';
import { UseFederationStoreType, FederationContext } from '../../contexts/FederationContext';
import { UseGarageStoreType, GarageContext } from '../../contexts/GarageContext';
interface Props {
setView: (state: 'welcome' | 'onboarding' | 'recovery' | 'profile') => void;
setInputToken: (inputToken: string) => void;
}
const RecoveryDialog = ({ setInputToken, setView }: Props): JSX.Element => {
const { t } = useTranslation();
const { open, setOpen } = useContext<UseAppStoreType>(AppContext);
const { garage } = useContext<UseGarageStoreType>(GarageContext);
const { federation } = useContext<UseFederationStoreType>(FederationContext);
const [recoveryToken, setRecoveryToken] = useState<string>('');
const [validToken, setValidToken] = useState<boolean>(false);
useEffect(() => {
setRecoveryToken('');
}, [open.recovery]);
const onClickRecover = () => {
garage.createRobot(federation, recoveryToken);
setInputToken(recoveryToken);
setView('profile');
setOpen((open) => {
return { ...open, recovery: false };
});
};
return (
<Dialog
open={open.recovery}
onClose={() => {
setOpen((open) => {
return { ...open, recovery: false };
});
}}
aria-labelledby='recovery-dialog-title'
aria-describedby='recovery-description'
>
<DialogContent>
<Grid container direction='column' alignItems='center' spacing={1} padding={2}>
<Grid item>
<Typography variant='h5' align='center'>
{t('Robot recovery')}
</Typography>
</Grid>
<Grid item>
<Typography align='center'>
{t('Enter your robot token to re-build your robot and gain access to its trades.')}
</Typography>
</Grid>
<Grid item>
<TokenInput
showCopy={false}
inputToken={recoveryToken}
setInputToken={setRecoveryToken}
label={t('Paste token here')}
onPressEnter={onClickRecover}
setValidToken={setValidToken}
/>
</Grid>
<Grid item>
<Button
variant='contained'
size='large'
disabled={!validToken}
onClick={onClickRecover}
>
<Key /> <div style={{ width: '0.5em' }} />
{t('Recover')}
</Button>
</Grid>
</Grid>
</DialogContent>
</Dialog>
);
};
export default RecoveryDialog;

View File

@ -44,8 +44,8 @@ export const isNativeRoboSats = !(window.NativeRobosats === undefined);
const pageFromPath = window.location.pathname.split('/')[1];
const isPagePathEmpty = pageFromPath === '';
const entryPage: Page = !isNativeRoboSats
? ((isPagePathEmpty ? 'robot' : pageFromPath) as Page)
: 'robot';
? ((isPagePathEmpty ? 'garage' : pageFromPath) as Page)
: 'garage';
export const closeAll: OpenDialogs = {
more: false,
@ -58,6 +58,7 @@ export const closeAll: OpenDialogs = {
client: false,
update: false,
profile: false,
recovery: false,
};
const makeTheme = function (settings: Settings): Theme {

View File

@ -13,6 +13,7 @@ import { defaultMaker, type Maker, Garage } from '../models';
import { systemClient } from '../services/System';
import { type UseAppStoreType, AppContext } from './AppContext';
import { type UseFederationStoreType, FederationContext } from './FederationContext';
import { genKey } from '../pgp';
export interface GarageContextProviderProps {
children: ReactNode;

View File

@ -1,4 +1,5 @@
import { type Federation, Order } from '.';
import { genKey } from '../pgp';
import { systemClient } from '../services/System';
import { saveAsJson } from '../utils';
import Slot from './Slot.model';
@ -55,13 +56,17 @@ class Garage {
const slotsDump: string = systemClient.getItem('garage_slots') ?? '';
if (slotsDump !== '') {
const rawSlots = JSON.parse(slotsDump);
const rawSlots: Record<any, any> = JSON.parse(slotsDump);
Object.values(rawSlots).forEach((rawSlot: Record<any, any>) => {
if (rawSlot?.token) {
const robotAttributes = Object.values(rawSlot.robots)[0] as Record<any, any>;
this.slots[rawSlot.token] = new Slot(
rawSlot.token,
Object.keys(rawSlot.robots),
{},
{
pubKey: robotAttributes?.pubKey,
encPrivKey: robotAttributes?.encPrivKey,
},
() => {
this.triggerHook('onSlotUpdate');
},
@ -86,7 +91,7 @@ class Garage {
const targetIndex = token ?? this.currentSlot;
if (targetIndex) {
Reflect.deleteProperty(this.slots, targetIndex);
this.currentSlot = null;
this.currentSlot = Object.keys(this.slots)[0] ?? null;
this.save();
this.triggerHook('onSlotUpdate');
}
@ -124,18 +129,33 @@ class Garage {
};
// Robots
createRobot: (token: string, shortAliases: string[], attributes: Record<any, any>) => void = (
token,
shortAliases,
attributes,
) => {
if (!token || !shortAliases) return;
createRobot: (federation: Federation, token: string) => void = (federation, token) => {
if (!token) return;
if (this.getSlot(token) === null) {
this.slots[token] = new Slot(token, shortAliases, attributes, () => {
this.triggerHook('onSlotUpdate');
});
this.save();
genKey(token)
.then((key) => {
const robotAttributes = {
token,
pubKey: key.publicKeyArmored,
encPrivKey: key.encryptedPrivateKeyArmored,
};
void this.fetchRobot(federation, token);
this.setCurrentSlot(token);
this.slots[token] = new Slot(
token,
Object.keys(federation.coordinators),
robotAttributes,
() => {
this.triggerHook('onSlotUpdate');
},
);
this.save();
})
.catch((error) => {
console.error('Error:', error);
});
}
};

View File

@ -41,8 +41,6 @@ class Slot {
bitsEntropy,
shannonEntropy,
tokenSHA256,
pubKey: robotAttributes.pubKey,
encPrivKey: robotAttributes.encPrivKey,
});
this.updateSlotFromRobot(acc[shortAlias]);
return acc;

View File

@ -15,10 +15,10 @@
"RoboSats information": "Informació de RoboSats",
"client for nerds": "client per nerds",
"#5": "Phrases in basic/NavBar/NavBar.tsx",
"Garage": "Garage",
"More": "Més",
"Offers": "Ofertes",
"Order": "Ordre",
"Robot": "Robot",
"Settings": "Paràmetres",
"#6": "Phrases in basic/OrderPage/index.tsx",
"Contract": "Contracte",
@ -40,47 +40,41 @@
"You can also add your own random characters into the token or": "També pots afegir els teus caràcters aleatoris propis al token o",
"or visit the robot school for documentation.": "o visita l'escola Robot per més informació.",
"roll again": "rodar de nou",
"#8": "Phrases in basic/RobotPage/Recovery.tsx",
"Enter your robot token to re-build your robot and gain access to its trades.": "Introdueix el teu token per reconstruir el teu robot i accedir a les seves operacions.",
"Paste token here": "Enganxa el token aquí",
"Recover": "Recuperar",
"Robot recovery": "Recuperació de Robots",
"#9": "Phrases in basic/RobotPage/RobotProfile.tsx",
"#8": "Phrases in basic/RobotPage/RobotProfile.tsx",
"Active order #{{orderID}}": "Ordre activa #{{orderID}}",
"Add Robot": "Afegir Robot",
"Add a new Robot": "Afegeix un nou Robot",
"Building...": "Construint...",
"Delete Garage": "Esborrar Garatge",
"Delete Robot": "Delete Robot",
"Last order #{{orderID}}": "Última ordre #{{orderID}}",
"Logout": "Sortir",
"Looking for orders!": "Buscant ordres!",
"No existing orders found": "No s'han trobat ordres",
"Recovery": "Recuperació",
"Reusing trading identity degrades your privacy against other users, coordinators and observers.": "La reutilització de la identitat de trading degrada la teva privadesa davant d'altres usuaris, coordinadors i observadors.",
"Robot Garage": "Garatge de Robots",
"Store your token safely": "Guarda el teu token de manera segura",
"Welcome back!": "Bentornat!",
"#10": "Phrases in basic/RobotPage/TokenInput.tsx",
"#9": "Phrases in basic/RobotPage/TokenInput.tsx",
"Copied!": "Copiat!",
"#11": "Phrases in basic/RobotPage/Welcome.tsx",
"Not enough entropy, make it more complex": "Entropia insuficient, fes-ho més complex",
"The token is too short": "El token és massa curt",
"#10": "Phrases in basic/RobotPage/Welcome.tsx",
"A Simple and Private LN P2P Exchange": "Un Simple i Privat Exchange LN P2P",
"Create a new robot and learn to use RoboSats": "Crear un nou robot i aprendre a fer servir RoboSats",
"Fast Generate Robot": "Generar Robot ràpidament",
"Recover an existing robot using your token": "Recuperar un robot existent utilitzant el teu token",
"Recovery": "Recuperació",
"Start": "Començar",
"#12": "Phrases in basic/RobotPage/index.tsx",
"#11": "Phrases in basic/RobotPage/index.tsx",
"Connecting to TOR": "Connectant a TOR",
"Connection encrypted and anonymized using TOR.": "Connexió xifrada i anònima mitjançant TOR.",
"Not enough entropy, make it more complex": "Entropia insuficient, fes-ho més complex",
"The token is too short": "El token és massa curt",
"This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.": "Això garanteix la màxima privadesa, però és possible que sentis que l'aplicació es comporta lenta. Si es perd la connexió, reinicia l'aplicació.",
"#13": "Phrases in basic/SettingsPage/index.tsx",
"#12": "Phrases in basic/SettingsPage/index.tsx",
"Add": "Add",
"Alias": "Alias",
"Alias already exists": "Alias already exists",
"Invalid Onion URL": "Invalid Onion URL",
"URL": "URL",
"#14": "Phrases in components/BookTable/BookControl.tsx",
"#13": "Phrases in components/BookTable/BookControl.tsx",
"ANY": "TOT",
"Buy": "Comprar",
"DESTINATION": "DESTÍ",
@ -96,7 +90,7 @@
"and use": "i fer servir",
"hosted by": "allotjat per",
"pay with": "pagar amb",
"#15": "Phrases in components/BookTable/index.tsx",
"#14": "Phrases in components/BookTable/index.tsx",
"Add filter": "Afegir filtre",
"Amount": "Suma",
"An error occurred.": "Hi ha hagut un error.",
@ -131,6 +125,7 @@
"Premium": "Prima",
"Price": "Preu",
"Reorder column": "Reordenar columnes",
"Robot": "Robot",
"Sats now": "Sats ara",
"Select columns": "Selecciona columnes",
"Show all": "Mostrar totes",
@ -160,15 +155,15 @@
"starts with": "comença amb",
"true": "veritat",
"yes": "si",
"#16": "Phrases in components/Charts/DepthChart/index.tsx",
"#17": "Phrases in components/Charts/MapChart/index.tsx",
"#15": "Phrases in components/Charts/DepthChart/index.tsx",
"#16": "Phrases in components/Charts/MapChart/index.tsx",
"Accept": "Accepta",
"By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.": "En fer-ho, s'obtindran fitxes de mapes d'un proveïdor de tercers. Depenent de la configuració, la informació privada es pot filtrar a servidors fora de la federació RoboSats",
"Close": "Tancar",
"Download high resolution map?": "Descarregar el mapa d'alta resolució?",
"Show tiles": "Show tiles",
"#18": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
"#19": "Phrases in components/Dialogs/About.tsx",
"#17": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
"#18": "Phrases in components/Dialogs/About.tsx",
"(GitHub).": "(GitHub).",
"(Telegram)": "(Telegram)",
". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.": ". RoboSats mai et contactarà. Ni els desenvolupadors ni els coordinadors de RoboSats mai et preguntaran pel token del teu Robot.",
@ -208,7 +203,7 @@
"You can find a step-by-step description of the trade pipeline in ": "Pots trobar una descripció pas a pas dels intercanvis a ",
"Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.": "Els teus Sats et seran retornats. Qualsevol factura no assentada serà automàticament retornada encara que el coordinador desaparegui. Això és cert tant per fiances com pels col·laterals. De totes formes, des de que el venedor confirma haver rebut el fiat i el comprador rep els Sats, hi ha un temps d'aprox. 1 segon en que los fons podrien perdre's si el coordinador desaparegués. Assegura't de tenir suficient liquiditat entrant per evitar errors d'enrutament. Si tens algun problema, busca als canals públics de RoboSats o directament al teu coordinador fent servir algun dels mètodes llistats al seu perfil.",
"Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.": "El teu soci dintercanvi no coneixerà el destí del pagament LN. La permanència de les dades recollides pels coordinadors depèn de les seves polítiques de privacitat i dades. En cas de controvèrsia, un coordinador pot sol·licitar informació addicional. Els detalls d'aquest procés poden variar de coordinador a coordinador.",
"#20": "Phrases in components/Dialogs/AuditPGP.tsx",
"#19": "Phrases in components/Dialogs/AuditPGP.tsx",
"Go back": "Tornar",
"Keys": "Claus",
"Learn how to verify": "Aprèn a verificar",
@ -224,13 +219,13 @@
"Your peer PGP public key. You use it to encrypt messages only he can read and to verify your peer signed the incoming messages.": "La clau pública PGP de la teva contrapart. La fas servir per encriptar missatges que només ell pot llegir i verificar que és ell qui va signar els missatges que reps.",
"Your private key passphrase (keep secure!)": "La contrasenya de la teva clau privada (Mantenir segura!)",
"Your public key": "La teva clau pública",
"#21": "Phrases in components/Dialogs/Client.tsx",
"#20": "Phrases in components/Dialogs/Client.tsx",
"... somewhere on Earth!": "... en algun indret de la Terra!",
"Client info": "Client info",
"Made with": "Fet amb",
"RoboSats client version": "Versió de client RoboSats",
"and": "i",
"#22": "Phrases in components/Dialogs/Community.tsx",
"#21": "Phrases in components/Dialogs/Community.tsx",
"Community": "Comunitat",
"Follow RoboSats in Nostr": "Segueix Robosats a Nostr",
"Follow RoboSats in X": "Segueix Robosats a X",
@ -245,7 +240,7 @@
"Tell us about a new feature or a bug": "Proposa funcionalitats o notifica errors",
"We are abandoning Telegram! Our old TG groups": "Estem deixant Telegram! Els nostres grups antics de TG",
"X Official Account": "Compte oficial a X",
"#23": "Phrases in components/Dialogs/Coordinator.tsx",
"#22": "Phrases in components/Dialogs/Coordinator.tsx",
"...Opening on Nostr gateway. Pubkey copied!": "...Obrint la passarel·la Nostr. Clau pública copiada!",
"24h contracted volume": "Volum contractat en 24h",
"24h non-KYC bitcoin premium": "Prima de bitcoin sense KYC en 24h",
@ -294,29 +289,34 @@
"Website": "Web",
"X": "X",
"Zaps voluntarily for development": "Zaps voluntàriament per al desenvolupament",
"#24": "Phrases in components/Dialogs/EnableTelegram.tsx",
"#23": "Phrases in components/Dialogs/EnableTelegram.tsx",
"Browser": "Navegador",
"Enable": "Activar",
"Enable TG Notifications": "Activar Notificacions TG",
"You will be taken to a conversation with RoboSats telegram bot. Simply open the chat and press Start. Note that by enabling telegram notifications you might lower your level of anonymity.": "Seràs dut a un xat amb el bot de Telegram de Robosats. Simplement prem Començar. Tingues en compte que si actives les notificaciones de Telegram reduiràs el teu anonimat.",
"#25": "Phrases in components/Dialogs/Exchange.tsx",
"#24": "Phrases in components/Dialogs/Exchange.tsx",
"Enabled RoboSats coordinators": "Habilita els coordinadors de RoboSats",
"Exchange Summary": "Resum de l'Exchange",
"Online RoboSats coordinators": "Coordinadors RoboSats online",
"#26": "Phrases in components/Dialogs/F2fMap.tsx",
"#25": "Phrases in components/Dialogs/F2fMap.tsx",
"Choose a location": "Tria una ubicació",
"Save": "Guardar",
"#27": "Phrases in components/Dialogs/Learn.tsx",
"#26": "Phrases in components/Dialogs/Learn.tsx",
"Back": "Tornar",
"You are about to visit Learn RoboSats. It hosts tutorials and documentation to help you learn how to use RoboSats and understand how it works.": "Visitaràs la pàgina Learn RoboSats. Ha estat construïda per la comunitat i conté tutorials i documentació que t'ajudarà a aprendre como s'utilitza RoboSats i a entendre com funciona.",
"#28": "Phrases in components/Dialogs/NoRobot.tsx",
"#27": "Phrases in components/Dialogs/NoRobot.tsx",
"Generate Robot": "Generar Robot",
"Generate a robot avatar first. Then create your own order.": "Primer genera un avatar de robot. A continuació, crea la teva pròpia oferta.",
"You do not have a robot avatar": "No tens un avatar robot",
"#29": "Phrases in components/Dialogs/Profile.tsx",
"#28": "Phrases in components/Dialogs/Profile.tsx",
"Coordinators that know your robot:": "Coordinadors que coneixen el teu robot:",
"Looking for your robot!": "Buscant el teu robot!",
"Your Robot": "El teu Robot",
"#29": "Phrases in components/Dialogs/Recovery.tsx",
"Enter your robot token to re-build your robot and gain access to its trades.": "Introdueix el teu token per reconstruir el teu robot i accedir a les seves operacions.",
"Paste token here": "Enganxa el token aquí",
"Recover": "Recuperar",
"Robot recovery": "Recuperació de Robots",
"#30": "Phrases in components/Dialogs/StoreToken.tsx",
"Back it up!": "Guarda-ho!",
"Done": "Fet",

View File

@ -15,10 +15,10 @@
"RoboSats information": "RoboSats information",
"client for nerds": "client for nerds",
"#5": "Phrases in basic/NavBar/NavBar.tsx",
"Garage": "Garage",
"More": "More",
"Offers": "Offers",
"Order": "Nabídka",
"Robot": "Robot",
"Settings": "Settings",
"#6": "Phrases in basic/OrderPage/index.tsx",
"Contract": "Průvodce obchodem",
@ -40,47 +40,41 @@
"You can also add your own random characters into the token or": "You can also add your own random characters into the token or",
"or visit the robot school for documentation.": "or visit the robot school for documentation.",
"roll again": "roll again",
"#8": "Phrases in basic/RobotPage/Recovery.tsx",
"Enter your robot token to re-build your robot and gain access to its trades.": "Enter your robot token to re-build your robot and gain access to its trades.",
"Paste token here": "Paste token here",
"Recover": "Recover",
"Robot recovery": "Robot recovery",
"#9": "Phrases in basic/RobotPage/RobotProfile.tsx",
"#8": "Phrases in basic/RobotPage/RobotProfile.tsx",
"Active order #{{orderID}}": "Active order #{{orderID}}",
"Add Robot": "Add Robot",
"Add a new Robot": "Add a new Robot",
"Building...": "Building...",
"Delete Garage": "Delete Garage",
"Delete Robot": "Delete Robot",
"Last order #{{orderID}}": "Last order #{{orderID}}",
"Logout": "Logout",
"Looking for orders!": "Looking for orders!",
"No existing orders found": "No existing orders found",
"Recovery": "Recovery",
"Reusing trading identity degrades your privacy against other users, coordinators and observers.": "Reusing trading identity degrades your privacy against other users, coordinators and observers.",
"Robot Garage": "Robot Garage",
"Store your token safely": "Ulož si svůj token bezpečně",
"Welcome back!": "Welcome back!",
"#10": "Phrases in basic/RobotPage/TokenInput.tsx",
"#9": "Phrases in basic/RobotPage/TokenInput.tsx",
"Copied!": "Zkopirováno!!",
"#11": "Phrases in basic/RobotPage/Welcome.tsx",
"Not enough entropy, make it more complex": "Not enough entropy, make it more complex",
"The token is too short": "The token is too short",
"#10": "Phrases in basic/RobotPage/Welcome.tsx",
"A Simple and Private LN P2P Exchange": "A Simple and Private LN P2P Exchange",
"Create a new robot and learn to use RoboSats": "Create a new robot and learn to use RoboSats",
"Fast Generate Robot": "Fast Generate Robot",
"Recover an existing robot using your token": "Recover an existing robot using your token",
"Recovery": "Recovery",
"Start": "Start",
"#12": "Phrases in basic/RobotPage/index.tsx",
"#11": "Phrases in basic/RobotPage/index.tsx",
"Connecting to TOR": "Connecting to TOR",
"Connection encrypted and anonymized using TOR.": "Connection encrypted and anonymized using TOR.",
"Not enough entropy, make it more complex": "Not enough entropy, make it more complex",
"The token is too short": "The token is too short",
"This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.": "This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.",
"#13": "Phrases in basic/SettingsPage/index.tsx",
"#12": "Phrases in basic/SettingsPage/index.tsx",
"Add": "Add",
"Alias": "Alias",
"Alias already exists": "Alias already exists",
"Invalid Onion URL": "Invalid Onion URL",
"URL": "URL",
"#14": "Phrases in components/BookTable/BookControl.tsx",
"#13": "Phrases in components/BookTable/BookControl.tsx",
"ANY": "VŠE",
"Buy": "Nákup",
"DESTINATION": "DESTINATION",
@ -96,7 +90,7 @@
"and use": "použít",
"hosted by": "hosted by",
"pay with": "pay with",
"#15": "Phrases in components/BookTable/index.tsx",
"#14": "Phrases in components/BookTable/index.tsx",
"Add filter": "Přidat filter",
"Amount": "Částka",
"An error occurred.": "Došlo k chybě.",
@ -131,6 +125,7 @@
"Premium": "Přirážka",
"Price": "Cena",
"Reorder column": "Změna pořadí sloupce",
"Robot": "Robot",
"Sats now": "Sats now",
"Select columns": "Vybrat sloupce",
"Show all": "Ukázat vše",
@ -160,15 +155,15 @@
"starts with": "začína s",
"true": "správný",
"yes": "ano",
"#16": "Phrases in components/Charts/DepthChart/index.tsx",
"#17": "Phrases in components/Charts/MapChart/index.tsx",
"#15": "Phrases in components/Charts/DepthChart/index.tsx",
"#16": "Phrases in components/Charts/MapChart/index.tsx",
"Accept": "Accept",
"By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.": "By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.",
"Close": "Zavřít",
"Download high resolution map?": "Download high resolution map?",
"Show tiles": "Show tiles",
"#18": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
"#19": "Phrases in components/Dialogs/About.tsx",
"#17": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
"#18": "Phrases in components/Dialogs/About.tsx",
"(GitHub).": "(GitHub).",
"(Telegram)": "(Telegram)",
". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.": ". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.",
@ -208,7 +203,7 @@
"You can find a step-by-step description of the trade pipeline in ": "Popis obchodu krok za krokem najdeš na",
"Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.": "Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.",
"Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.": "Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.",
"#20": "Phrases in components/Dialogs/AuditPGP.tsx",
"#19": "Phrases in components/Dialogs/AuditPGP.tsx",
"Go back": "Jít zpět",
"Keys": "Klíče",
"Learn how to verify": "Naučit se, jak ověřovat",
@ -224,13 +219,13 @@
"Your peer PGP public key. You use it to encrypt messages only he can read and to verify your peer signed the incoming messages.": "Veřejný PGP klíč protistrany. Používáš jej k šifrování zpráv, které může číst pouze on, a k ověření, zda protistrana podepsala příchozí zprávy.",
"Your private key passphrase (keep secure!)": "Tvůj soukromí klíč a passphrase (drž v bezpečí!)",
"Your public key": "Tvůj veřejný klíč",
"#21": "Phrases in components/Dialogs/Client.tsx",
"#20": "Phrases in components/Dialogs/Client.tsx",
"... somewhere on Earth!": "... někde na Zemi!",
"Client info": "Client info",
"Made with": "Vytvořeno s",
"RoboSats client version": "RoboSats client version",
"and": "a",
"#22": "Phrases in components/Dialogs/Community.tsx",
"#21": "Phrases in components/Dialogs/Community.tsx",
"Community": "Komunity",
"Follow RoboSats in Nostr": "Follow RoboSats in Nostr",
"Follow RoboSats in X": "Follow RoboSats in X",
@ -245,7 +240,7 @@
"Tell us about a new feature or a bug": "Našel jsi bug nebo novou funkci? Napiš nám ",
"We are abandoning Telegram! Our old TG groups": "We are abandoning Telegram! Our old TG groups",
"X Official Account": "X Official Account",
"#23": "Phrases in components/Dialogs/Coordinator.tsx",
"#22": "Phrases in components/Dialogs/Coordinator.tsx",
"...Opening on Nostr gateway. Pubkey copied!": "...Opening on Nostr gateway. Pubkey copied!",
"24h contracted volume": "Zobchodované množství za 24h",
"24h non-KYC bitcoin premium": "24h non-KYC bitcoin premium",
@ -294,29 +289,34 @@
"Website": "Website",
"X": "X",
"Zaps voluntarily for development": "Zaps voluntarily for development",
"#24": "Phrases in components/Dialogs/EnableTelegram.tsx",
"#23": "Phrases in components/Dialogs/EnableTelegram.tsx",
"Browser": "Browser",
"Enable": "Povolit",
"Enable TG Notifications": "Povolit TG notifikace",
"You will be taken to a conversation with RoboSats telegram bot. Simply open the chat and press Start. Note that by enabling telegram notifications you might lower your level of anonymity.": "Budeš přesměrován do chatu s RoboSats telegram botem. Jednoduše otevři chat a zmáčkni Start. Měj na paměti, že povolením telegram notifikací máš nížší úroveň anonymity.",
"#25": "Phrases in components/Dialogs/Exchange.tsx",
"#24": "Phrases in components/Dialogs/Exchange.tsx",
"Enabled RoboSats coordinators": "Enabled RoboSats coordinators",
"Exchange Summary": "Exchange Summary",
"Online RoboSats coordinators": "Online RoboSats coordinators",
"#26": "Phrases in components/Dialogs/F2fMap.tsx",
"#25": "Phrases in components/Dialogs/F2fMap.tsx",
"Choose a location": "Choose a location",
"Save": "Save",
"#27": "Phrases in components/Dialogs/Learn.tsx",
"#26": "Phrases in components/Dialogs/Learn.tsx",
"Back": "Zpět",
"You are about to visit Learn RoboSats. It hosts tutorials and documentation to help you learn how to use RoboSats and understand how it works.": "Chystáš se navštívit výukovou stránku RoboSats. Stránka obsahuje tutoriály a dokumentaci, které ti pomohou pochopit jak funguje RoboSats.",
"#28": "Phrases in components/Dialogs/NoRobot.tsx",
"#27": "Phrases in components/Dialogs/NoRobot.tsx",
"Generate Robot": "Generovat Robota",
"Generate a robot avatar first. Then create your own order.": "Generate a robot avatar first. Then create your own order.",
"You do not have a robot avatar": "Nemáš robota a avatar",
"#29": "Phrases in components/Dialogs/Profile.tsx",
"#28": "Phrases in components/Dialogs/Profile.tsx",
"Coordinators that know your robot:": "Coordinators that know your robot:",
"Looking for your robot!": "Looking for your robot!",
"Your Robot": "Your Robot",
"#29": "Phrases in components/Dialogs/Recovery.tsx",
"Enter your robot token to re-build your robot and gain access to its trades.": "Enter your robot token to re-build your robot and gain access to its trades.",
"Paste token here": "Paste token here",
"Recover": "Recover",
"Robot recovery": "Robot recovery",
"#30": "Phrases in components/Dialogs/StoreToken.tsx",
"Back it up!": "Zálohuj to!",
"Done": "Hotovo",

View File

@ -15,10 +15,10 @@
"RoboSats information": "RoboSats information",
"client for nerds": "client for nerds",
"#5": "Phrases in basic/NavBar/NavBar.tsx",
"Garage": "Garage",
"More": "More",
"Offers": "Offers",
"Order": "Order",
"Robot": "Roboter",
"Settings": "Settings",
"#6": "Phrases in basic/OrderPage/index.tsx",
"Contract": "Vertrag",
@ -40,47 +40,41 @@
"You can also add your own random characters into the token or": "You can also add your own random characters into the token or",
"or visit the robot school for documentation.": "or visit the robot school for documentation.",
"roll again": "roll again",
"#8": "Phrases in basic/RobotPage/Recovery.tsx",
"Enter your robot token to re-build your robot and gain access to its trades.": "Enter your robot token to re-build your robot and gain access to its trades.",
"Paste token here": "Paste token here",
"Recover": "Recover",
"Robot recovery": "Robot recovery",
"#9": "Phrases in basic/RobotPage/RobotProfile.tsx",
"#8": "Phrases in basic/RobotPage/RobotProfile.tsx",
"Active order #{{orderID}}": "Active order #{{orderID}}",
"Add Robot": "Add Robot",
"Add a new Robot": "Add a new Robot",
"Building...": "Building...",
"Delete Garage": "Delete Garage",
"Delete Robot": "Delete Robot",
"Last order #{{orderID}}": "Last order #{{orderID}}",
"Logout": "Logout",
"Looking for orders!": "Looking for orders!",
"No existing orders found": "No existing orders found",
"Recovery": "Recovery",
"Reusing trading identity degrades your privacy against other users, coordinators and observers.": "Reusing trading identity degrades your privacy against other users, coordinators and observers.",
"Robot Garage": "Robot Garage",
"Store your token safely": "Verwahre deinen Token sicher",
"Welcome back!": "Welcome back!",
"#10": "Phrases in basic/RobotPage/TokenInput.tsx",
"#9": "Phrases in basic/RobotPage/TokenInput.tsx",
"Copied!": "Kopiert!",
"#11": "Phrases in basic/RobotPage/Welcome.tsx",
"Not enough entropy, make it more complex": "Not enough entropy, make it more complex",
"The token is too short": "The token is too short",
"#10": "Phrases in basic/RobotPage/Welcome.tsx",
"A Simple and Private LN P2P Exchange": "A Simple and Private LN P2P Exchange",
"Create a new robot and learn to use RoboSats": "Create a new robot and learn to use RoboSats",
"Fast Generate Robot": "Fast Generate Robot",
"Recover an existing robot using your token": "Recover an existing robot using your token",
"Recovery": "Recovery",
"Start": "Start",
"#12": "Phrases in basic/RobotPage/index.tsx",
"#11": "Phrases in basic/RobotPage/index.tsx",
"Connecting to TOR": "Connecting to TOR",
"Connection encrypted and anonymized using TOR.": "Connection encrypted and anonymized using TOR.",
"Not enough entropy, make it more complex": "Not enough entropy, make it more complex",
"The token is too short": "The token is too short",
"This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.": "This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.",
"#13": "Phrases in basic/SettingsPage/index.tsx",
"#12": "Phrases in basic/SettingsPage/index.tsx",
"Add": "Add",
"Alias": "Alias",
"Alias already exists": "Alias already exists",
"Invalid Onion URL": "Invalid Onion URL",
"URL": "URL",
"#14": "Phrases in components/BookTable/BookControl.tsx",
"#13": "Phrases in components/BookTable/BookControl.tsx",
"ANY": "ALLE",
"Buy": "Kaufen",
"DESTINATION": "DESTINATION",
@ -96,7 +90,7 @@
"and use": "und verwende",
"hosted by": "hosted by",
"pay with": "pay with",
"#15": "Phrases in components/BookTable/index.tsx",
"#14": "Phrases in components/BookTable/index.tsx",
"Add filter": "Add filter",
"Amount": "Menge",
"An error occurred.": "An error occurred.",
@ -131,6 +125,7 @@
"Premium": "Aufschlag",
"Price": "Preis",
"Reorder column": "Reorder column",
"Robot": "Roboter",
"Sats now": "Sats now",
"Select columns": "Select columns",
"Show all": "Show all",
@ -160,15 +155,15 @@
"starts with": "starts with",
"true": "true",
"yes": "yes",
"#16": "Phrases in components/Charts/DepthChart/index.tsx",
"#17": "Phrases in components/Charts/MapChart/index.tsx",
"#15": "Phrases in components/Charts/DepthChart/index.tsx",
"#16": "Phrases in components/Charts/MapChart/index.tsx",
"Accept": "Accept",
"By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.": "By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.",
"Close": "Schließen",
"Download high resolution map?": "Download high resolution map?",
"Show tiles": "Show tiles",
"#18": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
"#19": "Phrases in components/Dialogs/About.tsx",
"#17": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
"#18": "Phrases in components/Dialogs/About.tsx",
"(GitHub).": "(GitHub).",
"(Telegram)": "(Telegram)",
". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.": ". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.",
@ -208,7 +203,7 @@
"You can find a step-by-step description of the trade pipeline in ": "Du findest eine Schritt-für-Schritt-Erklärung des Handelablaufs hier ",
"Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.": "Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.",
"Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.": "Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.",
"#20": "Phrases in components/Dialogs/AuditPGP.tsx",
"#19": "Phrases in components/Dialogs/AuditPGP.tsx",
"Go back": "Zurück",
"Keys": "Schlüssel",
"Learn how to verify": "Learn how to verify",
@ -224,13 +219,13 @@
"Your peer PGP public key. You use it to encrypt messages only he can read and to verify your peer signed the incoming messages.": "Der öffentliche PGP-Schlüssel deines Chatpartners. Du verwendest ihn um Nachrichten zu verschlüsseln, die nur er lesen kann und um zu überprüfen, ob dein Gegenüber die eingehenden Nachrichten signiert hat.",
"Your private key passphrase (keep secure!)": "Deine Passphrase für den privaten Schlüssel (sicher aufbewahren!)",
"Your public key": "Dein öffentlicher Schlüssel",
"#21": "Phrases in components/Dialogs/Client.tsx",
"#20": "Phrases in components/Dialogs/Client.tsx",
"... somewhere on Earth!": "... irgendwo auf der Erde!",
"Client info": "Client info",
"Made with": "Gemacht mit",
"RoboSats client version": "RoboSats client version",
"and": "und",
"#22": "Phrases in components/Dialogs/Community.tsx",
"#21": "Phrases in components/Dialogs/Community.tsx",
"Community": "Community",
"Follow RoboSats in Nostr": "Follow RoboSats in Nostr",
"Follow RoboSats in X": "Follow RoboSats in X",
@ -245,7 +240,7 @@
"Tell us about a new feature or a bug": "Erzähle uns von neuen Funktionen oder einem Fehler",
"We are abandoning Telegram! Our old TG groups": "We are abandoning Telegram! Our old TG groups",
"X Official Account": "X Official Account",
"#23": "Phrases in components/Dialogs/Coordinator.tsx",
"#22": "Phrases in components/Dialogs/Coordinator.tsx",
"...Opening on Nostr gateway. Pubkey copied!": "...Opening on Nostr gateway. Pubkey copied!",
"24h contracted volume": "24h Handelsvolumen",
"24h non-KYC bitcoin premium": "24h non-KYC bitcoin premium",
@ -294,29 +289,34 @@
"Website": "Website",
"X": "X",
"Zaps voluntarily for development": "Zaps voluntarily for development",
"#24": "Phrases in components/Dialogs/EnableTelegram.tsx",
"#23": "Phrases in components/Dialogs/EnableTelegram.tsx",
"Browser": "Browser",
"Enable": "Aktivieren",
"Enable TG Notifications": "Aktiviere TG-Benachrichtigungen",
"You will be taken to a conversation with RoboSats telegram bot. Simply open the chat and press Start. Note that by enabling telegram notifications you might lower your level of anonymity.": "Du wirst zu einem Chat mit dem RoboSats-Telegram-Bot weitergeleitet. Öffne einfach den Chat und drücke auf Start. Beachte, dass du deine Anonymität verringern könntest, wenn du Telegram-Benachrichtigungen aktivierst.",
"#25": "Phrases in components/Dialogs/Exchange.tsx",
"#24": "Phrases in components/Dialogs/Exchange.tsx",
"Enabled RoboSats coordinators": "Enabled RoboSats coordinators",
"Exchange Summary": "Exchange Summary",
"Online RoboSats coordinators": "Online RoboSats coordinators",
"#26": "Phrases in components/Dialogs/F2fMap.tsx",
"#25": "Phrases in components/Dialogs/F2fMap.tsx",
"Choose a location": "Choose a location",
"Save": "Save",
"#27": "Phrases in components/Dialogs/Learn.tsx",
"#26": "Phrases in components/Dialogs/Learn.tsx",
"Back": "Zurück",
"You are about to visit Learn RoboSats. It hosts tutorials and documentation to help you learn how to use RoboSats and understand how it works.": "Du bist dabei die Website 'lerne RoboSats kennen' zu besuchen. Hier findest du Tutorials und Dokumentationen, die dir helfen RoboSats zu benutzen und zu verstehen wie es funktioniert.",
"#28": "Phrases in components/Dialogs/NoRobot.tsx",
"#27": "Phrases in components/Dialogs/NoRobot.tsx",
"Generate Robot": "Roboter generieren",
"Generate a robot avatar first. Then create your own order.": "Generate a robot avatar first. Then create your own order.",
"You do not have a robot avatar": "Du hast keinen Roboter-Avatar",
"#29": "Phrases in components/Dialogs/Profile.tsx",
"#28": "Phrases in components/Dialogs/Profile.tsx",
"Coordinators that know your robot:": "Coordinators that know your robot:",
"Looking for your robot!": "Looking for your robot!",
"Your Robot": "Your Robot",
"#29": "Phrases in components/Dialogs/Recovery.tsx",
"Enter your robot token to re-build your robot and gain access to its trades.": "Enter your robot token to re-build your robot and gain access to its trades.",
"Paste token here": "Paste token here",
"Recover": "Recover",
"Robot recovery": "Robot recovery",
"#30": "Phrases in components/Dialogs/StoreToken.tsx",
"Back it up!": "Speicher ihn ab!",
"Done": "Fertig",

View File

@ -15,10 +15,10 @@
"RoboSats information": "RoboSats information",
"client for nerds": "client for nerds",
"#5": "Phrases in basic/NavBar/NavBar.tsx",
"Garage": "Garage",
"More": "More",
"Offers": "Offers",
"Order": "Order",
"Robot": "Robot",
"Settings": "Settings",
"#6": "Phrases in basic/OrderPage/index.tsx",
"Contract": "Contract",
@ -40,47 +40,41 @@
"You can also add your own random characters into the token or": "You can also add your own random characters into the token or",
"or visit the robot school for documentation.": "or visit the robot school for documentation.",
"roll again": "roll again",
"#8": "Phrases in basic/RobotPage/Recovery.tsx",
"Enter your robot token to re-build your robot and gain access to its trades.": "Enter your robot token to re-build your robot and gain access to its trades.",
"Paste token here": "Paste token here",
"Recover": "Recover",
"Robot recovery": "Robot recovery",
"#9": "Phrases in basic/RobotPage/RobotProfile.tsx",
"#8": "Phrases in basic/RobotPage/RobotProfile.tsx",
"Active order #{{orderID}}": "Active order #{{orderID}}",
"Add Robot": "Add Robot",
"Add a new Robot": "Add a new Robot",
"Building...": "Building...",
"Delete Garage": "Delete Garage",
"Delete Robot": "Delete Robot",
"Last order #{{orderID}}": "Last order #{{orderID}}",
"Logout": "Logout",
"Looking for orders!": "Looking for orders!",
"No existing orders found": "No existing orders found",
"Recovery": "Recovery",
"Reusing trading identity degrades your privacy against other users, coordinators and observers.": "Reusing trading identity degrades your privacy against other users, coordinators and observers.",
"Robot Garage": "Robot Garage",
"Store your token safely": "Store your token safely",
"Welcome back!": "Welcome back!",
"#10": "Phrases in basic/RobotPage/TokenInput.tsx",
"#9": "Phrases in basic/RobotPage/TokenInput.tsx",
"Copied!": "Copied!",
"#11": "Phrases in basic/RobotPage/Welcome.tsx",
"Not enough entropy, make it more complex": "Not enough entropy, make it more complex",
"The token is too short": "The token is too short",
"#10": "Phrases in basic/RobotPage/Welcome.tsx",
"A Simple and Private LN P2P Exchange": "A Simple and Private LN P2P Exchange",
"Create a new robot and learn to use RoboSats": "Create a new robot and learn to use RoboSats",
"Fast Generate Robot": "Fast Generate Robot",
"Recover an existing robot using your token": "Recover an existing robot using your token",
"Recovery": "Recovery",
"Start": "Start",
"#12": "Phrases in basic/RobotPage/index.tsx",
"#11": "Phrases in basic/RobotPage/index.tsx",
"Connecting to TOR": "Connecting to TOR",
"Connection encrypted and anonymized using TOR.": "Connection encrypted and anonymized using TOR.",
"Not enough entropy, make it more complex": "Not enough entropy, make it more complex",
"The token is too short": "The token is too short",
"This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.": "This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.",
"#13": "Phrases in basic/SettingsPage/index.tsx",
"#12": "Phrases in basic/SettingsPage/index.tsx",
"Add": "Add",
"Alias": "Alias",
"Alias already exists": "Alias already exists",
"Invalid Onion URL": "Invalid Onion URL",
"URL": "URL",
"#14": "Phrases in components/BookTable/BookControl.tsx",
"#13": "Phrases in components/BookTable/BookControl.tsx",
"ANY": "ANY",
"Buy": "Buy",
"DESTINATION": "DESTINATION",
@ -96,7 +90,7 @@
"and use": "and use",
"hosted by": "hosted by",
"pay with": "pay with",
"#15": "Phrases in components/BookTable/index.tsx",
"#14": "Phrases in components/BookTable/index.tsx",
"Add filter": "Add filter",
"Amount": "Amount",
"An error occurred.": "An error occurred.",
@ -131,6 +125,7 @@
"Premium": "Premium",
"Price": "Price",
"Reorder column": "Reorder column",
"Robot": "Robot",
"Sats now": "Sats now",
"Select columns": "Select columns",
"Show all": "Show all",
@ -160,15 +155,15 @@
"starts with": "starts with",
"true": "true",
"yes": "yes",
"#16": "Phrases in components/Charts/DepthChart/index.tsx",
"#17": "Phrases in components/Charts/MapChart/index.tsx",
"#15": "Phrases in components/Charts/DepthChart/index.tsx",
"#16": "Phrases in components/Charts/MapChart/index.tsx",
"Accept": "Accept",
"By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.": "By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.",
"Close": "Close",
"Download high resolution map?": "Download high resolution map?",
"Show tiles": "Show tiles",
"#18": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
"#19": "Phrases in components/Dialogs/About.tsx",
"#17": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
"#18": "Phrases in components/Dialogs/About.tsx",
"(GitHub).": "(GitHub).",
"(Telegram)": "(Telegram)",
". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.": ". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.",
@ -208,7 +203,7 @@
"You can find a step-by-step description of the trade pipeline in ": "You can find a step-by-step description of the trade pipeline in ",
"Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.": "Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.",
"Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.": "Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.",
"#20": "Phrases in components/Dialogs/AuditPGP.tsx",
"#19": "Phrases in components/Dialogs/AuditPGP.tsx",
"Go back": "Go back",
"Keys": "Keys",
"Learn how to verify": "Learn how to verify",
@ -224,13 +219,13 @@
"Your peer PGP public key. You use it to encrypt messages only he can read and to verify your peer signed the incoming messages.": "Your peer PGP public key. You use it to encrypt messages only he can read.and to verify your peer signed the incoming messages.",
"Your private key passphrase (keep secure!)": "Your private key passphrase (keep secure!)",
"Your public key": "Your public key",
"#21": "Phrases in components/Dialogs/Client.tsx",
"#20": "Phrases in components/Dialogs/Client.tsx",
"... somewhere on Earth!": "... somewhere on Earth!",
"Client info": "Client info",
"Made with": "Made with",
"RoboSats client version": "RoboSats client version",
"and": "and",
"#22": "Phrases in components/Dialogs/Community.tsx",
"#21": "Phrases in components/Dialogs/Community.tsx",
"Community": "Community",
"Follow RoboSats in Nostr": "Follow RoboSats in Nostr",
"Follow RoboSats in X": "Follow RoboSats in X",
@ -245,7 +240,7 @@
"Tell us about a new feature or a bug": "Tell us about a new feature or a bug",
"We are abandoning Telegram! Our old TG groups": "We are abandoning Telegram! Our old TG groups",
"X Official Account": "X Official Account",
"#23": "Phrases in components/Dialogs/Coordinator.tsx",
"#22": "Phrases in components/Dialogs/Coordinator.tsx",
"...Opening on Nostr gateway. Pubkey copied!": "...Opening on Nostr gateway. Pubkey copied!",
"24h contracted volume": "24h contracted volume",
"24h non-KYC bitcoin premium": "24h non-KYC bitcoin premium",
@ -294,29 +289,34 @@
"Website": "Website",
"X": "X",
"Zaps voluntarily for development": "Zaps voluntarily for development",
"#24": "Phrases in components/Dialogs/EnableTelegram.tsx",
"#23": "Phrases in components/Dialogs/EnableTelegram.tsx",
"Browser": "Browser",
"Enable": "Enable",
"Enable TG Notifications": "Enable TG Notifications",
"You will be taken to a conversation with RoboSats telegram bot. Simply open the chat and press Start. Note that by enabling telegram notifications you might lower your level of anonymity.": "You will be taken to a conversation with RoboSats telegram bot. Simply open the chat and press Start. Note that by enabling telegram notifications you might lower your level of anonymity.",
"#25": "Phrases in components/Dialogs/Exchange.tsx",
"#24": "Phrases in components/Dialogs/Exchange.tsx",
"Enabled RoboSats coordinators": "Enabled RoboSats coordinators",
"Exchange Summary": "Exchange Summary",
"Online RoboSats coordinators": "Online RoboSats coordinators",
"#26": "Phrases in components/Dialogs/F2fMap.tsx",
"#25": "Phrases in components/Dialogs/F2fMap.tsx",
"Choose a location": "Choose a location",
"Save": "Save",
"#27": "Phrases in components/Dialogs/Learn.tsx",
"#26": "Phrases in components/Dialogs/Learn.tsx",
"Back": "Back",
"You are about to visit Learn RoboSats. It hosts tutorials and documentation to help you learn how to use RoboSats and understand how it works.": "You are about to visit Learn RoboSats. It hosts tutorials and documentation to help you learn how to use RoboSats and understand how it works.",
"#28": "Phrases in components/Dialogs/NoRobot.tsx",
"#27": "Phrases in components/Dialogs/NoRobot.tsx",
"Generate Robot": "Generate Robot",
"Generate a robot avatar first. Then create your own order.": "Generate a robot avatar first. Then create your own order.",
"You do not have a robot avatar": "You do not have a robot avatar",
"#29": "Phrases in components/Dialogs/Profile.tsx",
"#28": "Phrases in components/Dialogs/Profile.tsx",
"Coordinators that know your robot:": "Coordinators that know your robot:",
"Looking for your robot!": "Looking for your robot!",
"Your Robot": "Your Robot",
"#29": "Phrases in components/Dialogs/Recovery.tsx",
"Enter your robot token to re-build your robot and gain access to its trades.": "Enter your robot token to re-build your robot and gain access to its trades.",
"Paste token here": "Paste token here",
"Recover": "Recover",
"Robot recovery": "Robot recovery",
"#30": "Phrases in components/Dialogs/StoreToken.tsx",
"Back it up!": "Back it up!",
"Done": "Done",

View File

@ -15,10 +15,10 @@
"RoboSats information": "Información RoboSats",
"client for nerds": "client for nerds",
"#5": "Phrases in basic/NavBar/NavBar.tsx",
"Garage": "Garage",
"More": "Más",
"Offers": "Ofertas",
"Order": "Orden",
"Robot": "Robot",
"Settings": "Ajustes",
"#6": "Phrases in basic/OrderPage/index.tsx",
"Contract": "Contrato",
@ -40,47 +40,41 @@
"You can also add your own random characters into the token or": "Puedes añadir tus propios carácteres aleatorios al token o",
"or visit the robot school for documentation.": "o visita la 'escuela robótica' para ver la documentación.",
"roll again": "Tirar otra vez",
"#8": "Phrases in basic/RobotPage/Recovery.tsx",
"Enter your robot token to re-build your robot and gain access to its trades.": "Escribe o pega el token de tu robot token para reconstruirlo y acceder a tus operaciones.",
"Paste token here": "Pega aquí el token",
"Recover": "Recuperar",
"Robot recovery": "Recupera tu robot",
"#9": "Phrases in basic/RobotPage/RobotProfile.tsx",
"#8": "Phrases in basic/RobotPage/RobotProfile.tsx",
"Active order #{{orderID}}": "Orden activa #{{orderID}}",
"Add Robot": "Añadir Robot",
"Add a new Robot": "Añade un nuevo Robot",
"Building...": "Construyendo...",
"Delete Garage": "Borrar Garaje",
"Delete Robot": "Delete Robot",
"Last order #{{orderID}}": "Última orden #{{orderID}}",
"Logout": "Cerrar sesión",
"Looking for orders!": "Looking for orders!",
"No existing orders found": "No existing orders found",
"Recovery": "Recuperar",
"Reusing trading identity degrades your privacy against other users, coordinators and observers.": "Reutilizar una identidad debilita su privacidad frente a otros usarios, coordinadores y observadores.",
"Robot Garage": "Garaje de robots",
"Store your token safely": "Guarda tu token de forma segura",
"Welcome back!": "¡Hola otra vez!",
"#10": "Phrases in basic/RobotPage/TokenInput.tsx",
"#9": "Phrases in basic/RobotPage/TokenInput.tsx",
"Copied!": "¡Copiado!",
"#11": "Phrases in basic/RobotPage/Welcome.tsx",
"Not enough entropy, make it more complex": "Not enough entropy, make it more complex",
"The token is too short": "The token is too short",
"#10": "Phrases in basic/RobotPage/Welcome.tsx",
"A Simple and Private LN P2P Exchange": "Un exchange LN P2P sencillo y privado",
"Create a new robot and learn to use RoboSats": "Crea un nuevo robot y aprende a usar RoboSats",
"Fast Generate Robot": "Genera un Robot al instante",
"Recover an existing robot using your token": "Recupera un robot existente usando tu token",
"Recovery": "Recuperar",
"Start": "Empezar",
"#12": "Phrases in basic/RobotPage/index.tsx",
"#11": "Phrases in basic/RobotPage/index.tsx",
"Connecting to TOR": "Conectando con TOR",
"Connection encrypted and anonymized using TOR.": "Conexión encriptada y anonimizada usando TOR.",
"Not enough entropy, make it more complex": "Not enough entropy, make it more complex",
"The token is too short": "The token is too short",
"This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.": "Esto asegura máxima privacidad, aunque quizá observe algo de lentitud. Si se corta la conexión, reinicie la aplicación.",
"#13": "Phrases in basic/SettingsPage/index.tsx",
"#12": "Phrases in basic/SettingsPage/index.tsx",
"Add": "Add",
"Alias": "Alias",
"Alias already exists": "Alias already exists",
"Invalid Onion URL": "Invalid Onion URL",
"URL": "URL",
"#14": "Phrases in components/BookTable/BookControl.tsx",
"#13": "Phrases in components/BookTable/BookControl.tsx",
"ANY": "TODO",
"Buy": "Comprar",
"DESTINATION": "DESTINO",
@ -96,7 +90,7 @@
"and use": "y usa",
"hosted by": "hosted by",
"pay with": "paga con",
"#15": "Phrases in components/BookTable/index.tsx",
"#14": "Phrases in components/BookTable/index.tsx",
"Add filter": "Añadir filtro",
"Amount": "Cantidad",
"An error occurred.": "Ha ocurrido un error.",
@ -131,6 +125,7 @@
"Premium": "Prima",
"Price": "Precio",
"Reorder column": "Reordenar columnas",
"Robot": "Robot",
"Sats now": "Sats ahora",
"Select columns": "Seleccionar columnas",
"Show all": "Mostrar todas",
@ -160,15 +155,15 @@
"starts with": "empieza con",
"true": "verdad",
"yes": "si",
"#16": "Phrases in components/Charts/DepthChart/index.tsx",
"#17": "Phrases in components/Charts/MapChart/index.tsx",
"#15": "Phrases in components/Charts/DepthChart/index.tsx",
"#16": "Phrases in components/Charts/MapChart/index.tsx",
"Accept": "Accept",
"By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.": "By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.",
"Close": "Cerrar",
"Download high resolution map?": "Download high resolution map?",
"Show tiles": "Show tiles",
"#18": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
"#19": "Phrases in components/Dialogs/About.tsx",
"#17": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
"#18": "Phrases in components/Dialogs/About.tsx",
"(GitHub).": "(GitHub).",
"(Telegram)": "(Telegram)",
". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.": ". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.",
@ -208,7 +203,7 @@
"You can find a step-by-step description of the trade pipeline in ": "Puedes encontrar una descripción paso a paso de los intercambios en",
"Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.": "Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.",
"Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.": "Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.",
"#20": "Phrases in components/Dialogs/AuditPGP.tsx",
"#19": "Phrases in components/Dialogs/AuditPGP.tsx",
"Go back": "Volver",
"Keys": "Llaves",
"Learn how to verify": "Aprende a verificar",
@ -224,13 +219,13 @@
"Your peer PGP public key. You use it to encrypt messages only he can read and to verify your peer signed the incoming messages.": "La llave pública PGP de tu contraparte. La usas para encriptar mensajes que solo él puede leer y para verificar que es él quién ha firmado los mensajes que recibes.",
"Your private key passphrase (keep secure!)": "La contraseña de tu llave privada ¡Guárdala bien!",
"Your public key": "Tu llave pública",
"#21": "Phrases in components/Dialogs/Client.tsx",
"#20": "Phrases in components/Dialogs/Client.tsx",
"... somewhere on Earth!": "... en algún lugar de La Tierra!",
"Client info": "Client info",
"Made with": "Hecho con",
"RoboSats client version": "RoboSats client version",
"and": "y",
"#22": "Phrases in components/Dialogs/Community.tsx",
"#21": "Phrases in components/Dialogs/Community.tsx",
"Community": "Comunidad",
"Follow RoboSats in Nostr": "Follow RoboSats in Nostr",
"Follow RoboSats in X": "Follow RoboSats in X",
@ -245,7 +240,7 @@
"Tell us about a new feature or a bug": "Propón funcionalidades o notifica errores",
"We are abandoning Telegram! Our old TG groups": "We are abandoning Telegram! Our old TG groups",
"X Official Account": "X Official Account",
"#23": "Phrases in components/Dialogs/Coordinator.tsx",
"#22": "Phrases in components/Dialogs/Coordinator.tsx",
"...Opening on Nostr gateway. Pubkey copied!": "...Opening on Nostr gateway. Pubkey copied!",
"24h contracted volume": "Volumen de los contratos en 24h",
"24h non-KYC bitcoin premium": "24h non-KYC bitcoin premium",
@ -294,29 +289,34 @@
"Website": "Website",
"X": "X",
"Zaps voluntarily for development": "Zaps voluntarily for development",
"#24": "Phrases in components/Dialogs/EnableTelegram.tsx",
"#23": "Phrases in components/Dialogs/EnableTelegram.tsx",
"Browser": "Browser",
"Enable": "Activar",
"Enable TG Notifications": "Activar Notificaciones TG",
"You will be taken to a conversation with RoboSats telegram bot. Simply open the chat and press Start. Note that by enabling telegram notifications you might lower your level of anonymity.": "Se abrirá un chat con el bot de Telegram de RoboSats. Simplemente pulsa en Empezar. Ten en cuenta que si activas las notificaciones de Telegram reducirás tu nivel de anonimato.",
"#25": "Phrases in components/Dialogs/Exchange.tsx",
"#24": "Phrases in components/Dialogs/Exchange.tsx",
"Enabled RoboSats coordinators": "Enabled RoboSats coordinators",
"Exchange Summary": "Exchange Summary",
"Online RoboSats coordinators": "Online RoboSats coordinators",
"#26": "Phrases in components/Dialogs/F2fMap.tsx",
"#25": "Phrases in components/Dialogs/F2fMap.tsx",
"Choose a location": "Choose a location",
"Save": "Save",
"#27": "Phrases in components/Dialogs/Learn.tsx",
"#26": "Phrases in components/Dialogs/Learn.tsx",
"Back": "Volver",
"You are about to visit Learn RoboSats. It hosts tutorials and documentation to help you learn how to use RoboSats and understand how it works.": "Vas a visitar la página Learn RoboSats. Ha sido construida por la comunidad y contiene tutoriales y documentación que te ayudará a aprender cómo se usa RoboSats y a entender cómo funciona.",
"#28": "Phrases in components/Dialogs/NoRobot.tsx",
"#27": "Phrases in components/Dialogs/NoRobot.tsx",
"Generate Robot": "Generar Robot",
"Generate a robot avatar first. Then create your own order.": "Primero genera un robot avatar. Después crea tu propia orden.",
"You do not have a robot avatar": "No tienes un avatar robot",
"#29": "Phrases in components/Dialogs/Profile.tsx",
"#28": "Phrases in components/Dialogs/Profile.tsx",
"Coordinators that know your robot:": "Coordinators that know your robot:",
"Looking for your robot!": "Looking for your robot!",
"Your Robot": "Your Robot",
"#29": "Phrases in components/Dialogs/Recovery.tsx",
"Enter your robot token to re-build your robot and gain access to its trades.": "Escribe o pega el token de tu robot token para reconstruirlo y acceder a tus operaciones.",
"Paste token here": "Pega aquí el token",
"Recover": "Recuperar",
"Robot recovery": "Recupera tu robot",
"#30": "Phrases in components/Dialogs/StoreToken.tsx",
"Back it up!": "¡Guárdalo!",
"Done": "Hecho",

View File

@ -15,10 +15,10 @@
"RoboSats information": "RoboSats information",
"client for nerds": "client for nerds",
"#5": "Phrases in basic/NavBar/NavBar.tsx",
"Garage": "Garage",
"More": "More",
"Offers": "Offers",
"Order": "Eskaera",
"Robot": "Robota",
"Settings": "Settings",
"#6": "Phrases in basic/OrderPage/index.tsx",
"Contract": "Kontratua",
@ -40,47 +40,41 @@
"You can also add your own random characters into the token or": "You can also add your own random characters into the token or",
"or visit the robot school for documentation.": "or visit the robot school for documentation.",
"roll again": "roll again",
"#8": "Phrases in basic/RobotPage/Recovery.tsx",
"Enter your robot token to re-build your robot and gain access to its trades.": "Enter your robot token to re-build your robot and gain access to its trades.",
"Paste token here": "Paste token here",
"Recover": "Recover",
"Robot recovery": "Robot recovery",
"#9": "Phrases in basic/RobotPage/RobotProfile.tsx",
"#8": "Phrases in basic/RobotPage/RobotProfile.tsx",
"Active order #{{orderID}}": "Active order #{{orderID}}",
"Add Robot": "Add Robot",
"Add a new Robot": "Add a new Robot",
"Building...": "Building...",
"Delete Garage": "Delete Garage",
"Delete Robot": "Delete Robot",
"Last order #{{orderID}}": "Last order #{{orderID}}",
"Logout": "Logout",
"Looking for orders!": "Looking for orders!",
"No existing orders found": "No existing orders found",
"Recovery": "Recovery",
"Reusing trading identity degrades your privacy against other users, coordinators and observers.": "Reusing trading identity degrades your privacy against other users, coordinators and observers.",
"Robot Garage": "Robot Garage",
"Store your token safely": "Gorde zure tokena era seguru batean",
"Welcome back!": "Welcome back!",
"#10": "Phrases in basic/RobotPage/TokenInput.tsx",
"#9": "Phrases in basic/RobotPage/TokenInput.tsx",
"Copied!": "Kopiatuta!",
"#11": "Phrases in basic/RobotPage/Welcome.tsx",
"Not enough entropy, make it more complex": "Not enough entropy, make it more complex",
"The token is too short": "The token is too short",
"#10": "Phrases in basic/RobotPage/Welcome.tsx",
"A Simple and Private LN P2P Exchange": "A Simple and Private LN P2P Exchange",
"Create a new robot and learn to use RoboSats": "Create a new robot and learn to use RoboSats",
"Fast Generate Robot": "Fast Generate Robot",
"Recover an existing robot using your token": "Recover an existing robot using your token",
"Recovery": "Recovery",
"Start": "Start",
"#12": "Phrases in basic/RobotPage/index.tsx",
"#11": "Phrases in basic/RobotPage/index.tsx",
"Connecting to TOR": "Connecting to TOR",
"Connection encrypted and anonymized using TOR.": "Connection encrypted and anonymized using TOR.",
"Not enough entropy, make it more complex": "Not enough entropy, make it more complex",
"The token is too short": "The token is too short",
"This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.": "This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.",
"#13": "Phrases in basic/SettingsPage/index.tsx",
"#12": "Phrases in basic/SettingsPage/index.tsx",
"Add": "Add",
"Alias": "Alias",
"Alias already exists": "Alias already exists",
"Invalid Onion URL": "Invalid Onion URL",
"URL": "URL",
"#14": "Phrases in components/BookTable/BookControl.tsx",
"#13": "Phrases in components/BookTable/BookControl.tsx",
"ANY": "ANY",
"Buy": "Erosi",
"DESTINATION": "DESTINATION",
@ -96,7 +90,7 @@
"and use": "eta erabili",
"hosted by": "hosted by",
"pay with": "pay with",
"#15": "Phrases in components/BookTable/index.tsx",
"#14": "Phrases in components/BookTable/index.tsx",
"Add filter": "Gehitu iragazkia",
"Amount": "Kopurua",
"An error occurred.": "Akats bat gertatu da.",
@ -131,6 +125,7 @@
"Premium": "Prima",
"Price": "Prezioa",
"Reorder column": "Birorderatu zutabea",
"Robot": "Robota",
"Sats now": "Sats now",
"Select columns": "Aukeratu zutabeak",
"Show all": "Erakutsi dena",
@ -160,15 +155,15 @@
"starts with": "hasten da",
"true": "egia",
"yes": "bai",
"#16": "Phrases in components/Charts/DepthChart/index.tsx",
"#17": "Phrases in components/Charts/MapChart/index.tsx",
"#15": "Phrases in components/Charts/DepthChart/index.tsx",
"#16": "Phrases in components/Charts/MapChart/index.tsx",
"Accept": "Accept",
"By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.": "By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.",
"Close": "Itxi",
"Download high resolution map?": "Download high resolution map?",
"Show tiles": "Show tiles",
"#18": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
"#19": "Phrases in components/Dialogs/About.tsx",
"#17": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
"#18": "Phrases in components/Dialogs/About.tsx",
"(GitHub).": "(GitHub).",
"(Telegram)": "(Telegram)",
". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.": ". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.",
@ -208,7 +203,7 @@
"You can find a step-by-step description of the trade pipeline in ": "Salerosketaren pausoz-pausoko deskribapen bat aurki dezakezu ondorengo helbidean ",
"Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.": "Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.",
"Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.": "Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.",
"#20": "Phrases in components/Dialogs/AuditPGP.tsx",
"#19": "Phrases in components/Dialogs/AuditPGP.tsx",
"Go back": "Joan atzera",
"Keys": "Giltzak",
"Learn how to verify": "Ikasi nola egiaztatu",
@ -224,13 +219,13 @@
"Your peer PGP public key. You use it to encrypt messages only he can read and to verify your peer signed the incoming messages.": "Zure parearen PGP giltza publikoa. Berak bakarrik irakur ditzakeen mezuak zifratzeko eta jasotako mezuak berak sinatu dituela egiaztatzeko erabiliko duzu.",
"Your private key passphrase (keep secure!)": "Zure giltza pribatuaren pasahitza (seguru mantendu)",
"Your public key": "Zure giltza publikoa",
"#21": "Phrases in components/Dialogs/Client.tsx",
"#20": "Phrases in components/Dialogs/Client.tsx",
"... somewhere on Earth!": "... Lurreko lekuren batean!",
"Client info": "Client info",
"Made with": "Erabili dira",
"RoboSats client version": "RoboSats client version",
"and": "eta",
"#22": "Phrases in components/Dialogs/Community.tsx",
"#21": "Phrases in components/Dialogs/Community.tsx",
"Community": "Komunitatea",
"Follow RoboSats in Nostr": "Follow RoboSats in Nostr",
"Follow RoboSats in X": "Follow RoboSats in X",
@ -245,7 +240,7 @@
"Tell us about a new feature or a bug": "Jakinarazi funtzionalitate berri bat edo akats bat",
"We are abandoning Telegram! Our old TG groups": "We are abandoning Telegram! Our old TG groups",
"X Official Account": "X Official Account",
"#23": "Phrases in components/Dialogs/Coordinator.tsx",
"#22": "Phrases in components/Dialogs/Coordinator.tsx",
"...Opening on Nostr gateway. Pubkey copied!": "...Opening on Nostr gateway. Pubkey copied!",
"24h contracted volume": "24 ordutan kontratatutako bolumena",
"24h non-KYC bitcoin premium": "24h non-KYC bitcoin premium",
@ -294,29 +289,34 @@
"Website": "Website",
"X": "X",
"Zaps voluntarily for development": "Zaps voluntarily for development",
"#24": "Phrases in components/Dialogs/EnableTelegram.tsx",
"#23": "Phrases in components/Dialogs/EnableTelegram.tsx",
"Browser": "Browser",
"Enable": "Baimendu",
"Enable TG Notifications": "Baimendu TG Jakinarazpenak",
"You will be taken to a conversation with RoboSats telegram bot. Simply open the chat and press Start. Note that by enabling telegram notifications you might lower your level of anonymity.": "RoboSats telegrama botarekin hitz egingo duzu. Zabaldu berriketa eta sakatu Start. Telegrama bidez anonimotasun maila jaitsi zenezake.",
"#25": "Phrases in components/Dialogs/Exchange.tsx",
"#24": "Phrases in components/Dialogs/Exchange.tsx",
"Enabled RoboSats coordinators": "Enabled RoboSats coordinators",
"Exchange Summary": "Exchange Summary",
"Online RoboSats coordinators": "Online RoboSats coordinators",
"#26": "Phrases in components/Dialogs/F2fMap.tsx",
"#25": "Phrases in components/Dialogs/F2fMap.tsx",
"Choose a location": "Choose a location",
"Save": "Save",
"#27": "Phrases in components/Dialogs/Learn.tsx",
"#26": "Phrases in components/Dialogs/Learn.tsx",
"Back": "Atzera",
"You are about to visit Learn RoboSats. It hosts tutorials and documentation to help you learn how to use RoboSats and understand how it works.": "Learn Robosats bisitatu behar duzu. Bertan, Robosats erabiltzen ikasteko eta nola dabilen ulertzeko tutorialak eta dokumentazioa aurkituko dituzu.",
"#28": "Phrases in components/Dialogs/NoRobot.tsx",
"#27": "Phrases in components/Dialogs/NoRobot.tsx",
"Generate Robot": "Robota sortu",
"Generate a robot avatar first. Then create your own order.": "Generate a robot avatar first. Then create your own order.",
"You do not have a robot avatar": "Ez daukazu robot avatarrik",
"#29": "Phrases in components/Dialogs/Profile.tsx",
"#28": "Phrases in components/Dialogs/Profile.tsx",
"Coordinators that know your robot:": "Coordinators that know your robot:",
"Looking for your robot!": "Looking for your robot!",
"Your Robot": "Your Robot",
"#29": "Phrases in components/Dialogs/Recovery.tsx",
"Enter your robot token to re-build your robot and gain access to its trades.": "Enter your robot token to re-build your robot and gain access to its trades.",
"Paste token here": "Paste token here",
"Recover": "Recover",
"Robot recovery": "Robot recovery",
"#30": "Phrases in components/Dialogs/StoreToken.tsx",
"Back it up!": "Gorde ezazu!",
"Done": "Prest",

View File

@ -15,10 +15,10 @@
"RoboSats information": "RoboSats information",
"client for nerds": "client for nerds",
"#5": "Phrases in basic/NavBar/NavBar.tsx",
"Garage": "Garage",
"More": "Plus",
"Offers": "Offres",
"Order": "Ordre",
"Robot": "Robot",
"Settings": "Réglages",
"#6": "Phrases in basic/OrderPage/index.tsx",
"Contract": "Contrat",
@ -40,47 +40,41 @@
"You can also add your own random characters into the token or": "Vous pouvez également ajouter vos propres caractères aléatoires dans le jeton ou",
"or visit the robot school for documentation.": "ou visiter l'école robosats pour la documentation.",
"roll again": "rouler de nouveau",
"#8": "Phrases in basic/RobotPage/Recovery.tsx",
"Enter your robot token to re-build your robot and gain access to its trades.": "Saisissez votre jeton de robot pour reconstruire votre robot et accéder à ses transactions.",
"Paste token here": "Coller le jeton ici",
"Recover": "Récupérer",
"Robot recovery": "Récupération du robot",
"#9": "Phrases in basic/RobotPage/RobotProfile.tsx",
"#8": "Phrases in basic/RobotPage/RobotProfile.tsx",
"Active order #{{orderID}}": "Ordre actif #{{orderID}}",
"Add Robot": "Ajout Robot",
"Add a new Robot": "Ajouter un nouveau Robot",
"Building...": "Construction...",
"Delete Garage": "Suppression du garage",
"Delete Robot": "Delete Robot",
"Last order #{{orderID}}": "Dernier ordre #{{orderID}}",
"Logout": "Déconnexion",
"Looking for orders!": "Looking for orders!",
"No existing orders found": "No existing orders found",
"Recovery": "Récupération",
"Reusing trading identity degrades your privacy against other users, coordinators and observers.": "La réutilisation de l'identité d'échange dégrade votre vie privée par rapport aux autres utilisateurs, coordinateurs et observateurs.",
"Robot Garage": "Garage des robots",
"Store your token safely": "Stockez votre jeton en sécurité",
"Welcome back!": "Bon retour parmi nous !",
"#10": "Phrases in basic/RobotPage/TokenInput.tsx",
"#9": "Phrases in basic/RobotPage/TokenInput.tsx",
"Copied!": "Copié !",
"#11": "Phrases in basic/RobotPage/Welcome.tsx",
"Not enough entropy, make it more complex": "L'entropie n'est pas suffisante, il faut la rendre plus complexe",
"The token is too short": "The token is too short",
"#10": "Phrases in basic/RobotPage/Welcome.tsx",
"A Simple and Private LN P2P Exchange": "Une bourse d'échange P2P LN simple et privée",
"Create a new robot and learn to use RoboSats": "Create a new robot and learn to use RoboSats",
"Fast Generate Robot": "Génération rapide d'un robot",
"Recover an existing robot using your token": "Récupérer un robot existant à l'aide de votre jeton",
"Recovery": "Récupération",
"Start": "Commencer",
"#12": "Phrases in basic/RobotPage/index.tsx",
"#11": "Phrases in basic/RobotPage/index.tsx",
"Connecting to TOR": "Connexion au réseau TOR",
"Connection encrypted and anonymized using TOR.": "Connexion chiffré et anonymisée utilisant TOR.",
"Not enough entropy, make it more complex": "L'entropie n'est pas suffisante, il faut la rendre plus complexe",
"The token is too short": "The token is too short",
"This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.": "Cela garantit une confidentialité maximale, mais l'application peut sembler lente. Si la connexion est perdue, redémarrez l'application.",
"#13": "Phrases in basic/SettingsPage/index.tsx",
"#12": "Phrases in basic/SettingsPage/index.tsx",
"Add": "Add",
"Alias": "Alias",
"Alias already exists": "Alias already exists",
"Invalid Onion URL": "Invalid Onion URL",
"URL": "URL",
"#14": "Phrases in components/BookTable/BookControl.tsx",
"#13": "Phrases in components/BookTable/BookControl.tsx",
"ANY": "Tous",
"Buy": "Acheter",
"DESTINATION": "DESTINATION",
@ -96,7 +90,7 @@
"and use": "et utiliser",
"hosted by": "hosted by",
"pay with": "payer avec",
"#15": "Phrases in components/BookTable/index.tsx",
"#14": "Phrases in components/BookTable/index.tsx",
"Add filter": "Ajouter filtre",
"Amount": "Montant",
"An error occurred.": "Une erreur s'est produite.",
@ -131,6 +125,7 @@
"Premium": "Prime",
"Price": "Prix",
"Reorder column": "Réorganiser les colonnes",
"Robot": "Robot",
"Sats now": "Sats maintenant",
"Select columns": "Sélectionner les colonnes",
"Show all": "Afficher tout",
@ -160,15 +155,15 @@
"starts with": "commence par",
"true": "vrai",
"yes": "oui",
"#16": "Phrases in components/Charts/DepthChart/index.tsx",
"#17": "Phrases in components/Charts/MapChart/index.tsx",
"#15": "Phrases in components/Charts/DepthChart/index.tsx",
"#16": "Phrases in components/Charts/MapChart/index.tsx",
"Accept": "Accept",
"By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.": "By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.",
"Close": "Fermer",
"Download high resolution map?": "Download high resolution map?",
"Show tiles": "Show tiles",
"#18": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
"#19": "Phrases in components/Dialogs/About.tsx",
"#17": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
"#18": "Phrases in components/Dialogs/About.tsx",
"(GitHub).": "(GitHub).",
"(Telegram)": "(Telegram)",
". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.": ". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.",
@ -208,7 +203,7 @@
"You can find a step-by-step description of the trade pipeline in ": "Vous pouvez trouver une description pas à pas des échanges en ",
"Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.": "Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.",
"Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.": "Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.",
"#20": "Phrases in components/Dialogs/AuditPGP.tsx",
"#19": "Phrases in components/Dialogs/AuditPGP.tsx",
"Go back": "Retourner",
"Keys": "Keys",
"Learn how to verify": "Apprendre à vérifier",
@ -224,13 +219,13 @@
"Your peer PGP public key. You use it to encrypt messages only he can read and to verify your peer signed the incoming messages.": "La clé publique PGP de votre correspondant. Vous l'utilisez pour chiffrer les messages que lui seul peut lire et pour vérifier que votre correspondant a signé les messages entrants.",
"Your private key passphrase (keep secure!)": "Phrase de passe de votre clé privée (à conserver précieusement !)",
"Your public key": "Votre clé publique",
"#21": "Phrases in components/Dialogs/Client.tsx",
"#20": "Phrases in components/Dialogs/Client.tsx",
"... somewhere on Earth!": "... quelque part sur Terre!",
"Client info": "Client info",
"Made with": "Construit avec",
"RoboSats client version": "RoboSats client version",
"and": "et",
"#22": "Phrases in components/Dialogs/Community.tsx",
"#21": "Phrases in components/Dialogs/Community.tsx",
"Community": "Communauté",
"Follow RoboSats in Nostr": "Suivez RoboSats sur Nostr",
"Follow RoboSats in X": "Follow RoboSats in X",
@ -245,7 +240,7 @@
"Tell us about a new feature or a bug": "Parlez-nous d'une nouvelle fonctionnalité ou d'un bug",
"We are abandoning Telegram! Our old TG groups": "Nous abandonnons Telegram ! Nos anciens groupes TG",
"X Official Account": "X Official Account",
"#23": "Phrases in components/Dialogs/Coordinator.tsx",
"#22": "Phrases in components/Dialogs/Coordinator.tsx",
"...Opening on Nostr gateway. Pubkey copied!": "...Opening on Nostr gateway. Pubkey copied!",
"24h contracted volume": "Volume contracté en 24h",
"24h non-KYC bitcoin premium": "24h non-KYC bitcoin premium",
@ -294,29 +289,34 @@
"Website": "Website",
"X": "X",
"Zaps voluntarily for development": "Zaps voluntarily for development",
"#24": "Phrases in components/Dialogs/EnableTelegram.tsx",
"#23": "Phrases in components/Dialogs/EnableTelegram.tsx",
"Browser": "Navigateur",
"Enable": "Activer",
"Enable TG Notifications": "Activer notifications TG",
"You will be taken to a conversation with RoboSats telegram bot. Simply open the chat and press Start. Note that by enabling telegram notifications you might lower your level of anonymity.": "Vous serez redirigé vers une conversation avec le robot telegram RoboSats. Il suffit d'ouvrir le chat et d'appuyer sur Start. Notez qu'en activant les notifications Telegram, vous risquez de réduire votre niveau d'anonymat.",
"#25": "Phrases in components/Dialogs/Exchange.tsx",
"#24": "Phrases in components/Dialogs/Exchange.tsx",
"Enabled RoboSats coordinators": "Enabled RoboSats coordinators",
"Exchange Summary": "Exchange Summary",
"Online RoboSats coordinators": "Online RoboSats coordinators",
"#26": "Phrases in components/Dialogs/F2fMap.tsx",
"#25": "Phrases in components/Dialogs/F2fMap.tsx",
"Choose a location": "Choose a location",
"Save": "Save",
"#27": "Phrases in components/Dialogs/Learn.tsx",
"#26": "Phrases in components/Dialogs/Learn.tsx",
"Back": "Retour",
"You are about to visit Learn RoboSats. It hosts tutorials and documentation to help you learn how to use RoboSats and understand how it works.": "Vous êtes sur le point de visiter Learn RoboSats. Il héberge des tutoriels et de la documentation pour vous aider à apprendre à utiliser RoboSats et à comprendre son fonctionnement.",
"#28": "Phrases in components/Dialogs/NoRobot.tsx",
"#27": "Phrases in components/Dialogs/NoRobot.tsx",
"Generate Robot": "Générer un robot",
"Generate a robot avatar first. Then create your own order.": "Créez d'abord un avatar de robot. Créez ensuite votre propre commande.",
"You do not have a robot avatar": "Vous n'avez pas d'avatar robot",
"#29": "Phrases in components/Dialogs/Profile.tsx",
"#28": "Phrases in components/Dialogs/Profile.tsx",
"Coordinators that know your robot:": "Coordinators that know your robot:",
"Looking for your robot!": "Looking for your robot!",
"Your Robot": "Votre Robot",
"#29": "Phrases in components/Dialogs/Recovery.tsx",
"Enter your robot token to re-build your robot and gain access to its trades.": "Saisissez votre jeton de robot pour reconstruire votre robot et accéder à ses transactions.",
"Paste token here": "Coller le jeton ici",
"Recover": "Récupérer",
"Robot recovery": "Récupération du robot",
"#30": "Phrases in components/Dialogs/StoreToken.tsx",
"Back it up!": "Sauvegardez!",
"Done": "Fait",

View File

@ -15,10 +15,10 @@
"RoboSats information": "Informazioni su RoboSats",
"client for nerds": "client for nerds",
"#5": "Phrases in basic/NavBar/NavBar.tsx",
"Garage": "Garage",
"More": "Altro",
"Offers": "Offerte",
"Order": "Ordina",
"Robot": "Robot",
"Settings": "Impostazioni",
"#6": "Phrases in basic/OrderPage/index.tsx",
"Contract": "Contratto",
@ -40,47 +40,41 @@
"You can also add your own random characters into the token or": "Puoi anche aggiungere i tuoi caratteri casuali nel token oppure",
"or visit the robot school for documentation.": "oppure visitare la scuola robotica per la documentazione.",
"roll again": "lancia di nuovo",
"#8": "Phrases in basic/RobotPage/Recovery.tsx",
"Enter your robot token to re-build your robot and gain access to its trades.": "Inserisci il token del tuo robot per ricostruirlo ed ottenere l'accesso ai suoi scambi.",
"Paste token here": "Incolla il token qui",
"Recover": "Recupera",
"Robot recovery": "Recupera robot",
"#9": "Phrases in basic/RobotPage/RobotProfile.tsx",
"#8": "Phrases in basic/RobotPage/RobotProfile.tsx",
"Active order #{{orderID}}": "Ordine attivo #{{orderID}}",
"Add Robot": "Aggiungi robot",
"Add a new Robot": "Aggiungi un nuovo robot",
"Building...": "Costruzione...",
"Delete Garage": "Cancella Garage",
"Delete Robot": "Delete Robot",
"Last order #{{orderID}}": "Ultimo ordine #{{orderID}}",
"Logout": "Esci",
"Looking for orders!": "Looking for orders!",
"No existing orders found": "No existing orders found",
"Recovery": "Recupero",
"Reusing trading identity degrades your privacy against other users, coordinators and observers.": "Il riutilizzo di identità per gli scambi riduce la privacy rispetto ad altri utenti, coordinatori e osservatori.",
"Robot Garage": "Garage del robot",
"Store your token safely": "Custodisci il tuo token in modo sicuro",
"Welcome back!": "Ben tornato!",
"#10": "Phrases in basic/RobotPage/TokenInput.tsx",
"#9": "Phrases in basic/RobotPage/TokenInput.tsx",
"Copied!": "Copiato!",
"#11": "Phrases in basic/RobotPage/Welcome.tsx",
"Not enough entropy, make it more complex": "Non c'è abbastanza entropia, rendilo più complesso",
"The token is too short": "Il token è troppo corto",
"#10": "Phrases in basic/RobotPage/Welcome.tsx",
"A Simple and Private LN P2P Exchange": "Una piattaforma di scambi P2P su LN semplice e privata",
"Create a new robot and learn to use RoboSats": "Crea un nuovo robot e impara ad utilizzare RoboSats",
"Fast Generate Robot": "Generazione rapida di un robot",
"Recover an existing robot using your token": "Recupera un robot esistente con il tuo token",
"Recovery": "Recupero",
"Start": "Inizia",
"#12": "Phrases in basic/RobotPage/index.tsx",
"#11": "Phrases in basic/RobotPage/index.tsx",
"Connecting to TOR": "Connessione a TOR",
"Connection encrypted and anonymized using TOR.": "Connessione criptata e anonimizzata mediante TOR.",
"Not enough entropy, make it more complex": "Non c'è abbastanza entropia, rendilo più complesso",
"The token is too short": "Il token è troppo corto",
"This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.": "Questo garantisce la massima privacy, ma l'app potrebbe risultare lenta. Se si perde la connessione, riavviare l'app.",
"#13": "Phrases in basic/SettingsPage/index.tsx",
"#12": "Phrases in basic/SettingsPage/index.tsx",
"Add": "Add",
"Alias": "Alias",
"Alias already exists": "Alias already exists",
"Invalid Onion URL": "Invalid Onion URL",
"URL": "URL",
"#14": "Phrases in components/BookTable/BookControl.tsx",
"#13": "Phrases in components/BookTable/BookControl.tsx",
"ANY": "QUALUNQUE",
"Buy": "Compra",
"DESTINATION": "DESTINAZIONE",
@ -96,7 +90,7 @@
"and use": "ed usa",
"hosted by": "hosted by",
"pay with": "paga con",
"#15": "Phrases in components/BookTable/index.tsx",
"#14": "Phrases in components/BookTable/index.tsx",
"Add filter": "Aggiungi filtro",
"Amount": "Quantità",
"An error occurred.": "Si è verificato un errore.",
@ -131,6 +125,7 @@
"Premium": "Premio",
"Price": "Prezzo",
"Reorder column": "Riordina colonna",
"Robot": "Robot",
"Sats now": "Sats ora",
"Select columns": "Seleziona colonne",
"Show all": "Mostra tutto",
@ -160,15 +155,15 @@
"starts with": "inizia con",
"true": "vero",
"yes": "si",
"#16": "Phrases in components/Charts/DepthChart/index.tsx",
"#17": "Phrases in components/Charts/MapChart/index.tsx",
"#15": "Phrases in components/Charts/DepthChart/index.tsx",
"#16": "Phrases in components/Charts/MapChart/index.tsx",
"Accept": "Accept",
"By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.": "In questo modo, recupererai i riquadri della mappa da un fornitore di terze parti. A seconda della tua configurazione, le informazioni private potrebbero essere divulgate a server esterni a RoboSats.",
"Close": "Chiudi",
"Download high resolution map?": "Scarica la mappa in alta risoluzione?",
"Show tiles": "Mostra riquadri",
"#18": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
"#19": "Phrases in components/Dialogs/About.tsx",
"#17": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
"#18": "Phrases in components/Dialogs/About.tsx",
"(GitHub).": "(GitHub).",
"(Telegram)": "(Telegram)",
". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.": ". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.",
@ -208,7 +203,7 @@
"You can find a step-by-step description of the trade pipeline in ": "Una descrizione passo passo della sequenza di scambio è disponibile in ",
"Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.": "Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.",
"Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.": "Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.",
"#20": "Phrases in components/Dialogs/AuditPGP.tsx",
"#19": "Phrases in components/Dialogs/AuditPGP.tsx",
"Go back": "Indietro",
"Keys": "Chiavi",
"Learn how to verify": "Impara come verificare",
@ -224,13 +219,13 @@
"Your peer PGP public key. You use it to encrypt messages only he can read and to verify your peer signed the incoming messages.": "La chiave PGP pubblica del tuo pari. La utilizzi per cifrare i messaggi che solo il tuo pari può leggere e per verificare che la firma del tuo pari nei messaggi che ricevi.",
"Your private key passphrase (keep secure!)": "La frase d'accesso alla tua chiave privata (Proteggila!)",
"Your public key": "La tua chiave pubblica",
"#21": "Phrases in components/Dialogs/Client.tsx",
"#20": "Phrases in components/Dialogs/Client.tsx",
"... somewhere on Earth!": "... da qualche parte sulla Terra!",
"Client info": "Client info",
"Made with": "Fatto con",
"RoboSats client version": "RoboSats client version",
"and": "e",
"#22": "Phrases in components/Dialogs/Community.tsx",
"#21": "Phrases in components/Dialogs/Community.tsx",
"Community": "Comunità",
"Follow RoboSats in Nostr": "Segui Robosats su Nostr",
"Follow RoboSats in X": "Segui RoboSats su Twitter",
@ -245,7 +240,7 @@
"Tell us about a new feature or a bug": "Comunicaci nuove funzionalità o bug",
"We are abandoning Telegram! Our old TG groups": "We are abandoning Telegram! Our old TG groups",
"X Official Account": "X Official Account",
"#23": "Phrases in components/Dialogs/Coordinator.tsx",
"#22": "Phrases in components/Dialogs/Coordinator.tsx",
"...Opening on Nostr gateway. Pubkey copied!": "...Opening on Nostr gateway. Pubkey copied!",
"24h contracted volume": "Volume scambiato in 24h",
"24h non-KYC bitcoin premium": "24h non-KYC bitcoin premium",
@ -294,29 +289,34 @@
"Website": "Website",
"X": "X",
"Zaps voluntarily for development": "Zaps voluntarily for development",
"#24": "Phrases in components/Dialogs/EnableTelegram.tsx",
"#23": "Phrases in components/Dialogs/EnableTelegram.tsx",
"Browser": "Browser",
"Enable": "Attiva",
"Enable TG Notifications": "Attiva notifiche TG",
"You will be taken to a conversation with RoboSats telegram bot. Simply open the chat and press Start. Note that by enabling telegram notifications you might lower your level of anonymity.": "Sarai introdotto in una conversazione con il bot RoboSats su Telegram. Apri semplicemente la chat e premi Start. Considera che attivando le notifiche Telegram potresti ridurre il tuo livello di anonimato.",
"#25": "Phrases in components/Dialogs/Exchange.tsx",
"#24": "Phrases in components/Dialogs/Exchange.tsx",
"Enabled RoboSats coordinators": "Enabled RoboSats coordinators",
"Exchange Summary": "Exchange Summary",
"Online RoboSats coordinators": "Online RoboSats coordinators",
"#26": "Phrases in components/Dialogs/F2fMap.tsx",
"#25": "Phrases in components/Dialogs/F2fMap.tsx",
"Choose a location": "Scegli un luogo",
"Save": "Salva",
"#27": "Phrases in components/Dialogs/Learn.tsx",
"#26": "Phrases in components/Dialogs/Learn.tsx",
"Back": "Indietro",
"You are about to visit Learn RoboSats. It hosts tutorials and documentation to help you learn how to use RoboSats and understand how it works.": "Stai per visitare la pagina Learn RoboSats. Troverai tutorial e documentazione per aiutarti ad imparare a usare RoboSats e capire come funziona.",
"#28": "Phrases in components/Dialogs/NoRobot.tsx",
"#27": "Phrases in components/Dialogs/NoRobot.tsx",
"Generate Robot": "Genera un Robot",
"Generate a robot avatar first. Then create your own order.": "Genera prima un avatar per il tuo robot. Poi crea il tuo ordine.",
"You do not have a robot avatar": "Non hai un avatar per il tuo robot",
"#29": "Phrases in components/Dialogs/Profile.tsx",
"#28": "Phrases in components/Dialogs/Profile.tsx",
"Coordinators that know your robot:": "Coordinators that know your robot:",
"Looking for your robot!": "Looking for your robot!",
"Your Robot": "Il tuo Robot",
"#29": "Phrases in components/Dialogs/Recovery.tsx",
"Enter your robot token to re-build your robot and gain access to its trades.": "Inserisci il token del tuo robot per ricostruirlo ed ottenere l'accesso ai suoi scambi.",
"Paste token here": "Incolla il token qui",
"Recover": "Recupera",
"Robot recovery": "Recupera robot",
"#30": "Phrases in components/Dialogs/StoreToken.tsx",
"Back it up!": "Salvalo!",
"Done": "Fatto",

View File

@ -15,10 +15,10 @@
"RoboSats information": "RoboSats情報",
"client for nerds": "client for nerds",
"#5": "Phrases in basic/NavBar/NavBar.tsx",
"Garage": "Garage",
"More": "詳細",
"Offers": "注文書",
"Order": "注文",
"Robot": "ロボット",
"Settings": "設定",
"#6": "Phrases in basic/OrderPage/index.tsx",
"Contract": "契約",
@ -40,47 +40,41 @@
"You can also add your own random characters into the token or": "トークンに自分でランダムな文字列を追加することができます。それか…",
"or visit the robot school for documentation.": "または、ロボット教室で資料をご参考ください。",
"roll again": "もう一度生成する。",
"#8": "Phrases in basic/RobotPage/Recovery.tsx",
"Enter your robot token to re-build your robot and gain access to its trades.": "取引にアクセスするために、ロボットのトークンを入力してロボットを再生成してください。",
"Paste token here": "ここにトークンを貼り付けてください",
"Recover": "復元する",
"Robot recovery": "ロボットの復元",
"#9": "Phrases in basic/RobotPage/RobotProfile.tsx",
"#8": "Phrases in basic/RobotPage/RobotProfile.tsx",
"Active order #{{orderID}}": "公開中の注文 #{{orderID}}",
"Add Robot": "ロボットを追加",
"Add a new Robot": "新しいロボットを追加",
"Building...": "生成中...",
"Delete Garage": "ガレージを空にする",
"Delete Robot": "Delete Robot",
"Last order #{{orderID}}": "直前の注文 #{{orderID}}",
"Logout": "ログアウト",
"Looking for orders!": "Looking for orders!",
"No existing orders found": "No existing orders found",
"Recovery": "復元",
"Reusing trading identity degrades your privacy against other users, coordinators and observers.": "同一の身元を再利用することは、他のユーザー、管理者、観察者に対してプライバシーを弱める可能性があります。",
"Robot Garage": "ロボットガレージ",
"Store your token safely": "安全にトークンを保存してください。",
"Welcome back!": "またまたこんにちは!",
"#10": "Phrases in basic/RobotPage/TokenInput.tsx",
"#9": "Phrases in basic/RobotPage/TokenInput.tsx",
"Copied!": "コピー完了!",
"#11": "Phrases in basic/RobotPage/Welcome.tsx",
"Not enough entropy, make it more complex": "Not enough entropy, make it more complex",
"The token is too short": "The token is too short",
"#10": "Phrases in basic/RobotPage/Welcome.tsx",
"A Simple and Private LN P2P Exchange": "シンプルでプライベートなライトニングP2P取引所",
"Create a new robot and learn to use RoboSats": "新しいロボットを構築して、RoboSatsの使い方を学びます",
"Fast Generate Robot": "ロボットを高速生成",
"Recover an existing robot using your token": "トークンを使用して既存のロボットを復元します",
"Recovery": "復元",
"Start": "スタート",
"#12": "Phrases in basic/RobotPage/index.tsx",
"#11": "Phrases in basic/RobotPage/index.tsx",
"Connecting to TOR": "Torネットワークに接続中",
"Connection encrypted and anonymized using TOR.": "接続はTORを使って暗号化され、匿名化されています。",
"Not enough entropy, make it more complex": "Not enough entropy, make it more complex",
"The token is too short": "The token is too short",
"This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.": "これにより最大限のプライバシーが確保されますが、アプリの動作が遅いと感じることがあります。接続が切断された場合は、アプリを再起動してください。",
"#13": "Phrases in basic/SettingsPage/index.tsx",
"#12": "Phrases in basic/SettingsPage/index.tsx",
"Add": "Add",
"Alias": "Alias",
"Alias already exists": "Alias already exists",
"Invalid Onion URL": "Invalid Onion URL",
"URL": "URL",
"#14": "Phrases in components/BookTable/BookControl.tsx",
"#13": "Phrases in components/BookTable/BookControl.tsx",
"ANY": "すべて",
"Buy": "購入",
"DESTINATION": "方向",
@ -96,7 +90,7 @@
"and use": "そして使用するのは",
"hosted by": "hosted by",
"pay with": "支払い方法は:",
"#15": "Phrases in components/BookTable/index.tsx",
"#14": "Phrases in components/BookTable/index.tsx",
"Add filter": "フィルタを追加",
"Amount": "量",
"An error occurred.": "エラーが発生しました。",
@ -131,6 +125,7 @@
"Premium": "プレミアム",
"Price": "価格",
"Reorder column": "列の並び替え",
"Robot": "ロボット",
"Sats now": "現在のSats",
"Select columns": "列を選択",
"Show all": "すべて表示",
@ -160,15 +155,15 @@
"starts with": "〜で始まる",
"true": "True",
"yes": "はい",
"#16": "Phrases in components/Charts/DepthChart/index.tsx",
"#17": "Phrases in components/Charts/MapChart/index.tsx",
"#15": "Phrases in components/Charts/DepthChart/index.tsx",
"#16": "Phrases in components/Charts/MapChart/index.tsx",
"Accept": "Accept",
"By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.": "By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.",
"Close": "閉じる",
"Download high resolution map?": "Download high resolution map?",
"Show tiles": "Show tiles",
"#18": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
"#19": "Phrases in components/Dialogs/About.tsx",
"#17": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
"#18": "Phrases in components/Dialogs/About.tsx",
"(GitHub).": "GitHub。 ",
"(Telegram)": "(Telegram)",
". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.": ". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.",
@ -208,7 +203,7 @@
"You can find a step-by-step description of the trade pipeline in ": "取引プロセスのステップバイステップの説明は、以下のリンク先でご確認いただけます。",
"Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.": "Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.",
"Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.": "Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.",
"#20": "Phrases in components/Dialogs/AuditPGP.tsx",
"#19": "Phrases in components/Dialogs/AuditPGP.tsx",
"Go back": "戻る",
"Keys": "鍵",
"Learn how to verify": "確認方法を学ぶ",
@ -224,13 +219,13 @@
"Your peer PGP public key. You use it to encrypt messages only he can read and to verify your peer signed the incoming messages.": "これはあなたの取引相手のPGP公開鍵です。あなたは相手専用の暗号化メッセージを送信するために使用し、また受信したメッセージが相手によって署名されたものであることを確認するためにも使用します。",
"Your private key passphrase (keep secure!)": "あなたの秘密鍵のパスフレーズ(安全に保ってください!)",
"Your public key": "あなたの公開鍵",
"#21": "Phrases in components/Dialogs/Client.tsx",
"#20": "Phrases in components/Dialogs/Client.tsx",
"... somewhere on Earth!": "......地球上のどっかから!",
"Client info": "Client info",
"Made with": "と",
"RoboSats client version": "RoboSats client version",
"and": "を込めて",
"#22": "Phrases in components/Dialogs/Community.tsx",
"#21": "Phrases in components/Dialogs/Community.tsx",
"Community": "コミュニティー",
"Follow RoboSats in Nostr": "Follow RoboSats in Nostr",
"Follow RoboSats in X": "Follow RoboSats in X",
@ -245,7 +240,7 @@
"Tell us about a new feature or a bug": "新しい機能やバグについて教えてください",
"We are abandoning Telegram! Our old TG groups": "We are abandoning Telegram! Our old TG groups",
"X Official Account": "X Official Account",
"#23": "Phrases in components/Dialogs/Coordinator.tsx",
"#22": "Phrases in components/Dialogs/Coordinator.tsx",
"...Opening on Nostr gateway. Pubkey copied!": "...Opening on Nostr gateway. Pubkey copied!",
"24h contracted volume": "24時間の契約量",
"24h non-KYC bitcoin premium": "24h non-KYC bitcoin premium",
@ -294,29 +289,34 @@
"Website": "Website",
"X": "X",
"Zaps voluntarily for development": "Zaps voluntarily for development",
"#24": "Phrases in components/Dialogs/EnableTelegram.tsx",
"#23": "Phrases in components/Dialogs/EnableTelegram.tsx",
"Browser": "ブラウザー",
"Enable": "有効化",
"Enable TG Notifications": "テレグラム通知を有効にする",
"You will be taken to a conversation with RoboSats telegram bot. Simply open the chat and press Start. Note that by enabling telegram notifications you might lower your level of anonymity.": "RoboSatsのテレグラムボットとのチャットに移動します。チャットを開いて「Start」を押してください。テレグラム通知を有効にすることで匿名レベルが低下する可能性があることに注意してください。",
"#25": "Phrases in components/Dialogs/Exchange.tsx",
"#24": "Phrases in components/Dialogs/Exchange.tsx",
"Enabled RoboSats coordinators": "Enabled RoboSats coordinators",
"Exchange Summary": "Exchange Summary",
"Online RoboSats coordinators": "Online RoboSats coordinators",
"#26": "Phrases in components/Dialogs/F2fMap.tsx",
"#25": "Phrases in components/Dialogs/F2fMap.tsx",
"Choose a location": "Choose a location",
"Save": "Save",
"#27": "Phrases in components/Dialogs/Learn.tsx",
"#26": "Phrases in components/Dialogs/Learn.tsx",
"Back": "戻る",
"You are about to visit Learn RoboSats. It hosts tutorials and documentation to help you learn how to use RoboSats and understand how it works.": "「Learn RoboSats」学習ページにアクセスしようとしています。RoboSatsの使い方を学び、動作原理を理解するためのチュートリアルとドキュメントが提供されています。",
"#28": "Phrases in components/Dialogs/NoRobot.tsx",
"#27": "Phrases in components/Dialogs/NoRobot.tsx",
"Generate Robot": "ロボットを生成する",
"Generate a robot avatar first. Then create your own order.": "最初にロボットアバターを生成してください。次に自分のオーダーを作成してください。",
"You do not have a robot avatar": "ロボットのアバターがありません",
"#29": "Phrases in components/Dialogs/Profile.tsx",
"#28": "Phrases in components/Dialogs/Profile.tsx",
"Coordinators that know your robot:": "Coordinators that know your robot:",
"Looking for your robot!": "Looking for your robot!",
"Your Robot": "Your Robot",
"#29": "Phrases in components/Dialogs/Recovery.tsx",
"Enter your robot token to re-build your robot and gain access to its trades.": "取引にアクセスするために、ロボットのトークンを入力してロボットを再生成してください。",
"Paste token here": "ここにトークンを貼り付けてください",
"Recover": "復元する",
"Robot recovery": "ロボットの復元",
"#30": "Phrases in components/Dialogs/StoreToken.tsx",
"Back it up!": "バックアップを取ってください!",
"Done": "完了",

View File

@ -15,10 +15,10 @@
"RoboSats information": "RoboSats information",
"client for nerds": "client for nerds",
"#5": "Phrases in basic/NavBar/NavBar.tsx",
"Garage": "Garage",
"More": "More",
"Offers": "Offers",
"Order": "Zamówienie",
"Robot": "Robot",
"Settings": "Settings",
"#6": "Phrases in basic/OrderPage/index.tsx",
"Contract": "Kontrakt",
@ -40,47 +40,41 @@
"You can also add your own random characters into the token or": "You can also add your own random characters into the token or",
"or visit the robot school for documentation.": "or visit the robot school for documentation.",
"roll again": "roll again",
"#8": "Phrases in basic/RobotPage/Recovery.tsx",
"Enter your robot token to re-build your robot and gain access to its trades.": "Enter your robot token to re-build your robot and gain access to its trades.",
"Paste token here": "Paste token here",
"Recover": "Recover",
"Robot recovery": "Robot recovery",
"#9": "Phrases in basic/RobotPage/RobotProfile.tsx",
"#8": "Phrases in basic/RobotPage/RobotProfile.tsx",
"Active order #{{orderID}}": "Active order #{{orderID}}",
"Add Robot": "Add Robot",
"Add a new Robot": "Add a new Robot",
"Building...": "Building...",
"Delete Garage": "Delete Garage",
"Delete Robot": "Delete Robot",
"Last order #{{orderID}}": "Last order #{{orderID}}",
"Logout": "Logout",
"Looking for orders!": "Looking for orders!",
"No existing orders found": "No existing orders found",
"Recovery": "Recovery",
"Reusing trading identity degrades your privacy against other users, coordinators and observers.": "Reusing trading identity degrades your privacy against other users, coordinators and observers.",
"Robot Garage": "Robot Garage",
"Store your token safely": "Przechowuj swój token bezpiecznie",
"Welcome back!": "Welcome back!",
"#10": "Phrases in basic/RobotPage/TokenInput.tsx",
"#9": "Phrases in basic/RobotPage/TokenInput.tsx",
"Copied!": "Skopiowane!",
"#11": "Phrases in basic/RobotPage/Welcome.tsx",
"Not enough entropy, make it more complex": "Not enough entropy, make it more complex",
"The token is too short": "The token is too short",
"#10": "Phrases in basic/RobotPage/Welcome.tsx",
"A Simple and Private LN P2P Exchange": "A Simple and Private LN P2P Exchange",
"Create a new robot and learn to use RoboSats": "Create a new robot and learn to use RoboSats",
"Fast Generate Robot": "Fast Generate Robot",
"Recover an existing robot using your token": "Recover an existing robot using your token",
"Recovery": "Recovery",
"Start": "Start",
"#12": "Phrases in basic/RobotPage/index.tsx",
"#11": "Phrases in basic/RobotPage/index.tsx",
"Connecting to TOR": "Connecting to TOR",
"Connection encrypted and anonymized using TOR.": "Connection encrypted and anonymized using TOR.",
"Not enough entropy, make it more complex": "Not enough entropy, make it more complex",
"The token is too short": "The token is too short",
"This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.": "This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.",
"#13": "Phrases in basic/SettingsPage/index.tsx",
"#12": "Phrases in basic/SettingsPage/index.tsx",
"Add": "Add",
"Alias": "Alias",
"Alias already exists": "Alias already exists",
"Invalid Onion URL": "Invalid Onion URL",
"URL": "URL",
"#14": "Phrases in components/BookTable/BookControl.tsx",
"#13": "Phrases in components/BookTable/BookControl.tsx",
"ANY": "KAŻDY",
"Buy": "Kupić",
"DESTINATION": "DESTINATION",
@ -96,7 +90,7 @@
"and use": "i użyć",
"hosted by": "hosted by",
"pay with": "pay with",
"#15": "Phrases in components/BookTable/index.tsx",
"#14": "Phrases in components/BookTable/index.tsx",
"Add filter": "Add filter",
"Amount": "Ilość",
"An error occurred.": "An error occurred.",
@ -131,6 +125,7 @@
"Premium": "Premia",
"Price": "Cena",
"Reorder column": "Reorder column",
"Robot": "Robot",
"Sats now": "Sats now",
"Select columns": "Select columns",
"Show all": "Show all",
@ -160,15 +155,15 @@
"starts with": "starts with",
"true": "true",
"yes": "yes",
"#16": "Phrases in components/Charts/DepthChart/index.tsx",
"#17": "Phrases in components/Charts/MapChart/index.tsx",
"#15": "Phrases in components/Charts/DepthChart/index.tsx",
"#16": "Phrases in components/Charts/MapChart/index.tsx",
"Accept": "Accept",
"By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.": "By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.",
"Close": "Blisko",
"Download high resolution map?": "Download high resolution map?",
"Show tiles": "Show tiles",
"#18": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
"#19": "Phrases in components/Dialogs/About.tsx",
"#17": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
"#18": "Phrases in components/Dialogs/About.tsx",
"(GitHub).": "(GitHub).",
"(Telegram)": "(Telegram)",
". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.": ". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.",
@ -208,7 +203,7 @@
"You can find a step-by-step description of the trade pipeline in ": "Szczegółowy opis rurociągu handlowego znajdziesz w ",
"Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.": "Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.",
"Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.": "Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.",
"#20": "Phrases in components/Dialogs/AuditPGP.tsx",
"#19": "Phrases in components/Dialogs/AuditPGP.tsx",
"Go back": "Wróć",
"Keys": "Keys",
"Learn how to verify": "Learn how to verify",
@ -224,13 +219,13 @@
"Your peer PGP public key. You use it to encrypt messages only he can read and to verify your peer signed the incoming messages.": "Your peer PGP public key. You use it to encrypt messages only he can read and to verify your peer signed the incoming messages.",
"Your private key passphrase (keep secure!)": "Your private key passphrase (keep secure!)",
"Your public key": "Your public key",
"#21": "Phrases in components/Dialogs/Client.tsx",
"#20": "Phrases in components/Dialogs/Client.tsx",
"... somewhere on Earth!": "... gdzieś na Ziemi!",
"Client info": "Client info",
"Made with": "Wykonana z",
"RoboSats client version": "RoboSats client version",
"and": "i",
"#22": "Phrases in components/Dialogs/Community.tsx",
"#21": "Phrases in components/Dialogs/Community.tsx",
"Community": "Społeczność",
"Follow RoboSats in Nostr": "Follow RoboSats in Nostr",
"Follow RoboSats in X": "Follow RoboSats in X",
@ -245,7 +240,7 @@
"Tell us about a new feature or a bug": "Poinformuj nas o nowej funkcji lub błędzie",
"We are abandoning Telegram! Our old TG groups": "We are abandoning Telegram! Our old TG groups",
"X Official Account": "X Official Account",
"#23": "Phrases in components/Dialogs/Coordinator.tsx",
"#22": "Phrases in components/Dialogs/Coordinator.tsx",
"...Opening on Nostr gateway. Pubkey copied!": "...Opening on Nostr gateway. Pubkey copied!",
"24h contracted volume": "Zakontraktowana objętość 24h",
"24h non-KYC bitcoin premium": "24h non-KYC bitcoin premium",
@ -294,29 +289,34 @@
"Website": "Website",
"X": "X",
"Zaps voluntarily for development": "Zaps voluntarily for development",
"#24": "Phrases in components/Dialogs/EnableTelegram.tsx",
"#23": "Phrases in components/Dialogs/EnableTelegram.tsx",
"Browser": "Browser",
"Enable": "Włączyć",
"Enable TG Notifications": "Włącz powiadomienia TG",
"You will be taken to a conversation with RoboSats telegram bot. Simply open the chat and press Start. Note that by enabling telegram notifications you might lower your level of anonymity.": "Zostaniesz przeniesiony do rozmowy z botem telegramowym RoboSats. Po prostu otwórz czat i naciśnij Start. Pamiętaj, że włączenie powiadomień telegramów może obniżyć poziom anonimowości.",
"#25": "Phrases in components/Dialogs/Exchange.tsx",
"#24": "Phrases in components/Dialogs/Exchange.tsx",
"Enabled RoboSats coordinators": "Enabled RoboSats coordinators",
"Exchange Summary": "Exchange Summary",
"Online RoboSats coordinators": "Online RoboSats coordinators",
"#26": "Phrases in components/Dialogs/F2fMap.tsx",
"#25": "Phrases in components/Dialogs/F2fMap.tsx",
"Choose a location": "Choose a location",
"Save": "Save",
"#27": "Phrases in components/Dialogs/Learn.tsx",
"#26": "Phrases in components/Dialogs/Learn.tsx",
"Back": "Z powrotem",
"You are about to visit Learn RoboSats. It hosts tutorials and documentation to help you learn how to use RoboSats and understand how it works.": "You are about to visit Learn RoboSats. It hosts tutorials and documentation to help you learn how to use RoboSats and understand how it works.",
"#28": "Phrases in components/Dialogs/NoRobot.tsx",
"#27": "Phrases in components/Dialogs/NoRobot.tsx",
"Generate Robot": "Generuj robota",
"Generate a robot avatar first. Then create your own order.": "Generate a robot avatar first. Then create your own order.",
"You do not have a robot avatar": "You do not have a robot avatar",
"#29": "Phrases in components/Dialogs/Profile.tsx",
"#28": "Phrases in components/Dialogs/Profile.tsx",
"Coordinators that know your robot:": "Coordinators that know your robot:",
"Looking for your robot!": "Looking for your robot!",
"Your Robot": "Your Robot",
"#29": "Phrases in components/Dialogs/Recovery.tsx",
"Enter your robot token to re-build your robot and gain access to its trades.": "Enter your robot token to re-build your robot and gain access to its trades.",
"Paste token here": "Paste token here",
"Recover": "Recover",
"Robot recovery": "Robot recovery",
"#30": "Phrases in components/Dialogs/StoreToken.tsx",
"Back it up!": "Utwórz kopię zapasową!",
"Done": "Done",

View File

@ -15,10 +15,10 @@
"RoboSats information": "Informações do RoboSats",
"client for nerds": "client for nerds",
"#5": "Phrases in basic/NavBar/NavBar.tsx",
"Garage": "Garage",
"More": "Mais",
"Offers": "Ofertas",
"Order": "Ordem",
"Robot": "Robô",
"Settings": "Ajustes",
"#6": "Phrases in basic/OrderPage/index.tsx",
"Contract": "Contrato",
@ -40,47 +40,41 @@
"You can also add your own random characters into the token or": "Você também pode adicionar seus próprios caracteres aleatórios ao token ou",
"or visit the robot school for documentation.": "ou visite a escola de robôs para documentação.",
"roll again": "Girar novamente",
"#8": "Phrases in basic/RobotPage/Recovery.tsx",
"Enter your robot token to re-build your robot and gain access to its trades.": "Entre com seu token de robô para reconstruir seu robô e ganhar acesso às suas negociações.",
"Paste token here": "Cole o token aqui",
"Recover": "Recuperar",
"Robot recovery": "Recuperação de robô",
"#9": "Phrases in basic/RobotPage/RobotProfile.tsx",
"#8": "Phrases in basic/RobotPage/RobotProfile.tsx",
"Active order #{{orderID}}": "Ordem ativa #{{orderID}}",
"Add Robot": "Adicionar Robô",
"Add a new Robot": "Adicionar um novo Robô",
"Building...": "Criando...",
"Delete Garage": "Deletar Garagem",
"Delete Robot": "Delete Robot",
"Last order #{{orderID}}": "Última ordem #{{orderID}}",
"Logout": "Sair",
"Looking for orders!": "Procurando por ordens!",
"No existing orders found": "Nenhuma ordem existente encontrada",
"Recovery": "Recuperação",
"Reusing trading identity degrades your privacy against other users, coordinators and observers.": "Reutilizar a identidade de negociação degrada sua privacidade contra outros usuários, coordenadores e observadores.",
"Robot Garage": "Garagem de Robôs",
"Store your token safely": "Guarde seu token de forma segura",
"Welcome back!": "Bem-vindo de volta!",
"#10": "Phrases in basic/RobotPage/TokenInput.tsx",
"#9": "Phrases in basic/RobotPage/TokenInput.tsx",
"Copied!": "Copiado!",
"#11": "Phrases in basic/RobotPage/Welcome.tsx",
"Not enough entropy, make it more complex": "Entropia insuficiente, torne-a mais complexa",
"The token is too short": "O token é muito curto",
"#10": "Phrases in basic/RobotPage/Welcome.tsx",
"A Simple and Private LN P2P Exchange": "Uma Exchange P2P LN Simples e Privada",
"Create a new robot and learn to use RoboSats": "Crie um novo robô e aprenda a usar o RoboSats",
"Fast Generate Robot": "Gere um robô rapidamente",
"Recover an existing robot using your token": "Recupere um robô existente usando seu token",
"Recovery": "Recuperação",
"Start": "Iniciar",
"#12": "Phrases in basic/RobotPage/index.tsx",
"#11": "Phrases in basic/RobotPage/index.tsx",
"Connecting to TOR": "Conectando ao TOR",
"Connection encrypted and anonymized using TOR.": "Conexão criptografada e anonimizada usando TOR.",
"Not enough entropy, make it more complex": "Entropia insuficiente, torne-a mais complexa",
"The token is too short": "O token é muito curto",
"This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.": "Isso garante privacidade máxima, entretanto, você pode sentir que o aplicativo fique lento. Se a conexão for perdida, reinicie-o.",
"#13": "Phrases in basic/SettingsPage/index.tsx",
"#12": "Phrases in basic/SettingsPage/index.tsx",
"Add": "Add",
"Alias": "Alias",
"Alias already exists": "Alias already exists",
"Invalid Onion URL": "Invalid Onion URL",
"URL": "URL",
"#14": "Phrases in components/BookTable/BookControl.tsx",
"#13": "Phrases in components/BookTable/BookControl.tsx",
"ANY": "QUALQUER",
"Buy": "Comprar",
"DESTINATION": "DESTINATION",
@ -96,7 +90,7 @@
"and use": "e utilizar",
"hosted by": "hospedado por",
"pay with": "pagar com",
"#15": "Phrases in components/BookTable/index.tsx",
"#14": "Phrases in components/BookTable/index.tsx",
"Add filter": "Adicionar filtro",
"Amount": "Quantidade",
"An error occurred.": "Ocorreu um erro.",
@ -131,6 +125,7 @@
"Premium": "Prêmio",
"Price": "Preço",
"Reorder column": "Reorder column",
"Robot": "Robô",
"Sats now": "Sats now",
"Select columns": "Select columns",
"Show all": "Show all",
@ -160,15 +155,15 @@
"starts with": "starts with",
"true": "true",
"yes": "yes",
"#16": "Phrases in components/Charts/DepthChart/index.tsx",
"#17": "Phrases in components/Charts/MapChart/index.tsx",
"#15": "Phrases in components/Charts/DepthChart/index.tsx",
"#16": "Phrases in components/Charts/MapChart/index.tsx",
"Accept": "Accept",
"By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.": "By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.",
"Close": "Fechar",
"Download high resolution map?": "Baixar mapa em alta resolução?",
"Show tiles": "Show tiles",
"#18": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
"#19": "Phrases in components/Dialogs/About.tsx",
"#17": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
"#18": "Phrases in components/Dialogs/About.tsx",
"(GitHub).": "(GitHub).",
"(Telegram)": "(Telegram)",
". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.": ". os desenvolvedores do RoboSats nunca entrarão em contato com você. Os desenvolvedores ou os coordenadores definitivamente nunca pedirão seu token de robô.",
@ -208,7 +203,7 @@
"You can find a step-by-step description of the trade pipeline in ": "Você pode encontrar uma descrição passo a passo do pipeline comercial em ",
"Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.": "Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.",
"Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.": "Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.",
"#20": "Phrases in components/Dialogs/AuditPGP.tsx",
"#19": "Phrases in components/Dialogs/AuditPGP.tsx",
"Go back": "Voltar",
"Keys": "Chaves",
"Learn how to verify": "Saiba como verificar",
@ -224,13 +219,13 @@
"Your peer PGP public key. You use it to encrypt messages only he can read and to verify your peer signed the incoming messages.": "Sua chave pública PGP de mesmo nível. Você o usa para criptografar mensagens que só ele pode ler e para verificar se seu par assinou as mensagens recebidas.",
"Your private key passphrase (keep secure!)": "Sua senha de chave privada (mantenha a segurança!)",
"Your public key": "Sua chave pública",
"#21": "Phrases in components/Dialogs/Client.tsx",
"#20": "Phrases in components/Dialogs/Client.tsx",
"... somewhere on Earth!": "... alguém na terra!",
"Client info": "Informações do cliente",
"Made with": "Feito com",
"RoboSats client version": "Versão do cliente RoboSats",
"and": "e",
"#22": "Phrases in components/Dialogs/Community.tsx",
"#21": "Phrases in components/Dialogs/Community.tsx",
"Community": "Comunidade",
"Follow RoboSats in Nostr": "Siga RoboSats no Nostr",
"Follow RoboSats in X": "Sigam RoboSats no X",
@ -245,7 +240,7 @@
"Tell us about a new feature or a bug": "Conte-nos sobre um novo recurso ou um bug",
"We are abandoning Telegram! Our old TG groups": "We are abandoning Telegram! Our old TG groups",
"X Official Account": "X Official Account",
"#23": "Phrases in components/Dialogs/Coordinator.tsx",
"#22": "Phrases in components/Dialogs/Coordinator.tsx",
"...Opening on Nostr gateway. Pubkey copied!": "...Opening on Nostr gateway. Pubkey copied!",
"24h contracted volume": "Volume contratado em 24h",
"24h non-KYC bitcoin premium": "Prêmio de bitcoin sem KYC em 24h",
@ -294,29 +289,34 @@
"Website": "Website",
"X": "X",
"Zaps voluntarily for development": "Zaps voluntarily for development",
"#24": "Phrases in components/Dialogs/EnableTelegram.tsx",
"#23": "Phrases in components/Dialogs/EnableTelegram.tsx",
"Browser": "Browser",
"Enable": "Ativar",
"Enable TG Notifications": "Habilitar notificações do TG",
"You will be taken to a conversation with RoboSats telegram bot. Simply open the chat and press Start. Note that by enabling telegram notifications you might lower your level of anonymity.": "Você será levado a uma conversa com o bot do Telegram RoboSats. Basta abrir o bate-papo e pressionar Iniciar. Observe que, ao ativar as notificações de Telegram, você pode diminuir seu nível de anonimato.",
"#25": "Phrases in components/Dialogs/Exchange.tsx",
"#24": "Phrases in components/Dialogs/Exchange.tsx",
"Enabled RoboSats coordinators": "Enabled RoboSats coordinators",
"Exchange Summary": "Exchange Summary",
"Online RoboSats coordinators": "Online RoboSats coordinators",
"#26": "Phrases in components/Dialogs/F2fMap.tsx",
"#25": "Phrases in components/Dialogs/F2fMap.tsx",
"Choose a location": "Choose a location",
"Save": "Save",
"#27": "Phrases in components/Dialogs/Learn.tsx",
"#26": "Phrases in components/Dialogs/Learn.tsx",
"Back": "Voltar",
"You are about to visit Learn RoboSats. It hosts tutorials and documentation to help you learn how to use RoboSats and understand how it works.": "Você está prestes a visitar o \"Learn RoboSats\"(Aprender sobre o RoboSats). Ele hospeda tutoriais e documentação para ajudá-lo a aprender como usar o RoboSats e entender como funciona.",
"#28": "Phrases in components/Dialogs/NoRobot.tsx",
"#27": "Phrases in components/Dialogs/NoRobot.tsx",
"Generate Robot": "Gerar robô",
"Generate a robot avatar first. Then create your own order.": "Gerar um avatar de robô primeiro. Em seguida, crie sua própria ordem.",
"You do not have a robot avatar": "Você não tem um avatar de robô",
"#29": "Phrases in components/Dialogs/Profile.tsx",
"#28": "Phrases in components/Dialogs/Profile.tsx",
"Coordinators that know your robot:": "Coordinators that know your robot:",
"Looking for your robot!": "Procurando pelo seu robô!",
"Your Robot": "Seu Robô",
"#29": "Phrases in components/Dialogs/Recovery.tsx",
"Enter your robot token to re-build your robot and gain access to its trades.": "Entre com seu token de robô para reconstruir seu robô e ganhar acesso às suas negociações.",
"Paste token here": "Cole o token aqui",
"Recover": "Recuperar",
"Robot recovery": "Recuperação de robô",
"#30": "Phrases in components/Dialogs/StoreToken.tsx",
"Back it up!": "Apóia-la!",
"Done": "Feito",

View File

@ -15,10 +15,10 @@
"RoboSats information": "Информация о RoboSats",
"client for nerds": "client for nerds",
"#5": "Phrases in basic/NavBar/NavBar.tsx",
"Garage": "Garage",
"More": "Больше",
"Offers": "Оферы",
"Order": "Ордер",
"Robot": "Робот",
"Settings": "Настройки",
"#6": "Phrases in basic/OrderPage/index.tsx",
"Contract": "Контракт",
@ -40,47 +40,41 @@
"You can also add your own random characters into the token or": "Вы также можете добавить в токен свои собственные случайные символы или",
"or visit the robot school for documentation.": "или посетить школу роботов для документации.",
"roll again": "ещё раз",
"#8": "Phrases in basic/RobotPage/Recovery.tsx",
"Enter your robot token to re-build your robot and gain access to its trades.": "Введите токен своего робота, чтобы восстанавить своего робота и получить доступ к его сделкам.",
"Paste token here": "Вставте токен сюда",
"Recover": "Восстановить",
"Robot recovery": "Восстановление робота",
"#9": "Phrases in basic/RobotPage/RobotProfile.tsx",
"#8": "Phrases in basic/RobotPage/RobotProfile.tsx",
"Active order #{{orderID}}": "Активный ордер #{{orderID}}",
"Add Robot": "Добавить робота",
"Add a new Robot": "Добавить нового робота",
"Building...": "Строим...",
"Delete Garage": "Удалить гараж",
"Delete Robot": "Delete Robot",
"Last order #{{orderID}}": "Последний ордер #{{orderID}}",
"Logout": "Выйти",
"Looking for orders!": "Looking for orders!",
"No existing orders found": "No existing orders found",
"Recovery": "Восстановление",
"Reusing trading identity degrades your privacy against other users, coordinators and observers.": "Повторное использование торговых данных ухудшает вашу конфиденциальность по отношению к другим пользователям, координаторам и наблюдателям.",
"Robot Garage": "Гараж роботов",
"Store your token safely": "Храните Ваш токен в безопасности",
"Welcome back!": "С возвращением!",
"#10": "Phrases in basic/RobotPage/TokenInput.tsx",
"#9": "Phrases in basic/RobotPage/TokenInput.tsx",
"Copied!": "Скопировано!",
"#11": "Phrases in basic/RobotPage/Welcome.tsx",
"Not enough entropy, make it more complex": "Недостаточно энтропии, усложните",
"The token is too short": "Токен слишком короткий",
"#10": "Phrases in basic/RobotPage/Welcome.tsx",
"A Simple and Private LN P2P Exchange": "Простой и приватный LN P2P обменник",
"Create a new robot and learn to use RoboSats": "Создайте нового робота и научитесь использовать RoboSats",
"Fast Generate Robot": "Быстрое создание робота",
"Recover an existing robot using your token": "Восстановить существующего робота с помощью вашего токена",
"Recovery": "Восстановление",
"Start": "Старт",
"#12": "Phrases in basic/RobotPage/index.tsx",
"#11": "Phrases in basic/RobotPage/index.tsx",
"Connecting to TOR": "Подключение к TOR",
"Connection encrypted and anonymized using TOR.": "Соединение зашифровано и анонимизировано с помощью TOR.",
"Not enough entropy, make it more complex": "Недостаточно энтропии, усложните",
"The token is too short": "Токен слишком короткий",
"This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.": "Это обеспечивает максимальную конфиденциальность, однако вы можете почувствовать, что приложение работает медленно. Если соединение потеряно, перезапустите приложение.",
"#13": "Phrases in basic/SettingsPage/index.tsx",
"#12": "Phrases in basic/SettingsPage/index.tsx",
"Add": "Add",
"Alias": "Alias",
"Alias already exists": "Alias already exists",
"Invalid Onion URL": "Invalid Onion URL",
"URL": "URL",
"#14": "Phrases in components/BookTable/BookControl.tsx",
"#13": "Phrases in components/BookTable/BookControl.tsx",
"ANY": "Любой",
"Buy": "Купить",
"DESTINATION": "МЕСТО НАЗНАЧЕНИЯ",
@ -96,7 +90,7 @@
"and use": "и использовать",
"hosted by": "hosted by",
"pay with": "оплатить",
"#15": "Phrases in components/BookTable/index.tsx",
"#14": "Phrases in components/BookTable/index.tsx",
"Add filter": "Добавить фильтр",
"Amount": "Сумма",
"An error occurred.": "Произошла ошибка.",
@ -131,6 +125,7 @@
"Premium": "Наценка",
"Price": "Цена",
"Reorder column": "Изменить порядок столбца",
"Robot": "Робот",
"Sats now": "Сатох сейчас ",
"Select columns": "Выбрать столбцы",
"Show all": "Показать все",
@ -160,15 +155,15 @@
"starts with": "начинается с",
"true": "верный",
"yes": "да",
"#16": "Phrases in components/Charts/DepthChart/index.tsx",
"#17": "Phrases in components/Charts/MapChart/index.tsx",
"#15": "Phrases in components/Charts/DepthChart/index.tsx",
"#16": "Phrases in components/Charts/MapChart/index.tsx",
"Accept": "Принять",
"By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.": "Поступая таким образом вы будете получать фрагменты карты от стороннего поставщика. В зависимости от ваших настроек личная информация может попасть на серверы за пределами федерации RoboSats.",
"Close": "Закрыть",
"Download high resolution map?": "Загрузить карту в высоком разрешении?",
"Show tiles": "Показать карту",
"#18": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
"#19": "Phrases in components/Dialogs/About.tsx",
"#17": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
"#18": "Phrases in components/Dialogs/About.tsx",
"(GitHub).": "(GitHub).",
"(Telegram)": "(Telegram)",
". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.": ". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.",
@ -208,7 +203,7 @@
"You can find a step-by-step description of the trade pipeline in ": "Вы можете найти пошаговое описание этапов сделки в ",
"Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.": "Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.",
"Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.": "Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.",
"#20": "Phrases in components/Dialogs/AuditPGP.tsx",
"#19": "Phrases in components/Dialogs/AuditPGP.tsx",
"Go back": "Вернуться",
"Keys": "Ключи",
"Learn how to verify": "Узнайте, как проверить",
@ -224,13 +219,13 @@
"Your peer PGP public key. You use it to encrypt messages only he can read and to verify your peer signed the incoming messages.": "Публичный ключ PGP Вашего партнёра. Вы используете его для шифрования сообщений, которые может читать только он, и для проверки того, что Ваш партнёр подписал входящие сообщения.",
"Your private key passphrase (keep secure!)": "Парольная фраза Вашего приватного ключа (храните в безопасности!)",
"Your public key": "Ваш публичный ключ",
"#21": "Phrases in components/Dialogs/Client.tsx",
"#20": "Phrases in components/Dialogs/Client.tsx",
"... somewhere on Earth!": "... где-то на земле!",
"Client info": "Client info",
"Made with": "Сделано с",
"RoboSats client version": "RoboSats client version",
"and": "и",
"#22": "Phrases in components/Dialogs/Community.tsx",
"#21": "Phrases in components/Dialogs/Community.tsx",
"Community": "Сообщество",
"Follow RoboSats in Nostr": одпиcаться на RoboSats в Nostr",
"Follow RoboSats in X": "Follow RoboSats in X",
@ -245,7 +240,7 @@
"Tell us about a new feature or a bug": "Расскажите нам о новой функции или ошибке",
"We are abandoning Telegram! Our old TG groups": "Мы отказываемся от Telegram! Наши старые группы ТГ",
"X Official Account": "X Official Account",
"#23": "Phrases in components/Dialogs/Coordinator.tsx",
"#22": "Phrases in components/Dialogs/Coordinator.tsx",
"...Opening on Nostr gateway. Pubkey copied!": "...Opening on Nostr gateway. Pubkey copied!",
"24h contracted volume": "Объём контрактов за 24 часа",
"24h non-KYC bitcoin premium": "24h non-KYC bitcoin premium",
@ -294,29 +289,34 @@
"Website": "Website",
"X": "X",
"Zaps voluntarily for development": "Zaps voluntarily for development",
"#24": "Phrases in components/Dialogs/EnableTelegram.tsx",
"#23": "Phrases in components/Dialogs/EnableTelegram.tsx",
"Browser": "Браузер",
"Enable": "Включить",
"Enable TG Notifications": "Включить уведомления TG",
"You will be taken to a conversation with RoboSats telegram bot. Simply open the chat and press Start. Note that by enabling telegram notifications you might lower your level of anonymity.": "Вы перейдёте к разговору с Telegram ботом RoboSats. Просто откройте чат и нажмите Старт. Обратите внимание, что включив уведомления Telegram, Вы можете снизить уровень анонимности.",
"#25": "Phrases in components/Dialogs/Exchange.tsx",
"#24": "Phrases in components/Dialogs/Exchange.tsx",
"Enabled RoboSats coordinators": "Enabled RoboSats coordinators",
"Exchange Summary": "Exchange Summary",
"Online RoboSats coordinators": "Online RoboSats coordinators",
"#26": "Phrases in components/Dialogs/F2fMap.tsx",
"#25": "Phrases in components/Dialogs/F2fMap.tsx",
"Choose a location": "Выберите местоположение",
"Save": "Сохранить",
"#27": "Phrases in components/Dialogs/Learn.tsx",
"#26": "Phrases in components/Dialogs/Learn.tsx",
"Back": "Назад",
"You are about to visit Learn RoboSats. It hosts tutorials and documentation to help you learn how to use RoboSats and understand how it works.": "Вы собираетесь посетить Learn RoboSats. На нём размещены учебные пособия и документация, которые помогут Вам научиться использовать RoboSats и понять, как он работает.",
"#28": "Phrases in components/Dialogs/NoRobot.tsx",
"#27": "Phrases in components/Dialogs/NoRobot.tsx",
"Generate Robot": "Создать Робота",
"Generate a robot avatar first. Then create your own order.": "Сначала создайте аватар робота. Затем создайте свой ордер.",
"You do not have a robot avatar": "У Вас нет аватара робота",
"#29": "Phrases in components/Dialogs/Profile.tsx",
"#28": "Phrases in components/Dialogs/Profile.tsx",
"Coordinators that know your robot:": "Coordinators that know your robot:",
"Looking for your robot!": "Looking for your robot!",
"Your Robot": "Ваш Robot",
"#29": "Phrases in components/Dialogs/Recovery.tsx",
"Enter your robot token to re-build your robot and gain access to its trades.": "Введите токен своего робота, чтобы восстанавить своего робота и получить доступ к его сделкам.",
"Paste token here": "Вставте токен сюда",
"Recover": "Восстановить",
"Robot recovery": "Восстановление робота",
"#30": "Phrases in components/Dialogs/StoreToken.tsx",
"Back it up!": "Сохраните его!",
"Done": "Готово",

View File

@ -15,10 +15,10 @@
"RoboSats information": "RoboSats information",
"client for nerds": "client for nerds",
"#5": "Phrases in basic/NavBar/NavBar.tsx",
"Garage": "Garage",
"More": "More",
"Offers": "Offers",
"Order": "Order",
"Robot": "Robot",
"Settings": "Settings",
"#6": "Phrases in basic/OrderPage/index.tsx",
"Contract": "Kontrakt",
@ -40,47 +40,41 @@
"You can also add your own random characters into the token or": "You can also add your own random characters into the token or",
"or visit the robot school for documentation.": "or visit the robot school for documentation.",
"roll again": "roll again",
"#8": "Phrases in basic/RobotPage/Recovery.tsx",
"Enter your robot token to re-build your robot and gain access to its trades.": "Enter your robot token to re-build your robot and gain access to its trades.",
"Paste token here": "Paste token here",
"Recover": "Recover",
"Robot recovery": "Robot recovery",
"#9": "Phrases in basic/RobotPage/RobotProfile.tsx",
"#8": "Phrases in basic/RobotPage/RobotProfile.tsx",
"Active order #{{orderID}}": "Active order #{{orderID}}",
"Add Robot": "Add Robot",
"Add a new Robot": "Add a new Robot",
"Building...": "Building...",
"Delete Garage": "Delete Garage",
"Delete Robot": "Delete Robot",
"Last order #{{orderID}}": "Last order #{{orderID}}",
"Logout": "Logout",
"Looking for orders!": "Looking for orders!",
"No existing orders found": "No existing orders found",
"Recovery": "Recovery",
"Reusing trading identity degrades your privacy against other users, coordinators and observers.": "Reusing trading identity degrades your privacy against other users, coordinators and observers.",
"Robot Garage": "Robot Garage",
"Store your token safely": "Spara din token säkert",
"Welcome back!": "Welcome back!",
"#10": "Phrases in basic/RobotPage/TokenInput.tsx",
"#9": "Phrases in basic/RobotPage/TokenInput.tsx",
"Copied!": "Kopierat!",
"#11": "Phrases in basic/RobotPage/Welcome.tsx",
"Not enough entropy, make it more complex": "Not enough entropy, make it more complex",
"The token is too short": "The token is too short",
"#10": "Phrases in basic/RobotPage/Welcome.tsx",
"A Simple and Private LN P2P Exchange": "A Simple and Private LN P2P Exchange",
"Create a new robot and learn to use RoboSats": "Create a new robot and learn to use RoboSats",
"Fast Generate Robot": "Fast Generate Robot",
"Recover an existing robot using your token": "Recover an existing robot using your token",
"Recovery": "Recovery",
"Start": "Start",
"#12": "Phrases in basic/RobotPage/index.tsx",
"#11": "Phrases in basic/RobotPage/index.tsx",
"Connecting to TOR": "Connecting to TOR",
"Connection encrypted and anonymized using TOR.": "Connection encrypted and anonymized using TOR.",
"Not enough entropy, make it more complex": "Not enough entropy, make it more complex",
"The token is too short": "The token is too short",
"This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.": "This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.",
"#13": "Phrases in basic/SettingsPage/index.tsx",
"#12": "Phrases in basic/SettingsPage/index.tsx",
"Add": "Add",
"Alias": "Alias",
"Alias already exists": "Alias already exists",
"Invalid Onion URL": "Invalid Onion URL",
"URL": "URL",
"#14": "Phrases in components/BookTable/BookControl.tsx",
"#13": "Phrases in components/BookTable/BookControl.tsx",
"ANY": "ALLA",
"Buy": "Köpa",
"DESTINATION": "DESTINATION",
@ -96,7 +90,7 @@
"and use": "och använda",
"hosted by": "hosted by",
"pay with": "pay with",
"#15": "Phrases in components/BookTable/index.tsx",
"#14": "Phrases in components/BookTable/index.tsx",
"Add filter": "Add filter",
"Amount": "Summa",
"An error occurred.": "An error occurred.",
@ -131,6 +125,7 @@
"Premium": "Premium",
"Price": "Pris",
"Reorder column": "Reorder column",
"Robot": "Robot",
"Sats now": "Sats now",
"Select columns": "Select columns",
"Show all": "Show all",
@ -160,15 +155,15 @@
"starts with": "starts with",
"true": "true",
"yes": "yes",
"#16": "Phrases in components/Charts/DepthChart/index.tsx",
"#17": "Phrases in components/Charts/MapChart/index.tsx",
"#15": "Phrases in components/Charts/DepthChart/index.tsx",
"#16": "Phrases in components/Charts/MapChart/index.tsx",
"Accept": "Accept",
"By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.": "By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.",
"Close": "Stäng",
"Download high resolution map?": "Download high resolution map?",
"Show tiles": "Show tiles",
"#18": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
"#19": "Phrases in components/Dialogs/About.tsx",
"#17": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
"#18": "Phrases in components/Dialogs/About.tsx",
"(GitHub).": "(GitHub).",
"(Telegram)": "(Telegram)",
". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.": ". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.",
@ -208,7 +203,7 @@
"You can find a step-by-step description of the trade pipeline in ": "Du kan hitta en steg-för-steg-beskrivning på hela transaktionsförfarandet här: ",
"Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.": "Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.",
"Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.": "Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.",
"#20": "Phrases in components/Dialogs/AuditPGP.tsx",
"#19": "Phrases in components/Dialogs/AuditPGP.tsx",
"Go back": "Gå tillbaka",
"Keys": "Nycklar",
"Learn how to verify": "Lär dig hur man verifierar",
@ -224,13 +219,13 @@
"Your peer PGP public key. You use it to encrypt messages only he can read and to verify your peer signed the incoming messages.": "Din peers publika PGP-nyckel. Du använder den för att kryptera meddelanden som endast hen kan läsa, och för att verifiera inkommande meddelanden.",
"Your private key passphrase (keep secure!)": "Lösenordet till din privata nyckel (förvara säkert!)",
"Your public key": "Din publika nyckel",
"#21": "Phrases in components/Dialogs/Client.tsx",
"#20": "Phrases in components/Dialogs/Client.tsx",
"... somewhere on Earth!": "... någonstans på jorden!",
"Client info": "Client info",
"Made with": "Skapad med",
"RoboSats client version": "RoboSats client version",
"and": "och",
"#22": "Phrases in components/Dialogs/Community.tsx",
"#21": "Phrases in components/Dialogs/Community.tsx",
"Community": "Community",
"Follow RoboSats in Nostr": "Follow RoboSats in Nostr",
"Follow RoboSats in X": "Follow RoboSats in X",
@ -245,7 +240,7 @@
"Tell us about a new feature or a bug": "Tipsa om en bugg eller ny funktion",
"We are abandoning Telegram! Our old TG groups": "We are abandoning Telegram! Our old TG groups",
"X Official Account": "X Official Account",
"#23": "Phrases in components/Dialogs/Coordinator.tsx",
"#22": "Phrases in components/Dialogs/Coordinator.tsx",
"...Opening on Nostr gateway. Pubkey copied!": "...Opening on Nostr gateway. Pubkey copied!",
"24h contracted volume": "24h kontrakterad volym",
"24h non-KYC bitcoin premium": "24h non-KYC bitcoin premium",
@ -294,29 +289,34 @@
"Website": "Website",
"X": "X",
"Zaps voluntarily for development": "Zaps voluntarily for development",
"#24": "Phrases in components/Dialogs/EnableTelegram.tsx",
"#23": "Phrases in components/Dialogs/EnableTelegram.tsx",
"Browser": "Browser",
"Enable": "Aktivera",
"Enable TG Notifications": "Aktivera TG-notifikationer",
"You will be taken to a conversation with RoboSats telegram bot. Simply open the chat and press Start. Note that by enabling telegram notifications you might lower your level of anonymity.": "Du kommer att skickas till en konversation med RoboSats Telegram-bot. Öppna chatten och tryck Start. Notera att genom att aktivera Telegram-notiser så försämrar du möjligen din anonymitet.",
"#25": "Phrases in components/Dialogs/Exchange.tsx",
"#24": "Phrases in components/Dialogs/Exchange.tsx",
"Enabled RoboSats coordinators": "Enabled RoboSats coordinators",
"Exchange Summary": "Exchange Summary",
"Online RoboSats coordinators": "Online RoboSats coordinators",
"#26": "Phrases in components/Dialogs/F2fMap.tsx",
"#25": "Phrases in components/Dialogs/F2fMap.tsx",
"Choose a location": "Choose a location",
"Save": "Save",
"#27": "Phrases in components/Dialogs/Learn.tsx",
"#26": "Phrases in components/Dialogs/Learn.tsx",
"Back": "Tillbaka",
"You are about to visit Learn RoboSats. It hosts tutorials and documentation to help you learn how to use RoboSats and understand how it works.": "Du är på på väg att besöka Learn RoboSats. Där finns guider och dokumentation som hjälper dig att använda RoboSats och förstå hur det fungerar.",
"#28": "Phrases in components/Dialogs/NoRobot.tsx",
"#27": "Phrases in components/Dialogs/NoRobot.tsx",
"Generate Robot": "Generera Robot",
"Generate a robot avatar first. Then create your own order.": "Generate a robot avatar first. Then create your own order.",
"You do not have a robot avatar": "Du har ingen robotavatar",
"#29": "Phrases in components/Dialogs/Profile.tsx",
"#28": "Phrases in components/Dialogs/Profile.tsx",
"Coordinators that know your robot:": "Coordinators that know your robot:",
"Looking for your robot!": "Looking for your robot!",
"Your Robot": "Your Robot",
"#29": "Phrases in components/Dialogs/Recovery.tsx",
"Enter your robot token to re-build your robot and gain access to its trades.": "Enter your robot token to re-build your robot and gain access to its trades.",
"Paste token here": "Paste token here",
"Recover": "Recover",
"Robot recovery": "Robot recovery",
"#30": "Phrases in components/Dialogs/StoreToken.tsx",
"Back it up!": "Spara den!",
"Done": "Klar",

View File

@ -15,10 +15,10 @@
"RoboSats information": "Taarifa za RoboSats",
"client for nerds": "client for nerds",
"#5": "Phrases in basic/NavBar/NavBar.tsx",
"Garage": "Garage",
"More": "Zaidi",
"Offers": "Ofa",
"Order": "Amri",
"Robot": "Roboti",
"Settings": "Mipangilio",
"#6": "Phrases in basic/OrderPage/index.tsx",
"Contract": "Mkataba",
@ -40,47 +40,41 @@
"You can also add your own random characters into the token or": "Pia unaweza kuongeza wahusika wako wa nasibu ndani ya alama au",
"or visit the robot school for documentation.": "au tembelea shule ya roboti kwa nyaraka.",
"roll again": "chezesha tena",
"#8": "Phrases in basic/RobotPage/Recovery.tsx",
"Enter your robot token to re-build your robot and gain access to its trades.": "Ingiza alama ya roboti yako ili kuirekebisha roboti yako na kupata ufikiaji wa biashara zake.",
"Paste token here": "Bandika alama hapa",
"Recover": "Rejesha",
"Robot recovery": "Kurejesha roboti",
"#9": "Phrases in basic/RobotPage/RobotProfile.tsx",
"#8": "Phrases in basic/RobotPage/RobotProfile.tsx",
"Active order #{{orderID}}": "Amri hai #{{orderID}}",
"Add Robot": "Ongeza Roboti",
"Add a new Robot": "Ongeza Roboti mpya",
"Building...": "Inajengwa...",
"Delete Garage": "Futa Ghorofa",
"Delete Robot": "Delete Robot",
"Last order #{{orderID}}": "Amri ya mwisho #{{orderID}}",
"Logout": "Toka",
"Looking for orders!": "Looking for orders!",
"No existing orders found": "No existing orders found",
"Recovery": "Kurejesha",
"Reusing trading identity degrades your privacy against other users, coordinators and observers.": "Kutumia tena utambulisho wa biashara hupunguza faragha yako dhidi ya watumiaji wengine, waongozaji na waangalizi.",
"Robot Garage": "Gorofa ya Roboti",
"Store your token safely": "Hifadhi alama yako kwa usalama",
"Welcome back!": "Karibu tena!",
"#10": "Phrases in basic/RobotPage/TokenInput.tsx",
"#9": "Phrases in basic/RobotPage/TokenInput.tsx",
"Copied!": "Imekopiwa!",
"#11": "Phrases in basic/RobotPage/Welcome.tsx",
"Not enough entropy, make it more complex": "Entropi haifai, ifanye kuwa ngumu zaidi",
"The token is too short": "Alama ni fupi sana",
"#10": "Phrases in basic/RobotPage/Welcome.tsx",
"A Simple and Private LN P2P Exchange": "Kubadilishana LN P2P Rahisi na Binafsi",
"Create a new robot and learn to use RoboSats": "Unda roboti mpya na ujifunze kutumia RoboSats",
"Fast Generate Robot": "Unda Roboti Haraka",
"Recover an existing robot using your token": "Rejesha roboti iliyopo kwa kutumia alama yako",
"Recovery": "Kurejesha",
"Start": "Anza",
"#12": "Phrases in basic/RobotPage/index.tsx",
"#11": "Phrases in basic/RobotPage/index.tsx",
"Connecting to TOR": "Kuunganisha kwa TOR",
"Connection encrypted and anonymized using TOR.": "Unganisho limefichwa na kufanywa kuwa na siri kwa kutumia TOR.",
"Not enough entropy, make it more complex": "Entropi haifai, ifanye kuwa ngumu zaidi",
"The token is too short": "Alama ni fupi sana",
"This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.": "Hii inahakikisha faragha ya juu kabisa, hata hivyo unaweza kuhisi programu inafanya kazi polepole. Ikiwa mawasiliano yamepotea, anza tena programu.",
"#13": "Phrases in basic/SettingsPage/index.tsx",
"#12": "Phrases in basic/SettingsPage/index.tsx",
"Add": "Add",
"Alias": "Alias",
"Alias already exists": "Alias already exists",
"Invalid Onion URL": "Invalid Onion URL",
"URL": "URL",
"#14": "Phrases in components/BookTable/BookControl.tsx",
"#13": "Phrases in components/BookTable/BookControl.tsx",
"ANY": "Yoyote",
"Buy": "Nunua",
"DESTINATION": "MAELEKEZO",
@ -96,7 +90,7 @@
"and use": "na tumia",
"hosted by": "hosted by",
"pay with": "lipa kwa",
"#15": "Phrases in components/BookTable/index.tsx",
"#14": "Phrases in components/BookTable/index.tsx",
"Add filter": "Ongeza kichujio",
"Amount": "Kiasi",
"An error occurred.": "Kuna hitilafu iliyotokea.",
@ -131,6 +125,7 @@
"Premium": "Malipo",
"Price": "Bei",
"Reorder column": "Panga upya kolaamu",
"Robot": "Roboti",
"Sats now": "Sats sasa",
"Select columns": "Chagua kolaamu",
"Show all": "Onesha yote",
@ -160,15 +155,15 @@
"starts with": "inaanza na",
"true": "kweli",
"yes": "ndio",
"#16": "Phrases in components/Charts/DepthChart/index.tsx",
"#17": "Phrases in components/Charts/MapChart/index.tsx",
"#15": "Phrases in components/Charts/DepthChart/index.tsx",
"#16": "Phrases in components/Charts/MapChart/index.tsx",
"Accept": "Accept",
"By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.": "By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.",
"Close": "Funga",
"Download high resolution map?": "Download high resolution map?",
"Show tiles": "Show tiles",
"#18": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
"#19": "Phrases in components/Dialogs/About.tsx",
"#17": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
"#18": "Phrases in components/Dialogs/About.tsx",
"(GitHub).": "(GitHub).",
"(Telegram)": "(Telegram)",
". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.": ". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.",
@ -208,7 +203,7 @@
"You can find a step-by-step description of the trade pipeline in ": "Unaweza kupata maelezo ya hatua kwa hatua ya mchakato wa biashara kwenye ",
"Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.": "Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.",
"Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.": "Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.",
"#20": "Phrases in components/Dialogs/AuditPGP.tsx",
"#19": "Phrases in components/Dialogs/AuditPGP.tsx",
"Go back": "Rudi nyuma",
"Keys": "Funguo",
"Learn how to verify": "Jifunze jinsi ya kuthibitisha",
@ -224,13 +219,13 @@
"Your peer PGP public key. You use it to encrypt messages only he can read and to verify your peer signed the incoming messages.": "Funguo la umma la PGP la mwenzako. Unaitumia kufuta ujumbe ambao yeye tu anaweza kusoma na kuthibitisha kuwa mwenza wako alisaini ujumbe wa kuingia.",
"Your private key passphrase (keep secure!)": "Nenosiri la funguo binafsi lako (lihifadhiwe salama!)",
"Your public key": "Funguo lako la umma",
"#21": "Phrases in components/Dialogs/Client.tsx",
"#20": "Phrases in components/Dialogs/Client.tsx",
"... somewhere on Earth!": "... mahali popote duniani!",
"Client info": "Client info",
"Made with": "Imetengenezwa kwa",
"RoboSats client version": "RoboSats client version",
"and": "na",
"#22": "Phrases in components/Dialogs/Community.tsx",
"#21": "Phrases in components/Dialogs/Community.tsx",
"Community": "Jumuiya",
"Follow RoboSats in Nostr": "Fuata RoboSats katika Nostr",
"Follow RoboSats in X": "Follow RoboSats in X",
@ -245,7 +240,7 @@
"Tell us about a new feature or a bug": "Tuambie kuhusu huduma mpya au mdudu",
"We are abandoning Telegram! Our old TG groups": "Tunaiacha Telegram! Vikundi vyetu vya zamani vya TG",
"X Official Account": "X Official Account",
"#23": "Phrases in components/Dialogs/Coordinator.tsx",
"#22": "Phrases in components/Dialogs/Coordinator.tsx",
"...Opening on Nostr gateway. Pubkey copied!": "...Opening on Nostr gateway. Pubkey copied!",
"24h contracted volume": "Kiasi kilichoidhinishwa kwa masaa 24",
"24h non-KYC bitcoin premium": "24h non-KYC bitcoin premium",
@ -294,29 +289,34 @@
"Website": "Website",
"X": "X",
"Zaps voluntarily for development": "Zaps voluntarily for development",
"#24": "Phrases in components/Dialogs/EnableTelegram.tsx",
"#23": "Phrases in components/Dialogs/EnableTelegram.tsx",
"Browser": "Kivinjari",
"Enable": "Washa",
"Enable TG Notifications": "Washa Arifa za TG",
"You will be taken to a conversation with RoboSats telegram bot. Simply open the chat and press Start. Note that by enabling telegram notifications you might lower your level of anonymity.": "Utachukuliwa kwenye mazungumzo na boti ya Telegram ya RoboSats. Fungua mazungumzo tu na bonyeza Anza. Tambua kwamba kwa kuwezesha arifa za Telegram unaweza kupunguza kiwango chako cha kutotambulika.",
"#25": "Phrases in components/Dialogs/Exchange.tsx",
"#24": "Phrases in components/Dialogs/Exchange.tsx",
"Enabled RoboSats coordinators": "Enabled RoboSats coordinators",
"Exchange Summary": "Exchange Summary",
"Online RoboSats coordinators": "Online RoboSats coordinators",
"#26": "Phrases in components/Dialogs/F2fMap.tsx",
"#25": "Phrases in components/Dialogs/F2fMap.tsx",
"Choose a location": "Choose a location",
"Save": "Save",
"#27": "Phrases in components/Dialogs/Learn.tsx",
"#26": "Phrases in components/Dialogs/Learn.tsx",
"Back": "Nyuma",
"You are about to visit Learn RoboSats. It hosts tutorials and documentation to help you learn how to use RoboSats and understand how it works.": "Unaenda kutembelea Jifunze RoboSats. Ina mafunzo na nyaraka za kukusaidia kujifunza jinsi ya kutumia RoboSats na kuelewa jinsi inavyofanya kazi.",
"#28": "Phrases in components/Dialogs/NoRobot.tsx",
"#27": "Phrases in components/Dialogs/NoRobot.tsx",
"Generate Robot": "Zalisha Roboti",
"Generate a robot avatar first. Then create your own order.": "Zalisha picha ya mwakilishi wa roboti kwanza. Kisha tengeneza amri yako mwenyewe.",
"You do not have a robot avatar": "Huna picha ya mwakilishi wa roboti",
"#29": "Phrases in components/Dialogs/Profile.tsx",
"#28": "Phrases in components/Dialogs/Profile.tsx",
"Coordinators that know your robot:": "Coordinators that know your robot:",
"Looking for your robot!": "Looking for your robot!",
"Your Robot": "Roboti yako",
"#29": "Phrases in components/Dialogs/Recovery.tsx",
"Enter your robot token to re-build your robot and gain access to its trades.": "Ingiza alama ya roboti yako ili kuirekebisha roboti yako na kupata ufikiaji wa biashara zake.",
"Paste token here": "Bandika alama hapa",
"Recover": "Rejesha",
"Robot recovery": "Kurejesha roboti",
"#30": "Phrases in components/Dialogs/StoreToken.tsx",
"Back it up!": "Fanya nakala rudufu!",
"Done": "Imekamilika",

View File

@ -15,10 +15,10 @@
"RoboSats information": "RoboSats information",
"client for nerds": "client for nerds",
"#5": "Phrases in basic/NavBar/NavBar.tsx",
"Garage": "Garage",
"More": "More",
"Offers": "Offers",
"Order": "รายการซื้อขาย",
"Robot": "โรบอท",
"Settings": "Settings",
"#6": "Phrases in basic/OrderPage/index.tsx",
"Contract": "Contract",
@ -40,47 +40,41 @@
"You can also add your own random characters into the token or": "You can also add your own random characters into the token or",
"or visit the robot school for documentation.": "or visit the robot school for documentation.",
"roll again": "roll again",
"#8": "Phrases in basic/RobotPage/Recovery.tsx",
"Enter your robot token to re-build your robot and gain access to its trades.": "Enter your robot token to re-build your robot and gain access to its trades.",
"Paste token here": "Paste token here",
"Recover": "Recover",
"Robot recovery": "Robot recovery",
"#9": "Phrases in basic/RobotPage/RobotProfile.tsx",
"#8": "Phrases in basic/RobotPage/RobotProfile.tsx",
"Active order #{{orderID}}": "Active order #{{orderID}}",
"Add Robot": "Add Robot",
"Add a new Robot": "Add a new Robot",
"Building...": "Building...",
"Delete Garage": "Delete Garage",
"Delete Robot": "Delete Robot",
"Last order #{{orderID}}": "Last order #{{orderID}}",
"Logout": "Logout",
"Looking for orders!": "Looking for orders!",
"No existing orders found": "No existing orders found",
"Recovery": "Recovery",
"Reusing trading identity degrades your privacy against other users, coordinators and observers.": "Reusing trading identity degrades your privacy against other users, coordinators and observers.",
"Robot Garage": "Robot Garage",
"Store your token safely": "รักษา token ของคุณไว้ให้ดี",
"Welcome back!": "Welcome back!",
"#10": "Phrases in basic/RobotPage/TokenInput.tsx",
"#9": "Phrases in basic/RobotPage/TokenInput.tsx",
"Copied!": "คัดลอกแล้ว!",
"#11": "Phrases in basic/RobotPage/Welcome.tsx",
"Not enough entropy, make it more complex": "Not enough entropy, make it more complex",
"The token is too short": "The token is too short",
"#10": "Phrases in basic/RobotPage/Welcome.tsx",
"A Simple and Private LN P2P Exchange": "A Simple and Private LN P2P Exchange",
"Create a new robot and learn to use RoboSats": "Create a new robot and learn to use RoboSats",
"Fast Generate Robot": "Fast Generate Robot",
"Recover an existing robot using your token": "Recover an existing robot using your token",
"Recovery": "Recovery",
"Start": "Start",
"#12": "Phrases in basic/RobotPage/index.tsx",
"#11": "Phrases in basic/RobotPage/index.tsx",
"Connecting to TOR": "Connecting to TOR",
"Connection encrypted and anonymized using TOR.": "Connection encrypted and anonymized using TOR.",
"Not enough entropy, make it more complex": "Not enough entropy, make it more complex",
"The token is too short": "The token is too short",
"This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.": "This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.",
"#13": "Phrases in basic/SettingsPage/index.tsx",
"#12": "Phrases in basic/SettingsPage/index.tsx",
"Add": "Add",
"Alias": "Alias",
"Alias already exists": "Alias already exists",
"Invalid Onion URL": "Invalid Onion URL",
"URL": "URL",
"#14": "Phrases in components/BookTable/BookControl.tsx",
"#13": "Phrases in components/BookTable/BookControl.tsx",
"ANY": "ANY",
"Buy": "ซื้อ",
"DESTINATION": "DESTINATION",
@ -96,7 +90,7 @@
"and use": "และใช้",
"hosted by": "hosted by",
"pay with": "pay with",
"#15": "Phrases in components/BookTable/index.tsx",
"#14": "Phrases in components/BookTable/index.tsx",
"Add filter": "เพิ่มตัวกรอง",
"Amount": "จำนวน",
"An error occurred.": "เกิดความผิดพลาด",
@ -131,6 +125,7 @@
"Premium": "พรีเมี่ยม",
"Price": "ราคา",
"Reorder column": "จัดเรียงคอลัมน์ใหม่",
"Robot": "โรบอท",
"Sats now": "Sats now",
"Select columns": "เลือกคอลัมน์",
"Show all": "แสดงทั้งหมด",
@ -160,15 +155,15 @@
"starts with": "เริ่มต้นด้วย",
"true": "จริง",
"yes": "ใช่",
"#16": "Phrases in components/Charts/DepthChart/index.tsx",
"#17": "Phrases in components/Charts/MapChart/index.tsx",
"#15": "Phrases in components/Charts/DepthChart/index.tsx",
"#16": "Phrases in components/Charts/MapChart/index.tsx",
"Accept": "Accept",
"By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.": "By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.",
"Close": "ปิด",
"Download high resolution map?": "Download high resolution map?",
"Show tiles": "Show tiles",
"#18": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
"#19": "Phrases in components/Dialogs/About.tsx",
"#17": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
"#18": "Phrases in components/Dialogs/About.tsx",
"(GitHub).": "(GitHub)",
"(Telegram)": "(Telegram)",
". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.": ". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.",
@ -208,7 +203,7 @@
"You can find a step-by-step description of the trade pipeline in ": "คุณสามารถอ่านขั้นตอนการซื้อขายทีละขั้นได้ที่",
"Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.": "Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.",
"Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.": "Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.",
"#20": "Phrases in components/Dialogs/AuditPGP.tsx",
"#19": "Phrases in components/Dialogs/AuditPGP.tsx",
"Go back": "กลับ",
"Keys": "Keys",
"Learn how to verify": "เรียนรู้วิธีการตรวจสอบ",
@ -224,13 +219,13 @@
"Your peer PGP public key. You use it to encrypt messages only he can read and to verify your peer signed the incoming messages.": "PGP public key ของคู่ค้า ใช้ในการเข้ารหัสกับข้อความซึ่งทำให้มีแต่เขาเท่านั้นที่สามารภถอ่านได้และใช้ตรวจสอบข้อความที่คู่ค้าเข้ารหัสและส่งมาให้คุณ",
"Your private key passphrase (keep secure!)": "passphrase ของ private key ของคุณ เก็บรักษาไว้ให้ดี!",
"Your public key": "Public key ของคุณ",
"#21": "Phrases in components/Dialogs/Client.tsx",
"#20": "Phrases in components/Dialogs/Client.tsx",
"... somewhere on Earth!": "... ซักที่ บนโลกใบนี้!",
"Client info": "Client info",
"Made with": "สร้างด้วย",
"RoboSats client version": "RoboSats client version",
"and": "และ",
"#22": "Phrases in components/Dialogs/Community.tsx",
"#21": "Phrases in components/Dialogs/Community.tsx",
"Community": "ชุมชน",
"Follow RoboSats in Nostr": "Follow RoboSats in Nostr",
"Follow RoboSats in X": "Follow RoboSats in X",
@ -245,7 +240,7 @@
"Tell us about a new feature or a bug": "บอกเราเกี่ยวกับฟีเจอร์ใหม่หรือบัค",
"We are abandoning Telegram! Our old TG groups": "We are abandoning Telegram! Our old TG groups",
"X Official Account": "X Official Account",
"#23": "Phrases in components/Dialogs/Coordinator.tsx",
"#22": "Phrases in components/Dialogs/Coordinator.tsx",
"...Opening on Nostr gateway. Pubkey copied!": "...Opening on Nostr gateway. Pubkey copied!",
"24h contracted volume": "24h ปริมาณการซื้อขาย 24 ชั่วโมงที่แล้ว",
"24h non-KYC bitcoin premium": "24h non-KYC bitcoin premium",
@ -294,29 +289,34 @@
"Website": "Website",
"X": "X",
"Zaps voluntarily for development": "Zaps voluntarily for development",
"#24": "Phrases in components/Dialogs/EnableTelegram.tsx",
"#23": "Phrases in components/Dialogs/EnableTelegram.tsx",
"Browser": "Browser",
"Enable": "เปิดใช้งาน",
"Enable TG Notifications": "ใช้การแจ้งเตือน Telegram",
"You will be taken to a conversation with RoboSats telegram bot. Simply open the chat and press Start. Note that by enabling telegram notifications you might lower your level of anonymity.": "คุณจะเข้าไปยังแชทกับ telegram bot ของ RoboSats ให้คุณกด Start อย่างไรก็ตาม การใช้การแจ้งเตือน telegram จะลดระดับการปกปิดตัวตนของคุณ",
"#25": "Phrases in components/Dialogs/Exchange.tsx",
"#24": "Phrases in components/Dialogs/Exchange.tsx",
"Enabled RoboSats coordinators": "Enabled RoboSats coordinators",
"Exchange Summary": "Exchange Summary",
"Online RoboSats coordinators": "Online RoboSats coordinators",
"#26": "Phrases in components/Dialogs/F2fMap.tsx",
"#25": "Phrases in components/Dialogs/F2fMap.tsx",
"Choose a location": "Choose a location",
"Save": "Save",
"#27": "Phrases in components/Dialogs/Learn.tsx",
"#26": "Phrases in components/Dialogs/Learn.tsx",
"Back": "กลับ",
"You are about to visit Learn RoboSats. It hosts tutorials and documentation to help you learn how to use RoboSats and understand how it works.": "คุณกำลังเข้าสู่หน้าการเรียนรู้การใช้งาน RoboSats คุณสามารถศึกษาวิธีการใช้งานแพล้ตฟอร์มและทำความเข้าใจการทำงานของแพล้ตฟอร์มได้ที่นี่",
"#28": "Phrases in components/Dialogs/NoRobot.tsx",
"#27": "Phrases in components/Dialogs/NoRobot.tsx",
"Generate Robot": "สร้างโรบอทใหม่",
"Generate a robot avatar first. Then create your own order.": "Generate a robot avatar first. Then create your own order.",
"You do not have a robot avatar": "คุณไม่มีโรบอท",
"#29": "Phrases in components/Dialogs/Profile.tsx",
"#28": "Phrases in components/Dialogs/Profile.tsx",
"Coordinators that know your robot:": "Coordinators that know your robot:",
"Looking for your robot!": "Looking for your robot!",
"Your Robot": "Your Robot",
"#29": "Phrases in components/Dialogs/Recovery.tsx",
"Enter your robot token to re-build your robot and gain access to its trades.": "Enter your robot token to re-build your robot and gain access to its trades.",
"Paste token here": "Paste token here",
"Recover": "Recover",
"Robot recovery": "Robot recovery",
"#30": "Phrases in components/Dialogs/StoreToken.tsx",
"Back it up!": "อย่าลืมบันทึก!",
"Done": "เสร็จสิ้น",

View File

@ -15,10 +15,10 @@
"RoboSats information": "RoboSats 信息",
"client for nerds": "client for nerds",
"#5": "Phrases in basic/NavBar/NavBar.tsx",
"Garage": "Garage",
"More": "更多",
"Offers": "报价",
"Order": "订单",
"Robot": "机器人",
"Settings": "设置",
"#6": "Phrases in basic/OrderPage/index.tsx",
"Contract": "合约",
@ -40,47 +40,41 @@
"You can also add your own random characters into the token or": "你也可以在令牌中添加你自己的随机字符或",
"or visit the robot school for documentation.": "或访问机器人学校参考文件。",
"roll again": "再掷一次",
"#8": "Phrases in basic/RobotPage/Recovery.tsx",
"Enter your robot token to re-build your robot and gain access to its trades.": "输入你的机器人令牌来重造你的机器人并访问它的交易。",
"Paste token here": "在此粘贴令牌",
"Recover": "恢复",
"Robot recovery": "恢复机器人",
"#9": "Phrases in basic/RobotPage/RobotProfile.tsx",
"#8": "Phrases in basic/RobotPage/RobotProfile.tsx",
"Active order #{{orderID}}": "活跃订单 #{{orderID}}",
"Add Robot": "添加机器人",
"Add a new Robot": "添加新机器人",
"Building...": "正在建造...",
"Delete Garage": "删除仓库",
"Delete Robot": "Delete Robot",
"Last order #{{orderID}}": "上一张订单 #{{orderID}}",
"Logout": "登出",
"Looking for orders!": "Looking for orders!",
"No existing orders found": "No existing orders found",
"Recovery": "恢复",
"Reusing trading identity degrades your privacy against other users, coordinators and observers.": "重复使用交易身份会降低你相对其他用户、协调器和观察者的隐私。",
"Robot Garage": "机器人仓库",
"Store your token safely": "请安全地存储你的令牌",
"Welcome back!": "欢迎回来!",
"#10": "Phrases in basic/RobotPage/TokenInput.tsx",
"#9": "Phrases in basic/RobotPage/TokenInput.tsx",
"Copied!": "已复制!",
"#11": "Phrases in basic/RobotPage/Welcome.tsx",
"Not enough entropy, make it more complex": "Not enough entropy, make it more complex",
"The token is too short": "The token is too short",
"#10": "Phrases in basic/RobotPage/Welcome.tsx",
"A Simple and Private LN P2P Exchange": "一个简单且隐秘的点对点闪电交易所",
"Create a new robot and learn to use RoboSats": "创建一个新的机器人并学习如何使用 RoboSats",
"Fast Generate Robot": "快速生成机器人",
"Recover an existing robot using your token": "用你的令牌恢复现有的机器人",
"Recovery": "恢复",
"Start": "开始",
"#12": "Phrases in basic/RobotPage/index.tsx",
"#11": "Phrases in basic/RobotPage/index.tsx",
"Connecting to TOR": "正在连线 TOR",
"Connection encrypted and anonymized using TOR.": "连接已用 TOR 加密和匿名化。",
"Not enough entropy, make it more complex": "Not enough entropy, make it more complex",
"The token is too short": "The token is too short",
"This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.": "这确保最高的隐秘程度,但你可能会觉得应用程序运作缓慢。如果丢失连接,请重启应用。",
"#13": "Phrases in basic/SettingsPage/index.tsx",
"#12": "Phrases in basic/SettingsPage/index.tsx",
"Add": "Add",
"Alias": "Alias",
"Alias already exists": "Alias already exists",
"Invalid Onion URL": "Invalid Onion URL",
"URL": "URL",
"#14": "Phrases in components/BookTable/BookControl.tsx",
"#13": "Phrases in components/BookTable/BookControl.tsx",
"ANY": "任何",
"Buy": "购买",
"DESTINATION": "目的地",
@ -96,7 +90,7 @@
"and use": "并使用",
"hosted by": "hosted by",
"pay with": "支付",
"#15": "Phrases in components/BookTable/index.tsx",
"#14": "Phrases in components/BookTable/index.tsx",
"Add filter": "加筛选",
"Amount": "金额",
"An error occurred.": "发生错误。",
@ -131,6 +125,7 @@
"Premium": "溢价",
"Price": "价格",
"Reorder column": "重整列",
"Robot": "机器人",
"Sats now": "当前聪",
"Select columns": "选择列",
"Show all": "显示全部",
@ -160,15 +155,15 @@
"starts with": "以...开始",
"true": "实",
"yes": "是",
"#16": "Phrases in components/Charts/DepthChart/index.tsx",
"#17": "Phrases in components/Charts/MapChart/index.tsx",
"#15": "Phrases in components/Charts/DepthChart/index.tsx",
"#16": "Phrases in components/Charts/MapChart/index.tsx",
"Accept": "Accept",
"By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.": "By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.",
"Close": "关闭",
"Download high resolution map?": "Download high resolution map?",
"Show tiles": "Show tiles",
"#18": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
"#19": "Phrases in components/Dialogs/About.tsx",
"#17": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
"#18": "Phrases in components/Dialogs/About.tsx",
"(GitHub).": "(GitHub).",
"(Telegram)": "(Telegram)",
". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.": ". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.",
@ -208,7 +203,7 @@
"You can find a step-by-step description of the trade pipeline in ": "你可以在此找到交易流程的分步说明:",
"Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.": "Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.",
"Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.": "Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.",
"#20": "Phrases in components/Dialogs/AuditPGP.tsx",
"#19": "Phrases in components/Dialogs/AuditPGP.tsx",
"Go back": "返回",
"Keys": "钥匙",
"Learn how to verify": "学习如何验证",
@ -224,13 +219,13 @@
"Your peer PGP public key. You use it to encrypt messages only he can read and to verify your peer signed the incoming messages.": "你的对等方的公钥。你使用它来加密只有你的对等方才能阅读的消息,并验证你的对等方签署的传入消息。",
"Your private key passphrase (keep secure!)": "你的私钥密码(请安全存放!)",
"Your public key": "你的公钥",
"#21": "Phrases in components/Dialogs/Client.tsx",
"#20": "Phrases in components/Dialogs/Client.tsx",
"... somewhere on Earth!": "...在世界上某处建造!",
"Client info": "Client info",
"Made with": "用",
"RoboSats client version": "RoboSats client version",
"and": "和",
"#22": "Phrases in components/Dialogs/Community.tsx",
"#21": "Phrases in components/Dialogs/Community.tsx",
"Community": "社群",
"Follow RoboSats in Nostr": "Follow RoboSats in Nostr",
"Follow RoboSats in X": "Follow RoboSats in X",
@ -245,7 +240,7 @@
"Tell us about a new feature or a bug": "向我们报告错误或要求新功能",
"We are abandoning Telegram! Our old TG groups": "We are abandoning Telegram! Our old TG groups",
"X Official Account": "X Official Account",
"#23": "Phrases in components/Dialogs/Coordinator.tsx",
"#22": "Phrases in components/Dialogs/Coordinator.tsx",
"...Opening on Nostr gateway. Pubkey copied!": "...Opening on Nostr gateway. Pubkey copied!",
"24h contracted volume": "24小时合约量",
"24h non-KYC bitcoin premium": "24h non-KYC bitcoin premium",
@ -294,29 +289,34 @@
"Website": "Website",
"X": "X",
"Zaps voluntarily for development": "Zaps voluntarily for development",
"#24": "Phrases in components/Dialogs/EnableTelegram.tsx",
"#23": "Phrases in components/Dialogs/EnableTelegram.tsx",
"Browser": "浏览器",
"Enable": "开启",
"Enable TG Notifications": "开启 TG 通知",
"You will be taken to a conversation with RoboSats telegram bot. Simply open the chat and press Start. Note that by enabling telegram notifications you might lower your level of anonymity.": "你将被带到 RoboSats Telegram Bot 的对话中。只需打开聊天并按开始。请注意,通过开启 Telegram 通知,你可能会降低匿名程度。",
"#25": "Phrases in components/Dialogs/Exchange.tsx",
"#24": "Phrases in components/Dialogs/Exchange.tsx",
"Enabled RoboSats coordinators": "Enabled RoboSats coordinators",
"Exchange Summary": "Exchange Summary",
"Online RoboSats coordinators": "Online RoboSats coordinators",
"#26": "Phrases in components/Dialogs/F2fMap.tsx",
"#25": "Phrases in components/Dialogs/F2fMap.tsx",
"Choose a location": "Choose a location",
"Save": "Save",
"#27": "Phrases in components/Dialogs/Learn.tsx",
"#26": "Phrases in components/Dialogs/Learn.tsx",
"Back": "返回",
"You are about to visit Learn RoboSats. It hosts tutorials and documentation to help you learn how to use RoboSats and understand how it works.": "你即将访问学习 RoboSats 页面。此页面提供教程和说明书,以帮助你学习如何使用 RoboSats 并了解它的功能。",
"#28": "Phrases in components/Dialogs/NoRobot.tsx",
"#27": "Phrases in components/Dialogs/NoRobot.tsx",
"Generate Robot": "生成机器人",
"Generate a robot avatar first. Then create your own order.": "请先生成一个机器人头像,然后创建你自己的订单。",
"You do not have a robot avatar": "你没有机器人头像",
"#29": "Phrases in components/Dialogs/Profile.tsx",
"#28": "Phrases in components/Dialogs/Profile.tsx",
"Coordinators that know your robot:": "Coordinators that know your robot:",
"Looking for your robot!": "Looking for your robot!",
"Your Robot": "你的机器人",
"#29": "Phrases in components/Dialogs/Recovery.tsx",
"Enter your robot token to re-build your robot and gain access to its trades.": "输入你的机器人令牌来重造你的机器人并访问它的交易。",
"Paste token here": "在此粘贴令牌",
"Recover": "恢复",
"Robot recovery": "恢复机器人",
"#30": "Phrases in components/Dialogs/StoreToken.tsx",
"Back it up!": "请备份!",
"Done": "完成",

View File

@ -15,10 +15,10 @@
"RoboSats information": "RoboSats 信息",
"client for nerds": "client for nerds",
"#5": "Phrases in basic/NavBar/NavBar.tsx",
"Garage": "Garage",
"More": "更多",
"Offers": "報價",
"Order": "訂單",
"Robot": "機器人",
"Settings": "設置",
"#6": "Phrases in basic/OrderPage/index.tsx",
"Contract": "合約",
@ -40,47 +40,41 @@
"You can also add your own random characters into the token or": "你也可以在領牌中添加你自己的隨機字符或",
"or visit the robot school for documentation.": "或訪問機器人學校參考文件。",
"roll again": "再擲一次",
"#8": "Phrases in basic/RobotPage/Recovery.tsx",
"Enter your robot token to re-build your robot and gain access to its trades.": "輸入你的機器人領牌來重造你的機器人並訪問它的交易。",
"Paste token here": "在此粘貼領牌",
"Recover": "恢復",
"Robot recovery": "恢復機器人",
"#9": "Phrases in basic/RobotPage/RobotProfile.tsx",
"#8": "Phrases in basic/RobotPage/RobotProfile.tsx",
"Active order #{{orderID}}": "活躍訂單 #{{orderID}}",
"Add Robot": "添加機器人",
"Add a new Robot": "添加新機器人",
"Building...": "正在建造...",
"Delete Garage": "刪除倉庫",
"Delete Robot": "Delete Robot",
"Last order #{{orderID}}": "上一張訂單 #{{orderID}}",
"Logout": "登出",
"Looking for orders!": "Looking for orders!",
"No existing orders found": "No existing orders found",
"Recovery": "恢復",
"Reusing trading identity degrades your privacy against other users, coordinators and observers.": "重複使用交易身份會降低你對其他用戶、協調器和觀察者的隱私。",
"Robot Garage": "機器人倉庫",
"Store your token safely": "請安全地存儲你的令牌",
"Welcome back!": "歡迎回來!",
"#10": "Phrases in basic/RobotPage/TokenInput.tsx",
"#9": "Phrases in basic/RobotPage/TokenInput.tsx",
"Copied!": "已複製!",
"#11": "Phrases in basic/RobotPage/Welcome.tsx",
"Not enough entropy, make it more complex": "Not enough entropy, make it more complex",
"The token is too short": "The token is too short",
"#10": "Phrases in basic/RobotPage/Welcome.tsx",
"A Simple and Private LN P2P Exchange": "一個簡單且隱密的點對點閃電交易所",
"Create a new robot and learn to use RoboSats": "創建一個新的機器人並學習如何使用 RoboSats",
"Fast Generate Robot": "快速生成機器人",
"Recover an existing robot using your token": "用你的領牌恢復現有的機器人",
"Recovery": "恢復",
"Start": "開始",
"#12": "Phrases in basic/RobotPage/index.tsx",
"#11": "Phrases in basic/RobotPage/index.tsx",
"Connecting to TOR": "正在連線 TOR",
"Connection encrypted and anonymized using TOR.": "連接已用 TOR 加密和匿名化。",
"Not enough entropy, make it more complex": "Not enough entropy, make it more complex",
"The token is too short": "The token is too short",
"This ensures maximum privacy, however you might feel the app behaves slow. If connection is lost, restart the app.": "這確保最高的隱密程度,但你可能會覺得應用程序運作緩慢。如果丟失連接,請重啟應用。",
"#13": "Phrases in basic/SettingsPage/index.tsx",
"#12": "Phrases in basic/SettingsPage/index.tsx",
"Add": "Add",
"Alias": "Alias",
"Alias already exists": "Alias already exists",
"Invalid Onion URL": "Invalid Onion URL",
"URL": "URL",
"#14": "Phrases in components/BookTable/BookControl.tsx",
"#13": "Phrases in components/BookTable/BookControl.tsx",
"ANY": "任何",
"Buy": "購買",
"DESTINATION": "目的地",
@ -96,7 +90,7 @@
"and use": "並使用",
"hosted by": "hosted by",
"pay with": "支付",
"#15": "Phrases in components/BookTable/index.tsx",
"#14": "Phrases in components/BookTable/index.tsx",
"Add filter": "加篩選",
"Amount": "金額",
"An error occurred.": "發生錯誤。",
@ -131,6 +125,7 @@
"Premium": "溢價",
"Price": "價格",
"Reorder column": "重整列",
"Robot": "機器人",
"Sats now": "當前聰",
"Select columns": "選擇列",
"Show all": "顯示全部",
@ -160,15 +155,15 @@
"starts with": "以...開始",
"true": "實",
"yes": "是",
"#16": "Phrases in components/Charts/DepthChart/index.tsx",
"#17": "Phrases in components/Charts/MapChart/index.tsx",
"#15": "Phrases in components/Charts/DepthChart/index.tsx",
"#16": "Phrases in components/Charts/MapChart/index.tsx",
"Accept": "Accept",
"By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.": "By doing so, you will be fetching map tiles from a third-party provider. Depending on your setup, private information might be leaked to servers outside the RoboSats federation.",
"Close": "關閉",
"Download high resolution map?": "Download high resolution map?",
"Show tiles": "Show tiles",
"#18": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
"#19": "Phrases in components/Dialogs/About.tsx",
"#17": "Phrases in components/Charts/helpers/OrderTooltip/index.tsx",
"#18": "Phrases in components/Dialogs/About.tsx",
"(GitHub).": "(GitHub).",
"(Telegram)": "(Telegram)",
". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.": ". RoboSats developers will never contact you. The developers or the coordinators will definitely never ask for your robot token.",
@ -208,7 +203,7 @@
"You can find a step-by-step description of the trade pipeline in ": "你可以在此找到交易流程的分步說明: ",
"Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.": "Your sats will return to you. Any hold invoice that is not settled would be automatically returned even if the coordinator goes down forever. This is true for both, locked bonds and trading escrows. However, there is a small window between the seller confirms FIAT RECEIVED and the moment the buyer receives the satoshis when the funds could be permanently lost if the coordinator disappears. This window is usually about 1 second long. Make sure to have enough inbound liquidity to avoid routing failures. If you have any problem, reach out trough the RoboSats public channels or directly to your trade coordinator using one of the contact methods listed on their profile.",
"Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.": "Your trade partner will not know the destination of the Lightning payment. The permanence of the data collected by the coordinators depend on their privacy and data policies. If a dispute arises, a coordinator may request additional information. The specifics of this process can vary from coordinator to coordinator.",
"#20": "Phrases in components/Dialogs/AuditPGP.tsx",
"#19": "Phrases in components/Dialogs/AuditPGP.tsx",
"Go back": "返回",
"Keys": "鑰匙",
"Learn how to verify": "學習如何驗證",
@ -224,13 +219,13 @@
"Your peer PGP public key. You use it to encrypt messages only he can read and to verify your peer signed the incoming messages.": "你的對等方的 PGP 公鑰。你使用它來加密只有你的對等方才能閱讀的消息,並驗證你的對等方簽署的傳入消息。",
"Your private key passphrase (keep secure!)": "你的私鑰密碼 (請安全存放!)",
"Your public key": "你的公鑰",
"#21": "Phrases in components/Dialogs/Client.tsx",
"#20": "Phrases in components/Dialogs/Client.tsx",
"... somewhere on Earth!": "...在世界上某處製造!",
"Client info": "Client info",
"Made with": "用",
"RoboSats client version": "RoboSats client version",
"and": "和",
"#22": "Phrases in components/Dialogs/Community.tsx",
"#21": "Phrases in components/Dialogs/Community.tsx",
"Community": "社群",
"Follow RoboSats in Nostr": "Follow RoboSats in Nostr",
"Follow RoboSats in X": "Follow RoboSats in X",
@ -245,7 +240,7 @@
"Tell us about a new feature or a bug": "向我們報告錯誤或要求新功能",
"We are abandoning Telegram! Our old TG groups": "We are abandoning Telegram! Our old TG groups",
"X Official Account": "X Official Account",
"#23": "Phrases in components/Dialogs/Coordinator.tsx",
"#22": "Phrases in components/Dialogs/Coordinator.tsx",
"...Opening on Nostr gateway. Pubkey copied!": "...Opening on Nostr gateway. Pubkey copied!",
"24h contracted volume": "24小時合約量",
"24h non-KYC bitcoin premium": "24h non-KYC bitcoin premium",
@ -294,29 +289,34 @@
"Website": "Website",
"X": "X",
"Zaps voluntarily for development": "Zaps voluntarily for development",
"#24": "Phrases in components/Dialogs/EnableTelegram.tsx",
"#23": "Phrases in components/Dialogs/EnableTelegram.tsx",
"Browser": "瀏覽器",
"Enable": "開啟",
"Enable TG Notifications": "開啟 TG 通知",
"You will be taken to a conversation with RoboSats telegram bot. Simply open the chat and press Start. Note that by enabling telegram notifications you might lower your level of anonymity.": "你將被帶到與 RoboSats Telegram Bot 的對話中。只需打開聊天並按開始。請注意,通過啟用 Telegram 通知,你可能會降低匿名程度。",
"#25": "Phrases in components/Dialogs/Exchange.tsx",
"#24": "Phrases in components/Dialogs/Exchange.tsx",
"Enabled RoboSats coordinators": "Enabled RoboSats coordinators",
"Exchange Summary": "Exchange Summary",
"Online RoboSats coordinators": "Online RoboSats coordinators",
"#26": "Phrases in components/Dialogs/F2fMap.tsx",
"#25": "Phrases in components/Dialogs/F2fMap.tsx",
"Choose a location": "Choose a location",
"Save": "Save",
"#27": "Phrases in components/Dialogs/Learn.tsx",
"#26": "Phrases in components/Dialogs/Learn.tsx",
"Back": "返回",
"You are about to visit Learn RoboSats. It hosts tutorials and documentation to help you learn how to use RoboSats and understand how it works.": "你即將訪問學習 RoboSats 頁面。此頁面提供教程和說明書,以幫助你學習如何使用 RoboSats 並了解它的功能。",
"#28": "Phrases in components/Dialogs/NoRobot.tsx",
"#27": "Phrases in components/Dialogs/NoRobot.tsx",
"Generate Robot": "生成機器人",
"Generate a robot avatar first. Then create your own order.": "請先生成一個機器人頭像,然後創建你自己的訂單。",
"You do not have a robot avatar": "你沒有機器人頭像",
"#29": "Phrases in components/Dialogs/Profile.tsx",
"#28": "Phrases in components/Dialogs/Profile.tsx",
"Coordinators that know your robot:": "Coordinators that know your robot:",
"Looking for your robot!": "Looking for your robot!",
"Your Robot": "你的機器人",
"#29": "Phrases in components/Dialogs/Recovery.tsx",
"Enter your robot token to re-build your robot and gain access to its trades.": "輸入你的機器人領牌來重造你的機器人並訪問它的交易。",
"Paste token here": "在此粘貼領牌",
"Recover": "恢復",
"Robot recovery": "恢復機器人",
"#30": "Phrases in components/Dialogs/StoreToken.tsx",
"Back it up!": "請備份!",
"Done": "完成",