{"version":3,"file":"RelativeTime.cjs","names":[],"sources":["../../../src/components/RelativeTime/RelativeTime.tsx"],"sourcesContent":["import type { HTMLAttributes } from \"react\";\nimport { relativeTime } from \"@/utils/relative-time\";\n\nexport interface RelativeTimeProps extends HTMLAttributes<HTMLTimeElement> {\n    /** The instant to render relative to now. */\n    date: Date | string | number;\n    /** Output language. Defaults to \"pt\". */\n    locale?: \"pt\" | \"en\";\n}\n\n/**\n * Render a date as a human-friendly relative-time string (e.g. \"5 min atrás\")\n * inside a semantic `<time>` element with a machine-readable `dateTime`.\n *\n * Delegates the wording to the `relativeTime` util; \"pt\" maps to its \"pt-BR\"\n * locale.\n *\n * @example\n * <RelativeTime date={post.createdAt} locale=\"en\" />\n */\nexport function RelativeTime({ date, locale = \"pt\", ...props }: RelativeTimeProps) {\n    const target = date instanceof Date ? date : new Date(date);\n    const iso = Number.isNaN(target.getTime()) ? undefined : target.toISOString();\n    const label = relativeTime(date, { locale: locale === \"pt\" ? \"pt-BR\" : \"en\" });\n\n    return (\n        <time dateTime={iso} {...props}>\n            {label}\n        </time>\n    );\n}\n"],"mappings":"oFAoBA,SAAgB,EAAa,CAAE,OAAM,SAAS,KAAM,GAAG,GAA4B,CAC/E,IAAM,EAAS,aAAgB,KAAO,EAAO,IAAI,KAAK,CAAI,EACpD,EAAM,OAAO,MAAM,EAAO,QAAQ,CAAC,EAAI,IAAA,GAAY,EAAO,YAAY,EACtE,EAAQ,EAAA,aAAa,EAAM,CAAE,OAAQ,IAAW,KAAO,QAAU,IAAK,CAAC,EAE7E,OACI,EAAA,EAAA,IAAA,CAAC,OAAD,CAAM,SAAU,EAAK,GAAI,EACpB,SAAA,CACC,CAAA,CAEd"}