/
lostSun
/
project-client-server-apps
Обзор
Документация
Войти
/
lostSun
/
project-client-server-apps
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
server/node_modules/simple-update-notifier/src/hasNewVersion.ts
40 строк
1 KB
1lostsun
update project
25 май 2025, 13:12
25 май 2025, 13:12
78a0079
Код
Авторство
О чём код?
import semver from 'semver'; import { createConfigDir, getLastUpdate, saveLastUpdate } from './cache'; import getDistVersion from './getDistVersion'; import { IUpdate } from './types'; const hasNewVersion = async ({ pkg, updateCheckInterval = 1000 * 60 * 60 * 24, distTag = 'latest', alwaysRun, debug, }: IUpdate) => { createConfigDir(); const lastUpdateCheck = getLastUpdate(pkg.name); if ( alwaysRun || !lastUpdateCheck || lastUpdateCheck < new Date().getTime() - updateCheckInterval ) { const latestVersion = await getDistVersion(pkg.name, distTag); saveLastUpdate(pkg.name); if (semver.gt(latestVersion, pkg.version)) { return latestVersion; } else if (debug) { console.error( `Latest version (${latestVersion}) not newer than current version (${pkg.version})` ); } } else if (debug) { console.error( `Too recent to check for a new update. simpleUpdateNotifier() interval set to ${updateCheckInterval}ms but only ${ new Date().getTime() - lastUpdateCheck }ms since last check.` ); } return false; }; export default hasNewVersion;