@lcap/nasl 4.4.0-rc.2 → 4.4.1-rc.2

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 (143) hide show
  1. package/out/generator/genBundleFiles.d.ts +2 -0
  2. package/out/generator/genBundleFiles.d.ts.map +1 -1
  3. package/out/generator/genBundleFiles.js +46 -10
  4. package/out/generator/genBundleFiles.js.map +1 -1
  5. package/out/generator/icestark.d.ts +1 -1
  6. package/out/generator/icestark.d.ts.map +1 -1
  7. package/out/generator/icestark.js +6 -1
  8. package/out/generator/icestark.js.map +1 -1
  9. package/out/generator/qiankun.d.ts +1 -1
  10. package/out/generator/qiankun.d.ts.map +1 -1
  11. package/out/generator/qiankun.js +5 -3
  12. package/out/generator/qiankun.js.map +1 -1
  13. package/out/generator/release-body/data.d.ts.map +1 -1
  14. package/out/generator/release-body/data.js +30 -0
  15. package/out/generator/release-body/data.js.map +1 -1
  16. package/out/generator/release-body/share-content.js +1 -1
  17. package/out/generator/release-body/share-content.js.map +1 -1
  18. package/out/generator/release-body/types.d.ts +1 -0
  19. package/out/generator/release-body/types.d.ts.map +1 -1
  20. package/out/generator/wujie.d.ts +1 -1
  21. package/out/generator/wujie.d.ts.map +1 -1
  22. package/out/generator/wujie.js +6 -1
  23. package/out/generator/wujie.js.map +1 -1
  24. package/out/natural/exports/nasl2Files.d.ts +18 -1
  25. package/out/natural/exports/nasl2Files.d.ts.map +1 -1
  26. package/out/natural/exports/nasl2Files.js +162 -3
  27. package/out/natural/exports/nasl2Files.js.map +1 -1
  28. package/out/natural/exports/transform2BatchActions.d.ts +3 -1
  29. package/out/natural/exports/transform2BatchActions.d.ts.map +1 -1
  30. package/out/natural/exports/transform2BatchActions.js +767 -101
  31. package/out/natural/exports/transform2BatchActions.js.map +1 -1
  32. package/out/natural/old/parser/transformTS2UI.js +1 -1
  33. package/out/natural/old/parser/transformTS2UI.js.map +1 -1
  34. package/out/natural/old/parser/transformTSCode.d.ts.map +1 -1
  35. package/out/natural/old/parser/transformTSCode.js +26 -2
  36. package/out/natural/old/parser/transformTSCode.js.map +1 -1
  37. package/out/natural/parser/parseNaturalTS.d.ts.map +1 -1
  38. package/out/natural/parser/parseNaturalTS.js +97 -26
  39. package/out/natural/parser/parseNaturalTS.js.map +1 -1
  40. package/out/natural/parser/parseNaturalTSXView.d.ts.map +1 -1
  41. package/out/natural/parser/parseNaturalTSXView.js +106 -87
  42. package/out/natural/parser/parseNaturalTSXView.js.map +1 -1
  43. package/out/natural/transforms/checker/checkDefaultValue.d.ts +2 -1
  44. package/out/natural/transforms/checker/checkDefaultValue.d.ts.map +1 -1
  45. package/out/natural/transforms/checker/checkDefaultValue.js +7 -1
  46. package/out/natural/transforms/checker/checkDefaultValue.js.map +1 -1
  47. package/out/natural/transforms/checker/checkLcapEntity.d.ts +16 -0
  48. package/out/natural/transforms/checker/checkLcapEntity.d.ts.map +1 -0
  49. package/out/natural/transforms/checker/checkLcapEntity.js +337 -0
  50. package/out/natural/transforms/checker/checkLcapEntity.js.map +1 -0
  51. package/out/natural/transforms/checker/checkValidationCalleeName.d.ts +3 -0
  52. package/out/natural/transforms/checker/checkValidationCalleeName.d.ts.map +1 -0
  53. package/out/natural/transforms/checker/checkValidationCalleeName.js +88 -0
  54. package/out/natural/transforms/checker/checkValidationCalleeName.js.map +1 -0
  55. package/out/natural/transforms/checker/checkViewElement.d.ts.map +1 -1
  56. package/out/natural/transforms/checker/checkViewElement.js +175 -9
  57. package/out/natural/transforms/checker/checkViewElement.js.map +1 -1
  58. package/out/natural/transforms/checker/index.d.ts +2 -0
  59. package/out/natural/transforms/checker/index.d.ts.map +1 -1
  60. package/out/natural/transforms/checker/index.js +5 -1
  61. package/out/natural/transforms/checker/index.js.map +1 -1
  62. package/out/natural/transforms/transform2Entity.d.ts +5 -0
  63. package/out/natural/transforms/transform2Entity.d.ts.map +1 -1
  64. package/out/natural/transforms/transform2Entity.js +84 -4
  65. package/out/natural/transforms/transform2Entity.js.map +1 -1
  66. package/out/natural/transforms/transform2GlobalLogicDeclaration.d.ts +1 -1
  67. package/out/natural/transforms/transform2GlobalLogicDeclaration.d.ts.map +1 -1
  68. package/out/natural/transforms/transform2GlobalLogicDeclaration.js +15 -1
  69. package/out/natural/transforms/transform2GlobalLogicDeclaration.js.map +1 -1
  70. package/out/natural/transforms/transform2Logic.d.ts +3 -3
  71. package/out/natural/transforms/transform2Logic.d.ts.map +1 -1
  72. package/out/natural/transforms/transform2Logic.js +54 -13
  73. package/out/natural/transforms/transform2Logic.js.map +1 -1
  74. package/out/natural/transforms/transform2LogicItem.d.ts +4 -0
  75. package/out/natural/transforms/transform2LogicItem.d.ts.map +1 -1
  76. package/out/natural/transforms/transform2LogicItem.js +82 -18
  77. package/out/natural/transforms/transform2LogicItem.js.map +1 -1
  78. package/out/natural/transforms/transform2ValidationRule.d.ts +1 -1
  79. package/out/natural/transforms/transform2ValidationRule.d.ts.map +1 -1
  80. package/out/natural/transforms/transform2ValidationRule.js +5 -0
  81. package/out/natural/transforms/transform2ValidationRule.js.map +1 -1
  82. package/out/natural/transforms/transform2Variable.d.ts +3 -3
  83. package/out/natural/transforms/transform2Variable.d.ts.map +1 -1
  84. package/out/natural/transforms/transform2Variable.js +36 -5
  85. package/out/natural/transforms/transform2Variable.js.map +1 -1
  86. package/out/natural/transforms/transformThemeAndStyle.d.ts +4 -1
  87. package/out/natural/transforms/transformThemeAndStyle.d.ts.map +1 -1
  88. package/out/natural/transforms/transformThemeAndStyle.js +25 -12
  89. package/out/natural/transforms/transformThemeAndStyle.js.map +1 -1
  90. package/out/natural/transforms/utils/createComponentLookupMap.d.ts +32 -0
  91. package/out/natural/transforms/utils/createComponentLookupMap.d.ts.map +1 -0
  92. package/out/natural/transforms/utils/createComponentLookupMap.js +57 -0
  93. package/out/natural/transforms/utils/createComponentLookupMap.js.map +1 -0
  94. package/out/natural/transforms/utils/iconNames.d.ts +2 -0
  95. package/out/natural/transforms/utils/iconNames.d.ts.map +1 -0
  96. package/out/natural/transforms/utils/iconNames.js +299 -0
  97. package/out/natural/transforms/utils/iconNames.js.map +1 -0
  98. package/out/natural/transforms/utils/normalizeNode.d.ts +3 -0
  99. package/out/natural/transforms/utils/normalizeNode.d.ts.map +1 -0
  100. package/out/natural/transforms/utils/normalizeNode.js +15 -0
  101. package/out/natural/transforms/utils/normalizeNode.js.map +1 -0
  102. package/out/natural/transforms/utils/parseDecorator.d.ts +32 -4
  103. package/out/natural/transforms/utils/parseDecorator.d.ts.map +1 -1
  104. package/out/natural/transforms/utils/parseDecorator.js +81 -9
  105. package/out/natural/transforms/utils/parseDecorator.js.map +1 -1
  106. package/out/natural/transforms/utils/transform2Directory.d.ts +59 -0
  107. package/out/natural/transforms/utils/transform2Directory.d.ts.map +1 -0
  108. package/out/natural/transforms/utils/transform2Directory.js +229 -0
  109. package/out/natural/transforms/utils/transform2Directory.js.map +1 -0
  110. package/out/natural/utils/index.d.ts +17 -0
  111. package/out/natural/utils/index.d.ts.map +1 -1
  112. package/out/natural/utils/index.js +38 -2
  113. package/out/natural/utils/index.js.map +1 -1
  114. package/out/natural/utils/nasl-file-types.d.ts +45 -0
  115. package/out/natural/utils/nasl-file-types.d.ts.map +1 -0
  116. package/out/natural/utils/nasl-file-types.js +131 -0
  117. package/out/natural/utils/nasl-file-types.js.map +1 -0
  118. package/out/server/OQL/sqlDbTypes.json +717 -0
  119. package/out/server/createUiTs.d.ts +0 -1
  120. package/out/server/createUiTs.d.ts.map +1 -1
  121. package/out/server/createUiTs.js +1 -118
  122. package/out/server/createUiTs.js.map +1 -1
  123. package/out/server/extendBaseNode.d.ts.map +1 -1
  124. package/out/server/extendBaseNode.js +3 -0
  125. package/out/server/extendBaseNode.js.map +1 -1
  126. package/out/server/naslServer.d.ts.map +1 -1
  127. package/out/server/naslServer.js +14 -21
  128. package/out/server/naslServer.js.map +1 -1
  129. package/out/service/storage/init.d.ts +1 -1
  130. package/out/service/storage/init.d.ts.map +1 -1
  131. package/out/service/storage/init.js +17 -7
  132. package/out/service/storage/init.js.map +1 -1
  133. package/out/service/storage/specTools.d.ts +20 -8
  134. package/out/service/storage/specTools.d.ts.map +1 -1
  135. package/out/service/storage/specTools.js +124 -5
  136. package/out/service/storage/specTools.js.map +1 -1
  137. package/package.json +9 -9
  138. package/sandbox/stdlib/nasl.util.ts +1 -1
  139. package/sandbox/stdlib/nasl.validation.ts +50 -14
  140. package/out/natural/transforms/utils/fetchFromComments.d.ts +0 -3
  141. package/out/natural/transforms/utils/fetchFromComments.d.ts.map +0 -1
  142. package/out/natural/transforms/utils/fetchFromComments.js +0 -10
  143. package/out/natural/transforms/utils/fetchFromComments.js.map +0 -1
