131 lines
6.3 KiB
TypeScript
131 lines
6.3 KiB
TypeScript
import react from "@vitejs/plugin-react";
|
|
import { defineConfig } from "vite";
|
|
import dts from "vite-plugin-dts";
|
|
|
|
export default defineConfig({
|
|
root: __dirname,
|
|
cacheDir: "../../../node_modules/.vite/packages/react-audio",
|
|
plugins: [
|
|
react(),
|
|
dts({
|
|
entryRoot: "src",
|
|
tsconfigPath: "./tsconfig.lib.json",
|
|
insertTypesEntry: true,
|
|
}),
|
|
],
|
|
build: {
|
|
outDir: "./dist",
|
|
emptyOutDir: true,
|
|
reportCompressedSize: true,
|
|
sourcemap: true,
|
|
lib: {
|
|
entry: {
|
|
index: "src/index.ts",
|
|
"provider/index": "src/provider/index.ts",
|
|
"hooks/index": "src/hooks/index.ts",
|
|
"hooks/use-engine-state/use-engine-state":
|
|
"src/hooks/use-engine-state/use-engine-state.ts",
|
|
"hooks/use-audio-engine/use-audio-engine":
|
|
"src/hooks/use-audio-engine/use-audio-engine.ts",
|
|
"hooks/use-timeline/use-timeline":
|
|
"src/hooks/use-timeline/use-timeline.ts",
|
|
"hooks/use-transport/use-transport":
|
|
"src/hooks/use-transport/use-transport.ts",
|
|
"hooks/use-transport-time/use-transport-time":
|
|
"src/hooks/use-transport-time/use-transport-time.ts",
|
|
"hooks/use-track/use-track": "src/hooks/use-track/use-track.ts",
|
|
"hooks/use-plugin-chain/use-plugin-chain":
|
|
"src/hooks/use-plugin-chain/use-plugin-chain.ts",
|
|
"hooks/use-chain-plugin/use-chain-plugin":
|
|
"src/hooks/use-chain-plugin/use-chain-plugin.ts",
|
|
"hooks/use-audio-fx-plugin/use-audio-fx-plugin":
|
|
"src/hooks/use-audio-fx-plugin/use-audio-fx-plugin.ts",
|
|
"hooks/use-parameter/use-parameter":
|
|
"src/hooks/use-parameter/use-parameter.ts",
|
|
"hooks/use-preset/use-preset":
|
|
"src/hooks/use-preset/use-preset.ts",
|
|
"hooks/use-chain-snapshot/use-chain-snapshot":
|
|
"src/hooks/use-chain-snapshot/use-chain-snapshot.ts",
|
|
"hooks/use-bus/use-bus": "src/hooks/use-bus/use-bus.ts",
|
|
"hooks/use-midi-controller/use-midi-controller":
|
|
"src/hooks/use-midi-controller/use-midi-controller.ts",
|
|
"hooks/use-analyser/use-analyser":
|
|
"src/hooks/use-analyser/use-analyser.ts",
|
|
"hooks/use-playlist/use-playlist":
|
|
"src/hooks/use-playlist/use-playlist.ts",
|
|
"stores/index": "src/stores/index.ts",
|
|
"a11y/index": "src/a11y/index.ts",
|
|
"error-codes/index": "src/error-codes/index.ts",
|
|
"components/index": "src/components/index.ts",
|
|
"components/plugin-slot/plugin-slot":
|
|
"src/components/plugin-slot/plugin-slot.tsx",
|
|
"components/plugin-chain-view/plugin-chain-view":
|
|
"src/components/plugin-chain-view/plugin-chain-view.tsx",
|
|
"components/plugin-parameter-knob/plugin-parameter-knob":
|
|
"src/components/plugin-parameter-knob/plugin-parameter-knob.tsx",
|
|
"components/plugin-parameter-slider/plugin-parameter-slider":
|
|
"src/components/plugin-parameter-slider/plugin-parameter-slider.tsx",
|
|
"components/preset-manager/preset-manager":
|
|
"src/components/preset-manager/preset-manager.tsx",
|
|
"components/midi-controller-setup/midi-controller-setup":
|
|
"src/components/midi-controller-setup/midi-controller-setup.tsx",
|
|
"components/transport-controls/transport-controls":
|
|
"src/components/transport-controls/transport-controls.tsx",
|
|
"components/track-list/track-list":
|
|
"src/components/track-list/track-list.tsx",
|
|
"components/track-row/track-row":
|
|
"src/components/track-row/track-row.tsx",
|
|
"components/master-meter/master-meter":
|
|
"src/components/master-meter/master-meter.tsx",
|
|
"components/mixer/mixer": "src/components/mixer/mixer.tsx",
|
|
"components/audio-visualizer/audio-visualizer":
|
|
"src/components/audio-visualizer/audio-visualizer.tsx",
|
|
"components/audio-player/audio-player":
|
|
"src/components/audio-player/audio-player.tsx",
|
|
"components/basic-player/basic-player":
|
|
"src/components/basic-player/basic-player.tsx",
|
|
"components/premium-player/premium-player":
|
|
"src/components/premium-player/premium-player.tsx",
|
|
"components/microphone-controls/microphone-controls":
|
|
"src/components/microphone-controls/microphone-controls.tsx",
|
|
"components/glados-controls/glados-controls":
|
|
"src/components/glados-controls/glados-controls.tsx",
|
|
"components/plugin-loader/plugin-loader":
|
|
"src/components/plugin-loader/plugin-loader.tsx",
|
|
},
|
|
formats: ["es"],
|
|
},
|
|
rollupOptions: {
|
|
treeshake: true,
|
|
output: {
|
|
preserveModules: true,
|
|
preserveModulesRoot: "src",
|
|
entryFileNames: "[name].js",
|
|
},
|
|
external: [
|
|
"@suaveplan/audio-controllers",
|
|
"@suaveplan/audio-engine-browser",
|
|
"@suaveplan/audio-fx-plugin-audio-player",
|
|
"@suaveplan/audio-fx-plugin-base",
|
|
"@suaveplan/audio-fx-plugin-glados",
|
|
"@suaveplan/audio-fx-plugin-microphone",
|
|
"@suaveplan/audio-fx-plugin-mixer",
|
|
"@suaveplan/audio-timeline",
|
|
"@suaveplan/audio-transport",
|
|
"@suaveplan/error",
|
|
"@suaveplan/events",
|
|
"@suaveplan/opentelemetry",
|
|
"@suaveplan/types",
|
|
"react",
|
|
"react-dom",
|
|
"react/jsx-runtime",
|
|
"tslib",
|
|
"zod",
|
|
"zustand",
|
|
"zustand/vanilla",
|
|
/^node:/,
|
|
],
|
|
},
|
|
},
|
|
});
|