rollup.config.js 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. import resolve from "@rollup/plugin-node-resolve";
  2. import commonjs from "@rollup/plugin-commonjs";
  3. import typescript from "rollup-plugin-typescript2";
  4. import babel from "rollup-plugin-babel";
  5. import { DEFAULT_EXTENSIONS } from "@babel/core";
  6. import react from "react";
  7. import reactDom from "react-dom";
  8. import pkg from "./package.json";
  9. export default {
  10. input: "src/index.ts",
  11. output: [
  12. {
  13. file: pkg.main,
  14. format: "cjs",
  15. file: pkg.main,
  16. },
  17. {
  18. format: "esm",
  19. file: pkg.module,
  20. },
  21. ],
  22. plugins: [
  23. resolve({
  24. extensions: [".js", ".jsx", ".ts", ".tsx"],
  25. preferBuiltins: true,
  26. }),
  27. commonjs({
  28. exclude: "../../node_modules",
  29. namedExports: {
  30. react: Object.keys(react),
  31. "react-dom": Object.keys(reactDom),
  32. },
  33. }),
  34. typescript({
  35. useTsconfigDeclarationDir: true,
  36. }),
  37. babel({
  38. exclude: ["../../node_modules/**", "node_modules/**"],
  39. extensions: [...DEFAULT_EXTENSIONS, ".ts", ".tsx"],
  40. }),
  41. ],
  42. };