react-suitcss
v1.1.1
Published
A base React component for conformance with SUIT CSS naming conventions
Downloads
1,098
Readme
react-suitcss
Build React components that conform to SUIT CSS naming conventions. Express a component's modifiers and states as React props, and react-suitcss will output the proper classes into the DOM.
npm install --save react-suitcss
Usage
Use react-css to create a base component module. Specify which modifiers and states are accepted. For instance, here's how you might create a toolbar component:
var React = require('react');
var SuitCSS = require('react-suitcss');
var Toolbar = React.createClass({
render() {
<SuitCSS
{...this.props}
componentName="Toolbar"
modifiers={['big', 'compact', 'red']}
states={['open', 'closed']}
>
...
</SuitCSS>
}
});
Then you can use your new component like so:
<Toolbar />
// <div class="Toolbar" />
<Toolbar compact />
// <div class="Toolbar Toolbar--compact" />
<Toolbar isOpen />
// <div class="Toolbar is-open" />
<Toolbar compact isOpen />
// <div class="Toolbar Toolbar--compact is-open" />
Available props
componentName
- Base class name.modifiers
- Whitelist of accepted modifiers.states
- Whitelist of accepted states. Whitelist values of the formstate
correspond to properties of the formisState
. So if the whitelist containsopen
andthis.props.isOpen
is true, the DOM element gets classis-open
.- element - String of DOM element to use. Defaults to
div
.
License
MIT