-
Rol del participante*
+
{`${t('registration_participant_section_participant_role')}*`}
- Estoy buscando a otras personas para mi proyecto
+ {t('registration_checkbox_text')}
@@ -302,7 +304,7 @@ export const Registration = ({ project = DEFAULT_PROJECT }: { project?: UpsertPr
{submitError &&
{submitError}
}
diff --git a/src/pages/_sections/CTA.tsx b/src/pages/_sections/CTA.tsx
index 76a13bf..424bf99 100644
--- a/src/pages/_sections/CTA.tsx
+++ b/src/pages/_sections/CTA.tsx
@@ -1,6 +1,7 @@
import { ButtonSize, cn, ROUTE, useAuth, useBreakpoint, Variant } from '@common';
import { Button } from '@components';
import { useUserStore } from '@store';
+import { useTranslation } from 'react-i18next';
import { useNavigate } from 'react-router-dom';
type CTAProps = {
@@ -8,29 +9,21 @@ type CTAProps = {
};
export const CTA = ({ className }: CTAProps) => {
+ const { t } = useTranslation();
const navigate = useNavigate();
const { isMobile } = useBreakpoint();
const { signInWithDiscord } = useAuth();
const user = useUserStore((state) => state.user);
const handleButtonSize = isMobile ? ButtonSize.lg : ButtonSize.xl;
- const text = {
- logged: {
- message: '¿Quieres participar en la hackaton? ¡Inscríbete!',
- button: 'Inscribirme ahora'
- },
- notLogged: {
- message: 'Para inscribirte inicia sesión con Discord',
- button: 'Accede con Discord'
- }
- };
-
const classes = {
container: cn('relative z-10', className)
};
return (
- {user ? text.logged.message : text.notLogged.message}
+
+ {t(user ? 'home_hackathon_register_title' : 'home_hackathon_register_without_login_title')}
+
diff --git a/src/pages/_sections/Contributors.tsx b/src/pages/_sections/Contributors.tsx
index 0746e64..f6b5641 100644
--- a/src/pages/_sections/Contributors.tsx
+++ b/src/pages/_sections/Contributors.tsx
@@ -1,10 +1,12 @@
import { cn, Contributor, useContributors } from '@common';
+import { useTranslation } from 'react-i18next';
export const Contributors = () => {
const { contributors, isLoading } = useContributors();
const platinumContributors = contributors.slice(0, 3);
const goldContributors = contributors.slice(3, 10);
const silverContributors = contributors.slice(10);
+ const { t } = useTranslation();
const classes = {
contributors: `overflow-x-auto mt-5`
@@ -16,12 +18,12 @@ export const Contributors = () => {
href={`https://github.com/${contributor.username}`}
key={contributor.username}
className="contributor"
- aria-label={`Contributor: ${contributor.username}`}
+ aria-label={`${t('common_contributor')}: ${contributor.username}`}
>
{isLoading ? (
) : (
-

+

)}
));
@@ -29,11 +31,11 @@ export const Contributors = () => {
return (
- Quienes han contribuido en el desarrollo
+ {t('nav_who_has_contributed')}
{platinumContributors.length > 0 && (
<>
-
Platinum
+
{t('common_platinum')}
{
)}
{goldContributors.length > 0 && (
<>
-
Gold
+
{t('common_gold')}
{
)}
{silverContributors.length > 0 && (
<>
-
Silver
+
{t('common_silver')}
{renderContributors(silverContributors)}
diff --git a/src/pages/_sections/FeatureProjects.tsx b/src/pages/_sections/FeatureProjects.tsx
index 76a1ecc..8174d82 100644
--- a/src/pages/_sections/FeatureProjects.tsx
+++ b/src/pages/_sections/FeatureProjects.tsx
@@ -1,5 +1,6 @@
import { ButtonSize, cn, ROUTE, useProjects, Variant } from '@common';
import { Button, Carousel, SimpleCard, Spinner } from '@components';
+import { useTranslation } from 'react-i18next';
import { Link } from 'react-router-dom';
interface FeatureProjectsProps {
@@ -10,6 +11,7 @@ interface FeatureProjectsProps {
}
export const FeatureProjects = ({ className }: FeatureProjectsProps) => {
const { projects, isLoading } = useProjects();
+ const { t } = useTranslation();
const projectsSlice = [...projects].sort(() => 0.5 - Math.random()).slice(0, 4);
const classes = {
@@ -30,7 +32,7 @@ export const FeatureProjects = ({ className }: FeatureProjectsProps) => {
const renderLoading = () => {
return (
-
Cargando...
+
{t('page_loading')}
);
@@ -45,7 +47,7 @@ export const FeatureProjects = ({ className }: FeatureProjectsProps) => {
{/* TODO: Ghost button styles reset if you use the className Props, fix this */}