@lcap/nasl 4.4.0-beta.1 → 4.4.0-beta.3

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 (86) hide show
  1. package/out/generator/genBundleFiles.d.ts +2 -2
  2. package/out/generator/genBundleFiles.d.ts.map +1 -1
  3. package/out/generator/genBundleFiles.js +175 -138
  4. package/out/generator/genBundleFiles.js.map +1 -1
  5. package/out/generator/qiankun.d.ts +1 -1
  6. package/out/generator/qiankun.d.ts.map +1 -1
  7. package/out/generator/qiankun.js +4 -1
  8. package/out/generator/qiankun.js.map +1 -1
  9. package/out/generator/release-body/data.d.ts.map +1 -1
  10. package/out/generator/release-body/data.js +34 -1
  11. package/out/generator/release-body/data.js.map +1 -1
  12. package/out/generator/release-body/utils.d.ts +2 -6
  13. package/out/generator/release-body/utils.d.ts.map +1 -1
  14. package/out/generator/release-body/utils.js +101 -3
  15. package/out/generator/release-body/utils.js.map +1 -1
  16. package/out/generator/templates/chunk.d.ts +11 -0
  17. package/out/generator/templates/chunk.d.ts.map +1 -0
  18. package/out/generator/templates/chunk.js +29 -0
  19. package/out/generator/templates/chunk.js.map +1 -0
  20. package/out/generator/templates/runtime.d.ts +7 -0
  21. package/out/generator/templates/runtime.d.ts.map +1 -0
  22. package/out/generator/templates/runtime.js +409 -0
  23. package/out/generator/templates/runtime.js.map +1 -0
  24. package/out/generator/ui-library-declaration/basic.d.ts.map +1 -1
  25. package/out/generator/ui-library-declaration/basic.js +5 -5
  26. package/out/generator/ui-library-declaration/basic.js.map +1 -1
  27. package/out/generator/ui-library-declaration/dependency.d.ts.map +1 -1
  28. package/out/generator/ui-library-declaration/dependency.js +3 -3
  29. package/out/generator/ui-library-declaration/dependency.js.map +1 -1
  30. package/out/index.d.ts +1 -0
  31. package/out/index.d.ts.map +1 -1
  32. package/out/index.js +1 -0
  33. package/out/index.js.map +1 -1
  34. package/out/natural/getContext/nasl2Files.d.ts +15 -0
  35. package/out/natural/getContext/nasl2Files.d.ts.map +1 -0
  36. package/out/natural/getContext/nasl2Files.js +75 -0
  37. package/out/natural/getContext/nasl2Files.js.map +1 -0
  38. package/out/natural/index.d.ts +3 -1
  39. package/out/natural/index.d.ts.map +1 -1
  40. package/out/natural/index.js +3 -1
  41. package/out/natural/index.js.map +1 -1
  42. package/out/natural/parseNaturalTS.d.ts +2 -1
  43. package/out/natural/parseNaturalTS.d.ts.map +1 -1
  44. package/out/natural/parseNaturalTS.js +3 -3
  45. package/out/natural/parseNaturalTS.js.map +1 -1
  46. package/out/natural/parseNaturalTSXView.js +1 -1
  47. package/out/natural/parseNaturalTSXView.js.map +1 -1
  48. package/out/natural/transform2BatchActions.d.ts +96 -0
  49. package/out/natural/transform2BatchActions.d.ts.map +1 -0
  50. package/out/natural/transform2BatchActions.js +387 -0
  51. package/out/natural/transform2BatchActions.js.map +1 -0
  52. package/out/natural/transformTSCode.d.ts +2 -2
  53. package/out/natural/transformTSCode.d.ts.map +1 -1
  54. package/out/natural/transformTSCode.js +8 -7
  55. package/out/natural/transformTSCode.js.map +1 -1
  56. package/out/natural/transforms/transform2Logic.d.ts.map +1 -1
  57. package/out/natural/transforms/transform2Logic.js +1 -0
  58. package/out/natural/transforms/transform2Logic.js.map +1 -1
  59. package/out/natural/transforms/transform2LogicItem.d.ts +2 -0
  60. package/out/natural/transforms/transform2LogicItem.d.ts.map +1 -1
  61. package/out/natural/transforms/transform2LogicItem.js +9 -7
  62. package/out/natural/transforms/transform2LogicItem.js.map +1 -1
  63. package/out/server/naslServer.d.ts +1 -1
  64. package/out/server/naslServer.d.ts.map +1 -1
  65. package/out/server/naslServer.js +27 -27
  66. package/out/server/naslServer.js.map +1 -1
  67. package/out/service/storage/api.d.ts +9 -0
  68. package/out/service/storage/api.js +8 -0
  69. package/out/service/storage/api.js.map +1 -1
  70. package/out/service/storage/service.d.ts +3 -0
  71. package/out/service/storage/service.d.ts.map +1 -1
  72. package/out/service/storage/service.js +11 -0
  73. package/out/service/storage/service.js.map +1 -1
  74. package/out/service/storage/specTools.d.ts +34 -0
  75. package/out/service/storage/specTools.d.ts.map +1 -0
  76. package/out/service/storage/specTools.js +52 -0
  77. package/out/service/storage/specTools.js.map +1 -0
  78. package/out/utils/json-schema-to-nasl-type.d.ts +37 -0
  79. package/out/utils/json-schema-to-nasl-type.d.ts.map +1 -0
  80. package/out/utils/json-schema-to-nasl-type.js +195 -0
  81. package/out/utils/json-schema-to-nasl-type.js.map +1 -0
  82. package/package.json +11 -11
  83. package/out/generator/ui-library-declaration/utils.d.ts +0 -3
  84. package/out/generator/ui-library-declaration/utils.d.ts.map +0 -1
  85. package/out/generator/ui-library-declaration/utils.js +0 -20
  86. package/out/generator/ui-library-declaration/utils.js.map +0 -1
