mirror of
https://github.com/balzack/databag.git
synced 2025-04-23 01:55:17 +00:00
added settings context
This commit is contained in:
parent
b206e40d6d
commit
d7bfbfd22f
@ -1,103 +1,102 @@
|
||||
import React, { useState } from 'react';
|
||||
import { AppContextProvider } from './src/context/AppContext';
|
||||
import { SettingsContextProvider } from './src/context/SettingsContext';
|
||||
import { styles } from './App.styled';
|
||||
import React, {useState} from 'react';
|
||||
import {AppContextProvider} from './src/context/AppContext';
|
||||
import {SettingsContextProvider} from './src/context/SettingsContext';
|
||||
import {styles} from './App.styled';
|
||||
|
||||
import {SafeAreaView, StyleSheet, useColorScheme, View} from 'react-native';
|
||||
import {
|
||||
SafeAreaView,
|
||||
StyleSheet,
|
||||
useColorScheme,
|
||||
View,
|
||||
} from 'react-native';
|
||||
import {
|
||||
MD3LightTheme, MD3DarkTheme, TextInput, PaperProvider } from 'react-native-paper';
|
||||
MD3LightTheme,
|
||||
MD3DarkTheme,
|
||||
TextInput,
|
||||
PaperProvider,
|
||||
} from 'react-native-paper';
|
||||
|
||||
const databagColors = {
|
||||
"light": {
|
||||
"primary": "rgb(0, 108, 71)",
|
||||
"onPrimary": "rgb(255, 255, 255)",
|
||||
"primaryContainer": "rgb(142, 247, 193)",
|
||||
"onPrimaryContainer": "rgb(0, 33, 19)",
|
||||
"secondary": "rgb(121, 89, 0)",
|
||||
"onSecondary": "rgb(255, 255, 255)",
|
||||
"secondaryContainer": "rgb(255, 223, 160)",
|
||||
"onSecondaryContainer": "rgb(38, 26, 0)",
|
||||
"tertiary": "rgb(60, 100, 114)",
|
||||
"onTertiary": "rgb(255, 255, 255)",
|
||||
"tertiaryContainer": "rgb(192, 233, 250)",
|
||||
"onTertiaryContainer": "rgb(0, 31, 40)",
|
||||
"error": "rgb(186, 26, 26)",
|
||||
"onError": "rgb(255, 255, 255)",
|
||||
"errorContainer": "rgb(255, 218, 214)",
|
||||
"onErrorContainer": "rgb(65, 0, 2)",
|
||||
"background": "rgb(251, 253, 248)",
|
||||
"onBackground": "rgb(25, 28, 26)",
|
||||
"surface": "rgb(251, 253, 248)",
|
||||
"onSurface": "rgb(25, 28, 26)",
|
||||
"surfaceVariant": "rgb(220, 229, 220)",
|
||||
"onSurfaceVariant": "rgb(64, 73, 67)",
|
||||
"outline": "rgb(112, 121, 114)",
|
||||
"outlineVariant": "rgb(192, 201, 193)",
|
||||
"shadow": "rgb(0, 0, 0)",
|
||||
"scrim": "rgb(0, 0, 0)",
|
||||
"inverseSurface": "rgb(46, 49, 46)",
|
||||
"inverseOnSurface": "rgb(239, 241, 237)",
|
||||
"inversePrimary": "rgb(113, 218, 166)",
|
||||
"elevation": {
|
||||
"level0": "transparent",
|
||||
"level1": "rgb(238, 246, 239)",
|
||||
"level2": "rgb(231, 241, 234)",
|
||||
"level3": "rgb(223, 237, 229)",
|
||||
"level4": "rgb(221, 236, 227)",
|
||||
"level5": "rgb(216, 233, 223)"
|
||||
light: {
|
||||
primary: 'rgb(0, 108, 71)',
|
||||
onPrimary: 'rgb(255, 255, 255)',
|
||||
primaryContainer: 'rgb(142, 247, 193)',
|
||||
onPrimaryContainer: 'rgb(0, 33, 19)',
|
||||
secondary: 'rgb(121, 89, 0)',
|
||||
onSecondary: 'rgb(255, 255, 255)',
|
||||
secondaryContainer: 'rgb(255, 223, 160)',
|
||||
onSecondaryContainer: 'rgb(38, 26, 0)',
|
||||
tertiary: 'rgb(60, 100, 114)',
|
||||
onTertiary: 'rgb(255, 255, 255)',
|
||||
tertiaryContainer: 'rgb(192, 233, 250)',
|
||||
onTertiaryContainer: 'rgb(0, 31, 40)',
|
||||
error: 'rgb(186, 26, 26)',
|
||||
onError: 'rgb(255, 255, 255)',
|
||||
errorContainer: 'rgb(255, 218, 214)',
|
||||
onErrorContainer: 'rgb(65, 0, 2)',
|
||||
background: 'rgb(251, 253, 248)',
|
||||
onBackground: 'rgb(25, 28, 26)',
|
||||
surface: 'rgb(251, 253, 248)',
|
||||
onSurface: 'rgb(25, 28, 26)',
|
||||
surfaceVariant: 'rgb(220, 229, 220)',
|
||||
onSurfaceVariant: 'rgb(64, 73, 67)',
|
||||
outline: 'rgb(112, 121, 114)',
|
||||
outlineVariant: 'rgb(192, 201, 193)',
|
||||
shadow: 'rgb(0, 0, 0)',
|
||||
scrim: 'rgb(0, 0, 0)',
|
||||
inverseSurface: 'rgb(46, 49, 46)',
|
||||
inverseOnSurface: 'rgb(239, 241, 237)',
|
||||
inversePrimary: 'rgb(113, 218, 166)',
|
||||
elevation: {
|
||||
level0: 'transparent',
|
||||
level1: 'rgb(238, 246, 239)',
|
||||
level2: 'rgb(231, 241, 234)',
|
||||
level3: 'rgb(223, 237, 229)',
|
||||
level4: 'rgb(221, 236, 227)',
|
||||
level5: 'rgb(216, 233, 223)',
|
||||
},
|
||||
"surfaceDisabled": "rgba(25, 28, 26, 0.12)",
|
||||
"onSurfaceDisabled": "rgba(25, 28, 26, 0.38)",
|
||||
"backdrop": "rgba(42, 50, 45, 0.4)"
|
||||
surfaceDisabled: 'rgba(25, 28, 26, 0.12)',
|
||||
onSurfaceDisabled: 'rgba(25, 28, 26, 0.38)',
|
||||
backdrop: 'rgba(42, 50, 45, 0.4)',
|
||||
},
|
||||
"dark": {
|
||||
"primary": "rgb(113, 218, 166)",
|
||||
"onPrimary": "rgb(0, 56, 35)",
|
||||
"primaryContainer": "rgb(0, 82, 52)",
|
||||
"onPrimaryContainer": "rgb(142, 247, 193)",
|
||||
"secondary": "rgb(248, 189, 42)",
|
||||
"onSecondary": "rgb(64, 45, 0)",
|
||||
"secondaryContainer": "rgb(92, 67, 0)",
|
||||
"onSecondaryContainer": "rgb(255, 223, 160)",
|
||||
"tertiary": "rgb(164, 205, 221)",
|
||||
"onTertiary": "rgb(5, 53, 66)",
|
||||
"tertiaryContainer": "rgb(35, 76, 89)",
|
||||
"onTertiaryContainer": "rgb(192, 233, 250)",
|
||||
"error": "rgb(255, 180, 171)",
|
||||
"onError": "rgb(105, 0, 5)",
|
||||
"errorContainer": "rgb(147, 0, 10)",
|
||||
"onErrorContainer": "rgb(255, 180, 171)",
|
||||
"background": "rgb(25, 28, 26)",
|
||||
"onBackground": "rgb(225, 227, 223)",
|
||||
"surface": "rgb(25, 28, 26)",
|
||||
"onSurface": "rgb(225, 227, 223)",
|
||||
"surfaceVariant": "rgb(64, 73, 67)",
|
||||
"onSurfaceVariant": "rgb(192, 201, 193)",
|
||||
"outline": "rgb(138, 147, 140)",
|
||||
"outlineVariant": "rgb(64, 73, 67)",
|
||||
"shadow": "rgb(0, 0, 0)",
|
||||
"scrim": "rgb(0, 0, 0)",
|
||||
"inverseSurface": "rgb(225, 227, 223)",
|
||||
"inverseOnSurface": "rgb(46, 49, 46)",
|
||||
"inversePrimary": "rgb(0, 108, 71)",
|
||||
"elevation": {
|
||||
"level0": "transparent",
|
||||
"level1": "rgb(29, 38, 33)",
|
||||
"level2": "rgb(32, 43, 37)",
|
||||
"level3": "rgb(35, 49, 41)",
|
||||
"level4": "rgb(36, 51, 43)",
|
||||
"level5": "rgb(37, 55, 46)"
|
||||
dark: {
|
||||
primary: 'rgb(113, 218, 166)',
|
||||
onPrimary: 'rgb(0, 56, 35)',
|
||||
primaryContainer: 'rgb(0, 82, 52)',
|
||||
onPrimaryContainer: 'rgb(142, 247, 193)',
|
||||
secondary: 'rgb(248, 189, 42)',
|
||||
onSecondary: 'rgb(64, 45, 0)',
|
||||
secondaryContainer: 'rgb(92, 67, 0)',
|
||||
onSecondaryContainer: 'rgb(255, 223, 160)',
|
||||
tertiary: 'rgb(164, 205, 221)',
|
||||
onTertiary: 'rgb(5, 53, 66)',
|
||||
tertiaryContainer: 'rgb(35, 76, 89)',
|
||||
onTertiaryContainer: 'rgb(192, 233, 250)',
|
||||
error: 'rgb(255, 180, 171)',
|
||||
onError: 'rgb(105, 0, 5)',
|
||||
errorContainer: 'rgb(147, 0, 10)',
|
||||
onErrorContainer: 'rgb(255, 180, 171)',
|
||||
background: 'rgb(25, 28, 26)',
|
||||
onBackground: 'rgb(225, 227, 223)',
|
||||
surface: 'rgb(25, 28, 26)',
|
||||
onSurface: 'rgb(225, 227, 223)',
|
||||
surfaceVariant: 'rgb(64, 73, 67)',
|
||||
onSurfaceVariant: 'rgb(192, 201, 193)',
|
||||
outline: 'rgb(138, 147, 140)',
|
||||
outlineVariant: 'rgb(64, 73, 67)',
|
||||
shadow: 'rgb(0, 0, 0)',
|
||||
scrim: 'rgb(0, 0, 0)',
|
||||
inverseSurface: 'rgb(225, 227, 223)',
|
||||
inverseOnSurface: 'rgb(46, 49, 46)',
|
||||
inversePrimary: 'rgb(0, 108, 71)',
|
||||
elevation: {
|
||||
level0: 'transparent',
|
||||
level1: 'rgb(29, 38, 33)',
|
||||
level2: 'rgb(32, 43, 37)',
|
||||
level3: 'rgb(35, 49, 41)',
|
||||
level4: 'rgb(36, 51, 43)',
|
||||
level5: 'rgb(37, 55, 46)',
|
||||
},
|
||||
"surfaceDisabled": "rgba(225, 227, 223, 0.12)",
|
||||
"onSurfaceDisabled": "rgba(225, 227, 223, 0.38)",
|
||||
"backdrop": "rgba(42, 50, 45, 0.4)"
|
||||
}
|
||||
}
|
||||
surfaceDisabled: 'rgba(225, 227, 223, 0.12)',
|
||||
onSurfaceDisabled: 'rgba(225, 227, 223, 0.38)',
|
||||
backdrop: 'rgba(42, 50, 45, 0.4)',
|
||||
},
|
||||
};
|
||||
|
||||
function App(): React.JSX.Element {
|
||||
const colorScheme = useColorScheme();
|
||||
@ -105,14 +104,14 @@ function App(): React.JSX.Element {
|
||||
|
||||
const theme =
|
||||
colorScheme === 'dark'
|
||||
? { ...MD3DarkTheme, colors: databagColors.dark }
|
||||
: { ...MD3LightTheme, colors: databagColors.light };
|
||||
? {...MD3DarkTheme, colors: databagColors.dark}
|
||||
: {...MD3LightTheme, colors: databagColors.light};
|
||||
|
||||
return (
|
||||
<AppContextProvider>
|
||||
<SettingsContextProvider>
|
||||
<PaperProvider theme={theme}>
|
||||
<SafeAreaView style={{ backgroundColor: '#888888' }}>
|
||||
<SafeAreaView style={{backgroundColor: '#888888'}}>
|
||||
<TextInput
|
||||
mode="outlined"
|
||||
label="Email"
|
||||
|
@ -6,6 +6,7 @@
|
||||
"android": "react-native run-android",
|
||||
"ios": "react-native run-ios",
|
||||
"lint": "eslint .",
|
||||
"format": "prettier --write src",
|
||||
"start": "react-native start",
|
||||
"test": "jest"
|
||||
},
|
||||
|
@ -1,11 +1,10 @@
|
||||
import { NativeModules, Platform } from 'react-native'
|
||||
import {NativeModules, Platform} from 'react-native';
|
||||
|
||||
const Strings = [
|
||||
{
|
||||
// settings screen
|
||||
languageCode: 'en',
|
||||
visibleRegistry: 'Visible in Registry',
|
||||
edit: 'Edit',
|
||||
enableNotifications: 'Push Notifications',
|
||||
allowUnsealed: 'Allow Unsealed',
|
||||
sealedTopics: 'Sealed Topics',
|
||||
@ -33,9 +32,12 @@ const Strings = [
|
||||
|
||||
// seal wizard
|
||||
sealUnset: 'Generate a key to enable end-to-end encrypted topics.',
|
||||
sealUnlocked: 'Disabling the sealing key will block access to all end-to-end encrypted topics from this device until the key is unlocked again.',
|
||||
sealLocked: 'Unlock the sealing key to support end-to-end encrypted topics on this device.',
|
||||
sealDelete: 'Deleting the sealing key will premanently remove access to any existing end-to-end encrypted topics for ALL of your devices.',
|
||||
sealUnlocked:
|
||||
'Disabling the sealing key will block access to all end-to-end encrypted topics from this device until the key is unlocked again.',
|
||||
sealLocked:
|
||||
'Unlock the sealing key to support end-to-end encrypted topics on this device.',
|
||||
sealDelete:
|
||||
'Deleting the sealing key will premanently remove access to any existing end-to-end encrypted topics for ALL of your devices.',
|
||||
password: 'Password',
|
||||
confirmPassword: 'Confirm Password',
|
||||
generate: 'Generate',
|
||||
@ -53,7 +55,8 @@ const Strings = [
|
||||
update: 'Change',
|
||||
changeKey: 'Change Key Password',
|
||||
delayMessage: 'Key generation can take several minutes.',
|
||||
changeMessage: 'Here you can change the username and/or password for your account.',
|
||||
changeMessage:
|
||||
'Here you can change the username and/or password for your account.',
|
||||
|
||||
// settings modals
|
||||
cancel: 'Cancel',
|
||||
@ -125,8 +128,6 @@ const Strings = [
|
||||
|
||||
// channels list
|
||||
profile: 'Profile',
|
||||
contacts: 'Contacts',
|
||||
topics: 'Topics',
|
||||
subject: 'Subject (optional)',
|
||||
create: 'Create',
|
||||
sealed: 'Sealed',
|
||||
@ -174,15 +175,13 @@ const Strings = [
|
||||
selectedColor: 'Selected Color',
|
||||
|
||||
login: 'Login',
|
||||
createAccount: 'Create Account',
|
||||
forgotPassword: 'Forgot Password',
|
||||
adminAccess: 'Admin Access',
|
||||
server: 'Server',
|
||||
access: 'Access',
|
||||
defaultPublic: 'The default public server is to test out the system. Use a private server otherwise.',
|
||||
confirmPassword: 'Confirm Password',
|
||||
defaultPublic:
|
||||
'The default public server is to test out the system. Use a private server otherwise.',
|
||||
accountLogin: 'Account Login',
|
||||
accessAccount: 'Access Account',
|
||||
agree: 'I agree to Terms of Service',
|
||||
terms: 'View Terms of Service',
|
||||
policy: 'Terms of Use and User Policy',
|
||||
@ -212,9 +211,9 @@ const Strings = [
|
||||
mfaConfirm: 'Confirm',
|
||||
mfaEnter: 'Enter your verification code',
|
||||
|
||||
disable: 'Disable',
|
||||
confirmDisable: 'Disabling Multi-Factor Authentication',
|
||||
disablePrompt: 'Are you sure you want to disable multi-factor authentication',
|
||||
disablePrompt:
|
||||
'Are you sure you want to disable multi-factor authentication',
|
||||
},
|
||||
{
|
||||
languageCode: 'fr',
|
||||
@ -228,11 +227,10 @@ const Strings = [
|
||||
dateMode: 'Date',
|
||||
language: 'Langue',
|
||||
logout: 'Déconnecter',
|
||||
changeLogin: 'Modifier l\'Accès',
|
||||
changeLogin: "Modifier l'Accès",
|
||||
deleteAccount: 'Supprimer le Compte',
|
||||
contacts: 'Contacts',
|
||||
topics: 'Sujets',
|
||||
messages: 'Messages',
|
||||
support: 'Aide',
|
||||
blocked: 'Bloqués',
|
||||
account: 'Compte',
|
||||
@ -245,10 +243,15 @@ const Strings = [
|
||||
error: 'Erreur',
|
||||
tryAgain: 'Veuillez réessayer.',
|
||||
|
||||
sealUnset: 'Générez une clé pour activer les sujets chiffrés de bout en bout.',
|
||||
sealUnlocked: 'La désactivation de la clé de scellement supprimera l\'accès à tous les sujets chiffrés de bout en bout jusqu\'à ce que la clé soit à nouveau déverrouillée.',
|
||||
sealLocked: 'Déverrouillez la clé de scellement pour activer les sujets chiffrés de bout en bout sur cet appareil.',
|
||||
sealDelete: 'La suppression de la clé de scellement supprimera définitivement l’accès à tous les sujets cryptés de bout en bout existants pour TOUS vos appareils.',
|
||||
messages: 'Messages',
|
||||
sealUnset:
|
||||
'Générez une clé pour activer les sujets chiffrés de bout en bout.',
|
||||
sealUnlocked:
|
||||
"La désactivation de la clé de scellement supprimera l'accès à tous les sujets chiffrés de bout en bout jusqu'à ce que la clé soit à nouveau déverrouillée.",
|
||||
sealLocked:
|
||||
'Déverrouillez la clé de scellement pour activer les sujets chiffrés de bout en bout sur cet appareil.',
|
||||
sealDelete:
|
||||
'La suppression de la clé de scellement supprimera définitivement l’accès à tous les sujets cryptés de bout en bout existants pour TOUS vos appareils.',
|
||||
password: 'Mot de passe',
|
||||
confirmPassword: 'Confirmez le mot de passe',
|
||||
generate: 'Générer',
|
||||
@ -266,14 +269,15 @@ const Strings = [
|
||||
update: 'Mise à jour',
|
||||
changeKey: 'Changer le mot de passe clé',
|
||||
delayMessage: 'La génération de clé peut prendre plusieurs minutes.',
|
||||
changeMessage: 'Ici, vous pouvez modifier le nom d\'utilisateur et/ou le mot de passe de votre compte.',
|
||||
changeMessage:
|
||||
"Ici, vous pouvez modifier le nom d'utilisateur et/ou le mot de passe de votre compte.",
|
||||
|
||||
cancel: 'Annuler',
|
||||
confirmLogout: 'Déconnecter',
|
||||
loggingOut: 'Confirmation de la Déconnexion',
|
||||
username: 'Nom d\'Utilisateur',
|
||||
loggingOut: 'Confirmation de la Déconnexion',
|
||||
username: "Nom d'Utilisateur",
|
||||
save: 'Engegistrer',
|
||||
notAvailable: 'Nom d\'Utilisateur Indisponible',
|
||||
notAvailable: "Nom d'Utilisateur Indisponible",
|
||||
blockedContacts: 'Contacts Bloqués',
|
||||
restoreContact: 'Restaurer le Contact?',
|
||||
blockedTopics: 'Sujets Bloqués',
|
||||
@ -288,12 +292,11 @@ const Strings = [
|
||||
restore: 'Restaurer',
|
||||
|
||||
//profile page
|
||||
edit: 'Modifier',
|
||||
name: 'Nom',
|
||||
location: 'Emplacement',
|
||||
description: 'Description',
|
||||
registryVisible: 'Visible dans le Registre',
|
||||
editImage: 'Modifier l\'Image',
|
||||
editImage: "Modifier l'Image",
|
||||
editDetails: 'Modifier les Détails',
|
||||
|
||||
//constacts page
|
||||
@ -328,7 +331,7 @@ const Strings = [
|
||||
add: 'Ajouter',
|
||||
contactFilter: 'Contacts',
|
||||
serverFilter: 'Serveur',
|
||||
usernameFilter: 'Nom d\'Utilisateur',
|
||||
usernameFilter: "Nom d'Utilisateur",
|
||||
viewProfile: 'Voir le Profil',
|
||||
messageContact: 'Envoyer un Message',
|
||||
callContact: 'Appeler le Contact',
|
||||
@ -336,11 +339,9 @@ const Strings = [
|
||||
|
||||
// channels list
|
||||
profile: 'Profil',
|
||||
contacts: 'Contacts',
|
||||
topics: 'Sujets',
|
||||
subject: 'Titre (optionnel)',
|
||||
create: 'Créer',
|
||||
sealed: 'Protégé',
|
||||
sealed: 'Protégé',
|
||||
newTopic: 'Nouveau Sujet',
|
||||
new: 'Nouveau',
|
||||
|
||||
@ -373,7 +374,7 @@ const Strings = [
|
||||
enableCalls: 'Activer les Appels',
|
||||
iceService: 'Service Cloudflare',
|
||||
relayUrl: 'URL de Relais',
|
||||
relayUsername: 'Nom d\'Utilisateur du Relais',
|
||||
relayUsername: "Nom d'Utilisateur du Relais",
|
||||
relayPassword: 'Mot de Passe du Relais',
|
||||
|
||||
newMessage: 'Nouveau Message',
|
||||
@ -385,18 +386,16 @@ const Strings = [
|
||||
selectedColor: 'Couleur Sélectionnée',
|
||||
|
||||
login: 'Connexion',
|
||||
createAccount: 'Créer un Compte',
|
||||
forgotPassword: 'Mot de Passe Oublié',
|
||||
adminAccess: 'Accès Administrateur',
|
||||
server: 'Serveur',
|
||||
access: 'Accès',
|
||||
defaultPublic: 'Le serveur public par défaut est destiné à tester le système. Utilisez un serveur privé sinon.',
|
||||
confirmPassword: 'Confirmer le Mot de Passe',
|
||||
defaultPublic:
|
||||
'Le serveur public par défaut est destiné à tester le système. Utilisez un serveur privé sinon.',
|
||||
accountLogin: 'Connexion au Compte',
|
||||
accessAccount: 'Accéder au Compte',
|
||||
agree: 'J\'accepte les Conditions d\'Utilisation',
|
||||
terms: 'Afficher les Conditions d\'Utilisation',
|
||||
policy: 'Conditions d\'Utilisation et Politique d\'Utilisation',
|
||||
agree: "J'accepte les Conditions d'Utilisation",
|
||||
terms: "Afficher les Conditions d'Utilisation",
|
||||
policy: "Conditions d'Utilisation et Politique d'Utilisation",
|
||||
|
||||
editMessage: 'Modifier le Texte du Message',
|
||||
emptyTopic: 'Pas de Messages',
|
||||
@ -404,9 +403,9 @@ const Strings = [
|
||||
noTopics: 'Pas de Sujets',
|
||||
|
||||
welcome: 'Bienvenue Sur Databag',
|
||||
communication: 'Communication Pour l\'Internet Décentralisé',
|
||||
communication: "Communication Pour l'Internet Décentralisé",
|
||||
setup: 'Configurez Votre Profil',
|
||||
connect: 'Se Connecter Avec d\'Autres',
|
||||
connect: "Se Connecter Avec d'Autres",
|
||||
start: 'Créer une Conversation',
|
||||
started: 'Commencer',
|
||||
|
||||
@ -417,15 +416,16 @@ const Strings = [
|
||||
selectTopic: 'Choisissez le sujet à partager',
|
||||
|
||||
mfaTitle: 'Authentification Multi-Factor',
|
||||
mfaSteps: 'Enregistrez le secret SHA256 et confirmez le code de vérification',
|
||||
mfaSteps:
|
||||
'Enregistrez le secret SHA256 et confirmez le code de vérification',
|
||||
mfaEnter: 'Entrez votre code de vérification',
|
||||
mfaError: 'erreur de code de vérification',
|
||||
mfaDisabled: 'vérification temporairement désactivée',
|
||||
mfaConfirm: 'Confirmer',
|
||||
|
||||
disable: 'Désactiver',
|
||||
confirmDisable: 'Désactivation de l\'authentification multi-facteurs',
|
||||
disablePrompt: 'Êtes-vous sûr de vouloir désactiver l\'authentification multi-facteurs',
|
||||
confirmDisable: "Désactivation de l'authentification multi-facteurs",
|
||||
disablePrompt:
|
||||
"Êtes-vous sûr de vouloir désactiver l'authentification multi-facteurs",
|
||||
},
|
||||
{
|
||||
languageCode: 'es',
|
||||
@ -456,14 +456,17 @@ const Strings = [
|
||||
error: 'Error',
|
||||
tryAgain: 'Inténtalo de nuevo.',
|
||||
|
||||
sealUnset: 'Genere una clave para habilitar temas cifrados de un extremo a otro.',
|
||||
sealUnlocked: 'Al desactivar la clave de sellado se eliminará el acceso a todos los temas cifrados de extremo a extremo hasta que la clave se desbloquee nuevamente.',
|
||||
sealLocked: 'Desbloquee la clave de sellado para habilitar temas cifrados de extremo a extremo en este dispositivo.',
|
||||
sealDelete: 'Al eliminar la clave de sellado, se eliminará de forma permanente el acceso a cualquier tema cifrado de extremo a extremo existente para TODOS sus dispositivos.',
|
||||
sealUnset:
|
||||
'Genere una clave para habilitar temas cifrados de un extremo a otro.',
|
||||
sealUnlocked:
|
||||
'Al desactivar la clave de sellado se eliminará el acceso a todos los temas cifrados de extremo a extremo hasta que la clave se desbloquee nuevamente.',
|
||||
sealLocked:
|
||||
'Desbloquee la clave de sellado para habilitar temas cifrados de extremo a extremo en este dispositivo.',
|
||||
sealDelete:
|
||||
'Al eliminar la clave de sellado, se eliminará de forma permanente el acceso a cualquier tema cifrado de extremo a extremo existente para TODOS sus dispositivos.',
|
||||
password: 'Contraseña',
|
||||
confirmPassword: 'Confirmar Contraseña',
|
||||
generate: 'Generar',
|
||||
disable: 'Desactivar',
|
||||
delete: 'Borrar',
|
||||
unlock: 'Desbloquear',
|
||||
removeSeal: 'Borrar clave de seguridad',
|
||||
@ -477,7 +480,8 @@ const Strings = [
|
||||
update: 'Actualizar',
|
||||
changeKey: 'Cambiar clave Contraseña',
|
||||
delayMessage: 'La generación de claves puede tardar varios minutos.',
|
||||
changeMessage: 'Aquí puede cambiar el nombre de usuario y/o contraseña de su cuenta.',
|
||||
changeMessage:
|
||||
'Aquí puede cambiar el nombre de usuario y/o contraseña de su cuenta.',
|
||||
|
||||
cancel: 'Cancelar',
|
||||
confirmLogout: 'Cerrar',
|
||||
@ -499,7 +503,6 @@ const Strings = [
|
||||
restore: 'Restaurar',
|
||||
|
||||
//profile page
|
||||
edit: 'Editar',
|
||||
name: 'Nombre',
|
||||
location: 'Ubicación',
|
||||
description: 'Descripción',
|
||||
@ -536,7 +539,7 @@ const Strings = [
|
||||
actionReport: 'Reportar',
|
||||
|
||||
// contact list page
|
||||
add: 'Agregar',
|
||||
add: 'Agregar',
|
||||
contactFilter: 'Contactos',
|
||||
serverFilter: 'Servidor',
|
||||
usernameFilter: 'Nombre de Usuario',
|
||||
@ -547,8 +550,6 @@ const Strings = [
|
||||
|
||||
// channels list
|
||||
profile: 'Perfil',
|
||||
contacts: 'Contactos',
|
||||
topics: 'Temas',
|
||||
subject: 'Título (opcional)',
|
||||
create: 'Crear',
|
||||
sealed: 'Protegida',
|
||||
@ -570,8 +571,6 @@ const Strings = [
|
||||
unknown: 'Desconocido',
|
||||
|
||||
accounts: 'Cuentas',
|
||||
createAccount: 'Crear',
|
||||
accessAccount: 'Acceso',
|
||||
token: 'Código',
|
||||
settings: 'Ajustes',
|
||||
federatedHost: 'Servidor Federado',
|
||||
@ -601,8 +600,8 @@ const Strings = [
|
||||
adminAccess: 'Acceso de administrador',
|
||||
server: 'Servidor',
|
||||
access: 'Acceso',
|
||||
defaultPublic: 'El servidor público predeterminado es para probar el sistema. Utilice un servidor privado en caso contrario.',
|
||||
confirmPassword: 'Confirmar contraseña',
|
||||
defaultPublic:
|
||||
'El servidor público predeterminado es para probar el sistema. Utilice un servidor privado en caso contrario.',
|
||||
accountLogin: 'Iniciar sesión en la cuenta',
|
||||
accessAccount: 'Acceder a la cuenta',
|
||||
agree: 'Acepto los Términos de Servicio',
|
||||
@ -635,9 +634,9 @@ const Strings = [
|
||||
mfaDisabled: 'verificación temporalmente deshabilitada',
|
||||
mfaConfirm: 'Confirmar',
|
||||
|
||||
disable: 'Desactivar',
|
||||
confirmDisable: 'Desactivación de la autenticación de dos factores',
|
||||
disablePrompt: '¿Estás seguro de que quieres desactivar la autenticación de dos factores?',
|
||||
disablePrompt:
|
||||
'¿Estás seguro de que quieres desactivar la autenticación de dos factores?',
|
||||
},
|
||||
{
|
||||
languageCode: 'de',
|
||||
@ -660,7 +659,6 @@ const Strings = [
|
||||
blocked: 'Versteckt',
|
||||
account: 'Konto',
|
||||
display: 'Format',
|
||||
messages: 'Nachrichtenübermittlung',
|
||||
timeFull: '24h',
|
||||
timeHalf: '12h',
|
||||
monthStart: 'mm/dd',
|
||||
@ -668,10 +666,14 @@ const Strings = [
|
||||
error: 'Fehler',
|
||||
tryAgain: 'Bitte versuche es erneut.',
|
||||
|
||||
sealUnset: 'Generieren Sie einen Schlüssel, um Ende-zu-Ende-verschlüsselte Themen zu ermöglichen.',
|
||||
sealUnlocked: 'Durch das Deaktivieren des Versiegelungsschlüssels wird der Zugriff auf alle Ende-zu-Ende-verschlüsselten Themen entfernt, bis der Schlüssel wieder entsperrt wird.',
|
||||
sealLocked: 'Entsperren Sie den Versiegelungsschlüssel, um Ende-zu-Ende-verschlüsselte Themen auf diesem Gerät zu aktivieren.',
|
||||
sealDelete: 'Durch das Löschen des Siegelschlüssels wird der Zugriff auf alle vorhandenen Ende-zu-Ende-verschlüsselten Themen für ALLE Ihre Geräte dauerhaft entfernt.',
|
||||
sealUnset:
|
||||
'Generieren Sie einen Schlüssel, um Ende-zu-Ende-verschlüsselte Themen zu ermöglichen.',
|
||||
sealUnlocked:
|
||||
'Durch das Deaktivieren des Versiegelungsschlüssels wird der Zugriff auf alle Ende-zu-Ende-verschlüsselten Themen entfernt, bis der Schlüssel wieder entsperrt wird.',
|
||||
sealLocked:
|
||||
'Entsperren Sie den Versiegelungsschlüssel, um Ende-zu-Ende-verschlüsselte Themen auf diesem Gerät zu aktivieren.',
|
||||
sealDelete:
|
||||
'Durch das Löschen des Siegelschlüssels wird der Zugriff auf alle vorhandenen Ende-zu-Ende-verschlüsselten Themen für ALLE Ihre Geräte dauerhaft entfernt.',
|
||||
password: 'Passwort',
|
||||
confirmPassword: 'Bestätige das Passwort',
|
||||
generate: 'Generieren',
|
||||
@ -689,7 +691,8 @@ const Strings = [
|
||||
update: 'Aktualisieren',
|
||||
changeKey: 'Schlüsselpasswort ändern',
|
||||
delayMessage: 'Die Schlüsselgenerierung kann mehrere Minuten dauern.',
|
||||
changeMessage: 'Hier können Sie den Benutzernamen und/oder das Passwort für Ihr Konto ändern.',
|
||||
changeMessage:
|
||||
'Hier können Sie den Benutzernamen und/oder das Passwort für Ihr Konto ändern.',
|
||||
|
||||
cancel: 'Stornieren',
|
||||
confirmlogout: 'Ausloggen',
|
||||
@ -711,14 +714,13 @@ const Strings = [
|
||||
restore: 'Wiederherstellen',
|
||||
|
||||
//profile page
|
||||
edit: 'Bearbeiten',
|
||||
name: 'Name',
|
||||
location: 'Standort',
|
||||
description: 'Beschreibung',
|
||||
registryVisible: 'Sichtbar in der Registrierung',
|
||||
editImage: 'Bild Bearbeiten',
|
||||
editDetails: 'Details Bearbeiten',
|
||||
|
||||
|
||||
//contacts page
|
||||
back: 'Rückwärts',
|
||||
deleteContact: 'Kontakt Löschen',
|
||||
@ -756,11 +758,9 @@ const Strings = [
|
||||
messageContact: 'Nachricht Senden',
|
||||
callContact: 'Kontakt Anrufen',
|
||||
noContacts: 'Keine Kontakte Gefunden',
|
||||
|
||||
|
||||
// channels list
|
||||
profile: 'Profil',
|
||||
contacts: 'Kontakte',
|
||||
topics: 'Themen',
|
||||
subject: 'Titel (optional)',
|
||||
create: 'Erstellen',
|
||||
sealed: 'Gesichert',
|
||||
@ -782,8 +782,6 @@ const Strings = [
|
||||
unknown: 'Unbekannt',
|
||||
|
||||
accounts: 'Konten',
|
||||
createAccount: 'Erstellen',
|
||||
accessAccount: 'Zugang',
|
||||
token: 'Code',
|
||||
settings: 'Einstellungen',
|
||||
federatedHost: 'Verbundname',
|
||||
@ -813,8 +811,8 @@ const Strings = [
|
||||
adminAccess: 'Administratorzugang',
|
||||
server: 'Server',
|
||||
access: 'Zugang',
|
||||
defaultPublic: 'Der Standard-Public-Server dient dazu, das System zu testen. Verwenden Sie andernfalls einen privaten Server.',
|
||||
confirmPassword: 'Passwort bestätigen',
|
||||
defaultPublic:
|
||||
'Der Standard-Public-Server dient dazu, das System zu testen. Verwenden Sie andernfalls einen privaten Server.',
|
||||
accountLogin: 'Kontoanmeldung',
|
||||
accessAccount: 'Zugang zum Konto',
|
||||
agree: 'Ich akzeptiere die Nutzungsbedingungen',
|
||||
@ -841,15 +839,16 @@ const Strings = [
|
||||
selectTopic: 'Wählen Sie ein Thema zum Teilen aus',
|
||||
|
||||
mfaTitle: 'Zwei-Faktor-Authentifizierung',
|
||||
mfaSteps: 'Speichern Sie das SHA256-Geheimnis und bestätigen Sie den Bestätigungscode',
|
||||
mfaSteps:
|
||||
'Speichern Sie das SHA256-Geheimnis und bestätigen Sie den Bestätigungscode',
|
||||
mfaEnter: 'Geben Sie Ihren Bestätigungs-Code ein',
|
||||
mfaError: 'Verifizierungscodefehler',
|
||||
mfaDisabled: 'Verifizierung vorübergehend deaktiviert',
|
||||
mfaConfirm: 'Bestätigen',
|
||||
|
||||
disable: 'Deaktivieren',
|
||||
confirmDisable: 'Deaktivierung der Zwei-Faktor-Authentifizierung',
|
||||
disablePrompt: 'Sind Sie sicher, dass Sie die Zwei-Faktor-Authentifizierung deaktivieren möchten?',
|
||||
disablePrompt:
|
||||
'Sind Sie sicher, dass Sie die Zwei-Faktor-Authentifizierung deaktivieren möchten?',
|
||||
},
|
||||
{
|
||||
languageCode: 'pt',
|
||||
@ -879,14 +878,17 @@ const Strings = [
|
||||
monthEnd: 'dd/mm',
|
||||
error: 'Erro',
|
||||
tryAgain: 'Por favor, tente novamente.',
|
||||
sealUnset: 'Gerar uma chave para habilitar tópicos com criptografia de ponta a ponta.',
|
||||
sealUnlocked: 'Desabilitar a chave de selagem bloqueará o acesso a todos os tópicos com criptografia de ponta a ponta deste dispositivo até que a chave seja desbloqueada novamente.',
|
||||
sealLocked: 'Desbloqueie a chave de selagem para suportar tópicos com criptografia de ponta a ponta neste dispositivo.',
|
||||
sealDelete: 'Excluir a chave de selagem removerá permanentemente o acesso a todos os tópicos com criptografia de ponta a ponta existentes para TODOS os seus dispositivos.',
|
||||
sealUnset:
|
||||
'Gerar uma chave para habilitar tópicos com criptografia de ponta a ponta.',
|
||||
sealUnlocked:
|
||||
'Desabilitar a chave de selagem bloqueará o acesso a todos os tópicos com criptografia de ponta a ponta deste dispositivo até que a chave seja desbloqueada novamente.',
|
||||
sealLocked:
|
||||
'Desbloqueie a chave de selagem para suportar tópicos com criptografia de ponta a ponta neste dispositivo.',
|
||||
sealDelete:
|
||||
'Excluir a chave de selagem removerá permanentemente o acesso a todos os tópicos com criptografia de ponta a ponta existentes para TODOS os seus dispositivos.',
|
||||
password: 'Senha',
|
||||
confirmPassword: 'Confirmar Senha',
|
||||
generate: 'Gerar',
|
||||
disable: 'Desabilitar',
|
||||
delete: 'Excluir',
|
||||
unlock: 'Desbloquear',
|
||||
removeSeal: 'Remover Chave de Selagem',
|
||||
@ -900,7 +902,8 @@ const Strings = [
|
||||
update: 'Alterar',
|
||||
changeKey: 'Alterar Senha da Chave',
|
||||
delayMessage: 'A geração da chave pode levar vários minutos.',
|
||||
changeMessage: 'Aqui você pode alterar o nome de usuário e/ou senha da sua conta.',
|
||||
changeMessage:
|
||||
'Aqui você pode alterar o nome de usuário e/ou senha da sua conta.',
|
||||
cancel: 'Cancelar',
|
||||
confirmLogout: 'Sair',
|
||||
loggingOut: 'Saindo',
|
||||
@ -919,7 +922,6 @@ const Strings = [
|
||||
noBlockedTopics: 'Nenhum Tópico Bloqueado',
|
||||
noBlockedMessages: 'Nenhuma Mensagem Bloqueada',
|
||||
restore: 'Restaurar',
|
||||
edit: 'Editar',
|
||||
name: 'Nome',
|
||||
location: 'Localização',
|
||||
description: 'Descrição',
|
||||
@ -962,8 +964,6 @@ const Strings = [
|
||||
callContact: 'Chamar Contato',
|
||||
noContacts: 'Nenhum Contato Encontrado',
|
||||
profile: 'Perfil',
|
||||
contacts: 'Contatos',
|
||||
topics: 'Tópicos',
|
||||
subject: 'Assunto (opcional)',
|
||||
create: 'Criar',
|
||||
sealed: 'Selado',
|
||||
@ -1006,15 +1006,13 @@ const Strings = [
|
||||
fontColor: 'Cor da Fonte',
|
||||
selectedColor: 'Cor Selecionada',
|
||||
login: 'Login',
|
||||
createAccount: 'Criar Conta',
|
||||
forgotPassword: 'Esqueci a Senha',
|
||||
adminAccess: 'Acesso de Administrador',
|
||||
server: 'Servidor',
|
||||
access: 'Acesso',
|
||||
defaultPublic: 'O servidor público padrão serve para testar o sistema. Use um servidor privado, caso contrário.',
|
||||
confirmPassword: 'Confirmar Senha',
|
||||
defaultPublic:
|
||||
'O servidor público padrão serve para testar o sistema. Use um servidor privado, caso contrário.',
|
||||
accountLogin: 'Login da Conta',
|
||||
accessAccount: 'Acessar Conta',
|
||||
agree: 'Eu concordo com os Termos de Serviço',
|
||||
terms: 'Ver Termos de Serviço',
|
||||
policy: 'Termos de Uso e Política do Usuário',
|
||||
@ -1046,7 +1044,8 @@ const Strings = [
|
||||
|
||||
disable: 'Desativar',
|
||||
confirmDisable: 'Desativando Autenticação de Dois Fatores',
|
||||
disablePrompt: 'Tem certeza de que deseja desativar a autenticação de dois fatores?',
|
||||
disablePrompt:
|
||||
'Tem certeza de que deseja desativar a autenticação de dois fatores?',
|
||||
},
|
||||
{
|
||||
languageCode: 'ru',
|
||||
@ -1077,9 +1076,12 @@ const Strings = [
|
||||
error: 'Ошибка',
|
||||
tryAgain: 'Пожалуйста, попробуйте снова',
|
||||
sealUnset: 'Создайте ключ, чтобы включить конечное шифрование для тем',
|
||||
sealUnlocked: 'Отключение ключа запечатывания заблокирует доступ ко всем темам с конечным шифрованием с этого устройства до разблокировки ключа.',
|
||||
sealLocked: 'Разблокируйте ключ запечатывания, чтобы поддерживать темы с конечным шифрованием на этом устройстве.',
|
||||
sealDelete: 'Удаление ключа запечатывания навсегда удалит доступ к любым существующим темам с конечным шифрованием для ВСЕХ ваших устройств.',
|
||||
sealUnlocked:
|
||||
'Отключение ключа запечатывания заблокирует доступ ко всем темам с конечным шифрованием с этого устройства до разблокировки ключа.',
|
||||
sealLocked:
|
||||
'Разблокируйте ключ запечатывания, чтобы поддерживать темы с конечным шифрованием на этом устройстве.',
|
||||
sealDelete:
|
||||
'Удаление ключа запечатывания навсегда удалит доступ к любым существующим темам с конечным шифрованием для ВСЕХ ваших устройств.',
|
||||
password: 'Пароль',
|
||||
confirmPassword: 'Подтвердите пароль',
|
||||
generate: 'Создать',
|
||||
@ -1097,7 +1099,8 @@ const Strings = [
|
||||
update: 'Изменить',
|
||||
changeKey: 'Изменить пароль ключа',
|
||||
delayMessage: 'Генерация ключа может занять несколько минут.',
|
||||
changeMessage: 'Здесь вы можете изменить имя пользователя и/или пароль для вашей учетной записи.',
|
||||
changeMessage:
|
||||
'Здесь вы можете изменить имя пользователя и/или пароль для вашей учетной записи.',
|
||||
cancel: 'Отмена',
|
||||
confirmLogout: 'Выйти',
|
||||
loggingOut: 'Выход',
|
||||
@ -1116,7 +1119,6 @@ const Strings = [
|
||||
noBlockedTopics: 'Нет заблокированных тем',
|
||||
noBlockedMessages: 'Нет заблокированных сообщений',
|
||||
restore: 'Восстановить',
|
||||
edit: 'Редактировать',
|
||||
name: 'Имя',
|
||||
location: 'Местоположение',
|
||||
description: 'Описание',
|
||||
@ -1159,8 +1161,6 @@ const Strings = [
|
||||
callContact: 'Позвонить контакту',
|
||||
noContacts: 'Контакты не найдены',
|
||||
profile: 'Профиль',
|
||||
contacts: 'Контакты',
|
||||
topics: 'Темы',
|
||||
subject: 'Тема (необязательно)',
|
||||
create: 'Создать',
|
||||
sealed: 'Запечатано',
|
||||
@ -1203,15 +1203,13 @@ const Strings = [
|
||||
fontColor: 'Цвет шрифта',
|
||||
selectedColor: 'Выбранный цвет',
|
||||
login: 'Войти',
|
||||
createAccount: 'Создать аккаунт',
|
||||
forgotPassword: 'Забыли пароль',
|
||||
adminAccess: 'Доступ администратора',
|
||||
server: 'Сервер',
|
||||
access: 'Доступ',
|
||||
defaultPublic: 'Общедоступный сервер предназначен для тестирования системы. Используйте частный сервер в противном случае.',
|
||||
confirmPassword: 'Подтвердите пароль',
|
||||
defaultPublic:
|
||||
'Общедоступный сервер предназначен для тестирования системы. Используйте частный сервер в противном случае.',
|
||||
accountLogin: 'Вход в аккаунт',
|
||||
accessAccount: 'Доступ к аккаунту',
|
||||
agree: 'Я согласен с Правилами обслуживания',
|
||||
terms: 'Просмотреть Правила обслуживания',
|
||||
policy: 'Пользовательское соглашение и политика конфиденциальности',
|
||||
@ -1239,14 +1237,18 @@ const Strings = [
|
||||
mfaDisabled: 'проверка временно отключена',
|
||||
mfaConfirm: 'Подтвердить',
|
||||
|
||||
disable: 'Отключить',
|
||||
confirmDisable: 'Отключение двухфакторной аутентификации',
|
||||
disablePrompt: 'Вы уверены, что хотите отключить двухфакторную аутентификацию?',
|
||||
}
|
||||
disablePrompt:
|
||||
'Вы уверены, что хотите отключить двухфакторную аутентификацию?',
|
||||
},
|
||||
];
|
||||
|
||||
export function getLanguageStrings() {
|
||||
const locale = Platform.OS === 'ios' ? NativeModules.SettingsManager?.settings.AppleLocale || NativeModules.SettingsManager?.settings.AppleLanguages[0] : NativeModules.I18nManager?.localeIdentifier;
|
||||
const locale =
|
||||
Platform.OS === 'ios'
|
||||
? NativeModules.SettingsManager?.settings.AppleLocale ||
|
||||
NativeModules.SettingsManager?.settings.AppleLanguages[0]
|
||||
: NativeModules.I18nManager?.localeIdentifier;
|
||||
|
||||
const lang = locale?.slice(0, 2) || '';
|
||||
|
||||
@ -1269,4 +1271,4 @@ export function getLanguageStrings() {
|
||||
return Strings[5];
|
||||
}
|
||||
return Strings[0];
|
||||
};
|
||||
}
|
||||
|
@ -1,14 +1,13 @@
|
||||
import { createContext } from 'react';
|
||||
import { useAppContext } from './useAppContext.hook';
|
||||
import {createContext} from 'react';
|
||||
import {useAppContext} from './useAppContext.hook';
|
||||
|
||||
export const AppContext = createContext({});
|
||||
|
||||
export function AppContextProvider({ children }) {
|
||||
const { state, actions } = useAppContext();
|
||||
export function AppContextProvider({children}) {
|
||||
const {state, actions} = useAppContext();
|
||||
return (
|
||||
<AppContext.Provider value={{ state, actions }}>
|
||||
<AppContext.Provider value={{state, actions}}>
|
||||
{children}
|
||||
</AppContext.Provider>
|
||||
);
|
||||
}
|
||||
|
||||
|
@ -1,14 +1,13 @@
|
||||
import { createContext } from 'react';
|
||||
import { useSettingsContext } from './useSettingsContext.hook';
|
||||
import {createContext} from 'react';
|
||||
import {useSettingsContext} from './useSettingsContext.hook';
|
||||
|
||||
export const SettingsContext = createContext({});
|
||||
|
||||
export function SettingsContextProvider({ children }) {
|
||||
const { state, actions } = useSettingsContext();
|
||||
export function SettingsContextProvider({children}) {
|
||||
const {state, actions} = useSettingsContext();
|
||||
return (
|
||||
<SettingsContext.Provider value={{ state, actions }}>
|
||||
<SettingsContext.Provider value={{state, actions}}>
|
||||
{children}
|
||||
</SettingsContext.Provider>
|
||||
);
|
||||
}
|
||||
|
||||
|
@ -1,11 +1,10 @@
|
||||
import { useState, useEffect } from 'react';
|
||||
import { DatabagSDK, SqlStore, Session } from 'databag-client-sdk';
|
||||
import SQLite from "react-native-sqlite-storage";
|
||||
import {useState, useEffect} from 'react';
|
||||
import {DatabagSDK, SqlStore, Session} from 'databag-client-sdk';
|
||||
import SQLite from 'react-native-sqlite-storage';
|
||||
const DATABAG_DB = 'db_v200.db';
|
||||
|
||||
class Store implements SqlStore {
|
||||
|
||||
private db: any = null;
|
||||
private db: any = null;
|
||||
|
||||
constructor() {
|
||||
SQLite.DEBUG(false);
|
||||
@ -13,14 +12,20 @@ class Store implements SqlStore {
|
||||
}
|
||||
|
||||
public async open(path: string) {
|
||||
this.db = await SQLite.openDatabase({ name: path, location: "default" });
|
||||
this.db = await SQLite.openDatabase({name: path, location: 'default'});
|
||||
}
|
||||
|
||||
public async set(stmt: string, params: (string | number | null)[]): Promise<void> {
|
||||
public async set(
|
||||
stmt: string,
|
||||
params: (string | number | null)[],
|
||||
): Promise<void> {
|
||||
await this.db.executeSql(stmt, params);
|
||||
}
|
||||
|
||||
public async get(stmt: string, params: (string | number | null)[]): Promise<any[]> {
|
||||
public async get(
|
||||
stmt: string,
|
||||
params: (string | number | null)[],
|
||||
): Promise<any[]> {
|
||||
const res = await this.db.executeSql(stmt, params);
|
||||
const rows = [];
|
||||
if (res[0] && res[0].rows && res[0].rows > 1) {
|
||||
@ -30,21 +35,23 @@ class Store implements SqlStore {
|
||||
}
|
||||
return rows;
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
export function useAppContext() {
|
||||
const [state, setState] = useState({
|
||||
accountMfa: boolean = false,
|
||||
accountSet: boolean = false,
|
||||
adminMfa: boolean = false,
|
||||
adminSet: boolean = false,
|
||||
accountMfa: (boolean = false),
|
||||
accountSet: (boolean = false),
|
||||
adminMfa: (boolean = false),
|
||||
adminSet: (boolean = false),
|
||||
});
|
||||
|
||||
const updateState = (value: any) => {
|
||||
setState((s) => ({ ...s, ...value }))
|
||||
}
|
||||
setState(s => ({...s, ...value}));
|
||||
};
|
||||
|
||||
useEffect(() => { init() }, []);
|
||||
useEffect(() => {
|
||||
init();
|
||||
}, []);
|
||||
|
||||
const init = async () => {
|
||||
const sdk = new DatabagSDK(null);
|
||||
@ -52,8 +59,8 @@ export function useAppContext() {
|
||||
await store.open(DATABAG_DB);
|
||||
const session = await sdk.initOfflineStore(store);
|
||||
if (session) {
|
||||
console.log("init session");
|
||||
updateState({ accountSet: true, sdk, session });
|
||||
console.log('init session');
|
||||
updateState({accountSet: true, sdk, session});
|
||||
} else {
|
||||
const params = {
|
||||
topicBatch: 16,
|
||||
@ -61,38 +68,50 @@ export function useAppContext() {
|
||||
channelTypes: ['test'],
|
||||
pushType: 'fcm',
|
||||
deviceToken: 'aabbcc',
|
||||
notifications: [{ event: 'msg', messageTitle: 'msgd' }],
|
||||
notifications: [{event: 'msg', messageTitle: 'msgd'}],
|
||||
deviceId: '0011',
|
||||
version: '0.0.1',
|
||||
appName: 'databag',
|
||||
}
|
||||
console.log('-----> SDK LOGIN')
|
||||
};
|
||||
console.log('-----> SDK LOGIN');
|
||||
try {
|
||||
const login = await sdk.login('asdf', 'asdf', 'https://balzack.coredb.org', null, params)
|
||||
console.log(login)
|
||||
updateState({ accountSet: true, sdk, session: login })
|
||||
}
|
||||
catch (err) {
|
||||
console.log("ERR:", err);
|
||||
const login = await sdk.login(
|
||||
'asdf',
|
||||
'asdf',
|
||||
'https://balzack.coredb.org',
|
||||
null,
|
||||
params,
|
||||
);
|
||||
console.log(login);
|
||||
updateState({accountSet: true, sdk, session: login});
|
||||
} catch (err) {
|
||||
console.log('ERR:', err);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
const actions = {
|
||||
loginAccount: async (handle: string, password: string, url: string, mfaCode: string | null) => {
|
||||
},
|
||||
accessAccount: async (url: string, token: string) => {
|
||||
},
|
||||
createAccount: async (handle: string, password: string, url: string, token: string | null) => {
|
||||
},
|
||||
logoutAccount: async () => {
|
||||
},
|
||||
loginAdmin: async (token: string, url: string, mfaCode: string | null) => {
|
||||
},
|
||||
logoutAdmin: async () => {
|
||||
},
|
||||
}
|
||||
loginAccount: async (
|
||||
handle: string,
|
||||
password: string,
|
||||
url: string,
|
||||
mfaCode: string | null,
|
||||
) => {},
|
||||
accessAccount: async (url: string, token: string) => {},
|
||||
createAccount: async (
|
||||
handle: string,
|
||||
password: string,
|
||||
url: string,
|
||||
token: string | null,
|
||||
) => {},
|
||||
logoutAccount: async () => {},
|
||||
loginAdmin: async (
|
||||
token: string,
|
||||
url: string,
|
||||
mfaCode: string | null,
|
||||
) => {},
|
||||
logoutAdmin: async () => {},
|
||||
};
|
||||
|
||||
return { state, actions }
|
||||
return {state, actions};
|
||||
}
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
import { useEffect, useContext, useState, useRef } from 'react';
|
||||
import { getLanguageStrings } from '../constants/Strings';
|
||||
import { useWindowDimensions } from 'react-native';
|
||||
import {useEffect, useContext, useState, useRef} from 'react';
|
||||
import {getLanguageStrings} from '../constants/Strings';
|
||||
import {useWindowDimensions} from 'react-native';
|
||||
|
||||
export function useSettingsContext() {
|
||||
const dim = useWindowDimensions();
|
||||
@ -10,20 +10,18 @@ export function useSettingsContext() {
|
||||
splt: null,
|
||||
});
|
||||
|
||||
const updateState = (value) => {
|
||||
setState((s) => ({ ...s, ...value }))
|
||||
}
|
||||
const updateState = value => {
|
||||
setState(s => ({...s, ...value}));
|
||||
};
|
||||
|
||||
useEffect(() => {
|
||||
const strings = getLanguageStrings();
|
||||
const wide = dim.width > dim.height;
|
||||
const split = dim.width > 650;
|
||||
updateState({ strings, wide, split });
|
||||
updateState({strings, wide, split});
|
||||
}, []);
|
||||
|
||||
const actions = {
|
||||
};
|
||||
const actions = {};
|
||||
|
||||
return { state, actions }
|
||||
return {state, actions};
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user