Files
pluriwave/lib/l10n/gen/app_localizations_id.dart
T
FreeTLab bd2b7d8e02 refactor(ajustes): split Settings AUDIO/EMISORAS into pushed detail screens
Moves the AUDIO group (Ecualizador, Salida de audio, Temporizador de
sueno) and the EMISORAS group (Grupos de favoritos, Emisora preferida,
Emisoras personalizadas, Orden de listas) out of pantalla_ajustes.dart
into 7 new lib/pantallas/ajustes/*.dart screens, each wrapped in
PluriPushScaffold. The root now reaches them through FilaAjuste rows
under two new GrupoAjustes cards (lib/pantallas/ajustes/widgets/
fila_ajuste.dart), per design ADR-3.

Verbatim-move rule applied throughout: only each section's panel header
(icon + title, sometimes a status chip) was removed, since the pushed
screen's own 56px header now carries the title. Two sections whose
header row carried a real action (Temporizador de sueno's "Add",
Grupos de favoritos' "Add list", Emisoras personalizadas' "Add") kept
that action in the body instead of dropping it.

size:exception (move-only diff, pre-recorded at design/tasks time):
34 files, ~4250 changed lines excluding the 13 auto-regenerated l10n
files (~90 more lines there) - higher than the 800-1000 estimate
because that estimate covered the 7 production screens but not the
matching 7 new test files (task 3a.2), one of which relocates ~10
pre-existing device-management test cases verbatim. Business logic is
untouched; app.dart's import of pantalla_ajustes.dart is unchanged.

Correction to tasks.md 3a.1/3a.8: those two lines describe the combined
WU3a+WU3b end state ("4 grouped nav lists", "<400 lines"), matching
design ADR-3's own aggregate blast-radius note - not a WU3a-only claim.
This commit converts only the 2 groups that are WU3a's job; the root
is 788 lines with 5 sections (Grabaciones, Musica local, Idioma,
Backup, Info) still inline, reachable, and unchanged, pending WU3b.

Two new ARB keys (settingsGroupAudioTitle, settingsGroupStationsTitle),
en/es only per the WU1 precedent - all 7 detail-screen titles reuse
existing keys. Discovered and worked around, without touching app
code: Directory.systemTemp hangs real dart:io writes in this sandbox,
and pumpAndSettle() cannot settle while a screen shows an indeterminate
CircularProgressIndicator - both are test-only concerns, documented
inline where hit.

Tests: 560 -> 579 (32 in this commit's scope, net +19 after retiring
13 relocated cases from the old combined pantalla_ajustes_test.dart).
flutter analyze: unchanged at 1 pre-existing info. git diff is empty
for navegacion_auto.dart, servicio_ecualizador.dart and
servicio_audio.dart; pantalla_alarma_sonando_dismiss_guard_test.dart
untouched.
2026-07-28 21:38:20 +02:00

1375 lines
31 KiB
Dart

// ignore: unused_import
import 'package:intl/intl.dart' as intl;
import 'app_localizations.dart';
// ignore_for_file: type=lint
/// The translations for Indonesian (`id`).
class AppLocalizationsId extends AppLocalizations {
AppLocalizationsId([String locale = 'id']) : super(locale);
@override
String get appTitle => 'PluriWave';
@override
String get navHome => 'Beranda';
@override
String get navSearch => 'Cari';
@override
String get navFavorites => 'Favorit';
@override
String get navAlarms => 'Alarm';
@override
String get navSettings => 'Pengaturan';
@override
String get actionOk => 'Oke';
@override
String get sleepTimer => 'Timer tidur';
@override
String get sleepTimerDescription =>
'Mematikan radio secara lembut dengan hitung mundur yang tepat.';
@override
String get cancelTimer => 'Batalkan timer';
@override
String get optionOther => 'Lainnya';
@override
String get customDurationTitle => 'Durasi khusus';
@override
String get durationGreaterThanZero =>
'Pilih durasi yang lebih besar dari nol.';
@override
String get hoursLabel => 'Jam';
@override
String get minutesLabel => 'Menit';
@override
String get secondsLabel => 'Detik';
@override
String durationHoursMinutesSeconds(
Object hours,
Object minutes,
Object seconds,
) {
return '$hours jam $minutes mnt $seconds dtk';
}
@override
String durationMinutesSeconds(Object minutes, Object seconds) {
return '$minutes mnt $seconds dtk';
}
@override
String durationMinutesOnly(Object minutes) {
return '$minutes mnt';
}
@override
String durationSecondsOnly(Object seconds) {
return '$seconds dtk';
}
@override
String get saveQuickAccess => 'Simpan sebagai akses cepat';
@override
String get startTimer => 'Mulai timer';
@override
String skipCurrentAlarmExecution(Object alarmName) {
return 'Eksekusi $alarmName kali ini dilewati.';
}
@override
String get settingsTitle => 'Pengaturan';
@override
String get settingsSubtitle =>
'Kontrol halus untuk suara, cadangan, dan stasiun khusus.';
@override
String get settingsGroupAudioTitle => 'AUDIO';
@override
String get settingsGroupStationsTitle => 'EMISORAS';
@override
String get languageSectionTitle => 'Bahasa';
@override
String get languageSectionDescription =>
'Pilih bagaimana bahasa aplikasi ditampilkan.';
@override
String get languageSystemDefault => 'Sistem';
@override
String get languageSpanish => 'Spanyol';
@override
String get languageEnglish => 'Inggris';
@override
String languageUpdated(Object languageName) {
return 'Bahasa diperbarui: $languageName';
}
@override
String get languageUpdatedSystem => 'Bahasa diperbarui: Sistem';
@override
String get timerSectionTitle => 'Timer tidur';
@override
String get timerSectionAdd => 'Tambah';
@override
String get timerSectionDescription =>
'Sesuaikan pintasan cepat yang muncul saat radio dimatikan otomatis.';
@override
String get timerSectionRestoreRecommended => 'Pulihkan waktu yang disarankan';
@override
String get newQuickAccessTitle => 'Akses cepat baru';
@override
String get saveQuickAccessButton => 'Simpan akses cepat';
@override
String get settingsSafeStatus => 'Aman';
@override
String get recordingsSectionTitle => 'Rekaman';
@override
String get recordingsFolderDialogTitle => 'Pilih folder rekaman';
@override
String get recordingsPathUpdated => 'Jalur rekaman diperbarui';
@override
String recordingsPathSaveError(Object error) {
return 'Tidak dapat menyimpan jalur: $error';
}
@override
String get recordingsDefaultFolderRestored =>
'Folder internal bawaan akan digunakan';
@override
String get recordingsFolderTitle => 'Folder rekaman';
@override
String get recordingsPathCalculating => 'Menghitung jalur...';
@override
String get recordingsChangePath => 'Ubah jalur';
@override
String get recordingsUseDefaultPath => 'Gunakan jalur bawaan';
@override
String get recordingsOriginalStreamHint =>
'Radio disimpan dari stream asli, tanpa kompresi ulang.';
@override
String get equalizerActive => 'Aktif';
@override
String get equalizerDisabled => 'Nonaktif';
@override
String get equalizerEnable => 'Aktifkan equalizer';
@override
String get equalizerRealtimeSubtitle =>
'Perubahan diterapkan secara langsung ke stasiun saat ini.';
@override
String get equalizerPendingSubtitle =>
'Perubahan disimpan dan akan diterapkan saat Android mengaktifkan efek.';
@override
String get equalizerPerStationTitle => 'Gunakan EQ khusus untuk favorit ini';
@override
String equalizerPerStationActive(Object stationName) {
return 'Aktif untuk $stationName';
}
@override
String equalizerPerStationMain(Object stationName) {
return 'Menggunakan EQ utama untuk $stationName';
}
@override
String get preferredStationTitle => 'Stasiun pilihan';
@override
String get preferredStationDescription =>
'Dipilih lebih dulu saat membuat alarm dan dapat dimulai sebagai pemutaran cepat.';
@override
String get preferredStationNoStationsTitle =>
'Belum ada stasiun yang tersedia';
@override
String get preferredStationNoStationsSubtitle =>
'Simpan favorit atau muat stasiun untuk memilih stasiun pilihan.';
@override
String get preferredStationAutomaticFallback => 'Cadangan otomatis';
@override
String get preferredStationDefaultFavorite => 'Favorit bawaan';
@override
String preferredStationCurrent(Object stationName) {
return 'Pilihan saat ini: $stationName';
}
@override
String preferredStationAutoUsing(Object stationName) {
return 'Tidak ada favorit: otomatis menggunakan $stationName';
}
@override
String get preferredStationPlay => 'Putar pilihan';
@override
String get customStationsTitle => 'Stasiun khusus';
@override
String get customStationsAdd => 'Tambah';
@override
String get customStationsEmpty => 'Tidak ada stasiun khusus.';
@override
String get playAction => 'Putar';
@override
String get deleteAction => 'Hapus';
@override
String get addStationTitle => 'Tambah stasiun';
@override
String get stationNameLabel => 'Nama *';
@override
String get unnamedStation => 'Stasiun tanpa nama';
@override
String get requiredField => 'Kolom wajib';
@override
String get streamUrlLabel => 'URL stream *';
@override
String get invalidUrl => 'URL tidak valid';
@override
String get countryOptionalLabel => 'Negara (opsional)';
@override
String get saveStation => 'Simpan stasiun';
@override
String get backupSectionTitle => 'Cadangan';
@override
String get backupExportTitle => 'Ekspor pengaturan';
@override
String get backupExportSubtitle => 'Favorit, stasiun khusus, dan preset EQ';
@override
String get backupImportTitle => 'Impor pengaturan';
@override
String get backupImportSubtitle => 'Pulihkan dari berkas cadangan';
@override
String get backupShareSubject => 'PluriWave — cadangan';
@override
String backupShareText(Object date) {
return 'Pengaturan PluriWave diekspor pada $date';
}
@override
String backupExportError(Object error) {
return 'Kesalahan saat mengekspor: $error';
}
@override
String get backupImportConfirmMessage =>
'Ini akan menambahkan favorit, stasiun, dan preset dari berkas. Lanjutkan?';
@override
String get backupImportSuccess => 'Pengaturan berhasil diimpor';
@override
String backupImportError(Object error) {
return 'Kesalahan saat mengimpor: $error';
}
@override
String get appVersionLoading => 'Memuat versi...';
@override
String appVersionSubtitle(Object version) {
return '$version - Radio dunia';
}
@override
String get savedFavoritesTitle => 'Favorit tersimpan';
@override
String get stationFilterTitle => 'Filter stasiun';
@override
String get stationFilterSubtitle => 'Hanya stasiun yang terverifikasi aktif';
@override
String get backgroundAudioTitle => 'Audio latar belakang';
@override
String get backgroundAudioSubtitle => 'Tetap berjalan saat layar dimatikan';
@override
String get dash => '—';
@override
String get cancelAction => 'Batal';
@override
String get equalizerTitle => 'Equalizer';
@override
String get recordingsOpenFolder => 'Buka folder';
@override
String recordingsOpenFolderError(Object error) {
return 'Tidak dapat membuka folder: $error';
}
@override
String get recordingsMaxSizeTitle => 'Ukuran rekaman maksimum';
@override
String recordingsMaxSizeSubtitle(int size) {
return 'Batas saat ini: $size MB';
}
@override
String get recordingsMaxSizeDialogTitle => 'Ukuran maksimum per rekaman';
@override
String get recordingsMaxSizeMbLabel => 'Megabyte maksimum';
@override
String recordingsMaxSizeSaved(int size) {
return 'Batas rekaman diperbarui menjadi $size MB';
}
@override
String get stationOrderTitle => 'Urutan stasiun';
@override
String get stationOrderByName => 'Berdasarkan nama';
@override
String get stationOrderByQuality => 'Berdasarkan kualitas';
@override
String get stationOrderScopeDescription =>
'Berlaku untuk favorit, pencarian, stasiun terdekat, dan daftar cepat.';
@override
String get favoriteGroupsTitle => 'Daftar favorit';
@override
String get favoriteGroupsDescription =>
'Buat daftar pendek untuk mengatur stasiun tersimpan.';
@override
String get favoriteGroupsAdd => 'Tambah daftar';
@override
String get favoriteGroupsEdit => 'Edit daftar';
@override
String get favoriteGroupsDelete => 'Hapus daftar';
@override
String get favoriteGroupsNameLabel => 'Nama daftar';
@override
String get favoriteGroupsNameTooLong => 'Maksimum 28 karakter.';
@override
String get favoriteGroupsUnassigned => 'Belum ditetapkan';
@override
String get favoriteGroupsProtectedHint =>
'Daftar bawaan: tidak dapat diedit atau dihapus.';
@override
String get favoriteGroupsCreated => 'Daftar dibuat';
@override
String get favoriteGroupsUpdated => 'Daftar diperbarui';
@override
String get favoriteGroupsDeleted =>
'Daftar dihapus; stasiunnya kembali ke Belum ditetapkan.';
@override
String get favoriteGroupsAssign => 'Pindahkan ke daftar';
@override
String favoriteGroupsAssignSubtitle(Object groupName) {
return 'Daftar saat ini: $groupName';
}
@override
String favoriteGroupsAssigned(Object stationName, Object groupName) {
return '$stationName dipindahkan ke $groupName';
}
@override
String get favoritesTitle => 'Favorit';
@override
String get favoritesEmptyTitle => 'Belum ada favorit';
@override
String get favoritesEmptySubtitle =>
'Ketuk hati di stasiun mana pun untuk menyimpannya ke koleksi Anda.';
@override
String get favoritesHeaderSubtitle =>
'Atur koleksi Anda dengan daftar dan dekatkan radio penting.';
@override
String get favoritesCollection => 'Koleksi';
@override
String favoritesSavedCount(int count) {
return '$count tersimpan';
}
@override
String get favoritesRemoveTooltip => 'Hapus dari favorit';
@override
String favoritesRemovedMessage(Object stationName) {
return '$stationName dihapus dari favorit';
}
@override
String get alarmPostponedCurrentExecution =>
'Alarm ditunda untuk eksekusi ini.';
@override
String get searchScreenTitle => 'Cari sinyal';
@override
String get searchScreenSubtitle =>
'Temukan radio berdasarkan nama, negara, atau bahasa dengan filter cepat dan kontras tinggi.';
@override
String get searchFiltersLabel => 'Filter';
@override
String get searchHint => 'Radio Horizonte, jazz, berita...';
@override
String get searchCountryFilterLabel => 'Negara';
@override
String get searchLanguageFilterLabel => 'Bahasa';
@override
String get searchMinQualityFilterLabel => 'Kualitas minimum';
@override
String get searchEmptyTitle => 'Cari stasiun';
@override
String get searchNoResultsTitle => 'Tidak ada hasil';
@override
String get searchEmptySubtitle =>
'Gunakan bilah atas atau chip untuk menemukan sinyal dari seluruh dunia.';
@override
String get searchNoResultsSubtitle =>
'Coba hapus filter atau tulis nama lain untuk menemukan sinyal aktif.';
@override
String get countrySpain => 'Spanyol';
@override
String get countryUsa => 'Amerika Serikat';
@override
String get countryMexico => 'Meksiko';
@override
String get countryArgentina => 'Argentina';
@override
String get countryUk => 'Inggris Raya';
@override
String get countryFrance => 'Prancis';
@override
String get countryGermany => 'Jerman';
@override
String get countryItaly => 'Italia';
@override
String get countryBrazil => 'Brasil';
@override
String get countryJapan => 'Jepang';
@override
String get languageNameSpanish => 'Spanyol';
@override
String get languageNameEnglish => 'Inggris';
@override
String get languageNameFrench => 'Prancis';
@override
String get languageNameGerman => 'Jerman';
@override
String get languageNamePortuguese => 'Portugis';
@override
String get languageNameItalian => 'Italia';
@override
String get languageNameJapanese => 'Jepang';
@override
String get languageNameArabic => 'Arab';
@override
String get languageNameRussian => 'Rusia';
@override
String get homeScreenSubtitle =>
'Radio global langsung dengan sinyal bersih, favorit cerdas, dan pengalaman visual bergaya kuis.';
@override
String get exploreStations => 'Jelajahi stasiun';
@override
String stationsCount(int count) {
return '$count radio';
}
@override
String get qualityHd => 'Kualitas HD';
@override
String get nearYou => 'Di dekat Anda';
@override
String nearYouInCountry(Object country) {
return 'Di dekat Anda · $country';
}
@override
String get detectAction => 'Deteksi';
@override
String get liveRadar => 'Radar langsung';
@override
String get genresTitle => 'Genre';
@override
String get retryAction => 'Coba lagi';
@override
String get noStationsAvailable => 'Tidak ada stasiun tersedia';
@override
String get noStationsAvailableSubtitle =>
'Coba segarkan atau pilih genre lain untuk menangkap sinyal kembali.';
@override
String get genrePop => 'Pop';
@override
String get genreRock => 'Rock';
@override
String get genreJazz => 'Jazz';
@override
String get genreClassical => 'Klasik';
@override
String get genreElectronic => 'Elektronik';
@override
String get genreNews => 'Berita';
@override
String get genreTalk => 'Obrolan';
@override
String get genreHipHop => 'Hip-hop';
@override
String get genreCountry => 'Country';
@override
String get genreMetal => 'Metal';
@override
String get genreReggae => 'Reggae';
@override
String get genreLatin => 'Latin';
@override
String get alarmScreenTitle => 'Bangun dengan musik';
@override
String get alarmScreenSubtitle =>
'Alarm dengan radio, suara aman, liburan cerdas, dan eksekusi berikutnya selalu terlihat.';
@override
String get createAlarmAction => 'Buat alarm';
@override
String alarmsCount(int count) {
return '$count alarm';
}
@override
String get activeAlarmsWithoutNextTitle =>
'Alarm aktif tanpa eksekusi berikutnya';
@override
String get noActiveAlarms => 'Tidak ada alarm aktif';
@override
String get nextAlarmTitle => 'Alarm berikutnya';
@override
String activeAlarmsWithoutNextSubtitle(int count) {
return 'Ada $count alarm aktif, tetapi saat ini tidak memiliki tanggal valid di masa depan. Periksa tanggal, hari, dan liburan.';
}
@override
String get createAlarmHint =>
'Buat alarm dan PluriWave akan menghitung eksekusi berikutnya secara otomatis.';
@override
String get alarmVacationPlay => 'Berbunyi saat liburan';
@override
String get alarmVacationPause => 'Jeda saat liburan';
@override
String alarmFadeInLabel(int seconds) {
return 'Fade-in ${seconds}d';
}
@override
String alarmNextExecution(Object date) {
return 'Eksekusi berikutnya: $date';
}
@override
String get alarmNoNextExecution =>
'Tidak memiliki eksekusi aktif berikutnya.';
@override
String alarmSkippedExecution(Object date) {
return 'Satu eksekusi dilewati: $date.';
}
@override
String get editAction => 'Edit';
@override
String get skipNextAction => 'Lewati berikutnya';
@override
String get deleteTooltip => 'Hapus';
@override
String get alarmSkippedNoNextSnackbar =>
'Alarm dilewati. Tidak ada eksekusi berikutnya.';
@override
String alarmSkippedReturnsSnackbar(Object date) {
return 'Alarm dilewati. Akan kembali pada $date.';
}
@override
String alarmVacationPausedNoNext(Object vacationName) {
return 'Dijeda karena liburan ($vacationName) dan tanpa eksekusi berikutnya.';
}
@override
String alarmVacationPausedReturns(Object vacationName, Object date) {
return 'Dijeda karena liburan ($vacationName) dan akan kembali pada $date.';
}
@override
String alarmVacationReturns(Object date) {
return 'Dengan liburan aktif, akan berbunyi lagi pada $date.';
}
@override
String get defaultAlarmName => 'Alarm musik';
@override
String get newAlarmTitle => 'Alarm baru';
@override
String get editAlarmTitle => 'Edit alarm';
@override
String get nameField => 'Nama';
@override
String get timeField => 'Waktu';
@override
String get dateField => 'Tanggal';
@override
String get onceOption => 'Sekali';
@override
String get dailyOption => 'Harian';
@override
String get weekdaysOption => 'Hari';
@override
String get soundAndVolumeSection => 'Suara dan volume';
@override
String get alarmFadeInTitle => 'Fade-in alarm';
@override
String get alarmFadeInOff => '0 d (tanpa transisi)';
@override
String alarmFadeInSummary(int seconds) {
return '$seconds d (dari 5% ke volume terpilih)';
}
@override
String get internalSafeSoundLabel => 'Suara internal aman';
@override
String get soundWarmSunrise => 'Matahari terbit hangat';
@override
String get soundSoftBell => 'Lonceng lembut';
@override
String get soundDigitalPulse => 'Denyut digital';
@override
String get favoriteStationLabel => 'Stasiun favorit';
@override
String get noStationUseInternalSound =>
'Tanpa stasiun: gunakan suara internal';
@override
String get alarmFallbackStationLabel => 'Stasiun cadangan';
@override
String get alarmStationPickerSearchHint => 'Cari stasiun berdasarkan nama';
@override
String get alarmSnoozeDurationTitle => 'Durasi tunda';
@override
String get snoozeAction => 'Tunda';
@override
String alarmSnoozeOptionLabel(int minutes) {
return '$minutes mnt';
}
@override
String get saveFavoritesAlarmHint =>
'Simpan stasiun ke Favorit untuk digunakan sebagai alarm musik.';
@override
String get useCurrentStationAction => 'Gunakan stasiun saat ini';
@override
String get playDuringVacations => 'Bunyi saat liburan';
@override
String get playDuringVacationsHint =>
'Jika dimatikan, eksekusi berikutnya akan melompat ke hari valid pertama.';
@override
String get saveAlarmAction => 'Simpan alarm';
@override
String get chooseOneWeekdayError =>
'Pilih setidaknya satu hari dalam seminggu.';
@override
String get androidReliabilityReview => 'Tinjau keandalan Android';
@override
String get statusOk => 'Oke';
@override
String get statusPending => 'tertunda';
@override
String androidReliabilityStatus(
Object exact,
Object notifications,
Object screen,
) {
return 'Keandalan: tepat $exact · notifikasi $notifications · layar $screen';
}
@override
String get vacationRangesTitle => 'Rentang liburan';
@override
String get addAction => 'Tambah';
@override
String get vacationRangesHint =>
'Jika sebuah alarm memiliki \"Jeda saat liburan\", rentang ini dilewati otomatis.';
@override
String get noVacationRangesLoaded => 'Tidak ada rentang dimuat.';
@override
String get deleteRangeTooltip => 'Hapus rentang';
@override
String get vacationsDefaultName => 'Liburan';
@override
String get newVacationRangeTitle => 'Rentang liburan baru';
@override
String get startField => 'Mulai';
@override
String get endField => 'Akhir';
@override
String get saveRangeAction => 'Simpan rentang';
@override
String get noAlarmsYetTitle => 'Belum ada alarm.';
@override
String get noAlarmsYetSubtitle =>
'Buat satu untuk merancang bangun tidur musikal Anda.';
@override
String get ringingInternalAudioActive =>
'Berbunyi dengan audio internal aman.';
@override
String get ringingPreparingInternalAudio => 'Menyiapkan audio internal aman.';
@override
String get stopAlarmAction => 'Hentikan alarm';
@override
String get alarmStopFailedMessage =>
'Kami tidak dapat memastikan alarm berhenti. Coba lagi.';
@override
String get alarmForceStopAction => 'Paksa berhenti';
@override
String get alarmMissedNotificationTitle => 'Alarm terlewat';
@override
String alarmMissedNotificationText(Object name) {
return '$name dibisukan secara otomatis setelah 10 menit.';
}
@override
String get pauseAction => 'Jeda';
@override
String miniPlayerOpenLabel(Object stationName) {
return 'Buka pemutar untuk $stationName';
}
@override
String get playerIconLabel => 'Pemutar';
@override
String get playbackStatusConnecting => 'Menghubungkan...';
@override
String get playbackStatusLive => 'Siaran langsung';
@override
String get playbackStatusPaused => 'Dijeda';
@override
String get playbackStatusReconnecting => 'Menyambung ulang...';
@override
String get playbackStatusConnectionError => 'Kesalahan koneksi';
@override
String get playbackStatusStopped => 'Dihentikan';
@override
String stationSemanticLabel(Object stationName) {
return 'Stasiun $stationName';
}
@override
String get favoritesAddTooltip => 'Tambahkan ke favorit';
@override
String favoritesAddedMessage(Object stationName) {
return '$stationName ditambahkan ke favorit';
}
@override
String get stationIconLabel => 'Ikon stasiun';
@override
String get liveNow => 'Sedang siaran langsung';
@override
String equalizerBandLabel(Object band) {
return 'Pita $band';
}
@override
String equalizerBandValue(Object value) {
return '$value desibel';
}
@override
String get equalizerPresetFlat => 'Datar';
@override
String get equalizerPresetRock => 'Rock';
@override
String get equalizerPresetPop => 'Pop';
@override
String get equalizerPresetBassBoost => 'Penguat bass';
@override
String get equalizerPresetJazz => 'Jazz';
@override
String get equalizerPresetVoice => 'Suara';
@override
String get equalizerPresetCustom => 'Kustom';
@override
String get onboardingTitle => 'Selamat datang di PluriWave';
@override
String get onboardingNewsTitle => 'Yang baru';
@override
String get onboardingStartAction => 'Mulai';
@override
String get onboardingCloseTooltip => 'Tutup';
@override
String radioRecordingError(Object error) {
return 'Kesalahan saat merekam radio: $error';
}
@override
String get radioApiConnectionError =>
'Tidak ada koneksi ke antarmuka pemrograman aplikasi radio';
@override
String get radioSearchError => 'Kesalahan pencarian. Periksa koneksi Anda.';
@override
String get radioLoadMoreStationsError =>
'Tidak dapat memuat lebih banyak stasiun.';
@override
String get radioNearbyStationsError =>
'Kami tidak dapat mendeteksi stasiun terdekat. Gunakan filter berdasarkan negara.';
@override
String radioCannotPlayStation(Object stationName) {
return 'Tidak dapat memutar \"$stationName\"';
}
@override
String get recordingSelectStationFirst => 'Pilih stasiun sebelum merekam.';
@override
String recordingStartError(Object error) {
return 'Tidak dapat memulai rekaman: $error';
}
@override
String get unsupportedConfigVersion => 'Versi konfigurasi tidak didukung';
@override
String get audioErrorGeneric => 'Kesalahan pemutaran';
@override
String get audioErrorNoInternet => 'Tidak ada koneksi internet';
@override
String get audioErrorInvalidUrl => 'Alamat radio tidak valid';
@override
String get audioErrorNotFound => 'Radio tidak tersedia (kesalahan 404)';
@override
String get audioErrorTimeout => 'Waktu koneksi habis';
@override
String get audioErrorCannotConnect => 'Tidak dapat terhubung ke radio';
@override
String get audioErrorUnsupportedFormat => 'Format aliran tidak didukung';
@override
String get audioErrorDecode => 'Kesalahan saat mendekode aliran audio';
@override
String get audioErrorCleartext =>
'Radio ini menggunakan HTTP tanpa enkripsi, dan itu tidak diizinkan';
@override
String get audioErrorSsl => 'Sertifikat SSL radio tidak valid';
@override
String get audioErrorCannotPlay => 'Radio ini tidak dapat diputar';
@override
String get audioErrorUnexpectedPlayback =>
'Kesalahan tak terduga saat memutar';
@override
String get androidExactAlarmScheduleError =>
'Android tidak dapat menjadwalkan alarm tepat. Periksa izin alarm tepat.';
@override
String get recordingPathEmptyError => 'Jalur rekaman tidak boleh kosong';
@override
String get recordingMaxSizeInvalidError =>
'Ukuran maksimum harus lebih besar dari nol';
@override
String get recordingAlreadyActiveError =>
'Sudah ada rekaman yang sedang berlangsung';
@override
String get alarmRingingFallbackActive =>
'Memutar dengan audio internal yang aman.';
@override
String get alarmRingingPreparingFallback =>
'Menyiapkan audio internal yang aman.';
@override
String get alarmRingingTryingStation =>
'Mencoba memutar stasiun Anda dengan kualitas tertinggi yang tersedia.';
@override
String alarmScheduleOnce(Object date) {
return 'Sekali · $date';
}
@override
String alarmScheduleWeekdays(Object days) {
return 'Hari: $days';
}
@override
String get androidReliabilityTitle => 'Tinjau keandalan Android';
@override
String get closeAction => 'Tutup';
@override
String get customOption => 'Kustom';
@override
String get endLabel => 'Selesai';
@override
String get equalizerDisable => 'Nonaktifkan equalizer';
@override
String get helpTitle => 'Bantuan dan tutorial';
@override
String get helpSubtitle => 'Tinjau fitur, tips, dan hal baru di PluriWave.';
@override
String get indefiniteOption => 'Tidak terbatas';
@override
String get invalidNumber => 'Nomor tidak valid';
@override
String get nameLabel => 'Nama';
@override
String get notPlaying => 'Tidak memutar';
@override
String get oneTimeOption => 'Sekali';
@override
String get pausePlaybackTooltip => 'Jeda pemutaran';
@override
String qualityOriginal(Object quality) {
return 'Kualitas asli: $quality';
}
@override
String get qualityUnknown => 'Kualitas tidak dilaporkan';
@override
String get recordAction => 'Rekam';
@override
String get recordDurationTitle => 'Durasi rekaman';
@override
String get recordRadioSubtitle => 'Pilih berapa lama ingin merekam.';
@override
String get recordRadioTitle => 'Rekam radio';
@override
String get recordingActiveTitle => 'Merekam radio';
@override
String get recordingDirectTitle => 'Perekaman langsung';
@override
String get recordingsOpenFolderPlainError =>
'Tidak dapat membuka folder rekaman';
@override
String get recordingsOpenLatest => 'Buka rekaman terbaru';
@override
String get recordingsOpenLatestError => 'Tidak dapat membuka rekaman terbaru';
@override
String get startLabel => 'Mulai';
@override
String get startPlaybackTooltip => 'Mulai pemutaran';
@override
String get stopAction => 'Stop';
@override
String get stopPlaybackTooltip => 'Hentikan pemutaran';
@override
String get weekdayShortMonday => 'Sen';
@override
String get weekdayShortTuesday => 'Sel';
@override
String get weekdayShortWednesday => 'Rab';
@override
String get weekdayShortThursday => 'Kam';
@override
String get weekdayShortFriday => 'Jum';
@override
String get weekdayShortSaturday => 'Sab';
@override
String get weekdayShortSunday => 'Min';
@override
String stationCount(int count) {
String _temp0 = intl.Intl.pluralLogic(
count,
locale: localeName,
other: '$count stasiun',
);
return '$_temp0';
}
@override
String get alarmIconLabel => 'Alarm musik';
@override
String get vacationIconLabel => 'Mode liburan';
@override
String get streamUrlHint => 'https://stream.example.com:8000/radio';
@override
String get advancedEqSectionTitle => 'Opsi EQ Lanjutan';
@override
String get advancedEqEnableToggle => 'Aktifkan EQ per perangkat';
@override
String get advancedEqEnableToggleSubtitle =>
'Terapkan preset EQ yang berbeda secara otomatis saat keluaran audio Anda berubah.';
@override
String get advancedEqKnownDevicesTitle => 'Perangkat audio yang dikenal';
@override
String get advancedEqKnownDevicesEmpty =>
'Belum ada perangkat audio yang tercatat. Hubungkan perangkat untuk memulai.';
@override
String advancedEqDevicePresetLabel(Object presetName) {
return 'Preset: $presetName';
}
@override
String preNoticeCountdown(int minutes) {
return 'Mulai dalam $minutes menit';
}
@override
String snoozeCountdown(int minutes) {
return 'Berbunyi dalam $minutes mnt';
}
@override
String get snoozeAgainAction => 'Tunda lagi';
@override
String get alarmRingingNotificationTitle => 'Alarm PluriWave';
@override
String get alarmFireChannelName => 'Alarm berbunyi';
@override
String get alarmFireChannelDescription =>
'Suara dan layar mendesak saat alarm musik harus berbunyi';
@override
String get alarmPreNoticeChannelName => 'Pengingat alarm';
@override
String get alarmPreNoticeChannelDescription =>
'Notifikasi senyap sebelum alarm';
@override
String get openFolderChooserTitle => 'Buka folder';
@override
String get openRecordingChooserTitle => 'Buka rekaman';
@override
String get eqDeviceEditTitle => 'Edit perangkat';
@override
String get eqDeviceNameLabel => 'Nama perangkat';
@override
String get eqDeviceNameHint => 'Mis: Speaker ruang tamu';
@override
String get eqDeviceNameConfirm => 'Simpan';
@override
String get eqDeviceConnected => 'Terhubung';
@override
String get eqDeviceActiveOutput => 'Audio keluar melalui perangkat ini';
@override
String get eqDeviceRemove => 'Hapus perangkat';
@override
String eqDeviceRemoved(Object device) {
return '$device dihapus';
}
@override
String get localMusicSectionTitle => 'Musik lokal (Android Auto)';
@override
String get localMusicSectionDescription =>
'Pilih folder di perangkat ini untuk menjelajahi dan memutar file audio di dalamnya dari mobil.';
@override
String get localMusicFolderNotConfigured => 'Belum ada folder dipilih';
@override
String get localMusicFolderTitle => 'Folder musik lokal';
@override
String get localMusicChoosePath => 'Pilih folder';
@override
String get localMusicChangePath => 'Ubah folder';
@override
String get localMusicFolderUpdated => 'Folder musik lokal diperbarui';
@override
String localMusicFolderSaveError(Object error) {
return 'Tidak dapat menyimpan folder: $error';
}
@override
String get localMusicFolderGenericName => 'Folder terpilih';
}