@@ -0,0 +1,96 @@
1
+ /**
2
+ *
3
+ * 这个模块的主要功能是将多个代码文件操作(创建、更新、删除)转换为统一的nasl批量操作格式,
4
+ *
5
+ * 主要处理流程:
6
+ * 1. 解析codeAction 的路径,提取命名空间和项目类型信息
7
+ * 2. 将代码内容包装在适当的命名空间中
8
+ * 3. 使用 parseNaturalTS 解析 TypeScript 代码为 NASL 对象
9
+ * 4. 为每种类型(entity、structure、enum、logic、view)提供统一的操作接口
10
+ * 5. 生成批量操作数组,支持创建、更新和删除操作
11
+ * 6. 处理操作过程中的错误并提供调试信息
12
+ *
13
+ * 目前支持的类型:
14
+ * - entity: 数据实体
15
+ * - structure: 数据结构
16
+ * - enum: 枚举类型
17
+ * - logic: 业务逻辑
18
+ * - view: 视图组件
19
+ */
20
+ /**
21
+ * 用于描述对代码文件的操作,包括路径、内容和操作类型
22
+ */
23
+ export interface CodeAction {
24
+ /** 文件路径,例如: 'src/app.enums.SomeType.ts' */
25
+ path: string;
26
+ /** 文件内容 */
27
+ content: string;
28
+ /** 操作类型:创建、更新或删除 */
29
+ action: 'create' | 'update' | 'delete';
30
+ }
31
+ /**
32
+ * 批量操作接口
33
+ * 用于描述单个批量操作的详细信息
34
+ */
35
+ interface BatchAction {
36
+ /** 操作类型 */
37
+ action: string;
38
+ /** 操作路径 */
39
+ path: string;
40
+ /** NASL 对象 */
41
+ object: any;
42
+ }
43
+ /**
44
+ * 用于描述一组批量操作及其元信息
45
+ */
46
+ export interface Operators {
47
+ /** 唯一标识符 */
48
+ uuid: string;
49
+ /** 批量操作数组 */
50
+ actions: BatchAction[];
51
+ /** 操作描述信息 */
52
+ actionMsg: string;
53
+ /** 源类型 */
54
+ sourceType: string;
55
+ }
56
+ /**
57
+ * 将 codeAction 数组转换为批量操作
58
+ * 这是整个模块的核心函数,负责将多个codeAction 转换成统一的批量操作格式
59
+ *
60
+ * 处理流程:
61
+ * 1. 解析每个 codeAction ,提取类型和名称信息
62
+ * 2. 将需要解析的代码合并并通过 parseNaturalTS 解析
63
+ * 3. 为每个操作生成对应的 NASL 对象
64
+ * 4. 构建批量操作数组,支持创建、更新和删除操作
65
+ * 5. 处理错误并返回结果
66
+ *
67
+ * @param codeActions - codeAction 数组,每个元素包含 path、content、action
68
+ * @param app - NASL 应用实例,用于操作目标应用
69
+ * @param sessionId - 会话 ID,用于生成唯一标识
70
+ * @param type - 操作类型,'normal' 为正常模式,'debug' 为调试模式(会返回更多信息)
71
+ * @returns 包含批量操作和可选调试信息的对象
72
+ */
73
+ export declare const transform2BatchActions: ({ codeActions, app, sessionId, type, }: {
74
+ codeActions: CodeAction[];
75
+ app: any;
76
+ sessionId: string;
77
+ type?: 'normal' | 'debug';
78
+ }) => {
79
+ batchActions: Operators;
80
+ accumulatedTsCode?: string;
81
+ parseJSON?: any;
82
+ errors?: Array<{
83
+ item: string;
84
+ type: string;
85
+ error: Error;
86
+ }>;
87
+ };
88
+ /**
89
+ * 将批量操作应用到 app 实例
90
+ * 处理批量操作(create/update/delete),并将其应用到 app 中
91
+ * @param app - NASL 应用实例,需传入 Vue 劫持后的响应式 app
92
+ * @param batchActions - 需要应用的批量操作
93
+ */
94
+ export declare const applyBatchActions: (app: any, batchActions: Operators) => void;
95
+ export {};
96
+ //# sourceMappingURL=transform2BatchActions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transform2BatchActions.d.ts","sourceRoot":"","sources":["../../src/natural/transform2BatchActions.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAOH;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,2CAA2C;IAC3C,IAAI,EAAE,MAAM,CAAC;IACb,WAAW;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,oBAAoB;IACpB,MAAM,EAAE,QAAQ,GAAG,QAAQ,GAAG,QAAQ,CAAC;CACxC;AAED;;;GAGG;AACH,UAAU,WAAW;IACnB,WAAW;IACX,MAAM,EAAE,MAAM,CAAC;IACf,WAAW;IACX,IAAI,EAAE,MAAM,CAAC;IACb,cAAc;IACd,MAAM,EAAE,GAAG,CAAC;CACb;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,YAAY;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,aAAa;IACb,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,aAAa;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU;IACV,UAAU,EAAE,MAAM,CAAC;CACpB;AAyHD;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,sBAAsB,2CAKhC;IACD,WAAW,EAAE,UAAU,EAAE,CAAC;IAC1B,GAAG,EAAE,GAAG,CAAC;IACT,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;CAC3B,KAAG;IACF,YAAY,EAAE,SAAS,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,SAAS,CAAC,EAAE,GAAG,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,CAAC,CAAC;CAkL9D,CAAC;AAqBF;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,QAAS,GAAG,gBAAgB,SAAS,SAoDlE,CAAC"}
@@ -0,0 +1,387 @@
1
+ "use strict";
2
+ /**
3
+ *
4
+ * 这个模块的主要功能是将多个代码文件操作(创建、更新、删除)转换为统一的nasl批量操作格式,
5
+ *
6
+ * 主要处理流程:
7
+ * 1. 解析codeAction 的路径,提取命名空间和项目类型信息
8
+ * 2. 将代码内容包装在适当的命名空间中
9
+ * 3. 使用 parseNaturalTS 解析 TypeScript 代码为 NASL 对象
10
+ * 4. 为每种类型(entity、structure、enum、logic、view)提供统一的操作接口
11
+ * 5. 生成批量操作数组,支持创建、更新和删除操作
12
+ * 6. 处理操作过程中的错误并提供调试信息
13
+ *
14
+ * 目前支持的类型:
15
+ * - entity: 数据实体
16
+ * - structure: 数据结构
17
+ * - enum: 枚举类型
18
+ * - logic: 业务逻辑
19
+ * - view: 视图组件
20
+ */
21
+ Object.defineProperty(exports, "__esModule", { value: true });
22
+ exports.applyBatchActions = exports.transform2BatchActions = void 0;
23
+ const uuid_1 = require("uuid");
24
+ const concepts_1 = require("../concepts");
25
+ const index_1 = require("../index");
26
+ const utils_1 = require("../utils");
27
+ /**
28
+ * 根据命名空间获取项目类型
29
+ * @param namespace - 命名空间字符串
30
+ * @returns 项目类型,如果无法识别则返回 'unknown'
31
+ */
32
+ const getItemType = (namespace) => {
33
+ if (namespace.includes('entities'))
34
+ return 'entity';
35
+ if (namespace.includes('structures'))
36
+ return 'structure';
37
+ if (namespace.includes('enums'))
38
+ return 'enum';
39
+ if (namespace.includes('logics'))
40
+ return 'logic';
41
+ if (namespace.includes('views'))
42
+ return 'view';
43
+ return 'unknown';
44
+ };
45
+ /**
46
+ * 创建不同类型处理器的工厂函数
47
+ * 为每种类型(entity、structure、enum、logic、view)提供统一的操作接口
48
+ * @param appInstance - 解析后的应用实例,用于查找新创建的对象
49
+ * @param app - 目前已有的应用实例,用于查找已存在的对象和添加新对象
50
+ * @returns 包含各种类型处理器的对象
51
+ */
52
+ const createTypeHandlers = (appInstance, app) => ({
53
+ entity: {
54
+ /** 实体在应用中的路径模板 */
55
+ path: 'app.dataSources[name=defaultDS].entities[0]',
56
+ /** 从解析实例中查找实体的方法 */
57
+ findMethod: (name) => appInstance?.dataSources[0].findEntityByName(name),
58
+ /** 从目标应用中查找已存在实体的方法 */
59
+ findExisting: (name) => app.dataSources[0].findEntityByName(name),
60
+ /** 向目标应用添加实体的方法 */
61
+ addMethod: (json) => app.dataSources[0].addEntity(json),
62
+ },
63
+ structure: {
64
+ /** 结构体在应用中的路径模板 */
65
+ path: 'app.structures[0]',
66
+ /** 从解析实例中查找结构体的方法 */
67
+ findMethod: (name) => appInstance?.findStructureByName(name),
68
+ /** 从目标应用中查找已存在结构体的方法 */
69
+ findExisting: (name) => app.findStructureByName(name),
70
+ /** 向目标应用添加结构体的方法 */
71
+ addMethod: (json) => app.addStructure(json),
72
+ },
73
+ enum: {
74
+ /** 枚举在应用中的路径模板 */
75
+ path: 'app.enums[0]',
76
+ /** 从解析实例中查找枚举的方法 */
77
+ findMethod: (name) => appInstance?.findEnumByName(name),
78
+ /** 从目标应用中查找已存在枚举的方法 */
79
+ findExisting: (name) => app.findEnumByName(name),
80
+ /** 向目标应用添加枚举的方法 */
81
+ addMethod: (json) => app.addEnum(json),
82
+ },
83
+ logic: {
84
+ /** 逻辑在应用中的路径模板 */
85
+ path: 'app.logics[0]',
86
+ /** 从解析实例中查找逻辑的方法 */
87
+ findMethod: (name) => appInstance?.findLogicByName(name),
88
+ /** 从目标应用中查找已存在逻辑的方法 */
89
+ findExisting: (name) => app.findLogicByName(name),
90
+ /** 向目标应用添加逻辑的方法 */
91
+ addMethod: (json) => app.addLogic(json),
92
+ },
93
+ view: {
94
+ /** 视图在应用中的路径模板 */
95
+ path: 'app.frontendTypes[name=pc].frontends[name=pc].views[0]',
96
+ /** 从解析实例中查找视图的方法 */
97
+ findMethod: (name) => appInstance?.frontendTypes[0].frontends[0].findViewByName(name),
98
+ /** 从目标应用中查找已存在视图的方法 */
99
+ findExisting: (name) => app.frontendTypes[0].frontends[0].findViewByName(name),
100
+ /** 向目标应用添加视图的方法 */
101
+ addMethod: (json) => app.frontendTypes[0].frontends[0].addView(json),
102
+ },
103
+ });
104
+ /**
105
+ * 转换单个codeAction
106
+ * 将codeAction 中的路径和内容转换为可解析的格式
107
+ * @param path - 文件路径
108
+ * @param content - 文件内容
109
+ * @param action - 操作类型
110
+ * @returns 包含转换后代码、项目类型、项目名称和操作类型的对象
111
+ */
112
+ const transformCodeAction = ({ path, content, action, }) => {
113
+ // 移除路径前缀 'src/'
114
+ const namespace = path.replace('src/', '');
115
+ // 解析命名空间,提取项目名称
116
+ const namespaceParts = namespace.split('.');
117
+ const itemName = namespaceParts.length >= 2 ? namespaceParts[namespaceParts.length - 2] : '';
118
+ const parentNamespace = namespaceParts.slice(0, -2).join('.');
119
+ // 根据命名空间确定项目类型
120
+ const itemType = getItemType(namespace);
121
+ // 生成转换后的代码,为非未知类型添加命名空间包装
122
+ let transformedCode = content;
123
+ if (itemType !== 'unknown' && parentNamespace) {
124
+ // 对于视图类型,需要额外的缩进
125
+ const indent = itemType === 'view' ? ' ' : '';
126
+ transformedCode = `namespace ${parentNamespace} {\n${indent}${content}\n}\n`;
127
+ }
128
+ return {
129
+ transformedCode,
130
+ itemType,
131
+ itemName,
132
+ action,
133
+ };
134
+ };
135
+ /**
136
+ * 将 codeAction 数组转换为批量操作
137
+ * 这是整个模块的核心函数,负责将多个codeAction 转换成统一的批量操作格式
138
+ *
139
+ * 处理流程:
140
+ * 1. 解析每个 codeAction ,提取类型和名称信息
141
+ * 2. 将需要解析的代码合并并通过 parseNaturalTS 解析
142
+ * 3. 为每个操作生成对应的 NASL 对象
143
+ * 4. 构建批量操作数组,支持创建、更新和删除操作
144
+ * 5. 处理错误并返回结果
145
+ *
146
+ * @param codeActions - codeAction 数组,每个元素包含 path、content、action
147
+ * @param app - NASL 应用实例,用于操作目标应用
148
+ * @param sessionId - 会话 ID,用于生成唯一标识
149
+ * @param type - 操作类型,'normal' 为正常模式,'debug' 为调试模式(会返回更多信息)
150
+ * @returns 包含批量操作和可选调试信息的对象
151
+ */
152
+ const transform2BatchActions = ({ codeActions, app, sessionId, type = 'normal', }) => {
153
+ // 开始性能计时
154
+ const startTime = performance.now();
155
+ // 存储转换后的代码片段(用于解析)
156
+ const codeArray = [];
157
+ // 存储每个项目的类型、名称和操作信息
158
+ const itemTypes = [];
159
+ // 存储处理过程中的错误
160
+ const errors = [];
161
+ // 第一阶段:转换所有codeAction
162
+ for (const item of codeActions) {
163
+ try {
164
+ const { transformedCode, itemType, itemName, action } = transformCodeAction(item);
165
+ // 只有非删除操作才需要累积代码用于解析,因为删除操作不需要解析新的 NASL 对象
166
+ if (action !== 'delete') {
167
+ codeArray.push(transformedCode);
168
+ }
169
+ itemTypes.push({ type: itemType, name: itemName, action });
170
+ }
171
+ catch (error) {
172
+ errors.push({
173
+ item: item.path,
174
+ type: 'transformCodeAction',
175
+ error: error,
176
+ });
177
+ }
178
+ }
179
+ // 第二阶段:解析累积的代码
180
+ // 将所有需要解析的代码合并为一个字符串(性能优化)
181
+ const accumulatedTsCode = codeArray.join('');
182
+ // 只有当有需要解析的代码时才调用 parseNaturalTS
183
+ let appInstance = null;
184
+ let parseJSON = null;
185
+ if (accumulatedTsCode) {
186
+ // 解析 TypeScript 代码为 NASL 对象
187
+ parseJSON = (0, index_1.parseNaturalTS)(accumulatedTsCode, {});
188
+ if (!parseJSON)
189
+ return null;
190
+ // 生成 AI 唯一标识并创建应用实例
191
+ const { node: nodes } = (0, index_1.genAIUID)(parseJSON.toJSON(), sessionId);
192
+ appInstance = new concepts_1.App(nodes);
193
+ }
194
+ // 初始化批量操作对象
195
+ const batchActions = {
196
+ uuid: (0, uuid_1.v4)().replace(/-/g, ''), // 生成无连字符的 UUID
197
+ actions: [],
198
+ actionMsg: '批量操作数据模型和视图',
199
+ sourceType: 'spec_driven',
200
+ };
201
+ // 通知开始收集操作
202
+ app.emit('collect:start', { actionMsg: '批量操作数据模型和视图' });
203
+ // 第三阶段:生成批量操作
204
+ // 获取不同类型的处理器
205
+ const typeHandlers = createTypeHandlers(appInstance, app);
206
+ // 遍历每个项目,生成对应的批量操作
207
+ for (const { type: itemType, name: itemName, action } of itemTypes) {
208
+ // 跳过未知类型或无名称的项目
209
+ if (itemType === 'unknown' || !itemName)
210
+ continue;
211
+ try {
212
+ const handler = typeHandlers[itemType];
213
+ if (!handler)
214
+ continue;
215
+ // 根据操作类型执行不同的处理逻辑
216
+ if (action === 'delete') {
217
+ // 删除操作:查找已存在的对象并删除
218
+ const existingNode = handler.findExisting(itemName);
219
+ if (existingNode) {
220
+ // 在调试模式下实际执行删除
221
+ if (type === 'debug') {
222
+ existingNode.delete(existingNode);
223
+ }
224
+ // 添加删除操作到批量操作列表
225
+ batchActions.actions.push({
226
+ action: 'delete',
227
+ path: existingNode.nodePath,
228
+ object: null,
229
+ });
230
+ }
231
+ else {
232
+ // 要删除的对象不存在,记录错误
233
+ errors.push({
234
+ item: itemName,
235
+ type: itemType,
236
+ error: new Error(`要删除的对象不存在: ${handler.path} - ${itemName}`),
237
+ });
238
+ }
239
+ }
240
+ else {
241
+ // 创建或更新操作:从解析的实例中获取 NASL 对象
242
+ const naslObject = handler.findMethod(itemName);
243
+ if (!naslObject) {
244
+ errors.push({
245
+ item: itemName,
246
+ type: itemType,
247
+ error: new Error(`未找到对应的 NASL 对象: ${handler.path} - ${itemName}`),
248
+ });
249
+ continue;
250
+ }
251
+ // 特殊处理:对于 view 类型,如果父级概念是 View,则跳过处理
252
+ // 这可能是为了避免嵌套视图的问题
253
+ if (itemType === 'view' && naslObject.parentNode?.concept === 'View') {
254
+ continue;
255
+ }
256
+ // 检查目标应用中是否已存在同名对象
257
+ const existingNode = handler.findExisting(itemName);
258
+ let finalAction = 'create';
259
+ let path = '';
260
+ if (existingNode) {
261
+ // 存在同名对象,标记为更新操作
262
+ finalAction = 'update';
263
+ path = existingNode.nodePath;
264
+ // 在调试模式下先删除已存在的对象
265
+ if (type === 'debug') {
266
+ existingNode.delete();
267
+ }
268
+ }
269
+ // 在调试模式下添加新对象
270
+ if (type === 'debug') {
271
+ handler.addMethod(naslObject.toJSON());
272
+ }
273
+ // 添加创建或更新操作到批量操作列表
274
+ batchActions.actions.push({
275
+ action: finalAction,
276
+ path: path || handler.path,
277
+ object: naslObject.toJSON(),
278
+ });
279
+ }
280
+ }
281
+ catch (error) {
282
+ // 记录处理过程中的错误
283
+ errors.push({
284
+ item: itemName,
285
+ type: itemType,
286
+ error: error,
287
+ });
288
+ }
289
+ }
290
+ // 第四阶段:错误处理和结果返回
291
+ // 如果有错误发生,在控制台输出错误信息(但不中断执行)
292
+ if (errors.length > 0) {
293
+ console.error('批量处理过程中发现错误:', errors.length);
294
+ }
295
+ // 通知收集操作结束
296
+ app.emit('collect:end');
297
+ // 构建返回结果,基础结果包含批量操作
298
+ let result = {
299
+ batchActions,
300
+ };
301
+ // 调试模式下返回额外的调试信息
302
+ if (type === 'debug') {
303
+ result = {
304
+ ...result,
305
+ accumulatedTsCode, // 累积的 TypeScript 代码
306
+ parseJSON, // 解析后的 JSON 对象
307
+ errors, // 错误列表
308
+ };
309
+ }
310
+ // 计算并输出执行时间
311
+ const endTime = performance.now();
312
+ console.log(`transform2BatchActions 执行时间: ${endTime - startTime}ms`);
313
+ return result;
314
+ };
315
+ exports.transform2BatchActions = transform2BatchActions;
316
+ /**
317
+ * 辅助函数:从路径项中提取索引
318
+ * @param pathItem - 路径项,如 'entities[0]'
319
+ * @returns 索引数字,如果没有则返回 undefined
320
+ */
321
+ const extractIndex = (pathItem) => {
322
+ const match = pathItem.match(/\[(\d+)\]$/);
323
+ return match ? parseInt(match[1], 10) : undefined;
324
+ };
325
+ /**
326
+ * 辅助函数:从路径项中提取父级键名
327
+ * @param pathItem - 路径片段,如 'entities[0]' 或 'dataSources[name=defaultDS]'
328
+ * @returns 父级键名,如 'entities' 或 'dataSources'
329
+ */
330
+ const getParentKey = (pathItem) => {
331
+ return pathItem.replace(/\[.*\]$/, '');
332
+ };
333
+ /**
334
+ * 将批量操作应用到 app 实例
335
+ * 处理批量操作(create/update/delete),并将其应用到 app 中
336
+ * @param app - NASL 应用实例,需传入 Vue 劫持后的响应式 app
337
+ * @param batchActions - 需要应用的批量操作
338
+ */
339
+ const applyBatchActions = (app, batchActions) => {
340
+ const { actionMsg, sourceType, actions } = batchActions;
341
+ app.emit('collect:start', {
342
+ actionMsg,
343
+ sourceType,
344
+ });
345
+ for (const event of actions) {
346
+ const { action, path, object } = event;
347
+ try {
348
+ switch (action) {
349
+ case 'create': {
350
+ const pathArr = (0, utils_1.splitPath)(path) || [];
351
+ const lastPathItem = pathArr?.pop();
352
+ if (!lastPathItem)
353
+ break;
354
+ const parentPath = pathArr.join('.');
355
+ const parentKey = getParentKey(lastPathItem);
356
+ const index = extractIndex(lastPathItem);
357
+ const parentNode = app.findNodeByPath(parentPath);
358
+ if (!parentNode)
359
+ break;
360
+ const node = concepts_1.BaseNode.from(object);
361
+ node.createNode({
362
+ parentNode,
363
+ parentKey,
364
+ index,
365
+ });
366
+ break;
367
+ }
368
+ case 'delete': {
369
+ const node = app.findNodeByPath(path);
370
+ node?.delete();
371
+ break;
372
+ }
373
+ case 'update': {
374
+ const node = app.findNodeByPath(path);
375
+ node?.update(object);
376
+ break;
377
+ }
378
+ }
379
+ }
380
+ catch (error) {
381
+ console.error(`Error applying ${action} operation for path ${path}:`, error);
382
+ }
383
+ }
384
+ app.emit('collect:end');
385
+ };
386
+ exports.applyBatchActions = applyBatchActions;
387
+ //# sourceMappingURL=transform2BatchActions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transform2BatchActions.js","sourceRoot":"","sources":["../../src/natural/transform2BatchActions.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { naslTypes } from './transforms/utils';
2
- export declare function transformTSCode(tsCode: string, contextLogicName?: string, unNeedUID?: boolean, needThrowError?: boolean): any;
3
- export declare function tryTransformTSCode(tsCode: string, contextLogicName: string, unNeedUID?: boolean, needThrowError?: boolean): naslTypes.Logic;
2
+ export declare function transformTSCode(tsCode: string, contextLogicName?: string, unNeedUID?: boolean, needThrowError?: boolean, source?: string): any;
3
+ export declare function tryTransformTSCode(tsCode: string, contextLogicName: string, unNeedUID?: boolean, needThrowError?: boolean, source?: string): naslTypes.Logic;
4
4
  export declare function parseNaturalTSLogic(tsCode: string): any;
