forked from extern/fediwall
7d003382ce
This feature adds a lot of dependencies and some build time, but many large screens at venues are powered by outdated android boxes and won't be able to display anything otherwise. Modern browsers are not affected, the fallback bundles are only downloaded by browsers that actually need them.
37 lines
778 B
TypeScript
37 lines
778 B
TypeScript
import { fileURLToPath, URL } from 'node:url'
|
|
|
|
import { defineConfig } from 'vite'
|
|
import vue from '@vitejs/plugin-vue'
|
|
import viteCompression from 'vite-plugin-compression';
|
|
import { gitDescribeSync } from 'git-describe';
|
|
import viteLegacy from '@vitejs/plugin-legacy'
|
|
|
|
var version;
|
|
|
|
try {
|
|
var gitInfo = gitDescribeSync();
|
|
if(gitInfo.tag) {
|
|
version = `${gitInfo.tag}`;
|
|
if (gitInfo.distance)
|
|
version += `-${gitInfo.distance}+${gitInfo.hash}`
|
|
}
|
|
} catch { }
|
|
|
|
// https://vitejs.dev/config/
|
|
export default defineConfig({
|
|
base: "./",
|
|
define: {
|
|
__VERSION__: JSON.stringify(version)
|
|
},
|
|
plugins: [
|
|
vue(),
|
|
viteCompression(),
|
|
viteLegacy(),
|
|
],
|
|
resolve: {
|
|
alias: {
|
|
'@': fileURLToPath(new URL('./src', import.meta.url))
|
|
}
|
|
}
|
|
})
|