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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (297) hide show
  1. package/out/concepts/Assignee__.js +2 -3
  2. package/out/concepts/Assignee__.js.map +1 -1
  3. package/out/concepts/CallInterface__.js +12 -8
  4. package/out/concepts/CallInterface__.js.map +1 -1
  5. package/out/concepts/Identifier__.d.ts +1 -1
  6. package/out/concepts/Identifier__.js +5 -1
  7. package/out/concepts/Identifier__.js.map +1 -1
  8. package/out/concepts/NewComposite__.d.ts +1 -1
  9. package/out/concepts/NewComposite__.js +1 -1
  10. package/out/concepts/NewComposite__.js.map +1 -1
  11. package/out/natural/transformTSCode.d.ts +2 -2
  12. package/package.json +1 -1
  13. package/src/concepts/Assignee__.ts +3 -3
  14. package/src/concepts/CallInterface__.ts +16 -12
  15. package/src/concepts/Identifier__.ts +5 -1
  16. package/src/concepts/NewComposite__.ts +1 -1
  17. package/test/concepts/call-interface/__snapshots__/toEmbeddedTS.spec.ts.snap +6 -3
  18. package/test/concepts/call-logic/__snapshots__/getQuickInfoOffset.spec.ts.snap +3 -3
  19. package/test/concepts/call-logic/__snapshots__/toEmbeddedTS.spec.ts.snap +3 -3
  20. package/.nyc_output/f2d14ce8-876a-4dc0-9aaf-e51d08d081ca.json +0 -1
  21. package/.nyc_output/processinfo/f2d14ce8-876a-4dc0-9aaf-e51d08d081ca.json +0 -1
  22. package/.nyc_output/processinfo/index.json +0 -1
  23. package/coverage/base.css +0 -224
  24. package/coverage/block-navigation.js +0 -87
  25. package/coverage/favicon.png +0 -0
  26. package/coverage/index.html +0 -446
  27. package/coverage/prettify.css +0 -1
  28. package/coverage/prettify.js +0 -2
  29. package/coverage/sort-arrow-sprite.png +0 -0
  30. package/coverage/sorter.js +0 -196
  31. package/coverage/src/automate/engine/index.html +0 -116
  32. package/coverage/src/automate/engine/utils.js.html +0 -1414
  33. package/coverage/src/bak/index.html +0 -116
  34. package/coverage/src/bak/translator.js.html +0 -619
  35. package/coverage/src/breakpoint/generator/AfterStartNode.ts.html +0 -175
  36. package/coverage/src/breakpoint/generator/BeforeEndNode.ts.html +0 -169
  37. package/coverage/src/breakpoint/generator/BreakpointNode.ts.html +0 -1243
  38. package/coverage/src/breakpoint/generator/CallbackNode.ts.html +0 -145
  39. package/coverage/src/breakpoint/generator/index.html +0 -176
  40. package/coverage/src/breakpoint/generator/index.ts.html +0 -508
  41. package/coverage/src/breakpoint/index.html +0 -116
  42. package/coverage/src/breakpoint/index.ts.html +0 -94
  43. package/coverage/src/breakpoint/shared/constants.ts.html +0 -430
  44. package/coverage/src/breakpoint/shared/index.html +0 -176
  45. package/coverage/src/breakpoint/shared/index.ts.html +0 -94
  46. package/coverage/src/breakpoint/shared/operations.ts.html +0 -160
  47. package/coverage/src/breakpoint/shared/socket.ts.html +0 -1225
  48. package/coverage/src/breakpoint/shared/utils.ts.html +0 -961
  49. package/coverage/src/breakpoint/store/core.ts.html +0 -1600
  50. package/coverage/src/breakpoint/store/dock.ts.html +0 -583
  51. package/coverage/src/breakpoint/store/index.html +0 -146
  52. package/coverage/src/breakpoint/store/index.ts.html +0 -91
  53. package/coverage/src/common/BaseNode.ts.html +0 -3868
  54. package/coverage/src/common/Command.ts.html +0 -310
  55. package/coverage/src/common/EventEmitter.ts.html +0 -370
  56. package/coverage/src/common/Messager.ts.html +0 -820
  57. package/coverage/src/common/asyncFuncMap.ts.html +0 -127
  58. package/coverage/src/common/index.html +0 -191
  59. package/coverage/src/common/index.ts.html +0 -94
  60. package/coverage/src/concepts/Abort__.ts.html +0 -328
  61. package/coverage/src/concepts/Anchor__.ts.html +0 -604
  62. package/coverage/src/concepts/AnonymousFunction__.ts.html +0 -1951
  63. package/coverage/src/concepts/App__.ts.html +0 -13252
  64. package/coverage/src/concepts/Argument__.ts.html +0 -910
  65. package/coverage/src/concepts/Assignee__.ts.html +0 -2236
  66. package/coverage/src/concepts/AssignmentLine__.ts.html +0 -409
  67. package/coverage/src/concepts/Assignment__.ts.html +0 -1078
  68. package/coverage/src/concepts/Attribute__.ts.html +0 -733
  69. package/coverage/src/concepts/AuthInterface__.ts.html +0 -367
  70. package/coverage/src/concepts/AuthLogicForCallInterface__.ts.html +0 -1984
  71. package/coverage/src/concepts/AuthLogic__.ts.html +0 -781
  72. package/coverage/src/concepts/BackendVariable__.ts.html +0 -1483
  73. package/coverage/src/concepts/Backend__.ts.html +0 -1165
  74. package/coverage/src/concepts/BatchAssignment__.ts.html +0 -3250
  75. package/coverage/src/concepts/BinaryExpression__.ts.html +0 -1336
  76. package/coverage/src/concepts/BindAttribute__.ts.html +0 -3679
  77. package/coverage/src/concepts/BindDirective__.ts.html +0 -1921
  78. package/coverage/src/concepts/BindEvent__.ts.html +0 -3232
  79. package/coverage/src/concepts/BindStyle__.ts.html +0 -1612
  80. package/coverage/src/concepts/BooleanLiteral__.ts.html +0 -403
  81. package/coverage/src/concepts/CallAuthInterface__.ts.html +0 -1615
  82. package/coverage/src/concepts/CallConnector__.ts.html +0 -868
  83. package/coverage/src/concepts/CallFunction__.ts.html +0 -1966
  84. package/coverage/src/concepts/CallInterface__.ts.html +0 -2614
  85. package/coverage/src/concepts/CallLogic__.ts.html +0 -4420
  86. package/coverage/src/concepts/CallQueryComponent__.ts.html +0 -5308
  87. package/coverage/src/concepts/Comment__.ts.html +0 -376
  88. package/coverage/src/concepts/CompletionProperty__.ts.html +0 -925
  89. package/coverage/src/concepts/ConfigGroup__.ts.html +0 -1105
  90. package/coverage/src/concepts/ConfigPropertyValue__.ts.html +0 -424
  91. package/coverage/src/concepts/ConfigProperty__.ts.html +0 -1348
  92. package/coverage/src/concepts/Configuration__.ts.html +0 -1027
  93. package/coverage/src/concepts/Connection__.ts.html +0 -1360
  94. package/coverage/src/concepts/ConnectorTrigger__.ts.html +0 -595
  95. package/coverage/src/concepts/Connector__.ts.html +0 -4255
  96. package/coverage/src/concepts/Constant__.ts.html +0 -913
  97. package/coverage/src/concepts/DataSource__.ts.html +0 -1771
  98. package/coverage/src/concepts/DatabaseTypeAnnotation__.ts.html +0 -331
  99. package/coverage/src/concepts/Destination__.ts.html +0 -2563
  100. package/coverage/src/concepts/End__.ts.html +0 -433
  101. package/coverage/src/concepts/EntityIndex__.ts.html +0 -787
  102. package/coverage/src/concepts/EntityProperty__.ts.html +0 -2620
  103. package/coverage/src/concepts/Entity__.ts.html +0 -2872
  104. package/coverage/src/concepts/EnumItem__.ts.html +0 -535
  105. package/coverage/src/concepts/Enum__.ts.html +0 -1192
  106. package/coverage/src/concepts/Event__.ts.html +0 -1084
  107. package/coverage/src/concepts/ExternalDestination__.ts.html +0 -1033
  108. package/coverage/src/concepts/ForEachStatement__.ts.html +0 -1819
  109. package/coverage/src/concepts/FrontendLibrary__.ts.html +0 -1711
  110. package/coverage/src/concepts/FrontendVariable__.ts.html +0 -292
  111. package/coverage/src/concepts/Frontend__.ts.html +0 -3961
  112. package/coverage/src/concepts/Function__.ts.html +0 -3514
  113. package/coverage/src/concepts/Identifier__.ts.html +0 -1057
  114. package/coverage/src/concepts/IfStatement__.ts.html +0 -1486
  115. package/coverage/src/concepts/Integration__.ts.html +0 -1228
  116. package/coverage/src/concepts/InterfaceParam__.ts.html +0 -1087
  117. package/coverage/src/concepts/Interface__.ts.html +0 -3394
  118. package/coverage/src/concepts/JSBlock__.ts.html +0 -406
  119. package/coverage/src/concepts/JavaLogic__.ts.html +0 -460
  120. package/coverage/src/concepts/LogicItem__.ts.html +0 -1144
  121. package/coverage/src/concepts/Logic__.ts.html +0 -7078
  122. package/coverage/src/concepts/MatchCase__.ts.html +0 -2641
  123. package/coverage/src/concepts/Match__.ts.html +0 -2323
  124. package/coverage/src/concepts/MemberExpression__.ts.html +0 -1666
  125. package/coverage/src/concepts/MicroApp__.ts.html +0 -436
  126. package/coverage/src/concepts/Module__.ts.html +0 -9220
  127. package/coverage/src/concepts/MsgTriggerEvent__.ts.html +0 -1045
  128. package/coverage/src/concepts/MsgTriggerLauncher__.ts.html +0 -1018
  129. package/coverage/src/concepts/Namespace__.ts.html +0 -7942
  130. package/coverage/src/concepts/NewComposite__.ts.html +0 -4684
  131. package/coverage/src/concepts/NewList__.ts.html +0 -1567
  132. package/coverage/src/concepts/NewMap__.ts.html +0 -2275
  133. package/coverage/src/concepts/New__.ts.html +0 -289
  134. package/coverage/src/concepts/NullLiteral__.ts.html +0 -349
  135. package/coverage/src/concepts/NumericLiteral__.ts.html +0 -661
  136. package/coverage/src/concepts/OqlQueryComponent__.ts.html +0 -1123
  137. package/coverage/src/concepts/OverriddenLogic__.ts.html +0 -6817
  138. package/coverage/src/concepts/Param__.ts.html +0 -1609
  139. package/coverage/src/concepts/Point__.ts.html +0 -331
  140. package/coverage/src/concepts/ProcessComponent__.ts.html +0 -1666
  141. package/coverage/src/concepts/ProcessElement__.ts.html +0 -5884
  142. package/coverage/src/concepts/ProcessOutcome__.ts.html +0 -352
  143. package/coverage/src/concepts/ProcessOutcomes__.ts.html +0 -343
  144. package/coverage/src/concepts/Process__.ts.html +0 -4768
  145. package/coverage/src/concepts/QueryAggregateExpression__.ts.html +0 -568
  146. package/coverage/src/concepts/QueryFieldExpression__.ts.html +0 -583
  147. package/coverage/src/concepts/QueryFromExpression__.ts.html +0 -910
  148. package/coverage/src/concepts/QueryGroupByExpression__.ts.html +0 -559
  149. package/coverage/src/concepts/QueryJoinExpression__.ts.html +0 -1567
  150. package/coverage/src/concepts/QueryLimitExpression__.ts.html +0 -637
  151. package/coverage/src/concepts/QueryOrderByExpression__.ts.html +0 -679
  152. package/coverage/src/concepts/QuerySelectExpression__.ts.html +0 -1714
  153. package/coverage/src/concepts/Rect__.ts.html +0 -373
  154. package/coverage/src/concepts/Return__.ts.html +0 -1258
  155. package/coverage/src/concepts/Role__.ts.html +0 -601
  156. package/coverage/src/concepts/SelectMembers__.ts.html +0 -1246
  157. package/coverage/src/concepts/Slot__.ts.html +0 -628
  158. package/coverage/src/concepts/SqlQueryComponent__.ts.html +0 -964
  159. package/coverage/src/concepts/Start__.ts.html +0 -304
  160. package/coverage/src/concepts/StringInterpolation__.ts.html +0 -1078
  161. package/coverage/src/concepts/StringLiteral__.ts.html +0 -490
  162. package/coverage/src/concepts/StructureProperty__.ts.html +0 -1102
  163. package/coverage/src/concepts/Structure__.ts.html +0 -2053
  164. package/coverage/src/concepts/SwitchCase__.ts.html +0 -1063
  165. package/coverage/src/concepts/SwitchStatement__.ts.html +0 -826
  166. package/coverage/src/concepts/Theme__.ts.html +0 -358
  167. package/coverage/src/concepts/Transactional__.ts.html +0 -628
  168. package/coverage/src/concepts/TriggerEvent__.ts.html +0 -1012
  169. package/coverage/src/concepts/TriggerLauncher__.ts.html +0 -775
  170. package/coverage/src/concepts/TypeAnnotation__.ts.html +0 -3583
  171. package/coverage/src/concepts/TypeParam__.ts.html +0 -301
  172. package/coverage/src/concepts/UnaryExpression__.ts.html +0 -640
  173. package/coverage/src/concepts/Unparsed__.ts.html +0 -382
  174. package/coverage/src/concepts/UseComponent__.ts.html +0 -331
  175. package/coverage/src/concepts/ValidationRule__.ts.html +0 -1840
  176. package/coverage/src/concepts/Variable__.ts.html +0 -1435
  177. package/coverage/src/concepts/ViewBlock__.ts.html +0 -352
  178. package/coverage/src/concepts/ViewComponent__.ts.html +0 -4180
  179. package/coverage/src/concepts/ViewElement__.ts.html +0 -8557
  180. package/coverage/src/concepts/View__.ts.html +0 -8278
  181. package/coverage/src/concepts/WhileStatement__.ts.html +0 -991
  182. package/coverage/src/concepts/basics/stdlib/index.html +0 -341
  183. package/coverage/src/concepts/basics/stdlib/index.ts.html +0 -208
  184. package/coverage/src/concepts/basics/stdlib/nasl.auth.ts.html +0 -565
  185. package/coverage/src/concepts/basics/stdlib/nasl.browser.ts.html +0 -517
  186. package/coverage/src/concepts/basics/stdlib/nasl.collection.ts.html +0 -226
  187. package/coverage/src/concepts/basics/stdlib/nasl.configuration.ts.html +0 -172
  188. package/coverage/src/concepts/basics/stdlib/nasl.core.ts.html +0 -214
  189. package/coverage/src/concepts/basics/stdlib/nasl.event.ts.html +0 -145
  190. package/coverage/src/concepts/basics/stdlib/nasl.http.ts.html +0 -589
  191. package/coverage/src/concepts/basics/stdlib/nasl.interface.ts.html +0 -214
  192. package/coverage/src/concepts/basics/stdlib/nasl.io.ts.html +0 -229
  193. package/coverage/src/concepts/basics/stdlib/nasl.logging.ts.html +0 -268
  194. package/coverage/src/concepts/basics/stdlib/nasl.process.ts.html +0 -1999
  195. package/coverage/src/concepts/basics/stdlib/nasl.ui.ts.html +0 -3259
  196. package/coverage/src/concepts/basics/stdlib/nasl.util.ts.html +0 -6787
  197. package/coverage/src/concepts/basics/stdlib/nasl.validation.ts.html +0 -1768
  198. package/coverage/src/concepts/basics/stdlib/reference2TypeAnnotationList.ts.html +0 -163
  199. package/coverage/src/concepts/basics/types/coreTypeList.ts.html +0 -121
  200. package/coverage/src/concepts/basics/types/index.html +0 -131
  201. package/coverage/src/concepts/basics/types/index.ts.html +0 -160
  202. package/coverage/src/concepts/index.html +0 -1961
  203. package/coverage/src/concepts/index.ts.html +0 -103
  204. package/coverage/src/concepts/index__.ts.html +0 -451
  205. package/coverage/src/config.ts.html +0 -325
  206. package/coverage/src/decorators/index.html +0 -131
  207. package/coverage/src/decorators/index.ts.html +0 -574
  208. package/coverage/src/decorators/promise.ts.html +0 -169
  209. package/coverage/src/eventBus.ts.html +0 -100
  210. package/coverage/src/generator/compileComponent.ts.html +0 -142
  211. package/coverage/src/generator/genBundleFiles.ts.html +0 -1828
  212. package/coverage/src/generator/genHash.ts.html +0 -124
  213. package/coverage/src/generator/genMetaData.ts.html +0 -1042
  214. package/coverage/src/generator/genReleaseBody.ts.html +0 -1282
  215. package/coverage/src/generator/icestark.ts.html +0 -220
  216. package/coverage/src/generator/index.html +0 -266
  217. package/coverage/src/generator/index.ts.html +0 -106
  218. package/coverage/src/generator/microApp.ts.html +0 -172
  219. package/coverage/src/generator/permission.ts.html +0 -1036
  220. package/coverage/src/generator/qiankun.ts.html +0 -232
  221. package/coverage/src/generator/styleReplacer.ts.html +0 -199
  222. package/coverage/src/index.html +0 -146
  223. package/coverage/src/index.ts.html +0 -121
  224. package/coverage/src/manager/diagnostic.ts.html +0 -442
  225. package/coverage/src/manager/index.html +0 -131
  226. package/coverage/src/manager/stepRecorder.ts.html +0 -457
  227. package/coverage/src/sentry/index.html +0 -116
  228. package/coverage/src/sentry/index.ts.html +0 -676
  229. package/coverage/src/server/createUiTs.ts.html +0 -919
  230. package/coverage/src/server/entity2LogicNamespace.ts.html +0 -1294
  231. package/coverage/src/server/event.js.html +0 -526
  232. package/coverage/src/server/extendBaseNode.ts.html +0 -1762
  233. package/coverage/src/server/formatTsUtils.ts.html +0 -2689
  234. package/coverage/src/server/getConnector.ts.html +0 -316
  235. package/coverage/src/server/getExtensionModules.ts.html +0 -178
  236. package/coverage/src/server/getFunctions.ts.html +0 -133
  237. package/coverage/src/server/getInterfaces.ts.html +0 -229
  238. package/coverage/src/server/getLogging.ts.html +0 -100
  239. package/coverage/src/server/getLogics.ts.html +0 -1363
  240. package/coverage/src/server/getMemberIdentifier.ts.html +0 -1606
  241. package/coverage/src/server/getProcessComponents.ts.html +0 -112
  242. package/coverage/src/server/getProcesses.ts.html +0 -2023
  243. package/coverage/src/server/getValidates.ts.html +0 -115
  244. package/coverage/src/server/index.html +0 -401
  245. package/coverage/src/server/index.ts.html +0 -229
  246. package/coverage/src/server/naslServer.ts.html +0 -14290
  247. package/coverage/src/server/naslStdlibMap.ts.html +0 -241
  248. package/coverage/src/server/process2LogicNamespace.ts.html +0 -454
  249. package/coverage/src/server/translator.ts.html +0 -2566
  250. package/coverage/src/service/creator/add.configs.js.html +0 -379
  251. package/coverage/src/service/creator/errHandles.js.html +0 -322
  252. package/coverage/src/service/creator/index.html +0 -146
  253. package/coverage/src/service/creator/index.js.html +0 -352
  254. package/coverage/src/service/datasource/api.js.html +0 -118
  255. package/coverage/src/service/datasource/index.html +0 -131
  256. package/coverage/src/service/datasource/index.js.html +0 -103
  257. package/coverage/src/service/logic/api.js.html +0 -109
  258. package/coverage/src/service/logic/index.html +0 -131
  259. package/coverage/src/service/logic/index.js.html +0 -103
  260. package/coverage/src/service/storage/api.js.html +0 -202
  261. package/coverage/src/service/storage/index.html +0 -206
  262. package/coverage/src/service/storage/index.ts.html +0 -103
  263. package/coverage/src/service/storage/init.ts.html +0 -2710
  264. package/coverage/src/service/storage/jsoner.ts.html +0 -502
  265. package/coverage/src/service/storage/map.ts.html +0 -256
  266. package/coverage/src/service/storage/service.ts.html +0 -331
  267. package/coverage/src/service/storage/storagePoint.ts.html +0 -304
  268. package/coverage/src/templator/genCallComponentLogic.ts.html +0 -163
  269. package/coverage/src/templator/genCreateBlock.ts.html +0 -1093
  270. package/coverage/src/templator/genCurdEditMultipleKeyBlock.ts.html +0 -1609
  271. package/coverage/src/templator/genCurdMultipleKeyBlock.ts.html +0 -2254
  272. package/coverage/src/templator/genEditTableBlock.ts.html +0 -955
  273. package/coverage/src/templator/genEnumSelectBlock.ts.html +0 -178
  274. package/coverage/src/templator/genGetBlock.ts.html +0 -451
  275. package/coverage/src/templator/genGridViewBlock.ts.html +0 -1114
  276. package/coverage/src/templator/genListViewBlock.ts.html +0 -475
  277. package/coverage/src/templator/genQueryComponent.ts.html +0 -1207
  278. package/coverage/src/templator/genSelectBlock.ts.html +0 -1243
  279. package/coverage/src/templator/genTableBlock.ts.html +0 -910
  280. package/coverage/src/templator/genUpdateBlock.ts.html +0 -1192
  281. package/coverage/src/templator/index.html +0 -326
  282. package/coverage/src/templator/index.ts.html +0 -154
  283. package/coverage/src/templator/utils.ts.html +0 -1861
  284. package/coverage/src/translator/constant.ts.html +0 -106
  285. package/coverage/src/translator/index.html +0 -146
  286. package/coverage/src/translator/index.ts.html +0 -94
  287. package/coverage/src/translator/utils.ts.html +0 -397
  288. package/coverage/src/utils/cookie.ts.html +0 -265
  289. package/coverage/src/utils/env.ts.html +0 -91
  290. package/coverage/src/utils/index.html +0 -236
  291. package/coverage/src/utils/index.ts.html +0 -655
  292. package/coverage/src/utils/logger.ts.html +0 -145
  293. package/coverage/src/utils/sortTsString.ts.html +0 -187
  294. package/coverage/src/utils/string.ts.html +0 -400
  295. package/coverage/src/utils/time-slicing.ts.html +0 -412
  296. package/coverage/src/utils/traverse.ts.html +0 -568
  297. package/coverage/src/utils/window.ts.html +0 -112
