From 73e6916dfb4956e733be0542bb3f8bf87fd89925 Mon Sep 17 00:00:00 2001
From: lyh <925863403@qq.com>
Date: 星期五, 12 九月 2025 17:16:07 +0800
Subject: [PATCH] 起落架DNC初始化代码

---
 build/check-versions.js |   49 +++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 49 insertions(+), 0 deletions(-)

diff --git a/build/check-versions.js b/build/check-versions.js
new file mode 100644
index 0000000..17352f3
--- /dev/null
+++ b/build/check-versions.js
@@ -0,0 +1,49 @@
+'use strict';
+const chalk = require('chalk');
+const semver = require('semver');
+const packageConfig = require('../package.json');
+const shell = require('shelljs');
+function exec (cmd) {
+  return require('child_process').execSync(cmd).toString().trim()
+}
+
+const versionRequirements = [
+  {
+    name: 'node',
+    currentVersion: semver.clean(process.version),
+    versionRequirement: packageConfig.engines.node
+  }
+];
+
+if (shell.which('npm')) {
+  versionRequirements.push({
+    name: 'npm',
+    currentVersion: exec('npm --version'),
+    versionRequirement: packageConfig.engines.npm
+  })
+}
+
+module.exports = function () {
+  const warnings = [];
+  for (let i = 0; i < versionRequirements.length; i++) {
+    const mod = versionRequirements[i]
+    if (!semver.satisfies(mod.currentVersion, mod.versionRequirement)) {
+      warnings.push(mod.name + ': ' +
+        chalk.red(mod.currentVersion) + ' should be ' +
+        chalk.green(mod.versionRequirement)
+      )
+    }
+  }
+
+  if (warnings.length) {
+    console.log('');
+    console.log(chalk.yellow('To use this template, you must update following to modules:'));
+    console.log();
+    for (let i = 0; i < warnings.length; i++) {
+      const warning = warnings[i]
+      console.log('  ' + warning)
+    }
+    console.log();
+    process.exit(1)
+  }
+};

--
Gitblit v1.9.3