feat: sponsorship opt-in and Bitcoin grantmaker inquiry
This commit is contained in:
parent
8a6968735c
commit
3f35a6f3a4
53 changed files with 736 additions and 10 deletions
|
|
@ -20,7 +20,7 @@ import { Input } from '@/components/ui/input';
|
|||
import { Textarea } from '@/components/ui/textarea';
|
||||
import { Switch } from '@/components/ui/switch';
|
||||
import { Label } from '@/components/ui/label';
|
||||
import { Loader2, Upload, Zap, ShieldCheck, AlertCircle, Bitcoin, Award, MessageSquareLock, UserRound, X, Plus, Bot, BadgeCheck, HelpCircle, Server, AtSign } from 'lucide-react';
|
||||
import { Loader2, Upload, Zap, ShieldCheck, AlertCircle, Bitcoin, Award, MessageSquareLock, UserRound, Handshake, X, Plus, Bot, BadgeCheck, HelpCircle, Server, AtSign } from 'lucide-react';
|
||||
import { NSchema as n, type NostrMetadata } from '@nostrify/nostrify';
|
||||
import { useQueryClient } from '@tanstack/react-query';
|
||||
import { useUploadFile } from '@/hooks/useUploadFile';
|
||||
|
|
@ -72,6 +72,8 @@ export const EditProfileForm: React.FC = () => {
|
|||
// pointer formats as Settings → Coordinator (nprofile / cordn.net link /
|
||||
// npub / hex) as well as an http(s) URL — this is the discovery field.
|
||||
const [cordn, setCordn] = useState('');
|
||||
const [openToSponsorships, setOpenToSponsorships] = useState(false);
|
||||
const [sponsorNote, setSponsorNote] = useState('');
|
||||
|
||||
// Extra personal NIP-05 handles — stored in a separate kind-30078 record so
|
||||
// another client re-saving the profile can't drop them.
|
||||
|
|
@ -131,6 +133,8 @@ export const EditProfileForm: React.FC = () => {
|
|||
);
|
||||
}
|
||||
if (typeof raw.cordn === 'string') setCordn(raw.cordn);
|
||||
setOpenToSponsorships(raw.sponsorships_open === true);
|
||||
if (typeof raw.sponsorships_note === 'string') setSponsorNote(raw.sponsorships_note);
|
||||
}
|
||||
}, [metadata, form]);
|
||||
|
||||
|
|
@ -252,6 +256,17 @@ export const EditProfileForm: React.FC = () => {
|
|||
// Retire the legacy field now that badges supersede it.
|
||||
delete data.sponsors;
|
||||
|
||||
// Sponsorship opt-in (custom kind-0 fields). The profile only claims
|
||||
// this when the skater explicitly turned it on.
|
||||
if (openToSponsorships) {
|
||||
data.sponsorships_open = true;
|
||||
if (sponsorNote.trim()) data.sponsorships_note = sponsorNote.trim();
|
||||
else delete data.sponsorships_note;
|
||||
} else {
|
||||
delete data.sponsorships_open;
|
||||
delete data.sponsorships_note;
|
||||
}
|
||||
|
||||
// Cordn contact link (custom field).
|
||||
if (cordnTrimmed) {
|
||||
// Normalise a bare pointer (nprofile/npub/hex) to Cordn's canonical
|
||||
|
|
@ -402,6 +417,41 @@ export const EditProfileForm: React.FC = () => {
|
|||
)}
|
||||
/>
|
||||
|
||||
{/* Sponsorship opt-in — explicit consent, never inferred from activity. */}
|
||||
<div className="space-y-3 rounded-xl border border-pink-500/20 bg-pink-500/[0.04] p-3">
|
||||
<div className="flex items-center justify-between gap-3">
|
||||
<div className="min-w-0">
|
||||
<Label htmlFor="profile-open-sponsorships" className="flex items-center gap-2 text-sm font-semibold">
|
||||
<Handshake className="h-4 w-4 text-pink-400" />
|
||||
{t('settingsUi.editProfile.openToSponsorships')}
|
||||
</Label>
|
||||
<p className="mt-1 text-xs text-muted-foreground">
|
||||
{t('settingsUi.editProfile.openToSponsorshipsHint')}
|
||||
</p>
|
||||
</div>
|
||||
<Switch
|
||||
id="profile-open-sponsorships"
|
||||
checked={openToSponsorships}
|
||||
onCheckedChange={setOpenToSponsorships}
|
||||
/>
|
||||
</div>
|
||||
{openToSponsorships && (
|
||||
<div className="space-y-1.5">
|
||||
<Label htmlFor="profile-sponsor-note" className="text-xs font-bold uppercase tracking-wide text-pink-300">
|
||||
{t('settingsUi.editProfile.sponsorNote')}
|
||||
</Label>
|
||||
<Textarea
|
||||
id="profile-sponsor-note"
|
||||
value={sponsorNote}
|
||||
onChange={(event) => setSponsorNote(event.target.value)}
|
||||
placeholder={t('settingsUi.editProfile.sponsorNotePlaceholder')}
|
||||
maxLength={180}
|
||||
rows={2}
|
||||
/>
|
||||
</div>
|
||||
)}
|
||||
</div>
|
||||
|
||||
{/* NIP-05 — the verified-handle field. Given real prominence + live
|
||||
verification feedback so people know if it's actually working. */}
|
||||
<FormField
|
||||
|
|
|
|||
|
|
@ -353,6 +353,10 @@ const batch3 = {
|
|||
"bannerImage": "Imatge de portada",
|
||||
"bannerDesc": "Una imatge ampla per a la part superior del teu perfil.",
|
||||
"website": "Lloc web",
|
||||
"openToSponsorships": "Obert a patrocinis",
|
||||
"openToSponsorshipsHint": "Mostra una targeta de patrocini/col·laboració al teu perfil. No es comparteix res fins que algú t'escriu.",
|
||||
"sponsorNote": "Nota de patrocini (opcional)",
|
||||
"sponsorNotePlaceholder": "p. ex. Obert a socis de taules, sabates, viatges i esdeveniments.",
|
||||
"bitcoinTitle": "Bitcoin i pagaments",
|
||||
"bitcoinDesc": "Deixa que la gent t'enviï zaps, propines i pagaments directament, sense intermediaris.",
|
||||
"lightningAddress": "Adreça Lightning",
|
||||
|
|
|
|||
|
|
@ -833,6 +833,21 @@ const batch6 = {
|
|||
our: "LA NOSTRA",
|
||||
community: "COMUNITAT",
|
||||
heroDesc: "SkateSpots està fet per a la comunitat i per la comunitat. Suportadors, col·laboradors, socis i amics que el mantenen gratuït i descentralitzat.",
|
||||
grantsSection: "Entitats finançadores de Bitcoin",
|
||||
grantsSectionDesc: "Per a organitzacions que atorguen subvencions a projectes Bitcoin de codi obert.",
|
||||
grantsTitle: "Oberts a patrocinis · Entitats finançadores de Bitcoin",
|
||||
grantsDisclaimer: "Vols donar a aquest projecte? Omple el formulari. No per fer-nos KYC a nosaltres — sinó per fer-te KYC a TU.",
|
||||
grantsDisclaimerDesc: "Aquest canal és només per a entitats finançadores que fan KYC/KYB als seus beneficiaris. Si ets un skater que només vol donar, usa les vies Lightning, Silent Payments o Angor de dalt — ningú no necessita el teu passaport.",
|
||||
grantsOrg: "Organització",
|
||||
grantsContact: "Contacte (npub, correu electrònic o nom d'usuari)",
|
||||
grantsWebsite: "Lloc web",
|
||||
grantsProgram: "Programa / ronda de subvencions",
|
||||
grantsSize: "Import de la subvenció",
|
||||
grantsKyc: "Procés de KYC / KYB",
|
||||
grantsFund: "Què vols finançar?",
|
||||
grantsAck: "Confirmo que som una entitat finançadora que fa KYC/KYB als seus beneficiaris.",
|
||||
grantsSend: "Obrir conversa sobre la subvenció",
|
||||
grantsNote: "Obre un missatge privat al propietari de SkateSpots. No es desa res en aquesta pàgina.",
|
||||
backAngor: "Dona'ns suport a Angor",
|
||||
backers: "Suportadors",
|
||||
backersDesc: "Skaters que han donat suport a SkateSpots — finançament on-chain via Angor i zaps Lightning al projecte.",
|
||||
|
|
@ -963,12 +978,14 @@ const batch6 = {
|
|||
nip05NotVerified: "NIP-05 no verificat amb aquesta clau",
|
||||
message: "Missatge",
|
||||
eventsHosted: "Esdeveniments organitzats",
|
||||
openToSponsorships: "Obert a patrocinis",
|
||||
forSponsors: "Per a patrocinadors i col·laboracions",
|
||||
sponsorPitch: "Patrocini, col·laboració, foto/vídeo o esdeveniment? Comença una conversa.",
|
||||
startCollab: "Inicia un xat de col·laboració",
|
||||
viewRiderCard: "Veure la fitxa del patinador",
|
||||
collabMessage: "Hola {{name}}, voldria parlar d'un patrocini o d'una col·laboració.",
|
||||
followers: "Seguidors",
|
||||
followersHint: "Llistes de seguidors reportades pels relés: no són analítiques auditades.",
|
||||
following: "Seguint",
|
||||
follow: "Segueix",
|
||||
unfollow: "Deixa de seguir",
|
||||
|
|
|
|||
|
|
@ -349,6 +349,10 @@ const csBatch3 = {
|
|||
bannerImage: "Obrázek banneru",
|
||||
bannerDesc: "Široký obrázek pro horní část tvého profilu.",
|
||||
website: "Web",
|
||||
openToSponsorships: "Otevřeno sponzorům",
|
||||
openToSponsorshipsHint: "Na profilu zobrazí kartu pro sponzory a spolupráce. Nic se nesdílí, dokud ti někdo nenapíše.",
|
||||
sponsorNote: "Poznámka ke sponzoringu (volitelné)",
|
||||
sponsorNotePlaceholder: "např. Otevřeno partnerům pro prkna, boty, cestování a akce.",
|
||||
bitcoinTitle: "Bitcoin a platby",
|
||||
bitcoinDesc: "Nech lidi posílat ti zaps, spropitné a platby přímo — bez prostředníka.",
|
||||
lightningAddress: "Lightning adresa",
|
||||
|
|
|
|||
|
|
@ -807,6 +807,21 @@ export const csBatch4 = {
|
|||
our: "NAŠE",
|
||||
community: "KOMUNITA",
|
||||
heroDesc: "SkateSpots je tvořen komunitou a pro komunitu. Podporovatelé, spolupracovníci, partneři a přátelé, kteří drží tohle zdarma a decentralizované.",
|
||||
grantsSection: "Poskytovatelé grantů na Bitcoin",
|
||||
grantsSectionDesc: "Pro organizace, které udělují granty otevřeným bitcoinovým projektům.",
|
||||
grantsTitle: "Otevřeno sponzorství · Poskytovatelé grantů na Bitcoin",
|
||||
grantsDisclaimer: "Chceš tomuto projektu přispět? Vyplň formulář. Ne abychom prošli KYC my — ale abys prošel KYC TY.",
|
||||
grantsDisclaimerDesc: "Tato kolonka je jen pro poskytovatele grantů, kteří dělají KYC/KYB svým příjemcům. Pokud jsi skejťák, který chce jen přispět, použij výše uvedené cesty Lightning, Silent Payments nebo Angor — tvůj pas nikdo nepotřebuje.",
|
||||
grantsOrg: "Organizace",
|
||||
grantsContact: "Kontakt (npub, e-mail nebo přezdívka)",
|
||||
grantsWebsite: "Web",
|
||||
grantsProgram: "Grantový program / kolo",
|
||||
grantsSize: "Velikost grantu",
|
||||
grantsKyc: "Proces KYC / KYB",
|
||||
grantsFund: "Co bys chtěl financovat?",
|
||||
grantsAck: "Potvrzuji, že jsme poskytovatel grantů, který dělá KYC/KYB svým příjemcům.",
|
||||
grantsSend: "Zahájit rozhovor o grantu",
|
||||
grantsNote: "Otevře soukromou zprávu majiteli SkateSpots. Na této stránce se nic neukládá.",
|
||||
backAngor: "Podpoř nás na Angor",
|
||||
backers: "Podporovatelé",
|
||||
backersDesc: "Skejťáci, kteří podpořili SkateSpots — on-chain financování přes Angor a Lightning zaps pro projekt.",
|
||||
|
|
@ -937,12 +952,14 @@ export const csBatch4 = {
|
|||
nip05NotVerified: "NIP-05 neověřeno vůči tomuto klíči",
|
||||
message: "Zpráva",
|
||||
eventsHosted: "Uspořádané akce",
|
||||
openToSponsorships: "Otevřeno sponzorům",
|
||||
forSponsors: "Pro sponzory a spolupráce",
|
||||
sponsorPitch: "Sponzorství, spolupráce, foto/video nebo akce? Začni konverzaci.",
|
||||
startCollab: "Začít chat o spolupráci",
|
||||
viewRiderCard: "Zobrazit kartu jezdce",
|
||||
collabMessage: "Ahoj {{name}}, chtěl bych mluvit o sponzorství nebo spolupráci.",
|
||||
followers: "Sledující",
|
||||
followersHint: "Seznamy sledujících hlášené relayi — nejde o auditovanou analytiku.",
|
||||
following: "Sleduji",
|
||||
follow: "Sledovat",
|
||||
unfollow: "Přestat sledovat",
|
||||
|
|
|
|||
|
|
@ -349,6 +349,10 @@ const deBatch3 = {
|
|||
bannerImage: "Bannerbild",
|
||||
bannerDesc: "Ein breites Bild für den oberen Bereich deines Profils.",
|
||||
website: "Website",
|
||||
openToSponsorships: "Offen für Sponsoring",
|
||||
openToSponsorshipsHint: "Zeigt eine Sponsoring-/Kooperationskarte in deinem Profil. Es wird nichts geteilt, bis dir jemand schreibt.",
|
||||
sponsorNote: "Sponsoring-Notiz (optional)",
|
||||
sponsorNotePlaceholder: "z. B. offen für Partner bei Decks, Schuhen, Reisen und Events.",
|
||||
bitcoinTitle: "Bitcoin & Zahlungen",
|
||||
bitcoinDesc: "Lass andere dich direkt zappen, bezahlen und dir Trinkgeld geben — ohne Mittelsmann.",
|
||||
lightningAddress: "Lightning-Adresse",
|
||||
|
|
|
|||
|
|
@ -807,6 +807,21 @@ const deBatch4 = {
|
|||
our: "UNSERE",
|
||||
community: "COMMUNITY",
|
||||
heroDesc: "SkateSpots wird von und für die Community gebaut. Unterstützer, Mitwirkende, Partner und Freunde, die das hier kostenlos und dezentral halten.",
|
||||
grantsSection: "Bitcoin-Förderorganisationen",
|
||||
grantsSectionDesc: "Für Organisationen, die Zuschüsse an quelloffene Bitcoin-Projekte vergeben.",
|
||||
grantsTitle: "Offen für Sponsoring · Bitcoin-Förderorganisationen",
|
||||
grantsDisclaimer: "Du willst dieses Projekt unterstützen? Füll das Formular aus. Nicht um uns zu KYCen – sondern um DICH zu KYCen.",
|
||||
grantsDisclaimerDesc: "Dieser Bereich ist nur für Förderorganisationen, die bei ihren Empfängern KYC/KYB durchführen. Wenn du ein Skater bist, der einfach nur spenden will, nutz die Lightning-, Silent-Payments- oder Angor-Wege oben – niemand braucht deinen Pass.",
|
||||
grantsOrg: "Organisation",
|
||||
grantsContact: "Kontakt (npub, E-Mail oder Nutzername)",
|
||||
grantsWebsite: "Webseite",
|
||||
grantsProgram: "Förderprogramm / Runde",
|
||||
grantsSize: "Förderhöhe",
|
||||
grantsKyc: "KYC-/KYB-Verfahren",
|
||||
grantsFund: "Was möchtest du finanzieren?",
|
||||
grantsAck: "Ich bestätige, dass wir eine Förderorganisation sind, die bei unseren Empfängern KYC/KYB durchführt.",
|
||||
grantsSend: "Fördergespräch starten",
|
||||
grantsNote: "Öffnet eine private Direktnachricht an den Betreiber von SkateSpots. Auf dieser Seite wird nichts gespeichert.",
|
||||
backAngor: "Unterstütze uns auf Angor",
|
||||
backers: "Unterstützer",
|
||||
backersDesc: "Skater, die SkateSpots unterstützt haben – On-Chain-Finanzierung über Angor und Lightning-Zaps an das Projekt.",
|
||||
|
|
@ -937,12 +952,14 @@ const deBatch4 = {
|
|||
nip05NotVerified: "NIP-05 nicht gegen diesen Schlüssel verifiziert",
|
||||
message: "Nachricht",
|
||||
eventsHosted: "Organisierte Events",
|
||||
openToSponsorships: "Offen für Sponsoring",
|
||||
forSponsors: "Für Sponsoren & Kooperationen",
|
||||
sponsorPitch: "Sponsoring, Kooperation, Foto/Video oder Event? Starte ein Gespräch.",
|
||||
startCollab: "Kooperations-Chat starten",
|
||||
viewRiderCard: "Skateboarder-Karte ansehen",
|
||||
collabMessage: "Hi {{name}}, ich würde gern über ein Sponsoring oder eine Kooperation sprechen.",
|
||||
followers: "Follower",
|
||||
followersHint: "Von Relays gemeldete Follower-Listen – keine geprüften Analysedaten.",
|
||||
following: "Folge ich",
|
||||
follow: "Folgen",
|
||||
unfollow: "Entfolgen",
|
||||
|
|
|
|||
|
|
@ -349,6 +349,10 @@ const elBatch3 = {
|
|||
bannerImage: "Εικόνα banner",
|
||||
bannerDesc: "Μια φαρδιά εικόνα για το πάνω μέρος του προφίλ σου.",
|
||||
website: "Ιστοσελίδα",
|
||||
openToSponsorships: "Ανοιχτός σε χορηγίες",
|
||||
openToSponsorshipsHint: "Εμφανίζει μια κάρτα χορηγίας/συνεργασίας στο προφίλ σου. Τίποτα δεν κοινοποιείται μέχρι να σου στείλει κάποιος μήνυμα.",
|
||||
sponsorNote: "Σημείωση χορηγίας (προαιρετικό)",
|
||||
sponsorNotePlaceholder: "π.χ. Ανοιχτός σε συνεργάτες για σανίδες, παπούτσια, ταξίδια και εκδηλώσεις.",
|
||||
bitcoinTitle: "Bitcoin & Πληρωμές",
|
||||
bitcoinDesc: "Άφησε τους άλλους να σου κάνουν zap, tip και να σε πληρώνουν απευθείας — χωρίς μεσάζοντα.",
|
||||
lightningAddress: "Διεύθυνση Lightning",
|
||||
|
|
|
|||
|
|
@ -807,6 +807,21 @@ const elBatch4 = {
|
|||
our: "Η ΔΙΚΗ ΜΑΣ",
|
||||
community: "ΚΟΙΝΟΤΗΤΑ",
|
||||
heroDesc: "Το SkateSpots χτίζεται από και για την κοινότητα. Υποστηρικτές, συνεργάτες, partners και φίλοι που το κρατούν δωρεάν και αποκεντρωμένο.",
|
||||
grantsSection: "Χρηματοδότες του Bitcoin",
|
||||
grantsSectionDesc: "Για οργανισμούς που χορηγούν επιχορηγήσεις σε έργα Bitcoin ανοιχτού κώδικα.",
|
||||
grantsTitle: "Ανοιχτό σε χορηγίες · Χρηματοδότες του Bitcoin",
|
||||
grantsDisclaimer: "Θέλεις να δωρίσεις σε αυτό το έργο; Συμπλήρωσε τη φόρμα. Όχι για να μας κάνουν KYC — αλλά για να σου κάνουν KYC ΕΣΕΝΑ.",
|
||||
grantsDisclaimerDesc: "Αυτό το κανάλι είναι μόνο για χρηματοδότες που κάνουν KYC/KYB στους αποδέκτες τους. Αν είσαι skater και θέλεις απλώς να δωρίσεις, χρησιμοποίησε τις διαδρομές Lightning, Silent Payments ή Angor παραπάνω — κανείς δεν χρειάζεται το διαβατήριό σου.",
|
||||
grantsOrg: "Οργανισμός",
|
||||
grantsContact: "Επικοινωνία (npub, ηλεκτρονικό ταχυδρομείο ή ψευδώνυμο)",
|
||||
grantsWebsite: "Ιστότοπος",
|
||||
grantsProgram: "Πρόγραμμα / γύρος επιχορηγήσεων",
|
||||
grantsSize: "Μέγεθος επιχορήγησης",
|
||||
grantsKyc: "Διαδικασία KYC / KYB",
|
||||
grantsFund: "Τι θα ήθελες να χρηματοδοτήσεις;",
|
||||
grantsAck: "Επιβεβαιώνω ότι είμαστε χρηματοδότης που κάνει KYC/KYB στους αποδέκτες του.",
|
||||
grantsSend: "Άνοιγμα συζήτησης για επιχορήγηση",
|
||||
grantsNote: "Ανοίγει ιδιωτικό μήνυμα στον ιδιοκτήτη του SkateSpots. Δεν αποθηκεύεται τίποτα σε αυτή τη σελίδα.",
|
||||
backAngor: "Στήριξέ μας στο Angor",
|
||||
backers: "Υποστηρικτές",
|
||||
backersDesc: "Skaters που στήριξαν το SkateSpots — χρηματοδότηση on-chain μέσω Angor και Lightning zaps στο έργο.",
|
||||
|
|
@ -937,12 +952,14 @@ const elBatch4 = {
|
|||
nip05NotVerified: "Το NIP-05 δεν επαληθεύτηκε με αυτό το κλειδί",
|
||||
message: "Μήνυμα",
|
||||
eventsHosted: "Εκδηλώσεις που διοργάνωσες",
|
||||
openToSponsorships: "Ανοιχτός σε χορηγίες",
|
||||
forSponsors: "Για χορηγούς και συνεργασίες",
|
||||
sponsorPitch: "Χορηγία, συνεργασία, φωτογραφία/βίντεο ή εκδήλωση; Ξεκίνα μια συζήτηση.",
|
||||
startCollab: "Έναρξη συνομιλίας συνεργασίας",
|
||||
viewRiderCard: "Προβολή κάρτας σκέιτερ",
|
||||
collabMessage: "Γεια σου {{name}}, θα ήθελα να μιλήσουμε για χορηγία ή συνεργασία.",
|
||||
followers: "Ακόλουθοι",
|
||||
followersHint: "Λίστες ακολούθων από τα relays — όχι ελεγμένα αναλυτικά στοιχεία.",
|
||||
following: "Ακολουθείς",
|
||||
follow: "Ακολούθησε",
|
||||
unfollow: "Σταμάτα να ακολουθείς",
|
||||
|
|
|
|||
|
|
@ -4838,6 +4838,10 @@ settingsUi: {
|
|||
bannerImage: 'Banner image',
|
||||
bannerDesc: 'A wide image for the top of your profile.',
|
||||
website: 'Website',
|
||||
openToSponsorships: 'Open to sponsorships',
|
||||
openToSponsorshipsHint: 'Shows a sponsor/collab card on your profile. Nothing is shared until someone messages you.',
|
||||
sponsorNote: 'Sponsorship note (optional)',
|
||||
sponsorNotePlaceholder: 'e.g. Open to deck, shoe, travel and event partners.',
|
||||
bitcoinTitle: 'Bitcoin & Payments',
|
||||
bitcoinDesc: 'Let people zap, tip and pay you directly — no middleman.',
|
||||
lightningAddress: 'Lightning address',
|
||||
|
|
@ -6615,6 +6619,21 @@ walletUi: {
|
|||
our: 'OUR',
|
||||
community: 'COMMUNITY',
|
||||
heroDesc: 'SkateSpots is built by and for the community. Supporters, collaborators, partners and friends keeping this free and decentralized.',
|
||||
grantsSection: 'Bitcoin grantmakers',
|
||||
grantsSectionDesc: 'For organizations that issue grants to open-source Bitcoin projects.',
|
||||
grantsTitle: 'Open to sponsorships · Bitcoin grantmakers',
|
||||
grantsDisclaimer: 'Want to donate to this project? Fill the form. Not to KYC us — to KYC YOU.',
|
||||
grantsDisclaimerDesc: "This lane is only for grantmakers that KYC/KYB their grantees. If you're a skater who just wants to donate, use the Lightning, Silent Payments or Angor rails above — nobody needs your passport.",
|
||||
grantsOrg: 'Organization',
|
||||
grantsContact: 'Contact (npub, email or handle)',
|
||||
grantsWebsite: 'Website',
|
||||
grantsProgram: 'Grant program / round',
|
||||
grantsSize: 'Grant size',
|
||||
grantsKyc: 'KYC / KYB process',
|
||||
grantsFund: 'What would you like to fund?',
|
||||
grantsAck: 'I confirm we are a grantmaker that KYC/KYB our grantees.',
|
||||
grantsSend: 'Open grant conversation',
|
||||
grantsNote: 'Opens a private DM to the SkateSpots owner. Nothing is stored on this page.',
|
||||
backAngor: 'Back us on Angor',
|
||||
backers: 'Supporters',
|
||||
backersDesc: 'Skaters who backed SkateSpots — on-chain funding via Angor, and Lightning zaps to the project.',
|
||||
|
|
@ -6745,12 +6764,14 @@ walletUi: {
|
|||
nip05NotVerified: 'NIP-05 not verified against this key',
|
||||
message: 'Message',
|
||||
eventsHosted: 'Events hosted',
|
||||
openToSponsorships: 'Open to sponsorships',
|
||||
forSponsors: 'For sponsors & collabs',
|
||||
sponsorPitch: 'Sponsorship, collab, photo/video or event? Start a conversation.',
|
||||
startCollab: 'Start a collab chat',
|
||||
viewRiderCard: 'View rider card',
|
||||
collabMessage: "Hi {{name}}, I'd like to talk about a sponsorship or collaboration.",
|
||||
followers: 'Followers',
|
||||
followersHint: 'Relay-reported follow lists — not audited analytics.',
|
||||
following: 'Following',
|
||||
follow: 'Follow',
|
||||
unfollow: 'Unfollow',
|
||||
|
|
|
|||
|
|
@ -4838,6 +4838,10 @@ settingsUi: {
|
|||
bannerImage: 'Imagen de portada',
|
||||
bannerDesc: 'Una imagen ancha para la parte superior de tu perfil.',
|
||||
website: 'Sitio web',
|
||||
openToSponsorships: 'Abierto a patrocinios',
|
||||
openToSponsorshipsHint: 'Muestra una tarjeta de patrocinio/colaboración en tu perfil. No se comparte nada hasta que alguien te escriba.',
|
||||
sponsorNote: 'Nota de patrocinio (opcional)',
|
||||
sponsorNotePlaceholder: 'p. ej. Abierto a tablas, zapatillas, viajes y eventos.',
|
||||
bitcoinTitle: 'Bitcoin y pagos',
|
||||
bitcoinDesc: 'Deja que te den zaps, propinas y pagos directamente, sin intermediarios.',
|
||||
lightningAddress: 'Dirección Lightning',
|
||||
|
|
@ -6615,6 +6619,21 @@ walletUi: {
|
|||
our: 'NUESTRA',
|
||||
community: 'COMUNIDAD',
|
||||
heroDesc: 'SkateSpots lo construye y lo mantiene la comunidad. Patrocinadores, colaboradores, socios y amigos que lo mantienen libre y descentralizado.',
|
||||
grantsSection: 'Grantmakers de Bitcoin',
|
||||
grantsSectionDesc: 'Para organizaciones que conceden ayudas a proyectos Bitcoin de código abierto.',
|
||||
grantsTitle: 'Abierto a patrocinios · grantmakers de Bitcoin',
|
||||
grantsDisclaimer: '¿Quieres donar a este proyecto? Rellena el formulario. No para hacernos KYC a nosotros, sino para hacerte KYC a TI.',
|
||||
grantsDisclaimerDesc: 'Este canal es solo para grantmakers que hacen KYC/KYB a sus beneficiarios. Si eres un skater que solo quiere donar, usa las vías de Lightning, Silent Payments o Angor de arriba: nadie necesita tu pasaporte.',
|
||||
grantsOrg: 'Organización',
|
||||
grantsContact: 'Contacto (npub, email o usuario)',
|
||||
grantsWebsite: 'Sitio web',
|
||||
grantsProgram: 'Programa / ronda de ayudas',
|
||||
grantsSize: 'Tamaño de la ayuda',
|
||||
grantsKyc: 'Proceso de KYC / KYB',
|
||||
grantsFund: '¿Qué te gustaría financiar?',
|
||||
grantsAck: 'Confirmo que somos un grantmaker que hace KYC/KYB a sus beneficiarios.',
|
||||
grantsSend: 'Abrir conversación de ayuda',
|
||||
grantsNote: 'Abre un DM privado al propietario de SkateSpots. No se guarda nada en esta página.',
|
||||
backAngor: 'Apóyanos en Angor',
|
||||
backers: 'Patrocinadores',
|
||||
backersDesc: 'Patinadores que han apoyado SkateSpots — financiación on-chain vía Angor y zaps Lightning al proyecto.',
|
||||
|
|
@ -6745,12 +6764,14 @@ walletUi: {
|
|||
nip05NotVerified: 'NIP-05 no verificado con esta clave',
|
||||
message: 'Mensaje',
|
||||
eventsHosted: 'Eventos organizados',
|
||||
openToSponsorships: 'Abierto a patrocinios',
|
||||
forSponsors: 'Para patrocinadores y colaboraciones',
|
||||
sponsorPitch: '¿Patrocinio, colaboración, foto/vídeo o evento? Empieza una conversación.',
|
||||
startCollab: 'Iniciar chat de colaboración',
|
||||
viewRiderCard: 'Ver tarjeta de rider',
|
||||
collabMessage: 'Hola {{name}}, me gustaría hablar sobre un patrocinio o una colaboración.',
|
||||
followers: 'Seguidores',
|
||||
followersHint: 'Listas de seguidores reportadas por relays; no son analíticas auditadas.',
|
||||
following: 'Siguiendo',
|
||||
follow: 'Seguir',
|
||||
unfollow: 'Dejar de seguir',
|
||||
|
|
|
|||
|
|
@ -353,6 +353,10 @@ const batch3 = {
|
|||
bannerImage: "Banner irudia",
|
||||
bannerDesc: "Irudi zabal bat zure profilaren goialderako.",
|
||||
website: "Webgunea",
|
||||
openToSponsorships: "Babesleentzako irekita",
|
||||
openToSponsorshipsHint: "Zure profilean babesle/lankidetza txartel bat erakusten du. Ez da ezer partekatzen norbaitek mezua idatzi arte.",
|
||||
sponsorNote: "Babesleei buruzko oharra (aukerakoa)",
|
||||
sponsorNotePlaceholder: "adib. Irekita taula, oinetako, bidaia eta ekitaldietako bazkideentzat.",
|
||||
bitcoinTitle: "Bitcoin eta ordainketak",
|
||||
bitcoinDesc: "Utzi jendeari zuzenean zap egiten, dirua ematen eta ordaintzen — bitartekaririk gabe.",
|
||||
lightningAddress: "Lightning helbidea",
|
||||
|
|
|
|||
|
|
@ -833,6 +833,21 @@ const batch6 = {
|
|||
our: "GURE",
|
||||
community: "KOMUNITATEA",
|
||||
heroDesc: "SkateSpots komunitateak egiten du eta komunitatearentzat da. Babesleek, kolaboratzaileek, bazkideek eta lagunek doakoa eta deszentralizatua mantentzen dute.",
|
||||
grantsSection: "Bitcoin dirulaguntza emaileak",
|
||||
grantsSectionDesc: "Kode irekiko Bitcoin proiektuei dirulaguntzak ematen dizkieten erakundeentzat.",
|
||||
grantsTitle: "Babeslekuetara irekita · Bitcoin dirulaguntza emaileak",
|
||||
grantsDisclaimer: "Proiektu honi eman nahi diozu? Bete formularioa. Ez guri KYC egiteko — ZURI KYC egiteko.",
|
||||
grantsDisclaimerDesc: "Bide hau beren onuradunei KYC/KYB egiten dieten dirulaguntza emaileentzat soilik da. Donatu besterik ez duen skater bat bazara, erabili goiko Lightning, Silent Payments edo Angor bideak — inork ez du zure pasaportearen beharrik.",
|
||||
grantsOrg: "Erakundea",
|
||||
grantsContact: "Kontaktua (npub, helbide elektronikoa edo erabiltzaile-izena)",
|
||||
grantsWebsite: "Webgunea",
|
||||
grantsProgram: "Dirulaguntza programa / txanda",
|
||||
grantsSize: "Dirulaguntzaren zenbatekoa",
|
||||
grantsKyc: "KYC / KYB prozesua",
|
||||
grantsFund: "Zer finantzatu nahi duzu?",
|
||||
grantsAck: "Baieztatzen dut gure onuradunei KYC/KYB egiten dien dirulaguntza emailea garela.",
|
||||
grantsSend: "Hasi dirulaguntzaren elkarrizketa",
|
||||
grantsNote: "SkateSpots-en jabeari mezu pribatua irekitzen dio. Orri honetan ez da ezer gordetzen.",
|
||||
backAngor: "Babestu gaitzazu Angor-en",
|
||||
backers: "Babesleak",
|
||||
backersDesc: "SkateSpots babestu zuten skaterrak — Angor bidezko katean egindako finantzaketa eta proiektura zuzendutako Lightning zapak.",
|
||||
|
|
@ -963,12 +978,14 @@ const batch6 = {
|
|||
nip05NotVerified: "NIP-05 ez da gako honekin egiaztatu",
|
||||
message: "Mezua",
|
||||
eventsHosted: "Antolatutako ekitaldiak",
|
||||
openToSponsorships: "Babesleentzako irekita",
|
||||
forSponsors: "Babesleentzat eta lankidetzetarako",
|
||||
sponsorPitch: "Babesa, lankidetza, argazki/bideoa edo ekitaldia? Hasi solasaldia.",
|
||||
startCollab: "Hasi lankidetza-txata",
|
||||
viewRiderCard: "Ikusi patinatzailearen txartela",
|
||||
collabMessage: "Kaixo {{name}}, babes edo lankidetza bati buruz hitz egin nahi nuke.",
|
||||
followers: "Jarraitzaileak",
|
||||
followersHint: "Relayek jakinarazitako jarraitzaileen zerrendak — ez dira auditutako analisiak.",
|
||||
following: "Jarraitzen",
|
||||
follow: "Jarraitu",
|
||||
unfollow: "Utzi jarraitzeari",
|
||||
|
|
|
|||
|
|
@ -349,6 +349,10 @@ const frBatch3 = {
|
|||
bannerImage: "Image de bannière",
|
||||
bannerDesc: "Une image large pour le haut de votre profil.",
|
||||
website: "Site web",
|
||||
openToSponsorships: "Ouvert au sponsoring",
|
||||
openToSponsorshipsHint: "Affiche une carte sponsoring/collab sur ton profil. Rien n'est partagé tant que personne ne t'écrit.",
|
||||
sponsorNote: "Note de sponsoring (facultatif)",
|
||||
sponsorNotePlaceholder: "p. ex. ouvert aux partenaires decks, chaussures, voyages et événements.",
|
||||
bitcoinTitle: "Bitcoin et paiements",
|
||||
bitcoinDesc: "Laissez les gens vous zapper, vous donner un pourboire et vous payer directement — sans intermédiaire.",
|
||||
lightningAddress: "Adresse Lightning",
|
||||
|
|
|
|||
|
|
@ -807,6 +807,21 @@ const frBatch4 = {
|
|||
our: "NOTRE",
|
||||
community: "COMMUNAUTÉ",
|
||||
heroDesc: "SkateSpots est construit par et pour la communauté. Soutiens, collaborateurs, partenaires et amis qui gardent ce projet gratuit et décentralisé.",
|
||||
grantsSection: "Bailleurs de fonds Bitcoin",
|
||||
grantsSectionDesc: "Pour les organisations qui accordent des subventions à des projets Bitcoin libres.",
|
||||
grantsTitle: "Ouverts aux parrainages · Bailleurs de fonds Bitcoin",
|
||||
grantsDisclaimer: "Vous voulez faire un don à ce projet ? Remplissez le formulaire. Pas pour nous faire un KYC — mais pour VOUS en faire un.",
|
||||
grantsDisclaimerDesc: "Cette voie est réservée aux bailleurs de fonds qui font un KYC/KYB de leurs bénéficiaires. Si vous êtes un skateur qui veut juste faire un don, utilisez les rails Lightning, Silent Payments ou Angor ci-dessus — personne n'a besoin de votre passeport.",
|
||||
grantsOrg: "Organisation",
|
||||
grantsContact: "Contact (npub, courriel ou pseudonyme)",
|
||||
grantsWebsite: "Site web",
|
||||
grantsProgram: "Programme / cycle de subventions",
|
||||
grantsSize: "Montant de la subvention",
|
||||
grantsKyc: "Processus KYC / KYB",
|
||||
grantsFund: "Que souhaitez-vous financer ?",
|
||||
grantsAck: "Je confirme que nous sommes un bailleur de fonds qui fait un KYC/KYB de ses bénéficiaires.",
|
||||
grantsSend: "Ouvrir la discussion sur la subvention",
|
||||
grantsNote: "Ouvre un message privé au propriétaire de SkateSpots. Rien n'est stocké sur cette page.",
|
||||
backAngor: "Soutenez-nous sur Angor",
|
||||
backers: "Soutiens",
|
||||
backersDesc: "Skaters qui ont soutenu SkateSpots — financement on-chain via Angor, et zaps Lightning au projet.",
|
||||
|
|
@ -937,12 +952,14 @@ const frBatch4 = {
|
|||
nip05NotVerified: "NIP-05 non vérifié pour cette clé",
|
||||
message: "Message",
|
||||
eventsHosted: "Événements organisés",
|
||||
openToSponsorships: "Ouvert au sponsoring",
|
||||
forSponsors: "Pour les sponsors et collaborations",
|
||||
sponsorPitch: "Sponsoring, collaboration, photo/vidéo ou événement ? Lance la conversation.",
|
||||
startCollab: "Démarrer une discussion de collaboration",
|
||||
viewRiderCard: "Voir la fiche du skateur",
|
||||
collabMessage: "Salut {{name}}, j'aimerais parler d'un sponsoring ou d'une collaboration.",
|
||||
followers: "Abonnés",
|
||||
followersHint: "Listes d'abonnés rapportées par les relais — pas des statistiques auditées.",
|
||||
following: "Abonnements",
|
||||
follow: "Suivre",
|
||||
unfollow: "Ne plus suivre",
|
||||
|
|
|
|||
|
|
@ -353,6 +353,10 @@ const batch3 = {
|
|||
bannerImage: "Imaxe de portada",
|
||||
bannerDesc: "Unha imaxe ancha para a parte superior do teu perfil.",
|
||||
website: "Sitio web",
|
||||
openToSponsorships: "Aberto a patrocinios",
|
||||
openToSponsorshipsHint: "Mostra unha tarxeta de patrocinio/colaboración no teu perfil. Non se comparte nada ata que alguén che escriba.",
|
||||
sponsorNote: "Nota de patrocinio (opcional)",
|
||||
sponsorNotePlaceholder: "p. ex. Aberto a socios de táboas, zapatillas, viaxes e eventos.",
|
||||
bitcoinTitle: "Bitcoin e pagamentos",
|
||||
bitcoinDesc: "Deixa que a xente che faga zaps, dea propinas e pague directamente, sen intermediarios.",
|
||||
lightningAddress: "Dirección Lightning",
|
||||
|
|
|
|||
|
|
@ -833,6 +833,21 @@ const batch6 = {
|
|||
"our": "NOSA",
|
||||
"community": "COMUNIDADE",
|
||||
"heroDesc": "SkateSpots está feito por e para a comunidade. Apoios, colaboradores, socios e amigos que o manteñen libre e descentralizado.",
|
||||
"grantsSection": "Entidades financiadoras de Bitcoin",
|
||||
"grantsSectionDesc": "Para organizacións que conceden axudas a proxectos Bitcoin de código aberto.",
|
||||
"grantsTitle": "Abertos a patrocinios · Entidades financiadoras de Bitcoin",
|
||||
"grantsDisclaimer": "Queres doar a este proxecto? Enche o formulario. Non para facernos KYC a nós — senón para facerche KYC a TI.",
|
||||
"grantsDisclaimerDesc": "Esta vía é só para entidades financiadoras que fan KYC/KYB aos seus beneficiarios. Se es un skater que só quere doar, usa as rutas Lightning, Silent Payments ou Angor de arriba — ninguén necesita o teu pasaporte.",
|
||||
"grantsOrg": "Organización",
|
||||
"grantsContact": "Contacto (npub, correo electrónico ou nome de usuario)",
|
||||
"grantsWebsite": "Sitio web",
|
||||
"grantsProgram": "Programa / rolda de axudas",
|
||||
"grantsSize": "Importe da axuda",
|
||||
"grantsKyc": "Proceso de KYC / KYB",
|
||||
"grantsFund": "Que che gustaría financiar?",
|
||||
"grantsAck": "Confirmo que somos unha entidade financiadora que fai KYC/KYB aos seus beneficiarios.",
|
||||
"grantsSend": "Abrir conversa sobre a axuda",
|
||||
"grantsNote": "Abre unha mensaxe privada ao propietario de SkateSpots. Non se garda nada nesta páxina.",
|
||||
"backAngor": "Apóianos en Angor",
|
||||
"backers": "Apoios",
|
||||
"backersDesc": "Skaters que apoiaron SkateSpots — financiamento on-chain mediante Angor e zaps Lightning ao proxecto.",
|
||||
|
|
@ -963,12 +978,14 @@ const batch6 = {
|
|||
"nip05NotVerified": "NIP-05 non verificado con esta chave",
|
||||
"message": "Mensaxe",
|
||||
"eventsHosted": "Eventos organizados",
|
||||
"openToSponsorships": "Aberto a patrocinios",
|
||||
"forSponsors": "Para patrocinadores e colaboracións",
|
||||
"sponsorPitch": "Patrocinio, colaboración, foto/vídeo ou evento? Comeza unha conversa.",
|
||||
"startCollab": "Iniciar chat de colaboración",
|
||||
"viewRiderCard": "Ver a ficha do patinador",
|
||||
"collabMessage": "Ola {{name}}, gustaríame falar dun patrocinio ou dunha colaboración.",
|
||||
"followers": "Seguidores",
|
||||
"followersHint": "Listas de seguidores informadas polos relays — non son analíticas auditadas.",
|
||||
"following": "Seguindo",
|
||||
"follow": "Seguir",
|
||||
"unfollow": "Deixar de seguir",
|
||||
|
|
|
|||
|
|
@ -353,6 +353,10 @@ const batch3 = {
|
|||
"bannerImage": "बैनर इमेज",
|
||||
"bannerDesc": "आपकी प्रोफ़ाइल के ऊपर के लिए चौड़ी इमेज।",
|
||||
"website": "वेबसाइट",
|
||||
"openToSponsorships": "प्रायोजन के लिए उपलब्ध",
|
||||
"openToSponsorshipsHint": "आपकी प्रोफ़ाइल पर स्पॉन्सर/सहयोग कार्ड दिखाता है। जब तक कोई आपको संदेश नहीं भेजता, कुछ भी साझा नहीं होता।",
|
||||
"sponsorNote": "प्रायोजन नोट (वैकल्पिक)",
|
||||
"sponsorNotePlaceholder": "उदा. डेक, जूते, यात्रा और इवेंट पार्टनर के लिए उपलब्ध।",
|
||||
"bitcoinTitle": "Bitcoin और भुगतान",
|
||||
"bitcoinDesc": "लोगों को सीधे zap, tip और भुगतान करने दें — कोई बिचौलिया नहीं।",
|
||||
"lightningAddress": "Lightning पता",
|
||||
|
|
|
|||
|
|
@ -833,6 +833,21 @@ const batch6 = {
|
|||
"our": "हमारा",
|
||||
"community": "समुदाय",
|
||||
"heroDesc": "SkateSpots समुदाय द्वारा और समुदाय के लिए बनाया गया है। समर्थक, सहयोगी, साझेदार और मित्र इसे मुफ़्त और विकेंद्रीकृत बनाए रखते हैं।",
|
||||
"grantsSection": "बिटकॉइन अनुदानदाता",
|
||||
"grantsSectionDesc": "उन संगठनों के लिए जो मुक्त स्रोत बिटकॉइन परियोजनाओं को अनुदान देते हैं।",
|
||||
"grantsTitle": "प्रायोजन के लिए खुला · बिटकॉइन अनुदानदाता",
|
||||
"grantsDisclaimer": "इस परियोजना को दान देना चाहते हैं? फ़ॉर्म भरें। हमारा KYC करने के लिए नहीं — आपका KYC करने के लिए।",
|
||||
"grantsDisclaimerDesc": "यह मार्ग केवल उन अनुदानदाताओं के लिए है जो अपने अनुदान प्राप्तकर्ताओं का KYC/KYB करते हैं। अगर आप सिर्फ़ दान देना चाहने वाले स्केटर हैं, तो ऊपर दिए Lightning, Silent Payments या Angor मार्गों का उपयोग करें — किसी को आपके पासपोर्ट की ज़रूरत नहीं है।",
|
||||
"grantsOrg": "संगठन",
|
||||
"grantsContact": "संपर्क (npub, ईमेल या उपयोगकर्ता नाम)",
|
||||
"grantsWebsite": "वेबसाइट",
|
||||
"grantsProgram": "अनुदान कार्यक्रम / दौर",
|
||||
"grantsSize": "अनुदान राशि",
|
||||
"grantsKyc": "KYC / KYB प्रक्रिया",
|
||||
"grantsFund": "आप किसे वित्तपोषित करना चाहेंगे?",
|
||||
"grantsAck": "मैं पुष्टि करता/करती हूँ कि हम एक अनुदानदाता हैं जो अपने अनुदान प्राप्तकर्ताओं का KYC/KYB करते हैं।",
|
||||
"grantsSend": "अनुदान बातचीत शुरू करें",
|
||||
"grantsNote": "SkateSpots के मालिक को निजी संदेश खोलता है। इस पृष्ठ पर कुछ भी संग्रहीत नहीं होता।",
|
||||
"backAngor": "Angor पर हमारा साथ दें",
|
||||
"backers": "समर्थक",
|
||||
"backersDesc": "वे स्केटर जिन्होंने SkateSpots का साथ दिया — Angor के ज़रिए on-chain फंडिंग, और प्रोजेक्ट को Lightning zaps।",
|
||||
|
|
@ -963,12 +978,14 @@ const batch6 = {
|
|||
"nip05NotVerified": "NIP-05 इस कुंजी से सत्यापित नहीं",
|
||||
"message": "संदेश",
|
||||
"eventsHosted": "आयोजित कार्यक्रम",
|
||||
"openToSponsorships": "प्रायोजन के लिए उपलब्ध",
|
||||
"forSponsors": "प्रायोजकों और सहयोगों के लिए",
|
||||
"sponsorPitch": "प्रायोजन, सहयोग, फ़ोटो/वीडियो या कार्यक्रम? बातचीत शुरू करें।",
|
||||
"startCollab": "सहयोग बातचीत शुरू करें",
|
||||
"viewRiderCard": "स्केटर कार्ड देखें",
|
||||
"collabMessage": "नमस्ते {{name}}, क्या हम प्रायोजन या सहयोग पर बात कर सकते हैं?",
|
||||
"followers": "फ़ॉलोअर",
|
||||
"followersHint": "रीले द्वारा रिपोर्ट की गई फ़ॉलो सूचियाँ — ये ऑडिट किया गया विश्लेषण नहीं हैं।",
|
||||
"following": "फ़ॉलो कर रहे",
|
||||
"follow": "फ़ॉलो करें",
|
||||
"unfollow": "फ़ॉलो हटाएँ",
|
||||
|
|
|
|||
|
|
@ -355,6 +355,10 @@ const idBatch3 = {
|
|||
bannerImage: 'Gambar spanduk',
|
||||
bannerDesc: 'Gambar lebar untuk bagian atas profil Anda.',
|
||||
website: 'Situs web',
|
||||
openToSponsorships: 'Terbuka untuk sponsor',
|
||||
openToSponsorshipsHint: 'Menampilkan kartu sponsor/kolaborasi di profilmu. Tidak ada yang dibagikan sampai seseorang mengirim pesan.',
|
||||
sponsorNote: 'Catatan sponsor (opsional)',
|
||||
sponsorNotePlaceholder: 'mis. Terbuka untuk mitra deck, sepatu, perjalanan, dan acara.',
|
||||
bitcoinTitle: 'Bitcoin & Pembayaran',
|
||||
bitcoinDesc: 'Biarkan orang men-zap, memberi tip, dan membayar Anda langsung — tanpa perantara.',
|
||||
lightningAddress: 'Alamat Lightning',
|
||||
|
|
|
|||
|
|
@ -813,6 +813,21 @@ const idBatch4 = {
|
|||
our: 'KOMUNITAS',
|
||||
community: 'KAMI',
|
||||
heroDesc: 'SkateSpots dibangun oleh dan untuk komunitas. Pendukung, kolaborator, mitra, dan teman yang menjaganya tetap gratis dan terdesentralisasi.',
|
||||
grantsSection: 'Pemberi hibah Bitcoin',
|
||||
grantsSectionDesc: 'Untuk organisasi yang memberikan hibah kepada proyek Bitcoin sumber terbuka.',
|
||||
grantsTitle: 'Terbuka untuk sponsor · Pemberi hibah Bitcoin',
|
||||
grantsDisclaimer: 'Ingin berdonasi ke proyek ini? Isi formulirnya. Bukan untuk KYC kami — tapi untuk KYC KAMU.',
|
||||
grantsDisclaimerDesc: 'Jalur ini hanya untuk pemberi hibah yang melakukan KYC/KYB kepada penerima hibahnya. Jika kamu skater yang cuma ingin berdonasi, pakai jalur Lightning, Silent Payments, atau Angor di atas — tidak ada yang butuh paspormu.',
|
||||
grantsOrg: 'Organisasi',
|
||||
grantsContact: 'Kontak (npub, surel, atau nama pengguna)',
|
||||
grantsWebsite: 'Situs web',
|
||||
grantsProgram: 'Program / putaran hibah',
|
||||
grantsSize: 'Besar hibah',
|
||||
grantsKyc: 'Proses KYC / KYB',
|
||||
grantsFund: 'Apa yang ingin kamu danai?',
|
||||
grantsAck: 'Saya mengonfirmasi bahwa kami adalah pemberi hibah yang melakukan KYC/KYB kepada penerima hibah.',
|
||||
grantsSend: 'Buka percakapan hibah',
|
||||
grantsNote: 'Membuka pesan pribadi ke pemilik SkateSpots. Tidak ada yang disimpan di halaman ini.',
|
||||
backAngor: 'Dukung kami di Angor',
|
||||
backers: 'Pendukung',
|
||||
backersDesc: 'Skater yang mendukung SkateSpots — pendanaan on-chain via Angor, dan zap Lightning ke proyek.',
|
||||
|
|
@ -943,12 +958,14 @@ const idBatch4 = {
|
|||
nip05NotVerified: 'NIP-05 tidak terverifikasi terhadap kunci ini',
|
||||
message: 'Pesan',
|
||||
eventsHosted: 'Acara yang diselenggarakan',
|
||||
openToSponsorships: 'Terbuka untuk sponsor',
|
||||
forSponsors: 'Untuk sponsor & kolaborasi',
|
||||
sponsorPitch: 'Sponsorship, kolaborasi, foto/video, atau acara? Mulai percakapan.',
|
||||
startCollab: 'Mulai chat kolaborasi',
|
||||
viewRiderCard: 'Lihat kartu peseluncur',
|
||||
collabMessage: 'Hai {{name}}, saya ingin membahas sponsorship atau kolaborasi.',
|
||||
followers: 'Pengikut',
|
||||
followersHint: 'Daftar pengikut yang dilaporkan relay — bukan analitik yang diaudit.',
|
||||
following: 'Mengikuti',
|
||||
follow: 'Ikuti',
|
||||
unfollow: 'Berhenti Ikuti',
|
||||
|
|
|
|||
|
|
@ -349,6 +349,10 @@ const itBatch3 = {
|
|||
bannerImage: "Immagine banner",
|
||||
bannerDesc: "Un'immagine larga per la parte superiore del tuo profilo.",
|
||||
website: "Sito web",
|
||||
openToSponsorships: "Aperto a sponsorizzazioni",
|
||||
openToSponsorshipsHint: "Mostra una scheda sponsor/collaborazione sul tuo profilo. Nulla viene condiviso finché qualcuno non ti scrive.",
|
||||
sponsorNote: "Nota di sponsorizzazione (facoltativo)",
|
||||
sponsorNotePlaceholder: "ad es. aperto a partner per tavole, scarpe, viaggi ed eventi.",
|
||||
bitcoinTitle: "Bitcoin e pagamenti",
|
||||
bitcoinDesc: "Lascia che le persone ti zappino, ti diano mance e ti paghino direttamente — senza intermediari.",
|
||||
lightningAddress: "Indirizzo Lightning",
|
||||
|
|
|
|||
|
|
@ -807,6 +807,21 @@ const itBatch4 = {
|
|||
our: "LA NOSTRA",
|
||||
community: "COMMUNITY",
|
||||
heroDesc: "SkateSpots è costruito dalla community e per la community. Sostenitori, collaboratori, partner e amici che lo mantengono libero e decentralizzato.",
|
||||
grantsSection: "Enti finanziatori Bitcoin",
|
||||
grantsSectionDesc: "Per organizzazioni che concedono sovvenzioni a progetti Bitcoin a codice aperto.",
|
||||
grantsTitle: "Aperti a sponsorizzazioni · Enti finanziatori Bitcoin",
|
||||
grantsDisclaimer: "Vuoi donare a questo progetto? Compila il modulo. Non per fare KYC a noi — ma per farlo a TE.",
|
||||
grantsDisclaimerDesc: "Questa corsia è solo per enti finanziatori che fanno KYC/KYB ai propri beneficiari. Se sei uno skater che vuole solo donare, usa i canali Lightning, Silent Payments o Angor qui sopra — nessuno ha bisogno del tuo passaporto.",
|
||||
grantsOrg: "Organizzazione",
|
||||
grantsContact: "Contatto (npub, e-mail o nome utente)",
|
||||
grantsWebsite: "Sito web",
|
||||
grantsProgram: "Programma / ciclo di sovvenzioni",
|
||||
grantsSize: "Importo della sovvenzione",
|
||||
grantsKyc: "Processo KYC / KYB",
|
||||
grantsFund: "Cosa vorresti finanziare?",
|
||||
grantsAck: "Confermo che siamo un ente finanziatore che fa KYC/KYB ai propri beneficiari.",
|
||||
grantsSend: "Apri la conversazione sulla sovvenzione",
|
||||
grantsNote: "Apre un messaggio privato al proprietario di SkateSpots. Nulla viene salvato su questa pagina.",
|
||||
backAngor: "Sostienici su Angor",
|
||||
backers: "Sostenitori",
|
||||
backersDesc: "Gli skater che hanno sostenuto SkateSpots — finanziamento on-chain tramite Angor e zap Lightning al progetto.",
|
||||
|
|
@ -937,12 +952,14 @@ const itBatch4 = {
|
|||
nip05NotVerified: "NIP-05 non verificato con questa chiave",
|
||||
message: "Messaggio",
|
||||
eventsHosted: "Eventi organizzati",
|
||||
openToSponsorships: "Aperto a sponsorizzazioni",
|
||||
forSponsors: "Per sponsor e collaborazioni",
|
||||
sponsorPitch: "Sponsorizzazione, collaborazione, foto/video o evento? Inizia una conversazione.",
|
||||
startCollab: "Avvia una chat di collaborazione",
|
||||
viewRiderCard: "Vedi la scheda dello skater",
|
||||
collabMessage: "Ciao {{name}}, vorrei parlare di una sponsorizzazione o di una collaborazione.",
|
||||
followers: "Follower",
|
||||
followersHint: "Elenchi di follower riportati dai relay — non statistiche verificate.",
|
||||
following: "Seguiti",
|
||||
follow: "Segui",
|
||||
unfollow: "Smetti di seguire",
|
||||
|
|
|
|||
|
|
@ -348,6 +348,10 @@ const jaBatch6 = {
|
|||
bannerImage: 'バナー画像',
|
||||
bannerDesc: 'プロフィール上部用の横長画像。',
|
||||
website: 'ウェブサイト',
|
||||
openToSponsorships: 'スポンサー募集中',
|
||||
openToSponsorshipsHint: 'プロフィールにスポンサー/コラボのカードを表示します。誰かからメッセージが届くまで何も共有されません。',
|
||||
sponsorNote: 'スポンサーに関するメモ(任意)',
|
||||
sponsorNotePlaceholder: '例:デッキ、シューズ、遠征、イベントのパートナー募集中。',
|
||||
bitcoinTitle: 'Bitcoinと支払い',
|
||||
bitcoinDesc: 'Zap、チップ、支払いを直接受け取れます — 仲介者なし。',
|
||||
lightningAddress: 'Lightningアドレス',
|
||||
|
|
|
|||
|
|
@ -816,6 +816,21 @@ const jaBatch7 = {
|
|||
our: '私たちの',
|
||||
community: 'コミュニティ',
|
||||
heroDesc: 'SkateSpotsはコミュニティによって、コミュニティのために作られています。サポーター、協力者、パートナー、友人がこれを無料で分散型に保っています。',
|
||||
grantsSection: 'Bitcoin助成団体',
|
||||
grantsSectionDesc: 'オープンソースのBitcoinプロジェクトに助成金を出す団体向けです。',
|
||||
grantsTitle: 'スポンサー募集中 · Bitcoin助成団体',
|
||||
grantsDisclaimer: 'このプロジェクトに寄付したいですか?フォームに記入してください。私たちをKYCするためではなく、あなたをKYCするためです。',
|
||||
grantsDisclaimerDesc: 'この窓口は、助成先にKYC/KYBを行う助成団体専用です。ただ寄付したいだけのスケーターは、上のLightning、Silent Payments、Angorの経路を使ってください——パスポートなんて誰も必要としていません。',
|
||||
grantsOrg: '団体名',
|
||||
grantsContact: '連絡先(npub、メール、ユーザー名)',
|
||||
grantsWebsite: 'ウェブサイト',
|
||||
grantsProgram: '助成プログラム / ラウンド',
|
||||
grantsSize: '助成金額',
|
||||
grantsKyc: 'KYC / KYBの手続き',
|
||||
grantsFund: '何に資金を提供したいですか?',
|
||||
grantsAck: '私たちが助成先にKYC/KYBを行う助成団体であることを確認します。',
|
||||
grantsSend: '助成の相談を始める',
|
||||
grantsNote: 'SkateSpotsの所有者への非公開メッセージを開きます。このページには何も保存されません。',
|
||||
backAngor: 'Angorで支援する',
|
||||
backers: 'サポーター',
|
||||
backersDesc: 'SkateSpotsを支援したスケーター — Angorによるオンチェーン資金提供、そしてプロジェクトへのLightning Zap。',
|
||||
|
|
@ -946,12 +961,14 @@ const jaBatch7 = {
|
|||
nip05NotVerified: 'NIP-05がこの鍵で認証されていません',
|
||||
message: 'メッセージ',
|
||||
eventsHosted: '主催イベント',
|
||||
openToSponsorships: 'スポンサー募集中',
|
||||
forSponsors: 'スポンサー・コラボ募集',
|
||||
sponsorPitch: 'スポンサー、コラボ、写真/動画、イベントの依頼はありませんか?まずはご相談ください。',
|
||||
startCollab: 'コラボチャットを始める',
|
||||
viewRiderCard: 'ライダーカードを見る',
|
||||
collabMessage: 'こんにちは{{name}}さん、スポンサーやコラボについてお話ししたいです。',
|
||||
followers: 'フォロワー',
|
||||
followersHint: 'リレーが報告するフォローリスト — 監査済みの分析データではありません。',
|
||||
following: 'フォロー中',
|
||||
follow: 'フォロー',
|
||||
unfollow: 'フォロー解除',
|
||||
|
|
|
|||
|
|
@ -355,6 +355,10 @@ const koBatch3 = {
|
|||
bannerImage: '배너 이미지',
|
||||
bannerDesc: '프로필 상단에 들어갈 가로로 넓은 이미지.',
|
||||
website: '웹사이트',
|
||||
openToSponsorships: '스폰서 모집 중',
|
||||
openToSponsorshipsHint: '프로필에 스폰서/협업 카드를 표시합니다. 누군가 메시지를 보내기 전까지는 아무것도 공유되지 않습니다.',
|
||||
sponsorNote: '스폰서 메모(선택 사항)',
|
||||
sponsorNotePlaceholder: '예: 데크, 신발, 여행, 이벤트 파트너 모집 중.',
|
||||
bitcoinTitle: 'Bitcoin & 결제',
|
||||
bitcoinDesc: '사람들이 나에게 직접 Zap, 팁, 결제를 보낼 수 있습니다 — 중개자 없음.',
|
||||
lightningAddress: 'Lightning 주소',
|
||||
|
|
|
|||
|
|
@ -815,6 +815,21 @@ const koBatch4 = {
|
|||
our: '우리의',
|
||||
community: '커뮤니티',
|
||||
heroDesc: 'SkateSpots는 커뮤니티가 커뮤니티를 위해 만듭니다. 이걸 무료이고 탈중앙화된 상태로 유지하는 후원자, 협력자, 파트너, 친구들.',
|
||||
grantsSection: '비트코인 지원금 단체',
|
||||
grantsSectionDesc: '오픈소스 비트코인 프로젝트에 지원금을 지급하는 단체를 위한 공간입니다.',
|
||||
grantsTitle: '후원 후보 공개 · 비트코인 지원금 단체',
|
||||
grantsDisclaimer: '이 프로젝트에 기부하고 싶나요? 양식을 작성하세요. 우리를 KYC하려는 게 아니라, 당신을 KYC하려는 겁니다.',
|
||||
grantsDisclaimerDesc: '이 경로는 수혜자에게 KYC/KYB를 하는 지원금 단체 전용입니다. 그냥 기부하고 싶은 스케이터라면 위의 Lightning, Silent Payments, Angor 경로를 이용하세요. 당신의 여권은 아무도 필요로 하지 않습니다.',
|
||||
grantsOrg: '단체',
|
||||
grantsContact: '연락처 (npub, 이메일 또는 사용자명)',
|
||||
grantsWebsite: '웹사이트',
|
||||
grantsProgram: '지원금 프로그램 / 라운드',
|
||||
grantsSize: '지원금 규모',
|
||||
grantsKyc: 'KYC / KYB 절차',
|
||||
grantsFund: '무엇에 자금을 지원하고 싶나요?',
|
||||
grantsAck: '우리가 수혜자에게 KYC/KYB를 하는 지원금 단체임을 확인합니다.',
|
||||
grantsSend: '지원금 대화 시작하기',
|
||||
grantsNote: 'SkateSpots 소유자에게 비공개 메시지를 엽니다. 이 페이지에는 아무것도 저장되지 않습니다.',
|
||||
backAngor: 'Angor에서 후원',
|
||||
backers: '후원자',
|
||||
backersDesc: 'SkateSpots를 후원한 스케이터 — Angor를 통한 온체인 펀딩과 프로젝트에 보낸 Lightning Zap.',
|
||||
|
|
@ -945,12 +960,14 @@ const koBatch4 = {
|
|||
nip05NotVerified: '이 키에 대해 NIP-05가 인증되지 않음',
|
||||
message: '메시지',
|
||||
eventsHosted: '주최한 이벤트',
|
||||
openToSponsorships: '스폰서 모집 중',
|
||||
forSponsors: '스폰서 및 협업 문의',
|
||||
sponsorPitch: '스폰서십, 협업, 사진/영상 또는 이벤트? 대화를 시작해 보세요.',
|
||||
startCollab: '협업 채팅 시작',
|
||||
viewRiderCard: '라이더 카드 보기',
|
||||
collabMessage: '안녕하세요 {{name}}님, 스폰서십이나 협업에 대해 이야기하고 싶어요.',
|
||||
followers: '팔로워',
|
||||
followersHint: '릴레이가 보고한 팔로우 목록 — 감사된 분석이 아닙니다.',
|
||||
following: '팔로잉',
|
||||
follow: '팔로우',
|
||||
unfollow: '언팔로우',
|
||||
|
|
|
|||
|
|
@ -354,6 +354,10 @@ const nlBatch3 = {
|
|||
bannerImage: 'Bannerafbeelding',
|
||||
bannerDesc: 'Een brede afbeelding voor de bovenkant van je profiel.',
|
||||
website: 'Website',
|
||||
openToSponsorships: 'Open voor sponsoring',
|
||||
openToSponsorshipsHint: 'Toont een sponsor-/samenwerkingskaart op je profiel. Er wordt niets gedeeld tot iemand je een bericht stuurt.',
|
||||
sponsorNote: 'Sponsornotitie (optioneel)',
|
||||
sponsorNotePlaceholder: 'bijv. open voor partners voor decks, schoenen, reizen en evenementen.',
|
||||
bitcoinTitle: 'Bitcoin & betalingen',
|
||||
bitcoinDesc: 'Laat mensen je direct zappen, tippen en betalen — geen tussenpersoon.',
|
||||
lightningAddress: 'Lightning-adres',
|
||||
|
|
|
|||
|
|
@ -815,6 +815,21 @@ const nlBatch4 = {
|
|||
our: 'ONZE',
|
||||
community: 'COMMUNITY',
|
||||
heroDesc: 'SkateSpots wordt gebouwd door en voor de community. Supporters, medewerkers, partners en vrienden die dit gratis en gedecentraliseerd houden.',
|
||||
grantsSection: 'Bitcoin-financiers',
|
||||
grantsSectionDesc: 'Voor organisaties die subsidies verstrekken aan open-source Bitcoin-projecten.',
|
||||
grantsTitle: 'Open voor sponsoring · Bitcoin-financiers',
|
||||
grantsDisclaimer: 'Wil je aan dit project doneren? Vul het formulier in. Niet om ons te KYC\'en — maar om JOU te KYC\'en.',
|
||||
grantsDisclaimerDesc: 'Deze route is alleen voor financiers die hun begunstigden KYC/KYB\'en. Ben je een skater die gewoon wil doneren, gebruik dan de Lightning-, Silent Payments- of Angor-routes hierboven — niemand heeft je paspoort nodig.',
|
||||
grantsOrg: 'Organisatie',
|
||||
grantsContact: 'Contact (npub, e-mail of gebruikersnaam)',
|
||||
grantsWebsite: 'Webpagina',
|
||||
grantsProgram: 'Subsidieprogramma / ronde',
|
||||
grantsSize: 'Subsidiebedrag',
|
||||
grantsKyc: 'KYC-/KYB-proces',
|
||||
grantsFund: 'Wat wil je financieren?',
|
||||
grantsAck: 'Ik bevestig dat wij een financier zijn die onze begunstigden KYC/KYB\'t.',
|
||||
grantsSend: 'Subsidiegesprek openen',
|
||||
grantsNote: 'Opent een privébericht naar de eigenaar van SkateSpots. Er wordt niets op deze pagina opgeslagen.',
|
||||
backAngor: 'Steun ons op Angor',
|
||||
backers: 'Supporters',
|
||||
backersDesc: 'Skaters die SkateSpots steunden — on-chain financiering via Angor, en Lightning-zaps naar het project.',
|
||||
|
|
@ -945,12 +960,14 @@ const nlBatch4 = {
|
|||
nip05NotVerified: 'NIP-05 niet geverifieerd tegen deze sleutel',
|
||||
message: 'Bericht',
|
||||
eventsHosted: 'Georganiseerde evenementen',
|
||||
openToSponsorships: 'Open voor sponsoring',
|
||||
forSponsors: 'Voor sponsors & samenwerkingen',
|
||||
sponsorPitch: 'Sponsoring, samenwerking, foto/video of evenement? Start een gesprek.',
|
||||
startCollab: 'Start een samenwerkingschat',
|
||||
viewRiderCard: 'Bekijk de skaterkaart',
|
||||
collabMessage: 'Hoi {{name}}, ik wil graag praten over een sponsoring of samenwerking.',
|
||||
followers: 'Volgers',
|
||||
followersHint: 'Door relays gerapporteerde volglijsten — geen gecontroleerde analyses.',
|
||||
following: 'Volgend',
|
||||
follow: 'Volgen',
|
||||
unfollow: 'Ontvolgen',
|
||||
|
|
|
|||
|
|
@ -349,6 +349,10 @@ const plBatch3 = {
|
|||
bannerImage: "Obraz banera",
|
||||
bannerDesc: "Szeroki obraz na górę Twojego profilu.",
|
||||
website: "Strona internetowa",
|
||||
openToSponsorships: "Otwarty na sponsoring",
|
||||
openToSponsorshipsHint: "Pokazuje kartę sponsora/współpracy w Twoim profilu. Nic nie jest udostępniane, dopóki ktoś nie napisze.",
|
||||
sponsorNote: "Notatka o sponsorowaniu (opcjonalnie)",
|
||||
sponsorNotePlaceholder: "np. Otwarty na partnerów od desek, butów, podróży i wydarzeń.",
|
||||
bitcoinTitle: "Bitcoin i płatności",
|
||||
bitcoinDesc: "Pozwól ludziom wysyłać Ci zaps, napiwki i płatności bezpośrednio — bez pośredników.",
|
||||
lightningAddress: "Adres Lightning",
|
||||
|
|
|
|||
|
|
@ -807,6 +807,21 @@ const plBatch4 = {
|
|||
our: "NASZA",
|
||||
community: "SPOŁECZNOŚĆ",
|
||||
heroDesc: "SkateSpots jest tworzone przez społeczność i dla niej. Wspierający, współpracownicy, partnerzy i przyjaciele, którzy utrzymują to darmowym i zdecentralizowanym.",
|
||||
grantsSection: "Grantodawcy Bitcoin",
|
||||
grantsSectionDesc: "Dla organizacji, które przyznają granty projektom Bitcoin o otwartym kodzie źródłowym.",
|
||||
grantsTitle: "Otwarci na sponsoring · Grantodawcy Bitcoin",
|
||||
grantsDisclaimer: "Chcesz wesprzeć ten projekt? Wypełnij formularz. Nie po to, żeby zrobić KYC nam — tylko żeby zrobić KYC TOBIE.",
|
||||
grantsDisclaimerDesc: "Ta ścieżka jest tylko dla grantodawców, którzy robią KYC/KYB swoim beneficjentom. Jeśli jesteś skaterem i chcesz po prostu wesprzeć projekt, skorzystaj z powyższych ścieżek Lightning, Silent Payments lub Angor — nikomu nie jest potrzebny twój paszport.",
|
||||
grantsOrg: "Organizacja",
|
||||
grantsContact: "Kontakt (npub, e-mail lub nazwa użytkownika)",
|
||||
grantsWebsite: "Strona internetowa",
|
||||
grantsProgram: "Program / runda grantowa",
|
||||
grantsSize: "Wielkość grantu",
|
||||
grantsKyc: "Proces KYC / KYB",
|
||||
grantsFund: "Co chciałbyś sfinansować?",
|
||||
grantsAck: "Potwierdzam, że jesteśmy grantodawcą, który robi KYC/KYB swoim beneficjentom.",
|
||||
grantsSend: "Rozpocznij rozmowę o grancie",
|
||||
grantsNote: "Otwiera prywatną wiadomość do właściciela SkateSpots. Na tej stronie nic nie jest zapisywane.",
|
||||
backAngor: "Wesprzyj nas na Angor",
|
||||
backers: "Wspierający",
|
||||
backersDesc: "Skaterzy, którzy wsparli SkateSpots — finansowanie on-chain przez Angor i zapy Lightning dla projektu.",
|
||||
|
|
@ -937,12 +952,14 @@ const plBatch4 = {
|
|||
nip05NotVerified: "NIP-05 niezweryfikowany względem tego klucza",
|
||||
message: "Wiadomość",
|
||||
eventsHosted: "Organizowane wydarzenia",
|
||||
openToSponsorships: "Otwarty na sponsoring",
|
||||
forSponsors: "Dla sponsorów i współprac",
|
||||
sponsorPitch: "Sponsoring, współpraca, foto/wideo lub wydarzenie? Rozpocznij rozmowę.",
|
||||
startCollab: "Rozpocznij czat o współpracy",
|
||||
viewRiderCard: "Zobacz kartę deskorolkarza",
|
||||
collabMessage: "Cześć {{name}}, chciałbym porozmawiać o sponsoringu lub współpracy.",
|
||||
followers: "Obserwujący",
|
||||
followersHint: "Listy obserwujących zgłaszane przez przekaźniki — to nie są audytowane analizy.",
|
||||
following: "Obserwowani",
|
||||
follow: "Obserwuj",
|
||||
unfollow: "Przestań obserwować",
|
||||
|
|
|
|||
|
|
@ -348,6 +348,10 @@ const ptBatch3 = {
|
|||
bannerImage: 'Imagem de capa',
|
||||
bannerDesc: 'Uma imagem larga para o topo do seu perfil.',
|
||||
website: 'Site',
|
||||
openToSponsorships: 'Aberto a patrocínios',
|
||||
openToSponsorshipsHint: 'Mostra um cartão de patrocínio/colaboração no teu perfil. Nada é partilhado até alguém te enviar uma mensagem.',
|
||||
sponsorNote: 'Nota de patrocínio (opcional)',
|
||||
sponsorNotePlaceholder: 'p. ex. Aberto a parceiros de shapes, ténis, viagens e eventos.',
|
||||
bitcoinTitle: 'Bitcoin e pagamentos',
|
||||
bitcoinDesc: 'Deixe as pessoas mandarem Zaps, gorjetas e pagamentos direto para você — sem intermediário.',
|
||||
lightningAddress: 'Endereço Lightning',
|
||||
|
|
|
|||
|
|
@ -909,6 +909,21 @@ const ptBatch4 = {
|
|||
community: 'COMUNIDADE',
|
||||
heroDesc:
|
||||
'O SkateSpots é feito pela e para a comunidade. Apoiadores, colaboradores, parceiros e amigos que mantêm tudo gratuito e descentralizado.',
|
||||
grantsSection: 'Financiadores de Bitcoin',
|
||||
grantsSectionDesc: 'Para organizações que concedem subsídios a projetos Bitcoin de código aberto.',
|
||||
grantsTitle: 'Abertos a patrocínios · Financiadores de Bitcoin',
|
||||
grantsDisclaimer: 'Quer doar para este projeto? Preencha o formulário. Não para fazer KYC em nós — mas para fazer KYC em VOCÊ.',
|
||||
grantsDisclaimerDesc: 'Esta via é só para financiadores que fazem KYC/KYB dos seus beneficiários. Se você é um skatista que só quer doar, use as rotas Lightning, Silent Payments ou Angor acima — ninguém precisa do seu passaporte.',
|
||||
grantsOrg: 'Organização',
|
||||
grantsContact: 'Contato (npub, e-mail ou nome de usuário)',
|
||||
grantsWebsite: 'Site',
|
||||
grantsProgram: 'Programa / rodada de subsídios',
|
||||
grantsSize: 'Valor do subsídio',
|
||||
grantsKyc: 'Processo de KYC / KYB',
|
||||
grantsFund: 'O que você gostaria de financiar?',
|
||||
grantsAck: 'Confirmo que somos um financiador que faz KYC/KYB dos nossos beneficiários.',
|
||||
grantsSend: 'Abrir conversa sobre subsídio',
|
||||
grantsNote: 'Abre uma mensagem privada para o dono do SkateSpots. Nada é armazenado nesta página.',
|
||||
backAngor: 'Apoie-nos no Angor',
|
||||
backers: 'Apoiadores',
|
||||
backersDesc:
|
||||
|
|
@ -1072,12 +1087,14 @@ const ptBatch4 = {
|
|||
nip05NotVerified: 'NIP-05 não verificado para esta chave',
|
||||
message: 'Mensagem',
|
||||
eventsHosted: 'Eventos organizados',
|
||||
openToSponsorships: 'Aberto a patrocínios',
|
||||
forSponsors: 'Para patrocinadores e colaborações',
|
||||
sponsorPitch: 'Patrocínio, colaboração, foto/vídeo ou evento? Comece uma conversa.',
|
||||
startCollab: 'Iniciar chat de colaboração',
|
||||
viewRiderCard: 'Ver cartão do skatista',
|
||||
collabMessage: 'Oi {{name}}, quero falar sobre um patrocínio ou uma colaboração.',
|
||||
followers: 'Seguidores',
|
||||
followersHint: 'Listas de seguidores reportadas pelos relays — não são análises auditadas.',
|
||||
following: 'Seguindo',
|
||||
follow: 'Seguir',
|
||||
unfollow: 'Deixar de seguir',
|
||||
|
|
|
|||
|
|
@ -349,6 +349,10 @@ const roBatch3 = {
|
|||
bannerImage: "Imagine de banner",
|
||||
bannerDesc: "O imagine lată pentru partea de sus a profilului tău.",
|
||||
website: "Site web",
|
||||
openToSponsorships: "Deschis la sponsorizări",
|
||||
openToSponsorshipsHint: "Afișează un card de sponsorizare/colaborare pe profilul tău. Nimic nu este partajat până când cineva îți scrie.",
|
||||
sponsorNote: "Notă despre sponsorizare (opțional)",
|
||||
sponsorNotePlaceholder: "de ex. Deschis la parteneri pentru plăci, pantofi, călătorii și evenimente.",
|
||||
bitcoinTitle: "Bitcoin & Plăți",
|
||||
bitcoinDesc: "Lasă oamenii să te zapeze, să te ciuplească și să te plătească direct — fără intermediari.",
|
||||
lightningAddress: "Adresă Lightning",
|
||||
|
|
|
|||
|
|
@ -807,6 +807,21 @@ const roBatch4 = {
|
|||
our: 'COMUNITATEA',
|
||||
community: 'NOASTRĂ',
|
||||
heroDesc: 'SkateSpots este construit de și pentru comunitate. Susținători, colaboratori, parteneri și prieteni care îl țin gratuit și descentralizat.',
|
||||
grantsSection: 'Finanțatori Bitcoin',
|
||||
grantsSectionDesc: 'Pentru organizațiile care acordă granturi unor proiecte Bitcoin cu sursă deschisă.',
|
||||
grantsTitle: 'Deschiși la sponsorizări · Finanțatori Bitcoin',
|
||||
grantsDisclaimer: 'Vrei să donezi acestui proiect? Completează formularul. Nu ca să ne facem KYC nouă — ci ca să ți-l facem ȚIE.',
|
||||
grantsDisclaimerDesc: 'Această rută este doar pentru finanțatorii care fac KYC/KYB beneficiarilor lor. Dacă ești un skater care vrea doar să doneze, folosește rutele Lightning, Silent Payments sau Angor de mai sus — nimeni nu are nevoie de pașaportul tău.',
|
||||
grantsOrg: 'Organizație',
|
||||
grantsContact: 'Contact (npub, e-mail sau nume de utilizator)',
|
||||
grantsWebsite: 'Site web',
|
||||
grantsProgram: 'Program / rundă de granturi',
|
||||
grantsSize: 'Valoarea grantului',
|
||||
grantsKyc: 'Procesul KYC / KYB',
|
||||
grantsFund: 'Ce ai vrea să finanțezi?',
|
||||
grantsAck: 'Confirm că suntem un finanțator care face KYC/KYB beneficiarilor noștri.',
|
||||
grantsSend: 'Deschide conversația despre grant',
|
||||
grantsNote: 'Deschide un mesaj privat către proprietarul SkateSpots. Nimic nu este stocat pe această pagină.',
|
||||
backAngor: 'Susține-ne pe Angor',
|
||||
backers: 'Susținători',
|
||||
backersDesc: 'Skateri care au susținut SkateSpots — finanțare on-chain prin Angor și zap-uri Lightning către proiect.',
|
||||
|
|
@ -937,12 +952,14 @@ const roBatch4 = {
|
|||
nip05NotVerified: 'NIP-05 neverificat pentru această cheie',
|
||||
message: 'Mesaj',
|
||||
eventsHosted: 'Evenimente organizate',
|
||||
openToSponsorships: 'Deschis la sponsorizări',
|
||||
forSponsors: 'Pentru sponsori și colaborări',
|
||||
sponsorPitch: 'Sponsorizare, colaborare, foto/video sau eveniment? Începe o conversație.',
|
||||
startCollab: 'Începe un chat de colaborare',
|
||||
viewRiderCard: 'Vezi cardul riderului',
|
||||
collabMessage: 'Salut {{name}}, aș vrea să vorbim despre o sponsorizare sau o colaborare.',
|
||||
followers: 'Urmăritori',
|
||||
followersHint: 'Liste de urmăritori raportate de relay — nu sunt analize auditate.',
|
||||
following: 'Urmărești',
|
||||
follow: 'Urmărește',
|
||||
unfollow: 'Nu mai urmări',
|
||||
|
|
|
|||
|
|
@ -349,6 +349,10 @@ const ruBatch3 = {
|
|||
bannerImage: "Баннер",
|
||||
bannerDesc: "Широкое изображение для верха вашего профиля.",
|
||||
website: "Веб-сайт",
|
||||
openToSponsorships: "Открыт для спонсорства",
|
||||
openToSponsorshipsHint: "Показывает карточку спонсора/коллаборации в профиле. Ничего не публикуется, пока кто-то не напишет вам.",
|
||||
sponsorNote: "Заметка о спонсорстве (необязательно)",
|
||||
sponsorNotePlaceholder: "например: открыт для партнёров по декам, обуви, поездкам и мероприятиям.",
|
||||
bitcoinTitle: "Bitcoin и платежи",
|
||||
bitcoinDesc: "Позвольте людям делать вам Zap, чаевые и платить напрямую — без посредников.",
|
||||
lightningAddress: "Lightning-адрес",
|
||||
|
|
|
|||
|
|
@ -807,6 +807,21 @@ const ruBatch4 = {
|
|||
our: 'НАШЕ',
|
||||
community: 'СООБЩЕСТВО',
|
||||
heroDesc: 'SkateSpots создаётся сообществом и для сообщества. Сторонники, соратники, партнёры и друзья, поддерживающие проект бесплатным и децентрализованным.',
|
||||
grantsSection: 'Грантодатели биткоина',
|
||||
grantsSectionDesc: 'Для организаций, которые выдают гранты проектам биткоина с открытым исходным кодом.',
|
||||
grantsTitle: 'Открыты к спонсорству · Грантодатели биткоина',
|
||||
grantsDisclaimer: 'Хотите поддержать этот проект? Заполните форму. Не для того, чтобы KYC прошли мы — а для того, чтобы его прошли ВЫ.',
|
||||
grantsDisclaimerDesc: 'Этот канал только для грантодателей, которые проводят KYC/KYB своим получателям. Если вы скейтер и просто хотите поддержать проект, используйте пути Lightning, Silent Payments или Angor выше — ваш паспорт никому не нужен.',
|
||||
grantsOrg: 'Организация',
|
||||
grantsContact: 'Контакт (npub, эл. почта или никнейм)',
|
||||
grantsWebsite: 'Сайт',
|
||||
grantsProgram: 'Грантовая программа / раунд',
|
||||
grantsSize: 'Размер гранта',
|
||||
grantsKyc: 'Процедура KYC / KYB',
|
||||
grantsFund: 'Что вы хотите профинансировать?',
|
||||
grantsAck: 'Подтверждаю, что мы грантодатель, который проводит KYC/KYB своим получателям.',
|
||||
grantsSend: 'Начать разговор о гранте',
|
||||
grantsNote: 'Открывает личное сообщение владельцу SkateSpots. На этой странице ничего не сохраняется.',
|
||||
backAngor: 'Поддержите нас на Angor',
|
||||
backers: 'Сторонники',
|
||||
backersDesc: 'Скейтеры, поддержавшие SkateSpots — финансирование on-chain через Angor и Lightning zaps проекту.',
|
||||
|
|
@ -937,12 +952,14 @@ const ruBatch4 = {
|
|||
nip05NotVerified: 'NIP-05 не подтверждён для этого ключа',
|
||||
message: 'Сообщение',
|
||||
eventsHosted: 'Проведённые мероприятия',
|
||||
openToSponsorships: 'Открыт для спонсорства',
|
||||
forSponsors: 'Для спонсоров и коллабораций',
|
||||
sponsorPitch: 'Спонсорство, коллаборация, фото/видео или мероприятие? Начните разговор.',
|
||||
startCollab: 'Начать чат о коллаборации',
|
||||
viewRiderCard: 'Посмотреть карточку райдера',
|
||||
collabMessage: 'Привет, {{name}}! Хочу обсудить спонсорство или коллаборацию.',
|
||||
followers: 'Подписчики',
|
||||
followersHint: 'Списки подписчиков по данным релеев — это не проверенная аналитика.',
|
||||
following: 'Подписки',
|
||||
follow: 'Подписаться',
|
||||
unfollow: 'Отписаться',
|
||||
|
|
|
|||
|
|
@ -349,6 +349,10 @@ const svBatch3 = {
|
|||
bannerImage: "Bannerbild",
|
||||
bannerDesc: "En bred bild för toppen av din profil.",
|
||||
website: "Webbplats",
|
||||
openToSponsorships: "Öppen för sponsring",
|
||||
openToSponsorshipsHint: "Visar ett sponsor-/samarbetskort på din profil. Inget delas förrän någon skickar ett meddelande till dig.",
|
||||
sponsorNote: "Sponsornotering (valfritt)",
|
||||
sponsorNotePlaceholder: "t.ex. öppen för partners inom decks, skor, resor och evenemang.",
|
||||
bitcoinTitle: "Bitcoin & betalningar",
|
||||
bitcoinDesc: "Låt folk Zappa, tippa och betala dig direkt — ingen mellanhand.",
|
||||
lightningAddress: "Lightning-adress",
|
||||
|
|
|
|||
|
|
@ -807,6 +807,21 @@ const svBatch4 = {
|
|||
our: "VÅR",
|
||||
community: "COMMUNITY",
|
||||
heroDesc: "SkateSpots byggs av och för communityn. Supportrar, samarbetspartners, partners och vänner som håller detta gratis och decentraliserat.",
|
||||
grantsSection: "Bitcoin-bidragsgivare",
|
||||
grantsSectionDesc: "För organisationer som delar ut bidrag till Bitcoin-projekt med öppen källkod.",
|
||||
grantsTitle: "Öppna för sponsring · Bitcoin-bidragsgivare",
|
||||
grantsDisclaimer: "Vill du donera till det här projektet? Fyll i formuläret. Inte för att KYC:a oss — utan för att KYC:a DIG.",
|
||||
grantsDisclaimerDesc: "Den här kanalen är bara för bidragsgivare som KYC/KYB:ar sina mottagare. Är du en skatare som bara vill donera, använd Lightning-, Silent Payments- eller Angor-vägarna ovan — ingen behöver ditt pass.",
|
||||
grantsOrg: "Organisation",
|
||||
grantsContact: "Kontakt (npub, e-post eller användarnamn)",
|
||||
grantsWebsite: "Webbplats",
|
||||
grantsProgram: "Bidragsprogram / omgång",
|
||||
grantsSize: "Bidragsbelopp",
|
||||
grantsKyc: "KYC- / KYB-process",
|
||||
grantsFund: "Vad vill du finansiera?",
|
||||
grantsAck: "Jag bekräftar att vi är en bidragsgivare som KYC/KYB:ar våra mottagare.",
|
||||
grantsSend: "Öppna bidragssamtal",
|
||||
grantsNote: "Öppnar ett privat meddelande till SkateSpots ägare. Inget sparas på den här sidan.",
|
||||
backAngor: "Stötta oss på Angor",
|
||||
backers: "Supportrar",
|
||||
backersDesc: "Skatare som stöttat SkateSpots – on-chain-finansiering via Angor och Lightning-zaps till projektet.",
|
||||
|
|
@ -937,12 +952,14 @@ const svBatch4 = {
|
|||
nip05NotVerified: "NIP-05 inte verifierad mot den här nyckeln",
|
||||
message: "Meddelande",
|
||||
eventsHosted: "Arrangerade evenemang",
|
||||
openToSponsorships: "Öppen för sponsring",
|
||||
forSponsors: "För sponsorer & samarbeten",
|
||||
sponsorPitch: "Sponsring, samarbete, foto/video eller evenemang? Starta ett samtal.",
|
||||
startCollab: "Starta en samarbetschatt",
|
||||
viewRiderCard: "Visa skejtarkortet",
|
||||
collabMessage: "Hej {{name}}, jag skulle vilja prata om sponsring eller samarbete.",
|
||||
followers: "Följare",
|
||||
followersHint: "Följarlistor rapporterade av reläer – inte granskad analys.",
|
||||
following: "Följer",
|
||||
follow: "Följ",
|
||||
unfollow: "Sluta följa",
|
||||
|
|
|
|||
|
|
@ -357,6 +357,10 @@ const thBatch8 = {
|
|||
bannerImage: 'รูปแบนเนอร์',
|
||||
bannerDesc: 'รูปแนวนอนสำหรับด้านบนของโปรไฟล์ของคุณ',
|
||||
website: 'เว็บไซต์',
|
||||
openToSponsorships: 'เปิดรับสปอนเซอร์',
|
||||
openToSponsorshipsHint: 'แสดงการ์ดสปอนเซอร์/ความร่วมมือบนโปรไฟล์ของคุณ จะไม่มีการแชร์ข้อมูลใด ๆ จนกว่าจะมีคนส่งข้อความหาคุณ',
|
||||
sponsorNote: 'บันทึกเกี่ยวกับสปอนเซอร์ (ไม่บังคับ)',
|
||||
sponsorNotePlaceholder: 'เช่น เปิดรับพาร์ทเนอร์ด้านเด็ค รองเท้า การเดินทาง และอีเวนต์',
|
||||
bitcoinTitle: 'Bitcoin และการชำระเงิน',
|
||||
bitcoinDesc: 'ให้ผู้คน Zap ให้ทิป และจ่ายเงินคุณโดยตรง — ไม่มีคนกลาง',
|
||||
lightningAddress: 'ที่อยู่ Lightning',
|
||||
|
|
|
|||
|
|
@ -896,6 +896,21 @@ const thBatch9 = {
|
|||
community: 'ชุมชน',
|
||||
heroDesc:
|
||||
'SkateSpots สร้างโดยและเพื่อชุมชน ผู้สนับสนุน ผู้ร่วมงาน พาร์ตเนอร์ และเพื่อน ๆ ที่ช่วยให้มันฟรีและกระจายศูนย์',
|
||||
grantsSection: 'ผู้ให้ทุน Bitcoin',
|
||||
grantsSectionDesc: 'สำหรับองค์กรที่ให้เงินทุนแก่โครงการ Bitcoin โอเพนซอร์ส',
|
||||
grantsTitle: 'เปิดรับผู้สนับสนุน · ผู้ให้ทุน Bitcoin',
|
||||
grantsDisclaimer: 'อยากบริจาคให้โปรเจกต์นี้ไหม? กรอกแบบฟอร์มสิ ไม่ใช่เพื่อ KYC เรา — แต่เพื่อ KYC คุณ',
|
||||
grantsDisclaimerDesc: 'ช่องทางนี้มีไว้สำหรับผู้ให้ทุนที่ทำ KYC/KYB กับผู้รับทุนเท่านั้น ถ้าคุณเป็นนักสเก็ตที่แค่อยากบริจาค ให้ใช้ช่องทาง Lightning, Silent Payments หรือ Angor ด้านบน — ไม่มีใครต้องการหนังสือเดินทางของคุณ',
|
||||
grantsOrg: 'องค์กร',
|
||||
grantsContact: 'ติดต่อ (npub, อีเมล หรือชื่อผู้ใช้)',
|
||||
grantsWebsite: 'เว็บไซต์',
|
||||
grantsProgram: 'โครงการ / รอบทุน',
|
||||
grantsSize: 'ขนาดทุน',
|
||||
grantsKyc: 'กระบวนการ KYC / KYB',
|
||||
grantsFund: 'คุณอยากสนับสนุนอะไร?',
|
||||
grantsAck: 'ฉันยืนยันว่าเราเป็นผู้ให้ทุนที่ทำ KYC/KYB กับผู้รับทุนของเรา',
|
||||
grantsSend: 'เปิดบทสนทนาเรื่องทุน',
|
||||
grantsNote: 'เปิดข้อความส่วนตัวถึงเจ้าของ SkateSpots ไม่มีข้อมูลใดถูกเก็บในหน้านี้',
|
||||
backAngor: 'สนับสนุนเราบน Angor',
|
||||
backers: 'ผู้สนับสนุน',
|
||||
backersDesc:
|
||||
|
|
@ -1046,12 +1061,14 @@ const thBatch9 = {
|
|||
nip05NotVerified: 'NIP-05 ยังไม่ได้รับการยืนยันกับกุญแจนี้',
|
||||
message: 'ข้อความ',
|
||||
eventsHosted: 'กิจกรรมที่จัดขึ้น',
|
||||
openToSponsorships: 'เปิดรับสปอนเซอร์',
|
||||
forSponsors: 'สำหรับสปอนเซอร์และความร่วมมือ',
|
||||
sponsorPitch: 'การสนับสนุน ความร่วมมือ ภาพ/วิดีโอ หรืออีเวนต์? เริ่มคุยกันได้เลย',
|
||||
startCollab: 'เริ่มแชตความร่วมมือ',
|
||||
viewRiderCard: 'ดูการ์ดนักสเก็ต',
|
||||
collabMessage: 'สวัสดี {{name}} ฉันอยากคุยเรื่องการสนับสนุนหรือความร่วมมือ',
|
||||
followers: 'ผู้ติดตาม',
|
||||
followersHint: 'รายชื่อผู้ติดตามที่รายงานโดยรีเลย์ — ไม่ใช่ข้อมูลวิเคราะห์ที่ตรวจสอบแล้ว',
|
||||
following: 'กำลังติดตาม',
|
||||
follow: 'ติดตาม',
|
||||
unfollow: 'เลิกติดตาม',
|
||||
|
|
|
|||
|
|
@ -349,6 +349,10 @@ const trBatch3 = {
|
|||
bannerImage: "Afiş görseli",
|
||||
bannerDesc: "Profilinizin üstü için geniş bir görsel.",
|
||||
website: "Web sitesi",
|
||||
openToSponsorships: "Sponsorluğa açık",
|
||||
openToSponsorshipsHint: "Profilinde sponsor/iş birliği kartı gösterir. Biri sana mesaj atmadan hiçbir şey paylaşılmaz.",
|
||||
sponsorNote: "Sponsorluk notu (isteğe bağlı)",
|
||||
sponsorNotePlaceholder: "ör. deck, ayakkabı, seyahat ve etkinlik ortaklarına açık.",
|
||||
bitcoinTitle: "Bitcoin & Ödemeler",
|
||||
bitcoinDesc: "İnsanların size doğrudan zap, bahşiş ve ödeme yapmasına izin verin — aracı yok.",
|
||||
lightningAddress: "Lightning adresi",
|
||||
|
|
|
|||
|
|
@ -807,6 +807,21 @@ const trBatch4 = {
|
|||
our: "BİZİM",
|
||||
community: "TOPLULUK",
|
||||
heroDesc: "SkateSpots topluluk tarafından ve topluluk için inşa edilir. Bunu ücretsiz ve merkeziyetsiz tutan destekçiler, işbirlikçiler, ortaklar ve dostlar.",
|
||||
grantsSection: "Bitcoin hibe kuruluşları",
|
||||
grantsSectionDesc: "Açık kaynak Bitcoin projelerine hibe veren kuruluşlar için.",
|
||||
grantsTitle: "Sponsorluklara açık · Bitcoin hibe kuruluşları",
|
||||
grantsDisclaimer: "Bu projeye bağış yapmak mı istiyorsunuz? Formu doldurun. Bize KYC yapmak için değil — SİZE KYC yapmak için.",
|
||||
grantsDisclaimerDesc: "Bu kanal yalnızca hibe alanlarına KYC/KYB uygulayan hibe kuruluşları içindir. Sadece bağış yapmak isteyen bir kaykaycıysanız, yukarıdaki Lightning, Silent Payments veya Angor yollarını kullanın — kimsenin pasaportunuza ihtiyacı yok.",
|
||||
grantsOrg: "Kuruluş",
|
||||
grantsContact: "İletişim (npub, e-posta veya kullanıcı adı)",
|
||||
grantsWebsite: "Web sitesi",
|
||||
grantsProgram: "Hibe programı / turu",
|
||||
grantsSize: "Hibe tutarı",
|
||||
grantsKyc: "KYC / KYB süreci",
|
||||
grantsFund: "Neyi finanse etmek istersiniz?",
|
||||
grantsAck: "Hibe alanlarımıza KYC/KYB uygulayan bir hibe kuruluşu olduğumuzu onaylıyorum.",
|
||||
grantsSend: "Hibe görüşmesi başlat",
|
||||
grantsNote: "SkateSpots sahibine özel bir mesaj açar. Bu sayfada hiçbir şey saklanmaz.",
|
||||
backAngor: "Bizi Angor'da destekle",
|
||||
backers: "Destekçiler",
|
||||
backersDesc: "SkateSpots'u destekleyen kaykaycılar — Angor aracılığıyla zincir üstü fonlama ve projeye Lightning zap'leri.",
|
||||
|
|
@ -937,12 +952,14 @@ const trBatch4 = {
|
|||
nip05NotVerified: "NIP-05 bu anahtara karşı doğrulanmadı",
|
||||
message: "Mesaj",
|
||||
eventsHosted: "Düzenlenen etkinlikler",
|
||||
openToSponsorships: "Sponsorluğa açık",
|
||||
forSponsors: "Sponsorlar ve iş birlikleri için",
|
||||
sponsorPitch: "Sponsorluk, iş birliği, fotoğraf/video veya etkinlik mi? Hemen konuşmaya başla.",
|
||||
startCollab: "İş birliği sohbeti başlat",
|
||||
viewRiderCard: "Rider kartını görüntüle",
|
||||
collabMessage: "Merhaba {{name}}, bir sponsorluk veya iş birliği hakkında konuşmak istiyorum.",
|
||||
followers: "Takipçiler",
|
||||
followersHint: "Rölelerin bildirdiği takipçi listeleri — denetlenmiş analizler değildir.",
|
||||
following: "Takip Edilen",
|
||||
follow: "Takip Et",
|
||||
unfollow: "Takibi Bırak",
|
||||
|
|
|
|||
|
|
@ -349,6 +349,10 @@ const ukBatch3 = {
|
|||
bannerImage: "Банер",
|
||||
bannerDesc: "Широке зображення для верхньої частини вашого профілю.",
|
||||
website: "Вебсайт",
|
||||
openToSponsorships: "Відкритий до спонсорства",
|
||||
openToSponsorshipsHint: "Показує картку спонсора/колаборації у вашому профілі. Нічого не публікується, доки хтось не напише вам.",
|
||||
sponsorNote: "Нотатка про спонсорство (необов’язково)",
|
||||
sponsorNotePlaceholder: "наприклад: відкритий до партнерів із деками, взуттям, мандрівками та подіями.",
|
||||
bitcoinTitle: "Bitcoin і платежі",
|
||||
bitcoinDesc: "Дозвольте людям надсилати вам Zap, чайові та платити напряму — без посередників.",
|
||||
lightningAddress: "Адреса Lightning",
|
||||
|
|
|
|||
|
|
@ -807,6 +807,21 @@ const ukBatch4 = {
|
|||
our: "НАША",
|
||||
community: "СПІЛЬНОТА",
|
||||
heroDesc: "SkateSpots створено спільнотою і для спільноти. Підтримувачі, співучасники, партнери й друзі, які тримають це вільним і децентралізованим.",
|
||||
grantsSection: "Грантодавці біткоїна",
|
||||
grantsSectionDesc: "Для організацій, які видають гранти проєктам біткоїна з відкритим кодом.",
|
||||
grantsTitle: "Відкриті до спонсорства · Грантодавці біткоїна",
|
||||
grantsDisclaimer: "Хочете підтримати цей проєкт? Заповніть форму. Не для того, щоб KYC пройшли ми — а для того, щоб його пройшли ВИ.",
|
||||
grantsDisclaimerDesc: "Цей канал лише для грантодавців, які проводять KYC/KYB своїм отримувачам. Якщо ви скейтер і просто хочете підтримати проєкт, скористайтеся шляхами Lightning, Silent Payments або Angor вище — ваш паспорт нікому не потрібен.",
|
||||
grantsOrg: "Організація",
|
||||
grantsContact: "Контакт (npub, ел. пошта або нікнейм)",
|
||||
grantsWebsite: "Сайт",
|
||||
grantsProgram: "Грантова програма / раунд",
|
||||
grantsSize: "Розмір гранту",
|
||||
grantsKyc: "Процедура KYC / KYB",
|
||||
grantsFund: "Що ви хочете профінансувати?",
|
||||
grantsAck: "Підтверджую, що ми грантодавець, який проводить KYC/KYB своїм отримувачам.",
|
||||
grantsSend: "Почати розмову про грант",
|
||||
grantsNote: "Відкриває приватне повідомлення власнику SkateSpots. На цій сторінці нічого не зберігається.",
|
||||
backAngor: "Підтримайте нас на Angor",
|
||||
backers: "Підтримувачі",
|
||||
backersDesc: "Скейтери, які підтримали SkateSpots — фінансування on-chain через Angor і Lightning zaps для проєкту.",
|
||||
|
|
@ -937,12 +952,14 @@ const ukBatch4 = {
|
|||
nip05NotVerified: "NIP-05 не підтверджено для цього ключа",
|
||||
message: "Повідомлення",
|
||||
eventsHosted: "Проведені події",
|
||||
openToSponsorships: "Відкритий до спонсорства",
|
||||
forSponsors: "Для спонсорів і колаборацій",
|
||||
sponsorPitch: "Спонсорство, колаборація, фото/відео чи подія? Почніть розмову.",
|
||||
startCollab: "Почати чат про колаборацію",
|
||||
viewRiderCard: "Переглянути картку райдера",
|
||||
collabMessage: "Привіт, {{name}}! Хочу обговорити спонсорство або колаборацію.",
|
||||
followers: "Підписники",
|
||||
followersHint: "Списки підписників за даними релеїв — це не перевірена аналітика.",
|
||||
following: "Підписки",
|
||||
follow: "Підписатися",
|
||||
unfollow: "Відписатися",
|
||||
|
|
|
|||
|
|
@ -349,6 +349,10 @@ const viBatch3 = {
|
|||
bannerImage: "Ảnh bìa",
|
||||
bannerDesc: "Một hình rộng cho phần trên hồ sơ của bạn.",
|
||||
website: "Trang web",
|
||||
openToSponsorships: "Sẵn sàng nhận tài trợ",
|
||||
openToSponsorshipsHint: "Hiển thị thẻ tài trợ/hợp tác trên hồ sơ của bạn. Không có gì được chia sẻ cho đến khi ai đó nhắn tin cho bạn.",
|
||||
sponsorNote: "Ghi chú về tài trợ (không bắt buộc)",
|
||||
sponsorNotePlaceholder: "ví dụ: Sẵn sàng hợp tác về ván, giày, du lịch và sự kiện.",
|
||||
bitcoinTitle: "Bitcoin & Thanh toán",
|
||||
bitcoinDesc: "Để mọi người zap, tip và trả tiền trực tiếp cho bạn — không trung gian.",
|
||||
lightningAddress: "Địa chỉ Lightning",
|
||||
|
|
|
|||
|
|
@ -815,6 +815,21 @@ const viBatch4 = {
|
|||
our: 'CỦA CHÚNG TÔI',
|
||||
community: 'CỘNG ĐỒNG',
|
||||
heroDesc: 'SkateSpots được xây bởi và vì cộng đồng. Những người ủng hộ, cộng tác viên, đối tác và bạn bè cùng giữ điều này miễn phí và phi tập trung.',
|
||||
grantsSection: 'Tổ chức tài trợ Bitcoin',
|
||||
grantsSectionDesc: 'Dành cho các tổ chức cấp tài trợ cho các dự án Bitcoin mã nguồn mở.',
|
||||
grantsTitle: 'Mở cho tài trợ · Tổ chức tài trợ Bitcoin',
|
||||
grantsDisclaimer: 'Muốn quyên góp cho dự án này? Hãy điền biểu mẫu. Không phải để KYC chúng tôi — mà để KYC BẠN.',
|
||||
grantsDisclaimerDesc: 'Kênh này chỉ dành cho các tổ chức tài trợ thực hiện KYC/KYB với người nhận tài trợ. Nếu bạn là một skater chỉ muốn quyên góp, hãy dùng các kênh Lightning, Silent Payments hoặc Angor ở trên — không ai cần hộ chiếu của bạn.',
|
||||
grantsOrg: 'Tổ chức',
|
||||
grantsContact: 'Liên hệ (npub, thư điện tử hoặc tên người dùng)',
|
||||
grantsWebsite: 'Trang web',
|
||||
grantsProgram: 'Chương trình / vòng tài trợ',
|
||||
grantsSize: 'Quy mô tài trợ',
|
||||
grantsKyc: 'Quy trình KYC / KYB',
|
||||
grantsFund: 'Bạn muốn tài trợ cho điều gì?',
|
||||
grantsAck: 'Tôi xác nhận chúng tôi là tổ chức tài trợ thực hiện KYC/KYB với người nhận tài trợ.',
|
||||
grantsSend: 'Mở cuộc trò chuyện về tài trợ',
|
||||
grantsNote: 'Mở tin nhắn riêng tới chủ sở hữu SkateSpots. Không có gì được lưu trên trang này.',
|
||||
backAngor: 'Ủng hộ trên Angor',
|
||||
backers: 'Người ủng hộ',
|
||||
backersDesc: 'Những skater đã ủng hộ SkateSpots — tài trợ on-chain qua Angor, và zap Lightning cho dự án.',
|
||||
|
|
@ -945,12 +960,14 @@ const viBatch4 = {
|
|||
nip05NotVerified: 'NIP-05 chưa được xác minh với khóa này',
|
||||
message: 'Nhắn tin',
|
||||
eventsHosted: 'Sự kiện đã tổ chức',
|
||||
openToSponsorships: 'Sẵn sàng nhận tài trợ',
|
||||
forSponsors: 'Dành cho nhà tài trợ & hợp tác',
|
||||
sponsorPitch: 'Tài trợ, hợp tác, ảnh/video hay sự kiện? Bắt đầu trò chuyện nhé.',
|
||||
startCollab: 'Bắt đầu trò chuyện hợp tác',
|
||||
viewRiderCard: 'Xem thẻ người trượt ván',
|
||||
collabMessage: 'Chào {{name}}, tôi muốn trao đổi về tài trợ hoặc hợp tác.',
|
||||
followers: 'Người theo dõi',
|
||||
followersHint: 'Danh sách người theo dõi do relay báo cáo — không phải số liệu phân tích đã kiểm toán.',
|
||||
following: 'Đang theo dõi',
|
||||
follow: 'Theo dõi',
|
||||
unfollow: 'Bỏ theo dõi',
|
||||
|
|
|
|||
|
|
@ -349,6 +349,10 @@ export const zhCNBatch3 = {
|
|||
bannerImage: "横幅图片",
|
||||
bannerDesc: "一张用于个人资料顶部的宽图。",
|
||||
website: "网站",
|
||||
openToSponsorships: "开放赞助合作",
|
||||
openToSponsorshipsHint: "在你的个人资料中显示赞助/合作卡片。在有人联系你之前,不会分享任何内容。",
|
||||
sponsorNote: "赞助备注(可选)",
|
||||
sponsorNotePlaceholder: "例如:开放滑板板面、鞋子、旅行和活动合作。",
|
||||
bitcoinTitle: "Bitcoin 与支付",
|
||||
bitcoinDesc: "让人们直接向你 Zap、打赏和付款——无需中间人。",
|
||||
lightningAddress: "Lightning 地址",
|
||||
|
|
|
|||
|
|
@ -812,6 +812,21 @@ const zhCNBatch4 = {
|
|||
our: "我们的",
|
||||
community: "社区",
|
||||
heroDesc: "SkateSpots 由社区构建,也服务于社区。支持者、协作者、合作伙伴和朋友让它保持免费和去中心化。",
|
||||
grantsSection: "比特币资助机构",
|
||||
grantsSectionDesc: "面向为开源比特币项目提供资助的组织。",
|
||||
grantsTitle: "开放赞助 · 比特币资助机构",
|
||||
grantsDisclaimer: "想给这个项目捐款?请填写表单。不是给我们做 KYC——是给你做 KYC。",
|
||||
grantsDisclaimerDesc: "这个渠道只面向会对受助方进行 KYC/KYB 的资助机构。如果你只是想来捐款的滑手,请使用上方的 Lightning、Silent Payments 或 Angor 通道——没人需要你的护照。",
|
||||
grantsOrg: "组织",
|
||||
grantsContact: "联系方式(npub、电子邮件或用户名)",
|
||||
grantsWebsite: "网站",
|
||||
grantsProgram: "资助计划 / 轮次",
|
||||
grantsSize: "资助金额",
|
||||
grantsKyc: "KYC / KYB 流程",
|
||||
grantsFund: "你想资助什么?",
|
||||
grantsAck: "我确认我们是会对受助方进行 KYC/KYB 的资助机构。",
|
||||
grantsSend: "开启资助洽谈",
|
||||
grantsNote: "打开与 SkateSpots 所有者的私信。此页面不会存储任何内容。",
|
||||
backAngor: "在 Angor 上支持我们",
|
||||
backers: "支持者",
|
||||
backersDesc: "支持 SkateSpots 的滑手 —— 通过 Angor 的链上资助,以及对项目的 Lightning zaps。",
|
||||
|
|
@ -942,12 +957,14 @@ const zhCNBatch4 = {
|
|||
nip05NotVerified: "NIP-05 与此密钥未通过验证",
|
||||
message: "私信",
|
||||
eventsHosted: "主办的活动",
|
||||
openToSponsorships: "开放赞助合作",
|
||||
forSponsors: "赞助与合作",
|
||||
sponsorPitch: "赞助、合作、拍摄照片/视频还是办活动?来聊聊吧。",
|
||||
startCollab: "发起合作聊天",
|
||||
viewRiderCard: "查看滑手名片",
|
||||
collabMessage: "你好 {{name}},我想聊聊赞助或合作的事。",
|
||||
followers: "粉丝",
|
||||
followersHint: "由中继报告的关注列表 — 并非经审计的分析数据。",
|
||||
following: "关注中",
|
||||
follow: "关注",
|
||||
unfollow: "取消关注",
|
||||
|
|
|
|||
|
|
@ -349,6 +349,10 @@ const zhTWBatch3 = {
|
|||
bannerImage: "橫幅圖片",
|
||||
bannerDesc: "一張用於個人檔案頂端的寬圖。",
|
||||
website: "網站",
|
||||
openToSponsorships: "開放贊助合作",
|
||||
openToSponsorshipsHint: "在你的個人檔案中顯示贊助/合作卡片。在有人傳訊息給你之前,不會分享任何內容。",
|
||||
sponsorNote: "贊助備註(選填)",
|
||||
sponsorNotePlaceholder: "例如:開放滑板板面、鞋子、旅行和活動合作。",
|
||||
bitcoinTitle: "Bitcoin 與付款",
|
||||
bitcoinDesc: "讓人們直接向你 Zap、打賞和付款——無需中間人。",
|
||||
lightningAddress: "Lightning 位址",
|
||||
|
|
|
|||
|
|
@ -812,6 +812,21 @@ const zhTWBatch4 = {
|
|||
our: "我們的",
|
||||
community: "社群",
|
||||
heroDesc: "SkateSpots 由社群構建,也服務於社群。支持者、協作者、合作伙伴和朋友讓它保持免費和去中心化。",
|
||||
grantsSection: "比特幣資助機構",
|
||||
grantsSectionDesc: "面向為開源比特幣專案提供資助的組織。",
|
||||
grantsTitle: "開放贊助 · 比特幣資助機構",
|
||||
grantsDisclaimer: "想贊助這個專案?請填寫表單。不是對我們做 KYC——是對你做 KYC。",
|
||||
grantsDisclaimerDesc: "這個管道只開放給會對受助者進行 KYC/KYB 的資助機構。如果你只是單純想捐款的滑手,請使用上方的 Lightning、Silent Payments 或 Angor 管道——沒有人需要你的護照。",
|
||||
grantsOrg: "組織",
|
||||
grantsContact: "聯絡方式(npub、電子郵件或使用者名稱)",
|
||||
grantsWebsite: "網站",
|
||||
grantsProgram: "資助計畫 / 輪次",
|
||||
grantsSize: "資助金額",
|
||||
grantsKyc: "KYC / KYB 流程",
|
||||
grantsFund: "你想資助什麼?",
|
||||
grantsAck: "我確認我們是會對受助者進行 KYC/KYB 的資助機構。",
|
||||
grantsSend: "開啟資助洽談",
|
||||
grantsNote: "開啟與 SkateSpots 擁有者的私訊。此頁面不會儲存任何內容。",
|
||||
backAngor: "在 Angor 上支援我們",
|
||||
backers: "支持者",
|
||||
backersDesc: "支援 SkateSpots 的滑手 —— 透過 Angor 的鏈上資助,以及對專案的 Lightning zaps。",
|
||||
|
|
@ -942,12 +957,14 @@ const zhTWBatch4 = {
|
|||
nip05NotVerified: "NIP-05 與此金鑰未透過驗證",
|
||||
message: "私信",
|
||||
eventsHosted: "主辦的活動",
|
||||
openToSponsorships: "開放贊助合作",
|
||||
forSponsors: "贊助與合作",
|
||||
sponsorPitch: "贊助、合作、拍攝照片/影片還是辦活動?來聊聊吧。",
|
||||
startCollab: "發起合作聊天",
|
||||
viewRiderCard: "查看滑手名片",
|
||||
collabMessage: "你好 {{name}},我想聊聊贊助或合作的事。",
|
||||
followers: "粉絲",
|
||||
followersHint: "由中繼回報的追蹤名單 — 並非經稽核的分析資料。",
|
||||
following: "追蹤中",
|
||||
follow: "關注",
|
||||
unfollow: "取消關注",
|
||||
|
|
|
|||
|
|
@ -36,7 +36,7 @@ import { cn } from '@/lib/utils';
|
|||
import { SKATER_STANCES, SKATER_STYLES, SKATER_LEVELS, NEWSLETTER_KIND } from '@/lib/types';
|
||||
import { NewsletterIssueView } from '@/components/NewsletterIssueView';
|
||||
import NotFound from './NotFound';
|
||||
import { MapPin, Store, MessageCircle, Globe, Zap, ExternalLink, Copy, Check, ShieldCheck, ShieldAlert, Loader2, Instagram, Share2, Users, Crown, Bot, Pencil, Package, Tag, ArrowRightLeft, Bitcoin, Award, MessageSquareLock, PersonStanding, Sparkles, Home, Clock, Server, Plus, UserPlus, UserCheck, Handshake } from 'lucide-react';
|
||||
import { MapPin, Store, MessageCircle, Globe, Zap, ExternalLink, Copy, Check, ShieldCheck, ShieldAlert, Loader2, Info, Instagram, Share2, Users, Crown, Bot, Pencil, Package, Tag, ArrowRightLeft, Bitcoin, Award, MessageSquareLock, PersonStanding, Sparkles, Home, Clock, Server, Plus, UserPlus, UserCheck, Handshake } from 'lucide-react';
|
||||
import { useState, type ReactNode } from 'react';
|
||||
import { UserStatusIndicator } from '@/components/UserStatusIndicator';
|
||||
import { ShareProfileDialog } from '@/components/ShareProfileDialog';
|
||||
|
|
@ -62,6 +62,7 @@ function StatPill({
|
|||
loading,
|
||||
icon,
|
||||
onClick,
|
||||
hint,
|
||||
}: {
|
||||
value: number;
|
||||
label: string;
|
||||
|
|
@ -69,6 +70,7 @@ function StatPill({
|
|||
loading?: boolean;
|
||||
icon?: ReactNode;
|
||||
onClick?: () => void;
|
||||
hint?: string;
|
||||
}) {
|
||||
const interactive = !!onClick && value > 0;
|
||||
const empty = !loading && value === 0;
|
||||
|
|
@ -94,6 +96,9 @@ function StatPill({
|
|||
)}
|
||||
<p className={`text-[10px] uppercase tracking-wide font-bold mt-0.5 transition-colors ${empty ? 'text-gray-600' : 'text-gray-400 group-hover:text-gray-200'}`}>
|
||||
{label}
|
||||
{hint && (
|
||||
<Info className="ml-1 inline h-2.5 w-2.5 align-[-1px] text-gray-600" aria-label={hint} />
|
||||
)}
|
||||
</p>
|
||||
</div>
|
||||
</>
|
||||
|
|
@ -106,6 +111,7 @@ function StatPill({
|
|||
<button
|
||||
type="button"
|
||||
onClick={onClick}
|
||||
title={hint}
|
||||
className={`${base} border-white/10 bg-white/[0.04] hover:bg-white/10 hover:border-white/25 hover:-translate-y-0.5 cursor-pointer`}
|
||||
>
|
||||
{inner}
|
||||
|
|
@ -113,7 +119,7 @@ function StatPill({
|
|||
);
|
||||
}
|
||||
|
||||
return <div className={`${base} border-white/5 bg-white/[0.02]`}>{inner}</div>;
|
||||
return <div className={`${base} border-white/5 bg-white/[0.02]`} title={hint}>{inner}</div>;
|
||||
}
|
||||
|
||||
function ProfilePage({ pubkey }: { pubkey: string }) {
|
||||
|
|
@ -154,6 +160,8 @@ function ProfilePage({ pubkey }: { pubkey: string }) {
|
|||
const silentPayment = typeof raw?.bitcoin_silent_payment === 'string' ? raw.bitcoin_silent_payment : undefined;
|
||||
const userBadges = parseBadges(metadata);
|
||||
const cordnUrl = typeof raw?.cordn === 'string' ? raw.cordn : undefined;
|
||||
const openToSponsorships = raw?.sponsorships_open === true;
|
||||
const sponsorNote = typeof raw?.sponsorships_note === 'string' ? raw.sponsorships_note : '';
|
||||
// When the profile's `cordn` value is a coordinator pointer, we can offer a
|
||||
// one-tap "Add" instead of just a link.
|
||||
const cordnPointer = cordnUrl ? parseCoordinatorInput(cordnUrl) : null;
|
||||
|
|
@ -184,7 +192,7 @@ function ProfilePage({ pubkey }: { pubkey: string }) {
|
|||
);
|
||||
// Only invite sponsor/collab conversations on profiles that actually show
|
||||
// skate activity — an empty kind-0 shouldn't read as a media kit.
|
||||
const sponsorReady = hasSkateLayer || crews.length > 0 || (spots?.length ?? 0) > 0 || events.length > 0;
|
||||
const sponsorReady = openToSponsorships || hasSkateLayer || crews.length > 0 || (spots?.length ?? 0) > 0 || events.length > 0;
|
||||
|
||||
const handleCopyNpub = () => {
|
||||
navigator.clipboard.writeText(npub);
|
||||
|
|
@ -261,6 +269,11 @@ function ProfilePage({ pubkey }: { pubkey: string }) {
|
|||
<Bot className="h-3 w-3" /> Bot
|
||||
</Badge>
|
||||
)}
|
||||
{openToSponsorships && (
|
||||
<Badge className="gap-1 border-pink-500/40 bg-pink-500/15 text-pink-300">
|
||||
<Handshake className="h-3 w-3" /> {t('walletUi.profile.openToSponsorships')}
|
||||
</Badge>
|
||||
)}
|
||||
</div>
|
||||
{nip05 && (
|
||||
<p
|
||||
|
|
@ -395,7 +408,7 @@ function ProfilePage({ pubkey }: { pubkey: string }) {
|
|||
<StatPill value={crews.length} label={t('walletUi.profile.crews')} color="#2dd4bf" icon={<Users className="h-4 w-4" />} loading={crewsLoading} onClick={() => scrollToSection('section-crews')} />
|
||||
<StatPill value={events.length} label={t('nav.events')} color="#ccff00" icon={<Clock className="h-4 w-4" />} loading={eventsLoading} onClick={() => scrollToSection('section-events')} />
|
||||
<StatPill value={publicStash?.length ?? 0} label={t('walletUi.profile.gear')} color="#ff6600" icon={<Package className="h-4 w-4" />} loading={publicStashLoading} onClick={() => scrollToSection('section-stash')} />
|
||||
<StatPill value={followers.length} label={t('walletUi.profile.followers')} color="#ec4899" icon={<Users className="h-4 w-4" />} loading={followersLoading} />
|
||||
<StatPill value={followers.length} label={t('walletUi.profile.followers')} color="#ec4899" icon={<Users className="h-4 w-4" />} loading={followersLoading} hint={t('walletUi.profile.followersHint')} />
|
||||
</div>
|
||||
|
||||
{/* Secondary meta line: zaps received + member since */}
|
||||
|
|
@ -803,9 +816,11 @@ function ProfilePage({ pubkey }: { pubkey: string }) {
|
|||
</div>
|
||||
<div className="min-w-0">
|
||||
<p className="text-[10px] font-black uppercase tracking-[0.15em] text-pink-300">
|
||||
{t('walletUi.profile.forSponsors')}
|
||||
{openToSponsorships ? t('walletUi.profile.openToSponsorships') : t('walletUi.profile.forSponsors')}
|
||||
</p>
|
||||
<p className="text-xs text-gray-400">
|
||||
{openToSponsorships && sponsorNote ? sponsorNote : t('walletUi.profile.sponsorPitch')}
|
||||
</p>
|
||||
<p className="text-xs text-gray-400">{t('walletUi.profile.sponsorPitch')}</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
import { useMemo, useState } from 'react';
|
||||
import { useSeoMeta } from '@unhead/react';
|
||||
import { Link } from 'react-router-dom';
|
||||
import { Link, useNavigate } from 'react-router-dom';
|
||||
import { nip19 } from 'nostr-tools';
|
||||
import { ExternalLink, Zap, Heart, Users, Handshake, Building2, Star, ShieldCheck, Server, Globe, Bot, Code2, Briefcase, Megaphone, TrendingUp } from 'lucide-react';
|
||||
import { ExternalLink, Zap, Heart, Users, Handshake, Building2, Star, ShieldCheck, Server, Globe, Bot, Code2, Briefcase, Megaphone, TrendingUp, Info } from 'lucide-react';
|
||||
import { SupportSkateSpots } from '@/components/SupportSkateSpots';
|
||||
import { SilentPaymentsCard } from '@/components/SilentPaymentsCard';
|
||||
import { AngorProjectCard, ANGOR_PROJECT_URL } from '@/components/AngorProjectCard';
|
||||
|
|
@ -16,6 +16,10 @@ import { PLATFORM_OWNER_PUBKEYS } from '@/hooks/useListingRestrictions';
|
|||
import { useSatsToUsd } from '@/hooks/useExchangeRate';
|
||||
import { useZapLeaderboard } from '@/hooks/useZapLeaderboard';
|
||||
import { useTranslation } from '@/contexts/language';
|
||||
import { Input } from '@/components/ui/input';
|
||||
import { Textarea } from '@/components/ui/textarea';
|
||||
import { Label } from '@/components/ui/label';
|
||||
import { Button } from '@/components/ui/button';
|
||||
|
||||
|
||||
// Only count support received from this point (the project's public launch era).
|
||||
|
|
@ -123,8 +127,108 @@ const PAYS_FOR = [
|
|||
// ─── Silent-payments donation card (BIP-353 name → BIP-321 URI) ──────────────
|
||||
|
||||
|
||||
// ─── Bitcoin grantmaker inquiry ──────────────────────────────────────────────
|
||||
|
||||
function GrantmakerForm() {
|
||||
const { t } = useTranslation();
|
||||
const navigate = useNavigate();
|
||||
const owner = PLATFORM_OWNER_PUBKEYS[0];
|
||||
const [org, setOrg] = useState('');
|
||||
const [contact, setContact] = useState('');
|
||||
const [website, setWebsite] = useState('');
|
||||
const [program, setProgram] = useState('');
|
||||
const [grantSize, setGrantSize] = useState('');
|
||||
const [kyc, setKyc] = useState('');
|
||||
const [fund, setFund] = useState('');
|
||||
const [ack, setAck] = useState(false);
|
||||
|
||||
const canSend = !!org.trim() && !!contact.trim() && ack && !!owner;
|
||||
const message = [
|
||||
'Bitcoin grantmaker inquiry — SkateSpots',
|
||||
'',
|
||||
`Organization: ${org.trim()}`,
|
||||
`Contact: ${contact.trim()}`,
|
||||
website.trim() ? `Website: ${website.trim()}` : '',
|
||||
program.trim() ? `Program / round: ${program.trim()}` : '',
|
||||
grantSize.trim() ? `Grant size: ${grantSize.trim()}` : '',
|
||||
kyc.trim() ? `KYC / KYB process: ${kyc.trim()}` : '',
|
||||
fund.trim() ? `What we would like to fund: ${fund.trim()}` : '',
|
||||
'',
|
||||
'I confirm this is a grantmaker inquiry and we KYC/KYB our grantees.',
|
||||
].filter(Boolean).join('\n');
|
||||
|
||||
return (
|
||||
<div className="rounded-2xl border-2 border-[#f7931a]/30 bg-gradient-to-br from-[#f7931a]/10 via-black to-transparent p-4 sm:p-6">
|
||||
<div className="flex items-start gap-3">
|
||||
<div className="flex h-10 w-10 shrink-0 items-center justify-center rounded-xl bg-[#f7931a]/15 text-[#f7931a]">
|
||||
<Handshake className="h-5 w-5" />
|
||||
</div>
|
||||
<div className="min-w-0">
|
||||
<h3 className="text-lg font-black uppercase text-white">{t('walletUi.supporters.grantsTitle')}</h3>
|
||||
<p className="mt-1 text-sm font-bold text-[#f7931a]">{t('walletUi.supporters.grantsDisclaimer')}</p>
|
||||
<p className="mt-1 text-xs leading-relaxed text-gray-500">{t('walletUi.supporters.grantsDisclaimerDesc')}</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div className="mt-4 grid grid-cols-1 gap-3 sm:grid-cols-2">
|
||||
<div className="space-y-1.5">
|
||||
<Label htmlFor="grant-org">{t('walletUi.supporters.grantsOrg')} *</Label>
|
||||
<Input id="grant-org" value={org} onChange={(e) => setOrg(e.target.value)} placeholder="e.g. OpenSats" />
|
||||
</div>
|
||||
<div className="space-y-1.5">
|
||||
<Label htmlFor="grant-contact">{t('walletUi.supporters.grantsContact')} *</Label>
|
||||
<Input id="grant-contact" value={contact} onChange={(e) => setContact(e.target.value)} placeholder="npub, email or @handle" />
|
||||
</div>
|
||||
<div className="space-y-1.5">
|
||||
<Label htmlFor="grant-website">{t('walletUi.supporters.grantsWebsite')}</Label>
|
||||
<Input id="grant-website" value={website} onChange={(e) => setWebsite(e.target.value)} placeholder="https://…" />
|
||||
</div>
|
||||
<div className="space-y-1.5">
|
||||
<Label htmlFor="grant-program">{t('walletUi.supporters.grantsProgram')}</Label>
|
||||
<Input id="grant-program" value={program} onChange={(e) => setProgram(e.target.value)} placeholder="e.g. Q1 2027 grants" />
|
||||
</div>
|
||||
<div className="space-y-1.5">
|
||||
<Label htmlFor="grant-size">{t('walletUi.supporters.grantsSize')}</Label>
|
||||
<Input id="grant-size" value={grantSize} onChange={(e) => setGrantSize(e.target.value)} placeholder="e.g. 5–25M sats" />
|
||||
</div>
|
||||
<div className="space-y-1.5">
|
||||
<Label htmlFor="grant-kyc">{t('walletUi.supporters.grantsKyc')}</Label>
|
||||
<Input id="grant-kyc" value={kyc} onChange={(e) => setKyc(e.target.value)} placeholder="e.g. KYB + grantee KYC" />
|
||||
</div>
|
||||
<div className="space-y-1.5 sm:col-span-2">
|
||||
<Label htmlFor="grant-fund">{t('walletUi.supporters.grantsFund')}</Label>
|
||||
<Textarea id="grant-fund" value={fund} onChange={(e) => setFund(e.target.value)} rows={3} placeholder="Relay, app development, translation, design, events…" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<label className="mt-4 flex cursor-pointer items-start gap-2.5 rounded-xl border border-[#f7931a]/20 bg-black/30 p-3 text-xs text-gray-400">
|
||||
<input type="checkbox" checked={ack} onChange={(e) => setAck(e.target.checked)} className="mt-0.5 h-4 w-4 accent-[#f7931a]" />
|
||||
<span>{t('walletUi.supporters.grantsAck')}</span>
|
||||
</label>
|
||||
|
||||
<div className="mt-4 flex flex-col gap-2 sm:flex-row sm:items-center">
|
||||
<Button
|
||||
disabled={!canSend}
|
||||
onClick={() => {
|
||||
if (!canSend || !owner) return;
|
||||
navigate(`/messages/${nip19.npubEncode(owner)}?message=${encodeURIComponent(message)}`);
|
||||
}}
|
||||
className="w-full justify-center bg-[#f7931a] font-bold text-black hover:bg-[#ffb347] sm:w-auto"
|
||||
>
|
||||
<Handshake className="mr-2 h-4 w-4" /> {t('walletUi.supporters.grantsSend')}
|
||||
</Button>
|
||||
<p className="flex items-center gap-1.5 text-[11px] text-gray-600">
|
||||
<Info className="h-3 w-3 shrink-0" />
|
||||
{t('walletUi.supporters.grantsNote')}
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
// ─── Section header ───────────────────────────────────────────────────────────
|
||||
|
||||
|
||||
function SectionHeader({
|
||||
icon: Icon,
|
||||
title,
|
||||
|
|
@ -583,7 +687,18 @@ export default function SupportersPage() {
|
|||
</div>
|
||||
</section>
|
||||
|
||||
{/* ── 2. What your support pays for (words only) ── */}
|
||||
{/* ── 2. Bitcoin grantmakers ── */}
|
||||
<section>
|
||||
<SectionHeader
|
||||
icon={Handshake}
|
||||
title={t('walletUi.supporters.grantsSection')}
|
||||
subtitle={t('walletUi.supporters.grantsSectionDesc')}
|
||||
color="#f7931a"
|
||||
/>
|
||||
<GrantmakerForm />
|
||||
</section>
|
||||
|
||||
{/* ── 3. What your support pays for (words only) ── */}
|
||||
<section>
|
||||
<SectionHeader
|
||||
icon={Heart}
|
||||
|
|
|
|||
Loading…
Reference in a new issue