big fixes
fixes feedback from thecodacus
This commit is contained in:
@@ -6,24 +6,89 @@ import { optimizeCssModules } from 'vite-plugin-optimize-css-modules';
|
||||
import tsconfigPaths from 'vite-tsconfig-paths';
|
||||
import * as dotenv from 'dotenv';
|
||||
import { execSync } from 'child_process';
|
||||
import { readFileSync } from 'fs';
|
||||
import { join } from 'path';
|
||||
|
||||
dotenv.config();
|
||||
|
||||
// Get git hash with fallback
|
||||
const getGitHash = () => {
|
||||
// Get detailed git info with fallbacks
|
||||
const getGitInfo = () => {
|
||||
try {
|
||||
return execSync('git rev-parse --short HEAD').toString().trim();
|
||||
return {
|
||||
commitHash: execSync('git rev-parse --short HEAD').toString().trim(),
|
||||
branch: execSync('git rev-parse --abbrev-ref HEAD').toString().trim(),
|
||||
commitTime: execSync('git log -1 --format=%cd').toString().trim(),
|
||||
author: execSync('git log -1 --format=%an').toString().trim(),
|
||||
email: execSync('git log -1 --format=%ae').toString().trim(),
|
||||
remoteUrl: execSync('git config --get remote.origin.url').toString().trim(),
|
||||
repoName: execSync('git config --get remote.origin.url')
|
||||
.toString()
|
||||
.trim()
|
||||
.replace(/^.*github.com[:/]/, '')
|
||||
.replace(/\.git$/, ''),
|
||||
};
|
||||
} catch {
|
||||
return 'no-git-info';
|
||||
return {
|
||||
commitHash: 'no-git-info',
|
||||
branch: 'unknown',
|
||||
commitTime: 'unknown',
|
||||
author: 'unknown',
|
||||
email: 'unknown',
|
||||
remoteUrl: 'unknown',
|
||||
repoName: 'unknown',
|
||||
};
|
||||
}
|
||||
};
|
||||
|
||||
// Read package.json with detailed dependency info
|
||||
const getPackageJson = () => {
|
||||
try {
|
||||
const pkgPath = join(process.cwd(), 'package.json');
|
||||
const pkg = JSON.parse(readFileSync(pkgPath, 'utf-8'));
|
||||
|
||||
return {
|
||||
name: pkg.name,
|
||||
description: pkg.description,
|
||||
license: pkg.license,
|
||||
dependencies: pkg.dependencies || {},
|
||||
devDependencies: pkg.devDependencies || {},
|
||||
peerDependencies: pkg.peerDependencies || {},
|
||||
optionalDependencies: pkg.optionalDependencies || {},
|
||||
};
|
||||
} catch {
|
||||
return {
|
||||
name: 'bolt.diy',
|
||||
description: 'A DIY LLM interface',
|
||||
license: 'MIT',
|
||||
dependencies: {},
|
||||
devDependencies: {},
|
||||
peerDependencies: {},
|
||||
optionalDependencies: {},
|
||||
};
|
||||
}
|
||||
};
|
||||
|
||||
const pkg = getPackageJson();
|
||||
const gitInfo = getGitInfo();
|
||||
|
||||
export default defineConfig((config) => {
|
||||
return {
|
||||
define: {
|
||||
__COMMIT_HASH: JSON.stringify(getGitHash()),
|
||||
__COMMIT_HASH: JSON.stringify(gitInfo.commitHash),
|
||||
__GIT_BRANCH: JSON.stringify(gitInfo.branch),
|
||||
__GIT_COMMIT_TIME: JSON.stringify(gitInfo.commitTime),
|
||||
__GIT_AUTHOR: JSON.stringify(gitInfo.author),
|
||||
__GIT_EMAIL: JSON.stringify(gitInfo.email),
|
||||
__GIT_REMOTE_URL: JSON.stringify(gitInfo.remoteUrl),
|
||||
__GIT_REPO_NAME: JSON.stringify(gitInfo.repoName),
|
||||
__APP_VERSION: JSON.stringify(process.env.npm_package_version),
|
||||
// 'process.env': JSON.stringify(process.env)
|
||||
__PKG_NAME: JSON.stringify(pkg.name),
|
||||
__PKG_DESCRIPTION: JSON.stringify(pkg.description),
|
||||
__PKG_LICENSE: JSON.stringify(pkg.license),
|
||||
__PKG_DEPENDENCIES: JSON.stringify(pkg.dependencies),
|
||||
__PKG_DEV_DEPENDENCIES: JSON.stringify(pkg.devDependencies),
|
||||
__PKG_PEER_DEPENDENCIES: JSON.stringify(pkg.peerDependencies),
|
||||
__PKG_OPTIONAL_DEPENDENCIES: JSON.stringify(pkg.optionalDependencies),
|
||||
},
|
||||
build: {
|
||||
target: 'esnext',
|
||||
|
||||
Reference in New Issue
Block a user