From b277d19bae582728daefd3792b9259baa7620ec5 Mon Sep 17 00:00:00 2001 From: FleetAdmiralJakob Date: Thu, 7 Mar 2024 18:43:17 +0100 Subject: [PATCH 1/4] chore: added indonesian to the next config --- .idea/.gitignore | 2 ++ apps/web/next.config.mjs | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/.idea/.gitignore b/.idea/.gitignore index 13566b81..a9d7db9c 100644 --- a/.idea/.gitignore +++ b/.idea/.gitignore @@ -6,3 +6,5 @@ # Datasource local storage ignored files /dataSources/ /dataSources.local.xml +# GitHub Copilot persisted chat sessions +/copilot/chatSessions diff --git a/apps/web/next.config.mjs b/apps/web/next.config.mjs index b81bc506..b66ab949 100644 --- a/apps/web/next.config.mjs +++ b/apps/web/next.config.mjs @@ -32,7 +32,7 @@ const config = withMyBundleAnalyzer(withPWA( transpilePackages: ['@weatherio/api', '@weatherio/ui', '@weatherio/types', '@weatherio/city-data'], i18n: { defaultLocale: 'en', - locales: ['en', 'de'] + locales: ['en', 'de', 'id'] } })) ) From 9eace32a12ce8411444b539ef027d2658659ccde Mon Sep 17 00:00:00 2001 From: FleetAdmiralJakob Date: Fri, 8 Mar 2024 18:48:01 +0100 Subject: [PATCH 2/4] feat: Added the indonesian translation --- apps/web/src/assets/indonesian-flag.png | Bin 0 -> 13457 bytes apps/web/src/locales/de.ts | 2 + apps/web/src/locales/en.ts | 2 + apps/web/src/locales/id.ts | 189 ++++++++++++++++++++++ apps/web/src/locales/index.ts | 1 + apps/web/src/pages/contributors/index.tsx | 3 +- apps/web/src/pages/settings/index.tsx | 20 +++ 7 files changed, 216 insertions(+), 1 deletion(-) create mode 100644 apps/web/src/assets/indonesian-flag.png create mode 100644 apps/web/src/locales/id.ts diff --git a/apps/web/src/assets/indonesian-flag.png b/apps/web/src/assets/indonesian-flag.png new file mode 100644 index 0000000000000000000000000000000000000000..54a863663eadddbf6ff256762f20a5114412dfa9 GIT binary patch literal 13457 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 W;o$E4xI$Qm1{h_nTZK0*p8gNT@{L*m literal 0 HcmV?d00001 diff --git a/apps/web/src/locales/de.ts b/apps/web/src/locales/de.ts index 27d11fa4..d3050fb4 100644 --- a/apps/web/src/locales/de.ts +++ b/apps/web/src/locales/de.ts @@ -36,6 +36,7 @@ export default { "settings.english": "Englisch", "settings.german": "Deutsch", + "settings.indonesian": "Indonesisch", // locationsettings page translations "locationsettings.add new location": "Füge einen Ort hinzu", @@ -187,4 +188,5 @@ export default { "contributors.founder": "Gründer", "contributors.engineer": "Entwickler", "contributors.designer": "Designer", + "contributors.translator": "Übersetzer", } as const; diff --git a/apps/web/src/locales/en.ts b/apps/web/src/locales/en.ts index 323d0a78..9024cfdb 100644 --- a/apps/web/src/locales/en.ts +++ b/apps/web/src/locales/en.ts @@ -36,6 +36,7 @@ export default { "settings.english": "English", "settings.german": "German", + "settings.indonesian": "Indonesian", // locationsettings page translations "locationsettings.add new location": "Add new location", @@ -184,4 +185,5 @@ export default { "contributors.founder": "Founder", "contributors.engineer": "Engineer", "contributors.designer": "Designer", + "contributors.translator": "Translator", } as const; diff --git a/apps/web/src/locales/id.ts b/apps/web/src/locales/id.ts new file mode 100644 index 00000000..dccf8ad3 --- /dev/null +++ b/apps/web/src/locales/id.ts @@ -0,0 +1,189 @@ +export default { + // 404 page translations + "404.title": "404 - Halaman Tidak Ditemukan", + + // common translations + "common.title": "Weather.io", + "common.location": "Indonesia", + + "common.start button": "Temukan lokasimu", + "common.share button": "Bagikan", + "common.menu home": "Beranda", + "common.menu locations": "Lokasi", + "common.menu settings": "Pengaturan", + "common.menu contact": "Kontak", + "common.footer legal": "Hukum", + "common.footer contributors": "Kontributor", + + "common.search page title": "Cari - Weather.io", + + "common.miles per hour": "Mil per jam", + "common.kilometers per hour": "Kilometer per jam", + "common.knots": "Knots", + "common.meters per second": "Meter per detik", + "common.beaufort": "Beaufort", + "common.hectopascals": "Hectopascals", + + "common.share text": "Lihat halaman ini: ", + + "common.title 404 page": "404: This page could not be found", + "common.title offline page": "Offline", + + // settings page translations + "settings.temperature units": "Satuan suhu", + "settings.wind speed units": "Satuan kecepatan angin", + "settings.language": "Bahasa", + + "settings.english": "Inggris", + "settings.german": "Jerman", + "settings.indonesian": "Indonesia", + + // locationsettings page translations + "locationsettings.add new location": "Tambah lokasi baru", + "locationsettings.add new location button": "Tambah lokasi baru", + "locationsettings.search input placeholder": "Cari lokasi", + + "locationsettings.at least one city toast": + "Anda harus memilih setidaknya satu kota", + "locationsettings.switched to city toast": "Beralih ke kota!", + "locationsettings.added city toast": "Menambahkan kota baru!", + "locationsettings.city not found toast": "Kota tidak ditemukan!", + "locationsettings.try again toast": "Coba lagi!", + + "locationsettings.my location button": "Pilih lokasi", + + // offline page translations + "offline.title": "Anda sedang offline", + "offline.message": "Silakan periksa koneksi internet Anda dan coba lagi.", + + // search page translations + "search.search input placeholder": "Cari lokasi", + "search.continue button": "Lanjutkan -->", + + "search.my location button": "Pilih lokasi", + + // legal page translations + "legal.main text": + "Isi dari situs web ini telah diperiksa dan dibuat dengan hati-hati. Namun, kami tidak menjamin akurasi, kelengkapan, dan ketepatan waktu informasi yang disediakan. Kami tidak bertanggung jawab atas kerusakan atau kerugian yang timbul dari penggunaan situs web ini. Para operator halaman yang terhubung bertanggung jawab sepenuhnya atas kontennya. Setiap tanggung jawab atas konten eksternal secara tegas dikecualikan.", + "legal.germany": "Jerman", + "legal.information disclaimer": "Informasi sesuai dengan § 5 TMG", + + // home page translations + "home.today": "Hari Ini", + "home.9 day forecast": "Perkiraan 9 Hari", + "home.precipitation": "Presipitasi", + "home.feels like": "Terasa Seperti", + "home.visibility": "Visibilitas", + "home.wind pressure": "Angin & Tekanan", + "home.air quality": "Kualitas Udara", + "home.pressure": "Tekanan", + "home.speed": "Kecepatan", + "home.moon phase": "Fase Bulan", + + "home.early morning": "Pagi Awal", + "home.morning": "Pagi", + "home.noon": "Siang", + "home.afternoon": "Sore", + "home.night": "Malam", + + "home.feels like phrase extremely warm": "The sun is scorching today!", + "home.feels like phrase very warm": + "Matahari mungkin mencoba untuk mendinginkan!", + "home.feels like phrase warm": "Bahkan es krim pun merasa terlalu hangat!", + "home.feels like phrase slightly more warm": "It's a toasty day!", + "home.feels like phrase slightly warm": "A perfect day for a picnic!", + "home.feels like phrase neutral": + "Just the right temperature, not too hot, not too cold.", + "home.feels like phrase slightly cold": "A light jacket might be needed.", + "home.feels like phrase slightly more cold": "It's a frosty day!", + "home.feels like phrase cold": "Penguin memesan cokelat panas karena dingin!", + "home.feels like phrase very cold": + "Cuaca yang dingin membuat bahkan boneka salju pun menggigil!", + "home.feels like phrase extremely cold": + "It's so cold, even the polar bears are staying inside!", + + "home.air quality text very poor": "Sangat Buruk", + "home.air quality text poor": "Buruk", + "home.air quality text fair": "Cukup Baik", + "home.air quality text moderate": "Sedang", + "home.air quality text good": "Baik", + "home.air quality text excellent": "Sangat Baik", + + "home.sunset": "Matahari Terbenam", + "home.sunrise": "Matahari Terbit", + + "home.moonset": "Moonset", + "home.moonrise": "Moonrise", + + "home.weather state stormy": "Badai", + "home.weather state snowy": "Berawan", + "home.weather state rainy": "Hujan", + "home.weather state very cloudy": "Sangat Berawan", + "home.weather state cloudy": "Berawan", + "home.weather state windy": "Berangin", + "home.weather state sunny": "Cerah", + + "home.this hour": "Jam Ini", + "home.early hour time ending": "Pagi", + "home.late hour time ending": "Malam", + + "home.9 day forecast card content": + "Perkiraan untuk 9 hari ke depan.
Suhu rata-rata adalah suhu rata-rata selama hari. Satu untuk siang dan satu untuk malam.", + + "home.precipitation card title": "Presipitasi Saat Ini", + + "home.feels like card content": + "Parameter suhu ini memperhitungkan persepsi manusia terhadap cuaca", + + "home.visibility card title": "Visibilitas Saat Ini", + + "home.wind pressure card title": "Angin & Tekanan Saat Ini", + "home.wind pressure card content": + "Atmospheric pressure on the sea level.
At sea level, atmospheric pressure is the force exerted by the weight of the air above, averaging around 1013.25 hPa.", + + "home.not available": "Tidak Tersedia", + + "home.moon phase card title": "Fase Bulan Saat Ini", + "home.moon phase card content": + "Fase bulan adalah bentuk bagian yang disinari langsung oleh Matahari dari Bulan saat dilihat dari Bumi.", + + "home.moon phase new moon": "Bulan Baru", + "home.moon phase waxing crescent": "Sabit Membesar", + "home.moon phase first quarter": "Kuartal Pertama", + "home.moon phase waxing gibbous": "Membesar Penuh", + "home.moon phase full moon": "Purnama", + "home.moon phase waning gibbous": "Mengering Penuh", + "home.moon phase last quarter": "Kuartal Terakhir", + "home.moon phase waning crescent": "Sabitan Mengecil", + + "home.more information": "Informasi Lebih Lanjut", + "home.less information": "Informasi Lebih Sedikit", + + "home.sun hours": "Jam Matahari", + + "home.from": "Dari", + + // contact page translations + "contact.send button": "Kirim", + "contact.sent button": "Terkirim", + "contact.first name": "Nama depan", + "contact.last name": "Nama belakang", + "contact.email": "Email", + "contact.message": "Pesan", + + "contact.sent toast": "Pesan terkirim!", + "contact.sending email loading toast": "Mengirim email...", + + "contact.invalid email": "Alamat email tidak valid", + "contact.at least 2 characters": "Kolom ini harus berisi minimal 2 karakter", + "contact.at least 10 characters": + "Kolom ini harus berisi minimal 10 karakter", + + // contributors page translations + "contributors.made with love text": + 'Dibuat dengan ♥\uFE0F by', + "contributors.founder": "Pendiri", + "contributors.engineer": "Insinyur", + "contributors.designer": "Desainer", + "contributors.translator": "Penerjemah", +} as const; diff --git a/apps/web/src/locales/index.ts b/apps/web/src/locales/index.ts index 52dcfcb2..35d22cf2 100644 --- a/apps/web/src/locales/index.ts +++ b/apps/web/src/locales/index.ts @@ -9,4 +9,5 @@ export const { } = createI18n({ en: () => import("./en"), de: () => import("./de"), + id: () => import("./id"), }); diff --git a/apps/web/src/pages/contributors/index.tsx b/apps/web/src/pages/contributors/index.tsx index 49bb0853..3f97e536 100644 --- a/apps/web/src/pages/contributors/index.tsx +++ b/apps/web/src/pages/contributors/index.tsx @@ -58,7 +58,8 @@ const Contributors = () => { />

