@burdenoff/microfe-technospam 2026.1024.1 → 2026.1030.2

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.
Files changed (54) hide show
  1. package/dist/node_modules/recharts/es6/cartesian/Brush.js.map +1 -1
  2. package/dist/node_modules/recharts/es6/cartesian/ErrorBar.js.map +1 -1
  3. package/dist/node_modules/recharts/es6/cartesian/ReferenceArea.js.map +1 -1
  4. package/dist/node_modules/recharts/es6/cartesian/ReferenceDot.js.map +1 -1
  5. package/dist/node_modules/recharts/es6/cartesian/ReferenceLine.js.map +1 -1
  6. package/dist/node_modules/recharts/es6/cartesian/XAxis.js.map +1 -1
  7. package/dist/node_modules/recharts/es6/cartesian/YAxis.js.map +1 -1
  8. package/dist/node_modules/recharts/es6/component/ResponsiveContainer.js.map +1 -1
  9. package/dist/node_modules/sonner/dist/index.js.map +1 -1
  10. package/dist/technospam/api/technospamApi.d.ts +28 -0
  11. package/dist/technospam/api/technospamApi.d.ts.map +1 -1
  12. package/dist/technospam/api/technospamApi.js +193 -153
  13. package/dist/technospam/api/technospamApi.js.map +1 -1
  14. package/dist/technospam/components/SubmissionReviewPanel.d.ts +15 -0
  15. package/dist/technospam/components/SubmissionReviewPanel.d.ts.map +1 -0
  16. package/dist/technospam/components/SubmissionReviewPanel.js +85 -0
  17. package/dist/technospam/components/SubmissionReviewPanel.js.map +1 -0
  18. package/dist/technospam/components/index.d.ts +1 -0
  19. package/dist/technospam/components/index.d.ts.map +1 -1
  20. package/dist/technospam/components/index.js +1 -0
  21. package/dist/technospam/hooks/useFocusedRecordParam.d.ts +41 -0
  22. package/dist/technospam/hooks/useFocusedRecordParam.d.ts.map +1 -0
  23. package/dist/technospam/hooks/useFocusedRecordParam.js +41 -0
  24. package/dist/technospam/hooks/useFocusedRecordParam.js.map +1 -0
  25. package/dist/technospam/pages/AdminAdminDashboardPagePage.js +1 -1
  26. package/dist/technospam/pages/AnalyticsAnalyticsPagePage.js +1 -1
  27. package/dist/technospam/pages/ApplicationsPortfolioPagePage.js +1 -1
  28. package/dist/technospam/pages/ApplicationsProblemDetailsPagePage.d.ts.map +1 -1
  29. package/dist/technospam/pages/ApplicationsProblemDetailsPagePage.js +190 -165
  30. package/dist/technospam/pages/ApplicationsProblemDetailsPagePage.js.map +1 -1
  31. package/dist/technospam/pages/ApplicationsProblemsPagePage.js +1 -1
  32. package/dist/technospam/pages/CoursesCourseDetailsPagePage.d.ts.map +1 -1
  33. package/dist/technospam/pages/CoursesCourseDetailsPagePage.js +92 -88
  34. package/dist/technospam/pages/CoursesCourseDetailsPagePage.js.map +1 -1
  35. package/dist/technospam/pages/CoursesCoursesPagePage.js +1 -1
  36. package/dist/technospam/pages/CoursesMyLearningPagePage.d.ts.map +1 -1
  37. package/dist/technospam/pages/CoursesMyLearningPagePage.js +90 -80
  38. package/dist/technospam/pages/CoursesMyLearningPagePage.js.map +1 -1
  39. package/dist/technospam/pages/DashboardDashboardPagePage.js +1 -1
  40. package/dist/technospam/pages/HackathonsHackathonDetailsPagePage.d.ts.map +1 -1
  41. package/dist/technospam/pages/HackathonsHackathonDetailsPagePage.js +155 -147
  42. package/dist/technospam/pages/HackathonsHackathonDetailsPagePage.js.map +1 -1
  43. package/dist/technospam/pages/HackathonsHackathonsPagePage.js +1 -1
  44. package/dist/technospam/pages/MentorshipMentorProfilePagePage.js +1 -1
  45. package/dist/technospam/pages/MentorshipMentorsPagePage.js +1 -1
  46. package/dist/technospam/pages/MentorshipSessionsPagePage.d.ts.map +1 -1
  47. package/dist/technospam/pages/MentorshipSessionsPagePage.js +186 -167
  48. package/dist/technospam/pages/MentorshipSessionsPagePage.js.map +1 -1
  49. package/dist/technospam/pages/StudyPlannerStudyPlannerPagePage.js +1 -1
  50. package/dist/technospam/utils/pageContext.d.ts +54 -5
  51. package/dist/technospam/utils/pageContext.d.ts.map +1 -1
  52. package/dist/technospam/utils/pageContext.js +99 -35
  53. package/dist/technospam/utils/pageContext.js.map +1 -1
  54. package/package.json +1 -1
