yarn polished 4.0.0-beta.1
Introducing polished.js v4 beta!

latest releases: 4.3.1, 4.3.0, 4.2.2...
3 years ago

Introducing polished.js v4 beta!

We're super stoked to announce that polished.js v4 is officially in beta! It is available via your package manager of choice:

npm install polished@next
yarn add polished@next

Release Highlights

New Modules

  • New Module: important: Helper for targeting rules in a style block generated by polished modules that need !important-level specificity. Can optionally specify a rule (or rules) to target specific rules.
  • New Modules: easeIn, easeOut, easeInOut: Will replace timingFunctions to allow for smaller modules for specific use cases instead of the larger, more general original implementation. (#402)

Improvements & Bug Fixes

  • between Improvement: now properly throws an error when mixed units are used for from/toSize and min/maxScreen. This also fixes the same bug in fluidRange. (#445)
  • triangle Improvement: once again properly works with inherit by setting individual properties when inherit is used. (#430)
  • stripUnit Improvement: now only does what it says on the tin: strips a unit from a provided CSS value. Typings are now appropriately set. (#451)
  • getValueAndUnit Improvement: canceled deprecation of this and it now does what it says on the tin: returns the value and unit as an array. Typings are now appropriately set. (#451)
  • ellipsis Improvement: now accepts a lines parameter to truncate multi-line text.

Future Deprecations

  • timingFunctions: This will be deprecated in v5 in favor of easeIn, easeOut, easeInOut.

Breaking Changes

  • fontFace: default is now to look for a local font of the same family-name before downloading. Can be turned
    off by passing null to localFonts. Previously, if localFonts was not passed explcitily, it would never check.
  • cssVar: deprecated passThrough in favor of being able to pass a defaultValue to better mimic CSS variable functionality.
  • math: square root, factorial, and exponent have been moved to a separate symbol preset found at math/presets/exponentialSymbols/. This can be passed a second parameter to math to restore this functionality.
  • readableColor: now defaults strict to true be default.

Contributor Improvements

  • Testing: We've moved away from snapshot testing to explicit expects. This should make understanding if your tests are truly passing much easier.
  • prettier: We've implemented .prettierrc and .prettierignore to better control formatting in development environments.
  • Build Speed: Build speed has been improved my removing extraneous linting scripts.

Beta Period

We are releasing this as a beta to allow the community to test the changes, and make any last-minute accommodations for the breaking changes. In the past, our biggest challenge with any new release has been typings. We are hoping this beta will allow those issues to be addressed before a full release. We expect this beta period to last around 2 weeks.

Coming In v5

v5 will be focused completely on size, speed, and documentation. The biggest change will be the move to submodules. Polished has grown into a large library of helpers, mixins, and color functions. We find ourselves limiting functionality in order to keep bundle size down. By moving to submodules we will be able to expand functionality without worrying about the size of the library and provide small bundle impacts for projects that don't implement tree-shaking. As part of this we will finally be revamping the docs to provide dedicated sections for each module with better usage examples.

Don't miss a new polished release

NewReleases is sending notifications on new releases.