refactor: 重构多语言和走马灯
- 删除 src/locales/en-US/common.ts 文件中的所有国际化文案 - 删除 src/locales/id-ID/common.ts 文件中的所有国际化文案 - 移除与游戏、认证、UI组件相关的多语言配置项 - 清理导航、游戏大厅、语言选择等界面的翻译内容 - 移除登录注册表单、验证规则等认证相关文案 - 删除支付、提款、钱包记录等财务功能翻译项
This commit is contained in:
653
src/locales/id-ID.ts
Normal file
653
src/locales/id-ID.ts
Normal file
@@ -0,0 +1,653 @@
|
||||
/* 以下为多语言中重复出现的文案,统一声明一次后在下方各 key 复用,避免同一文案多处声明。 */
|
||||
/** @description 登录的统一文案。 */
|
||||
const TEXT_LOGIN = 'Masuk'
|
||||
|
||||
/** @description 注册的统一文案。 */
|
||||
const TEXT_REGISTER = 'Daftar'
|
||||
|
||||
/** @description “是”的统一文案。 */
|
||||
const TEXT_YES = 'Ya'
|
||||
|
||||
/** @description “否”的统一文案。 */
|
||||
const TEXT_NO = 'Tidak'
|
||||
|
||||
/** @description “查看”的统一文案。 */
|
||||
const TEXT_VIEW = 'Lihat'
|
||||
|
||||
/** @description 自动托管的统一文案。 */
|
||||
const TEXT_AUTO_HOSTING = 'Auto Spin'
|
||||
|
||||
/** @description 钱包流水的统一文案。 */
|
||||
const TEXT_WALLET_RECORDS = 'Riwayat Dompet'
|
||||
|
||||
/** @description 站内消息的统一文案。 */
|
||||
const TEXT_SITE_MESSAGES = 'Pesan'
|
||||
|
||||
/** @description 分页“第x页/共x条”的统一文案。 */
|
||||
const TEXT_PAGE_INDICATOR = 'Halaman {{page}} / total {{total}}'
|
||||
|
||||
/** @description 上一页的统一文案。 */
|
||||
const TEXT_PREV_PAGE = 'Sebelumnya'
|
||||
|
||||
/** @description 下一页的统一文案。 */
|
||||
const TEXT_NEXT_PAGE = 'Berikutnya'
|
||||
|
||||
/** @description “时间”的统一文案。 */
|
||||
const TEXT_TIME = 'Waktu'
|
||||
|
||||
/** @description 超过单次投注限额的统一文案。 */
|
||||
const TEXT_BET_LIMIT_EXCEEDED = 'Melebihi batas taruhan tunggal'
|
||||
|
||||
/** @description “提交中...”的统一文案。 */
|
||||
const TEXT_SUBMITTING = 'Mengirim...'
|
||||
|
||||
/** @description 手机号字段标签的统一文案。 */
|
||||
const TEXT_MOBILE_LABEL = 'Nomor Ponsel:'
|
||||
|
||||
/** @description 手机号输入占位的统一文案。 */
|
||||
const TEXT_MOBILE_PLACEHOLDER = 'Masukkan nomor ponsel'
|
||||
|
||||
/** @description 密码字段标签的统一文案。 */
|
||||
const TEXT_PASSWORD_LABEL = 'Kata Sandi:'
|
||||
|
||||
/** @description 密码输入占位的统一文案。 */
|
||||
const TEXT_PASSWORD_PLACEHOLDER = 'Masukkan kata sandi'
|
||||
|
||||
/** @description “确认”按钮的统一文案。 */
|
||||
const TEXT_CONFIRM = 'Konfirmasi'
|
||||
|
||||
/** @description “加载中...”的统一文案。 */
|
||||
const TEXT_LOADING = 'Memuat...'
|
||||
|
||||
/** @description 货币类型的统一文案。 */
|
||||
const TEXT_CURRENCY_TYPE = 'Jenis Mata Uang'
|
||||
|
||||
/** @description 支付渠道的统一文案。 */
|
||||
const TEXT_PAYMENT_CHANNEL = 'Saluran Pembayaran'
|
||||
|
||||
/** @description “已封盘”的统一文案。 */
|
||||
const TEXT_LOCKED = 'Terkunci'
|
||||
|
||||
/** @description “已结算”的统一文案。 */
|
||||
const TEXT_SETTLED = 'Selesai'
|
||||
|
||||
export default {
|
||||
nav: {
|
||||
home: 'Beranda',
|
||||
game: 'Game',
|
||||
},
|
||||
shell: {
|
||||
eyebrow: '36 Character Flower',
|
||||
subtitle: 'Frontend game undian real-time untuk mobile dan desktop',
|
||||
},
|
||||
notFound: {
|
||||
eyebrow: '404',
|
||||
title: 'Halaman yang kamu minta tidak ditemukan.',
|
||||
description: 'Rute ini tidak ada. Kembali ke halaman utama scaffold.',
|
||||
home: 'Kembali ke beranda',
|
||||
},
|
||||
home: {
|
||||
eyebrow: 'Shell game sedang dibangun',
|
||||
title: 'Framework game dual-device 36-character-flower sedang dibangun.',
|
||||
description:
|
||||
'Proyek ini sudah melewati tahap scaffold umum. Sekarang strukturnya dibangun dengan rute game bersama, state bersama, serta tampilan mobile dan desktop terpisah untuk pengalaman betting real-time.',
|
||||
cards: {
|
||||
routingMode: 'Routing',
|
||||
dataLayer: 'Model state',
|
||||
transport: 'Real-time',
|
||||
auth: 'Produk',
|
||||
metadata: 'Fokus saat ini',
|
||||
},
|
||||
values: {
|
||||
routingMode: 'URL bersama + tampilan device terpisah',
|
||||
dataLayer: 'Round / Bet / User / UI / Connection',
|
||||
transport: 'HTTP + WebSocket',
|
||||
auth: 'Gameplay live draw 36-grid',
|
||||
metadata: 'Bangun struktur dulu sebelum polishing state machine',
|
||||
},
|
||||
footnote:
|
||||
'Berikutnya: rute utama game, model bisnis bersama, dan shell halaman mobile serta desktop.',
|
||||
primaryAction: 'Masuk lobby game',
|
||||
secondaryAction: 'Lihat struktur proyek',
|
||||
},
|
||||
language: {
|
||||
label: 'Bahasa',
|
||||
zhCN: '中文',
|
||||
enUS: 'English',
|
||||
msMY: 'Bahasa Melayu',
|
||||
idID: 'Bahasa Indonesia',
|
||||
},
|
||||
game: {
|
||||
metaTitle: 'Lobby Game',
|
||||
metaDescription: 'Lobby game live 36-character-flower.',
|
||||
lobbyTitle: 'Lobby 36 Character Flower',
|
||||
lobbySubtitle:
|
||||
'Dalam satu rute bisnis bersama, mobile dan desktop memasang tampilan berbeda di atas data dan state game yang sama.',
|
||||
status: {
|
||||
roundState: 'Status ronde',
|
||||
currentRound: 'Ronde saat ini {{id}}',
|
||||
tablePool: 'Pool meja',
|
||||
onlineCount: '{{count}} online',
|
||||
activeChip: 'Chip aktif',
|
||||
announcementsRead: '{{read}}/{{total}} pengumuman dibaca',
|
||||
connection: 'Koneksi',
|
||||
connectionHealthy: 'Sinkronisasi stabil',
|
||||
connectionRecovering: 'Menunggu pemulihan',
|
||||
synced: 'Tersinkron',
|
||||
degraded: 'Menurun',
|
||||
},
|
||||
board: {
|
||||
historyTitle: 'Riwayat ronde',
|
||||
historySubtitle: 'Jejak undian dan payout terbaru',
|
||||
trendTitle: 'Radar tren',
|
||||
trendSubtitle: 'Ringkasan momentum dan miss streak',
|
||||
stageTitle: 'Panggung undian',
|
||||
stageSubtitle:
|
||||
'Panggung ini menampung papan utama dan struktur kontrol sebelum integrasi penuh state machine dan animasi.',
|
||||
currentPhase: 'Fase saat ini',
|
||||
selectedBet: 'Bet {{amount}}',
|
||||
hitCount: '{{count}} hit',
|
||||
hitBadge: '{{count}}x',
|
||||
badgeWin: 'Menang',
|
||||
badgeBet: 'Bet',
|
||||
cellLabel: 'Sel {{id}}',
|
||||
winningCell: 'Sel pemenang {{id}}',
|
||||
missedRounds: 'Miss {{count}} ronde',
|
||||
rising: 'Naik',
|
||||
falling: 'Turun',
|
||||
steady: 'Stabil',
|
||||
hitTotal: '{{count}} hit',
|
||||
},
|
||||
phases: {
|
||||
betting: 'Betting',
|
||||
locked: TEXT_LOCKED,
|
||||
settled: TEXT_SETTLED,
|
||||
},
|
||||
roundBettingStart: {
|
||||
title: 'Ronde {{roundId}}',
|
||||
action: 'Mulai Bertaruh',
|
||||
},
|
||||
actions: {
|
||||
unifiedBetHint: 'Bet seragam',
|
||||
totalBet: 'Total bet',
|
||||
canBet: 'Bisa bet',
|
||||
yes: TEXT_YES,
|
||||
no: TEXT_NO,
|
||||
quickBet: 'Quick bet 08',
|
||||
clearPending: 'Hapus pending',
|
||||
autoModeDemo: 'Demo mode auto',
|
||||
stopAuto: 'Stop auto',
|
||||
},
|
||||
modals: {
|
||||
login: {
|
||||
title: TEXT_LOGIN,
|
||||
},
|
||||
register: {
|
||||
title: TEXT_REGISTER,
|
||||
},
|
||||
notice: {
|
||||
title: 'Pengumuman Acara',
|
||||
content:
|
||||
'Bagian ini nantinya akan memuat konten pengumuman acara yang sebenarnya, materi visual, dan pesan panjang yang dapat digulir. Versi saat ini fokus pada sambungan modal multibahasa.',
|
||||
check: TEXT_VIEW,
|
||||
},
|
||||
entryNotice: {
|
||||
title: 'Pengumuman Situs',
|
||||
subtitle:
|
||||
'Silakan baca pengumuman berikut dan konfirmasi sebelum masuk ke game.',
|
||||
loading: 'Memuat pengumuman...',
|
||||
loadFailed: 'Gagal memuat pengumuman. Silakan coba lagi.',
|
||||
retry: 'Muat Ulang',
|
||||
agreement: 'Saya telah membaca dan setuju.',
|
||||
enterGame: 'Masuk Game',
|
||||
},
|
||||
rules: {
|
||||
title: 'Aturan Permainan',
|
||||
content:
|
||||
'1. Gameplay Dasar\n1) Setelah setiap ronde dimulai, pemain dapat memilih satu atau beberapa angka di papan untuk memasang taruhan.\n2) Setelah taruhan ditutup, sistem masuk ke fase undian dan menyelesaikan hadiah berdasarkan hasil ronde.\n3) Level chip yang berbeda mewakili jumlah taruhan yang berbeda, mengikuti batas meja dan konfigurasi saat ini.\n\n2. Catatan Taruhan\n1) Taruhan hanya bisa dikirim saat fase taruhan berlangsung.\n2) Sebelum konfirmasi, periksa kembali angka yang dipilih, nominal chip, dan total taruhan.\n3) Jika saldo tidak cukup, ronde tidak lagi valid, atau taruhan sudah ditutup, permintaan akan ditolak.\n\n3. Undian dan Penyelesaian\n1) Hasil undian akhir yang ditampilkan sistem adalah hasil yang berlaku.\n2) Aturan kena, odds, pembayaran, dan performa streak diselesaikan secara real time sesuai konfigurasi room saat ini.\n3) Jika terjadi gangguan jaringan, silakan mengacu pada data resmi setelah sinkronisasi ulang.\n\n4. Catatan Tambahan\n1) Mohon atur waktu bermain secara bertanggung jawab.\n2) Segala tindakan tidak wajar untuk mengganggu sistem, mengeksploitasi hadiah, atau menghindari kontrol risiko dilarang keras.\n3) Platform berhak meninjau pesanan, pembayaran, dan status akun dalam kondisi khusus.',
|
||||
confirm: 'Saya Mengerti',
|
||||
},
|
||||
procedures: {
|
||||
title: 'Isi Ulang / Tarik Dana',
|
||||
contentPlaceholder: 'Pilih tindakan yang ingin kamu lanjutkan',
|
||||
withdraw: 'Tarik Dana',
|
||||
topup: 'Isi Ulang',
|
||||
},
|
||||
autoSetting: {
|
||||
title: TEXT_AUTO_HOSTING,
|
||||
startAutoSpin: 'Mulai Auto Spin',
|
||||
rows: {
|
||||
stopIfBalanceLowerThan: 'Berhenti jika saldo lebih rendah dari',
|
||||
stopIfSingleWinExceeds: 'Berhenti jika kemenangan tunggal melebihi',
|
||||
stopOnAnyJackpot: 'Berhenti pada jackpot apa pun',
|
||||
},
|
||||
},
|
||||
userInfo: {
|
||||
title: 'Info Pengguna',
|
||||
tabs: {
|
||||
profile: 'Profil',
|
||||
financeRecords: 'Riwayat Isi Ulang / Penarikan',
|
||||
walletRecords: TEXT_WALLET_RECORDS,
|
||||
message: TEXT_SITE_MESSAGES,
|
||||
},
|
||||
profile: {
|
||||
name: 'Nama',
|
||||
tel: 'Telepon',
|
||||
registeredAt: 'Tanggal daftar',
|
||||
copyInviteLink: 'Salin tautan undangan',
|
||||
logout: 'Keluar',
|
||||
loggingOut: 'Keluar...',
|
||||
signature:
|
||||
'Tanda tanganku seunik diriku. Bagian ini nantinya akan menampilkan ringkasan profil yang sebenarnya.',
|
||||
},
|
||||
message: {
|
||||
title: TEXT_SITE_MESSAGES,
|
||||
back: 'Kembali',
|
||||
loading: 'Memuat pesan...',
|
||||
loadFailed: 'Gagal memuat pesan. Silakan coba lagi nanti.',
|
||||
empty: 'Belum ada pesan',
|
||||
read: 'Sudah dibaca',
|
||||
unread: 'Belum dibaca',
|
||||
eventBonus:
|
||||
'[Event Bonus Isi Ulang] Dari 1 Oktober hingga 7 Oktober 2026, klaim hadiah rebate kamu...',
|
||||
check: TEXT_VIEW,
|
||||
deleteRecords: 'Hapus riwayat',
|
||||
},
|
||||
financeRecords: {
|
||||
deposit: 'Riwayat Isi Ulang',
|
||||
withdraw: 'Riwayat Penarikan',
|
||||
orderNo: 'No. Pesanan',
|
||||
amount: 'Jumlah',
|
||||
bonusAmount: 'Jumlah Bonus',
|
||||
loading: 'Memuat riwayat...',
|
||||
loadFailed: 'Gagal memuat riwayat. Silakan coba lagi nanti.',
|
||||
empty: 'Belum ada riwayat',
|
||||
page: TEXT_PAGE_INDICATOR,
|
||||
previous: TEXT_PREV_PAGE,
|
||||
next: TEXT_NEXT_PAGE,
|
||||
},
|
||||
walletRecords: {
|
||||
amount: 'Jumlah',
|
||||
balanceAfter: 'Sesudah',
|
||||
balanceBefore: 'Sebelum',
|
||||
empty: 'Belum ada riwayat dompet',
|
||||
loadFailed: 'Gagal memuat riwayat dompet. Silakan coba lagi nanti.',
|
||||
loading: 'Memuat riwayat dompet...',
|
||||
next: TEXT_NEXT_PAGE,
|
||||
page: TEXT_PAGE_INDICATOR,
|
||||
previous: TEXT_PREV_PAGE,
|
||||
remark: 'Catatan',
|
||||
time: TEXT_TIME,
|
||||
type: TEXT_WALLET_RECORDS,
|
||||
},
|
||||
},
|
||||
withdrawTopup: {
|
||||
applyWithdraw: 'Ajukan Penarikan',
|
||||
applyTopup: 'Ajukan Isi Ulang',
|
||||
},
|
||||
},
|
||||
autoSpin: {
|
||||
eyebrow: 'Auto spin',
|
||||
title: 'Auto spin berjalan',
|
||||
description:
|
||||
'Mode auto akan menutupi board sambil mempertahankan fokus sel target dan progres.',
|
||||
runningRounds: 'Auto spin berjalan, {{count}} ronde selesai',
|
||||
trailingLabel: 'Input manual terkunci',
|
||||
},
|
||||
footer: {
|
||||
implementationTitle: 'Implementasi saat ini',
|
||||
implementationSubtitle:
|
||||
'Iterasi ini memprioritaskan shell dual-device, model bersama, dan wiring bisnis.',
|
||||
implementationBody:
|
||||
'Langkah berikutnya adalah API nyata, WebSocket, UI store penuh, dan state machine siklus ronde.',
|
||||
limitsTitle: 'Batas meja',
|
||||
limitsSubtitle: 'Berasal dari data lobby saat ini',
|
||||
minBet: 'Bet minimum',
|
||||
maxBet: 'Bet maksimum',
|
||||
},
|
||||
},
|
||||
commonUi: {
|
||||
dialog: {
|
||||
close: 'Tutup notifikasi',
|
||||
confirm: 'OK',
|
||||
no: TEXT_NO,
|
||||
yes: TEXT_YES,
|
||||
},
|
||||
modal: {
|
||||
close: 'Tutup modal',
|
||||
defaultAriaLabel: 'Modal',
|
||||
},
|
||||
toast: {
|
||||
lobbyInitFailed: 'Gagal memuat lobby game',
|
||||
loginRequired: 'Silakan masuk sebelum memasuki game',
|
||||
loginSuccess: 'Berhasil masuk',
|
||||
logoutSuccess: 'Berhasil keluar',
|
||||
logoutLocalOnly: 'Permintaan keluar gagal. Sesi lokal telah dibersihkan.',
|
||||
registerSuccess: 'Pendaftaran berhasil',
|
||||
inviteLinkCopied: 'Tautan undangan disalin',
|
||||
inviteLinkCopyFailed:
|
||||
'Gagal menyalin tautan undangan. Silakan salin secara manual.',
|
||||
insufficientBalance: 'Saldo tidak cukup. Silakan sesuaikan taruhan.',
|
||||
betLimitExceeded: TEXT_BET_LIMIT_EXCEEDED,
|
||||
betUnavailable: 'Taruhan tidak tersedia untuk ronde ini',
|
||||
betPlaced: 'Taruhan berhasil dikirim',
|
||||
noRecentSuccessfulBet:
|
||||
'Tidak ada riwayat taruhan berhasil dari ronde sebelumnya',
|
||||
repeatSelectionsRestored:
|
||||
'Pilihan dari ronde berhasil terakhir telah dipulihkan',
|
||||
betRejected: 'Taruhan tidak diterima',
|
||||
betPlaceFailed: 'Gagal mengirim taruhan. Silakan coba lagi.',
|
||||
selectNumbersBeforeAutoHosting: 'Pilih angka terlebih dahulu',
|
||||
autoHostingStarted: 'Auto spin dimulai',
|
||||
autoHostingStopped: 'Auto spin berhenti',
|
||||
autoHostingStoppedBalance:
|
||||
'Kondisi saldo tercapai. Auto spin telah berhenti.',
|
||||
autoHostingStoppedBetLimit:
|
||||
'Melebihi batas taruhan tunggal. Auto spin telah berhenti.',
|
||||
autoHostingStoppedWin:
|
||||
'Kondisi kemenangan tunggal tercapai. Auto spin telah berhenti.',
|
||||
autoHostingStoppedJackpot: 'Jackpot tercapai. Auto spin telah berhenti.',
|
||||
autoHostingSubmitFailed:
|
||||
'Taruhan auto spin gagal. Auto spin telah berhenti.',
|
||||
},
|
||||
},
|
||||
auth: {
|
||||
common: {
|
||||
arrowIconAlt: 'Panah',
|
||||
actions: {
|
||||
submitting: TEXT_SUBMITTING,
|
||||
},
|
||||
passwordVisibility: {
|
||||
hide: 'Sembunyikan kata sandi',
|
||||
show: 'Tampilkan kata sandi',
|
||||
},
|
||||
},
|
||||
login: {
|
||||
actions: {
|
||||
submit: TEXT_LOGIN,
|
||||
},
|
||||
fields: {
|
||||
username: {
|
||||
label: TEXT_MOBILE_LABEL,
|
||||
placeholder: TEXT_MOBILE_PLACEHOLDER,
|
||||
},
|
||||
password: {
|
||||
label: TEXT_PASSWORD_LABEL,
|
||||
placeholder: TEXT_PASSWORD_PLACEHOLDER,
|
||||
},
|
||||
},
|
||||
footer: {
|
||||
registerAccount: 'Daftar akun',
|
||||
forgotPassword: 'Lupa kata sandi',
|
||||
},
|
||||
errors: {
|
||||
submitFailed: 'Login gagal. Silakan coba lagi nanti.',
|
||||
invalidCredentials: 'Akun atau kata sandi salah.',
|
||||
},
|
||||
},
|
||||
register: {
|
||||
actions: {
|
||||
submit: TEXT_REGISTER,
|
||||
},
|
||||
fields: {
|
||||
mobile: {
|
||||
label: TEXT_MOBILE_LABEL,
|
||||
placeholder: TEXT_MOBILE_PLACEHOLDER,
|
||||
},
|
||||
captcha: {
|
||||
label: 'Kode:',
|
||||
placeholder: 'Masukkan kode verifikasi',
|
||||
},
|
||||
password: {
|
||||
label: TEXT_PASSWORD_LABEL,
|
||||
placeholder: TEXT_PASSWORD_PLACEHOLDER,
|
||||
},
|
||||
confirmPassword: {
|
||||
label: 'Konfirmasi Kata Sandi:',
|
||||
placeholder: 'Masukkan ulang kata sandi',
|
||||
},
|
||||
inviteCode: {
|
||||
label: 'Kode Undangan:',
|
||||
placeholder: 'Masukkan kode undangan',
|
||||
},
|
||||
},
|
||||
footer: {
|
||||
alreadyHaveAccount: 'Sudah punya akun',
|
||||
needHelp: 'Butuh bantuan',
|
||||
},
|
||||
errors: {
|
||||
submitFailed: 'Pendaftaran gagal. Silakan coba lagi nanti.',
|
||||
unauthorized: 'Pendaftaran tidak diizinkan. Silakan coba lagi nanti.',
|
||||
},
|
||||
sms: {
|
||||
countdown: '{{seconds}}d',
|
||||
errors: {
|
||||
submitFailed: 'Gagal mengirim kode. Silakan coba lagi nanti.',
|
||||
},
|
||||
send: 'Ambil kode',
|
||||
sending: TEXT_SUBMITTING,
|
||||
success: 'Kode verifikasi telah dikirim.',
|
||||
},
|
||||
},
|
||||
validation: {
|
||||
captcha: {
|
||||
required: 'Silakan masukkan kode verifikasi.',
|
||||
},
|
||||
username: {
|
||||
required: 'Silakan masukkan nomor ponsel.',
|
||||
invalidPhone: 'Silakan masukkan nomor ponsel yang valid.',
|
||||
},
|
||||
password: {
|
||||
min: 'Kata sandi minimal 6 karakter.',
|
||||
max: 'Kata sandi maksimal 32 karakter.',
|
||||
},
|
||||
inviteCode: {
|
||||
required: 'Silakan masukkan kode undangan.',
|
||||
max: 'Kode undangan maksimal 32 karakter.',
|
||||
},
|
||||
confirmPassword: {
|
||||
mismatch: 'Kedua kata sandi tidak sama.',
|
||||
},
|
||||
},
|
||||
errors: {
|
||||
requestFailed: 'Permintaan gagal. Silakan coba lagi nanti.',
|
||||
authTokenConfigMissing:
|
||||
'Konfigurasi autentikasi tidak ada. Silakan hubungi dukungan.',
|
||||
timeout: 'Permintaan habis waktu. Silakan coba lagi nanti.',
|
||||
serviceUnavailable:
|
||||
'Layanan sedang tidak tersedia. Silakan coba lagi nanti.',
|
||||
},
|
||||
},
|
||||
gameDesktop: {
|
||||
header: {
|
||||
systemTime: 'Waktu Sistem',
|
||||
rules: 'Aturan',
|
||||
message: TEXT_SITE_MESSAGES,
|
||||
bgm: 'BGM',
|
||||
id: 'ID',
|
||||
fullscreen: 'Layar',
|
||||
login: TEXT_LOGIN,
|
||||
register: TEXT_REGISTER,
|
||||
},
|
||||
control: {
|
||||
trend: 'Tren',
|
||||
map: 'Peta',
|
||||
selected: 'Dipilih',
|
||||
totalBet: 'Total Bet',
|
||||
confirm: TEXT_CONFIRM,
|
||||
selectNumbers: 'Pilih Nombor',
|
||||
insufficientBalance: 'Saldo Tidak Cukup',
|
||||
betLimitExceeded: 'Batas Terlampaui',
|
||||
submitting: TEXT_SUBMITTING,
|
||||
actions: {
|
||||
clear: 'Hapus',
|
||||
repeat: 'Ulang',
|
||||
'auto-spin': TEXT_AUTO_HOSTING,
|
||||
},
|
||||
},
|
||||
status: {
|
||||
odds: 'Odds',
|
||||
streak: 'Streak',
|
||||
limit: 'Batas',
|
||||
roundId: 'Ronde',
|
||||
phase: {
|
||||
betting: {
|
||||
label: 'Buka',
|
||||
description: '(Menerima Bet)',
|
||||
},
|
||||
locked: {
|
||||
label: TEXT_LOCKED,
|
||||
description: '(Bet Ditutup)',
|
||||
},
|
||||
revealing: {
|
||||
label: 'Drawing',
|
||||
description: '(Mengungkap Hasil)',
|
||||
},
|
||||
settled: {
|
||||
label: 'Drawing',
|
||||
description: '(Ronde Selesai)',
|
||||
},
|
||||
waiting: {
|
||||
label: 'Menunggu',
|
||||
description: '(Menunggu Ronde Berikutnya)',
|
||||
},
|
||||
},
|
||||
},
|
||||
title: {
|
||||
announcement: 'Pengumuman',
|
||||
},
|
||||
animal: {
|
||||
insufficientBalanceRecharge: 'Saldo tidak cukup, silakan isi ulang',
|
||||
betLimitExceeded: TEXT_BET_LIMIT_EXCEEDED,
|
||||
loading: 'Memuat',
|
||||
selectionLimitReached: 'Melebihi pilihan yang diizinkan',
|
||||
tapToEnter: 'Ketuk Untuk Masuk',
|
||||
getStart: 'Mulai',
|
||||
noBet: 'Belum Bertaruh',
|
||||
},
|
||||
history: {
|
||||
title: 'Riwayat',
|
||||
pending: 'PENDING',
|
||||
win: 'WIN',
|
||||
lost: 'LOST',
|
||||
orderNo: 'No. Order',
|
||||
roundId: 'ID Ronde',
|
||||
numbers: 'Nomor Taruhan',
|
||||
createdAt: TEXT_TIME,
|
||||
settledAt: 'Waktu Selesai',
|
||||
totalPoolAmount: 'Jumlah Taruhan',
|
||||
winningResult: 'Hasil Menang',
|
||||
payout: 'Jumlah Menang',
|
||||
empty: 'Belum ada riwayat',
|
||||
end: 'Tidak ada catatan lagi',
|
||||
loading: TEXT_LOADING,
|
||||
settled: TEXT_SETTLED,
|
||||
},
|
||||
periodHistory: {
|
||||
title: 'Riwayat Hasil Undian',
|
||||
close: 'Tutup riwayat hasil undian',
|
||||
empty: 'Belum ada hasil undian',
|
||||
failed: 'Gagal memuat hasil undian',
|
||||
loading: TEXT_LOADING,
|
||||
retry: 'Coba lagi',
|
||||
},
|
||||
topup: {
|
||||
title: 'Konfigurasi Isi Ulang',
|
||||
platformCoinLabel: 'Koin Platform',
|
||||
currencyLabel: TEXT_CURRENCY_TYPE,
|
||||
channelLabel: TEXT_PAYMENT_CHANNEL,
|
||||
rateHint:
|
||||
'Kurs hanya sebagai referensi. Jumlah akhir mengikuti kurs saat isi ulang.',
|
||||
tier: {
|
||||
bonus: 'Bonus',
|
||||
coins: 'Koin Masuk',
|
||||
createSuccess: 'Order isi ulang berhasil dibuat',
|
||||
empty: 'Belum ada tier isi ulang',
|
||||
failed: 'Gagal memuat tier isi ulang',
|
||||
loading: 'Memuat tier isi ulang...',
|
||||
missingPayUrl:
|
||||
'Tautan pembayaran tidak tersedia. Silakan coba lagi nanti.',
|
||||
openPayUrlFailed:
|
||||
'Gagal membuka halaman pembayaran. Periksa pengaturan popup browser Anda.',
|
||||
source: 'Endpoint tier isi ulang',
|
||||
title: 'Tier Isi Ulang',
|
||||
},
|
||||
preview: {
|
||||
title: 'Pratinjau Isi Ulang',
|
||||
depositTitle: 'Pilih mata uang isi ulang dan saluran pembayaran',
|
||||
depositRate: 'Rasio Isi Ulang ({{currency}})',
|
||||
depositRateValue: '1 {{currency}} = {{coins}} {{platformCoinLabel}}',
|
||||
amount: 'Contoh Kredit',
|
||||
},
|
||||
},
|
||||
mobile: {
|
||||
placeholder: 'Halaman mobile sedang dibangun',
|
||||
},
|
||||
withdraw: {
|
||||
availableBalance: 'Saldo tersedia: {{amount}}',
|
||||
currencySelection: 'Pilihan jenis mata uang',
|
||||
selectCurrency: 'Pilih jenis mata uang',
|
||||
referenceRateNotice:
|
||||
'Kurs hanya sebagai referensi. Jumlah akhir mengikuti kurs saat penarikan.',
|
||||
eWallet: 'Dompet elektronik',
|
||||
bank: 'Bank',
|
||||
minimumAmount: 'Minimum {{currency}} {{amount}}',
|
||||
processingTime: 'Waktu proses',
|
||||
arrivalTimeValue: 'Masuk dalam 30 detik',
|
||||
notice: 'Perhatian',
|
||||
feeNotice:
|
||||
'Transaksi antara RM10 dan RM99.99 akan dikenakan biaya penarikan minimum RM 1.',
|
||||
cancel: 'Batal',
|
||||
confirm: TEXT_CONFIRM,
|
||||
submitSuccess: 'Permintaan penarikan berhasil dikirim',
|
||||
withdrawal: 'Penarikan',
|
||||
fields: {
|
||||
diamondAmount: 'Jumlah Berlian Penarikan',
|
||||
currencyType: TEXT_CURRENCY_TYPE,
|
||||
paymentChannel: TEXT_PAYMENT_CHANNEL,
|
||||
bankCode: 'Kode Bank',
|
||||
cardHolderName: 'Nama Pemilik Rekening',
|
||||
bankAccountNumber: 'Nomor Rekening Bank',
|
||||
receiverEmail: 'Email Penerima',
|
||||
receiverPhone: 'Telepon Penerima',
|
||||
},
|
||||
placeholders: {
|
||||
bankCode: 'Pilih kode bank',
|
||||
cardHolderName: 'Masukkan nama pemilik rekening',
|
||||
bankAccountNumber: 'Masukkan nomor rekening bank',
|
||||
receiverEmail: 'Masukkan email penerima',
|
||||
receiverPhone: 'Masukkan nomor telepon penerima',
|
||||
},
|
||||
errors: {
|
||||
amountRequired: 'Silakan masukkan jumlah diamond penarikan.',
|
||||
amountBelowMinimum:
|
||||
'Jumlah penarikan tidak boleh lebih kecil dari minimum ({{currency}} {{amount}} / {{diamonds}} diamond).',
|
||||
bankCodeRequired: 'Silakan pilih kode bank.',
|
||||
bankCodeUnavailable: 'Saat ini tidak ada kode bank yang tersedia.',
|
||||
cardHolderNameRequired: 'Silakan masukkan nama pemilik rekening.',
|
||||
bankAccountRequired: 'Silakan masukkan nomor rekening bank.',
|
||||
paymentChannelRequired: 'Silakan pilih saluran pembayaran.',
|
||||
paymentChannelUnavailable:
|
||||
'Saat ini tidak ada saluran pembayaran yang tersedia.',
|
||||
receiverEmailInvalid: 'Silakan masukkan alamat email yang valid.',
|
||||
receiverPhoneInvalid: 'Silakan masukkan nomor telepon yang valid.',
|
||||
amountExceedsBalance:
|
||||
'Jumlah penarikan tidak boleh melebihi saldo saat ini.',
|
||||
},
|
||||
success: {
|
||||
orderNo: 'No. pesanan: {{orderNo}}',
|
||||
actualArrivalCoin: 'Diamond masuk aktual: {{amount}}',
|
||||
feeCoin: 'Diamond biaya: {{amount}}',
|
||||
reviewRequired: 'Perlu tinjauan risiko: {{value}}',
|
||||
},
|
||||
preview: {
|
||||
title: 'Pratinjau Penukaran',
|
||||
diamondAmount: 'Jumlah Berlian',
|
||||
exchangeRate: 'Rasio Penukaran ({{currency}})',
|
||||
exchangeRateValue: '{{coins}} {{platformCoinLabel}} = 1 {{currency}}',
|
||||
convertible: 'Bisa Ditukar {{currency}}',
|
||||
fixedExchangeDiamondAmount: 'Jumlah Berlian Tukar Tetap',
|
||||
},
|
||||
},
|
||||
},
|
||||
} as const
|
||||
Reference in New Issue
Block a user