This repository was 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(useitemTitleComponentwith the newopenparameter to add elements when an item is closed) - New props
renderItemandrenderItemTitleif you prefer to use render props instead of components for your items.
Card
- New prop
warning
Drawer
- Wrapped inside
withTriggerElementso you can directly pass atriggerElementprop without wrapping it yourself.
ExpansionPanel
- (!) Remove the prop
flat, it is now the default behavior.
ExpansionPanelItem
- New prop
headerif you want to override the entire header and not just the title - The prop
childrennow 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-sliderwith a custom lighter Slider. - (!) Rename the prop
labelFormatterintotooltipFormatter - New prop
tooltipRangeSeparator - New prop
dotsto show the possible values on the main bar
Spotlight
- (!) Remove the
themeprop, Spotlight is now using the global theme of Thunder UI - (!) Change the default
placeholderfrom "Aller à..." to "Search..." - (!) Remove the
Spotlight/cacheutility function from Thunder UI - (!) Move the
Spotlight/filterutility function from@habx/thunder-ui/Spotlight/filterto@habx/thunder-ui
SpotlightItem
- (!) Rename the prop
focusOnRenderintofocusOnMountwhich is closer from it's behavior (this prop should soon be removed in favor of afowardRefimplementation)
TextArea
- (!) New prop
small, the default font-size is now16px - (!) Remove the prop
borderColor
ThunderProvider
- The prop
themenow 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
GreenKeeperto keep our dependencies up to date - Usage of
BiliandRollupto generate two builds of Thunder UI (ESM and CJS) - Fix the peer dependencies in the build (
react,react-domandstyled-componentsare moved correctly to peer dependencies)
Unit testing
- Switch from
enzymetoreact-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:darkto test the dark theme - Rename command
npm run build-storybookintonpm run storybook:build
Miscellaneous
- Replace TSLint configuration by a custom version of the Habx ESLint configuration.
- Remove
lodash.has,lodash.clone,lodash.memoize,lodash.mergefrom the bundle - Use
theme.getinternally 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:openonToggle
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
withTriggerElementHOC : makesModalorDraweruncontrolled 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 propertybackgroundColorintocolor(it was not the background ifreverse=trueandcolorshould be the main color of any element when there is one)
FontIcon :
- Fix default color (was grey, now is
inheritto match the color of the container)
IconButton :
- Fix property
hoverColorwhich was not working
RadioSelect :
⚠️ Rename propertyisMultiintomulti(to be coherent withsmall,large,errorand every other boolean property)
Select :
⚠️ Rename propertyisMultiintomulti(to be coherent withsmall,large,errorand every other boolean property)
Slider :
- New property
error - Fix property
disabled
TextButton :
- New properties
smallandlarge(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
canRestnow works withisMulti
IconButton :
New component inspired by the Floating Action Button of Material-UI
Menu :
- New property
persistent-boolean (disable theclose on click insidebehavior)
RadioSelect :
- New property
error- boolean
withLabel :
- New property
labelColor
