Salta al contingut
Yuva subscribe formMenú

Yuva subscribe form

A mailing list sign-up form: e-mail, optional name, a checkbox per list, an unticked consent box whose sentence is stored as shown, and a switch per list for signed-in users.

La vista prèvia fa servir dades d'exemple. No necessita xarxa ni canal.

Instal·lació

Executa això en un projecte de shadcn. Els fitxers es copien al teu propi codi.

Shell
npx shadcn@latest add https://useyuva.com/r/yuva-subscribe.json

Ús

tsx
import { YuvaSubscribe } from "@/components/yuva-subscribe"

<YuvaSubscribe server={server} channel={channel} />

Props

YuvaSubscribeProps

PropTipus
server?string
channel?string
client?YuvaClient
identityToken?IdentityTokenSource | null
lists?string[]
layout?"stacked" | "inline"
name?"off" | "optional" | "required"
consent?string
privacyUrl?string
locale?string
labels?Partial<YuvaSubscribeLabels>
onSubscribe?(detail: { lists: string[]; confirmation: boolean }) => void
className?string

Etiquetes

Cada etiqueta té un valor per defecte en anglès. Passa un objecte labels parcial per canviar-les o traduir-les.

EtiquetaPer defecte
lists"Lists"
email"E-mail address"
name"Your name"
nameOptional"Your name (optional)"
button"Subscribe"
sending"Subscribing…"
consent(lists, inbox) => `I want to receive e-mails about ${lists} from ${inbox}. I can unsubscribe at any time.`
privacy"Privacy policy"
checkInbox"Almost done. Check your inbox and confirm your subscription."
subscribed"Thanks! You are subscribed."
pending"Check your inbox to confirm."
chooseList"Choose at least one list."
invalidEmail"Enter a valid e-mail address."
nameRequired"Enter your name."
consentRequired"Tick the box to agree."
noEmail"Your account has no e-mail address yet."
rateLimited"Too many attempts. Wait a moment and try again."
offline"You seem to be offline."
generic"Could not subscribe. Try again."

Dependències

Instal·lar aquest element també afegeix el següent.

Components de shadcn/ui

Altres elements de Yuva

Paquets npm