Home / File/ cli-command-runner.ts — astro Source File

cli-command-runner.ts — astro Source File

Architecture documentation for cli-command-runner.ts, a typescript file in the astro codebase. 2 imports, 0 dependents.

Entity Profile

Dependency Diagram

graph LR
  46649658_9306_4493_b1c5_82761fe3bf46["cli-command-runner.ts"]
  7db42c05_e873_0887_a39f_34451c181149["../definitions.js"]
  46649658_9306_4493_b1c5_82761fe3bf46 --> 7db42c05_e873_0887_a39f_34451c181149
  9eb8242b_fdf4_2f0a_cd20_f5365a0c228e["../domain/command.js"]
  46649658_9306_4493_b1c5_82761fe3bf46 --> 9eb8242b_fdf4_2f0a_cd20_f5365a0c228e
  style 46649658_9306_4493_b1c5_82761fe3bf46 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

import type { CommandRunner, HelpDisplay } from '../definitions.js';
import type { AnyCommand } from '../domain/command.js';

export class CliCommandRunner implements CommandRunner {
	readonly #helpDisplay: HelpDisplay;

	constructor({
		helpDisplay,
	}: {
		helpDisplay: HelpDisplay;
	}) {
		this.#helpDisplay = helpDisplay;
	}

	run<T extends AnyCommand>(
		command: T,
		...args: Parameters<T['run']>
	): ReturnType<T['run']> | undefined {
		if (this.#helpDisplay.shouldFire()) {
			this.#helpDisplay.show(command.help);
			return;
		}
		return command.run(...args);
	}
}

Domain

Subdomains

Dependencies

  • ../definitions.js
  • ../domain/command.js

Frequently Asked Questions

What does cli-command-runner.ts do?
cli-command-runner.ts is a source file in the astro codebase, written in typescript. It belongs to the CoreAstro domain, RenderingEngine subdomain.
What does cli-command-runner.ts depend on?
cli-command-runner.ts imports 2 module(s): ../definitions.js, ../domain/command.js.
Where is cli-command-runner.ts in the architecture?
cli-command-runner.ts is located at packages/astro/src/cli/infra/cli-command-runner.ts (domain: CoreAstro, subdomain: RenderingEngine, directory: packages/astro/src/cli/infra).

Analyze Your Own Codebase

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

Try Supermodel Free