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.
- package/README.EN.md +1 -1
- package/README.md +2 -0
- package/es6/package.json +81 -0
- package/es6/script/cli/handle.js +20 -0
- package/es6/script/cli/handle.js.map +1 -0
- package/es6/script/cli/index.js +23 -0
- package/es6/script/cli/index.js.map +1 -0
- package/es6/script/help/index.js +24 -0
- package/es6/script/help/index.js.map +1 -0
- package/es6/src/bin.js +7 -0
- package/es6/src/bin.js.map +1 -0
- package/es6/src/commands/agmd.js +24 -0
- package/es6/src/commands/agmd.js.map +1 -0
- package/es6/src/commands/change-path.js +119 -0
- package/es6/src/commands/change-path.js.map +1 -0
- package/es6/src/commands/command-actions.js +101 -0
- package/es6/src/commands/command-actions.js.map +1 -0
- package/es6/src/commands/command-handler.js +123 -0
- package/es6/src/commands/command-handler.js.map +1 -0
- package/es6/src/commands/get-file.js +163 -0
- package/es6/src/commands/get-file.js.map +1 -0
- package/es6/src/commands/get-router.js +110 -0
- package/es6/src/commands/get-router.js.map +1 -0
- package/es6/src/commands/mark-file.js +130 -0
- package/es6/src/commands/mark-file.js.map +1 -0
- package/es6/src/commands/mark-write-file.js +53 -0
- package/es6/src/commands/mark-write-file.js.map +1 -0
- package/es6/src/commands/rename-path.js +186 -0
- package/es6/src/commands/rename-path.js.map +1 -0
- package/es6/src/commands/wirte-md.js +82 -0
- package/es6/src/commands/wirte-md.js.map +1 -0
- package/{lib/index.d.ts → es6/src/index.js} +1 -0
- package/es6/src/index.js.map +1 -0
- package/es6/src/shared/constant.js +5 -0
- package/es6/src/shared/constant.js.map +1 -0
- package/es6/src/types.js +2 -0
- package/es6/src/types.js.map +1 -0
- package/es6/src/utils/router-utils.js +37 -0
- package/es6/src/utils/router-utils.js.map +1 -0
- package/lib/package.json +81 -0
- package/lib/script/cli/handle.js +25 -0
- package/lib/script/cli/handle.js.map +1 -0
- package/lib/script/cli/index.js +28 -0
- package/lib/script/cli/index.js.map +1 -0
- package/lib/script/help/index.js +26 -0
- package/lib/script/help/index.js.map +1 -0
- package/lib/src/bin.js +9 -0
- package/lib/src/bin.js.map +1 -0
- package/lib/src/commands/agmd.js +29 -0
- package/lib/src/commands/agmd.js.map +1 -0
- package/lib/src/commands/change-path.js +132 -0
- package/lib/src/commands/change-path.js.map +1 -0
- package/lib/src/commands/command-actions.js +117 -0
- package/lib/src/commands/command-actions.js.map +1 -0
- package/lib/src/commands/command-handler.js +131 -0
- package/lib/src/commands/command-handler.js.map +1 -0
- package/lib/src/commands/get-file.js +173 -0
- package/lib/src/commands/get-file.js.map +1 -0
- package/lib/src/commands/get-router.js +143 -0
- package/lib/src/commands/get-router.js.map +1 -0
- package/lib/src/commands/mark-file.js +143 -0
- package/lib/src/commands/mark-file.js.map +1 -0
- package/lib/src/commands/mark-write-file.js +61 -0
- package/lib/src/commands/mark-write-file.js.map +1 -0
- package/lib/src/commands/rename-path.js +201 -0
- package/lib/src/commands/rename-path.js.map +1 -0
- package/lib/src/commands/wirte-md.js +90 -0
- package/lib/src/commands/wirte-md.js.map +1 -0
- package/lib/src/index.js +8 -0
- package/lib/src/index.js.map +1 -0
- package/lib/src/shared/constant.js +8 -0
- package/lib/src/shared/constant.js.map +1 -0
- package/lib/src/types.js +3 -0
- package/lib/src/types.js.map +1 -0
- package/lib/src/utils/router-utils.js +43 -0
- package/lib/src/utils/router-utils.js.map +1 -0
- package/package.json +26 -27
- package/bin/bin.js +0 -160
- package/bin/bin.js.map +0 -7
- package/lib/commands/change-path.d.ts +0 -12
- package/lib/commands/get-file.d.ts +0 -26
- package/lib/commands/wirte-md.d.ts +0 -9
- package/lib/index.cjs.js +0 -1251
- package/lib/index.cjs.js.map +0 -7
- package/lib/index.esm.js +0 -1243
- package/lib/index.esm.js.map +0 -7
- package/lib/shared/logger.d.ts +0 -7
package/README.EN.md
CHANGED
package/README.md
CHANGED
package/es6/package.json
ADDED
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "agmd",
|
|
3
|
+
"version": "0.3.13",
|
|
4
|
+
"description": "auto generate markdown for node, Classification of engineering documents, Absolute path to relative path",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"node",
|
|
7
|
+
"auto",
|
|
8
|
+
"generate",
|
|
9
|
+
"relative path",
|
|
10
|
+
"md",
|
|
11
|
+
"classification",
|
|
12
|
+
"markdown"
|
|
13
|
+
],
|
|
14
|
+
"main": "lib/src/index.js",
|
|
15
|
+
"module": "es6/src/index.js",
|
|
16
|
+
"bin": {
|
|
17
|
+
"agmd": "lib/src/bin.js"
|
|
18
|
+
},
|
|
19
|
+
"scripts": {
|
|
20
|
+
"build": "tsc&&tsc --project tsconfig.es6.json",
|
|
21
|
+
"devtsc": "tsc --watch --noEmit --strict src/commands/agmd.ts",
|
|
22
|
+
"cli": "ts-node src/bin.ts",
|
|
23
|
+
"dev": "ts-node-dev src/commands/agmd.ts",
|
|
24
|
+
"agmd": "npx agmd --ignore lib,node_modules,dist --include .js,.ts,.vue",
|
|
25
|
+
"lint": "eslint --fix --ext .js,.ts ./src",
|
|
26
|
+
"prepare": "husky install",
|
|
27
|
+
"test": "jest",
|
|
28
|
+
"test:coverage": "jest --coverage",
|
|
29
|
+
"testdev": "jest --watch ",
|
|
30
|
+
"lint-fix": "eslint --fix --ext .js,.ts"
|
|
31
|
+
},
|
|
32
|
+
"author": "kakajun <253495832@qq.com>",
|
|
33
|
+
"repository": {
|
|
34
|
+
"type": "git",
|
|
35
|
+
"url": "git@github.com:kakajun/auto-generate-md.git"
|
|
36
|
+
},
|
|
37
|
+
"devDependencies": {
|
|
38
|
+
"@types/debug": "^4.1.12",
|
|
39
|
+
"@types/fs-extra": "^11.0.4",
|
|
40
|
+
"@types/jest": "^29.5.11",
|
|
41
|
+
"@types/node": "^20.11.10",
|
|
42
|
+
"@types/prompts": "^2.4.9",
|
|
43
|
+
"eslint-plugin-import": "^2.29.1",
|
|
44
|
+
"@typescript-eslint/eslint-plugin": "^6.19.1",
|
|
45
|
+
"@typescript-eslint/parser": "^6.19.1",
|
|
46
|
+
"arg": "5.0.2",
|
|
47
|
+
"commander": "^11.1.0",
|
|
48
|
+
"debug": "^4.3.4",
|
|
49
|
+
"eslint": "^8.56.0",
|
|
50
|
+
"eslint-config-prettier": "^9.1.0",
|
|
51
|
+
"fs-extra": "^11.2.0",
|
|
52
|
+
"husky": "^9.0.6",
|
|
53
|
+
"jest": "^29.7.0",
|
|
54
|
+
"lint-staged": "^15.2.0",
|
|
55
|
+
"node-environment": "^0.5.1",
|
|
56
|
+
"nodemon": "^3.0.3",
|
|
57
|
+
"prettier": "^3.2.4",
|
|
58
|
+
"prompts": "^2.4.2",
|
|
59
|
+
"ts-jest": "^29.1.2",
|
|
60
|
+
"ts-node": "^10.9.2",
|
|
61
|
+
"consola": "^3.2.3",
|
|
62
|
+
"typescript": "^5.3.3",
|
|
63
|
+
"ts-node-dev": "^2.0.0"
|
|
64
|
+
},
|
|
65
|
+
"lint-staged": {
|
|
66
|
+
"*.{ts,tsx,js}": "prettier --write",
|
|
67
|
+
"*.{ts,tsx}": "eslint --fix"
|
|
68
|
+
},
|
|
69
|
+
"license": "MIT",
|
|
70
|
+
"bugs": {
|
|
71
|
+
"url": "https://github.com/kakajun/auto-generate-md/issues"
|
|
72
|
+
},
|
|
73
|
+
"homepage": "https://github.com/kakajun/auto-generate-md",
|
|
74
|
+
"files": [
|
|
75
|
+
"es6",
|
|
76
|
+
"lib"
|
|
77
|
+
],
|
|
78
|
+
"dependencies": {
|
|
79
|
+
"node-environment": "^0.5.1"
|
|
80
|
+
}
|
|
81
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import help from '../help';
|
|
2
|
+
import pkg from '../../package.json';
|
|
3
|
+
function handle(settings) {
|
|
4
|
+
if (settings.help) {
|
|
5
|
+
help();
|
|
6
|
+
}
|
|
7
|
+
if (settings.version) {
|
|
8
|
+
console.log(`agmd version is: ` + '\x1B[36m%s\x1B[0m', pkg.version);
|
|
9
|
+
process.exit(0);
|
|
10
|
+
}
|
|
11
|
+
if (settings.ignore) {
|
|
12
|
+
settings.ignores = settings.ignore.split(' ');
|
|
13
|
+
}
|
|
14
|
+
if (settings.include) {
|
|
15
|
+
settings.includes = settings.include.split(' ');
|
|
16
|
+
}
|
|
17
|
+
return settings;
|
|
18
|
+
}
|
|
19
|
+
export default handle;
|
|
20
|
+
//# sourceMappingURL=handle.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"handle.js","sourceRoot":"","sources":["../../../script/cli/handle.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,SAAS,CAAA;AAC1B,OAAO,GAAG,MAAM,oBAAoB,CAAA;AASpC,SAAS,MAAM,CAAC,QAAmB;IACjC,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;QAClB,IAAI,EAAE,CAAA;IACR,CAAC;IACD,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;QACrB,OAAO,CAAC,GAAG,CAAC,mBAAmB,GAAG,mBAAmB,EAAE,GAAG,CAAC,OAAO,CAAC,CAAA;QACnE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;QACpB,QAAQ,CAAC,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC/C,CAAC;IACD,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;QACrB,QAAQ,CAAC,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IACjD,CAAC;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED,eAAe,MAAM,CAAA"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import arg from 'arg';
|
|
2
|
+
const stringToArgs = (rawArgs) => {
|
|
3
|
+
const args = arg({
|
|
4
|
+
'--ignore': String,
|
|
5
|
+
'--include': String,
|
|
6
|
+
'--version': Boolean,
|
|
7
|
+
'--help': Boolean,
|
|
8
|
+
'-h': '--help',
|
|
9
|
+
'-i': '--ignore',
|
|
10
|
+
'-in': '--include',
|
|
11
|
+
'-v': '--version'
|
|
12
|
+
}, {
|
|
13
|
+
argv: rawArgs.slice(2)
|
|
14
|
+
});
|
|
15
|
+
return {
|
|
16
|
+
help: args['--help'],
|
|
17
|
+
ignore: args['--ignore'],
|
|
18
|
+
include: args['--include'],
|
|
19
|
+
version: args['--version']
|
|
20
|
+
};
|
|
21
|
+
};
|
|
22
|
+
export default stringToArgs;
|
|
23
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../script/cli/index.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,KAAK,CAAA;AACrB,MAAM,YAAY,GAAG,CAAC,OAAiB,EAAE,EAAE;IACzC,MAAM,IAAI,GAAG,GAAG,CACd;QACE,UAAU,EAAE,MAAM;QAClB,WAAW,EAAE,MAAM;QACnB,WAAW,EAAE,OAAO;QACpB,QAAQ,EAAE,OAAO;QACjB,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,UAAU;QAChB,KAAK,EAAE,WAAW;QAClB,IAAI,EAAE,WAAW;KAClB,EACD;QACE,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;KACvB,CACF,CAAA;IACD,OAAO;QACL,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC;QACpB,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC;QACxB,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC;QAC1B,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC;KAC3B,CAAA;AACH,CAAC,CAAA;AAED,eAAe,YAAY,CAAA"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
const st = `使用说明:
|
|
2
|
+
1. 在控制台按上下切换功能并回车进行确认, 执行相对应的操作!
|
|
3
|
+
2. 可以在package.json中的scripts下面配置如下,然后运行命令:
|
|
4
|
+
agmd --include str --ignore str
|
|
5
|
+
选项:
|
|
6
|
+
--include string / -i string.......... 包括文件扩展名
|
|
7
|
+
--ignore string / -in string........... 忽略文件或者文件夹
|
|
8
|
+
|
|
9
|
+
各选项的默认配置:
|
|
10
|
+
--ignore img,styles,node_modules,LICENSE,.git,.github,dist,.husky,.vscode,readme-file.js,readme-md.js
|
|
11
|
+
--include .js,.vue,.ts
|
|
12
|
+
|
|
13
|
+
说明:
|
|
14
|
+
配置中的字符串之间不应有空格
|
|
15
|
+
|
|
16
|
+
举例:
|
|
17
|
+
|
|
18
|
+
$ agmd --ignore lib,node_modules,dist --include .js,.ts,.vue`;
|
|
19
|
+
function help() {
|
|
20
|
+
console.log(st);
|
|
21
|
+
process.exit(0);
|
|
22
|
+
}
|
|
23
|
+
export default help;
|
|
24
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../script/help/index.ts"],"names":[],"mappings":"AAAA,MAAM,EAAE,GAAG;;;;;;;;;;;;;;;;;gEAiBqD,CAAA;AAEhE,SAAS,IAAI;IACX,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IACf,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AACjB,CAAC;AACD,eAAe,IAAI,CAAA"}
|
package/es6/src/bin.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bin.js","sourceRoot":"","sources":["../../src/bin.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAA;AAC1D,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAA;AAC7B,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,CAAA;AAC7B,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
import { generateAllAction } from './command-actions';
|
|
12
|
+
import { getMd } from './wirte-md';
|
|
13
|
+
import stringToArgs from '../../script/cli';
|
|
14
|
+
import handle from '../../script/cli/handle';
|
|
15
|
+
function main() {
|
|
16
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
17
|
+
const options = stringToArgs(process.argv);
|
|
18
|
+
const { ignores: ignore, includes: include } = handle(options);
|
|
19
|
+
const { md, nodes } = yield getMd({ ignore, include });
|
|
20
|
+
yield generateAllAction(nodes, md);
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
main();
|
|
24
|
+
//# sourceMappingURL=agmd.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agmd.js","sourceRoot":"","sources":["../../../src/commands/agmd.ts"],"names":[],"mappings":";;;;;;;;;;AAEA,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAA;AACrD,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAClC,OAAO,YAAY,MAAM,kBAAkB,CAAA;AAC3C,OAAO,MAAM,MAAM,yBAAyB,CAAA;AAC3C,SAAe,IAAI;;QAClB,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QAC1C,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,CAAA;QAC9D,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,GAAE,MAAM,KAAK,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAA;QACrD,MAAM,iBAAiB,CAAC,KAAK,EAAE,EAAE,CAAC,CAAA;IACpC,CAAC;CAAA;AAED,IAAI,EAAE,CAAA"}
|
|
@@ -0,0 +1,119 @@
|
|
|
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 } from 'fs/promises';
|
|
13
|
+
import { createConsola } from 'consola';
|
|
14
|
+
import { getDependencies } from '../utils/router-utils';
|
|
15
|
+
const logger = createConsola({
|
|
16
|
+
level: 4
|
|
17
|
+
});
|
|
18
|
+
const rootPath = process.cwd().replace(/\\/g, '/');
|
|
19
|
+
export function changePath(nodes, nochangePath) {
|
|
20
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
21
|
+
function getNode(objs) {
|
|
22
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
23
|
+
for (const ele of objs) {
|
|
24
|
+
if (ele.children) {
|
|
25
|
+
yield getNode(ele.children);
|
|
26
|
+
}
|
|
27
|
+
else {
|
|
28
|
+
yield witeFile(ele, true, nochangePath);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
yield getNode(nodes);
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
export function getRelatPath(absoluteImport, fullPath) {
|
|
37
|
+
let relatPath = path.relative(path.dirname(fullPath), absoluteImport).replace(/\\/g, '/');
|
|
38
|
+
if (!relatPath.startsWith('.')) {
|
|
39
|
+
relatPath = './' + relatPath;
|
|
40
|
+
}
|
|
41
|
+
return relatPath;
|
|
42
|
+
}
|
|
43
|
+
export function makeSuffix(filePath, fullPath) {
|
|
44
|
+
let absoluteImport = filePath.includes('@')
|
|
45
|
+
? filePath.replace('@', process.cwd())
|
|
46
|
+
: path.resolve(path.dirname(fullPath), filePath);
|
|
47
|
+
const lastName = path.extname(absoluteImport);
|
|
48
|
+
if (!lastName) {
|
|
49
|
+
const suffixes = ['.ts', '.vue', '.tsx', '.js', '/index.js', '/index.vue'];
|
|
50
|
+
for (const suffix of suffixes) {
|
|
51
|
+
if (fs.existsSync(absoluteImport + suffix)) {
|
|
52
|
+
absoluteImport += suffix;
|
|
53
|
+
logger.info('补充后缀:', absoluteImport + suffix);
|
|
54
|
+
break;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
return absoluteImport.replace(/\\/g, '/');
|
|
59
|
+
}
|
|
60
|
+
export function getImportName(ele, dependencies) {
|
|
61
|
+
let str = '';
|
|
62
|
+
const flag = dependencies.some((item) => ele.indexOf(item) > -1);
|
|
63
|
+
const reg = / from [\"|\'](.*)[\'|\"]/;
|
|
64
|
+
if (!flag && ele.indexOf('/') > -1 && ele.indexOf('//') !== 0) {
|
|
65
|
+
const impStr = ele.match(reg);
|
|
66
|
+
if (impStr && impStr[1])
|
|
67
|
+
str = impStr[1];
|
|
68
|
+
}
|
|
69
|
+
return str;
|
|
70
|
+
}
|
|
71
|
+
export function changeImport(ele, fullPath, dependencies, nochangePath) {
|
|
72
|
+
const impName = getImportName(ele, dependencies);
|
|
73
|
+
if (!impName)
|
|
74
|
+
return null;
|
|
75
|
+
const absoluteImport = makeSuffix(impName, fullPath);
|
|
76
|
+
const obj = {
|
|
77
|
+
impName: nochangePath ? impName : getRelatPath(absoluteImport, fullPath),
|
|
78
|
+
filePath: impName,
|
|
79
|
+
absoluteImport
|
|
80
|
+
};
|
|
81
|
+
return obj;
|
|
82
|
+
}
|
|
83
|
+
export function witeFile(node, isRelative, nochangePath) {
|
|
84
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
85
|
+
const { fullPath } = node;
|
|
86
|
+
const packageJsonPath = path.join(rootPath, 'package.json');
|
|
87
|
+
const dependencies = yield getDependencies(packageJsonPath);
|
|
88
|
+
try {
|
|
89
|
+
let writeFlag = false;
|
|
90
|
+
let fileStr = yield readFile(fullPath, 'utf-8');
|
|
91
|
+
const sarr = fileStr.split(/[\n]/g);
|
|
92
|
+
for (let index = 0; index < sarr.length; index++) {
|
|
93
|
+
const ele = sarr[index];
|
|
94
|
+
if (ele.indexOf('from') > -1 && isRelative) {
|
|
95
|
+
const obj = changeImport(ele, fullPath, dependencies, nochangePath);
|
|
96
|
+
if (obj && obj.impName) {
|
|
97
|
+
sarr[index] = ele.replace(obj.filePath, obj.impName);
|
|
98
|
+
writeFlag = true;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
if (writeFlag) {
|
|
103
|
+
fileStr = sarr.join('\n');
|
|
104
|
+
fs.writeFileSync(fullPath, fileStr, { encoding: 'utf8' });
|
|
105
|
+
logger.success(`Write file successful: ${fullPath}`);
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
catch (error) {
|
|
109
|
+
logger.error(`读取文件失败,文件名: ${fullPath} `);
|
|
110
|
+
}
|
|
111
|
+
});
|
|
112
|
+
}
|
|
113
|
+
export function wirteJsNodes(data, filePath) {
|
|
114
|
+
const file = path.resolve(rootPath, filePath);
|
|
115
|
+
const content = `export default ${data}`;
|
|
116
|
+
fs.writeFileSync(file, content, { encoding: 'utf8' });
|
|
117
|
+
logger.success(`Write file successful: ${filePath}`);
|
|
118
|
+
}
|
|
119
|
+
//# sourceMappingURL=change-path.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"change-path.js","sourceRoot":"","sources":["../../../src/commands/change-path.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,101 @@
|
|
|
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 { wirteMd } from './wirte-md';
|
|
11
|
+
import { renameFoldPath, renameFilePath } from './rename-path';
|
|
12
|
+
import { createConsola } from 'consola';
|
|
13
|
+
import { changePath, wirteJsNodes } from './change-path';
|
|
14
|
+
import { markFile, deletMarkAll, witeMarkFile } from './mark-file';
|
|
15
|
+
import { getRouterArrs } from './get-router';
|
|
16
|
+
import path from 'path';
|
|
17
|
+
import fs from 'fs';
|
|
18
|
+
const logger = createConsola({
|
|
19
|
+
level: 4
|
|
20
|
+
});
|
|
21
|
+
const rootPath = process.cwd().replace(/\\/g, '/');
|
|
22
|
+
export function getMdAction(md) {
|
|
23
|
+
console.log('\x1B[36m%s\x1B[0m', '*** location: ', `${rootPath}/readme-md.md`);
|
|
24
|
+
wirteMd(md, `${rootPath}/readme-md.md`);
|
|
25
|
+
}
|
|
26
|
+
function checkFold() {
|
|
27
|
+
const foldPath = path.resolve('./').replace(/\\/g, '/');
|
|
28
|
+
const foldArrs = foldPath.split('/');
|
|
29
|
+
const foldName = foldArrs.pop();
|
|
30
|
+
if (foldName === 'pages') {
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
if (foldName !== 'src') {
|
|
34
|
+
logger.error('changePath需要在src目录下运行命令! ');
|
|
35
|
+
process.exit(1);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
export function changePathAction(nodes) {
|
|
39
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
40
|
+
checkFold();
|
|
41
|
+
yield changePath(nodes);
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
export function changeAbsolutePathAction() {
|
|
45
|
+
return __awaiter(this, void 0, void 0, function* () { });
|
|
46
|
+
}
|
|
47
|
+
export function changesuffixAction(nodes, nochangePath) {
|
|
48
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
49
|
+
checkFold();
|
|
50
|
+
yield changePath(nodes, nochangePath);
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
export function markFileAction(nodes) {
|
|
54
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
55
|
+
checkFold();
|
|
56
|
+
const routers = yield getRouterArrs();
|
|
57
|
+
fs.writeFileSync(rootPath + '/router-file.js', 'const router=' + JSON.stringify(routers), { encoding: 'utf8' });
|
|
58
|
+
if (routers) {
|
|
59
|
+
yield markFile(nodes, routers);
|
|
60
|
+
wirteJsNodes(JSON.stringify(nodes), rootPath + '/readme-file.js');
|
|
61
|
+
}
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
export function witeFileAction(nodes) {
|
|
65
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
66
|
+
const routers = yield getRouterArrs();
|
|
67
|
+
if (routers) {
|
|
68
|
+
yield markFile(nodes, routers);
|
|
69
|
+
yield witeMarkFile(nodes, routers);
|
|
70
|
+
}
|
|
71
|
+
});
|
|
72
|
+
}
|
|
73
|
+
export function deletMarkAction(nodes) {
|
|
74
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
75
|
+
deletMarkAll(nodes, 'mark');
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
export function renameFoldAction(nodes) {
|
|
79
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
80
|
+
renameFoldPath(nodes);
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
export function renameFileAction(nodes) {
|
|
84
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
85
|
+
renameFilePath(nodes);
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
export function generateAllAction(nodes, md) {
|
|
89
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
90
|
+
checkFold();
|
|
91
|
+
const routers = yield getRouterArrs();
|
|
92
|
+
if (routers) {
|
|
93
|
+
getMdAction(md);
|
|
94
|
+
yield changePathAction(nodes);
|
|
95
|
+
yield markFileAction(nodes);
|
|
96
|
+
yield witeMarkFile(nodes, routers);
|
|
97
|
+
wirteJsNodes(JSON.stringify(nodes), rootPath + '/readme-file.js');
|
|
98
|
+
}
|
|
99
|
+
});
|
|
100
|
+
}
|
|
101
|
+
//# sourceMappingURL=command-actions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command-actions.js","sourceRoot":"","sources":["../../../src/commands/command-actions.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,123 @@
|
|
|
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 prompts from 'prompts';
|
|
11
|
+
import { getMdAction, changePathAction, changeAbsolutePathAction, changesuffixAction, markFileAction, witeFileAction, deletMarkAction, renameFoldAction, renameFileAction, generateAllAction } from './command-actions';
|
|
12
|
+
import { VERSION, PKG_NAME } from '../shared/constant';
|
|
13
|
+
import help from '../../script/help/index';
|
|
14
|
+
import stringToArgs from '../../script/cli';
|
|
15
|
+
import { wirteJsNodes } from './change-path';
|
|
16
|
+
import { getMd } from './wirte-md';
|
|
17
|
+
import handle from '../../script/cli/handle';
|
|
18
|
+
import { createConsola } from 'consola';
|
|
19
|
+
const logger = createConsola({
|
|
20
|
+
level: 4
|
|
21
|
+
});
|
|
22
|
+
const rootPath = process.cwd().replace(/\\/g, '/');
|
|
23
|
+
const options = stringToArgs(process.argv);
|
|
24
|
+
const { ignores: ignore, includes: include } = handle(options);
|
|
25
|
+
export function selectCommand() {
|
|
26
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
27
|
+
const actionMap = new Map();
|
|
28
|
+
const { md, nodes } = yield getMd({ ignore, include });
|
|
29
|
+
actionMap.set('help', {
|
|
30
|
+
title: '🙏 帮助',
|
|
31
|
+
value: 'help',
|
|
32
|
+
selected: true,
|
|
33
|
+
action: () => help()
|
|
34
|
+
});
|
|
35
|
+
actionMap.set('Generate All', {
|
|
36
|
+
title: '🚘 执行所有操作',
|
|
37
|
+
value: 'Generate All',
|
|
38
|
+
selected: true,
|
|
39
|
+
action: () => generateAllAction(nodes, md)
|
|
40
|
+
});
|
|
41
|
+
actionMap.set('Generate MD', {
|
|
42
|
+
title: '📅 生成结构树文档',
|
|
43
|
+
value: 'Generate MD',
|
|
44
|
+
selected: true,
|
|
45
|
+
action: () => getMdAction(md)
|
|
46
|
+
});
|
|
47
|
+
actionMap.set('Change Relative Path', {
|
|
48
|
+
title: '🔑 修改为相当路径',
|
|
49
|
+
value: 'Change Relative Path',
|
|
50
|
+
action: () => changePathAction(nodes)
|
|
51
|
+
});
|
|
52
|
+
actionMap.set('Change Absolute Path', {
|
|
53
|
+
title: '💎 修改为绝对路径(暂未实现)',
|
|
54
|
+
value: 'Change Absolute Path',
|
|
55
|
+
action: () => changeAbsolutePathAction()
|
|
56
|
+
});
|
|
57
|
+
actionMap.set('Completion suffix', {
|
|
58
|
+
title: '💯 补全文件后缀',
|
|
59
|
+
value: 'Completion suffix',
|
|
60
|
+
action: () => changesuffixAction(nodes, true)
|
|
61
|
+
});
|
|
62
|
+
actionMap.set('RenameFoldKebabCase', {
|
|
63
|
+
title: '🎁 统一命名文件夹为KebabCase',
|
|
64
|
+
value: 'RenameFoldKebabCase',
|
|
65
|
+
action: () => renameFoldAction(nodes)
|
|
66
|
+
});
|
|
67
|
+
actionMap.set('RenameFielKebabCase', {
|
|
68
|
+
title: '🍰 统一命名文件为KebabCase',
|
|
69
|
+
value: 'RenameFielKebabCase',
|
|
70
|
+
action: () => renameFileAction(nodes)
|
|
71
|
+
});
|
|
72
|
+
actionMap.set('Wirte Json Nodes', {
|
|
73
|
+
title: '🔱 记录节点Json',
|
|
74
|
+
value: 'Wirte Json Nodes',
|
|
75
|
+
action: () => wirteJsNodes(JSON.stringify(nodes), rootPath + '/readme-file.js')
|
|
76
|
+
});
|
|
77
|
+
actionMap.set('Mark File', {
|
|
78
|
+
title: '🎊 给需要分类的都打上标记',
|
|
79
|
+
value: 'Mark File',
|
|
80
|
+
action: () => markFileAction(nodes)
|
|
81
|
+
});
|
|
82
|
+
actionMap.set('Delete Mark', {
|
|
83
|
+
title: '💥 删除标记',
|
|
84
|
+
value: 'Delete Mark',
|
|
85
|
+
action: () => deletMarkAction(nodes)
|
|
86
|
+
});
|
|
87
|
+
actionMap.set('Classification', {
|
|
88
|
+
title: '💫 分类',
|
|
89
|
+
value: 'Classification',
|
|
90
|
+
action: () => witeFileAction(nodes)
|
|
91
|
+
});
|
|
92
|
+
return actionMap;
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
export function handleCommand(cmd) {
|
|
96
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
97
|
+
if (cmd.init) {
|
|
98
|
+
logger.info(`${PKG_NAME}:version is :${VERSION}`);
|
|
99
|
+
}
|
|
100
|
+
const actions = yield selectCommand();
|
|
101
|
+
let result = {};
|
|
102
|
+
try {
|
|
103
|
+
result = yield prompts([
|
|
104
|
+
{
|
|
105
|
+
name: 'command',
|
|
106
|
+
type: 'select',
|
|
107
|
+
message: '请使用上下键选择一个操作命令:',
|
|
108
|
+
choices: Array.from(actions.values())
|
|
109
|
+
}
|
|
110
|
+
], {
|
|
111
|
+
onCancel: () => {
|
|
112
|
+
throw new Error('操作取消!');
|
|
113
|
+
}
|
|
114
|
+
});
|
|
115
|
+
}
|
|
116
|
+
catch (e) {
|
|
117
|
+
logger.error(e.message);
|
|
118
|
+
process.exit(1);
|
|
119
|
+
}
|
|
120
|
+
actions.get(result.command).action();
|
|
121
|
+
});
|
|
122
|
+
}
|
|
123
|
+
//# sourceMappingURL=command-handler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command-handler.js","sourceRoot":"","sources":["../../../src/commands/command-handler.ts"],"names":[],"mappings":"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"}
|