@lcap/nasl 3.8.2-beta.7 → 3.8.2-beta.9

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 (810) 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.js +5 -3
  290. package/out/common/BaseNode.js.map +1 -1
  291. package/out/common/ComponentAPI.d.ts +9 -0
  292. package/out/concepts/AuthLogicForCallInterface__.js +21 -6
  293. package/out/concepts/AuthLogicForCallInterface__.js.map +1 -1
  294. package/out/concepts/BusinessComponent__.js +25 -9
  295. package/out/concepts/BusinessComponent__.js.map +1 -1
  296. package/out/concepts/BusinessLogic__.js +21 -6
  297. package/out/concepts/BusinessLogic__.js.map +1 -1
  298. package/out/concepts/CallInterface__.js +14 -4
  299. package/out/concepts/CallInterface__.js.map +1 -1
  300. package/out/concepts/CallLogic__.d.ts +1 -0
  301. package/out/concepts/CallLogic__.js +25 -10
  302. package/out/concepts/CallLogic__.js.map +1 -1
  303. package/out/concepts/EnumItem__.js +2 -2
  304. package/out/concepts/EnumItem__.js.map +1 -1
  305. package/out/concepts/Logic__.js +22 -7
  306. package/out/concepts/Logic__.js.map +1 -1
  307. package/out/concepts/MemberExpression__.js +19 -13
  308. package/out/concepts/MemberExpression__.js.map +1 -1
  309. package/out/concepts/OverriddenLogic__.js +21 -6
  310. package/out/concepts/OverriddenLogic__.js.map +1 -1
  311. package/out/concepts/ViewElement__.js +35 -20
  312. package/out/concepts/ViewElement__.js.map +1 -1
  313. package/out/concepts/View__.js +32 -14
  314. package/out/concepts/View__.js.map +1 -1
  315. package/out/concepts/basics/stdlib/nasl.processV2.js +78 -0
  316. package/out/concepts/basics/stdlib/nasl.processV2.js.map +1 -1
  317. package/out/concepts/basics/stdlib/nasl.ui.js +40 -40
  318. package/out/concepts/basics/stdlib/nasl.ui.js.map +1 -1
  319. package/out/generator/genBundleFiles.js +1 -1
  320. package/out/generator/genBundleFiles.js.map +1 -1
  321. package/out/generator/release-body/utils.js +1 -1
  322. package/out/natural/getContext/index.js +7 -4
  323. package/out/natural/getContext/index.js.map +1 -1
  324. package/out/natural/tools.js +9 -3
  325. package/out/natural/tools.js.map +1 -1
  326. package/out/natural/transformTS2UI.js +20 -14
  327. package/out/natural/transformTS2UI.js.map +1 -1
  328. package/out/server/getMemberIdentifier.js +11 -17
  329. package/out/server/getMemberIdentifier.js.map +1 -1
  330. package/out/server/naslServer.js +8 -2
  331. package/out/server/naslServer.js.map +1 -1
  332. package/package.json +1 -1
  333. package/sandbox/stdlib/nasl.processV2.ts +19 -0
  334. package/sandbox/stdlib/nasl.ui.ts +8 -8
  335. package/src/common/BaseNode.ts +5 -3
  336. package/src/common/ComponentAPI.ts +7 -0
  337. package/src/concepts/AuthLogicForCallInterface__.ts +23 -6
  338. package/src/concepts/BusinessComponent__.ts +27 -9
  339. package/src/concepts/BusinessLogic__.ts +23 -6
  340. package/src/concepts/CallInterface__.ts +12 -5
  341. package/src/concepts/CallLogic__.ts +31 -10
  342. package/src/concepts/EnumItem__.ts +2 -2
  343. package/src/concepts/Logic__.ts +27 -10
  344. package/src/concepts/MemberExpression__.ts +20 -13
  345. package/src/concepts/OverriddenLogic__.ts +23 -6
  346. package/src/concepts/ViewElement__.ts +41 -21
  347. package/src/concepts/View__.ts +35 -14
  348. package/src/concepts/basics/stdlib/nasl.processV2.ts +79 -0
  349. package/src/concepts/basics/stdlib/nasl.ui.ts +40 -40
  350. package/src/generator/genBundleFiles.ts +1 -1
  351. package/src/generator/release-body/utils.ts +1 -1
  352. package/src/natural/getContext/index.ts +8 -5
  353. package/src/natural/tools.ts +9 -3
  354. package/src/natural/transformTS2UI.ts +19 -14
  355. package/src/server/getMemberIdentifier.ts +14 -14
  356. package/src/server/naslServer.ts +8 -2
  357. package/test/concepts/member-expression/__snapshots__/toJS.spec.ts.snap +1 -1
  358. package/test/concepts/member-expression/__snapshots__/toVue.spec.ts.snap +1 -1
  359. package/.nyc_output/fe4ca6db-1eb6-4898-8aa5-ba8f8d4128f2.json +0 -1
  360. package/.nyc_output/processinfo/fe4ca6db-1eb6-4898-8aa5-ba8f8d4128f2.json +0 -1
  361. package/coverage/src/common/utils.ts.html +0 -136
  362. package/coverage/src/concepts/AbstractInterface__.ts.html +0 -277
  363. package/coverage/src/concepts/Block__.ts.html +0 -907
  364. package/coverage/src/concepts/CountersignPolicy__.ts.html +0 -319
  365. package/coverage/src/concepts/DefaultValue__.ts.html +0 -1024
  366. package/coverage/src/concepts/I18nInfo__.ts.html +0 -424
  367. package/coverage/src/concepts/ImportedInterface__.ts.html +0 -262
  368. package/coverage/src/concepts/MetadataType__.ts.html +0 -2035
  369. package/coverage/src/concepts/MultiApprovalPolicy__.ts.html +0 -301
  370. package/coverage/src/concepts/SequentialPolicy__.ts.html +0 -265
  371. package/coverage/src/concepts/StaticString__.ts.html +0 -397
  372. package/coverage/src/concepts/basics/constants.ts.html +0 -88
  373. package/coverage/src/concepts/basics/index.html +0 -116
  374. package/coverage/src/concepts/utils/asserts.ts.html +0 -28675
  375. package/coverage/src/concepts/utils/index.html +0 -131
  376. package/coverage/src/concepts/utils/types.ts.html +0 -2092
  377. package/coverage/src/translator/types.ts.html +0 -256
  378. package/coverage/src/utils/i18nInfo.ts.html +0 -166
  379. package/coverage/src/utils/time-slicing/constant.ts.html +0 -196
  380. package/dist/README.md +0 -97
  381. package/dist/index.d.ts +0 -26
  382. package/dist/index.js +0 -397
  383. package/dist/index.js.map +0 -1
  384. package/dist/package.json +0 -91
  385. package/dist/src/automate/engine/index.d.ts +0 -4
  386. package/dist/src/automate/engine/operators.d.ts +0 -26
  387. package/dist/src/automate/engine/uniqueName.d.ts +0 -12
  388. package/dist/src/automate/engine/utils.d.ts +0 -25
  389. package/dist/src/automate/engine/viewCache.d.ts +0 -19
  390. package/dist/src/automate/template/myProcess.d.ts +0 -10
  391. package/dist/src/automate/upgrader/2.12.d.ts +0 -7
  392. package/dist/src/automate/upgrader/2.14-components.d.ts +0 -1115
  393. package/dist/src/automate/upgrader/2.14.d.ts +0 -10
  394. package/dist/src/automate/upgrader/2.14.old.d.ts +0 -1
  395. package/dist/src/automate/upgrader/2.16.d.ts +0 -10
  396. package/dist/src/automate/upgrader/2.17.d.ts +0 -21
  397. package/dist/src/automate/upgrader/2.18.d.ts +0 -10
  398. package/dist/src/automate/upgrader/2.20.d.ts +0 -17
  399. package/dist/src/bak/translator.d.ts +0 -1
  400. package/dist/src/breakpoint/generator/AfterStartNode.d.ts +0 -7
  401. package/dist/src/breakpoint/generator/BeforeEndNode.d.ts +0 -7
  402. package/dist/src/breakpoint/generator/BreakpointNode.d.ts +0 -20
  403. package/dist/src/breakpoint/generator/CallbackNode.d.ts +0 -4
  404. package/dist/src/breakpoint/generator/FragmentNode.d.ts +0 -4
  405. package/dist/src/breakpoint/generator/index.d.ts +0 -4
  406. package/dist/src/breakpoint/index.d.ts +0 -3
  407. package/dist/src/breakpoint/shared/constants.d.ts +0 -37
  408. package/dist/src/breakpoint/shared/index.d.ts +0 -3
  409. package/dist/src/breakpoint/shared/operations.d.ts +0 -10
  410. package/dist/src/breakpoint/shared/socket.d.ts +0 -48
  411. package/dist/src/breakpoint/shared/utils.d.ts +0 -27
  412. package/dist/src/breakpoint/store/core.d.ts +0 -80
  413. package/dist/src/breakpoint/store/dock.d.ts +0 -1
  414. package/dist/src/breakpoint/store/index.d.ts +0 -2
  415. package/dist/src/common/BaseNode.d.ts +0 -384
  416. package/dist/src/common/Command.d.ts +0 -21
  417. package/dist/src/common/ComponentAPI.d.ts +0 -112
  418. package/dist/src/common/EventEmitter.d.ts +0 -61
  419. package/dist/src/common/Messager.d.ts +0 -91
  420. package/dist/src/common/asyncFuncMap.d.ts +0 -2
  421. package/dist/src/common/index.d.ts +0 -4
  422. package/dist/src/common/utils.d.ts +0 -2
  423. package/dist/src/concepts/Abort__.d.ts +0 -31
  424. package/dist/src/concepts/AbstractInterface__.d.ts +0 -25
  425. package/dist/src/concepts/Anchor__.d.ts +0 -42
  426. package/dist/src/concepts/AnonymousFunction__.d.ts +0 -144
  427. package/dist/src/concepts/App__.d.ts +0 -1711
  428. package/dist/src/concepts/Argument__.d.ts +0 -64
  429. package/dist/src/concepts/Assignee__.d.ts +0 -294
  430. package/dist/src/concepts/AssignmentLine__.d.ts +0 -43
  431. package/dist/src/concepts/Assignment__.d.ts +0 -57
  432. package/dist/src/concepts/Attribute__.d.ts +0 -75
  433. package/dist/src/concepts/AuthInterface__.d.ts +0 -38
  434. package/dist/src/concepts/AuthLogicForCallInterface__.d.ts +0 -145
  435. package/dist/src/concepts/AuthLogic__.d.ts +0 -69
  436. package/dist/src/concepts/BackendVariable__.d.ts +0 -118
  437. package/dist/src/concepts/Backend__.d.ts +0 -127
  438. package/dist/src/concepts/BaseSetter__.d.ts +0 -25
  439. package/dist/src/concepts/BatchAssignment__.d.ts +0 -244
  440. package/dist/src/concepts/BinaryExpression__.d.ts +0 -61
  441. package/dist/src/concepts/BindAttribute__.d.ts +0 -284
  442. package/dist/src/concepts/BindDirective__.d.ts +0 -156
  443. package/dist/src/concepts/BindEvent__.d.ts +0 -246
  444. package/dist/src/concepts/BindStyle__.d.ts +0 -127
  445. package/dist/src/concepts/Block__.d.ts +0 -88
  446. package/dist/src/concepts/BooleanLiteral__.d.ts +0 -44
  447. package/dist/src/concepts/BusinessComponent__.d.ts +0 -640
  448. package/dist/src/concepts/BusinessLogic__.d.ts +0 -44
  449. package/dist/src/concepts/CallAuthInterface__.d.ts +0 -132
  450. package/dist/src/concepts/CallConnector__.d.ts +0 -55
  451. package/dist/src/concepts/CallEvent__.d.ts +0 -100
  452. package/dist/src/concepts/CallFunction__.d.ts +0 -171
  453. package/dist/src/concepts/CallInterface__.d.ts +0 -143
  454. package/dist/src/concepts/CallLogic__.d.ts +0 -224
  455. package/dist/src/concepts/CallQueryComponent__.d.ts +0 -383
  456. package/dist/src/concepts/CapsulesSetter__.d.ts +0 -109
  457. package/dist/src/concepts/Comment__.d.ts +0 -41
  458. package/dist/src/concepts/CompletionProperty__.d.ts +0 -87
  459. package/dist/src/concepts/ConfigGroup__.d.ts +0 -121
  460. package/dist/src/concepts/ConfigPropertyValue__.d.ts +0 -42
  461. package/dist/src/concepts/ConfigProperty__.d.ts +0 -147
  462. package/dist/src/concepts/Configuration__.d.ts +0 -120
  463. package/dist/src/concepts/Connection__.d.ts +0 -159
  464. package/dist/src/concepts/ConnectorLogic__.d.ts +0 -33
  465. package/dist/src/concepts/ConnectorTriggerLauncher__.d.ts +0 -44
  466. package/dist/src/concepts/ConnectorTrigger__.d.ts +0 -76
  467. package/dist/src/concepts/Connector__.d.ts +0 -532
  468. package/dist/src/concepts/Constant__.d.ts +0 -94
  469. package/dist/src/concepts/CountersignPolicy__.d.ts +0 -29
  470. package/dist/src/concepts/DataSource__.d.ts +0 -163
  471. package/dist/src/concepts/DatabaseTypeAnnotation__.d.ts +0 -35
  472. package/dist/src/concepts/DefaultValue__.d.ts +0 -94
  473. package/dist/src/concepts/Destination__.d.ts +0 -150
  474. package/dist/src/concepts/End__.d.ts +0 -30
  475. package/dist/src/concepts/EntityIndex__.d.ts +0 -93
  476. package/dist/src/concepts/EntityProperty__.d.ts +0 -255
  477. package/dist/src/concepts/Entity__.d.ts +0 -332
  478. package/dist/src/concepts/EnumItem__.d.ts +0 -83
  479. package/dist/src/concepts/EnumSelectSetter__.d.ts +0 -109
  480. package/dist/src/concepts/Enum__.d.ts +0 -133
  481. package/dist/src/concepts/EventDeclaration__.d.ts +0 -41
  482. package/dist/src/concepts/Event__.d.ts +0 -149
  483. package/dist/src/concepts/ExternalDestination__.d.ts +0 -63
  484. package/dist/src/concepts/ForEachStatement__.d.ts +0 -126
  485. package/dist/src/concepts/FrontendLibrary__.d.ts +0 -208
  486. package/dist/src/concepts/FrontendType__.d.ts +0 -304
  487. package/dist/src/concepts/FrontendVariable__.d.ts +0 -41
  488. package/dist/src/concepts/Frontend__.d.ts +0 -389
  489. package/dist/src/concepts/Function__.d.ts +0 -399
  490. package/dist/src/concepts/I18nInfo__.d.ts +0 -47
  491. package/dist/src/concepts/IconSetter__.d.ts +0 -29
  492. package/dist/src/concepts/Identifier__.d.ts +0 -66
  493. package/dist/src/concepts/IfStatement__.d.ts +0 -155
  494. package/dist/src/concepts/ImageSetter__.d.ts +0 -25
  495. package/dist/src/concepts/ImportedInterface__.d.ts +0 -29
  496. package/dist/src/concepts/InputSetter__.d.ts +0 -29
  497. package/dist/src/concepts/Integration__.d.ts +0 -127
  498. package/dist/src/concepts/InterfaceParam__.d.ts +0 -119
  499. package/dist/src/concepts/InterfaceTriggerEvent__.d.ts +0 -34
  500. package/dist/src/concepts/Interface__.d.ts +0 -323
  501. package/dist/src/concepts/JSBlock__.d.ts +0 -38
  502. package/dist/src/concepts/JavaLogic__.d.ts +0 -50
  503. package/dist/src/concepts/LogicDeclaration__.d.ts +0 -289
  504. package/dist/src/concepts/LogicItem__.d.ts +0 -171
  505. package/dist/src/concepts/Logic__.d.ts +0 -632
  506. package/dist/src/concepts/MatchCase__.d.ts +0 -264
  507. package/dist/src/concepts/Match__.d.ts +0 -122
  508. package/dist/src/concepts/MemberExpression__.d.ts +0 -64
  509. package/dist/src/concepts/MetadataType__.d.ts +0 -220
  510. package/dist/src/concepts/MicroApp__.d.ts +0 -53
  511. package/dist/src/concepts/Module__.d.ts +0 -1142
  512. package/dist/src/concepts/MsgTriggerEvent__.d.ts +0 -138
  513. package/dist/src/concepts/MsgTriggerLauncher__.d.ts +0 -119
  514. package/dist/src/concepts/MultiApprovalPolicy__.d.ts +0 -25
  515. package/dist/src/concepts/Namespace__.d.ts +0 -1060
  516. package/dist/src/concepts/NewComposite__.d.ts +0 -346
  517. package/dist/src/concepts/NewList__.d.ts +0 -135
  518. package/dist/src/concepts/NewMap__.d.ts +0 -226
  519. package/dist/src/concepts/New__.d.ts +0 -30
  520. package/dist/src/concepts/NullLiteral__.d.ts +0 -36
  521. package/dist/src/concepts/NumberInputSetter__.d.ts +0 -45
  522. package/dist/src/concepts/NumericLiteral__.d.ts +0 -53
  523. package/dist/src/concepts/OqlQueryComponent__.d.ts +0 -67
  524. package/dist/src/concepts/OverriddenLogic__.d.ts +0 -615
  525. package/dist/src/concepts/Paginate__.d.ts +0 -59
  526. package/dist/src/concepts/ParamWithGroup__.d.ts +0 -44
  527. package/dist/src/concepts/Param__.d.ts +0 -140
  528. package/dist/src/concepts/Point__.d.ts +0 -33
  529. package/dist/src/concepts/ProcessComponent__.d.ts +0 -214
  530. package/dist/src/concepts/ProcessElement__.d.ts +0 -620
  531. package/dist/src/concepts/ProcessOutcome__.d.ts +0 -35
  532. package/dist/src/concepts/ProcessOutcomes__.d.ts +0 -35
  533. package/dist/src/concepts/Process__.d.ts +0 -605
  534. package/dist/src/concepts/PropDeclaration__.d.ts +0 -99
  535. package/dist/src/concepts/PropertySelectSetter__.d.ts +0 -25
  536. package/dist/src/concepts/QueryAggregateExpression__.d.ts +0 -50
  537. package/dist/src/concepts/QueryFieldExpression__.d.ts +0 -66
  538. package/dist/src/concepts/QueryFromExpression__.d.ts +0 -107
  539. package/dist/src/concepts/QueryGroupByExpression__.d.ts +0 -46
  540. package/dist/src/concepts/QueryJoinExpression__.d.ts +0 -194
  541. package/dist/src/concepts/QueryLimitExpression__.d.ts +0 -46
  542. package/dist/src/concepts/QueryOrderByExpression__.d.ts +0 -57
  543. package/dist/src/concepts/QuerySelectExpression__.d.ts +0 -213
  544. package/dist/src/concepts/Rect__.d.ts +0 -41
  545. package/dist/src/concepts/Return__.d.ts +0 -120
  546. package/dist/src/concepts/Role__.d.ts +0 -58
  547. package/dist/src/concepts/SelectMembers__.d.ts +0 -134
  548. package/dist/src/concepts/SequentialPolicy__.d.ts +0 -25
  549. package/dist/src/concepts/SetterOption__.d.ts +0 -49
  550. package/dist/src/concepts/SlotDeclaration__.d.ts +0 -213
  551. package/dist/src/concepts/Slot__.d.ts +0 -53
  552. package/dist/src/concepts/SqlQueryComponent__.d.ts +0 -63
  553. package/dist/src/concepts/Start__.d.ts +0 -30
  554. package/dist/src/concepts/StaticString__.d.ts +0 -49
  555. package/dist/src/concepts/StringInterpolation__.d.ts +0 -122
  556. package/dist/src/concepts/StringLiteral__.d.ts +0 -51
  557. package/dist/src/concepts/StructureProperty__.d.ts +0 -119
  558. package/dist/src/concepts/Structure__.d.ts +0 -243
  559. package/dist/src/concepts/SwitchCase__.d.ts +0 -91
  560. package/dist/src/concepts/SwitchSetter__.d.ts +0 -25
  561. package/dist/src/concepts/SwitchStatement__.d.ts +0 -90
  562. package/dist/src/concepts/ThemeVariable__.d.ts +0 -29
  563. package/dist/src/concepts/Theme__.d.ts +0 -39
  564. package/dist/src/concepts/Transactional__.d.ts +0 -85
  565. package/dist/src/concepts/TriggerEvent__.d.ts +0 -42
  566. package/dist/src/concepts/TriggerLauncher__.d.ts +0 -76
  567. package/dist/src/concepts/TypeAnnotation__.d.ts +0 -303
  568. package/dist/src/concepts/TypeParam__.d.ts +0 -34
  569. package/dist/src/concepts/UnaryExpression__.d.ts +0 -45
  570. package/dist/src/concepts/Unparsed__.d.ts +0 -41
  571. package/dist/src/concepts/UseComponent__.d.ts +0 -33
  572. package/dist/src/concepts/ValidationRule__.d.ts +0 -133
  573. package/dist/src/concepts/Variable__.d.ts +0 -137
  574. package/dist/src/concepts/ViewBlockWithImage__.d.ts +0 -33
  575. package/dist/src/concepts/ViewBlock__.d.ts +0 -37
  576. package/dist/src/concepts/ViewComponentDeclaration__.d.ts +0 -721
  577. package/dist/src/concepts/ViewElement__.d.ts +0 -652
  578. package/dist/src/concepts/View__.d.ts +0 -728
  579. package/dist/src/concepts/WhileStatement__.d.ts +0 -94
  580. package/dist/src/concepts/basics/constants.d.ts +0 -1
  581. package/dist/src/concepts/basics/stdlib/index.d.ts +0 -16
  582. package/dist/src/concepts/basics/stdlib/nasl.auth.d.ts +0 -9
  583. package/dist/src/concepts/basics/stdlib/nasl.browser.d.ts +0 -5
  584. package/dist/src/concepts/basics/stdlib/nasl.collection.d.ts +0 -9
  585. package/dist/src/concepts/basics/stdlib/nasl.configuration.d.ts +0 -9
  586. package/dist/src/concepts/basics/stdlib/nasl.core.d.ts +0 -7
  587. package/dist/src/concepts/basics/stdlib/nasl.event.d.ts +0 -5
  588. package/dist/src/concepts/basics/stdlib/nasl.http.d.ts +0 -9
  589. package/dist/src/concepts/basics/stdlib/nasl.interface.d.ts +0 -9
  590. package/dist/src/concepts/basics/stdlib/nasl.io.d.ts +0 -5
  591. package/dist/src/concepts/basics/stdlib/nasl.logging.d.ts +0 -5
  592. package/dist/src/concepts/basics/stdlib/nasl.process.d.ts +0 -9
  593. package/dist/src/concepts/basics/stdlib/nasl.ui.d.ts +0 -9
  594. package/dist/src/concepts/basics/stdlib/nasl.util.d.ts +0 -6
  595. package/dist/src/concepts/basics/stdlib/nasl.validation.d.ts +0 -5
  596. package/dist/src/concepts/basics/stdlib/reference2TypeAnnotationList.d.ts +0 -4
  597. package/dist/src/concepts/basics/stdlib/timeZone.d.ts +0 -5
  598. package/dist/src/concepts/basics/types/coreTypeList.d.ts +0 -2
  599. package/dist/src/concepts/basics/types/index.d.ts +0 -17
  600. package/dist/src/concepts/index.d.ts +0 -7
  601. package/dist/src/concepts/index__.d.ts +0 -156
  602. package/dist/src/concepts/utils/asserts.d.ts +0 -7825
  603. package/dist/src/concepts/utils/quick-info.d.ts +0 -13
  604. package/dist/src/concepts/utils/types.d.ts +0 -510
  605. package/dist/src/config.d.ts +0 -52
  606. package/dist/src/decorators/index.d.ts +0 -67
  607. package/dist/src/decorators/promise.d.ts +0 -7
  608. package/dist/src/enums/KEYWORDS.d.ts +0 -6
  609. package/dist/src/enums/LEVEL_NAME_MAP.d.ts +0 -26
  610. package/dist/src/eventBus.d.ts +0 -3
  611. package/dist/src/generator/compileComponent.d.ts +0 -11
  612. package/dist/src/generator/genBundleFiles.d.ts +0 -37
  613. package/dist/src/generator/genHash.d.ts +0 -7
  614. package/dist/src/generator/genMetaData.d.ts +0 -31
  615. package/dist/src/generator/icestark.d.ts +0 -2
  616. package/dist/src/generator/index.d.ts +0 -7
  617. package/dist/src/generator/microApp.d.ts +0 -2
  618. package/dist/src/generator/permission.d.ts +0 -14
  619. package/dist/src/generator/qiankun.d.ts +0 -2
  620. package/dist/src/generator/release-body/body.d.ts +0 -42
  621. package/dist/src/generator/release-body/data.d.ts +0 -45
  622. package/dist/src/generator/release-body/index.d.ts +0 -2
  623. package/dist/src/generator/release-body/internal.d.ts +0 -622
  624. package/dist/src/generator/release-body/types.d.ts +0 -57
  625. package/dist/src/generator/release-body/utils.d.ts +0 -418
  626. package/dist/src/generator/release-body/validation.d.ts +0 -3
  627. package/dist/src/generator/styleReplacer.d.ts +0 -3
  628. package/dist/src/index.d.ts +0 -14
  629. package/dist/src/manager/diagnostic.d.ts +0 -39
  630. package/dist/src/manager/stepRecorder.d.ts +0 -20
  631. package/dist/src/natural/componentData.d.ts +0 -31
  632. package/dist/src/natural/genNaturalTS.d.ts +0 -241
  633. package/dist/src/natural/index.d.ts +0 -6
  634. package/dist/src/natural/naslStdlibMap.d.ts +0 -1
  635. package/dist/src/natural/prompt/analyzeClaims.d.ts +0 -1
  636. package/dist/src/natural/prompt/analyzeFormatOutput.d.ts +0 -1
  637. package/dist/src/natural/prompt/analyzeTasks.d.ts +0 -1
  638. package/dist/src/natural/prompt/executeClaims.d.ts +0 -1
  639. package/dist/src/natural/transformTSCode.d.ts +0 -7
  640. package/dist/src/sentry/index.d.ts +0 -34
  641. package/dist/src/server/createUiTs.d.ts +0 -17
  642. package/dist/src/server/entity2LogicNamespace.d.ts +0 -10
  643. package/dist/src/server/event.d.ts +0 -30
  644. package/dist/src/server/extendBaseNode.d.ts +0 -1
  645. package/dist/src/server/formatTsUtils.d.ts +0 -36
  646. package/dist/src/server/getConnector.d.ts +0 -15
  647. package/dist/src/server/getExtensionModules.d.ts +0 -3
  648. package/dist/src/server/getFunctions.d.ts +0 -3
  649. package/dist/src/server/getInterfaces.d.ts +0 -2
  650. package/dist/src/server/getLogging.d.ts +0 -1
  651. package/dist/src/server/getLogics.d.ts +0 -5
  652. package/dist/src/server/getMemberIdentifier.d.ts +0 -17
  653. package/dist/src/server/getProcessComponents.d.ts +0 -2
  654. package/dist/src/server/getProcesses.d.ts +0 -33
  655. package/dist/src/server/getScope.d.ts +0 -13
  656. package/dist/src/server/getValidates.d.ts +0 -3
  657. package/dist/src/server/index.d.ts +0 -5
  658. package/dist/src/server/naslServer.d.ts +0 -391
  659. package/dist/src/server/naslStdlibMap.d.ts +0 -2
  660. package/dist/src/server/process2LogicNamespace.d.ts +0 -26
  661. package/dist/src/server/translator.d.ts +0 -26
  662. package/dist/src/service/creator/add.configs.d.ts +0 -1
  663. package/dist/src/service/creator/errHandles.d.ts +0 -18
  664. package/dist/src/service/creator/index.d.ts +0 -1
  665. package/dist/src/service/datasource/api.d.ts +0 -12
  666. package/dist/src/service/datasource/index.d.ts +0 -2
  667. package/dist/src/service/logic/api.d.ts +0 -9
  668. package/dist/src/service/logic/checktypeSocket.d.ts +0 -5
  669. package/dist/src/service/logic/index.d.ts +0 -2
  670. package/dist/src/service/storage/api.d.ts +0 -54
  671. package/dist/src/service/storage/index.d.ts +0 -2
  672. package/dist/src/service/storage/init.d.ts +0 -105
  673. package/dist/src/service/storage/jsoner.d.ts +0 -36
  674. package/dist/src/service/storage/map.d.ts +0 -4
  675. package/dist/src/service/storage/service.d.ts +0 -25
  676. package/dist/src/service/storage/storagePoint.d.ts +0 -17
  677. package/dist/src/service/video/BaseService.d.ts +0 -7
  678. package/dist/src/service/video/MainCallbackService.d.ts +0 -12
  679. package/dist/src/service/video/VideoTranscribe.d.ts +0 -15
  680. package/dist/src/service/video/publishService.d.ts +0 -1
  681. package/dist/src/templator/genCallComponentLogic.d.ts +0 -17
  682. package/dist/src/templator/genCreateBlock.d.ts +0 -10
  683. package/dist/src/templator/genCurdEditMultipleKeyBlock.d.ts +0 -8
  684. package/dist/src/templator/genCurdMultipleKeyBlock.d.ts +0 -61
  685. package/dist/src/templator/genEditTableBlock.d.ts +0 -51
  686. package/dist/src/templator/genEnumSelectBlock.d.ts +0 -10
  687. package/dist/src/templator/genGetBlock.d.ts +0 -6
  688. package/dist/src/templator/genGridViewBlock.d.ts +0 -55
  689. package/dist/src/templator/genListViewBlock.d.ts +0 -19
  690. package/dist/src/templator/genQueryComponent.d.ts +0 -34
  691. package/dist/src/templator/genSelectBlock.d.ts +0 -45
  692. package/dist/src/templator/genTableBlock.d.ts +0 -55
  693. package/dist/src/templator/genUpdateBlock.d.ts +0 -6
  694. package/dist/src/templator/index.d.ts +0 -19
  695. package/dist/src/templator/utils.d.ts +0 -683
  696. package/dist/src/translator/constant.d.ts +0 -6
  697. package/dist/src/translator/index.d.ts +0 -3
  698. package/dist/src/translator/types.d.ts +0 -85
  699. package/dist/src/translator/utils.d.ts +0 -47
  700. package/dist/src/utils/cookie.d.ts +0 -9
  701. package/dist/src/utils/create.d.ts +0 -2
  702. package/dist/src/utils/env.d.ts +0 -2
  703. package/dist/src/utils/file.d.ts +0 -33
  704. package/dist/src/utils/i18nInfo.d.ts +0 -5
  705. package/dist/src/utils/index.d.ts +0 -72
  706. package/dist/src/utils/logger.d.ts +0 -8
  707. package/dist/src/utils/sortTsString.d.ts +0 -1
  708. package/dist/src/utils/string.d.ts +0 -64
  709. package/dist/src/utils/time-slicing/constant.d.ts +0 -35
  710. package/dist/src/utils/time-slicing/controller.d.ts +0 -53
  711. package/dist/src/utils/time-slicing/index.d.ts +0 -5
  712. package/dist/src/utils/time-slicing/page-state.d.ts +0 -2
  713. package/dist/src/utils/time-slicing/performance.d.ts +0 -11
  714. package/dist/src/utils/time-slicing/runner.d.ts +0 -12
  715. package/dist/src/utils/time-slicing/tool.d.ts +0 -24
  716. package/dist/src/utils/time-slicing/utils.d.ts +0 -62
  717. package/dist/src/utils/time-slicing/wrapper.d.ts +0 -18
  718. package/dist/src/utils/traverse.d.ts +0 -36
  719. package/dist/src/utils/types.d.ts +0 -13
  720. package/dist/src/utils/window.d.ts +0 -7
  721. package/dist/test/concepts/anonymous-function/constant.d.ts +0 -2
  722. package/dist/test/concepts/anonymous-function/toEmbeddedTS.spec.d.ts +0 -1
  723. package/dist/test/concepts/anonymous-function/toJS.spec.d.ts +0 -1
  724. package/dist/test/concepts/anonymous-function/toVue.spec.d.ts +0 -1
  725. package/dist/test/concepts/assignment/constant.d.ts +0 -2
  726. package/dist/test/concepts/assignment/toEmbeddedTS.spec.d.ts +0 -1
  727. package/dist/test/concepts/assignment/toJS.spec.d.ts +0 -1
  728. package/dist/test/concepts/assignment/toVue.spec.d.ts +0 -1
  729. package/dist/test/concepts/batch-assignment/constant.d.ts +0 -2
  730. package/dist/test/concepts/batch-assignment/toEmbeddedTS.spec.d.ts +0 -1
  731. package/dist/test/concepts/batch-assignment/toJS.spec.d.ts +0 -1
  732. package/dist/test/concepts/batch-assignment/toVue.spec.d.ts +0 -1
  733. package/dist/test/concepts/binary-expression/constant.d.ts +0 -2
  734. package/dist/test/concepts/binary-expression/getQuickInfoOffset.spec.d.ts +0 -1
  735. package/dist/test/concepts/binary-expression/toEmbeddedTS.spec.d.ts +0 -1
  736. package/dist/test/concepts/binary-expression/toJS.spec.d.ts +0 -1
  737. package/dist/test/concepts/binary-expression/toVue.spec.d.ts +0 -1
  738. package/dist/test/concepts/boolean-literal/constant.d.ts +0 -2
  739. package/dist/test/concepts/boolean-literal/toEmbeddedTS.spec.d.ts +0 -1
  740. package/dist/test/concepts/boolean-literal/toJS.spec.d.ts +0 -1
  741. package/dist/test/concepts/boolean-literal/toVue.spec.d.ts +0 -1
  742. package/dist/test/concepts/call-function/constant.d.ts +0 -2
  743. package/dist/test/concepts/call-function/getQuickInfoOffset.spec.d.ts +0 -1
  744. package/dist/test/concepts/call-function/toEmbeddedTS.spec.d.ts +0 -1
  745. package/dist/test/concepts/call-function/toJS.spec.d.ts +0 -1
  746. package/dist/test/concepts/call-interface/constant.d.ts +0 -2
  747. package/dist/test/concepts/call-interface/getQuickInfoOffset.spec.d.ts +0 -1
  748. package/dist/test/concepts/call-interface/toEmbeddedTS.spec.d.ts +0 -1
  749. package/dist/test/concepts/call-interface/toJS.spec.d.ts +0 -1
  750. package/dist/test/concepts/call-logic/constant.d.ts +0 -2
  751. package/dist/test/concepts/call-logic/getQuickInfoOffset.spec.d.ts +0 -1
  752. package/dist/test/concepts/call-logic/toEmbeddedTS.spec.d.ts +0 -1
  753. package/dist/test/concepts/call-logic/toJS.spec.d.ts +0 -1
  754. package/dist/test/concepts/call-logic/toUI.spec.d.ts +0 -1
  755. package/dist/test/concepts/call-logic/toVue.spec.d.ts +0 -1
  756. package/dist/test/concepts/call-logic/toVueDesigner.spec.d.ts +0 -1
  757. package/dist/test/concepts/data-source/constant.d.ts +0 -2
  758. package/dist/test/concepts/data-source/toEmbeddedTS.spec.d.ts +0 -1
  759. package/dist/test/concepts/data-source/toEmbeddedTSFile.spec.d.ts +0 -1
  760. package/dist/test/concepts/entity/constant.d.ts +0 -2
  761. package/dist/test/concepts/entity/toEmbeddedTS.spec.d.ts +0 -1
  762. package/dist/test/concepts/entity/toEmbeddedTSFile.spec.d.ts +0 -1
  763. package/dist/test/concepts/identifier/constant.d.ts +0 -2
  764. package/dist/test/concepts/identifier/toEmbeddedTS.spec.d.ts +0 -1
  765. package/dist/test/concepts/identifier/toJS.spec.d.ts +0 -1
  766. package/dist/test/concepts/identifier/toVue.spec.d.ts +0 -1
  767. package/dist/test/concepts/match/constant.d.ts +0 -2
  768. package/dist/test/concepts/match/toEmbeddedTS.spec.d.ts +0 -1
  769. package/dist/test/concepts/match/toJS.spec.d.ts +0 -1
  770. package/dist/test/concepts/member-expression/constant.d.ts +0 -2
  771. package/dist/test/concepts/member-expression/toEmbeddedTS.spec.d.ts +0 -1
  772. package/dist/test/concepts/member-expression/toJS.spec.d.ts +0 -1
  773. package/dist/test/concepts/member-expression/toVue.spec.d.ts +0 -1
  774. package/dist/test/concepts/new-composite/constant.d.ts +0 -2
  775. package/dist/test/concepts/new-composite/getQuickInfoOffset.spec.d.ts +0 -1
  776. package/dist/test/concepts/new-composite/toEmbeddedTS.spec.d.ts +0 -1
  777. package/dist/test/concepts/new-composite/toJS.spec.d.ts +0 -1
  778. package/dist/test/concepts/new-list/constant.d.ts +0 -2
  779. package/dist/test/concepts/new-list/getQuickInfoOffset.spec.d.ts +0 -1
  780. package/dist/test/concepts/new-list/toEmbeddedTS.spec.d.ts +0 -1
  781. package/dist/test/concepts/new-list/toJS.spec.d.ts +0 -1
  782. package/dist/test/concepts/new-map/constant.d.ts +0 -2
  783. package/dist/test/concepts/new-map/getQuickInfoOffset.spec.d.ts +0 -1
  784. package/dist/test/concepts/new-map/toEmbeddedTS.spec.d.ts +0 -1
  785. package/dist/test/concepts/new-map/toJS.spec.d.ts +0 -1
  786. package/dist/test/concepts/null-literal/constant.d.ts +0 -2
  787. package/dist/test/concepts/null-literal/toEmbeddedTS.spec.d.ts +0 -1
  788. package/dist/test/concepts/null-literal/toJS.spec.d.ts +0 -1
  789. package/dist/test/concepts/null-literal/toVue.spec.d.ts +0 -1
  790. package/dist/test/concepts/numeric-literal/constant.d.ts +0 -2
  791. package/dist/test/concepts/numeric-literal/toEmbeddedTS.spec.d.ts +0 -1
  792. package/dist/test/concepts/numeric-literal/toJS.spec.d.ts +0 -1
  793. package/dist/test/concepts/numeric-literal/toVue.spec.d.ts +0 -1
  794. package/dist/test/concepts/string-literal/constant.d.ts +0 -2
  795. package/dist/test/concepts/string-literal/toEmbeddedTS.spec.d.ts +0 -1
  796. package/dist/test/concepts/string-literal/toJS.spec.d.ts +0 -1
  797. package/dist/test/concepts/string-literal/toVue.spec.d.ts +0 -1
  798. package/dist/test/concepts/utils.d.ts +0 -13
  799. package/dist/test/concepts/validation-rule/constant.d.ts +0 -2
  800. package/dist/test/concepts/validation-rule/toEmbeddedTS.spec.d.ts +0 -1
  801. package/dist/test/concepts/validation-rule/toJS.spec.d.ts +0 -1
  802. package/dist/test/concepts/validation-rule/validation-rule.spec.d.ts +0 -1
  803. package/dist/test/concepts/view-element/constant.d.ts +0 -2
  804. package/dist/test/concepts/view-element/toEmbeddedTS.spec.d.ts +0 -1
  805. package/dist/test/concepts/view-element/toVue.spec.d.ts +0 -1
  806. package/dist/test/setup.d.ts +0 -1
  807. package/dist/test/time-slicing/runner.spec.d.ts +0 -1
  808. package/dist/test/time-slicing/time-slicing-nodejs.spec.d.ts +0 -1
  809. package/dist/test/time-slicing/utils.d.ts +0 -1
  810. package/dist/test/time-slicing/wrapper.spec.d.ts +0 -1
