@lcap/nasl 3.2.0-beta.3 → 3.3.0-alpha

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 (842) hide show
  1. package/out/automate/engine/utils.js +4 -0
  2. package/out/automate/engine/utils.js.map +1 -1
  3. package/out/automate/upgrader/2.20.js +1 -1
  4. package/out/automate/upgrader/2.20.js.map +1 -1
  5. package/out/bak/translator.js +11 -15
  6. package/out/bak/translator.js.map +1 -1
  7. package/out/breakpoint/generator/AfterStartNode.js +3 -1
  8. package/out/breakpoint/generator/AfterStartNode.js.map +1 -1
  9. package/out/breakpoint/generator/BeforeEndNode.js.map +1 -1
  10. package/out/breakpoint/generator/BreakpointNode.d.ts +1 -0
  11. package/out/breakpoint/generator/BreakpointNode.js +48 -15
  12. package/out/breakpoint/generator/BreakpointNode.js.map +1 -1
  13. package/out/breakpoint/generator/CallbackNode.d.ts +4 -0
  14. package/out/breakpoint/generator/CallbackNode.js +22 -0
  15. package/out/breakpoint/generator/CallbackNode.js.map +1 -0
  16. package/out/breakpoint/generator/FragmentNode.d.ts +4 -0
  17. package/out/breakpoint/generator/FragmentNode.js +18 -0
  18. package/out/breakpoint/generator/FragmentNode.js.map +1 -0
  19. package/out/breakpoint/generator/index.js +25 -4
  20. package/out/breakpoint/generator/index.js.map +1 -1
  21. package/out/breakpoint/shared/constants.d.ts +3 -0
  22. package/out/breakpoint/shared/constants.js +6 -1
  23. package/out/breakpoint/shared/constants.js.map +1 -1
  24. package/out/breakpoint/shared/operations.js.map +1 -1
  25. package/out/breakpoint/shared/socket.d.ts +1 -1
  26. package/out/breakpoint/shared/socket.js +36 -7
  27. package/out/breakpoint/shared/socket.js.map +1 -1
  28. package/out/breakpoint/shared/utils.d.ts +2 -0
  29. package/out/breakpoint/shared/utils.js +15 -2
  30. package/out/breakpoint/shared/utils.js.map +1 -1
  31. package/out/breakpoint/store/core.d.ts +48 -2
  32. package/out/breakpoint/store/core.js +58 -32
  33. package/out/breakpoint/store/core.js.map +1 -1
  34. package/out/breakpoint/store/dock.js +1 -1
  35. package/out/breakpoint/store/dock.js.map +1 -1
  36. package/out/common/BaseNode.d.ts +2 -2
  37. package/out/common/BaseNode.js +110 -53
  38. package/out/common/BaseNode.js.map +1 -1
  39. package/out/common/Command.d.ts +13 -2
  40. package/out/common/Command.js +37 -9
  41. package/out/common/Command.js.map +1 -1
  42. package/out/common/EventEmitter.js.map +1 -1
  43. package/out/common/Messager.d.ts +3 -3
  44. package/out/common/Messager.js +6 -7
  45. package/out/common/Messager.js.map +1 -1
  46. package/out/common/asyncFuncMap.js.map +1 -1
  47. package/out/concepts/Abort__.js +6 -5
  48. package/out/concepts/Abort__.js.map +1 -1
  49. package/out/concepts/Anchor__.d.ts +4 -3
  50. package/out/concepts/Anchor__.js +24 -7
  51. package/out/concepts/Anchor__.js.map +1 -1
  52. package/out/concepts/AnonymousFunction__.d.ts +22 -21
  53. package/out/concepts/AnonymousFunction__.js +48 -22
  54. package/out/concepts/AnonymousFunction__.js.map +1 -1
  55. package/out/concepts/App__.d.ts +421 -247
  56. package/out/concepts/App__.js +288 -54
  57. package/out/concepts/App__.js.map +1 -1
  58. package/out/concepts/Argument__.d.ts +4 -3
  59. package/out/concepts/Argument__.js +42 -11
  60. package/out/concepts/Argument__.js.map +1 -1
  61. package/out/concepts/Assignee__.d.ts +45 -45
  62. package/out/concepts/Assignee__.js +15 -15
  63. package/out/concepts/Assignee__.js.map +1 -1
  64. package/out/concepts/AssignmentLine__.js +6 -5
  65. package/out/concepts/AssignmentLine__.js.map +1 -1
  66. package/out/concepts/Assignment__.d.ts +7 -6
  67. package/out/concepts/Assignment__.js +41 -23
  68. package/out/concepts/Assignment__.js.map +1 -1
  69. package/out/concepts/Attribute__.d.ts +3 -3
  70. package/out/concepts/Attribute__.js +8 -7
  71. package/out/concepts/Attribute__.js.map +1 -1
  72. package/out/concepts/AuthInterface__.js +4 -3
  73. package/out/concepts/AuthInterface__.js.map +1 -1
  74. package/out/concepts/AuthLogicForCallInterface__.d.ts +15 -15
  75. package/out/concepts/AuthLogicForCallInterface__.js +46 -27
  76. package/out/concepts/AuthLogicForCallInterface__.js.map +1 -1
  77. package/out/concepts/AuthLogic__.js +27 -13
  78. package/out/concepts/AuthLogic__.js.map +1 -1
  79. package/out/concepts/BackendVariable__.d.ts +5 -5
  80. package/out/concepts/BackendVariable__.js +23 -26
  81. package/out/concepts/BackendVariable__.js.map +1 -1
  82. package/out/concepts/Backend__.d.ts +18 -18
  83. package/out/concepts/Backend__.js +13 -13
  84. package/out/concepts/Backend__.js.map +1 -1
  85. package/out/concepts/BatchAssignment__.d.ts +34 -33
  86. package/out/concepts/BatchAssignment__.js +83 -43
  87. package/out/concepts/BatchAssignment__.js.map +1 -1
  88. package/out/concepts/BinaryExpression__.d.ts +7 -6
  89. package/out/concepts/BinaryExpression__.js +60 -24
  90. package/out/concepts/BinaryExpression__.js.map +1 -1
  91. package/out/concepts/BindAttribute__.d.ts +37 -37
  92. package/out/concepts/BindAttribute__.js +102 -58
  93. package/out/concepts/BindAttribute__.js.map +1 -1
  94. package/out/concepts/BindDirective__.d.ts +13 -13
  95. package/out/concepts/BindDirective__.js +23 -21
  96. package/out/concepts/BindDirective__.js.map +1 -1
  97. package/out/concepts/BindEvent__.d.ts +28 -28
  98. package/out/concepts/BindEvent__.js +150 -57
  99. package/out/concepts/BindEvent__.js.map +1 -1
  100. package/out/concepts/BindStyle__.d.ts +14 -15
  101. package/out/concepts/BindStyle__.js +16 -16
  102. package/out/concepts/BindStyle__.js.map +1 -1
  103. package/out/concepts/BooleanLiteral__.d.ts +1 -0
  104. package/out/concepts/BooleanLiteral__.js +12 -5
  105. package/out/concepts/BooleanLiteral__.js.map +1 -1
  106. package/out/concepts/CallAuthInterface__.d.ts +15 -15
  107. package/out/concepts/CallAuthInterface__.js +23 -22
  108. package/out/concepts/CallAuthInterface__.js.map +1 -1
  109. package/out/concepts/CallConnector__.d.ts +11 -9
  110. package/out/concepts/CallConnector__.js +79 -36
  111. package/out/concepts/CallConnector__.js.map +1 -1
  112. package/out/concepts/CallFunction__.d.ts +17 -16
  113. package/out/concepts/CallFunction__.js +95 -63
  114. package/out/concepts/CallFunction__.js.map +1 -1
  115. package/out/concepts/CallInterface__.d.ts +9 -8
  116. package/out/concepts/CallInterface__.js +109 -80
  117. package/out/concepts/CallInterface__.js.map +1 -1
  118. package/out/concepts/CallLogic__.d.ts +24 -20
  119. package/out/concepts/CallLogic__.js +209 -162
  120. package/out/concepts/CallLogic__.js.map +1 -1
  121. package/out/concepts/CallQueryComponent__.d.ts +51 -51
  122. package/out/concepts/CallQueryComponent__.js +66 -63
  123. package/out/concepts/CallQueryComponent__.js.map +1 -1
  124. package/out/concepts/Comment__.d.ts +1 -0
  125. package/out/concepts/Comment__.js +13 -6
  126. package/out/concepts/Comment__.js.map +1 -1
  127. package/out/concepts/CompletionProperty__.d.ts +3 -3
  128. package/out/concepts/CompletionProperty__.js +16 -8
  129. package/out/concepts/CompletionProperty__.js.map +1 -1
  130. package/out/concepts/ConfigGroup__.d.ts +15 -15
  131. package/out/concepts/ConfigGroup__.js +9 -9
  132. package/out/concepts/ConfigGroup__.js.map +1 -1
  133. package/out/concepts/ConfigPropertyValue__.js +4 -3
  134. package/out/concepts/ConfigPropertyValue__.js.map +1 -1
  135. package/out/concepts/ConfigProperty__.d.ts +15 -15
  136. package/out/concepts/ConfigProperty__.js +10 -10
  137. package/out/concepts/ConfigProperty__.js.map +1 -1
  138. package/out/concepts/Configuration__.d.ts +15 -15
  139. package/out/concepts/Configuration__.js +9 -9
  140. package/out/concepts/Configuration__.js.map +1 -1
  141. package/out/concepts/Connection__.d.ts +166 -0
  142. package/out/concepts/Connection__.js +332 -0
  143. package/out/concepts/Connection__.js.map +1 -0
  144. package/out/concepts/ConnectorTrigger__.js +4 -3
  145. package/out/concepts/ConnectorTrigger__.js.map +1 -1
  146. package/out/concepts/Connector__.d.ts +66 -66
  147. package/out/concepts/Connector__.js +16 -15
  148. package/out/concepts/Connector__.js.map +1 -1
  149. package/out/concepts/Constant__.d.ts +3 -3
  150. package/out/concepts/Constant__.js +8 -7
  151. package/out/concepts/Constant__.js.map +1 -1
  152. package/out/concepts/DataElement__.d.ts +3 -3
  153. package/out/concepts/DataElement__.js +6 -5
  154. package/out/concepts/DataElement__.js.map +1 -1
  155. package/out/concepts/DataSource__.d.ts +15 -15
  156. package/out/concepts/DataSource__.js +55 -39
  157. package/out/concepts/DataSource__.js.map +1 -1
  158. package/out/concepts/DatabaseTypeAnnotation__.js +4 -3
  159. package/out/concepts/DatabaseTypeAnnotation__.js.map +1 -1
  160. package/out/concepts/Destination__.d.ts +12 -11
  161. package/out/concepts/Destination__.js +93 -36
  162. package/out/concepts/Destination__.js.map +1 -1
  163. package/out/concepts/End__.js +15 -13
  164. package/out/concepts/End__.js.map +1 -1
  165. package/out/concepts/EntityIndex__.d.ts +1 -1
  166. package/out/concepts/EntityIndex__.js +6 -5
  167. package/out/concepts/EntityIndex__.js.map +1 -1
  168. package/out/concepts/EntityProperty__.d.ts +8 -7
  169. package/out/concepts/EntityProperty__.js +39 -24
  170. package/out/concepts/EntityProperty__.js.map +1 -1
  171. package/out/concepts/Entity__.d.ts +31 -30
  172. package/out/concepts/Entity__.js +40 -16
  173. package/out/concepts/Entity__.js.map +1 -1
  174. package/out/concepts/EnumItem__.d.ts +1 -0
  175. package/out/concepts/EnumItem__.js +12 -5
  176. package/out/concepts/EnumItem__.js.map +1 -1
  177. package/out/concepts/Enum__.d.ts +9 -8
  178. package/out/concepts/Enum__.js +24 -11
  179. package/out/concepts/Enum__.js.map +1 -1
  180. package/out/concepts/Event__.d.ts +15 -15
  181. package/out/concepts/Event__.js +6 -5
  182. package/out/concepts/Event__.js.map +1 -1
  183. package/out/concepts/ExternalDestination__.d.ts +6 -6
  184. package/out/concepts/ExternalDestination__.js +12 -11
  185. package/out/concepts/ExternalDestination__.js.map +1 -1
  186. package/out/concepts/ForEachStatement__.d.ts +25 -24
  187. package/out/concepts/ForEachStatement__.js +101 -36
  188. package/out/concepts/ForEachStatement__.js.map +1 -1
  189. package/out/concepts/FrontendLibrary__.d.ts +30 -30
  190. package/out/concepts/FrontendLibrary__.js +12 -13
  191. package/out/concepts/FrontendLibrary__.js.map +1 -1
  192. package/out/concepts/FrontendVariable__.js +4 -3
  193. package/out/concepts/FrontendVariable__.js.map +1 -1
  194. package/out/concepts/Frontend__.d.ts +64 -65
  195. package/out/concepts/Frontend__.js +23 -27
  196. package/out/concepts/Frontend__.js.map +1 -1
  197. package/out/concepts/Function__.d.ts +64 -63
  198. package/out/concepts/Function__.js +49 -21
  199. package/out/concepts/Function__.js.map +1 -1
  200. package/out/concepts/Identifier__.js +37 -31
  201. package/out/concepts/Identifier__.js.map +1 -1
  202. package/out/concepts/IfStatement__.d.ts +20 -19
  203. package/out/concepts/IfStatement__.js +64 -34
  204. package/out/concepts/IfStatement__.js.map +1 -1
  205. package/out/concepts/Integration__.d.ts +3 -3
  206. package/out/concepts/Integration__.js +8 -7
  207. package/out/concepts/Integration__.js.map +1 -1
  208. package/out/concepts/InterfaceParam__.d.ts +3 -3
  209. package/out/concepts/InterfaceParam__.js +7 -6
  210. package/out/concepts/InterfaceParam__.js.map +1 -1
  211. package/out/concepts/Interface__.d.ts +33 -33
  212. package/out/concepts/Interface__.js +19 -20
  213. package/out/concepts/Interface__.js.map +1 -1
  214. package/out/concepts/JSBlock__.d.ts +1 -0
  215. package/out/concepts/JSBlock__.js +12 -5
  216. package/out/concepts/JSBlock__.js.map +1 -1
  217. package/out/concepts/JavaLogic__.js +10 -9
  218. package/out/concepts/JavaLogic__.js.map +1 -1
  219. package/out/concepts/LogicItem__.d.ts +6 -0
  220. package/out/concepts/LogicItem__.js +14 -5
  221. package/out/concepts/LogicItem__.js.map +1 -1
  222. package/out/concepts/Logic__.d.ts +80 -79
  223. package/out/concepts/Logic__.js +204 -58
  224. package/out/concepts/Logic__.js.map +1 -1
  225. package/out/concepts/MatchCase__.d.ts +39 -38
  226. package/out/concepts/MatchCase__.js +122 -37
  227. package/out/concepts/MatchCase__.js.map +1 -1
  228. package/out/concepts/Match__.d.ts +13 -11
  229. package/out/concepts/Match__.js +128 -60
  230. package/out/concepts/Match__.js.map +1 -1
  231. package/out/concepts/MemberExpression__.d.ts +7 -6
  232. package/out/concepts/MemberExpression__.js +52 -22
  233. package/out/concepts/MemberExpression__.js.map +1 -1
  234. package/out/concepts/MicroApp__.js +4 -3
  235. package/out/concepts/MicroApp__.js.map +1 -1
  236. package/out/concepts/Module__.d.ts +242 -154
  237. package/out/concepts/Module__.js +139 -33
  238. package/out/concepts/Module__.js.map +1 -1
  239. package/out/concepts/MsgTriggerEvent__.d.ts +15 -15
  240. package/out/concepts/MsgTriggerEvent__.js +6 -5
  241. package/out/concepts/MsgTriggerEvent__.js.map +1 -1
  242. package/out/concepts/MsgTriggerLauncher__.d.ts +23 -15
  243. package/out/concepts/MsgTriggerLauncher__.js +24 -5
  244. package/out/concepts/MsgTriggerLauncher__.js.map +1 -1
  245. package/out/concepts/Namespace__.d.ts +180 -180
  246. package/out/concepts/Namespace__.js +33 -34
  247. package/out/concepts/Namespace__.js.map +1 -1
  248. package/out/concepts/NewComposite__.d.ts +49 -48
  249. package/out/concepts/NewComposite__.js +164 -49
  250. package/out/concepts/NewComposite__.js.map +1 -1
  251. package/out/concepts/NewList__.d.ts +19 -18
  252. package/out/concepts/NewList__.js +29 -12
  253. package/out/concepts/NewList__.js.map +1 -1
  254. package/out/concepts/NewMap__.d.ts +34 -33
  255. package/out/concepts/NewMap__.js +81 -72
  256. package/out/concepts/NewMap__.js.map +1 -1
  257. package/out/concepts/New__.js +6 -5
  258. package/out/concepts/New__.js.map +1 -1
  259. package/out/concepts/NullLiteral__.js +6 -5
  260. package/out/concepts/NullLiteral__.js.map +1 -1
  261. package/out/concepts/NumericLiteral__.d.ts +4 -3
  262. package/out/concepts/NumericLiteral__.js +15 -8
  263. package/out/concepts/NumericLiteral__.js.map +1 -1
  264. package/out/concepts/OqlQueryComponent__.d.ts +4 -3
  265. package/out/concepts/OqlQueryComponent__.js +25 -16
  266. package/out/concepts/OqlQueryComponent__.js.map +1 -1
  267. package/out/concepts/OverriddenLogic__.d.ts +79 -79
  268. package/out/concepts/OverriddenLogic__.js +79 -58
  269. package/out/concepts/OverriddenLogic__.js.map +1 -1
  270. package/out/concepts/Param__.d.ts +6 -5
  271. package/out/concepts/Param__.js +66 -29
  272. package/out/concepts/Param__.js.map +1 -1
  273. package/out/concepts/Point__.js +4 -3
  274. package/out/concepts/Point__.js.map +1 -1
  275. package/out/concepts/ProcessComponent__.d.ts +30 -30
  276. package/out/concepts/ProcessComponent__.js +8 -7
  277. package/out/concepts/ProcessComponent__.js.map +1 -1
  278. package/out/concepts/ProcessElement__.d.ts +96 -96
  279. package/out/concepts/ProcessElement__.js +34 -34
  280. package/out/concepts/ProcessElement__.js.map +1 -1
  281. package/out/concepts/ProcessOutcome__.js +6 -5
  282. package/out/concepts/ProcessOutcome__.js.map +1 -1
  283. package/out/concepts/ProcessOutcomes__.js +6 -5
  284. package/out/concepts/ProcessOutcomes__.js.map +1 -1
  285. package/out/concepts/Process__.d.ts +75 -75
  286. package/out/concepts/Process__.js +33 -30
  287. package/out/concepts/Process__.js.map +1 -1
  288. package/out/concepts/QueryAggregateExpression__.d.ts +3 -3
  289. package/out/concepts/QueryAggregateExpression__.js +8 -7
  290. package/out/concepts/QueryAggregateExpression__.js.map +1 -1
  291. package/out/concepts/QueryFieldExpression__.js +7 -6
  292. package/out/concepts/QueryFieldExpression__.js.map +1 -1
  293. package/out/concepts/QueryFromExpression__.d.ts +8 -8
  294. package/out/concepts/QueryFromExpression__.js +8 -7
  295. package/out/concepts/QueryFromExpression__.js.map +1 -1
  296. package/out/concepts/QueryGroupByExpression__.d.ts +3 -3
  297. package/out/concepts/QueryGroupByExpression__.js +9 -10
  298. package/out/concepts/QueryGroupByExpression__.js.map +1 -1
  299. package/out/concepts/QueryJoinExpression__.d.ts +23 -23
  300. package/out/concepts/QueryJoinExpression__.js +11 -10
  301. package/out/concepts/QueryJoinExpression__.js.map +1 -1
  302. package/out/concepts/QueryLimitExpression__.d.ts +6 -6
  303. package/out/concepts/QueryLimitExpression__.js +9 -8
  304. package/out/concepts/QueryLimitExpression__.js.map +1 -1
  305. package/out/concepts/QueryOrderByExpression__.d.ts +6 -6
  306. package/out/concepts/QueryOrderByExpression__.js +9 -8
  307. package/out/concepts/QueryOrderByExpression__.js.map +1 -1
  308. package/out/concepts/QuerySelectExpression__.d.ts +30 -30
  309. package/out/concepts/QuerySelectExpression__.js +9 -8
  310. package/out/concepts/QuerySelectExpression__.js.map +1 -1
  311. package/out/concepts/Rect__.js +4 -3
  312. package/out/concepts/Rect__.js.map +1 -1
  313. package/out/concepts/Return__.d.ts +4 -3
  314. package/out/concepts/Return__.js +37 -18
  315. package/out/concepts/Return__.js.map +1 -1
  316. package/out/concepts/Role__.js +9 -9
  317. package/out/concepts/Role__.js.map +1 -1
  318. package/out/concepts/SelectMembers__.d.ts +18 -18
  319. package/out/concepts/SelectMembers__.js +10 -9
  320. package/out/concepts/SelectMembers__.js.map +1 -1
  321. package/out/concepts/Slot__.d.ts +3 -3
  322. package/out/concepts/Slot__.js +6 -5
  323. package/out/concepts/Slot__.js.map +1 -1
  324. package/out/concepts/SqlQueryComponent__.d.ts +4 -3
  325. package/out/concepts/SqlQueryComponent__.js +21 -12
  326. package/out/concepts/SqlQueryComponent__.js.map +1 -1
  327. package/out/concepts/Start__.js +6 -5
  328. package/out/concepts/Start__.js.map +1 -1
  329. package/out/concepts/StringInterpolation__.d.ts +16 -15
  330. package/out/concepts/StringInterpolation__.js +37 -14
  331. package/out/concepts/StringInterpolation__.js.map +1 -1
  332. package/out/concepts/StringLiteral__.d.ts +1 -0
  333. package/out/concepts/StringLiteral__.js +13 -8
  334. package/out/concepts/StringLiteral__.js.map +1 -1
  335. package/out/concepts/StructureProperty__.d.ts +4 -3
  336. package/out/concepts/StructureProperty__.js +22 -9
  337. package/out/concepts/StructureProperty__.js.map +1 -1
  338. package/out/concepts/Structure__.d.ts +31 -30
  339. package/out/concepts/Structure__.js +27 -15
  340. package/out/concepts/Structure__.js.map +1 -1
  341. package/out/concepts/SwitchCase__.d.ts +12 -11
  342. package/out/concepts/SwitchCase__.js +69 -31
  343. package/out/concepts/SwitchCase__.js.map +1 -1
  344. package/out/concepts/SwitchStatement__.d.ts +9 -8
  345. package/out/concepts/SwitchStatement__.js +27 -7
  346. package/out/concepts/SwitchStatement__.js.map +1 -1
  347. package/out/concepts/Theme__.js +4 -3
  348. package/out/concepts/Theme__.js.map +1 -1
  349. package/out/concepts/Transactional__.js +4 -3
  350. package/out/concepts/Transactional__.js.map +1 -1
  351. package/out/concepts/TriggerEvent__.d.ts +15 -15
  352. package/out/concepts/TriggerEvent__.js +6 -5
  353. package/out/concepts/TriggerEvent__.js.map +1 -1
  354. package/out/concepts/TriggerLauncher__.d.ts +15 -10
  355. package/out/concepts/TriggerLauncher__.js +54 -32
  356. package/out/concepts/TriggerLauncher__.js.map +1 -1
  357. package/out/concepts/TypeAnnotation__.d.ts +28 -27
  358. package/out/concepts/TypeAnnotation__.js +144 -124
  359. package/out/concepts/TypeAnnotation__.js.map +1 -1
  360. package/out/concepts/TypeParam__.d.ts +1 -0
  361. package/out/concepts/TypeParam__.js +12 -5
  362. package/out/concepts/TypeParam__.js.map +1 -1
  363. package/out/concepts/UnaryExpression__.d.ts +4 -3
  364. package/out/concepts/UnaryExpression__.js +31 -20
  365. package/out/concepts/UnaryExpression__.js.map +1 -1
  366. package/out/concepts/Unparsed__.d.ts +1 -0
  367. package/out/concepts/Unparsed__.js +12 -5
  368. package/out/concepts/Unparsed__.js.map +1 -1
  369. package/out/concepts/UseComponent__.js +4 -3
  370. package/out/concepts/UseComponent__.js.map +1 -1
  371. package/out/concepts/ValidationRule__.d.ts +14 -14
  372. package/out/concepts/ValidationRule__.js +19 -17
  373. package/out/concepts/ValidationRule__.js.map +1 -1
  374. package/out/concepts/Variable__.d.ts +4 -3
  375. package/out/concepts/Variable__.js +39 -23
  376. package/out/concepts/Variable__.js.map +1 -1
  377. package/out/concepts/ViewBlock__.js +4 -3
  378. package/out/concepts/ViewBlock__.js.map +1 -1
  379. package/out/concepts/ViewComponent__.d.ts +90 -90
  380. package/out/concepts/ViewComponent__.js +16 -15
  381. package/out/concepts/ViewComponent__.js.map +1 -1
  382. package/out/concepts/ViewElement__.d.ts +92 -86
  383. package/out/concepts/ViewElement__.js +258 -200
  384. package/out/concepts/ViewElement__.js.map +1 -1
  385. package/out/concepts/View__.d.ts +92 -92
  386. package/out/concepts/View__.js +173 -63
  387. package/out/concepts/View__.js.map +1 -1
  388. package/out/concepts/WhileStatement__.d.ts +12 -11
  389. package/out/concepts/WhileStatement__.js +46 -23
  390. package/out/concepts/WhileStatement__.js.map +1 -1
  391. package/out/concepts/basics/stdlib/index.js +17 -1
  392. package/out/concepts/basics/stdlib/index.js.map +1 -1
  393. package/out/concepts/basics/stdlib/nasl.browser.js +36 -0
  394. package/out/concepts/basics/stdlib/nasl.browser.js.map +1 -1
  395. package/out/concepts/basics/stdlib/nasl.event.d.ts +3 -0
  396. package/out/concepts/basics/stdlib/nasl.event.js +23 -0
  397. package/out/concepts/basics/stdlib/nasl.event.js.map +1 -0
  398. package/out/concepts/basics/stdlib/nasl.ui.js +45 -0
  399. package/out/concepts/basics/stdlib/nasl.ui.js.map +1 -1
  400. package/out/concepts/basics/stdlib/nasl.util.js +6 -22
  401. package/out/concepts/basics/stdlib/nasl.util.js.map +1 -1
  402. package/out/concepts/index__.d.ts +2 -1
  403. package/out/concepts/index__.js +2 -1
  404. package/out/concepts/index__.js.map +1 -1
  405. package/out/concepts/types__.d.ts +2 -1
  406. package/out/decorators/index.d.ts +1 -1
  407. package/out/decorators/index.js +20 -7
  408. package/out/decorators/index.js.map +1 -1
  409. package/out/decorators/promise.d.ts +7 -0
  410. package/out/decorators/promise.js +28 -0
  411. package/out/decorators/promise.js.map +1 -0
  412. package/out/enums/KEYWORDS.js.map +1 -1
  413. package/out/enums/LEVEL_NAME_MAP.js.map +1 -1
  414. package/out/generator/compileComponent.js.map +1 -1
  415. package/out/generator/genBundleFiles.d.ts +4 -1
  416. package/out/generator/genBundleFiles.js +15 -11
  417. package/out/generator/genBundleFiles.js.map +1 -1
  418. package/out/generator/genHash.js.map +1 -1
  419. package/out/generator/genMetaData.js +12 -8
  420. package/out/generator/genMetaData.js.map +1 -1
  421. package/out/generator/genReleaseBody.js +33 -35
  422. package/out/generator/genReleaseBody.js.map +1 -1
  423. package/out/generator/microApp.js +2 -1
  424. package/out/generator/microApp.js.map +1 -1
  425. package/out/generator/permission.js +31 -30
  426. package/out/generator/permission.js.map +1 -1
  427. package/out/generator/styleReplacer.js +4 -7
  428. package/out/generator/styleReplacer.js.map +1 -1
  429. package/out/index.d.ts +0 -2
  430. package/out/index.js +0 -3
  431. package/out/index.js.map +1 -1
  432. package/out/manager/diagnostic.d.ts +1 -1
  433. package/out/manager/diagnostic.js.map +1 -1
  434. package/out/manager/stepRecorder.js +13 -9
  435. package/out/manager/stepRecorder.js.map +1 -1
  436. package/out/natural/RequirementAnalyzer.d.ts +22 -0
  437. package/out/natural/RequirementAnalyzer.js +196 -0
  438. package/out/natural/RequirementAnalyzer.js.map +1 -0
  439. package/out/natural/RequirementExecutor.d.ts +51 -0
  440. package/out/natural/RequirementExecutor.js +692 -0
  441. package/out/natural/RequirementExecutor.js.map +1 -0
  442. package/out/natural/componentData.d.ts +31 -0
  443. package/out/natural/componentData.js +85 -0
  444. package/out/natural/componentData.js.map +1 -0
  445. package/out/natural/genNaturalTS.d.ts +3 -0
  446. package/out/natural/genNaturalTS.js +76 -0
  447. package/out/natural/genNaturalTS.js.map +1 -0
  448. package/out/natural/index.d.ts +4 -0
  449. package/out/natural/index.js +21 -0
  450. package/out/natural/index.js.map +1 -0
  451. package/out/natural/knowledgeMap.d.ts +4 -0
  452. package/out/natural/knowledgeMap.js +40 -0
  453. package/out/natural/knowledgeMap.js.map +1 -0
  454. package/out/natural/naslStdlibMap.d.ts +2 -0
  455. package/out/natural/naslStdlibMap.js +26 -0
  456. package/out/natural/naslStdlibMap.js.map +1 -0
  457. package/out/natural/transformTSCode.d.ts +7 -0
  458. package/out/natural/transformTSCode.js +760 -0
  459. package/out/natural/transformTSCode.js.map +1 -0
  460. package/out/sentry/index.d.ts +2 -1
  461. package/out/sentry/index.js.map +1 -1
  462. package/out/server/createUiTs.js +28 -16
  463. package/out/server/createUiTs.js.map +1 -1
  464. package/out/server/entity2LogicNamespace.js +24 -22
  465. package/out/server/entity2LogicNamespace.js.map +1 -1
  466. package/out/server/event.d.ts +12 -0
  467. package/out/server/event.js +52 -28
  468. package/out/server/event.js.map +1 -1
  469. package/out/server/extendBaseNode.js +55 -70
  470. package/out/server/extendBaseNode.js.map +1 -1
  471. package/out/server/formatTsUtils.js +46 -50
  472. package/out/server/formatTsUtils.js.map +1 -1
  473. package/out/server/getConnector.d.ts +3 -3
  474. package/out/server/getConnector.js +7 -8
  475. package/out/server/getConnector.js.map +1 -1
  476. package/out/server/getExtensionModules.js +2 -2
  477. package/out/server/getExtensionModules.js.map +1 -1
  478. package/out/server/getFunctions.js.map +1 -1
  479. package/out/server/getInterfaces.js.map +1 -1
  480. package/out/server/getLogging.js.map +1 -1
  481. package/out/server/getLogics.d.ts +1 -1
  482. package/out/server/getLogics.js +55 -8
  483. package/out/server/getLogics.js.map +1 -1
  484. package/out/server/getMemberIdentifier.js +13 -10
  485. package/out/server/getMemberIdentifier.js.map +1 -1
  486. package/out/server/getProcessComponents.js.map +1 -1
  487. package/out/server/getProcesses.js +21 -29
  488. package/out/server/getProcesses.js.map +1 -1
  489. package/out/server/getScope.js.map +1 -1
  490. package/out/server/getValidates.js.map +1 -1
  491. package/out/server/index.js +0 -1
  492. package/out/server/index.js.map +1 -1
  493. package/out/server/naslServer.d.ts +99 -94
  494. package/out/server/naslServer.js +490 -469
  495. package/out/server/naslServer.js.map +1 -1
  496. package/out/server/naslStdlibMap.js +6 -2
  497. package/out/server/naslStdlibMap.js.map +1 -1
  498. package/out/server/process2LogicNamespace.js.map +1 -1
  499. package/out/server/translator.d.ts +1 -1
  500. package/out/server/translator.js +52 -47
  501. package/out/server/translator.js.map +1 -1
  502. package/out/service/storage/init.d.ts +15 -1
  503. package/out/service/storage/init.js +65 -56
  504. package/out/service/storage/init.js.map +1 -1
  505. package/out/templator/genCallComponentLogic.js +1 -2
  506. package/out/templator/genCallComponentLogic.js.map +1 -1
  507. package/out/templator/genCreateBlock.js +14 -9
  508. package/out/templator/genCreateBlock.js.map +1 -1
  509. package/out/templator/genCurdEditMultipleKeyBlock.js +23 -14
  510. package/out/templator/genCurdEditMultipleKeyBlock.js.map +1 -1
  511. package/out/templator/genCurdMultipleKeyBlock.js +26 -30
  512. package/out/templator/genCurdMultipleKeyBlock.js.map +1 -1
  513. package/out/templator/genEditTableBlock.d.ts +1 -1
  514. package/out/templator/genEditTableBlock.js +14 -19
  515. package/out/templator/genEditTableBlock.js.map +1 -1
  516. package/out/templator/genEnumSelectBlock.js +1 -1
  517. package/out/templator/genEnumSelectBlock.js.map +1 -1
  518. package/out/templator/genGetBlock.js +2 -2
  519. package/out/templator/genGetBlock.js.map +1 -1
  520. package/out/templator/genGridViewBlock.d.ts +2 -2
  521. package/out/templator/genGridViewBlock.js +18 -28
  522. package/out/templator/genGridViewBlock.js.map +1 -1
  523. package/out/templator/genListViewBlock.d.ts +2 -2
  524. package/out/templator/genListViewBlock.js +9 -16
  525. package/out/templator/genListViewBlock.js.map +1 -1
  526. package/out/templator/genQueryComponent.js +22 -15
  527. package/out/templator/genQueryComponent.js.map +1 -1
  528. package/out/templator/genSelectBlock.d.ts +2 -2
  529. package/out/templator/genSelectBlock.js +21 -48
  530. package/out/templator/genSelectBlock.js.map +1 -1
  531. package/out/templator/genTableBlock.d.ts +1 -1
  532. package/out/templator/genTableBlock.js +11 -17
  533. package/out/templator/genTableBlock.js.map +1 -1
  534. package/out/templator/genUpdateBlock.js +13 -8
  535. package/out/templator/genUpdateBlock.js.map +1 -1
  536. package/out/templator/index.d.ts +4 -2
  537. package/out/templator/index.js +2 -2
  538. package/out/templator/index.js.map +1 -1
  539. package/out/templator/utils.d.ts +9 -2
  540. package/out/templator/utils.js +22 -22
  541. package/out/templator/utils.js.map +1 -1
  542. package/out/translator/index.js +27 -28
  543. package/out/translator/index.js.map +1 -1
  544. package/out/utils/index.d.ts +2 -1
  545. package/out/utils/index.js +8 -14
  546. package/out/utils/index.js.map +1 -1
  547. package/out/utils/logger.js.map +1 -1
  548. package/out/utils/sortTsString.js +3 -1
  549. package/out/utils/sortTsString.js.map +1 -1
  550. package/out/utils/string.js +8 -11
  551. package/out/utils/string.js.map +1 -1
  552. package/out/utils/time-slicing.d.ts +41 -0
  553. package/out/utils/time-slicing.js +81 -0
  554. package/out/utils/time-slicing.js.map +1 -0
  555. package/out/utils/traverse.js +4 -6
  556. package/out/utils/traverse.js.map +1 -1
  557. package/package.json +22 -20
  558. package/sandbox/stdlib/nasl.auth.ts +49 -46
  559. package/sandbox/stdlib/nasl.browser.ts +1 -0
  560. package/sandbox/stdlib/nasl.event.ts +4 -0
  561. package/sandbox/stdlib/nasl.http.ts +29 -31
  562. package/sandbox/stdlib/nasl.ui.definition.ts +13 -1
  563. package/sandbox/stdlib/nasl.ui.ts +11 -0
  564. package/sandbox-natural/stdlib/nasl.core.ts +36 -0
  565. package/sandbox-natural/stdlib/nasl.oql.ts +8 -0
  566. package/sandbox-natural/stdlib/nasl.ui.ts +56 -0
  567. package/sandbox-natural/stdlib/nasl.util.ts +26 -0
  568. package/sandbox-natural/tsconfig.json +12 -0
  569. package/src/automate/engine/utils.js +3 -0
  570. package/src/automate/upgrader/2.20.js +1 -1
  571. package/src/bak/translator.js +92 -99
  572. package/src/breakpoint/generator/AfterStartNode.ts +19 -17
  573. package/src/breakpoint/generator/BeforeEndNode.ts +17 -17
  574. package/src/breakpoint/generator/BreakpointNode.ts +243 -195
  575. package/src/breakpoint/generator/CallbackNode.ts +20 -0
  576. package/src/breakpoint/generator/FragmentNode.ts +14 -0
  577. package/src/breakpoint/generator/index.ts +107 -80
  578. package/src/breakpoint/shared/constants.ts +59 -53
  579. package/src/breakpoint/shared/operations.ts +6 -6
  580. package/src/breakpoint/shared/socket.ts +277 -223
  581. package/src/breakpoint/shared/utils.ts +166 -146
  582. package/src/breakpoint/store/core.ts +326 -297
  583. package/src/breakpoint/store/dock.ts +103 -103
  584. package/src/breakpoint/types/index.d.ts +11 -11
  585. package/src/common/BaseNode.ts +1103 -1020
  586. package/src/common/Command.ts +46 -16
  587. package/src/common/ComponentAPI.ts +72 -72
  588. package/src/common/EventEmitter.ts +80 -76
  589. package/src/common/Messager.ts +223 -224
  590. package/src/common/asyncFuncMap.ts +12 -12
  591. package/src/concepts/Abort__.ts +53 -60
  592. package/src/concepts/Anchor__.ts +158 -149
  593. package/src/concepts/AnonymousFunction__.ts +584 -551
  594. package/src/concepts/App__.ts +4278 -3669
  595. package/src/concepts/Argument__.ts +234 -210
  596. package/src/concepts/Assignee__.ts +680 -656
  597. package/src/concepts/AssignmentLine__.ts +80 -84
  598. package/src/concepts/Assignment__.ts +276 -264
  599. package/src/concepts/Attribute__.ts +183 -184
  600. package/src/concepts/AuthInterface__.ts +61 -63
  601. package/src/concepts/AuthLogicForCallInterface__.ts +540 -511
  602. package/src/concepts/AuthLogic__.ts +210 -194
  603. package/src/concepts/BackendVariable__.ts +414 -415
  604. package/src/concepts/Backend__.ts +317 -303
  605. package/src/concepts/BatchAssignment__.ts +987 -939
  606. package/src/concepts/BinaryExpression__.ts +370 -341
  607. package/src/concepts/BindAttribute__.ts +1056 -1011
  608. package/src/concepts/BindDirective__.ts +540 -542
  609. package/src/concepts/BindEvent__.ts +992 -866
  610. package/src/concepts/BindStyle__.ts +442 -451
  611. package/src/concepts/BooleanLiteral__.ts +89 -90
  612. package/src/concepts/CallAuthInterface__.ts +458 -433
  613. package/src/concepts/CallConnector__.ts +209 -164
  614. package/src/concepts/CallFunction__.ts +600 -600
  615. package/src/concepts/CallInterface__.ts +752 -725
  616. package/src/concepts/CallLogic__.ts +1328 -1236
  617. package/src/concepts/CallQueryComponent__.ts +1580 -1501
  618. package/src/concepts/Comment__.ts +69 -68
  619. package/src/concepts/CompletionProperty__.ts +250 -250
  620. package/src/concepts/ConfigGroup__.ts +312 -296
  621. package/src/concepts/ConfigPropertyValue__.ts +81 -82
  622. package/src/concepts/ConfigProperty__.ts +374 -357
  623. package/src/concepts/Configuration__.ts +288 -276
  624. package/src/concepts/Connection__.ts +426 -0
  625. package/src/concepts/ConnectorTrigger__.ts +146 -142
  626. package/src/concepts/Connector__.ts +1090 -1048
  627. package/src/concepts/Constant__.ts +226 -219
  628. package/src/concepts/DataElement__.ts +108 -115
  629. package/src/concepts/DataSource__.ts +508 -472
  630. package/src/concepts/DatabaseTypeAnnotation__.ts +53 -59
  631. package/src/concepts/Destination__.ts +808 -746
  632. package/src/concepts/End__.ts +85 -89
  633. package/src/concepts/EntityIndex__.ts +206 -202
  634. package/src/concepts/EntityProperty__.ts +825 -791
  635. package/src/concepts/Entity__.ts +921 -864
  636. package/src/concepts/EnumItem__.ts +133 -125
  637. package/src/concepts/Enum__.ts +347 -337
  638. package/src/concepts/Event__.ts +305 -292
  639. package/src/concepts/ExternalDestination__.ts +269 -280
  640. package/src/concepts/ForEachStatement__.ts +583 -531
  641. package/src/concepts/FrontendLibrary__.ts +507 -485
  642. package/src/concepts/FrontendVariable__.ts +44 -49
  643. package/src/concepts/Frontend__.ts +1239 -1187
  644. package/src/concepts/Function__.ts +1110 -1045
  645. package/src/concepts/Identifier__.ts +276 -272
  646. package/src/concepts/IfStatement__.ts +467 -436
  647. package/src/concepts/Integration__.ts +136 -137
  648. package/src/concepts/InterfaceParam__.ts +239 -238
  649. package/src/concepts/Interface__.ts +969 -948
  650. package/src/concepts/JSBlock__.ts +83 -83
  651. package/src/concepts/JavaLogic__.ts +101 -106
  652. package/src/concepts/LogicItem__.ts +307 -237
  653. package/src/concepts/Logic__.ts +2301 -2088
  654. package/src/concepts/MatchCase__.ts +886 -779
  655. package/src/concepts/Match__.ts +728 -659
  656. package/src/concepts/MemberExpression__.ts +330 -311
  657. package/src/concepts/MicroApp__.ts +91 -97
  658. package/src/concepts/Module__.ts +2590 -2275
  659. package/src/concepts/MsgTriggerEvent__.ts +297 -281
  660. package/src/concepts/MsgTriggerLauncher__.ts +286 -256
  661. package/src/concepts/Namespace__.ts +2579 -2466
  662. package/src/concepts/NewComposite__.ts +1487 -1350
  663. package/src/concepts/NewList__.ts +464 -450
  664. package/src/concepts/NewMap__.ts +691 -674
  665. package/src/concepts/New__.ts +42 -49
  666. package/src/concepts/NullLiteral__.ts +66 -72
  667. package/src/concepts/NumericLiteral__.ts +169 -169
  668. package/src/concepts/OqlQueryComponent__.ts +282 -279
  669. package/src/concepts/OverriddenLogic__.ts +2142 -2097
  670. package/src/concepts/Param__.ts +500 -442
  671. package/src/concepts/Point__.ts +53 -59
  672. package/src/concepts/ProcessComponent__.ts +497 -475
  673. package/src/concepts/ProcessElement__.ts +1852 -1780
  674. package/src/concepts/ProcessOutcome__.ts +59 -64
  675. package/src/concepts/ProcessOutcomes__.ts +59 -64
  676. package/src/concepts/Process__.ts +1491 -1428
  677. package/src/concepts/QueryAggregateExpression__.ts +135 -142
  678. package/src/concepts/QueryFieldExpression__.ts +138 -142
  679. package/src/concepts/QueryFromExpression__.ts +246 -254
  680. package/src/concepts/QueryGroupByExpression__.ts +130 -136
  681. package/src/concepts/QueryJoinExpression__.ts +441 -438
  682. package/src/concepts/QueryLimitExpression__.ts +159 -166
  683. package/src/concepts/QueryOrderByExpression__.ts +173 -180
  684. package/src/concepts/QuerySelectExpression__.ts +464 -439
  685. package/src/concepts/Rect__.ts +73 -79
  686. package/src/concepts/Return__.ts +366 -345
  687. package/src/concepts/Role__.ts +146 -147
  688. package/src/concepts/SelectMembers__.ts +358 -350
  689. package/src/concepts/Slot__.ts +152 -153
  690. package/src/concepts/SqlQueryComponent__.ts +230 -228
  691. package/src/concepts/Start__.ts +45 -52
  692. package/src/concepts/StringInterpolation__.ts +323 -296
  693. package/src/concepts/StringLiteral__.ts +113 -115
  694. package/src/concepts/StructureProperty__.ts +306 -295
  695. package/src/concepts/Structure__.ts +615 -578
  696. package/src/concepts/SwitchCase__.ts +326 -290
  697. package/src/concepts/SwitchStatement__.ts +236 -229
  698. package/src/concepts/Theme__.ts +64 -68
  699. package/src/concepts/Transactional__.ts +159 -153
  700. package/src/concepts/TriggerEvent__.ts +285 -274
  701. package/src/concepts/TriggerLauncher__.ts +232 -196
  702. package/src/concepts/TypeAnnotation__.ts +1049 -1011
  703. package/src/concepts/TypeParam__.ts +48 -50
  704. package/src/concepts/UnaryExpression__.ts +163 -153
  705. package/src/concepts/Unparsed__.ts +81 -82
  706. package/src/concepts/UseComponent__.ts +53 -59
  707. package/src/concepts/ValidationRule__.ts +524 -544
  708. package/src/concepts/Variable__.ts +419 -397
  709. package/src/concepts/ViewBlock__.ts +58 -64
  710. package/src/concepts/ViewComponent__.ts +1323 -1261
  711. package/src/concepts/ViewElement__.ts +2537 -2351
  712. package/src/concepts/View__.ts +2461 -2245
  713. package/src/concepts/WhileStatement__.ts +293 -272
  714. package/src/concepts/basics/stdlib/index.ts +17 -1
  715. package/src/concepts/basics/stdlib/nasl.browser.ts +36 -0
  716. package/src/concepts/basics/stdlib/nasl.event.ts +18 -0
  717. package/src/concepts/basics/stdlib/nasl.ui.ts +45 -0
  718. package/src/concepts/basics/stdlib/nasl.util.ts +6 -22
  719. package/src/concepts/index__.ts +2 -1
  720. package/src/concepts/types__.ts +123 -121
  721. package/src/decorators/index.ts +75 -77
  722. package/src/decorators/promise.ts +28 -0
  723. package/src/enums/KEYWORDS.ts +1228 -1228
  724. package/src/enums/LEVEL_NAME_MAP.ts +24 -24
  725. package/src/generator/compileComponent.ts +10 -10
  726. package/src/generator/genBundleFiles.ts +300 -291
  727. package/src/generator/genHash.ts +2 -2
  728. package/src/generator/genMetaData.ts +280 -261
  729. package/src/generator/genReleaseBody.ts +312 -291
  730. package/src/generator/icestark.ts +1 -1
  731. package/src/generator/microApp.ts +17 -20
  732. package/src/generator/permission.ts +241 -232
  733. package/src/generator/qiankun.ts +1 -1
  734. package/src/generator/styleReplacer.ts +28 -31
  735. package/src/index.ts +0 -3
  736. package/src/manager/diagnostic.ts +84 -82
  737. package/src/manager/stepRecorder.ts +106 -94
  738. package/src/natural/RequirementAnalyzer.ts +208 -0
  739. package/src/natural/RequirementExecutor.ts +685 -0
  740. package/src/natural/componentData.ts +81 -0
  741. package/src/natural/genNaturalTS.ts +77 -0
  742. package/src/natural/index.ts +4 -0
  743. package/src/natural/knowledgeMap.ts +39 -0
  744. package/src/natural/naslStdlibMap.ts +24 -0
  745. package/src/natural/transformTSCode.ts +692 -0
  746. package/src/sentry/index.ts +109 -104
  747. package/src/server/createUiTs.ts +190 -184
  748. package/src/server/entity2LogicNamespace.ts +379 -359
  749. package/src/server/event.js +145 -121
  750. package/src/server/extendBaseNode.ts +461 -456
  751. package/src/server/formatTsUtils.ts +712 -713
  752. package/src/server/getConnector.ts +33 -33
  753. package/src/server/getExtensionModules.ts +23 -22
  754. package/src/server/getFunctions.ts +6 -6
  755. package/src/server/getInterfaces.ts +38 -37
  756. package/src/server/getLogging.ts +1 -1
  757. package/src/server/getLogics.ts +391 -312
  758. package/src/server/getMemberIdentifier.ts +286 -281
  759. package/src/server/getProcessComponents.ts +2 -2
  760. package/src/server/getProcesses.ts +548 -534
  761. package/src/server/getScope.ts +51 -51
  762. package/src/server/getValidates.ts +3 -3
  763. package/src/server/index.ts +29 -30
  764. package/src/server/naslServer.ts +4303 -4222
  765. package/src/server/naslStdlibMap.ts +43 -39
  766. package/src/server/process2LogicNamespace.ts +97 -97
  767. package/src/server/translator.ts +740 -746
  768. package/src/service/storage/init.ts +761 -728
  769. package/src/templator/genCallComponentLogic.ts +14 -15
  770. package/src/templator/genCreateBlock.ts +257 -229
  771. package/src/templator/genCurdEditMultipleKeyBlock.ts +333 -317
  772. package/src/templator/genCurdMultipleKeyBlock.ts +503 -475
  773. package/src/templator/genEditTableBlock.ts +194 -187
  774. package/src/templator/genEnumSelectBlock.ts +13 -7
  775. package/src/templator/genGetBlock.ts +57 -55
  776. package/src/templator/genGridViewBlock.ts +195 -211
  777. package/src/templator/genListViewBlock.ts +62 -72
  778. package/src/templator/genQueryComponent.ts +337 -287
  779. package/src/templator/genSelectBlock.ts +283 -297
  780. package/src/templator/genTableBlock.ts +160 -166
  781. package/src/templator/genUpdateBlock.ts +269 -255
  782. package/src/templator/index.ts +4 -4
  783. package/src/templator/utils.ts +491 -463
  784. package/src/translator/index.ts +84 -84
  785. package/src/translator/lsp.ts +22 -22
  786. package/src/translator/tsp.ts +6 -6
  787. package/src/utils/index.ts +115 -117
  788. package/src/utils/logger.ts +3 -4
  789. package/src/utils/sortTsString.ts +34 -32
  790. package/src/utils/string.ts +47 -48
  791. package/src/utils/time-slicing.ts +109 -0
  792. package/src/utils/traverse.ts +114 -126
  793. package/test/concepts/call-interface/__snapshots__/toEmbeddedTS.spec.ts.snap +71 -0
  794. package/test/concepts/call-interface/__snapshots__/toJS.spec.ts.snap +140 -0
  795. package/test/concepts/call-interface/constant.ts +5 -0
  796. package/test/concepts/call-interface/fixtures/only-interface.json +158 -0
  797. package/test/concepts/call-interface/fixtures/with-body-complex-argument.json +455 -0
  798. package/test/concepts/call-interface/fixtures/with-body-no-argument.json +187 -0
  799. package/test/concepts/call-interface/fixtures/with-body-simple-argument.json +225 -0
  800. package/test/concepts/call-interface/fixtures/with-headers-no-argument.json +213 -0
  801. package/test/concepts/call-interface/fixtures/with-headers.json +192 -0
  802. package/test/concepts/call-interface/fixtures/with-query-no-argument.json +213 -0
  803. package/test/concepts/call-interface/fixtures/with-query.json +192 -0
  804. package/test/concepts/call-interface/toEmbeddedTS.spec.ts +14 -0
  805. package/test/concepts/call-interface/toJS.spec.ts +14 -0
  806. package/test/concepts/call-logic/__snapshots__/toEmbeddedTS.spec.ts.snap +74 -0
  807. package/test/concepts/call-logic/__snapshots__/toJS.spec.ts.snap +141 -0
  808. package/test/concepts/call-logic/constant.ts +5 -0
  809. package/test/concepts/call-logic/fixtures/entries-get-with-arguments.json +223 -0
  810. package/test/concepts/call-logic/fixtures/entries-update-with-arguments.json +359 -0
  811. package/test/concepts/call-logic/fixtures/global-logic-argument-no-expression.json +209 -0
  812. package/test/concepts/call-logic/fixtures/global-logic-argument-some-expression.json +311 -0
  813. package/test/concepts/call-logic/fixtures/only-call-logic.json +10 -0
  814. package/test/concepts/call-logic/fixtures/view-buildin-logic-with-argument.json +128 -0
  815. package/test/concepts/call-logic/fixtures/view-component-logic-no-argument.json +126 -0
  816. package/test/concepts/call-logic/fixtures/view-component-with-validation.json +244 -0
  817. package/test/concepts/call-logic/toEmbeddedTS.spec.ts +14 -0
  818. package/test/concepts/call-logic/toJS.spec.ts +14 -0
  819. package/test/concepts/match/__snapshots__/toEmbeddedTS.spec.ts.snap +66 -0
  820. package/test/concepts/match/__snapshots__/toJS.spec.ts.snap +40 -0
  821. package/test/concepts/match/constant.ts +5 -0
  822. package/test/concepts/match/fixtures/isExpression.json +259 -0
  823. package/test/concepts/match/fixtures/lastBodyIf.json +268 -0
  824. package/test/concepts/match/fixtures/noExpression.json +176 -0
  825. package/test/concepts/match/toEmbeddedTS.spec.ts +14 -0
  826. package/test/concepts/match/toJS.spec.ts +14 -0
  827. package/test/concepts/utils.ts +76 -3
  828. package/test/concepts/validation-rule/__snapshots__/toEmbeddedTS.spec.ts.snap +3 -3
  829. package/test/concepts/validation-rule/__snapshots__/toJS.spec.ts.snap +16 -0
  830. package/test/concepts/validation-rule/constant.ts +5 -0
  831. package/test/concepts/validation-rule/toEmbeddedTS.spec.ts +10 -17
  832. package/test/concepts/validation-rule/toJS.spec.ts +14 -0
  833. package/test/concepts/view-element/__snapshots__/toEmbeddedTS.spec.ts.snap +68 -0
  834. package/test/concepts/view-element/__snapshots__/toVue.spec.ts.snap +44 -0
  835. package/test/concepts/view-element/constant.ts +5 -0
  836. package/test/concepts/view-element/fixtures/default-not-found.json +322 -0
  837. package/test/concepts/view-element/toEmbeddedTS.spec.ts +14 -0
  838. package/test/concepts/view-element/toVue.spec.ts +14 -0
  839. package/test/setup.ts +7 -0
  840. package/ts-worker/src/index.js +0 -2
  841. package/tsconfig.json +21 -21
  842. package/bin/naslc +0 -3