@@ -1,1762 +0,0 @@
1
-
2
- <!doctype html>
3
- <html lang="en">
4
-
5
- <head>
6
- <title>Code coverage report for src/server/extendBaseNode.ts</title>
7
- <meta charset="utf-8" />
8
- <link rel="stylesheet" href="../../prettify.css" />
9
- <link rel="stylesheet" href="../../base.css" />
10
- <link rel="shortcut icon" type="image/x-icon" href="../../favicon.png" />
11
- <meta name="viewport" content="width=device-width, initial-scale=1" />
12
- <style type='text/css'>
13
- .coverage-summary .sorter {
14
- background-image: url(../../sort-arrow-sprite.png);
15
- }
16
- </style>
17
- </head>
18
-
19
- <body>
20
- <div class='wrapper'>
21
- <div class='pad1'>
22
- <h1><a href="../../index.html">All files</a> / <a href="index.html">src/server</a> extendBaseNode.ts</h1>
23
- <div class='clearfix'>
24
-
25
- <div class='fl pad1y space-right2'>
26
- <span class="strong">4.39% </span>
27
- <span class="quiet">Statements</span>
28
- <span class='fraction'>13/296</span>
29
- </div>
30
-
31
-
32
- <div class='fl pad1y space-right2'>
33
- <span class="strong">0% </span>
34
- <span class="quiet">Branches</span>
35
- <span class='fraction'>0/204</span>
36
- </div>
37
-
38
-
39
- <div class='fl pad1y space-right2'>
40
- <span class="strong">0% </span>
41
- <span class="quiet">Functions</span>
42
- <span class='fraction'>0/30</span>
43
- </div>
44
-
45
-
46
- <div class='fl pad1y space-right2'>
47
- <span class="strong">4.54% </span>
48
- <span class="quiet">Lines</span>
49
- <span class='fraction'>13/286</span>
50
- </div>
51
-
52
-
53
- </div>
54
- <p class="quiet">
55
- Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
56
- </p>
57
- <template id="filterTemplate">
58
- <div class="quiet">
59
- Filter:
60
- <input oninput="onInput()" type="search" id="fileSearch">
61
- </div>
62
- </template>
63
- </div>
64
- <div class='status-line low'></div>
65
- <pre><table class="coverage">
66
- <tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
67
- <a name='L2'></a><a href='#L2'>2</a>
68
- <a name='L3'></a><a href='#L3'>3</a>
69
- <a name='L4'></a><a href='#L4'>4</a>
70
- <a name='L5'></a><a href='#L5'>5</a>
71
- <a name='L6'></a><a href='#L6'>6</a>
72
- <a name='L7'></a><a href='#L7'>7</a>
73
- <a name='L8'></a><a href='#L8'>8</a>
74
- <a name='L9'></a><a href='#L9'>9</a>
75
- <a name='L10'></a><a href='#L10'>10</a>
76
- <a name='L11'></a><a href='#L11'>11</a>
77
- <a name='L12'></a><a href='#L12'>12</a>
78
- <a name='L13'></a><a href='#L13'>13</a>
79
- <a name='L14'></a><a href='#L14'>14</a>
80
- <a name='L15'></a><a href='#L15'>15</a>
81
- <a name='L16'></a><a href='#L16'>16</a>
82
- <a name='L17'></a><a href='#L17'>17</a>
83
- <a name='L18'></a><a href='#L18'>18</a>
84
- <a name='L19'></a><a href='#L19'>19</a>
85
- <a name='L20'></a><a href='#L20'>20</a>
86
- <a name='L21'></a><a href='#L21'>21</a>
87
- <a name='L22'></a><a href='#L22'>22</a>
88
- <a name='L23'></a><a href='#L23'>23</a>
89
- <a name='L24'></a><a href='#L24'>24</a>
90
- <a name='L25'></a><a href='#L25'>25</a>
91
- <a name='L26'></a><a href='#L26'>26</a>
92
- <a name='L27'></a><a href='#L27'>27</a>
93
- <a name='L28'></a><a href='#L28'>28</a>
94
- <a name='L29'></a><a href='#L29'>29</a>
95
- <a name='L30'></a><a href='#L30'>30</a>
96
- <a name='L31'></a><a href='#L31'>31</a>
97
- <a name='L32'></a><a href='#L32'>32</a>
98
- <a name='L33'></a><a href='#L33'>33</a>
99
- <a name='L34'></a><a href='#L34'>34</a>
100
- <a name='L35'></a><a href='#L35'>35</a>
101
- <a name='L36'></a><a href='#L36'>36</a>
102
- <a name='L37'></a><a href='#L37'>37</a>
103
- <a name='L38'></a><a href='#L38'>38</a>
104
- <a name='L39'></a><a href='#L39'>39</a>
105
- <a name='L40'></a><a href='#L40'>40</a>
106
- <a name='L41'></a><a href='#L41'>41</a>
107
- <a name='L42'></a><a href='#L42'>42</a>
108
- <a name='L43'></a><a href='#L43'>43</a>
109
- <a name='L44'></a><a href='#L44'>44</a>
110
- <a name='L45'></a><a href='#L45'>45</a>
111
- <a name='L46'></a><a href='#L46'>46</a>
112
- <a name='L47'></a><a href='#L47'>47</a>
113
- <a name='L48'></a><a href='#L48'>48</a>
114
- <a name='L49'></a><a href='#L49'>49</a>
115
- <a name='L50'></a><a href='#L50'>50</a>
116
- <a name='L51'></a><a href='#L51'>51</a>
117
- <a name='L52'></a><a href='#L52'>52</a>
118
- <a name='L53'></a><a href='#L53'>53</a>
119
- <a name='L54'></a><a href='#L54'>54</a>
120
- <a name='L55'></a><a href='#L55'>55</a>
121
- <a name='L56'></a><a href='#L56'>56</a>
122
- <a name='L57'></a><a href='#L57'>57</a>
123
- <a name='L58'></a><a href='#L58'>58</a>
124
- <a name='L59'></a><a href='#L59'>59</a>
125
- <a name='L60'></a><a href='#L60'>60</a>
126
- <a name='L61'></a><a href='#L61'>61</a>
127
- <a name='L62'></a><a href='#L62'>62</a>
128
- <a name='L63'></a><a href='#L63'>63</a>
129
- <a name='L64'></a><a href='#L64'>64</a>
130
- <a name='L65'></a><a href='#L65'>65</a>
131
- <a name='L66'></a><a href='#L66'>66</a>
132
- <a name='L67'></a><a href='#L67'>67</a>
133
- <a name='L68'></a><a href='#L68'>68</a>
134
- <a name='L69'></a><a href='#L69'>69</a>
135
- <a name='L70'></a><a href='#L70'>70</a>
136
- <a name='L71'></a><a href='#L71'>71</a>
137
- <a name='L72'></a><a href='#L72'>72</a>
138
- <a name='L73'></a><a href='#L73'>73</a>
139
- <a name='L74'></a><a href='#L74'>74</a>
140
- <a name='L75'></a><a href='#L75'>75</a>
141
- <a name='L76'></a><a href='#L76'>76</a>
142
- <a name='L77'></a><a href='#L77'>77</a>
143
- <a name='L78'></a><a href='#L78'>78</a>
144
- <a name='L79'></a><a href='#L79'>79</a>
145
- <a name='L80'></a><a href='#L80'>80</a>
146
- <a name='L81'></a><a href='#L81'>81</a>
147
- <a name='L82'></a><a href='#L82'>82</a>
148
- <a name='L83'></a><a href='#L83'>83</a>
149
- <a name='L84'></a><a href='#L84'>84</a>
150
- <a name='L85'></a><a href='#L85'>85</a>
151
- <a name='L86'></a><a href='#L86'>86</a>
152
- <a name='L87'></a><a href='#L87'>87</a>
153
- <a name='L88'></a><a href='#L88'>88</a>
154
- <a name='L89'></a><a href='#L89'>89</a>
155
- <a name='L90'></a><a href='#L90'>90</a>
156
- <a name='L91'></a><a href='#L91'>91</a>
157
- <a name='L92'></a><a href='#L92'>92</a>
158
- <a name='L93'></a><a href='#L93'>93</a>
159
- <a name='L94'></a><a href='#L94'>94</a>
160
- <a name='L95'></a><a href='#L95'>95</a>
161
- <a name='L96'></a><a href='#L96'>96</a>
162
- <a name='L97'></a><a href='#L97'>97</a>
163
- <a name='L98'></a><a href='#L98'>98</a>
164
- <a name='L99'></a><a href='#L99'>99</a>
165
- <a name='L100'></a><a href='#L100'>100</a>
166
- <a name='L101'></a><a href='#L101'>101</a>
167
- <a name='L102'></a><a href='#L102'>102</a>
168
- <a name='L103'></a><a href='#L103'>103</a>
169
- <a name='L104'></a><a href='#L104'>104</a>
170
- <a name='L105'></a><a href='#L105'>105</a>
171
- <a name='L106'></a><a href='#L106'>106</a>
172
- <a name='L107'></a><a href='#L107'>107</a>
173
- <a name='L108'></a><a href='#L108'>108</a>
174
- <a name='L109'></a><a href='#L109'>109</a>
175
- <a name='L110'></a><a href='#L110'>110</a>
176
- <a name='L111'></a><a href='#L111'>111</a>
177
- <a name='L112'></a><a href='#L112'>112</a>
178
- <a name='L113'></a><a href='#L113'>113</a>
179
- <a name='L114'></a><a href='#L114'>114</a>
180
- <a name='L115'></a><a href='#L115'>115</a>
181
- <a name='L116'></a><a href='#L116'>116</a>
182
- <a name='L117'></a><a href='#L117'>117</a>
183
- <a name='L118'></a><a href='#L118'>118</a>
184
- <a name='L119'></a><a href='#L119'>119</a>
185
- <a name='L120'></a><a href='#L120'>120</a>
186
- <a name='L121'></a><a href='#L121'>121</a>
187
- <a name='L122'></a><a href='#L122'>122</a>
188
- <a name='L123'></a><a href='#L123'>123</a>
189
- <a name='L124'></a><a href='#L124'>124</a>
190
- <a name='L125'></a><a href='#L125'>125</a>
191
- <a name='L126'></a><a href='#L126'>126</a>
192
- <a name='L127'></a><a href='#L127'>127</a>
193
- <a name='L128'></a><a href='#L128'>128</a>
194
- <a name='L129'></a><a href='#L129'>129</a>
195
- <a name='L130'></a><a href='#L130'>130</a>
196
- <a name='L131'></a><a href='#L131'>131</a>
197
- <a name='L132'></a><a href='#L132'>132</a>
198
- <a name='L133'></a><a href='#L133'>133</a>
199
- <a name='L134'></a><a href='#L134'>134</a>
200
- <a name='L135'></a><a href='#L135'>135</a>
201
- <a name='L136'></a><a href='#L136'>136</a>
202
- <a name='L137'></a><a href='#L137'>137</a>
203
- <a name='L138'></a><a href='#L138'>138</a>
204
- <a name='L139'></a><a href='#L139'>139</a>
205
- <a name='L140'></a><a href='#L140'>140</a>
206
- <a name='L141'></a><a href='#L141'>141</a>
207
- <a name='L142'></a><a href='#L142'>142</a>
208
- <a name='L143'></a><a href='#L143'>143</a>
209
- <a name='L144'></a><a href='#L144'>144</a>
210
- <a name='L145'></a><a href='#L145'>145</a>
211
- <a name='L146'></a><a href='#L146'>146</a>
212
- <a name='L147'></a><a href='#L147'>147</a>
213
- <a name='L148'></a><a href='#L148'>148</a>
214
- <a name='L149'></a><a href='#L149'>149</a>
215
- <a name='L150'></a><a href='#L150'>150</a>
216
- <a name='L151'></a><a href='#L151'>151</a>
217
- <a name='L152'></a><a href='#L152'>152</a>
218
- <a name='L153'></a><a href='#L153'>153</a>
219
- <a name='L154'></a><a href='#L154'>154</a>
220
- <a name='L155'></a><a href='#L155'>155</a>
221
- <a name='L156'></a><a href='#L156'>156</a>
222
- <a name='L157'></a><a href='#L157'>157</a>
223
- <a name='L158'></a><a href='#L158'>158</a>
224
- <a name='L159'></a><a href='#L159'>159</a>
225
- <a name='L160'></a><a href='#L160'>160</a>
226
- <a name='L161'></a><a href='#L161'>161</a>
227
- <a name='L162'></a><a href='#L162'>162</a>
228
- <a name='L163'></a><a href='#L163'>163</a>
229
- <a name='L164'></a><a href='#L164'>164</a>
230
- <a name='L165'></a><a href='#L165'>165</a>
231
- <a name='L166'></a><a href='#L166'>166</a>
232
- <a name='L167'></a><a href='#L167'>167</a>
233
- <a name='L168'></a><a href='#L168'>168</a>
234
- <a name='L169'></a><a href='#L169'>169</a>
235
- <a name='L170'></a><a href='#L170'>170</a>
236
- <a name='L171'></a><a href='#L171'>171</a>
237
- <a name='L172'></a><a href='#L172'>172</a>
238
- <a name='L173'></a><a href='#L173'>173</a>
239
- <a name='L174'></a><a href='#L174'>174</a>
240
- <a name='L175'></a><a href='#L175'>175</a>
241
- <a name='L176'></a><a href='#L176'>176</a>
242
- <a name='L177'></a><a href='#L177'>177</a>
243
- <a name='L178'></a><a href='#L178'>178</a>
244
- <a name='L179'></a><a href='#L179'>179</a>
245
- <a name='L180'></a><a href='#L180'>180</a>
246
- <a name='L181'></a><a href='#L181'>181</a>
247
- <a name='L182'></a><a href='#L182'>182</a>
248
- <a name='L183'></a><a href='#L183'>183</a>
249
- <a name='L184'></a><a href='#L184'>184</a>
250
- <a name='L185'></a><a href='#L185'>185</a>
251
- <a name='L186'></a><a href='#L186'>186</a>
252
- <a name='L187'></a><a href='#L187'>187</a>
253
- <a name='L188'></a><a href='#L188'>188</a>
254
- <a name='L189'></a><a href='#L189'>189</a>
255
- <a name='L190'></a><a href='#L190'>190</a>
256
- <a name='L191'></a><a href='#L191'>191</a>
257
- <a name='L192'></a><a href='#L192'>192</a>
258
- <a name='L193'></a><a href='#L193'>193</a>
259
- <a name='L194'></a><a href='#L194'>194</a>
260
- <a name='L195'></a><a href='#L195'>195</a>
261
- <a name='L196'></a><a href='#L196'>196</a>
262
- <a name='L197'></a><a href='#L197'>197</a>
263
- <a name='L198'></a><a href='#L198'>198</a>
264
- <a name='L199'></a><a href='#L199'>199</a>
265
- <a name='L200'></a><a href='#L200'>200</a>
266
- <a name='L201'></a><a href='#L201'>201</a>
267
- <a name='L202'></a><a href='#L202'>202</a>
268
- <a name='L203'></a><a href='#L203'>203</a>
269
- <a name='L204'></a><a href='#L204'>204</a>
270
- <a name='L205'></a><a href='#L205'>205</a>
271
- <a name='L206'></a><a href='#L206'>206</a>
272
- <a name='L207'></a><a href='#L207'>207</a>
273
- <a name='L208'></a><a href='#L208'>208</a>
274
- <a name='L209'></a><a href='#L209'>209</a>
275
- <a name='L210'></a><a href='#L210'>210</a>
276
- <a name='L211'></a><a href='#L211'>211</a>
277
- <a name='L212'></a><a href='#L212'>212</a>
278
- <a name='L213'></a><a href='#L213'>213</a>
279
- <a name='L214'></a><a href='#L214'>214</a>
280
- <a name='L215'></a><a href='#L215'>215</a>
281
- <a name='L216'></a><a href='#L216'>216</a>
282
- <a name='L217'></a><a href='#L217'>217</a>
283
- <a name='L218'></a><a href='#L218'>218</a>
284
- <a name='L219'></a><a href='#L219'>219</a>
285
- <a name='L220'></a><a href='#L220'>220</a>
286
- <a name='L221'></a><a href='#L221'>221</a>
287
- <a name='L222'></a><a href='#L222'>222</a>
288
- <a name='L223'></a><a href='#L223'>223</a>
289
- <a name='L224'></a><a href='#L224'>224</a>
290
- <a name='L225'></a><a href='#L225'>225</a>
291
- <a name='L226'></a><a href='#L226'>226</a>
292
- <a name='L227'></a><a href='#L227'>227</a>
293
- <a name='L228'></a><a href='#L228'>228</a>
294
- <a name='L229'></a><a href='#L229'>229</a>
295
- <a name='L230'></a><a href='#L230'>230</a>
296
- <a name='L231'></a><a href='#L231'>231</a>
297
- <a name='L232'></a><a href='#L232'>232</a>
298
- <a name='L233'></a><a href='#L233'>233</a>
299
- <a name='L234'></a><a href='#L234'>234</a>
300
- <a name='L235'></a><a href='#L235'>235</a>
301
- <a name='L236'></a><a href='#L236'>236</a>
302
- <a name='L237'></a><a href='#L237'>237</a>
303
- <a name='L238'></a><a href='#L238'>238</a>
304
- <a name='L239'></a><a href='#L239'>239</a>
305
- <a name='L240'></a><a href='#L240'>240</a>
306
- <a name='L241'></a><a href='#L241'>241</a>
307
- <a name='L242'></a><a href='#L242'>242</a>
308
- <a name='L243'></a><a href='#L243'>243</a>
309
- <a name='L244'></a><a href='#L244'>244</a>
310
- <a name='L245'></a><a href='#L245'>245</a>
311
- <a name='L246'></a><a href='#L246'>246</a>
312
- <a name='L247'></a><a href='#L247'>247</a>
313
- <a name='L248'></a><a href='#L248'>248</a>
314
- <a name='L249'></a><a href='#L249'>249</a>
315
- <a name='L250'></a><a href='#L250'>250</a>
316
- <a name='L251'></a><a href='#L251'>251</a>
317
- <a name='L252'></a><a href='#L252'>252</a>
318
- <a name='L253'></a><a href='#L253'>253</a>
319
- <a name='L254'></a><a href='#L254'>254</a>
320
- <a name='L255'></a><a href='#L255'>255</a>
321
- <a name='L256'></a><a href='#L256'>256</a>
322
- <a name='L257'></a><a href='#L257'>257</a>
323
- <a name='L258'></a><a href='#L258'>258</a>
324
- <a name='L259'></a><a href='#L259'>259</a>
325
- <a name='L260'></a><a href='#L260'>260</a>
326
- <a name='L261'></a><a href='#L261'>261</a>
327
- <a name='L262'></a><a href='#L262'>262</a>
328
- <a name='L263'></a><a href='#L263'>263</a>
329
- <a name='L264'></a><a href='#L264'>264</a>
330
- <a name='L265'></a><a href='#L265'>265</a>
331
- <a name='L266'></a><a href='#L266'>266</a>
332
- <a name='L267'></a><a href='#L267'>267</a>
333
- <a name='L268'></a><a href='#L268'>268</a>
334
- <a name='L269'></a><a href='#L269'>269</a>
335
- <a name='L270'></a><a href='#L270'>270</a>
336
- <a name='L271'></a><a href='#L271'>271</a>
337
- <a name='L272'></a><a href='#L272'>272</a>
338
- <a name='L273'></a><a href='#L273'>273</a>
339
- <a name='L274'></a><a href='#L274'>274</a>
340
- <a name='L275'></a><a href='#L275'>275</a>
341
- <a name='L276'></a><a href='#L276'>276</a>
342
- <a name='L277'></a><a href='#L277'>277</a>
343
- <a name='L278'></a><a href='#L278'>278</a>
344
- <a name='L279'></a><a href='#L279'>279</a>
345
- <a name='L280'></a><a href='#L280'>280</a>
346
- <a name='L281'></a><a href='#L281'>281</a>
347
- <a name='L282'></a><a href='#L282'>282</a>
348
- <a name='L283'></a><a href='#L283'>283</a>
349
- <a name='L284'></a><a href='#L284'>284</a>
350
- <a name='L285'></a><a href='#L285'>285</a>
351
- <a name='L286'></a><a href='#L286'>286</a>
352
- <a name='L287'></a><a href='#L287'>287</a>
353
- <a name='L288'></a><a href='#L288'>288</a>
354
- <a name='L289'></a><a href='#L289'>289</a>
355
- <a name='L290'></a><a href='#L290'>290</a>
356
- <a name='L291'></a><a href='#L291'>291</a>
357
- <a name='L292'></a><a href='#L292'>292</a>
358
- <a name='L293'></a><a href='#L293'>293</a>
359
- <a name='L294'></a><a href='#L294'>294</a>
360
- <a name='L295'></a><a href='#L295'>295</a>
361
- <a name='L296'></a><a href='#L296'>296</a>
362
- <a name='L297'></a><a href='#L297'>297</a>
363
- <a name='L298'></a><a href='#L298'>298</a>
364
- <a name='L299'></a><a href='#L299'>299</a>
365
- <a name='L300'></a><a href='#L300'>300</a>
366
- <a name='L301'></a><a href='#L301'>301</a>
367
- <a name='L302'></a><a href='#L302'>302</a>
368
- <a name='L303'></a><a href='#L303'>303</a>
369
- <a name='L304'></a><a href='#L304'>304</a>
370
- <a name='L305'></a><a href='#L305'>305</a>
371
- <a name='L306'></a><a href='#L306'>306</a>
372
- <a name='L307'></a><a href='#L307'>307</a>
373
- <a name='L308'></a><a href='#L308'>308</a>
374
- <a name='L309'></a><a href='#L309'>309</a>
375
- <a name='L310'></a><a href='#L310'>310</a>
376
- <a name='L311'></a><a href='#L311'>311</a>
377
- <a name='L312'></a><a href='#L312'>312</a>
378
- <a name='L313'></a><a href='#L313'>313</a>
379
- <a name='L314'></a><a href='#L314'>314</a>
380
- <a name='L315'></a><a href='#L315'>315</a>
381
- <a name='L316'></a><a href='#L316'>316</a>
382
- <a name='L317'></a><a href='#L317'>317</a>
383
- <a name='L318'></a><a href='#L318'>318</a>
384
- <a name='L319'></a><a href='#L319'>319</a>
385
- <a name='L320'></a><a href='#L320'>320</a>
386
- <a name='L321'></a><a href='#L321'>321</a>
387
- <a name='L322'></a><a href='#L322'>322</a>
388
- <a name='L323'></a><a href='#L323'>323</a>
389
- <a name='L324'></a><a href='#L324'>324</a>
390
- <a name='L325'></a><a href='#L325'>325</a>
391
- <a name='L326'></a><a href='#L326'>326</a>
392
- <a name='L327'></a><a href='#L327'>327</a>
393
- <a name='L328'></a><a href='#L328'>328</a>
394
- <a name='L329'></a><a href='#L329'>329</a>
395
- <a name='L330'></a><a href='#L330'>330</a>
396
- <a name='L331'></a><a href='#L331'>331</a>
397
- <a name='L332'></a><a href='#L332'>332</a>
398
- <a name='L333'></a><a href='#L333'>333</a>
399
- <a name='L334'></a><a href='#L334'>334</a>
400
- <a name='L335'></a><a href='#L335'>335</a>
401
- <a name='L336'></a><a href='#L336'>336</a>
402
- <a name='L337'></a><a href='#L337'>337</a>
403
- <a name='L338'></a><a href='#L338'>338</a>
404
- <a name='L339'></a><a href='#L339'>339</a>
405
- <a name='L340'></a><a href='#L340'>340</a>
406
- <a name='L341'></a><a href='#L341'>341</a>
407
- <a name='L342'></a><a href='#L342'>342</a>
408
- <a name='L343'></a><a href='#L343'>343</a>
409
- <a name='L344'></a><a href='#L344'>344</a>
410
- <a name='L345'></a><a href='#L345'>345</a>
411
- <a name='L346'></a><a href='#L346'>346</a>
412
- <a name='L347'></a><a href='#L347'>347</a>
413
- <a name='L348'></a><a href='#L348'>348</a>
414
- <a name='L349'></a><a href='#L349'>349</a>
415
- <a name='L350'></a><a href='#L350'>350</a>
416
- <a name='L351'></a><a href='#L351'>351</a>
417
- <a name='L352'></a><a href='#L352'>352</a>
418
- <a name='L353'></a><a href='#L353'>353</a>
419
- <a name='L354'></a><a href='#L354'>354</a>
420
- <a name='L355'></a><a href='#L355'>355</a>
421
- <a name='L356'></a><a href='#L356'>356</a>
422
- <a name='L357'></a><a href='#L357'>357</a>
423
- <a name='L358'></a><a href='#L358'>358</a>
424
- <a name='L359'></a><a href='#L359'>359</a>
425
- <a name='L360'></a><a href='#L360'>360</a>
426
- <a name='L361'></a><a href='#L361'>361</a>
427
- <a name='L362'></a><a href='#L362'>362</a>
428
- <a name='L363'></a><a href='#L363'>363</a>
429
- <a name='L364'></a><a href='#L364'>364</a>
430
- <a name='L365'></a><a href='#L365'>365</a>
431
- <a name='L366'></a><a href='#L366'>366</a>
432
- <a name='L367'></a><a href='#L367'>367</a>
433
- <a name='L368'></a><a href='#L368'>368</a>
434
- <a name='L369'></a><a href='#L369'>369</a>
435
- <a name='L370'></a><a href='#L370'>370</a>
436
- <a name='L371'></a><a href='#L371'>371</a>
437
- <a name='L372'></a><a href='#L372'>372</a>
438
- <a name='L373'></a><a href='#L373'>373</a>
439
- <a name='L374'></a><a href='#L374'>374</a>
440
- <a name='L375'></a><a href='#L375'>375</a>
441
- <a name='L376'></a><a href='#L376'>376</a>
442
- <a name='L377'></a><a href='#L377'>377</a>
443
- <a name='L378'></a><a href='#L378'>378</a>
444
- <a name='L379'></a><a href='#L379'>379</a>
445
- <a name='L380'></a><a href='#L380'>380</a>
446
- <a name='L381'></a><a href='#L381'>381</a>
447
- <a name='L382'></a><a href='#L382'>382</a>
448
- <a name='L383'></a><a href='#L383'>383</a>
449
- <a name='L384'></a><a href='#L384'>384</a>
450
- <a name='L385'></a><a href='#L385'>385</a>
451
- <a name='L386'></a><a href='#L386'>386</a>
452
- <a name='L387'></a><a href='#L387'>387</a>
453
- <a name='L388'></a><a href='#L388'>388</a>
454
- <a name='L389'></a><a href='#L389'>389</a>
455
- <a name='L390'></a><a href='#L390'>390</a>
456
- <a name='L391'></a><a href='#L391'>391</a>
457
- <a name='L392'></a><a href='#L392'>392</a>
458
- <a name='L393'></a><a href='#L393'>393</a>
459
- <a name='L394'></a><a href='#L394'>394</a>
460
- <a name='L395'></a><a href='#L395'>395</a>
461
- <a name='L396'></a><a href='#L396'>396</a>
462
- <a name='L397'></a><a href='#L397'>397</a>
463
- <a name='L398'></a><a href='#L398'>398</a>
464
- <a name='L399'></a><a href='#L399'>399</a>
465
- <a name='L400'></a><a href='#L400'>400</a>
466
- <a name='L401'></a><a href='#L401'>401</a>
467
- <a name='L402'></a><a href='#L402'>402</a>
468
- <a name='L403'></a><a href='#L403'>403</a>
469
- <a name='L404'></a><a href='#L404'>404</a>
470
- <a name='L405'></a><a href='#L405'>405</a>
471
- <a name='L406'></a><a href='#L406'>406</a>
472
- <a name='L407'></a><a href='#L407'>407</a>
473
- <a name='L408'></a><a href='#L408'>408</a>
474
- <a name='L409'></a><a href='#L409'>409</a>
475
- <a name='L410'></a><a href='#L410'>410</a>
476
- <a name='L411'></a><a href='#L411'>411</a>
477
- <a name='L412'></a><a href='#L412'>412</a>
478
- <a name='L413'></a><a href='#L413'>413</a>
479
- <a name='L414'></a><a href='#L414'>414</a>
480
- <a name='L415'></a><a href='#L415'>415</a>
481
- <a name='L416'></a><a href='#L416'>416</a>
482
- <a name='L417'></a><a href='#L417'>417</a>
483
- <a name='L418'></a><a href='#L418'>418</a>
484
- <a name='L419'></a><a href='#L419'>419</a>
485
- <a name='L420'></a><a href='#L420'>420</a>
486
- <a name='L421'></a><a href='#L421'>421</a>
487
- <a name='L422'></a><a href='#L422'>422</a>
488
- <a name='L423'></a><a href='#L423'>423</a>
489
- <a name='L424'></a><a href='#L424'>424</a>
490
- <a name='L425'></a><a href='#L425'>425</a>
491
- <a name='L426'></a><a href='#L426'>426</a>
492
- <a name='L427'></a><a href='#L427'>427</a>
493
- <a name='L428'></a><a href='#L428'>428</a>
494
- <a name='L429'></a><a href='#L429'>429</a>
495
- <a name='L430'></a><a href='#L430'>430</a>
496
- <a name='L431'></a><a href='#L431'>431</a>
497
- <a name='L432'></a><a href='#L432'>432</a>
498
- <a name='L433'></a><a href='#L433'>433</a>
499
- <a name='L434'></a><a href='#L434'>434</a>
500
- <a name='L435'></a><a href='#L435'>435</a>
501
- <a name='L436'></a><a href='#L436'>436</a>
502
- <a name='L437'></a><a href='#L437'>437</a>
503
- <a name='L438'></a><a href='#L438'>438</a>
504
- <a name='L439'></a><a href='#L439'>439</a>
505
- <a name='L440'></a><a href='#L440'>440</a>
506
- <a name='L441'></a><a href='#L441'>441</a>
507
- <a name='L442'></a><a href='#L442'>442</a>
508
- <a name='L443'></a><a href='#L443'>443</a>
509
- <a name='L444'></a><a href='#L444'>444</a>
510
- <a name='L445'></a><a href='#L445'>445</a>
511
- <a name='L446'></a><a href='#L446'>446</a>
512
- <a name='L447'></a><a href='#L447'>447</a>
513
- <a name='L448'></a><a href='#L448'>448</a>
514
- <a name='L449'></a><a href='#L449'>449</a>
515
- <a name='L450'></a><a href='#L450'>450</a>
516
- <a name='L451'></a><a href='#L451'>451</a>
517
- <a name='L452'></a><a href='#L452'>452</a>
518
- <a name='L453'></a><a href='#L453'>453</a>
519
- <a name='L454'></a><a href='#L454'>454</a>
520
- <a name='L455'></a><a href='#L455'>455</a>
521
- <a name='L456'></a><a href='#L456'>456</a>
522
- <a name='L457'></a><a href='#L457'>457</a>
523
- <a name='L458'></a><a href='#L458'>458</a>
524
- <a name='L459'></a><a href='#L459'>459</a>
525
- <a name='L460'></a><a href='#L460'>460</a>
526
- <a name='L461'></a><a href='#L461'>461</a>
527
- <a name='L462'></a><a href='#L462'>462</a>
528
- <a name='L463'></a><a href='#L463'>463</a>
529
- <a name='L464'></a><a href='#L464'>464</a>
530
- <a name='L465'></a><a href='#L465'>465</a>
531
- <a name='L466'></a><a href='#L466'>466</a>
532
- <a name='L467'></a><a href='#L467'>467</a>
533
- <a name='L468'></a><a href='#L468'>468</a>
534
- <a name='L469'></a><a href='#L469'>469</a>
535
- <a name='L470'></a><a href='#L470'>470</a>
536
- <a name='L471'></a><a href='#L471'>471</a>
537
- <a name='L472'></a><a href='#L472'>472</a>
538
- <a name='L473'></a><a href='#L473'>473</a>
539
- <a name='L474'></a><a href='#L474'>474</a>
540
- <a name='L475'></a><a href='#L475'>475</a>
541
- <a name='L476'></a><a href='#L476'>476</a>
542
- <a name='L477'></a><a href='#L477'>477</a>
543
- <a name='L478'></a><a href='#L478'>478</a>
544
- <a name='L479'></a><a href='#L479'>479</a>
545
- <a name='L480'></a><a href='#L480'>480</a>
546
- <a name='L481'></a><a href='#L481'>481</a>
547
- <a name='L482'></a><a href='#L482'>482</a>
548
- <a name='L483'></a><a href='#L483'>483</a>
549
- <a name='L484'></a><a href='#L484'>484</a>
550
- <a name='L485'></a><a href='#L485'>485</a>
551
- <a name='L486'></a><a href='#L486'>486</a>
552
- <a name='L487'></a><a href='#L487'>487</a>
553
- <a name='L488'></a><a href='#L488'>488</a>
554
- <a name='L489'></a><a href='#L489'>489</a>
555
- <a name='L490'></a><a href='#L490'>490</a>
556
- <a name='L491'></a><a href='#L491'>491</a>
557
- <a name='L492'></a><a href='#L492'>492</a>
558
- <a name='L493'></a><a href='#L493'>493</a>
559
- <a name='L494'></a><a href='#L494'>494</a>
560
- <a name='L495'></a><a href='#L495'>495</a>
561
- <a name='L496'></a><a href='#L496'>496</a>
562
- <a name='L497'></a><a href='#L497'>497</a>
563
- <a name='L498'></a><a href='#L498'>498</a>
564
- <a name='L499'></a><a href='#L499'>499</a>
565
- <a name='L500'></a><a href='#L500'>500</a>
566
- <a name='L501'></a><a href='#L501'>501</a>
567
- <a name='L502'></a><a href='#L502'>502</a>
568
- <a name='L503'></a><a href='#L503'>503</a>
569
- <a name='L504'></a><a href='#L504'>504</a>
570
- <a name='L505'></a><a href='#L505'>505</a>
571
- <a name='L506'></a><a href='#L506'>506</a>
572
- <a name='L507'></a><a href='#L507'>507</a>
573
- <a name='L508'></a><a href='#L508'>508</a>
574
- <a name='L509'></a><a href='#L509'>509</a>
575
- <a name='L510'></a><a href='#L510'>510</a>
576
- <a name='L511'></a><a href='#L511'>511</a>
577
- <a name='L512'></a><a href='#L512'>512</a>
578
- <a name='L513'></a><a href='#L513'>513</a>
579
- <a name='L514'></a><a href='#L514'>514</a>
580
- <a name='L515'></a><a href='#L515'>515</a>
581
- <a name='L516'></a><a href='#L516'>516</a>
582
- <a name='L517'></a><a href='#L517'>517</a>
583
- <a name='L518'></a><a href='#L518'>518</a>
584
- <a name='L519'></a><a href='#L519'>519</a>
585
- <a name='L520'></a><a href='#L520'>520</a>
586
- <a name='L521'></a><a href='#L521'>521</a>
587
- <a name='L522'></a><a href='#L522'>522</a>
588
- <a name='L523'></a><a href='#L523'>523</a>
589
- <a name='L524'></a><a href='#L524'>524</a>
590
- <a name='L525'></a><a href='#L525'>525</a>
591
- <a name='L526'></a><a href='#L526'>526</a>
592
- <a name='L527'></a><a href='#L527'>527</a>
593
- <a name='L528'></a><a href='#L528'>528</a>
594
- <a name='L529'></a><a href='#L529'>529</a>
595
- <a name='L530'></a><a href='#L530'>530</a>
596
- <a name='L531'></a><a href='#L531'>531</a>
597
- <a name='L532'></a><a href='#L532'>532</a>
598
- <a name='L533'></a><a href='#L533'>533</a>
599
- <a name='L534'></a><a href='#L534'>534</a>
600
- <a name='L535'></a><a href='#L535'>535</a>
601
- <a name='L536'></a><a href='#L536'>536</a>
602
- <a name='L537'></a><a href='#L537'>537</a>
603
- <a name='L538'></a><a href='#L538'>538</a>
604
- <a name='L539'></a><a href='#L539'>539</a>
605
- <a name='L540'></a><a href='#L540'>540</a>
606
- <a name='L541'></a><a href='#L541'>541</a>
607
- <a name='L542'></a><a href='#L542'>542</a>
608
- <a name='L543'></a><a href='#L543'>543</a>
609
- <a name='L544'></a><a href='#L544'>544</a>
610
- <a name='L545'></a><a href='#L545'>545</a>
611
- <a name='L546'></a><a href='#L546'>546</a>
612
- <a name='L547'></a><a href='#L547'>547</a>
613
- <a name='L548'></a><a href='#L548'>548</a>
614
- <a name='L549'></a><a href='#L549'>549</a>
615
- <a name='L550'></a><a href='#L550'>550</a>
616
- <a name='L551'></a><a href='#L551'>551</a>
617
- <a name='L552'></a><a href='#L552'>552</a>
618
- <a name='L553'></a><a href='#L553'>553</a>
619
- <a name='L554'></a><a href='#L554'>554</a>
620
- <a name='L555'></a><a href='#L555'>555</a>
621
- <a name='L556'></a><a href='#L556'>556</a>
622
- <a name='L557'></a><a href='#L557'>557</a>
623
- <a name='L558'></a><a href='#L558'>558</a>
624
- <a name='L559'></a><a href='#L559'>559</a>
625
- <a name='L560'></a><a href='#L560'>560</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral">&nbsp;</span>
626
- <span class="cline-any cline-neutral">&nbsp;</span>
627
- <span class="cline-any cline-neutral">&nbsp;</span>
628
- <span class="cline-any cline-yes">1x</span>
629
- <span class="cline-any cline-neutral">&nbsp;</span>
630
- <span class="cline-any cline-neutral">&nbsp;</span>
631
- <span class="cline-any cline-neutral">&nbsp;</span>
632
- <span class="cline-any cline-neutral">&nbsp;</span>
633
- <span class="cline-any cline-neutral">&nbsp;</span>
634
- <span class="cline-any cline-neutral">&nbsp;</span>
635
- <span class="cline-any cline-neutral">&nbsp;</span>
636
- <span class="cline-any cline-neutral">&nbsp;</span>
637
- <span class="cline-any cline-neutral">&nbsp;</span>
638
- <span class="cline-any cline-neutral">&nbsp;</span>
639
- <span class="cline-any cline-neutral">&nbsp;</span>
640
- <span class="cline-any cline-neutral">&nbsp;</span>
641
- <span class="cline-any cline-neutral">&nbsp;</span>
642
- <span class="cline-any cline-neutral">&nbsp;</span>
643
- <span class="cline-any cline-neutral">&nbsp;</span>
644
- <span class="cline-any cline-neutral">&nbsp;</span>
645
- <span class="cline-any cline-neutral">&nbsp;</span>
646
- <span class="cline-any cline-neutral">&nbsp;</span>
647
- <span class="cline-any cline-neutral">&nbsp;</span>
648
- <span class="cline-any cline-neutral">&nbsp;</span>
649
- <span class="cline-any cline-neutral">&nbsp;</span>
650
- <span class="cline-any cline-neutral">&nbsp;</span>
651
- <span class="cline-any cline-yes">1x</span>
652
- <span class="cline-any cline-yes">1x</span>
653
- <span class="cline-any cline-neutral">&nbsp;</span>
654
- <span class="cline-any cline-yes">1x</span>
655
- <span class="cline-any cline-neutral">&nbsp;</span>
656
- <span class="cline-any cline-neutral">&nbsp;</span>
657
- <span class="cline-any cline-neutral">&nbsp;</span>
658
- <span class="cline-any cline-neutral">&nbsp;</span>
659
- <span class="cline-any cline-neutral">&nbsp;</span>
660
- <span class="cline-any cline-neutral">&nbsp;</span>
661
- <span class="cline-any cline-yes">1x</span>
662
- <span class="cline-any cline-neutral">&nbsp;</span>
663
- <span class="cline-any cline-neutral">&nbsp;</span>
664
- <span class="cline-any cline-no">&nbsp;</span>
665
- <span class="cline-any cline-neutral">&nbsp;</span>
666
- <span class="cline-any cline-no">&nbsp;</span>
667
- <span class="cline-any cline-no">&nbsp;</span>
668
- <span class="cline-any cline-no">&nbsp;</span>
669
- <span class="cline-any cline-no">&nbsp;</span>
670
- <span class="cline-any cline-no">&nbsp;</span>
671
- <span class="cline-any cline-no">&nbsp;</span>
672
- <span class="cline-any cline-no">&nbsp;</span>
673
- <span class="cline-any cline-no">&nbsp;</span>
674
- <span class="cline-any cline-neutral">&nbsp;</span>
675
- <span class="cline-any cline-neutral">&nbsp;</span>
676
- <span class="cline-any cline-no">&nbsp;</span>
677
- <span class="cline-any cline-no">&nbsp;</span>
678
- <span class="cline-any cline-no">&nbsp;</span>
679
- <span class="cline-any cline-no">&nbsp;</span>
680
- <span class="cline-any cline-neutral">&nbsp;</span>
681
- <span class="cline-any cline-neutral">&nbsp;</span>
682
- <span class="cline-any cline-neutral">&nbsp;</span>
683
- <span class="cline-any cline-no">&nbsp;</span>
684
- <span class="cline-any cline-neutral">&nbsp;</span>
685
- <span class="cline-any cline-no">&nbsp;</span>
686
- <span class="cline-any cline-neutral">&nbsp;</span>
687
- <span class="cline-any cline-no">&nbsp;</span>
688
- <span class="cline-any cline-no">&nbsp;</span>
689
- <span class="cline-any cline-no">&nbsp;</span>
690
- <span class="cline-any cline-no">&nbsp;</span>
691
- <span class="cline-any cline-no">&nbsp;</span>
692
- <span class="cline-any cline-no">&nbsp;</span>
693
- <span class="cline-any cline-neutral">&nbsp;</span>
694
- <span class="cline-any cline-neutral">&nbsp;</span>
695
- <span class="cline-any cline-no">&nbsp;</span>
696
- <span class="cline-any cline-no">&nbsp;</span>
697
- <span class="cline-any cline-no">&nbsp;</span>
698
- <span class="cline-any cline-no">&nbsp;</span>
699
- <span class="cline-any cline-no">&nbsp;</span>
700
- <span class="cline-any cline-no">&nbsp;</span>
701
- <span class="cline-any cline-neutral">&nbsp;</span>
702
- <span class="cline-any cline-neutral">&nbsp;</span>
703
- <span class="cline-any cline-neutral">&nbsp;</span>
704
- <span class="cline-any cline-neutral">&nbsp;</span>
705
- <span class="cline-any cline-no">&nbsp;</span>
706
- <span class="cline-any cline-no">&nbsp;</span>
707
- <span class="cline-any cline-no">&nbsp;</span>
708
- <span class="cline-any cline-no">&nbsp;</span>
709
- <span class="cline-any cline-neutral">&nbsp;</span>
710
- <span class="cline-any cline-no">&nbsp;</span>
711
- <span class="cline-any cline-neutral">&nbsp;</span>
712
- <span class="cline-any cline-neutral">&nbsp;</span>
713
- <span class="cline-any cline-neutral">&nbsp;</span>
714
- <span class="cline-any cline-yes">1x</span>
715
- <span class="cline-any cline-no">&nbsp;</span>
716
- <span class="cline-any cline-no">&nbsp;</span>
717
- <span class="cline-any cline-no">&nbsp;</span>
718
- <span class="cline-any cline-no">&nbsp;</span>
719
- <span class="cline-any cline-neutral">&nbsp;</span>
720
- <span class="cline-any cline-no">&nbsp;</span>
721
- <span class="cline-any cline-neutral">&nbsp;</span>
722
- <span class="cline-any cline-neutral">&nbsp;</span>
723
- <span class="cline-any cline-neutral">&nbsp;</span>
724
- <span class="cline-any cline-neutral">&nbsp;</span>
725
- <span class="cline-any cline-yes">1x</span>
726
- <span class="cline-any cline-no">&nbsp;</span>
727
- <span class="cline-any cline-no">&nbsp;</span>
728
- <span class="cline-any cline-no">&nbsp;</span>
729
- <span class="cline-any cline-no">&nbsp;</span>
730
- <span class="cline-any cline-neutral">&nbsp;</span>
731
- <span class="cline-any cline-no">&nbsp;</span>
732
- <span class="cline-any cline-neutral">&nbsp;</span>
733
- <span class="cline-any cline-neutral">&nbsp;</span>
734
- <span class="cline-any cline-neutral">&nbsp;</span>
735
- <span class="cline-any cline-yes">1x</span>
736
- <span class="cline-any cline-no">&nbsp;</span>
737
- <span class="cline-any cline-neutral">&nbsp;</span>
738
- <span class="cline-any cline-neutral">&nbsp;</span>
739
- <span class="cline-any cline-neutral">&nbsp;</span>
740
- <span class="cline-any cline-no">&nbsp;</span>
741
- <span class="cline-any cline-no">&nbsp;</span>
742
- <span class="cline-any cline-no">&nbsp;</span>
743
- <span class="cline-any cline-neutral">&nbsp;</span>
744
- <span class="cline-any cline-neutral">&nbsp;</span>
745
- <span class="cline-any cline-neutral">&nbsp;</span>
746
- <span class="cline-any cline-neutral">&nbsp;</span>
747
- <span class="cline-any cline-neutral">&nbsp;</span>
748
- <span class="cline-any cline-neutral">&nbsp;</span>
749
- <span class="cline-any cline-neutral">&nbsp;</span>
750
- <span class="cline-any cline-no">&nbsp;</span>
751
- <span class="cline-any cline-neutral">&nbsp;</span>
752
- <span class="cline-any cline-neutral">&nbsp;</span>
753
- <span class="cline-any cline-no">&nbsp;</span>
754
- <span class="cline-any cline-no">&nbsp;</span>
755
- <span class="cline-any cline-no">&nbsp;</span>
756
- <span class="cline-any cline-no">&nbsp;</span>
757
- <span class="cline-any cline-no">&nbsp;</span>
758
- <span class="cline-any cline-neutral">&nbsp;</span>
759
- <span class="cline-any cline-no">&nbsp;</span>
760
- <span class="cline-any cline-no">&nbsp;</span>
761
- <span class="cline-any cline-no">&nbsp;</span>
762
- <span class="cline-any cline-neutral">&nbsp;</span>
763
- <span class="cline-any cline-no">&nbsp;</span>
764
- <span class="cline-any cline-neutral">&nbsp;</span>
765
- <span class="cline-any cline-neutral">&nbsp;</span>
766
- <span class="cline-any cline-no">&nbsp;</span>
767
- <span class="cline-any cline-no">&nbsp;</span>
768
- <span class="cline-any cline-neutral">&nbsp;</span>
769
- <span class="cline-any cline-no">&nbsp;</span>
770
- <span class="cline-any cline-no">&nbsp;</span>
771
- <span class="cline-any cline-no">&nbsp;</span>
772
- <span class="cline-any cline-neutral">&nbsp;</span>
773
- <span class="cline-any cline-no">&nbsp;</span>
774
- <span class="cline-any cline-neutral">&nbsp;</span>
775
- <span class="cline-any cline-no">&nbsp;</span>
776
- <span class="cline-any cline-no">&nbsp;</span>
777
- <span class="cline-any cline-no">&nbsp;</span>
778
- <span class="cline-any cline-neutral">&nbsp;</span>
779
- <span class="cline-any cline-no">&nbsp;</span>
780
- <span class="cline-any cline-neutral">&nbsp;</span>
781
- <span class="cline-any cline-neutral">&nbsp;</span>
782
- <span class="cline-any cline-no">&nbsp;</span>
783
- <span class="cline-any cline-no">&nbsp;</span>
784
- <span class="cline-any cline-no">&nbsp;</span>
785
- <span class="cline-any cline-no">&nbsp;</span>
786
- <span class="cline-any cline-neutral">&nbsp;</span>
787
- <span class="cline-any cline-no">&nbsp;</span>
788
- <span class="cline-any cline-neutral">&nbsp;</span>
789
- <span class="cline-any cline-no">&nbsp;</span>
790
- <span class="cline-any cline-neutral">&nbsp;</span>
791
- <span class="cline-any cline-neutral">&nbsp;</span>
792
- <span class="cline-any cline-neutral">&nbsp;</span>
793
- <span class="cline-any cline-neutral">&nbsp;</span>
794
- <span class="cline-any cline-no">&nbsp;</span>
795
- <span class="cline-any cline-neutral">&nbsp;</span>
796
- <span class="cline-any cline-no">&nbsp;</span>
797
- <span class="cline-any cline-neutral">&nbsp;</span>
798
- <span class="cline-any cline-neutral">&nbsp;</span>
799
- <span class="cline-any cline-no">&nbsp;</span>
800
- <span class="cline-any cline-neutral">&nbsp;</span>
801
- <span class="cline-any cline-neutral">&nbsp;</span>
802
- <span class="cline-any cline-neutral">&nbsp;</span>
803
- <span class="cline-any cline-neutral">&nbsp;</span>
804
- <span class="cline-any cline-neutral">&nbsp;</span>
805
- <span class="cline-any cline-neutral">&nbsp;</span>
806
- <span class="cline-any cline-neutral">&nbsp;</span>
807
- <span class="cline-any cline-neutral">&nbsp;</span>
808
- <span class="cline-any cline-neutral">&nbsp;</span>
809
- <span class="cline-any cline-no">&nbsp;</span>
810
- <span class="cline-any cline-no">&nbsp;</span>
811
- <span class="cline-any cline-no">&nbsp;</span>
812
- <span class="cline-any cline-no">&nbsp;</span>
813
- <span class="cline-any cline-no">&nbsp;</span>
814
- <span class="cline-any cline-no">&nbsp;</span>
815
- <span class="cline-any cline-neutral">&nbsp;</span>
816
- <span class="cline-any cline-neutral">&nbsp;</span>
817
- <span class="cline-any cline-no">&nbsp;</span>
818
- <span class="cline-any cline-no">&nbsp;</span>
819
- <span class="cline-any cline-no">&nbsp;</span>
820
- <span class="cline-any cline-no">&nbsp;</span>
821
- <span class="cline-any cline-neutral">&nbsp;</span>
822
- <span class="cline-any cline-neutral">&nbsp;</span>
823
- <span class="cline-any cline-neutral">&nbsp;</span>
824
- <span class="cline-any cline-no">&nbsp;</span>
825
- <span class="cline-any cline-neutral">&nbsp;</span>
826
- <span class="cline-any cline-no">&nbsp;</span>
827
- <span class="cline-any cline-neutral">&nbsp;</span>
828
- <span class="cline-any cline-neutral">&nbsp;</span>
829
- <span class="cline-any cline-no">&nbsp;</span>
830
- <span class="cline-any cline-neutral">&nbsp;</span>
831
- <span class="cline-any cline-neutral">&nbsp;</span>
832
- <span class="cline-any cline-neutral">&nbsp;</span>
833
- <span class="cline-any cline-neutral">&nbsp;</span>
834
- <span class="cline-any cline-neutral">&nbsp;</span>
835
- <span class="cline-any cline-no">&nbsp;</span>
836
- <span class="cline-any cline-no">&nbsp;</span>
837
- <span class="cline-any cline-neutral">&nbsp;</span>
838
- <span class="cline-any cline-neutral">&nbsp;</span>
839
- <span class="cline-any cline-no">&nbsp;</span>
840
- <span class="cline-any cline-neutral">&nbsp;</span>
841
- <span class="cline-any cline-no">&nbsp;</span>
842
- <span class="cline-any cline-no">&nbsp;</span>
843
- <span class="cline-any cline-no">&nbsp;</span>
844
- <span class="cline-any cline-neutral">&nbsp;</span>
845
- <span class="cline-any cline-neutral">&nbsp;</span>
846
- <span class="cline-any cline-neutral">&nbsp;</span>
847
- <span class="cline-any cline-no">&nbsp;</span>
848
- <span class="cline-any cline-no">&nbsp;</span>
849
- <span class="cline-any cline-neutral">&nbsp;</span>
850
- <span class="cline-any cline-neutral">&nbsp;</span>
851
- <span class="cline-any cline-neutral">&nbsp;</span>
852
- <span class="cline-any cline-neutral">&nbsp;</span>
853
- <span class="cline-any cline-neutral">&nbsp;</span>
854
- <span class="cline-any cline-yes">1x</span>
855
- <span class="cline-any cline-no">&nbsp;</span>
856
- <span class="cline-any cline-neutral">&nbsp;</span>
857
- <span class="cline-any cline-neutral">&nbsp;</span>
858
- <span class="cline-any cline-neutral">&nbsp;</span>
859
- <span class="cline-any cline-no">&nbsp;</span>
860
- <span class="cline-any cline-no">&nbsp;</span>
861
- <span class="cline-any cline-no">&nbsp;</span>
862
- <span class="cline-any cline-no">&nbsp;</span>
863
- <span class="cline-any cline-neutral">&nbsp;</span>
864
- <span class="cline-any cline-no">&nbsp;</span>
865
- <span class="cline-any cline-neutral">&nbsp;</span>
866
- <span class="cline-any cline-neutral">&nbsp;</span>
867
- <span class="cline-any cline-no">&nbsp;</span>
868
- <span class="cline-any cline-neutral">&nbsp;</span>
869
- <span class="cline-any cline-neutral">&nbsp;</span>
870
- <span class="cline-any cline-no">&nbsp;</span>
871
- <span class="cline-any cline-neutral">&nbsp;</span>
872
- <span class="cline-any cline-neutral">&nbsp;</span>
873
- <span class="cline-any cline-neutral">&nbsp;</span>
874
- <span class="cline-any cline-neutral">&nbsp;</span>
875
- <span class="cline-any cline-neutral">&nbsp;</span>
876
- <span class="cline-any cline-no">&nbsp;</span>
877
- <span class="cline-any cline-no">&nbsp;</span>
878
- <span class="cline-any cline-neutral">&nbsp;</span>
879
- <span class="cline-any cline-no">&nbsp;</span>
880
- <span class="cline-any cline-no">&nbsp;</span>
881
- <span class="cline-any cline-no">&nbsp;</span>
882
- <span class="cline-any cline-neutral">&nbsp;</span>
883
- <span class="cline-any cline-no">&nbsp;</span>
884
- <span class="cline-any cline-neutral">&nbsp;</span>
885
- <span class="cline-any cline-no">&nbsp;</span>
886
- <span class="cline-any cline-no">&nbsp;</span>
887
- <span class="cline-any cline-no">&nbsp;</span>
888
- <span class="cline-any cline-neutral">&nbsp;</span>
889
- <span class="cline-any cline-neutral">&nbsp;</span>
890
- <span class="cline-any cline-no">&nbsp;</span>
891
- <span class="cline-any cline-no">&nbsp;</span>
892
- <span class="cline-any cline-no">&nbsp;</span>
893
- <span class="cline-any cline-no">&nbsp;</span>
894
- <span class="cline-any cline-no">&nbsp;</span>
895
- <span class="cline-any cline-no">&nbsp;</span>
896
- <span class="cline-any cline-neutral">&nbsp;</span>
897
- <span class="cline-any cline-neutral">&nbsp;</span>
898
- <span class="cline-any cline-no">&nbsp;</span>
899
- <span class="cline-any cline-neutral">&nbsp;</span>
900
- <span class="cline-any cline-neutral">&nbsp;</span>
901
- <span class="cline-any cline-neutral">&nbsp;</span>
902
- <span class="cline-any cline-neutral">&nbsp;</span>
903
- <span class="cline-any cline-no">&nbsp;</span>
904
- <span class="cline-any cline-no">&nbsp;</span>
905
- <span class="cline-any cline-neutral">&nbsp;</span>
906
- <span class="cline-any cline-neutral">&nbsp;</span>
907
- <span class="cline-any cline-no">&nbsp;</span>
908
- <span class="cline-any cline-neutral">&nbsp;</span>
909
- <span class="cline-any cline-neutral">&nbsp;</span>
910
- <span class="cline-any cline-neutral">&nbsp;</span>
911
- <span class="cline-any cline-no">&nbsp;</span>
912
- <span class="cline-any cline-no">&nbsp;</span>
913
- <span class="cline-any cline-no">&nbsp;</span>
914
- <span class="cline-any cline-neutral">&nbsp;</span>
915
- <span class="cline-any cline-no">&nbsp;</span>
916
- <span class="cline-any cline-no">&nbsp;</span>
917
- <span class="cline-any cline-no">&nbsp;</span>
918
- <span class="cline-any cline-no">&nbsp;</span>
919
- <span class="cline-any cline-neutral">&nbsp;</span>
920
- <span class="cline-any cline-neutral">&nbsp;</span>
921
- <span class="cline-any cline-no">&nbsp;</span>
922
- <span class="cline-any cline-no">&nbsp;</span>
923
- <span class="cline-any cline-no">&nbsp;</span>
924
- <span class="cline-any cline-neutral">&nbsp;</span>
925
- <span class="cline-any cline-no">&nbsp;</span>
926
- <span class="cline-any cline-no">&nbsp;</span>
927
- <span class="cline-any cline-no">&nbsp;</span>
928
- <span class="cline-any cline-neutral">&nbsp;</span>
929
- <span class="cline-any cline-neutral">&nbsp;</span>
930
- <span class="cline-any cline-no">&nbsp;</span>
931
- <span class="cline-any cline-neutral">&nbsp;</span>
932
- <span class="cline-any cline-no">&nbsp;</span>
933
- <span class="cline-any cline-no">&nbsp;</span>
934
- <span class="cline-any cline-no">&nbsp;</span>
935
- <span class="cline-any cline-no">&nbsp;</span>
936
- <span class="cline-any cline-neutral">&nbsp;</span>
937
- <span class="cline-any cline-no">&nbsp;</span>
938
- <span class="cline-any cline-neutral">&nbsp;</span>
939
- <span class="cline-any cline-no">&nbsp;</span>
940
- <span class="cline-any cline-no">&nbsp;</span>
941
- <span class="cline-any cline-no">&nbsp;</span>
942
- <span class="cline-any cline-no">&nbsp;</span>
943
- <span class="cline-any cline-no">&nbsp;</span>
944
- <span class="cline-any cline-neutral">&nbsp;</span>
945
- <span class="cline-any cline-neutral">&nbsp;</span>
946
- <span class="cline-any cline-no">&nbsp;</span>
947
- <span class="cline-any cline-neutral">&nbsp;</span>
948
- <span class="cline-any cline-no">&nbsp;</span>
949
- <span class="cline-any cline-no">&nbsp;</span>
950
- <span class="cline-any cline-no">&nbsp;</span>
951
- <span class="cline-any cline-neutral">&nbsp;</span>
952
- <span class="cline-any cline-neutral">&nbsp;</span>
953
- <span class="cline-any cline-no">&nbsp;</span>
954
- <span class="cline-any cline-no">&nbsp;</span>
955
- <span class="cline-any cline-no">&nbsp;</span>
956
- <span class="cline-any cline-no">&nbsp;</span>
957
- <span class="cline-any cline-neutral">&nbsp;</span>
958
- <span class="cline-any cline-neutral">&nbsp;</span>
959
- <span class="cline-any cline-neutral">&nbsp;</span>
960
- <span class="cline-any cline-no">&nbsp;</span>
961
- <span class="cline-any cline-neutral">&nbsp;</span>
962
- <span class="cline-any cline-neutral">&nbsp;</span>
963
- <span class="cline-any cline-no">&nbsp;</span>
964
- <span class="cline-any cline-no">&nbsp;</span>
965
- <span class="cline-any cline-no">&nbsp;</span>
966
- <span class="cline-any cline-neutral">&nbsp;</span>
967
- <span class="cline-any cline-no">&nbsp;</span>
968
- <span class="cline-any cline-neutral">&nbsp;</span>
969
- <span class="cline-any cline-neutral">&nbsp;</span>
970
- <span class="cline-any cline-no">&nbsp;</span>
971
- <span class="cline-any cline-no">&nbsp;</span>
972
- <span class="cline-any cline-no">&nbsp;</span>
973
- <span class="cline-any cline-no">&nbsp;</span>
974
- <span class="cline-any cline-no">&nbsp;</span>
975
- <span class="cline-any cline-no">&nbsp;</span>
976
- <span class="cline-any cline-no">&nbsp;</span>
977
- <span class="cline-any cline-neutral">&nbsp;</span>
978
- <span class="cline-any cline-neutral">&nbsp;</span>
979
- <span class="cline-any cline-neutral">&nbsp;</span>
980
- <span class="cline-any cline-neutral">&nbsp;</span>
981
- <span class="cline-any cline-no">&nbsp;</span>
982
- <span class="cline-any cline-neutral">&nbsp;</span>
983
- <span class="cline-any cline-neutral">&nbsp;</span>
984
- <span class="cline-any cline-neutral">&nbsp;</span>
985
- <span class="cline-any cline-neutral">&nbsp;</span>
986
- <span class="cline-any cline-no">&nbsp;</span>
987
- <span class="cline-any cline-neutral">&nbsp;</span>
988
- <span class="cline-any cline-neutral">&nbsp;</span>
989
- <span class="cline-any cline-neutral">&nbsp;</span>
990
- <span class="cline-any cline-neutral">&nbsp;</span>
991
- <span class="cline-any cline-no">&nbsp;</span>
992
- <span class="cline-any cline-no">&nbsp;</span>
993
- <span class="cline-any cline-neutral">&nbsp;</span>
994
- <span class="cline-any cline-neutral">&nbsp;</span>
995
- <span class="cline-any cline-no">&nbsp;</span>
996
- <span class="cline-any cline-no">&nbsp;</span>
997
- <span class="cline-any cline-neutral">&nbsp;</span>
998
- <span class="cline-any cline-no">&nbsp;</span>
999
- <span class="cline-any cline-neutral">&nbsp;</span>
1000
- <span class="cline-any cline-neutral">&nbsp;</span>
1001
- <span class="cline-any cline-no">&nbsp;</span>
1002
- <span class="cline-any cline-no">&nbsp;</span>
1003
- <span class="cline-any cline-no">&nbsp;</span>
1004
- <span class="cline-any cline-no">&nbsp;</span>
1005
- <span class="cline-any cline-no">&nbsp;</span>
1006
- <span class="cline-any cline-no">&nbsp;</span>
1007
- <span class="cline-any cline-no">&nbsp;</span>
1008
- <span class="cline-any cline-no">&nbsp;</span>
1009
- <span class="cline-any cline-neutral">&nbsp;</span>
1010
- <span class="cline-any cline-neutral">&nbsp;</span>
1011
- <span class="cline-any cline-neutral">&nbsp;</span>
1012
- <span class="cline-any cline-neutral">&nbsp;</span>
1013
- <span class="cline-any cline-no">&nbsp;</span>
1014
- <span class="cline-any cline-no">&nbsp;</span>
1015
- <span class="cline-any cline-neutral">&nbsp;</span>
1016
- <span class="cline-any cline-neutral">&nbsp;</span>
1017
- <span class="cline-any cline-no">&nbsp;</span>
1018
- <span class="cline-any cline-no">&nbsp;</span>
1019
- <span class="cline-any cline-neutral">&nbsp;</span>
1020
- <span class="cline-any cline-no">&nbsp;</span>
1021
- <span class="cline-any cline-neutral">&nbsp;</span>
1022
- <span class="cline-any cline-neutral">&nbsp;</span>
1023
- <span class="cline-any cline-no">&nbsp;</span>
1024
- <span class="cline-any cline-no">&nbsp;</span>
1025
- <span class="cline-any cline-no">&nbsp;</span>
1026
- <span class="cline-any cline-no">&nbsp;</span>
1027
- <span class="cline-any cline-no">&nbsp;</span>
1028
- <span class="cline-any cline-no">&nbsp;</span>
1029
- <span class="cline-any cline-no">&nbsp;</span>
1030
- <span class="cline-any cline-neutral">&nbsp;</span>
1031
- <span class="cline-any cline-neutral">&nbsp;</span>
1032
- <span class="cline-any cline-neutral">&nbsp;</span>
1033
- <span class="cline-any cline-no">&nbsp;</span>
1034
- <span class="cline-any cline-no">&nbsp;</span>
1035
- <span class="cline-any cline-no">&nbsp;</span>
1036
- <span class="cline-any cline-neutral">&nbsp;</span>
1037
- <span class="cline-any cline-neutral">&nbsp;</span>
1038
- <span class="cline-any cline-neutral">&nbsp;</span>
1039
- <span class="cline-any cline-neutral">&nbsp;</span>
1040
- <span class="cline-any cline-no">&nbsp;</span>
1041
- <span class="cline-any cline-no">&nbsp;</span>
1042
- <span class="cline-any cline-neutral">&nbsp;</span>
1043
- <span class="cline-any cline-neutral">&nbsp;</span>
1044
- <span class="cline-any cline-neutral">&nbsp;</span>
1045
- <span class="cline-any cline-no">&nbsp;</span>
1046
- <span class="cline-any cline-no">&nbsp;</span>
1047
- <span class="cline-any cline-neutral">&nbsp;</span>
1048
- <span class="cline-any cline-no">&nbsp;</span>
1049
- <span class="cline-any cline-no">&nbsp;</span>
1050
- <span class="cline-any cline-no">&nbsp;</span>
1051
- <span class="cline-any cline-neutral">&nbsp;</span>
1052
- <span class="cline-any cline-neutral">&nbsp;</span>
1053
- <span class="cline-any cline-no">&nbsp;</span>
1054
- <span class="cline-any cline-no">&nbsp;</span>
1055
- <span class="cline-any cline-no">&nbsp;</span>
1056
- <span class="cline-any cline-neutral">&nbsp;</span>
1057
- <span class="cline-any cline-neutral">&nbsp;</span>
1058
- <span class="cline-any cline-neutral">&nbsp;</span>
1059
- <span class="cline-any cline-no">&nbsp;</span>
1060
- <span class="cline-any cline-no">&nbsp;</span>
1061
- <span class="cline-any cline-no">&nbsp;</span>
1062
- <span class="cline-any cline-neutral">&nbsp;</span>
1063
- <span class="cline-any cline-neutral">&nbsp;</span>
1064
- <span class="cline-any cline-no">&nbsp;</span>
1065
- <span class="cline-any cline-no">&nbsp;</span>
1066
- <span class="cline-any cline-no">&nbsp;</span>
1067
- <span class="cline-any cline-no">&nbsp;</span>
1068
- <span class="cline-any cline-neutral">&nbsp;</span>
1069
- <span class="cline-any cline-no">&nbsp;</span>
1070
- <span class="cline-any cline-neutral">&nbsp;</span>
1071
- <span class="cline-any cline-neutral">&nbsp;</span>
1072
- <span class="cline-any cline-neutral">&nbsp;</span>
1073
- <span class="cline-any cline-no">&nbsp;</span>
1074
- <span class="cline-any cline-no">&nbsp;</span>
1075
- <span class="cline-any cline-neutral">&nbsp;</span>
1076
- <span class="cline-any cline-no">&nbsp;</span>
1077
- <span class="cline-any cline-neutral">&nbsp;</span>
1078
- <span class="cline-any cline-neutral">&nbsp;</span>
1079
- <span class="cline-any cline-neutral">&nbsp;</span>
1080
- <span class="cline-any cline-no">&nbsp;</span>
1081
- <span class="cline-any cline-neutral">&nbsp;</span>
1082
- <span class="cline-any cline-no">&nbsp;</span>
1083
- <span class="cline-any cline-neutral">&nbsp;</span>
1084
- <span class="cline-any cline-neutral">&nbsp;</span>
1085
- <span class="cline-any cline-neutral">&nbsp;</span>
1086
- <span class="cline-any cline-neutral">&nbsp;</span>
1087
- <span class="cline-any cline-neutral">&nbsp;</span>
1088
- <span class="cline-any cline-neutral">&nbsp;</span>
1089
- <span class="cline-any cline-yes">1x</span>
1090
- <span class="cline-any cline-no">&nbsp;</span>
1091
- <span class="cline-any cline-neutral">&nbsp;</span>
1092
- <span class="cline-any cline-neutral">&nbsp;</span>
1093
- <span class="cline-any cline-neutral">&nbsp;</span>
1094
- <span class="cline-any cline-no">&nbsp;</span>
1095
- <span class="cline-any cline-no">&nbsp;</span>
1096
- <span class="cline-any cline-no">&nbsp;</span>
1097
- <span class="cline-any cline-no">&nbsp;</span>
1098
- <span class="cline-any cline-neutral">&nbsp;</span>
1099
- <span class="cline-any cline-no">&nbsp;</span>
1100
- <span class="cline-any cline-neutral">&nbsp;</span>
1101
- <span class="cline-any cline-neutral">&nbsp;</span>
1102
- <span class="cline-any cline-neutral">&nbsp;</span>
1103
- <span class="cline-any cline-neutral">&nbsp;</span>
1104
- <span class="cline-any cline-neutral">&nbsp;</span>
1105
- <span class="cline-any cline-neutral">&nbsp;</span>
1106
- <span class="cline-any cline-yes">1x</span>
1107
- <span class="cline-any cline-no">&nbsp;</span>
1108
- <span class="cline-any cline-neutral">&nbsp;</span>
1109
- <span class="cline-any cline-neutral">&nbsp;</span>
1110
- <span class="cline-any cline-neutral">&nbsp;</span>
1111
- <span class="cline-any cline-no">&nbsp;</span>
1112
- <span class="cline-any cline-no">&nbsp;</span>
1113
- <span class="cline-any cline-no">&nbsp;</span>
1114
- <span class="cline-any cline-neutral">&nbsp;</span>
1115
- <span class="cline-any cline-no">&nbsp;</span>
1116
- <span class="cline-any cline-neutral">&nbsp;</span>
1117
- <span class="cline-any cline-neutral">&nbsp;</span>
1118
- <span class="cline-any cline-neutral">&nbsp;</span>
1119
- <span class="cline-any cline-neutral">&nbsp;</span>
1120
- <span class="cline-any cline-no">&nbsp;</span>
1121
- <span class="cline-any cline-no">&nbsp;</span>
1122
- <span class="cline-any cline-neutral">&nbsp;</span>
1123
- <span class="cline-any cline-no">&nbsp;</span>
1124
- <span class="cline-any cline-neutral">&nbsp;</span>
1125
- <span class="cline-any cline-neutral">&nbsp;</span>
1126
- <span class="cline-any cline-neutral">&nbsp;</span>
1127
- <span class="cline-any cline-neutral">&nbsp;</span>
1128
- <span class="cline-any cline-neutral">&nbsp;</span>
1129
- <span class="cline-any cline-yes">1x</span>
1130
- <span class="cline-any cline-no">&nbsp;</span>
1131
- <span class="cline-any cline-no">&nbsp;</span>
1132
- <span class="cline-any cline-no">&nbsp;</span>
1133
- <span class="cline-any cline-no">&nbsp;</span>
1134
- <span class="cline-any cline-neutral">&nbsp;</span>
1135
- <span class="cline-any cline-no">&nbsp;</span>
1136
- <span class="cline-any cline-no">&nbsp;</span>
1137
- <span class="cline-any cline-no">&nbsp;</span>
1138
- <span class="cline-any cline-no">&nbsp;</span>
1139
- <span class="cline-any cline-no">&nbsp;</span>
1140
- <span class="cline-any cline-no">&nbsp;</span>
1141
- <span class="cline-any cline-no">&nbsp;</span>
1142
- <span class="cline-any cline-neutral">&nbsp;</span>
1143
- <span class="cline-any cline-neutral">&nbsp;</span>
1144
- <span class="cline-any cline-no">&nbsp;</span>
1145
- <span class="cline-any cline-no">&nbsp;</span>
1146
- <span class="cline-any cline-neutral">&nbsp;</span>
1147
- <span class="cline-any cline-no">&nbsp;</span>
1148
- <span class="cline-any cline-neutral">&nbsp;</span>
1149
- <span class="cline-any cline-no">&nbsp;</span>
1150
- <span class="cline-any cline-no">&nbsp;</span>
1151
- <span class="cline-any cline-no">&nbsp;</span>
1152
- <span class="cline-any cline-neutral">&nbsp;</span>
1153
- <span class="cline-any cline-no">&nbsp;</span>
1154
- <span class="cline-any cline-no">&nbsp;</span>
1155
- <span class="cline-any cline-no">&nbsp;</span>
1156
- <span class="cline-any cline-no">&nbsp;</span>
1157
- <span class="cline-any cline-no">&nbsp;</span>
1158
- <span class="cline-any cline-no">&nbsp;</span>
1159
- <span class="cline-any cline-no">&nbsp;</span>
1160
- <span class="cline-any cline-no">&nbsp;</span>
1161
- <span class="cline-any cline-no">&nbsp;</span>
1162
- <span class="cline-any cline-no">&nbsp;</span>
1163
- <span class="cline-any cline-neutral">&nbsp;</span>
1164
- <span class="cline-any cline-no">&nbsp;</span>
1165
- <span class="cline-any cline-neutral">&nbsp;</span>
1166
- <span class="cline-any cline-neutral">&nbsp;</span>
1167
- <span class="cline-any cline-no">&nbsp;</span>
1168
- <span class="cline-any cline-no">&nbsp;</span>
1169
- <span class="cline-any cline-no">&nbsp;</span>
1170
- <span class="cline-any cline-no">&nbsp;</span>
1171
- <span class="cline-any cline-no">&nbsp;</span>
1172
- <span class="cline-any cline-no">&nbsp;</span>
1173
- <span class="cline-any cline-no">&nbsp;</span>
1174
- <span class="cline-any cline-no">&nbsp;</span>
1175
- <span class="cline-any cline-no">&nbsp;</span>
1176
- <span class="cline-any cline-neutral">&nbsp;</span>
1177
- <span class="cline-any cline-no">&nbsp;</span>
1178
- <span class="cline-any cline-neutral">&nbsp;</span>
1179
- <span class="cline-any cline-no">&nbsp;</span>
1180
- <span class="cline-any cline-neutral">&nbsp;</span>
1181
- <span class="cline-any cline-neutral">&nbsp;</span>
1182
- <span class="cline-any cline-neutral">&nbsp;</span>
1183
- <span class="cline-any cline-yes">1x</span>
1184
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import { FileNode, NaslServer } from './naslServer';
1185
- import * as tsProtocol from 'typescript/lib/protocol';
1186
- import { MinRange } from './translator';
1187
- import {
1188
- BaseNode,
1189
- CallLogic,
1190
- Destination,
1191
- EnumItem,
1192
- Interface,
1193
- Logic,
1194
- Param,
1195
- Process,
1196
- Role,
1197
- Structure,
1198
- View,
1199
- ViewElement,
1200
- Frontend,
1201
- TypeAnnotation,
1202
- StructureProperty,
1203
- App,
1204
- AuthInterface,
1205
- CallAuthInterface,
1206
- Connector,
1207
- MsgTriggerLauncher,
1208
- Connection,
1209
- } from '../concepts';
1210
- import { EventPayload, invokeCommand, registerCommand } from '../common';
1211
- import { getNodeByNodeCallee, getNaslNodeByNodeCallee } from '../automate/engine/utils';
1212
- &nbsp;
1213
- import { extendSentryMonitorNaslNode } from '../sentry';
1214
- &nbsp;
1215
- interface SetNameNode extends BaseNode {
1216
- setName(name: string): any;
1217
- [propname: string]: any;
1218
- }
1219
- &nbsp;
1220
- BaseNode.prototype.findReadOnlyLogicUsage = <span class="fstat-no" title="function not covered" >function () {</span>
1221
- let targetNode;
1222
- &nbsp;
1223
- <span class="cstat-no" title="statement not covered" > if (this.parentNode.concept === 'Namespace' || this.parentNode.parentNode.concept === 'Namespace') {</span>
1224
- const sourceMap =
1225
- <span class="cstat-no" title="statement not covered" > this.parentNode.concept === 'Namespace' ? this.parentNode.parentNode.sourceMap : this.parentNode.parentNode.parentNode.sourceMap;</span>
1226
- <span class="cstat-no" title="statement not covered" > for (const item of sourceMap) {</span>
1227
- const logic = <span class="cstat-no" title="statement not covered" >item[0] as Logic;</span>
1228
- <span class="cstat-no" title="statement not covered" > if (this.concept === 'Logic') {</span>
1229
- <span class="cstat-no" title="statement not covered" > if (logic instanceof Logic)</span>
1230
- <span class="cstat-no" title="statement not covered" > if (logic.calleewholeKey === (this as Logic).calleewholeKey) {</span>
1231
- <span class="cstat-no" title="statement not covered" > targetNode = logic;</span>
1232
- <span class="cstat-no" title="statement not covered" > break;</span>
1233
- }
1234
- } else {
1235
- <span class="cstat-no" title="statement not covered" > if (logic instanceof Logic)</span>
1236
- <span class="cstat-no" title="statement not covered" > if (logic.calleewholeKey === (this.parentNode as Logic).calleewholeKey) {</span>
1237
- <span class="cstat-no" title="statement not covered" > targetNode = logic;</span>
1238
- <span class="cstat-no" title="statement not covered" > break;</span>
1239
- }
1240
- }
1241
- }
1242
- } else <span class="cstat-no" title="statement not covered" >if (this.parentNode.concept === 'Module') {</span>
1243
- // 父级是模块的还是用它本身去查找引用
1244
- <span class="cstat-no" title="statement not covered" > targetNode = this;</span>
1245
- } else {
1246
- const sourceMap = <span class="cstat-no" title="statement not covered" >this.parentNode.sourceMap;</span>
1247
- <span class="cstat-no" title="statement not covered" > for (const item of sourceMap) {</span>
1248
- const logic = <span class="cstat-no" title="statement not covered" >item[0] as Logic;</span>
1249
- <span class="cstat-no" title="statement not covered" > if (logic.calleewholeKey &amp;&amp; logic.calleewholeKey === (this as Logic).calleewholeKey) {</span>
1250
- <span class="cstat-no" title="statement not covered" > targetNode = logic;</span>
1251
- <span class="cstat-no" title="statement not covered" > break;</span>
1252
- }
1253
- }
1254
- <span class="cstat-no" title="statement not covered" > if (!targetNode)</span>
1255
- <span class="cstat-no" title="statement not covered" > for (const item of sourceMap) {</span>
1256
- const logic = <span class="cstat-no" title="statement not covered" >item[0] as Logic;</span>
1257
- <span class="cstat-no" title="statement not covered" > if (logic.getNamespace &amp;&amp; logic.getNamespace() === (this as Logic).getNamespace()) {</span>
1258
- <span class="cstat-no" title="statement not covered" > targetNode = logic;</span>
1259
- <span class="cstat-no" title="statement not covered" > break;</span>
1260
- }
1261
- }
1262
- }
1263
- &nbsp;
1264
- <span class="cstat-no" title="statement not covered" > try {</span>
1265
- const app = <span class="cstat-no" title="statement not covered" >this.getAncestor('App');</span>
1266
- const naslServer = (<span class="cstat-no" title="statement not covered" >app as any).naslServer as NaslServer;</span>
1267
- <span class="cstat-no" title="statement not covered" > return naslServer.findReferences(targetNode || this);</span>
1268
- } catch (err) {
1269
- <span class="cstat-no" title="statement not covered" > console.log(err);</span>
1270
- }
1271
- };
1272
- // 查找引用
1273
- BaseNode.prototype.findUsage = function <span class="fstat-no" title="function not covered" >findUsage(</span>) {
1274
- <span class="cstat-no" title="statement not covered" > try {</span>
1275
- const app = <span class="cstat-no" title="statement not covered" >this.getAncestor('App');</span>
1276
- const naslServer = (<span class="cstat-no" title="statement not covered" >app as any).naslServer as NaslServer;</span>
1277
- <span class="cstat-no" title="statement not covered" > return naslServer.findReferences(this);</span>
1278
- } catch (err) {
1279
- <span class="cstat-no" title="statement not covered" > console.log(err);</span>
1280
- }
1281
- };
1282
- &nbsp;
1283
- // 通过当前节点,查找被引用的节点
1284
- BaseNode.prototype.nodeFindRefNodes = function <span class="fstat-no" title="function not covered" >nodeFindRefNodes(</span>) {
1285
- <span class="cstat-no" title="statement not covered" > try {</span>
1286
- const app = <span class="cstat-no" title="statement not covered" >this.getAncestor('App');</span>
1287
- const naslServer = (<span class="cstat-no" title="statement not covered" >app as any).naslServer as NaslServer;</span>
1288
- <span class="cstat-no" title="statement not covered" > return naslServer.nodeFindRefNodes(this);</span>
1289
- } catch (err) {
1290
- <span class="cstat-no" title="statement not covered" > console.log(err);</span>
1291
- }
1292
- };
1293
- &nbsp;
1294
- BaseNode.prototype.changeName = async function <span class="fstat-no" title="function not covered" >changeName(</span>newValue: string, updateAll: boolean = <span class="branch-0 cbranch-no" title="branch not covered" >false)</span> {
1295
- <span class="cstat-no" title="statement not covered" > try {</span>
1296
- /**
1297
- * 查找这个节点是不是有依赖
1298
- */
1299
- const app = <span class="cstat-no" title="statement not covered" >this.getAncestor('App');</span>
1300
- const naslServer = (<span class="cstat-no" title="statement not covered" >app as any).naslServer as NaslServer;</span>
1301
- const refsList = <span class="cstat-no" title="statement not covered" >await naslServer._isHaveRef(this);</span>
1302
- // 是不是有引用有的话,就返回
1303
- /**
1304
- * @param this 当前重命名的节点
1305
- * @param newValue 传递过来的新值,给MemberExpression用的比较特殊
1306
- * 而且,这个新值不一定会用到,MemberExpression在批量更新的时候,可以取到新的value, 这里需要位置信息防止 a.a.a.a 中的一个a发生修改
1307
- * @returns 找到的引用
1308
- */
1309
- const res = <span class="cstat-no" title="statement not covered" >naslServer._renamePrepare(this, refsList, newValue);</span>
1310
- // 针对外部接口的鉴权方式,sourceMap 定位仅仅 定位到 CallAuthInterfacer
1311
- // 因此这里需要保存this来做上下文判断
1312
- const _this = <span class="cstat-no" title="statement not covered" >this;</span>
1313
- <span class="cstat-no" title="statement not covered" > if (res.length &lt;= 1) {</span>
1314
- <span class="cstat-no" title="statement not covered" > if (this.concept === 'enumItem') {</span>
1315
- (<span class="cstat-no" title="statement not covered" >this as any).setValue(newValue);</span>
1316
- } else (<span class="cstat-no" title="statement not covered" >this as SetNameNode).setName(newValue);</span>
1317
- } else {
1318
- const callback = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >(v</span>alue: boolean) =&gt; {</span>
1319
- <span class="cstat-no" title="statement not covered" > if (value) {</span>
1320
- const App = <span class="cstat-no" title="statement not covered" >this.rootNode;</span>
1321
- // 收集修改
1322
- <span class="cstat-no" title="statement not covered" > App.emit('collect:start', {</span>
1323
- actionMsg: '重命名并更新引用',
1324
- });
1325
- <span class="cstat-no" title="statement not covered" > res.forEach(<span class="fstat-no" title="function not covered" >(i</span>tem) =&gt; {</span>
1326
- const itemNode = <span class="cstat-no" title="statement not covered" >item.node as SetNameNode;</span>
1327
- // MsgTriggerLauncher 比较特殊,实际更名的应该为成员表达式
1328
- <span class="cstat-no" title="statement not covered" > if (itemNode instanceof MsgTriggerLauncher) {</span>
1329
- <span class="cstat-no" title="statement not covered" > itemNode.callBackLogic.setName(newValue);</span>
1330
- <span class="cstat-no" title="statement not covered" > return;</span>
1331
- }
1332
- <span class="cstat-no" title="statement not covered" > if (item.newValue) {</span>
1333
- // 如果有指定的修改方法,就用那个,没有就修改名字
1334
- <span class="cstat-no" title="statement not covered" > if (item.setTypeMethods) {</span>
1335
- const func = <span class="cstat-no" title="statement not covered" >itemNode &amp;&amp; itemNode[item.setTypeMethods];</span>
1336
- <span class="cstat-no" title="statement not covered" > typeof func === 'function' &amp;&amp; itemNode[item.setTypeMethods](item.newValue);</span>
1337
- } else {
1338
- <span class="cstat-no" title="statement not covered" > itemNode.setName?.(item.newValue);</span>
1339
- }
1340
- } else {
1341
- <span class="cstat-no" title="statement not covered" > if (_this.concept === 'AuthLogicForCallInterface' &amp;&amp; itemNode.concept === 'CallAuthInterface') {</span>
1342
- const { calleewholeKey } = <span class="cstat-no" title="statement not covered" >itemNode;</span>
1343
- const targetItf: AuthInterface = <span class="cstat-no" title="statement not covered" >getNodeByNodeCallee(App, calleewholeKey);</span>
1344
- <span class="cstat-no" title="statement not covered" > targetItf.setAuthLogic(newValue);</span>
1345
- // 需要触发更新,否则对应的ts文件不会更新会导致鉴权方式找不到报错
1346
- <span class="cstat-no" title="statement not covered" > itemNode.update({});</span>
1347
- } else {
1348
- <span class="cstat-no" title="statement not covered" > item.setTypeMethods ? itemNode[item.setTypeMethods](newValue) : itemNode.setName?.(newValue);</span>
1349
- }
1350
- }
1351
- });
1352
- // 结束修改 ,批量操作
1353
- <span class="cstat-no" title="statement not covered" > App.emit('collect:end');</span>
1354
- } else {
1355
- (<span class="cstat-no" title="statement not covered" >this as SetNameNode).setName(newValue);</span>
1356
- }
1357
- };
1358
- const confirmParms = <span class="cstat-no" title="statement not covered" >{</span>
1359
- actionType: 'rename',
1360
- node: this,
1361
- newValue,
1362
- };
1363
- /**
1364
- * nasl和vue的通信,回退,要触发vue的watch。
1365
- * 因为如果没修改的话nasl不会修改view,就不会通知到页面改成旧值
1366
- * 先修改之
1367
- */
1368
- const closeCallBack = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >() =</span>&gt; {</span>
1369
- <span class="cstat-no" title="statement not covered" > if (this.concept === 'EnumItem') {</span>
1370
- const oldValue = (<span class="cstat-no" title="statement not covered" >this as EnumItem).value;</span>
1371
- (<span class="cstat-no" title="statement not covered" >this as EnumItem).value = oldValue + ' ';</span>
1372
- <span class="cstat-no" title="statement not covered" > setTimeout(<span class="fstat-no" title="function not covered" >() =</span>&gt; {</span>
1373
- (<span class="cstat-no" title="statement not covered" >this as EnumItem).value = oldValue;</span>
1374
- }, 0);
1375
- } else {
1376
- const oldValue = <span class="cstat-no" title="statement not covered" >this.name;</span>
1377
- <span class="cstat-no" title="statement not covered" > this.name = oldValue + ' ';</span>
1378
- <span class="cstat-no" title="statement not covered" > setTimeout(<span class="fstat-no" title="function not covered" >() =</span>&gt; {</span>
1379
- <span class="cstat-no" title="statement not covered" > this.name = oldValue;</span>
1380
- }, 0);
1381
- }
1382
- };
1383
- <span class="cstat-no" title="statement not covered" > updateAll ? callback(true) : invokeCommand('tsConfirm.open', confirmParms, callback, closeCallBack);</span>
1384
- &nbsp;
1385
- <span class="cstat-no" title="statement not covered" > return;</span>
1386
- }
1387
- } catch (err) {
1388
- <span class="cstat-no" title="statement not covered" > console.log(err);</span>
1389
- }
1390
- };
1391
- &nbsp;
1392
- /** 删除连接器 */
1393
- function <span class="fstat-no" title="function not covered" >delConnection(</span>node: Connection) {
1394
- const app = <span class="cstat-no" title="statement not covered" >node.rootNode as App;</span>
1395
- <span class="cstat-no" title="statement not covered" > app.emit('collect:start', {</span>
1396
- actionMsg: '删除连接器',
1397
- });
1398
- <span class="cstat-no" title="statement not covered" > if (node.connector?.connectorKind === 'kafka') {</span>
1399
- // 删除相关的触发器
1400
- <span class="cstat-no" title="statement not covered" > app.triggerLaunchers.forEach(<span class="fstat-no" title="function not covered" >(l</span>auncher) =&gt; {</span>
1401
- <span class="cstat-no" title="statement not covered" > if ((launcher as MsgTriggerLauncher).calleeConnectionName === node.name) {</span>
1402
- <span class="cstat-no" title="statement not covered" > launcher.delete();</span>
1403
- }
1404
- });
1405
- }
1406
- <span class="cstat-no" title="statement not covered" > node.delete();</span>
1407
- <span class="cstat-no" title="statement not covered" > app.emit('collect:end');</span>
1408
- }
1409
- &nbsp;
1410
- /**
1411
- * 准备删除
1412
- */
1413
- BaseNode.prototype.prepareDelete = async function <span class="fstat-no" title="function not covered" >prepareDelete(</span>cb?: Function) {
1414
- <span class="cstat-no" title="statement not covered" > try {</span>
1415
- /**
1416
- * 查找这个节点是不是有依赖
1417
- */
1418
- const app = <span class="cstat-no" title="statement not covered" >this.getAncestor('App');</span>
1419
- const naslServer = (<span class="cstat-no" title="statement not covered" >app as any).naslServer as NaslServer;</span>
1420
- const node = <span class="cstat-no" title="statement not covered" >this;</span>
1421
- let refsList = <span class="cstat-no" title="statement not covered" >await naslServer._isHaveRef(node);</span>
1422
- // 删除的时候过滤一把组件删除提示
1423
- <span class="cstat-no" title="statement not covered" > refsList = refsList.filter(</span>
1424
- <span class="fstat-no" title="function not covered" > (i</span>tem) =&gt;
1425
- // 因为ui组件本身会多渲染一次,就先过滤一个
1426
- <span class="cstat-no" title="statement not covered" > !item.lineText.includes(': nasl.ui.')</span>
1427
- );
1428
- // delete的弹框展示
1429
- const confirmParms = <span class="cstat-no" title="statement not covered" >{</span>
1430
- actionType: 'delete',
1431
- tipFlag: false,
1432
- node,
1433
- icon: 'warning',
1434
- };
1435
- let callback = <span class="cstat-no" title="statement not covered" >null;</span>
1436
- <span class="cstat-no" title="statement not covered" > if (refsList.length &lt;= 1 || (node instanceof Param &amp;&amp; node.parentNode instanceof Logic &amp;&amp; refsList.length &lt;= 2)) {</span>
1437
- // 平台类型直接删除然后return
1438
- <span class="cstat-no" title="statement not covered" > if (node instanceof ViewElement) {</span>
1439
- <span class="cstat-no" title="statement not covered" > this.delete();</span>
1440
- <span class="cstat-no" title="statement not covered" > return;</span>
1441
- }
1442
- <span class="cstat-no" title="statement not covered" > callback = <span class="fstat-no" title="function not covered" >() =</span>&gt; {</span>
1443
- // 外部接口删除时,只需要删除自己,不需要删除数据结构
1444
- <span class="cstat-no" title="statement not covered" > if (node instanceof Interface &amp;&amp; node.parentNode.concept === 'App') {</span>
1445
- <span class="cstat-no" title="statement not covered" > this.delete();</span>
1446
- <span class="cstat-no" title="statement not covered" > return;</span>
1447
- }
1448
- // Structure 和 Interface是内部有delete方法
1449
- <span class="cstat-no" title="statement not covered" > if (node instanceof Structure || node instanceof Interface) {</span>
1450
- (<span class="cstat-no" title="statement not covered" >this as any).deleteLogincAndModule();</span>
1451
- } else <span class="cstat-no" title="statement not covered" >if (node instanceof Connection) {</span>
1452
- <span class="cstat-no" title="statement not covered" > delConnection(node);</span>
1453
- <span class="cstat-no" title="statement not covered" > if (cb) {</span>
1454
- <span class="cstat-no" title="statement not covered" > cb();</span>
1455
- }
1456
- } else {
1457
- <span class="cstat-no" title="statement not covered" > this.delete();</span>
1458
- }
1459
- };
1460
- } else {
1461
- // 如果有依赖就有一个查找引用提示
1462
- <span class="cstat-no" title="statement not covered" > confirmParms.tipFlag = true;</span>
1463
- const node = <span class="cstat-no" title="statement not covered" >this;</span>
1464
- &nbsp;
1465
- // 删除页面或者流程
1466
- <span class="cstat-no" title="statement not covered" > if (node instanceof View || node instanceof Process || node instanceof Frontend) {</span>
1467
- /**
1468
- * 查找这个页面是不是有依赖
1469
- */
1470
- let viewPath = (<span class="cstat-no" title="statement not covered" >this as FileNode).getEmbeddedFilePath();</span>
1471
- <span class="cstat-no" title="statement not covered" > viewPath = viewPath.slice(0, viewPath.length - 3);</span>
1472
- const find = <span class="cstat-no" title="statement not covered" >refsList.find(<span class="fstat-no" title="function not covered" >(r</span>ecord) =&gt; <span class="cstat-no" title="statement not covered" >!record.file.includes(viewPath))</span>;</span>
1473
- // 如果没有别的文件的依赖,就直接delete
1474
- <span class="cstat-no" title="statement not covered" > if (!find) {</span>
1475
- <span class="cstat-no" title="statement not covered" > if (node instanceof Process) {</span>
1476
- const App = <span class="cstat-no" title="statement not covered" >this.rootNode;</span>
1477
- <span class="cstat-no" title="statement not covered" > App.emit('collect:start', {</span>
1478
- actionMsg: `删除流程${node.name}`,
1479
- });
1480
- <span class="cstat-no" title="statement not covered" > await Promise.all(node.elements.map(<span class="fstat-no" title="function not covered" >(e</span>le) =&gt; <span class="cstat-no" title="statement not covered" >ele.isUserTask &amp;&amp; ele.cancelBindDelete(true))</span>);</span>
1481
- <span class="cstat-no" title="statement not covered" > this.delete();</span>
1482
- <span class="cstat-no" title="statement not covered" > App.emit('collect:end');</span>
1483
- } else {
1484
- <span class="cstat-no" title="statement not covered" > this.delete();</span>
1485
- <span class="cstat-no" title="statement not covered" > if (node instanceof Frontend) {</span>
1486
- <span class="cstat-no" title="statement not covered" > return;</span>
1487
- }
1488
- }
1489
- <span class="cstat-no" title="statement not covered" > return;</span>
1490
- } else {
1491
- <span class="cstat-no" title="statement not covered" > if (node instanceof Frontend) {</span>
1492
- let viewPath = (<span class="cstat-no" title="statement not covered" >this as FileNode).getEmbeddedFilePath();</span>
1493
- <span class="cstat-no" title="statement not covered" > viewPath = viewPath.slice(0, viewPath.length - 3);</span>
1494
- const refsTempList = <span class="cstat-no" title="statement not covered" >refsList.filter(<span class="fstat-no" title="function not covered" >(r</span>ecord) =&gt; <span class="cstat-no" title="statement not covered" >!record.file.includes(viewPath))</span>;</span>
1495
- // 删除流程节点绑定的该端的页面跳转
1496
- const result = <span class="cstat-no" title="statement not covered" >refsTempList</span>
1497
- .map(<span class="fstat-no" title="function not covered" >(r</span>ecord) =&gt; {
1498
- const fileNode = <span class="cstat-no" title="statement not covered" >naslServer.file2NodeMap.get(record.file);</span>
1499
- <span class="cstat-no" title="statement not covered" > if (fileNode) {</span>
1500
- const minRange = <span class="cstat-no" title="statement not covered" >naslServer._findMinRange(record, fileNode as FileNode);</span>
1501
- <span class="cstat-no" title="statement not covered" > if (minRange?.node?.parentNode?.parentNode?.concept === 'ProcessElement') {</span>
1502
- <span class="cstat-no" title="statement not covered" > return minRange.node.parentNode;</span>
1503
- }
1504
- }
1505
- <span class="cstat-no" title="statement not covered" > return null;</span>
1506
- })
1507
- .filter(<span class="fstat-no" title="function not covered" >(r</span>ecord) =&gt; <span class="cstat-no" title="statement not covered" >!!record)</span>;
1508
- const App = <span class="cstat-no" title="statement not covered" >this.rootNode;</span>
1509
- <span class="cstat-no" title="statement not covered" > App.emit('collect:start', {</span>
1510
- actionMsg: `删除端${node.name}`,
1511
- });
1512
- <span class="cstat-no" title="statement not covered" > await Promise.all(result.map(<span class="fstat-no" title="function not covered" >(e</span>le) =&gt; <span class="cstat-no" title="statement not covered" >ele.delete())</span>);</span>
1513
- <span class="cstat-no" title="statement not covered" > this.delete();</span>
1514
- <span class="cstat-no" title="statement not covered" > App.emit('collect:end');</span>
1515
- <span class="cstat-no" title="statement not covered" > return;</span>
1516
- }
1517
- }
1518
- }
1519
- <span class="cstat-no" title="statement not covered" > callback = <span class="fstat-no" title="function not covered" >async </span>() =&gt; {</span>
1520
- // removeParam
1521
- // 跟rename 还不太一样,部分修改依赖修改好的值,然后在下面的修改需要把自己传递进去
1522
- <span class="cstat-no" title="statement not covered" > if (node instanceof Param) {</span>
1523
- const App = <span class="cstat-no" title="statement not covered" >this.rootNode;</span>
1524
- const parentNode = <span class="cstat-no" title="statement not covered" >this.parentNode;</span>
1525
- // 收集修改
1526
- <span class="cstat-no" title="statement not covered" > App.emit('collect:start', {</span>
1527
- actionMsg: '删除参数',
1528
- });
1529
- const Index = <span class="cstat-no" title="statement not covered" >node.getIndexOfParent();</span>
1530
- <span class="cstat-no" title="statement not covered" > this.delete();</span>
1531
- <span class="cstat-no" title="statement not covered" > refsList.forEach(<span class="fstat-no" title="function not covered" >(r</span>ecord) =&gt; {</span>
1532
- const fileNode = <span class="cstat-no" title="statement not covered" >naslServer.file2NodeMap.get(record.file);</span>
1533
- <span class="cstat-no" title="statement not covered" > if (!fileNode) <span class="cstat-no" title="statement not covered" >return null;</span></span>
1534
- const minRange: MinRange = <span class="cstat-no" title="statement not covered" >naslServer._findMinRange(record, fileNode as FileNode);</span>
1535
- <span class="cstat-no" title="statement not covered" > if (minRange) {</span>
1536
- /**
1537
- * 调用方是 调用逻辑或者跳转页面, 去删除对应位置的内容
1538
- * 如果是跳转页面,因为流程下的特殊翻译,需要过滤下 非页面下的参数修改,查找到页面跳转
1539
- */
1540
- <span class="cstat-no" title="statement not covered" > if (</span>
1541
- minRange.node instanceof CallLogic ||
1542
- (node.parentNode instanceof View &amp;&amp; minRange.node instanceof Destination) ||
1543
- minRange.node instanceof CallAuthInterface
1544
- ) {
1545
- <span class="cstat-no" title="statement not covered" > minRange.node.deleteCalleeArg(Index);</span>
1546
- }
1547
- }
1548
- });
1549
- // 结束修改 ,批量操作
1550
- <span class="cstat-no" title="statement not covered" > App.emit('collect:end');</span>
1551
- <span class="cstat-no" title="statement not covered" > return;</span>
1552
- }
1553
- // 删除logic节点,如果有对应的interface要一起删除
1554
- <span class="cstat-no" title="statement not covered" > if (node instanceof Logic) {</span>
1555
- const App = <span class="cstat-no" title="statement not covered" >this.rootNode;</span>
1556
- // 收集修改
1557
- <span class="cstat-no" title="statement not covered" > App.emit('collect:start', {</span>
1558
- actionMsg: '删除逻辑并删除导出的接口',
1559
- });
1560
- <span class="cstat-no" title="statement not covered" > this.delete();</span>
1561
- <span class="cstat-no" title="statement not covered" > refsList.forEach(<span class="fstat-no" title="function not covered" >(r</span>ecord) =&gt; {</span>
1562
- const fileNode = <span class="cstat-no" title="statement not covered" >naslServer.file2NodeMap.get(record.file);</span>
1563
- <span class="cstat-no" title="statement not covered" > if (!fileNode) <span class="cstat-no" title="statement not covered" >return null;</span></span>
1564
- const minRange: MinRange = <span class="cstat-no" title="statement not covered" >naslServer._findMinRange(record, fileNode as FileNode);</span>
1565
- <span class="cstat-no" title="statement not covered" > if (minRange) {</span>
1566
- <span class="cstat-no" title="statement not covered" > if (minRange.node instanceof Interface) {</span>
1567
- <span class="cstat-no" title="statement not covered" > minRange.node.delete();</span>
1568
- }
1569
- }
1570
- });
1571
- // 结束修改 ,批量操作
1572
- <span class="cstat-no" title="statement not covered" > App.emit('collect:end');</span>
1573
- <span class="cstat-no" title="statement not covered" > return;</span>
1574
- }
1575
- // 删除权限节点
1576
- <span class="cstat-no" title="statement not covered" > if (node instanceof Role) {</span>
1577
- const App = <span class="cstat-no" title="statement not covered" >this.rootNode;</span>
1578
- // 收集修改
1579
- <span class="cstat-no" title="statement not covered" > App.emit('collect:start', {</span>
1580
- actionMsg: '删除权限',
1581
- });
1582
- <span class="cstat-no" title="statement not covered" > this.delete();</span>
1583
- <span class="cstat-no" title="statement not covered" > refsList.forEach(<span class="fstat-no" title="function not covered" >(r</span>ecord) =&gt; {</span>
1584
- const fileNode = <span class="cstat-no" title="statement not covered" >naslServer.file2NodeMap.get(record.file);</span>
1585
- <span class="cstat-no" title="statement not covered" > if (!fileNode) <span class="cstat-no" title="statement not covered" >return null;</span></span>
1586
- const minRange: MinRange = <span class="cstat-no" title="statement not covered" >naslServer._findMinRange(record, fileNode as FileNode);</span>
1587
- <span class="cstat-no" title="statement not covered" > if (minRange) {</span>
1588
- <span class="cstat-no" title="statement not covered" > if (minRange.node instanceof View || minRange.node instanceof ViewElement) {</span>
1589
- // oldName旧的节点存的值
1590
- // newValue用户输入值
1591
- // node.bindRoles 存的
1592
- const str = <span class="cstat-no" title="statement not covered" >minRange.node.bindRoles.toString().replace(this.name, '');</span>
1593
- const newBindRoles = <span class="cstat-no" title="statement not covered" >str.split(',').filter(<span class="fstat-no" title="function not covered" >(i</span>tem) =&gt; <span class="cstat-no" title="statement not covered" >!!item)</span>;</span>
1594
- <span class="cstat-no" title="statement not covered" > minRange.node.setBindRoles(newBindRoles);</span>
1595
- }
1596
- }
1597
- });
1598
- // 结束修改 ,批量操作
1599
- <span class="cstat-no" title="statement not covered" > App.emit('collect:end');</span>
1600
- <span class="cstat-no" title="statement not covered" > return;</span>
1601
- }
1602
- &nbsp;
1603
- // 删除页面或者流程,如果上一步没有return 就说明他是有别的引用的,会有引用弹框
1604
- <span class="cstat-no" title="statement not covered" > if (node instanceof View) {</span>
1605
- <span class="cstat-no" title="statement not covered" > this.delete();</span>
1606
- }
1607
- <span class="cstat-no" title="statement not covered" > if (node instanceof Process) {</span>
1608
- const App = <span class="cstat-no" title="statement not covered" >this.rootNode;</span>
1609
- <span class="cstat-no" title="statement not covered" > App.emit('collect:start', {</span>
1610
- actionMsg: `删除流程${node.name}`,
1611
- });
1612
- <span class="cstat-no" title="statement not covered" > await Promise.all(node.elements.map(<span class="fstat-no" title="function not covered" >(e</span>le) =&gt; <span class="cstat-no" title="statement not covered" >ele.isUserTask &amp;&amp; ele.cancelBindDelete(true))</span>);</span>
1613
- <span class="cstat-no" title="statement not covered" > this.delete();</span>
1614
- <span class="cstat-no" title="statement not covered" > App.emit('collect:end');</span>
1615
- }
1616
- &nbsp;
1617
- // 外部接口删除时,只需要删除自己,不需要删除数据结构
1618
- <span class="cstat-no" title="statement not covered" > if (node instanceof Interface &amp;&amp; node.parentNode.concept === 'App') {</span>
1619
- <span class="cstat-no" title="statement not covered" > this.delete();</span>
1620
- <span class="cstat-no" title="statement not covered" > return;</span>
1621
- }
1622
- &nbsp;
1623
- <span class="cstat-no" title="statement not covered" > if (node instanceof Connection) {</span>
1624
- <span class="cstat-no" title="statement not covered" > delConnection(node);</span>
1625
- <span class="cstat-no" title="statement not covered" > if (cb) {</span>
1626
- <span class="cstat-no" title="statement not covered" > cb();</span>
1627
- }
1628
- <span class="cstat-no" title="statement not covered" > return;</span>
1629
- }
1630
- // 其余的都直接调用删除
1631
- // Structure 和 Interface是内部有delete方法
1632
- <span class="cstat-no" title="statement not covered" > if (node instanceof Structure || node instanceof Interface) {</span>
1633
- (<span class="cstat-no" title="statement not covered" >this as any).deleteLogincAndModule();</span>
1634
- } else {
1635
- <span class="cstat-no" title="statement not covered" > this.delete();</span>
1636
- }
1637
- };
1638
- }
1639
- <span class="cstat-no" title="statement not covered" > invokeCommand('tsConfirm.open', confirmParms, callback);</span>
1640
- } catch (err) {
1641
- <span class="cstat-no" title="statement not covered" > console.log(err);</span>
1642
- }
1643
- };
1644
- &nbsp;
1645
- /**
1646
- * 如果添加需要触发查找引用并且在之后,对内容产生影响
1647
- */
1648
- BaseNode.prototype.addParamsPrepare = async function <span class="fstat-no" title="function not covered" >addParamsPrepare(</span>needAdd = <span class="branch-0 cbranch-no" title="branch not covered" >true)</span> {
1649
- <span class="cstat-no" title="statement not covered" > try {</span>
1650
- /**
1651
- * 查找这个节点是不是有依赖
1652
- */
1653
- const app = <span class="cstat-no" title="statement not covered" >this.getAncestor('App');</span>
1654
- const naslServer = (<span class="cstat-no" title="statement not covered" >app as any).naslServer as NaslServer;</span>
1655
- const refsList = <span class="cstat-no" title="statement not covered" >await naslServer._isHaveRef(this);</span>
1656
- <span class="cstat-no" title="statement not covered" > return naslServer._addParamsPrepare(this, refsList, needAdd);</span>
1657
- } catch (err) {
1658
- <span class="cstat-no" title="statement not covered" > console.log(err);</span>
1659
- }
1660
- };
1661
- &nbsp;
1662
- /**
1663
- * 在原型上增加方法来调用
1664
- */
1665
- BaseNode.prototype.getCurrentTypeAnnotation = async function <span class="fstat-no" title="function not covered" >getCurrentTypeAnnotation(</span>outTime?: number) {
1666
- <span class="cstat-no" title="statement not covered" > try {</span>
1667
- /**
1668
- * 查找这个节点是不是有依赖
1669
- */
1670
- const app = <span class="cstat-no" title="statement not covered" >this.getAncestor('App');</span>
1671
- const naslServer = (<span class="cstat-no" title="statement not covered" >app as any).naslServer as NaslServer;</span>
1672
- <span class="cstat-no" title="statement not covered" > return naslServer.getCurrentTypeAnnotation(this, outTime || 2000);</span>
1673
- } catch (err) {
1674
- <span class="cstat-no" title="statement not covered" > console.log(err);</span>
1675
- }
1676
- };
1677
- &nbsp;
1678
- function <span class="fstat-no" title="function not covered" >newNode(</span>node: BaseNode, parentNode: BaseNode, needNewStructure: boolean) {
1679
- <span class="cstat-no" title="statement not covered" > if (needNewStructure &amp;&amp; node?.toJSON) {</span>
1680
- <span class="cstat-no" title="statement not covered" > return BaseNode.from(node.toJSON(), parentNode, '') as Structure;</span>
1681
- }
1682
- <span class="cstat-no" title="statement not covered" > return node as Structure;</span>
1683
- }
1684
- /**
1685
- * 获取下一级变量
1686
- */
1687
- &nbsp;
1688
- BaseNode.prototype.getSelectRef = function <span class="fstat-no" title="function not covered" >getSelectRef(</span>newTypeAnnotation: TypeAnnotation, needNewStructure = <span class="branch-0 cbranch-no" title="branch not covered" >false)</span> {
1689
- <span class="cstat-no" title="statement not covered" > try {</span>
1690
- const typeAnnotation = <span class="cstat-no" title="statement not covered" >newTypeAnnotation || (this as any).typeAnnotation || this.__TypeAnnotation;</span>
1691
- const { typeName, typeKind, typeNamespace, typeArguments, properties: typeProperties } = <span class="cstat-no" title="statement not covered" >typeAnnotation;</span>
1692
- const parentNode = <span class="cstat-no" title="statement not covered" >this;</span>
1693
- let completionChildren: any;
1694
- <span class="cstat-no" title="statement not covered" > if (typeKind === 'reference') {</span>
1695
- <span class="cstat-no" title="statement not covered" > if (typeNamespace === 'nasl.ui' || typeNamespace === 'nasl.process' || typeNamespace === 'nasl.auth' || typeNamespace === 'nasl.http') {</span>
1696
- const node = <span class="cstat-no" title="statement not covered" >newNode(getNaslNodeByNodeCallee(typeNamespace, typeName), parentNode, needNewStructure);</span>
1697
- const properties = (<span class="cstat-no" title="statement not covered" >node as Structure)?.properties || [];</span>
1698
- <span class="cstat-no" title="statement not covered" > completionChildren = properties;</span>
1699
- } else <span class="cstat-no" title="statement not covered" >if (typeNamespace.endsWith('.enums')) {</span>
1700
- <span class="cstat-no" title="statement not covered" > completionChildren = [];</span>
1701
- } else {
1702
- let app: App;
1703
- <span class="cstat-no" title="statement not covered" > if (this.concept === 'App') {</span>
1704
- <span class="cstat-no" title="statement not covered" > app = this as App;</span>
1705
- } else {
1706
- <span class="cstat-no" title="statement not covered" > app = this.rootNode || typeAnnotation.app;</span>
1707
- }
1708
- const node = <span class="cstat-no" title="statement not covered" >newNode(getNodeByNodeCallee(app, typeNamespace + '.' + typeName), parentNode, needNewStructure);</span>
1709
- const properties = <span class="cstat-no" title="statement not covered" >node?.properties || [];</span>
1710
- <span class="cstat-no" title="statement not covered" > completionChildren = properties;</span>
1711
- }
1712
- } else <span class="cstat-no" title="statement not covered" >if (typeKind === 'generic') {</span>
1713
- const node = <span class="cstat-no" title="statement not covered" >newNode(getNaslNodeByNodeCallee(typeNamespace, typeName), parentNode, needNewStructure);</span>
1714
- const properties = <span class="cstat-no" title="statement not covered" >(node?.properties &amp;&amp; [...node?.properties]) || [];</span>
1715
- <span class="cstat-no" title="statement not covered" > for (let i = <span class="cstat-no" title="statement not covered" >0;</span> i &lt; properties.length; i++) {</span>
1716
- const item = <span class="cstat-no" title="statement not covered" >properties[i];</span>
1717
- <span class="cstat-no" title="statement not covered" > if (item?.typeAnnotation?.typeKind === 'typeParam') {</span>
1718
- <span class="cstat-no" title="statement not covered" > if (item.name === 'columnItem' &amp;&amp; typeArguments[1]) {</span>
1719
- <span class="cstat-no" title="statement not covered" > item.typeAnnotation = TypeAnnotation.from(typeArguments[1].toJSON(), node, 'typeAnnotation');</span>
1720
- } else <span class="cstat-no" title="statement not covered" >if (typeArguments[0]) {</span>
1721
- <span class="cstat-no" title="statement not covered" > item.typeAnnotation = TypeAnnotation.from(typeArguments[0].toJSON(), node, 'typeAnnotation');</span>
1722
- }
1723
- <span class="cstat-no" title="statement not covered" > properties[i];</span>
1724
- }
1725
- }
1726
- <span class="cstat-no" title="statement not covered" > completionChildren = properties;</span>
1727
- } else <span class="cstat-no" title="statement not covered" >if (typeNamespace === 'nasl.core' &amp;&amp; ['String', 'Text', 'Email'].includes(typeName)) {</span>
1728
- const node = <span class="cstat-no" title="statement not covered" >newNode(getNaslNodeByNodeCallee(typeNamespace, typeName), parentNode, needNewStructure);</span>
1729
- const properties = <span class="cstat-no" title="statement not covered" >(node?.properties &amp;&amp; [...node?.properties]) || [];</span>
1730
- <span class="cstat-no" title="statement not covered" > completionChildren = properties;</span>
1731
- } else <span class="cstat-no" title="statement not covered" >if (typeKind === 'anonymousStructure' &amp;&amp; typeProperties?.length) {</span>
1732
- const node = <span class="cstat-no" title="statement not covered" >newNode(typeAnnotation, parentNode, needNewStructure);</span>
1733
- const properties = <span class="cstat-no" title="statement not covered" >(node?.properties &amp;&amp; [...node?.properties]) || [];</span>
1734
- <span class="cstat-no" title="statement not covered" > completionChildren = properties;</span>
1735
- }
1736
- <span class="cstat-no" title="statement not covered" > return completionChildren;</span>
1737
- } catch (err) {
1738
- <span class="cstat-no" title="statement not covered" > console.log(err);</span>
1739
- }
1740
- };
1741
- &nbsp;
1742
- extendSentryMonitorNaslNode(BaseNode);
1743
- &nbsp;</pre></td></tr></table></pre>
1744
-
1745
- <div class='push'></div><!-- for sticky footer -->
1746
- </div><!-- /wrapper -->
1747
- <div class='footer quiet pad2 space-top1 center small'>
1748
- Code coverage generated by
1749
- <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
1750
- at 2023-10-19T09:18:56.902Z
1751
- </div>
1752
- <script src="../../prettify.js"></script>
1753
- <script>
1754
- window.onload = function () {
1755
- prettyPrint();
1756
- };
1757
- </script>
1758
- <script src="../../sorter.js"></script>
1759
- <script src="../../block-navigation.js"></script>
1760
- </body>
1761
- </html>
1762
-