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 Oxide Extractor calls 4 called by 1

Entity Profile

Dependency Diagram

graph TD
  d3da176b_5d25_508c_c940_26dbd0d5b553["compileBaseUtility()"]
  eea0ec96_6369_abc2_64b3_490868392e31["compile.ts"]
  d3da176b_5d25_508c_c940_26dbd0d5b553 -->|defined in| eea0ec96_6369_abc2_64b3_490868392e31
  8b088e47_7f37_81e9_fe8a_5da6d3f5e245["compileAstNodes()"]
  8b088e47_7f37_81e9_fe8a_5da6d3f5e245 -->|calls| d3da176b_5d25_508c_c940_26dbd0d5b553
  dfcc5bf9_96ac_0c12_9e9e_7288796d1837["asColor()"]
  d3da176b_5d25_508c_c940_26dbd0d5b553 -->|calls| dfcc5bf9_96ac_0c12_9e9e_7288796d1837
  1369a6dc_e395_347d_5d24_b88e22c5446d["decl()"]
  d3da176b_5d25_508c_c940_26dbd0d5b553 -->|calls| 1369a6dc_e395_347d_5d24_b88e22c5446d
  5bff0e9c_3778_dc04_a3ca_cb8c18fbc1bf["isFallbackUtility()"]
  d3da176b_5d25_508c_c940_26dbd0d5b553 -->|calls| 5bff0e9c_3778_dc04_a3ca_cb8c18fbc1bf
  0e687735_200d_7212_bbf6_504ebc1bfe77["get()"]
  d3da176b_5d25_508c_c940_26dbd0d5b553 -->|calls| 0e687735_200d_7212_bbf6_504ebc1bfe77
  style d3da176b_5d25_508c_c940_26dbd0d5b553 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, defined in packages/tailwindcss/src/compile.ts.
Where is compileBaseUtility() defined?
compileBaseUtility() is defined in packages/tailwindcss/src/compile.ts at line 265.
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