diff --git a/packages/app/App.js b/packages/app/App.js index 23a35f30..994c923f 100644 --- a/packages/app/App.js +++ b/packages/app/App.js @@ -13,6 +13,7 @@ import { StatusBar } from 'react-native' import { useBackgroundBlur } from './utils/blur' import moment from 'moment' import 'moment/locale/sv' +import { useTranslation } from './hooks/use-translation' moment.locale('sv') @@ -21,6 +22,8 @@ const api = init(fetch, CookieManager) export default () => { const FullBlurView = useBackgroundBlur() + useTranslation() + return ( diff --git a/packages/app/components/auth.component.tsx b/packages/app/components/auth.component.tsx index 07f5c39a..c86f05db 100644 --- a/packages/app/components/auth.component.tsx +++ b/packages/app/components/auth.component.tsx @@ -1,5 +1,5 @@ import { Layout, Text } from '@ui-kitten/components' -import React, { useState } from 'react' +import React from 'react' import { Keyboard, KeyboardAvoidingView, @@ -12,33 +12,20 @@ import { import { Login } from './login.component' import { Colors, Layout as LayoutStyle, Sizing, Typography } from '../styles' import { SafeAreaViewContainer } from './safeAreaViewContainer.component' +import { translate } from '../utils/translation' -const funArguments = [ - 'agila', - 'billiga', - 'bättre', - 'coolare', - 'efterlängtade', - 'enkla', - 'fantastiska', - 'fria', - 'fungerande', - 'första', - 'hemmagjorda', - 'operfekta', - 'rebelliska', - 'roliga', - 'snabba', - 'upplysta', - 'öppna', -] +const randomWord = () => { + const words = translate('auth.words') + const keys = Object.keys(words) + + const randomIndex: number = Math.floor(Math.random() * keys.length) + const argumentKey: string = keys[randomIndex] + + // @ts-expect-error Fix this later + return words[argumentKey] +} export const Auth = () => { - const [argument] = useState(() => { - const argNum = Math.floor(Math.random() * funArguments.length) - return funArguments[argNum] - }) - return ( { - Öppna Skolplattformen + {translate('general.title')} - Det {argument} alternativet + {translate('auth.subtitle', { + word: randomWord(), + })} diff --git a/packages/app/components/login.component.tsx b/packages/app/components/login.component.tsx index ffac13c0..c613d791 100644 --- a/packages/app/components/login.component.tsx +++ b/packages/app/components/login.component.tsx @@ -21,6 +21,7 @@ import ActionSheet from 'rn-actionsheet-module' import { useAsyncStorage } from 'use-async-storage' import { schema } from '../app.json' import { Colors, Layout, Sizing } from '../styles' +import { translate } from '../utils/translation' import { CloseOutlineIcon, PersonIcon, @@ -43,14 +44,16 @@ export const Login = () => { 'loginMethodIndex', '0' ) + const loginMethods = [ - 'Öppna BankID på denna enhet', - 'Öppna BankID på annan enhet', - 'Logga in som testanvändare', + translate('auth.bankid_OpenOnThisDevice'), + translate('auth.bankid_OpenOnAnotherDevice'), + translate('auth.loginAsTestUser'), ] + const selectLoginMethod = () => { const options = { - title: 'Välj inloggningsmetod', + title: translate('auth.chooseLoginMethod'), optionsIOS: loginMethods, optionsAndroid: loginMethods, onCancelAndroidIndex: loginMethodIndex, @@ -110,7 +113,7 @@ export const Login = () => { : `bankid:///?autostarttoken=${token}&redirect=null` Linking.openURL(bankIdUrl) } catch (err) { - setError('Öppna BankID manuellt') + setError(translate('bankid_OpenManually')) } } @@ -143,7 +146,7 @@ export const Login = () => { {loginMethodIndex !== 2 && ( { onSubmitEditing={(event) => startLogin(event.nativeEvent.text)} caption={error || ''} onChangeText={(text) => handleInput(text)} - placeholder="Ditt personnr" + placeholder={translate('auth.placeholder_YourPersonalNumber')} /> )} @@ -189,7 +192,9 @@ export const Login = () => { onBackdropPress={() => showModal(false)} > - Väntar på BankID... + + {translate('auth.bankid_Waiting')} +