Home / Function/ compileBaseUtility() — tailwindcss Function Reference

compileBaseUtility() — tailwindcss Function Reference

Architecture documentation for the compileBaseUtility() function in compile.ts from the tailwindcss codebase.

Function typescript OxideCore Scanner calls 4 called by 1

Entity Profile

Dependency Diagram

graph TD
  d7c9a9e2_d3cf_5ace_a853_63ae8fff0a66["compileBaseUtility()"]
  70b7448d_fd76_0d4b_e635_18f49f8ba1d6["compileAstNodes()"]
  70b7448d_fd76_0d4b_e635_18f49f8ba1d6 -->|calls| d7c9a9e2_d3cf_5ace_a853_63ae8fff0a66
  8d5e20f1_5091_5002_1260_1f08298c4254["asColor()"]
  d7c9a9e2_d3cf_5ace_a853_63ae8fff0a66 -->|calls| 8d5e20f1_5091_5002_1260_1f08298c4254
  47ef7bd7_b959_59c4_dbd1_328f35d7cd89["decl()"]
  d7c9a9e2_d3cf_5ace_a853_63ae8fff0a66 -->|calls| 47ef7bd7_b959_59c4_dbd1_328f35d7cd89
  d5f9b82d_a03a_f907_7d80_f928661a3ad8["isFallbackUtility()"]
  d7c9a9e2_d3cf_5ace_a853_63ae8fff0a66 -->|calls| d5f9b82d_a03a_f907_7d80_f928661a3ad8
  143002c2_0d0e_8f60_a309_097512cbff95["get()"]
  d7c9a9e2_d3cf_5ace_a853_63ae8fff0a66 -->|calls| 143002c2_0d0e_8f60_a309_097512cbff95
  style d7c9a9e2_d3cf_5ace_a853_63ae8fff0a66 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

packages/tailwindcss/src/compile.ts lines 265–307

function compileBaseUtility(candidate: Candidate, designSystem: DesignSystem) {
  if (candidate.kind === 'arbitrary') {
    let value: string | null = candidate.value

    // Assumption: If an arbitrary property has a modifier, then we assume it
    // is an opacity modifier.
    if (candidate.modifier) {
      value = asColor(value, candidate.modifier, designSystem.theme)
    }

    if (value === null) return []

    return [[decl(candidate.property, value)]]
  }

  let utilities = designSystem.utilities.get(candidate.root) ?? []

  let asts: AstNode[][] = []

  let normalUtilities = utilities.filter((u) => !isFallbackUtility(u))
  for (let utility of normalUtilities) {
    if (utility.kind !== candidate.kind) continue

    let compiledNodes = utility.compileFn(candidate)
    if (compiledNodes === undefined) continue
    if (compiledNodes === null) return asts
    asts.push(compiledNodes)
  }

  if (asts.length > 0) return asts

  let fallbackUtilities = utilities.filter((u) => isFallbackUtility(u))
  for (let utility of fallbackUtilities) {
    if (utility.kind !== candidate.kind) continue

    let compiledNodes = utility.compileFn(candidate)
    if (compiledNodes === undefined) continue
    if (compiledNodes === null) return asts
    asts.push(compiledNodes)
  }

  return asts
}

Domain

Subdomains

Called By

Frequently Asked Questions

What does compileBaseUtility() do?
compileBaseUtility() is a function in the tailwindcss codebase.
What does compileBaseUtility() call?
compileBaseUtility() calls 4 function(s): asColor, decl, get, isFallbackUtility.
What calls compileBaseUtility()?
compileBaseUtility() is called by 1 function(s): compileAstNodes.

Analyze Your Own Codebase

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

Try Supermodel Free