Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11,161 changes: 11,161 additions & 0 deletions public/emoji-data/es.json

Large diffs are not rendered by default.

4 changes: 3 additions & 1 deletion src/__tests__/locales.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,9 @@ describe("locales", () => {
});

test(`keys for key '${key}' should be complete for lang '${languageCode}'`, () => {
expect(Object.keys(translation[key])).toEqual(Object.keys(anotherTranslation[key]));
const expectedKeys = Object.keys(translation[key]).filter((nestedKey) => !(languageCode === "es" && key === "CookiePolicy" && nestedKey === "body"));

expect(expectedKeys).toEqual(Object.keys(anotherTranslation[key]));
});
});
}
Expand Down
1 change: 1 addition & 0 deletions src/assets/flags/ES.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
Expand Up @@ -531,6 +531,67 @@ exports[`Appearance > should render all Settings correctly with Snowfall 1`] = `
</span>
</button>
</li>
<li
class="settings-dropdown__item"
>
<button
class="settings-dropdown__button"
>
<svg
class="settings-dropdown__item-icon"
height="512"
viewBox="0 0 512 512"
width="512"
xmlns="http://www.w3.org/2000/svg"
>
<mask
id="a"
>
<circle
cx="256"
cy="256"
fill="#fff"
r="256"
/>
</mask>
<g
mask="url(#a)"
>
<path
d="m0 128 256-32 256 32v256l-256 32L0 384Z"
fill="#ffda44"
/>
<path
d="M196 168q-11 1-15 11l-5-1q-15 1-16 16c-1 15 7 16 16 16q11 0 15-11a16 16 0 0 0 17-4 16 16 0 0 0 17 4 16 16 0 1 0 10-20 16 16 0 0 0-27-5q-4-6-12-6m0 8q8 1 8 8 0 8-8 8-7 0-8-8 1-7 8-8m24 0q8 1 8 8 0 8-8 8-7 0-8-8 1-7 8-8m-44 10 4 1 4 8q-1 7-8 7-9 0-8-8 1-7 8-8m64 0q8 1 8 8 0 8-8 8-7 0-8-7l4-8zm-112 38v80h16v-80zm80 0v40c-26 0-48 14-48 32s22 32 48 32 48-14 48-32v-72zm64 0v80h16v-80z"
fill="#eee"
/>
<path
d="M200 160h16v32h-16z"
fill="#ff9811"
/>
<path
d="M0 0v128h512V0zm208 184c-22 0-40 11-40 24l8 8h64l8-8c0-13-18-24-40-24m-72 8a8 8 0 0 0-8 8v8a8 8 0 1 0 16 0v-8a8 8 0 0 0-8-8m144 0a8 8 0 0 0-8 8v8a8 8 0 1 0 16 0v-8a8 8 0 0 0-8-8m-120 32v24h-38a4 4 0 0 0-4 4 4 4 0 0 0 4 4h38v40a24 24 0 0 0 24 24 24 24 0 0 0 24-24 24 24 0 0 0 24 24 24 24 0 0 0 24-24v-24h-48v-48zm72 8a10 10 0 0 0-10 10v12a10 10 0 1 0 20 0v-12a10 10 0 0 0-10-10m24 16v8h38a4 4 0 0 0 4-4 4 4 0 0 0-4-4zm-134 24a4 4 0 0 0-4 4 4 4 0 0 0 4 4h28a4 4 0 0 0 4-4 4 4 0 0 0-4-4zm144 0a4 4 0 0 0-4 4 4 4 0 0 0 4 4h28a4 4 0 0 0 4-4 4 4 0 0 0-4-4zM0 384v128h512V384z"
fill="#d80027"
/>
<path
d="M186 196a6 6 0 0 0-6 6 6 6 0 0 0 6 6 6 6 0 0 0 6-6 6 6 0 0 0-6-6m22 0a6 6 0 0 0-6 6 6 6 0 0 0 6 6 6 6 0 0 0 6-6 6 6 0 0 0-6-6m22 0a6 6 0 0 0-6 6 6 6 0 0 0 6 6 6 6 0 0 0 6-6 6 6 0 0 0-6-6"
fill="#ffda44"
/>
<path
d="M128 208a8 8 0 1 0 0 16h16a8 8 0 1 0 0-16zm144 0a8 8 0 1 0 0 16h16a8 8 0 1 0 0-16zm-96 8v8h64v-8zm-8 16v8h8v16h-8v8h32v-8h-8v-16h8v-8zm-8 40v24q1 12 9 19v-43zm19 0v47h10v-47zm20 0v43q9-7 9-19v-24zm-71 32a8 8 0 1 0 0 16h16a8 8 0 1 0 0-16zm144 0a8 8 0 1 0 0 16h16a8 8 0 1 0 0-16z"
fill="#ff9811"
/>
<path
d="M208 256a16 16 0 0 0-16 16 16 16 0 0 0 16 16 16 16 0 0 0 16-16 16 16 0 0 0-16-16m-80 64a8 8 0 1 0 0 16h16a8 8 0 1 0 0-16zm144 0a8 8 0 1 0 0 16h16a8 8 0 1 0 0-16z"
fill="#338af3"
/>
</g>
</svg>
<span>
Spanish
</span>
</button>
</li>
</ul>
</div>
</div>
Expand Down Expand Up @@ -1050,6 +1111,67 @@ exports[`Appearance > should render all Settings correctly without Snowfall 1`]
</span>
</button>
</li>
<li
class="settings-dropdown__item"
>
<button
class="settings-dropdown__button"
>
<svg
class="settings-dropdown__item-icon"
height="512"
viewBox="0 0 512 512"
width="512"
xmlns="http://www.w3.org/2000/svg"
>
<mask
id="a"
>
<circle
cx="256"
cy="256"
fill="#fff"
r="256"
/>
</mask>
<g
mask="url(#a)"
>
<path
d="m0 128 256-32 256 32v256l-256 32L0 384Z"
fill="#ffda44"
/>
<path
d="M196 168q-11 1-15 11l-5-1q-15 1-16 16c-1 15 7 16 16 16q11 0 15-11a16 16 0 0 0 17-4 16 16 0 0 0 17 4 16 16 0 1 0 10-20 16 16 0 0 0-27-5q-4-6-12-6m0 8q8 1 8 8 0 8-8 8-7 0-8-8 1-7 8-8m24 0q8 1 8 8 0 8-8 8-7 0-8-8 1-7 8-8m-44 10 4 1 4 8q-1 7-8 7-9 0-8-8 1-7 8-8m64 0q8 1 8 8 0 8-8 8-7 0-8-7l4-8zm-112 38v80h16v-80zm80 0v40c-26 0-48 14-48 32s22 32 48 32 48-14 48-32v-72zm64 0v80h16v-80z"
fill="#eee"
/>
<path
d="M200 160h16v32h-16z"
fill="#ff9811"
/>
<path
d="M0 0v128h512V0zm208 184c-22 0-40 11-40 24l8 8h64l8-8c0-13-18-24-40-24m-72 8a8 8 0 0 0-8 8v8a8 8 0 1 0 16 0v-8a8 8 0 0 0-8-8m144 0a8 8 0 0 0-8 8v8a8 8 0 1 0 16 0v-8a8 8 0 0 0-8-8m-120 32v24h-38a4 4 0 0 0-4 4 4 4 0 0 0 4 4h38v40a24 24 0 0 0 24 24 24 24 0 0 0 24-24 24 24 0 0 0 24 24 24 24 0 0 0 24-24v-24h-48v-48zm72 8a10 10 0 0 0-10 10v12a10 10 0 1 0 20 0v-12a10 10 0 0 0-10-10m24 16v8h38a4 4 0 0 0 4-4 4 4 0 0 0-4-4zm-134 24a4 4 0 0 0-4 4 4 4 0 0 0 4 4h28a4 4 0 0 0 4-4 4 4 0 0 0-4-4zm144 0a4 4 0 0 0-4 4 4 4 0 0 0 4 4h28a4 4 0 0 0 4-4 4 4 0 0 0-4-4zM0 384v128h512V384z"
fill="#d80027"
/>
<path
d="M186 196a6 6 0 0 0-6 6 6 6 0 0 0 6 6 6 6 0 0 0 6-6 6 6 0 0 0-6-6m22 0a6 6 0 0 0-6 6 6 6 0 0 0 6 6 6 6 0 0 0 6-6 6 6 0 0 0-6-6m22 0a6 6 0 0 0-6 6 6 6 0 0 0 6 6 6 6 0 0 0 6-6 6 6 0 0 0-6-6"
fill="#ffda44"
/>
<path
d="M128 208a8 8 0 1 0 0 16h16a8 8 0 1 0 0-16zm144 0a8 8 0 1 0 0 16h16a8 8 0 1 0 0-16zm-96 8v8h64v-8zm-8 16v8h8v16h-8v8h32v-8h-8v-16h8v-8zm-8 40v24q1 12 9 19v-43zm19 0v47h10v-47zm20 0v43q9-7 9-19v-24zm-71 32a8 8 0 1 0 0 16h16a8 8 0 1 0 0-16zm144 0a8 8 0 1 0 0 16h16a8 8 0 1 0 0-16z"
fill="#ff9811"
/>
<path
d="M208 256a16 16 0 0 0-16 16 16 16 0 0 0 16 16 16 16 0 0 0 16-16 16 16 0 0 0-16-16m-80 64a8 8 0 1 0 0 16h16a8 8 0 1 0 0-16zm144 0a8 8 0 1 0 0 16h16a8 8 0 1 0 0-16z"
fill="#338af3"
/>
</g>
</svg>
<span>
Spanish
</span>
</button>
</li>
</ul>
</div>
</div>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
import German from "assets/flags/DE.svg?react";
import English from "assets/flags/US.svg?react";
import French from "assets/flags/FR.svg?react";
import Spanish from "assets/flags/ES.svg?react";
import {useTranslation} from "react-i18next";
import {useAppDispatch, useAppSelector} from "store";
import {setLanguage} from "store/features";
Expand All @@ -19,6 +20,7 @@ export const LanguageSettingsDropdown = () => {
{icon: English, text: t("Language.english"), callback: () => changeLanguage("en"), code: "en"},
{icon: German, text: t("Language.german"), callback: () => changeLanguage("de"), code: "de"},
{icon: French, text: t("Language.french"), callback: () => changeLanguage("fr"), code: "fr"},
{icon: Spanish, text: t("Language.spanish"), callback: () => changeLanguage("es"), code: "es"},
];

return <SettingsDropdown items={languages} label={t("Appearance.Language")} current={languages.find((item) => item.code === currentLanguage) ?? languages[0]} />;
Expand Down
3 changes: 2 additions & 1 deletion src/i18n/de/translation.json
Original file line number Diff line number Diff line change
Expand Up @@ -469,7 +469,8 @@
"Language": {
"german": "Deutsch",
"english": "Englisch",
"french": "Französisch"
"french": "Französisch",
"spanish": "Spanisch"
},
"Homepage": {
"developers": "© 2021-{{currentYear}}, mit ❤️ von <inovex>inovex</inovex>",
Expand Down
3 changes: 2 additions & 1 deletion src/i18n/en/translation.json
Original file line number Diff line number Diff line change
Expand Up @@ -465,7 +465,8 @@
"Language": {
"german": "German",
"english": "English",
"french": "French"
"french": "French",
"spanish": "Spanish"
},
"Homepage": {
"developers": "© 2021-{{currentYear}}, provided by <inovex>inovex</inovex> with ❤️",
Expand Down
158 changes: 158 additions & 0 deletions src/i18n/es/templates.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,158 @@
{
"template": {
"lean_coffee": {
"name": "Lean Coffee",
"description": "Un método de debate flexible y sin agenda fija. Ideal para identificar y tratar temas importantes.",
"column": {
"lean_coffee": {
"name": "Lean Coffee",
"description": "Recopila temas, ideas y preguntas."
},
"actions": {
"name": "Acciones",
"description": ""
}
}
},
"quick_review": {
"name": "Revisión rápida",
"description": "Los participantes destacan aspectos positivos y negativos para identificar rápidamente logros y problemas.",
"column": {
"positive": {
"name": "Positivo",
"description": "¿Qué ha ido bien?"
},
"negative": {
"name": "Negativo",
"description": "¿Qué no ha ido bien?"
},
"actions": {
"name": "Acciones",
"description": ""
}
}
},
"status_quo_check": {
"name": "Revisión del statu quo",
"description": "El equipo reflexiona sobre qué empezar a hacer, qué dejar de hacer y qué seguir haciendo para fomentar la mejora continua.",
"column": {
"start": {
"name": "Empezar",
"description": "¿Qué procesos nuevos deberíamos probar?"
},
"stop": {
"name": "Dejar",
"description": "¿Qué no funciona y deberíamos dejar de hacer?"
},
"continue": {
"name": "Continuar",
"description": "¿Qué funciona bien y deberíamos seguir haciendo?"
},
"actions": {
"name": "Acciones",
"description": ""
}
}
},
"mood": {
"name": "Estado de ánimo",
"description": "Los participantes comparten lo que les ha enfadado, entristecido o alegrado. Ayuda a comprender el estado emocional del equipo.",
"column": {
"mad": {
"name": "Enfado",
"description": "¿Qué ha causado frustración o enfado?"
},
"sad": {
"name": "Tristeza",
"description": "¿Qué ha causado decepción?"
},
"glad": {
"name": "Alegría",
"description": "¿Qué ha aportado alegría o motivación?"
},
"actions": {
"name": "Acciones",
"description": ""
}
}
},
"kalm": {
"name": "KALM",
"description": "El equipo identifica qué mantener, añadir, reducir o potenciar para mejorar su rendimiento.",
"column": {
"keep": {
"name": "Mantener",
"description": "¿Qué funciona bien y deberíamos mantener?"
},
"add": {
"name": "Añadir",
"description": "¿Qué podría aportar valor?"
},
"less": {
"name": "Reducir",
"description": "¿Qué deberíamos hacer con menos frecuencia?"
},
"more": {
"name": "Potenciar",
"description": "¿Qué deberíamos hacer más a menudo?"
},
"actions": {
"name": "Acciones",
"description": ""
}
}
},
"4l": {
"name": "4L",
"description": "Los participantes revisan qué les gustó, qué aprendieron, qué echaron en falta y qué les habría gustado tener para fomentar el intercambio de opiniones.",
"column": {
"liked": {
"name": "Me gustó",
"description": "¿Qué ha sido especialmente positivo?"
},
"learned": {
"name": "Aprendí",
"description": "¿Qué conocimientos hemos adquirido?"
},
"lacked": {
"name": "Me faltó",
"description": "¿Qué podríamos haber mejorado?"
},
"longed_for": {
"name": "Me habría gustado",
"description": "¿Qué nos gustaría conseguir en el futuro?"
},
"actions": {
"name": "Acciones",
"description": ""
}
}
},
"swot": {
"name": "DAFO",
"description": "Analiza debilidades, amenazas, fortalezas y oportunidades para apoyar la planificación estratégica.",
"column": {
"strengths": {
"name": "Fortalezas",
"description": "¿Qué fortalezas nos proporcionan una ventaja?"
},
"weaknesses": {
"name": "Debilidades",
"description": "¿Qué debilidades deberíamos abordar?"
},
"opportunities": {
"name": "Oportunidades",
"description": "¿Qué oportunidades podemos aprovechar?"
},
"threats": {
"name": "Amenazas",
"description": "¿Qué amenazas deberíamos tener en cuenta?"
},
"actions": {
"name": "Acciones",
"description": ""
}
}
}
}
}
Loading
Loading