Releases: f5/unovis
Release 1.3.0
Unovis 1.3 introduces Vue support and a new pattern theme to further improve our support for accessibility features.
Release Highlights
🎉 Vue 3 support
Long-awaited support for Vue, the third most popular front-end UI framework. Kudos to our community member @zernonia for this amazing contribution!
👨🎨 Patterns
A new theme with pattern fills that can be enabled by adding the theme-patterns
class to the body
element of your document. See the documentation and this pull request for more details.
Other changes
Other changes were aimed at improving the overall stability of the library making the codebase more robust to future changes
- Refactoring: From Config Classes to Objects #279
- Refactoring: No Implicit Any #290
- Component | Tooltip | Fix: Prevent container overflow when viewport size is reduced #292
- Component | NestedDonut | Fix: TS errors #296
- Svelte: Fixing SingleContainer props and adding support for
class
property #294 - Theme | Patterns: Adjust injected SVG style #298
Full Changelog: 1.2.2...1.3.0
Release 1.2.3
This patch release contains the fix for the "hidden tooltip overflows viewport" issue descried in #286
Release 1.2.2
This release of Unovis contains a few tweaks and fixes. See details below.
What's new
- Component | BulletLegend: Added support for bullet shapes #280
- Component | Axis: Setting label and tick text color via config #268
- Container | XY: Smarter
preventEmptyDomain
handling #270 - Utils | Text: Supporting
fontWeight
in UnovisText; Supportingx
andy
inUnovisTextOptions
(it was supported only byUnovisTextFrameOptions
before). #274
Fixes:
- Component | Graph: Autofit the layout if it was recalculated #284
- Component | Nested Donut | Using
fill-opacity
for segment shading #277
Full Changelog: 1.2.1...1.2.2
Release 1.2.1
Unovis 1.2.1 is a minor release containing bug fixes and some minor enhancements to existing components.
Enhancements
- Component | Crosshair: Adding stroke-width CSS variables #245
- Scatter: Configuration property to hide / show overlapping labels; Doc tweakshttps://github.com//pull/253
- Chord Diagram | Adding forced highlighting to config #258
- Vulnerability fixes #246
Fixes
- Component | Nested Donut: Alignment #252
Website
Release 1.2.0
Unovis 1.2.0
A new version of Unovis is waiting for you on NPM! This update introduces a new component: Nested Donut (aka Sunburst). It also adds better support for accessibility features, allows you to apply additional styles to axes, and much more.
Release highlights:
🍩 New component: Nested Donut
Nested Donut is a captivating graphical representation that displays hierarchical data in a circular format. Its nested design allows for multiple concentric rings, each representing a different level of data, enabling users to explore relationships and proportions effortlessly.
Check out Nested Donut's documentation and example to learn how to use it.
👓 Accessibility: Supporting ARIA tags #214
You can now set the aria-label
attribute for your visualization by providing the ariaLabel
config property to the container you use. Unovis will automatically apply role="figure"
attribute to the container element, making it accessible to assistive technologies.
Screen.Recording.2023-05-26.at.10.56.18.AM.web.mp4
🔠 New CSS variables for styling Axis #203 #223
If you want to customize the width of your tick and grid lines, you can do so using the new --vis-axis-tick-line-width
and --vis-axis-grid-line-width
variables.
The color of the domain line by default equals the tick color (that can be specified with --vis-axis-tick-color
), but Unovis 1.2 allows you to explicitly set it via --vis-axis-domain-color
.
Additionally you can apply custom cursor
and text-decoration
to your tick labels with --vis-axis-tick-label-cursor
and --vis-axis-tick-label-text-decoration
variables.
Other changes
Enhancements
- Component | LeafletMap: Adding
getExpandedCluster
public method (#205) - Component | Line: Better enter transition for broken lines #227
- Component | Scatter: Fixing the missing points issue #227
- Component | Scatter: Stroke color and width support #232
Bug Fixes:
- Container | XY: Calling render right after initialization if there are axes or components with data (#212)
- @unovis/svelte: Updating component lifecycles to prevent DOM related errors with SvelteKt (SSR) #216
Other
Release 1.1.1
Unovis 1.1.1
This release contains several fixes and enhancements to improve the overall functionality of Unovis.
Fixes:
- Axis: Calling tickFormat only for the actual ticks;
- Axis: Fixed tickFormat calling when tickValues are explicitly specified;
- Website | Gallery: Fixed expandable Sankey data model
- Container: Set up Resize Observer in render() instead of constructor;
- Container: Fallback to DEFAULT_CONTAINER_HEIGHT if the height is not defined;
- Data Utils: Fixed cloning of arrays.
Enhancements:
- Core: New text rendering utils and refactoring;
- Text Utils: Added configurable force word break option;
- Text Utils: Prevent empty first line when the first word is too long;
- Dev Demo: Removed category exports from example files and added transition component
- Examples: Added color map and attributes example for LeafletMap;
- LeafletMap Component: Added custom attributes support, fixing config initialization, handling expanded cluster on
setData
.
PR history:
- Website | Gallery: Fix expandable sankey data model by @reb-dev in #185
- Component | LeafletMap: POC of having an object of CSS variable names by @rokotyan in #171
- Dev Demo | Adding data transition pages by @reb-dev in #189
- POC: Universal text utils; Refactoring by @rokotyan in #182
- Component | Leaflet Map: Custom attributes support, config initialization fix, handling expanded cluster on
setData
by @rokotyan in #188 - Utils | Clone Deep: Fixing cloning of arrays by @rokotyan in #192
- Utils | Text: Preventing empty first line when the first word is too long by @rokotyan in #193
- Component | Axis: Calling
tickFormat
only for the actual ticks by @rokotyan in #197 - Container: Fixing Reize Observer configuration by @rokotyan in #195
- Utils | Text: Adding configurable force word break option by @rokotyan in #196
- Component | Axis: Fixing
tickFormat
calling whentickValues
are set explicitly by @rokotyan in #199
Full Changelog: 1.1.0...1.1.1
Release 1.1.0
Unovis 1.1.0
We're excited to announce the release of Unovis 1.1.0
! This update brings new features, enhancements, and bug fixes that improve the overall user experience and stability of the library.
Release highlights:
-
🦌 ELK support for Graph
We've added ELK integration to our Graph component. Now you can render complex hierarchical graphs ELK is famous for!
-
🥨 New component: Multi-Level Chord Diagram
Multi-Level Chord Diagram can display hierarchical relationships and interactions between multiple entities, often used to visualize complex systems or networks. It showcases the flow of data or connections between different levels, allowing users to understand the intricacies of interconnected components and their relative importance within the system.
-
👋 Goodbye
lodash
Unovis doesn't have
lodash
as it's dependency anymore saving precious 90KB (unzipped) of your app bundle!
Pull Request History:
New Features
- Component | Graph: ELK Support by @rokotyan (#161)
- Chord Diagram: Refactoring, Docs, Examples by @reb-dev (#105)
Enhancements
- Goodbye lodash by @rokotyan (#100)
- Component | Timeline: Fixing odd rows fill color by @rokotyan (#145)
- Component | LeafletMap: Calling fitView and fitToPoints in the next frame by @rokotyan (#148)
- Code Quality: Enabling strictFunctionTypes by @rokotyan (#158)
- React | Tweaks: Supporting style and className; Removing @emotion/css dependency by @rokotyan (#162)
- Component | LeafletMap | Styles: Updating MapLibreArcticLight style by @rokotyan (#165)
- Component | LeafletMap: Configurable inner label color by @rokotyan (#156)
- Component | Chord Diagram: Better accessor support for non-leaf nodes by @reb-dev (#160)
- Website: Updating Docusaurus and fixing editUrl by @rokotyan (#175)
- Container | Core, Single: Setting SVG size in render() by @rokotyan (#174)
Bug Fixes:
- Component | Graph | Link fixes by @reb-dev (#151)
- React: Fixing double-render on component initialization by @rokotyan (#154)
- React: Fixing component initialization flow by @rokotyan (#164)
- Component | Chord Diagram: Fixing invisible nodes by @reb-dev (#169)
Other
Release 1.0.3
Version 1.0.3
contains multiple fixes for Graph, Donut, Timeline, LeafletMap, XYLabels components, and the React adaptor.
What's new:
- Component | Graph: Configurable node labels trimming #121
- Component | Flow Legend: Supporting custom arrow color, padding, ... #130
Fixed:
- Component | XYLables: Setting stroke via CSS variables #99
- Component | Donut: Rendering empty segments #116
- Component | Graph: Fixing labels rendering for links, configurable label text color #119
- Component | Timeline: Enabling pointer-events for lines even when no events were set up #122
- Component | Timeline: Changing the way we handle scrolling #138
- Component | Leaflet: Fix rendering logic for raster files #136
- React: Fix rendering issue #109 (Unovis React | Components only update when data is passed to container #108)
- @unovis/react: Handling undefined and null children when comparing props #125
Website:
- Website: Adding Search #118
Other
- Dev: More dev examples added
Release: 1.0.2
What's new:
Fixed:
- Component | Axis: Handling interrupted transitions #85
- Component | Graph: Node icon color when using CSS variables #90
- Component | Graph: Cancelling render if the component has been destroyed #93
- Svelte: More error-proof component lifecycle #89
Website:
- Docs | Graph: Custom SVG nodes #85
- Docs | Intro: Adding information about
types
intsconfig.json
Other
- Dev: Better publishing workflow #91
Release 1.0.1
What's new:
- Styles: Large and Extra Large themes #62
Fixed:
- Angular integration: Type errors when importing into an Angular app with the "strict" option enabled in
tsconfig.json
#81 - Svelte Integration: Fixed unused variable console warnings #65
- Component | LeafletFlowMap: Fixing the
destroy
method (making the component compatible with React 18 Strict Mode) #82 - Component | Timeline: Console warning when the item length is zero #72
- Component | Graph: Supporting node fill set with a
url()
or CSS variable #83 - Component | TopoJSONMap: Console errors when the width and height of the container is zero (i.e. when it's hidden) #78
Website:
- New doc page: Bullet Legend #61
- Gallery | Open in StackBlitz: Updated configuration for Angular examples #73
Other
- Dev app #60