Releases: fleetbase/ember-ui
v0.3.18
v0.3.17
What's Changed
Full Changelog: v0.3.16...v0.3.17
v0.3.16
What's Changed
Full Changelog: v0.3.15...v0.3.16
v0.3.15
What's Changed
Full Changelog: v0.3.14...v0.3.15
v0.3.14
What's Changed
Full Changelog: v0.3.13...v0.3.14
v0.3.13
v0.3.12
🎯 Major Features
Dashboard Service Refactor
Complete rewrite to support the new Universe service architecture:
- Direct injection of
widgetServiceinstead of going through universe - Updated to use new widget service API
- Proper dashboard cleanup and recreation on route revisit
- Race condition fixes with
droptask modifier
Widget Panel Enhancements
Search & Filter:
- Real-time keyword search for widgets by name and description
@tracked searchQuerywithupdateSearchQueryaction- Improved widget discoverability
Floating Pagination:
- New floating pagination style (bottom-right, rounded, shadowed)
- Reveals horizontal scrollbar for better table navigation
@useTfootPaginationarg for backward compatibility- Default to floating, opt-in to table footer pagination
Thin Scrollbars:
- Consistent 8px scrollbar height for both axes
- Webkit scrollbar styles for modern browsers
- Firefox
scrollbar-width: thinsupport - Dark mode scrollbar colors
🔧 Component Improvements
LazyEngineComponent
- Support for both path-based (lazy) and class-based (immediate) components
- Automatic component registration to engine containers
- Proper engine component lookup
- Helper for use with
{{component}}syntax
RegistryYield
- Converted
yieldablesto computed getter for automatic reactivity - Automatic wrapping of components with
LazyEngineComponent isComponentgetter to detect component types vs menu items- Updated to use
registryService.getRenderableComponents() - Removed event listener approach (now uses reactive getters)
LoadEngine Component
- New component for explicit engine loading
- Complements
LazyEngineComponentfor different use cases
🐛 Bug Fixes
Dashboard Service
- Fixed duplicate dashboard ID errors with
droptask modifier - Added try-catch in
_createDefaultDashboardfor race conditions - Proper state checks (
isDeleted,isDestroying,isDestroyed) - Fixed reset() to unload dashboard-widgets before dashboards
- Prevents identity map conflicts when recreating dashboards
Widget Panel
- Fixed
availableWidgetsreactivity by converting to getter - Use
args.defaultDashboardIdfirst, then fallback tothis.defaultDashboardId - Ensures widgets registered after component creation are visible
- Handles string-represented widgets and components
RegistryYield
- Fixed TypeError by removing
registryService.onevent listener - RegistryService doesn't have Evented mixin, now uses reactive getters
- Components registered after construction now properly yielded
Table Styling
- Fixed floating pagination spacing (reduced padding, adjusted margins)
- Applied
overflow-xto.next-table-wrapperinstead of table - Horizontal scrollbar now visible and not hidden by pagination
- Added
overflow-y: visibleto prevent vertical scroll issues
🎨 UX Improvements
- Minor UX tweaks to widget panel component
- Improved widget panel layout and spacing
- Better visual hierarchy for widget selection
- Enhanced table navigation with floating pagination
What's Changed
- Update allowed SQL functions in computed column editor by @roncodes in #102
- feat: Update for Universe Service Refactor by @roncodes in #103
Full Changelog: v0.3.11...v0.3.12
v0.3.11
Ember UI v0.3.11 Release Notes
This release of Ember UI introduces a host of new features and improvements designed to enhance the user experience and provide developers with more powerful tools. Key additions include advanced table functionality, a comprehensive scheduling UI, new filter components, and a powerful computed columns feature for the query builder.
✨ What's New
Advanced Table Functionality
- Multi-Column Sorting: Users can now sort tables by multiple columns by holding the
Shiftkey while clicking on column headers. A sort priority badge indicates the order of sorting. - Horizontal Scrolling and Sticky Columns: Tables with many columns are now horizontally scrollable. The
stickyproperty can be added to column definitions to make columns stick to the left or right during scroll. This includes a new@checkboxStickyargument to make the selection checkbox sticky.
Core Scheduling UI
A suite of new components for building scheduling interfaces:
ScheduleCalendar: A full-featured calendar component with FullCalendar integration, supporting drag-and-drop and resource timeline views.ScheduleItemCard: A flexible card for displaying schedule items.AvailabilityEditor: An interface for managing availability.
These components are backed by a new scheduling service and a set of Ember Data models for a complete scheduling solution.
New Filter Components
Filter::MultiInput: A tag-based input for creating comma-delimited lists of filter values.Filter::Range: A dual-slider component for selecting numeric ranges.
Computed Columns in Query Builder
- Computed Column Editor: A new UI for creating and editing computed columns in the query builder. It includes real-time expression validation and a reference for allowed functions.
- Integration with Query Builder: Computed columns are now integrated into the query builder, allowing for more powerful and flexible data queries.
🚀 Improvements and Fixes
- Styling: Various styling improvements have been made to the range filter, column sorting, and badges to align with the Fleetbase UI standard.
- Bug Fixes: This release includes several bug fixes related to sticky column positioning, pagination footer behavior during horizontal scroll, and linter errors.
- Performance: Debug
console.logstatements have been removed from the codebase for a cleaner and more performant experience.
🧑💻 Developer Notes
- The table component now uses a
sortColumnsarray to manage sorting state, and the@onSortcallback will receive a comma-delimited string for multi-column sorts. - The new scheduling components are highly customizable via named blocks and are designed to be used in any Fleetbase extension.
- The
stickyproperty in column definitions can be set totrue,'left', or'right'to control sticky behavior.
📝 Merged Pull Requests
- #94: feat: Add sort functionality to Table component
- #95: feat: Add Core Scheduling UI Components
- #97: feat: Implement multiple column sort
- #98: feat: Add multi-input and range filter components
- #99: feat: Implement horizontal scrolling and sticky columns
- #100: feat: Add computed columns UI to query builder
- #101: remaining final changes
Full Changelog: v0.3.10...v0.3.11
v0.3.10
v0.3.9
What's Changed
- Fix place coordinates not saving when selected from map by @valentinMERCIER in #91
- v0.3.9 by @roncodes in #92
Full Changelog: v0.3.8...v0.3.9