1
0
Fork 1
mirror of https://github.com/elk-zone/elk.git synced 2024-11-20 07:49:57 +00:00
elk/modules/build-info.ts

31 lines
771 B
TypeScript
Raw Normal View History

2022-12-26 19:33:19 +00:00
import { addVitePlugin, defineNuxtModule } from '@nuxt/kit'
import Git from 'simple-git'
import { version } from '../package.json'
import type { BuildInfo } from '~/types'
export default defineNuxtModule({
meta: {
name: 'elk:build-info',
},
async setup() {
const git = Git()
const buildInfo: BuildInfo = {
version,
time: +Date.now(),
commit: await git.revparse(['HEAD']),
branch: await git.revparse(['--abbrev-ref', 'HEAD']),
}
addVitePlugin({
name: 'elk:build-info',
resolveId(id) {
if (id === 'virtual:build-info')
return id
},
load(id) {
if (id === 'virtual:build-info')
return `export default ${JSON.stringify(buildInfo, null, 2)}`
},
})
},
})