feat(onboarding): add onboarding status and track API routes with tests

This commit is contained in:
Jennie Robinson Faber 2026-04-09 22:31:57 +01:00
parent 3797ff7925
commit 56376d1995
6 changed files with 470 additions and 0 deletions

View file

@ -0,0 +1,28 @@
import { requireAuth } from '../../utils/auth.js'
export default defineEventHandler(async (event) => {
const member = await requireAuth(event)
const hasProfileTags =
member.craftTags.length > 0 &&
(member.communityEcology?.topics || []).length > 0
const hasVisitedEvent = !!member.onboarding?.eventPageVisited
const topics = member.communityEcology?.topics || []
const hasEngagedEcology =
!!member.onboarding?.ecologyPageVisited &&
topics.some((t) => ['help', 'interested', 'seeking'].includes(t.state))
const hasClickedWiki = !!member.onboarding?.wikiClicked
return {
goals: {
hasProfileTags,
hasVisitedEvent,
hasEngagedEcology,
hasClickedWiki,
},
completedAt: member.onboarding?.completedAt || null,
}
})