Files
Client_Fe/src/components/hexa/views/memberships-view.tsx
T
HarithaRandunu 0d2b0d553d Facility booking-mode redesign, Classes tab, and calendar quick-book
Implements the facility-classes-booking-dashboard plan (frontend):

- Facility create/edit replaces the single Booking Mode dropdown with
  two independent checkboxes (Classes / Walk-in booking), showing both
  capacity fields when both apply.
- New Classes tab (Memberships): create/edit recurring classes
  (Daily/Weekly/Monthly/Custom), view occurrence history, mark an
  occurrence not held, and a "Manage Plan" action that creates a
  membership plan linked to that class (with an optional "also grant
  gym access" toggle). Old Sessions tab/dialog removed from Bookings,
  superseded by this.
- Booking Dashboard calendar now shows class occurrences as distinct
  blocks (capacity/booked count, muted+dashed when not held and open
  again), clicking any event opens a status/payment detail dialog, and
  dragging a time range in Day/Week view jumps to Book Now with the
  time pre-filled (snapped to 15-minute marks).
- Renamed adhoc-booking-tab.tsx to walkin-booking-tab.tsx (component
  WalkInBookingTab, tab key "book-now") and every other "AdHoc"
  reference to "WalkIn" for a clearer, simpler name.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-10-09 14:27:17 +05:30

31 lines
904 B
TypeScript

"use client"
import { ClassesView } from "@/components/hexa/views/classes-view"
import { FacilitiesView } from "@/components/hexa/views/facilities-view"
import { GymPlansView } from "@/components/hexa/views/gym-plans-view"
import { Tabs, TabsContent, TabsList, TabsTrigger } from "@/components/ui/tabs"
function MembershipsView() {
return (
<Tabs defaultValue="plans" className="gap-4">
<TabsList>
<TabsTrigger value="plans">Plans</TabsTrigger>
<TabsTrigger value="facilities">Facilities</TabsTrigger>
<TabsTrigger value="classes">Classes</TabsTrigger>
</TabsList>
<TabsContent value="plans">
<GymPlansView />
</TabsContent>
<TabsContent value="facilities">
<FacilitiesView />
</TabsContent>
<TabsContent value="classes">
<ClassesView />
</TabsContent>
</Tabs>
)
}
export { MembershipsView }