init
This commit is contained in:
71
esbuild.config.js
Normal file
71
esbuild.config.js
Normal file
@@ -0,0 +1,71 @@
|
||||
const resolvePlugin = {
|
||||
name: "resolvePlugin",
|
||||
setup(build) {
|
||||
let path = require("path")
|
||||
// url in css does not resolve via esbuild-svelte correctly
|
||||
build.onResolve({ filter: /.*/, namespace: "fakecss" }, (args) => {
|
||||
// console.log(args)
|
||||
if (args.path.match(/^\./))
|
||||
return { path: path.dirname(args.importer) + "/" + args.path }
|
||||
// return { path: path.join(args.resolveDir, "public", args.path) }
|
||||
})
|
||||
},
|
||||
}
|
||||
|
||||
////////////////////////// esbuild-svelte
|
||||
|
||||
const sveltePlugin = require("esbuild-svelte")
|
||||
|
||||
|
||||
const distDir = "dist"
|
||||
|
||||
console.log("copy public dir...")
|
||||
const copydir = require("copy-dir")
|
||||
copydir.sync(__dirname + "/public", __dirname + "/" + distDir)
|
||||
/*copydir.sync(
|
||||
__dirname + "/public/index.html",
|
||||
__dirname + "/" + distDir + "/template.html"
|
||||
)*/
|
||||
|
||||
const svelteConfig = require("./svelte.config")
|
||||
//const esbuildSvelte = require("esbuild-svelte")({
|
||||
const esbuildSvelte = sveltePlugin({
|
||||
compileOptions: {
|
||||
css: false,
|
||||
hydratable: true,
|
||||
dev: (process.argv?.length > 2 ? process.argv[2] : "build") !== "build",
|
||||
},
|
||||
preprocess: svelteConfig.preprocess,
|
||||
cache: true,
|
||||
})
|
||||
|
||||
const options = {
|
||||
color: true,
|
||||
entryPoints: ["./src/index.ts"],
|
||||
outfile: "./" + distDir + "/_dist_/index.mjs",
|
||||
metafile: "./" + distDir + "/_dist_/meta.json",
|
||||
format: "esm",
|
||||
minify: true,
|
||||
bundle: true,
|
||||
splitting: false,
|
||||
plugins: [esbuildSvelte, resolvePlugin],
|
||||
loader: {
|
||||
".woff2": "file",
|
||||
},
|
||||
sourcemap: true,
|
||||
target: ["es2020", "chrome61", "firefox60", "safari11", "edge16"],
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
sveltePlugin: sveltePlugin,
|
||||
resolvePlugin: resolvePlugin,
|
||||
options: options,
|
||||
watch: {
|
||||
path: [__dirname + "/src/**/*"],
|
||||
},
|
||||
serve: {
|
||||
onRequest(args) {
|
||||
console.log(args)
|
||||
},
|
||||
},
|
||||
}
|
||||
Reference in New Issue
Block a user