Skip to content

Commit

Permalink
Revert "feat(vite-plugin): set assets path in build to /assets (QwikD…
Browse files Browse the repository at this point in the history
…ev#5745)"

This reverts commit 80abcff.
  • Loading branch information
maiieul committed Aug 27, 2024
1 parent 572a10c commit 0f1fbee
Show file tree
Hide file tree
Showing 4 changed files with 40 additions and 33 deletions.
5 changes: 0 additions & 5 deletions .changeset/sour-papayas-travel.md

This file was deleted.

49 changes: 30 additions & 19 deletions packages/qwik/src/optimizer/src/plugins/rollup.ts
Original file line number Diff line number Diff line change
Expand Up @@ -182,34 +182,45 @@ export function normalizeRollupOutputOptionsObject(
): Rollup.OutputOptions {
const outputOpts: Rollup.OutputOptions = { ...rollupOutputOptsObj };

if (!outputOpts.assetFileNames) {
outputOpts.assetFileNames = 'build/q-[hash].[ext]';
}
if (opts.target === 'client') {
// client output
if (!outputOpts.assetFileNames) {
// SEO likes readable asset names
const assetFileNames = 'assets/[hash]-[name].[ext]';
outputOpts.assetFileNames = useAssetsDir
? `${opts.assetsDir}/${assetFileNames}`
: assetFileNames;
}
// Friendly name in dev
const fileName = opts.buildMode == 'production' ? 'build/q-[hash].js' : 'build/[name].js';
// client production output
if (!outputOpts.entryFileNames) {
outputOpts.entryFileNames = useAssetsDir ? `${opts.assetsDir}/${fileName}` : fileName;
}
if (!outputOpts.chunkFileNames) {
outputOpts.chunkFileNames = useAssetsDir ? `${opts.assetsDir}/${fileName}` : fileName;
outputOpts.assetFileNames = useAssetsDir
? `${opts.assetsDir}/${outputOpts.assetFileNames}`
: outputOpts.assetFileNames;

if (opts.buildMode === 'production') {
// client production output
if (!outputOpts.entryFileNames) {
const fileName = 'build/q-[hash].js';
outputOpts.entryFileNames = useAssetsDir ? `${opts.assetsDir}/${fileName}` : fileName;
}
if (!outputOpts.chunkFileNames) {
const fileName = 'build/q-[hash].js';
outputOpts.chunkFileNames = useAssetsDir ? `${opts.assetsDir}/${fileName}` : fileName;
}
} else {
// client development output
if (!outputOpts.entryFileNames) {
const fileName = 'build/[name].js';
outputOpts.entryFileNames = useAssetsDir ? `${opts.assetsDir}/${fileName}` : fileName;
}
if (!outputOpts.chunkFileNames) {
const fileName = 'build/[name].js';
outputOpts.chunkFileNames = useAssetsDir ? `${opts.assetsDir}/${fileName}` : fileName;
}
}
} else if (opts.buildMode === 'production') {
// server production output
// everything in same dir so './@qwik-city...' imports work from entry and chunks
if (!outputOpts.chunkFileNames) {
outputOpts.chunkFileNames = 'q-[hash].js';
}
}
// all other cases, like lib output
if (!outputOpts.assetFileNames) {
outputOpts.assetFileNames = 'assets/[hash]-[name].[ext]';
if (!outputOpts.assetFileNames) {
outputOpts.assetFileNames = 'assets/[hash].[ext]';
}
}

if (opts.target === 'client') {
Expand Down
15 changes: 8 additions & 7 deletions packages/qwik/src/optimizer/src/plugins/vite.unit.ts
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ test('command: serve, mode: development', async () => {
assert.deepEqual(build.outDir, normalizePath(resolve(cwd, 'dist')));
assert.deepEqual(rollupOptions.input, normalizePath(resolve(cwd, 'src', 'entry.dev')));

assert.deepEqual(outputOptions.assetFileNames, 'assets/[hash]-[name].[ext]');
assert.deepEqual(outputOptions.assetFileNames, 'build/q-[hash].[ext]');
assert.deepEqual(outputOptions.chunkFileNames, 'build/[name].js');
assert.deepEqual(outputOptions.entryFileNames, 'build/[name].js');
assert.deepEqual(outputOptions.format, 'es');
Expand Down Expand Up @@ -106,7 +106,8 @@ test('command: serve, mode: production', async () => {
assert.deepEqual(build.outDir, normalizePath(resolve(cwd, 'dist')));
assert.deepEqual(build.emptyOutDir, undefined);
assert.deepEqual(rollupOptions.input, normalizePath(resolve(cwd, 'src', 'entry.dev')));
assert.deepEqual(outputOptions.assetFileNames, 'assets/[hash]-[name].[ext]');

assert.deepEqual(outputOptions.assetFileNames, 'build/q-[hash].[ext]');
assert.deepEqual(outputOptions.chunkFileNames, 'build/q-[hash].js');
assert.deepEqual(outputOptions.entryFileNames, 'build/q-[hash].js');
assert.deepEqual(outputOptions.format, 'es');
Expand Down Expand Up @@ -143,7 +144,7 @@ test('command: build, mode: development', async () => {
assert.deepEqual(build.emptyOutDir, undefined);
assert.deepEqual(rollupOptions.input, [normalizePath(resolve(cwd, 'src', 'root'))]);

assert.deepEqual(outputOptions.assetFileNames, 'assets/[hash]-[name].[ext]');
assert.deepEqual(outputOptions.assetFileNames, 'build/q-[hash].[ext]');
assert.deepEqual(outputOptions.chunkFileNames, 'build/[name].js');
assert.deepEqual(outputOptions.entryFileNames, 'build/[name].js');

Expand Down Expand Up @@ -182,7 +183,7 @@ test('command: build, mode: production', async () => {
assert.deepEqual(build.emptyOutDir, undefined);
assert.deepEqual(rollupOptions.input, [normalizePath(resolve(cwd, 'src', 'root'))]);

assert.deepEqual(outputOptions.assetFileNames, 'assets/[hash]-[name].[ext]');
assert.deepEqual(outputOptions.assetFileNames, 'build/q-[hash].[ext]');
assert.deepEqual(outputOptions.chunkFileNames, 'build/q-[hash].js');
assert.deepEqual(outputOptions.entryFileNames, 'build/q-[hash].js');

Expand Down Expand Up @@ -248,7 +249,7 @@ test('command: build, --ssr entry.server.tsx', async () => {
assert.deepEqual(build.emptyOutDir, undefined);
assert.deepEqual(rollupOptions.input, [normalizePath(resolve(cwd, 'src', 'entry.server.tsx'))]);

assert.deepEqual(outputOptions.assetFileNames, 'assets/[hash]-[name].[ext]');
assert.deepEqual(outputOptions.assetFileNames, 'build/q-[hash].[ext]');
assert.deepEqual(outputOptions.chunkFileNames, undefined);
assert.deepEqual(outputOptions.entryFileNames, undefined);

Expand Down Expand Up @@ -389,7 +390,7 @@ test('command: build, --mode lib', async () => {
assert.deepEqual(build.ssr, undefined);
assert.deepEqual(rollupOptions.input, [normalizePath(resolve(cwd, 'src', 'index.ts'))]);

assert.deepEqual(outputOptions.assetFileNames, 'assets/[hash]-[name].[ext]');
assert.deepEqual(outputOptions.assetFileNames, 'build/q-[hash].[ext]');
assert.deepEqual(outputOptions.chunkFileNames, undefined);

assert.deepEqual(c.build.outDir, normalizePath(resolve(cwd, 'lib')));
Expand Down Expand Up @@ -447,7 +448,7 @@ test('command: build, --mode lib with multiple outputs', async () => {
assert.lengthOf(outputOptions, 4);

outputOptions.forEach((outputOptionsObj) => {
assert.deepEqual(outputOptionsObj.assetFileNames, 'assets/[hash]-[name].[ext]');
assert.deepEqual(outputOptionsObj.assetFileNames, 'build/q-[hash].[ext]');
assert.deepEqual(outputOptionsObj.chunkFileNames, undefined);
});

Expand Down
4 changes: 2 additions & 2 deletions starters/dev-server.ts
Original file line number Diff line number Diff line change
Expand Up @@ -351,8 +351,8 @@ async function main() {
app.use(`/~partytown`, express.static(partytownPath));

appNames.forEach((appName) => {
const buildPath = join(startersAppsDir, appName, "dist", appName);
app.use(`/${appName}`, express.static(buildPath));
const buildPath = join(startersAppsDir, appName, "dist", appName, "build");
app.use(`/${appName}/build`, express.static(buildPath));

const publicPath = join(startersAppsDir, appName, "public");
app.use(`/${appName}`, express.static(publicPath));
Expand Down

0 comments on commit 0f1fbee

Please sign in to comment.