@@ -1,44 +1,55 @@
1
1
  import { useTechnoSpam as e, useTechnoSpamNavigate as t } from "../providers/TechnoSpamProvider.js";
2
2
  import { useTechnoSpamAnalytics as n } from "../hooks/useTechnoSpamAnalytics.js";
3
3
  import { useTr as r } from "../hooks/useTr.js";
4
- import { PageLayout as i } from "../components/PageLayout.js";
5
- import { StatCard as a } from "../components/StatCard.js";
6
- import { formatDateTime as o, formatDuration as s } from "../utils/format.js";
7
- import { StatusBadge as c } from "../components/StatusBadge.js";
8
- import { EmptyView as l, ErrorView as u, LoadingRows as d } from "../components/StateViews.js";
4
+ import { cn as i } from "../utils/cn.js";
5
+ import { PageLayout as a } from "../components/PageLayout.js";
6
+ import { StatCard as o } from "../components/StatCard.js";
7
+ import { formatDateTime as s, formatDuration as c } from "../utils/format.js";
8
+ import { StatusBadge as l } from "../components/StatusBadge.js";
9
+ import { EmptyView as u, ErrorView as d, LoadingRows as f } from "../components/StateViews.js";
10
+ import { notify as p } from "../lib/toast.js";
11
+ import { useCancelSession as m, useCompleteSession as h, useConfirmSession as g, useMentorsQuery as _, useSessionsQuery as v } from "../api/technospamApi.js";
9
12
  import "../components/index.js";
10
- import { notify as f } from "../lib/toast.js";
11
- import { useCancelSession as p, useCompleteSession as m, useConfirmSession as h, useMentorsQuery as g, useSessionsQuery as _ } from "../api/technospamApi.js";
12
- import { useState as v } from "react";
13
- import { CalendarClock as y, Check as b, CheckCircle2 as x, Clock as S, MessageSquare as C, Users as w, Video as T, X as E } from "lucide-react";
14
- import { jsx as D, jsxs as O } from "react/jsx-runtime";
15
- import { Button as k, GlassCard as A, Input as j, Tabs as M, TabsList as N, TabsTrigger as P } from "@burdenoff/fe-libs/ui";
13
+ import { FOCUS_PARAMS as y } from "../utils/pageContext.js";
14
+ import { focusableCardProps as b, useFocusedRecordParam as x } from "../hooks/useFocusedRecordParam.js";
15
+ import { useState as S } from "react";
16
+ import { CalendarClock as C, Check as w, CheckCircle2 as T, Clock as E, MessageSquare as D, Users as O, Video as k, X as A } from "lucide-react";
17
+ import { jsx as j, jsxs as M } from "react/jsx-runtime";
18
+ import { Button as N, GlassCard as P, Input as F, Tabs as I, TabsList as L, TabsTrigger as R } from "@burdenoff/fe-libs/ui";
16
19
  //#region src/technospam/pages/MentorshipSessionsPagePage.tsx
