@lcap/nasl 4.1.0-creator.3 → 4.1.0-creator.5

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 (33) hide show
  1. package/out/natural/parseNaturalTS.d.ts.map +1 -1
  2. package/out/natural/parseNaturalTS.js +14 -3
  3. package/out/natural/parseNaturalTS.js.map +1 -1
  4. package/out/natural/parseNaturalTSXView.d.ts +3 -0
  5. package/out/natural/parseNaturalTSXView.d.ts.map +1 -1
  6. package/out/natural/parseNaturalTSXView.js +64 -13
  7. package/out/natural/parseNaturalTSXView.js.map +1 -1
  8. package/out/natural/transforms/transform2Enum.d.ts.map +1 -1
  9. package/out/natural/transforms/transform2Enum.js +15 -2
  10. package/out/natural/transforms/transform2Enum.js.map +1 -1
  11. package/out/natural/transforms/transform2Logic.d.ts.map +1 -1
  12. package/out/natural/transforms/transform2Logic.js +5 -0
  13. package/out/natural/transforms/transform2Logic.js.map +1 -1
  14. package/out/natural/transforms/transform2LogicItem.d.ts +2 -0
  15. package/out/natural/transforms/transform2LogicItem.d.ts.map +1 -1
  16. package/out/natural/transforms/transform2LogicItem.js +43 -12
  17. package/out/natural/transforms/transform2LogicItem.js.map +1 -1
  18. package/package.json +12 -12
  19. package/out/debug/apps/24b6fb54-2871-4866-b64b-676bec0f7eb5/embedded/nasl/error.ts +0 -45
  20. package/out/debug/apps/24b6fb54-2871-4866-b64b-676bec0f7eb5/embedded/zystestnew/datasources/defaultDS/entities/StockFinancials.ts +0 -89
  21. package/out/debug/apps/24b6fb54-2871-4866-b64b-676bec0f7eb5/embedded/zystestnew/datasources/defaultDS/entities/Stocks.ts +0 -96
  22. package/out/debug/apps/24b6fb54-2871-4866-b64b-676bec0f7eb5/embedded/zystestnew/datasources/defaultDS.ts +0 -5
  23. package/out/debug/apps/24b6fb54-2871-4866-b64b-676bec0f7eb5/embedded/zystestnew/enums/FinancialStatementType.ts +0 -13
  24. package/out/debug/apps/24b6fb54-2871-4866-b64b-676bec0f7eb5/embedded/zystestnew/logics/getStockFinancialStatements.ts +0 -62
  25. package/out/debug/apps/24b6fb54-2871-4866-b64b-676bec0f7eb5/embedded/zystestnew/roles/DEV-AdminRole.ts +0 -5
  26. package/out/debug/apps/24b6fb54-2871-4866-b64b-676bec0f7eb5/embedded/zystestnew/sqlFunctions/dameng.ts +0 -73
  27. package/out/debug/apps/24b6fb54-2871-4866-b64b-676bec0f7eb5/embedded/zystestnew/sqlFunctions/mysql.ts +0 -67
  28. package/out/debug/apps/24b6fb54-2871-4866-b64b-676bec0f7eb5/embedded/zystestnew/sqlFunctions/oracle.ts +0 -59
  29. package/out/debug/apps/24b6fb54-2871-4866-b64b-676bec0f7eb5/embedded/zystestnew/sqlFunctions/postgresql.ts +0 -30
  30. package/out/debug/apps/24b6fb54-2871-4866-b64b-676bec0f7eb5/embedded/zystestnew/sqlFunctions/vastbase_pg.ts +0 -28
  31. package/out/debug/apps/24b6fb54-2871-4866-b64b-676bec0f7eb5/embedded/zystestnew/structures/FinancialDataItem.ts +0 -9
  32. package/out/debug/apps/anonymous/extension.component.ts +0 -0
  33. package/out/debug/apps/anonymous/nasl.ui.component.ts +0 -7743
