Home / Function/ parseNpmName() — astro Function Reference

parseNpmName() — astro Function Reference

Architecture documentation for the parseNpmName() function in util.ts from the astro codebase.

Entity Profile

Dependency Diagram

graph TD
  e945901c_7b15_c023_195f_461420fdd5ec["parseNpmName()"]
  0ef4b6b0_d7c6_6d2e_1d1a_4cc67aae78db["util.ts"]
  e945901c_7b15_c023_195f_461420fdd5ec -->|defined in| 0ef4b6b0_d7c6_6d2e_1d1a_4cc67aae78db
  style e945901c_7b15_c023_195f_461420fdd5ec fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

packages/astro/src/core/util.ts lines 72–95

export function parseNpmName(
	spec: string,
): { scope?: string; name: string; subpath?: string } | undefined {
	// not an npm package
	if (!spec || spec[0] === '.' || spec[0] === '/') return undefined;

	let scope: string | undefined;
	let name = '';

	let parts = spec.split('/');
	if (parts[0][0] === '@') {
		scope = parts[0];
		name = parts.shift() + '/';
	}
	name += parts.shift();

	let subpath = parts.length ? `./${parts.join('/')}` : undefined;

	return {
		scope,
		name,
		subpath,
	};
}

Domain

Subdomains

Frequently Asked Questions

What does parseNpmName() do?
parseNpmName() is a function in the astro codebase, defined in packages/astro/src/core/util.ts.
Where is parseNpmName() defined?
parseNpmName() is defined in packages/astro/src/core/util.ts at line 72.

Analyze Your Own Codebase

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

Try Supermodel Free