@burdenoff/microfe-organization 2026.625.3 → 2026.731.1

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 (29) hide show
  1. package/dist/organization-management/modules/members/pages/InviteMemberPage.js +58 -53
  2. package/dist/organization-management/modules/members/pages/InviteMemberPage.js.map +1 -1
  3. package/dist/organization-management/modules/members/pages/InvitePeoplePage.js +47 -40
  4. package/dist/organization-management/modules/members/pages/InvitePeoplePage.js.map +1 -1
  5. package/dist/organization-management/modules/members/pages/MemberDetailPage.js +72 -68
  6. package/dist/organization-management/modules/members/pages/MemberDetailPage.js.map +1 -1
  7. package/dist/organization-management/modules/members/pages/MembersListPage.js +216 -208
  8. package/dist/organization-management/modules/members/pages/MembersListPage.js.map +1 -1
  9. package/dist/organization-management/modules/members/pages/MyInvitesPage.js +164 -158
  10. package/dist/organization-management/modules/members/pages/MyInvitesPage.js.map +1 -1
  11. package/dist/organization-management/modules/members/pages/OrganizationInviteAcceptancePage.js +132 -128
  12. package/dist/organization-management/modules/members/pages/OrganizationInviteAcceptancePage.js.map +1 -1
  13. package/dist/organization-management/modules/organizations/pages/OrganizationCreatePage.js +42 -37
  14. package/dist/organization-management/modules/organizations/pages/OrganizationCreatePage.js.map +1 -1
  15. package/dist/organization-management/modules/organizations/pages/OrganizationDetailPage.js +310 -258
  16. package/dist/organization-management/modules/organizations/pages/OrganizationDetailPage.js.map +1 -1
  17. package/dist/organization-management/modules/organizations/pages/OrganizationEditPage.js +52 -47
  18. package/dist/organization-management/modules/organizations/pages/OrganizationEditPage.js.map +1 -1
  19. package/dist/organization-management/modules/organizations/pages/OrganizationsListPage.js +66 -59
  20. package/dist/organization-management/modules/organizations/pages/OrganizationsListPage.js.map +1 -1
  21. package/dist/organization-management/modules/workspaces/pages/WorkspaceCreatePage.js +43 -38
  22. package/dist/organization-management/modules/workspaces/pages/WorkspaceCreatePage.js.map +1 -1
  23. package/dist/organization-management/modules/workspaces/pages/WorkspaceDetailPage.js +315 -258
  24. package/dist/organization-management/modules/workspaces/pages/WorkspaceDetailPage.js.map +1 -1
  25. package/dist/organization-management/modules/workspaces/pages/WorkspaceEditPage.js +50 -45
  26. package/dist/organization-management/modules/workspaces/pages/WorkspaceEditPage.js.map +1 -1
  27. package/dist/organization-management/modules/workspaces/pages/WorkspacesListPage.js +246 -238
  28. package/dist/organization-management/modules/workspaces/pages/WorkspacesListPage.js.map +1 -1
  29. package/package.json +7 -7
@@ -4,18 +4,18 @@ import { InviteStatus as i } from "../../../../generated/global-types.js";
4
4
  import { useTr as a } from "../../../shared/hooks/useTr.js";
5
5
  import { LoadingState as o } from "../../../shared/components/feedback/LoadingState.js";
6
6
  import { useOrganizationPageView as s } from "../../../hooks/useOrganizationPageView.js";
7
- import { useAcceptWorkspaceInvite as ee, useMyWorkspaceInvites as c, useRejectWorkspaceInvite as l } from "../hooks/useWorkspaceInvites.js";
8
- import { MyInviteCard as te } from "../components/MyInviteCard.js";
9
- import { getProjectDisplayNames as ne, getRoleDisplayNames as u, getWorkspaceDisplayName as d } from "../utils/workspaceInvitationDisplay.js";
10
- import { useMemo as f, useState as p } from "react";
11
- import { AlertCircle as re, BriefcaseBusiness as ie, Loader2 as m, Mail as h } from "lucide-react";
12
- import { Badge as g, GlassCard as _, IllustratedEmptyState as v } from "@burdenoff/fe-libs/ui";
13
- import { usePermissions as ae } from "@burdenoff/fe-libs/shared/providers/shell";
14
- import { jsx as y, jsxs as b } from "react/jsx-runtime";
15
- import { NavLink as x } from "react-router-dom";
16
- import { ActorIdentity as S, useActorProfiles as C } from "@burdenoff/fe-libs/shared";
7
+ import { useAcceptWorkspaceInvite as c, useMyWorkspaceInvites as l, useRejectWorkspaceInvite as u } from "../hooks/useWorkspaceInvites.js";
8
+ import { MyInviteCard as d } from "../components/MyInviteCard.js";
9
+ import { getProjectDisplayNames as f, getRoleDisplayNames as ee, getWorkspaceDisplayName as p } from "../utils/workspaceInvitationDisplay.js";
10
+ import { useMemo as m, useState as h } from "react";
11
+ import { AlertCircle as te, BriefcaseBusiness as ne, Loader2 as g, Mail as _ } from "lucide-react";
12
+ import { Badge as v, GlassCard as y, IllustratedEmptyState as b, PagePurpose as re } from "@burdenoff/fe-libs/ui";
13
+ import { usePermissions as x } from "@burdenoff/fe-libs/shared/providers/shell";
14
+ import { jsx as S, jsxs as C } from "react/jsx-runtime";
15
+ import { NavLink as w } from "react-router-dom";
16
+ import { ActorIdentity as ie, useActorProfiles as T } from "@burdenoff/fe-libs/shared";
17
17
  //#region src/organization-management/modules/members/pages/MyInvitesPage.tsx
