import {
  getOrganizerRevenueAnalytics,
  getOrganizerTicketSalesAnalytics,
  getOrganizerAttendanceAnalytics,
  getOrganizerEventPerformanceAnalytics,
  getOrganizerParticipantAnalytics,
  getOrganizerCategoryAnalytics,
  getOrganizerPromoAnalytics,
  getOrganizerVoucherAnalytics,
} from "@/lib/api/organizer";
import { RevenueSection } from "@/components/analytics/revenue-section";
import { TicketSalesSection } from "@/components/analytics/ticket-sales-section";
import { AttendanceSection } from "@/components/analytics/attendance-section";
import { EventPerformanceSection } from "@/components/analytics/event-performance-section";
import { ParticipantSection } from "@/components/analytics/participant-section";
import { CategorySection } from "@/components/analytics/category-section";
import { PromoSection } from "@/components/analytics/promo-section";
import { VoucherSection } from "@/components/analytics/voucher-section";

export default async function OrganizerAnalyticsPage() {
  const [revenueRes, ticketSalesRes, attendanceRes, eventsRes, participantsRes, categoriesRes, promosRes, vouchersRes] =
    await Promise.all([
      getOrganizerRevenueAnalytics(),
      getOrganizerTicketSalesAnalytics(),
      getOrganizerAttendanceAnalytics(),
      getOrganizerEventPerformanceAnalytics(),
      getOrganizerParticipantAnalytics(),
      getOrganizerCategoryAnalytics(),
      getOrganizerPromoAnalytics(),
      getOrganizerVoucherAnalytics(),
    ]);

  return (
    <div className="flex flex-col gap-10">
      <RevenueSection data={revenueRes.data} />
      <TicketSalesSection data={ticketSalesRes.data} />
      <AttendanceSection data={attendanceRes.data} />
      <EventPerformanceSection data={eventsRes.data} />
      <ParticipantSection data={participantsRes.data} />
      <CategorySection data={categoriesRes.data} />
      <PromoSection data={promosRes.data} />
      <VoucherSection data={vouchersRes.data} />
    </div>
  );
}
