Skip to content

chore(deps): react-day-picker 10 (major) - #86

Open
lacymorrow wants to merge 1 commit into
mainfrom
chore/deps-m-daypicker
Open

lacymorrow wants to merge 1 commit into
mainfrom
chore/deps-m-daypicker

Conversation

@lacymorrow

Copy link
Copy Markdown
Contributor

One sentence

Major bump of react-day-picker from 9 to 10 with calendar.tsx rewritten to the current API (left open for review because it is a major with source changes that deserve a visual check).

Bumps

Package From To
react-day-picker 9.13.2 10.0.1

Breaking changes and what changed

Source: https://github.com/gpbl/react-day-picker/releases/tag/v10.0.0 and https://daypicker.dev/upgrading

  • v10 removes the props deprecated in v9 (fromMonth/toMonth/fromDate/toDate/fromYear/toYear, initialFocus, onDay* touch/pointer handlers, onWeekNumberClick), the deprecated aliases (formatMonthCaption, labelDay, ...), components.Button, and the DeprecatedUI compatibility typing for classNames/styles. Non-Gregorian calendars move to @daypicker/* packages. The react-day-picker package name is still published.
  • src/components/ui/calendar.tsx was still the pre-v9 shadcn component: it passed caption, nav_button, nav_button_previous/next, head_row, head_cell, row, cell, day, day_selected, day_today, day_outside, day_disabled, day_range_*, day_hidden and components={{ IconLeft, IconRight }}. On v9 those keys only type-checked through DeprecatedUI and were ignored at runtime (the calendar has been rendering with default rdp-* classes). It is rewritten against the v9/v10 API: month_caption, button_previous/button_next, month_grid, weekdays/weekday, week, day, day_button, range_start/range_end/range_middle, selected, today, outside, disabled, hidden, and components.Chevron (which maps orientation to the Radix chevron icons). The Tailwind classes are the same as before, so the look should match the original shadcn calendar.
  • src/components/ui/date-range-picker.tsx: initialFocus (removed) -> autoFocus.

Both files live under src/components/ui/**, which tsconfig.json excludes, so they were type-checked in isolation against 10.0.1 and are clean. A throwaway jsdom render (not committed) confirmed the nav buttons carry absolute left-1/right-1, the chevrons h-4 w-4, and the caption/weekday/day cells the expected classes. Neither component is rendered by a route, so please eyeball it in a page or story before merging.

Verification

  • pnpm typecheck clean
  • pnpm test: 4 files, 16 tests green
  • pnpm exec vitest run --config vitest.config.node.ts: 3 files, 21 tests green
  • pnpm build passes
  • next start smoke: / 200, /changelog 200, /changelog/nope-xyz 404, /faq 200, /nope-404 404

Installed with --ignore-scripts (isolated-vm postinstall fails under Node 26 locally; matches how Vercel builds).

https://claude.ai/code/session_01KLWmWU1KLE2diUH14ryqv1

react-day-picker 10 removes the APIs deprecated in v9: the pre-v9 navigation
and focus props (fromMonth/toMonth/fromDate/toDate/initialFocus, ...), aliases,
components.Button, and the DeprecatedUI compatibility typing for classNames.

src/components/ui/calendar.tsx was still the pre-v9 shadcn component (caption,
nav_button, head_row, cell, day_selected, IconLeft/IconRight). v9 only accepted
those keys through the compatibility typing and ignored them at runtime, so
the calendar has been rendering with default day-picker classes. It is now
written against the v9/v10 API (month_caption, button_previous/next, weekdays,
weekday, week, day, day_button, range_start/end/middle, selected, today,
outside, disabled, hidden, components.Chevron) with the same Tailwind classes.

src/components/ui/date-range-picker.tsx: initialFocus -> autoFocus.

Both files are tsc-excluded (src/components/ui/**); type-checked in isolation
against 10.0.1 and clean. A jsdom render confirms the nav buttons, chevrons,
caption, weekday and day cells pick up the classes. Neither file is on a
route, so a visual check is still recommended.

Claude-Session: https://claude.ai/code/session_01KLWmWU1KLE2diUH14ryqv1
@vercel

vercel Bot commented Sep 14, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
bones Ready Ready Preview Sep 14, 2026 3:59pm UTC

Request Review

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant