agmd 0.3.12 → 0.3.13

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 (87) hide show
  1. package/README.EN.md +1 -1
  2. package/README.md +2 -0
  3. package/es6/package.json +81 -0
  4. package/es6/script/cli/handle.js +20 -0
  5. package/es6/script/cli/handle.js.map +1 -0
  6. package/es6/script/cli/index.js +23 -0
  7. package/es6/script/cli/index.js.map +1 -0
  8. package/es6/script/help/index.js +24 -0
  9. package/es6/script/help/index.js.map +1 -0
  10. package/es6/src/bin.js +7 -0
  11. package/es6/src/bin.js.map +1 -0
  12. package/es6/src/commands/agmd.js +24 -0
  13. package/es6/src/commands/agmd.js.map +1 -0
  14. package/es6/src/commands/change-path.js +119 -0
  15. package/es6/src/commands/change-path.js.map +1 -0
  16. package/es6/src/commands/command-actions.js +101 -0
  17. package/es6/src/commands/command-actions.js.map +1 -0
  18. package/es6/src/commands/command-handler.js +123 -0
  19. package/es6/src/commands/command-handler.js.map +1 -0
  20. package/es6/src/commands/get-file.js +163 -0
  21. package/es6/src/commands/get-file.js.map +1 -0
  22. package/es6/src/commands/get-router.js +110 -0
  23. package/es6/src/commands/get-router.js.map +1 -0
  24. package/es6/src/commands/mark-file.js +130 -0
  25. package/es6/src/commands/mark-file.js.map +1 -0
  26. package/es6/src/commands/mark-write-file.js +53 -0
  27. package/es6/src/commands/mark-write-file.js.map +1 -0
  28. package/es6/src/commands/rename-path.js +186 -0
  29. package/es6/src/commands/rename-path.js.map +1 -0
  30. package/es6/src/commands/wirte-md.js +82 -0
  31. package/es6/src/commands/wirte-md.js.map +1 -0
  32. package/{lib/index.d.ts → es6/src/index.js} +1 -0
  33. package/es6/src/index.js.map +1 -0
  34. package/es6/src/shared/constant.js +5 -0
  35. package/es6/src/shared/constant.js.map +1 -0
  36. package/es6/src/types.js +2 -0
  37. package/es6/src/types.js.map +1 -0
  38. package/es6/src/utils/router-utils.js +37 -0
  39. package/es6/src/utils/router-utils.js.map +1 -0
  40. package/lib/package.json +81 -0
  41. package/lib/script/cli/handle.js +25 -0
  42. package/lib/script/cli/handle.js.map +1 -0
  43. package/lib/script/cli/index.js +28 -0
  44. package/lib/script/cli/index.js.map +1 -0
  45. package/lib/script/help/index.js +26 -0
  46. package/lib/script/help/index.js.map +1 -0
  47. package/lib/src/bin.js +9 -0
  48. package/lib/src/bin.js.map +1 -0
  49. package/lib/src/commands/agmd.js +29 -0
  50. package/lib/src/commands/agmd.js.map +1 -0
  51. package/lib/src/commands/change-path.js +132 -0
  52. package/lib/src/commands/change-path.js.map +1 -0
  53. package/lib/src/commands/command-actions.js +117 -0
  54. package/lib/src/commands/command-actions.js.map +1 -0
  55. package/lib/src/commands/command-handler.js +131 -0
  56. package/lib/src/commands/command-handler.js.map +1 -0
  57. package/lib/src/commands/get-file.js +173 -0
  58. package/lib/src/commands/get-file.js.map +1 -0
  59. package/lib/src/commands/get-router.js +143 -0
  60. package/lib/src/commands/get-router.js.map +1 -0
  61. package/lib/src/commands/mark-file.js +143 -0
  62. package/lib/src/commands/mark-file.js.map +1 -0
  63. package/lib/src/commands/mark-write-file.js +61 -0
  64. package/lib/src/commands/mark-write-file.js.map +1 -0
  65. package/lib/src/commands/rename-path.js +201 -0
  66. package/lib/src/commands/rename-path.js.map +1 -0
  67. package/lib/src/commands/wirte-md.js +90 -0
  68. package/lib/src/commands/wirte-md.js.map +1 -0
  69. package/lib/src/index.js +8 -0
  70. package/lib/src/index.js.map +1 -0
  71. package/lib/src/shared/constant.js +8 -0
  72. package/lib/src/shared/constant.js.map +1 -0
  73. package/lib/src/types.js +3 -0
  74. package/lib/src/types.js.map +1 -0
  75. package/lib/src/utils/router-utils.js +43 -0
  76. package/lib/src/utils/router-utils.js.map +1 -0
  77. package/package.json +26 -27
  78. package/bin/bin.js +0 -160
  79. package/bin/bin.js.map +0 -7
  80. package/lib/commands/change-path.d.ts +0 -12
  81. package/lib/commands/get-file.d.ts +0 -26
  82. package/lib/commands/wirte-md.d.ts +0 -9
  83. package/lib/index.cjs.js +0 -1251
  84. package/lib/index.cjs.js.map +0 -7
  85. package/lib/index.esm.js +0 -1243
  86. package/lib/index.esm.js.map +0 -7
  87. package/lib/shared/logger.d.ts +0 -7
