|
1 | 1 | import postcss from 'postcss'
|
2 | 2 | import selectorParser from 'postcss-selector-parser'
|
| 3 | +import { flagEnabled } from '../featureFlags' |
3 | 4 |
|
4 | 5 | function minimumImpactSelector(nodes) {
|
5 | 6 | let pseudos = nodes.filter((n) => n.type === 'pseudo')
|
@@ -51,7 +52,7 @@ function extractElementSelector(selector) {
|
51 | 52 | return cache.get(selector)
|
52 | 53 | }
|
53 | 54 |
|
54 |
| -export default function resolveDefaultsAtRules() { |
| 55 | +export default function resolveDefaultsAtRules({ tailwindConfig }) { |
55 | 56 | return (root) => {
|
56 | 57 | let variableNodeMap = new Map()
|
57 | 58 | let universals = new Set()
|
@@ -90,9 +91,11 @@ export default function resolveDefaultsAtRules() {
|
90 | 91 |
|
91 | 92 | let universalRule = postcss.rule()
|
92 | 93 |
|
93 |
| - // TODO: Fix this, this is a hotfix |
94 |
| - // universalRule.selectors = [...selectors] |
95 |
| - universalRule.selectors = ['*', '::before', '::after'] |
| 94 | + if (flagEnabled(tailwindConfig, 'optimizeUniversalDefaults')) { |
| 95 | + universalRule.selectors = [...selectors] |
| 96 | + } else { |
| 97 | + universalRule.selectors = ['*', '::before', '::after'] |
| 98 | + } |
96 | 99 |
|
97 | 100 | universalRule.append(universal.nodes)
|
98 | 101 | universal.before(universalRule)
|
|
0 commit comments