@@ -1,528 +1,533 @@
1
- import { FileNode, NaslServer } from './naslServer';
2
1
  import * as tsProtocol from 'typescript/lib/protocol';
2
+ import { FileNode, NaslServer } from './naslServer';
3
3
  import { MinRange } from './translator';
4
- import { BaseNode, CallLogic, Destination, EnumItem, Interface, Logic, Param, Process, Role, Structure, View, ViewElement, Frontend, TypeAnnotation, StructureProperty, App, AuthInterface, CallAuthInterface, Connector, MsgTriggerLauncher } from '../concepts';
4
+ import {
5
+ BaseNode,
6
+ CallLogic,
7
+ Destination,
8
+ EnumItem,
9
+ Interface,
10
+ Logic,
11
+ Param,
12
+ Process,
13
+ Role,
14
+ Structure,
15
+ View,
16
+ ViewElement,
17
+ Frontend,
18
+ TypeAnnotation,
19
+ StructureProperty,
20
+ App,
21
+ AuthInterface,
22
+ CallAuthInterface,
23
+ Connector,
24
+ MsgTriggerLauncher,
25
+ Connection,
26
+ } from '../concepts';
5
27
  import { EventPayload, invokeCommand, registerCommand } from '../common';
6
28
  import { getNodeByNodeCallee, getNaslNodeByNodeCallee } from '../automate/engine/utils';
