...
 
Commits (2)
......@@ -2,7 +2,7 @@
"presets": ["react-app"],
"plugins": [
["react-intl", {
"messagesDir": "build/messages",
"messagesDir": "tmp/messages",
"enforceDescriptions": false
}]
]
......
......@@ -9,6 +9,9 @@
# production
/build
# i18n (message extraction)
/tmp
# misc
.DS_Store
.env.local
......
......@@ -5,7 +5,7 @@ const manageTranslations = require('react-intl-translations-manager').default;
// import manageTranslations from 'react-intl-translations-manager';
manageTranslations({
messagesDirectory: 'build/messages/',
messagesDirectory: 'tmp/messages/',
translationsDirectory: 'src/locales/',
languages: ['en', 'fr'] // any language you need
languages: ['fr'] // any language you need
});
......@@ -18,7 +18,7 @@ const styles = {
const messages = defineMessages({
text: {
id: "alreadytalkedbutton.text",
defaultMessage: "Cette personne a déjà parlé",
defaultMessage: "This person has already spoken",
},
});
......
......@@ -36,15 +36,15 @@ const styles = theme => ({
const messages = defineMessages({
title: {
id: "app.title",
defaultMessage: "Qui parle ?",
defaultMessage: "Who's talking?",
},
cisdude: {
id: "app.cisdude",
defaultMessage: "Un mec cis",
defaultMessage: "A cis dude",
},
notcisdude: {
id: "app.notcisdude",
defaultMessage: "Pas un mec cis",
defaultMessage: "Not a cis dude",
},
});
......
......@@ -11,7 +11,7 @@ import {
const messages = defineMessages({
save: {
id: "exportbutton.save",
defaultMessage: "Sauvegarder",
defaultMessage: "Save",
},
date: {
id: "exportbutton.date",
......@@ -19,27 +19,27 @@ const messages = defineMessages({
},
timeMan: {
id: "exportbutton.timeMan",
defaultMessage: "Temps parlé par des mecs cis",
defaultMessage: "Cis dude speaking time",
},
timeOther: {
id: "exportbutton.timeOther",
defaultMessage: "Temps parlé par des autres",
defaultMessage: "Other speaking time",
},
speechesMan: {
id: "exportbutton.speechesMan",
defaultMessage: "Interventions de mecs cis",
defaultMessage: "Cis dude speeches",
},
speechesOther: {
id: "exportbutton.speechesOther",
defaultMessage: "Interventions des autres",
defaultMessage: "Other speeches",
},
speakersMan: {
id: "exportbutton.speakersMan",
defaultMessage: "Nombre d'intervenants mecs cis",
defaultMessage: "Number of cis dudes speaking",
},
speakersOther: {
id: "exportbutton.speakersOther",
defaultMessage: "Nombre d'autres intervenants",
defaultMessage: "Number of other speakers",
},
});
......
......@@ -21,15 +21,15 @@ const styles = theme => ({
const messages = defineMessages({
text1: {
id: "footer.text1",
defaultMessage: "Très largement inspiré de",
defaultMessage: "Very heavily inspired by",
},
text2: {
id: "footer.text2",
defaultMessage: "En fait, c'est pareil mais avec quelques stats en plus.",
defaultMessage: "Actually, it's the same thing with more stats.",
},
viewCode: {
id: "footer.viewCode",
defaultMessage: "Voir le code",
defaultMessage: "See the code",
},
});
......
......@@ -19,7 +19,7 @@ const styles = theme => ({
const messages = defineMessages({
title: {
id: "header.title",
defaultMessage: "Les hommes parlent trop, prouvez-le.",
defaultMessage: "Men talk too much, prove it.",
},
});
......
......@@ -25,31 +25,31 @@ const styles = {
const messages = defineMessages({
nobody: {
id: "stats.nobody",
defaultMessage: "Personne n'a encore parlé.",
defaultMessage: "Nobody has spoken yet.",
},
header: {
id: "stats.header",
defaultMessage: "Les mecs cis ont parlé :",
defaultMessage: "Cis dudes have talked:",
},
timePercent: {
id: "stats.timePercent",
defaultMessage: "{value}% du temps",
defaultMessage: "{value}% of the time",
},
speechesPercent: {
id: "stats.speechesPercent",
defaultMessage: "À {value}% des occasions",
defaultMessage: "{value}% of the opportunities",
},
speakersPercent: {
id: "stats.speakersPercent",
defaultMessage: "{value}% des intervenant⋅e⋅s",
defaultMessage: "{value}% of the speakers",
},
speechesDuration: {
id: "stats.speechesDuration",
defaultMessage: "Durée moyenne des interventions :",
defaultMessage: "Mean speech duration:",
},
forOthers: {
id: "stats.forOthers",
defaultMessage: "pour les autres : ",
defaultMessage: "For others:",
},
});
......
......@@ -41,7 +41,7 @@ const styles = theme => ({
const messages = defineMessages({
nolimit: {
id: "timerlimitedit.nolimit",
defaultMessage: "sans limite",
defaultMessage: "no limit",
},
buttontext: {
id: "timerlimitedit.buttontext",
......@@ -49,7 +49,7 @@ const messages = defineMessages({
},
modaltitle: {
id: "timerlimitedit.modaltitle",
defaultMessage: "Temps de parole maximum",
defaultMessage: "Maximum speech time",
},
minutes: {
id: "timerlimitedit.minutes",
......@@ -57,7 +57,7 @@ const messages = defineMessages({
},
seconds: {
id: "timerlimitedit.seconds",
defaultMessage: "Secondes",
defaultMessage: "Seconds",
},
});
......
......@@ -9,13 +9,11 @@ import { addLocaleData } from 'react-intl';
import en from 'react-intl/locale-data/en';
import fr from 'react-intl/locale-data/fr';
import { IntlProvider } from 'react-intl';
import messages_en from "./locales/en.json";
import messages_fr from "./locales/fr.json";
addLocaleData([...en, ...fr]);
const localeData = {
'en': messages_en,
'fr': messages_fr,
};
......
{
"alreadytalkedbutton.text": "This person has already spoken",
"app.cisdude": "A cis dude",
"app.notcisdude": "Not a cis dude",
"app.title": "Who's talking?",
"exportbutton.date": "Date",
"exportbutton.save": "Save",
"exportbutton.speakersMan": "Number of cis dudes speaking",
"exportbutton.speakersOther": "Number of other speakers",
"exportbutton.speechesMan": "Cis dude speeches",
"exportbutton.speechesOther": "Other speeches",
"exportbutton.timeMan": "Cis dude speaking time",
"exportbutton.timeOther": "Other speaking time",
"footer.text1": "Very heavily inspired by",
"footer.text2": "Actually, it's the same thing with more stats.",
"footer.viewCode": "See the code",
"header.title": "Men talk too much, proove it.",
"stats.forOthers": "For others:",
"stats.header": "Cis dudes have talked:",
"stats.nobody": "Nobody has spoken yet.",
"stats.speakersPercent": "{value}% of the speakers",
"stats.speechesDuration": "Mean speech duration:",
"stats.speechesPercent": "À {value}% of the opportunities",
"stats.timePercent": "{value}% of the time",
"timerlimitedit.buttontext": "{min}:{sec} max",
"timerlimitedit.minutes": "Minutes",
"timerlimitedit.modaltitle": "Maximum speech time",
"timerlimitedit.nolimit": "no limit",
"timerlimitedit.seconds": "Seconds"
}
\ No newline at end of file
[
"exportbutton.date",
"timerlimitedit.buttontext",
"timerlimitedit.minutes"
]
\ No newline at end of file
[
"alreadytalkedbutton.text",
"app.title",
"app.cisdude",
"app.notcisdude",
"exportbutton.save",
"exportbutton.date",
"exportbutton.timeMan",
"exportbutton.timeOther",
"exportbutton.speechesMan",
"exportbutton.speechesOther",
"exportbutton.speakersMan",
"exportbutton.speakersOther",
"footer.text1",
"footer.text2",
"footer.viewCode",
"header.title",
"stats.nobody",
"stats.header",
"stats.timePercent",
"stats.speechesPercent",
"stats.speakersPercent",
"stats.speechesDuration",
"stats.forOthers",
"timerlimitedit.nolimit",
"timerlimitedit.buttontext",
"timerlimitedit.modaltitle",
"timerlimitedit.minutes",
"timerlimitedit.seconds"
"timerlimitedit.minutes"
]
\ No newline at end of file