Skip to content

Releases: gpbl/react-day-picker

v9.13.0

18 Dec 09:40

Choose a tag to compare

This release introduces an experimental noonSafe prop to help deal with historical time zones with second offsets. See https://daypicker.dev/localization/setting-time-zone#noonsafe for more details.

What's Changed

  • feat: add experimental noonSafe prop for timezone offsets by @gpbl in #2879

Full Changelog: v9.12.0...v9.13.0

v9.12.0

06 Dec 18:08

Choose a tag to compare

This release adds translated labels to built-in locales and fixes issues with array modifiers and the Hebrew calendar.

Translated Locales

DayPicker locales now ship with localized labels (e.g., “Go to next month”, “Today”), so you no longer need to supply them via labels. To use a locale:

import { es } from "react-day-picker/locale";
<DayPicker locale={es} /> // Use Spanish locale, now with translated labels.

If you previously set the labels prop for translations, you can remove it. For details on switching locales, see https://daypicker.dev/localization/changing-locale.

What's Changed

  • feat: add locale-aware labels and translated locale wrappers by @gpbl in #2861
  • fix: match Date[] modifiers by day by @gpbl in #2865
  • fix: correct Hebrew date conversion timezone handling by @gpbl in #2870

Full Changelog: v9.11.3...v9.12.0

v9.11.3

29 Nov 11:17

Choose a tag to compare

Rendered HTML now includes empty cells in grids when endMonth is set, and fixes the v9.11.2 regression where JSDOM tests could fail when focusing disabled days.

Possible low impact breaking change: The grid markup changed, so brittle snapshot tests or custom CSS that depended on the old structure may need updates. Adjust snapshots/CSS accordingly.

What's Changed

  • fix: ensure final week renders when endMonth clips the calendar by @gpbl in #2856
  • fix: prevent selecting disabled focused days by @gpbl in #2860

Full Changelog: v9.11.2...v9.11.3

v9.11.2

23 Nov 13:08

Choose a tag to compare

What's Changed

  • fix: ensure modifiers honor the timeZone prop by @gpbl in #2849
  • fix: allow focused disabled days to remain focusable by @gpbl in #2851
  • chore(performance): cache resolved today across helpers for better performance by @gpbl in #2848
  • chore(performance): memoize calendar and reuse ISO date ids in day rendering by @gpbl in #2850

Full Changelog: v9.11.1...v9.11.2

v9.11.1

08 Oct 10:58

Choose a tag to compare

What's Changed

  • fix: duplicated years in dropdown for some timezones by @gpbl in #2836
  • fix: prevent focus navigation past disabled bounds by @gpbl in #2839

Full Changelog: v9.11.0...v9.11.1

v9.11.0

20 Sep 23:26

Choose a tag to compare

This release adds support for Buddhist and Hebrew calendars, introduces new Southeast Asian numeral systems, adds the aria-labelledby prop, and improves month/year formatting for specific locales. It also includes fixes for the recently added Ethiopic calendar.

Buddhist Calendar

To use the Buddhist calendar, import DayPicker from react-day-picker/buddhist.

import { DayPicker } from "react-day-picker/buddhist";

export function BuddhistCalendar() {
  return <DayPicker />;
}
Screen Shot 2025-09-20 at 18 19 40

Read more in the documentation and play with it in playground.

Hebrew Calendar

To switch to the Hebrew calendar, import DayPicker from react-day-picker/hebrew.

import { DayPicker } from "react-day-picker/hebrew";

export function HebrewCalendar() {
  return <DayPicker />;
}
Screen Shot 2025-09-20 at 18 19 55

Read more in the documentation and play with it in playground.

What's Changed

  • feat: Buddhist calendar by @gpbl in #2825
  • feat: Hebrew calendar by @gpbl in #2827
  • feat: align month/year caption and dropdown with locale by @gpbl in #2830
  • feat: add aria-labelledby prop by @gpbl in #2828
  • feat: add Southeast Asian numeral systems by @gpbl in #2832
  • fix: ethiopic calendar may crash with dropdown layout by @gpbl in #2831
  • fix: years are not correctly formatted in ethiopic calendar by @gpbl in #2831

Full Changelog: v9.10.0...v9.11.0

v9.10.0

14 Sep 22:56

Choose a tag to compare

This release adds support for the Ethiopic calendar.

Ethiopic calendar

To use the Ethiopic calendar, import DayPicker from react-day-picker/ethiopic.

import { DayPicker } from "react-day-picker/ethiopic";

export function EthiopicCalendar() {
  return <DayPicker />;
}
Screen Shot 2025-09-14 at 17 54 36

Read more in the documentation and play with it in playground.

What's Changed

Full Changelog: v9.9.0...v9.10.0

v9.9.0

17 Aug 23:13

Choose a tag to compare

This release includes a new reverseYears prop, a range selection fix, and a build update to fix issues with source maps.

Reversing the Years in the Dropdown

When using captionLayout='dropdown', set reverseYears to reverse the years listed in the dropdown: the most recent year will appear first.

<DayPicker captionLayout="dropdown" reverseYears />

See it in action in the playground.

What's Changed

  • feat: add reverseYears prop by @gpbl in #2822
  • fix: select the same day in range mode when range is open and min prop is 0 by @rodgobbi in #2816
  • build: removed source maps and src directory from package by @gpbl in #2812
  • build: update date-fns/tz dependency by @gpbl in #2823

Full Changelog: v9.8.1...v9.9.0

v9.8.1

26 Jul 13:33

Choose a tag to compare

Improved captionLayout documentation and build process.

What's Changed

New Contributors

Full Changelog: v9.8.0...v9.8.1

v9.8.0

05 Jul 09:52

Choose a tag to compare

DayPicker 9.8 includes better keyboard navigation and resolves edge cases with month and year rendering.

What's Changed

  • feat(accessibility): enable Shift+Arrows to navigate between months/years by @mhwice in #2770
  • fix: setting defaultMonth to the next year with the dropdown navigation layout no longer prevents the calendar from rendering by @rodgobbi in #2783
  • fix: correctly display the number of months when numberOfMonths and endMonth are set by @gpbl in #2784

New Contributors

Full Changelog: v9.7.0...v9.8.0