import { useIntl } from "react-intl" import { Lang } from "@/constants/languages" import Body from "@/components/TempDesignSystem/Text/Body" import { awardPointsVariants } from "./awardPointsVariants" import type { AwardPointsVariantProps } from "@/types/components/myPages/myPage/earnAndBurn" export default function AwardPoints({ awardPoints, isCalculated, isExpiringPoints = false, }: { awardPoints: number isCalculated: boolean isExpiringPoints?: boolean }) { let variant: AwardPointsVariantProps["variant"] = null const intl = useIntl() if (isCalculated && !isExpiringPoints) { if (awardPoints > 0) { variant = "addition" } else if (awardPoints < 0) { variant = "negation" awardPoints = Math.abs(awardPoints) } } const classNames = awardPointsVariants({ variant, }) // sv hardcoded to force space on thousands const formatter = new Intl.NumberFormat(Lang.sv) return ( {isCalculated ? formatter.format(awardPoints) : intl.formatMessage({ id: "Points being calculated" })} ) }