arbitraryVariants() — tailwindcss Function Reference
Architecture documentation for the arbitraryVariants() function in canonicalize-candidates.ts from the tailwindcss codebase.
Entity Profile
Dependency Diagram
graph TD d6d6389c_e8ac_a603_fb73_c284bcbea150["arbitraryVariants()"] 5fbe9f30_4678_6100_0870_5216b48ccf87["walkVariants()"] d6d6389c_e8ac_a603_fb73_c284bcbea150 -->|calls| 5fbe9f30_4678_6100_0870_5216b48ccf87 49c38785_1012_962e_d353_b5b1d6858132["printVariant()"] d6d6389c_e8ac_a603_fb73_c284bcbea150 -->|calls| 49c38785_1012_962e_d353_b5b1d6858132 ca76ae68_c9c0_d977_a6d8_8ba86685bf25["parseVariant()"] d6d6389c_e8ac_a603_fb73_c284bcbea150 -->|calls| ca76ae68_c9c0_d977_a6d8_8ba86685bf25 2d70e77d_ce8f_238d_2b32_a8b4190f2628["replaceObject()"] d6d6389c_e8ac_a603_fb73_c284bcbea150 -->|calls| 2d70e77d_ce8f_238d_2b32_a8b4190f2628 4cd99e59_ac1e_2a1f_0946_33cc1afd2532["get()"] d6d6389c_e8ac_a603_fb73_c284bcbea150 -->|calls| 4cd99e59_ac1e_2a1f_0946_33cc1afd2532 style d6d6389c_e8ac_a603_fb73_c284bcbea150 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
packages/tailwindcss/src/canonicalize-candidates.ts lines 1309–1336
function arbitraryVariants(
variant: Variant,
options: InternalCanonicalizeOptions,
): Variant | Variant[] {
let designSystem = options.designSystem
let signatures = designSystem.storage[VARIANT_SIGNATURE_KEY]
let variants = designSystem.storage[PRE_COMPUTED_VARIANTS_KEY]
let iterator = walkVariants(variant)
for (let [variant] of iterator) {
if (variant.kind === 'compound') continue
let targetString = designSystem.printVariant(variant)
let targetSignature = signatures.get(targetString)
if (typeof targetSignature !== 'string') continue
let foundVariants = variants.get(targetSignature)
if (foundVariants.length !== 1) continue
let foundVariant = foundVariants[0]
let parsedVariant = designSystem.parseVariant(foundVariant)
if (parsedVariant === null) continue
replaceObject(variant, parsedVariant)
}
return variant
}
Domain
Subdomains
Source
Frequently Asked Questions
What does arbitraryVariants() do?
arbitraryVariants() is a function in the tailwindcss codebase.
What does arbitraryVariants() call?
arbitraryVariants() calls 5 function(s): get, parseVariant, printVariant, replaceObject, walkVariants.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free