From bdf5c001c39d4ce0f8678843cc9ff1c2b8eaf0da Mon Sep 17 00:00:00 2001 From: Crowdin Bot Date: Fri, 7 Nov 2025 05:09:58 +0000 Subject: [PATCH 1/2] chore: synced translations from crowdin --- apps/site/pages/fr/about/branding.mdx | 19 +- apps/site/pages/fr/about/eol.mdx | 2 +- .../pages/fr/about/security-reporting.mdx | 11 +- apps/site/pages/fr/download/archive/index.mdx | 3 +- apps/site/pages/fr/download/current.mdx | 21 +-- apps/site/pages/fr/download/index.mdx | 21 +-- apps/site/pages/fr/index.mdx | 6 +- apps/site/pages/id/about/branding.mdx | 15 +- apps/site/pages/id/about/eol.mdx | 46 +++++ .../site/pages/id/about/get-involved/index.md | 1 + apps/site/pages/id/about/partners.mdx | 50 +++++ .../site/pages/id/about/previous-releases.mdx | 48 +++++ .../pages/id/about/security-reporting.mdx | 29 +-- apps/site/pages/id/download/archive/index.mdx | 57 ++++++ apps/site/pages/id/download/current.mdx | 28 ++- apps/site/pages/id/download/index.mdx | 30 ++- apps/site/pages/id/index.mdx | 128 +++++++++++++ apps/site/pages/ja/about/branding.mdx | 19 +- apps/site/pages/ja/about/eol.mdx | 2 +- .../site/pages/ja/about/previous-releases.mdx | 10 +- .../pages/ja/about/security-reporting.mdx | 11 +- apps/site/pages/ja/download/archive/index.mdx | 3 +- apps/site/pages/ja/download/current.mdx | 17 +- apps/site/pages/ja/download/index.mdx | 17 +- apps/site/pages/ja/index.mdx | 6 +- apps/site/pages/ro/about/branding.mdx | 19 +- .../pages/ro/about/security-reporting.mdx | 11 +- apps/site/pages/ro/download/archive/index.mdx | 3 +- apps/site/pages/uk/about/branding.mdx | 19 +- apps/site/pages/uk/about/eol.mdx | 2 +- .../pages/uk/about/security-reporting.mdx | 11 +- apps/site/pages/uk/download/archive/index.mdx | 3 +- apps/site/pages/uk/download/current.mdx | 23 +-- apps/site/pages/uk/download/index.mdx | 23 +-- apps/site/pages/uk/index.mdx | 6 +- apps/site/pages/zh-cn/about/branding.mdx | 19 +- .../pages/zh-cn/about/previous-releases.mdx | 10 +- .../pages/zh-cn/about/security-reporting.mdx | 11 +- .../pages/zh-cn/download/archive/index.mdx | 3 +- apps/site/pages/zh-cn/download/current.mdx | 25 ++- apps/site/pages/zh-cn/download/index.mdx | 21 +-- apps/site/pages/zh-cn/index.mdx | 6 +- apps/site/snippets/id/download/choco.bash | 5 +- apps/site/snippets/id/download/corepack.bash | 2 + apps/site/snippets/id/download/node.bash | 2 + packages/i18n/src/locales/fr.json | 75 ++++---- packages/i18n/src/locales/id.json | 171 ++++++++++++------ packages/i18n/src/locales/ja.json | 83 ++++----- packages/i18n/src/locales/uk.json | 84 ++++----- 49 files changed, 757 insertions(+), 480 deletions(-) create mode 100644 apps/site/pages/id/about/eol.mdx create mode 100644 apps/site/pages/id/about/partners.mdx create mode 100644 apps/site/pages/id/about/previous-releases.mdx create mode 100644 apps/site/pages/id/download/archive/index.mdx create mode 100644 apps/site/pages/id/index.mdx create mode 100644 apps/site/snippets/id/download/corepack.bash create mode 100644 apps/site/snippets/id/download/node.bash diff --git a/apps/site/pages/fr/about/branding.mdx b/apps/site/pages/fr/about/branding.mdx index 21e0637877db9..8f27482512447 100644 --- a/apps/site/pages/fr/about/branding.mdx +++ b/apps/site/pages/fr/about/branding.mdx @@ -11,25 +11,13 @@ Veuillez consulter la [politique en matière de marques](https://trademark-polic Crédit à [Angela Angelini](https://www.linkedin.com/in/angeliningl/) pour la conception et la contribution de la tortue-fusée. -Mascotte de Node.js +Mascotte de Node.js ## Logo Node.js® ### Logo hexagonal Node.js® -Logo Hex Node.js +Logo Hex Node.js ### Node.js® Logo horizontal @@ -44,7 +32,6 @@ Crédit à [Angela Angelini](https://www.linkedin.com/in/angeliningl/) pour la c Logo horizontal clair de Node.js - @@ -71,7 +58,6 @@ Crédit à [Angela Angelini](https://www.linkedin.com/in/angeliningl/) pour la c Logo empilé blanc de Node.js - @@ -88,6 +74,5 @@ Crédit à [Angela Angelini](https://www.linkedin.com/in/angeliningl/) pour la c Icons JS Blanc - diff --git a/apps/site/pages/fr/about/eol.mdx b/apps/site/pages/fr/about/eol.mdx index 3133d3bca0b02..b517e35539a45 100644 --- a/apps/site/pages/fr/about/eol.mdx +++ b/apps/site/pages/fr/about/eol.mdx @@ -15,7 +15,7 @@ Les versions majeures de Node.js sont publiées, corrigées et déclarées en fi Mettez à niveau vers la dernière version LTS de Node.js®. -ou + ou + + atau + + + + +[Lihat jadwal rilis Node.js](/about/releases/). + +## Apa yang Terjadi Ketika Suatu Lini Rilis Mencapai EOL + +Saat suatu versi mencapai End-Of-Life, artinya versi tersebut tidak lagi menerima pembaruan, termasuk tambalan keamanan. Ini dapat membuat aplikasi yang berjalan pada versi tersebut rentan terhadap masalah keamanan dan bug yang tidak akan pernah diperbaiki. + +- **Tidak ada lagi perbaikan kerentanan**: Ketika rilis keamanan baru mengungkap masalah dan tambalan pada lini mayor yang lebih baru, meskipun kerentanan yang sama memengaruhi versi EOL, tidak akan ada rilis baru untuk mereka. Pengguna yang tetap bertahan di versi EOL dan menggunakan jalur kode yang terdampak akan langsung rentan terhadap serangan yang memanfaatkan kerentanan tersebut. +- **Kerusakan pada toolchain**: Versi EOL mungkin tidak lagi dapat melakukan dynamic linking dengan versi pustaka bersama yang lebih baru yang menjadi dependensinya, yang dapat menghambat atau merusak pembaruan sistem. +- **Perubahan ekosistem**: Banyak paket user-land populer menghentikan dukungan untuk versi Node.js yang sudah EOL dari waktu ke waktu. Ketika suatu aplikasi tetap menggunakan paket yang sudah kedaluwarsa, aplikasi tersebut dapat mengalami lebih banyak kerentanan dan bug yang tidak diperbaiki, semakin menjauhi standar ekosistem. +- **Masalah kepatuhan**: Banyak audit industri melarang penggunaan runtime yang tidak dipelihara. + +## Versi EOL + + + +## Dukungan Komersial + +Meskipun penggunaan versi EOL memiliki banyak kelemahan, dalam praktiknya banyak organisasi menghadapi batasan yang mencegah peningkatan versi secara langsung, seperti kode warisan (legacy), kebutuhan kepatuhan, atau rantai dependensi yang kompleks. Melalui [OpenJS Foundation Ecosystem Sustainability Program](https://openjsf.org/blog/ecosystem-sustainability-program), Node.js mendapatkan dukungan dari HeroDevs dan NodeSource untuk menyediakan layanan komersial dalam bentuk perbaikan keamanan. + +HeroDevs menyediakan [Never-Ending Support (NES)](https://nodejs.org/esp/herodevs) untuk versi Node.js yang telah melewati fase pemeliharaan resmi. Ini mencakup tambalan keamanan, bantuan kepatuhan, dan dukungan teknis untuk menjembatani kebutuhanmu sambil kamu merencanakan strategi peningkatan. + +Menggunakan versi EOL melalui dukungan komersial harus dianggap sebagai solusi sementara — tujuan utama tetap untuk meningkatkan ke versi yang masih didukung secara aktif. diff --git a/apps/site/pages/id/about/get-involved/index.md b/apps/site/pages/id/about/get-involved/index.md index a47c9c443fb56..644bfde64b19d 100644 --- a/apps/site/pages/id/about/get-involved/index.md +++ b/apps/site/pages/id/about/get-involved/index.md @@ -31,4 +31,5 @@ Perlu diperhatikan bahwa proyek Node.js tidak secara resmi mendukung forum-forum - [Node Slackers](https://www.nodeslackers.com/) adalah komunitas Slack yang berfokus pada Node.js. - [OpenJSF Slack](https://slack-invite.openjsf.org/) adalah ruang kerja Slack untuk OpenJS Foundation. Ada beberapa saluran yang terkait dengan Node.js. _(saluran yang diawali dengan `#nodejs-` terkait dengan proyek)_ +- [r/node](https://www.reddit.com/r/node/) adalah subreddit yang berfokus pada Node.js. - Untuk IRC, buka `irc.libera.chat` di saluran `#node.js` dengan [klien IRC](https://en.wikipedia.org/wiki/Comparison_of_Internet_Relay_Chat_clients) atau sambungkan di browser web Anda ke saluran menggunakan [klien web](https://kiwiirc.com/nextclient/). diff --git a/apps/site/pages/id/about/partners.mdx b/apps/site/pages/id/about/partners.mdx new file mode 100644 index 0000000000000..4b3ab21af203e --- /dev/null +++ b/apps/site/pages/id/about/partners.mdx @@ -0,0 +1,50 @@ +--- +title: Mitra & Pendukung +layout: about +--- + +# Mitra & Pendukung + +Komunitas Node.js diperkaya oleh jaringan mitra yang beragam yang berkontribusi +dalam berbagai cara. Melalui kolaborasi ini, kami menjaga infrastruktur yang tangguh, +memperkuat keamanan, mendorong rilis baru, dan menumbuhkan ekosistem kami secara berkelanjutan. + +Kami berterima kasih atas dukungan para mitra, yang memainkan peran penting dalam keberhasilan +dan pengembangan berkelanjutan dari Node.js. + +## Infrastruktur + +... + + + +## Pendukung + +Pendukung adalah individu dan organisasi yang memberikan dukungan finansial melalui +[OpenCollective](https://opencollective.com/nodejs) untuk proyek Node.js. + + + +## ## Ecosystem Sustainability Program (ESP) + +Apakah kamu menjalankan versi Node.js yang sudah End-of-Life (EOL)? +Program **OpenJS Ecosystem Sustainability Program (ESP)** membantu organisasi dalam +memelihara aplikasi Node.js mereka yang berjalan pada versi EOL. +Program ini menyediakan akses ke tambalan keamanan, bantuan kepatuhan, dan dukungan teknis +untuk menjembatani kebutuhan sementara kamu merencanakan strategi peningkatan versi.Untuk informasi lebih lanjut mengenai versi End-of-Life, silakan kunjungi +[End-Of-Life Node.js Releases](/about/eol) + +> Menggunakan rilis EOL melalui dukungan komersial harus dianggap sebagai solusi sementara. Tujuan utama tetap harus meningkatkan ke versi yang masih didukung secara aktif. + + + +## Menjadi Mitra + +Jadilah mitra proyek Node.js dan bantu kami terus mengembangkan dan memelihara proyek ini. +Dukunganmu sangat penting untuk memastikan bahwa Node.js tetap menjadi platform yang andal dan aman +bagi para pengembang dan organisasi di seluruh dunia. Jika kamu tertarik untuk menjadi mitra, +silakan hubungi kami melalui OpenJS Foundation. + +
+ +
diff --git a/apps/site/pages/id/about/previous-releases.mdx b/apps/site/pages/id/about/previous-releases.mdx new file mode 100644 index 0000000000000..a108957f78888 --- /dev/null +++ b/apps/site/pages/id/about/previous-releases.mdx @@ -0,0 +1,48 @@ +--- +title: Rilisan Node.js +layout: about +--- + +# Rilisan Node.js + + + +Versi Node.js utama memasuki status rilis saat ini selama enam bulan, yang memberikan waktu bagi penulis perpustakaan untuk menambahkan dukungan untuk versi tersebut. Setelah enam bulan, rilis bernomor ganjil (9, 11, dst.) menjadi tidak didukung, dan rilis bernomor genap (10, 12, dst.) berpindah ke status LTS Aktif dan siap untuk penggunaan umum. Status rilis LTS adalah "dukungan jangka panjang", yang biasanya menjamin bahwa bug kritis akan diperbaiki selama total 30 bulan. Aplikasi produksi hanya boleh menggunakan rilis LTS Aktif atau LTS Pemeliharaan. + +## Release Schedule + +![Releases](https://raw.githubusercontent.com/nodejs/Release/main/schedule.svg?sanitize=true) + +Detail lengkap mengenai jadwal rilis Node.js tersedia [di GitHub](https://github.com/nodejs/release#release-schedule). + +## Mencari rilis terbaru dari cabang versi? + + + +## Metode Instalasi Resmi vs. Komunitas + +Situs web Node.js menyediakan beberapa metode instalasi non-interaktif, termasuk antarmuka baris perintah (CLI), manajer paket sistem operasi (OS) (misalnya, `brew`), dan manajer versi Node.js (misalnya, `nvm`). + +Untuk menyoroti dan mempromosikan kontribusi komunitas, proyek Node.js memperkenalkan halaman Unduhan yang telah direvisi yang mengkategorikan metode instalasi sebagai "Resmi" atau "Komunitas." Hal ini memberikan fleksibilitas dan pilihan yang lebih besar kepada pengguna. Untuk memastikan kejelasan, kami telah menetapkan kriteria untuk setiap kategori. + +### Metode Instalasi Resmi + +Metode instalasi yang ditetapkan sebagai “Resmi” harus memenuhi persyaratan berikut: + +| Persyaratan (Metode Instalasi Resmi) | +| :----------------------------------------------------------------------------------------------------------------------------------- | +| Rilis Node.js baru harus tersedia bersamaan dengan rilis resmi. | +| Pengelola proyek harus memiliki hubungan dekat dengan proyek Node.js, termasuk saluran komunikasi langsung. | +| Metode instalasi harus unduhan biner resmi yang dibundel oleh proyek Node.js. | +| Metode instalasi tidak boleh dibuild dari sumber, jika biner yang telah dibuild tersedia, dan tidak boleh pula mengubah biner resmi. | + +### Metode Instalasi Komunitas + +Metode instalasi komunitas yang disertakan pada halaman unduhan swalayan (/download) juga harus mematuhi serangkaian kriteria minimum: + +- **Dukungan Versi:** Harus mendukung semua versi Node.js yang saat ini didukung, bukan versi End-of-Life (EOL). +- **Kompatibilitas OS:** Harus berfungsi pada setidaknya satu Sistem Operasi (OS) yang didukung secara resmi. +- **Dukungan OS yang Luas:** Tidak dapat dibatasi pada sebagian distribusi atau versi OS. + - Misalnya, metode instalasi yang mengklaim kompatibilitas dengan “Windows” harus berfungsi pada “Windows 10”, “Windows 11”, dan semua edisinya (termasuk versi server). + - Demikian pula, metode instalasi yang mengklaim kompatibilitas dengan "Linux" harus dapat diinstal pada semua distribusi Linux utama, bukan hanya sebagian kecil saja. Metode ini tidak dapat bergantung pada pengelola paket khusus distribusi seperti `apt` atau `dnf`. +- **Gratis dan Sumber Terbuka:** Harus gratis digunakan dan bersumber terbuka, tidak boleh dijual sebagai produk komersial, dan tidak boleh menjadi layanan berbayar. diff --git a/apps/site/pages/id/about/security-reporting.mdx b/apps/site/pages/id/about/security-reporting.mdx index 307463d9aeb0a..ec854ebda852c 100644 --- a/apps/site/pages/id/about/security-reporting.mdx +++ b/apps/site/pages/id/about/security-reporting.mdx @@ -11,9 +11,9 @@ For more details on active Security Policies, checkout [this page](https://githu Laporkan bug keamanan di Node.js melalui [HackerOne](https://hackerone.com/nodejs). -Laporan Anda akan diterima dalam waktu 5 hari, dan Anda akan menerima tanggapan yang lebih rinci terhadap laporan Anda dalam waktu 10 hari yang menunjukkan langkah selanjutnya dalam menangani kiriman Anda. +Biasanya, laporan mu akan diakui dalam waktu 5 hari, dan Anda akan menerima tanggapan yang lebih detail dalam waktu 10 hari yang menjelaskan langkah selanjutnya dalam penanganan laporan tersebut. Waktu ini dapat lebih lama jika para relawan triase sedang berlibur, terutama di akhir tahun. -Setelah balasan awal atas laporan Anda, tim keamanan akan berusaha memberi Anda informasi tentang kemajuan yang dicapai menuju pengumuman perbaikan dan lengkap, dan mungkin meminta informasi atau panduan tambahan seputar masalah yang dilaporkan. +Setelah balasan awal atas laporan mu, tim keamanan akan berusaha memberi mu informasi tentang kemajuan yang dicapai menuju pengumuman perbaikan dan lengkap, dan mungkin meminta informasi atau panduan tambahan seputar masalah yang dilaporkan. ### Program hadiah bug Node.js @@ -27,15 +27,24 @@ Bug keamanan di modul pihak ketiga harus dilaporkan ke pengelola masing-masing. Berikut adalah kebijakan pengungkapan keamanan untuk Node.js -- Laporan keamanan diterima dan ditetapkan sebagai penangan utama. Orang ini akan mengoordinasikan proses perbaikan dan pelepasan. Masalahnya telah dikonfirmasi dan daftar semua versi yang terpengaruh telah ditentukan. Kode diaudit untuk menemukan potensi masalah serupa. Perbaikan disiapkan untuk semua rilis yang masih dalam pemeliharaan. Perbaikan ini tidak dilakukan pada repositori publik melainkan disimpan secara lokal sambil menunggu pengumuman. +- Laporan keamanan diterima dan ditugaskan ke penanggung jawab utama. + Orang ini akan mengoordinasikan proses perbaikan dan rilis. + Masalah tersebut divalidasi pada semua versi Node.js yang masih didukung. + Setelah dikonfirmasi, ditentukan daftar semua versi yang terdampak. + Kode kemudian diaudit untuk menemukan potensi masalah serupa. + Perbaikan disiapkan untuk semua rilis yang masih didukung.Perbaikan ini tidak langsung dikomit ke repositori publik, tetapi disimpan secara lokal sampai pengumuman dilakukan. - Tanggal embargo yang disarankan untuk kerentanan ini dipilih dan CVE (Common Vulnerabilities and Exposures (CVE®)) diminta untuk kerentanan tersebut. -- Pada tanggal embargo, salinan pengumuman dikirim ke milis keamanan Node.js. Perubahan tersebut dikirim ke repositori publik dan versi baru disebarkan ke nodejs.org. Dalam waktu 6 jam setelah milis diberitahukan, salinan nasihat akan dipublikasikan di blog Node.js. +- Pada tanggal embargo, salinan pengumuman dikirim ke daftar surel keamanan Node.js. + Perubahan kemudian dipush ke repositori publik dan build baru dirilis di nodejs.org. + Dalam waktu maksimal 6 jam setelah daftar surel menerima pemberitahuan, salinan advis tersebut akan dipublikasikan di blog Node.js. -- Biasanya tanggal embargo akan ditetapkan 72 jam sejak CVE diterbitkan. Namun, hal ini dapat bervariasi tergantung pada tingkat keparahan bug atau kesulitan dalam menerapkan perbaikan. +- Biasanya, tanggal embargo akan ditetapkan 72 jam sejak CVE diterbitkan. + Namun, hal ini bisa berubah tergantung tingkat keparahan bug atau kesulitan dalam menerapkan perbaikan. -- Proses ini dapat memakan waktu, terutama bila diperlukan koordinasi dengan pengelola proyek lain. Segala upaya akan dilakukan untuk menangani bug tersebut secepat mungkin; namun, penting bagi kami untuk mengikuti proses rilis di atas untuk memastikan bahwa pengungkapan ditangani secara konsisten. +- Proses ini bisa memakan waktu, terutama jika perlu koordinasi dengan para maintainer proyek lain. + Kami akan berusaha menangani bug secepat mungkin; namun, kami tetap harus mengikuti proses rilis di atas untuk memastikan penanganan pengungkapan dilakukan secara konsisten. ## Menerima pembaruan keamanan @@ -46,16 +55,12 @@ Pemberitahuan keamanan akan didistribusikan melalui metode berikut. ## Komentar tentang kebijakan ini -Jika Anda memiliki saran tentang bagaimana proses ini dapat ditingkatkan, silakan kirimkan [permintaan penarikan](https://github.com/nodejs/nodejs.org) atau [ajukan masalah](https://github.com/nodejs/security-wg/issues/new) untuk didiskusikan. +Kalau kamu punya saran tentang bagaimana proses ini dapat ditingkatkan, silakan kunjungi repositori [nodejs/security-wg](https://github.com/nodejs/security-wg). ## Praktik Terbaik OpenSSF - OpenSSF Badge + OpenSSF Badge [Best Practices badge](https://github.com/coreinfrastructure/best-practices-badge) Open Source Security Foundation (OpenSSF) adalah cara bagi proyek Free/Libre dan Open Source Software (FLOSS) untuk menunjukkan bahwa mereka mengikuti praktik terbaik. Proyek dapat secara sukarela melakukan sertifikasi sendiri bagaimana mereka mengikuti setiap praktik terbaik. Konsumen yang tersertifikasi dapat dengan cepat menilai proyek FLOSS mana yang mengikuti praktik terbaik dan sebagai hasilnya, mereka lebih cenderung menghasilkan perangkat lunak aman berkualitas lebih tinggi. diff --git a/apps/site/pages/id/download/archive/index.mdx b/apps/site/pages/id/download/archive/index.mdx new file mode 100644 index 0000000000000..b6ced005df1b9 --- /dev/null +++ b/apps/site/pages/id/download/archive/index.mdx @@ -0,0 +1,57 @@ +--- +title: Unduh Node.js® +layout: download-archive +--- + + + {({ binaries, installers, version, release, sources }) => ( + <> +

Arsip Unduhan Node.js®

+ +

+ Node.js Logo + {version} + {release.codename && ` (${release.codename})`} +

+ + + + + +
    +
  • + Baca catatan perubahan (changelog) atau artikel blog untuk versi ini. +
  • +
  • + Pelajari lebih lanjut tentang rilis Node.js, termasuk jadwal rilis dan status LTS. +
  • + +
  • + SHASUMS bertanda tangan untuk berkas rilis. Cara memverifikasi SHASUMS bertanda tangan. +
  • + +
  • + Unduh berkas tarball sumber Node.js {version} yang telah ditandatangani. +
  • + +
+ +

Rilis lainnya

+ + +

Unduhan Biner

+ + +

Paket Installer

+ + +

Versi Minor

+ + + )} +
diff --git a/apps/site/pages/id/download/current.mdx b/apps/site/pages/id/download/current.mdx index ef3c3a90b4e36..c505e100469f4 100644 --- a/apps/site/pages/id/download/current.mdx +++ b/apps/site/pages/id/download/current.mdx @@ -6,27 +6,39 @@ title: Unduh Node.js®
Dapatkan Node.js® untuk menggunakan dengan - + Atau dapatkan Node.js® yang sudah dibuat sebelumnya untuk yang menjalankan arsitektur . -
Baca Log Perubahan atau postingan blog untuk versi ini. -Pelajari selengkapnya tentang [rilis Node.js](/tentang/rilis-sebelumnya), termasuk jadwal rilis dan status LTS. + Pelajari selengkapnya tentang [rilis Node.js](/tentang/rilis-sebelumnya), termasuk jadwal rilis dan status LTS. + + Pelajari cara memverifikasi yang ditandatangani SHASUMS. + + Mencari sumber Node.js? Unduh tarball sumber Node.js yang telah ditandatangani. -Pelajari cara memverifikasi yang ditandatangani SHASUMS. + Lihat biner nightly kami atau + semua rilis sebelumnya + atau biner tidak resmi untuk platform lain. +
+ +--- -Mencari sumber Node.js? Unduh tarball sumber Node.js yang telah ditandatangani. +
+

Dengan bangga didukung oleh mitra-mitra berikut:

-Lihat biner nightly kami atau -semua rilis sebelumnya -atau biner tidak resmi untuk platform lain. + + Kami dapat menyediakan unduhan Node.js dan memelihara infrastruktur kami dengan bangga berkat dukungan dari para mitra ini, dan lainnya. + +
+ +
diff --git a/apps/site/pages/id/download/index.mdx b/apps/site/pages/id/download/index.mdx index ef3c3a90b4e36..e6426bc0def5f 100644 --- a/apps/site/pages/id/download/index.mdx +++ b/apps/site/pages/id/download/index.mdx @@ -6,27 +6,39 @@ title: Unduh Node.js®
Dapatkan Node.js® untuk menggunakan dengan - + Atau dapatkan Node.js® yang sudah dibuat sebelumnya untuk yang menjalankan arsitektur . -
-
+
Baca Log Perubahan atau postingan blog untuk versi ini. -Pelajari selengkapnya tentang [rilis Node.js](/tentang/rilis-sebelumnya), termasuk jadwal rilis dan status LTS. + Pelajari selengkapnya tentang [rilis Node.js](/tentang/rilis-sebelumnya), termasuk jadwal rilis dan status LTS. + + Pelajari cara memverifikasi yang ditandatangani SHASUMS. + + Mencari sumber Node.js? Unduh tarball sumber Node.js yang telah ditandatangani. -Pelajari cara memverifikasi yang ditandatangani SHASUMS. + Lihat biner nightly kami atau + semua rilis sebelumnya + atau biner tidak resmi untuk platform lain. +
+ +--- -Mencari sumber Node.js? Unduh tarball sumber Node.js yang telah ditandatangani. +
+

Dengan bangga didukung oleh mitra-mitra berikut:

-Lihat biner nightly kami atau -semua rilis sebelumnya -atau biner tidak resmi untuk platform lain. + + Kami dapat menyediakan unduhan Node.js dan memelihara infrastruktur kami dengan bangga berkat dukungan dari para mitra ini, dan lainnya. + +
+ +
diff --git a/apps/site/pages/id/index.mdx b/apps/site/pages/id/index.mdx new file mode 100644 index 0000000000000..7066a892a436b --- /dev/null +++ b/apps/site/pages/id/index.mdx @@ -0,0 +1,128 @@ +--- +title: Jalankan JavaScript Di Mana Saja +layout: home +--- + +
+ + +
+

Jalankan JavaScript Di Mana Saja

+ + Node.js® adalah lingkungan runtime JavaScript gratis dan sumber terbuka yang + lintas platform, yang memungkinkan pengembang membuat server, aplikasi web, + alat baris perintah, dan skrip. +
+ +
+
+ + + + + + +
+ +
+ + Node.js dengan bangga didukung oleh para mitra di atas dan lainnya. +
+
+
+ +
+
+ ```js displayName="Create an HTTP Server" + // server.mjs + import { createServer } from 'node:http'; + + const server = createServer((req, res) => { + res.writeHead(200, { 'Content-Type': 'text/plain' }); + res.end('Hello World!\n'); + }); + + // starts a simple http server locally on port 3000 + server.listen(3000, '127.0.0.1', () => { + console.log('Listening on 127.0.0.1:3000'); + }); + + // run with `node server.mjs` + ``` + + ```js displayName="Write Tests" + // tests.mjs + import assert from 'node:assert'; + import test from 'node:test'; + + test('that 1 is equal 1', () => { + assert.strictEqual(1, 1); + }); + + test('that throws as 1 is not equal 2', () => { + // throws an exception because 1 != 2 + assert.strictEqual(1, 2); + }); + + // run with `node tests.mjs` + ``` + + ```js displayName="Read and Hash a File" + // crypto.mjs + import { createHash } from 'node:crypto'; + import { readFile } from 'node:fs/promises'; + + const hasher = createHash('sha1'); + + hasher.setEncoding('hex'); + // ensure you have a `package.json` file for this test! + hasher.write(await readFile('package.json')); + hasher.end(); + + const fileHash = hasher.read(); + + // run with `node crypto.mjs` + ``` + + ```js displayName="Streams Pipeline" + // streams.mjs + import { createReadStream, createWriteStream } from 'node:fs'; + import { pipeline } from 'node:stream/promises'; + import { createGzip } from 'node:zlib'; + + // ensure you have a `package.json` file for this test! + await pipeline( + createReadStream('package.json'), + createGzip(), + createWriteStream('package.json.gz') + ); + + // run with `node streams.mjs` + ``` + + ```js displayName="Work with Threads" + // threads.mjs + import { Worker, isMainThread, + workerData, parentPort } from 'node:worker_threads'; + + if (isMainThread) { + const data = 'some data'; + const worker = new Worker(import.meta.filename, { workerData: data }); + worker.on('message', msg => console.log('Reply from Thread:', msg)); + } else { + const source = workerData; + parentPort.postMessage(btoa(source.toUpperCase())); + } + + // run with `node threads.mjs` + ``` +
+ + Pelajari lebih lanjut tentang apa yang bisa ditawarkan Node.js melalui [Bahan Pembelajaran](/learn) kami. +
diff --git a/apps/site/pages/ja/about/branding.mdx b/apps/site/pages/ja/about/branding.mdx index f6f28606334f0..3337eed748141 100644 --- a/apps/site/pages/ja/about/branding.mdx +++ b/apps/site/pages/ja/about/branding.mdx @@ -11,25 +11,13 @@ Node.jsのロゴやシンボルマークの許可されている利用方法に ロケットタートルは作者である[Angela Angelini](https://www.linkedin.com/in/angeliningl/)から提供されたものです。 -Node.jsマスコット +Node.jsマスコット ## Node.js®ロゴ ### Node.js®ヘキサゴンロゴ -Node.jsヘキサゴンロゴ +Node.jsヘキサゴンロゴ ### Node.js®横型ロゴ @@ -44,7 +32,6 @@ Node.jsのロゴやシンボルマークの許可されている利用方法に Node.jsライト横型ロゴ - @@ -71,7 +58,6 @@ Node.jsのロゴやシンボルマークの許可されている利用方法に Node.jsホワイトスタック型ロゴ - @@ -88,6 +74,5 @@ Node.jsのロゴやシンボルマークの許可されている利用方法に JSアイコンホワイト - diff --git a/apps/site/pages/ja/about/eol.mdx b/apps/site/pages/ja/about/eol.mdx index 8ee35a391d04c..70d5999797efc 100644 --- a/apps/site/pages/ja/about/eol.mdx +++ b/apps/site/pages/ja/about/eol.mdx @@ -15,7 +15,7 @@ Node.jsのメジャーバージョンは予定されたスケジュールでリ 最新のLTS版Node.js®に更新する -または + または -або + або
diff --git a/apps/site/pages/zh-cn/about/branding.mdx b/apps/site/pages/zh-cn/about/branding.mdx index f0699add17ccf..9c2c14566a1bb 100644 --- a/apps/site/pages/zh-cn/about/branding.mdx +++ b/apps/site/pages/zh-cn/about/branding.mdx @@ -11,25 +11,13 @@ layout: about 感谢 [Angela Angelini](https://www.linkedin.com/in/angeliningl/) 设计与贡献了 Rocket Turtle。 -Node.js 吉祥物 +Node.js 吉祥物 ## Node.js® Logos ### Node.js® Hex Logo -Node.js Hex Logo +Node.js Hex Logo ### Node.js® 水平形式 Logo @@ -44,7 +32,6 @@ layout: about Node.js 亮色水平形式 Logo - @@ -71,7 +58,6 @@ layout: about Node.js 白色堆叠形式 Logo - @@ -88,6 +74,5 @@ layout: about 白色 JS 图标 - diff --git a/apps/site/pages/zh-cn/about/previous-releases.mdx b/apps/site/pages/zh-cn/about/previous-releases.mdx index 840dacf080ff0..796e318fe732e 100644 --- a/apps/site/pages/zh-cn/about/previous-releases.mdx +++ b/apps/site/pages/zh-cn/about/previous-releases.mdx @@ -32,11 +32,11 @@ Node.js 网站提供了多种非交互式安装方法,包括命令行界面( 被指定为“官方”的安装方法必须符合下列条件: -| 标准(官方安装) | -| :------------------------------------------------------------------------------- | -| Node.js 的新版本必须与官方发布同时发布。 | -| 项目维护者必须与 Node.js 项目有密切的关系,包括直接的沟通渠道。 | -| 安装方法必须下载 Node.js 项目捆绑的官方二进制文件。 | +| 标准(官方安装) | +| :--------------------------------------- | +| Node.js 的新版本必须与官方发布同时发布。 | +| 项目维护者必须与 Node.js 项目有密切的关系,包括直接的沟通渠道。 | +| 安装方法必须下载 Node.js 项目捆绑的官方二进制文件。 | | 当预构建的二进制文件可用时,安装方法不能从源代码构建,也不应更改官方二进制文件。 | ### 社区安装方法 diff --git a/apps/site/pages/zh-cn/about/security-reporting.mdx b/apps/site/pages/zh-cn/about/security-reporting.mdx index c12fe0bf05530..aa4f31ac7d745 100644 --- a/apps/site/pages/zh-cn/about/security-reporting.mdx +++ b/apps/site/pages/zh-cn/about/security-reporting.mdx @@ -50,15 +50,8 @@ Node.js 项目为安全研究人员和负责任的公开披露提供官方漏洞 ## OpenSSF 最佳实践 - - OpenSSF Badge + + OpenSSF Badge 开源安全基金会(OpenSSF)[最佳实践徽章](https://github.com/coreinfrastructure/best-practices-badge) 是自由/自由和开源软件(FLOSS)项目展示他们遵循最佳实践的一种方式。 项目可以自愿地自我认证他们如何遵循每个最佳实践。 徽章的使用者可以快速评估哪些 FLOSS 项目正在遵循最佳实践,因此更有可能产生更高质量的安全软件。 diff --git a/apps/site/pages/zh-cn/download/archive/index.mdx b/apps/site/pages/zh-cn/download/archive/index.mdx index 7ff75ed7c980d..c544e8b2516d3 100644 --- a/apps/site/pages/zh-cn/download/archive/index.mdx +++ b/apps/site/pages/zh-cn/download/archive/index.mdx @@ -54,6 +54,5 @@ layout: download-archive -)} - + )} diff --git a/apps/site/pages/zh-cn/download/current.mdx b/apps/site/pages/zh-cn/download/current.mdx index 01e480b37ed49..868cc4da4ce50 100644 --- a/apps/site/pages/zh-cn/download/current.mdx +++ b/apps/site/pages/zh-cn/download/current.mdx @@ -6,29 +6,27 @@ title: 下载 Node.js®
获得适用于 且使用 的 Node.js® - + 或者获得适用于 平台的 Node.js® 构建。 -
阅读此版本的 变更日志博客文章。 -了解有关 [Node.js 发布](/about/previous-releases) 的更多信息,包括发布时间表和长期支持版本的状态。 - -了解如何验证已签名的 SHASUMS。 + 了解有关 [Node.js 发布](/about/previous-releases) 的更多信息,包括发布时间表和长期支持版本的状态。 -正在寻找 Node.js 的源代码?下载已签名的 Node.js 源代码压缩包。 + 了解如何验证已签名的 SHASUMS。 -检查 nightly 二进制文件或 -所有 之前的版本 -或用于其他平台的 非官方的 二进制文件。 + 正在寻找 Node.js 的源代码?下载已签名的 Node.js 源代码压缩包。 + 检查 nightly 二进制文件或 + 所有 之前的版本 + 或用于其他平台的 非官方的 二进制文件。
--- @@ -36,11 +34,10 @@ title: 下载 Node.js®

很荣幸得到以下合作伙伴的支持:

- - 我们能够提供 Node.js 的下载服务并维护我们的基础设施, - 这要归功于这些合作伙伴以及其他合作伙伴 - 的支持。 - + + 我们能够提供 Node.js 的下载服务并维护我们的基础设施, + 这要归功于这些合作伙伴以及其他合作伙伴的支持。 +
diff --git a/apps/site/pages/zh-cn/download/index.mdx b/apps/site/pages/zh-cn/download/index.mdx index 922bad7be93b9..2340ce2be9613 100644 --- a/apps/site/pages/zh-cn/download/index.mdx +++ b/apps/site/pages/zh-cn/download/index.mdx @@ -6,27 +6,25 @@ title: 下载 Node.js®
获得适用于 且使用 的 Node.js® - + 或者获得适用于 平台的 Node.js® 构建。 -
阅读此版本的 变更日志博客文章。 -了解有关 [Node.js 发布](/about/previous-releases) 的更多信息,包括发布时间表和长期支持版本的状态。 - -了解如何验证已签名的 SHASUMS。 + 了解有关 [Node.js 发布](/about/previous-releases) 的更多信息,包括发布时间表和长期支持版本的状态。 -正在寻找 Node.js 的源代码?下载已签名的 Node.js 源代码压缩包。 + 了解如何验证已签名的 SHASUMS。 -检查 nightly 二进制文件或所有 之前的版本或用于其他平台的 非官方的 二进制文件。 + 正在寻找 Node.js 的源代码?下载已签名的 Node.js 源代码压缩包。 + 检查 nightly 二进制文件或所有 之前的版本或用于其他平台的 非官方的 二进制文件。
--- @@ -34,11 +32,10 @@ title: 下载 Node.js®

很荣幸得到以下合作伙伴的支持:

- - 我们能够提供 Node.js 的下载服务并维护我们的基础设施, - 这要归功于这些合作伙伴以及其他合作伙伴 - 的支持。 - + + 我们能够提供 Node.js 的下载服务并维护我们的基础设施, + 这要归功于这些合作伙伴以及其他合作伙伴的支持。 +
diff --git a/apps/site/pages/zh-cn/index.mdx b/apps/site/pages/zh-cn/index.mdx index abd55fe424b5a..cebfcdd5a9f6c 100644 --- a/apps/site/pages/zh-cn/index.mdx +++ b/apps/site/pages/zh-cn/index.mdx @@ -11,7 +11,6 @@ layout: home Node.js® 是一个免费、开源、跨平台的 JavaScript 运行时环境,它让开发人员能够创建服务器、 Web 应用、命令行工具和脚本。 -
@@ -34,7 +33,6 @@ layout: home Node.js 很荣幸得到上述及更多合作伙伴的支持。
-
@@ -123,9 +121,7 @@ layout: home // run with `node threads.mjs` ``` - -通过我们的[学习资料](/learn)了解 Node.js 。 - + 通过我们的[学习资料](/learn)了解 Node.js 。 diff --git a/apps/site/snippets/id/download/choco.bash b/apps/site/snippets/id/download/choco.bash index a70e176a7f361..df2f87f75bc3f 100644 --- a/apps/site/snippets/id/download/choco.bash +++ b/apps/site/snippets/id/download/choco.bash @@ -2,7 +2,4 @@ powershell -c "irm https://community.chocolatey.org/install.ps1|iex" # Unduh dan pasang Node.js: -choco install nodejs-lts --version="${props.release.major}" - -# Verifikasi versi Node.js: -node -v # Harus mencetak "${props.release.versionWithPrefix}". +choco install nodejs --version="${props.release.version}" diff --git a/apps/site/snippets/id/download/corepack.bash b/apps/site/snippets/id/download/corepack.bash new file mode 100644 index 0000000000000..ae7dca63be089 --- /dev/null +++ b/apps/site/snippets/id/download/corepack.bash @@ -0,0 +1,2 @@ +# Pasang Corepack: +npm install -g corepack diff --git a/apps/site/snippets/id/download/node.bash b/apps/site/snippets/id/download/node.bash new file mode 100644 index 0000000000000..4dda034f5c3b8 --- /dev/null +++ b/apps/site/snippets/id/download/node.bash @@ -0,0 +1,2 @@ +# Verifikasi versi Node.js: +node -v # Harusnya mencetak "${props.release.versionWithPrefix}". diff --git a/packages/i18n/src/locales/fr.json b/packages/i18n/src/locales/fr.json index 869b5e5877d25..da743b98a64a1 100644 --- a/packages/i18n/src/locales/fr.json +++ b/packages/i18n/src/locales/fr.json @@ -42,39 +42,30 @@ "theV8JavascriptEngine": "Le moteur JavaScript V8", "anIntroductionToTheNpmPackageManager": "Une introduction au gestionnaire de paquets npm", "ecmascript2015Es6AndBeyond": "ECMAScript 2015 (ES6) et au-delà", - "nodejsTheDifferenceBetweenDevelopmentAndProduction": "Node.js, la différence entre le développement et la production", - "nodejsWithWebassembly": "Node.js avec WebAssembly", "debugging": "Débogage de Node.js", - "profiling": "Profilage des applications Node.js", "fetch": "Récupérer des données avec Node.js", "websocket": "Client WebSocket avec Node.js", + "nodejsTheDifferenceBetweenDevelopmentAndProduction": "Node.js, la différence entre le développement et la production", + "profiling": "Profilage des applications Node.js", + "nodejsWithWebassembly": "Node.js avec WebAssembly", "securityBestPractices": "Meilleures pratiques de sécurité", "userlandMigrations": "Introduction à Userland Migrations" } }, - "typescript": { + "commandLine": { "links": { - "typescript": "TypeScript", - "introduction": "Introduction à TypeScript", - "transpile": "Exécution du code TypeScript à l'aide de la transpilation", - "run": "Exécuter TypeScript avec un runner", - "runNatively": "Exécuter TypeScript en mode natif", - "publishingTSPackage": "Publier un package TypeScript" + "commandLine": "Ligne de commande", + "runNodejsScriptsFromTheCommandLine": "Exécuter les scripts Node.js en ligne de commande", + "howToUseTheNodejsRepl": "Comment utiliser le REPL Node.js", + "outputToTheCommandLineUsingNodejs": "Sortie vers la ligne de commande avec Node.js", + "acceptInputFromTheCommandLineInNodejs": "Accepter des données provenant de la ligne de commande dans Node.js", + "howToReadEnvironmentVariablesFromNodejs": "Comment lire les variables d'environnement de Node.js" } }, - "asynchronousWork": { + "http": { "links": { - "asynchronousWork": "Travail asynchrone", - "asynchronousFlowControl": "Contrôle de l'exécution asynchrone", - "discoverPromisesInNodejs": "Découvrir les promesses dans Node.js", - "overviewOfBlockingVsNonBlocking": "Vue d'ensemble des opérations bloquantes vs non bloquantes", - "javascriptAsynchronousProgrammingAndCallbacks": "Programmation asynchrone en JavaScript et Callbacks", - "discoverJavascriptTimers": "Découvrez les minuteurs JavaScript", - "eventLoopTimersAndNexttick": "La boucle d'évènement Node.js", - "theNodejsEventEmitter": "L'émetteur d'événement Node.js", - "understandingProcessnexttick": "Comprendre process.nextTick()", - "understandingSetimmediate": "Comprendre setImmediate()", - "dontBlockTheEventLoop": "Ne bloquez pas la boucle d'événement" + "http": "HTTP", + "anatomyOfAnHttpTransaction": "Anatomie d'une transaction HTTP" } }, "manipulatingFiles": { @@ -82,40 +73,54 @@ "manipulatingFiles": "Manipuler des fichiers", "nodejsFileStats": "Statistiques des fichiers Node.js", "nodejsFilePaths": "Chemins d'accès aux fichiers Node.js", - "workingWithFileDescriptorsInNodejs": "Travailler avec des descripteurs de fichiers dans Node.js", "readingFilesWithNodejs": "Lire des fichiers avec Node.js", "writingFilesWithNodejs": "Écrire des fichiers avec Node.js", + "workingWithFileDescriptorsInNodejs": "Travailler avec des descripteurs de fichiers dans Node.js", "workingWithFoldersInNodejs": "Travailler avec des dossiers dans Node.js", "workingWithDifferentFilesystems": "Comment travailler avec différents systèmes de fichiers" } }, - "commandLine": { + "asynchronousWork": { "links": { - "commandLine": "Ligne de commande", - "runNodejsScriptsFromTheCommandLine": "Exécuter les scripts Node.js en ligne de commande", - "howToReadEnvironmentVariablesFromNodejs": "Comment lire les variables d'environnement de Node.js", - "howToUseTheNodejsRepl": "Comment utiliser le REPL Node.js", - "outputToTheCommandLineUsingNodejs": "Sortie vers la ligne de commande avec Node.js", - "acceptInputFromTheCommandLineInNodejs": "Accepter des données provenant de la ligne de commande dans Node.js" + "asynchronousWork": "Travail asynchrone", + "javascriptAsynchronousProgrammingAndCallbacks": "Programmation asynchrone en JavaScript et Callbacks", + "asynchronousFlowControl": "Contrôle de l'exécution asynchrone", + "discoverPromisesInNodejs": "Découvrir les promesses dans Node.js", + "discoverJavascriptTimers": "Découvrez les minuteurs JavaScript", + "overviewOfBlockingVsNonBlocking": "Vue d'ensemble des opérations bloquantes vs non bloquantes", + "eventLoopTimersAndNexttick": "La boucle d'évènement Node.js", + "theNodejsEventEmitter": "L'émetteur d'événement Node.js", + "understandingProcessnexttick": "Comprendre process.nextTick()", + "understandingSetimmediate": "Comprendre setImmediate()", + "dontBlockTheEventLoop": "Ne bloquez pas la boucle d'événement" + } + }, + "typescript": { + "links": { + "typescript": "TypeScript", + "introduction": "Introduction à TypeScript", + "runNatively": "Exécuter TypeScript en mode natif", + "transpile": "Exécution du code TypeScript à l'aide de la transpilation", + "run": "Exécuter TypeScript avec un runner", + "publishingTSPackage": "Publier un package TypeScript" } }, "modules": { "links": { "modules": "Modules", + "howToUseStreams": "Comment utiliser les flux", + "backpressuringInStreams": "La contre-pression dans Streams", "publishingAPackage": "Publication d'un paquet", "publishingNodeApiModules": "Comment publier un paquet Node-API", - "anatomyOfAnHttpTransaction": "Anatomie d'une transaction HTTP", - "abiStability": "Stabilité de l'ABI", - "howToUseStreams": "Comment utiliser les flux", - "backpressuringInStreams": "La contre-pression dans Streams" + "abiStability": "Stabilité de l'ABI" } }, "diagnostics": { "links": { "diagnostics": "Diagnostique", "userJourney": "Parcours de l'utilisateur", - "understandingAndTuningMemory": "Comprendre et optimiser la mémoire", "memory": "Mémoire", + "understandingAndTuningMemory": "Comprendre et optimiser la mémoire", "liveDebugging": "Débogage en direct", "poorPerformance": "Mauvaise performance", "flameGraphs": "Graphiques de flamme" diff --git a/packages/i18n/src/locales/id.json b/packages/i18n/src/locales/id.json index 5482a004f42ba..978421f0f3697 100644 --- a/packages/i18n/src/locales/id.json +++ b/packages/i18n/src/locales/id.json @@ -3,11 +3,15 @@ "containers": { "footer": { "links": { + "openJSFoundation": "OpenJS Foundation", "trademarkPolicy": "Kebijakan Merek Dagang", "privacyPolicy": "Kebijakan Privasi", - "versionSupport": "Dukungan Versi", "codeOfConduct": "Pedoman Perilaku", "security": "Kebijakan Keamanan" + }, + "releasePills": { + "latestLTS": "LTS Terbaru", + "latestRelease": "Versi Terbaru" } }, "navBar": { @@ -33,43 +37,35 @@ "links": { "gettingStarted": "Memulai", "introductionToNodejs": "Pengantar Node.js", - "howMuchJavascriptDoYouNeedToKnowToUseNodejs": "Seberapa banyak JavaScript yang anda perlu tahu untuk menggunakan Node.js?", + "howMuchJavascriptDoYouNeedToKnowToUseNodejs": "Seberapa banyak JavaScript yang perlu kamu tahu untuk menggunakan Node.js?", "differencesBetweenNodejsAndTheBrowser": "Perbedaan Node.js dengan Browser", "theV8JavascriptEngine": "V8 JavaScript Engine", "anIntroductionToTheNpmPackageManager": "Perkenalan package manager npm", "ecmascript2015Es6AndBeyond": "ECMAScript 2015 (ES6) dan seterusnya", - "nodejsTheDifferenceBetweenDevelopmentAndProduction": "Node.js, perbedaan antara development dan production", - "nodejsWithWebassembly": "Node.js dengan WebAssembly", "debugging": "Men-debug Node.js", - "profiling": "Profilisasi Aplikasi Node.js", "fetch": "Pengambilan data dengan Node.js", "websocket": "Klien WebSocket dengan Node.js", - "securityBestPractices": "Praktik Keamanan Terbaik" + "nodejsTheDifferenceBetweenDevelopmentAndProduction": "Node.js, perbedaan antara development dan production", + "profiling": "Profilisasi Aplikasi Node.js", + "nodejsWithWebassembly": "Node.js dengan WebAssembly", + "securityBestPractices": "Praktik Keamanan Terbaik", + "userlandMigrations": "Pengenalan Migrasi di Userland" } }, - "typescript": { + "commandLine": { "links": { - "typescript": "TypeScript", - "introduction": "Pengantar TypeScript", - "transpile": "Menjalankan kode TypeScript menggunakan transpilasi", - "run": "Menjalankan TypeScript dengan runner", - "runNatively": "Menjalankan TypeScript Secara Native", - "publishingTSPackage": "Menerbitkan package TypeScript" + "commandLine": "Baris Perintah", + "runNodejsScriptsFromTheCommandLine": "Menjalankan skrip Node.js dari baris perintah", + "howToUseTheNodejsRepl": "Cara menggunakan Node.js REPL", + "outputToTheCommandLineUsingNodejs": "Output ke baris perintah menggunakan Node.js", + "acceptInputFromTheCommandLineInNodejs": "Menerima input dari baris perintah di Node.js", + "howToReadEnvironmentVariablesFromNodejs": "Membaca environment variable dari Node.js" } }, - "asynchronousWork": { + "http": { "links": { - "asynchronousWork": "Pekerjaan Asinkron", - "asynchronousFlowControl": "Pengendalian alur asinkron", - "discoverPromisesInNodejs": "Memahami Promise di Node.js", - "overviewOfBlockingVsNonBlocking": "Ringkasan Pemblokiran vs Non-Pemblokiran", - "javascriptAsynchronousProgrammingAndCallbacks": "Pemrograman dan Panggilan Balik Asinkron JavaScript", - "discoverJavascriptTimers": "Jelajahi Pengatur Waktu JavaScript", - "eventLoopTimersAndNexttick": "Node.js Event Loop", - "theNodejsEventEmitter": "Node.js Event Emitter", - "understandingProcessnexttick": "Memahami process.nextTick()", - "understandingSetimmediate": "Memahami setImmediate()", - "dontBlockTheEventLoop": "Jangan blokir Event Loop" + "http": "HTTP", + "anatomyOfAnHttpTransaction": "Anatomi Transaksi HTTP" } }, "manipulatingFiles": { @@ -77,40 +73,54 @@ "manipulatingFiles": "Manipulasi File", "nodejsFileStats": "Statistik berkas Node.js", "nodejsFilePaths": "Path Berkas Node.js", - "workingWithFileDescriptorsInNodejs": "Bekerja dengan file descriptors di Node.js", "readingFilesWithNodejs": "Membaca file dengan Node.js", "writingFilesWithNodejs": "Menulis file dengan Node.js", + "workingWithFileDescriptorsInNodejs": "Bekerja dengan file descriptors di Node.js", "workingWithFoldersInNodejs": "Bekerja dengan folder di Node.js", "workingWithDifferentFilesystems": "Bekerja dengan Sistem file yang berbeda" } }, - "commandLine": { + "asynchronousWork": { "links": { - "commandLine": "Baris Perintah", - "runNodejsScriptsFromTheCommandLine": "Menjalankan skrip Node.js dari baris perintah", - "howToReadEnvironmentVariablesFromNodejs": "Membaca environment variable dari Node.js", - "howToUseTheNodejsRepl": "Cara menggunakan Node.js REPL", - "outputToTheCommandLineUsingNodejs": "Output ke baris perintah menggunakan Node.js", - "acceptInputFromTheCommandLineInNodejs": "Menerima input dari baris perintah di Node.js" + "asynchronousWork": "Pekerjaan Asinkron", + "javascriptAsynchronousProgrammingAndCallbacks": "Pemrograman dan Panggilan Balik Asinkron JavaScript", + "asynchronousFlowControl": "Pengendalian alur asinkron", + "discoverPromisesInNodejs": "Memahami Promise di Node.js", + "discoverJavascriptTimers": "Jelajahi Pengatur Waktu JavaScript", + "overviewOfBlockingVsNonBlocking": "Ringkasan Pemblokiran vs Non-Pemblokiran", + "eventLoopTimersAndNexttick": "Node.js Event Loop", + "theNodejsEventEmitter": "Node.js Event Emitter", + "understandingProcessnexttick": "Memahami process.nextTick()", + "understandingSetimmediate": "Memahami setImmediate()", + "dontBlockTheEventLoop": "Jangan blokir Event Loop" + } + }, + "typescript": { + "links": { + "typescript": "TypeScript", + "introduction": "Pengantar TypeScript", + "runNatively": "Menjalankan TypeScript Secara Native", + "transpile": "Menjalankan kode TypeScript menggunakan transpilasi", + "run": "Menjalankan TypeScript dengan runner", + "publishingTSPackage": "Menerbitkan package TypeScript" } }, "modules": { "links": { "modules": "Module", + "howToUseStreams": "Cara menggunakan stream", + "backpressuringInStreams": "Backpressuring dalam aliran (streams)", "publishingAPackage": "Menerbitkan Paket", "publishingNodeApiModules": "Cara mempublikasikan paket Node-API", - "anatomyOfAnHttpTransaction": "Anatomi Transaksi HTTP", - "abiStability": "Stabilitas ABI", - "howToUseStreams": "Cara menggunakan stream", - "backpressuringInStreams": "Backpressuring dalam aliran (streams)" + "abiStability": "Stabilitas ABI" } }, "diagnostics": { "links": { "diagnostics": "Diagnostik", "userJourney": "Jurnal Pengguna", - "understandingAndTuningMemory": "Pemahaman dan Penyetelan Memori", "memory": "Memori", + "understandingAndTuningMemory": "Pemahaman dan Penyetelan Memori", "liveDebugging": "Pemecahan Masalah Langsung", "poorPerformance": "Performa Buruk", "flameGraphs": "Flame Graph" @@ -133,7 +143,9 @@ "branding": "Pencitraan Node.js", "governance": "Tata Kelola Proyek", "releases": "Rilisan Node.js", - "security": "Pelaporan Keamanan" + "security": "Pelaporan Keamanan", + "partners": "Mitra & Pendukung", + "eol": "Akhir Masa Dukungan (EOL)" } }, "getInvolved": { @@ -156,17 +168,60 @@ "status": "Status", "details": "Rincian" }, + "downloadsTable": { + "fileName": "Nama Berkas", + "operatingSystem": "OS", + "architecture": "Arsitektur" + }, "releaseModal": { - "title": "Node.js {version} ({codename})", - "titleWithoutCodename": "Node.js {version}", + "title": "Node.js v{version} ({codename})", + "titleWithoutCodename": "Node.js v{version}", "overview": "Ringkasan", "minorVersions": "Versi minor", "releaseAnnouncement": "Pengumuman Perilisan", - "unsupportedVersionWarning": "Versi ini sudah tidak dalam tahap pemeliharaan. Harap gunakan versi yang saat ini didukung." + "unsupportedVersionWarning": "Versi ini sudah tidak dalam tahap pemeliharaan. Harap gunakan versi yang didukung. Pahami dukungan EOL.", + "ltsVersionFeaturesNotice": "Ingin mencoba fitur baru lebih cepat? Dapatkan versi Node.js terbaru dan coba peningkatan terbarunya!" + }, + "eolAlert": { + "message": "Dukungan komersial untuk versi yang telah melewati fase Maintenance LTS tersedia melalui para mitra dalam Program Keberlanjutan Ekosistem OpenJS" + }, + "eolChip": { + "severity": { + "unknown": "Tak diketahui", + "low": "Rendah", + "medium": "Sedang", + "high": "Tinggi", + "critical": "Kritis" + } + }, + "eolModal": { + "title": "Dukungan resmi untuk Node.js v{version} ({codename}) telah berakhir", + "titleWithoutCodename": "Dukungan resmi untuk Node.js v{version} telah berakhir", + "vulnerabilitiesMessage": "Terdapat lebih dari {count} masalah keamanan (CVE) yang diketahui terkait dengan rilis Node.js ini.\nCVE (Common Vulnerabilities and Exposures) adalah pengidentifikasi untuk kerentanan keamanan yang dilaporkan secara publik.\nMengklik tautan CVE akan membawa mu ke detail teknis yang lebih lengkap, seperti bagaimana kerentanan tersebut bekerja.", + "noVulnerabilitiesMessage": "Saat ini tidak ada CVE (Common Vulnerabilities and Exposures) yang diketahui terkait dengan rilis Node.js ini.\nNamun, hal tersebut tidak berarti rilis ini sepenuhnya aman—beberapa kerentanan mungkin belum ditemukan atau belum dipublikasikan secara terbuka.\nJika rilis ini sudah usang atau tidak lagi didukung, tetap disarankan untuk mempertimbangkan pembaruan agar Anda mendapatkan perbaikan dan peningkatan keamanan terbaru.", + "blogLinkText": "Artikel", + "showUnknownSeverities": "Tampilkan kerentanan dengan tingkat keparahan tidak diketahui", + "table": { + "cves": "CVE", + "severity": "Tingkat keparahan", + "overview": "Ringkasan", + "details": "Rincian" + } + }, + "eolTable": { + "version": "Versi", + "codename": "Kode nama", + "releaseDate": "Dirilis pada", + "lastUpdated": "Pembaruan Terakhir", + "vulnerabilities": "Kerentanan", + "details": "Rincian" }, "minorReleasesTable": { "version": "Versi", "links": "Tautan", + "nApiVersion": "Versi N-API", + "npmVersion": "versi npm", + "v8Version": "V8 versi", "actions": { "release": "Rilis", "changelog": "Log Perubahan", @@ -217,7 +272,8 @@ "label": "Pilih Bahasa" }, "themeToggle": { - "label": "Aktifkan Mode Gelap" + "light": "Beralih ke Mode Terang", + "dark": "Beralih ke Mode Gelap" } }, "metabar": { @@ -232,13 +288,24 @@ "tableOfContents": "Daftar isi" }, "search": { - "searchBox": { - "placeholder": "Mulai mengetik..." - } + "searchPlaceholder": "Mulai mengetik...", + "chatPlaceholder": "Tanya saya apa saja", + "noResultsFoundFor": "Tidak ada hasil ditemukan untuk", + "suggestions": "Saran", + "seeAll": "Lihat semua", + "addMore": "Tambahkan lebih banyak", + "clearChat": "Bersihkan obrolan", + "errorMessage": "Terjadi kesalahan saat melakukan pencarian. Silakan coba lagi.", + "disclaimer": "Ringkasan berbasis AI dapat mengandung kesalahan. Harap verifikasi informasi tersebut.", + "startYourSearch": "Mulai pencarian anda", + "initErrorSearch": "Tidak dapat memulai layanan pencarian", + "initErrorChat": "Tidak dapat memulai layanan obrolan", + "chatButtonLabel": "Dapatkan ringkasan AI", + "searchButtonLabel": "Pencarian" }, "blog": { "blogHeader": { - "subtitle": "Berita terbaru Node.js, studi kasus, tutorial, dan sumber.", + "subtitle": "Berita terbaru seputar Node.js, panduan migrasi, dan ringkasan acara", "rssLink": "RSS feed" } } @@ -269,13 +336,14 @@ "video": "Video", "weekly": "Pembaruan mingguan", "wg": "Kelompok Kerja", + "migrations": "Panduan Migrasi", "events": "Event" } }, "error": { "notFound": { "title": "Halaman tidak dapat ditemukan", - "description": "Maaf, kami tidak dapat menemukan halaman yang anda cari! Coba memulai kembali dari halaman beranda." + "description": "Maaf, kami tidak dapat menemukan halaman yang kamu cari! Coba memulai kembali dari halaman beranda." }, "internalServerError": { "title": "Kesalahan Server Internal", @@ -293,7 +361,7 @@ "os": "Sistem Operasi", "version": "Versi", "installMethod": "Cara pasang", - "packageManager": "Package manager", + "packageManager": "Manajer paket", "unknown": "Tak diketahui", "platformGroups": { "official": "Direkomendasikan (Resmi)", @@ -302,9 +370,10 @@ }, "codeBox": { "unsupportedVersionWarning": "Versi ini sudah tidak dalam tahap pemeliharaan. Harap gunakan versi yang saat ini didukung. Pahami dukungan EOL.", + "ltsVersionFeaturesNotice": "Ingin mencoba fitur baru lebih cepat? Dapatkan versi Node.js terbaru dan coba peningkatan terbarunya!", "communityPlatformInfo": "Metode instalasi yang melibatkan perangkat lunak komunitas didukung oleh tim yang memelihara perangkat lunak tersebut.", - "externalSupportInfo": "Jika Anda mengalami masalah, silakan kunjungi situs web {platform}", - "noScriptDetected": "Halaman ini memerlukan JavaScript. Anda dapat mengunduh Node.js tanpa JavaScript dengan mengunjungi halaman rilis secara langsung.", + "externalSupportInfo": "Jika kamu mengalami masalah, silakan kunjungi situs web {platform}", + "noScriptDetected": "Halaman ini memerlukan JavaScript.\nKamu tetap dapat mengunduh Node.js tanpa mengaktifkan JavaScript dengan langsung mengunjungi halaman arsip unduhan.", "platformInfo": { "default": "{platform} dan skrip instalasinya tidak dikelola oleh proyek Node.js.", "nvm": "\"nvm\" adalah manajer versi Node.js lintas-platform.", diff --git a/packages/i18n/src/locales/ja.json b/packages/i18n/src/locales/ja.json index 685fb6ad506ad..f88cb8a8c1c0e 100644 --- a/packages/i18n/src/locales/ja.json +++ b/packages/i18n/src/locales/ja.json @@ -42,38 +42,30 @@ "theV8JavascriptEngine": "V8 JavaScriptエンジン", "anIntroductionToTheNpmPackageManager": "npmパッケージマネージャーの紹介", "ecmascript2015Es6AndBeyond": "ECMAScript 2015(ES6)とそれ以降のバージョン", - "nodejsTheDifferenceBetweenDevelopmentAndProduction": "Node.jsにおける開発環境と本番環境の違い", - "nodejsWithWebassembly": "Node.jsとWebAssembly", "debugging": "Node.jsのデバッグ", - "profiling": "Node.jsアプリケーションのプロファイリング", "fetch": "Node.jsでデータを取得する", "websocket": "Node.jsでのWebSocketクライアント", - "securityBestPractices": "セキュリティーベストプラクティス" + "nodejsTheDifferenceBetweenDevelopmentAndProduction": "Node.jsにおける開発環境と本番環境の違い", + "profiling": "Node.jsアプリケーションのプロファイリング", + "nodejsWithWebassembly": "Node.jsとWebAssembly", + "securityBestPractices": "セキュリティーベストプラクティス", + "userlandMigrations": "ユーザーランドコード移行の概要" } }, - "typescript": { + "commandLine": { "links": { - "typescript": "TypeScript", - "introduction": "TypeScriptの導入", - "transpile": "トランスパイルを用いたTypeScriptの実行", - "run": "実行ツールを用いたTypeScriptの実行", - "runNatively": "TypeScriptをネイティブに実行する", - "publishingTSPackage": "TypeScriptパッケージを公開する" + "commandLine": "コマンドライン", + "runNodejsScriptsFromTheCommandLine": "コマンドラインからNode.jsスクリプトを実行する", + "howToUseTheNodejsRepl": "Node.js REPLの使用方法", + "outputToTheCommandLineUsingNodejs": "Node.jsを使用してコマンドラインに出力する", + "acceptInputFromTheCommandLineInNodejs": "Node.jsでコマンドラインからの入力を受け取る", + "howToReadEnvironmentVariablesFromNodejs": "Node.jsから環境変数を読み込む方法" } }, - "asynchronousWork": { + "http": { "links": { - "asynchronousWork": "非同期処理", - "asynchronousFlowControl": "非同期のフロー制御", - "discoverPromisesInNodejs": "Node.jsでプロミスを知る", - "overviewOfBlockingVsNonBlocking": "ブロッキングとノンブロッキングの概要", - "javascriptAsynchronousProgrammingAndCallbacks": "JavaScriptの非同期プログラミングとコールバック", - "discoverJavascriptTimers": "JavaScriptのタイマー処理について", - "eventLoopTimersAndNexttick": "Node.jsのイベントループ", - "theNodejsEventEmitter": "Node.jsのイベントエミッター", - "understandingProcessnexttick": "process.nextTick()について", - "understandingSetimmediate": "setImmediate()について", - "dontBlockTheEventLoop": "イベントループをブロックしない" + "http": "HTTP", + "anatomyOfAnHttpTransaction": "HTTPトランザクションの構成" } }, "manipulatingFiles": { @@ -81,46 +73,54 @@ "manipulatingFiles": "ファイルの操作", "nodejsFileStats": "Node.jsでのファイル情報", "nodejsFilePaths": "Node.jsでのファイルパス", - "workingWithFileDescriptorsInNodejs": "Node.jsでのファイルディスクリプターの操作", "readingFilesWithNodejs": "Node.jsを使用したファイルの読み込み", "writingFilesWithNodejs": "Node.jsを使用したファイルの書き込み", + "workingWithFileDescriptorsInNodejs": "Node.jsでのファイルディスクリプターの操作", "workingWithFoldersInNodejs": "Node.jsでのフォルダーの操作", "workingWithDifferentFilesystems": "異なるファイルシステムを扱う方法" } }, - "commandLine": { + "asynchronousWork": { "links": { - "commandLine": "コマンドライン", - "runNodejsScriptsFromTheCommandLine": "コマンドラインからNode.jsスクリプトを実行する", - "howToReadEnvironmentVariablesFromNodejs": "Node.jsから環境変数を読み込む方法", - "howToUseTheNodejsRepl": "Node.js REPLの使用方法", - "outputToTheCommandLineUsingNodejs": "Node.jsを使用してコマンドラインに出力する", - "acceptInputFromTheCommandLineInNodejs": "Node.jsでコマンドラインからの入力を受け取る" + "asynchronousWork": "非同期処理", + "javascriptAsynchronousProgrammingAndCallbacks": "JavaScriptの非同期プログラミングとコールバック", + "asynchronousFlowControl": "非同期のフロー制御", + "discoverPromisesInNodejs": "Node.jsでプロミスを知る", + "discoverJavascriptTimers": "JavaScriptのタイマー処理について", + "overviewOfBlockingVsNonBlocking": "ブロッキングとノンブロッキングの概要", + "eventLoopTimersAndNexttick": "Node.jsのイベントループ", + "theNodejsEventEmitter": "Node.jsのイベントエミッター", + "understandingProcessnexttick": "process.nextTick()について", + "understandingSetimmediate": "setImmediate()について", + "dontBlockTheEventLoop": "イベントループをブロックしない" } }, - "migrations": { + "typescript": { "links": { - "migrations": "ユーザーランドの移行", - "introduction": "ユーザーランドの移行入門" + "typescript": "TypeScript", + "introduction": "TypeScriptの導入", + "runNatively": "TypeScriptをネイティブに実行する", + "transpile": "トランスパイルを用いたTypeScriptの実行", + "run": "実行ツールを用いたTypeScriptの実行", + "publishingTSPackage": "TypeScriptパッケージを公開する" } }, "modules": { "links": { "modules": "モジュール", + "howToUseStreams": "ストリームの使い方", + "backpressuringInStreams": "ストリーム内のバックプレッシャー", "publishingAPackage": "パッケージの公開", "publishingNodeApiModules": "Node-APIパッケージを公開する方法", - "anatomyOfAnHttpTransaction": "HTTPトランザクションの構成", - "abiStability": "ABIの安定性", - "howToUseStreams": "ストリームの使い方", - "backpressuringInStreams": "ストリーム内のバックプレッシャー" + "abiStability": "ABIの安定性" } }, "diagnostics": { "links": { "diagnostics": "診断", "userJourney": "ユーザージャーニー", - "understandingAndTuningMemory": "メモリーのチューニングの理解", "memory": "メモリー", + "understandingAndTuningMemory": "メモリーのチューニングの理解", "liveDebugging": "ライブデバッグ", "poorPerformance": "パフォーマンスの低下", "flameGraphs": "フレームグラフ" @@ -183,7 +183,7 @@ "ltsVersionFeaturesNotice": "すぐに最新の機能を試したいですか?最新バージョンのNode.jsを代わりにインストールして最新の機能を試してください!" }, "eolAlert": { - "message": "Maintenance LTS期間を終了したバージョンの商用サポートは、私たちのOpenJSエコシステム持続可能性プログラムパートナーであるHeroDevsを通して利用可能です。" + "message": "Maintenance LTS期間を過ぎたバージョンの商用サポートはOpenJSエコシステム持続可能性プログラムパートナーを通して利用できます。" }, "eolChip": { "severity": { @@ -305,7 +305,7 @@ }, "blog": { "blogHeader": { - "subtitle": "最新のNode.jsのニュース、ケーススタディ、チュートリアル、リソース。", + "subtitle": "最新のNode.jsニュース、移行ガイド、イベント概要", "rssLink": "RSSフィード" } } @@ -336,6 +336,7 @@ "video": "ビデオ", "weekly": "週間更新", "wg": "作業グループ", + "migrations": "移行ガイド", "events": "イベント" } }, diff --git a/packages/i18n/src/locales/uk.json b/packages/i18n/src/locales/uk.json index bf7bc0cbcea35..ebb924e7ce370 100644 --- a/packages/i18n/src/locales/uk.json +++ b/packages/i18n/src/locales/uk.json @@ -42,38 +42,30 @@ "theV8JavascriptEngine": "Рушій JavaScript V8", "anIntroductionToTheNpmPackageManager": "Вступ до менеджера пакетів npm", "ecmascript2015Es6AndBeyond": "ECMAScript 2015 (ES6) і новіші версії", - "nodejsTheDifferenceBetweenDevelopmentAndProduction": "Різниця між клієнтським та розробницьким середовищем у Node.js", - "nodejsWithWebassembly": "Node.js із WebAssembly", "debugging": "Налагодження Node.js", - "profiling": "Профілювання застосунків Node.js", "fetch": "Отримання даних із Node.js", "websocket": "Клієнт WebSocket із Node.js", - "securityBestPractices": "Найкращі практики безпеки" + "nodejsTheDifferenceBetweenDevelopmentAndProduction": "Різниця між клієнтським та розробницьким середовищем у Node.js", + "profiling": "Профілювання застосунків Node.js", + "nodejsWithWebassembly": "Node.js із WebAssembly", + "securityBestPractices": "Найкращі практики безпеки", + "userlandMigrations": "Вступ до користувацьких міграцій" } }, - "typescript": { + "commandLine": { "links": { - "typescript": "TypeScript", - "introduction": "Вступ до TypeScript", - "transpile": "Запуск коду на TypeScript за допомогою транспіляції", - "run": "Запуск коду на TypeScript із виконавцем", - "runNatively": "Запуск коду на TypeScript нативно", - "publishingTSPackage": "Публікація пакета TypeScript" + "commandLine": "Командний рядок", + "runNodejsScriptsFromTheCommandLine": "Запуск скриптів Node.js із командного рядка", + "howToUseTheNodejsRepl": "Як використовувати REPL у Node.js", + "outputToTheCommandLineUsingNodejs": "Вивід у командний рядок із Node.js", + "acceptInputFromTheCommandLineInNodejs": "Зчитування вводу з командного рядка з Node.js", + "howToReadEnvironmentVariablesFromNodejs": "Отримання доступу до змінних середовища в Node.js" } }, - "asynchronousWork": { + "http": { "links": { - "asynchronousWork": "Асинхронна робота", - "asynchronousFlowControl": "Асинхронне управління потоком", - "discoverPromisesInNodejs": "Проміси в Node.js", - "overviewOfBlockingVsNonBlocking": "Огляд блокувальних і неблокувальних викликів", - "javascriptAsynchronousProgrammingAndCallbacks": "Асинхронне програмування і функції зворотного виклику в JavaScript", - "discoverJavascriptTimers": "Таймери JavaScript", - "eventLoopTimersAndNexttick": "Цикл подій у Node.js", - "theNodejsEventEmitter": "Емітер подій у Node.js", - "understandingProcessnexttick": "Розуміння process.nextTick()", - "understandingSetimmediate": "Розуміння setImmediate()", - "dontBlockTheEventLoop": "Уникайте блокування циклу подій" + "http": "HTTP", + "anatomyOfAnHttpTransaction": "Анатомія HTTP-транзакції" } }, "manipulatingFiles": { @@ -81,46 +73,54 @@ "manipulatingFiles": "Робота з файлами", "nodejsFileStats": "Властивості файлу в Node.js", "nodejsFilePaths": "Шляхи файлу в Node.js", - "workingWithFileDescriptorsInNodejs": "Робота з файловими дескрипторами в Node.js", "readingFilesWithNodejs": "Читання файлів із Node.js", "writingFilesWithNodejs": "Запис у файл із Node.js", + "workingWithFileDescriptorsInNodejs": "Робота з файловими дескрипторами в Node.js", "workingWithFoldersInNodejs": "Робота з директоріями з Node.js", "workingWithDifferentFilesystems": "Робота з різними файловими системами" } }, - "commandLine": { + "asynchronousWork": { "links": { - "commandLine": "Командний рядок", - "runNodejsScriptsFromTheCommandLine": "Запуск скриптів Node.js із командного рядка", - "howToReadEnvironmentVariablesFromNodejs": "Отримання доступу до змінних середовища в Node.js", - "howToUseTheNodejsRepl": "Як використовувати REPL у Node.js", - "outputToTheCommandLineUsingNodejs": "Вивід у командний рядок із Node.js", - "acceptInputFromTheCommandLineInNodejs": "Зчитування вводу з командного рядка з Node.js" + "asynchronousWork": "Асинхронна робота", + "javascriptAsynchronousProgrammingAndCallbacks": "Асинхронне програмування і функції зворотного виклику в JavaScript", + "asynchronousFlowControl": "Асинхронне управління потоком", + "discoverPromisesInNodejs": "Проміси в Node.js", + "discoverJavascriptTimers": "Таймери JavaScript", + "overviewOfBlockingVsNonBlocking": "Огляд блокувальних і неблокувальних викликів", + "eventLoopTimersAndNexttick": "Цикл подій у Node.js", + "theNodejsEventEmitter": "Емітер подій у Node.js", + "understandingProcessnexttick": "Розуміння process.nextTick()", + "understandingSetimmediate": "Розуміння setImmediate()", + "dontBlockTheEventLoop": "Уникайте блокування циклу подій" } }, - "migrations": { + "typescript": { "links": { - "migrations": "Користувацькі міграції", - "introduction": "Вступ до користувацьких міграцій" + "typescript": "TypeScript", + "introduction": "Вступ до TypeScript", + "runNatively": "Запуск коду на TypeScript нативно", + "transpile": "Запуск коду на TypeScript за допомогою транспіляції", + "run": "Запуск коду на TypeScript із виконавцем", + "publishingTSPackage": "Публікація пакета TypeScript" } }, "modules": { "links": { "modules": "Модулі", + "howToUseStreams": "Використання потоків", + "backpressuringInStreams": "Зворотний тиск у потоках", "publishingAPackage": "Публікація пакета", "publishingNodeApiModules": "Як опублікувати пакет Node-API", - "anatomyOfAnHttpTransaction": "Анатомія HTTP-транзакції", - "abiStability": "Стабільність ABI", - "howToUseStreams": "Використання потоків", - "backpressuringInStreams": "Зворотний тиск у потоках" + "abiStability": "Стабільність ABI" } }, "diagnostics": { "links": { "diagnostics": "Діагностика", "userJourney": "Шлях користувача", - "understandingAndTuningMemory": "Розуміння та налаштування пам'яті", "memory": "Пам’ять", + "understandingAndTuningMemory": "Розуміння та налаштування пам'яті", "liveDebugging": "Налагодження в реальному часі", "poorPerformance": "Низька продуктивність", "flameGraphs": "Flame-графіки" @@ -144,6 +144,7 @@ "governance": "Управління проєктом", "releases": "Релізи Node.js", "security": "Звітність про безпеку", + "partners": "Партнери й підтримувачі", "eol": "Кінець підтримки (EOL)" } }, @@ -182,7 +183,7 @@ "ltsVersionFeaturesNotice": "Бажаєте отримати нові функції швидше? Установіть останню версію Node.js та випробуйте останні покращення!" }, "eolAlert": { - "message": "Комерційна підтримка для версій після фази Maintenance LTS доступна з нашим партнером програми OpenJS Ecosystem Sustainability HeroDevs" + "message": "Комерційна підтримка для версій після фази Maintenance LTS доступна з нашими партнерами програми OpenJS Ecosystem Sustainability HeroDevs" }, "eolChip": { "severity": { @@ -304,7 +305,7 @@ }, "blog": { "blogHeader": { - "subtitle": "Останні новини Node.js, тематичні дослідження, практичні заняття та ресурси.", + "subtitle": "Останні новини Node.js, посібники з міграцій та підсумки подій", "rssLink": "RSS-канал" } } @@ -335,6 +336,7 @@ "video": "Відео", "weekly": "Щотижневі оновлення", "wg": "Робочі групи", + "migrations": "Посібники з міграцій", "events": "Події" } }, From 040b18191cbfee4070f119d588ebba9da681511f Mon Sep 17 00:00:00 2001 From: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com> Date: Fri, 7 Nov 2025 05:13:20 +0000 Subject: [PATCH 2/2] chore: automated format of translated files Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- .../Blog/BlogPostCard/index.module.css | 4 +- .../components/Common/Turtle/index.module.css | 8 ++-- .../Downloads/Release/ReleaseCodeBox.tsx | 2 +- apps/site/layouts/layouts.module.css | 6 +-- apps/site/pages/en/about/branding.mdx | 4 +- apps/site/pages/fr/about/branding.mdx | 19 ++++++++- apps/site/pages/fr/about/eol.mdx | 2 +- .../pages/fr/about/security-reporting.mdx | 11 ++++- apps/site/pages/fr/download/archive/index.mdx | 3 +- apps/site/pages/fr/download/current.mdx | 21 +++++----- apps/site/pages/fr/download/index.mdx | 21 +++++----- apps/site/pages/fr/index.mdx | 6 ++- apps/site/pages/id/about/branding.mdx | 19 ++++++++- apps/site/pages/id/about/eol.mdx | 2 +- .../pages/id/about/security-reporting.mdx | 6 ++- apps/site/pages/id/download/archive/index.mdx | 4 +- apps/site/pages/id/download/current.mdx | 24 ++++++----- apps/site/pages/id/download/index.mdx | 24 ++++++----- apps/site/pages/id/index.mdx | 6 ++- apps/site/pages/ja/about/branding.mdx | 19 ++++++++- apps/site/pages/ja/about/eol.mdx | 2 +- .../site/pages/ja/about/previous-releases.mdx | 10 ++--- .../pages/ja/about/security-reporting.mdx | 11 ++++- apps/site/pages/ja/download/archive/index.mdx | 3 +- apps/site/pages/ja/download/current.mdx | 17 ++++---- apps/site/pages/ja/download/index.mdx | 17 ++++---- apps/site/pages/ja/index.mdx | 6 ++- apps/site/pages/ro/about/branding.mdx | 19 ++++++++- .../pages/ro/about/security-reporting.mdx | 11 ++++- apps/site/pages/ro/download/archive/index.mdx | 3 +- apps/site/pages/uk/about/branding.mdx | 19 ++++++++- apps/site/pages/uk/about/eol.mdx | 2 +- .../pages/uk/about/security-reporting.mdx | 11 ++++- apps/site/pages/uk/download/archive/index.mdx | 3 +- apps/site/pages/uk/download/current.mdx | 23 ++++++----- apps/site/pages/uk/download/index.mdx | 23 ++++++----- apps/site/pages/uk/index.mdx | 6 ++- apps/site/pages/zh-cn/about/branding.mdx | 19 ++++++++- .../pages/zh-cn/about/previous-releases.mdx | 10 ++--- .../pages/zh-cn/about/security-reporting.mdx | 11 ++++- .../pages/zh-cn/download/archive/index.mdx | 3 +- apps/site/pages/zh-cn/download/current.mdx | 25 +++++++----- apps/site/pages/zh-cn/download/index.mdx | 21 +++++----- apps/site/pages/zh-cn/index.mdx | 6 ++- apps/site/styles/locales.css | 6 +-- packages/i18n/package.json | 2 +- .../src/Common/Badge/index.module.css | 4 +- .../src/Common/BadgeGroup/index.module.css | 2 +- .../src/Common/BaseButton/index.module.css | 30 +++++++------- .../src/Common/BaseCodeBox/index.module.css | 4 +- .../src/Common/BaseLinkTabs/index.module.css | 2 +- .../PaginationListItem/index.module.css | 8 ++-- .../src/Common/ChangeHistory/index.module.css | 16 ++++---- .../Common/GlowingBackdrop/index.module.css | 2 +- .../Common/LanguageDropDown/index.module.css | 4 +- .../src/Common/Modal/index.module.css | 4 +- .../src/Common/Preview/index.module.css | 40 +++++++++---------- .../src/Common/Select/index.module.css | 30 +++++++------- .../src/Common/Skeleton/index.module.css | 8 ++-- .../src/Common/Tabs/index.module.css | 4 +- .../src/Containers/Article/index.module.css | 8 ++-- .../Sidebar/SidebarGroup/index.module.css | 4 +- .../NotificationProvider/index.module.css | 2 +- .../ui-components/src/styles/markdown.css | 20 +++++----- 64 files changed, 440 insertions(+), 252 deletions(-) diff --git a/apps/site/components/Blog/BlogPostCard/index.module.css b/apps/site/components/Blog/BlogPostCard/index.module.css index 166f694e85505..53ec2686369f0 100644 --- a/apps/site/components/Blog/BlogPostCard/index.module.css +++ b/apps/site/components/Blog/BlogPostCard/index.module.css @@ -6,8 +6,8 @@ } .subtitle { - @apply mb-2 - mt-6 + @apply mt-6 + mb-2 inline-block text-xs font-semibold diff --git a/apps/site/components/Common/Turtle/index.module.css b/apps/site/components/Common/Turtle/index.module.css index 6bbeefdbd9bb2..82bacb8ee7d5e 100644 --- a/apps/site/components/Common/Turtle/index.module.css +++ b/apps/site/components/Common/Turtle/index.module.css @@ -8,20 +8,20 @@ translate-x-0 translate-y-0 after:absolute - after:-left-full after:top-[20%] + after:-left-full after:-z-10 after:block after:h-36 after:w-36 after:-rotate-90 - after:select-none after:bg-[url('/static/images/smoke.gif')] after:opacity-[0.15] after:content-[''] + after:select-none motion-reduce:animate-none - after:md:-left-1/2 - after:md:top-1/2; + after:md:top-1/2 + after:md:-left-1/2; } .image { diff --git a/apps/site/components/Downloads/Release/ReleaseCodeBox.tsx b/apps/site/components/Downloads/Release/ReleaseCodeBox.tsx index 63b9f57256d61..a3792cd7c0135 100644 --- a/apps/site/components/Downloads/Release/ReleaseCodeBox.tsx +++ b/apps/site/components/Downloads/Release/ReleaseCodeBox.tsx @@ -128,7 +128,7 @@ const ReleaseCodeBox: FC = () => { const isLoading = context.os === 'LOADING' || context.installMethod === ''; return ( -
+
{/* NoScript warning */}
- Apprenez-en plus sur ce que Node.js est capable d'offrir avec notre [Matériel d'apprentissage](/learn). +Apprenez-en plus sur ce que Node.js est capable d'offrir avec notre [Matériel d'apprentissage](/learn). + diff --git a/apps/site/pages/id/about/branding.mdx b/apps/site/pages/id/about/branding.mdx index 36d22698c109b..30a17e43ad855 100644 --- a/apps/site/pages/id/about/branding.mdx +++ b/apps/site/pages/id/about/branding.mdx @@ -11,13 +11,25 @@ Harap tinjau [kebijakan merek dagang](https://trademark-policy.openjsf.org/) unt Penghargaan kepada [Angela Angelini](https://www.linkedin.com/in/angeliningl/) atas desain dan kontribusinya terhadap Rocket Turtle. -Node.js mascot +Node.js mascot ## Logo Node.js® ### Logo Hex Node.js® -Node.js Hex Logo +Node.js Hex Logo ### Logo Horizontal Node.js® @@ -32,6 +44,7 @@ Penghargaan kepada [Angela Angelini](https://www.linkedin.com/in/angeliningl/) a Logo Terang Horizontal Node.js® + @@ -58,6 +71,7 @@ Penghargaan kepada [Angela Angelini](https://www.linkedin.com/in/angeliningl/) a Logo Bertumpuk Putih Node.js + @@ -74,5 +88,6 @@ Penghargaan kepada [Angela Angelini](https://www.linkedin.com/in/angeliningl/) a Ikon JS Putih + diff --git a/apps/site/pages/id/about/eol.mdx b/apps/site/pages/id/about/eol.mdx index 8737bb6ff125d..fcc172e05ef85 100644 --- a/apps/site/pages/id/about/eol.mdx +++ b/apps/site/pages/id/about/eol.mdx @@ -15,7 +15,7 @@ Versi mayor Node.js dirilis, diperbaiki, dan ditetapkan sebagai End-Of-Life meng Tingkatkan ke Node.js® LTS terbaru - atau +atau
- Pelajari lebih lanjut tentang apa yang bisa ditawarkan Node.js melalui [Bahan Pembelajaran](/learn) kami. +Pelajari lebih lanjut tentang apa yang bisa ditawarkan Node.js melalui [Bahan Pembelajaran](/learn) kami. + diff --git a/apps/site/pages/ja/about/branding.mdx b/apps/site/pages/ja/about/branding.mdx index 3337eed748141..f6f28606334f0 100644 --- a/apps/site/pages/ja/about/branding.mdx +++ b/apps/site/pages/ja/about/branding.mdx @@ -11,13 +11,25 @@ Node.jsのロゴやシンボルマークの許可されている利用方法に ロケットタートルは作者である[Angela Angelini](https://www.linkedin.com/in/angeliningl/)から提供されたものです。 -Node.jsマスコット +Node.jsマスコット ## Node.js®ロゴ ### Node.js®ヘキサゴンロゴ -Node.jsヘキサゴンロゴ +Node.jsヘキサゴンロゴ ### Node.js®横型ロゴ @@ -32,6 +44,7 @@ Node.jsのロゴやシンボルマークの許可されている利用方法に Node.jsライト横型ロゴ + @@ -58,6 +71,7 @@ Node.jsのロゴやシンボルマークの許可されている利用方法に Node.jsホワイトスタック型ロゴ + @@ -74,5 +88,6 @@ Node.jsのロゴやシンボルマークの許可されている利用方法に JSアイコンホワイト + diff --git a/apps/site/pages/ja/about/eol.mdx b/apps/site/pages/ja/about/eol.mdx index 70d5999797efc..8ee35a391d04c 100644 --- a/apps/site/pages/ja/about/eol.mdx +++ b/apps/site/pages/ja/about/eol.mdx @@ -15,7 +15,7 @@ Node.jsのメジャーバージョンは予定されたスケジュールでリ 最新のLTS版Node.js®に更新する - または +または - або +або