@lcap/nasl 4.4.0-beta.31 → 4.4.0-beta.32

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 (73) hide show
  1. package/out/natural/exports/nasl2Files.d.ts.map +1 -1
  2. package/out/natural/exports/nasl2Files.js +9 -0
  3. package/out/natural/exports/nasl2Files.js.map +1 -1
  4. package/out/natural/exports/transform2BatchActions/apply.d.ts +11 -0
  5. package/out/natural/exports/transform2BatchActions/apply.d.ts.map +1 -0
  6. package/out/natural/exports/transform2BatchActions/apply.js +68 -0
  7. package/out/natural/exports/transform2BatchActions/apply.js.map +1 -0
  8. package/out/natural/exports/transform2BatchActions/diff/directories.d.ts +17 -0
  9. package/out/natural/exports/transform2BatchActions/diff/directories.d.ts.map +1 -0
  10. package/out/natural/exports/transform2BatchActions/diff/directories.js +215 -0
  11. package/out/natural/exports/transform2BatchActions/diff/directories.js.map +1 -0
  12. package/out/natural/exports/transform2BatchActions/diff/index.d.ts +21 -0
  13. package/out/natural/exports/transform2BatchActions/diff/index.d.ts.map +1 -0
  14. package/out/natural/exports/transform2BatchActions/diff/index.js +20 -0
  15. package/out/natural/exports/transform2BatchActions/diff/index.js.map +1 -0
  16. package/out/natural/exports/transform2BatchActions/diff/nodes.d.ts +139 -0
  17. package/out/natural/exports/transform2BatchActions/diff/nodes.d.ts.map +1 -0
  18. package/out/natural/exports/transform2BatchActions/diff/nodes.js +377 -0
  19. package/out/natural/exports/transform2BatchActions/diff/nodes.js.map +1 -0
  20. package/out/natural/exports/transform2BatchActions/diff/roles.d.ts +18 -0
  21. package/out/natural/exports/transform2BatchActions/diff/roles.d.ts.map +1 -0
  22. package/out/natural/exports/transform2BatchActions/diff/roles.js +52 -0
  23. package/out/natural/exports/transform2BatchActions/diff/roles.js.map +1 -0
  24. package/out/natural/exports/transform2BatchActions/index.d.ts +40 -0
  25. package/out/natural/exports/transform2BatchActions/index.d.ts.map +1 -0
  26. package/out/natural/exports/transform2BatchActions/index.js +59 -0
  27. package/out/natural/exports/transform2BatchActions/index.js.map +1 -0
  28. package/out/natural/exports/transform2BatchActions/parse.d.ts +14 -0
  29. package/out/natural/exports/transform2BatchActions/parse.d.ts.map +1 -0
  30. package/out/natural/exports/transform2BatchActions/parse.js +215 -0
  31. package/out/natural/exports/transform2BatchActions/parse.js.map +1 -0
  32. package/out/natural/exports/transform2BatchActions/types.d.ts +134 -0
  33. package/out/natural/exports/transform2BatchActions/types.d.ts.map +1 -0
  34. package/out/natural/exports/transform2BatchActions/types.js +7 -0
  35. package/out/natural/exports/transform2BatchActions/types.js.map +1 -0
  36. package/out/natural/parser/parseNaturalTS.d.ts.map +1 -1
  37. package/out/natural/parser/parseNaturalTS.js +15 -1
  38. package/out/natural/parser/parseNaturalTS.js.map +1 -1
  39. package/out/natural/parser/parseNaturalTSXView.d.ts.map +1 -1
  40. package/out/natural/parser/parseNaturalTSXView.js +51 -2
  41. package/out/natural/parser/parseNaturalTSXView.js.map +1 -1
  42. package/out/natural/transforms/transform2GlobalLogicDeclaration.d.ts.map +1 -1
  43. package/out/natural/transforms/transform2GlobalLogicDeclaration.js +3 -0
  44. package/out/natural/transforms/transform2GlobalLogicDeclaration.js.map +1 -1
  45. package/out/natural/transforms/transform2Logic.d.ts.map +1 -1
  46. package/out/natural/transforms/transform2Logic.js +3 -0
  47. package/out/natural/transforms/transform2Logic.js.map +1 -1
  48. package/out/natural/transforms/transform2LogicItem.d.ts.map +1 -1
  49. package/out/natural/transforms/transform2LogicItem.js +16 -10
  50. package/out/natural/transforms/transform2LogicItem.js.map +1 -1
  51. package/out/natural/transforms/transform2Param.d.ts.map +1 -1
  52. package/out/natural/transforms/transform2Param.js +7 -0
  53. package/out/natural/transforms/transform2Param.js.map +1 -1
  54. package/out/natural/transforms/transform2Roles.d.ts +3 -0
  55. package/out/natural/transforms/transform2Roles.d.ts.map +1 -0
  56. package/out/natural/transforms/transform2Roles.js +30 -0
  57. package/out/natural/transforms/transform2Roles.js.map +1 -0
  58. package/out/natural/transforms/transform2TypeAnnotation.d.ts.map +1 -1
  59. package/out/natural/transforms/transform2TypeAnnotation.js +8 -4
  60. package/out/natural/transforms/transform2TypeAnnotation.js.map +1 -1
  61. package/out/natural/transforms/utils/parseDecorator.d.ts +2 -2
  62. package/out/natural/transforms/utils/parseDecorator.d.ts.map +1 -1
  63. package/out/natural/transforms/utils/parseDecorator.js +8 -5
  64. package/out/natural/transforms/utils/parseDecorator.js.map +1 -1
  65. package/out/natural/utils/index.d.ts +3 -0
  66. package/out/natural/utils/index.d.ts.map +1 -1
  67. package/out/natural/utils/index.js +11 -1
  68. package/out/natural/utils/index.js.map +1 -1
  69. package/package.json +10 -9
  70. package/out/natural/exports/transform2BatchActions.d.ts +0 -114
  71. package/out/natural/exports/transform2BatchActions.d.ts.map +0 -1
  72. package/out/natural/exports/transform2BatchActions.js +0 -1233
  73. package/out/natural/exports/transform2BatchActions.js.map +0 -1
