diff --git a/apps/docs/become-a-translator.mdx b/apps/docs/become-a-translator.mdx new file mode 100644 index 000000000..9515629fd --- /dev/null +++ b/apps/docs/become-a-translator.mdx @@ -0,0 +1,135 @@ +--- +title: Become a Translator +description: Help translate Rallly into your language +--- + +Rallly is made available in different languages by volunteer translators. +Translations can be submitted through [Crowdin](https://crwd.in/rallly). +Submitting translations is super easy and doesn't require any coding skills. + +## Sign Up to Crowdin + +The first thing you need to do is [create a Crowdin account](https://accounts.crowdin.com/register). Crowdin offers a user-friendly interface to submit translations. +You can then join the project using this link: https://crwd.in/rallly + +Once you've joined the project: + +1. Pick the language you'd like to translate +2. Select a file (each file contains text for different parts of the site) +3. Start translating! + + + ![Crowdin + Project](https://user-images.githubusercontent.com/676849/180199933-4e507c8e-0e9a-498a-99c8-a7ad44cb7ded.png) + + +## Tips for Translators + +Here are a few things to keep in mind when translating. + +### Punctuation + +Pay close attention to how phrases are punctuated. + +``` +Name: +``` + +If a sentence ends with a period (.) or a colon (:), you will want to include that in your translation. + +``` +❌ Nombre +✅ Nombre: +``` + +### Variables + +Variables are placeholders for content which can change. They look like this: + +``` +Hi {name}, welcome back! +``` + +`{name}` is a variable which will be replaced with the user's name. Please make sure variables remain unchanged when translating. + +``` +❌ Salut {nom}, bienvenue! +✅ Salut {name}, bienvenue! +``` + +### Tags + +Tags can be used to create a hyperlink or change the appearance of some text (ex. bold, italics etc…). They look like this: + +``` +Go to page +``` + +The tags should remain wrapped around the same content and should not be translated. The contents between the tags should be translated (unless they are a [variable](#variables)). + +``` +❌ Gehen Sie zur Seite +❌ Gehen Sie zur Seite +❌ Gehen Sie zur page +✅ Gehen Sie zur Seite +``` + +### Plurals + + + We use [ICU message format](https://crowdin.com/blog/2022/04/13/icu-guide) to + format our plurals + + +Plurals are like special rules that help make sure a message is written correctly when you're using different values. + +For example, the following message will display **1 option** if count is `1` or **2 options** if count is anything else. + +``` +{count, plural, one {# option} other {# options}} +``` + +Note that `#` is a placeholder for the value of `count`. + +If your language requires more than one plural form, you can add additional rules. + +``` +{count, plural, one {# опция} two {# опции} few {# опции} other {# опций}} +``` + +### Register + +For languages that have different registers (informal vs. formal), the general advise is to use an **informal** register. However, there may be exceptions for certain languages so if you are not sure please [reach out](#contact). + +## FAQ + + + + You should still join the Crowdin project. When new translations are added + you will be notified to help translate them. + + + New languages need to be manually added by us. If you'd like us to add your + language please [contact us](#contact). + + + Translations are manually approved before being released. This can take + anywhere form a few hours to a few days. + + + +## Contact + +If you have an questions you can reach out using one of the following methods: + + + + + + + + diff --git a/apps/docs/guest-sessions.mdx b/apps/docs/guest-sessions.mdx deleted file mode 100644 index 6d230f03c..000000000 --- a/apps/docs/guest-sessions.mdx +++ /dev/null @@ -1,36 +0,0 @@ ---- -title: "Guest sessions" -description: - "When you vote on a poll, you may need to come back later and adjust your - votes. Guest sessions allow you to do this without making an account and - logging in." ---- - -A guest session is created automatically when you vote or comment on a poll. The -session data is stored as a cookie in your browser. - -![](/images/guest-sessions-1.png) - -Guest sessions will remain active until you manually end them or your browser -cookies are wiped. **Once a guest session ends it cannot be resumed**. - -### Ending a guest session - -You can end a guest session by selecting **Forget me** from the dropdown menu. - -![](/images/guest-sessions-2.png) - -### Limitations - -- Since guest sessions are stored in your browser, you will need to use the same - browser and the same device to edit your votes/comments. - -- **If you end a guest session, it cannot be resumed**. The only way to have - your votes and comments edited is to ask the administrator of a poll to edit - them for you. - -### Logging in - -Logging in while you have an active guest session will automatically assign the -votes and comments you've made to an account. Once you do this, you can edit -your votes and comments from anywhere by logging in with the same email address. diff --git a/apps/docs/mint.json b/apps/docs/mint.json index 0b43d77d2..0e6896152 100644 --- a/apps/docs/mint.json +++ b/apps/docs/mint.json @@ -62,6 +62,10 @@ "self-hosting/managed-hosting", "self-hosting/configuration-options" ] + }, + { + "group": "Contribute", + "pages": ["become-a-translator"] } ], "footerSocials": { diff --git a/apps/docs/privacy-and-security.mdx b/apps/docs/privacy-and-security.mdx deleted file mode 100644 index 06689026f..000000000 --- a/apps/docs/privacy-and-security.mdx +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: "Privacy & Security" ---- - -### Is my data safe? - -Yes! We do everything we can to keep your data safe and make sure your privacy -is respected. We do not use your data to make a profit and it is not shared with -any third-parties. If you have any concerns or would like to request the removal -of your data from our servers please send an email to support@rallly.co diff --git a/apps/web/declarations/i18next.d.ts b/apps/web/declarations/i18next.d.ts index 672381a28..25e3fcb59 100644 --- a/apps/web/declarations/i18next.d.ts +++ b/apps/web/declarations/i18next.d.ts @@ -1,20 +1,14 @@ import "react-i18next"; import app from "../public/locales/en/app.json"; -import common from "../public/locales/en/common.json"; -import errors from "../public/locales/en/errors.json"; -import homepage from "../public/locales/en/homepage.json"; interface I18nNamespaces { - homepage: typeof homepage; app: typeof app; - common: typeof common; - errors: typeof errors; } declare module "i18next" { interface CustomTypeOptions { - defaultNS: "common"; + defaultNS: "app"; resources: I18nNamespaces; returnNull: false; } diff --git a/apps/web/i18n-unused.config.js b/apps/web/i18n-unused.config.js deleted file mode 100644 index 915236e6a..000000000 --- a/apps/web/i18n-unused.config.js +++ /dev/null @@ -1,6 +0,0 @@ -module.exports = { - localesPath: "public/locales/en", - srcPath: "src", - translationKeyMatcher: - /(?:[$ .{=(](_|t|tc|i18nKey))\(.*?[\),]|i18nKey={?"(.*?)"/gi, -}; diff --git a/apps/web/i18n.config.js b/apps/web/i18n.config.js new file mode 100644 index 000000000..028e542be --- /dev/null +++ b/apps/web/i18n.config.js @@ -0,0 +1,6 @@ +const languages = require("@rallly/languages/languages.json"); + +module.exports = { + defaultLocale: "en", + locales: Object.keys(languages), +}; diff --git a/apps/web/i18next-scanner.config.js b/apps/web/i18next-scanner.config.js new file mode 100644 index 000000000..37e54b9a9 --- /dev/null +++ b/apps/web/i18next-scanner.config.js @@ -0,0 +1,34 @@ +const typescriptTransform = require("i18next-scanner-typescript"); + +module.exports = { + input: ["src/**/*.{ts,tsx}"], + options: { + keySeparator: ".", + nsSeparator: false, + defaultNs: "app", + defaultValue: function (lng) { + if (lng === "en") { + return "__STRING_NOT_TRANSLATED__"; + } + return ""; + }, + lngs: ["en"], + ns: ["app"], + plural: false, + removeUnusedKeys: true, + func: { + list: ["t"], + extensions: [".js", ".jsx"], + }, + trans: { + extensions: [".js", ".jsx"], + }, + resource: { + loadPath: "public/locales/{{lng}}/{{ns}}.json", + savePath: "public/locales/{{lng}}/{{ns}}.json", + }, + }, + format: "json", + fallbackLng: "en", + transform: typescriptTransform(), +}; diff --git a/apps/web/next-i18next.config.js b/apps/web/next-i18next.config.js index 4a9a4e539..8423aef44 100644 --- a/apps/web/next-i18next.config.js +++ b/apps/web/next-i18next.config.js @@ -1,12 +1,12 @@ +const ICU = require("i18next-icu/i18nextICU.js"); const path = require("path"); -const languages = require("@rallly/languages/languages.json"); +const i18n = require("./i18n.config.js"); module.exports = { - i18n: { - defaultLocale: "en", - locales: Object.keys(languages), - }, + i18n, + defaultNS: "app", reloadOnPrerender: process.env.NODE_ENV === "development", localePath: path.resolve("./public/locales"), - returnNull: false, + use: [new ICU()], + serializeConfig: false, }; diff --git a/apps/web/next.config.js b/apps/web/next.config.js index 2346abf68..6dc588851 100644 --- a/apps/web/next.config.js +++ b/apps/web/next.config.js @@ -4,7 +4,7 @@ // https://docs.sentry.io/platforms/javascript/guides/nextjs/ const { withSentryConfig } = require("@sentry/nextjs"); -const { i18n } = require("./next-i18next.config"); +const i18n = require("./i18n.config.js"); const withBundleAnalyzer = require("@next/bundle-analyzer")({ enabled: process.env.ANALYZE === "true", }); diff --git a/apps/web/package.json b/apps/web/package.json index fff0dc45e..029a077cd 100644 --- a/apps/web/package.json +++ b/apps/web/package.json @@ -9,7 +9,7 @@ "start": "next start", "lint": "eslint .", "lint:tsc": "tsc --noEmit", - "lint:i18n": "i18n-unused remove-unused", + "i18n:scan": "i18next-scanner --config i18next-scanner.config.js", "prettier": "prettier --write ./src", "test": "PORT=3001 playwright test", "test:codegen": "playwright codegen http://localhost:3000", @@ -35,6 +35,8 @@ "dayjs": "^1.11.7", "framer-motion": "^6.5.1", "i18next": "^22.4.9", + "i18next-icu": "^2.3.0", + "intl-messageformat": "^10.3.4", "iron-session": "^6.3.1", "js-cookie": "^3.0.1", "lodash": "^4.17.21", @@ -79,7 +81,8 @@ "eslint-plugin-react": "^7.23.2", "eslint-plugin-react-hooks": "^4.2.0", "eslint-plugin-simple-import-sort": "^7.0.0", - "i18n-unused": "^0.12.0", + "i18next-scanner": "^4.2.0", + "i18next-scanner-typescript": "^1.1.1", "prettier-plugin-tailwindcss": "^0.1.8", "smtp-tester": "^2.0.1", "wait-on": "^6.0.1" diff --git a/apps/web/public/locales/ca/app.json b/apps/web/public/locales/ca/app.json index c9046c079..11e0b20dc 100644 --- a/apps/web/public/locales/ca/app.json +++ b/apps/web/public/locales/ca/app.json @@ -2,7 +2,7 @@ "12h": "12 h", "24h": "24 h", "addTimeOption": "Afegir franja horària", - "adminPollTitle": "{{title}}: Administrador", + "adminPollTitle": "{title}: Administrador", "alreadyRegistered": "Ja estàs registrat? Inicia sessió →", "applyToAllDates": "Aplicar a totes les dates", "areYouSure": "N'esteu segur?", @@ -17,7 +17,7 @@ "copied": "Copiat", "copyLink": "Copiar l'enllaç", "createAnAccount": "Crea un compte", - "createdBy": "per {{name}}", + "createdBy": "per {name}", "createNew": "Nova enquesta", "createPoll": "Crear enquesta", "creatingDemo": "Crear enquesta de prova…", @@ -27,7 +27,7 @@ "deletedPoll": "Enquesta suprimida", "deletedPollInfo": "Aquesta enquesta ja no existeix.", "deletePoll": "Suprimir l'enquesta", - "deletePollDescription": "Totes les dades relacionades amb aquesta enquesta se suprimiran. Per confirmar, escrigui ”{{confirmText}}” a l'entrada següent:", + "deletePollDescription": "Totes les dades relacionades amb aquesta enquesta se suprimiran. Per confirmar, escrigui ”{confirmText}” a l'entrada següent:", "deletingOptionsWarning": "Estàs suprimint opcions que han estat votades pels participants. Els seus vots també seran eliminats.", "demoPollNotice": "Les enquestes de prova se suprimeixen automàticament després d'un dia", "description": "Descripció", @@ -79,39 +79,27 @@ "noVotes": "Ningú ha votat aquesta opció", "ok": "D'acord", "optional": "opcional", - "optionCount_few": "{{count}} opcions", - "optionCount_many": "{{count}} opcions", - "optionCount_one": "{{count}} opció", - "optionCount_other": "{{count}} opcions", - "optionCount_two": "{{count}} opcions", - "optionCount_zero": "{{count}} opcions", "participant": "Participant", - "participantCount_few": "{{count}} participants", - "participantCount_many": "{{count}} participants", - "participantCount_one": "{{count}} participant", - "participantCount_other": "{{count}} participants", - "participantCount_two": "{{count}} participants", - "participantCount_zero": "{{count}} participants", "pollHasBeenLocked": "Aquesta enquesta ha estat bloquejada", "pollsEmpty": "No s'ha creat cap enquesta", "possibleAnswers": "Possibles respostes", "preferences": "Preferències", "previousMonth": "Mes anterior", - "profileUser": "Perfil - {{username}}", + "profileUser": "Perfil - {username}", "redirect": "Clica aquí si no ets redirigit de forma automàtica…", "register": "Registrar-se", "requiredNameError": "El nom és obligatori", - "requiredString": "\"{{name}}\" és necessari", + "requiredString": "\"{name}\" és necessari", "resendVerificationCode": "Reenvia codi de verificació", "response": "Resposta", "save": "Desa", - "saveInstruction": "Selecciona la teva disponibilitat i prem {{action}}", + "saveInstruction": "Selecciona la teva disponibilitat i prem {action}", "share": "Compartir", "shareDescription": "Envia aquest enllaç als participants perquè puguin votar a l'enquesta.", "shareLink": "Comparteix via enllaç", "specifyTimes": "Especifica franges horàries", "specifyTimesDescription": "Inclou les hores d'inici i final per a cada opció", - "stepSummary": "Pas {{current}} de {{total}}", + "stepSummary": "Pas {current} de {total}", "submit": "Envia", "sunday": "Diumenge", "timeFormat": "Format horari:", @@ -127,7 +115,7 @@ "validEmail": "Si us plau, introdueix un correu vàlid", "verificationCodeHelp": "No has rebut el correu? Revisa el correu brossa.", "verificationCodePlaceholder": "Introdueix el codi de 6 dígits", - "verificationCodeSent": "Un codi de verificació s'ha enviat a {{email}} Modifica'l", + "verificationCodeSent": "Un codi de verificació s'ha enviat a {email} Modifica'l", "verifyYourEmail": "Verifica el teu correu", "weekStartsOn": "La setmana comença en", "weekView": "Vista setmanal", @@ -138,5 +126,61 @@ "yourDetails": "Les teves dades", "yourName": "El teu nom…", "yourPolls": "Les teves enquestes", - "yourProfile": "El teu perfil" + "yourProfile": "El teu perfil", + "homepage": { + "3Ls": "Sí, amb 3 Ls", + "adFree": "Sense anuncis", + "adFreeDescription": "Li pots donar un descans al teu bloquejador d'anuncis - No el necessitaràs aquí.", + "comments": "Comentaris", + "commentsDescription": "Els participants poden fer comentaris a la teva enquesta i aquests seran visibles per a tothom.", + "features": "Característiques", + "featuresSubheading": "Planificant, de forma intel·ligent", + "getStarted": "Comença", + "heroSubText": "Troba la data apropiada amb el mínim esforç", + "heroText": "Planifica
reunions grupals
amb facilitat", + "links": "Enllaços", + "liveDemo": "Demostració en viu", + "metaDescription": "Crea enquestes i vota per trobar el millor dia o hora. Una alternativa gratuïta a Doodle.", + "metaTitle": "Rallly - Planifica reunions de grup", + "mobileFriendly": "Adaptat per mòbil", + "mobileFriendlyDescription": "Funciona perfectament en dispositius mòbils, per tant, els participants poden respondre enquestes des d'on siguin.", + "new": "Nou", + "noLoginRequired": "No cal iniciar sessió", + "noLoginRequiredDescription": "No es necessita iniciar sessió per crear o participar en una enquesta.", + "notifications": "Notificacions", + "notificationsDescription": "Fes un seguiment de qui ha respost. Rep notificacions quan els participants votin o comentin a la teva enquesta.", + "openSource": "Codi obert", + "openSourceDescription": "El codi font és completament obert i disponible a GitHub.", + "participant": "Participant", + "participantCount": "{count, plural, one {# participant} other {# participants}}", + "perfect": "Perfecte!", + "principles": "Principis", + "principlesSubheading": "No som com la resta", + "selfHostable": "Autoallotjable", + "selfHostableDescription": "Executa-ho al teu servidor per tenir control absolut de totes les dades.", + "timeSlots": "Franges horàries", + "timeSlotsDescription": "Defineix el temps d'inici i final per a cada opció a l'enquesta. Els temps es poden ajustar automàticament a la zona horària de cada participant o es poden establir per ignorar completament les zones horàries." + }, + "common": { + "blog": "Blog", + "discussions": "Debats", + "footerCredit": "Desenvolupat per @imlukevella", + "footerSponsor": "Aquest projecte és finançat pels usuaris. Si us plau, considera donar-nos suport fent un donatiu.", + "home": "Inici", + "language": "Idioma", + "links": "Enllaços", + "poweredBy": "Impulsat per", + "privacyPolicy": "Política de privacitat", + "starOnGithub": "Segueix-nos a GitHub", + "support": "Suport", + "volunteerTranslator": "Ajuda a traduir aquesta pàgina" + }, + "errors": { + "notFoundTitle": "404 no s'ha trobat", + "notFoundDescription": "No s'ha pogut trobar la pàgina que estaves buscant.", + "goToHome": "Anar a l'Inici", + "startChat": "Inicia un xat" + }, + "optionCount": "{count, plural, one {# opció} other {# opcions}}", + "participantCount": "{count, plural, one {# participant} other {# participants}}" } diff --git a/apps/web/public/locales/ca/common.json b/apps/web/public/locales/ca/common.json deleted file mode 100644 index 71d3925f5..000000000 --- a/apps/web/public/locales/ca/common.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "blog": "Blog", - "discussions": "Debats", - "footerCredit": "Desenvolupat per @imlukevella", - "footerSponsor": "Aquest projecte és finançat pels usuaris. Si us plau, considera donar-nos suport fent un donatiu.", - "home": "Inici", - "language": "Idioma", - "links": "Enllaços", - "poweredBy": "Impulsat per", - "privacyPolicy": "Política de privacitat", - "starOnGithub": "Segueix-nos a GitHub", - "support": "Suport", - "volunteerTranslator": "Ajuda a traduir aquesta pàgina" -} diff --git a/apps/web/public/locales/ca/errors.json b/apps/web/public/locales/ca/errors.json deleted file mode 100644 index f0b9187b0..000000000 --- a/apps/web/public/locales/ca/errors.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "notFoundTitle": "404 no s'ha trobat", - "notFoundDescription": "No s'ha pogut trobar la pàgina que estaves buscant.", - "goToHome": "Anar a l'Inici", - "startChat": "Inicia un xat" -} diff --git a/apps/web/public/locales/ca/homepage.json b/apps/web/public/locales/ca/homepage.json deleted file mode 100644 index 640c13ea7..000000000 --- a/apps/web/public/locales/ca/homepage.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "3Ls": "Sí, amb 3 Ls", - "adFree": "Sense anuncis", - "adFreeDescription": "Li pots donar un descans al teu bloquejador d'anuncis - No el necessitaràs aquí.", - "comments": "Comentaris", - "commentsDescription": "Els participants poden fer comentaris a la teva enquesta i aquests seran visibles per a tothom.", - "features": "Característiques", - "featuresSubheading": "Planificant, de forma intel·ligent", - "getStarted": "Comença", - "heroSubText": "Troba la data apropiada amb el mínim esforç", - "heroText": "Planifica
reunions grupals
amb facilitat", - "links": "Enllaços", - "liveDemo": "Demostració en viu", - "metaDescription": "Crea enquestes i vota per trobar el millor dia o hora. Una alternativa gratuïta a Doodle.", - "metaTitle": "Rallly - Planifica reunions de grup", - "mobileFriendly": "Adaptat per mòbil", - "mobileFriendlyDescription": "Funciona perfectament en dispositius mòbils, per tant, els participants poden respondre enquestes des d'on siguin.", - "new": "Nou", - "noLoginRequired": "No cal iniciar sessió", - "noLoginRequiredDescription": "No es necessita iniciar sessió per crear o participar en una enquesta.", - "notifications": "Notificacions", - "notificationsDescription": "Fes un seguiment de qui ha respost. Rep notificacions quan els participants votin o comentin a la teva enquesta.", - "openSource": "Codi obert", - "openSourceDescription": "El codi font és completament obert i disponible a GitHub.", - "participant": "Participant", - "participantCount_zero": "{{count}} participants", - "participantCount_one": "{{count}} participant", - "participantCount_two": "{{count}} participants", - "participantCount_few": "{{count}} participants", - "participantCount_many": "{{count}} participants", - "participantCount_other": "{{count}} participants", - "perfect": "Perfecte!", - "principles": "Principis", - "principlesSubheading": "No som com la resta", - "selfHostable": "Autoallotjable", - "selfHostableDescription": "Executa-ho al teu servidor per tenir control absolut de totes les dades.", - "timeSlots": "Franges horàries", - "timeSlotsDescription": "Defineix el temps d'inici i final per a cada opció a l'enquesta. Els temps es poden ajustar automàticament a la zona horària de cada participant o es poden establir per ignorar completament les zones horàries." -} diff --git a/apps/web/public/locales/cs/app.json b/apps/web/public/locales/cs/app.json index 5b82ff7bc..fca7b6f17 100644 --- a/apps/web/public/locales/cs/app.json +++ b/apps/web/public/locales/cs/app.json @@ -2,7 +2,7 @@ "12h": "12-hodinový", "24h": "24-hodinový", "addTimeOption": "Vybrat konkrétní čas", - "adminPollTitle": "{{title}}: Administrátor", + "adminPollTitle": "{title}: Administrátor", "alreadyRegistered": "Ste už zaregistrovaný? Prihlásenie →", "applyToAllDates": "Použít pro všechny termíny", "areYouSure": "Jste si jisti?", @@ -21,7 +21,7 @@ "copied": "Zkopírováno", "copyLink": "Zkopírovat odkaz", "createAnAccount": "Vytvoriť účet", - "createdBy": "od {{name}}", + "createdBy": "od {name}", "createNew": "Vytvořit novou", "createPoll": "Vytvořit anketu", "creatingDemo": "Vytvářím demo anketu…", @@ -30,10 +30,10 @@ "deleteDate": "Odstranit termín", "deletedPoll": "Smazaná anketa", "deletedPollInfo": "Tato anketa již neexistuje.", - "deleteParticipant": "Smazat {{name}}?", + "deleteParticipant": "Smazat {name}?", "deleteParticipantDescription": "Opravdu chcete tohoto účastníka smazat? Tuto akci nelze vrátit zpět.", "deletePoll": "Smazat anketu", - "deletePollDescription": "Všechna data související s touto anketou budou smazána. Pro potvrzení, prosím, zadejte \"{{confirmText}}” do níže uvedeného pole:", + "deletePollDescription": "Všechna data související s touto anketou budou smazána. Pro potvrzení, prosím, zadejte \"{confirmText}” do níže uvedeného pole:", "deletingOptionsWarning": "Mažete možnosti, pro které účastníci hlasovali. Jejich hlasy budou taktéž smazány.", "demoPollNotice": "Demo ankety se po jednom dni automaticky odstraní", "description": "Popis", @@ -87,7 +87,7 @@ "nextMonth": "Další měsíc", "no": "Ne", "noDatesSelected": "Nebyl vybrán žádný termín", - "notificationsDisabled": "Pro {{title}} byly zakázány notifikace", + "notificationsDisabled": "Pro {title} byly zakázány notifikace", "notificationsGuest": "Pro zapnutí oznámení se přihlaste", "notificationsOff": "Oznámení jsou vypnuta", "notificationsOn": "Oznámení jsou zapnuta", @@ -95,33 +95,21 @@ "noVotes": "Nikdo pro tuto možnost nehlasoval", "ok": "Ok", "optional": "volitelné", - "optionCount_few": "{{count}} možností", - "optionCount_many": "{{count}} možností", - "optionCount_one": "{{count}} možnost", - "optionCount_other": "{{count}} možností", - "optionCount_two": "{{count}} možností", - "optionCount_zero": "{{count}} možností", "participant": "Účastník", - "participantCount_few": "{{count}} účastníků", - "participantCount_many": "{{count}} účastníků", - "participantCount_one": "{{count}} účastník", - "participantCount_other": "{{count}} účastníků", - "participantCount_two": "{{count}} účastníků", - "participantCount_zero": "{{count}} účastníků", "pollHasBeenLocked": "Anketa byla uzamčena", "pollsEmpty": "Nebyly vytvořeny žádné ankety", "possibleAnswers": "Možné odpovědi", "preferences": "Předvolby", "previousMonth": "Předchozí měsíc", - "profileUser": "Profil - {{username}}", + "profileUser": "Profil - {username}", "redirect": "Klikněte zde, pokud nejste automaticky přesměrováni…", "register": "Registrovať sa", "requiredNameError": "Jméno je vyžadováno", - "requiredString": "„{{name}}“ je povinné", + "requiredString": "„{name}“ je povinné", "resendVerificationCode": "Znovu odeslat ověřovací kód", "response": "Reakce", "save": "Uložit", - "saveInstruction": "Vyberte svou dostupnost a klikněte na {{action}}", + "saveInstruction": "Vyberte svou dostupnost a klikněte na {action}", "send": "Odeslat", "sendFeedback": "Odeslat zpětnou vazbu", "share": "Sdílet", @@ -129,7 +117,7 @@ "shareLink": "Odkaz ke sdílení", "specifyTimes": "Určete časy", "specifyTimesDescription": "Zahrnout počáteční a koncové časy pro každý termín", - "stepSummary": "Krok {{current}} z {{total}}", + "stepSummary": "Krok {current} z {total}", "submit": "Odeslat", "sunday": "Neděli", "timeFormat": "Formát času:", @@ -145,7 +133,7 @@ "validEmail": "Zadejte, prosím, platnou e-mailovou adresu", "verificationCodeHelp": "Nedostali jste e-mail? Zkontrolujte spam/junk.", "verificationCodePlaceholder": "Zadejte 6místný kód", - "verificationCodeSent": "Ověřovací kód byl odeslán na adresu {{email}} Změnit", + "verificationCodeSent": "Ověřovací kód byl odeslán na adresu {email} Změnit", "verifyYourEmail": "Ověřte e-mailovou adresu", "weekStartsOn": "Týden začíná v", "weekView": "Týdenní pohled", @@ -156,5 +144,63 @@ "yourDetails": "Vaše údaje", "yourName": "Vaše jméno…", "yourPolls": "Vaše ankety", - "yourProfile": "Váš profil" + "yourProfile": "Váš profil", + "homepage": { + "3Ls": "Ano—se třemi L", + "adFree": "Bez reklam", + "adFreeDescription": "Nechte svůj blokátor reklam spát = tady nebude potřeba.", + "comments": "Komentáře", + "commentsDescription": "Účastníci se mohou vyjádřit k vašemu průzkumu a komentáře budou viditelné pro všechny.", + "features": "Funkce", + "featuresSubheading": "Plánování, chytřeji", + "getStarted": "Začněme", + "heroSubText": "Najděte ideální termín bez překlikávání", + "heroText": "Plánujte
společná setkání
snadno a rychle", + "links": "Odkazy", + "liveDemo": "Demo", + "metaDescription": "Vytvořte ankety a hlasujte pro nalezení nejlepšího dne nebo času. Bezplatná alternativa k Doodle.", + "metaTitle": "Rallly - naplánovat setkání skupin", + "mobileFriendly": "Vhodné pro mobil", + "mobileFriendlyDescription": "Funguje skvěle na mobilních zařízeních, aby účastníci mohli odpovídat na ankety, ať jsou kdekoliv.", + "new": "Nové", + "noLoginRequired": "Bez přihlášení", + "noLoginRequiredDescription": "Pro vytvoření nebo účast v anketě se nemusíte přihlásit.", + "notifications": "Oznámení", + "notificationsDescription": "Sledujte kdo odpověděl. Dostávejte upozornění, když účastníci hlasují nebo komentují Vaši anketu.", + "openSource": "Open-source", + "openSourceDescription": "Veškerý kód je plně open-source a k dispozici na GitHub.", + "participant": "Účastník", + "participantCount": "{count, plural, one {# účastník} other {# účastníků}}", + "perfect": "Skvěle!", + "principles": "Zásady", + "principlesSubheading": "Nejsme jako ostatní", + "selfHostable": "Vlastní hosting", + "selfHostableDescription": "Rozjeďte si vlastní server a získejte plnou kontrolu nad svými daty.", + "timeSlots": "Časové sloty", + "timeSlotsDescription": "Nastavte počáteční a koncový čas pro každou možnost ve Vaší anketě. Časy mohou být automaticky upraveny podle časové zóny každého účastníka, nebo mohou být nastaveny tak, aby zcela časové zóny ignorovaly." + }, + "common": { + "blog": "Blog", + "discussions": "Diskuze", + "footerCredit": "Vytvořil @imlukevella", + "footerSponsor": "Tento projekt je financován uživateli. Zvažte jeho podporu příspěvkem.", + "home": "Domů", + "language": "Jazyk", + "links": "Odkazy", + "poweredBy": "Poháněn", + "privacyPolicy": "Ochrana osobních údajů", + "starOnGithub": "Dejte nám hvězdu na Github", + "support": "Podpora", + "cookiePolicy": "Zásady používání cookies", + "termsOfUse": "Podmínky používání webu", + "volunteerTranslator": "Pomozte přeložit tento web" + }, + "errors": { + "notFoundTitle": "404 nenalezeno", + "notFoundDescription": "Nemohli jsme najít stránku, kterou hledáte.", + "goToHome": "Přejít domů", + "startChat": "Zahájit chat" + }, + "optionCount": "{count, plural, one {# možnost} other {# možností}}", + "participantCount": "{count, plural, one {# účastník} other {# účastníků}}" } diff --git a/apps/web/public/locales/cs/common.json b/apps/web/public/locales/cs/common.json deleted file mode 100644 index 260fae91f..000000000 --- a/apps/web/public/locales/cs/common.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "blog": "Blog", - "discussions": "Diskuze", - "footerCredit": "Vytvořil @imlukevella", - "footerSponsor": "Tento projekt je financován uživateli. Zvažte jeho podporu příspěvkem.", - "home": "Domů", - "language": "Jazyk", - "links": "Odkazy", - "poweredBy": "Poháněn", - "privacyPolicy": "Ochrana osobních údajů", - "starOnGithub": "Dejte nám hvězdu na Github", - "support": "Podpora", - "cookiePolicy": "Zásady používání cookies", - "termsOfUse": "Podmínky používání webu", - "volunteerTranslator": "Pomozte přeložit tento web" -} diff --git a/apps/web/public/locales/cs/errors.json b/apps/web/public/locales/cs/errors.json deleted file mode 100644 index 329a04999..000000000 --- a/apps/web/public/locales/cs/errors.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "notFoundTitle": "404 nenalezeno", - "notFoundDescription": "Nemohli jsme najít stránku, kterou hledáte.", - "goToHome": "Přejít domů", - "startChat": "Zahájit chat" -} diff --git a/apps/web/public/locales/cs/homepage.json b/apps/web/public/locales/cs/homepage.json deleted file mode 100644 index c54261257..000000000 --- a/apps/web/public/locales/cs/homepage.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "3Ls": "Ano—se třemi L", - "adFree": "Bez reklam", - "adFreeDescription": "Nechte svůj blokátor reklam spát = tady nebude potřeba.", - "comments": "Komentáře", - "commentsDescription": "Účastníci se mohou vyjádřit k vašemu průzkumu a komentáře budou viditelné pro všechny.", - "features": "Funkce", - "featuresSubheading": "Plánování, chytřeji", - "getStarted": "Začněme", - "heroSubText": "Najděte ideální termín bez překlikávání", - "heroText": "Plánujte
společná setkání
snadno a rychle", - "links": "Odkazy", - "liveDemo": "Demo", - "metaDescription": "Vytvořte ankety a hlasujte pro nalezení nejlepšího dne nebo času. Bezplatná alternativa k Doodle.", - "metaTitle": "Rallly - naplánovat setkání skupin", - "mobileFriendly": "Vhodné pro mobil", - "mobileFriendlyDescription": "Funguje skvěle na mobilních zařízeních, aby účastníci mohli odpovídat na ankety, ať jsou kdekoliv.", - "new": "Nové", - "noLoginRequired": "Bez přihlášení", - "noLoginRequiredDescription": "Pro vytvoření nebo účast v anketě se nemusíte přihlásit.", - "notifications": "Oznámení", - "notificationsDescription": "Sledujte kdo odpověděl. Dostávejte upozornění, když účastníci hlasují nebo komentují Vaši anketu.", - "openSource": "Open-source", - "openSourceDescription": "Veškerý kód je plně open-source a k dispozici na GitHub.", - "participant": "Účastník", - "participantCount_zero": "{{count}} účastníků", - "participantCount_one": "{{count}} účastník", - "participantCount_two": "{{count}} účastníků", - "participantCount_few": "{{count}} účastníků", - "participantCount_many": "{{count}} účastníků", - "participantCount_other": "{{count}} účastníků", - "perfect": "Skvěle!", - "principles": "Zásady", - "principlesSubheading": "Nejsme jako ostatní", - "selfHostable": "Vlastní hosting", - "selfHostableDescription": "Rozjeďte si vlastní server a získejte plnou kontrolu nad svými daty.", - "timeSlots": "Časové sloty", - "timeSlotsDescription": "Nastavte počáteční a koncový čas pro každou možnost ve Vaší anketě. Časy mohou být automaticky upraveny podle časové zóny každého účastníka, nebo mohou být nastaveny tak, aby zcela časové zóny ignorovaly." -} diff --git a/apps/web/public/locales/da/app.json b/apps/web/public/locales/da/app.json index 0c715220c..fe19c08ec 100644 --- a/apps/web/public/locales/da/app.json +++ b/apps/web/public/locales/da/app.json @@ -2,7 +2,7 @@ "12h": "12-timer", "24h": "24-timer", "addTimeOption": "Tilføj tidspunkt", - "adminPollTitle": "{{title}}: Administator", + "adminPollTitle": "{title}: Administator", "alreadyRegistered": "Allerede registreret? Log ind →", "applyToAllDates": "Tilføj til alle datoer", "areYouSure": "Er du sikker?", @@ -21,7 +21,7 @@ "copied": "Kopieret", "copyLink": "Kopiér link", "createAnAccount": "Opret en konto", - "createdBy": "af {{name}}", + "createdBy": "af {name}", "createNew": "Opret ny", "createPoll": "Opret afstemning", "creatingDemo": "Opretter prøve afstemning…", @@ -30,10 +30,10 @@ "deleteDate": "Slet dato", "deletedPoll": "Slettet afstemning", "deletedPollInfo": "Denne afstemning eksistere ikke længere.", - "deleteParticipant": "Slet {{name}}?", + "deleteParticipant": "Slet {name}?", "deleteParticipantDescription": "Er du sikker på, at du vil slette denne deltager? Denne handling kan ikke fortrydes.", "deletePoll": "Slet afstemning", - "deletePollDescription": "Alle data relateret til denne afstemning vil blive slettet. For bekræftning skriv \"{{confirmText}}\" i feltet nedenfor:", + "deletePollDescription": "Alle data relateret til denne afstemning vil blive slettet. For bekræftning skriv \"{confirmText}\" i feltet nedenfor:", "deletingOptionsWarning": "Du sletter mulighederne som medlemmer har stemt på. Deres stemmer vil også blive slettet.", "demoPollNotice": "Prøv afstemning vil blive slettet efter 1 dag", "description": "Beskrivelse", @@ -87,7 +87,7 @@ "nextMonth": "Næste måned", "no": "Nej", "noDatesSelected": "Ingen datoer valgt", - "notificationsDisabled": "Notifikationer er blevet deaktiveret for {{title}}", + "notificationsDisabled": "Notifikationer er blevet deaktiveret for {title}", "notificationsGuest": "Log ind for at aktivere notifikationer", "notificationsOff": "Notifikationer er slået fra", "notificationsOn": "Notifikationer er slået til", @@ -95,33 +95,21 @@ "noVotes": "Ingen har stemt for denne mulighed", "ok": "OK", "optional": "valgfri", - "optionCount_few": "{{count}} stemmer", - "optionCount_many": "{{count}} stemmer", - "optionCount_one": "{{count}} stemme", - "optionCount_other": "{{count}} stemmer", - "optionCount_two": "{{count}} stemmer", - "optionCount_zero": "{{count}} stemmer", "participant": "Deltager", - "participantCount_few": "{{count}} deltagere", - "participantCount_many": "{{count}} deltagere", - "participantCount_one": "{{count}} deltager", - "participantCount_other": "{{count}} deltagere", - "participantCount_two": "{{count}} deltagere", - "participantCount_zero": "{{count}} deltagere", "pollHasBeenLocked": "Denne afstemning er blevet låst", "pollsEmpty": "Ingen afstemninger oprettet", "possibleAnswers": "Mulige svar", "preferences": "Indstillinger", "previousMonth": "Forrige måned", - "profileUser": "Profil - {{username}}", + "profileUser": "Profil - {username}", "redirect": "Klik her, hvis du ikke viderestilles automatisk…", "register": "Registrer", "requiredNameError": "Navn er påkrævet", - "requiredString": "“{{name}}” er påkrævet", + "requiredString": "“{name}” er påkrævet", "resendVerificationCode": "Gensend verifikationskode", "response": "Svar", "save": "Gem", - "saveInstruction": "Vælg din tilgængelighed og klik {{action}}", + "saveInstruction": "Vælg din tilgængelighed og klik {action}", "send": "Send", "sendFeedback": "Indsend feedback", "share": "Del", @@ -129,7 +117,7 @@ "shareLink": "Del via link", "specifyTimes": "Angiv tidspunkter", "specifyTimesDescription": "Inkluder start- og sluttidspunkter for hver valgmulighed", - "stepSummary": "Trin {{current}} af {{total}}", + "stepSummary": "Trin {current} af {total}", "submit": "Send", "sunday": "Søndag", "timeFormat": "Tidsformat:", @@ -145,7 +133,7 @@ "validEmail": "Indtast en gyldig e-mail", "verificationCodeHelp": "Har du ikke fået e-mailen? Tjek din spam-mappe.", "verificationCodePlaceholder": "Indtast den sekscifrede kode", - "verificationCodeSent": "En bekræftelseskode er blevet sendt til {{email}} Ret", + "verificationCodeSent": "En bekræftelseskode er blevet sendt til {email} Ret", "verifyYourEmail": "Bekræft din e-mail", "weekStartsOn": "Ugen starter med", "weekView": "Ugevisning", @@ -156,5 +144,61 @@ "yourDetails": "Dine detaljer", "yourName": "Dit navn…", "yourPolls": "Dine afstemninger", - "yourProfile": "Din profil" + "yourProfile": "Din profil", + "homepage": { + "3Ls": "Ja—med 3 Ls", + "adFree": "Reklamefri", + "adFreeDescription": "Du kan give din ad-blocker en hvile - du behøver ikke det her.", + "comments": "Kommentarer", + "commentsDescription": "Deltagere kan kommentere på din afstemning, og kommentarerne vil være synlige for alle.", + "features": "Funktioner", + "featuresSubheading": "Planlægning, den smarte måde", + "getStarted": "Kom igang", + "heroSubText": "Find den rigtige dato uden for meget koordinering", + "heroText": "Planlæg
gruppemøder
med lethed", + "links": "Links", + "liveDemo": "Live Demo", + "metaDescription": "Opret afstemninger og stemme for at finde den bedste dag eller tid. Et gratis alternativ til Doodle.", + "metaTitle": "Rallly - Planlæg gruppemøder", + "mobileFriendly": "Mobilvenlig", + "mobileFriendlyDescription": "Fungerer godt på mobile enheder, så deltagerne kan reagere på afstemninger, uanset hvor de måtte være.", + "new": "Ny", + "noLoginRequired": "Intet login påkrævet", + "noLoginRequiredDescription": "Du behøver ikke logge ind for at oprette eller deltage i en afstemning.", + "notifications": "Notifikationer", + "notificationsDescription": "Hold styr på, hvem der er svaret. Få besked, når deltagerne stemmer eller kommenterer på din afstemning.", + "openSource": "Open-source", + "openSourceDescription": "Kodebasen er fuldt open source og tilgængelig på GitHub.", + "participant": "Deltager", + "participantCount": "{count, plural, one {# deltager} other {# deltagere}}", + "perfect": "Perfekt!", + "principles": "Principper", + "principlesSubheading": "Vi er ikke som de andre", + "selfHostable": "Kan selv hostes", + "selfHostableDescription": "Kør det på din egen server for at få fuld kontrol over dine data.", + "timeSlots": "Tidsinterval", + "timeSlotsDescription": "Angiv individuelle start- og sluttidspunkter for hver indstilling i din afstemning. Tider kan automatisk justeres til hver deltagers tidszone, eller de kan indstilles til at ignorere tidszoner helt." + }, + "common": { + "blog": "Blog", + "discussions": "Diskussioner", + "footerCredit": "Lavet af @imlukevella", + "footerSponsor": "Dette projekt er brugerfinansieret. Overvej at støtte det ved at donere.", + "home": "Hjem", + "language": "Sprog", + "links": "Links", + "poweredBy": "Drevet af", + "privacyPolicy": "Fortrolighedspolitik", + "starOnGithub": "Giv en stjerne på GitHub", + "support": "Support", + "volunteerTranslator": "Hjælp med at oversætte dette websted" + }, + "errors": { + "notFoundTitle": "404 Ikke Fundet", + "notFoundDescription": "Kunne ikke finde den side, du ledte efter.", + "goToHome": "Gå til startside", + "startChat": "Start chat" + }, + "optionCount": "{count, plural, one {# stemme} other {# stemmer}}", + "participantCount": "{count, plural, one {# deltager} other {# deltagere}}" } diff --git a/apps/web/public/locales/da/common.json b/apps/web/public/locales/da/common.json deleted file mode 100644 index d838e8c9f..000000000 --- a/apps/web/public/locales/da/common.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "blog": "Blog", - "discussions": "Diskussioner", - "footerCredit": "Lavet af @imlukevella", - "footerSponsor": "Dette projekt er brugerfinansieret. Overvej at støtte det ved at donere.", - "home": "Hjem", - "language": "Sprog", - "links": "Links", - "poweredBy": "Drevet af", - "privacyPolicy": "Fortrolighedspolitik", - "starOnGithub": "Giv en stjerne på GitHub", - "support": "Support", - "volunteerTranslator": "Hjælp med at oversætte dette websted" -} diff --git a/apps/web/public/locales/da/errors.json b/apps/web/public/locales/da/errors.json deleted file mode 100644 index 2d63de4e8..000000000 --- a/apps/web/public/locales/da/errors.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "notFoundTitle": "404 Ikke Fundet", - "notFoundDescription": "Kunne ikke finde den side, du ledte efter.", - "goToHome": "Gå til startside", - "startChat": "Start chat" -} diff --git a/apps/web/public/locales/da/homepage.json b/apps/web/public/locales/da/homepage.json deleted file mode 100644 index 317510cb5..000000000 --- a/apps/web/public/locales/da/homepage.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "3Ls": "Ja—med 3 Ls", - "adFree": "Reklamefri", - "adFreeDescription": "Du kan give din ad-blocker en hvile - du behøver ikke det her.", - "comments": "Kommentarer", - "commentsDescription": "Deltagere kan kommentere på din afstemning, og kommentarerne vil være synlige for alle.", - "features": "Funktioner", - "featuresSubheading": "Planlægning, den smarte måde", - "getStarted": "Kom igang", - "heroSubText": "Find den rigtige dato uden for meget koordinering", - "heroText": "Planlæg
gruppemøder
med lethed", - "links": "Links", - "liveDemo": "Live Demo", - "metaDescription": "Opret afstemninger og stemme for at finde den bedste dag eller tid. Et gratis alternativ til Doodle.", - "metaTitle": "Rallly - Planlæg gruppemøder", - "mobileFriendly": "Mobilvenlig", - "mobileFriendlyDescription": "Fungerer godt på mobile enheder, så deltagerne kan reagere på afstemninger, uanset hvor de måtte være.", - "new": "Ny", - "noLoginRequired": "Intet login påkrævet", - "noLoginRequiredDescription": "Du behøver ikke logge ind for at oprette eller deltage i en afstemning.", - "notifications": "Notifikationer", - "notificationsDescription": "Hold styr på, hvem der er svaret. Få besked, når deltagerne stemmer eller kommenterer på din afstemning.", - "openSource": "Open-source", - "openSourceDescription": "Kodebasen er fuldt open source og tilgængelig på GitHub.", - "participant": "Deltager", - "participantCount_zero": "{{count}} deltagere", - "participantCount_one": "{{count}} deltager", - "participantCount_two": "{{count}} deltagere", - "participantCount_few": "{{count}} deltagere", - "participantCount_many": "{{count}} deltagere", - "participantCount_other": "{{count}} deltagere", - "perfect": "Perfekt!", - "principles": "Principper", - "principlesSubheading": "Vi er ikke som de andre", - "selfHostable": "Kan selv hostes", - "selfHostableDescription": "Kør det på din egen server for at få fuld kontrol over dine data.", - "timeSlots": "Tidsinterval", - "timeSlotsDescription": "Angiv individuelle start- og sluttidspunkter for hver indstilling i din afstemning. Tider kan automatisk justeres til hver deltagers tidszone, eller de kan indstilles til at ignorere tidszoner helt." -} diff --git a/apps/web/public/locales/de/app.json b/apps/web/public/locales/de/app.json index 0c1b67abf..99f13dc40 100644 --- a/apps/web/public/locales/de/app.json +++ b/apps/web/public/locales/de/app.json @@ -2,7 +2,7 @@ "12h": "12 Stunden", "24h": "24 Stunden", "addTimeOption": "Uhrzeit hinzufügen", - "adminPollTitle": "{{title}}: Admin", + "adminPollTitle": "{title}: Admin", "alreadyRegistered": "Bereits registriert? Anmelden →", "applyToAllDates": "Auf alle Termine anwenden", "areYouSure": "Bist du sicher?", @@ -21,7 +21,7 @@ "copied": "Kopiert", "copyLink": "Link kopieren", "createAnAccount": "Account erstellen", - "createdBy": "von {{name}}", + "createdBy": "von {name}", "createNew": "Neue Umfrage", "createPoll": "Umfrage erstellen", "creatingDemo": "Demo-Umfrage wird erstellt…", @@ -30,10 +30,10 @@ "deleteDate": "Tag löschen", "deletedPoll": "Umfrage gelöscht", "deletedPollInfo": "Diese Umfrage existiert nicht mehr.", - "deleteParticipant": "{{name}} löschen?", + "deleteParticipant": "{name} löschen?", "deleteParticipantDescription": "Bist du sicher, dass du diesen Teilnehmer löschen möchtest? Dies kann nicht rückgängig gemacht werden.", "deletePoll": "Umfrage löschen", - "deletePollDescription": "Alle Daten zu dieser Umfrage werden gelöscht. Zur Bestätigung gib bitte “{{confirmText}}” in das folgende Feld ein:", + "deletePollDescription": "Alle Daten zu dieser Umfrage werden gelöscht. Zur Bestätigung gib bitte “{confirmText}” in das folgende Feld ein:", "deletingOptionsWarning": "Du löschst Optionen, für die bereits Teilnehmer gestimmt haben. Ihre Stimmen werden ebenfalls gelöscht.", "demoPollNotice": "Demo-Umfragen werden automatisch nach einem Tag gelöscht", "description": "Beschreibung", @@ -87,7 +87,7 @@ "nextMonth": "Nächster Monat", "no": "Nein", "noDatesSelected": "Kein Datum ausgewählt", - "notificationsDisabled": "Benachrichtigungen wurden für {{title}} deaktiviert", + "notificationsDisabled": "Benachrichtigungen wurden für {title} deaktiviert", "notificationsGuest": "Melde dich an, um Benachrichtigungen zu aktivieren", "notificationsOff": "Benachrichtigungen sind deaktiviert", "notificationsOn": "Benachrichtigungen sind aktiv", @@ -95,33 +95,21 @@ "noVotes": "Niemand hat für diese Option gestimmt", "ok": "Ok", "optional": "optional", - "optionCount_few": "{{count}} Optionen", - "optionCount_many": "{{count}} Optionen", - "optionCount_one": "{{count}} Option", - "optionCount_other": "{{count}} Optionen", - "optionCount_two": "{{count}} Optionen", - "optionCount_zero": "{{count}} Optionen", "participant": "Teilnehmer", - "participantCount_few": "{{count}} Teilnehmer", - "participantCount_many": "{{count}} Teilnehmer", - "participantCount_one": "{{count}} Teilnehmer", - "participantCount_other": "{{count}} Teilnehmer", - "participantCount_two": "{{count}} Teilnehmer", - "participantCount_zero": "{{count}} Teilnehmer", "pollHasBeenLocked": "Diese Umfrage wurde gesperrt", "pollsEmpty": "Keine Umfragen erstellt", "possibleAnswers": "Mögliche Antworten", "preferences": "Einstellungen", "previousMonth": "Vorheriger Monat", - "profileUser": "Profil - {{username}}", + "profileUser": "Profil - {username}", "redirect": "Hier klicken, falls du nicht automatisch weitergeleitet wirst…", "register": "Registrieren", "requiredNameError": "Bitte gib einen Namen an", - "requiredString": "“{{name}}” ist erforderlich", + "requiredString": "“{name}” ist erforderlich", "resendVerificationCode": "Bestätigungscode erneut senden", "response": "Antwort", "save": "Speichern", - "saveInstruction": "Wähle deine Verfügbarkeit und klicke auf {{action}}", + "saveInstruction": "Wähle deine Verfügbarkeit und klicke auf {action}", "send": "Senden", "sendFeedback": "Feedback senden", "share": "Teilen", @@ -129,7 +117,7 @@ "shareLink": "Über Link teilen", "specifyTimes": "Uhrzeiten angeben", "specifyTimesDescription": "Start- und Endzeit für jede Option angeben", - "stepSummary": "Schritt {{current}} von {{total}}", + "stepSummary": "Schritt {current} von {total}", "submit": "Absenden", "sunday": "Sonntag", "timeFormat": "Uhrzeitformat:", @@ -145,7 +133,7 @@ "validEmail": "Bitte trage eine gültige E-Mail-Adresse ein", "verificationCodeHelp": "E-Mail nicht erhalten? Überprüfe deinen Spamordner.", "verificationCodePlaceholder": "6-stelligen Code eingeben", - "verificationCodeSent": "Ein Bestätigungscode wurde an {{email}} gesendetÄndern", + "verificationCodeSent": "Ein Bestätigungscode wurde an {email} gesendetÄndern", "verifyYourEmail": "Bestätige Deine E-Mail-Adresse", "weekStartsOn": "Woche beginnt am", "weekView": "Wochenansicht", @@ -156,5 +144,63 @@ "yourDetails": "Persönliche Angaben", "yourName": "Dein Name…", "yourPolls": "Deine Umfragen", - "yourProfile": "Profil" + "yourProfile": "Profil", + "homepage": { + "3Ls": "Ja – mit 3 Ls", + "adFree": "Ohne Werbung", + "adFreeDescription": "Gönn deinem Adblocker eine Pause - du brauchst ihn hier nicht.", + "comments": "Kommentare", + "commentsDescription": "Teilnehmer können deine Umfrage kommentieren, die Kommentare sind für alle sichtbar.", + "features": "Funktionen", + "featuresSubheading": "Terminfindung leicht gemacht", + "getStarted": "Los geht's", + "heroSubText": "Finde ohne Hin und Her den richtigen Termin", + "heroText": "Plane
Besprechungen
ganz einfach", + "links": "Links", + "liveDemo": "Live Demo", + "metaDescription": "Erstelle Umfragen und stimme ab, um den besten Tag oder die beste Zeit zu finden. Eine kostenlose Alternative zu Doodle.", + "metaTitle": "Rallly - Gruppenmeetings planen", + "mobileFriendly": "Für Mobilgeräte optimiert", + "mobileFriendlyDescription": "Funktioniert hervorragend auf mobilen Geräten, so dass Teilnehmer auf Umfragen antworten können, wo immer sie sich befinden.", + "new": "Neu", + "noLoginRequired": "Keine Anmeldung benötigt", + "noLoginRequiredDescription": "Du musst dich nicht einloggen, um eine Umfrage zu erstellen oder an ihr teilzunehmen.", + "notifications": "Benachrichtigungen", + "notificationsDescription": "Behalte den Überblick darüber, wer geantwortet hat. Werde benachrichtigt, wenn Teilnehmer abstimmen oder deine Umfrage kommentieren.", + "openSource": "Open Source", + "openSourceDescription": "Die Codebase ist vollständig Open-Source und auf GitHub verfügbar.", + "participant": "Teilnehmer", + "participantCount": "{count, plural, other {# Teilnehmer}}", + "perfect": "Perfekt!", + "principles": "Grundsätze", + "principlesSubheading": "Wir sind nicht wie die anderen", + "selfHostable": "Selfhosting möglich", + "selfHostableDescription": "Betreibe es auf deinem eigenen Server, um die volle Kontrolle über deine Daten zu haben.", + "timeSlots": "Zeitfenster", + "timeSlotsDescription": "Wähle individuelle Start- und Endzeiten für jede Option in deiner Umfrage. Die Zeiten können automatisch an die Zeitzone jedes Teilnehmers angepasst werden oder so eingestellt werden, dass Zeitzonen komplett ignoriert werden." + }, + "common": { + "blog": "Blog", + "discussions": "Diskussion", + "footerCredit": "Entwickelt von @imlukevella", + "footerSponsor": "Dieses Projekt wird von Nutzern finanziert. Bitte unterstütze es durch eine Spende.", + "home": "Startseite", + "language": "Sprache", + "links": "Links", + "poweredBy": "Unterstützt von", + "privacyPolicy": "Datenschutzerklärung", + "starOnGithub": "Auf GitHub markieren", + "support": "Hilfe", + "cookiePolicy": "Cookies Richtlinien", + "termsOfUse": "Nutzungsbedingungen", + "volunteerTranslator": "Hilf mit, diese Seite zu übersetzen" + }, + "errors": { + "notFoundTitle": "404 Seite nicht gefunden", + "notFoundDescription": "Die gewünschte Seite konnte nicht gefunden werden.", + "goToHome": "Zur Startseite", + "startChat": "Starte Chat" + }, + "optionCount": "{count, plural, one {# Option} other {# Optionen}}", + "participantCount": "{count, plural, other {# Teilnehmer}}" } diff --git a/apps/web/public/locales/de/common.json b/apps/web/public/locales/de/common.json deleted file mode 100644 index 8675d1a23..000000000 --- a/apps/web/public/locales/de/common.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "blog": "Blog", - "discussions": "Diskussion", - "footerCredit": "Entwickelt von @imlukevella", - "footerSponsor": "Dieses Projekt wird von Nutzern finanziert. Bitte unterstütze es durch eine Spende.", - "home": "Startseite", - "language": "Sprache", - "links": "Links", - "poweredBy": "Unterstützt von", - "privacyPolicy": "Datenschutzerklärung", - "starOnGithub": "Auf GitHub markieren", - "support": "Hilfe", - "cookiePolicy": "Cookies Richtlinien", - "termsOfUse": "Nutzungsbedingungen", - "volunteerTranslator": "Hilf mit, diese Seite zu übersetzen" -} diff --git a/apps/web/public/locales/de/errors.json b/apps/web/public/locales/de/errors.json deleted file mode 100644 index 80120766a..000000000 --- a/apps/web/public/locales/de/errors.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "notFoundTitle": "404 Seite nicht gefunden", - "notFoundDescription": "Die gewünschte Seite konnte nicht gefunden werden.", - "goToHome": "Zur Startseite", - "startChat": "Starte Chat" -} diff --git a/apps/web/public/locales/de/homepage.json b/apps/web/public/locales/de/homepage.json deleted file mode 100644 index ba2f236a7..000000000 --- a/apps/web/public/locales/de/homepage.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "3Ls": "Ja – mit 3 Ls", - "adFree": "Ohne Werbung", - "adFreeDescription": "Gönn deinem Adblocker eine Pause - du brauchst ihn hier nicht.", - "comments": "Kommentare", - "commentsDescription": "Teilnehmer können deine Umfrage kommentieren, die Kommentare sind für alle sichtbar.", - "features": "Funktionen", - "featuresSubheading": "Terminfindung leicht gemacht", - "getStarted": "Los geht's", - "heroSubText": "Finde ohne Hin und Her den richtigen Termin", - "heroText": "Plane
Besprechungen
ganz einfach", - "links": "Links", - "liveDemo": "Live Demo", - "metaDescription": "Erstelle Umfragen und stimme ab, um den besten Tag oder die beste Zeit zu finden. Eine kostenlose Alternative zu Doodle.", - "metaTitle": "Rallly - Gruppenmeetings planen", - "mobileFriendly": "Für Mobilgeräte optimiert", - "mobileFriendlyDescription": "Funktioniert hervorragend auf mobilen Geräten, so dass Teilnehmer auf Umfragen antworten können, wo immer sie sich befinden.", - "new": "Neu", - "noLoginRequired": "Keine Anmeldung benötigt", - "noLoginRequiredDescription": "Du musst dich nicht einloggen, um eine Umfrage zu erstellen oder an ihr teilzunehmen.", - "notifications": "Benachrichtigungen", - "notificationsDescription": "Behalte den Überblick darüber, wer geantwortet hat. Werde benachrichtigt, wenn Teilnehmer abstimmen oder deine Umfrage kommentieren.", - "openSource": "Open Source", - "openSourceDescription": "Die Codebase ist vollständig Open-Source und auf GitHub verfügbar.", - "participant": "Teilnehmer", - "participantCount_zero": "{{count}} Teilnehmer", - "participantCount_one": "{{count}} Teilnehmer", - "participantCount_two": "{{count}} Teilnehmer", - "participantCount_few": "{{count}} Teilnehmer", - "participantCount_many": "{{count}} Teilnehmer", - "participantCount_other": "{{count}} Teilnehmer", - "perfect": "Perfekt!", - "principles": "Grundsätze", - "principlesSubheading": "Wir sind nicht wie die anderen", - "selfHostable": "Selfhosting möglich", - "selfHostableDescription": "Betreibe es auf deinem eigenen Server, um die volle Kontrolle über deine Daten zu haben.", - "timeSlots": "Zeitfenster", - "timeSlotsDescription": "Wähle individuelle Start- und Endzeiten für jede Option in deiner Umfrage. Die Zeiten können automatisch an die Zeitzone jedes Teilnehmers angepasst werden oder so eingestellt werden, dass Zeitzonen komplett ignoriert werden." -} diff --git a/apps/web/public/locales/en/app.json b/apps/web/public/locales/en/app.json index 477354087..3a78b829a 100644 --- a/apps/web/public/locales/en/app.json +++ b/apps/web/public/locales/en/app.json @@ -2,7 +2,7 @@ "12h": "12-hour", "24h": "24-hour", "addTimeOption": "Add time option", - "adminPollTitle": "{{title}}: Admin", + "adminPollTitle": "{title}: Admin", "alreadyRegistered": "Already registered? Login →", "applyToAllDates": "Apply to all dates", "areYouSure": "Are you sure?", @@ -21,7 +21,7 @@ "copied": "Copied", "copyLink": "Copy link", "createAnAccount": "Create an account", - "createdBy": "by {{name}}", + "createdBy": "by {name}", "createNew": "Create new", "createPoll": "Create poll", "creatingDemo": "Creating demo poll…", @@ -30,15 +30,14 @@ "deleteDate": "Delete date", "deletedPoll": "Deleted poll", "deletedPollInfo": "This poll doesn't exist anymore.", - "deleteParticipant": "Delete {{name}}?", + "deleteParticipant": "Delete {name}?", "deleteParticipantDescription": "Are you sure you want to delete this participant? This action cannot be undone.", "deletePoll": "Delete poll", - "deletePollDescription": "All data related to this poll will be deleted. To confirm, please type “{{confirmText}}” in to the input below:", + "deletePollDescription": "All data related to this poll will be deleted. To confirm, please type “{confirmText}” in to the input below:", "deletingOptionsWarning": "You are deleting options that participants have voted for. Their votes will also be deleted.", "demoPollNotice": "Demo polls are automatically deleted after 1 day", "description": "Description", "descriptionPlaceholder": "Hey everyone, please choose the dates that work for you!", - "edit": "Edit", "editDetails": "Edit details", "editOptions": "Edit options", "editVotes": "Edit votes", @@ -83,11 +82,10 @@ "newParticipant": "New participant", "newParticipantFormDescription": "Fill in the form below to submit your votes.", "newPoll": "New poll", - "next": "Next", "nextMonth": "Next month", "no": "No", "noDatesSelected": "No dates selected", - "notificationsDisabled": "Notifications have been disabled for {{title}}", + "notificationsDisabled": "Notifications have been disabled for {title}", "notificationsGuest": "Log in to turn on notifications", "notificationsOff": "Notifications are off", "notificationsOn": "Notifications are on", @@ -95,33 +93,20 @@ "noVotes": "No one has voted for this option", "ok": "Ok", "optional": "optional", - "optionCount_few": "{{count}} options", - "optionCount_many": "{{count}} options", - "optionCount_one": "{{count}} option", - "optionCount_other": "{{count}} options", - "optionCount_two": "{{count}} options", - "optionCount_zero": "{{count}} options", - "participant": "Participant", - "participantCount_few": "{{count}} participants", - "participantCount_many": "{{count}} participants", - "participantCount_one": "{{count}} participant", - "participantCount_other": "{{count}} participants", - "participantCount_two": "{{count}} participants", - "participantCount_zero": "{{count}} participants", "pollHasBeenLocked": "This poll has been locked", "pollsEmpty": "No polls created", "possibleAnswers": "Possible answers", "preferences": "Preferences", "previousMonth": "Previous month", - "profileUser": "Profile - {{username}}", + "profileUser": "Profile - {username}", "redirect": "Click here if you are not redirect automatically…", "register": "Register", "requiredNameError": "Name is required", - "requiredString": "“{{name}}” is required", + "requiredString": "“{name}” is required", "resendVerificationCode": "Resend verification code", "response": "Response", "save": "Save", - "saveInstruction": "Select your availability and click {{action}}", + "saveInstruction": "Select your availability and click {action}", "send": "Send", "sendFeedback": "Send Feedback", "share": "Share", @@ -129,7 +114,7 @@ "shareLink": "Share via link", "specifyTimes": "Specify times", "specifyTimesDescription": "Include start and end times for each option", - "stepSummary": "Step {{current}} of {{total}}", + "stepSummary": "Step {current} of {total}", "submit": "Submit", "sunday": "Sunday", "timeFormat": "Time format:", @@ -145,7 +130,7 @@ "validEmail": "Please enter a valid email", "verificationCodeHelp": "Didn't get the email? Check your spam/junk.", "verificationCodePlaceholder": "Enter your 6-digit code", - "verificationCodeSent": "A verification code has been sent to {{email}} Change", + "verificationCodeSent": "A verification code has been sent to {email} Change", "verifyYourEmail": "Verify your email", "weekStartsOn": "Week starts on", "weekView": "Week view", @@ -156,5 +141,58 @@ "yourDetails": "Your details", "yourName": "Your name…", "yourPolls": "Your polls", - "yourProfile": "Your profile" + "yourProfile": "Your profile", + "homepage": { + "3Ls": "Yes—with 3 Ls", + "adFree": "Ad-free", + "adFreeDescription": "You can give your ad-blocker a rest — You won't need it here.", + "comments": "Comments", + "commentsDescription": "Participants can comment on your poll and the comments will be visible to everyone.", + "features": "Features", + "featuresSubheading": "Scheduling, the smart way", + "getStarted": "Get started", + "heroSubText": "Find the right date without the back and forth", + "heroText": "Schedule
group meetings
with ease", + "links": "Links", + "liveDemo": "Live demo", + "metaDescription": "Create polls and vote to find the best day or time. A free alternative to Doodle.", + "metaTitle": "Rallly - Schedule group meetings", + "mobileFriendly": "Mobile friendly", + "mobileFriendlyDescription": "Works great on mobile devices so participants can respond to polls wherever they may be.", + "noLoginRequired": "No login required", + "noLoginRequiredDescription": "You don't need to login to create or participate in a poll.", + "notifications": "Notifications", + "notificationsDescription": "Keep track of who's responded. Get notified when participants vote or comment on your poll.", + "openSource": "Open-source", + "openSourceDescription": "The codebase is fully open-source and available on GitHub.", + "perfect": "Perfect!", + "principles": "Principles", + "principlesSubheading": "We're not like the others", + "selfHostable": "Self-hostable", + "selfHostableDescription": "Run it on your own server to take full control of your data.", + "timeSlots": "Time slots", + "timeSlotsDescription": "Set individual start and end times for each option in your poll. Times can be automatically adjusted to each participant's timezone or they can be set to ignore timezones completely." + }, + "common": { + "blog": "Blog", + "discussions": "Discussions", + "footerCredit": "Made by @imlukevella", + "footerSponsor": "This project is user-funded. Please consider supporting it by donating.", + "home": "Home", + "language": "Language", + "poweredBy": "Powered by", + "privacyPolicy": "Privacy Policy", + "starOnGithub": "Star us on Github", + "support": "Support", + "cookiePolicy": "Cookie Policy", + "termsOfUse": "Terms of Use", + "volunteerTranslator": "Help translate this site" + }, + "errors": { + "notFoundTitle": "404 not found", + "notFoundDescription": "We couldn't find the page you're looking for.", + "goToHome": "Go to home" + }, + "optionCount": "{count, plural, one {# option} other {# options}}", + "participantCount": "{count, plural, one {# participant} other {# participants}}" } diff --git a/apps/web/public/locales/en/common.json b/apps/web/public/locales/en/common.json deleted file mode 100644 index b2678ea4b..000000000 --- a/apps/web/public/locales/en/common.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "blog": "Blog", - "discussions": "Discussions", - "footerCredit": "Made by @imlukevella", - "footerSponsor": "This project is user-funded. Please consider supporting it by donating.", - "home": "Home", - "language": "Language", - "links": "Links", - "poweredBy": "Powered by", - "privacyPolicy": "Privacy Policy", - "starOnGithub": "Star us on Github", - "support": "Support", - "cookiePolicy": "Cookie Policy", - "termsOfUse": "Terms of Use", - "volunteerTranslator": "Help translate this site" -} diff --git a/apps/web/public/locales/en/errors.json b/apps/web/public/locales/en/errors.json deleted file mode 100644 index b267ef1db..000000000 --- a/apps/web/public/locales/en/errors.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "notFoundTitle": "404 not found", - "notFoundDescription": "We couldn't find the page you're looking for.", - "goToHome": "Go to home", - "startChat": "Start chat" -} diff --git a/apps/web/public/locales/en/homepage.json b/apps/web/public/locales/en/homepage.json deleted file mode 100644 index 3788e58f3..000000000 --- a/apps/web/public/locales/en/homepage.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "3Ls": "Yes—with 3 Ls", - "adFree": "Ad-free", - "adFreeDescription": "You can give your ad-blocker a rest — You won't need it here.", - "comments": "Comments", - "commentsDescription": "Participants can comment on your poll and the comments will be visible to everyone.", - "features": "Features", - "featuresSubheading": "Scheduling, the smart way", - "getStarted": "Get started", - "heroSubText": "Find the right date without the back and forth", - "heroText": "Schedule
group meetings
with ease", - "links": "Links", - "liveDemo": "Live demo", - "metaDescription": "Create polls and vote to find the best day or time. A free alternative to Doodle.", - "metaTitle": "Rallly - Schedule group meetings", - "mobileFriendly": "Mobile friendly", - "mobileFriendlyDescription": "Works great on mobile devices so participants can respond to polls wherever they may be.", - "new": "New", - "noLoginRequired": "No login required", - "noLoginRequiredDescription": "You don't need to login to create or participate in a poll.", - "notifications": "Notifications", - "notificationsDescription": "Keep track of who's responded. Get notified when participants vote or comment on your poll.", - "openSource": "Open-source", - "openSourceDescription": "The codebase is fully open-source and available on GitHub.", - "participant": "Participant", - "participantCount_zero": "{{count}} participants", - "participantCount_one": "{{count}} participant", - "participantCount_two": "{{count}} participants", - "participantCount_few": "{{count}} participants", - "participantCount_many": "{{count}} participants", - "participantCount_other": "{{count}} participants", - "perfect": "Perfect!", - "principles": "Principles", - "principlesSubheading": "We're not like the others", - "selfHostable": "Self-hostable", - "selfHostableDescription": "Run it on your own server to take full control of your data.", - "timeSlots": "Time slots", - "timeSlotsDescription": "Set individual start and end times for each option in your poll. Times can be automatically adjusted to each participant's timezone or they can be set to ignore timezones completely." -} diff --git a/apps/web/public/locales/es/app.json b/apps/web/public/locales/es/app.json index 5b65b6c59..4d7aaaa7e 100644 --- a/apps/web/public/locales/es/app.json +++ b/apps/web/public/locales/es/app.json @@ -2,7 +2,7 @@ "12h": "12h", "24h": "24h", "addTimeOption": "Añadir hora", - "adminPollTitle": "{{title}}: Administrador", + "adminPollTitle": "{title}: Administrador", "alreadyRegistered": "¿Ya estás registrado? Iniciar sesión →", "applyToAllDates": "Aplicar a todas las fechas", "areYouSure": "¿Estás seguro?", @@ -19,7 +19,7 @@ "copied": "Copiado", "copyLink": "Copiar enlace", "createAnAccount": "Crea una cuenta", - "createdBy": "de {{name}}", + "createdBy": "de {name}", "createNew": "Crear nuevo", "createPoll": "Crear encuesta", "creatingDemo": "Creando una encuesta de demostración…", @@ -29,7 +29,7 @@ "deletedPoll": "Encuesta borrada", "deletedPollInfo": "Esta encuesta ya no existe.", "deletePoll": "Borrar encuesta", - "deletePollDescription": "Todos los datos relacionados con esta encuesta se eliminarán. Para confirmar, por favor escribe “{{confirmText}}” en el campo siguiente:", + "deletePollDescription": "Todos los datos relacionados con esta encuesta se eliminarán. Para confirmar, por favor escribe “{confirmText}” en el campo siguiente:", "deletingOptionsWarning": "Estás eliminando opciones por las que algunos participantes han votado. También se eliminarán sus votos.", "demoPollNotice": "Las encuestas de demostración se eliminan automáticamente después de 1 día", "description": "Descripción", @@ -78,38 +78,26 @@ "noVotes": "Nadie ha votado por esta opción", "ok": "Aceptar", "optional": "opcional", - "optionCount_few": "{{count}} opciones", - "optionCount_many": "{{count}} opciones", - "optionCount_one": "{{count}} opciones", - "optionCount_other": "{{count}} opciones", - "optionCount_two": "{{count}} opciones", - "optionCount_zero": "{{count}} opciones", "participant": "Participante", - "participantCount_few": "{{count}} participantes", - "participantCount_many": "{{count}} participantes", - "participantCount_one": "{{count}} participante", - "participantCount_other": "{{count}} participantes", - "participantCount_two": "{{count}} participantes", - "participantCount_zero": "{{count}} participantes", "pollHasBeenLocked": "Esta encuesta ha sido bloqueada", "pollsEmpty": "Ninguna encuesta creada", "possibleAnswers": "Respuestas posibles", "preferences": "Ajustes", "previousMonth": "Mes anterior", - "profileUser": "Perfil - {{username}}", + "profileUser": "Perfil - {username}", "register": "Registrar", "requiredNameError": "El nombre es obligatorio", - "requiredString": "“{{name}}” es obligatorio", + "requiredString": "“{name}” es obligatorio", "resendVerificationCode": "Reenviar el código de verificación", "response": "Respuesta", "save": "Guardar", - "saveInstruction": "Selecciona tu disponibilidad y haz clic en {{action}}", + "saveInstruction": "Selecciona tu disponibilidad y haz clic en {action}", "share": "Compartir", "shareDescription": "Da este enlace a tus participantes para permitirles votar en tu encuesta.", "shareLink": "Compartir con un enlace", "specifyTimes": "Especificar tiempos", "specifyTimesDescription": "Incluir horas de inicio y fin para cada opción", - "stepSummary": "Paso {{current}} de {{total}}", + "stepSummary": "Paso {current} de {total}", "submit": "Enviar", "sunday": "Domingo", "timeFormat": "Formato de hora:", @@ -125,7 +113,7 @@ "validEmail": "Por favor ingrese un correo electrónico válido", "verificationCodeHelp": "¿No has recibido el correo electrónico? Revisa tu correo no deseado.", "verificationCodePlaceholder": "Introduzca aquí el código de 6 cifras", - "verificationCodeSent": "Se ha enviado un código de verificación a {{email}} Cambiar", + "verificationCodeSent": "Se ha enviado un código de verificación a {email} Cambiar", "verifyYourEmail": "Verifica tu email", "weekStartsOn": "La semana comienza el", "weekView": "Vista semanal", @@ -136,5 +124,61 @@ "yourDetails": "Tus datos", "yourName": "Tu nombre…", "yourPolls": "Tus encuestas", - "yourProfile": "Tu perfil" + "yourProfile": "Tu perfil", + "homepage": { + "3Ls": "Sí—con 3 Ls", + "adFree": "Sin anuncios", + "adFreeDescription": "Puedes darle un descanso a tu bloqueador de anuncios — No lo necesitarás aquí.", + "comments": "Comentarios", + "commentsDescription": "Los participantes pueden comentar en tu encuesta y los comentarios serán visibles para todos.", + "features": "Características", + "featuresSubheading": "Programar reuniones, de una manera inteligente", + "getStarted": "Empezar", + "heroSubText": "Encuentra la fecha correcta sin dar vueltas", + "heroText": "Programar
reuniones
con facilidad", + "links": "Enlaces", + "liveDemo": "Demostración en vivo", + "metaDescription": "Crea encuestas y vota para encontrar el mejor día o la mejor hora. Una alternativa gratuita a Doodle.", + "metaTitle": "Rallly - Programar reuniones", + "mobileFriendly": "Optimizado para dispositivos móviles", + "mobileFriendlyDescription": "Funciona muy bien en dispositivos móviles para que los participantes puedan responder a las encuestas dondequiera que estén.", + "new": "Nuevo", + "noLoginRequired": "No es necesario iniciar sesión", + "noLoginRequiredDescription": "No es necesario iniciar sesión para crear o participar en una encuesta.", + "notifications": "Notificaciones", + "notificationsDescription": "Sabe quién ha respondido. Recibe notificaciones cuando los participantes voten o comenten en tu encuesta.", + "openSource": "Código abierto", + "openSourceDescription": "Ese proyecto es completamente de código abierto y disponible en GitHub.", + "participant": "Participante", + "participantCount": "{count, plural, one {# participante} other {# participantes}}", + "perfect": "¡Perfecto!", + "principles": "Principios", + "principlesSubheading": "No somos como los otros", + "selfHostable": "Autoalojable", + "selfHostableDescription": "Ejecútalo en tu propio servidor para tener el control total de tus datos.", + "timeSlots": "Intervalos de tiempo", + "timeSlotsDescription": "Establece la hora de inicio y fin individual para cada opción de tu encuesta. Los tiempos se pueden ajustar automáticamente a la zona horaria de cada participante o pueden ser ajustados para ignorar completamente las zonas horarias." + }, + "common": { + "blog": "Blog", + "discussions": "Discusiones", + "footerCredit": "Creado por @imlukevella", + "footerSponsor": "Este proyecto está financiado por los usuarios. Por favor, considera apoyarlo donando.", + "home": "Inicio", + "language": "Idioma", + "links": "Enlaces", + "poweredBy": "Con tecnología de", + "privacyPolicy": "Política de privacidad", + "starOnGithub": "Seguir el proyecto en GitHub", + "support": "Soporte", + "volunteerTranslator": "Ayuda a traducir esta página" + }, + "errors": { + "notFoundTitle": "404 Página no encontrada", + "notFoundDescription": "No pudimos encontrar la página que estás buscando.", + "goToHome": "Ir al inicio", + "startChat": "Iniciar chat" + }, + "optionCount": "{count, plural, other {# opciones}}", + "participantCount": "{count, plural, one {# participante} other {# participantes}}" } diff --git a/apps/web/public/locales/es/common.json b/apps/web/public/locales/es/common.json deleted file mode 100644 index ff12476f1..000000000 --- a/apps/web/public/locales/es/common.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "blog": "Blog", - "discussions": "Discusiones", - "footerCredit": "Creado por @imlukevella", - "footerSponsor": "Este proyecto está financiado por los usuarios. Por favor, considera apoyarlo donando.", - "home": "Inicio", - "language": "Idioma", - "links": "Enlaces", - "poweredBy": "Con tecnología de", - "privacyPolicy": "Política de privacidad", - "starOnGithub": "Seguir el proyecto en GitHub", - "support": "Soporte", - "volunteerTranslator": "Ayuda a traducir esta página" -} diff --git a/apps/web/public/locales/es/errors.json b/apps/web/public/locales/es/errors.json deleted file mode 100644 index ecd83b6b9..000000000 --- a/apps/web/public/locales/es/errors.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "notFoundTitle": "404 Página no encontrada", - "notFoundDescription": "No pudimos encontrar la página que estás buscando.", - "goToHome": "Ir al inicio", - "startChat": "Iniciar chat" -} diff --git a/apps/web/public/locales/es/homepage.json b/apps/web/public/locales/es/homepage.json deleted file mode 100644 index d0ab6a773..000000000 --- a/apps/web/public/locales/es/homepage.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "3Ls": "Sí—con 3 Ls", - "adFree": "Sin anuncios", - "adFreeDescription": "Puedes darle un descanso a tu bloqueador de anuncios — No lo necesitarás aquí.", - "comments": "Comentarios", - "commentsDescription": "Los participantes pueden comentar en tu encuesta y los comentarios serán visibles para todos.", - "features": "Características", - "featuresSubheading": "Programar reuniones, de una manera inteligente", - "getStarted": "Empezar", - "heroSubText": "Encuentra la fecha correcta sin dar vueltas", - "heroText": "Programar
reuniones
con facilidad", - "links": "Enlaces", - "liveDemo": "Demostración en vivo", - "metaDescription": "Crea encuestas y vota para encontrar el mejor día o la mejor hora. Una alternativa gratuita a Doodle.", - "metaTitle": "Rallly - Programar reuniones", - "mobileFriendly": "Optimizado para dispositivos móviles", - "mobileFriendlyDescription": "Funciona muy bien en dispositivos móviles para que los participantes puedan responder a las encuestas dondequiera que estén.", - "new": "Nuevo", - "noLoginRequired": "No es necesario iniciar sesión", - "noLoginRequiredDescription": "No es necesario iniciar sesión para crear o participar en una encuesta.", - "notifications": "Notificaciones", - "notificationsDescription": "Sabe quién ha respondido. Recibe notificaciones cuando los participantes voten o comenten en tu encuesta.", - "openSource": "Código abierto", - "openSourceDescription": "Ese proyecto es completamente de código abierto y disponible en GitHub.", - "participant": "Participante", - "participantCount_zero": "{{count}} participantes", - "participantCount_one": "{{count}} participante", - "participantCount_two": "{{count}} participantes", - "participantCount_few": "{{count}} participantes", - "participantCount_many": "{{count}} participantes", - "participantCount_other": "{{count}} participantes", - "perfect": "¡Perfecto!", - "principles": "Principios", - "principlesSubheading": "No somos como los otros", - "selfHostable": "Autoalojable", - "selfHostableDescription": "Ejecútalo en tu propio servidor para tener el control total de tus datos.", - "timeSlots": "Intervalos de tiempo", - "timeSlotsDescription": "Establece la hora de inicio y fin individual para cada opción de tu encuesta. Los tiempos se pueden ajustar automáticamente a la zona horaria de cada participante o pueden ser ajustados para ignorar completamente las zonas horarias." -} diff --git a/apps/web/public/locales/fa/app.json b/apps/web/public/locales/fa/app.json index c36321338..fc3268bc6 100644 --- a/apps/web/public/locales/fa/app.json +++ b/apps/web/public/locales/fa/app.json @@ -14,7 +14,7 @@ "continue": "ادامه", "copied": "رونوشت شد", "copyLink": "روگرفت پیوند", - "createdBy": "توسط {{name}}", + "createdBy": "توسط {name}", "createPoll": "ساخت نظرسنجی", "creatingDemo": "ساخت نظرسنجی دمو…", "delete": "حذف", @@ -23,7 +23,7 @@ "deletedPoll": "نظرسنجی حذف‌شده", "deletedPollInfo": "این نظرسنجی دیگر وجود ندارد.", "deletePoll": "حذف نظرسنجی", - "deletePollDescription": "تمام اطلاعات مربوط به این نظرسنجی حذف خواهد شد. جهت تایید لطفا عبارت “{{confirmText}}” را در زیر تایپ کنید:", + "deletePollDescription": "تمام اطلاعات مربوط به این نظرسنجی حذف خواهد شد. جهت تایید لطفا عبارت “{confirmText}” را در زیر تایپ کنید:", "deletingOptionsWarning": "شما در حال حذف گزینه‌هایی هستید که شرکت‌کنندگان به آن رأی داده‌اند. آراء آن‌ها نیز حذف خواهند شد.", "demoPollNotice": "نظرسنجی‌های دمو بعد یک روز حذف خواهند شد", "description": "توضیحات", @@ -69,23 +69,23 @@ "noVotes": "هیچ‌کس به این گزینه رای نداده است", "ok": "باشه", "participant": "شرکت‌کننده", - "participantCount_one": "{{count}} شرکت‌کننده", - "participantCount_other": "{{count}} شرکت‌کننده", + "participantCount_one": "{count} شرکت‌کننده", + "participantCount_other": "{count} شرکت‌کننده", "pollHasBeenLocked": "این نظرسنجی قفل شده است", "pollsEmpty": "هیچ نظرسنجی‌ای ایجاد نشده است", "possibleAnswers": "پاسخ‌های ممکن", "preferences": "ترجیحات", "previousMonth": "ماه قبل", - "profileUser": "نمایه - {{username}}", + "profileUser": "نمایه - {username}", "requiredNameError": "نام الزامی است", "save": "ذخیره", - "saveInstruction": "مشخص کنید چه زمان‌هایی برایتان مقدور است و روی {{action}} کلیک کنید", + "saveInstruction": "مشخص کنید چه زمان‌هایی برایتان مقدور است و روی {action} کلیک کنید", "share": "هم‌رسانی", "shareDescription": "این لینک را به شرکت‌کنندگان بدهید تا بتوانند در نظرسنجی شما شرکت کنند.", "shareLink": "هم‌رسانی با پیوند", "specifyTimes": "تعیین زمان‌ها", "specifyTimesDescription": "هر گزینه شروع و پایان داشته باشد", - "stepSummary": "مرحله {{current}} از {{total}}", + "stepSummary": "مرحله {current} از {total}", "sunday": "یکشنبه", "timeFormat": "قالب زمان:", "timeZone": "منطقه زمانی:", diff --git a/apps/web/public/locales/fa/homepage.json b/apps/web/public/locales/fa/homepage.json index 42d930e7f..fa6799dce 100644 --- a/apps/web/public/locales/fa/homepage.json +++ b/apps/web/public/locales/fa/homepage.json @@ -23,8 +23,8 @@ "openSource": "متن‌باز", "openSourceDescription": "کد‌های این برنامه کاملا متن‌باز، و در GitHub موجود است.", "participant": "شرکت‌کننده", - "participantCount_one": "{{count}} شرکت‌کننده", - "participantCount_other": "{{count}} شرکت‌کننده", + "participantCount_one": "{count} شرکت‌کننده", + "participantCount_other": "{count} شرکت‌کننده", "perfect": "خود خودشه!", "principles": "اصول", "principlesSubheading": "ما مانند دیگران نیستیم", diff --git a/apps/web/public/locales/fi/app.json b/apps/web/public/locales/fi/app.json index fa578c649..2fa8130ea 100644 --- a/apps/web/public/locales/fi/app.json +++ b/apps/web/public/locales/fi/app.json @@ -2,7 +2,7 @@ "12h": "12-tuntinen", "24h": "24-tuntinen", "addTimeOption": "Lisää aikavaihtoehto", - "adminPollTitle": "{{title}}: Ylläpito", + "adminPollTitle": "{title}: Ylläpito", "alreadyRegistered": "Oletko jo rekisteröitynyt? Kirjaudu sisään →", "applyToAllDates": "Käytä kaikkiin päivämääriin", "areYouSure": "Oletko varma?", @@ -21,7 +21,7 @@ "copied": "Kopioitu", "copyLink": "Kopioi linkki", "createAnAccount": "Luo käyttäjätili", - "createdBy": "luonut {{name}}", + "createdBy": "luonut {name}", "createNew": "Luo uusi", "createPoll": "Luo kysely", "creatingDemo": "Luodaan esittelykyselyä…", @@ -30,10 +30,10 @@ "deleteDate": "Poista päivämäärä", "deletedPoll": "Poistettu kysely", "deletedPollInfo": "Tätä kyselyä ei ole enää olemassa.", - "deleteParticipant": "Poistetaanko {{name}}?", + "deleteParticipant": "Poistetaanko {name}?", "deleteParticipantDescription": "Haluatko varmasti poistaa tämän osallistujan? Toimintoa ei voi kumota.", "deletePoll": "Poista kysely", - "deletePollDescription": "Kaikki tähän kyselyyn liittyvät tiedot poistetaan. Vahvista poisto kirjoittamalla “{{confirmText}}” alla olevaan kenttään:", + "deletePollDescription": "Kaikki tähän kyselyyn liittyvät tiedot poistetaan. Vahvista poisto kirjoittamalla “{confirmText}” alla olevaan kenttään:", "deletingOptionsWarning": "Olet aikeissa poistaa vaihtoehtoja, joita osallistujat ovat äänestäneet. Myös heidän äänensä poistetaan.", "demoPollNotice": "Esittelykyselyt poistetaan automaattisesti 1 päivän kuluttua", "description": "Kuvaus", @@ -87,7 +87,7 @@ "nextMonth": "Seuraava kuukausi", "no": "Ei", "noDatesSelected": "Ei valittuja päivämääriä", - "notificationsDisabled": "Kohteen {{title}} ilmoitukset on poistettu käytöstä", + "notificationsDisabled": "Kohteen {title} ilmoitukset on poistettu käytöstä", "notificationsGuest": "Kirjaudu sisään ottaaksesi ilmoitukset käyttöön", "notificationsOff": "Ilmoitukset ovat pois päältä", "notificationsOn": "Ilmoitukset ovat päällä", @@ -95,33 +95,21 @@ "noVotes": "Kukaan ei ole äänestänyt tätä vaihtoehtoa", "ok": "OK", "optional": "valinnainen", - "optionCount_few": "{{count}} vaihtoehtoa", - "optionCount_many": "{{count}} vaihtoehtoa", - "optionCount_one": "{{count}} vaihtoehto", - "optionCount_other": "{{count}} vaihtoehtoa", - "optionCount_two": "{{count}} vaihtoehtoa", - "optionCount_zero": "{{count}} vaihtoehtoa", "participant": "Osallistuja", - "participantCount_few": "{{count}} osallistujaa", - "participantCount_many": "{{count}} osallistujaa", - "participantCount_one": "{{count}} osallistuja", - "participantCount_other": "{{count}} osallistujaa", - "participantCount_two": "{{count}} osallistujaa", - "participantCount_zero": "{{count}} osallistujaa", "pollHasBeenLocked": "Tämä kysely on lukittu", "pollsEmpty": "Ei luotuja kyselyitä", "possibleAnswers": "Vastausvaihtoehdot", "preferences": "Asetukset", "previousMonth": "Edellinen kuukausi", - "profileUser": "Profiili - {{username}}", + "profileUser": "Profiili - {username}", "redirect": "Napsauta tästä, jos sinua ei ohjata uudelleen automaattisesti…", "register": "Rekisteröidy", "requiredNameError": "Nimi vaaditaan", - "requiredString": "”{{name}}” vaaditaan", + "requiredString": "”{name}” vaaditaan", "resendVerificationCode": "Lähetä vahvistuskoodi uudelleen", "response": "Vastaus", "save": "Tallenna", - "saveInstruction": "Valitse sinulle sopivat vaihtoehdot ja napsauta {{action}}", + "saveInstruction": "Valitse sinulle sopivat vaihtoehdot ja napsauta {action}", "send": "Lähetä", "sendFeedback": "Lähetä palautetta", "share": "Jaa", @@ -129,7 +117,7 @@ "shareLink": "Jaa linkin välityksellä", "specifyTimes": "Määritä ajat", "specifyTimesDescription": "Aseta jokaiselle vaihtoehdolle alkamis- ja päättymisaika", - "stepSummary": "Vaihe {{current}} / {{total}}", + "stepSummary": "Vaihe {current} / {total}", "submit": "Lähetä", "sunday": "sunnuntaina", "timeFormat": "Aikojen esitysmuoto:", @@ -145,7 +133,7 @@ "validEmail": "Anna kelvollinen sähköpostiosoite", "verificationCodeHelp": "Etkö saanut viestiä? Tarkista roskaposti.", "verificationCodePlaceholder": "Anna 6-numeroinen koodisi", - "verificationCodeSent": "Vahvistuskoodi on lähetetty osoitteeseen {{email}} Vaihda", + "verificationCodeSent": "Vahvistuskoodi on lähetetty osoitteeseen {email} Vaihda", "verifyYourEmail": "Vahvista sähköpostiosoitteesi", "weekStartsOn": "Viikko alkaa", "weekView": "Viikkonäkymä", @@ -156,5 +144,61 @@ "yourDetails": "Tietosi", "yourName": "Nimesi…", "yourPolls": "Kyselysi", - "yourProfile": "Profiilisi" + "yourProfile": "Profiilisi", + "homepage": { + "3Ls": "Kyllä—3 L:ää", + "adFree": "Ei mainoksia", + "adFreeDescription": "Voit antaa mainostenestäjäsi levätä — sitä ei tarvita täällä.", + "comments": "Kommentit", + "commentsDescription": "Osallistujat voivat jättää kyselyysi kaikille näkyviä kommentteja.", + "features": "Ominaisuudet", + "featuresSubheading": "Aikataulutusta fiksusti", + "getStarted": "Aloita tästä", + "heroSubText": "Löydä sopiva päivämäärä ilman soutamista ja huopaamista", + "heroText": "Suunnittele
ryhmätapaamisia
vaivatta", + "links": "Linkit", + "liveDemo": "Esittely", + "metaDescription": "Luo kyselyitä ja äänestä parhaasta päivästä tai ajankohdasta. Ilmainen vaihtoehto Doodlelle.", + "metaTitle": "Rallly - Suunnittele ryhmätapaamisia", + "mobileFriendly": "Mobiiliystävällinen", + "mobileFriendlyDescription": "Toimii erinomaisesti mobiililaitteilla, joten osallistujat voivat vastata kyselyihin missä ikinä ovatkaan.", + "new": "Uutuus", + "noLoginRequired": "Kirjautumista ei tarvita", + "noLoginRequiredDescription": "Voit luoda kyselyn tai vastata sellaiseen ilman kirjautumista sisään.", + "notifications": "Ilmoitukset", + "notificationsDescription": "Pysy vastausten tasalla. Saat ilmoituksia, kun osallistujat vastaavat kyselyysi tai jättävät siihen kommentteja.", + "openSource": "Avoin lähdekoodi", + "openSourceDescription": "Sovelluksen koodi on täysin avointa ja löytyy GitHubista.", + "participant": "Osallistuja", + "participantCount": "{count, plural, one {# osallistuja} other {# osallistujaa}}", + "perfect": "Täydellinen!", + "principles": "Periaatteet", + "principlesSubheading": "Emme ole niin kuin muut", + "selfHostable": "Itse ylläpidettävä", + "selfHostableDescription": "Pyöritä Ralllya omalla palvelimellasi ja ota tietosi täysin omaan haltuusi.", + "timeSlots": "Aikaikkunat", + "timeSlotsDescription": "Aseta jokaiselle kyselysi vaihtoehdolle alkamis- ja päättymisajankohta. Ajat voi automaattisesti sovittaa kunkin osallistujan omaan aikavyöhykkeeseen, tai ne voi asettaa jättämään aikavyöhykkeet kokonaan huomiotta." + }, + "common": { + "blog": "Blogi", + "discussions": "Keskustelut", + "footerCredit": "Tehnyt @imlukevella", + "footerSponsor": "Tämä projekti on käyttäjiensä rahoittama. Harkitse sen tukemista tekemällä lahjoitus.", + "home": "Etusivu", + "language": "Kieli", + "links": "Linkit", + "poweredBy": "Palvelun tarjoaa", + "privacyPolicy": "Tietosuojakäytäntö", + "starOnGithub": "Anna meille tähti Githubissa", + "support": "Tuki", + "volunteerTranslator": "Auta sivuston kääntämisessä" + }, + "errors": { + "notFoundTitle": "404 ei löytynyt", + "notFoundDescription": "Emme löytäneet hakemaasi sivua.", + "goToHome": "Siirry etusivulle", + "startChat": "Aloita keskustelu" + }, + "optionCount": "{count, plural, one {# vaihtoehto} other {# vaihtoehtoa}}", + "participantCount": "{count, plural, one {# osallistuja} other {# osallistujaa}}" } diff --git a/apps/web/public/locales/fi/common.json b/apps/web/public/locales/fi/common.json deleted file mode 100644 index fb3184804..000000000 --- a/apps/web/public/locales/fi/common.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "blog": "Blogi", - "discussions": "Keskustelut", - "footerCredit": "Tehnyt @imlukevella", - "footerSponsor": "Tämä projekti on käyttäjiensä rahoittama. Harkitse sen tukemista tekemällä lahjoitus.", - "home": "Etusivu", - "language": "Kieli", - "links": "Linkit", - "poweredBy": "Palvelun tarjoaa", - "privacyPolicy": "Tietosuojakäytäntö", - "starOnGithub": "Anna meille tähti Githubissa", - "support": "Tuki", - "volunteerTranslator": "Auta sivuston kääntämisessä" -} diff --git a/apps/web/public/locales/fi/errors.json b/apps/web/public/locales/fi/errors.json deleted file mode 100644 index 984b93d95..000000000 --- a/apps/web/public/locales/fi/errors.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "notFoundTitle": "404 ei löytynyt", - "notFoundDescription": "Emme löytäneet hakemaasi sivua.", - "goToHome": "Siirry etusivulle", - "startChat": "Aloita keskustelu" -} diff --git a/apps/web/public/locales/fi/homepage.json b/apps/web/public/locales/fi/homepage.json deleted file mode 100644 index 543a3bf3f..000000000 --- a/apps/web/public/locales/fi/homepage.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "3Ls": "Kyllä—3 L:ää", - "adFree": "Ei mainoksia", - "adFreeDescription": "Voit antaa mainostenestäjäsi levätä — sitä ei tarvita täällä.", - "comments": "Kommentit", - "commentsDescription": "Osallistujat voivat jättää kyselyysi kaikille näkyviä kommentteja.", - "features": "Ominaisuudet", - "featuresSubheading": "Aikataulutusta fiksusti", - "getStarted": "Aloita tästä", - "heroSubText": "Löydä sopiva päivämäärä ilman soutamista ja huopaamista", - "heroText": "Suunnittele
ryhmätapaamisia
vaivatta", - "links": "Linkit", - "liveDemo": "Esittely", - "metaDescription": "Luo kyselyitä ja äänestä parhaasta päivästä tai ajankohdasta. Ilmainen vaihtoehto Doodlelle.", - "metaTitle": "Rallly - Suunnittele ryhmätapaamisia", - "mobileFriendly": "Mobiiliystävällinen", - "mobileFriendlyDescription": "Toimii erinomaisesti mobiililaitteilla, joten osallistujat voivat vastata kyselyihin missä ikinä ovatkaan.", - "new": "Uutuus", - "noLoginRequired": "Kirjautumista ei tarvita", - "noLoginRequiredDescription": "Voit luoda kyselyn tai vastata sellaiseen ilman kirjautumista sisään.", - "notifications": "Ilmoitukset", - "notificationsDescription": "Pysy vastausten tasalla. Saat ilmoituksia, kun osallistujat vastaavat kyselyysi tai jättävät siihen kommentteja.", - "openSource": "Avoin lähdekoodi", - "openSourceDescription": "Sovelluksen koodi on täysin avointa ja löytyy GitHubista.", - "participant": "Osallistuja", - "participantCount_zero": "{{count}} osallistujaa", - "participantCount_one": "{{count}} osallistuja", - "participantCount_two": "{{count}} osallistujaa", - "participantCount_few": "{{count}} osallistujaa", - "participantCount_many": "{{count}} osallistujaa", - "participantCount_other": "{{count}} osallistujaa", - "perfect": "Täydellinen!", - "principles": "Periaatteet", - "principlesSubheading": "Emme ole niin kuin muut", - "selfHostable": "Itse ylläpidettävä", - "selfHostableDescription": "Pyöritä Ralllya omalla palvelimellasi ja ota tietosi täysin omaan haltuusi.", - "timeSlots": "Aikaikkunat", - "timeSlotsDescription": "Aseta jokaiselle kyselysi vaihtoehdolle alkamis- ja päättymisajankohta. Ajat voi automaattisesti sovittaa kunkin osallistujan omaan aikavyöhykkeeseen, tai ne voi asettaa jättämään aikavyöhykkeet kokonaan huomiotta." -} diff --git a/apps/web/public/locales/fr/app.json b/apps/web/public/locales/fr/app.json index cc6ff6365..ab7759af2 100644 --- a/apps/web/public/locales/fr/app.json +++ b/apps/web/public/locales/fr/app.json @@ -2,7 +2,7 @@ "12h": "12 heures", "24h": "24h", "addTimeOption": "Ajouter une option de temps", - "adminPollTitle": "{{title}}: Admin", + "adminPollTitle": "{title}: Admin", "alreadyRegistered": "Déjà inscrit? Connexion →", "applyToAllDates": "Appliquer à toutes les dates", "areYouSure": "Vous êtes sûr ?", @@ -21,7 +21,7 @@ "copied": "Copié", "copyLink": "Copier le lien", "createAnAccount": "Créer un compte", - "createdBy": "par {{name}}", + "createdBy": "par {name}", "createNew": "Nouveau", "createPoll": "Créer un sondage", "creatingDemo": "Création d'un sondage de démonstration…", @@ -30,10 +30,10 @@ "deleteDate": "Supprimer la date", "deletedPoll": "Sondage supprimé", "deletedPollInfo": "Ce sondage n'existe plus.", - "deleteParticipant": "Supprimer {{name}}?", + "deleteParticipant": "Supprimer {name}?", "deleteParticipantDescription": "Êtes-vous sûr de vouloir supprimer ce participant ? Cette action ne peut pas être annulée.", "deletePoll": "Supprimer le sondage", - "deletePollDescription": "Toutes les données liées à ce sondage seront supprimées. Pour confirmer, veuillez taper \"{{confirmText}}\" dans l'entrée ci-dessous :", + "deletePollDescription": "Toutes les données liées à ce sondage seront supprimées. Pour confirmer, veuillez taper \"{confirmText}\" dans l'entrée ci-dessous :", "deletingOptionsWarning": "Vous supprimez des options pour lesquelles les participants ont voté. Leurs votes seront également supprimés.", "demoPollNotice": "Les sondages de démonstration sont automatiquement supprimés après 1 jour", "description": "Description", @@ -87,7 +87,7 @@ "nextMonth": "Mois suivant", "no": "Non", "noDatesSelected": "Aucune date sélectionnée", - "notificationsDisabled": "Les notifications ont été désactivées pour {{title}}", + "notificationsDisabled": "Les notifications ont été désactivées pour {title}", "notificationsGuest": "Se connecter pour activer les notifications", "notificationsOff": "Les notifications sont désactivées", "notificationsOn": "Les notifications sont activées", @@ -95,33 +95,21 @@ "noVotes": "Personne n'a voté pour cette option", "ok": "Ok", "optional": "facultatif", - "optionCount_few": "{{count}} options", - "optionCount_many": "{{count}} options", - "optionCount_one": "{{count}} option", - "optionCount_other": "{{count}} options", - "optionCount_two": "{{count}} options", - "optionCount_zero": "{{count}} options", "participant": "Participant", - "participantCount_few": "{{count}} participants", - "participantCount_many": "{{count}} participants", - "participantCount_one": "{{count}} participant", - "participantCount_other": "{{count}} participants", - "participantCount_two": "{{count}} participants", - "participantCount_zero": "{{count}} participants", "pollHasBeenLocked": "Ce sondage a été verrouillé", "pollsEmpty": "Aucun sondage n'a été créé", "possibleAnswers": "Réponses possibles", "preferences": "Préférences", "previousMonth": "Mois précédent", - "profileUser": "Profil - {{username}}", + "profileUser": "Profil - {username}", "redirect": "Cliquez ici si vous n'êtes pas redirigé automatiquement…", "register": "S'inscrire", "requiredNameError": "Le nom est obligatoire", - "requiredString": "«{{name}}» est obligatoire", + "requiredString": "«{name}» est obligatoire", "resendVerificationCode": "Renvoyer le code de vérification", "response": "Réponse", "save": "Sauvegarder", - "saveInstruction": "Sélectionnez votre disponibilité et cliquez sur {{action}}", + "saveInstruction": "Sélectionnez votre disponibilité et cliquez sur {action}", "send": "Envoyer", "sendFeedback": "Envoyer un avis", "share": "Partager", @@ -129,7 +117,7 @@ "shareLink": "Partager via un lien", "specifyTimes": "Précisez les horaires", "specifyTimesDescription": "Indiquez les heures de début et de fin pour chaque option", - "stepSummary": "Étape {{current}} sur {{total}}", + "stepSummary": "Étape {current} sur {total}", "submit": "Valider", "sunday": "Dimanche", "timeFormat": "Format de l'heure :", @@ -145,7 +133,7 @@ "validEmail": "Veuillez entrer une adresse e-mail valide", "verificationCodeHelp": "Vous n'avez pas reçu l'e-mail ? Vérifiez vos pourriels/fichiers indésirables.", "verificationCodePlaceholder": "Entrez votre code à 6 chiffres", - "verificationCodeSent": "Un code de vérification a été envoyé à {{email}} Changer", + "verificationCodeSent": "Un code de vérification a été envoyé à {email} Changer", "verifyYourEmail": "Vérifiez votre e-mail", "weekStartsOn": "La semaine commence le", "weekView": "Voir la Semaine", @@ -156,5 +144,63 @@ "yourDetails": "Vos informations", "yourName": "Votre nom…", "yourPolls": "Vos sondages", - "yourProfile": "Votre profil" + "yourProfile": "Votre profil", + "homepage": { + "3Ls": "Oui — avec 3 L", + "adFree": "Sans publicités", + "adFreeDescription": "Vous pouvez donner un repos à votre bloqueur de publicité. Vous n'en aurez pas besoin ici.", + "comments": "Commentaires", + "commentsDescription": "Les participants peuvent commenter votre sondage et les commentaires seront visibles par tous.", + "features": "Fonctionnalités", + "featuresSubheading": "La planification, la manière intelligente", + "getStarted": "Commencez", + "heroSubText": "Trouver la bonne date sans les allers-retours", + "heroText": "Programmez facilement des
réunions de groupe
", + "links": "Liens", + "liveDemo": "Démo en ligne", + "metaDescription": "Créez des sondages et votez pour trouver le meilleur jour ou la meilleure heure. Une alternative gratuite à Doodle.", + "metaTitle": "Rallly - Planifier des réunions de groupe", + "mobileFriendly": "Compatible avec les appareils mobiles", + "mobileFriendlyDescription": "Il fonctionne parfaitement sur les appareils mobiles, de sorte que les participants peuvent répondre aux sondages où qu'ils se trouvent.", + "new": "Nouveau", + "noLoginRequired": "Pas de connexion requise", + "noLoginRequiredDescription": "Vous n'avez pas besoin de vous connecter pour créer ou participer à un sondage.", + "notifications": "Notifications", + "notificationsDescription": "Gardez une trace de ceux qui ont répondu. Recevez une notification lorsque les participants votent ou commentent votre sondage.", + "openSource": "Open source", + "openSourceDescription": "Le code est entièrement open-source et est disponible sur GitHub.", + "participant": "Participant", + "participantCount": "{count, plural, one {# participant} other {# participants}}", + "perfect": "Parfait !", + "principles": "Principes", + "principlesSubheading": "Nous ne sommes pas comme les autres", + "selfHostable": "Auto-hébergable", + "selfHostableDescription": "Exécutez-le sur votre propre serveur pour prendre le contrôle total de vos données.", + "timeSlots": "Créneaux horaires", + "timeSlotsDescription": "Définissez des heures de début et de fin individuelles pour chaque option de votre sondage. Les heures peuvent être automatiquement ajustées au fuseau horaire de chaque participant ou peuvent être configurées pour ignorer complètement les fuseaux horaires." + }, + "common": { + "blog": "Blog", + "discussions": "Discussions", + "footerCredit": "Fait par @imlukevella", + "footerSponsor": "Ce projet est financé par les utilisateurs. Veuillez envisager de le soutenir en donating.", + "home": "Accueil", + "language": "Langue", + "links": "Liens", + "poweredBy": "Propulsé par", + "privacyPolicy": "Politique de Confidentialité", + "starOnGithub": "Mettez une étoile sur GitHub", + "support": "Assistance", + "cookiePolicy": "Politique de cookies", + "termsOfUse": "Conditions d'utilisation", + "volunteerTranslator": "Aidez à traduire ce site" + }, + "errors": { + "notFoundTitle": "404 introuvable", + "notFoundDescription": "Nous n'avons pas trouvé la page que vous recherchez.", + "goToHome": "Retourner à la page d'accueil", + "startChat": "Démarrer la discussion" + }, + "optionCount": "{count, plural, one {# option} other {# options}}", + "participantCount": "{count, plural, one {# participant} other {# participants}}" } diff --git a/apps/web/public/locales/fr/common.json b/apps/web/public/locales/fr/common.json deleted file mode 100644 index ca7f8962a..000000000 --- a/apps/web/public/locales/fr/common.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "blog": "Blog", - "discussions": "Discussions", - "footerCredit": "Fait par @imlukevella", - "footerSponsor": "Ce projet est financé par les utilisateurs. Veuillez envisager de le soutenir en donating.", - "home": "Accueil", - "language": "Langue", - "links": "Liens", - "poweredBy": "Propulsé par", - "privacyPolicy": "Politique de Confidentialité", - "starOnGithub": "Mettez une étoile sur GitHub", - "support": "Assistance", - "cookiePolicy": "Politique de cookies", - "termsOfUse": "Conditions d'utilisation", - "volunteerTranslator": "Aidez à traduire ce site" -} diff --git a/apps/web/public/locales/fr/errors.json b/apps/web/public/locales/fr/errors.json deleted file mode 100644 index 3de776072..000000000 --- a/apps/web/public/locales/fr/errors.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "notFoundTitle": "404 introuvable", - "notFoundDescription": "Nous n'avons pas trouvé la page que vous recherchez.", - "goToHome": "Retourner à la page d'accueil", - "startChat": "Démarrer la discussion" -} diff --git a/apps/web/public/locales/fr/homepage.json b/apps/web/public/locales/fr/homepage.json deleted file mode 100644 index fdddf7f7c..000000000 --- a/apps/web/public/locales/fr/homepage.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "3Ls": "Oui — avec 3 L", - "adFree": "Sans publicités", - "adFreeDescription": "Vous pouvez donner un repos à votre bloqueur de publicité. Vous n'en aurez pas besoin ici.", - "comments": "Commentaires", - "commentsDescription": "Les participants peuvent commenter votre sondage et les commentaires seront visibles par tous.", - "features": "Fonctionnalités", - "featuresSubheading": "La planification, la manière intelligente", - "getStarted": "Commencez", - "heroSubText": "Trouver la bonne date sans les allers-retours", - "heroText": "Programmez facilement des
réunions de groupe
", - "links": "Liens", - "liveDemo": "Démo en ligne", - "metaDescription": "Créez des sondages et votez pour trouver le meilleur jour ou la meilleure heure. Une alternative gratuite à Doodle.", - "metaTitle": "Rallly - Planifier des réunions de groupe", - "mobileFriendly": "Compatible avec les appareils mobiles", - "mobileFriendlyDescription": "Il fonctionne parfaitement sur les appareils mobiles, de sorte que les participants peuvent répondre aux sondages où qu'ils se trouvent.", - "new": "Nouveau", - "noLoginRequired": "Pas de connexion requise", - "noLoginRequiredDescription": "Vous n'avez pas besoin de vous connecter pour créer ou participer à un sondage.", - "notifications": "Notifications", - "notificationsDescription": "Gardez une trace de ceux qui ont répondu. Recevez une notification lorsque les participants votent ou commentent votre sondage.", - "openSource": "Open source", - "openSourceDescription": "Le code est entièrement open-source et est disponible sur GitHub.", - "participant": "Participant", - "participantCount_zero": "{{count}} participants", - "participantCount_one": "{{count}} participant", - "participantCount_two": "{{count}} participants", - "participantCount_few": "{{count}} participants", - "participantCount_many": "{{count}} participants", - "participantCount_other": "{{count}} participants", - "perfect": "Parfait !", - "principles": "Principes", - "principlesSubheading": "Nous ne sommes pas comme les autres", - "selfHostable": "Auto-hébergable", - "selfHostableDescription": "Exécutez-le sur votre propre serveur pour prendre le contrôle total de vos données.", - "timeSlots": "Créneaux horaires", - "timeSlotsDescription": "Définissez des heures de début et de fin individuelles pour chaque option de votre sondage. Les heures peuvent être automatiquement ajustées au fuseau horaire de chaque participant ou peuvent être configurées pour ignorer complètement les fuseaux horaires." -} diff --git a/apps/web/public/locales/hr/app.json b/apps/web/public/locales/hr/app.json index 553e964eb..2940b32ae 100644 --- a/apps/web/public/locales/hr/app.json +++ b/apps/web/public/locales/hr/app.json @@ -2,7 +2,7 @@ "12h": "12-satni", "24h": "24-satni", "addTimeOption": "Dodaj novi termin", - "adminPollTitle": "{{title}}: Admin", + "adminPollTitle": "{title}: Admin", "alreadyRegistered": "Već ste registrirani? Prijavite se→", "applyToAllDates": "Primjeni na sve datume", "areYouSure": "Jeste li sigurni?", @@ -21,7 +21,7 @@ "copied": "Kopirano", "copyLink": "Kopiraj poveznicu", "createAnAccount": "Stvorite račun", - "createdBy": "napravio/la {{name}}", + "createdBy": "napravio/la {name}", "createNew": "Stvori novu", "createPoll": "Stvori anketu", "creatingDemo": "Stvaranje demo ankete…", @@ -30,10 +30,10 @@ "deleteDate": "Brisanje datuma", "deletedPoll": "Izbrisana anketa", "deletedPollInfo": "Nažalost, ova anketa više ne postoji.", - "deleteParticipant": "Izbriši {{name}}?", + "deleteParticipant": "Izbriši {name}?", "deleteParticipantDescription": "Sigurno želite izbrisati ovog sudionika? Ovo nije moguće naknadno poništiti.", "deletePoll": "Izbriši anketu", - "deletePollDescription": "Svi podaci vezani uz ovu anketu bit će izbrisani. Za potvrdu upišite “{{confirmText}}” u polje za unos ispod:", + "deletePollDescription": "Svi podaci vezani uz ovu anketu bit će izbrisani. Za potvrdu upišite “{confirmText}” u polje za unos ispod:", "deletingOptionsWarning": "Brišete opcije za koje su glasali sudionici. I njihovi odabiri će također biti izbrisani.", "demoPollNotice": "Demo ankete se automatski brišu nakon 1 dana", "description": "Opis", @@ -87,7 +87,7 @@ "nextMonth": "Sljedeći mjesec", "no": "Ne", "noDatesSelected": "Datum nije odabran", - "notificationsDisabled": "Obavijesti su onemogućene za {{title}}", + "notificationsDisabled": "Obavijesti su onemogućene za {title}", "notificationsGuest": "Prijavite se kako biste omogućili slanje obavijesti", "notificationsOff": "Obavijesti su isključene", "notificationsOn": "Obavijesti uključene", @@ -95,33 +95,21 @@ "noVotes": "Nitko nije glasao za ovu opciju", "ok": "U redu", "optional": "opcionalno", - "optionCount_few": "{{count}} opcije", - "optionCount_many": "{{count}} opcije", - "optionCount_one": "{{count}} opcija", - "optionCount_other": "{{count}} opcije", - "optionCount_two": "{{count}} opcije", - "optionCount_zero": "{{count}} opcije", "participant": "Sudionik", - "participantCount_few": "Broj sudionika: {{count}}", - "participantCount_many": "Broj sudionika: {{count}}", - "participantCount_one": "Broj sudionika: {{count}}", - "participantCount_other": "Broj sudionika: {{count}}", - "participantCount_two": "Broj sudionika: {{count}}", - "participantCount_zero": "Broj sudionika: {{count}}", "pollHasBeenLocked": "Ova anketa je zaključana", "pollsEmpty": "Nema stvorenih anketa", "possibleAnswers": "Mogući odgovori", "preferences": "Postavke", "previousMonth": "Prethodni mjesec", - "profileUser": "Profil - {{username}}", + "profileUser": "Profil - {username}", "redirect": "Kliknite ovdje ako niste automatski preusmjereni…", "register": "Registracija", "requiredNameError": "Ime je obavezno", - "requiredString": "\"{{name}}\" je obavezno", + "requiredString": "\"{name}\" je obavezno", "resendVerificationCode": "Ponovno pošalji poruku za potvrdu", "response": "Odgovor", "save": "Pohrani", - "saveInstruction": "Odaberite termine koji vam odgovaraju i kliknite na {{action}}", + "saveInstruction": "Odaberite termine koji vam odgovaraju i kliknite na {action}", "send": "Pošalji", "sendFeedback": "Pošalji povratnu informaciju", "share": "Podijeli", @@ -129,7 +117,7 @@ "shareLink": "Podijeli putem poveznice", "specifyTimes": "Zadaj vrijeme", "specifyTimesDescription": "Obuhvati vrijeme početka i završetka za svaku opciju", - "stepSummary": "Korak {{current}} od {{total}}", + "stepSummary": "Korak {current} od {total}", "submit": "Predaj", "sunday": "Nedjelja", "timeFormat": "Format vremena:", @@ -145,7 +133,7 @@ "validEmail": "Molimo unesite valjanu adresu e-pošte", "verificationCodeHelp": "Niste dobili poruku e-pošte? Provjerite svoju mapu s neželjenom poštom (SPAM).", "verificationCodePlaceholder": "Unesite 6-znamenkasti kôd", - "verificationCodeSent": "Kôd za potvrdu je poslan na adresu {{email}} Promijenite", + "verificationCodeSent": "Kôd za potvrdu je poslan na adresu {email} Promijenite", "verifyYourEmail": "Potvrdite svoju adresu e-pošte", "weekStartsOn": "Početak tjedna", "weekView": "Tjedni pregled", @@ -156,5 +144,61 @@ "yourDetails": "Tvoji podatci", "yourName": "Vaše ime…", "yourPolls": "Vaše ankete", - "yourProfile": "Vaš profil" + "yourProfile": "Vaš profil", + "homepage": { + "3Ls": "Da, s 3 slova L", + "adFree": "Bez reklama", + "adFreeDescription": "Adblocker vam ne treba ovdje.", + "comments": "Komentari", + "commentsDescription": "Sudionici mogu komentirati vašu anketu i komentari će biti vidljivi svima.", + "features": "Mogućnosti", + "featuresSubheading": "Pametni način zakazivanja sastanaka", + "getStarted": "Započnite", + "heroSubText": "Pronađite pravi termin bez puno muke", + "heroText": "Zakažite
sastanke
s lakoćom", + "links": "Poveznice", + "liveDemo": "Demo", + "metaDescription": "Napravite ankete i glasajte kako biste pronašli najbolji dan ili vrijeme. Besplatna alternativa Doodleu.", + "metaTitle": "Rallly - zakazivanje termina sastanaka", + "mobileFriendly": "Namijenjeno mobilnim uređajima", + "mobileFriendlyDescription": "Sjajno radi na mobilnim uređajima tako da sudionici mogu odgovarati na ankete gdje god se nalazili.", + "new": "Novo", + "noLoginRequired": "Nije potrebna prijava na sustav", + "noLoginRequiredDescription": "Ne morate se prijaviti kako biste stvorili anketu ili sudjelovali u njoj.", + "notifications": "Obavijesti", + "notificationsDescription": "Pratite tko je odgovorio. Primite obavijest kada sudionici glasaju ili komentiraju vašu anketu.", + "openSource": "Otvoreni kôd", + "openSourceDescription": "Ovo je rješenje zasnovano na otvorenom kôdu i dostupno je na GitHub-u.", + "participant": "Sudionik", + "participantCount": "{count, plural, other {Broj sudionika: #}}", + "perfect": "Savršeno!", + "principles": "Principi", + "principlesSubheading": "Nismo kao drugi", + "selfHostable": "Instalacija na vašem poslužitelju", + "selfHostableDescription": "Pokrenite ga na vlastitom poslužitelju kako biste preuzeli potpunu kontrolu nad svojim podacima.", + "timeSlots": "Vrijeme", + "timeSlotsDescription": "Postavite pojedinačno vrijeme početka i završetka za svaku opciju u svojoj anketi. Vremena se mogu automatski prilagoditi vremenskoj zoni svakog sudionika ili se mogu postaviti da potpuno zanemaruju vremenske zone." + }, + "common": { + "blog": "Blog", + "discussions": "Rasprave", + "footerCredit": "Autor: @imlukevella", + "footerSponsor": "Ovaj projekt financiraju korisnici. Razmislite o podršci donacijom.", + "home": "Naslovnica", + "language": "Jezik", + "links": "Poveznice", + "poweredBy": "Pokreće", + "privacyPolicy": "Pravila privatnosti", + "starOnGithub": "Ocijeni na GitHub-u", + "support": "Podrška", + "volunteerTranslator": "Pomozite prevesti ovu stranicu" + }, + "errors": { + "notFoundTitle": "404 Nije pronađeno", + "notFoundDescription": "Nije bilo moguće pronaći stranicu koju želite otvoriti.", + "goToHome": "Idi na naslovnicu", + "startChat": "Pokrenite chat" + }, + "optionCount": "{count, plural, one {# opcija} other {# opcije}}", + "participantCount": "{count, plural, other {Broj sudionika: #}}" } diff --git a/apps/web/public/locales/hr/common.json b/apps/web/public/locales/hr/common.json deleted file mode 100644 index 194ebd9a4..000000000 --- a/apps/web/public/locales/hr/common.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "blog": "Blog", - "discussions": "Rasprave", - "footerCredit": "Autor: @imlukevella", - "footerSponsor": "Ovaj projekt financiraju korisnici. Razmislite o podršci donacijom.", - "home": "Naslovnica", - "language": "Jezik", - "links": "Poveznice", - "poweredBy": "Pokreće", - "privacyPolicy": "Pravila privatnosti", - "starOnGithub": "Ocijeni na GitHub-u", - "support": "Podrška", - "volunteerTranslator": "Pomozite prevesti ovu stranicu" -} diff --git a/apps/web/public/locales/hr/errors.json b/apps/web/public/locales/hr/errors.json deleted file mode 100644 index ca5cba841..000000000 --- a/apps/web/public/locales/hr/errors.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "notFoundTitle": "404 Nije pronađeno", - "notFoundDescription": "Nije bilo moguće pronaći stranicu koju želite otvoriti.", - "goToHome": "Idi na naslovnicu", - "startChat": "Pokrenite chat" -} diff --git a/apps/web/public/locales/hr/homepage.json b/apps/web/public/locales/hr/homepage.json deleted file mode 100644 index 89d6a70c8..000000000 --- a/apps/web/public/locales/hr/homepage.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "3Ls": "Da, s 3 slova L", - "adFree": "Bez reklama", - "adFreeDescription": "Adblocker vam ne treba ovdje.", - "comments": "Komentari", - "commentsDescription": "Sudionici mogu komentirati vašu anketu i komentari će biti vidljivi svima.", - "features": "Mogućnosti", - "featuresSubheading": "Pametni način zakazivanja sastanaka", - "getStarted": "Započnite", - "heroSubText": "Pronađite pravi termin bez puno muke", - "heroText": "Zakažite
sastanke
s lakoćom", - "links": "Poveznice", - "liveDemo": "Demo", - "metaDescription": "Napravite ankete i glasajte kako biste pronašli najbolji dan ili vrijeme. Besplatna alternativa Doodleu.", - "metaTitle": "Rallly - zakazivanje termina sastanaka", - "mobileFriendly": "Namijenjeno mobilnim uređajima", - "mobileFriendlyDescription": "Sjajno radi na mobilnim uređajima tako da sudionici mogu odgovarati na ankete gdje god se nalazili.", - "new": "Novo", - "noLoginRequired": "Nije potrebna prijava na sustav", - "noLoginRequiredDescription": "Ne morate se prijaviti kako biste stvorili anketu ili sudjelovali u njoj.", - "notifications": "Obavijesti", - "notificationsDescription": "Pratite tko je odgovorio. Primite obavijest kada sudionici glasaju ili komentiraju vašu anketu.", - "openSource": "Otvoreni kôd", - "openSourceDescription": "Ovo je rješenje zasnovano na otvorenom kôdu i dostupno je na GitHub-u.", - "participant": "Sudionik", - "participantCount_zero": "Broj sudionika: {{count}}", - "participantCount_one": "Broj sudionika: {{count}}", - "participantCount_two": "Broj sudionika: {{count}}", - "participantCount_few": "Broj sudionika: {{count}}", - "participantCount_many": "Broj sudionika: {{count}}", - "participantCount_other": "Broj sudionika: {{count}}", - "perfect": "Savršeno!", - "principles": "Principi", - "principlesSubheading": "Nismo kao drugi", - "selfHostable": "Instalacija na vašem poslužitelju", - "selfHostableDescription": "Pokrenite ga na vlastitom poslužitelju kako biste preuzeli potpunu kontrolu nad svojim podacima.", - "timeSlots": "Vrijeme", - "timeSlotsDescription": "Postavite pojedinačno vrijeme početka i završetka za svaku opciju u svojoj anketi. Vremena se mogu automatski prilagoditi vremenskoj zoni svakog sudionika ili se mogu postaviti da potpuno zanemaruju vremenske zone." -} diff --git a/apps/web/public/locales/hu/app.json b/apps/web/public/locales/hu/app.json index 374a559c2..b5a636a6e 100644 --- a/apps/web/public/locales/hu/app.json +++ b/apps/web/public/locales/hu/app.json @@ -2,7 +2,7 @@ "12h": "12 órás", "24h": "24 órás", "addTimeOption": "Időpont hozzáadása", - "adminPollTitle": "{{title}}: Admin felület", + "adminPollTitle": "{title}: Admin felület", "alreadyRegistered": "Már regisztráltál? Bejelentkezés →", "applyToAllDates": "Beállítás minden dátumhoz", "areYouSure": "Biztos vagy benne?", @@ -21,7 +21,7 @@ "copied": "Másolva", "copyLink": "Link másolása", "createAnAccount": "Fiók létrehozása", - "createdBy": "{{name}} által", + "createdBy": "{name} által", "createNew": "Új létrehozása", "createPoll": "Szavazás létrehozása", "creatingDemo": "Demó szavazás létrehozása…", @@ -30,10 +30,10 @@ "deleteDate": "Dátum törlése", "deletedPoll": "Törölt szavazás", "deletedPollInfo": "Ez a szavazás már nem létezik.", - "deleteParticipant": "Törlöd: {{name}}?", + "deleteParticipant": "Törlöd: {name}?", "deleteParticipantDescription": "Biztos hogy szeretnéd törölni ezt a résztvevőt? Ha törlöd, nem lehet visszaállítani.", "deletePoll": "Szavazás törlése", - "deletePollDescription": "Minden a szavazáshoz kötődő adatot törölni fogunk. Megerősítésként gépeld be a “{{confirmText}}” szöveget az alábbi mezőbe:", + "deletePollDescription": "Minden a szavazáshoz kötődő adatot törölni fogunk. Megerősítésként gépeld be a “{confirmText}” szöveget az alábbi mezőbe:", "deletingOptionsWarning": "Olyan lehetőséget törölsz, amire résztvevők már szavaztak. Az ő szavazataik is törlődni fognak.", "demoPollNotice": "A demó szavazások egy nap után automatikusan törlődnek", "description": "Leírás", @@ -87,7 +87,7 @@ "nextMonth": "Következő hónap", "no": "Nem", "noDatesSelected": "Nincs dátum kiválasztva", - "notificationsDisabled": "Értesítések ki lettek kapcsolva ehhez a szavazáshoz: {{title}}", + "notificationsDisabled": "Értesítések ki lettek kapcsolva ehhez a szavazáshoz: {title}", "notificationsGuest": "Jelentkezz be, hogy bekapcsolhasd az értesítéseket", "notificationsOff": "Értesítések kikapcsolva", "notificationsOn": "Értesítések bekapcsolva", @@ -95,33 +95,21 @@ "noVotes": "Senki sem szavazott erre a lehetőségre", "ok": "Ok", "optional": "opcionális", - "optionCount_few": "{{count}} lehetőség", - "optionCount_many": "{{count}} lehetőség", - "optionCount_one": "{{count}} lehetőség", - "optionCount_other": "{{count}} lehetőség", - "optionCount_two": "{{count}} lehetőség", - "optionCount_zero": "{{count}} lehetőség", "participant": "Résztvevő", - "participantCount_few": "{{count}} résztvevő", - "participantCount_many": "{{count}} résztvevő", - "participantCount_one": "{{count}} résztvevő", - "participantCount_other": "{{count}} résztvevő", - "participantCount_two": "{{count}} résztvevő", - "participantCount_zero": "{{count}} résztvevő", "pollHasBeenLocked": "A szavazás le lett zárva", "pollsEmpty": "Nincs létrehozott szavazás", "possibleAnswers": "Lehetséges válaszok", "preferences": "Beállítások", "previousMonth": "Előző hónap", - "profileUser": "Profil - {{username}}", + "profileUser": "Profil - {username}", "redirect": "Kattints ide, ha automatikusan nem lépsz tovább…", "register": "Regisztráció", "requiredNameError": "Név megadása kötelező", - "requiredString": "“{{name}}” kötelező", + "requiredString": "“{name}” kötelező", "resendVerificationCode": "Hitelesítő kód újraküldése", "response": "Válasz", "save": "Mentés", - "saveInstruction": "Válaszd ki mikor érsz rá és kattints a {{action}} gombra", + "saveInstruction": "Válaszd ki mikor érsz rá és kattints a {action} gombra", "send": "Küldés", "sendFeedback": "Visszajelzés küldése", "share": "Megosztás", @@ -129,7 +117,7 @@ "shareLink": "Megosztás linkkel", "specifyTimes": "Időpontok megadása", "specifyTimesDescription": "Adj meg kezdő és záró időpontot minden lehetőséghez", - "stepSummary": "{{total}}/{{current}}. lépés", + "stepSummary": "{total}/{current}. lépés", "submit": "Küldés", "sunday": "Vasárnap", "timeFormat": "Időformátum:", @@ -145,7 +133,7 @@ "validEmail": "Kérjük adj meg egy érvényes e-mail címet", "verificationCodeHelp": "Nem kaptad meg az emailt? Ellenőrizd a spam mappádat is.", "verificationCodePlaceholder": "Írd be a hatjegyű kódot", - "verificationCodeSent": "A hitelesítő kód ki lett küldve {{email}} címre Módosít", + "verificationCodeSent": "A hitelesítő kód ki lett küldve {email} címre Módosít", "verifyYourEmail": "Hitelesítsd az email címed", "weekStartsOn": "Hét kezdőnapja", "weekView": "Heti nézet", @@ -156,5 +144,63 @@ "yourDetails": "Adataid", "yourName": "Neved…", "yourPolls": "Szavazásaid", - "yourProfile": "Profilod" + "yourProfile": "Profilod", + "homepage": { + "3Ls": "Igen, 3 L-el", + "adFree": "Reklámmentes", + "adFreeDescription": "Adhatsz egy kis pihenőt a reklám blokkolódnak - Itt nem lesz rá szükséged.", + "comments": "Hozzászólások", + "commentsDescription": "A résztvevők hozzászólhatnak a szavazásodhoz és azok minden résztvevő számára láthatóak.", + "features": "Funkciók", + "featuresSubheading": "Ütemezés, az okos út", + "getStarted": "Kezdjünk bele", + "heroSubText": "Találd meg a megfelelő időpontot oda-vissza nélkül", + "heroText": "Ütemezz
találkozókat
könnyen", + "links": "Linkek", + "liveDemo": "Élő demó", + "metaDescription": "Hozz létre szavazásokat és szavazz, hogy megtaláld a legjobb napot vagy időt. Egy ingyenes Doodle alternatíva.", + "metaTitle": "Rallly - Ütemezz találkozókat", + "mobileFriendly": "Telefonon is használható", + "mobileFriendlyDescription": "Telefonon is jól működik, így a résztvevők bárhonnan kitölthetik a szavazásod.", + "new": "Új", + "noLoginRequired": "Bejelentkezés nem szükséges", + "noLoginRequiredDescription": "Nem kell bejelentkezned szavazás létrehozásához vagy a részvételhez.", + "notifications": "Értesítések", + "notificationsDescription": "Kövesd, hogy ki válaszolt. Értesítéseket kapsz, ha egy résztvevő szavaz vagy hozzászól a szavazásodhoz.", + "openSource": "Nyílt forráskódú", + "openSourceDescription": "A forráskód teljesen nyílt forráskódú és elérhető GitHub-on.", + "participant": "Résztvevő", + "participantCount": "{count, plural, other {# résztvevő}}", + "perfect": "Tökéletes!", + "principles": "Alapelveink", + "principlesSubheading": "Mások vagyok, mint a többiek", + "selfHostable": "Önállóan futtatható", + "selfHostableDescription": "Futtathatod a saját szervereden, magad kezelve minden adatot.", + "timeSlots": "Idősávok", + "timeSlotsDescription": "Állíts be egyedi kezdő és befejező időpontokat minden válaszlehetőséghez. Az időpontok automatikusan igazodnak minden egyes résztvevő időzónájához vagy beállítható, hogy az időzónákat ne vegye figyelembe." + }, + "common": { + "blog": "Blog", + "discussions": "Beszélgetések", + "footerCredit": "Készítette @imlukevella", + "footerSponsor": "Ezt a projektet a felhasználók finanszírozzák. Kérlek gondold meg, hogy adományoddal támogatsz minket.", + "home": "Főoldal", + "language": "Nyelv", + "links": "Linkek", + "poweredBy": "Biztosítja a", + "privacyPolicy": "Adatvédelmi irányelvek", + "starOnGithub": "Csillagozz be GitHub-on", + "support": "Segítség", + "cookiePolicy": "Cookie irányelvek", + "termsOfUse": "Használati feltételek", + "volunteerTranslator": "Segíts lefordítani ezt az oldalt" + }, + "errors": { + "notFoundTitle": "404 az oldal nem található", + "notFoundDescription": "Nem található az oldal, amit keresel.", + "goToHome": "Irány a főoldal", + "startChat": "Csevegés indítása" + }, + "optionCount": "{count, plural, other {# lehetőség}}", + "participantCount": "{count, plural, other {# résztvevő}}" } diff --git a/apps/web/public/locales/hu/common.json b/apps/web/public/locales/hu/common.json deleted file mode 100644 index bfdaa2df5..000000000 --- a/apps/web/public/locales/hu/common.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "blog": "Blog", - "discussions": "Beszélgetések", - "footerCredit": "Készítette @imlukevella", - "footerSponsor": "Ezt a projektet a felhasználók finanszírozzák. Kérlek gondold meg, hogy adományoddal támogatsz minket.", - "home": "Főoldal", - "language": "Nyelv", - "links": "Linkek", - "poweredBy": "Biztosítja a", - "privacyPolicy": "Adatvédelmi irányelvek", - "starOnGithub": "Csillagozz be GitHub-on", - "support": "Segítség", - "cookiePolicy": "Cookie irányelvek", - "termsOfUse": "Használati feltételek", - "volunteerTranslator": "Segíts lefordítani ezt az oldalt" -} diff --git a/apps/web/public/locales/hu/errors.json b/apps/web/public/locales/hu/errors.json deleted file mode 100644 index 8d2f36697..000000000 --- a/apps/web/public/locales/hu/errors.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "notFoundTitle": "404 az oldal nem található", - "notFoundDescription": "Nem található az oldal, amit keresel.", - "goToHome": "Irány a főoldal", - "startChat": "Csevegés indítása" -} diff --git a/apps/web/public/locales/hu/homepage.json b/apps/web/public/locales/hu/homepage.json deleted file mode 100644 index baf39871f..000000000 --- a/apps/web/public/locales/hu/homepage.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "3Ls": "Igen, 3 L-el", - "adFree": "Reklámmentes", - "adFreeDescription": "Adhatsz egy kis pihenőt a reklám blokkolódnak - Itt nem lesz rá szükséged.", - "comments": "Hozzászólások", - "commentsDescription": "A résztvevők hozzászólhatnak a szavazásodhoz és azok minden résztvevő számára láthatóak.", - "features": "Funkciók", - "featuresSubheading": "Ütemezés, az okos út", - "getStarted": "Kezdjünk bele", - "heroSubText": "Találd meg a megfelelő időpontot oda-vissza nélkül", - "heroText": "Ütemezz
találkozókat
könnyen", - "links": "Linkek", - "liveDemo": "Élő demó", - "metaDescription": "Hozz létre szavazásokat és szavazz, hogy megtaláld a legjobb napot vagy időt. Egy ingyenes Doodle alternatíva.", - "metaTitle": "Rallly - Ütemezz találkozókat", - "mobileFriendly": "Telefonon is használható", - "mobileFriendlyDescription": "Telefonon is jól működik, így a résztvevők bárhonnan kitölthetik a szavazásod.", - "new": "Új", - "noLoginRequired": "Bejelentkezés nem szükséges", - "noLoginRequiredDescription": "Nem kell bejelentkezned szavazás létrehozásához vagy a részvételhez.", - "notifications": "Értesítések", - "notificationsDescription": "Kövesd, hogy ki válaszolt. Értesítéseket kapsz, ha egy résztvevő szavaz vagy hozzászól a szavazásodhoz.", - "openSource": "Nyílt forráskódú", - "openSourceDescription": "A forráskód teljesen nyílt forráskódú és elérhető GitHub-on.", - "participant": "Résztvevő", - "participantCount_zero": "{{count}} résztvevő", - "participantCount_one": "{{count}} résztvevő", - "participantCount_two": "{{count}} résztvevő", - "participantCount_few": "{{count}} résztvevő", - "participantCount_many": "{{count}} résztvevő", - "participantCount_other": "{{count}} résztvevő", - "perfect": "Tökéletes!", - "principles": "Alapelveink", - "principlesSubheading": "Mások vagyok, mint a többiek", - "selfHostable": "Önállóan futtatható", - "selfHostableDescription": "Futtathatod a saját szervereden, magad kezelve minden adatot.", - "timeSlots": "Idősávok", - "timeSlotsDescription": "Állíts be egyedi kezdő és befejező időpontokat minden válaszlehetőséghez. Az időpontok automatikusan igazodnak minden egyes résztvevő időzónájához vagy beállítható, hogy az időzónákat ne vegye figyelembe." -} diff --git a/apps/web/public/locales/it/app.json b/apps/web/public/locales/it/app.json index c7e3d9f71..e71e5f8fd 100644 --- a/apps/web/public/locales/it/app.json +++ b/apps/web/public/locales/it/app.json @@ -2,7 +2,7 @@ "12h": "12 ore", "24h": "24 ore", "addTimeOption": "Aggiungi opzione orario", - "adminPollTitle": "{{title}}: Amministratore", + "adminPollTitle": "{title}: Amministratore", "alreadyRegistered": "Sei già registrato? Accedi →", "applyToAllDates": "Applica a tutte le date", "areYouSure": "Sei sicuro/a?", @@ -21,7 +21,7 @@ "copied": "Copiato", "copyLink": "Copia link", "createAnAccount": "Crea un account", - "createdBy": "da {{name}}", + "createdBy": "da {name}", "createNew": "Crea nuovo", "createPoll": "Crea sondaggio", "creatingDemo": "Creando sondaggio demo…", @@ -30,10 +30,10 @@ "deleteDate": "Elimina data", "deletedPoll": "Elimina sondaggio", "deletedPollInfo": "Questo sondaggio non esiste più.", - "deleteParticipant": "Eliminare {{name}}?", + "deleteParticipant": "Eliminare {name}?", "deleteParticipantDescription": "Sei sicuro di voler eliminare questo partecipante? L'operazione non può essere annullata.", "deletePoll": "Elimina sondaggio", - "deletePollDescription": "Tutti i dati relativi a questo sondaggio saranno eliminati. Per confermare, digita “{{confirmText}}” qui sotto:", + "deletePollDescription": "Tutti i dati relativi a questo sondaggio saranno eliminati. Per confermare, digita “{confirmText}” qui sotto:", "deletingOptionsWarning": "Stai eliminando opzioni per le quali i partecipanti hanno votato. Anche il loro voto sarà eliminato.", "demoPollNotice": "I sondaggi demo vengono cancellati automaticamente dopo 1 giorno", "description": "Descrizione", @@ -86,7 +86,7 @@ "nextMonth": "Mese successivo", "no": "No", "noDatesSelected": "Nessuna data selezionata", - "notificationsDisabled": "Le notifiche sono state abilitate per {{title}}", + "notificationsDisabled": "Le notifiche sono state abilitate per {title}", "notificationsGuest": "Accedi per attivare le notifiche", "notificationsOff": "Le notifiche sono disattivate", "notificationsOn": "Notifiche attive", @@ -94,33 +94,21 @@ "noVotes": "Nessuno ha votato per questa opzione", "ok": "Ok", "optional": "opzionale", - "optionCount_few": "{{count}} opzioni", - "optionCount_many": "{{count}} opzioni", - "optionCount_one": "{{count}} opzione", - "optionCount_other": "{{count}} opzioni", - "optionCount_two": "{{count}} opzioni", - "optionCount_zero": "{{count}} opzioni", "participant": "Partecipante", - "participantCount_few": "{{count}} partecipanti", - "participantCount_many": "{{count}} partecipanti", - "participantCount_one": "{{count}} partecipante", - "participantCount_other": "{{count}} partecipanti", - "participantCount_two": "{{count}} partecipanti", - "participantCount_zero": "{{count}} partecipanti", "pollHasBeenLocked": "Questo sondaggio è stato bloccato", "pollsEmpty": "Nessun sondaggio creato", "possibleAnswers": "Possibili risposte", "preferences": "Impostazioni", "previousMonth": "Mese precedente", - "profileUser": "Profilo - {{username}}", + "profileUser": "Profilo - {username}", "redirect": "Clicca qui se non sei reindirizzato automaticamente…", "register": "Registrati", "requiredNameError": "Il nome è obbligatorio", - "requiredString": "“{{name}}” è richiesto", + "requiredString": "“{name}” è richiesto", "resendVerificationCode": "Invia nuovamente il Codice di Verifica", "response": "Risposta", "save": "Salva", - "saveInstruction": "Seleziona la tua disponibilità e clicca su {{action}}", + "saveInstruction": "Seleziona la tua disponibilità e clicca su {action}", "send": "Invia", "sendFeedback": "Invia Feedback", "share": "Condividi", @@ -128,7 +116,7 @@ "shareLink": "Condividi via link", "specifyTimes": "Specifica orari", "specifyTimesDescription": "Includi gli orari di inizio e di fine per ogni opzione", - "stepSummary": "Fase {{current}} di {{total}}", + "stepSummary": "Fase {current} di {total}", "submit": "Invia", "sunday": "Domenica", "timeFormat": "Formato orario:", @@ -144,7 +132,7 @@ "validEmail": "Si prega di inserire un indirizzo e-mail valido", "verificationCodeHelp": "Non hai ricevuto l'email? Controlla la spam/indesiderato.", "verificationCodePlaceholder": "Inserisci il codice a 6 cifre", - "verificationCodeSent": "Un codice di verifica è stato inviato a {{email}} Modifica", + "verificationCodeSent": "Un codice di verifica è stato inviato a {email} Modifica", "verifyYourEmail": "Verifica la tua email", "weekStartsOn": "La settimana inizia da", "weekView": "Vista settimanale", @@ -155,5 +143,61 @@ "yourDetails": "I tuoi dati", "yourName": "Il tuo nome…", "yourPolls": "I tuoi sondaggi", - "yourProfile": "Il tuo profilo" + "yourProfile": "Il tuo profilo", + "homepage": { + "3Ls": "Sì—con 3 Ls", + "adFree": "Senza pubblicità", + "adFreeDescription": "Puoi far riposare il tuo ad-blocker — qui non ne avrai bisogno.", + "comments": "Commenti", + "commentsDescription": "I partecipanti possono commentare il sondaggio e i commenti saranno visibili a tutti.", + "features": "Funzionalità", + "featuresSubheading": "Pianificare in modo intelligente", + "getStarted": "Inizia ora", + "heroSubText": "Trova la data perfetta senza troppi problemi", + "heroText": "Pianifica
riunioni di gruppo
con facilità", + "links": "Link", + "liveDemo": "Demo Live", + "metaDescription": "Crea sondaggi e vota per trovare il miglior giorno o orario. Un alternativa gratuita a Doodle.", + "metaTitle": "Rallly - Programma incontri di gruppo", + "mobileFriendly": "Adatto a dispositivi mobili", + "mobileFriendlyDescription": "Funziona bene su dispositivi mobili in modo che i partecipanti possano rispondere ai sondaggi ovunque si trovino.", + "new": "Nuovo", + "noLoginRequired": "Login non necessario", + "noLoginRequiredDescription": "Non è necessario effettuare il login per creare o partecipare ad un sondaggio.", + "notifications": "Notifiche", + "notificationsDescription": "Tieni traccia di chi ha risposto. Ricevi una notifica quando i partecipanti votano o commentano il tuo sondaggio.", + "openSource": "Open-source", + "openSourceDescription": "Il codice è completamente open-source e disponibile su GitHub.", + "participant": "Partecipante", + "participantCount": "{count, plural, one {# partecipante} other {# partecipanti}}", + "perfect": "Perfetto!", + "principles": "Principi", + "principlesSubheading": "Non siamo come gli altri", + "selfHostable": "Self-hostable", + "selfHostableDescription": "Eseguilo sul tuo server personale per avere il pieno controllo dei tuoi dati.", + "timeSlots": "Fasce orarie", + "timeSlotsDescription": "Imposta singolarmente i tempi di inizio e fine per ogni opzione nel tuo sondaggio. Gli orari possono essere automaticamente adattati al fuso orario di ogni partecipante o possono essere impostati per ignorare completamente i fuso orari." + }, + "common": { + "blog": "Blog", + "discussions": "Discussioni", + "footerCredit": "Realizzato da @imlukevella", + "footerSponsor": "Questo progetto è finanziato dall'utente. Per favore considera di supportarlo donando.", + "home": "Home", + "language": "Lingua", + "links": "Link", + "poweredBy": "Powered by", + "privacyPolicy": "Informativa sulla privacy", + "starOnGithub": "Aggiungi ai preferiti su Github", + "support": "Assistenza", + "volunteerTranslator": "Aiutaci a tradurre il sito" + }, + "errors": { + "notFoundTitle": "404 non trovato", + "notFoundDescription": "Non abbiamo trovato la pagina che stavi cercando.", + "goToHome": "Vai alla home", + "startChat": "Avvia la chat" + }, + "optionCount": "{count, plural, one {# opzione} other {# opzioni}}", + "participantCount": "{count, plural, one {# partecipante} other {# partecipanti}}" } diff --git a/apps/web/public/locales/it/common.json b/apps/web/public/locales/it/common.json deleted file mode 100644 index 932e90141..000000000 --- a/apps/web/public/locales/it/common.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "blog": "Blog", - "discussions": "Discussioni", - "footerCredit": "Realizzato da @imlukevella", - "footerSponsor": "Questo progetto è finanziato dall'utente. Per favore considera di supportarlo donando.", - "home": "Home", - "language": "Lingua", - "links": "Link", - "poweredBy": "Powered by", - "privacyPolicy": "Informativa sulla privacy", - "starOnGithub": "Aggiungi ai preferiti su Github", - "support": "Assistenza", - "volunteerTranslator": "Aiutaci a tradurre il sito" -} diff --git a/apps/web/public/locales/it/errors.json b/apps/web/public/locales/it/errors.json deleted file mode 100644 index b42a2b254..000000000 --- a/apps/web/public/locales/it/errors.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "notFoundTitle": "404 non trovato", - "notFoundDescription": "Non abbiamo trovato la pagina che stavi cercando.", - "goToHome": "Vai alla home", - "startChat": "Avvia la chat" -} diff --git a/apps/web/public/locales/it/homepage.json b/apps/web/public/locales/it/homepage.json deleted file mode 100644 index c40d982b5..000000000 --- a/apps/web/public/locales/it/homepage.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "3Ls": "Sì—con 3 Ls", - "adFree": "Senza pubblicità", - "adFreeDescription": "Puoi far riposare il tuo ad-blocker — qui non ne avrai bisogno.", - "comments": "Commenti", - "commentsDescription": "I partecipanti possono commentare il sondaggio e i commenti saranno visibili a tutti.", - "features": "Funzionalità", - "featuresSubheading": "Pianificare in modo intelligente", - "getStarted": "Inizia ora", - "heroSubText": "Trova la data perfetta senza troppi problemi", - "heroText": "Pianifica
riunioni di gruppo
con facilità", - "links": "Link", - "liveDemo": "Demo Live", - "metaDescription": "Crea sondaggi e vota per trovare il miglior giorno o orario. Un alternativa gratuita a Doodle.", - "metaTitle": "Rallly - Programma incontri di gruppo", - "mobileFriendly": "Adatto a dispositivi mobili", - "mobileFriendlyDescription": "Funziona bene su dispositivi mobili in modo che i partecipanti possano rispondere ai sondaggi ovunque si trovino.", - "new": "Nuovo", - "noLoginRequired": "Login non necessario", - "noLoginRequiredDescription": "Non è necessario effettuare il login per creare o partecipare ad un sondaggio.", - "notifications": "Notifiche", - "notificationsDescription": "Tieni traccia di chi ha risposto. Ricevi una notifica quando i partecipanti votano o commentano il tuo sondaggio.", - "openSource": "Open-source", - "openSourceDescription": "Il codice è completamente open-source e disponibile su GitHub.", - "participant": "Partecipante", - "participantCount_zero": "{{count}} partecipanti", - "participantCount_one": "{{count}} partecipante", - "participantCount_two": "{{count}} partecipanti", - "participantCount_few": "{{count}} partecipanti", - "participantCount_many": "{{count}} partecipanti", - "participantCount_other": "{{count}} partecipanti", - "perfect": "Perfetto!", - "principles": "Principi", - "principlesSubheading": "Non siamo come gli altri", - "selfHostable": "Self-hostable", - "selfHostableDescription": "Eseguilo sul tuo server personale per avere il pieno controllo dei tuoi dati.", - "timeSlots": "Fasce orarie", - "timeSlotsDescription": "Imposta singolarmente i tempi di inizio e fine per ogni opzione nel tuo sondaggio. Gli orari possono essere automaticamente adattati al fuso orario di ogni partecipante o possono essere impostati per ignorare completamente i fuso orari." -} diff --git a/apps/web/public/locales/ko/app.json b/apps/web/public/locales/ko/app.json index 244e970fa..dc660974e 100644 --- a/apps/web/public/locales/ko/app.json +++ b/apps/web/public/locales/ko/app.json @@ -2,7 +2,7 @@ "12h": "12시간제", "24h": "24시간제", "addTimeOption": "시간 선택지 추가하기", - "adminPollTitle": "{{title}}: 관리자", + "adminPollTitle": "{title}: 관리자", "alreadyRegistered": "계정이 있으신가요? 로그인하기 →", "applyToAllDates": "모든 선택지에 투표하기", "areYouSure": "확실합니까?", @@ -21,7 +21,7 @@ "copied": "복사됨", "copyLink": "링크 복사하기", "createAnAccount": "계정 만들기", - "createdBy": "{{name}} 에 의해 생성됨", + "createdBy": "{name} 에 의해 생성됨", "createNew": "새로 만들기", "createPoll": "투표 만들기", "creatingDemo": "데모 투표 만드는 중...", @@ -30,10 +30,10 @@ "deleteDate": "날짜 삭제하기", "deletedPoll": "삭제된 투표", "deletedPollInfo": "이 투표는 더 이상 존재하지 않습니다.", - "deleteParticipant": "{{name}} 을/를 삭제하시겠습니까?", + "deleteParticipant": "{name} 을/를 삭제하시겠습니까?", "deleteParticipantDescription": "정말로 이 참여자를 삭제하시겠습니까? 이 작업은 되돌릴 수 없습니다.", "deletePoll": "투표 삭제하기", - "deletePollDescription": "이 투표의 모든 데이터가 삭제됩니다. 계속하시려면 “{{confirmText}}” 를 아래 입력창에 입력해주세요.", + "deletePollDescription": "이 투표의 모든 데이터가 삭제됩니다. 계속하시려면 “{confirmText}” 를 아래 입력창에 입력해주세요.", "deletingOptionsWarning": "해당 옵션과 참여자들의 투표 내역을 모두 삭제합니다.", "demoPollNotice": "데모 투표는 하루 뒤에 자동으로 삭제됩니다.", "description": "설명", @@ -87,7 +87,7 @@ "nextMonth": "다음달", "no": "안돼요", "noDatesSelected": "날짜가 선택되지 않았습니다.", - "notificationsDisabled": "{{title}} 에 대한 알람이 비활성화되었습니다.", + "notificationsDisabled": "{title} 에 대한 알람이 비활성화되었습니다.", "notificationsGuest": "로그인하여 알람 켜기", "notificationsOff": "알람이 꺼져 있습니다.", "notificationsOn": "알림 켜짐", @@ -95,33 +95,21 @@ "noVotes": "이 옵션은 아무도 선택하지 않았습니다.", "ok": "확인", "optional": "선택사항", - "optionCount_few": "{{count}} 표", - "optionCount_many": "{{count}} 표", - "optionCount_one": "{{count}} 표", - "optionCount_other": "{{count}} 표", - "optionCount_two": "{{count}} 표", - "optionCount_zero": "{{count}} 표", "participant": "참여자", - "participantCount_few": "{{count}} 명의 참여자", - "participantCount_many": "{{count}} 명의 참여자", - "participantCount_one": "{{count}} 명의 참여자", - "participantCount_other": "{{count}} 명의 참여자", - "participantCount_two": "{{count}} 명의 참여자", - "participantCount_zero": "{{count}} 명의 참여자", "pollHasBeenLocked": "이 투표는 잠겼습니다.", "pollsEmpty": "생성된 투표가 없습니다.", "possibleAnswers": "가능한 답변들", "preferences": "설정", "previousMonth": "지난달", - "profileUser": "프로필 - {{username}}", + "profileUser": "프로필 - {username}", "redirect": "페이지가 자동으로 이동되지 않는다면 여기를 눌러주세요...", "register": "등록하기", "requiredNameError": "이름을 입력해주세요.", - "requiredString": "\"{{name}}\" 은/는 필수입니다.", + "requiredString": "\"{name}\" 은/는 필수입니다.", "resendVerificationCode": "인증 코드 재전송하기", "response": "응답", "save": "저장하기", - "saveInstruction": "가능여부를 선택한 후 {{action}} 를 클릭하세요", + "saveInstruction": "가능여부를 선택한 후 {action} 를 클릭하세요", "send": "보내기", "sendFeedback": "의견 보내기", "share": "공유하기", @@ -129,7 +117,7 @@ "shareLink": "링크 공유하기", "specifyTimes": "시간 지정하기", "specifyTimesDescription": "각 날짜별로 시작시간과 종료시간을 추가합니다.", - "stepSummary": "{{total}} 단계 중 {{current}}", + "stepSummary": "{total} 단계 중 {current}", "submit": "전송하기", "sunday": "일요일", "timeFormat": "시간 형식:", @@ -145,7 +133,7 @@ "validEmail": "유효한 이메일을 입력해주세요", "verificationCodeHelp": "이메일을 받지 못하셨나요? 스팸메일함을 확인해보세요.", "verificationCodePlaceholder": "6자리 인증코드를 입력해주세요", - "verificationCodeSent": "인증 코드가 {{email}} 로 전송되었습니다. 변경하기", + "verificationCodeSent": "인증 코드가 {email} 로 전송되었습니다. 변경하기", "verifyYourEmail": "이메일을 확인하세요", "weekStartsOn": "한 주의 시작", "weekView": "주간 보기", @@ -156,5 +144,61 @@ "yourDetails": "세부 정보", "yourName": "이름", "yourPolls": "당신의 투표", - "yourProfile": "사용자 프로필" + "yourProfile": "사용자 프로필", + "homepage": { + "3Ls": "맞아요 - L 이 3개에요!", + "adFree": "광고 없음", + "adFreeDescription": "Ad-blocker 는 신경쓰지 마세요 - 여기서는 필요 없을겁니다.", + "comments": "댓글들", + "commentsDescription": "참여자들은 투표에 댓글을 남길 수 있고 댓글들은 모두에게 공개될 것입니다.", + "features": "특징", + "featuresSubheading": "똑똑하게 계획하기", + "getStarted": "시작하기", + "heroSubText": "빈 틈 없는 최적의 날짜를 찾아보세요", + "heroText": "쉽게
단체 미팅
시간 정하기", + "links": "링크", + "liveDemo": "라이브 데모", + "metaDescription": "최적의 시간이나 날짜를 찾기 위해 투표를 생성하세요. Doodle의 무료 대체제입니다.", + "metaTitle": "Rallly - 단체 미팅 시간 정하기", + "mobileFriendly": "모바일 지원", + "mobileFriendlyDescription": "모바일에서 사용가능하며 참여자들은 어디서든 응답할 수 있습니다.", + "new": "신규", + "noLoginRequired": "로그인은 필요하지 않습니다.", + "noLoginRequiredDescription": "투표를 생성하거나 투표하기 위해 로그인 할 필요가 없습니다.", + "notifications": "알림", + "notificationsDescription": "참여자들의 응답을 지켜봅니다. 당신의 투표에서 일어나는 모든일들에 대해 알림을 받으세요.", + "openSource": "오픈 소스", + "openSourceDescription": "소스코드는 완전히 오픈소스이며. Github 에서 이용 가능합니다.", + "participant": "참여자", + "participantCount": "{count, plural, zero {# 명의 참여자} two {# 명의 참여자} few {# 명의 참여자} many {# 명의 참여자} other {# 명}}", + "perfect": "완벽해요!", + "principles": "원칙", + "principlesSubheading": "우리는 다릅니다", + "selfHostable": "자체 운영 가능", + "selfHostableDescription": "데이터 전체를 제어하기 위해 자신만의 서버를 구축할 수 있습니다.", + "timeSlots": "시간대 설정", + "timeSlotsDescription": "투표를 생성할 때 시작 시간과 끝 시간을 각 날짜별로 설정할 수 있습니다. 각 시간은 참여자들의 표준시간대에 맞춰 자동으로 조절되거나 표준시간대를 완전히 무시하도록 설정할 수 있습니다." + }, + "common": { + "blog": "블로그", + "discussions": "토론장", + "footerCredit": "만든이 @imlukevella", + "footerSponsor": "이 프로젝트는 유저 후원으로 진행됩니다. 후원하기 를 통해 프로젝트를 지원해주세요!", + "home": "홈페이지", + "language": "언어", + "links": "링크", + "poweredBy": "기술 지원", + "privacyPolicy": "개인정보 취급방침", + "starOnGithub": "Github에서 좋아요 누르기", + "support": "사용자가이드", + "volunteerTranslator": "이 페이지 번역 돕기" + }, + "errors": { + "notFoundTitle": "404 찾을 수 없음", + "notFoundDescription": "요청한 페이지를 찾을 수 없습니다.", + "goToHome": "홈으로 돌아가기", + "startChat": "채팅 시작하기" + }, + "optionCount": "{count, plural, other {# 표}}", + "participantCount": "{count, plural, other {# 명의 참여자}}" } diff --git a/apps/web/public/locales/ko/common.json b/apps/web/public/locales/ko/common.json deleted file mode 100644 index 92a9723a1..000000000 --- a/apps/web/public/locales/ko/common.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "blog": "블로그", - "discussions": "토론장", - "footerCredit": "만든이 @imlukevella", - "footerSponsor": "이 프로젝트는 유저 후원으로 진행됩니다. 후원하기 를 통해 프로젝트를 지원해주세요!", - "home": "홈페이지", - "language": "언어", - "links": "링크", - "poweredBy": "기술 지원", - "privacyPolicy": "개인정보 취급방침", - "starOnGithub": "Github에서 좋아요 누르기", - "support": "사용자가이드", - "volunteerTranslator": "이 페이지 번역 돕기" -} diff --git a/apps/web/public/locales/ko/errors.json b/apps/web/public/locales/ko/errors.json deleted file mode 100644 index d4541193d..000000000 --- a/apps/web/public/locales/ko/errors.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "notFoundTitle": "404 찾을 수 없음", - "notFoundDescription": "요청한 페이지를 찾을 수 없습니다.", - "goToHome": "홈으로 돌아가기", - "startChat": "채팅 시작하기" -} diff --git a/apps/web/public/locales/ko/homepage.json b/apps/web/public/locales/ko/homepage.json deleted file mode 100644 index d1bcd4a26..000000000 --- a/apps/web/public/locales/ko/homepage.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "3Ls": "맞아요 - L 이 3개에요!", - "adFree": "광고 없음", - "adFreeDescription": "Ad-blocker 는 신경쓰지 마세요 - 여기서는 필요 없을겁니다.", - "comments": "댓글들", - "commentsDescription": "참여자들은 투표에 댓글을 남길 수 있고 댓글들은 모두에게 공개될 것입니다.", - "features": "특징", - "featuresSubheading": "똑똑하게 계획하기", - "getStarted": "시작하기", - "heroSubText": "빈 틈 없는 최적의 날짜를 찾아보세요", - "heroText": "쉽게
단체 미팅
시간 정하기", - "links": "링크", - "liveDemo": "라이브 데모", - "metaDescription": "최적의 시간이나 날짜를 찾기 위해 투표를 생성하세요. Doodle의 무료 대체제입니다.", - "metaTitle": "Rallly - 단체 미팅 시간 정하기", - "mobileFriendly": "모바일 지원", - "mobileFriendlyDescription": "모바일에서 사용가능하며 참여자들은 어디서든 응답할 수 있습니다.", - "new": "신규", - "noLoginRequired": "로그인은 필요하지 않습니다.", - "noLoginRequiredDescription": "투표를 생성하거나 투표하기 위해 로그인 할 필요가 없습니다.", - "notifications": "알림", - "notificationsDescription": "참여자들의 응답을 지켜봅니다. 당신의 투표에서 일어나는 모든일들에 대해 알림을 받으세요.", - "openSource": "오픈 소스", - "openSourceDescription": "소스코드는 완전히 오픈소스이며. Github 에서 이용 가능합니다.", - "participant": "참여자", - "participantCount_zero": "{{count}} 명의 참여자", - "participantCount_one": "{{count}} 명", - "participantCount_two": "{{count}} 명의 참여자", - "participantCount_few": "{{count}} 명의 참여자", - "participantCount_many": "{{count}} 명의 참여자", - "participantCount_other": "{{count}} 명", - "perfect": "완벽해요!", - "principles": "원칙", - "principlesSubheading": "우리는 다릅니다", - "selfHostable": "자체 운영 가능", - "selfHostableDescription": "데이터 전체를 제어하기 위해 자신만의 서버를 구축할 수 있습니다.", - "timeSlots": "시간대 설정", - "timeSlotsDescription": "투표를 생성할 때 시작 시간과 끝 시간을 각 날짜별로 설정할 수 있습니다. 각 시간은 참여자들의 표준시간대에 맞춰 자동으로 조절되거나 표준시간대를 완전히 무시하도록 설정할 수 있습니다." -} diff --git a/apps/web/public/locales/nl/app.json b/apps/web/public/locales/nl/app.json index 1d2fdfa92..8e5738afa 100644 --- a/apps/web/public/locales/nl/app.json +++ b/apps/web/public/locales/nl/app.json @@ -2,7 +2,7 @@ "12h": "12 uur", "24h": "24 uur", "addTimeOption": "Tijd optie toevoegen", - "adminPollTitle": "{{title}}: Beheerder", + "adminPollTitle": "{title}: Beheerder", "alreadyRegistered": "Al geregistreerd? Inloggen →", "applyToAllDates": "Toepassen op alle datums", "areYouSure": "Ben je zeker?", @@ -21,7 +21,7 @@ "copied": "Gekopieerd", "copyLink": "Link kopiëren", "createAnAccount": "Account aanmaken", - "createdBy": "door {{name}}", + "createdBy": "door {name}", "createNew": "Nieuw aanmaken", "createPoll": "Poll maken", "creatingDemo": "Demo poll aanmaken…", @@ -30,10 +30,10 @@ "deleteDate": "Datum verwijderen", "deletedPoll": "Verwijderde poll", "deletedPollInfo": "Deze poll bestaat niet meer.", - "deleteParticipant": "Verwijder {{name}}?", + "deleteParticipant": "Verwijder {name}?", "deleteParticipantDescription": "Weet je zeker dat je deze deelnemer wil verwijderen? Dit kan niet ongedaan worden gemaakt.", "deletePoll": "Verwijder poll", - "deletePollDescription": "Alle gegevens van deze poll zullen worden verwijderd. Om dit te bevestigen, type \"{{confirmText}}\" in de onderstaande invoerveld:", + "deletePollDescription": "Alle gegevens van deze poll zullen worden verwijderd. Om dit te bevestigen, type \"{confirmText}\" in de onderstaande invoerveld:", "deletingOptionsWarning": "Je verwijdert opties waar deelnemers op hebben gestemd. Hun keuzen zullen ook worden verwijderd.", "demoPollNotice": "Demo polls worden automatisch verwijderd na 1 dag", "description": "Beschrijving", @@ -87,7 +87,7 @@ "nextMonth": "Volgende maand", "no": "Nee", "noDatesSelected": "Geen datums geselecteerd", - "notificationsDisabled": "Meldingen zijn uitgeschakeld voor {{title}}", + "notificationsDisabled": "Meldingen zijn uitgeschakeld voor {title}", "notificationsGuest": "Log in om meldingen in te schakelen", "notificationsOff": "Meldingen zijn uitgeschakeld", "notificationsOn": "Meldingen zijn ingeschakeld", @@ -95,33 +95,21 @@ "noVotes": "Niemand heeft voor deze optie gestemd", "ok": "OK", "optional": "optioneel", - "optionCount_few": "{{count}} opties", - "optionCount_many": "{{count}} opties", - "optionCount_one": "{{count}} optie", - "optionCount_other": "{{count}} opties", - "optionCount_two": "{{count}} opties", - "optionCount_zero": "{{count}} opties", "participant": "Deelnemer", - "participantCount_few": "{{count}} deelnemers", - "participantCount_many": "{{count}} deelnemers", - "participantCount_one": "{{count}} deelnemer", - "participantCount_other": "{{count}} deelnemers", - "participantCount_two": "{{count}} deelnemers", - "participantCount_zero": "{{count}} deelnemers", "pollHasBeenLocked": "Deze poll is vergrendeld", "pollsEmpty": "Geen polls aangemaakt", "possibleAnswers": "Mogelijke antwoorden", "preferences": "Voorkeuren", "previousMonth": "Vorige maand", - "profileUser": "Profiel - {{username}}", + "profileUser": "Profiel - {username}", "redirect": "Klik hier als je niet automatisch wordt doorverwezen…", "register": "Registreren", "requiredNameError": "Naam is verplicht", - "requiredString": "\"{{name}}\" is vereist", + "requiredString": "\"{name}\" is vereist", "resendVerificationCode": "Verificatiecode opnieuw versturen", "response": "Antwoord", "save": "Opslaan", - "saveInstruction": "Selecteer je beschikbaarheid en klik op {{action}}", + "saveInstruction": "Selecteer je beschikbaarheid en klik op {action}", "send": "Verzenden", "sendFeedback": "Feedback Versturen", "share": "Delen", @@ -129,7 +117,7 @@ "shareLink": "Deel via link", "specifyTimes": "Tijden opgeven", "specifyTimesDescription": "Voeg start- en eindtijden voor elke optie toe", - "stepSummary": "Stap {{current}} van {{total}}", + "stepSummary": "Stap {current} van {total}", "submit": "Verzenden", "sunday": "Zondag", "timeFormat": "Tijdnotatie:", @@ -145,7 +133,7 @@ "validEmail": "Gelieve een geldig e-mailadres in te vullen", "verificationCodeHelp": "Geen e-mail ontvangen? Controleer je spam/junk.", "verificationCodePlaceholder": "Voer je 6-cijferige code in", - "verificationCodeSent": "Een verificatiecode is verzonden naar {{email}} Wijzigen", + "verificationCodeSent": "Een verificatiecode is verzonden naar {email} Wijzigen", "verifyYourEmail": "Verifieer je e-mailadres", "weekStartsOn": "Week begint op", "weekView": "Weekweergave", @@ -156,5 +144,63 @@ "yourDetails": "Jouw gegevens", "yourName": "Jouw naam…", "yourPolls": "Jouw polls", - "yourProfile": "Jouw profiel" + "yourProfile": "Jouw profiel", + "homepage": { + "3Ls": "Ja - met 3 Len", + "adFree": "Reclamevrij", + "adFreeDescription": "Je kunt je ad-blocker een pauze geven - je hebt die hier niet nodig.", + "comments": "Opmerkingen", + "commentsDescription": "Deelnemers kunnen commentaar geven op je poll en de reacties zullen voor iedereen zichtbaar zijn.", + "features": "Functies", + "featuresSubheading": "Plannen, de slimme manier", + "getStarted": "Ga aan de slag", + "heroSubText": "De juiste datum vinden zonder heen en weer overleg", + "heroText": "Plan
groep meetings
makkelijk", + "links": "Links", + "liveDemo": "Live demo", + "metaDescription": "Maak polls en stem om de beste dag of tijd te vinden. Een gratis alternatief voor Doodle.", + "metaTitle": "Rallly - Plan groepmeetings", + "mobileFriendly": "Mobielvriendelijk", + "mobileFriendlyDescription": "Werkt geweldig op mobiele apparaten, zodat deelnemers kunnen reageren op polls, waar ze ook zijn.", + "new": "Nieuw", + "noLoginRequired": "Inloggen is niet vereist", + "noLoginRequiredDescription": "Je hoeft niet in te loggen om een poll aan te maken of deel te nemen.", + "notifications": "Meldingen", + "notificationsDescription": "Blijf op de hoogte wie er reageert. Krijg een melding wanneer de deelnemers stemmen of reageren op je poll.", + "openSource": "Open-source", + "openSourceDescription": "De code is volledig open-source en beschikbaar op GitHub.", + "participant": "Deelnemer", + "participantCount": "{count, plural, one {# deelnemer} other {# deelnemers}}", + "perfect": "Perfect!", + "principles": "Principes", + "principlesSubheading": "We zijn niet zoals de anderen", + "selfHostable": "Kan je zelf hosten", + "selfHostableDescription": "Host het op je eigen server om de volledige controle over je gegevens te krijgen.", + "timeSlots": "Tijdsblokken", + "timeSlotsDescription": "Stel individuele start- en eindtijden in voor elke optie in je poll. Tijden kunnen automatisch worden aangepast aan de tijdzone van elke deelnemer, of ze kunnen worden ingesteld om tijdzones volledig te negeren." + }, + "common": { + "blog": "Blog", + "discussions": "Discussies", + "footerCredit": "Gemaakt door @imlukevella", + "footerSponsor": "Dit project wordt door de gebruikers gefinancierd. Overweeg om dit ook te doen door te doneren.", + "home": "Home", + "language": "Taal", + "links": "Links", + "poweredBy": "Mogelijk gemaakt door", + "privacyPolicy": "Privacybeleid", + "starOnGithub": "Geef een ster op GitHub", + "support": "Help", + "cookiePolicy": "Cookiebeleid", + "termsOfUse": "Gebruiksvoorwaarden", + "volunteerTranslator": "Help deze site te vertalen" + }, + "errors": { + "notFoundTitle": "404 niet gevonden", + "notFoundDescription": "We konden de pagina die je zoekt niet vinden.", + "goToHome": "Ga naar Home", + "startChat": "Chat starten" + }, + "optionCount": "{count, plural, one {# optie} other {# opties}}", + "participantCount": "{count, plural, one {# deelnemer} other {# deelnemers}}" } diff --git a/apps/web/public/locales/nl/common.json b/apps/web/public/locales/nl/common.json deleted file mode 100644 index b059da957..000000000 --- a/apps/web/public/locales/nl/common.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "blog": "Blog", - "discussions": "Discussies", - "footerCredit": "Gemaakt door @imlukevella", - "footerSponsor": "Dit project wordt door de gebruikers gefinancierd. Overweeg om dit ook te doen door te doneren.", - "home": "Home", - "language": "Taal", - "links": "Links", - "poweredBy": "Mogelijk gemaakt door", - "privacyPolicy": "Privacybeleid", - "starOnGithub": "Geef een ster op GitHub", - "support": "Help", - "cookiePolicy": "Cookiebeleid", - "termsOfUse": "Gebruiksvoorwaarden", - "volunteerTranslator": "Help deze site te vertalen" -} diff --git a/apps/web/public/locales/nl/errors.json b/apps/web/public/locales/nl/errors.json deleted file mode 100644 index 6d80371a8..000000000 --- a/apps/web/public/locales/nl/errors.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "notFoundTitle": "404 niet gevonden", - "notFoundDescription": "We konden de pagina die je zoekt niet vinden.", - "goToHome": "Ga naar Home", - "startChat": "Chat starten" -} diff --git a/apps/web/public/locales/nl/homepage.json b/apps/web/public/locales/nl/homepage.json deleted file mode 100644 index c6c42bf15..000000000 --- a/apps/web/public/locales/nl/homepage.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "3Ls": "Ja - met 3 Len", - "adFree": "Reclamevrij", - "adFreeDescription": "Je kunt je ad-blocker een pauze geven - je hebt die hier niet nodig.", - "comments": "Opmerkingen", - "commentsDescription": "Deelnemers kunnen commentaar geven op je poll en de reacties zullen voor iedereen zichtbaar zijn.", - "features": "Functies", - "featuresSubheading": "Plannen, de slimme manier", - "getStarted": "Ga aan de slag", - "heroSubText": "De juiste datum vinden zonder heen en weer overleg", - "heroText": "Plan
groep meetings
makkelijk", - "links": "Links", - "liveDemo": "Live demo", - "metaDescription": "Maak polls en stem om de beste dag of tijd te vinden. Een gratis alternatief voor Doodle.", - "metaTitle": "Rallly - Plan groepmeetings", - "mobileFriendly": "Mobielvriendelijk", - "mobileFriendlyDescription": "Werkt geweldig op mobiele apparaten, zodat deelnemers kunnen reageren op polls, waar ze ook zijn.", - "new": "Nieuw", - "noLoginRequired": "Inloggen is niet vereist", - "noLoginRequiredDescription": "Je hoeft niet in te loggen om een poll aan te maken of deel te nemen.", - "notifications": "Meldingen", - "notificationsDescription": "Blijf op de hoogte wie er reageert. Krijg een melding wanneer de deelnemers stemmen of reageren op je poll.", - "openSource": "Open-source", - "openSourceDescription": "De code is volledig open-source en beschikbaar op GitHub.", - "participant": "Deelnemer", - "participantCount_zero": "{{count}} deelnemers", - "participantCount_one": "{{count}} deelnemer", - "participantCount_two": "{{count}} deelnemers", - "participantCount_few": "{{count}} deelnemers", - "participantCount_many": "{{count}} deelnemers", - "participantCount_other": "{{count}} deelnemers", - "perfect": "Perfect!", - "principles": "Principes", - "principlesSubheading": "We zijn niet zoals de anderen", - "selfHostable": "Kan je zelf hosten", - "selfHostableDescription": "Host het op je eigen server om de volledige controle over je gegevens te krijgen.", - "timeSlots": "Tijdsblokken", - "timeSlotsDescription": "Stel individuele start- en eindtijden in voor elke optie in je poll. Tijden kunnen automatisch worden aangepast aan de tijdzone van elke deelnemer, of ze kunnen worden ingesteld om tijdzones volledig te negeren." -} diff --git a/apps/web/public/locales/pl/app.json b/apps/web/public/locales/pl/app.json index 2b015a0a5..a1cdc9f22 100644 --- a/apps/web/public/locales/pl/app.json +++ b/apps/web/public/locales/pl/app.json @@ -14,7 +14,7 @@ "continue": "Kontynuuj", "copied": "Skopiowano", "copyLink": "Kopiuj link", - "createdBy": "od {{name}}", + "createdBy": "od {name}", "createPoll": "Utwórz ankietę", "creatingDemo": "Tworzenie ankiety demonstracyjnej…", "delete": "Usuń", @@ -23,7 +23,7 @@ "deletedPoll": "Usuń ankietę", "deletedPollInfo": "Ta ankieta już nie istnieje.", "deletePoll": "Usuń ankietę", - "deletePollDescription": "Wszystkie dane związane z tą ankietą zostaną usunięte. Aby potwierdzić, wpisz „{{confirmText}}” poniższej:", + "deletePollDescription": "Wszystkie dane związane z tą ankietą zostaną usunięte. Aby potwierdzić, wpisz „{confirmText}” poniższej:", "deletingOptionsWarning": "Usuwasz opcje, na które głosowali uczestnicy. Ich głosy również zostaną usunięte.", "demoPollNotice": "Ankiety demonstracyjne są automatycznie usuwane po 1 dniu", "description": "Opis", @@ -67,27 +67,21 @@ "notificationsOn": "Powiadomienia są włączone", "noVotes": "Nikt nie głosował na tę opcję", "participant": "Uczestnik", - "participantCount_few": "{{count}} uczestników", - "participantCount_many": "{{count}} uczestników", - "participantCount_one": "{{count}} uczestnik", - "participantCount_other": "{{count}} uczestników", - "participantCount_two": "{{count}} uczestników", - "participantCount_zero": "{{count}} uczestników", "pollHasBeenLocked": "Ta ankieta została zablokowana", "pollsEmpty": "Nie utworzono ankiet", "possibleAnswers": "Możliwe opcje", "preferences": "Ustawienia", "previousMonth": "Poprzedni miesiąc", - "profileUser": "Profil - {{username}}", + "profileUser": "Profil - {username}", "requiredNameError": "Imię jest wymagane", "save": "Zapisz", - "saveInstruction": "Wybierz swoją dostępność i kliknij {{action}}", + "saveInstruction": "Wybierz swoją dostępność i kliknij {action}", "share": "Udostępnij", "shareDescription": "Przekaż ten link uczestnikom, aby mogli zagłosować na ankietę.", "shareLink": "Udostępnij link", "specifyTimes": "Podaj czas", "specifyTimesDescription": "Dołącz godziny rozpoczęcia i zakończenia dla każdej opcji", - "stepSummary": "Etap {{current}} z {{total}}", + "stepSummary": "Etap {current} z {total}", "sunday": "Niedziela", "timeFormat": "Format czasu:", "timeZone": "Strefa czasowa:", @@ -104,5 +98,57 @@ "yourDetails": "Twoje dane", "yourName": "Twoje imię…", "yourPolls": "Twoje ankiety", - "yourProfile": "Twój profil" + "yourProfile": "Twój profil", + "homepage": { + "3Ls": "Tak—z 3 L", + "adFree": "Bez reklam", + "adFreeDescription": "Możesz dać odpocząć swojemu blokowaniu reklam — nie będziesz go tutaj potrzebował.", + "comments": "Komentarze", + "commentsDescription": "Uczestnicy mogą komentować Twoją ankietę, a komentarze będą widoczne dla wszystkich.", + "features": "Funkcje", + "featuresSubheading": "Planowanie w sprytny sposób", + "getStarted": "Zacznij", + "heroSubText": "Znajdź właściwą datę bez wracania tam i z powrotem", + "heroText": "Zaplanuj
spotkania grupowe
z łatwością", + "links": "Linki", + "liveDemo": "Demo", + "metaDescription": "Twórz ankiety i głosuj, aby znaleźć najlepszy dzień lub godzinę. Bezpłatna alternatywa dla Doodle.", + "metaTitle": "Rallly - Zaplanuj spotkania grupowe", + "mobileFriendly": "Dostosowane do urządzeń mobilnych", + "mobileFriendlyDescription": "Działa świetnie na urządzeniach mobilnych, dzięki czemu uczestnicy mogą odpowiadać na ankiety, gdziekolwiek się znajdują.", + "new": "Nowość", + "noLoginRequired": "Nie wymaga logowania", + "noLoginRequiredDescription": "Nie musisz się logować, aby utworzyć lub wziąć udział w ankiecie.", + "notifications": "Powiadomienia", + "notificationsDescription": "Śledź, kto odpowiedział. Otrzymuj powiadomienia, gdy uczestnicy zagłosują lub skomentują Twoją ankietę.", + "openSourceDescription": "Kod jest w pełni open-source i dostępna na GitHub.", + "participant": "Uczestnik", + "participantCount": "{count, plural, one {# uczestnik} other {# uczestników}}", + "perfect": "Idealne!", + "principles": "Założenia", + "principlesSubheading": "Nie jesteśmy jak inni", + "selfHostableDescription": "Uruchom go na własnym serwerze, aby mieć pełną kontrolę nad swoimi danymi.", + "timeSlots": "Przedziały czasowe", + "timeSlotsDescription": "Ustaw indywidualne godziny rozpoczęcia i zakończenia dla każdej opcji w swojej ankiecie. Czasy mogą być automatycznie dostosowywane do strefy czasowej każdego uczestnika lub mogą być ustawione tak, aby całkowicie ignorować strefy czasowe." + }, + "common": { + "discussions": "Dyskusje", + "footerCredit": "Stworzone przez @imlukevella", + "footerSponsor": "Ten projekt jest finansowany przez użytkowników. Proszę rozważyć wsparcie go poprzez darowiznę.", + "home": "Strona główna", + "language": "Język", + "links": "Linki", + "poweredBy": "Dzięki wsparciu", + "privacyPolicy": "Polityka prywatności", + "starOnGithub": "Dodaj gwiazdkę na GitHubie", + "support": "Wsparcie", + "volunteerTranslator": "Pomóź w przetłumaczeniu tej strony" + }, + "errors": { + "notFoundTitle": "404 brak strony", + "notFoundDescription": "Nie mogliśmy znaleźć strony, której szukasz.", + "goToHome": "Przejdź do strony głównej", + "startChat": "Rozpocznij czat" + }, + "participantCount": "{count, plural, one {# uczestnik} other {# uczestników}}" } diff --git a/apps/web/public/locales/pl/common.json b/apps/web/public/locales/pl/common.json deleted file mode 100644 index cad710967..000000000 --- a/apps/web/public/locales/pl/common.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "discussions": "Dyskusje", - "footerCredit": "Stworzone przez @imlukevella", - "footerSponsor": "Ten projekt jest finansowany przez użytkowników. Proszę rozważyć wsparcie go poprzez darowiznę.", - "home": "Strona główna", - "language": "Język", - "links": "Linki", - "poweredBy": "Dzięki wsparciu", - "privacyPolicy": "Polityka prywatności", - "starOnGithub": "Dodaj gwiazdkę na GitHubie", - "support": "Wsparcie", - "volunteerTranslator": "Pomóź w przetłumaczeniu tej strony" -} diff --git a/apps/web/public/locales/pl/errors.json b/apps/web/public/locales/pl/errors.json deleted file mode 100644 index 55c1ec366..000000000 --- a/apps/web/public/locales/pl/errors.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "notFoundTitle": "404 brak strony", - "notFoundDescription": "Nie mogliśmy znaleźć strony, której szukasz.", - "goToHome": "Przejdź do strony głównej", - "startChat": "Rozpocznij czat" -} diff --git a/apps/web/public/locales/pl/homepage.json b/apps/web/public/locales/pl/homepage.json deleted file mode 100644 index b5ca2efe0..000000000 --- a/apps/web/public/locales/pl/homepage.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "3Ls": "Tak—z 3 L", - "adFree": "Bez reklam", - "adFreeDescription": "Możesz dać odpocząć swojemu blokowaniu reklam — nie będziesz go tutaj potrzebował.", - "comments": "Komentarze", - "commentsDescription": "Uczestnicy mogą komentować Twoją ankietę, a komentarze będą widoczne dla wszystkich.", - "features": "Funkcje", - "featuresSubheading": "Planowanie w sprytny sposób", - "getStarted": "Zacznij", - "heroSubText": "Znajdź właściwą datę bez wracania tam i z powrotem", - "heroText": "Zaplanuj
spotkania grupowe
z łatwością", - "links": "Linki", - "liveDemo": "Demo", - "metaDescription": "Twórz ankiety i głosuj, aby znaleźć najlepszy dzień lub godzinę. Bezpłatna alternatywa dla Doodle.", - "metaTitle": "Rallly - Zaplanuj spotkania grupowe", - "mobileFriendly": "Dostosowane do urządzeń mobilnych", - "mobileFriendlyDescription": "Działa świetnie na urządzeniach mobilnych, dzięki czemu uczestnicy mogą odpowiadać na ankiety, gdziekolwiek się znajdują.", - "new": "Nowość", - "noLoginRequired": "Nie wymaga logowania", - "noLoginRequiredDescription": "Nie musisz się logować, aby utworzyć lub wziąć udział w ankiecie.", - "notifications": "Powiadomienia", - "notificationsDescription": "Śledź, kto odpowiedział. Otrzymuj powiadomienia, gdy uczestnicy zagłosują lub skomentują Twoją ankietę.", - "openSourceDescription": "Kod jest w pełni open-source i dostępna na GitHub.", - "participant": "Uczestnik", - "participantCount_zero": "{{count}} uczestników", - "participantCount_one": "{{count}} uczestnik", - "participantCount_two": "{{count}} uczestników", - "participantCount_few": "{{count}} uczestników", - "participantCount_many": "{{count}} uczestników", - "participantCount_other": "{{count}} uczestników", - "perfect": "Idealne!", - "principles": "Założenia", - "principlesSubheading": "Nie jesteśmy jak inni", - "selfHostableDescription": "Uruchom go na własnym serwerze, aby mieć pełną kontrolę nad swoimi danymi.", - "timeSlots": "Przedziały czasowe", - "timeSlotsDescription": "Ustaw indywidualne godziny rozpoczęcia i zakończenia dla każdej opcji w swojej ankiecie. Czasy mogą być automatycznie dostosowywane do strefy czasowej każdego uczestnika lub mogą być ustawione tak, aby całkowicie ignorować strefy czasowe." -} diff --git a/apps/web/public/locales/pt-BR/app.json b/apps/web/public/locales/pt-BR/app.json index c7bf5cbe2..8cab6b58d 100644 --- a/apps/web/public/locales/pt-BR/app.json +++ b/apps/web/public/locales/pt-BR/app.json @@ -2,7 +2,7 @@ "12h": "12-horas", "24h": "24-horas", "addTimeOption": "Adicionar opção de horário", - "adminPollTitle": "{{title}}: Admin", + "adminPollTitle": "{title}: Admin", "alreadyRegistered": "Já está cadastrado? Login →", "applyToAllDates": "Aplicar a todas as datas", "areYouSure": "Você tem certeza?", @@ -21,7 +21,7 @@ "copied": "Copiado", "copyLink": "Copiar link", "createAnAccount": "Criar uma conta", - "createdBy": "por {{name}}", + "createdBy": "por {name}", "createNew": "Criar enquete", "createPoll": "Criar enquete", "creatingDemo": "Criando enquete de demonstração…", @@ -30,10 +30,10 @@ "deleteDate": "Excluir data", "deletedPoll": "Enquete excluída", "deletedPollInfo": "Esta enquete não existe mais.", - "deleteParticipant": "Excluir {{name}}?", + "deleteParticipant": "Excluir {name}?", "deleteParticipantDescription": "Tem certeza de que deseja excluir este participante? Esta ação não pode ser desfeita.", "deletePoll": "Excluir enquete", - "deletePollDescription": "Todos os dados relacionados a esta enquete serão excluídos. Para confirmar, digite “{{confirmText}}” no espaço abaixo:", + "deletePollDescription": "Todos os dados relacionados a esta enquete serão excluídos. Para confirmar, digite “{confirmText}” no espaço abaixo:", "deletingOptionsWarning": "Você está excluindo opções que outros participantes já votaram. Esses votos serão excluídos também.", "demoPollNotice": "Enquetes de demonstração são excluídas automaticamente após 1 dia", "description": "Descrição", @@ -87,7 +87,7 @@ "nextMonth": "Próximo mês", "no": "Não", "noDatesSelected": "Nenhuma data selecionada", - "notificationsDisabled": "As notificações foram desabilitadas para {{title}}", + "notificationsDisabled": "As notificações foram desabilitadas para {title}", "notificationsGuest": "Faça login para ativar as notificações", "notificationsOff": "Notificações desativadas", "notificationsOn": "Notificações ativadas", @@ -95,33 +95,21 @@ "noVotes": "Ninguém votou nesta opção", "ok": "Ok", "optional": "opcional", - "optionCount_few": "{{count}} opções", - "optionCount_many": "{{count}} opções", - "optionCount_one": "{{count}} opção", - "optionCount_other": "{{count}} opções", - "optionCount_two": "{{count}} opções", - "optionCount_zero": "{{count}} opções", "participant": "Participante", - "participantCount_few": "{{count}} participantes", - "participantCount_many": "{{count}} participantes", - "participantCount_one": "{{count}} participante", - "participantCount_other": "{{count}} participantes", - "participantCount_two": "{{count}} participantes", - "participantCount_zero": "{{count}} participantes", "pollHasBeenLocked": "Esta enquete foi bloqueada", "pollsEmpty": "Nenhuma enquete criada", "possibleAnswers": "Possíveis respostas", "preferences": "Preferências", "previousMonth": "Mês anterior", - "profileUser": "Perfil - {{username}}", + "profileUser": "Perfil - {username}", "redirect": "Clique aqui se você não redirecionar automaticamente…", "register": "Cadastrar", "requiredNameError": "Nome é obrigatório", - "requiredString": "“{{name}}” é obrigatório", + "requiredString": "“{name}” é obrigatório", "resendVerificationCode": "Reenviar código de verificação", "response": "Resposta", "save": "Salvar", - "saveInstruction": "Selecione sua disponibilidade e clique {{action}}", + "saveInstruction": "Selecione sua disponibilidade e clique {action}", "send": "Enviar", "sendFeedback": "Enviar Feedback", "share": "Compartilhar", @@ -129,7 +117,7 @@ "shareLink": "Compartilhar via link", "specifyTimes": "Especificar horários", "specifyTimesDescription": "Incluir os horários de início e fim para cada opção", - "stepSummary": "Passo {{current}} de {{total}}", + "stepSummary": "Passo {current} de {total}", "submit": "Enviar", "sunday": "Domingo", "timeFormat": "Formato de hora:", @@ -145,7 +133,7 @@ "validEmail": "Por favor, insira um e-mail válido", "verificationCodeHelp": "Não recebeu o e-mail? Verifique seu spam/lixeira.", "verificationCodePlaceholder": "Insira o seu código de 6 dígitos", - "verificationCodeSent": "Um código de verificação foi enviado para {{email}} Alterar", + "verificationCodeSent": "Um código de verificação foi enviado para {email} Alterar", "verifyYourEmail": "Verifique seu e-mail", "weekStartsOn": "A semana começa em", "weekView": "Visão semanal", @@ -156,5 +144,63 @@ "yourDetails": "Seus detalhes", "yourName": "Seu nome…", "yourPolls": "Suas enquetes", - "yourProfile": "Seu perfil" + "yourProfile": "Seu perfil", + "homepage": { + "3Ls": "Sim—com 3 Ls", + "adFree": "Sem anúncios", + "adFreeDescription": "Você pode dar um descanso ao seu bloqueador de anúncios — Você não vai precisar dele aqui.", + "comments": "Comentários", + "commentsDescription": "Participantes podem comentar na sua enquete e os comentários ficarão visíveis para todos.", + "features": "Funcionalidades", + "featuresSubheading": "Agendamento, da maneira inteligente", + "getStarted": "Comece agora", + "heroSubText": "Encontre o dia certo sem contratempos", + "heroText": "Agende
reuniões
com facilidade", + "links": "Links", + "liveDemo": "Demonstração ao vivo", + "metaDescription": "Crie enquetes e vote para encontrar o melhor dia ou hora. Uma alternativa gratuita ao Doodle.", + "metaTitle": "Rallly - Agende reuniões de grupo", + "mobileFriendly": "Compatível com dispositivos móveis", + "mobileFriendlyDescription": "Funciona muito bem em dispositivos móveis para que os participantes possam responder às enquetes onde estiverem.", + "new": "Novo", + "noLoginRequired": "Não requer login", + "noLoginRequiredDescription": "Você não precisa fazer login para criar ou participar de uma enquete.", + "notifications": "Notificações", + "notificationsDescription": "Saiba quem respondeu. Seja notificado quando os participantes votarem ou comentarem na sua enquete.", + "openSource": "Código aberto", + "openSourceDescription": "O projeto é totalmente de código aberto e disponível no GitHub.", + "participant": "Participante", + "participantCount": "{count, plural, one {# participante} other {# participantes}}", + "perfect": "Perfeito!", + "principles": "Princípios", + "principlesSubheading": "Não somos como os outros", + "selfHostable": "Auto-hospedável", + "selfHostableDescription": "Execute no seu próprio servidor para ter controle total dos seus dados.", + "timeSlots": "Intervalos de tempo", + "timeSlotsDescription": "Defina os horários de início e fim individuais para cada opção em sua enquete. Os horários podem ser automaticamente ajustados ao fuso horário de cada participante ou podem ser definidos para ignorar completamente o fuso horário." + }, + "common": { + "blog": "Blogue", + "discussions": "Discussões", + "footerCredit": "Feito por @imlukevella", + "footerSponsor": "Este projeto é financiado pelo usuário. Por gentileza, considere apoiá-lo fazendo uma doação.", + "home": "Início", + "language": "Idioma", + "links": "Links", + "poweredBy": "Tecnologias de", + "privacyPolicy": "Política de Privacidade", + "starOnGithub": "Qualifique-nos no GitHub", + "support": "Suporte", + "cookiePolicy": "Política de Cookies", + "termsOfUse": "Termos de Uso", + "volunteerTranslator": "Ajude a traduzir esta página" + }, + "errors": { + "notFoundTitle": "404 Página não encontrada", + "notFoundDescription": "Não conseguimos encontrar a página que você está procurando.", + "goToHome": "Ir para o início", + "startChat": "Iniciar chat" + }, + "optionCount": "{count, plural, one {# opção} other {# opções}}", + "participantCount": "{count, plural, one {# participante} other {# participantes}}" } diff --git a/apps/web/public/locales/pt-BR/common.json b/apps/web/public/locales/pt-BR/common.json deleted file mode 100644 index e5802344b..000000000 --- a/apps/web/public/locales/pt-BR/common.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "blog": "Blogue", - "discussions": "Discussões", - "footerCredit": "Feito por @imlukevella", - "footerSponsor": "Este projeto é financiado pelo usuário. Por gentileza, considere apoiá-lo fazendo uma doação.", - "home": "Início", - "language": "Idioma", - "links": "Links", - "poweredBy": "Tecnologias de", - "privacyPolicy": "Política de Privacidade", - "starOnGithub": "Qualifique-nos no GitHub", - "support": "Suporte", - "cookiePolicy": "Política de Cookies", - "termsOfUse": "Termos de Uso", - "volunteerTranslator": "Ajude a traduzir esta página" -} diff --git a/apps/web/public/locales/pt-BR/errors.json b/apps/web/public/locales/pt-BR/errors.json deleted file mode 100644 index bfcad457e..000000000 --- a/apps/web/public/locales/pt-BR/errors.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "notFoundTitle": "404 Página não encontrada", - "notFoundDescription": "Não conseguimos encontrar a página que você está procurando.", - "goToHome": "Ir para o início", - "startChat": "Iniciar chat" -} diff --git a/apps/web/public/locales/pt-BR/homepage.json b/apps/web/public/locales/pt-BR/homepage.json deleted file mode 100644 index 7dfda1425..000000000 --- a/apps/web/public/locales/pt-BR/homepage.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "3Ls": "Sim—com 3 Ls", - "adFree": "Sem anúncios", - "adFreeDescription": "Você pode dar um descanso ao seu bloqueador de anúncios — Você não vai precisar dele aqui.", - "comments": "Comentários", - "commentsDescription": "Participantes podem comentar na sua enquete e os comentários ficarão visíveis para todos.", - "features": "Funcionalidades", - "featuresSubheading": "Agendamento, da maneira inteligente", - "getStarted": "Comece agora", - "heroSubText": "Encontre o dia certo sem contratempos", - "heroText": "Agende
reuniões
com facilidade", - "links": "Links", - "liveDemo": "Demonstração ao vivo", - "metaDescription": "Crie enquetes e vote para encontrar o melhor dia ou hora. Uma alternativa gratuita ao Doodle.", - "metaTitle": "Rallly - Agende reuniões de grupo", - "mobileFriendly": "Compatível com dispositivos móveis", - "mobileFriendlyDescription": "Funciona muito bem em dispositivos móveis para que os participantes possam responder às enquetes onde estiverem.", - "new": "Novo", - "noLoginRequired": "Não requer login", - "noLoginRequiredDescription": "Você não precisa fazer login para criar ou participar de uma enquete.", - "notifications": "Notificações", - "notificationsDescription": "Saiba quem respondeu. Seja notificado quando os participantes votarem ou comentarem na sua enquete.", - "openSource": "Código aberto", - "openSourceDescription": "O projeto é totalmente de código aberto e disponível no GitHub.", - "participant": "Participante", - "participantCount_zero": "{{count}} participantes", - "participantCount_one": "{{count}} participante", - "participantCount_two": "{{count}} participantes", - "participantCount_few": "{{count}} participantes", - "participantCount_many": "{{count}} participantes", - "participantCount_other": "{{count}} participantes", - "perfect": "Perfeito!", - "principles": "Princípios", - "principlesSubheading": "Não somos como os outros", - "selfHostable": "Auto-hospedável", - "selfHostableDescription": "Execute no seu próprio servidor para ter controle total dos seus dados.", - "timeSlots": "Intervalos de tempo", - "timeSlotsDescription": "Defina os horários de início e fim individuais para cada opção em sua enquete. Os horários podem ser automaticamente ajustados ao fuso horário de cada participante ou podem ser definidos para ignorar completamente o fuso horário." -} diff --git a/apps/web/public/locales/pt/app.json b/apps/web/public/locales/pt/app.json index 672443967..fb3723166 100644 --- a/apps/web/public/locales/pt/app.json +++ b/apps/web/public/locales/pt/app.json @@ -2,7 +2,7 @@ "12h": "12 Horas", "24h": "24 Horas", "addTimeOption": "Adicionar opção de horário", - "adminPollTitle": "{{title}}: Administrador", + "adminPollTitle": "{title}: Administrador", "alreadyRegistered": "Já está registado? Login →", "applyToAllDates": "Aplicar a todas as datas", "areYouSure": "Tem a certeza?", @@ -17,7 +17,7 @@ "copied": "Copiado", "copyLink": "Copiar link", "createAnAccount": "Crie uma conta", - "createdBy": "por {{name}}", + "createdBy": "por {name}", "createNew": "Criar Novo", "createPoll": "Criar sondagem", "creatingDemo": "A criar sondagem de demonstração…", @@ -27,7 +27,7 @@ "deletedPoll": "Sondagem eliminada", "deletedPollInfo": "Esta sondagem já não existe.", "deletePoll": "Apagar sondagem", - "deletePollDescription": "Todos os dados relacionados a esta sondagem serão apagados. Para confirmar, digite “{{confirmText}} na entrada abaixo:", + "deletePollDescription": "Todos os dados relacionados a esta sondagem serão apagados. Para confirmar, digite “{confirmText} na entrada abaixo:", "deletingOptionsWarning": "Está a apagar opções em que os participantes já votaram. Os votos deles serão também ser apagados.", "demoPollNotice": "As sondagens de demonstração são excluídas automaticamente após 1 dia", "description": "Descrição", @@ -80,39 +80,27 @@ "noVotes": "Ninguém votou nesta opção", "ok": "Ok", "optional": "opcional", - "optionCount_few": "{{count}} opções", - "optionCount_many": "{{count}} opções", - "optionCount_one": "{{count}} opção", - "optionCount_other": "{{count}} opções", - "optionCount_two": "{{count}} opções", - "optionCount_zero": "{{count}} opções", "participant": "Participante", - "participantCount_few": "{{count}} participantes", - "participantCount_many": "{{count}} participantes", - "participantCount_one": "{{count}} participante", - "participantCount_other": "{{count}} participantes", - "participantCount_two": "{{count}} participantes", - "participantCount_zero": "{{count}} participantes", "pollHasBeenLocked": "Esta sondagem foi bloqueada", "pollsEmpty": "Nenhuma sondagem criada", "possibleAnswers": "Possíveis respostas", "preferences": "Preferências", "previousMonth": "Mês anterior", - "profileUser": "Perfil - {{username}}", + "profileUser": "Perfil - {username}", "redirect": "Clique aqui se você não for redirecionado automaticamente…", "register": "Registar", "requiredNameError": "O nome é obrigatório", - "requiredString": "“{{name}}” é obrigatório", + "requiredString": "“{name}” é obrigatório", "resendVerificationCode": "Reenviar código de verificação", "response": "Resposta", "save": "Guardar", - "saveInstruction": "Selecione a sua disponibilidade e clique em {{action}}", + "saveInstruction": "Selecione a sua disponibilidade e clique em {action}", "share": "Partilhar", "shareDescription": "Dê este link aos seus participantes para permitir que eles votem na sua sondagem.", "shareLink": "Partilhar via link", "specifyTimes": "Especificar horas", "specifyTimesDescription": "Incluir os horários de início e fim para cada opção", - "stepSummary": "Passo {{current}} de {{total}}", + "stepSummary": "Passo {current} de {total}", "submit": "Submeter", "sunday": "Domingo", "timeFormat": "Formato da hora:", @@ -128,7 +116,7 @@ "validEmail": "Por favor, introduza um e-mail válido", "verificationCodeHelp": "Não recebeu o e-mail? Verifique se não recebeu na sua caixa de Spam/Junk.", "verificationCodePlaceholder": "Insira o código de 6 algarismos", - "verificationCodeSent": "Um código de verificação foi enviado para {{email}} Alterar", + "verificationCodeSent": "Um código de verificação foi enviado para {email} Alterar", "verifyYourEmail": "Verifique o seu e-mail", "weekStartsOn": "A semana começa em", "weekView": "Vista semanal", @@ -139,5 +127,61 @@ "yourDetails": "Os seus detalhes", "yourName": "O seu nome…", "yourPolls": "As suas sondagens", - "yourProfile": "O seu perfil" + "yourProfile": "O seu perfil", + "homepage": { + "3Ls": "Sim—com 3 Ls", + "adFree": "Sem anúncios", + "adFreeDescription": "Pode descansar o seu bloqueador de anúncios — Não vai precisar dele aqui.", + "comments": "Comentários", + "commentsDescription": "Os participantes podem comentar na sua sondagem e os comentários ficarão visíveis para todos.", + "features": "Funcionalidades", + "featuresSubheading": "Agendamento, a maneira inteligente", + "getStarted": "Começar", + "heroSubText": "Encontre a data certa sem andar às voltas", + "heroText": "Agende
reuniões de grupo
com facilidade", + "links": "Links", + "liveDemo": "Demonstração ao vivo", + "metaDescription": "Crie sondagens e vote para encontrar o melhor dia ou hora. Uma alternativa gratuita ao Doodle.", + "metaTitle": "Rallly - Agendar reuniões de grupo", + "mobileFriendly": "Preparado para dispositivos móveis", + "mobileFriendlyDescription": "Funciona muito bem em dispositivos móveis para que os participantes possam responder a sondagens onde estiverem.", + "new": "Novo", + "noLoginRequired": "Não é necessário iniciar sessão", + "noLoginRequiredDescription": "Não precisa de iniciar sessão para criar ou participar numa sondagem.", + "notifications": "Notificações", + "notificationsDescription": "Acompanhe quem respondeu. Seja notificado quando os participantes votarem ou comentarem na sua sondagem.", + "openSource": "Código aberto", + "openSourceDescription": "Desenvolvido em código aberto e disponível no GitHub.", + "participant": "Participante", + "participantCount": "{count, plural, one {# participante} other {# participantes}}", + "perfect": "Perfeito!", + "principles": "Princípios", + "principlesSubheading": "Não somos como os outros", + "selfHostable": "Auto-alojável", + "selfHostableDescription": "Corra no seu próprio servidor para ter controlo total dos seus dados.", + "timeSlots": "Intervalos de tempo", + "timeSlotsDescription": "Defina os horários de início e fim individuais para cada opção em sua sondagem. Os horários podem ser automaticamente ajustados ao fuso horário de cada participante ou podem ser definidos para ignorar completamente os fusos horários." + }, + "common": { + "blog": "Blogue", + "discussions": "Discussões", + "footerCredit": "Criado por @imlukevella", + "footerSponsor": "Este projeto é financiado pelos utilizadores. Por favor, considere apoiá-lo doando.", + "home": "Início", + "language": "Idioma", + "links": "Links", + "poweredBy": "Com tecnologia", + "privacyPolicy": "Política de Privacidade", + "starOnGithub": "Adicione uma estrela no GitHub", + "support": "Ajuda", + "volunteerTranslator": "Ajude a traduzir esta página" + }, + "errors": { + "notFoundTitle": "404 Página não encontrada", + "notFoundDescription": "Não conseguimos encontrar a página que procuras.", + "goToHome": "Ir para a página inicial", + "startChat": "Iniciar chat" + }, + "optionCount": "{count, plural, one {# opção} other {# opções}}", + "participantCount": "{count, plural, one {# participante} other {# participantes}}" } diff --git a/apps/web/public/locales/pt/common.json b/apps/web/public/locales/pt/common.json deleted file mode 100644 index 4d2fac5ed..000000000 --- a/apps/web/public/locales/pt/common.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "blog": "Blogue", - "discussions": "Discussões", - "footerCredit": "Criado por @imlukevella", - "footerSponsor": "Este projeto é financiado pelos utilizadores. Por favor, considere apoiá-lo doando.", - "home": "Início", - "language": "Idioma", - "links": "Links", - "poweredBy": "Com tecnologia", - "privacyPolicy": "Política de Privacidade", - "starOnGithub": "Adicione uma estrela no GitHub", - "support": "Ajuda", - "volunteerTranslator": "Ajude a traduzir esta página" -} diff --git a/apps/web/public/locales/pt/errors.json b/apps/web/public/locales/pt/errors.json deleted file mode 100644 index 5ee38cfc6..000000000 --- a/apps/web/public/locales/pt/errors.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "notFoundTitle": "404 Página não encontrada", - "notFoundDescription": "Não conseguimos encontrar a página que procuras.", - "goToHome": "Ir para a página inicial", - "startChat": "Iniciar chat" -} diff --git a/apps/web/public/locales/pt/homepage.json b/apps/web/public/locales/pt/homepage.json deleted file mode 100644 index 15a4e6d1d..000000000 --- a/apps/web/public/locales/pt/homepage.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "3Ls": "Sim—com 3 Ls", - "adFree": "Sem anúncios", - "adFreeDescription": "Pode descansar o seu bloqueador de anúncios — Não vai precisar dele aqui.", - "comments": "Comentários", - "commentsDescription": "Os participantes podem comentar na sua sondagem e os comentários ficarão visíveis para todos.", - "features": "Funcionalidades", - "featuresSubheading": "Agendamento, a maneira inteligente", - "getStarted": "Começar", - "heroSubText": "Encontre a data certa sem andar às voltas", - "heroText": "Agende
reuniões de grupo
com facilidade", - "links": "Links", - "liveDemo": "Demonstração ao vivo", - "metaDescription": "Crie sondagens e vote para encontrar o melhor dia ou hora. Uma alternativa gratuita ao Doodle.", - "metaTitle": "Rallly - Agendar reuniões de grupo", - "mobileFriendly": "Preparado para dispositivos móveis", - "mobileFriendlyDescription": "Funciona muito bem em dispositivos móveis para que os participantes possam responder a sondagens onde estiverem.", - "new": "Novo", - "noLoginRequired": "Não é necessário iniciar sessão", - "noLoginRequiredDescription": "Não precisa de iniciar sessão para criar ou participar numa sondagem.", - "notifications": "Notificações", - "notificationsDescription": "Acompanhe quem respondeu. Seja notificado quando os participantes votarem ou comentarem na sua sondagem.", - "openSource": "Código aberto", - "openSourceDescription": "Desenvolvido em código aberto e disponível no GitHub.", - "participant": "Participante", - "participantCount_zero": "{{count}} participantes", - "participantCount_one": "{{count}} participante", - "participantCount_two": "{{count}} participantes", - "participantCount_few": "{{count}} participantes", - "participantCount_many": "{{count}} participantes", - "participantCount_other": "{{count}} participantes", - "perfect": "Perfeito!", - "principles": "Princípios", - "principlesSubheading": "Não somos como os outros", - "selfHostable": "Auto-alojável", - "selfHostableDescription": "Corra no seu próprio servidor para ter controlo total dos seus dados.", - "timeSlots": "Intervalos de tempo", - "timeSlotsDescription": "Defina os horários de início e fim individuais para cada opção em sua sondagem. Os horários podem ser automaticamente ajustados ao fuso horário de cada participante ou podem ser definidos para ignorar completamente os fusos horários." -} diff --git a/apps/web/public/locales/ru/app.json b/apps/web/public/locales/ru/app.json index 8b928836b..4de5ff29c 100644 --- a/apps/web/public/locales/ru/app.json +++ b/apps/web/public/locales/ru/app.json @@ -2,7 +2,7 @@ "12h": "12-часовой", "24h": "24-часовой", "addTimeOption": "Добавить временной вариант", - "adminPollTitle": "{{title}}: Админ", + "adminPollTitle": "{title}: Админ", "alreadyRegistered": "Уже зарегистрированы? Войти →", "applyToAllDates": "Применить ко всем датам", "areYouSure": "Вы уверены?", @@ -20,7 +20,7 @@ "copied": "Скопировано", "copyLink": "Скопировать ссылку", "createAnAccount": "Создать учетную запись", - "createdBy": "от {{name}}", + "createdBy": "от {name}", "createNew": "Создать новый", "createPoll": "Создать опрос", "creatingDemo": "Создание демо-опроса…", @@ -29,10 +29,10 @@ "deleteDate": "Удалить дату", "deletedPoll": "Удалённый опрос", "deletedPollInfo": "Этот опрос больше не существует.", - "deleteParticipant": "Удалить {{name}}?", + "deleteParticipant": "Удалить {name}?", "deleteParticipantDescription": "Вы уверены, что хотите удалить этого участника? Это действие нельзя отменить.", "deletePoll": "Удалить опрос", - "deletePollDescription": "Все данные, связанные с этим опросом, будут удалены. Для подтверждения, пожалуйста, введите “{{confirmText}}” в поле ниже:", + "deletePollDescription": "Все данные, связанные с этим опросом, будут удалены. Для подтверждения, пожалуйста, введите “{confirmText}” в поле ниже:", "deletingOptionsWarning": "Вы удаляете варианты, за которые участники уже проголосовали. Их ответы также будут удалены.", "demoPollNotice": "Демо-опросы автоматически удаляются через 1 день", "description": "Описание", @@ -80,7 +80,7 @@ "nextMonth": "Следующий месяц", "no": "Нет", "noDatesSelected": "Дата не выбрана", - "notificationsDisabled": "Уведомления для {{title}} были отключены", + "notificationsDisabled": "Уведомления для {title} были отключены", "notificationsGuest": "Войдите, чтобы включить уведомления", "notificationsOff": "Уведомления отключены", "notificationsOn": "Уведомлений включены", @@ -88,39 +88,27 @@ "noVotes": "Никто не проголосовал за этот вариант", "ok": "OK", "optional": "опционально", - "optionCount_few": "{{count}} опции", - "optionCount_many": "{{count}} опций", - "optionCount_one": "{{count}} опция", - "optionCount_other": "{{count}} опций", - "optionCount_two": "{{count}} опции", - "optionCount_zero": "{{count}} опций", "participant": "Участник", - "participantCount_few": "{{count}} участников", - "participantCount_many": "{{count}} участников", - "participantCount_one": "{{count}} участник", - "participantCount_other": "{{count}} участников", - "participantCount_two": "{{count}} участников", - "participantCount_zero": "{{count}} участников", "pollHasBeenLocked": "Этот опрос заблокирован", "pollsEmpty": "Опросы отсутствуют", "possibleAnswers": "Возможные ответы", "preferences": "Настройки", "previousMonth": "Предыдущий месяц", - "profileUser": "Профиль - {{username}}", + "profileUser": "Профиль - {username}", "redirect": "Нажмите здесь если вы не перенаправились автоматически…", "register": "Зарегестрироватся", "requiredNameError": "Необходимо указать имя", - "requiredString": "«{{name}}» обязательно", + "requiredString": "«{name}» обязательно", "resendVerificationCode": "Отправить код ещё раз", "response": "Ответ", "save": "Сохранить", - "saveInstruction": "Укажите когда вы доступны и нажмите {{action}}", + "saveInstruction": "Укажите когда вы доступны и нажмите {action}", "share": "Поделиться", "shareDescription": "Поделитесь этой ссылкой с вашими участниками, чтобы они смогли ответить на ваш опрос.", "shareLink": "Поделиться с помощью ссылки", "specifyTimes": "Укажите время", "specifyTimesDescription": "Включить время начала и окончания для каждого варианта", - "stepSummary": "Шаг {{current}} из {{total}}", + "stepSummary": "Шаг {current} из {total}", "submit": "Отправить", "sunday": "Воскресенье", "timeFormat": "Формат времени:", @@ -136,7 +124,7 @@ "validEmail": "Пожалуйста, введите действительный email", "verificationCodeHelp": "Не получили письмо? Проверьте папку СПАМ.", "verificationCodePlaceholder": "Введите код из 6 цифр", - "verificationCodeSent": "Код подтверждения был отправлен на {{email}} Изменить", + "verificationCodeSent": "Код подтверждения был отправлен на {email} Изменить", "verifyYourEmail": "Подтвердите ваш email", "weekStartsOn": "Начало недели", "weekView": "Неделя", @@ -147,5 +135,63 @@ "yourDetails": "Ваши данные", "yourName": "Ваше имя…", "yourPolls": "Ваши опросы", - "yourProfile": "Ваш профиль" + "yourProfile": "Ваш профиль", + "homepage": { + "3Ls": "Именно — с 3 \"L\"", + "adFree": "Без рекламы", + "adFreeDescription": "Можете позволить вашему блокировщику рекламы расслабиться — здесь он вам не понадобится.", + "comments": "Комментарии", + "commentsDescription": "Участники могут комментировать ваш опрос, и комментарии будут видны всем.", + "features": "Возможности", + "featuresSubheading": "Умный планировщик", + "getStarted": "Начать", + "heroSubText": "Найти нужную дату без лишних итераций", + "heroText": "Запланировать
групповые встречи
с легкостью", + "links": "Ссылки", + "liveDemo": "Демонстрация", + "metaDescription": "Создавайте опросы и голосуйте за лучший день или время. Бесплатная альтернатива Doodle.", + "metaTitle": "Rallly - Расписание групповых встреч", + "mobileFriendly": "Адаптировано для мобильных устройств", + "mobileFriendlyDescription": "Работает отлично на мобильных устройствах, так что участники могут отвечать на опросы, где бы они ни были.", + "new": "Новый", + "noLoginRequired": "Вход не требуется", + "noLoginRequiredDescription": "Вам не нужно авторизоваться, чтобы создать или принять участие в опросе.", + "notifications": "Уведомления", + "notificationsDescription": "Будьте в курсе кто ответил. Получайте уведомление, когда участники голосуют или комментируют ваш опрос.", + "openSource": "Открытый код", + "openSourceDescription": "Код полностью открыт и доступен на GitHub.", + "participant": "Участник", + "participantCount": "{count, plural, one {# участник} other {# участников}}", + "perfect": "Превосходно!", + "principles": "Принципиальные отличия", + "principlesSubheading": "Мы не такие, как все", + "selfHostable": "Собственный хостинг", + "selfHostableDescription": "Запустите его на своём сервере, чтобы полностью контролировать ваши данные.", + "timeSlots": "Временные интервалы", + "timeSlotsDescription": "Установите индивидуальное время начала и окончания для каждого варианта в вашем опросе. Время может автоматически подстраиваться под часовой пояс каждого участника или может быть установлено так, чтобы полностью игнорировать часовые пояса." + }, + "common": { + "blog": "Блог", + "discussions": "Обсуждение", + "footerCredit": "Творение @imlukevella", + "footerSponsor": "Этот проект финансируется пользователями. Пожалуйста, поддержите его пожертвованием.", + "home": "Главная", + "language": "Язык", + "links": "Ссылки", + "poweredBy": "Работает на платформе", + "privacyPolicy": "Политика конфиденциальности", + "starOnGithub": "В избранное на Github", + "support": "Поддержка", + "cookiePolicy": "Политика использования файлов cookie", + "termsOfUse": "Условия использования", + "volunteerTranslator": "Помочь с переводом того сайта" + }, + "errors": { + "notFoundTitle": "404: Не найдено", + "notFoundDescription": "Мы не можем найти страницу, которую вы искали.", + "goToHome": "Вернуться на главную", + "startChat": "Начать чат" + }, + "optionCount": "{count, plural, few {# опции} one {# опция} other {# опций} two {# опции}}", + "participantCount": "{count, plural, one {# участник} other {# участников}}" } diff --git a/apps/web/public/locales/ru/common.json b/apps/web/public/locales/ru/common.json deleted file mode 100644 index 3f06e71c5..000000000 --- a/apps/web/public/locales/ru/common.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "blog": "Блог", - "discussions": "Обсуждение", - "footerCredit": "Творение @imlukevella", - "footerSponsor": "Этот проект финансируется пользователями. Пожалуйста, поддержите его пожертвованием.", - "home": "Главная", - "language": "Язык", - "links": "Ссылки", - "poweredBy": "Работает на платформе", - "privacyPolicy": "Политика конфиденциальности", - "starOnGithub": "В избранное на Github", - "support": "Поддержка", - "cookiePolicy": "Политика использования файлов cookie", - "termsOfUse": "Условия использования", - "volunteerTranslator": "Помочь с переводом того сайта" -} diff --git a/apps/web/public/locales/ru/errors.json b/apps/web/public/locales/ru/errors.json deleted file mode 100644 index 78f185ab4..000000000 --- a/apps/web/public/locales/ru/errors.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "notFoundTitle": "404: Не найдено", - "notFoundDescription": "Мы не можем найти страницу, которую вы искали.", - "goToHome": "Вернуться на главную", - "startChat": "Начать чат" -} diff --git a/apps/web/public/locales/ru/homepage.json b/apps/web/public/locales/ru/homepage.json deleted file mode 100644 index 98f65f1da..000000000 --- a/apps/web/public/locales/ru/homepage.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "3Ls": "Именно — с 3 \"L\"", - "adFree": "Без рекламы", - "adFreeDescription": "Можете позволить вашему блокировщику рекламы расслабиться — здесь он вам не понадобится.", - "comments": "Комментарии", - "commentsDescription": "Участники могут комментировать ваш опрос, и комментарии будут видны всем.", - "features": "Возможности", - "featuresSubheading": "Умный планировщик", - "getStarted": "Начать", - "heroSubText": "Найти нужную дату без лишних итераций", - "heroText": "Запланировать
групповые встречи
с легкостью", - "links": "Ссылки", - "liveDemo": "Демонстрация", - "metaDescription": "Создавайте опросы и голосуйте за лучший день или время. Бесплатная альтернатива Doodle.", - "metaTitle": "Rallly - Расписание групповых встреч", - "mobileFriendly": "Адаптировано для мобильных устройств", - "mobileFriendlyDescription": "Работает отлично на мобильных устройствах, так что участники могут отвечать на опросы, где бы они ни были.", - "new": "Новый", - "noLoginRequired": "Вход не требуется", - "noLoginRequiredDescription": "Вам не нужно авторизоваться, чтобы создать или принять участие в опросе.", - "notifications": "Уведомления", - "notificationsDescription": "Будьте в курсе кто ответил. Получайте уведомление, когда участники голосуют или комментируют ваш опрос.", - "openSource": "Открытый код", - "openSourceDescription": "Код полностью открыт и доступен на GitHub.", - "participant": "Участник", - "participantCount_zero": "{{count}} участников", - "participantCount_one": "{{count}} участник", - "participantCount_two": "{{count}} участников", - "participantCount_few": "{{count}} участников", - "participantCount_many": "{{count}} участников", - "participantCount_other": "{{count}} участников", - "perfect": "Превосходно!", - "principles": "Принципиальные отличия", - "principlesSubheading": "Мы не такие, как все", - "selfHostable": "Собственный хостинг", - "selfHostableDescription": "Запустите его на своём сервере, чтобы полностью контролировать ваши данные.", - "timeSlots": "Временные интервалы", - "timeSlotsDescription": "Установите индивидуальное время начала и окончания для каждого варианта в вашем опросе. Время может автоматически подстраиваться под часовой пояс каждого участника или может быть установлено так, чтобы полностью игнорировать часовые пояса." -} diff --git a/apps/web/public/locales/sk/app.json b/apps/web/public/locales/sk/app.json index 8ddb711eb..cc0bc7b05 100644 --- a/apps/web/public/locales/sk/app.json +++ b/apps/web/public/locales/sk/app.json @@ -2,7 +2,7 @@ "12h": "12-hodinový", "24h": "24-hodinový", "addTimeOption": "Vybrať konkrétny čas", - "adminPollTitle": "{{title}}: Administrátor", + "adminPollTitle": "{title}: Administrátor", "alreadyRegistered": "Ste už zaregistrovaný? Prihlásenie →", "applyToAllDates": "Použiť pre všetky termíny", "areYouSure": "Ste si istý?", @@ -21,7 +21,7 @@ "copied": "Skopírované", "copyLink": "Skopírovať odkaz", "createAnAccount": "Vytvoriť účet", - "createdBy": "od {{name}}", + "createdBy": "od {name}", "createNew": "Vytvoriť novú", "createPoll": "Vytvoriť anketu", "creatingDemo": "Vytváram demo anketu…", @@ -30,10 +30,10 @@ "deleteDate": "Odstrániť termín", "deletedPoll": "Odstránená anketa", "deletedPollInfo": "Tato anketa už neexistuje.", - "deleteParticipant": "Vymazať {{name}}?", + "deleteParticipant": "Vymazať {name}?", "deleteParticipantDescription": "Naozaj chcete tohto účastníka vymazať? Túto akciu nie je možné vrátiť späť.", "deletePoll": "Odstrániť anketu", - "deletePollDescription": "Všetky dáta súvisiace s touto anketou budú zmazané. Pre potvrdenie zadajte “{{confirmText}}” nižšie:", + "deletePollDescription": "Všetky dáta súvisiace s touto anketou budú zmazané. Pre potvrdenie zadajte “{confirmText}” nižšie:", "deletingOptionsWarning": "Odstraňujete možnosti, za ktoré už účastníci hlasovali. Ich hlasy budú taktiež odstránené.", "demoPollNotice": "Demo ankety sa po jednom dni automaticky odstránia", "description": "Popis", @@ -87,7 +87,7 @@ "nextMonth": "Ďalší mesiac", "no": "Nie", "noDatesSelected": "Nebol vybraný žiaden termín", - "notificationsDisabled": "Notifikácie boli vypnuté pre {{title}}", + "notificationsDisabled": "Notifikácie boli vypnuté pre {title}", "notificationsGuest": "Pre zapnutie notifikácií sa prihláste", "notificationsOff": "Notifikácie sú vypnuté", "notificationsOn": "Upozornenia sú povolené", @@ -95,33 +95,21 @@ "noVotes": "Nikto pre túto možnosť nehlasoval", "ok": "OK", "optional": "voliteľné", - "optionCount_few": "{{count}} možností", - "optionCount_many": "{{count}} možností", - "optionCount_one": "{{count}} možnosť", - "optionCount_other": "{{count}} možností", - "optionCount_two": "{{count}} možností", - "optionCount_zero": "{{count}} možností", "participant": "Účastník", - "participantCount_few": "{{count}} účastníkov", - "participantCount_many": "{{count}} účastníkov", - "participantCount_one": "{{count}} účastník", - "participantCount_other": "{{count}} účastníkov", - "participantCount_two": "{{count}} účastníkov", - "participantCount_zero": "{{count}} účastníkov", "pollHasBeenLocked": "Anketa bola uzamknutá", "pollsEmpty": "Neboli vytvorené žiadne ankety", "possibleAnswers": "Možné odpovede", "preferences": "Nastavenia", "previousMonth": "Predchádzajúci mesiac", - "profileUser": "Profil - {{username}}", + "profileUser": "Profil - {username}", "redirect": "Kliknite sem, ak ste neboli automaticky presmerovaný…", "register": "Registrovať sa ", "requiredNameError": "Požadované je meno", - "requiredString": "„{{name}}“ je povinné", + "requiredString": "„{name}“ je povinné", "resendVerificationCode": "Znovu odoslať verifikačný kód", "response": "Odpoveď", "save": "Uložiť", - "saveInstruction": "Vyberte svoju dostupnosť a kliknite na {{action}}", + "saveInstruction": "Vyberte svoju dostupnosť a kliknite na {action}", "send": "Odoslať", "sendFeedback": "Odoslať spätnú väzbu", "share": "Zdielať", @@ -129,7 +117,7 @@ "shareLink": "Zdieľať cez odkaz", "specifyTimes": "Určite časy", "specifyTimesDescription": "Zahrnúť počiatočné a koncové časy pre každý termín", - "stepSummary": "Krok {{current}} z {{total}}", + "stepSummary": "Krok {current} z {total}", "submit": "Odoslať", "sunday": "Nedeľa", "timeFormat": "Formát času:", @@ -145,7 +133,7 @@ "validEmail": "Zadajte platnú e-mailovú adresu", "verificationCodeHelp": "Nedostali ste e-mail? Skontrolujte priečinok SPAMu.", "verificationCodePlaceholder": "Zadaj 6-miestny kód", - "verificationCodeSent": "Verifikačný kód bol zaslaný na {{email}} Zmeniť", + "verificationCodeSent": "Verifikačný kód bol zaslaný na {email} Zmeniť", "verifyYourEmail": "Overte svoj e-mail", "weekStartsOn": "Týždeň začína v", "weekView": "Zobrazenie týždňa", @@ -156,5 +144,63 @@ "yourDetails": "Vaše údaje", "yourName": "Vaše meno…", "yourPolls": "Vaše ankety", - "yourProfile": "Váš profil" + "yourProfile": "Váš profil", + "homepage": { + "3Ls": "Áno — s tromi L", + "adFree": "Bez reklám", + "adFreeDescription": "Svoj blokátor reklám môžete vypnúť. Tu ho potrebovať nebudete.", + "comments": "Komentáre", + "commentsDescription": "Účastníci sa môžu vyjadriť k vašemu prieskumu a komentáre budú viditeľné pre všetkých.", + "features": "Funkcie", + "featuresSubheading": "Jednoduché a šikovné plánovanie", + "getStarted": "Začnite tu", + "heroSubText": "Nájdite správny termín bez zložitého dohadovania sa", + "heroText": "Plánujte
skupinové stretnutia
šikovnejšie", + "links": "Odkazy", + "liveDemo": "Ukážka", + "metaDescription": "Naplánujte si skupinové stretnutia v ten najvhodnejší čas. Bezplatná alternatíva k službe Doodle.", + "metaTitle": "Rallly — Naplánujte skupinové stretnutia", + "mobileFriendly": "Vhodné pre mobil", + "mobileFriendlyDescription": "Funguje skvele na mobilných zariadeniach, aby účastníci mohli odpovedať na ankety, nech sú kdekoľvek.", + "new": "Nové", + "noLoginRequired": "Bez prihlásenia", + "noLoginRequiredDescription": "Pre vytvorenie ankety alebo účasť v ankete sa nemusíte prihlásiť.", + "notifications": "Notifikácie", + "notificationsDescription": "Majte prehľad o tom, kto odpovedal. Dostávajte upozornenia, keď účastníci hlasujú alebo komentujú vašu anketu.", + "openSource": "Otvorený zdrojový kód", + "openSourceDescription": "Celý kód je plne open-source a k dispozícii na GitHub.", + "participant": "Účastník", + "participantCount": "{count, plural, one {# účastník} other {# účastníkov}}", + "perfect": "Super!", + "principles": "Zásady", + "principlesSubheading": "Nie sme ako ostatní", + "selfHostable": "Vlastný hosting", + "selfHostableDescription": "Rozbehnite si vlastný server a získajte plnú kontrolu nad svojimi dátami.", + "timeSlots": "Časové sloty", + "timeSlotsDescription": "Nastavte čas začiatku a konca pre každú z možností vo vašej ankete. Časy môžu byť automaticky upravené podľa časovej zóny každého účastníka, alebo môžu byť nastavené tak, aby časové zóny úplne ignorovali." + }, + "common": { + "blog": "Blog", + "discussions": "Diskusie", + "footerCredit": "Vytvoril @imlukevella", + "footerSponsor": "Tento projekt je financovaný používateľmi. Zvážte jeho podporu príspevkom.", + "home": "Domov", + "language": "Jazyk", + "links": "Odkazy", + "poweredBy": "Beží na", + "privacyPolicy": "Ochrana osobných údajov", + "starOnGithub": "Podporte nás na GitHube", + "support": "Podpora", + "cookiePolicy": "Zásady používania cookies", + "termsOfUse": "Podmienky používania", + "volunteerTranslator": "Pomôžte s prekladom tejto stránky" + }, + "errors": { + "notFoundTitle": "404 nenájdené", + "notFoundDescription": "Nemohli sme nájsť stránku, ktorú hľadáte.", + "goToHome": "Prejsť na Domovskú stránku", + "startChat": "Spustiť chat" + }, + "optionCount": "{count, plural, one {# možnosť} other {# možností}}", + "participantCount": "{count, plural, one {# účastník} other {# účastníkov}}" } diff --git a/apps/web/public/locales/sk/common.json b/apps/web/public/locales/sk/common.json deleted file mode 100644 index 82a1fb6dc..000000000 --- a/apps/web/public/locales/sk/common.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "blog": "Blog", - "discussions": "Diskusie", - "footerCredit": "Vytvoril @imlukevella", - "footerSponsor": "Tento projekt je financovaný používateľmi. Zvážte jeho podporu príspevkom.", - "home": "Domov", - "language": "Jazyk", - "links": "Odkazy", - "poweredBy": "Beží na", - "privacyPolicy": "Ochrana osobných údajov", - "starOnGithub": "Podporte nás na GitHube", - "support": "Podpora", - "cookiePolicy": "Zásady používania cookies", - "termsOfUse": "Podmienky používania", - "volunteerTranslator": "Pomôžte s prekladom tejto stránky" -} diff --git a/apps/web/public/locales/sk/errors.json b/apps/web/public/locales/sk/errors.json deleted file mode 100644 index 0ced546c8..000000000 --- a/apps/web/public/locales/sk/errors.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "notFoundTitle": "404 nenájdené", - "notFoundDescription": "Nemohli sme nájsť stránku, ktorú hľadáte.", - "goToHome": "Prejsť na Domovskú stránku", - "startChat": "Spustiť chat" -} diff --git a/apps/web/public/locales/sk/homepage.json b/apps/web/public/locales/sk/homepage.json deleted file mode 100644 index 5085dd538..000000000 --- a/apps/web/public/locales/sk/homepage.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "3Ls": "Áno — s tromi L", - "adFree": "Bez reklám", - "adFreeDescription": "Svoj blokátor reklám môžete vypnúť. Tu ho potrebovať nebudete.", - "comments": "Komentáre", - "commentsDescription": "Účastníci sa môžu vyjadriť k vašemu prieskumu a komentáre budú viditeľné pre všetkých.", - "features": "Funkcie", - "featuresSubheading": "Jednoduché a šikovné plánovanie", - "getStarted": "Začnite tu", - "heroSubText": "Nájdite správny termín bez zložitého dohadovania sa", - "heroText": "Plánujte
skupinové stretnutia
šikovnejšie", - "links": "Odkazy", - "liveDemo": "Ukážka", - "metaDescription": "Naplánujte si skupinové stretnutia v ten najvhodnejší čas. Bezplatná alternatíva k službe Doodle.", - "metaTitle": "Rallly — Naplánujte skupinové stretnutia", - "mobileFriendly": "Vhodné pre mobil", - "mobileFriendlyDescription": "Funguje skvele na mobilných zariadeniach, aby účastníci mohli odpovedať na ankety, nech sú kdekoľvek.", - "new": "Nové", - "noLoginRequired": "Bez prihlásenia", - "noLoginRequiredDescription": "Pre vytvorenie ankety alebo účasť v ankete sa nemusíte prihlásiť.", - "notifications": "Notifikácie", - "notificationsDescription": "Majte prehľad o tom, kto odpovedal. Dostávajte upozornenia, keď účastníci hlasujú alebo komentujú vašu anketu.", - "openSource": "Otvorený zdrojový kód", - "openSourceDescription": "Celý kód je plne open-source a k dispozícii na GitHub.", - "participant": "Účastník", - "participantCount_zero": "{{count}} účastníkov", - "participantCount_one": "{{count}} účastník", - "participantCount_two": "{{count}} účastníkov", - "participantCount_few": "{{count}} účastníkov", - "participantCount_many": "{{count}} účastníkov", - "participantCount_other": "{{count}} účastníkov", - "perfect": "Super!", - "principles": "Zásady", - "principlesSubheading": "Nie sme ako ostatní", - "selfHostable": "Vlastný hosting", - "selfHostableDescription": "Rozbehnite si vlastný server a získajte plnú kontrolu nad svojimi dátami.", - "timeSlots": "Časové sloty", - "timeSlotsDescription": "Nastavte čas začiatku a konca pre každú z možností vo vašej ankete. Časy môžu byť automaticky upravené podľa časovej zóny každého účastníka, alebo môžu byť nastavené tak, aby časové zóny úplne ignorovali." -} diff --git a/apps/web/public/locales/sv/app.json b/apps/web/public/locales/sv/app.json index 6ff4f3cb3..67b9b4acb 100644 --- a/apps/web/public/locales/sv/app.json +++ b/apps/web/public/locales/sv/app.json @@ -2,7 +2,7 @@ "12h": "12-timmar", "24h": "24-timmar", "addTimeOption": "Lägg till tidsalternativ", - "adminPollTitle": "{{title}}: Administratör", + "adminPollTitle": "{title}: Administratör", "alreadyRegistered": "Redan registrerad? Logga in →", "applyToAllDates": "Tillämpa på alla datum", "areYouSure": "Är du säker?", @@ -21,7 +21,7 @@ "copied": "Kopierad", "copyLink": "Kopiera länk", "createAnAccount": "Skapa ett konto", - "createdBy": "av {{name}}", + "createdBy": "av {name}", "createNew": "Skapa ny", "createPoll": "Skapa en förfrågan", "creatingDemo": "Skapar demoförfrågan…", @@ -30,10 +30,10 @@ "deleteDate": "Radera datum", "deletedPoll": "Raderad förfrågan", "deletedPollInfo": "Den här förfrågan finns inte längre.", - "deleteParticipant": "Radera {{name}}?", + "deleteParticipant": "Radera {name}?", "deleteParticipantDescription": "Är du säker på att du vill ta bort deltagaren? Denna åtgärd kan inte ångras.", "deletePoll": "Radera förfrågan", - "deletePollDescription": "All data relaterad till denna förfrågan kommer att raderas. För att bekräfta, skriv ”{{confirmText}}” i inmatningsrutan nedan:", + "deletePollDescription": "All data relaterad till denna förfrågan kommer att raderas. För att bekräfta, skriv ”{confirmText}” i inmatningsrutan nedan:", "deletingOptionsWarning": "Du tar bort alternativ som deltagarna har röstat på. Deras röster kommer också att raderas.", "demoPollNotice": "Demoförfrågningar raderas automatiskt efter 1 dag", "description": "Beskrivning", @@ -86,7 +86,7 @@ "nextMonth": "Nästa månad", "no": "Nej", "noDatesSelected": "Inga datum valda", - "notificationsDisabled": "Aviseringar har inaktiverats för {{title}}", + "notificationsDisabled": "Aviseringar har inaktiverats för {title}", "notificationsGuest": "Logga in för att aktivera aviseringar", "notificationsOff": "Aviseringar har inaktiverats", "notificationsOn": "Aviseringar är på", @@ -94,33 +94,21 @@ "noVotes": "Ingen har röstat för detta alternativ", "ok": "Ok", "optional": "frivilligt", - "optionCount_few": "{{count}} val", - "optionCount_many": "{{count}} val", - "optionCount_one": "{{count}} val", - "optionCount_other": "{{count}} val", - "optionCount_two": "{{count}} val", - "optionCount_zero": "{{count}} val", "participant": "Deltagare", - "participantCount_few": "{{count}} deltagare", - "participantCount_many": "{{count}} deltagare", - "participantCount_one": "{{count}} deltagare", - "participantCount_other": "{{count}} deltagare", - "participantCount_two": "{{count}} deltagare", - "participantCount_zero": "{{count}} deltagare", "pollHasBeenLocked": "Denna förfrågan har låsts", "pollsEmpty": "Inga förfrågningar har skapats", "possibleAnswers": "Möjliga svar", "preferences": "Inställningar", "previousMonth": "Föregående månad", - "profileUser": "Profil - {{username}}", + "profileUser": "Profil - {username}", "redirect": "Klicka här om du inte omdirigeras automatiskt…", "register": "Registrera", "requiredNameError": "Namn är obligatoriskt", - "requiredString": "“{{name}}” är obligatoriskt", + "requiredString": "“{name}” är obligatoriskt", "resendVerificationCode": "Skicka verifieringskoden igen", "response": "Svar", "save": "Spara", - "saveInstruction": "Välj din tillgänglighet och klicka på {{action}}", + "saveInstruction": "Välj din tillgänglighet och klicka på {action}", "send": "Skicka", "sendFeedback": "Skicka återkoppling", "share": "Dela", @@ -128,7 +116,7 @@ "shareLink": "Dela via länk", "specifyTimes": "Ange tider", "specifyTimesDescription": "Inkludera start- och sluttider för varje alternativ", - "stepSummary": "Steg {{current}} av {{total}}", + "stepSummary": "Steg {current} av {total}", "submit": "Skicka", "sunday": "Söndag", "timeFormat": "Tidsformat:", @@ -143,7 +131,7 @@ "validEmail": "Vänligen ange en giltig e-postadress", "verificationCodeHelp": "Fick du inte e-postmeddelandet? Kontrollera din skräppost.", "verificationCodePlaceholder": "Ange din sexsiffriga kod", - "verificationCodeSent": "En verifieringskod har skickats till {{email}} Byt", + "verificationCodeSent": "En verifieringskod har skickats till {email} Byt", "verifyYourEmail": "Verifiera din e-postadress", "weekStartsOn": "Veckan börjar med", "weekView": "Veckovy", @@ -154,5 +142,63 @@ "yourDetails": "Dina uppgifter", "yourName": "Ditt namn…", "yourPolls": "Dina förfrågningar", - "yourProfile": "Din profil" + "yourProfile": "Din profil", + "homepage": { + "3Ls": "Ja, med 3 L", + "adFree": "Reklamfritt", + "adFreeDescription": "Du kan låta din annonsblockerare vila - du behöver den inte här.", + "comments": "Kommentarer", + "commentsDescription": "Deltagarna kan kommentera din förfrågan och kommentarerna kommer att vara synliga för alla.", + "features": "Funktioner", + "featuresSubheading": "Schemaläggning, på det smarta sättet", + "getStarted": "Kom igång", + "heroSubText": "Hitta rätt datum utan allt fram och tillbaka", + "heroText": "Schemalägg
gruppmöten
enkelt", + "links": "Länkar", + "liveDemo": "Live demo", + "metaDescription": "Skapa förfrågningar och rösta för att hitta den bästa dagen eller tiden. Ett gratis alternativ till Doodle.", + "metaTitle": "Rallly - Schemalägg gruppmöten", + "mobileFriendly": "Mobil vänlig", + "mobileFriendlyDescription": "Fungerar bra på mobila enheter så att deltagarna kan svara på förfrågningar var de än befinner sig.", + "new": "Nytt", + "noLoginRequired": "Ingen inloggning krävs", + "noLoginRequiredDescription": "Du behöver inte logga in för att skapa eller delta i en enkät.", + "notifications": "Aviseringar", + "notificationsDescription": "Håll koll på vem som har svarat. Få aviseringar när deltagarna röstar eller kommenterar på din förfrågan.", + "openSource": "Öppen källkod", + "openSourceDescription": "Kodbasen är helt öppen källkod och är tillgänglig på GitHub.", + "participant": "Deltagare", + "participantCount": "{count, plural, other {# deltagare}}", + "perfect": "Perfekt!", + "principles": "Principer", + "principlesSubheading": "Vi är inte som de andra", + "selfHostable": "Självhostbar", + "selfHostableDescription": "Kör Rallly på din egen server för att ta full kontroll över din data.", + "timeSlots": "Tidsluckor", + "timeSlotsDescription": "Ange individuella start- och sluttider för varje alternativ i din förfrågan. Tiderna kan justeras automatiskt till varje deltagares tidszon eller så kan de ställas in så att tidszoner ignoreras helt." + }, + "common": { + "blog": "Blogg", + "discussions": "Diskussioner", + "footerCredit": "Gjort av @imlukevella", + "footerSponsor": "Detta projekt är användarfinansierat. Överväg att stödja det genom att göra en donation.", + "home": "Hem", + "language": "Språk", + "links": "Länkar", + "poweredBy": "Byggd på", + "privacyPolicy": "Integritetspolicy", + "starOnGithub": "Stjärnmarkera på GitHub", + "support": "Support", + "cookiePolicy": "Policy för kakor", + "termsOfUse": "Användarvillkor", + "volunteerTranslator": "Hjälp till att översätta denna webbplats" + }, + "errors": { + "notFoundTitle": "404 hittades inte", + "notFoundDescription": "Vi kunde inte hitta sidan du försökte nå.", + "goToHome": "Gå till hem", + "startChat": "Starta chatt" + }, + "optionCount": "{count, plural, other {# val}}", + "participantCount": "{count, plural, other {# deltagare}}" } diff --git a/apps/web/public/locales/sv/common.json b/apps/web/public/locales/sv/common.json deleted file mode 100644 index f012b8a91..000000000 --- a/apps/web/public/locales/sv/common.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "blog": "Blogg", - "discussions": "Diskussioner", - "footerCredit": "Gjort av @imlukevella", - "footerSponsor": "Detta projekt är användarfinansierat. Överväg att stödja det genom att göra en donation.", - "home": "Hem", - "language": "Språk", - "links": "Länkar", - "poweredBy": "Byggd på", - "privacyPolicy": "Integritetspolicy", - "starOnGithub": "Stjärnmarkera på GitHub", - "support": "Support", - "cookiePolicy": "Policy för kakor", - "termsOfUse": "Användarvillkor", - "volunteerTranslator": "Hjälp till att översätta denna webbplats" -} diff --git a/apps/web/public/locales/sv/errors.json b/apps/web/public/locales/sv/errors.json deleted file mode 100644 index 0dc9d1a01..000000000 --- a/apps/web/public/locales/sv/errors.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "notFoundTitle": "404 hittades inte", - "notFoundDescription": "Vi kunde inte hitta sidan du försökte nå.", - "goToHome": "Gå till hem", - "startChat": "Starta chatt" -} diff --git a/apps/web/public/locales/sv/homepage.json b/apps/web/public/locales/sv/homepage.json deleted file mode 100644 index ee6f396e8..000000000 --- a/apps/web/public/locales/sv/homepage.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "3Ls": "Ja, med 3 L", - "adFree": "Reklamfritt", - "adFreeDescription": "Du kan låta din annonsblockerare vila - du behöver den inte här.", - "comments": "Kommentarer", - "commentsDescription": "Deltagarna kan kommentera din förfrågan och kommentarerna kommer att vara synliga för alla.", - "features": "Funktioner", - "featuresSubheading": "Schemaläggning, på det smarta sättet", - "getStarted": "Kom igång", - "heroSubText": "Hitta rätt datum utan allt fram och tillbaka", - "heroText": "Schemalägg
gruppmöten
enkelt", - "links": "Länkar", - "liveDemo": "Live demo", - "metaDescription": "Skapa förfrågningar och rösta för att hitta den bästa dagen eller tiden. Ett gratis alternativ till Doodle.", - "metaTitle": "Rallly - Schemalägg gruppmöten", - "mobileFriendly": "Mobil vänlig", - "mobileFriendlyDescription": "Fungerar bra på mobila enheter så att deltagarna kan svara på förfrågningar var de än befinner sig.", - "new": "Nytt", - "noLoginRequired": "Ingen inloggning krävs", - "noLoginRequiredDescription": "Du behöver inte logga in för att skapa eller delta i en enkät.", - "notifications": "Aviseringar", - "notificationsDescription": "Håll koll på vem som har svarat. Få aviseringar när deltagarna röstar eller kommenterar på din förfrågan.", - "openSource": "Öppen källkod", - "openSourceDescription": "Kodbasen är helt öppen källkod och är tillgänglig på GitHub.", - "participant": "Deltagare", - "participantCount_zero": "{{count}} deltagare", - "participantCount_one": "{{count}} deltagare", - "participantCount_two": "{{count}} deltagare", - "participantCount_few": "{{count}} deltagare", - "participantCount_many": "{{count}} deltagare", - "participantCount_other": "{{count}} deltagare", - "perfect": "Perfekt!", - "principles": "Principer", - "principlesSubheading": "Vi är inte som de andra", - "selfHostable": "Självhostbar", - "selfHostableDescription": "Kör Rallly på din egen server för att ta full kontroll över din data.", - "timeSlots": "Tidsluckor", - "timeSlotsDescription": "Ange individuella start- och sluttider för varje alternativ i din förfrågan. Tiderna kan justeras automatiskt till varje deltagares tidszon eller så kan de ställas in så att tidszoner ignoreras helt." -} diff --git a/apps/web/public/locales/tr/app.json b/apps/web/public/locales/tr/app.json index faa9afe4c..5db63eca7 100644 --- a/apps/web/public/locales/tr/app.json +++ b/apps/web/public/locales/tr/app.json @@ -14,7 +14,7 @@ "continue": "Devam et", "copied": "Kopyalandı", "copyLink": "Linki kopyala", - "createdBy": "{{name}} tarafından", + "createdBy": "{name} tarafından", "createPoll": "Anketi oluştur", "delete": "Sil", "deleteComment": "Yorumu sil", @@ -22,7 +22,7 @@ "deletedPoll": "Anketi silindi", "deletedPollInfo": "Bu anket artık mevcut degil.", "deletePoll": "Anketi sil", - "deletePollDescription": "Bu anketle ilgili tüm veriler silinecek. Onaylamak için lütfen aşağıdaki metin kutusuna “{{confirmText}}” yazın:", + "deletePollDescription": "Bu anketle ilgili tüm veriler silinecek. Onaylamak için lütfen aşağıdaki metin kutusuna “{confirmText}” yazın:", "deletingOptionsWarning": "Katılımcıların oy verdiği seçenekleri siliyorsunuz. Verilen oylarda silinecektir.", "demoPollNotice": "Demo anketler 1 gün sonra otomatik olarak silinir", "description": "Açıklama", @@ -58,11 +58,11 @@ "next": "Sonraki", "nextMonth": "Sonraki ay", "no": "Hayır", - "participantCount_other": "{{count}} katılımcı", - "profileUser": "Profil - {{username}}", - "saveInstruction": "Uygunluk durumunuzu seçin ve {{action}} düğmesine tıklayın", + "participantCount_other": "{count} katılımcı", + "profileUser": "Profil - {username}", + "saveInstruction": "Uygunluk durumunuzu seçin ve {action} düğmesine tıklayın", "shareDescription": "Anketinizde oy kullanmalarına izin vermek için bu bağlantıyı katılımcılarınıza verin.", - "stepSummary": "Aşama: {{current}} / {{total}}", + "stepSummary": "Aşama: {current} / {total}", "sunday": "Pazar", "timeFormat": "Zaman biçimi:", "today": "Bugün", diff --git a/apps/web/public/locales/tr/homepage.json b/apps/web/public/locales/tr/homepage.json index a4b78e8e8..b0181e530 100644 --- a/apps/web/public/locales/tr/homepage.json +++ b/apps/web/public/locales/tr/homepage.json @@ -5,5 +5,5 @@ "links": "Bağlantılar", "new": "Yeni", "openSourceDescription": "Kodlar tamamen açık kaynaklıdır ve GitHub'da erişilebilir.", - "participantCount_other": "{{count}} katılımcı" + "participantCount_other": "{count} katılımcı" } diff --git a/apps/web/public/locales/vi/app.json b/apps/web/public/locales/vi/app.json index 8564e5aa6..d838b6154 100644 --- a/apps/web/public/locales/vi/app.json +++ b/apps/web/public/locales/vi/app.json @@ -2,7 +2,7 @@ "12h": "12 giờ", "24h": "24 giờ", "addTimeOption": "Thêm khung giờ để bầu chọn", - "adminPollTitle": "{{title}}: Quản trị viên", + "adminPollTitle": "{title}: Quản trị viên", "alreadyRegistered": "Đã đăng ký? Đăng nhập →", "applyToAllDates": "Áp dụng cho mọi ngày", "areYouSure": "Bạn chắc chứ?", @@ -20,7 +20,7 @@ "copied": "Đã sao chép", "copyLink": "Sao chép liên kết", "createAnAccount": "Tạo tài khoản mới", - "createdBy": "bởi {{name}}", + "createdBy": "bởi {name}", "createNew": "Tạo mới", "createPoll": "Tạo bình chọn", "creatingDemo": "Đang tạo bình chọn mẫu…", @@ -29,10 +29,10 @@ "deleteDate": "Xoá ngày", "deletedPoll": "Bình chọn đã xoá", "deletedPollInfo": "Bình chọn này không còn tồn tại.", - "deleteParticipant": "Xoá {{name}}?", + "deleteParticipant": "Xoá {name}?", "deleteParticipantDescription": "Bạn có chắc sẽ xóa người tham dự này này? Hành động này không thể hoàn tác.", "deletePoll": "Xóa bình chọn", - "deletePollDescription": "Tất cả dữ liệu liên quan đến bình chọn này sẽ được xoá. Để chấp thuận, vui lòng nhập “{{confirmText}}” vào ô phía dưới:", + "deletePollDescription": "Tất cả dữ liệu liên quan đến bình chọn này sẽ được xoá. Để chấp thuận, vui lòng nhập “{confirmText}” vào ô phía dưới:", "deletingOptionsWarning": "Bạn đang xoá các lựa chọn mà người tham dự đã bầu. Phiếu bầu của họ sẽ bị xoá.", "demoPollNotice": "Bình chọn mẫu sẽ tự động xoá sau 1 ngày", "description": "Mô tả", @@ -86,39 +86,27 @@ "noVotes": "Chưa ai bầu cho bình chọn này", "ok": "Ok", "optional": "tuỳ chọn", - "optionCount_few": "{{count}} tuỳ chọn", - "optionCount_many": "{{count}} tuỳ chọn", - "optionCount_one": "{{count}} tuỳ chọn", - "optionCount_other": "{{count}} tuỳ chọn", - "optionCount_two": "{{count}} tuỳ chọn", - "optionCount_zero": "{{count}} tuỳ chọn", "participant": "Người tham dự", - "participantCount_few": "{{count}} người tham dự", - "participantCount_many": "{{count}} người tham dự", - "participantCount_one": "{{count}} người tham dự", - "participantCount_other": "{{count}} người tham dự", - "participantCount_two": "{{count}} người tham dự", - "participantCount_zero": "{{count}} người tham dự", "pollHasBeenLocked": "Bình chọn này đã bị khóa", "pollsEmpty": "Không có bình chọn nào được tạo", "possibleAnswers": "Những câu trả lời bạn có thể bầu chọn", "preferences": "Tuỳ chỉnh", "previousMonth": "Tháng trước", - "profileUser": "Profile - {{username}}", + "profileUser": "Profile - {username}", "redirect": "Ấn đây nếu bạn chưa được điều hướng…", "register": "Đăng ký", "requiredNameError": "Vui lòng nhập tên", - "requiredString": "Vui lòng đìền \"{{name}}\"", + "requiredString": "Vui lòng đìền \"{name}\"", "resendVerificationCode": "Gửi lại mã xác nhận", "response": "Phản hồi", "save": "Lưu", - "saveInstruction": "Chọn thời gian ban có thể tham gia và ấn {{action}}", + "saveInstruction": "Chọn thời gian ban có thể tham gia và ấn {action}", "share": "Chia sẻ", "shareDescription": "Cung cấp liên kết này cho người tham gia của bạn để cho phép họ bỏ phiếu cho thăm dò của bạn.", "shareLink": "Chia sẻ qua đường dẫn", "specifyTimes": "Chọn thời gian", "specifyTimesDescription": "Chọn thời gian bắt đầu và kết thúc cho mỗi lựa chọn", - "stepSummary": "Bước {{current}}/{{total}}", + "stepSummary": "Bước {current}/{total}", "submit": "Gửi", "sunday": "Chủ nhật", "timeFormat": "Định dạng thời gian:", @@ -134,7 +122,7 @@ "validEmail": "Vui lòng nhập email hợp lệ", "verificationCodeHelp": "Không nhận được email? Kiểm tra hộp thư rác của bạn.", "verificationCodePlaceholder": "Nhập mã 6 ký tự", - "verificationCodeSent": "Mã xác minh đã được gửi đến {{email}} Thay đổi", + "verificationCodeSent": "Mã xác minh đã được gửi đến {email} Thay đổi", "verifyYourEmail": "Xác minh địa chỉ email của bạn", "weekStartsOn": "Tuần bắt đầu vào", "weekView": "Hiển thị theo Tuần", @@ -145,5 +133,61 @@ "yourDetails": "Thông tin của bạn", "yourName": "Tên bạn…", "yourPolls": "Bình chọn của bạn", - "yourProfile": "Hồ sơ của bạn" + "yourProfile": "Hồ sơ của bạn", + "homepage": { + "3Ls": "ba chữ L đó nha", + "adFree": "Không có quảng cáo", + "adFreeDescription": "Bạn không cần ứng dụng chặn quảng cáo đâu - chúng tôi cũng đâu có cái nào.", + "comments": "Bình luận", + "commentsDescription": "Những người tham gia có thể bình luận về thăm dò của bạn và bình luận sẽ được hiện thị cho mọi người.", + "features": "Tính năng", + "featuresSubheading": "Đặt lịch hẹn dễ dàng", + "getStarted": "Bắt đầu", + "heroSubText": "Tìm đúng ngày mà không cần qua đi qua lại", + "heroText": "Lên lịch
họp nhóm
dễ dàng", + "links": "Liên kết", + "liveDemo": "Thử ngay!", + "metaDescription": "Tạo bình chọn và bầu giờ hoặc ngày phù hợp nhất với cả nhóm.", + "metaTitle": "Rallly - Lên lịch họp nhóm", + "mobileFriendly": "Hoạt động tốt trên điện thoại", + "mobileFriendlyDescription": "Hoạt động tốt kể cả trên điện thoại, để người tham dự có thể trả lời bất cứ lúc nào họ muốn.", + "new": "Thêm", + "noLoginRequired": "Không cần đăng nhập", + "noLoginRequiredDescription": "Bạn không cần đăng nhập để tạo hay bầu bình chọn.", + "notifications": "Thông báo", + "notificationsDescription": "Theo dõi xem ai đã trả lời. Nhận thông báo khi người tham gia bỏ phiếu hoặc bình luận về thăm dò của bạn.", + "openSource": "Mã nguồn mở", + "openSourceDescription": "Cơ sở mã hoàn toàn là mã nguồn mở và có sẵn trên GitHub.", + "participant": "Người tham dự", + "participantCount": "{count, plural, other {# người tham dự}}", + "perfect": "Hợp ý rồi!", + "principles": "Triết lý", + "principlesSubheading": "Vì cộng đồng", + "selfHostable": "Tự chạy trên máy chủ của riêng bạn", + "selfHostableDescription": "Tự chạy Rallly trên máy chủ của riêng bạn để kiểm soát hoàn toàn dữ liệu của bạn.", + "timeSlots": "Ô thời gian", + "timeSlotsDescription": "Đặt thời gian bắt đầu và kết thúc cho từng tùy chọn trong thăm dò của bạn. Thời gian có thể được tự động điều chỉnh theo múi giờ của mỗi người tham gia hoặc chúng có thể được đặt để bỏ qua hoàn toàn múi giờ." + }, + "common": { + "blog": "Blog", + "discussions": "Thảo luận", + "footerCredit": "Làm bởi imlukevella", + "footerSponsor": "Dự án này do người dùng tài trợ. Vui lòng xem xét hỗ trợ nó bằng cách đóng góp.", + "home": "Trang chủ", + "language": "Ngôn ngữ", + "links": "Liên kết", + "poweredBy": "Chạy trên nền tảng", + "privacyPolicy": "Chính sách bảo mật", + "starOnGithub": "Gắn dấu sao trên GitHub", + "support": "Hỗ trợ", + "volunteerTranslator": "Giúp dịch trang này" + }, + "errors": { + "notFoundTitle": "Không tìm thấy trang 404", + "notFoundDescription": "Chúng tôi không thấy trang bạn đang tìm.", + "goToHome": "Về trang chủ", + "startChat": "Bắt đầu trò chuyện" + }, + "optionCount": "{count, plural, other {# tuỳ chọn}}", + "participantCount": "{count, plural, other {# người tham dự}}" } diff --git a/apps/web/public/locales/vi/common.json b/apps/web/public/locales/vi/common.json deleted file mode 100644 index ff23994e6..000000000 --- a/apps/web/public/locales/vi/common.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "blog": "Blog", - "discussions": "Thảo luận", - "footerCredit": "Làm bởi imlukevella", - "footerSponsor": "Dự án này do người dùng tài trợ. Vui lòng xem xét hỗ trợ nó bằng cách đóng góp.", - "home": "Trang chủ", - "language": "Ngôn ngữ", - "links": "Liên kết", - "poweredBy": "Chạy trên nền tảng", - "privacyPolicy": "Chính sách bảo mật", - "starOnGithub": "Gắn dấu sao trên GitHub", - "support": "Hỗ trợ", - "volunteerTranslator": "Giúp dịch trang này" -} diff --git a/apps/web/public/locales/vi/errors.json b/apps/web/public/locales/vi/errors.json deleted file mode 100644 index 6a2bb9f50..000000000 --- a/apps/web/public/locales/vi/errors.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "notFoundTitle": "Không tìm thấy trang 404", - "notFoundDescription": "Chúng tôi không thấy trang bạn đang tìm.", - "goToHome": "Về trang chủ", - "startChat": "Bắt đầu trò chuyện" -} diff --git a/apps/web/public/locales/vi/homepage.json b/apps/web/public/locales/vi/homepage.json deleted file mode 100644 index 85502442e..000000000 --- a/apps/web/public/locales/vi/homepage.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "3Ls": "ba chữ L đó nha", - "adFree": "Không có quảng cáo", - "adFreeDescription": "Bạn không cần ứng dụng chặn quảng cáo đâu - chúng tôi cũng đâu có cái nào.", - "comments": "Bình luận", - "commentsDescription": "Những người tham gia có thể bình luận về thăm dò của bạn và bình luận sẽ được hiện thị cho mọi người.", - "features": "Tính năng", - "featuresSubheading": "Đặt lịch hẹn dễ dàng", - "getStarted": "Bắt đầu", - "heroSubText": "Tìm đúng ngày mà không cần qua đi qua lại", - "heroText": "Lên lịch
họp nhóm
dễ dàng", - "links": "Liên kết", - "liveDemo": "Thử ngay!", - "metaDescription": "Tạo bình chọn và bầu giờ hoặc ngày phù hợp nhất với cả nhóm.", - "metaTitle": "Rallly - Lên lịch họp nhóm", - "mobileFriendly": "Hoạt động tốt trên điện thoại", - "mobileFriendlyDescription": "Hoạt động tốt kể cả trên điện thoại, để người tham dự có thể trả lời bất cứ lúc nào họ muốn.", - "new": "Thêm", - "noLoginRequired": "Không cần đăng nhập", - "noLoginRequiredDescription": "Bạn không cần đăng nhập để tạo hay bầu bình chọn.", - "notifications": "Thông báo", - "notificationsDescription": "Theo dõi xem ai đã trả lời. Nhận thông báo khi người tham gia bỏ phiếu hoặc bình luận về thăm dò của bạn.", - "openSource": "Mã nguồn mở", - "openSourceDescription": "Cơ sở mã hoàn toàn là mã nguồn mở và có sẵn trên GitHub.", - "participant": "Người tham dự", - "participantCount_zero": "{{count}} người tham dự", - "participantCount_one": "{{count}} người tham dự", - "participantCount_two": "{{count}} người tham dự", - "participantCount_few": "{{count}} người tham dự", - "participantCount_many": "{{count}} người tham dự", - "participantCount_other": "{{count}} người tham dự", - "perfect": "Hợp ý rồi!", - "principles": "Triết lý", - "principlesSubheading": "Vì cộng đồng", - "selfHostable": "Tự chạy trên máy chủ của riêng bạn", - "selfHostableDescription": "Tự chạy Rallly trên máy chủ của riêng bạn để kiểm soát hoàn toàn dữ liệu của bạn.", - "timeSlots": "Ô thời gian", - "timeSlotsDescription": "Đặt thời gian bắt đầu và kết thúc cho từng tùy chọn trong thăm dò của bạn. Thời gian có thể được tự động điều chỉnh theo múi giờ của mỗi người tham gia hoặc chúng có thể được đặt để bỏ qua hoàn toàn múi giờ." -} diff --git a/apps/web/public/locales/zh/app.json b/apps/web/public/locales/zh/app.json index 5ba7016e9..5d0887312 100644 --- a/apps/web/public/locales/zh/app.json +++ b/apps/web/public/locales/zh/app.json @@ -2,7 +2,7 @@ "12h": "12小时制", "24h": "24小时制", "addTimeOption": "增加时间段", - "adminPollTitle": "{{title}}: 管理员", + "adminPollTitle": "{title}: 管理员", "alreadyRegistered": "已注册? 登录 →", "applyToAllDates": "应用到所有日期", "areYouSure": "确定要这样做吗?", @@ -21,7 +21,7 @@ "copied": "已复制", "copyLink": "复制链接", "createAnAccount": "注册帐号", - "createdBy": "由 {{name}} 发起", + "createdBy": "由 {name} 发起", "createNew": "新建投票", "createPoll": "创建投票", "creatingDemo": "正在创建示例…", @@ -30,10 +30,10 @@ "deleteDate": "删除这个日期", "deletedPoll": "已删除投票", "deletedPollInfo": "该投票不存在。", - "deleteParticipant": "删除 {{name}}?", + "deleteParticipant": "删除 {name}?", "deleteParticipantDescription": "您确定要删除这个参与者吗?该操作无法撤销。", "deletePoll": "删除投票", - "deletePollDescription": "该操作将删除所有关联数据,请输入 \"{{confirmText}}\" 进行确认:", + "deletePollDescription": "该操作将删除所有关联数据,请输入 \"{confirmText}\" 进行确认:", "deletingOptionsWarning": "注意:已有人投票该选项,删除会导致相关结果丢失。", "demoPollNotice": "示例投票会在 1 天后自动删除", "description": "描述信息", @@ -87,7 +87,7 @@ "nextMonth": "下个月", "no": "不行", "noDatesSelected": "未选定日期", - "notificationsDisabled": "{{title}} 的通知已禁用", + "notificationsDisabled": "{title} 的通知已禁用", "notificationsGuest": "登录以启用通知", "notificationsOff": "通知已关闭", "notificationsOn": "通知已启用", @@ -95,33 +95,21 @@ "noVotes": "没有人对此选项投票", "ok": "确定", "optional": "可选", - "optionCount_few": "{{count}} 个选项", - "optionCount_many": "{{count}} 个选项", - "optionCount_one": "{{count}} 个选项", - "optionCount_other": "{{count}} 个选项", - "optionCount_two": "{{count}} 个选项", - "optionCount_zero": "{{count}} 个选项", "participant": "参与者", - "participantCount_few": "{{count}} 位参与者", - "participantCount_many": "{{count}} 位参与者", - "participantCount_one": "{{count}} 位参与者", - "participantCount_other": "{{count}} 位参与者", - "participantCount_two": "{{count}} 位参与者", - "participantCount_zero": "{{count}} 位参与者", "pollHasBeenLocked": "此投票已锁定", "pollsEmpty": "未创建投票", "possibleAnswers": "可用的投票选项", "preferences": "偏好设置", "previousMonth": "上个月", - "profileUser": "个人资料 - {{username}}", + "profileUser": "个人资料 - {username}", "redirect": "如果网页没有自动重定向,点这里", "register": "注册", "requiredNameError": "姓名为必填项", - "requiredString": "\"{{name}}\" 是必填项", + "requiredString": "\"{name}\" 是必填项", "resendVerificationCode": "重新发送验证码", "response": "响应", "save": "保存", - "saveInstruction": "选择你有空的时间并点击 {{action}}", + "saveInstruction": "选择你有空的时间并点击 {action}", "send": "发送", "sendFeedback": "发送反馈", "share": "分享", @@ -129,7 +117,7 @@ "shareLink": "分享链接", "specifyTimes": "指定时间", "specifyTimesDescription": "为每个选项设定起始时间", - "stepSummary": "第 {{current}} 步,共 {{total}} 步", + "stepSummary": "第 {current} 步,共 {total} 步", "submit": "提交", "sunday": "星期天", "timeFormat": "时间格式:", @@ -145,7 +133,7 @@ "validEmail": "请输入有效的电子邮件", "verificationCodeHelp": "没有收到电子邮件?请检查您的垃圾邮件/垃圾邮件。", "verificationCodePlaceholder": "输入 6 位验证码", - "verificationCodeSent": "验证码已发送至 {{email}} 更改", + "verificationCodeSent": "验证码已发送至 {email} 更改", "verifyYourEmail": "邮箱验证", "weekStartsOn": "每周开始于", "weekView": "周视图", @@ -156,5 +144,61 @@ "yourDetails": "个人信息", "yourName": "你的名字...", "yourPolls": "你的投票", - "yourProfile": "个人信息" + "yourProfile": "个人信息", + "homepage": { + "3Ls": "没错 — 有三个 L!", + "adFree": "无广告", + "adFreeDescription": "可以让你的广告屏蔽器休息一下了,这里没有它的用武之地", + "comments": "评论", + "commentsDescription": "参与者可以发表对所有人可见的评论", + "features": "特色功能", + "featuresSubheading": "智能调度", + "getStarted": "开始", + "heroSubText": "无需翻来翻去寻找合适的时间", + "heroText": "轻松安排
小组会议
", + "links": "链接", + "liveDemo": "试用", + "metaDescription": "通过投票安排最和适合时间。免费替代 Doodle。", + "metaTitle": "Rallly - 安排小组会议", + "mobileFriendly": "移动端友好", + "mobileFriendlyDescription": "在移动设备上效果很好,可以使参与者可以随时随地响应投票。", + "new": "新增功能", + "noLoginRequired": "无需登录", + "noLoginRequiredDescription": "无需登录即可创建或参与投票.", + "notifications": "通知", + "notificationsDescription": "随时了解回复。当参与者对你的投票进行表决或评论时,将会收到通知。", + "openSource": "开源", + "openSourceDescription": "开放源代码,可通过GitHub获取", + "participant": "参与者", + "participantCount": "{count, plural, other {# 位参与者}}", + "perfect": "完美!", + "principles": "原则", + "principlesSubheading": "我们不一样", + "selfHostable": "可自托管", + "selfHostableDescription": "在自己的服务器上运行,数据完全掌控.", + "timeSlots": "时间段", + "timeSlotsDescription": "单独设置每个选项的起止时间。可根据参与者的时区自动调整,也可忽略时区差异。" + }, + "common": { + "blog": "博客", + "discussions": "讨论区", + "footerCredit": "由 @imlukevella 制作", + "footerSponsor": "此项目由用户资助。请考虑通过 捐赠 来支持它。", + "home": "主页", + "language": "语言", + "links": "链接", + "poweredBy": "Powered by", + "privacyPolicy": "隐私条款", + "starOnGithub": "在 GitHub 上 Star", + "support": "帮助", + "volunteerTranslator": "协助翻译本站" + }, + "errors": { + "notFoundTitle": "404 not found", + "notFoundDescription": "我们无法找到你想要的网页。", + "goToHome": "回到主页", + "startChat": "开始聊天" + }, + "optionCount": "{count, plural, other {# 个选项}}", + "participantCount": "{count, plural, other {# 位参与者}}" } diff --git a/apps/web/public/locales/zh/common.json b/apps/web/public/locales/zh/common.json deleted file mode 100644 index 8ccef85e1..000000000 --- a/apps/web/public/locales/zh/common.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "blog": "博客", - "discussions": "讨论区", - "footerCredit": "由 @imlukevella 制作", - "footerSponsor": "此项目由用户资助。请考虑通过 捐赠 来支持它。", - "home": "主页", - "language": "语言", - "links": "链接", - "poweredBy": "Powered by", - "privacyPolicy": "隐私条款", - "starOnGithub": "在 GitHub 上 Star", - "support": "帮助", - "volunteerTranslator": "协助翻译本站" -} diff --git a/apps/web/public/locales/zh/errors.json b/apps/web/public/locales/zh/errors.json deleted file mode 100644 index de814a4d1..000000000 --- a/apps/web/public/locales/zh/errors.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "notFoundTitle": "404 not found", - "notFoundDescription": "我们无法找到你想要的网页。", - "goToHome": "回到主页", - "startChat": "开始聊天" -} diff --git a/apps/web/public/locales/zh/homepage.json b/apps/web/public/locales/zh/homepage.json deleted file mode 100644 index ca2051a2c..000000000 --- a/apps/web/public/locales/zh/homepage.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "3Ls": "没错 — 有三个 L!", - "adFree": "无广告", - "adFreeDescription": "可以让你的广告屏蔽器休息一下了,这里没有它的用武之地", - "comments": "评论", - "commentsDescription": "参与者可以发表对所有人可见的评论", - "features": "特色功能", - "featuresSubheading": "智能调度", - "getStarted": "开始", - "heroSubText": "无需翻来翻去寻找合适的时间", - "heroText": "轻松安排
小组会议
", - "links": "链接", - "liveDemo": "试用", - "metaDescription": "通过投票安排最和适合时间。免费替代 Doodle。", - "metaTitle": "Rallly - 安排小组会议", - "mobileFriendly": "移动端友好", - "mobileFriendlyDescription": "在移动设备上效果很好,可以使参与者可以随时随地响应投票。", - "new": "新增功能", - "noLoginRequired": "无需登录", - "noLoginRequiredDescription": "无需登录即可创建或参与投票.", - "notifications": "通知", - "notificationsDescription": "随时了解回复。当参与者对你的投票进行表决或评论时,将会收到通知。", - "openSource": "开源", - "openSourceDescription": "开放源代码,可通过GitHub获取", - "participant": "参与者", - "participantCount_zero": "{{count}} 位参与者", - "participantCount_one": "{{count}} 位参与者", - "participantCount_two": "{{count}} 位参与者", - "participantCount_few": "{{count}} 位参与者", - "participantCount_many": "{{count}} 位参与者", - "participantCount_other": "{{count}} 位参与者", - "perfect": "完美!", - "principles": "原则", - "principlesSubheading": "我们不一样", - "selfHostable": "可自托管", - "selfHostableDescription": "在自己的服务器上运行,数据完全掌控.", - "timeSlots": "时间段", - "timeSlotsDescription": "单独设置每个选项的起止时间。可根据参与者的时区自动调整,也可忽略时区差异。" -} diff --git a/apps/web/src/components/admin-control.tsx b/apps/web/src/components/admin-control.tsx index 501a75fcc..9db2eb76c 100644 --- a/apps/web/src/components/admin-control.tsx +++ b/apps/web/src/components/admin-control.tsx @@ -11,7 +11,7 @@ import NotificationsToggle from "./poll/notifications-toggle"; import Sharing from "./sharing"; export const AdminControls = (props: { children?: React.ReactNode }) => { - const { t } = useTranslation("app"); + const { t } = useTranslation(); const { participants } = useParticipants(); diff --git a/apps/web/src/components/auth/login-form.tsx b/apps/web/src/components/auth/login-form.tsx index 35f9d4b3a..29c3bd1e1 100644 --- a/apps/web/src/components/auth/login-form.tsx +++ b/apps/web/src/components/auth/login-form.tsx @@ -19,7 +19,7 @@ const VerifyCode: React.FunctionComponent<{ const { register, handleSubmit, setError, formState } = useForm<{ code: string; }>(); - const { t } = useTranslation("app"); + const { t } = useTranslation(); const [resendStatus, setResendStatus] = React.useState< "ok" | "busy" | "disabled" >("ok"); @@ -131,7 +131,7 @@ export const RegisterForm: React.FunctionComponent<{ onRegistered: () => void; defaultValues?: Partial; }> = ({ onClickLogin, onRegistered, defaultValues }) => { - const { t } = useTranslation("app"); + const { t } = useTranslation(); const { register, handleSubmit, getValues, setError, formState } = useForm({ defaultValues, @@ -277,7 +277,7 @@ export const LoginForm: React.FunctionComponent<{ ) => void; onAuthenticated: () => void; }> = ({ onAuthenticated, onClickRegister }) => { - const { t } = useTranslation("app"); + const { t } = useTranslation(); const { register, handleSubmit, getValues, formState, setError } = useForm<{ email: string; }>(); diff --git a/apps/web/src/components/create-poll.tsx b/apps/web/src/components/create-poll.tsx index 15bf48201..1bf5f8401 100644 --- a/apps/web/src/components/create-poll.tsx +++ b/apps/web/src/components/create-poll.tsx @@ -36,7 +36,7 @@ export interface CreatePollPageProps { } const Page: React.FunctionComponent = () => { - const { t } = useTranslation("app"); + const { t } = useTranslation(); const router = useRouter(); diff --git a/apps/web/src/components/discussion/discussion.tsx b/apps/web/src/components/discussion/discussion.tsx index 5e974e569..e2a38f5f8 100644 --- a/apps/web/src/components/discussion/discussion.tsx +++ b/apps/web/src/components/discussion/discussion.tsx @@ -25,7 +25,7 @@ interface CommentForm { const Discussion: React.FunctionComponent = () => { const { dayjs } = useDayjs(); - const { t } = useTranslation("app"); + const { t } = useTranslation(); const { poll, admin } = usePoll(); const pollId = poll.id; diff --git a/apps/web/src/components/error-page.tsx b/apps/web/src/components/error-page.tsx index 8a198eaf1..b0ba31df6 100644 --- a/apps/web/src/components/error-page.tsx +++ b/apps/web/src/components/error-page.tsx @@ -15,7 +15,7 @@ const ErrorPage: React.FunctionComponent = ({ title, description, }) => { - const { t } = useTranslation(["common", "errors"]); + const { t } = useTranslation(); return (
@@ -31,14 +31,14 @@ const ErrorPage: React.FunctionComponent = ({

{description}

- {t("errors:goToHome")} + {t("errors.goToHome")} - {t("support")} + {t("common.support")}
diff --git a/apps/web/src/components/feedback.tsx b/apps/web/src/components/feedback.tsx index 96b800469..bf4971797 100644 --- a/apps/web/src/components/feedback.tsx +++ b/apps/web/src/components/feedback.tsx @@ -10,7 +10,7 @@ import { useModalState } from "@/components/modal/use-modal"; import Tooltip from "@/components/tooltip"; const FeedbackForm = (props: { onClose: () => void }) => { - const { t } = useTranslation("app"); + const { t } = useTranslation(); const sendFeedback = trpc.feedback.send.useMutation(); const { handleSubmit, register, formState } = useForm<{ content: string }>(); @@ -82,7 +82,7 @@ const FeedbackForm = (props: { onClose: () => void }) => { }; const FeedbackButton = () => { - const { t } = useTranslation("app"); + const { t } = useTranslation(); const [isVisible, show, close] = useModalState(); if (isVisible) { return ; diff --git a/apps/web/src/components/forms/poll-details-form.tsx b/apps/web/src/components/forms/poll-details-form.tsx index 2f13dfe70..d8b05f43a 100644 --- a/apps/web/src/components/forms/poll-details-form.tsx +++ b/apps/web/src/components/forms/poll-details-form.tsx @@ -15,7 +15,7 @@ export interface PollDetailsData { export const PollDetailsForm: React.FunctionComponent< PollFormProps > = ({ name, defaultValues, onSubmit, onChange, className }) => { - const { t } = useTranslation("app"); + const { t } = useTranslation(); const { handleSubmit, register, diff --git a/apps/web/src/components/forms/poll-options-form/date-navigation-toolbar.tsx b/apps/web/src/components/forms/poll-options-form/date-navigation-toolbar.tsx index 634a74e0b..59282d993 100644 --- a/apps/web/src/components/forms/poll-options-form/date-navigation-toolbar.tsx +++ b/apps/web/src/components/forms/poll-options-form/date-navigation-toolbar.tsx @@ -13,7 +13,7 @@ export interface DateNavigationToolbarProps { const DateNavigationToolbar: React.FunctionComponent< DateNavigationToolbarProps > = ({ year, label, onPrevious, onToday, onNext }) => { - const { t } = useTranslation("app"); + const { t } = useTranslation(); return (
diff --git a/apps/web/src/components/forms/poll-options-form/month-calendar/month-calendar.tsx b/apps/web/src/components/forms/poll-options-form/month-calendar/month-calendar.tsx index 072c74743..65b65b4bf 100644 --- a/apps/web/src/components/forms/poll-options-form/month-calendar/month-calendar.tsx +++ b/apps/web/src/components/forms/poll-options-form/month-calendar/month-calendar.tsx @@ -38,7 +38,7 @@ const MonthCalendar: React.FunctionComponent = ({ onChangeDuration, }) => { const { dayjs, weekStartsOn } = useDayjs(); - const { t } = useTranslation("app"); + const { t } = useTranslation(); const isTimedEvent = options.some((option) => option.type === "timeSlot"); const optionsByDay = React.useMemo(() => { diff --git a/apps/web/src/components/forms/poll-options-form/poll-options-form.tsx b/apps/web/src/components/forms/poll-options-form/poll-options-form.tsx index 25704821d..63ed2cb9c 100644 --- a/apps/web/src/components/forms/poll-options-form/poll-options-form.tsx +++ b/apps/web/src/components/forms/poll-options-form/poll-options-form.tsx @@ -25,7 +25,7 @@ export type PollOptionsData = { const PollOptionsForm: React.FunctionComponent< PollFormProps & { title?: string } > = ({ name, defaultValues, onSubmit, onChange, title, className }) => { - const { t } = useTranslation("app"); + const { t } = useTranslation(); const { control, handleSubmit, watch, setValue, formState } = useForm({ defaultValues: { diff --git a/apps/web/src/components/forms/user-details-form.tsx b/apps/web/src/components/forms/user-details-form.tsx index 6cf043938..4fc003f4e 100644 --- a/apps/web/src/components/forms/user-details-form.tsx +++ b/apps/web/src/components/forms/user-details-form.tsx @@ -14,7 +14,7 @@ export interface UserDetailsData { export const UserDetailsForm: React.FunctionComponent< PollFormProps > = ({ name, defaultValues, onSubmit, onChange, className }) => { - const { t } = useTranslation("app"); + const { t } = useTranslation(); const { handleSubmit, register, diff --git a/apps/web/src/components/home.tsx b/apps/web/src/components/home.tsx index d920d2a4a..00c894b81 100644 --- a/apps/web/src/components/home.tsx +++ b/apps/web/src/components/home.tsx @@ -8,12 +8,12 @@ import Hero from "./home/hero"; import PageLayout from "./layouts/page-layout"; const Home: React.FunctionComponent = () => { - const { t } = useTranslation("homepage"); + const { t } = useTranslation(); return ( { - const { t } = useTranslation("homepage"); + const { t } = useTranslation(); return (
-

{t("principles")}

-

{t("principlesSubheading")}

+

{t("homepage.principles")}

+

{t("homepage.principlesSubheading")}

-

{t("noLoginRequired")}

+

{t("homepage.noLoginRequired")}

- {t("noLoginRequiredDescription")} + {t("homepage.noLoginRequiredDescription")}
-

{t("openSource")}

+

{t("homepage.openSource")}

{
-

{t("selfHostable")}

+

{t("homepage.selfHostable")}

- {t("selfHostableDescription")} + {t("homepage.selfHostableDescription")}
-

{t("adFree")}

+

{t("homepage.adFree")}

- {t("adFreeDescription")} + {t("homepage.adFreeDescription")}
diff --git a/apps/web/src/components/home/features.tsx b/apps/web/src/components/home/features.tsx index 020218885..ebf07acfc 100644 --- a/apps/web/src/components/home/features.tsx +++ b/apps/web/src/components/home/features.tsx @@ -3,39 +3,41 @@ import { useTranslation } from "next-i18next"; import * as React from "react"; const Features: React.FunctionComponent = () => { - const { t } = useTranslation("homepage"); + const { t } = useTranslation(); return (
-

{t("features")}

-

{t("featuresSubheading")}

+

{t("homepage.features")}

+

{t("homepage.featuresSubheading")}

-

{t("timeSlots")}

-

{t("timeSlotsDescription")}

+

+ {t("homepage.timeSlots")} +

+

{t("homepage.timeSlotsDescription")}

-

{t("mobileFriendly")}

-

{t("mobileFriendlyDescription")}

+

{t("homepage.mobileFriendly")}

+

{t("homepage.mobileFriendlyDescription")}

-

{t("notifications")}

-

{t("notificationsDescription")}

+

{t("homepage.notifications")}

+

{t("homepage.notificationsDescription")}

-

{t("comments")}

-

{t("commentsDescription")}

+

{t("homepage.comments")}

+

{t("homepage.commentsDescription")}

diff --git a/apps/web/src/components/home/hero.tsx b/apps/web/src/components/home/hero.tsx index 9da40cf43..5815da75f 100644 --- a/apps/web/src/components/home/hero.tsx +++ b/apps/web/src/components/home/hero.tsx @@ -9,7 +9,7 @@ import PollDemo from "./poll-demo"; import ScribbleArrow from "./scribble-arrow.svg"; const Hero: React.FunctionComponent = () => { - const { t } = useTranslation("homepage"); + const { t } = useTranslation(); const names = ["Peter", "Christine", "Samantha", "Joseph"]; return ( @@ -18,21 +18,23 @@ const Hero: React.FunctionComponent = () => {

, s: , }} />

-
{t("heroSubText")}
+
+ {t("homepage.heroSubText")} +
- {t("getStarted")} + {t("homepage.getStarted")} { className="rounded-md bg-slate-500 px-5 py-3 font-semibold text-white shadow-sm transition-all hover:bg-slate-500/90 hover:text-white hover:no-underline hover:shadow-md active:bg-slate-600/90" rel="nofollow" > - {t("liveDemo")} + {t("homepage.liveDemo")}
@@ -65,7 +67,7 @@ const Hero: React.FunctionComponent = () => { animate={{ opacity: 1, translateY: 0 }} transition={{ type: "spring", delay: 2 }} > - {t("perfect")} 🤩 + {t("homepage.perfect")} 🤩 { - const { t } = useTranslation("homepage"); + const { t } = useTranslation(); const { dayjs } = useDayjs(); return ( diff --git a/apps/web/src/components/layouts/page-layout.tsx b/apps/web/src/components/layouts/page-layout.tsx index 0b73902da..cb7c12684 100644 --- a/apps/web/src/components/layouts/page-layout.tsx +++ b/apps/web/src/components/layouts/page-layout.tsx @@ -19,7 +19,7 @@ const Menu: React.FunctionComponent<{ className: string }> = ({ className, }) => { const { pathname } = useRouter(); - const { t } = useTranslation("common"); + const { t } = useTranslation(); return (
diff --git a/apps/web/src/components/layouts/page-layout/footer.tsx b/apps/web/src/components/layouts/page-layout/footer.tsx index 125dd72e0..91c5596f8 100644 --- a/apps/web/src/components/layouts/page-layout/footer.tsx +++ b/apps/web/src/components/layouts/page-layout/footer.tsx @@ -17,7 +17,7 @@ import Vercel from "~/vercel-logotype-dark.svg"; import { LanguageSelect } from "../../poll/language-selector"; const Footer: React.FunctionComponent = () => { - const { t } = useTranslation("common"); + const { t } = useTranslation(); const router = useRouter(); return (
@@ -29,7 +29,7 @@ const Footer: React.FunctionComponent = () => {

{

{ className="hover:bg-primary-600 focus:ring-primary-600 active:bg-primary-600 inline-flex h-8 items-center rounded-full bg-slate-100 pl-2 pr-3 text-sm text-slate-500 transition-colors hover:text-white hover:no-underline focus:ring-2 focus:ring-offset-1" > - {t("starOnGithub")} + {t("common.starOnGithub")}
-
{t("links")}
+
{t("homepage.links")}
  • - {t("discussions")} + {t("common.discussions")}
  • @@ -93,7 +93,7 @@ const Footer: React.FunctionComponent = () => { href="https://blog.rallly.co" className="inline-block font-normal text-slate-500 hover:text-slate-800 hover:no-underline" > - {t("blog")} + {t("common.blog")}
  • @@ -101,13 +101,13 @@ const Footer: React.FunctionComponent = () => { href="https://support.rallly.co" className="inline-block font-normal text-slate-500 hover:text-slate-800 hover:no-underline" > - {t("support")} + {t("common.support")}
@@ -155,7 +155,7 @@ const Footer: React.FunctionComponent = () => { href="/privacy-policy" className="inline-block font-normal text-slate-500 hover:text-slate-800 hover:no-underline" > - {t("privacyPolicy")} + {t("common.privacyPolicy")}
  • @@ -163,7 +163,7 @@ const Footer: React.FunctionComponent = () => { href="/cookie-policy" className="inline-block font-normal text-slate-500 hover:text-slate-800 hover:no-underline" > - {t("cookiePolicy")} + {t("common.cookiePolicy")}
  • @@ -171,7 +171,7 @@ const Footer: React.FunctionComponent = () => { href="/terms-of-use" className="inline-block font-normal text-slate-500 hover:text-slate-800 hover:no-underline" > - {t("termsOfUse")} + {t("common.termsOfUse")}
  • diff --git a/apps/web/src/components/layouts/standard-layout/mobile-navigation.tsx b/apps/web/src/components/layouts/standard-layout/mobile-navigation.tsx index a1fdbd689..f2c8a02e5 100644 --- a/apps/web/src/components/layouts/standard-layout/mobile-navigation.tsx +++ b/apps/web/src/components/layouts/standard-layout/mobile-navigation.tsx @@ -26,7 +26,7 @@ import { UserDropdown } from "./user-dropdown"; export const MobileNavigation = (props: { className?: string }) => { const { user } = useUser(); - const { t } = useTranslation(["common", "app"]); + const { t } = useTranslation(); const [isPinned, setIsPinned] = React.useState(false); const modalContext = useModalContext(); @@ -73,14 +73,10 @@ export const MobileNavigation = (props: { className?: string }) => { } > - + {process.env.NEXT_PUBLIC_BETA === "1" ? ( @@ -106,7 +102,7 @@ export const MobileNavigation = (props: { className?: string }) => { {user ? null : ( - {t("app:login")} + {t("login")} )} @@ -125,7 +121,7 @@ export const MobileNavigation = (props: { className?: string }) => {
    - {user.isGuest ? t("app:guest") : user.shortName} + {user.isGuest ? t("guest") : user.shortName}
    } @@ -140,9 +136,7 @@ export const MobileNavigation = (props: { className?: string }) => { className="group flex items-center whitespace-nowrap rounded px-2 py-1 font-medium transition-colors hover:bg-gray-200 hover:text-slate-600 hover:no-underline active:bg-gray-300" > - - {t("app:preferences")} - + {t("preferences")} diff --git a/apps/web/src/components/layouts/standard-layout/user-dropdown.tsx b/apps/web/src/components/layouts/standard-layout/user-dropdown.tsx index d007580d8..80203fa75 100644 --- a/apps/web/src/components/layouts/standard-layout/user-dropdown.tsx +++ b/apps/web/src/components/layouts/standard-layout/user-dropdown.tsx @@ -17,7 +17,7 @@ export const UserDropdown: React.FunctionComponent = ({ ...forwardProps }) => { const { logout, user } = useUser(); - const { t } = useTranslation(["common", "app"]); + const { t } = useTranslation(); const { openLoginModal } = useLoginModal(); const modalContext = useModalContext(); if (!user) { @@ -29,7 +29,7 @@ export const UserDropdown: React.FunctionComponent = ({ {user.isGuest ? ( { modalContext.render({ showClose: true, @@ -41,14 +41,14 @@ export const UserDropdown: React.FunctionComponent = ({
    - {t("app:guest")} + {t("guest")}
    {user.shortName}
    -

    {t("app:guestSessionNotice")}

    +

    {t("guestSessionNotice")}

    @@ -71,40 +71,36 @@ export const UserDropdown: React.FunctionComponent = ({ ) : null} {user.isGuest ? ( ) : null} {user.isGuest ? ( { modalContext.render({ - title: t("app:areYouSure"), - description: t("app:endingGuestSessionNotice"), + title: t("areYouSure"), + description: t("endingGuestSessionNotice"), onOk: logout, okButtonProps: { type: "danger", }, - okText: t("app:endSession"), - cancelText: t("app:cancel"), + okText: t("endSession"), + cancelText: t("cancel"), }); }} /> ) : ( - + )} ); diff --git a/apps/web/src/components/name-input.tsx b/apps/web/src/components/name-input.tsx index a9cc735d5..ad1d84e3a 100644 --- a/apps/web/src/components/name-input.tsx +++ b/apps/web/src/components/name-input.tsx @@ -17,7 +17,7 @@ const NameInput: React.ForwardRefRenderFunction< HTMLInputElement, NameInputProps > = ({ value, defaultValue, className, ...forwardProps }, ref) => { - const { t } = useTranslation("app"); + const { t } = useTranslation(); return (
    {value ? ( diff --git a/apps/web/src/components/new-participant-modal.tsx b/apps/web/src/components/new-participant-modal.tsx index aa14ac0c8..5731f1ad4 100644 --- a/apps/web/src/components/new-participant-modal.tsx +++ b/apps/web/src/components/new-participant-modal.tsx @@ -30,7 +30,7 @@ const VoteSummary = ({ className?: string; votes: { optionId: string; type: VoteType }[]; }) => { - const { t } = useTranslation("app"); + const { t } = useTranslation(); const voteByType = votes.reduce>( (acc, vote) => { acc[vote.type] = [...acc[vote.type], vote.optionId]; @@ -71,7 +71,7 @@ const VoteSummary = ({ }; export const NewParticipantModal = (props: NewParticipantModalProps) => { - const { t } = useTranslation("app"); + const { t } = useTranslation(); const { register, formState, setFocus, handleSubmit } = useForm(); const { requiredString, validEmail } = useFormValidation(); diff --git a/apps/web/src/components/participant-dropdown.tsx b/apps/web/src/components/participant-dropdown.tsx index 9d2264a2e..9203cf521 100644 --- a/apps/web/src/components/participant-dropdown.tsx +++ b/apps/web/src/components/participant-dropdown.tsx @@ -30,7 +30,7 @@ export const ParticipantDropdown = ({ participant: Participant; onEdit: () => void; }) => { - const { t } = useTranslation("app"); + const { t } = useTranslation(); const confirmDeleteParticipant = useDeleteParticipantModal(); const [isChangeNameModalVisible, showChangeNameModal, hideChangeNameModal] = @@ -137,7 +137,7 @@ const ChangeNameModal = (props: { const { requiredString } = useFormValidation(); - const { t } = useTranslation("app"); + const { t } = useTranslation(); return (
    diff --git a/apps/web/src/components/participants-provider.tsx b/apps/web/src/components/participants-provider.tsx index 9e178f016..ec294f2a1 100644 --- a/apps/web/src/components/participants-provider.tsx +++ b/apps/web/src/components/participants-provider.tsx @@ -19,7 +19,7 @@ export const ParticipantsProvider: React.FunctionComponent<{ children?: React.ReactNode; pollId: string; }> = ({ children, pollId }) => { - const { t } = useTranslation("app"); + const { t } = useTranslation(); const { data: participants } = trpc.polls.participants.list.useQuery({ pollId, diff --git a/apps/web/src/components/poll-context.tsx b/apps/web/src/components/poll-context.tsx index d11839009..2bb09c5c8 100644 --- a/apps/web/src/components/poll-context.tsx +++ b/apps/web/src/components/poll-context.tsx @@ -56,7 +56,7 @@ export const PollContextProvider: React.FunctionComponent<{ admin: boolean; children?: React.ReactNode; }> = ({ poll, urlId, admin, children }) => { - const { t } = useTranslation("app"); + const { t } = useTranslation(); const { participants } = useParticipants(); const { user, ownsObject } = useUser(); const [targetTimeZone, setTargetTimeZone] = diff --git a/apps/web/src/components/poll.tsx b/apps/web/src/components/poll.tsx index 9663495e7..f9175cc8b 100644 --- a/apps/web/src/components/poll.tsx +++ b/apps/web/src/components/poll.tsx @@ -18,7 +18,7 @@ import { usePoll } from "./poll-context"; const checkIfWideScreen = () => window.innerWidth > 640; export const Poll = (props: { children?: React.ReactNode }) => { - const { t } = useTranslation("app"); + const { t } = useTranslation(); const { poll } = usePoll(); useTouchBeacon(poll.id); diff --git a/apps/web/src/components/poll/desktop-poll.tsx b/apps/web/src/components/poll/desktop-poll.tsx index 2a04553a3..692a2a6e3 100644 --- a/apps/web/src/components/poll/desktop-poll.tsx +++ b/apps/web/src/components/poll/desktop-poll.tsx @@ -20,7 +20,7 @@ import { const minSidebarWidth = 200; const Poll: React.FunctionComponent = () => { - const { t } = useTranslation("app"); + const { t } = useTranslation(); const { poll, options, targetTimeZone, setTargetTimeZone, userAlreadyVoted } = usePoll(); diff --git a/apps/web/src/components/poll/desktop-poll/participant-row-form.tsx b/apps/web/src/components/poll/desktop-poll/participant-row-form.tsx index 0a06677a0..44a3a884f 100644 --- a/apps/web/src/components/poll/desktop-poll/participant-row-form.tsx +++ b/apps/web/src/components/poll/desktop-poll/participant-row-form.tsx @@ -24,7 +24,7 @@ const ParticipantRowForm: React.ForwardRefRenderFunction< HTMLFormElement, ParticipantRowFormProps > = ({ defaultValues, onSubmit, name, isYou, className, onCancel }, ref) => { - const { t } = useTranslation("app"); + const { t } = useTranslation(); const { columnWidth, scrollPosition, diff --git a/apps/web/src/components/poll/language-selector.tsx b/apps/web/src/components/poll/language-selector.tsx index ac2260a43..c0966b7d0 100644 --- a/apps/web/src/components/poll/language-selector.tsx +++ b/apps/web/src/components/poll/language-selector.tsx @@ -8,7 +8,7 @@ export const LanguageSelect: React.FunctionComponent<{ className?: string; onChange?: (language: string) => void; }> = ({ className, onChange }) => { - const { i18n } = useTranslation("common"); + const { i18n } = useTranslation(); return (