diff --git a/packages/tailwindcss/src/compile.ts b/packages/tailwindcss/src/compile.ts index deca45e85..d1dc7d0ee 100644 --- a/packages/tailwindcss/src/compile.ts +++ b/packages/tailwindcss/src/compile.ts @@ -24,7 +24,7 @@ export function compileCandidates( if (throwOnInvalidCandidate) { throw new Error(`Cannot apply unknown utility class: ${rawCandidate}`) } - designSystem.invalidRawCandidates.add(rawCandidate) + designSystem.markInvalidCandidate(rawCandidate) continue // Bail, invalid candidate } candidates.set(candidate, rawCandidate) @@ -42,7 +42,7 @@ export function compileCandidates( if (throwOnInvalidCandidate) { throw new Error(`Cannot apply unknown utility class: ${rawCandidate}`) } - designSystem.invalidRawCandidates.add(rawCandidate) + designSystem.markInvalidCandidate(rawCandidate) continue next } diff --git a/packages/tailwindcss/src/design-system.ts b/packages/tailwindcss/src/design-system.ts index dd844a4f5..fa6390f0a 100644 --- a/packages/tailwindcss/src/design-system.ts +++ b/packages/tailwindcss/src/design-system.ts @@ -25,7 +25,8 @@ export type DesignSystem = { getUsedVariants(): ReturnType[] getAstNodeSize(): number - invalidRawCandidates: Set + markInvalidCandidate(candidate: string): void + isInvalidCandidate(candidate: string): boolean } export function buildDesignSystem(theme: Theme): DesignSystem { @@ -41,7 +42,6 @@ export function buildDesignSystem(theme: Theme): DesignSystem { theme, utilities, variants, - invalidRawCandidates, candidatesToCss(classes: string[]) { let result: (string | null)[] = [] @@ -83,6 +83,13 @@ export function buildDesignSystem(theme: Theme): DesignSystem { getAstNodeSize() { return compiledAstNodes.size }, + + markInvalidCandidate(candidate: string) { + invalidRawCandidates.add(candidate) + }, + isInvalidCandidate(candidate: string) { + return invalidRawCandidates.has(candidate) + }, } return designSystem diff --git a/packages/tailwindcss/src/index.ts b/packages/tailwindcss/src/index.ts index 193d97453..d5205bd52 100644 --- a/packages/tailwindcss/src/index.ts +++ b/packages/tailwindcss/src/index.ts @@ -179,7 +179,7 @@ export function compile( // and should be ignored. let allValidCandidates = new Set() for (let rawCandidate of rawCandidates) { - if (!designSystem.invalidRawCandidates.has(rawCandidate)) { + if (!designSystem.isInvalidCandidate(rawCandidate)) { allValidCandidates.add(rawCandidate) } } @@ -190,7 +190,7 @@ export function compile( // Add all new candidates unless we know that they are invalid. let previousSize = allValidCandidates.size for (let candidate of newRawCandidates) { - if (!designSystem.invalidRawCandidates.has(candidate)) { + if (!designSystem.isInvalidCandidate(candidate)) { allValidCandidates.add(candidate) } }