@nbtca/prompt 1.0.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.
Files changed (76) hide show
  1. package/.github/workflows/ci.yml +40 -0
  2. package/.github/workflows/publish.yml +59 -0
  3. package/DATA_MANAGEMENT.md +409 -0
  4. package/LICENSE +21 -0
  5. package/README.md +235 -0
  6. package/assets/Prompt_demo.gif +0 -0
  7. package/bin/nbtca-welcome.js +2 -0
  8. package/dist/config/data.d.ts +22 -0
  9. package/dist/config/data.d.ts.map +1 -0
  10. package/dist/config/data.js +25 -0
  11. package/dist/config/data.js.map +1 -0
  12. package/dist/config/theme.d.ts +23 -0
  13. package/dist/config/theme.d.ts.map +1 -0
  14. package/dist/config/theme.js +25 -0
  15. package/dist/config/theme.js.map +1 -0
  16. package/dist/core/logo.d.ts +9 -0
  17. package/dist/core/logo.d.ts.map +1 -0
  18. package/dist/core/logo.js +71 -0
  19. package/dist/core/logo.js.map +1 -0
  20. package/dist/core/menu.d.ts +9 -0
  21. package/dist/core/menu.d.ts.map +1 -0
  22. package/dist/core/menu.js +153 -0
  23. package/dist/core/menu.js.map +1 -0
  24. package/dist/core/ui.d.ts +49 -0
  25. package/dist/core/ui.d.ts.map +1 -0
  26. package/dist/core/ui.js +95 -0
  27. package/dist/core/ui.js.map +1 -0
  28. package/dist/features/calendar.d.ts +27 -0
  29. package/dist/features/calendar.d.ts.map +1 -0
  30. package/dist/features/calendar.js +121 -0
  31. package/dist/features/calendar.js.map +1 -0
  32. package/dist/features/docs.d.ts +21 -0
  33. package/dist/features/docs.d.ts.map +1 -0
  34. package/dist/features/docs.js +109 -0
  35. package/dist/features/docs.js.map +1 -0
  36. package/dist/features/repair.d.ts +9 -0
  37. package/dist/features/repair.d.ts.map +1 -0
  38. package/dist/features/repair.js +37 -0
  39. package/dist/features/repair.js.map +1 -0
  40. package/dist/features/website.d.ts +17 -0
  41. package/dist/features/website.d.ts.map +1 -0
  42. package/dist/features/website.js +39 -0
  43. package/dist/features/website.js.map +1 -0
  44. package/dist/index.d.ts +6 -0
  45. package/dist/index.d.ts.map +1 -0
  46. package/dist/index.js +8 -0
  47. package/dist/index.js.map +1 -0
  48. package/dist/logo/ascii-logo.txt +6 -0
  49. package/dist/logo/logo.txt +2 -0
  50. package/dist/main.d.ts +9 -0
  51. package/dist/main.d.ts.map +1 -0
  52. package/dist/main.js +36 -0
  53. package/dist/main.js.map +1 -0
  54. package/dist/types.d.ts +48 -0
  55. package/dist/types.d.ts.map +1 -0
  56. package/dist/types.js +6 -0
  57. package/dist/types.js.map +1 -0
  58. package/package.json +64 -0
  59. package/src/config/data.js +484 -0
  60. package/src/config/data.ts +28 -0
  61. package/src/config/theme.js +138 -0
  62. package/src/config/theme.ts +26 -0
  63. package/src/core/logo.ts +80 -0
  64. package/src/core/menu.ts +165 -0
  65. package/src/core/ui.ts +119 -0
  66. package/src/features/calendar.ts +153 -0
  67. package/src/features/docs.ts +120 -0
  68. package/src/features/repair.ts +40 -0
  69. package/src/features/website.ts +43 -0
  70. package/src/index.ts +9 -0
  71. package/src/logo/ascii-logo.txt +6 -0
  72. package/src/logo/logo.txt +2 -0
  73. package/src/logo/printLogo.js +26 -0
  74. package/src/main.ts +39 -0
  75. package/src/types.ts +51 -0
  76. package/tsconfig.json +53 -0