@@ -0,0 +1,215 @@
1
+ "use strict";
2
+ /**
3
+ * 阶段1: codeActions → { codeArray, itemTypes, appInstance }
4
+ *
5
+ * 负责:
6
+ * - 将 CodeAction[] 转换为可解析的 TS 代码片段
7
+ * - 检测并补全缺失的父级视图
8
+ * - 调用 parseNaturalTS 解析为 NASL App 实例
9
+ */
10
+ Object.defineProperty(exports, "__esModule", { value: true });
11
+ exports.parseCodeActions = void 0;
12
+ const concepts_1 = require("../../../concepts");
13
+ const index_1 = require("../../../index");
14
+ const nasl_file_types_1 = require("../../utils/nasl-file-types");
15
+ // ─── 路径解析工具 ─────────────────────────────────────────────────────────────
16
+ /**
17
+ * 根据命名空间获取项目类型
18
+ */
19
+ const getItemType = (namespace) => {
20
+ if (namespace.includes('entities'))
21
+ return 'entity';
22
+ if (namespace.includes('structures'))
23
+ return 'structure';
24
+ if (namespace.includes('enums'))
25
+ return 'enum';
26
+ if (namespace.includes('logics'))
27
+ return 'logic';
28
+ if (namespace.includes('views'))
29
+ return 'view';
30
+ if (namespace.includes('extensions'))
31
+ return 'extensions';
32
+ if (namespace.includes('app.backend.variables'))
33
+ return 'backendVariables';
34
+ if (namespace.includes('theme.css'))
35
+ return 'theme';
36
+ if (/app\.frontendTypes\.[^.]+\.frontends\.[^.]+\.variables/.test(namespace))
37
+ return 'frontendVariables';
38
+ return 'unknown';
39
+ };
40
+ /**
41
+ * 解析视图路径,提取视图名称和命名空间
42
+ */
43
+ const parseViewPath = (path) => {
44
+ const cleanPath = path.replace(/^src\//, '').replace(/\.tsx$/, '');
45
+ const lastDotIndex = cleanPath.lastIndexOf('.');
46
+ const viewName = lastDotIndex !== -1 ? cleanPath.substring(lastDotIndex + 1) : cleanPath;
47
+ const namespace = lastDotIndex !== -1 ? cleanPath.substring(0, lastDotIndex) : '';
48
+ return { viewName, namespace, fullPath: path };
49
+ };
50
+ /**
51
+ * 提取嵌套视图路径的所有父级路径信息
52
+ */
53
+ const extractParentViewPaths = (path) => {
54
+ const parentInfos = [];
55
+ const viewsMatches = path.match(/\.views\./g);
56
+ if (!viewsMatches || viewsMatches.length < 2)
57
+ return parentInfos;
58
+ const regex = /src\/app\.frontendTypes\.pc\.frontends\.pc\.views\.(.*?)\.tsx$/;
59
+ const match = path.match(regex);
60
+ if (!match)
61
+ return parentInfos;
62
+ const viewPath = match[1];
63
+ const parts = viewPath.split('.views.');
64
+ for (let i = 0; i < parts.length - 1; i++) {
65
+ const pathParts = parts.slice(0, i + 1);
66
+ const parentPath = `src/app.frontendTypes.pc.frontends.pc.views.${pathParts.join('.views.')}.tsx`;
67
+ parentInfos.push(parseViewPath(parentPath));
68
+ }
69
+ return parentInfos;
70
+ };
71
+ /**
72
+ * 生成空的路由容器模板(为嵌套视图创建父级容器视图)
73
+ */
74
+ const generateRouterContainerTemplate = (params) => {
75
+ const { viewName, title, namespace } = params;
76
+ return `
77
+ namespace ${namespace} {
78
+ $View({
79
+ title: "${title}",
80
+ crumb: '',
81
+ auth: false,
82
+ isIndex: true,
83
+ })
84
+ export function ${viewName}() {
85
+ return <ElRouterView />
86
+ }
87
+ }`;
88
+ };
89
+ // ─── parse 阶段内部函数 ───────────────────────────────────────────────────────
90
+ /**
91
+ * 检测并生成缺失的父级视图模板
92
+ */
93
+ const processParentViews = (path, codeArray, processedPaths, errors) => {
94
+ const parentInfos = extractParentViewPaths(path);
95
+ for (const { viewName, namespace, fullPath } of parentInfos) {
96
+ if (!processedPaths.has(fullPath)) {
97
+ try {
98
+ codeArray.push(generateRouterContainerTemplate({ viewName, title: viewName, namespace }));
99
+ processedPaths.add(fullPath);
100
+ }
101
+ catch (error) {
102
+ errors.push({ item: fullPath, type: 'generateParentView', error: error, level: 0 });
103
+ }
104
+ }
105
+ }
106
+ };
107
+ /**
108
+ * 转换单个 codeAction 为可解析格式
109
+ */
110
+ const transformCodeAction = ({ path, content, action, }) => {
111
+ const namespace = path.replace(/^src\//, '');
112
+ const namespaceParts = namespace.split('.');
113
+ const itemType = getItemType(namespace);
114
+ let itemName = '';
115
+ let parentNamespace;
116
+ if (itemType === 'backendVariables' || itemType === 'frontendVariables' || itemType === 'theme') {
117
+ parentNamespace = namespaceParts.slice(0, -1).join('.');
118
+ }
119
+ else if (itemType === 'extensions') {
120
+ parentNamespace = namespaceParts.slice(0, -1).join('.');
121
+ }
122
+ else {
123
+ itemName = namespaceParts.length >= 2 ? namespaceParts[namespaceParts.length - 2] : '';
124
+ parentNamespace = namespaceParts.slice(0, -2).join('.');
125
+ }
126
+ let transformedCode = content;
127
+ if (itemType === 'theme') {
128
+ transformedCode = `namespace ${parentNamespace} {\n $theme\`${content}\`;\n}\n`;
129
+ }
130
+ else if (itemType !== 'unknown' && parentNamespace) {
131
+ const indent = itemType === 'view' ? ' ' : '';
132
+ transformedCode = `namespace ${parentNamespace} {\n${indent}${content}\n}\n`;
133
+ }
134
+ const parentViewNames = itemType === 'view' ? extractParentViewPaths(path).map((info) => info.viewName) : undefined;
135
+ return {
136
+ transformedCode,
137
+ itemType,
138
+ itemName,
139
+ action,
140
+ ...(parentViewNames && parentViewNames.length > 0 && { parentViewNames }),
141
+ };
142
+ };
143
+ // ─── 导出入口 ─────────────────────────────────────────────────────────────────
144
+ /**
145
+ * 阶段1:将 codeActions 解析为 NASL App 实例
146
+ */
147
+ const parseCodeActions = (codeActions, sessionId) => {
148
+ const codeArray = [];
149
+ const itemTypes = [];
150
+ const errors = [];
151
+ const processedPaths = new Set();
152
+ // 处理 app.roles.json(转换为 NaturalTS 加入解析队列)
153
+ const rolesJsonAction = codeActions.find((item) => item.path.endsWith('app.roles.json') && item.action !== 'delete');
154
+ if (rolesJsonAction) {
155
+ try {
156
+ JSON.parse(rolesJsonAction.content);
157
+ codeArray.push(`namespace app.roles {\n $roles(${rolesJsonAction.content});\n}`);
158
+ }
159
+ catch (error) {
160
+ errors.push({
161
+ item: rolesJsonAction.path,
162
+ type: 'rolesJsonParse',
163
+ error: error,
164
+ level: 0,
165
+ });
166
+ }
167
+ }
168
+ // 转换所有 codeAction
169
+ for (const item of codeActions) {
170
+ try {
171
+ if (!item.path.endsWith('.ts') &&
172
+ !item.path.endsWith('.tsx') &&
173
+ !item.path.endsWith('.css')) {
174
+ continue;
175
+ }
176
+ if (!(0, nasl_file_types_1.isKnownFileType)(item.path))
177
+ continue;
178
+ if (item.path?.includes('app.frontendTypes.pc.frontends.')) {
179
+ processParentViews(item.path, codeArray, processedPaths, errors);
180
+ }
181
+ const { transformedCode, itemType, itemName, action, parentViewNames } = transformCodeAction(item);
182
+ if (itemType === 'unknown' || itemType === 'extensions')
183
+ continue;
184
+ if (action !== 'delete')
185
+ codeArray.push(transformedCode);
186
+ if (action !== 'exist')
187
+ itemTypes.push({ type: itemType, name: itemName, action, parentViewNames });
188
+ processedPaths.add(item.path);
189
+ }
190
+ catch (error) {
191
+ errors.push({ item: item.path, type: 'transformCodeAction', error: error, level: 0 });
192
+ }
193
+ }
194
+ // 解析累积代码
195
+ const accumulatedTsCode = codeArray.join('');
196
+ let appInstance = null;
197
+ let parseJSON = null;
198
+ if (accumulatedTsCode) {
199
+ try {
200
+ parseJSON = (0, index_1.parseNaturalTS)(accumulatedTsCode, {});
201
+ if (parseJSON) {
202
+ const { node: nodes } = (0, index_1.genAIUID)(parseJSON.toJSON(), sessionId);
203
+ appInstance = new concepts_1.App(nodes);
204
+ }
205
+ }
206
+ catch (error) {
207
+ console.error('转换失败:', error);
208
+ console.error('原始数据:', codeActions);
209
+ errors.push({ item: 'parseNaturalTS', type: 'parseError', error: error, level: 0 });
210
+ }
211
+ }
212
+ return { codeArray, itemTypes, appInstance, accumulatedTsCode, parseJSON, errors };
213
+ };
214
+ exports.parseCodeActions = parseCodeActions;
215
+ //# sourceMappingURL=parse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parse.js","sourceRoot":"","sources":["../../../../src/natural/exports/transform2BatchActions/parse.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,134 @@
1
+ /**
2
+ * 类型定义与接口
3
+ * 只包含 interface 和 type,无运行时函数
4
+ */
5
+ import type { App } from '../../../concepts';
6
+ /**
7
+ * 用于描述对代码文件的操作,包括路径、内容和操作类型
8
+ */
9
+ export interface CodeAction {
10
+ /** 文件路径,例如: 'src/app.enums.SomeType.ts' */
11
+ path: string;
12
+ /** 文件内容 */
13
+ content: string;
14
+ /** 操作类型:创建、更新、删除或已存在(用于自动生成的父级视图) */
15
+ action: 'create' | 'update' | 'delete' | 'exist';
16
+ }
17
+ /**
18
+ * 批量操作接口
19
+ */
20
+ export interface BatchAction {
21
+ /** 操作类型 */
22
+ action: string;
23
+ /** 操作路径 */
24
+ path: string;
25
+ /** NASL 对象 */
26
+ object: any;
27
+ }
28
+ /**
29
+ * 用于描述一组批量操作及其元信息
30
+ */
31
+ export interface Operators {
32
+ /** 唯一标识符 */
33
+ uuid: string;
34
+ /** 批量操作数组 */
35
+ actions: BatchAction[];
36
+ /** 操作描述信息 */
37
+ actionMsg: string;
38
+ /** 源类型 */
39
+ sourceType: string;
40
+ }
41
+ /**
42
+ * 支持的项目类型
43
+ */
44
+ export type ItemType = 'entity' | 'structure' | 'enum' | 'logic' | 'view' | 'backendVariables' | 'frontendVariables' | 'theme' | 'extensions' | 'unknown';
45
+ /**
46
+ * 布局模板参数接口
47
+ */
48
+ export interface LayoutTemplateParams {
49
+ viewName: string;
50
+ title: string;
51
+ namespace: string;
52
+ }
53
+ /**
54
+ * 视图路径信息接口
55
+ */
56
+ export interface ViewPathInfo {
57
+ /** 视图名称 */
58
+ viewName: string;
59
+ /** 命名空间 */
60
+ namespace: string;
61
+ /** 完整路径 */
62
+ fullPath: string;
63
+ }
64
+ /**
65
+ * 类型处理器基础接口
66
+ */
67
+ export interface BaseTypeHandler {
68
+ /** 类型标识 */
69
+ type: ItemType;
70
+ /** 路径模板 */
71
+ path: string;
72
+ }
73
+ /**
74
+ * 单节点处理器(需要 name 参数)
75
+ * 适用于:entity, structure, enum, logic
76
+ */
77
+ export interface SingleNodeHandler extends BaseTypeHandler {
78
+ type: 'entity' | 'structure' | 'enum' | 'logic';
79
+ findMethod: (name: string) => any;
80
+ findExisting: (name: string) => any;
81
+ }
82
+ /**
83
+ * 视图处理器(需要 name 和可选的 parentViewNames)
84
+ * 适用于:view
85
+ */
86
+ export interface ViewHandler extends BaseTypeHandler {
87
+ type: 'view';
88
+ findMethod: (name: string, parentViewNames?: string[]) => any;
89
+ findExisting: (name: string, parentViewNames?: string[]) => any;
90
+ }
91
+ /**
92
+ * 全局变量处理器(name 可选)
93
+ * 适用于:backendVariables, frontendVariables
94
+ */
95
+ export interface GlobalVariablesHandler extends BaseTypeHandler {
96
+ type: 'backendVariables' | 'frontendVariables';
97
+ findMethod: (name?: string) => any;
98
+ findExisting: (name?: string) => any;
99
+ }
100
+ /**
101
+ * 主题处理器(无需参数)
102
+ * 适用于:theme
103
+ */
104
+ export interface ThemeHandler extends BaseTypeHandler {
105
+ type: 'theme';
106
+ findMethod: () => any;
107
+ findExisting: () => any;
108
+ }
109
+ /**
110
+ * 类型处理器联合类型
111
+ */
112
+ export type TypeHandler = SingleNodeHandler | ViewHandler | GlobalVariablesHandler | ThemeHandler;
113
+ /**
114
+ * parseCodeActions 的返回值结构
115
+ */
116
+ export interface ParseResult {
117
+ codeArray: string[];
118
+ itemTypes: Array<{
119
+ type: ItemType;
120
+ name: string;
121
+ action: string;
122
+ parentViewNames?: string[];
123
+ }>;
124
+ appInstance: App | null;
125
+ accumulatedTsCode: string;
126
+ parseJSON: any;
127
+ errors: Array<{
128
+ item: string;
129
+ type: string;
130
+ error: Error;
131
+ level: number;
132
+ }>;
133
+ }
134
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/natural/exports/transform2BatchActions/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ /**
3
+ * 类型定义与接口
4
+ * 只包含 interface 和 type,无运行时函数
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/natural/exports/transform2BatchActions/types.ts"],"names":[],"mappings":";AAAA;;;GAGG"}
@@ -1 +1 @@
1
- {"version":3,"file":"parseNaturalTS.d.ts","sourceRoot":"","sources":["../../../src/natural/parser/parseNaturalTS.ts"],"names":[],"mappings":"AACA,OAAO,EAAc,SAAS,EAAiG,MAAM,UAAU,CAAC;AA6HhJ,KAAK,aAAa,GAAG,KAAK,GAAG,YAAY,GAAG,MAAM,GAAG,YAAY,CAAC;AAClE,KAAK,eAAe,GAAG,YAAY,GAAG,OAAO,GAAG,eAAe,GAAG,QAAQ,GAAG,YAAY,CAAC;AAI1F;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,eAAe,EAAE,aAAa,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,CAAC,EAAE,GAAG,QA+BjI;AASD,wBAAgB,cAAc,CAC5B,MAAM,EAAE,MAAM,EACd,EACE,SAAS,EACT,iBAAiB,EACjB,MAAkB,EAClB,aAAa,EACd,GAAE;IACD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,GAAG,CACjB,MAAM,EACN;QACE,SAAS,EAAE,GAAG,CAAC;QACf,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC3B,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC5B,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;KAC5B,CACF,CAAC;CACE,iBA2VP"}
1
+ {"version":3,"file":"parseNaturalTS.d.ts","sourceRoot":"","sources":["../../../src/natural/parser/parseNaturalTS.ts"],"names":[],"mappings":"AACA,OAAO,EAAc,SAAS,EAAiG,MAAM,UAAU,CAAC;AA8HhJ,KAAK,aAAa,GAAG,KAAK,GAAG,YAAY,GAAG,MAAM,GAAG,YAAY,CAAC;AAClE,KAAK,eAAe,GAAG,YAAY,GAAG,OAAO,GAAG,eAAe,GAAG,QAAQ,GAAG,YAAY,CAAC;AAI1F;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,eAAe,EAAE,aAAa,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,CAAC,EAAE,GAAG,QA+BjI;AASD,wBAAgB,cAAc,CAC5B,MAAM,EAAE,MAAM,EACd,EACE,SAAS,EACT,iBAAiB,EACjB,MAAkB,EAClB,aAAa,EACd,GAAE;IACD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,GAAG,CACjB,MAAM,EACN;QACE,SAAS,EAAE,GAAG,CAAC;QACf,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC3B,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC5B,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;KAC5B,CACF,CAAC;CACE,iBAwWP"}
@@ -36,6 +36,7 @@ const parseNaturalTSXView_1 = require("./parseNaturalTSXView");
36
36
  const transform2MetadataType_1 = require("../transforms/transform2MetadataType");
37
37
  const transformThemeAndStyle_1 = require("../transforms/transformThemeAndStyle");
38
38
  const transform2Directory_1 = require("../transforms/utils/transform2Directory");
39
+ const transform2Roles_1 = require("../transforms/transform2Roles");
39
40
  /**
40
41
  * 铺平命名空间
41
42
  * 会将连续嵌套的命令空间铺平
@@ -214,7 +215,8 @@ function parseNaturalTS(tsCode, { parsingId, strictForTraining, source = 'creato
214
215
  appendExtName: true,
215
216
  source,
216
217
  componentsMap,
217
- strictForTraining
218
+ strictForTraining,
219
+ appRoles: [...new Set([...(app.roles?.map((r) => r.name) ?? []), 'DEV-AdminRole'])],
218
220
  };
219
221
  if (!HEAD_NAMESPACES.includes(idNames[0]))
220
222
  return (0, utils_1.throwError)(parseState, `不支持命名空间以${idNames[0]}开头`);
@@ -367,6 +369,16 @@ function parseNaturalTS(tsCode, { parsingId, strictForTraining, source = 'creato
367
369
  return (0, utils_1.throwError)(parseState, '不支持的命名空间:' + idNamesStr);
368
370
  }
369
371
  }
372
+ else if (idNames[1] === 'roles') {
373
+ if (statement.type === 'ExpressionStatement' &&
374
+ statement.expression.type === 'CallExpression' &&
375
+ statement.expression.callee.type === 'Identifier' &&
376
+ statement.expression.callee.name === '$roles') {
377
+ const arg = statement.expression.arguments[0];
378
+ if (arg?.type === 'ArrayExpression')
379
+ (0, transform2Roles_1.transform2Roles)(arg, app, parseState);
380
+ }
381
+ }
370
382
  else if (idNamesStr === 'app.backend.variables') {
371
383
  // 只处理变量声明,忽略其他类型(如装饰器调用 $BackendVariable({...}))
372
384
  if (statement.type === 'VariableDeclaration') {
@@ -460,6 +472,8 @@ function parseNaturalTS(tsCode, { parsingId, strictForTraining, source = 'creato
460
472
  const decorator = (0, utils_1.getDecoratorCall)(namespaceStatements[index - 1]?.statement, 'View');
461
473
  const newOptions = { ...parseState, isInFrontend: true };
462
474
  const view = statement.type === 'FunctionDeclaration' ? (0, parseNaturalTSXView_1.transform2View)(statement, decorator, newOptions) : (0, parseNaturalTSXView_1.transformTSDeclareFunction2View)(statement, decorator, newOptions);
475
+ if (!view)
476
+ return;
463
477
  newOptions.nodeName = view.name;
464
478
  const parentPathSegments = []; // ['dashboard', 'abc']
465
479
  for (let i = 6; i < idNames.length - 1; i += 2) {
@@ -1 +1 @@
1
- {"version":3,"file":"parseNaturalTS.js","sourceRoot":"","sources":["../../../src/natural/parser/parseNaturalTS.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parseNaturalTS.js","sourceRoot":"","sources":["../../../src/natural/parser/parseNaturalTS.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"parseNaturalTSXView.d.ts","sourceRoot":"","sources":["../../../src/natural/parser/parseNaturalTSXView.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAkF,KAAK,mBAAmB,EAAE,KAAK,eAAe,EAAE,KAAK,cAAc,EAAE,MAAM,UAAU,CAAC;AA2CtM,wBAAgB,+BAA+B,CAAC,IAAI,EAAE,UAAU,CAAC,UAAU,EAAE,OAAO,EAAE,cAAc,GAAG,SAAS,CAAC,WAAW,GAAG,IAAI,CAyZlI;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,UAAU,CAAC,mBAAmB,EAAE,SAAS,EAAE,UAAU,CAAC,cAAc,EAAE,OAAO,EAAE,mBAAmB,kBAwItI;AAED,wBAAgB,+BAA+B,CAAC,IAAI,EAAE,UAAU,CAAC,iBAAiB,EAAE,SAAS,EAAE,UAAU,CAAC,cAAc,EAAE,OAAO,EAAE,eAAe,kBAiEjJ;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,mBAAmB,kBAuB/E"}
1
+ {"version":3,"file":"parseNaturalTSXView.d.ts","sourceRoot":"","sources":["../../../src/natural/parser/parseNaturalTSXView.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAkF,KAAK,mBAAmB,EAAE,KAAK,eAAe,EAAE,KAAK,cAAc,EAAE,MAAM,UAAU,CAAC;AA2CtM,wBAAgB,+BAA+B,CAAC,IAAI,EAAE,UAAU,CAAC,UAAU,EAAE,OAAO,EAAE,cAAc,GAAG,SAAS,CAAC,WAAW,GAAG,IAAI,CAiblI;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,UAAU,CAAC,mBAAmB,EAAE,SAAS,EAAE,UAAU,CAAC,cAAc,EAAE,OAAO,EAAE,mBAAmB,kBAmJtI;AAED,wBAAgB,+BAA+B,CAAC,IAAI,EAAE,UAAU,CAAC,iBAAiB,EAAE,SAAS,EAAE,UAAU,CAAC,cAAc,EAAE,OAAO,EAAE,eAAe,kBA+EjJ;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,mBAAmB,kBAuB/E"}
@@ -282,6 +282,21 @@ return <>
282
282
  return (0, utils_1.throwError)(options, 'style 属性值不正确', attr.value);
283
283
  }
284
284
  }
285
+ else if (attrName === '$bindRoles') {
286
+ if (attr.value?.type === 'JSXExpressionContainer' &&
287
+ attr.value.expression.type === 'ArrayExpression') {
288
+ const elements = attr.value.expression.elements;
289
+ if (elements.every(el => el?.type === 'StringLiteral')) {
290
+ viewElement.bindRoles = elements.map(el => el.value);
291
+ }
292
+ else {
293
+ return (0, utils_1.throwError)(options, '$bindRoles 只支持字符串数组', attr.value);
294
+ }
295
+ }
296
+ else {
297
+ return (0, utils_1.throwError)(options, '$bindRoles 属性值不正确', attr.value);
298
+ }
299
+ }
285
300
  else if (attrName.startsWith(directivePrefix)) {
286
301
  const directiveName = attrName.slice(directivePrefix.length);
287
302
  const directive = new utils_1.naslTypes.BindDirective({
@@ -465,6 +480,15 @@ return <>
465
480
  return (0, utils_1.throwError)(options, '不支持的JSX属性类型', attr.type, attr);
466
481
  }
467
482
  });
483
+ if (viewElement.auth && !viewElement.bindRoles?.length) {
484
+ viewElement.bindRoles = ['DEV-AdminRole'];
485
+ }
486
+ if (viewElement.bindRoles?.length && options.appRoles?.length) {
487
+ const invalid = viewElement.bindRoles.filter(r => !options.appRoles.includes(r));
488
+ if (invalid.length) {
489
+ return (0, utils_1.throwError)(options, `$bindRoles 中包含未定义的角色:${invalid.join('、')},请先在应用的角色管理中添加对应角色`);
490
+ }
491
+ }
468
492
  { /* 临时补救 EnumToList 问题 */
469
493
  if (viewElement.bindAttrs.some((bindAttr) => bindAttr.name === 'dataSource' && bindAttr.expression?.concept === 'CallFunction' && bindAttr.expression?.calleeName === 'EnumToList')) {
470
494
  const index = viewElement.bindAttrs.findIndex((bindAttr) => bindAttr.name === 'valueField');
@@ -545,10 +569,17 @@ function transform2View(func, decorator, options) {
545
569
  'auth',
546
570
  'authDescription',
547
571
  'isIndex',
572
+ 'bindRoles',
548
573
  ]), {}, options);
549
574
  Object.assign(view, viewObj);
550
- if (view.auth) {
551
- view.bindRoles = ["DEV-AdminRole"];
575
+ if (view.auth && !view.bindRoles?.length) {
576
+ view.bindRoles = ['DEV-AdminRole'];
577
+ }
578
+ if (view.bindRoles?.length && options.appRoles?.length) {
579
+ const invalid = view.bindRoles.filter(r => !options.appRoles.includes(r));
580
+ if (invalid.length) {
581
+ return (0, utils_1.throwError)(options, `bindRoles 中包含未定义的角色:${invalid.join('、')},请先在应用的角色管理中添加对应角色`, decorator.arguments[0]);
582
+ }
552
583
  }
553
584
  view.crumb = new utils_1.naslTypes.StaticString({
554
585
  value: viewObj.crumb,
@@ -590,6 +621,10 @@ function transform2View(func, decorator, options) {
590
621
  const name = member.key.name;
591
622
  if (propertyMap[name]) {
592
623
  propertyMap[name].left.typeAnnotation = member.typeAnnotation;
624
+ // 将类型签名侧的注释复制到参数节点,供 transform2Param 提取 description
625
+ if (member.leadingComments?.length) {
626
+ propertyMap[name].left.leadingComments = member.leadingComments;
627
+ }
593
628
  }
594
629
  }
595
630
  });
@@ -685,8 +720,18 @@ function transformTSDeclareFunction2View(func, decorator, options) {
685
720
  'auth',
686
721
  'authDescription',
687
722
  'isIndex',
723
+ 'bindRoles',
688
724
  ]), {}, options);
