You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
import pkg from './package.json' import { execSync } from 'child_process' import vue from '@vitejs/plugin-vue' import WindiCSS from 'vite-plugin-windicss' import { resolve } from "path"
export default { plugins: [ vue(), WindiCSS() ], define: { APP_TITLE: JSON.stringify(pkg.name), APP_VERSION: JSON.stringify(buildVersion()), APP_REPOSITORY: JSON.stringify(pkg.repository), APP_LICENSE: JSON.stringify(pkg.license), }, resolve: { alias: { "@": resolve(__dirname, "src"), }, }, }
// FUNCTIONS
//----------
function buildVersion(): string { const version = pkg.version if (!isGitCommand()) { return version } const dirty = Number(execSync("git status -s | wc -l").toString()) return dirty > 0 ? `${version}…${dirty}` : version }
function isGitCommand(): boolean { try { execSync("command -v git") return true } catch (e) { return false } }
|