From 2d8261e7ad402f5dd00222fc7d8e52d84c415bab Mon Sep 17 00:00:00 2001 From: JC Date: Wed, 16 Oct 2024 09:18:10 -0600 Subject: [PATCH] fix: show error when none of the servers work --- app/LoadingApp/LoadingApp.tsx | 62 ++++++++++++++++++++++++----------- app/translations/en.json | 3 +- app/translations/es.json | 3 +- app/translations/pt.json | 3 +- app/translations/ru.json | 3 +- package.json | 1 + yarn.lock | 8 +++++ 7 files changed, 59 insertions(+), 24 deletions(-) diff --git a/app/LoadingApp/LoadingApp.tsx b/app/LoadingApp/LoadingApp.tsx index 4fde56875..f1154dce7 100644 --- a/app/LoadingApp/LoadingApp.tsx +++ b/app/LoadingApp/LoadingApp.tsx @@ -460,7 +460,8 @@ export class LoadingAppClass extends Component { + selectTheBestServer = async (aDifferentOne: boolean): Promise => { // avoiding obsolete ones - let withMessage: boolean = true; + let someServerIsWorking: boolean = true; const actualServer = this.state.server; const server = await selectingServer( serverUris(this.state.translate).filter( @@ -664,10 +665,10 @@ export class LoadingAppClass extends Component Promise = async (server: ServerType) => { - const resp: string = await RPCModule.getLatestBlock(server.uri); - //console.log('check server', resp); - - if (resp && !resp.toLowerCase().startsWith(GlobalConst.error)) { + const s = { + uri: server.uri, + chainName: server.chainName, + region: '', + default: false, + latency: null, + obsolete: false, + } as ServerUrisType; + const serverChecked = await selectingServer([s]); + if (serverChecked && serverChecked.latency) { return true; } else { return false; @@ -737,20 +745,34 @@ export class LoadingAppClass extends Component diff --git a/app/translations/en.json b/app/translations/en.json index 1a93f15bc..87697a99e 100644 --- a/app/translations/en.json +++ b/app/translations/en.json @@ -94,7 +94,8 @@ "serverfirsttry": "An error occurred while trying to connect to the above server, currently checking the servers on the list.", "serversecondtry": "It doesn't seem to be a problem with the server. Someting else is happening.", "alert-donation-title": "TIP ZINGOLABS", - "alert-donation-body": "Do you want to help ZingoLabs make Zcash more useful? Opt in to tip one Zenny (0.01 ZEC) to ZingoLabs with each transaction! If so, press confirm, otherwise press Cancel." + "alert-donation-body": "Do you want to help ZingoLabs make Zcash more useful? Opt in to tip one Zenny (0.01 ZEC) to ZingoLabs with each transaction! If so, press confirm, otherwise press Cancel.", + "noservers": "None of the servers on the list are available, it is probably a connection error." }, "loadedapp": { "about": "About Zingo", diff --git a/app/translations/es.json b/app/translations/es.json index 5dfb196e1..71f070d12 100644 --- a/app/translations/es.json +++ b/app/translations/es.json @@ -94,7 +94,8 @@ "serverfirsttry": "Se produjo un error al intentar conectarse al servidor activo, actualmente verificando los servidores en la lista.", "serversecondtry": "No parece haber ningún problema con el servidor. Ocurre algo diferente.", "alert-donation-title": "APOYAR A ZINGOLABS", - "alert-donation-body": "¿Quieres ayudar a ZingoLabs a que Zcash sea más útil? Opta por dar una propina de un Zenny (0.01 ZEC) a ZingoLabs con cada transacción! Si es así, presione confirmar, de lo contrario presione Cancelar." + "alert-donation-body": "¿Quieres ayudar a ZingoLabs a que Zcash sea más útil? Opta por dar una propina de un Zenny (0.01 ZEC) a ZingoLabs con cada transacción! Si es así, presione confirmar, de lo contrario presione Cancelar.", + "noservers": "Ninguno de los servidores de la lista esta disponible, probablemente se trata de un error de conexion." }, "loadedapp": { "about": "Sobre Zingo", diff --git a/app/translations/pt.json b/app/translations/pt.json index 2b736860f..4506c5373 100644 --- a/app/translations/pt.json +++ b/app/translations/pt.json @@ -94,7 +94,8 @@ "serverfirsttry": "Ocorreu um erro ao tentar conectar-se ao servidor acima, atualmente verificando os servidores na lista.", "serversecondtry": "Não parece haver nenhum problema com o servidor. Algo mais está acontecendo.", "alert-donation-title": "APOIAR A ZINGOLABS", - "alert-donation-body": "Você quer ajudar o ZingoLabs a tornar o Zcash mais útil? Opte por dar uma gorjeta de um Zenny (0.01 ZEC) para ZingoLabs em cada transação! Se sim, pressione confirmar, caso contrário, pressione Cancelar." + "alert-donation-body": "Você quer ajudar o ZingoLabs a tornar o Zcash mais útil? Opte por dar uma gorjeta de um Zenny (0.01 ZEC) para ZingoLabs em cada transação! Se sim, pressione confirmar, caso contrário, pressione Cancelar.", + "noservers": "Nenhum dos servidores da lista está disponível, provavelmente é um erro de conexão." }, "loadedapp": { "about": "Sobre a Zingo", diff --git a/app/translations/ru.json b/app/translations/ru.json index dc105b909..eef6ecfb5 100644 --- a/app/translations/ru.json +++ b/app/translations/ru.json @@ -94,7 +94,8 @@ "serverfirsttry": "Произошла ошибка при попытке подключения к указанному выше серверу, в настоящее время проверяются серверы в списке.", "serversecondtry": "Похоже, что с этим сервером нет никаких проблем. Проблема в чём-то другом.", "alert-donation-title": "ПОДДЕРЖИВАЕМЫЕ ZINGOLABS", - "alert-donation-body": "Хотите помочь ZingoLabs сделать Zcash более полезным? Подпишитесь на чаевые в размере одного Zenny (0.01 ZEC) в пользу ZingoLabs за каждую транзакцию! Если да, нажмите «Подтвердить», в противном случае нажмите «Отмена»." + "alert-donation-body": "Хотите помочь ZingoLabs сделать Zcash более полезным? Подпишитесь на чаевые в размере одного Zenny (0.01 ZEC) в пользу ZingoLabs за каждую транзакцию! Если да, нажмите «Подтвердить», в противном случае нажмите «Отмена».", + "noservers": "Ни один из серверов в списке недоступен, возможно, это ошибка подключения." }, "loadedapp": { "about": "О Zingo", diff --git a/package.json b/package.json index 703c76071..9a28c9d1d 100644 --- a/package.json +++ b/package.json @@ -100,6 +100,7 @@ "babel-plugin-dynamic-import-node": "^2.3.3", "detox": "20.27.2", "eslint": "^8.19.0", + "eslint-plugin-ft-flow": "^3.0.11", "jest": "^29.2.1", "metro-react-native-babel-preset": "^0.76.9", "prettier": "^2.4.1", diff --git a/yarn.lock b/yarn.lock index 50ea228e0..5e398a9d0 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4161,6 +4161,14 @@ eslint-plugin-ft-flow@^2.0.1: lodash "^4.17.21" string-natural-compare "^3.0.1" +eslint-plugin-ft-flow@^3.0.11: + version "3.0.11" + resolved "https://registry.yarnpkg.com/eslint-plugin-ft-flow/-/eslint-plugin-ft-flow-3.0.11.tgz#64654dad277104fc45aef8d009c4a51057ea1250" + integrity sha512-6ZJ4KYGYjIosCcU883zBBT1nFsKP58xrTOwguiw3/HRq0EpYAyhrF1nCGbK7V23cmKtPXMpDfl8qPupt5s5W8w== + dependencies: + lodash "^4.17.21" + string-natural-compare "^3.0.1" + eslint-plugin-jest@^26.5.3: version "26.9.0" resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-26.9.0.tgz#7931c31000b1c19e57dbfb71bbf71b817d1bf949"