@ttmg/cli 0.1.2-beta.1 → 0.1.3-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -45,4 +45,9 @@ feat: 支持文件变更监听,告知浏览器文件变更,提醒开发者
45
45
  发布最新版本,提醒开发者升级最新版本
46
46
 
47
47
  ## 0.1.2
48
+
48
49
  发布最新版本,支持 sourcemap
50
+
51
+ ## 0.1.3-beta.1
52
+
53
+ 优化显示二维码问题
package/README.md ADDED
@@ -0,0 +1,72 @@
1
+ ## @ttmg/cli
2
+
3
+ `ttmg` 是一个用于管理和开发小游戏项目的命令行工具,支持 H5 小游戏和原生小游戏的初始化、开发调试和打包构建。
4
+
5
+ ### 安装
6
+
7
+ 你可以通过 npm 本地安装或全局安装:
8
+
9
+ ```
10
+ npm install @ttmg/cli -g
11
+ ```
12
+
13
+ 或者在项目中作为开发依赖:
14
+
15
+ ```
16
+ npm install @ttmg/cli --save-dev
17
+ ```
18
+
19
+ ### 使用方法
20
+
21
+ 安装后,可以在命令行中使用 `ttmg` 命令。
22
+
23
+ #### 查看帮助
24
+
25
+ ```
26
+ ttmg --help
27
+ ```
28
+
29
+ #### 命令说明
30
+
31
+ ##### 1. 初始化项目
32
+
33
+ - 对基于游戏引擎构建好的 H5 小游戏进行初始化
34
+
35
+ ```
36
+ ttmg init --h5
37
+ ```
38
+
39
+ - 对基于游戏引擎构建好的 Native 小游戏进行初始化
40
+
41
+ ```
42
+ ttmg init --native
43
+ ```
44
+
45
+ ##### 2. 开发调试
46
+
47
+ 启动本地开发环境,打开浏览器进行调试。
48
+
49
+ - H5 小游戏调试
50
+
51
+ ```
52
+ ttmg dev --h5
53
+ ```
54
+
55
+ - 原生小游戏调试
56
+
57
+ ```
58
+ ttmg dev --native
59
+ ```
60
+
61
+ ##### 3. 项目打包
62
+
63
+ 打包项目用于发布。
64
+
65
+ - 打包 H5 小游戏
66
+
67
+ ```
68
+ ttmg build --h5
69
+ ```
70
+
71
+ - 打包原生小游戏
72
+ ttmg build --native
package/dist/index.js CHANGED
@@ -14,6 +14,7 @@ var chromeLauncher = require('chrome-launcher');
14
14
  var os = require('os');
15
15
  var child_process = require('child_process');
16
16
  var https = require('https');
17
+ var semver = require('semver');
17
18
  var require$$6 = require('crypto');
18
19
  var require$$5$1 = require('archiver');
19
20
  var multer = require('multer');
@@ -383,12 +384,22 @@ async function checkUpdate() {
383
384
  const boxen = (await import('boxen')).default;
384
385
  const pkgName = '@ttmg/cli';
385
386
  const oldVersion = getGlobalVersion(pkgName);
386
- const newVersion = await getLatestVersion(pkgName);
387
+ const newVersion = (await getLatestVersion(pkgName));
387
388
  if (!oldVersion) {
388
389
  console.log(chalk.yellow(`未检测到全局安装的 ${pkgName}`));
389
390
  return;
390
391
  }
391
392
  if (oldVersion !== newVersion) {
393
+ const oldVersionIsBeta = oldVersion.includes('beta');
394
+ const newVersionIsBeta = newVersion.includes('beta');
395
+ if (oldVersionIsBeta && newVersionIsBeta) {
396
+ return;
397
+ }
398
+ const oldVersionMajor = semver.major(oldVersion);
399
+ const newVersionMajor = semver.major(newVersion);
400
+ if (oldVersionIsBeta && oldVersionMajor >= newVersionMajor) {
401
+ return;
402
+ }
392
403
  const message = `
393
404
  ${chalk.bold('Update available!')} ${chalk.red(oldVersion)} ${chalk.white('→')} ${chalk.green(newVersion)}.
394
405
  ${chalk.magenta('Changelog:')} ${chalk.cyan(`https://npmjs.com/package/${pkgName}/v/${newVersion}`)}
@@ -951,7 +962,7 @@ async function createServer() {
951
962
  });
952
963
  // 启动服务
953
964
  server = app.listen(port, () => {
954
- console.log(chalk.cyan.bold(`Node devServer is running on port ${port}`));
965
+ console.log(chalk.cyan.bold(`Node devServer is running on port ${port}\n`));
955
966
  });
956
967
  return {
957
968
  port,
@@ -1267,9 +1278,7 @@ async function showSchema() {
1267
1278
  console.log(` 2. ${chalk.yellow.bold('Will auto upload compiled resource to client.')} ${chalk.bold(outputDir)}`);
1268
1279
  console.log(` 3. ${chalk.yellow.bold('Debug your game in the browser.')}\n`);
1269
1280
  const schema = `https://www.tiktok.com/ttmg/dev/${clientKey}?host=${localIP}&port=${DEV_WS_PORT}`;
1270
- QRCode.toString(schema, { type: 'terminal', version: 5 }, function (err, qr) {
1271
- if (err)
1272
- throw err;
1281
+ QRCode.toString(schema, { type: 'terminal', small: true }, (err, qr) => {
1273
1282
  console.log(qr);
1274
1283
  });
1275
1284
  }
@@ -1278,7 +1287,7 @@ async function dev() {
1278
1287
  /**
1279
1288
  * 1. 准备游戏资源
1280
1289
  */
1281
- await prepareResource();
1290
+ prepareResource();
1282
1291
  /**
1283
1292
  * 2. 创建本地调试服务
1284
1293
  */
@@ -1293,7 +1302,7 @@ async function dev() {
1293
1302
  await watchChange();
1294
1303
  }
1295
1304
 
1296
- var version = "0.1.2-beta.1";
1305
+ var version = "0.1.3-beta.1";
1297
1306
  var pkg = {
1298
1307
  version: version};
1299
1308
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ttmg/cli",
3
- "version": "0.1.2-beta.1",
3
+ "version": "0.1.3-beta.1",
4
4
  "description": "TikTok Mini Game Command Line Tool",
5
5
  "license": "ISC",
6
6
  "bin": {
@@ -42,8 +42,8 @@
42
42
  "open": "^10.2.0",
43
43
  "prettier": "^3.6.2",
44
44
  "qrcode": "^1.5.4",
45
- "qrcode-terminal": "^0.12.0",
46
- "ttmg-pack": "0.0.22",
45
+ "semver": "^7.7.2",
46
+ "ttmg-pack": "0.0.25",
47
47
  "ws": "^8.18.3"
48
48
  },
49
49
  "devDependencies": {