@lcap/nasl 3.3.0-alpha.2 → 3.3.0-beta.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 (838) hide show
  1. package/out/automate/upgrader/2.20.js.map +1 -1
  2. package/out/bak/translator.js +55 -1
  3. package/out/bak/translator.js.map +1 -1
  4. package/out/breakpoint/generator/AfterStartNode.js +2 -1
  5. package/out/breakpoint/generator/AfterStartNode.js.map +1 -1
  6. package/out/breakpoint/generator/BeforeEndNode.js +2 -1
  7. package/out/breakpoint/generator/BeforeEndNode.js.map +1 -1
  8. package/out/breakpoint/generator/BreakpointNode.js +30 -9
  9. package/out/breakpoint/generator/BreakpointNode.js.map +1 -1
  10. package/out/breakpoint/shared/constants.d.ts +1 -0
  11. package/out/breakpoint/shared/constants.js +7 -1
  12. package/out/breakpoint/shared/constants.js.map +1 -1
  13. package/out/breakpoint/shared/utils.d.ts +3 -1
  14. package/out/breakpoint/shared/utils.js +24 -5
  15. package/out/breakpoint/shared/utils.js.map +1 -1
  16. package/out/common/BaseNode.d.ts +21 -8
  17. package/out/common/BaseNode.js +115 -69
  18. package/out/common/BaseNode.js.map +1 -1
  19. package/out/common/Command.d.ts +1 -0
  20. package/out/common/Command.js +15 -2
  21. package/out/common/Command.js.map +1 -1
  22. package/out/common/EventEmitter.d.ts +1 -1
  23. package/out/common/EventEmitter.js +1 -3
  24. package/out/common/EventEmitter.js.map +1 -1
  25. package/out/common/index.d.ts +0 -1
  26. package/out/common/index.js +0 -1
  27. package/out/common/index.js.map +1 -1
  28. package/out/concepts/Abort__.d.ts +3 -2
  29. package/out/concepts/Abort__.js +15 -18
  30. package/out/concepts/Abort__.js.map +1 -1
  31. package/out/concepts/Anchor__.d.ts +3 -3
  32. package/out/concepts/Anchor__.js +18 -35
  33. package/out/concepts/Anchor__.js.map +1 -1
  34. package/out/concepts/AnonymousFunction__.d.ts +3 -3
  35. package/out/concepts/AnonymousFunction__.js +29 -53
  36. package/out/concepts/AnonymousFunction__.js.map +1 -1
  37. package/out/concepts/App__.d.ts +160 -157
  38. package/out/concepts/App__.js +106 -80
  39. package/out/concepts/App__.js.map +1 -1
  40. package/out/concepts/Argument__.d.ts +3 -3
  41. package/out/concepts/Argument__.js +22 -42
  42. package/out/concepts/Argument__.js.map +1 -1
  43. package/out/concepts/Assignee__.d.ts +3 -2
  44. package/out/concepts/Assignee__.js +19 -21
  45. package/out/concepts/Assignee__.js.map +1 -1
  46. package/out/concepts/AssignmentLine__.d.ts +3 -2
  47. package/out/concepts/AssignmentLine__.js +15 -17
  48. package/out/concepts/AssignmentLine__.js.map +1 -1
  49. package/out/concepts/Assignment__.d.ts +3 -3
  50. package/out/concepts/Assignment__.js +34 -42
  51. package/out/concepts/Assignment__.js.map +1 -1
  52. package/out/concepts/Attribute__.d.ts +3 -2
  53. package/out/concepts/Attribute__.js +36 -28
  54. package/out/concepts/Attribute__.js.map +1 -1
  55. package/out/concepts/AuthInterface__.d.ts +4 -3
  56. package/out/concepts/AuthInterface__.js +16 -17
  57. package/out/concepts/AuthInterface__.js.map +1 -1
  58. package/out/concepts/AuthLogicForCallInterface__.d.ts +4 -3
  59. package/out/concepts/AuthLogicForCallInterface__.js +37 -27
  60. package/out/concepts/AuthLogicForCallInterface__.js.map +1 -1
  61. package/out/concepts/AuthLogic__.d.ts +4 -3
  62. package/out/concepts/AuthLogic__.js +18 -19
  63. package/out/concepts/AuthLogic__.js.map +1 -1
  64. package/out/concepts/BackendVariable__.d.ts +8 -7
  65. package/out/concepts/BackendVariable__.js +39 -34
  66. package/out/concepts/BackendVariable__.js.map +1 -1
  67. package/out/concepts/Backend__.d.ts +32 -31
  68. package/out/concepts/Backend__.js +23 -22
  69. package/out/concepts/Backend__.js.map +1 -1
  70. package/out/concepts/BatchAssignment__.d.ts +3 -3
  71. package/out/concepts/BatchAssignment__.js +46 -54
  72. package/out/concepts/BatchAssignment__.js.map +1 -1
  73. package/out/concepts/BinaryExpression__.d.ts +3 -3
  74. package/out/concepts/BinaryExpression__.js +30 -62
  75. package/out/concepts/BinaryExpression__.js.map +1 -1
  76. package/out/concepts/BindAttribute__.d.ts +13 -8
  77. package/out/concepts/BindAttribute__.js +137 -83
  78. package/out/concepts/BindAttribute__.js.map +1 -1
  79. package/out/concepts/BindDirective__.d.ts +5 -3
  80. package/out/concepts/BindDirective__.js +34 -28
  81. package/out/concepts/BindDirective__.js.map +1 -1
  82. package/out/concepts/BindEvent__.d.ts +5 -4
  83. package/out/concepts/BindEvent__.js +92 -108
  84. package/out/concepts/BindEvent__.js.map +1 -1
  85. package/out/concepts/BindStyle__.d.ts +5 -3
  86. package/out/concepts/BindStyle__.js +24 -23
  87. package/out/concepts/BindStyle__.js.map +1 -1
  88. package/out/concepts/BooleanLiteral__.d.ts +3 -3
  89. package/out/concepts/BooleanLiteral__.js +17 -24
  90. package/out/concepts/BooleanLiteral__.js.map +1 -1
  91. package/out/concepts/CallAuthInterface__.d.ts +3 -2
  92. package/out/concepts/CallAuthInterface__.js +17 -19
  93. package/out/concepts/CallAuthInterface__.js.map +1 -1
  94. package/out/concepts/CallConnector__.d.ts +5 -4
  95. package/out/concepts/CallConnector__.js +41 -34
  96. package/out/concepts/CallConnector__.js.map +1 -1
  97. package/out/concepts/CallFunction__.d.ts +3 -3
  98. package/out/concepts/CallFunction__.js +33 -71
  99. package/out/concepts/CallFunction__.js.map +1 -1
  100. package/out/concepts/CallInterface__.d.ts +3 -3
  101. package/out/concepts/CallInterface__.js +26 -57
  102. package/out/concepts/CallInterface__.js.map +1 -1
  103. package/out/concepts/CallLogic__.d.ts +6 -6
  104. package/out/concepts/CallLogic__.js +167 -155
  105. package/out/concepts/CallLogic__.js.map +1 -1
  106. package/out/concepts/CallQueryComponent__.d.ts +4 -3
  107. package/out/concepts/CallQueryComponent__.js +57 -41
  108. package/out/concepts/CallQueryComponent__.js.map +1 -1
  109. package/out/concepts/Comment__.d.ts +3 -3
  110. package/out/concepts/Comment__.js +17 -24
  111. package/out/concepts/Comment__.js.map +1 -1
  112. package/out/concepts/CompletionProperty__.d.ts +3 -2
  113. package/out/concepts/CompletionProperty__.js +30 -25
  114. package/out/concepts/CompletionProperty__.js.map +1 -1
  115. package/out/concepts/ConfigGroup__.d.ts +3 -2
  116. package/out/concepts/ConfigGroup__.js +21 -20
  117. package/out/concepts/ConfigGroup__.js.map +1 -1
  118. package/out/concepts/ConfigPropertyValue__.d.ts +3 -2
  119. package/out/concepts/ConfigPropertyValue__.js +16 -16
  120. package/out/concepts/ConfigPropertyValue__.js.map +1 -1
  121. package/out/concepts/ConfigProperty__.d.ts +3 -2
  122. package/out/concepts/ConfigProperty__.js +26 -23
  123. package/out/concepts/ConfigProperty__.js.map +1 -1
  124. package/out/concepts/Configuration__.d.ts +3 -2
  125. package/out/concepts/Configuration__.js +16 -18
  126. package/out/concepts/Configuration__.js.map +1 -1
  127. package/out/concepts/Connection__.d.ts +4 -4
  128. package/out/concepts/Connection__.js +31 -28
  129. package/out/concepts/Connection__.js.map +1 -1
  130. package/out/concepts/ConnectorTrigger__.d.ts +7 -6
  131. package/out/concepts/ConnectorTrigger__.js +22 -21
  132. package/out/concepts/ConnectorTrigger__.js.map +1 -1
  133. package/out/concepts/Connector__.d.ts +139 -33
  134. package/out/concepts/Connector__.js +191 -34
  135. package/out/concepts/Connector__.js.map +1 -1
  136. package/out/concepts/Constant__.d.ts +3 -2
  137. package/out/concepts/Constant__.js +25 -23
  138. package/out/concepts/Constant__.js.map +1 -1
  139. package/out/concepts/DataSource__.d.ts +7 -2
  140. package/out/concepts/DataSource__.js +31 -23
  141. package/out/concepts/DataSource__.js.map +1 -1
  142. package/out/concepts/DatabaseTypeAnnotation__.d.ts +5 -4
  143. package/out/concepts/DatabaseTypeAnnotation__.js +18 -18
  144. package/out/concepts/DatabaseTypeAnnotation__.js.map +1 -1
  145. package/out/concepts/Destination__.d.ts +11 -11
  146. package/out/concepts/Destination__.js +39 -89
  147. package/out/concepts/Destination__.js.map +1 -1
  148. package/out/concepts/End__.d.ts +3 -2
  149. package/out/concepts/End__.js +15 -17
  150. package/out/concepts/End__.js.map +1 -1
  151. package/out/concepts/EntityIndex__.d.ts +4 -3
  152. package/out/concepts/EntityIndex__.js +23 -21
  153. package/out/concepts/EntityIndex__.js.map +1 -1
  154. package/out/concepts/EntityProperty__.d.ts +4 -4
  155. package/out/concepts/EntityProperty__.js +51 -67
  156. package/out/concepts/EntityProperty__.js.map +1 -1
  157. package/out/concepts/Entity__.d.ts +3 -3
  158. package/out/concepts/Entity__.js +32 -51
  159. package/out/concepts/Entity__.js.map +1 -1
  160. package/out/concepts/EnumItem__.d.ts +3 -3
  161. package/out/concepts/EnumItem__.js +19 -25
  162. package/out/concepts/EnumItem__.js.map +1 -1
  163. package/out/concepts/Enum__.d.ts +3 -3
  164. package/out/concepts/Enum__.js +23 -35
  165. package/out/concepts/Enum__.js.map +1 -1
  166. package/out/concepts/Event__.d.ts +3 -2
  167. package/out/concepts/Event__.js +24 -21
  168. package/out/concepts/Event__.js.map +1 -1
  169. package/out/concepts/ExternalDestination__.d.ts +6 -5
  170. package/out/concepts/ExternalDestination__.js +25 -25
  171. package/out/concepts/ExternalDestination__.js.map +1 -1
  172. package/out/concepts/ForEachStatement__.d.ts +3 -3
  173. package/out/concepts/ForEachStatement__.js +46 -95
  174. package/out/concepts/ForEachStatement__.js.map +1 -1
  175. package/out/concepts/FrontendLibrary__.d.ts +4 -3
  176. package/out/concepts/FrontendLibrary__.js +27 -25
  177. package/out/concepts/FrontendLibrary__.js.map +1 -1
  178. package/out/concepts/FrontendVariable__.d.ts +4 -3
  179. package/out/concepts/FrontendVariable__.js +12 -12
  180. package/out/concepts/FrontendVariable__.js.map +1 -1
  181. package/out/concepts/Frontend__.d.ts +8 -6
  182. package/out/concepts/Frontend__.js +47 -39
  183. package/out/concepts/Frontend__.js.map +1 -1
  184. package/out/concepts/Function__.d.ts +3 -3
  185. package/out/concepts/Function__.js +37 -60
  186. package/out/concepts/Function__.js.map +1 -1
  187. package/out/concepts/Identifier__.d.ts +4 -3
  188. package/out/concepts/Identifier__.js +30 -29
  189. package/out/concepts/Identifier__.js.map +1 -1
  190. package/out/concepts/IfStatement__.d.ts +3 -3
  191. package/out/concepts/IfStatement__.js +21 -51
  192. package/out/concepts/IfStatement__.js.map +1 -1
  193. package/out/concepts/Integration__.d.ts +93 -2
  194. package/out/concepts/Integration__.js +157 -19
  195. package/out/concepts/Integration__.js.map +1 -1
  196. package/out/concepts/InterfaceParam__.d.ts +30 -4
  197. package/out/concepts/InterfaceParam__.js +58 -24
  198. package/out/concepts/InterfaceParam__.js.map +1 -1
  199. package/out/concepts/Interface__.d.ts +31 -5
  200. package/out/concepts/Interface__.js +89 -34
  201. package/out/concepts/Interface__.js.map +1 -1
  202. package/out/concepts/JSBlock__.d.ts +3 -3
  203. package/out/concepts/JSBlock__.js +17 -24
  204. package/out/concepts/JSBlock__.js.map +1 -1
  205. package/out/concepts/JavaLogic__.d.ts +4 -3
  206. package/out/concepts/JavaLogic__.js +22 -21
  207. package/out/concepts/JavaLogic__.js.map +1 -1
  208. package/out/concepts/LogicItem__.d.ts +3 -8
  209. package/out/concepts/LogicItem__.js +23 -30
  210. package/out/concepts/LogicItem__.js.map +1 -1
  211. package/out/concepts/Logic__.d.ts +17 -18
  212. package/out/concepts/Logic__.js +113 -178
  213. package/out/concepts/Logic__.js.map +1 -1
  214. package/out/concepts/MatchCase__.d.ts +3 -3
  215. package/out/concepts/MatchCase__.js +23 -110
  216. package/out/concepts/MatchCase__.js.map +1 -1
  217. package/out/concepts/Match__.d.ts +3 -3
  218. package/out/concepts/Match__.js +20 -64
  219. package/out/concepts/Match__.js.map +1 -1
  220. package/out/concepts/MemberExpression__.d.ts +4 -3
  221. package/out/concepts/MemberExpression__.js +167 -46
  222. package/out/concepts/MemberExpression__.js.map +1 -1
  223. package/out/concepts/MicroApp__.d.ts +3 -2
  224. package/out/concepts/MicroApp__.js +26 -21
  225. package/out/concepts/MicroApp__.js.map +1 -1
  226. package/out/concepts/Module__.d.ts +220 -48
  227. package/out/concepts/Module__.js +265 -66
  228. package/out/concepts/Module__.js.map +1 -1
  229. package/out/concepts/MsgTriggerEvent__.d.ts +4 -3
  230. package/out/concepts/MsgTriggerEvent__.js +16 -18
  231. package/out/concepts/MsgTriggerEvent__.js.map +1 -1
  232. package/out/concepts/MsgTriggerLauncher__.d.ts +4 -3
  233. package/out/concepts/MsgTriggerLauncher__.js +18 -19
  234. package/out/concepts/MsgTriggerLauncher__.js.map +1 -1
  235. package/out/concepts/Namespace__.d.ts +4 -2
  236. package/out/concepts/Namespace__.js +64 -46
  237. package/out/concepts/Namespace__.js.map +1 -1
  238. package/out/concepts/NewComposite__.d.ts +4 -3
  239. package/out/concepts/NewComposite__.js +71 -133
  240. package/out/concepts/NewComposite__.js.map +1 -1
  241. package/out/concepts/NewList__.d.ts +5 -4
  242. package/out/concepts/NewList__.js +35 -41
  243. package/out/concepts/NewList__.js.map +1 -1
  244. package/out/concepts/NewMap__.d.ts +5 -4
  245. package/out/concepts/NewMap__.js +39 -38
  246. package/out/concepts/NewMap__.js.map +1 -1
  247. package/out/concepts/New__.d.ts +3 -2
  248. package/out/concepts/New__.js +15 -17
  249. package/out/concepts/New__.js.map +1 -1
  250. package/out/concepts/NullLiteral__.d.ts +3 -2
  251. package/out/concepts/NullLiteral__.js +15 -17
  252. package/out/concepts/NullLiteral__.js.map +1 -1
  253. package/out/concepts/NumericLiteral__.d.ts +3 -3
  254. package/out/concepts/NumericLiteral__.js +21 -27
  255. package/out/concepts/NumericLiteral__.js.map +1 -1
  256. package/out/concepts/OqlQueryComponent__.d.ts +3 -3
  257. package/out/concepts/OqlQueryComponent__.js +26 -30
  258. package/out/concepts/OqlQueryComponent__.js.map +1 -1
  259. package/out/concepts/OverriddenLogic__.d.ts +14 -22
  260. package/out/concepts/OverriddenLogic__.js +73 -62
  261. package/out/concepts/OverriddenLogic__.js.map +1 -1
  262. package/out/concepts/Param__.d.ts +3 -3
  263. package/out/concepts/Param__.js +34 -69
  264. package/out/concepts/Param__.js.map +1 -1
  265. package/out/concepts/Point__.d.ts +3 -2
  266. package/out/concepts/Point__.js +16 -16
  267. package/out/concepts/Point__.js.map +1 -1
  268. package/out/concepts/ProcessComponent__.d.ts +3 -2
  269. package/out/concepts/ProcessComponent__.js +24 -22
  270. package/out/concepts/ProcessComponent__.js.map +1 -1
  271. package/out/concepts/ProcessElement__.d.ts +3 -2
  272. package/out/concepts/ProcessElement__.js +61 -46
  273. package/out/concepts/ProcessElement__.js.map +1 -1
  274. package/out/concepts/ProcessOutcome__.d.ts +3 -2
  275. package/out/concepts/ProcessOutcome__.js +17 -18
  276. package/out/concepts/ProcessOutcome__.js.map +1 -1
  277. package/out/concepts/ProcessOutcomes__.d.ts +3 -2
  278. package/out/concepts/ProcessOutcomes__.js +15 -17
  279. package/out/concepts/ProcessOutcomes__.js.map +1 -1
  280. package/out/concepts/Process__.d.ts +5 -7
  281. package/out/concepts/Process__.js +46 -35
  282. package/out/concepts/Process__.js.map +1 -1
  283. package/out/concepts/QueryAggregateExpression__.d.ts +3 -2
  284. package/out/concepts/QueryAggregateExpression__.js +23 -22
  285. package/out/concepts/QueryAggregateExpression__.js.map +1 -1
  286. package/out/concepts/QueryFieldExpression__.d.ts +4 -3
  287. package/out/concepts/QueryFieldExpression__.js +21 -20
  288. package/out/concepts/QueryFieldExpression__.js.map +1 -1
  289. package/out/concepts/QueryFromExpression__.d.ts +4 -3
  290. package/out/concepts/QueryFromExpression__.js +23 -22
  291. package/out/concepts/QueryFromExpression__.js.map +1 -1
  292. package/out/concepts/QueryGroupByExpression__.d.ts +3 -2
  293. package/out/concepts/QueryGroupByExpression__.js +18 -19
  294. package/out/concepts/QueryGroupByExpression__.js.map +1 -1
  295. package/out/concepts/QueryJoinExpression__.d.ts +4 -3
  296. package/out/concepts/QueryJoinExpression__.js +29 -25
  297. package/out/concepts/QueryJoinExpression__.js.map +1 -1
  298. package/out/concepts/QueryLimitExpression__.d.ts +3 -2
  299. package/out/concepts/QueryLimitExpression__.js +22 -22
  300. package/out/concepts/QueryLimitExpression__.js.map +1 -1
  301. package/out/concepts/QueryOrderByExpression__.d.ts +3 -2
  302. package/out/concepts/QueryOrderByExpression__.js +22 -22
  303. package/out/concepts/QueryOrderByExpression__.js.map +1 -1
  304. package/out/concepts/QuerySelectExpression__.d.ts +3 -2
  305. package/out/concepts/QuerySelectExpression__.js +23 -21
  306. package/out/concepts/QuerySelectExpression__.js.map +1 -1
  307. package/out/concepts/Rect__.d.ts +3 -2
  308. package/out/concepts/Rect__.js +20 -18
  309. package/out/concepts/Rect__.js.map +1 -1
  310. package/out/concepts/Return__.d.ts +3 -3
  311. package/out/concepts/Return__.js +29 -45
  312. package/out/concepts/Return__.js.map +1 -1
  313. package/out/concepts/Role__.d.ts +3 -2
  314. package/out/concepts/Role__.js +22 -21
  315. package/out/concepts/Role__.js.map +1 -1
  316. package/out/concepts/SelectMembers__.d.ts +3 -2
  317. package/out/concepts/SelectMembers__.js +20 -21
  318. package/out/concepts/SelectMembers__.js.map +1 -1
  319. package/out/concepts/Slot__.d.ts +3 -2
  320. package/out/concepts/Slot__.js +26 -22
  321. package/out/concepts/Slot__.js.map +1 -1
  322. package/out/concepts/SqlQueryComponent__.d.ts +3 -3
  323. package/out/concepts/SqlQueryComponent__.js +28 -31
  324. package/out/concepts/SqlQueryComponent__.js.map +1 -1
  325. package/out/concepts/Start__.d.ts +3 -2
  326. package/out/concepts/Start__.js +15 -17
  327. package/out/concepts/Start__.js.map +1 -1
  328. package/out/concepts/StringInterpolation__.d.ts +3 -3
  329. package/out/concepts/StringInterpolation__.js +17 -37
  330. package/out/concepts/StringInterpolation__.js.map +1 -1
  331. package/out/concepts/StringLiteral__.d.ts +3 -3
  332. package/out/concepts/StringLiteral__.js +14 -22
  333. package/out/concepts/StringLiteral__.js.map +1 -1
  334. package/out/concepts/StructureProperty__.d.ts +5 -5
  335. package/out/concepts/StructureProperty__.js +33 -40
  336. package/out/concepts/StructureProperty__.js.map +1 -1
  337. package/out/concepts/Structure__.d.ts +3 -12
  338. package/out/concepts/Structure__.js +45 -46
  339. package/out/concepts/Structure__.js.map +1 -1
  340. package/out/concepts/SwitchCase__.d.ts +3 -3
  341. package/out/concepts/SwitchCase__.js +19 -54
  342. package/out/concepts/SwitchCase__.js.map +1 -1
  343. package/out/concepts/SwitchStatement__.d.ts +3 -3
  344. package/out/concepts/SwitchStatement__.js +23 -39
  345. package/out/concepts/SwitchStatement__.js.map +1 -1
  346. package/out/concepts/Theme__.d.ts +3 -2
  347. package/out/concepts/Theme__.js +12 -14
  348. package/out/concepts/Theme__.js.map +1 -1
  349. package/out/concepts/Transactional__.d.ts +3 -2
  350. package/out/concepts/Transactional__.js +18 -17
  351. package/out/concepts/Transactional__.js.map +1 -1
  352. package/out/concepts/TriggerEvent__.d.ts +3 -2
  353. package/out/concepts/TriggerEvent__.js +19 -18
  354. package/out/concepts/TriggerEvent__.js.map +1 -1
  355. package/out/concepts/TriggerLauncher__.d.ts +6 -17
  356. package/out/concepts/TriggerLauncher__.js +26 -63
  357. package/out/concepts/TriggerLauncher__.js.map +1 -1
  358. package/out/concepts/TypeAnnotation__.d.ts +12 -9
  359. package/out/concepts/TypeAnnotation__.js +164 -146
  360. package/out/concepts/TypeAnnotation__.js.map +1 -1
  361. package/out/concepts/TypeParam__.d.ts +3 -3
  362. package/out/concepts/TypeParam__.js +16 -23
  363. package/out/concepts/TypeParam__.js.map +1 -1
  364. package/out/concepts/UnaryExpression__.d.ts +3 -3
  365. package/out/concepts/UnaryExpression__.js +21 -39
  366. package/out/concepts/UnaryExpression__.js.map +1 -1
  367. package/out/concepts/Unparsed__.d.ts +3 -3
  368. package/out/concepts/Unparsed__.js +16 -23
  369. package/out/concepts/Unparsed__.js.map +1 -1
  370. package/out/concepts/UseComponent__.d.ts +3 -2
  371. package/out/concepts/UseComponent__.js +16 -16
  372. package/out/concepts/UseComponent__.js.map +1 -1
  373. package/out/concepts/ValidationRule__.d.ts +3 -2
  374. package/out/concepts/ValidationRule__.js +45 -38
  375. package/out/concepts/ValidationRule__.js.map +1 -1
  376. package/out/concepts/Variable__.d.ts +3 -3
  377. package/out/concepts/Variable__.js +29 -45
  378. package/out/concepts/Variable__.js.map +1 -1
  379. package/out/concepts/ViewBlock__.d.ts +4 -3
  380. package/out/concepts/ViewBlock__.js +20 -19
  381. package/out/concepts/ViewBlock__.js.map +1 -1
  382. package/out/concepts/ViewComponent__.d.ts +32 -31
  383. package/out/concepts/ViewComponent__.js +35 -32
  384. package/out/concepts/ViewComponent__.js.map +1 -1
  385. package/out/concepts/ViewElement__.d.ts +17 -15
  386. package/out/concepts/ViewElement__.js +342 -174
  387. package/out/concepts/ViewElement__.js.map +1 -1
  388. package/out/concepts/View__.d.ts +11 -4
  389. package/out/concepts/View__.js +332 -125
  390. package/out/concepts/View__.js.map +1 -1
  391. package/out/concepts/WhileStatement__.d.ts +3 -3
  392. package/out/concepts/WhileStatement__.js +20 -41
  393. package/out/concepts/WhileStatement__.js.map +1 -1
  394. package/out/concepts/basics/stdlib/nasl.browser.js +1 -0
  395. package/out/concepts/basics/stdlib/nasl.browser.js.map +1 -1
  396. package/out/concepts/basics/stdlib/nasl.event.js +2 -0
  397. package/out/concepts/basics/stdlib/nasl.event.js.map +1 -1
  398. package/out/concepts/index__.d.ts +0 -1
  399. package/out/concepts/index__.js +0 -1
  400. package/out/concepts/index__.js.map +1 -1
  401. package/out/concepts/types__.d.ts +2 -2
  402. package/out/decorators/index.d.ts +2 -0
  403. package/out/decorators/index.js +12 -8
  404. package/out/decorators/index.js.map +1 -1
  405. package/out/generator/genBundleFiles.d.ts +2 -2
  406. package/out/generator/genBundleFiles.js +100 -4
  407. package/out/generator/genBundleFiles.js.map +1 -1
  408. package/out/generator/genReleaseBody.d.ts +4 -2
  409. package/out/generator/genReleaseBody.js +191 -135
  410. package/out/generator/genReleaseBody.js.map +1 -1
  411. package/out/generator/permission.js +3 -3
  412. package/out/generator/permission.js.map +1 -1
  413. package/out/index.d.ts +0 -1
  414. package/out/index.js +0 -1
  415. package/out/index.js.map +1 -1
  416. package/out/sentry/index.js +2 -2
  417. package/out/sentry/index.js.map +1 -1
  418. package/out/server/createUiTs.js +34 -1
  419. package/out/server/createUiTs.js.map +1 -1
  420. package/out/server/extendBaseNode.js +78 -53
  421. package/out/server/extendBaseNode.js.map +1 -1
  422. package/out/server/formatTsUtils.js +72 -73
  423. package/out/server/formatTsUtils.js.map +1 -1
  424. package/out/server/getConnector.d.ts +3 -0
  425. package/out/server/getConnector.js +38 -1
  426. package/out/server/getConnector.js.map +1 -1
  427. package/out/server/getLogics.js +20 -23
  428. package/out/server/getLogics.js.map +1 -1
  429. package/out/server/getMemberIdentifier.d.ts +1 -0
  430. package/out/server/getMemberIdentifier.js +148 -1
  431. package/out/server/getMemberIdentifier.js.map +1 -1
  432. package/out/server/index.js +2 -0
  433. package/out/server/index.js.map +1 -1
  434. package/out/server/naslServer.d.ts +17 -6
  435. package/out/server/naslServer.js +372 -232
  436. package/out/server/naslServer.js.map +1 -1
  437. package/out/server/translator.js +45 -37
  438. package/out/server/translator.js.map +1 -1
  439. package/out/service/creator/add.configs.js +26 -0
  440. package/out/service/creator/add.configs.js.map +1 -1
  441. package/out/service/creator/errHandles.js +5 -3
  442. package/out/service/creator/errHandles.js.map +1 -1
  443. package/out/service/creator/index.js +13 -0
  444. package/out/service/creator/index.js.map +1 -1
  445. package/out/service/defaultErrorMessage.json +6 -6
  446. package/out/service/storage/jsoner.js +1 -1
  447. package/out/service/storage/jsoner.js.map +1 -1
  448. package/out/templator/genCreateBlock.js +5 -3
  449. package/out/templator/genCreateBlock.js.map +1 -1
  450. package/out/templator/genCurdEditMultipleKeyBlock.js +15 -11
  451. package/out/templator/genCurdEditMultipleKeyBlock.js.map +1 -1
  452. package/out/templator/genCurdMultipleKeyBlock.js +10 -9
  453. package/out/templator/genCurdMultipleKeyBlock.js.map +1 -1
  454. package/out/templator/genEditTableBlock.d.ts +1 -1
  455. package/out/templator/genEditTableBlock.js +12 -6
  456. package/out/templator/genEditTableBlock.js.map +1 -1
  457. package/out/templator/genEnumSelectBlock.js +2 -2
  458. package/out/templator/genEnumSelectBlock.js.map +1 -1
  459. package/out/templator/genGetBlock.js +1 -1
  460. package/out/templator/genGetBlock.js.map +1 -1
  461. package/out/templator/genGridViewBlock.d.ts +2 -2
  462. package/out/templator/genGridViewBlock.js +20 -7
  463. package/out/templator/genGridViewBlock.js.map +1 -1
  464. package/out/templator/genListViewBlock.d.ts +2 -2
  465. package/out/templator/genListViewBlock.js +13 -5
  466. package/out/templator/genListViewBlock.js.map +1 -1
  467. package/out/templator/genSelectBlock.d.ts +2 -2
  468. package/out/templator/genSelectBlock.js +8 -6
  469. package/out/templator/genSelectBlock.js.map +1 -1
  470. package/out/templator/genTableBlock.d.ts +1 -1
  471. package/out/templator/genTableBlock.js +11 -6
  472. package/out/templator/genTableBlock.js.map +1 -1
  473. package/out/templator/genUpdateBlock.js +5 -3
  474. package/out/templator/genUpdateBlock.js.map +1 -1
  475. package/out/translator/constant.d.ts +6 -0
  476. package/out/translator/constant.js +10 -0
  477. package/out/translator/constant.js.map +1 -0
  478. package/out/translator/index.d.ts +3 -48
  479. package/out/translator/index.js +17 -110
  480. package/out/translator/index.js.map +1 -1
  481. package/out/translator/types.d.ts +32 -0
  482. package/out/translator/{tsp.js → types.js} +1 -1
  483. package/out/translator/types.js.map +1 -0
  484. package/out/translator/utils.d.ts +17 -0
  485. package/out/translator/utils.js +102 -0
  486. package/out/translator/utils.js.map +1 -0
  487. package/out/utils/cookie.d.ts +9 -0
  488. package/out/utils/cookie.js +62 -0
  489. package/out/utils/cookie.js.map +1 -0
  490. package/out/utils/index.d.ts +2 -0
  491. package/out/utils/index.js +2 -0
  492. package/out/utils/index.js.map +1 -1
  493. package/out/utils/logger.d.ts +4 -0
  494. package/out/utils/logger.js +13 -1
  495. package/out/utils/logger.js.map +1 -1
  496. package/out/utils/types.d.ts +1 -0
  497. package/out/utils/types.js +3 -0
  498. package/out/utils/types.js.map +1 -0
  499. package/out/utils/window.d.ts +7 -0
  500. package/out/utils/window.js +14 -0
  501. package/out/utils/window.js.map +1 -0
  502. package/package.json +5 -10
  503. package/sandbox/stdlib/nasl.auth.ts +40 -44
  504. package/sandbox/stdlib/nasl.core.ts +8 -1
  505. package/sandbox/stdlib/nasl.http.ts +22 -22
  506. package/sandbox/stdlib/nasl.oql.ts +2 -0
  507. package/sandbox/stdlib/nasl.ui.definition.ts +2218 -1415
  508. package/src/automate/upgrader/2.20.js +17 -13
  509. package/src/bak/translator.js +53 -1
  510. package/src/breakpoint/generator/AfterStartNode.ts +2 -1
  511. package/src/breakpoint/generator/BeforeEndNode.ts +2 -1
  512. package/src/breakpoint/generator/BreakpointNode.ts +36 -9
  513. package/src/breakpoint/shared/constants.ts +7 -0
  514. package/src/breakpoint/shared/utils.ts +35 -4
  515. package/src/common/BaseNode.ts +140 -81
  516. package/src/common/Command.ts +14 -1
  517. package/src/common/EventEmitter.ts +2 -4
  518. package/src/common/index.ts +0 -1
  519. package/src/concepts/Abort__.ts +20 -22
  520. package/src/concepts/Anchor__.ts +23 -38
  521. package/src/concepts/AnonymousFunction__.ts +39 -63
  522. package/src/concepts/App__.ts +364 -314
  523. package/src/concepts/Argument__.ts +27 -44
  524. package/src/concepts/Assignee__.ts +41 -39
  525. package/src/concepts/AssignmentLine__.ts +20 -23
  526. package/src/concepts/Assignment__.ts +54 -58
  527. package/src/concepts/Attribute__.ts +40 -34
  528. package/src/concepts/AuthInterface__.ts +22 -24
  529. package/src/concepts/AuthLogicForCallInterface__.ts +71 -41
  530. package/src/concepts/AuthLogic__.ts +21 -30
  531. package/src/concepts/BackendVariable__.ts +55 -54
  532. package/src/concepts/Backend__.ts +58 -59
  533. package/src/concepts/BatchAssignment__.ts +88 -78
  534. package/src/concepts/BinaryExpression__.ts +72 -66
  535. package/src/concepts/BindAttribute__.ts +148 -103
  536. package/src/concepts/BindDirective__.ts +45 -41
  537. package/src/concepts/BindEvent__.ts +120 -149
  538. package/src/concepts/BindStyle__.ts +37 -36
  539. package/src/concepts/BooleanLiteral__.ts +22 -28
  540. package/src/concepts/CallAuthInterface__.ts +29 -32
  541. package/src/concepts/CallConnector__.ts +50 -41
  542. package/src/concepts/CallFunction__.ts +45 -77
  543. package/src/concepts/CallInterface__.ts +36 -68
  544. package/src/concepts/CallLogic__.ts +204 -195
  545. package/src/concepts/CallQueryComponent__.ts +156 -88
  546. package/src/concepts/Comment__.ts +22 -29
  547. package/src/concepts/CompletionProperty__.ts +34 -30
  548. package/src/concepts/ConfigGroup__.ts +28 -29
  549. package/src/concepts/ConfigPropertyValue__.ts +22 -23
  550. package/src/concepts/ConfigProperty__.ts +42 -36
  551. package/src/concepts/Configuration__.ts +23 -26
  552. package/src/concepts/Connection__.ts +40 -41
  553. package/src/concepts/ConnectorTrigger__.ts +30 -34
  554. package/src/concepts/Connector__.ts +342 -87
  555. package/src/concepts/Constant__.ts +30 -36
  556. package/src/concepts/DataSource__.ts +37 -33
  557. package/src/concepts/DatabaseTypeAnnotation__.ts +24 -24
  558. package/src/concepts/Destination__.ts +51 -104
  559. package/src/concepts/End__.ts +23 -25
  560. package/src/concepts/EntityIndex__.ts +36 -33
  561. package/src/concepts/EntityProperty__.ts +64 -84
  562. package/src/concepts/Entity__.ts +41 -67
  563. package/src/concepts/EnumItem__.ts +24 -32
  564. package/src/concepts/Enum__.ts +28 -42
  565. package/src/concepts/Event__.ts +33 -33
  566. package/src/concepts/ExternalDestination__.ts +29 -29
  567. package/src/concepts/ForEachStatement__.ts +64 -114
  568. package/src/concepts/FrontendLibrary__.ts +37 -38
  569. package/src/concepts/FrontendVariable__.ts +18 -20
  570. package/src/concepts/Frontend__.ts +66 -62
  571. package/src/concepts/Function__.ts +54 -80
  572. package/src/concepts/Identifier__.ts +37 -34
  573. package/src/concepts/IfStatement__.ts +40 -77
  574. package/src/concepts/Integration__.ts +244 -24
  575. package/src/concepts/InterfaceParam__.ts +69 -33
  576. package/src/concepts/Interface__.ts +104 -46
  577. package/src/concepts/JSBlock__.ts +22 -28
  578. package/src/concepts/JavaLogic__.ts +27 -26
  579. package/src/concepts/LogicItem__.ts +29 -47
  580. package/src/concepts/Logic__.ts +168 -213
  581. package/src/concepts/MatchCase__.ts +38 -128
  582. package/src/concepts/Match__.ts +28 -73
  583. package/src/concepts/MemberExpression__.ts +197 -54
  584. package/src/concepts/MicroApp__.ts +32 -27
  585. package/src/concepts/Module__.ts +567 -164
  586. package/src/concepts/MsgTriggerEvent__.ts +25 -33
  587. package/src/concepts/MsgTriggerLauncher__.ts +27 -30
  588. package/src/concepts/Namespace__.ts +109 -99
  589. package/src/concepts/NewComposite__.ts +130 -161
  590. package/src/concepts/NewList__.ts +45 -51
  591. package/src/concepts/NewMap__.ts +51 -48
  592. package/src/concepts/New__.ts +20 -22
  593. package/src/concepts/NullLiteral__.ts +20 -22
  594. package/src/concepts/NumericLiteral__.ts +26 -31
  595. package/src/concepts/OqlQueryComponent__.ts +33 -34
  596. package/src/concepts/OverriddenLogic__.ts +128 -94
  597. package/src/concepts/Param__.ts +51 -90
  598. package/src/concepts/Point__.ts +22 -22
  599. package/src/concepts/ProcessComponent__.ts +36 -37
  600. package/src/concepts/ProcessElement__.ts +114 -86
  601. package/src/concepts/ProcessOutcome__.ts +22 -23
  602. package/src/concepts/ProcessOutcomes__.ts +20 -22
  603. package/src/concepts/Process__.ts +69 -63
  604. package/src/concepts/QueryAggregateExpression__.ts +28 -27
  605. package/src/concepts/QueryFieldExpression__.ts +26 -25
  606. package/src/concepts/QueryFromExpression__.ts +29 -28
  607. package/src/concepts/QueryGroupByExpression__.ts +22 -23
  608. package/src/concepts/QueryJoinExpression__.ts +62 -41
  609. package/src/concepts/QueryLimitExpression__.ts +27 -27
  610. package/src/concepts/QueryOrderByExpression__.ts +27 -27
  611. package/src/concepts/QuerySelectExpression__.ts +105 -54
  612. package/src/concepts/Rect__.ts +26 -24
  613. package/src/concepts/Return__.ts +42 -67
  614. package/src/concepts/Role__.ts +25 -25
  615. package/src/concepts/SelectMembers__.ts +30 -32
  616. package/src/concepts/Slot__.ts +32 -30
  617. package/src/concepts/SqlQueryComponent__.ts +41 -37
  618. package/src/concepts/Start__.ts +20 -22
  619. package/src/concepts/StringInterpolation__.ts +25 -45
  620. package/src/concepts/StringLiteral__.ts +19 -26
  621. package/src/concepts/StructureProperty__.ts +38 -47
  622. package/src/concepts/Structure__.ts +55 -58
  623. package/src/concepts/SwitchCase__.ts +40 -74
  624. package/src/concepts/SwitchStatement__.ts +29 -44
  625. package/src/concepts/Theme__.ts +18 -21
  626. package/src/concepts/Transactional__.ts +24 -31
  627. package/src/concepts/TriggerEvent__.ts +28 -29
  628. package/src/concepts/TriggerLauncher__.ts +32 -82
  629. package/src/concepts/TypeAnnotation__.ts +214 -200
  630. package/src/concepts/TypeParam__.ts +21 -28
  631. package/src/concepts/UnaryExpression__.ts +26 -45
  632. package/src/concepts/Unparsed__.ts +20 -25
  633. package/src/concepts/UseComponent__.ts +22 -22
  634. package/src/concepts/ValidationRule__.ts +62 -48
  635. package/src/concepts/Variable__.ts +43 -67
  636. package/src/concepts/ViewBlock__.ts +26 -25
  637. package/src/concepts/ViewComponent__.ts +87 -91
  638. package/src/concepts/ViewElement__.ts +483 -277
  639. package/src/concepts/View__.ts +401 -180
  640. package/src/concepts/WhileStatement__.ts +36 -59
  641. package/src/concepts/basics/stdlib/nasl.browser.ts +1 -0
  642. package/src/concepts/basics/stdlib/nasl.event.ts +2 -0
  643. package/src/concepts/index__.ts +0 -1
  644. package/src/concepts/types__.ts +124 -124
  645. package/src/decorators/index.ts +11 -7
  646. package/src/generator/genBundleFiles.ts +104 -4
  647. package/src/generator/genReleaseBody.ts +197 -181
  648. package/src/generator/permission.ts +3 -3
  649. package/src/index.ts +0 -1
  650. package/src/sentry/index.ts +2 -2
  651. package/src/server/createUiTs.ts +30 -1
  652. package/src/server/extendBaseNode.ts +81 -55
  653. package/src/server/formatTsUtils.ts +64 -75
  654. package/src/server/getConnector.ts +63 -27
  655. package/src/server/getLogics.ts +23 -30
  656. package/src/server/getMemberIdentifier.ts +142 -0
  657. package/src/server/index.ts +4 -1
  658. package/src/server/naslServer.ts +367 -250
  659. package/src/server/translator.ts +41 -42
  660. package/src/service/creator/add.configs.js +26 -1
  661. package/src/service/creator/errHandles.js +5 -4
  662. package/src/service/creator/index.js +12 -0
  663. package/src/service/defaultErrorMessage.json +6 -6
  664. package/src/service/storage/jsoner.ts +1 -1
  665. package/src/templator/genCreateBlock.ts +5 -3
  666. package/src/templator/genCurdEditMultipleKeyBlock.ts +15 -11
  667. package/src/templator/genCurdMultipleKeyBlock.ts +10 -9
  668. package/src/templator/genEditTableBlock.ts +12 -7
  669. package/src/templator/genEnumSelectBlock.ts +2 -2
  670. package/src/templator/genGetBlock.ts +6 -6
  671. package/src/templator/genGridViewBlock.ts +22 -9
  672. package/src/templator/genListViewBlock.ts +14 -5
  673. package/src/templator/genSelectBlock.ts +8 -6
  674. package/src/templator/genTableBlock.ts +11 -10
  675. package/src/templator/genUpdateBlock.ts +5 -3
  676. package/src/translator/constant.ts +7 -0
  677. package/src/translator/index.ts +3 -137
  678. package/src/translator/types.ts +40 -0
  679. package/src/translator/utils.ts +104 -0
  680. package/src/utils/cookie.ts +60 -0
  681. package/src/utils/index.ts +2 -0
  682. package/src/utils/logger.ts +13 -0
  683. package/src/utils/types.ts +1 -0
  684. package/src/utils/window.ts +9 -0
  685. package/test/concepts/boolean-literal/__snapshots__/toEmbeddedTS.spec.ts.snap +11 -0
  686. package/test/concepts/boolean-literal/__snapshots__/toJS.spec.ts.snap +11 -0
  687. package/test/concepts/boolean-literal/__snapshots__/toVue.spec.ts.snap +11 -0
  688. package/test/concepts/boolean-literal/constant.ts +5 -0
  689. package/test/concepts/boolean-literal/fixtures/false.json +4 -0
  690. package/test/concepts/boolean-literal/fixtures/true.json +4 -0
  691. package/test/concepts/boolean-literal/toEmbeddedTS.spec.ts +14 -0
  692. package/test/concepts/boolean-literal/toJS.spec.ts +14 -0
  693. package/test/concepts/boolean-literal/toVue.spec.ts +14 -0
  694. package/test/concepts/call-interface/toEmbeddedTS.spec.ts +6 -6
  695. package/test/concepts/call-interface/toJS.spec.ts +6 -6
  696. package/test/concepts/call-logic/__snapshots__/getQuickInfoOffset.spec.ts.snap +106 -0
  697. package/test/concepts/call-logic/__snapshots__/toEmbeddedTS.spec.ts.snap +45 -0
  698. package/test/concepts/call-logic/__snapshots__/toJS.spec.ts.snap +102 -0
  699. package/test/concepts/call-logic/fixtures/nested-call-logic.json +860 -0
  700. package/test/concepts/call-logic/getQuickInfoOffset.spec.ts +23 -0
  701. package/test/concepts/call-logic/toEmbeddedTS.spec.ts +6 -6
  702. package/test/concepts/call-logic/toJS.spec.ts +6 -6
  703. package/test/concepts/identifier/__snapshots__/toEmbeddedTS.spec.ts.snap +16 -0
  704. package/test/concepts/identifier/__snapshots__/toJS.spec.ts.snap +16 -0
  705. package/test/concepts/identifier/__snapshots__/toVue.spec.ts.snap +16 -0
  706. package/test/concepts/identifier/constant.ts +5 -0
  707. package/test/concepts/identifier/fixtures/data-source.json +5 -0
  708. package/test/concepts/identifier/fixtures/no-namespace.json +4 -0
  709. package/test/concepts/identifier/fixtures/view-variable.json +201 -0
  710. package/test/concepts/identifier/toEmbeddedTS.spec.ts +14 -0
  711. package/test/concepts/identifier/toJS.spec.ts +14 -0
  712. package/test/concepts/identifier/toVue.spec.ts +14 -0
  713. package/test/concepts/match/toEmbeddedTS.spec.ts +6 -6
  714. package/test/concepts/match/toJS.spec.ts +6 -6
  715. package/test/concepts/member-expression/__snapshots__/toEmbeddedTS.spec.ts.snap +21 -0
  716. package/test/concepts/member-expression/__snapshots__/toJS.spec.ts.snap +21 -0
  717. package/test/concepts/member-expression/__snapshots__/toVue.spec.ts.snap +21 -0
  718. package/test/concepts/member-expression/constant.ts +5 -0
  719. package/test/concepts/member-expression/fixtures/app.enums.UserStatusEnum.json +13 -0
  720. package/test/concepts/member-expression/fixtures/elements.table-view.data.json +13 -0
  721. package/test/concepts/member-expression/fixtures/entry.created-by.json +18 -0
  722. package/test/concepts/member-expression/fixtures/nasl.auth.userInfo.json +19 -0
  723. package/test/concepts/member-expression/toEmbeddedTS.spec.ts +14 -0
  724. package/test/concepts/member-expression/toJS.spec.ts +14 -0
  725. package/test/concepts/member-expression/toVue.spec.ts +14 -0
  726. package/test/concepts/null-literal/__snapshots__/toEmbeddedTS.spec.ts.snap +6 -0
  727. package/test/concepts/null-literal/__snapshots__/toJS.spec.ts.snap +6 -0
  728. package/test/concepts/null-literal/__snapshots__/toVue.spec.ts.snap +6 -0
  729. package/test/concepts/null-literal/constant.ts +5 -0
  730. package/test/concepts/null-literal/fixtures/null.json +3 -0
  731. package/test/concepts/null-literal/toEmbeddedTS.spec.ts +14 -0
  732. package/test/concepts/null-literal/toJS.spec.ts +14 -0
  733. package/test/concepts/null-literal/toVue.spec.ts +14 -0
  734. package/test/concepts/numeric-literal/__snapshots__/toEmbeddedTS.spec.ts.snap +6 -0
  735. package/test/concepts/numeric-literal/__snapshots__/toJS.spec.ts.snap +6 -0
  736. package/test/concepts/numeric-literal/__snapshots__/toVue.spec.ts.snap +6 -0
  737. package/test/concepts/numeric-literal/constant.ts +5 -0
  738. package/test/concepts/numeric-literal/fixtures/number.json +10 -0
  739. package/test/concepts/numeric-literal/toEmbeddedTS.spec.ts +14 -0
  740. package/test/concepts/numeric-literal/toJS.spec.ts +14 -0
  741. package/test/concepts/numeric-literal/toVue.spec.ts +14 -0
  742. package/test/concepts/string-literal/__snapshots__/toEmbeddedTS.spec.ts.snap +16 -0
  743. package/test/concepts/string-literal/__snapshots__/toJS.spec.ts.snap +16 -0
  744. package/test/concepts/string-literal/__snapshots__/toVue.spec.ts.snap +16 -0
  745. package/test/concepts/string-literal/constant.ts +5 -0
  746. package/test/concepts/string-literal/fixtures/escape.json +4 -0
  747. package/test/concepts/string-literal/fixtures/space.json +4 -0
  748. package/test/concepts/string-literal/fixtures/string.json +4 -0
  749. package/test/concepts/string-literal/toEmbeddedTS.spec.ts +14 -0
  750. package/test/concepts/string-literal/toJS.spec.ts +14 -0
  751. package/test/concepts/string-literal/toVue.spec.ts +14 -0
  752. package/test/concepts/utils.ts +46 -43
  753. package/test/concepts/validation-rule/__snapshots__/toEmbeddedTS.spec.ts.snap +11 -0
  754. package/test/concepts/validation-rule/__snapshots__/toJS.spec.ts.snap +10 -0
  755. package/test/concepts/validation-rule/fixtures/argument-without-keyword.json +34 -0
  756. package/test/concepts/validation-rule/fixtures/empty-rule.json +9 -0
  757. package/test/concepts/validation-rule/toEmbeddedTS.spec.ts +6 -6
  758. package/test/concepts/validation-rule/toJS.spec.ts +6 -6
  759. package/test/concepts/validation-rule/validation-rule.spec.ts +15 -0
  760. package/test/concepts/view-element/__snapshots__/toEmbeddedTS.spec.ts.snap +592 -0
  761. package/test/concepts/view-element/__snapshots__/toVue.spec.ts.snap +308 -0
  762. package/test/concepts/view-element/fixtures/default-login.json +333 -0
  763. package/test/concepts/view-element/fixtures/default-not-found.json +313 -313
  764. package/test/concepts/view-element/fixtures/with-role-auth.json +148 -0
  765. package/test/concepts/view-element/fixtures/with-table.json +3473 -0
  766. package/test/concepts/view-element/toEmbeddedTS.spec.ts +6 -6
  767. package/test/concepts/view-element/toVue.spec.ts +6 -6
  768. package/ts-worker/package-lock.json +6663 -101
  769. package/ts-worker/webpack.config.js +1 -1
  770. package/out/common/classMap.d.ts +0 -4
  771. package/out/common/classMap.js +0 -5
  772. package/out/common/classMap.js.map +0 -1
  773. package/out/concepts/DataElement__.d.ts +0 -46
  774. package/out/concepts/DataElement__.js +0 -118
  775. package/out/concepts/DataElement__.js.map +0 -1
  776. package/out/natural/RequirementAnalyzer.d.ts +0 -22
  777. package/out/natural/RequirementAnalyzer.js +0 -196
  778. package/out/natural/RequirementAnalyzer.js.map +0 -1
  779. package/out/natural/RequirementExecutor.d.ts +0 -51
  780. package/out/natural/RequirementExecutor.js +0 -692
  781. package/out/natural/RequirementExecutor.js.map +0 -1
  782. package/out/natural/componentData.d.ts +0 -31
  783. package/out/natural/componentData.js +0 -85
  784. package/out/natural/componentData.js.map +0 -1
  785. package/out/natural/genNaturalTS.d.ts +0 -3
  786. package/out/natural/genNaturalTS.js +0 -76
  787. package/out/natural/genNaturalTS.js.map +0 -1
  788. package/out/natural/index.d.ts +0 -4
  789. package/out/natural/index.js +0 -21
  790. package/out/natural/index.js.map +0 -1
  791. package/out/natural/knowledgeMap.d.ts +0 -4
  792. package/out/natural/knowledgeMap.js +0 -40
  793. package/out/natural/knowledgeMap.js.map +0 -1
  794. package/out/natural/naslStdlibMap.d.ts +0 -2
  795. package/out/natural/naslStdlibMap.js +0 -26
  796. package/out/natural/naslStdlibMap.js.map +0 -1
  797. package/out/natural/transformTSCode.d.ts +0 -7
  798. package/out/natural/transformTSCode.js +0 -760
  799. package/out/natural/transformTSCode.js.map +0 -1
  800. package/out/translator/lsp.d.ts +0 -45
  801. package/out/translator/lsp.js +0 -6
  802. package/out/translator/lsp.js.map +0 -1
  803. package/out/translator/tsp.d.ts +0 -12
  804. package/out/translator/tsp.js.map +0 -1
  805. package/sandbox-natural/stdlib/nasl.core.ts +0 -36
  806. package/sandbox-natural/stdlib/nasl.oql.ts +0 -8
  807. package/sandbox-natural/stdlib/nasl.ui.ts +0 -56
  808. package/sandbox-natural/stdlib/nasl.util.ts +0 -26
  809. package/sandbox-natural/tsconfig.json +0 -12
  810. package/src/common/classMap.ts +0 -3
  811. package/src/concepts/DataElement__.ts +0 -131
  812. package/src/natural/RequirementAnalyzer.ts +0 -208
  813. package/src/natural/RequirementExecutor.ts +0 -685
  814. package/src/natural/componentData.ts +0 -81
  815. package/src/natural/genNaturalTS.ts +0 -77
  816. package/src/natural/index.ts +0 -4
  817. package/src/natural/knowledgeMap.ts +0 -39
  818. package/src/natural/naslStdlibMap.ts +0 -24
  819. package/src/natural/transformTSCode.ts +0 -692
  820. package/src/test/examples/app1.json +0 -1406
  821. package/src/test/fixtures/env.ts +0 -19
  822. package/src/test/integration/connect-create-file.ts +0 -14
  823. package/src/test/integration/connect-file.ts +0 -24
  824. package/src/test/integration/node-nasl-server.ts +0 -14
  825. package/src/test/units/baseTypes/Assignment.spec.ts +0 -20
  826. package/src/test/units/baseTypes/CallLogic.spec.ts +0 -22
  827. package/src/test/units/baseTypes/StringLiteral.spec.ts +0 -60
  828. package/src/test/units/baseTypes/new.spec.ts +0 -13
  829. package/src/test/units/common/Vertex.spec.ts +0 -23
  830. package/src/test/units/data/Entity.spec.ts +0 -10
  831. package/src/test/units/login.spec.ts +0 -10
  832. package/src/test/units/page/Block.spec.ts +0 -15
  833. package/src/test/units/page/Element.spec.ts +0 -45
  834. package/src/test/units/page/example.dashboard.html +0 -46
  835. package/src/test/units/page/example.view1.html +0 -63
  836. package/src/test/units/temp/temp.spec.ts +0 -66
  837. package/src/translator/lsp.ts +0 -50
  838. package/src/translator/tsp.ts +0 -14
@@ -1,22 +1,17 @@
1
1
  import { at } from 'lodash';
2
2
  import { v4 as uuidv4 } from 'uuid';
3
3
 
4
- import { config } from '../config';
5
4
  import { SourceMap } from '../translator';
6
- import storageService from '../service/storage/service';
7
5
  import { getSourceFromMap } from '../service/storage/map';
8
- import { loadThen } from '../service/storage/storagePoint';
9
6
 
10
- import { EventEmitter, EventPayload, Params } from './EventEmitter';
11
7
  import * as utils from '../utils';
12
- import classMap from './classMap';
13
- import { action, circular, excludedInJSON, property, getConceptConstructor, getConceptPropertyMap } from '../decorators';
8
+ import { EventEmitter, EventPayload, Params } from './EventEmitter';
9
+ import { action, circular, excludedInJSON, property, getConceptConstructor, getConceptPropertyMap, classMap } from '../decorators';
14
10
  import { Diagnostic } from '../manager/diagnostic';
15
- import type { ViewElement, TypeAnnotation, App } from '..';
16
11
 
17
12
  import { sentryMonitorNaslNode } from '../sentry';
18
13
  import operations from '../breakpoint/shared/operations';
19
- import type { SynatxNode, SynatxNodeConcept } from '../concepts';
14
+ import type { SynatxNode, SynatxNodeConcept, ViewElement, TypeAnnotation, App, Namespace } from '../concepts';
20
15
 
