tailwindcss/src/plugins/margin.js

35 lines
1.2 KiB
JavaScript
Raw Normal View History

2019-01-09 21:13:57 -05:00
import _ from 'lodash'
import prefixNegativeModifiers from '../util/prefixNegativeModifiers'
2019-01-09 21:13:57 -05:00
2019-02-28 12:05:36 -05:00
export default function() {
return function({ addUtilities, e, theme, variants }) {
2019-01-09 21:13:57 -05:00
const generators = [
(size, modifier) => ({
[`.${e(prefixNegativeModifiers('m', modifier))}`]: { margin: `${size}` },
2019-01-09 21:13:57 -05:00
}),
(size, modifier) => ({
[`.${e(prefixNegativeModifiers('my', modifier))}`]: {
'margin-top': `${size}`,
'margin-bottom': `${size}`,
},
[`.${e(prefixNegativeModifiers('mx', modifier))}`]: {
'margin-left': `${size}`,
'margin-right': `${size}`,
},
2019-01-09 21:13:57 -05:00
}),
(size, modifier) => ({
[`.${e(prefixNegativeModifiers('mt', modifier))}`]: { 'margin-top': `${size}` },
[`.${e(prefixNegativeModifiers('mr', modifier))}`]: { 'margin-right': `${size}` },
[`.${e(prefixNegativeModifiers('mb', modifier))}`]: { 'margin-bottom': `${size}` },
[`.${e(prefixNegativeModifiers('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
}
}