|
| 1 | + |
1 | 2 | const _ = require('lodash')
|
| 3 | +const plugin = require('tailwindcss/plugin') |
| 4 | + |
| 5 | +module.exports = plugin(function({ addUtilities, e, theme, variants }) { |
| 6 | + const textShadow = theme('textShadow', {}) |
| 7 | + |
| 8 | + const textShadowVariants = variants('textShadow', []) |
2 | 9 |
|
3 |
| -module.exports = function({ addUtilities, e, theme, variants }) { |
4 | 10 | const utilities = _.fromPairs(
|
5 |
| - _.map(theme('textShadow'), (value, modifier) => { |
| 11 | + _.map(textShadow, (value, modifier) => { |
6 | 12 | const className = modifier === 'default' ? 'text-shadow' : `${e(`text-shadow-${modifier}`)}`
|
7 |
| - return [ |
| 13 | + return [ |
8 | 14 | `.${className}`,
|
9 |
| - { |
10 |
| - 'text-shadow': value, |
11 |
| - }, |
12 |
| - ] |
| 15 | + { |
| 16 | + 'text-shadow': value, |
| 17 | + }, |
| 18 | + ] |
13 | 19 | })
|
14 | 20 | )
|
15 |
| - addUtilities(utilities, variants('textShadow')) |
16 |
| -} |
17 | 21 |
|
| 22 | + addUtilities(utilities, textShadowVariants) |
| 23 | +}, |
| 24 | +{ |
| 25 | + theme: { |
| 26 | + textShadow: { |
| 27 | + default: '1px 0px 0px rgb(0 0 0 / 20%), 0px 1px 0px rgb(1 0 5 / 10%)', |
| 28 | + sm: '1px 1px 3px rgb(36 37 47 / 25%)', |
| 29 | + md: '0px 1px 2px rgb(30 29 39 / 19%), 1px 2px 4px rgb(54 64 147 / 18%)', |
| 30 | + lg: '3px 3px 6px rgb(0 0 0 / 26%), 0 0 5px rgb(15 3 86 / 22%)', |
| 31 | + xl: '1px 1px 3px rgb(0 0 0 / 29%), 2px 4px 7px rgb(73 64 125 / 35%)', |
| 32 | + none: 'none', |
| 33 | + }, |
| 34 | + }, |
| 35 | + variants: { |
| 36 | + textShadow: ['responsive', 'hover', 'focus'], |
| 37 | + } |
| 38 | +}) |
0 commit comments