summaryrefslogtreecommitdiff
path: root/src/cli.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/cli.ts')
-rw-r--r--src/cli.ts23
1 files changed, 2 insertions, 21 deletions
diff --git a/src/cli.ts b/src/cli.ts
index 62e50f3eb..0a5c9612d 100644
--- a/src/cli.ts
+++ b/src/cli.ts
@@ -1,10 +1,10 @@
import type { AstroConfig } from './@types/astro';
import * as colors from 'kleur/colors';
-import { join as pathJoin, resolve as pathResolve } from 'path';
-import { existsSync, promises as fsPromises } from 'fs';
+import { promises as fsPromises } from 'fs';
import yargs from 'yargs-parser';
+import { loadConfig } from './config.js';
import generate from './generate.js';
import devServer from './dev.js';
@@ -49,25 +49,6 @@ async function printVersion() {
console.error(pkg.version);
}
-async function loadConfig(rawRoot: string | undefined): Promise<AstroConfig | undefined> {
- if (typeof rawRoot === 'undefined') {
- rawRoot = process.cwd();
- }
-
- const root = pathResolve(rawRoot);
- const fileProtocolRoot = `file://${root}/`;
- const astroConfigPath = pathJoin(root, 'astro.config.mjs');
-
- if (!existsSync(astroConfigPath)) {
- return undefined;
- }
-
- const astroConfig: AstroConfig = (await import(astroConfigPath)).default;
- astroConfig.projectRoot = new URL(astroConfig.projectRoot + '/', fileProtocolRoot);
- astroConfig.hmxRoot = new URL(astroConfig.hmxRoot + '/', fileProtocolRoot);
- return astroConfig;
-}
-
async function runCommand(rawRoot: string, cmd: (a: AstroConfig) => Promise<void>) {
const astroConfig = await loadConfig(rawRoot);
if (typeof astroConfig === 'undefined') {