@burdenoff/microfe-eventfullymanaged 2026.704.4 → 2026.704.6

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.
@@ -1,16 +1,16 @@
1
1
  import { useEventfullyManaged as e } from "../../context/EventfullyManagedContext.js";
2
2
  import { notify as t } from "../../lib/toast.js";
3
- import { useDeleteTicketTypeMutation as n, useEventQuery as r, useEventSessionsQuery as i, useSpeakersQuery as a, useTicketTypesQuery as o } from "../../api/eventApi.js";
4
- import { ActionMenu as s } from "../../components/ActionMenu.js";
5
- import { Pagination as c, usePagination as l } from "../../components/Pagination.js";
6
- import { formatDateTime as u } from "./eventFormUtils.js";
7
- import { useMemo as d, useState as f } from "react";
8
- import { useParams as p } from "react-router-dom";
9
- import { jsx as m, jsxs as h } from "react/jsx-runtime";
10
- import { ArrowLeft as g, CalendarClock as _, Edit as v, MapPin as y, Plus as b, Ticket as x, Users as S } from "lucide-react";
11
- import { Badge as C, Button as w, GlassCard as T, IllustratedEmptyState as E, Tabs as D, TabsContent as O, TabsList as k, TabsTrigger as A } from "@burdenoff/fe-libs/ui";
3
+ import { useDeleteEventSessionMutation as n, useDeleteSpeakerMutation as r, useDeleteTicketTypeMutation as i, useEventQuery as a, useEventSessionsQuery as o, useSpeakersQuery as s, useTicketTypesQuery as c } from "../../api/eventApi.js";
4
+ import { ActionMenu as l } from "../../components/ActionMenu.js";
5
+ import { Pagination as u, usePagination as d } from "../../components/Pagination.js";
6
+ import { formatDateTime as f } from "./eventFormUtils.js";
7
+ import { useMemo as p, useState as m } from "react";
8
+ import { useParams as h } from "react-router-dom";
9
+ import { jsx as g, jsxs as _ } from "react/jsx-runtime";
10
+ import { ArrowLeft as v, CalendarClock as y, Edit as b, MapPin as x, Plus as S, Ticket as C, Users as w } from "lucide-react";
11
+ import { Badge as T, Button as E, GlassCard as D, IllustratedEmptyState as O, Tabs as k, TabsContent as A, TabsList as j, TabsTrigger as M } from "@burdenoff/fe-libs/ui";
12
12
  //#region src/eventfullymanaged/pages/events/EventDetailPage.tsx