@@ -0,0 +1,95 @@
1
+ /**
2
+ * 极简UI组件库
3
+ * 提供基础的终端UI组件
4
+ */
5
+ import chalk from 'chalk';
6
+ /**
7
+ * 计算字符串的实际显示宽度(考虑中文字符)
8
+ */
9
+ function getDisplayWidth(str) {
10
+ let width = 0;
11
+ for (const char of str) {
12
+ // 中文字符、全角符号等占2个宽度
13
+ width += char.charCodeAt(0) > 127 ? 2 : 1;
14
+ }
15
+ return width;
16
+ }
17
+ /**
18
+ * 显示顶部边框标题
19
+ */
20
+ export function printHeader(title) {
21
+ const terminalWidth = process.stdout.columns || 80;
22
+ const titleWidth = getDisplayWidth(title);
23
+ // 计算分隔线长度
24
+ const sideWidth = Math.max(2, Math.floor((terminalWidth - titleWidth - 4) / 2));
25
+ const leftLine = '─'.repeat(sideWidth);
26
+ const rightLine = '─'.repeat(sideWidth);
27
+ // 显示标题行
28
+ console.log(chalk.cyan(`${leftLine} ${title} ${rightLine}`));
29
+ console.log();
30
+ }
31
+ /**
32
+ * 显示分隔线
33
+ */
34
+ export function printDivider() {
35
+ const terminalWidth = process.stdout.columns || 80;
36
+ console.log(chalk.gray('─'.repeat(terminalWidth)));
37
+ }
38
+ /**
39
+ * 显示加载spinner
40
+ */
41
+ export async function showSpinner(text, duration) {
42
+ const frames = ['⠋', '⠙', '⠹', '⠸', '⠼', '⠴', '⠦', '⠧', '⠇', '⠏'];
43
+ let i = 0;
44
+ const startTime = Date.now();
45
+ return new Promise((resolve) => {
46
+ const interval = setInterval(() => {
47
+ process.stdout.write(`\r${chalk.cyan(frames[i])} ${text}`);
48
+ i = (i + 1) % frames.length;
49
+ if (Date.now() - startTime >= duration) {
50
+ clearInterval(interval);
51
+ process.stdout.write('\r' + ' '.repeat(text.length + 5) + '\r');
52
+ resolve();
53
+ }
54
+ }, 80);
55
+ });
56
+ }
57
+ /**
58
+ * 显示成功消息
59
+ */
60
+ export function success(msg) {
61
+ console.log(chalk.green('✓') + ' ' + msg);
62
+ }
63
+ /**
64
+ * 显示错误消息
65
+ */
66
+ export function error(msg) {
67
+ console.log(chalk.red('✗') + ' ' + msg);
68
+ }
69
+ /**
70
+ * 显示信息消息
71
+ */
72
+ export function info(msg) {
73
+ console.log(chalk.blue('ℹ') + ' ' + msg);
74
+ }
75
+ /**
76
+ * 显示警告消息
77
+ */
78
+ export function warning(msg) {
79
+ console.log(chalk.yellow('⚠') + ' ' + msg);
80
+ }
81
+ /**
82
+ * 清屏
83
+ */
84
+ export function clearScreen() {
85
+ console.clear();
86
+ }
87
+ /**
88
+ * 打印空行
89
+ */
90
+ export function printNewLine(count = 1) {
91
+ for (let i = 0; i < count; i++) {
92
+ console.log();
93
+ }
94
+ }
95
+ //# sourceMappingURL=ui.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ui.js","sourceRoot":"","sources":["../../src/core/ui.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * ICS日历功能模块
3
+ * 从远程获取并显示近期活动
4
+ */
5
+ /**
6
+ * 活动接口
7
+ */
8
+ export interface Event {
9
+ date: string;
10
+ time: string;
11
+ title: string;
12
+ location: string;
13
+ startDate: Date;
14
+ }
15
+ /**
16
+ * 从远程获取ICS文件并解析活动
17
+ */
18
+ export declare function fetchEvents(): Promise<Event[]>;
19
+ /**
20
+ * 以表格形式显示活动
21
+ */
22
+ export declare function displayEvents(events: Event[]): void;
23
+ /**
24
+ * 主函数:获取并显示活动
25
+ */
26
+ export declare function showCalendar(): Promise<void>;
27
+ //# sourceMappingURL=calendar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"calendar.d.ts","sourceRoot":"","sources":["../../src/features/calendar.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH;;GAEG;AACH,MAAM,WAAW,KAAK;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,IAAI,CAAC;CACjB;AAED;;GAEG;AACH,wBAAsB,WAAW,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC,CAwCpD;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAuCnD;AA8BD;;GAEG;AACH,wBAAsB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CAWlD"}
@@ -0,0 +1,121 @@
1
+ /**
2
+ * ICS日历功能模块
3
+ * 从远程获取并显示近期活动
4
+ */
5
+ import axios from 'axios';
6
+ import ICAL from 'ical.js';
7
+ import chalk from 'chalk';
8
+ import { error, info, printDivider } from '../core/ui.js';
9
+ /**
10
+ * 从远程获取ICS文件并解析活动
11
+ */
12
+ export async function fetchEvents() {
13
+ try {
14
+ const response = await axios.get('https://ical.nbtca.space', {
15
+ timeout: 5000,
16
+ headers: {
17
+ 'User-Agent': 'NBTCA-CLI/2.3.1'
18
+ }
19
+ });
20
+ const jcalData = ICAL.parse(response.data);
21
+ const comp = new ICAL.Component(jcalData);
22
+ const vevents = comp.getAllSubcomponents('vevent');
23
+ const events = [];
24
+ const now = new Date();
25
+ const thirtyDaysLater = new Date(now.getTime() + 30 * 24 * 60 * 60 * 1000);
26
+ for (const vevent of vevents) {
27
+ const event = new ICAL.Event(vevent);
28
+ const startDate = event.startDate.toJSDate();
29
+ // 只显示未来30天内的活动
30
+ if (startDate >= now && startDate <= thirtyDaysLater) {
31
+ events.push({
32
+ date: formatDate(startDate),
33
+ time: formatTime(startDate),
34
+ title: event.summary || '未命名活动',
35
+ location: event.location || '待定',
36
+ startDate: startDate
37
+ });
38
+ }
39
+ }
40
+ // 按日期排序
41
+ events.sort((a, b) => a.startDate.getTime() - b.startDate.getTime());
42
+ return events;
43
+ }
44
+ catch (err) {
45
+ throw new Error('获取活动日历失败');
46
+ }
47
+ }
48
+ /**
49
+ * 以表格形式显示活动
50
+ */
51
+ export function displayEvents(events) {
52
+ if (events.length === 0) {
53
+ info('近期暂无活动安排');
54
+ return;
55
+ }
56
+ console.log();
57
+ console.log(chalk.cyan.bold(' 近期活动') + chalk.gray(` (最近30天)`));
58
+ console.log();
59
+ // 表头
60
+ const dateWidth = 14;
61
+ const titleWidth = 25;
62
+ const locationWidth = 15;
63
+ console.log(' ' +
64
+ chalk.bold('日期时间'.padEnd(dateWidth)) +
65
+ chalk.bold('活动名称'.padEnd(titleWidth)) +
66
+ chalk.bold('地点'));
67
+ printDivider();
68
+ // 活动列表
69
+ events.forEach(event => {
70
+ const dateTime = `${event.date} ${event.time}`.padEnd(dateWidth);
71
+ const title = truncate(event.title, titleWidth - 2).padEnd(titleWidth);
72
+ const location = truncate(event.location, locationWidth);
73
+ console.log(' ' +
74
+ chalk.cyan(dateTime) +
75
+ chalk.white(title) +
76
+ chalk.gray(location));
77
+ });
78
+ console.log();
79
+ }
80
+ /**
81
+ * 格式化日期
82
+ */
83
+ function formatDate(date) {
84
+ const month = String(date.getMonth() + 1).padStart(2, '0');
85
+ const day = String(date.getDate()).padStart(2, '0');
86
+ return `${month}-${day}`;
87
+ }
88
+ /**
89
+ * 格式化时间
90
+ */
91
+ function formatTime(date) {
92
+ const hours = String(date.getHours()).padStart(2, '0');
93
+ const minutes = String(date.getMinutes()).padStart(2, '0');
94
+ return `${hours}:${minutes}`;
95
+ }
96
+ /**
97
+ * 截断字符串
98
+ */
99
+ function truncate(str, maxLength) {
100
+ if (str.length <= maxLength) {
101
+ return str;
102
+ }
103
+ return str.substring(0, maxLength - 3) + '...';
104
+ }
105
+ /**
106
+ * 主函数:获取并显示活动
107
+ */
108
+ export async function showCalendar() {
109
+ try {
110
+ info('正在获取活动日历...');
111
+ const events = await fetchEvents();
112
+ console.log('\r' + ' '.repeat(50) + '\r'); // 清除加载提示
113
+ displayEvents(events);
114
+ }
115
+ catch (err) {
116
+ error('无法获取活动日历');
117
+ console.log(chalk.gray(' 请稍后重试或访问 https://nbtca.space'));
118
+ console.log();
119
+ }
120
+ }
121
+ //# sourceMappingURL=calendar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"calendar.js","sourceRoot":"","sources":["../../src/features/calendar.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * 知识库终端查看模块
3
+ * 获取并渲染Markdown文档
4
+ */
5
+ /**
6
+ * 获取文档列表
7
+ */
8
+ export declare function fetchDocs(): Promise<string[]>;
9
+ /**
10
+ * 查看指定文档
11
+ */
12
+ export declare function viewDoc(path: string): Promise<void>;
13
+ /**
14
+ * 在浏览器中打开知识库
15
+ */
16
+ export declare function openDocsInBrowser(): Promise<void>;
17
+ /**
18
+ * 显示知识库菜单
19
+ */
20
+ export declare function showDocsMenu(): Promise<void>;
21
+ //# sourceMappingURL=docs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"docs.d.ts","sourceRoot":"","sources":["../../src/features/docs.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAqBH;;GAEG;AACH,wBAAsB,SAAS,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAQnD;AAED;;GAEG;AACH,wBAAsB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAoCzD;AAED;;GAEG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAUvD;AAED;;GAEG;AACH,wBAAsB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CAuBlD"}
@@ -0,0 +1,109 @@
1
+ /**
2
+ * 知识库终端查看模块
3
+ * 获取并渲染Markdown文档
4
+ */
5
+ import axios from 'axios';
6
+ import { marked } from 'marked';
7
+ import markedTerminal from 'marked-terminal';
8
+ import chalk from 'chalk';
9
+ import open from 'open';
10
+ import inquirer from 'inquirer';
11
+ import { error, info, success, warning } from '../core/ui.js';
12
+ // 配置marked使用终端渲染器
13
+ marked.use(markedTerminal);
14
+ /**
15
+ * 文档列表(硬编码常用文档)
16
+ */
17
+ const DOCS_LIST = [
18
+ { name: '返回主菜单', value: 'back' },
19
+ { name: '在浏览器中打开知识库', value: 'browser' }
20
+ ];
21
+ /**
22
+ * 获取文档列表
23
+ */
24
+ export async function fetchDocs() {
25
+ // 简化版:返回预设的文档列表
26
+ // 实际项目中可以从API动态获取
27
+ return [
28
+ '首页',
29
+ '技术文档',
30
+ '教程资源'
31
+ ];
32
+ }
33
+ /**
34
+ * 查看指定文档
35
+ */
36
+ export async function viewDoc(path) {
37
+ try {
38
+ info(`正在加载文档: ${path}`);
39
+ const response = await axios.get(`https://docs.nbtca.space/${path}`, {
40
+ timeout: 10000,
41
+ headers: {
42
+ 'User-Agent': 'NBTCA-CLI/2.3.1'
43
+ }
44
+ });
45
+ console.log('\r' + ' '.repeat(50) + '\r'); // 清除加载提示
46
+ // 渲染Markdown
47
+ const rendered = marked(response.data);
48
+ console.log(rendered);
49
+ console.log();
50
+ success('文档加载完成');
51
+ }
52
+ catch (err) {
53
+ error('无法加载文档');
54
+ warning('建议在浏览器中查看');
55
+ const { openBrowser } = await inquirer.prompt([
56
+ {
57
+ type: 'confirm',
58
+ name: 'openBrowser',
59
+ message: '是否在浏览器中打开?',
60
+ default: true
61
+ }
62
+ ]);
63
+ if (openBrowser) {
64
+ await openDocsInBrowser();
65
+ }
66
+ }
67
+ }
68
+ /**
69
+ * 在浏览器中打开知识库
70
+ */
71
+ export async function openDocsInBrowser() {
72
+ try {
73
+ info('正在打开浏览器...');
74
+ await open('https://docs.nbtca.space');
75
+ success('已在浏览器中打开知识库');
76
+ }
77
+ catch (err) {
78
+ error('无法打开浏览器');
79
+ console.log(chalk.gray(' 请手动访问: https://docs.nbtca.space'));
80
+ }
81
+ console.log();
82
+ }
83
+ /**
84
+ * 显示知识库菜单
85
+ */
86
+ export async function showDocsMenu() {
87
+ while (true) {
88
+ console.log();
89
+ console.log(chalk.cyan.bold(' 知识库'));
90
+ console.log();
91
+ const { action } = await inquirer.prompt([
92
+ {
93
+ type: 'list',
94
+ name: 'action',
95
+ message: '选择操作:',
96
+ choices: DOCS_LIST,
97
+ pageSize: 10
98
+ }
99
+ ]);
100
+ if (action === 'back') {
101
+ break;
102
+ }
103
+ else if (action === 'browser') {
104
+ await openDocsInBrowser();
105
+ break;
106
+ }
107
+ }
108
+ }
109
+ //# sourceMappingURL=docs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"docs.js","sourceRoot":"","sources":["../../src/features/docs.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * 维修服务模块
3
+ * 打开维修服务网页
4
+ */
5
+ /**
6
+ * 打开维修服务页面
7
+ */
8
+ export declare function openRepairService(): Promise<void>;
9
+ //# sourceMappingURL=repair.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"repair.d.ts","sourceRoot":"","sources":["../../src/features/repair.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAWH;;GAEG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,IAAI,CAAC,CAsBvD"}
@@ -0,0 +1,37 @@
1
+ /**
2
+ * 维修服务模块
3
+ * 打开维修服务网页
4
+ */
5
+ import open from 'open';
6
+ import chalk from 'chalk';
7
+ import { error, info, success } from '../core/ui.js';
8
+ /**
9
+ * 维修服务URL
10
+ */
11
+ const REPAIR_URL = 'https://nbtca.space/repair';
12
+ /**
13
+ * 打开维修服务页面
14
+ */
15
+ export async function openRepairService() {
16
+ try {
17
+ console.log();
18
+ info('正在打开维修服务页面...');
19
+ console.log();
20
+ await open(REPAIR_URL);
21
+ success('已在浏览器中打开维修服务页面');
22
+ console.log();
23
+ console.log(chalk.gray(' 服务内容:'));
24
+ console.log(chalk.gray(' • 电脑硬件维修'));
25
+ console.log(chalk.gray(' • 软件安装与配置'));
26
+ console.log(chalk.gray(' • 系统优化与故障排查'));
27
+ console.log(chalk.gray(' • 数据恢复与备份'));
28
+ console.log();
29
+ }
30
+ catch (err) {
31
+ error('无法打开浏览器');
32
+ console.log();
33
+ console.log(chalk.yellow(' 请手动访问: ') + chalk.cyan(REPAIR_URL));
34
+ console.log();
35
+ }
36
+ }
37
+ //# sourceMappingURL=repair.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"repair.js","sourceRoot":"","sources":["../../src/features/repair.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAErD;;GAEG;AACH,MAAM,UAAU,GAAG,4BAA4B,CAAC;AAEhD;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB;IACrC,IAAI,CAAC;QACH,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,IAAI,CAAC,eAAe,CAAC,CAAC;QACtB,OAAO,CAAC,GAAG,EAAE,CAAC;QAEd,MAAM,IAAI,CAAC,UAAU,CAAC,CAAC;QAEvB,OAAO,CAAC,gBAAgB,CAAC,CAAC;QAC1B,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;QACnC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;QACtC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;QACvC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;QACzC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;QACvC,OAAO,CAAC,GAAG,EAAE,CAAC;IAChB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,KAAK,CAAC,SAAS,CAAC,CAAC;QACjB,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;QAChE,OAAO,CAAC,GAAG,EAAE,CAAC;IAChB,CAAC;AACH,CAAC"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * 官网访问模块
3
+ * 打开NBTCA官方网站或GitHub
4
+ */
5
+ /**
6
+ * 打开指定URL
7
+ */
8
+ export declare function openWebsite(url: string, name?: string): Promise<void>;
9
+ /**
10
+ * 打开NBTCA主页
11
+ */
12
+ export declare function openHomepage(): Promise<void>;
13
+ /**
14
+ * 打开GitHub页面
15
+ */
16
+ export declare function openGithub(): Promise<void>;
17
+ //# sourceMappingURL=website.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"website.d.ts","sourceRoot":"","sources":["../../src/features/website.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH;;GAEG;AACH,wBAAsB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,GAAE,MAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAgBjF;AAED;;GAEG;AACH,wBAAsB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CAElD;AAED;;GAEG;AACH,wBAAsB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAEhD"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * 官网访问模块
3
+ * 打开NBTCA官方网站或GitHub
4
+ */
5
+ import open from 'open';
6
+ import chalk from 'chalk';
7
+ import { error, info, success } from '../core/ui.js';
8
+ /**
9
+ * 打开指定URL
10
+ */
11
+ export async function openWebsite(url, name = '网站') {
12
+ try {
13
+ console.log();
14
+ info(`正在打开${name}...`);
15
+ await open(url);
16
+ success(`已在浏览器中打开${name}`);
17
+ console.log(chalk.gray(` ${url}`));
18
+ console.log();
19
+ }
20
+ catch (err) {
21
+ error('无法打开浏览器');
22
+ console.log();
23
+ console.log(chalk.yellow(' 请手动访问: ') + chalk.cyan(url));
24
+ console.log();
25
+ }
26
+ }
27
+ /**
28
+ * 打开NBTCA主页
29
+ */
30
+ export async function openHomepage() {
31
+ await openWebsite('https://nbtca.space', 'NBTCA官网');
32
+ }
33
+ /**
34
+ * 打开GitHub页面
35
+ */
36
+ export async function openGithub() {
37
+ await openWebsite('https://github.com/nbtca', 'GitHub组织页');
38
+ }
39
+ //# sourceMappingURL=website.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"website.js","sourceRoot":"","sources":["../../src/features/website.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAErD;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,GAAW,EAAE,OAAe,IAAI;IAChE,IAAI,CAAC;QACH,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,IAAI,CAAC,OAAO,IAAI,KAAK,CAAC,CAAC;QAEvB,MAAM,IAAI,CAAC,GAAG,CAAC,CAAC;QAEhB,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;QAC3B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC;QACpC,OAAO,CAAC,GAAG,EAAE,CAAC;IAChB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,KAAK,CAAC,SAAS,CAAC,CAAC;QACjB,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QACzD,OAAO,CAAC,GAAG,EAAE,CAAC;IAChB,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY;IAChC,MAAM,WAAW,CAAC,qBAAqB,EAAE,SAAS,CAAC,CAAC;AACtD,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU;IAC9B,MAAM,WAAW,CAAC,0BAA0B,EAAE,WAAW,CAAC,CAAC;AAC7D,CAAC"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * NBTCA Welcome Tool - Entry Point
3
+ * 程序启动入口
4
+ */
5
+ export {};
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
package/dist/index.js ADDED
@@ -0,0 +1,8 @@
1
+ /**
2
+ * NBTCA Welcome Tool - Entry Point
3
+ * 程序启动入口
4
+ */
5
+ import { main } from './main.js';
6
+ // 启动主程序
7
+ main();
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,QAAQ;AACR,IAAI,EAAE,CAAC"}
@@ -0,0 +1,6 @@
1
+ ███╗ ██╗██████╗ ████████╗ ██████╗ █████╗
2
+ ████╗ ██║██╔══██╗╚══██╔══╝██╔════╝██╔══██╗
3
+ ██╔██╗ ██║██████╔╝ ██║ ██║ ███████║
4
+ ██║╚██╗██║██╔══██╗ ██║ ██║ ██╔══██║
5
+ ██║ ╚████║██████╔╝ ██║ ╚██████╗██║ ██║
6
+ ╚═╝ ╚═══╝╚═════╝ ╚═╝ ╚═════╝╚═╝ ╚═╝