@lcap/nasl 3.2.0-beta.4 → 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 (774) hide show
  1. package/out/automate/upgrader/2.20.js +1 -1
  2. package/out/automate/upgrader/2.20.js.map +1 -1
  3. package/out/bak/translator.js +11 -15
  4. package/out/bak/translator.js.map +1 -1
  5. package/out/breakpoint/generator/AfterStartNode.js +3 -1
  6. package/out/breakpoint/generator/AfterStartNode.js.map +1 -1
  7. package/out/breakpoint/generator/BeforeEndNode.js.map +1 -1
  8. package/out/breakpoint/generator/BreakpointNode.d.ts +1 -0
  9. package/out/breakpoint/generator/BreakpointNode.js +48 -15
  10. package/out/breakpoint/generator/BreakpointNode.js.map +1 -1
  11. package/out/breakpoint/generator/CallbackNode.d.ts +4 -0
  12. package/out/breakpoint/generator/CallbackNode.js +22 -0
  13. package/out/breakpoint/generator/CallbackNode.js.map +1 -0
  14. package/out/breakpoint/generator/FragmentNode.d.ts +4 -0
  15. package/out/breakpoint/generator/FragmentNode.js +18 -0
  16. package/out/breakpoint/generator/FragmentNode.js.map +1 -0
  17. package/out/breakpoint/generator/index.js +25 -4
  18. package/out/breakpoint/generator/index.js.map +1 -1
  19. package/out/breakpoint/shared/constants.d.ts +3 -0
  20. package/out/breakpoint/shared/constants.js +6 -1
  21. package/out/breakpoint/shared/constants.js.map +1 -1
  22. package/out/breakpoint/shared/operations.js.map +1 -1
  23. package/out/breakpoint/shared/socket.d.ts +1 -1
  24. package/out/breakpoint/shared/socket.js +36 -7
  25. package/out/breakpoint/shared/socket.js.map +1 -1
  26. package/out/breakpoint/shared/utils.d.ts +2 -0
  27. package/out/breakpoint/shared/utils.js +15 -2
  28. package/out/breakpoint/shared/utils.js.map +1 -1
  29. package/out/breakpoint/store/core.d.ts +48 -2
  30. package/out/breakpoint/store/core.js +58 -32
  31. package/out/breakpoint/store/core.js.map +1 -1
  32. package/out/breakpoint/store/dock.js +1 -1
  33. package/out/breakpoint/store/dock.js.map +1 -1
  34. package/out/common/BaseNode.d.ts +1 -1
  35. package/out/common/BaseNode.js +105 -51
  36. package/out/common/BaseNode.js.map +1 -1
  37. package/out/common/Command.d.ts +13 -2
  38. package/out/common/Command.js +37 -9
  39. package/out/common/Command.js.map +1 -1
  40. package/out/common/EventEmitter.js.map +1 -1
  41. package/out/common/Messager.d.ts +3 -3
  42. package/out/common/Messager.js +6 -7
  43. package/out/common/Messager.js.map +1 -1
  44. package/out/common/asyncFuncMap.js.map +1 -1
  45. package/out/concepts/Abort__.js +6 -5
  46. package/out/concepts/Abort__.js.map +1 -1
  47. package/out/concepts/Anchor__.d.ts +4 -3
  48. package/out/concepts/Anchor__.js +24 -7
  49. package/out/concepts/Anchor__.js.map +1 -1
  50. package/out/concepts/AnonymousFunction__.d.ts +22 -21
  51. package/out/concepts/AnonymousFunction__.js +48 -22
  52. package/out/concepts/AnonymousFunction__.js.map +1 -1
  53. package/out/concepts/App__.d.ts +421 -247
  54. package/out/concepts/App__.js +286 -54
  55. package/out/concepts/App__.js.map +1 -1
  56. package/out/concepts/Argument__.d.ts +4 -3
  57. package/out/concepts/Argument__.js +42 -11
  58. package/out/concepts/Argument__.js.map +1 -1
  59. package/out/concepts/Assignee__.d.ts +45 -45
  60. package/out/concepts/Assignee__.js +15 -15
  61. package/out/concepts/Assignee__.js.map +1 -1
  62. package/out/concepts/AssignmentLine__.js +6 -5
  63. package/out/concepts/AssignmentLine__.js.map +1 -1
  64. package/out/concepts/Assignment__.d.ts +7 -6
  65. package/out/concepts/Assignment__.js +40 -22
  66. package/out/concepts/Assignment__.js.map +1 -1
  67. package/out/concepts/Attribute__.d.ts +3 -3
  68. package/out/concepts/Attribute__.js +8 -7
  69. package/out/concepts/Attribute__.js.map +1 -1
  70. package/out/concepts/AuthInterface__.js +4 -3
  71. package/out/concepts/AuthInterface__.js.map +1 -1
  72. package/out/concepts/AuthLogicForCallInterface__.d.ts +15 -15
  73. package/out/concepts/AuthLogicForCallInterface__.js +46 -27
  74. package/out/concepts/AuthLogicForCallInterface__.js.map +1 -1
  75. package/out/concepts/AuthLogic__.js +27 -13
  76. package/out/concepts/AuthLogic__.js.map +1 -1
  77. package/out/concepts/BackendVariable__.d.ts +5 -5
  78. package/out/concepts/BackendVariable__.js +23 -26
  79. package/out/concepts/BackendVariable__.js.map +1 -1
  80. package/out/concepts/Backend__.d.ts +18 -18
  81. package/out/concepts/Backend__.js +13 -13
  82. package/out/concepts/Backend__.js.map +1 -1
  83. package/out/concepts/BatchAssignment__.d.ts +34 -33
  84. package/out/concepts/BatchAssignment__.js +83 -43
  85. package/out/concepts/BatchAssignment__.js.map +1 -1
  86. package/out/concepts/BinaryExpression__.d.ts +7 -6
  87. package/out/concepts/BinaryExpression__.js +60 -24
  88. package/out/concepts/BinaryExpression__.js.map +1 -1
  89. package/out/concepts/BindAttribute__.d.ts +37 -37
  90. package/out/concepts/BindAttribute__.js +101 -48
  91. package/out/concepts/BindAttribute__.js.map +1 -1
  92. package/out/concepts/BindDirective__.d.ts +13 -13
  93. package/out/concepts/BindDirective__.js +23 -21
  94. package/out/concepts/BindDirective__.js.map +1 -1
  95. package/out/concepts/BindEvent__.d.ts +28 -28
  96. package/out/concepts/BindEvent__.js +99 -48
  97. package/out/concepts/BindEvent__.js.map +1 -1
  98. package/out/concepts/BindStyle__.d.ts +14 -15
  99. package/out/concepts/BindStyle__.js +16 -16
  100. package/out/concepts/BindStyle__.js.map +1 -1
  101. package/out/concepts/BooleanLiteral__.d.ts +1 -0
  102. package/out/concepts/BooleanLiteral__.js +12 -5
  103. package/out/concepts/BooleanLiteral__.js.map +1 -1
  104. package/out/concepts/CallAuthInterface__.d.ts +15 -15
  105. package/out/concepts/CallAuthInterface__.js +23 -22
  106. package/out/concepts/CallAuthInterface__.js.map +1 -1
  107. package/out/concepts/CallConnector__.d.ts +11 -9
  108. package/out/concepts/CallConnector__.js +79 -36
  109. package/out/concepts/CallConnector__.js.map +1 -1
  110. package/out/concepts/CallFunction__.d.ts +17 -16
  111. package/out/concepts/CallFunction__.js +95 -63
  112. package/out/concepts/CallFunction__.js.map +1 -1
  113. package/out/concepts/CallInterface__.d.ts +9 -8
  114. package/out/concepts/CallInterface__.js +71 -30
  115. package/out/concepts/CallInterface__.js.map +1 -1
  116. package/out/concepts/CallLogic__.d.ts +20 -19
  117. package/out/concepts/CallLogic__.js +155 -52
  118. package/out/concepts/CallLogic__.js.map +1 -1
  119. package/out/concepts/CallQueryComponent__.d.ts +51 -51
  120. package/out/concepts/CallQueryComponent__.js +66 -63
  121. package/out/concepts/CallQueryComponent__.js.map +1 -1
  122. package/out/concepts/Comment__.d.ts +1 -0
  123. package/out/concepts/Comment__.js +13 -6
  124. package/out/concepts/Comment__.js.map +1 -1
  125. package/out/concepts/CompletionProperty__.d.ts +3 -3
  126. package/out/concepts/CompletionProperty__.js +8 -7
  127. package/out/concepts/CompletionProperty__.js.map +1 -1
  128. package/out/concepts/ConfigGroup__.d.ts +15 -15
  129. package/out/concepts/ConfigGroup__.js +9 -9
  130. package/out/concepts/ConfigGroup__.js.map +1 -1
  131. package/out/concepts/ConfigPropertyValue__.js +4 -3
  132. package/out/concepts/ConfigPropertyValue__.js.map +1 -1
  133. package/out/concepts/ConfigProperty__.d.ts +15 -15
  134. package/out/concepts/ConfigProperty__.js +10 -10
  135. package/out/concepts/ConfigProperty__.js.map +1 -1
  136. package/out/concepts/Configuration__.d.ts +15 -15
  137. package/out/concepts/Configuration__.js +9 -9
  138. package/out/concepts/Configuration__.js.map +1 -1
  139. package/out/concepts/Connection__.d.ts +166 -0
  140. package/out/concepts/Connection__.js +332 -0
  141. package/out/concepts/Connection__.js.map +1 -0
  142. package/out/concepts/ConnectorTrigger__.js +4 -3
  143. package/out/concepts/ConnectorTrigger__.js.map +1 -1
  144. package/out/concepts/Connector__.d.ts +66 -66
  145. package/out/concepts/Connector__.js +16 -15
  146. package/out/concepts/Connector__.js.map +1 -1
  147. package/out/concepts/Constant__.d.ts +3 -3
  148. package/out/concepts/Constant__.js +8 -7
  149. package/out/concepts/Constant__.js.map +1 -1
  150. package/out/concepts/DataElement__.d.ts +3 -3
  151. package/out/concepts/DataElement__.js +6 -5
  152. package/out/concepts/DataElement__.js.map +1 -1
  153. package/out/concepts/DataSource__.d.ts +15 -15
  154. package/out/concepts/DataSource__.js +55 -39
  155. package/out/concepts/DataSource__.js.map +1 -1
  156. package/out/concepts/DatabaseTypeAnnotation__.js +4 -3
  157. package/out/concepts/DatabaseTypeAnnotation__.js.map +1 -1
  158. package/out/concepts/Destination__.d.ts +12 -11
  159. package/out/concepts/Destination__.js +93 -36
  160. package/out/concepts/Destination__.js.map +1 -1
  161. package/out/concepts/End__.js +15 -13
  162. package/out/concepts/End__.js.map +1 -1
  163. package/out/concepts/EntityIndex__.d.ts +1 -1
  164. package/out/concepts/EntityIndex__.js +6 -5
  165. package/out/concepts/EntityIndex__.js.map +1 -1
  166. package/out/concepts/EntityProperty__.d.ts +8 -7
  167. package/out/concepts/EntityProperty__.js +39 -24
  168. package/out/concepts/EntityProperty__.js.map +1 -1
  169. package/out/concepts/Entity__.d.ts +31 -30
  170. package/out/concepts/Entity__.js +40 -16
  171. package/out/concepts/Entity__.js.map +1 -1
  172. package/out/concepts/EnumItem__.d.ts +1 -0
  173. package/out/concepts/EnumItem__.js +12 -5
  174. package/out/concepts/EnumItem__.js.map +1 -1
  175. package/out/concepts/Enum__.d.ts +9 -8
  176. package/out/concepts/Enum__.js +24 -11
  177. package/out/concepts/Enum__.js.map +1 -1
  178. package/out/concepts/Event__.d.ts +15 -15
  179. package/out/concepts/Event__.js +6 -5
  180. package/out/concepts/Event__.js.map +1 -1
  181. package/out/concepts/ExternalDestination__.d.ts +6 -6
  182. package/out/concepts/ExternalDestination__.js +12 -11
  183. package/out/concepts/ExternalDestination__.js.map +1 -1
  184. package/out/concepts/ForEachStatement__.d.ts +25 -24
  185. package/out/concepts/ForEachStatement__.js +101 -36
  186. package/out/concepts/ForEachStatement__.js.map +1 -1
  187. package/out/concepts/FrontendLibrary__.d.ts +30 -30
  188. package/out/concepts/FrontendLibrary__.js +12 -13
  189. package/out/concepts/FrontendLibrary__.js.map +1 -1
  190. package/out/concepts/FrontendVariable__.js +4 -3
  191. package/out/concepts/FrontendVariable__.js.map +1 -1
  192. package/out/concepts/Frontend__.d.ts +64 -65
  193. package/out/concepts/Frontend__.js +23 -27
  194. package/out/concepts/Frontend__.js.map +1 -1
  195. package/out/concepts/Function__.d.ts +64 -63
  196. package/out/concepts/Function__.js +49 -21
  197. package/out/concepts/Function__.js.map +1 -1
  198. package/out/concepts/Identifier__.js +37 -31
  199. package/out/concepts/Identifier__.js.map +1 -1
  200. package/out/concepts/IfStatement__.d.ts +20 -19
  201. package/out/concepts/IfStatement__.js +64 -34
  202. package/out/concepts/IfStatement__.js.map +1 -1
  203. package/out/concepts/Integration__.d.ts +3 -3
  204. package/out/concepts/Integration__.js +8 -7
  205. package/out/concepts/Integration__.js.map +1 -1
  206. package/out/concepts/InterfaceParam__.d.ts +3 -3
  207. package/out/concepts/InterfaceParam__.js +7 -6
  208. package/out/concepts/InterfaceParam__.js.map +1 -1
  209. package/out/concepts/Interface__.d.ts +33 -33
  210. package/out/concepts/Interface__.js +19 -20
  211. package/out/concepts/Interface__.js.map +1 -1
  212. package/out/concepts/JSBlock__.d.ts +1 -0
  213. package/out/concepts/JSBlock__.js +12 -5
  214. package/out/concepts/JSBlock__.js.map +1 -1
  215. package/out/concepts/JavaLogic__.js +10 -9
  216. package/out/concepts/JavaLogic__.js.map +1 -1
  217. package/out/concepts/LogicItem__.d.ts +6 -0
  218. package/out/concepts/LogicItem__.js +14 -5
  219. package/out/concepts/LogicItem__.js.map +1 -1
  220. package/out/concepts/Logic__.d.ts +80 -79
  221. package/out/concepts/Logic__.js +204 -58
  222. package/out/concepts/Logic__.js.map +1 -1
  223. package/out/concepts/MatchCase__.d.ts +39 -38
  224. package/out/concepts/MatchCase__.js +122 -37
  225. package/out/concepts/MatchCase__.js.map +1 -1
  226. package/out/concepts/Match__.d.ts +13 -11
  227. package/out/concepts/Match__.js +128 -60
  228. package/out/concepts/Match__.js.map +1 -1
  229. package/out/concepts/MemberExpression__.d.ts +7 -6
  230. package/out/concepts/MemberExpression__.js +52 -22
  231. package/out/concepts/MemberExpression__.js.map +1 -1
  232. package/out/concepts/MicroApp__.js +4 -3
  233. package/out/concepts/MicroApp__.js.map +1 -1
  234. package/out/concepts/Module__.d.ts +239 -155
  235. package/out/concepts/Module__.js +139 -33
  236. package/out/concepts/Module__.js.map +1 -1
  237. package/out/concepts/MsgTriggerEvent__.d.ts +15 -15
  238. package/out/concepts/MsgTriggerEvent__.js +6 -5
  239. package/out/concepts/MsgTriggerEvent__.js.map +1 -1
  240. package/out/concepts/MsgTriggerLauncher__.d.ts +23 -15
  241. package/out/concepts/MsgTriggerLauncher__.js +24 -5
  242. package/out/concepts/MsgTriggerLauncher__.js.map +1 -1
  243. package/out/concepts/Namespace__.d.ts +180 -180
  244. package/out/concepts/Namespace__.js +33 -34
  245. package/out/concepts/Namespace__.js.map +1 -1
  246. package/out/concepts/NewComposite__.d.ts +49 -48
  247. package/out/concepts/NewComposite__.js +164 -49
  248. package/out/concepts/NewComposite__.js.map +1 -1
  249. package/out/concepts/NewList__.d.ts +19 -18
  250. package/out/concepts/NewList__.js +29 -12
  251. package/out/concepts/NewList__.js.map +1 -1
  252. package/out/concepts/NewMap__.d.ts +34 -33
  253. package/out/concepts/NewMap__.js +81 -72
  254. package/out/concepts/NewMap__.js.map +1 -1
  255. package/out/concepts/New__.js +6 -5
  256. package/out/concepts/New__.js.map +1 -1
  257. package/out/concepts/NullLiteral__.js +6 -5
  258. package/out/concepts/NullLiteral__.js.map +1 -1
  259. package/out/concepts/NumericLiteral__.d.ts +4 -3
  260. package/out/concepts/NumericLiteral__.js +15 -8
  261. package/out/concepts/NumericLiteral__.js.map +1 -1
  262. package/out/concepts/OqlQueryComponent__.d.ts +4 -3
  263. package/out/concepts/OqlQueryComponent__.js +25 -16
  264. package/out/concepts/OqlQueryComponent__.js.map +1 -1
  265. package/out/concepts/OverriddenLogic__.d.ts +79 -79
  266. package/out/concepts/OverriddenLogic__.js +79 -58
  267. package/out/concepts/OverriddenLogic__.js.map +1 -1
  268. package/out/concepts/Param__.d.ts +6 -5
  269. package/out/concepts/Param__.js +66 -29
  270. package/out/concepts/Param__.js.map +1 -1
  271. package/out/concepts/Point__.js +4 -3
  272. package/out/concepts/Point__.js.map +1 -1
  273. package/out/concepts/ProcessComponent__.d.ts +30 -30
  274. package/out/concepts/ProcessComponent__.js +8 -7
  275. package/out/concepts/ProcessComponent__.js.map +1 -1
  276. package/out/concepts/ProcessElement__.d.ts +96 -96
  277. package/out/concepts/ProcessElement__.js +34 -34
  278. package/out/concepts/ProcessElement__.js.map +1 -1
  279. package/out/concepts/ProcessOutcome__.js +6 -5
  280. package/out/concepts/ProcessOutcome__.js.map +1 -1
  281. package/out/concepts/ProcessOutcomes__.js +6 -5
  282. package/out/concepts/ProcessOutcomes__.js.map +1 -1
  283. package/out/concepts/Process__.d.ts +75 -75
  284. package/out/concepts/Process__.js +33 -30
  285. package/out/concepts/Process__.js.map +1 -1
  286. package/out/concepts/QueryAggregateExpression__.d.ts +3 -3
  287. package/out/concepts/QueryAggregateExpression__.js +8 -7
  288. package/out/concepts/QueryAggregateExpression__.js.map +1 -1
  289. package/out/concepts/QueryFieldExpression__.js +7 -6
  290. package/out/concepts/QueryFieldExpression__.js.map +1 -1
  291. package/out/concepts/QueryFromExpression__.d.ts +8 -8
  292. package/out/concepts/QueryFromExpression__.js +8 -7
  293. package/out/concepts/QueryFromExpression__.js.map +1 -1
  294. package/out/concepts/QueryGroupByExpression__.d.ts +3 -3
  295. package/out/concepts/QueryGroupByExpression__.js +9 -10
  296. package/out/concepts/QueryGroupByExpression__.js.map +1 -1
  297. package/out/concepts/QueryJoinExpression__.d.ts +23 -23
  298. package/out/concepts/QueryJoinExpression__.js +11 -10
  299. package/out/concepts/QueryJoinExpression__.js.map +1 -1
  300. package/out/concepts/QueryLimitExpression__.d.ts +6 -6
  301. package/out/concepts/QueryLimitExpression__.js +9 -8
  302. package/out/concepts/QueryLimitExpression__.js.map +1 -1
  303. package/out/concepts/QueryOrderByExpression__.d.ts +6 -6
  304. package/out/concepts/QueryOrderByExpression__.js +9 -8
  305. package/out/concepts/QueryOrderByExpression__.js.map +1 -1
  306. package/out/concepts/QuerySelectExpression__.d.ts +30 -30
  307. package/out/concepts/QuerySelectExpression__.js +9 -8
  308. package/out/concepts/QuerySelectExpression__.js.map +1 -1
  309. package/out/concepts/Rect__.js +4 -3
  310. package/out/concepts/Rect__.js.map +1 -1
  311. package/out/concepts/Return__.d.ts +4 -3
  312. package/out/concepts/Return__.js +37 -18
  313. package/out/concepts/Return__.js.map +1 -1
  314. package/out/concepts/Role__.js +9 -9
  315. package/out/concepts/Role__.js.map +1 -1
  316. package/out/concepts/SelectMembers__.d.ts +18 -18
  317. package/out/concepts/SelectMembers__.js +10 -9
  318. package/out/concepts/SelectMembers__.js.map +1 -1
  319. package/out/concepts/Slot__.d.ts +3 -3
  320. package/out/concepts/Slot__.js +6 -5
  321. package/out/concepts/Slot__.js.map +1 -1
  322. package/out/concepts/SqlQueryComponent__.d.ts +4 -3
  323. package/out/concepts/SqlQueryComponent__.js +21 -12
  324. package/out/concepts/SqlQueryComponent__.js.map +1 -1
  325. package/out/concepts/Start__.js +6 -5
  326. package/out/concepts/Start__.js.map +1 -1
  327. package/out/concepts/StringInterpolation__.d.ts +16 -15
  328. package/out/concepts/StringInterpolation__.js +37 -14
  329. package/out/concepts/StringInterpolation__.js.map +1 -1
  330. package/out/concepts/StringLiteral__.d.ts +1 -0
  331. package/out/concepts/StringLiteral__.js +13 -8
  332. package/out/concepts/StringLiteral__.js.map +1 -1
  333. package/out/concepts/StructureProperty__.d.ts +4 -3
  334. package/out/concepts/StructureProperty__.js +22 -9
  335. package/out/concepts/StructureProperty__.js.map +1 -1
  336. package/out/concepts/Structure__.d.ts +31 -30
  337. package/out/concepts/Structure__.js +27 -15
  338. package/out/concepts/Structure__.js.map +1 -1
  339. package/out/concepts/SwitchCase__.d.ts +12 -11
  340. package/out/concepts/SwitchCase__.js +69 -31
  341. package/out/concepts/SwitchCase__.js.map +1 -1
  342. package/out/concepts/SwitchStatement__.d.ts +9 -8
  343. package/out/concepts/SwitchStatement__.js +27 -7
  344. package/out/concepts/SwitchStatement__.js.map +1 -1
  345. package/out/concepts/Theme__.js +4 -3
  346. package/out/concepts/Theme__.js.map +1 -1
  347. package/out/concepts/Transactional__.js +4 -3
  348. package/out/concepts/Transactional__.js.map +1 -1
  349. package/out/concepts/TriggerEvent__.d.ts +15 -15
  350. package/out/concepts/TriggerEvent__.js +6 -5
  351. package/out/concepts/TriggerEvent__.js.map +1 -1
  352. package/out/concepts/TriggerLauncher__.d.ts +15 -10
  353. package/out/concepts/TriggerLauncher__.js +54 -32
  354. package/out/concepts/TriggerLauncher__.js.map +1 -1
  355. package/out/concepts/TypeAnnotation__.d.ts +28 -27
  356. package/out/concepts/TypeAnnotation__.js +144 -124
  357. package/out/concepts/TypeAnnotation__.js.map +1 -1
  358. package/out/concepts/TypeParam__.d.ts +1 -0
  359. package/out/concepts/TypeParam__.js +12 -5
  360. package/out/concepts/TypeParam__.js.map +1 -1
  361. package/out/concepts/UnaryExpression__.d.ts +4 -3
  362. package/out/concepts/UnaryExpression__.js +31 -20
  363. package/out/concepts/UnaryExpression__.js.map +1 -1
  364. package/out/concepts/Unparsed__.d.ts +1 -0
  365. package/out/concepts/Unparsed__.js +12 -5
  366. package/out/concepts/Unparsed__.js.map +1 -1
  367. package/out/concepts/UseComponent__.js +4 -3
  368. package/out/concepts/UseComponent__.js.map +1 -1
  369. package/out/concepts/ValidationRule__.d.ts +14 -14
  370. package/out/concepts/ValidationRule__.js +19 -17
  371. package/out/concepts/ValidationRule__.js.map +1 -1
  372. package/out/concepts/Variable__.d.ts +4 -3
  373. package/out/concepts/Variable__.js +39 -23
  374. package/out/concepts/Variable__.js.map +1 -1
  375. package/out/concepts/ViewBlock__.js +4 -3
  376. package/out/concepts/ViewBlock__.js.map +1 -1
  377. package/out/concepts/ViewComponent__.d.ts +90 -90
  378. package/out/concepts/ViewComponent__.js +16 -15
  379. package/out/concepts/ViewComponent__.js.map +1 -1
  380. package/out/concepts/ViewElement__.d.ts +91 -86
  381. package/out/concepts/ViewElement__.js +218 -146
  382. package/out/concepts/ViewElement__.js.map +1 -1
  383. package/out/concepts/View__.d.ts +92 -92
  384. package/out/concepts/View__.js +135 -60
  385. package/out/concepts/View__.js.map +1 -1
  386. package/out/concepts/WhileStatement__.d.ts +12 -11
  387. package/out/concepts/WhileStatement__.js +46 -23
  388. package/out/concepts/WhileStatement__.js.map +1 -1
  389. package/out/concepts/index__.d.ts +2 -1
  390. package/out/concepts/index__.js +2 -1
  391. package/out/concepts/index__.js.map +1 -1
  392. package/out/concepts/types__.d.ts +2 -1
  393. package/out/decorators/index.d.ts +1 -1
  394. package/out/decorators/index.js +20 -7
  395. package/out/decorators/index.js.map +1 -1
  396. package/out/decorators/promise.d.ts +7 -0
  397. package/out/decorators/promise.js +28 -0
  398. package/out/decorators/promise.js.map +1 -0
  399. package/out/enums/KEYWORDS.js.map +1 -1
  400. package/out/enums/LEVEL_NAME_MAP.js.map +1 -1
  401. package/out/generator/compileComponent.js.map +1 -1
  402. package/out/generator/genBundleFiles.d.ts +4 -1
  403. package/out/generator/genBundleFiles.js +15 -11
  404. package/out/generator/genBundleFiles.js.map +1 -1
  405. package/out/generator/genHash.js.map +1 -1
  406. package/out/generator/genMetaData.js +12 -8
  407. package/out/generator/genMetaData.js.map +1 -1
  408. package/out/generator/genReleaseBody.js +33 -35
  409. package/out/generator/genReleaseBody.js.map +1 -1
  410. package/out/generator/microApp.js +2 -1
  411. package/out/generator/microApp.js.map +1 -1
  412. package/out/generator/permission.js +16 -14
  413. package/out/generator/permission.js.map +1 -1
  414. package/out/generator/styleReplacer.js +4 -7
  415. package/out/generator/styleReplacer.js.map +1 -1
  416. package/out/index.d.ts +0 -2
  417. package/out/index.js +0 -3
  418. package/out/index.js.map +1 -1
  419. package/out/manager/diagnostic.d.ts +1 -1
  420. package/out/manager/diagnostic.js.map +1 -1
  421. package/out/manager/stepRecorder.js +13 -9
  422. package/out/manager/stepRecorder.js.map +1 -1
  423. package/out/natural/RequirementAnalyzer.d.ts +22 -0
  424. package/out/natural/RequirementAnalyzer.js +196 -0
  425. package/out/natural/RequirementAnalyzer.js.map +1 -0
  426. package/out/natural/RequirementExecutor.d.ts +51 -0
  427. package/out/natural/RequirementExecutor.js +692 -0
  428. package/out/natural/RequirementExecutor.js.map +1 -0
  429. package/out/natural/componentData.d.ts +31 -0
  430. package/out/natural/componentData.js +85 -0
  431. package/out/natural/componentData.js.map +1 -0
  432. package/out/natural/genNaturalTS.d.ts +3 -0
  433. package/out/natural/genNaturalTS.js +76 -0
  434. package/out/natural/genNaturalTS.js.map +1 -0
  435. package/out/natural/index.d.ts +4 -0
  436. package/out/natural/index.js +21 -0
  437. package/out/natural/index.js.map +1 -0
  438. package/out/natural/knowledgeMap.d.ts +4 -0
  439. package/out/natural/knowledgeMap.js +40 -0
  440. package/out/natural/knowledgeMap.js.map +1 -0
  441. package/out/natural/naslStdlibMap.d.ts +2 -0
  442. package/out/natural/naslStdlibMap.js +26 -0
  443. package/out/natural/naslStdlibMap.js.map +1 -0
  444. package/out/natural/transformTSCode.d.ts +7 -0
  445. package/out/natural/transformTSCode.js +760 -0
  446. package/out/natural/transformTSCode.js.map +1 -0
  447. package/out/sentry/index.d.ts +2 -1
  448. package/out/sentry/index.js.map +1 -1
  449. package/out/server/createUiTs.js +28 -16
  450. package/out/server/createUiTs.js.map +1 -1
  451. package/out/server/entity2LogicNamespace.js +24 -22
  452. package/out/server/entity2LogicNamespace.js.map +1 -1
  453. package/out/server/event.js.map +1 -1
  454. package/out/server/extendBaseNode.js +55 -70
  455. package/out/server/extendBaseNode.js.map +1 -1
  456. package/out/server/formatTsUtils.js +46 -50
  457. package/out/server/formatTsUtils.js.map +1 -1
  458. package/out/server/getConnector.d.ts +3 -3
  459. package/out/server/getConnector.js +7 -8
  460. package/out/server/getConnector.js.map +1 -1
  461. package/out/server/getExtensionModules.js +2 -2
  462. package/out/server/getExtensionModules.js.map +1 -1
  463. package/out/server/getFunctions.js.map +1 -1
  464. package/out/server/getInterfaces.js.map +1 -1
  465. package/out/server/getLogging.js.map +1 -1
  466. package/out/server/getLogics.d.ts +1 -1
  467. package/out/server/getLogics.js +34 -16
  468. package/out/server/getLogics.js.map +1 -1
  469. package/out/server/getMemberIdentifier.js +13 -10
  470. package/out/server/getMemberIdentifier.js.map +1 -1
  471. package/out/server/getProcessComponents.js.map +1 -1
  472. package/out/server/getProcesses.js +21 -29
  473. package/out/server/getProcesses.js.map +1 -1
  474. package/out/server/getScope.js.map +1 -1
  475. package/out/server/getValidates.js.map +1 -1
  476. package/out/server/index.js +0 -1
  477. package/out/server/index.js.map +1 -1
  478. package/out/server/naslServer.d.ts +99 -94
  479. package/out/server/naslServer.js +485 -465
  480. package/out/server/naslServer.js.map +1 -1
  481. package/out/server/naslStdlibMap.js +4 -2
  482. package/out/server/naslStdlibMap.js.map +1 -1
  483. package/out/server/process2LogicNamespace.js.map +1 -1
  484. package/out/server/translator.d.ts +1 -1
  485. package/out/server/translator.js +52 -47
  486. package/out/server/translator.js.map +1 -1
  487. package/out/service/storage/init.d.ts +15 -1
  488. package/out/service/storage/init.js +65 -56
  489. package/out/service/storage/init.js.map +1 -1
  490. package/out/templator/genCallComponentLogic.js +1 -2
  491. package/out/templator/genCallComponentLogic.js.map +1 -1
  492. package/out/templator/genCreateBlock.js +13 -8
  493. package/out/templator/genCreateBlock.js.map +1 -1
  494. package/out/templator/genCurdEditMultipleKeyBlock.js +19 -10
  495. package/out/templator/genCurdEditMultipleKeyBlock.js.map +1 -1
  496. package/out/templator/genCurdMultipleKeyBlock.js +22 -26
  497. package/out/templator/genCurdMultipleKeyBlock.js.map +1 -1
  498. package/out/templator/genEditTableBlock.js +11 -12
  499. package/out/templator/genEditTableBlock.js.map +1 -1
  500. package/out/templator/genEnumSelectBlock.js +1 -1
  501. package/out/templator/genEnumSelectBlock.js.map +1 -1
  502. package/out/templator/genGetBlock.js +2 -2
  503. package/out/templator/genGetBlock.js.map +1 -1
  504. package/out/templator/genGridViewBlock.js +10 -14
  505. package/out/templator/genGridViewBlock.js.map +1 -1
  506. package/out/templator/genListViewBlock.js +4 -7
  507. package/out/templator/genListViewBlock.js.map +1 -1
  508. package/out/templator/genQueryComponent.js +22 -15
  509. package/out/templator/genQueryComponent.js.map +1 -1
  510. package/out/templator/genSelectBlock.js +12 -33
  511. package/out/templator/genSelectBlock.js.map +1 -1
  512. package/out/templator/genTableBlock.js +8 -10
  513. package/out/templator/genTableBlock.js.map +1 -1
  514. package/out/templator/genUpdateBlock.js +12 -7
  515. package/out/templator/genUpdateBlock.js.map +1 -1
  516. package/out/templator/index.d.ts +4 -2
  517. package/out/templator/index.js +2 -2
  518. package/out/templator/index.js.map +1 -1
  519. package/out/templator/utils.d.ts +2 -2
  520. package/out/templator/utils.js +21 -22
  521. package/out/templator/utils.js.map +1 -1
  522. package/out/translator/index.js +27 -28
  523. package/out/translator/index.js.map +1 -1
  524. package/out/utils/index.d.ts +2 -1
  525. package/out/utils/index.js +8 -14
  526. package/out/utils/index.js.map +1 -1
  527. package/out/utils/logger.js.map +1 -1
  528. package/out/utils/sortTsString.js +3 -1
  529. package/out/utils/sortTsString.js.map +1 -1
  530. package/out/utils/string.js +8 -11
  531. package/out/utils/string.js.map +1 -1
  532. package/out/utils/time-slicing.d.ts +41 -0
  533. package/out/utils/time-slicing.js +81 -0
  534. package/out/utils/time-slicing.js.map +1 -0
  535. package/out/utils/traverse.js +4 -6
  536. package/out/utils/traverse.js.map +1 -1
  537. package/package.json +11 -7
  538. package/sandbox/stdlib/nasl.auth.ts +49 -46
  539. package/sandbox/stdlib/nasl.http.ts +29 -31
  540. package/sandbox/stdlib/nasl.ui.definition.ts +13 -1
  541. package/sandbox-natural/stdlib/nasl.core.ts +36 -0
  542. package/sandbox-natural/stdlib/nasl.oql.ts +8 -0
  543. package/sandbox-natural/stdlib/nasl.ui.ts +56 -0
  544. package/sandbox-natural/stdlib/nasl.util.ts +26 -0
  545. package/sandbox-natural/tsconfig.json +12 -0
  546. package/src/automate/upgrader/2.20.js +1 -1
  547. package/src/bak/translator.js +92 -99
  548. package/src/breakpoint/generator/AfterStartNode.ts +19 -17
  549. package/src/breakpoint/generator/BeforeEndNode.ts +17 -17
  550. package/src/breakpoint/generator/BreakpointNode.ts +243 -195
  551. package/src/breakpoint/generator/CallbackNode.ts +20 -0
  552. package/src/breakpoint/generator/FragmentNode.ts +14 -0
  553. package/src/breakpoint/generator/index.ts +107 -80
  554. package/src/breakpoint/shared/constants.ts +59 -53
  555. package/src/breakpoint/shared/operations.ts +6 -6
  556. package/src/breakpoint/shared/socket.ts +277 -223
  557. package/src/breakpoint/shared/utils.ts +166 -146
  558. package/src/breakpoint/store/core.ts +326 -297
  559. package/src/breakpoint/store/dock.ts +103 -103
  560. package/src/breakpoint/types/index.d.ts +11 -11
  561. package/src/common/BaseNode.ts +1102 -1024
  562. package/src/common/Command.ts +46 -16
  563. package/src/common/ComponentAPI.ts +72 -72
  564. package/src/common/EventEmitter.ts +80 -76
  565. package/src/common/Messager.ts +223 -224
  566. package/src/common/asyncFuncMap.ts +12 -12
  567. package/src/concepts/Abort__.ts +53 -60
  568. package/src/concepts/Anchor__.ts +158 -149
  569. package/src/concepts/AnonymousFunction__.ts +584 -551
  570. package/src/concepts/App__.ts +4278 -3671
  571. package/src/concepts/Argument__.ts +234 -210
  572. package/src/concepts/Assignee__.ts +680 -656
  573. package/src/concepts/AssignmentLine__.ts +80 -84
  574. package/src/concepts/Assignment__.ts +275 -264
  575. package/src/concepts/Attribute__.ts +183 -184
  576. package/src/concepts/AuthInterface__.ts +61 -63
  577. package/src/concepts/AuthLogicForCallInterface__.ts +540 -511
  578. package/src/concepts/AuthLogic__.ts +210 -194
  579. package/src/concepts/BackendVariable__.ts +414 -415
  580. package/src/concepts/Backend__.ts +317 -303
  581. package/src/concepts/BatchAssignment__.ts +987 -939
  582. package/src/concepts/BinaryExpression__.ts +370 -341
  583. package/src/concepts/BindAttribute__.ts +1057 -1007
  584. package/src/concepts/BindDirective__.ts +540 -542
  585. package/src/concepts/BindEvent__.ts +992 -911
  586. package/src/concepts/BindStyle__.ts +442 -451
  587. package/src/concepts/BooleanLiteral__.ts +89 -90
  588. package/src/concepts/CallAuthInterface__.ts +458 -433
  589. package/src/concepts/CallConnector__.ts +209 -164
  590. package/src/concepts/CallFunction__.ts +600 -600
  591. package/src/concepts/CallInterface__.ts +752 -721
  592. package/src/concepts/CallLogic__.ts +1324 -1200
  593. package/src/concepts/CallQueryComponent__.ts +1580 -1501
  594. package/src/concepts/Comment__.ts +69 -68
  595. package/src/concepts/CompletionProperty__.ts +250 -255
  596. package/src/concepts/ConfigGroup__.ts +312 -296
  597. package/src/concepts/ConfigPropertyValue__.ts +92 -93
  598. package/src/concepts/ConfigProperty__.ts +374 -357
  599. package/src/concepts/Configuration__.ts +288 -276
  600. package/src/concepts/Connection__.ts +426 -0
  601. package/src/concepts/ConnectorTrigger__.ts +146 -142
  602. package/src/concepts/Connector__.ts +1090 -1048
  603. package/src/concepts/Constant__.ts +226 -219
  604. package/src/concepts/DataElement__.ts +108 -115
  605. package/src/concepts/DataSource__.ts +508 -472
  606. package/src/concepts/DatabaseTypeAnnotation__.ts +53 -59
  607. package/src/concepts/Destination__.ts +808 -746
  608. package/src/concepts/End__.ts +85 -89
  609. package/src/concepts/EntityIndex__.ts +206 -202
  610. package/src/concepts/EntityProperty__.ts +825 -791
  611. package/src/concepts/Entity__.ts +921 -864
  612. package/src/concepts/EnumItem__.ts +133 -125
  613. package/src/concepts/Enum__.ts +347 -337
  614. package/src/concepts/Event__.ts +305 -292
  615. package/src/concepts/ExternalDestination__.ts +269 -280
  616. package/src/concepts/ForEachStatement__.ts +583 -531
  617. package/src/concepts/FrontendLibrary__.ts +507 -485
  618. package/src/concepts/FrontendVariable__.ts +44 -49
  619. package/src/concepts/Frontend__.ts +1239 -1187
  620. package/src/concepts/Function__.ts +1110 -1045
  621. package/src/concepts/Identifier__.ts +276 -272
  622. package/src/concepts/IfStatement__.ts +467 -436
  623. package/src/concepts/Integration__.ts +136 -137
  624. package/src/concepts/InterfaceParam__.ts +239 -238
  625. package/src/concepts/Interface__.ts +969 -948
  626. package/src/concepts/JSBlock__.ts +83 -83
  627. package/src/concepts/JavaLogic__.ts +101 -106
  628. package/src/concepts/LogicItem__.ts +307 -237
  629. package/src/concepts/Logic__.ts +2301 -2088
  630. package/src/concepts/MatchCase__.ts +886 -779
  631. package/src/concepts/Match__.ts +728 -659
  632. package/src/concepts/MemberExpression__.ts +330 -311
  633. package/src/concepts/MicroApp__.ts +91 -97
  634. package/src/concepts/Module__.ts +2590 -2278
  635. package/src/concepts/MsgTriggerEvent__.ts +297 -281
  636. package/src/concepts/MsgTriggerLauncher__.ts +286 -256
  637. package/src/concepts/Namespace__.ts +2579 -2466
  638. package/src/concepts/NewComposite__.ts +1487 -1350
  639. package/src/concepts/NewList__.ts +464 -450
  640. package/src/concepts/NewMap__.ts +691 -674
  641. package/src/concepts/New__.ts +42 -49
  642. package/src/concepts/NullLiteral__.ts +66 -72
  643. package/src/concepts/NumericLiteral__.ts +169 -169
  644. package/src/concepts/OqlQueryComponent__.ts +282 -279
  645. package/src/concepts/OverriddenLogic__.ts +2142 -2097
  646. package/src/concepts/Param__.ts +500 -442
  647. package/src/concepts/Point__.ts +53 -59
  648. package/src/concepts/ProcessComponent__.ts +497 -475
  649. package/src/concepts/ProcessElement__.ts +1852 -1780
  650. package/src/concepts/ProcessOutcome__.ts +59 -64
  651. package/src/concepts/ProcessOutcomes__.ts +59 -64
  652. package/src/concepts/Process__.ts +1491 -1428
  653. package/src/concepts/QueryAggregateExpression__.ts +135 -142
  654. package/src/concepts/QueryFieldExpression__.ts +138 -142
  655. package/src/concepts/QueryFromExpression__.ts +246 -254
  656. package/src/concepts/QueryGroupByExpression__.ts +130 -136
  657. package/src/concepts/QueryJoinExpression__.ts +441 -438
  658. package/src/concepts/QueryLimitExpression__.ts +159 -166
  659. package/src/concepts/QueryOrderByExpression__.ts +173 -180
  660. package/src/concepts/QuerySelectExpression__.ts +464 -439
  661. package/src/concepts/Rect__.ts +73 -79
  662. package/src/concepts/Return__.ts +366 -345
  663. package/src/concepts/Role__.ts +146 -147
  664. package/src/concepts/SelectMembers__.ts +358 -350
  665. package/src/concepts/Slot__.ts +152 -153
  666. package/src/concepts/SqlQueryComponent__.ts +230 -228
  667. package/src/concepts/Start__.ts +45 -52
  668. package/src/concepts/StringInterpolation__.ts +323 -296
  669. package/src/concepts/StringLiteral__.ts +113 -115
  670. package/src/concepts/StructureProperty__.ts +306 -295
  671. package/src/concepts/Structure__.ts +615 -578
  672. package/src/concepts/SwitchCase__.ts +326 -290
  673. package/src/concepts/SwitchStatement__.ts +236 -229
  674. package/src/concepts/Theme__.ts +64 -68
  675. package/src/concepts/Transactional__.ts +159 -153
  676. package/src/concepts/TriggerEvent__.ts +285 -274
  677. package/src/concepts/TriggerLauncher__.ts +232 -196
  678. package/src/concepts/TypeAnnotation__.ts +1049 -1011
  679. package/src/concepts/TypeParam__.ts +48 -50
  680. package/src/concepts/UnaryExpression__.ts +163 -153
  681. package/src/concepts/Unparsed__.ts +81 -82
  682. package/src/concepts/UseComponent__.ts +53 -59
  683. package/src/concepts/ValidationRule__.ts +524 -544
  684. package/src/concepts/Variable__.ts +419 -397
  685. package/src/concepts/ViewBlock__.ts +58 -64
  686. package/src/concepts/ViewComponent__.ts +1323 -1261
  687. package/src/concepts/ViewElement__.ts +2538 -2350
  688. package/src/concepts/View__.ts +2447 -2268
  689. package/src/concepts/WhileStatement__.ts +293 -272
  690. package/src/concepts/index__.ts +2 -1
  691. package/src/concepts/types__.ts +123 -121
  692. package/src/decorators/index.ts +75 -77
  693. package/src/decorators/promise.ts +28 -0
  694. package/src/enums/KEYWORDS.ts +1228 -1228
  695. package/src/enums/LEVEL_NAME_MAP.ts +24 -24
  696. package/src/generator/compileComponent.ts +10 -10
  697. package/src/generator/genBundleFiles.ts +300 -291
  698. package/src/generator/genHash.ts +2 -2
  699. package/src/generator/genMetaData.ts +280 -261
  700. package/src/generator/genReleaseBody.ts +312 -291
  701. package/src/generator/icestark.ts +1 -1
  702. package/src/generator/microApp.ts +17 -20
  703. package/src/generator/permission.ts +227 -218
  704. package/src/generator/qiankun.ts +1 -1
  705. package/src/generator/styleReplacer.ts +28 -31
  706. package/src/index.ts +0 -3
  707. package/src/manager/diagnostic.ts +84 -82
  708. package/src/manager/stepRecorder.ts +106 -94
  709. package/src/natural/RequirementAnalyzer.ts +208 -0
  710. package/src/natural/RequirementExecutor.ts +685 -0
  711. package/src/natural/componentData.ts +81 -0
  712. package/src/natural/genNaturalTS.ts +77 -0
  713. package/src/natural/index.ts +4 -0
  714. package/src/natural/knowledgeMap.ts +39 -0
  715. package/src/natural/naslStdlibMap.ts +24 -0
  716. package/src/natural/transformTSCode.ts +692 -0
  717. package/src/sentry/index.ts +109 -104
  718. package/src/server/createUiTs.ts +190 -184
  719. package/src/server/entity2LogicNamespace.ts +379 -359
  720. package/src/server/event.js +145 -145
  721. package/src/server/extendBaseNode.ts +461 -456
  722. package/src/server/formatTsUtils.ts +712 -713
  723. package/src/server/getConnector.ts +33 -33
  724. package/src/server/getExtensionModules.ts +23 -22
  725. package/src/server/getFunctions.ts +6 -6
  726. package/src/server/getInterfaces.ts +38 -37
  727. package/src/server/getLogging.ts +1 -1
  728. package/src/server/getLogics.ts +390 -344
  729. package/src/server/getMemberIdentifier.ts +286 -281
  730. package/src/server/getProcessComponents.ts +2 -2
  731. package/src/server/getProcesses.ts +548 -534
  732. package/src/server/getScope.ts +51 -51
  733. package/src/server/getValidates.ts +3 -3
  734. package/src/server/index.ts +29 -30
  735. package/src/server/naslServer.ts +4302 -4225
  736. package/src/server/naslStdlibMap.ts +43 -41
  737. package/src/server/process2LogicNamespace.ts +97 -97
  738. package/src/server/translator.ts +740 -746
  739. package/src/service/storage/init.ts +761 -728
  740. package/src/templator/genCallComponentLogic.ts +14 -15
  741. package/src/templator/genCreateBlock.ts +257 -229
  742. package/src/templator/genCurdEditMultipleKeyBlock.ts +332 -316
  743. package/src/templator/genCurdMultipleKeyBlock.ts +501 -473
  744. package/src/templator/genEditTableBlock.ts +192 -182
  745. package/src/templator/genEnumSelectBlock.ts +13 -7
  746. package/src/templator/genGetBlock.ts +57 -55
  747. package/src/templator/genGridViewBlock.ts +191 -201
  748. package/src/templator/genListViewBlock.ts +59 -64
  749. package/src/templator/genQueryComponent.ts +337 -287
  750. package/src/templator/genSelectBlock.ts +276 -285
  751. package/src/templator/genTableBlock.ts +157 -160
  752. package/src/templator/genUpdateBlock.ts +269 -255
  753. package/src/templator/index.ts +4 -4
  754. package/src/templator/utils.ts +490 -464
  755. package/src/translator/index.ts +84 -84
  756. package/src/translator/lsp.ts +22 -22
  757. package/src/translator/tsp.ts +6 -6
  758. package/src/utils/index.ts +115 -117
  759. package/src/utils/logger.ts +3 -4
  760. package/src/utils/sortTsString.ts +34 -32
  761. package/src/utils/string.ts +47 -48
  762. package/src/utils/time-slicing.ts +109 -0
  763. package/src/utils/traverse.ts +114 -126
  764. package/test/concepts/match/__snapshots__/toEmbeddedTS.spec.ts.snap +66 -0
  765. package/test/concepts/match/__snapshots__/toJS.spec.ts.snap +40 -0
  766. package/test/concepts/match/constant.ts +5 -0
  767. package/test/concepts/match/fixtures/isExpression.json +259 -0
  768. package/test/concepts/match/fixtures/lastBodyIf.json +268 -0
  769. package/test/concepts/match/fixtures/noExpression.json +176 -0
  770. package/test/concepts/match/toEmbeddedTS.spec.ts +14 -0
  771. package/test/concepts/match/toJS.spec.ts +14 -0
  772. package/test/setup.ts +2 -1
  773. package/ts-worker/src/index.js +0 -2
  774. package/tsconfig.json +21 -21
