@lcap/nasl 3.4.0-beta.5 → 3.4.0-beta.6

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 (831) hide show
  1. package/.nyc_output/b920244d-8d01-4e76-be5a-95132217c5a1.json +1 -0
  2. package/.nyc_output/processinfo/b920244d-8d01-4e76-be5a-95132217c5a1.json +1 -0
  3. package/.nyc_output/processinfo/index.json +1 -0
  4. package/coverage/base.css +224 -0
  5. package/coverage/block-navigation.js +87 -0
  6. package/coverage/favicon.png +0 -0
  7. package/coverage/index.html +461 -0
  8. package/coverage/prettify.css +1 -0
  9. package/coverage/prettify.js +2 -0
  10. package/coverage/sort-arrow-sprite.png +0 -0
  11. package/coverage/sorter.js +196 -0
  12. package/coverage/src/automate/engine/index.html +116 -0
  13. package/coverage/src/automate/engine/utils.js.html +1414 -0
  14. package/coverage/src/bak/index.html +116 -0
  15. package/coverage/src/bak/translator.js.html +631 -0
  16. package/coverage/src/breakpoint/generator/AfterStartNode.ts.html +175 -0
  17. package/coverage/src/breakpoint/generator/BeforeEndNode.ts.html +169 -0
  18. package/coverage/src/breakpoint/generator/BreakpointNode.ts.html +1246 -0
  19. package/coverage/src/breakpoint/generator/CallbackNode.ts.html +145 -0
  20. package/coverage/src/breakpoint/generator/index.html +176 -0
  21. package/coverage/src/breakpoint/generator/index.ts.html +508 -0
  22. package/coverage/src/breakpoint/index.html +116 -0
  23. package/coverage/src/breakpoint/index.ts.html +94 -0
  24. package/coverage/src/breakpoint/shared/constants.ts.html +436 -0
  25. package/coverage/src/breakpoint/shared/index.html +176 -0
  26. package/coverage/src/breakpoint/shared/index.ts.html +94 -0
  27. package/coverage/src/breakpoint/shared/operations.ts.html +160 -0
  28. package/coverage/src/breakpoint/shared/socket.ts.html +1297 -0
  29. package/coverage/src/breakpoint/shared/utils.ts.html +1087 -0
  30. package/coverage/src/breakpoint/store/core.ts.html +1600 -0
  31. package/coverage/src/breakpoint/store/dock.ts.html +733 -0
  32. package/coverage/src/breakpoint/store/index.html +146 -0
  33. package/coverage/src/breakpoint/store/index.ts.html +91 -0
  34. package/coverage/src/common/BaseNode.ts.html +4081 -0
  35. package/coverage/src/common/Command.ts.html +310 -0
  36. package/coverage/src/common/EventEmitter.ts.html +373 -0
  37. package/coverage/src/common/Messager.ts.html +820 -0
  38. package/coverage/src/common/asyncFuncMap.ts.html +127 -0
  39. package/coverage/src/common/index.html +191 -0
  40. package/coverage/src/common/index.ts.html +94 -0
  41. package/coverage/src/concepts/Abort__.ts.html +331 -0
  42. package/coverage/src/concepts/Anchor__.ts.html +667 -0
  43. package/coverage/src/concepts/AnonymousFunction__.ts.html +2092 -0
  44. package/coverage/src/concepts/App__.ts.html +13651 -0
  45. package/coverage/src/concepts/Argument__.ts.html +907 -0
  46. package/coverage/src/concepts/Assignee__.ts.html +2317 -0
  47. package/coverage/src/concepts/AssignmentLine__.ts.html +430 -0
  48. package/coverage/src/concepts/Assignment__.ts.html +1174 -0
  49. package/coverage/src/concepts/Attribute__.ts.html +919 -0
  50. package/coverage/src/concepts/AuthInterface__.ts.html +370 -0
  51. package/coverage/src/concepts/AuthLogicForCallInterface__.ts.html +2011 -0
  52. package/coverage/src/concepts/AuthLogic__.ts.html +793 -0
  53. package/coverage/src/concepts/BackendVariable__.ts.html +1690 -0
  54. package/coverage/src/concepts/Backend__.ts.html +1192 -0
  55. package/coverage/src/concepts/BatchAssignment__.ts.html +3376 -0
  56. package/coverage/src/concepts/BinaryExpression__.ts.html +1468 -0
  57. package/coverage/src/concepts/BindAttribute__.ts.html +3931 -0
  58. package/coverage/src/concepts/BindDirective__.ts.html +2002 -0
  59. package/coverage/src/concepts/BindEvent__.ts.html +3487 -0
  60. package/coverage/src/concepts/BindStyle__.ts.html +1645 -0
  61. package/coverage/src/concepts/BooleanLiteral__.ts.html +421 -0
  62. package/coverage/src/concepts/CallAuthInterface__.ts.html +1642 -0
  63. package/coverage/src/concepts/CallConnector__.ts.html +925 -0
  64. package/coverage/src/concepts/CallFunction__.ts.html +2164 -0
  65. package/coverage/src/concepts/CallInterface__.ts.html +2776 -0
  66. package/coverage/src/concepts/CallLogic__.ts.html +4693 -0
  67. package/coverage/src/concepts/CallQueryComponent__.ts.html +5419 -0
  68. package/coverage/src/concepts/Comment__.ts.html +397 -0
  69. package/coverage/src/concepts/CompletionProperty__.ts.html +946 -0
  70. package/coverage/src/concepts/ConfigGroup__.ts.html +1132 -0
  71. package/coverage/src/concepts/ConfigPropertyValue__.ts.html +427 -0
  72. package/coverage/src/concepts/ConfigProperty__.ts.html +1375 -0
  73. package/coverage/src/concepts/Configuration__.ts.html +1054 -0
  74. package/coverage/src/concepts/Connection__.ts.html +1387 -0
  75. package/coverage/src/concepts/ConnectorTrigger__.ts.html +598 -0
  76. package/coverage/src/concepts/Connector__.ts.html +4390 -0
  77. package/coverage/src/concepts/Constant__.ts.html +1123 -0
  78. package/coverage/src/concepts/DataSource__.ts.html +1798 -0
  79. package/coverage/src/concepts/DatabaseTypeAnnotation__.ts.html +334 -0
  80. package/coverage/src/concepts/DefaultValue__.ts.html +946 -0
  81. package/coverage/src/concepts/Destination__.ts.html +2761 -0
  82. package/coverage/src/concepts/End__.ts.html +436 -0
  83. package/coverage/src/concepts/EntityIndex__.ts.html +799 -0
  84. package/coverage/src/concepts/EntityProperty__.ts.html +2866 -0
  85. package/coverage/src/concepts/Entity__.ts.html +3070 -0
  86. package/coverage/src/concepts/EnumItem__.ts.html +553 -0
  87. package/coverage/src/concepts/Enum__.ts.html +1258 -0
  88. package/coverage/src/concepts/Event__.ts.html +1111 -0
  89. package/coverage/src/concepts/ExternalDestination__.ts.html +1060 -0
  90. package/coverage/src/concepts/ForEachStatement__.ts.html +2023 -0
  91. package/coverage/src/concepts/FrontendLibrary__.ts.html +1762 -0
  92. package/coverage/src/concepts/FrontendVariable__.ts.html +292 -0
  93. package/coverage/src/concepts/Frontend__.ts.html +4078 -0
  94. package/coverage/src/concepts/Function__.ts.html +3718 -0
  95. package/coverage/src/concepts/Identifier__.ts.html +1060 -0
  96. package/coverage/src/concepts/IfStatement__.ts.html +1636 -0
  97. package/coverage/src/concepts/Integration__.ts.html +1273 -0
  98. package/coverage/src/concepts/InterfaceParam__.ts.html +1258 -0
  99. package/coverage/src/concepts/Interface__.ts.html +3463 -0
  100. package/coverage/src/concepts/JSBlock__.ts.html +424 -0
  101. package/coverage/src/concepts/JavaLogic__.ts.html +463 -0
  102. package/coverage/src/concepts/LogicItem__.ts.html +1174 -0
  103. package/coverage/src/concepts/Logic__.ts.html +7732 -0
  104. package/coverage/src/concepts/MatchCase__.ts.html +2974 -0
  105. package/coverage/src/concepts/Match__.ts.html +2494 -0
  106. package/coverage/src/concepts/MemberExpression__.ts.html +1744 -0
  107. package/coverage/src/concepts/MicroApp__.ts.html +439 -0
  108. package/coverage/src/concepts/Module__.ts.html +9385 -0
  109. package/coverage/src/concepts/MsgTriggerEvent__.ts.html +1072 -0
  110. package/coverage/src/concepts/MsgTriggerLauncher__.ts.html +1045 -0
  111. package/coverage/src/concepts/Namespace__.ts.html +8221 -0
  112. package/coverage/src/concepts/NewComposite__.ts.html +4765 -0
  113. package/coverage/src/concepts/NewList__.ts.html +1702 -0
  114. package/coverage/src/concepts/NewMap__.ts.html +2470 -0
  115. package/coverage/src/concepts/New__.ts.html +289 -0
  116. package/coverage/src/concepts/NullLiteral__.ts.html +352 -0
  117. package/coverage/src/concepts/NumericLiteral__.ts.html +697 -0
  118. package/coverage/src/concepts/OqlQueryComponent__.ts.html +1237 -0
  119. package/coverage/src/concepts/OverriddenLogic__.ts.html +6970 -0
  120. package/coverage/src/concepts/Param__.ts.html +1798 -0
  121. package/coverage/src/concepts/Point__.ts.html +334 -0
  122. package/coverage/src/concepts/ProcessComponent__.ts.html +1717 -0
  123. package/coverage/src/concepts/ProcessElement__.ts.html +6187 -0
  124. package/coverage/src/concepts/ProcessOutcome__.ts.html +355 -0
  125. package/coverage/src/concepts/ProcessOutcomes__.ts.html +355 -0
  126. package/coverage/src/concepts/Process__.ts.html +5071 -0
  127. package/coverage/src/concepts/QueryAggregateExpression__.ts.html +589 -0
  128. package/coverage/src/concepts/QueryFieldExpression__.ts.html +586 -0
  129. package/coverage/src/concepts/QueryFromExpression__.ts.html +937 -0
  130. package/coverage/src/concepts/QueryGroupByExpression__.ts.html +580 -0
  131. package/coverage/src/concepts/QueryJoinExpression__.ts.html +1606 -0
  132. package/coverage/src/concepts/QueryLimitExpression__.ts.html +664 -0
  133. package/coverage/src/concepts/QueryOrderByExpression__.ts.html +706 -0
  134. package/coverage/src/concepts/QuerySelectExpression__.ts.html +1741 -0
  135. package/coverage/src/concepts/Rect__.ts.html +376 -0
  136. package/coverage/src/concepts/Return__.ts.html +1471 -0
  137. package/coverage/src/concepts/Role__.ts.html +604 -0
  138. package/coverage/src/concepts/SelectMembers__.ts.html +1279 -0
  139. package/coverage/src/concepts/Slot__.ts.html +649 -0
  140. package/coverage/src/concepts/SqlQueryComponent__.ts.html +1003 -0
  141. package/coverage/src/concepts/Start__.ts.html +307 -0
  142. package/coverage/src/concepts/StringInterpolation__.ts.html +1156 -0
  143. package/coverage/src/concepts/StringLiteral__.ts.html +508 -0
  144. package/coverage/src/concepts/StructureProperty__.ts.html +1300 -0
  145. package/coverage/src/concepts/Structure__.ts.html +2182 -0
  146. package/coverage/src/concepts/SwitchCase__.ts.html +1204 -0
  147. package/coverage/src/concepts/SwitchStatement__.ts.html +904 -0
  148. package/coverage/src/concepts/Theme__.ts.html +361 -0
  149. package/coverage/src/concepts/Transactional__.ts.html +631 -0
  150. package/coverage/src/concepts/TriggerEvent__.ts.html +1039 -0
  151. package/coverage/src/concepts/TriggerLauncher__.ts.html +778 -0
  152. package/coverage/src/concepts/TypeAnnotation__.ts.html +3832 -0
  153. package/coverage/src/concepts/TypeParam__.ts.html +322 -0
  154. package/coverage/src/concepts/UnaryExpression__.ts.html +730 -0
  155. package/coverage/src/concepts/Unparsed__.ts.html +397 -0
  156. package/coverage/src/concepts/UseComponent__.ts.html +334 -0
  157. package/coverage/src/concepts/ValidationRule__.ts.html +1876 -0
  158. package/coverage/src/concepts/Variable__.ts.html +1705 -0
  159. package/coverage/src/concepts/ViewBlock__.ts.html +355 -0
  160. package/coverage/src/concepts/ViewComponent__.ts.html +4327 -0
  161. package/coverage/src/concepts/ViewElement__.ts.html +8992 -0
  162. package/coverage/src/concepts/View__.ts.html +9019 -0
  163. package/coverage/src/concepts/WhileStatement__.ts.html +1105 -0
  164. package/coverage/src/concepts/basics/stdlib/index.html +356 -0
  165. package/coverage/src/concepts/basics/stdlib/index.ts.html +208 -0
  166. package/coverage/src/concepts/basics/stdlib/nasl.auth.ts.html +565 -0
  167. package/coverage/src/concepts/basics/stdlib/nasl.browser.ts.html +517 -0
  168. package/coverage/src/concepts/basics/stdlib/nasl.collection.ts.html +226 -0
  169. package/coverage/src/concepts/basics/stdlib/nasl.configuration.ts.html +172 -0
  170. package/coverage/src/concepts/basics/stdlib/nasl.core.ts.html +214 -0
  171. package/coverage/src/concepts/basics/stdlib/nasl.event.ts.html +145 -0
  172. package/coverage/src/concepts/basics/stdlib/nasl.http.ts.html +589 -0
  173. package/coverage/src/concepts/basics/stdlib/nasl.interface.ts.html +214 -0
  174. package/coverage/src/concepts/basics/stdlib/nasl.io.ts.html +229 -0
  175. package/coverage/src/concepts/basics/stdlib/nasl.logging.ts.html +268 -0
  176. package/coverage/src/concepts/basics/stdlib/nasl.process.ts.html +1999 -0
  177. package/coverage/src/concepts/basics/stdlib/nasl.ui.ts.html +3259 -0
  178. package/coverage/src/concepts/basics/stdlib/nasl.util.ts.html +6955 -0
  179. package/coverage/src/concepts/basics/stdlib/nasl.validation.ts.html +1768 -0
  180. package/coverage/src/concepts/basics/stdlib/reference2TypeAnnotationList.ts.html +163 -0
  181. package/coverage/src/concepts/basics/stdlib/timeZone.ts.html +664 -0
  182. package/coverage/src/concepts/basics/types/coreTypeList.ts.html +121 -0
  183. package/coverage/src/concepts/basics/types/index.html +131 -0
  184. package/coverage/src/concepts/basics/types/index.ts.html +160 -0
  185. package/coverage/src/concepts/index.html +1976 -0
  186. package/coverage/src/concepts/index.ts.html +103 -0
  187. package/coverage/src/concepts/index__.ts.html +454 -0
  188. package/coverage/src/config.ts.html +325 -0
  189. package/coverage/src/decorators/index.html +131 -0
  190. package/coverage/src/decorators/index.ts.html +583 -0
  191. package/coverage/src/decorators/promise.ts.html +169 -0
  192. package/coverage/src/eventBus.ts.html +100 -0
  193. package/coverage/src/generator/compileComponent.ts.html +142 -0
  194. package/coverage/src/generator/genBundleFiles.ts.html +1828 -0
  195. package/coverage/src/generator/genHash.ts.html +124 -0
  196. package/coverage/src/generator/genMetaData.ts.html +1084 -0
  197. package/coverage/src/generator/genReleaseBody.ts.html +1282 -0
  198. package/coverage/src/generator/icestark.ts.html +220 -0
  199. package/coverage/src/generator/index.html +266 -0
  200. package/coverage/src/generator/index.ts.html +106 -0
  201. package/coverage/src/generator/microApp.ts.html +172 -0
  202. package/coverage/src/generator/permission.ts.html +1036 -0
  203. package/coverage/src/generator/qiankun.ts.html +232 -0
  204. package/coverage/src/generator/styleReplacer.ts.html +199 -0
  205. package/coverage/src/index.html +146 -0
  206. package/coverage/src/index.ts.html +124 -0
  207. package/coverage/src/manager/diagnostic.ts.html +442 -0
  208. package/coverage/src/manager/index.html +131 -0
  209. package/coverage/src/manager/stepRecorder.ts.html +457 -0
  210. package/coverage/src/natural/genNaturalTS.ts.html +355 -0
  211. package/coverage/src/natural/index.html +161 -0
  212. package/coverage/src/natural/index.ts.html +91 -0
  213. package/coverage/src/natural/naslStdlibMap.ts.html +157 -0
  214. package/coverage/src/natural/transformTSCode.ts.html +2707 -0
  215. package/coverage/src/sentry/index.html +116 -0
  216. package/coverage/src/sentry/index.ts.html +676 -0
  217. package/coverage/src/server/createUiTs.ts.html +919 -0
  218. package/coverage/src/server/entity2LogicNamespace.ts.html +1294 -0
  219. package/coverage/src/server/event.js.html +526 -0
  220. package/coverage/src/server/extendBaseNode.ts.html +1762 -0
  221. package/coverage/src/server/formatTsUtils.ts.html +2689 -0
  222. package/coverage/src/server/getConnector.ts.html +316 -0
  223. package/coverage/src/server/getExtensionModules.ts.html +178 -0
  224. package/coverage/src/server/getFunctions.ts.html +133 -0
  225. package/coverage/src/server/getInterfaces.ts.html +229 -0
  226. package/coverage/src/server/getLogging.ts.html +100 -0
  227. package/coverage/src/server/getLogics.ts.html +1363 -0
  228. package/coverage/src/server/getMemberIdentifier.ts.html +1606 -0
  229. package/coverage/src/server/getProcessComponents.ts.html +112 -0
  230. package/coverage/src/server/getProcesses.ts.html +2023 -0
  231. package/coverage/src/server/getValidates.ts.html +115 -0
  232. package/coverage/src/server/index.html +401 -0
  233. package/coverage/src/server/index.ts.html +229 -0
  234. package/coverage/src/server/naslServer.ts.html +14356 -0
  235. package/coverage/src/server/naslStdlibMap.ts.html +241 -0
  236. package/coverage/src/server/process2LogicNamespace.ts.html +454 -0
  237. package/coverage/src/server/translator.ts.html +2566 -0
  238. package/coverage/src/service/creator/add.configs.js.html +397 -0
  239. package/coverage/src/service/creator/errHandles.js.html +304 -0
  240. package/coverage/src/service/creator/index.html +146 -0
  241. package/coverage/src/service/creator/index.js.html +352 -0
  242. package/coverage/src/service/datasource/api.js.html +118 -0
  243. package/coverage/src/service/datasource/index.html +131 -0
  244. package/coverage/src/service/datasource/index.js.html +103 -0
  245. package/coverage/src/service/logic/api.js.html +109 -0
  246. package/coverage/src/service/logic/index.html +131 -0
  247. package/coverage/src/service/logic/index.js.html +103 -0
  248. package/coverage/src/service/storage/api.js.html +202 -0
  249. package/coverage/src/service/storage/index.html +206 -0
  250. package/coverage/src/service/storage/index.ts.html +103 -0
  251. package/coverage/src/service/storage/init.ts.html +3721 -0
  252. package/coverage/src/service/storage/jsoner.ts.html +502 -0
  253. package/coverage/src/service/storage/map.ts.html +256 -0
  254. package/coverage/src/service/storage/service.ts.html +331 -0
  255. package/coverage/src/service/storage/storagePoint.ts.html +304 -0
  256. package/coverage/src/templator/genCallComponentLogic.ts.html +163 -0
  257. package/coverage/src/templator/genCreateBlock.ts.html +1093 -0
  258. package/coverage/src/templator/genCurdEditMultipleKeyBlock.ts.html +1609 -0
  259. package/coverage/src/templator/genCurdMultipleKeyBlock.ts.html +2254 -0
  260. package/coverage/src/templator/genEditTableBlock.ts.html +1021 -0
  261. package/coverage/src/templator/genEnumSelectBlock.ts.html +178 -0
  262. package/coverage/src/templator/genGetBlock.ts.html +451 -0
  263. package/coverage/src/templator/genGridViewBlock.ts.html +1114 -0
  264. package/coverage/src/templator/genListViewBlock.ts.html +475 -0
  265. package/coverage/src/templator/genQueryComponent.ts.html +1207 -0
  266. package/coverage/src/templator/genSelectBlock.ts.html +1243 -0
  267. package/coverage/src/templator/genTableBlock.ts.html +973 -0
  268. package/coverage/src/templator/genUpdateBlock.ts.html +1192 -0
  269. package/coverage/src/templator/index.html +326 -0
  270. package/coverage/src/templator/index.ts.html +154 -0
  271. package/coverage/src/templator/utils.ts.html +1861 -0
  272. package/coverage/src/translator/constant.ts.html +106 -0
  273. package/coverage/src/translator/index.html +146 -0
  274. package/coverage/src/translator/index.ts.html +94 -0
  275. package/coverage/src/translator/utils.ts.html +436 -0
  276. package/coverage/src/utils/cookie.ts.html +265 -0
  277. package/coverage/src/utils/env.ts.html +91 -0
  278. package/coverage/src/utils/index.html +236 -0
  279. package/coverage/src/utils/index.ts.html +694 -0
  280. package/coverage/src/utils/logger.ts.html +145 -0
  281. package/coverage/src/utils/sortTsString.ts.html +187 -0
  282. package/coverage/src/utils/string.ts.html +400 -0
  283. package/coverage/src/utils/time-slicing.ts.html +418 -0
  284. package/coverage/src/utils/traverse.ts.html +568 -0
  285. package/coverage/src/utils/window.ts.html +112 -0
  286. package/out/bak/translator.js +2 -19
  287. package/out/bak/translator.js.map +1 -1
  288. package/out/common/BaseNode.d.ts +11 -0
  289. package/out/common/BaseNode.js +57 -1
  290. package/out/common/BaseNode.js.map +1 -1
  291. package/out/common/index.d.ts +1 -0
  292. package/out/common/index.js +1 -0
  293. package/out/common/index.js.map +1 -1
  294. package/out/common/utils.d.ts +2 -0
  295. package/out/common/utils.js +18 -0
  296. package/out/common/utils.js.map +1 -0
  297. package/out/concepts/Abort__.d.ts +2 -2
  298. package/out/concepts/Abort__.js +6 -2
  299. package/out/concepts/Abort__.js.map +1 -1
  300. package/out/concepts/Anchor__.d.ts +2 -2
  301. package/out/concepts/Anchor__.js +5 -4
  302. package/out/concepts/Anchor__.js.map +1 -1
  303. package/out/concepts/AnonymousFunction__.d.ts +3 -3
  304. package/out/concepts/AnonymousFunction__.js +19 -15
  305. package/out/concepts/AnonymousFunction__.js.map +1 -1
  306. package/out/concepts/Argument__.d.ts +2 -2
  307. package/out/concepts/Argument__.js +12 -13
  308. package/out/concepts/Argument__.js.map +1 -1
  309. package/out/concepts/Assignee__.d.ts +2 -2
  310. package/out/concepts/Assignee__.js +11 -9
  311. package/out/concepts/Assignee__.js.map +1 -1
  312. package/out/concepts/AssignmentLine__.d.ts +2 -2
  313. package/out/concepts/AssignmentLine__.js +3 -2
  314. package/out/concepts/AssignmentLine__.js.map +1 -1
  315. package/out/concepts/Assignment__.d.ts +2 -2
  316. package/out/concepts/Assignment__.js +13 -29
  317. package/out/concepts/Assignment__.js.map +1 -1
  318. package/out/concepts/AuthInterface__.js +1 -1
  319. package/out/concepts/AuthInterface__.js.map +1 -1
  320. package/out/concepts/AuthLogicForCallInterface__.d.ts +2 -2
  321. package/out/concepts/AuthLogicForCallInterface__.js +56 -75
  322. package/out/concepts/AuthLogicForCallInterface__.js.map +1 -1
  323. package/out/concepts/BackendVariable__.d.ts +5 -8
  324. package/out/concepts/BackendVariable__.js +47 -29
  325. package/out/concepts/BackendVariable__.js.map +1 -1
  326. package/out/concepts/Backend__.d.ts +4 -7
  327. package/out/concepts/Backend__.js +7 -6
  328. package/out/concepts/Backend__.js.map +1 -1
  329. package/out/concepts/BatchAssignment__.d.ts +2 -2
  330. package/out/concepts/BatchAssignment__.js +19 -20
  331. package/out/concepts/BatchAssignment__.js.map +1 -1
  332. package/out/concepts/BinaryExpression__.d.ts +2 -2
  333. package/out/concepts/BinaryExpression__.js +37 -38
  334. package/out/concepts/BinaryExpression__.js.map +1 -1
  335. package/out/concepts/BindAttribute__.d.ts +4 -4
  336. package/out/concepts/BindAttribute__.js +39 -32
  337. package/out/concepts/BindAttribute__.js.map +1 -1
  338. package/out/concepts/BindDirective__.d.ts +2 -2
  339. package/out/concepts/BindDirective__.js +10 -8
  340. package/out/concepts/BindDirective__.js.map +1 -1
  341. package/out/concepts/BindEvent__.d.ts +4 -7
  342. package/out/concepts/BindEvent__.js +20 -18
  343. package/out/concepts/BindEvent__.js.map +1 -1
  344. package/out/concepts/BindStyle__.d.ts +2 -2
  345. package/out/concepts/BindStyle__.js +9 -7
  346. package/out/concepts/BindStyle__.js.map +1 -1
  347. package/out/concepts/Block__.d.ts +6 -2
  348. package/out/concepts/Block__.js +36 -5
  349. package/out/concepts/Block__.js.map +1 -1
  350. package/out/concepts/BooleanLiteral__.d.ts +2 -2
  351. package/out/concepts/BooleanLiteral__.js +2 -2
  352. package/out/concepts/BooleanLiteral__.js.map +1 -1
  353. package/out/concepts/CallAuthInterface__.d.ts +3 -2
  354. package/out/concepts/CallAuthInterface__.js +46 -30
  355. package/out/concepts/CallAuthInterface__.js.map +1 -1
  356. package/out/concepts/CallConnector__.d.ts +2 -2
  357. package/out/concepts/CallConnector__.js +25 -23
  358. package/out/concepts/CallConnector__.js.map +1 -1
  359. package/out/concepts/CallFunction__.d.ts +2 -2
  360. package/out/concepts/CallFunction__.js +19 -16
  361. package/out/concepts/CallFunction__.js.map +1 -1
  362. package/out/concepts/CallInterface__.d.ts +3 -2
  363. package/out/concepts/CallInterface__.js +16 -6
  364. package/out/concepts/CallInterface__.js.map +1 -1
  365. package/out/concepts/CallLogic__.d.ts +2 -3
  366. package/out/concepts/CallLogic__.js +26 -20
  367. package/out/concepts/CallLogic__.js.map +1 -1
  368. package/out/concepts/CallQueryComponent__.d.ts +4 -4
  369. package/out/concepts/CallQueryComponent__.js +38 -36
  370. package/out/concepts/CallQueryComponent__.js.map +1 -1
  371. package/out/concepts/Comment__.d.ts +2 -2
  372. package/out/concepts/Comment__.js +3 -2
  373. package/out/concepts/Comment__.js.map +1 -1
  374. package/out/concepts/ConfigProperty__.d.ts +4 -7
  375. package/out/concepts/ConfigProperty__.js +12 -10
  376. package/out/concepts/ConfigProperty__.js.map +1 -1
  377. package/out/concepts/Connection__.d.ts +4 -7
  378. package/out/concepts/Connection__.js +6 -5
  379. package/out/concepts/Connection__.js.map +1 -1
  380. package/out/concepts/Connector__.js.map +1 -1
  381. package/out/concepts/Constant__.d.ts +3 -3
  382. package/out/concepts/Constant__.js +38 -13
  383. package/out/concepts/Constant__.js.map +1 -1
  384. package/out/concepts/DataSource__.d.ts +4 -7
  385. package/out/concepts/DataSource__.js +7 -6
  386. package/out/concepts/DataSource__.js.map +1 -1
  387. package/out/concepts/DefaultValue__.d.ts +6 -2
  388. package/out/concepts/DefaultValue__.js +11 -3
  389. package/out/concepts/DefaultValue__.js.map +1 -1
  390. package/out/concepts/Destination__.d.ts +3 -3
  391. package/out/concepts/Destination__.js +29 -26
  392. package/out/concepts/Destination__.js.map +1 -1
  393. package/out/concepts/End__.d.ts +2 -2
  394. package/out/concepts/End__.js +17 -13
  395. package/out/concepts/End__.js.map +1 -1
  396. package/out/concepts/EntityIndex__.d.ts +2 -2
  397. package/out/concepts/EntityIndex__.js +4 -3
  398. package/out/concepts/EntityIndex__.js.map +1 -1
  399. package/out/concepts/EntityProperty__.d.ts +2 -2
  400. package/out/concepts/EntityProperty__.js +9 -8
  401. package/out/concepts/EntityProperty__.js.map +1 -1
  402. package/out/concepts/Entity__.d.ts +4 -7
  403. package/out/concepts/Entity__.js +22 -22
  404. package/out/concepts/Entity__.js.map +1 -1
  405. package/out/concepts/EnumItem__.d.ts +2 -2
  406. package/out/concepts/EnumItem__.js +4 -3
  407. package/out/concepts/EnumItem__.js.map +1 -1
  408. package/out/concepts/Enum__.d.ts +4 -7
  409. package/out/concepts/Enum__.js +10 -8
  410. package/out/concepts/Enum__.js.map +1 -1
  411. package/out/concepts/ExternalDestination__.d.ts +2 -2
  412. package/out/concepts/ExternalDestination__.js +7 -5
  413. package/out/concepts/ExternalDestination__.js.map +1 -1
  414. package/out/concepts/ForEachStatement__.d.ts +2 -2
  415. package/out/concepts/ForEachStatement__.js +14 -12
  416. package/out/concepts/ForEachStatement__.js.map +1 -1
  417. package/out/concepts/Frontend__.d.ts +4 -7
  418. package/out/concepts/Frontend__.js +7 -6
  419. package/out/concepts/Frontend__.js.map +1 -1
  420. package/out/concepts/Function__.d.ts +3 -3
  421. package/out/concepts/Function__.js +22 -18
  422. package/out/concepts/Function__.js.map +1 -1
  423. package/out/concepts/Identifier__.d.ts +2 -2
  424. package/out/concepts/Identifier__.js +19 -23
  425. package/out/concepts/Identifier__.js.map +1 -1
  426. package/out/concepts/IfStatement__.d.ts +2 -2
  427. package/out/concepts/IfStatement__.js +12 -10
  428. package/out/concepts/IfStatement__.js.map +1 -1
  429. package/out/concepts/ImportedInterface__.d.ts +20 -0
  430. package/out/concepts/ImportedInterface__.js +57 -0
  431. package/out/concepts/ImportedInterface__.js.map +1 -0
  432. package/out/concepts/InterfaceParam__.d.ts +2 -7
  433. package/out/concepts/InterfaceParam__.js +33 -14
  434. package/out/concepts/InterfaceParam__.js.map +1 -1
  435. package/out/concepts/Interface__.d.ts +7 -15
  436. package/out/concepts/Interface__.js +33 -43
  437. package/out/concepts/Interface__.js.map +1 -1
  438. package/out/concepts/JSBlock__.d.ts +2 -2
  439. package/out/concepts/JSBlock__.js +3 -58
  440. package/out/concepts/JSBlock__.js.map +1 -1
  441. package/out/concepts/JavaLogic__.d.ts +2 -2
  442. package/out/concepts/JavaLogic__.js +6 -2
  443. package/out/concepts/JavaLogic__.js.map +1 -1
  444. package/out/concepts/LogicItem__.d.ts +2 -2
  445. package/out/concepts/LogicItem__.js +7 -13
  446. package/out/concepts/LogicItem__.js.map +1 -1
  447. package/out/concepts/Logic__.d.ts +8 -11
  448. package/out/concepts/Logic__.js +124 -157
  449. package/out/concepts/Logic__.js.map +1 -1
  450. package/out/concepts/MatchCase__.d.ts +2 -2
  451. package/out/concepts/MatchCase__.js +23 -22
  452. package/out/concepts/MatchCase__.js.map +1 -1
  453. package/out/concepts/Match__.d.ts +2 -2
  454. package/out/concepts/Match__.js +24 -22
  455. package/out/concepts/Match__.js.map +1 -1
  456. package/out/concepts/MemberExpression__.d.ts +2 -2
  457. package/out/concepts/MemberExpression__.js +28 -24
  458. package/out/concepts/MemberExpression__.js.map +1 -1
  459. package/out/concepts/MetadataType__.d.ts +4 -7
  460. package/out/concepts/MetadataType__.js +11 -9
  461. package/out/concepts/MetadataType__.js.map +1 -1
  462. package/out/concepts/Module__.d.ts +8 -179
  463. package/out/concepts/Module__.js +124 -265
  464. package/out/concepts/Module__.js.map +1 -1
  465. package/out/concepts/NewComposite__.d.ts +5 -5
  466. package/out/concepts/NewComposite__.js +75 -76
  467. package/out/concepts/NewComposite__.js.map +1 -1
  468. package/out/concepts/NewList__.d.ts +5 -5
  469. package/out/concepts/NewList__.js +30 -26
  470. package/out/concepts/NewList__.js.map +1 -1
  471. package/out/concepts/NewMap__.d.ts +4 -4
  472. package/out/concepts/NewMap__.js +39 -35
  473. package/out/concepts/NewMap__.js.map +1 -1
  474. package/out/concepts/New__.d.ts +2 -2
  475. package/out/concepts/New__.js +3 -2
  476. package/out/concepts/New__.js.map +1 -1
  477. package/out/concepts/NullLiteral__.d.ts +2 -2
  478. package/out/concepts/NullLiteral__.js +2 -2
  479. package/out/concepts/NullLiteral__.js.map +1 -1
  480. package/out/concepts/NumericLiteral__.d.ts +2 -2
  481. package/out/concepts/NumericLiteral__.js +6 -5
  482. package/out/concepts/NumericLiteral__.js.map +1 -1
  483. package/out/concepts/OqlQueryComponent__.d.ts +2 -2
  484. package/out/concepts/OqlQueryComponent__.js +16 -14
  485. package/out/concepts/OqlQueryComponent__.js.map +1 -1
  486. package/out/concepts/OverriddenLogic__.d.ts +8 -11
  487. package/out/concepts/OverriddenLogic__.js +99 -112
  488. package/out/concepts/OverriddenLogic__.js.map +1 -1
  489. package/out/concepts/Param__.d.ts +3 -3
  490. package/out/concepts/Param__.js +24 -30
  491. package/out/concepts/Param__.js.map +1 -1
  492. package/out/concepts/ProcessElement__.d.ts +2 -2
  493. package/out/concepts/ProcessElement__.js +54 -68
  494. package/out/concepts/ProcessElement__.js.map +1 -1
  495. package/out/concepts/ProcessOutcome__.d.ts +2 -1
  496. package/out/concepts/ProcessOutcome__.js +5 -4
  497. package/out/concepts/ProcessOutcome__.js.map +1 -1
  498. package/out/concepts/ProcessOutcomes__.d.ts +2 -1
  499. package/out/concepts/ProcessOutcomes__.js +6 -5
  500. package/out/concepts/ProcessOutcomes__.js.map +1 -1
  501. package/out/concepts/Process__.d.ts +4 -7
  502. package/out/concepts/Process__.js +35 -52
  503. package/out/concepts/Process__.js.map +1 -1
  504. package/out/concepts/QueryAggregateExpression__.d.ts +2 -2
  505. package/out/concepts/QueryAggregateExpression__.js +2 -2
  506. package/out/concepts/QueryAggregateExpression__.js.map +1 -1
  507. package/out/concepts/QueryFieldExpression__.d.ts +2 -2
  508. package/out/concepts/QueryFieldExpression__.js +5 -4
  509. package/out/concepts/QueryFieldExpression__.js.map +1 -1
  510. package/out/concepts/QueryFromExpression__.d.ts +2 -2
  511. package/out/concepts/QueryFromExpression__.js +8 -6
  512. package/out/concepts/QueryFromExpression__.js.map +1 -1
  513. package/out/concepts/QueryGroupByExpression__.d.ts +2 -1
  514. package/out/concepts/QueryGroupByExpression__.js +6 -5
  515. package/out/concepts/QueryGroupByExpression__.js.map +1 -1
  516. package/out/concepts/QueryJoinExpression__.d.ts +2 -2
  517. package/out/concepts/QueryJoinExpression__.js +12 -10
  518. package/out/concepts/QueryJoinExpression__.js.map +1 -1
  519. package/out/concepts/QueryLimitExpression__.d.ts +2 -2
  520. package/out/concepts/QueryLimitExpression__.js +6 -5
  521. package/out/concepts/QueryLimitExpression__.js.map +1 -1
  522. package/out/concepts/QueryOrderByExpression__.d.ts +2 -2
  523. package/out/concepts/QueryOrderByExpression__.js +6 -5
  524. package/out/concepts/QueryOrderByExpression__.js.map +1 -1
  525. package/out/concepts/Return__.d.ts +3 -3
  526. package/out/concepts/Return__.js +41 -24
  527. package/out/concepts/Return__.js.map +1 -1
  528. package/out/concepts/Role__.d.ts +4 -7
  529. package/out/concepts/Role__.js +7 -6
  530. package/out/concepts/Role__.js.map +1 -1
  531. package/out/concepts/SelectMembers__.d.ts +2 -2
  532. package/out/concepts/SelectMembers__.js +3 -2
  533. package/out/concepts/SelectMembers__.js.map +1 -1
  534. package/out/concepts/SqlQueryComponent__.d.ts +2 -2
  535. package/out/concepts/SqlQueryComponent__.js +12 -10
  536. package/out/concepts/SqlQueryComponent__.js.map +1 -1
  537. package/out/concepts/Start__.d.ts +2 -2
  538. package/out/concepts/Start__.js +2 -2
  539. package/out/concepts/Start__.js.map +1 -1
  540. package/out/concepts/StringInterpolation__.d.ts +2 -2
  541. package/out/concepts/StringInterpolation__.js +7 -5
  542. package/out/concepts/StringInterpolation__.js.map +1 -1
  543. package/out/concepts/StringLiteral__.d.ts +2 -2
  544. package/out/concepts/StringLiteral__.js +12 -6
  545. package/out/concepts/StringLiteral__.js.map +1 -1
  546. package/out/concepts/StructureProperty__.d.ts +2 -2
  547. package/out/concepts/StructureProperty__.js +6 -5
  548. package/out/concepts/StructureProperty__.js.map +1 -1
  549. package/out/concepts/Structure__.d.ts +4 -7
  550. package/out/concepts/Structure__.js +15 -15
  551. package/out/concepts/Structure__.js.map +1 -1
  552. package/out/concepts/SwitchCase__.d.ts +2 -2
  553. package/out/concepts/SwitchCase__.js +12 -10
  554. package/out/concepts/SwitchCase__.js.map +1 -1
  555. package/out/concepts/SwitchStatement__.d.ts +2 -2
  556. package/out/concepts/SwitchStatement__.js +8 -6
  557. package/out/concepts/SwitchStatement__.js.map +1 -1
  558. package/out/concepts/TriggerLauncher__.d.ts +4 -7
  559. package/out/concepts/TriggerLauncher__.js +7 -6
  560. package/out/concepts/TriggerLauncher__.js.map +1 -1
  561. package/out/concepts/TypeAnnotation__.d.ts +2 -2
  562. package/out/concepts/TypeAnnotation__.js +51 -25
  563. package/out/concepts/TypeAnnotation__.js.map +1 -1
  564. package/out/concepts/TypeParam__.d.ts +2 -2
  565. package/out/concepts/TypeParam__.js +4 -3
  566. package/out/concepts/TypeParam__.js.map +1 -1
  567. package/out/concepts/UnaryExpression__.d.ts +2 -2
  568. package/out/concepts/UnaryExpression__.js +12 -7
  569. package/out/concepts/UnaryExpression__.js.map +1 -1
  570. package/out/concepts/Unparsed__.d.ts +2 -2
  571. package/out/concepts/Unparsed__.js +2 -2
  572. package/out/concepts/Unparsed__.js.map +1 -1
  573. package/out/concepts/ValidationRule__.d.ts +2 -2
  574. package/out/concepts/ValidationRule__.js +11 -9
  575. package/out/concepts/ValidationRule__.js.map +1 -1
  576. package/out/concepts/Variable__.d.ts +5 -8
  577. package/out/concepts/Variable__.js +49 -32
  578. package/out/concepts/Variable__.js.map +1 -1
  579. package/out/concepts/ViewElement__.d.ts +6 -6
  580. package/out/concepts/ViewElement__.js +110 -137
  581. package/out/concepts/ViewElement__.js.map +1 -1
  582. package/out/concepts/View__.d.ts +6 -9
  583. package/out/concepts/View__.js +76 -84
  584. package/out/concepts/View__.js.map +1 -1
  585. package/out/concepts/WhileStatement__.d.ts +2 -2
  586. package/out/concepts/WhileStatement__.js +9 -7
  587. package/out/concepts/WhileStatement__.js.map +1 -1
  588. package/out/concepts/index__.d.ts +1 -1
  589. package/out/concepts/index__.js +1 -1
  590. package/out/concepts/index__.js.map +1 -1
  591. package/out/concepts/types__.d.ts +1 -3
  592. package/out/decorators/index.js +10 -9
  593. package/out/decorators/index.js.map +1 -1
  594. package/out/generator/genMetaData.js +0 -7
  595. package/out/generator/genMetaData.js.map +1 -1
  596. package/out/manager/diagnostic.d.ts +1 -1
  597. package/out/manager/diagnostic.js +2 -3
  598. package/out/manager/diagnostic.js.map +1 -1
  599. package/out/server/extendBaseNode.js +7 -24
  600. package/out/server/extendBaseNode.js.map +1 -1
  601. package/out/server/getConnector.js +8 -3
  602. package/out/server/getConnector.js.map +1 -1
  603. package/out/server/getLogics.js +13 -3
  604. package/out/server/getLogics.js.map +1 -1
  605. package/out/server/naslServer.d.ts +44 -46
  606. package/out/server/naslServer.js +333 -461
  607. package/out/server/naslServer.js.map +1 -1
  608. package/out/server/translator.js +1 -1
  609. package/out/server/translator.js.map +1 -1
  610. package/out/templator/genCreateBlock.js +5 -9
  611. package/out/templator/genCreateBlock.js.map +1 -1
  612. package/out/templator/genCurdEditMultipleKeyBlock.js +12 -18
  613. package/out/templator/genCurdEditMultipleKeyBlock.js.map +1 -1
  614. package/out/templator/genCurdMultipleKeyBlock.js +8 -10
  615. package/out/templator/genCurdMultipleKeyBlock.js.map +1 -1
  616. package/out/templator/genEditTableBlock.js +2 -3
  617. package/out/templator/genEditTableBlock.js.map +1 -1
  618. package/out/templator/genUpdateBlock.js +9 -12
  619. package/out/templator/genUpdateBlock.js.map +1 -1
  620. package/out/templator/utils.js.map +1 -1
  621. package/out/translator/types.d.ts +16 -3
  622. package/out/translator/utils.d.ts +19 -1
  623. package/out/translator/utils.js +90 -2
  624. package/out/translator/utils.js.map +1 -1
  625. package/out/utils/time-slicing/constant.d.ts +35 -0
  626. package/out/utils/time-slicing/constant.js +40 -0
  627. package/out/utils/time-slicing/constant.js.map +1 -0
  628. package/out/utils/time-slicing/controller.d.ts +53 -0
  629. package/out/utils/time-slicing/controller.js +280 -0
  630. package/out/utils/time-slicing/controller.js.map +1 -0
  631. package/out/utils/time-slicing/index.d.ts +5 -0
  632. package/out/utils/time-slicing/index.js +26 -0
  633. package/out/utils/time-slicing/index.js.map +1 -0
  634. package/out/utils/time-slicing/page-state.d.ts +2 -0
  635. package/out/utils/time-slicing/page-state.js +14 -0
  636. package/out/utils/time-slicing/page-state.js.map +1 -0
  637. package/out/utils/time-slicing/performance.d.ts +11 -0
  638. package/out/utils/time-slicing/performance.js +51 -0
  639. package/out/utils/time-slicing/performance.js.map +1 -0
  640. package/out/utils/time-slicing/runner.d.ts +12 -0
  641. package/out/utils/time-slicing/runner.js +53 -0
  642. package/out/utils/time-slicing/runner.js.map +1 -0
  643. package/out/utils/time-slicing/tool.d.ts +24 -0
  644. package/out/utils/time-slicing/tool.js +47 -0
  645. package/out/utils/time-slicing/tool.js.map +1 -0
  646. package/out/utils/time-slicing/utils.d.ts +62 -0
  647. package/out/utils/time-slicing/utils.js +47 -0
  648. package/out/utils/time-slicing/utils.js.map +1 -0
  649. package/out/utils/time-slicing/wrapper.d.ts +18 -0
  650. package/out/utils/time-slicing/wrapper.js +55 -0
  651. package/out/utils/time-slicing/wrapper.js.map +1 -0
  652. package/out/utils/types.d.ts +7 -0
  653. package/package.json +1 -1
  654. package/sandbox/stdlib/nasl.core.ts +0 -2
  655. package/sandbox/stdlib/nasl.util.ts +1 -1
  656. package/src/bak/translator.js +2 -17
  657. package/src/common/BaseNode.ts +73 -7
  658. package/src/common/index.ts +1 -0
  659. package/src/common/utils.ts +17 -0
  660. package/src/concepts/Abort__.ts +12 -3
  661. package/src/concepts/Anchor__.ts +15 -5
  662. package/src/concepts/AnonymousFunction__.ts +29 -23
  663. package/src/concepts/Argument__.ts +25 -14
  664. package/src/concepts/Assignee__.ts +21 -10
  665. package/src/concepts/AssignmentLine__.ts +13 -3
  666. package/src/concepts/Assignment__.ts +33 -42
  667. package/src/concepts/AuthInterface__.ts +3 -3
  668. package/src/concepts/AuthLogicForCallInterface__.ts +63 -84
  669. package/src/concepts/BackendVariable__.ts +35 -30
  670. package/src/concepts/Backend__.ts +24 -7
  671. package/src/concepts/BatchAssignment__.ts +30 -21
  672. package/src/concepts/BinaryExpression__.ts +47 -38
  673. package/src/concepts/BindAttribute__.ts +43 -39
  674. package/src/concepts/BindDirective__.ts +19 -9
  675. package/src/concepts/BindEvent__.ts +31 -26
  676. package/src/concepts/BindStyle__.ts +18 -8
  677. package/src/concepts/Block__.ts +22 -6
  678. package/src/concepts/BooleanLiteral__.ts +11 -3
  679. package/src/concepts/CallAuthInterface__.ts +58 -33
  680. package/src/concepts/CallConnector__.ts +34 -26
  681. package/src/concepts/CallFunction__.ts +22 -17
  682. package/src/concepts/CallInterface__.ts +30 -12
  683. package/src/concepts/CallLogic__.ts +46 -47
  684. package/src/concepts/CallQueryComponent__.ts +48 -46
  685. package/src/concepts/Comment__.ts +13 -3
  686. package/src/concepts/ConfigProperty__.ts +22 -12
  687. package/src/concepts/Connection__.ts +22 -6
  688. package/src/concepts/Connector__.ts +1 -1
  689. package/src/concepts/Constant__.ts +24 -14
  690. package/src/concepts/DataSource__.ts +16 -7
  691. package/src/concepts/DefaultValue__.ts +13 -4
  692. package/src/concepts/Destination__.ts +39 -33
  693. package/src/concepts/End__.ts +24 -15
  694. package/src/concepts/EntityIndex__.ts +13 -4
  695. package/src/concepts/EntityProperty__.ts +20 -10
  696. package/src/concepts/Entity__.ts +34 -27
  697. package/src/concepts/EnumItem__.ts +13 -4
  698. package/src/concepts/Enum__.ts +21 -10
  699. package/src/concepts/ExternalDestination__.ts +16 -7
  700. package/src/concepts/ForEachStatement__.ts +24 -14
  701. package/src/concepts/Frontend__.ts +18 -7
  702. package/src/concepts/Function__.ts +30 -21
  703. package/src/concepts/Identifier__.ts +32 -34
  704. package/src/concepts/IfStatement__.ts +22 -14
  705. package/src/concepts/ImportedInterface__.ts +61 -0
  706. package/src/concepts/InterfaceParam__.ts +19 -16
  707. package/src/concepts/Interface__.ts +45 -51
  708. package/src/concepts/JSBlock__.ts +12 -61
  709. package/src/concepts/JavaLogic__.ts +13 -3
  710. package/src/concepts/LogicItem__.ts +13 -14
  711. package/src/concepts/Logic__.ts +147 -172
  712. package/src/concepts/MatchCase__.ts +33 -27
  713. package/src/concepts/Match__.ts +34 -26
  714. package/src/concepts/MemberExpression__.ts +37 -25
  715. package/src/concepts/MetadataType__.ts +22 -10
  716. package/src/concepts/Module__.ts +177 -540
  717. package/src/concepts/NewComposite__.ts +86 -80
  718. package/src/concepts/NewList__.ts +40 -32
  719. package/src/concepts/NewMap__.ts +49 -42
  720. package/src/concepts/New__.ts +13 -3
  721. package/src/concepts/NullLiteral__.ts +11 -3
  722. package/src/concepts/NumericLiteral__.ts +15 -6
  723. package/src/concepts/OqlQueryComponent__.ts +26 -18
  724. package/src/concepts/OverriddenLogic__.ts +117 -125
  725. package/src/concepts/Param__.ts +42 -38
  726. package/src/concepts/ProcessElement__.ts +67 -79
  727. package/src/concepts/ProcessOutcome__.ts +14 -6
  728. package/src/concepts/ProcessOutcomes__.ts +15 -7
  729. package/src/concepts/Process__.ts +50 -61
  730. package/src/concepts/QueryAggregateExpression__.ts +11 -3
  731. package/src/concepts/QueryFieldExpression__.ts +14 -5
  732. package/src/concepts/QueryFromExpression__.ts +18 -7
  733. package/src/concepts/QueryGroupByExpression__.ts +14 -6
  734. package/src/concepts/QueryJoinExpression__.ts +22 -11
  735. package/src/concepts/QueryLimitExpression__.ts +16 -6
  736. package/src/concepts/QueryOrderByExpression__.ts +17 -6
  737. package/src/concepts/Return__.ts +27 -25
  738. package/src/concepts/Role__.ts +17 -8
  739. package/src/concepts/SelectMembers__.ts +13 -3
  740. package/src/concepts/SqlQueryComponent__.ts +22 -11
  741. package/src/concepts/Start__.ts +11 -3
  742. package/src/concepts/StringInterpolation__.ts +10 -5
  743. package/src/concepts/StringLiteral__.ts +20 -7
  744. package/src/concepts/StructureProperty__.ts +16 -6
  745. package/src/concepts/Structure__.ts +26 -18
  746. package/src/concepts/SwitchCase__.ts +22 -14
  747. package/src/concepts/SwitchStatement__.ts +17 -7
  748. package/src/concepts/TriggerLauncher__.ts +17 -7
  749. package/src/concepts/TypeAnnotation__.ts +36 -26
  750. package/src/concepts/TypeParam__.ts +13 -4
  751. package/src/concepts/UnaryExpression__.ts +22 -9
  752. package/src/concepts/Unparsed__.ts +11 -3
  753. package/src/concepts/ValidationRule__.ts +21 -17
  754. package/src/concepts/Variable__.ts +37 -33
  755. package/src/concepts/ViewElement__.ts +128 -156
  756. package/src/concepts/View__.ts +101 -101
  757. package/src/concepts/WhileStatement__.ts +19 -10
  758. package/src/concepts/index__.ts +1 -1
  759. package/src/concepts/types__.ts +1 -5
  760. package/src/decorators/index.ts +10 -9
  761. package/src/generator/genMetaData.ts +2 -12
  762. package/src/manager/diagnostic.ts +3 -4
  763. package/src/server/extendBaseNode.ts +8 -24
  764. package/src/server/getConnector.ts +8 -3
  765. package/src/server/getLogics.ts +15 -3
  766. package/src/server/naslServer.ts +717 -749
  767. package/src/server/translator.ts +1 -1
  768. package/src/templator/genCreateBlock.ts +5 -9
  769. package/src/templator/genCurdEditMultipleKeyBlock.ts +13 -19
  770. package/src/templator/genCurdMultipleKeyBlock.ts +11 -14
  771. package/src/templator/genEditTableBlock.ts +2 -4
  772. package/src/templator/genUpdateBlock.ts +12 -15
  773. package/src/templator/utils.ts +7 -8
  774. package/src/translator/types.ts +20 -5
  775. package/src/translator/utils.ts +100 -5
  776. package/src/utils/time-slicing/constant.ts +37 -0
  777. package/src/utils/time-slicing/controller.ts +342 -0
  778. package/src/utils/time-slicing/index.ts +6 -0
  779. package/src/utils/time-slicing/page-state.ts +12 -0
  780. package/src/utils/time-slicing/performance.ts +56 -0
  781. package/src/utils/time-slicing/runner.ts +54 -0
  782. package/src/utils/time-slicing/tool.ts +45 -0
  783. package/src/utils/time-slicing/utils.ts +90 -0
  784. package/src/utils/time-slicing/wrapper.ts +58 -0
  785. package/src/utils/types.ts +9 -0
  786. package/test/concepts/anonymous-function/toEmbeddedTS.spec.ts +2 -1
  787. package/test/concepts/assignment/toEmbeddedTS.spec.ts +2 -1
  788. package/test/concepts/batch-assignment/toEmbeddedTS.spec.ts +2 -1
  789. package/test/concepts/binary-expression/__snapshots__/toEmbeddedTS.spec.ts.snap +3 -3
  790. package/test/concepts/binary-expression/toEmbeddedTS.spec.ts +2 -1
  791. package/test/concepts/boolean-literal/toEmbeddedTS.spec.ts +2 -1
  792. package/test/concepts/call-function/toEmbeddedTS.spec.ts +2 -1
  793. package/test/concepts/call-interface/__snapshots__/toJS.spec.ts.snap +3 -3
  794. package/test/concepts/call-interface/toEmbeddedTS.spec.ts +2 -1
  795. package/test/concepts/call-logic/__snapshots__/toJS.spec.ts.snap +5 -5
  796. package/test/concepts/call-logic/getQuickInfoOffset.spec.ts +2 -1
  797. package/test/concepts/call-logic/toEmbeddedTS.spec.ts +2 -1
  798. package/test/concepts/data-source/toEmbeddedTS.spec.ts +2 -1
  799. package/test/concepts/data-source/toEmbeddedTSFile.spec.ts +2 -1
  800. package/test/concepts/entity/__snapshots__/toEmbeddedTS.spec.ts.snap +19 -19
  801. package/test/concepts/entity/toEmbeddedTS.spec.ts +2 -1
  802. package/test/concepts/identifier/toEmbeddedTS.spec.ts +2 -1
  803. package/test/concepts/match/__snapshots__/toJS.spec.ts.snap +1 -1
  804. package/test/concepts/match/toEmbeddedTS.spec.ts +2 -1
  805. package/test/concepts/member-expression/toEmbeddedTS.spec.ts +2 -1
  806. package/test/concepts/null-literal/toEmbeddedTS.spec.ts +2 -1
  807. package/test/concepts/numeric-literal/__snapshots__/toJS.spec.ts.snap +1 -1
  808. package/test/concepts/numeric-literal/toEmbeddedTS.spec.ts +2 -1
  809. package/test/concepts/string-literal/toEmbeddedTS.spec.ts +2 -1
  810. package/test/concepts/validation-rule/__snapshots__/toJS.spec.ts.snap +3 -3
  811. package/test/concepts/validation-rule/toEmbeddedTS.spec.ts +2 -1
  812. package/test/concepts/validation-rule/validation-rule.spec.ts +2 -1
  813. package/test/concepts/view-element/__snapshots__/toEmbeddedTS.spec.ts.snap +3 -3
  814. package/test/concepts/view-element/__snapshots__/toVue.spec.ts.snap +0 -4
  815. package/test/concepts/view-element/toEmbeddedTS.spec.ts +2 -1
  816. package/test/time-slicing/runner.spec.ts +28 -0
  817. package/test/time-slicing/time-slicing-nodejs.spec.ts +27 -0
  818. package/test/time-slicing/utils.ts +7 -0
  819. package/test/time-slicing/wrapper.spec.ts +92 -0
  820. package/ts-worker/lib/tsserver.js +10 -1
  821. package/ts-worker/package.json +1 -0
  822. package/ts-worker/src/index.js +13 -12
  823. package/ts-worker/webpack.config.js +1 -1
  824. package/out/concepts/InterfaceFromExample__.d.ts +0 -88
  825. package/out/concepts/InterfaceFromExample__.js +0 -183
  826. package/out/concepts/InterfaceFromExample__.js.map +0 -1
  827. package/out/utils/time-slicing.d.ts +0 -41
  828. package/out/utils/time-slicing.js +0 -82
  829. package/out/utils/time-slicing.js.map +0 -1
  830. package/src/concepts/InterfaceFromExample__.ts +0 -205
  831. package/src/utils/time-slicing.ts +0 -111
