Home / Function/ analyze() — tailwindcss Function Reference

analyze() — tailwindcss Function Reference

Architecture documentation for the analyze() function in translation-map.test.ts from the tailwindcss codebase.

Entity Profile

Dependency Diagram

graph TD
  b5142dec_f0ec_66d6_59a1_82d3dbd6f965["analyze()"]
  257c4715_dc91_0c7f_fce8_433a757d9ce6["parse()"]
  b5142dec_f0ec_66d6_59a1_82d3dbd6f965 -->|calls| 257c4715_dc91_0c7f_fce8_433a757d9ce6
  af90c185_29a2_6c4c_ef06_b18f00f7655c["toCss()"]
  b5142dec_f0ec_66d6_59a1_82d3dbd6f965 -->|calls| af90c185_29a2_6c4c_ef06_b18f00f7655c
  f91122be_c147_e5b3_0c21_f626d873cf8a["createTranslationMap()"]
  b5142dec_f0ec_66d6_59a1_82d3dbd6f965 -->|calls| f91122be_c147_e5b3_0c21_f626d873cf8a
  style b5142dec_f0ec_66d6_59a1_82d3dbd6f965 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

packages/tailwindcss/src/source-maps/translation-map.test.ts lines 7–34

async function analyze(input: string) {
  let ast = CSS.parse(input, { from: 'input.css' })
  let css = toCss(ast, true)
  let translate = createTranslationMap({
    original: input,
    generated: css,
  })

  function format(node: AstNode) {
    let lines: string[] = []

    for (let [oStart, oEnd, gStart, gEnd] of translate(node)) {
      let src = `${oStart.line}:${oStart.column}-${oEnd.line}:${oEnd.column}`

      let dst = '(none)'

      if (gStart && gEnd) {
        dst = `${gStart.line}:${gStart.column}-${gEnd.line}:${gEnd.column}`
      }

      lines.push(`${dst} <- ${src}`)
    }

    return lines
  }

  return { ast, css, format }
}

Subdomains

Frequently Asked Questions

What does analyze() do?
analyze() is a function in the tailwindcss codebase.
What does analyze() call?
analyze() calls 3 function(s): createTranslationMap, parse, toCss.

Analyze Your Own Codebase

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

Try Supermodel Free