@@ -3,18 +3,20 @@ import debounce from 'lodash/debounce';
3
3
  import { BaseNode, App } from '../../concepts';
4
4
 
5
5
  import {
6
- STATUS_DISABLED,
7
- STATUS_ENABLED,
8
- STATUS_DELETED,
9
- TARGET_BACKEND,
10
- TARGET_FRONTEND,
11
- EVENT_TYPE_OBJECT_INFO,
12
- EVENT_TYPE_PAGE_INFO,
13
- EVENT_TYPE_PARSE,
14
- EVENT_TYPE_RESOLVE,
15
- EVENT_TYPE_STEP_OVER,
16
- EVENT_TYPE_BREAKPOINT,
17
- EVENT_TYPE_SYNC_BREAKPOINTS,
6
+ STATUS_DISABLED,
7
+ STATUS_ENABLED,
8
+ STATUS_DELETED,
9
+ TARGET_BACKEND,
10
+ TARGET_FRONTEND,
11
+ EVENT_TYPE_OBJECT_INFO,
12
+ EVENT_TYPE_RETURN_INFO,
13
+ EVENT_TYPE_PAGE_INFO,
14
+ EVENT_TYPE_CACHE,
15
+ EVENT_TYPE_PARSE,
16
+ EVENT_TYPE_RESOLVE,
17
+ EVENT_TYPE_STEP_OVER,
18
+ EVENT_TYPE_BREAKPOINT,
19
+ EVENT_TYPE_SYNC_BREAKPOINTS,
18
20
  } from '../shared/constants';