@@ -23,30 +23,30 @@
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">15.42% </span>
26
+ <span class="strong">15.48% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>110/713</span>
28
+ <span class='fraction'>107/691</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">9.32% </span>
33
+ <span class="strong">8.27% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>32/343</span>
35
+ <span class='fraction'>25/302</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">10.6% </span>
40
+ <span class="strong">9.84% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>14/132</span>
42
+ <span class='fraction'>13/132</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">14.61% </span>
47
+ <span class="strong">15.03% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>95/650</span>
49
+ <span class='fraction'>95/632</span>
50
50
  </div>
51
51
 
52
52
 
@@ -1611,107 +1611,28 @@
1611
1611
  <a name='L1546'></a><a href='#L1546'>1546</a>
1612
1612
  <a name='L1547'></a><a href='#L1547'>1547</a>
1613
1613
  <a name='L1548'></a><a href='#L1548'>1548</a>
1614
- <a name='L1549'></a><a href='#L1549'>1549</a>
1615
- <a name='L1550'></a><a href='#L1550'>1550</a>
1616
- <a name='L1551'></a><a href='#L1551'>1551</a>
1617
- <a name='L1552'></a><a href='#L1552'>1552</a>
1618
- <a name='L1553'></a><a href='#L1553'>1553</a>
1619
- <a name='L1554'></a><a href='#L1554'>1554</a>
1620
- <a name='L1555'></a><a href='#L1555'>1555</a>
1621
- <a name='L1556'></a><a href='#L1556'>1556</a>
1622
- <a name='L1557'></a><a href='#L1557'>1557</a>
1623
- <a name='L1558'></a><a href='#L1558'>1558</a>
1624
- <a name='L1559'></a><a href='#L1559'>1559</a>
1625
- <a name='L1560'></a><a href='#L1560'>1560</a>
1626
- <a name='L1561'></a><a href='#L1561'>1561</a>
1627
- <a name='L1562'></a><a href='#L1562'>1562</a>
1628
- <a name='L1563'></a><a href='#L1563'>1563</a>
1629
- <a name='L1564'></a><a href='#L1564'>1564</a>
1630
- <a name='L1565'></a><a href='#L1565'>1565</a>
1631
- <a name='L1566'></a><a href='#L1566'>1566</a>
1632
- <a name='L1567'></a><a href='#L1567'>1567</a>
1633
- <a name='L1568'></a><a href='#L1568'>1568</a>
1634
- <a name='L1569'></a><a href='#L1569'>1569</a>
1635
- <a name='L1570'></a><a href='#L1570'>1570</a>
1636
- <a name='L1571'></a><a href='#L1571'>1571</a>
1637
- <a name='L1572'></a><a href='#L1572'>1572</a>
1638
- <a name='L1573'></a><a href='#L1573'>1573</a>
1639
- <a name='L1574'></a><a href='#L1574'>1574</a>
1640
- <a name='L1575'></a><a href='#L1575'>1575</a>
1641
- <a name='L1576'></a><a href='#L1576'>1576</a>
1642
- <a name='L1577'></a><a href='#L1577'>1577</a>
1643
- <a name='L1578'></a><a href='#L1578'>1578</a>
1644
- <a name='L1579'></a><a href='#L1579'>1579</a>
1645
- <a name='L1580'></a><a href='#L1580'>1580</a>
1646
- <a name='L1581'></a><a href='#L1581'>1581</a>
1647
- <a name='L1582'></a><a href='#L1582'>1582</a>
1648
- <a name='L1583'></a><a href='#L1583'>1583</a>
1649
- <a name='L1584'></a><a href='#L1584'>1584</a>
1650
- <a name='L1585'></a><a href='#L1585'>1585</a>
1651
- <a name='L1586'></a><a href='#L1586'>1586</a>
1652
- <a name='L1587'></a><a href='#L1587'>1587</a>
1653
- <a name='L1588'></a><a href='#L1588'>1588</a>
1654
- <a name='L1589'></a><a href='#L1589'>1589</a>
1655
- <a name='L1590'></a><a href='#L1590'>1590</a>
1656
- <a name='L1591'></a><a href='#L1591'>1591</a>
1657
- <a name='L1592'></a><a href='#L1592'>1592</a>
1658
- <a name='L1593'></a><a href='#L1593'>1593</a>
1659
- <a name='L1594'></a><a href='#L1594'>1594</a>
1660
- <a name='L1595'></a><a href='#L1595'>1595</a>
1661
- <a name='L1596'></a><a href='#L1596'>1596</a>
1662
- <a name='L1597'></a><a href='#L1597'>1597</a>
1663
- <a name='L1598'></a><a href='#L1598'>1598</a>
1664
- <a name='L1599'></a><a href='#L1599'>1599</a>
1665
- <a name='L1600'></a><a href='#L1600'>1600</a>
1666
- <a name='L1601'></a><a href='#L1601'>1601</a>
1667
- <a name='L1602'></a><a href='#L1602'>1602</a>
1668
- <a name='L1603'></a><a href='#L1603'>1603</a>
1669
- <a name='L1604'></a><a href='#L1604'>1604</a>
1670
- <a name='L1605'></a><a href='#L1605'>1605</a>
1671
- <a name='L1606'></a><a href='#L1606'>1606</a>
1672
- <a name='L1607'></a><a href='#L1607'>1607</a>
1673
- <a name='L1608'></a><a href='#L1608'>1608</a>
1674
- <a name='L1609'></a><a href='#L1609'>1609</a>
1675
- <a name='L1610'></a><a href='#L1610'>1610</a>
1676
- <a name='L1611'></a><a href='#L1611'>1611</a>
1677
- <a name='L1612'></a><a href='#L1612'>1612</a>
1678
- <a name='L1613'></a><a href='#L1613'>1613</a>
1679
- <a name='L1614'></a><a href='#L1614'>1614</a>
1680
- <a name='L1615'></a><a href='#L1615'>1615</a>
1681
- <a name='L1616'></a><a href='#L1616'>1616</a>
1682
- <a name='L1617'></a><a href='#L1617'>1617</a>
1683
- <a name='L1618'></a><a href='#L1618'>1618</a>
1684
- <a name='L1619'></a><a href='#L1619'>1619</a>
1685
- <a name='L1620'></a><a href='#L1620'>1620</a>
1686
- <a name='L1621'></a><a href='#L1621'>1621</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1281x</span>
1687
- <span class="cline-any cline-neutral">&nbsp;</span>
1688
- <span class="cline-any cline-neutral">&nbsp;</span>
1689
- <span class="cline-any cline-neutral">&nbsp;</span>
1690
- <span class="cline-any cline-neutral">&nbsp;</span>
1691
- <span class="cline-any cline-neutral">&nbsp;</span>
1692
- <span class="cline-any cline-neutral">&nbsp;</span>
1693
- <span class="cline-any cline-neutral">&nbsp;</span>
1614
+ <a name='L1549'></a><a href='#L1549'>1549</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
1694
1615
  <span class="cline-any cline-neutral">&nbsp;</span>
1695
1616
  <span class="cline-any cline-neutral">&nbsp;</span>
1696
1617
  <span class="cline-any cline-yes">1x</span>
1697
1618
  <span class="cline-any cline-neutral">&nbsp;</span>
1619
+ <span class="cline-any cline-yes">1x</span>
1698
1620
  <span class="cline-any cline-neutral">&nbsp;</span>
1621
+ <span class="cline-any cline-yes">1x</span>
1699
1622
  <span class="cline-any cline-neutral">&nbsp;</span>
1700
1623
  <span class="cline-any cline-neutral">&nbsp;</span>
1701
1624
  <span class="cline-any cline-neutral">&nbsp;</span>
1702
1625
  <span class="cline-any cline-neutral">&nbsp;</span>
1703
1626
  <span class="cline-any cline-neutral">&nbsp;</span>
1627
+ <span class="cline-any cline-yes">1x</span>
1704
1628
  <span class="cline-any cline-neutral">&nbsp;</span>
1705
- <span class="cline-any cline-neutral">&nbsp;</span>
1629
+ <span class="cline-any cline-yes">1x</span>
1706
1630
  <span class="cline-any cline-neutral">&nbsp;</span>
1707
1631
  <span class="cline-any cline-neutral">&nbsp;</span>
1708
1632
  <span class="cline-any cline-neutral">&nbsp;</span>
1709
1633
  <span class="cline-any cline-yes">1x</span>
1710
- <span class="cline-any cline-neutral">&nbsp;</span>
1711
1634
  <span class="cline-any cline-yes">1x</span>
1712
- <span class="cline-any cline-neutral">&nbsp;</span>
1713
1635
  <span class="cline-any cline-yes">1x</span>
1714
- <span class="cline-any cline-neutral">&nbsp;</span>
1715
1636
  <span class="cline-any cline-yes">1x</span>
1716
1637
  <span class="cline-any cline-neutral">&nbsp;</span>
1717
1638
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -1720,20 +1641,8 @@
1720
1641
  <span class="cline-any cline-neutral">&nbsp;</span>
1721
1642
  <span class="cline-any cline-neutral">&nbsp;</span>
1722
1643
  <span class="cline-any cline-neutral">&nbsp;</span>
1723
- <span class="cline-any cline-neutral">&nbsp;</span>
1724
- <span class="cline-any cline-neutral">&nbsp;</span>
1725
1644
  <span class="cline-any cline-yes">1x</span>
1726
1645
  <span class="cline-any cline-neutral">&nbsp;</span>
1727
- <span class="cline-any cline-neutral">&nbsp;</span>
1728
- <span class="cline-any cline-neutral">&nbsp;</span>
1729
- <span class="cline-any cline-neutral">&nbsp;</span>
1730
- <span class="cline-any cline-neutral">&nbsp;</span>
1731
- <span class="cline-any cline-neutral">&nbsp;</span>
1732
- <span class="cline-any cline-neutral">&nbsp;</span>
1733
- <span class="cline-any cline-neutral">&nbsp;</span>
1734
- <span class="cline-any cline-neutral">&nbsp;</span>
1735
- <span class="cline-any cline-neutral">&nbsp;</span>
1736
- <span class="cline-any cline-neutral">&nbsp;</span>
1737
1646
  <span class="cline-any cline-yes">1x</span>
1738
1647
  <span class="cline-any cline-neutral">&nbsp;</span>
1739
1648
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -1742,67 +1651,60 @@
1742
1651
  <span class="cline-any cline-neutral">&nbsp;</span>
1743
1652
  <span class="cline-any cline-neutral">&nbsp;</span>
1744
1653
  <span class="cline-any cline-neutral">&nbsp;</span>
1745
- <span class="cline-any cline-yes">1x</span>
1746
- <span class="cline-any cline-neutral">&nbsp;</span>
1747
1654
  <span class="cline-any cline-neutral">&nbsp;</span>
1748
1655
  <span class="cline-any cline-neutral">&nbsp;</span>
1749
1656
  <span class="cline-any cline-neutral">&nbsp;</span>
1750
1657
  <span class="cline-any cline-neutral">&nbsp;</span>
1751
1658
  <span class="cline-any cline-neutral">&nbsp;</span>
1752
- <span class="cline-any cline-neutral">&nbsp;</span>
1753
- <span class="cline-any cline-neutral">&nbsp;</span>
1754
- <span class="cline-any cline-neutral">&nbsp;</span>
1755
- <span class="cline-any cline-yes">6x</span>
1756
- <span class="cline-any cline-neutral">&nbsp;</span>
1757
- <span class="cline-any cline-neutral">&nbsp;</span>
1758
- <span class="cline-any cline-neutral">&nbsp;</span>
1659
+ <span class="cline-any cline-yes">1x</span>
1759
1660
  <span class="cline-any cline-neutral">&nbsp;</span>
1760
1661
  <span class="cline-any cline-neutral">&nbsp;</span>
1761
1662
  <span class="cline-any cline-neutral">&nbsp;</span>
1762
1663
  <span class="cline-any cline-neutral">&nbsp;</span>
1763
1664
  <span class="cline-any cline-neutral">&nbsp;</span>
1665
+ <span class="cline-any cline-yes">5x</span>
1764
1666
  <span class="cline-any cline-neutral">&nbsp;</span>
1765
- <span class="cline-any cline-yes">6x</span>
1766
1667
  <span class="cline-any cline-neutral">&nbsp;</span>
1767
1668
  <span class="cline-any cline-neutral">&nbsp;</span>
1768
1669
  <span class="cline-any cline-neutral">&nbsp;</span>
1769
1670
  <span class="cline-any cline-neutral">&nbsp;</span>
1671
+ <span class="cline-any cline-yes">5x</span>
1770
1672
  <span class="cline-any cline-neutral">&nbsp;</span>
1771
1673
  <span class="cline-any cline-neutral">&nbsp;</span>
1772
1674
  <span class="cline-any cline-neutral">&nbsp;</span>
1773
1675
  <span class="cline-any cline-neutral">&nbsp;</span>
1774
1676
  <span class="cline-any cline-neutral">&nbsp;</span>
1775
- <span class="cline-any cline-yes">6x</span>
1677
+ <span class="cline-any cline-yes">5x</span>
1776
1678
  <span class="cline-any cline-neutral">&nbsp;</span>
