@lcap/nasl 1.0.0-alpha.7 → 1.0.0

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 (441) hide show
  1. package/out/automate/engine/index.d.ts +3 -0
  2. package/out/automate/engine/index.js +513 -0
  3. package/out/automate/engine/index.js.map +1 -0
  4. package/out/automate/engine/utils.d.ts +24 -0
  5. package/out/automate/engine/utils.js +363 -0
  6. package/out/automate/engine/utils.js.map +1 -0
  7. package/out/common/BaseNode.d.ts +20 -0
  8. package/out/common/BaseNode.js +219 -81
  9. package/out/common/BaseNode.js.map +1 -1
  10. package/out/concepts/App__.d.ts +18 -1
  11. package/out/concepts/App__.js +75 -35
  12. package/out/concepts/App__.js.map +1 -1
  13. package/out/concepts/Argument__.d.ts +5 -1
  14. package/out/concepts/Argument__.js +21 -3
  15. package/out/concepts/Argument__.js.map +1 -1
  16. package/out/concepts/Assignee__.d.ts +190 -0
  17. package/out/concepts/Assignee__.js +264 -0
  18. package/out/concepts/Assignee__.js.map +1 -0
  19. package/out/concepts/Assignment__.js +5 -0
  20. package/out/concepts/Assignment__.js.map +1 -1
  21. package/out/concepts/BinaryExpression__.js +8 -7
  22. package/out/concepts/BinaryExpression__.js.map +1 -1
  23. package/out/concepts/BindAttribute__.d.ts +19 -0
  24. package/out/concepts/BindAttribute__.js +54 -9
  25. package/out/concepts/BindAttribute__.js.map +1 -1
  26. package/out/concepts/BindDirective__.js +22 -2
  27. package/out/concepts/BindDirective__.js.map +1 -1
  28. package/out/concepts/BindEvent__.d.ts +2 -2
  29. package/out/concepts/BindEvent__.js +67 -34
  30. package/out/concepts/BindEvent__.js.map +1 -1
  31. package/out/concepts/BooleanLiteral__.d.ts +2 -0
  32. package/out/concepts/BooleanLiteral__.js +10 -0
  33. package/out/concepts/BooleanLiteral__.js.map +1 -1
  34. package/out/concepts/CallFunction__.js +41 -23
  35. package/out/concepts/CallFunction__.js.map +1 -1
  36. package/out/concepts/CallInterface__.d.ts +5 -0
  37. package/out/concepts/CallInterface__.js +238 -31
  38. package/out/concepts/CallInterface__.js.map +1 -1
  39. package/out/concepts/CallLogic__.d.ts +4 -4
  40. package/out/concepts/CallLogic__.js +110 -53
  41. package/out/concepts/CallLogic__.js.map +1 -1
  42. package/out/concepts/CallQueryComponent__.d.ts +7 -1
  43. package/out/concepts/CallQueryComponent__.js +44 -25
  44. package/out/concepts/CallQueryComponent__.js.map +1 -1
  45. package/out/concepts/Comment__.js +6 -2
  46. package/out/concepts/Comment__.js.map +1 -1
  47. package/out/concepts/CompletionProperty__.d.ts +3 -1
  48. package/out/concepts/CompletionProperty__.js +2 -0
  49. package/out/concepts/CompletionProperty__.js.map +1 -1
  50. package/out/concepts/ConfigGroup__.js +2 -2
  51. package/out/concepts/ConfigGroup__.js.map +1 -1
  52. package/out/concepts/ConfigProperty__.js +2 -2
  53. package/out/concepts/ConfigProperty__.js.map +1 -1
  54. package/out/concepts/Configuration__.js +2 -2
  55. package/out/concepts/Configuration__.js.map +1 -1
  56. package/out/concepts/Constant__.d.ts +1 -0
  57. package/out/concepts/Constant__.js +14 -0
  58. package/out/concepts/Constant__.js.map +1 -1
  59. package/out/concepts/Destination__.d.ts +12 -0
  60. package/out/concepts/Destination__.js +94 -18
  61. package/out/concepts/Destination__.js.map +1 -1
  62. package/out/concepts/End__.js +9 -1
  63. package/out/concepts/End__.js.map +1 -1
  64. package/out/concepts/EntityProperty__.d.ts +11 -0
  65. package/out/concepts/EntityProperty__.js +73 -5
  66. package/out/concepts/EntityProperty__.js.map +1 -1
  67. package/out/concepts/Entity__.d.ts +4 -1
  68. package/out/concepts/Entity__.js +37 -15
  69. package/out/concepts/Entity__.js.map +1 -1
  70. package/out/concepts/Enum__.d.ts +4 -0
  71. package/out/concepts/Enum__.js +18 -10
  72. package/out/concepts/Enum__.js.map +1 -1
  73. package/out/concepts/Event__.js +2 -2
  74. package/out/concepts/Event__.js.map +1 -1
  75. package/out/concepts/ForEachStatement__.js +9 -13
  76. package/out/concepts/ForEachStatement__.js.map +1 -1
  77. package/out/concepts/Function__.js +9 -9
  78. package/out/concepts/Function__.js.map +1 -1
  79. package/out/concepts/Identifier__.d.ts +3 -0
  80. package/out/concepts/Identifier__.js +76 -29
  81. package/out/concepts/Identifier__.js.map +1 -1
  82. package/out/concepts/IfStatement__.js +4 -4
  83. package/out/concepts/IfStatement__.js.map +1 -1
  84. package/out/concepts/InterfaceParam__.d.ts +6 -4
  85. package/out/concepts/InterfaceParam__.js +52 -19
  86. package/out/concepts/InterfaceParam__.js.map +1 -1
  87. package/out/concepts/Interface__.d.ts +42 -30
  88. package/out/concepts/Interface__.js +131 -15
  89. package/out/concepts/Interface__.js.map +1 -1
  90. package/out/concepts/JSBlock__.d.ts +1 -0
  91. package/out/concepts/JSBlock__.js +3 -0
  92. package/out/concepts/JSBlock__.js.map +1 -1
  93. package/out/concepts/LogicItem__.d.ts +2 -1
  94. package/out/concepts/LogicItem__.js +14 -0
  95. package/out/concepts/LogicItem__.js.map +1 -1
  96. package/out/concepts/Logic__.d.ts +16 -1
  97. package/out/concepts/Logic__.js +176 -33
  98. package/out/concepts/Logic__.js.map +1 -1
  99. package/out/concepts/MemberExpression__.d.ts +2 -0
  100. package/out/concepts/MemberExpression__.js +49 -12
  101. package/out/concepts/MemberExpression__.js.map +1 -1
  102. package/out/concepts/Module__.d.ts +126 -120
  103. package/out/concepts/Module__.js +28 -18
  104. package/out/concepts/Module__.js.map +1 -1
  105. package/out/concepts/Namespace__.d.ts +5 -1
  106. package/out/concepts/Namespace__.js +36 -25
  107. package/out/concepts/Namespace__.js.map +1 -1
  108. package/out/concepts/NullLiteral__.d.ts +3 -0
  109. package/out/concepts/NullLiteral__.js +11 -1
  110. package/out/concepts/NullLiteral__.js.map +1 -1
  111. package/out/concepts/NumericLiteral__.d.ts +1 -1
  112. package/out/concepts/NumericLiteral__.js +17 -6
  113. package/out/concepts/NumericLiteral__.js.map +1 -1
  114. package/out/concepts/Param__.d.ts +7 -3
  115. package/out/concepts/Param__.js +57 -28
  116. package/out/concepts/Param__.js.map +1 -1
  117. package/out/concepts/ProcessComponent__.js +4 -4
  118. package/out/concepts/ProcessComponent__.js.map +1 -1
  119. package/out/concepts/ProcessElement__.d.ts +0 -4
  120. package/out/concepts/ProcessElement__.js +112 -49
  121. package/out/concepts/ProcessElement__.js.map +1 -1
  122. package/out/concepts/ProcessOutcome__.js +1 -1
  123. package/out/concepts/ProcessOutcome__.js.map +1 -1
  124. package/out/concepts/Process__.d.ts +7 -1
  125. package/out/concepts/Process__.js +77 -81
  126. package/out/concepts/Process__.js.map +1 -1
  127. package/out/concepts/QueryAggregateExpression__.js +1 -1
  128. package/out/concepts/QueryAggregateExpression__.js.map +1 -1
  129. package/out/concepts/QueryFromExpression__.js +2 -2
  130. package/out/concepts/QueryFromExpression__.js.map +1 -1
  131. package/out/concepts/QueryJoinExpression__.js +4 -4
  132. package/out/concepts/QueryJoinExpression__.js.map +1 -1
  133. package/out/concepts/QueryLimitExpression__.js +3 -3
  134. package/out/concepts/QueryLimitExpression__.js.map +1 -1
  135. package/out/concepts/QuerySelectExpression__.js +2 -2
  136. package/out/concepts/QuerySelectExpression__.js.map +1 -1
  137. package/out/concepts/Return__.d.ts +4 -1
  138. package/out/concepts/Return__.js +67 -21
  139. package/out/concepts/Return__.js.map +1 -1
  140. package/out/concepts/Role__.d.ts +4 -0
  141. package/out/concepts/Role__.js +13 -4
  142. package/out/concepts/Role__.js.map +1 -1
  143. package/out/concepts/SqlQueryComponent__.js +2 -2
  144. package/out/concepts/SqlQueryComponent__.js.map +1 -1
  145. package/out/concepts/StringLiteral__.d.ts +1 -1
  146. package/out/concepts/StringLiteral__.js +21 -31
  147. package/out/concepts/StringLiteral__.js.map +1 -1
  148. package/out/concepts/StructureProperty__.d.ts +5 -4
  149. package/out/concepts/StructureProperty__.js +55 -26
  150. package/out/concepts/StructureProperty__.js.map +1 -1
  151. package/out/concepts/Structure__.d.ts +44 -30
  152. package/out/concepts/Structure__.js +42 -10
  153. package/out/concepts/Structure__.js.map +1 -1
  154. package/out/concepts/SwitchCase__.js +4 -4
  155. package/out/concepts/SwitchCase__.js.map +1 -1
  156. package/out/concepts/SwitchStatement__.js +2 -2
  157. package/out/concepts/SwitchStatement__.js.map +1 -1
  158. package/out/concepts/TypeAnnotation__.d.ts +5 -5
  159. package/out/concepts/TypeAnnotation__.js +74 -20
  160. package/out/concepts/TypeAnnotation__.js.map +1 -1
  161. package/out/concepts/UnaryExpression__.js +10 -8
  162. package/out/concepts/UnaryExpression__.js.map +1 -1
  163. package/out/concepts/Unparsed__.js +1 -1
  164. package/out/concepts/Unparsed__.js.map +1 -1
  165. package/out/concepts/ValidationRule__.d.ts +1 -0
  166. package/out/concepts/ValidationRule__.js +48 -13
  167. package/out/concepts/ValidationRule__.js.map +1 -1
  168. package/out/concepts/Variable__.d.ts +10 -1
  169. package/out/concepts/Variable__.js +70 -18
  170. package/out/concepts/Variable__.js.map +1 -1
  171. package/out/concepts/ViewComponent__.js +10 -10
  172. package/out/concepts/ViewComponent__.js.map +1 -1
  173. package/out/concepts/ViewElement__.d.ts +17 -11
  174. package/out/concepts/ViewElement__.js +299 -201
  175. package/out/concepts/ViewElement__.js.map +1 -1
  176. package/out/concepts/View__.d.ts +12 -13
  177. package/out/concepts/View__.js +106 -103
  178. package/out/concepts/View__.js.map +1 -1
  179. package/out/concepts/WhileStatement__.js +3 -3
  180. package/out/concepts/WhileStatement__.js.map +1 -1
  181. package/out/concepts/basics/stdlib/index.js +4 -1
  182. package/out/concepts/basics/stdlib/index.js.map +1 -1
  183. package/out/concepts/basics/stdlib/{nasl.validate.d.ts → nasl.auth.d.ts} +0 -0
  184. package/out/concepts/basics/stdlib/nasl.auth.js +30 -0
  185. package/out/concepts/basics/stdlib/nasl.auth.js.map +1 -0
  186. package/out/concepts/basics/stdlib/nasl.browser copy.d.ts +3 -0
  187. package/out/concepts/basics/stdlib/nasl.browser copy.js +70 -0
  188. package/out/concepts/basics/stdlib/nasl.browser copy.js.map +1 -0
  189. package/out/concepts/basics/stdlib/nasl.browser.d.ts +3 -0
  190. package/out/concepts/basics/stdlib/nasl.browser.js +41 -0
  191. package/out/concepts/basics/stdlib/nasl.browser.js.map +1 -0
  192. package/out/concepts/basics/stdlib/nasl.configuration.d.ts +3 -0
  193. package/out/concepts/basics/stdlib/nasl.configuration.js +25 -0
  194. package/out/concepts/basics/stdlib/nasl.configuration.js.map +1 -0
  195. package/out/concepts/basics/stdlib/nasl.ui.js +20 -0
  196. package/out/concepts/basics/stdlib/nasl.ui.js.map +1 -1
  197. package/out/concepts/basics/stdlib/nasl.util.js +149 -13
  198. package/out/concepts/basics/stdlib/nasl.util.js.map +1 -1
  199. package/out/concepts/basics/stdlib/nasl.validation.js +54 -20
  200. package/out/concepts/basics/stdlib/nasl.validation.js.map +1 -1
  201. package/out/concepts/basics/types/coreTypeList.js +11 -10
  202. package/out/concepts/basics/types/coreTypeList.js.map +1 -1
  203. package/out/concepts/index__.d.ts +1 -0
  204. package/out/concepts/index__.js +1 -0
  205. package/out/concepts/index__.js.map +1 -1
  206. package/out/config.d.ts +1 -2
  207. package/out/config.js +1 -2
  208. package/out/config.js.map +1 -1
  209. package/out/enums/KEYWORDS.d.ts +3 -0
  210. package/out/enums/KEYWORDS.js +1208 -0
  211. package/out/enums/KEYWORDS.js.map +1 -0
  212. package/out/enums/LEVEL_NAME_MAP.d.ts +26 -0
  213. package/out/enums/LEVEL_NAME_MAP.js +30 -0
  214. package/out/enums/LEVEL_NAME_MAP.js.map +1 -0
  215. package/out/eventBus.d.ts +3 -0
  216. package/out/eventBus.js +7 -0
  217. package/out/eventBus.js.map +1 -0
  218. package/out/generator/genBundleFiles.d.ts +7 -2
  219. package/out/generator/genBundleFiles.js +168 -27
  220. package/out/generator/genBundleFiles.js.map +1 -1
  221. package/out/generator/genMetaData.d.ts +20 -20
  222. package/out/generator/genMetaData.js +50 -15
  223. package/out/generator/genMetaData.js.map +1 -1
  224. package/out/index.d.ts +2 -0
  225. package/out/index.js +2 -0
  226. package/out/index.js.map +1 -1
  227. package/out/manager/diagnostic.d.ts +1 -1
  228. package/out/server/createUiTs.d.ts +1 -0
  229. package/out/server/createUiTs.js +49 -5
  230. package/out/server/createUiTs.js.map +1 -1
  231. package/out/server/entity2LogicNamespace.js +38 -23
  232. package/out/server/entity2LogicNamespace.js.map +1 -1
  233. package/out/server/getExtensionModules.js +2 -0
  234. package/out/server/getExtensionModules.js.map +1 -1
  235. package/out/server/getFunctions.d.ts +1 -0
  236. package/out/server/getFunctions.js +7 -1
  237. package/out/server/getFunctions.js.map +1 -1
  238. package/out/server/getLogics.js +63 -18
  239. package/out/server/getLogics.js.map +1 -1
  240. package/out/server/getMemberIdentifier.d.ts +16 -1
  241. package/out/server/getMemberIdentifier.js +279 -36
  242. package/out/server/getMemberIdentifier.js.map +1 -1
  243. package/out/server/getProcesses.d.ts +6 -1
  244. package/out/server/getProcesses.js +243 -1
  245. package/out/server/getProcesses.js.map +1 -1
  246. package/out/server/getScope.d.ts +11 -0
  247. package/out/server/getScope.js +45 -0
  248. package/out/server/getScope.js.map +1 -0
  249. package/out/server/index.js +4 -0
  250. package/out/server/index.js.map +1 -1
  251. package/out/server/naslServer.d.ts +30 -53
  252. package/out/server/naslServer.js +682 -363
  253. package/out/server/naslServer.js.map +1 -1
  254. package/out/server/process2LogicNamespace.d.ts +10 -0
  255. package/out/server/process2LogicNamespace.js +29 -1
  256. package/out/server/process2LogicNamespace.js.map +1 -1
  257. package/out/server/translator.d.ts +22 -3
  258. package/out/server/translator.js +367 -123
  259. package/out/server/translator.js.map +1 -1
  260. package/out/service/creator/add.configs.d.ts +1 -0
  261. package/out/service/creator/add.configs.js +68 -0
  262. package/out/service/creator/add.configs.js.map +1 -0
  263. package/out/service/creator/errHandles.d.ts +18 -0
  264. package/out/service/creator/errHandles.js +60 -0
  265. package/out/service/creator/errHandles.js.map +1 -0
  266. package/out/service/creator/index.d.ts +1 -0
  267. package/out/service/creator/index.js +72 -0
  268. package/out/service/creator/index.js.map +1 -0
  269. package/out/service/storage/api.d.ts +18 -0
  270. package/out/service/storage/api.js +17 -0
  271. package/out/service/storage/api.js.map +1 -0
  272. package/out/service/storage/init.js +200 -37
  273. package/out/service/storage/init.js.map +1 -1
  274. package/out/service/storage/service.d.ts +2 -0
  275. package/out/service/storage/service.js +10 -0
  276. package/out/service/storage/service.js.map +1 -0
  277. package/out/service/storage/storagePoint.d.ts +1 -14
  278. package/out/service/storage/storagePoint.js +16 -16
  279. package/out/service/storage/storagePoint.js.map +1 -1
  280. package/out/templator/genCreateBlock.js +6 -6
  281. package/out/templator/genCreateBlock.js.map +1 -1
  282. package/out/templator/genCurdEditMultipleKeyBlock.js +13 -17
  283. package/out/templator/genCurdEditMultipleKeyBlock.js.map +1 -1
  284. package/out/templator/genCurdMultipleKeyBlock.js +11 -11
  285. package/out/templator/genCurdMultipleKeyBlock.js.map +1 -1
  286. package/out/templator/genEditTableBlock.js +5 -5
  287. package/out/templator/genEditTableBlock.js.map +1 -1
  288. package/out/templator/genEnumSelectBlock.js +2 -2
  289. package/out/templator/genEnumSelectBlock.js.map +1 -1
  290. package/out/templator/genGetBlock.js +5 -3
  291. package/out/templator/genGetBlock.js.map +1 -1
  292. package/out/templator/genGridViewBlock.d.ts +3 -1
  293. package/out/templator/genGridViewBlock.js +61 -6
  294. package/out/templator/genGridViewBlock.js.map +1 -1
  295. package/out/templator/genQueryComponent.d.ts +2 -0
  296. package/out/templator/genQueryComponent.js +27 -14
  297. package/out/templator/genQueryComponent.js.map +1 -1
  298. package/out/templator/genTableBlock.d.ts +1 -1
  299. package/out/templator/genTableBlock.js +4 -5
  300. package/out/templator/genTableBlock.js.map +1 -1
  301. package/out/templator/genUpdateBlock.js +9 -10
  302. package/out/templator/genUpdateBlock.js.map +1 -1
  303. package/out/templator/utils.d.ts +13 -4
  304. package/out/templator/utils.js +8 -4
  305. package/out/templator/utils.js.map +1 -1
  306. package/out/test/fixtures/env.js +0 -1
  307. package/out/test/fixtures/env.js.map +1 -1
  308. package/out/test/units/page/Element.spec.js +3 -3
  309. package/out/test/units/page/Element.spec.js.map +1 -1
  310. package/out/test/units/temp/temp.spec.js +1 -1
  311. package/out/test/units/temp/temp.spec.js.map +1 -1
  312. package/out/utils/index.d.ts +6 -0
  313. package/out/utils/index.js +20 -1
  314. package/out/utils/index.js.map +1 -1
  315. package/package.json +2 -1
  316. package/src/automate/engine/index.js +118 -38
  317. package/src/automate/engine/utils.js +49 -19
  318. package/src/common/BaseNode.ts +229 -81
  319. package/src/concepts/App__.ts +77 -37
  320. package/src/concepts/Argument__.ts +23 -3
  321. package/src/concepts/Assignee__.ts +437 -0
  322. package/src/concepts/Assignment__.ts +4 -1
  323. package/src/concepts/BinaryExpression__.ts +9 -7
  324. package/src/concepts/BindAttribute__.ts +68 -8
  325. package/src/concepts/BindDirective__.ts +21 -2
  326. package/src/concepts/BindEvent__.ts +67 -35
  327. package/src/concepts/BooleanLiteral__.ts +8 -0
  328. package/src/concepts/CallFunction__.ts +42 -25
  329. package/src/concepts/CallInterface__.ts +236 -26
  330. package/src/concepts/CallLogic__.ts +114 -86
  331. package/src/concepts/CallQueryComponent__.ts +35 -20
  332. package/src/concepts/Comment__.ts +6 -2
  333. package/src/concepts/CompletionProperty__.ts +5 -1
  334. package/src/concepts/ConfigGroup__.ts +2 -2
  335. package/src/concepts/ConfigProperty__.ts +2 -2
  336. package/src/concepts/Configuration__.ts +2 -2
  337. package/src/concepts/Constant__.ts +12 -0
  338. package/src/concepts/Destination__.ts +92 -20
  339. package/src/concepts/End__.ts +8 -1
  340. package/src/concepts/EntityProperty__.ts +69 -5
  341. package/src/concepts/Entity__.ts +40 -23
  342. package/src/concepts/Enum__.ts +16 -11
  343. package/src/concepts/Event__.ts +2 -2
  344. package/src/concepts/ForEachStatement__.ts +14 -19
  345. package/src/concepts/Function__.ts +9 -9
  346. package/src/concepts/Identifier__.ts +82 -33
  347. package/src/concepts/IfStatement__.ts +4 -4
  348. package/src/concepts/InterfaceParam__.ts +51 -21
  349. package/src/concepts/Interface__.ts +166 -46
  350. package/src/concepts/JSBlock__.ts +4 -0
  351. package/src/concepts/LogicItem__.ts +16 -1
  352. package/src/concepts/Logic__.ts +183 -36
  353. package/src/concepts/MemberExpression__.ts +57 -13
  354. package/src/concepts/Module__.ts +176 -140
  355. package/src/concepts/Namespace__.ts +37 -25
  356. package/src/concepts/NullLiteral__.ts +8 -1
  357. package/src/concepts/NumericLiteral__.ts +17 -6
  358. package/src/concepts/Param__.ts +58 -30
  359. package/src/concepts/ProcessComponent__.ts +4 -4
  360. package/src/concepts/ProcessElement__.ts +138 -39
  361. package/src/concepts/ProcessOutcome__.ts +1 -1
  362. package/src/concepts/Process__.ts +81 -94
  363. package/src/concepts/QueryAggregateExpression__.ts +1 -1
  364. package/src/concepts/QueryFromExpression__.ts +2 -2
  365. package/src/concepts/QueryJoinExpression__.ts +4 -4
  366. package/src/concepts/QueryLimitExpression__.ts +3 -12
  367. package/src/concepts/QuerySelectExpression__.ts +2 -2
  368. package/src/concepts/Return__.ts +62 -23
  369. package/src/concepts/Role__.ts +11 -4
  370. package/src/concepts/SqlQueryComponent__.ts +2 -2
  371. package/src/concepts/StringLiteral__.ts +20 -31
  372. package/src/concepts/StructureProperty__.ts +50 -25
  373. package/src/concepts/Structure__.ts +75 -41
  374. package/src/concepts/SwitchCase__.ts +4 -4
  375. package/src/concepts/SwitchStatement__.ts +2 -2
  376. package/src/concepts/TypeAnnotation__.ts +71 -18
  377. package/src/concepts/UnaryExpression__.ts +10 -8
  378. package/src/concepts/Unparsed__.ts +1 -1
  379. package/src/concepts/ValidationRule__.ts +44 -14
  380. package/src/concepts/Variable__.ts +69 -19
  381. package/src/concepts/ViewComponent__.ts +10 -10
  382. package/src/concepts/ViewElement__.ts +297 -199
  383. package/src/concepts/View__.ts +114 -107
  384. package/src/concepts/WhileStatement__.ts +4 -4
  385. package/src/concepts/basics/stdlib/index.ts +4 -2
  386. package/src/concepts/basics/stdlib/nasl.auth.ts +26 -0
  387. package/src/concepts/basics/stdlib/nasl.browser.ts +37 -0
  388. package/src/concepts/basics/stdlib/nasl.configuration.ts +21 -0
  389. package/src/concepts/basics/stdlib/nasl.ui.ts +20 -1
  390. package/src/concepts/basics/stdlib/nasl.util.ts +151 -13
  391. package/src/concepts/basics/stdlib/nasl.validation.ts +45 -11
  392. package/src/concepts/basics/types/coreTypeList.ts +11 -10
  393. package/src/concepts/index__.ts +1 -0
  394. package/src/config.ts +1 -2
  395. package/src/enums/KEYWORDS.ts +1206 -0
  396. package/src/{terms → enums}/LEVEL_NAME_MAP.ts +0 -0
  397. package/src/eventBus.ts +5 -0
  398. package/src/generator/genBundleFiles.ts +192 -40
  399. package/src/generator/genMetaData.ts +72 -21
  400. package/src/index.ts +2 -0
  401. package/src/manager/diagnostic.ts +1 -1
  402. package/src/server/createUiTs.ts +50 -8
  403. package/src/server/entity2LogicNamespace.ts +41 -25
  404. package/src/server/getExtensionModules.ts +2 -0
  405. package/src/server/getFunctions.ts +6 -0
  406. package/src/server/getLogics.ts +66 -19
  407. package/src/server/getMemberIdentifier.ts +276 -39
  408. package/src/server/getProcesses.ts +248 -4
  409. package/src/server/getScope.ts +50 -0
  410. package/src/server/index.ts +12 -1
  411. package/src/server/naslServer.ts +689 -389
  412. package/src/server/process2LogicNamespace.ts +30 -2
  413. package/src/server/translator.ts +423 -128
  414. package/src/service/config/index.js +1 -1
  415. package/src/service/creator/errHandles.js +5 -2
  416. package/src/service/creator/index.js +0 -6
  417. package/src/service/storage/api.js +14 -0
  418. package/src/service/storage/init.ts +204 -47
  419. package/src/service/storage/service.ts +6 -0
  420. package/src/service/storage/storagePoint.ts +16 -16
  421. package/src/templator/genCreateBlock.ts +6 -6
  422. package/src/templator/genCurdEditMultipleKeyBlock.ts +29 -30
  423. package/src/templator/genCurdMultipleKeyBlock.ts +11 -11
  424. package/src/templator/genEditTableBlock.ts +5 -5
  425. package/src/templator/genEnumSelectBlock.ts +2 -2
  426. package/src/templator/genGetBlock.ts +6 -8
  427. package/src/templator/genGridViewBlock.ts +59 -9
  428. package/src/templator/genQueryComponent.ts +39 -28
  429. package/src/templator/genTableBlock.ts +5 -9
  430. package/src/templator/genUpdateBlock.ts +9 -11
  431. package/src/templator/utils.ts +9 -6
  432. package/src/test/fixtures/env.ts +0 -2
  433. package/src/test/units/page/Element.spec.ts +3 -3
  434. package/src/test/units/temp/temp.spec.ts +1 -1
  435. package/src/utils/index.ts +19 -0
  436. package/out/concepts/basics/stdlib/nasl.validate.js +0 -527
  437. package/out/concepts/basics/stdlib/nasl.validate.js.map +0 -1
  438. package/out/data/Module.d.ts +0 -34
  439. package/out/data/Module.js +0 -53
  440. package/out/data/Module.js.map +0 -1
  441. package/src/automate/engine/index.d.ts +0 -3
