diff --git a/__tests__/applyAtRule.test.js b/__tests__/applyAtRule.test.js index 18c739314..873fc8678 100644 --- a/__tests__/applyAtRule.test.js +++ b/__tests__/applyAtRule.test.js @@ -202,7 +202,12 @@ test('you can apply utility classes that do not actually exist as long as they w .foo { margin-top: 1rem; } ` - return run(input).then(result => { + const config = { + ...defaultConfig, + experiments: { shadowLookup: true }, + } + + return run(input, config).then(result => { expect(result.css).toEqual(expected) expect(result.warnings().length).toBe(0) }) diff --git a/src/lib/substituteClassApplyAtRules.js b/src/lib/substituteClassApplyAtRules.js index 2848f231e..01dfb3c28 100644 --- a/src/lib/substituteClassApplyAtRules.js +++ b/src/lib/substituteClassApplyAtRules.js @@ -59,7 +59,9 @@ function findClass(classToApply, classTable, shadowLookup, onError) { export default function(config, generatedUtilities) { return function(css) { const classLookup = buildClassTable(css) - const shadowLookup = buildShadowTable(generatedUtilities) + const shadowLookup = _.get(config, 'experiments.shadowLookup', false) + ? buildShadowTable(generatedUtilities) + : {} css.walkRules(rule => { rule.walkAtRules('apply', atRule => {