1777
1679
  <span class="cline-any cline-neutral">&nbsp;</span>
1778
1680
  <span class="cline-any cline-neutral">&nbsp;</span>
1779
1681
  <span class="cline-any cline-neutral">&nbsp;</span>
1780
1682
  <span class="cline-any cline-neutral">&nbsp;</span>
1781
- <span class="cline-any cline-yes">6x</span>
1683
+ <span class="cline-any cline-yes">5x</span>
1782
1684
  <span class="cline-any cline-neutral">&nbsp;</span>
1783
1685
  <span class="cline-any cline-neutral">&nbsp;</span>
1784
1686
  <span class="cline-any cline-neutral">&nbsp;</span>
1785
1687
  <span class="cline-any cline-neutral">&nbsp;</span>
1786
1688
  <span class="cline-any cline-neutral">&nbsp;</span>
1787
- <span class="cline-any cline-yes">6x</span>
1689
+ <span class="cline-any cline-yes">5x</span>
1788
1690
  <span class="cline-any cline-neutral">&nbsp;</span>
1789
1691
  <span class="cline-any cline-neutral">&nbsp;</span>
1790
1692
  <span class="cline-any cline-neutral">&nbsp;</span>
1791
1693
  <span class="cline-any cline-neutral">&nbsp;</span>
1792
1694
  <span class="cline-any cline-neutral">&nbsp;</span>
1793
- <span class="cline-any cline-yes">6x</span>
1695
+ <span class="cline-any cline-yes">5x</span>
1794
1696
  <span class="cline-any cline-neutral">&nbsp;</span>
1795
1697
  <span class="cline-any cline-neutral">&nbsp;</span>
1796
1698
  <span class="cline-any cline-neutral">&nbsp;</span>
1797
1699
  <span class="cline-any cline-neutral">&nbsp;</span>
1798
1700
  <span class="cline-any cline-neutral">&nbsp;</span>
1799
- <span class="cline-any cline-yes">6x</span>
1800
- <span class="cline-any cline-yes">6x</span>
1801
- <span class="cline-any cline-yes">6x</span>
1701
+ <span class="cline-any cline-yes">5x</span>
1702
+ <span class="cline-any cline-yes">5x</span>
1703
+ <span class="cline-any cline-yes">5x</span>
1802
1704
  <span class="cline-any cline-neutral">&nbsp;</span>
1803
1705
  <span class="cline-any cline-neutral">&nbsp;</span>
1804
1706
  <span class="cline-any cline-neutral">&nbsp;</span>
1805
- <span class="cline-any cline-yes">6x</span>
1707
+ <span class="cline-any cline-yes">5x</span>
1806
1708
  <span class="cline-any cline-neutral">&nbsp;</span>
1807
1709
  <span class="cline-any cline-neutral">&nbsp;</span>
1808
1710
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -1924,7 +1826,6 @@
1924
1826
  <span class="cline-any cline-neutral">&nbsp;</span>
1925
1827
  <span class="cline-any cline-no">&nbsp;</span>
1926
1828
  <span class="cline-any cline-no">&nbsp;</span>
1927
- <span class="cline-any cline-no">&nbsp;</span>
1928
1829
  <span class="cline-any cline-neutral">&nbsp;</span>
1929
1830
  <span class="cline-any cline-no">&nbsp;</span>
1930
1831
  <span class="cline-any cline-no">&nbsp;</span>
@@ -2078,7 +1979,6 @@
2078
1979
  <span class="cline-any cline-neutral">&nbsp;</span>
2079
1980
  <span class="cline-any cline-no">&nbsp;</span>
2080
1981
  <span class="cline-any cline-no">&nbsp;</span>
2081
- <span class="cline-any cline-no">&nbsp;</span>
2082
1982
  <span class="cline-any cline-neutral">&nbsp;</span>
2083
1983
  <span class="cline-any cline-no">&nbsp;</span>
2084
1984
  <span class="cline-any cline-no">&nbsp;</span>
@@ -2234,7 +2134,6 @@
2234
2134
  <span class="cline-any cline-neutral">&nbsp;</span>
2235
2135
  <span class="cline-any cline-no">&nbsp;</span>
2236
2136
  <span class="cline-any cline-no">&nbsp;</span>
2237
- <span class="cline-any cline-no">&nbsp;</span>
2238
2137
  <span class="cline-any cline-neutral">&nbsp;</span>
2239
2138
  <span class="cline-any cline-no">&nbsp;</span>
2240
2139
  <span class="cline-any cline-no">&nbsp;</span>
@@ -2392,23 +2291,15 @@
2392
2291
  <span class="cline-any cline-neutral">&nbsp;</span>
2393
2292
  <span class="cline-any cline-no">&nbsp;</span>
2394
2293
  <span class="cline-any cline-no">&nbsp;</span>
2395
- <span class="cline-any cline-neutral">&nbsp;</span>
2396
- <span class="cline-any cline-no">&nbsp;</span>
2397
- <span class="cline-any cline-neutral">&nbsp;</span>
2398
- <span class="cline-any cline-no">&nbsp;</span>
2399
2294
  <span class="cline-any cline-no">&nbsp;</span>
2400
- <span class="cline-any cline-neutral">&nbsp;</span>
2401
2295
  <span class="cline-any cline-no">&nbsp;</span>
2402
2296
  <span class="cline-any cline-no">&nbsp;</span>
2403
2297
  <span class="cline-any cline-no">&nbsp;</span>
2404
- <span class="cline-any cline-neutral">&nbsp;</span>
2405
- <span class="cline-any cline-no">&nbsp;</span>
2406
2298
  <span class="cline-any cline-no">&nbsp;</span>
2407
2299
  <span class="cline-any cline-no">&nbsp;</span>
2408
2300
  <span class="cline-any cline-no">&nbsp;</span>
2409
2301
  <span class="cline-any cline-neutral">&nbsp;</span>
2410
2302
  <span class="cline-any cline-neutral">&nbsp;</span>
2411
- <span class="cline-any cline-neutral">&nbsp;</span>
2412
2303
  <span class="cline-any cline-no">&nbsp;</span>
2413
2304
  <span class="cline-any cline-neutral">&nbsp;</span>
2414
2305
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -2448,23 +2339,15 @@
2448
2339
  <span class="cline-any cline-neutral">&nbsp;</span>
2449
2340
  <span class="cline-any cline-no">&nbsp;</span>
2450
2341
  <span class="cline-any cline-no">&nbsp;</span>
2451
- <span class="cline-any cline-neutral">&nbsp;</span>
2452
- <span class="cline-any cline-no">&nbsp;</span>
2453
- <span class="cline-any cline-neutral">&nbsp;</span>
2454
- <span class="cline-any cline-no">&nbsp;</span>
2455
- <span class="cline-any cline-no">&nbsp;</span>
2456
- <span class="cline-any cline-neutral">&nbsp;</span>
2457
2342
  <span class="cline-any cline-no">&nbsp;</span>
2458
2343
  <span class="cline-any cline-no">&nbsp;</span>
2459
2344
  <span class="cline-any cline-no">&nbsp;</span>
2460
- <span class="cline-any cline-neutral">&nbsp;</span>
2461
2345
  <span class="cline-any cline-no">&nbsp;</span>
2462
2346
  <span class="cline-any cline-no">&nbsp;</span>
2463
2347
  <span class="cline-any cline-no">&nbsp;</span>
2464
2348
  <span class="cline-any cline-no">&nbsp;</span>
2465
2349
  <span class="cline-any cline-neutral">&nbsp;</span>
2466
2350
  <span class="cline-any cline-neutral">&nbsp;</span>
2467
- <span class="cline-any cline-neutral">&nbsp;</span>
2468
2351
  <span class="cline-any cline-no">&nbsp;</span>
2469
2352
  <span class="cline-any cline-neutral">&nbsp;</span>
2470
2353
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -2504,23 +2387,15 @@
2504
2387
  <span class="cline-any cline-neutral">&nbsp;</span>
2505
2388
  <span class="cline-any cline-no">&nbsp;</span>
2506
2389
  <span class="cline-any cline-no">&nbsp;</span>
2507
- <span class="cline-any cline-neutral">&nbsp;</span>
2508
- <span class="cline-any cline-no">&nbsp;</span>
2509
- <span class="cline-any cline-neutral">&nbsp;</span>
2510
2390
  <span class="cline-any cline-no">&nbsp;</span>
2511
2391
  <span class="cline-any cline-no">&nbsp;</span>
2512
- <span class="cline-any cline-neutral">&nbsp;</span>
2513
2392
  <span class="cline-any cline-no">&nbsp;</span>
2514
2393
  <span class="cline-any cline-no">&nbsp;</span>
2515
2394
  <span class="cline-any cline-no">&nbsp;</span>
2516
- <span class="cline-any cline-neutral">&nbsp;</span>
2517
- <span class="cline-any cline-no">&nbsp;</span>
2518
- <span class="cline-any cline-no">&nbsp;</span>
2519
2395
  <span class="cline-any cline-no">&nbsp;</span>
2520
2396
  <span class="cline-any cline-no">&nbsp;</span>
2521
2397
  <span class="cline-any cline-neutral">&nbsp;</span>
2522
2398
  <span class="cline-any cline-neutral">&nbsp;</span>
2523
- <span class="cline-any cline-neutral">&nbsp;</span>
2524
2399
  <span class="cline-any cline-no">&nbsp;</span>
2525
2400
  <span class="cline-any cline-neutral">&nbsp;</span>
2526
2401
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -2560,23 +2435,15 @@
2560
2435
  <span class="cline-any cline-neutral">&nbsp;</span>
2561
2436
  <span class="cline-any cline-no">&nbsp;</span>
2562
2437
  <span class="cline-any cline-no">&nbsp;</span>
2563
- <span class="cline-any cline-neutral">&nbsp;</span>
2564
- <span class="cline-any cline-no">&nbsp;</span>
2565
- <span class="cline-any cline-neutral">&nbsp;</span>
2566
- <span class="cline-any cline-no">&nbsp;</span>
2567
- <span class="cline-any cline-no">&nbsp;</span>
2568
- <span class="cline-any cline-neutral">&nbsp;</span>
2569
2438
  <span class="cline-any cline-no">&nbsp;</span>
2570
2439
  <span class="cline-any cline-no">&nbsp;</span>
2571
2440
  <span class="cline-any cline-no">&nbsp;</span>
2572
- <span class="cline-any cline-neutral">&nbsp;</span>
2573
2441
  <span class="cline-any cline-no">&nbsp;</span>
2574
2442
  <span class="cline-any cline-no">&nbsp;</span>
2575
2443
  <span class="cline-any cline-no">&nbsp;</span>
2576
2444
  <span class="cline-any cline-no">&nbsp;</span>
2577
2445
  <span class="cline-any cline-neutral">&nbsp;</span>
2578
2446
  <span class="cline-any cline-neutral">&nbsp;</span>
2579
- <span class="cline-any cline-neutral">&nbsp;</span>
2580
2447
  <span class="cline-any cline-no">&nbsp;</span>
2581
2448
  <span class="cline-any cline-neutral">&nbsp;</span>
2582
2449
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -2591,7 +2458,6 @@
2591
2458
  <span class="cline-any cline-neutral">&nbsp;</span>
2592
2459
  <span class="cline-any cline-no">&nbsp;</span>
2593
2460
  <span class="cline-any cline-no">&nbsp;</span>
2594
- <span class="cline-any cline-no">&nbsp;</span>
2595
2461
  <span class="cline-any cline-neutral">&nbsp;</span>
2596
2462
  <span class="cline-any cline-no">&nbsp;</span>
2597
2463
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -2705,7 +2571,6 @@
2705
2571
  <span class="cline-any cline-neutral">&nbsp;</span>
2706
2572
  <span class="cline-any cline-neutral">&nbsp;</span>
2707
2573
  <span class="cline-any cline-no">&nbsp;</span>
2708
- <span class="cline-any cline-no">&nbsp;</span>
2709
2574
  <span class="cline-any cline-neutral">&nbsp;</span>
2710
2575
  <span class="cline-any cline-neutral">&nbsp;</span>
2711
2576
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -2828,9 +2693,11 @@
2828
2693
  <span class="cline-any cline-no">&nbsp;</span>
2829
2694
  <span class="cline-any cline-no">&nbsp;</span>
2830
2695
  <span class="cline-any cline-no">&nbsp;</span>
2696
+ <span class="cline-any cline-neutral">&nbsp;</span>
2831
2697
  <span class="cline-any cline-no">&nbsp;</span>
2832
2698
  <span class="cline-any cline-no">&nbsp;</span>
2833
2699
  <span class="cline-any cline-no">&nbsp;</span>
2700
+ <span class="cline-any cline-neutral">&nbsp;</span>
2834
2701
  <span class="cline-any cline-no">&nbsp;</span>
2835
2702
  <span class="cline-any cline-neutral">&nbsp;</span>
2836
2703
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -2841,40 +2708,49 @@
2841
2708
  <span class="cline-any cline-no">&nbsp;</span>
2842
2709
  <span class="cline-any cline-no">&nbsp;</span>
2843
2710
  <span class="cline-any cline-no">&nbsp;</span>
2844
- <span class="cline-any cline-neutral">&nbsp;</span>
2711
+ <span class="cline-any cline-no">&nbsp;</span>
2845
2712
  <span class="cline-any cline-neutral">&nbsp;</span>
2846
2713
  <span class="cline-any cline-no">&nbsp;</span>
2847
2714
  <span class="cline-any cline-no">&nbsp;</span>
2715
+ <span class="cline-any cline-no">&nbsp;</span>
2848
2716
  <span class="cline-any cline-neutral">&nbsp;</span>
2717
+ <span class="cline-any cline-no">&nbsp;</span>
2849
2718
  <span class="cline-any cline-neutral">&nbsp;</span>
2719
+ <span class="cline-any cline-no">&nbsp;</span>
2720
+ <span class="cline-any cline-no">&nbsp;</span>
2721
+ <span class="cline-any cline-no">&nbsp;</span>
2850
2722
  <span class="cline-any cline-neutral">&nbsp;</span>
2851
- <span class="cline-any cline-yes">2x</span>
2852
- <span class="cline-any cline-yes">2x</span>
2853
- <span class="cline-any cline-yes">6x</span>
2854
- <span class="cline-any cline-yes">2x</span>
2855
- <span class="cline-any cline-neutral">&nbsp;</span>
2856
- <span class="cline-any cline-yes">2x</span>
2723
+ <span class="cline-any cline-no">&nbsp;</span>
2724
+ <span class="cline-any cline-no">&nbsp;</span>
2725
+ <span class="cline-any cline-no">&nbsp;</span>
2857
2726
  <span class="cline-any cline-no">&nbsp;</span>
2858
2727
  <span class="cline-any cline-neutral">&nbsp;</span>
2859
- <span class="cline-any cline-yes">2x</span>
2728
+ <span class="cline-any cline-no">&nbsp;</span>
2729
+ <span class="cline-any cline-no">&nbsp;</span>
2730
+ <span class="cline-any cline-no">&nbsp;</span>
2860
2731
  <span class="cline-any cline-neutral">&nbsp;</span>
2861
- <span class="cline-any cline-yes">2x</span>
2862
2732
  <span class="cline-any cline-no">&nbsp;</span>
2863
2733
  <span class="cline-any cline-neutral">&nbsp;</span>
2864
2734
  <span class="cline-any cline-no">&nbsp;</span>
2735
+ <span class="cline-any cline-no">&nbsp;</span>
2736
+ <span class="cline-any cline-neutral">&nbsp;</span>
2865
2737
  <span class="cline-any cline-neutral">&nbsp;</span>
2866
2738
  <span class="cline-any cline-neutral">&nbsp;</span>
2867
- <span class="cline-any cline-no">&nbsp;</span>
2739
+ <span class="cline-any cline-yes">2x</span>
2740
+ <span class="cline-any cline-yes">2x</span>
2741
+ <span class="cline-any cline-yes">6x</span>
2868
2742
  <span class="cline-any cline-yes">2x</span>
2869
2743
  <span class="cline-any cline-neutral">&nbsp;</span>
2870
2744
  <span class="cline-any cline-yes">2x</span>
2745
+ <span class="cline-any cline-yes">2x</span>
2871
2746
  <span class="cline-any cline-no">&nbsp;</span>
2872
2747
  <span class="cline-any cline-neutral">&nbsp;</span>
2748
+ <span class="cline-any cline-no">&nbsp;</span>
2873
2749
  <span class="cline-any cline-neutral">&nbsp;</span>
2874
2750
  <span class="cline-any cline-neutral">&nbsp;</span>
2751
+ <span class="cline-any cline-no">&nbsp;</span>
2752
+ <span class="cline-any cline-yes">2x</span>
2875
2753
  <span class="cline-any cline-yes">2x</span>
2876
- <span class="cline-any cline-neutral">&nbsp;</span>
2877
- <span class="cline-any cline-neutral">&nbsp;</span>
2878
2754
  <span class="cline-any cline-neutral">&nbsp;</span>
2879
2755
  <span class="cline-any cline-yes">2x</span>
2880
2756
  <span class="cline-any cline-yes">2x</span>
@@ -2938,7 +2814,6 @@
2938
2814
  <span class="cline-any cline-yes">3x</span>
2939
2815
  <span class="cline-any cline-yes">3x</span>
2940
2816
  <span class="cline-any cline-yes">3x</span>
2941
- <span class="cline-any cline-yes">3x</span>
2942
2817
  <span class="cline-any cline-no">&nbsp;</span>
2943
2818
  <span class="cline-any cline-yes">3x</span>
2944
2819
  <span class="cline-any cline-yes">3x</span>
@@ -3015,14 +2890,12 @@
3015
2890
  <span class="cline-any cline-yes">9x</span>
3016
2891
  <span class="cline-any cline-yes">9x</span>
3017
2892
  <span class="cline-any cline-yes">9x</span>
3018
- <span class="cline-any cline-neutral">&nbsp;</span>
3019
- <span class="cline-any cline-neutral">&nbsp;</span>
3020
- <span class="cline-any cline-yes">9x</span>
3021
2893
  <span class="cline-any cline-yes">9x</span>
3022
2894
  <span class="cline-any cline-neutral">&nbsp;</span>
3023
2895
  <span class="cline-any cline-neutral">&nbsp;</span>
3024
2896
  <span class="cline-any cline-yes">3x</span>
3025
2897
  <span class="cline-any cline-yes">3x</span>
2898
+ <span class="cline-any cline-neutral">&nbsp;</span>
3026
2899
  <span class="cline-any cline-yes">3x</span>
3027
2900
  <span class="cline-any cline-yes">3x</span>
3028
2901
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -3065,33 +2938,18 @@
3065
2938
  <span class="cline-any cline-no">&nbsp;</span>
3066
2939
  <span class="cline-any cline-no">&nbsp;</span>
3067
2940
  <span class="cline-any cline-no">&nbsp;</span>
3068
- <span class="cline-any cline-neutral">&nbsp;</span>
3069
- <span class="cline-any cline-no">&nbsp;</span>
3070
- <span class="cline-any cline-neutral">&nbsp;</span>
3071
- <span class="cline-any cline-neutral">&nbsp;</span>
3072
- <span class="cline-any cline-neutral">&nbsp;</span>
3073
- <span class="cline-any cline-neutral">&nbsp;</span>
3074
- <span class="cline-any cline-no">&nbsp;</span>
3075
- <span class="cline-any cline-no">&nbsp;</span>
3076
- <span class="cline-any cline-no">&nbsp;</span>
3077
- <span class="cline-any cline-no">&nbsp;</span>
3078
- <span class="cline-any cline-no">&nbsp;</span>
3079
- <span class="cline-any cline-no">&nbsp;</span>
3080
- <span class="cline-any cline-no">&nbsp;</span>
3081
- <span class="cline-any cline-no">&nbsp;</span>
3082
2941
  <span class="cline-any cline-no">&nbsp;</span>
3083
2942
  <span class="cline-any cline-no">&nbsp;</span>
2943
+ <span class="cline-any cline-neutral">&nbsp;</span>
3084
2944
  <span class="cline-any cline-no">&nbsp;</span>
2945
+ <span class="cline-any cline-neutral">&nbsp;</span>
3085
2946
  <span class="cline-any cline-no">&nbsp;</span>
3086
2947
  <span class="cline-any cline-no">&nbsp;</span>
3087
2948
  <span class="cline-any cline-no">&nbsp;</span>
3088
2949
  <span class="cline-any cline-neutral">&nbsp;</span>
3089
- <span class="cline-any cline-no">&nbsp;</span>
3090
2950
  <span class="cline-any cline-neutral">&nbsp;</span>
3091
2951
  <span class="cline-any cline-no">&nbsp;</span>
3092
2952
  <span class="cline-any cline-no">&nbsp;</span>
3093
- <span class="cline-any cline-neutral">&nbsp;</span>
3094
- <span class="cline-any cline-no">&nbsp;</span>
3095
2953
  <span class="cline-any cline-no">&nbsp;</span>
3096
2954
  <span class="cline-any cline-no">&nbsp;</span>
3097
2955
  <span class="cline-any cline-no">&nbsp;</span>
@@ -3109,7 +2967,9 @@
3109
2967
  <span class="cline-any cline-neutral">&nbsp;</span>
3110
2968
  <span class="cline-any cline-no">&nbsp;</span>
3111
2969
  <span class="cline-any cline-no">&nbsp;</span>
2970
+ <span class="cline-any cline-neutral">&nbsp;</span>
3112
2971
  <span class="cline-any cline-no">&nbsp;</span>
2972
+ <span class="cline-any cline-neutral">&nbsp;</span>
3113
2973
  <span class="cline-any cline-no">&nbsp;</span>
3114
2974
  <span class="cline-any cline-no">&nbsp;</span>
3115
2975
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -3120,9 +2980,6 @@
3120
2980
  <span class="cline-any cline-yes">1x</span>
3121
2981
  <span class="cline-any cline-no">&nbsp;</span>
3122
2982
  <span class="cline-any cline-no">&nbsp;</span>
3123
- <span class="cline-any cline-neutral">&nbsp;</span>
3124
- <span class="cline-any cline-neutral">&nbsp;</span>
3125
- <span class="cline-any cline-neutral">&nbsp;</span>
3126
2983
  <span class="cline-any cline-no">&nbsp;</span>
3127
2984
  <span class="cline-any cline-no">&nbsp;</span>
3128
2985
  <span class="cline-any cline-no">&nbsp;</span>
@@ -3148,7 +3005,6 @@
3148
3005
  <span class="cline-any cline-no">&nbsp;</span>
3149
3006
  <span class="cline-any cline-no">&nbsp;</span>
3150
3007
  <span class="cline-any cline-no">&nbsp;</span>
3151
- <span class="cline-any cline-no">&nbsp;</span>
3152
3008
  <span class="cline-any cline-neutral">&nbsp;</span>
3153
3009
  <span class="cline-any cline-no">&nbsp;</span>
3154
3010
  <span class="cline-any cline-no">&nbsp;</span>
@@ -3162,8 +3018,6 @@
3162
3018
  <span class="cline-any cline-no">&nbsp;</span>
3163
3019
  <span class="cline-any cline-no">&nbsp;</span>
3164
3020
  <span class="cline-any cline-no">&nbsp;</span>
3165
- <span class="cline-any cline-no">&nbsp;</span>
3166
- <span class="cline-any cline-neutral">&nbsp;</span>
3167
3021
  <span class="cline-any cline-neutral">&nbsp;</span>
3168
3022
  <span class="cline-any cline-neutral">&nbsp;</span>
3169
3023
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -3218,6 +3072,9 @@
3218
3072
  <span class="cline-any cline-neutral">&nbsp;</span>
3219
3073
  <span class="cline-any cline-neutral">&nbsp;</span>
3220
3074
  <span class="cline-any cline-neutral">&nbsp;</span>
3075
+ <span class="cline-any cline-neutral">&nbsp;</span>
3076
+ <span class="cline-any cline-neutral">&nbsp;</span>
3077
+ <span class="cline-any cline-neutral">&nbsp;</span>
3221
3078
  <span class="cline-any cline-no">&nbsp;</span>
3222
3079
  <span class="cline-any cline-no">&nbsp;</span>
3223
3080
  <span class="cline-any cline-no">&nbsp;</span>
@@ -3237,6 +3094,7 @@
3237
3094
  <span class="cline-any cline-neutral">&nbsp;</span>
3238
3095
  <span class="cline-any cline-no">&nbsp;</span>
3239
3096
  <span class="cline-any cline-no">&nbsp;</span>
3097
+ <span class="cline-any cline-neutral">&nbsp;</span>
3240
3098
  <span class="cline-any cline-no">&nbsp;</span>
3241
3099
  <span class="cline-any cline-no">&nbsp;</span>
3242
3100
  <span class="cline-any cline-no">&nbsp;</span>
@@ -3246,7 +3104,6 @@
3246
3104
  <span class="cline-any cline-no">&nbsp;</span>
3247
3105
  <span class="cline-any cline-no">&nbsp;</span>
3248
3106
  <span class="cline-any cline-no">&nbsp;</span>
3249
- <span class="cline-any cline-no">&nbsp;</span>
3250
3107
  <span class="cline-any cline-neutral">&nbsp;</span>
3251
3108
  <span class="cline-any cline-neutral">&nbsp;</span>
3252
3109
  <span class="cline-any cline-no">&nbsp;</span>
@@ -3288,7 +3145,6 @@
3288
3145
  <span class="cline-any cline-no">&nbsp;</span>
3289
3146
  <span class="cline-any cline-no">&nbsp;</span>
3290
3147
  <span class="cline-any cline-no">&nbsp;</span>
3291
- <span class="cline-any cline-no">&nbsp;</span>
3292
3148
  <span class="cline-any cline-neutral">&nbsp;</span>
3293
3149
  <span class="cline-any cline-no">&nbsp;</span>
3294
3150
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -3303,95 +3159,69 @@
3303
3159
  <span class="cline-any cline-neutral">&nbsp;</span>
3304
3160
  <span class="cline-any cline-neutral">&nbsp;</span>
3305
3161
  <span class="cline-any cline-neutral">&nbsp;</span>
3306
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import { wrapForEachToGenerator as wrapForEach } from '../utils/time-slicing';
3307
- import {
3308
- TranslatorState,
3309
- shiftState,
3310
- withSourceMap,
3311
- indent,
3312
- createCompilerState,
3313
- withSourceMapGenerator,
3314
- withGenerator,
3315
- TranslatorGenerator,
3316
- } from '../translator';
3162
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import { TranslatorState, shiftState, withSourceMap, indent, createCompilerState } from '../translator';
3317
3163
  import { ElementToVueOptions } from './ViewElement__';
