@alova/wormhole
Version:
More modern openAPI generating solution for alova.js
27 lines (26 loc) • 1.09 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.default = default_1;
exports.getVersion = getVersion;
const node_path_1 = __importDefault(require("node:path"));
const import_fresh_1 = __importDefault(require("import-fresh"));
function default_1(projectPath) {
const packageJson = (0, import_fresh_1.default)(node_path_1.default.resolve(projectPath, './package.json'));
if (!packageJson) {
return 'v3';
}
// Find in dependencies
const alovaVersion = packageJson.dependencies?.alova;
// Find in dev dependencies
// Priority: Production dependencies > Development dependencies
const alovaDevVersion = packageJson.devDependencies?.alova;
// Framework technology stack tag vue | react
return getVersion(alovaVersion ?? alovaDevVersion);
}
function getVersion(version) {
const execArr = /(\d+)\./.exec(version ?? '') ?? [];
return `v${Number(execArr[1]) || 3}`;
}