---
url: "https://vueda.dev/v3/reference/theming/keys/CalendarFooter.md"
title: "CalendarFooter"
---

# CalendarFooter

Source: `client/lib/theme/vueda-tailwind/controls/index.js`

> The optional chin slot below a [Calendar.root](/v3/reference/theming/keys/Calendar.md#theme-key-Calendar-root) or [RangeCalendar.root](/v3/reference/theming/keys/RangeCalendar.md#theme-key-RangeCalendar-root). Flex row with a `border-t` separator and an 8px gap; used by date-picker popovers that need a date-summary line plus an action row (Apply / Clear). Calendar and RangeCalendar themselves stay footer-free so the bare grid can be embedded without chrome it cannot use.

Vue component: [CalendarFooter](/v3/reference/api/vue/CalendarFooter.md)

| Slot | Default classes | Description |
| --- | --- | --- |
| [root](/v3/reference/theming/keys/CalendarFooter.md#theme-key-CalendarFooter-root) | `flex items-center justify-between gap-2 mt-2 pt-2 border-t-hairline` | The optional chin slot below a [Calendar.root](/v3/reference/theming/keys/Calendar.md#theme-key-Calendar-root) or [RangeCalendar.root](/v3/reference/theming/keys/RangeCalendar.md#theme-key-RangeCalendar-root). Flex row with a `border-t` separator and an 8px gap; used by date-picker popovers that need a date-summary line plus an action row (Apply / Clear). Calendar and RangeCalendar themselves stay footer-free so the bare grid can be embedded without chrome it cannot use. |
| [summary](/v3/reference/theming/keys/CalendarFooter.md#theme-key-CalendarFooter-summary) | `font-mono font-medium text-[length:var(--vueda-text-supporting)] leading-none text-muted-foreground [font-feature-settings:'tnum','zero']` | The date-readout span inside a [CalendarFooter.root](/v3/reference/theming/keys/CalendarFooter.md#theme-key-CalendarFooter-root). Mono plus tabular plus slashed-zero (`font-feature-settings: 'tnum','zero'`) so the date string stays digit-aligned with the segment text in the trigger that opened the popover; renders at `--vueda-text-supporting` size with `leading-none` on `--muted-foreground` so the chin reads as status, not primary copy. |

<a id="theme-key-CalendarFooter-root"></a>

## root

> The optional chin slot below a [Calendar.root](/v3/reference/theming/keys/Calendar.md#theme-key-Calendar-root) or [RangeCalendar.root](/v3/reference/theming/keys/RangeCalendar.md#theme-key-RangeCalendar-root). Flex row with a `border-t` separator and an 8px gap; used by date-picker popovers that need a date-summary line plus an action row (Apply / Clear). Calendar and RangeCalendar themselves stay footer-free so the bare grid can be embedded without chrome it cannot use.

Default classes:

`flex items-center justify-between gap-2 mt-2 pt-2 border-t-hairline`

Source: `client/lib/theme/vueda-tailwind/controls/CalendarFooter.theme.js:19`

<a id="theme-key-CalendarFooter-summary"></a>

## summary

> The date-readout span inside a [CalendarFooter.root](/v3/reference/theming/keys/CalendarFooter.md#theme-key-CalendarFooter-root). Mono plus tabular plus slashed-zero (`font-feature-settings: 'tnum','zero'`) so the date string stays digit-aligned with the segment text in the trigger that opened the popover; renders at `--vueda-text-supporting` size with `leading-none` on `--muted-foreground` so the chin reads as status, not primary copy.

Default classes:

`font-mono font-medium text-[length:var(--vueda-text-supporting)] leading-none text-muted-foreground [font-feature-settings:'tnum','zero']`

Source: `client/lib/theme/vueda-tailwind/controls/CalendarFooter.theme.js:26`
