@burdenoff/microfe-comradecircle 2026.704.2 → 2026.704.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/comradecircle/components/Avatar.js +40 -17
- package/dist/comradecircle/components/Avatar.js.map +1 -1
- package/dist/comradecircle/components/AvatarUploadField.js +25 -14
- package/dist/comradecircle/components/AvatarUploadField.js.map +1 -1
- package/dist/comradecircle/components/CircleCard.js +54 -52
- package/dist/comradecircle/components/CircleCard.js.map +1 -1
- package/dist/comradecircle/components/CommentThread.js +80 -64
- package/dist/comradecircle/components/CommentThread.js.map +1 -1
- package/dist/comradecircle/components/EventCard.js +84 -58
- package/dist/comradecircle/components/EventCard.js.map +1 -1
- package/dist/comradecircle/components/MemberIdentity.js +2 -1
- package/dist/comradecircle/components/MemberIdentity.js.map +1 -1
- package/dist/comradecircle/components/PollCard.js +65 -44
- package/dist/comradecircle/components/PollCard.js.map +1 -1
- package/dist/comradecircle/components/PostCard.js +1 -1
- package/dist/comradecircle/components/PostCard.js.map +1 -1
- package/dist/comradecircle/components/ReactionBar.js +1 -1
- package/dist/comradecircle/components/ReactionBar.js.map +1 -1
- package/dist/comradecircle/components/StateViews.js +1 -16
- package/dist/comradecircle/components/StateViews.js.map +1 -1
- package/dist/comradecircle/components/StatusBadge.js +1 -1
- package/dist/comradecircle/components/StatusBadge.js.map +1 -1
- package/dist/comradecircle/hooks/useComradeCircleApi.js +1 -1
- package/dist/comradecircle/hooks/useComradeCircleApi.js.map +1 -1
- package/dist/comradecircle/pages/FeedPage.js +79 -33
- package/dist/comradecircle/pages/FeedPage.js.map +1 -1
- package/dist/comradecircle/pages/circles/CircleDetailPage.js +354 -243
- package/dist/comradecircle/pages/circles/CircleDetailPage.js.map +1 -1
- package/dist/comradecircle/pages/circles/CirclesPage.js +97 -47
- package/dist/comradecircle/pages/circles/CirclesPage.js.map +1 -1
- package/dist/comradecircle/pages/events/EventDetailPage.js +193 -126
- package/dist/comradecircle/pages/events/EventDetailPage.js.map +1 -1
- package/dist/comradecircle/pages/events/EventsPage.js +74 -34
- package/dist/comradecircle/pages/events/EventsPage.js.map +1 -1
- package/dist/comradecircle/pages/members/MemberProfilePage.js +154 -82
- package/dist/comradecircle/pages/members/MemberProfilePage.js.map +1 -1
- package/dist/comradecircle/pages/members/MembersPage.js +140 -71
- package/dist/comradecircle/pages/members/MembersPage.js.map +1 -1
- package/dist/comradecircle/pages/profile/MyProfilePage.js +298 -202
- package/dist/comradecircle/pages/profile/MyProfilePage.js.map +1 -1
- package/package.json +1 -1
|
@@ -9,161 +9,247 @@ import { formatEnumLabel as s } from "../../utils/formatters.js";
|
|
|
9
9
|
import { ErrorView as c, LoadingView as l } from "../../components/StateViews.js";
|
|
10
10
|
import { StatusBadge as u } from "../../components/StatusBadge.js";
|
|
11
11
|
import { TagInput as d } from "../../components/TagInput.js";
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
12
|
+
import { MiniBar as f } from "../../components/MiniBar.js";
|
|
13
|
+
import { AvatarUploadField as p } from "../../components/AvatarUploadField.js";
|
|
14
|
+
import { useState as m } from "react";
|
|
15
|
+
import { Save as h } from "lucide-react";
|
|
16
|
+
import { jsx as g, jsxs as _ } from "react/jsx-runtime";
|
|
17
|
+
import { Button as v, GlassCard as y, Input as b, Label as x, Select as S, SelectContent as C, SelectItem as w, SelectTrigger as T, SelectValue as E, Switch as D, Textarea as O } from "@burdenoff/fe-libs/ui";
|
|
17
18
|
//#region src/comradecircle/pages/profile/MyProfilePage.tsx
|
|
18
|
-
var
|
|
19
|
+
var k = [
|
|
19
20
|
"ONLINE",
|
|
20
21
|
"AWAY",
|
|
21
22
|
"BUSY",
|
|
22
23
|
"OFFLINE"
|
|
23
24
|
];
|
|
24
|
-
function
|
|
25
|
+
function A() {
|
|
25
26
|
let { currentUser: r } = e(), i = r?.id, { data: a, isLoading: o, isError: s, refetch: u } = n(i), d = r?.name ?? r?.email ?? "";
|
|
26
|
-
return o ? /* @__PURE__ */
|
|
27
|
+
return o ? /* @__PURE__ */ g(t, {
|
|
27
28
|
title: "My Profile",
|
|
28
|
-
children: /* @__PURE__ */
|
|
29
|
-
}) : s ? /* @__PURE__ */
|
|
29
|
+
children: /* @__PURE__ */ g(l, { label: "Loading your profile…" })
|
|
30
|
+
}) : s ? /* @__PURE__ */ g(t, {
|
|
30
31
|
title: "My Profile",
|
|
31
|
-
children: /* @__PURE__ */
|
|
32
|
+
children: /* @__PURE__ */ g(c, {
|
|
32
33
|
title: "We couldn't load your profile",
|
|
33
34
|
message: "Something went wrong while fetching your profile. Retry before editing so you don't overwrite saved details.",
|
|
34
35
|
onRetry: () => u()
|
|
35
36
|
})
|
|
36
|
-
}) : /* @__PURE__ */
|
|
37
|
+
}) : /* @__PURE__ */ g(t, {
|
|
37
38
|
title: "My Profile",
|
|
38
39
|
description: "Your profile is your identity across every circle — it's how members recognise, find and follow you.",
|
|
39
|
-
children: /* @__PURE__ */
|
|
40
|
+
children: /* @__PURE__ */ g(N, {
|
|
40
41
|
initialProfile: a ?? null,
|
|
41
42
|
identityName: d
|
|
42
43
|
}, a?.id ?? "new")
|
|
43
44
|
});
|
|
44
45
|
}
|
|
45
|
-
function
|
|
46
|
-
|
|
47
|
-
|
|
46
|
+
function j({ children: e }) {
|
|
47
|
+
return /* @__PURE__ */ g("p", {
|
|
48
|
+
className: "text-xs font-semibold uppercase tracking-[0.08em] text-text-tertiary",
|
|
49
|
+
children: e
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
function M(e, t) {
|
|
53
|
+
return e.length === t.length && e.every((e, n) => e === t[n]);
|
|
54
|
+
}
|
|
55
|
+
function N({ initialProfile: e, identityName: t }) {
|
|
56
|
+
let n = r(), c = {
|
|
57
|
+
displayName: e?.displayName ?? t,
|
|
58
|
+
headline: e?.headline ?? "",
|
|
59
|
+
bio: e?.bio ?? "",
|
|
60
|
+
interests: e?.interests ?? [],
|
|
61
|
+
skills: e?.skills ?? [],
|
|
62
|
+
presence: e?.presence ?? "ONLINE",
|
|
63
|
+
discoverable: e?.discoverable ?? !0,
|
|
64
|
+
avatarFileId: e?.avatar?.id ?? null
|
|
65
|
+
}, [l, A] = m(c.displayName), [N, P] = m(c.headline), [F, I] = m(c.bio), [L, R] = m(c.interests), [z, B] = m(c.skills), [V, H] = m(c.presence), [U, W] = m(c.discoverable), [G, K] = m(c.avatarFileId), q = l.trim(), J = [
|
|
66
|
+
{
|
|
67
|
+
done: !!G,
|
|
68
|
+
nudge: "Add a profile photo so members recognise you at a glance."
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
done: q.length > 0,
|
|
72
|
+
nudge: "Add a display name so members know who you are."
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
done: N.trim().length > 0,
|
|
76
|
+
nudge: "Add a headline to sum yourself up in one line."
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
done: F.trim().length > 0,
|
|
80
|
+
nudge: "Write a short bio to help circles get to know you."
|
|
81
|
+
},
|
|
82
|
+
{
|
|
83
|
+
done: L.length > 0,
|
|
84
|
+
nudge: "Add a few interests to help you find your people."
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
done: z.length > 0,
|
|
88
|
+
nudge: "List some skills so circles know what you bring."
|
|
89
|
+
}
|
|
90
|
+
], Y = J.filter((e) => e.done).length, X = Math.round(Y / J.length * 100), Z = J.find((e) => !e.done)?.nudge ?? "Your profile is complete — it looks great.", Q = l !== c.displayName || N !== c.headline || F !== c.bio || V !== c.presence || U !== c.discoverable || G !== c.avatarFileId || !M(L, c.interests) || !M(z, c.skills);
|
|
91
|
+
return /* @__PURE__ */ _("div", {
|
|
48
92
|
className: "grid gap-6 lg:grid-cols-[1fr_320px]",
|
|
49
|
-
children: [/* @__PURE__ */
|
|
93
|
+
children: [/* @__PURE__ */ g(y, {
|
|
50
94
|
treatment: "plain",
|
|
51
95
|
className: "order-2 p-5 sm:p-6 lg:order-1",
|
|
52
|
-
children: /* @__PURE__ */
|
|
53
|
-
className: "flex flex-col gap-
|
|
96
|
+
children: /* @__PURE__ */ _("div", {
|
|
97
|
+
className: "flex flex-col gap-6",
|
|
54
98
|
children: [
|
|
55
|
-
/* @__PURE__ */
|
|
56
|
-
className: "grid gap-
|
|
57
|
-
children: [
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
})]
|
|
76
|
-
}),
|
|
77
|
-
/* @__PURE__ */ g("div", {
|
|
78
|
-
className: "grid gap-1.5",
|
|
79
|
-
children: [/* @__PURE__ */ h(b, {
|
|
80
|
-
htmlFor: "profile-headline",
|
|
81
|
-
children: "Headline"
|
|
82
|
-
}), /* @__PURE__ */ h(y, {
|
|
83
|
-
id: "profile-headline",
|
|
84
|
-
value: k,
|
|
85
|
-
onChange: (e) => A(e.target.value),
|
|
86
|
-
placeholder: "e.g. Community organiser · Photographer"
|
|
87
|
-
})]
|
|
88
|
-
}),
|
|
89
|
-
/* @__PURE__ */ g("div", {
|
|
90
|
-
className: "grid gap-1.5",
|
|
91
|
-
children: [/* @__PURE__ */ h(b, {
|
|
92
|
-
htmlFor: "profile-bio",
|
|
93
|
-
children: "Bio"
|
|
94
|
-
}), /* @__PURE__ */ h(D, {
|
|
95
|
-
id: "profile-bio",
|
|
96
|
-
value: j,
|
|
97
|
-
onChange: (e) => M(e.target.value),
|
|
98
|
-
rows: 4,
|
|
99
|
-
placeholder: "Tell circles a little about yourself."
|
|
100
|
-
})]
|
|
101
|
-
}),
|
|
102
|
-
/* @__PURE__ */ g("div", {
|
|
103
|
-
className: "grid gap-1.5",
|
|
104
|
-
children: [/* @__PURE__ */ h(b, {
|
|
105
|
-
htmlFor: "profile-interests",
|
|
106
|
-
children: "Interests"
|
|
107
|
-
}), /* @__PURE__ */ h(d, {
|
|
108
|
-
id: "profile-interests",
|
|
109
|
-
value: N,
|
|
110
|
-
onChange: P,
|
|
111
|
-
placeholder: "Add an interest…"
|
|
112
|
-
})]
|
|
99
|
+
/* @__PURE__ */ _("div", {
|
|
100
|
+
className: "grid gap-2 rounded-xl border border-border-seam bg-bg-surface p-4",
|
|
101
|
+
children: [
|
|
102
|
+
/* @__PURE__ */ _("div", {
|
|
103
|
+
className: "flex items-baseline justify-between gap-3",
|
|
104
|
+
children: [/* @__PURE__ */ g(j, { children: "Profile completeness" }), /* @__PURE__ */ _("span", {
|
|
105
|
+
className: "text-sm font-semibold tabular-nums text-text-primary",
|
|
106
|
+
children: [X, "%"]
|
|
107
|
+
})]
|
|
108
|
+
}),
|
|
109
|
+
/* @__PURE__ */ g(f, {
|
|
110
|
+
value: X,
|
|
111
|
+
height: 8,
|
|
112
|
+
barClassName: "bg-gradient-to-r from-accent to-[var(--color-accent-soft)]"
|
|
113
|
+
}),
|
|
114
|
+
/* @__PURE__ */ g("p", {
|
|
115
|
+
className: "text-xs text-text-secondary",
|
|
116
|
+
children: Z
|
|
117
|
+
})
|
|
118
|
+
]
|
|
113
119
|
}),
|
|
114
|
-
/* @__PURE__ */
|
|
115
|
-
className: "grid gap-
|
|
116
|
-
children: [
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
120
|
+
/* @__PURE__ */ _("section", {
|
|
121
|
+
className: "grid gap-4",
|
|
122
|
+
children: [
|
|
123
|
+
/* @__PURE__ */ g(j, { children: "Identity" }),
|
|
124
|
+
/* @__PURE__ */ _("div", {
|
|
125
|
+
className: "grid gap-1.5",
|
|
126
|
+
children: [/* @__PURE__ */ g(x, { children: "Avatar" }), /* @__PURE__ */ g(p, {
|
|
127
|
+
fileId: G,
|
|
128
|
+
name: q || t,
|
|
129
|
+
onUploaded: K
|
|
130
|
+
})]
|
|
131
|
+
}),
|
|
132
|
+
/* @__PURE__ */ _("div", {
|
|
133
|
+
className: "grid gap-1.5",
|
|
134
|
+
children: [/* @__PURE__ */ g(x, {
|
|
135
|
+
htmlFor: "profile-name",
|
|
136
|
+
children: "Display name"
|
|
137
|
+
}), /* @__PURE__ */ g(b, {
|
|
138
|
+
id: "profile-name",
|
|
139
|
+
value: l,
|
|
140
|
+
onChange: (e) => A(e.target.value),
|
|
141
|
+
placeholder: "How members see you",
|
|
142
|
+
required: !0,
|
|
143
|
+
"aria-required": "true"
|
|
144
|
+
})]
|
|
145
|
+
}),
|
|
146
|
+
/* @__PURE__ */ _("div", {
|
|
147
|
+
className: "grid gap-1.5",
|
|
148
|
+
children: [/* @__PURE__ */ g(x, {
|
|
149
|
+
htmlFor: "profile-headline",
|
|
150
|
+
children: "Headline"
|
|
151
|
+
}), /* @__PURE__ */ g(b, {
|
|
152
|
+
id: "profile-headline",
|
|
153
|
+
value: N,
|
|
154
|
+
onChange: (e) => P(e.target.value),
|
|
155
|
+
placeholder: "e.g. Community organiser · Photographer"
|
|
156
|
+
})]
|
|
157
|
+
})
|
|
158
|
+
]
|
|
125
159
|
}),
|
|
126
|
-
/* @__PURE__ */
|
|
127
|
-
className: "grid gap-
|
|
128
|
-
children: [
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
160
|
+
/* @__PURE__ */ _("section", {
|
|
161
|
+
className: "grid gap-4 border-t border-border-seam pt-6",
|
|
162
|
+
children: [
|
|
163
|
+
/* @__PURE__ */ g(j, { children: "About you" }),
|
|
164
|
+
/* @__PURE__ */ _("div", {
|
|
165
|
+
className: "grid gap-1.5",
|
|
166
|
+
children: [/* @__PURE__ */ g(x, {
|
|
167
|
+
htmlFor: "profile-bio",
|
|
168
|
+
children: "Bio"
|
|
169
|
+
}), /* @__PURE__ */ g(O, {
|
|
170
|
+
id: "profile-bio",
|
|
171
|
+
value: F,
|
|
172
|
+
onChange: (e) => I(e.target.value),
|
|
173
|
+
rows: 4,
|
|
174
|
+
placeholder: "Tell circles a little about yourself."
|
|
175
|
+
})]
|
|
176
|
+
}),
|
|
177
|
+
/* @__PURE__ */ _("div", {
|
|
178
|
+
className: "grid gap-1.5",
|
|
179
|
+
children: [/* @__PURE__ */ g(x, {
|
|
180
|
+
htmlFor: "profile-interests",
|
|
181
|
+
children: "Interests"
|
|
182
|
+
}), /* @__PURE__ */ g(d, {
|
|
183
|
+
id: "profile-interests",
|
|
184
|
+
value: L,
|
|
185
|
+
onChange: R,
|
|
186
|
+
placeholder: "Add an interest…"
|
|
187
|
+
})]
|
|
188
|
+
}),
|
|
189
|
+
/* @__PURE__ */ _("div", {
|
|
190
|
+
className: "grid gap-1.5",
|
|
191
|
+
children: [/* @__PURE__ */ g(x, {
|
|
192
|
+
htmlFor: "profile-skills",
|
|
193
|
+
children: "Skills"
|
|
194
|
+
}), /* @__PURE__ */ g(d, {
|
|
195
|
+
id: "profile-skills",
|
|
196
|
+
value: z,
|
|
197
|
+
onChange: B,
|
|
198
|
+
placeholder: "Add a skill…"
|
|
199
|
+
})]
|
|
200
|
+
})
|
|
201
|
+
]
|
|
142
202
|
}),
|
|
143
|
-
/* @__PURE__ */
|
|
144
|
-
className: "
|
|
145
|
-
children: [
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
children:
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
203
|
+
/* @__PURE__ */ _("section", {
|
|
204
|
+
className: "grid gap-4 border-t border-border-seam pt-6",
|
|
205
|
+
children: [
|
|
206
|
+
/* @__PURE__ */ g(j, { children: "Visibility" }),
|
|
207
|
+
/* @__PURE__ */ _("div", {
|
|
208
|
+
className: "grid gap-1.5",
|
|
209
|
+
children: [/* @__PURE__ */ g(x, {
|
|
210
|
+
htmlFor: "profile-presence",
|
|
211
|
+
children: "Presence"
|
|
212
|
+
}), /* @__PURE__ */ _(S, {
|
|
213
|
+
value: V,
|
|
214
|
+
onValueChange: (e) => H(e),
|
|
215
|
+
children: [/* @__PURE__ */ g(T, {
|
|
216
|
+
id: "profile-presence",
|
|
217
|
+
children: /* @__PURE__ */ g(E, {})
|
|
218
|
+
}), /* @__PURE__ */ g(C, { children: k.map((e) => /* @__PURE__ */ g(w, {
|
|
219
|
+
value: e,
|
|
220
|
+
children: s(e)
|
|
221
|
+
}, e)) })]
|
|
222
|
+
})]
|
|
223
|
+
}),
|
|
224
|
+
/* @__PURE__ */ _("div", {
|
|
225
|
+
className: "flex items-start justify-between gap-4 rounded-xl border border-border-seam bg-bg-surface p-3.5",
|
|
226
|
+
children: [/* @__PURE__ */ _("div", {
|
|
227
|
+
className: "min-w-0",
|
|
228
|
+
children: [/* @__PURE__ */ g(x, {
|
|
229
|
+
htmlFor: "profile-discoverable",
|
|
230
|
+
children: "List me in the member directory"
|
|
231
|
+
}), /* @__PURE__ */ g("p", {
|
|
232
|
+
className: "mt-1 text-xs text-text-tertiary",
|
|
233
|
+
children: "When on, your profile appears in the discoverable member directory so others can find and follow you. Turn it off to stay unlisted."
|
|
234
|
+
})]
|
|
235
|
+
}), /* @__PURE__ */ g(D, {
|
|
236
|
+
id: "profile-discoverable",
|
|
237
|
+
checked: U,
|
|
238
|
+
onCheckedChange: W,
|
|
239
|
+
"aria-label": "List me in the member directory",
|
|
240
|
+
className: "mt-0.5 shrink-0"
|
|
241
|
+
})]
|
|
242
|
+
})
|
|
243
|
+
]
|
|
161
244
|
}),
|
|
162
|
-
/* @__PURE__ */
|
|
163
|
-
className: "flex justify-end pt-
|
|
164
|
-
children: /* @__PURE__ */ g(
|
|
245
|
+
/* @__PURE__ */ _("div", {
|
|
246
|
+
className: "flex flex-wrap items-center justify-end gap-3 border-t border-border-seam pt-5",
|
|
247
|
+
children: [!Q && !n.isPending && /* @__PURE__ */ g("span", {
|
|
248
|
+
className: "text-xs text-text-tertiary",
|
|
249
|
+
children: "No changes to save"
|
|
250
|
+
}), /* @__PURE__ */ _(v, {
|
|
165
251
|
onClick: async () => {
|
|
166
|
-
let e =
|
|
252
|
+
let e = l.trim();
|
|
167
253
|
if (!e) {
|
|
168
254
|
o.error("Display name required", "Add a name so members can recognise you.");
|
|
169
255
|
return;
|
|
@@ -171,96 +257,106 @@ function A({ initialProfile: e, identityName: t }) {
|
|
|
171
257
|
try {
|
|
172
258
|
await n.mutateAsync({
|
|
173
259
|
displayName: e,
|
|
174
|
-
headline:
|
|
175
|
-
bio:
|
|
176
|
-
avatarFileId:
|
|
177
|
-
interests:
|
|
178
|
-
skills:
|
|
179
|
-
presence:
|
|
180
|
-
discoverable:
|
|
260
|
+
headline: N.trim() || null,
|
|
261
|
+
bio: F.trim() || null,
|
|
262
|
+
avatarFileId: G,
|
|
263
|
+
interests: L,
|
|
264
|
+
skills: z,
|
|
265
|
+
presence: V,
|
|
266
|
+
discoverable: U
|
|
181
267
|
}), o.success("Profile saved");
|
|
182
268
|
} catch (e) {
|
|
183
269
|
o.error("Could not save profile", a(e));
|
|
184
270
|
}
|
|
185
271
|
},
|
|
186
|
-
disabled: n.isPending,
|
|
187
|
-
children: [/* @__PURE__ */ h
|
|
188
|
-
})
|
|
272
|
+
disabled: n.isPending || !Q,
|
|
273
|
+
children: [/* @__PURE__ */ g(h, { className: "mr-1.5 h-4 w-4" }), n.isPending ? "Saving…" : "Save profile"]
|
|
274
|
+
})]
|
|
189
275
|
})
|
|
190
276
|
]
|
|
191
277
|
})
|
|
192
|
-
}), /* @__PURE__ */
|
|
278
|
+
}), /* @__PURE__ */ g("div", {
|
|
193
279
|
className: "order-1 lg:order-2",
|
|
194
|
-
children: /* @__PURE__ */
|
|
280
|
+
children: /* @__PURE__ */ _(y, {
|
|
195
281
|
treatment: "plain",
|
|
196
|
-
className: "p-
|
|
197
|
-
children: [
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
/* @__PURE__ */ g("
|
|
203
|
-
className: "
|
|
204
|
-
children:
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
className: "
|
|
235
|
-
children:
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
282
|
+
className: "overflow-hidden p-0 lg:sticky lg:top-6",
|
|
283
|
+
children: [/* @__PURE__ */ _("div", {
|
|
284
|
+
className: "relative h-24 bg-gloss-card",
|
|
285
|
+
children: [/* @__PURE__ */ g("div", {
|
|
286
|
+
className: "absolute inset-0 bg-gradient-to-br from-[var(--color-accent-soft)] via-[var(--color-accent-soft)]/30 to-transparent",
|
|
287
|
+
"aria-hidden": "true"
|
|
288
|
+
}), /* @__PURE__ */ g("span", {
|
|
289
|
+
className: "absolute right-3 top-3 rounded-full bg-bg-surface/80 px-2 py-0.5 text-[0.62rem] font-medium uppercase tracking-[0.08em] text-text-tertiary backdrop-blur",
|
|
290
|
+
children: "How members see you"
|
|
291
|
+
})]
|
|
292
|
+
}), /* @__PURE__ */ _("div", {
|
|
293
|
+
className: "px-5 pb-5",
|
|
294
|
+
children: [
|
|
295
|
+
/* @__PURE__ */ _("div", {
|
|
296
|
+
className: "-mt-12 flex flex-col items-center text-center",
|
|
297
|
+
children: [
|
|
298
|
+
/* @__PURE__ */ g(i, {
|
|
299
|
+
name: q || t,
|
|
300
|
+
size: "xl",
|
|
301
|
+
presence: V,
|
|
302
|
+
fileId: G,
|
|
303
|
+
ring: !0
|
|
304
|
+
}),
|
|
305
|
+
/* @__PURE__ */ g("h3", {
|
|
306
|
+
className: "mt-3 max-w-full truncate text-lg font-semibold text-text-primary",
|
|
307
|
+
children: q || "Your name"
|
|
308
|
+
}),
|
|
309
|
+
N.trim() && /* @__PURE__ */ g("p", {
|
|
310
|
+
className: "mt-0.5 max-w-full truncate text-sm text-text-secondary",
|
|
311
|
+
children: N.trim()
|
|
312
|
+
}),
|
|
313
|
+
/* @__PURE__ */ g("div", {
|
|
314
|
+
className: "mt-2.5",
|
|
315
|
+
children: /* @__PURE__ */ g(u, { status: V })
|
|
316
|
+
})
|
|
317
|
+
]
|
|
318
|
+
}),
|
|
319
|
+
F.trim() && /* @__PURE__ */ g("p", {
|
|
320
|
+
className: "mt-4 whitespace-pre-wrap break-words text-center text-sm text-text-secondary",
|
|
321
|
+
children: F.trim()
|
|
322
|
+
}),
|
|
323
|
+
L.length > 0 && /* @__PURE__ */ _("div", {
|
|
324
|
+
className: "mt-5",
|
|
325
|
+
children: [/* @__PURE__ */ g("p", {
|
|
326
|
+
className: "mb-1.5 text-xs font-medium text-text-tertiary",
|
|
327
|
+
children: "Interests"
|
|
328
|
+
}), /* @__PURE__ */ g("div", {
|
|
329
|
+
className: "flex flex-wrap gap-1.5",
|
|
330
|
+
children: L.map((e) => /* @__PURE__ */ g("span", {
|
|
331
|
+
className: "rounded-full bg-bg-sunken px-2.5 py-0.5 text-xs font-medium text-text-secondary",
|
|
332
|
+
children: e
|
|
333
|
+
}, e))
|
|
334
|
+
})]
|
|
335
|
+
}),
|
|
336
|
+
z.length > 0 && /* @__PURE__ */ _("div", {
|
|
337
|
+
className: "mt-4",
|
|
338
|
+
children: [/* @__PURE__ */ g("p", {
|
|
339
|
+
className: "mb-1.5 text-xs font-medium text-text-tertiary",
|
|
340
|
+
children: "Skills"
|
|
341
|
+
}), /* @__PURE__ */ g("div", {
|
|
342
|
+
className: "flex flex-wrap gap-1.5",
|
|
343
|
+
children: z.map((e) => /* @__PURE__ */ g("span", {
|
|
344
|
+
className: "rounded-full bg-[var(--color-accent-soft)] px-2.5 py-0.5 text-xs font-medium text-text-primary",
|
|
345
|
+
children: e
|
|
346
|
+
}, e))
|
|
347
|
+
})]
|
|
348
|
+
}),
|
|
349
|
+
!U && /* @__PURE__ */ g("p", {
|
|
350
|
+
className: "mt-5 text-center text-xs text-text-tertiary",
|
|
351
|
+
children: "Hidden from the member directory."
|
|
352
|
+
})
|
|
353
|
+
]
|
|
354
|
+
})]
|
|
259
355
|
})
|
|
260
356
|
})]
|
|
261
357
|
});
|
|
262
358
|
}
|
|
263
359
|
//#endregion
|
|
264
|
-
export {
|
|
360
|
+
export { A as MyProfilePage };
|
|
265
361
|
|
|
266
362
|
//# sourceMappingURL=MyProfilePage.js.map
|