| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539 |
- {
- "username": "Nama Pengguna",
- "password": "Kata Sandi",
- "login": "Masuk",
- "confirm": "Konfirmasi",
- "cancel": "Batal",
- "close": "Tutup",
- "save": "Simpan",
- "logout": "Keluar",
- "create": "Buat",
- "add": "Tambah",
- "remove": "Hapus",
- "update": "Perbarui",
- "copy": "Salin",
- "copied": "Tersalin",
- "more": "lainnya",
- "download": "Unduh",
- "remark": "Catatan",
- "enable": "Aktifkan",
- "protocol": "Protokol",
- "search": "Cari",
- "filter": "Filter",
- "all": "Semua",
- "from": "Dari",
- "to": "Ke",
- "done": "Selesai",
- "loading": "Memuat...",
- "refresh": "Segarkan",
- "clear": "Bersihkan",
- "second": "Detik",
- "minute": "Menit",
- "hour": "Jam",
- "day": "Hari",
- "check": "Centang",
- "indefinite": "Tak Terbatas",
- "unlimited": "Tanpa Batas",
- "none": "Tidak ada",
- "qrCode": "Kode QR",
- "info": "Informasi Lebih Lanjut",
- "edit": "Edit",
- "delete": "Hapus",
- "reset": "Reset",
- "noData": "Tidak ada data.",
- "copySuccess": "Berhasil Disalin",
- "sure": "Yakin",
- "encryption": "Enkripsi",
- "useIPv4ForHost": "Gunakan IPv4 untuk host",
- "transmission": "Transmisi",
- "host": "Host",
- "path": "Path",
- "camouflage": "Obfuskasi",
- "status": "Status",
- "enabled": "Aktif",
- "disabled": "Nonaktif",
- "depleted": "Habis",
- "depletingSoon": "Akan Habis",
- "offline": "Offline",
- "online": "Online",
- "domainName": "Nama Domain",
- "monitor": "IP Pemantauan",
- "certificate": "Sertifikat Digital",
- "fail": "Gagal",
- "comment": "Komentar",
- "success": "Berhasil",
- "lastOnline": "Terakhir online",
- "getVersion": "Dapatkan Versi",
- "install": "Instal",
- "clients": "Klien",
- "usage": "Penggunaan",
- "twoFactorCode": "Kode",
- "remained": "Tersisa",
- "security": "Keamanan",
- "secAlertTitle": "Peringatan keamanan",
- "secAlertSsl": "Koneksi ini tidak aman. Harap hindari memasukkan informasi sensitif sampai TLS diaktifkan untuk perlindungan data.",
- "secAlertConf": "Beberapa pengaturan rentan terhadap serangan. Disarankan untuk memperkuat protokol keamanan guna mencegah pelanggaran potensial.",
- "secAlertSSL": "Panel kekurangan koneksi yang aman. Harap instal sertifikat TLS untuk perlindungan data.",
- "secAlertPanelPort": "Port default panel rentan. Harap konfigurasi port acak atau tertentu.",
- "secAlertPanelURI": "Jalur URI default panel tidak aman. Harap konfigurasi jalur URI kompleks.",
- "secAlertSubURI": "Jalur URI default langganan tidak aman. Harap konfigurasi jalur URI kompleks.",
- "secAlertSubJsonURI": "Jalur URI default JSON langganan tidak aman. Harap konfigurasikan jalur URI kompleks.",
- "emptyDnsDesc": "Tidak ada server DNS yang ditambahkan.",
- "emptyFakeDnsDesc": "Tidak ada server Fake DNS yang ditambahkan.",
- "emptyBalancersDesc": "Tidak ada penyeimbang yang ditambahkan.",
- "emptyReverseDesc": "Tidak ada proxy terbalik yang ditambahkan.",
- "somethingWentWrong": "Terjadi kesalahan",
- "subscription": {
- "title": "Info langganan",
- "subId": "ID langganan",
- "status": "Status",
- "downloaded": "Diunduh",
- "uploaded": "Diunggah",
- "expiry": "Kedaluwarsa",
- "totalQuota": "Kuota total",
- "individualLinks": "Tautan individual",
- "active": "Aktif",
- "inactive": "Nonaktif",
- "unlimited": "Tanpa batas",
- "noExpiry": "Tanpa kedaluwarsa"
- },
- "menu": {
- "theme": "Tema",
- "dark": "Gelap",
- "ultraDark": "Sangat Gelap",
- "dashboard": "Ikhtisar",
- "inbounds": "Inbound",
- "clients": "Klien",
- "groups": "Grup",
- "nodes": "Node",
- "settings": "Pengaturan Panel",
- "xray": "Konfigurasi Xray",
- "apiDocs": "Dokumentasi API",
- "logout": "Keluar",
- "link": "Kelola",
- "donate": "Donasi"
- },
- "pages": {
- "login": {
- "hello": "Halo",
- "title": "Selamat Datang",
- "loginAgain": "Sesi Anda telah berakhir, harap masuk kembali",
- "toasts": {
- "invalidFormData": "Format data input tidak valid.",
- "emptyUsername": "Nama Pengguna diperlukan",
- "emptyPassword": "Kata Sandi diperlukan",
- "wrongUsernameOrPassword": "Username, kata sandi, atau kode dua faktor tidak valid.",
- "successLogin": "Anda telah berhasil masuk ke akun Anda."
- }
- },
- "index": {
- "title": "Ikhtisar",
- "cpu": "CPU",
- "logicalProcessors": "Prosesor logis",
- "frequency": "Frekuensi",
- "swap": "Swap",
- "storage": "Penyimpanan",
- "memory": "RAM",
- "threads": "Thread",
- "xrayStatus": "Xray",
- "stopXray": "Hentikan",
- "restartXray": "Mulai ulang",
- "xraySwitch": "Versi",
- "xrayUpdates": "Pembaruan Xray",
- "xraySwitchClick": "Pilih versi yang ingin Anda pindah.",
- "xraySwitchClickDesk": "Pilih dengan hati-hati, karena versi yang lebih lama mungkin tidak kompatibel dengan konfigurasi saat ini.",
- "updatePanel": "Perbarui Panel",
- "panelUpdateDesc": "Ini akan memperbarui 3X-UI ke rilis terbaru dan me-restart layanan panel.",
- "currentPanelVersion": "Versi panel saat ini",
- "latestPanelVersion": "Versi panel terbaru",
- "panelUpToDate": "Panel sudah terbaru",
- "upToDate": "Terbaru",
- "xrayStatusUnknown": "Tidak diketahui",
- "xrayStatusRunning": "Berjalan",
- "xrayStatusStop": "Berhenti",
- "xrayStatusError": "Error",
- "xrayErrorPopoverTitle": "Terjadi kesalahan saat menjalankan Xray",
- "operationHours": "Waktu Aktif",
- "systemHistoryTitle": "Riwayat Sistem",
- "charts": "Grafik",
- "xrayMetricsTitle": "Metrik Xray",
- "xrayMetricsDisabled": "Endpoint metrik Xray belum dikonfigurasi",
- "xrayMetricsHint": "Tambahkan blok metrics tingkat atas ke konfigurasi xray dengan tag metrics_out dan listen 127.0.0.1:11111, lalu mulai ulang xray.",
- "xrayObservatoryEmpty": "Belum ada data Observatory",
- "xrayObservatoryHint": "Tambahkan blok observatory ke konfigurasi xray yang mencantumkan tag outbound untuk diuji, lalu mulai ulang xray.",
- "xrayObservatoryTagPlaceholder": "Pilih outbound",
- "xrayObservatoryAlive": "Aktif",
- "xrayObservatoryDead": "Mati",
- "xrayObservatoryLastSeen": "Terakhir terlihat",
- "xrayObservatoryLastTry": "Percobaan terakhir",
- "trendLast2Min": "2 menit terakhir",
- "systemLoad": "Beban Sistem",
- "systemLoadDesc": "Rata-rata beban sistem selama 1, 5, dan 15 menit terakhir",
- "connectionCount": "Statistik Koneksi",
- "ipAddresses": "Alamat IP",
- "toggleIpVisibility": "Alihkan visibilitas IP",
- "overallSpeed": "Kecepatan keseluruhan",
- "upload": "Unggah",
- "download": "Unduh",
- "totalData": "Total data",
- "sent": "Dikirim",
- "received": "Diterima",
- "documentation": "Dokumentasi",
- "xraySwitchVersionDialog": "Apakah Anda yakin ingin mengubah versi Xray?",
- "xraySwitchVersionDialogDesc": "Ini akan mengubah versi Xray ke #version#.",
- "xraySwitchVersionPopover": "Xray berhasil diperbarui",
- "panelUpdateDialog": "Apakah Anda benar-benar ingin memperbarui panel?",
- "panelUpdateDialogDesc": "Ini akan memperbarui 3X-UI ke #version# dan me-restart layanan panel.",
- "panelUpdateCheckPopover": "Pemeriksaan pembaruan panel gagal",
- "panelUpdateStartedPopover": "Pembaruan panel dimulai",
- "geofileUpdateDialog": "Apakah Anda yakin ingin memperbarui geofile?",
- "geofileUpdateDialogDesc": "Ini akan memperbarui file #filename#.",
- "geofilesUpdateDialogDesc": "Ini akan memperbarui semua berkas.",
- "geofilesUpdateAll": "Perbarui semua",
- "geofileUpdatePopover": "Geofile berhasil diperbarui",
- "customGeoTitle": "GeoSite / GeoIP kustom",
- "customGeoAdd": "Tambah",
- "customGeoType": "Jenis",
- "customGeoAlias": "Alias",
- "customGeoUrl": "URL",
- "customGeoEnabled": "Aktif",
- "customGeoLastUpdated": "Terakhir diperbarui",
- "customGeoExtColumn": "Routing (ext:…)",
- "customGeoToastUpdateAll": "Semua sumber kustom telah diperbarui",
- "customGeoActions": "Aksi",
- "customGeoEdit": "Edit",
- "customGeoDelete": "Hapus",
- "customGeoDownload": "Perbarui sekarang",
- "customGeoModalAdd": "Tambah geo kustom",
- "customGeoModalEdit": "Edit geo kustom",
- "customGeoModalSave": "Simpan",
- "customGeoDeleteConfirm": "Hapus sumber geo kustom ini?",
- "customGeoRoutingHint": "Pada aturan routing gunakan kolom nilai sebagai ext:file.dat:tag (ganti tag).",
- "customGeoInvalidId": "ID sumber tidak valid",
- "customGeoAliasesError": "Gagal memuat alias geo kustom",
- "customGeoValidationAlias": "Alias hanya huruf kecil, angka, - dan _",
- "customGeoValidationUrl": "URL harus diawali http:// atau https://",
- "customGeoAliasPlaceholder": "a-z 0-9 _ -",
- "customGeoAliasLabelSuffix": " (kustom)",
- "customGeoToastList": "Daftar geo kustom",
- "customGeoToastAdd": "Tambah geo kustom",
- "customGeoToastUpdate": "Perbarui geo kustom",
- "customGeoToastDelete": "Geofile kustom “{{ .fileName }}” dihapus",
- "customGeoToastDownload": "Geofile “{{ .fileName }}” diperbarui",
- "customGeoErrInvalidType": "Jenis harus geosite atau geoip",
- "customGeoErrAliasRequired": "Alias wajib diisi",
- "customGeoErrAliasPattern": "Alias berisi karakter yang tidak diizinkan",
- "customGeoErrAliasReserved": "Alias ini dicadangkan",
- "customGeoErrUrlRequired": "URL wajib diisi",
- "customGeoErrInvalidUrl": "URL tidak valid",
- "customGeoErrUrlScheme": "URL harus memakai http atau https",
- "customGeoErrUrlHost": "Host URL tidak valid",
- "customGeoErrDuplicateAlias": "Alias ini sudah dipakai untuk jenis ini",
- "customGeoErrNotFound": "Sumber geo kustom tidak ditemukan",
- "customGeoErrDownload": "Unduh gagal",
- "customGeoErrUpdateAllIncomplete": "Satu atau lebih sumber geo kustom gagal diperbarui",
- "customGeoEmpty": "Belum ada sumber geo kustom — klik Tambah untuk membuatnya",
- "dontRefresh": "Instalasi sedang berlangsung, harap jangan menyegarkan halaman ini",
- "logs": "Log",
- "config": "Konfigurasi",
- "backup": "Cadangan",
- "backupTitle": "Cadangan & Pulihkan",
- "exportDatabase": "Cadangkan",
- "exportDatabaseDesc": "Klik untuk mengunduh file .db yang berisi cadangan dari database Anda saat ini ke perangkat Anda.",
- "importDatabase": "Pulihkan",
- "importDatabaseDesc": "Klik untuk memilih dan mengunggah file .db dari perangkat Anda untuk memulihkan database dari cadangan.",
- "importDatabaseSuccess": "Database berhasil diimpor",
- "importDatabaseError": "Terjadi kesalahan saat mengimpor database",
- "readDatabaseError": "Terjadi kesalahan saat membaca database",
- "getDatabaseError": "Terjadi kesalahan saat mengambil database",
- "getConfigError": "Terjadi kesalahan saat mengambil file konfigurasi"
- },
- "inbounds": {
- "title": "Inbound",
- "totalDownUp": "Total Terkirim/Diterima",
- "totalUsage": "Penggunaan Total",
- "inboundCount": "Total Masuk",
- "operate": "Menu",
- "enable": "Aktifkan",
- "remark": "Catatan",
- "node": "Node",
- "deployTo": "Terapkan ke",
- "localPanel": "Panel lokal",
- "fallbacks": {
- "title": "Fallback",
- "help": "Saat koneksi pada inbound ini tidak cocok dengan client mana pun, arahkan ke inbound lain. Pilih child di bawah dan field routing (SNI / ALPN / Path / xver) terisi otomatis dari transport-nya — sebagian besar konfigurasi tidak perlu disesuaikan lagi. Setiap child harus listen di 127.0.0.1 dengan security=none.",
- "empty": "Belum ada fallback",
- "add": "Tambah fallback",
- "pickInbound": "Pilih inbound",
- "matchAny": "apa pun",
- "rederive": "Isi ulang dari child",
- "rederived": "Diisi ulang dari child",
- "editAdvanced": "Edit field routing",
- "hideAdvanced": "Sembunyikan lanjutan",
- "quickAddAll": "Tambah cepat semua yang memenuhi syarat",
- "quickAdded": "Menambahkan {n} fallback",
- "quickAddedNone": "Tidak ada inbound baru yang memenuhi syarat",
- "routesWhen": "Diarahkan ketika",
- "defaultCatchAll": "Default — menangkap apa pun lainnya"
- },
- "protocol": "Protokol",
- "port": "Port",
- "portMap": "Pemetaan port",
- "traffic": "Trafik",
- "details": "Rincian",
- "transportConfig": "Transport",
- "expireDate": "Durasi",
- "createdAt": "Dibuat",
- "updatedAt": "Diperbarui",
- "resetTraffic": "Reset trafik",
- "addInbound": "Tambahkan Masuk",
- "generalActions": "Tindakan Umum",
- "modifyInbound": "Ubah Masuk",
- "deleteInbound": "Hapus Masuk",
- "deleteInboundContent": "Apakah Anda yakin ingin menghapus masuk?",
- "deleteConfirmTitle": "Hapus inbound \"{remark}\"?",
- "deleteConfirmContent": "Tindakan ini menghapus inbound beserta semua kliennya. Tidak dapat dibatalkan.",
- "resetConfirmTitle": "Reset trafik \"{remark}\"?",
- "resetConfirmContent": "Mengatur ulang counter unggah/unduh ke 0 untuk inbound ini.",
- "cloneConfirmTitle": "Klon inbound \"{remark}\"?",
- "cloneConfirmContent": "Membuat salinan dengan port baru dan daftar klien kosong.",
- "delAllClients": "Hapus Semua Klien",
- "delAllClientsConfirmTitle": "Hapus semua {count} klien dari \"{remark}\"?",
- "delAllClientsConfirmContent": "Menghapus setiap klien dari inbound ini dan menghapus catatan trafiknya. Inbound itu sendiri dipertahankan. Tindakan ini tidak dapat dibatalkan.",
- "attachClients": "Lampirkan klien ke…",
- "addClientsToGroup": "Tambah klien ke grup…",
- "attachClientsTitle": "Lampirkan klien dari «{remark}»",
- "attachClientsDesc": "Melampirkan {count} klien yang sama (UUID/kata sandi sama dan trafik bersama) ke inbound terpilih. Tetap ada di inbound ini juga.",
- "attachClientsTargets": "Inbound tujuan",
- "attachClientsNoTargets": "Tidak ada inbound kompatibel lain untuk dilampirkan.",
- "attachClientsResult": "Dilampirkan {attached}, dilewati {skipped}.",
- "attachClientsResultMixed": "Dilampirkan {attached}, dilewati {skipped}, error {errors}.",
- "attachClientsSelectLabel": "Klien untuk dilampirkan",
- "attachClientsSearchPlaceholder": "Cari email atau komentar",
- "attachClientsStatusDisabled": "Dinonaktifkan",
- "attachClientsSelectedCount": "{selected} dari {total} dipilih",
- "detachClients": "Lepas klien",
- "detachClientsTitle": "Lepas klien dari «{remark}»",
- "detachClientsDesc": "Menghapus klien terpilih hanya dari inbound ini. Catatan klien tetap dipertahankan (gunakan Delete untuk menghapus sepenuhnya). Sumber memiliki total {count} klien.",
- "detachClientsResult": "Dilepas {detached}, dilewati {skipped}.",
- "detachClientsResultMixed": "Dilepas {detached}, dilewati {skipped}, error {errors}.",
- "detachClientsSelectLabel": "Klien untuk dilepas",
- "exportLinksTitle": "Ekspor tautan inbound",
- "exportSubsTitle": "Ekspor tautan langganan",
- "exportAllLinksTitle": "Ekspor semua tautan inbound",
- "exportAllSubsTitle": "Ekspor semua tautan langganan",
- "inboundJsonTitle": "JSON inbound",
- "deleteClient": "Hapus Klien",
- "deleteClientContent": "Apakah Anda yakin ingin menghapus klien?",
- "resetTrafficContent": "Apakah Anda yakin ingin mereset traffic?",
- "copyLink": "Salin URL",
- "address": "Alamat",
- "network": "Jaringan",
- "destinationPort": "Port Tujuan",
- "targetAddress": "Alamat Target",
- "monitorDesc": "Biarkan kosong untuk mendengarkan semua IP",
- "meansNoLimit": "= Tanpa batas. (satuan: GB)",
- "totalFlow": "Total Aliran",
- "leaveBlankToNeverExpire": "Biarkan kosong untuk tidak pernah kedaluwarsa",
- "noRecommendKeepDefault": "Disarankan untuk tetap menggunakan pengaturan default",
- "certificatePath": "Path Berkas",
- "certificateContent": "Konten Berkas",
- "publicKey": "Kunci Publik",
- "privatekey": "Kunci Pribadi",
- "clickOnQRcode": "Klik pada Kode QR untuk Menyalin",
- "client": "Klien",
- "export": "Ekspor Semua URL",
- "clone": "Duplikat",
- "cloneInbound": "Duplikat",
- "cloneInboundContent": "Semua pengaturan masuk ini, kecuali Port, Listening IP, dan Klien, akan diterapkan pada duplikat.",
- "cloneInboundOk": "Duplikat",
- "resetAllTraffic": "Reset Semua Traffic Masuk",
- "resetAllTrafficTitle": "Reset Semua Traffic Masuk",
- "resetAllTrafficContent": "Apakah Anda yakin ingin mereset traffic semua masuk?",
- "resetInboundClientTraffics": "Reset Traffic Klien Masuk",
- "resetInboundClientTrafficTitle": "Reset Traffic Klien Masuk",
- "resetInboundClientTrafficContent": "Apakah Anda yakin ingin mereset traffic klien masuk ini?",
- "resetAllClientTraffics": "Reset Traffic Semua Klien",
- "resetAllClientTrafficTitle": "Reset Traffic Semua Klien",
- "resetAllClientTrafficContent": "Apakah Anda yakin ingin mereset traffic semua klien?",
- "delDepletedClients": "Hapus Klien Habis",
- "delDepletedClientsTitle": "Hapus Klien Habis",
- "delDepletedClientsContent": "Apakah Anda yakin ingin menghapus semua klien yang habis?",
- "email": "Email",
- "emailDesc": "Harap berikan alamat email yang unik.",
- "IPLimit": "Batas IP",
- "IPLimitDesc": "Menonaktifkan masuk jika jumlah melebihi nilai yang ditetapkan. (0 = nonaktif)",
- "IPLimitlog": "Log IP",
- "IPLimitlogDesc": "Log histori IP. (untuk mengaktifkan masuk setelah menonaktifkan, hapus log)",
- "IPLimitlogclear": "Hapus Log",
- "setDefaultCert": "Atur Sertifikat dari Panel",
- "setDefaultCertEmpty": "Tidak ada sertifikat yang dikonfigurasi untuk panel. Atur dulu di Pengaturan.",
- "streamTab": "Stream",
- "securityTab": "Keamanan",
- "sniffingTab": "Sniffing",
- "sniffingMetadataOnly": "Hanya metadata",
- "sniffingRouteOnly": "Hanya routing",
- "sniffingIpsExcluded": "IP yang dikecualikan",
- "sniffingDomainsExcluded": "Domain yang dikecualikan",
- "decryption": "Dekripsi",
- "encryption": "Enkripsi",
- "vlessAuthX25519": "Auth X25519",
- "vlessAuthMlkem768": "Auth ML-KEM-768",
- "vlessAuthCustom": "Khusus",
- "vlessAuthSelected": "Dipilih: {auth}",
- "advanced": {
- "title": "Bagian JSON inbound",
- "subtitle": "JSON inbound lengkap dan editor fokus untuk settings, sniffing, dan streamSettings.",
- "all": "Semua",
- "allHelp": "Objek inbound lengkap dengan semua bidang dalam satu editor.",
- "settings": "Pengaturan",
- "settingsHelp": "Pembungkus blok settings Xray:",
- "sniffing": "Sniffing",
- "sniffingHelp": "Pembungkus blok sniffing Xray:",
- "stream": "Stream",
- "streamHelp": "Pembungkus blok stream Xray:",
- "jsonErrorPrefix": "JSON lanjutan"
- },
- "telegramDesc": "Harap berikan ID Obrolan Telegram. (gunakan perintah '/id' di bot) atau ({'@'}userinfobot)",
- "subscriptionDesc": "Untuk menemukan URL langganan Anda, buka 'Rincian'. Selain itu, Anda dapat menggunakan nama yang sama untuk beberapa klien.",
- "same": "Sama",
- "inboundData": "Data Masuk",
- "exportInbound": "Ekspor Masuk",
- "import": "Impor",
- "importInbound": "Impor Masuk",
- "periodicTrafficResetTitle": "Reset Trafik Berkala",
- "periodicTrafficResetDesc": "Reset otomatis penghitung trafik pada interval tertentu",
- "lastReset": "Reset Terakhir",
- "periodicTrafficReset": {
- "never": "Tidak Pernah",
- "daily": "Harian",
- "weekly": "Mingguan",
- "monthly": "Bulanan",
- "hourly": "Setiap jam"
- },
- "toasts": {
- "obtain": "Dapatkan",
- "updateSuccess": "Pembaruan berhasil",
- "logCleanSuccess": "Log telah dibersihkan",
- "inboundsUpdateSuccess": "Inbound berhasil diperbarui",
- "inboundUpdateSuccess": "Inbound berhasil diperbarui",
- "inboundCreateSuccess": "Inbound berhasil dibuat",
- "inboundDeleteSuccess": "Inbound berhasil dihapus",
- "inboundClientAddSuccess": "Klien inbound telah ditambahkan",
- "inboundClientDeleteSuccess": "Klien inbound telah dihapus",
- "inboundClientUpdateSuccess": "Klien inbound telah diperbarui",
- "delDepletedClientsSuccess": "Semua klien yang habis telah dihapus",
- "resetAllClientTrafficSuccess": "Semua lalu lintas klien telah direset",
- "resetAllTrafficSuccess": "Semua lalu lintas telah direset",
- "resetInboundClientTrafficSuccess": "Lalu lintas telah direset",
- "resetInboundTrafficSuccess": "Lalu lintas masuk telah direset",
- "trafficGetError": "Gagal mendapatkan data lalu lintas",
- "getNewX25519CertError": "Terjadi kesalahan saat mendapatkan sertifikat X25519.",
- "getNewmldsa65Error": "Terjadi kesalahan saat mendapatkan sertifikat mldsa65.",
- "getNewVlessEncError": "Terjadi kesalahan saat mendapatkan sertifikat VlessEnc."
- },
- "form": {
- "moveUp": "Naik",
- "moveDown": "Turun",
- "addAll": "Tambah semua",
- "addAllFallbackTooltip": "Tambahkan baris fallback untuk setiap inbound yang memenuhi syarat dan belum terhubung",
- "peers": "Peers",
- "addPeer": "Tambah peer",
- "keepAlive": "Keep-alive",
- "autoSystemRoutesTooltip": "Hanya Windows. CIDR ditambahkan otomatis ke tabel routing sistem agar trafik yang cocok melewati TUN.",
- "autoOutboundsInterface": "Interface outbound otomatis",
- "autoOutboundsInterfaceTooltip": "Interface fisik untuk trafik outbound. Gunakan 'auto' untuk deteksi; otomatis aktif saat Auto system routes diatur.",
- "rewriteAddress": "Tulis ulang alamat",
- "rewritePort": "Tulis ulang port",
- "allowedNetwork": "Jaringan yang diizinkan",
- "followRedirect": "Ikuti redirect",
- "accounts": "Akun",
- "allowTransparent": "Izinkan transparan",
- "encryptionMethod": "Metode enkripsi",
- "visionTestseed": "Vision testseed",
- "version": "Versi",
- "udpIdleTimeout": "UDP idle timeout (d)",
- "masquerade": "Masquerade",
- "type": "Tipe",
- "upstreamUrl": "URL Upstream",
- "rewriteHost": "Tulis ulang Host",
- "skipTlsVerify": "Lewati verifikasi TLS",
- "directory": "Direktori",
- "statusCode": "Kode status",
- "body": "Body",
- "headers": "Header",
- "proxyProtocol": "Proxy Protocol",
- "requestVersion": "Versi permintaan",
- "requestMethod": "Metode permintaan",
- "requestPath": "Path permintaan",
- "requestHeaders": "Header permintaan",
- "responseVersion": "Versi respons",
- "responseStatus": "Status respons",
- "responseReason": "Alasan respons",
- "responseHeaders": "Header respons",
- "heartbeatPeriod": "Periode heartbeat",
- "serviceName": "Nama layanan",
- "authority": "Authority",
- "multiMode": "Multi Mode",
- "maxBufferedUpload": "Maks. upload ter-buffer",
- "maxUploadSize": "Ukuran upload maks. (Byte)",
- "streamUpServer": "Stream-Up Server",
- "serverMaxHeaderBytes": "Maks. byte header server",
- "paddingBytes": "Byte Padding",
- "uplinkHttpMethod": "Metode HTTP Uplink",
- "paddingObfsMode": "Mode obfs Padding",
- "paddingKey": "Padding Key",
- "paddingHeader": "Padding Header",
- "paddingPlacement": "Posisi Padding",
- "paddingMethod": "Metode Padding",
- "sessionPlacement": "Session Placement",
- "sessionKey": "Session Key",
- "sequencePlacement": "Sequence Placement",
- "sequenceKey": "Sequence Key",
- "uplinkDataPlacement": "Uplink Data Placement",
- "uplinkDataKey": "Uplink Data Key",
- "noSseHeader": "Tanpa header SSE",
- "ttiMs": "TTI (ms)",
- "uplinkMbps": "Uplink (MB/s)",
- "downlinkMbps": "Downlink (MB/s)",
- "cwndMultiplier": "Pengganda CWND",
- "maxSendingWindow": "Maks. jendela pengiriman",
- "externalProxy": "Proxy eksternal",
- "sniPlaceholder": "SNI (default = host)",
- "fingerprint": "Fingerprint",
- "defaultOption": "Default",
- "routeMark": "Route Mark",
- "tcpKeepAliveInterval": "TCP Keep Alive Interval",
- "tcpKeepAliveIdle": "TCP Keep Alive Idle",
- "tcpMaxSeg": "TCP Max Seg",
- "tcpUserTimeout": "TCP User Timeout",
- "tcpWindowClamp": "TCP Window Clamp",
- "tcpFastOpen": "TCP Fast Open",
- "multipathTcp": "Multipath TCP",
- "penetrate": "Penetrate",
- "v6Only": "Hanya V6",
- "tcpCongestion": "TCP Congestion",
- "dialerProxy": "Dialer Proxy",
- "trustedXForwardedFor": "X-Forwarded-For tepercaya",
- "addressPortStrategy": "Strategi alamat+port",
- "tryDelayMs": "Penundaan percobaan (ms)",
- "prioritizeIPv6": "Prioritaskan IPv6",
- "interleave": "Interleave",
- "maxConcurrentTry": "Maks. percobaan bersamaan",
- "customSockopt": "Sockopt kustom",
- "addCustomOption": "Tambah opsi kustom",
- "serverNameIndication": "SNI",
- "cipherSuites": "Cipher Suites",
- "autoOption": "Otomatis",
- "minMaxVersion": "Versi Min/Maks",
- "rejectUnknownSni": "Tolak SNI tidak dikenal",
- "disableSystemRoot": "Nonaktifkan System Root",
- "sessionResumption": "Lanjutkan sesi",
- "oneTimeLoading": "Pemuatan sekali",
- "usageOption": "Opsi penggunaan",
- "buildChain": "Bangun rantai",
- "echKey": "ECH key",
- "echConfig": "Konfig ECH",
- "getNewEchCert": "Dapatkan sertifikat ECH baru",
- "show": "Tampilkan",
- "xver": "Xver",
- "target": "Target",
- "maxTimeDiff": "Maks. selisih waktu (ms)",
- "minClientVer": "Min. versi klien",
- "maxClientVer": "Maks. versi klien",
- "shortIds": "Short IDs",
- "spiderX": "SpiderX",
- "getNewCert": "Dapatkan sertifikat baru",
- "mldsa65Seed": "mldsa65 Seed",
- "mldsa65Verify": "mldsa65 Verify",
- "getNewSeed": "Dapatkan Seed baru"
- },
- "info": {
- "mode": "Mode",
- "grpcServiceName": "grpc serviceName",
- "grpcMultiMode": "grpc multiMode",
- "interfaceName": "Nama interface",
- "mtu": "MTU",
- "gateway": "Gateway",
- "dns": "DNS",
- "outboundsInterface": "Interface outbound",
- "autoSystemRoutes": "Rute sistem otomatis",
- "followRedirect": "FollowRedirect",
- "auth": "Auth",
- "noKernelTun": "TUN tanpa kernel",
- "keepAlive": "Keep alive",
- "peerNumber": "Peer {n}",
- "peerNumberConfig": "Konfig Peer {n}"
- },
- "stream": {
- "general": {
- "request": "Permintaan",
- "response": "Respons",
- "name": "Nama",
- "value": "Nilai"
- },
- "tcp": {
- "version": "Versi",
- "method": "Metode",
- "path": "Path",
- "status": "Status",
- "statusDescription": "Deskripsi Status",
- "requestHeader": "Header Permintaan",
- "responseHeader": "Header Respons"
- }
- }
- },
- "clients": {
- "add": "Tambah klien",
- "edit": "Ubah klien",
- "submitAdd": "Tambah klien",
- "submitEdit": "Simpan perubahan",
- "clientCount": "Jumlah klien",
- "bulk": "Tambah massal",
- "copyFromInbound": "Salin klien dari inbound",
- "copyToInbound": "Salin klien ke",
- "copySelected": "Salin terpilih",
- "copySource": "Sumber",
- "copyEmailPreview": "Pratinjau email hasil",
- "copySelectSourceFirst": "Pilih inbound sumber terlebih dahulu.",
- "copyResult": "Hasil salinan",
- "copyResultSuccess": "Berhasil disalin",
- "copyResultNone": "Tidak ada yang disalin: tidak ada klien terpilih atau sumber kosong",
- "copyResultErrors": "Kesalahan salin",
- "copyFlowLabel": "Flow untuk klien baru (VLESS)",
- "copyFlowHint": "Diterapkan ke semua klien yang disalin. Kosongkan untuk dilewati.",
- "selectAll": "Pilih semua",
- "clearAll": "Hapus semua",
- "method": "Metode",
- "first": "Pertama",
- "last": "Terakhir",
- "ipLog": "Log IP",
- "prefix": "Awalan",
- "postfix": "Akhiran",
- "delayedStart": "Mulai setelah penggunaan pertama",
- "expireDays": "Durasi",
- "days": "Hari",
- "renew": "Perpanjangan otomatis",
- "renewDesc": "Perpanjangan otomatis setelah kedaluwarsa. (0 = nonaktif) (satuan: hari)",
- "searchPlaceholder": "Cari email, komentar, sub ID, UUID, kata sandi, auth…",
- "filterTitle": "Filter klien",
- "clearAllFilters": "Hapus semua",
- "sortOldest": "Terlama dulu",
- "sortNewest": "Terbaru dulu",
- "sortRecentlyUpdated": "Baru saja diperbarui",
- "sortRecentlyOnline": "Baru saja online",
- "sortEmailAZ": "Email A→Z",
- "sortEmailZA": "Email Z→A",
- "sortMostTraffic": "Trafik terbanyak",
- "sortHighestRemaining": "Tersisa terbanyak",
- "sortExpiringSoonest": "Segera kedaluwarsa",
- "has": "Memiliki",
- "hasNot": "Tidak memiliki",
- "title": "Klien",
- "actions": "Aksi",
- "totalGB": "Total Kirim/Terima (GB)",
- "expiryTime": "Kedaluwarsa",
- "addClients": "Tambah klien",
- "limitIp": "Batas IP",
- "password": "Kata sandi",
- "subId": "ID Langganan",
- "online": "Online",
- "email": "Email",
- "group": "Grup",
- "groupDesc": "Label logis untuk mengelompokkan klien terkait (mis. tim, pelanggan, wilayah). Dapat difilter dari toolbar.",
- "groupPlaceholder": "mis. customer-a",
- "comment": "Komentar",
- "traffic": "Lalu lintas",
- "offline": "Offline",
- "addTitle": "Tambah klien",
- "qrCode": "Kode QR",
- "moreInformation": "Informasi lebih lanjut",
- "delete": "Hapus",
- "reset": "Reset lalu lintas",
- "editTitle": "Ubah klien",
- "client": "Klien",
- "enabled": "Aktif",
- "remaining": "Sisa",
- "duration": "Durasi",
- "attachedInbounds": "Inbound terlampir",
- "selectInbound": "Pilih satu atau lebih inbound",
- "noSubId": "Klien ini tidak punya subId, tidak ada tautan yang bisa dibagikan.",
- "noLinks": "Tidak ada tautan yang bisa dibagikan — lampirkan klien ini ke inbound yang mendukung protokol terlebih dahulu.",
- "link": "Tautan",
- "resetNotPossible": "Lampirkan klien ini ke inbound terlebih dahulu.",
- "general": "Umum",
- "resetAllTraffics": "Reset lalu lintas semua klien",
- "resetAllTrafficsTitle": "Reset lalu lintas semua klien?",
- "resetAllTrafficsContent": "Penghitung kirim/terima setiap klien turun ke nol. Kuota dan kedaluwarsa tidak terpengaruh. Tidak dapat dibatalkan.",
- "deleteConfirmTitle": "Hapus klien {email}?",
- "deleteConfirmContent": "Tindakan ini menghapus klien dari setiap inbound terlampir dan menghapus catatan lalu lintasnya. Tidak dapat dibatalkan.",
- "deleteSelected": "Hapus ({count})",
- "adjustSelected": "Sesuaikan ({count})",
- "subLinksSelected": "Tautan sub ({count})",
- "addToGroupTitle": "Tambahkan {count} klien ke grup",
- "addToGroupTooltip": "Pilih grup yang ada atau ketik nama baru. Gunakan Ungroup untuk menghapus klien dari grup saat ini.",
- "addToGroupPlaceholder": "Nama grup",
- "addToGroupSuccessToast": "{count} klien ditambahkan ke {group}",
- "ungroupSuccessToast": "Grup dihapus dari {count} klien",
- "ungroup": "Lepaskan grup",
- "ungroupConfirmTitle": "Hapus {count} klien dari grupnya?",
- "ungroupConfirmContent": "Menghapus label grup dari setiap klien terpilih. Klien tetap dipertahankan (gunakan Delete untuk menghapus sepenuhnya).",
- "addToGroup": "Tambahkan ke grup",
- "attach": "Lampirkan",
- "adjust": "Atur",
- "subLinks": "Tautan sub",
- "selectedCount": "{count} dipilih",
- "attachSelected": "Lampirkan ({count})",
- "attachToInboundsTitle": "Lampirkan {count} klien ke inbound",
- "attachToInboundsDesc": "Melampirkan {count} klien terpilih (UUID/kata sandi sama dan trafik bersama) ke inbound terpilih. Lampiran yang ada tetap dipertahankan.",
- "attachToInboundsTargets": "Inbound tujuan",
- "attachToInboundsNoTargets": "Tidak ada inbound multi-pengguna untuk dilampirkan.",
- "detachSelected": "Lepas ({count})",
- "detach": "Lepas",
- "detachFromInboundsTitle": "Lepas {count} klien dari inbound",
- "detachFromInboundsDesc": "Menghapus {count} klien terpilih dari inbound terpilih. Pasangan di mana klien tidak terlampir akan dilewati secara diam-diam. Catatan klien dipertahankan (gunakan Delete untuk menghapus sepenuhnya).",
- "detachFromInboundsTargets": "Inbound untuk dilepas",
- "detachFromInboundsNoTargets": "Tidak ada inbound multi-pengguna.",
- "detachFromInboundsResult": "Dilepas {detached}, dilewati {skipped}.",
- "detachFromInboundsResultMixed": "Dilepas {detached}, dilewati {skipped}, error {errors}.",
- "subLinksTitle": "Tautan sub ({count})",
- "subLinkColumn": "URL Langganan",
- "subJsonLinkColumn": "URL JSON Langganan",
- "subLinksCopyAll": "Salin semua",
- "subLinksCopiedAll": "{count} tautan disalin",
- "subLinksEmpty": "Tidak ada klien terpilih yang memiliki ID langganan.",
- "subLinksDisabled": "Layanan langganan dinonaktifkan.",
- "subLinksDisabledHint": "Aktifkan langganan di Pengaturan Panel → Langganan untuk membuat tautan.",
- "bulkDeleteConfirmTitle": "Hapus {count} klien?",
- "bulkDeleteConfirmContent": "Setiap klien yang dipilih dihapus dari semua inbound terlampir dan catatan lalu lintasnya dihapus. Tidak dapat dibatalkan.",
- "bulkAdjustTitle": "Sesuaikan {count} klien",
- "bulkAdjustHint": "Nilai positif menambah, negatif mengurangi. Klien dengan masa berlaku atau trafik tak terbatas dilewati untuk bidang tersebut.",
- "bulkAdjustNothing": "Setel hari atau trafik sebelum menerapkan.",
- "addDays": "Tambah hari",
- "addTrafficGB": "Tambah trafik (GB)",
- "delDepleted": "Hapus yang habis",
- "delDepletedConfirmTitle": "Hapus klien yang habis?",
- "delDepletedConfirmContent": "Hapus setiap klien yang kuota lalu lintasnya habis atau yang masa berlakunya telah berakhir. Tidak dapat dibatalkan.",
- "auth": "Auth",
- "hysteriaAuth": "Hysteria Auth",
- "uuid": "UUID",
- "flow": "Flow",
- "vmessSecurity": "Keamanan VMess",
- "reverseTag": "Reverse tag",
- "reverseTagPlaceholder": "Reverse tag opsional",
- "telegramId": "ID pengguna Telegram",
- "telegramIdPlaceholder": "ID numerik pengguna Telegram (0 = tidak ada)",
- "created": "Dibuat",
- "updated": "Diperbarui",
- "ipLimit": "Batas IP",
- "toasts": {
- "deleted": "Klien dihapus",
- "trafficReset": "Lalu lintas direset",
- "allTrafficsReset": "Lalu lintas semua klien direset",
- "bulkDeleted": "{count} klien dihapus",
- "bulkDeletedMixed": "{ok} dihapus, {failed} gagal",
- "bulkCreated": "{count} klien dibuat",
- "bulkCreatedMixed": "{ok} dibuat, {failed} gagal",
- "bulkAdjusted": "{count} klien disesuaikan",
- "bulkAdjustedMixed": "{ok} disesuaikan, {skipped} dilewati",
- "delDepleted": "{count} klien habis dihapus"
- }
- },
- "groups": {
- "title": "Grup",
- "name": "Nama",
- "clientCount": "Klien di grup",
- "totalGroups": "Total grup",
- "totalGroupedClients": "Klien dengan grup",
- "emptyGroups": "Grup kosong",
- "addGroup": "Tambah grup",
- "createSuccess": "Grup «{name}» dibuat.",
- "rename": "Ubah nama",
- "renameTitle": "Ubah nama {name}",
- "renameCollision": "Grup bernama «{name}» sudah ada.",
- "renameSuccess": "Grup diubah namanya pada {count} klien.",
- "deleteConfirmTitle": "Hapus grup {name}?",
- "deleteConfirmContent": "Ini menghapus grup dan label-nya dari {count} klien. Klien itu sendiri tidak dihapus.",
- "deleteSuccess": "Grup dihapus dari {count} klien.",
- "resetTraffic": "Reset trafik",
- "resetConfirmTitle": "Reset trafik grup {name}?",
- "resetConfirmContent": "Ini mengatur ulang up/down ke 0 untuk semua {count} klien di grup ini.",
- "resetSuccess": "Trafik direset untuk {count} klien.",
- "adjustSuccess": "{count} klien di {name} disesuaikan.",
- "emptyForAction": "Grup ini belum memiliki klien.",
- "deleteGroupOnly": "Hapus grup (pertahankan klien)",
- "deleteClients": "Hapus klien di grup",
- "deleteClientsConfirmTitle": "Hapus semua klien di {name}?",
- "deleteClientsConfirmContent": "Ini akan menghapus {count} klien secara permanen beserta catatan trafiknya. Label grup juga dihapus. Tidak dapat dibatalkan.",
- "deleteClientsSuccess": "{count} klien dihapus.",
- "deleteClientsMixed": "{ok} dihapus, {failed} dilewati",
- "addToGroup": "Tambah klien…",
- "addToGroupTitle": "Tambah klien ke grup «{name}»",
- "addToGroupDesc": "Pilih klien untuk ditambahkan ke grup ini. Lampiran inbound yang ada tetap dipertahankan; hanya label grup yang berubah. Klien yang sudah ada di grup ini tidak ditampilkan.",
- "addToGroupEmpty": "Tidak ada klien lain untuk ditambahkan.",
- "addToGroupResult": "{count} klien ditambahkan ke {name}.",
- "removeFromGroup": "Hapus klien…",
- "removeFromGroupTitle": "Hapus klien dari grup «{name}»",
- "removeFromGroupDesc": "Pilih anggota untuk dihapus dari grup ini. Klien tetap dipertahankan (gunakan «Hapus klien di grup» untuk menghapus sepenuhnya).",
- "removeFromGroupResult": "{count} klien dihapus dari {name}."
- },
- "nodes": {
- "title": "Node",
- "addNode": "Tambah Node",
- "editNode": "Edit node",
- "totalNodes": "Total Node",
- "onlineNodes": "Online",
- "offlineNodes": "Offline",
- "avgLatency": "Latensi Rata-rata",
- "name": "Nama",
- "namePlaceholder": "mis. de-frankfurt-1",
- "addressPlaceholder": "panel.example.com atau 1.2.3.4",
- "remark": "Catatan",
- "scheme": "Skema",
- "address": "Alamat",
- "port": "Port",
- "basePath": "Path dasar",
- "apiToken": "Token API",
- "apiTokenPlaceholder": "Token dari halaman Pengaturan panel jarak jauh",
- "apiTokenHint": "Panel jarak jauh menampilkan token API-nya di Pengaturan → Token API.",
- "regenerate": "Buat Ulang Token",
- "regenerateConfirm": "Membuat ulang akan membatalkan token saat ini. Setiap panel pusat yang menggunakannya akan kehilangan akses sampai diperbarui. Lanjutkan?",
- "allowPrivateAddress": "Izinkan alamat pribadi",
- "allowPrivateAddressHint": "Aktifkan hanya untuk node di jaringan pribadi atau VPN.",
- "enable": "Aktif",
- "status": "Status",
- "cpu": "CPU",
- "mem": "Memori",
- "uptime": "Uptime",
- "latency": "Latensi",
- "lastHeartbeat": "Heartbeat Terakhir",
- "xrayVersion": "Versi Xray",
- "panelVersion": "Versi panel",
- "actions": "Aksi",
- "probe": "Probe Sekarang",
- "testConnection": "Tes Koneksi",
- "connectionOk": "Koneksi OK ({ms} ms)",
- "connectionFailed": "Koneksi gagal",
- "never": "tidak pernah",
- "justNow": "baru saja",
- "deleteConfirmTitle": "Hapus node \"{name}\"?",
- "deleteConfirmContent": "Ini menghentikan pemantauan node. Panel jarak jauh itu sendiri tidak terpengaruh.",
- "statusValues": {
- "online": "Online",
- "offline": "Offline",
- "unknown": "Tidak diketahui"
- },
- "toasts": {
- "list": "Gagal memuat node",
- "obtain": "Gagal memuat node",
- "add": "Tambah node",
- "update": "Perbarui node",
- "delete": "Hapus node",
- "deleted": "Node dihapus",
- "test": "Tes koneksi",
- "fillRequired": "Nama, alamat, port, dan token API wajib diisi",
- "probeFailed": "Probe gagal"
- }
- },
- "settings": {
- "title": "Pengaturan Panel",
- "save": "Simpan",
- "infoDesc": "Setiap perubahan yang dibuat di sini perlu disimpan. Harap restart panel untuk menerapkan perubahan.",
- "restartPanel": "Mulai ulang panel",
- "restartPanelDesc": "Apakah Anda yakin ingin merestart panel? Jika Anda tidak dapat mengakses panel setelah merestart, lihat info log panel di server.",
- "restartPanelSuccess": "Panel berhasil dimulai ulang",
- "actions": "Tindakan",
- "resetDefaultConfig": "Reset ke Default",
- "panelSettings": "Umum",
- "securitySettings": "Otentikasi",
- "securityWarnings": "Peringatan keamanan",
- "panelExposed": "Panel Anda mungkin terekspos:",
- "warnHttp": "Panel disajikan melalui HTTP biasa — siapkan TLS untuk produksi.",
- "warnDefaultPort": "Port default 2053 sudah umum diketahui — ubah ke port acak.",
- "warnDefaultBasePath": "Base path default \"/\" sudah umum diketahui — ubah ke path acak.",
- "warnDefaultSubPath": "Path langganan default \"/sub/\" sudah umum diketahui — ubahlah.",
- "warnDefaultJsonPath": "Path langganan JSON default \"/json/\" sudah umum diketahui — ubahlah.",
- "TGBotSettings": "Bot Telegram",
- "panelListeningIP": "IP Pendengar",
- "panelListeningIPDesc": "Alamat IP untuk panel web. (biarkan kosong untuk mendengarkan semua IP)",
- "panelListeningDomain": "Domain Pendengar",
- "panelListeningDomainDesc": "Nama domain untuk panel web. (biarkan kosong untuk mendengarkan semua domain dan IP)",
- "panelPort": "Port Pendengar",
- "panelPortDesc": "Nomor port untuk panel web. (harus menjadi port yang tidak digunakan)",
- "publicKeyPath": "Path Kunci Publik",
- "publicKeyPathDesc": "Path berkas kunci publik untuk panel web. (dimulai dengan ‘/‘)",
- "privateKeyPath": "Path Kunci Privat",
- "privateKeyPathDesc": "Path berkas kunci privat untuk panel web. (dimulai dengan ‘/‘)",
- "panelUrlPath": "Path URI",
- "panelUrlPathDesc": "URI path untuk panel web. (dimulai dengan ‘/‘ dan diakhiri dengan ‘/‘)",
- "pageSize": "Ukuran Halaman",
- "pageSizeDesc": "Tentukan ukuran halaman untuk tabel masuk. (0 = nonaktif)",
- "panelProxy": "Proxy jaringan panel",
- "panelProxyDesc": "Mengarahkan permintaan keluar panel sendiri (pembaruan geo, pemeriksaan versi Xray/panel, Telegram) melalui proxy ini untuk melewati pemfilteran GitHub/Telegram di sisi server. Menerima socks5:// atau http(s)://, mis. inbound SOCKS lokal Xray. Kosongkan untuk koneksi langsung.",
- "remarkModel": "Model Catatan & Karakter Pemisah",
- "datepicker": "Jenis Kalender",
- "datepickerPlaceholder": "Pilih tanggal",
- "datepickerDescription": "Tugas terjadwal akan berjalan berdasarkan kalender ini.",
- "sampleRemark": "Contoh Catatan",
- "oldUsername": "Username Saat Ini",
- "currentPassword": "Kata Sandi Saat Ini",
- "newUsername": "Username Baru",
- "newPassword": "Kata Sandi Baru",
- "telegramBotEnable": "Aktifkan Bot Telegram",
- "telegramBotEnableDesc": "Mengaktifkan bot Telegram.",
- "telegramToken": "Token Telegram",
- "telegramTokenDesc": "Token bot Telegram yang diperoleh dari '{'@'}BotFather'.",
- "telegramProxy": "Proxy SOCKS",
- "telegramProxyDesc": "Mengaktifkan proxy SOCKS5 untuk terhubung ke Telegram. (sesuaikan pengaturan sesuai panduan)",
- "telegramAPIServer": "Server API Telegram",
- "telegramAPIServerDesc": "Server API Telegram yang akan digunakan. Biarkan kosong untuk menggunakan server default.",
- "telegramChatId": "ID Obrolan Admin",
- "telegramChatIdDesc": "ID Obrolan Admin Telegram. (dipisahkan koma)(dapatkan di sini {'@'}userinfobot) atau (gunakan perintah '/id' di bot)",
- "telegramNotifyTime": "Waktu Notifikasi",
- "telegramNotifyTimeDesc": "Waktu notifikasi bot Telegram yang diatur untuk laporan berkala. (gunakan format waktu crontab)",
- "tgNotifyBackup": "Cadangan Database",
- "tgNotifyBackupDesc": "Kirim berkas cadangan database dengan laporan.",
- "tgNotifyLogin": "Notifikasi Login",
- "tgNotifyLoginDesc": "Dapatkan notifikasi tentang username, alamat IP, dan waktu setiap kali seseorang mencoba masuk ke panel web Anda.",
- "sessionMaxAge": "Durasi Sesi",
- "sessionMaxAgeDesc": "Durasi di mana Anda dapat tetap masuk. (unit: menit)",
- "expireTimeDiff": "Notifikasi Tanggal Kedaluwarsa",
- "expireTimeDiffDesc": "Dapatkan notifikasi tentang tanggal kedaluwarsa saat mencapai ambang batas ini. (unit: hari)",
- "trafficDiff": "Notifikasi Batas Traffic",
- "trafficDiffDesc": "Dapatkan notifikasi tentang batas traffic saat mencapai ambang batas ini. (unit: GB)",
- "tgNotifyCpu": "Notifikasi Beban CPU",
- "tgNotifyCpuDesc": "Dapatkan notifikasi jika beban CPU melebihi ambang batas ini. (unit: %)",
- "timeZone": "Zone Waktu",
- "timeZoneDesc": "Tugas terjadwal akan berjalan berdasarkan zona waktu ini.",
- "subSettings": "Langganan",
- "subEnable": "Aktifkan Layanan Langganan",
- "subEnableDesc": "Mengaktifkan layanan langganan.",
- "subJsonEnable": "Aktifkan/Nonaktifkan endpoint langganan JSON secara mandiri.",
- "subJsonEnableTitle": "Langganan JSON",
- "subClashEnableTitle": "Langganan Clash / Mihomo",
- "subTitle": "Judul Langganan",
- "subTitleDesc": "Judul yang ditampilkan di klien VPN",
- "subSupportUrl": "URL Dukungan",
- "subSupportUrlDesc": "Tautan dukungan teknis yang ditampilkan di klien VPN",
- "subProfileUrl": "URL Profil",
- "subProfileUrlDesc": "Tautan ke situs web Anda yang ditampilkan di klien VPN",
- "subAnnounce": "Pengumuman",
- "subAnnounceDesc": "Teks pengumuman yang ditampilkan di klien VPN",
- "subEnableRouting": "Aktifkan perutean",
- "subEnableRoutingDesc": "Pengaturan global untuk mengaktifkan perutean (routing) di klien VPN. (Hanya untuk Happ)",
- "subRoutingRules": "Aturan routing",
- "subRoutingRulesDesc": "Aturan routing global untuk klien VPN. (Hanya untuk Happ)",
- "subListen": "IP Pendengar",
- "subListenDesc": "Alamat IP untuk layanan langganan. (biarkan kosong untuk mendengarkan semua IP)",
- "subPort": "Port Pendengar",
- "subPortDesc": "Nomor port untuk layanan langganan. (harus menjadi port yang tidak digunakan)",
- "subCertPath": "Path Kunci Publik",
- "subCertPathDesc": "Path berkas kunci publik untuk layanan langganan. (dimulai dengan ‘/‘)",
- "subKeyPath": "Path Kunci Privat",
- "subKeyPathDesc": "Path berkas kunci privat untuk layanan langganan. (dimulai dengan ‘/‘)",
- "subPath": "Path URI",
- "subPathDesc": "URI path untuk layanan langganan. (dimulai dengan ‘/‘ dan diakhiri dengan ‘/‘)",
- "subDomain": "Domain Pendengar",
- "subDomainDesc": "Nama domain untuk layanan langganan. (biarkan kosong untuk mendengarkan semua domain dan IP)",
- "subUpdates": "Interval Pembaruan",
- "subUpdatesDesc": "Interval pembaruan URL langganan dalam aplikasi klien. (unit: jam)",
- "subEncrypt": "Encode",
- "subEncryptDesc": "Konten yang dikembalikan dari layanan langganan akan dienkripsi Base64.",
- "subShowInfo": "Tampilkan Info Penggunaan",
- "subShowInfoDesc": "Sisa traffic dan tanggal akan ditampilkan di aplikasi klien.",
- "subEmailInRemark": "Sertakan Email dalam Nama",
- "subEmailInRemarkDesc": "Sertakan email klien dalam nama profil langganan.",
- "subURI": "URI Proxy Terbalik",
- "subURIDesc": "Path URI dari URL langganan untuk digunakan di belakang proxy.",
- "externalTrafficInformEnable": "Informasikan API eksternal pada setiap pembaruan lalu lintas.",
- "externalTrafficInformEnableDesc": "Beritahu API eksternal setiap kali ada pembaruan trafik.",
- "externalTrafficInformURI": "Lalu Lintas Eksternal Menginformasikan URI",
- "externalTrafficInformURIDesc": "Pembaruan lalu lintas dikirim ke URI ini.",
- "restartXrayOnClientDisable": "Nyalakan Ulang Xray Setelah Nonaktif Otomatis",
- "restartXrayOnClientDisableDesc": "Saat klien otomatis dinonaktifkan karena kedaluwarsa atau batas trafik, mulai ulang Xray.",
- "fragment": "Fragmentasi",
- "fragmentDesc": "Aktifkan fragmentasi untuk paket hello TLS",
- "fragmentSett": "Pengaturan Fragmentasi",
- "noisesDesc": "Aktifkan Noises.",
- "noisesSett": "Pengaturan Noises",
- "trustedProxyCidrs": "CIDR proxy tepercaya",
- "trustedProxyCidrsDesc": "IP/CIDR (dipisahkan koma) yang diizinkan mengatur header forwarded host, proto, dan client IP.",
- "ldap": {
- "enable": "Aktifkan sinkronisasi LDAP",
- "host": "LDAP host",
- "port": "Port LDAP",
- "useTls": "Gunakan TLS (LDAPS)",
- "bindDn": "Bind DN",
- "passwordConfigured": "Terkonfigurasi; biarkan kosong untuk mempertahankan kata sandi saat ini.",
- "passwordUnconfigured": "Tidak terkonfigurasi.",
- "passwordPlaceholder": "Terkonfigurasi — masukkan nilai baru untuk menggantikan",
- "baseDn": "Base DN",
- "userFilter": "Filter pengguna",
- "userAttr": "Atribut pengguna (username/email)",
- "vlessField": "Atribut flag VLESS",
- "flagField": "Atribut flag umum (opsional)",
- "flagFieldDesc": "Jika diatur, menimpa flag VLESS — mis. shadowInactive.",
- "truthyValues": "Nilai truthy",
- "truthyValuesDesc": "Dipisahkan koma; default: true,1,yes,on",
- "invertFlag": "Balik flag",
- "invertFlagDesc": "Aktifkan saat atribut berarti «dinonaktifkan» (mis. shadowInactive).",
- "syncSchedule": "Jadwal sinkronisasi",
- "syncScheduleDesc": "String mirip cron, mis. @every 1m",
- "inboundTags": "Tag inbound",
- "inboundTagsDesc": "Inbound di mana sinkronisasi LDAP dapat membuat/menghapus klien secara otomatis.",
- "noInbounds": "Tidak ada inbound. Buat dulu di Inbound.",
- "autoCreate": "Buat klien otomatis",
- "autoDelete": "Hapus klien otomatis",
- "defaultTotalGb": "Total default (GB)",
- "defaultExpiryDays": "Kedaluwarsa default (hari)",
- "defaultIpLimit": "Batas IP default"
- },
- "subFormats": {
- "packets": "Paket",
- "length": "Panjang",
- "interval": "Interval",
- "maxSplit": "Maks. pembagian",
- "noises": "Noise",
- "noiseItem": "Noise №{n}",
- "type": "Tipe",
- "packet": "Paket",
- "delayMs": "Penundaan (ms)",
- "applyTo": "Terapkan ke",
- "addNoise": "+ Noise",
- "concurrency": "Konkurensi",
- "xudpConcurrency": "Konkurensi xudp",
- "xudpUdp443": "xudp UDP 443"
- },
- "mux": "Mux",
- "muxDesc": "Mengirimkan beberapa aliran data independen dalam aliran data yang sudah ada.",
- "muxSett": "Pengaturan Mux",
- "direct": "Koneksi langsung",
- "directDesc": "Secara langsung membuat koneksi dengan domain atau rentang IP negara tertentu.",
- "notifications": "Notifikasi",
- "certs": "Sertifikat",
- "externalTraffic": "Lalu Lintas Eksternal",
- "dateAndTime": "Tanggal dan Waktu",
- "proxyAndServer": "Proxy dan Server",
- "intervals": "Interval",
- "information": "Informasi",
- "language": "Bahasa",
- "telegramBotLanguage": "Bahasa Bot Telegram",
- "security": {
- "admin": "Kredensial admin",
- "twoFactor": "Autentikasi dua faktor",
- "twoFactorEnable": "Aktifkan 2FA",
- "twoFactorEnableDesc": "Menambahkan lapisan autentikasi tambahan untuk keamanan lebih.",
- "twoFactorModalSetTitle": "Aktifkan autentikasi dua faktor",
- "twoFactorModalDeleteTitle": "Nonaktifkan autentikasi dua faktor",
- "twoFactorModalSteps": "Untuk menyiapkan autentikasi dua faktor, lakukan beberapa langkah:",
- "twoFactorModalFirstStep": "1. Pindai kode QR ini di aplikasi autentikasi atau salin token di dekat kode QR dan tempelkan ke aplikasi",
- "twoFactorModalSecondStep": "2. Masukkan kode dari aplikasi",
- "twoFactorModalRemoveStep": "Masukkan kode dari aplikasi untuk menghapus autentikasi dua faktor.",
- "twoFactorModalChangeCredentialsTitle": "Ubah kredensial",
- "twoFactorModalChangeCredentialsStep": "Masukkan kode dari aplikasi untuk mengubah kredensial administrator.",
- "twoFactorModalSetSuccess": "Autentikasi dua faktor telah berhasil dibuat",
- "twoFactorModalDeleteSuccess": "Autentikasi dua faktor telah berhasil dihapus",
- "twoFactorModalError": "Kode salah",
- "show": "Tampilkan",
- "hide": "Sembunyikan",
- "apiTokenNew": "Token baru",
- "apiTokenName": "Nama",
- "apiTokenNamePlaceholder": "misalnya central-panel-a",
- "apiTokenNameRequired": "Nama wajib diisi",
- "apiTokenEmpty": "Belum ada token — buat satu untuk mengautentikasi bot atau panel jarak jauh.",
- "apiTokenDeleteWarning": "Setiap pemanggil yang menggunakan token ini akan berhenti terautentikasi segera."
- },
- "toasts": {
- "modifySettings": "Parameter telah diubah.",
- "getSettings": "Terjadi kesalahan saat mengambil parameter.",
- "modifyUserError": "Terjadi kesalahan saat mengubah kredensial administrator.",
- "modifyUser": "Anda telah berhasil mengubah kredensial administrator.",
- "originalUserPassIncorrect": "Username atau password saat ini tidak valid",
- "userPassMustBeNotEmpty": "Username dan password baru tidak boleh kosong",
- "getOutboundTrafficError": "Gagal mendapatkan lalu lintas keluar",
- "resetOutboundTrafficError": "Gagal mereset lalu lintas keluar"
- }
- },
- "xray": {
- "title": "Konfigurasi Xray",
- "save": "Simpan",
- "restart": "Mulai ulang Xray",
- "restartSuccess": "Xray berhasil diluncurkan ulang",
- "restartOutputTitle": "Output mulai ulang Xray",
- "restartConfirmTitle": "Mulai ulang xray?",
- "restartConfirmContent": "Memuat ulang layanan xray dengan konfigurasi tersimpan.",
- "stopSuccess": "Xray telah berhasil dihentikan",
- "restartError": "Terjadi kesalahan saat memulai ulang Xray.",
- "stopError": "Terjadi kesalahan saat menghentikan Xray.",
- "basicTemplate": "Dasar",
- "advancedTemplate": "Lanjutan",
- "generalConfigs": "Strategi Umum",
- "generalConfigsDesc": "Opsi ini akan menentukan penyesuaian strategi umum.",
- "logConfigs": "Log",
- "logConfigsDesc": "Log dapat mempengaruhi efisiensi server Anda. Disarankan untuk mengaktifkannya dengan bijak hanya jika diperlukan",
- "blockConfigsDesc": "Opsi ini akan memblokir lalu lintas berdasarkan protokol dan situs web yang diminta.",
- "basicRouting": "Perutean Dasar",
- "blockConnectionsConfigsDesc": "Opsi ini akan memblokir lalu lintas berdasarkan negara yang diminta.",
- "directConnectionsConfigsDesc": "Koneksi langsung memastikan bahwa lalu lintas tertentu tidak dialihkan melalui server lain.",
- "blockips": "Blokir IP",
- "blockdomains": "Blokir Domain",
- "directips": "IP Langsung",
- "directdomains": "Domain Langsung",
- "ipv4Routing": "Perutean IPv4",
- "ipv4RoutingDesc": "Opsi ini akan mengalihkan lalu lintas berdasarkan tujuan tertentu melalui IPv4.",
- "warpRouting": "Perutean WARP",
- "warpRoutingDesc": "Opsi ini akan mengalihkan lalu lintas berdasarkan tujuan tertentu melalui WARP.",
- "nordRouting": "Routing NordVPN",
- "nordRoutingDesc": "Opsi ini akan mengalihkan lalu lintas berdasarkan tujuan tertentu melalui NordVPN.",
- "Template": "Template Konfigurasi Xray Lanjutan",
- "TemplateDesc": "File konfigurasi Xray akhir akan dibuat berdasarkan template ini.",
- "FreedomStrategy": "Strategi Protokol Freedom",
- "FreedomStrategyDesc": "Atur strategi output untuk jaringan dalam Protokol Freedom.",
- "RoutingStrategy": "Strategi Pengalihan Keseluruhan",
- "RoutingStrategyDesc": "Atur strategi pengalihan lalu lintas keseluruhan untuk menyelesaikan semua permintaan.",
- "outboundTestUrl": "URL tes outbound",
- "outboundTestUrlDesc": "URL yang digunakan saat menguji konektivitas outbound",
- "Torrent": "Blokir Protokol BitTorrent",
- "Inbounds": "Inbound",
- "InboundsDesc": "Menerima klien tertentu.",
- "Outbounds": "Outbound",
- "Balancers": "Penyeimbang",
- "balancerTagRequired": "Tag wajib diisi",
- "balancerSelectorRequired": "Pilih setidaknya satu outbound",
- "OutboundsDesc": "Atur jalur lalu lintas keluar.",
- "Routings": "Aturan Pengalihan",
- "RoutingsDesc": "Prioritas setiap aturan penting!",
- "completeTemplate": "Semua",
- "logLevel": "Tingkat Log",
- "logLevelDesc": "Tingkat log untuk log kesalahan, menunjukkan informasi yang perlu dicatat.",
- "accessLog": "Log Akses",
- "accessLogDesc": "Jalur file untuk log akses. Nilai khusus 'tidak ada' menonaktifkan log akses",
- "errorLog": "Catatan eror",
- "errorLogDesc": "Jalur file untuk log kesalahan. Nilai khusus 'tidak ada' menonaktifkan log kesalahan",
- "dnsLog": "Log DNS",
- "dnsLogDesc": "Apakah akan mengaktifkan log kueri DNS",
- "maskAddress": "Alamat Masker",
- "maskAddressDesc": "Masker alamat IP, ketika diaktifkan, akan secara otomatis mengganti alamat IP yang muncul di log.",
- "statistics": "Statistik",
- "statsInboundUplink": "Statistik Unggah Masuk",
- "statsInboundUplinkDesc": "Mengaktifkan pengumpulan statistik untuk lalu lintas unggah dari semua proxy masuk.",
- "statsInboundDownlink": "Statistik Unduh Masuk",
- "statsInboundDownlinkDesc": "Mengaktifkan pengumpulan statistik untuk lalu lintas unduh dari semua proxy masuk.",
- "statsOutboundUplink": "Statistik Unggah Keluar",
- "statsOutboundUplinkDesc": "Mengaktifkan pengumpulan statistik untuk lalu lintas unggah dari semua proxy keluar.",
- "statsOutboundDownlink": "Statistik Unduh Keluar",
- "statsOutboundDownlinkDesc": "Mengaktifkan pengumpulan statistik untuk lalu lintas unduh dari semua proxy keluar.",
- "rules": {
- "first": "Pertama",
- "last": "Terakhir",
- "up": "Naik",
- "down": "Turun",
- "source": "Sumber",
- "dest": "Tujuan",
- "inbound": "Masuk",
- "outbound": "Keluar",
- "balancer": "Pengimbang",
- "info": "Info",
- "add": "Tambahkan Aturan",
- "edit": "Edit Aturan",
- "useComma": "Item yang dipisahkan koma"
- },
- "routing": {
- "dragToReorder": "Seret untuk mengurutkan ulang"
- },
- "ruleForm": {
- "sourceIps": "IP sumber",
- "sourcePort": "Port sumber",
- "vlessRoute": "Rute VLESS",
- "attributes": "Atribut",
- "value": "Nilai",
- "user": "Pengguna",
- "inboundTags": "Tag inbound",
- "outboundTag": "Tag outbound",
- "balancerTag": "Tag balancer",
- "balancerTagTooltip": "Mengarahkan trafik melalui salah satu balancer yang dikonfigurasi"
- },
- "outboundForm": {
- "tagDuplicate": "Tag sudah digunakan oleh outbound lain",
- "tagRequired": "Tag wajib diisi",
- "tagPlaceholder": "tag-unik",
- "localIpPlaceholder": "IP lokal",
- "addressRequired": "Alamat wajib diisi",
- "portRequired": "Port wajib diisi",
- "optional": "opsional",
- "udpOverTcp": "UDP over TCP",
- "uotVersion": "Versi UoT",
- "inboundTag": "Tag inbound",
- "inboundTagPlaceholder": "tag inbound yang digunakan dalam aturan routing",
- "responseType": "Tipe respons",
- "rewriteNetwork": "Tulis ulang jaringan",
- "unchanged": "(tidak berubah)",
- "unchangedAddress": "(tidak berubah) mis. 1.1.1.1",
- "rules": "Aturan",
- "ruleN": "Aturan {n}",
- "action": "Aksi",
- "redirect": "Redirect",
- "fragment": "Fragment",
- "finalRules": "Aturan akhir",
- "overrideXrayPrivateIp": "Timpa blok IP privat default Xray",
- "blockDelay": "Penundaan blokir (ms)",
- "reverseSniffing": "Sniffing terbalik",
- "workers": "Workers",
- "reserved": "Dicadangkan",
- "minUploadInterval": "Min. interval upload (ms)",
- "maxUploadSizeBytes": "Ukuran upload maks. (byte)",
- "uplinkChunkSize": "Ukuran chunk Uplink",
- "noGrpcHeader": "Tanpa header gRPC",
- "maxConcurrency": "Maks. konkurensi",
- "maxConnections": "Maks. koneksi",
- "maxReuseTimes": "Maks. pemakaian ulang",
- "maxRequestTimes": "Maks. permintaan",
- "maxReusableSecs": "Maks. detik dapat dipakai ulang",
- "keepAlivePeriod": "Periode keep alive",
- "authPassword": "Kata sandi auth",
- "visionTestpre": "Vision testpre",
- "serverNamePlaceholder": "nama server",
- "verifyPeerName": "Verifikasi nama peer",
- "pinnedSha256": "SHA256 pinned",
- "shortId": "Short ID",
- "sockopts": "Sockopts",
- "keepAliveInterval": "Interval keep alive",
- "markFwmark": "Mark (fwmark)",
- "interface": "Interface",
- "ipv6Only": "Hanya IPv6",
- "acceptProxyProtocol": "Terima proxy protocol",
- "tcpUserTimeoutMs": "TCP user timeout (ms)",
- "tcpKeepAliveIdleS": "TCP keep-alive idle (d)"
- },
- "outbound": {
- "addOutbound": "Tambahkan Keluar",
- "addReverse": "Tambahkan Revers",
- "editOutbound": "Edit Keluar",
- "editReverse": "Edit Revers",
- "reverseTag": "Tag Revers",
- "reverseTagDesc": "Tag outbound proxy revers sederhana VLESS. Kosongkan untuk menonaktifkan.",
- "reverseTagPlaceholder": "tag outbound (kosong untuk menonaktifkan)",
- "tag": "Tag",
- "tagDesc": "Tag Unik",
- "address": "Alamat",
- "reverse": "Revers",
- "domain": "Domain",
- "type": "Tipe",
- "bridge": "Bridge",
- "portal": "Portal",
- "link": "Tautan",
- "intercon": "Interkoneksi",
- "settings": "Pengaturan",
- "accountInfo": "Informasi Akun",
- "outboundStatus": "Status Keluar",
- "sendThrough": "Kirim Melalui",
- "test": "Tes",
- "testResult": "Hasil Tes",
- "testing": "Menguji koneksi...",
- "testSuccess": "Tes berhasil",
- "testFailed": "Tes gagal",
- "testError": "Gagal menguji outbound",
- "testModeTooltip": "TCP: probe dial-only cepat. HTTP: permintaan penuh via xray.",
- "testAll": "Tes semua",
- "nordvpn": "NordVPN",
- "accessToken": "Token Akses",
- "country": "Negara",
- "server": "Server",
- "city": "Kota",
- "allCities": "Semua Kota",
- "privateKey": "Kunci Privat",
- "load": "Beban"
- },
- "balancer": {
- "addBalancer": "Tambahkan Penyeimbang",
- "editBalancer": "Sunting Penyeimbang",
- "balancerStrategy": "Strategi",
- "balancerSelectors": "Penyeleksi",
- "tag": "Tag",
- "tagDesc": "Label Unik",
- "tagDuplicate": "Tag sudah digunakan oleh balancer lain",
- "tagPlaceholder": "tag balancer unik",
- "selector": "Selector",
- "fallback": "Fallback",
- "expected": "Diharapkan",
- "expectedPlaceholder": "jumlah node optimal",
- "maxRtt": "Maks. RTT",
- "tolerance": "Toleransi",
- "baselines": "Baselines",
- "costs": "Costs",
- "balancerDesc": "BalancerTag dan outboundTag tidak dapat digunakan secara bersamaan. Jika digunakan secara bersamaan, hanya outboundTag yang akan berfungsi."
- },
- "wireguard": {
- "secretKey": "Kunci Rahasia",
- "publicKey": "Kunci Publik",
- "allowedIPs": "IP yang Diizinkan",
- "endpoint": "Titik Akhir",
- "psk": "Kunci Pra-Bagi",
- "domainStrategy": "Strategi Domain"
- },
- "tun": {
- "nameDesc": "Nama antarmuka TUN. Standar adalah 'xray0'",
- "mtuDesc": "Unit Transmisi Maksimum. Ukuran maksimum paket data. Standar adalah 1500",
- "userLevel": "Level Pengguna",
- "userLevelDesc": "Semua koneksi yang dibuat melalui inbound ini akan menggunakan level pengguna ini. Standar adalah 0"
- },
- "nord": {
- "accessToken": "Access token",
- "privateKey": "Kunci privat",
- "noServers": "Tidak ada server ditemukan untuk negara yang dipilih",
- "noPublicKey": "Server yang dipilih tidak mengumumkan kunci publik NordLynx.",
- "outboundAdded": "Outbound NordVPN ditambahkan",
- "outboundUpdated": "Outbound NordVPN diperbarui"
- },
- "warp": {
- "licenseError": "Gagal mengatur lisensi WARP.",
- "fetchFirst": "Ambil konfig WARP terlebih dahulu.",
- "createAccount": "Buat akun WARP",
- "accessToken": "Access token",
- "deviceId": "ID perangkat",
- "licenseKey": "Kunci lisensi",
- "privateKey": "Kunci privat",
- "deleteAccount": "Hapus akun",
- "settings": "Pengaturan",
- "licenseKeyLabel": "Kunci lisensi WARP / WARP+",
- "key": "Kunci",
- "keyPlaceholder": "kunci WARP+ 26 karakter",
- "accountInfo": "Info akun",
- "deviceName": "Nama perangkat",
- "deviceModel": "Model perangkat",
- "deviceEnabled": "Perangkat aktif",
- "accountType": "Tipe akun",
- "role": "Peran",
- "warpPlusData": "Data WARP+",
- "quota": "Kuota",
- "usage": "Penggunaan",
- "addOutbound": "Tambah outbound"
- },
- "dns": {
- "enable": "Aktifkan DNS",
- "enableDesc": "Aktifkan server DNS bawaan",
- "tag": "Tanda DNS Masuk",
- "tagDesc": "Tanda ini akan tersedia sebagai tanda masuk dalam aturan penataan.",
- "clientIp": "IP Klien",
- "clientIpDesc": "Digunakan untuk memberi tahu server tentang lokasi IP yang ditentukan selama kueri DNS",
- "disableCache": "Nonaktifkan cache",
- "disableCacheDesc": "Menonaktifkan caching DNS",
- "disableFallback": "Nonaktifkan Fallback",
- "disableFallbackDesc": "Menonaktifkan kueri DNS fallback",
- "disableFallbackIfMatch": "Nonaktifkan Fallback Jika Cocok",
- "disableFallbackIfMatchDesc": "Menonaktifkan kueri DNS fallback ketika daftar domain yang cocok dari server DNS terpenuhi",
- "enableParallelQuery": "Aktifkan Kueri Paralel",
- "enableParallelQueryDesc": "Aktifkan kueri DNS paralel ke beberapa server untuk resolusi yang lebih cepat",
- "strategy": "Strategi Kueri",
- "strategyDesc": "Strategi keseluruhan untuk menyelesaikan nama domain",
- "add": "Tambahkan Server",
- "edit": "Sunting Server",
- "domains": "Domain",
- "expectIPs": "IP yang Diharapkan",
- "unexpectIPs": "IP tak terduga",
- "useSystemHosts": "Gunakan Hosts Sistem",
- "useSystemHostsDesc": "Gunakan file hosts dari sistem yang terinstal",
- "serveStale": "Sajikan Kedaluwarsa",
- "serveStaleDesc": "Mengembalikan hasil cache yang kedaluwarsa saat memperbarui di latar belakang",
- "serveExpiredTTL": "TTL Kedaluwarsa",
- "serveExpiredTTLDesc": "Masa berlaku (detik) entri cache kedaluwarsa; 0 = tidak pernah kedaluwarsa",
- "timeoutMs": "Batas waktu (ms)",
- "skipFallback": "Lewati Fallback",
- "finalQuery": "Kueri Akhir",
- "hosts": "Hosts",
- "hostsAdd": "Tambah Host",
- "hostsEmpty": "Tidak ada Host yang ditentukan",
- "hostsDomain": "Domain (mis. domain:example.com)",
- "hostsValues": "IP atau domain — ketik dan tekan Enter",
- "usePreset": "Gunakan templat",
- "dnsPresetTitle": "Templat DNS",
- "dnsPresetFamily": "Keluarga",
- "clearAll": "Hapus Semua",
- "clearAllTitle": "Hapus semua server DNS?",
- "clearAllConfirm": "Ini akan menghapus semua server DNS dari daftar. Tidak dapat dibatalkan."
- },
- "fakedns": {
- "add": "Tambahkan DNS Palsu",
- "edit": "Edit DNS Palsu",
- "ipPool": "Subnet Kumpulan IP",
- "poolSize": "Ukuran Kolam"
- }
- }
- },
- "tgbot": {
- "keyboardClosed": "❌ Keyboard ditutup!",
- "noResult": "❗ Tidak ada hasil!",
- "noQuery": "❌ Kueri tidak ditemukan! Silakan gunakan perintah lagi!",
- "wentWrong": "❌ Terjadi kesalahan!",
- "noIpRecord": "❗ Tidak ada Catatan IP!",
- "noInbounds": "❗ Tidak ada inbound yang ditemukan!",
- "unlimited": "♾ Tidak terbatas (Reset)",
- "add": "Tambah",
- "month": "Bulan",
- "months": "Bulan",
- "day": "Hari",
- "days": "Hari",
- "hours": "Jam",
- "minutes": "Menit",
- "unknown": "Tidak diketahui",
- "inbounds": "Inbound",
- "clients": "Klien",
- "offline": "🔴 Offline",
- "online": "🟢 Online",
- "commands": {
- "unknown": "❗ Perintah tidak dikenal.",
- "pleaseChoose": "👇 Harap pilih:\r\n",
- "help": "🤖 Selamat datang di bot ini! Ini dirancang untuk menyediakan data tertentu dari panel web dan memungkinkan Anda melakukan modifikasi sesuai kebutuhan.\r\n\r\n",
- "start": "👋 Halo <i>{{ .Firstname }}</i>.\r\n",
- "welcome": "🤖 Selamat datang di <b>{{.Hostname }}</b> bot managemen.\r\n",
- "status": "✅ Bot dalam keadaan baik!",
- "usage": "❗ Harap berikan teks untuk mencari!",
- "getID": "🆔 ID Anda: <code>{{ .ID }}</code>",
- "helpAdminCommands": "Untuk memulai ulang Xray Core:\r\n<code>/restart</code>\r\n\r\nUntuk mencari email klien:\r\n<code>/usage [Email]</code>\r\n\r\nUntuk mencari inbound (dengan statistik klien):\r\n<code>/inbound [Catatan]</code>\r\n\r\nID Obrolan Telegram:\r\n<code>/id</code>",
- "helpClientCommands": "Untuk mencari statistik, gunakan perintah berikut:\r\n<code>/usage [Email]</code>\r\n\r\nID Obrolan Telegram:\r\n<code>/id</code>",
- "restartUsage": "\r\n\r\n<code>/restart</code>",
- "restartSuccess": "✅ Operasi berhasil!",
- "restartFailed": "❗ Kesalahan dalam operasi.\r\n\r\n<code>Error: {{ .Error }}</code>.",
- "xrayNotRunning": "❗ Xray Core tidak berjalan.",
- "startDesc": "Tampilkan menu utama",
- "helpDesc": "Bantuan bot",
- "statusDesc": "Periksa status bot",
- "idDesc": "Tampilkan ID Telegram Anda"
- },
- "messages": {
- "cpuThreshold": "🔴 Beban CPU {{ .Percent }}% melebihi batas {{ .Threshold }}%",
- "selectUserFailed": "❌ Kesalahan dalam pemilihan pengguna!",
- "userSaved": "✅ Pengguna Telegram tersimpan.",
- "loginSuccess": "✅ Berhasil masuk ke panel.\r\n",
- "loginFailed": "❗️ Gagal masuk ke panel.\r\n",
- "2faFailed": "2FA Gagal",
- "report": "🕰 Laporan Terjadwal: {{ .RunTime }}\r\n",
- "datetime": "⏰ Tanggal & Waktu: {{ .DateTime }}\r\n",
- "hostname": "💻 Host: {{ .Hostname }}\r\n",
- "version": "🚀 Versi 3X-UI: {{ .Version }}\r\n",
- "xrayVersion": "📡 Versi Xray: {{ .XrayVersion }}\r\n",
- "ipv6": "🌐 IPv6: {{ .IPv6 }}\r\n",
- "ipv4": "🌐 IPv4: {{ .IPv4 }}\r\n",
- "ip": "🌐 IP: {{ .IP }}\r\n",
- "ips": "🔢 IP:\r\n{{ .IPs }}\r\n",
- "serverUpTime": "⏳ Waktu Aktif: {{ .UpTime }} {{ .Unit }}\r\n",
- "serverLoad": "📈 Beban Sistem: {{ .Load1 }}, {{ .Load2 }}, {{ .Load3 }}\r\n",
- "serverMemory": "📋 RAM: {{ .Current }}/{{ .Total }}\r\n",
- "tcpCount": "🔹 TCP: {{ .Count }}\r\n",
- "udpCount": "🔸 UDP: {{ .Count }}\r\n",
- "traffic": "🚦 Lalu Lintas: {{ .Total }} (↑{{ .Upload }},↓{{ .Download }})\r\n",
- "xrayStatus": "ℹ️ Status: {{ .State }}\r\n",
- "username": "👤 Nama Pengguna: {{ .Username }}\r\n",
- "reason": "❗️ Alasan: {{ .Reason }}\r\n",
- "time": "⏰ Waktu: {{ .Time }}\r\n",
- "inbound": "📍 Inbound: {{ .Remark }}\r\n",
- "port": "🔌 Port: {{ .Port }}\r\n",
- "expire": "📅 Tanggal Kadaluarsa: {{ .Time }}\r\n",
- "expireIn": "📅 Kadaluarsa Dalam: {{ .Time }}\r\n",
- "active": "💡 Aktif: {{ .Enable }}\r\n",
- "enabled": "🚨 Diaktifkan: {{ .Enable }}\r\n",
- "online": "🌐 Status Koneksi: {{ .Status }}\r\n",
- "lastOnline": "🔙 Terakhir online: {{ .Time }}\r\n",
- "email": "📧 Email: {{ .Email }}\r\n",
- "upload": "🔼 Unggah: ↑{{ .Upload }}\r\n",
- "download": "🔽 Unduh: ↓{{ .Download }}\r\n",
- "total": "📊 Total: ↑↓{{ .UpDown }} / {{ .Total }}\r\n",
- "TGUser": "👤 Pengguna Telegram: {{ .TelegramID }}\r\n",
- "exhaustedMsg": "🚨 Habis {{ .Type }}:\r\n",
- "exhaustedCount": "🚨 Jumlah Habis {{ .Type }}:\r\n",
- "onlinesCount": "🌐 Klien Online: {{ .Count }}\r\n",
- "disabled": "🛑 Dinonaktifkan: {{ .Disabled }}\r\n",
- "depleteSoon": "🔜 Habis Sebentar: {{ .Deplete }}\r\n\r\n",
- "backupTime": "🗄 Waktu Backup: {{ .Time }}\r\n",
- "refreshedOn": "\r\n📋🔄 Diperbarui Pada: {{ .Time }}\r\n\r\n",
- "yes": "✅ Ya",
- "no": "❌ Tidak",
- "received_id": "🔑📥 ID diperbarui.",
- "received_password": "🔑📥 Kata sandi diperbarui.",
- "received_email": "📧📥 Email diperbarui.",
- "received_comment": "💬📥 Komentar diperbarui.",
- "id_prompt": "🔑 ID Default: {{ .ClientId }}\n\nMasukkan ID Anda.",
- "pass_prompt": "🔑 Kata Sandi Default: {{ .ClientPassword }}\n\nMasukkan kata sandi Anda.",
- "email_prompt": "📧 Email Default: {{ .ClientEmail }}\n\nMasukkan email Anda.",
- "comment_prompt": "💬 Komentar Default: {{ .ClientComment }}\n\nMasukkan komentar Anda.",
- "inbound_client_data_id": "🔄 Masuk: {{ .InboundRemark }}\n\n🔑 ID: {{ .ClientId }}\n📧 Email: {{ .ClientEmail }}\n📊 Lalu lintas: {{ .ClientTraffic }}\n📅 Tanggal Kedaluwarsa: {{ .ClientExp }}\n🌐 Batas IP: {{ .IpLimit }}\n💬 Komentar: {{ .ClientComment }}\n\nSekarang kamu bisa menambahkan klien ke inbound!",
- "inbound_client_data_pass": "🔄 Masuk: {{ .InboundRemark }}\n\n🔑 Kata sandi: {{ .ClientPass }}\n📧 Email: {{ .ClientEmail }}\n📊 Lalu lintas: {{ .ClientTraffic }}\n📅 Tanggal Kedaluwarsa: {{ .ClientExp }}\n🌐 Batas IP: {{ .IpLimit }}\n💬 Komentar: {{ .ClientComment }}\n\nSekarang kamu bisa menambahkan klien ke inbound!",
- "cancel": "❌ Proses Dibatalkan! \n\nAnda dapat /start lagi kapan saja. 🔄",
- "error_add_client": "⚠️ Error:\n\n {{ .error }}",
- "using_default_value": "Oke, saya akan tetap menggunakan nilai default. 😊",
- "incorrect_input": "Masukan Anda tidak valid.\nFrasa harus berlanjut tanpa spasi.\nContoh benar: aaaaaa\nContoh salah: aaa aaa 🚫",
- "AreYouSure": "Apakah kamu yakin? 🤔",
- "SuccessResetTraffic": "📧 Email: {{ .ClientEmail }}\n🏁 Hasil: ✅ Berhasil",
- "FailedResetTraffic": "📧 Email: {{ .ClientEmail }}\n🏁 Hasil: ❌ Gagal \n\n🛠️ Kesalahan: [ {{ .ErrorMessage }} ]",
- "FinishProcess": "🔚 Proses reset traffic selesai untuk semua klien."
- },
- "buttons": {
- "closeKeyboard": "❌ Tutup Papan Ketik",
- "cancel": "❌ Batal",
- "cancelReset": "❌ Batal Reset",
- "cancelIpLimit": "❌ Batal Batas IP",
- "confirmResetTraffic": "✅ Konfirmasi Reset Lalu Lintas?",
- "confirmClearIps": "✅ Konfirmasi Hapus IPs?",
- "confirmRemoveTGUser": "✅ Konfirmasi Hapus Pengguna Telegram?",
- "confirmToggle": "✅ Konfirmasi Aktifkan/Nonaktifkan Pengguna?",
- "dbBackup": "Dapatkan Cadangan DB",
- "serverUsage": "Penggunaan Server",
- "getInbounds": "Dapatkan Inbounds",
- "depleteSoon": "Habis Sebentar",
- "clientUsage": "Dapatkan Penggunaan",
- "onlines": "Klien Online",
- "commands": "Perintah",
- "refresh": "🔄 Perbarui",
- "clearIPs": "❌ Hapus IPs",
- "removeTGUser": "❌ Hapus Pengguna Telegram",
- "selectTGUser": "👤 Pilih Pengguna Telegram",
- "selectOneTGUser": "👤 Pilih Pengguna Telegram:",
- "resetTraffic": "📈 Reset Lalu Lintas",
- "resetExpire": "📅 Ubah Tanggal Kadaluarsa",
- "ipLog": "🔢 Log IP",
- "ipLimit": "🔢 Batas IP",
- "setTGUser": "👤 Set Pengguna Telegram",
- "toggle": "🔘 Aktifkan / Nonaktifkan",
- "custom": "🔢 Kustom",
- "confirmNumber": "✅ Konfirmasi: {{ .Num }}",
- "confirmNumberAdd": "✅ Konfirmasi menambahkan: {{ .Num }}",
- "limitTraffic": "🚧 Batas Lalu Lintas",
- "getBanLogs": "Dapatkan Log Pemblokiran",
- "allClients": "Semua Klien",
- "addClient": "Tambah Klien",
- "submitDisable": "Kirim Sebagai Nonaktif ☑️",
- "submitEnable": "Kirim Sebagai Aktif ✅",
- "use_default": "🏷️ Gunakan Default",
- "change_id": "⚙️🔑 ID",
- "change_password": "⚙️🔑 Kata Sandi",
- "change_email": "⚙️📧 Email",
- "change_comment": "⚙️💬 Komentar",
- "change_flow": "⚙️🚦 Flow",
- "ResetAllTraffics": "Reset Semua Lalu Lintas",
- "SortedTrafficUsageReport": "Laporan Penggunaan Lalu Lintas yang Terurut"
- },
- "answers": {
- "successfulOperation": "✅ Operasi berhasil!",
- "errorOperation": "❗ Kesalahan dalam operasi.",
- "getInboundsFailed": "❌ Gagal mendapatkan inbounds.",
- "getClientsFailed": "❌ Gagal mendapatkan klien.",
- "canceled": "❌ {{ .Email }}: Operasi dibatalkan.",
- "clientRefreshSuccess": "✅ {{ .Email }}: Klien diperbarui dengan berhasil.",
- "IpRefreshSuccess": "✅ {{ .Email }}: IP diperbarui dengan berhasil.",
- "TGIdRefreshSuccess": "✅ {{ .Email }}: Pengguna Telegram Klien diperbarui dengan berhasil.",
- "resetTrafficSuccess": "✅ {{ .Email }}: Lalu lintas direset dengan berhasil.",
- "setTrafficLimitSuccess": "✅ {{ .Email }}: Batas lalu lintas disimpan dengan berhasil.",
- "expireResetSuccess": "✅ {{ .Email }}: Hari kadaluarsa direset dengan berhasil.",
- "resetIpSuccess": "✅ {{ .Email }}: Batas IP {{ .Count }} disimpan dengan berhasil.",
- "clearIpSuccess": "✅ {{ .Email }}: IP dihapus dengan berhasil.",
- "getIpLog": "✅ {{ .Email }}: Dapatkan Log IP.",
- "getUserInfo": "✅ {{ .Email }}: Dapatkan Info Pengguna Telegram.",
- "removedTGUserSuccess": "✅ {{ .Email }}: Pengguna Telegram dihapus dengan berhasil.",
- "enableSuccess": "✅ {{ .Email }}: Diaktifkan dengan berhasil.",
- "disableSuccess": "✅ {{ .Email }}: Dinonaktifkan dengan berhasil.",
- "askToAddUserId": "Konfigurasi Anda tidak ditemukan!\r\nSilakan minta admin Anda untuk menggunakan ChatID Telegram Anda dalam konfigurasi Anda.\r\n\r\nChatID Pengguna Anda: <code>{{ .TgUserID }}</code>",
- "chooseClient": "Pilih Klien untuk Inbound {{ .Inbound }}",
- "chooseInbound": "Pilih Inbound"
- }
- }
- }
|