feat(equipment): server actions + page guard

equipment.ts: registry CRUD (equipment.manage; delete refused once
reservations exist, archive instead), listEquipmentForMembers (active
items with a member_certified flag computed via the service client),
reserveEquipment / cancelReservation as validated service-client writes
that enforce status, no-overlap and the required-certification gate with
an equipment.manage override (and manager booking on a member's behalf),
listEquipmentReservations and getMyReservations. equipment-guard mirrors
the other module guards. Barrel + API_REFERENCE updated.
This commit is contained in:
Moheeb Zara
2026-05-16 19:51:51 -07:00
parent d06c8d9e46
commit 39c00260c7
4 changed files with 417 additions and 0 deletions
+3
View File
@@ -53,3 +53,6 @@ export * from './certifications'
// Classes (offerings, sessions, signups)
export * from './classes'
// Equipment registry + reservations
export * from './equipment'