@lcap/nasl 3.8.3-beta.1 → 3.8.3-beta.2

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 (812) hide show
  1. package/.nyc_output/943352aa-23df-44e0-863b-3dcd3e8bf57a.json +1 -0
  2. package/.nyc_output/processinfo/943352aa-23df-44e0-863b-3dcd3e8bf57a.json +1 -0
  3. package/.nyc_output/processinfo/index.json +1 -1
  4. package/coverage/cobertura-coverage.xml +66121 -10220
  5. package/coverage/index.html +50 -395
  6. package/coverage/src/automate/engine/index.html +19 -19
  7. package/coverage/src/automate/engine/utils.js.html +101 -101
  8. package/coverage/src/bak/index.html +19 -19
  9. package/coverage/src/bak/translator.js.html +96 -141
  10. package/coverage/src/breakpoint/generator/AfterStartNode.ts.html +13 -13
  11. package/coverage/src/breakpoint/generator/BeforeEndNode.ts.html +13 -13
  12. package/coverage/src/breakpoint/generator/BreakpointNode.ts.html +29 -29
  13. package/coverage/src/breakpoint/generator/CallbackNode.ts.html +10 -10
  14. package/coverage/src/breakpoint/generator/index.html +47 -47
  15. package/coverage/src/breakpoint/generator/index.ts.html +20 -20
  16. package/coverage/src/breakpoint/index.html +7 -7
  17. package/coverage/src/breakpoint/index.ts.html +6 -6
  18. package/coverage/src/breakpoint/shared/constants.ts.html +7 -7
  19. package/coverage/src/breakpoint/shared/index.html +45 -45
  20. package/coverage/src/breakpoint/shared/index.ts.html +5 -5
  21. package/coverage/src/breakpoint/shared/operations.ts.html +15 -15
  22. package/coverage/src/breakpoint/shared/socket.ts.html +85 -85
  23. package/coverage/src/breakpoint/shared/utils.ts.html +49 -49
  24. package/coverage/src/breakpoint/store/core.ts.html +100 -100
  25. package/coverage/src/breakpoint/store/dock.ts.html +46 -46
  26. package/coverage/src/breakpoint/store/index.html +33 -33
  27. package/coverage/src/breakpoint/store/index.ts.html +7 -7
  28. package/coverage/src/common/BaseNode.ts.html +350 -1187
  29. package/coverage/src/common/Command.ts.html +20 -20
  30. package/coverage/src/common/EventEmitter.ts.html +31 -49
  31. package/coverage/src/common/Messager.ts.html +28 -28
  32. package/coverage/src/common/asyncFuncMap.ts.html +7 -7
  33. package/coverage/src/common/index.html +55 -70
  34. package/coverage/src/common/index.ts.html +8 -11
  35. package/coverage/src/concepts/Abort__.ts.html +20 -56
  36. package/coverage/src/concepts/Anchor__.ts.html +51 -117
  37. package/coverage/src/concepts/AnonymousFunction__.ts.html +232 -343
  38. package/coverage/src/concepts/App__.ts.html +1283 -2681
  39. package/coverage/src/concepts/Argument__.ts.html +135 -135
  40. package/coverage/src/concepts/Assignee__.ts.html +91 -250
  41. package/coverage/src/concepts/AssignmentLine__.ts.html +28 -88
  42. package/coverage/src/concepts/Assignment__.ts.html +110 -206
  43. package/coverage/src/concepts/Attribute__.ts.html +50 -239
  44. package/coverage/src/concepts/AuthInterface__.ts.html +32 -26
  45. package/coverage/src/concepts/AuthLogicForCallInterface__.ts.html +188 -203
  46. package/coverage/src/concepts/AuthLogic__.ts.html +28 -43
  47. package/coverage/src/concepts/BackendVariable__.ts.html +132 -438
  48. package/coverage/src/concepts/Backend__.ts.html +57 -156
  49. package/coverage/src/concepts/BatchAssignment__.ts.html +270 -420
  50. package/coverage/src/concepts/BinaryExpression__.ts.html +158 -266
  51. package/coverage/src/concepts/BindAttribute__.ts.html +204 -399
  52. package/coverage/src/concepts/BindDirective__.ts.html +73 -217
  53. package/coverage/src/concepts/BindEvent__.ts.html +161 -293
  54. package/coverage/src/concepts/BindStyle__.ts.html +58 -139
  55. package/coverage/src/concepts/BooleanLiteral__.ts.html +33 -63
  56. package/coverage/src/concepts/CallAuthInterface__.ts.html +95 -236
  57. package/coverage/src/concepts/CallConnector__.ts.html +69 -108
  58. package/coverage/src/concepts/CallFunction__.ts.html +234 -399
  59. package/coverage/src/concepts/CallInterface__.ts.html +145 -241
  60. package/coverage/src/concepts/CallLogic__.ts.html +525 -633
  61. package/coverage/src/concepts/CallQueryComponent__.ts.html +232 -385
  62. package/coverage/src/concepts/Comment__.ts.html +27 -63
  63. package/coverage/src/concepts/CompletionProperty__.ts.html +51 -72
  64. package/coverage/src/concepts/ConfigGroup__.ts.html +51 -99
  65. package/coverage/src/concepts/ConfigPropertyValue__.ts.html +34 -40
  66. package/coverage/src/concepts/ConfigProperty__.ts.html +78 -150
  67. package/coverage/src/concepts/Configuration__.ts.html +48 -99
  68. package/coverage/src/concepts/Connection__.ts.html +64 -154
  69. package/coverage/src/concepts/ConnectorTrigger__.ts.html +32 -35
  70. package/coverage/src/concepts/Connector__.ts.html +228 -3117
  71. package/coverage/src/concepts/Constant__.ts.html +74 -374
  72. package/coverage/src/concepts/DataSource__.ts.html +104 -173
  73. package/coverage/src/concepts/DatabaseTypeAnnotation__.ts.html +21 -27
  74. package/coverage/src/concepts/Destination__.ts.html +121 -190
  75. package/coverage/src/concepts/End__.ts.html +40 -76
  76. package/coverage/src/concepts/EntityIndex__.ts.html +44 -80
  77. package/coverage/src/concepts/EntityProperty__.ts.html +158 -440
  78. package/coverage/src/concepts/Entity__.ts.html +161 -326
  79. package/coverage/src/concepts/EnumItem__.ts.html +33 -66
  80. package/coverage/src/concepts/Enum__.ts.html +64 -139
  81. package/coverage/src/concepts/Event__.ts.html +51 -87
  82. package/coverage/src/concepts/ExternalDestination__.ts.html +60 -126
  83. package/coverage/src/concepts/ForEachStatement__.ts.html +152 -239
  84. package/coverage/src/concepts/FrontendLibrary__.ts.html +69 -153
  85. package/coverage/src/concepts/FrontendVariable__.ts.html +19 -76
  86. package/coverage/src/concepts/Frontend__.ts.html +161 -884
  87. package/coverage/src/concepts/Function__.ts.html +171 -396
  88. package/coverage/src/concepts/Identifier__.ts.html +100 -130
  89. package/coverage/src/concepts/IfStatement__.ts.html +110 -209
  90. package/coverage/src/concepts/Integration__.ts.html +57 -132
  91. package/coverage/src/concepts/InterfaceParam__.ts.html +76 -310
  92. package/coverage/src/concepts/Interface__.ts.html +183 -324
  93. package/coverage/src/concepts/JSBlock__.ts.html +26 -59
  94. package/coverage/src/concepts/JavaLogic__.ts.html +28 -58
  95. package/coverage/src/concepts/LogicItem__.ts.html +73 -151
  96. package/coverage/src/concepts/Logic__.ts.html +509 -965
  97. package/coverage/src/concepts/MatchCase__.ts.html +158 -281
  98. package/coverage/src/concepts/Match__.ts.html +121 -280
  99. package/coverage/src/concepts/MemberExpression__.ts.html +172 -256
  100. package/coverage/src/concepts/MicroApp__.ts.html +34 -25
  101. package/coverage/src/concepts/Module__.ts.html +1270 -1375
  102. package/coverage/src/concepts/MsgTriggerEvent__.ts.html +46 -94
  103. package/coverage/src/concepts/MsgTriggerLauncher__.ts.html +48 -93
  104. package/coverage/src/concepts/Namespace__.ts.html +630 -1251
  105. package/coverage/src/concepts/NewComposite__.ts.html +341 -557
  106. package/coverage/src/concepts/NewList__.ts.html +111 -291
  107. package/coverage/src/concepts/NewMap__.ts.html +128 -332
  108. package/coverage/src/concepts/New__.ts.html +21 -57
  109. package/coverage/src/concepts/NullLiteral__.ts.html +23 -56
  110. package/coverage/src/concepts/NumericLiteral__.ts.html +51 -114
  111. package/coverage/src/concepts/OqlQueryComponent__.ts.html +76 -211
  112. package/coverage/src/concepts/OverriddenLogic__.ts.html +394 -643
  113. package/coverage/src/concepts/Param__.ts.html +174 -315
  114. package/coverage/src/concepts/Point__.ts.html +21 -27
  115. package/coverage/src/concepts/ProcessComponent__.ts.html +67 -145
  116. package/coverage/src/concepts/ProcessElement__.ts.html +281 -854
  117. package/coverage/src/concepts/ProcessOutcome__.ts.html +25 -100
  118. package/coverage/src/concepts/ProcessOutcomes__.ts.html +26 -113
  119. package/coverage/src/concepts/Process__.ts.html +201 -552
  120. package/coverage/src/concepts/QueryAggregateExpression__.ts.html +35 -89
  121. package/coverage/src/concepts/QueryFieldExpression__.ts.html +35 -62
  122. package/coverage/src/concepts/QueryFromExpression__.ts.html +47 -119
  123. package/coverage/src/concepts/QueryGroupByExpression__.ts.html +37 -97
  124. package/coverage/src/concepts/QueryJoinExpression__.ts.html +69 -153
  125. package/coverage/src/concepts/QueryLimitExpression__.ts.html +36 -105
  126. package/coverage/src/concepts/QueryOrderByExpression__.ts.html +36 -108
  127. package/coverage/src/concepts/QuerySelectExpression__.ts.html +50 -101
  128. package/coverage/src/concepts/Rect__.ts.html +25 -25
  129. package/coverage/src/concepts/Return__.ts.html +131 -368
  130. package/coverage/src/concepts/Role__.ts.html +37 -67
  131. package/coverage/src/concepts/SelectMembers__.ts.html +57 -141
  132. package/coverage/src/concepts/Slot__.ts.html +40 -64
  133. package/coverage/src/concepts/SqlQueryComponent__.ts.html +62 -122
  134. package/coverage/src/concepts/Start__.ts.html +25 -58
  135. package/coverage/src/concepts/StringInterpolation__.ts.html +77 -185
  136. package/coverage/src/concepts/StringLiteral__.ts.html +47 -158
  137. package/coverage/src/concepts/StructureProperty__.ts.html +78 -306
  138. package/coverage/src/concepts/Structure__.ts.html +90 -285
  139. package/coverage/src/concepts/SwitchCase__.ts.html +66 -141
  140. package/coverage/src/concepts/SwitchStatement__.ts.html +58 -136
  141. package/coverage/src/concepts/Theme__.ts.html +24 -36
  142. package/coverage/src/concepts/Transactional__.ts.html +33 -36
  143. package/coverage/src/concepts/TriggerEvent__.ts.html +480 -63
  144. package/coverage/src/concepts/TriggerLauncher__.ts.html +43 -73
  145. package/coverage/src/concepts/TypeAnnotation__.ts.html +231 -564
  146. package/coverage/src/concepts/TypeParam__.ts.html +23 -59
  147. package/coverage/src/concepts/UnaryExpression__.ts.html +47 -131
  148. package/coverage/src/concepts/Unparsed__.ts.html +29 -59
  149. package/coverage/src/concepts/UseComponent__.ts.html +21 -27
  150. package/coverage/src/concepts/ValidationRule__.ts.html +96 -234
  151. package/coverage/src/concepts/Variable__.ts.html +132 -456
  152. package/coverage/src/concepts/ViewBlock__.ts.html +23 -26
  153. package/coverage/src/concepts/ViewComponent__.ts.html +157 -394
  154. package/coverage/src/concepts/ViewElement__.ts.html +514 -910
  155. package/coverage/src/concepts/View__.ts.html +425 -1271
  156. package/coverage/src/concepts/WhileStatement__.ts.html +79 -175
  157. package/coverage/src/concepts/basics/stdlib/index.html +85 -85
  158. package/coverage/src/concepts/basics/stdlib/index.ts.html +29 -167
  159. package/coverage/src/concepts/basics/stdlib/nasl.auth.ts.html +152 -206
  160. package/coverage/src/concepts/basics/stdlib/nasl.browser.ts.html +139 -172
  161. package/coverage/src/concepts/basics/stdlib/nasl.collection.ts.html +47 -92
  162. package/coverage/src/concepts/basics/stdlib/nasl.configuration.ts.html +31 -130
  163. package/coverage/src/concepts/basics/stdlib/nasl.core.ts.html +43 -61
  164. package/coverage/src/concepts/basics/stdlib/nasl.event.ts.html +23 -53
  165. package/coverage/src/concepts/basics/stdlib/nasl.http.ts.html +167 -203
  166. package/coverage/src/concepts/basics/stdlib/nasl.interface.ts.html +45 -78
  167. package/coverage/src/concepts/basics/stdlib/nasl.io.ts.html +51 -81
  168. package/coverage/src/concepts/basics/stdlib/nasl.logging.ts.html +66 -69
  169. package/coverage/src/concepts/basics/stdlib/nasl.process.ts.html +606 -654
  170. package/coverage/src/concepts/basics/stdlib/nasl.ui.ts.html +993 -1050
  171. package/coverage/src/concepts/basics/stdlib/nasl.util.ts.html +2131 -2236
  172. package/coverage/src/concepts/basics/stdlib/nasl.validation.ts.html +563 -596
  173. package/coverage/src/concepts/basics/stdlib/reference2TypeAnnotationList.ts.html +40 -28
  174. package/coverage/src/concepts/basics/stdlib/timeZone.ts.html +9 -9
  175. package/coverage/src/concepts/basics/types/coreTypeList.ts.html +7 -7
  176. package/coverage/src/concepts/basics/types/index.html +16 -16
  177. package/coverage/src/concepts/basics/types/index.ts.html +18 -18
  178. package/coverage/src/concepts/index.html +1215 -1365
  179. package/coverage/src/concepts/index.ts.html +7 -31
  180. package/coverage/src/concepts/index__.ts.html +8 -38
  181. package/coverage/src/config.ts.html +20 -2
  182. package/coverage/src/decorators/index.html +32 -32
  183. package/coverage/src/decorators/index.ts.html +93 -108
  184. package/coverage/src/decorators/promise.ts.html +26 -26
  185. package/coverage/src/eventBus.ts.html +7 -7
  186. package/coverage/src/generator/compileComponent.ts.html +10 -10
  187. package/coverage/src/generator/genBundleFiles.ts.html +45 -273
  188. package/coverage/src/generator/genHash.ts.html +8 -8
  189. package/coverage/src/generator/genMetaData.ts.html +49 -280
  190. package/coverage/src/generator/genReleaseBody.ts.html +98 -113
  191. package/coverage/src/generator/icestark.ts.html +8 -14
  192. package/coverage/src/generator/index.html +87 -87
  193. package/coverage/src/generator/index.ts.html +6 -6
  194. package/coverage/src/generator/microApp.ts.html +10 -10
  195. package/coverage/src/generator/permission.ts.html +80 -152
  196. package/coverage/src/generator/qiankun.ts.html +7 -13
  197. package/coverage/src/generator/styleReplacer.ts.html +17 -17
  198. package/coverage/src/index.html +10 -40
  199. package/coverage/src/index.ts.html +12 -15
  200. package/coverage/src/manager/diagnostic.ts.html +31 -28
  201. package/coverage/src/manager/index.html +27 -27
  202. package/coverage/src/manager/stepRecorder.ts.html +17 -17
  203. package/coverage/src/natural/genNaturalTS.ts.html +30 -30
  204. package/coverage/src/natural/index.html +41 -41
  205. package/coverage/src/natural/index.ts.html +6 -6
  206. package/coverage/src/natural/naslStdlibMap.ts.html +10 -10
  207. package/coverage/src/natural/transformTSCode.ts.html +137 -197
  208. package/coverage/src/sentry/index.html +19 -19
  209. package/coverage/src/sentry/index.ts.html +43 -49
  210. package/coverage/src/server/createUiTs.ts.html +37 -46
  211. package/coverage/src/server/entity2LogicNamespace.ts.html +21 -21
  212. package/coverage/src/server/event.js.html +7 -7
  213. package/coverage/src/server/extendBaseNode.ts.html +90 -132
  214. package/coverage/src/server/formatTsUtils.ts.html +105 -108
  215. package/coverage/src/server/getConnector.ts.html +24 -96
  216. package/coverage/src/server/getExtensionModules.ts.html +14 -14
  217. package/coverage/src/server/getFunctions.ts.html +15 -15
  218. package/coverage/src/server/getInterfaces.ts.html +18 -18
  219. package/coverage/src/server/getLogging.ts.html +11 -11
  220. package/coverage/src/server/getLogics.ts.html +74 -122
  221. package/coverage/src/server/getMemberIdentifier.ts.html +163 -358
  222. package/coverage/src/server/getProcessComponents.ts.html +13 -13
  223. package/coverage/src/server/getProcesses.ts.html +86 -236
  224. package/coverage/src/server/getValidates.ts.html +14 -17
  225. package/coverage/src/server/index.html +181 -181
  226. package/coverage/src/server/index.ts.html +8 -11
  227. package/coverage/src/server/naslServer.ts.html +1270 -1933
  228. package/coverage/src/server/naslStdlibMap.ts.html +10 -10
  229. package/coverage/src/server/process2LogicNamespace.ts.html +20 -20
  230. package/coverage/src/server/translator.ts.html +89 -134
  231. package/coverage/src/service/creator/add.configs.js.html +17 -35
  232. package/coverage/src/service/creator/errHandles.js.html +45 -36
  233. package/coverage/src/service/creator/index.html +35 -35
  234. package/coverage/src/service/creator/index.js.html +14 -14
  235. package/coverage/src/service/datasource/api.js.html +7 -7
  236. package/coverage/src/service/datasource/index.html +12 -12
  237. package/coverage/src/service/datasource/index.js.html +5 -5
  238. package/coverage/src/service/logic/api.js.html +7 -7
  239. package/coverage/src/service/logic/index.html +12 -12
  240. package/coverage/src/service/logic/index.js.html +5 -5
  241. package/coverage/src/service/storage/api.js.html +7 -7
  242. package/coverage/src/service/storage/index.html +56 -56
  243. package/coverage/src/service/storage/index.ts.html +5 -5
  244. package/coverage/src/service/storage/init.ts.html +624 -1758
  245. package/coverage/src/service/storage/jsoner.ts.html +23 -86
  246. package/coverage/src/service/storage/map.ts.html +21 -21
  247. package/coverage/src/service/storage/service.ts.html +14 -14
  248. package/coverage/src/service/storage/storagePoint.ts.html +9 -9
  249. package/coverage/src/templator/genCallComponentLogic.ts.html +12 -12
  250. package/coverage/src/templator/genCreateBlock.ts.html +94 -154
  251. package/coverage/src/templator/genCurdEditMultipleKeyBlock.ts.html +90 -90
  252. package/coverage/src/templator/genCurdMultipleKeyBlock.ts.html +150 -132
  253. package/coverage/src/templator/genEditTableBlock.ts.html +41 -104
  254. package/coverage/src/templator/genEnumSelectBlock.ts.html +12 -93
  255. package/coverage/src/templator/genGetBlock.ts.html +18 -18
  256. package/coverage/src/templator/genGridViewBlock.ts.html +35 -35
  257. package/coverage/src/templator/genListViewBlock.ts.html +15 -15
  258. package/coverage/src/templator/genQueryComponent.ts.html +35 -35
  259. package/coverage/src/templator/genSelectBlock.ts.html +20 -101
  260. package/coverage/src/templator/genTableBlock.ts.html +33 -96
  261. package/coverage/src/templator/genUpdateBlock.ts.html +78 -162
  262. package/coverage/src/templator/index.html +147 -147
  263. package/coverage/src/templator/index.ts.html +12 -12
  264. package/coverage/src/templator/utils.ts.html +32 -95
  265. package/coverage/src/translator/constant.ts.html +7 -7
  266. package/coverage/src/translator/index.html +28 -43
  267. package/coverage/src/translator/index.ts.html +6 -6
  268. package/coverage/src/translator/utils.ts.html +71 -452
  269. package/coverage/src/utils/cookie.ts.html +19 -19
  270. package/coverage/src/utils/env.ts.html +2 -2
  271. package/coverage/src/utils/index.html +37 -82
  272. package/coverage/src/utils/index.ts.html +798 -66
  273. package/coverage/src/utils/logger.ts.html +1 -1
  274. package/coverage/src/utils/sortTsString.ts.html +18 -33
  275. package/coverage/src/utils/string.ts.html +50 -8
  276. package/coverage/src/utils/time-slicing/controller.ts.html +8 -8
  277. package/coverage/src/utils/time-slicing/index.html +64 -79
  278. package/coverage/src/utils/time-slicing/index.ts.html +8 -8
  279. package/coverage/src/utils/time-slicing/page-state.ts.html +1 -1
  280. package/coverage/src/utils/time-slicing/performance.ts.html +4 -4
  281. package/coverage/src/utils/time-slicing/runner.ts.html +51 -51
  282. package/coverage/src/utils/time-slicing/tool.ts.html +29 -29
  283. package/coverage/src/utils/time-slicing/utils.ts.html +16 -16
  284. package/coverage/src/utils/time-slicing/wrapper.ts.html +50 -50
  285. package/coverage/src/utils/time-slicing.ts.html +1 -1
  286. package/coverage/src/utils/traverse.ts.html +27 -27
  287. package/coverage/src/utils/types.ts.html +1 -1
  288. package/coverage/src/utils/window.ts.html +1 -1
  289. package/out/common/BaseNode.d.ts +9 -4
  290. package/out/common/BaseNode.js +43 -10
  291. package/out/common/BaseNode.js.map +1 -1
  292. package/out/concepts/AuthLogicForCallInterface__.js +2 -50
  293. package/out/concepts/AuthLogicForCallInterface__.js.map +1 -1
  294. package/out/concepts/BusinessComponent__.js +2 -42
  295. package/out/concepts/BusinessComponent__.js.map +1 -1
  296. package/out/concepts/BusinessLogic__.js +2 -50
  297. package/out/concepts/BusinessLogic__.js.map +1 -1
  298. package/out/concepts/CallFunction__.d.ts +1 -1
  299. package/out/concepts/CallFunction__.js +1 -1
  300. package/out/concepts/Identifier__.d.ts +2 -0
  301. package/out/concepts/Identifier__.js +51 -5
  302. package/out/concepts/Identifier__.js.map +1 -1
  303. package/out/concepts/Logic__.js +6 -101
  304. package/out/concepts/Logic__.js.map +1 -1
  305. package/out/concepts/MemberExpression__.d.ts +1 -1
  306. package/out/concepts/MemberExpression__.js +15 -3
  307. package/out/concepts/MemberExpression__.js.map +1 -1
  308. package/out/concepts/OverriddenLogic__.js +2 -50
  309. package/out/concepts/OverriddenLogic__.js.map +1 -1
  310. package/out/concepts/ProcessElementV2__.js +4 -0
  311. package/out/concepts/ProcessElementV2__.js.map +1 -1
  312. package/out/concepts/ProcessElement__.js +4 -0
  313. package/out/concepts/ProcessElement__.js.map +1 -1
  314. package/out/concepts/ProcessV2__.js +4 -0
  315. package/out/concepts/ProcessV2__.js.map +1 -1
  316. package/out/concepts/Process__.js +4 -0
  317. package/out/concepts/Process__.js.map +1 -1
  318. package/out/concepts/SubLogic__.js +5 -50
  319. package/out/concepts/SubLogic__.js.map +1 -1
  320. package/out/concepts/View__.js +10 -49
  321. package/out/concepts/View__.js.map +1 -1
  322. package/out/natural/transformTS2UI.js +3 -3
  323. package/out/natural/transformTS2UI.js.map +1 -1
  324. package/out/natural/transforms/transform2LogicItem.js +3 -3
  325. package/out/natural/transforms/transform2LogicItem.js.map +1 -1
  326. package/out/server/naslServer.js +17 -2
  327. package/out/server/naslServer.js.map +1 -1
  328. package/out/server/semanticData.d.ts +32 -0
  329. package/out/server/semanticData.js +371 -0
  330. package/out/server/semanticData.js.map +1 -0
  331. package/out/templator/block2nasl/viewMergeBlock.js +2 -1
  332. package/out/templator/block2nasl/viewMergeBlock.js.map +1 -1
  333. package/package.json +1 -1
  334. package/src/common/BaseNode.ts +50 -8
  335. package/src/concepts/AuthLogicForCallInterface__.ts +3 -56
  336. package/src/concepts/BusinessComponent__.ts +6 -51
  337. package/src/concepts/BusinessLogic__.ts +4 -56
  338. package/src/concepts/CallFunction__.ts +1 -1
  339. package/src/concepts/Identifier__.ts +57 -6
  340. package/src/concepts/Logic__.ts +9 -111
  341. package/src/concepts/MemberExpression__.ts +21 -7
  342. package/src/concepts/OverriddenLogic__.ts +4 -56
  343. package/src/concepts/ProcessElementV2__.ts +4 -0
  344. package/src/concepts/ProcessElement__.ts +4 -0
  345. package/src/concepts/ProcessV2__.ts +5 -0
  346. package/src/concepts/Process__.ts +4 -0
  347. package/src/concepts/SubLogic__.ts +6 -56
  348. package/src/concepts/View__.ts +14 -54
  349. package/src/natural/transformTS2UI.ts +7 -7
  350. package/src/natural/transforms/transform2LogicItem.ts +3 -3
  351. package/src/server/naslServer.ts +22 -2
  352. package/src/server/semanticData.ts +447 -0
  353. package/src/templator/block2nasl/viewMergeBlock.ts +2 -1
  354. package/src/translator/utils.ts +1 -1
  355. package/test/concepts/logic/__snapshots__/toEmbeddedTS.spec.ts.snap +182 -0
  356. package/test/concepts/logic/constant.ts +5 -0
  357. package/test/concepts/logic/fixtures/variable-host-call-logic-member-expression.json +267 -0
  358. package/test/concepts/logic/fixtures/variable-host-call-logic-nested-member-expression copy.json +457 -0
  359. package/test/concepts/logic/fixtures/variable-host-call-logic-with-handle-error-member-expression.json +267 -0
  360. package/test/concepts/logic/toEmbeddedTS.spec.ts +15 -0
  361. package/.nyc_output/fe4ca6db-1eb6-4898-8aa5-ba8f8d4128f2.json +0 -1
  362. package/.nyc_output/processinfo/fe4ca6db-1eb6-4898-8aa5-ba8f8d4128f2.json +0 -1
  363. package/coverage/src/common/utils.ts.html +0 -136
  364. package/coverage/src/concepts/AbstractInterface__.ts.html +0 -277
  365. package/coverage/src/concepts/Block__.ts.html +0 -907
  366. package/coverage/src/concepts/CountersignPolicy__.ts.html +0 -319
  367. package/coverage/src/concepts/DefaultValue__.ts.html +0 -1024
  368. package/coverage/src/concepts/I18nInfo__.ts.html +0 -424
  369. package/coverage/src/concepts/ImportedInterface__.ts.html +0 -262
  370. package/coverage/src/concepts/MetadataType__.ts.html +0 -2035
  371. package/coverage/src/concepts/MultiApprovalPolicy__.ts.html +0 -301
  372. package/coverage/src/concepts/SequentialPolicy__.ts.html +0 -265
  373. package/coverage/src/concepts/StaticString__.ts.html +0 -397
  374. package/coverage/src/concepts/basics/constants.ts.html +0 -88
  375. package/coverage/src/concepts/basics/index.html +0 -116
  376. package/coverage/src/concepts/utils/asserts.ts.html +0 -28675
  377. package/coverage/src/concepts/utils/index.html +0 -131
  378. package/coverage/src/concepts/utils/types.ts.html +0 -2092
  379. package/coverage/src/translator/types.ts.html +0 -256
  380. package/coverage/src/utils/i18nInfo.ts.html +0 -166
  381. package/coverage/src/utils/time-slicing/constant.ts.html +0 -196
  382. package/dist/README.md +0 -97
  383. package/dist/index.d.ts +0 -26
  384. package/dist/index.js +0 -397
  385. package/dist/index.js.map +0 -1
  386. package/dist/package.json +0 -91
  387. package/dist/src/automate/engine/index.d.ts +0 -4
  388. package/dist/src/automate/engine/operators.d.ts +0 -26
  389. package/dist/src/automate/engine/uniqueName.d.ts +0 -12
  390. package/dist/src/automate/engine/utils.d.ts +0 -25
  391. package/dist/src/automate/engine/viewCache.d.ts +0 -19
  392. package/dist/src/automate/template/myProcess.d.ts +0 -10
  393. package/dist/src/automate/upgrader/2.12.d.ts +0 -7
  394. package/dist/src/automate/upgrader/2.14-components.d.ts +0 -1115
  395. package/dist/src/automate/upgrader/2.14.d.ts +0 -10
  396. package/dist/src/automate/upgrader/2.14.old.d.ts +0 -1
  397. package/dist/src/automate/upgrader/2.16.d.ts +0 -10
  398. package/dist/src/automate/upgrader/2.17.d.ts +0 -21
  399. package/dist/src/automate/upgrader/2.18.d.ts +0 -10
  400. package/dist/src/automate/upgrader/2.20.d.ts +0 -17
  401. package/dist/src/bak/translator.d.ts +0 -1
  402. package/dist/src/breakpoint/generator/AfterStartNode.d.ts +0 -7
  403. package/dist/src/breakpoint/generator/BeforeEndNode.d.ts +0 -7
  404. package/dist/src/breakpoint/generator/BreakpointNode.d.ts +0 -20
  405. package/dist/src/breakpoint/generator/CallbackNode.d.ts +0 -4
  406. package/dist/src/breakpoint/generator/FragmentNode.d.ts +0 -4
  407. package/dist/src/breakpoint/generator/index.d.ts +0 -4
  408. package/dist/src/breakpoint/index.d.ts +0 -3
  409. package/dist/src/breakpoint/shared/constants.d.ts +0 -37
  410. package/dist/src/breakpoint/shared/index.d.ts +0 -3
  411. package/dist/src/breakpoint/shared/operations.d.ts +0 -10
  412. package/dist/src/breakpoint/shared/socket.d.ts +0 -48
  413. package/dist/src/breakpoint/shared/utils.d.ts +0 -27
  414. package/dist/src/breakpoint/store/core.d.ts +0 -80
  415. package/dist/src/breakpoint/store/dock.d.ts +0 -1
  416. package/dist/src/breakpoint/store/index.d.ts +0 -2
  417. package/dist/src/common/BaseNode.d.ts +0 -384
  418. package/dist/src/common/Command.d.ts +0 -21
  419. package/dist/src/common/ComponentAPI.d.ts +0 -112
  420. package/dist/src/common/EventEmitter.d.ts +0 -61
  421. package/dist/src/common/Messager.d.ts +0 -91
  422. package/dist/src/common/asyncFuncMap.d.ts +0 -2
  423. package/dist/src/common/index.d.ts +0 -4
  424. package/dist/src/common/utils.d.ts +0 -2
  425. package/dist/src/concepts/Abort__.d.ts +0 -31
  426. package/dist/src/concepts/AbstractInterface__.d.ts +0 -25
  427. package/dist/src/concepts/Anchor__.d.ts +0 -42
  428. package/dist/src/concepts/AnonymousFunction__.d.ts +0 -144
  429. package/dist/src/concepts/App__.d.ts +0 -1711
  430. package/dist/src/concepts/Argument__.d.ts +0 -64
  431. package/dist/src/concepts/Assignee__.d.ts +0 -294
  432. package/dist/src/concepts/AssignmentLine__.d.ts +0 -43
  433. package/dist/src/concepts/Assignment__.d.ts +0 -57
  434. package/dist/src/concepts/Attribute__.d.ts +0 -75
  435. package/dist/src/concepts/AuthInterface__.d.ts +0 -38
  436. package/dist/src/concepts/AuthLogicForCallInterface__.d.ts +0 -145
  437. package/dist/src/concepts/AuthLogic__.d.ts +0 -69
  438. package/dist/src/concepts/BackendVariable__.d.ts +0 -118
  439. package/dist/src/concepts/Backend__.d.ts +0 -127
  440. package/dist/src/concepts/BaseSetter__.d.ts +0 -25
  441. package/dist/src/concepts/BatchAssignment__.d.ts +0 -244
  442. package/dist/src/concepts/BinaryExpression__.d.ts +0 -61
  443. package/dist/src/concepts/BindAttribute__.d.ts +0 -284
  444. package/dist/src/concepts/BindDirective__.d.ts +0 -156
  445. package/dist/src/concepts/BindEvent__.d.ts +0 -246
  446. package/dist/src/concepts/BindStyle__.d.ts +0 -127
  447. package/dist/src/concepts/Block__.d.ts +0 -88
  448. package/dist/src/concepts/BooleanLiteral__.d.ts +0 -44
  449. package/dist/src/concepts/BusinessComponent__.d.ts +0 -640
  450. package/dist/src/concepts/BusinessLogic__.d.ts +0 -44
  451. package/dist/src/concepts/CallAuthInterface__.d.ts +0 -132
  452. package/dist/src/concepts/CallConnector__.d.ts +0 -55
  453. package/dist/src/concepts/CallEvent__.d.ts +0 -100
  454. package/dist/src/concepts/CallFunction__.d.ts +0 -171
  455. package/dist/src/concepts/CallInterface__.d.ts +0 -143
  456. package/dist/src/concepts/CallLogic__.d.ts +0 -224
  457. package/dist/src/concepts/CallQueryComponent__.d.ts +0 -383
  458. package/dist/src/concepts/CapsulesSetter__.d.ts +0 -109
  459. package/dist/src/concepts/Comment__.d.ts +0 -41
  460. package/dist/src/concepts/CompletionProperty__.d.ts +0 -87
  461. package/dist/src/concepts/ConfigGroup__.d.ts +0 -121
  462. package/dist/src/concepts/ConfigPropertyValue__.d.ts +0 -42
  463. package/dist/src/concepts/ConfigProperty__.d.ts +0 -147
  464. package/dist/src/concepts/Configuration__.d.ts +0 -120
  465. package/dist/src/concepts/Connection__.d.ts +0 -159
  466. package/dist/src/concepts/ConnectorLogic__.d.ts +0 -33
  467. package/dist/src/concepts/ConnectorTriggerLauncher__.d.ts +0 -44
  468. package/dist/src/concepts/ConnectorTrigger__.d.ts +0 -76
  469. package/dist/src/concepts/Connector__.d.ts +0 -532
  470. package/dist/src/concepts/Constant__.d.ts +0 -94
  471. package/dist/src/concepts/CountersignPolicy__.d.ts +0 -29
  472. package/dist/src/concepts/DataSource__.d.ts +0 -163
  473. package/dist/src/concepts/DatabaseTypeAnnotation__.d.ts +0 -35
  474. package/dist/src/concepts/DefaultValue__.d.ts +0 -94
  475. package/dist/src/concepts/Destination__.d.ts +0 -150
  476. package/dist/src/concepts/End__.d.ts +0 -30
  477. package/dist/src/concepts/EntityIndex__.d.ts +0 -93
  478. package/dist/src/concepts/EntityProperty__.d.ts +0 -255
  479. package/dist/src/concepts/Entity__.d.ts +0 -332
  480. package/dist/src/concepts/EnumItem__.d.ts +0 -83
  481. package/dist/src/concepts/EnumSelectSetter__.d.ts +0 -109
  482. package/dist/src/concepts/Enum__.d.ts +0 -133
  483. package/dist/src/concepts/EventDeclaration__.d.ts +0 -41
  484. package/dist/src/concepts/Event__.d.ts +0 -149
  485. package/dist/src/concepts/ExternalDestination__.d.ts +0 -63
  486. package/dist/src/concepts/ForEachStatement__.d.ts +0 -126
  487. package/dist/src/concepts/FrontendLibrary__.d.ts +0 -208
  488. package/dist/src/concepts/FrontendType__.d.ts +0 -304
  489. package/dist/src/concepts/FrontendVariable__.d.ts +0 -41
  490. package/dist/src/concepts/Frontend__.d.ts +0 -389
  491. package/dist/src/concepts/Function__.d.ts +0 -399
  492. package/dist/src/concepts/I18nInfo__.d.ts +0 -47
  493. package/dist/src/concepts/IconSetter__.d.ts +0 -29
  494. package/dist/src/concepts/Identifier__.d.ts +0 -66
  495. package/dist/src/concepts/IfStatement__.d.ts +0 -155
  496. package/dist/src/concepts/ImageSetter__.d.ts +0 -25
  497. package/dist/src/concepts/ImportedInterface__.d.ts +0 -29
  498. package/dist/src/concepts/InputSetter__.d.ts +0 -29
  499. package/dist/src/concepts/Integration__.d.ts +0 -127
  500. package/dist/src/concepts/InterfaceParam__.d.ts +0 -119
  501. package/dist/src/concepts/InterfaceTriggerEvent__.d.ts +0 -34
  502. package/dist/src/concepts/Interface__.d.ts +0 -323
  503. package/dist/src/concepts/JSBlock__.d.ts +0 -38
  504. package/dist/src/concepts/JavaLogic__.d.ts +0 -50
  505. package/dist/src/concepts/LogicDeclaration__.d.ts +0 -289
  506. package/dist/src/concepts/LogicItem__.d.ts +0 -171
  507. package/dist/src/concepts/Logic__.d.ts +0 -632
  508. package/dist/src/concepts/MatchCase__.d.ts +0 -264
  509. package/dist/src/concepts/Match__.d.ts +0 -122
  510. package/dist/src/concepts/MemberExpression__.d.ts +0 -64
  511. package/dist/src/concepts/MetadataType__.d.ts +0 -220
  512. package/dist/src/concepts/MicroApp__.d.ts +0 -53
  513. package/dist/src/concepts/Module__.d.ts +0 -1142
  514. package/dist/src/concepts/MsgTriggerEvent__.d.ts +0 -138
  515. package/dist/src/concepts/MsgTriggerLauncher__.d.ts +0 -119
  516. package/dist/src/concepts/MultiApprovalPolicy__.d.ts +0 -25
  517. package/dist/src/concepts/Namespace__.d.ts +0 -1060
  518. package/dist/src/concepts/NewComposite__.d.ts +0 -346
  519. package/dist/src/concepts/NewList__.d.ts +0 -135
  520. package/dist/src/concepts/NewMap__.d.ts +0 -226
  521. package/dist/src/concepts/New__.d.ts +0 -30
  522. package/dist/src/concepts/NullLiteral__.d.ts +0 -36
  523. package/dist/src/concepts/NumberInputSetter__.d.ts +0 -45
  524. package/dist/src/concepts/NumericLiteral__.d.ts +0 -53
  525. package/dist/src/concepts/OqlQueryComponent__.d.ts +0 -67
  526. package/dist/src/concepts/OverriddenLogic__.d.ts +0 -615
  527. package/dist/src/concepts/Paginate__.d.ts +0 -59
  528. package/dist/src/concepts/ParamWithGroup__.d.ts +0 -44
  529. package/dist/src/concepts/Param__.d.ts +0 -140
  530. package/dist/src/concepts/Point__.d.ts +0 -33
  531. package/dist/src/concepts/ProcessComponent__.d.ts +0 -214
  532. package/dist/src/concepts/ProcessElement__.d.ts +0 -620
  533. package/dist/src/concepts/ProcessOutcome__.d.ts +0 -35
  534. package/dist/src/concepts/ProcessOutcomes__.d.ts +0 -35
  535. package/dist/src/concepts/Process__.d.ts +0 -605
  536. package/dist/src/concepts/PropDeclaration__.d.ts +0 -99
  537. package/dist/src/concepts/PropertySelectSetter__.d.ts +0 -25
  538. package/dist/src/concepts/QueryAggregateExpression__.d.ts +0 -50
  539. package/dist/src/concepts/QueryFieldExpression__.d.ts +0 -66
  540. package/dist/src/concepts/QueryFromExpression__.d.ts +0 -107
  541. package/dist/src/concepts/QueryGroupByExpression__.d.ts +0 -46
  542. package/dist/src/concepts/QueryJoinExpression__.d.ts +0 -194
  543. package/dist/src/concepts/QueryLimitExpression__.d.ts +0 -46
  544. package/dist/src/concepts/QueryOrderByExpression__.d.ts +0 -57
  545. package/dist/src/concepts/QuerySelectExpression__.d.ts +0 -213
  546. package/dist/src/concepts/Rect__.d.ts +0 -41
  547. package/dist/src/concepts/Return__.d.ts +0 -120
  548. package/dist/src/concepts/Role__.d.ts +0 -58
  549. package/dist/src/concepts/SelectMembers__.d.ts +0 -134
  550. package/dist/src/concepts/SequentialPolicy__.d.ts +0 -25
  551. package/dist/src/concepts/SetterOption__.d.ts +0 -49
  552. package/dist/src/concepts/SlotDeclaration__.d.ts +0 -213
  553. package/dist/src/concepts/Slot__.d.ts +0 -53
  554. package/dist/src/concepts/SqlQueryComponent__.d.ts +0 -63
  555. package/dist/src/concepts/Start__.d.ts +0 -30
  556. package/dist/src/concepts/StaticString__.d.ts +0 -49
  557. package/dist/src/concepts/StringInterpolation__.d.ts +0 -122
  558. package/dist/src/concepts/StringLiteral__.d.ts +0 -51
  559. package/dist/src/concepts/StructureProperty__.d.ts +0 -119
  560. package/dist/src/concepts/Structure__.d.ts +0 -243
  561. package/dist/src/concepts/SwitchCase__.d.ts +0 -91
  562. package/dist/src/concepts/SwitchSetter__.d.ts +0 -25
  563. package/dist/src/concepts/SwitchStatement__.d.ts +0 -90
  564. package/dist/src/concepts/ThemeVariable__.d.ts +0 -29
  565. package/dist/src/concepts/Theme__.d.ts +0 -39
  566. package/dist/src/concepts/Transactional__.d.ts +0 -85
  567. package/dist/src/concepts/TriggerEvent__.d.ts +0 -42
  568. package/dist/src/concepts/TriggerLauncher__.d.ts +0 -76
  569. package/dist/src/concepts/TypeAnnotation__.d.ts +0 -303
  570. package/dist/src/concepts/TypeParam__.d.ts +0 -34
  571. package/dist/src/concepts/UnaryExpression__.d.ts +0 -45
  572. package/dist/src/concepts/Unparsed__.d.ts +0 -41
  573. package/dist/src/concepts/UseComponent__.d.ts +0 -33
  574. package/dist/src/concepts/ValidationRule__.d.ts +0 -133
  575. package/dist/src/concepts/Variable__.d.ts +0 -137
  576. package/dist/src/concepts/ViewBlockWithImage__.d.ts +0 -33
  577. package/dist/src/concepts/ViewBlock__.d.ts +0 -37
  578. package/dist/src/concepts/ViewComponentDeclaration__.d.ts +0 -721
  579. package/dist/src/concepts/ViewElement__.d.ts +0 -652
  580. package/dist/src/concepts/View__.d.ts +0 -728
  581. package/dist/src/concepts/WhileStatement__.d.ts +0 -94
  582. package/dist/src/concepts/basics/constants.d.ts +0 -1
  583. package/dist/src/concepts/basics/stdlib/index.d.ts +0 -16
  584. package/dist/src/concepts/basics/stdlib/nasl.auth.d.ts +0 -9
  585. package/dist/src/concepts/basics/stdlib/nasl.browser.d.ts +0 -5
  586. package/dist/src/concepts/basics/stdlib/nasl.collection.d.ts +0 -9
  587. package/dist/src/concepts/basics/stdlib/nasl.configuration.d.ts +0 -9
  588. package/dist/src/concepts/basics/stdlib/nasl.core.d.ts +0 -7
  589. package/dist/src/concepts/basics/stdlib/nasl.event.d.ts +0 -5
  590. package/dist/src/concepts/basics/stdlib/nasl.http.d.ts +0 -9
  591. package/dist/src/concepts/basics/stdlib/nasl.interface.d.ts +0 -9
  592. package/dist/src/concepts/basics/stdlib/nasl.io.d.ts +0 -5
  593. package/dist/src/concepts/basics/stdlib/nasl.logging.d.ts +0 -5
  594. package/dist/src/concepts/basics/stdlib/nasl.process.d.ts +0 -9
  595. package/dist/src/concepts/basics/stdlib/nasl.ui.d.ts +0 -9
  596. package/dist/src/concepts/basics/stdlib/nasl.util.d.ts +0 -6
  597. package/dist/src/concepts/basics/stdlib/nasl.validation.d.ts +0 -5
  598. package/dist/src/concepts/basics/stdlib/reference2TypeAnnotationList.d.ts +0 -4
  599. package/dist/src/concepts/basics/stdlib/timeZone.d.ts +0 -5
  600. package/dist/src/concepts/basics/types/coreTypeList.d.ts +0 -2
  601. package/dist/src/concepts/basics/types/index.d.ts +0 -17
  602. package/dist/src/concepts/index.d.ts +0 -7
  603. package/dist/src/concepts/index__.d.ts +0 -156
  604. package/dist/src/concepts/utils/asserts.d.ts +0 -7825
  605. package/dist/src/concepts/utils/quick-info.d.ts +0 -13
  606. package/dist/src/concepts/utils/types.d.ts +0 -510
  607. package/dist/src/config.d.ts +0 -52
  608. package/dist/src/decorators/index.d.ts +0 -67
  609. package/dist/src/decorators/promise.d.ts +0 -7
  610. package/dist/src/enums/KEYWORDS.d.ts +0 -6
  611. package/dist/src/enums/LEVEL_NAME_MAP.d.ts +0 -26
  612. package/dist/src/eventBus.d.ts +0 -3
  613. package/dist/src/generator/compileComponent.d.ts +0 -11
  614. package/dist/src/generator/genBundleFiles.d.ts +0 -37
  615. package/dist/src/generator/genHash.d.ts +0 -7
  616. package/dist/src/generator/genMetaData.d.ts +0 -31
  617. package/dist/src/generator/icestark.d.ts +0 -2
  618. package/dist/src/generator/index.d.ts +0 -7
  619. package/dist/src/generator/microApp.d.ts +0 -2
  620. package/dist/src/generator/permission.d.ts +0 -14
  621. package/dist/src/generator/qiankun.d.ts +0 -2
  622. package/dist/src/generator/release-body/body.d.ts +0 -42
  623. package/dist/src/generator/release-body/data.d.ts +0 -45
  624. package/dist/src/generator/release-body/index.d.ts +0 -2
  625. package/dist/src/generator/release-body/internal.d.ts +0 -622
  626. package/dist/src/generator/release-body/types.d.ts +0 -57
  627. package/dist/src/generator/release-body/utils.d.ts +0 -418
  628. package/dist/src/generator/release-body/validation.d.ts +0 -3
  629. package/dist/src/generator/styleReplacer.d.ts +0 -3
  630. package/dist/src/index.d.ts +0 -14
  631. package/dist/src/manager/diagnostic.d.ts +0 -39
  632. package/dist/src/manager/stepRecorder.d.ts +0 -20
  633. package/dist/src/natural/componentData.d.ts +0 -31
  634. package/dist/src/natural/genNaturalTS.d.ts +0 -241
  635. package/dist/src/natural/index.d.ts +0 -6
  636. package/dist/src/natural/naslStdlibMap.d.ts +0 -1
  637. package/dist/src/natural/prompt/analyzeClaims.d.ts +0 -1
  638. package/dist/src/natural/prompt/analyzeFormatOutput.d.ts +0 -1
  639. package/dist/src/natural/prompt/analyzeTasks.d.ts +0 -1
  640. package/dist/src/natural/prompt/executeClaims.d.ts +0 -1
  641. package/dist/src/natural/transformTSCode.d.ts +0 -7
  642. package/dist/src/sentry/index.d.ts +0 -34
  643. package/dist/src/server/createUiTs.d.ts +0 -17
  644. package/dist/src/server/entity2LogicNamespace.d.ts +0 -10
  645. package/dist/src/server/event.d.ts +0 -30
  646. package/dist/src/server/extendBaseNode.d.ts +0 -1
  647. package/dist/src/server/formatTsUtils.d.ts +0 -36
  648. package/dist/src/server/getConnector.d.ts +0 -15
  649. package/dist/src/server/getExtensionModules.d.ts +0 -3
  650. package/dist/src/server/getFunctions.d.ts +0 -3
  651. package/dist/src/server/getInterfaces.d.ts +0 -2
  652. package/dist/src/server/getLogging.d.ts +0 -1
  653. package/dist/src/server/getLogics.d.ts +0 -5
  654. package/dist/src/server/getMemberIdentifier.d.ts +0 -17
  655. package/dist/src/server/getProcessComponents.d.ts +0 -2
  656. package/dist/src/server/getProcesses.d.ts +0 -33
  657. package/dist/src/server/getScope.d.ts +0 -13
  658. package/dist/src/server/getValidates.d.ts +0 -3
  659. package/dist/src/server/index.d.ts +0 -5
  660. package/dist/src/server/naslServer.d.ts +0 -391
  661. package/dist/src/server/naslStdlibMap.d.ts +0 -2
  662. package/dist/src/server/process2LogicNamespace.d.ts +0 -26
  663. package/dist/src/server/translator.d.ts +0 -26
  664. package/dist/src/service/creator/add.configs.d.ts +0 -1
  665. package/dist/src/service/creator/errHandles.d.ts +0 -18
  666. package/dist/src/service/creator/index.d.ts +0 -1
  667. package/dist/src/service/datasource/api.d.ts +0 -12
  668. package/dist/src/service/datasource/index.d.ts +0 -2
  669. package/dist/src/service/logic/api.d.ts +0 -9
  670. package/dist/src/service/logic/checktypeSocket.d.ts +0 -5
  671. package/dist/src/service/logic/index.d.ts +0 -2
  672. package/dist/src/service/storage/api.d.ts +0 -54
  673. package/dist/src/service/storage/index.d.ts +0 -2
  674. package/dist/src/service/storage/init.d.ts +0 -105
  675. package/dist/src/service/storage/jsoner.d.ts +0 -36
  676. package/dist/src/service/storage/map.d.ts +0 -4
  677. package/dist/src/service/storage/service.d.ts +0 -25
  678. package/dist/src/service/storage/storagePoint.d.ts +0 -17
  679. package/dist/src/service/video/BaseService.d.ts +0 -7
  680. package/dist/src/service/video/MainCallbackService.d.ts +0 -12
  681. package/dist/src/service/video/VideoTranscribe.d.ts +0 -15
  682. package/dist/src/service/video/publishService.d.ts +0 -1
  683. package/dist/src/templator/genCallComponentLogic.d.ts +0 -17
  684. package/dist/src/templator/genCreateBlock.d.ts +0 -10
  685. package/dist/src/templator/genCurdEditMultipleKeyBlock.d.ts +0 -8
  686. package/dist/src/templator/genCurdMultipleKeyBlock.d.ts +0 -61
  687. package/dist/src/templator/genEditTableBlock.d.ts +0 -51
  688. package/dist/src/templator/genEnumSelectBlock.d.ts +0 -10
  689. package/dist/src/templator/genGetBlock.d.ts +0 -6
  690. package/dist/src/templator/genGridViewBlock.d.ts +0 -55
  691. package/dist/src/templator/genListViewBlock.d.ts +0 -19
  692. package/dist/src/templator/genQueryComponent.d.ts +0 -34
  693. package/dist/src/templator/genSelectBlock.d.ts +0 -45
  694. package/dist/src/templator/genTableBlock.d.ts +0 -55
  695. package/dist/src/templator/genUpdateBlock.d.ts +0 -6
  696. package/dist/src/templator/index.d.ts +0 -19
  697. package/dist/src/templator/utils.d.ts +0 -683
  698. package/dist/src/translator/constant.d.ts +0 -6
  699. package/dist/src/translator/index.d.ts +0 -3
  700. package/dist/src/translator/types.d.ts +0 -85
  701. package/dist/src/translator/utils.d.ts +0 -47
  702. package/dist/src/utils/cookie.d.ts +0 -9
  703. package/dist/src/utils/create.d.ts +0 -2
  704. package/dist/src/utils/env.d.ts +0 -2
  705. package/dist/src/utils/file.d.ts +0 -33
  706. package/dist/src/utils/i18nInfo.d.ts +0 -5
  707. package/dist/src/utils/index.d.ts +0 -72
  708. package/dist/src/utils/logger.d.ts +0 -8
  709. package/dist/src/utils/sortTsString.d.ts +0 -1
  710. package/dist/src/utils/string.d.ts +0 -64
  711. package/dist/src/utils/time-slicing/constant.d.ts +0 -35
  712. package/dist/src/utils/time-slicing/controller.d.ts +0 -53
  713. package/dist/src/utils/time-slicing/index.d.ts +0 -5
  714. package/dist/src/utils/time-slicing/page-state.d.ts +0 -2
  715. package/dist/src/utils/time-slicing/performance.d.ts +0 -11
  716. package/dist/src/utils/time-slicing/runner.d.ts +0 -12
  717. package/dist/src/utils/time-slicing/tool.d.ts +0 -24
  718. package/dist/src/utils/time-slicing/utils.d.ts +0 -62
  719. package/dist/src/utils/time-slicing/wrapper.d.ts +0 -18
  720. package/dist/src/utils/traverse.d.ts +0 -36
  721. package/dist/src/utils/types.d.ts +0 -13
  722. package/dist/src/utils/window.d.ts +0 -7
  723. package/dist/test/concepts/anonymous-function/constant.d.ts +0 -2
  724. package/dist/test/concepts/anonymous-function/toEmbeddedTS.spec.d.ts +0 -1
  725. package/dist/test/concepts/anonymous-function/toJS.spec.d.ts +0 -1
  726. package/dist/test/concepts/anonymous-function/toVue.spec.d.ts +0 -1
  727. package/dist/test/concepts/assignment/constant.d.ts +0 -2
  728. package/dist/test/concepts/assignment/toEmbeddedTS.spec.d.ts +0 -1
  729. package/dist/test/concepts/assignment/toJS.spec.d.ts +0 -1
  730. package/dist/test/concepts/assignment/toVue.spec.d.ts +0 -1
  731. package/dist/test/concepts/batch-assignment/constant.d.ts +0 -2
  732. package/dist/test/concepts/batch-assignment/toEmbeddedTS.spec.d.ts +0 -1
  733. package/dist/test/concepts/batch-assignment/toJS.spec.d.ts +0 -1
  734. package/dist/test/concepts/batch-assignment/toVue.spec.d.ts +0 -1
  735. package/dist/test/concepts/binary-expression/constant.d.ts +0 -2
  736. package/dist/test/concepts/binary-expression/getQuickInfoOffset.spec.d.ts +0 -1
  737. package/dist/test/concepts/binary-expression/toEmbeddedTS.spec.d.ts +0 -1
  738. package/dist/test/concepts/binary-expression/toJS.spec.d.ts +0 -1
  739. package/dist/test/concepts/binary-expression/toVue.spec.d.ts +0 -1
  740. package/dist/test/concepts/boolean-literal/constant.d.ts +0 -2
  741. package/dist/test/concepts/boolean-literal/toEmbeddedTS.spec.d.ts +0 -1
  742. package/dist/test/concepts/boolean-literal/toJS.spec.d.ts +0 -1
  743. package/dist/test/concepts/boolean-literal/toVue.spec.d.ts +0 -1
  744. package/dist/test/concepts/call-function/constant.d.ts +0 -2
  745. package/dist/test/concepts/call-function/getQuickInfoOffset.spec.d.ts +0 -1
  746. package/dist/test/concepts/call-function/toEmbeddedTS.spec.d.ts +0 -1
  747. package/dist/test/concepts/call-function/toJS.spec.d.ts +0 -1
  748. package/dist/test/concepts/call-interface/constant.d.ts +0 -2
  749. package/dist/test/concepts/call-interface/getQuickInfoOffset.spec.d.ts +0 -1
  750. package/dist/test/concepts/call-interface/toEmbeddedTS.spec.d.ts +0 -1
  751. package/dist/test/concepts/call-interface/toJS.spec.d.ts +0 -1
  752. package/dist/test/concepts/call-logic/constant.d.ts +0 -2
  753. package/dist/test/concepts/call-logic/getQuickInfoOffset.spec.d.ts +0 -1
  754. package/dist/test/concepts/call-logic/toEmbeddedTS.spec.d.ts +0 -1
  755. package/dist/test/concepts/call-logic/toJS.spec.d.ts +0 -1
  756. package/dist/test/concepts/call-logic/toUI.spec.d.ts +0 -1
  757. package/dist/test/concepts/call-logic/toVue.spec.d.ts +0 -1
  758. package/dist/test/concepts/call-logic/toVueDesigner.spec.d.ts +0 -1
  759. package/dist/test/concepts/data-source/constant.d.ts +0 -2
  760. package/dist/test/concepts/data-source/toEmbeddedTS.spec.d.ts +0 -1
  761. package/dist/test/concepts/data-source/toEmbeddedTSFile.spec.d.ts +0 -1
  762. package/dist/test/concepts/entity/constant.d.ts +0 -2
  763. package/dist/test/concepts/entity/toEmbeddedTS.spec.d.ts +0 -1
  764. package/dist/test/concepts/entity/toEmbeddedTSFile.spec.d.ts +0 -1
  765. package/dist/test/concepts/identifier/constant.d.ts +0 -2
  766. package/dist/test/concepts/identifier/toEmbeddedTS.spec.d.ts +0 -1
  767. package/dist/test/concepts/identifier/toJS.spec.d.ts +0 -1
  768. package/dist/test/concepts/identifier/toVue.spec.d.ts +0 -1
  769. package/dist/test/concepts/match/constant.d.ts +0 -2
  770. package/dist/test/concepts/match/toEmbeddedTS.spec.d.ts +0 -1
  771. package/dist/test/concepts/match/toJS.spec.d.ts +0 -1
  772. package/dist/test/concepts/member-expression/constant.d.ts +0 -2
  773. package/dist/test/concepts/member-expression/toEmbeddedTS.spec.d.ts +0 -1
  774. package/dist/test/concepts/member-expression/toJS.spec.d.ts +0 -1
  775. package/dist/test/concepts/member-expression/toVue.spec.d.ts +0 -1
  776. package/dist/test/concepts/new-composite/constant.d.ts +0 -2
  777. package/dist/test/concepts/new-composite/getQuickInfoOffset.spec.d.ts +0 -1
  778. package/dist/test/concepts/new-composite/toEmbeddedTS.spec.d.ts +0 -1
  779. package/dist/test/concepts/new-composite/toJS.spec.d.ts +0 -1
  780. package/dist/test/concepts/new-list/constant.d.ts +0 -2
  781. package/dist/test/concepts/new-list/getQuickInfoOffset.spec.d.ts +0 -1
  782. package/dist/test/concepts/new-list/toEmbeddedTS.spec.d.ts +0 -1
  783. package/dist/test/concepts/new-list/toJS.spec.d.ts +0 -1
  784. package/dist/test/concepts/new-map/constant.d.ts +0 -2
  785. package/dist/test/concepts/new-map/getQuickInfoOffset.spec.d.ts +0 -1
  786. package/dist/test/concepts/new-map/toEmbeddedTS.spec.d.ts +0 -1
  787. package/dist/test/concepts/new-map/toJS.spec.d.ts +0 -1
  788. package/dist/test/concepts/null-literal/constant.d.ts +0 -2
  789. package/dist/test/concepts/null-literal/toEmbeddedTS.spec.d.ts +0 -1
  790. package/dist/test/concepts/null-literal/toJS.spec.d.ts +0 -1
  791. package/dist/test/concepts/null-literal/toVue.spec.d.ts +0 -1
  792. package/dist/test/concepts/numeric-literal/constant.d.ts +0 -2
  793. package/dist/test/concepts/numeric-literal/toEmbeddedTS.spec.d.ts +0 -1
  794. package/dist/test/concepts/numeric-literal/toJS.spec.d.ts +0 -1
  795. package/dist/test/concepts/numeric-literal/toVue.spec.d.ts +0 -1
  796. package/dist/test/concepts/string-literal/constant.d.ts +0 -2
  797. package/dist/test/concepts/string-literal/toEmbeddedTS.spec.d.ts +0 -1
  798. package/dist/test/concepts/string-literal/toJS.spec.d.ts +0 -1
  799. package/dist/test/concepts/string-literal/toVue.spec.d.ts +0 -1
  800. package/dist/test/concepts/utils.d.ts +0 -13
  801. package/dist/test/concepts/validation-rule/constant.d.ts +0 -2
  802. package/dist/test/concepts/validation-rule/toEmbeddedTS.spec.d.ts +0 -1
  803. package/dist/test/concepts/validation-rule/toJS.spec.d.ts +0 -1
  804. package/dist/test/concepts/validation-rule/validation-rule.spec.d.ts +0 -1
  805. package/dist/test/concepts/view-element/constant.d.ts +0 -2
  806. package/dist/test/concepts/view-element/toEmbeddedTS.spec.d.ts +0 -1
  807. package/dist/test/concepts/view-element/toVue.spec.d.ts +0 -1
  808. package/dist/test/setup.d.ts +0 -1
  809. package/dist/test/time-slicing/runner.spec.d.ts +0 -1
  810. package/dist/test/time-slicing/time-slicing-nodejs.spec.d.ts +0 -1
  811. package/dist/test/time-slicing/utils.d.ts +0 -1
  812. package/dist/test/time-slicing/wrapper.spec.d.ts +0 -1
