CoreUI PRO v5.16.0
We are thrilled to announce the release of CoreUI PRO v5.16.0! This major update introduces the brand new Autocomplete component, enhanced Multi-Select functionality with custom templates, significant calendar improvements, and comprehensive documentation updates with schema markup support.
Speed up your responsive apps and websites with fully-featured, ready-to-use open-source admin panel templates—free to use and built for efficiency.
How to Update
To upgrade your project to CoreUI PRO v5.16.0, follow these steps:
- Open your project’s
package.json. - Locate the
@coreui/coreui-proentry under dependencies and update the version number to5.16.0. - Save your changes to the
package.jsonfile. - In your project’s root directory, execute the appropriate command:
- For npm users: Run
npm install - For yarn users: Run
yarn install
- For npm users: Run
What’s New
🚀 New Features
-
Autocomplete Component: Brand new autocomplete component with comprehensive functionality
- Built-in search and filtering capabilities
- Keyboard navigation support with arrow keys and Enter/Escape
- Customizable dropdown positioning and styling
- ARIA accessibility features for screen readers
- Support for custom data sources and dynamic loading
- Configurable debounce timing for performance optimization
-
Multi-Select Custom Templates: Enhanced Multi-Select component with template support
optionsTemplatefor custom option renderingoptionsGroupsTemplatefor custom group label styling- HTML sanitization with
allowListandsanitizeFnoptions - Full customization while maintaining accessibility
🛠 Fixes & Improvements
- Calendar: Fixed year calculation for week selection using proper ISO 8601 standards
- Popover: Fixed issue where popovers with hover and click triggers would close incorrectly on mouseleave
- Date Range Picker: Enhanced event handling for start and end date changes
- Multi-Select: Improved click handling for nested elements in custom templates
- Tooltip: Fixed click trigger toggle behavior for better user experience
♻️ Major Refactors
-
Calendar Utilities: Complete rewrite of week calculation system
- Renamed
getWeekNumber()togetISOWeekNumberAndYear()for ISO 8601 compliance - Enhanced
getMonthDetails()to return proper week structure with year information - Improved week selection accuracy across year boundaries
- Renamed
-
Date Picker Events: Improved event handling architecture
- Enhanced start/end date change event triggering
- Better event timing and consistency
📚 Documentation & Schema Updates
- Schema Markup: Added comprehensive schema markup support for better SEO
- Structured data for components and integration guides
- Enhanced search engine visibility
- New Component Documentation: Complete documentation for Autocomplete component
- Multi-Select Examples: Added custom template examples and usage guides
- Range Component: Added dynamic value display examples
- Laravel Integration: Enhanced integration guide with schema markup
🔧 Build & Development
- Node.js 22: Switched build system to Node.js 22 for better performance
- Sass Mixins: Added missing box-shadow mixin and consolidated multiple none values
- Test Coverage: Updated and enhanced test suites with bug fixes
- Documentation Build: Improved documentation build process and styling
📦 Dependency Updates
This release includes comprehensive dependency updates for security and performance:
Core Dependencies
- Updated
@eslint/markdownfrom^6.6.0to^7.1.0 - Updated
cross-envfrom^7.0.3to^10.0.0 - Updated
eslintfrom^9.30.1to^9.32.0 - Updated
eslint-config-xofrom0.47.0to0.48.0 - Updated
eslint-plugin-unicornfrom^59.0.1to^60.0.0 - Updated
hugo-binfrom^0.144.9to^0.145.1 - Updated
jasminefrom^5.8.0to^5.9.0 - Updated
rollupfrom^4.44.1to^4.46.0 - Updated
stylelintfrom^16.21.0to^16.22.0
🎯 Breaking Changes
Calendar Week System
- ISO 8601 Compliance: Week selection now uses proper ISO 8601 standards
- Function Rename:
getWeekNumber()has been renamed togetISOWeekNumberAndYear() - Return Type Change: The function now returns an object
{ weekNumber, year }instead of just a number
Multi-Select Templates
- New Template System: Custom templates now support HTML sanitization by default
- Security Enhancement: Added XSS protection for custom template content
💡 Migration Guide
Calendar Utilities
If you were using getWeekNumber() directly:
// Before
const weekNum = getWeekNumber(date)
// After
const { weekNumber, year } = getISOWeekNumberAndYear(date)
Multi-Select Custom Templates
To use the new template functionality:
new MultiSelect(element, {
optionsTemplate: (option) => `<span class="custom-option">${option.text}</span>`,
optionsGroupsTemplate: (group) => `<strong>${group.label}</strong>`,
sanitize: true // Enable XSS protection (default)
})
This release represents a significant step forward in component functionality, accessibility, and developer experience. The new Autocomplete component and enhanced Multi-Select capabilities provide powerful tools for building modern, interactive web applications.



