Home / Function/ extractCnClassesFromAttribute() — ui Function Reference

extractCnClassesFromAttribute() — ui Function Reference

Architecture documentation for the extractCnClassesFromAttribute() function in transform-style-map.ts from the ui codebase.

Entity Profile

Dependency Diagram

graph TD
  7ae791a4_b3a5_57c7_68a9_d4375998b5e7["extractCnClassesFromAttribute()"]
  cef4e429_7112_fef5_ae0b_a838a57ccf71["transform-style-map.ts"]
  7ae791a4_b3a5_57c7_68a9_d4375998b5e7 -->|defined in| cef4e429_7112_fef5_ae0b_a838a57ccf71
  e02dab01_6687_6666_d998_78768ab89830["applyToClassNameAttributes()"]
  e02dab01_6687_6666_d998_78768ab89830 -->|calls| 7ae791a4_b3a5_57c7_68a9_d4375998b5e7
  19d51d29_43e2_13c5_a0b3_791f6900bbaa["isStringLiteralLike()"]
  7ae791a4_b3a5_57c7_68a9_d4375998b5e7 -->|calls| 19d51d29_43e2_13c5_a0b3_791f6900bbaa
  36418f07_a757_bf99_cc48_08363c18880c["extractCnClasses()"]
  7ae791a4_b3a5_57c7_68a9_d4375998b5e7 -->|calls| 36418f07_a757_bf99_cc48_08363c18880c
  1e57bbcb_bd35_08f0_4331_f460319d4a4a["isCnCall()"]
  7ae791a4_b3a5_57c7_68a9_d4375998b5e7 -->|calls| 1e57bbcb_bd35_08f0_4331_f460319d4a4a
  style 7ae791a4_b3a5_57c7_68a9_d4375998b5e7 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

packages/shadcn/src/styles/transform-style-map.ts lines 205–234

function extractCnClassesFromAttribute(initializer: Node) {
  const classes: string[] = []

  if (isStringLiteralLike(initializer)) {
    return extractCnClasses(initializer.getLiteralText())
  }

  if (!Node.isJsxExpression(initializer)) {
    return classes
  }

  const expression = initializer.getExpression()
  if (!expression) {
    return classes
  }

  if (isStringLiteralLike(expression)) {
    return extractCnClasses(expression.getLiteralText())
  }

  if (Node.isCallExpression(expression) && isCnCall(expression)) {
    for (const argument of expression.getArguments()) {
      if (isStringLiteralLike(argument)) {
        classes.push(...extractCnClasses(argument.getLiteralText()))
      }
    }
  }

  return classes
}

Subdomains

Frequently Asked Questions

What does extractCnClassesFromAttribute() do?
extractCnClassesFromAttribute() is a function in the ui codebase, defined in packages/shadcn/src/styles/transform-style-map.ts.
Where is extractCnClassesFromAttribute() defined?
extractCnClassesFromAttribute() is defined in packages/shadcn/src/styles/transform-style-map.ts at line 205.
What does extractCnClassesFromAttribute() call?
extractCnClassesFromAttribute() calls 3 function(s): extractCnClasses, isCnCall, isStringLiteralLike.
What calls extractCnClassesFromAttribute()?
extractCnClassesFromAttribute() is called by 1 function(s): applyToClassNameAttributes.

Analyze Your Own Codebase

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

Try Supermodel Free