Home / File/ SvelteBoundary.js — svelte Source File

SvelteBoundary.js — svelte Source File

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

File javascript Compiler Transformer 4 imports 1 dependents 1 functions

Entity Profile

Dependency Diagram

graph LR
  2437cedc_913d_862c_4fa3_1015ae2fc696["SvelteBoundary.js"]
  495501a4_a342_6a4d_ac11_e3e2fee8b218["errors.js"]
  2437cedc_913d_862c_4fa3_1015ae2fc696 --> 495501a4_a342_6a4d_ac11_e3e2fee8b218
  a146f6ac_0088_8736_b6ce_318f9f115170["e"]
  2437cedc_913d_862c_4fa3_1015ae2fc696 --> a146f6ac_0088_8736_b6ce_318f9f115170
  c4b4ac8d_9914_5ede_1aea_723bf80d2e9b["fragment.js"]
  2437cedc_913d_862c_4fa3_1015ae2fc696 --> c4b4ac8d_9914_5ede_1aea_723bf80d2e9b
  313d2a82_30ea_3161_3aad_0cc2094979aa["mark_subtree_dynamic"]
  2437cedc_913d_862c_4fa3_1015ae2fc696 --> 313d2a82_30ea_3161_3aad_0cc2094979aa
  4aa8a188_84d4_0274_ed83_cac0ab1d3572["index.js"]
  4aa8a188_84d4_0274_ed83_cac0ab1d3572 --> 2437cedc_913d_862c_4fa3_1015ae2fc696
  style 2437cedc_913d_862c_4fa3_1015ae2fc696 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

/** @import { AST } from '#compiler' */
/** @import { Context } from '../types' */
import * as e from '../../../errors.js';
import { mark_subtree_dynamic } from './shared/fragment.js';

const valid = ['onerror', 'failed', 'pending'];

/**
 * @param {AST.SvelteBoundary} node
 * @param {Context} context
 */
export function SvelteBoundary(node, context) {
	for (const attribute of node.attributes) {
		if (attribute.type !== 'Attribute' || !valid.includes(attribute.name)) {
			e.svelte_boundary_invalid_attribute(attribute);
		}

		if (
			attribute.value === true ||
			(Array.isArray(attribute.value) &&
				(attribute.value.length !== 1 || attribute.value[0].type !== 'ExpressionTag'))
		) {
			e.svelte_boundary_invalid_attribute_value(attribute);
		}
	}

	mark_subtree_dynamic(context.path);

	context.next();
}

Domain

Subdomains

Functions

Frequently Asked Questions

What does SvelteBoundary.js do?
SvelteBoundary.js is a source file in the svelte codebase, written in javascript. It belongs to the Compiler domain, Transformer subdomain.
What functions are defined in SvelteBoundary.js?
SvelteBoundary.js defines 1 function(s): SvelteBoundary.
What does SvelteBoundary.js depend on?
SvelteBoundary.js imports 4 module(s): e, errors.js, fragment.js, mark_subtree_dynamic.
What files import SvelteBoundary.js?
SvelteBoundary.js is imported by 1 file(s): index.js.
Where is SvelteBoundary.js in the architecture?
SvelteBoundary.js is located at packages/svelte/src/compiler/phases/2-analyze/visitors/SvelteBoundary.js (domain: Compiler, subdomain: Transformer, directory: packages/svelte/src/compiler/phases/2-analyze/visitors).

Analyze Your Own Codebase

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

Try Supermodel Free