@lcap/nasl 1.0.0-alpha.8 → 1.0.1

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 (460) hide show
  1. package/out/automate/engine/index.d.ts +3 -0
  2. package/out/automate/engine/index.js +414 -0
  3. package/out/automate/engine/index.js.map +1 -0
  4. package/out/automate/engine/operators.d.ts +13 -0
  5. package/out/automate/engine/operators.js +63 -0
  6. package/out/automate/engine/operators.js.map +1 -0
  7. package/out/automate/engine/uniqueName.d.ts +6 -0
  8. package/out/automate/engine/uniqueName.js +39 -0
  9. package/out/automate/engine/uniqueName.js.map +1 -0
  10. package/out/automate/engine/utils.d.ts +24 -0
  11. package/out/automate/engine/utils.js +363 -0
  12. package/out/automate/engine/utils.js.map +1 -0
  13. package/out/common/BaseNode.d.ts +20 -0
  14. package/out/common/BaseNode.js +219 -81
  15. package/out/common/BaseNode.js.map +1 -1
  16. package/out/concepts/App__.d.ts +18 -1
  17. package/out/concepts/App__.js +84 -44
  18. package/out/concepts/App__.js.map +1 -1
  19. package/out/concepts/Argument__.d.ts +5 -1
  20. package/out/concepts/Argument__.js +21 -3
  21. package/out/concepts/Argument__.js.map +1 -1
  22. package/out/concepts/Assignee__.d.ts +190 -0
  23. package/out/concepts/Assignee__.js +264 -0
  24. package/out/concepts/Assignee__.js.map +1 -0
  25. package/out/concepts/Assignment__.js +5 -0
  26. package/out/concepts/Assignment__.js.map +1 -1
  27. package/out/concepts/BinaryExpression__.js +8 -7
  28. package/out/concepts/BinaryExpression__.js.map +1 -1
  29. package/out/concepts/BindAttribute__.d.ts +19 -0
  30. package/out/concepts/BindAttribute__.js +55 -10
  31. package/out/concepts/BindAttribute__.js.map +1 -1
  32. package/out/concepts/BindDirective__.js +23 -3
  33. package/out/concepts/BindDirective__.js.map +1 -1
  34. package/out/concepts/BindEvent__.d.ts +2 -2
  35. package/out/concepts/BindEvent__.js +67 -34
  36. package/out/concepts/BindEvent__.js.map +1 -1
  37. package/out/concepts/BooleanLiteral__.d.ts +2 -0
  38. package/out/concepts/BooleanLiteral__.js +10 -0
  39. package/out/concepts/BooleanLiteral__.js.map +1 -1
  40. package/out/concepts/CallFunction__.js +57 -23
  41. package/out/concepts/CallFunction__.js.map +1 -1
  42. package/out/concepts/CallInterface__.d.ts +5 -0
  43. package/out/concepts/CallInterface__.js +238 -31
  44. package/out/concepts/CallInterface__.js.map +1 -1
  45. package/out/concepts/CallLogic__.d.ts +4 -4
  46. package/out/concepts/CallLogic__.js +107 -50
  47. package/out/concepts/CallLogic__.js.map +1 -1
  48. package/out/concepts/CallQueryComponent__.d.ts +7 -1
  49. package/out/concepts/CallQueryComponent__.js +45 -26
  50. package/out/concepts/CallQueryComponent__.js.map +1 -1
  51. package/out/concepts/Comment__.js +6 -2
  52. package/out/concepts/Comment__.js.map +1 -1
  53. package/out/concepts/CompletionProperty__.d.ts +3 -1
  54. package/out/concepts/CompletionProperty__.js +2 -0
  55. package/out/concepts/CompletionProperty__.js.map +1 -1
  56. package/out/concepts/ConfigGroup__.js +3 -3
  57. package/out/concepts/ConfigGroup__.js.map +1 -1
  58. package/out/concepts/ConfigProperty__.js +3 -3
  59. package/out/concepts/ConfigProperty__.js.map +1 -1
  60. package/out/concepts/Configuration__.js +3 -3
  61. package/out/concepts/Configuration__.js.map +1 -1
  62. package/out/concepts/Constant__.d.ts +1 -0
  63. package/out/concepts/Constant__.js +14 -0
  64. package/out/concepts/Constant__.js.map +1 -1
  65. package/out/concepts/Destination__.d.ts +12 -0
  66. package/out/concepts/Destination__.js +98 -19
  67. package/out/concepts/Destination__.js.map +1 -1
  68. package/out/concepts/End__.js +9 -1
  69. package/out/concepts/End__.js.map +1 -1
  70. package/out/concepts/EntityProperty__.d.ts +11 -0
  71. package/out/concepts/EntityProperty__.js +73 -5
  72. package/out/concepts/EntityProperty__.js.map +1 -1
  73. package/out/concepts/Entity__.d.ts +4 -4
  74. package/out/concepts/Entity__.js +30 -20
  75. package/out/concepts/Entity__.js.map +1 -1
  76. package/out/concepts/Enum__.d.ts +4 -0
  77. package/out/concepts/Enum__.js +18 -10
  78. package/out/concepts/Enum__.js.map +1 -1
  79. package/out/concepts/Event__.js +3 -3
  80. package/out/concepts/Event__.js.map +1 -1
  81. package/out/concepts/ForEachStatement__.d.ts +1 -1
  82. package/out/concepts/ForEachStatement__.js +11 -15
  83. package/out/concepts/ForEachStatement__.js.map +1 -1
  84. package/out/concepts/Function__.js +13 -13
  85. package/out/concepts/Function__.js.map +1 -1
  86. package/out/concepts/Identifier__.d.ts +3 -0
  87. package/out/concepts/Identifier__.js +76 -29
  88. package/out/concepts/Identifier__.js.map +1 -1
  89. package/out/concepts/IfStatement__.js +4 -4
  90. package/out/concepts/IfStatement__.js.map +1 -1
  91. package/out/concepts/InterfaceParam__.d.ts +6 -4
  92. package/out/concepts/InterfaceParam__.js +52 -19
  93. package/out/concepts/InterfaceParam__.js.map +1 -1
  94. package/out/concepts/Interface__.d.ts +42 -30
  95. package/out/concepts/Interface__.js +133 -17
  96. package/out/concepts/Interface__.js.map +1 -1
  97. package/out/concepts/JSBlock__.d.ts +1 -0
  98. package/out/concepts/JSBlock__.js +3 -0
  99. package/out/concepts/JSBlock__.js.map +1 -1
  100. package/out/concepts/LogicItem__.d.ts +2 -1
  101. package/out/concepts/LogicItem__.js +14 -0
  102. package/out/concepts/LogicItem__.js.map +1 -1
  103. package/out/concepts/Logic__.d.ts +20 -1
  104. package/out/concepts/Logic__.js +194 -37
  105. package/out/concepts/Logic__.js.map +1 -1
  106. package/out/concepts/MemberExpression__.d.ts +2 -0
  107. package/out/concepts/MemberExpression__.js +49 -13
  108. package/out/concepts/MemberExpression__.js.map +1 -1
  109. package/out/concepts/Module__.d.ts +126 -120
  110. package/out/concepts/Module__.js +36 -26
  111. package/out/concepts/Module__.js.map +1 -1
  112. package/out/concepts/Namespace__.d.ts +5 -1
  113. package/out/concepts/Namespace__.js +48 -37
  114. package/out/concepts/Namespace__.js.map +1 -1
  115. package/out/concepts/NullLiteral__.d.ts +3 -0
  116. package/out/concepts/NullLiteral__.js +11 -1
  117. package/out/concepts/NullLiteral__.js.map +1 -1
  118. package/out/concepts/NumericLiteral__.d.ts +1 -1
  119. package/out/concepts/NumericLiteral__.js +17 -6
  120. package/out/concepts/NumericLiteral__.js.map +1 -1
  121. package/out/concepts/Param__.d.ts +7 -3
  122. package/out/concepts/Param__.js +57 -28
  123. package/out/concepts/Param__.js.map +1 -1
  124. package/out/concepts/ProcessComponent__.js +6 -6
  125. package/out/concepts/ProcessComponent__.js.map +1 -1
  126. package/out/concepts/ProcessElement__.d.ts +0 -4
  127. package/out/concepts/ProcessElement__.js +117 -54
  128. package/out/concepts/ProcessElement__.js.map +1 -1
  129. package/out/concepts/ProcessOutcome__.js +1 -1
  130. package/out/concepts/ProcessOutcome__.js.map +1 -1
  131. package/out/concepts/Process__.d.ts +7 -1
  132. package/out/concepts/Process__.js +81 -85
  133. package/out/concepts/Process__.js.map +1 -1
  134. package/out/concepts/QueryAggregateExpression__.js +1 -1
  135. package/out/concepts/QueryAggregateExpression__.js.map +1 -1
  136. package/out/concepts/QueryFromExpression__.js +2 -2
  137. package/out/concepts/QueryFromExpression__.js.map +1 -1
  138. package/out/concepts/QueryJoinExpression__.js +5 -5
  139. package/out/concepts/QueryJoinExpression__.js.map +1 -1
  140. package/out/concepts/QueryLimitExpression__.js +2 -2
  141. package/out/concepts/QueryLimitExpression__.js.map +1 -1
  142. package/out/concepts/QuerySelectExpression__.js +3 -3
  143. package/out/concepts/QuerySelectExpression__.js.map +1 -1
  144. package/out/concepts/Return__.d.ts +4 -1
  145. package/out/concepts/Return__.js +67 -21
  146. package/out/concepts/Return__.js.map +1 -1
  147. package/out/concepts/Role__.d.ts +4 -0
  148. package/out/concepts/Role__.js +13 -4
  149. package/out/concepts/Role__.js.map +1 -1
  150. package/out/concepts/SqlQueryComponent__.js +2 -2
  151. package/out/concepts/SqlQueryComponent__.js.map +1 -1
  152. package/out/concepts/StringLiteral__.d.ts +1 -1
  153. package/out/concepts/StringLiteral__.js +21 -31
  154. package/out/concepts/StringLiteral__.js.map +1 -1
  155. package/out/concepts/StructureProperty__.d.ts +5 -4
  156. package/out/concepts/StructureProperty__.js +55 -26
  157. package/out/concepts/StructureProperty__.js.map +1 -1
  158. package/out/concepts/Structure__.d.ts +44 -30
  159. package/out/concepts/Structure__.js +44 -12
  160. package/out/concepts/Structure__.js.map +1 -1
  161. package/out/concepts/SwitchCase__.js +4 -4
  162. package/out/concepts/SwitchCase__.js.map +1 -1
  163. package/out/concepts/SwitchStatement__.js +2 -2
  164. package/out/concepts/SwitchStatement__.js.map +1 -1
  165. package/out/concepts/TypeAnnotation__.d.ts +5 -5
  166. package/out/concepts/TypeAnnotation__.js +74 -20
  167. package/out/concepts/TypeAnnotation__.js.map +1 -1
  168. package/out/concepts/UnaryExpression__.js +10 -8
  169. package/out/concepts/UnaryExpression__.js.map +1 -1
  170. package/out/concepts/Unparsed__.js +1 -1
  171. package/out/concepts/Unparsed__.js.map +1 -1
  172. package/out/concepts/ValidationRule__.d.ts +1 -0
  173. package/out/concepts/ValidationRule__.js +48 -13
  174. package/out/concepts/ValidationRule__.js.map +1 -1
  175. package/out/concepts/Variable__.d.ts +10 -1
  176. package/out/concepts/Variable__.js +70 -18
  177. package/out/concepts/Variable__.js.map +1 -1
  178. package/out/concepts/ViewComponent__.js +15 -15
  179. package/out/concepts/ViewComponent__.js.map +1 -1
  180. package/out/concepts/ViewElement__.d.ts +17 -11
  181. package/out/concepts/ViewElement__.js +302 -204
  182. package/out/concepts/ViewElement__.js.map +1 -1
  183. package/out/concepts/View__.d.ts +12 -11
  184. package/out/concepts/View__.js +109 -98
  185. package/out/concepts/View__.js.map +1 -1
  186. package/out/concepts/WhileStatement__.js +3 -3
  187. package/out/concepts/WhileStatement__.js.map +1 -1
  188. package/out/concepts/basics/stdlib/index.js +4 -1
  189. package/out/concepts/basics/stdlib/index.js.map +1 -1
  190. package/out/concepts/basics/stdlib/{nasl.validate.d.ts → nasl.auth.d.ts} +0 -0
  191. package/out/concepts/basics/stdlib/nasl.auth.js +30 -0
  192. package/out/concepts/basics/stdlib/nasl.auth.js.map +1 -0
  193. package/out/concepts/basics/stdlib/nasl.browser copy.d.ts +3 -0
  194. package/out/concepts/basics/stdlib/nasl.browser copy.js +70 -0
  195. package/out/concepts/basics/stdlib/nasl.browser copy.js.map +1 -0
  196. package/out/concepts/basics/stdlib/nasl.browser.d.ts +3 -0
  197. package/out/concepts/basics/stdlib/nasl.browser.js +41 -0
  198. package/out/concepts/basics/stdlib/nasl.browser.js.map +1 -0
  199. package/out/concepts/basics/stdlib/nasl.configuration.d.ts +3 -0
  200. package/out/concepts/basics/stdlib/nasl.configuration.js +25 -0
  201. package/out/concepts/basics/stdlib/nasl.configuration.js.map +1 -0
  202. package/out/concepts/basics/stdlib/nasl.ui.js +20 -0
  203. package/out/concepts/basics/stdlib/nasl.ui.js.map +1 -1
  204. package/out/concepts/basics/stdlib/nasl.util.js +149 -13
  205. package/out/concepts/basics/stdlib/nasl.util.js.map +1 -1
  206. package/out/concepts/basics/stdlib/nasl.validation.js +54 -20
  207. package/out/concepts/basics/stdlib/nasl.validation.js.map +1 -1
  208. package/out/concepts/basics/types/coreTypeList.js +11 -10
  209. package/out/concepts/basics/types/coreTypeList.js.map +1 -1
  210. package/out/concepts/index__.d.ts +1 -0
  211. package/out/concepts/index__.js +1 -0
  212. package/out/concepts/index__.js.map +1 -1
  213. package/out/config.d.ts +1 -2
  214. package/out/config.js +1 -2
  215. package/out/config.js.map +1 -1
  216. package/out/enums/KEYWORDS.d.ts +3 -0
  217. package/out/enums/KEYWORDS.js +1206 -0
  218. package/out/enums/KEYWORDS.js.map +1 -0
  219. package/out/enums/LEVEL_NAME_MAP.d.ts +26 -0
  220. package/out/enums/LEVEL_NAME_MAP.js +30 -0
  221. package/out/enums/LEVEL_NAME_MAP.js.map +1 -0
  222. package/out/eventBus.d.ts +3 -0
  223. package/out/eventBus.js +7 -0
  224. package/out/eventBus.js.map +1 -0
  225. package/out/generator/genBundleFiles.d.ts +7 -2
  226. package/out/generator/genBundleFiles.js +168 -27
  227. package/out/generator/genBundleFiles.js.map +1 -1
  228. package/out/generator/genMetaData.d.ts +20 -20
  229. package/out/generator/genMetaData.js +50 -15
  230. package/out/generator/genMetaData.js.map +1 -1
  231. package/out/index.d.ts +2 -0
  232. package/out/index.js +2 -0
  233. package/out/index.js.map +1 -1
  234. package/out/manager/diagnostic.d.ts +1 -1
  235. package/out/server/createUiTs.d.ts +1 -0
  236. package/out/server/createUiTs.js +49 -5
  237. package/out/server/createUiTs.js.map +1 -1
  238. package/out/server/entity2LogicNamespace.js +38 -23
  239. package/out/server/entity2LogicNamespace.js.map +1 -1
  240. package/out/server/getExtensionModules.js +2 -0
  241. package/out/server/getExtensionModules.js.map +1 -1
  242. package/out/server/getFunctions.d.ts +1 -0
  243. package/out/server/getFunctions.js +7 -1
  244. package/out/server/getFunctions.js.map +1 -1
  245. package/out/server/getLogics.js +63 -18
  246. package/out/server/getLogics.js.map +1 -1
  247. package/out/server/getMemberIdentifier.d.ts +16 -1
  248. package/out/server/getMemberIdentifier.js +279 -36
  249. package/out/server/getMemberIdentifier.js.map +1 -1
  250. package/out/server/getProcesses.d.ts +6 -1
  251. package/out/server/getProcesses.js +243 -1
  252. package/out/server/getProcesses.js.map +1 -1
  253. package/out/server/getScope.d.ts +12 -0
  254. package/out/server/getScope.js +57 -0
  255. package/out/server/getScope.js.map +1 -0
  256. package/out/server/index.js +4 -0
  257. package/out/server/index.js.map +1 -1
  258. package/out/server/naslServer.d.ts +30 -53
  259. package/out/server/naslServer.js +721 -381
  260. package/out/server/naslServer.js.map +1 -1
  261. package/out/server/process2LogicNamespace.d.ts +10 -0
  262. package/out/server/process2LogicNamespace.js +29 -1
  263. package/out/server/process2LogicNamespace.js.map +1 -1
  264. package/out/server/translator.d.ts +22 -3
  265. package/out/server/translator.js +367 -123
  266. package/out/server/translator.js.map +1 -1
  267. package/out/service/creator/add.configs.d.ts +1 -0
  268. package/out/service/creator/add.configs.js +68 -0
  269. package/out/service/creator/add.configs.js.map +1 -0
  270. package/out/service/creator/errHandles.d.ts +18 -0
  271. package/out/service/creator/errHandles.js +60 -0
  272. package/out/service/creator/errHandles.js.map +1 -0
  273. package/out/service/creator/index.d.ts +1 -0
  274. package/out/service/creator/index.js +72 -0
  275. package/out/service/creator/index.js.map +1 -0
  276. package/out/service/storage/api.d.ts +18 -0
  277. package/out/service/storage/api.js +17 -0
  278. package/out/service/storage/api.js.map +1 -0
  279. package/out/service/storage/init.js +213 -37
  280. package/out/service/storage/init.js.map +1 -1
  281. package/out/service/storage/service.d.ts +2 -0
  282. package/out/service/storage/service.js +10 -0
  283. package/out/service/storage/service.js.map +1 -0
  284. package/out/service/storage/storagePoint.d.ts +1 -14
  285. package/out/service/storage/storagePoint.js +16 -16
  286. package/out/service/storage/storagePoint.js.map +1 -1
  287. package/out/templator/genCreateBlock.js +6 -6
  288. package/out/templator/genCreateBlock.js.map +1 -1
  289. package/out/templator/genCurdEditMultipleKeyBlock.js +13 -17
  290. package/out/templator/genCurdEditMultipleKeyBlock.js.map +1 -1
  291. package/out/templator/genCurdMultipleKeyBlock.js +11 -11
  292. package/out/templator/genCurdMultipleKeyBlock.js.map +1 -1
  293. package/out/templator/genEditTableBlock.js +5 -5
  294. package/out/templator/genEditTableBlock.js.map +1 -1
  295. package/out/templator/genEnumSelectBlock.js +2 -2
  296. package/out/templator/genEnumSelectBlock.js.map +1 -1
  297. package/out/templator/genGetBlock.js +5 -3
  298. package/out/templator/genGetBlock.js.map +1 -1
  299. package/out/templator/genGridViewBlock.d.ts +3 -1
  300. package/out/templator/genGridViewBlock.js +61 -6
  301. package/out/templator/genGridViewBlock.js.map +1 -1
  302. package/out/templator/genQueryComponent.d.ts +2 -0
  303. package/out/templator/genQueryComponent.js +27 -14
  304. package/out/templator/genQueryComponent.js.map +1 -1
  305. package/out/templator/genTableBlock.d.ts +1 -1
  306. package/out/templator/genTableBlock.js +4 -5
  307. package/out/templator/genTableBlock.js.map +1 -1
  308. package/out/templator/genUpdateBlock.js +9 -10
  309. package/out/templator/genUpdateBlock.js.map +1 -1
  310. package/out/templator/utils.d.ts +13 -4
  311. package/out/templator/utils.js +8 -4
  312. package/out/templator/utils.js.map +1 -1
  313. package/out/test/fixtures/env.js +0 -1
  314. package/out/test/fixtures/env.js.map +1 -1
  315. package/out/test/integration/connect-file copy.d.ts +1 -0
  316. package/out/test/integration/connect-file copy.js +50 -0
  317. package/out/test/integration/connect-file copy.js.map +1 -0
  318. package/out/test/integration/node-nasl-server.d.ts +1 -0
  319. package/out/test/integration/node-nasl-server.js +41 -0
  320. package/out/test/integration/node-nasl-server.js.map +1 -0
  321. package/out/test/units/page/Element.spec.js +3 -3
  322. package/out/test/units/page/Element.spec.js.map +1 -1
  323. package/out/test/units/temp/temp.spec.js +1 -1
  324. package/out/test/units/temp/temp.spec.js.map +1 -1
  325. package/out/utils/index.d.ts +6 -0
  326. package/out/utils/index.js +25 -1
  327. package/out/utils/index.js.map +1 -1
  328. package/out/utils/string.d.ts +1 -1
  329. package/out/utils/string.js +38 -9
  330. package/out/utils/string.js.map +1 -1
  331. package/package.json +2 -1
  332. package/src/automate/engine/index.js +97 -118
  333. package/src/automate/engine/operators.js +63 -0
  334. package/src/automate/engine/uniqueName.js +36 -0
  335. package/src/automate/engine/utils.js +49 -19
  336. package/src/common/BaseNode.ts +223 -87
  337. package/src/concepts/App__.ts +86 -46
  338. package/src/concepts/Argument__.ts +23 -3
  339. package/src/concepts/Assignee__.ts +437 -0
  340. package/src/concepts/Assignment__.ts +4 -1
  341. package/src/concepts/BinaryExpression__.ts +9 -7
  342. package/src/concepts/BindAttribute__.ts +69 -9
  343. package/src/concepts/BindDirective__.ts +22 -3
  344. package/src/concepts/BindEvent__.ts +67 -23
  345. package/src/concepts/BooleanLiteral__.ts +8 -0
  346. package/src/concepts/CallFunction__.ts +58 -25
  347. package/src/concepts/CallInterface__.ts +236 -26
  348. package/src/concepts/CallLogic__.ts +111 -52
  349. package/src/concepts/CallQueryComponent__.ts +36 -21
  350. package/src/concepts/Comment__.ts +6 -2
  351. package/src/concepts/CompletionProperty__.ts +5 -1
  352. package/src/concepts/ConfigGroup__.ts +3 -3
  353. package/src/concepts/ConfigProperty__.ts +3 -3
  354. package/src/concepts/Configuration__.ts +3 -3
  355. package/src/concepts/Constant__.ts +12 -0
  356. package/src/concepts/Destination__.ts +106 -18
  357. package/src/concepts/End__.ts +8 -1
  358. package/src/concepts/EntityProperty__.ts +69 -5
  359. package/src/concepts/Entity__.ts +33 -28
  360. package/src/concepts/Enum__.ts +16 -11
  361. package/src/concepts/Event__.ts +3 -3
  362. package/src/concepts/ForEachStatement__.ts +16 -21
  363. package/src/concepts/Function__.ts +13 -13
  364. package/src/concepts/Identifier__.ts +82 -32
  365. package/src/concepts/IfStatement__.ts +4 -4
  366. package/src/concepts/InterfaceParam__.ts +49 -27
  367. package/src/concepts/Interface__.ts +130 -16
  368. package/src/concepts/JSBlock__.ts +4 -0
  369. package/src/concepts/LogicItem__.ts +16 -1
  370. package/src/concepts/Logic__.ts +201 -39
  371. package/src/concepts/MemberExpression__.ts +58 -15
  372. package/src/concepts/Module__.ts +35 -24
  373. package/src/concepts/Namespace__.ts +49 -37
  374. package/src/concepts/NullLiteral__.ts +8 -1
  375. package/src/concepts/NumericLiteral__.ts +17 -6
  376. package/src/concepts/Param__.ts +54 -28
  377. package/src/concepts/ProcessComponent__.ts +6 -6
  378. package/src/concepts/ProcessElement__.ts +143 -44
  379. package/src/concepts/ProcessOutcome__.ts +1 -1
  380. package/src/concepts/Process__.ts +85 -98
  381. package/src/concepts/QueryAggregateExpression__.ts +1 -1
  382. package/src/concepts/QueryFromExpression__.ts +2 -2
  383. package/src/concepts/QueryJoinExpression__.ts +5 -5
  384. package/src/concepts/QueryLimitExpression__.ts +2 -2
  385. package/src/concepts/QuerySelectExpression__.ts +3 -3
  386. package/src/concepts/Return__.ts +60 -29
  387. package/src/concepts/Role__.ts +11 -4
  388. package/src/concepts/SqlQueryComponent__.ts +2 -2
  389. package/src/concepts/StringLiteral__.ts +20 -31
  390. package/src/concepts/StructureProperty__.ts +50 -33
  391. package/src/concepts/Structure__.ts +32 -10
  392. package/src/concepts/SwitchCase__.ts +4 -4
  393. package/src/concepts/SwitchStatement__.ts +2 -2
  394. package/src/concepts/TypeAnnotation__.ts +59 -16
  395. package/src/concepts/UnaryExpression__.ts +10 -8
  396. package/src/concepts/Unparsed__.ts +1 -1
  397. package/src/concepts/ValidationRule__.ts +44 -14
  398. package/src/concepts/Variable__.ts +67 -25
  399. package/src/concepts/ViewComponent__.ts +15 -15
  400. package/src/concepts/ViewElement__.ts +380 -264
  401. package/src/concepts/View__.ts +139 -94
  402. package/src/concepts/WhileStatement__.ts +4 -4
  403. package/src/concepts/basics/stdlib/index.ts +4 -2
  404. package/src/concepts/basics/stdlib/nasl.auth.ts +26 -0
  405. package/src/concepts/basics/stdlib/nasl.browser.ts +37 -0
  406. package/src/concepts/basics/stdlib/nasl.configuration.ts +21 -0
  407. package/src/concepts/basics/stdlib/nasl.ui.ts +20 -1
  408. package/src/concepts/basics/stdlib/nasl.util.ts +151 -13
  409. package/src/concepts/basics/stdlib/nasl.validation.ts +45 -11
  410. package/src/concepts/basics/types/coreTypeList.ts +11 -10
  411. package/src/concepts/index__.ts +1 -0
  412. package/src/config.ts +1 -2
  413. package/src/enums/KEYWORDS.ts +1204 -0
  414. package/src/{terms → enums}/LEVEL_NAME_MAP.ts +0 -0
  415. package/src/eventBus.ts +5 -0
  416. package/src/generator/genBundleFiles.ts +182 -30
  417. package/src/generator/genMetaData.ts +72 -21
  418. package/src/index.ts +2 -0
  419. package/src/manager/diagnostic.ts +1 -1
  420. package/src/server/createUiTs.ts +50 -8
  421. package/src/server/entity2LogicNamespace.ts +41 -25
  422. package/src/server/getExtensionModules.ts +2 -0
  423. package/src/server/getFunctions.ts +6 -0
  424. package/src/server/getLogics.ts +66 -19
  425. package/src/server/getMemberIdentifier.ts +275 -46
  426. package/src/server/getProcesses.ts +248 -4
  427. package/src/server/getScope.ts +62 -0
  428. package/src/server/index.ts +12 -1
  429. package/src/server/naslServer.ts +715 -398
  430. package/src/server/process2LogicNamespace.ts +30 -2
  431. package/src/server/translator.ts +423 -128
  432. package/src/service/config/index.js +1 -1
  433. package/src/service/creator/errHandles.js +5 -2
  434. package/src/service/creator/index.js +0 -6
  435. package/src/service/storage/api.js +14 -0
  436. package/src/service/storage/init.ts +217 -47
  437. package/src/service/storage/service.ts +6 -0
  438. package/src/service/storage/storagePoint.ts +16 -16
  439. package/src/templator/genCreateBlock.ts +6 -6
  440. package/src/templator/genCurdEditMultipleKeyBlock.ts +29 -30
  441. package/src/templator/genCurdMultipleKeyBlock.ts +11 -11
  442. package/src/templator/genEditTableBlock.ts +5 -5
  443. package/src/templator/genEnumSelectBlock.ts +2 -2
  444. package/src/templator/genGetBlock.ts +6 -8
  445. package/src/templator/genGridViewBlock.ts +59 -9
  446. package/src/templator/genQueryComponent.ts +39 -28
  447. package/src/templator/genTableBlock.ts +5 -9
  448. package/src/templator/genUpdateBlock.ts +9 -11
  449. package/src/templator/utils.ts +9 -6
  450. package/src/test/fixtures/env.ts +0 -2
  451. package/src/test/units/page/Element.spec.ts +3 -3
  452. package/src/test/units/temp/temp.spec.ts +1 -1
  453. package/src/utils/index.ts +24 -0
  454. package/src/utils/string.ts +39 -9
  455. package/out/concepts/basics/stdlib/nasl.validate.js +0 -527
  456. package/out/concepts/basics/stdlib/nasl.validate.js.map +0 -1
  457. package/out/data/Module.d.ts +0 -34
  458. package/out/data/Module.js +0 -53
  459. package/out/data/Module.js.map +0 -1
  460. package/src/automate/engine/index.d.ts +0 -3
