Merge branch 'worktree-agent-aff832dd'
This commit is contained in:
commit
b54b57cd90
1 changed files with 65 additions and 0 deletions
|
|
@ -127,6 +127,49 @@
|
||||||
</dl>
|
</dl>
|
||||||
</section>
|
</section>
|
||||||
|
|
||||||
|
<!-- Onboarding -->
|
||||||
|
<section class="detail-section">
|
||||||
|
<div class="section-label">Onboarding</div>
|
||||||
|
<dl class="meta-list">
|
||||||
|
<div class="meta-row">
|
||||||
|
<dt>Profile Tags</dt>
|
||||||
|
<dd :class="hasProfileTags ? 'status-ok' : 'status-dim'">
|
||||||
|
{{ hasProfileTags ? '✓ Complete' : '— Incomplete' }}
|
||||||
|
</dd>
|
||||||
|
</div>
|
||||||
|
<div class="meta-row">
|
||||||
|
<dt>Event Page Visited</dt>
|
||||||
|
<dd :class="member.onboarding?.eventPageVisited ? 'status-ok' : 'status-dim'">
|
||||||
|
{{ member.onboarding?.eventPageVisited ? '✓ Complete' : '— Incomplete' }}
|
||||||
|
</dd>
|
||||||
|
</div>
|
||||||
|
<div class="meta-row">
|
||||||
|
<dt>Ecology Engaged</dt>
|
||||||
|
<dd :class="hasEcologyEngaged ? 'status-ok' : 'status-dim'">
|
||||||
|
{{ hasEcologyEngaged ? '✓ Complete' : '— Incomplete' }}
|
||||||
|
</dd>
|
||||||
|
</div>
|
||||||
|
<div class="meta-row">
|
||||||
|
<dt>Wiki Clicked</dt>
|
||||||
|
<dd :class="member.onboarding?.wikiClicked ? 'status-ok' : 'status-dim'">
|
||||||
|
{{ member.onboarding?.wikiClicked ? '✓ Complete' : '— Incomplete' }}
|
||||||
|
</dd>
|
||||||
|
</div>
|
||||||
|
<div class="meta-row">
|
||||||
|
<dt>Completed</dt>
|
||||||
|
<dd :class="member.onboarding?.completedAt ? 'status-ok' : 'status-dim'">
|
||||||
|
{{ member.onboarding?.completedAt ? formatDate(member.onboarding.completedAt) : 'In progress' }}
|
||||||
|
</dd>
|
||||||
|
</div>
|
||||||
|
<div class="meta-row">
|
||||||
|
<dt>Slack status</dt>
|
||||||
|
<dd :class="slackStatusClass">
|
||||||
|
{{ member.slackInviteStatus || 'none' }}
|
||||||
|
</dd>
|
||||||
|
</div>
|
||||||
|
</dl>
|
||||||
|
</section>
|
||||||
|
|
||||||
<!-- Notification preferences -->
|
<!-- Notification preferences -->
|
||||||
<section class="detail-section">
|
<section class="detail-section">
|
||||||
<div class="section-label">Notification preferences</div>
|
<div class="section-label">Notification preferences</div>
|
||||||
|
|
@ -304,6 +347,28 @@ function statusClass(status) {
|
||||||
return "status-dim";
|
return "status-dim";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Onboarding computed states
|
||||||
|
const hasProfileTags = computed(() => {
|
||||||
|
const m = member.value
|
||||||
|
if (!m) return false
|
||||||
|
return m.craftTags?.length > 0 && m.communityEcology?.topics?.length > 0
|
||||||
|
})
|
||||||
|
|
||||||
|
const hasEcologyEngaged = computed(() => {
|
||||||
|
const m = member.value
|
||||||
|
if (!m) return false
|
||||||
|
return m.onboarding?.ecologyPageVisited && m.communityEcology?.topics?.some(
|
||||||
|
t => ['help', 'interested', 'seeking'].includes(t.state)
|
||||||
|
)
|
||||||
|
})
|
||||||
|
|
||||||
|
const slackStatusClass = computed(() => {
|
||||||
|
const status = member.value?.slackInviteStatus
|
||||||
|
if (status === 'joined') return 'status-ok'
|
||||||
|
if (status === 'invited') return 'status-dim'
|
||||||
|
return 'status-dim'
|
||||||
|
})
|
||||||
|
|
||||||
// Activity log
|
// Activity log
|
||||||
const activityEntries = ref([])
|
const activityEntries = ref([])
|
||||||
const activityLoading = ref(false)
|
const activityLoading = ref(false)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue