ghostguild-org/server/api/onboarding/status.get.js

28 lines
753 B
JavaScript

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