@@ -3,8 +3,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.transformCall2Extension = exports.transformCall2Connector = exports.transformCall2Interface = exports.transformAlert2ShowMessage = exports.transformForEach2ForEachStatement = exports.transformForOf2ForEachStatement = exports.transform2ForEachStatement = exports.transformMap2ListTransform = exports.transform2UIFunction = exports.transformCall2CallFunction = exports.transform2CallFunction = exports.transformCall2JSONFunctions = exports.transformCall2Logging = exports.transformCall2ConsoleLog = exports.transformCall2CallDataSourceLogic = exports.transformCall2CallEntityLogic = exports.transformCall2CallViewElementLogic = exports.transformCallFunctionExpression2Match = exports.transformMemberExpression = exports.transformNewExpression = exports.transform2PartialNewComposite = exports.transform2Comment = exports.transform2StringInterpolation = exports.transformReturnStatement2AssignmentOrEnd = exports.transform2NullLiteral = exports.transform2NumericLiteral = exports.transform2DirectiveLiteral = exports.transform2StringLiteral = exports.transform2BooleanLiteral = exports.transformUpdateExpression2Assignment = exports.transform2Assignment = exports.transform2AnonymousFunction = exports.transformIdentifier = exports.transformSwitchStatement2Match = exports.transform2WhileStatement = exports.transform2Break = exports.transform2Continue = exports.transform2IfStatement = exports.transform2BinaryExpression = exports.transform2VariadicExpression = exports.transformCallExpressionToBinaryExpression = exports.transform2Param = exports.fixLogicNode = exports.flatIfStatementForMatch = exports.flatMatchPatternsExpression = exports.getSelectMembers = exports.unflatMemberExpression = exports.flatMemberExpression = exports.fixExpression = exports.TransformManager = void 0;
7
- exports.transform2LogicItem = exports.transformCall2Paginate = exports.transformCall2LogicWithAuth = exports.transformCall2Logic = exports.transformCall2CallViewLogic = void 0;
6
+ exports.transformCall2Interface = exports.transformAlert2ShowMessage = exports.transformForEach2ForEachStatement = exports.transformForOf2ForEachStatement = exports.transform2ForEachStatement = exports.transformMap2ListTransform = exports.transform2UIFunction = exports.transformCall2CallFunction = exports.transform2CallFunction = exports.transform2CallOtherNASLLogic = exports.transform2CallEventLogic = exports.transformCall2JSONFunctions = exports.transformCall2Logging = exports.transformCall2ConsoleLog = exports.transformCall2CallDataSourceLogic = exports.transformCall2CallEntityLogic = exports.transformCall2CallViewElementLogic = exports.transformCallFunctionExpression2Match = exports.transformMemberExpression = exports.transformNewExpression = exports.transform2PartialNewComposite = exports.transform2Comment = exports.transform2StringInterpolation = exports.transformReturnStatement2AssignmentOrEnd = exports.transform2NullLiteral = exports.transform2NumericLiteral = exports.transform2DirectiveLiteral = exports.transform2StringLiteral = exports.transform2BooleanLiteral = exports.transformUpdateExpression2Assignment = exports.transform2Assignment = exports.transform2AnonymousFunction = exports.transformIdentifier = exports.transformSwitchStatement2Match = exports.transform2WhileStatement = exports.transform2Break = exports.transform2Continue = exports.transform2IfStatement = exports.transform2BinaryExpression = exports.transform2VariadicExpression = exports.transformCallExpressionToBinaryExpression = exports.transform2Param = exports.fixLogicNode = exports.flatIfStatementForMatch = exports.flatMatchPatternsExpression = exports.getSelectMembers = exports.unflatMemberExpression = exports.flatMemberExpression = exports.fixExpression = exports.TransformManager = void 0;
7
+ exports.transform2LogicItem = exports.transformCall2Paginate = exports.transformCall2LogicWithAuth = exports.transformCall2Logic = exports.transformCall2CallViewLogic = exports.transformCall2Extension = exports.transformCall2Connector = void 0;
8
8
  const utils_1 = require("./utils");
9
9
  const transform2TypeAnnotation_1 = require("./transform2TypeAnnotation");
10
10
  const utils_2 = require("../../utils");
