Updates
Some checks failed
Test / vitest (push) Failing after 6m9s
Test / visual (push) Has been skipped
Test / playwright (push) Has been skipped
Test / Notify on failure (push) Successful in 2s

This commit is contained in:
Jennie Robinson Faber 2026-04-15 17:45:09 +01:00
parent 28040f44f4
commit 2394248d53
13 changed files with 571 additions and 538 deletions

View file

@ -1,13 +1,6 @@
import * as z from 'zod'
import { ADMIN_ALERT_TYPES } from '../models/adminAlertDismissal.js'
// Binary privacy: 'members' = visible to signed-in members, 'private' = hidden.
// Legacy 'public' is accepted from old clients and coerced to 'members'.
const privacyEnum = z.preprocess(
(v) => (v === 'public' ? 'members' : v),
z.enum(['members', 'private'])
)
export const emailSchema = z.object({
email: z.string().trim().toLowerCase().email()
})
@ -37,15 +30,7 @@ export const memberProfileUpdateSchema = z.object({
events: z.boolean().optional(),
updates: z.boolean().optional()
}).optional(),
pronounsPrivacy: privacyEnum.optional(),
timeZonePrivacy: privacyEnum.optional(),
avatarPrivacy: privacyEnum.optional(),
studioPrivacy: privacyEnum.optional(),
bioPrivacy: privacyEnum.optional(),
locationPrivacy: privacyEnum.optional(),
socialLinksPrivacy: privacyEnum.optional(),
craftTags: z.array(z.string().max(100)).max(16).optional(),
craftTagsPrivacy: privacyEnum.optional(),
boardSlackHandle: z.string().max(200).optional()
})