From fd203a8906251046b46e9137aa3dc60ccbb3dc43 Mon Sep 17 00:00:00 2001 From: AlexVipond Date: Thu, 27 Jun 2019 19:44:38 -0600 Subject: [PATCH] support negative prefix for box shadow and letter spacing --- src/plugins/boxShadow.js | 3 ++- src/plugins/letterSpacing.js | 3 ++- src/util/prefixNegativeModifiers.js | 6 +++++- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/src/plugins/boxShadow.js b/src/plugins/boxShadow.js index abfd9097e..5309236aa 100644 --- a/src/plugins/boxShadow.js +++ b/src/plugins/boxShadow.js @@ -1,4 +1,5 @@ import _ from 'lodash' +import prefixNegativeModifiers from '../util/prefixNegativeModifiers' export default function() { return function({ addUtilities, e, theme, variants }) { @@ -6,7 +7,7 @@ export default function() { _.map(theme('boxShadow'), (value, modifier) => { const className = modifier === 'default' ? 'shadow' : `shadow-${modifier}` return [ - `.${e(className)}`, + `.${e(prefixNegativeModifiers('shadow', modifier))}`, { 'box-shadow': value, }, diff --git a/src/plugins/letterSpacing.js b/src/plugins/letterSpacing.js index 7efeaa38f..bdcd2e5bd 100644 --- a/src/plugins/letterSpacing.js +++ b/src/plugins/letterSpacing.js @@ -1,11 +1,12 @@ import _ from 'lodash' +import prefixNegativeModifiers from '../util/prefixNegativeModifiers' export default function() { return function({ addUtilities, theme, variants, e }) { const utilities = _.fromPairs( _.map(theme('letterSpacing'), (value, modifier) => { return [ - `.${e(`tracking-${modifier}`)}`, + `.${e(prefixNegativeModifiers('tracking', modifier))}`, { 'letter-spacing': value, }, diff --git a/src/util/prefixNegativeModifiers.js b/src/util/prefixNegativeModifiers.js index 3b0ab62c2..80c932f3f 100644 --- a/src/util/prefixNegativeModifiers.js +++ b/src/util/prefixNegativeModifiers.js @@ -1,5 +1,9 @@ import _ from 'lodash' export default function prefixNegativeModifiers(base, modifier) { - return _.startsWith(modifier, '-') ? `-${base}-${modifier.slice(1)}` : `${base}-${modifier}` + return modifier === '-' + ? `-${base}` + : _.startsWith(modifier, '-') + ? `-${base}-${modifier.slice(1)}` + : `${base}-${modifier}` }