- {translationContributors("designer")} + {translationContributors("designer")} &{" "} + {translationContributors("translator")}

diff --git a/apps/web/src/pages/settings/index.tsx b/apps/web/src/pages/settings/index.tsx index 1a72c1b9..430a3ce6 100644 --- a/apps/web/src/pages/settings/index.tsx +++ b/apps/web/src/pages/settings/index.tsx @@ -5,6 +5,7 @@ import { RxCheck } from "react-icons/rx"; import type { TemperatureUnitType, WindSpeedUnitType } from "~/states"; import germanFlag from "~/assets/german-flag.png"; +import indonesianFlag from "~/assets/indonesian-flag.png"; import usaFlag from "~/assets/usa-flag.png"; import Layout from "~/components/Layout"; import { @@ -179,6 +180,25 @@ const Settings = observer(() => { )} +
From 1255d7bae1f852c1718324244ad129d5b2b869a1 Mon Sep 17 00:00:00 2001 From: FleetAdmiralJakob Date: Sat, 9 Mar 2024 10:21:07 +0100 Subject: [PATCH 3/4] fix: Added missing translations --- apps/web/src/locales/id.ts | 29 +++++++++++++++-------------- 1 file changed, 15 insertions(+), 14 deletions(-) diff --git a/apps/web/src/locales/id.ts b/apps/web/src/locales/id.ts index dccf8ad3..58ff0138 100644 --- a/apps/web/src/locales/id.ts +++ b/apps/web/src/locales/id.ts @@ -86,21 +86,22 @@ export default { "home.afternoon": "Sore", "home.night": "Malam", - "home.feels like phrase extremely warm": "The sun is scorching today!", + "home.feels like phrase extremely warm": "Matahari sangat menyengat hari ini", "home.feels like phrase very warm": - "Matahari mungkin mencoba untuk mendinginkan!", - "home.feels like phrase warm": "Bahkan es krim pun merasa terlalu hangat!", - "home.feels like phrase slightly more warm": "It's a toasty day!", - "home.feels like phrase slightly warm": "A perfect day for a picnic!", + "Matahari mungkin sedang berusaha mendinginkan diri!", + "home.feels like phrase warm": "Bahkan es krim pun merasa terlalu panas!", + "home.feels like phrase slightly more warm": "Hari ini terasa hangat sekali!", + "home.feels like phrase slightly warm": "Hari yang pas untuk piknik!", "home.feels like phrase neutral": - "Just the right temperature, not too hot, not too cold.", - "home.feels like phrase slightly cold": "A light jacket might be needed.", - "home.feels like phrase slightly more cold": "It's a frosty day!", - "home.feels like phrase cold": "Penguin memesan cokelat panas karena dingin!", + "Suhu yang pas, tidak terlalu panas, tidak terlalu dingin.", + "home.feels like phrase slightly cold": "Mungkin perlu memakai jaket tipis.", + "home.feels like phrase slightly more cold": "Hari ini terasa cukup dingin!", + "home.feels like phrase cold": + "Para pinguin memesan cokelat panas karena udara yang dingin!", "home.feels like phrase very cold": - "Cuaca yang dingin membuat bahkan boneka salju pun menggigil!", + "Cuaca dingin hari ini membuat bahkan manusia salju pun menggigil!", "home.feels like phrase extremely cold": - "It's so cold, even the polar bears are staying inside!", + "Terlalu dingin, bahkan beruang kutub pun lebih memilih untuk menetap di rumahnya!", "home.air quality text very poor": "Sangat Buruk", "home.air quality text poor": "Buruk", @@ -112,8 +113,8 @@ export default { "home.sunset": "Matahari Terbenam", "home.sunrise": "Matahari Terbit", - "home.moonset": "Moonset", - "home.moonrise": "Moonrise", + "home.moonset": "Terbenamnya Bulan", + "home.moonrise": "Terbitnya Bulan", "home.weather state stormy": "Badai", "home.weather state snowy": "Berawan", @@ -139,7 +140,7 @@ export default { "home.wind pressure card title": "Angin & Tekanan Saat Ini", "home.wind pressure card content": - "Atmospheric pressure on the sea level.
At sea level, atmospheric pressure is the force exerted by the weight of the air above, averaging around 1013.25 hPa.", + "Tekanan atmosfer pada permukaan laut.
Pada permukaan laut, tekanan atmosfer adalah gaya yang diberikan oleh berat udara di atasnya, dengan rata-rata sekitar 1013.25 hPa.", "home.not available": "Tidak Tersedia", From 42a0fee537d24eab22c14020f7be7b84e1992cf5 Mon Sep 17 00:00:00 2001 From: FleetAdmiralJakob Date: Wed, 13 Mar 2024 16:30:09 +0100 Subject: [PATCH 4/4] fix: Fixed some translations --- apps/web/src/locales/id.ts | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/apps/web/src/locales/id.ts b/apps/web/src/locales/id.ts index 58ff0138..0910bacc 100644 --- a/apps/web/src/locales/id.ts +++ b/apps/web/src/locales/id.ts @@ -88,18 +88,18 @@ export default { "home.feels like phrase extremely warm": "Matahari sangat menyengat hari ini", "home.feels like phrase very warm": - "Matahari mungkin sedang berusaha mendinginkan diri!", - "home.feels like phrase warm": "Bahkan es krim pun merasa terlalu panas!", + "Matahari kayaknya lagi nyoba buat refreshing!", + "home.feels like phrase warm": "Es krim aja ngerasa kepanasan!", "home.feels like phrase slightly more warm": "Hari ini terasa hangat sekali!", "home.feels like phrase slightly warm": "Hari yang pas untuk piknik!", "home.feels like phrase neutral": - "Suhu yang pas, tidak terlalu panas, tidak terlalu dingin.", + "Cuacanya pas banget, kayaknya Goldilocks pun juga setuju!", "home.feels like phrase slightly cold": "Mungkin perlu memakai jaket tipis.", "home.feels like phrase slightly more cold": "Hari ini terasa cukup dingin!", "home.feels like phrase cold": - "Para pinguin memesan cokelat panas karena udara yang dingin!", + "Penguin-penguin lagi pesen cokelat panas nih, sedingin itu!", "home.feels like phrase very cold": - "Cuaca dingin hari ini membuat bahkan manusia salju pun menggigil!", + "Hari ini dinginnya sampe bikin manusia salju kedinginan!", "home.feels like phrase extremely cold": "Terlalu dingin, bahkan beruang kutub pun lebih memilih untuk menetap di rumahnya!", @@ -149,13 +149,13 @@ export default { "Fase bulan adalah bentuk bagian yang disinari langsung oleh Matahari dari Bulan saat dilihat dari Bumi.", "home.moon phase new moon": "Bulan Baru", - "home.moon phase waxing crescent": "Sabit Membesar", + "home.moon phase waxing crescent": "Sabit Muda", "home.moon phase first quarter": "Kuartal Pertama", - "home.moon phase waxing gibbous": "Membesar Penuh", + "home.moon phase waxing gibbous": "Cembung Awal", "home.moon phase full moon": "Purnama", - "home.moon phase waning gibbous": "Mengering Penuh", + "home.moon phase waning gibbous": "Cembung Akhir", "home.moon phase last quarter": "Kuartal Terakhir", - "home.moon phase waning crescent": "Sabitan Mengecil", + "home.moon phase waning crescent": "Sabit tua", "home.more information": "Informasi Lebih Lanjut", "home.less information": "Informasi Lebih Sedikit",