Home / Function/ to_class() — svelte Function Reference

to_class() — svelte Function Reference

Architecture documentation for the to_class() function in attributes.js from the svelte codebase.

Entity Profile

Dependency Diagram

graph TD
  efa24e01_f8d7_2cf4_7e7e_aadd84b2197e["to_class()"]
  22eadd41_615a_90cd_7963_26c9a3fc58cb["attributes.js"]
  efa24e01_f8d7_2cf4_7e7e_aadd84b2197e -->|defined in| 22eadd41_615a_90cd_7963_26c9a3fc58cb
  f6ad037c_58b5_d12c_2b22_fa60302bf35f["set_class()"]
  f6ad037c_58b5_d12c_2b22_fa60302bf35f -->|calls| efa24e01_f8d7_2cf4_7e7e_aadd84b2197e
  30cd611d_dc10_8cb7_0b6a_cde40be8727a["attributes()"]
  30cd611d_dc10_8cb7_0b6a_cde40be8727a -->|calls| efa24e01_f8d7_2cf4_7e7e_aadd84b2197e
  c1bf689f_9f15_267c_beab_8284da94d675["attr_class()"]
  c1bf689f_9f15_267c_beab_8284da94d675 -->|calls| efa24e01_f8d7_2cf4_7e7e_aadd84b2197e
  style efa24e01_f8d7_2cf4_7e7e_aadd84b2197e fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

packages/svelte/src/internal/shared/attributes.js lines 56–88

export function to_class(value, hash, directives) {
	var classname = value == null ? '' : '' + value;

	if (hash) {
		classname = classname ? classname + ' ' + hash : hash;
	}

	if (directives) {
		for (var key in directives) {
			if (directives[key]) {
				classname = classname ? classname + ' ' + key : key;
			} else if (classname.length) {
				var len = key.length;
				var a = 0;

				while ((a = classname.indexOf(key, a)) >= 0) {
					var b = a + len;

					if (
						(a === 0 || whitespace.includes(classname[a - 1])) &&
						(b === classname.length || whitespace.includes(classname[b]))
					) {
						classname = (a === 0 ? '' : classname.substring(0, a)) + classname.substring(b + 1);
					} else {
						a = b;
					}
				}
			}
		}
	}

	return classname === '' ? null : classname;
}

Subdomains

Frequently Asked Questions

What does to_class() do?
to_class() is a function in the svelte codebase, defined in packages/svelte/src/internal/shared/attributes.js.
Where is to_class() defined?
to_class() is defined in packages/svelte/src/internal/shared/attributes.js at line 56.
What calls to_class()?
to_class() is called by 3 function(s): attr_class, attributes, set_class.

Analyze Your Own Codebase

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

Try Supermodel Free