feat: add craft tags and community connections to directory and profiles
Update member directory and public profile APIs to include craftTags and communityConnections with privacy-aware filtering. Directory now uses predefined tags from the Tag model for filter bars and supports craftTag/connectionTag query filters. Frontend shows craft tag pills and cooperative topics with state labels, falling back to old offering/lookingFor fields. Add Connections nav item.
This commit is contained in:
parent
bd07172093
commit
896de2e7fd
5 changed files with 367 additions and 138 deletions
|
|
@ -30,7 +30,7 @@ export default defineEventHandler(async (event) => {
|
|||
status: "active",
|
||||
})
|
||||
.select(
|
||||
"name pronouns timeZone avatar studio bio location socialLinks offering lookingFor privacy circle peerSupport createdAt",
|
||||
"name pronouns timeZone avatar studio bio location socialLinks offering lookingFor privacy circle peerSupport craftTags communityConnections createdAt",
|
||||
)
|
||||
.lean();
|
||||
|
||||
|
|
@ -70,6 +70,21 @@ export default defineEventHandler(async (event) => {
|
|||
if (isVisible("offering")) filtered.offering = member.offering;
|
||||
if (isVisible("lookingFor")) filtered.lookingFor = member.lookingFor;
|
||||
|
||||
// Craft tags
|
||||
if (isVisible("craftTags")) {
|
||||
filtered.craftTags = member.craftTags;
|
||||
}
|
||||
|
||||
// Community connections (expose only public-safe fields)
|
||||
if (isVisible("communityConnections")) {
|
||||
filtered.communityConnections = {
|
||||
topics: member.communityConnections?.topics,
|
||||
offerPeerSupport: member.communityConnections?.offerPeerSupport,
|
||||
availability: member.communityConnections?.availability,
|
||||
details: member.communityConnections?.details,
|
||||
};
|
||||
}
|
||||
|
||||
// Peer support: expose only fields needed for matching/contact UX
|
||||
// slackUserId, slackDMChannelId, slackUsername, personalMessage are internal
|
||||
if (member.peerSupport?.enabled) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue