mirror of
https://github.com/BlueWallet/BlueWallet.git
synced 2025-03-26 08:55:56 +01:00
REF: i18n BlueComponents
This commit is contained in:
parent
540011b510
commit
a8b77b4fcd
3 changed files with 44 additions and 25 deletions
|
@ -32,10 +32,11 @@ import WalletGradient from './class/wallet-gradient';
|
|||
import ToolTip from 'react-native-tooltip';
|
||||
import { BlurView } from '@react-native-community/blur';
|
||||
import showPopupMenu from 'react-native-popup-menu-android';
|
||||
import NetworkTransactionFees, { NetworkTransactionFeeType } from './models/networkTransactionFees';
|
||||
import NetworkTransactionFees, { NetworkTransactionFee, NetworkTransactionFeeType } from './models/networkTransactionFees';
|
||||
import Biometric from './class/biometrics';
|
||||
import { encodeUR } from 'bc-ur/dist';
|
||||
import QRCode from 'react-native-qrcode-svg';
|
||||
import AsyncStorage from '@react-native-community/async-storage';
|
||||
import { useTheme } from '@react-navigation/native';
|
||||
import { BlueCurrentTheme } from './components/themes';
|
||||
import loc, { formatBalance, formatBalanceWithoutSuffix, formatBalancePlain, removeTrailingZeros, transactionTimeToReadable } from './loc';
|
||||
|
@ -435,14 +436,11 @@ export class BlueButtonLink extends Component {
|
|||
|
||||
export const BlueAlertWalletExportReminder = ({ onSuccess = () => {}, onFailure }) => {
|
||||
Alert.alert(
|
||||
'Wallet',
|
||||
`Have you saved your wallet's backup phrase? This backup phrase is required to access your funds in case you lose this device. Without the backup phrase, your funds will be permanently lost.`,
|
||||
loc.wallets.details_title,
|
||||
loc.pleasebackup.ask,
|
||||
[
|
||||
{ text: 'Yes, I have', onPress: onSuccess, style: 'cancel' },
|
||||
{
|
||||
text: 'No, I have not',
|
||||
onPress: onFailure,
|
||||
},
|
||||
{ text: loc.pleasebackup.ask_yes, onPress: onSuccess, style: 'cancel' },
|
||||
{ text: loc.pleasebackup.ask_no, onPress: onFailure },
|
||||
],
|
||||
{ cancelable: false },
|
||||
);
|
||||
|
@ -988,7 +986,7 @@ export class BlueUseAllFundsButton extends Component {
|
|||
paddingBottom: 12,
|
||||
}}
|
||||
>
|
||||
Total:
|
||||
{loc.send.input_total}
|
||||
</Text>
|
||||
{this.props.wallet.allowSendMax() && this.props.wallet.getBalance() > 0 ? (
|
||||
<BlueButtonLink
|
||||
|
@ -1016,7 +1014,7 @@ export class BlueUseAllFundsButton extends Component {
|
|||
<View style={{ flexDirection: 'row', justifyContent: 'flex-end', alignItems: 'flex-end' }}>
|
||||
<BlueButtonLink
|
||||
style={{ paddingRight: 8, paddingLeft: 0, paddingTop: 12, paddingBottom: 12 }}
|
||||
title="Done"
|
||||
title={loc.send.input_done}
|
||||
onPress={() => Keyboard.dismiss()}
|
||||
/>
|
||||
</View>
|
||||
|
@ -1046,7 +1044,7 @@ export class BlueDismissKeyboardInputAccessory extends Component {
|
|||
alignItems: 'center',
|
||||
}}
|
||||
>
|
||||
<BlueButtonLink title="Done" onPress={() => Keyboard.dismiss()} />
|
||||
<BlueButtonLink title={loc.send.input_done} onPress={() => Keyboard.dismiss()} />
|
||||
</View>
|
||||
</InputAccessoryView>
|
||||
);
|
||||
|
@ -1072,9 +1070,9 @@ export class BlueDoneAndDismissKeyboardInputAccessory extends Component {
|
|||
maxHeight: 44,
|
||||
}}
|
||||
>
|
||||
<BlueButtonLink title="Clear" onPress={this.props.onClearTapped} />
|
||||
<BlueButtonLink title="Paste" onPress={this.onPasteTapped} />
|
||||
<BlueButtonLink title="Done" onPress={() => Keyboard.dismiss()} />
|
||||
<BlueButtonLink title={loc.send.input_clear} onPress={this.props.onClearTapped} />
|
||||
<BlueButtonLink title={loc.send.input_paste} onPress={this.onPasteTapped} />
|
||||
<BlueButtonLink title={loc.send.input_done} onPress={() => Keyboard.dismiss()} />
|
||||
</View>
|
||||
);
|
||||
|
||||
|
@ -1331,8 +1329,6 @@ export class BlueTransactionOutgoingIcon extends Component {
|
|||
}
|
||||
}
|
||||
|
||||
//
|
||||
|
||||
export class BlueReceiveButtonIcon extends Component {
|
||||
render() {
|
||||
return (
|
||||
|
@ -1856,7 +1852,7 @@ const WalletCarouselItem = ({ item, index, onPress, handleLongPress }) => {
|
|||
color: BlueCurrentTheme.colors.inverseForegroundColor,
|
||||
}}
|
||||
>
|
||||
An error was encountered when attempting to import this wallet.
|
||||
{loc.wallets.list_import_error}
|
||||
</Text>
|
||||
) : (
|
||||
<ActivityIndicator style={{ marginTop: 40 }} />
|
||||
|
@ -2640,7 +2636,7 @@ export class DynamicQRCode extends Component {
|
|||
<BlueSpacing20 />
|
||||
<View>
|
||||
<Text style={animatedQRCodeStyle.text}>
|
||||
{this.state.index + 1} of {this.state.total}
|
||||
{loc.formatString(loc._.of, { number: this.state.index + 1, total: this.state.total })}
|
||||
</Text>
|
||||
</View>
|
||||
<BlueSpacing20 />
|
||||
|
@ -2649,25 +2645,25 @@ export class DynamicQRCode extends Component {
|
|||
style={[animatedQRCodeStyle.button, { width: '25%', alignItems: 'flex-start' }]}
|
||||
onPress={this.moveToPreviousFragment}
|
||||
>
|
||||
<Text style={animatedQRCodeStyle.text}>Previous</Text>
|
||||
<Text style={animatedQRCodeStyle.text}>{loc.send.dynamic_prev}</Text>
|
||||
</TouchableOpacity>
|
||||
<TouchableOpacity
|
||||
style={[animatedQRCodeStyle.button, { width: '50%' }]}
|
||||
onPress={this.state.intervalHandler ? this.stopAutoMove : this.startAutoMove}
|
||||
>
|
||||
<Text style={animatedQRCodeStyle.text}>{this.state.intervalHandler ? 'Stop' : 'Start'}</Text>
|
||||
<Text style={animatedQRCodeStyle.text}>{this.state.intervalHandler ? loc.send.dynamic_stop : loc.send.dynamic_start}</Text>
|
||||
</TouchableOpacity>
|
||||
<TouchableOpacity
|
||||
style={[animatedQRCodeStyle.button, { width: '25%', alignItems: 'flex-end' }]}
|
||||
onPress={this.moveToNextFragment}
|
||||
>
|
||||
<Text style={animatedQRCodeStyle.text}>Next</Text>
|
||||
<Text style={animatedQRCodeStyle.text}>{loc.send.dynamic_next}</Text>
|
||||
</TouchableOpacity>
|
||||
</View>
|
||||
</View>
|
||||
) : (
|
||||
<View>
|
||||
<Text>Initialing</Text>
|
||||
<Text>{loc.send.dynamic_init}</Text>
|
||||
</View>
|
||||
);
|
||||
}
|
||||
|
|
16
loc/en.json
16
loc/en.json
|
@ -126,6 +126,9 @@
|
|||
"title": "Plausible Deniability"
|
||||
},
|
||||
"pleasebackup": {
|
||||
"ask": "Have you saved your wallet's backup phrase? This backup phrase is required to access your funds in case you lose this device. Without the backup phrase, your funds will be permanently lost.",
|
||||
"ask_no": "No, I have not",
|
||||
"ask_yes": "Yes, I have",
|
||||
"ok": "OK, I wrote this down!",
|
||||
"ok_lnd": "OK, I have saved it.",
|
||||
"text": "Please take a moment to write down this mnemonic phrase on a piece of paper. It's your backup you can use to restore the wallet on other device.",
|
||||
|
@ -193,7 +196,16 @@
|
|||
"details_total_exceeds_balance": "The sending amount exceeds the available balance.",
|
||||
"details_wallet_before_tx": "Before creating a transaction, you must first add a Bitcoin wallet.",
|
||||
"details_wallet_selection": "Wallet Selection",
|
||||
"dynamic_init": "Initialing",
|
||||
"dynamic_next": "Next",
|
||||
"dynamic_prev": "Previous",
|
||||
"dynamic_start": "Start",
|
||||
"dynamic_stop": "Stop",
|
||||
"header": "Send",
|
||||
"input_clear": "Clear",
|
||||
"input_done": "Done",
|
||||
"input_paste": "Paste",
|
||||
"input_total": "Total:",
|
||||
"permission_camera_message": "We need your permission to use your camera",
|
||||
"permission_camera_title": "Permission to use camera",
|
||||
"permission_storage_later": "Ask Me Later",
|
||||
|
@ -270,9 +282,6 @@
|
|||
"storage_encrypted": "Storage: encrypted",
|
||||
"storage_not_encrypted": "Storage: not encrypted"
|
||||
},
|
||||
"test1": {
|
||||
"test2": "test3"
|
||||
},
|
||||
"transactions": {
|
||||
"cancel_explain": "We will replace this transaction with the one that pays you and has higher fees. This effectively cancels transaction. This is called RBF - Replace By Fee.",
|
||||
"cancel_no": "This transaction is not replaceable",
|
||||
|
@ -367,6 +376,7 @@
|
|||
"list_empty_txs2": "Start with your wallet",
|
||||
"list_empty_txs2_lightning": "\nTo start using it tap on \"manage funds\" and topup your balance.",
|
||||
"list_header": "A wallet represents a pair of a secret (private key) and an addressyou can share to receive coins.",
|
||||
"list_import_error": "An error was encountered when attempting to import this wallet.",
|
||||
"list_import_problem": "There was a problem importing this wallet",
|
||||
"list_latest_transaction": "latest transaction",
|
||||
"list_long_choose": "Choose Photo",
|
||||
|
|
13
loc/ru.json
13
loc/ru.json
|
@ -107,6 +107,9 @@
|
|||
"title": "Правдоподобная имитация"
|
||||
},
|
||||
"pleasebackup": {
|
||||
"ask": "Вы сохранили seed фразу вашего кошелька? Эта резервная фраза необходима для восстановления доступа к вашим средствам, если вы потеряете это устройство. Без резервной фразы ваши средства будут навсегда потеряны.",
|
||||
"ask_no": "Нет, я не сохранил",
|
||||
"ask_yes": "Да, я сохранил",
|
||||
"ok": "Я всё записал!",
|
||||
"ok_lnd": "Я всё сохранил.",
|
||||
"text": "Пожалуйста, запишите эту мнемоническую фразу на листе бумаги. Это ваша резервная копия, которую вы можете использовать для восстановления кошелька на другом устройстве.",
|
||||
|
@ -174,7 +177,16 @@
|
|||
"details_total_exceeds_balance": "Общая сумма превышает баланс.",
|
||||
"details_wallet_before_tx": "Перед созданием транзакции нужно сделать Bitcoin кошелёк.",
|
||||
"details_wallet_selection": "Выбор Кошелька",
|
||||
"dynamic_init": "Загрузка",
|
||||
"dynamic_next": "Следующий",
|
||||
"dynamic_prev": "Предыдущий",
|
||||
"dynamic_start": "Старт",
|
||||
"dynamic_stop": "Стоп",
|
||||
"header": "Отправить",
|
||||
"input_clear": "Очистить",
|
||||
"input_done": "Готово",
|
||||
"input_paste": "Вставить",
|
||||
"input_total": "Всего:",
|
||||
"permission_camera_message": "Нужно ваше разрешение на использование камеры",
|
||||
"permission_camera_title": "Разрешите пользоваться камерой",
|
||||
"permission_storage_later": "Спроси меня позже",
|
||||
|
@ -343,6 +355,7 @@
|
|||
"list_empty_txs2": " ",
|
||||
"list_empty_txs2_lightning": "\nДля начала использования нажми \"Мои средства\" и пополни баланс.",
|
||||
"list_header": "Кошелек - это секретный (приватный) ключ и соответствующий ему адрес на который можно получать Bitcoin",
|
||||
"list_import_error": "При импорте этого кошелька возникла ошибка.",
|
||||
"list_import_problem": "Ошибка при импорте кошелька",
|
||||
"list_latest_transaction": "Последняя транзакция",
|
||||
"list_long_choose": "Выбрать фото",
|
||||
|
|
Loading…
Add table
Reference in a new issue