* implement matchUtilities2 * ensure animation names without keyframes are not prefixed * remove matchBase * call addUtilities for each group individually * WIP: Write plugins using matchUtilities2 * MORE * Fix arbitrary value support for fontSize * Fixes, update fixtures * Rebuild fixtures * Don't generate `divide` class with no modifier * Fixes, rebuild fixtures * Rename matchUtilities2 to matchUtilities * Delete bad tests * Remove temp files GROSS * Clean stuff up * Support no return in matchUtilities Co-authored-by: Adam Wathan <adam.wathan@gmail.com>
47 lines
1.4 KiB
JavaScript
47 lines
1.4 KiB
JavaScript
export default function () {
|
|
return function ({ matchUtilities, addUtilities, theme, variants }) {
|
|
matchUtilities(
|
|
{
|
|
'divide-x': (value) => {
|
|
value = value === '0' ? '0px' : value
|
|
|
|
return {
|
|
'& > :not([hidden]) ~ :not([hidden])': {
|
|
'--tw-divide-x-reverse': '0',
|
|
'border-right-width': `calc(${value} * var(--tw-divide-x-reverse))`,
|
|
'border-left-width': `calc(${value} * calc(1 - var(--tw-divide-x-reverse)))`,
|
|
},
|
|
}
|
|
},
|
|
'divide-y': (value) => {
|
|
value = value === '0' ? '0px' : value
|
|
|
|
return {
|
|
'& > :not([hidden]) ~ :not([hidden])': {
|
|
'--tw-divide-y-reverse': '0',
|
|
'border-top-width': `calc(${value} * calc(1 - var(--tw-divide-y-reverse)))`,
|
|
'border-bottom-width': `calc(${value} * var(--tw-divide-y-reverse))`,
|
|
},
|
|
}
|
|
},
|
|
},
|
|
{
|
|
values: theme('divideWidth'),
|
|
variants: variants('divideWidth'),
|
|
type: 'length',
|
|
}
|
|
)
|
|
|
|
addUtilities(
|
|
{
|
|
'.divide-y-reverse > :not([hidden]) ~ :not([hidden])': {
|
|
'--tw-divide-y-reverse': '1',
|
|
},
|
|
'.divide-x-reverse > :not([hidden]) ~ :not([hidden])': {
|
|
'--tw-divide-x-reverse': '1',
|
|
},
|
|
},
|
|
variants('divideWidth')
|
|
)
|
|
}
|
|
}
|