repomix
Version:
A tool to pack repository contents to single file for AI consumption
26 lines (25 loc) • 894 B
JavaScript
import * as fs from 'node:fs/promises';
import path from 'node:path';
import * as url from 'node:url';
import { logger } from '../../shared/logger.js';
export const getVersion = async () => {
try {
const packageJson = await parsePackageJson();
if (!packageJson.version) {
logger.warn('No version found in package.json');
return 'unknown';
}
return packageJson.version;
}
catch (error) {
logger.error('Error reading package.json:', error);
return 'unknown';
}
};
const parsePackageJson = async () => {
const dirName = url.fileURLToPath(new URL('.', import.meta.url));
const packageJsonPath = path.join(dirName, '..', '..', '..', 'package.json');
const packageJsonFile = await fs.readFile(packageJsonPath, 'utf-8');
const packageJson = JSON.parse(packageJsonFile);
return packageJson;
};