3318
- import type MemberExpression from './MemberExpression__';
3319
- import type StructureProperty from './StructureProperty__';
3320
- import type App from './App__';
3164
+ import MemberExpression from './MemberExpression__';
3165
+ import StructureProperty from './StructureProperty__';
3166
+ import App from './App__';
3321
3167
  import { genHash } from '../generator';
3322
- import type ForEachStatement from './ForEachStatement__';
3323
- import type Logic from './Logic__';
3168
+ import ForEachStatement from './ForEachStatement__';
3169
+ import Logic from './Logic__';
3324
3170
  //================================================================================
3325
3171
  // 从这里开始到结尾注释之间的代码由 NASL Workbench 自动生成,请不手动修改!
3326
3172
  // ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
3327
3173
  //================================================================================
3328
3174
  import { EventPayload, Params } from '../common/EventEmitter';
3329
- import { concept, excludedInJSON, property, getConceptConstructor, getBaseNode } from '../decorators';
3175
+ import { concept, excludedInJSON, property, className } from '../decorators';
3330
3176
  &nbsp;
3331
3177
  import * as utils from '../utils';
3332
- import * as types from './utils/types';
3333
- import * as asserts from './utils/asserts';
3334
3178
  import { v4 as uuidv4 } from 'uuid';
3179
+ import BaseNode from '../common/BaseNode';
3180
+ import TypeAnnotation from './TypeAnnotation__';
3181
+ import Identifier from './Identifier__';
3182
+ import SelectMembers from './SelectMembers__';
3183
+ import AssignmentLine from './AssignmentLine__';
3335
3184
  import LogicItem from './LogicItem__';
3336
- import type TypeAnnotation from './TypeAnnotation__';
3337
- import type Identifier from './Identifier__';
3338
- import type SelectMembers from './SelectMembers__';
3339
- import type AssignmentLine from './AssignmentLine__';
3340
3185
  &nbsp;
3341
3186
  /**
3342
3187
  * 实体/(匿名)数据结构构造器
3343
3188
  */
3189
+ @className
3344
3190
  @concept('实体/(匿名)数据结构构造器')
