pangu-vis-cli 1.1.0 → 1.2.0
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/README.md +52 -252
- package/dist/index.js +10 -15
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,28 +1,25 @@
|
|
|
1
1
|
# pangu-vis-cli
|
|
2
2
|
|
|
3
|
-
>
|
|
3
|
+
> 盘古可视化平台的图表包脚手架与开发辅助工具
|
|
4
4
|
|
|
5
5
|
## 简介
|
|
6
6
|
|
|
7
|
-
`pangu-vis-cli`
|
|
7
|
+
`pangu-vis-cli` 是一个专为盘古可视化平台设计的图表包脚手架与开发辅助工具,覆盖图表包创建、本地开发调试与打包构建。通过简洁的命令,开发者可以快速创建标准化的图表项目,进行本地开发调试,并一键打包为 tar.gz 发布产物。1.1.0 起本工具聚焦脚手架与开发辅助,tar.gz 发布产物面向盘古可视化平台使用。
|
|
8
8
|
|
|
9
9
|
**核心价值**:
|
|
10
10
|
|
|
11
11
|
- 🚀 **快速初始化** - 一键创建标准化图表项目模板
|
|
12
|
-
- 🔧 **开发友好** -
|
|
13
|
-
- 📦 **智能打包** -
|
|
14
|
-
- 📤 **便捷发布** - 认证上传至图表社区
|
|
12
|
+
- 🔧 **开发友好** - 一键启动图表包本地开发调试
|
|
13
|
+
- 📦 **智能打包** - 版本同步、自动压缩、一键生成 tar.gz 发布产物
|
|
15
14
|
- ⚙️ **灵活配置** - 自动化行为可自定义
|
|
16
15
|
|
|
17
16
|
## 特性
|
|
18
17
|
|
|
19
|
-
- ✅ 支持
|
|
18
|
+
- ✅ 支持 9 种图表类型(折线图、柱状图、饼图、表格、地图、文本、指标、交互、其他)
|
|
20
19
|
- ✅ 可选 TypeScript 支持
|
|
21
20
|
- ✅ 交互式命令行提示
|
|
22
|
-
- ✅ 自动版本同步(base.json ↔ package.json)
|
|
23
|
-
- ✅
|
|
24
|
-
- ✅ tar.gz 压缩包生成
|
|
25
|
-
- ✅ 用户认证与 token 管理
|
|
21
|
+
- ✅ 自动版本同步(public/base.json ↔ package.json)
|
|
22
|
+
- ✅ 单图表一键打包为 tar.gz
|
|
26
23
|
- ✅ 自动更新检测
|
|
27
24
|
- ✅ 跨平台支持(macOS / Windows / Linux)
|
|
28
25
|
|
|
@@ -88,18 +85,14 @@ pnpm dev
|
|
|
88
85
|
# 1. 创建图表包
|
|
89
86
|
pv create my-chart
|
|
90
87
|
|
|
91
|
-
# 2.
|
|
88
|
+
# 2. 进入图表包目录
|
|
92
89
|
cd packages/components/my-chart
|
|
90
|
+
|
|
91
|
+
# 3. 启动开发环境
|
|
93
92
|
pnpm dev
|
|
94
93
|
|
|
95
|
-
#
|
|
94
|
+
# 4. 打包构建(在图表包目录)
|
|
96
95
|
pv build
|
|
97
|
-
|
|
98
|
-
# 4. 用户认证
|
|
99
|
-
pv auth
|
|
100
|
-
|
|
101
|
-
# 5. 上传发布
|
|
102
|
-
pv upload my-chart_v1.0.0.tar.gz
|
|
103
96
|
```
|
|
104
97
|
|
|
105
98
|
## 命令详解
|
|
@@ -128,7 +121,7 @@ pv c <project-name>
|
|
|
128
121
|
- `text` - 文本
|
|
129
122
|
- `indicator` - 指标
|
|
130
123
|
- `interaction` - 交互
|
|
131
|
-
- `other` -
|
|
124
|
+
- `other` - 其他(默认选中,推荐)
|
|
132
125
|
|
|
133
126
|
2. **TypeScript 支持**:
|
|
134
127
|
- `yes` - 启用 TypeScript
|
|
@@ -137,6 +130,7 @@ pv c <project-name>
|
|
|
137
130
|
3. **图表命名规则**:
|
|
138
131
|
- 必须以小写字母开头
|
|
139
132
|
- 仅允许小写字母、数字、下划线
|
|
133
|
+
- 长度 1-100 字符
|
|
140
134
|
- 推荐添加自定义前缀防止冲突
|
|
141
135
|
|
|
142
136
|
**示例**:
|
|
@@ -154,15 +148,13 @@ pv create custom_bar_chart
|
|
|
154
148
|
|
|
155
149
|
图表创建位置取决于当前工作目录:
|
|
156
150
|
|
|
157
|
-
-
|
|
158
|
-
-
|
|
159
|
-
-
|
|
151
|
+
- **当前目录或其上级目录(最多向上 10 层)具备图表库特征**(`package.json` 包名含 `pangu` + `packages/components` + `packages/tailored`):
|
|
152
|
+
- 在特征目录下归位:`packages/components/<project-name>/`
|
|
153
|
+
- 运行路径包含 "tailored" 时:`packages/tailored/<project-name>/`
|
|
160
154
|
|
|
161
|
-
-
|
|
155
|
+
- **其他目录**:
|
|
162
156
|
- 当前目录下创建:`./<project-name>/`
|
|
163
157
|
|
|
164
|
-
> 💡 **提示**:在子目录运行时,图表会在当前目录创建,不会跳转到根目录 `packages/`。
|
|
165
|
-
|
|
166
158
|
**自动执行**:
|
|
167
159
|
|
|
168
160
|
- 复制模板文件
|
|
@@ -201,14 +193,13 @@ pv build packages/components/my-chart
|
|
|
201
193
|
|
|
202
194
|
**打包流程**:
|
|
203
195
|
|
|
204
|
-
1. 版本同步(`base.json` ↔ `package.json`)
|
|
196
|
+
1. 版本同步(`public/base.json` ↔ `package.json`)
|
|
205
197
|
2. 执行 `pnpm build`
|
|
206
198
|
3. 生成产物目录:`<chart-name>_v<version>/`
|
|
207
199
|
4. 可选删除 `es/` 目录(根据配置)
|
|
208
200
|
5. 过滤无用文件(`.git`, `.vscode`, `.DS_Store`, `.idea`)
|
|
209
201
|
6. 打包为 tar.gz:`<chart-name>_v<version>.tar.gz`
|
|
210
202
|
7. 可选删除打包目录(根据配置 `autoRemove`)
|
|
211
|
-
8. 可选自动上传(根据配置 `autoUpload`)
|
|
212
203
|
|
|
213
204
|
**产物文件**:
|
|
214
205
|
|
|
@@ -228,12 +219,9 @@ my-chart_v1.0.0.tar.gz
|
|
|
228
219
|
|
|
229
220
|
```bash
|
|
230
221
|
pv dev # 启动当前目录开发环境
|
|
231
|
-
pv dev <path> # 启动指定路径开发环境
|
|
232
222
|
```
|
|
233
223
|
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
- `<path>` - 图表包路径
|
|
224
|
+
需先 cd 到图表包目录再执行。
|
|
237
225
|
|
|
238
226
|
**示例**:
|
|
239
227
|
|
|
@@ -241,146 +229,16 @@ pv dev <path> # 启动指定路径开发环境
|
|
|
241
229
|
# 在图表包目录下执行
|
|
242
230
|
cd packages/components/my-chart
|
|
243
231
|
pv dev
|
|
244
|
-
|
|
245
|
-
# 指定路径启动
|
|
246
|
-
pv dev packages/components/my-chart
|
|
247
232
|
```
|
|
248
233
|
|
|
249
234
|
**自动检测**:
|
|
250
235
|
|
|
251
|
-
- 查找 `package.json` 中的 `dev`
|
|
252
|
-
- 执行
|
|
236
|
+
- 查找 `package.json` 中的 `dev` 脚本
|
|
237
|
+
- 执行 `<探测到的包管理器> run dev`
|
|
253
238
|
- 实时预览图表开发效果
|
|
254
239
|
|
|
255
240
|
---
|
|
256
241
|
|
|
257
|
-
### pv upload - 上传图表包
|
|
258
|
-
|
|
259
|
-
上传打包后的 tar.gz 文件至泰合社区服务器。
|
|
260
|
-
|
|
261
|
-
**别名**:`pv u`
|
|
262
|
-
|
|
263
|
-
**前置条件**:需先通过 `pv auth` 进行用户认证。
|
|
264
|
-
|
|
265
|
-
**用法**:
|
|
266
|
-
|
|
267
|
-
```bash
|
|
268
|
-
pv upload # 上传当前目录所有 .tar.gz 文件
|
|
269
|
-
pv upload <file.tar.gz> # 上传指定 tar.gz 文件
|
|
270
|
-
pv upload <path> # 上传指定目录下的所有 .tar.gz 文件
|
|
271
|
-
```
|
|
272
|
-
|
|
273
|
-
**参数**:
|
|
274
|
-
|
|
275
|
-
- `<file.tar.gz>` - tar.gz 文件路径
|
|
276
|
-
- `<path>` - 目录路径
|
|
277
|
-
|
|
278
|
-
**示例**:
|
|
279
|
-
|
|
280
|
-
```bash
|
|
281
|
-
# 用户认证(首次)
|
|
282
|
-
pv auth
|
|
283
|
-
|
|
284
|
-
# 上传当前目录所有 tar.gz
|
|
285
|
-
pv upload
|
|
286
|
-
|
|
287
|
-
# 上传指定文件
|
|
288
|
-
pv upload my-chart_v1.0.0.tar.gz
|
|
289
|
-
|
|
290
|
-
# 上传指定目录下的所有 tar.gz
|
|
291
|
-
pv upload dist/
|
|
292
|
-
```
|
|
293
|
-
|
|
294
|
-
**认证要求**:
|
|
295
|
-
|
|
296
|
-
- 未登录时自动触发认证流程
|
|
297
|
-
- 需输入泰合社区用户名和密码
|
|
298
|
-
- token 自动保存,后续无需重复登录
|
|
299
|
-
|
|
300
|
-
---
|
|
301
|
-
|
|
302
|
-
### pv auth - 用户认证
|
|
303
|
-
|
|
304
|
-
登录泰合社区,获取上传权限。
|
|
305
|
-
|
|
306
|
-
**别名**:`pv a`
|
|
307
|
-
|
|
308
|
-
**用法**:
|
|
309
|
-
|
|
310
|
-
```bash
|
|
311
|
-
pv auth # 交互式登录
|
|
312
|
-
pv auth <user> <password> # 命令行登录
|
|
313
|
-
```
|
|
314
|
-
|
|
315
|
-
**参数**:
|
|
316
|
-
|
|
317
|
-
- `<user>` - 泰合社区用户名
|
|
318
|
-
- `<password>` - 泰合社区密码
|
|
319
|
-
|
|
320
|
-
**示例**:
|
|
321
|
-
|
|
322
|
-
```bash
|
|
323
|
-
# 交互式登录(推荐)
|
|
324
|
-
pv auth
|
|
325
|
-
# 按提示输入用户名和密码
|
|
326
|
-
|
|
327
|
-
# 命令行登录
|
|
328
|
-
pv auth myuser mypassword
|
|
329
|
-
```
|
|
330
|
-
|
|
331
|
-
**认证流程**:
|
|
332
|
-
|
|
333
|
-
1. 输入用户名和密码(密码经 MD5 加密)
|
|
334
|
-
2. 请求服务器 token
|
|
335
|
-
3. 保存认证信息至本地配置文件
|
|
336
|
-
|
|
337
|
-
**认证信息存储位置**:
|
|
338
|
-
|
|
339
|
-
```
|
|
340
|
-
~/.pangu-vis-store/.cli_store
|
|
341
|
-
```
|
|
342
|
-
|
|
343
|
-
**认证失败处理**:
|
|
344
|
-
|
|
345
|
-
- 失败后可重试(最多 3 次)
|
|
346
|
-
- 失败 3 次后提示稍后尝试
|
|
347
|
-
|
|
348
|
-
---
|
|
349
|
-
|
|
350
|
-
### pv tar - tar 打包工具
|
|
351
|
-
|
|
352
|
-
通用的 tar.gz 打包命令,可打包任意目录或文件。
|
|
353
|
-
|
|
354
|
-
**别名**:`pv t`
|
|
355
|
-
|
|
356
|
-
**用法**:
|
|
357
|
-
|
|
358
|
-
```bash
|
|
359
|
-
pv tar <targetDir> <name> [distDir] [distName]
|
|
360
|
-
```
|
|
361
|
-
|
|
362
|
-
**参数**:
|
|
363
|
-
|
|
364
|
-
- `<targetDir>` - 目标目录(必需)
|
|
365
|
-
- `<name>` - 打包文件名(必需)
|
|
366
|
-
- `<distDir>` - 输出目录(可选,默认为 targetDir)
|
|
367
|
-
- `<distName>` - 输出文件名(可选,默认为 name)
|
|
368
|
-
|
|
369
|
-
**示例**:
|
|
370
|
-
|
|
371
|
-
```bash
|
|
372
|
-
# 打包当前目录下的 dist 为 dist.tar.gz
|
|
373
|
-
pv tar ./dist dist
|
|
374
|
-
|
|
375
|
-
# 打包并指定输出目录
|
|
376
|
-
pv tar ./dist dist ./output
|
|
377
|
-
|
|
378
|
-
# 打包并指定输出文件名
|
|
379
|
-
pv tar ./dist dist ./output my-dist
|
|
380
|
-
```
|
|
381
|
-
|
|
382
|
-
---
|
|
383
|
-
|
|
384
242
|
### pv config - 配置管理
|
|
385
243
|
|
|
386
244
|
配置 CLI 工具的自动化行为。
|
|
@@ -397,7 +255,6 @@ pv config
|
|
|
397
255
|
|
|
398
256
|
| 配置项 | 说明 | 默认值 |
|
|
399
257
|
| -------------- | ------------------------------ | ------------ |
|
|
400
|
-
| `autoUpload` | 图表打包后是否自动上传泰合社区 | `no` (false) |
|
|
401
258
|
| `autoRemove` | 打包后是否自动删除打包目录 | `yes` (true) |
|
|
402
259
|
| `autoRemoveEs` | 打包后是否移除 es 目录 | `yes` (true) |
|
|
403
260
|
|
|
@@ -418,12 +275,10 @@ pv config
|
|
|
418
275
|
|
|
419
276
|
```json
|
|
420
277
|
{
|
|
421
|
-
"user": "your-username",
|
|
422
|
-
"password": "your-password",
|
|
423
|
-
"token": "your-token",
|
|
424
|
-
"autoUpload": false,
|
|
425
278
|
"autoRemove": true,
|
|
426
|
-
"autoRemoveEs": true
|
|
279
|
+
"autoRemoveEs": true,
|
|
280
|
+
"lastUpdateCheck": 1788480000000,
|
|
281
|
+
"privateRegistry": "http://192.168.12.88:10000"
|
|
427
282
|
}
|
|
428
283
|
```
|
|
429
284
|
|
|
@@ -443,10 +298,9 @@ pv update
|
|
|
443
298
|
|
|
444
299
|
**更新流程**:
|
|
445
300
|
|
|
446
|
-
1. 检查 npm
|
|
447
|
-
2.
|
|
448
|
-
3.
|
|
449
|
-
4. macOS/Linux 自动启用 sudo(如需)
|
|
301
|
+
1. 检查 npm 源最新版本
|
|
302
|
+
2. 安装前确认提示「是否安装 <版本>?」(默认 yes,可跳过;跳过后提示稍后可再运行 `pvis update`)
|
|
303
|
+
3. 优先用探测到的 pnpm(不可用时回退 npm)执行 `install -g pangu-vis-cli@latest`
|
|
450
304
|
|
|
451
305
|
**示例**:
|
|
452
306
|
|
|
@@ -455,10 +309,11 @@ pv update
|
|
|
455
309
|
pv update
|
|
456
310
|
|
|
457
311
|
# 已是最新版本提示
|
|
458
|
-
|
|
312
|
+
当前已是最新版本 1.1.0
|
|
459
313
|
|
|
460
314
|
# 有新版本时提示
|
|
461
|
-
|
|
315
|
+
发现新版本 1.2.0,当前版本 1.1.0
|
|
316
|
+
是否安装 1.2.0?
|
|
462
317
|
```
|
|
463
318
|
|
|
464
319
|
**自动检查**:
|
|
@@ -478,16 +333,16 @@ CLI 配置信息存储在用户主目录:
|
|
|
478
333
|
~/.pangu-vis-store/.cli_store
|
|
479
334
|
```
|
|
480
335
|
|
|
336
|
+
可通过环境变量 `PANGU_CONFIG_DIR` 覆盖配置目录位置。
|
|
337
|
+
|
|
481
338
|
### 配置项说明
|
|
482
339
|
|
|
483
|
-
| 配置项
|
|
484
|
-
|
|
|
485
|
-
| `
|
|
486
|
-
| `
|
|
487
|
-
| `
|
|
488
|
-
| `
|
|
489
|
-
| `autoRemove` | boolean | 打包后删除打包目录 | `true` |
|
|
490
|
-
| `autoRemoveEs` | boolean | 打包后删除 es 目录 | `true` |
|
|
340
|
+
| 配置项 | 类型 | 说明 | 默认值 |
|
|
341
|
+
| ----------------- | ------- | ------------------------------------------------------------ | ---------- |
|
|
342
|
+
| `autoRemove` | boolean | 打包后是否自动删除打包目录 | `true` |
|
|
343
|
+
| `autoRemoveEs` | boolean | 打包后是否自动删除 es 目录 | `true` |
|
|
344
|
+
| `lastUpdateCheck` | number | 更新检查节流时间戳(可选) | 无 |
|
|
345
|
+
| `privateRegistry` | string | 私有 npm 源(可选,优先级:`PANGU_REGISTRY` 环境变量 > 配置文件 > 内网默认源) | 内网默认源 |
|
|
491
346
|
|
|
492
347
|
### 修改配置
|
|
493
348
|
|
|
@@ -500,18 +355,6 @@ pv config
|
|
|
500
355
|
**方法 2:手动编辑**
|
|
501
356
|
编辑 `~/.pangu-vis-store/.cli_store` 文件。
|
|
502
357
|
|
|
503
|
-
### 清除认证
|
|
504
|
-
|
|
505
|
-
如需重新登录,删除配置文件中的 `token` 字段:
|
|
506
|
-
|
|
507
|
-
```bash
|
|
508
|
-
# 编辑配置文件
|
|
509
|
-
vi ~/.pangu-vis-store/.cli_store
|
|
510
|
-
|
|
511
|
-
# 删除 token 行后重新认证
|
|
512
|
-
pv auth
|
|
513
|
-
```
|
|
514
|
-
|
|
515
358
|
## 使用示例
|
|
516
359
|
|
|
517
360
|
### 示例:创建并打包折线图
|
|
@@ -537,16 +380,13 @@ pv build
|
|
|
537
380
|
|
|
538
381
|
## 命令速查表
|
|
539
382
|
|
|
540
|
-
| 命令 | 别名 | 说明 |
|
|
541
|
-
| ----------- | -------- | ------------ |
|
|
542
|
-
| `pv create` | `pv c` | 创建图表包 |
|
|
543
|
-
| `pv build` | `pv b` | 单个图表打包 |
|
|
544
|
-
| `pv dev` | `pv d` | 启动开发环境 |
|
|
545
|
-
| `pv
|
|
546
|
-
| `pv
|
|
547
|
-
| `pv tar` | `pv t` | tar 打包工具 | ❌ |
|
|
548
|
-
| `pv config` | `pv set` | 配置管理 | ❌ |
|
|
549
|
-
| `pv update` | `pv up` | CLI 更新 | ❌ |
|
|
383
|
+
| 命令 | 别名 | 说明 |
|
|
384
|
+
| ----------- | -------- | ------------ |
|
|
385
|
+
| `pv create` | `pv c` | 创建图表包 |
|
|
386
|
+
| `pv build` | `pv b` | 单个图表打包 |
|
|
387
|
+
| `pv dev` | `pv d` | 启动开发环境 |
|
|
388
|
+
| `pv config` | `pv set` | 配置管理 |
|
|
389
|
+
| `pv update` | `pv up` | CLI 更新 |
|
|
550
390
|
|
|
551
391
|
## 常见问题
|
|
552
392
|
|
|
@@ -561,63 +401,28 @@ sudo npm install -g pangu-vis-cli
|
|
|
561
401
|
**Windows**:
|
|
562
402
|
以管理员身份运行终端,再执行安装命令。
|
|
563
403
|
|
|
564
|
-
### 2.
|
|
565
|
-
|
|
566
|
-
- 检查用户名和密码是否正确
|
|
567
|
-
- 确认泰合社区账号已激活
|
|
568
|
-
- 失败 3 次后需稍后再试
|
|
569
|
-
|
|
570
|
-
### 3. 图表包名称重复
|
|
404
|
+
### 2. 图表包名称重复
|
|
571
405
|
|
|
572
406
|
- 使用自定义前缀避免冲突
|
|
573
|
-
-
|
|
407
|
+
- 遵循命名规则:小写字母开头,仅允许小写字母、数字、下划线
|
|
574
408
|
|
|
575
|
-
###
|
|
409
|
+
### 3. 打包产物找不到
|
|
576
410
|
|
|
577
411
|
- 检查配置 `autoRemove` 是否为 `yes`
|
|
578
412
|
- 打包产物默认在图表包目录下
|
|
579
|
-
- 使用 `pv tar` 手动指定输出目录
|
|
580
|
-
|
|
581
|
-
### 5. 上传失败
|
|
582
|
-
|
|
583
|
-
- 确认已通过 `pv auth` 认证
|
|
584
|
-
- 检查网络连接(泰合社区服务器)
|
|
585
|
-
- 确认 tar.gz 文件格式正确
|
|
586
413
|
|
|
587
|
-
###
|
|
414
|
+
### 4. 版本号不同步
|
|
588
415
|
|
|
589
|
-
- CLI 自动同步 `base.json` 和 `package.json` 版本
|
|
416
|
+
- CLI 自动同步 `public/base.json` 和 `package.json` 版本
|
|
590
417
|
- 手动修改版本时需同时更新两个文件
|
|
591
418
|
- 或使用 `pv build` 自动同步
|
|
592
419
|
|
|
593
|
-
###
|
|
420
|
+
### 5. 开发环境启动失败
|
|
594
421
|
|
|
595
422
|
- 确认已安装 `pnpm`
|
|
596
|
-
- 检查 `package.json` 中是否有 `dev`
|
|
423
|
+
- 检查 `package.json` 中是否有 `dev` 脚本
|
|
597
424
|
- 安装依赖:`pnpm install`
|
|
598
425
|
|
|
599
|
-
## 开发环境(本仓库)
|
|
600
|
-
|
|
601
|
-
| 项 | 要求/工具 |
|
|
602
|
-
| ---------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
603
|
-
| Node.js | `>=20.19.0`(engines 强制) |
|
|
604
|
-
| TypeScript | `7.0.2`(原生编译器线,仅类型检查,esbuild 出产物;编辑器语言服务走 VS Code 内置 TS 扩展,原生 LSP 可选装 "TypeScript (Native Preview)" 扩展) |
|
|
605
|
-
| 代码检查 | `oxlint`(配置 `.oxlintrc.json`) |
|
|
606
|
-
| 代码格式化 | `oxfmt`(配置 `.oxfmtrc.json`,tab 缩进、行宽 100、双引号、分号、ES5 尾逗号) |
|
|
607
|
-
| 单元测试 | `vitest`(302 用例) |
|
|
608
|
-
| 包管理 | `nub`(兼容 pnpm 参数) |
|
|
609
|
-
|
|
610
|
-
常用开发命令(本仓库统一 `nub`,禁用 npm/pnpm/yarn/npx):
|
|
611
|
-
|
|
612
|
-
```bash
|
|
613
|
-
nub install # 安装依赖
|
|
614
|
-
nub run typecheck # tsc 7.0.2 类型检查
|
|
615
|
-
nub run test:run # vitest 全量测试
|
|
616
|
-
nub run lint # oxlint 检查
|
|
617
|
-
nub run format:check # oxfmt 格式检查
|
|
618
|
-
nub run build # esbuild 构建
|
|
619
|
-
```
|
|
620
|
-
|
|
621
426
|
## 许可证
|
|
622
427
|
|
|
623
428
|
[MIT License](./LICENSE)
|
|
@@ -629,8 +434,3 @@ Copyright (c) 2023 Jaxon
|
|
|
629
434
|
**Jaxon**
|
|
630
435
|
|
|
631
436
|
如有问题或建议,请联系作者或在项目仓库提交 Issue。
|
|
632
|
-
|
|
633
|
-
---
|
|
634
|
-
|
|
635
|
-
**最后更新**:2026-06-17
|
|
636
|
-
**版本**:1.0.0
|
package/dist/index.js
CHANGED
|
@@ -319,11 +319,6 @@ var init_process = __esm({
|
|
|
319
319
|
init_log();
|
|
320
320
|
({ camelCase, upperFirst } = _);
|
|
321
321
|
detectPackageManager = async () => {
|
|
322
|
-
try {
|
|
323
|
-
await $`nub --version`;
|
|
324
|
-
return "nub";
|
|
325
|
-
} catch {
|
|
326
|
-
}
|
|
327
322
|
try {
|
|
328
323
|
await $`pnpm --version`;
|
|
329
324
|
return "pnpm";
|
|
@@ -422,7 +417,7 @@ var init_package = __esm({
|
|
|
422
417
|
"package.json"() {
|
|
423
418
|
package_default = {
|
|
424
419
|
name: "pangu-vis-cli",
|
|
425
|
-
version: "1.
|
|
420
|
+
version: "1.2.0",
|
|
426
421
|
description: "vis-cli",
|
|
427
422
|
keywords: [
|
|
428
423
|
"pangu-vis",
|
|
@@ -1019,7 +1014,7 @@ var init_fs = __esm({
|
|
|
1019
1014
|
]);
|
|
1020
1015
|
return componentsExists && tailoredExists;
|
|
1021
1016
|
};
|
|
1022
|
-
scanFileFindChart = async (maxDepth =
|
|
1017
|
+
scanFileFindChart = async (maxDepth = 10) => {
|
|
1023
1018
|
try {
|
|
1024
1019
|
const gitHit = await detectChartModuleByGit();
|
|
1025
1020
|
if (gitHit) {
|
|
@@ -1027,18 +1022,14 @@ var init_fs = __esm({
|
|
|
1027
1022
|
}
|
|
1028
1023
|
} catch {
|
|
1029
1024
|
}
|
|
1025
|
+
let dir = process.cwd();
|
|
1030
1026
|
for (let i = 0; i < maxDepth; i++) {
|
|
1031
|
-
|
|
1032
|
-
if (i > 0) {
|
|
1033
|
-
relativePath += "../".repeat(i);
|
|
1034
|
-
}
|
|
1035
|
-
const cwd = path4.resolve(process.cwd(), relativePath);
|
|
1036
|
-
const packageJsonPath = path4.resolve(cwd, "package.json");
|
|
1027
|
+
const packageJsonPath = path4.join(dir, "package.json");
|
|
1037
1028
|
if (await fs4.pathExists(packageJsonPath)) {
|
|
1038
1029
|
try {
|
|
1039
1030
|
const pkg = await fs4.readJson(packageJsonPath);
|
|
1040
|
-
if (await isChartModuleRoot(
|
|
1041
|
-
return { root:
|
|
1031
|
+
if (await isChartModuleRoot(dir, pkg.name)) {
|
|
1032
|
+
return { root: dir };
|
|
1042
1033
|
}
|
|
1043
1034
|
} catch (error) {
|
|
1044
1035
|
if (process.env.DEBUG === "true") {
|
|
@@ -1049,6 +1040,10 @@ var init_fs = __esm({
|
|
|
1049
1040
|
}
|
|
1050
1041
|
}
|
|
1051
1042
|
}
|
|
1043
|
+
if (dir === path4.parse(dir).root) {
|
|
1044
|
+
break;
|
|
1045
|
+
}
|
|
1046
|
+
dir = path4.dirname(dir);
|
|
1052
1047
|
}
|
|
1053
1048
|
return false;
|
|
1054
1049
|
};
|