Home / Function/ arbitraryValueToBareValueUtility() — tailwindcss Function Reference

arbitraryValueToBareValueUtility() — tailwindcss Function Reference

Architecture documentation for the arbitraryValueToBareValueUtility() function in canonicalize-candidates.ts from the tailwindcss codebase.

Entity Profile

Dependency Diagram

graph TD
  7119037a_09b3_c392_43c1_53860e443d24["arbitraryValueToBareValueUtility()"]
  7d350d81_5de1_f9f3_5b2c_19ec8fd3c37e["canonicalize-candidates.ts"]
  7119037a_09b3_c392_43c1_53860e443d24 -->|defined in| 7d350d81_5de1_f9f3_5b2c_19ec8fd3c37e
  87ba7eab_3a52_d53e_dfd4_e507e9763b55["printCandidate()"]
  7119037a_09b3_c392_43c1_53860e443d24 -->|calls| 87ba7eab_3a52_d53e_dfd4_e507e9763b55
  42b4defe_f5ba_2195_5bc6_48ede8ab230e["tryValueReplacements()"]
  7119037a_09b3_c392_43c1_53860e443d24 -->|calls| 42b4defe_f5ba_2195_5bc6_48ede8ab230e
  5bcf4886_1230_a8ff_7302_a26cc5a9a525["get()"]
  7119037a_09b3_c392_43c1_53860e443d24 -->|calls| 5bcf4886_1230_a8ff_7302_a26cc5a9a525
  style 7119037a_09b3_c392_43c1_53860e443d24 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

packages/tailwindcss/src/canonicalize-candidates.ts lines 1367–1391

function arbitraryValueToBareValueUtility(
  candidate: Candidate,
  options: InternalCanonicalizeOptions,
): Candidate {
  // We are only interested in functional utilities with arbitrary values
  if (candidate.kind !== 'functional' || candidate.value?.kind !== 'arbitrary') {
    return candidate
  }

  let designSystem = options.designSystem
  let signatures = designSystem.storage[UTILITY_SIGNATURE_KEY].get(options.signatureOptions)

  let expectedSignature = signatures.get(designSystem.printCandidate(candidate))
  if (expectedSignature === null) return candidate

  for (let value of tryValueReplacements(candidate)) {
    let newSignature = signatures.get(designSystem.printCandidate({ ...candidate, value }))
    if (newSignature === expectedSignature) {
      candidate.value = value
      return candidate
    }
  }

  return candidate
}

Subdomains

Frequently Asked Questions

What does arbitraryValueToBareValueUtility() do?
arbitraryValueToBareValueUtility() is a function in the tailwindcss codebase, defined in packages/tailwindcss/src/canonicalize-candidates.ts.
Where is arbitraryValueToBareValueUtility() defined?
arbitraryValueToBareValueUtility() is defined in packages/tailwindcss/src/canonicalize-candidates.ts at line 1367.
What does arbitraryValueToBareValueUtility() call?
arbitraryValueToBareValueUtility() calls 3 function(s): get, printCandidate, tryValueReplacements.

Analyze Your Own Codebase

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

Try Supermodel Free