@@ -1,4 +1,14 @@
1
- import { TranslatorState, shiftState, withSourceMap, indent, createCompilerState } from '../translator';
1
+ import { wrapForEachToGenerator as wrapForEach } from '../utils/time-slicing';
2
+ import {
3
+ TranslatorState,
4
+ shiftState,
5
+ withSourceMap,
6
+ indent,
7
+ createCompilerState,
8
+ withSourceMapGenerator,
9
+ withGenerator,
10
+ TranslatorGenerator,
11
+ } from '../translator';
2
12
  import { ElementToVueOptions } from './ViewElement__';
3
13
  import MemberExpression from './MemberExpression__';
4
14
  import StructureProperty from './StructureProperty__';
@@ -1225,29 +1235,30 @@ export class NewComposite extends LogicItem {
1225
1235
  return code;
1226
1236
  }
1227
1237
 
1228
- @withSourceMap()
1229
- toEmbeddedTS(state = createCompilerState()): string {
1238
+ @withSourceMapGenerator
1239
+ *toEmbeddedTS(state = createCompilerState()): TranslatorGenerator {
1240
+ const self = this;
1230
1241
  const indent0 = indent(state?.tabSize || 0);
1231
1242
  const indent1 = indent((state?.tabSize || 0) + 1);
1232
1243
  const indent2 = indent((state?.tabSize || 0) + 2);
1233
1244
  const indent3 = indent((state?.tabSize || 0) + 3);
1234
1245
  let code = '';
1235
- if (!this.typeAnnotation) {
1246
+ if (!self.typeAnnotation) {
1236
1247
  code += '__IDENTIFIER__';
1237
- } else if (this.typeAnnotation.typeKind !== 'anonymousStructure') {
1248
+ } else if (self.typeAnnotation.typeKind !== 'anonymousStructure') {
1238
1249
  const rightMap = new Map();
1239
1250
  code += `${indent0}(() => { \n`;
1240
1251
  // 提供sourcemap,获取类型标注和上下文可选变量
1241
- this.rights.forEach((right) => {
1252
+ yield* wrapForEach(self.rights, function* warpForEachGenerator(right) {
1242
1253
  code += indent1;
1243
- rightMap.set(right.expression, right.expression.toEmbeddedTS(shiftState(state, code, { inline: true })));
1254
+ rightMap.set(right.expression, yield* right.expression.toEmbeddedTS(shiftState(state, code, { inline: true })));
1244
1255
  code += rightMap.get(right.expression);
1245
1256
  code += ';\n';
1246
1257
  if (right.members?.length) {
1247
1258
  code += indent2;
1248
1259
  }
1249
- right.members.forEach((member) => {
1250
- rightMap.set(member, member.toEmbeddedTS(shiftState(state, code, { inline: true })));
1260
+ yield* wrapForEach(right.members, function* warpForEachGenerator(member) {
1261
+ rightMap.set(member, yield* member.toEmbeddedTS(shiftState(state, code, { inline: true })));
1251
1262
  code += rightMap.get(member);
1252
1263
  code += '; ';
1253
1264
  });
@@ -1255,94 +1266,92 @@ export class NewComposite extends LogicItem {
1255
1266
  });
1256
1267
  // 方便ts报错检查
1257
1268
  code += `${indent1}function __newComposite() {\n`;
1258
- const { typeAnnotation } = this;
1269
+ const { typeAnnotation } = self;
1259
1270
  if (
1260
1271
  ['nasl.ui', 'nasl.interface', 'nasl.http'].includes(typeAnnotation.typeNamespace) &&
1261
1272
  typeAnnotation.typeKind === 'generic'
1262
1273
  ) {
1263
1274
  code += `${indent2}let __obj = new ${typeAnnotation.typeNamespace}.${typeAnnotation.typeName}`;
1264
1275
  code += '({';
1265
- this.assignmentLines.forEach(({ leftIndex, rightIndex }) => {
1276
+ yield* wrapForEach(self.assignmentLines, function* warpForEachGenerator({ leftIndex, rightIndex }) {
1266
1277
  const leftSecondIndex = leftIndex[1];
1267
1278
  const [rightFirst, rightSecond] = [rightIndex[0], rightIndex[1]];
1268
- const leftItem = this.properties[leftSecondIndex];
1279
+ const leftItem = self.properties[leftSecondIndex];
1269
1280
  const rightItem =
1270
1281
  rightSecond !== undefined
1271
- ? this.rights[rightFirst].members[rightSecond]
1272
- : this.rights[rightFirst].expression;
1282
+ ? self.rights[rightFirst].members[rightSecond]
1283
+ : self.rights[rightFirst].expression;
1273
1284
  const rightTs = rightMap.get(rightItem);
1274
- code += `${leftItem.toEmbeddedTS(shiftState(state, code, { inline: true }))}:`;
1285
+ code += `${yield* leftItem.toEmbeddedTS(shiftState(state, code, { inline: true }))}:`;
1275
1286
  code += `${['__IDENTIFIER__', '__IDENTIFIER__()'].includes(rightTs) ? 'null' : rightMap.get(rightItem)},\n `;
1276
1287
  });
1277
1288
  code += '})\n';
1278
1289
  } else {
1279
1290
  code += `${indent2}let __obj = nasl.util.New<`;
1280
- code += this.typeAnnotation.toEmbeddedTS(shiftState(state, code, { inline: true }));
1291
+ code += yield* self.typeAnnotation.toEmbeddedTS(shiftState(state, code, { inline: true }));
1281
1292
  code += `>();\n`;
1282
1293
  }
1283
1294
  // 是否是左边的顶层连线
1284
- const leftTopIndex = this.assignmentLines.findIndex(({ leftIndex }) => leftIndex[1] === undefined);
1295
+ const leftTopIndex = self.assignmentLines.findIndex(({ leftIndex }) => leftIndex[1] === undefined);
1285
1296
  if (leftTopIndex !== -1) {
1286
- const { rightIndex } = this.assignmentLines[leftTopIndex];
1297
+ const { rightIndex } = self.assignmentLines[leftTopIndex];
1287
1298
  const rightExpression =
1288
1299
  rightIndex[1] !== undefined
1289
- ? this.rights[rightIndex[0]].members[rightIndex[1]]
1290
- : this.rights[rightIndex[0]].expression;
1291
- code += `__obj = `;
1292
- code += `${rightExpression.toEmbeddedTS(shiftState(state, code, { inline: true }))}`;
1293
- code += ';\n';
1300
+ ? self.rights[rightIndex[0]].members[rightIndex[1]]
1301
+ : self.rights[rightIndex[0]].expression;
1302
+ code += `__obj = ${yield* rightExpression.toEmbeddedTS(shiftState(state, code, { inline: true }))};`;
1303
+ code += '\n';
1294
1304
  } else {
1295
1305
  // 左侧properties的identifier的类型标注
1296
1306
  code += `${indent2}const { `;
1297
- this.properties.forEach((item, index) => {
1298
- code += item.toEmbeddedTS(shiftState(state, code, { inline: true }));
1299
- if (index < this.properties.length - 1) code += ', ';
1307
+ yield* wrapForEach(self.properties, function* warpForEachGenerator(item, index) {
1308
+ code += yield* item.toEmbeddedTS(shiftState(state, code, { inline: true }));
1309
+ if (index < self.properties.length - 1) code += ', ';
1300
1310
  });
1301
1311
  code += ' } = __obj;\n';
1302
- this.assignmentLines.forEach(({ leftIndex, rightIndex }) => {
1312
+ yield* wrapForEach(self.assignmentLines, function* warpForEachGenerator({ leftIndex, rightIndex }) {
1303
1313
  const leftSecondIndex = leftIndex[1];
1304
1314
  const [rightFirst, rightSecond] = [rightIndex[0], rightIndex[1]];
1305
- const leftItem = this.properties[leftSecondIndex];
1315
+ const leftItem = self.properties[leftSecondIndex];
1306
1316
  const rightItem =
1307
1317
  rightSecond !== undefined
1308
- ? this.rights[rightFirst].members[rightSecond]
1309
- : this.rights[rightFirst].expression;
1318
+ ? self.rights[rightFirst].members[rightSecond]
1319
+ : self.rights[rightFirst].expression;
1310
1320
  const rightTs = rightMap.get(rightItem);
1311
1321
  code += `${indent2}nasl.core.compareNew(`;
1312
1322
  code += `${['__IDENTIFIER__', '__IDENTIFIER__()'].includes(rightTs) ? 'null' : rightMap.get(rightItem)}, `;
1313
- code += `${leftItem.toEmbeddedTS(shiftState(state, code, { inline: true }), { isNewcomposite: true })});\n`;
1323
+ code += `${yield* leftItem.toEmbeddedTS(shiftState(state, code, { inline: true }), { isNewcomposite: true })});\n`;
1314
1324
  });
1315
1325
  }
1316
1326
  code += `${indent2}return __obj;\n`;
1317
1327
  code += `${indent1}};\n`;
1318
-
1319
1328
  code += `${indent1}return __newComposite();\n`;
1320
1329
  code += `${indent0}})()`;
1321
1330
  } else {
1322
1331
  const nameMap = new Map();
1323
1332
  const rightMap = new Map();
1324
- this.assignmentLines.forEach(({ leftIndex, rightIndex }) => {
1333
+ yield* wrapForEach(self.assignmentLines, function* warpForEachGenerator({ leftIndex, rightIndex }) {
1325
1334
  const leftSecondIndex = leftIndex[1];
1326
1335
  const [rightFirst, rightSecond] = [rightIndex[0], rightIndex[1]];
1327
- const leftItem = this.properties[leftSecondIndex];
1336
+ const leftItem = self.properties[leftSecondIndex];
1328
1337
  const rightItem =
1329
- rightSecond !== undefined ? this.rights[rightFirst].members[rightSecond] : this.rights[rightFirst].expression;
1338
+ rightSecond !== undefined ? self.rights[rightFirst].members[rightSecond] : self.rights[rightFirst].expression;
1330
1339
  nameMap.set(leftItem.name, rightItem);
1331
1340
  rightMap.set(rightItem, null);
1332
1341
  });
1333
1342
  code += `${indent0}(() => { \n`;
1334
1343
  // 提供sourcemap,获取类型标注和上下文可选变量
1335
- this.rights.forEach((right) => {
1344
+ yield* wrapForEach(self.rights, function* warpForEachGenerator(right) {
1336
1345
  code += indent1;
1337
- let ts = right.expression.toEmbeddedTS(shiftState(state, code, { inline: true }));
1346
+ let ts = yield* right.expression.toEmbeddedTS(shiftState(state, code, { inline: true }));
1338
1347
  if (rightMap.has(right.expression)) rightMap.set(right.expression, ts);
1339
1348
  code += ts;
1340
1349
  code += ';\n';
1341
1350
  if (right.members?.length) {
1342
1351
  code += indent2;
1343
1352
  }
1344
- right.members.forEach((member) => {
1345
- ts = member.toEmbeddedTS(shiftState(state, code, { inline: true }));
1353
+ yield* wrapForEach(right.members, function* warpForEachGenerator(member) {
1354
+ ts = yield* member.toEmbeddedTS(shiftState(state, code, { inline: true }));
1346
1355
  if (rightMap.has(member)) rightMap.set(member, ts);
1347
1356
  code += ts;
1348
1357
  code += '; ';
@@ -1350,7 +1359,7 @@ export class NewComposite extends LogicItem {
1350
1359
  code += right.members.length ? '\n' : '';
1351
1360
  });
1352
1361
  // 先把连线的变量定义出来,否则匿名数据结构属性名称与变量名称相同时会报错,
1353
- this.properties.forEach((property, index) => {
1362
+ yield* wrapForEach(self.properties, function* warpForEachGenerator(property, index) {
1354
1363
  const temp = `temp${index}__`;
1355
1364
  const { name } = property;
1356
1365
  const rightItem = nameMap.get(name);
@@ -1365,17 +1374,17 @@ export class NewComposite extends LogicItem {
1365
1374
  });
1366
1375
  // 方便ts报错检查
1367
1376
  code += `${indent1}function __newComposite() {\n`;
1368
- this.properties.forEach((property, index) => {
1377
+ yield* wrapForEach(self.properties, function* warpForEachGenerator(property, index) {
1369
1378
  const temp = `temp${index}__`;
1370
- const propertyType = this.typeAnnotation.properties[index]?.typeAnnotation;
1379
+ const propertyType = self.typeAnnotation.properties[index]?.typeAnnotation;
1371
1380
  const { name } = property;
1372
1381
  const rightItem = nameMap.get(name);
1373
1382
  const ts = rightMap.get(rightItem);
1374
1383
  if (ts !== undefined) {
1375
1384
  code += `${indent2}let `;
1376
- code += `${property.toEmbeddedTS(shiftState(state, code, { inline: true }))}: `;
1385
+ code += `${yield* property.toEmbeddedTS(shiftState(state, code, { inline: true }))}: `;
1377
1386
  if (propertyType) {
1378
- const typeTs = propertyType.toEmbeddedTS(shiftState(state, code, { inline: true }));
1387
+ const typeTs = yield* propertyType.toEmbeddedTS(shiftState(state, code, { inline: true }));
1379
1388
  code += typeTs;
1380
1389
  code += ` = ${temp};\n`;
1381
1390
  // 如果是字段是union类型,且赋值的是当前union允许的类型,会导致property.name类型推断成temp的类型
@@ -1386,25 +1395,23 @@ export class NewComposite extends LogicItem {
1386
1395
  }
1387
1396
  } else if (propertyType) {
1388
1397
  code += `${indent2}let ${property.name}: `;
1389
- code += `${propertyType.toEmbeddedTS(shiftState(state, code, { inline: true }))}; `;
1398
+ code += `${yield* propertyType.toEmbeddedTS(shiftState(state, code, { inline: true }))}; `;
1390
1399
  code += `<`;
1391
- code += `${property.toEmbeddedTS(shiftState(state, code, { inline: true }))}`;
1400
+ code += `${yield* property.toEmbeddedTS(shiftState(state, code, { inline: true }))}`;
1392
1401
  code += `>${property.name};\n`;
1393
1402
  } else {
1394
1403
  code += `${indent2}const `;
1395
- code += property.toEmbeddedTS(shiftState(state, code, { inline: true }));
1404
+ code += yield* property.toEmbeddedTS(shiftState(state, code, { inline: true }));
1396
1405
  code += ';\n';
1397
1406
  }
1398
1407
  });
1399
1408
  code += `${indent2}return {\n`;
1400
- this.properties.forEach((property) => {
1409
+ yield* wrapForEach(self.properties, function* warpForEachGenerator(property) {
1401
1410
  code += `${indent3}${property.name},\n`;
1402
1411
  });
1403
- code += `${indent3}__name: "AStructure_${genHash(JSON.stringify(this))}" as const,\n`;
1412
+ code += `${indent3}__name: "AStructure_AAAAAAAA" as const,\n`;
1404
1413
  code += `${indent2}}\n`;
1405
-
1406
1414
  code += `${indent1}};\n`;
1407
-
1408
1415
  code += `${indent1}return __newComposite();\n`;
1409
1416
  code += `${indent0}})()`;
1410
1417
  }
@@ -1431,7 +1438,8 @@ export class NewComposite extends LogicItem {
1431
1438
  return code;
1432
1439
  }
1433
1440
 
1434
- getInitCode(state?: TranslatorState): string {
1441
+ *getInitCode(state?: TranslatorState) {
1442
+ const self = this;
1435
1443
  const indent1 = indent((state?.tabSize || 0) + 1);
1436
1444
  const indent2 = indent((state?.tabSize || 0) + 2);
1437
1445
  const indent3 = indent((state?.tabSize || 0) + 3);
@@ -1439,7 +1447,7 @@ export class NewComposite extends LogicItem {
1439
1447
  let code = '';
1440
1448
  const nameMap = new Map();
1441
1449
  const rightMap = new Map();
1442
- this.assignmentLines.forEach(({ leftIndex, rightIndex }) => {
1450
+ yield* wrapForEach(self.assignmentLines, ({ leftIndex, rightIndex }) => {
1443
1451
  const leftSecondIndex = leftIndex[1];
1444
1452
  const [rightFirst, rightSecond] = [rightIndex[0], rightIndex[1]];
1445
1453
  const leftItem = this.properties[leftSecondIndex];
@@ -1450,24 +1458,26 @@ export class NewComposite extends LogicItem {
1450
1458
  });
1451
1459
  code += '(() => { ';
1452
1460
  // 提供sourcemap,获取类型标注和上下文可选变量
1453
- this.rights.forEach((right) => {
1454
- let ts = right.expression.toEmbeddedTS(shiftState(state, code, { inline: true }));
1461
+ yield* wrapForEach(this.rights, function* wrapForEach(right) {
1462
+ let ts = yield* right.expression.toEmbeddedTS(shiftState(state, code, { inline: true }));
1455
1463
  if (rightMap.has(right.expression)) rightMap.set(right.expression, ts);
1456
- right.members.forEach((member) => {
1457
- ts = member.toEmbeddedTS(shiftState(state, code, { inline: true }));
1458
- if (rightMap.has(member)) rightMap.set(member, ts);
1459
- });
1464
+ for (const member of right.members) {
1465
+ ts = yield* member.toEmbeddedTS(shiftState(state, code, { inline: true }));
1466
+ if (rightMap.has(member)) {
1467
+ rightMap.set(member, ts);
1468
+ }
1469
+ }
1460
1470
  });
1461
1471
  // 方便ts报错检查
1462
1472
  code += 'function __newComposite() { ';
1463
- this.properties.forEach((property, index) => {
1473
+ yield* wrapForEach(this.properties, function* wrapForEach(property, index) {
1464
1474
  const { name } = property;
1465
- const propertyType = this.typeAnnotation.properties[index]?.typeAnnotation;
1475
+ const propertyType = self.typeAnnotation.properties[index]?.typeAnnotation;
1466
1476
  const rightItem = nameMap.get(name);
1467
1477
  let ts = rightMap.get(rightItem);
1468
- ts = this.getForeachCode(ts);
1478
+ ts = yield* self.getForeachCode(ts);
1469
1479
  if (propertyType) {
1470
- code += `const ${name}: ${propertyType.toEmbeddedTS(shiftState(state, code, { inline: true }))}; `;
1480
+ code += `const ${name}: ${yield* propertyType.toEmbeddedTS(shiftState(state, code, { inline: true }))}; `;
1471
1481
  } else if (ts !== undefined) {
1472
1482
  code += `const ${name} = ${['__IDENTIFIER__', '__IDENTIFIER__()'].includes(ts) ? null : ts}; `;
1473
1483
  } else {
@@ -1478,7 +1488,7 @@ export class NewComposite extends LogicItem {
1478
1488
  this.properties.forEach((property) => {
1479
1489
  code += `${indent4}${property.name},\n`;
1480
1490
  });
1481
- code += `${indent4}__name: "AStructure_${genHash(JSON.stringify(this))}" as const,\n`;
1491
+ code += `${indent4}__name: "AStructure_AAAAAAAA" as const,\n`;
1482
1492
  code += `${indent3}}\n`;
1483
1493
 
1484
1494
  code += `${indent2}};\n`;
@@ -1488,7 +1498,7 @@ export class NewComposite extends LogicItem {
1488
1498
  return code;
1489
1499
  }
1490
1500
 
1491
- getNewCompositeCode(state?: TranslatorState): string {
1501
+ *getNewCompositeCode(state?: TranslatorState) {
1492
1502
  const indent0 = indent(state?.tabSize || 0);
1493
1503
  const indent1 = indent((state?.tabSize || 0) + 1);
1494
1504
  const indent2 = indent((state?.tabSize || 0) + 2);
@@ -1497,42 +1507,38 @@ export class NewComposite extends LogicItem {
1497
1507
  const rightMap = new Map();
1498
1508
  code += `${indent0}(() => { \n`;
1499
1509
  // 提供sourcemap,获取类型标注和上下文可选变量
1500
- this.rights.forEach((right) => {
1510
+ for (const right of this.rights) {
1501
1511
  code += indent1;
1502
- rightMap.set(right.expression, right.expression.toEmbeddedTS(shiftState(state, code, { inline: true })));
1512
+ rightMap.set(right.expression, yield* right.expression.toEmbeddedTS(shiftState(state, code, { inline: true })));
1503
1513
  // code += rightMap.get(right.expression);
1504
1514
  // code += ';\n';
1505
1515
  if (right.members?.length) {
1506
1516
  code += indent2;
1507
1517
  }
1508
- right.members.forEach((member) => {
1509
- rightMap.set(member, member.toEmbeddedTS(shiftState(state, code, { inline: true })));
1510
- // code += rightMap.get(member);
1511
- // code += '; ';
1512
- });
1513
- // code += right.members.length ? '\n' : '';
1514
- });
1518
+ for (const member of right.members) {
1519
+ rightMap.set(member, yield* member.toEmbeddedTS(shiftState(state, code, { inline: true })));
1520
+ }
1521
+ }
1515
1522
  // 方便ts报错检查
1516
1523
  code += `${indent1}function __newComposite() {\n`;
1517
1524
  const { typeAnnotation } = this;
1518
1525
  if (['nasl.ui', 'nasl.interface', 'nasl.http'].includes(typeAnnotation.typeNamespace)) {
1519
1526
  code += `${indent2}let __obj = new ${typeAnnotation.typeNamespace}.${typeAnnotation.typeName}`;
1520
1527
  code += '({';
1521
- this.assignmentLines.forEach(({ leftIndex, rightIndex }) => {
1528
+ for (const { leftIndex, rightIndex } of this.assignmentLines) {
1522
1529
  const leftSecondIndex = leftIndex[1];
1523
1530
  const [rightFirst, rightSecond] = [rightIndex[0], rightIndex[1]];
1524
1531
  const leftItem = this.properties[leftSecondIndex];
1525
1532
  const rightItem =
1526
1533
  rightSecond !== undefined ? this.rights[rightFirst].members[rightSecond] : this.rights[rightFirst].expression;
1527
1534
  const rightTs = rightMap.get(rightItem);
1528
- code += `${leftItem.toEmbeddedTS(shiftState(state, code, { inline: true }))}:`;
1535
+ code += `${yield* leftItem.toEmbeddedTS(shiftState(state, code, { inline: true }))}:`;
1529
1536
  code += `${['__IDENTIFIER__', '__IDENTIFIER__()'].includes(rightTs) ? 'null' : rightMap.get(rightItem)},\n `;
1530
- });
1537
+ }
1531
1538
  code += '})\n';
1532
1539
  }
1533
1540
  code += `${indent2}return __obj;\n`;
1534
1541
  code += `${indent1}};\n`;
1535
-
1536
1542
  code += `${indent1}return __newComposite();\n`;
1537
1543
  code += `${indent0}})()`;
1538
1544
  return code;
@@ -1577,12 +1583,12 @@ export class NewComposite extends LogicItem {
1577
1583
  this.app.emit('collect:end');
1578
1584
  }
1579
1585
 
1580
- getForeachCode(code: string): string {
1586
+ *getForeachCode(code: string) {
1581
1587
  // ForEachStatement 内部变量需要替换处理,如 item、index
1582
1588
  const forEachStatement = this.getAncestor('ForEachStatement') as ForEachStatement;
1583
1589
  if (forEachStatement && code) {
1584
1590
  code = code.replaceAll('\n', ' ');
1585
- code = new Logic().handleForEachCode(code, forEachStatement);
1591
+ code = yield* new Logic().handleForEachCode(code, forEachStatement);
1586
1592
  }
1587
1593
  return code;
1588
1594
  }
@@ -1,4 +1,14 @@
1
- import { TranslatorState, shiftState, withSourceMap, indent, createCompilerState } from '../translator';
1
+ import { wrapForEachToGenerator as wrapForEach, runGeneratorSync as runSync } from '../utils/time-slicing';
2
+ import {
3
+ TranslatorState,
4
+ shiftState,
5
+ withSourceMap,
6
+ indent,
7
+ createCompilerState,
8
+ withSourceMapGenerator,
9
+ withGenerator,
10
+ TranslatorGenerator,
11
+ } from '../translator';
2
12
  import ForEachStatement from './ForEachStatement__';
3
13
  import Logic from './Logic__';
4
14
  //================================================================================
@@ -417,44 +427,42 @@ export class NewList extends LogicItem {
417
427
  return code;
418
428
  }
419
429
 
420
- @withSourceMap()
421
- toEmbeddedTS(state = createCompilerState()): string {
430
+ @withSourceMapGenerator
431
+ *toEmbeddedTS(state = createCompilerState()): TranslatorGenerator {
432
+ const self = this;
422
433
  const indent0 = indent(state?.tabSize || 0);
423
434
  const indent1 = indent((state?.tabSize || 0) + 1);
424
435
  const indent2 = indent((state?.tabSize || 0) + 2);
425
-
426
- const typeCode = (codestr: string) => {
436
+ const typeCode = function* typeCode(codestr: string) {
427
437
  codestr += `nasl.util.New<`;
428
- codestr += `${this.typeAnnotation.toEmbeddedTS(shiftState(state, codestr, { inline: true }))}`;
438
+ codestr += `${yield * self.typeAnnotation.toEmbeddedTS(shiftState(state, codestr, { inline: true }))}`;
429
439
  codestr += `>()`;
430
440
  return codestr;
431
441
  };
432
-
433
442
  let code = '';
434
- if (this.typeAnnotation) {
443
+ if (self.typeAnnotation) {
435
444
  code += `${indent0}(() => { \n`;
436
445
  // ts报错检查
437
446
  code += `${indent1}function __newList() {\n`;
438
- this.items.forEach((item) => {
447
+ yield* wrapForEach(self.items, function* warpForEachGenerator(item) {
439
448
  code += `${indent2}nasl.util.Add(`;
440
- code = `${typeCode(code)}, `;
441
- code += item.toEmbeddedTS(shiftState(state, code, { inline: true }));
449
+ code = `${yield* typeCode(code)}, `;
450
+ code += yield* item.toEmbeddedTS(shiftState(state, code, { inline: true }));
442
451
  code += ');';
443
452
  code += '\n';
444
453
  });
445
454
  code += `${indent2}return `;
446
- code = `${typeCode(code)};\n`;
455
+ code = `${yield* typeCode(code)};\n`;
447
456
  code += `${indent1}};\n`;
448
-
449
457
  code += `${indent1}return __newList();\n`;
450
458
  code += `${indent0}})()`;
451
459
  } else {
452
460
  code += `${indent0}(() => { \n`;
453
461
  const arr: any = [];
454
- this.items.forEach((item, index) => {
462
+ yield* wrapForEach(self.items, function* warpForEachGenerator(item, index) {
455
463
  if (item.concept === 'Unparsed') return;
456
464
  code += `${indent1}nasl.core.ensureVoid(`;
457
- arr.push(item.toEmbeddedTS(shiftState(state, code, { inline: true })));
465
+ arr.push(yield* item.toEmbeddedTS(shiftState(state, code, { inline: true })));
458
466
  code += arr[index];
459
467
  code += '); ';
460
468
  });
@@ -463,32 +471,32 @@ export class NewList extends LogicItem {
463
471
  code += `${indent1}__IDENTIFIER__;\n`;
464
472
  // ts报错检查
465
473
  code += `${indent1}function __newList() {\n`;
466
- if (this.items.length === 0) {
474
+ if (self.items.length === 0) {
467
475
  code += `${indent2}return nasl.util.NewList();\n`;
468
476
  } else {
469
477
  code += `${indent2}let arr = [`;
470
- this.items.forEach((item, index) => {
478
+ yield* wrapForEach(self.items, function* warpForEachGenerator(item, index) {
471
479
  code += ['__IDENTIFIER__', '__IDENTIFIER__()'].includes(arr[index]) ? null : arr[index];
472
- if (index + 1 < this.items.length) code += ', ';
480
+ if (index + 1 < self.items.length) code += ', ';
473
481
  });
474
482
  code += ']\n';
475
483
  code += `${indent2}return nasl.util.NewList(...arr);\n`;
476
484
  }
477
485
  code += `${indent1}};\n`;
478
-
479
486
  code += `${indent1}return __newList();\n`;
480
487
  code += `${indent0}})()`;
481
488
  }
482
489
  return code;
483
490
  }
484
491
 
485
- @withSourceMap()
486
- toEmbeddedIgnoreTS(state?: TranslatorState): string {
492
+ @withSourceMapGenerator
493
+ *toEmbeddedIgnoreTS(state = createCompilerState()): TranslatorGenerator {
494
+ const self = this;
487
495
  const indent0 = indent(state?.tabSize || 0);
488
496
  let code = '';
489
497
  code += `${indent0}nasl.util.NewList({items:[`;
490
- this.items.forEach((item) => {
491
- code += item.toEmbeddedTS(shiftState(state, code, { inline: true }));
498
+ yield* wrapForEach(self.items, function* warpForEachGenerator(item) {
499
+ code += yield* item.toEmbeddedTS(shiftState(state, code, { inline: true }));
492
500
  code += ', ';
493
501
  });
494
502
  code += ']})';
@@ -514,39 +522,39 @@ export class NewList extends LogicItem {
514
522
  return code;
515
523
  }
516
524
 
517
- getInitCode(state?: TranslatorState): string {
525
+ *getInitCode(state?: TranslatorState) {
526
+ const self = this;
518
527
  const indent1 = indent((state?.tabSize || 0) + 1);
519
528
  const indent2 = indent((state?.tabSize || 0) + 2);
520
529
  const indent3 = indent((state?.tabSize || 0) + 3);
521
530
  let code = '';
522
531
  code += '(() => { \n';
523
532
  code += `${indent2}function __newList() {\n`;
524
- if (this.items.length === 0) {
533
+ if (self.items.length === 0) {
525
534
  code += `${indent3}return nasl.util.NewList();\n`;
526
535
  } else {
527
536
  code += `${indent3}let arr = [`;
528
- this.items.forEach((item, index) => {
529
- let ts = item.toEmbeddedTS(shiftState(state, code, { inline: true }));
530
- ts = this.getForeachCode(ts);
537
+ yield* wrapForEach(self.items, function* wrapForEach(item, index) {
538
+ let ts = yield* item.toEmbeddedTS(shiftState(state, code, { inline: true }));
539
+ ts = yield* self.getForeachCode(ts);
531
540
  code += ['__IDENTIFIER__', '__IDENTIFIER__()'].includes(ts) ? null : ts;
532
- if (index + 1 < this.items.length) code += ', ';
541
+ if (index + 1 < self.items.length) code += ', ';
533
542
  });
534
543
  code += ']\n';
535
544
  code += `${indent3}return nasl.util.NewList(...arr);\n`;
536
545
  }
537
546
  code += `${indent2}};\n`;
538
-
539
547
  code += `${indent2}return __newList();\n`;
540
548
  code += `${indent1}})()`;
541
549
  return code;
542
550
  }
543
551
 
544
- getForeachCode(code: string): string {
552
+ *getForeachCode(code: string) {
545
553
  // ForEachStatement 内部变量需要替换处理,如 item、index
546
554
  const forEachStatement = this.getAncestor('ForEachStatement') as ForEachStatement;
547
555
  if (forEachStatement && code) {
548
556
  code = code.replaceAll('\n', ' ');
549
- code = new Logic().handleForEachCode(code, forEachStatement);
557
+ code = yield* new Logic().handleForEachCode(code, forEachStatement);
550
558
  }
551
559
  return code;
552
560
  }