Home / File/ dev.js — svelte Source File

dev.js — svelte Source File

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

File javascript SharedInternal BitFlags 1 imports 7 dependents 2 functions

Entity Profile

Dependency Diagram

graph LR
  66d86b00_6f66_4791_e665_59e2cf45dc7f["dev.js"]
  cb946435_ce66_d1e8_6bee_287bdb07e7c5["utils.js"]
  66d86b00_6f66_4791_e665_59e2cf45dc7f --> cb946435_ce66_d1e8_6bee_287bdb07e7c5
  2ee049d6_d6d3_ee9b_a2e1_010085c52b2c["inspect.js"]
  2ee049d6_d6d3_ee9b_a2e1_010085c52b2c --> 66d86b00_6f66_4791_e665_59e2cf45dc7f
  71020d3b_ab64_9fea_2a06_dab93412f92f["proxy.js"]
  71020d3b_ab64_9fea_2a06_dab93412f92f --> 66d86b00_6f66_4791_e665_59e2cf45dc7f
  2fb8b3eb_7c25_3930_a184_09fab29d537f["deriveds.js"]
  2fb8b3eb_7c25_3930_a184_09fab29d537f --> 66d86b00_6f66_4791_e665_59e2cf45dc7f
  e5c35d51_28d8_9054_923d_b7f82a3c8dc2["sources.js"]
  e5c35d51_28d8_9054_923d_b7f82a3c8dc2 --> 66d86b00_6f66_4791_e665_59e2cf45dc7f
  bde4209f_8ffc_1594_4024_b1835a44bcf6["runtime.js"]
  bde4209f_8ffc_1594_4024_b1835a44bcf6 --> 66d86b00_6f66_4791_e665_59e2cf45dc7f
  4440efa2_b84c_d186_53ca_534b0add2937["dev.js"]
  4440efa2_b84c_d186_53ca_534b0add2937 --> 66d86b00_6f66_4791_e665_59e2cf45dc7f
  2d51c6c9_d3dc_2c19_12a2_18adb2ef1c08["hydratable.js"]
  2d51c6c9_d3dc_2c19_12a2_18adb2ef1c08 --> 66d86b00_6f66_4791_e665_59e2cf45dc7f
  style 66d86b00_6f66_4791_e665_59e2cf45dc7f fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

import { define_property } from './utils.js';

/**
 * @param {string} label
 * @returns {Error & { stack: string } | null}
 */
export function get_error(label) {
	const error = new Error();
	const stack = get_stack();

	if (stack.length === 0) {
		return null;
	}

	stack.unshift('\n');

	define_property(error, 'stack', {
		value: stack.join('\n')
	});

	define_property(error, 'name', {
		value: label
	});

	return /** @type {Error & { stack: string }} */ (error);
}

/**
 * @returns {string[]}
 */
export function get_stack() {
	// @ts-ignore - doesn't exist everywhere
	const limit = Error.stackTraceLimit;
	// @ts-ignore - doesn't exist everywhere
	Error.stackTraceLimit = Infinity;
	const stack = new Error().stack;
	// @ts-ignore - doesn't exist everywhere
	Error.stackTraceLimit = limit;

	if (!stack) return [];

	const lines = stack.split('\n');
	const new_lines = [];

	for (let i = 0; i < lines.length; i++) {
		const line = lines[i];
		const posixified = line.replaceAll('\\', '/');

		if (line.trim() === 'Error') {
			continue;
		}

		if (line.includes('validate_each_keys')) {
			return [];
		}

		if (posixified.includes('svelte/src/internal') || posixified.includes('node_modules/.vite')) {
			continue;
		}

		new_lines.push(line);
	}

	return new_lines;
}

Subdomains

Dependencies

Frequently Asked Questions

What does dev.js do?
dev.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 dev.js?
dev.js defines 2 function(s): get_error, get_stack.
What does dev.js depend on?
dev.js imports 1 module(s): utils.js.
What files import dev.js?
dev.js is imported by 7 file(s): deriveds.js, dev.js, hydratable.js, inspect.js, proxy.js, runtime.js, sources.js.
Where is dev.js in the architecture?
dev.js is located at packages/svelte/src/internal/shared/dev.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