18
- function w(e) {
18
+ function E(e) {
19
19
  if (!e) return null;
20
20
  let t = new Date(e);
21
21
  return Number.isNaN(t.getTime()) ? null : t.toLocaleDateString(void 0, {
@@ -26,324 +26,329 @@ function w(e) {
26
26
  minute: "2-digit"
27
27
  });
28
28
  }
29
- function T(e, t) {
29
+ function D(e, t) {
30
30
  return (e.endsWith("/") ? e.slice(0, -1) : e) + (t.startsWith("/") ? t : `/${t}`);
31
31
  }
32
- function E({ activeTab: e, basePath: t, tr: n }) {
32
+ function O({ activeTab: e, basePath: t, tr: n }) {
33
33
  let r = (e) => ["border-b-2 px-4 py-2 text-sm font-medium transition-colors", e ? "border-[var(--color-border-focus)] text-[var(--color-text-primary)]" : "border-transparent text-[var(--color-text-muted)] hover:text-[var(--color-text-primary)]"].join(" ");
34
- return /* @__PURE__ */ b("div", {
34
+ return /* @__PURE__ */ C("div", {
35
35
  className: "mb-6 flex gap-2 border-b border-[var(--color-border-default)]",
36
- children: [/* @__PURE__ */ y(x, {
37
- to: T(t, "/invites"),
36
+ children: [/* @__PURE__ */ S(w, {
37
+ to: D(t, "/invites"),
38
38
  end: !0,
39
39
  className: r(e === "workspace"),
40
40
  children: n("members.myInvites.workspaceTab", "Workspace Invites")
41
- }), /* @__PURE__ */ y(x, {
42
- to: T(t, "/invites/organizations"),
41
+ }), /* @__PURE__ */ S(w, {
42
+ to: D(t, "/invites/organizations"),
43
43
  className: r(e === "organization"),
44
44
  children: n("members.myInvites.organizationTab", "Organization Invites")
45
45
  })]
46
46
  });
47
47
  }
48
- function D({ activeTab: x = "workspace" }) {
49
- s(x === "workspace" ? "organizations.my-workspace-invites" : "organizations.my-organization-invites");
50
- let T = a(), { isLoading: D } = ae(), { basePath: O = "/organizations", currentUser: k, authToken: A, apiGatewayUrl: oe } = e(), j = x === "organization", M = x === "workspace", { invites: N, loading: P, error: F, total: I } = n(i.Pending, 20, 0, j), { invites: L, loading: R, error: z, total: B, refetch: V } = c(k?.email, M), { acceptInvite: H, loading: U } = t(), { rejectInvite: W, loading: G } = r(), { acceptInvite: K, loading: se } = ee(), { rejectInvite: ce, loading: le } = l(), [q, J] = p(null), Y = q?.tab === x ? q.message : null, [X, Z] = p(null), ue = C(f(() => L.flatMap((e) => e.invitedById ? [{
48
+ function k({ activeTab: w = "workspace" }) {
49
+ s(w === "workspace" ? "organizations.my-workspace-invites" : "organizations.my-organization-invites");
50
+ let D = a(), { isLoading: k } = x(), { basePath: A = "/organizations", currentUser: j, authToken: ae, apiGatewayUrl: oe } = e(), M = w === "organization", N = w === "workspace", { invites: P, loading: F, error: I, total: L } = n(i.Pending, 20, 0, M), { invites: R, loading: z, error: B, total: V, refetch: H } = l(j?.email, N), { acceptInvite: U, loading: W } = t(), { rejectInvite: G, loading: K } = r(), { acceptInvite: se, loading: ce } = c(), { rejectInvite: le, loading: ue } = u(), [q, J] = h(null), Y = q?.tab === w ? q.message : null, [X, Z] = h(null), de = T(m(() => R.flatMap((e) => e.invitedById ? [{
51
51
  actorId: e.invitedById,
52
52
  actorType: "user"
53
- }] : []), [L]), {
53
+ }] : []), [R]), {
54
54
  apiGatewayUrl: oe,
55
- authToken: A
56
- }), Q = f(() => [...L].sort((e, t) => new Date(t.createdAt).getTime() - new Date(e.createdAt).getTime()), [L]), $ = x === "workspace" ? B : I, de = async (e) => {
55
+ authToken: ae
56
+ }), Q = m(() => [...R].sort((e, t) => new Date(t.createdAt).getTime() - new Date(e.createdAt).getTime()), [R]), $ = w === "workspace" ? V : L, fe = async (e) => {
57
57
  try {
58
- J(null), await H(e);
58
+ J(null), await U(e);
59
59
  } catch (e) {
60
60
  J({
61
61
  tab: "organization",
62
- message: e instanceof Error ? e.message : T("members.myInvites.acceptFailed", "Failed to accept invite")
62
+ message: e instanceof Error ? e.message : D("members.myInvites.acceptFailed", "Failed to accept invite")
63
63
  });
64
64
  }
65
- }, fe = async (e) => {
65
+ }, pe = async (e) => {
66
66
  try {
67
- J(null), await W(e);
67
+ J(null), await G(e);
68
68
  } catch (e) {
69
69
  J({
70
70
  tab: "organization",
71
- message: e instanceof Error ? e.message : T("members.myInvites.rejectFailed", "Failed to reject invite")
71
+ message: e instanceof Error ? e.message : D("members.myInvites.rejectFailed", "Failed to reject invite")
72
72
  });
73
73
  }
74
- }, pe = async (e) => {
74
+ }, me = async (e) => {
75
75
  try {
76
76
  Z({
77
77
  inviteId: e,
78
78
  action: "accept"
79
- }), J(null), await K(e), await V().catch(() => void 0);
79
+ }), J(null), await se(e), await H().catch(() => void 0);
80
80
  } catch (e) {
81
81
  J({
82
82
  tab: "workspace",
83
- message: e instanceof Error ? e.message : T("members.myInvites.workspaceAcceptFailed", "Failed to accept workspace invite")
83
+ message: e instanceof Error ? e.message : D("members.myInvites.workspaceAcceptFailed", "Failed to accept workspace invite")
84
84
  });
85
85
  } finally {
86
86
  Z((t) => t?.inviteId === e && t.action === "accept" ? null : t);
87
87
  }
88
- }, me = async (e) => {
88
+ }, he = async (e) => {
89
89
  try {
90
90
  Z({
91
91
  inviteId: e,
92
92
  action: "reject"
93
- }), J(null), await ce(e), await V().catch(() => void 0);
93
+ }), J(null), await le(e), await H().catch(() => void 0);
94
94
  } catch (e) {
95
95
  J({
96
96
  tab: "workspace",
97
- message: e instanceof Error ? e.message : T("members.myInvites.workspaceRejectFailed", "Failed to reject workspace invite")
97
+ message: e instanceof Error ? e.message : D("members.myInvites.workspaceRejectFailed", "Failed to reject workspace invite")
98
98
  });
99
99
  } finally {
100
100
  Z((t) => t?.inviteId === e && t.action === "reject" ? null : t);
101
101
  }
102
102
  };
103
- return D ? /* @__PURE__ */ y("div", {
103
+ return k ? /* @__PURE__ */ S("div", {
104
104
  className: "min-h-full bg-[var(--color-bg-canvas)] p-6",
105
- children: /* @__PURE__ */ y(o, { message: T("common.loadingPermissions", "Loading permissions...") })
106
- }) : M && !k?.email ? /* @__PURE__ */ y("div", {
105
+ children: /* @__PURE__ */ S(o, { message: D("common.loadingPermissions", "Loading permissions...") })
106
+ }) : N && !j?.email ? /* @__PURE__ */ S("div", {
107
107
  className: "min-h-full bg-[var(--color-bg-canvas)] px-4 py-6 sm:px-6",
108
- children: /* @__PURE__ */ b("div", {
108
+ children: /* @__PURE__ */ C("div", {
109
109
  className: "max-w-4xl mx-auto",
110
110
  children: [
111
- /* @__PURE__ */ b("div", {
111
+ /* @__PURE__ */ C("div", {
112
112
  className: "mb-6 flex items-center gap-3",
113
- children: [/* @__PURE__ */ y(h, {
113
+ children: [/* @__PURE__ */ S(_, {
114
114
  size: 24,
115
115
  className: "text-[var(--color-text-primary)]"
116
- }), /* @__PURE__ */ y("h1", {
116
+ }), /* @__PURE__ */ S("h1", {
117
117
  className: "text-2xl font-bold text-[var(--color-text-primary)]",
118
- children: T("members.myInvites.title", "My Invites")
118
+ children: D("members.myInvites.title", "My Invites")
119
119
  })]
120
120
  }),
121
- /* @__PURE__ */ y(E, {
122
- activeTab: x,
123
- basePath: O,
124
- tr: T
121
+ /* @__PURE__ */ S(O, {
122
+ activeTab: w,
123
+ basePath: A,
124
+ tr: D
125
125
  }),
126
- /* @__PURE__ */ y("div", {
126
+ /* @__PURE__ */ S("div", {
127
127
  className: "rounded-xl border border-[var(--color-border-default)] bg-[var(--color-bg-surface)] p-6 text-center",
128
- children: /* @__PURE__ */ y("p", {
128
+ children: /* @__PURE__ */ S("p", {
129
129
  className: "text-[var(--color-text-secondary)]",
130
- children: T("members.myInvites.signInWorkspace", "Sign in to view your workspace invites.")
130
+ children: D("members.myInvites.signInWorkspace", "Sign in to view your workspace invites.")
131
131
  })
132
132
  })
133
133
  ]
134
134
  })
135
- }) : j && P && N.length === 0 || M && R && L.length === 0 ? /* @__PURE__ */ y("div", {
135
+ }) : M && F && P.length === 0 || N && z && R.length === 0 ? /* @__PURE__ */ S("div", {
136
136
  className: "min-h-full bg-[var(--color-bg-canvas)] px-4 py-6 sm:px-6",
137
- children: /* @__PURE__ */ b("div", {
137
+ children: /* @__PURE__ */ C("div", {
138
138
  className: "max-w-4xl mx-auto",
139
139
  children: [
140
- /* @__PURE__ */ b("div", {
140
+ /* @__PURE__ */ C("div", {
141
141
  className: "mb-6 flex items-center gap-3",
142
- children: [/* @__PURE__ */ y(h, {
142
+ children: [/* @__PURE__ */ S(_, {
143
143
  size: 24,
144
144
  className: "text-[var(--color-text-primary)]"
145
- }), /* @__PURE__ */ y("h1", {
145
+ }), /* @__PURE__ */ S("h1", {
146
146
  className: "text-2xl font-bold text-[var(--color-text-primary)]",
147
- children: T("members.myInvites.title", "My Invites")
147
+ children: D("members.myInvites.title", "My Invites")
148
148
  })]
149
149
  }),
150
- /* @__PURE__ */ y(E, {
151
- activeTab: x,
152
- basePath: O,
153
- tr: T
150
+ /* @__PURE__ */ S(O, {
151
+ activeTab: w,
152
+ basePath: A,
153
+ tr: D
154
154
  }),
155
- /* @__PURE__ */ y("div", {
155
+ /* @__PURE__ */ S("div", {
156
156
  className: "flex items-center justify-center min-h-[300px] rounded-xl border border-[var(--color-border-default)] bg-[var(--color-bg-surface)]",
157
- children: /* @__PURE__ */ y(m, {
157
+ children: /* @__PURE__ */ S(g, {
158
158
  size: 24,
159
159
  className: "animate-spin text-[var(--color-text-muted)]"
160
160
  })
161
161
  })
162
162
  ]
163
163
  })
164
- }) : j && F ? /* @__PURE__ */ y("div", {
164
+ }) : M && I ? /* @__PURE__ */ S("div", {
165
165
  className: "min-h-full bg-[var(--color-bg-canvas)] px-4 py-6 sm:px-6",
166
- children: /* @__PURE__ */ b("div", {
166
+ children: /* @__PURE__ */ C("div", {
167
167
  className: "max-w-4xl mx-auto",
168
168
  children: [
169
- /* @__PURE__ */ b("div", {
169
+ /* @__PURE__ */ C("div", {
170
170
  className: "mb-6 flex items-center gap-3",
171
- children: [/* @__PURE__ */ y(h, {
171
+ children: [/* @__PURE__ */ S(_, {
172
172
  size: 24,
173
173
  className: "text-[var(--color-text-primary)]"
174
- }), /* @__PURE__ */ y("h1", {
174
+ }), /* @__PURE__ */ S("h1", {
175
175
  className: "text-2xl font-bold text-[var(--color-text-primary)]",
176
- children: T("members.myInvites.title", "My Invites")
176
+ children: D("members.myInvites.title", "My Invites")
177
177
  })]
178
178
  }),
179
- /* @__PURE__ */ y(E, {
180
- activeTab: x,
181
- basePath: O,
182
- tr: T
179
+ /* @__PURE__ */ S(O, {
180
+ activeTab: w,
181
+ basePath: A,
182
+ tr: D
183
183
  }),
184
- /* @__PURE__ */ y("div", {
184
+ /* @__PURE__ */ S("div", {
185
185
  className: "rounded-xl border border-[var(--color-status-error-border)] bg-[var(--color-status-error-bgSubtle)] p-6 text-center",
186
- children: /* @__PURE__ */ b("p", {
186
+ children: /* @__PURE__ */ C("p", {
187
187
  className: "text-[var(--color-status-error-text)]",
188
188
  children: [
189
- T("members.myInvites.loadFailed", "Failed to load invites"),
189
+ D("members.myInvites.loadFailed", "Failed to load invites"),
190
190
  ": ",
191
- F.message
191
+ I.message
192
192
  ]
193
193
  })
194
194
  })
195
195
  ]
196
196
  })
197
- }) : M && z ? /* @__PURE__ */ y("div", {
197
+ }) : N && B ? /* @__PURE__ */ S("div", {
198
198
  className: "min-h-full bg-[var(--color-bg-canvas)] px-4 py-6 sm:px-6",
199
- children: /* @__PURE__ */ b("div", {
199
+ children: /* @__PURE__ */ C("div", {
200
200
  className: "max-w-4xl mx-auto",
201
201
  children: [
202
- /* @__PURE__ */ b("div", {
202
+ /* @__PURE__ */ C("div", {
203
203
  className: "mb-6 flex items-center gap-3",
204
- children: [/* @__PURE__ */ y(h, {
204
+ children: [/* @__PURE__ */ S(_, {
205
205
  size: 24,
206
206
  className: "text-[var(--color-text-primary)]"
207
- }), /* @__PURE__ */ y("h1", {
207
+ }), /* @__PURE__ */ S("h1", {
208
208
  className: "text-2xl font-bold text-[var(--color-text-primary)]",
209
- children: T("members.myInvites.title", "My Invites")
209
+ children: D("members.myInvites.title", "My Invites")
210
210
  })]
211
211
  }),
212
- /* @__PURE__ */ y(E, {
213
- activeTab: x,
214
- basePath: O,
215
- tr: T
212
+ /* @__PURE__ */ S(O, {
213
+ activeTab: w,
214
+ basePath: A,
215
+ tr: D
216
216
  }),
217
- /* @__PURE__ */ y("div", {
217
+ /* @__PURE__ */ S("div", {
218
218
  className: "rounded-xl border border-[var(--color-status-error-border)] bg-[var(--color-status-error-bgSubtle)] p-6 text-center",
219
- children: /* @__PURE__ */ b("p", {
219
+ children: /* @__PURE__ */ C("p", {
220
220
  className: "text-[var(--color-status-error-text)]",
221
221
  children: [
222
- T("members.myInvites.workspaceLoadFailed", "Failed to load workspace invites"),
222
+ D("members.myInvites.workspaceLoadFailed", "Failed to load workspace invites"),
223
223
  ":",
224
224
  " ",
225
- z.message
225
+ B.message
226
226
  ]
227
227
  })
228
228
  })
229
229
  ]
230
230
  })
231
- }) : /* @__PURE__ */ y("div", {
231
+ }) : /* @__PURE__ */ S("div", {
232
232
  className: "min-h-full bg-[var(--color-bg-canvas)] px-4 py-6 sm:px-6",
233
- children: /* @__PURE__ */ b("div", {
233
+ children: /* @__PURE__ */ C("div", {
234
234
  className: "max-w-4xl mx-auto",
235
235
  children: [
236
- /* @__PURE__ */ b("div", {
236
+ /* @__PURE__ */ C("div", {
237
237
  className: "flex items-center gap-3 mb-6",
238
238
  children: [
239
- /* @__PURE__ */ y(h, {
239
+ /* @__PURE__ */ S(_, {
240
240
  size: 24,
241
241
  className: "text-[var(--color-text-primary)]"
242
242
  }),
243
- /* @__PURE__ */ y("h1", {
243
+ /* @__PURE__ */ S("h1", {
244
244
  className: "text-2xl font-bold text-[var(--color-text-primary)]",
245
- children: T("members.myInvites.title", "My Invites")
245
+ children: D("members.myInvites.title", "My Invites")
246
246
  }),
247
- $ > 0 && /* @__PURE__ */ y("span", {
247
+ $ > 0 && /* @__PURE__ */ S("span", {
248
248
  className: "px-2.5 py-0.5 rounded-full text-xs font-medium bg-[var(--color-action-primary-bg)] text-[var(--color-action-primary-text)]",
249
249
  children: $
250
250
  })
251
251
  ]
252
252
  }),
253
- /* @__PURE__ */ y(E, {
254
- activeTab: x,
255
- basePath: O,
256
- tr: T
253
+ /* @__PURE__ */ S(O, {
254
+ activeTab: w,
255
+ basePath: A,
256
+ tr: D
257
257
  }),
258
- Y && /* @__PURE__ */ b("div", {
258
+ /* @__PURE__ */ S(re, {
259
+ className: "mb-4 max-w-3xl",
260
+ children: D("members.myInvites.purpose", "This is your personal inbox for invitations — when someone invites you to a workspace or organization, accept it here to gain access, or decline if it was not meant for you. Switch tabs to review each type of invite.")
261
+ }),
262
+ Y && /* @__PURE__ */ C("div", {
259
263
  className: "mb-4 flex items-center gap-2 rounded-lg border border-[var(--color-status-error-border)] bg-[var(--color-status-error-bgSubtle)] p-3",
260
- children: [/* @__PURE__ */ y(re, {
264
+ children: [/* @__PURE__ */ S(te, {
261
265
  size: 16,
262
266
  className: "shrink-0 text-[var(--color-status-error-text)]"
263
- }), /* @__PURE__ */ y("p", {
267
+ }), /* @__PURE__ */ S("p", {
264
268
  className: "text-sm text-[var(--color-status-error-text)]",
265
269
  children: Y
266
270
  })]
267
271
  }),
268
- M ? Q.length === 0 ? /* @__PURE__ */ y(_, {
272
+ N ? Q.length === 0 ? /* @__PURE__ */ S(y, {
269
273
  treatment: "glass",
274
+ glow: !0,
270
275
  className: "rounded-xl",
271
- children: /* @__PURE__ */ y(v, {
276
+ children: /* @__PURE__ */ S(b, {
272
277
  illustration: "empty-notifications",
273
- title: T("members.myInvites.workspaceEmptyTitle", "No pending workspace invites"),
274
- description: T("members.myInvites.workspaceEmptyDescription", "When someone invites you to a workspace, it will appear here.")
278
+ title: D("members.myInvites.workspaceEmptyTitle", "No pending workspace invites"),
279
+ description: D("members.myInvites.workspaceEmptyDescription", "When someone invites you to a workspace, it will appear here.")
275
280
  })
276
- }) : /* @__PURE__ */ y("div", {
281
+ }) : /* @__PURE__ */ S("div", {
277
282
  className: "space-y-3",
278
283
  children: Q.map((e) => {
279
- let t = d(e), n = u(e), r = ne(e), i = e.invitedById ? ue[e.invitedById] : void 0, a = i?.displayName || i?.email || T("members.myInvites.invitedByFallback", "Someone"), o = X?.inviteId === e.id && X?.action === "accept" && se, s = X?.inviteId === e.id && X?.action === "reject" && le;
280
- return /* @__PURE__ */ y(_, {
284
+ let t = p(e), n = ee(e), r = f(e), i = e.invitedById ? de[e.invitedById] : void 0, a = i?.displayName || i?.email || D("members.myInvites.invitedByFallback", "Someone"), o = X?.inviteId === e.id && X?.action === "accept" && ce, s = X?.inviteId === e.id && X?.action === "reject" && ue;
285
+ return /* @__PURE__ */ S(y, {
281
286
  treatment: "insight",
282
287
  className: "border-border-seam p-5",
283
- children: /* @__PURE__ */ b("div", {
288
+ children: /* @__PURE__ */ C("div", {
284
289
  className: "flex flex-col gap-4 lg:flex-row lg:items-start lg:justify-between",
285
- children: [/* @__PURE__ */ b("div", {
290
+ children: [/* @__PURE__ */ C("div", {
286
291
  className: "min-w-0 space-y-3",
287
292
  children: [
288
- /* @__PURE__ */ b("div", {
293
+ /* @__PURE__ */ C("div", {
289
294
  className: "flex items-start gap-3",
290
- children: [/* @__PURE__ */ y("div", {
295
+ children: [/* @__PURE__ */ S("div", {
291
296
  className: "rounded-lg bg-[var(--color-bg-subtle)] p-2",
292
- children: /* @__PURE__ */ y(ie, {
297
+ children: /* @__PURE__ */ S(ne, {
293
298
  size: 20,
294
299
  className: "text-[var(--color-text-secondary)]"
295
300
  })
296
- }), /* @__PURE__ */ b("div", {
301
+ }), /* @__PURE__ */ C("div", {
297
302
  className: "min-w-0",
298
- children: [/* @__PURE__ */ y("h3", {
303
+ children: [/* @__PURE__ */ S("h3", {
299
304
  className: "font-semibold text-[var(--color-text-primary)] break-words",
300
305
  children: t
301
- }), /* @__PURE__ */ y("p", {
306
+ }), /* @__PURE__ */ S("p", {
302
307
  className: "mt-1 text-sm text-[var(--color-text-secondary)] break-all",
303
308
  children: e.email
304
309
  })]
305
310
  })]
306
311
  }),
307
- /* @__PURE__ */ b("div", {
312
+ /* @__PURE__ */ C("div", {
308
313
  className: "flex flex-wrap items-center gap-2",
309
- children: [/* @__PURE__ */ y(g, {
314
+ children: [/* @__PURE__ */ S(v, {
310
315
  variant: "secondary",
311
316
  children: e.status
312
- }), n.map((t) => /* @__PURE__ */ y(g, {
317
+ }), n.map((t) => /* @__PURE__ */ S(v, {
313
318
  variant: "outline",
314
319
  children: t
315
320
  }, `${e.id}-${t}`))]
316
321
  }),
317
- /* @__PURE__ */ b("dl", {
322
+ /* @__PURE__ */ C("dl", {
318
323
  className: "grid gap-3 text-sm text-[var(--color-text-secondary)] sm:grid-cols-2",
319
324
  children: [
320
- /* @__PURE__ */ b("div", { children: [/* @__PURE__ */ y("dt", {
325
+ /* @__PURE__ */ C("div", { children: [/* @__PURE__ */ S("dt", {
321
326
  className: "font-medium text-[var(--color-text-primary)]",
322
- children: T("members.myInvites.invitedByLabel", "Invited by")
323
- }), /* @__PURE__ */ y("dd", {
327
+ children: D("members.myInvites.invitedByLabel", "Invited by")
328
+ }), /* @__PURE__ */ S("dd", {
324
329
  className: "break-all",
325
- children: i ? /* @__PURE__ */ y(S, {
330
+ children: i ? /* @__PURE__ */ S(ie, {
326
331
  profile: i,
327
332
  variant: "inline",
328
333
  hideIdDrilldown: !0
329
334
  }) : a
330
335
  })] }),
331
- /* @__PURE__ */ b("div", { children: [/* @__PURE__ */ y("dt", {
336
+ /* @__PURE__ */ C("div", { children: [/* @__PURE__ */ S("dt", {
332
337
  className: "font-medium text-[var(--color-text-primary)]",
333
- children: T("members.myInvites.receivedLabel", "Received")
334
- }), /* @__PURE__ */ y("dd", { children: w(e.createdAt) ?? "—" })] }),
335
- /* @__PURE__ */ b("div", { children: [/* @__PURE__ */ y("dt", {
338
+ children: D("members.myInvites.receivedLabel", "Received")
339
+ }), /* @__PURE__ */ S("dd", { children: E(e.createdAt) ?? "—" })] }),
340
+ /* @__PURE__ */ C("div", { children: [/* @__PURE__ */ S("dt", {
336
341
  className: "font-medium text-[var(--color-text-primary)]",
337
- children: T("members.myInvites.expiresLabel", "Expires")
338
- }), /* @__PURE__ */ y("dd", { children: w(e.expiresAt) ?? "—" })] }),
339
- r.length > 0 ? /* @__PURE__ */ b("div", {
342
+ children: D("members.myInvites.expiresLabel", "Expires")
343
+ }), /* @__PURE__ */ S("dd", { children: E(e.expiresAt) ?? "—" })] }),
344
+ r.length > 0 ? /* @__PURE__ */ C("div", {
340
345
  className: "sm:col-span-2",
341
- children: [/* @__PURE__ */ y("dt", {
346
+ children: [/* @__PURE__ */ S("dt", {
342
347
  className: "font-medium text-[var(--color-text-primary)]",
343
- children: T("members.myInvites.projectsLabel", "Projects")
344
- }), /* @__PURE__ */ y("dd", {
348
+ children: D("members.myInvites.projectsLabel", "Projects")
349
+ }), /* @__PURE__ */ S("dd", {
345
350
  className: "mt-1 flex flex-wrap gap-2",
346
- children: r.map((t) => /* @__PURE__ */ y(g, {
351
+ children: r.map((t) => /* @__PURE__ */ S(v, {
347
352
  variant: "outline",
348
353
  children: t
349
354
  }, `${e.id}-${t}`))
@@ -352,47 +357,48 @@ function D({ activeTab: x = "workspace" }) {
352
357
  ]
353
358
  })
354
359
  ]
355
- }), /* @__PURE__ */ b("div", {
360
+ }), /* @__PURE__ */ C("div", {
356
361
  className: "flex flex-wrap items-center gap-2 shrink-0",
357
- children: [/* @__PURE__ */ b("button", {
362
+ children: [/* @__PURE__ */ C("button", {
358
363
  type: "button",
359
- onClick: () => void pe(e.id),
364
+ onClick: () => void me(e.id),
360
365
  disabled: o || s,
361
366
  className: "inline-flex items-center gap-1.5 rounded-lg bg-[var(--color-status-success-bg)] px-4 py-2 text-sm font-medium text-[var(--color-text-inverse)] transition-all duration-200 hover:opacity-90 disabled:cursor-not-allowed disabled:opacity-50",
362
- children: [o ? /* @__PURE__ */ y(m, {
367
+ children: [o ? /* @__PURE__ */ S(g, {
363
368
  size: 14,
364
369
  className: "animate-spin"
365
- }) : null, T("members.myInvites.accept", "Accept")]
366
- }), /* @__PURE__ */ b("button", {
370
+ }) : null, D("members.myInvites.accept", "Accept")]
371
+ }), /* @__PURE__ */ C("button", {
367
372
  type: "button",
368
- onClick: () => void me(e.id),
373
+ onClick: () => void he(e.id),
369
374
  disabled: o || s,
370
375
  className: "inline-flex items-center gap-1.5 rounded-lg border border-[var(--color-border-default)] bg-transparent px-4 py-2 text-sm font-medium text-[var(--color-text-primary)] transition-all duration-200 hover:border-[var(--color-status-error-border)] hover:bg-[var(--color-status-error-bgSubtle)] hover:text-[var(--color-status-error-text)] disabled:cursor-not-allowed disabled:opacity-50",
371
- children: [s ? /* @__PURE__ */ y(m, {
376
+ children: [s ? /* @__PURE__ */ S(g, {
372
377
  size: 14,
373
378
  className: "animate-spin"
374
- }) : null, T("members.myInvites.decline", "Decline")]
379
+ }) : null, D("members.myInvites.decline", "Decline")]
375
380
  })]
376
381
  })]
377
382
  })
378
383
  }, e.id);
379
384
  })
380
- }) : N.length === 0 ? /* @__PURE__ */ y(_, {
385
+ }) : P.length === 0 ? /* @__PURE__ */ S(y, {
381
386
  treatment: "glass",
387
+ glow: !0,
382
388
  className: "rounded-xl",
383
- children: /* @__PURE__ */ y(v, {
389
+ children: /* @__PURE__ */ S(b, {
384
390
  illustration: "empty-notifications",
385
- title: T("members.myInvites.emptyTitle", "No pending invites"),
386
- description: T("members.myInvites.emptyDescription", "When someone invites you to an organization, it will appear here.")
391
+ title: D("members.myInvites.emptyTitle", "No pending invites"),
392
+ description: D("members.myInvites.emptyDescription", "When someone invites you to an organization, it will appear here.")
387
393
  })
388
- }) : /* @__PURE__ */ y("div", {
394
+ }) : /* @__PURE__ */ S("div", {
389
395
  className: "space-y-3",
390
- children: N.map((e) => /* @__PURE__ */ y(te, {
396
+ children: P.map((e) => /* @__PURE__ */ S(d, {
391
397
  invite: e,
392
- onAccept: de,
393
- onReject: fe,
394
- accepting: U,
395
- rejecting: G
398
+ onAccept: fe,
399
+ onReject: pe,
400
+ accepting: W,
401
+ rejecting: K
396
402
  }, e.id))
397
403
  })
398
404
  ]
@@ -400,6 +406,6 @@ function D({ activeTab: x = "workspace" }) {
400
406
  });
401
407
  }
402
408
  //#endregion
403
- export { D as MyInvitesPage };
409
+ export { k as MyInvitesPage };
404
410
 
405
411
  //# sourceMappingURL=MyInvitesPage.js.map