tailwindcss/src/plugins/margin.js

34 lines
1,014 B
JavaScript
Raw Normal View History

2019-01-09 21:13:57 -05:00
import _ from 'lodash'
2019-02-28 12:05:36 -05:00
export default function() {
2019-04-24 16:37:13 -04:00
return function({ addUtilities, className, theme, variants }) {
2019-01-09 21:13:57 -05:00
const generators = [
(size, modifier) => ({
2019-04-24 16:37:13 -04:00
[className('m', modifier)]: { margin: `${size}` },
2019-01-09 21:13:57 -05:00
}),
(size, modifier) => ({
2019-04-24 16:37:13 -04:00
[className('my', modifier)]: {
'margin-top': `${size}`,
'margin-bottom': `${size}`,
},
2019-04-24 16:37:13 -04:00
[className('mx', modifier)]: {
'margin-left': `${size}`,
'margin-right': `${size}`,
},
2019-01-09 21:13:57 -05:00
}),
(size, modifier) => ({
2019-04-24 16:37:13 -04:00
[className('mt', modifier)]: { 'margin-top': `${size}` },
[className('mr', modifier)]: { 'margin-right': `${size}` },
[className('mb', modifier)]: { 'margin-bottom': `${size}` },
[className('ml', modifier)]: { 'margin-left': `${size}` },
2019-01-09 21:13:57 -05:00
}),
]
const utilities = _.flatMap(generators, generator => {
return _.flatMap(theme('margin'), generator)
2019-01-09 21:13:57 -05:00
})
addUtilities(utilities, variants('margin'))
2019-01-09 21:13:57 -05:00
}
}