Skip to content

Aksent/modifiers-composer

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

#modifiers-composer

An utility function to compose BEM modifiers in React with EmotionSH or styled-components

Install

# With npm
npm i modifiers-composer

# With yarn
yarn add modifiers-composer

Usage

modifiers-composer

import modifiersComposer from 'modifiers-composer'
import styled from 'react-emotion'

const modifiersComposed = modifiersComposer({
  uppercase: () => `text-transform: uppercase`,
  colorRed: () => `color: red`
})

const Text = styled.div`
  ${props => modifiersComposed(props)};
`

const Container = () => (
  <Text modifiers={['uppercase', 'colorRed']}>
    Hello World!
  </Text>)

withModifiers

import { withModifiers } from 'modifiers-composer'
import styled from 'react-emotion'

const modifiersConfig = {
    uppercase: () => `text-transform: uppercase`,
    colorRed: () => `color: red`
}

const Text = styled.div`
  ${({ modifiers }) => modifiers};
`

const Element = withModifiers(modifiersConfig)(({ modifiers }) => (
  <Text modifiers={['uppercase', 'colorRed']}>
    Hello World!
  </Text>))

About

A utility to compose modifiers with EmotionSH and styled-components

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • JavaScript 100.0%