@@ -170,7 +170,7 @@ export class Function extends BaseNode {
170
170
  name: options,
171
171
  }, this, 'typeParams');
172
172
  } else if (options instanceof TypeParam) {
173
- options.delete(); // 同一实例不支持多处存在
173
+ options.ensureDelete(); // 同一实例不支持多处存在
174
174
  typeParam = options;
175
175
  Object.assign(typeParam, relationOptions);
176
176
  } else {
@@ -258,7 +258,7 @@ export class Function extends BaseNode {
258
258
 
259
259
  addTypeParam(options?: string | Partial<TypeParam> | TypeParam) {
260
260
  const node = this._addTypeParam(options as any);
261
- const index = this.typeParams.length;
261
+ const index = this.typeParams.indexOf(node);
262
262
  node.create({
263
263
  index,
264
264
  parentNode: this,
@@ -308,7 +308,7 @@ export class Function extends BaseNode {
308
308
  name: options,
309
309
  }, this, 'params');
310
310
  } else if (options instanceof Param) {
311
- options.delete(); // 同一实例不支持多处存在
311
+ options.ensureDelete(); // 同一实例不支持多处存在
312
312
  param = options;
313
313
  Object.assign(param, relationOptions);
314
314
  } else {
@@ -396,7 +396,7 @@ export class Function extends BaseNode {
396
396
 
397
397
  addParam(options?: string | Partial<Param> | Param) {
398
398
  const node = this._addParam(options as any);
399
- const index = this.params.length;
399
+ const index = this.params.indexOf(node);
400
400
  node.create({
401
401
  index,
402
402
  parentNode: this,
@@ -406,7 +406,7 @@ export class Function extends BaseNode {
406
406
  }
407
407
 
408
408
 
409
- getReturnUniqueName(name = 'result1') {
409
+ getReturnUniqueName(name = 'result') {
410
410
  return utils.unique(name, this.getVarExistingNames());
411
411
  }
412
412
 
@@ -446,7 +446,7 @@ export class Function extends BaseNode {
446
446
  name: options,
447
447
  }, this, 'returns');
448
448
  } else if (options instanceof Return) {
449
- options.delete(); // 同一实例不支持多处存在
449
+ options.ensureDelete(); // 同一实例不支持多处存在
450
450
  ret = options;
451
451
  Object.assign(ret, relationOptions);
452
452
  } else {
@@ -534,7 +534,7 @@ export class Function extends BaseNode {
534
534
 
535
535
  addReturn(options?: string | Partial<Return> | Return) {
536
536
  const node = this._addReturn(options as any);
537
- const index = this.returns.length;
537
+ const index = this.returns.indexOf(node);
538
538
  node.create({
539
539
  index,
540
540
  parentNode: this,
@@ -584,7 +584,7 @@ export class Function extends BaseNode {
584
584
  name: options,
585
585
  }, this, 'variables');
586
586
  } else if (options instanceof Variable) {
587
- options.delete(); // 同一实例不支持多处存在
587
+ options.ensureDelete(); // 同一实例不支持多处存在
588
588
  variable = options;
589
589
  Object.assign(variable, relationOptions);
590
590
  } else {
@@ -672,7 +672,7 @@ export class Function extends BaseNode {
672
672
 
673
673
  addVariable(options?: string | Partial<Variable> | Variable) {
674
674
  const node = this._addVariable(options as any);
675
- const index = this.variables.length;
675
+ const index = this.variables.indexOf(node);
676
676
  node.create({
677
677
  index,
678
678
  parentNode: this,
@@ -1,5 +1,5 @@
1
1
  import { TranslatorState, shiftState, withSourceMap, indent, createCompilerState } from '../translator';
2
- import { BindAttribute, CallFunction, CallLogic, Argument } from '..';
2
+ import { BindAttribute, CallFunction, CallLogic, Argument, MemberExpression, TypeAnnotation } from '..';
3
3
  import { ElementToVueOptions } from './ViewElement__';
4
4
 
5
5
  //================================================================================
@@ -64,46 +64,91 @@ export class Identifier extends LogicItem {
64
64
  // ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
65
65
  // 自动生成的代码已结束。下面可以手动编写。
66
66
  //================================================================================
67
+
68
+ // 选中的数据类型,这个用作暂存
69
+ typeAnnotation: TypeAnnotation = undefined;
70
+
67
71
  globalDataMap: {
68
- [name: string]: boolean
72
+ [name: string]: boolean;
69
73
  } = {
70
74
  $route: true,
71
75
  $global: true,
72
76
  $refs: true,
73
77
  };
74
78
 
79
+ isEnum() {
80
+ const namespace = this.namespace;
81
+ if (namespace) {
82
+ const namespaceArr = namespace.split('.');
83
+ const start = namespaceArr.shift();
84
+ if (start === 'app' || start === 'extensions') {
85
+ const mod = start === 'app' ? 0 : 1;
86
+ const keywordViews = namespaceArr.filter((namespaceItem, index) => index % 2 === mod);
87
+ const last = keywordViews.pop();
88
+ return last === 'enums';
89
+ }
90
+ }
91
+ return false;
92
+ }
93
+
75
94
  toVue(options?: ElementToVueOptions): string {
76
- return this.name;
95
+ let name = this.name;
96
+ const namespace = this.namespace;
97
+ if (namespace) {
98
+ if ((this.namespace.endsWith('nasl.browser') || this.namespace.endsWith('nasl.auth') || this.namespace.endsWith('nasl.configuration'))) {
99
+ name = `$global.${this.name}`;
100
+ } else if (this.isEnum()) {
101
+ name = `$utils.EnumList("${this.name}")`;
102
+ }
103
+ }
104
+ return name;
77
105
  }
78
106
 
79
107
  toUI(): string {
80
- return this.name;
108
+ let name = this.name;
109
+ const namespace = this.namespace;
110
+ if (namespace) {
111
+ if (namespace.startsWith('nasl.')) {
112
+ name = `${namespace}.${this.name}`;
113
+ } else if (this.isEnum()) {
114
+ name = `$utils.EnumList("${this.name}")`;
115
+ }
116
+ }
117
+ return name;
81
118
  }
82
119
 
83
120
  toJS(): string {
84
121
  const dataMap: {
85
- [name: string]: boolean
122
+ [name: string]: boolean;
86
123
  } = {};
87
- if (this.view) {
88
- const { params, variables } = this.view;
89
- if (Array.isArray(params)) {
90
- params.forEach((param) => {
91
- dataMap[param.name] = true;
92
- });
93
- }
94
- if (Array.isArray(variables)) {
95
- variables.forEach((variable) => {
96
- dataMap[variable.name] = true;
97
- });
98
- }
99
- }
124
+
125
+ this.view?.params?.forEach((param) => {
126
+ dataMap[param.name] = true;
127
+ });
128
+ this.view?.variables?.forEach((variable) => {
129
+ dataMap[variable.name] = true;
130
+ });
100
131
  const parentNode = this.parentNode;
101
- const grandParentNode = parentNode?.parentNode;
102
- let isMemberExpression = false;
103
- if (parentNode?.concept === 'MemberExpression' && (grandParentNode?.concept === 'MemberExpression' || this.parentKey === 'property')) {
104
- isMemberExpression = true;
132
+ let isMemberExpressionProperty = false;
133
+ if (parentNode?.concept === 'MemberExpression' && this.parentKey === 'property') {
134
+ isMemberExpressionProperty = true;
105
135
  }
106
- return (dataMap[this.name] || this.globalDataMap[this.name]) && !isMemberExpression ? `this.${this.name}` : this.name;
136
+ let name = this.name;
137
+ const namespace = this.namespace;
138
+ if (namespace) {
139
+ if (namespace.endsWith('nasl.browser') || namespace.endsWith('nasl.auth') || namespace.endsWith('nasl.configuration')) {
140
+ name = `$global.${this.name}`;
141
+ } else if (this.isEnum()) {
142
+ name = `$utils.EnumList("${this.name}")`;
143
+ }
144
+ }
145
+ return (dataMap[name]
146
+ || this.globalDataMap[name]
147
+ || namespace?.endsWith('nasl.browser')
148
+ || namespace?.endsWith('nasl.auth')
149
+ || namespace?.endsWith('nasl.configuration')
150
+ || this.isEnum())
151
+ && !isMemberExpressionProperty ? `this.${name}` : name;
107
152
  }
108
153
 
109
154
  @withSourceMap()
@@ -114,7 +159,7 @@ export class Identifier extends LogicItem {
114
159
  const viewLogics = view.logics;
115
160
  const findLogic = viewLogics.find((item) => item.name === this.name);
116
161
  if (findLogic) {
117
- return 'logics.' + this.name;
162
+ return this.name;
118
163
  }
119
164
  }
120
165
  // 因为右侧枚举要赋值就赋值toList方法一下
@@ -122,21 +167,25 @@ export class Identifier extends LogicItem {
122
167
  // 绑定类型
123
168
  if (this.parentNode instanceof BindAttribute) {
124
169
  // this.parentNode.name === 'data-source'
125
- return ((this.namespace + '.') || '') + this.name + '.toList';
170
+ return (this.namespace + '.' || '') + this.name + '.toList';
126
171
  }
127
172
  }
128
173
 
129
174
  // 如果是nasl.util.Enum 的子集里的 Identifier > MemberExpression > Argument > callfunction
130
175
  // nasl.util.Enum 的 右侧是转成字符串的
131
176
  // 如果是identifier 而且枚举
132
- if (this.parentNode.parentNode.parentNode instanceof CallFunction) {
133
- const Argument = this.parentNode.parentNode;
134
- const argIndex = this.parentNode.parentNode.parentNode.arguments.findIndex((item) => item === Argument);
135
- const calleeNamespace = this.parentNode.parentNode.parentNode.calleeNamespace;
136
- const calleeName = this.parentNode.parentNode.parentNode.calleeName;
137
- if (calleeNamespace + '.' + calleeName === 'nasl.util.Enum' && argIndex === 1) {
138
- return (this.namespace ? this.namespace + '.' : '') + this.name + '.toString()';
139
- }
177
+ // if (this.parentNode?.parentNode?.parentNode instanceof CallFunction) {
178
+ // const calleeNamespace = this.parentNode.parentNode.parentNode.calleeNamespace;
179
+ // const calleeName = this.parentNode.parentNode.parentNode.calleeName;
180
+ // if (calleeNamespace + '.' + calleeName === 'nasl.util.Enum') {
181
+ // const str = (this.namespace ? this.namespace + '.' : '') + this.name;
182
+ // return str.includes('.enums.') ? str : str + '.toString()';
183
+ // }
184
+ // }
185
+
186
+ // having 下选择的变量不生成 namespace 前缀
187
+ if (this.namespace === 'inner' && this.getAncestor('CallQueryComponent')) {
188
+ return `__${this.name}` || '__IDENTIFIER__';
140
189
  }
141
190
 
142
191
  return this.namespace ? this.namespace + '.' + this.name : this.name || '__IDENTIFIER__';
@@ -96,7 +96,7 @@ export class IfStatement extends LogicItem {
96
96
  const relationOptions = { parentNode: this, parentKey: 'consequent' };
97
97
  let logicItem: LogicItem;
98
98
  if (options instanceof LogicItem) {
99
- options.delete(); // 同一实例不支持多处存在
99
+ options.ensureDelete(); // 同一实例不支持多处存在
100
100
  logicItem = options;
101
101
  Object.assign(logicItem, relationOptions);
102
102
  } else {
@@ -170,7 +170,7 @@ export class IfStatement extends LogicItem {
170
170
 
171
171
  addItemInConsequent(options?: Partial<LogicItem> | LogicItem) {
172
172
  const node = this._addItemInConsequent(options as any);
173
- const index = this.consequent.length;
173
+ const index = this.consequent.indexOf(node);
174
174
  node.create({
175
175
  index,
176
176
  parentNode: this,
@@ -200,7 +200,7 @@ export class IfStatement extends LogicItem {
200
200
  const relationOptions = { parentNode: this, parentKey: 'alternate' };
201
201
  let logicItem: LogicItem;
202
202
  if (options instanceof LogicItem) {
203
- options.delete(); // 同一实例不支持多处存在
203
+ options.ensureDelete(); // 同一实例不支持多处存在
204
204
  logicItem = options;
205
205
  Object.assign(logicItem, relationOptions);
206
206
  } else {
@@ -274,7 +274,7 @@ export class IfStatement extends LogicItem {
274
274
 
275
275
  addItemInAlternate(options?: Partial<LogicItem> | LogicItem) {
276
276
  const node = this._addItemInAlternate(options as any);
277
- const index = this.alternate.length;
277
+ const index = this.alternate.indexOf(node);
278
278
  node.create({
279
279
  index,
280
280
  parentNode: this,
@@ -2,6 +2,7 @@ import { dataTypesMap } from './basics/types';
2
2
  import { TranslatorState, shiftState, withSourceMap, indent, createCompilerState } from '../translator';
3
3
  import Entity from './Entity__';
4
4
  import Structure from './Structure__';
5
+ import { getNodeByNodeCallee, getNaslNodeByNodeCallee } from '../automate/engine/utils';
5
6
 
6
7
  //================================================================================
7
8
  // 从这里开始到结尾注释之间的代码由 NASL Workbench 自动生成,请不手动修改!
@@ -52,7 +53,7 @@ export class InterfaceParam extends BaseNode {
52
53
  * in
53
54
  */
54
55
  @property()
55
- in: 'query' | 'body' | 'header' | 'cookie' = undefined;
56
+ in: 'query' | 'path' | 'body' | 'header' | 'cookie' = undefined;
56
57
 
57
58
  /**
58
59
  * 是否必填
@@ -137,7 +138,7 @@ export class InterfaceParam extends BaseNode {
137
138
  /**
138
139
  * 设置in
139
140
  */
140
- setIn(inWhich: 'query' | 'body' | 'header' | 'cookie') {
141
+ setIn(inWhich: 'query' | 'path' | 'body' | 'header' | 'cookie') {
141
142
  const object = {
142
143
  in: inWhich,
143
144
  };
@@ -243,7 +244,7 @@ export class InterfaceParam extends BaseNode {
243
244
  // eslint-disable-next-line prefer-rest-params
244
245
  throw new Error('找不到类型:' + arguments[0]);
245
246
  } else {
246
- typeAnnotation._delete();
247
+ typeAnnotation._delete?.();
247
248
  const relationOptions = { parentId: this.id, parentConcept: this.concept, parentNode: this };
248
249
  Object.assign(typeAnnotation, relationOptions);
249
250
  }
@@ -263,34 +264,63 @@ export class InterfaceParam extends BaseNode {
263
264
  }
264
265
 
265
266
  @withSourceMap()
266
- toEmbeddedTS(state?: TranslatorState): string {
267
- let code = this.name;
267
+ toEmbeddedTS(state?: TranslatorState, isOptionalParameter?: boolean): string {
268
+ let code = this.tsName;
269
+ if (isOptionalParameter) {
270
+ code += '?';
271
+ }
268
272
  if (this.typeAnnotation) {
269
273
  code += ': ';
270
274
  code += this.typeAnnotation.toEmbeddedTS(shiftState(state, code));
271
275
  }
276
+ // toTS暂时不需要默认值
277
+ // if (this.defaultValue) {
278
+ // code += ` = ${this.defaultValue}`;
279
+ // }
272
280
  return code;
273
281
  }
274
282
 
283
+ get hasChildren() {
284
+ const { typeKind, typeNamespace } = this.typeAnnotation;
285
+ if (typeKind === 'reference' || typeKind === 'generic') {
286
+ if (typeNamespace.endsWith('.enums'))
287
+ return null;
288
+ return [{}];
289
+ }
290
+ return null;
291
+ }
292
+ get isTreeLeaf() {
293
+ return !this.hasChildren;
294
+ }
275
295
  getSelectRef() {
276
- const { typeName, typeKind, typeNamespace } = this.typeAnnotation;
277
- const moduleNames = typeNamespace.split('.');
278
- let completionChildren;
279
- if (typeKind === 'reference') {
280
- let type: 'entities' | 'structures';
281
- if (typeNamespace.endsWith('entities')) {
282
- type = 'entities';
283
- } else if (typeNamespace.endsWith('structures')) {
284
- // 数据结构比较复杂,会有
285
- type = 'structures';
296
+ try {
297
+ const { typeName, typeKind, typeNamespace } = this.typeAnnotation;
298
+ let completionChildren;
299
+ if (typeKind === 'reference') {
300
+ if (typeNamespace === 'nasl.ui') {
301
+ const node = getNaslNodeByNodeCallee(typeNamespace, typeName);
302
+ const properties = node.properties || [];
303
+ completionChildren = properties;
304
+ } else if (typeNamespace.endsWith('.enums')) {
305
+ completionChildren = undefined;
306
+ } else {
307
+ const node = getNodeByNodeCallee(this.app, typeNamespace + '.' + typeName);
308
+ const properties = node.properties || [];
309
+ completionChildren = properties;
310
+ }
311
+ } else if (typeKind === 'generic') {
312
+ if (typeNamespace === 'nasl.collection') {
313
+ const node = getNaslNodeByNodeCallee(typeNamespace, typeName);
314
+ const properties = node.properties || [];
315
+ completionChildren = properties;
316
+ }
317
+ } else {
318
+ completionChildren = undefined;
286
319
  }
287
- const data = this.app.dependencies.find((item) => item.name === moduleNames[2]);
288
- const properties = (data[type] as Array<Entity | Structure>).find((item) => item.name === typeName)?.properties;
289
- completionChildren = properties;
290
- } else {
291
- completionChildren = undefined;
320
+ return completionChildren;
321
+ } catch (err) {
322
+ console.log(err);
292
323
  }
293
- return completionChildren;
294
324
  }
295
325
  //================================================================================
296
326
  // 从这里开始到结尾注释之间的代码由 NASL Workbench 自动生成,请不手动修改!