3.0.0 (2026-09-18)
- feat(temporal)!: upgrade @js-temporal/polyfill to 0.5.1 (ade19d5), closes js-temporal/temporal-polyfill#357
Bug Fixes
- build: add rootDir and exclude vendor from tsconfig for TS 6.0 (6a7b2dc)
- ci: upgrade to Node 20, fix lint errors and formatting (5fc57bc)
- ci: wire @js-temporal/polyfill-patched alias for cucumber runner (7864a75)
- ethiopic: vendor @js-temporal/polyfill with CLDR 48 era-code patch (ec948fa), closes js-temporal/temporal-polyfill#357
- translations: sync translations from transifex (main) (d202f08)
- translations: sync translations from transifex (main) (155c81e)
- translations: sync translations from transifex (main) (d8e719e)
- useDatePicker: memoize calendarWeekDays and selectedDateZdt (f10b088)
- useDatePicker: stabilize useNavigation args to fix per-keystroke lag (3b3fd03)
- vendor: remove this-param from DateTimeFormatImpl to fix Babel arg-shift bug (#100) (23e7553)
Features
- trigger publish (19fe19c)
BREAKING CHANGES
- getNowInCalendar now returns a plain CalendarDate
object ({ year, month, day, eraYear? }, src/types.ts) instead of a
Temporal.ZonedDateTime. This removes Temporal from the public
interface entirely and matches convertFromIso8601/convertToIso8601's
existing return shape. Code that only read .year/.month/.day/.eraYear
needs no changes; code that called Temporal methods on the result
needs to re-derive another date via getNowInCalendar/convertFromIso8601
instead of calling .withCalendar()/.startOfDay() on the previous
result.
Co-Authored-By: Claude Sonnet 5 noreply@anthropic.com