Skip to content

Commit b9eba65

Browse files
jycouetmanuel3108
andauthored
Typescript project doesn't mean ts files (#673)
* typescript project doesn't mean ts files * improve addons * add changeset * oupsy * let's see like this * Update .changeset/sour-wings-taste.md --------- Co-authored-by: Manuel <[email protected]>
1 parent afd4080 commit b9eba65

File tree

8 files changed

+20
-13
lines changed

8 files changed

+20
-13
lines changed

.changeset/sour-wings-taste.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'sv': patch
3+
---
4+
5+
fix(cli): `vite.config.*` file detection works for both .js and .ts variants

packages/addons/devtools-json/index.ts

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,11 @@ export default defineAddon({
88
homepage: 'https://github.com/ChromeDevTools/vite-plugin-devtools-json',
99
options: {},
1010

11-
run: ({ sv, typescript }) => {
12-
const ext = typescript ? 'ts' : 'js';
13-
11+
run: ({ sv, viteConfigFile }) => {
1412
sv.devDependency('vite-plugin-devtools-json', '^1.0.0');
1513

1614
// add the vite plugin
17-
sv.file(`vite.config.${ext}`, (content) => {
15+
sv.file(viteConfigFile, (content) => {
1816
const { ast, generateCode } = parseScript(content);
1917

2018
const vitePluginName = 'devtoolsJson';

packages/addons/paraglide/index.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ export default defineAddon({
5555
setup: ({ kit, unsupported }) => {
5656
if (!kit) unsupported('Requires SvelteKit');
5757
},
58-
run: ({ sv, options, typescript, kit }) => {
58+
run: ({ sv, options, viteConfigFile, typescript, kit }) => {
5959
const ext = typescript ? 'ts' : 'js';
6060
if (!kit) throw new Error('SvelteKit is required');
6161

@@ -81,7 +81,7 @@ export default defineAddon({
8181
});
8282

8383
// add the vite plugin
84-
sv.file(`vite.config.${ext}`, (content) => {
84+
sv.file(viteConfigFile, (content) => {
8585
const { ast, generateCode } = parseScript(content);
8686

8787
const vitePluginName = 'paraglideVitePlugin';

packages/addons/tailwindcss/index.ts

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,7 @@ export default defineAddon({
4141
shortDescription: 'css framework',
4242
homepage: 'https://tailwindcss.com',
4343
options,
44-
run: ({ sv, options, typescript, kit, dependencyVersion }) => {
45-
const ext = typescript ? 'ts' : 'js';
44+
run: ({ sv, options, viteConfigFile, typescript, kit, dependencyVersion }) => {
4645
const prettierInstalled = Boolean(dependencyVersion('prettier'));
4746

4847
sv.devDependency('tailwindcss', '^4.0.0');
@@ -57,7 +56,7 @@ export default defineAddon({
5756
}
5857

5958
// add the vite plugin
60-
sv.file(`vite.config.${ext}`, (content) => {
59+
sv.file(viteConfigFile, (content) => {
6160
const { ast, generateCode } = parseScript(content);
6261

6362
const vitePluginName = 'tailwindcss';

packages/addons/vitest-addon/index.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ export default defineAddon({
2020
shortDescription: 'unit testing',
2121
homepage: 'https://vitest.dev',
2222
options,
23-
run: ({ sv, typescript, kit, options }) => {
23+
run: ({ sv, viteConfigFile, typescript, kit, options }) => {
2424
const ext = typescript ? 'ts' : 'js';
2525
const unitTesting = options.usages.includes('unit');
2626
const componentTesting = options.usages.includes('component');
@@ -96,11 +96,11 @@ export default defineAddon({
9696
`;
9797
});
9898
}
99-
sv.file(`vite.config.${ext}`, (content) => {
99+
sv.file(viteConfigFile, (content) => {
100100
const { ast, generateCode } = parseScript(content);
101101

102102
const clientObjectExpression = object.create({
103-
extends: `./vite.config.${ext}`,
103+
extends: `./${viteConfigFile}`,
104104
test: {
105105
name: 'client',
106106
environment: 'browser',
@@ -116,7 +116,7 @@ export default defineAddon({
116116
});
117117

118118
const serverObjectExpression = object.create({
119-
extends: `./vite.config.${ext}`,
119+
extends: `./${viteConfigFile}`,
120120
test: {
121121
name: 'server',
122122
environment: 'node',

packages/cli/commands/add/utils.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,7 @@ export const commonFilePaths = {
111111
packageJson: 'package.json',
112112
svelteConfig: 'svelte.config.js',
113113
tsconfig: 'tsconfig.json',
114+
viteConfig: 'vite.config.js',
114115
viteConfigTS: 'vite.config.ts'
115116
} as const;
116117

packages/cli/commands/add/workspace.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@ export async function createWorkspace({
2323
const viteConfigPath = path.join(resolvedCwd, commonFilePaths.viteConfigTS);
2424
let usesTypescript = fs.existsSync(viteConfigPath);
2525

26+
const viteConfigFile = usesTypescript ? commonFilePaths.viteConfigTS : commonFilePaths.viteConfig;
27+
2628
if (TESTING) {
2729
// while executing tests, we only look into the direct `cwd`
2830
// as we might detect the monorepo `tsconfig.json` otherwise.
@@ -55,6 +57,7 @@ export async function createWorkspace({
5557
options,
5658
packageManager: packageManager ?? (await detect({ cwd }))?.name ?? getUserAgent() ?? 'npm',
5759
typescript: usesTypescript,
60+
viteConfigFile,
5861
kit: dependencies['@sveltejs/kit'] ? parseKitOptions(resolvedCwd) : undefined,
5962
dependencyVersion: (pkg) => dependencies[pkg]
6063
};

packages/core/addon/workspace.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ export type Workspace<Args extends OptionDefinition> = {
1313
*/
1414
dependencyVersion: (pkg: string) => string | undefined;
1515
typescript: boolean;
16+
viteConfigFile: string;
1617
kit: { libDirectory: string; routesDirectory: string } | undefined;
1718
packageManager: PackageManager;
1819
};

0 commit comments

Comments
 (0)