@nasl/cli 0.1.18 → 0.1.19
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 +3 -1
- package/dist/bin/nasl.mjs +130 -37
- package/dist/bin/nasl.mjs.map +1 -1
- package/dist/bin/naslc.mjs +130 -37
- package/dist/bin/naslc.mjs.map +1 -1
- package/dist/index.mjs +129 -36
- package/dist/index.mjs.map +1 -1
- package/out/services/compose.d.ts +1 -1
- package/out/services/compose.d.ts.map +1 -1
- package/out/services/compose.js +66 -18
- package/out/services/compose.js.map +1 -1
- package/out/services/resolve.d.ts.map +1 -1
- package/out/services/resolve.js +30 -5
- package/out/services/resolve.js.map +1 -1
- package/out/utils/config.d.ts.map +1 -1
- package/out/utils/config.js +16 -13
- package/out/utils/config.js.map +1 -1
- package/out/utils/file.d.ts +12 -0
- package/out/utils/file.d.ts.map +1 -1
- package/out/utils/file.js +18 -0
- package/out/utils/file.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { FileInfo } from
|
|
1
|
+
import type { FileInfo } from '../types';
|
|
2
2
|
export declare function createSorter(): (a: string, b: string) => number;
|
|
3
3
|
export declare const sorter: (a: string, b: string) => number;
|
|
4
4
|
export declare function composeToString(files: FileInfo[]): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compose.d.ts","sourceRoot":"","sources":["../../src/services/compose.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEzC,wBAAgB,YAAY,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,MAAM,CA0B/D;AACD,eAAO,MAAM,MAAM,MA3BiB,MAAM,KAAK,MAAM,KAAK,MA2BtB,CAAC;
|
|
1
|
+
{"version":3,"file":"compose.d.ts","sourceRoot":"","sources":["../../src/services/compose.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAEzC,wBAAgB,YAAY,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,KAAK,MAAM,CA0B/D;AACD,eAAO,MAAM,MAAM,MA3BiB,MAAM,KAAK,MAAM,KAAK,MA2BtB,CAAC;AA+CrC,wBAAgB,eAAe,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,MAAM,CAoCzD"}
|
package/out/services/compose.js
CHANGED
|
@@ -28,6 +28,56 @@ function createSorter() {
|
|
|
28
28
|
};
|
|
29
29
|
}
|
|
30
30
|
exports.sorter = createSorter();
|
|
31
|
+
/**
|
|
32
|
+
* 验证 variables 文件
|
|
33
|
+
*/
|
|
34
|
+
function validateVariablesFile(file, errors) {
|
|
35
|
+
const matchArr = Array.from(file.content.matchAll(/^(export\s+)(declare\s+)?(const|let)\s+(\w+)/gm));
|
|
36
|
+
if (matchArr.length === 0) {
|
|
37
|
+
errors.push(`${file.path} (variables文件) 必须包含至少一个 export const 或 export let 声明`);
|
|
38
|
+
}
|
|
39
|
+
for (const match of matchArr) {
|
|
40
|
+
const [, isExport] = match;
|
|
41
|
+
if (!isExport)
|
|
42
|
+
errors.push(`${file.path} 所有声明必须使用 export,错误代码:${match[0]}`);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* 验证 extensions 文件
|
|
47
|
+
*/
|
|
48
|
+
function validateExtensionsFile(file, errors) {
|
|
49
|
+
const matchArr = Array.from(file.content.matchAll(/^(export\s+)(namespace)\s+(\w+)/gm));
|
|
50
|
+
if (matchArr.length === 0) {
|
|
51
|
+
errors.push(`${file.path} (extensions文件) 必须包含至少一个 export namespace 声明`);
|
|
52
|
+
}
|
|
53
|
+
for (const match of matchArr) {
|
|
54
|
+
const [, isExport] = match;
|
|
55
|
+
if (!isExport)
|
|
56
|
+
errors.push(`${file.path} 所有 namespace 必须使用 export,错误代码:${match[0]}`);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* 验证普通文件(枚举、实体、数据结构、逻辑、页面)
|
|
61
|
+
*/
|
|
62
|
+
function validateNormalFile(file, nameFromPath, namespace, errors) {
|
|
63
|
+
const matchArr = Array.from(file.content.matchAll(/^(export\s+)?(declare\s+)?(function|class|interface)\s+(\w+)/gm));
|
|
64
|
+
if (matchArr.length === 0)
|
|
65
|
+
errors.push(`${file.path} 必须有一个函数或类,错误代码:${file.content}`);
|
|
66
|
+
else if (matchArr.length > 1)
|
|
67
|
+
errors.push(`${file.path} 只能有一个函数或类,错误代码:${matchArr.map((match) => match[0]).join('\n')}
|
|
68
|
+
你可以将该文件中所有函数合并,或者将其他函数拆到多个文件中。`);
|
|
69
|
+
for (const match of matchArr) {
|
|
70
|
+
const [, isExport, isDeclare, type, name] = match;
|
|
71
|
+
if (!isExport)
|
|
72
|
+
errors.push(`${file.path} 必须使用 export,错误代码:${match[0]}`);
|
|
73
|
+
if (name !== nameFromPath)
|
|
74
|
+
errors.push(`${file.path} 的函数或类名必须与文件名一致,错误代码:${match[0]}`);
|
|
75
|
+
if (/\.(entities|enums|structures)/.test(namespace) && type !== 'class')
|
|
76
|
+
errors.push(`${file.path} 实体、数据结构和枚举只能使用 class 定义,错误代码:${match[0]}`);
|
|
77
|
+
if (/\.(logics|views)/.test(namespace) && type !== 'function')
|
|
78
|
+
errors.push(`${file.path} 逻辑和页面只能使用 function 定义,错误代码:${match[0]}`);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
31
81
|
function composeToString(files) {
|
|
32
82
|
files.sort((a, b) => (0, exports.sorter)(a.path, b.path));
|
|
33
83
|
const errors = [];
|
|
@@ -35,28 +85,26 @@ function composeToString(files) {
|
|
|
35
85
|
const arr = file.path.split('.');
|
|
36
86
|
const ext = arr.pop();
|
|
37
87
|
const nameFromPath = arr.pop();
|
|
38
|
-
|
|
88
|
+
// 判断是否是特殊文件类型(variables 或 extensions)
|
|
89
|
+
const isVariablesFile = nameFromPath === 'variables';
|
|
90
|
+
const isExtensionsFile = arr[0] === 'extensions';
|
|
91
|
+
const isSpecialFile = isVariablesFile || isExtensionsFile;
|
|
92
|
+
// 特殊文件的 namespace 包含文件名,普通文件不包含
|
|
93
|
+
const namespace = isSpecialFile ? [...arr, nameFromPath].join('.') : arr.join('.');
|
|
39
94
|
if (['ts', 'tsx'].includes(ext)) {
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
else if (
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
if (!isExport)
|
|
49
|
-
errors.push(`${file.path} 必须使用 export,错误代码:${match[0]}`);
|
|
50
|
-
if (name !== nameFromPath)
|
|
51
|
-
errors.push(`${file.path} 的函数或类名必须与文件名一致,错误代码:${match[0]}`);
|
|
52
|
-
if (/\.(entities|enums|structures)/.test(namespace) && type !== 'class')
|
|
53
|
-
errors.push(`${file.path} 实体、数据结构和枚举只能使用 class 定义,错误代码:${match[0]}`);
|
|
54
|
-
if (/\.(logics|views)/.test(namespace) && type !== 'function')
|
|
55
|
-
errors.push(`${file.path} 逻辑和页面只能使用 function 定义,错误代码:${match[0]}`);
|
|
95
|
+
if (isVariablesFile) {
|
|
96
|
+
validateVariablesFile(file, errors);
|
|
97
|
+
}
|
|
98
|
+
else if (isExtensionsFile) {
|
|
99
|
+
validateExtensionsFile(file, errors);
|
|
100
|
+
}
|
|
101
|
+
else {
|
|
102
|
+
validateNormalFile(file, nameFromPath, namespace, errors);
|
|
56
103
|
}
|
|
57
104
|
}
|
|
58
105
|
return `namespace ${namespace} {\n${file.content}\n}\n`;
|
|
59
|
-
})
|
|
106
|
+
})
|
|
107
|
+
.join('\n');
|
|
60
108
|
if (errors.length > 0) {
|
|
61
109
|
throw new Error(errors.join('\n============\n'));
|
|
62
110
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compose.js","sourceRoot":"","sources":["../../src/services/compose.ts"],"names":[],"mappings":";;;AAEA,oCA0BC;
|
|
1
|
+
{"version":3,"file":"compose.js","sourceRoot":"","sources":["../../src/services/compose.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolve.d.ts","sourceRoot":"","sources":["../../src/services/resolve.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAE3C,OAAO,KAAK,EAAE,QAAQ,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAIzE;;GAEG;AACH,wBAAsB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAa7H;AAED,wBAAsB,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAanH;
|
|
1
|
+
{"version":3,"file":"resolve.d.ts","sourceRoot":"","sources":["../../src/services/resolve.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAE3C,OAAO,KAAK,EAAE,QAAQ,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAIzE;;GAEG;AACH,wBAAsB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAa7H;AAED,wBAAsB,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAanH;AA4ND,MAAM,WAAW,kBAAkB;IAC/B,cAAc,EAAE,QAAQ,EAAE,CAAC;IAC3B,MAAM,EAAE,UAAU,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;CAClB;AAED;;;;GAIG;AACH,wBAAsB,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAsElK"}
|
package/out/services/resolve.js
CHANGED
|
@@ -84,11 +84,13 @@ async function scanEntryFiles(projectRoot, patterns, logger) {
|
|
|
84
84
|
*/
|
|
85
85
|
function extractDeps(content) {
|
|
86
86
|
const deps = new Set();
|
|
87
|
-
//
|
|
87
|
+
// 预处理:移除注释和字符串字面量,避免它们影响依赖分析
|
|
88
88
|
let processedContent = content
|
|
89
89
|
.replace(/\/\/.*$/gm, '') // 移除单行注释 // ...
|
|
90
|
-
.replace(/\/\*[\s\S]*?\*\//g, '')
|
|
91
|
-
|
|
90
|
+
.replace(/\/\*[\s\S]*?\*\//g, '') // 移除多行注释 /* ... */
|
|
91
|
+
.replace(/'(?:[^'\\]|\\.)*'/g, '') // 移除单引号字符串 'xxx'
|
|
92
|
+
.replace(/"(?:[^"\\]|\\.)*"/g, ''); // 移除双引号字符串 "xxx"
|
|
93
|
+
const allMatches = processedContent.matchAll(/(app|extensions)\.\w+\.[\w.]+/g); // 起码要2个点,支持 app.* 和 extensions.*
|
|
92
94
|
for (const match of allMatches) {
|
|
93
95
|
let dep = match[0];
|
|
94
96
|
if (/Entity$|Entity\./.test(dep)) {
|
|
@@ -97,6 +99,14 @@ function extractDeps(content) {
|
|
|
97
99
|
else if (/\.enums\.(\w+)\.(\w+)/.test(dep)) {
|
|
98
100
|
dep = dep.replace(/\.enums\.(\w+).+$/, '.enums.$1');
|
|
99
101
|
}
|
|
102
|
+
else if (/\.variables\.(\w+)/.test(dep)) {
|
|
103
|
+
// 处理 variables 依赖:app.backend.variables.xxx -> app.backend.variables
|
|
104
|
+
dep = dep.replace(/\.variables\..+$/, '.variables');
|
|
105
|
+
}
|
|
106
|
+
else if (/^extensions\.\w+\.\w+/.test(dep)) {
|
|
107
|
+
// 处理 extensions 依赖:extensions.lcap_auth.xxx -> extensions.lcap_auth
|
|
108
|
+
dep = dep.replace(/^(extensions\.\w+)\..+$/, '$1');
|
|
109
|
+
}
|
|
100
110
|
else if (/app\.dataSources\.\w+\.entities\.\w+\.\w+$/.test(dep)) {
|
|
101
111
|
continue; // 应该是写法有问题,跳过让后面的 checker 做检查
|
|
102
112
|
}
|
|
@@ -218,7 +228,12 @@ async function collectDeps(patterns, projectRoot, srcDir, logger, verbose) {
|
|
|
218
228
|
while (filesToProcess.length > 0) {
|
|
219
229
|
const pathRelativeToSrc = filesToProcess.shift();
|
|
220
230
|
if (processedFileMap.has(pathRelativeToSrc))
|
|
221
|
-
continue; // 跳过已处理的文件
|
|
231
|
+
continue; // 跳过已处理的文件
|
|
232
|
+
// 检查文件类型是否支持
|
|
233
|
+
if (!(0, utils_1.isKnownFileType)(pathRelativeToSrc)) {
|
|
234
|
+
logger.warn(`跳过不支持的文件类型: ${pathRelativeToSrc}`);
|
|
235
|
+
continue;
|
|
236
|
+
}
|
|
222
237
|
try {
|
|
223
238
|
const { fileInfo, newDeps } = processFileDeps(pathRelativeToSrc, srcDir, matchedFileSet, processedFileMap, depNotFoundList, logger, verbose);
|
|
224
239
|
result.push(fileInfo);
|
|
@@ -298,8 +313,18 @@ async function resolveNASLFiles(entry, logger, depMode, verbose) {
|
|
|
298
313
|
}
|
|
299
314
|
logger.info(`找到 ${collectedFiles.length} 个 NASL 文件`);
|
|
300
315
|
}
|
|
316
|
+
// 统一过滤掉不支持的文件类型
|
|
317
|
+
const filteredFiles = [];
|
|
318
|
+
collectedFiles.forEach((file) => {
|
|
319
|
+
if ((0, utils_1.isKnownFileType)(file.path)) {
|
|
320
|
+
filteredFiles.push(file);
|
|
321
|
+
}
|
|
322
|
+
else {
|
|
323
|
+
logger.warn(`跳过不支持的文件类型: ${file.path}`);
|
|
324
|
+
}
|
|
325
|
+
});
|
|
301
326
|
return {
|
|
302
|
-
collectedFiles,
|
|
327
|
+
collectedFiles: filteredFiles,
|
|
303
328
|
config,
|
|
304
329
|
projectRoot,
|
|
305
330
|
srcDir,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolve.js","sourceRoot":"","sources":["../../src/services/resolve.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAYA,sCAaC;AAED,wCAaC;
|
|
1
|
+
{"version":3,"file":"resolve.js","sourceRoot":"","sources":["../../src/services/resolve.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAIlD;;;GAGG;AACH,wBAAgB,aAAa,CAAC,QAAQ,GAAE,MAAsB,GAAG,MAAM,GAAG,IAAI,CAoB7E;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,UAAU,
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAIlD;;;GAGG;AACH,wBAAgB,aAAa,CAAC,QAAQ,GAAE,MAAsB,GAAG,MAAM,GAAG,IAAI,CAoB7E;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,UAAU,CAwDzD;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,UAAU,EAAE,SAAS,GAAE,MAAsB,GAAG,IAAI,CAUtF;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,MAAM,CASvC"}
|
package/out/utils/config.js
CHANGED
|
@@ -79,26 +79,29 @@ function loadConfig(configDir) {
|
|
|
79
79
|
logger_1.defaultLogger.error('配置文件格式不正确,缺少必需的 srcDir 或 outDir 字段');
|
|
80
80
|
return logger_1.defaultLogger.exit(1);
|
|
81
81
|
}
|
|
82
|
+
// 环境变量优先级高于配置文件
|
|
83
|
+
// ideVersion: 环境变量优先,如果都没有则报错
|
|
84
|
+
if (process.env.NASL_IDE_VERSION)
|
|
85
|
+
config.ideVersion = process.env.NASL_IDE_VERSION;
|
|
82
86
|
if (!config.ideVersion) {
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
logger_1.defaultLogger.error('缺少配置 ideVersion,请在配置文件中添加,或在环境变量中配置 NASL_IDE_VERSION');
|
|
86
|
-
return logger_1.defaultLogger.exit(1);
|
|
87
|
-
}
|
|
87
|
+
logger_1.defaultLogger.error('缺少配置 ideVersion,请在配置文件中添加,或在环境变量中配置 NASL_IDE_VERSION');
|
|
88
|
+
return logger_1.defaultLogger.exit(1);
|
|
88
89
|
}
|
|
90
|
+
// serverBaseURL: 环境变量优先,如果都没有则报错
|
|
91
|
+
if (process.env.NASL_SERVER_BASE_URL)
|
|
92
|
+
config.serverBaseURL = process.env.NASL_SERVER_BASE_URL;
|
|
89
93
|
if (!config.serverBaseURL) {
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
logger_1.defaultLogger.error('缺少配置 serverBaseURL,请在配置文件中添加,或在环境变量中配置 NASL_SERVER_BASE_URL');
|
|
93
|
-
return logger_1.defaultLogger.exit(1);
|
|
94
|
-
}
|
|
94
|
+
logger_1.defaultLogger.error('缺少配置 serverBaseURL,请在配置文件中添加,或在环境变量中配置 NASL_SERVER_BASE_URL');
|
|
95
|
+
return logger_1.defaultLogger.exit(1);
|
|
95
96
|
}
|
|
96
|
-
|
|
97
|
+
// 环境变量优先
|
|
98
|
+
if (process.env.USE_LCAP_OPENAPI !== undefined)
|
|
97
99
|
config.useOPENAPI = process.env.USE_LCAP_OPENAPI === 'true';
|
|
98
|
-
if (
|
|
100
|
+
if (process.env.LCAP_OPENAPI_AK)
|
|
99
101
|
config.OPENAPI_AK = process.env.LCAP_OPENAPI_AK;
|
|
100
|
-
if (
|
|
102
|
+
if (process.env.LCAP_OPENAPI_SK)
|
|
101
103
|
config.OPENAPI_SK = process.env.LCAP_OPENAPI_SK;
|
|
104
|
+
// 如果启用了 OpenAPI,验证必需的 AK 和 SK
|
|
102
105
|
if (config.useOPENAPI) {
|
|
103
106
|
if (!config.OPENAPI_AK || !config.OPENAPI_SK) {
|
|
104
107
|
logger_1.defaultLogger.error(`配置了 useOPENAPI,但缺少配置 OPENAPI_AK 和 OPENAPI_SK:
|
package/out/utils/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAUA,sCAoBC;AAKD,
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"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"}
|
package/out/utils/file.d.ts
CHANGED
|
@@ -7,4 +7,16 @@ export declare function readFileWithLog(filePath: string, logger: BaseLogger): s
|
|
|
7
7
|
* 写入文件
|
|
8
8
|
*/
|
|
9
9
|
export declare function writeFileWithLog(filePath: string, content: string, logger: BaseLogger): void;
|
|
10
|
+
/**
|
|
11
|
+
* 判断文件路径是否为已知的 NASL 文件类型
|
|
12
|
+
* 支持的类型:
|
|
13
|
+
* - 枚举 (enums)
|
|
14
|
+
* - 实体 (entities)
|
|
15
|
+
* - 数据结构 (structures)
|
|
16
|
+
* - 逻辑 (logics)
|
|
17
|
+
* - 页面 (views)
|
|
18
|
+
* - 前端/服务端全局变量 (variables)
|
|
19
|
+
* - 依赖库 (extensions)
|
|
20
|
+
*/
|
|
21
|
+
export declare function isKnownFileType(filePath: string): boolean;
|
|
10
22
|
//# sourceMappingURL=file.d.ts.map
|
package/out/utils/file.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../../src/utils/file.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAE3C;;GAEG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,GAAG,MAAM,CAO5E;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,GAAG,IAAI,CAS5F"}
|
|
1
|
+
{"version":3,"file":"file.d.ts","sourceRoot":"","sources":["../../src/utils/file.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAE3C;;GAEG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,GAAG,MAAM,CAO5E;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,GAAG,IAAI,CAS5F;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAMzD"}
|
package/out/utils/file.js
CHANGED
|
@@ -35,6 +35,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
36
|
exports.readFileWithLog = readFileWithLog;
|
|
37
37
|
exports.writeFileWithLog = writeFileWithLog;
|
|
38
|
+
exports.isKnownFileType = isKnownFileType;
|
|
38
39
|
const fs = __importStar(require("fs-extra"));
|
|
39
40
|
const path = __importStar(require("path"));
|
|
40
41
|
/**
|
|
@@ -63,4 +64,21 @@ function writeFileWithLog(filePath, content, logger) {
|
|
|
63
64
|
throw error;
|
|
64
65
|
}
|
|
65
66
|
}
|
|
67
|
+
/**
|
|
68
|
+
* 判断文件路径是否为已知的 NASL 文件类型
|
|
69
|
+
* 支持的类型:
|
|
70
|
+
* - 枚举 (enums)
|
|
71
|
+
* - 实体 (entities)
|
|
72
|
+
* - 数据结构 (structures)
|
|
73
|
+
* - 逻辑 (logics)
|
|
74
|
+
* - 页面 (views)
|
|
75
|
+
* - 前端/服务端全局变量 (variables)
|
|
76
|
+
* - 依赖库 (extensions)
|
|
77
|
+
*/
|
|
78
|
+
function isKnownFileType(filePath) {
|
|
79
|
+
return (/\.(enums|entities|structures|logics|views)\.\w+\.(ts|tsx)$/.test(filePath) || // 枚举、实体、数据结构、逻辑、页面
|
|
80
|
+
/^app\..*\.variables\.ts$/.test(filePath) || // 前端/服务端全局变量 (以app开头,以variables.ts结尾)
|
|
81
|
+
/^extensions\.\w+\.(ts|tsx)$/.test(filePath) // 依赖库
|
|
82
|
+
);
|
|
83
|
+
}
|
|
66
84
|
//# sourceMappingURL=file.js.map
|
package/out/utils/file.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"file.js","sourceRoot":"","sources":["../../src/utils/file.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,0CAOC;AAKD,4CASC;
|
|
1
|
+
{"version":3,"file":"file.js","sourceRoot":"","sources":["../../src/utils/file.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,0CAOC;AAKD,4CASC;AAaD,0CAMC;AA/CD,6CAA+B;AAC/B,2CAA6B;AAG7B;;GAEG;AACH,SAAgB,eAAe,CAAC,QAAgB,EAAE,MAAkB;IAChE,IAAI,CAAC;QACD,OAAO,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC9C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,MAAM,CAAC,KAAK,CAAC,UAAU,QAAQ,KAAM,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;QAChE,MAAM,KAAK,CAAC;IAChB,CAAC;AACL,CAAC;AAED;;GAEG;AACH,SAAgB,gBAAgB,CAAC,QAAgB,EAAE,OAAe,EAAE,MAAkB;IAClF,IAAI,CAAC;QACD,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACnC,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;QACtB,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACjD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,MAAM,CAAC,KAAK,CAAC,UAAU,QAAQ,KAAM,KAAe,CAAC,OAAO,EAAE,CAAC,CAAC;QAChE,MAAM,KAAK,CAAC;IAChB,CAAC;AACL,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAgB,eAAe,CAAC,QAAgB;IAC5C,OAAO,CACH,4DAA4D,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,mBAAmB;QAClG,0BAA0B,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAuC,sCAAsC;QACtH,6BAA6B,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAoC,MAAM;KACzF,CAAC;AACN,CAAC"}
|
package/package.json
CHANGED