@@ -38,6 +38,7 @@ const time_slicing_1 = require("../utils/time-slicing");
38
38
  const common_1 = require("../common");
39
39
  const translator_1 = require("../translator");
40
40
  const constants_1 = require("./basics/constants");
41
+ const semanticData_1 = require("../../../nasl/src/server/semanticData");
41
42
  const decorators_1 = require("../decorators");
42
43
  const utils = __importStar(require("../utils"));
43
44
  const asserts = __importStar(require("./utils/asserts"));
@@ -861,58 +862,8 @@ let Logic = Logic_1 = class Logic extends Annotatable__1.default {
861
862
  // 需要类型推导的局部变量/返回值需要调整申明顺序
862
863
  const advanceMap = new Map();
863
864
  const callFunctionAdvanceMap = new Map();
865
+ yield* (0, semanticData_1.reCollectTyInferCtx)(advanceMap, callFunctionAdvanceMap, self);
864
866
  const IDENTIFIERMAP = new Set();
865
- // const needGetSourceMapOqlList: Promise<any>[] = [];
866
- yield* self.traverseChildrenGenerator(function* traverseChildrenGenerator(el) {
867
- if (el &&
868
- // 批量赋值
869
- (asserts.isBatchAssignment(el) ||
870
- // 赋值
871
- (asserts.isAssignment(el) && el.left?.name) ||
872
- // 内置函数对集合类型的推导
873
- (asserts.isCallFunction(el) && el.derivablecollection?.name))) {
874
- if (el?.getAncestor('SubLogic')) {
875
- return;
876
- }
877
- if (asserts.isAssignment(el)) {
878
- const advanceVar = self.variables?.find((variable) => !variable.typeAnnotation && el.left?.name === variable.name);
879
- if (advanceVar && !advanceMap.get(advanceVar)) {
880
- advanceMap.set(advanceVar, el);
881
- }
882
- const advanceRn = self.returns?.find((ret) => !ret.typeAnnotation && el.left?.name === ret.name);
883
- if (advanceRn && !advanceMap.get(advanceRn)) {
884
- advanceMap.set(advanceRn, el);
885
- }
886
- }
887
- else if (asserts.isCallFunction(el)) {
888
- // 需要被推导的集合
889
- const expression = el.derivablecollection;
890
- // 宽泛意义上的变量(变量+出参)
891
- const advanceVar = [...(self.variables || []), ...(self.returns || [])].find((variable) => {
892
- return !variable.typeAnnotation && expression?.name === variable.name;
893
- });
894
- if (advanceVar && !callFunctionAdvanceMap.get(advanceVar)) {
895
- callFunctionAdvanceMap.set(advanceVar, el);
896
- }
897
- }
898
- else if (asserts.isBatchAssignment(el)) {
899
- yield* (0, time_slicing_1.wrapForEachToGenerator)(el.assignmentLines, function* warpForEachGenerator({ leftIndex }) {
900
- const leftCode = leftIndex.length === 1
901
- ? yield* el.left.expression.toEmbeddedTS((0, translator_1.shiftState)(state, code, { inline: true }))
902
- : yield* el.left.members[leftIndex[1]]?.toEmbeddedTS((0, translator_1.shiftState)(state, code, { inline: true })) ??
903
- (0, time_slicing_1.returnOrigin)('');
904
- const advanceVar = self.variables?.find((variable) => !variable.typeAnnotation && leftCode === variable.name);
905
- if (advanceVar && !advanceMap.get(advanceVar)) {
906
- advanceMap.set(advanceVar, el);
907
- }
908
- const advanceRn = self.returns?.find((ret) => !ret.typeAnnotation && leftCode === ret.name);
909
- if (advanceRn && !advanceMap.get(advanceRn)) {
910
- advanceMap.set(advanceRn, el);
911
- }
912
- });
913
- }
914
- }
915
- });
916
867
  for (const variable of self.variables) {
917
868
  const ts = yield* variable.defaultValue?.toEmbeddedTS?.() ?? utils.returnOrigin('');
918
869
  if (['__IDENTIFIER__', '__IDENTIFIER__()'].includes(ts)) {
@@ -1171,56 +1122,7 @@ let Logic = Logic_1 = class Logic extends Annotatable__1.default {
1171
1122
  // 需要类型推导的局部变量/返回值需要调整申明顺序
1172
1123
  const advanceMap = new Map();
1173
1124
  const callFunctionAdvanceMap = new Map();
1174
- yield* self.traverseChildrenGenerator(function* traverseChildrenGenerator(el) {
1175
- if (el &&
1176
- // 批量赋值
1177
- (asserts.isBatchAssignment(el) ||
1178
- // 赋值
1179
- (asserts.isAssignment(el) && el.left?.name) ||
1180
- // 内置函数对集合类型的推导
1181
- (asserts.isCallFunction(el) && el.derivablecollection?.name))) {
1182
- if (el?.getAncestor('SubLogic')) {
1183
- return;
1184
- }
1185
- if (asserts.isAssignment(el)) {
1186
- const advanceVar = self.variables?.find((variable) => !variable.typeAnnotation && el.left?.name === variable.name);
1187
- if (advanceVar && !advanceMap.get(advanceVar)) {
1188
- advanceMap.set(advanceVar, el);
1189
- }
1190
- const advanceRn = self.returns?.find((ret) => !ret.typeAnnotation && el.left?.name === ret.name);
1191
- if (advanceRn && !advanceMap.get(advanceRn)) {
1192
- advanceMap.set(advanceRn, el);
1193
- }
1194
- }
1195
- else if (asserts.isCallFunction(el)) {
1196
- // 需要被推导的集合
1197
- const expression = el.derivablecollection;
1198
- // 宽泛意义上的变量(变量+出参)
1199
- const advanceVar = [...(self.variables || []), ...(self.returns || [])].find((variable) => {
1200
- return !variable.typeAnnotation && expression?.name === variable.name;
1201
- });
1202
- if (advanceVar && !callFunctionAdvanceMap.get(advanceVar)) {
1203
- callFunctionAdvanceMap.set(advanceVar, el);
1204
- }
1205
- }
1206
- else if (asserts.isBatchAssignment(el)) {
1207
- yield* (0, time_slicing_1.wrapForEachToGenerator)(el.assignmentLines, function* warpForEachGenerator({ leftIndex }) {
1208
- const leftCode = leftIndex.length === 1
1209
- ? yield* el.left.expression.toEmbeddedTS((0, translator_1.shiftState)(state, code, { inline: true }))
1210
- : yield* el.left.members[leftIndex[1]]?.toEmbeddedTS((0, translator_1.shiftState)(state, code, { inline: true })) ??
1211
- (0, time_slicing_1.returnOrigin)('');
1212
- const advanceVar = self.variables?.find((variable) => !variable.typeAnnotation && leftCode === variable.name);
1213
- if (advanceVar && !advanceMap.get(advanceVar)) {
1214
- advanceMap.set(advanceVar, el);
1215
- }
1216
- const advanceRn = self.returns?.find((ret) => !ret.typeAnnotation && leftCode === ret.name);
1217
- if (advanceRn && !advanceMap.get(advanceRn)) {
1218
- advanceMap.set(advanceRn, el);
1219
- }
1220
- });
1221
- }
1222
- }
1223
- });
1125
+ yield* (0, semanticData_1.reCollectTyInferCtx)(advanceMap, callFunctionAdvanceMap, self);
1224
1126
  const needChooseParamTypes = completeTypeParams.filter((typeParam) => typeParam.needChoose);
1225
1127
  // 兼容 return 没有类型情况
1226
1128
  /**
@@ -2112,6 +2014,9 @@ let Logic = Logic_1 = class Logic extends Annotatable__1.default {
2112
2014
  return this.view || this?.getAncestor('BusinessComponent');
2113
2015
  }
2114
2016
  getSubLogics() {
2017
+ if (semanticData_1.varScopeCtx.isFirstScreen) {
2018
+ return;
2019
+ }
2115
2020
  const subLogics = this.findNaslNodeByBFS((node) => {
2116
2021
  if (node?.concept === 'SubLogic') {
2117
2022
  return true;
@@ -1 +1 @@
1
- {"version":3,"file":"Logic__.js","sourceRoot":"","sources":["../../src/concepts/Logic__.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Logic__.js","sourceRoot":"","sources":["../../src/concepts/Logic__.ts"],"names":[],"mappings":"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"}
@@ -45,7 +45,7 @@ export declare class MemberExpression extends LogicItem {
45
45
  isEnum(): boolean;
46
46
  isDefaultValueExpression(getVuePrototype: boolean): boolean;
47
47
  getValue(): string;
48
- transfromAtrrLogic(options?: {
48
+ transformAtrrLogic(options?: {
49
49
  type: 'toVue' | 'toJS';
50
50
  }): string;
51
51
  get completeName(): string;
@@ -119,7 +119,7 @@ let MemberExpression = MemberExpression_1 = class MemberExpression extends Logic
119
119
  if (asserts.isMemberExpression(this.object) &&
120
120
  this.object?.object?.name === 'elements' &&
121
121
  this.object?.property?.name === '$ce') {
122
- return this.transfromAtrrLogic({ type: 'toVue' });
122
+ return this.transformAtrrLogic({ type: 'toVue' });
123
123
  }
124
124
  const object = String(this.object?.toVue(options)); // undefined 也让正常展示
125
125
  const property = String(this.property?.toVue(options));
@@ -219,7 +219,7 @@ let MemberExpression = MemberExpression_1 = class MemberExpression extends Logic
219
219
  asserts.isMemberExpression(this.object) &&
220
220
  this.object?.object?.name === 'elements' &&
221
221
  this.object?.property?.name === '$ce') {
222
- return this.transfromAtrrLogic();
222
+ return this.transformAtrrLogic();
223
223
  }
224
224
  const object = this.object?.toJS(state);
225
225
  const property = this.property?.toJS(state);
@@ -317,9 +317,12 @@ let MemberExpression = MemberExpression_1 = class MemberExpression extends Logic
317
317
  value = value ? `${currentValue}.${value}` : currentValue || '';
318
318
  return value;
319
319
  }
320
- transfromAtrrLogic(options) {
320
+ transformAtrrLogic(options) {
321
321
  const { type = 'toJS' } = options || {};
322
322
  const elementName = this.getAncestor('ViewElement')?.name;
323
+ // varScopeCtx.isFirstScreen
324
+ // ? varScopeCtx.memExprToViewElem.get(this)?.name
325
+ // : this.getAncestor('ViewElement')?.name;
323
326
  let element;
324
327
  let elementTag;
325
328
  // 根据elementName获取组件tag
@@ -388,6 +391,15 @@ let MemberExpression = MemberExpression_1 = class MemberExpression extends Logic
388
391
  *toEmbeddedTS(state = (0, translator_1.createCompilerState)()) {
389
392
  const self = this;
390
393
  let code = '';
394
+ // 变量提升且是调用逻辑取属性,此时需要翻译为立即执行函数规避 TS 的 BUG
395
+ if (asserts.isCallLogic(self.object) && state.isVariableHost) {
396
+ code += '(() => {\nconst __$1 = ';
397
+ code += `${yield* self.object.toEmbeddedTS((0, translator_1.shiftState)(state, code, { inline: true }))};\n`;
398
+ code += `return __$1.`;
399
+ code += self.property ? yield* self.property.toEmbeddedTS((0, translator_1.shiftState)(state, code, { inline: true })) : '';
400
+ code += ';})()';
401
+ return code;
402
+ }
391
403
  const leftCode = self.object
392
404
  ? `${yield* self.object.toEmbeddedTS((0, translator_1.shiftState)(state, code, { inline: true }))}.`
393
405
  : '';