5
Sponsor

Navigation

Navigation Footer rendered with email-safe, renderer-native components.

import { NavigationFooter } from "@/components/email/navigation-footer";
import { defaultTheme } from "@/components/email/theme-default";

export function NavigationFooterDemo() {
  return (
    <NavigationFooter
      columns={2}
      alignment="left"
      logoPosition="left"
      theme={{ ...defaultTheme, containerWidth: "640px" }}
    />
  );
}

Installation

$ pnpm dlx shadcn@latest add @emailcn/jsx-email/navigation-footer

Usage

import { NavigationFooter } from "@/components/email/navigation-footer";
<NavigationFooter
  columns={2}
  alignment="left"
  logoPosition="left"
  divider={false}
/>

Examples

default

import { NavigationFooter } from "@/components/email/navigation-footer";

export function NavigationFooterColumns1AlignmentCenterExampleDemo() {
  return <NavigationFooter columns={1} alignment="center" />;
}
import { NavigationFooter } from "@/components/email/navigation-footer";

export function NavigationFooterColumns2AlignmentLeftLogoPositionLeftDividerFalseExampleDemo() {
  return (
    <NavigationFooter
      columns={2}
      alignment="left"
      logoPosition="left"
      divider={false}
    />
  );
}
import { NavigationFooter } from "@/components/email/navigation-footer";

export function NavigationFooterColumns2LogoPositionRightExampleDemo() {
  return <NavigationFooter columns={2} logoPosition="right" />;
}

left logo

import { NavigationFooter } from "@/components/email/navigation-footer";

export function NavigationFooterColumns2LogoPositionLeftDividerExampleDemo() {
  return <NavigationFooter columns={2} logoPosition="left" divider />;
}

right logo

import { NavigationFooter } from "@/components/email/navigation-footer";

export function NavigationFooterColumns2LogoPositionRightDividerExampleDemo() {
  return <NavigationFooter columns={2} logoPosition="right" divider />;
}

left logo

import { NavigationFooter } from "@/components/email/navigation-footer";

export function NavigationFooterColumns3LogoPositionLeftExampleDemo() {
  return <NavigationFooter columns={3} logoPosition="left" />;
}

right logo

import { NavigationFooter } from "@/components/email/navigation-footer";

export function NavigationFooterColumns3LogoPositionRightExampleDemo() {
  return <NavigationFooter columns={3} logoPosition="right" />;
}
import { NavigationFooter } from "@/components/email/navigation-footer";

export function NavigationFooterOversizedLogoVariantOversizedLogoExampleDemo() {
  return <NavigationFooter oversizedLogo variant="oversized-logo" />;
}

bordered

import { NavigationFooter } from "@/components/email/navigation-footer";

export function NavigationFooterOversizedLogoVariantBorderedExampleDemo() {
  return <NavigationFooter oversizedLogo variant="bordered" />;
}

left logo

import { NavigationFooter } from "@/components/email/navigation-footer";

export function NavigationFooterDescriptionLogoPositionLeftExampleDemo() {
  return (
    <NavigationFooter
      description="Product updates and useful resources."
      logoPosition="left"
    />
  );
}

right logo

import { NavigationFooter } from "@/components/email/navigation-footer";

export function NavigationFooterDescriptionLogoPositionRightExampleDemo() {
  return (
    <NavigationFooter
      description="Product updates and useful resources."
      logoPosition="right"
    />
  );
}

API Reference

PropTypeDefaultDescription
themeEmailThemedefaultThemeRenderer theme configuration.
brand{ logo: { src: string; alt?: string }; href?: string }-Configures the component's brand.
descriptionstring"Lorem ipsum dolor sit amet consectetur. Eget aenean sed sit sed in sapien. Vel auctor arcu nulla consectetur sed."Configures the component's description.
menusArray<{ heading?: string; links: Array<{ label: string; href: string }> }>-Configures the component's menus.
socialsArray<{ iconSrc: string; label: string; href: string }>-Configures the component's socials.
legal{ copyright?: string; text?: string; unsubscribeHref?: string; preferencesHref?: string }-Configures the component's legal.
columns1 | 2 | 32Configures the component's columns.
alignment"left" | "center" | "right""left"Configures the component's alignment.
logoPosition"left" | "right" | "top" | "bottom""left"Configures the component's logoposition.
dividerbooleanfalseConfigures the component's divider.
oversizedLogobooleanfalseConfigures the component's oversizedlogo.
variant"left-logo" | "right-logo" | "oversized-logo" | "bordered"Derived from the other propsSelects an exact legacy composition when needed.