From 6a3ed59fa69526277cae96ae1eeea93087d00f38 Mon Sep 17 00:00:00 2001 From: Adam Wathan Date: Wed, 9 Jan 2019 13:17:49 -0500 Subject: [PATCH] Port shadows module to plugin --- src/defaultPlugins.js | 2 ++ src/generators/shadows.js | 10 ---------- src/plugins/shadows.js | 14 ++++++++++++++ src/utilityModules.js | 2 -- 4 files changed, 16 insertions(+), 12 deletions(-) delete mode 100644 src/generators/shadows.js create mode 100644 src/plugins/shadows.js diff --git a/src/defaultPlugins.js b/src/defaultPlugins.js index a3bb7e6a4..9d74cb31a 100644 --- a/src/defaultPlugins.js +++ b/src/defaultPlugins.js @@ -1,3 +1,4 @@ +import shadows from './plugins/shadows' import svgFill from './plugins/svgFill' import svgStroke from './plugins/svgStroke' import tableLayout from './plugins/tableLayout' @@ -14,6 +15,7 @@ import width from './plugins/width' import zIndex from './plugins/zIndex' export default [ + shadows(), svgFill(), svgStroke(), tableLayout(), diff --git a/src/generators/shadows.js b/src/generators/shadows.js deleted file mode 100644 index b16de5bbb..000000000 --- a/src/generators/shadows.js +++ /dev/null @@ -1,10 +0,0 @@ -import _ from 'lodash' -import defineClass from '../util/defineClass' - -export default function({ shadows }) { - return _.map(shadows, (shadow, modifier) => { - return defineClass(modifier === 'default' ? 'shadow' : `shadow-${modifier}`, { - 'box-shadow': shadow, - }) - }) -} diff --git a/src/plugins/shadows.js b/src/plugins/shadows.js new file mode 100644 index 000000000..9a20bac7c --- /dev/null +++ b/src/plugins/shadows.js @@ -0,0 +1,14 @@ +import _ from 'lodash' + +export default function () { + return function ({ addUtilities, config, e }) { + const utilities = _.fromPairs(_.map(config('shadows'), (value, modifier) => { + const className = modifier === 'default' ? 'shadow' : `shadow-${modifier}` + return [`.${className}`, { + 'box-shadow': value, + }] + })) + + addUtilities(utilities, config('modules.shadows')) + } +} diff --git a/src/utilityModules.js b/src/utilityModules.js index 861a5ba15..9040612de 100644 --- a/src/utilityModules.js +++ b/src/utilityModules.js @@ -33,7 +33,6 @@ import padding from './generators/padding' import pointerEvents from './generators/pointerEvents' import position from './generators/position' import resize from './generators/resize' -import shadows from './generators/shadows' export default [ { name: 'lists', generator: lists }, @@ -71,5 +70,4 @@ export default [ { name: 'pointerEvents', generator: pointerEvents }, { name: 'position', generator: position }, { name: 'resize', generator: resize }, - { name: 'shadows', generator: shadows }, ]