7
29
 
8
30
  import { extendSentryMonitorNaslNode } from '../sentry';
9
31
 
10
32
  interface SetNameNode extends BaseNode {
11
- setName(name: string): any;
12
- [propname: string]: any;
33
+ setName(name: string): any;
34
+ [propname: string]: any;
13
35
  }
14
36
 
15
37
  BaseNode.prototype.findReadOnlyLogicUsage = function () {
16
- let targetNode;
38
+ let targetNode;
17
39
 
18
- if (this.parentNode.concept === 'Namespace' || this.parentNode.parentNode.concept === 'Namespace') {
19
- const sourceMap = this.parentNode.concept === 'Namespace' ? this.parentNode.parentNode.sourceMap : this.parentNode.parentNode.parentNode.sourceMap;
20
- for (const item of sourceMap) {
21
- const logic = item[0] as Logic;
22
- if (this.concept === 'Logic') {
23
- if (logic instanceof Logic)
24
- if (logic.calleewholeKey === (this as Logic).calleewholeKey) {
25
- targetNode = logic;
26
- break;
27
- }
28
- } else {
29
- if (logic instanceof Logic)
30
- if (logic.calleewholeKey === (this.parentNode as Logic).calleewholeKey) {
31
- targetNode = logic;
32
- break;
33
- }
34
- }
40
+ if (this.parentNode.concept === 'Namespace' || this.parentNode.parentNode.concept === 'Namespace') {
41
+ const sourceMap =
42
+ this.parentNode.concept === 'Namespace' ? this.parentNode.parentNode.sourceMap : this.parentNode.parentNode.parentNode.sourceMap;
43
+ for (const item of sourceMap) {
44
+ const logic = item[0] as Logic;
45
+ if (this.concept === 'Logic') {
46
+ if (logic instanceof Logic)
47
+ if (logic.calleewholeKey === (this as Logic).calleewholeKey) {
48
+ targetNode = logic;
49
+ break;
50
+ }
51
+ } else if (logic instanceof Logic)
52
+ if (logic.calleewholeKey === (this.parentNode as Logic).calleewholeKey) {
53
+ targetNode = logic;
54
+ break;
35
55
  }
36
- } else if (this.parentNode.concept === 'Module') {
37
- // 父级是模块的还是用它本身去查找引用
38
- targetNode = this;
39
- } else {
40
- const sourceMap = this.parentNode.sourceMap;
41
- for (const item of sourceMap) {
42
- const logic = item[0] as Logic;
43
- if (logic.calleewholeKey && logic.calleewholeKey === (this as Logic).calleewholeKey) {
44
- targetNode = logic;
45
- break;
46
- }
47
- }
48
- if (!targetNode)
49
- for (const item of sourceMap) {
50
- const logic = item[0] as Logic;
51
- if (logic.getNamespace && logic.getNamespace() === (this as Logic).getNamespace()) {
52
- targetNode = logic;
53
- break;
54
- }
55
- }
56
56
  }
57
-
58
- try {
59
- const app = this.getAncestor('App');
60
- const naslServer = (app as any).naslServer as NaslServer;
61
- return naslServer.findReferences(targetNode || this);
62
- } catch (err) {
63
- console.log(err);
57
+ } else if (this.parentNode.concept === 'Module') {
58
+ // 父级是模块的还是用它本身去查找引用
59
+ targetNode = this;
60
+ } else {
61
+ const { sourceMap } = this.parentNode;
62
+ for (const item of sourceMap) {
63
+ const logic = item[0] as Logic;
64
+ if (logic.calleewholeKey && logic.calleewholeKey === (this as Logic).calleewholeKey) {
65
+ targetNode = logic;
66
+ break;
67
+ }
64
68
  }
69
+ if (!targetNode)
70
+ for (const item of sourceMap) {
71
+ const logic = item[0] as Logic;
72
+ if (logic.getNamespace && logic.getNamespace() === (this as Logic).getNamespace()) {
73
+ targetNode = logic;
74
+ break;
75
+ }
76
+ }
77
+ }
78
+
79
+ try {
80
+ const app = this.getAncestor('App');
81
+ const naslServer = (app as any).naslServer as NaslServer;
82
+ return naslServer.findReferences(targetNode || this);
83
+ } catch (err) {
84
+ console.log(err);
85
+ }
65
86
  };
66
87
  // 查找引用
67
88
  BaseNode.prototype.findUsage = function findUsage() {
68
- try {
69
- const app = this.getAncestor('App');
70
- const naslServer = (app as any).naslServer as NaslServer;
71
- return naslServer.findReferences(this);
72
- } catch (err) {
73
- console.log(err);
74
- }
89
+ try {
90
+ const app = this.getAncestor('App');
91
+ const naslServer = (app as any).naslServer as NaslServer;
92
+ return naslServer.findReferences(this);
93
+ } catch (err) {
94
+ console.log(err);
95
+ }
75
96
  };
76
97
 
77
98
  // 通过当前节点,查找被引用的节点
78
99
  BaseNode.prototype.nodeFindRefNodes = function nodeFindRefNodes() {
79
- try {
80
- const app = this.getAncestor('App');
81
- const naslServer = (app as any).naslServer as NaslServer;
82
- return naslServer.nodeFindRefNodes(this);
83
- } catch (err) {
84
- console.log(err);
85
- }
100
+ try {
101
+ const app = this.getAncestor('App');
102
+ const naslServer = (app as any).naslServer as NaslServer;
103
+ return naslServer.nodeFindRefNodes(this);
104
+ } catch (err) {
105
+ console.log(err);
106
+ }
86
107
  };
87
108
 
88
109
  BaseNode.prototype.changeName = async function changeName(newValue: string, updateAll: boolean = false) {
89
- try {
90
- /**
91
- * 查找这个节点是不是有依赖
92
- */
93
- const app = this.getAncestor('App');
94
- const naslServer = (app as any).naslServer as NaslServer;
95
- const refsList = await naslServer._isHaveRef(this);
96
- // 是不是有引用有的话,就返回
97
- /**
98
- * @param this 当前重命名的节点
99
- * @param newValue 传递过来的新值,给MemberExpression用的比较特殊
100
- * 而且,这个新值不一定会用到,MemberExpression在批量更新的时候,可以取到新的value, 这里需要位置信息防止 a.a.a.a 中的一个a发生修改
101
- * @returns 找到的引用
102
- */
103
- const res = naslServer._renamePrepare(this, refsList, newValue);
104
- // 针对外部接口的鉴权方式,sourceMap 定位仅仅 定位到 CallAuthInterfacer
105
- // 因此这里需要保存this来做上下文判断
106
- const _this = this;
107
- if (res.length <= 1) {
108
- if (this.concept === 'enumItem') {
109
- (this as any).setValue(newValue);
110
- } else
111
- (this as SetNameNode).setName(newValue);
110
+ try {
111
+ /**
112
+ * 查找这个节点是不是有依赖
113
+ */
114
+ const app = this.getAncestor('App');
115
+ const naslServer = (app as any).naslServer as NaslServer;
116
+ const refsList = await naslServer._isHaveRef(this);
117
+ // 是不是有引用有的话,就返回
118
+ /**
119
+ * @param this 当前重命名的节点
120
+ * @param newValue 传递过来的新值,给MemberExpression用的比较特殊
121
+ * 而且,这个新值不一定会用到,MemberExpression在批量更新的时候,可以取到新的value, 这里需要位置信息防止 a.a.a.a 中的一个a发生修改
122
+ * @returns 找到的引用
123
+ */
124
+ const res = naslServer._renamePrepare(this, refsList, newValue);
125
+ // 针对外部接口的鉴权方式,sourceMap 定位仅仅 定位到 CallAuthInterfacer
126
+ // 因此这里需要保存this来做上下文判断
127
+ const _this = this;
128
+ if (res.length <= 1) {
129
+ if (this.concept === 'enumItem') {
130
+ (this as any).setValue(newValue);
131
+ } else (this as SetNameNode).setName(newValue);
132
+ } else {
133
+ const callback = (value: boolean) => {
134
+ if (value) {
135
+ const App = this.rootNode;
136
+ // 收集修改
137
+ App.emit('collect:start', {
138
+ actionMsg: '重命名并更新引用',
139
+ });
140
+ res.forEach((item) => {
141
+ const itemNode = item.node as SetNameNode;
142
+ // MsgTriggerLauncher 比较特殊,实际更名的应该为成员表达式
143
+ if (itemNode instanceof MsgTriggerLauncher) {
144
+ itemNode.callBackLogic.setName(newValue);
145
+ return;
146
+ }
147
+ if (item.newValue) {
148
+ // 如果有指定的修改方法,就用那个,没有就修改名字
149
+ if (item.setTypeMethods) {
150
+ const func = itemNode && itemNode[item.setTypeMethods];
151
+ typeof func === 'function' && itemNode[item.setTypeMethods](item.newValue);
152
+ } else {
153
+ itemNode.setName?.(item.newValue);
154
+ }
155
+ } else if (_this.concept === 'AuthLogicForCallInterface' && itemNode.concept === 'CallAuthInterface') {
156
+ const { calleewholeKey } = itemNode;
157
+ const targetItf: AuthInterface = getNodeByNodeCallee(App, calleewholeKey);
158
+ targetItf.setAuthLogic(newValue);
159
+ // 需要触发更新,否则对应的ts文件不会更新会导致鉴权方式找不到报错
160
+ itemNode.update({});
161
+ } else {
162
+ item.setTypeMethods ? itemNode[item.setTypeMethods](newValue) : itemNode.setName?.(newValue);
163
+ }
164
+ });
165
+ // 结束修改 ,批量操作
166
+ App.emit('collect:end');
112
167
  } else {
113
- const callback = (value: boolean) => {
114
- if (value) {
115
- const App = this.rootNode;
116
- // 收集修改
117
- App.emit('collect:start', {
118
- actionMsg: '重命名并更新引用',
119
- });
120
- res.forEach((item) => {
121
- const itemNode = item.node as SetNameNode;
122
- // MsgTriggerLauncher 比较特殊,实际更名的应该为成员表达式
123
- if (itemNode instanceof MsgTriggerLauncher) {
124
- itemNode.callBackLogic.setName(newValue);
125
- return;
126
- }
127
- if (item.newValue) {
128
- // 如果有指定的修改方法,就用那个,没有就修改名字
129
- if (item.setTypeMethods) {
130
- const func = itemNode && itemNode[item.setTypeMethods];
131
- typeof func === 'function' && itemNode[item.setTypeMethods](item.newValue);
132
- } else {
133
- itemNode.setName?.(item.newValue);
134
- }
135
- } else {
136
- if (_this.concept === 'AuthLogicForCallInterface' && itemNode.concept === 'CallAuthInterface') {
137
- const { calleewholeKey } = itemNode;
138
- const targetItf: AuthInterface = getNodeByNodeCallee(App, calleewholeKey);
139
- targetItf.setAuthLogic(newValue);
140
- // 需要触发更新,否则对应的ts文件不会更新会导致鉴权方式找不到报错
141
- itemNode.update({});
142
- } else {
143
- item.setTypeMethods ? itemNode[item.setTypeMethods](newValue) : itemNode.setName?.(newValue);
144
- }
145
- }
146
- });
147
- // 结束修改 ,批量操作
148
- App.emit('collect:end');
149
- } else {
150
- (this as SetNameNode).setName(newValue);
151
- }
152
- };
153
- const confirmParms = {
154
- actionType: 'rename',
155
- node: this,
156
- newValue,
157
- };
158
- /**
159
- * nasl和vue的通信,回退,要触发vue的watch。
160
- * 因为如果没修改的话nasl不会修改view,就不会通知到页面改成旧值
161
- * 先修改之
162
- */
163
- const closeCallBack = () => {
164
- if (this.concept === 'EnumItem') {
165
- const oldValue = (this as EnumItem).value;
166
- (this as EnumItem).value = oldValue + ' ';
167
- setTimeout(() => {
168
- (this as EnumItem).value = oldValue;
169
- }, 0);
170
- } else {
171
- const oldValue = this.name;
172
- this.name = oldValue + ' ';
173
- setTimeout(() => {
174
- this.name = oldValue;
175
- }, 0);
176
- }
177
- };
178
- updateAll ? callback(true) : invokeCommand('tsConfirm.open', confirmParms, callback, closeCallBack);
179
-
180
- return;
168
+ (this as SetNameNode).setName(newValue);
169
+ }
170
+ };
171
+ const confirmParms = {
172
+ actionType: 'rename',
173
+ node: this,
174
+ newValue,
175
+ };
176
+ /**
177
+ * nasl和vue的通信,回退,要触发vue的watch。
178
+ * 因为如果没修改的话nasl不会修改view,就不会通知到页面改成旧值
179
+ * 先修改之
180
+ */
181
+ const closeCallBack = () => {
182
+ if (this.concept === 'EnumItem') {
183
+ const oldValue = (this as EnumItem).value;
184
+ (this as EnumItem).value = `${oldValue} `;
185
+ setTimeout(() => {
186
+ (this as EnumItem).value = oldValue;
187
+ }, 0);
188
+ } else {
189
+ const oldValue = this.name;
190
+ this.name = `${oldValue} `;
191
+ setTimeout(() => {
192
+ this.name = oldValue;
193
+ }, 0);
181
194
  }
182
- } catch (err) {
183
- console.log(err);
195
+ };
196
+ updateAll ? callback(true) : invokeCommand('tsConfirm.open', confirmParms, callback, closeCallBack);
184
197
  }
198
+ } catch (err) {
199
+ console.log(err);
200
+ }
185
201
  };
186
202
 
187
203
  /**
188
204
  * 准备删除
189
205
  */
190
206
  BaseNode.prototype.prepareDelete = async function prepareDelete(cb?: Function) {
191
- try {
207
+ try {
208
+ /**
209
+ * 查找这个节点是不是有依赖
210
+ */
211
+ const app = this.getAncestor('App');
212
+ const naslServer = (app as any).naslServer as NaslServer;
213
+ const node = this;
214
+ let refsList = await naslServer._isHaveRef(node);
215
+ // 删除的时候过滤一把组件删除提示
216
+ refsList = refsList.filter(
217
+ (item) =>
218
+ // 因为ui组件本身会多渲染一次,就先过滤一个
219
+ !item.lineText.includes(': nasl.ui.')
220
+ );
221
+ // delete的弹框展示
222
+ const confirmParms = {
223
+ actionType: 'delete',
224
+ tipFlag: false,
225
+ node,
226
+ icon: 'warning',
227
+ };
228
+ let callback = null;
229
+ if (refsList.length <= 1 || (node instanceof Param && node.parentNode instanceof Logic && refsList.length <= 2)) {
230
+ // 平台类型直接删除然后return
231
+ if (node instanceof ViewElement) {
232
+ this.delete();
233
+ return;
234
+ }
235
+ callback = () => {
236
+ // Structure 和 Interface是内部有delete方法
237
+ if (node instanceof Structure || node instanceof Interface) {
238
+ (this as any).deleteLogincAndModule();
239
+ } else if (node instanceof Connection) {
240
+ delConnection(node);
241
+ if (cb) {
242
+ cb();
243
+ }
244
+ } else {
245
+ this.delete();
246
+ }
247
+ };
248
+ } else {
249
+ // 如果有依赖就有一个查找引用提示
250
+ confirmParms.tipFlag = true;
251
+ const node = this;
252
+
253
+ // 删除页面或者流程
254
+ if (node instanceof View || node instanceof Process || node instanceof Frontend) {
192
255
  /**
193
- * 查找这个节点是不是有依赖
256
+ * 查找这个页面是不是有依赖
194
257
  */
195
- const app = this.getAncestor('App');
196
- const naslServer = (app as any).naslServer as NaslServer;
197
- const node = this;
198
- let refsList = await naslServer._isHaveRef(node);
199
- // 删除的时候过滤一把组件删除提示
200
- refsList = refsList.filter((item) =>
201
- // 因为ui组件本身会多渲染一次,就先过滤一个
202
- !(item.lineText.includes(': nasl.ui.')));
203
- // delete的弹框展示
204
- const confirmParms = {
205
- actionType: 'delete',
206
- tipFlag: false,
207
- node,
208
- icon: 'warning',
209
- };
210
- let callback = null;
211
- if (refsList.length <= 1 || (node instanceof Param && node.parentNode instanceof Logic && refsList.length <= 2)) {
212
- // 平台类型直接删除然后return
213
- if (node instanceof ViewElement) {
214
- this.delete();
215
- return;
258
+ let viewPath = (this as FileNode).getEmbeddedFilePath();
259
+ viewPath = viewPath.slice(0, viewPath.length - 3);
260
+ const find = refsList.find((record) => !record.file.includes(viewPath));
261
+ // 如果没有别的文件的依赖,就直接delete
262
+ if (!find) {
263
+ if (node instanceof Process) {
264
+ const App = this.rootNode;
265
+ App.emit('collect:start', {
266
+ actionMsg: `删除流程${node.name}`,
267
+ });
268
+ await Promise.all(node.elements.map((ele) => ele.isUserTask && ele.cancelBindDelete(true)));
269
+ this.delete();
270
+ App.emit('collect:end');
271
+ } else {
272
+ this.delete();
273
+ if (node instanceof Frontend) {
274
+ return;
216
275
  }
217
- callback = () => {
218
- // Structure 和 Interface是内部有delete方法
219
- if (node instanceof Structure || node instanceof Interface) {
220
- (this as any).deleteLogincAndModule();
221
- } else if (node instanceof Connector) {
222
- delConnector(node, this);
223
- if (cb) {
224
- cb();
225
- }
226
- } else {
227
- this.delete();
228
- }
229
- };
230
- } else {
231
- // 如果有依赖就有一个查找引用提示
232
- confirmParms.tipFlag = true;
233
- const node = this;
234
-
235
- // 删除页面或者流程
236
- if (node instanceof View || node instanceof Process || node instanceof Frontend) {
237
- /**
238
- * 查找这个页面是不是有依赖
239
- */
240
- let viewPath = (this as FileNode).getEmbeddedFilePath();
241
- viewPath = viewPath.slice(0, viewPath.length - 3);
242
- const find = refsList.find((record) => !record.file.includes(viewPath));
243
- // 如果没有别的文件的依赖,就直接delete
244
- if (!find) {
245
- if (node instanceof Process) {
246
- const App = this.rootNode;
247
- App.emit('collect:start', {
248
- actionMsg: `删除流程${node.name}`,
249
- });
250
- await Promise.all(node.elements.map((ele) => ele.isUserTask && ele.cancelBindDelete(true)));
251
- this.delete();
252
- App.emit('collect:end');
253
- } else {
254
- this.delete();
255
- if (node instanceof Frontend) {
256
- return;
257
- }
258
- }
259
- return;
260
- } else {
261
- if (node instanceof Frontend) {
262
- let viewPath = (this as FileNode).getEmbeddedFilePath();
263
- viewPath = viewPath.slice(0, viewPath.length - 3);
264
- const refsTempList = refsList.filter((record) => !record.file.includes(viewPath));
265
- // 删除流程节点绑定的该端的页面跳转
266
- const result = refsTempList
267
- .map((record) => {
268
- const fileNode = naslServer.file2NodeMap.get(record.file);
269
- if (fileNode) {
270
- const minRange = naslServer._findMinRange(record, fileNode as FileNode);
271
- if (minRange?.node?.parentNode?.parentNode?.concept === 'ProcessElement') {
272
- return minRange.node.parentNode;
273
- }
274
- }
275
- return null;
276
- }).filter((record) => !!record);
277
- const App = this.rootNode;
278
- App.emit('collect:start', {
279
- actionMsg: `删除端${node.name}`,
280
- });
281
- await Promise.all(result.map((ele) => ele.delete()));
282
- this.delete();
283
- App.emit('collect:end');
284
- return;
285
- }
276
+ }
277
+ return;
278
+ }
279
+ if (node instanceof Frontend) {
280
+ let viewPath = (this as FileNode).getEmbeddedFilePath();
281
+ viewPath = viewPath.slice(0, viewPath.length - 3);
282
+ const refsTempList = refsList.filter((record) => !record.file.includes(viewPath));
283
+ // 删除流程节点绑定的该端的页面跳转
284
+ const result = refsTempList
285
+ .map((record) => {
286
+ const fileNode = naslServer.file2NodeMap.get(record.file);
287
+ if (fileNode) {
288
+ const minRange = naslServer._findMinRange(record, fileNode as FileNode);
289
+ if (minRange?.node?.parentNode?.parentNode?.concept === 'ProcessElement') {
290
+ return minRange.node.parentNode;
286
291
  }
292
+ }
293
+ return null;
294
+ })
295
+ .filter((record) => !!record);
296
+ const App = this.rootNode;
297
+ App.emit('collect:start', {
298
+ actionMsg: `删除端${node.name}`,
299
+ });
300
+ await Promise.all(result.map((ele) => ele.delete()));
301
+ this.delete();
302
+ App.emit('collect:end');
303
+ return;
304
+ }
305
+ }
306
+ callback = async () => {
307
+ // removeParam
308
+ // 跟rename 还不太一样,部分修改依赖修改好的值,然后在下面的修改需要把自己传递进去
309
+ if (node instanceof Param) {
310
+ const App = this.rootNode;
311
+ const { parentNode } = this;
312
+ // 收集修改
313
+ App.emit('collect:start', {
314
+ actionMsg: '删除参数',
315
+ });
316
+ const Index = node.getIndexOfParent();
317
+ this.delete();
318
+ refsList.forEach((record) => {
319
+ const fileNode = naslServer.file2NodeMap.get(record.file);
320
+ if (!fileNode) return null;
321
+ const minRange: MinRange = naslServer._findMinRange(record, fileNode as FileNode);
322
+ if (minRange) {
323
+ /**
324
+ * 调用方是 调用逻辑或者跳转页面, 去删除对应位置的内容
325
+ * 如果是跳转页面,因为流程下的特殊翻译,需要过滤下 非页面下的参数修改,查找到页面跳转
326
+ */
327
+ if (
328
+ minRange.node instanceof CallLogic ||
329
+ (node.parentNode instanceof View && minRange.node instanceof Destination) ||
330
+ minRange.node instanceof CallAuthInterface
331
+ ) {
332
+ minRange.node.deleteCalleeArg(Index);
333
+ }
287
334
  }
288
- callback = async () => {
289
- // removeParam
290
- // 跟rename 还不太一样,部分修改依赖修改好的值,然后在下面的修改需要把自己传递进去
291
- if (node instanceof Param) {
292
- const App = this.rootNode;
293
- const parentNode = this.parentNode;
294
- // 收集修改
295
- App.emit('collect:start', {
296
- actionMsg: '删除参数',
297
- });
298
- const Index = node.getIndexOfParent();
299
- this.delete();
300
- refsList.forEach((record) => {
301
- const fileNode = naslServer.file2NodeMap.get(record.file);
302
- if (!fileNode)
303
- return null;
304
- const minRange: MinRange = naslServer._findMinRange(record, fileNode as FileNode);
305
- if (minRange) {
306
- /**
307
- * 调用方是 调用逻辑或者跳转页面, 去删除对应位置的内容
308
- * 如果是跳转页面,因为流程下的特殊翻译,需要过滤下 非页面下的参数修改,查找到页面跳转
309
- */
310
- if (minRange.node instanceof CallLogic || (node.parentNode instanceof View && minRange.node instanceof Destination) || minRange.node instanceof CallAuthInterface) {
311
- minRange.node.deleteCalleeArg(Index);
312
- }
313
- }
314
- });
315
- // 结束修改 ,批量操作
316
- App.emit('collect:end');
317
- return;
318
- }
319
- // 删除logic节点,如果有对应的interface要一起删除
320
- if (node instanceof Logic) {
321
- const App = this.rootNode;
322
- // 收集修改
323
- App.emit('collect:start', {
324
- actionMsg: '删除逻辑并删除导出的接口',
325
- });
326
- this.delete();
327
- refsList.forEach((record) => {
328
- const fileNode = naslServer.file2NodeMap.get(record.file);
329
- if (!fileNode)
330
- return null;
331
- const minRange: MinRange = naslServer._findMinRange(record, fileNode as FileNode);
332
- if (minRange) {
333
- if (minRange.node instanceof Interface) {
334
- minRange.node.delete();
335
- }
336
- }
337
- });
338
- // 结束修改 ,批量操作
339
- App.emit('collect:end');
340
- return;
341
- }
342
- // 删除权限节点
343
- if (node instanceof Role) {
344
- const App = this.rootNode;
345
- // 收集修改
346
- App.emit('collect:start', {
347
- actionMsg: '删除权限',
348
- });
349
- this.delete();
350
- refsList.forEach((record) => {
351
- const fileNode = naslServer.file2NodeMap.get(record.file);
352
- if (!fileNode)
353
- return null;
354
- const minRange: MinRange = naslServer._findMinRange(record, fileNode as FileNode);
355
- if (minRange) {
356
- if (minRange.node instanceof View || minRange.node instanceof ViewElement) {
357
- // oldName旧的节点存的值
358
- // newValue用户输入值
359
- // node.bindRoles 存的
360
- const str = minRange.node.bindRoles.toString().replace(this.name, '');
361
- const newBindRoles = str.split(',').filter((item) => !!item);
362
- minRange.node.setBindRoles(newBindRoles);
363
- }
364
- }
365
- });
366
- // 结束修改 ,批量操作
367
- App.emit('collect:end');
368
- return;
369
- }
335
+ });
336
+ // 结束修改 ,批量操作
337
+ App.emit('collect:end');
338
+ return;
339
+ }
340
+ // 删除logic节点,如果有对应的interface要一起删除
341
+ if (node instanceof Logic) {
342
+ const App = this.rootNode;
343
+ // 收集修改
344
+ App.emit('collect:start', {
345
+ actionMsg: '删除逻辑并删除导出的接口',
346
+ });
347
+ this.delete();
348
+ refsList.forEach((record) => {
349
+ const fileNode = naslServer.file2NodeMap.get(record.file);
350
+ if (!fileNode) return null;
351
+ const minRange: MinRange = naslServer._findMinRange(record, fileNode as FileNode);
352
+ if (minRange) {
353
+ if (minRange.node instanceof Interface) {
354
+ minRange.node.delete();
355
+ }
356
+ }
357
+ });
358
+ // 结束修改 ,批量操作
359
+ App.emit('collect:end');
360
+ return;
361
+ }
362
+ // 删除权限节点
363
+ if (node instanceof Role) {
364
+ const App = this.rootNode;
365
+ // 收集修改
366
+ App.emit('collect:start', {
367
+ actionMsg: '删除权限',
368
+ });
369
+ this.delete();
370
+ refsList.forEach((record) => {
371
+ const fileNode = naslServer.file2NodeMap.get(record.file);
372
+ if (!fileNode) return null;
373
+ const minRange: MinRange = naslServer._findMinRange(record, fileNode as FileNode);
374
+ if (minRange) {
375
+ if (minRange.node instanceof View || minRange.node instanceof ViewElement) {
376
+ // oldName旧的节点存的值
377
+ // newValue用户输入值
378
+ // node.bindRoles 存的
379
+ const str = minRange.node.bindRoles.toString().replace(this.name, '');
380
+ const newBindRoles = str.split(',').filter((item) => !!item);
381
+ minRange.node.setBindRoles(newBindRoles);
382
+ }
383
+ }
384
+ });
385
+ // 结束修改 ,批量操作
386
+ App.emit('collect:end');
387
+ return;
388
+ }
370
389
 
371
- // 删除页面或者流程,如果上一步没有return 就说明他是有别的引用的,会有引用弹框
372
- if (node instanceof View) {
373
- this.delete();
374
- }
375
- if (node instanceof Process) {
376
- const App = this.rootNode;
377
- App.emit('collect:start', {
378
- actionMsg: `删除流程${node.name}`,
379
- });
380
- await Promise.all(node.elements.map((ele) => ele.isUserTask && ele.cancelBindDelete(true)));
381
- this.delete();
382
- App.emit('collect:end');
383
- }
390
+ // 删除页面或者流程,如果上一步没有return 就说明他是有别的引用的,会有引用弹框
391
+ if (node instanceof View) {
392
+ this.delete();
393
+ }
394
+ if (node instanceof Process) {
395
+ const App = this.rootNode;
396
+ App.emit('collect:start', {
397
+ actionMsg: `删除流程${node.name}`,
398
+ });
399
+ await Promise.all(node.elements.map((ele) => ele.isUserTask && ele.cancelBindDelete(true)));
400
+ this.delete();
401
+ App.emit('collect:end');
402
+ }
384
403
 
385
- if (node instanceof Connector) {
386
- delConnector(node, this);
387
- if (cb) {
388
- cb();
389
- }
390
- }
391
- // 其余的都直接调用删除
392
- // Structure 和 Interface是内部有delete方法
393
- if (node instanceof Structure || node instanceof Interface) {
394
- (this as any).deleteLogincAndModule();
395
- } else {
396
- this.delete();
397
- }
398
- };
404
+ if (node instanceof Connection) {
405
+ delConnection(node);
406
+ if (cb) {
407
+ cb();
408
+ }
409
+ return;
410
+ }
411
+ // 其余的都直接调用删除
412
+ // Structure Interface是内部有delete方法
413
+ if (node instanceof Structure || node instanceof Interface) {
414
+ (this as any).deleteLogincAndModule();
415
+ } else {
416
+ this.delete();
399
417
  }
400
- invokeCommand('tsConfirm.open', confirmParms, callback);
401
- } catch (err) {
402
- console.log(err);
418
+ };
403
419
  }
420
+ invokeCommand('tsConfirm.open', confirmParms, callback);
421
+ } catch (err) {
422
+ console.log(err);
423
+ }
404
424
  };
405
425
 
406
426
  /** 删除连接器 */
407
- function delConnector(node: Connector, context:BaseNode) {
408
- const app = context.rootNode as App;
409
- const configGroup = app.configuration.groups.find((item) => item.name === 'connector');
410
- const connectorsProperties = configGroup?.properties || [];
411
- app.emit('collect:start', {
412
- actionMsg: '删除连接器',
413
- });
414
-
415
- // 删除 configProperty
416
- const delNames: string[] = [];
417
- connectorsProperties.forEach((item) => {
418
- if (item.name.startsWith(node.name)) {
419
- delNames.push(item.name);
420
- }
421
- });
422
- delNames.forEach((name) => {
423
- configGroup.removeConfigProperty(name);
424
- });
425
-
426
- context.delete();
427
-
428
- app.emit('collect:end');
427
+ function delConnection(node: Connection) {
428
+ const app = node.rootNode as App;
429
+ app.emit('collect:start', {
430
+ actionMsg: '删除连接器',
431
+ });
432
+ node.delete();
433
+ app.emit('collect:end');
429
434
  }
430
435
 
431
436
  /**
432
437
  * 如果添加需要触发查找引用并且在之后,对内容产生影响
433
438
  */
434
439
  BaseNode.prototype.addParamsPrepare = async function addParamsPrepare(needAdd = true) {
435
- try {
436
- /**
437
- * 查找这个节点是不是有依赖
438
- */
439
- const app = this.getAncestor('App');
440
- const naslServer = (app as any).naslServer as NaslServer;
441
- const refsList = await naslServer._isHaveRef(this);
442
- return naslServer._addParamsPrepare(this, refsList, needAdd);
443
- } catch (err) {
444
- console.log(err);
445
- }
440
+ try {
441
+ /**
442
+ * 查找这个节点是不是有依赖
443
+ */
444
+ const app = this.getAncestor('App');
445
+ const naslServer = (app as any).naslServer as NaslServer;
446
+ const refsList = await naslServer._isHaveRef(this);
447
+ return naslServer._addParamsPrepare(this, refsList, needAdd);
448
+ } catch (err) {
449
+ console.log(err);
450
+ }
446
451
  };
447
452
 
448
453
  /**
449
454
  * 在原型上增加方法来调用
450
455
  */
451
456
  BaseNode.prototype.getCurrentTypeAnnotation = async function getCurrentTypeAnnotation(outTime?: number) {
452
- try {
453
- /**
454
- * 查找这个节点是不是有依赖
455
- */
456
- const app = this.getAncestor('App');
457
- const naslServer = (app as any).naslServer as NaslServer;
458
- return naslServer.getCurrentTypeAnnotation(this, outTime || 2000);
459
- } catch (err) {
460
- console.log(err);
461
- }
457
+ try {
458
+ /**
459
+ * 查找这个节点是不是有依赖
460
+ */
461
+ const app = this.getAncestor('App');
462
+ const naslServer = (app as any).naslServer as NaslServer;
463
+ return await naslServer.getCurrentTypeAnnotation(this, outTime || 2000);
464
+ } catch (err) {
465
+ console.log(err);
466
+ }
462
467
  };
463
468
 
464
469
  function newNode(node: BaseNode, parentNode: BaseNode, needNewStructure: boolean) {
465
- if (needNewStructure && node?.toJSON) {
466
- return (BaseNode.from(node.toJSON(), parentNode, '') as Structure);
467
- }
468
- return (node as Structure);
470
+ if (needNewStructure && node?.toJSON) {
471
+ return BaseNode.from(node.toJSON(), parentNode, '') as Structure;
472
+ }
473
+ return node as Structure;
469
474
  }
470
475
  /**
471
476
  * 获取下一级变量
472
477
  */
473
478
 
474
479
  BaseNode.prototype.getSelectRef = function getSelectRef(newTypeAnnotation: TypeAnnotation, needNewStructure = false) {
475
- try {
476
- const typeAnnotation = newTypeAnnotation || (this as any).typeAnnotation || this.__TypeAnnotation;
477
- const { typeName, typeKind, typeNamespace, typeArguments, properties: typeProperties } = typeAnnotation;
478
- const parentNode = this;
479
- let completionChildren: any;
480
- if (typeKind === 'reference') {
481
- if (typeNamespace === 'nasl.ui' || typeNamespace === 'nasl.process' || typeNamespace === 'nasl.auth' || typeNamespace === 'nasl.http') {
482
- const node = newNode(getNaslNodeByNodeCallee(typeNamespace, typeName), parentNode, needNewStructure);
483
- const properties = (node as Structure)?.properties || [];
484
- completionChildren = properties;
485
- } else if (typeNamespace.endsWith('.enums')) {
486
- completionChildren = [];
487
- } else {
488
- let app: App;
489
- if (this.concept === 'App') {
490
- app = (this as App);
491
- } else {
492
- app = this.rootNode || typeAnnotation.app;
493
- }
494
- const node = newNode(getNodeByNodeCallee(app, typeNamespace + '.' + typeName), parentNode, needNewStructure);
495
- const properties = node?.properties || [];
496
- completionChildren = properties;
497
- }
498
- } else if (typeKind === 'generic') {
499
- const node = newNode(getNaslNodeByNodeCallee(typeNamespace, typeName), parentNode, needNewStructure);
500
- const properties = (node?.properties && [...node?.properties]) || [];
501
- for (let i = 0; i < properties.length; i++) {
502
- const item = properties[i];
503
- if (item?.typeAnnotation?.typeKind === 'typeParam') {
504
- if (item.name === 'columnItem' && typeArguments[1]) {
505
- item.typeAnnotation = TypeAnnotation.from(typeArguments[1].toJSON(), node, 'typeAnnotation');
506
- } else {
507
- item.typeAnnotation = TypeAnnotation.from(typeArguments[0].toJSON(), node, 'typeAnnotation');
508
- }
509
- properties[i];
510
- }
511
- }
512
- completionChildren = properties;
513
- } else if (typeNamespace === 'nasl.core' && ['String', 'Text', 'Email'].includes(typeName)) {
514
- const node = newNode(getNaslNodeByNodeCallee(typeNamespace, typeName), parentNode, needNewStructure);
515
- const properties = (node?.properties && [...node?.properties]) || [];
516
- completionChildren = properties;
517
- } else if (typeKind === 'anonymousStructure' && typeProperties?.length) {
518
- const node = newNode(typeAnnotation, parentNode, needNewStructure);
519
- const properties = (node?.properties && [...node?.properties]) || [];
520
- completionChildren = properties;
480
+ try {
481
+ const typeAnnotation = newTypeAnnotation || (this as any).typeAnnotation || this.__TypeAnnotation;
482
+ const { typeName, typeKind, typeNamespace, typeArguments, properties: typeProperties } = typeAnnotation;
483
+ const parentNode = this;
484
+ let completionChildren: any;
485
+ if (typeKind === 'reference') {
486
+ if (typeNamespace === 'nasl.ui' || typeNamespace === 'nasl.process' || typeNamespace === 'nasl.auth' || typeNamespace === 'nasl.http') {
487
+ const node = newNode(getNaslNodeByNodeCallee(typeNamespace, typeName), parentNode, needNewStructure);
488
+ const properties = (node as Structure)?.properties || [];
489
+ completionChildren = properties;
490
+ } else if (typeNamespace.endsWith('.enums')) {
491
+ completionChildren = [];
492
+ } else {
493
+ let app: App;
494
+ if (this.concept === 'App') {
495
+ app = this as App;
496
+ } else {
497
+ app = this.rootNode || typeAnnotation.app;
498
+ }
499
+ const node = newNode(getNodeByNodeCallee(app, `${typeNamespace}.${typeName}`), parentNode, needNewStructure);
500
+ const properties = node?.properties || [];
501
+ completionChildren = properties;
502
+ }
503
+ } else if (typeKind === 'generic') {
504
+ const node = newNode(getNaslNodeByNodeCallee(typeNamespace, typeName), parentNode, needNewStructure);
505
+ const properties = (node?.properties && [...node?.properties]) || [];
506
+ for (let i = 0; i < properties.length; i++) {
507
+ const item = properties[i];
508
+ if (item?.typeAnnotation?.typeKind === 'typeParam') {
509
+ if (item.name === 'columnItem' && typeArguments[1]) {
510
+ item.typeAnnotation = TypeAnnotation.from(typeArguments[1].toJSON(), node, 'typeAnnotation');
511
+ } else {
512
+ item.typeAnnotation = TypeAnnotation.from(typeArguments[0].toJSON(), node, 'typeAnnotation');
513
+ }
514
+ properties[i];
521
515
  }
522
- return completionChildren;
523
- } catch (err) {
524
- console.log(err);
516
+ }
517
+ completionChildren = properties;
518
+ } else if (typeNamespace === 'nasl.core' && ['String', 'Text', 'Email'].includes(typeName)) {
519
+ const node = newNode(getNaslNodeByNodeCallee(typeNamespace, typeName), parentNode, needNewStructure);
520
+ const properties = (node?.properties && [...node?.properties]) || [];
521
+ completionChildren = properties;
522
+ } else if (typeKind === 'anonymousStructure' && typeProperties?.length) {
523
+ const node = newNode(typeAnnotation, parentNode, needNewStructure);
524
+ const properties = (node?.properties && [...node?.properties]) || [];
525
+ completionChildren = properties;
525
526
  }
527
+ return completionChildren;
528
+ } catch (err) {
529
+ console.log(err);
530
+ }
526
531
  };
527
532
 
528
533
  extendSentryMonitorNaslNode(BaseNode);