From c8802df40d64ccb52f738e4ce8937f00b6a86012 Mon Sep 17 00:00:00 2001 From: Adam Wathan Date: Wed, 9 Jan 2019 21:15:06 -0500 Subject: [PATCH] Port leading module to plugin --- src/defaultPlugins.js | 2 ++ src/generators/leading.js | 10 ---------- src/plugins/leading.js | 13 +++++++++++++ src/utilityModules.js | 2 -- 4 files changed, 15 insertions(+), 12 deletions(-) delete mode 100644 src/generators/leading.js create mode 100644 src/plugins/leading.js diff --git a/src/defaultPlugins.js b/src/defaultPlugins.js index b7ac5d44c..d9dca45d9 100644 --- a/src/defaultPlugins.js +++ b/src/defaultPlugins.js @@ -1,3 +1,4 @@ +import leading from './plugins/leading' import margin from './plugins/margin' import maxHeight from './plugins/maxHeight' import maxWidth from './plugins/maxWidth' @@ -31,6 +32,7 @@ import zIndex from './plugins/zIndex' export default function (config) { return [ + config.modules.leading === false ? () => {} : leading(), config.modules.margin === false ? () => {} : margin(), config.modules.maxHeight === false ? () => {} : maxHeight(), config.modules.maxWidth === false ? () => {} : maxWidth(), diff --git a/src/generators/leading.js b/src/generators/leading.js deleted file mode 100644 index ce661b93a..000000000 --- a/src/generators/leading.js +++ /dev/null @@ -1,10 +0,0 @@ -import _ from 'lodash' -import defineClass from '../util/defineClass' - -export default function({ leading }) { - return _.map(leading, (value, modifier) => { - return defineClass(`leading-${modifier}`, { - 'line-height': `${value}`, - }) - }) -} diff --git a/src/plugins/leading.js b/src/plugins/leading.js new file mode 100644 index 000000000..5dc9a4df0 --- /dev/null +++ b/src/plugins/leading.js @@ -0,0 +1,13 @@ +import _ from 'lodash' + +export default function () { + return function ({ addUtilities, config, e }) { + const utilities = _.fromPairs(_.map(config('leading'), (value, modifier) => { + return [`.${e(`leading-${modifier}`)}`, { + 'line-height': value, + }] + })) + + addUtilities(utilities, config('modules.leading')) + } +} diff --git a/src/utilityModules.js b/src/utilityModules.js index 348566aa9..ba1e94731 100644 --- a/src/utilityModules.js +++ b/src/utilityModules.js @@ -17,7 +17,6 @@ import float from './generators/float' import fonts from './generators/fonts' import fontWeights from './generators/fontWeights' import height from './generators/height' -import leading from './generators/leading' export default [ { name: 'lists', generator: lists }, @@ -39,5 +38,4 @@ export default [ { name: 'fonts', generator: fonts }, { name: 'fontWeights', generator: fontWeights }, { name: 'height', generator: height }, - { name: 'leading', generator: leading }, ]