From 3b36125f20422090020c17b6c4957b31de4a8131 Mon Sep 17 00:00:00 2001 From: NotXia <35894453+NotXia@users.noreply.github.com> Date: Sun, 19 Mar 2023 12:14:10 +0100 Subject: [PATCH] Improved locales handling --- src/App.vue | 22 +---- src/components/cookie/Cookie.vue | 24 +---- .../easteregg-banner/EastereggBanner.vue | 13 +-- .../easteregg-banner/eggs/Cookie.vue | 18 +--- .../easteregg-banner/eggs/Future.vue | 18 +--- .../easteregg-banner/eggs/PictureBright.vue | 25 ++--- .../easteregg-banner/eggs/PictureNoLight.vue | 25 ++--- .../easteregg-banner/eggs/Something.vue | 16 +-- .../language-selector/LanguageSelector.vue | 9 +- src/components/navbar/Navbar.vue | 2 +- .../profile-picture/ProfilePicture.vue | 16 +-- .../random-something/RandomSomething.vue | 18 +--- src/locales/about.ts | 16 +++ .../locale.json => locales/contacts.ts} | 2 +- src/locales/cookie.ts | 22 +++++ src/locales/easteregg.ts | 44 +++++++++ .../home/locale.json => locales/home.ts} | 2 +- .../navbar/locale.json => locales/navbar.ts} | 2 +- src/locales/profile-picture.ts | 14 +++ src/locales/projects.ts | 98 +++++++++++++++++++ .../resume/locale.js => locales/resume.ts} | 22 ++++- src/locales/something.ts | 16 +++ src/locales/title.ts | 20 ++++ src/utilities/locale_handler.ts | 5 +- src/views/about/About.vue | 18 +--- src/views/contacts/Contacts.vue | 2 +- src/views/home/Home.vue | 2 +- src/views/projects/Projects.vue | 2 +- src/views/projects/cards/AnimalHouse.vue | 33 ++----- src/views/projects/cards/Imaging.vue | 20 +--- src/views/projects/cards/MNKGame.vue | 20 +--- src/views/projects/cards/NotXiaGithubio.vue | 14 +-- src/views/projects/cards/PandOSplus.vue | 20 +--- .../projects/cards/PathfindingVisualizer.vue | 14 +-- src/views/projects/cards/Platform.vue | 20 +--- .../projects/cards/SortingVisualizer.vue | 14 +-- src/views/projects/cards/TweetAnalysis.vue | 20 +--- src/views/projects/cards/Wirefilter.vue | 20 +--- src/views/projects/locale.json | 12 --- src/views/resume/Resume.vue | 18 +--- src/views/resume/sections/Certificates.vue | 5 +- src/views/resume/sections/Education.vue | 3 +- .../resume/sections/ExperienceTimeline.vue | 11 +-- src/views/resume/sections/Other.vue | 5 +- src/views/resume/sections/Skills.vue | 3 +- src/views/resume/sections/Work.vue | 3 +- 46 files changed, 360 insertions(+), 388 deletions(-) create mode 100644 src/locales/about.ts rename src/{views/contacts/locale.json => locales/contacts.ts} (85%) create mode 100644 src/locales/cookie.ts create mode 100644 src/locales/easteregg.ts rename src/{views/home/locale.json => locales/home.ts} (95%) rename src/{components/navbar/locale.json => locales/navbar.ts} (95%) create mode 100644 src/locales/profile-picture.ts create mode 100644 src/locales/projects.ts rename src/{views/resume/locale.js => locales/resume.ts} (86%) create mode 100644 src/locales/something.ts create mode 100644 src/locales/title.ts delete mode 100644 src/views/projects/locale.json diff --git a/src/App.vue b/src/App.vue index 07032ca..fa635c8 100644 --- a/src/App.vue +++ b/src/App.vue @@ -23,27 +23,9 @@ import EastereggBanner from "@/components/easteregg-banner/EastereggBanner.vue"; import { useRoute } from 'vue-router' import { useI18n } from "vue-i18n"; + import title_locale from "@/locales/title"; - const { t, locale } = useI18n({ messages: { - "en": { - "title_home": "Hello", - "title_about": "About", - "title_projects": "Projects", - "title_resume": "Résumé", - "title_contacts": "Say hello", - - "log_hello": "Hello 🐡" - }, - "it": { - "title_home": "Ciao", - "title_about": "Chi sono", - "title_projects": "Progetti", - "title_resume": "CV", - "title_contacts": "Salutami", - - "log_hello": "Ciao 🐡" - } - } }); + const { t, locale } = useI18n({ messages: title_locale }); const route = useRoute() const easteregg = ref(); diff --git a/src/components/cookie/Cookie.vue b/src/components/cookie/Cookie.vue index 03a8446..d1c07d9 100644 --- a/src/components/cookie/Cookie.vue +++ b/src/components/cookie/Cookie.vue @@ -29,29 +29,9 @@ import { shouldShowCookie, acceptCookie, refuseCookie } from "@/utilities/cookie_handler"; import { useI18n } from "vue-i18n"; import { addFoundEasterEgg } from "@/utilities/easteregg_handler"; + import locale from "@/locales/cookie"; - const { t } = useI18n({ messages: { - "en": { - "cookie policy title": "Cookie policy", - "cookie policy": "This website uses cookies but not for analysis purposes and they are not sent to third parties. " + - "The only cookies here are those that I ate this morning, although I prefer a savory breakfast. " + - "I don't know why you are reading this, but thanks for keeping me company, I wish you a great day. " + - "If you would like some cookies too, do not hesitate to click on the following link:", - "cookie policy link": "Click here to read the policy", - "accept": "Accept", - "reject": "Reject" - }, - "it": { - "cookie policy title": "Informativa cookie", - "cookie policy": "Questo sito utilizza cookie ma non per fini di profilazione e non sono inviati a terze parti. " + - "Gli unici cookie presenti sono quelli che ho mangiato questa mattina, anche se in realtà preferisco una colazione salata. " + - "Non so perché stai leggendo questo, ma ti ringrazio per avermi fatto compagnia e ti auguro una buona giornata. " + - "Se gradisci dei biscotti, non esitare a cliccare l'informativa al seguente link:", - "cookie policy link": "Clicca qui per l'informativa cookie", - "accept": "Accetta", - "reject": "Rifiuta" - } - } }); + const { t } = useI18n({ messages: locale }); const container_cookie = ref(); const canvas_cookie = ref(); diff --git a/src/components/easteregg-banner/EastereggBanner.vue b/src/components/easteregg-banner/EastereggBanner.vue index c8d5632..a4d0c51 100644 --- a/src/components/easteregg-banner/EastereggBanner.vue +++ b/src/components/easteregg-banner/EastereggBanner.vue @@ -35,6 +35,7 @@ import SomethingEgg from "./eggs/Something.vue"; import PictureBrightEgg from "./eggs/PictureBright.vue"; import PictureNoLightEgg from "./eggs/PictureNoLight.vue"; + import locale from "@/locales/easteregg"; const show_banner = ref(false); const easteregg = ref(""); @@ -42,16 +43,7 @@ const total_eastereggs = ref(getTotalEasterEggsCount()); const found_eastereggs = ref(getFoundEasterEggsCount()); - const { t } = useI18n({ messages: { - "en": { - "easter eggs found": "easter eggs found", - "all easter eggs found": "You found all easter eggs 🥚" - }, - "it": { - "easter eggs found": "easter egg trovati", - "all easter eggs found": "Hai trovato tutti gli easter egg 🥚" - } - } }); + const { t } = useI18n({ messages: locale }); let current_dismiss_timeout:number|null = null; @@ -59,7 +51,6 @@ function show(easteregg_name:string) { easteregg.value = easteregg_name; found_eastereggs.value = getFoundEasterEggsCount(); - console.log(getFoundEasterEggsCount()) show_banner.value = true; if (current_dismiss_timeout) { clearTimeout(current_dismiss_timeout) } diff --git a/src/components/easteregg-banner/eggs/Cookie.vue b/src/components/easteregg-banner/eggs/Cookie.vue index 49a9cd1..59d0956 100644 --- a/src/components/easteregg-banner/eggs/Cookie.vue +++ b/src/components/easteregg-banner/eggs/Cookie.vue @@ -8,8 +8,8 @@
{{ t("title") }}
-{{ t("description") }}
+{{ t("cookie.title") }}
+{{ t("cookie.description") }}
{{ t("title") }}
-{{ t("description") }}
+{{ t("future.title") }}
+{{ t("future.description") }}
{{ t("title") }}
-{{ t("description") }}
+{{ t("bright.title") }}
+{{ t("bright.description") }}
+{{ t("bright_either.description") }}
{{ t("title") }}
-{{ t("description") }}
+{{ t("dark.title") }}
+{{ t("dark.description") }}
+{{ t("dark_either.description") }}
{{ t("title") }}
-{{ t("description") }}
+{{ t("something.title") }}
+{{ t("something.description") }}