diff --git a/src/plugins/fontVariantNumeric.js b/src/plugins/fontVariantNumeric.js index b8656bdea..941906ba2 100644 --- a/src/plugins/fontVariantNumeric.js +++ b/src/plugins/fontVariantNumeric.js @@ -1,81 +1,50 @@ -let fontVariantBaseStyles = { - '.ordinal, .slashed-zero, .lining-nums, .oldstyle-nums, .proportional-nums, .tabular-nums, .diagonal-fractions, .stacked-fractions': { - '--tw-ordinal': 'var(--tw-empty,/*!*/ /*!*/)', - '--tw-slashed-zero': 'var(--tw-empty,/*!*/ /*!*/)', - '--tw-numeric-figure': 'var(--tw-empty,/*!*/ /*!*/)', - '--tw-numeric-spacing': 'var(--tw-empty,/*!*/ /*!*/)', - '--tw-numeric-fraction': 'var(--tw-empty,/*!*/ /*!*/)', - 'font-variant-numeric': - 'var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)', - }, -} - export default function () { - return function ({ config, matchUtilities, addUtilities, variants }) { - if (config('mode') === 'jit') { - matchUtilities({ - 'normal-nums': fontVariantBaseStyles, - ordinal: fontVariantBaseStyles, - 'slashed-zero': fontVariantBaseStyles, - 'lining-nums': fontVariantBaseStyles, - 'oldstyle-nums': fontVariantBaseStyles, - 'proportional-nums': fontVariantBaseStyles, - 'tabular-nums': fontVariantBaseStyles, - 'diagonal-fractions': fontVariantBaseStyles, - 'stacked-fractions': fontVariantBaseStyles, - }) - - matchUtilities({ - 'normal-nums': { '.normal-nums': { 'font-variant-numeric': 'normal' } }, - ordinal: { '.ordinal': { '--tw-ordinal': 'ordinal' } }, - 'slashed-zero': { '.slashed-zero': { '--tw-slashed-zero': 'slashed-zero' } }, - 'lining-nums': { '.lining-nums': { '--tw-numeric-figure': 'lining-nums' } }, - 'oldstyle-nums': { '.oldstyle-nums': { '--tw-numeric-figure': 'oldstyle-nums' } }, - 'proportional-nums': { - '.proportional-nums': { '--tw-numeric-spacing': 'proportional-nums' }, + return function ({ addUtilities, variants }) { + addUtilities( + { + '.ordinal, .slashed-zero, .lining-nums, .oldstyle-nums, .proportional-nums, .tabular-nums, .diagonal-fractions, .stacked-fractions': { + '--tw-ordinal': 'var(--tw-empty,/*!*/ /*!*/)', + '--tw-slashed-zero': 'var(--tw-empty,/*!*/ /*!*/)', + '--tw-numeric-figure': 'var(--tw-empty,/*!*/ /*!*/)', + '--tw-numeric-spacing': 'var(--tw-empty,/*!*/ /*!*/)', + '--tw-numeric-fraction': 'var(--tw-empty,/*!*/ /*!*/)', + 'font-variant-numeric': + 'var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)', }, - 'tabular-nums': { '.tabular-nums': { '--tw-numeric-spacing': 'tabular-nums' } }, - 'diagonal-fractions': { - '.diagonal-fractions': { '--tw-numeric-fraction': 'diagonal-fractions' }, + }, + variants('fontVariantNumeric') + ) + addUtilities( + { + '.normal-nums': { + 'font-variant-numeric': 'normal', }, - 'stacked-fractions': { - '.stacked-fractions': { '--tw-numeric-fraction': 'stacked-fractions' }, + '.ordinal': { + '--tw-ordinal': 'ordinal', }, - }) - } else { - addUtilities( - { - ...fontVariantBaseStyles, - '.normal-nums': { - 'font-variant-numeric': 'normal', - }, - '.ordinal': { - '--tw-ordinal': 'ordinal', - }, - '.slashed-zero': { - '--tw-slashed-zero': 'slashed-zero', - }, - '.lining-nums': { - '--tw-numeric-figure': 'lining-nums', - }, - '.oldstyle-nums': { - '--tw-numeric-figure': 'oldstyle-nums', - }, - '.proportional-nums': { - '--tw-numeric-spacing': 'proportional-nums', - }, - '.tabular-nums': { - '--tw-numeric-spacing': 'tabular-nums', - }, - '.diagonal-fractions': { - '--tw-numeric-fraction': 'diagonal-fractions', - }, - '.stacked-fractions': { - '--tw-numeric-fraction': 'stacked-fractions', - }, + '.slashed-zero': { + '--tw-slashed-zero': 'slashed-zero', }, - variants('fontVariantNumeric') - ) - } + '.lining-nums': { + '--tw-numeric-figure': 'lining-nums', + }, + '.oldstyle-nums': { + '--tw-numeric-figure': 'oldstyle-nums', + }, + '.proportional-nums': { + '--tw-numeric-spacing': 'proportional-nums', + }, + '.tabular-nums': { + '--tw-numeric-spacing': 'tabular-nums', + }, + '.diagonal-fractions': { + '--tw-numeric-fraction': 'diagonal-fractions', + }, + '.stacked-fractions': { + '--tw-numeric-fraction': 'stacked-fractions', + }, + }, + variants('fontVariantNumeric') + ) } } diff --git a/tests/jit/basic-usage.test.css b/tests/jit/basic-usage.test.css index a77b134f2..aec70a93c 100644 --- a/tests/jit/basic-usage.test.css +++ b/tests/jit/basic-usage.test.css @@ -543,12 +543,12 @@ font-variant-numeric: var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction); } -.tabular-nums { - --tw-numeric-spacing: tabular-nums; -} .ordinal { --tw-ordinal: ordinal; } +.tabular-nums { + --tw-numeric-spacing: tabular-nums; +} .diagonal-fractions { --tw-numeric-fraction: diagonal-fractions; }