import { Heading, type HeadingProps } from "@ariakit/react"; import type { RecipeVariants } from "@vanilla-extract/recipes"; import type { ComponentPropsWithoutRef, ReactNode } from "react"; import { cx } from "../class-names.ts"; import { interactiveText } from "../common.css.ts"; import { ExternalLink } from "../ExternalLink.tsx"; import { FormSubmitButton, type FormSubmitButtonProps, } from "../form/FormSubmitButton.tsx"; import { IndieTabletopClubLogo } from "../IndieTabletopClubLogo.tsx"; import { IndieTabletopClubSymbol } from "../IndieTabletopClubSymbol.tsx"; import { LoadingIndicator } from "../LoadingIndicator.tsx"; import * as css from "./style.css.ts"; export type LetterheadHeadingProps = RecipeVariants & HeadingProps; export function LetterheadHeading(props: LetterheadHeadingProps) { const { align, margin, ...rest } = props; return ; } type LetterheadParagraphProps = RecipeVariants & ComponentPropsWithoutRef<"p">; export function LetterheadParagraph(props: LetterheadParagraphProps) { const { size, align, ...rest } = props; return

; } type LetterheadFooterProps = ComponentPropsWithoutRef<"div">; export function LetterheadFooter(props: LetterheadFooterProps) { return (

Indie Tabletop Club supports independent game creators with premium digital tools.{" "} Learn more .
); } type LetterheadSubmitButton = RecipeVariants & Omit; export function LetterheadSubmitButton(props: LetterheadSubmitButton) { const { marginBlockStart, ...rest } = props; return ( } /> ); } export type LetterheadProps = RecipeVariants & { headerIcon?: ReactNode; children: ReactNode; }; export function Letterhead(props: LetterheadProps) { const { children, textAlign, headerIcon = true } = props; return (
{headerIcon && } {children}
); }