SkateSpots/src/i18n/id/batch5.ts

1604 lines
76 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/**
* Bahasa Indonesia — batch 5: direktori layanan The Lab (labUi) + sosial
* (socialUi): chat crew, DM, kolektif, koordinator, dan vouch.
*
* Nama protokol & merek (The Lab, Coach, Filmer, Photographer, Editor, Builder,
* Crew, Spot, Stash, Nostr, Lightning, Zap, sats, DM, NWC, NIP-05) tetap
* Inggris; nama trick tetap Inggris. Placeholder ({{...}}) dipertahankan.
*/
const idBatch5 = {
labUi: {
activeCount: '{{count}} aktif',
addMusicProfile: 'Tambah Profil Musik',
all: 'Semua',
clearAll: 'Hapus semua',
collective: 'Kolektif',
filters: 'Filter',
following: 'Mengikuti',
getRiderCard: 'Dapatkan Kartu Rider',
judgeEvents: 'Juri Event',
justASkater: 'Hanya',
labForServices: 'The Lab untuk layanan. Jelajahi & ikuti seluruh komunitas skater',
loginToOffer: 'Masuk untuk menawarkan layanan',
newest: 'Terbaru',
noResults: 'Tidak ada hasil',
offer: 'Tawarkan',
offerBuilding: 'Tawarkan Pembuatan',
offerCoaching: 'Tawarkan Pelatihan',
offerCuts: 'Tawarkan Potong Rambut',
offerDesignArt: 'Tawarkan Desain / Seni',
offerEditing: 'Tawarkan Editing Video',
offerFilming: 'Tawarkan Filming',
offerGraffiti: 'Tawarkan Graffiti',
offerPhotography: 'Tawarkan Fotografi',
offerServices: 'Tawarkan Layanan',
yourProfiles: 'Profil Lab kamu',
preview: {
button: 'Pratinjau',
title: 'Pratinjau langsung',
desc: 'Beginilah tampilan profil {{noun}} kamu setelah dipublikasikan.',
untitled: 'Namamu',
noBio: 'Belum ada bio — tambahkan satu baris tentang apa yang kamu tawarkan.',
years: '{{count}} tahun pengalaman',
portfolio: 'Portofolio',
note: 'Hanya pratinjau — belum ada yang dipublikasikan.',
},
draft: {
title: 'Kamu punya draf yang belum disimpan',
body: 'Lanjutkan dari tempat kamu berhenti — tidak ada yang dipublikasikan sampai kamu menekan Publikasikan.',
resume: 'Lanjutkan draf',
discard: 'Buang draf',
},
progress: {
title: 'Kelengkapan profil',
count: '{{done}} dari {{total}} selesai',
photo: 'Foto',
bio: 'Bio',
skills: 'Keterampilan',
rate: 'Tarif',
location: 'Lokasi',
contact: 'Kontak',
},
wizard: {
identity: 'Identitas',
offer: 'Apa yang kamu tawarkan',
rates: 'Tarif',
contact: 'Kontak',
media: 'Media',
},
offerTattoo: 'Tawarkan Tato',
offerTraining: 'Tawarkan Latihan / Fisioterapi',
organizeEvents: 'Selenggarakan Event',
resultsMany: '{{count}} hasil',
resultsOne: '{{count}} hasil',
searchCityPlaceholder: 'Kota…',
searchNamePlaceholder: 'Nama, bio…',
showResults: 'Tampilkan Hasil',
showResultsActive: 'Tampilkan Hasil · {{count}} aktif',
skaterWord: 'skater',
sortBy: 'Urutkan',
theCrew: 'Crew',
topRated: 'Rating Teratas',
trusted: 'Tepercaya',
trustLevel: 'Tingkat Kepercayaan',
yearsExp: '{{count}} thn pengalaman',
tabCoaches: 'Coach',
tabFilmers: 'Filmer',
tabPhoto: 'Foto',
tabEditors: 'Editor',
tabBuilders: 'Builder',
tabArtists: 'Artis',
tabGraffiti: 'Graffiti',
tabTattoo: 'Tato',
tabTrainers: 'Pelatih',
tabMusic: 'Musik',
tabJudges: 'Juri',
tabOrganizers: 'Penyelenggara',
tabBarbers: 'Barber',
filterSkillsToLearn: 'Keterampilan untuk Dipelajari',
filterContentType: 'Jenis Konten',
filterEquipmentStyle: 'Peralatan & Gaya',
filterServices: 'Layanan',
filterCamera: 'Kamera',
filterLenses: 'Lensa',
filterLighting: 'Pencahayaan',
filterSupportRig: 'Penopang & Rig',
filterStyle: 'Gaya',
filterWhatTheyBuild: 'Apa yang Mereka Bangun',
filterMaterialsTrade: 'Material & Keahlian',
filterProjectScale: 'Skala Proyek',
filterWhatTheyMake: 'Apa yang Mereka Buat',
filterMedium: 'Media',
filterSoftwareTools: 'Perangkat Lunak & Alat',
filterWorkContext: 'Konteks Kerja',
filterMethod: 'Metode',
filterFocus: 'Fokus',
filterInjuriesTreated: 'Cedera yang Ditangani',
filterCredentialsSetting: 'Kredensial & Pengaturan',
filterGenre: 'Genre',
filterInstrumentsRole: 'Instrumen & Peran',
filterEventFormats: 'Format Event',
filterSpecialty: 'Spesialisasi',
filterLevelCircuit: 'Level / Sirkuit',
filterEventTypes: 'Jenis Event',
filterWhatYouHandle: 'Apa yang Kamu Tangani',
filterScale: 'Skala',
filterWhatTheyOffer: 'Apa yang Mereka Tawarkan',
filterSignatureStyles: 'Gaya Andalan',
filterSetting: 'Pengaturan',
filterEditType: 'Jenis Editing',
role: {
coach: 'Coach',
filmer: 'Filmer',
builder: 'Builder',
editor: 'Editor Video',
photographer: 'Photographer',
skater: 'Skater',
},
empty: {
footer: 'Ada pertanyaan? Lihat FAQ →',
loginSuffix: 'untuk membuat profil.',
coachesTitle: 'Belum ada coach',
coachesBody: 'Jadilah yang pertama menawarkan pelatihan skateboard di daerahmu.',
filmersTitle: 'Belum ada filmer',
filmersBody: 'Jadilah yang pertama menawarkan filming skate — klip, part penuh, liputan kontes, dan lainnya.',
photographersTitle: 'Belum ada photographer',
photographersBody: 'Jadilah yang pertama menawarkan fotografi skate di daerahmu — foto aksi, sekuens, editorial, dan lainnya.',
editorsTitle: 'Belum ada editor video',
editorsBody: 'Jadilah yang pertama menawarkan jasa editing video skate.',
buildersTitle: 'Belum ada builder',
buildersBody: 'Jadilah yang pertama mendaftarkan pembuatan ramp, park, atau DIY — beton, kayu, rail, dan lainnya.',
artistsTitle: 'Belum ada artis',
artistsBody: 'Jadilah yang pertama menawarkan grafis board, logo, poster, dan merch untuk scene.',
graffitiTitle: 'Belum ada artis graffiti',
graffitiBody: 'Jadilah yang pertama menawarkan piece, mural, dan seni skatepark di daerahmu.',
tattooTitle: 'Belum ada artis tato',
tattooBody: 'Jadilah artis tato budaya skate pertama yang terdaftar — flash, custom, fine line, dan lainnya.',
trainersTitle: 'Belum ada pelatih',
trainersBody: 'Jadilah pelatih atau fisioterapis pertama yang membantu skater jadi kuat dan tetap sehat.',
musiciansTitle: 'Belum ada musisi',
musiciansBody: 'Skate sambil bikin musik? Tambahkan band atau proyek solomu — genre, instrumen, dan tautan.',
judgesTitle: 'Belum ada juri',
judgesBody: 'Menyelenggarakan kontes yang adil? Daftarkan dirimu untuk menilai Game of S.K.A.T.E., best trick jam, kontes, dan singgahan tur.',
organizersTitle: 'Belum ada penyelenggara',
organizersBody: 'Mengadakan jam, kompilasi, meetup, atau demo? Daftarkan dirimu agar skater bisa menemukan dan membookingmu.',
barbersTitle: 'Belum ada barber',
barbersBody: 'Potong rambut skater? Daftarkan kursimu atau layanan kelilingmu agar scene bisa tampil rapi.',
},
become: {
addNip05: 'Tambahkan NIP-05 di Pengaturan',
backToLab: 'Kembali ke The Lab',
bioWorkLabel: 'Bio / Tentang Karyamu',
checkContact: 'Periksa detail kontakmu',
cityArea: 'Kota / Area',
cityCountry: 'Kota, Negara',
connectWallet: 'Hubungkan Dompet',
connectWalletNwc: 'Hubungkan Dompet dengan NWC',
contactInfo: 'Informasi Kontak',
contactInfoDesc: 'Bagaimana klien dapat menghubungimu (semua opsional, tetapi disarankan)',
coordinatesOptional: 'Koordinat (opsional)',
email: 'Email',
failedToPublish: 'Gagal mempublikasikan',
fromNostrProfile: 'Dari profil Nostr kamu',
geolocationUnsupported: 'Geolokasi tidak didukung',
getting: 'Mengambil…',
headline: 'Judul',
headlineHint: 'Ditampilkan sebagai judul di kartu Lab kamu — mis. “{{example}}”. Default ke namamu.',
imageUploaded: 'Gambar diunggah',
instagram: 'Instagram',
invalidEmail: 'Masukkan alamat email yang valid.',
invalidPortfolio: 'Masukkan URL portofolio yang valid.',
invalidWebsite: 'Masukkan URL situs web yang valid.',
latitude: 'Lintang',
learnHow: 'Pelajari Caranya',
locationError: 'Kesalahan lokasi',
locationFound: 'Lokasi ditemukan',
loginRequired: 'Perlu Masuk',
loginRequiredDesc: 'Kamu perlu masuk untuk membuat profil {{role}}.',
loginRequiredDescCraft: 'Kamu perlu masuk untuk membuat profil {{noun}}.',
longitude: 'Bujur',
nip05Recommended: 'Verifikasi NIP-05 Disarankan',
nip05RecommendedDesc: 'Verifikasi identitasmu untuk membangun kepercayaan dengan klien.',
noWallet: 'Tidak Ada Dompet Terhubung',
otherSocial: 'Media Sosial Lain',
paymentSetup: '⚡ Perlu Pengaturan Pembayaran',
phoneNumber: 'Nomor Telepon',
profilePhoto: 'Foto Profil',
profilePublished: 'Profilmu telah dipublikasikan.',
publishing: 'Mempublikasikan...',
socialMedia: 'Media Sosial',
tip: '💡 Tips: Sebagian besar dompet Lightning mendukung NWC (Alby, Minibits, Zeus, Coinos).',
tipWithTime: '💡 Tips: Sebagian besar dompet Lightning mendukung NWC (Alby, Minibits, Zeus, Coinos). Butuh 30 detik untuk mengaturnya.',
upload: 'Unggah',
uploadFailed: 'Gagal mengunggah',
uploadImage: 'Unggah gambar',
uploading: 'Mengunggah…',
useCurrentLocation: 'Gunakan lokasi saat ini',
useMyLocation: 'Gunakan Lokasi Saya',
usingNwc: 'Menggunakan Nostr Wallet Connect',
usingWebln: 'Menggunakan ekstensi peramban WebLN',
walletConnected: 'Dompet Terhubung — Siap Menerima Pembayaran!',
website: 'Situs Web',
yearsExperience: 'Tahun Pengalaman',
},
coachForm: {
anonymous: 'Coach Anonim',
bioLabel: 'Bio / Filosofi Pelatihan',
bioPlaceholder: 'Latar belakangmu, gaya mengajar...',
create: 'BUAT PROFIL COACH',
created: 'Profil coach dibuat!',
createPro: 'BUAT PROFIL COACH PRO',
dmNote: '💬 Siswa bisa mengirim pesan langsung kepadamu melalui pesan terenkripsi SkateSpots',
heading: 'Jadi Coach',
headlineExample: 'Coach Skate Berlin',
hourlyRate: 'Tarif per Jam',
identity: 'Identitas Coach Kamu',
nip05Reason: 'Tambahkan pengenal NIP-05 untuk memverifikasi identitasmu dan membangun kepercayaan dengan siswa — ini menunjukkan kamu coach yang sah.',
paymentDesc: 'Untuk menerima pembayaran les dari siswa, kamu perlu menghubungkan dompet Lightning. Siswa akan Zap langsung kepadamu untuk sesi pelatihan.',
profileDesc: 'Beri tahu siswa tentang pengalamanmu',
profileTitle: 'Profil Coach',
ratePlaceholder: '5000 sats/jam',
selectSkill: 'Pilih setidaknya satu keterampilan.',
skillsLabel: 'Keterampilan yang Saya Ajarkan * (pilih setidaknya satu)',
skillsRequired: 'Keterampilan wajib',
formatsLabel: 'Format sesi',
formatsHint: 'Bagaimana kamu memberikan pelatihan.',
levelsLabel: 'Level yang diajarkan',
agesLabel: 'Kelompok usia',
credentialsLabel: 'Kredensial & keamanan',
credentialsHint: 'Diakui sendiri — SkateSpots tidak memverifikasi ini.',
languagesLabel: 'Bahasa yang dikuasai',
languagesHint: 'Tambahkan bahasa yang bisa kamu gunakan untuk melatih.',
languagePlaceholder: 'mis. Indonesia, English',
availabilityLabel: 'Ketersediaan',
bookingLabel: 'Tautan pemesanan',
bookingHint: 'Opsional — halaman tempat siswa bisa memesan dan membayar.',
galleryLabel: 'Foto portofolio',
galleryHint: 'Tunjukkan sesi nyata, siswa, dan spot (maks. 12).',
galleryAdd: 'Tambah foto portofolio',
galleryUploaded: '{{count}} foto diunggah',
videoLabel: 'Reel sorotan',
videoHint: 'Opsional — video YouTube atau Instagram tentang pelatihanmu.',
formatOneOnOne: '1-on-1',
formatGroup: 'Grup',
formatCamp: 'Kamp',
formatVideo: 'Analisis video',
formatContestPrep: 'Persiapan kontes',
formatParkLesson: 'Les park',
formatAdaptive: 'Adaptif',
formatGirls: 'Sesi khusus perempuan',
formatAfterSchool: 'Sepulang sekolah',
levelBeginner: 'Pemula',
levelIntermediate: 'Menengah',
levelAdvanced: 'Mahir',
levelCompetition: 'Kompetisi',
ageKids: 'Anak-anak',
ageTeens: 'Remaja',
ageAdults: 'Dewasa',
ageSeniors: 'Lansia',
certFirstAid: 'Pertolongan pertama',
certCpr: 'CPR',
certSafeguarding: 'Perlindungan anak',
certBackgroundCheck: 'Pemeriksaan latar belakang',
certInsured: 'Terasuransi',
certFederation: 'Coach federasi nasional',
certQualification: 'Kualifikasi pelatihan',
certJudge: 'Juri kompetisi',
certNoteLabel: 'Kredensial lain (opsional)',
certNotePlaceholder: 'mis. Skateboard GB Level 2, 8 tahun melatih…',
availWeekdays: 'Hari kerja',
availWeekends: 'Akhir pekan',
availEvenings: 'Malam',
availAfterSchool: 'Sepulang sekolah',
availHolidays: 'Libur sekolah',
availSeasonal: 'Musiman',
sectionWhatYouCoach: 'Apa yang kamu latih',
sectionCredentials: 'Kredensial & keamanan',
sectionAvailability: 'Ketersediaan & pemesanan',
sectionWhereYouCoach: 'Di mana kamu melatih',
sectionPortfolio: 'Portofolio',
rateAmountLabel: 'Tarif',
rateCurrencySats: 'sats',
rateCurrencyUsd: 'USD',
rateCurrencyEur: 'EUR',
rateCurrencyGbp: 'GBP',
perHour: 'per jam',
perSession: 'per sesi',
perHalfDay: 'per setengah hari',
perDay: 'per hari',
perCamp: 'per kamp',
perProject: 'per proyek',
perEvent: 'per event',
perGig: 'per gig',
perShoot: 'per sesi foto',
perPiece: 'per karya',
perCut: 'per potongan',
perMonth: 'per bulan',
availByAppointment: 'Dengan perjanjian',
rateNotesLabel: 'Catatan tarif (opsional)',
rateNotesPlaceholder: 'Skala geser, sesi pertama gratis, termasuk perjalanan…',
sectionPayments: 'Pembayaran',
paymentMethodsHint: 'Bagaimana klien bisa membayarmu. Ini hanya pernyataan — SkateSpots tidak pernah menahan dana.',
payMethodCash: 'Tunai di lokasi',
payMethodLightning: 'Lightning',
payMethodCashu: 'Cashu',
payMethodBank: 'Transfer bank',
payMethodOther: 'Lainnya',
payWhatYouCanLabel: 'Skala geser / bayar sesuai kemampuan',
bookingFeeLabel: 'Biaya pemesanan (opsional)',
bookingFeeHint: 'Biaya kecil yang dibayarkan langsung kepadamu untuk mengonfirmasi pemesanan. SkateSpots tidak menahan atau mengembalikannya.',
paymentNoteLabel: 'Catatan pembayaran (opsional)',
paymentNotePlaceholder: 'Sesi pertama gratis, termasuk perjalanan, bayar setelah sesi…',
spotsDesc: 'Pilih spot tempat kamu menawarkan sesi pelatihan',
spotsLabel: 'Spot Tempat Kamu Melatih',
tagline: 'Bagikan pengetahuan skateboard-mu',
update: 'PERBARUI PROFIL COACH',
updated: 'Profil coach diperbarui!',
},
filmerForm: {
anonymous: 'Filmer Anonim',
bioPlaceholder: 'Latar belakangmu, gaya, peralatan...',
camerasLabel: 'Kamera & Peralatan * (pilih setidaknya satu)',
create: 'BUAT PROFIL FILMING',
created: 'Profil filming dibuat!',
createPro: 'BUAT PROFIL FILMING PRO',
dmNote: '💬 Klien bisa mengirim pesan langsung kepadamu melalui pesan terenkripsi SkateSpots',
gearHelper: 'Daftarkan kamera, lensa, dan rig persis milikmu — skater peduli dengan setup-nya.',
gearLabel: 'Isi Tas (opsional)',
gearPlaceholder: 'mis. Sony VX1000 + fisheye MK1, Panasonic HVX200, gimbal DJI RS3, GoPro Hero 12, mic Sennheiser...',
heading: 'Jadi Filmer',
headlineExample: 'Filmer Skate Berlin',
identity: 'Identitas Filmer Kamu',
nip05Reason: 'Tambahkan pengenal NIP-05 untuk memverifikasi identitasmu dan membangun kepercayaan dengan klien — ini menunjukkan kamu filmer yang sah.',
paymentDesc: 'Untuk menerima pembayaran dari klien atas jasa filming, kamu perlu menghubungkan dompet Lightning. Klien akan Zap langsung kepadamu atas karyamu.',
profileDesc: 'Beri tahu klien tentang keahlian filming-mu',
profileTitle: 'Profil Filming',
rate: 'Tarif',
ratePlaceholder: '10000 sats/video',
reelLabel: 'Reel / Portofolio',
selectService: 'Pilih setidaknya satu layanan.',
selectSkill: 'Pilih setidaknya satu keterampilan filming.',
servicesLabel: 'Layanan yang Ditawarkan * (pilih setidaknya satu)',
servicesRequired: 'Layanan wajib',
skillsRequired: 'Keterampilan wajib',
spotsDesc: 'Pilih spot tempat kamu menawarkan jasa filming',
spotsLabel: 'Spot Tempat Kamu Memfilmkan',
tagline: 'Tawarkan filming video skate-mu — klip, line, part penuh & liputan kontes',
update: 'PERBARUI PROFIL FILMING',
updated: 'Profil filming diperbarui!',
},
editorForm: {
anonymous: 'Editor Anonim',
bioPlaceholder: 'Gaya editing-mu, latar belakang, proyek terkenal…',
contactPortfolio: 'Kontak & Portofolio',
create: 'Publikasikan Profil Editor',
created: 'Profil editor dibuat!',
createPro: 'Publikasikan Profil Editor Pro',
editTypes: 'Jenis Editing yang Ditawarkan * (pilih setidaknya satu)',
hardware: 'Perangkat Keras',
hardwarePlaceholder: 'mis. MacBook Pro M3, Sony FX3',
heading: 'Jadi Editor Video',
headlineExample: 'Editor Video Skate',
identity: 'Identitas Kamu',
locationOptional: 'Lokasi (opsional)',
loginDesc: 'Masuk untuk membuat profil editor videomu.',
phoneTelegram: 'Telepon / Telegram',
portfolioPlaceholder: 'Portofolio (Vimeo, YouTube…)',
profileDesc: 'Beri tahu komunitas tentang gaya dan keterampilan editing-mu',
profileTitle: 'Profil Editor',
published: 'Profilmu telah dipublikasikan ke SkateSpots.',
rate: 'Tarif / Harga',
ratePlaceholder: 'mis. 50k sats/menit, DM untuk penawaran',
selectService: 'Pilih setidaknya satu jenis editing.',
servicesRequired: 'Layanan wajib',
socialPlaceholder: 'Instagram / handle sosial',
software: 'Perangkat Lunak',
softwareHardware: 'Keterampilan Perangkat Lunak & Keras',
softwarePlaceholder: 'mis. DaVinci Resolve, Premiere',
tagline: 'Tawarkan jasa editing videomu ke komunitas skate',
thumbnail: 'Thumbnail Profil / Showreel',
update: 'Perbarui Profil Editor',
updated: 'Profil editor diperbarui!',
walletConnected: 'Dompet Terhubung ✓',
walletDesc: 'Terima pembayaran Bitcoin ⚡ langsung dari klien atas pekerjaan editing-mu.',
walletTitle: '⚡ Dompet Lightning untuk Pembayaran',
yearsExperience: 'Tahun Pengalaman',
yearsPlaceholder: 'mis. 5 tahun',
},
photoForm: {
anonymous: 'Photographer Anonim',
bioPlaceholder: 'Latar belakangmu, gaya, apa yang suka kamu foto...',
cameraLabel: 'Bodi Kamera * (pilih setidaknya satu)',
cameraRequired: 'Kamera wajib',
contactDesc: 'Bagaimana rider bisa melihat karyamu dan menghubungimu (semua opsional, tetapi disarankan)',
create: 'BUAT PROFIL FOTOGRAFI',
created: 'Profil fotografi dibuat!',
createPro: 'BUAT PROFIL FOTOGRAFI PRO',
dmNote: '💬 Rider bisa mengirim pesan langsung kepadamu melalui pesan terenkripsi SkateSpots',
gearHelper: 'Daftarkan bodi, lensa, dan lampu persis milikmu — rider suka tahu setup-nya.',
gearPlaceholder: 'mis. Canon R6 II, fisheye 8-15mm, 70-200mm f/2.8, 2× Godox AD200, pemicu jarak jauh, tripod Manfrotto...',
heading: 'Jadi Photographer',
headlineExample: 'Fotografi Skate',
identity: 'Identitas Photographer Kamu',
lensesLabel: 'Lensa',
lightingLabel: 'Peralatan Pencahayaan',
nip05Reason: 'Tambahkan pengenal NIP-05 untuk memverifikasi identitasmu dan membangun kepercayaan dengan klien.',
paymentDesc: 'Untuk dibayar atas sesi foto, hubungkan dompet Lightning. Klien akan Zap langsung kepadamu atas karyamu.',
portfolioLabel: 'Portofolio / Instagram',
profileDesc: 'Beri tahu rider tentang instingmu, peralatanmu, dan jasamu',
profileTitle: 'Profil Fotografi',
ratePlaceholder: '20000 sats/sesi foto',
selectCamera: 'Pilih setidaknya satu jenis kamera yang kamu gunakan.',
selectService: 'Pilih setidaknya satu layanan yang kamu tawarkan.',
servicesLabel: 'Layanan yang Ditawarkan * (pilih setidaknya satu)',
servicesRequired: 'Layanan wajib',
spotsDesc: 'Pilih spot tempat kamu menawarkan fotografi',
spotsLabel: 'Spot Tempat Kamu Memotret',
styleLabel: 'Gaya Pemotretan',
supportLabel: 'Penopang & Rig',
tagline: 'Abadikan sesinya — tawarkan fotografi skate-mu',
update: 'PERBARUI PROFIL FOTOGRAFI',
updated: 'Profil fotografi diperbarui!',
},
builderForm: {
anonymous: 'Builder Anonim',
bioLabel: 'Bio / Tentang Bangunanmu',
bioPlaceholder: 'Crew-mu, bangunan terkenal, cara kamu mendekati proyek...',
buildTypesLabel: 'Apa yang Kamu Bangun * (pilih setidaknya satu)',
buildTypesRequired: 'Jenis bangunan wajib',
cityBase: 'Kota / Basis',
contactPortfolio: 'Kontak & Portofolio',
contactPortfolioDesc: 'Bagaimana scene bisa melihat bangunanmu dan menghubungimu (semua opsional, tetapi disarankan)',
create: 'BUAT PROFIL BUILDER',
created: 'Profil builder dibuat!',
createPro: 'BUAT PROFIL BUILDER PRO',
dmNote: '💬 Klien bisa mengirim pesan langsung kepadamu melalui pesan terenkripsi SkateSpots',
gearHelper: 'Crew dan klien suka tahu peralatan dan prosesmu.',
gearLabel: 'Cara Kamu Bekerja / Peralatan (opsional)',
gearPlaceholder: 'mis. Crew beton penuh, mixer sendiri + rig shotcrete, las keliling, kami mengurus izin dan drainase...',
heading: 'Jadi Builder',
headlineExample: 'Builder Ramp & Park',
identity: 'Identitas Builder Kamu',
insured: 'Berizin / Terasuransi',
insuredHelper: 'Relevan untuk pekerjaan park publik & pemerintah daerah',
logoPhoto: 'Logo / Foto',
materialsLabel: 'Material & Keahlian',
nip05Reason: 'Tambahkan pengenal NIP-05 untuk memverifikasi identitasmu dan membangun kepercayaan dengan klien.',
pastBuilds: 'Bangunan Sebelumnya / Instagram',
paymentDesc: 'Untuk dibayar atas bangunan, hubungkan dompet Lightning. Klien akan Zap langsung kepadamu atas karyamu.',
profileDesc: 'Beri tahu scene apa yang kamu bangun dan bagaimana kamu bekerja',
profileTitle: 'Profil Builder',
rateLabel: 'Tarif / Dasar Penawaran',
ratePlaceholder: 'per m² / per proyek',
scaleLabel: 'Skala Proyek',
selectBuild: 'Pilih setidaknya satu hal yang kamu bangun.',
serviceArea: 'Area Layanan',
serviceAreaPlaceholder: 'mis. Jabodetabek, mau bepergian se-Indonesia',
spotsDesc: 'Tautkan spot dan park yang kamu bangun agar orang bisa melihat karyamu di peta',
spotsLabel: 'Spot yang Pernah Kamu Bangun',
tagline: 'Cor, las, bangun — daftarkan pembuatan ramp & park-mu',
update: 'PERBARUI PROFIL BUILDER',
updated: 'Profil builder diperbarui!',
yearsBuilding: 'Tahun Membangun',
},
skaterForm: {
backToSkaters: 'Kembali ke Skater',
bioHelperPulled: 'Diambil dari profilmu — sesuaikan untuk kartu skater-mu, atau biarkan apa adanya.',
bioHelperShort: 'Perkenalan singkat untuk kartu skater-mu.',
bioPlaceholder: 'Sudah berapa lama kamu skate, apa yang kamu sukai, apa yang sedang kamu kerjakan…',
browseSpots: 'Jelajahi spot',
changePhoto: 'Ganti foto profil',
chipBio: 'Bio',
chipPhoto: 'Foto',
cityArea: 'Kota / area',
created: 'Kamu sudah ada di peta! 🛹',
custom: 'Kustom',
customHelper: 'Label milikmu — ditampilkan di kartu skater-mu alih-alih preset.',
customPlaceholder: 'mis. OG, Weekend Warrior, Pensiun…',
discoverable: 'Skater lain sekarang bisa menemukanmu.',
editFullProfile: 'edit profil lengkapmu',
fromProfile: 'Dari profilmu',
heroEditPrefix: 'Edit',
heroJoinPrefix: 'Gabung ke',
heroSuffix: 'Direktori',
homeHelper: 'Ketik bebas, atau tautkan spot nyata dari peta agar orang bisa ke sana.',
homePlaceholder: 'Park / plaza lokal — atau ketuk “Jelajahi spot”',
homeSpot: 'Spot rumah',
layerEnd: 'untuk mengubahnya di mana-mana.',
layerIntro: 'Ini adalah',
layerMid: ', dibangun di atas profil Nostr-mu. Nama, foto, bio, lightning & verifikasimu berasal dari sana —',
layerWord: 'lapisan skate',
level: 'Level',
linked: 'Tertaut ke spot di peta',
loadingProfile: 'Memuat profilmu…',
loadingSpots: 'Memuat spot…',
locationHelper: 'Membantu orang lain menemukan skater di dekat mereka. Hanya area kasar yang dibagikan.',
loginToJoin: 'Masuk untuk bergabung',
loginToJoinDesc: 'Buat profil skater-mu agar komunitas bisa menemukanmu.',
mappedSpot: 'Spot di peta',
noSpots: 'Belum ada spot yang ditemukan.',
noSpotsMatch: 'Tidak ada spot yang cocok dengan pencarianmu.',
openMap: 'Buka peta',
pickEverything: 'Pilih semua yang sesuai gayamu.',
pickHomeSpot: 'Pilih spot rumahmu',
pickStyles: 'Pilih gayamu',
pickStylesDesc: 'Pilih setidaknya satu hal yang kamu skate.',
profilePic: 'Foto Profil',
profilePicHelper: 'Kartu skater-mu memakai foto profil Nostr-mu — gambar yang sama di mana-mana.',
publishingAs: 'Mempublikasikan sebagai',
putOnMap: 'Taruh aku di peta',
searchSpots: 'Cari spot berdasarkan nama atau kota…',
skateStory: 'Kisah skate-mu',
stance: 'Stance',
unlinkSpot: 'Lepas tautan spot',
updateButton: 'Perbarui profilku',
updated: 'Profil diperbarui!',
whatYouSkate: 'Apa yang kamu skate *',
yearsPlaceholder: 'mis. 8',
yearsSkating: 'Tahun berskate',
yourProfilePic: 'Foto profilmu',
zapsOn: 'Zap aktif',
},
skaters: {
clearSearch: 'Hapus pencarian',
community: 'Komunitas',
countMany: 'skater',
countOne: 'skater',
editProfile: 'Edit profil skater-ku',
heroDesc: 'Temukan orang-orangmu. Jelajahi skater yang mewakili SkateSpots — berdasarkan gaya, stance, level, dan kota.',
nip05Verified: 'Terverifikasi NIP-05',
noMatches: 'Tidak ada kecocokan',
noneDesc: 'Jadilah yang pertama bergabung ke direktori dan taruh SkateSpots di peta.',
noneTitle: 'Belum ada skater',
noVerifiedMatch: 'Tidak ada skater terverifikasi yang cocok',
searchPlaceholder: 'Cari berdasarkan nama, kota, atau npub…',
tryDifferentSearch: 'Coba pencarian lain atau hapus filtermu.',
tryTurnOffVerified: 'Coba matikan filter “Terverifikasi” untuk melihat semua orang.',
verifiedFilterTitle: 'Tampilkan hanya skater dengan identitas NIP-05 terverifikasi',
},
skaterCard: {
inDirectory: 'Kamu ada di Direktori Skater',
joinDesc: 'Tambahkan stance, gaya & levelmu agar skater bisa menemukanmu.',
joinTitle: 'Gabung ke Direktori Skater',
},
crewsStrip: {
allCrews: 'Semua crew',
memberMany: '{{count}} anggota',
memberOne: '{{count}} anggota',
title: 'Crew di scene ini',
},
labLink: {
coach: 'Coach',
filmer: 'Filmer',
editor: 'Editor',
photographer: 'Photographer',
builder: 'Builder',
artist: 'Artis',
graffiti: 'Graffiti',
tattoo: 'Tato',
trainer: 'Pelatih',
musician: 'Musisi',
judge: 'Juri',
barber: 'Barber',
organizer: 'Penyelenggara',
lab: 'Lab',
linkedProfiles: 'Profil Lab Tertaut',
desc: 'Jalankan studio, layanan pelatihan, atau pembuatan juga? Tautkan listing Lab-mu agar orang bisa menyewa crew-mu. Opsional. Saat profil Lab juga menautkan kembali ke crew ini, keduanya menampilkan',
descEnd: 'lencana hijau.',
empty: 'Kamu belum punya profil Lab. Buat satu di The Lab untuk menautkannya di sini.',
},
proUpgrade: {
goPro: 'Jadi Pro',
optional: '· opsional',
freeTo: 'Gratis untuk didaftarkan. Pro menambahkan',
proBadge: 'lencana Pro',
featuredPlacement: 'penempatan unggulan',
atTop: 'di bagian atas The Lab.',
active: 'Aktif',
benefit1: 'Lencana "Pro" emas di profil & kartumu',
benefit2: 'Diunggulkan lebih dulu saat skater menjelajahi The Lab',
benefit3: 'Mendukung SkateSpots — tanpa iklan, tanpa perantara',
platformOwner: 'Pemilik platform — Pro selalu aktif.',
proActiveOne: 'Pro aktif · tersisa {{count}} hari. Profilmu akan diunggulkan.',
proActiveMany: 'Pro aktif · tersisa {{count}} hari. Profilmu akan diunggulkan.',
context: 'Profilmu tetap aktif gratis setelah Pro berakhir — kamu hanya kehilangan lencana & boost.',
},
profilePreview: {
viewPublic: 'Lihat publik',
unnamed: 'Skater tanpa nama',
noHandle: 'Belum ada handle',
},
pyramid: {
pyramidWord: 'PYRAMID',
rankingsWord: 'RANKINGS',
subtitle: 'Kontributor teratas di kotamu',
yourRank: 'Peringkatmu',
keepContributing: 'Terus berkontribusi untuk naik lebih tinggi!',
topContributors: 'Kontributor Teratas',
noContributors: 'Belum ada kontributor. Jadilah yang pertama menambah spot atau membuat event!',
spots: 'Spot',
events: 'Event',
total: 'Total',
trust: 'Kepercayaan',
},
detail: {
joined: 'Bergabung',
about: 'Tentang',
howWeWork: 'Cara Kami Bekerja',
inTheBag: 'Isi Tas',
hardware: 'Perangkat Keras',
software: 'Perangkat Lunak',
eventsJudged: 'Event yang Dinilai',
eventsOrganized: 'Event yang Diselenggarakan',
spots: 'Spot',
viewSpot: 'Lihat spot',
credentialsTitle: 'Kredensial & keamanan',
selfAttested: 'Diakui sendiri oleh coach — tidak diverifikasi oleh SkateSpots.',
formats: 'Format',
levels: 'Level',
ages: 'Usia',
languages: 'Bahasa',
availability: 'Ketersediaan',
bookSession: 'Pesan sesi',
portfolio: 'Portofolio',
watchReel: 'Tonton di {{platform}}',
paymentsTitle: 'Pembayaran',
payWhatYouCan: 'Bayar sesuai kemampuan',
bookingFee: 'Biaya pemesanan',
payBookingFee: 'Bayar biaya pemesanan',
bookingFeeNote: 'Dibayarkan langsung ke coach. SkateSpots tidak menahan atau mengembalikannya.',
bookingFeeNoRail: 'Coach ini tidak menyetel alamat Lightning, jadi pembayaran dalam aplikasi tidak tersedia — hubungi mereka untuk mengatur pembayaran.',
serviceArea: 'Area Layanan',
licensedInsured: 'Berizin / Terasuransi',
studio: 'Studio',
shopStudio: 'Toko / Studio',
booksOpen: 'Terbuka untuk Pesanan',
credentials: 'Kredensial',
remoteOnline: 'Tersedia jarak jauh / online',
graffitiCrew: 'Crew Graffiti',
act: 'Aksi',
listen: 'Dengarkan',
upcomingGigs: 'Gig Mendatang',
past: 'Sebelumnya',
experience: 'Pengalaman',
yearsCount: '{{count}} tahun',
rate: 'Tarif',
contact: 'Kontak',
sendMessage: 'Kirim Pesan',
bookGig: 'Pesan untuk Gig',
portfolioDomain: 'Portofolio · {{domain}}',
manage: 'Kelola',
admin: 'Admin',
editProfile: 'Edit profil',
publishedTitle: 'Kamu sudah tayang',
publishedBody: 'Profilmu dipublikasikan ke The Lab. Bagikan agar skater bisa menemukanmu.',
manageRemove: 'Hapus profil {{noun}} kamu dari The Lab.',
adminTakeDown: 'Turunkan profil {{noun}} ini. Ini akan disembunyikan di seluruh SkateSpots.',
entityLabel: 'Profil {{noun}}',
deleteProfile: 'Hapus Profil',
location: 'Lokasi',
servicesSkills: 'Layanan & Keterampilan',
noun: {
coach: 'coach',
filmer: 'filmer',
editor: 'editor video',
photographer: 'photographer',
builder: 'builder',
artist: 'artis',
graffiti: 'artis graffiti',
tattoo: 'artis tato',
trainer: 'pelatih',
musician: 'musisi',
judge: 'juri event',
organizer: 'penyelenggara event',
barber: 'barber',
profile: 'profil',
},
skillsTitle: {
skills: 'Keterampilan',
servicesGear: 'Layanan & Peralatan',
whatWeBuild: 'Apa yang Kami Bangun',
whatTheyMake: 'Apa yang Mereka Buat',
stylesWork: 'Gaya & Karya',
styles: 'Gaya',
focusSpecialties: 'Fokus & Spesialisasi',
genresInstruments: 'Genre & Instrumen',
formatsSpecialties: 'Format & Spesialisasi',
servicesStyles: 'Layanan & Gaya',
eventTypesServices: 'Jenis Event & Layanan',
},
},
rider: {
heroDesc: 'Identitas skater-mu yang dapat diverifikasi. Ditandatangani Nostr, siap cetak, mustahil dipalsukan.',
heroDesc2: 'Dapatkan lencana keterampilan yang disaksikan skater lain. Dapatkan pass akses park. Bagikan kartumu di mana saja.',
headerTagline: 'Ditandatangani Nostr · Siap cetak · Terverifikasi QR',
tabCard: 'Kartuku',
tabBadges: 'Lencana',
tabAward: 'Anugerahkan',
rendering: 'Merender…',
shareCard: 'Bagikan Kartu',
savePng: 'Simpan PNG',
print: 'Cetak',
copyId: 'Salin ID',
cardType: 'Jenis Kartu',
licenseLabel: 'Lisensi Skater',
licenseSub: 'Identitas rider pribadimu',
parkLabel: 'Akses Park',
parkSub: 'Terbitkan pass sebagai pemilik park',
theme: 'Tema',
holoTitle: 'Kilau Holografik',
holoDesc: 'Efek foil beranimasi',
cardDetails: 'Detail Kartu',
skateStyle: 'Gaya Skate',
ridesFor: 'Membela',
ridesForPlaceholder: 'Toko lokal…',
sponsors: 'Sponsor',
sponsorsPlaceholder: 'Merek…',
showOnCard: 'Tampilkan di Kartu',
zaps: 'Zap ⚡',
skills: 'Keterampilan',
selected: '{{count}}/6 dipilih',
goldBadgesHint1: 'Lencana emas di kartumu berasal dari skater lain yang menyaksikanmu — lihat',
goldBadgesHint2: '.',
parkOwnersOnly: 'Hanya pemilik park.',
parkOwnersDesc: 'Terbitkan ini menggunakan kunci Nostr yang sama yang mempublikasikan listing park-mu. Siapa pun bisa memindai QR dan memverifikasi tanda tangan on-chain — tanpa otoritas pusat.',
parkDetails: 'Detail Park',
parkName: 'Nama Park',
parkNamePlaceholder: 'The Berrics…',
riderName: 'Nama Rider',
riderNamePlaceholder: 'Nama di kartu',
riderNpub: 'ID Nostr Rider (npub)',
accessLevel: 'Tingkat Akses',
validThru: 'Berlaku Hingga',
publishToNostr: 'Publikasikan ke Nostr',
badgesIntro: 'Lencana ini disaksikan dan ditandatangani skater lain di Nostr. Lencana ini muncul sebagai chip ⭐ emas di kartumu.',
earnMore: 'Ingin mendapat lebih banyak? Skate di depan seseorang dan minta mereka menyaksikan trick-mu.',
awardSomeone: 'Anugerahkan Lencana ke Orang Lain',
youSawIt: 'Kamu melihatnya terjadi',
youSawItDesc: 'Tandatangani bukti di Nostr. Ini menjadi bagian dari catatan permanen mereka — terikat secara kriptografis ke kuncimu.',
skillsWitnessed: 'Keterampilan yang kamu saksikan',
whereSeen: 'Di mana kamu melihatnya?',
optional: '(opsional)',
signingOnNostr: 'Menandatangani di Nostr…',
awardBadge: 'Anugerahkan Lencana',
addRiderSkill: 'Tambahkan npub rider + setidaknya satu keterampilan',
invalidNpub: 'npub tidak valid',
badgeAwarded: '🏅 Lencana dianugerahkan!',
badgeSent: '{{skills}} terkirim.',
failed: 'Gagal',
couldNotRender: 'Tidak dapat merender kartu',
popupBlocked: 'Popup diblokir',
popupBlockedDesc: 'Izinkan popup untuk situs ini.',
linkCopied: '🔗 Tautan disalin!',
enterRiderNpub: 'Masukkan npub rider',
parkPublished: '✅ Kartu Akses Park dipublikasikan!',
publishFailed: 'Gagal mempublikasikan',
noBadges: 'Belum ada lencana. Skate di depan seseorang dan minta mereka menyaksikan trick-mu!',
showMore: 'Tampilkan {{count}} lagi',
witnessedBy: 'Disaksikan oleh',
at: 'di',
previewLicense: 'Lisensi Skater',
previewSince: 'Sejak {{year}}',
previewEvts: 'Evts',
previewScan: 'Pindai untuk verifikasi',
previewSkatepark: 'Skatepark',
previewAccessPass: 'Pass Akses',
previewMemberName: 'Nama Anggota',
previewIssuedBy: 'Diterbitkan pemilik park · Ditandatangani Nostr',
previewValidThru: 'Berlaku hingga',
previewNostrVerified: 'Terverifikasi Nostr',
},
craftFields: {
detailsTitle: 'Detail tambahan',
deliverables: 'Hasil karya',
turnaround: 'Waktu penyelesaian',
surfaces: 'Permukaan / Dinding',
maxSize: 'Ukuran Maks',
setLength: 'Durasi Set',
techRider: 'Tech Rider',
travel: 'Perjalanan',
certifications: 'Sertifikasi',
insurance: 'Asuransi',
permits: 'Izin',
deposit: 'Deposit',
minimum: 'Minimum',
modalities: 'Modalitas',
duration: 'Durasi Janji Temu',
drone: 'Drone',
leadTime: 'Waktu Persiapan',
warranty: 'Garansi',
},
craftForm: {
profileImage: 'Gambar profil',
nameHeadline: 'Nama / judul',
about: 'Tentang',
aboutPlaceholder: 'Beri tahu skater tentang karya {{noun}}-mu…',
required: 'wajib',
nip05Title: 'Tambahkan NIP-05 untuk membangun kepercayaan',
nip05Desc: 'Pengenal NIP-05 membantu skater memverifikasi bahwa kamu asli. Sangat disarankan sebelum mendaftar.',
editingNote: 'Mengedit profil {{noun}} kamu yang sudah ada — mempublikasikan akan menggantinya.',
location: 'Lokasi',
pinned: '📍 Dipatok ke peta ({{lat}}, {{lng}})',
experienceYears: 'Pengalaman (tahun)',
expPlaceholder: 'mis. 5',
ratePlaceholder: 'mis. 20k sats / per proyek',
contactLinks: 'Kontak & Tautan',
phoneOptional: 'Telepon (opsional)',
emailOptional: 'Email (opsional)',
socialPlaceholder: 'Sosial (Instagram, dll.)',
gettingPaid: 'Menerima Pembayaran',
updateProfile: 'Perbarui Profil',
publishProfile: 'Publikasikan Profil',
rateLeftBlankNote: 'Opsional — biarkan kosong jika tarif di atas sudah cukup.',
sectionRequired: '{{section}} wajib',
sectionRequiredDesc: 'Pilih setidaknya satu opsi di "{{section}}".',
updated: 'Profil diperbarui!',
created: 'Profil dibuat!',
headlineExample: 'Coach Skate Berlin',
},
},
socialUi: {
agentPanel: {
spot: 'Spot',
event: 'Event',
labPro: 'Lab pro',
gear: 'Peralatan',
crew: 'Crew',
description: 'Mengenal crew ini — jam-nya, roster & open call — plus scene yang lebih luas dengan data langsung.',
greeting: "Yo! Aku Sasquatch, pemandu {{crew}}. Tanya aku tentang crew — jam berikutnya, siapa yang mengurusnya, apa yang kami cari — atau scene yang lebih luas.",
suggestion1: 'Jam kita berikutnya kapan?',
suggestion2: 'Siapa yang mengurus crew ini?',
suggestion3: 'Apa yang kami cari?',
suggestion4: 'Spot terbaik di dekat kita?',
suggestion5: 'Bagaimana cuaca untuk skate?',
thinking: 'Sasquatch sedang berpikir…',
placeholder: 'Tanya tentang scene lokalmu…',
disclaimer: 'AI bisa salah — tautan mengarah ke listing nyata.',
},
badge: {
upcomingOne: '{{count}} event mendatang',
upcomingMany: '{{count}} event mendatang',
comingOne: '{{count}} event akan datang',
comingMany: '{{count}} event akan datang',
},
bell: {
youAreIn: 'Kamu ada di {{crew}}! 🛹',
membershipConfirmed: 'Keanggotaan dikonfirmasi.',
couldNotConfirm: 'Tidak dapat mengonfirmasi',
addedYouTo: 'menambahkanmu ke',
confirmToAppear: 'Konfirmasi untuk tampil sebagai anggota.',
notifications: 'Notifikasi',
notificationsNew: 'Notifikasi ({{count}} baru)',
unreadCount: '{{count}} notifikasi belum dibaca',
markRead: 'Tandai dibaca',
allClear: 'Semua jelas',
tabAll: 'Semua',
tabTrades: 'Transaksi',
tabSocial: 'Sosial',
tabNews: 'Berita',
tabCrews: 'Crew',
checkingUpdates: 'Memeriksa pembaruan…',
checkingTrades: 'Memeriksa penawaran dan transaksi…',
loadingDrops: 'Memuat drop terbaru…',
emptyAll: 'Penawaran, transaksi, Zap, balasan, drop buletin, dan aktivitas crew akan muncul di sini.',
emptyTrades: 'Penawaran, penawaran balik, dan konfirmasi transaksi semuanya mendarat di sini — baik kamu menjual, membeli, atau menukar.',
emptySocial: 'Zap, reaksi, repost, mention, balasan, RSVP event, dan pembaruan penyelenggara semuanya mendarat di sini.',
emptyNews: 'Drop buletin SkateSpots akan mendarat di sini. Berlangganan di halaman Buletin.',
emptyCrews: 'Undangan crew, permintaan kolektif, dan permintaan keanggotaan akan muncul di sini.',
subscribeBanner: 'Berlangganan untuk mendapat drop baru di loncengmu',
read: 'Baca',
allCaughtUp: 'Kamu sudah menyusul semuanya',
},
chat: {
hidden: 'Disembunyikan',
hideMessageAria: 'Sembunyikan pesan ini',
hideMessageTitle: 'Sembunyikan pesan (admin)',
messageHidden: 'Pesan disembunyikan',
messageHiddenDesc: 'Disembunyikan dari chat crew untuk semua orang.',
messageHideFailed: 'Gagal menyembunyikan pesan',
encryptionUnavailable: 'Enkripsi tidak tersedia',
encryptionUnavailableDesc: 'Penandatanganmu tidak mendukung enkripsi NIP-44. Harap perbarui ekstensimu.',
messageFailed: 'Pesan gagal',
couldNotSend: 'Tidak dapat mengirim pesan.',
noOneToMessage: 'Belum ada yang bisa dikirimi pesan',
noOneToMessageDesc: 'Crew ini tidak punya anggota lain untuk diajak chat.',
subject: 'Chat crew {{crew}}',
title: 'Chat Crew',
cordnBadgeTitle: 'Dirutekan melalui koordinator Cordn crew ini via ContextVM. Terenkripsi ujung-ke-ujung.',
private: 'Privat',
privateBadgeTitle: 'Terenkripsi ujung-ke-ujung — hanya anggota crew yang bisa membaca pesan ini.',
encryptedCordn: 'Terenkripsi & dirutekan melalui koordinator crew (Cordn) — tidak ada pesan yang menyentuh relay publik.',
encryptedNip17: 'Chat grup terenkripsi untuk pendiri & semua anggota crew yang terdaftar.',
moderatorNote: ' Sebagai moderator, kamu bisa menyembunyikan pesan dari crew.',
loginToSee: 'Masuk untuk melihat apakah kamu bisa bergabung ke chat crew.',
membersOnly: 'Chat ini privat untuk anggota crew. Minta pendiri menambahkanmu ke crew untuk ikut serta dalam percakapan.',
noMessages: 'Belum ada pesan. Mulai chat crew — rencanakan sesi, bagikan spot, soraki klip.',
newMessages: 'Pesan baru',
new: 'Baru',
placeholder: 'Kirim pesan ke crew-mu…',
sendAria: 'Kirim pesan',
},
collectiveJoinRequest: {
addedTitle: 'Menambahkan {{name}} ke {{collective}} 🛹',
addedDesc: 'Mereka akan mengonfirmasi dari sisi mereka untuk tampil sebagai anggota terverifikasi.',
couldNotAdd: 'Tidak dapat menambahkan anggota',
couldNotDismiss: 'Tidak dapat mengabaikan',
addedDone: 'Ditambahkan',
addedTo: 'ke',
dismissedDone: 'Mengabaikan permintaan dari {{name}}',
wantsToJoin: 'ingin bergabung',
alreadyOnRoster: 'Sudah ada di roster',
openCollective: 'Buka kolektif',
dismiss: 'Abaikan',
addToCollective: 'Tambahkan ke kolektif',
},
collectiveMembers: {
confirmed: 'Terkonfirmasi',
pending: 'Menunggu',
pendingTooltip: 'Terdaftar oleh kolektif — menunggu konfirmasi anggota ini.',
crewOnly: 'Hanya crew',
crewOnlyTooltip: 'Anggota ini memilih hanya terlihat oleh rekan crew. Kamu bisa melihatnya karena kamu ada di crew.',
hiddenMember: 'Anggota tersembunyi',
title: 'Anggota',
verifiedOf: '{{confirmed}} dari {{total}} terverifikasi — setiap anggota yang terkonfirmasi menandatangani dengan kunci Nostr mereka sendiri.',
verifiedPerMember: 'Keanggotaan diverifikasi per anggota. Setiap anggota mengonfirmasi dengan kunci Nostr mereka sendiri.',
adminsOne: '{{count}} admin membantu menjalankan crew.',
adminsMany: '{{count}} admin membantu menjalankan crew.',
},
confirmMembership: {
public: 'Publik',
crewOnly: 'Hanya crew',
confirmedTitle: 'Keanggotaan dikonfirmasi!',
confirmedCrew: 'Kamu terverifikasi di {{name}} — hanya terlihat oleh rekan crew.',
confirmedPublic: 'Kamu sekarang tampil sebagai anggota terverifikasi {{name}}.',
failed: 'Gagal mengonfirmasi',
addedTo: 'Kamu telah ditambahkan ke {{name}}',
addedDesc: 'Konfirmasi keanggotaanmu agar tampil sebagai terverifikasi di profilmu dan profil mereka.',
yourVisibility: 'Visibilitas kamu',
confirming: 'Mengonfirmasi…',
confirmButton: 'Konfirmasi Keanggotaan',
},
contacts: {
message: 'Pesan',
removePrivate: 'Hapus dari kontak privat',
savePrivate: 'Simpan ke kontak privat',
seoTitle: 'Kontak - SkateSpots',
seoDescription: 'Scenemu — rekan crew, orang yang kamu ikuti, dan percakapan terbaru, dengan kontak terenkripsi privat.',
encryptionUnavailableDesc: 'Penandatanganmu tidak mendukung enkripsi NIP-44.',
removed: 'Dihapus dari kontak privat',
saved: 'Disimpan ke kontak privat',
savedDesc: 'Hanya kamu yang bisa melihat daftar ini.',
updateFailed: 'Tidak dapat memperbarui kontak',
loginTitle: 'Scenemu, di satu tempat',
loginDesc: 'Masuk untuk melihat rekan crew-mu, orang yang kamu ikuti, dan percakapan terbaru — serta simpan daftar kontak privat yang terenkripsi.',
title: 'Kontak',
subtitle: 'Scenemu — rekan crew, follow & percakapan',
filterPlaceholder: 'Filter berdasarkan npub…',
tabCrew: 'Crew',
tabFollows: 'Mengikuti',
tabDms: 'DM',
tabSaved: 'Disimpan',
emptyCrewmates: 'Belum ada rekan crew. Gabung atau mulai crew untuk membangun jaringan scenemu.',
emptyFollowing: 'Kamu belum mengikuti siapa pun.',
emptyDms: 'Belum ada percakapan. Kirimi pesan seorang skater untuk memulainya.',
savedHint: 'Daftar ini dienkripsi dengan kuncimu — hanya kamu yang bisa membacanya. Ketuk bintang pada siapa pun untuk menambahkannya.',
emptySaved: 'Belum ada kontak tersimpan. Beri bintang orang dari tab mana pun untuk membangun buku alamat privatmu.',
},
conversation: {
unknown: 'Tidak diketahui',
seoTitle: 'Chat dengan {{name}} - SkateSpots',
seoDescription: 'Percakapan terenkripsi privat',
sendFailed: 'Pesan gagal terkirim',
sendFailedDesc: 'Coba lagi sebentar lagi.',
tradeConfirmed: 'Transaksi dikonfirmasi',
tradeConfirmedDesc: 'Reputasi diperbarui untuk kalian berdua.',
tradeConfirmFailed: 'Tidak dapat mengonfirmasi transaksi',
somethingWrong: 'Terjadi kesalahan.',
soldNote: 'Terjual ke {{name}}.',
saleConfirmed: 'Penjualan dikonfirmasi',
saleConfirmedDesc: '{{name}} sekarang bisa mengonfirmasi sisi mereka.',
saleConfirmFailed: 'Tidak dapat mengonfirmasi penjualan',
escrowRedeemed: 'Escrow ditukarkan',
escrowRedeemedDesc: 'Dananya sekarang ada di dompet Cashu-mu.',
escrowRedeemFailed: 'Tidak dapat menukarkan escrow',
loginTitle: 'Masuk untuk melihat pesan',
secureLoginTitle: 'Perlu Masuk Aman',
secureLoginDesc: 'Pesan memerlukan aplikasi penandatangan yang aman.',
encrypted: 'Terenkripsi',
refresh: 'Muat ulang',
didCompleteTrade: 'Apakah kamu menyelesaikan transaksi ini?',
recordedSale: '{{name}} mencatat penjualan. Konfirmasi untuk memperbarui reputasi kalian berdua.',
confirm: 'Konfirmasi',
confirmSale: 'Konfirmasi penjualan ini?',
askedToRecord: '{{name}} memintamu mencatatnya. Mengonfirmasi membangun reputasi kalian berdua.',
confirmSaleButton: 'Konfirmasi penjualan',
redeemEscrow: 'Tukarkan escrow',
escrowAppOnly: 'Escrow Cashu hanya di aplikasi — buka SkateSpots di ponselmu untuk menukarkan.',
startThread: 'Kirim pesan untuk memulai percakapan',
placeholder: 'Ketik pesan...',
e2eeNote: 'Pesan terenkripsi ujung-ke-ujung menggunakan NIP-17',
},
coordinator: {
secondsAgo: '{{count}}d lalu',
minutesAgo: '{{count}}m lalu',
hoursAgo: '{{count}}j lalu',
daysAgo: '{{count}}h lalu',
statusIdle: 'Belum diperiksa',
statusChecking: 'Memeriksa…',
statusOnline: 'Terhubung',
statusStale: 'Sepi',
statusOffline: 'Tidak terlihat',
statusError: 'Tidak terjangkau',
notACoordinator: 'Itu bukan koordinator',
notACoordinatorDesc: 'Tempel nprofile, npub, atau tautan cordn.net.',
added: 'Koordinator ditambahkan',
relayOne: '{{count}} relay',
relayMany: '{{count}} relay',
lastSeen: 'terakhir terlihat {{time}}',
onlineDesc: 'Mengumumkan. Grup yang menggunakannya bisa mengirim pesan sekarang.',
staleDesc: 'Ditemukan, tetapi belum mengumumkan baru-baru ini — mungkin sedang tidur.',
offlineDesc: 'Tidak ada pengumuman terlihat. Mungkin privat (itu tidak masalah), atau sekadar offline.',
errorDesc: 'Tidak dapat menjangkau relay.',
idleDesc: 'Memeriksa…',
checkingDesc: 'Mencari pengumumannya…',
eventFoundOne: '{{count}} event ditemukan.',
eventFoundMany: '{{count}} event ditemukan.',
check: 'Periksa',
addLinkCopied: 'Tautan tambah disalin',
copyFailed: 'Gagal menyalin',
copyManually: 'Salin secara manual.',
addLink: 'Tautan tambah',
removeConfirm: 'Hapus koordinator ini dari perangkat ini?',
scanToJoin: 'Pindai di Cordn untuk bergabung ke koordinator ini.',
noCoordinator: 'Belum ada koordinator',
noCoordinatorDescA: 'Koordinator mengantarkan',
encryptedWord: 'terenkripsi',
noCoordinatorDescB: 'pesan grup crew-mu secara berurutan. Ia melihat siapa, kapan, dan grup mana — tidak pernah isinya. Pilih satu, atau jalankan milikmu sendiri.',
change: 'Ganti koordinator',
addTitle: 'Tambahkan koordinator',
add: 'Tambah',
scanQR: 'Pindai QR koordinator',
inputPlaceholder: 'nprofile… atau tautan cordn.net',
runOwn: 'Jalankan milikmu sendiri',
runOwnDesc: 'Ia bisa hidup di ponsel lama, Raspberry Pi, atau kotak kecil apa pun yang kamu biarkan menyala. Grupmu tetap bekerja selama ia hidup — dan kamu bisa memindahkan grup kapan saja.',
onPhone: 'Di ponsel',
onPhoneDesc: 'Gunakan aplikasi Cordn Coordinator, lalu pindai QR-nya di sini untuk menambahkannya.',
openCordn: 'Buka Cordn',
scanItsQR: 'Pindai QR-nya',
onServer: 'Di server',
commandCopied: 'Perintah disalin',
copyCommand: 'Salin perintah',
androidSleep: 'Android mungkin menidurkan koordinator ponsel. Bersiaplah memindahkan grup sesekali.',
privacyNote: '🔒 Koordinator hanya melihat ciphertext dan metadata — tidak pernah isi pesan. Jalankan milikmu sendiri agar bahkan metadatanya tetap milikmu.',
customTitle: 'Koordinator Chat Kustom',
customBadge: '· eksperimental · relay milikmu sendiri',
customDescShort: 'Opsional — crew-mu sudah punya chat terenkripsi ujung-ke-ujung bawaan, jadi kamu tidak butuh ini. Setel hanya jika kamu menjalankan sendiri',
remove: 'Hapus',
pointerNote: 'Hanya penunjuk untuk sekarang: endpoint wss:// digunakan sebagai relay chat crew; yang https:// melalui relay ContextVM bersama. MLS Cordn sungguhan belum terhubung.',
cordnCoordinator: 'Koordinator Cordn',
invalid: 'Itu tampaknya bukan koordinator. Tempel nprofile, tautan cordn.net, atau URL https/wss.',
useMine: 'Gunakan koordinatorku',
},
createCrew: {
seoTitle: 'Buat Crew - SkateSpots',
seoDescription: 'Buat crew skate-mu — home turf, anggota, dan spot.',
loginRequired: 'Perlu Masuk',
loginRequiredDesc: 'Kamu perlu masuk untuk membuat crew.',
backToCrews: 'Kembali ke Crew',
title: 'Buat Crew',
intro: 'Keluarga skate-mu — orang-orang yang kamu ajak skate. Cukup nama untuk memulai; sisanya opsional.',
},
crew: {
seoTitleNamed: '{{name}} - Crew SkateSpots',
seoTitle: 'Crew - SkateSpots',
seoDescription: 'Crew skate di SkateSpots.',
postHidden: 'Postingan disembunyikan',
postHiddenDesc: 'Dihapus dari feed crew untuk semua orang.',
postHideFailed: 'Gagal menyembunyikan postingan',
backToCrews: 'Kembali ke Crew',
disband: 'Bubarkan',
youAreCaptain: 'Kamu seorang kapten',
member: 'Anggota',
askSasquatch: 'Tanya Sasquatch',
agent: 'Agen Crew',
agentDesc: 'Pemandu AI crew-mu — spot, event, coach & perlengkapan terdekat, dengan data langsung.',
eventsTab: 'Event',
chatTab: 'Chat',
newMessages: 'Pesan baru',
hostJam: 'Selenggarakan jam',
noEvents: 'Belum ada event crew. Selenggarakan jam, kompilasi, atau meetup sebagai crew — ini menghubungkan crew-mu ke kalender event dan memungkinkan orang men-Zap-nya.',
support: 'Dukung',
zapCrew: 'Zap Crew',
bandTitle: 'Band Crew',
bandTagline: 'Musik live · skate & suara',
listenTitle: 'Dengarkan: {{domain}}',
listen: 'Dengarkan lagunya',
setUpGig: 'Atur gig',
bookGigMessage: 'Hai {{crew}} — tertarik memesan {{band}} untuk gig. Kamu ada waktu untuk bicara tanggal?',
messageAboutGig: 'Pesan tentang gig',
gigHintA: 'menambahkan event musik ke kalender yang diselenggarakan crew ini.',
messageShort: 'Pesan',
gigHintB: 'membuka DM terenkripsi ke crew untuk mengatur tanggal & detail.',
homeSpots: 'Spot Rumah',
viewSpot: 'Lihat spot',
seeOnMap: 'Lihat di peta →',
founderLinks: 'Pendiri & Tautan',
startedBy: 'Dimulai oleh {{name}}',
opens: 'Membuka: {{domain}}',
},
crews: {
seoTitle: 'Crew - SkateSpots',
seoDescription: 'Temukan orang-orangmu. Jelajahi crew skate lokal, kolektif, dan komunitas di dekatmu.',
videoPartTooltip: 'Crew ini punya video part',
part: 'Part',
bandTooltip: 'Band crew: {{name}}',
band: 'Band',
focusAll: 'Semua',
focusAllShort: 'Semua',
focusDiy: 'DIY',
focusPhoto: 'Foto',
focusCoaching: 'Pelatihan',
focusArt: 'Seni',
focusMusic: 'Musik',
focusPhysio: 'Fisio',
focusMixed: 'Campuran',
title: 'Crew',
heroLine: 'Keluarga skate-mu yang berlabuh di peta — orang-orang yang kamu ajak skate',
heroWith: 'bersama',
heroRest: ', bukan orang yang kamu sewa (itu The Lab).',
crewCountOne: '{{count}} crew',
crewCountMany: '{{count}} crew',
cityCountOne: '{{count}} kota',
cityCountMany: '{{count}} kota',
createCrew: 'Buat Crew',
create: 'Buat',
searchPlaceholder: 'Cari crew berdasarkan nama atau kota…',
filterTitle: 'Filter crew',
filterDesc: 'Apa yang disukai crew ini.',
nearMe: 'Dekat saya',
emptySearchTitle: 'Tidak ada crew yang cocok dengan pencarianmu',
emptySearchHint: 'Tidak ada yang ditemukan untuk “{{query}}”. Coba nama atau kota lain.',
clearSearch: 'Hapus pencarian',
emptyFocusTitle: 'Belum ada crew {{label}}',
emptyFocusHint: 'Belum ada yang mengibarkan bendera “{{label}}” di sini. Tampilkan semua crew, atau mulai sendiri.',
showAll: 'Tampilkan semua crew',
claimTitle: 'Klaim scene lokalmu',
claimHint: 'Belum ada crew yang ditanam di sini. Jadilah yang pertama — mulai crew-mu, tautkan spot rumahmu, dan taruh scenemu di peta agar semua orang bisa menemukannya.',
},
crewCoordinator: {
privateChat: 'Chat Crew Privat',
on: 'Aktif',
defaultA: 'Tab',
chatWord: 'Chat',
defaultB: 'bersifat',
e2ee: 'terenkripsi ujung-ke-ujung',
defaultC: 'untuk pendiri dan semua anggota terdaftar — tidak ada yang perlu diatur. Pesan disegel ke kunci setiap anggota (NIP-17), jadi hanya crew-mu yang bisa membacanya.',
advancedA: 'Lanjutan: jalankan milikmu sendiri',
cordnCoordinator: 'Koordinator Cordn',
routeThrough: 'Rutekan chat melaluinya',
coordinator: 'Koordinator',
deliveredOver: 'Dikirim melalui',
sharedRelay: '— relay ContextVM bersama.',
ownRelay: '— relay milik crew-mu sendiri.',
chatLive: 'Chat privat aktif',
routesA: 'Tab',
routesB: 'dirutekan melalui koordinator ini: pesan terenkripsi ujung-ke-ujung (NIP-44, disegel ke setiap anggota), jadi ia hanya menangani lalu lintas tersegel.',
publicWarning: 'Perhatian: ia dialamatkan melalui relay ContextVM bersama, jadi ciphertext dan metadatanya (crew mana, dan kapan) terlihat publik — hanya tidak bisa dibaca. Arahkan crew ke relay wss:// privat agar itu pun tetap privat.',
ownRelaySafe: 'Tidak ada yang khusus crew keluar dari relay crew-mu sendiri.',
manage: 'Kelola koordinator',
open: 'Buka {{domain}}',
runBy: 'Koordinator dijalankan oleh',
},
dms: {
securityReminder: 'Pengingat keamanan',
phishingStrong: 'SkateSpots tidak akan pernah mengirimimu DM',
phishingRest: 'meminta memverifikasi akunmu, membagikan kuncimu, atau mengirim pembayaran. Jika seseorang mengaku sebagai dukungan SkateSpots via DM — itu penipuan.',
dismissReminder: 'Abaikan pengingat keamanan',
peopleCount: '{{count}} orang',
youPrefix: 'Kamu: ',
unreadMessages: 'Pesan belum dibaca',
seoTitle: 'Pesan - SkateSpots',
seoDescription: 'Pesan terenkripsi privat dengan komunitas skateboard',
loginTitle: 'Masuk untuk mengakses pesan',
loginDesc: 'Pesan privat dan terenkripsi dengan skater di komunitas',
secureLoginTitle: 'Perlu Masuk Aman',
secureLoginDesc: 'Pesan privat memerlukan aplikasi penandatangan yang aman untuk mengenkripsi percakapanmu.',
onAndroid: 'Di Android:',
useAmber: 'Gunakan aplikasi Amber',
getAmber: 'Dapatkan Amber →',
onIOS: 'Di iOS:',
iosHint: 'Coba masuk dengan koneksi bunker (nsec.app) dari Pengaturan',
browserHint: 'Coba masuk dengan ekstensi peramban seperti Alby atau nos2x yang mendukung enkripsi.',
title: 'Pesan',
subtitleFull: 'Terenkripsi ujung-ke-ujung dengan NIP-17',
subtitleShort: 'Terenkripsi',
newMessage: 'Pesan Baru',
groups: 'Grup',
loadFailed: 'Gagal memuat pesan',
emptyTitle: 'Belum ada pesan',
emptyDesc: 'Mulai percakapan dengan seseorang di komunitas',
startConversation: 'Mulai Percakapan',
undecryptableOne: '{{count}} pesan terenkripsi tidak dapat dibuka oleh penandatanganmu.',
undecryptableMany: '{{count}} pesan terenkripsi tidak dapat dibuka oleh penandatanganmu.',
},
editCrew: {
seoTitleNamed: 'Edit {{name}} - SkateSpots',
seoTitle: 'Edit Crew - SkateSpots',
seoDescription: 'Edit crew skate-mu.',
loginRequired: 'Perlu Masuk',
notYours: 'Bukan crew-mu',
notYoursDesc: 'Hanya pendiri crew yang bisa mengedit crew ini.',
backToCrew: 'Kembali ke Crew',
title: 'Edit Crew',
},
form: {
add: 'Tambah',
added: 'Ditambahkan',
addNameInBasicsA: 'Tambahkan nama crew kembali di',
addNameInBasicsB: 'untuk menyelesaikan.',
adminsDescA: 'Jadikan anggota tepercaya',
adminsWord: 'admin',
adminsDescB: '— mereka bisa mengundang anggota dan memoderasi feed & chat crew dengan kunci mereka sendiri. Kamu (pendiri) selalu tetap pemilik identitas crew.',
agentDescA: 'Tambahkan',
agentDescB: ', pemandu AI yang benar-benar mengenal crew-mu. Anggota bisa bertanya tentang',
agentDescC: '— plus spot, event, coach, dan perlengkapan terdekat dari data langsung SkateSpots. Berjalan langsung di peramban; tanpa kunci atau pengaturan. Masih awal (AI tingkat gratis, jadi kadang lambat).',
agentDescStrong: 'jam berikutnya, siapa yang mengurus crew, apa yang kamu cari, dan vibe-mu',
agentEnabledNote: 'Sasquatch akan muncul di halaman crew-mu setelah kamu menyimpan.',
bandDesc: 'Punya band? Scene skate dan musik lokal berjalan seiring — masukkan nama bandmu dan tautan ke lagunya.',
bandFooterA: 'Untuk profil band lengkap (genre, instrumen, gig), buat',
musicianWord: 'Musisi',
bandFooterB: 'di The Lab, lalu tautkan di bagian',
linkedLabWord: 'Profil Lab tertaut',
bandFooterC: 'di atas.',
bandMusicWord: 'Band & Musik',
bandName: 'Nama band',
bandNamePlaceholder: 'mis. The Bail Outs',
bandNudgeA: 'Kamu punya band — ketuk untuk menyetel',
crewTypeWord: 'Jenis Crew',
bandNudgeB: 'ke',
bandNudgeC: 'agar kamu juga muncul di scene Musik The Lab.',
beta: 'Beta',
bioLabel: 'Tentang / Manifesto',
bioPlaceholder: 'Siapa kamu, apa yang kamu skate, kisahmu...',
continue: 'Lanjutkan',
crewCreated: 'Crew dibuat!',
crewUpdated: 'Crew diperbarui!',
crewName: 'Nama Crew',
crewOnlyWord: 'Hanya crew',
crewType: 'Jenis Crew',
crewTypeDescA: 'Apakah crew-mu berfokus pada suatu keahlian? Pilih satu agar juga muncul di scene itu di',
theLab: 'The Lab',
crewTypeDescB: '. Crew skate biasa tetap',
mixedWord: 'Campuran',
crewTypeDescC: '.',
customVibeHint: 'Tambahkan vibe atau fokusmu sendiri dengan #',
customVibePlaceholder: 'mis. downhill, night-sessions, no-comply',
editDesc: 'Identitas crew-mu, home turf, dan anggota',
enableAgent: 'Aktifkan Agen Crew',
enableTreasury: 'Aktifkan Kas Crew',
failed: 'Gagal',
founded: 'Didirikan (Tahun)',
geolocationUnsupported: 'Geolokasi tidak didukung',
gettingLocation: 'Mengambil...',
goalHint: 'Pastikan profil Nostr-mu punya alamat Lightning (lud16) agar kontribusi bisa masuk.',
goalPlaceholder: 'mis. Cor spot DIY',
goalTarget: 'Target (sats)',
goalWhat: 'Apa tujuannya?',
homeSpots: 'Spot Rumah',
homeSpotsDesc: 'Tautkan spot yang sering dikunjungi crew-mu — mereka akan terhubung ke crew-mu di peta',
homeTurf: 'Home Turf (Kota / Area)',
homeTurfPlaceholder: 'Bristol, UK',
instagramDetected: 'Klip Instagram terdeteksi',
invalidMember: 'Masukkan npub, nprofile, atau pubkey hex yang valid.',
latitude: 'Lintang',
leaveBlankLocation: 'Biarkan kosong untuk mempertahankan lokasi home turf saat ini.',
links: 'Tautan',
locationError: 'Kesalahan lokasi',
locationFound: 'Lokasi ditemukan',
logoAlt: 'Crew',
logoHint: 'Logo membuat crew-mu langsung dikenali di peta dan di feed. Persegi paling bagus.',
logoLabel: 'Logo / Foto Crew',
logoUploaded: 'Logo diunggah',
longitude: 'Bujur',
looksGood: 'Terlihat bagus',
makeAdmin: 'Jadikan admin',
mapPin: 'Pin Peta',
mapPinHint: 'Taruh crew-mu di peta agar warga lokal bisa menemukanmu. Ketuk tombolnya — tanpa mengetik.',
memberAlreadyAdded: 'Anggota itu sudah ditambahkan.',
members: 'Anggota',
membersDesc: 'Tambahkan akun Nostr crew-mu. Setiap anggota mengonfirmasi dari kunci mereka sendiri — sampai saat itu mereka tampil sebagai “menunggu”.',
musicLink: 'Tautan musik',
nameCrew: 'Beri nama crew-mu',
nameCrewDesc: 'Crew butuh nama sebelum kamu lanjut.',
nameCrewFirst: 'Beri nama crew-mu dulu',
nameHint: 'Satu-satunya hal yang benar-benar kamu butuhkan. Bisa diubah nanti.',
namePlaceholder: 'mis. Backyard Bandits',
nameRequired: 'Nama wajib',
nameRequiredDesc: 'Beri nama crew-mu.',
nip05DescA: 'Handle yang dapat diverifikasi yang kamu kendalikan di domain apa pun, mis.',
nip05DescB: '. Ini diverifikasi terhadap kunci pendiri crew ini, dan kamu bisa menambahkan beberapa — masing-masing menampilkan centang hijau saat domainnya mengonfirmasi.',
nip05Label: 'NIP-05 Crew',
nip05Placeholder: 'crew@domainmu.com',
nip05Add: 'Tambah',
nip05Invalid: 'Masukkan handle seperti crew@domainmu.com',
nip05TooMany: 'Kamu bisa menambahkan hingga {{count}} handle.',
nip05Unverified: 'Belum diperiksa',
nip05Remove: 'Hapus {{handle}}',
notAKeyA: 'Itu tampaknya belum seperti kunci Nostr — tempel',
notAKeyB: ',',
notAKeyC: ', atau pubkey hex.',
onlyYouTubeInstagram: 'Hanya tautan YouTube dan Instagram yang didukung.',
openCall: 'Open Call',
openCallDescA: 'Mencari filmer, editor, atau darah baru? Kirim panggilan — ini tampil di halaman crew-mu agar orang yang cocok dari',
openCallDescB: 'bisa menghubungi.',
optional: '· opsional',
optionalParen: '(opsional)',
otherSocials: 'Media Sosial Lain',
otherSocialsDesc: 'Tambahkan sebanyak yang kamu suka — YouTube, TikTok, Discord, Telegram, dll.',
ownVisibility: 'visibilitas sendiri',
progress: 'Kemajuan',
publicWord: 'Publik',
publishedToScene: 'Dipublikasikan ke scene.',
publishFailed: 'Gagal mempublikasikan',
publishing: 'Mempublikasikan...',
ready: 'Siap',
readyToRollA: 'Siap jalan — tekan',
readyToRollB: 'kapan pun kamu mau.',
removeAdminRole: 'Hapus peran admin',
removeMember: 'Hapus anggota',
removeSocial: 'Hapus tautan sosial',
removeVibe: 'Hapus {{vibe}}',
roles: 'Peran:',
sasquatch: 'Sasquatch',
saveCrew: 'Simpan Crew',
skipToEnd: 'Lompat ke akhir',
socialPlaceholder: '@username atau tautan',
sponsorDesc: 'Jika toko lokal mendukung crew-mu, pilih mereka di sini untuk menampilkan banner "Disponsori oleh" yang menautkan ke toko mereka.',
stepAria: 'Langkah {{step}}: {{title}}',
stepBasics: 'Dasar-dasar',
stepBasicsShort: 'Dasar',
stepBasicsHint: 'Hanya yang penting — kamu bisa membuat crew hanya dengan langkah ini.',
stepVibe: 'Identitas & Vibe',
stepVibeShort: 'Vibe',
stepVibeHint: 'Bagaimana crew-mu tampil di seluruh aplikasi. Semua opsional.',
stepSquad: 'Skuad & Spot',
stepSquadShort: 'Skuad',
stepSquadHint: 'Tambahkan orang-orangmu dan home turf-mu. Kamu selalu bisa melakukannya nanti.',
stepExtras: 'Ekstra',
stepExtrasShort: 'Ekstra',
stepExtrasHint: 'Peningkatan untuk nanti — lewati apa pun yang kamu tidak yakin.',
extrasAllOptional: 'Semua di langkah ini opsional.',
groupIdentity: 'Identitas',
groupIdentityHint: 'Handle, tautan',
groupAi: 'Sasquatch AI',
groupShowcase: 'Showcase',
groupPayments: 'Pembayaran & kas',
groupIntegrations: 'Integrasi',
groupAdvanced: 'Lanjutan',
groupAdvancedHint: 'eksperimental',
pro: 'Pro',
agentProNote: 'Didukung Sasquatch. Pro mendapat model terbaik; tanpa Pro ia memakai fallback gratis.',
stepOf: 'Langkah {{step}} dari {{total}}',
treasuryDescA: 'Kumpulkan sats untuk tujuan bersama — memperbaiki spot DIY lokal, perjalanan crew, hadiah kontes. Ini tujuan Lightning yang transparan; Zap langsung',
treasuryDescStrong: 'ke dompetmu',
treasuryDescB: '(via alamat Lightning profilmu). SkateSpots tidak pernah menahan dana.',
upload: 'Unggah',
uploadFailed: 'Gagal mengunggah',
useCurrentLocation: 'Gunakan lokasi saat ini',
vibeLabel: 'Vibe / Fokus',
videoDescA: 'Part penuh, montase, atau klip terbaru crew-mu. Tempel tautan',
videoDescB: '— ini akan diputar langsung di halaman crew-mu.',
visibilityDescA: 'Setiap anggota mengontrol',
visibilityDescB: 'mereka — saat mereka mengonfirmasi dari kunci mereka, mereka bisa memilih',
visibilityDescC: '— disembunyikan dari orang luar). Kamu tidak bisa mengaturnya untuk mereka; itu keputusan mereka.',
website: 'Situs Web',
yourRoles: 'Peranmu (Team Leader)',
youtubeDetected: 'Video YouTube terdeteksi',
invalidUrl: 'Masukkan tautan yang valid (mis. https://example.com).',
},
groupConversation: {
seoTitle: 'Chat grup - SkateSpots',
invalidLink: 'Tautan chat grup ini tidak valid.',
loginTitle: 'Masuk untuk melihat grup ini',
secureSignerTitle: 'Perlu penandatangan aman',
secureSignerDesc: 'Pesan grup memerlukan penandatangan yang mendukung NIP-44.',
encryptedGroup: 'Grup terenkripsi ujung-ke-ujung',
empty: 'Belum ada pesan — sapa grupnya.',
placeholder: 'Kirim pesan ke grup...',
},
hero: {
established: 'Berdiri {{year}}',
teamLeader: 'Team Leader: {{name}}',
ledBy: 'Dipimpin oleh',
},
inviteCard: {
acceptedTitle: 'Undangan diterima 🛹',
acceptedDesc: 'Pendiri crew mengonfirmasi anggota di {{crew}}. Kamu akan muncul di roster setelah mereka menyetujui.',
couldNotAccept: 'Tidak dapat menerima',
couldNotDecline: 'Tidak dapat menolak',
acceptedDone: 'Diterima —',
confirmsMembers: 'mengonfirmasi anggota',
declinedDone: 'Menolak undangan ke {{crew}}',
invitedYou: 'mengundangmu untuk bergabung',
admin: 'Admin',
accept: 'Terima',
decline: 'Tolak',
},
inviteDialog: {
messageIntro: 'Yo — gabung crew {{crew}} di SkateSpots 🛹',
messageBody: 'Masuk dengan kunci Nostr-mu, lalu minta bergabung dari halaman crew.',
copyFailed: 'Gagal menyalin',
shareTitle: 'Gabung {{crew}}',
sentTitle: 'Undangan terkirim! 🛹',
sentDesc: 'Mereka akan mendapat notifikasi untuk menerima atau menolak.',
couldNotSend: 'Tidak dapat mengirim undangan',
trigger: 'Undang',
title: 'Undang ke {{crew}}',
description: 'Kirim undangan ke kunci Nostr seseorang, atau bagikan tautan.',
sendTab: 'Kirim undangan',
shareTab: 'Bagikan tautan',
npubLabel: 'npub Skater',
invalidNpub: 'Itu tampaknya bukan npub yang valid.',
noteLabel: 'Catatan',
optional: '(opsional)',
notePlaceholder: 'Ayo skate bersama kami…',
inviteAsAdmin: 'Undang sebagai admin',
inviteAsAdminDesc: 'Bisa mengelola crew & mengundang orang lain.',
sendButton: 'Kirim undangan',
sendFooter: 'Mereka akan mendapat notifikasi untuk menerima atau menolak. Keanggotaan baru dihitung setelah mereka menerima.',
inviteLink: 'Tautan undangan',
messageLabel: 'Pesan',
copyMessage: 'Salin pesan',
founderHint: 'Sebagai pendiri kamu juga bisa menambahkan kunci anggota langsung, lalu mereka mengonfirmasi.',
addMemberSettings: 'Tambah anggota di pengaturan crew',
},
joinRequest: {
moreCount: '+{{count}} lagi',
addedTitle: 'Menambahkan {{name}} ke {{crew}} 🛹',
addedDesc: 'Mereka akan mengonfirmasi dari sisi mereka untuk tampil sebagai anggota.',
vouchedTitle: 'Kamu menjamin {{name}} 🤝',
vouchedDesc: 'Pendiri {{crew}} akan melihat dukunganmu dan bisa menambahkan mereka.',
couldNotEndorse: 'Tidak dapat mendukung',
endorsedDoneA: 'Kamu menjamin',
endorsedDoneB: '— pendiri akan mengonfirmasi',
vouchedBy: 'Dijamin oleh',
approveAndAdd: 'Setujui & tambahkan',
addToCrew: 'Tambahkan ke crew',
vouchedWaiting: 'Dijamin — menunggu pendiri',
vouchForThem: 'Jamin mereka',
leadershipOnly: 'Hanya pimpinan crew.',
adminHelp: 'Admin tidak bisa menambahkan anggota langsung — menjamin memberi tahu pendiri bahwa kamu mendukung rider ini.',
},
leadership: {
teamLeader: 'Team Leader',
captain: 'Kapten',
verifiedMember: 'Anggota terverifikasi',
messageName: 'Kirim pesan ke {{name}}',
title: 'Kepemimpinan',
captainsOne: '{{count}} Kapten',
captainsMany: '{{count}} Kapten',
footer: 'Team Leader menjalankan roster; Kapten membantu mengundang, menyelenggarakan jam, dan menjaga crew tetap rapi.',
},
linkField: {
title: 'Crew Tertaut',
description: 'Menjalankan crew juga? Tautkan agar orang bisa melompat antara studiomu dan crew-mu. Opsional. Tautkan crew ini kembali ke profil dari editor crew dan ini akan menampilkan',
descriptionRest: 'lencana hijau di keduanya.',
none: 'Kamu belum punya crew. Buat satu di halaman Crew untuk menautkannya di sini.',
linkedCrew: 'Crew tertaut ({{id}})',
},
lookingFor: {
title: 'Open Call',
subtitle: 'Crew ini sedang mencari:',
},
memberVisibility: {
updatedTitle: 'Visibilitas diperbarui',
updatedCrew: 'Kamu sekarang hanya terlihat oleh rekan crew.',
updatedPublic: 'Kamu sekarang terlihat publik di crew ini.',
couldNotUpdate: 'Tidak dapat memperbarui',
title: 'Visibilitas kamu di crew ini',
save: 'Simpan visibilitas',
},
newMessage: {
inCrew: 'Di crew-mu: {{crews}}',
crewmate: 'Rekan crew',
following: 'Mengikuti',
invalidKey: 'Itu tampaknya bukan npub atau public key yang valid.',
description: 'Cari orang-orangmu berdasarkan nama, atau tempel npub untuk mengirim pesan kepada siapa pun. Pilih dua atau lebih untuk memulai grup.',
searchPlaceholder: 'Cari nama atau tempel npub1...',
messageThisKey: 'Kirimi kunci ini pesan',
loadingPeople: 'Memuat orang-orangmu...',
noPeople: 'Belum ada rekan crew atau yang diikuti.',
noPeopleHint: 'Tempel npub seseorang di atas untuk memulai percakapan.',
yourCrews: 'Crew-mu',
selected: '{{count}} dipilih',
startGroup: 'Mulai grup ({{count}})',
message: 'Pesan',
},
nip05: {
mismatch: 'Domain ini mengarahkan handle ke kunci Nostr yang berbeda dari pendiri crew. Tidak terverifikasi.',
verified: 'Terverifikasi — domain mengonfirmasi handle ini milik kunci pendiri crew.',
},
requestCollective: {
sentTitle: 'Permintaan terkirim 🤝',
sentDesc: '{{name}} akan melihatnya di notifikasi mereka dan bisa menambahkanmu.',
couldNotSend: 'Tidak dapat mengirim permintaan',
title: 'Gabung kolektif ini',
waiting: 'Permintaan terkirim — menunggu {{name}}.',
askA: 'Minta crew di balik',
askB: 'untuk menambahkanmu ke roster. Mereka akan mendapat notifikasi dan bisa menambahkanmu dengan satu ketukan.',
placeholder: 'Opsional: katakan mengapa kamu cocok…',
sendButton: 'Kirim permintaan',
},
requestToJoin: {
sentTitle: 'Permintaan terkirim! 🛹',
sentDesc: 'Pimpinan {{crew}} akan melihatnya di notifikasi mereka.',
couldNotSend: 'Tidak dapat mengirim permintaan',
trigger: 'Minta bergabung',
title: 'Gabung {{crew}}',
description: 'Memberi tahu pendiri & admin crew agar mereka bisa menambahkanmu.',
placeholder: 'Sapa — di mana kamu skate, siapa yang kamu kenal, mengapa kamu ingin masuk…',
sending: 'Mengirim…',
sendButton: 'Kirim permintaan bergabung',
},
sponsorBanner: {
loading: 'Memuat sponsor…',
sponsoredBy: 'Disponsori oleh',
},
sponsorPicker: {
selected: 'Sponsor dipilih',
setLoading: 'Sponsor disetel (toko memuat…)',
set: 'Sponsor disetel',
clearAria: 'Hapus sponsor',
searchPlaceholder: 'Cari toko skate berdasarkan nama atau kota…',
loading: 'Memuat toko…',
noMatch: 'Tidak ada toko yang cocok — coba pencarian lain.',
none: 'Belum ada toko yang ditemukan.',
},
treasury: {
title: 'Kas Crew',
ofGoal: 'dari tujuan {{target}}',
goalReached: 'Tujuan tercapai!',
funded: '{{percent}}% terdanai',
contributionOne: '{{count}} kontribusi',
contributionMany: '{{count}} kontribusi',
daysLeft: 'tersisa {{days}}h',
closed: 'ditutup',
nonCustodial: 'Non-kustodial · Zap langsung ke dompet Lightning crew',
},
userStatus: {
atSpot: '📍 Di sebuah spot',
autoClears: '⏱️ Otomatis hilang dalam {{min}} mnt',
},
video: {
title: 'The Part',
fullVideo: 'Video penuh · montase',
latestClip: 'Klip terbaru',
watch: 'Tonton',
iframeTitle: '{{crew}} — video',
playAria: 'Putar video {{crew}}',
thumbAlt: 'Thumbnail video {{crew}}',
instagramTitle: 'Klip Instagram',
},
vouch: {
removedTitle: 'Jaminan dihapus',
vouchedTitle: 'Dijamin!',
removedDesc: 'Kamu tidak lagi menjamin {{name}}.',
vouchedDesc: 'Kamu menjamin {{name}}. Scene memercayai anggotanya sendiri.',
couldNotVouch: 'Tidak dapat menjamin',
title: 'Jaminan Scene',
sceneVerified: 'Terverifikasi scene',
vouched: 'Dijamin',
newUnvouched: 'Baru · belum dijamin',
checking: 'Memeriksa scene…',
empty: 'Belum ada jaminan. Jaminan dari skater di lingkaramu adalah sinyal terbaik bahwa seseorang asli — bukan orang acak yang kebetulan lewat.',
countOne: '{{count}} jaminan',
countMany: '{{count}} jaminan',
trusted: '{{count}} dari skater di web kepercayaanmu',
remove: 'Hapus jaminan',
vouchFor: 'Jamin {{name}}',
ownerNote: 'Skater yang mengenal karyamu bisa menjaminmu di sini.',
},
},
};
export default idBatch5;