cloneCandidate() — tailwindcss Function Reference
Architecture documentation for the cloneCandidate() function in candidate.ts from the tailwindcss codebase.
Entity Profile
Dependency Diagram
graph TD 6aa3d960_a2f2_03a4_9eb3_642a5598b141["cloneCandidate()"] 8a068325_2349_1f6e_50da_da53008019d1["baseCandidate()"] 8a068325_2349_1f6e_50da_da53008019d1 -->|calls| 6aa3d960_a2f2_03a4_9eb3_642a5598b141 c0ed9081_e732_ecfa_0427_6bc0211bcee4["migrateArbitraryVariants()"] c0ed9081_e732_ecfa_0427_6bc0211bcee4 -->|calls| 6aa3d960_a2f2_03a4_9eb3_642a5598b141 39857840_c6e7_0594_122a_445c1ca9d108["migrateAutomaticVarInjection()"] 39857840_c6e7_0594_122a_445c1ca9d108 -->|calls| 6aa3d960_a2f2_03a4_9eb3_642a5598b141 dea7ced9_f1f5_2ff1_f4bc_f35a2d35ce09["migrateCamelcaseInNamedValue()"] dea7ced9_f1f5_2ff1_f4bc_f35a2d35ce09 -->|calls| 6aa3d960_a2f2_03a4_9eb3_642a5598b141 e186eef0_e5f2_5d47_3825_19ab57be2de9["migrateLegacyArbitraryValues()"] e186eef0_e5f2_5d47_3825_19ab57be2de9 -->|calls| 6aa3d960_a2f2_03a4_9eb3_642a5598b141 4ed0d823_ca6a_b1cd_308d_86008a627784["migrateLegacyClasses()"] 4ed0d823_ca6a_b1cd_308d_86008a627784 -->|calls| 6aa3d960_a2f2_03a4_9eb3_642a5598b141 486b36da_67cd_fb5a_cf7f_c5aca1c480be["migrateModernizeArbitraryValues()"] 486b36da_67cd_fb5a_cf7f_c5aca1c480be -->|calls| 6aa3d960_a2f2_03a4_9eb3_642a5598b141 19312e09_c0b9_b4d3_7181_315ee63b4c14["createCanonicalizeUtilityCache()"] 19312e09_c0b9_b4d3_7181_315ee63b4c14 -->|calls| 6aa3d960_a2f2_03a4_9eb3_642a5598b141 style 6aa3d960_a2f2_03a4_9eb3_642a5598b141 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
packages/tailwindcss/src/candidate.ts lines 220–273
export function cloneCandidate<T extends Candidate>(candidate: T): T {
switch (candidate.kind) {
case 'arbitrary':
return {
kind: candidate.kind,
property: candidate.property,
value: candidate.value,
modifier: candidate.modifier
? { kind: candidate.modifier.kind, value: candidate.modifier.value }
: null,
variants: candidate.variants.map(cloneVariant),
important: candidate.important,
raw: candidate.raw,
} satisfies Extract<Candidate, { kind: 'arbitrary' }> as T
case 'static':
return {
kind: candidate.kind,
root: candidate.root,
variants: candidate.variants.map(cloneVariant),
important: candidate.important,
raw: candidate.raw,
} satisfies Extract<Candidate, { kind: 'static' }> as T
case 'functional':
return {
kind: candidate.kind,
root: candidate.root,
value: candidate.value
? candidate.value.kind === 'arbitrary'
? {
kind: candidate.value.kind,
dataType: candidate.value.dataType,
value: candidate.value.value,
}
: {
kind: candidate.value.kind,
value: candidate.value.value,
fraction: candidate.value.fraction,
}
: null,
modifier: candidate.modifier
? { kind: candidate.modifier.kind, value: candidate.modifier.value }
: null,
variants: candidate.variants.map(cloneVariant),
important: candidate.important,
raw: candidate.raw,
} satisfies Extract<Candidate, { kind: 'functional' }> as T
default:
candidate satisfies never
throw new Error('Unknown candidate kind')
}
}
Domain
Subdomains
Called By
Source
Frequently Asked Questions
What does cloneCandidate() do?
cloneCandidate() is a function in the tailwindcss codebase.
What calls cloneCandidate()?
cloneCandidate() is called by 8 function(s): baseCandidate, createCanonicalizeUtilityCache, migrateArbitraryVariants, migrateAutomaticVarInjection, migrateCamelcaseInNamedValue, migrateLegacyArbitraryValues, migrateLegacyClasses, migrateModernizeArbitraryValues.
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free