mirror of
https://github.com/vector-im/hydrogen-web.git
synced 2024-11-20 03:25:52 +01:00
cd007b40e1
Fix https://github.com/vector-im/hydrogen-web/issues/686 Fix https://github.com/vector-im/hydrogen-web/issues/682 Instead of deleting the whole `target/` directory, leave it alone so the symlink driving the `npm link`/`yarn link` stays in tact. Leave Vite builds in their build directories (`/lib-build`/`/asset-build`) so you can `vite build --watch` to build on local changes and still have a consisent place to reference in the `package.json` `exports`. Previously, everything relied on `build.sh` which does a bunch of moving and renaming and made it hard to rebuild on changes. Add back support for CommonJS (adding the `package.json` `exports`). The last piece is making sure the `?url` imports (`import workerPath from 'hydrogen-view-sdk/main.js?url';`) work still. It looks like this may have just been solved via https://github.com/vitejs/vite/issues/6725 -> https://github.com/vitejs/vite/pull/7073 (literally 2 days ago) and we just need to wait for the next Vite release 🎉
31 lines
848 B
JavaScript
31 lines
848 B
JavaScript
const path = require("path");
|
|
const mergeOptions = require('merge-options');
|
|
const commonOptions = require("./vite.common-config.js");
|
|
|
|
const pathsToExport = [
|
|
"index.js",
|
|
"index.css",
|
|
"download-sandbox.html"
|
|
];
|
|
|
|
export default mergeOptions(commonOptions, {
|
|
root: "src/",
|
|
base: "./",
|
|
build: {
|
|
outDir: "../target/asset-build/",
|
|
rollupOptions: {
|
|
output: {
|
|
assetFileNames: (chunkInfo) => {
|
|
// Get rid of the hash so we can consistently reference these
|
|
// files in our `package.json` `exports`
|
|
if(pathsToExport.includes(path.basename(chunkInfo.name))) {
|
|
return "assets/[name].[ext]";
|
|
}
|
|
|
|
return "assets/[name]-[hash][extname]";
|
|
}
|
|
}
|
|
}
|
|
},
|
|
});
|