2021-04-30 16:58:40 +02:00
|
|
|
import transformThemeValue from '../util/transformThemeValue'
|
2019-01-09 13:17:49 -05:00
|
|
|
|
2021-04-30 16:58:40 +02:00
|
|
|
let transformValue = transformThemeValue('boxShadow')
|
|
|
|
|
let shadowReset = {
|
|
|
|
|
'*': {
|
|
|
|
|
'--tw-shadow': '0 0 #0000',
|
|
|
|
|
},
|
|
|
|
|
}
|
2021-05-05 15:23:32 +02:00
|
|
|
let defaultBoxShadow = [
|
|
|
|
|
`var(--tw-ring-offset-shadow, 0 0 #0000)`,
|
|
|
|
|
`var(--tw-ring-shadow, 0 0 #0000)`,
|
|
|
|
|
`var(--tw-shadow)`,
|
|
|
|
|
].join(', ')
|
2021-04-30 16:58:40 +02:00
|
|
|
|
2020-10-16 13:30:06 -04:00
|
|
|
export default function () {
|
2021-04-30 16:58:40 +02:00
|
|
|
return function ({ config, matchUtilities, addBase, addUtilities, theme, variants }) {
|
|
|
|
|
if (config('mode') === 'jit') {
|
|
|
|
|
addBase(shadowReset)
|
|
|
|
|
} else {
|
2021-05-05 15:23:32 +02:00
|
|
|
addUtilities(shadowReset, { respectImportant: false })
|
|
|
|
|
}
|
2021-04-30 16:58:40 +02:00
|
|
|
|
2021-05-05 15:23:32 +02:00
|
|
|
matchUtilities(
|
|
|
|
|
{
|
|
|
|
|
shadow: (value) => {
|
|
|
|
|
value = transformValue(value)
|
2019-01-09 13:17:49 -05:00
|
|
|
|
2021-05-05 15:23:32 +02:00
|
|
|
return {
|
|
|
|
|
'--tw-shadow': value === 'none' ? '0 0 #0000' : value,
|
|
|
|
|
'box-shadow': defaultBoxShadow,
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
values: theme('boxShadow'),
|
|
|
|
|
variants: variants('boxShadow'),
|
|
|
|
|
type: 'lookup',
|
|
|
|
|
}
|
|
|
|
|
)
|
2019-01-09 13:17:49 -05:00
|
|
|
}
|
|
|
|
|
}
|