@@ -841,6 +841,10 @@ function transform2SelectQueryFieldExpression(node, options) {
841
841
  let expression = node.value;
842
842
  let asNameNode = node.key;
843
843
  if (expression.type === 'Identifier') {
844
+ const isSameName = (0, utils_2.firstUpperCase)(asNameNode.name) === expression.name;
845
+ if (!isSameName) {
846
+ (0, utils_1.throwError)(options?.parsingId, `字段名需为 ${(0, utils_2.firstLowerCase)(expression.name)}, 目前为: ${asNameNode.name}, 相关代码如下`, node);
847
+ }
844
848
  return new utils_1.naslTypes.QueryFieldExpression({
845
849
  isDotStar: true,
846
850
  asName: (0, utils_2.firstUpperCase)(asNameNode.name) === expression.name ? undefined : asNameNode.name,
@@ -1339,7 +1343,7 @@ function transformCallFunctionExpression2Match(node, calleeName, callee, options
1339
1343
  exports.transformCallFunctionExpression2Match = transformCallFunctionExpression2Match;
1340
1344
  function transformCall2CallViewElementLogic(node, calleeName, callee, options) {
1341
1345
  if (options?.isRestricted)
1342
- return (0, utils_1.throwError)(options?.parsingId, '调用逻辑不支持在组件或默认值表达式中使用', node);
1346
+ return (0, utils_1.throwError)(options?.parsingId, '调用逻辑不支持在组件或默认值表达式中使用,请尝试单独赋值', node);
1343
1347
  if (calleeName?.includes('getPropValue') || calleeName?.includes('setPropValue')) {
1344
1348
  const componentName = callee?.[1]?.name;
1345
1349
  const propertyName = node?.arguments?.[0]?.value;
@@ -1375,7 +1379,7 @@ function transformCall2CallViewElementLogic(node, calleeName, callee, options) {
1375
1379
  exports.transformCall2CallViewElementLogic = transformCall2CallViewElementLogic;
1376
1380
  function transformCall2CallEntityLogic(node, calleeName, callee, options) {
1377
1381
  if (options?.isRestricted)
1378
- return (0, utils_1.throwError)(options?.parsingId, '调用逻辑不支持在组件或默认值表达式中使用', node);
1382
+ return (0, utils_1.throwError)(options?.parsingId, '调用逻辑不支持在组件或默认值表达式中使用,请尝试单独赋值', node);
1379
1383
  const entityName = callee[0].name.replace(/Entity$/, '');
1380
1384
  // console.log('callee', callee);
1381
1385
  return new utils_1.naslTypes.CallLogic({
@@ -1389,7 +1393,7 @@ function transformCall2CallEntityLogic(node, calleeName, callee, options) {
1389
1393
  exports.transformCall2CallEntityLogic = transformCall2CallEntityLogic;
1390
1394
  function transformCall2CallDataSourceLogic(node, calleeName, callee, options) {
1391
1395
  if (options?.isRestricted)
1392
- return (0, utils_1.throwError)(options?.parsingId, '调用逻辑不支持在组件或默认值表达式中使用', node);
1396
+ return (0, utils_1.throwError)(options?.parsingId, '调用逻辑不支持在组件或默认值表达式中使用,请尝试单独赋值', node);
1393
1397
  if (calleeName?.includes('.entities.')) {
1394
1398
  const calleeNamespace = (0, utils_1.generate)(node?.callee?.object?.object)?.code;
1395
1399
  const entityName = node?.callee?.object?.property?.name?.replace(/Entity$/, '');
@@ -1467,7 +1471,7 @@ function transformCall2OQLQuery(node, calleeName, callee, options) {
1467
1471
  }
1468
1472
  function transformCall2ConsoleLog(node, calleeName, callee, options) {
1469
1473
  if (options?.isRestricted)
1470
- return (0, utils_1.throwError)(options?.parsingId, '调用逻辑不支持在组件或默认值表达式中使用', node);
1474
+ return (0, utils_1.throwError)(options?.parsingId, '调用逻辑不支持在组件或默认值表达式中使用,请尝试单独赋值', node);
1471
1475
  return new utils_1.naslTypes.CallLogic({
1472
1476
  calleeNamespace: 'nasl.logging',
1473
1477
  calleeName: 'INFO',
@@ -1480,7 +1484,7 @@ function transformCall2ConsoleLog(node, calleeName, callee, options) {
1480
1484
  exports.transformCall2ConsoleLog = transformCall2ConsoleLog;
1481
1485
  function transformCall2Logging(node, calleeName, callee, options) {
1482
1486
  if (options?.isRestricted)
1483
- return (0, utils_1.throwError)(options?.parsingId, '调用逻辑不支持在组件或默认值表达式中使用', node);
1487
+ return (0, utils_1.throwError)(options?.parsingId, '调用逻辑不支持在组件或默认值表达式中使用,请尝试单独赋值', node);
1484
1488
  const newArguments = node.arguments.map((arg) => new utils_1.naslTypes.Argument({
1485
1489
  expression: arg?.name === "undefined" ?
1486
1490
  new utils_1.naslTypes.StringLiteral()
@@ -1516,6 +1520,28 @@ function transformCall2JSONFunctions(node, calleeName, callee, options) {
1516
1520
  });
1517
1521
  }
1518
1522
  exports.transformCall2JSONFunctions = transformCall2JSONFunctions;
1523
+ function transform2CallEventLogic(node, calleeName, callee, options) {
1524
+ const lastName = callee[callee.length - 1].name;
1525
+ return new utils_1.naslTypes.CallLogic({
1526
+ calleeNamespace: 'nasl.event',
1527
+ calleeName: lastName,
1528
+ shortcut: true,
1529
+ arguments: [],
1530
+ });
1531
+ }
1532
+ exports.transform2CallEventLogic = transform2CallEventLogic;
1533
+ function transform2CallOtherNASLLogic(node, calleeName, callee, options) {
1534
+ const arr = calleeName.split('.');
1535
+ const lastName = arr.pop();
1536
+ return new utils_1.naslTypes.CallLogic({
1537
+ calleeNamespace: arr.join('.'),
1538
+ calleeName: lastName,
1539
+ arguments: node?.arguments?.map((arg) => new utils_1.naslTypes.Argument({
1540
+ expression: fixExpression(arg, options),
1541
+ })),
1542
+ });
1543
+ }
1544
+ exports.transform2CallOtherNASLLogic = transform2CallOtherNASLLogic;
1519
1545
  function transform2CallFunction(node, calleeName, argument, options) {
1520
1546
  calleeName = utils_1.replaceCallFunctionMap?.[calleeName] || calleeName;
1521
1547
  const func = server_1.default ? server_1.default.getBuildInFunction(calleeName) : null;
@@ -1747,7 +1773,7 @@ function transform2UIFunction(node, calleeName, callee, options) {
1747
1773
  });
1748
1774
  }
1749
1775
  if (options?.isRestricted)
1750
- return (0, utils_1.throwError)(options?.parsingId, '调用逻辑不支持在组件或默认值表达式中使用', node);
1776
+ return (0, utils_1.throwError)(options?.parsingId, '调用逻辑不支持在组件或默认值表达式中使用,请尝试单独赋值', node);
1751
1777
  return new utils_1.naslTypes.CallLogic({
1752
1778
  calleeNamespace: 'nasl.ui',
1753
1779
  calleeName: callee[2].name,
@@ -1868,7 +1894,7 @@ function transformForEach2ForEachStatement(node, calleeName, callee, options) {
1868
1894
  exports.transformForEach2ForEachStatement = transformForEach2ForEachStatement;
1869
1895
  function transformAlert2ShowMessage(node, calleeName, callee, options) {
1870
1896
  if (options?.isRestricted)
1871
- return (0, utils_1.throwError)(options?.parsingId, '调用逻辑不支持在组件或默认值表达式中使用', node);
1897
+ return (0, utils_1.throwError)(options?.parsingId, '调用逻辑不支持在组件或默认值表达式中使用,请尝试单独赋值', node);
1872
1898
  return new utils_1.naslTypes.CallLogic({
1873
1899
  calleeNamespace: 'nasl.ui',
1874
1900
  calleeName: 'showMessage',
@@ -1971,7 +1997,7 @@ function transformCall2CallViewLogic(node, calleeName, callee, options) {
1971
1997
  exports.transformCall2CallViewLogic = transformCall2CallViewLogic;
1972
1998
  function transformCall2Logic(node, calleeName, callee, options) {
1973
1999
  if (options?.isRestricted)
1974
- return (0, utils_1.throwError)(options?.parsingId, '调用逻辑不支持在组件或默认值表达式中使用', node);
2000
+ return (0, utils_1.throwError)(options?.parsingId, '调用逻辑不支持在组件或默认值表达式中使用,请尝试单独赋值', node);
1975
2001
  if (utils_1.callFunctionMap.includes(calleeName)) {
1976
2002
  // 未带前缀,补一下
1977
2003
  return transform2CallFunction(node, calleeName, node?.arguments || [], options);
@@ -1997,7 +2023,7 @@ function transformCall2Logic(node, calleeName, callee, options) {
1997
2023
  exports.transformCall2Logic = transformCall2Logic;
1998
2024
  function transformCall2LogicWithAuth(node, calleeName, callee, options) {
1999
2025
  if (options?.isRestricted)
2000
- return (0, utils_1.throwError)(options?.parsingId, '调用逻辑不支持在组件或默认值表达式中使用', node);
2026
+ return (0, utils_1.throwError)(options?.parsingId, '调用逻辑不支持在组件或默认值表达式中使用,请尝试单独赋值', node);
2001
2027
  return new utils_1.naslTypes.CallLogic({
2002
2028
  calleeNamespace: `nasl.auth`,
2003
2029
  calleeName: callee[callee.length - 1].name,
@@ -2296,13 +2322,16 @@ function transformCall2DataQuery(node, calleeName, callee, options) {
2296
2322
  let restOptionParams = { entityAsNames };
2297
2323
  if (orderNode?.length === 1 && orderNode?.[0]?.type === 'ArrowFunctionExpression') {
2298
2324
  const params = orderNode?.[0]?.params;
2325
+ if (orderNode?.[0]?.body?.type !== 'ArrayExpression') {
2326
+ return (0, utils_1.throwError)(options?.parsingId, 'ORDER_BY 不符合规范,请使用箭头函数,并返回数组', orderNode, node);
2327
+ }
2299
2328
  orderNode = orderNode?.[0]?.body?.elements;
2300
2329
  if (params?.length && params?.[0]?.name) {
2301
2330
  restOptionParams = { inOqlIdentifierNamespace: params?.[0]?.name, entityAsNames };
2302
2331
  }
2303
2332
  }
2304
2333
  else {
2305
- return (0, utils_1.throwError)(options?.parsingId, 'ORDER_BY 不符合规范,请使用箭头函数', orderNode, node);
2334
+ return (0, utils_1.throwError)(options?.parsingId, 'ORDER_BY 不符合规范,请使用箭头函数,并返回数组', orderNode, node);
2306
2335
  }
2307
2336
  orderBy = orderNode.map((arg) => {
2308
2337
  let orderElementCode = (0, utils_1.generate)(arg)?.code || '';
@@ -2434,10 +2463,12 @@ function transform2LogicItem(node, options) {
2434
2463
  transformManager.registerCallExpression((node, calleeName) => calleeName.startsWith('nasl.logging.'), transformCall2Logging);
2435
2464
  transformManager.registerCallExpression('nasl.util.jsonSerialize', transformCall2JSONFunctions);
2436
2465
  transformManager.registerCallExpression('nasl.util.jsonDeserialize', transformCall2JSONFunctions);
2466
+ transformManager.registerCallExpression((node, calleeName) => (calleeName.startsWith('nasl.event.') || calleeName.startsWith('event.')) && (calleeName.endsWith('.preventDefault') || calleeName.endsWith('.stopPropagation')), transform2CallEventLogic);
2437
2467
  transformManager.registerCallExpression((node, calleeName) => calleeName.endsWith('.forEach'), transformForEach2ForEachStatement);
2438
2468
  transformManager.registerCallExpression((node, calleeName) => calleeName.startsWith('nasl.util.'), transformCall2CallFunction);
2439
2469
  transformManager.registerCallExpression((node, calleeName) => calleeName.startsWith('nasl.auth.'), transformCall2LogicWithAuth);
2440
2470
  transformManager.registerCallExpression((node, calleeName) => calleeName.startsWith('nasl.ui.'), transform2UIFunction);
2471
+ transformManager.registerCallExpression((node, calleeName) => calleeName.startsWith('nasl.browser.'), transform2CallOtherNASLLogic);
2441
2472
  transformManager.registerCallExpression((node, calleeName) => calleeName.endsWith('.map'), transformMap2ListTransform);
2442
2473
  transformManager.registerCallExpression('ForEach', transform2ForEachStatement);
2443
2474
  transformManager.registerCallExpression('alert', transformAlert2ShowMessage);