@@ -1,6 +1,6 @@
1
1
  import Constant from '@nasl/concepts/Constant__';
2
- import { CompletionProperty, Process, ProcessElement, Namespace, Logic, TypeAnnotation, Return, Variable, StructureProperty, Param } from '..';
3
-
2
+ import { CompletionProperty, Process, ProcessElement, Namespace, Logic, TypeAnnotation, Return, Variable, StructureProperty, Param, Identifier, MemberExpression, LogicItem } from '..';
3
+ import { getNodeByNodeCallee } from '../automate/engine/utils';
4
4
  function alphaUpper(name: string) {
5
5
  if (!name) {
6
6
  return '';
@@ -9,7 +9,7 @@ function alphaUpper(name: string) {
9
9
  }
10
10
 
11
11
  export function genLaunchProcess(process: Process) {
12
- const l = new Logic({
12
+ const l: Logic = new Logic({
13
13
  name: 'launch',
14
14
  params: process.params,
15
15
  body: [],
@@ -20,6 +20,10 @@ export function genLaunchProcess(process: Process) {
20
20
  }),
21
21
  ],
22
22
  });
23
+ const path = `process.${process.name}.logics`;
24
+ l.getNamespace = function() {
25
+ return path;
26
+ }
23
27
  l.fake = true;
24
28
  return l;
25
29
  }
@@ -61,6 +65,10 @@ export function genUserTaskLogic(userTask: ProcessElement) {
61
65
  body: [],
62
66
  returns: [],
63
67
  });
68
+ const path = `elements.${userTask.name}.logics`;
69
+ l.getNamespace = function() {
70
+ return path;
71
+ }
64
72
  l.fake = true;
65
73
  return l;
66
74
  }
