@lcap/nasl 3.8.2-beta.9 → 3.8.3-beta.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.
- package/ai-engineer.config.js +617 -0
- package/out/common/BaseNode.d.ts +9 -4
- package/out/common/BaseNode.js +43 -10
- package/out/common/BaseNode.js.map +1 -1
- package/out/concepts/AuthLogicForCallInterface__.js +2 -50
- package/out/concepts/AuthLogicForCallInterface__.js.map +1 -1
- package/out/concepts/BackendVariable__.js +16 -1
- package/out/concepts/BackendVariable__.js.map +1 -1
- package/out/concepts/BindAttribute__.js +12 -4
- package/out/concepts/BindAttribute__.js.map +1 -1
- package/out/concepts/BindDirective__.js +1 -1
- package/out/concepts/BindDirective__.js.map +1 -1
- package/out/concepts/BindStyle__.js +1 -1
- package/out/concepts/BindStyle__.js.map +1 -1
- package/out/concepts/BusinessComponent__.js +2 -42
- package/out/concepts/BusinessComponent__.js.map +1 -1
- package/out/concepts/BusinessLogic__.js +2 -50
- package/out/concepts/BusinessLogic__.js.map +1 -1
- package/out/concepts/CallFunction__.d.ts +1 -1
- package/out/concepts/CallFunction__.js +1 -1
- package/out/concepts/CallLogic__.js +7 -1
- package/out/concepts/CallLogic__.js.map +1 -1
- package/out/concepts/CallQueryComponent__.d.ts +1 -0
- package/out/concepts/CallQueryComponent__.js +23 -12
- package/out/concepts/CallQueryComponent__.js.map +1 -1
- package/out/concepts/Destination__.js +11 -8
- package/out/concepts/Destination__.js.map +1 -1
- package/out/concepts/EntityProperty__.js +3 -2
- package/out/concepts/EntityProperty__.js.map +1 -1
- package/out/concepts/Entity__.js +1 -1
- package/out/concepts/Entity__.js.map +1 -1
- package/out/concepts/Identifier__.d.ts +2 -0
- package/out/concepts/Identifier__.js +51 -5
- package/out/concepts/Identifier__.js.map +1 -1
- package/out/concepts/Interface__.js +1 -1
- package/out/concepts/Interface__.js.map +1 -1
- package/out/concepts/Logic__.js +33 -111
- package/out/concepts/Logic__.js.map +1 -1
- package/out/concepts/MemberExpression__.d.ts +1 -1
- package/out/concepts/MemberExpression__.js +15 -3
- package/out/concepts/MemberExpression__.js.map +1 -1
- package/out/concepts/OqlQueryComponent__.js +37 -12
- package/out/concepts/OqlQueryComponent__.js.map +1 -1
- package/out/concepts/OverriddenLogic__.js +2 -50
- package/out/concepts/OverriddenLogic__.js.map +1 -1
- package/out/concepts/Param__.js +5 -4
- package/out/concepts/Param__.js.map +1 -1
- package/out/concepts/ProcessElementV2__.js +4 -0
- package/out/concepts/ProcessElementV2__.js.map +1 -1
- package/out/concepts/ProcessElement__.js +4 -0
- package/out/concepts/ProcessElement__.js.map +1 -1
- package/out/concepts/ProcessV2__.js +4 -0
- package/out/concepts/ProcessV2__.js.map +1 -1
- package/out/concepts/Process__.js +4 -0
- package/out/concepts/Process__.js.map +1 -1
- package/out/concepts/QueryOrderByExpression__.d.ts +0 -1
- package/out/concepts/QueryOrderByExpression__.js +0 -1
- package/out/concepts/QueryOrderByExpression__.js.map +1 -1
- package/out/concepts/Structure__.js +5 -7
- package/out/concepts/Structure__.js.map +1 -1
- package/out/concepts/SubLogic__.js +5 -50
- package/out/concepts/SubLogic__.js.map +1 -1
- package/out/concepts/Variable__.js +5 -0
- package/out/concepts/Variable__.js.map +1 -1
- package/out/concepts/ViewElement__.d.ts +1 -0
- package/out/concepts/ViewElement__.js +16 -6
- package/out/concepts/ViewElement__.js.map +1 -1
- package/out/concepts/View__.js +48 -49
- package/out/concepts/View__.js.map +1 -1
- package/out/natural/genNaturalTS.d.ts +45 -10
- package/out/natural/genNaturalTS.js +57 -33
- package/out/natural/genNaturalTS.js.map +1 -1
- package/out/natural/getContext/getUILib.js +6 -3
- package/out/natural/getContext/getUILib.js.map +1 -1
- package/out/natural/getContext/index.d.ts +20 -7
- package/out/natural/getContext/index.js +143 -23
- package/out/natural/getContext/index.js.map +1 -1
- package/out/natural/getContext/naslStdlibMap.js +8 -8
- package/out/natural/getContext/naslStdlibMap.js.map +1 -1
- package/out/natural/tools.d.ts +16 -0
- package/out/natural/tools.js +110 -2
- package/out/natural/tools.js.map +1 -1
- package/out/natural/transformTS2UI.js +343 -292
- package/out/natural/transformTS2UI.js.map +1 -1
- package/out/natural/transformTSCode.d.ts +3 -5
- package/out/natural/transformTSCode.js +30 -1089
- package/out/natural/transformTSCode.js.map +1 -1
- package/out/natural/transforms/registerTransform.d.ts +7 -0
- package/out/natural/transforms/registerTransform.js +24 -0
- package/out/natural/transforms/registerTransform.js.map +1 -0
- package/out/natural/transforms/transform2LogicItem.d.ts +24 -0
- package/out/natural/transforms/transform2LogicItem.js +1240 -0
- package/out/natural/transforms/transform2LogicItem.js.map +1 -0
- package/out/natural/transforms/transform2TypeAnnotation.d.ts +2 -0
- package/out/natural/transforms/transform2TypeAnnotation.js +86 -0
- package/out/natural/transforms/transform2TypeAnnotation.js.map +1 -0
- package/out/natural/transforms/utils.d.ts +8 -0
- package/out/natural/transforms/utils.js +59 -0
- package/out/natural/transforms/utils.js.map +1 -0
- package/out/server/getLogics.js +12 -12
- package/out/server/getLogics.js.map +1 -1
- package/out/server/naslServer.d.ts +2 -2
- package/out/server/naslServer.js +48 -18
- package/out/server/naslServer.js.map +1 -1
- package/out/server/semanticData.d.ts +32 -0
- package/out/server/semanticData.js +371 -0
- package/out/server/semanticData.js.map +1 -0
- package/out/server/translator.js +5 -0
- package/out/server/translator.js.map +1 -1
- package/out/templator/block2nasl/jsx2nasl/index.d.ts +5 -0
- package/out/templator/block2nasl/jsx2nasl/index.js +15 -0
- package/out/templator/block2nasl/jsx2nasl/index.js.map +1 -0
- package/out/templator/block2nasl/jsx2nasl/transform-expression2nasl.d.ts +3 -0
- package/out/templator/block2nasl/jsx2nasl/transform-expression2nasl.js +213 -0
- package/out/templator/block2nasl/jsx2nasl/transform-expression2nasl.js.map +1 -0
- package/out/templator/block2nasl/jsx2nasl/transform-func2nasl.d.ts +14 -0
- package/out/templator/block2nasl/jsx2nasl/transform-func2nasl.js +201 -0
- package/out/templator/block2nasl/jsx2nasl/transform-func2nasl.js.map +1 -0
- package/out/templator/block2nasl/jsx2nasl/transform-tstype2nasl.d.ts +4 -0
- package/out/templator/block2nasl/jsx2nasl/transform-tstype2nasl.js +186 -0
- package/out/templator/block2nasl/jsx2nasl/transform-tstype2nasl.js.map +1 -0
- package/out/templator/block2nasl/jsx2nasl/transform-tsx2nasl.d.ts +28 -0
- package/out/templator/block2nasl/jsx2nasl/transform-tsx2nasl.js +336 -0
- package/out/templator/block2nasl/jsx2nasl/transform-tsx2nasl.js.map +1 -0
- package/out/templator/block2nasl/jsx2nasl/utils.d.ts +2 -0
- package/out/templator/block2nasl/jsx2nasl/utils.js +26 -0
- package/out/templator/block2nasl/jsx2nasl/utils.js.map +1 -0
- package/out/templator/block2nasl/transformBlock2Nasl.d.ts +10 -0
- package/out/templator/block2nasl/transformBlock2Nasl.js +122 -0
- package/out/templator/block2nasl/transformBlock2Nasl.js.map +1 -0
- package/out/templator/block2nasl/viewMergeBlock.d.ts +9 -0
- package/out/templator/block2nasl/viewMergeBlock.js +111 -0
- package/out/templator/block2nasl/viewMergeBlock.js.map +1 -0
- package/out/translator/types.d.ts +2 -0
- package/out/translator/utils.js +1 -1
- package/out/translator/utils.js.map +1 -1
- package/out/utils/index.js +0 -4
- package/out/utils/index.js.map +1 -1
- package/out/utils/language-cache/constant.d.ts +2 -1
- package/out/utils/language-cache/constant.js +1 -0
- package/out/utils/language-cache/constant.js.map +1 -1
- package/out/utils/language-cache/nasl.d.ts +1 -0
- package/out/utils/language-cache/nasl.js +9 -1
- package/out/utils/language-cache/nasl.js.map +1 -1
- package/package.json +6 -2
- package/sandbox-natural/stdlib/nasl.core.d.ts +54 -0
- package/sandbox-natural/stdlib/nasl.oql.d.ts +22 -0
- package/sandbox-natural/stdlib/nasl.ui.d.ts +78 -0
- package/sandbox-natural/stdlib/nasl.ui.h5.d.ts +1684 -1643
- package/sandbox-natural/stdlib/nasl.ui.h5.json +15746 -15045
- package/sandbox-natural/stdlib/nasl.ui.pc.d.ts +5341 -5154
- package/sandbox-natural/stdlib/nasl.ui.pc.json +31176 -30681
- package/sandbox-natural/stdlib/{nasl.util.ts → nasl.util.d.ts} +49 -43
- package/src/common/BaseNode.ts +50 -8
- package/src/concepts/AuthLogicForCallInterface__.ts +3 -56
- package/src/concepts/BackendVariable__.ts +16 -1
- package/src/concepts/BindAttribute__.ts +18 -13
- package/src/concepts/BindDirective__.ts +1 -1
- package/src/concepts/BindStyle__.ts +1 -1
- package/src/concepts/BusinessComponent__.ts +6 -51
- package/src/concepts/BusinessLogic__.ts +4 -56
- package/src/concepts/CallFunction__.ts +1 -1
- package/src/concepts/CallLogic__.ts +21 -16
- package/src/concepts/CallQueryComponent__.ts +26 -12
- package/src/concepts/Destination__.ts +14 -12
- package/src/concepts/EntityProperty__.ts +5 -5
- package/src/concepts/Entity__.ts +1 -1
- package/src/concepts/Identifier__.ts +57 -6
- package/src/concepts/Interface__.ts +1 -1
- package/src/concepts/Logic__.ts +44 -134
- package/src/concepts/MemberExpression__.ts +21 -7
- package/src/concepts/OqlQueryComponent__.ts +29 -5
- package/src/concepts/OverriddenLogic__.ts +4 -56
- package/src/concepts/Param__.ts +5 -4
- package/src/concepts/ProcessElementV2__.ts +4 -0
- package/src/concepts/ProcessElement__.ts +4 -0
- package/src/concepts/ProcessV2__.ts +5 -0
- package/src/concepts/Process__.ts +4 -0
- package/src/concepts/QueryOrderByExpression__.ts +0 -1
- package/src/concepts/Structure__.ts +5 -7
- package/src/concepts/SubLogic__.ts +6 -56
- package/src/concepts/Variable__.ts +9 -5
- package/src/concepts/ViewElement__.ts +24 -7
- package/src/concepts/View__.ts +75 -76
- package/src/natural/genNaturalTS.ts +88 -39
- package/src/natural/getContext/getUILib.ts +6 -3
- package/src/natural/getContext/index.ts +125 -23
- package/src/natural/getContext/naslStdlibMap.ts +8 -8
- package/src/natural/tools.ts +107 -2
- package/src/natural/transformTS2UI.ts +190 -137
- package/src/natural/transformTSCode.ts +29 -1055
- package/src/natural/transforms/registerTransform.ts +34 -0
- package/src/natural/transforms/transform2LogicItem.ts +1335 -0
- package/src/natural/transforms/transform2TypeAnnotation.ts +77 -0
- package/src/natural/transforms/utils.ts +25 -0
- package/src/server/getLogics.ts +12 -12
- package/src/server/naslServer.ts +54 -19
- package/src/server/semanticData.ts +447 -0
- package/src/server/translator.ts +5 -0
- package/src/templator/block2nasl/jsx2nasl/index.ts +11 -0
- package/src/templator/block2nasl/jsx2nasl/transform-expression2nasl.ts +238 -0
- package/src/templator/block2nasl/jsx2nasl/transform-func2nasl.ts +241 -0
- package/src/templator/block2nasl/jsx2nasl/transform-tstype2nasl.ts +213 -0
- package/src/templator/block2nasl/jsx2nasl/transform-tsx2nasl.ts +422 -0
- package/src/templator/block2nasl/jsx2nasl/utils.ts +19 -0
- package/src/templator/block2nasl/transformBlock2Nasl.ts +99 -0
- package/src/templator/block2nasl/viewMergeBlock.ts +150 -0
- package/src/translator/types.ts +2 -0
- package/src/translator/utils.ts +2 -2
- package/src/utils/index.ts +0 -4
- package/src/utils/language-cache/constant.ts +1 -0
- package/src/utils/language-cache/nasl.ts +6 -0
- package/test/concepts/logic/__snapshots__/toEmbeddedTS.spec.ts.snap +182 -0
- package/test/concepts/logic/constant.ts +5 -0
- package/test/concepts/logic/fixtures/variable-host-call-logic-member-expression.json +267 -0
- package/test/concepts/logic/fixtures/variable-host-call-logic-nested-member-expression copy.json +457 -0
- package/test/concepts/logic/fixtures/variable-host-call-logic-with-handle-error-member-expression.json +267 -0
- package/test/concepts/logic/toEmbeddedTS.spec.ts +15 -0
- package/test/tdd/dataQuery/QueryFieldExpression/case1/ast.json +7 -0
- package/test/tdd/dataQuery/QueryFieldExpression/case1/natural.ts.txt +1 -0
- package/test/tdd/dataQuery/QueryFieldExpression/case2/ast.json +7 -0
- package/test/tdd/dataQuery/QueryFieldExpression/case2/natural.ts.txt +1 -0
- package/test/tdd/transform/case1/ast.json +243 -0
- package/test/tdd/transform/case1/natural.ts.md +20 -0
- package/test/tdd/transform/case2/ast.json +207 -0
- package/test/tdd/transform/case2/natural.ts.md +12 -0
- package/test/tdd.test.js +10 -0
- package/test/tdd.transform.test.js +38 -0
- package/test/utils.js +40 -0
- package/sandbox-natural/stdlib/nasl.core.ts +0 -36
- package/sandbox-natural/stdlib/nasl.oql.ts +0 -14
- package/sandbox-natural/stdlib/nasl.ui.pre.d.ts +0 -90
- package/sandbox-natural/stdlib/nasl.ui.ts +0 -63
package/out/natural/tools.js
CHANGED
|
@@ -23,8 +23,9 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
23
23
|
return result;
|
|
24
24
|
};
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
-
exports.getUnImportedModulesForLogic = exports.getUsedModule = exports.getLogicType = void 0;
|
|
26
|
+
exports.deduceTypeAll = exports.deduceType = exports.getUnImportedModulesForLogic = exports.getUsedModule = exports.getLogicType = void 0;
|
|
27
27
|
const utils = __importStar(require("../utils"));
|
|
28
|
+
const translator_1 = require("../translator");
|
|
28
29
|
// 获取当前逻辑的类型
|
|
29
30
|
const getLogicType = (activeLogic) => {
|
|
30
31
|
const { parentNode } = activeLogic || {};
|
|
@@ -57,7 +58,7 @@ const getUsedModule = (json) => {
|
|
|
57
58
|
useModule.push(item);
|
|
58
59
|
}
|
|
59
60
|
}
|
|
60
|
-
if (node.concept === 'ViewElement') {
|
|
61
|
+
if (node.concept === 'ViewElement' && node?.tag) {
|
|
61
62
|
const symbol = utils.kebab2Camel(node.tag);
|
|
62
63
|
const item = {
|
|
63
64
|
symbol,
|
|
@@ -159,4 +160,111 @@ const getUnImportedModulesForLogic = (json, app, material) => {
|
|
|
159
160
|
return needImportModule;
|
|
160
161
|
};
|
|
161
162
|
exports.getUnImportedModulesForLogic = getUnImportedModulesForLogic;
|
|
163
|
+
/**
|
|
164
|
+
* 找到当前节点所使用的当前逻辑、服务端逻辑、组件相关的推导类型
|
|
165
|
+
* @param app: 当前应用
|
|
166
|
+
* @returns 推导类型集合
|
|
167
|
+
*/
|
|
168
|
+
const deduceType = async (app, activeDesignerNode) => {
|
|
169
|
+
const typeMap = {};
|
|
170
|
+
const { logics } = app;
|
|
171
|
+
const state = (0, translator_1.createCompilerState)('', { descriptionComment: true, needNamespace: true });
|
|
172
|
+
logics.forEach((logic) => {
|
|
173
|
+
if (logic?.returns?.length && !logic.name.startsWith('LCAP')) {
|
|
174
|
+
const ret = logic.returns[0];
|
|
175
|
+
const typeAnnotation = ret?.typeAnnotation || ret?.__TypeAnnotation;
|
|
176
|
+
if (typeAnnotation)
|
|
177
|
+
typeMap[ret.nodePath] = typeAnnotation.toNaturalTS(state);
|
|
178
|
+
}
|
|
179
|
+
});
|
|
180
|
+
const params = activeDesignerNode?.params.concat(activeDesignerNode?.virtualParams || []);
|
|
181
|
+
if (params?.length) {
|
|
182
|
+
let code = '';
|
|
183
|
+
params?.forEach((param, index) => {
|
|
184
|
+
let curCode = '';
|
|
185
|
+
if (param.name === 'event')
|
|
186
|
+
curCode += '';
|
|
187
|
+
else
|
|
188
|
+
curCode += param.toNaturalTS(state);
|
|
189
|
+
if (curCode && index !== params.length - 1)
|
|
190
|
+
curCode += ', ';
|
|
191
|
+
code += curCode;
|
|
192
|
+
});
|
|
193
|
+
if (code)
|
|
194
|
+
typeMap[activeDesignerNode.nodePath] = code;
|
|
195
|
+
}
|
|
196
|
+
const view = activeDesignerNode?.concept === 'View' ? activeDesignerNode?.elements?.[0] : activeDesignerNode.getAncestor('View')?.elements?.[0];
|
|
197
|
+
if (view) {
|
|
198
|
+
const dataSchemaMap = {};
|
|
199
|
+
utils.traverse(({ node }) => {
|
|
200
|
+
if (node.concept === 'ViewElement') {
|
|
201
|
+
const dataSchema = node.bindAttrs.find((_) => _.name === 'dataSchema');
|
|
202
|
+
if (dataSchema)
|
|
203
|
+
dataSchemaMap[dataSchema.nodePath] = node;
|
|
204
|
+
}
|
|
205
|
+
}, { node: view });
|
|
206
|
+
await Promise.all(Object.entries(dataSchemaMap).map(async ([nodePath, node]) => {
|
|
207
|
+
const res = await app.naslServer.getDataSchemaStructureOrTypeAnnotation(node);
|
|
208
|
+
if (res) {
|
|
209
|
+
const dataSchemaTs = res.toNaturalTS(state);
|
|
210
|
+
typeMap[nodePath] = dataSchemaTs;
|
|
211
|
+
}
|
|
212
|
+
}));
|
|
213
|
+
}
|
|
214
|
+
return { typeMap };
|
|
215
|
+
};
|
|
216
|
+
exports.deduceType = deduceType;
|
|
217
|
+
/**
|
|
218
|
+
* 组合所有的可推导类型
|
|
219
|
+
* @param app: 当前应用
|
|
220
|
+
* @returns 推导类型集合
|
|
221
|
+
*/
|
|
222
|
+
const deduceTypeAll = async (app) => {
|
|
223
|
+
const typeMap = {};
|
|
224
|
+
const { logics } = app;
|
|
225
|
+
const state = (0, translator_1.createCompilerState)('', { descriptionComment: true, needNamespace: true });
|
|
226
|
+
logics.forEach((logic) => {
|
|
227
|
+
if (logic?.returns?.length && !logic.name.startsWith('LCAP')) {
|
|
228
|
+
const ret = logic.returns[0];
|
|
229
|
+
const typeAnnotation = ret?.typeAnnotation || ret?.__TypeAnnotation;
|
|
230
|
+
if (typeAnnotation)
|
|
231
|
+
typeMap[ret.nodePath] = typeAnnotation.toNaturalTS(state);
|
|
232
|
+
}
|
|
233
|
+
});
|
|
234
|
+
const dataSchemaMap = {};
|
|
235
|
+
utils.traverse(({ node }) => {
|
|
236
|
+
if (node?.concept === 'ViewElement') {
|
|
237
|
+
const dataSchema = node.bindAttrs.find((_) => _.name === 'dataSchema');
|
|
238
|
+
if (dataSchema)
|
|
239
|
+
dataSchemaMap[dataSchema.nodePath] = node;
|
|
240
|
+
}
|
|
241
|
+
if (node?.concept === 'Logic' && node?.parentNode?.concept === 'BindEvent') {
|
|
242
|
+
const params = node?.params.concat(node?.virtualParams || []);
|
|
243
|
+
if (params?.length) {
|
|
244
|
+
let code = '';
|
|
245
|
+
params?.forEach((param, index) => {
|
|
246
|
+
let curCode = '';
|
|
247
|
+
if (param.name === 'event')
|
|
248
|
+
curCode += '';
|
|
249
|
+
else
|
|
250
|
+
curCode += param.toNaturalTS(state);
|
|
251
|
+
if (curCode && index !== params.length - 1)
|
|
252
|
+
curCode += ', ';
|
|
253
|
+
code += curCode;
|
|
254
|
+
});
|
|
255
|
+
if (code)
|
|
256
|
+
typeMap[node.nodePath] = code;
|
|
257
|
+
}
|
|
258
|
+
}
|
|
259
|
+
}, { node: app }, { mode: 'onlyArray' });
|
|
260
|
+
await Promise.all(Object.entries(dataSchemaMap).map(async ([nodePath, node]) => {
|
|
261
|
+
const res = await app.naslServer.getDataSchemaStructureOrTypeAnnotation(node);
|
|
262
|
+
if (res) {
|
|
263
|
+
const dataSchemaTs = res.toNaturalTS(state);
|
|
264
|
+
typeMap[nodePath] = dataSchemaTs;
|
|
265
|
+
}
|
|
266
|
+
}));
|
|
267
|
+
return { typeMapAll: typeMap };
|
|
268
|
+
};
|
|
269
|
+
exports.deduceTypeAll = deduceTypeAll;
|
|
162
270
|
//# sourceMappingURL=tools.js.map
|
package/out/natural/tools.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/natural/tools.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AACA,gDAAkC;
|
|
1
|
+
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/natural/tools.ts"],"names":[],"mappings":"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"}
|