Home / File/ validate.js — svelte Source File

validate.js — svelte Source File

Architecture documentation for validate.js, a javascript file in the svelte codebase. 4 imports, 2 dependents.

File javascript SharedInternal BitFlags 4 imports 2 dependents 4 functions

Entity Profile

Dependency Diagram

graph LR
  ed19e7a9_6c9a_d550_fb57_11945fb409ce["validate.js"]
  2aa63f4e_82c9_33e3_ac6c_5f3d46250522["utils.js"]
  ed19e7a9_6c9a_d550_fb57_11945fb409ce --> 2aa63f4e_82c9_33e3_ac6c_5f3d46250522
  02a8b5a2_13c5_e5b3_1ed2_617763d0904d["is_void"]
  ed19e7a9_6c9a_d550_fb57_11945fb409ce --> 02a8b5a2_13c5_e5b3_1ed2_617763d0904d
  91a92bf8_dda4_0433_1381_bfdc545a4813["warnings.js"]
  ed19e7a9_6c9a_d550_fb57_11945fb409ce --> 91a92bf8_dda4_0433_1381_bfdc545a4813
  5f3f0166_650d_4313_aa8b_50ab02160104["errors.js"]
  ed19e7a9_6c9a_d550_fb57_11945fb409ce --> 5f3f0166_650d_4313_aa8b_50ab02160104
  55f8ed50_b15a_01d0_494d_397077cb618a["snippet.js"]
  55f8ed50_b15a_01d0_494d_397077cb618a --> ed19e7a9_6c9a_d550_fb57_11945fb409ce
  1c4bc493_24af_177e_7307_a999997aceac["index.js"]
  1c4bc493_24af_177e_7307_a999997aceac --> ed19e7a9_6c9a_d550_fb57_11945fb409ce
  style ed19e7a9_6c9a_d550_fb57_11945fb409ce fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

import { is_void } from '../../utils.js';
import * as w from './warnings.js';
import * as e from './errors.js';

export { invalid_default_snippet } from './errors.js';

/**
 * @param {() => string} tag_fn
 * @returns {void}
 */
export function validate_void_dynamic_element(tag_fn) {
	const tag = tag_fn();
	if (tag && is_void(tag)) {
		w.dynamic_void_element_content(tag);
	}
}

/** @param {() => unknown} tag_fn */
export function validate_dynamic_element_tag(tag_fn) {
	const tag = tag_fn();
	const is_string = typeof tag === 'string';
	if (tag && !is_string) {
		e.svelte_element_invalid_this_value();
	}
}

/**
 * @param {any} store
 * @param {string} name
 */
export function validate_store(store, name) {
	if (store != null && typeof store.subscribe !== 'function') {
		e.store_invalid_shape(name);
	}
}

/**
 * @template {(...args: any[]) => unknown} T
 * @param {T} fn
 */
export function prevent_snippet_stringification(fn) {
	fn.toString = () => {
		e.snippet_without_render_tag();
		return '';
	};
	return fn;
}

Subdomains

Frequently Asked Questions

What does validate.js do?
validate.js is a source file in the svelte codebase, written in javascript. It belongs to the SharedInternal domain, BitFlags subdomain.
What functions are defined in validate.js?
validate.js defines 4 function(s): prevent_snippet_stringification, validate_dynamic_element_tag, validate_store, validate_void_dynamic_element.
What does validate.js depend on?
validate.js imports 4 module(s): errors.js, is_void, utils.js, warnings.js.
What files import validate.js?
validate.js is imported by 2 file(s): index.js, snippet.js.
Where is validate.js in the architecture?
validate.js is located at packages/svelte/src/internal/shared/validate.js (domain: SharedInternal, subdomain: BitFlags, directory: packages/svelte/src/internal/shared).

Analyze Your Own Codebase

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

Try Supermodel Free