Home / File/ value-parser.ts — tailwindcss Source File

value-parser.ts — tailwindcss Source File

Architecture documentation for value-parser.ts, a typescript file in the tailwindcss codebase. 0 imports, 15 dependents.

File typescript Oxide Scanner 15 dependents 5 functions

Entity Profile

Dependency Diagram

graph LR
  d9175aea_5971_a6c1_773d_004ce3789372["value-parser.ts"]
  ffe9c87e_35ad_f431_9625_80fc875792a7["migrate-js-config.ts"]
  ffe9c87e_35ad_f431_9625_80fc875792a7 --> d9175aea_5971_a6c1_773d_004ce3789372
  4110edba_26d6_f493_077a_dd261e1ea456["migrate-import.ts"]
  4110edba_26d6_f493_077a_dd261e1ea456 --> d9175aea_5971_a6c1_773d_004ce3789372
  f67a6019_88a0_ffd1_f91c_1a51645f6931["migrate-preflight.ts"]
  f67a6019_88a0_ffd1_f91c_1a51645f6931 --> d9175aea_5971_a6c1_773d_004ce3789372
  0064e910_a1e5_1dd9_95f1_ac33aef2f9b1["migrate-automatic-var-injection.ts"]
  0064e910_a1e5_1dd9_95f1_ac33aef2f9b1 --> d9175aea_5971_a6c1_773d_004ce3789372
  c36efdeb_7fd2_0935_2c28_bf15095a9dd9["migrate-theme-to-var.ts"]
  c36efdeb_7fd2_0935_2c28_bf15095a9dd9 --> d9175aea_5971_a6c1_773d_004ce3789372
  b9cbffa4_c352_cf3c_268f_cbb174fb3a47["ast.ts"]
  b9cbffa4_c352_cf3c_268f_cbb174fb3a47 --> d9175aea_5971_a6c1_773d_004ce3789372
  061a1d94_150d_9879_9075_9c457da6010d["at-import.ts"]
  061a1d94_150d_9879_9075_9c457da6010d --> d9175aea_5971_a6c1_773d_004ce3789372
  ba6fca27_7720_5839_0f92_bc2abb8db636["candidate.ts"]
  ba6fca27_7720_5839_0f92_bc2abb8db636 --> d9175aea_5971_a6c1_773d_004ce3789372
  f6c14bbb_2e42_58cc_18f1_c89a243da9c0["canonicalize-candidates.ts"]
  f6c14bbb_2e42_58cc_18f1_c89a243da9c0 --> d9175aea_5971_a6c1_773d_004ce3789372
  28f23724_d31a_a8d3_3dd6_07e505ec5b7b["constant-fold-declaration.ts"]
  28f23724_d31a_a8d3_3dd6_07e505ec5b7b --> d9175aea_5971_a6c1_773d_004ce3789372
  1648a493_13b2_8170_f86b_607e088d9565["css-functions.ts"]
  1648a493_13b2_8170_f86b_607e088d9565 --> d9175aea_5971_a6c1_773d_004ce3789372
  ffde8eb7_7def_91ee_918c_be4f250f76a2["utilities.ts"]
  ffde8eb7_7def_91ee_918c_be4f250f76a2 --> d9175aea_5971_a6c1_773d_004ce3789372
  7df4d001_f01e_1e05_13ee_91edb05bf1f8["decode-arbitrary-value.ts"]
  7df4d001_f01e_1e05_13ee_91edb05bf1f8 --> d9175aea_5971_a6c1_773d_004ce3789372
  1bf56ca1_f8c2_89ae_a95d_926dfbb81670["variables.ts"]
  1bf56ca1_f8c2_89ae_a95d_926dfbb81670 --> d9175aea_5971_a6c1_773d_004ce3789372
  style d9175aea_5971_a6c1_773d_004ce3789372 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

export type ValueWordNode = {
  kind: 'word'
  value: string
}

export type ValueFunctionNode = {
  kind: 'function'
  value: string
  nodes: ValueAstNode[]
}

export type ValueSeparatorNode = {
  kind: 'separator'
  value: string
}

export type ValueAstNode = ValueWordNode | ValueFunctionNode | ValueSeparatorNode

export function word(value: string): ValueWordNode {
  return {
    kind: 'word',
    value,
  }
}

function fun(value: string, nodes: ValueAstNode[]): ValueFunctionNode {
  return {
    kind: 'function',
    value: value,
    nodes,
  }
}

function separator(value: string): ValueSeparatorNode {
  return {
    kind: 'separator',
    value,
  }
}

export function toCss(ast: ValueAstNode[]) {
  let css = ''
  for (const node of ast) {
    switch (node.kind) {
      case 'word':
      case 'separator': {
        css += node.value
        break
      }
      case 'function': {
        css += node.value + '(' + toCss(node.nodes) + ')'
      }
    }
  }
  return css
}

const BACKSLASH = 0x5c
const CLOSE_PAREN = 0x29
const COLON = 0x3a
// ... (220 more lines)

Domain

Subdomains

Frequently Asked Questions

What does value-parser.ts do?
value-parser.ts is a source file in the tailwindcss codebase, written in typescript. It belongs to the Oxide domain, Scanner subdomain.
What functions are defined in value-parser.ts?
value-parser.ts defines 5 function(s): fun, parse, separator, toCss, word.
What files import value-parser.ts?
value-parser.ts is imported by 15 file(s): ast.ts, at-import.ts, candidate.ts, canonicalize-candidates.ts, constant-fold-declaration.ts, css-functions.ts, decode-arbitrary-value.ts, migrate-automatic-var-injection.ts, and 7 more.
Where is value-parser.ts in the architecture?
value-parser.ts is located at packages/tailwindcss/src/value-parser.ts (domain: Oxide, subdomain: Scanner, directory: packages/tailwindcss/src).

Analyze Your Own Codebase

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

Try Supermodel Free