1 | var __create = Object.create;
|
2 | var __defProp = Object.defineProperty;
|
3 | var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
4 | var __getOwnPropNames = Object.getOwnPropertyNames;
|
5 | var __getProtoOf = Object.getPrototypeOf;
|
6 | var __hasOwnProp = Object.prototype.hasOwnProperty;
|
7 | var __markAsModule = (target) => __defProp(target, "__esModule", { value: true });
|
8 | var __export = (target, all) => {
|
9 | __markAsModule(target);
|
10 | for (var name in all)
|
11 | __defProp(target, name, { get: all[name], enumerable: true });
|
12 | };
|
13 | var __reExport = (target, module2, desc) => {
|
14 | if (module2 && typeof module2 === "object" || typeof module2 === "function") {
|
15 | for (let key of __getOwnPropNames(module2))
|
16 | if (!__hasOwnProp.call(target, key) && key !== "default")
|
17 | __defProp(target, key, { get: () => module2[key], enumerable: !(desc = __getOwnPropDesc(module2, key)) || desc.enumerable });
|
18 | }
|
19 | return target;
|
20 | };
|
21 | var __toModule = (module2) => {
|
22 | return __reExport(__markAsModule(__defProp(module2 != null ? __create(__getProtoOf(module2)) : {}, "default", module2 && module2.__esModule && "default" in module2 ? { get: () => module2.default, enumerable: true } : { value: module2, enumerable: true })), module2);
|
23 | };
|
24 | __export(exports, {
|
25 | exec: () => exec,
|
26 | formatVersion: () => formatVersion,
|
27 | matchVersion: () => matchVersion
|
28 | });
|
29 | var import_child_process = __toModule(require("child_process"));
|
30 | const exec = (options) => {
|
31 | const { cmd, baseDir, timeout } = options;
|
32 | return new Promise((resolved, rejected) => {
|
33 | let timeoutHandler;
|
34 | if (timeout) {
|
35 | timeoutHandler = setTimeout(() => {
|
36 | rejected("timeout");
|
37 | }, timeout);
|
38 | }
|
39 | const execProcess = (0, import_child_process.exec)(cmd, {
|
40 | cwd: baseDir
|
41 | }, (err, result) => {
|
42 | clearTimeout(timeoutHandler);
|
43 | if (err) {
|
44 | return rejected(err);
|
45 | }
|
46 | resolved(result);
|
47 | });
|
48 | execProcess.stdout.on("data", (data) => {
|
49 | });
|
50 | });
|
51 | };
|
52 | const formatVersion = (version) => {
|
53 | const versionParts = version.replace(/[^\d\.]/g, "").split(".");
|
54 | const versionInfo = {
|
55 | version,
|
56 | major: +(versionParts[0] || 0),
|
57 | minor: +(versionParts[1] || 0),
|
58 | pacth: +(versionParts[2] || 0),
|
59 | tag: ["beta", "alpha"].find((tag) => version.includes(tag)),
|
60 | score: 0
|
61 | };
|
62 | versionInfo.score = versionInfo.major * 1e12 + versionInfo.minor * 1e6 + versionInfo.pacth;
|
63 | return versionInfo;
|
64 | };
|
65 | const matchVersion = (version, matchRule) => {
|
66 | const rule = matchRule.replace(/[^\d\.]/g, "").split(".");
|
67 | if (rule[0] && version.major !== +rule[0]) {
|
68 | return false;
|
69 | }
|
70 | if (rule[1] && version.minor !== +rule[1]) {
|
71 | return false;
|
72 | }
|
73 | if (rule[2] && version.pacth !== +rule[2]) {
|
74 | return false;
|
75 | }
|
76 | return true;
|
77 | };
|
78 |
|
79 | 0 && (module.exports = {
|
80 | exec,
|
81 | formatVersion,
|
82 | matchVersion
|
83 | });
|