30 lines
833 B
JavaScript
30 lines
833 B
JavaScript
import nodeResolve from "@rollup/plugin-node-resolve";
|
|
import terser from "@rollup/plugin-terser";
|
|
|
|
// HACK: plugin to patch DragControls to handle non-Group objects
|
|
const patchDragControls = () => ({
|
|
name: "patch-drag-controls",
|
|
transform(code, id) {
|
|
if (!id.includes("DragControls.js")) return null;
|
|
const searchStr = "_selected = findGroup( _intersections[ 0 ].object )";
|
|
if (!code.includes(searchStr)) throw new Error(`Expected to find "${searchStr}" in DragControls.js`);
|
|
return { code: code.replace(searchStr, searchStr + " || _intersections[ 0 ].object"), map: null };
|
|
},
|
|
});
|
|
|
|
export default {
|
|
input: "./src/index.mjs",
|
|
output: {
|
|
dir: "./dist/",
|
|
format: "es",
|
|
sourcemap: true,
|
|
},
|
|
plugins: [
|
|
nodeResolve(),
|
|
patchDragControls(),
|
|
terser({
|
|
mangle: true,
|
|
}),
|
|
],
|
|
};
|