- Force mode for plugins
className
prefix is now an attribute of StyleContainer (_defaultClassPrefix
)- friendlyClassName-plugin allows custom
className
-template ( #241 )
- introducing react-look-test-utils
- fixed a bug preventing dynamic array values to render ( #243 )
- Added
StyleSheet.renderToString
to prerender your CSS for server-side rendering - Vendor-prefixer no longer are simple plugins but got their own config key
config.prefixer
- Providing two build-in Prefixer classes
- Support for stateless functional Components without ES2015 classes under the hood
- Now uses its own
StyleContainer
to cache and resolve static and dynamic styles on React Native - Now providing UMD builds
- Stateful Selector now can be combined
- improved rendering performance
- removed additional wrapper within
<LookRoot>
( #217 ) - added Stateful Selectors-plugin to create selectors as a function of
props
,state
andcontext
- added Static Prefixer-plugin to use inline-style-prefix-all by default
StyleSheet.toCSS
got deprecated. It was renamed toStyleSheet.addCSS
StyleSheet.addCSS
support static CSS strings (for third-party & legacy support) ( #209 )
- 5 new React Native mixins:
blank
,empty
,firstLetter
,before
andafter
Look was split into 2 different packages as it now fully supports React Native again.
- react-look
Used for web Component styling withreact-dom
- react-look-native
Used for native Component styling withreact-native
- Fixed
friendlyClassName
to also transform custom Components
While those changes might seem huge, it still is quite easy to update.
- Uses
className
instead oflook
- Use
StyleSheet.combineStyles
instead of an array passed StyleSheet.create
only accepts styles, no Component anymore- Uses
<LookRoot>
-Component in favor oflookRoot: true
- Pass config with
<LookRoot config={config}>
instead oflookConfig
on root-Component - Everything shipped with
react-look/addons
comes withreact-look
directly
- Huge performance improvements
- Now supports every pseudo class
- LVHA-aware pseudo classes
- Less bandwidth for server-side rendering
- Improved debugging with friendlyClassName-plugin
- New documentation & Getting Started guide
- Now using lodash utility methods
- Third-party
context
gets passed correctly ( #190 ) - Fixed plugin resolving ( #185 )
- Fixed
@font-face
rendering bug - Fixed a bug that prevented mixins to resolve correctly
- added support for hot module replacement
- fixed a bug that prevents nested stateful values to resolve correctly
- upgraded devTools (docs soon)
- added a linter plugin based on inline-style-linter
- fixed a bug that prevents children to render ( #159 )
- fixed a bug that caused dynamically generated custom
style
-props to render wrong ( #160 ) - now using style-transform to perform object-to-CSS transformations
- initial server-side media query now use a
!important
-flag to overwrite inline styles
- server-side rendering support
- new package structure with configuration presets
- updated inline-style-prefixer to 0.5.4
:valid
,:invalid
,:in-range
and:out-of-range
pseudo classes- Switched to Webpack for the demo
- Updated to Babel 6
- configuration can now be passed as a prop named
lookConfig
- updated inline-style-prefixer to 0.5.2
- fixed a bug when resolving stateful styles
- pass a custom
<style></style>
DOMElement within your Look config as a global StyleSheet if doing server-side rendering
- platform queries now allow multiple platforms e.g.
@platform ios android
- platform queries
@platform
- keyframes API
StyleSheet.keyframes
- font-face API
StyleSheet.fontFace
- Huge documentation refactoring
- Renamed
customProperty
tomixin
- updated inline-style-prefixer
- stateful styles now support
context
as third parameter - Polyfill to support any CSS pseudo class by adding a global CSSRule
- Fixed nested plugin resolving
- Fixed media query automatic rerendering
- Added new pseudo classes (
:target
,:first-letter
,:contains
,:substr
,:blank
) - Units are automatically added when using
StyleSheet.toCSS
StyleSheet.create
's scope can now also be as string. AddstyleScope: /* stringScope */
to your config.- The config object can now be composed as it assigns directly.
- Small bugfix that prevented
:focus
to work.
- all new plugin system
- scoped styles and performant style resolving
- stateless wrapper by passing a config object
Actually a lot of fast development happened in the beginning which is why there was no changelog at all.