19
21
 
20
22
  import * as socket from '../shared/socket';
@@ -23,396 +25,393 @@ import { setCreate, setUpdate, setDelete } from '../shared/operations';
23
25
  import { getRealNode, traverseBreakpointOnNode, traverseBreakpointOnApp } from '../shared/utils';
24
26
 
25
27
  type Store = {
26
- enable?: Boolean,
27
- activePath?: string;
28
- activeStackItem?: any;
29
- echoStackItem?: any,
30
- nodes?: BaseNode[];
31
- stack?: any[],
32
- connections?: string[];
28
+ enable?: Boolean,
29
+ activePath?: string;
30
+ activeStackItem?: any;
31
+ echoStackItem?: any,
32
+ nodes?: BaseNode[];
33
+ stack?: any[],
34
+ connections?: string[];
35
+ [key: string]: any;
33
36
  };
34
37
 
35
38
  type StepOverData = Parameters<typeof socket.emitToFrontend>[0];
36
39
 
37
- export const store: Store = {
38
- enable: true,
39
- nodes: [],
40
- stack: [],
41
- connections: [],
42
- activePath: '',
43
- activeStackItem: {},
44
- echoStackItem: {},
40
+ let original: Store = {
41
+ enable: true,
42
+ nodes: [],
43
+ stack: [],
44
+ connections: [],
45
+ activePath: '',
46
+ activeStackItem: {},
47
+ echoStackItem: {},
45
48
  };
46
49
 
47
- Object.defineProperty(store, 'activePath', {
48
- get: () => {
49
- const { activeStackItem = {} } = store;
50
- const { operation = {} } = activeStackItem;
51
- const { path = '' } = operation;
50
+ Object.defineProperty(original, 'activePath', {
51
+ get: () => {
52
+ const { activeStackItem = {} } = original;
53
+ const { operation = {} } = activeStackItem;
54
+ const { path = '' } = operation;
52
55
 
53
- return path;
54
- },
56
+ return path;
57
+ },
58
+ });
59
+
60
+ export const reactive = (callback: <T>(arg: T) => T) => {
61
+ original = callback(original);
62
+ return original;
63
+ };
64
+
65
+ export const store = new Proxy<Store>({}, {
66
+ get: (_, key: string) => original[key],
67
+ set: (_, key: string, value: any) => Reflect.set(original, key, value),
55
68
  });
56
69
 
57
70
  const isUseful = (node: BaseNode) => {
58
- if (!node) {
59
- return false;
60
- }
71
+ if (!node) {
72
+ return false;
73
+ }
61
74
 
62
- const { app, nodePath } = (node as any);
75
+ const { app, nodePath } = (node as any);
63
76
 
64
- if (!app || !nodePath) {
65
- return false;
66
- }
77
+ if (!app || !nodePath) {
78
+ return false;
79
+ }
67
80
 
68
- return app.findNodeByPath(nodePath);
81
+ return app.findNodeByPath(nodePath);
69
82
  };
70
83
 
71
84
  const clean = debounce(() => {
72
- const set = new Set();
85
+ const set = new Set();
73
86
 
74
- for (let i = 0; i < store.nodes.length; i += 1) {
75
- const current = store.nodes[i];
76
- const { id } = current;
87
+ for (let i = 0; i < store.nodes.length; i += 1) {
88
+ const current = store.nodes[i];
89
+ const { id } = current;
77
90
 
78
- const repeated = set.has(id);
79
- const useless = !isUseful(current);
91
+ const repeated = set.has(id);
92
+ const useless = !isUseful(current);
80
93
 
81
- if (useless || repeated) {
82
- store.nodes.splice(i, 1);
83
- i -= 1;
84
- } else {
85
- set.add(id);
86
- }
94
+ if (useless || repeated) {
95
+ store.nodes.splice(i, 1);
96
+ i -= 1;
97
+ } else {
98
+ set.add(id);
87
99
  }
100
+ }
88
101
  }, 300);
89
102
 
90
103
  export const syncBreakpointsToFrontend = debounce(() => {
91
- const { nodes = [] } = store;
104
+ const { nodes = [] } = store;
92
105
 
93
- const filter = (node: BaseNode) => node.breakpoint === STATUS_ENABLED;
94
- const map = (node: BaseNode) => node.nodePath;
95
- const paths = nodes.filter(filter).map(map);
106
+ const filter = (node: BaseNode) => node.breakpoint === STATUS_ENABLED;
107
+ const map = (node: BaseNode) => node.nodePath;
108
+ const paths = nodes.filter(filter).map(map);
96
109
 
97
- socket.emitToFrontend({
98
- eventType: EVENT_TYPE_SYNC_BREAKPOINTS,
99
- paths,
100
- });
110
+ socket.emitToFrontend({
111
+ eventType: EVENT_TYPE_SYNC_BREAKPOINTS,
112
+ paths,
113
+ });
101
114
  });
102
115
 
103
116
  const creater = (node: BaseNode) => {
104
- if (!node?.breakpoint) {
105
- return;
106
- }
117
+ if (!node?.breakpoint) {
118
+ return;
119
+ }
107
120
 
108
- store.nodes.push(node);
109
- clean();
121
+ store.nodes.push(node);
122
+ clean();
110
123
 
111
- syncBreakpointsToFrontend();
124
+ syncBreakpointsToFrontend();
112
125
  };
113
126
 
114
127
  const deleter = (node: BaseNode) => {
115
- const index = store.nodes.indexOf(node);
116
- index > -1 && store.nodes.splice(index, 1);
128
+ const index = store.nodes.indexOf(node);
129
+ index > -1 && store.nodes.splice(index, 1);
117
130
 
118
- syncBreakpointsToFrontend();
131
+ syncBreakpointsToFrontend();
132
+ };
133
+
134
+ const isFrontend = (node: BaseNode) => {
135
+ if (!node) {
136
+ return;
137
+ }
138
+
139
+ const { getAncestor } = node;
140
+
141
+ return getAncestor && getAncestor.call(node, 'View');
119
142
  };
120
143
 
121
144
  const updateToBackend = (node: BaseNode) => {
122
- node = getRealNode(node);
145
+ node = getRealNode(node);
123
146
 
124
- if (!node) {
125
- return;
126
- }
147
+ if (!node) {
148
+ return;
149
+ }
127
150
 
128
- const frontend = isFrontend(node);
129
- const { breakpoint, nodePath: path } = node;
151
+ const frontend = isFrontend(node);
152
+ const { breakpoint, nodePath: path } = node;
130
153
 
131
- if (!breakpoint) {
132
- return;
133
- }
154
+ if (!breakpoint) {
155
+ return;
156
+ }
134
157
 
135
- if (frontend) {
136
- return;
137
- }
158
+ if (frontend) {
159
+ return;
160
+ }
138
161
 
139
- socket.emitToBackend({
140
- eventType: EVENT_TYPE_BREAKPOINT,
141
- breakpoint: { path, breakpointStatus: breakpoint },
142
- });
162
+ socket.emitToBackend({
163
+ eventType: EVENT_TYPE_BREAKPOINT,
164
+ breakpoint: { path, breakpointStatus: breakpoint },
165
+ });
143
166
  };
144
167
 
145
168
  const updater = (node: BaseNode) => {
146
- if (!node) {
147
- return;
148
- }
169
+ if (!node) {
170
+ return;
171
+ }
149
172
 
150
- const { breakpoint } = node;
151
- const { nodes = [] } = store;
173
+ const { breakpoint } = node;
174
+ const { nodes = [] } = store;
152
175
 
153
- const included = nodes.includes(node);
176
+ const included = nodes.includes(node);
154
177
 
155
- if (breakpoint) {
156
- included ? updateToBackend(node) : creater(node);
157
- } else {
158
- included && deleter(node);
159
- }
178
+ if (breakpoint) {
179
+ included ? updateToBackend(node) : creater(node);
180
+ } else {
181
+ included && deleter(node);
182
+ }
160
183
 
161
- syncBreakpointsToFrontend();
184
+ syncBreakpointsToFrontend();
162
185
  };
163
186
 
164
187
  setCreate(creater);
165
188
  setUpdate(updater);
166
189
  setDelete(deleter);
167
190
 
168
- const isFrontend = (node: BaseNode) => {
169
- if (!node) {
170
- return;
171
- }
172
-
173
- const { getAncestor } = node;
174
-
175
- return getAncestor && getAncestor.call(node, 'View');
176
- };
177
-
178
191
  export const addBreakpointNode = (node: BaseNode) => {
179
- node = getRealNode(node);
180
-
181
- if (!node) {
182
- return;
183
- }
184
-
185
- const frontend = isFrontend(node);
186
- const backendData = {
187
- eventType: EVENT_TYPE_BREAKPOINT,
188
- breakpoint: {
189
- path: node.nodePath,
190
- breakpointStatus: STATUS_ENABLED,
191
- },
192
- };
192
+ node = getRealNode(node);
193
+
194
+ if (!node) {
195
+ return;
196
+ }
197
+
198
+ const frontend = isFrontend(node);
199
+ const backendData = {
200
+ eventType: EVENT_TYPE_BREAKPOINT,
201
+ breakpoint: {
202
+ path: node.nodePath,
203
+ breakpointStatus: STATUS_ENABLED,
204
+ },
205
+ };
193
206
 
194
- node.update({ breakpoint: STATUS_ENABLED });
195
- !frontend && socket.emitToBackend(backendData);
207
+ node.update({ breakpoint: STATUS_ENABLED });
208
+ !frontend && socket.emitToBackend(backendData);
196
209
 
197
- creater(node);
210
+ creater(node);
198
211
  };
199
212
 
200
213
  export const enableBreakpointNode = (node: BaseNode) => {
201
- node = getRealNode(node);
214
+ node = getRealNode(node);
202
215
 
203
- if (!node) {
204
- return;
205
- }
216
+ if (!node) {
217
+ return;
218
+ }
206
219
 
207
- node.update({ breakpoint: STATUS_ENABLED });
220
+ node.update({ breakpoint: STATUS_ENABLED });
208
221
  };
209
222
 
210
223
  export const disableBreakpointNode = (node: BaseNode) => {
211
- node = getRealNode(node);
224
+ node = getRealNode(node);
212
225
 
213
- if (!node) {
214
- return;
215
- }
226
+ if (!node) {
227
+ return;
228
+ }
216
229
 
217
- node.update({ breakpoint: STATUS_DISABLED });
230
+ node.update({ breakpoint: STATUS_DISABLED });
218
231
  };
219
232
 
220
233
  export const removeBreakpointNode = (node: BaseNode) => {
221
- node = getRealNode(node);
234
+ node = getRealNode(node);
222
235
 
223
- if (!node) {
224
- return;
225
- }
236
+ if (!node) {
237
+ return;
238
+ }
239
+
240
+ const frontend = isFrontend(node);
241
+ const connected = socket.isConnected();
226
242
 
227
- const frontend = isFrontend(node);
228
- const backendData = {
229
- eventType: EVENT_TYPE_BREAKPOINT,
230
- breakpoint: {
231
- path: node.nodePath,
232
- breakpointStatus: STATUS_DELETED,
233
- },
234
- };
243
+ const backendData = {
244
+ eventType: EVENT_TYPE_BREAKPOINT,
245
+ breakpoint: {
246
+ path: node.nodePath,
247
+ breakpointStatus: STATUS_DELETED,
248
+ },
249
+ };
235
250
 
251
+ if (connected && !frontend) {
252
+ node.breakpoint = null;
253
+ } else {
236
254
  node.update({ breakpoint: null });
237
- !frontend && socket.emitToBackend(backendData);
255
+ }
238
256
 
239
- deleter(node);
257
+ !frontend && socket.emitToBackend(backendData);
258
+ deleter(node);
240
259
  };
241
260
 
242
261
  export const addBreakpointNodesFromNode = (source: BaseNode) => {
243
- traverseBreakpointOnNode(source, creater);
262
+ traverseBreakpointOnNode(source, creater);
244
263
  };
245
264
 
246
265
  export const addBreakpointNodesFromApp = (source: App) => {
247
- store.nodes = [];
248
- setTimeout(() => traverseBreakpointOnApp(source, creater));
266
+ store.nodes = [];
267
+ setTimeout(() => traverseBreakpointOnApp(source, creater));
249
268
  };
250
269
 
251
270
  let temporaryNodes: BaseNode[] = [];
252
271
 
253
272
  export const recoverBreakpointAfterTemporary = () => {
254
- temporaryNodes.forEach((node) => {
255
- if (node) {
256
- node.breakpoint = STATUS_ENABLED;
257
- }
258
- });
273
+ temporaryNodes.forEach((node) => {
274
+ if (node) {
275
+ node.breakpoint = STATUS_ENABLED;
276
+ }
277
+ });
259
278
  };
260
279
 
261
280
  export const removeBreakpointForTemporary = async () => {
262
- temporaryNodes = store.nodes || [];
263
- temporaryNodes.forEach((node) => {
264
- if (node && 'breakpoint' in node) {
265
- delete node.breakpoint;
266
- }
267
- });
268
-
269
- await Promise.resolve(temporaryNodes);
270
- recoverBreakpointAfterTemporary();
281
+ temporaryNodes = store.nodes || [];
282
+ temporaryNodes.forEach((node) => {
283
+ if (node && 'breakpoint' in node) {
284
+ delete node.breakpoint;
285
+ }
286
+ });
287
+
288
+ await Promise.resolve(temporaryNodes);
289
+ recoverBreakpointAfterTemporary();
271
290
  };
272
291
 
273
292
  export const findFromStack = (targetPath = store.activePath) => {
274
- const { stack = [], activeStackItem = {} } = store;
275
- const { operation: { path: activeStackItemPath = '' } = {} } = activeStackItem;
293
+ const { stack = [], activeStackItem = {} } = store;
294
+ const { operation: { path: activeStackItemPath = '' } = {} } = activeStackItem;
276
295
 
277
- if (activeStackItemPath === targetPath) {
278
- return activeStackItem;
279
- }
296
+ if (activeStackItemPath === targetPath) {
297
+ return activeStackItem;
298
+ }
280
299
 
281
- return stack.find((item = {}) => {
282
- const { operation: { path = '' } = {} } = item;
300
+ return stack.find((item = {}) => {
301
+ const { operation: { path = '' } = {} } = item;
283
302
 
284
- return targetPath === path;
285
- });
303
+ return targetPath === path;
304
+ });
286
305
  };
287
306
 
288
307
  export const resolveBreakpointToBackend = (path = store.activePath) => {
289
- const eventType = EVENT_TYPE_RESOLVE;
290
- const data = { eventType, path };
308
+ const eventType = EVENT_TYPE_RESOLVE;
309
+ const data = { eventType, path };
291
310
 
292
- path && socket.emitToBackend(data);
311
+ path && socket.emitToBackend(data);
293
312
  };
294
313
 
295
314
  export const resolveBreakpointToFrontend = (path = store.activePath) => {
296
- const eventType = EVENT_TYPE_RESOLVE;
297
- const data = { eventType, path };
315
+ const eventType = EVENT_TYPE_RESOLVE;
316
+ const data = { eventType, path };
298
317
 
299
- path && socket.emitToFrontend(data);
318
+ path && socket.emitToFrontend(data);
300
319
  };
301
320
 
302
321
  export const resolveByPath = (path = store.activePath) => {
303
- const { activePath, stack = [] } = store;
322
+ const { activePath, stack = [] } = store;
304
323
 
305
- const found = findFromStack(path);
306
- const nextStack = stack.filter((item) => item !== found);
324
+ const found = findFromStack(path);
325
+ const nextStack = stack.filter((item) => item !== found);
307
326
 
308
- if (activePath === path) {
309
- store.activeStackItem = nextStack[0];
310
- }
327
+ if (activePath === path) {
328
+ // eslint-disable-next-line prefer-destructuring
329
+ store.activeStackItem = nextStack[0];
330
+ }
311
331
 
312
- store.stack = nextStack;
332
+ store.stack = nextStack;
313
333
  };
314
334
 
315
335
  export const resolveBreakpoint = (path = store.activePath) => {
316
- const found = findFromStack();
336
+ const found = findFromStack();
317
337
 
318
- if (!found) {
319
- return;
320
- }
338
+ if (!found) {
339
+ return;
340
+ }
321
341
 
322
- const { target } = found;
323
-
324
- switch (target) {
325
- case TARGET_BACKEND: {
326
- resolveBreakpointToBackend(path);
327
- break;
328
- }
329
- case TARGET_FRONTEND: {
330
- resolveBreakpointToFrontend(path);
331
- break;
332
- }
342
+ const { target } = found;
343
+
344
+ switch (target) {
345
+ case TARGET_BACKEND: {
346
+ resolveBreakpointToBackend(path);
347
+ break;
348
+ }
349
+ case TARGET_FRONTEND: {
350
+ resolveBreakpointToFrontend(path);
351
+ break;
333
352
  }
353
+ }
334
354
 
335
- store.echoStackItem = found;
336
- resolveByPath();
355
+ store.echoStackItem = found;
356
+ resolveByPath();
337
357
  };
338
358
 
339
359
  const stepOverBreakpointToBackend = () => {
340
- const { activePath } = store;
360
+ const { activePath } = store;
341
361
 
342
- activePath && socket.emitToBackend({
343
- eventType: EVENT_TYPE_STEP_OVER,
344
- path: store.activePath,
345
- });
362
+ activePath && socket.emitToBackend({
363
+ eventType: EVENT_TYPE_STEP_OVER,
364
+ path: store.activePath,
365
+ });
346
366
  };
347
367
 
348
368
  const stepOverBreakpointToFrontend = (data: StepOverData = {}) => {
349
- const { activePath } = store;
369
+ const { activePath } = store;
350
370
 
351
- activePath && socket.emitToFrontend({
352
- eventType: EVENT_TYPE_STEP_OVER,
353
- path: store.activePath,
354
- ...data,
355
- });
371
+ activePath && socket.emitToFrontend({
372
+ eventType: EVENT_TYPE_STEP_OVER,
373
+ path: store.activePath,
374
+ ...data,
375
+ });
356
376
  };
357
377
 
358
378
  export const stepOverBreakpoint = (data: StepOverData = {}) => {
359
- const found = findFromStack();
379
+ const found = findFromStack();
360
380
 
361
- if (!found) {
362
- return;
363
- }
364
-
365
- const { target } = found;
366
-
367
- switch (target) {
368
- case TARGET_BACKEND: {
369
- stepOverBreakpointToBackend();
370
- break;
371
- }
372
- case TARGET_FRONTEND: {
373
- stepOverBreakpointToFrontend(data);
374
- break;
375
- }
376
- }
377
-
378
- store.echoStackItem = found;
379
- resolveByPath();
380
- };
381
-
382
- const CACHE_KEY = 'activePath';
383
- const cacher = new Map();
381
+ if (!found) {
382
+ return;
383
+ }
384
384
 
385
- const clearBeforeEmit = () => {
386
- const { activePath: storeActivePath } = store;
387
- const cacheActivePath = cacher.get(CACHE_KEY);
385
+ const { target } = found;
388
386
 
389
- const empty = !cacheActivePath;
390
- const different = storeActivePath !== cacheActivePath;
391
-
392
- empty && cacher.clear();
393
- different && cacher.clear();
387
+ switch (target) {
388
+ case TARGET_BACKEND: {
389
+ stepOverBreakpointToBackend();
390
+ break;
391
+ }
392
+ case TARGET_FRONTEND: {
393
+ stepOverBreakpointToFrontend(data);
394
+ break;
395
+ }
396
+ }
394
397
 
395
- cacher.set(CACHE_KEY, storeActivePath);
398
+ store.echoStackItem = found;
399
+ resolveByPath();
396
400
  };
397
401
 
398
- const emitToBackendWithCache = (source: Record<string, any> = {}) => {
399
- clearBeforeEmit();
400
-
401
- const key = JSON.stringify(source);
402
- const cache = cacher.get(key) || socket.emitToBackend(source);
403
-
404
- cacher.set(key, cache);
405
- return cache;
406
- };
402
+ export const fetchBackendPage = (source: Record<string, any> = {}) => socket.emitToBackend({
403
+ eventType: EVENT_TYPE_PAGE_INFO,
404
+ ...source,
405
+ });
407
406
 
408
- export const fetchBackendPage = (source: Record<string, any> = {}) => emitToBackendWithCache({
409
- eventType: EVENT_TYPE_PAGE_INFO,
410
- ...source,
407
+ export const fetchBackendReturn = (source: Record<string, any> = {}) => socket.emitToBackend({
408
+ eventType: EVENT_TYPE_RETURN_INFO,
409
+ ...source,
411
410
  });
412
411
 
413
- export const fetchBackendObject = (source: Record<string, any> = {}) => emitToBackendWithCache({
414
- eventType: EVENT_TYPE_OBJECT_INFO,
415
- ...source,
412
+ export const fetchBackendObject = (source: Record<string, any> = {}) => socket.emitToBackend({
413
+ eventType: EVENT_TYPE_OBJECT_INFO,
414
+ ...source,
416
415
  });
417
416
 
418
417
  let variableNodes: BaseNode[] = [];
@@ -420,57 +419,87 @@ let variablesPromise: Promise<any>;
420
419
  let resolveVariablesPromise: (arg: any) => void;
421
420
 
422
421
  const nodeToCode = (node: BaseNode) => {
423
- let code;
424
-
425
- try {
426
- if ('toJS' in node) {
427
- code = (node as any).toJS();
428
- }
429
- } catch (e) {
430
- console.error(e);
431
- code = '';
422
+ let code;
423
+
424
+ try {
425
+ if ('toJS' in node) {
426
+ code = (node as any).toJS();
432
427
  }
428
+ } catch (e) {
429
+ console.error(e);
430
+ code = '';
431
+ }
433
432
 
434
- return code;
433
+ return code;
435
434
  };
436
435
 
437
436
  const fetchVariables = debounce(async () => {
438
- const { activePath } = store;
437
+ const { activePath } = store;
439
438
 
440
- const resolve = resolveVariablesPromise;
441
- const codes = variableNodes.map(nodeToCode);
439
+ const resolve = resolveVariablesPromise;
440
+ const codes = variableNodes.map(nodeToCode);
442
441
 
443
- variableNodes = [];
444
- variablesPromise = undefined;
445
- resolveVariablesPromise = undefined;
442
+ variableNodes = [];
443
+ variablesPromise = undefined;
444
+ resolveVariablesPromise = undefined;
446
445
 
447
- const result = await socket.emitToFrontend({
448
- eventType: EVENT_TYPE_PARSE,
449
- path: activePath,
450
- codes,
451
- });
446
+ const result = await socket.emitToFrontend({
447
+ eventType: EVENT_TYPE_PARSE,
448
+ path: activePath,
449
+ codes,
450
+ });
452
451
 
453
- resolve && resolve(result);
452
+ resolve && resolve(result);
454
453
  }, 0, { leading: false, trailing: true });
455
454
 
456
455
  const getVariablesPromise = () => {
457
- variablesPromise = variablesPromise || new Promise((resolve) => {
458
- resolveVariablesPromise = resolve;
459
- });
456
+ variablesPromise = variablesPromise || new Promise((resolve) => {
457
+ resolveVariablesPromise = resolve;
458
+ });
460
459
 
461
- fetchVariables();
462
- return variablesPromise;
460
+ fetchVariables();
461
+ return variablesPromise;
463
462
  };
464
463
 
465
464
  export const fetchFrontendVariable = async (node: BaseNode) => {
466
- const { length } = variableNodes;
465
+ const { length } = variableNodes;
466
+
467
+ variableNodes = variableNodes.concat(node);
467
468
 
468
- variableNodes = variableNodes.concat(node);
469
+ const promise = getVariablesPromise();
470
+ const result = await promise;
471
+
472
+ return result && result[length];
473
+ };
469
474
 
470
- const promise = getVariablesPromise();
471
- const result = await promise;
475
+ export const fetchReturn = async (node: BaseNode) => {
476
+ const { nodePath: path } = node;
472
477
 
473
- return result && result[length];
478
+ if (!path) {
479
+ return;
480
+ }
481
+
482
+ const found = findFromStack();
483
+
484
+ if (!found) {
485
+ return;
486
+ }
487
+
488
+ const { target } = found;
489
+
490
+ const data = { path };
491
+
492
+ switch (target) {
493
+ case TARGET_BACKEND: {
494
+ return fetchBackendReturn(data);
495
+ }
496
+ case TARGET_FRONTEND: {
497
+ const eventType = EVENT_TYPE_CACHE;
498
+ const options = { eventType, ...data };
499
+
500
+ return socket.emitToFrontend(options);
501
+ }
502
+ }
474
503
  };
475
504
 
476
505
  export default store;