Home / File/ snippet.js — svelte Source File

snippet.js — svelte Source File

Architecture documentation for snippet.js, a javascript file in the svelte codebase.

Entity Profile

Relationship Graph

Source Code

/** @import { Snippet } from 'svelte' */
/** @import { Renderer } from '../renderer' */
/** @import { Getters } from '#shared' */

/**
 * Create a snippet programmatically
 * @template {unknown[]} Params
 * @param {(...params: Getters<Params>) => {
 *   render: () => string
 *   setup?: (element: Element) => void | (() => void)
 * }} fn
 * @returns {Snippet<Params>}
 */
export function createRawSnippet(fn) {
	// @ts-expect-error the types are a lie
	return (/** @type {Renderer} */ renderer, /** @type {Params} */ ...args) => {
		var getters = /** @type {Getters<Params>} */ (args.map((value) => () => value));
		renderer.push(
			fn(...getters)
				.render()
				.trim()
		);
	};
}

Domain

Subdomains

Functions

Frequently Asked Questions

What does snippet.js do?
snippet.js is a source file in the svelte codebase, written in javascript. It belongs to the ServerRuntime domain, Serialization subdomain.
What functions are defined in snippet.js?
snippet.js defines 1 function(s): createRawSnippet.
Where is snippet.js in the architecture?
snippet.js is located at packages/svelte/src/internal/server/blocks/snippet.js (domain: ServerRuntime, subdomain: Serialization, directory: packages/svelte/src/internal/server/blocks).

Analyze Your Own Codebase

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

Try Supermodel Free