Skip to content

Commit e13a73f

Browse files
committed
Update build and presets tests
1 parent e26da2d commit e13a73f

File tree

3 files changed

+507
-468
lines changed

3 files changed

+507
-468
lines changed

integration/helpers/vite.ts

Lines changed: 42 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -61,14 +61,29 @@ export const reactRouterConfig = ({
6161
`;
6262
};
6363

64-
type ViteConfigArgs = {
64+
type ViteConfigServerArgs = {
6565
port: number;
6666
fsAllow?: string[];
67+
};
68+
69+
type ViteConfigBuildArgs = {
70+
assetsInlineLimit?: number;
71+
assetsDir?: string;
72+
};
73+
74+
type ViteConfigBaseArgs = {
6775
envDir?: string;
6876
};
6977

78+
type ViteConfigArgs = (
79+
| ViteConfigServerArgs
80+
| { [K in keyof ViteConfigServerArgs]?: never }
81+
) &
82+
ViteConfigBuildArgs &
83+
ViteConfigBaseArgs;
84+
7085
export const viteConfig = {
71-
server: async (args: ViteConfigArgs) => {
86+
server: async (args: ViteConfigServerArgs) => {
7287
let { port, fsAllow } = args;
7388
let hmrPort = await getPort();
7489
let text = dedent`
@@ -81,27 +96,35 @@ export const viteConfig = {
8196
`;
8297
return text;
8398
},
84-
build: () => {
99+
build: ({ assetsInlineLimit, assetsDir }: ViteConfigBuildArgs = {}) => {
85100
return dedent`
86-
build: await (async () => {
87-
const fs = await import("node:fs/promises");
88-
const path = await import("node:path");
89-
const vitePackageJsonPath = path.join(import.meta.dirname, "node_modules/vite/package.json");
90-
const vitePackageJson = JSON.parse(await fs.readFile(vitePackageJsonPath, "utf8"));
91-
const isRolldown = vitePackageJson.name === "rolldown-vite";
92-
93-
return isRolldown ? {
94-
rollupOptions: {
95-
// NOTE: ignore missing export errors
96-
shimMissingExports: true,
101+
build: {
102+
rollupOptions: await (async () => {
103+
const fs = await import("node:fs/promises");
104+
const path = await import("node:path");
105+
const vitePackageJsonPath = path.join(import.meta.dirname, "node_modules/vite/package.json");
106+
const vitePackageJson = JSON.parse(await fs.readFile(vitePackageJsonPath, "utf8"));
107+
const isRolldown = vitePackageJson.name === "rolldown-vite";
108+
109+
return isRolldown ? {
97110
// NOTE: ignore "The built-in minifier is still under development." warning
98111
onwarn(warning, warn) {
99112
if (warning.code === "MINIFY_WARNING") return;
100113
warn(warning);
101114
},
102-
},
103-
} : undefined;
104-
})(),
115+
} : undefined;
116+
})(),
117+
${
118+
assetsInlineLimit !== undefined
119+
? `assetsInlineLimit: ${JSON.stringify(assetsInlineLimit)},`
120+
: ""
121+
}
122+
${
123+
assetsDir !== undefined
124+
? `assetsDir: ${JSON.stringify(assetsDir)},`
125+
: ""
126+
}
127+
},
105128
`;
106129
},
107130
basic: async (args: ViteConfigArgs) => {
@@ -112,8 +135,8 @@ export const viteConfig = {
112135
import fs from "node:fs";
113136
114137
export default async () => ({
115-
${await viteConfig.server(args)}
116-
${viteConfig.build()}
138+
${args.port ? await viteConfig.server(args) : ""}
139+
${viteConfig.build(args)}
117140
envDir: ${args.envDir ? `"${args.envDir}"` : "undefined"},
118141
plugins: [
119142
reactRouter(),

0 commit comments

Comments
 (0)