104 page du profil utilisateur (#116)
* [ADD] profile page * [DEL] empty lines * [UPD] added translation for the profile page * [UPD] link to the profile page * [ADD] profile page * [UPD] moved the progress bar component in its own file * [UPD] moved the progress bar component * [WIP] added all the elements to the profile view * [WIP] added all the elements to the profile view * User Slice: Use API Instance instead of access token * Front: Fix API calls with JWT Token * Front: Handle Empty Server response * Front: Fix User Model * Front: Signin Form: Fix submittingstate on error * Front: Remove logs * Front/translate refactor (#110) * Front: i18n: Create component * Front: Use new translation component * Front: Translation COmpoent: Change props name * Front: Fix merge * Front: settings persistance (#108) * Front: Add peristance dependencies * Front: Fix Cross-platform persistance * Front: Create Settings Slice * Front: Use Redux State for settings * Front: Check if access token is still valid * Front: Create Language Gate to set correct language at startup * Front: BEtter handling of Access Token validity * 54-écran-de-titre (#109) * [ADD] function to hide the splash screen * [DEL] useless lines * [ADD] compatibility * [UPD] settings for the splash screen * [ADD] chromacase logo on the splash screen * [UPD] splash logo * [UPD] set the timeout to 0 * [UPD] set the timeout to 500 * User Slice: Use API Instance instead of access token * Front: Fix API calls with JWT Token * Front: Handle Empty Server response * Front: Fix User Model * Front: Signin Form: Fix submittingstate on error * Front: Remove logs * Front/translate refactor (#110) * Front: i18n: Create component * Front: Use new translation component * Front: Translation COmpoent: Change props name * Front: Fix merge * Front: settings persistance (#108) * Front: Add peristance dependencies * Front: Fix Cross-platform persistance * Front: Create Settings Slice * Front: Use Redux State for settings * Front: Check if access token is still valid * Front: Create Language Gate to set correct language at startup * Front: BEtter handling of Access Token validity * [MERGE] * [DEL] useless lines * [UPD] settings for the splash screen * [UPD] set the timeout to 0 * [DEL] duplicated line * [REVERT] Co-authored-by: Arthi-chaud <arthur.jamet@gmail.com> Co-authored-by: Arthur Jamet <60505370+Arthi-chaud@users.noreply.github.com> * [FIX] splashscreen * [ADD] profile page * [UPD] link to the profile page * [UPD] moved the progress bar component * [FIX] translate * [UPD] reorganized all translations for ease of use * [UPD] translated all the texts and made the page more beautiful [TODO] get the informations of the user * [ADD] banner and level Co-authored-by: Arthi-chaud <arthur.jamet@gmail.com> Co-authored-by: Arthur Jamet <60505370+Arthi-chaud@users.noreply.github.com>
This commit is contained in:
+143
-82
@@ -13,21 +13,11 @@ export const en = {
|
||||
lastScore: 'Last Score',
|
||||
play: 'Play',
|
||||
langBtn: 'Language',
|
||||
diffBtn: 'Difficulty',
|
||||
backBtn: 'Back',
|
||||
settingsBtn: 'Settings',
|
||||
prefBtn: 'Preferences',
|
||||
notifBtn: 'Notifications',
|
||||
privBtn: 'Privacy',
|
||||
changepasswdBtn: 'Change Password',
|
||||
changeemailBtn: 'Change Email',
|
||||
googleacctBtn: 'Google Account',
|
||||
easy: 'Beginner',
|
||||
medium: 'Intermediate',
|
||||
hard: 'Pro',
|
||||
dark: 'Dark',
|
||||
system: 'System',
|
||||
light: 'Light',
|
||||
goNextStep: 'Step Up!',
|
||||
mySkillsToImprove: "My Competencies to work on",
|
||||
recentlyPlayed: 'Recently played',
|
||||
@@ -35,6 +25,26 @@ export const en = {
|
||||
lastSearched: "Last searched",
|
||||
levelProgress: 'good notes',
|
||||
|
||||
// profile page
|
||||
user: 'Profile',
|
||||
medals: 'Medals',
|
||||
playerStats: 'My stats',
|
||||
mostPlayedSong: 'Most played song : ',
|
||||
goodNotesPlayed: 'Good notes played : ',
|
||||
longestCombo: 'Longest combo : ',
|
||||
favoriteGenre: 'Favorite genre : ',
|
||||
|
||||
// Difficulty settings
|
||||
diffBtn: 'Difficulty',
|
||||
easy: 'Beginner',
|
||||
medium: 'Intermediate',
|
||||
hard: 'Pro',
|
||||
|
||||
// theme settings
|
||||
dark: 'Dark',
|
||||
system: 'System',
|
||||
light: 'Light',
|
||||
|
||||
// competencies
|
||||
pedalsCompetency: 'Pedals',
|
||||
rightHandCompetency: 'Right hand',
|
||||
@@ -43,25 +53,34 @@ export const en = {
|
||||
arpegeCompetency: 'Arpeges',
|
||||
chordsCompetency: 'Chords',
|
||||
|
||||
/* account settings and logs */
|
||||
// buttons
|
||||
signUp: 'Sign up',
|
||||
signIn: 'Sign in',
|
||||
"Must Contain 8 Characters, One Uppercase, One Lowercase, One Number and One Special Case Character": "Must Contain 8 Characters, One Uppercase, One Lowercase, One Number and One Special Case Character",
|
||||
login: 'Login',
|
||||
|
||||
// feedback for the user
|
||||
usernameTooShort: 'Username is too short',
|
||||
passwordTooShort: 'Password is too short',
|
||||
usernameTooLong: 'Username is too long',
|
||||
passwordTooLong: 'Password is too long',
|
||||
username: 'Username',
|
||||
password: 'Password',
|
||||
login: 'Login',
|
||||
invalidCredentials: 'Invalid credentials',
|
||||
forgottenPassword: 'Forgotten password',
|
||||
invalidEmail: 'Invalid email',
|
||||
email: 'Email',
|
||||
repeatPassword: 'Repeat password',
|
||||
passwordsDontMatch: 'Passwords don\'t match',
|
||||
signUp: 'Sign up',
|
||||
signIn: 'Sign in',
|
||||
"Must Contain 8 Characters, One Uppercase, One Lowercase, One Number and One Special Case Character": "Must Contain 8 Characters, One Uppercase, One Lowercase, One Number and One Special Case Character",
|
||||
invalidCredentials: 'Invalid credentials',
|
||||
invalidEmail: 'Invalid email',
|
||||
accountCreated: 'Account created',
|
||||
loggedIn: 'Logged in',
|
||||
usernameTaken: 'Username already taken',
|
||||
|
||||
// categories
|
||||
username: 'Username',
|
||||
password: 'Password',
|
||||
email: 'Email',
|
||||
repeatPassword: 'Repeat password',
|
||||
changepasswdBtn: 'Change Password',
|
||||
changeemailBtn: 'Change Email',
|
||||
googleacctBtn: 'Google Account',
|
||||
forgottenPassword: 'Forgotten password',
|
||||
};
|
||||
|
||||
export const fr: typeof en = {
|
||||
@@ -79,89 +98,81 @@ export const fr: typeof en = {
|
||||
lastScore: 'Dernier Score',
|
||||
play: 'Jouer',
|
||||
langBtn: 'Langage',
|
||||
diffBtn: 'Difficulté',
|
||||
backBtn: 'Retour',
|
||||
settingsBtn: "Réglages",
|
||||
prefBtn: 'Préférences',
|
||||
notifBtn: 'Notifications',
|
||||
privBtn: 'Confidentialité',
|
||||
changepasswdBtn: 'Changer le mot de pass',
|
||||
changeemailBtn: 'Change l\'email',
|
||||
googleacctBtn: 'Compte Google',
|
||||
easy: 'Débutant',
|
||||
medium: 'Intermédiaire',
|
||||
hard: 'Avancé',
|
||||
dark: 'Foncé',
|
||||
system: 'Système',
|
||||
light: 'Clair',
|
||||
settingsBtn: "Réglages",
|
||||
goNextStep: "Prochaine Etape",
|
||||
mySkillsToImprove: "Mes Skills",
|
||||
recentlyPlayed: "Joués récemment",
|
||||
search: "Rechercher",
|
||||
lastSearched: "Dernières recherches",
|
||||
levelProgress: "Niveau",
|
||||
|
||||
// profile page
|
||||
user: 'Profil',
|
||||
medals: 'Medailles',
|
||||
playerStats: 'Mes statistiques',
|
||||
mostPlayedSong: 'Chanson la plus jouée : ',
|
||||
goodNotesPlayed: 'Bonnes notes jouées : ',
|
||||
longestCombo: 'Combo le plus long : ',
|
||||
favoriteGenre: 'Genre favorit : ',
|
||||
|
||||
// Difficulty settings
|
||||
diffBtn: 'Difficulté',
|
||||
easy: 'Débutant',
|
||||
medium: 'Intermédiaire',
|
||||
hard: 'Avancé',
|
||||
|
||||
// theme settings
|
||||
dark: 'Foncé',
|
||||
system: 'Système',
|
||||
light: 'Clair',
|
||||
|
||||
// competencies
|
||||
pedalsCompetency: "Pédales",
|
||||
rightHandCompetency: "Main droite",
|
||||
leftHandCompetency: "Main gauche",
|
||||
accuracyCompetency: "Justesse",
|
||||
arpegeCompetency: "Arpege",
|
||||
chordsCompetency: "Accords",
|
||||
|
||||
/* account settings and logs */
|
||||
// buttons
|
||||
signUp: "S'inscrire",
|
||||
signIn: "Se connecter",
|
||||
"Must Contain 8 Characters, One Uppercase, One Lowercase, One Number and One Special Case Character": "",
|
||||
login: 'Se connecter',
|
||||
|
||||
// feedback for the user
|
||||
usernameTooShort: 'Le nom d\'utilisateur est trop court',
|
||||
passwordTooShort: 'Le mot de passe est trop court',
|
||||
usernameTooLong: 'Le nom d\'utilisateur est trop long',
|
||||
passwordTooLong: 'Le mot de passe est trop long',
|
||||
username: 'Nom d\'utilisateur',
|
||||
password: 'Mot de passe',
|
||||
login: 'Se connecter',
|
||||
passwordsDontMatch: "Mots de passes différents",
|
||||
invalidCredentials: "Informations d'identification invalides",
|
||||
invalidEmail: "Email invalide",
|
||||
loggedIn: 'Connecté',
|
||||
usernameTaken: 'Nom d\'utilisateur déjà pris',
|
||||
forgottenPassword: "Mot de passe oublié",
|
||||
invalidEmail: "Email invalide",
|
||||
accountCreated: "Compte créé",
|
||||
|
||||
// categories
|
||||
username: 'Nom d\'utilisateur',
|
||||
password: 'Mot de passe',
|
||||
email: "Email",
|
||||
repeatPassword: "Confirmer",
|
||||
passwordsDontMatch: "Mots de passes différents",
|
||||
signUp: "S'inscrire",
|
||||
signIn: "Se connecter",
|
||||
"Must Contain 8 Characters, One Uppercase, One Lowercase, One Number and One Special Case Character": "",
|
||||
accountCreated: "Compte créé"
|
||||
changepasswdBtn: 'Changer le mot de pass',
|
||||
changeemailBtn: 'Changer l\'email',
|
||||
googleacctBtn: 'Compte Google',
|
||||
forgottenPassword: "Mot de passe oublié",
|
||||
};
|
||||
|
||||
export const sp: typeof en = {
|
||||
welcome: 'Benvenido a Chromacase',
|
||||
welcomeMessage: "Bienvenue",
|
||||
signoutBtn: 'Desconectarse',
|
||||
signinBtn: 'Connectarse',
|
||||
langBtn: 'Langua',
|
||||
diffBtn: 'Dificultad',
|
||||
backBtn: 'Volver',
|
||||
settingsBtn: 'Settings',
|
||||
prefBtn: 'Préférences',
|
||||
notifBtn: 'Notifications',
|
||||
privBtn: 'Confidentialité',
|
||||
changepasswdBtn: 'Changer le mot de pass',
|
||||
changeemailBtn: 'Change l\'email',
|
||||
googleacctBtn: 'Compte Google',
|
||||
easy: 'Principiante',
|
||||
medium: 'Intermedio',
|
||||
hard: 'Avanzado',
|
||||
dark: 'Oscuro',
|
||||
system: 'Sistema',
|
||||
light: 'Claro',
|
||||
play: 'Jouer',
|
||||
goNextStep: "Passer à l'étape supérieure",
|
||||
mySkillsToImprove: 'Mes Competences à améliorer',
|
||||
lastSearched: "Dernières recherches",
|
||||
search: 'Rechercher',
|
||||
levelProgress: 'bonnes notes',
|
||||
|
||||
// competencies
|
||||
pedalsCompetency: 'Pédales',
|
||||
rightHandCompetency: 'Main droite',
|
||||
leftHandCompetency: 'Main gauche',
|
||||
accuracyCompetency: 'Précision',
|
||||
arpegeCompetency: 'Arpèges',
|
||||
chordsCompetency: 'Accords',
|
||||
welcomeMessage: "Bienvenue",
|
||||
changeLanguageBtn: "Changer de langue",
|
||||
searchBtn: "Rechercher",
|
||||
playBtn: "Jouer",
|
||||
@@ -170,24 +181,74 @@ export const sp: typeof en = {
|
||||
chapters: "Chapitres",
|
||||
bestScore: "Meilleur Score",
|
||||
lastScore: "Dernier score",
|
||||
play: 'Jouer',
|
||||
langBtn: 'Langua',
|
||||
backBtn: 'Volver',
|
||||
settingsBtn: 'Settings',
|
||||
prefBtn: 'Préférences',
|
||||
notifBtn: 'Notifications',
|
||||
privBtn: 'Confidentialité',
|
||||
goNextStep: "Passer à l'étape supérieure",
|
||||
mySkillsToImprove: 'Mes Competences à améliorer',
|
||||
recentlyPlayed: "Joués récemment",
|
||||
lastSearched: "Dernières recherches",
|
||||
search: 'Rechercher',
|
||||
levelProgress: 'bonnes notes',
|
||||
|
||||
// profile page
|
||||
user: 'Profil',
|
||||
medals: 'Medailles',
|
||||
playerStats: 'Mes statistiques',
|
||||
mostPlayedSong: 'Chanson la plus jouée : ',
|
||||
goodNotesPlayed: 'Bonnes notes jouées : ',
|
||||
longestCombo: 'Combo le plus long : ',
|
||||
favoriteGenre: 'Genre favorit : ',
|
||||
|
||||
// Difficulty settings
|
||||
diffBtn: 'Dificultad',
|
||||
easy: 'Principiante',
|
||||
medium: 'Intermedio',
|
||||
hard: 'Avanzado',
|
||||
|
||||
// theme settings
|
||||
dark: 'Oscuro',
|
||||
system: 'Sistema',
|
||||
light: 'Claro',
|
||||
|
||||
// competencies
|
||||
pedalsCompetency: 'Pédales',
|
||||
rightHandCompetency: 'Main droite',
|
||||
leftHandCompetency: 'Main gauche',
|
||||
accuracyCompetency: 'Précision',
|
||||
arpegeCompetency: 'Arpèges',
|
||||
chordsCompetency: 'Accords',
|
||||
|
||||
/* account settings and logs */
|
||||
// buttons
|
||||
signUp: 'S\'inscrire',
|
||||
signIn: 'Se connecter',
|
||||
"Must Contain 8 Characters, One Uppercase, One Lowercase, One Number and One Special Case Character": "Doit contenir 8 caractères, une majuscule, une minuscule, un chiffre et un caractère spécial",
|
||||
login: 'Se connecter',
|
||||
|
||||
// feedback for the user
|
||||
usernameTooShort: 'Le nom d\'utilisateur est trop court',
|
||||
passwordTooShort: 'Le mot de passe est trop court',
|
||||
usernameTooLong: 'Le nom d\'utilisateur est trop long',
|
||||
passwordTooLong: 'Le mot de passe est trop long',
|
||||
username: 'Nom d\'utilisateur',
|
||||
password: 'Mot de passe',
|
||||
login: 'Se connecter',
|
||||
passwordsDontMatch: 'Les mots de passe ne correspondent pas',
|
||||
invalidCredentials: "Informations d'identification invalides",
|
||||
forgottenPassword: 'Mot de passe oublié',
|
||||
invalidEmail: 'Email invalide',
|
||||
email: 'Email',
|
||||
repeatPassword: 'Répéter le mot de passe',
|
||||
passwordsDontMatch: 'Les mots de passe ne correspondent pas',
|
||||
signUp: 'S\'inscrire',
|
||||
signIn: 'Se connecter',
|
||||
"Must Contain 8 Characters, One Uppercase, One Lowercase, One Number and One Special Case Character": "Doit contenir 8 caractères, une majuscule, une minuscule, un chiffre et un caractère spécial",
|
||||
accountCreated: 'Compte créé',
|
||||
loggedIn: 'Connectado',
|
||||
usernameTaken: 'Nombre de usuario ya tomado',
|
||||
|
||||
// categories
|
||||
username: 'Nom d\'utilisateur',
|
||||
password: 'Mot de passe',
|
||||
email: 'Email',
|
||||
repeatPassword: 'Répéter le mot de passe',
|
||||
changepasswdBtn: 'Changer le mot de pass',
|
||||
changeemailBtn: 'Change l\'email',
|
||||
googleacctBtn: 'Compte Google',
|
||||
};
|
||||
Reference in New Issue
Block a user