Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
219 commits
Select commit Hold shift + click to select a range
3333a03
chore: remove every instances of 2024 on the website
Holytech Aug 11, 2025
2b9764c
feat: added admin dashboard screens
ayanwumi101 Aug 11, 2025
9af4c2d
feat: added tanstack table pagination and dropdowns
ayanwumi101 Aug 12, 2025
53c1617
feat: ticket page completed
Holytech Aug 12, 2025
c62ff56
fix: fixes for feedbacks
Holytech Aug 15, 2025
74f6fca
Merge pull request #32 from gdg-ibadan01/feature/ticket-page
John-pels Aug 17, 2025
f8ab1e7
feat: added success modal
ayanwumi101 Aug 17, 2025
7c302e5
feat: added success modal
ayanwumi101 Aug 17, 2025
1a0c86c
feat: added add attendees modal
ayanwumi101 Aug 19, 2025
5ce65b6
feat: added add attendee flow
ayanwumi101 Aug 19, 2025
c3c7dd0
fix: resolved comments/issues
ayanwumi101 Aug 24, 2025
371acd6
fix: resolved comments/issues
ayanwumi101 Aug 24, 2025
43c7cc2
fix: fixed table responsiveness
ayanwumi101 Aug 24, 2025
e45e724
fix: resolved merge conflicts
ayanwumi101 Aug 25, 2025
2d92116
Merge pull request #35 from gdg-ibadan01/admin-dashboard
John-pels Aug 25, 2025
edef68a
Update ticket link to GDG Ibadan community event Page
AbidemiT Sep 18, 2025
28f9095
Update ticket link to external GDG event
AbidemiT Sep 18, 2025
b77eadb
Merge pull request #66 from gdg-ibadan01/AbidemiT-ticket-link-update
AbidemiT Sep 18, 2025
cfdb133
feat: adding some pulled files
olaobey Aug 13, 2026
21ac68a
Merge branch 'feat/seed-superadmin' of https://github.com/gdg-ibadan0…
olaobey Aug 13, 2026
93a760c
feat: add admin home screen
ayanwumi101 Aug 14, 2026
9f9455a
feat(admin): sync dashboard updates to dev branch
ayanwumi101 Aug 14, 2026
caa2300
Revert "feat(admin): sync dashboard updates to dev branch"
ayanwumi101 Aug 14, 2026
3a9e2fd
feat: add admin auth, password reset and profile endpoints
olaobey Aug 14, 2026
db7ce25
feat: add admin tickets flow
ayanwumi101 Aug 14, 2026
d5d4250
feat: add admin tickets flow
ayanwumi101 Aug 14, 2026
40fe648
feat(admin): implement Discount & Referral flow
ayanwumi101 Aug 14, 2026
42b4358
fix(admin): make CreateDiscountModal body scrollable
ayanwumi101 Aug 14, 2026
fa3c073
fix: fixind and adjusting some areas in the codebase
olaobey Aug 14, 2026
ac03901
feat: add discount and referral flow to admin dashboard
ayanwumi101 Aug 14, 2026
3f8b83c
feat(admin): implement Roles & Permission flow
ayanwumi101 Aug 14, 2026
906a8d1
fix: resolve merge-related issues
olaobey Aug 15, 2026
4f97c57
feat(admin): implement attendees flow
ayanwumi101 Aug 15, 2026
48b7c47
fix(admin/attendees): align UI with Roles pattern & fix wiring
ayanwumi101 Aug 15, 2026
8af918c
feat(admin): implement Audit Log page
ayanwumi101 Aug 15, 2026
65077db
feat(admin/roles): add Invite People modal & fix modal state bugs
ayanwumi101 Aug 15, 2026
15ce588
feat: add roles, permissions, attendees and audit log flows
ayanwumi101 Aug 15, 2026
50c3038
fix: resolved all merge conflicts
ayanwumi101 Aug 15, 2026
3642555
fix: resolved all merge conflicts
ayanwumi101 Aug 15, 2026
ded0c09
fix: removed payment success icon file
ayanwumi101 Aug 15, 2026
6ae2e9c
fix: commented out AdminHeader component
ayanwumi101 Aug 15, 2026
98872b3
fix: resolve all pr comments and changes
ayanwumi101 Aug 16, 2026
6040c2e
fix: resolve all pr comments and changes
ayanwumi101 Aug 16, 2026
be9a593
feat: add admin invitation endpoint
olaobey Aug 16, 2026
37ba55b
feat: add admin invitation endpoint
olaobey Aug 16, 2026
405067a
docs: switch from Swagger UI to Scalar (#82)
orimdominic Aug 17, 2026
71ec551
feat: create ticket (#85)
orimdominic Aug 17, 2026
e87f8a5
feat: add admin invitation endpoint
olaobey Aug 18, 2026
9743ab1
feat: add admin invitation endpoint
olaobey Aug 18, 2026
1ae5968
fix: address code review feedback
olaobey Aug 18, 2026
93e03fe
feat: add find all admins endpoint
olaobey Aug 18, 2026
9d2ebe6
fix: address code review feedback
olaobey Aug 18, 2026
935cb03
Merge pull request #83 from gdg-ibadan01/feat/admin-dashboard
John-pels Aug 18, 2026
13a00cf
feat: add find all admins endpoint
olaobey Aug 18, 2026
5d02470
feat: add find one admins endpoint
olaobey Aug 18, 2026
0ec2e93
feat: add admin deactivation endpoint
olaobey Aug 18, 2026
5f0317a
Merge pull request #95 from gdg-ibadan01/feat/invite-admin
olaobey Aug 18, 2026
97038a8
feat: list tickets (#94)
orimdominic Aug 18, 2026
2bfefbe
feat: implement ticket purchasing and gifting flow
Holytech Aug 19, 2026
d7ca59c
feat: enhance UI with Framer Motion animations for countdown and inte…
Holytech Aug 19, 2026
31ce90d
feat: get ticket by id (#99)
orimdominic Aug 20, 2026
428bd54
feat: get ticket by slug (#103)
orimdominic Aug 20, 2026
17dbc79
feat: list tickets on sale (#104)
orimdominic Aug 20, 2026
5723016
Merge pull request #105 from gdg-ibadan01/feat/tickets-flow
John-pels Aug 20, 2026
5c5aa97
feat: add admin auth pages
ayanwumi101 Aug 20, 2026
8edd32f
fix: remove unused useEffect
ayanwumi101 Aug 20, 2026
b9cabe6
fix: address review feedback for admin find endpoints
olaobey Aug 21, 2026
368fce7
refactor: return amounts as string (#109)
orimdominic Aug 21, 2026
3b3fac3
fix: address review feedback for admin find endpoints
olaobey Aug 21, 2026
79eb0f1
feat: implement update role
olaobey Aug 21, 2026
3b21f8b
feat: implement deactivate role
olaobey Aug 21, 2026
e57c737
Merge branch 'dev-26' of https://github.com/gdg-ibadan01/devfest-Ibad…
Holytech Aug 21, 2026
d16c25c
feat: get role by id (#107)
orimdominic Aug 22, 2026
11784b4
refactor: avoid storing permissions in token (#113)
orimdominic Aug 22, 2026
af7a99f
Merge pull request #108 from gdg-ibadan01/feat/admin-auth-pages
John-pels Aug 22, 2026
dc9a12e
Merge branch 'dev-26' of https://github.com/gdg-ibadan01/devfest-Ibad…
olaobey Aug 24, 2026
af46a03
style: update speaker button container layout to vertical on mobile a…
Holytech Aug 24, 2026
f5e72c9
feat: implement dynamic organizers page with profile cards and data-d…
Holytech Aug 24, 2026
ece1fd8
feat: implement deactivate role
olaobey Aug 24, 2026
af0f297
Merge pull request #116 from gdg-ibadan01/feat/deactivate-role
olaobey Aug 24, 2026
55b8e45
feat: update ticket (#114)
orimdominic Aug 24, 2026
ebf7dfa
feat: create order for ticket by initiating payment (#117)
orimdominic Aug 25, 2026
3a14002
chore: update node engine and yarn lockfile
olaobey Aug 25, 2026
fcae855
Merge pull request #106 from gdg-ibadan01/feat/homepage-enhance
John-pels Aug 25, 2026
0b5dd3e
Merge pull request #115 from gdg-ibadan01/feat/speakers-page
John-pels Aug 25, 2026
f5e761f
feat: handle success payment webhook (#118)
orimdominic Aug 26, 2026
60ba21a
chore: log requests summary to the console (#119)
orimdominic Aug 26, 2026
91f794e
fix(hotfix): set min password length to 6
orimdominic Aug 27, 2026
b729bac
refactor: rename columns snake case (#122)
orimdominic Aug 27, 2026
edd8e64
fix: expected object instead of array result from queryRaw (#123)
orimdominic Aug 27, 2026
4810c16
fix(hotfix): run migration before starting app in prod
orimdominic Aug 27, 2026
9ae9643
fix(hotfix): run migration before starting app in prod
orimdominic Aug 27, 2026
c4bdd41
fix(hotfix): run migration before starting app in prod
orimdominic Aug 27, 2026
0bd4e4f
feat: implemented tickets flow apis and login api
ayanwumi101 Aug 29, 2026
8b18cf3
feat: implemented tickets flow apis and login api
ayanwumi101 Aug 29, 2026
da36de7
feat: implemented roles and permissions apis
ayanwumi101 Aug 29, 2026
149dc5d
feat: implemented roles and permissions apis
ayanwumi101 Aug 30, 2026
cf077d5
fix: add action prop to role success modal
ayanwumi101 Aug 30, 2026
ab1dd39
fix: add action prop to role success modal
ayanwumi101 Aug 30, 2026
fcefb27
fix: fix eslint error
ayanwumi101 Aug 30, 2026
c8eed25
fix: removed env.example file
ayanwumi101 Aug 30, 2026
9513285
feat: implement create attendee endpoint
olaobey Aug 30, 2026
2dc43fe
Merge pull request #125 from gdg-ibadan01/feat/admin-ticket-api
John-pels Aug 30, 2026
9afd22e
refactor: apply unique constraint migration (#127)
orimdominic Aug 30, 2026
32adb6a
feat: implement ticket purchase and gifting flows with api, ui skelet…
Holytech Aug 31, 2026
ff7bf3e
feat: implement ticket purchase and gifting flows with api, ui skelet…
Holytech Aug 31, 2026
989bfce
feat: implement ticket purchase and gifting flows with api, ui skelet…
Holytech Aug 31, 2026
4bb36c8
fix(hotfix): fix invalid prisma schema
orimdominic Aug 31, 2026
d3ab62b
refactor: remove unused copy payment link logic and redundant imports…
Holytech Aug 31, 2026
f1f1583
Merge pull request #128 from gdg-ibadan01/feat/tickets-flow-integration
John-pels Aug 31, 2026
28604bf
fix: improve cPanel SMTP connection handling
olaobey Aug 31, 2026
ad7404a
fix: table name changes aftecting query raw (#129)
orimdominic Sep 1, 2026
c8c79e6
feat: handle Monnify rejected payments (#131)
orimdominic Sep 1, 2026
c0c4948
Merge pull request #133 from gdg-ibadan01/dev-26
John-pels Sep 2, 2026
f376721
feat: implement admin module and apis
ayanwumi101 Sep 2, 2026
10d247e
feat: update order and mail functionality
olaobey Sep 3, 2026
1d39fa8
refactor: include vat charges redirect URL (#134)
orimdominic Sep 3, 2026
4f7ea35
fix(hot): yarn lock file
orimdominic Sep 3, 2026
b22cecf
fix: log proper correct status code in request loggger (#135)
orimdominic Sep 3, 2026
24e2038
fix(hot): yarn lock file
orimdominic Sep 3, 2026
285e2c1
feat: generate ticket and upload to Cloudinary (#136)
orimdominic Sep 3, 2026
ce562a4
feat: qrcode ticket download ii (#139)
orimdominic Sep 3, 2026
7089813
chore: resolve merge conflicts with dev-26
olaobey Sep 3, 2026
95da14b
feat: list orders (#140)
orimdominic Sep 3, 2026
c67b5ed
feat: attendee check-in (#141)
orimdominic Sep 3, 2026
06cc39d
chore: add missing frontend dependencies
olaobey Sep 3, 2026
0f2b0a2
chore: resolve merge conflicts with dev-26
olaobey Sep 3, 2026
fb315d5
feat: created new branch for remaining api integration
ayanwumi101 Sep 3, 2026
54c926c
feat: update order mail attendee and admin features
olaobey Sep 4, 2026
05d9d1d
feat: add audit log list endpoint
olaobey Sep 4, 2026
da36f81
feat: add audit log detail endpoint
olaobey Sep 4, 2026
7e5f03b
fix(hot): dinero.js rejecting non-integer values
orimdominic Sep 4, 2026
23d4fa0
chore: debug amountInKobo
orimdominic Sep 4, 2026
6f81a4a
feat: update order functionality
olaobey Sep 4, 2026
b04442f
feat: add orders and implement all orders and new attendees apis
ayanwumi101 Sep 5, 2026
f2858be
fix: fix eslint errors
ayanwumi101 Sep 5, 2026
27b86b8
fix: resolved merge conflicts
ayanwumi101 Sep 5, 2026
91ac9ba
fix: resolved merge conflicts
ayanwumi101 Sep 5, 2026
6df6edb
fix: fixed some authentication issues
ayanwumi101 Sep 5, 2026
3810091
fix: reject checking-in unpaid order (#144)
orimdominic Sep 5, 2026
db0a10c
feat: list checked in attendees (#145)
orimdominic Sep 5, 2026
3f4fff4
feat: add checkins feature and also implemet checkins api
ayanwumi101 Sep 5, 2026
0b86d43
Merge pull request #146 from gdg-ibadan01/admin-orders-api-integration
John-pels Sep 5, 2026
6dba1dd
Merge pull request #147 from gdg-ibadan01/dev-26
John-pels Sep 5, 2026
9e63f13
fix: fix trailing slash for api base url
ayanwumi101 Sep 5, 2026
48a90d5
fix: fix trailing slash for api base url
ayanwumi101 Sep 5, 2026
225f04f
fix: fix trailing slash for api base url
ayanwumi101 Sep 5, 2026
2ae13af
Merge pull request #148 from gdg-ibadan01/admin-orders-api-integration
John-pels Sep 5, 2026
6eddbc7
Merge pull request #149 from gdg-ibadan01/dev-26
John-pels Sep 5, 2026
902cd61
refactor: revamp homepage page
Holytech Sep 5, 2026
fec9969
chore: merge dev-26 branch into refactor/homepage
Holytech Sep 5, 2026
8ad1395
refactor: comment out unused order types and reformat status enum def…
Holytech Sep 5, 2026
171dece
fix: resolve OrderListItemDto type mismatch and unify order service
Holytech Sep 5, 2026
6057453
chore: resolve merge conflicts with dev-26
olaobey Sep 6, 2026
25729b8
feat: update order mail integration
olaobey Sep 6, 2026
c3fd9db
fix: add checked-in attendee query params type
olaobey Sep 6, 2026
f3aa6e6
chore: sync feat/audit-log-list with dev-26
olaobey Sep 6, 2026
d396c25
Merge pull request #150 from gdg-ibadan01/refactor/homepage
John-pels Sep 6, 2026
a9d0702
Merge pull request #151 from gdg-ibadan01/dev-26
John-pels Sep 6, 2026
83d6d85
fix: resolve frontend merge conflicts
olaobey Sep 6, 2026
dcc4938
fix: remove invalid audit log service import
olaobey Sep 6, 2026
31cf8d0
chore: sync feat/audit-log-actions with dev-26
olaobey Sep 6, 2026
27aec79
feat: implement admin dashboard
olaobey Sep 6, 2026
6c2d4a4
feat: complete admin dashboard implementation
olaobey Sep 6, 2026
40cbdc3
Merge pull request #152 from gdg-ibadan01/feat/admin-dashboard
olaobey Sep 7, 2026
dcde18a
fix: add order methods for admin dashboard
olaobey Sep 7, 2026
c68b16a
chore: sync dev-26 into feat/order-mail
olaobey Sep 7, 2026
e7f570b
Merge pull request #137 from gdg-ibadan01/feat/order-mail
olaobey Sep 7, 2026
e7dde6c
chore: sync dev-26 into feat/audit-log-list
olaobey Sep 7, 2026
0fc75ec
Merge pull request #142 from gdg-ibadan01/feat/audit-log-list
olaobey Sep 7, 2026
11f907b
fix: register audit log module
olaobey Sep 7, 2026
2d39b89
feat: create discount (#153)
orimdominic Sep 8, 2026
6275f2a
feat: apply discount/order with discount (#154)
orimdominic Sep 8, 2026
8ab264d
feat: list discounts (#156)
orimdominic Sep 8, 2026
e423d26
refactor: use single unique reference constraint in Orders table (#157)
orimdominic Sep 8, 2026
cc30b49
feat: update navigation links, add cfp/cfv, and display coming soon o…
Holytech Sep 8, 2026
89ed1aa
feat: replace puzzle game link with stylized Get Ticket button in footer
Holytech Sep 8, 2026
fef37e4
Merge pull request #158 from gdg-ibadan01/refactor/homepage
John-pels Sep 8, 2026
9809486
Merge pull request #159 from gdg-ibadan01/dev-26
John-pels Sep 8, 2026
03fb204
feat: implement discount, ticket, audit logs apis
ayanwumi101 Sep 8, 2026
cd479f4
chore: content updates
John-pels Sep 8, 2026
24d8b5f
chore: content updates
John-pels Sep 8, 2026
9a648ae
Merge pull request #160 from gdg-ibadan01/dev-26
John-pels Sep 8, 2026
817d8cc
refactor: first demo requests (#161)
orimdominic Sep 8, 2026
21d9eaa
fix: invalid migration
orimdominic Sep 8, 2026
cb95ca0
chore: content updates
John-pels Sep 9, 2026
174dd90
Merge pull request #162 from gdg-ibadan01/dev-26
John-pels Sep 9, 2026
91e3d57
chore: content updates
John-pels Sep 9, 2026
3d235de
Merge pull request #163 from gdg-ibadan01/dev-26
John-pels Sep 9, 2026
d086038
feat: implement discount code system with validation and application …
Holytech Sep 9, 2026
df6b784
fix: fix roles and permission
ayanwumi101 Sep 9, 2026
7f8b5ac
fix: resolved all merge conflicts
ayanwumi101 Sep 9, 2026
52550d5
fix: resolved all merge conflicts
ayanwumi101 Sep 9, 2026
05b95d9
Merge pull request #164 from gdg-ibadan01/admin-orders-api-integration
John-pels Sep 9, 2026
a2fca96
Merge branch 'dev-26' into feat/unified-ticket-purchase-flow
Holytech Sep 9, 2026
9eb4781
Merge pull request #165 from gdg-ibadan01/feat/unified-ticket-purchas…
John-pels Sep 9, 2026
e276b8b
refactor: consolidate discounts query keys into a single object defin…
Holytech Sep 9, 2026
a87a2fd
feat: implement ticket selection and purchase flow in buy page
Holytech Sep 9, 2026
ee7470a
Merge pull request #167 from gdg-ibadan01/feat/unified-ticket-purchas…
John-pels Sep 9, 2026
b8d78fd
Merge pull request #166 from gdg-ibadan01/dev-26
John-pels Sep 9, 2026
8629b27
feat: update checkin permission term
ayanwumi101 Sep 9, 2026
750d2a0
refactor: add new permissions (#168)
orimdominic Sep 9, 2026
28f11f4
Merge pull request #169 from gdg-ibadan01/admin-orders-api-integration
John-pels Sep 9, 2026
fb7d3b1
Merge pull request #170 from gdg-ibadan01/dev-26
John-pels Sep 9, 2026
50865b4
feat: add dashboard permission term
ayanwumi101 Sep 9, 2026
6a09776
feat: add alternative checkin permission term
ayanwumi101 Sep 9, 2026
5aa9fe7
Merge pull request #171 from gdg-ibadan01/admin-orders-api-integration
John-pels Sep 9, 2026
ed53e8c
Merge pull request #172 from gdg-ibadan01/dev-26
John-pels Sep 9, 2026
cb7205c
feat: add activate admin functionality
olaobey Sep 9, 2026
cae8958
feat: add activate admin functionality
olaobey Sep 9, 2026
b840e27
Merge pull request #173 from gdg-ibadan01/feat/activate-admin
John-pels Sep 10, 2026
6f0b3de
Merge pull request #174 from gdg-ibadan01/dev-26
John-pels Sep 10, 2026
0687f0b
Merge branch 'main' into staging
John-pels Sep 10, 2026
a015b97
chore: change admin routes
John-pels Sep 10, 2026
f7551a7
chore: add minimum node version to the package.json
John-pels Sep 10, 2026
1544048
chore: add minimum node version to the package.json
John-pels Sep 10, 2026
0a820aa
chore: content updates
John-pels Sep 10, 2026
c3fea69
feat: send payment confirm email (#176)
orimdominic Sep 10, 2026
05022f3
Merge pull request #177 from gdg-ibadan01/dev-26
John-pels Sep 10, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 0 additions & 2 deletions .env.example

This file was deleted.

2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,8 @@ yarn-error.log*

# local env files
.env*.local
.env
.env.example

# vercel
.vercel
Expand Down
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ DevFest Ibadan is where over 1,000 Software Engineers, Designers, Tech Professio
- 📅 **Date:** November 28th and 29th, 2025
- 🕰️ **Time:** 8:00 AM prompt
- 📍 **Venue:** Jogor Center, No. 1 Harvester Drive, Liberty Road, New GRA, Ibadann
- 🎟️ **Registration:** [Get Your Ticket](https://devfestibadan.com/ticket)
- 🎟️ **Registration:** [Get Your Ticket](https://devfestibadan.com/tickets)

## ✨ Current Features

Expand All @@ -30,8 +30,8 @@ This website includes the following sections and features:

### 📄 **Ticketing System**

- **Ticket form** (`/ticket`) - Where attendees get to fill the registration form
- **Ticket checkout** (`/ticket`) - Where attendees can purchase tickets
- **Ticket form** (`/tickets`) - Where attendees get to fill the registration form
- **Ticket checkout** (`/tickets`) - Where attendees can purchase tickets
- **Payment success** (`/payment/success`) - Confirmation page after successful payment

### 📄 **Ticketing Admin System**
Expand Down
36 changes: 36 additions & 0 deletions app/_module/api/client.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
import axios, { AxiosError } from 'axios';
import { showToast } from '@/app/_module/lib/notify';

const API_PROXY_BASE_URL = '/api';

export const apiClient = axios.create({
baseURL: API_PROXY_BASE_URL,
headers: { 'Content-Type': 'application/json' },
timeout: 30_000,
});

// Response interceptor
apiClient.interceptors.response.use(
(response) => response,
(error: AxiosError<{ message?: string }>) => {
const status = error.response?.status;
const message =
error.response?.data?.message ??
error.message ??
'An unexpected error occurred';

let handled = false;
if (status === 403) {
showToast.error("You don't have permission to perform this action.");
handled = true;
}

const apiError = Object.assign(new Error(message), {
status,
data: error.response?.data,
handled,
});

return Promise.reject(apiError);
}
);
64 changes: 64 additions & 0 deletions app/_module/api/queryKeys.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
export const queryKeys = {
// Auth
me: () => ['admin', 'me'] as const,

// Admins
admins: {
all: (params?: Record<string, unknown>) =>
params ? (['admins', params] as const) : (['admins'] as const),
detail: (id: string) => ['admins', id] as const,
},

// Roles
roles: {
all: () => ['roles'] as const,
detail: (id: string) => ['roles', id] as const,
permissions: () => ['roles', 'permissions'] as const,
},

// Tickets
tickets: {
all: (params?: Record<string, unknown>) => ['tickets', params] as const,
detail: (id: string) => ['tickets', id] as const,
onSale: (params?: Record<string, unknown>) =>
['tickets', 'onsale', params] as const,
},

// Orders (replaces the old attendees list — attendees API now only handles check-in)
orders: {
all: (params?: Record<string, unknown>) =>
params ? (['orders', params] as const) : (['orders'] as const),
reference: (reference: string) =>
['orders', 'reference', reference] as const,
byReference: (reference: string) =>
['orders', 'reference', reference] as const,
detail: (id: string) => ['orders', id] as const,
/** Scan-accumulated, client-side check-in-filtered view of /orders (see order.service.ts). */
checkInFiltered: (params: Record<string, unknown>) =>
['orders', 'checkin-filtered', params] as const,
},

// Attendees (check-in + the checked-in attendees list, both under /attendees)
attendees: {
checkedIn: (params: Record<string, unknown>) =>
['attendees', 'checked-in', params] as const,
},

// Dashboard
dashboard: {
overview: () => ['dashboard', 'overview'] as const,
},

// Discounts
discounts: {
all: (params?: Record<string, unknown>) => ['discounts', params] as const,
byCode: (code: string) => ['discounts', 'code', code] as const,
},

// Audit Logs
auditLogs: {
all: (params?: Record<string, unknown>) => ['audit-logs', params] as const,
detail: (id: string) => ['audit-logs', id] as const,
actions: () => ['audit-logs', 'actions'] as const,
},
} as const;
Loading
Loading