3191
+ // @ts-ignore
3345
3192
  export class NewComposite extends LogicItem {
3346
3193
  /** 类名 */
3347
- static readonly ConceptName: string = 'NewComposite';
3348
- &nbsp;
3349
- /** 继承链 */
3350
- static readonly inheritanceChain: string[] = ['LogicItem', 'BaseNode'];
3194
+ static readonly ConceptName = 'NewComposite';
3351
3195
  &nbsp;
3352
3196
  /**
3353
3197
  * 产品概念
3354
3198
  */
3355
- @property('concept')
3356
3199
  // @ts-ignore
3357
3200
  readonly concept!: 'NewComposite';
3358
3201
  &nbsp;
3359
3202
  /**
3360
3203
  * 类型
3361
3204
  */
3362
- @property({
3363
- objectRef: 'TypeAnnotation',
3364
- })
3205
+ @property('TypeAnnotation')
3206
+ // @ts-ignore
3365
3207
  typeAnnotation!: TypeAnnotation;
3366
3208
  &nbsp;
3367
3209
  /**
3368
3210
  * 左边项
3369
3211
  */
3370
- @property({
3371
- objectRef: 'Identifier',
3372
- isArray: true,
3373
- defaultValue: [],
3374
- })
3212
+ @property('Identifier')
3375
3213
  properties: Array&lt;Identifier&gt; = [];
3376
3214
  &nbsp;
3377
3215
  /**
3378
3216
  * 右边项
3379
3217
  */
3380
- @property({
3381
- objectRef: 'SelectMembers',
3382
- isArray: true,
3383
- defaultValue: [],
3384
- })
3218
+ @property('SelectMembers')
3385
3219
  rights: Array&lt;SelectMembers&gt; = [];
3386
3220
  &nbsp;
3387
3221
  /**
3388
3222
  * 赋值线
3389
3223
  */
3390
- @property({
3391
- objectRef: 'AssignmentLine',
3392
- isArray: true,
3393
- defaultValue: [],
3394
- })
3224
+ @property('AssignmentLine')
3395
3225
  assignmentLines: Array&lt;AssignmentLine&gt; = [];
3396
3226
  &nbsp;
3397
3227
  /**
@@ -3428,7 +3258,7 @@ export class NewComposite extends LogicItem {
3428
3258
  /**
3429
3259
  * 设置类型
3430
3260
  */
3431
- <span class="fstat-no" title="function not covered" > setTypeAnnotation(t</span>ypeAnnotation: TypeAnnotation) {
3261
+ <span class="fstat-no" title="function not covered" > setTypeAnnotation(</span>typeAnnotation: TypeAnnotation) {
3432
3262
  <span class="cstat-no" title="statement not covered" > typeAnnotation._delete();</span>
3433
3263
  const relationOptions = <span class="cstat-no" title="statement not covered" >{ parentNode: this, parentKey: 'typeAnnotation' };</span>
3434
3264
  <span class="cstat-no" title="statement not covered" > Object.assign(typeAnnotation, relationOptions);</span>
@@ -3443,7 +3273,7 @@ export class NewComposite extends LogicItem {
3443
3273
  /**
3444
3274
  * 设置左边项
3445
3275
  */
3446
- <span class="fstat-no" title="function not covered" > setProperties(p</span>roperties: Array&lt;Identifier&gt;) {
3276
+ <span class="fstat-no" title="function not covered" > setProperties(</span>properties: Array&lt;Identifier&gt;) {
3447
3277
  const object = <span class="cstat-no" title="statement not covered" >{</span>
3448
3278
  properties,
3449
3279
  };
@@ -3455,7 +3285,7 @@ export class NewComposite extends LogicItem {
3455
3285
  /**
3456
3286
  * 设置右边项
3457
3287
  */
3458
- <span class="fstat-no" title="function not covered" > setRights(r</span>ights: Array&lt;SelectMembers&gt;) {
3288
+ <span class="fstat-no" title="function not covered" > setRights(</span>rights: Array&lt;SelectMembers&gt;) {
3459
3289
  const object = <span class="cstat-no" title="statement not covered" >{</span>
3460
3290
  rights,
3461
3291
  };
@@ -3467,7 +3297,7 @@ export class NewComposite extends LogicItem {
3467
3297
  /**
3468
3298
  * 设置赋值线
3469
3299
  */
3470
- <span class="fstat-no" title="function not covered" > setAssignmentLines(a</span>ssignmentLines: Array&lt;AssignmentLine&gt;) {
3300
+ <span class="fstat-no" title="function not covered" > setAssignmentLines(</span>assignmentLines: Array&lt;AssignmentLine&gt;) {
3471
3301
  const object = <span class="cstat-no" title="statement not covered" >{</span>
3472
3302
  assignmentLines,
3473
3303
  };
@@ -3479,7 +3309,7 @@ export class NewComposite extends LogicItem {
3479
3309
  /**
3480
3310
  * 设置hideProperties
3481
3311
  */
3482
- <span class="fstat-no" title="function not covered" > setHideProperties(h</span>ideProperties: boolean) {
3312
+ <span class="fstat-no" title="function not covered" > setHideProperties(</span>hideProperties: boolean) {
3483
3313
  const object = <span class="cstat-no" title="statement not covered" >{</span>
3484
3314
  hideProperties,
3485
3315
  };
@@ -3491,7 +3321,7 @@ export class NewComposite extends LogicItem {
3491
3321
  /**
3492
3322
  * 设置hideDefaults
3493
3323
  */
3494
- <span class="fstat-no" title="function not covered" > setHideDefaults(h</span>ideDefaults: boolean) {
3324
+ <span class="fstat-no" title="function not covered" > setHideDefaults(</span>hideDefaults: boolean) {
3495
3325
  const object = <span class="cstat-no" title="statement not covered" >{</span>
3496
3326
  hideDefaults,
3497
3327
  };
@@ -3503,7 +3333,7 @@ export class NewComposite extends LogicItem {
3503
3333
  /**
3504
3334
  * 设置自动连线
3505
3335
  */
3506
- <span class="fstat-no" title="function not covered" > setAutoConnection(a</span>utoConnection: boolean) {
3336
+ <span class="fstat-no" title="function not covered" > setAutoConnection(</span>autoConnection: boolean) {
3507
3337
  const object = <span class="cstat-no" title="statement not covered" >{</span>
3508
3338
  autoConnection,
3509
3339
  };
@@ -3512,11 +3342,11 @@ export class NewComposite extends LogicItem {
3512
3342
  });
3513
3343
  }
3514
3344
  &nbsp;
3515
- <span class="fstat-no" title="function not covered" > getIdentifierExistingNames(e</span>xcludedList: Array&lt;Identifier&gt; = <span class="branch-0 cbranch-no" title="branch not covered" >[]) {</span>
3345
+ <span class="fstat-no" title="function not covered" > getIdentifierExistingNames(</span>excludedList: Array&lt;Identifier&gt; = <span class="branch-0 cbranch-no" title="branch not covered" >[])</span> {
3516
3346
  const excludedSet = <span class="cstat-no" title="statement not covered" >new Set(excludedList);</span>
3517
- <span class="cstat-no" title="statement not covered" > return ((this.properties as Identifier[]) || []).filter((<span class="fstat-no" title="function not covered" >item) =&gt; <span class="cstat-no" title="statement not covered" >!</span>excludedSet.has(item))</span>.map((<span class="fstat-no" title="function not covered" >item) =&gt; <span class="cstat-no" title="statement not covered" >i</span>tem?.name)</span>;</span>
3347
+ <span class="cstat-no" title="statement not covered" > return ((this.properties as Identifier[]) || []).filter(<span class="fstat-no" title="function not covered" >(i</span>tem) =&gt; <span class="cstat-no" title="statement not covered" >!excludedSet.has(item))</span>.map(<span class="fstat-no" title="function not covered" >(i</span>tem) =&gt; <span class="cstat-no" title="statement not covered" >item.name)</span>;</span>
3518
3348
  }
3519
- <span class="fstat-no" title="function not covered" > getIdentifierUniqueName(n</span>ame = <span class="branch-0 cbranch-no" title="branch not covered" >'identifier1') {</span>
3349
+ <span class="fstat-no" title="function not covered" > getIdentifierUniqueName(</span>name = <span class="branch-0 cbranch-no" title="branch not covered" >'identifier1')</span> {
3520
3350
  <span class="cstat-no" title="statement not covered" > return utils.unique(name, this.getIdentifierExistingNames(), undefined, false);</span>
3521
3351
  }
3522
3352
  &nbsp;
@@ -3541,10 +3371,9 @@ export class NewComposite extends LogicItem {
3541
3371
  */
3542
3372
  _insertIdentifierAt(identifier: Identifier, index: number): Identifier;
3543
3373
  &nbsp;
3544
- <span class="fstat-no" title="function not covered" > _insertIdentifierAt(o</span>ptions: string | Partial&lt;Identifier&gt; | Identifier, index: number) {
3374
+ <span class="fstat-no" title="function not covered" > _insertIdentifierAt(</span>options: string | Partial&lt;Identifier&gt; | Identifier, index: number) {
3545
3375
  const identifierOptions: any = <span class="cstat-no" title="statement not covered" >{};</span>
3546
3376
  const relationOptions = <span class="cstat-no" title="statement not covered" >{ parentNode: this, parentKey: 'properties' };</span>
3547
- const <span class="cstat-no" title="statement not covered" >Identifier = getConceptConstructor('Identifier');</span>
3548
3377
  let identifier: Identifier;
3549
3378
  <span class="cstat-no" title="statement not covered" > if (!options) {</span>
3550
3379
  <span class="cstat-no" title="statement not covered" > identifier = Identifier.from(</span>
@@ -3555,7 +3384,7 @@ export class NewComposite extends LogicItem {
3555
3384
  this,
3556
3385
  'properties',
3557
3386
  );
3558
- <span class="cstat-no" title="statement not covered" > } else if (typeof options === 'string') {</span>
3387
+ } else <span class="cstat-no" title="statement not covered" >if (typeof options === 'string') {</span>
3559
3388
  <span class="cstat-no" title="statement not covered" > identifier = Identifier.from(</span>
3560
3389
  {
3561
3390
  ...identifierOptions,
@@ -3564,8 +3393,8 @@ export class NewComposite extends LogicItem {
3564
3393
  this,
3565
3394
  'properties',
3566
3395
  );
3567
- <span class="cstat-no" title="statement not covered" > } else if (asserts.isIdentifier(options)) {</span>
3568
- <span class="cstat-no" title="statement not covered" > options.ensureDelete(); // 同一实例不支持多处存在</span>
3396
+ } else <span class="cstat-no" title="statement not covered" >if (options instanceof Identifier) {</span>
3397
+ <span class="cstat-no" title="statement not covered" > options.ensureDelete(); </span>// 同一实例不支持多处存在
3569
3398
  <span class="cstat-no" title="statement not covered" > identifier = options;</span>
3570
3399
  <span class="cstat-no" title="statement not covered" > Object.assign(identifier, relationOptions);</span>
3571
3400
  } else {
@@ -3600,7 +3429,7 @@ export class NewComposite extends LogicItem {
3600
3429
  */
3601
3430
  insertIdentifierAt(identifier: Identifier, index: number): Identifier;
3602
3431
  &nbsp;
3603
- <span class="fstat-no" title="function not covered" > insertIdentifierAt(o</span>ptions: string | Partial&lt;Identifier&gt; | Identifier, index: number) {
3432
+ <span class="fstat-no" title="function not covered" > insertIdentifierAt(</span>options: string | Partial&lt;Identifier&gt; | Identifier, index: number) {
3604
3433
  const node = <span class="cstat-no" title="statement not covered" >this._insertIdentifierAt(options as any, index);</span>
3605
3434
  <span class="cstat-no" title="statement not covered" > node.create({</span>
3606
3435
  index,
@@ -3631,7 +3460,7 @@ export class NewComposite extends LogicItem {
3631
3460
  */
3632
3461
  _addIdentifier(identifier: Identifier): Identifier;
3633
3462
  &nbsp;
3634
- <span class="fstat-no" title="function not covered" > _addIdentifier(o</span>ptions?: string | Partial&lt;Identifier&gt; | Identifier) {
3463
+ <span class="fstat-no" title="function not covered" > _addIdentifier(</span>options?: string | Partial&lt;Identifier&gt; | Identifier) {
3635
3464
  const index = <span class="cstat-no" title="statement not covered" >this.properties.length;</span>
3636
3465
  <span class="cstat-no" title="statement not covered" > return this._insertIdentifierAt(options as any, index);</span>
3637
3466
  }
@@ -3655,7 +3484,7 @@ export class NewComposite extends LogicItem {
3655
3484
  */
3656
3485
  addIdentifier(identifier: Identifier): Identifier;
3657
3486
  &nbsp;
3658
- <span class="fstat-no" title="function not covered" > addIdentifier(o</span>ptions?: string | Partial&lt;Identifier&gt; | Identifier) {
3487
+ <span class="fstat-no" title="function not covered" > addIdentifier(</span>options?: string | Partial&lt;Identifier&gt; | Identifier) {
3659
3488
  const node = <span class="cstat-no" title="statement not covered" >this._addIdentifier(options as any);</span>
3660
3489
  const index = <span class="cstat-no" title="statement not covered" >this.properties.indexOf(node);</span>
3661
3490
  <span class="cstat-no" title="statement not covered" > node.create({</span>
@@ -3666,11 +3495,11 @@ export class NewComposite extends LogicItem {
3666
3495
  <span class="cstat-no" title="statement not covered" > return node;</span>
3667
3496
  }
3668
3497
  &nbsp;
3669
- <span class="fstat-no" title="function not covered" > getSelectMembersExistingNames(e</span>xcludedList: Array&lt;SelectMembers&gt; = <span class="branch-0 cbranch-no" title="branch not covered" >[]) {</span>
3498
+ <span class="fstat-no" title="function not covered" > getSelectMembersExistingNames(</span>excludedList: Array&lt;SelectMembers&gt; = <span class="branch-0 cbranch-no" title="branch not covered" >[])</span> {
3670
3499
  const excludedSet = <span class="cstat-no" title="statement not covered" >new Set(excludedList);</span>
3671
- <span class="cstat-no" title="statement not covered" > return ((this.rights as SelectMembers[]) || []).filter((<span class="fstat-no" title="function not covered" >item) =&gt; <span class="cstat-no" title="statement not covered" >!</span>excludedSet.has(item))</span>.map((<span class="fstat-no" title="function not covered" >item) =&gt; <span class="cstat-no" title="statement not covered" >i</span>tem?.name)</span>;</span>
3500
+ <span class="cstat-no" title="statement not covered" > return ((this.rights as SelectMembers[]) || []).filter(<span class="fstat-no" title="function not covered" >(i</span>tem) =&gt; <span class="cstat-no" title="statement not covered" >!excludedSet.has(item))</span>.map(<span class="fstat-no" title="function not covered" >(i</span>tem) =&gt; <span class="cstat-no" title="statement not covered" >item.name)</span>;</span>
3672
3501
  }
3673
- <span class="fstat-no" title="function not covered" > getSelectMembersUniqueName(n</span>ame = <span class="branch-0 cbranch-no" title="branch not covered" >'selectMembers1') {</span>
3502
+ <span class="fstat-no" title="function not covered" > getSelectMembersUniqueName(</span>name = <span class="branch-0 cbranch-no" title="branch not covered" >'selectMembers1')</span> {
3674
3503
  <span class="cstat-no" title="statement not covered" > return utils.unique(name, this.getSelectMembersExistingNames(), undefined, false);</span>
3675
3504
  }
3676
3505
  &nbsp;
@@ -3695,10 +3524,9 @@ export class NewComposite extends LogicItem {
3695
3524
  */
3696
3525
  _insertSelectMembersAt(selectMembers: SelectMembers, index: number): SelectMembers;
3697
3526
  &nbsp;
3698
- <span class="fstat-no" title="function not covered" > _insertSelectMembersAt(o</span>ptions: string | Partial&lt;SelectMembers&gt; | SelectMembers, index: number) {
3527
+ <span class="fstat-no" title="function not covered" > _insertSelectMembersAt(</span>options: string | Partial&lt;SelectMembers&gt; | SelectMembers, index: number) {
3699
3528
  const selectMembersOptions: any = <span class="cstat-no" title="statement not covered" >{};</span>
3700
3529
  const relationOptions = <span class="cstat-no" title="statement not covered" >{ parentNode: this, parentKey: 'rights' };</span>
3701
- const <span class="cstat-no" title="statement not covered" >SelectMembers = getConceptConstructor('SelectMembers');</span>
3702
3530
  let selectMembers: SelectMembers;
3703
3531
  <span class="cstat-no" title="statement not covered" > if (!options) {</span>
3704
3532
  <span class="cstat-no" title="statement not covered" > selectMembers = SelectMembers.from(</span>
@@ -3709,7 +3537,7 @@ export class NewComposite extends LogicItem {
3709
3537
  this,
3710
3538
  'rights',
3711
3539
  );
3712
- <span class="cstat-no" title="statement not covered" > } else if (typeof options === 'string') {</span>
3540
+ } else <span class="cstat-no" title="statement not covered" >if (typeof options === 'string') {</span>
3713
3541
  <span class="cstat-no" title="statement not covered" > selectMembers = SelectMembers.from(</span>
3714
3542
  {
3715
3543
  ...selectMembersOptions,
@@ -3718,8 +3546,8 @@ export class NewComposite extends LogicItem {
3718
3546
  this,
3719
3547
  'rights',
3720
3548
  );
3721
- <span class="cstat-no" title="statement not covered" > } else if (asserts.isSelectMembers(options)) {</span>
3722
- <span class="cstat-no" title="statement not covered" > options.ensureDelete(); // 同一实例不支持多处存在</span>
3549
+ } else <span class="cstat-no" title="statement not covered" >if (options instanceof SelectMembers) {</span>
3550
+ <span class="cstat-no" title="statement not covered" > options.ensureDelete(); </span>// 同一实例不支持多处存在
3723
3551
  <span class="cstat-no" title="statement not covered" > selectMembers = options;</span>
3724
3552
  <span class="cstat-no" title="statement not covered" > Object.assign(selectMembers, relationOptions);</span>
3725
3553
  } else {
@@ -3754,7 +3582,7 @@ export class NewComposite extends LogicItem {
3754
3582
  */
3755
3583
  insertSelectMembersAt(selectMembers: SelectMembers, index: number): SelectMembers;
3756
3584
  &nbsp;
3757
- <span class="fstat-no" title="function not covered" > insertSelectMembersAt(o</span>ptions: string | Partial&lt;SelectMembers&gt; | SelectMembers, index: number) {
3585
+ <span class="fstat-no" title="function not covered" > insertSelectMembersAt(</span>options: string | Partial&lt;SelectMembers&gt; | SelectMembers, index: number) {
3758
3586
  const node = <span class="cstat-no" title="statement not covered" >this._insertSelectMembersAt(options as any, index);</span>
3759
3587
  <span class="cstat-no" title="statement not covered" > node.create({</span>
3760
3588
  index,
@@ -3785,7 +3613,7 @@ export class NewComposite extends LogicItem {
3785
3613
  */
3786
3614
  _addSelectMembers(selectMembers: SelectMembers): SelectMembers;
3787
3615
  &nbsp;
3788
- <span class="fstat-no" title="function not covered" > _addSelectMembers(o</span>ptions?: string | Partial&lt;SelectMembers&gt; | SelectMembers) {
3616
+ <span class="fstat-no" title="function not covered" > _addSelectMembers(</span>options?: string | Partial&lt;SelectMembers&gt; | SelectMembers) {
3789
3617
  const index = <span class="cstat-no" title="statement not covered" >this.rights.length;</span>
3790
3618
  <span class="cstat-no" title="statement not covered" > return this._insertSelectMembersAt(options as any, index);</span>
3791
3619
  }
@@ -3809,7 +3637,7 @@ export class NewComposite extends LogicItem {
3809
3637
  */
3810
3638
  addSelectMembers(selectMembers: SelectMembers): SelectMembers;
3811
3639
  &nbsp;
3812
- <span class="fstat-no" title="function not covered" > addSelectMembers(o</span>ptions?: string | Partial&lt;SelectMembers&gt; | SelectMembers) {
3640
+ <span class="fstat-no" title="function not covered" > addSelectMembers(</span>options?: string | Partial&lt;SelectMembers&gt; | SelectMembers) {
3813
3641
  const node = <span class="cstat-no" title="statement not covered" >this._addSelectMembers(options as any);</span>
3814
3642
  const index = <span class="cstat-no" title="statement not covered" >this.rights.indexOf(node);</span>
3815
3643
  <span class="cstat-no" title="statement not covered" > node.create({</span>
@@ -3820,13 +3648,13 @@ export class NewComposite extends LogicItem {
3820
3648
  <span class="cstat-no" title="statement not covered" > return node;</span>
3821
3649
  }
3822
3650
  &nbsp;
3823
- <span class="fstat-no" title="function not covered" > getAssignmentLineExistingNames(e</span>xcludedList: Array&lt;AssignmentLine&gt; = <span class="branch-0 cbranch-no" title="branch not covered" >[]) {</span>
3651
+ <span class="fstat-no" title="function not covered" > getAssignmentLineExistingNames(</span>excludedList: Array&lt;AssignmentLine&gt; = <span class="branch-0 cbranch-no" title="branch not covered" >[])</span> {
3824
3652
  const excludedSet = <span class="cstat-no" title="statement not covered" >new Set(excludedList);</span>
3825
3653
  <span class="cstat-no" title="statement not covered" > return ((this.assignmentLines as AssignmentLine[]) || [])</span>
3826
- .filter((<span class="fstat-no" title="function not covered" >item) =&gt; <span class="cstat-no" title="statement not covered" >!</span>excludedSet.has(item))</span>
3827
- .map((<span class="fstat-no" title="function not covered" >item) =&gt; <span class="cstat-no" title="statement not covered" >i</span>tem?.name)</span>;
3654
+ .filter(<span class="fstat-no" title="function not covered" >(i</span>tem) =&gt; <span class="cstat-no" title="statement not covered" >!excludedSet.has(item))</span>
3655
+ .map(<span class="fstat-no" title="function not covered" >(i</span>tem) =&gt; <span class="cstat-no" title="statement not covered" >item.name)</span>;
3828
3656
  }
3829
- <span class="fstat-no" title="function not covered" > getAssignmentLineUniqueName(n</span>ame = <span class="branch-0 cbranch-no" title="branch not covered" >'assignmentLine1') {</span>
3657
+ <span class="fstat-no" title="function not covered" > getAssignmentLineUniqueName(</span>name = <span class="branch-0 cbranch-no" title="branch not covered" >'assignmentLine1')</span> {
3830
3658
  <span class="cstat-no" title="statement not covered" > return utils.unique(name, this.getAssignmentLineExistingNames(), undefined, false);</span>
3831
3659
  }
3832
3660
  &nbsp;
@@ -3851,10 +3679,9 @@ export class NewComposite extends LogicItem {
3851
3679
  */
3852
3680
  _insertAssignmentLineAt(assignmentLine: AssignmentLine, index: number): AssignmentLine;
3853
3681
  &nbsp;
3854
- <span class="fstat-no" title="function not covered" > _insertAssignmentLineAt(o</span>ptions: string | Partial&lt;AssignmentLine&gt; | AssignmentLine, index: number) {
3682
+ <span class="fstat-no" title="function not covered" > _insertAssignmentLineAt(</span>options: string | Partial&lt;AssignmentLine&gt; | AssignmentLine, index: number) {
3855
3683
  const assignmentLineOptions: any = <span class="cstat-no" title="statement not covered" >{};</span>
3856
3684
  const relationOptions = <span class="cstat-no" title="statement not covered" >{ parentNode: this, parentKey: 'assignmentLines' };</span>
3857
- const <span class="cstat-no" title="statement not covered" >AssignmentLine = getConceptConstructor('AssignmentLine');</span>
3858
3685
  let assignmentLine: AssignmentLine;
3859
3686
  <span class="cstat-no" title="statement not covered" > if (!options) {</span>
3860
3687
  <span class="cstat-no" title="statement not covered" > assignmentLine = AssignmentLine.from(</span>
@@ -3865,7 +3692,7 @@ export class NewComposite extends LogicItem {
3865
3692
  this,
3866
3693
  'assignmentLines',
3867
3694
  );
3868
- <span class="cstat-no" title="statement not covered" > } else if (typeof options === 'string') {</span>
3695
+ } else <span class="cstat-no" title="statement not covered" >if (typeof options === 'string') {</span>
3869
3696
  <span class="cstat-no" title="statement not covered" > assignmentLine = AssignmentLine.from(</span>
3870
3697
  {
3871
3698
  ...assignmentLineOptions,
@@ -3874,8 +3701,8 @@ export class NewComposite extends LogicItem {
3874
3701
  this,
3875
3702
  'assignmentLines',
3876
3703
  );
3877
- <span class="cstat-no" title="statement not covered" > } else if (asserts.isAssignmentLine(options)) {</span>
3878
- <span class="cstat-no" title="statement not covered" > options.ensureDelete(); // 同一实例不支持多处存在</span>
3704
+ } else <span class="cstat-no" title="statement not covered" >if (options instanceof AssignmentLine) {</span>
3705
+ <span class="cstat-no" title="statement not covered" > options.ensureDelete(); </span>// 同一实例不支持多处存在
3879
3706
  <span class="cstat-no" title="statement not covered" > assignmentLine = options;</span>
3880
3707
  <span class="cstat-no" title="statement not covered" > Object.assign(assignmentLine, relationOptions);</span>
3881
3708
  } else {
@@ -3910,7 +3737,7 @@ export class NewComposite extends LogicItem {
3910
3737
  */
3911
3738
  insertAssignmentLineAt(assignmentLine: AssignmentLine, index: number): AssignmentLine;
3912
3739
  &nbsp;
3913
- <span class="fstat-no" title="function not covered" > insertAssignmentLineAt(o</span>ptions: string | Partial&lt;AssignmentLine&gt; | AssignmentLine, index: number) {
3740
+ <span class="fstat-no" title="function not covered" > insertAssignmentLineAt(</span>options: string | Partial&lt;AssignmentLine&gt; | AssignmentLine, index: number) {
3914
3741
  const node = <span class="cstat-no" title="statement not covered" >this._insertAssignmentLineAt(options as any, index);</span>
3915
3742
  <span class="cstat-no" title="statement not covered" > node.create({</span>
3916
3743
  index,
@@ -3941,7 +3768,7 @@ export class NewComposite extends LogicItem {
3941
3768
  */
3942
3769
  _addAssignmentLine(assignmentLine: AssignmentLine): AssignmentLine;
3943
3770
  &nbsp;
3944
- <span class="fstat-no" title="function not covered" > _addAssignmentLine(o</span>ptions?: string | Partial&lt;AssignmentLine&gt; | AssignmentLine) {
3771
+ <span class="fstat-no" title="function not covered" > _addAssignmentLine(</span>options?: string | Partial&lt;AssignmentLine&gt; | AssignmentLine) {
3945
3772
  const index = <span class="cstat-no" title="statement not covered" >this.assignmentLines.length;</span>
3946
3773
  <span class="cstat-no" title="statement not covered" > return this._insertAssignmentLineAt(options as any, index);</span>
3947
3774
  }
@@ -3965,7 +3792,7 @@ export class NewComposite extends LogicItem {
3965
3792
  */
3966
3793
  addAssignmentLine(assignmentLine: AssignmentLine): AssignmentLine;
3967
3794
  &nbsp;
3968
- <span class="fstat-no" title="function not covered" > addAssignmentLine(o</span>ptions?: string | Partial&lt;AssignmentLine&gt; | AssignmentLine) {
3795
+ <span class="fstat-no" title="function not covered" > addAssignmentLine(</span>options?: string | Partial&lt;AssignmentLine&gt; | AssignmentLine) {
3969
3796
  const node = <span class="cstat-no" title="statement not covered" >this._addAssignmentLine(options as any);</span>
3970
3797
  const index = <span class="cstat-no" title="statement not covered" >this.assignmentLines.indexOf(node);</span>
3971
3798
  <span class="cstat-no" title="statement not covered" > node.create({</span>
@@ -3988,7 +3815,7 @@ export class NewComposite extends LogicItem {
3988
3815
  */
3989
3816
  removeTypeAnnotation(typeAnnotation: TypeAnnotation): void;
3990
3817
  &nbsp;
3991
- <span class="fstat-no" title="function not covered" > removeTypeAnnotation(o</span>ptions: string | TypeAnnotation) {
3818
+ <span class="fstat-no" title="function not covered" > removeTypeAnnotation(</span>options: string | TypeAnnotation) {
3992
3819
  let typeAnnotation: TypeAnnotation;
3993
3820
  <span class="cstat-no" title="statement not covered" > if (typeof options === 'string') {</span>
3994
3821
  <span class="cstat-no" title="statement not covered" > typeAnnotation = this.typeAnnotation;</span>
@@ -4001,7 +3828,7 @@ export class NewComposite extends LogicItem {
4001
3828
  <span class="cstat-no" title="statement not covered" > return typeAnnotation.delete();</span>
4002
3829
  }
4003
3830
  &nbsp;
4004
- <span class="fstat-no" title="function not covered" > __removeTypeAnnotation(t</span>ypeAnnotation: TypeAnnotation) {
3831
+ <span class="fstat-no" title="function not covered" > __removeTypeAnnotation(</span>typeAnnotation: TypeAnnotation) {
4005
3832
  const parentKey = <span class="cstat-no" title="statement not covered" >typeAnnotation.parentKey;</span>
4006
3833
  const params: Params = <span class="cstat-no" title="statement not covered" >{</span>
4007
3834
  parentNode: this,
@@ -4012,21 +3839,13 @@ export class NewComposite extends LogicItem {
4012
3839
  };
4013
3840
  <span class="cstat-no" title="statement not covered" > if (parentKey) {</span>
4014
3841
  <span class="cstat-no" title="statement not covered" > params.parentKey = parentKey;</span>
4015
- // @ts-ignore
4016
- const t = <span class="cstat-no" title="statement not covered" >this.__v_raw || this;</span>
4017
- // @ts-ignore
4018
- const n = <span class="cstat-no" title="statement not covered" >typeAnnotation.__v_raw || typeAnnotation;</span>
4019
- <span class="cstat-no" title="statement not covered" > if (Array.isArray((t as any)[parentKey])) {</span>
4020
- // @ts-ignore
4021
- const index = (<span class="cstat-no" title="statement not covered" >t as any)[parentKey].findIndex((<span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >el) =&gt; (e</span>l.__v_raw || el) === n)</span>;</span>
3842
+ <span class="cstat-no" title="statement not covered" > if (Array.isArray((this as any)[parentKey])) {</span>
3843
+ const index = (<span class="cstat-no" title="statement not covered" >this as any)[parentKey].indexOf(typeAnnotation);</span>
4022
3844
  <span class="cstat-no" title="statement not covered" > ~index &amp;&amp; (this as any)[parentKey].splice(index, 1);</span>
4023
3845
  <span class="cstat-no" title="statement not covered" > params.index = index;</span>
4024
- } else {
4025
- const q = (<span class="cstat-no" title="statement not covered" >t as any)[parentKey];</span>
4026
- <span class="cstat-no" title="statement not covered" > if ((q.__v_raw || q) === n) {</span>
4027
- <span class="cstat-no" title="statement not covered" > params.index = 0;</span>
4028
- (<span class="cstat-no" title="statement not covered" >this as any)[parentKey] = undefined;</span>
4029
- }
3846
+ } else <span class="cstat-no" title="statement not covered" >if ((this as any)[parentKey] === typeAnnotation) {</span>
3847
+ <span class="cstat-no" title="statement not covered" > params.index = 0;</span>
3848
+ (<span class="cstat-no" title="statement not covered" >this as any)[parentKey] = undefined;</span>
4030
3849
  }
4031
3850
  }
4032
3851
  <span class="cstat-no" title="statement not covered" > return params;</span>
@@ -4044,10 +3863,10 @@ export class NewComposite extends LogicItem {
4044
3863
  */
4045
3864
  removeIdentifier(identifier: Identifier): void;
4046
3865
  &nbsp;
4047
- <span class="fstat-no" title="function not covered" > removeIdentifier(o</span>ptions: string | Identifier) {
3866
+ <span class="fstat-no" title="function not covered" > removeIdentifier(</span>options: string | Identifier) {
4048
3867
  let identifier: Identifier;
4049
3868
  <span class="cstat-no" title="statement not covered" > if (typeof options === 'string') {</span>
4050
- <span class="cstat-no" title="statement not covered" > identifier = (this.properties as Identifier[]).find((<span class="fstat-no" title="function not covered" >item) =&gt; <span class="cstat-no" title="statement not covered" >i</span>tem.name === options)</span>;</span>
3869
+ <span class="cstat-no" title="statement not covered" > identifier = (this.properties as Identifier[]).find(<span class="fstat-no" title="function not covered" >(i</span>tem) =&gt; <span class="cstat-no" title="statement not covered" >item.name === options)</span>;</span>
4051
3870
  <span class="cstat-no" title="statement not covered" > if (!identifier) {</span>
4052
3871
  <span class="cstat-no" title="statement not covered" > throw new Error('找不到标识符 ' + options);</span>
4053
3872
  }
@@ -4057,7 +3876,7 @@ export class NewComposite extends LogicItem {
4057
3876
  <span class="cstat-no" title="statement not covered" > return identifier.delete();</span>
4058
3877
  }
4059
3878
  &nbsp;
4060
- <span class="fstat-no" title="function not covered" > __removeLogicItem(l</span>ogicItem: LogicItem) {
3879
+ <span class="fstat-no" title="function not covered" > __removeLogicItem(</span>logicItem: LogicItem) {
4061
3880
  const parentKey = <span class="cstat-no" title="statement not covered" >logicItem.parentKey;</span>
4062
3881
  const params: Params = <span class="cstat-no" title="statement not covered" >{</span>
4063
3882
  parentNode: this,
@@ -4068,21 +3887,13 @@ export class NewComposite extends LogicItem {
4068
3887
  };
4069
3888
  <span class="cstat-no" title="statement not covered" > if (parentKey) {</span>
4070
3889
  <span class="cstat-no" title="statement not covered" > params.parentKey = parentKey;</span>
4071
- // @ts-ignore
4072
- const t = <span class="cstat-no" title="statement not covered" >this.__v_raw || this;</span>
4073
- // @ts-ignore
4074
- const n = <span class="cstat-no" title="statement not covered" >logicItem.__v_raw || logicItem;</span>
4075
- <span class="cstat-no" title="statement not covered" > if (Array.isArray((t as any)[parentKey])) {</span>
4076
- // @ts-ignore
4077
- const index = (<span class="cstat-no" title="statement not covered" >t as any)[parentKey].findIndex((<span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >el) =&gt; (e</span>l.__v_raw || el) === n)</span>;</span>
3890
+ <span class="cstat-no" title="statement not covered" > if (Array.isArray((this as any)[parentKey])) {</span>
3891
+ const index = (<span class="cstat-no" title="statement not covered" >this as any)[parentKey].indexOf(logicItem);</span>
4078
3892
  <span class="cstat-no" title="statement not covered" > ~index &amp;&amp; (this as any)[parentKey].splice(index, 1);</span>
4079
3893
  <span class="cstat-no" title="statement not covered" > params.index = index;</span>
4080
- } else {
4081
- const q = (<span class="cstat-no" title="statement not covered" >t as any)[parentKey];</span>
4082
- <span class="cstat-no" title="statement not covered" > if ((q.__v_raw || q) === n) {</span>
4083
- <span class="cstat-no" title="statement not covered" > params.index = 0;</span>
4084
- (<span class="cstat-no" title="statement not covered" >this as any)[parentKey] = undefined;</span>
4085
- }
3894
+ } else <span class="cstat-no" title="statement not covered" >if ((this as any)[parentKey] === logicItem) {</span>
3895
+ <span class="cstat-no" title="statement not covered" > params.index = 0;</span>
3896
+ (<span class="cstat-no" title="statement not covered" >this as any)[parentKey] = undefined;</span>
4086
3897
  }
4087
3898
  }
4088
3899
  <span class="cstat-no" title="statement not covered" > return params;</span>
@@ -4100,10 +3911,10 @@ export class NewComposite extends LogicItem {
4100
3911
  */
4101
3912
  removeSelectMembers(selectMembers: SelectMembers): void;
4102
3913
  &nbsp;
4103
- <span class="fstat-no" title="function not covered" > removeSelectMembers(o</span>ptions: string | SelectMembers) {
3914
+ <span class="fstat-no" title="function not covered" > removeSelectMembers(</span>options: string | SelectMembers) {
4104
3915
  let selectMembers: SelectMembers;
4105
3916
  <span class="cstat-no" title="statement not covered" > if (typeof options === 'string') {</span>
4106
- <span class="cstat-no" title="statement not covered" > selectMembers = (this.rights as SelectMembers[]).find((<span class="fstat-no" title="function not covered" >item) =&gt; <span class="cstat-no" title="statement not covered" >i</span>tem.name === options)</span>;</span>
3917
+ <span class="cstat-no" title="statement not covered" > selectMembers = (this.rights as SelectMembers[]).find(<span class="fstat-no" title="function not covered" >(i</span>tem) =&gt; <span class="cstat-no" title="statement not covered" >item.name === options)</span>;</span>
4107
3918
  <span class="cstat-no" title="statement not covered" > if (!selectMembers) {</span>
4108
3919
  <span class="cstat-no" title="statement not covered" > throw new Error('找不到选择成员 ' + options);</span>
4109
3920
  }
@@ -4113,7 +3924,7 @@ export class NewComposite extends LogicItem {
4113
3924
  <span class="cstat-no" title="statement not covered" > return selectMembers.delete();</span>
4114
3925
  }
4115
3926
  &nbsp;
4116
- <span class="fstat-no" title="function not covered" > __removeSelectMembers(s</span>electMembers: SelectMembers) {
3927
+ <span class="fstat-no" title="function not covered" > __removeSelectMembers(</span>selectMembers: SelectMembers) {
4117
3928
  const parentKey = <span class="cstat-no" title="statement not covered" >selectMembers.parentKey;</span>
4118
3929
  const params: Params = <span class="cstat-no" title="statement not covered" >{</span>
4119
3930
  parentNode: this,
@@ -4124,21 +3935,13 @@ export class NewComposite extends LogicItem {
4124
3935
  };
4125
3936
  <span class="cstat-no" title="statement not covered" > if (parentKey) {</span>
4126
3937
  <span class="cstat-no" title="statement not covered" > params.parentKey = parentKey;</span>
4127
- // @ts-ignore
4128
- const t = <span class="cstat-no" title="statement not covered" >this.__v_raw || this;</span>
4129
- // @ts-ignore
4130
- const n = <span class="cstat-no" title="statement not covered" >selectMembers.__v_raw || selectMembers;</span>
4131
- <span class="cstat-no" title="statement not covered" > if (Array.isArray((t as any)[parentKey])) {</span>
4132
- // @ts-ignore
4133
- const index = (<span class="cstat-no" title="statement not covered" >t as any)[parentKey].findIndex((<span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >el) =&gt; (e</span>l.__v_raw || el) === n)</span>;</span>
3938
+ <span class="cstat-no" title="statement not covered" > if (Array.isArray((this as any)[parentKey])) {</span>
3939
+ const index = (<span class="cstat-no" title="statement not covered" >this as any)[parentKey].indexOf(selectMembers);</span>
4134
3940
  <span class="cstat-no" title="statement not covered" > ~index &amp;&amp; (this as any)[parentKey].splice(index, 1);</span>
4135
3941
  <span class="cstat-no" title="statement not covered" > params.index = index;</span>
4136
- } else {
4137
- const q = (<span class="cstat-no" title="statement not covered" >t as any)[parentKey];</span>
4138
- <span class="cstat-no" title="statement not covered" > if ((q.__v_raw || q) === n) {</span>
4139
- <span class="cstat-no" title="statement not covered" > params.index = 0;</span>
4140
- (<span class="cstat-no" title="statement not covered" >this as any)[parentKey] = undefined;</span>
4141
- }
3942
+ } else <span class="cstat-no" title="statement not covered" >if ((this as any)[parentKey] === selectMembers) {</span>
3943
+ <span class="cstat-no" title="statement not covered" > params.index = 0;</span>
3944
+ (<span class="cstat-no" title="statement not covered" >this as any)[parentKey] = undefined;</span>
4142
3945
  }
4143
3946
  }
4144
3947
  <span class="cstat-no" title="statement not covered" > return params;</span>
@@ -4156,10 +3959,10 @@ export class NewComposite extends LogicItem {
4156
3959
  */
4157
3960
  removeAssignmentLine(assignmentLine: AssignmentLine): void;
4158
3961
  &nbsp;
4159
- <span class="fstat-no" title="function not covered" > removeAssignmentLine(o</span>ptions: string | AssignmentLine) {
3962
+ <span class="fstat-no" title="function not covered" > removeAssignmentLine(</span>options: string | AssignmentLine) {
4160
3963
  let assignmentLine: AssignmentLine;
4161
3964
  <span class="cstat-no" title="statement not covered" > if (typeof options === 'string') {</span>
4162
- <span class="cstat-no" title="statement not covered" > assignmentLine = (this.assignmentLines as AssignmentLine[]).find((<span class="fstat-no" title="function not covered" >item) =&gt; <span class="cstat-no" title="statement not covered" >i</span>tem.name === options)</span>;</span>
3965
+ <span class="cstat-no" title="statement not covered" > assignmentLine = (this.assignmentLines as AssignmentLine[]).find(<span class="fstat-no" title="function not covered" >(i</span>tem) =&gt; <span class="cstat-no" title="statement not covered" >item.name === options)</span>;</span>
4163
3966
  <span class="cstat-no" title="statement not covered" > if (!assignmentLine) {</span>
4164
3967
  <span class="cstat-no" title="statement not covered" > throw new Error('找不到赋值连线 ' + options);</span>
4165
3968
  }
@@ -4169,7 +3972,7 @@ export class NewComposite extends LogicItem {
4169
3972
  <span class="cstat-no" title="statement not covered" > return assignmentLine.delete();</span>
4170
3973
  }
4171
3974
  &nbsp;
4172
- <span class="fstat-no" title="function not covered" > __removeAssignmentLine(a</span>ssignmentLine: AssignmentLine) {
3975
+ <span class="fstat-no" title="function not covered" > __removeAssignmentLine(</span>assignmentLine: AssignmentLine) {
4173
3976
  const parentKey = <span class="cstat-no" title="statement not covered" >assignmentLine.parentKey;</span>
4174
3977
  const params: Params = <span class="cstat-no" title="statement not covered" >{</span>
4175
3978
  parentNode: this,
@@ -4180,21 +3983,13 @@ export class NewComposite extends LogicItem {
4180
3983
  };
4181
3984
  <span class="cstat-no" title="statement not covered" > if (parentKey) {</span>
4182
3985
  <span class="cstat-no" title="statement not covered" > params.parentKey = parentKey;</span>
4183
- // @ts-ignore
4184
- const t = <span class="cstat-no" title="statement not covered" >this.__v_raw || this;</span>
4185
- // @ts-ignore
4186
- const n = <span class="cstat-no" title="statement not covered" >assignmentLine.__v_raw || assignmentLine;</span>
4187
- <span class="cstat-no" title="statement not covered" > if (Array.isArray((t as any)[parentKey])) {</span>
4188
- // @ts-ignore
4189
- const index = (<span class="cstat-no" title="statement not covered" >t as any)[parentKey].findIndex((<span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >el) =&gt; (e</span>l.__v_raw || el) === n)</span>;</span>
3986
+ <span class="cstat-no" title="statement not covered" > if (Array.isArray((this as any)[parentKey])) {</span>
3987
+ const index = (<span class="cstat-no" title="statement not covered" >this as any)[parentKey].indexOf(assignmentLine);</span>
4190
3988
  <span class="cstat-no" title="statement not covered" > ~index &amp;&amp; (this as any)[parentKey].splice(index, 1);</span>
4191
3989
  <span class="cstat-no" title="statement not covered" > params.index = index;</span>
4192
- } else {
4193
- const q = (<span class="cstat-no" title="statement not covered" >t as any)[parentKey];</span>
4194
- <span class="cstat-no" title="statement not covered" > if ((q.__v_raw || q) === n) {</span>
4195
- <span class="cstat-no" title="statement not covered" > params.index = 0;</span>
4196
- (<span class="cstat-no" title="statement not covered" >this as any)[parentKey] = undefined;</span>
4197
- }
3990
+ } else <span class="cstat-no" title="statement not covered" >if ((this as any)[parentKey] === assignmentLine) {</span>
3991
+ <span class="cstat-no" title="statement not covered" > params.index = 0;</span>
3992
+ (<span class="cstat-no" title="statement not covered" >this as any)[parentKey] = undefined;</span>
4198
3993
  }
4199
3994
  }
4200
3995
  <span class="cstat-no" title="statement not covered" > return params;</span>
@@ -4208,18 +4003,17 @@ export class NewComposite extends LogicItem {
4208
4003
  <span class="cstat-no" title="statement not covered" > return this.assignmentLines.length;</span>
4209
4004
  }
4210
4005
  &nbsp;
4211
- <span class="fstat-no" title="function not covered" > async n</span>ewConnection(addRightIndex?: number) {
4006
+ <span class="fstat-no" title="function not covered" > async </span>newConnection(addRightIndex?: number) {
4212
4007
  const leftLineSet = <span class="cstat-no" title="statement not covered" >new Set();</span>
4213
4008
  const lineArr: Array&lt;AssignmentLine&gt; = <span class="cstat-no" title="statement not covered" >[];</span>
4214
- const <span class="cstat-no" title="statement not covered" >AssignmentLine = getConceptConstructor('AssignmentLine');</span>
4215
4009
  // 系统属性不可自动连线
4216
- <span class="cstat-no" title="statement not covered" > ['id', 'createdTime', 'updatedTime', 'createdBy', 'updatedBy'].forEach((<span class="fstat-no" title="function not covered" >name) =&gt; <span class="cstat-no" title="statement not covered" >l</span>eftLineSet.add(name))</span>;</span>
4010
+ <span class="cstat-no" title="statement not covered" > ['id', 'createdTime', 'updatedTime', 'createdBy', 'updatedBy'].forEach(<span class="fstat-no" title="function not covered" >(n</span>ame) =&gt; <span class="cstat-no" title="statement not covered" >leftLineSet.add(name))</span>;</span>
4217
4011
  // 左边已连线的下标
4218
- <span class="cstat-no" title="statement not covered" > this.assignmentLines.forEach((<span class="fstat-no" title="function not covered" >line) =&gt; {</span></span>
4012
+ <span class="cstat-no" title="statement not covered" > this.assignmentLines.forEach(<span class="fstat-no" title="function not covered" >(l</span>ine) =&gt; {</span>
4219
4013
  <span class="cstat-no" title="statement not covered" > if (line.leftIndex.length &gt; 1) <span class="cstat-no" title="statement not covered" >leftLineSet.add(Number(line.leftIndex[1]));</span></span>
4220
4014
  });
4221
4015
  &nbsp;
4222
- const autoConnection = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >() =&gt; {</span></span>
4016
+ const autoConnection = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >() =</span>&gt; {</span>
4223
4017
  const isAnnotation = <span class="cstat-no" title="statement not covered" >this.typeAnnotation.typeKind === 'anonymousStructure';</span>
4224
4018
  <span class="cstat-no" title="statement not covered" > this.app.emit('collect:start', {</span>
4225
4019
  actionMsg: '自动连线',
@@ -4235,7 +4029,7 @@ export class NewComposite extends LogicItem {
4235
4029
  <span class="cstat-no" title="statement not covered" > if (addRightIndex !== -1 &amp;&amp; addRightIndex !== rightFirstIndex) <span class="cstat-no" title="statement not covered" >return;</span></span>
4236
4030
  // 右侧父节点也不允许自动连线
4237
4031
  const rightLineSet = <span class="cstat-no" title="statement not covered" >new Set();</span>
4238
- <span class="cstat-no" title="statement not covered" > for (let i = <span class="cstat-no" title="statement not covered" >0; i</span> &lt; members.length - 1; i++) {</span>
4032
+ <span class="cstat-no" title="statement not covered" > for (let i = <span class="cstat-no" title="statement not covered" >0;</span> i &lt; members.length - 1; i++) {</span>
4239
4033
  const { completeName } = <span class="cstat-no" title="statement not covered" >members[i];</span>
4240
4034
  const preCompleteName = <span class="cstat-no" title="statement not covered" >members[i + 1].completeName;</span>
4241
4035
  <span class="cstat-no" title="statement not covered" > if (</span>
@@ -4259,7 +4053,7 @@ export class NewComposite extends LogicItem {
4259
4053
  }
4260
4054
  <span class="cstat-no" title="statement not covered" > members.forEach(<span class="fstat-no" title="function not covered" >(r</span>ightMember: any, rightSecondIndex: number) =&gt; {</span>
4261
4055
  const rightName = <span class="cstat-no" title="statement not covered" >rightMember.property.name;</span>
4262
- <span class="cstat-no" title="statement not covered" > if (rightLineSet.has(rightSecondIndex) || leftLineSet.has(leftSecondIndex)) <span class="cstat-no" title="statement not covered" >return;</span></span>
4056
+ <span class="cstat-no" title="statement not covered" > if (rightLineSet.has(rightSecondIndex)) <span class="cstat-no" title="statement not covered" >return;</span></span>
4263
4057
  &nbsp;
4264
4058
  <span class="cstat-no" title="statement not covered" > if (leftName === rightName) {</span>
4265
4059
  const rightTypeAnnotation = <span class="cstat-no" title="statement not covered" >rightMember.__TypeAnnotation;</span>
@@ -4278,17 +4072,17 @@ export class NewComposite extends LogicItem {
4278
4072
  };
4279
4073
  &nbsp;
4280
4074
  let count = <span class="cstat-no" title="statement not covered" >0;</span>
4281
- const typeAnnotationEnd = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >() =&gt; {</span></span>
4282
- const l = <span class="cstat-no" title="statement not covered" >this.properties.every((<span class="fstat-no" title="function not covered" >item) =&gt; <span class="cstat-no" title="statement not covered" >i</span>tem.__isCorrectTypeAnnotation)</span>;</span>
4075
+ const typeAnnotationEnd = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >() =</span>&gt; {</span>
4076
+ const l = <span class="cstat-no" title="statement not covered" >this.properties.every(<span class="fstat-no" title="function not covered" >(i</span>tem) =&gt; <span class="cstat-no" title="statement not covered" >item.__isCorrectTypeAnnotation)</span>;</span>
4283
4077
  const r = <span class="cstat-no" title="statement not covered" >this.rights.every(</span>
4284
- (<span class="fstat-no" title="function not covered" >right) =&gt;</span>
4285
- <span class="cstat-no" title="statement not covered" > right.members.every((<span class="fstat-no" title="function not covered" >item) =&gt; <span class="cstat-no" title="statement not covered" >i</span>tem.__isCorrectTypeAnnotation)</span> &amp;&amp; right.expression.__isCorrectTypeAnnotation,</span>
4078
+ <span class="fstat-no" title="function not covered" > (r</span>ight) =&gt;
4079
+ <span class="cstat-no" title="statement not covered" > right.members.every(<span class="fstat-no" title="function not covered" >(i</span>tem) =&gt; <span class="cstat-no" title="statement not covered" >item.__isCorrectTypeAnnotation)</span> &amp;&amp; right.expression.__isCorrectTypeAnnotation,</span>
4286
4080
  );
4287
4081
  <span class="cstat-no" title="statement not covered" > count++;</span>
4288
4082
  <span class="cstat-no" title="statement not covered" > if (r &amp;&amp; l) {</span>
4289
4083
  <span class="cstat-no" title="statement not covered" > autoConnection();</span>
4290
- <span class="cstat-no" title="statement not covered" > } else if (count &lt;= 10) {</span>
4291
- <span class="cstat-no" title="statement not covered" > setTimeout(<span class="fstat-no" title="function not covered" >() =&gt; {</span></span>
4084
+ } else <span class="cstat-no" title="statement not covered" >if (count &lt;= 10) {</span>
4085
+ <span class="cstat-no" title="statement not covered" > setTimeout(<span class="fstat-no" title="function not covered" >() =</span>&gt; {</span>
4292
4086
  <span class="cstat-no" title="statement not covered" > typeAnnotationEnd();</span>
4293
4087
  }, 100);
4294
4088
  }
@@ -4296,14 +4090,14 @@ export class NewComposite extends LogicItem {
4296
4090
  <span class="cstat-no" title="statement not covered" > typeAnnotationEnd();</span>
4297
4091
  }
4298
4092
  &nbsp;
4299
- <span class="fstat-no" title="function not covered" > connection(l</span>eftItem: Identifier | TypeAnnotation, rightItem: LogicItem | SelectMembers, rightToLeft: boolean) {
4093
+ <span class="fstat-no" title="function not covered" > connection(</span>leftItem: Identifier | TypeAnnotation, rightItem: LogicItem | SelectMembers, rightToLeft: boolean) {
4300
4094
  let newLeftIndex = <span class="cstat-no" title="statement not covered" >[0];</span>
4301
4095
  let newRightIndex = <span class="cstat-no" title="statement not covered" >[];</span>
4302
4096
  let newLines: Array&lt;AssignmentLine&gt; = <span class="cstat-no" title="statement not covered" >[...this.assignmentLines];</span>
4303
4097
  let newProperties = <span class="cstat-no" title="statement not covered" >this.properties;</span>
4304
4098
  <span class="cstat-no" title="statement not covered" > if (leftItem.concept === 'Identifier') {</span>
4305
4099
  const members = <span class="cstat-no" title="statement not covered" >this.properties;</span>
4306
- const secondIndex = <span class="cstat-no" title="statement not covered" >members.findIndex((<span class="fstat-no" title="function not covered" >ident: any) =&gt; <span class="cstat-no" title="statement not covered" >i</span>dent === leftItem)</span>;</span>
4100
+ const secondIndex = <span class="cstat-no" title="statement not covered" >members.findIndex(<span class="fstat-no" title="function not covered" >(i</span>dent: any) =&gt; <span class="cstat-no" title="statement not covered" >ident === leftItem)</span>;</span>
4307
4101
  // 连线左边的坐标。
4308
4102
  <span class="cstat-no" title="statement not covered" > newLeftIndex = [0, secondIndex];</span>
4309
4103
  } else {
@@ -4311,11 +4105,11 @@ export class NewComposite extends LogicItem {
4311
4105
  <span class="cstat-no" title="statement not covered" > newProperties = [];</span>
4312
4106
  }
4313
4107
  <span class="cstat-no" title="statement not covered" > if (rightItem.concept === 'SelectMembers') {</span>
4314
- <span class="cstat-no" title="statement not covered" > newRightIndex = [this.rights.findIndex((<span class="fstat-no" title="function not covered" >right) =&gt; <span class="cstat-no" title="statement not covered" >r</span>ight === rightItem)</span>];</span>
4108
+ <span class="cstat-no" title="statement not covered" > newRightIndex = [this.rights.findIndex(<span class="fstat-no" title="function not covered" >(r</span>ight) =&gt; <span class="cstat-no" title="statement not covered" >right === rightItem)</span>];</span>
4315
4109
  } else {
4316
4110
  const selectMember = <span class="cstat-no" title="statement not covered" >rightItem.getAncestor('SelectMembers');</span>
4317
- const firstIndex = <span class="cstat-no" title="statement not covered" >this.rights.findIndex((<span class="fstat-no" title="function not covered" >right) =&gt; <span class="cstat-no" title="statement not covered" >r</span>ight === selectMember)</span>;</span>
4318
- const secondIndex = <span class="cstat-no" title="statement not covered" >this.rights[firstIndex].members.findIndex((<span class="fstat-no" title="function not covered" >exp: any) =&gt; <span class="cstat-no" title="statement not covered" >e</span>xp === rightItem)</span>;</span>
4111
+ const firstIndex = <span class="cstat-no" title="statement not covered" >this.rights.findIndex(<span class="fstat-no" title="function not covered" >(r</span>ight) =&gt; <span class="cstat-no" title="statement not covered" >right === selectMember)</span>;</span>
4112
+ const secondIndex = <span class="cstat-no" title="statement not covered" >this.rights[firstIndex].members.findIndex(<span class="fstat-no" title="function not covered" >(e</span>xp: any) =&gt; <span class="cstat-no" title="statement not covered" >exp === rightItem)</span>;</span>
4319
4113
  <span class="cstat-no" title="statement not covered" > newRightIndex = [firstIndex, secondIndex];</span>
4320
4114
  }
4321
4115
  // 左边同一个属性只能有一个连线
@@ -4324,7 +4118,6 @@ export class NewComposite extends LogicItem {
4324
4118
  <span class="fstat-no" title="function not covered" > ({</span> leftIndex: index }) =&gt; <span class="cstat-no" title="statement not covered" >!(newLeftIndex[0] === index[0] &amp;&amp; newLeftIndex[1] === index[1]),</span>
4325
4119
  );
4326
4120
  }
4327
- const <span class="cstat-no" title="statement not covered" >AssignmentLine = getConceptConstructor('AssignmentLine');</span>
4328
4121
  const Line: AssignmentLine = <span class="cstat-no" title="statement not covered" >new AssignmentLine({</span>
4329
4122
  leftIndex: newLeftIndex,
4330
4123
  rightIndex: newRightIndex,
@@ -4337,22 +4130,22 @@ export class NewComposite extends LogicItem {
4337
4130
  });
4338
4131
  }
4339
4132
  &nbsp;
4340
- <span class="fstat-no" title="function not covered" > deleteAssignmentLine(a</span>ssignmentLine: AssignmentLine) {
4341
- const newLine = <span class="cstat-no" title="statement not covered" >this.assignmentLines.filter((<span class="fstat-no" title="function not covered" >line) =&gt; <span class="cstat-no" title="statement not covered" >l</span>ine !== assignmentLine)</span>;</span>
4133
+ <span class="fstat-no" title="function not covered" > deleteAssignmentLine(</span>assignmentLine: AssignmentLine) {
4134
+ const newLine = <span class="cstat-no" title="statement not covered" >this.assignmentLines.filter(<span class="fstat-no" title="function not covered" >(l</span>ine) =&gt; <span class="cstat-no" title="statement not covered" >line !== assignmentLine)</span>;</span>
4342
4135
  <span class="cstat-no" title="statement not covered" > this.update({</span>
4343
4136
  assignmentLines: newLine,
4344
4137
  });
4345
4138
  }
4346
4139
  &nbsp;
4347
- <span class="fstat-no" title="function not covered" > changeLinesLocation(s</span>electMember: any) {
4140
+ <span class="fstat-no" title="function not covered" > changeLinesLocation(</span>selectMember: any) {
4348
4141
  <span class="cstat-no" title="statement not covered" > if (selectMember.concept !== 'SelectMembers') <span class="cstat-no" title="statement not covered" >return;</span></span>
4349
4142
  &nbsp;
4350
- <span class="cstat-no" title="statement not covered" > if (this.rights.findIndex((<span class="fstat-no" title="function not covered" >member) =&gt; <span class="cstat-no" title="statement not covered" >s</span>electMember === member)</span> !== -1) {</span>
4351
- const index = <span class="cstat-no" title="statement not covered" >this.rights.findIndex((<span class="fstat-no" title="function not covered" >member) =&gt; <span class="cstat-no" title="statement not covered" >s</span>electMember === member)</span>;</span>
4352
- const newRights = <span class="cstat-no" title="statement not covered" >this.rights.filter((<span class="fstat-no" title="function not covered" >member) =&gt; <span class="cstat-no" title="statement not covered" >s</span>electMember !== member)</span>;</span>
4353
- const filterLine = <span class="cstat-no" title="statement not covered" >this.assignmentLines.filter((<span class="fstat-no" title="function not covered" >line) =&gt; <span class="cstat-no" title="statement not covered" >l</span>ine.rightIndex[0] !== index)</span>;</span>
4143
+ <span class="cstat-no" title="statement not covered" > if (this.rights.findIndex(<span class="fstat-no" title="function not covered" >(m</span>ember) =&gt; <span class="cstat-no" title="statement not covered" >selectMember === member)</span> !== -1) {</span>
4144
+ const index = <span class="cstat-no" title="statement not covered" >this.rights.findIndex(<span class="fstat-no" title="function not covered" >(m</span>ember) =&gt; <span class="cstat-no" title="statement not covered" >selectMember === member)</span>;</span>
4145
+ const newRights = <span class="cstat-no" title="statement not covered" >this.rights.filter(<span class="fstat-no" title="function not covered" >(m</span>ember) =&gt; <span class="cstat-no" title="statement not covered" >selectMember !== member)</span>;</span>
4146
+ const filterLine = <span class="cstat-no" title="statement not covered" >this.assignmentLines.filter(<span class="fstat-no" title="function not covered" >(l</span>ine) =&gt; <span class="cstat-no" title="statement not covered" >line.rightIndex[0] !== index)</span>;</span>
4354
4147
  const newLines: Array&lt;AssignmentLine&gt; = <span class="cstat-no" title="statement not covered" >[];</span>
4355
- <span class="cstat-no" title="statement not covered" > filterLine.forEach((<span class="fstat-no" title="function not covered" >line) =&gt; {</span></span>
4148
+ <span class="cstat-no" title="statement not covered" > filterLine.forEach(<span class="fstat-no" title="function not covered" >(l</span>ine) =&gt; {</span>
4356
4149
  <span class="cstat-no" title="statement not covered" > if (line.rightIndex[0] &gt; index) {</span>
4357
4150
  <span class="cstat-no" title="statement not covered" > if (line.rightIndex[1] === undefined) {</span>
4358
4151
  const newLine = <span class="cstat-no" title="statement not covered" >{ ...line?.toJSON(), rightIndex: [line.rightIndex[0] - 1] };</span>
@@ -4372,22 +4165,22 @@ export class NewComposite extends LogicItem {
4372
4165
  }
4373
4166
  }
4374
4167
  &nbsp;
4375
- <span class="fstat-no" title="function not covered" > changeMembers(o</span>ldNode: any, members: MemberExpression[], keepMembers: any, expression: LogicItem) {
4168
+ <span class="fstat-no" title="function not covered" > changeMembers(</span>oldNode: any, members: MemberExpression[], keepMembers: any, expression: LogicItem) {
4376
4169
  <span class="cstat-no" title="statement not covered" > this.app.emit('collect:start', {</span>
4377
4170
  actionMsg: 'New初始赋值修改变量',
4378
4171
  });
4379
4172
  const selectMember = <span class="cstat-no" title="statement not covered" >oldNode.parentNode;</span>
4380
- const autoConnectionIndex = <span class="cstat-no" title="statement not covered" >this.rights.findIndex((<span class="fstat-no" title="function not covered" >right) =&gt; <span class="cstat-no" title="statement not covered" >r</span>ight === selectMember)</span>;</span>
4381
- const newSelectMember = <span class="cstat-no" title="statement not covered" >{ ...(selectMember?.toJSON?.() ?? selectMember), expression, members };</span>
4382
- const splitIndex = <span class="cstat-no" title="statement not covered" >this.rights.findIndex((<span class="fstat-no" title="function not covered" >right) =&gt; <span class="cstat-no" title="statement not covered" >s</span>electMember === right)</span>;</span>
4173
+ const autoConnectionIndex = <span class="cstat-no" title="statement not covered" >this.rights.findIndex(<span class="fstat-no" title="function not covered" >(r</span>ight) =&gt; <span class="cstat-no" title="statement not covered" >right === selectMember)</span>;</span>
4174
+ const newSelectMember = <span class="cstat-no" title="statement not covered" >{ ...selectMember?.toJSON?.() ?? selectMember, expression, members };</span>
4175
+ const splitIndex = <span class="cstat-no" title="statement not covered" >this.rights.findIndex(<span class="fstat-no" title="function not covered" >(r</span>ight) =&gt; <span class="cstat-no" title="statement not covered" >selectMember === right)</span>;</span>
4383
4176
  const newLines: AssignmentLine[] = <span class="cstat-no" title="statement not covered" >this.assignmentLines.filter(<span class="fstat-no" title="function not covered" >({</span> rightIndex }) =&gt; <span class="cstat-no" title="statement not covered" >rightIndex[0] !== splitIndex)</span>;</span>
4384
4177
  let oldLines: AssignmentLine[] = <span class="cstat-no" title="statement not covered" >this.assignmentLines.filter(<span class="fstat-no" title="function not covered" >({</span> rightIndex }) =&gt; <span class="cstat-no" title="statement not covered" >rightIndex[0] === splitIndex)</span>;</span>
4385
4178
  // 右侧变量改变后,修改连线
4386
4179
  <span class="cstat-no" title="statement not covered" > members.forEach(<span class="fstat-no" title="function not covered" >(i</span>tem, index) =&gt; {</span>
4387
4180
  <span class="cstat-no" title="statement not covered" > if (keepMembers?.has(item.completeName)) {</span>
4388
4181
  const lines = <span class="cstat-no" title="statement not covered" >this.findlines(item, selectMember);</span>
4389
- <span class="cstat-no" title="statement not covered" > lines.forEach((<span class="fstat-no" title="function not covered" >line) =&gt; {</span></span>
4390
- const newLine = <span class="cstat-no" title="statement not covered" >{ ...(line?.toJSON()?.toJSON?.() ?? line), rightIndex: [line.rightIndex[0], index] };</span>
4182
+ <span class="cstat-no" title="statement not covered" > lines.forEach(<span class="fstat-no" title="function not covered" >(l</span>ine) =&gt; {</span>
4183
+ const newLine = <span class="cstat-no" title="statement not covered" >{ ...line?.toJSON()?.toJSON?.() ?? line, rightIndex: [line.rightIndex[0], index] };</span>
4391
4184
  <span class="cstat-no" title="statement not covered" > newLines.push(newLine as AssignmentLine);</span>
4392
4185
  <span class="cstat-no" title="statement not covered" > oldLines = oldLines.filter(<span class="fstat-no" title="function not covered" >({</span> leftIndex }) =&gt; <span class="cstat-no" title="statement not covered" >leftIndex[1] !== line.leftIndex[1])</span>;</span>
4393
4186
  });
@@ -4406,29 +4199,29 @@ export class NewComposite extends LogicItem {
4406
4199
  <span class="cstat-no" title="statement not covered" > this.app.emit('collect:end');</span>
4407
4200
  }
4408
4201
  &nbsp;
4409
- <span class="fstat-no" title="function not covered" > findlines(m</span>ember: any, selectMember: any) {
4202
+ <span class="fstat-no" title="function not covered" > findlines(</span>member: any, selectMember: any) {
4410
4203
  const lines: Array&lt;AssignmentLine&gt; = <span class="cstat-no" title="statement not covered" >[];</span>
4411
4204
  // 根节点的情况
4412
4205
  <span class="cstat-no" title="statement not covered" > if (selectMember === this) {</span>
4413
4206
  <span class="cstat-no" title="statement not covered" > if (member === this.typeAnnotation) <span class="cstat-no" title="statement not covered" >return this.assignmentLines;</span></span>
4414
4207
  &nbsp;
4415
- const index2 = <span class="cstat-no" title="statement not covered" >this.properties.findIndex((<span class="fstat-no" title="function not covered" >item: Identifier) =&gt; <span class="cstat-no" title="statement not covered" >i</span>tem.completeName === member.completeName)</span>;</span>
4416
- <span class="cstat-no" title="statement not covered" > this.assignmentLines.forEach((<span class="fstat-no" title="function not covered" >line) =&gt; {</span></span>
4208
+ const index2 = <span class="cstat-no" title="statement not covered" >this.properties.findIndex(<span class="fstat-no" title="function not covered" >(i</span>tem: Identifier) =&gt; <span class="cstat-no" title="statement not covered" >item.completeName === member.completeName)</span>;</span>
4209
+ <span class="cstat-no" title="statement not covered" > this.assignmentLines.forEach(<span class="fstat-no" title="function not covered" >(l</span>ine) =&gt; {</span>
4417
4210
  <span class="cstat-no" title="statement not covered" > if (line.leftIndex[1] === index2) <span class="cstat-no" title="statement not covered" >lines.push(line);</span></span>
4418
4211
  });
4419
4212
  } else {
4420
- const index1 = <span class="cstat-no" title="statement not covered" >this.rights.findIndex((<span class="fstat-no" title="function not covered" >right) =&gt; <span class="cstat-no" title="statement not covered" >r</span>ight === selectMember)</span>;</span>
4213
+ const index1 = <span class="cstat-no" title="statement not covered" >this.rights.findIndex(<span class="fstat-no" title="function not covered" >(r</span>ight) =&gt; <span class="cstat-no" title="statement not covered" >right === selectMember)</span>;</span>
4421
4214
  const index2 = <span class="cstat-no" title="statement not covered" >selectMember.members.findIndex(</span>
4422
- (<span class="fstat-no" title="function not covered" >item: MemberExpression) =&gt; <span class="cstat-no" title="statement not covered" >i</span>tem.completeName === member.completeName,</span>
4215
+ <span class="fstat-no" title="function not covered" > (i</span>tem: MemberExpression) =&gt; <span class="cstat-no" title="statement not covered" >item.completeName === member.completeName,</span>
4423
4216
  );
4424
- <span class="cstat-no" title="statement not covered" > this.assignmentLines.forEach((<span class="fstat-no" title="function not covered" >line) =&gt; {</span></span>
4217
+ <span class="cstat-no" title="statement not covered" > this.assignmentLines.forEach(<span class="fstat-no" title="function not covered" >(l</span>ine) =&gt; {</span>
4425
4218
  <span class="cstat-no" title="statement not covered" > if (line.rightIndex[0] === index1 &amp;&amp; line.rightIndex[1] === index2) <span class="cstat-no" title="statement not covered" >lines.push(line);</span></span>
4426
4219
  });
4427
4220
  }
4428
4221
  <span class="cstat-no" title="statement not covered" > return lines;</span>
4429
4222
  }
4430
4223
  &nbsp;
4431
- <span class="fstat-no" title="function not covered" > findMember(a</span>rrIndex: Array&lt;number&gt;, place?: string) {
4224
+ <span class="fstat-no" title="function not covered" > findMember(</span>arrIndex: Array&lt;number&gt;, place: string) {
4432
4225
  const [firstIndex, secondIndex] = <span class="cstat-no" title="statement not covered" >[arrIndex[0], arrIndex[1]];</span>
4433
4226
  &nbsp;
4434
4227
  <span class="cstat-no" title="statement not covered" > if (place === 'left') {</span>
@@ -4443,27 +4236,50 @@ export class NewComposite extends LogicItem {
4443
4236
  <span class="cstat-no" title="statement not covered" > return this.rights[firstIndex].members[secondIndex];</span>
4444
4237
  }
4445
4238
  &nbsp;
4446
- <span class="fstat-no" title="function not covered" > toUI(s</span>tate?: TranslatorState, hideDetails?: boolean): string {
4447
- let code = <span class="cstat-no" title="statement not covered" >'{ ';</span>
4448
- <span class="cstat-no" title="statement not covered" > if (this.typeAnnotation) {</span>
4449
- const leftAssignmentMap = <span class="cstat-no" title="statement not covered" >new Map();</span>
4450
- <span class="cstat-no" title="statement not covered" > this.assignmentLines.forEach(<span class="fstat-no" title="function not covered" >({</span> leftIndex, rightIndex }) =&gt; {</span>
4451
- const rightItem = <span class="cstat-no" title="statement not covered" >this.findMember(rightIndex);</span>
4452
- const leftItem = <span class="cstat-no" title="statement not covered" >this.findMember(leftIndex, 'left');</span>
4453
- <span class="cstat-no" title="statement not covered" > if (!leftAssignmentMap.has(leftItem)) {</span>
4454
- <span class="cstat-no" title="statement not covered" > leftAssignmentMap.set(leftItem, rightItem);</span>
4455
- }
4239
+ <span class="fstat-no" title="function not covered" > toUI(</span>state?: TranslatorState): string {
4240
+ let code = <span class="cstat-no" title="statement not covered" >'';</span>
4241
+ const { typeAnnotation } = <span class="cstat-no" title="statement not covered" >this;</span>
4242
+ const leftTopIndex = <span class="cstat-no" title="statement not covered" >this.assignmentLines.findIndex(<span class="fstat-no" title="function not covered" >({</span> leftIndex }) =&gt; <span class="cstat-no" title="statement not covered" >leftIndex[1] === undefined)</span>;</span>
4243
+ <span class="cstat-no" title="statement not covered" > if (!this.typeAnnotation) <span class="cstat-no" title="statement not covered" >return null;</span></span>
4244
+ &nbsp;
4245
+ <span class="cstat-no" title="statement not covered" > code += 'await (async () =&gt; { \n';</span>
4246
+ <span class="cstat-no" title="statement not covered" > if (leftTopIndex !== -1) {</span>
4247
+ const { rightIndex } = <span class="cstat-no" title="statement not covered" >this.assignmentLines[leftTopIndex];</span>
4248
+ const obj =
4249
+ <span class="cstat-no" title="statement not covered" > rightIndex[1] !== undefined</span>
4250
+ ? this.rights[rightIndex[0]].members[rightIndex[1]]
4251
+ : this.rights[rightIndex[0]].expression;
4252
+ <span class="cstat-no" title="statement not covered" > code += `return ${obj};\n`;</span>
4253
+ } else <span class="cstat-no" title="statement not covered" >if (typeAnnotation.typeKind !== 'anonymousStructure') {</span>
4254
+ <span class="cstat-no" title="statement not covered" > code += `const obj = this.$genInitFromSchema('${typeAnnotation.sortedTypeKey</span>
4255
+ }', this.$utils['New'](${typeAnnotation.toUI(shiftState(state, code, { inline: true }))}));\n`;
4256
+ <span class="cstat-no" title="statement not covered" > this.assignmentLines.forEach(<span class="fstat-no" title="function not covered" >({</span> leftIndex, rightIndex }, index) =&gt; {</span>
4257
+ const leftSecondIndex = <span class="cstat-no" title="statement not covered" >leftIndex[1];</span>
4258
+ const [rightFirst, rightSecond] = <span class="cstat-no" title="statement not covered" >[rightIndex[0], rightIndex[1]];</span>
4259
+ const leftItem = <span class="cstat-no" title="statement not covered" >this.properties[leftSecondIndex];</span>
4260
+ const rightItem =
4261
+ <span class="cstat-no" title="statement not covered" > rightSecond !== undefined ? this.rights[rightFirst].members[rightSecond] : this.rights[rightFirst].expression;</span>
4262
+ <span class="cstat-no" title="statement not covered" > code += `obj.${leftItem.name} = ${rightItem.toUI(shiftState(state, code, { inline: true }))}`;</span>
4263
+ <span class="cstat-no" title="statement not covered" > code += ';\n';</span>
4456
4264
  });
4457
- <span class="cstat-no" title="statement not covered" > this.properties.forEach(<span class="fstat-no" title="function not covered" >(l</span>eftItem, index) =&gt; {</span>
4458
- <span class="cstat-no" title="statement not covered" > if (index) {</span>
4459
- <span class="cstat-no" title="statement not covered" > code += ', ';</span>
4460
- }
4461
- const rightItem = <span class="cstat-no" title="statement not covered" >leftAssignmentMap.get(leftItem);</span>
4462
- const value = <span class="cstat-no" title="statement not covered" >rightItem ? rightItem.toUI(shiftState(state, code)) : 'null';</span>
4463
- <span class="cstat-no" title="statement not covered" > code += `${leftItem.name}: ${value}`;</span>
4265
+ <span class="cstat-no" title="statement not covered" > code += 'return obj;\n';</span>
4266
+ } else {
4267
+ <span class="cstat-no" title="statement not covered" > code += `const obj = {};\n`;</span>
4268
+ <span class="cstat-no" title="statement not covered" > this.properties.forEach(<span class="fstat-no" title="function not covered" >(p</span>roperty) =&gt; {</span>
4269
+ <span class="cstat-no" title="statement not covered" > code += `obj.${property.name} = null;\n`;</span>
4270
+ });
4271
+ <span class="cstat-no" title="statement not covered" > this.assignmentLines.forEach(<span class="fstat-no" title="function not covered" >({</span> leftIndex, rightIndex }, index) =&gt; {</span>
4272
+ const leftSecondIndex = <span class="cstat-no" title="statement not covered" >leftIndex[1];</span>
4273
+ const [rightFirst, rightSecond] = <span class="cstat-no" title="statement not covered" >[rightIndex[0], rightIndex[1]];</span>
4274
+ const leftItem = <span class="cstat-no" title="statement not covered" >this.properties[leftSecondIndex];</span>
4275
+ const rightItem =
4276
+ <span class="cstat-no" title="statement not covered" > rightSecond !== undefined ? this.rights[rightFirst].members[rightSecond] : this.rights[rightFirst].expression;</span>
4277
+ <span class="cstat-no" title="statement not covered" > code += `obj.${leftItem.name} = ${rightItem.toUI(shiftState(state, code, { inline: true }))}`;</span>
4278
+ <span class="cstat-no" title="statement not covered" > code += ';\n';</span>
4464
4279
  });
4280
+ <span class="cstat-no" title="statement not covered" > code += 'return obj;\n';</span>
4465
4281
  }
4466
- <span class="cstat-no" title="statement not covered" > code += ` }`;</span>
4282
+ <span class="cstat-no" title="statement not covered" > code += '})()';</span>
4467
4283
  <span class="cstat-no" title="statement not covered" > return code;</span>
4468
4284
  }
4469
4285
  &nbsp;
@@ -4473,29 +4289,17 @@ export class NewComposite extends LogicItem {
4473
4289
  const leftTopIndex = this.assignmentLines.findIndex(({ leftIndex }) =&gt; leftIndex[1] === undefined);
4474
4290
  <span class="missing-if-branch" title="if path not taken" >I</span>if (!this.typeAnnotation) <span class="cstat-no" title="statement not covered" >return null;</span>
4475
4291
  &nbsp;
4476
- <span class="missing-if-branch" title="if path not taken" >I</span>if (this.getAncestor?.('DefaultValue')) {
4477
- <span class="cstat-no" title="statement not covered" > code += '(() =&gt; { \n';</span>
4478
- } else {
4479
- code += 'await (async () =&gt; { \n';
4480
- }
4292
+ code += 'await (async () =&gt; { \n';
4481
4293
  <span class="missing-if-branch" title="if path not taken" >I</span>if (leftTopIndex !== -1) {
4482
4294
  const { rightIndex } = <span class="cstat-no" title="statement not covered" >this.assignmentLines[leftTopIndex];</span>
4483
4295
  const obj =
4484
4296
  <span class="cstat-no" title="statement not covered" > rightIndex[1] !== undefined</span>
4485
4297
  ? this.rights[rightIndex[0]].members[rightIndex[1]]
4486
4298
  : this.rights[rightIndex[0]].expression;
4487
- <span class="cstat-no" title="statement not covered" > code += `return ${obj.toJS(state)};\n`;</span>
4488
- <span class="missing-if-branch" title="else path not taken" >E</span>} else if (typeAnnotation.typeKind !== 'anonymousStructure') {
4489
- // 实体、数据结构默认值使用new时需要改成vue.prototype才能获取到方法
4490
- <span class="missing-if-branch" title="if path not taken" >I</span>if (state?.getVuePrototype) {
4491
- <span class="cstat-no" title="statement not covered" > code += `const obj = Vue.prototype.$genInitFromSchema('${</span>
4492
- typeAnnotation.sortedTypeKey
4493
- }', Vue.prototype.$utils['New'](${typeAnnotation.toJS(state)}));\n`;
4494
- } else {
4495
- code += `const obj = this.$genInitFromSchema('${
4496
- typeAnnotation.sortedTypeKey
4497
- }', this.$utils['New'](${typeAnnotation.toJS(state)}));\n`;
4498
- }
4299
+ <span class="cstat-no" title="statement not covered" > code += `return ${obj.toJS(shiftState(state, code, { inline: true }))};\n`;</span>
4300
+ } else <span class="missing-if-branch" title="else path not taken" >E</span>if (typeAnnotation.typeKind !== 'anonymousStructure') {
4301
+ code += `const obj = this.$genInitFromSchema('${typeAnnotation.sortedTypeKey
4302
+ }', this.$utils['New'](${typeAnnotation.toJS(shiftState(state, code, { inline: true }))}));\n`;
4499
4303
  const rightMap = new Map();
4500
4304
  this.assignmentLines.forEach(({ leftIndex, rightIndex }) =&gt; {
4501
4305
  const rightIndexJson = JSON.stringify(rightIndex);
@@ -4510,17 +4314,17 @@ export class NewComposite extends LogicItem {
4510
4314
  const leftItems = leftIndexs.map((leftIndex: Array&lt;number&gt;) =&gt; this.properties[leftIndex[1]]);
4511
4315
  const [rightFirst, rightSecond] = [rightIndex[0], rightIndex[1]];
4512
4316
  const rightItem =
4513
- rightSecond !== undefined ? <span class="branch-0 cbranch-no" title="branch not covered" >this.rights[rightFirst].members[rightSecond] : t</span>his.rights[rightFirst].expression;
4317
+ rightSecond !== undefined ? <span class="branch-0 cbranch-no" title="branch not covered" >this.rights[rightFirst].members[rightSecond] </span>: this.rights[rightFirst].expression;
4514
4318
  leftItems.forEach((leftItem: Identifier) =&gt; {
4515
4319
  code += `obj.${leftItem.name} = `;
4516
4320
  });
4517
- code += `${rightItem.toJS(state)}`;
4321
+ code += `${rightItem.toJS(shiftState(state, code, { inline: true }))}`;
4518
4322
  code += ';\n';
4519
4323
  });
4520
4324
  code += 'return obj;\n';
4521
4325
  } else {
4522
4326
  <span class="cstat-no" title="statement not covered" > code += `const obj = {};\n`;</span>
4523
- <span class="cstat-no" title="statement not covered" > this.properties.forEach((<span class="fstat-no" title="function not covered" >property) =&gt; {</span></span>
4327
+ <span class="cstat-no" title="statement not covered" > this.properties.forEach(<span class="fstat-no" title="function not covered" >(p</span>roperty) =&gt; {</span>
4524
4328
  <span class="cstat-no" title="statement not covered" > code += `obj.${property.name} = null;\n`;</span>
4525
4329
  });
4526
4330
  const rightMap = <span class="cstat-no" title="statement not covered" >new Map();</span>
@@ -4534,14 +4338,14 @@ export class NewComposite extends LogicItem {
4534
4338
  });
4535
4339
  <span class="cstat-no" title="statement not covered" > rightMap.forEach(<span class="fstat-no" title="function not covered" >(l</span>eftIndexs, rightIndexJson) =&gt; {</span>
4536
4340
  const rightIndex = <span class="cstat-no" title="statement not covered" >JSON.parse(rightIndexJson) || [];</span>
4537
- const leftItems = <span class="cstat-no" title="statement not covered" >leftIndexs.map((<span class="fstat-no" title="function not covered" >leftIndex: Array&lt;number&gt;) =&gt; <span class="cstat-no" title="statement not covered" >t</span>his.properties[leftIndex[1]])</span>;</span>
4341
+ const leftItems = <span class="cstat-no" title="statement not covered" >leftIndexs.map(<span class="fstat-no" title="function not covered" >(l</span>eftIndex: Array&lt;number&gt;) =&gt; <span class="cstat-no" title="statement not covered" >this.properties[leftIndex[1]])</span>;</span>
4538
4342
  const [rightFirst, rightSecond] = <span class="cstat-no" title="statement not covered" >[rightIndex[0], rightIndex[1]];</span>
4539
4343
  const rightItem =
4540
4344
  <span class="cstat-no" title="statement not covered" > rightSecond !== undefined ? this.rights[rightFirst].members[rightSecond] : this.rights[rightFirst].expression;</span>
4541
- <span class="cstat-no" title="statement not covered" > leftItems.forEach((<span class="fstat-no" title="function not covered" >leftItem: Identifier) =&gt; {</span></span>
4345
+ <span class="cstat-no" title="statement not covered" > leftItems.forEach(<span class="fstat-no" title="function not covered" >(l</span>eftItem: Identifier) =&gt; {</span>
4542
4346
  <span class="cstat-no" title="statement not covered" > code += `obj.${leftItem.name} = `;</span>
4543
4347
  });
4544
- <span class="cstat-no" title="statement not covered" > code += `${rightItem.toJS(state)}`;</span>
4348
+ <span class="cstat-no" title="statement not covered" > code += `${rightItem.toJS(shiftState(state, code, { inline: true }))}`;</span>
4545
4349
  <span class="cstat-no" title="statement not covered" > code += ';\n';</span>
4546
4350
  });
4547
4351
  <span class="cstat-no" title="statement not covered" > code += 'return obj;\n';</span>
@@ -4550,186 +4354,170 @@ export class NewComposite extends LogicItem {
4550
4354
  return code;
4551
4355
  }
4552
4356
  &nbsp;
4553
- @withSourceMapGenerator
4554
- *toEmbeddedTS(<span class="branch-0 cbranch-no" title="branch not covered" >state = createCompilerState()): TranslatorGenerator {</span>
4555
- const self = this;
4357
+ @withSourceMap()
4358
+ toEmbeddedTS(state = <span class="branch-0 cbranch-no" title="branch not covered" >createCompilerState())</span>: string {
4556
4359
  const indent0 = indent(state?.tabSize || 0);
4557
4360
  const indent1 = indent((state?.tabSize || 0) + 1);
4558
4361
  const indent2 = indent((state?.tabSize || 0) + 2);
4559
4362
  const indent3 = indent((state?.tabSize || 0) + 3);
4560
4363
  let code = '';
4561
- <span class="missing-if-branch" title="if path not taken" >I</span>if (!self.typeAnnotation) {
4364
+ <span class="missing-if-branch" title="if path not taken" >I</span>if (!this.typeAnnotation) {
4562
4365
  <span class="cstat-no" title="statement not covered" > code += '__IDENTIFIER__';</span>
4563
- <span class="missing-if-branch" title="else path not taken" >E</span>} else if (self.typeAnnotation.typeKind !== 'anonymousStructure') {
4366
+ } else <span class="missing-if-branch" title="else path not taken" >E</span>if (this.typeAnnotation.typeKind !== 'anonymousStructure') {
4564
4367
  const rightMap = new Map();
4565
4368
  code += `${indent0}(() =&gt; { \n`;
4566
4369
  // 提供sourcemap,获取类型标注和上下文可选变量
4567
- yield* wrapForEach(self.rights, function* warpForEachGenerator(right) {
4370
+ this.rights.forEach((right) =&gt; {
4568
4371
  code += indent1;
4569
- rightMap.set(right.expression, yield* right.expression.toEmbeddedTS(shiftState(state, code, { inline: true })));
4372
+ rightMap.set(right.expression, right.expression.toEmbeddedTS(shiftState(state, code, { inline: true })));
4570
4373
  code += rightMap.get(right.expression);
4571
4374
  code += ';\n';
4572
4375
  <span class="missing-if-branch" title="if path not taken" >I</span>if (right.members?.length) {
4573
4376
  <span class="cstat-no" title="statement not covered" > code += indent2;</span>
4574
4377
  }
4575
- yield* wrapForEach(right.members, function* <span class="fstat-no" title="function not covered" >warpForEachGenerator(m</span>ember) {
4576
- <span class="cstat-no" title="statement not covered" > rightMap.set(member, yield* member.toEmbeddedTS(shiftState(state, code, { inline: true })));</span>
4378
+ right.members.forEach(<span class="fstat-no" title="function not covered" >(m</span>ember) =&gt; {
4379
+ <span class="cstat-no" title="statement not covered" > rightMap.set(member, member.toEmbeddedTS(shiftState(state, code, { inline: true })));</span>
4577
4380
  <span class="cstat-no" title="statement not covered" > code += rightMap.get(member);</span>
4578
4381
  <span class="cstat-no" title="statement not covered" > code += '; ';</span>
4579
4382
  });
4580
- code += right.members.length ? <span class="branch-0 cbranch-no" title="branch not covered" >'\n' : '</span>';
4383
+ code += right.members.length ? <span class="branch-0 cbranch-no" title="branch not covered" >'\n' </span>: '';
4581
4384
  });
4582
4385
  // 方便ts报错检查
4583
4386
  code += `${indent1}function __newComposite() {\n`;
4584
- const { typeAnnotation } = self;
4387
+ const { typeAnnotation } = this;
4585
4388
  <span class="missing-if-branch" title="if path not taken" >I</span>if (
4586
4389
  ['nasl.ui', 'nasl.interface', 'nasl.http'].includes(typeAnnotation.typeNamespace) &amp;&amp;
4587
4390
  <span class="branch-1 cbranch-no" title="branch not covered" > typeAnnotation.typeKind === 'generic'</span>
4588
4391
  ) {
4589
4392
  <span class="cstat-no" title="statement not covered" > code += `${indent2}let __obj = new ${typeAnnotation.typeNamespace}.${typeAnnotation.typeName}`;</span>
4590
4393
  <span class="cstat-no" title="statement not covered" > code += '({';</span>
4591
- <span class="cstat-no" title="statement not covered" > yield* wrapForEach(self.assignmentLines, function* <span class="fstat-no" title="function not covered" >warpForEachGenerator({</span> leftIndex, rightIndex }) {</span>
4394
+ <span class="cstat-no" title="statement not covered" > this.assignmentLines.forEach(<span class="fstat-no" title="function not covered" >({</span> leftIndex, rightIndex }) =&gt; {</span>
4592
4395
  const leftSecondIndex = <span class="cstat-no" title="statement not covered" >leftIndex[1];</span>
4593
4396
  const [rightFirst, rightSecond] = <span class="cstat-no" title="statement not covered" >[rightIndex[0], rightIndex[1]];</span>
4594
- const leftItem = <span class="cstat-no" title="statement not covered" >self.properties[leftSecondIndex];</span>
4397
+ const leftItem = <span class="cstat-no" title="statement not covered" >this.properties[leftSecondIndex];</span>
4595
4398
  const rightItem =
4596
4399
  <span class="cstat-no" title="statement not covered" > rightSecond !== undefined</span>
4597
- ? self.rights[rightFirst].members[rightSecond]
4598
- : self.rights[rightFirst].expression;
4400
+ ? this.rights[rightFirst].members[rightSecond]
4401
+ : this.rights[rightFirst].expression;
4599
4402
  const rightTs = <span class="cstat-no" title="statement not covered" >rightMap.get(rightItem);</span>
4600
- <span class="cstat-no" title="statement not covered" > code += `${yield* leftItem.toEmbeddedTS(shiftState(state, code, { inline: true }))}:`;</span>
4403
+ <span class="cstat-no" title="statement not covered" > code += `${leftItem.toEmbeddedTS(shiftState(state, code, { inline: true }))}:`;</span>
4601
4404
  <span class="cstat-no" title="statement not covered" > code += `${['__IDENTIFIER__', '__IDENTIFIER__()'].includes(rightTs) ? 'null' : rightMap.get(rightItem)},\n `;</span>
4602
4405
  });
4603
4406
  <span class="cstat-no" title="statement not covered" > code += '})\n';</span>
4604
4407
  } else {
4605
4408
  code += `${indent2}let __obj = nasl.util.New&lt;`;
4606
- code += yield* self.typeAnnotation.toEmbeddedTS(shiftState(state, code, { inline: true }));
4409
+ code += this.typeAnnotation.toEmbeddedTS(shiftState(state, code, { inline: true }));
4607
4410
  code += `&gt;();\n`;
4608
4411
  }
4609
4412
  // 是否是左边的顶层连线
4610
- const leftTopIndex = self.assignmentLines.findIndex(({ leftIndex }) =&gt; leftIndex[1] === undefined);
4413
+ const leftTopIndex = this.assignmentLines.findIndex(({ leftIndex }) =&gt; leftIndex[1] === undefined);
4611
4414
  <span class="missing-if-branch" title="if path not taken" >I</span>if (leftTopIndex !== -1) {
4612
- const { rightIndex } = <span class="cstat-no" title="statement not covered" >self.assignmentLines[leftTopIndex];</span>
4415
+ const { rightIndex } = <span class="cstat-no" title="statement not covered" >this.assignmentLines[leftTopIndex];</span>
4613
4416
  const rightExpression =
4614
4417
  <span class="cstat-no" title="statement not covered" > rightIndex[1] !== undefined</span>
4615
- ? self.rights[rightIndex[0]].members[rightIndex[1]]
4616
- : self.rights[rightIndex[0]].expression;
4617
- <span class="cstat-no" title="statement not covered" > code += `__obj = ${yield* rightExpression.toEmbeddedTS(shiftState(state, code, { inline: true }))};`;</span>
4418
+ ? this.rights[rightIndex[0]].members[rightIndex[1]]
4419
+ : this.rights[rightIndex[0]].expression;
4420
+ <span class="cstat-no" title="statement not covered" > code += `__obj = ${rightExpression.toEmbeddedTS(shiftState(state, code, { inline: true }))};`;</span>
4618
4421
  <span class="cstat-no" title="statement not covered" > code += '\n';</span>
4619
4422
  } else {
4620
4423
  // 左侧properties的identifier的类型标注
4621
4424
  code += `${indent2}const { `;
4622
- yield* wrapForEach(self.properties, function* warpForEachGenerator(item, index) {
4623
- code += yield* item.toEmbeddedTS(shiftState(state, code, { inline: true }));
4624
- if (index &lt; self.properties.length - 1) code += ', ';
4425
+ this.properties.forEach((item, index) =&gt; {
4426
+ code += item.toEmbeddedTS(shiftState(state, code, { inline: true }));
4427
+ if (index &lt; this.properties.length - 1) code += ', ';
4625
4428
  });
4626
4429
  code += ' } = __obj;\n';
4627
- yield* wrapForEach(self.assignmentLines, function* warpForEachGenerator({ leftIndex, rightIndex }) {
4430
+ this.assignmentLines.forEach(({ leftIndex, rightIndex }) =&gt; {
4628
4431
  const leftSecondIndex = leftIndex[1];
4629
4432
  const [rightFirst, rightSecond] = [rightIndex[0], rightIndex[1]];
4630
- const leftItem = self.properties[leftSecondIndex];
4433
+ const leftItem = this.properties[leftSecondIndex];
4631
4434
  const rightItem =
4632
4435
  rightSecond !== undefined
4633
- ? <span class="branch-0 cbranch-no" title="branch not covered" >self.rights[rightFirst].members[rightSecond]</span>
4634
- : self.rights[rightFirst].expression;
4436
+ ? <span class="branch-0 cbranch-no" title="branch not covered" >this.rights[rightFirst].members[rightSecond]</span>
4437
+ : this.rights[rightFirst].expression;
4635
4438
  const rightTs = rightMap.get(rightItem);
4636
- code += `${indent2}`;
4637
- code += `${yield* leftItem.toEmbeddedTS(shiftState(state, code, { inline: true }), {
4638
- isNewcomposite: true,
4639
- })}`;
4640
- code += ' = ';
4641
- code += `${['__IDENTIFIER__', '__IDENTIFIER__()'].includes(rightTs) ? <span class="branch-0 cbranch-no" title="branch not covered" >'null' : r</span>ightMap.get(rightItem)};\n`;
4439
+ code += `${indent2}nasl.core.compareNew(`;
4440
+ code += `${['__IDENTIFIER__', '__IDENTIFIER__()'].includes(rightTs) ? <span class="branch-0 cbranch-no" title="branch not covered" >'null' </span>: rightMap.get(rightItem)}, `;
4441
+ code += `${leftItem.toEmbeddedTS(shiftState(state, code, { inline: true }))});\n`;
4642
4442
  });
4643
4443
  }
4644
4444
  code += `${indent2}return __obj;\n`;
4645
4445
  code += `${indent1}};\n`;
4446
+ &nbsp;
4646
4447
  code += `${indent1}return __newComposite();\n`;
4647
4448
  code += `${indent0}})()`;
4648
4449
  } else {
4649
4450
  const nameMap = <span class="cstat-no" title="statement not covered" >new Map();</span>
4650
4451
  const rightMap = <span class="cstat-no" title="statement not covered" >new Map();</span>
4651
- <span class="cstat-no" title="statement not covered" > yield* wrapForEach(self.assignmentLines, function* <span class="fstat-no" title="function not covered" >warpForEachGenerator({</span> leftIndex, rightIndex }) {</span>
4452
+ <span class="cstat-no" title="statement not covered" > this.assignmentLines.forEach(<span class="fstat-no" title="function not covered" >({</span> leftIndex, rightIndex }) =&gt; {</span>
4652
4453
  const leftSecondIndex = <span class="cstat-no" title="statement not covered" >leftIndex[1];</span>
4653
4454
  const [rightFirst, rightSecond] = <span class="cstat-no" title="statement not covered" >[rightIndex[0], rightIndex[1]];</span>
4654
- const leftItem = <span class="cstat-no" title="statement not covered" >self.properties[leftSecondIndex];</span>
4455
+ const leftItem = <span class="cstat-no" title="statement not covered" >this.properties[leftSecondIndex];</span>
4655
4456
  const rightItem =
4656
- <span class="cstat-no" title="statement not covered" > rightSecond !== undefined ? self.rights[rightFirst].members[rightSecond] : self.rights[rightFirst].expression;</span>
4457
+ <span class="cstat-no" title="statement not covered" > rightSecond !== undefined ? this.rights[rightFirst].members[rightSecond] : this.rights[rightFirst].expression;</span>
4657
4458
  <span class="cstat-no" title="statement not covered" > nameMap.set(leftItem.name, rightItem);</span>
4658
4459
  <span class="cstat-no" title="statement not covered" > rightMap.set(rightItem, null);</span>
4659
4460
  });
4660
4461
  <span class="cstat-no" title="statement not covered" > code += `${indent0}(() =&gt; { \n`;</span>
4661
4462
  // 提供sourcemap,获取类型标注和上下文可选变量
4662
- <span class="cstat-no" title="statement not covered" > yield* wrapForEach(self.rights, function* <span class="fstat-no" title="function not covered" >warpForEachGenerator(r</span>ight) {</span>
4463
+ <span class="cstat-no" title="statement not covered" > this.rights.forEach(<span class="fstat-no" title="function not covered" >(r</span>ight) =&gt; {</span>
4663
4464
  <span class="cstat-no" title="statement not covered" > code += indent1;</span>
4664
- let ts = <span class="cstat-no" title="statement not covered" >yield* right.expression.toEmbeddedTS(shiftState(state, code, { inline: true }));</span>
4465
+ let ts = <span class="cstat-no" title="statement not covered" >right.expression.toEmbeddedTS(shiftState(state, code, { inline: true }));</span>
4665
4466
  <span class="cstat-no" title="statement not covered" > if (rightMap.has(right.expression)) <span class="cstat-no" title="statement not covered" >rightMap.set(right.expression, ts);</span></span>
4666
4467
  <span class="cstat-no" title="statement not covered" > code += ts;</span>
4667
4468
  <span class="cstat-no" title="statement not covered" > code += ';\n';</span>
4668
4469
  <span class="cstat-no" title="statement not covered" > if (right.members?.length) {</span>
4669
4470
  <span class="cstat-no" title="statement not covered" > code += indent2;</span>
4670
4471
  }
4671
- <span class="cstat-no" title="statement not covered" > yield* wrapForEach(right.members, function* <span class="fstat-no" title="function not covered" >warpForEachGenerator(m</span>ember) {</span>
4672
- <span class="cstat-no" title="statement not covered" > ts = yield* member.toEmbeddedTS(shiftState(state, code, { inline: true }));</span>
4472
+ <span class="cstat-no" title="statement not covered" > right.members.forEach(<span class="fstat-no" title="function not covered" >(m</span>ember) =&gt; {</span>
4473
+ <span class="cstat-no" title="statement not covered" > ts = member.toEmbeddedTS(shiftState(state, code, { inline: true }));</span>
4673
4474
  <span class="cstat-no" title="statement not covered" > if (rightMap.has(member)) <span class="cstat-no" title="statement not covered" >rightMap.set(member, ts);</span></span>
4674
4475
  <span class="cstat-no" title="statement not covered" > code += ts;</span>
4675
4476
  <span class="cstat-no" title="statement not covered" > code += '; ';</span>
4676
4477
  });
4677
4478
  <span class="cstat-no" title="statement not covered" > code += right.members.length ? '\n' : '';</span>
4678
4479
  });
4679
- // 先把连线的变量定义出来,否则匿名数据结构属性名称与变量名称相同时会报错,
4680
- <span class="cstat-no" title="statement not covered" > yield* wrapForEach(self.properties, function* <span class="fstat-no" title="function not covered" >warpForEachGenerator(p</span>roperty, index) {</span>
4681
- const temp = <span class="cstat-no" title="statement not covered" >`temp${index}__`;</span>
4682
- const { name } = <span class="cstat-no" title="statement not covered" >property;</span>
4683
- const rightItem = <span class="cstat-no" title="statement not covered" >nameMap.get(name);</span>
4684
- const ts = <span class="cstat-no" title="statement not covered" >rightMap.get(rightItem);</span>
4685
- <span class="cstat-no" title="statement not covered" > if (ts !== undefined) {</span>
4686
- <span class="cstat-no" title="statement not covered" > if (['__IDENTIFIER__', '__IDENTIFIER__()'].includes(ts)) {</span>
4687
- <span class="cstat-no" title="statement not covered" > code += `${indent1}let ${temp}: void = null; \n`;</span>
4688
- } else {
4689
- <span class="cstat-no" title="statement not covered" > code += `${indent1}let ${temp}${ts === 'null' ? ':void' : ''} = ${ts}; \n`;</span>
4690
- }
4691
- }
4692
- });
4693
4480
  // 方便ts报错检查
4694
4481
  <span class="cstat-no" title="statement not covered" > code += `${indent1}function __newComposite() {\n`;</span>
4695
- <span class="cstat-no" title="statement not covered" > yield* wrapForEach(self.properties, function* <span class="fstat-no" title="function not covered" >warpForEachGenerator(p</span>roperty, index) {</span>
4696
- const temp = <span class="cstat-no" title="statement not covered" >`temp${index}__`;</span>
4697
- const propertyType = <span class="cstat-no" title="statement not covered" >self.typeAnnotation.properties[index]?.typeAnnotation;</span>
4482
+ <span class="cstat-no" title="statement not covered" > this.properties.forEach(<span class="fstat-no" title="function not covered" >(p</span>roperty, index) =&gt; {</span>
4483
+ const temp = <span class="cstat-no" title="statement not covered" >`temp${index}`;</span>
4484
+ const propertyType = <span class="cstat-no" title="statement not covered" >this.typeAnnotation.properties[index]?.typeAnnotation;</span>
4698
4485
  const { name } = <span class="cstat-no" title="statement not covered" >property;</span>
4699
4486
  const rightItem = <span class="cstat-no" title="statement not covered" >nameMap.get(name);</span>
4700
4487
  const ts = <span class="cstat-no" title="statement not covered" >rightMap.get(rightItem);</span>
4701
4488
  <span class="cstat-no" title="statement not covered" > if (ts !== undefined) {</span>
4702
- <span class="cstat-no" title="statement not covered" > code += `${indent2}let `;</span>
4703
- <span class="cstat-no" title="statement not covered" > code += `${yield* property.toEmbeddedTS(shiftState(state, code, { inline: true }))}: `;</span>
4704
- <span class="cstat-no" title="statement not covered" > if (propertyType) {</span>
4705
- const typeTs = <span class="cstat-no" title="statement not covered" >yield* propertyType.toEmbeddedTS(shiftState(state, code, { inline: true }));</span>
4706
- <span class="cstat-no" title="statement not covered" > code += typeTs;</span>
4707
- <span class="cstat-no" title="statement not covered" > code += ` = ${temp};\n`;</span>
4708
- // 如果是字段是union类型,且赋值的是当前union允许的类型,会导致property.name类型推断成temp的类型
4709
- <span class="cstat-no" title="statement not covered" > code += `${indent2}${property.name} = ${property.name} as ${typeTs};\n`;</span>
4489
+ <span class="cstat-no" title="statement not covered" > if (['__IDENTIFIER__', '__IDENTIFIER__()'].includes(ts)) {</span>
4490
+ <span class="cstat-no" title="statement not covered" > code += `${indent2}let ${temp}: void = null; `;</span>
4710
4491
  } else {
4711
- <span class="cstat-no" title="statement not covered" > code += `nasl.core.Incompatible&lt;typeof ${temp}, void&gt;`;</span>
4712
- <span class="cstat-no" title="statement not covered" > code += ` = ${temp};\n`;</span>
4492
+ <span class="cstat-no" title="statement not covered" > code += `${indent2}let ${temp}${ts === 'null' ? ':void' : ''} = ${ts}; `;</span>
4713
4493
  }
4714
- <span class="cstat-no" title="statement not covered" > } else if (propertyType) {</span>
4494
+ <span class="cstat-no" title="statement not covered" > code += `const `;</span>
4495
+ <span class="cstat-no" title="statement not covered" > code += `${property.toEmbeddedTS(shiftState(state, code, { inline: true }))}: `;</span>
4496
+ <span class="cstat-no" title="statement not covered" > code += propertyType</span>
4497
+ ? propertyType.toEmbeddedTS(shiftState(state, code, { inline: true }))
4498
+ : `nasl.core.Incompatible&lt;typeof ${temp}, void&gt;`;
4499
+ <span class="cstat-no" title="statement not covered" > code += ` = ${temp};\n`;</span>
4500
+ } else <span class="cstat-no" title="statement not covered" >if (propertyType) {</span>
4715
4501
  <span class="cstat-no" title="statement not covered" > code += `${indent2}let ${property.name}: `;</span>
4716
- <span class="cstat-no" title="statement not covered" > code += `${yield* propertyType.toEmbeddedTS(shiftState(state, code, { inline: true }))}; `;</span>
4502
+ <span class="cstat-no" title="statement not covered" > code += `${propertyType.toEmbeddedTS(shiftState(state, code, { inline: true }))}; `;</span>
4717
4503
  <span class="cstat-no" title="statement not covered" > code += `&lt;`;</span>
4718
- <span class="cstat-no" title="statement not covered" > code += `${yield* property.toEmbeddedTS(shiftState(state, code, { inline: true }))}`;</span>
4504
+ <span class="cstat-no" title="statement not covered" > code += `${property.toEmbeddedTS(shiftState(state, code, { inline: true }))}`;</span>
4719
4505
  <span class="cstat-no" title="statement not covered" > code += `&gt;${property.name};\n`;</span>
4720
4506
  } else {
4721
4507
  <span class="cstat-no" title="statement not covered" > code += `${indent2}const `;</span>
4722
- <span class="cstat-no" title="statement not covered" > code += yield* property.toEmbeddedTS(shiftState(state, code, { inline: true }));</span>
4508
+ <span class="cstat-no" title="statement not covered" > code += property.toEmbeddedTS(shiftState(state, code, { inline: true }));</span>
4723
4509
  <span class="cstat-no" title="statement not covered" > code += ';\n';</span>
4724
4510
  }
4725
4511
  });
4726
4512
  <span class="cstat-no" title="statement not covered" > code += `${indent2}return {\n`;</span>
4727
- <span class="cstat-no" title="statement not covered" > yield* wrapForEach(self.properties, function* <span class="fstat-no" title="function not covered" >warpForEachGenerator(p</span>roperty) {</span>
4513
+ <span class="cstat-no" title="statement not covered" > this.properties.forEach(<span class="fstat-no" title="function not covered" >(p</span>roperty) =&gt; {</span>
4728
4514
  <span class="cstat-no" title="statement not covered" > code += `${indent3}${property.name},\n`;</span>
4729
4515
  });
4730
- <span class="cstat-no" title="statement not covered" > code += `${indent3}__name: "AStructure_AAAAAAAA" as const,\n`;</span>
4516
+ <span class="cstat-no" title="statement not covered" > code += `${indent3}__name: "AStructure_${genHash(JSON.stringify(this))}" as const,\n`;</span>
4731
4517
  <span class="cstat-no" title="statement not covered" > code += `${indent2}}\n`;</span>
4518
+ &nbsp;
4732
4519
  <span class="cstat-no" title="statement not covered" > code += `${indent1}};\n`;</span>
4520
+ &nbsp;
4733
4521
  <span class="cstat-no" title="statement not covered" > code += `${indent1}return __newComposite();\n`;</span>
4734
4522
  <span class="cstat-no" title="statement not covered" > code += `${indent0}})()`;</span>
4735
4523
  }
@@ -4737,12 +4525,9 @@ export class NewComposite extends LogicItem {
4737
4525
  }
4738
4526
  &nbsp;
4739
4527
  @withSourceMap()
4740
- <span class="fstat-no" title="function not covered" > toNaturalTS(): string {</span>
4528
+ <span class="fstat-no" title="function not covered" > toNaturalTS(</span>): string {
4741
4529
  let code = <span class="cstat-no" title="statement not covered" >'nasl.util.';</span>
4742
- <span class="cstat-no" title="statement not covered" > code +=</span>
4743
- this?.typeAnnotation?.typeKind === 'anonymousStructure'
4744
- ? 'NewAnonymityStructure'
4745
- : `NewEntity&lt;${this?.typeAnnotation?.typeName || '__IDENTIFIER__'}&gt;`;
4530
+ <span class="cstat-no" title="statement not covered" > code += this?.typeAnnotation?.typeKind === 'anonymousStructure' ? 'NewAnonymityStructure' : `NewEntity&lt;${this?.typeAnnotation?.typeName || '__IDENTIFIER__'}&gt;`;</span>
4746
4531
  let params = <span class="cstat-no" title="statement not covered" >'';</span>
4747
4532
  <span class="cstat-no" title="statement not covered" > this?.properties?.forEach(<span class="fstat-no" title="function not covered" >(i</span>tem, index) =&gt; {</span>
4748
4533
  <span class="cstat-no" title="statement not covered" > if (item) {</span>
@@ -4756,16 +4541,15 @@ export class NewComposite extends LogicItem {
4756
4541
  <span class="cstat-no" title="statement not covered" > return code;</span>
4757
4542
  }
4758
4543
  &nbsp;
4759
- <span class="fstat-no" title="function not covered" > *g</span>etInitCode(state?: TranslatorState) {
4760
- const self = <span class="cstat-no" title="statement not covered" >this;</span>
4761
- const <span class="cstat-no" title="statement not covered" >indent1 = indent((state?.tabSize || 0) + 1);</span>
4762
- const <span class="cstat-no" title="statement not covered" >indent2 = indent((state?.tabSize || 0) + 2);</span>
4763
- const <span class="cstat-no" title="statement not covered" >indent3 = indent((state?.tabSize || 0) + 3);</span>
4764
- const <span class="cstat-no" title="statement not covered" >indent4 = indent((state?.tabSize || 0) + 4);</span>
4544
+ <span class="fstat-no" title="function not covered" > getInitCode(</span>state?: TranslatorState): string {
4545
+ const indent1 = <span class="cstat-no" title="statement not covered" >indent((state?.tabSize || 0) + 1);</span>
4546
+ const indent2 = <span class="cstat-no" title="statement not covered" >indent((state?.tabSize || 0) + 2);</span>
4547
+ const indent3 = <span class="cstat-no" title="statement not covered" >indent((state?.tabSize || 0) + 3);</span>
4548
+ const indent4 = <span class="cstat-no" title="statement not covered" >indent((state?.tabSize || 0) + 4);</span>
4765
4549
  let code = <span class="cstat-no" title="statement not covered" >'';</span>
4766
4550
  const nameMap = <span class="cstat-no" title="statement not covered" >new Map();</span>
4767
4551
  const rightMap = <span class="cstat-no" title="statement not covered" >new Map();</span>
4768
- <span class="cstat-no" title="statement not covered" > yield* wrapForEach(self.assignmentLines, <span class="fstat-no" title="function not covered" >({</span> leftIndex, rightIndex }) =&gt; {</span>
4552
+ <span class="cstat-no" title="statement not covered" > this.assignmentLines.forEach(<span class="fstat-no" title="function not covered" >({</span> leftIndex, rightIndex }) =&gt; {</span>
4769
4553
  const leftSecondIndex = <span class="cstat-no" title="statement not covered" >leftIndex[1];</span>
4770
4554
  const [rightFirst, rightSecond] = <span class="cstat-no" title="statement not covered" >[rightIndex[0], rightIndex[1]];</span>
4771
4555
  const leftItem = <span class="cstat-no" title="statement not covered" >this.properties[leftSecondIndex];</span>
@@ -4776,37 +4560,35 @@ export class NewComposite extends LogicItem {
4776
4560
  });
4777
4561
  <span class="cstat-no" title="statement not covered" > code += '(() =&gt; { ';</span>
4778
4562
  // 提供sourcemap,获取类型标注和上下文可选变量
4779
- <span class="cstat-no" title="statement not covered" > yield* wrapForEach(this.rights, function* <span class="fstat-no" title="function not covered" >wrapForEach(r</span>ight) {</span>
4780
- let ts = <span class="cstat-no" title="statement not covered" >yield* right.expression.toEmbeddedTS(shiftState(state, code, { inline: true }));</span>
4563
+ <span class="cstat-no" title="statement not covered" > this.rights.forEach(<span class="fstat-no" title="function not covered" >(r</span>ight) =&gt; {</span>
4564
+ let ts = <span class="cstat-no" title="statement not covered" >right.expression.toEmbeddedTS(shiftState(state, code, { inline: true }));</span>
4781
4565
  <span class="cstat-no" title="statement not covered" > if (rightMap.has(right.expression)) <span class="cstat-no" title="statement not covered" >rightMap.set(right.expression, ts);</span></span>
4782
- <span class="cstat-no" title="statement not covered" > for (const member of right.members) {</span>
4783
- <span class="cstat-no" title="statement not covered" > ts = yield* member.toEmbeddedTS(shiftState(state, code, { inline: true }));</span>
4784
- <span class="cstat-no" title="statement not covered" > if (rightMap.has(member)) {</span>
4785
- <span class="cstat-no" title="statement not covered" > rightMap.set(member, ts);</span>
4786
- }
4787
- }
4566
+ <span class="cstat-no" title="statement not covered" > right.members.forEach(<span class="fstat-no" title="function not covered" >(m</span>ember) =&gt; {</span>
4567
+ <span class="cstat-no" title="statement not covered" > ts = member.toEmbeddedTS(shiftState(state, code, { inline: true }));</span>
4568
+ <span class="cstat-no" title="statement not covered" > if (rightMap.has(member)) <span class="cstat-no" title="statement not covered" >rightMap.set(member, ts);</span></span>
4569
+ });
4788
4570
  });
4789
4571
  // 方便ts报错检查
4790
4572
  <span class="cstat-no" title="statement not covered" > code += 'function __newComposite() { ';</span>
4791
- <span class="cstat-no" title="statement not covered" > yield* wrapForEach(this.properties, function* <span class="fstat-no" title="function not covered" >wrapForEach(p</span>roperty, index) {</span>
4573
+ <span class="cstat-no" title="statement not covered" > this.properties.forEach(<span class="fstat-no" title="function not covered" >(p</span>roperty, index) =&gt; {</span>
4792
4574
  const { name } = <span class="cstat-no" title="statement not covered" >property;</span>
4793
- const propertyType = <span class="cstat-no" title="statement not covered" >self.typeAnnotation.properties[index]?.typeAnnotation;</span>
4575
+ const propertyType = <span class="cstat-no" title="statement not covered" >this.typeAnnotation.properties[index]?.typeAnnotation;</span>
4794
4576
  const rightItem = <span class="cstat-no" title="statement not covered" >nameMap.get(name);</span>
4795
4577
  let ts = <span class="cstat-no" title="statement not covered" >rightMap.get(rightItem);</span>
4796
- <span class="cstat-no" title="statement not covered" > ts = yield* self.getForeachCode(ts);</span>
4578
+ <span class="cstat-no" title="statement not covered" > ts = this.getForeachCode(ts);</span>
4797
4579
  <span class="cstat-no" title="statement not covered" > if (propertyType) {</span>
4798
- <span class="cstat-no" title="statement not covered" > code += `const ${name}: ${yield* propertyType.toEmbeddedTS(shiftState(state, code, { inline: true }))}; `;</span>
4799
- <span class="cstat-no" title="statement not covered" > } else if (ts !== undefined) {</span>
4580
+ <span class="cstat-no" title="statement not covered" > code += `const ${name}: ${propertyType.toEmbeddedTS(shiftState(state, code, { inline: true }))}; `;</span>
4581
+ } else <span class="cstat-no" title="statement not covered" >if (ts !== undefined) {</span>
4800
4582
  <span class="cstat-no" title="statement not covered" > code += `const ${name} = ${['__IDENTIFIER__', '__IDENTIFIER__()'].includes(ts) ? null : ts}; `;</span>
4801
4583
  } else {
4802
4584
  <span class="cstat-no" title="statement not covered" > code += `const ${name}; `;</span>
4803
4585
  }
4804
4586
  });
4805
4587
  <span class="cstat-no" title="statement not covered" > code += `\n${indent3}return {\n`;</span>
4806
- <span class="cstat-no" title="statement not covered" > this.properties.forEach((<span class="fstat-no" title="function not covered" >property) =&gt; {</span></span>
4588
+ <span class="cstat-no" title="statement not covered" > this.properties.forEach(<span class="fstat-no" title="function not covered" >(p</span>roperty) =&gt; {</span>
4807
4589
  <span class="cstat-no" title="statement not covered" > code += `${indent4}${property.name},\n`;</span>
4808
4590
  });
4809
- <span class="cstat-no" title="statement not covered" > code += `${indent4}__name: "AStructure_AAAAAAAA" as const,\n`;</span>
4591
+ <span class="cstat-no" title="statement not covered" > code += `${indent4}__name: "AStructure_${genHash(JSON.stringify(this))}" as const,\n`;</span>
4810
4592
  <span class="cstat-no" title="statement not covered" > code += `${indent3}}\n`;</span>
4811
4593
  &nbsp;
4812
4594
  <span class="cstat-no" title="statement not covered" > code += `${indent2}};\n`;</span>
@@ -4816,56 +4598,59 @@ export class NewComposite extends LogicItem {
4816
4598
  <span class="cstat-no" title="statement not covered" > return code;</span>
4817
4599
  }
4818
4600
  &nbsp;
4819
- <span class="fstat-no" title="function not covered" > *g</span>etNewCompositeCode(state?: TranslatorState) {
4820
- const <span class="cstat-no" title="statement not covered" >indent0 = indent(state?.tabSize || 0);</span>
4821
- const <span class="cstat-no" title="statement not covered" >indent1 = indent((state?.tabSize || 0) + 1);</span>
4822
- const <span class="cstat-no" title="statement not covered" >indent2 = indent((state?.tabSize || 0) + 2);</span>
4601
+ <span class="fstat-no" title="function not covered" > getNewCompositeCode(</span>state?: TranslatorState): string {
4602
+ const indent0 = <span class="cstat-no" title="statement not covered" >indent(state?.tabSize || 0);</span>
4603
+ const indent1 = <span class="cstat-no" title="statement not covered" >indent((state?.tabSize || 0) + 1);</span>
4604
+ const indent2 = <span class="cstat-no" title="statement not covered" >indent((state?.tabSize || 0) + 2);</span>
4823
4605
  let code = <span class="cstat-no" title="statement not covered" >'';</span>
4824
4606
  &nbsp;
4825
4607
  const rightMap = <span class="cstat-no" title="statement not covered" >new Map();</span>
4826
4608
  <span class="cstat-no" title="statement not covered" > code += `${indent0}(() =&gt; { \n`;</span>
4827
4609
  // 提供sourcemap,获取类型标注和上下文可选变量
4828
- <span class="cstat-no" title="statement not covered" > for (const right of this.rights) {</span>
4610
+ <span class="cstat-no" title="statement not covered" > this.rights.forEach(<span class="fstat-no" title="function not covered" >(r</span>ight) =&gt; {</span>
4829
4611
  <span class="cstat-no" title="statement not covered" > code += indent1;</span>
4830
- <span class="cstat-no" title="statement not covered" > rightMap.set(right.expression, yield* right.expression.toEmbeddedTS(shiftState(state, code, { inline: true })));</span>
4612
+ <span class="cstat-no" title="statement not covered" > rightMap.set(right.expression, right.expression.toEmbeddedTS(shiftState(state, code, { inline: true })));</span>
4831
4613
  // code += rightMap.get(right.expression);
4832
4614
  // code += ';\n';
4833
4615
  <span class="cstat-no" title="statement not covered" > if (right.members?.length) {</span>
4834
4616
  <span class="cstat-no" title="statement not covered" > code += indent2;</span>
4835
4617
  }
4836
- <span class="cstat-no" title="statement not covered" > for (const member of right.members) {</span>
4837
- <span class="cstat-no" title="statement not covered" > rightMap.set(member, yield* member.toEmbeddedTS(shiftState(state, code, { inline: true })));</span>
4838
- }
4839
- }
4618
+ <span class="cstat-no" title="statement not covered" > right.members.forEach(<span class="fstat-no" title="function not covered" >(m</span>ember) =&gt; {</span>
4619
+ <span class="cstat-no" title="statement not covered" > rightMap.set(member, member.toEmbeddedTS(shiftState(state, code, { inline: true })));</span>
4620
+ // code += rightMap.get(member);
4621
+ // code += '; ';
4622
+ });
4623
+ // code += right.members.length ? '\n' : '';
4624
+ });
4840
4625
  // 方便ts报错检查
4841
4626
  <span class="cstat-no" title="statement not covered" > code += `${indent1}function __newComposite() {\n`;</span>
4842
4627
  const { typeAnnotation } = <span class="cstat-no" title="statement not covered" >this;</span>
4843
4628
  <span class="cstat-no" title="statement not covered" > if (['nasl.ui', 'nasl.interface', 'nasl.http'].includes(typeAnnotation.typeNamespace)) {</span>
4844
4629
  <span class="cstat-no" title="statement not covered" > code += `${indent2}let __obj = new ${typeAnnotation.typeNamespace}.${typeAnnotation.typeName}`;</span>
4845
4630
  <span class="cstat-no" title="statement not covered" > code += '({';</span>
4846
- <span class="cstat-no" title="statement not covered" > for (const { leftIndex, rightIndex } of this.assignmentLines) {</span>
4631
+ <span class="cstat-no" title="statement not covered" > this.assignmentLines.forEach(<span class="fstat-no" title="function not covered" >({</span> leftIndex, rightIndex }) =&gt; {</span>
4847
4632
  const leftSecondIndex = <span class="cstat-no" title="statement not covered" >leftIndex[1];</span>
4848
4633
  const [rightFirst, rightSecond] = <span class="cstat-no" title="statement not covered" >[rightIndex[0], rightIndex[1]];</span>
4849
4634
  const leftItem = <span class="cstat-no" title="statement not covered" >this.properties[leftSecondIndex];</span>
4850
4635
  const rightItem =
4851
4636
  <span class="cstat-no" title="statement not covered" > rightSecond !== undefined ? this.rights[rightFirst].members[rightSecond] : this.rights[rightFirst].expression;</span>
4852
4637
  const rightTs = <span class="cstat-no" title="statement not covered" >rightMap.get(rightItem);</span>
4853
- <span class="cstat-no" title="statement not covered" > code += `${yield* leftItem.toEmbeddedTS(shiftState(state, code, { inline: true }))}:`;</span>
4638
+ <span class="cstat-no" title="statement not covered" > code += `${leftItem.toEmbeddedTS(shiftState(state, code, { inline: true }))}:`;</span>
4854
4639
  <span class="cstat-no" title="statement not covered" > code += `${['__IDENTIFIER__', '__IDENTIFIER__()'].includes(rightTs) ? 'null' : rightMap.get(rightItem)},\n `;</span>
4855
- }
4640
+ });
4856
4641
  <span class="cstat-no" title="statement not covered" > code += '})\n';</span>
4857
4642
  }
4858
4643
  <span class="cstat-no" title="statement not covered" > code += `${indent2}return __obj;\n`;</span>
4859
4644
  <span class="cstat-no" title="statement not covered" > code += `${indent1}};\n`;</span>
4645
+ &nbsp;
4860
4646
  <span class="cstat-no" title="statement not covered" > code += `${indent1}return __newComposite();\n`;</span>
4861
4647
  <span class="cstat-no" title="statement not covered" > code += `${indent0}})()`;</span>
4862
4648
  <span class="cstat-no" title="statement not covered" > return code;</span>
4863
4649
  }
4864
4650
  &nbsp;
4865
- <span class="fstat-no" title="function not covered" > __addIdentifier(n</span>ame: string, typeAnnotation: TypeAnnotation) {
4651
+ <span class="fstat-no" title="function not covered" > __addIdentifier(</span>name: string, typeAnnotation: TypeAnnotation) {
4866
4652
  const newName = <span class="cstat-no" title="statement not covered" >name || 'property1';</span>
4867
4653
  const newType = <span class="cstat-no" title="statement not covered" >typeAnnotation || null;</span>
4868
- const <span class="cstat-no" title="statement not covered" >StructureProperty = getConceptConstructor('StructureProperty');</span>
4869
4654
  <span class="cstat-no" title="statement not covered" > this.app.emit('collect:start', {</span>
4870
4655
  actionMsg: '添加匿名数据结构属性',
4871
4656
  });
@@ -4878,15 +4663,15 @@ export class NewComposite extends LogicItem {
4878
4663
  <span class="cstat-no" title="statement not covered" > this.app.emit('collect:end');</span>
4879
4664
  }
4880
4665
  &nbsp;
4881
- <span class="fstat-no" title="function not covered" > __deleteIdentifier(p</span>roperty: Identifier) {
4882
- const index = <span class="cstat-no" title="statement not covered" >this.properties.findIndex((<span class="fstat-no" title="function not covered" >p) =&gt; <span class="cstat-no" title="statement not covered" >p</span> === property)</span>;</span>
4666
+ <span class="fstat-no" title="function not covered" > __deleteIdentifier(</span>property: Identifier) {
4667
+ const index = <span class="cstat-no" title="statement not covered" >this.properties.findIndex(<span class="fstat-no" title="function not covered" >(p</span>) =&gt; <span class="cstat-no" title="statement not covered" >p === property)</span>;</span>
4883
4668
  const newLines: AssignmentLine[] = <span class="cstat-no" title="statement not covered" >[];</span>
4884
- const newProperties = <span class="cstat-no" title="statement not covered" >this.typeAnnotation.properties.filter((<span class="fstat-no" title="function not covered" >item) =&gt; <span class="cstat-no" title="statement not covered" >i</span>tem.name !== property.name)</span>;</span>
4885
- <span class="cstat-no" title="statement not covered" > this.assignmentLines.forEach((<span class="fstat-no" title="function not covered" >line) =&gt; {</span></span>
4669
+ const newProperties = <span class="cstat-no" title="statement not covered" >this.typeAnnotation.properties.filter(<span class="fstat-no" title="function not covered" >(i</span>tem) =&gt; <span class="cstat-no" title="statement not covered" >item.name !== property.name)</span>;</span>
4670
+ <span class="cstat-no" title="statement not covered" > this.assignmentLines.forEach(<span class="fstat-no" title="function not covered" >(l</span>ine) =&gt; {</span>
4886
4671
  const { leftIndex } = <span class="cstat-no" title="statement not covered" >line;</span>
4887
4672
  <span class="cstat-no" title="statement not covered" > if (leftIndex[1] &lt; index) {</span>
4888
4673
  <span class="cstat-no" title="statement not covered" > newLines.push(line);</span>
4889
- <span class="cstat-no" title="statement not covered" > } else if (leftIndex[1] &gt; index) {</span>
4674
+ } else <span class="cstat-no" title="statement not covered" >if (leftIndex[1] &gt; index) {</span>
4890
4675
  const newLine = <span class="cstat-no" title="statement not covered" >{ ...line?.toJSON(), leftIndex: [leftIndex[0], leftIndex[1] - 1] };</span>
4891
4676
  <span class="cstat-no" title="statement not covered" > newLines.push(newLine as AssignmentLine);</span>
4892
4677
  }
@@ -4902,13 +4687,12 @@ export class NewComposite extends LogicItem {
4902
4687
  <span class="cstat-no" title="statement not covered" > this.app.emit('collect:end');</span>
4903
4688
  }
4904
4689
  &nbsp;
4905
- <span class="fstat-no" title="function not covered" > *g</span>etForeachCode(code: string) {
4690
+ <span class="fstat-no" title="function not covered" > getForeachCode(</span>code: string): string {
4906
4691
  // ForEachStatement 内部变量需要替换处理,如 item、index
4907
4692
  const forEachStatement = <span class="cstat-no" title="statement not covered" >this.getAncestor('ForEachStatement') as ForEachStatement;</span>
4908
- const <span class="cstat-no" title="statement not covered" >Logic = getConceptConstructor('Logic');</span>
4909
4693
  <span class="cstat-no" title="statement not covered" > if (forEachStatement &amp;&amp; code) {</span>
4910
4694
  <span class="cstat-no" title="statement not covered" > code = code.replaceAll('\n', ' ');</span>
4911
- <span class="cstat-no" title="statement not covered" > code = yield* new Logic().handleForEachCode(code, forEachStatement);</span>
4695
+ <span class="cstat-no" title="statement not covered" > code = new Logic().handleForEachCode(code, forEachStatement);</span>
4912
4696
  }
4913
4697
  <span class="cstat-no" title="statement not covered" > return code;</span>
4914
4698
  }
@@ -4930,7 +4714,7 @@ export default NewComposite;
4930
4714
  <div class='footer quiet pad2 space-top1 center small'>
4931
4715
  Code coverage generated by
4932
4716
  <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
4933
- at 2023-12-07T14:08:08.581Z
4717
+ at 2023-10-18T11:36:07.885Z
4934
4718
  </div>
4935
4719
  <script src="../../prettify.js"></script>
4936
4720
  <script>