import type { Plugin } from 'vite'
export function cspPlugin(): Plugin {
return {
name: 'vite-plugin-csp',
transformIndexHtml(html) {
const isDev = process.env.NODE_ENV === 'development'
const apiUrl = process.env.VITE_APP_API || 'http://zsmartex.com:8080'
const devUrl = apiUrl
const prodUrl = apiUrl.replace(/^http:/, 'https:')
const cspContent = isDev
? `default-src 'self' blob: data:;
script-src 'self' 'wasm-unsafe-eval' blob:;
style-src 'self' 'unsafe-inline';
connect-src 'self' ${devUrl};
img-src 'self' data:;`
: `default-src 'self' blob: data:;
script-src 'self' 'wasm-unsafe-eval' blob:;
style-src 'self';
connect-src 'self' ${devUrl};
img-src 'self' data:;`
return html.replace(
//,
``
)
},
}
}