@burdenoff/microfe-eventfullymanaged 2026.827.1 → 2026.830.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.
- package/dist/eventfullymanaged/EventfullyManagedRoot.d.ts.map +1 -1
- package/dist/eventfullymanaged/EventfullyManagedRoot.js +31 -19
- package/dist/eventfullymanaged/EventfullyManagedRoot.js.map +1 -1
- package/dist/eventfullymanaged/hooks/index.d.ts +1 -0
- package/dist/eventfullymanaged/hooks/index.d.ts.map +1 -1
- package/dist/eventfullymanaged/hooks/index.js +3 -0
- package/dist/eventfullymanaged/hooks/useEventDelete.d.ts +19 -0
- package/dist/eventfullymanaged/hooks/useEventDelete.d.ts.map +1 -0
- package/dist/eventfullymanaged/hooks/useEventDelete.js +16 -0
- package/dist/eventfullymanaged/hooks/useEventDelete.js.map +1 -0
- package/dist/eventfullymanaged/pages/dashboard/DashboardPage.d.ts.map +1 -1
- package/dist/eventfullymanaged/pages/dashboard/DashboardPage.js +104 -107
- package/dist/eventfullymanaged/pages/dashboard/DashboardPage.js.map +1 -1
- package/dist/eventfullymanaged/pages/events/EventDetailPage.d.ts.map +1 -1
- package/dist/eventfullymanaged/pages/events/EventDetailPage.js +263 -250
- package/dist/eventfullymanaged/pages/events/EventDetailPage.js.map +1 -1
- package/dist/eventfullymanaged/pages/modules/CommunicationPage.js +77 -77
- package/dist/eventfullymanaged/pages/modules/EventsPage.d.ts.map +1 -1
- package/dist/eventfullymanaged/pages/modules/EventsPage.js +118 -116
- package/dist/eventfullymanaged/pages/modules/EventsPage.js.map +1 -1
- package/dist/eventfullymanaged/pages/venues/VenueFormPage.js +56 -56
- package/dist/eventfullymanaged/store/eventfullyManagedStore.js +15 -0
- package/dist/eventfullymanaged/store/eventfullyManagedStore.js.map +1 -0
- package/dist/shared/hooks/index.d.ts +2 -0
- package/dist/shared/hooks/index.d.ts.map +1 -0
- package/dist/shared/hooks/useTr.d.ts +17 -0
- package/dist/shared/hooks/useTr.d.ts.map +1 -0
- package/dist/shared/hooks/useTr.js +14 -0
- package/dist/shared/hooks/useTr.js.map +1 -0
- package/package.json +1 -1
|
@@ -1,18 +1,19 @@
|
|
|
1
1
|
import { useEventfullyManaged as e } from "../../context/EventfullyManagedContext.js";
|
|
2
2
|
import { gql as t } from "../../../node_modules/graphql-tag/lib/index.js";
|
|
3
3
|
import { useQuery as n } from "../../../node_modules/@apollo/client/react/hooks/useQuery.js";
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import
|
|
8
|
-
import {
|
|
9
|
-
import {
|
|
4
|
+
import { useEventsQuery as r, useSponsorsQuery as i, useVenuesQuery as a } from "../../api/eventApi.js";
|
|
5
|
+
import { formatDateTime as o } from "../events/eventFormUtils.js";
|
|
6
|
+
import { useEventDelete as s } from "../../hooks/useEventDelete.js";
|
|
7
|
+
import "../../hooks/index.js";
|
|
8
|
+
import { ActionMenu as c } from "../../components/ActionMenu.js";
|
|
9
|
+
import { Pagination as l, usePagination as ee } from "../../components/Pagination.js";
|
|
10
|
+
import { useMemo as u, useState as d } from "react";
|
|
11
|
+
import { useI18n as f } from "@burdenoff/fe-libs/shared/providers/shell/I18nProvider";
|
|
10
12
|
import { jsx as p, jsxs as m } from "react/jsx-runtime";
|
|
11
|
-
import { Award as te, CalendarClock as
|
|
12
|
-
import {
|
|
13
|
-
import { Badge as S, Button as C, EmphasisPanel as w, GlassCard as T, GradientText as oe, IllustratedEmptyState as se, Input as ce, NextSteps as le, PagePurpose as ue, Skeleton as E, Table as de, TableBody as fe, TableCell as D, TableHead as O, TableHeader as pe, TableRow as k, Tabs as me, TabsList as he, TabsTrigger as A } from "@burdenoff/fe-libs/ui";
|
|
13
|
+
import { Award as te, CalendarClock as ne, CalendarDays as re, CalendarPlus as h, LayoutGrid as ie, MapPin as g, Rows3 as ae, Search as oe, Ticket as se, UserCheck as _, Users as v } from "lucide-react";
|
|
14
|
+
import { Badge as y, Button as b, EmphasisPanel as ce, GlassCard as x, GradientText as le, IllustratedEmptyState as S, Input as C, NextSteps as w, PagePurpose as T, Skeleton as E, Table as ue, TableBody as de, TableCell as D, TableHead as O, TableHeader as fe, TableRow as k, Tabs as pe, TabsList as me, TabsTrigger as A } from "@burdenoff/fe-libs/ui";
|
|
14
15
|
//#region src/eventfullymanaged/pages/modules/EventsPage.tsx
|
|
15
|
-
var
|
|
16
|
+
var he = t`
|
|
16
17
|
query EventfullymanagedEventsRegistrations($limit: Int) {
|
|
17
18
|
registrations: eventfullyManagedRegistrations(limit: $limit, offset: 0) {
|
|
18
19
|
total
|
|
@@ -47,7 +48,7 @@ function j(e) {
|
|
|
47
48
|
].includes(t) ? "info" : "secondary";
|
|
48
49
|
}
|
|
49
50
|
function M(e, t) {
|
|
50
|
-
let n = e ?
|
|
51
|
+
let n = e ? o(e) : "", r = t ? o(t) : "";
|
|
51
52
|
return n && r ? `${n} — ${r}` : n || r || "No schedule set";
|
|
52
53
|
}
|
|
53
54
|
function N(e, t) {
|
|
@@ -55,7 +56,7 @@ function N(e, t) {
|
|
|
55
56
|
return !a && !o ? null : a && n < r ? "upcoming" : o && n > i ? "past" : a ? "live" : "upcoming";
|
|
56
57
|
}
|
|
57
58
|
function P({ icon: e, label: t, value: n, loading: r }) {
|
|
58
|
-
return /* @__PURE__ */ p(
|
|
59
|
+
return /* @__PURE__ */ p(x, {
|
|
59
60
|
treatment: "plain",
|
|
60
61
|
className: "border-border-seam p-4",
|
|
61
62
|
children: /* @__PURE__ */ m("div", {
|
|
@@ -93,28 +94,29 @@ function F({ icon: e, label: t, value: n }) {
|
|
|
93
94
|
});
|
|
94
95
|
}
|
|
95
96
|
function I() {
|
|
96
|
-
let { t } =
|
|
97
|
+
let { t } = f(), o = (e, n) => {
|
|
97
98
|
let r = t(e);
|
|
98
99
|
return r === e ? n : r;
|
|
99
|
-
}, { navigate: I } = e(), [L,
|
|
100
|
+
}, { navigate: I } = e(), [L, ge] = d(""), [R, _e] = d("all"), [z, B] = d("table"), V = ee({ resetKey: L }), { data: H, loading: U, refetch: ve } = r({
|
|
100
101
|
search: L,
|
|
101
102
|
limit: V.limit,
|
|
102
103
|
offset: V.offset
|
|
103
|
-
}),
|
|
104
|
+
}), { onDeleteEvent: ye } = s(), { data: W, loading: be } = a({
|
|
104
105
|
limit: 100,
|
|
105
106
|
offset: 0
|
|
106
|
-
}), { data: G, loading:
|
|
107
|
+
}), { data: G, loading: xe } = i({
|
|
107
108
|
limit: 1,
|
|
108
109
|
offset: 0
|
|
109
|
-
}), { data: K, loading:
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
110
|
+
}), { data: K, loading: q } = n(he, { variables: { limit: 500 } }), J = H?.events?.total ?? 0, Y = u(() => H?.events?.items ?? [], [H]), Se = K?.registrations?.total ?? 0, Ce = W?.venues?.total ?? 0, we = G?.sponsors?.total ?? 0, X = async (e) => {
|
|
111
|
+
await ye(e.id, {
|
|
112
|
+
name: e.name,
|
|
113
|
+
onSuccess: () => void ve()
|
|
114
|
+
});
|
|
115
|
+
}, Z = u(() => R === "all" ? Y : Y.filter((e) => N(e.startAt, e.endAt) === R), [Y, R]), Q = u(() => {
|
|
114
116
|
let e = /* @__PURE__ */ new Map();
|
|
115
117
|
for (let t of W?.venues?.items ?? []) e.set(t.id, t.name);
|
|
116
118
|
return e;
|
|
117
|
-
}, [W]), $ =
|
|
119
|
+
}, [W]), $ = u(() => {
|
|
118
120
|
let e = /* @__PURE__ */ new Map();
|
|
119
121
|
for (let t of K?.registrations?.items ?? []) {
|
|
120
122
|
let n = e.get(t.eventId) ?? {
|
|
@@ -128,47 +130,47 @@ function I() {
|
|
|
128
130
|
return /* @__PURE__ */ m("div", {
|
|
129
131
|
className: "space-y-6 p-6",
|
|
130
132
|
children: [
|
|
131
|
-
/* @__PURE__ */ p(
|
|
132
|
-
/* @__PURE__ */ p(
|
|
133
|
+
/* @__PURE__ */ p(T, { children: o("eventfullymanaged.events.purpose", "Events are the heart of the platform — each one is a happening you sell tickets for, register attendees to, and run on the day. Create an event, open it to reveal its agenda, speakers and ticket types, then publish it when it is ready.") }),
|
|
134
|
+
/* @__PURE__ */ p(ce, { children: /* @__PURE__ */ m("div", {
|
|
133
135
|
className: "flex flex-col gap-4 sm:flex-row sm:items-center sm:justify-between",
|
|
134
136
|
children: [/* @__PURE__ */ m("div", { children: [/* @__PURE__ */ p("h1", {
|
|
135
137
|
className: "text-2xl font-bold text-text-primary",
|
|
136
|
-
children: /* @__PURE__ */ p(
|
|
138
|
+
children: /* @__PURE__ */ p(le, { children: o("eventfullymanaged.events.title", "Events") })
|
|
137
139
|
}), /* @__PURE__ */ p("p", {
|
|
138
140
|
className: "mt-1 text-sm text-text-secondary",
|
|
139
|
-
children:
|
|
140
|
-
})] }), /* @__PURE__ */ m(
|
|
141
|
+
children: o("eventfullymanaged.events.description", "Create and manage live events from the workspace graph.")
|
|
142
|
+
})] }), /* @__PURE__ */ m(b, {
|
|
141
143
|
type: "button",
|
|
142
144
|
onClick: () => I("/events/create"),
|
|
143
|
-
children: [/* @__PURE__ */ p(
|
|
145
|
+
children: [/* @__PURE__ */ p(h, { className: "h-4 w-4" }), o("eventfullymanaged.events.actions.create", "Create Event")]
|
|
144
146
|
})]
|
|
145
147
|
}) }),
|
|
146
148
|
/* @__PURE__ */ m("div", {
|
|
147
149
|
className: "grid grid-cols-2 gap-3 sm:grid-cols-4",
|
|
148
150
|
children: [
|
|
149
151
|
/* @__PURE__ */ p(P, {
|
|
150
|
-
icon:
|
|
151
|
-
label:
|
|
152
|
-
value:
|
|
153
|
-
loading: U &&
|
|
152
|
+
icon: re,
|
|
153
|
+
label: o("eventfullymanaged.events.portfolio.events", "Events"),
|
|
154
|
+
value: J.toLocaleString(),
|
|
155
|
+
loading: U && J === 0
|
|
154
156
|
}),
|
|
155
157
|
/* @__PURE__ */ p(P, {
|
|
156
|
-
icon:
|
|
157
|
-
label:
|
|
158
|
-
value:
|
|
159
|
-
loading:
|
|
158
|
+
icon: v,
|
|
159
|
+
label: o("eventfullymanaged.events.portfolio.registrations", "Registrations"),
|
|
160
|
+
value: Se.toLocaleString(),
|
|
161
|
+
loading: q && !K
|
|
160
162
|
}),
|
|
161
163
|
/* @__PURE__ */ p(P, {
|
|
162
|
-
icon:
|
|
163
|
-
label:
|
|
164
|
-
value:
|
|
165
|
-
loading:
|
|
164
|
+
icon: g,
|
|
165
|
+
label: o("eventfullymanaged.events.portfolio.venues", "Venues"),
|
|
166
|
+
value: Ce.toLocaleString(),
|
|
167
|
+
loading: be && !W
|
|
166
168
|
}),
|
|
167
169
|
/* @__PURE__ */ p(P, {
|
|
168
170
|
icon: te,
|
|
169
|
-
label:
|
|
170
|
-
value:
|
|
171
|
-
loading:
|
|
171
|
+
label: o("eventfullymanaged.events.portfolio.sponsors", "Sponsors"),
|
|
172
|
+
value: we.toLocaleString(),
|
|
173
|
+
loading: xe && !G
|
|
172
174
|
})
|
|
173
175
|
]
|
|
174
176
|
}),
|
|
@@ -177,59 +179,59 @@ function I() {
|
|
|
177
179
|
children: [
|
|
178
180
|
/* @__PURE__ */ m("div", {
|
|
179
181
|
className: "relative flex-1",
|
|
180
|
-
children: [/* @__PURE__ */ p(
|
|
182
|
+
children: [/* @__PURE__ */ p(oe, { className: "pointer-events-none absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-text-muted" }), /* @__PURE__ */ p(C, {
|
|
181
183
|
type: "text",
|
|
182
184
|
value: L,
|
|
183
|
-
onChange: (e) =>
|
|
184
|
-
placeholder:
|
|
185
|
-
"aria-label":
|
|
185
|
+
onChange: (e) => ge(e.target.value),
|
|
186
|
+
placeholder: o("eventfullymanaged.events.searchPlaceholder", "Search events"),
|
|
187
|
+
"aria-label": o("eventfullymanaged.events.searchPlaceholder", "Search events"),
|
|
186
188
|
className: "pl-10"
|
|
187
189
|
})]
|
|
188
190
|
}),
|
|
189
|
-
/* @__PURE__ */ p(
|
|
191
|
+
/* @__PURE__ */ p(pe, {
|
|
190
192
|
value: R,
|
|
191
|
-
onValueChange: (e) =>
|
|
193
|
+
onValueChange: (e) => _e(e),
|
|
192
194
|
className: "w-full sm:w-auto",
|
|
193
|
-
children: /* @__PURE__ */ m(
|
|
195
|
+
children: /* @__PURE__ */ m(me, {
|
|
194
196
|
className: "w-full overflow-x-auto sm:w-auto",
|
|
195
197
|
children: [
|
|
196
198
|
/* @__PURE__ */ p(A, {
|
|
197
199
|
value: "all",
|
|
198
|
-
children:
|
|
200
|
+
children: o("eventfullymanaged.events.filters.all", "All")
|
|
199
201
|
}),
|
|
200
202
|
/* @__PURE__ */ p(A, {
|
|
201
203
|
value: "upcoming",
|
|
202
|
-
children:
|
|
204
|
+
children: o("eventfullymanaged.events.filters.upcoming", "Upcoming")
|
|
203
205
|
}),
|
|
204
206
|
/* @__PURE__ */ p(A, {
|
|
205
207
|
value: "live",
|
|
206
|
-
children:
|
|
208
|
+
children: o("eventfullymanaged.events.filters.live", "Live")
|
|
207
209
|
}),
|
|
208
210
|
/* @__PURE__ */ p(A, {
|
|
209
211
|
value: "past",
|
|
210
|
-
children:
|
|
212
|
+
children: o("eventfullymanaged.events.filters.past", "Past")
|
|
211
213
|
})
|
|
212
214
|
]
|
|
213
215
|
})
|
|
214
216
|
}),
|
|
215
217
|
/* @__PURE__ */ m("div", {
|
|
216
218
|
className: "flex shrink-0 items-center gap-1 self-start rounded-button border border-border-seam p-1 sm:self-auto",
|
|
217
|
-
children: [/* @__PURE__ */ p(
|
|
219
|
+
children: [/* @__PURE__ */ p(b, {
|
|
218
220
|
type: "button",
|
|
219
221
|
variant: z === "table" ? "default" : "ghost",
|
|
220
222
|
size: "sm",
|
|
221
223
|
"aria-pressed": z === "table",
|
|
222
|
-
"aria-label":
|
|
224
|
+
"aria-label": o("eventfullymanaged.events.view.table", "Table view"),
|
|
223
225
|
onClick: () => B("table"),
|
|
224
|
-
children: /* @__PURE__ */ p(
|
|
225
|
-
}), /* @__PURE__ */ p(
|
|
226
|
+
children: /* @__PURE__ */ p(ae, { className: "h-4 w-4" })
|
|
227
|
+
}), /* @__PURE__ */ p(b, {
|
|
226
228
|
type: "button",
|
|
227
229
|
variant: z === "cards" ? "default" : "ghost",
|
|
228
230
|
size: "sm",
|
|
229
231
|
"aria-pressed": z === "cards",
|
|
230
|
-
"aria-label":
|
|
232
|
+
"aria-label": o("eventfullymanaged.events.view.cards", "Card view"),
|
|
231
233
|
onClick: () => B("cards"),
|
|
232
|
-
children: /* @__PURE__ */ p(
|
|
234
|
+
children: /* @__PURE__ */ p(ie, { className: "h-4 w-4" })
|
|
233
235
|
})]
|
|
234
236
|
})
|
|
235
237
|
]
|
|
@@ -241,33 +243,33 @@ function I() {
|
|
|
241
243
|
/* @__PURE__ */ p(E, { className: "h-28 w-full rounded-card" }),
|
|
242
244
|
/* @__PURE__ */ p(E, { className: "h-28 w-full rounded-card" })
|
|
243
245
|
]
|
|
244
|
-
}) :
|
|
246
|
+
}) : Y.length === 0 ? /* @__PURE__ */ p(x, {
|
|
245
247
|
treatment: "plain",
|
|
246
248
|
className: "border-border-seam",
|
|
247
|
-
children: /* @__PURE__ */ p(
|
|
249
|
+
children: /* @__PURE__ */ p(S, {
|
|
248
250
|
illustration: L ? "empty-search" : "empty-data",
|
|
249
|
-
title: L ?
|
|
250
|
-
description: L ?
|
|
251
|
-
action: L ? void 0 : /* @__PURE__ */ m(
|
|
251
|
+
title: L ? o("eventfullymanaged.events.list.emptySearch", "No events match your search.") : o("eventfullymanaged.events.list.empty", "No events yet."),
|
|
252
|
+
description: L ? o("eventfullymanaged.events.list.emptySearchHint", "Try a different name.") : o("eventfullymanaged.events.list.emptyHint", "Create your first event to get started."),
|
|
253
|
+
action: L ? void 0 : /* @__PURE__ */ m(b, {
|
|
252
254
|
type: "button",
|
|
253
255
|
onClick: () => I("/events/create"),
|
|
254
|
-
children: [/* @__PURE__ */ p(
|
|
256
|
+
children: [/* @__PURE__ */ p(h, { className: "h-4 w-4" }), o("eventfullymanaged.events.actions.create", "Create Event")]
|
|
255
257
|
})
|
|
256
258
|
})
|
|
257
259
|
}) : Z.length === 0 ? /* @__PURE__ */ m("div", {
|
|
258
260
|
className: "space-y-3",
|
|
259
|
-
children: [/* @__PURE__ */ p(
|
|
261
|
+
children: [/* @__PURE__ */ p(x, {
|
|
260
262
|
treatment: "plain",
|
|
261
263
|
className: "border-border-seam",
|
|
262
264
|
children: /* @__PURE__ */ p("p", {
|
|
263
265
|
className: "px-2 py-8 text-center text-sm text-text-secondary",
|
|
264
|
-
children:
|
|
266
|
+
children: o("eventfullymanaged.events.filters.empty", `No ${R} events on this page. Switch tabs or move to another page.`)
|
|
265
267
|
})
|
|
266
|
-
}), /* @__PURE__ */ p(
|
|
268
|
+
}), /* @__PURE__ */ p(l, {
|
|
267
269
|
offset: V.offset,
|
|
268
270
|
limit: V.limit,
|
|
269
|
-
loadedCount:
|
|
270
|
-
total:
|
|
271
|
+
loadedCount: Y.length,
|
|
272
|
+
total: J,
|
|
271
273
|
onPrev: V.prevPage,
|
|
272
274
|
onNext: V.nextPage,
|
|
273
275
|
itemLabel: "events",
|
|
@@ -277,21 +279,21 @@ function I() {
|
|
|
277
279
|
className: "space-y-3",
|
|
278
280
|
children: [/* @__PURE__ */ p("div", {
|
|
279
281
|
className: "overflow-hidden rounded-card border border-border-seam",
|
|
280
|
-
children: /* @__PURE__ */ m(
|
|
281
|
-
/* @__PURE__ */ p(O, { children:
|
|
282
|
-
/* @__PURE__ */ p(O, { children:
|
|
283
|
-
/* @__PURE__ */ p(O, { children:
|
|
284
|
-
/* @__PURE__ */ p(O, { children:
|
|
282
|
+
children: /* @__PURE__ */ m(ue, { children: [/* @__PURE__ */ p(fe, { children: /* @__PURE__ */ m(k, { children: [
|
|
283
|
+
/* @__PURE__ */ p(O, { children: o("eventfullymanaged.events.table.name", "Event") }),
|
|
284
|
+
/* @__PURE__ */ p(O, { children: o("eventfullymanaged.events.table.date", "Date") }),
|
|
285
|
+
/* @__PURE__ */ p(O, { children: o("eventfullymanaged.events.table.venue", "Venue") }),
|
|
286
|
+
/* @__PURE__ */ p(O, { children: o("eventfullymanaged.events.table.status", "Status") }),
|
|
285
287
|
/* @__PURE__ */ p(O, {
|
|
286
288
|
className: "text-right",
|
|
287
|
-
children:
|
|
289
|
+
children: o("eventfullymanaged.events.table.attendees", "Attendees")
|
|
288
290
|
}),
|
|
289
291
|
/* @__PURE__ */ p(O, {
|
|
290
292
|
className: "w-10",
|
|
291
|
-
"aria-label":
|
|
293
|
+
"aria-label": o("eventfullymanaged.events.table.actions", "Actions")
|
|
292
294
|
})
|
|
293
|
-
] }) }), /* @__PURE__ */ p(
|
|
294
|
-
let t = e.metadata ?? {}, n = typeof t.venueId == "string" ? t.venueId : "", r = n ? Q.get(n) : void 0, i = $.get(e.id), a = i?.registrations ?? 0,
|
|
295
|
+
] }) }), /* @__PURE__ */ p(de, { children: Z.map((e) => {
|
|
296
|
+
let t = e.metadata ?? {}, n = typeof t.venueId == "string" ? t.venueId : "", r = n ? Q.get(n) : void 0, i = $.get(e.id), a = i?.registrations ?? 0, s = a > 0 ? Math.round((i?.checkedIn ?? 0) / a * 100) : 0;
|
|
295
297
|
return /* @__PURE__ */ m(k, {
|
|
296
298
|
className: "cursor-pointer",
|
|
297
299
|
tabIndex: 0,
|
|
@@ -308,7 +310,7 @@ function I() {
|
|
|
308
310
|
children: [/* @__PURE__ */ p("span", {
|
|
309
311
|
className: "truncate font-medium text-text-primary",
|
|
310
312
|
children: e.name
|
|
311
|
-
}), e.type ? /* @__PURE__ */ p(
|
|
313
|
+
}), e.type ? /* @__PURE__ */ p(y, {
|
|
312
314
|
variant: "secondary",
|
|
313
315
|
className: "shrink-0 capitalize",
|
|
314
316
|
children: e.type.toLowerCase().replace(/_/g, " ")
|
|
@@ -321,9 +323,9 @@ function I() {
|
|
|
321
323
|
}),
|
|
322
324
|
/* @__PURE__ */ p(D, {
|
|
323
325
|
className: "text-text-secondary",
|
|
324
|
-
children: r ??
|
|
326
|
+
children: r ?? o("eventfullymanaged.events.card.noVenue", "No venue")
|
|
325
327
|
}),
|
|
326
|
-
/* @__PURE__ */ p(D, { children: e.status ? /* @__PURE__ */ p(
|
|
328
|
+
/* @__PURE__ */ p(D, { children: e.status ? /* @__PURE__ */ p(y, {
|
|
327
329
|
variant: j(e.status),
|
|
328
330
|
className: "uppercase",
|
|
329
331
|
children: e.status
|
|
@@ -334,7 +336,7 @@ function I() {
|
|
|
334
336
|
className: "ml-1 text-xs text-text-muted",
|
|
335
337
|
children: [
|
|
336
338
|
"(",
|
|
337
|
-
|
|
339
|
+
s,
|
|
338
340
|
"%)"
|
|
339
341
|
]
|
|
340
342
|
})]
|
|
@@ -342,7 +344,7 @@ function I() {
|
|
|
342
344
|
/* @__PURE__ */ p(D, {
|
|
343
345
|
onClick: (e) => e.stopPropagation(),
|
|
344
346
|
onKeyDown: (e) => e.stopPropagation(),
|
|
345
|
-
children: /* @__PURE__ */ p(
|
|
347
|
+
children: /* @__PURE__ */ p(c, {
|
|
346
348
|
ariaLabel: `Event actions for ${e.name}`,
|
|
347
349
|
entityName: e.name,
|
|
348
350
|
deleteLabel: "Delete event",
|
|
@@ -354,11 +356,11 @@ function I() {
|
|
|
354
356
|
]
|
|
355
357
|
}, e.id);
|
|
356
358
|
}) })] })
|
|
357
|
-
}), /* @__PURE__ */ p(
|
|
359
|
+
}), /* @__PURE__ */ p(l, {
|
|
358
360
|
offset: V.offset,
|
|
359
361
|
limit: V.limit,
|
|
360
|
-
loadedCount:
|
|
361
|
-
total:
|
|
362
|
+
loadedCount: Y.length,
|
|
363
|
+
total: J,
|
|
362
364
|
onPrev: V.prevPage,
|
|
363
365
|
onNext: V.nextPage,
|
|
364
366
|
itemLabel: "events",
|
|
@@ -367,8 +369,8 @@ function I() {
|
|
|
367
369
|
}) : /* @__PURE__ */ m("div", {
|
|
368
370
|
className: "space-y-3",
|
|
369
371
|
children: [Z.map((e) => {
|
|
370
|
-
let t = e.metadata ?? {}, n = typeof t.venueId == "string" ? t.venueId : "", r = n ? Q.get(n) : void 0, i = $.get(e.id), a = i?.registrations ?? 0,
|
|
371
|
-
return /* @__PURE__ */ m(
|
|
372
|
+
let t = e.metadata ?? {}, n = typeof t.venueId == "string" ? t.venueId : "", r = n ? Q.get(n) : void 0, i = $.get(e.id), a = i?.registrations ?? 0, s = a > 0 ? Math.round((i?.checkedIn ?? 0) / a * 100) : 0;
|
|
373
|
+
return /* @__PURE__ */ m(x, {
|
|
372
374
|
treatment: "plain",
|
|
373
375
|
role: "button",
|
|
374
376
|
tabIndex: 0,
|
|
@@ -393,12 +395,12 @@ function I() {
|
|
|
393
395
|
className: "truncate text-lg font-semibold text-text-primary",
|
|
394
396
|
children: e.name
|
|
395
397
|
}),
|
|
396
|
-
e.status ? /* @__PURE__ */ p(
|
|
398
|
+
e.status ? /* @__PURE__ */ p(y, {
|
|
397
399
|
variant: j(e.status),
|
|
398
400
|
className: "uppercase",
|
|
399
401
|
children: e.status
|
|
400
402
|
}) : null,
|
|
401
|
-
e.type ? /* @__PURE__ */ p(
|
|
403
|
+
e.type ? /* @__PURE__ */ p(y, {
|
|
402
404
|
variant: "secondary",
|
|
403
405
|
className: "capitalize",
|
|
404
406
|
children: e.type.toLowerCase().replace(/_/g, " ")
|
|
@@ -409,28 +411,28 @@ function I() {
|
|
|
409
411
|
className: "flex flex-wrap items-center gap-x-4 gap-y-1 text-sm text-text-secondary",
|
|
410
412
|
children: [/* @__PURE__ */ m("span", {
|
|
411
413
|
className: "flex items-center gap-1.5",
|
|
412
|
-
children: [/* @__PURE__ */ p(
|
|
414
|
+
children: [/* @__PURE__ */ p(ne, { className: "h-4 w-4 shrink-0 text-text-muted" }), M(e.startAt, e.endAt)]
|
|
413
415
|
}), /* @__PURE__ */ m("span", {
|
|
414
416
|
className: "flex items-center gap-1.5",
|
|
415
|
-
children: [/* @__PURE__ */ p(
|
|
417
|
+
children: [/* @__PURE__ */ p(g, { className: "h-4 w-4 shrink-0 text-text-muted" }), r ?? o("eventfullymanaged.events.card.noVenue", "No venue")]
|
|
416
418
|
})]
|
|
417
419
|
}),
|
|
418
420
|
/* @__PURE__ */ m("div", {
|
|
419
421
|
className: "flex flex-wrap items-center gap-x-4 gap-y-1 text-xs",
|
|
420
422
|
children: [
|
|
421
423
|
/* @__PURE__ */ p(F, {
|
|
422
|
-
icon:
|
|
423
|
-
label:
|
|
424
|
+
icon: _,
|
|
425
|
+
label: o("eventfullymanaged.events.card.registered", "registered"),
|
|
424
426
|
value: a.toLocaleString()
|
|
425
427
|
}),
|
|
426
428
|
/* @__PURE__ */ p(F, {
|
|
427
|
-
icon:
|
|
428
|
-
label:
|
|
429
|
-
value: `${
|
|
429
|
+
icon: _,
|
|
430
|
+
label: o("eventfullymanaged.events.card.checkedIn", "checked in"),
|
|
431
|
+
value: `${s}%`
|
|
430
432
|
}),
|
|
431
433
|
/* @__PURE__ */ p(F, {
|
|
432
|
-
icon:
|
|
433
|
-
label:
|
|
434
|
+
icon: v,
|
|
435
|
+
label: o("eventfullymanaged.events.card.capacity", "capacity"),
|
|
434
436
|
value: e.capacity == null ? "—" : e.capacity.toLocaleString()
|
|
435
437
|
})
|
|
436
438
|
]
|
|
@@ -441,7 +443,7 @@ function I() {
|
|
|
441
443
|
onClick: (e) => e.stopPropagation(),
|
|
442
444
|
onKeyDown: (e) => e.stopPropagation(),
|
|
443
445
|
role: "presentation",
|
|
444
|
-
children: /* @__PURE__ */ p(
|
|
446
|
+
children: /* @__PURE__ */ p(c, {
|
|
445
447
|
ariaLabel: `Event actions for ${e.name}`,
|
|
446
448
|
entityName: e.name,
|
|
447
449
|
deleteLabel: "Delete event",
|
|
@@ -452,40 +454,40 @@ function I() {
|
|
|
452
454
|
})]
|
|
453
455
|
})]
|
|
454
456
|
}, e.id);
|
|
455
|
-
}), /* @__PURE__ */ p(
|
|
457
|
+
}), /* @__PURE__ */ p(l, {
|
|
456
458
|
offset: V.offset,
|
|
457
459
|
limit: V.limit,
|
|
458
|
-
loadedCount:
|
|
459
|
-
total:
|
|
460
|
+
loadedCount: Y.length,
|
|
461
|
+
total: J,
|
|
460
462
|
onPrev: V.prevPage,
|
|
461
463
|
onNext: V.nextPage,
|
|
462
464
|
itemLabel: "events",
|
|
463
465
|
loading: U
|
|
464
466
|
})]
|
|
465
467
|
}),
|
|
466
|
-
/* @__PURE__ */ p(
|
|
468
|
+
/* @__PURE__ */ p(w, {
|
|
467
469
|
storageKey: "eventfullymanaged-events",
|
|
468
|
-
title:
|
|
470
|
+
title: o("eventfullymanaged.events.nextSteps.title", "Finish setting up your event"),
|
|
469
471
|
steps: [
|
|
470
472
|
{
|
|
471
473
|
id: "configure-registration",
|
|
472
|
-
label:
|
|
473
|
-
description:
|
|
474
|
-
icon: /* @__PURE__ */ p(
|
|
474
|
+
label: o("eventfullymanaged.events.nextSteps.registration", "Configure registration & tickets"),
|
|
475
|
+
description: o("eventfullymanaged.events.nextSteps.registrationDesc", "Open an event and define ticket types so people can register."),
|
|
476
|
+
icon: /* @__PURE__ */ p(se, { className: "h-4 w-4" }),
|
|
475
477
|
onClick: () => I("/registration")
|
|
476
478
|
},
|
|
477
479
|
{
|
|
478
480
|
id: "plan-networking",
|
|
479
|
-
label:
|
|
480
|
-
description:
|
|
481
|
-
icon: /* @__PURE__ */ p(
|
|
481
|
+
label: o("eventfullymanaged.events.nextSteps.networking", "Plan networking & sessions"),
|
|
482
|
+
description: o("eventfullymanaged.events.nextSteps.networkingDesc", "Set up attendee matchmaking and meeting schedules."),
|
|
483
|
+
icon: /* @__PURE__ */ p(v, { className: "h-4 w-4" }),
|
|
482
484
|
onClick: () => I("/networking")
|
|
483
485
|
},
|
|
484
486
|
{
|
|
485
487
|
id: "announce",
|
|
486
|
-
label:
|
|
487
|
-
description:
|
|
488
|
-
icon: /* @__PURE__ */ p(
|
|
488
|
+
label: o("eventfullymanaged.events.nextSteps.announce", "Announce to attendees"),
|
|
489
|
+
description: o("eventfullymanaged.events.nextSteps.announceDesc", "Send announcements and run communication campaigns."),
|
|
490
|
+
icon: /* @__PURE__ */ p(h, { className: "h-4 w-4" }),
|
|
489
491
|
onClick: () => I("/communication")
|
|
490
492
|
}
|
|
491
493
|
]
|