Home / Function/ createCanonicalizeVariantCache() — tailwindcss Function Reference

createCanonicalizeVariantCache() — tailwindcss Function Reference

Architecture documentation for the createCanonicalizeVariantCache() function in canonicalize-candidates.ts from the tailwindcss codebase.

Function typescript Oxide Extractor calls 1 called by 1

Entity Profile

Dependency Diagram

graph TD
  af66ef48_06e1_4616_a217_517303b2b6d2["createCanonicalizeVariantCache()"]
  f6c14bbb_2e42_58cc_18f1_c89a243da9c0["canonicalize-candidates.ts"]
  af66ef48_06e1_4616_a217_517303b2b6d2 -->|defined in| f6c14bbb_2e42_58cc_18f1_c89a243da9c0
  26169039_1fd2_e320_1f63_11ec10a6fc52["prepareDesignSystemStorage()"]
  26169039_1fd2_e320_1f63_11ec10a6fc52 -->|calls| af66ef48_06e1_4616_a217_517303b2b6d2
  2c0c2c48_7c07_0936_20b9_afcd7eca56e9["cloneVariant()"]
  af66ef48_06e1_4616_a217_517303b2b6d2 -->|calls| 2c0c2c48_7c07_0936_20b9_afcd7eca56e9
  style af66ef48_06e1_4616_a217_517303b2b6d2 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

packages/tailwindcss/src/canonicalize-candidates.ts lines 496–516

function createCanonicalizeVariantCache(): DesignSystem['storage'][typeof CANONICALIZE_VARIANT_KEY] {
  return new DefaultMap((options: InternalCanonicalizeOptions) => {
    return new DefaultMap((variant: Variant): Variant[] => {
      let replacement = [variant]
      for (let fn of VARIANT_CANONICALIZATIONS) {
        for (let current of replacement.splice(0)) {
          // A single variant can result in multiple variants, e.g.:
          // `[&>[data-selected]]:flex` → `*:data-selected:flex`
          let result = fn(cloneVariant(current), options)
          if (Array.isArray(result)) {
            replacement.push(...result)
            continue
          } else {
            replacement.push(result)
          }
        }
      }
      return replacement
    })
  })
}

Domain

Subdomains

Frequently Asked Questions

What does createCanonicalizeVariantCache() do?
createCanonicalizeVariantCache() is a function in the tailwindcss codebase, defined in packages/tailwindcss/src/canonicalize-candidates.ts.
Where is createCanonicalizeVariantCache() defined?
createCanonicalizeVariantCache() is defined in packages/tailwindcss/src/canonicalize-candidates.ts at line 496.
What does createCanonicalizeVariantCache() call?
createCanonicalizeVariantCache() calls 1 function(s): cloneVariant.
What calls createCanonicalizeVariantCache()?
createCanonicalizeVariantCache() is called by 1 function(s): prepareDesignSystemStorage.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free