- Migrated to null safety
- Removed CalendarController
- Improved horizontal scrolling
- Improved widget performance
- Improved documentation
- Added date range selection
- Added multiple date selection
- Added selective CalendarBuilders
- Added firstDay and lastDay scroll boundaries
- Added shouldFillViewport property
- Added sixWeekMonthsEnforced property
- Added more options to customize calendar's behavior
- Updated dependencies
- Added previousPage and nextPage methods to CalendarController
- Added chevron visibility properties to HeaderStyle
- Added cellMargin property to CalendarStyle
- Added eventDayStyle property to CalendarStyle
- Added availableCalendarFormats dynamic update
- Added optional BoxDecoration for each calendar row
- Added optional BoxDecoration for days of week row
- Migrated to AndroidX
- Added holidays to onDaySelected callback
- Replaced deprecated overflow property with clipBehavior
- Added onCalendarCreated callback
- Added highlightSelected property to CalendarStyle
- Added highlightToday property to CalendarStyle
- Added onHeaderTapped callback
- Added onHeaderLongPressed callback
- Fixed endDay issue
- Added LongPress Gesture support
- Added option to disable days based on a predicate
- Added option to hide DaysOfWeek row
- Added header Decoration
- Added headerMargin property
- Added headerPadding property
- Added contentPadding property
- Added dynamic events and holidays
- Added StartingDayOfWeek for every weekday
- Added support for custom weekend days
- Added dowWeekdayBuilder and dowWeekendBuilder
- Broadened intl dependency bounds
- markersMaxAmount no longer affects markersBuilder
- Fixed twoWeeks format programmatic issue
- Fixed visibleDays issue
- Fixed null dispose issue
- Updated dependencies
- Fixed issue with custom markers for holidays
- Added CalendarController - TableCalendar now features complete programmatic control
- Removed redundant properties
- Updated example project
- Updated README
- Fixed last day of month animation issue
- Improved DateTime logic
- Event markers can now be set to overflow cell boundaries
- Added startDay and endDay to allow users to specify available date range
- Added unavailableStyle and unavailableDayBuilder for days outside of given date range
- Added onUnavailableDaySelected callback
- Unavailable days will not display event markers
- Fixed issue with Markers being null
- RowHeight can now be set as a fixed value
- MaxMarkersAmount will now affect MarkersBuilder
- Added holiday support
- Added holiday usage guide
- Improved custom markers builder
- Added rendering priority customization
- Added FormatButton behavior customization
- Added TextBuilders for Header and DOW panel
- Improved vertical swipe behavior
- Added title text customization with format skeleton
- Added day of the week text customization with format skeleton
- Rolled-back intl dependency
- Added locale support
- Added locale usage guide
- Updated example project
- Improved chevron customization
- Added programmatic selectedDay
- Removed onFormatChanged callback - it is now integrated into onVisibleDaysChanged callback
- Improved onVisibleDaysChanged behavior
- Fixed issue with empty Calendar row
- Changed default FormatButton texts
- Updated example project
- FormatButton text can now be customized
- Fixed CalendarFormat issue when not using a callback
- Added custom Builders API
- Added DateTime truncation logic
- onDaySelected callback now contains list of events associated with that day
- Added onVisibleDaysChanged callback
- SwipeConfig can now be customized
- Days outside of current month can be shown/hidden
- Refactored code
- Updated example project
- Added SwipeToExpand for CalendarFormat
- AvailableGestures can now be specified (none, horizontalSwipe, verticalSwipe, all)
- Fixed styling issue with SelectedDay on weekends
- Added slide animation for CalendarFormat
- CalendarFormat animation can now be specified (slide, scale)
- Added Monday-Sunday week format
- Week format can now be specified with StartingDayOfWeek enum
- Any style can now be customized
- Grouped properties into Classes
- Refactored code for better readability
- Added full documentation
- Added optional initial Date (defaults to DateTime.now())
- Added animated Swipe gesture
- CalendarFormat can now be enforced programmatically
- Added animations to CalendarFormat change
- Added animations to Date selection
- Added new CalendarFormat - TwoWeeks
- Available CalendarFormats can now be specified
- Refactored code
- Updated example project
- Added chevron button customization
- Calendar header can be hidden now
- Added OnFormatChanged callback
- Added CalendarFormat button customization
- Added CalendarFormat button - toggle between month view and week view
- Additional customization is now available
- Revamped example
- Improved description
- Fully working TableCalendar; example included