123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107 |
- // rollup.config.js
- import { terser } from "rollup-plugin-terser";
- import resolve from "@rollup/plugin-node-resolve";
- import commonjs from "@rollup/plugin-commonjs";
- import sucrase from "@rollup/plugin-sucrase";
- import babel, { getBabelOutputPlugin } from "@rollup/plugin-babel";
- import typescript from "@rollup/plugin-typescript";
- import pkg from "./package.json";
- export default [
- {
- input: {
- fs: "./src/fs.ts",
- path: "./src/path.ts",
- dialog: "./src/dialog.ts",
- event: "./src/event.ts",
- http: "./src/http.ts",
- index: "./src/index.ts",
- process: "./src/process.ts",
- tauri: "./src/tauri.ts",
- window: "./src/window.ts",
- cli: "./src/cli.ts",
- notification: "./src/notification.ts",
- },
- treeshake: true,
- perf: true,
- output: [
- {
- dir: "dist/",
- entryFileNames: "[name].js",
- format: "cjs",
- exports: "named",
- globals: {},
- },
- {
- dir: "dist/",
- entryFileNames: "[name].mjs",
- format: "esm",
- exports: "named",
- globals: {},
- },
- ],
- plugins: [
- commonjs({}),
- resolve({
- // pass custom options to the resolve plugin
- customResolveOptions: {
- moduleDirectory: "node_modules",
- },
- }),
- typescript({
- tsconfig: "./tsconfig.json",
- }),
- babel({
- configFile: false,
- presets: [["@babel/preset-env"], ["@babel/preset-typescript"]],
- }),
- terser(),
- ],
- external: [
- ...Object.keys(pkg.dependencies || {}),
- ...Object.keys(pkg.peerDependencies || {}),
- ],
- watch: {
- chokidar: true,
- include: "src/**",
- exclude: "node_modules/**",
- },
- },
- {
- input: {
- bundle: "./src/bundle.ts",
- },
- output: [
- {
- name: "__TAURI__",
- dir: "dist/", // if it needs to run in the browser
- entryFileNames: "tauri.bundle.umd.js",
- format: "umd",
- plugins: [
- getBabelOutputPlugin({
- presets: [["@babel/preset-env", { modules: "umd" }]],
- allowAllFormats: true,
- }),
- terser(),
- ],
- globals: {},
- },
- ],
- plugins: [
- sucrase({
- exclude: ["node_modules"],
- transforms: ["typescript"],
- }),
- resolve({
- // pass custom options to the resolve plugin
- customResolveOptions: {
- moduleDirectory: "node_modules",
- },
- }),
- ],
- external: [
- ...Object.keys(pkg.dependencies || {}),
- ...Object.keys(pkg.peerDependencies || {}),
- ],
- },
- ];
|