5
5
  export declare function transformTSCodeEx(answer: any, activeLogic: any, context: any): void;
6
6
  export declare function transformTSCodeToExpression(answer: any, context: any): naslTypes.LogicItemNode[];
@@ -1 +1 @@
1
- {"version":3,"file":"transformTSCode.d.ts","sourceRoot":"","sources":["../../src/natural/transformTSCode.ts"],"names":[],"mappings":"AAIA,OAAO,EAAc,SAAS,EAA2C,MAAM,oBAAoB,CAAC;AA2FpG,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,gBAAgB,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,OAAO,EAAE,cAAc,CAAC,EAAE,OAAO,OA8BvH;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,OAAO,EAAE,cAAc,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC,KAAK,CAQ3I;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,OAEjD;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,QA4B5E;AAED,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,6BAYpE"}
1
+ {"version":3,"file":"transformTSCode.d.ts","sourceRoot":"","sources":["../../src/natural/transformTSCode.ts"],"names":[],"mappings":"AAIA,OAAO,EAAc,SAAS,EAA2C,MAAM,oBAAoB,CAAC;AA4FpG,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,gBAAgB,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,OAAO,EAAE,cAAc,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,MAAM,OA8BxI;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,OAAO,EAAE,cAAc,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC,KAAK,CAQ5J;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,OAEjD;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,QA4B5E;AAED,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,6BAYpE"}
@@ -38,7 +38,7 @@ function getLogicTypeFromName(logicName) {
38
38
  return 'view_logic';
39
39
  return 'global_logic';
40
40
  }
