Plugin Architecture & Decoupling
This release introduces a new plugin-based architecture, further reducing the core bundle size and providing greater flexibility. Core features have been extracted into independent, optional packages.
New Plugin Packages (v1.0.0)
@dayflow/plugin-drag: Handles all drag-and-drop interactions (move, resize, and create).@dayflow/plugin-keyboard-shortcuts: Provides keyboard navigation and shortcuts support.@dayflow/plugin-localization: Dedicated package for multi-language support and internationalization.@dayflow/plugin-sidebar: Extracts the sidebar UI and logic into a standalone plugin.
New Features & Enhancements
- Enhanced Visibility Control:
- Added
onVisibleRangeChangecallback with areasonparameter (scroll vs. navigation). - Marked
onVisibleMonthChangeas deprecated in favor of the more flexible range change callback.
- Added
- Improved API: Simplified framework wrappers by removing the
sidebarConfigattribute (now handled via the sidebar plugin). - UI Refresh: Updated the view switching button styles for a more modern look and feel.
Fixed
- Accessibility: Fixed an event scaling issue when using the keyboard
Tabkey for navigation. - Search: Improved search result location accuracy within the calendar views.
- Documentation: Comprehensive updates to plugin documentation and multi-language guides.
Breaking Changes
- Feature Extraction: Drag-and-drop, keyboard shortcuts, and the sidebar are no longer included in
@dayflow/coreby default. You must install and register the corresponding plugins to retain these features. - Sidebar Configuration: The
sidebarConfigprop has been removed from framework adapters. Configuration is now passed directly to the@dayflow/plugin-sidebarduring initialization.
What's Changed
- feat: onVisibleRangeChange callback by @Zoranais in #52
- feat: extract (locale, keyboard-shortcut, sidebar, drag&drop) to independent package by @JayceV552 in #53
New Contributors
Full Changelog: v3.0.0...v3.1.0