@@ -90,6 +98,242 @@ type VariableSuggestion = Array<Suggestion>;
90
98
  type CompletionPropertyEnhance = CompletionProperty & {
91
99
  children?: Array<CompletionProperty>;
92
100
  };
101
+ const excludeKey = [
102
+ 'app',
103
+ 'module',
104
+ 'structure',
105
+ 'enumeration',
106
+ 'entity',
107
+ 'view',
108
+ 'viewElement',
109
+ 'processElement',
110
+ 'element',
111
+ 'viewComponent',
112
+ 'logic',
113
+ 'process',
114
+ 'interface',
115
+ 'nodePath',
116
+ 'upperNode',
117
+ 'rootNode',
118
+ 'parentNode',
119
+ ];
120
+ export function travelDown(node: any, callback: (node: any) => void) {
121
+ const stack = [node];
122
+ const checked = new WeakSet();
123
+ while (stack.length) {
124
+ const n = stack.pop();
125
+ if (!n) {
126
+ continue;
127
+ }
128
+ checked.add(n);
129
+ callback(n);
130
+ for (const k in n) {
131
+ if (!excludeKey.includes(k) && n.hasOwnProperty(k)) {
132
+ const t = n[k];
133
+ if (t && typeof t === 'object' && !checked.has(t)) {
134
+ if (Array.isArray(t)) {
135
+ for (const q in t) {
136
+ const w = t[q];
137
+ if (typeof w === 'object') {
138
+ stack.push(w);
139
+ }
140
+ }
141
+ } else {
142
+ stack.push(t);
143
+ }
144
+ }
145
+ }
146
+ }
147
+ }
148
+ }
149
+
150
+ export function syncMemberExpression(elem: ProcessElement | Process, callback: (node: MemberExpression) => void) {
151
+ const process = elem instanceof Process ? elem : elem.process;
152
+ process.elements.forEach((el) => {
153
+ if (el.type === 'UserTask') {
154
+ el.bindAttrs.forEach((attr) => {
155
+ if (attr.name === 'destination') {
156
+ attr.destination.arguments.forEach((arg) => {
157
+ travelDown(arg.expression, (node) => {
158
+ if (node instanceof MemberExpression) {
159
+ console.log('UserTask', node.getValue());
160
+ callback(node);
161
+ // if(node.property.name === oldName) {}
162
+ }
163
+ });
164
+ });
165
+ }
166
+ });
167
+ }
168
+ if (el.type === 'ExclusiveGateway') {
169
+ travelDown(el.logic, (node) => {
170
+ if (node instanceof MemberExpression) {
171
+ console.log('ExclusiveGateway', node.getValue());
172
+ callback(node);
173
+ }
174
+ });
175
+ }
176
+ });
177
+ }
178
+ // ['a','b','c'] => a.b.c
179
+ export function genCompletionProperty(prefix: string[] = []):(v: Variable | Param | Return | Constant) => CompletionProperty {
180
+ return (v) => {
181
+ let m: MemberExpression;
182
+ const p = new Identifier({ name: v.name });
183
+ const t = prefix.slice();
184
+ const q = prefix.slice();
185
+ while (q.length) {
186
+ const ns = q.shift();
187
+ const cv = new Identifier({ name: ns });
188
+ if (!m) {
189
+ m = new MemberExpression({
190
+ object: cv,
191
+ });
192
+ cv.parentNode = m;
193
+ } else {
194
+ m.property = cv;
195
+ const tm = new MemberExpression({
196
+ object: m,
197
+ });
198
+ m.parentKey = 'object';
199
+ m.parentNode = tm;
200
+ cv.parentKey = 'property';
201
+ cv.parentNode = tm;
202
+ m = tm;
203
+ }
204
+ }
205
+ if (m) {
206
+ m.property = p;
207
+ p.parentNode = m;
208
+ p.parentKey = 'property';
209
+ }
210
+ let prevalue = '';
211
+ if (t.length) {
212
+ prevalue = `${t.join('.')}.`;
213
+ }
214
+ const hasChild = ['reference', 'generic'].includes(v.typeAnnotation.typeKind);
215
+ const cp = new CompletionProperty({
216
+ expression: m || p,
217
+ noFurther: !hasChild,
218
+ name: v.name,
219
+ value: prevalue + v.name,
220
+
221
+ });
222
+ console.log(cp.value);
223
+ cp.icon = v.concept;
224
+
225
+ if (hasChild) {
226
+ cp.children = [new CompletionProperty()];
227
+ }
228
+ return cp;
229
+ };
230
+ }
231
+
232
+ export function getPreviousTask(node: ProcessElement) {
233
+ const process = node.process;
234
+ const elems = process.elements;
235
+ const elements: ProcessElement[] = [];
236
+ const visitedMap = new WeakMap();
237
+ function iterator(processElem: ProcessElement) {
238
+ if (visitedMap.has(processElem)) {
239
+ return;
240
+ }
241
+ if (processElem !== node && (processElem.type === 'UserTask')) {
242
+ elements.push(processElem);
243
+ }
244
+ visitedMap.set(processElem, true);
245
+ const links = elems.filter((e) => e.type === 'SequenceFlow' && e.targetRef === processElem.name);
246
+ links.forEach((l) => {
247
+ const s = l.sourceRef;
248
+ const t = elems.find((el) => el.name === s);
249
+ if (t) {
250
+ iterator(t);
251
+ }
252
+ });
253
+ }
254
+
255
+ iterator(node);
256
+ return elements;
257
+ }
258
+
259
+ export function getProcessVariableSuggestions(node: Logic, abandonConstant: boolean = false): CompletionProperty {
260
+ if (!node.processElement) {
261
+ return;
262
+ }
263
+ const processElem = node.processElement;
264
+ const process = node.process;
265
+
266
+ const elements: ProcessElement[] = getPreviousTask(processElem);
267
+ const prevtasks = elements.map((us) => {
268
+ const cp = new CompletionProperty({
269
+ name: us.name,
270
+ value: us.name,
271
+ noFurther: true,
272
+ children: [
273
+ ...us.returns.map(genCompletionProperty([process.name, us.name])),
274
+ ...(abandonConstant ? [] : us.constants.map(genCompletionProperty([process.name, us.name]))),
275
+ ],
276
+ });
277
+ cp.icon = us.type;
278
+ cp.isProcess = true;
279
+ return cp;
280
+ });
281
+
282
+ const processVariables = new CompletionProperty({
283
+ name: process.name,
284
+ value: process.name,
285
+ noFurther: true,
286
+ children: [
287
+ ...process.params.map(genCompletionProperty([process.name])),
288
+ ...process.returns.map(genCompletionProperty([process.name])),
289
+ ...process.constants.map(genCompletionProperty([process.name])),
290
+ ...prevtasks,
291
+ ],
292
+ });
293
+ processVariables.icon = 'Process';
294
+ if (processElem.type === 'ExclusiveGateway') {
295
+ const scopeVariable = new CompletionProperty({
296
+ name: processElem.name,
297
+ value: processElem.name,
298
+ icon: processElem.type,
299
+ noFurther: true,
300
+ children: processElem.variables.map(genCompletionProperty([process.name, processElem.name])),
301
+ });
302
+ scopeVariable.isProcess = true;
303
+ scopeVariable.icon = processElem.type;
304
+ processVariables.children.push(scopeVariable);
305
+ }
306
+
307
+ if (processElem.type === 'UserTask') {
308
+ const scopeVariable = new CompletionProperty({
309
+ name: processElem.name,
310
+ value: processElem.name,
311
+ icon: processElem.type,
312
+ noFurther: true,
313
+ children: processElem.constants.map(genCompletionProperty([process.name, processElem.name])),
314
+ });
315
+ scopeVariable.isProcess = true;
316
+ scopeVariable.icon = processElem.type;
317
+ processVariables.children.push(scopeVariable);
318
+ }
319
+ // if(processElem.type === 'AutoTask') {
320
+ // const scopeVariable = new CompletionProperty({
321
+ // name: processElem.name,
322
+ // value: processElem.name,
323
+ // icon: processElem.type,
324
+ // noFurther: true,
325
+ // children: [
326
+ // ...processElem.variables.map(genCompletionProperty([process.name, processElem.name])),
327
+ // ...processElem.returns.map(genCompletionProperty([process.name, processElem.name])),
328
+ // ]
329
+ // });
330
+ // scopeVariable.isProcess = true;
331
+ // scopeVariable.icon = processElem.type;
332
+ // processVariables.children.push(scopeVariable);
333
+ // }
334
+ return processVariables;
335
+ }
336
+
93
337
  export function getProcessVaraibleSelections(node: Logic, list: VariableSuggestion) {
94
338
  const process = node.process;
95
339
  const processElem = node.processElement;
@@ -111,7 +355,7 @@ export function getProcessVaraibleSelections(node: Logic, list: VariableSuggesti
111
355
  const varidx = list.findIndex((i) => i.name === '变量');
112
356
  const processVars = vars.children.find((v) => v.children && v.name === process.name) as CompletionPropertyEnhance;
113
357
  const elementVars = vars.children.filter((v) => exsitNames.includes(v.name));
114
-
358
+ // console.log(list);
115
359
  if (processVars) {
116
360
  processVars.children.forEach((p: CompletionProperty) => {
117
361
  processData.children.push(p as any as CompletionData);
@@ -0,0 +1,62 @@
1
+ import { Logic, View, Process } from '..';
2
+
3
+ type wordScope = {
4
+ Param?: string[]
5
+ Return?: string[]
6
+ Variable?: string[]
7
+ Constant?: string[]
8
+ }
9
+
10
+ export function getLogicScopeWords(logic: Logic): wordScope {
11
+ const scope: wordScope = {
12
+ Param: logic.params.map((p) => p.name),
13
+ Return: logic.returns.map((p) => p.name),
14
+ Variable: logic.variables.map((p) => p.name),
15
+ Constant: [],
16
+ };
17
+ return scope;
18
+ }
19
+
20
+ export function getViewScopeWords(view: View): wordScope {
21
+ const scope: wordScope = {
22
+ Param: view.params.map((p) => p.name),
23
+ Variable: view.variables.map((p) => p.name),
24
+ Return: [],
25
+ Constant: [],
26
+ };
27
+ return scope;
28
+ }
29
+
30
+ export function getProcessScopeWords(process: Process): wordScope {
31
+ const processName = process.name;
32
+ const scope: wordScope = {
33
+ Param: process.params.map((p) => `${processName}.${p.name}`),
34
+ Return: process.returns.map((p) => `${processName}.${p.name}`),
35
+ Constant: process.constants.map((p) => `${processName}.${p.name}`),
36
+ Variable: [],
37
+ };
38
+
39
+ process.elements.forEach((el) => {
40
+ const elname = el.name;
41
+ el.variables.forEach((v) => {
42
+ scope.Variable.push(`${processName}.${elname}.${v.name}`);
43
+ });
44
+ el.returns.forEach((v) => {
45
+ scope.Return.push(`${processName}.${elname}.${v.name}`);
46
+ });
47
+ el.constants.forEach((v) => {
48
+ scope.Constant.push(`${processName}.${elname}.${v.name}`);
49
+ });
50
+ });
51
+ return scope;
52
+ }
53
+
54
+ export function combineScope(a: wordScope, b: wordScope) : wordScope {
55
+ const scope: wordScope = {
56
+ Param: [...a.Param, ...b.Param],
57
+ Return: [...a.Return, ...b.Return],
58
+ Constant: [...a.Constant, ...b.Constant],
59
+ Variable: [...a.Variable, ...b.Variable],
60
+ };
61
+ return scope;
62
+ }
@@ -3,7 +3,14 @@ import { getInterfaces } from './getInterfaces';
3
3
  import { getFunctions, getBuildInFunction } from './getFunctions';
4
4
  import { getValidates, getValidateFunction } from './getValidates';
5
5
  import { getProcessComponents, getProcessComponent } from './getProcessComponents';
6
- import { getMemberIdentifier, getSelectNextCompletionData } from './getMemberIdentifier';
6
+ import {
7
+ getMemberIdentifier,
8
+ getVariableIdentifier,
9
+ getEnumsIdentifier,
10
+ getGlobalVariableIdentifier,
11
+ getLiteralsIdentifier,
12
+ getSelectNextCompletionData,
13
+ } from './getMemberIdentifier';
7
14
  import naslServer from './naslServer';
8
15
 
9
16
  const server: any = {
@@ -19,5 +26,9 @@ const server: any = {
19
26
  getValidates,
20
27
  getValidateFunction,
21
28
  getSelectNextCompletionData,
29
+ getVariableIdentifier,
30
+ getEnumsIdentifier,
31
+ getGlobalVariableIdentifier,
32
+ getLiteralsIdentifier,
22
33
  };
23
34
  export default server;