13
- function j(e) {
13
+ function N(e) {
14
14
  let t = e.toLowerCase();
15
15
  return [
16
16
  "active",
@@ -32,195 +32,211 @@ function j(e) {
32
32
  "scheduled"
33
33
  ].includes(t) ? "info" : "secondary";
34
34
  }
35
- function M({ eventId: t }) {
36
- let { navigate: n } = e(), r = l(), { data: a, loading: o } = i({
37
- eventId: t,
38
- limit: r.limit,
39
- offset: r.offset
40
- }), d = a?.eventSessions?.total ?? 0, f = a?.eventSessions?.items ?? [];
41
- return /* @__PURE__ */ h("div", {
35
+ function P({ eventId: r }) {
36
+ let { navigate: i } = e(), a = d(), { data: s, loading: c, refetch: p } = o({
37
+ eventId: r,
38
+ limit: a.limit,
39
+ offset: a.offset
40
+ }), [m] = n(), h = s?.eventSessions?.total ?? 0, v = s?.eventSessions?.items ?? [], y = async (e) => {
41
+ let n = await m({ variables: { id: e.id } });
42
+ if (n.error) throw t.error("Could not delete session", n.error.message), n.error;
43
+ if (!n.data?.deleteEventSession) throw t.error("Could not delete session", "The server did not confirm the change."), Error("delete-unconfirmed");
44
+ t.success("Session deleted", e.title), await p();
45
+ };
46
+ return /* @__PURE__ */ _("div", {
42
47
  className: "space-y-4",
43
48
  children: [
44
- /* @__PURE__ */ h("div", {
49
+ /* @__PURE__ */ _("div", {
45
50
  className: "flex items-center justify-between gap-3",
46
- children: [/* @__PURE__ */ m("h2", {
51
+ children: [/* @__PURE__ */ g("h2", {
47
52
  className: "text-lg font-semibold text-text-primary",
48
53
  children: "Agenda & Sessions"
49
- }), /* @__PURE__ */ h(w, {
54
+ }), /* @__PURE__ */ _(E, {
50
55
  type: "button",
51
56
  size: "sm",
52
- onClick: () => n(`/events/${t}/sessions/create`),
53
- children: [/* @__PURE__ */ m(b, { className: "h-4 w-4" }), "New Session"]
57
+ onClick: () => i(`/events/${r}/sessions/create`),
58
+ children: [/* @__PURE__ */ g(S, { className: "h-4 w-4" }), "New Session"]
54
59
  })]
55
60
  }),
56
- o ? /* @__PURE__ */ m("p", {
61
+ c ? /* @__PURE__ */ g("p", {
57
62
  className: "text-sm text-text-secondary",
58
63
  children: "Loading sessions…"
59
- }) : f.length === 0 ? /* @__PURE__ */ m(E, {
64
+ }) : v.length === 0 ? /* @__PURE__ */ g(O, {
60
65
  illustration: "empty-data",
61
66
  title: "No sessions yet.",
62
67
  description: "Build the agenda by adding your first session.",
63
68
  className: "py-8"
64
- }) : /* @__PURE__ */ m("ul", {
69
+ }) : /* @__PURE__ */ g("ul", {
65
70
  className: "space-y-2.5",
66
- children: f.map((e) => /* @__PURE__ */ m("li", {
71
+ children: v.map((e) => /* @__PURE__ */ g("li", {
67
72
  className: "rounded-card border border-border-seam bg-bg-surface p-3 transition-[box-shadow,border-color] duration-200 hover:border-border-strong hover:shadow-elevation-1",
68
- children: /* @__PURE__ */ h("div", {
73
+ children: /* @__PURE__ */ _("div", {
69
74
  className: "flex items-center justify-between gap-3",
70
- children: [/* @__PURE__ */ h("div", {
75
+ children: [/* @__PURE__ */ _("div", {
71
76
  className: "min-w-0",
72
- children: [/* @__PURE__ */ m("p", {
77
+ children: [/* @__PURE__ */ g("p", {
73
78
  className: "truncate font-medium text-text-primary",
74
79
  children: e.title
75
- }), /* @__PURE__ */ m("p", {
80
+ }), /* @__PURE__ */ g("p", {
76
81
  className: "mt-0.5 truncate text-sm text-text-secondary",
77
- children: [e.track, e.startsAt ? u(e.startsAt) : void 0].filter(Boolean).join(" • ")
82
+ children: [e.track, e.startsAt ? f(e.startsAt) : void 0].filter(Boolean).join(" • ")
78
83
  })]
79
- }), /* @__PURE__ */ h("div", {
84
+ }), /* @__PURE__ */ _("div", {
80
85
  className: "flex shrink-0 items-center gap-2",
81
- children: [/* @__PURE__ */ m(C, {
82
- variant: j(e.status),
86
+ children: [/* @__PURE__ */ g(T, {
87
+ variant: N(e.status),
83
88
  className: "uppercase",
84
89
  children: e.status
85
- }), /* @__PURE__ */ m(s, {
90
+ }), /* @__PURE__ */ g(l, {
86
91
  ariaLabel: `Session actions for ${e.title}`,
87
- onEdit: () => n(`/events/${t}/sessions/${e.id}/edit`)
92
+ entityName: e.title,
93
+ deleteLabel: "Delete session",
94
+ onEdit: () => i(`/events/${r}/sessions/${e.id}/edit`),
95
+ onDelete: () => y(e)
88
96
  })]
89
97
  })]
90
98
  })
91
99
  }, e.id))
92
100
  }),
93
- /* @__PURE__ */ m(c, {
94
- offset: r.offset,
95
- limit: r.limit,
96
- loadedCount: f.length,
97
- total: d,
98
- onPrev: r.prevPage,
99
- onNext: r.nextPage,
101
+ /* @__PURE__ */ g(u, {
102
+ offset: a.offset,
103
+ limit: a.limit,
104
+ loadedCount: v.length,
105
+ total: h,
106
+ onPrev: a.prevPage,
107
+ onNext: a.nextPage,
100
108
  itemLabel: "sessions",
101
- loading: o
109
+ loading: c
102
110
  })
103
111
  ]
104
112
  });
105
113
  }
106
- function N() {
107
- let { navigate: t } = e(), n = l(), { data: r, loading: i } = a({
108
- limit: n.limit,
109
- offset: n.offset
110
- }), o = r?.speakers?.total ?? 0, u = r?.speakers?.items ?? [];
111
- return /* @__PURE__ */ h("div", {
114
+ function F() {
115
+ let { navigate: n } = e(), i = d(), { data: a, loading: o, refetch: c } = s({
116
+ limit: i.limit,
117
+ offset: i.offset
118
+ }), [f] = r(), p = a?.speakers?.total ?? 0, m = a?.speakers?.items ?? [], h = async (e) => {
119
+ let n = await f({ variables: { id: e.id } });
120
+ if (n.error) throw t.error("Could not delete speaker", n.error.message), n.error;
121
+ if (!n.data?.deleteSpeaker) throw t.error("Could not delete speaker", "The server did not confirm the change."), Error("delete-unconfirmed");
122
+ t.success("Speaker deleted", e.fullName), await c();
123
+ };
124
+ return /* @__PURE__ */ _("div", {
112
125
  className: "space-y-4",
113
126
  children: [
114
- /* @__PURE__ */ h("div", {
127
+ /* @__PURE__ */ _("div", {
115
128
  className: "flex items-center justify-between gap-3",
116
- children: [/* @__PURE__ */ m("h2", {
129
+ children: [/* @__PURE__ */ g("h2", {
117
130
  className: "text-lg font-semibold text-text-primary",
118
131
  children: "Speakers"
119
- }), /* @__PURE__ */ h("div", {
132
+ }), /* @__PURE__ */ _("div", {
120
133
  className: "flex items-center gap-2",
121
- children: [/* @__PURE__ */ m(w, {
134
+ children: [/* @__PURE__ */ g(E, {
122
135
  type: "button",
123
136
  variant: "outline",
124
137
  size: "sm",
125
- onClick: () => t("/speakers"),
138
+ onClick: () => n("/speakers"),
126
139
  children: "Manage speakers"
127
- }), /* @__PURE__ */ h(w, {
140
+ }), /* @__PURE__ */ _(E, {
128
141
  type: "button",
129
142
  size: "sm",
130
- onClick: () => t("/speakers/create"),
131
- children: [/* @__PURE__ */ m(b, { className: "h-4 w-4" }), "New Speaker"]
143
+ onClick: () => n("/speakers/create"),
144
+ children: [/* @__PURE__ */ g(S, { className: "h-4 w-4" }), "New Speaker"]
132
145
  })]
133
146
  })]
134
147
  }),
135
- i ? /* @__PURE__ */ m("p", {
148
+ o ? /* @__PURE__ */ g("p", {
136
149
  className: "text-sm text-text-secondary",
137
150
  children: "Loading speakers…"
138
- }) : u.length === 0 ? /* @__PURE__ */ m(E, {
151
+ }) : m.length === 0 ? /* @__PURE__ */ g(O, {
139
152
  illustration: "empty-people",
140
153
  title: "No speakers yet.",
141
154
  description: "Add speakers so you can assign them to sessions.",
142
155
  className: "py-8"
143
- }) : /* @__PURE__ */ m("ul", {
156
+ }) : /* @__PURE__ */ g("ul", {
144
157
  className: "space-y-2.5",
145
- children: u.map((e) => /* @__PURE__ */ m("li", {
158
+ children: m.map((e) => /* @__PURE__ */ g("li", {
146
159
  className: "rounded-card border border-border-seam bg-bg-surface p-3 transition-[box-shadow,border-color] duration-200 hover:border-border-strong hover:shadow-elevation-1",
147
- children: /* @__PURE__ */ h("div", {
160
+ children: /* @__PURE__ */ _("div", {
148
161
  className: "flex items-center justify-between gap-3",
149
- children: [/* @__PURE__ */ h("div", {
162
+ children: [/* @__PURE__ */ _("div", {
150
163
  className: "min-w-0",
151
- children: [/* @__PURE__ */ m("p", {
164
+ children: [/* @__PURE__ */ g("p", {
152
165
  className: "truncate font-medium text-text-primary",
153
166
  children: e.fullName
154
- }), /* @__PURE__ */ m("p", {
167
+ }), /* @__PURE__ */ g("p", {
155
168
  className: "mt-0.5 truncate text-sm text-text-secondary",
156
169
  children: [e.title, e.organization].filter(Boolean).join(" • ") || "Speaker"
157
170
  })]
158
- }), /* @__PURE__ */ m(s, {
171
+ }), /* @__PURE__ */ g(l, {
159
172
  ariaLabel: `Speaker actions for ${e.fullName}`,
160
- onEdit: () => t(`/speakers/${e.id}/edit`)
173
+ entityName: e.fullName,
174
+ deleteLabel: "Delete speaker",
175
+ onEdit: () => n(`/speakers/${e.id}/edit`),
176
+ onDelete: () => h(e)
161
177
  })]
162
178
  })
163
179
  }, e.id))
164
180
  }),
165
- /* @__PURE__ */ m(c, {
166
- offset: n.offset,
167
- limit: n.limit,
168
- loadedCount: u.length,
169
- total: o,
170
- onPrev: n.prevPage,
171
- onNext: n.nextPage,
181
+ /* @__PURE__ */ g(u, {
182
+ offset: i.offset,
183
+ limit: i.limit,
184
+ loadedCount: m.length,
185
+ total: p,
186
+ onPrev: i.prevPage,
187
+ onNext: i.nextPage,
172
188
  itemLabel: "speakers",
173
- loading: i
189
+ loading: o
174
190
  })
175
191
  ]
176
192
  });
177
193
  }
178
- function P({ eventId: r }) {
179
- let { navigate: i } = e(), a = l(), { data: u, loading: d, refetch: f } = o({
180
- eventId: r,
194
+ function I({ eventId: n }) {
195
+ let { navigate: r } = e(), a = d(), { data: o, loading: s, refetch: f } = c({
196
+ eventId: n,
181
197
  limit: a.limit,
182
198
  offset: a.offset
183
- }), [p] = n(), g = u?.ticketTypes?.total ?? 0, _ = u?.ticketTypes?.items ?? [], v = async (e) => {
199
+ }), [p] = i(), m = o?.ticketTypes?.total ?? 0, h = o?.ticketTypes?.items ?? [], v = async (e) => {
184
200
  let n = await p({ variables: { id: e.id } });
185
201
  if (n.error) throw t.error("Could not delete ticket type", n.error.message), n.error;
186
202
  if (!n.data?.deleteTicketType) throw t.error("Could not delete ticket type", "The server did not confirm the change."), Error("delete-unconfirmed");
187
203
  t.success("Ticket type deleted"), await f();
188
204
  };
189
- return /* @__PURE__ */ h("div", {
205
+ return /* @__PURE__ */ _("div", {
190
206
  className: "space-y-4",
191
207
  children: [
192
- /* @__PURE__ */ h("div", {
208
+ /* @__PURE__ */ _("div", {
193
209
  className: "flex items-center justify-between gap-3",
194
- children: [/* @__PURE__ */ m("h2", {
210
+ children: [/* @__PURE__ */ g("h2", {
195
211
  className: "text-lg font-semibold text-text-primary",
196
212
  children: "Ticket Types"
197
- }), /* @__PURE__ */ h(w, {
213
+ }), /* @__PURE__ */ _(E, {
198
214
  type: "button",
199
215
  size: "sm",
200
- onClick: () => i(`/events/${r}/tickets/create`),
201
- children: [/* @__PURE__ */ m(b, { className: "h-4 w-4" }), "New Ticket Type"]
216
+ onClick: () => r(`/events/${n}/tickets/create`),
217
+ children: [/* @__PURE__ */ g(S, { className: "h-4 w-4" }), "New Ticket Type"]
202
218
  })]
203
219
  }),
204
- d ? /* @__PURE__ */ m("p", {
220
+ s ? /* @__PURE__ */ g("p", {
205
221
  className: "text-sm text-text-secondary",
206
222
  children: "Loading ticket types…"
207
- }) : _.length === 0 ? /* @__PURE__ */ m(E, {
223
+ }) : h.length === 0 ? /* @__PURE__ */ g(O, {
208
224
  illustration: "empty-data",
209
225
  title: "No ticket types yet.",
210
226
  description: "Add a ticket type so attendees can register.",
211
227
  className: "py-8"
212
- }) : /* @__PURE__ */ m("ul", {
228
+ }) : /* @__PURE__ */ g("ul", {
213
229
  className: "space-y-2.5",
214
- children: _.map((e) => /* @__PURE__ */ m("li", {
230
+ children: h.map((e) => /* @__PURE__ */ g("li", {
215
231
  className: "rounded-card border border-border-seam bg-bg-surface p-3 transition-[box-shadow,border-color] duration-200 hover:border-border-strong hover:shadow-elevation-1",
216
- children: /* @__PURE__ */ h("div", {
232
+ children: /* @__PURE__ */ _("div", {
217
233
  className: "flex items-center justify-between gap-3",
218
- children: [/* @__PURE__ */ h("div", {
234
+ children: [/* @__PURE__ */ _("div", {
219
235
  className: "min-w-0",
220
- children: [/* @__PURE__ */ m("p", {
236
+ children: [/* @__PURE__ */ g("p", {
221
237
  className: "truncate font-medium text-text-primary",
222
238
  children: e.name
223
- }), /* @__PURE__ */ h("p", {
239
+ }), /* @__PURE__ */ _("p", {
224
240
  className: "mt-0.5 truncate text-sm text-text-secondary",
225
241
  children: [
226
242
  e.price,
@@ -231,169 +247,169 @@ function P({ eventId: r }) {
231
247
  e.capacity == null ? "" : ` / ${e.capacity}`
232
248
  ]
233
249
  })]
234
- }), /* @__PURE__ */ h("div", {
250
+ }), /* @__PURE__ */ _("div", {
235
251
  className: "flex shrink-0 items-center gap-2",
236
- children: [/* @__PURE__ */ m(C, {
252
+ children: [/* @__PURE__ */ g(T, {
237
253
  variant: e.isActive ? "success" : "warning",
238
254
  className: "uppercase",
239
255
  children: e.isActive ? "Active" : "Inactive"
240
- }), /* @__PURE__ */ m(s, {
256
+ }), /* @__PURE__ */ g(l, {
241
257
  ariaLabel: `Ticket actions for ${e.name}`,
242
258
  entityName: e.name,
243
259
  deleteLabel: "Delete ticket type",
244
- onEdit: () => i(`/events/${r}/tickets/${e.id}/edit`),
260
+ onEdit: () => r(`/events/${n}/tickets/${e.id}/edit`),
245
261
  onDelete: () => v(e)
246
262
  })]
247
263
  })]
248
264
  })
249
265
  }, e.id))
250
266
  }),
251
- /* @__PURE__ */ m(c, {
267
+ /* @__PURE__ */ g(u, {
252
268
  offset: a.offset,
253
269
  limit: a.limit,
254
- loadedCount: _.length,
255
- total: g,
270
+ loadedCount: h.length,
271
+ total: m,
256
272
  onPrev: a.prevPage,
257
273
  onNext: a.nextPage,
258
274
  itemLabel: "ticket types",
259
- loading: d
275
+ loading: s
260
276
  })
261
277
  ]
262
278
  });
263
279
  }
264
- function F() {
265
- let { id: t = "" } = p(), { navigate: n } = e(), { data: i, loading: a } = r(t), [o, s] = f("overview"), c = i?.event ?? null, l = d(() => {
280
+ function L() {
281
+ let { id: t = "" } = h(), { navigate: n } = e(), { data: r, loading: i } = a(t), [o, s] = m("overview"), c = r?.event ?? null, l = p(() => {
266
282
  let e = c?.metadata ?? {};
267
283
  return typeof e.venueId == "string" ? e.venueId : "";
268
284
  }, [c]);
269
- return a ? /* @__PURE__ */ m("div", {
285
+ return i ? /* @__PURE__ */ g("div", {
270
286
  className: "p-6 text-sm text-text-secondary",
271
287
  children: "Loading event…"
272
- }) : c ? /* @__PURE__ */ h("div", {
288
+ }) : c ? /* @__PURE__ */ _("div", {
273
289
  className: "space-y-6 p-6",
274
- children: [/* @__PURE__ */ h("div", {
290
+ children: [/* @__PURE__ */ _("div", {
275
291
  className: "flex flex-col gap-4 sm:flex-row sm:items-start sm:justify-between",
276
- children: [/* @__PURE__ */ h("div", {
292
+ children: [/* @__PURE__ */ _("div", {
277
293
  className: "space-y-3",
278
- children: [/* @__PURE__ */ h(w, {
294
+ children: [/* @__PURE__ */ _(E, {
279
295
  type: "button",
280
296
  variant: "ghost",
281
297
  size: "sm",
282
298
  onClick: () => n("/events"),
283
- children: [/* @__PURE__ */ m(g, { className: "h-4 w-4" }), "Back to Events"]
284
- }), /* @__PURE__ */ h("div", { children: [/* @__PURE__ */ h("div", {
299
+ children: [/* @__PURE__ */ g(v, { className: "h-4 w-4" }), "Back to Events"]
300
+ }), /* @__PURE__ */ _("div", { children: [/* @__PURE__ */ _("div", {
285
301
  className: "flex flex-wrap items-center gap-3",
286
- children: [/* @__PURE__ */ m("h1", {
302
+ children: [/* @__PURE__ */ g("h1", {
287
303
  className: "text-2xl font-bold text-text-primary",
288
304
  children: c.name
289
- }), /* @__PURE__ */ m(C, {
290
- variant: j(c.status),
305
+ }), /* @__PURE__ */ g(T, {
306
+ variant: N(c.status),
291
307
  className: "uppercase",
292
308
  children: c.status
293
309
  })]
294
- }), /* @__PURE__ */ h("p", {
310
+ }), /* @__PURE__ */ _("p", {
295
311
  className: "mt-1 flex items-center gap-2 text-sm text-text-secondary",
296
312
  children: [
297
- /* @__PURE__ */ m(_, { className: "h-4 w-4" }),
298
- u(c.startAt),
313
+ /* @__PURE__ */ g(y, { className: "h-4 w-4" }),
314
+ f(c.startAt),
299
315
  " — ",
300
- u(c.endAt)
316
+ f(c.endAt)
301
317
  ]
302
318
  })] })]
303
- }), /* @__PURE__ */ h(w, {
319
+ }), /* @__PURE__ */ _(E, {
304
320
  type: "button",
305
321
  onClick: () => n(`/events/${t}/edit`),
306
- children: [/* @__PURE__ */ m(v, { className: "h-4 w-4" }), "Edit Event"]
322
+ children: [/* @__PURE__ */ g(b, { className: "h-4 w-4" }), "Edit Event"]
307
323
  })]
308
- }), /* @__PURE__ */ h(D, {
324
+ }), /* @__PURE__ */ _(k, {
309
325
  value: o,
310
326
  onValueChange: s,
311
327
  children: [
312
- /* @__PURE__ */ h(k, { children: [
313
- /* @__PURE__ */ m(A, {
328
+ /* @__PURE__ */ _(j, { children: [
329
+ /* @__PURE__ */ g(M, {
314
330
  value: "overview",
315
331
  children: "Overview"
316
332
  }),
317
- /* @__PURE__ */ m(A, {
333
+ /* @__PURE__ */ g(M, {
318
334
  value: "sessions",
319
335
  children: "Sessions"
320
336
  }),
321
- /* @__PURE__ */ m(A, {
337
+ /* @__PURE__ */ g(M, {
322
338
  value: "speakers",
323
339
  children: "Speakers"
324
340
  }),
325
- /* @__PURE__ */ m(A, {
341
+ /* @__PURE__ */ g(M, {
326
342
  value: "tickets",
327
343
  children: "Tickets"
328
344
  })
329
345
  ] }),
330
- /* @__PURE__ */ h(O, {
346
+ /* @__PURE__ */ _(A, {
331
347
  value: "overview",
332
348
  className: "mt-4",
333
- children: [/* @__PURE__ */ h("div", {
349
+ children: [/* @__PURE__ */ _("div", {
334
350
  className: "grid grid-cols-1 gap-4 lg:grid-cols-3",
335
351
  children: [
336
- /* @__PURE__ */ h(T, {
352
+ /* @__PURE__ */ _(D, {
337
353
  treatment: "metric",
338
354
  className: "p-4",
339
- children: [/* @__PURE__ */ h("div", {
355
+ children: [/* @__PURE__ */ _("div", {
340
356
  className: "mb-2 flex items-center gap-2 text-sm font-medium text-text-primary",
341
- children: [/* @__PURE__ */ m(x, { className: "h-4 w-4 text-action-primary-bg" }), "Type"]
342
- }), /* @__PURE__ */ m("p", {
357
+ children: [/* @__PURE__ */ g(C, { className: "h-4 w-4 text-action-primary-bg" }), "Type"]
358
+ }), /* @__PURE__ */ g("p", {
343
359
  className: "text-sm uppercase text-text-secondary",
344
360
  children: c.type
345
361
  })]
346
362
  }),
347
- /* @__PURE__ */ h(T, {
363
+ /* @__PURE__ */ _(D, {
348
364
  treatment: "glass",
349
365
  glow: !0,
350
366
  className: "p-4",
351
- children: [/* @__PURE__ */ h("div", {
367
+ children: [/* @__PURE__ */ _("div", {
352
368
  className: "mb-2 flex items-center gap-2 text-sm font-medium text-text-primary",
353
- children: [/* @__PURE__ */ m(S, { className: "h-4 w-4 text-action-primary-bg" }), "Capacity"]
354
- }), /* @__PURE__ */ h("p", {
369
+ children: [/* @__PURE__ */ g(w, { className: "h-4 w-4 text-action-primary-bg" }), "Capacity"]
370
+ }), /* @__PURE__ */ _("p", {
355
371
  className: "text-sm tabular-nums text-text-secondary",
356
372
  children: [c.capacity ?? 0, " attendees"]
357
373
  })]
358
374
  }),
359
- /* @__PURE__ */ h(T, {
375
+ /* @__PURE__ */ _(D, {
360
376
  treatment: "metric",
361
377
  className: "p-4",
362
- children: [/* @__PURE__ */ h("div", {
378
+ children: [/* @__PURE__ */ _("div", {
363
379
  className: "mb-2 flex items-center gap-2 text-sm font-medium text-text-primary",
364
- children: [/* @__PURE__ */ m(y, { className: "h-4 w-4 text-action-primary-bg" }), "Timezone"]
365
- }), /* @__PURE__ */ m("p", {
380
+ children: [/* @__PURE__ */ g(x, { className: "h-4 w-4 text-action-primary-bg" }), "Timezone"]
381
+ }), /* @__PURE__ */ g("p", {
366
382
  className: "text-sm text-text-secondary",
367
383
  children: c.timezone
368
384
  })]
369
385
  })
370
386
  ]
371
- }), /* @__PURE__ */ h(T, {
387
+ }), /* @__PURE__ */ _(D, {
372
388
  treatment: "plain",
373
389
  className: "mt-4 border-border-seam p-5",
374
390
  children: [
375
- /* @__PURE__ */ m("h2", {
391
+ /* @__PURE__ */ g("h2", {
376
392
  className: "text-lg font-semibold text-text-primary",
377
393
  children: "About"
378
394
  }),
379
- /* @__PURE__ */ m("p", {
395
+ /* @__PURE__ */ g("p", {
380
396
  className: "mt-2 text-sm text-text-secondary",
381
397
  children: c.description?.trim() ? c.description : "No description provided."
382
398
  }),
383
- /* @__PURE__ */ h("dl", {
399
+ /* @__PURE__ */ _("dl", {
384
400
  className: "mt-4 grid grid-cols-1 gap-3 text-sm sm:grid-cols-2",
385
- children: [/* @__PURE__ */ h("div", { children: [/* @__PURE__ */ m("dt", {
401
+ children: [/* @__PURE__ */ _("div", { children: [/* @__PURE__ */ g("dt", {
386
402
  className: "text-text-muted",
387
403
  children: "Visibility"
388
- }), /* @__PURE__ */ m("dd", {
404
+ }), /* @__PURE__ */ g("dd", {
389
405
  className: "capitalize text-text-primary",
390
406
  children: c.visibility
391
- })] }), /* @__PURE__ */ h("div", { children: [/* @__PURE__ */ m("dt", {
407
+ })] }), /* @__PURE__ */ _("div", { children: [/* @__PURE__ */ g("dt", {
392
408
  className: "text-text-muted",
393
409
  children: "Venue"
394
- }), /* @__PURE__ */ m("dd", {
410
+ }), /* @__PURE__ */ g("dd", {
395
411
  className: "text-text-primary",
396
- children: l ? /* @__PURE__ */ m(w, {
412
+ children: l ? /* @__PURE__ */ g(E, {
397
413
  type: "button",
398
414
  variant: "link",
399
415
  size: "sm",
@@ -403,48 +419,48 @@ function F() {
403
419
  }) : "No venue assigned"
404
420
  })] })]
405
421
  }),
406
- /* @__PURE__ */ m("div", {
422
+ /* @__PURE__ */ g("div", {
407
423
  className: "mt-4",
408
- children: /* @__PURE__ */ h(w, {
424
+ children: /* @__PURE__ */ _(E, {
409
425
  type: "button",
410
426
  variant: "outline",
411
427
  size: "sm",
412
428
  onClick: () => n(`/events/${t}/edit`),
413
- children: [/* @__PURE__ */ m(v, { className: "h-4 w-4" }), "Edit event details"]
429
+ children: [/* @__PURE__ */ g(b, { className: "h-4 w-4" }), "Edit event details"]
414
430
  })
415
431
  })
416
432
  ]
417
433
  })]
418
434
  }),
419
- /* @__PURE__ */ m(O, {
435
+ /* @__PURE__ */ g(A, {
420
436
  value: "sessions",
421
437
  className: "mt-4",
422
- children: /* @__PURE__ */ m(M, { eventId: t })
438
+ children: /* @__PURE__ */ g(P, { eventId: t })
423
439
  }),
424
- /* @__PURE__ */ m(O, {
440
+ /* @__PURE__ */ g(A, {
425
441
  value: "speakers",
426
442
  className: "mt-4",
427
- children: /* @__PURE__ */ m(N, {})
443
+ children: /* @__PURE__ */ g(F, {})
428
444
  }),
429
- /* @__PURE__ */ m(O, {
445
+ /* @__PURE__ */ g(A, {
430
446
  value: "tickets",
431
447
  className: "mt-4",
432
- children: /* @__PURE__ */ m(P, { eventId: t })
448
+ children: /* @__PURE__ */ g(I, { eventId: t })
433
449
  })
434
450
  ]
435
451
  })]
436
- }) : /* @__PURE__ */ h("div", {
452
+ }) : /* @__PURE__ */ _("div", {
437
453
  className: "space-y-4 p-6",
438
- children: [/* @__PURE__ */ h(w, {
454
+ children: [/* @__PURE__ */ _(E, {
439
455
  type: "button",
440
456
  variant: "ghost",
441
457
  size: "sm",
442
458
  onClick: () => n("/events"),
443
- children: [/* @__PURE__ */ m(g, { className: "h-4 w-4" }), "Back to Events"]
444
- }), /* @__PURE__ */ m(T, {
459
+ children: [/* @__PURE__ */ g(v, { className: "h-4 w-4" }), "Back to Events"]
460
+ }), /* @__PURE__ */ g(D, {
445
461
  treatment: "plain",
446
462
  className: "border-border-seam",
447
- children: /* @__PURE__ */ m(E, {
463
+ children: /* @__PURE__ */ g(O, {
448
464
  illustration: "empty-search",
449
465
  title: "Event not found.",
450
466
  description: "This event may have been removed or is outside your current scope."
@@ -453,6 +469,6 @@ function F() {
453
469
  });
454
470
  }
455
471
  //#endregion
456
- export { F as default };
472
+ export { L as default };
457
473
 
458
474
  //# sourceMappingURL=EventDetailPage.js.map