*Refactor preset to take the global arguments and merge itself, plus allow node resolve and commonjs overrides
This commit is contained in:
parent
72ce6e66d4
commit
7776703d3f
|
@ -9,6 +9,7 @@
|
||||||
"@rollup/plugin-json": "^5.0.2",
|
"@rollup/plugin-json": "^5.0.2",
|
||||||
"@rollup/plugin-node-resolve": "^15.0.1",
|
"@rollup/plugin-node-resolve": "^15.0.1",
|
||||||
"@rollup/plugin-typescript": "^10.0.1",
|
"@rollup/plugin-typescript": "^10.0.1",
|
||||||
|
"object-merger": "^1.0.3",
|
||||||
"rollup": "^3.7.4",
|
"rollup": "^3.7.4",
|
||||||
"tslib": "^2.4.1",
|
"tslib": "^2.4.1",
|
||||||
"typescript": "^4.9.4"
|
"typescript": "^4.9.4"
|
||||||
|
|
41
src/index.ts
41
src/index.ts
|
@ -1,21 +1,34 @@
|
||||||
import { defineConfig, RollupOptions } from "rollup";
|
import { defineConfig, RollupOptions } from "rollup";
|
||||||
import commonjs from "@rollup/plugin-commonjs";
|
import commonjs from "@rollup/plugin-commonjs";
|
||||||
import { nodeResolve } from "@rollup/plugin-node-resolve";
|
import {
|
||||||
|
nodeResolve,
|
||||||
|
RollupNodeResolveOptions,
|
||||||
|
} from "@rollup/plugin-node-resolve";
|
||||||
import { bundleNativeModulesPlugin } from "@lumeweb/rollup-plugin-bundle-native-modules";
|
import { bundleNativeModulesPlugin } from "@lumeweb/rollup-plugin-bundle-native-modules";
|
||||||
import typescript from "@rollup/plugin-typescript";
|
import typescript from "@rollup/plugin-typescript";
|
||||||
import json from "@rollup/plugin-json";
|
import json from "@rollup/plugin-json";
|
||||||
|
// @ts-ignore
|
||||||
|
import merger from "object-merger";
|
||||||
|
|
||||||
export default function preset(): RollupOptions {
|
export default function preset(
|
||||||
return defineConfig({
|
globalOptions: RollupOptions,
|
||||||
plugins: [
|
resolveOptions: RollupNodeResolveOptions = {},
|
||||||
typescript(),
|
commonJsOptions: any = {}
|
||||||
json(),
|
): RollupOptions {
|
||||||
bundleNativeModulesPlugin(),
|
return merger(
|
||||||
nodeResolve({
|
globalOptions,
|
||||||
mainFields: ["main"],
|
defineConfig({
|
||||||
exportConditions: ["node", "require", "default"],
|
plugins: [
|
||||||
}),
|
typescript(),
|
||||||
commonjs(),
|
json(),
|
||||||
],
|
bundleNativeModulesPlugin(),
|
||||||
});
|
nodeResolve({
|
||||||
|
mainFields: ["main"],
|
||||||
|
exportConditions: ["node", "require", "default"],
|
||||||
|
...resolveOptions,
|
||||||
|
}),
|
||||||
|
commonjs(commonJsOptions),
|
||||||
|
],
|
||||||
|
})
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
|
@ -28,6 +28,7 @@ __metadata:
|
||||||
"@rollup/plugin-json": ^5.0.2
|
"@rollup/plugin-json": ^5.0.2
|
||||||
"@rollup/plugin-node-resolve": ^15.0.1
|
"@rollup/plugin-node-resolve": ^15.0.1
|
||||||
"@rollup/plugin-typescript": ^10.0.1
|
"@rollup/plugin-typescript": ^10.0.1
|
||||||
|
object-merger: ^1.0.3
|
||||||
prettier: ^2.8.1
|
prettier: ^2.8.1
|
||||||
rollup: ^3.7.4
|
rollup: ^3.7.4
|
||||||
tslib: ^2.4.1
|
tslib: ^2.4.1
|
||||||
|
@ -916,6 +917,13 @@ __metadata:
|
||||||
languageName: node
|
languageName: node
|
||||||
linkType: hard
|
linkType: hard
|
||||||
|
|
||||||
|
"object-merger@npm:^1.0.3":
|
||||||
|
version: 1.0.3
|
||||||
|
resolution: "object-merger@npm:1.0.3"
|
||||||
|
checksum: cdb4c5b533b82313e2f4cc60e1a9b1f13708fb9b675fed072d1866ca8a70c1172905457accf94061f3a393542994ff58ce73d21f0e75db8cf45c51436160e72f
|
||||||
|
languageName: node
|
||||||
|
linkType: hard
|
||||||
|
|
||||||
"once@npm:^1.3.0":
|
"once@npm:^1.3.0":
|
||||||
version: 1.4.0
|
version: 1.4.0
|
||||||
resolution: "once@npm:1.4.0"
|
resolution: "once@npm:1.4.0"
|
||||||
|
|
Loading…
Reference in New Issue