@lcap/nasl 0.3.13 → 0.3.14-beta
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/out/service/logic/logic.d.ts +9 -0
- package/out/service/logic/logic.js +7 -0
- package/out/service/logic/logic.js.map +1 -1
- package/out/types/app/Service.js +9 -1
- package/out/types/app/Service.js.map +1 -1
- package/out/types/config.d.ts +1 -0
- package/out/types/config.js +1 -0
- package/out/types/config.js.map +1 -1
- package/out/types/data/EntityProperty.d.ts +4 -0
- package/out/types/data/EntityProperty.js +7 -0
- package/out/types/data/EntityProperty.js.map +1 -1
- package/out/types/data/Interface.js +2 -1
- package/out/types/data/Interface.js.map +1 -1
- package/out/types/data/genBlock/genCreateBlock.js +4 -5
- package/out/types/data/genBlock/genCreateBlock.js.map +1 -1
- package/out/types/data/genBlock/genListViewBlock.js +1 -1
- package/out/types/data/genBlock/genListViewBlock.js.map +1 -1
- package/out/types/data/genBlock/genTableBlock.js +1 -1
- package/out/types/data/genBlock/genTableBlock.js.map +1 -1
- package/out/types/data/genBlock/genUpdateBlock.js +4 -5
- package/out/types/data/genBlock/genUpdateBlock.js.map +1 -1
- package/out/types/logic/Logic.d.ts +16 -0
- package/out/types/logic/Logic.js +39 -0
- package/out/types/logic/Logic.js.map +1 -1
- package/out/types/logic/LogicItem.d.ts +2 -2
- package/out/types/logic/LogicItem.js +91 -35
- package/out/types/logic/LogicItem.js.map +1 -1
- package/out/types/logic/translator.js +66 -50
- package/out/types/logic/translator.js.map +1 -1
- package/out/types/typeCheck.js +3 -0
- package/out/types/typeCheck.js.map +1 -1
- package/package.json +1 -1
- package/src/service/logic/logic.js +7 -0
- package/src/types/app/Service.ts +9 -1
- package/src/types/config.ts +1 -0
- package/src/types/data/EntityProperty.ts +5 -0
- package/src/types/data/Interface.ts +3 -1
- package/src/types/data/genBlock/genCreateBlock.ts +4 -5
- package/src/types/data/genBlock/genListViewBlock.ts +1 -1
- package/src/types/data/genBlock/genTableBlock.ts +1 -1
- package/src/types/data/genBlock/genUpdateBlock.ts +4 -6
- package/src/types/logic/Logic.ts +35 -0
- package/src/types/logic/LogicItem.ts +303 -214
- package/src/types/logic/translator.js +64 -50
- package/src/types/typeCheck.ts +4 -0
|
@@ -205,35 +205,42 @@ export default function (source) {
|
|
|
205
205
|
if (node.type === 'CallLogic') {
|
|
206
206
|
if (node.calleeCode.startsWith('callInterface_')) {
|
|
207
207
|
const getParams = (key) => {
|
|
208
|
-
//
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
208
|
+
// 增加参数拼接日志信息
|
|
209
|
+
try {
|
|
210
|
+
// 过滤掉 null 的 param
|
|
211
|
+
const nodeParams = (node.params || []).filter((param) => param !== null && param !== 'null' && param !== '');
|
|
212
|
+
if (key === 'body') {
|
|
213
|
+
let inBody = '';
|
|
214
|
+
const bodyStr = [];
|
|
215
|
+
nodeParams.filter((t) => t.callInterParamValue)
|
|
216
|
+
.forEach((b) => {
|
|
217
|
+
const refTarget = Vertex.getVertexByRef(b.callInterParam);
|
|
218
|
+
if (refTarget.in === 'body') {
|
|
219
|
+
inBody = generateNode(b.callInterParamValue);
|
|
220
|
+
} else if (refTarget.in === '') {
|
|
221
|
+
bodyStr.push(`["${refTarget.name}"]: ${generateNode(b.callInterParamValue)}`);
|
|
222
|
+
}
|
|
223
|
+
});
|
|
224
|
+
|
|
225
|
+
return inBody || `{${bodyStr.join(',')}}`;
|
|
226
|
+
} else {
|
|
227
|
+
return nodeParams
|
|
228
|
+
.filter((param) => {
|
|
229
|
+
const refTarget = Vertex.getVertexByRef(param.callInterParam);
|
|
230
|
+
return refTarget && refTarget.in === key;
|
|
231
|
+
})
|
|
232
|
+
.map((param) => {
|
|
233
|
+
const refTarget = Vertex.getVertexByRef(param.callInterParam);
|
|
234
|
+
const callInterParamValue = nameToCodeForMemberExpression(param.callInterParamValue);
|
|
235
|
+
const value = generateNode(callInterParamValue);
|
|
236
|
+
|
|
237
|
+
return `${safeCodeAsKey(refTarget)}: ${value}`;
|
|
238
|
+
});
|
|
239
|
+
}
|
|
240
|
+
} catch (error) {
|
|
241
|
+
console.log('CallLogic calleeCode: ', node.calleeCode);
|
|
242
|
+
console.log('params type: ', key);
|
|
243
|
+
throw error;
|
|
237
244
|
}
|
|
238
245
|
};
|
|
239
246
|
const key = node.interfaceKey || node.callee || '';
|
|
@@ -264,30 +271,37 @@ export default function (source) {
|
|
|
264
271
|
const key = node.interfaceKey || '';
|
|
265
272
|
const arr = key.split('/');
|
|
266
273
|
const getParams = (key) => {
|
|
267
|
-
//
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
const
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
});
|
|
274
|
-
if (body) {
|
|
275
|
-
return generateNode(body.callInterParamValue);
|
|
276
|
-
}
|
|
277
|
-
return '{}';
|
|
278
|
-
} else {
|
|
279
|
-
return nodeParams
|
|
280
|
-
.filter((param) => {
|
|
274
|
+
// 增加参数拼接日志信息
|
|
275
|
+
try {
|
|
276
|
+
// 过滤掉 null 的 param
|
|
277
|
+
const nodeParams = (node.params || []).filter((param) => param !== null && param !== 'null' && param !== '');
|
|
278
|
+
if (key === 'body') {
|
|
279
|
+
const body = (nodeParams || []).find((param) => {
|
|
281
280
|
const refTarget = Vertex.getVertexByRef(param.callInterParam);
|
|
282
281
|
return refTarget && refTarget.in === key;
|
|
283
|
-
})
|
|
284
|
-
.map((param) => {
|
|
285
|
-
const refTarget = Vertex.getVertexByRef(param.callInterParam);
|
|
286
|
-
const callInterParamValue = nameToCodeForMemberExpression(param.callInterParamValue);
|
|
287
|
-
const value = generateNode(callInterParamValue);
|
|
288
|
-
|
|
289
|
-
return `${safeCodeAsKey(refTarget)}: ${value}`;
|
|
290
282
|
});
|
|
283
|
+
if (body) {
|
|
284
|
+
return generateNode(body.callInterParamValue);
|
|
285
|
+
}
|
|
286
|
+
return '{}';
|
|
287
|
+
} else {
|
|
288
|
+
return nodeParams
|
|
289
|
+
.filter((param) => {
|
|
290
|
+
const refTarget = Vertex.getVertexByRef(param.callInterParam);
|
|
291
|
+
return refTarget && refTarget.in === key;
|
|
292
|
+
})
|
|
293
|
+
.map((param) => {
|
|
294
|
+
const refTarget = Vertex.getVertexByRef(param.callInterParam);
|
|
295
|
+
const callInterParamValue = nameToCodeForMemberExpression(param.callInterParamValue);
|
|
296
|
+
const value = generateNode(callInterParamValue);
|
|
297
|
+
|
|
298
|
+
return `${safeCodeAsKey(refTarget)}: ${value}`;
|
|
299
|
+
});
|
|
300
|
+
}
|
|
301
|
+
} catch (error) {
|
|
302
|
+
console.log('CallInterface interfaceKey: ', node.interfaceKey);
|
|
303
|
+
console.log('params type: ', key);
|
|
304
|
+
throw error;
|
|
291
305
|
}
|
|
292
306
|
};
|
|
293
307
|
|
package/src/types/typeCheck.ts
CHANGED
|
@@ -107,6 +107,10 @@ export default {
|
|
|
107
107
|
}
|
|
108
108
|
}
|
|
109
109
|
|
|
110
|
+
if ((record as any)['test']) {
|
|
111
|
+
this.pushAll([(record as any)['test']], { processComponentId, logicId });
|
|
112
|
+
}
|
|
113
|
+
|
|
110
114
|
if ((record as any)['right'] &&
|
|
111
115
|
(record as any)['right'].level === 'logicNode') {
|
|
112
116
|
this.pushAll([(record as any)['right']], { processComponentId, logicId });
|