UNPKG

universal-build-plugin-version-check-test

Version:

一个支持多种前端构建工具的通用插件框架,包括 Vite、Webpack、Rollup 等,提供版本检查、构建优化等功能

71 lines 1.9 kB
import type { VersionInfoOption } from '../types'; /** * 版本信息接口 */ export interface VersionInfo { /** 版本号 */ version: string | number; /** 构建时间 */ buildTime: string; /** Git 提交哈希 */ gitCommit?: string; /** Git 分支 */ gitBranch?: string; /** 项目名称 */ projectName?: string; meta?: { [key: string]: any; }; } /** * 版本管理工具类 */ export declare class VersionManager { private rootDir; private versionFilePath; constructor(rootDir?: string); /** * 生成版本信息 */ generateVersionInfo(options: VersionInfoOption): Promise<VersionInfo>; /** * git 生成版本号 */ generateGitHashVersionInfo(): Promise<{ version: string; gitCommit: string; gitBranch: string; }>; /** * 自定义配置版本生成信息 */ generateCustomVersionInfo(options: VersionInfoOption): Promise<string | number>; /** * 读取package.json生成信息, 兜底方案,如果所有都生成错误,会使用当前时间戳生成 */ generatePackageInfo(): Promise<string>; /** * 时间戳生成版本号,降级处理 */ generateTimestampVersion(): string; /** * 写入版本文件 * @param versionInfo 版本信息 * @param outputDir 可选的输出目录,如果不提供则使用默认的项目根目录 */ writeVersionFile(versionInfo: VersionInfo, outputDir?: string): Promise<void>; /** * 读取现有版本文件 */ readVersionFile(): Promise<VersionInfo | null>; /** * 获取 Git 信息 */ private getGitInfo; /** * 清理版本文件 */ cleanVersionFile(): Promise<void>; isAsyncFunction(fn: unknown): fn is (...args: any[]) => Promise<any>; } //# sourceMappingURL=version-manager.d.ts.map