@@ -26,7 +26,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
26
26
  return (mod && mod.__esModule) ? mod : { "default": mod };
27
27
  };
28
28
  Object.defineProperty(exports, "__esModule", { value: true });
29
- exports.genAIUID = exports.fetchFromComments = exports.tryParseTS = exports.throwWarning = exports.throwError = exports.ParseNaturalTSError = exports.parseNaturalTSErrorMap = exports.DEBUG = exports.splitPath = exports.firstUpperCase = exports.firstLowerCase = exports.uuidv4 = exports.genHash = exports.generate = exports.naslTypes = exports.babelTypes = void 0;
29
+ exports.genAIUID = exports.fetchFromComments = exports.tryParseTS = exports.throwWarning = exports.getDecoratorCall = exports.throwError = exports.ParseNaturalTSError = exports.parseNaturalTSErrorMap = exports.DEBUG = exports.createComponentLookupMap = exports.splitPath = exports.firstUpperCase = exports.firstLowerCase = exports.uuidv4 = exports.genHash = exports.generate = exports.naslTypes = exports.babelTypes = void 0;
30
30
  const babel = __importStar(require("@babel/core"));
31
31
  const babelTypes = __importStar(require("@babel/types"));
32
32
  exports.babelTypes = babelTypes;
@@ -42,6 +42,8 @@ Object.defineProperty(exports, "uuidv4", { enumerable: true, get: function () {
42
42
  Object.defineProperty(exports, "firstLowerCase", { enumerable: true, get: function () { return utils_1.firstLowerCase; } });
43
43
  Object.defineProperty(exports, "firstUpperCase", { enumerable: true, get: function () { return utils_1.firstUpperCase; } });
44
44
  Object.defineProperty(exports, "splitPath", { enumerable: true, get: function () { return utils_1.splitPath; } });
45
+ var createComponentLookupMap_1 = require("../transforms/utils/createComponentLookupMap");
46
+ Object.defineProperty(exports, "createComponentLookupMap", { enumerable: true, get: function () { return createComponentLookupMap_1.createComponentLookupMap; } });
45
47
  // Dynamic DEBUG function to allow runtime environment variable changes
46
48
  function DEBUG() {
47
49
  return process.env.NATURAL_TS_THROW_ERROR === 'true';
@@ -106,6 +108,31 @@ function throwError(state, message, babelNode, babelNode2) {
106
108
  }
107
109
  }
108
110
  exports.throwError = throwError;
111
+ /**
112
+ * 检查语句是否是指定名称的 $ 调用表达式(装饰器调用)
113
+ * @param statement - 要检查的语句
114
+ * @param decoratorName - 装饰器名称,如 'Logic', 'View', 'Variable'
115
+ * @returns 如果匹配返回 CallExpression,否则返回 undefined
116
+ *
117
+ * @example
118
+ * ```typescript
119
+ * // 检查是否是 $Logic 调用
120
+ * const decorator = getDecoratorCall(prevStatement, 'Logic');
121
+ * if (decorator) {
122
+ * // 处理装饰器
123
+ * }
124
+ * ```
125
+ */
126
+ function getDecoratorCall(statement, decoratorName) {
127
+ if (statement?.type === 'ExpressionStatement' &&
128
+ statement.expression.type === 'CallExpression' &&
129
+ statement.expression.callee.type === 'Identifier' &&
130
+ statement.expression.callee.name === `$${decoratorName}`) {
131
+ return statement.expression;
132
+ }
133
+ return undefined;
134
+ }
135
+ exports.getDecoratorCall = getDecoratorCall;
109
136
  /**
110
137
  * 抛出警告,在 DEBUG 模式下不抛出这类错误
111
138
  * @param message 错误信息
@@ -143,7 +170,16 @@ exports.tryParseTS = tryParseTS;
143
170
  function fetchFromComments(comments) {
144
171
  if (!comments || comments.length === 0)
145
172
  return;
146
- return comments[0].value.trim();
173
+ const commentValue = comments[0].value.trim();
174
+ // 处理 JSDoc 风格的注释 (/** ... */)
175
+ // 移除每行开头的 * 符号和空格,并去除换行符
176
+ const lines = commentValue.split('\n');
177
+ const processedLines = lines.map((line) => {
178
+ // 匹配行首的空格 + * + 可选空格
179
+ return line.replace(/^\s*\*\s?/, '').trim();
180
+ });
181
+ // 用空格连接所有行,去除换行符
182
+ return processedLines.join(' ').replace(/\s+/g, ' ').trim();
147
183
  }
148
184
  exports.fetchFromComments = fetchFromComments;
149
185
  // 根据 sessionId 生成 _aiUID
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/natural/utils/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/natural/utils/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,45 @@
1
+ /**
2
+ * NASL 文件类型定义
3
+ * 每种文件类型包含:名称、描述、文件名模式、代码引用模式、文件扩展名
4
+ */
5
+ export interface NASLFileTypeConfig {
6
+ /** 类型名称 */
7
+ name: string;
8
+ /** 类型描述 */
9
+ description: string;
10
+ /** 匹配文件名的正则表达式模式(不含锚点和标志) */
11
+ fileNamePattern: string;
12
+ /** 匹配代码引用的正则表达式模式(不含锚点和标志) */
13
+ codeRefPattern: string;
14
+ /** 文件扩展名 */
15
+ extension: 'ts' | 'tsx' | 'css';
16
+ }
17
+ /**
18
+ * NASL 支持的所有文件类型配置
19
+ */
20
+ export declare const NASL_FILE_TYPES: NASLFileTypeConfig[];
21
+ /**
22
+ * 获取用于验证文件名的正则表达式数组
23
+ */
24
+ export declare function getFileNamePatterns(): RegExp[];
25
+ /**
26
+ * 获取用于提取代码引用的正则表达式数组
27
+ */
28
+ export declare function getCodeRefPatterns(): RegExp[];
29
+ /**
30
+ * 判断文件路径是否为已知的 NASL 文件类型
31
+ * 支持的类型:
32
+ * - 数据结构 (structures): app.structures.{StructureName}.ts
33
+ * - 实体 (entities): app.dataSources.{dsName}.entities.{EntityName}.ts
34
+ * - 逻辑 (logics): app.logics.{logicName}.ts
35
+ * - 视图 (views): app.frontendTypes.{type}.frontends.{name}.views.{viewName}.tsx
36
+ * - 后端全局变量: app.backend.variables.ts
37
+ * - 前端全局变量: app.frontendTypes.{type}.frontends.{name}.variables.ts
38
+ * - 枚举 (enums): app.enums.{EnumName}.ts
39
+ * - 依赖库 (extensions): extensions.{extensionName}.ts
40
+ *
41
+ * @param filePath 文件路径(绝对路径或相对路径)
42
+ * @returns 是否为已知的 NASL 文件类型
43
+ */
44
+ export declare function isKnownFileType(filePath: string): boolean;
45
+ //# sourceMappingURL=nasl-file-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nasl-file-types.d.ts","sourceRoot":"","sources":["../../../src/natural/utils/nasl-file-types.ts"],"names":[],"mappings":"AACA;;;GAGG;AAEH,MAAM,WAAW,kBAAkB;IAC/B,WAAW;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,6BAA6B;IAC7B,eAAe,EAAE,MAAM,CAAC;IACxB,8BAA8B;IAC9B,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY;IACZ,SAAS,EAAE,IAAI,GAAG,KAAK,GAAG,KAAK,CAAC;CACnC;AAED;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,kBAAkB,EAgE/C,CAAC;AAEF;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,EAAE,CAI9C;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,EAAE,CAI7C;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAIzD"}
@@ -0,0 +1,131 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.isKnownFileType = exports.getCodeRefPatterns = exports.getFileNamePatterns = exports.NASL_FILE_TYPES = void 0;
27
+ const path = __importStar(require("path"));
28
+ /**
29
+ * NASL 支持的所有文件类型配置
30
+ */
31
+ exports.NASL_FILE_TYPES = [
32
+ {
33
+ name: 'structures',
34
+ description: '数据结构',
35
+ fileNamePattern: 'app\\.structures\\.\\w+\\.ts',
36
+ codeRefPattern: 'app\\.structures\\.\\w+(?:\\.\\w+)*',
37
+ extension: 'ts',
38
+ },
39
+ {
40
+ name: 'entities',
41
+ description: '实体',
42
+ fileNamePattern: 'app\\.dataSources\\.\\w+\\.entities\\.\\w+\\.ts',
43
+ codeRefPattern: 'app\\.dataSources\\.\\w+\\.entities\\.\\w+(?:Entity)?(?:\\.\\w+)*',
44
+ extension: 'ts',
45
+ },
46
+ {
47
+ name: 'logics',
48
+ description: '逻辑',
49
+ fileNamePattern: 'app\\.logics\\.\\w+\\.ts',
50
+ codeRefPattern: 'app\\.logics\\.\\w+(?:\\.\\w+)*',
51
+ extension: 'ts',
52
+ },
53
+ {
54
+ name: 'views',
55
+ description: '视图',
56
+ fileNamePattern: 'app\\.frontendTypes\\.(?!h5)\\w+\\.frontends\\.\\w+(?:\\.views\\.\\w+)+\\.tsx',
57
+ codeRefPattern: 'app\\.frontendTypes\\.(?!h5)\\w+\\.frontends\\.\\w+(?:\\.views\\.\\w+)+(?:\\.\\w+)*',
58
+ extension: 'tsx',
59
+ },
60
+ {
61
+ name: 'backend-variables',
62
+ description: '后端全局变量',
63
+ fileNamePattern: 'app\\.backend\\.variables\\.ts',
64
+ codeRefPattern: 'app\\.backend\\.variables(?:\\.\\w+)*',
65
+ extension: 'ts',
66
+ },
67
+ {
68
+ name: 'frontend-variables',
69
+ description: '前端全局变量',
70
+ fileNamePattern: 'app\\.frontendTypes\\.\\w+\\.frontends\\.\\w+\\.variables\\.ts',
71
+ codeRefPattern: 'app\\.frontendTypes\\.\\w+\\.frontends\\.\\w+\\.variables(?:\\.\\w+)*',
72
+ extension: 'ts',
73
+ },
74
+ {
75
+ name: 'enums',
76
+ description: '枚举',
77
+ fileNamePattern: 'app\\.enums\\.\\w+\\.ts',
78
+ codeRefPattern: 'app\\.enums\\.\\w+(?:\\.\\w+)*',
79
+ extension: 'ts',
80
+ },
81
+ {
82
+ name: 'extensions',
83
+ description: '依赖库',
84
+ fileNamePattern: 'extensions\\.\\w+\\.ts',
85
+ codeRefPattern: 'extensions\\.\\w+(?:\\.\\w+)*',
86
+ extension: 'ts',
87
+ },
88
+ {
89
+ name: 'theme',
90
+ description: '主题样式',
91
+ fileNamePattern: 'app\\.frontendTypes\\.\\w+\\.frontends\\.\\w+\\.theme\\.css',
92
+ codeRefPattern: 'app\\.frontendTypes\\.\\w+\\.frontends\\.\\w+\\.theme\\.css',
93
+ extension: 'css',
94
+ },
95
+ ];
96
+ /**
97
+ * 获取用于验证文件名的正则表达式数组
98
+ */
99
+ function getFileNamePatterns() {
100
+ return exports.NASL_FILE_TYPES.map((type) => new RegExp(`^${type.fileNamePattern}$`));
101
+ }
102
+ exports.getFileNamePatterns = getFileNamePatterns;
103
+ /**
104
+ * 获取用于提取代码引用的正则表达式数组
105
+ */
106
+ function getCodeRefPatterns() {
107
+ return exports.NASL_FILE_TYPES.map((type) => new RegExp(type.codeRefPattern, 'g'));
108
+ }
109
+ exports.getCodeRefPatterns = getCodeRefPatterns;
110
+ /**
111
+ * 判断文件路径是否为已知的 NASL 文件类型
112
+ * 支持的类型:
113
+ * - 数据结构 (structures): app.structures.{StructureName}.ts
114
+ * - 实体 (entities): app.dataSources.{dsName}.entities.{EntityName}.ts
115
+ * - 逻辑 (logics): app.logics.{logicName}.ts
116
+ * - 视图 (views): app.frontendTypes.{type}.frontends.{name}.views.{viewName}.tsx
117
+ * - 后端全局变量: app.backend.variables.ts
118
+ * - 前端全局变量: app.frontendTypes.{type}.frontends.{name}.variables.ts
119
+ * - 枚举 (enums): app.enums.{EnumName}.ts
120
+ * - 依赖库 (extensions): extensions.{extensionName}.ts
121
+ *
122
+ * @param filePath 文件路径(绝对路径或相对路径)
123
+ * @returns 是否为已知的 NASL 文件类型
124
+ */
125
+ function isKnownFileType(filePath) {
126
+ // 提取文件名
127
+ const fileName = path.basename(filePath);
128
+ return getFileNamePatterns().some((pattern) => pattern.test(fileName));
129
+ }
130
+ exports.isKnownFileType = isKnownFileType;
131
+ //# sourceMappingURL=nasl-file-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nasl-file-types.js","sourceRoot":"","sources":["../../../src/natural/utils/nasl-file-types.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAA6B;AAmB7B;;GAEG;AACU,QAAA,eAAe,GAAyB;IACjD;QACI,IAAI,EAAE,YAAY;QAClB,WAAW,EAAE,MAAM;QACnB,eAAe,EAAE,8BAA8B;QAC/C,cAAc,EAAE,qCAAqC;QACrD,SAAS,EAAE,IAAI;KAClB;IACD;QACI,IAAI,EAAE,UAAU;QAChB,WAAW,EAAE,IAAI;QACjB,eAAe,EAAE,iDAAiD;QAClE,cAAc,EAAE,mEAAmE;QACnF,SAAS,EAAE,IAAI;KAClB;IACD;QACI,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,IAAI;QACjB,eAAe,EAAE,0BAA0B;QAC3C,cAAc,EAAE,iCAAiC;QACjD,SAAS,EAAE,IAAI;KAClB;IACD;QACI,IAAI,EAAE,OAAO;QACb,WAAW,EAAE,IAAI;QACjB,eAAe,EAAE,+EAA+E;QAChG,cAAc,EAAE,qFAAqF;QACrG,SAAS,EAAE,KAAK;KACnB;IACD;QACI,IAAI,EAAE,mBAAmB;QACzB,WAAW,EAAE,QAAQ;QACrB,eAAe,EAAE,gCAAgC;QACjD,cAAc,EAAE,uCAAuC;QACvD,SAAS,EAAE,IAAI;KAClB;IACD;QACI,IAAI,EAAE,oBAAoB;QAC1B,WAAW,EAAE,QAAQ;QACrB,eAAe,EAAE,gEAAgE;QACjF,cAAc,EAAE,uEAAuE;QACvF,SAAS,EAAE,IAAI;KAClB;IACD;QACI,IAAI,EAAE,OAAO;QACb,WAAW,EAAE,IAAI;QACjB,eAAe,EAAE,yBAAyB;QAC1C,cAAc,EAAE,gCAAgC;QAChD,SAAS,EAAE,IAAI;KAClB;IACD;QACI,IAAI,EAAE,YAAY;QAClB,WAAW,EAAE,KAAK;QAClB,eAAe,EAAE,wBAAwB;QACzC,cAAc,EAAE,+BAA+B;QAC/C,SAAS,EAAE,IAAI;KAClB;IACD;QACI,IAAI,EAAE,OAAO;QACb,WAAW,EAAE,MAAM;QACnB,eAAe,EAAE,6DAA6D;QAC9E,cAAc,EAAE,6DAA6D;QAC7E,SAAS,EAAE,KAAK;KACnB;CACJ,CAAC;AAEF;;GAEG;AACH,SAAgB,mBAAmB;IAC/B,OAAO,uBAAe,CAAC,GAAG,CACtB,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC,IAAI,IAAI,CAAC,eAAe,GAAG,CAAC,CACpD,CAAC;AACN,CAAC;AAJD,kDAIC;AAED;;GAEG;AACH,SAAgB,kBAAkB;IAC9B,OAAO,uBAAe,CAAC,GAAG,CACtB,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,cAAc,EAAE,GAAG,CAAC,CACjD,CAAC;AACN,CAAC;AAJD,gDAIC;AAED;;;;;;;;;;;;;;GAcG;AACH,SAAgB,eAAe,CAAC,QAAgB;IAC5C,QAAQ;IACR,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACzC,OAAO,mBAAmB,EAAE,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;AAC3E,CAAC;AAJD,0CAIC"}