689
725
  Object.assign(view, viewObj);
726
+ if (view.auth && !view.bindRoles?.length) {
727
+ view.bindRoles = ['DEV-AdminRole'];
728
+ }
729
+ if (view.bindRoles?.length && options.appRoles?.length) {
730
+ const invalid = view.bindRoles.filter(r => !options.appRoles.includes(r));
731
+ if (invalid.length) {
732
+ return (0, utils_1.throwError)(options, `bindRoles 中包含未定义的角色:${invalid.join('、')},请先在应用的角色管理中添加对应角色`, decorator.arguments[0]);
733
+ }
734
+ }
690
735
  view.crumb = new utils_1.naslTypes.StaticString({
691
736
  value: viewObj.crumb,
692
737
  });
@@ -727,6 +772,10 @@ function transformTSDeclareFunction2View(func, decorator, options) {
727
772
  const name = member.key.name;
728
773
  if (propertyMap[name]) {
729
774
  propertyMap[name].left.typeAnnotation = member.typeAnnotation;
775
+ // 将类型签名侧的注释复制到参数节点,供 transform2Param 提取 description
776
+ if (member.leadingComments?.length) {
777
+ propertyMap[name].left.leadingComments = member.leadingComments;
778
+ }
730
779
  }
731
780
  }
732
781
  });