-
-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Labels
Description
Goals
- Significantly simplify and streamline APIs and concepts (remove unimportant methods, improve names/interfaces)
- Remove opinionated defaults (e.g. default theme spec).
- Improve types (promote static usage of
uinix-uiwhile offering dynamic/friendly hooks) - Improve docs
- Improve tests and coverage
New Features
- New
configuration (enableCssVariables,namespace). -
loadAPI now returns a cleanup function (i.e. "unload").
Breaking Changes
Removed
- Remove
styles.typography(also removes rendering font support).- Rendering
styles.typography.fontFacesis naturally removed (consumers should handle rendering/loading fonts). styles.typography.global is naturally removed (just useglobalStyles`).useTypographyVarianthook is naturally removed.Text.variantno longer reads fromstyles.typography.variantsand simply reads fromstyles.variants.
- Rendering
- Remove default theme spec (consumers must explicitly provide one).
- Remove unvaluable
create*methods (e.g.createStyles,createTheme,createIcons,createConfig). -
mergeutil removed, install or import fromuinix-fpinstead. - Remove all
use*hooks (it's better for consumers to directly access theirsystemstatically).
Changed
-
styles.breakpointsis now moved toconfig.responsiveBreakpoints. -
styles.globalis renamed toglobalStyles. -
Iconno longer conditionally renders asbuttonordiv(consumers now control this). -
createSystemis removed andloadis renamed tocreateSystem. -
useVarianthook is renamed touseStyleVariant. -
styles.variantsis removed.useStyleVarianthook directly accessesstylesrules. - Components
variantprop is renamed tostyleVariant(interoperable withstyles,stylePropsprops).- Style prop precedence now follows with the following importance:
style < styleVariant < styles < shorthandProp