mirror of
https://github.com/MHSanaei/3x-ui.git
synced 2026-08-14 15:20:59 +00:00
i18n(panel): migrate hardcoded panel strings to en-US and translate all locales
Surface ~400 hardcoded English labels, tooltips, placeholders, dt/divider text, modal okText/cancelText, and Spin loading from the panel pages (clients/groups/inbounds/nodes/settings/xray/sub/index) into web/translation/en-US.json under existing pages.<page>.* namespaces, with JSX swapped to t(...). Brand and protocol identifiers (TLS, MTU, SNI, NordVPN, Cloudflare WARP, etc.) stay literal. Sync all 12 non-English locales (ar-EG, es-ES, fa-IR, id-ID, ja-JP, pt-BR, ru-RU, tr-TR, uk-UA, vi-VN, zh-CN, zh-TW) to match en-US's structure and translate the 521 new key paths per locale. Every locale file now has 1539 lines, mirroring en-US ordering. Also remove a dead duplicate "info": "Info" key under pages.inbounds that collided with the new pages.inbounds.info.* object. Backend: bulk attach/detach errors in web/service/client.go now route through logger.Warningf (so they appear under /panel/api/server/logs/) instead of only living on the response payload.
This commit is contained in:
+448
-31
@@ -8,15 +8,22 @@
|
||||
"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",
|
||||
@@ -27,7 +34,7 @@
|
||||
"check": "Centang",
|
||||
"indefinite": "Tak Terbatas",
|
||||
"unlimited": "Tanpa Batas",
|
||||
"none": "None",
|
||||
"none": "Tidak ada",
|
||||
"qrCode": "Kode QR",
|
||||
"info": "Informasi Lebih Lanjut",
|
||||
"edit": "Edit",
|
||||
@@ -40,8 +47,8 @@
|
||||
"useIPv4ForHost": "Gunakan IPv4 untuk host",
|
||||
"transmission": "Transmisi",
|
||||
"host": "Host",
|
||||
"path": "Jalur",
|
||||
"camouflage": "Obfuscation",
|
||||
"path": "Path",
|
||||
"camouflage": "Obfuskasi",
|
||||
"status": "Status",
|
||||
"enabled": "Aktif",
|
||||
"disabled": "Nonaktif",
|
||||
@@ -95,8 +102,9 @@
|
||||
"dark": "Gelap",
|
||||
"ultraDark": "Sangat Gelap",
|
||||
"dashboard": "Ikhtisar",
|
||||
"inbounds": "Masuk",
|
||||
"inbounds": "Inbound",
|
||||
"clients": "Klien",
|
||||
"groups": "Grup",
|
||||
"nodes": "Node",
|
||||
"settings": "Pengaturan Panel",
|
||||
"xray": "Konfigurasi Xray",
|
||||
@@ -128,8 +136,8 @@
|
||||
"memory": "RAM",
|
||||
"threads": "Thread",
|
||||
"xrayStatus": "Xray",
|
||||
"stopXray": "Stop",
|
||||
"restartXray": "Restart",
|
||||
"stopXray": "Hentikan",
|
||||
"restartXray": "Mulai ulang",
|
||||
"xraySwitch": "Versi",
|
||||
"xrayUpdates": "Pembaruan Xray",
|
||||
"xraySwitchClick": "Pilih versi yang ingin Anda pindah.",
|
||||
@@ -143,7 +151,7 @@
|
||||
"xrayStatusUnknown": "Tidak diketahui",
|
||||
"xrayStatusRunning": "Berjalan",
|
||||
"xrayStatusStop": "Berhenti",
|
||||
"xrayStatusError": "Kesalahan",
|
||||
"xrayStatusError": "Error",
|
||||
"xrayErrorPopoverTitle": "Terjadi kesalahan saat menjalankan Xray",
|
||||
"operationHours": "Waktu Aktif",
|
||||
"systemHistoryTitle": "Riwayat Sistem",
|
||||
@@ -241,7 +249,7 @@
|
||||
"getConfigError": "Terjadi kesalahan saat mengambil file konfigurasi"
|
||||
},
|
||||
"inbounds": {
|
||||
"title": "Masuk",
|
||||
"title": "Inbound",
|
||||
"totalDownUp": "Total Terkirim/Diterima",
|
||||
"totalUsage": "Penggunaan Total",
|
||||
"inboundCount": "Total Masuk",
|
||||
@@ -270,14 +278,14 @@
|
||||
},
|
||||
"protocol": "Protokol",
|
||||
"port": "Port",
|
||||
"portMap": "Port Mapping",
|
||||
"traffic": "Traffic",
|
||||
"portMap": "Pemetaan port",
|
||||
"traffic": "Trafik",
|
||||
"details": "Rincian",
|
||||
"transportConfig": "Transport",
|
||||
"expireDate": "Durasi",
|
||||
"createdAt": "Dibuat",
|
||||
"updatedAt": "Diperbarui",
|
||||
"resetTraffic": "Reset Traffic",
|
||||
"resetTraffic": "Reset trafik",
|
||||
"addInbound": "Tambahkan Masuk",
|
||||
"generalActions": "Tindakan Umum",
|
||||
"modifyInbound": "Ubah Masuk",
|
||||
@@ -292,6 +300,24 @@
|
||||
"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",
|
||||
@@ -306,7 +332,7 @@
|
||||
"destinationPort": "Port Tujuan",
|
||||
"targetAddress": "Alamat Target",
|
||||
"monitorDesc": "Biarkan kosong untuk mendengarkan semua IP",
|
||||
"meansNoLimit": "= Unlimited. (unit: GB)",
|
||||
"meansNoLimit": "= Tanpa batas. (satuan: GB)",
|
||||
"totalFlow": "Total Aliran",
|
||||
"leaveBlankToNeverExpire": "Biarkan kosong untuk tidak pernah kedaluwarsa",
|
||||
"noRecommendKeepDefault": "Disarankan untuk tetap menggunakan pengaturan default",
|
||||
@@ -341,6 +367,7 @@
|
||||
"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",
|
||||
@@ -369,7 +396,6 @@
|
||||
},
|
||||
"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.",
|
||||
"info": "Info",
|
||||
"same": "Sama",
|
||||
"inboundData": "Data Masuk",
|
||||
"exportInbound": "Ekspor Masuk",
|
||||
@@ -406,6 +432,139 @@
|
||||
"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",
|
||||
@@ -456,6 +615,20 @@
|
||||
"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)",
|
||||
@@ -466,6 +639,9 @@
|
||||
"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",
|
||||
@@ -489,11 +665,45 @@
|
||||
"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.",
|
||||
"empty": "Belum ada klien — tambahkan satu untuk memulai.",
|
||||
"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",
|
||||
@@ -505,9 +715,10 @@
|
||||
"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": "Auth Hysteria",
|
||||
"hysteriaAuth": "Hysteria Auth",
|
||||
"uuid": "UUID",
|
||||
"flow": "Flow",
|
||||
"vmessSecurity": "Keamanan VMess",
|
||||
"reverseTag": "Reverse tag",
|
||||
"reverseTagPlaceholder": "Reverse tag opsional",
|
||||
"telegramId": "ID pengguna Telegram",
|
||||
@@ -528,10 +739,48 @@
|
||||
"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",
|
||||
"editNode": "Edit node",
|
||||
"totalNodes": "Total Node",
|
||||
"onlineNodes": "Online",
|
||||
"offlineNodes": "Offline",
|
||||
@@ -543,7 +792,7 @@
|
||||
"scheme": "Skema",
|
||||
"address": "Alamat",
|
||||
"port": "Port",
|
||||
"basePath": "Base Path",
|
||||
"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.",
|
||||
@@ -590,7 +839,7 @@
|
||||
"title": "Pengaturan Panel",
|
||||
"save": "Simpan",
|
||||
"infoDesc": "Setiap perubahan yang dibuat di sini perlu disimpan. Harap restart panel untuk menerapkan perubahan.",
|
||||
"restartPanel": "Restart Panel",
|
||||
"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",
|
||||
@@ -615,10 +864,12 @@
|
||||
"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": "URI Path",
|
||||
"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",
|
||||
@@ -634,7 +885,7 @@
|
||||
"telegramTokenDesc": "Token bot Telegram yang diperoleh dari '{'@'}BotFather'.",
|
||||
"telegramProxy": "Proxy SOCKS",
|
||||
"telegramProxyDesc": "Mengaktifkan proxy SOCKS5 untuk terhubung ke Telegram. (sesuaikan pengaturan sesuai panduan)",
|
||||
"telegramAPIServer": "Telegram API Server",
|
||||
"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)",
|
||||
@@ -658,6 +909,8 @@
|
||||
"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",
|
||||
@@ -678,7 +931,7 @@
|
||||
"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": "URI Path",
|
||||
"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)",
|
||||
@@ -693,7 +946,7 @@
|
||||
"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": "Inform external API on every traffic update.",
|
||||
"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",
|
||||
@@ -703,6 +956,54 @@
|
||||
"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",
|
||||
@@ -756,8 +1057,11 @@
|
||||
"xray": {
|
||||
"title": "Konfigurasi Xray",
|
||||
"save": "Simpan",
|
||||
"restart": "Restart Xray",
|
||||
"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.",
|
||||
@@ -765,7 +1069,7 @@
|
||||
"advancedTemplate": "Lanjutan",
|
||||
"generalConfigs": "Strategi Umum",
|
||||
"generalConfigsDesc": "Opsi ini akan menentukan penyesuaian strategi umum.",
|
||||
"logConfigs": "Catatan",
|
||||
"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",
|
||||
@@ -790,10 +1094,12 @@
|
||||
"outboundTestUrl": "URL tes outbound",
|
||||
"outboundTestUrlDesc": "URL yang digunakan saat menguji konektivitas outbound",
|
||||
"Torrent": "Blokir Protokol BitTorrent",
|
||||
"Inbounds": "Masuk",
|
||||
"Inbounds": "Inbound",
|
||||
"InboundsDesc": "Menerima klien tertentu.",
|
||||
"Outbounds": "Keluar",
|
||||
"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!",
|
||||
@@ -832,6 +1138,73 @@
|
||||
"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",
|
||||
@@ -846,7 +1219,7 @@
|
||||
"reverse": "Revers",
|
||||
"domain": "Domain",
|
||||
"type": "Tipe",
|
||||
"bridge": "Jembatan",
|
||||
"bridge": "Bridge",
|
||||
"portal": "Portal",
|
||||
"link": "Tautan",
|
||||
"intercon": "Interkoneksi",
|
||||
@@ -860,6 +1233,8 @@
|
||||
"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",
|
||||
@@ -874,8 +1249,18 @@
|
||||
"editBalancer": "Sunting Penyeimbang",
|
||||
"balancerStrategy": "Strategi",
|
||||
"balancerSelectors": "Penyeleksi",
|
||||
"tag": "Menandai",
|
||||
"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": {
|
||||
@@ -892,6 +1277,38 @@
|
||||
"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",
|
||||
@@ -911,7 +1328,7 @@
|
||||
"strategyDesc": "Strategi keseluruhan untuk menyelesaikan nama domain",
|
||||
"add": "Tambahkan Server",
|
||||
"edit": "Sunting Server",
|
||||
"domains": "Domains",
|
||||
"domains": "Domain",
|
||||
"expectIPs": "IP yang Diharapkan",
|
||||
"unexpectIPs": "IP tak terduga",
|
||||
"useSystemHosts": "Gunakan Hosts Sistem",
|
||||
@@ -1042,7 +1459,7 @@
|
||||
"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": "⚠️ Kesalahan:\n\n {{ .error }}",
|
||||
"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? 🤔",
|
||||
@@ -1119,4 +1536,4 @@
|
||||
"chooseInbound": "Pilih Inbound"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user