41
- function transformTSCode2Logic(body, root, contextLogicName, logicNames, needThrowError) {
41
+ function transformTSCode2Logic(body, root, contextLogicName, logicNames, needThrowError, source) {
42
42
  const logic = new utils_1.naslTypes.Logic();
43
43
  logic.body = [
44
44
  new utils_1.naslTypes.Start(),
@@ -86,7 +86,8 @@ function transformTSCode2Logic(body, root, contextLogicName, logicNames, needThr
86
86
  logic,
87
87
  logicType: getLogicTypeFromName(contextLogicName),
88
88
  logicNames,
89
- needThrowError
89
+ needThrowError,
90
+ source
90
91
  });
91
92
  item && logic.body.push(item);
92
93
  });
@@ -114,7 +115,7 @@ function checkFormat(tsCode) {
114
115
  (0, utils_1.throwError)(undefined, '格式不正确');
115
116
  }
116
117
  }
117
- function transformTSCode(tsCode, contextLogicName, unNeedUID, needThrowError) {
118
+ function transformTSCode(tsCode, contextLogicName, unNeedUID, needThrowError, source) {
118
119
  checkFormat(tsCode);
119
120
  if (!contextLogicName) {
120
121
  const functionRE = /function\s+(\w+)\s*\(/;
@@ -135,10 +136,10 @@ function transformTSCode(tsCode, contextLogicName, unNeedUID, needThrowError) {
135
136
  if (needHandleFuncs?.length > 1) {
136
137
  // 获取多个逻辑的name
137
138
  const logicNames = needHandleFuncs.map((item) => item?.id?.name || item?.declaration?.id?.name);
138
- logics = needHandleFuncs.map((item) => transformTSCode2Logic(item, root, contextLogicName, logicNames, needThrowError));
139
+ logics = needHandleFuncs.map((item) => transformTSCode2Logic(item, root, contextLogicName, logicNames, needThrowError, source));
139
140
  }
140
141
  else {
141
- logics = transformTSCode2Logic(needHandleFuncs[0], root, contextLogicName, [], needThrowError);
142
+ logics = transformTSCode2Logic(needHandleFuncs[0], root, contextLogicName, [], needThrowError, source);
142
143
  }
143
144
  if (!unNeedUID) {
144
145
  const { node: newLogic } = (0, tools_1.genAIUID)(logics, 'nl2logic');
@@ -149,13 +150,13 @@ function transformTSCode(tsCode, contextLogicName, unNeedUID, needThrowError) {
149
150
  }
150
151
  }
151
152
  exports.transformTSCode = transformTSCode;
152
- function tryTransformTSCode(tsCode, contextLogicName, unNeedUID, needThrowError) {
153
+ function tryTransformTSCode(tsCode, contextLogicName, unNeedUID, needThrowError, source) {
153
154
  if (tsCode.includes('```')) {
154
155
  const cap = tsCode.match(/```.*\n([\s\S]+?)```/);
155
156
  if (cap)
156
157
  tsCode = cap[1].trim();
157
158
  }
158
- return transformTSCode(tsCode, contextLogicName, unNeedUID, needThrowError);
159
+ return transformTSCode(tsCode, contextLogicName, unNeedUID, needThrowError, source);
159
160
  }
160
161
  exports.tryTransformTSCode = tryTransformTSCode;
161
162
  function parseNaturalTSLogic(tsCode) {
@@ -1 +1 @@
1
- {"version":3,"file":"transformTSCode.js","sourceRoot":"","sources":["../../src/natural/transformTSCode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transformTSCode.js","sourceRoot":"","sources":["../../src/natural/transformTSCode.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"transform2Logic.d.ts","sourceRoot":"","sources":["../../../src/natural/transforms/transform2Logic.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAA2C,eAAe,EAAE,MAAM,SAAS,CAAC;AAW1G,wBAAgB,kCAAkC,CAAC,IAAI,EAAE,UAAU,CAAC,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,EAAE,sBAAsB,EAAE,UAAU,CAAC,WAAW,EAAE,OAAO,EAAE,eAAe,GAAG,SAAS,CAAC,KAAK,CA6E5M;AAED,wBAAgB,iCAAiC,CAAC,IAAI,EAAE,UAAU,CAAC,uBAAuB,GAAG,UAAU,CAAC,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,GAAG,SAAS,CAAC,KAAK,CAiB/L;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,UAAU,CAAC,uBAAuB,GAAG,UAAU,CAAC,kBAAkB,GAAG,UAAU,CAAC,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,GAAG,SAAS,CAAC,KAAK,CAM9M"}
1
+ {"version":3,"file":"transform2Logic.d.ts","sourceRoot":"","sources":["../../../src/natural/transforms/transform2Logic.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAA2C,eAAe,EAAqB,MAAM,SAAS,CAAC;AAW7H,wBAAgB,kCAAkC,CAAC,IAAI,EAAE,UAAU,CAAC,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,EAAE,sBAAsB,EAAE,UAAU,CAAC,WAAW,EAAE,OAAO,EAAE,eAAe,GAAG,SAAS,CAAC,KAAK,CA6E5M;AAED,wBAAgB,iCAAiC,CAAC,IAAI,EAAE,UAAU,CAAC,uBAAuB,GAAG,UAAU,CAAC,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,GAAG,SAAS,CAAC,KAAK,CAiB/L;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,UAAU,CAAC,uBAAuB,GAAG,UAAU,CAAC,kBAAkB,GAAG,UAAU,CAAC,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,GAAG,SAAS,CAAC,KAAK,CAM9M"}
@@ -25,6 +25,7 @@ function transformFunctionDeclaration2Logic(func, contextLogicName, currentPosit
25
25
  if (currentPositionComment) {
26
26
  statements = statements.filter((stat) => stat.start > currentPositionComment.start);
27
27
  }
28
+ logic.description = (0, utils_1.fetchFromComments)(func.leadingComments);
28
29
  const newStatements = [];
29
30
  statements.forEach((node, index) => {
30
31
  if (node?.leadingComments?.length) {
@@ -1 +1 @@
1
- {"version":3,"file":"transform2Logic.js","sourceRoot":"","sources":["../../../src/natural/transforms/transform2Logic.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transform2Logic.js","sourceRoot":"","sources":["../../../src/natural/transforms/transform2Logic.ts"],"names":[],"mappings":"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"}