samvyo-js-sdk
Version:
This is the client js sdk for cutting-edge Samvyo real-time voice/video cloud.
54 lines (51 loc) • 1.54 kB
JavaScript
import { defineConfig } from 'vite'
import { readFileSync } from 'fs'
const pkg = JSON.parse(readFileSync('./package.json', 'utf8'))
const banner = readFileSync('./banner.txt', 'utf8')
.replace('<%= pkg.name %>', pkg.name)
.replace('<%= pkg.version %>', pkg.version)
.replace('<%= pkg.description %>', pkg.description)
.replace('<%= pkg.author %>', pkg.author)
.replace('<%= pkg.license %>', pkg.license)
.replace('<%= currentYear %>', new Date().getFullYear())
export default defineConfig({
build: {
lib: {
entry: './build.js',
name: 'samvyo',
fileName: () => 'samvyo-js-sdk.js',
formats: ['umd']
},
rollupOptions: {
output: {
banner: banner,
format: 'umd',
name: 'samvyo'
}
},
commonjsOptions: {
include: [/node_modules/],
transformMixedEsModules: true,
requireReturnsDefault: 'auto'
},
outDir: 'dest',
emptyOutDir: true,
sourcemap: process.env.NODE_ENV === 'development',
minify: process.env.NODE_ENV === 'production' ? 'terser' : false,
terserOptions: process.env.NODE_ENV === 'production' ? {
compress: {
drop_console: true,
drop_debugger: true
}
} : undefined
},
define: {
global: 'globalThis',
'process.env.NODE_ENV': JSON.stringify(process.env.NODE_ENV || 'production'),
'process.env.PUBLIC_URL': JSON.stringify(process.env.PUBLIC_URL || '')
},
optimizeDeps: {
include: ['debug', 'events']
},
mode: process.env.NODE_ENV || 'production'
})