Home / Function/ getClassList() — tailwindcss Function Reference

getClassList() — tailwindcss Function Reference

Architecture documentation for the getClassList() function in intellisense.ts from the tailwindcss codebase.

Entity Profile

Dependency Diagram

graph TD
  9bc6d1a1_404b_43fc_8f6b_36e8b6674c0d["getClassList()"]
  c58d3214_88d6_f4fc_257f_8e84def5b24f["buildDesignSystem()"]
  c58d3214_88d6_f4fc_257f_8e84def5b24f -->|calls| 9bc6d1a1_404b_43fc_8f6b_36e8b6674c0d
  0aa64a1c_efd8_a69d_48ed_649b7a86c854["get()"]
  9bc6d1a1_404b_43fc_8f6b_36e8b6674c0d -->|calls| 0aa64a1c_efd8_a69d_48ed_649b7a86c854
  2554e693_690d_f3c8_02f3_a6124d291bbd["compare()"]
  9bc6d1a1_404b_43fc_8f6b_36e8b6674c0d -->|calls| 2554e693_690d_f3c8_02f3_a6124d291bbd
  0b76687f_ad57_0b8b_192a_e82432392da3["sortFractionsLast()"]
  9bc6d1a1_404b_43fc_8f6b_36e8b6674c0d -->|calls| 0b76687f_ad57_0b8b_192a_e82432392da3
  style 9bc6d1a1_404b_43fc_8f6b_36e8b6674c0d fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

packages/tailwindcss/src/intellisense.ts lines 24–79

export function getClassList(design: DesignSystem): ClassEntry[] {
  let items = new DefaultMap<string, ClassItem>((utility) => ({
    name: utility,
    utility,
    fraction: false,
    modifiers: [],
  }))

  // Static utilities only work as-is
  for (let utility of design.utilities.keys('static')) {
    let completions = design.utilities.getCompletions(utility)
    if (completions.length === 0) continue

    let item = items.get(utility)
    item.fraction = false
    item.modifiers = []
  }

  // Functional utilities have their own list of completions
  for (let utility of design.utilities.keys('functional')) {
    let completions = design.utilities.getCompletions(utility)

    for (let group of completions) {
      for (let value of group.values) {
        let fraction = value !== null && IS_FRACTION.test(value)

        let name = value === null ? utility : `${utility}-${value}`

        let item = items.get(name)
        item.utility = utility
        item.fraction ||= fraction
        item.modifiers.push(...group.modifiers)

        if (group.supportsNegative) {
          let item = items.get(`-${name}`)
          item.utility = `-${utility}`
          item.fraction ||= fraction
          item.modifiers.push(...group.modifiers)
        }

        // Deduplicate modifiers
        item.modifiers = Array.from(new Set(item.modifiers))
      }
    }
  }

  if (items.size === 0) return []

  // Sort utilities by their class name
  let list = Array.from(items.values())
  list.sort((a, b) => compare(a.name, b.name))

  let entries = sortFractionsLast(list)

  return entries
}

Domain

Subdomains

Frequently Asked Questions

What does getClassList() do?
getClassList() is a function in the tailwindcss codebase.
What does getClassList() call?
getClassList() calls 3 function(s): compare, get, sortFractionsLast.
What calls getClassList()?
getClassList() is called by 1 function(s): buildDesignSystem.

Analyze Your Own Codebase

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

Try Supermodel Free