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 UpgradeToolkit TemplateAnalysis 15 dependents 5 functions

Entity Profile

Dependency Diagram

graph LR
  1d3f1613_f144_938f_08f7_49039a46ad49["value-parser.ts"]
  b2ba3368_7330_fe20_4543_9cafa8cfedc0["migrate-js-config.ts"]
  b2ba3368_7330_fe20_4543_9cafa8cfedc0 --> 1d3f1613_f144_938f_08f7_49039a46ad49
  7d223813_0df4_dfbe_850e_d5fd9ab81eef["migrate-import.ts"]
  7d223813_0df4_dfbe_850e_d5fd9ab81eef --> 1d3f1613_f144_938f_08f7_49039a46ad49
  4ccbfbad_b80c_422a_38fe_dc35ee118e8d["migrate-preflight.ts"]
  4ccbfbad_b80c_422a_38fe_dc35ee118e8d --> 1d3f1613_f144_938f_08f7_49039a46ad49
  d475bcf1_b109_d714_cc32_55d5655282ec["migrate-automatic-var-injection.ts"]
  d475bcf1_b109_d714_cc32_55d5655282ec --> 1d3f1613_f144_938f_08f7_49039a46ad49
  de8dd9be_8c47_4694_db3b_393c549a926a["migrate-theme-to-var.ts"]
  de8dd9be_8c47_4694_db3b_393c549a926a --> 1d3f1613_f144_938f_08f7_49039a46ad49
  42640952_ea63_55f1_1ff1_00816e2980ae["ast.ts"]
  42640952_ea63_55f1_1ff1_00816e2980ae --> 1d3f1613_f144_938f_08f7_49039a46ad49
  bb501946_7944_1015_b5ff_34d10aace799["at-import.ts"]
  bb501946_7944_1015_b5ff_34d10aace799 --> 1d3f1613_f144_938f_08f7_49039a46ad49
  669e6a28_c71f_3c5e_9c53_915cede7da78["candidate.ts"]
  669e6a28_c71f_3c5e_9c53_915cede7da78 --> 1d3f1613_f144_938f_08f7_49039a46ad49
  7d350d81_5de1_f9f3_5b2c_19ec8fd3c37e["canonicalize-candidates.ts"]
  7d350d81_5de1_f9f3_5b2c_19ec8fd3c37e --> 1d3f1613_f144_938f_08f7_49039a46ad49
  b567fa55_8905_40fc_b0c8_f7b1041653f6["constant-fold-declaration.ts"]
  b567fa55_8905_40fc_b0c8_f7b1041653f6 --> 1d3f1613_f144_938f_08f7_49039a46ad49
  2189e39a_5595_cbd9_3bbe_eaf87ccf42a2["css-functions.ts"]
  2189e39a_5595_cbd9_3bbe_eaf87ccf42a2 --> 1d3f1613_f144_938f_08f7_49039a46ad49
  2bc6f8eb_6339_d09c_79df_e9025a479c97["utilities.ts"]
  2bc6f8eb_6339_d09c_79df_e9025a479c97 --> 1d3f1613_f144_938f_08f7_49039a46ad49
  e90d9c51_31f0_3175_a861_610a15e277e5["decode-arbitrary-value.ts"]
  e90d9c51_31f0_3175_a861_610a15e277e5 --> 1d3f1613_f144_938f_08f7_49039a46ad49
  edaa1d08_cd1b_f279_0758_2debcf255efc["variables.ts"]
  edaa1d08_cd1b_f279_0758_2debcf255efc --> 1d3f1613_f144_938f_08f7_49039a46ad49
  style 1d3f1613_f144_938f_08f7_49039a46ad49 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)

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 UpgradeToolkit domain, TemplateAnalysis 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: UpgradeToolkit, subdomain: TemplateAnalysis, directory: packages/tailwindcss/src).

Analyze Your Own Codebase

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

Try Supermodel Free