adding version banner to check if a new version of fredy is available

This commit is contained in:
orangecoding
2025-09-20 19:37:27 +02:00
parent da8fd13973
commit f339a2e2cf
9 changed files with 118 additions and 19 deletions

View File

@@ -3,8 +3,9 @@ import { fileURLToPath } from 'node:url';
import { readFile } from 'fs/promises';
import { createHash } from 'crypto';
import { DEFAULT_CONFIG } from './defaultConfig.js';
import fs from 'fs';
import fs, { readFileSync } from 'fs';
import logger from './services/logger.js';
import { packageUp } from 'package-up';
const RE_GT = />/g;
const RE_WEBP = /\/format\/webp/gi;
@@ -196,6 +197,22 @@ const normalizeImageUrl = (url) => {
return u;
};
/**
* returns Fredy's version
* @returns {Promise<*|string>}
*/
async function getPackageVersion() {
try {
const packagePath = await packageUp();
const packageJson = readFileSync(packagePath, 'utf8');
const json = JSON.parse(packageJson);
return json.version;
} catch (error) {
logger.error('Error reading version from package.json', error);
}
return 'N/A';
}
await refreshConfig();
export { isOneOf };
@@ -206,6 +223,7 @@ export { duringWorkingHoursOrNotSet };
export { getDirName };
export { config };
export { buildHash };
export { getPackageVersion };
export default {
isOneOf,
nullOrEmpty,