17
- var F = new Set(["REQUESTED", "CONFIRMED"]);
18
- function I({ session: e, showMentor: t, isMentor: n, onCancel: r, onConfirm: i, onComplete: a, busy: l }) {
19
- let u = F.has(e.status), [d, f] = v("none"), [p, m] = v(""), [h, g] = v("5"), [_, C] = v("");
20
- return /* @__PURE__ */ O(A, {
21
- className: "flex flex-col gap-3 p-4 transition-all duration-200 hover:-translate-y-0.5 hover:shadow-md",
20
+ var z = new Set(["REQUESTED", "CONFIRMED"]);
21
+ function B({ session: e, showMentor: t, isMentor: n, onCancel: r, onConfirm: a, onComplete: o, busy: u, focused: d, onFocusChange: f }) {
22
+ let p = () => f(e.id), m = () => f(d ? null : e.id), h = z.has(e.status), [g, _] = S("none"), [v, y] = S(""), [x, D] = S("5"), [O, I] = S(""), L = async () => {
23
+ await a(e.id, v.trim()), _("none"), y("");
24
+ }, R = async () => {
25
+ await o(e.id, Math.min(5, Math.max(1, Number(x) || 5)), O.trim()), _("none");
26
+ };
27
+ return /* @__PURE__ */ M(P, {
28
+ className: i("flex cursor-pointer flex-col gap-3 p-4 transition-all duration-200 hover:-translate-y-0.5 hover:shadow-md", d && "ring-2 ring-accent-primary"),
29
+ ...b(d, m),
22
30
  children: [
23
- /* @__PURE__ */ O("div", {
31
+ /* @__PURE__ */ M("div", {
24
32
  className: "flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between",
25
- children: [/* @__PURE__ */ O("div", {
33
+ children: [/* @__PURE__ */ M("div", {
26
34
  className: "flex items-start gap-3",
27
- children: [/* @__PURE__ */ D("span", {
35
+ children: [/* @__PURE__ */ j("span", {
28
36
  className: "flex h-11 w-11 shrink-0 items-center justify-center rounded-full bg-gradient-to-br from-accent-primary to-accent-purple text-white shadow-sm",
29
- children: /* @__PURE__ */ D(T, { size: 18 })
30
- }), /* @__PURE__ */ O("div", {
37
+ children: /* @__PURE__ */ j(k, { size: 18 })
38
+ }), /* @__PURE__ */ M("div", {
31
39
  className: "min-w-0",
32
40
  children: [
33
- /* @__PURE__ */ O("div", {
41
+ /* @__PURE__ */ M("div", {
34
42
  className: "flex flex-wrap items-center gap-2",
35
43
  children: [
36
- /* @__PURE__ */ D("span", {
37
- className: "truncate text-sm font-semibold text-text-primary",
44
+ /* @__PURE__ */ j("button", {
45
+ type: "button",
46
+ "aria-pressed": d,
47
+ onClick: m,
48
+ className: "truncate text-left text-sm font-semibold text-text-primary hover:text-accent-primary",
38
49
  children: e.topic
39
50
  }),
40
- /* @__PURE__ */ D(c, { status: e.status }),
41
- e.rating ? /* @__PURE__ */ O("span", {
51
+ /* @__PURE__ */ j(l, { status: e.status }),
52
+ e.rating ? /* @__PURE__ */ M("span", {
42
53
  className: "text-xs text-text-muted",
43
54
  children: [
44
55
  "★ ",
@@ -48,108 +59,110 @@ function I({ session: e, showMentor: t, isMentor: n, onCancel: r, onConfirm: i,
48
59
  }) : null
49
60
  ]
50
61
  }),
51
- t && e.mentor?.headline ? /* @__PURE__ */ O("div", {
62
+ t && e.mentor?.headline ? /* @__PURE__ */ M("div", {
52
63
  className: "mt-0.5 truncate text-xs text-text-secondary",
53
64
  children: ["with ", e.mentor.headline]
54
65
  }) : null,
55
- /* @__PURE__ */ O("div", {
66
+ /* @__PURE__ */ M("div", {
56
67
  className: "mt-1 flex flex-wrap items-center gap-3 text-xs text-text-muted",
57
- children: [/* @__PURE__ */ O("span", {
68
+ children: [/* @__PURE__ */ M("span", {
58
69
  className: "inline-flex items-center gap-1",
59
70
  children: [
60
- /* @__PURE__ */ D(y, { size: 13 }),
71
+ /* @__PURE__ */ j(C, { size: 13 }),
61
72
  " ",
62
- o(e.scheduledAt)
73
+ s(e.scheduledAt)
63
74
  ]
64
- }), /* @__PURE__ */ O("span", {
75
+ }), /* @__PURE__ */ M("span", {
65
76
  className: "inline-flex items-center gap-1",
66
77
  children: [
67
- /* @__PURE__ */ D(S, { size: 13 }),
78
+ /* @__PURE__ */ j(E, { size: 13 }),
68
79
  " ",
69
- s(e.durationMinutes)
80
+ c(e.durationMinutes)
70
81
  ]
71
82
  })]
72
83
  }),
73
- e.agenda ? /* @__PURE__ */ D("p", {
84
+ e.agenda ? /* @__PURE__ */ j("p", {
74
85
  className: "mt-1 line-clamp-2 text-xs text-text-secondary",
75
86
  children: e.agenda
76
87
  }) : null
77
88
  ]
78
89
  })]
79
- }), /* @__PURE__ */ O("div", {
90
+ }), /* @__PURE__ */ M("div", {
80
91
  className: "flex shrink-0 flex-wrap items-center gap-2",
81
92
  children: [
82
- e.meetingUrl ? /* @__PURE__ */ O(k, {
93
+ e.meetingUrl ? /* @__PURE__ */ M(N, {
83
94
  size: "sm",
84
95
  onClick: () => window.open(e.meetingUrl ?? "", "_blank", "noopener,noreferrer"),
85
- children: [/* @__PURE__ */ D(T, { size: 15 }), " Join"]
96
+ children: [/* @__PURE__ */ j(k, { size: 15 }), " Join"]
86
97
  }) : null,
87
- n && e.status === "REQUESTED" ? /* @__PURE__ */ O(k, {
98
+ n && e.status === "REQUESTED" ? /* @__PURE__ */ M(N, {
88
99
  variant: "outline",
89
100
  size: "sm",
90
- onClick: () => f(d === "confirm" ? "none" : "confirm"),
91
- children: [/* @__PURE__ */ D(b, { size: 15 }), " Confirm"]
101
+ onClick: () => {
102
+ p(), _(g === "confirm" ? "none" : "confirm");
103
+ },
104
+ children: [/* @__PURE__ */ j(w, { size: 15 }), " Confirm"]
92
105
  }) : null,
93
- n && e.status === "CONFIRMED" ? /* @__PURE__ */ O(k, {
106
+ n && e.status === "CONFIRMED" ? /* @__PURE__ */ M(N, {
94
107
  variant: "outline",
95
108
  size: "sm",
96
- onClick: () => f(d === "complete" ? "none" : "complete"),
97
- children: [/* @__PURE__ */ D(x, { size: 15 }), " Mark complete"]
109
+ onClick: () => {
110
+ p(), _(g === "complete" ? "none" : "complete");
111
+ },
112
+ children: [/* @__PURE__ */ j(T, { size: 15 }), " Mark complete"]
98
113
  }) : null,
99
- u ? /* @__PURE__ */ O(k, {
114
+ h ? /* @__PURE__ */ M(N, {
100
115
  variant: "ghost",
101
116
  size: "sm",
102
- onClick: () => r(e.id),
103
- disabled: l,
104
- children: [/* @__PURE__ */ D(E, { size: 15 }), " Cancel"]
117
+ onClick: () => {
118
+ p(), r(e.id);
119
+ },
120
+ disabled: u,
121
+ children: [/* @__PURE__ */ j(A, { size: 15 }), " Cancel"]
105
122
  }) : null
106
123
  ]
107
124
  })]
108
125
  }),
109
- d === "confirm" ? /* @__PURE__ */ O("div", {
126
+ g === "confirm" ? /* @__PURE__ */ M("div", {
110
127
  className: "flex flex-col gap-2 rounded-lg border border-border-seam bg-bg-sunken p-3 sm:flex-row sm:items-center",
111
- children: [/* @__PURE__ */ D(j, {
128
+ children: [/* @__PURE__ */ j(F, {
112
129
  className: "flex-1",
113
130
  placeholder: "Meeting link (e.g. https://meet.…)",
114
- value: p,
115
- onChange: (e) => m(e.target.value)
116
- }), /* @__PURE__ */ D(k, {
131
+ value: v,
132
+ onChange: (e) => y(e.target.value)
133
+ }), /* @__PURE__ */ j(N, {
117
134
  size: "sm",
118
- onClick: async () => {
119
- await i(e.id, p.trim()), f("none"), m("");
120
- },
121
- disabled: l,
135
+ onClick: L,
136
+ disabled: u,
122
137
  children: "Confirm session"
123
138
  })]
124
139
  }) : null,
125
- d === "complete" ? /* @__PURE__ */ O("div", {
140
+ g === "complete" ? /* @__PURE__ */ M("div", {
126
141
  className: "flex flex-col gap-2 rounded-lg border border-border-seam bg-bg-sunken p-3",
127
142
  children: [
128
- /* @__PURE__ */ O("div", {
143
+ /* @__PURE__ */ M("div", {
129
144
  className: "flex items-center gap-2",
130
- children: [/* @__PURE__ */ D("label", {
145
+ children: [/* @__PURE__ */ j("label", {
131
146
  className: "text-xs text-text-secondary",
132
147
  children: "Rating (1–5)"
133
- }), /* @__PURE__ */ D(j, {
148
+ }), /* @__PURE__ */ j(F, {
134
149
  type: "number",
135
150
  min: 1,
136
151
  max: 5,
137
152
  className: "w-20",
138
- value: h,
139
- onChange: (e) => g(e.target.value)
153
+ value: x,
154
+ onChange: (e) => D(e.target.value)
140
155
  })]
141
156
  }),
142
- /* @__PURE__ */ D(j, {
157
+ /* @__PURE__ */ j(F, {
143
158
  placeholder: "Feedback for the mentee (optional)",
144
- value: _,
145
- onChange: (e) => C(e.target.value)
159
+ value: O,
160
+ onChange: (e) => I(e.target.value)
146
161
  }),
147
- /* @__PURE__ */ D("div", { children: /* @__PURE__ */ D(k, {
162
+ /* @__PURE__ */ j("div", { children: /* @__PURE__ */ j(N, {
148
163
  size: "sm",
149
- onClick: async () => {
150
- await a(e.id, Math.min(5, Math.max(1, Number(h) || 5)), _.trim()), f("none");
151
- },
152
- disabled: l,
164
+ onClick: R,
165
+ disabled: u,
153
166
  children: "Complete session"
154
167
  }) })
155
168
  ]
@@ -157,185 +170,191 @@ function I({ session: e, showMentor: t, isMentor: n, onCancel: r, onConfirm: i,
157
170
  ]
158
171
  });
159
172
  }
160
- function L({ loading: e, error: t, sessions: n, showMentor: r, emptyTitle: i, emptyDescription: a, emptyAction: o, isMentor: s, onCancel: c, onConfirm: f, onComplete: p, busyId: m }) {
161
- return e && n.length === 0 ? /* @__PURE__ */ D(d, {
173
+ function V({ loading: e, error: t, sessions: n, showMentor: r, emptyTitle: i, emptyDescription: a, emptyAction: o, isMentor: s, onCancel: c, onConfirm: l, onComplete: p, busyId: m, focusedId: h, onFocusChange: g }) {
174
+ return e && n.length === 0 ? /* @__PURE__ */ j(f, {
162
175
  count: 3,
163
176
  height: "h-24"
164
- }) : t ? /* @__PURE__ */ D(u, {
177
+ }) : t ? /* @__PURE__ */ j(d, {
165
178
  title: "Couldn't load sessions",
166
179
  error: t
167
- }) : n.length === 0 ? /* @__PURE__ */ D(l, {
168
- icon: /* @__PURE__ */ D(C, { size: 26 }),
180
+ }) : n.length === 0 ? /* @__PURE__ */ j(u, {
181
+ icon: /* @__PURE__ */ j(D, { size: 26 }),
169
182
  title: i,
170
183
  description: a,
171
184
  action: o
172
- }) : /* @__PURE__ */ D("div", {
185
+ }) : /* @__PURE__ */ j("div", {
173
186
  className: "space-y-3",
174
- children: [...n].sort((e, t) => new Date(t.scheduledAt).getTime() - new Date(e.scheduledAt).getTime()).map((e) => /* @__PURE__ */ D(I, {
187
+ children: [...n].sort((e, t) => new Date(t.scheduledAt).getTime() - new Date(e.scheduledAt).getTime()).map((e) => /* @__PURE__ */ j(B, {
175
188
  session: e,
176
189
  showMentor: r,
177
190
  isMentor: s,
178
191
  onCancel: c,
179
- onConfirm: f,
192
+ onConfirm: l,
180
193
  onComplete: p,
181
- busy: m === e.id
194
+ busy: m === e.id,
195
+ focused: h === e.id,
196
+ onFocusChange: g
182
197
  }, e.id))
183
198
  });
184
199
  }
185
- function R() {
186
- let o = t(), { currentUser: s, workspaceId: c } = e(), { emit: u } = n(), b = r(), [S, T] = v("mentee"), [E, A] = v(null), j = s?.id, F = _(j ? { menteeId: j } : {}), I = g({}), R = I.data?.tecListMentors?.items.find((e) => e.userId === s?.id), z = R?.id, B = _(z ? { mentorId: z } : {}), [V] = p(), [H] = h(), [U] = m(), W = j ? F.data?.tecListSessions?.items ?? [] : [], G = z ? B.data?.tecListSessions?.items ?? [] : [], K = [...W, ...G], q = K.filter((e) => e.status === "REQUESTED" || e.status === "CONFIRMED").length, J = K.filter((e) => e.status === "COMPLETED").length, Y = async (e) => {
187
- A(e), u("technospam.session.cancel_clicked", {
200
+ function H() {
201
+ let i = t(), { currentUser: s, workspaceId: c } = e(), { emit: l } = n(), d = r(), [b, w] = S("mentee"), [E, k] = S(null), [A, P] = x(y.session), F = s?.id, z = v(F ? { menteeId: F } : {}), B = _({}), H = B.data?.tecListMentors?.items.find((e) => e.userId === s?.id), U = H?.id, W = v(U ? { mentorId: U } : {}), [G] = m(), [K] = g(), [q] = h(), J = F ? z.data?.tecListSessions?.items ?? [] : [], Y = U ? W.data?.tecListSessions?.items ?? [] : [], X = [...J, ...Y], ee = X.filter((e) => e.status === "REQUESTED" || e.status === "CONFIRMED").length, te = X.filter((e) => e.status === "COMPLETED").length, Z = async (e) => {
202
+ k(e), l("technospam.session.cancel_clicked", {
188
203
  workspaceId: c,
189
204
  entityId: e,
190
205
  entityType: "TEC_MENTOR_SESSION"
191
206
  });
192
207
  try {
193
- (await V({ variables: { id: e } })).data?.tecCancelSession && (u("technospam.session.cancelled", {
208
+ (await G({ variables: { id: e } })).data?.tecCancelSession && (l("technospam.session.cancelled", {
194
209
  workspaceId: c,
195
210
  entityId: e,
196
211
  entityType: "TEC_MENTOR_SESSION"
197
- }), f.success("Session cancelled", "The session has been cancelled."));
212
+ }), p.success("Session cancelled", "The session has been cancelled."));
198
213
  } finally {
199
- A(null);
214
+ k(null);
200
215
  }
201
- }, X = async (e, t) => {
202
- A(e);
216
+ }, Q = async (e, t) => {
217
+ k(e);
203
218
  try {
204
- (await H({ variables: {
219
+ (await K({ variables: {
205
220
  id: e,
206
221
  meetingUrl: t || void 0
207
- } })).data?.tecConfirmSession && (f.success("Session confirmed", "The mentee has been notified."), await B.refetch());
222
+ } })).data?.tecConfirmSession && (p.success("Session confirmed", "The mentee has been notified."), await W.refetch());
208
223
  } finally {
209
- A(null);
224
+ k(null);
210
225
  }
211
- }, Z = async (e, t, n) => {
212
- A(e), u("technospam.session.complete_clicked", {
226
+ }, $ = async (e, t, n) => {
227
+ k(e), l("technospam.session.complete_clicked", {
213
228
  workspaceId: c,
214
229
  entityId: e,
215
230
  entityType: "TEC_MENTOR_SESSION"
216
231
  });
217
232
  try {
218
- (await U({ variables: {
233
+ (await q({ variables: {
219
234
  id: e,
220
235
  rating: t,
221
236
  feedback: n || void 0
222
- } })).data?.tecCompleteSession && (u("technospam.session.completed", {
237
+ } })).data?.tecCompleteSession && (l("technospam.session.completed", {
223
238
  workspaceId: c,
224
239
  entityId: e,
225
240
  entityType: "TEC_MENTOR_SESSION"
226
- }), f.success("Session completed", "Nice work — the session is wrapped up."), await B.refetch());
241
+ }), p.success("Session completed", "Nice work — the session is wrapped up."), await W.refetch());
227
242
  } finally {
228
- A(null);
243
+ k(null);
229
244
  }
230
245
  };
231
- return s?.id ? /* @__PURE__ */ O(i, {
246
+ return s?.id ? /* @__PURE__ */ M(a, {
232
247
  hero: !0,
233
- title: b("technospam.mentorship.sessionsTitle", "My Sessions"),
234
- description: b("technospam.mentorship.sessionsDescription", "Manage the mentorship sessions you've booked and the ones you host."),
235
- actions: /* @__PURE__ */ O(k, {
248
+ title: d("technospam.mentorship.sessionsTitle", "My Sessions"),
249
+ description: d("technospam.mentorship.sessionsDescription", "Manage the mentorship sessions you've booked and the ones you host."),
250
+ actions: /* @__PURE__ */ M(N, {
236
251
  variant: "outline",
237
- onClick: () => o("/mentorship/mentors-page"),
252
+ onClick: () => i("/mentorship/mentors-page"),
238
253
  children: [
239
- /* @__PURE__ */ D(w, { size: 16 }),
254
+ /* @__PURE__ */ j(O, { size: 16 }),
240
255
  " ",
241
- b("technospam.common.findMentor", "Find a mentor")
256
+ d("technospam.common.findMentor", "Find a mentor")
242
257
  ]
243
258
  }),
244
259
  children: [
245
- /* @__PURE__ */ O("div", {
260
+ /* @__PURE__ */ M("div", {
246
261
  className: "mb-5 grid grid-cols-2 gap-3 sm:grid-cols-4",
247
262
  children: [
248
- /* @__PURE__ */ D(a, {
249
- label: b("technospam.mentorship.statAsMentee", "As mentee"),
250
- value: W.length,
251
- icon: C,
263
+ /* @__PURE__ */ j(o, {
264
+ label: d("technospam.mentorship.statAsMentee", "As mentee"),
265
+ value: J.length,
266
+ icon: D,
252
267
  tone: "blue"
253
268
  }),
254
- /* @__PURE__ */ D(a, {
255
- label: b("technospam.mentorship.statAsMentor", "As mentor"),
256
- value: z ? G.length : 0,
257
- icon: w,
269
+ /* @__PURE__ */ j(o, {
270
+ label: d("technospam.mentorship.statAsMentor", "As mentor"),
271
+ value: U ? Y.length : 0,
272
+ icon: O,
258
273
  tone: "purple"
259
274
  }),
260
- /* @__PURE__ */ D(a, {
261
- label: b("technospam.mentorship.statUpcoming", "Upcoming"),
262
- value: q,
263
- icon: y,
275
+ /* @__PURE__ */ j(o, {
276
+ label: d("technospam.mentorship.statUpcoming", "Upcoming"),
277
+ value: ee,
278
+ icon: C,
264
279
  tone: "teal"
265
280
  }),
266
- /* @__PURE__ */ D(a, {
267
- label: b("technospam.mentorship.statCompleted", "Completed"),
268
- value: J,
269
- icon: x,
281
+ /* @__PURE__ */ j(o, {
282
+ label: d("technospam.mentorship.statCompleted", "Completed"),
283
+ value: te,
284
+ icon: T,
270
285
  tone: "green"
271
286
  })
272
287
  ]
273
288
  }),
274
- /* @__PURE__ */ D(M, {
275
- value: S,
276
- onValueChange: (e) => T(e),
289
+ /* @__PURE__ */ j(I, {
290
+ value: b,
291
+ onValueChange: (e) => w(e),
277
292
  className: "mb-4",
278
- children: /* @__PURE__ */ O(N, { children: [/* @__PURE__ */ D(P, {
293
+ children: /* @__PURE__ */ M(L, { children: [/* @__PURE__ */ j(R, {
279
294
  value: "mentee",
280
- children: b("technospam.mentorship.tabAsMentee", "As mentee")
281
- }), /* @__PURE__ */ D(P, {
295
+ children: d("technospam.mentorship.tabAsMentee", "As mentee")
296
+ }), /* @__PURE__ */ j(R, {
282
297
  value: "mentor",
283
- children: b("technospam.mentorship.tabAsMentor", "As mentor")
298
+ children: d("technospam.mentorship.tabAsMentor", "As mentor")
284
299
  })] })
285
300
  }),
286
- S === "mentee" ? /* @__PURE__ */ D(L, {
287
- loading: F.loading,
288
- error: F.error,
289
- sessions: W,
301
+ b === "mentee" ? /* @__PURE__ */ j(V, {
302
+ loading: z.loading,
303
+ error: z.error,
304
+ sessions: J,
290
305
  showMentor: !0,
291
- emptyTitle: b("technospam.mentorship.noSessionsBookedTitle", "No sessions booked yet"),
292
- emptyDescription: b("technospam.mentorship.noSessionsBookedDesc", "Find a mentor and request a session to get personalized guidance."),
293
- emptyAction: /* @__PURE__ */ D(k, {
294
- onClick: () => o("/mentorship/mentors-page"),
295
- children: b("technospam.common.findMentor", "Find a mentor")
306
+ emptyTitle: d("technospam.mentorship.noSessionsBookedTitle", "No sessions booked yet"),
307
+ emptyDescription: d("technospam.mentorship.noSessionsBookedDesc", "Find a mentor and request a session to get personalized guidance."),
308
+ emptyAction: /* @__PURE__ */ j(N, {
309
+ onClick: () => i("/mentorship/mentors-page"),
310
+ children: d("technospam.common.findMentor", "Find a mentor")
296
311
  }),
297
312
  isMentor: !1,
298
- onCancel: Y,
299
- onConfirm: X,
300
- onComplete: Z,
301
- busyId: E
302
- }) : I.loading && !R ? /* @__PURE__ */ D(d, {
313
+ onCancel: Z,
314
+ onConfirm: Q,
315
+ onComplete: $,
316
+ busyId: E,
317
+ focusedId: A,
318
+ onFocusChange: P
319
+ }) : B.loading && !H ? /* @__PURE__ */ j(f, {
303
320
  count: 3,
304
321
  height: "h-24"
305
- }) : z ? /* @__PURE__ */ D(L, {
306
- loading: B.loading,
307
- error: B.error,
308
- sessions: G,
322
+ }) : U ? /* @__PURE__ */ j(V, {
323
+ loading: W.loading,
324
+ error: W.error,
325
+ sessions: Y,
309
326
  showMentor: !1,
310
- emptyTitle: b("technospam.mentorship.noSessionsToHostTitle", "No sessions to host yet"),
311
- emptyDescription: b("technospam.mentorship.noSessionsToHostDesc", "When mentees request time with you, their sessions will show up here."),
327
+ emptyTitle: d("technospam.mentorship.noSessionsToHostTitle", "No sessions to host yet"),
328
+ emptyDescription: d("technospam.mentorship.noSessionsToHostDesc", "When mentees request time with you, their sessions will show up here."),
312
329
  isMentor: !0,
313
- onCancel: Y,
314
- onConfirm: X,
315
- onComplete: Z,
316
- busyId: E
317
- }) : /* @__PURE__ */ D(l, {
318
- icon: /* @__PURE__ */ D(w, { size: 26 }),
319
- title: b("technospam.mentorship.notAMentorTitle", "You're not a mentor yet"),
320
- description: b("technospam.mentorship.notAMentorDesc", "Create a mentor profile to start hosting sessions and helping others build."),
321
- action: /* @__PURE__ */ D(k, {
322
- onClick: () => o("/mentorship/mentors-page"),
323
- children: b("technospam.common.becomeAMentor", "Become a mentor")
330
+ onCancel: Z,
331
+ onConfirm: Q,
332
+ onComplete: $,
333
+ busyId: E,
334
+ focusedId: A,
335
+ onFocusChange: P
336
+ }) : /* @__PURE__ */ j(u, {
337
+ icon: /* @__PURE__ */ j(O, { size: 26 }),
338
+ title: d("technospam.mentorship.notAMentorTitle", "You're not a mentor yet"),
339
+ description: d("technospam.mentorship.notAMentorDesc", "Create a mentor profile to start hosting sessions and helping others build."),
340
+ action: /* @__PURE__ */ j(N, {
341
+ onClick: () => i("/mentorship/mentors-page"),
342
+ children: d("technospam.common.becomeAMentor", "Become a mentor")
324
343
  })
325
344
  })
326
345
  ]
327
- }) : /* @__PURE__ */ D(i, {
346
+ }) : /* @__PURE__ */ j(a, {
328
347
  hero: !0,
329
- title: b("technospam.mentorship.sessionsTitle", "My Sessions"),
330
- description: b("technospam.mentorship.sessionsDescription", "Track your mentorship sessions."),
331
- children: /* @__PURE__ */ D(l, {
332
- icon: /* @__PURE__ */ D(C, { size: 26 }),
333
- title: b("technospam.mentorship.signInTitle", "Sign in to view your sessions"),
334
- description: b("technospam.mentorship.signInDesc", "Your booked and hosted mentorship sessions will appear here once you're signed in.")
348
+ title: d("technospam.mentorship.sessionsTitle", "My Sessions"),
349
+ description: d("technospam.mentorship.sessionsDescription", "Track your mentorship sessions."),
350
+ children: /* @__PURE__ */ j(u, {
351
+ icon: /* @__PURE__ */ j(D, { size: 26 }),
352
+ title: d("technospam.mentorship.signInTitle", "Sign in to view your sessions"),
353
+ description: d("technospam.mentorship.signInDesc", "Your booked and hosted mentorship sessions will appear here once you're signed in.")
335
354
  })
336
355
  });
337
356
  }
338
357
  //#endregion
339
- export { R as MentorshipSessionsPagePage };
358
+ export { H as MentorshipSessionsPagePage };
340
359
 
341
360
  //# sourceMappingURL=MentorshipSessionsPagePage.js.map