Skip to content

Commit 3eea2fb

Browse files
authored
fix(create-project): Support samples without tsconfigs (#1049)
1 parent a09086a commit 3eea2fb

File tree

1 file changed

+13
-2
lines changed

1 file changed

+13
-2
lines changed

packages/create-project/src/helpers/install.ts

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ import { readFile, writeFile } from 'node:fs/promises';
33

44
import { spawn } from './subprocess.js';
55
import { isUrlOk } from './samples.js';
6+
import { getErrorCode } from './get-error-code.js';
67

78
interface InstallArgs {
89
root: string;
@@ -45,8 +46,18 @@ export async function updateNodeVersion({ root }: InstallArgs): Promise<void> {
4546
await writeFile(fileName, fileString.replace(`@tsconfig/node${versionAlreadyInPackageJson}`, packageName));
4647

4748
const tsconfigJson = `${root}/tsconfig.json`;
48-
fileString = (await readFile(tsconfigJson)).toString();
49-
await writeFile(tsconfigJson, fileString.replace(`@tsconfig/node${versionAlreadyInPackageJson}`, packageName));
49+
50+
try {
51+
fileString = (await readFile(tsconfigJson)).toString();
52+
await writeFile(tsconfigJson, fileString.replace(`@tsconfig/node${versionAlreadyInPackageJson}`, packageName));
53+
} catch (error) {
54+
const code = getErrorCode(error);
55+
56+
// If the file doesn't exist, that's fine
57+
if (code !== 'ENOENT') {
58+
throw error;
59+
}
60+
}
5061
}
5162

5263
await writeFile(`${root}/.nvmrc`, currentNodeVersion.toString());

0 commit comments

Comments
 (0)