import { login } from "@/constants/routes/handleAuth"
import { signup } from "@/constants/routes/signup"

import { auth } from "@/auth"
import Card from "@/components/TempDesignSystem/Card"
import { getIntl } from "@/i18n"
import { getLang } from "@/i18n/serverContext"
import { isValidSession } from "@/utils/session"

import styles from "./authCard.module.css"

export default async function EmployeeBenefitsAuthCard() {
  const session = await auth()
  const intl = await getIntl()

  const lang = getLang()

  if (isValidSession(session)) {
    return null
  }

  return (
    <Card
      className={styles.card}
      scriptedTopTitle={intl.formatMessage({
        defaultMessage: "Let’s be friends!",
      })}
      heading={intl.formatMessage({
        defaultMessage: "Join our loyalty program today!",
      })}
      primaryButton={{
        href: login[lang],
        title: intl.formatMessage({ defaultMessage: "Log in" }),
        openInNewTab: false,
      }}
      secondaryButton={{
        href: signup[lang],
        title: intl.formatMessage({ defaultMessage: "Sign up" }),
        openInNewTab: false,
      }}
      theme="primaryInverted"
    />
  )
}
