feat(signup): community guidelines agreement and policies routes
Introduces /community-guidelines and /policies/{privacy,terms,[slug]} pages,
swaps the signup/invite checkbox from agreedToTerms to agreedToGuidelines,
adds Member.agreement.acceptedAt, and stamps the field when a Helcim
customer is created.
This commit is contained in:
parent
e0d11e47f4
commit
c5e901ed24
13 changed files with 1292 additions and 54 deletions
|
|
@ -57,7 +57,8 @@ export const helcimCustomerSchema = z.object({
|
|||
name: z.string().min(1).max(200),
|
||||
email: z.string().trim().toLowerCase().email(),
|
||||
circle: z.enum(['community', 'founder', 'practitioner']).optional(),
|
||||
contributionTier: z.enum(['0', '5', '15', '30', '50']).optional()
|
||||
contributionTier: z.enum(['0', '5', '15', '30', '50']).optional(),
|
||||
agreedToGuidelines: z.literal(true)
|
||||
})
|
||||
|
||||
export const helcimInitializePaymentSchema = z.object({
|
||||
|
|
@ -147,7 +148,7 @@ export const seriesTicketPurchaseSchema = z.object({
|
|||
name: z.string().min(1).max(200),
|
||||
email: z.string().trim().toLowerCase().email(),
|
||||
paymentId: z.string().max(500).optional(),
|
||||
ticketType: z.enum(['member', 'public', 'guest']).optional(),
|
||||
ticketType: z.enum(['member', 'public', 'guest']),
|
||||
})
|
||||
|
||||
export const seriesTicketEligibilitySchema = z.object({
|
||||
|
|
@ -345,7 +346,7 @@ export const inviteAcceptSchema = z.object({
|
|||
circle: z.enum(['community', 'founder', 'practitioner']),
|
||||
motivation: z.string().max(5000).optional(),
|
||||
contributionTier: z.enum(['0', '5', '15', '30', '50']),
|
||||
agreedToTerms: z.literal(true),
|
||||
agreedToGuidelines: z.literal(true),
|
||||
token: z.string().min(1)
|
||||
})
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue