From 431e1b87bdb874ba019596e06488dfaa66b9b491 Mon Sep 17 00:00:00 2001 From: Felix Roos Date: Tue, 8 Nov 2022 23:16:24 +0100 Subject: [PATCH] add webaudio cjs + esm build task --- packages/webaudio/package.json | 7 +++++-- packages/webaudio/vite.config.js | 19 +++++++++++++++++++ 2 files changed, 24 insertions(+), 2 deletions(-) create mode 100644 packages/webaudio/vite.config.js diff --git a/packages/webaudio/package.json b/packages/webaudio/package.json index 8ddf62b3..ec5e1168 100644 --- a/packages/webaudio/package.json +++ b/packages/webaudio/package.json @@ -2,13 +2,16 @@ "name": "@strudel.cycles/webaudio", "version": "0.3.2", "description": "Web Audio helpers for Strudel", - "main": "index.mjs", + "main": "dist/index.cjs.mjs", + "module": "dist/index.es.js", "type": "module", "directories": { "example": "examples" }, "scripts": { - "example": "npx parcel examples/repl.html" + "example": "npx parcel examples/repl.html", + "build": "vite build", + "prepublish": "npm run build" }, "repository": { "type": "git", diff --git a/packages/webaudio/vite.config.js b/packages/webaudio/vite.config.js new file mode 100644 index 00000000..5df3b215 --- /dev/null +++ b/packages/webaudio/vite.config.js @@ -0,0 +1,19 @@ +import { defineConfig } from 'vite'; +import { dependencies } from './package.json'; +import { resolve } from 'path'; + +// https://vitejs.dev/config/ +export default defineConfig({ + plugins: [], + build: { + lib: { + entry: resolve(__dirname, 'index.mjs'), + formats: ['es', 'cjs'], + fileName: (ext) => `index.${ext}.js`, + }, + rollupOptions: { + external: [...Object.keys(dependencies)], + }, + target: 'esnext', + }, +});