import { getMembershipLevel } from "@/lib/trpc/memoizedRequests"

import { Section } from "@/components/Section"
import SectionHeader from "@/components/Section/Header/Deprecated"

import ExpiringPointsTable from "./ExpiringPointsTable"

import type { AccountPageComponentProps } from "@/types/components/myPages/myPage/accountPage"

export default async function ExpiringPoints({
  link,
  subtitle,
  title,
}: AccountPageComponentProps) {
  const membershipLevel = await getMembershipLevel()

  if (!membershipLevel?.pointsToExpire || !membershipLevel?.pointsExpiryDate) {
    return null
  }

  return (
    <Section>
      <SectionHeader title={title} link={link} preamble={subtitle} />
      <ExpiringPointsTable
        points={membershipLevel.pointsToExpire}
        expirationDate={membershipLevel.pointsExpiryDate}
      />
    </Section>
  )
}
