This repository has been archived by the owner on Jun 11, 2021. It is now read-only.
Releases: habx/thunder-ui
Releases · habx/thunder-ui
v4.15.0
v4.0.0
Main improvements
- Codebase now 100% based of hooks instead of class components
- Bundle size down to 30kb Gzipped
- Full theme customization and dark theme available out of the box
Components
ArrayInput
New implementations based on ExpandablePanel
and ExpandablePanelItem
.
- (!) Remove
itemDescriptionComponent
(useitemTitleComponent
with the newopen
parameter to add elements when an item is closed) - New props
renderItem
andrenderItemTitle
if you prefer to use render props instead of components for your items.
Card
- New prop
warning
Drawer
- Wrapped inside
withTriggerElement
so you can directly pass atriggerElement
prop without wrapping it yourself.
ExpansionPanel
- (!) Remove the prop
flat
, it is now the default behavior.
ExpansionPanelItem
- New prop
header
if you want to override the entire header and not just the title - The prop
children
now accepts render prop
Modal
- The entering animation is now correctly triggered even if you instantiate the Modal with open=true
NavBar
- (!) Remove the prop
defaultMobileIsOpen
Notification
- (!) Remove the prop
illustration
, you can directly use the propchildren
Progress
Component removed from Thunder UI
Slider
- Replace the previous wrapper of
rc-slider
with a custom lighter Slider. - (!) Rename the prop
labelFormatter
intotooltipFormatter
- New prop
tooltipRangeSeparator
- New prop
dots
to show the possible values on the main bar
Spotlight
- (!) Remove the
theme
prop, Spotlight is now using the global theme of Thunder UI - (!) Change the default
placeholder
from "Aller à..." to "Search..." - (!) Remove the
Spotlight/cache
utility function from Thunder UI - (!) Move the
Spotlight/filter
utility function from@habx/thunder-ui/Spotlight/filter
to@habx/thunder-ui
SpotlightItem
- (!) Rename the prop
focusOnRender
intofocusOnMount
which is closer from it's behavior (this prop should soon be removed in favor of afowardRef
implementation)
TextArea
- (!) New prop
small
, the default font-size is now16px
- (!) Remove the prop
borderColor
ThunderProvider
- The prop
theme
now accept 'light' or 'dark' to easily use the default light theme of dark theme
Title
- New prop
error
- New prop
warning
CI & deployment
- Usage of
GreenKeeper
to keep our dependencies up to date - Usage of
Bili
andRollup
to generate two builds of Thunder UI (ESM and CJS) - Fix the peer dependencies in the build (
react
,react-dom
andstyled-components
are moved correctly to peer dependencies)
Unit testing
- Switch from
enzyme
toreact-testing-library
- New command
npm run test:coverage
- New components tested :
ArrayInput
,ExpansionPanel
,Navbar
,Slider
,Tabs
Storybook
- Custom styling of the Storybook UI based on our current Thunder UI theme.
- New command
npm run storybook:dark
to test the dark theme - Rename command
npm run build-storybook
intonpm run storybook:build
Miscellaneous
- Replace TSLint configuration by a custom version of the Habx ESLint configuration.
- Remove
lodash.has
,lodash.clone
,lodash.memoize
,lodash.merge
from the bundle - Use
theme.get
internally to allow custom themes instead of hardcoded colors
Controlled expansion panel
Expansion panel can now have multiple opened items and can be controlled from outside 🎉
ExpansionPanel
New props:multiOpen
ExpansionPanelItem
New props:open
onToggle
Add List component
Add List
and ListItem
component
- Slider
Fix react warnings
Improve modal, drawer and select
Modal & Drawer
Use createPortal
by default
Select
Add optionDisabled
props and make options container fixed
First opened version of Thunder UI
v3.0.0 Releasing v3.0.0
Add indicators on Slider component
2.29
- add
withTriggerElement
HOC : makesModal
orDrawer
uncontrolled through a triggerElement passed in props (not applicable to the Menu since it's already uncontrolled)
Drawer:
- fix transition (closing is now pass to children as it should)
Modal:
- add a close button
Select
- add select all
v2.25.0
ArrayInput :
- New property
iconColor
Button :
⚠️ New propertylarge
(which gives the previous default size, the default size is now smaller)⚠️ Rename propertybackgroundColor
intocolor
(it was not the background ifreverse=true
andcolor
should be the main color of any element when there is one)
FontIcon :
- Fix default color (was grey, now is
inherit
to match the color of the container)
IconButton :
- Fix property
hoverColor
which was not working
RadioSelect :
⚠️ Rename propertyisMulti
intomulti
(to be coherent withsmall
,large
,error
and every other boolean property)
Select :
⚠️ Rename propertyisMulti
intomulti
(to be coherent withsmall
,large
,error
and every other boolean property)
Slider :
- New property
error
- Fix property
disabled
TextButton :
- New properties
small
andlarge
(the default size remain the same)
TextInput :
⚠️ New propertysmall
(the previous default size is now the small one)- New property
error
- Fix property
disabled
v2.24.0
Select :
- New design
- New property
filterable
- boolean (no input to filter the options by default) - New property
compact
- boolean (more space between the options without the compact mode) - New property
error
- boolean - The property
canRest
now works withisMulti
IconButton :
New component inspired by the Floating Action Button
of Material-UI
Menu :
- New property
persistent
-boolean (disable theclose on click inside
behavior)
RadioSelect :
- New property
error
- boolean
withLabel :
- New property
labelColor