UNPKG

@capawesome/cli

Version:

The Capawesome Cloud Command Line Interface (CLI) to manage Live Updates and more.

27 lines (26 loc) 999 B
import { createRequire } from 'module'; import consola from 'consola'; import * as semver from 'semver'; const require = createRequire(import.meta.url); const pkg = require('../../package.json'); import httpClient from '../utils/http-client.js'; class UpdateServiceImpl { httpClient; constructor(httpClient) { this.httpClient = httpClient; } async checkForUpdate() { try { const response = await this.httpClient.get(`https://registry.npmjs.org/${pkg.name}/latest`); const latestVersion = response.data.version; if (semver.gt(latestVersion, pkg.version)) { consola.warn(`New version of Capawesome CLI available: ${pkg.name}@${latestVersion}. Please update to receive the latest features and bug fixes.`); } } catch (error) { consola.warn('Failed to check for updates.'); } } } const updateService = new UpdateServiceImpl(httpClient); export default updateService;