Home / Function/ isActionsFilePresent() — astro Function Reference

isActionsFilePresent() — astro Function Reference

Architecture documentation for the isActionsFilePresent() function in utils.ts from the astro codebase.

Entity Profile

Dependency Diagram

graph TD
  aea594e1_7788_6032_3262_65aa421a3cd8["isActionsFilePresent()"]
  0ac2db55_946e_5ee0_0aac_261f857d2b76["utils.ts"]
  aea594e1_7788_6032_3262_65aa421a3cd8 -->|defined in| 0ac2db55_946e_5ee0_0aac_261f857d2b76
  be436528_73ee_20cb_df40_a1660891d93a["search()"]
  aea594e1_7788_6032_3262_65aa421a3cd8 -->|calls| be436528_73ee_20cb_df40_a1660891d93a
  style aea594e1_7788_6032_3262_65aa421a3cd8 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

packages/astro/src/actions/utils.ts lines 37–61

export async function isActionsFilePresent(fs: typeof fsMod, srcDir: URL) {
	if (!didInitLexer) await eslexer.init;

	const actionsFile = search(fs, srcDir);
	if (!actionsFile) return false;

	let contents: string;
	try {
		contents = fs.readFileSync(actionsFile.url, 'utf-8');
	} catch {
		return false;
	}

	// Check if `server` export is present.
	// If not, the user may have an empty `actions` file,
	// or may be using the `actions` file for another purpose
	// (possible since actions are non-breaking for v4.X).
	const [, exports] = eslexer.parse(contents, actionsFile.url.pathname);
	for (const exp of exports) {
		if (exp.n === 'server') {
			return actionsFile.filename;
		}
	}
	return false;
}

Domain

Subdomains

Calls

Frequently Asked Questions

What does isActionsFilePresent() do?
isActionsFilePresent() is a function in the astro codebase, defined in packages/astro/src/actions/utils.ts.
Where is isActionsFilePresent() defined?
isActionsFilePresent() is defined in packages/astro/src/actions/utils.ts at line 37.
What does isActionsFilePresent() call?
isActionsFilePresent() calls 1 function(s): search.

Analyze Your Own Codebase

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

Try Supermodel Free