UNPKG

@nguyennhuy/zalo-api

Version:

Unofficial Zalo API for JavaScript

30 lines (29 loc) 1.11 kB
import { compare } from "semver"; import { isBun, logger } from "./utils.js"; const VERSION = "2.1.1"; const NPM_REGISTRY = "https://registry.npmjs.org/zca-js"; export async function checkUpdate(ctx) { var _a, _b; if (!ctx.options.checkUpdate) return; const _options = Object.assign({}, (isBun ? { // eslint-disable-next-line @typescript-eslint/ban-ts-comment // @ts-ignore proxy: (_b = (_a = ctx.options.agent) === null || _a === void 0 ? void 0 : _a.proxy) === null || _b === void 0 ? void 0 : _b.href, } : { agent: ctx.options.agent })); const response = await ctx.options.polyfill(NPM_REGISTRY, _options).catch(() => null); if (!response || !response.ok) return; const data = await response.json().catch(() => null); if (!data) return; const latestVersion = data["dist-tags"].latest; if (compare(VERSION, latestVersion) === -1) { logger(ctx).info(`A new version of zca-js is available: ${latestVersion}`); } else { logger(ctx).info("zca-js is up to date"); } }