@@ -0,0 +1,163 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import fs from 'fs';
11
+ import path from 'path';
12
+ import { readFile, readdir } from 'fs/promises';
13
+ import { changeImport } from './change-path';
14
+ import { getDependencies } from '../utils/router-utils';
15
+ import { env } from 'node-environment';
16
+ const rootPath = process.cwd().replace(/\\/g, '/');
17
+ const isDev = env() === 'development';
18
+ const ignore = [
19
+ 'es6',
20
+ 'lib',
21
+ 'jest.config.js',
22
+ 'router',
23
+ 'img',
24
+ 'styles',
25
+ 'node_modules',
26
+ 'LICENSE',
27
+ '.git',
28
+ '.github',
29
+ 'dist',
30
+ '.husky',
31
+ '.vscode',
32
+ '.eslintrc.js',
33
+ 'readme-file.js',
34
+ 'readme-md.js'
35
+ ];
36
+ export function getFile(fullPath) {
37
+ return __awaiter(this, void 0, void 0, function* () {
38
+ const str = yield readFile(fullPath, 'utf-8');
39
+ const size = str.length;
40
+ const sarr = str.split(/[\n]/g);
41
+ const rowSize = sarr.length;
42
+ const imports = yield getImport(sarr, fullPath);
43
+ const f = sarr[0].indexOf('eslint') === -1 &&
44
+ (sarr[0].indexOf('-->') > -1 || sarr[0].indexOf('*/') > -1 || sarr[0].indexOf('//') > -1)
45
+ ? sarr[0]
46
+ : '';
47
+ return {
48
+ note: f.replace(/<\/?[^>]*>|(\n|\r)/g, ''),
49
+ size,
50
+ rowSize,
51
+ imports
52
+ };
53
+ });
54
+ }
55
+ export function getImport(sarr, fullPath) {
56
+ return __awaiter(this, void 0, void 0, function* () {
57
+ const packageJsonPath = path.join(rootPath, 'package.json');
58
+ const dependencies = yield getDependencies(packageJsonPath);
59
+ const imports = [];
60
+ sarr.forEach((ele) => {
61
+ if (ele.indexOf('from') > -1) {
62
+ const obj = changeImport(ele, fullPath, dependencies);
63
+ if (obj) {
64
+ const { absoluteImport } = obj;
65
+ if (absoluteImport) {
66
+ imports.push(absoluteImport);
67
+ }
68
+ }
69
+ }
70
+ });
71
+ return imports;
72
+ });
73
+ }
74
+ function getFileInfo(dir, item, level) {
75
+ const fullPath = path.join(dir, item);
76
+ const isDir = fs.lstatSync(fullPath).isDirectory();
77
+ return {
78
+ name: item,
79
+ isDir,
80
+ level,
81
+ note: '',
82
+ imports: new Array(),
83
+ belongTo: new Array()
84
+ };
85
+ }
86
+ function sortFiles(files) {
87
+ return files.sort((a, b) => {
88
+ if (!a.isDir && b.isDir)
89
+ return 1;
90
+ if (a.isDir && !b.isDir)
91
+ return -1;
92
+ return 0;
93
+ });
94
+ }
95
+ function handleDirectory(dir, item, option, level, nodes) {
96
+ return __awaiter(this, void 0, void 0, function* () {
97
+ yield getFileNodes(path.join(dir, item.name), option, (item.children = []), level + 1);
98
+ item.fullPath = path.join(dir, item.name).replace(/\\/g, '/');
99
+ nodes.push(item);
100
+ });
101
+ }
102
+ function handleFile(dir, item, include, nodes) {
103
+ return __awaiter(this, void 0, void 0, function* () {
104
+ const fullPath = path.join(dir, item.name);
105
+ const suffix = path.extname(fullPath);
106
+ if (include.includes(suffix)) {
107
+ const obj = yield getFile(fullPath);
108
+ Object.assign(item, obj);
109
+ item.suffix = suffix;
110
+ item.fullPath = fullPath.replace(/\\/g, '/');
111
+ nodes.push(item);
112
+ }
113
+ });
114
+ }
115
+ export function getFileNodes(dir = process.cwd(), option, nodes = [], level = 0) {
116
+ return __awaiter(this, void 0, void 0, function* () {
117
+ let include = isDev ? ['.js', '.vue'] : ['.js', '.vue', '.ts', '.tsx'];
118
+ let finalIgnore = ignore;
119
+ if (option) {
120
+ finalIgnore = option.ignore || ignore;
121
+ include = option.include || include;
122
+ }
123
+ const files = yield readdir(dir);
124
+ const tempFiles = yield Promise.all(files.map((item) => getFileInfo(dir, item, level)));
125
+ sortFiles(tempFiles);
126
+ for (const item of tempFiles) {
127
+ if (!finalIgnore.includes(item.name)) {
128
+ if (item.isDir) {
129
+ yield handleDirectory(dir, item, option, level, nodes);
130
+ }
131
+ else {
132
+ yield handleFile(dir, item, include, nodes);
133
+ }
134
+ }
135
+ }
136
+ return nodes;
137
+ });
138
+ }
139
+ export function getNote(datas, keys) {
140
+ const nodes = keys || [];
141
+ datas.forEach((obj, index) => {
142
+ const last = index === datas.length - 1;
143
+ if (obj.children) {
144
+ getNote(obj.children, nodes);
145
+ }
146
+ const md = setMd(obj, last);
147
+ nodes.push(md);
148
+ });
149
+ return nodes;
150
+ }
151
+ function setMd(obj, last) {
152
+ let filesString = '';
153
+ const blank = '│ '.repeat(obj.level);
154
+ const pre = `${blank}${last ? '└──' : '├──'} ${obj.name}`;
155
+ if (obj.isDir) {
156
+ filesString += `${pre}\n`;
157
+ }
158
+ else {
159
+ filesString += `${pre} ${obj.note}\n`;
160
+ }
161
+ return filesString;
162
+ }
163
+ //# sourceMappingURL=get-file.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-file.js","sourceRoot":"","sources":["../../../src/commands/get-file.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,110 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import { readdir, readFile, stat, access } from 'fs/promises';
11
+ import createDebugger from 'debug';
12
+ import { createConsola } from 'consola';
13
+ import path from 'path';
14
+ import { parseRouterPath, parseComponentPath } from '../utils/router-utils';
15
+ const logger = createConsola({
16
+ level: 4
17
+ });
18
+ const debug = createDebugger('get-file');
19
+ debug.enabled = false;
20
+ const rootPath = process.cwd().replace(/\\/g, '/');
21
+ export function getRouterFilePath(dir) {
22
+ return __awaiter(this, void 0, void 0, function* () {
23
+ const routes = [];
24
+ function finder(p) {
25
+ return __awaiter(this, void 0, void 0, function* () {
26
+ const files = yield readdir(p);
27
+ for (const val of files) {
28
+ const fPath = path.join(p, val).replace(/\\/g, '/');
29
+ const stats = yield stat(fPath);
30
+ if (stats.isDirectory()) {
31
+ yield finder(fPath);
32
+ }
33
+ else if (stats.isFile()) {
34
+ routes.push(fPath);
35
+ }
36
+ }
37
+ });
38
+ }
39
+ yield finder(dir);
40
+ return routes;
41
+ });
42
+ }
43
+ export function getAllRouter(dir) {
44
+ return __awaiter(this, void 0, void 0, function* () {
45
+ const filePaths = yield getRouterFilePath(dir);
46
+ const routers = [];
47
+ for (const filePath of filePaths) {
48
+ const routerItems = yield getRouter(filePath);
49
+ routers.push(...routerItems);
50
+ }
51
+ return routers;
52
+ });
53
+ }
54
+ export function getRouter(routerPath) {
55
+ return __awaiter(this, void 0, void 0, function* () {
56
+ const routers = [];
57
+ try {
58
+ yield access(routerPath);
59
+ const fileContent = yield readFile(routerPath, 'utf-8');
60
+ const lines = fileContent.split(/\n/g);
61
+ let currentPath = '';
62
+ let currentComponent = '';
63
+ lines.forEach((line) => {
64
+ if (line.includes('//'))
65
+ return;
66
+ const tempPath = parseRouterPath(line);
67
+ if (tempPath)
68
+ currentPath = tempPath;
69
+ const tempComponent = parseComponentPath(line);
70
+ if (tempComponent)
71
+ currentComponent = tempComponent;
72
+ if (currentPath && currentComponent) {
73
+ routers.push({ path: currentPath, component: currentComponent });
74
+ currentPath = '';
75
+ currentComponent = '';
76
+ }
77
+ });
78
+ }
79
+ catch (error) {
80
+ console.error('读取路由配置时出错:', error);
81
+ }
82
+ return routers;
83
+ });
84
+ }
85
+ export function getRouterArrs() {
86
+ return __awaiter(this, void 0, void 0, function* () {
87
+ const pathName = `${rootPath}/classify.js`;
88
+ const dir = `${rootPath}/router`;
89
+ let routers = null;
90
+ try {
91
+ if (yield stat(pathName)) {
92
+ routers = yield import(pathName);
93
+ }
94
+ else {
95
+ routers = [
96
+ {
97
+ name: 'mark',
98
+ router: yield getAllRouter(dir)
99
+ }
100
+ ];
101
+ }
102
+ }
103
+ catch (error) {
104
+ logger.error('根路径没有发现 classify.js,并且 src 里面没有 router 文件,现在退出');
105
+ process.exit(1);
106
+ }
107
+ return routers;
108
+ });
109
+ }
110
+ //# sourceMappingURL=get-router.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-router.js","sourceRoot":"","sources":["../../../src/commands/get-router.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAC7D,OAAO,cAAc,MAAM,OAAO,CAAA;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AACvC,OAAO,IAAI,MAAM,MAAM,CAAA;AACvB,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAA;AAE3E,MAAM,MAAM,GAAG,aAAa,CAAC;IAC3B,KAAK,EAAE,CAAC;CACT,CAAC,CAAA;AACF,MAAM,KAAK,GAAG,cAAc,CAAC,UAAU,CAAC,CAAA;AACxC,KAAK,CAAC,OAAO,GAAG,KAAK,CAAA;AACrB,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;AAKlD,MAAM,UAAgB,iBAAiB,CAAC,GAAW;;QACjD,MAAM,MAAM,GAAa,EAAE,CAAA;QAE3B,SAAe,MAAM,CAAC,CAAS;;gBAC7B,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,CAAC,CAAC,CAAA;gBAC9B,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;oBACxB,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;oBACnD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,CAAA;oBAC/B,IAAI,KAAK,CAAC,WAAW,EAAE,EAAE,CAAC;wBACxB,MAAM,MAAM,CAAC,KAAK,CAAC,CAAA;oBACrB,CAAC;yBAAM,IAAI,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC;wBAC1B,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;oBACpB,CAAC;gBACH,CAAC;YACH,CAAC;SAAA;QAED,MAAM,MAAM,CAAC,GAAG,CAAC,CAAA;QACjB,OAAO,MAAM,CAAA;IACf,CAAC;CAAA;AAMD,MAAM,UAAgB,YAAY,CAAC,GAAW;;QAC5C,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC,GAAG,CAAC,CAAA;QAC9C,MAAM,OAAO,GAAa,EAAE,CAAA;QAE5B,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;YACjC,MAAM,WAAW,GAAG,MAAM,SAAS,CAAC,QAAQ,CAAC,CAAA;YAC7C,OAAO,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,CAAA;QAC9B,CAAC;QAED,OAAO,OAAO,CAAA;IAChB,CAAC;CAAA;AAKD,MAAM,UAAgB,SAAS,CAAC,UAAkB;;QAChD,MAAM,OAAO,GAAa,EAAE,CAAA;QAC5B,IAAI,CAAC;YAEH,MAAM,MAAM,CAAC,UAAU,CAAC,CAAA;YACxB,MAAM,WAAW,GAAG,MAAM,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;YACvD,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;YACtC,IAAI,WAAW,GAAG,EAAE,CAAA;YACpB,IAAI,gBAAgB,GAAG,EAAE,CAAA;YACzB,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;gBACrB,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC;oBAAE,OAAM;gBAC/B,MAAM,QAAQ,GAAG,eAAe,CAAC,IAAI,CAAC,CAAA;gBACtC,IAAI,QAAQ;oBAAE,WAAW,GAAG,QAAQ,CAAA;gBACpC,MAAM,aAAa,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAA;gBAC9C,IAAI,aAAa;oBAAE,gBAAgB,GAAG,aAAa,CAAA;gBACnD,IAAI,WAAW,IAAI,gBAAgB,EAAE,CAAC;oBACpC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC,CAAA;oBAChE,WAAW,GAAG,EAAE,CAAA;oBAChB,gBAAgB,GAAG,EAAE,CAAA;gBACvB,CAAC;YACH,CAAC,CAAC,CAAA;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,YAAY,EAAE,KAAK,CAAC,CAAA;QAEpC,CAAC;QAED,OAAO,OAAO,CAAA;IAChB,CAAC;CAAA;AAKD,MAAM,UAAgB,aAAa;;QACjC,MAAM,QAAQ,GAAG,GAAG,QAAQ,cAAc,CAAA;QAC1C,MAAM,GAAG,GAAG,GAAG,QAAQ,SAAS,CAAA;QAChC,IAAI,OAAO,GAAwB,IAAI,CAAA;QACvC,IAAI,CAAC;YACH,IAAI,MAAM,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACzB,OAAO,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,CAAA;YAClC,CAAC;iBAAM,CAAC;gBAEN,OAAO,GAAG;oBACR;wBACE,IAAI,EAAE,MAAM;wBACZ,MAAM,EAAE,MAAM,YAAY,CAAC,GAAG,CAAC;qBAChC;iBACF,CAAA;YACH,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,gDAAgD,CAAC,CAAA;YAC9D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;QACD,OAAO,OAAO,CAAA;IAChB,CAAC;CAAA"}
@@ -0,0 +1,130 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import fs from 'fs';
11
+ import { markWriteFile } from './mark-write-file';
12
+ import { createConsola } from 'consola';
13
+ const logger = createConsola({
14
+ level: 4
15
+ });
16
+ const rootPath = process.cwd().replace(/\\/g, '/');
17
+ export function markFile(nodes, routers) {
18
+ return __awaiter(this, void 0, void 0, function* () {
19
+ for (let i = 0; i < routers.length; i++) {
20
+ const ele = routers[i];
21
+ for (let j = 0; j < ele.router.length; j++) {
22
+ const obj = ele.router[j];
23
+ const pathN = obj.component;
24
+ logger.info(`准备处理${obj.path}`);
25
+ const absolutePath = pathN.replace('@', rootPath);
26
+ yield setNodeMark(nodes, ele.name, absolutePath);
27
+ }
28
+ }
29
+ });
30
+ }
31
+ export function witeMarkFile(nodes, routers) {
32
+ return __awaiter(this, void 0, void 0, function* () {
33
+ for (let index = 0; index < routers.length; index++) {
34
+ const ele = routers[index];
35
+ for (let j = 0; j < ele.router.length; j++) {
36
+ const obj = ele.router[j];
37
+ const pathN = obj.component;
38
+ const absolutePath = pathN.replace('@', rootPath);
39
+ yield markWriteFile(nodes, ele.name, absolutePath);
40
+ }
41
+ }
42
+ });
43
+ }
44
+ export function setNodeMark(nodes, name, path) {
45
+ return __awaiter(this, void 0, void 0, function* () {
46
+ logger.info('setNodeMark入参: ', name, path);
47
+ const node = findNodes(nodes, path);
48
+ if (node) {
49
+ setmark(path, name);
50
+ }
51
+ if (node && node.imports) {
52
+ if (node.belongTo.indexOf(name) > -1)
53
+ return;
54
+ node.belongTo.push(name);
55
+ for (let index = 0; index < node.imports.length; index++) {
56
+ const element = node.imports[index];
57
+ if (fs.existsSync(path)) {
58
+ yield setNodeMark(nodes, name, element);
59
+ }
60
+ else {
61
+ logger.error(`文件不存在: ${path}`);
62
+ }
63
+ }
64
+ }
65
+ });
66
+ }
67
+ export function findNodes(nodes, path) {
68
+ let node = null;
69
+ function find(objs) {
70
+ for (let index = 0; index < objs.length; index++) {
71
+ const element = objs[index];
72
+ if (element.children)
73
+ find(element.children);
74
+ if (element.fullPath === path)
75
+ node = element;
76
+ }
77
+ }
78
+ find(nodes);
79
+ return node;
80
+ }
81
+ export function setmark(file, name) {
82
+ try {
83
+ let fileStr = fs.readFileSync(file, 'utf-8');
84
+ if (fileStr.indexOf('//' + name + '\n') === 0) {
85
+ return;
86
+ }
87
+ fileStr = '//' + name + '\n' + fileStr;
88
+ fs.writeFileSync(file, fileStr);
89
+ logger.info(`mark successful-------: ${file}`);
90
+ }
91
+ catch (error) {
92
+ logger.error(`给文件打标记的文件不存在: ${file}`);
93
+ return;
94
+ }
95
+ }
96
+ export function deletMarkAll(nodes, name) {
97
+ function find(objs) {
98
+ for (let index = 0; index < objs.length; index++) {
99
+ const element = objs[index];
100
+ if (element.children)
101
+ find(element.children);
102
+ else
103
+ deletMark(element.fullPath, name);
104
+ }
105
+ }
106
+ find(nodes);
107
+ }
108
+ export function deletMark(file, name) {
109
+ let fileStr = '';
110
+ try {
111
+ fileStr = fs.readFileSync(file, 'utf-8');
112
+ const sarr = fileStr.split(/[\n]/g);
113
+ for (let index = 0; index < sarr.length; index++) {
114
+ const ele = sarr[index];
115
+ if (ele.indexOf('//' + name) > -1) {
116
+ sarr.splice(index, 1);
117
+ index--;
118
+ }
119
+ }
120
+ fileStr = sarr.join('\n');
121
+ fs.writeFileSync(file, fileStr, { encoding: 'utf8' });
122
+ logger.success('delete mark successful-------' + file);
123
+ return fileStr;
124
+ }
125
+ catch (error) {
126
+ logger.error('删除标记的文件不存在: ', file);
127
+ }
128
+ return '';
129
+ }
130
+ //# sourceMappingURL=mark-file.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mark-file.js","sourceRoot":"","sources":["../../../src/commands/mark-file.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,53 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import { findNodes } from './mark-file';
11
+ import fs from 'fs-extra';
12
+ import { createConsola } from 'consola';
13
+ const logger = createConsola({
14
+ level: 4
15
+ });
16
+ const rootPath = process.cwd().replace(/\\/g, '/');
17
+ export function markWriteFile(nodes, name, path) {
18
+ return __awaiter(this, void 0, void 0, function* () {
19
+ const node = findNodes(nodes, path);
20
+ if (!node || node.copyed)
21
+ return;
22
+ node.copyed = true;
23
+ if (node.belongTo.length > 0) {
24
+ yield setDispFileNew(path, name);
25
+ }
26
+ if (node.imports) {
27
+ for (const element of node.imports) {
28
+ if (yield fs.pathExists(element)) {
29
+ yield markWriteFile(nodes, name, element);
30
+ }
31
+ else {
32
+ logger.error(`${element} 文件不存在`);
33
+ }
34
+ }
35
+ }
36
+ });
37
+ }
38
+ export function setDispFileNew(pathN, name) {
39
+ return __awaiter(this, void 0, void 0, function* () {
40
+ const relative = pathN.replace(rootPath, '');
41
+ const writeFileName = `${rootPath}/${name}${relative}`;
42
+ try {
43
+ if (yield fs.pathExists(writeFileName))
44
+ return;
45
+ yield fs.copy(pathN, writeFileName);
46
+ logger.success('写入文件success! : ', writeFileName);
47
+ }
48
+ catch (err) {
49
+ logger.error('文件写入失败');
50
+ }
51
+ });
52
+ }
53
+ //# sourceMappingURL=mark-write-file.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mark-write-file.js","sourceRoot":"","sources":["../../../src/commands/mark-write-file.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAEvC,OAAO,EAAE,MAAM,UAAU,CAAA;AACzB,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AACvC,MAAM,MAAM,GAAG,aAAa,CAAC;IAC3B,KAAK,EAAE,CAAC;CACT,CAAC,CAAA;AACF,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;AAQlD,MAAM,UAAgB,aAAa,CAAC,KAAiB,EAAE,IAAY,EAAE,IAAY;;QAE/E,MAAM,IAAI,GAAG,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;QAEnC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM;YAAE,OAAM;QAChC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAA;QAClB,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,MAAM,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;QAClC,CAAC;QACD,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBACnC,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;oBACjC,MAAM,aAAa,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,CAAA;gBAC3C,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,KAAK,CAAC,GAAG,OAAO,QAAQ,CAAC,CAAA;gBAClC,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;CAAA;AAOD,MAAM,UAAgB,cAAc,CAAC,KAAa,EAAE,IAAY;;QAC9D,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;QAC5C,MAAM,aAAa,GAAG,GAAG,QAAQ,IAAI,IAAI,GAAG,QAAQ,EAAE,CAAA;QACtD,IAAI,CAAC;YACH,IAAI,MAAM,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC;gBAAE,OAAM;YAC9C,MAAM,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,aAAa,CAAC,CAAA;YACnC,MAAM,CAAC,OAAO,CAAC,iBAAiB,EAAE,aAAa,CAAC,CAAA;QAClD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;QACxB,CAAC;IACH,CAAC;CAAA"}
@@ -0,0 +1,186 @@
1
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
+ return new (P || (P = Promise))(function (resolve, reject) {
4
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
5
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
6
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
7
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
8
+ });
9
+ };
10
+ import fs from 'fs-extra';
11
+ import path from 'path';
12
+ import { createConsola } from 'consola';
13
+ import { getDependencies } from '../utils/router-utils';
14
+ import { getImportName } from './change-path';
15
+ const logger = createConsola({
16
+ level: 4
17
+ });
18
+ const rootPath = process.cwd().replace(/\\/g, '/');
19
+ function fistLetterLower(str) {
20
+ return str.charAt(0).toLowerCase() + str.slice(1);
21
+ }
22
+ export function toKebabCase(str) {
23
+ const regex = /[A-Z]/g;
24
+ return fistLetterLower(str).replace(regex, (word) => {
25
+ return '-' + word.toLowerCase();
26
+ });
27
+ }
28
+ export function checkCamelFile(fileName) {
29
+ return /([a-z])([A-Z])/.test(fileName) || /([A-Z])/.test(fileName);
30
+ }
31
+ export function renameFoldPath(nodes) {
32
+ return __awaiter(this, void 0, void 0, function* () {
33
+ function getNode(cpNodes) {
34
+ return __awaiter(this, void 0, void 0, function* () {
35
+ for (let index = 0; index < cpNodes.length; index++) {
36
+ const ele = cpNodes[index];
37
+ yield renameFold(ele);
38
+ if (ele.children) {
39
+ yield getNode(ele.children);
40
+ }
41
+ }
42
+ });
43
+ }
44
+ yield getNode(nodes);
45
+ });
46
+ }
47
+ export function renameFilePath(nodes) {
48
+ return __awaiter(this, void 0, void 0, function* () {
49
+ function getNode(cpNodes) {
50
+ return __awaiter(this, void 0, void 0, function* () {
51
+ for (let index = 0; index < cpNodes.length; index++) {
52
+ const ele = cpNodes[index];
53
+ if (ele.children) {
54
+ yield getNode(ele.children);
55
+ }
56
+ else {
57
+ yield renameFile(ele);
58
+ yield rewriteFile(ele);
59
+ }
60
+ }
61
+ });
62
+ }
63
+ yield getNode(nodes);
64
+ });
65
+ }
66
+ function rewriteFile(node) {
67
+ return __awaiter(this, void 0, void 0, function* () {
68
+ let writeFlag = false;
69
+ const str = fs.readFileSync(node.fullPath, 'utf-8');
70
+ const sarr = str.split(/[\n]/g);
71
+ const packageJsonPath = path.join(rootPath, 'package.json');
72
+ const dependencies = yield getDependencies(packageJsonPath);
73
+ for (let index = 0; index < sarr.length; index++) {
74
+ const ele = sarr[index];
75
+ if (ele.indexOf('from') > -1) {
76
+ const impOldName = getImportName(ele, dependencies);
77
+ if (checkCamelFile(impOldName)) {
78
+ const name = path.parse(impOldName).name;
79
+ const newName = toKebabCase(name);
80
+ const s = ele.split('from');
81
+ sarr[index] = `${s[0]}from${s[1].replace(name, newName)}`;
82
+ writeFlag = true;
83
+ }
84
+ }
85
+ }
86
+ if (writeFlag) {
87
+ const fileStr = sarr.join('\n');
88
+ try {
89
+ yield fs.writeFile(node.fullPath, fileStr, { encoding: 'utf8' });
90
+ logger.success(`rewriteFile successful-------: ${node.fullPath}`);
91
+ }
92
+ catch (error) {
93
+ logger.error(`写入文件失败,地址不存在: ${node.fullPath}`);
94
+ }
95
+ }
96
+ });
97
+ }
98
+ export function renameFold(node) {
99
+ return __awaiter(this, void 0, void 0, function* () {
100
+ const filename = path.parse(node.fullPath).base;
101
+ logger.info('filename111: ', filename);
102
+ const filter = ['FMEA', 'DVP'];
103
+ const falg = filter.some((item) => filename.indexOf(item) > -1);
104
+ if (!falg && checkCamelFile(filename)) {
105
+ if (node.isDir) {
106
+ const obj = yield replaceName(node.fullPath);
107
+ changePathFold(node, obj);
108
+ }
109
+ }
110
+ });
111
+ }
112
+ export function changePathFold(node, obj) {
113
+ const { newName, filename } = obj;
114
+ if (node.children) {
115
+ for (let index = 0; index < node.children.length; index++) {
116
+ const ele = node.children[index];
117
+ changePathFold(ele, obj);
118
+ }
119
+ }
120
+ node.fullPath = node.fullPath.replace(filename, newName);
121
+ logger.info(node.fullPath, newName);
122
+ node.name = node.name.replace(filename, newName);
123
+ }
124
+ export function changePathName(node, obj) {
125
+ const { newName, filename } = obj;
126
+ if (node.fullPath.indexOf(filename) > -1) {
127
+ if (node.imports.length > 0) {
128
+ const array = node.imports;
129
+ for (let j = 0; j < array.length; j++) {
130
+ const ele = array[j];
131
+ logger.info('import-ele: ', ele);
132
+ array[j] = toKebabCase(ele);
133
+ logger.info('更换import: ', array[j]);
134
+ }
135
+ }
136
+ node.fullPath = node.fullPath.replace(filename, newName);
137
+ node.name = node.name.replace(filename, newName);
138
+ logger.success('替换后的 node.fullPath:', node.fullPath);
139
+ }
140
+ }
141
+ export function renameFile(node) {
142
+ return __awaiter(this, void 0, void 0, function* () {
143
+ const filename = path.parse(node.fullPath).base;
144
+ if (checkCamelFile(filename)) {
145
+ const suffix = ['.js', '.vue', '.tsx'];
146
+ const lastName = path.extname(node.fullPath);
147
+ const flag = suffix.some((item) => lastName === item);
148
+ if (flag) {
149
+ const obj = yield replaceName(node.fullPath);
150
+ changePathName(node, obj);
151
+ }
152
+ }
153
+ });
154
+ }
155
+ export function replaceName(fullPath) {
156
+ return __awaiter(this, void 0, void 0, function* () {
157
+ const filename = path.parse(fullPath).base;
158
+ const newName = toKebabCase(filename);
159
+ const oldPath = fullPath;
160
+ const newPath = oldPath.replace(filename, newName);
161
+ const lastName = path.extname(newPath);
162
+ if (!lastName) {
163
+ if (fs.existsSync(newPath)) {
164
+ yield fs.copy(fullPath, newPath);
165
+ fs.removeSync(fullPath);
166
+ return { newName, filename };
167
+ }
168
+ }
169
+ try {
170
+ const flag = fs.existsSync(oldPath);
171
+ if (flag) {
172
+ yield fs.rename(oldPath, newPath);
173
+ logger.success(oldPath, '改名为: ', newPath);
174
+ }
175
+ else {
176
+ logger.error(`文件${oldPath}不存在重命名干嘛?`);
177
+ }
178
+ logger.info(filename + ' is reneme done');
179
+ return { newName, filename };
180
+ }
181
+ catch (error) {
182
+ throw error;
183
+ }
184
+ });
185
+ }
186
+ //# sourceMappingURL=rename-path.js.map