You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
75 lines
1.4 KiB
75 lines
1.4 KiB
import { BuildConfig, defineBuildConfig, build } from "unbuild";
|
|
import { merge, values } from "lodash-es";
|
|
|
|
// OR tsup
|
|
|
|
const BaseConfig = [
|
|
{
|
|
entries: ["src/index.ts"],
|
|
declaration: true,
|
|
rollup: {
|
|
replace: {
|
|
values: {
|
|
__DEV__: "false",
|
|
__PROD__: "true",
|
|
},
|
|
},
|
|
emitCJS: true,
|
|
output: {
|
|
exports: "named",
|
|
},
|
|
},
|
|
},
|
|
{
|
|
entries: [
|
|
{
|
|
input: "src/index.ts",
|
|
ext: "cjs",
|
|
},
|
|
],
|
|
outDir: "dist/cjs/",
|
|
rollup: {
|
|
replace: {
|
|
values: {
|
|
__DEV__: "false",
|
|
__PROD__: "true",
|
|
},
|
|
},
|
|
output: {
|
|
dir: "dist/cjs",
|
|
entryFileNames: "[name].cjs",
|
|
format: "cjs",
|
|
preserveModules: true,
|
|
preserveModulesRoot: "src",
|
|
exports: "named",
|
|
},
|
|
},
|
|
},
|
|
{
|
|
entries: [
|
|
{
|
|
input: "src/index.ts",
|
|
ext: "mjs",
|
|
},
|
|
],
|
|
outDir: "dist/esm/",
|
|
rollup: {
|
|
replace: {
|
|
values: {
|
|
__DEV__: "false",
|
|
__PROD__: "true",
|
|
},
|
|
},
|
|
output: {
|
|
preserveModules: true,
|
|
preserveModulesRoot: "src",
|
|
format: "esm",
|
|
exports: "named",
|
|
},
|
|
},
|
|
},
|
|
] as BuildConfig[];
|
|
|
|
export function mergeConfig(targetConfig: BuildConfig) {
|
|
return defineBuildConfig(BaseConfig);
|
|
}
|
|
|