@@ -1914,3 +1914,152 @@ test('custom properties are not converted to kebab-case when added to base layer
19141914 expect ( result . css ) . toContain ( `--colors-primaryThing-500: 0, 0, 255;` )
19151915 } )
19161916} )
1917+
1918+ test ( 'important candidates discard rules with irrelevant selectors' , async ( ) => {
1919+ let config = {
1920+ content : [ { raw : '!a1 !b1 !c1' } ] ,
1921+ corePlugins : { preflight : false } ,
1922+ plugins : [
1923+ ( { addBase } ) => {
1924+ addBase ( {
1925+ '@media (min-width: 1728px)' : {
1926+ '.a1' : { 'padding-top' : '1rem !important' } ,
1927+ '.a2' : { 'padding-right' : '1rem !important' } ,
1928+ } ,
1929+ } )
1930+
1931+ addBase ( {
1932+ '@media (min-width: 1728px)' : { '.b1' : { 'padding-top' : '1rem !important' } } ,
1933+ '@media (min-width: 1729px)' : { '.b2' : { 'padding-right' : '1rem !important' } } ,
1934+ } )
1935+
1936+ addBase ( {
1937+ '.c1' : { '@media (min-width: 1728px)' : { 'padding-top' : '1rem !important' } } ,
1938+ '.c2' : { '@media (min-width: 1728px)' : { 'padding-right' : '1rem !important' } } ,
1939+ } )
1940+ } ,
1941+ ] ,
1942+ }
1943+
1944+ let result = await run ( '@tailwind base' , config )
1945+
1946+ expect ( result . css ) . toMatchInlineSnapshot ( `
1947+ "*, ::before, ::after {
1948+ --tw-border-spacing-x: 0;
1949+ --tw-border-spacing-y: 0;
1950+ --tw-translate-x: 0;
1951+ --tw-translate-y: 0;
1952+ --tw-rotate: 0;
1953+ --tw-skew-x: 0;
1954+ --tw-skew-y: 0;
1955+ --tw-scale-x: 1;
1956+ --tw-scale-y: 1;
1957+ --tw-pan-x: ;
1958+ --tw-pan-y: ;
1959+ --tw-pinch-zoom: ;
1960+ --tw-scroll-snap-strictness: proximity;
1961+ --tw-gradient-from-position: ;
1962+ --tw-gradient-via-position: ;
1963+ --tw-gradient-to-position: ;
1964+ --tw-ordinal: ;
1965+ --tw-slashed-zero: ;
1966+ --tw-numeric-figure: ;
1967+ --tw-numeric-spacing: ;
1968+ --tw-numeric-fraction: ;
1969+ --tw-ring-inset: ;
1970+ --tw-ring-offset-width: 0px;
1971+ --tw-ring-offset-color: #fff;
1972+ --tw-ring-color: rgb(59 130 246 / 0.5);
1973+ --tw-ring-offset-shadow: 0 0 #0000;
1974+ --tw-ring-shadow: 0 0 #0000;
1975+ --tw-shadow: 0 0 #0000;
1976+ --tw-shadow-colored: 0 0 #0000;
1977+ --tw-blur: ;
1978+ --tw-brightness: ;
1979+ --tw-contrast: ;
1980+ --tw-grayscale: ;
1981+ --tw-hue-rotate: ;
1982+ --tw-invert: ;
1983+ --tw-saturate: ;
1984+ --tw-sepia: ;
1985+ --tw-drop-shadow: ;
1986+ --tw-backdrop-blur: ;
1987+ --tw-backdrop-brightness: ;
1988+ --tw-backdrop-contrast: ;
1989+ --tw-backdrop-grayscale: ;
1990+ --tw-backdrop-hue-rotate: ;
1991+ --tw-backdrop-invert: ;
1992+ --tw-backdrop-opacity: ;
1993+ --tw-backdrop-saturate: ;
1994+ --tw-backdrop-sepia: ;
1995+ --tw-contain-size: ;
1996+ --tw-contain-layout: ;
1997+ --tw-contain-paint: ;
1998+ --tw-contain-style:
1999+ }
2000+ ::backdrop {
2001+ --tw-border-spacing-x: 0;
2002+ --tw-border-spacing-y: 0;
2003+ --tw-translate-x: 0;
2004+ --tw-translate-y: 0;
2005+ --tw-rotate: 0;
2006+ --tw-skew-x: 0;
2007+ --tw-skew-y: 0;
2008+ --tw-scale-x: 1;
2009+ --tw-scale-y: 1;
2010+ --tw-pan-x: ;
2011+ --tw-pan-y: ;
2012+ --tw-pinch-zoom: ;
2013+ --tw-scroll-snap-strictness: proximity;
2014+ --tw-gradient-from-position: ;
2015+ --tw-gradient-via-position: ;
2016+ --tw-gradient-to-position: ;
2017+ --tw-ordinal: ;
2018+ --tw-slashed-zero: ;
2019+ --tw-numeric-figure: ;
2020+ --tw-numeric-spacing: ;
2021+ --tw-numeric-fraction: ;
2022+ --tw-ring-inset: ;
2023+ --tw-ring-offset-width: 0px;
2024+ --tw-ring-offset-color: #fff;
2025+ --tw-ring-color: rgb(59 130 246 / 0.5);
2026+ --tw-ring-offset-shadow: 0 0 #0000;
2027+ --tw-ring-shadow: 0 0 #0000;
2028+ --tw-shadow: 0 0 #0000;
2029+ --tw-shadow-colored: 0 0 #0000;
2030+ --tw-blur: ;
2031+ --tw-brightness: ;
2032+ --tw-contrast: ;
2033+ --tw-grayscale: ;
2034+ --tw-hue-rotate: ;
2035+ --tw-invert: ;
2036+ --tw-saturate: ;
2037+ --tw-sepia: ;
2038+ --tw-drop-shadow: ;
2039+ --tw-backdrop-blur: ;
2040+ --tw-backdrop-brightness: ;
2041+ --tw-backdrop-contrast: ;
2042+ --tw-backdrop-grayscale: ;
2043+ --tw-backdrop-hue-rotate: ;
2044+ --tw-backdrop-invert: ;
2045+ --tw-backdrop-opacity: ;
2046+ --tw-backdrop-saturate: ;
2047+ --tw-backdrop-sepia: ;
2048+ --tw-contain-size: ;
2049+ --tw-contain-layout: ;
2050+ --tw-contain-paint: ;
2051+ --tw-contain-style:
2052+ }
2053+ @media (min-width: 1728px) {
2054+ .\\!a1 {
2055+ padding-top: 1rem !important
2056+ }
2057+ .\\!b1 {
2058+ padding-top: 1rem !important
2059+ }
2060+ .\\!c1 {
2061+ padding-top: 1rem !important
2062+ }
2063+ }"
2064+ ` )
2065+ } )
0 commit comments