21
16
  // 确保属性都是定义过的
22
17
  function ensureDefined(object: any, concept: string) {
@@ -45,6 +40,8 @@ function ensureDefined(object: any, concept: string) {
45
40
  }
46
41
  }
47
42
  }
43
+
44
+ newObject.concept = actualConcept;
48
45
  }
49
46
  return newObject;
50
47
  }
@@ -55,6 +52,8 @@ function ensureDefined(object: any, concept: string) {
55
52
  */
56
53
  @sentryMonitorNaslNode
57
54
  export class BaseNode extends EventEmitter {
55
+ static readonly ConceptName: string = 'BaseNode';
56
+
58
57
  /**
59
58
  * 可修改标志,内部属性
60
59
  * 标记在构造函数结束后是否可修改
@@ -62,11 +61,28 @@ export class BaseNode extends EventEmitter {
62
61
  @excludedInJSON()
63
62
  _mutable = true;
64
63
 
64
+ /** 节点类别缓存 */
65
+ @excludedInJSON()
66
+ private _concept!: string;
67
+
65
68
  /**
66
69
  * 概念
67
70
  */
68
71
  @property()
69
- concept: string = undefined;
72
+ get concept() {
73
+ return this._concept ?? (this.constructor as any).ConceptName as string;
74
+ }
75
+ set concept(val: string) {
76
+ console.warn(`[警告] 尽快移除变更 concept 值的操作,下个版本 concept 将会改为只读。\n当前变更:${this.concept} -> ${val},原始节点类别:${(this.constructor as any).ConceptName}`);
77
+ if (val !== this.concept) {
78
+ if (val === (this.constructor as any).ConceptName as string) {
79
+ delete this._concept;
80
+ } else {
81
+ this._concept = val;
82
+ }
83
+ }
84
+ }
85
+
70
86
 
71
87
  /**
72
88
  * toJSON 时需要去除的键,为了避免出现 CircularJSON
@@ -82,22 +98,22 @@ export class BaseNode extends EventEmitter {
82
98
  * 变动时间
83
99
  */
84
100
  @property()
85
- changedTime: number = undefined;
101
+ changedTime!: number;
86
102
 
87
103
  /**
88
104
  * 分支名称
89
105
  */
90
106
  @property()
91
- branchName: string = undefined;
107
+ branchName!: string;
92
108
 
93
109
  /**
94
110
  * 合并代码相关
95
111
  */
96
112
  @property()
97
- workingCopy: object = undefined;
113
+ workingCopy!: object;
98
114
 
99
115
  @property()
100
- branch: object = undefined;
116
+ branch!: object;
101
117
 
102
118
  /**
103
119
  * 断点状态
@@ -107,7 +123,7 @@ export class BaseNode extends EventEmitter {
107
123
  * 'DISABLED' ==> 禁用断点
108
124
  */
109
125
  @property()
110
- breakpoint: 'ENABLED' | 'DISABLED' | null | undefined = undefined;
126
+ breakpoint!: 'ENABLED' | 'DISABLED' | null | undefined;
111
127
 
112
128
  /**
113
129
  * 父节点
@@ -122,91 +138,98 @@ export class BaseNode extends EventEmitter {
122
138
  * 前端 UI 状态
123
139
  */
124
140
  @excludedInJSON()
125
- editable: boolean = undefined;
141
+ editable!: boolean;
126
142
 
127
143
  /**
128
144
  * 是否可以删除
129
145
  * 前端 UI 状态
130
146
  */
131
147
  @excludedInJSON()
132
- removable: boolean = undefined;
148
+ removable!: boolean;
133
149
 
134
150
  /**
135
151
  * 是否正在编辑
136
152
  * 前端 UI 状态
137
153
  */
138
154
  @excludedInJSON()
139
- editing: boolean = false;
155
+ editing!: boolean;
140
156
 
141
157
  /**
142
158
  * 是否正在请求
143
159
  * 前端 UI 状态
144
160
  */
145
161
  @excludedInJSON()
146
- loading: boolean = false;
162
+ loading!: boolean;
147
163
 
148
164
  /**
149
165
  * 节点是否为展开状态
150
166
  * 前端 UI 状态
151
167
  */
152
168
  @excludedInJSON()
153
- expanded: boolean = false;
169
+ expanded!: boolean;
154
170
 
155
171
  /**
156
172
  * 节点是否显示
157
173
  * 前端 UI 状态
158
174
  */
159
175
  @excludedInJSON()
160
- hidden: boolean = false;
176
+ hidden!: boolean;
161
177
 
162
178
  /**
163
179
  * 页面树节点是否显示
164
180
  * 前端 UI 状态
165
181
  */
166
182
  @excludedInJSON()
167
- pageTreeNodeHidden: boolean = false;
183
+ pageTreeNodeHidden!: boolean;
168
184
 
169
185
  /**
170
186
  * 逻辑树节点是否显示
171
187
  * 前端 UI 状态
172
188
  */
173
189
  @excludedInJSON()
174
- logicTreeNodeHidden: boolean = false;
190
+ logicTreeNodeHidden!: boolean;
175
191
 
176
192
  /**
177
193
  * 数据树节点是否显示
178
194
  * 前端 UI 状态
179
195
  */
180
196
  @excludedInJSON()
181
- dataTreeNodeHidden: boolean = false;
197
+ dataTreeNodeHidden!: boolean;
198
+
199
+ /**
200
+ * 数据树节点是否显示
201
+ * 前端 UI 状态
202
+ */
203
+ @excludedInJSON()
204
+ processTreeNodeHidden!: boolean;
182
205
 
183
206
  /**
184
207
  * 数据树节点是否展开
185
208
  * 前端 UI 状态
186
209
  */
187
210
  @excludedInJSON()
188
- logicTreeNodeExpanded: boolean = false;
211
+ logicTreeNodeExpanded!: boolean;
189
212
 
190
213
  /**
191
214
  * 用于挂 embeddedTS 的 sourceMap
192
215
  */
193
216
  @excludedInJSON()
194
- sourceMap: SourceMap = undefined;
217
+ sourceMap!: SourceMap;
195
218
 
196
219
  /**
197
220
  * 是否为叶子节点
198
221
  * 前端 UI 状态
199
222
  */
200
223
  @excludedInJSON()
201
- isLeaf: boolean = false;
224
+ isLeaf!: boolean;
202
225
 
203
226
  @excludedInJSON()
204
- storageJSON: any;
227
+ storageJSON!: any;
205
228
 
206
229
  /**
207
230
  * 当前节点上报错详细信息
208
231
  */
209
- tsErrorDetail: Diagnostic | undefined = undefined;
232
+ tsErrorDetail!: Diagnostic | undefined;
210
233
 
211
234
  @property()
212
235
  name: string = '';
@@ -215,13 +238,13 @@ export class BaseNode extends EventEmitter {
215
238
  * 当前节点的类型标注
216
239
  */
217
240
  @excludedInJSON()
218
- __TypeAnnotation: TypeAnnotation = undefined;
241
+ __TypeAnnotation!: TypeAnnotation;
219
242
 
220
243
  /**
221
244
  * 当前节点的类型标注是不是正确的
222
245
  */
223
246
  @excludedInJSON()
224
- __isCorrectTypeAnnotation: boolean = false;
247
+ __isCorrectTypeAnnotation!: boolean;
225
248
 
226
249
  /**
227
250
  * @param source 需要合并的部分参数
@@ -244,24 +267,30 @@ export class BaseNode extends EventEmitter {
244
267
  this.on('update', () => operations.update(this));
245
268
  }
246
269
 
247
- // static constructorName = 'BaseNode'
248
- getClassName() {
249
- return 'BaseNode';
250
- }
251
-
252
270
  subConstructor(source?: Partial<BaseNode>) {
253
- const propertyMap = getConceptPropertyMap(this.getClassName() || this.constructor.name);
271
+ const propertyMap = getConceptPropertyMap(this.concept || this.constructor.name);
254
272
  const properties = Array.from(new Set([...Object.keys(this), ...Object.keys(source)])).filter((key) => propertyMap.has(key));
255
273
 
256
274
  // 测试时用的标记属性
257
275
  if (process.env.NODE_ENV === 'testing') {
258
- properties.push('__$Selected');
276
+ properties.push('__$Selected', '__TypeAnnotation');
259
277
  }
260
278
 
261
279
  properties.forEach((key) => {
262
- const property = propertyMap.get(key);
280
+ if (key === 'concept') {
281
+ return;
282
+ }
283
+
263
284
  const sourceItem = (source as any)[key] !== undefined ? (source as any)[key] : (this as any)[key];
285
+
286
+ let property = propertyMap.get(key);
264
287
  let objectRefCtor: any;
288
+
289
+ // 测试环境下,类型节点由外部注入,所以需要在初始化的时候必须带上类型节点
290
+ if (process.env.NODE_ENV === 'testing' && key === '__TypeAnnotation' && sourceItem) {
291
+ property = { objectRef: 'TypeAnnotation' };
292
+ }
293
+
265
294
  try {
266
295
  if (property?.objectRef) {
267
296
  const arr = property.objectRef.split(' | ');
@@ -274,47 +303,30 @@ export class BaseNode extends EventEmitter {
274
303
  }
275
304
  }
276
305
  }
306
+
277
307
  // 数组的情况也在这里做掉了
278
- (this as any)[key] =
279
- objectRefCtor && sourceItem && !(sourceItem instanceof objectRefCtor) ? this.instantiateSub(sourceItem, key) : sourceItem;
308
+ const val = objectRefCtor && sourceItem && !(sourceItem instanceof objectRefCtor) ? this.instantiateSub(sourceItem, key) : sourceItem;
309
+
310
+ if (val !== undefined) {
311
+ (this as any)[key] = val;
312
+ }
280
313
  } catch (e) {
281
314
  // Function has non-object prototype 'undefined' in instanceof check
282
315
  if (!e.message.includes('Function has non-object prototype')) throw e;
283
316
  }
284
317
  });
318
+
285
319
  operations.create(this);
286
- // if (config.storage.protocol === 'http' && loadThen[source.concept as 'App' | 'View']) {
287
- // const { childNodes } = loadThen[source.concept as 'App' | 'View'] || {};
288
- // const queryList = childNodes.map(({ field, concept }) => {
289
- // const path = [this.nodePath, field].join('.');
290
- // return {
291
- // path,
292
- // excludes: loadThen[concept as 'App' | 'View'].childNodes.map(({ field }) => field),
293
- // };
294
- // });
295
- // storageService
296
- // .batchQuery({
297
- // body: queryList,
298
- // headers: {
299
- // appId: this.rootNode?.id || this.id,
300
- // },
301
- // })
302
- // .then((data: any) =>
303
- // data.forEach((sourceItem: any, index: number) => {
304
- // const { field, concept } = childNodes[index];
305
- // if (!sourceItem || (Array.isArray((this as any)[field]) && !Array.isArray(sourceItem))) {
306
- // return;
307
- // }
308
- // const objectRefCtor = getConceptConstructor(concept);
309
- // (this as any)[field] = objectRefCtor ? this.instantiateSub(sourceItem, field) : sourceItem;
310
- // }));
311
- // }
320
+
321
+ if (process.env.NODE_ENV === 'testing' && ('concept' in this) && !this.concept) {
322
+ Reflect.deleteProperty(this, 'concept');
323
+ }
312
324
  }
313
325
 
314
326
  fixInstantiate() {
315
- const propertyMap = getConceptPropertyMap(this.getClassName() || this.constructor.name);
316
-
327
+ const propertyMap = getConceptPropertyMap(this.concept ?? this.constructor.name);
317
328
  const properties = Object.keys(this).filter((key) => propertyMap.has(key));
329
+
318
330
  properties.forEach((key) => {
319
331
  const property = propertyMap.get(key);
320
332
  const sourceItem = (this as any)[key];
@@ -480,11 +492,19 @@ export class BaseNode extends EventEmitter {
480
492
  node.changeLinesLocation(this);
481
493
  }
482
494
 
495
+ // 自定义连接器下的namespace删除的时候需要同时删除对应的logic
496
+ if (this.concept === 'Namespace' && this.parentNode.concept === 'Connector') {
497
+ (this as unknown as Namespace).logics.forEach(logic => logic?.delete())
498
+ }
499
+
483
500
  const useIndex = ['BindEvent', 'Identifier'].includes(this.concept);
484
501
  const path = this.getNodePath(useIndex);
485
502
  const parentParams = this._delete();
486
503
  if (parentParams && parentParams.index !== -1) {
487
504
  if (Array.isArray((this.parentNode as any)[this.parentKey])) {
505
+ if (process.env.NODE_ENV === 'development') {
506
+ console.log('删除节点', this);
507
+ }
488
508
  this.emit('delete', {
489
509
  action: 'delete',
490
510
  path,
@@ -514,6 +534,10 @@ export class BaseNode extends EventEmitter {
514
534
  const path = this.getNodePath(false);
515
535
  const oldObject: any = {};
516
536
  for (const key in object) {
537
+ if (key === 'concept') {
538
+ continue;
539
+ }
540
+
517
541
  if (Object.prototype.hasOwnProperty.call(object, key)) {
518
542
  const oldProperty = (this as any)[key] ?? null;
519
543
  oldObject[key] = oldProperty;
@@ -546,7 +570,7 @@ export class BaseNode extends EventEmitter {
546
570
  }
547
571
  }
548
572
  const newObject: any = {};
549
- const propertyMap = getConceptPropertyMap(this.getClassName() || this.constructor.name);
573
+ const propertyMap = getConceptPropertyMap(this.concept ?? this.constructor.name);
550
574
  for (const key in object) {
551
575
  const property = propertyMap.get(key);
552
576
  if (property) {
@@ -565,6 +589,9 @@ export class BaseNode extends EventEmitter {
565
589
  }
566
590
  }
567
591
  }
592
+ if (process.env.NODE_ENV === 'development') {
593
+ console.log('更新节点', 'path', path, 'oldObject', oldObject, 'newObject', newObject);
594
+ }
568
595
  this.emit('update', {
569
596
  action: 'update',
570
597
  path,
@@ -586,7 +613,7 @@ export class BaseNode extends EventEmitter {
586
613
 
587
614
  static from(source: any, parentNode?: BaseNode, parentKey?: string): BaseNode {
588
615
  // 有一些继承的情况
589
- const Ctor = classMap?.[source?.concept] || this;
616
+ const Ctor = classMap.get(source?.concept) || this;
590
617
  if (Ctor && source instanceof Ctor) {
591
618
  if (parentNode) {
592
619
  source.parentNode = parentNode;
@@ -607,7 +634,7 @@ export class BaseNode extends EventEmitter {
607
634
  }
608
635
  instance.subConstructor({
609
636
  ...source,
610
- concept: source.concept || this?.prototype?.getClassName() || Ctor.name,
637
+ concept: source?.concept ?? this?.prototype?.concept ?? (Ctor as any).ConceptName as string ?? Ctor.name,
611
638
  parentNode,
612
639
  });
613
640
  return instance;
@@ -646,7 +673,13 @@ export class BaseNode extends EventEmitter {
646
673
  })
647
674
  : null;
648
675
  if (siblingNode || !name || (useIndex && isNodeSelf) || useIndexKeys.includes(node.concept)) {
649
- const index = parentProperty.indexOf(node);
676
+ const index = parentProperty.findIndex((item) => {
677
+ if (item === node) {
678
+ return true;
679
+ }
680
+
681
+ return item?.id && item?.id === node?.id;
682
+ });
650
683
  path += `[${index}]`;
651
684
  } else {
652
685
  path += `[name=${name}]`;
@@ -752,8 +785,8 @@ export class BaseNode extends EventEmitter {
752
785
  }
753
786
  return source;
754
787
  }
755
- if (source && source.concept && classMap[source.concept]) {
756
- const Ctor = classMap[source.concept] as any;
788
+ if (source && source.concept && classMap.get(source.concept)) {
789
+ const Ctor = classMap.get(source.concept) as any;
757
790
  const instance = Ctor.from(source, parentNode, parentKey);
758
791
  if (instance && instance.toStorageJSON) instance.storageJSON = instance.toStorageJSON();
759
792
  return instance;
@@ -770,7 +803,7 @@ export class BaseNode extends EventEmitter {
770
803
  return;
771
804
  }
772
805
  const completeList: any[] = [];
773
- let isArray = false;
806
+ let isArray;
774
807
  // 暂时通过是否有name判断数据是否全
775
808
  if (Array.isArray(source)) {
776
809
  isArray = true;
@@ -848,7 +881,7 @@ export class BaseNode extends EventEmitter {
848
881
  }
849
882
 
850
883
  _toJSON(filerFn?: (source: Partial<BaseNode>) => {}): any {
851
- const propertyMap = getConceptPropertyMap(this.getClassName() || this.constructor.name);
884
+ const propertyMap = getConceptPropertyMap(this.concept || this.constructor.name);
852
885
  const source: Partial<BaseNode> = {};
853
886
  propertyMap.forEach((property, key: string) => {
854
887
  if (property) {
@@ -861,6 +894,10 @@ export class BaseNode extends EventEmitter {
861
894
  }
862
895
  }
863
896
  });
897
+
898
+ // @ts-ignore
899
+ source.concept = this.concept;
900
+
864
901
  return filerFn ? filerFn(source) : source;
865
902
  }
866
903
 
@@ -1176,12 +1213,34 @@ export class BaseNode extends EventEmitter {
1176
1213
  return null;
1177
1214
  }
1178
1215
 
1216
+ /**
1217
+ * 使用新的 concept 在当前节点生成新的数据
1218
+ */
1219
+ changeConceptNode(concept: SynatxNodeConcept) {
1220
+ return new Proxy(this, {
1221
+ get(target, p: keyof BaseNode, receiver) {
1222
+ if (p === 'concept') {
1223
+ return concept;
1224
+ }
1225
+
1226
+ return target[p];
1227
+ },
1228
+ })
1229
+ }
1230
+
1231
+ /** 收集所有节点 */
1232
+ collectNodes(): SynatxNode[];
1179
1233
  /** 收集特定类型的子节点 */
1180
- collectNodes(concept: SynatxNodeConcept): void;
1181
- /** 收集判定为真的子节点 */
1182
- collectNodes(pre: (node: SynatxNode) => boolean): void;
1183
- collectNodes(input: SynatxNodeConcept | ((node: SynatxNode) => boolean)) {
1184
- const pre = typeof input === 'string' ? (node: SynatxNode) => node.concept === input : input;
1234
+ collectNodes(concept: SynatxNodeConcept): SynatxNode[];
1235
+ /** 收集断言返回`true`的子节点 */
1236
+ collectNodes(pre: (node: SynatxNode) => boolean): SynatxNode[];
1237
+ collectNodes(input?: SynatxNodeConcept | ((node: SynatxNode) => boolean)) {
1238
+ const pre =
1239
+ typeof input === 'undefined'
1240
+ ? (node: SynatxNode) => typeof node.concept === 'string'
1241
+ : typeof input === 'string'
1242
+ ? (node: SynatxNode) => node.concept === input
1243
+ : input;
1185
1244
  const nodes: SynatxNode[] = [];
1186
1245
  const self = this as unknown as SynatxNode;
1187
1246
 
@@ -36,7 +36,9 @@ export function unregisterCommand(command: string, execute?: CommandExecute) {
36
36
  if (execute) {
37
37
  const index = cmds.findIndex((cmd) => cmd.execute === execute);
38
38
  if (index !== -1) {
39
- console.log(command);
39
+ if (process.env.NODE === 'development') {
40
+ console.log('unregisterCommand', command);
41
+ }
40
42
  cmds.splice(index, 1);
41
43
  }
42
44
  if (cmds.length) {
@@ -57,6 +59,17 @@ export function invokeCommand(command: string, ...args: any[]) {
57
59
  });
58
60
  }
59
61
 
62
+ export function invokeOnlyCommand(command: string, ...args: any[]) {
63
+ const cmds = _commands.get(command);
64
+ if (!cmds?.length) {
65
+ console.warn(`Command ${command} not found!`);
66
+ }
67
+ if (process.env.NODE === 'development') {
68
+ console.log('invokeOnlyCommand', command);
69
+ }
70
+ return cmds[0]?.execute(...args);
71
+ }
72
+
60
73
  export function hasCommand(command: string) {
61
74
  return _commands.has(command);
62
75
  }
@@ -4,13 +4,11 @@ import { excludedInJSON } from '../decorators';
4
4
  export type EventListener = (...args: Array<any>) => any;
5
5
 
6
6
  export class EventEmitter {
7
+ static readonly ConceptName: string = 'EventEmitter';
8
+
7
9
  @excludedInJSON()
8
10
  private readonly _events: { [name: string]: Array<EventListener> } = {};
9
11
 
10
- getClassName() {
11
- return 'EventEmitter';
12
- }
13
-
14
12
  /**
15
13
  * 监听事件
16
14
  * @param eventName 事件名
@@ -1,4 +1,3 @@
1
1
  export * from './BaseNode';
2
2
  export * from './EventEmitter';
3
3
  export * from './Command';
4
- export * from './classMap';
@@ -1,27 +1,31 @@
1
- import { v4 as uuidv4 } from 'uuid';
2
- import { TranslatorState, indent, createCompilerState } from '../translator';
3
- //= ===============================================================================
1
+ import { TranslatorState, indent } from '../translator';
2
+ //================================================================================
4
3
  // 从这里开始到结尾注释之间的代码由 NASL Workbench 自动生成,请不手动修改!
5
4
  // ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
6
- //= ===============================================================================
5
+ //================================================================================
7
6
  import { EventPayload, Params } from '../common/EventEmitter';
8
- import { concept, excludedInJSON, property } from '../decorators';
7
+ import { concept, excludedInJSON, property, className } from '../decorators';
9
8
 
10
9
  import * as utils from '../utils';
10
+ import { v4 as uuidv4 } from 'uuid';
11
11
  import BaseNode from '../common/BaseNode';
12
- import classMap from '../common/classMap';
13
12
  import LogicItem from './LogicItem__';
14
13
 
15
14
  /**
16
15
  * 中止表达式
17
16
  */
17
+ @className
18
18
  @concept('中止表达式')
19
+ // @ts-ignore
19
20
  export class Abort extends LogicItem {
21
+ /** 类名 */
22
+ static readonly ConceptName = 'Abort';
23
+
20
24
  /**
21
25
  * 产品概念
22
26
  */
23
- @property()
24
- concept: 'Abort' = 'Abort';
27
+ // @ts-ignore
28
+ readonly concept!: 'Abort';
25
29
 
26
30
  /**
27
31
  * 中止表达式标题
@@ -33,24 +37,19 @@ export class Abort extends LogicItem {
33
37
  * @param source 需要合并的部分参数
34
38
  */
35
39
  constructor(source?: Partial<Abort>) {
36
- // @ts-ignore
37
- source = { ...Abort.getDefaultOptions(), ...source };
40
+ source = Object.assign({}, Abort.getDefaultOptions(), source);
38
41
  super(source);
39
42
  super.subConstructor(source);
40
43
  }
41
44
 
42
- getClassName() {
43
- return 'Abort';
44
- }
45
-
46
45
  static from(source: any, parentNode?: any, parentKey?: string): Abort {
47
46
  return super.from(source, parentNode, parentKey) as Abort;
48
47
  }
49
48
 
50
- //= ===============================================================================
49
+ //================================================================================
51
50
  // ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
52
51
  // 自动生成的代码已结束。下面可以手动编写。
53
- //= ===============================================================================
52
+ //================================================================================
54
53
  toUI(): string {
55
54
  return '中止';
56
55
  }
@@ -60,7 +59,7 @@ export class Abort extends LogicItem {
60
59
  return code;
61
60
  }
62
61
 
63
- toEmbeddedTS(state = createCompilerState()): string {
62
+ toEmbeddedTS(state?: TranslatorState): string {
64
63
  let code = '';
65
64
  // 中止放入表达式中,处理翻译就跳过
66
65
  // 别的就增加一个 return;
@@ -69,15 +68,14 @@ export class Abort extends LogicItem {
69
68
  }
70
69
  return code;
71
70
  }
72
- //= ===============================================================================
71
+ //================================================================================
73
72
  // 从这里开始到结尾注释之间的代码由 NASL Workbench 自动生成,请不手动修改!
74
73
  // ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
75
- //= ===============================================================================
74
+ //================================================================================
76
75
  }
77
76
 
78
- classMap.Abort = Abort;
79
77
  export default Abort;
80
- //= ===============================================================================
78
+ //================================================================================
81
79
  // ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
82
80
  // 自动生成的代码已结束。下面可以手动编写。
83
- //= ===============================================================================
81
+ //================================================================================