Skip to content

Commit

Permalink
With timeout (#307)
Browse files Browse the repository at this point in the history
* add getUnixTimestamp and withTimeout fns - update getUnixTimestampFromDaysAgo

* update imports

* fmt
  • Loading branch information
BilligsterUser committed Feb 14, 2024
1 parent 589d372 commit e774139
Show file tree
Hide file tree
Showing 2 changed files with 50 additions and 34 deletions.
60 changes: 30 additions & 30 deletions assets/translations/hu.json
Original file line number Diff line number Diff line change
Expand Up @@ -34,26 +34,26 @@
"increaseCounterHint": "Biztosan növelni szeretnéd a számlálókat? Ezt csak akkor szabad megtenni, ha biztos vagy benne, hogy a számlálók nincsenek szinkronban.",
"noMintForCounter": "Nincsenek verdéid amelyek számlálóit növelhetnéd.",
"counterIncreased": "Számlálók növelve ennyivel: {{counterIncreased}}",
"doneSafety": "Majdnem kész... Biztonsági ellenőrzés",
"restoreErr": "Hiba történt a tárca visszaállítása közben.",
"noProofsRestored": "Nem találtunk bizonylatot a tárca helyreállításához.",
"dontClose": "Kérjük ne zárd be az alkalmazást a folyamat közben.",
"recoveryHint": "Írd be vagy illeszd be a 12 szavas jelmondatot a megfelelő sorrendben, szóközökkel elválasztva.",
"walletRecovery": "Tárca visszaállítása",
"walletRecoveryHint": "Használd a helyreállító jelmondatot a tárcád visszaállításához.",
"seedBackup": "Helyreállító jelmondat",
"12WordMnemonic": "12 szóból álló",
"secureWallet": "Biztonságos tárca",
"secureWalletHint": "Generálj és jegyezd le a helyreállító jelmondatot a tárcád biztonságának érdekében.",
"quickWallet": "Gyors tárca",
"quickWalletHint": "Hozz létre azonnal egy új tárcát. A helyreállító jelmondat később is elkészíthető.",
"skipSeedHint": "Kihagyhatod ezt a folyamatot és később is készíthetsz egy helyreállító jelmondatot.",
"mnemonicHint": "A helyreállító jelmondat többé nem jelenik meg újra. Írd le és soha ne oszd meg senkivel.",
"confirmMnemonicErr": "Helytelen szó! Győződj meg róla, hogy a helyreállító jelmondat szavait helyesen jegyezted le a megfelelő sorrendben.",
"selectRestoreMint": "Kérjük válaszd ki azt a verdét, amelyet a tőkéd visszaállításához fogunk használni.",
"recoveringWallet": "A verde visszaállítja a tőkédet...",
"seedEnabled": "Helyreállító jelmondat engedélyezve!",
"confirmSeed": "Kérjük erősítsd meg a helyreállító jelmondatot a helyes szavak begépelésével.",
"doneSafety": "Majdnem kész... Biztonsági ellenőrzés",
"restoreErr": "Hiba történt a tárca visszaállítása közben.",
"noProofsRestored": "Nem találtunk bizonylatot a tárca helyreállításához.",
"dontClose": "Kérjük ne zárd be az alkalmazást a folyamat közben.",
"recoveryHint": "Írd be vagy illeszd be a 12 szavas jelmondatot a megfelelő sorrendben, szóközökkel elválasztva.",
"walletRecovery": "Tárca visszaállítása",
"walletRecoveryHint": "Használd a helyreállító jelmondatot a tárcád visszaállításához.",
"seedBackup": "Helyreállító jelmondat",
"12WordMnemonic": "12 szóból álló",
"secureWallet": "Biztonságos tárca",
"secureWalletHint": "Generálj és jegyezd le a helyreállító jelmondatot a tárcád biztonságának érdekében.",
"quickWallet": "Gyors tárca",
"quickWalletHint": "Hozz létre azonnal egy új tárcát. A helyreállító jelmondat később is elkészíthető.",
"skipSeedHint": "Kihagyhatod ezt a folyamatot és később is készíthetsz egy helyreállító jelmondatot.",
"mnemonicHint": "A helyreállító jelmondat többé nem jelenik meg újra. Írd le és soha ne oszd meg senkivel.",
"confirmMnemonicErr": "Helytelen szó! Győződj meg róla, hogy a helyreállító jelmondat szavait helyesen jegyezted le a megfelelő sorrendben.",
"selectRestoreMint": "Kérjük válaszd ki azt a verdét, amelyet a tőkéd visszaállításához fogunk használni.",
"recoveringWallet": "A verde visszaállítja a tőkédet...",
"seedEnabled": "Helyreállító jelmondat engedélyezve!",
"confirmSeed": "Kérjük erősítsd meg a helyreállító jelmondatot a helyes szavak begépelésével.",
"aboutToLeaveTo": "Épp kilépni készülsz",
"accept": "Elfogad",
"addEnutsMint": "eNuts verde használata",
Expand Down Expand Up @@ -98,16 +98,16 @@
"delHistoryQ": "Eltávolítod az előzményeket?",
"resetQ": "Visszaállítod a tárcát?",
"delHistoryTxt": "Az adatok helyreállítása ezután nem lehetséges.",
"disclaimer": "Megjegyzés",
"restoreDisclaimer": "Ez az új funkció még kísérleti jellegű ezért óvatosan kell vele eljárni. Nem ajánlott nagyobb tőkével kipróbálni. Csak saját felelősségre használd. Sem a szoftver fejlesztői, közreműködői vagy karbantartói nem vonhatók felelősségre semmilyen vélt vagy valós kárért, veszteségért vagy hátrányért amely ennek funkció használatából ered.",
"restoreBattery": "Legalább 20% akkumulátor.",
"restoreBatteryHint": "Azt javasoljuk, hogy a visszaállítási folyamat megkezdése előtt legalább 20% akkumulátor álljon a rendelkezésre. Az adatok mennyiségétől függően a folyamat eltarthat egy ideig.",
"ecashPayment": "Ecash fizetés",
"restoreWifi": "Használd a wifi-t.",
"restoreWifiHint": "Azt javasoljuk, hogy a visszaállítási folyamat során használj stabil wifi kapcsolatot, hogy elkerüld a megszakításokat és biztosítsa a gyors és biztonságos helyreállítást.",
"restoreForeground": "Tartsd az alkalmazást az előtérben.",
"restoreForegroundHint": "Kérjük tartsd az alkalmazást az előtérben és ne zárd be a visszaállítási folyamat közben, hogy elkerüld a megszakításokat.",
"seedMigrationHint": "Helyreállító jelmondat minden verdéhez alkalmazható amellyel kapcsolatba lépsz, így jegyezd fel a gyakran használt verdék URL-jét. Ha van egyenleged, hozz létre és igényelj saját token-t a kívánt verdével a jelmondat készítése után. Ismételd meg ezt minden verdével amely tőkéjét biztonságba szeretnéd helyezni.",
"disclaimer": "Megjegyzés",
"restoreDisclaimer": "Ez az új funkció még kísérleti jellegű ezért óvatosan kell vele eljárni. Nem ajánlott nagyobb tőkével kipróbálni. Csak saját felelősségre használd. Sem a szoftver fejlesztői, közreműködői vagy karbantartói nem vonhatók felelősségre semmilyen vélt vagy valós kárért, veszteségért vagy hátrányért amely ennek funkció használatából ered.",
"restoreBattery": "Legalább 20% akkumulátor.",
"restoreBatteryHint": "Azt javasoljuk, hogy a visszaállítási folyamat megkezdése előtt legalább 20% akkumulátor álljon a rendelkezésre. Az adatok mennyiségétől függően a folyamat eltarthat egy ideig.",
"ecashPayment": "Ecash fizetés",
"restoreWifi": "Használd a wifi-t.",
"restoreWifiHint": "Azt javasoljuk, hogy a visszaállítási folyamat során használj stabil wifi kapcsolatot, hogy elkerüld a megszakításokat és biztosítsa a gyors és biztonságos helyreállítást.",
"restoreForeground": "Tartsd az alkalmazást az előtérben.",
"restoreForegroundHint": "Kérjük tartsd az alkalmazást az előtérben és ne zárd be a visszaállítási folyamat közben, hogy elkerüld a megszakításokat.",
"seedMigrationHint": "Helyreállító jelmondat minden verdéhez alkalmazható amellyel kapcsolatba lépsz, így jegyezd fel a gyakran használt verdék URL-jét. Ha van egyenleged, hozz létre és igényelj saját token-t a kívánt verdével a jelmondat készítése után. Ismételd meg ezt minden verdével amely tőkéjét biztonságba szeretnéd helyezni.",
"english": "Angol",
"swahili": "Szuahéli",
"spanish": "Spanyol",
Expand Down
24 changes: 20 additions & 4 deletions src/util/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import type { ISectionEntry } from '@gandlaf21/bolt11-decode'
import { l } from '@log'
import type { ILnUrl, IMintBalWithName, IProofSelection } from '@model'
import { IContact } from '@src/model/nostr'
import type { Buffer } from 'buffer/'
import { Buffer } from 'buffer/'
import * as Clipboard from 'expo-clipboard'
import { Linking, Share, Vibration } from 'react-native'

Expand Down Expand Up @@ -381,7 +381,23 @@ export function formatSatStr(
}

export function getUnixTimestampFromDaysAgo(days: number) {
const date = new Date()
date.setDate(date.getDate() - days)
return Math.floor(date.getTime() / 1000)
const oneDayInMs = 24 * 60 * 60 * 1000
return Math.ceil(getUnixTimestamp() - days * oneDayInMs)
}

export function getUnixTimestamp() {
return Math.ceil(new Date().getTime() / 1000)
}

export function withTimeout<T>(promis: Promise<T>, ms: number) {
return Promise.race([
promis,
timeout<T>(ms),
])
}

export async function timeout<T>(ms = 1000) {
if (ms < 0) { return {} as unknown as T }// should never happen
await sleep(ms)
throw new Error(`promise was timed out in ${ms} ms, by withTimeout`)
}

0 comments on commit e774139

Please sign in to comment.