@lcap/nasl 3.3.3-beta.8 → 3.3.6-beta.1

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 (436) hide show
  1. package/.nyc_output/{78804420-ead6-486f-b682-ab54ccd95dc9.json → d58d92d8-c0d6-479b-9f82-1f4da8e73ff3.json} +1 -1
  2. package/.nyc_output/processinfo/d58d92d8-c0d6-479b-9f82-1f4da8e73ff3.json +1 -0
  3. package/.nyc_output/processinfo/index.json +1 -1
  4. package/coverage/index.html +126 -141
  5. package/coverage/src/automate/engine/index.html +1 -1
  6. package/coverage/src/automate/engine/utils.js.html +36 -36
  7. package/coverage/src/bak/index.html +14 -14
  8. package/coverage/src/bak/translator.js.html +57 -393
  9. package/coverage/src/breakpoint/generator/AfterStartNode.ts.html +1 -1
  10. package/coverage/src/breakpoint/generator/BeforeEndNode.ts.html +1 -1
  11. package/coverage/src/breakpoint/generator/BreakpointNode.ts.html +1 -1
  12. package/coverage/src/breakpoint/generator/CallbackNode.ts.html +1 -1
  13. package/coverage/src/breakpoint/generator/index.html +1 -1
  14. package/coverage/src/breakpoint/generator/index.ts.html +1 -1
  15. package/coverage/src/breakpoint/index.html +1 -1
  16. package/coverage/src/breakpoint/index.ts.html +1 -1
  17. package/coverage/src/breakpoint/shared/constants.ts.html +1 -1
  18. package/coverage/src/breakpoint/shared/index.html +1 -1
  19. package/coverage/src/breakpoint/shared/index.ts.html +1 -1
  20. package/coverage/src/breakpoint/shared/operations.ts.html +2 -2
  21. package/coverage/src/breakpoint/shared/socket.ts.html +1 -1
  22. package/coverage/src/breakpoint/shared/utils.ts.html +1 -1
  23. package/coverage/src/breakpoint/store/core.ts.html +3 -3
  24. package/coverage/src/breakpoint/store/dock.ts.html +1 -1
  25. package/coverage/src/breakpoint/store/index.html +1 -1
  26. package/coverage/src/breakpoint/store/index.ts.html +1 -1
  27. package/coverage/src/common/BaseNode.ts.html +164 -593
  28. package/coverage/src/common/Command.ts.html +1 -1
  29. package/coverage/src/common/EventEmitter.ts.html +31 -31
  30. package/coverage/src/common/Messager.ts.html +1 -1
  31. package/coverage/src/common/asyncFuncMap.ts.html +1 -1
  32. package/coverage/src/common/index.html +23 -38
  33. package/coverage/src/common/index.ts.html +4 -7
  34. package/coverage/src/concepts/Abort__.ts.html +9 -39
  35. package/coverage/src/concepts/Anchor__.ts.html +29 -86
  36. package/coverage/src/concepts/AnonymousFunction__.ts.html +169 -262
  37. package/coverage/src/concepts/App__.ts.html +152 -1205
  38. package/coverage/src/concepts/Argument__.ts.html +53 -137
  39. package/coverage/src/concepts/Assignee__.ts.html +34 -124
  40. package/coverage/src/concepts/AssignmentLine__.ts.html +15 -48
  41. package/coverage/src/concepts/Assignment__.ts.html +81 -213
  42. package/coverage/src/concepts/Attribute__.ts.html +14 -41
  43. package/coverage/src/concepts/AuthInterface__.ts.html +6 -9
  44. package/coverage/src/concepts/AuthLogicForCallInterface__.ts.html +144 -108
  45. package/coverage/src/concepts/AuthLogic__.ts.html +6 -18
  46. package/coverage/src/concepts/BackendVariable__.ts.html +48 -168
  47. package/coverage/src/concepts/Backend__.ts.html +28 -106
  48. package/coverage/src/concepts/BatchAssignment__.ts.html +169 -274
  49. package/coverage/src/concepts/BinaryExpression__.ts.html +129 -285
  50. package/coverage/src/concepts/BindAttribute__.ts.html +111 -522
  51. package/coverage/src/concepts/BindDirective__.ts.html +26 -131
  52. package/coverage/src/concepts/BindEvent__.ts.html +64 -160
  53. package/coverage/src/concepts/BindStyle__.ts.html +21 -78
  54. package/coverage/src/concepts/BooleanLiteral__.ts.html +20 -47
  55. package/coverage/src/concepts/CallAuthInterface__.ts.html +48 -105
  56. package/coverage/src/concepts/CallConnector__.ts.html +35 -62
  57. package/coverage/src/concepts/CallFunction__.ts.html +144 -288
  58. package/coverage/src/concepts/CallInterface__.ts.html +60 -93
  59. package/coverage/src/concepts/CallLogic__.ts.html +343 -292
  60. package/coverage/src/concepts/CallQueryComponent__.ts.html +93 -126
  61. package/coverage/src/concepts/Comment__.ts.html +10 -43
  62. package/coverage/src/concepts/CompletionProperty__.ts.html +13 -40
  63. package/coverage/src/concepts/ConfigGroup__.ts.html +20 -47
  64. package/coverage/src/concepts/ConfigPropertyValue__.ts.html +19 -22
  65. package/coverage/src/concepts/ConfigProperty__.ts.html +40 -97
  66. package/coverage/src/concepts/Configuration__.ts.html +21 -48
  67. package/coverage/src/concepts/Connection__.ts.html +22 -97
  68. package/coverage/src/concepts/ConnectorTrigger__.ts.html +6 -9
  69. package/coverage/src/concepts/Connector__.ts.html +38 -161
  70. package/coverage/src/concepts/Constant__.ts.html +24 -84
  71. package/coverage/src/concepts/DataSource__.ts.html +57 -111
  72. package/coverage/src/concepts/DatabaseTypeAnnotation__.ts.html +6 -9
  73. package/coverage/src/concepts/Destination__.ts.html +55 -97
  74. package/coverage/src/concepts/End__.ts.html +21 -51
  75. package/coverage/src/concepts/EntityIndex__.ts.html +10 -40
  76. package/coverage/src/concepts/EntityProperty__.ts.html +56 -164
  77. package/coverage/src/concepts/Entity__.ts.html +89 -167
  78. package/coverage/src/concepts/EnumItem__.ts.html +10 -40
  79. package/coverage/src/concepts/Enum__.ts.html +24 -84
  80. package/coverage/src/concepts/Event__.ts.html +14 -41
  81. package/coverage/src/concepts/ExternalDestination__.ts.html +21 -75
  82. package/coverage/src/concepts/ForEachStatement__.ts.html +64 -139
  83. package/coverage/src/concepts/FrontendLibrary__.ts.html +20 -71
  84. package/coverage/src/concepts/FrontendVariable__.ts.html +1 -1
  85. package/coverage/src/concepts/Frontend__.ts.html +57 -213
  86. package/coverage/src/concepts/Function__.ts.html +86 -239
  87. package/coverage/src/concepts/Identifier__.ts.html +72 -111
  88. package/coverage/src/concepts/IfStatement__.ts.html +75 -138
  89. package/coverage/src/concepts/Integration__.ts.html +19 -70
  90. package/coverage/src/concepts/InterfaceParam__.ts.html +21 -78
  91. package/coverage/src/concepts/Interface__.ts.html +60 -162
  92. package/coverage/src/concepts/JSBlock__.ts.html +11 -215
  93. package/coverage/src/concepts/JavaLogic__.ts.html +9 -42
  94. package/coverage/src/concepts/LogicItem__.ts.html +21 -51
  95. package/coverage/src/concepts/Logic__.ts.html +321 -405
  96. package/coverage/src/concepts/MatchCase__.ts.html +97 -181
  97. package/coverage/src/concepts/Match__.ts.html +59 -116
  98. package/coverage/src/concepts/MemberExpression__.ts.html +128 -182
  99. package/coverage/src/concepts/MicroApp__.ts.html +6 -9
  100. package/coverage/src/concepts/Module__.ts.html +18 -672
  101. package/coverage/src/concepts/MsgTriggerEvent__.ts.html +14 -41
  102. package/coverage/src/concepts/MsgTriggerLauncher__.ts.html +14 -41
  103. package/coverage/src/concepts/Namespace__.ts.html +91 -358
  104. package/coverage/src/concepts/NewComposite__.ts.html +125 -278
  105. package/coverage/src/concepts/NewList__.ts.html +57 -195
  106. package/coverage/src/concepts/NewMap__.ts.html +63 -168
  107. package/coverage/src/concepts/New__.ts.html +9 -39
  108. package/coverage/src/concepts/NullLiteral__.ts.html +9 -36
  109. package/coverage/src/concepts/NumericLiteral__.ts.html +33 -90
  110. package/coverage/src/concepts/OqlQueryComponent__.ts.html +35 -161
  111. package/coverage/src/concepts/OverriddenLogic__.ts.html +201 -324
  112. package/coverage/src/concepts/Param__.ts.html +75 -189
  113. package/coverage/src/concepts/Point__.ts.html +6 -9
  114. package/coverage/src/concepts/ProcessComponent__.ts.html +21 -72
  115. package/coverage/src/concepts/ProcessElement__.ts.html +115 -316
  116. package/coverage/src/concepts/ProcessOutcome__.ts.html +13 -85
  117. package/coverage/src/concepts/ProcessOutcomes__.ts.html +13 -85
  118. package/coverage/src/concepts/Process__.ts.html +70 -211
  119. package/coverage/src/concepts/QueryAggregateExpression__.ts.html +16 -67
  120. package/coverage/src/concepts/QueryFieldExpression__.ts.html +11 -41
  121. package/coverage/src/concepts/QueryFromExpression__.ts.html +21 -81
  122. package/coverage/src/concepts/QueryGroupByExpression__.ts.html +19 -70
  123. package/coverage/src/concepts/QueryJoinExpression__.ts.html +25 -85
  124. package/coverage/src/concepts/QueryLimitExpression__.ts.html +20 -77
  125. package/coverage/src/concepts/QueryOrderByExpression__.ts.html +20 -80
  126. package/coverage/src/concepts/QuerySelectExpression__.ts.html +15 -42
  127. package/coverage/src/concepts/Rect__.ts.html +6 -9
  128. package/coverage/src/concepts/Return__.ts.html +44 -164
  129. package/coverage/src/concepts/Role__.ts.html +15 -45
  130. package/coverage/src/concepts/SelectMembers__.ts.html +24 -81
  131. package/coverage/src/concepts/Slot__.ts.html +13 -40
  132. package/coverage/src/concepts/SqlQueryComponent__.ts.html +24 -84
  133. package/coverage/src/concepts/Start__.ts.html +9 -36
  134. package/coverage/src/concepts/StringInterpolation__.ts.html +29 -104
  135. package/coverage/src/concepts/StringLiteral__.ts.html +32 -62
  136. package/coverage/src/concepts/StructureProperty__.ts.html +23 -80
  137. package/coverage/src/concepts/Structure__.ts.html +32 -116
  138. package/coverage/src/concepts/SwitchCase__.ts.html +36 -87
  139. package/coverage/src/concepts/SwitchStatement__.ts.html +33 -90
  140. package/coverage/src/concepts/Theme__.ts.html +12 -15
  141. package/coverage/src/concepts/Transactional__.ts.html +6 -9
  142. package/coverage/src/concepts/TriggerEvent__.ts.html +14 -41
  143. package/coverage/src/concepts/TriggerLauncher__.ts.html +13 -46
  144. package/coverage/src/concepts/TypeAnnotation__.ts.html +116 -347
  145. package/coverage/src/concepts/TypeParam__.ts.html +12 -42
  146. package/coverage/src/concepts/UnaryExpression__.ts.html +27 -105
  147. package/coverage/src/concepts/Unparsed__.ts.html +12 -36
  148. package/coverage/src/concepts/UseComponent__.ts.html +6 -9
  149. package/coverage/src/concepts/ValidationRule__.ts.html +40 -79
  150. package/coverage/src/concepts/Variable__.ts.html +37 -157
  151. package/coverage/src/concepts/ViewBlock__.ts.html +6 -9
  152. package/coverage/src/concepts/ViewComponent__.ts.html +24 -99
  153. package/coverage/src/concepts/ViewElement__.ts.html +278 -692
  154. package/coverage/src/concepts/View__.ts.html +163 -517
  155. package/coverage/src/concepts/WhileStatement__.ts.html +55 -118
  156. package/coverage/src/concepts/basics/stdlib/index.html +1 -1
  157. package/coverage/src/concepts/basics/stdlib/index.ts.html +1 -1
  158. package/coverage/src/concepts/basics/stdlib/nasl.auth.ts.html +1 -1
  159. package/coverage/src/concepts/basics/stdlib/nasl.browser.ts.html +1 -1
  160. package/coverage/src/concepts/basics/stdlib/nasl.collection.ts.html +1 -1
  161. package/coverage/src/concepts/basics/stdlib/nasl.configuration.ts.html +1 -1
  162. package/coverage/src/concepts/basics/stdlib/nasl.core.ts.html +1 -1
  163. package/coverage/src/concepts/basics/stdlib/nasl.event.ts.html +1 -1
  164. package/coverage/src/concepts/basics/stdlib/nasl.http.ts.html +1 -1
  165. package/coverage/src/concepts/basics/stdlib/nasl.interface.ts.html +1 -1
  166. package/coverage/src/concepts/basics/stdlib/nasl.io.ts.html +1 -1
  167. package/coverage/src/concepts/basics/stdlib/nasl.logging.ts.html +1 -1
  168. package/coverage/src/concepts/basics/stdlib/nasl.process.ts.html +1 -1
  169. package/coverage/src/concepts/basics/stdlib/nasl.ui.ts.html +1 -1
  170. package/coverage/src/concepts/basics/stdlib/nasl.util.ts.html +3 -3
  171. package/coverage/src/concepts/basics/stdlib/nasl.validation.ts.html +1 -1
  172. package/coverage/src/concepts/basics/stdlib/reference2TypeAnnotationList.ts.html +1 -1
  173. package/coverage/src/concepts/basics/stdlib/timeZone.ts.html +1 -1
  174. package/coverage/src/concepts/basics/types/coreTypeList.ts.html +1 -1
  175. package/coverage/src/concepts/basics/types/index.html +1 -1
  176. package/coverage/src/concepts/basics/types/index.ts.html +1 -1
  177. package/coverage/src/concepts/index.html +965 -980
  178. package/coverage/src/concepts/index.ts.html +1 -1
  179. package/coverage/src/concepts/index__.ts.html +4 -7
  180. package/coverage/src/config.ts.html +1 -1
  181. package/coverage/src/decorators/index.html +5 -5
  182. package/coverage/src/decorators/index.ts.html +32 -32
  183. package/coverage/src/decorators/promise.ts.html +10 -10
  184. package/coverage/src/eventBus.ts.html +1 -1
  185. package/coverage/src/generator/compileComponent.ts.html +4 -4
  186. package/coverage/src/generator/genBundleFiles.ts.html +23 -17
  187. package/coverage/src/generator/genHash.ts.html +3 -3
  188. package/coverage/src/generator/genMetaData.ts.html +16 -103
  189. package/coverage/src/generator/genReleaseBody.ts.html +3 -3
  190. package/coverage/src/generator/icestark.ts.html +4 -10
  191. package/coverage/src/generator/index.html +21 -21
  192. package/coverage/src/generator/index.ts.html +1 -1
  193. package/coverage/src/generator/microApp.ts.html +1 -1
  194. package/coverage/src/generator/permission.ts.html +20 -92
  195. package/coverage/src/generator/qiankun.ts.html +3 -9
  196. package/coverage/src/generator/styleReplacer.ts.html +1 -1
  197. package/coverage/src/index.html +7 -7
  198. package/coverage/src/index.ts.html +4 -4
  199. package/coverage/src/manager/diagnostic.ts.html +14 -11
  200. package/coverage/src/manager/index.html +13 -13
  201. package/coverage/src/manager/stepRecorder.ts.html +1 -1
  202. package/coverage/src/natural/genNaturalTS.ts.html +1 -1
  203. package/coverage/src/natural/index.html +15 -15
  204. package/coverage/src/natural/index.ts.html +1 -1
  205. package/coverage/src/natural/naslStdlibMap.ts.html +1 -1
  206. package/coverage/src/natural/transformTSCode.ts.html +18 -78
  207. package/coverage/src/sentry/index.html +14 -14
  208. package/coverage/src/sentry/index.ts.html +32 -38
  209. package/coverage/src/server/createUiTs.ts.html +6 -15
  210. package/coverage/src/server/entity2LogicNamespace.ts.html +9 -9
  211. package/coverage/src/server/event.js.html +1 -1
  212. package/coverage/src/server/extendBaseNode.ts.html +4 -7
  213. package/coverage/src/server/formatTsUtils.ts.html +9 -9
  214. package/coverage/src/server/getConnector.ts.html +1 -1
  215. package/coverage/src/server/getExtensionModules.ts.html +1 -1
  216. package/coverage/src/server/getFunctions.ts.html +4 -4
  217. package/coverage/src/server/getInterfaces.ts.html +1 -1
  218. package/coverage/src/server/getLogging.ts.html +2 -2
  219. package/coverage/src/server/getLogics.ts.html +1 -1
  220. package/coverage/src/server/getMemberIdentifier.ts.html +119 -167
  221. package/coverage/src/server/getProcessComponents.ts.html +3 -3
  222. package/coverage/src/server/getProcesses.ts.html +1 -1
  223. package/coverage/src/server/getValidates.ts.html +4 -4
  224. package/coverage/src/server/index.html +34 -34
  225. package/coverage/src/server/index.ts.html +1 -1
  226. package/coverage/src/server/naslServer.ts.html +943 -1195
  227. package/coverage/src/server/naslStdlibMap.ts.html +1 -1
  228. package/coverage/src/server/process2LogicNamespace.ts.html +52 -52
  229. package/coverage/src/server/translator.ts.html +14 -50
  230. package/coverage/src/service/creator/add.configs.js.html +9 -27
  231. package/coverage/src/service/creator/errHandles.js.html +37 -19
  232. package/coverage/src/service/creator/index.html +22 -22
  233. package/coverage/src/service/creator/index.js.html +1 -1
  234. package/coverage/src/service/datasource/api.js.html +1 -1
  235. package/coverage/src/service/datasource/index.html +1 -1
  236. package/coverage/src/service/datasource/index.js.html +1 -1
  237. package/coverage/src/service/logic/api.js.html +1 -1
  238. package/coverage/src/service/logic/index.html +1 -1
  239. package/coverage/src/service/logic/index.js.html +1 -1
  240. package/coverage/src/service/storage/api.js.html +1 -1
  241. package/coverage/src/service/storage/index.html +29 -29
  242. package/coverage/src/service/storage/index.ts.html +1 -1
  243. package/coverage/src/service/storage/init.ts.html +601 -1534
  244. package/coverage/src/service/storage/jsoner.ts.html +13 -76
  245. package/coverage/src/service/storage/map.ts.html +3 -3
  246. package/coverage/src/service/storage/service.ts.html +1 -1
  247. package/coverage/src/service/storage/storagePoint.ts.html +1 -1
  248. package/coverage/src/templator/genCallComponentLogic.ts.html +1 -1
  249. package/coverage/src/templator/genCreateBlock.ts.html +56 -47
  250. package/coverage/src/templator/genCurdEditMultipleKeyBlock.ts.html +31 -49
  251. package/coverage/src/templator/genCurdMultipleKeyBlock.ts.html +89 -80
  252. package/coverage/src/templator/genEditTableBlock.ts.html +11 -80
  253. package/coverage/src/templator/genEnumSelectBlock.ts.html +1 -1
  254. package/coverage/src/templator/genGetBlock.ts.html +1 -1
  255. package/coverage/src/templator/genGridViewBlock.ts.html +1 -1
  256. package/coverage/src/templator/genListViewBlock.ts.html +1 -1
  257. package/coverage/src/templator/genQueryComponent.ts.html +1 -1
  258. package/coverage/src/templator/genSelectBlock.ts.html +1 -1
  259. package/coverage/src/templator/genTableBlock.ts.html +3 -66
  260. package/coverage/src/templator/genUpdateBlock.ts.html +36 -48
  261. package/coverage/src/templator/index.html +39 -39
  262. package/coverage/src/templator/index.ts.html +1 -1
  263. package/coverage/src/templator/utils.ts.html +11 -77
  264. package/coverage/src/translator/constant.ts.html +1 -1
  265. package/coverage/src/translator/index.html +21 -21
  266. package/coverage/src/translator/index.ts.html +1 -1
  267. package/coverage/src/translator/utils.ts.html +68 -389
  268. package/coverage/src/utils/cookie.ts.html +4 -4
  269. package/coverage/src/utils/env.ts.html +1 -1
  270. package/coverage/src/utils/index.html +51 -36
  271. package/coverage/src/utils/index.ts.html +22 -115
  272. package/coverage/src/utils/logger.ts.html +13 -13
  273. package/coverage/src/utils/sortTsString.ts.html +10 -25
  274. package/coverage/src/utils/string.ts.html +8 -110
  275. package/coverage/src/utils/time-slicing.ts.html +1 -1
  276. package/coverage/src/utils/traverse.ts.html +1 -1
  277. package/coverage/src/utils/window.ts.html +1 -1
  278. package/out/bak/translator.js.map +1 -1
  279. package/out/common/Command.js +1 -1
  280. package/out/common/Command.js.map +1 -1
  281. package/out/concepts/Argument__.js +7 -2
  282. package/out/concepts/Argument__.js.map +1 -1
  283. package/out/concepts/Assignment__.js +20 -3
  284. package/out/concepts/Assignment__.js.map +1 -1
  285. package/out/concepts/BackendVariable__.js +24 -2
  286. package/out/concepts/BackendVariable__.js.map +1 -1
  287. package/out/concepts/BinaryExpression__.js +40 -13
  288. package/out/concepts/BinaryExpression__.js.map +1 -1
  289. package/out/concepts/CallLogic__.js +7 -12
  290. package/out/concepts/CallLogic__.js.map +1 -1
  291. package/out/concepts/CountersignPolicy__.d.ts +26 -0
  292. package/out/concepts/CountersignPolicy__.js +73 -0
  293. package/out/concepts/CountersignPolicy__.js.map +1 -0
  294. package/out/concepts/ForEachStatement__.js +12 -26
  295. package/out/concepts/ForEachStatement__.js.map +1 -1
  296. package/out/concepts/Identifier__.js +3 -0
  297. package/out/concepts/Identifier__.js.map +1 -1
  298. package/out/concepts/JSBlock__.js +56 -0
  299. package/out/concepts/JSBlock__.js.map +1 -1
  300. package/out/concepts/LogicItem__.js +2 -1
  301. package/out/concepts/LogicItem__.js.map +1 -1
  302. package/out/concepts/Logic__.js +2 -0
  303. package/out/concepts/Logic__.js.map +1 -1
  304. package/out/concepts/Match__.js +1 -1
  305. package/out/concepts/Match__.js.map +1 -1
  306. package/out/concepts/MultiApprovalPolicy__.d.ts +24 -0
  307. package/out/concepts/MultiApprovalPolicy__.js +65 -0
  308. package/out/concepts/MultiApprovalPolicy__.js.map +1 -0
  309. package/out/concepts/NewComposite__.js +18 -10
  310. package/out/concepts/NewComposite__.js.map +1 -1
  311. package/out/concepts/NumericLiteral__.js +1 -1
  312. package/out/concepts/NumericLiteral__.js.map +1 -1
  313. package/out/concepts/Param__.js +24 -2
  314. package/out/concepts/Param__.js.map +1 -1
  315. package/out/concepts/ProcessElement__.d.ts +16 -0
  316. package/out/concepts/ProcessElement__.js +56 -1
  317. package/out/concepts/ProcessElement__.js.map +1 -1
  318. package/out/concepts/Return__.js +24 -2
  319. package/out/concepts/Return__.js.map +1 -1
  320. package/out/concepts/SequentialPolicy__.d.ts +18 -0
  321. package/out/concepts/SequentialPolicy__.js +54 -0
  322. package/out/concepts/SequentialPolicy__.js.map +1 -0
  323. package/out/concepts/Variable__.js +24 -2
  324. package/out/concepts/Variable__.js.map +1 -1
  325. package/out/concepts/ViewElement__.js.map +1 -1
  326. package/out/concepts/View__.js +2 -2
  327. package/out/concepts/View__.js.map +1 -1
  328. package/out/concepts/index__.d.ts +3 -0
  329. package/out/concepts/index__.js +3 -0
  330. package/out/concepts/index__.js.map +1 -1
  331. package/out/concepts/types__.d.ts +4 -1
  332. package/out/generator/genReleaseBody.js +2 -2
  333. package/out/generator/genReleaseBody.js.map +1 -1
  334. package/out/server/extendBaseNode.js +32 -1
  335. package/out/server/extendBaseNode.js.map +1 -1
  336. package/out/server/getLogics.d.ts +1 -0
  337. package/out/server/getLogics.js +6 -2
  338. package/out/server/getLogics.js.map +1 -1
  339. package/out/server/getProcesses.js +66 -6
  340. package/out/server/getProcesses.js.map +1 -1
  341. package/out/server/index.js +1 -0
  342. package/out/server/index.js.map +1 -1
  343. package/out/server/naslServer.js +2 -2
  344. package/out/server/naslServer.js.map +1 -1
  345. package/out/server/translator.js +3 -0
  346. package/out/server/translator.js.map +1 -1
  347. package/out/service/creator/errHandles.js +6 -3
  348. package/out/service/creator/errHandles.js.map +1 -1
  349. package/out/service/storage/init.js +2 -2
  350. package/out/service/storage/init.js.map +1 -1
  351. package/out/templator/genCreateBlock.js +9 -5
  352. package/out/templator/genCreateBlock.js.map +1 -1
  353. package/out/templator/genCurdEditMultipleKeyBlock.js +18 -12
  354. package/out/templator/genCurdEditMultipleKeyBlock.js.map +1 -1
  355. package/out/templator/genCurdMultipleKeyBlock.js +10 -8
  356. package/out/templator/genCurdMultipleKeyBlock.js.map +1 -1
  357. package/out/templator/genEditTableBlock.js +3 -2
  358. package/out/templator/genEditTableBlock.js.map +1 -1
  359. package/out/templator/genUpdateBlock.js +12 -9
  360. package/out/templator/genUpdateBlock.js.map +1 -1
  361. package/out/templator/utils.js.map +1 -1
  362. package/package.json +2 -2
  363. package/sandbox/stdlib/nasl.core.ts +2 -0
  364. package/sandbox/stdlib/nasl.util.ts +3 -3
  365. package/src/bak/translator.js +0 -1
  366. package/src/common/Command.ts +1 -1
  367. package/src/concepts/Argument__.ts +7 -2
  368. package/src/concepts/Assignment__.ts +31 -13
  369. package/src/concepts/BackendVariable__.ts +22 -3
  370. package/src/concepts/BinaryExpression__.ts +39 -13
  371. package/src/concepts/CallLogic__.ts +13 -23
  372. package/src/concepts/CountersignPolicy__.ts +77 -0
  373. package/src/concepts/ForEachStatement__.ts +17 -26
  374. package/src/concepts/Identifier__.ts +4 -1
  375. package/src/concepts/JSBlock__.ts +58 -0
  376. package/src/concepts/LogicItem__.ts +2 -2
  377. package/src/concepts/Logic__.ts +1 -0
  378. package/src/concepts/Match__.ts +1 -1
  379. package/src/concepts/MultiApprovalPolicy__.ts +69 -0
  380. package/src/concepts/NewComposite__.ts +18 -9
  381. package/src/concepts/NumericLiteral__.ts +1 -1
  382. package/src/concepts/Param__.ts +24 -2
  383. package/src/concepts/ProcessElement__.ts +70 -1
  384. package/src/concepts/Return__.ts +23 -3
  385. package/src/concepts/SequentialPolicy__.ts +58 -0
  386. package/src/concepts/Variable__.ts +23 -3
  387. package/src/concepts/ViewElement__.ts +6 -4
  388. package/src/concepts/View__.ts +5 -5
  389. package/src/concepts/index__.ts +3 -0
  390. package/src/concepts/types__.ts +6 -0
  391. package/src/generator/genReleaseBody.ts +40 -40
  392. package/src/server/extendBaseNode.ts +30 -2
  393. package/src/server/getLogics.ts +4 -0
  394. package/src/server/getProcesses.ts +66 -6
  395. package/src/server/index.ts +2 -1
  396. package/src/server/naslServer.ts +2 -2
  397. package/src/server/translator.ts +3 -0
  398. package/src/service/creator/errHandles.js +7 -4
  399. package/src/service/storage/init.ts +2 -2
  400. package/src/templator/genCreateBlock.ts +9 -5
  401. package/src/templator/genCurdEditMultipleKeyBlock.ts +19 -13
  402. package/src/templator/genCurdMultipleKeyBlock.ts +14 -11
  403. package/src/templator/genEditTableBlock.ts +4 -2
  404. package/src/templator/genUpdateBlock.ts +15 -12
  405. package/src/templator/utils.ts +8 -7
  406. package/test/concepts/anonymous-function/__snapshots__/toJS.spec.ts.snap +1 -1
  407. package/test/concepts/assignment/__snapshots__/toJS.spec.ts.snap +1 -1
  408. package/test/concepts/batch-assignment/__snapshots__/toJS.spec.ts.snap +2 -2
  409. package/test/concepts/binary-expression/__snapshots__/toJS.spec.ts.snap +3 -2
  410. package/test/concepts/call-interface/__snapshots__/toJS.spec.ts.snap +2 -2
  411. package/test/concepts/call-logic/__snapshots__/toJS.spec.ts.snap +3 -3
  412. package/test/concepts/match/__snapshots__/toJS.spec.ts.snap +1 -1
  413. package/test/concepts/numeric-literal/__snapshots__/toJS.spec.ts.snap +1 -1
  414. package/test/concepts/validation-rule/__snapshots__/toJS.spec.ts.snap +3 -3
  415. package/.nyc_output/processinfo/78804420-ead6-486f-b682-ab54ccd95dc9.json +0 -1
  416. package/coverage/cobertura-coverage.xml +0 -71878
  417. package/coverage/src/automate/engine/index.js.html +0 -1471
  418. package/coverage/src/automate/engine/operators.js.html +0 -862
  419. package/coverage/src/automate/engine/uniqueName.js.html +0 -412
  420. package/coverage/src/automate/engine/viewCache.js.html +0 -214
  421. package/coverage/src/automate/template/index.html +0 -116
  422. package/coverage/src/automate/template/myProcess.js.html +0 -34645
  423. package/coverage/src/common/utils.ts.html +0 -136
  424. package/coverage/src/concepts/DataElement__.ts.html +0 -118
  425. package/coverage/src/concepts/MetadataType__.ts.html +0 -2053
  426. package/coverage/src/utils/time-slicing/constant.ts.html +0 -196
  427. package/coverage/src/utils/time-slicing/controller.ts.html +0 -1111
  428. package/coverage/src/utils/time-slicing/index.html +0 -236
  429. package/coverage/src/utils/time-slicing/index.ts.html +0 -103
  430. package/coverage/src/utils/time-slicing/page-state.ts.html +0 -121
  431. package/coverage/src/utils/time-slicing/performance.ts.html +0 -253
  432. package/coverage/src/utils/time-slicing/runner.ts.html +0 -247
  433. package/coverage/src/utils/time-slicing/tool.ts.html +0 -220
  434. package/coverage/src/utils/time-slicing/utils.ts.html +0 -355
  435. package/coverage/src/utils/time-slicing/wrapper.ts.html +0 -259
  436. package/coverage/src/utils/time.ts.html +0 -118
@@ -1,1111 +0,0 @@
1
-
2
- <!doctype html>
3
- <html lang="en">
4
-
5
- <head>
6
- <title>Code coverage report for src/utils/time-slicing/controller.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/utils/time-slicing</a> controller.ts</h1>
23
- <div class='clearfix'>
24
-
25
- <div class='fl pad1y space-right2'>
26
- <span class="strong">3.93% </span>
27
- <span class="quiet">Statements</span>
28
- <span class='fraction'>5/127</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/36</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/19</span>
43
- </div>
44
-
45
-
46
- <div class='fl pad1y space-right2'>
47
- <span class="strong">3.96% </span>
48
- <span class="quiet">Lines</span>
49
- <span class='fraction'>5/126</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></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
409
- <span class="cline-any cline-yes">1x</span>
410
- <span class="cline-any cline-yes">1x</span>
411
- <span class="cline-any cline-neutral">&nbsp;</span>
412
- <span class="cline-any cline-neutral">&nbsp;</span>
413
- <span class="cline-any cline-neutral">&nbsp;</span>
414
- <span class="cline-any cline-neutral">&nbsp;</span>
415
- <span class="cline-any cline-neutral">&nbsp;</span>
416
- <span class="cline-any cline-neutral">&nbsp;</span>
417
- <span class="cline-any cline-neutral">&nbsp;</span>
418
- <span class="cline-any cline-neutral">&nbsp;</span>
419
- <span class="cline-any cline-yes">1x</span>
420
- <span class="cline-any cline-neutral">&nbsp;</span>
421
- <span class="cline-any cline-neutral">&nbsp;</span>
422
- <span class="cline-any cline-neutral">&nbsp;</span>
423
- <span class="cline-any cline-neutral">&nbsp;</span>
424
- <span class="cline-any cline-neutral">&nbsp;</span>
425
- <span class="cline-any cline-neutral">&nbsp;</span>
426
- <span class="cline-any cline-neutral">&nbsp;</span>
427
- <span class="cline-any cline-neutral">&nbsp;</span>
428
- <span class="cline-any cline-yes">1x</span>
429
- <span class="cline-any cline-neutral">&nbsp;</span>
430
- <span class="cline-any cline-no">&nbsp;</span>
431
- <span class="cline-any cline-neutral">&nbsp;</span>
432
- <span class="cline-any cline-neutral">&nbsp;</span>
433
- <span class="cline-any cline-no">&nbsp;</span>
434
- <span class="cline-any cline-neutral">&nbsp;</span>
435
- <span class="cline-any cline-neutral">&nbsp;</span>
436
- <span class="cline-any cline-neutral">&nbsp;</span>
437
- <span class="cline-any cline-neutral">&nbsp;</span>
438
- <span class="cline-any cline-neutral">&nbsp;</span>
439
- <span class="cline-any cline-neutral">&nbsp;</span>
440
- <span class="cline-any cline-no">&nbsp;</span>
441
- <span class="cline-any cline-neutral">&nbsp;</span>
442
- <span class="cline-any cline-neutral">&nbsp;</span>
443
- <span class="cline-any cline-neutral">&nbsp;</span>
444
- <span class="cline-any cline-neutral">&nbsp;</span>
445
- <span class="cline-any cline-neutral">&nbsp;</span>
446
- <span class="cline-any cline-neutral">&nbsp;</span>
447
- <span class="cline-any cline-no">&nbsp;</span>
448
- <span class="cline-any cline-neutral">&nbsp;</span>
449
- <span class="cline-any cline-neutral">&nbsp;</span>
450
- <span class="cline-any cline-no">&nbsp;</span>
451
- <span class="cline-any cline-neutral">&nbsp;</span>
452
- <span class="cline-any cline-neutral">&nbsp;</span>
453
- <span class="cline-any cline-no">&nbsp;</span>
454
- <span class="cline-any cline-neutral">&nbsp;</span>
455
- <span class="cline-any cline-neutral">&nbsp;</span>
456
- <span class="cline-any cline-neutral">&nbsp;</span>
457
- <span class="cline-any cline-neutral">&nbsp;</span>
458
- <span class="cline-any cline-neutral">&nbsp;</span>
459
- <span class="cline-any cline-neutral">&nbsp;</span>
460
- <span class="cline-any cline-neutral">&nbsp;</span>
461
- <span class="cline-any cline-no">&nbsp;</span>
462
- <span class="cline-any cline-neutral">&nbsp;</span>
463
- <span class="cline-any cline-neutral">&nbsp;</span>
464
- <span class="cline-any cline-neutral">&nbsp;</span>
465
- <span class="cline-any cline-neutral">&nbsp;</span>
466
- <span class="cline-any cline-neutral">&nbsp;</span>
467
- <span class="cline-any cline-neutral">&nbsp;</span>
468
- <span class="cline-any cline-neutral">&nbsp;</span>
469
- <span class="cline-any cline-neutral">&nbsp;</span>
470
- <span class="cline-any cline-no">&nbsp;</span>
471
- <span class="cline-any cline-neutral">&nbsp;</span>
472
- <span class="cline-any cline-neutral">&nbsp;</span>
473
- <span class="cline-any cline-neutral">&nbsp;</span>
474
- <span class="cline-any cline-neutral">&nbsp;</span>
475
- <span class="cline-any cline-neutral">&nbsp;</span>
476
- <span class="cline-any cline-neutral">&nbsp;</span>
477
- <span class="cline-any cline-neutral">&nbsp;</span>
478
- <span class="cline-any cline-no">&nbsp;</span>
479
- <span class="cline-any cline-neutral">&nbsp;</span>
480
- <span class="cline-any cline-neutral">&nbsp;</span>
481
- <span class="cline-any cline-no">&nbsp;</span>
482
- <span class="cline-any cline-no">&nbsp;</span>
483
- <span class="cline-any cline-no">&nbsp;</span>
484
- <span class="cline-any cline-neutral">&nbsp;</span>
485
- <span class="cline-any cline-neutral">&nbsp;</span>
486
- <span class="cline-any cline-neutral">&nbsp;</span>
487
- <span class="cline-any cline-neutral">&nbsp;</span>
488
- <span class="cline-any cline-no">&nbsp;</span>
489
- <span class="cline-any cline-no">&nbsp;</span>
490
- <span class="cline-any cline-neutral">&nbsp;</span>
491
- <span class="cline-any cline-no">&nbsp;</span>
492
- <span class="cline-any cline-no">&nbsp;</span>
493
- <span class="cline-any cline-neutral">&nbsp;</span>
494
- <span class="cline-any cline-no">&nbsp;</span>
495
- <span class="cline-any cline-no">&nbsp;</span>
496
- <span class="cline-any cline-neutral">&nbsp;</span>
497
- <span class="cline-any cline-neutral">&nbsp;</span>
498
- <span class="cline-any cline-no">&nbsp;</span>
499
- <span class="cline-any cline-neutral">&nbsp;</span>
500
- <span class="cline-any cline-neutral">&nbsp;</span>
501
- <span class="cline-any cline-neutral">&nbsp;</span>
502
- <span class="cline-any cline-neutral">&nbsp;</span>
503
- <span class="cline-any cline-neutral">&nbsp;</span>
504
- <span class="cline-any cline-no">&nbsp;</span>
505
- <span class="cline-any cline-neutral">&nbsp;</span>
506
- <span class="cline-any cline-neutral">&nbsp;</span>
507
- <span class="cline-any cline-no">&nbsp;</span>
508
- <span class="cline-any cline-neutral">&nbsp;</span>
509
- <span class="cline-any cline-no">&nbsp;</span>
510
- <span class="cline-any cline-neutral">&nbsp;</span>
511
- <span class="cline-any cline-no">&nbsp;</span>
512
- <span class="cline-any cline-no">&nbsp;</span>
513
- <span class="cline-any cline-neutral">&nbsp;</span>
514
- <span class="cline-any cline-no">&nbsp;</span>
515
- <span class="cline-any cline-neutral">&nbsp;</span>
516
- <span class="cline-any cline-no">&nbsp;</span>
517
- <span class="cline-any cline-neutral">&nbsp;</span>
518
- <span class="cline-any cline-neutral">&nbsp;</span>
519
- <span class="cline-any cline-neutral">&nbsp;</span>
520
- <span class="cline-any cline-no">&nbsp;</span>
521
- <span class="cline-any cline-neutral">&nbsp;</span>
522
- <span class="cline-any cline-neutral">&nbsp;</span>
523
- <span class="cline-any cline-neutral">&nbsp;</span>
524
- <span class="cline-any cline-neutral">&nbsp;</span>
525
- <span class="cline-any cline-neutral">&nbsp;</span>
526
- <span class="cline-any cline-neutral">&nbsp;</span>
527
- <span class="cline-any cline-neutral">&nbsp;</span>
528
- <span class="cline-any cline-no">&nbsp;</span>
529
- <span class="cline-any cline-neutral">&nbsp;</span>
530
- <span class="cline-any cline-neutral">&nbsp;</span>
531
- <span class="cline-any cline-neutral">&nbsp;</span>
532
- <span class="cline-any cline-neutral">&nbsp;</span>
533
- <span class="cline-any cline-neutral">&nbsp;</span>
534
- <span class="cline-any cline-neutral">&nbsp;</span>
535
- <span class="cline-any cline-no">&nbsp;</span>
536
- <span class="cline-any cline-neutral">&nbsp;</span>
537
- <span class="cline-any cline-neutral">&nbsp;</span>
538
- <span class="cline-any cline-neutral">&nbsp;</span>
539
- <span class="cline-any cline-neutral">&nbsp;</span>
540
- <span class="cline-any cline-neutral">&nbsp;</span>
541
- <span class="cline-any cline-neutral">&nbsp;</span>
542
- <span class="cline-any cline-neutral">&nbsp;</span>
543
- <span class="cline-any cline-neutral">&nbsp;</span>
544
- <span class="cline-any cline-no">&nbsp;</span>
545
- <span class="cline-any cline-neutral">&nbsp;</span>
546
- <span class="cline-any cline-neutral">&nbsp;</span>
547
- <span class="cline-any cline-neutral">&nbsp;</span>
548
- <span class="cline-any cline-neutral">&nbsp;</span>
549
- <span class="cline-any cline-neutral">&nbsp;</span>
550
- <span class="cline-any cline-neutral">&nbsp;</span>
551
- <span class="cline-any cline-neutral">&nbsp;</span>
552
- <span class="cline-any cline-neutral">&nbsp;</span>
553
- <span class="cline-any cline-neutral">&nbsp;</span>
554
- <span class="cline-any cline-neutral">&nbsp;</span>
555
- <span class="cline-any cline-neutral">&nbsp;</span>
556
- <span class="cline-any cline-neutral">&nbsp;</span>
557
- <span class="cline-any cline-neutral">&nbsp;</span>
558
- <span class="cline-any cline-neutral">&nbsp;</span>
559
- <span class="cline-any cline-neutral">&nbsp;</span>
560
- <span class="cline-any cline-neutral">&nbsp;</span>
561
- <span class="cline-any cline-no">&nbsp;</span>
562
- <span class="cline-any cline-neutral">&nbsp;</span>
563
- <span class="cline-any cline-no">&nbsp;</span>
564
- <span class="cline-any cline-no">&nbsp;</span>
565
- <span class="cline-any cline-no">&nbsp;</span>
566
- <span class="cline-any cline-no">&nbsp;</span>
567
- <span class="cline-any cline-neutral">&nbsp;</span>
568
- <span class="cline-any cline-no">&nbsp;</span>
569
- <span class="cline-any cline-neutral">&nbsp;</span>
570
- <span class="cline-any cline-neutral">&nbsp;</span>
571
- <span class="cline-any cline-neutral">&nbsp;</span>
572
- <span class="cline-any cline-neutral">&nbsp;</span>
573
- <span class="cline-any cline-no">&nbsp;</span>
574
- <span class="cline-any cline-neutral">&nbsp;</span>
575
- <span class="cline-any cline-no">&nbsp;</span>
576
- <span class="cline-any cline-neutral">&nbsp;</span>
577
- <span class="cline-any cline-no">&nbsp;</span>
578
- <span class="cline-any cline-neutral">&nbsp;</span>
579
- <span class="cline-any cline-no">&nbsp;</span>
580
- <span class="cline-any cline-neutral">&nbsp;</span>
581
- <span class="cline-any cline-no">&nbsp;</span>
582
- <span class="cline-any cline-no">&nbsp;</span>
583
- <span class="cline-any cline-neutral">&nbsp;</span>
584
- <span class="cline-any cline-no">&nbsp;</span>
585
- <span class="cline-any cline-no">&nbsp;</span>
586
- <span class="cline-any cline-neutral">&nbsp;</span>
587
- <span class="cline-any cline-no">&nbsp;</span>
588
- <span class="cline-any cline-no">&nbsp;</span>
589
- <span class="cline-any cline-no">&nbsp;</span>
590
- <span class="cline-any cline-no">&nbsp;</span>
591
- <span class="cline-any cline-neutral">&nbsp;</span>
592
- <span class="cline-any cline-neutral">&nbsp;</span>
593
- <span class="cline-any cline-no">&nbsp;</span>
594
- <span class="cline-any cline-neutral">&nbsp;</span>
595
- <span class="cline-any cline-neutral">&nbsp;</span>
596
- <span class="cline-any cline-neutral">&nbsp;</span>
597
- <span class="cline-any cline-neutral">&nbsp;</span>
598
- <span class="cline-any cline-neutral">&nbsp;</span>
599
- <span class="cline-any cline-no">&nbsp;</span>
600
- <span class="cline-any cline-neutral">&nbsp;</span>
601
- <span class="cline-any cline-no">&nbsp;</span>
602
- <span class="cline-any cline-no">&nbsp;</span>
603
- <span class="cline-any cline-no">&nbsp;</span>
604
- <span class="cline-any cline-no">&nbsp;</span>
605
- <span class="cline-any cline-no">&nbsp;</span>
606
- <span class="cline-any cline-neutral">&nbsp;</span>
607
- <span class="cline-any cline-neutral">&nbsp;</span>
608
- <span class="cline-any cline-neutral">&nbsp;</span>
609
- <span class="cline-any cline-neutral">&nbsp;</span>
610
- <span class="cline-any cline-no">&nbsp;</span>
611
- <span class="cline-any cline-neutral">&nbsp;</span>
612
- <span class="cline-any cline-neutral">&nbsp;</span>
613
- <span class="cline-any cline-no">&nbsp;</span>
614
- <span class="cline-any cline-neutral">&nbsp;</span>
615
- <span class="cline-any cline-neutral">&nbsp;</span>
616
- <span class="cline-any cline-neutral">&nbsp;</span>
617
- <span class="cline-any cline-no">&nbsp;</span>
618
- <span class="cline-any cline-no">&nbsp;</span>
619
- <span class="cline-any cline-neutral">&nbsp;</span>
620
- <span class="cline-any cline-neutral">&nbsp;</span>
621
- <span class="cline-any cline-neutral">&nbsp;</span>
622
- <span class="cline-any cline-neutral">&nbsp;</span>
623
- <span class="cline-any cline-neutral">&nbsp;</span>
624
- <span class="cline-any cline-no">&nbsp;</span>
625
- <span class="cline-any cline-neutral">&nbsp;</span>
626
- <span class="cline-any cline-no">&nbsp;</span>
627
- <span class="cline-any cline-no">&nbsp;</span>
628
- <span class="cline-any cline-no">&nbsp;</span>
629
- <span class="cline-any cline-no">&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-no">&nbsp;</span>
635
- <span class="cline-any cline-neutral">&nbsp;</span>
636
- <span class="cline-any cline-no">&nbsp;</span>
637
- <span class="cline-any cline-no">&nbsp;</span>
638
- <span class="cline-any cline-no">&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-no">&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-no">&nbsp;</span>
647
- <span class="cline-any cline-neutral">&nbsp;</span>
648
- <span class="cline-any cline-no">&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-neutral">&nbsp;</span>
652
- <span class="cline-any cline-neutral">&nbsp;</span>
653
- <span class="cline-any cline-no">&nbsp;</span>
654
- <span class="cline-any cline-neutral">&nbsp;</span>
655
- <span class="cline-any cline-no">&nbsp;</span>
656
- <span class="cline-any cline-no">&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-no">&nbsp;</span>
660
- <span class="cline-any cline-no">&nbsp;</span>
661
- <span class="cline-any cline-no">&nbsp;</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-no">&nbsp;</span>
666
- <span class="cline-any cline-neutral">&nbsp;</span>
667
- <span class="cline-any cline-no">&nbsp;</span>
668
- <span class="cline-any cline-neutral">&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-neutral">&nbsp;</span>
672
- <span class="cline-any cline-neutral">&nbsp;</span>
673
- <span class="cline-any cline-no">&nbsp;</span>
674
- <span class="cline-any cline-no">&nbsp;</span>
675
- <span class="cline-any cline-neutral">&nbsp;</span>
676
- <span class="cline-any cline-neutral">&nbsp;</span>
677
- <span class="cline-any cline-neutral">&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-no">&nbsp;</span>
681
- <span class="cline-any cline-no">&nbsp;</span>
682
- <span class="cline-any cline-neutral">&nbsp;</span>
683
- <span class="cline-any cline-neutral">&nbsp;</span>
684
- <span class="cline-any cline-no">&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-neutral">&nbsp;</span>
688
- <span class="cline-any cline-neutral">&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-neutral">&nbsp;</span>
692
- <span class="cline-any cline-no">&nbsp;</span>
693
- <span class="cline-any cline-no">&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-neutral">&nbsp;</span>
698
- <span class="cline-any cline-neutral">&nbsp;</span>
699
- <span class="cline-any cline-no">&nbsp;</span>
700
- <span class="cline-any cline-neutral">&nbsp;</span>
701
- <span class="cline-any cline-neutral">&nbsp;</span>
702
- <span class="cline-any cline-no">&nbsp;</span>
703
- <span class="cline-any cline-no">&nbsp;</span>
704
- <span class="cline-any cline-no">&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-neutral">&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-no">&nbsp;</span>
712
- <span class="cline-any cline-neutral">&nbsp;</span>
713
- <span class="cline-any cline-no">&nbsp;</span>
714
- <span class="cline-any cline-no">&nbsp;</span>
715
- <span class="cline-any cline-no">&nbsp;</span>
716
- <span class="cline-any cline-neutral">&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-neutral">&nbsp;</span>
721
- <span class="cline-any cline-no">&nbsp;</span>
722
- <span class="cline-any cline-no">&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-neutral">&nbsp;</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-no">&nbsp;</span>
734
- <span class="cline-any cline-neutral">&nbsp;</span>
735
- <span class="cline-any cline-neutral">&nbsp;</span>
736
- <span class="cline-any cline-neutral">&nbsp;</span>
737
- <span class="cline-any cline-neutral">&nbsp;</span>
738
- <span class="cline-any cline-no">&nbsp;</span>
739
- <span class="cline-any cline-neutral">&nbsp;</span>
740
- <span class="cline-any cline-neutral">&nbsp;</span>
741
- <span class="cline-any cline-neutral">&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-no">&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-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import { pageIsActive } from './page-state';
751
- import { Performance } from './performance';
752
- import {
753
- getFrameMark,
754
- getGroupMark,
755
- getAsyncMark,
756
- GroupData,
757
- FrameData,
758
- AsyncData,
759
- getId,
760
- } from './utils';
761
- import {
762
- LowResourceRatio,
763
- FrameMinTime,
764
- FrameIdleTime,
765
- NextState,
766
- TheoreticalLimitCalculationCoefficient as Coefficient,
767
- } from './constant';
768
- &nbsp;
769
- /** 时间分片控制器 */
770
- export class TimeSlicingController {
771
- /** 控制器编号 */
772
- private id = <span class="cstat-no" title="statement not covered" >getId();</span>
773
- &nbsp;
774
- /** 已处理的任务数量 */
775
- private allTaskNumber = <span class="cstat-no" title="statement not covered" >0;</span>
776
- &nbsp;
777
- /**
778
- * 已处理任务消耗的总时间
779
- *
780
- * @description 单位“毫秒”
781
- */
782
- private allTaskTime = <span class="cstat-no" title="statement not covered" >0;</span>
783
- &nbsp;
784
- /**
785
- * 单个任务平均执行时间
786
- *
787
- * @description 单位“毫秒”,初始化为`1`微秒
788
- */
789
- private averageTaskTime = <span class="cstat-no" title="statement not covered" >1e-3;</span>
790
- &nbsp;
791
- /** 资源不足帧的数量 */
792
- private lowResourceFrame = <span class="cstat-no" title="statement not covered" >0;</span>
793
- &nbsp;
794
- /** 帧数据 */
795
- private readonly frame: FrameData = <span class="cstat-no" title="statement not covered" >{</span>
796
- id: 0,
797
- time: 0,
798
- groupTime: 0,
799
- mark: getFrameMark(0),
800
- };
801
- &nbsp;
802
- /** 任务组数据 */
803
- private readonly group: GroupData = <span class="cstat-no" title="statement not covered" >{</span>
804
- id: 0,
805
- time: 0,
806
- limit: 1,
807
- frameId: 1,
808
- mark: getGroupMark(0),
809
- };
810
- &nbsp;
811
- /** 异步等待数据 */
812
- private readonly async: AsyncData = <span class="cstat-no" title="statement not covered" >{</span>
813
- id: 0,
814
- time: 0,
815
- result: undefined,
816
- mark: getAsyncMark(0),
817
- };
818
- &nbsp;
819
- /** 性能检测包装器 */
820
- private readonly performance = <span class="cstat-no" title="statement not covered" >new Performance(this.id);</span>
821
- &nbsp;
822
- /// #if process.env.NODE_ENV === 'development'
823
- private groupList: GroupData[] = <span class="cstat-no" title="statement not covered" >[];</span>
824
- private frameList: FrameData[] = <span class="cstat-no" title="statement not covered" >[];</span>
825
- private asyncList: AsyncData[] = <span class="cstat-no" title="statement not covered" >[];</span>
826
- /// #endif
827
- &nbsp;
828
- /** 任务增长系数 */
829
- private <span class="fstat-no" title="function not covered" >increaseRatio(</span>now: number) {
830
- <span class="cstat-no" title="statement not covered" > if (now &lt;= 0) {</span>
831
- <span class="cstat-no" title="statement not covered" > return 1;</span>
832
- }
833
- else <span class="cstat-no" title="statement not covered" >if (this.allTaskTime &lt; 0.01) {</span>
834
- <span class="cstat-no" title="statement not covered" > return now * 10;</span>
835
- }
836
- else <span class="cstat-no" title="statement not covered" >if (now &lt; 10) {</span>
837
- <span class="cstat-no" title="statement not covered" > return now * 2;</span>
838
- }
839
- else {
840
- <span class="cstat-no" title="statement not covered" > return now * 1.3;</span>
841
- }
842
- }
843
- &nbsp;
844
- /** 下组任务状态 */
845
- private <span class="fstat-no" title="function not covered" >getNextData(</span>) {
846
- const { frame, group, async } = <span class="cstat-no" title="statement not covered" >this;</span>
847
- &nbsp;
848
- // 页面处于活动状态
849
- <span class="cstat-no" title="statement not covered" > if (pageIsActive) {</span>
850
- /** 帧剩余时间 */
851
- const restFrameTime = <span class="cstat-no" title="statement not covered" >Math.max(FrameMinTime - async.time - frame.time, 0);</span>
852
- /** 是否使用下一帧 */
853
- const useNextFrame = <span class="cstat-no" title="statement not covered" >restFrameTime &lt; FrameIdleTime;</span>
854
- const state = <span class="cstat-no" title="statement not covered" >useNextFrame ? NextState.NextFrame : NextState.MicroTask;</span>
855
- /** 增长系数计算的任务上限 */
856
- const taskNumberByRatio = <span class="cstat-no" title="statement not covered" >this.increaseRatio(group.limit);</span>
857
- /** 理论上限 */
858
- const taskNumberByTheoretical = <span class="cstat-no" title="statement not covered" >useNextFrame</span>
859
- ? Math.round((FrameMinTime - FrameIdleTime) / this.averageTaskTime * Coefficient)
860
- : Math.round(restFrameTime / this.averageTaskTime * Coefficient);
861
- /** 实际应该使用的任务上限 */
862
- const realTaskNumber = <span class="cstat-no" title="statement not covered" >Math.floor(</span>
863
- taskNumberByTheoretical &lt;= 0
864
- ? 1
865
- : taskNumberByTheoretical &lt; taskNumberByRatio
866
- ? taskNumberByTheoretical
867
- : taskNumberByRatio
868
- );
869
- &nbsp;
870
- <span class="cstat-no" title="statement not covered" > return {</span>
871
- next: state,
872
- task: realTaskNumber,
873
- };
874
- }
875
- // 页面在后台时,不需要顾忌 UI 渲染,全速跑即可
876
- else {
877
- <span class="cstat-no" title="statement not covered" > return {</span>
878
- next: NextState.MicroTask,
879
- task: Math.round(FrameMinTime / this.averageTaskTime),
880
- };
881
- }
882
- }
883
- &nbsp;
884
- /** 清除状态 */
885
- private <span class="fstat-no" title="function not covered" >clearState(</span>) {
886
- <span class="cstat-no" title="statement not covered" > this.performance.clear();</span>
887
- }
888
- &nbsp;
889
- /** 展示信息 */
890
- private <span class="fstat-no" title="function not covered" >displayInfo(</span>) {
891
- // 调试用的代码,别删
892
- // console.log('时间分片完成', {
893
- // '任务数': this.allTaskNumber,
894
- // '单任务平均耗时': this.averageTaskTime,
895
- // '任务组数据': this.groupList,
896
- // '帧数据': this.frameList,
897
- // '异步等待数据': this.asyncList,
898
- // });
899
- }
900
- &nbsp;
901
- /** 当前组运行开始 */
902
- private <span class="fstat-no" title="function not covered" >setGroupStart(</span>) {
903
- const { group, frame, performance } = <span class="cstat-no" title="statement not covered" >this;</span>
904
- &nbsp;
905
- <span class="cstat-no" title="statement not covered" > group.id++;</span>
906
- <span class="cstat-no" title="statement not covered" > group.time = 0;</span>
907
- <span class="cstat-no" title="statement not covered" > group.frameId = frame.id;</span>
908
- <span class="cstat-no" title="statement not covered" > group.mark = getGroupMark(group.id);</span>
909
- &nbsp;
910
- <span class="cstat-no" title="statement not covered" > performance.mark(group.mark.GroupStart);</span>
911
- }
912
- &nbsp;
913
- /** 当前组运行结束 */
914
- private <span class="fstat-no" title="function not covered" >setGroupEnd(</span>) {
915
- const { group, frame, performance } = <span class="cstat-no" title="statement not covered" >this;</span>
916
- &nbsp;
917
- <span class="cstat-no" title="statement not covered" > performance.mark(group.mark.GroupEnd);</span>
918
- /** 当前微任务的运行时间 */
919
- const groupMeasure = <span class="cstat-no" title="statement not covered" >performance.measure(group.mark.GroupMeasure, group.mark.GroupStart, group.mark.GroupEnd);</span>
920
- /** 当前帧的运行时间 */
921
- const frameMeasure = <span class="cstat-no" title="statement not covered" >performance.measure(frame.mark.FrameMeasure, frame.mark.FrameStart, group.mark.GroupEnd);</span>
922
- &nbsp;
923
- <span class="cstat-no" title="statement not covered" > performance.clearByNames(group.mark.GroupStart, group.mark.GroupEnd);</span>
924
- <span class="cstat-no" title="statement not covered" > performance.clearByNames(group.mark.GroupMeasure, frame.mark.FrameMeasure);</span>
925
- &nbsp;
926
- <span class="cstat-no" title="statement not covered" > group.time = groupMeasure.duration;</span>
927
- <span class="cstat-no" title="statement not covered" > frame.time = frameMeasure.duration;</span>
928
- &nbsp;
929
- <span class="cstat-no" title="statement not covered" > this.frame.groupTime += groupMeasure.duration;</span>
930
- <span class="cstat-no" title="statement not covered" > this.allTaskNumber += group.limit;</span>
931
- <span class="cstat-no" title="statement not covered" > this.allTaskTime += groupMeasure.duration;</span>
932
- <span class="cstat-no" title="statement not covered" > this.averageTaskTime = this.allTaskTime / this.allTaskNumber;</span>
933
- &nbsp;
934
- /// #if process.env.NODE_ENV === 'development'
935
- <span class="cstat-no" title="statement not covered" > this.groupList.push({ ...group });</span>
936
- /// #endif
937
- }
938
- &nbsp;
939
- /** 动画帧开始 */
940
- private <span class="fstat-no" title="function not covered" >setFrameStart(</span>) {
941
- const { frame, performance } = <span class="cstat-no" title="statement not covered" >this;</span>
942
- &nbsp;
943
- <span class="cstat-no" title="statement not covered" > frame.id++;</span>
944
- <span class="cstat-no" title="statement not covered" > frame.groupTime = 0;</span>
945
- <span class="cstat-no" title="statement not covered" > frame.mark = getFrameMark(frame.id);</span>
946
- <span class="cstat-no" title="statement not covered" > performance.clear();</span>
947
- <span class="cstat-no" title="statement not covered" > performance.mark(frame.mark.FrameStart);</span>
948
- }
949
- &nbsp;
950
- /** 动画帧结束 */
951
- private <span class="fstat-no" title="function not covered" >setFrameEnd(</span>) {
952
- const { frame } = <span class="cstat-no" title="statement not covered" >this;</span>
953
- &nbsp;
954
- /// #if process.env.NODE_ENV === 'development'
955
- <span class="cstat-no" title="statement not covered" > this.frameList.push({ ...this.frame });</span>
956
- /// #endif
957
- &nbsp;
958
- // 资源不足
959
- <span class="cstat-no" title="statement not covered" > if ((frame.groupTime / frame.time) &lt; LowResourceRatio) {</span>
960
- <span class="cstat-no" title="statement not covered" > this.lowResourceFrame++;</span>
961
- }
962
- }
963
- &nbsp;
964
- /** 异步等待开始 */
965
- private <span class="fstat-no" title="function not covered" >setAsyncStart(</span>) {
966
- const { async, performance } = <span class="cstat-no" title="statement not covered" >this;</span>
967
- &nbsp;
968
- <span class="cstat-no" title="statement not covered" > async.id++;</span>
969
- <span class="cstat-no" title="statement not covered" > async.time = 0;</span>
970
- <span class="cstat-no" title="statement not covered" > async.mark = getAsyncMark(async.id);</span>
971
- <span class="cstat-no" title="statement not covered" > performance.mark(async.mark.AsyncStart);</span>
972
- }
973
- &nbsp;
974
- /** 异步等待结束 */
975
- private <span class="fstat-no" title="function not covered" >setAsyncEnd(</span>) {
976
- const { async, performance } = <span class="cstat-no" title="statement not covered" >this;</span>
977
- &nbsp;
978
- <span class="cstat-no" title="statement not covered" > performance.mark(async.mark.AsyncEnd);</span>
979
- <span class="cstat-no" title="statement not covered" > async.time = performance.measure(async.mark.AsyncMeasure, async.mark.AsyncStart, async.mark.AsyncEnd).duration;</span>
980
- <span class="cstat-no" title="statement not covered" > performance.clearByNames(async.mark.AsyncStart, async.mark.AsyncEnd, async.mark.AsyncMeasure);</span>
981
- &nbsp;
982
- /// #if process.env.NODE_ENV === 'development'
983
- <span class="cstat-no" title="statement not covered" > this.asyncList.push({ ...async });</span>
984
- /// #endif
985
- }
986
- &nbsp;
987
- <span class="fstat-no" title="function not covered" > run&lt;</span>T = void&gt;(generator: Generator&lt;any, T, void&gt;): Promise&lt;T&gt; {
988
- <span class="cstat-no" title="statement not covered" > return new Promise&lt;T&gt;(<span class="fstat-no" title="function not covered" >(r</span>esolve) =&gt; {</span>
989
- /** 生成器结果 */
990
- let result: IteratorResult&lt;void, any&gt; = <span class="cstat-no" title="statement not covered" >{</span>
991
- done: false,
992
- value: undefined,
993
- };
994
- /** 异步运行标志 */
995
- let waitAsync = <span class="cstat-no" title="statement not covered" >false;</span>
996
- &nbsp;
997
- const { group } = <span class="cstat-no" title="statement not covered" >this;</span>
998
- const isPromise = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >(i</span>nput: unknown): input is Promise&lt;any&gt; =&gt; <span class="cstat-no" title="statement not covered" >input &amp;&amp; input instanceof Promise;</span></span>
999
- &nbsp;
1000
- /** 运行帧 */
1001
- const runFrame = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >() =</span>&gt; {</span>
1002
- <span class="cstat-no" title="statement not covered" > this.setFrameStart();</span>
1003
- <span class="cstat-no" title="statement not covered" > runGroup();</span>
1004
- };
1005
- /** 运行下组任务 */
1006
- const runNextGroup = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >() =</span>&gt; {</span>
1007
- const { next, task } = <span class="cstat-no" title="statement not covered" >this.getNextData();</span>
1008
- &nbsp;
1009
- <span class="cstat-no" title="statement not covered" > group.limit = task;</span>
1010
- &nbsp;
1011
- <span class="cstat-no" title="statement not covered" > if (next === NextState.MicroTask) {</span>
1012
- <span class="cstat-no" title="statement not covered" > Promise.resolve().then(runGroup);</span>
1013
- }
1014
- else {
1015
- <span class="cstat-no" title="statement not covered" > this.setFrameEnd();</span>
1016
- <span class="cstat-no" title="statement not covered" > requestAnimationFrame(runFrame);</span>
1017
- }
1018
- };
1019
- /** 运行任务组 */
1020
- const runGroup = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >() =</span>&gt; {</span>
1021
- <span class="cstat-no" title="statement not covered" > this.setGroupStart();</span>
1022
- <span class="cstat-no" title="statement not covered" > runGroupTask();</span>
1023
- <span class="cstat-no" title="statement not covered" > this.setGroupEnd();</span>
1024
- &nbsp;
1025
- // 等待异步任务
1026
- <span class="cstat-no" title="statement not covered" > if (waitAsync) {</span>
1027
- <span class="cstat-no" title="statement not covered" > return;</span>
1028
- }
1029
- &nbsp;
1030
- // 结束运行
1031
- <span class="cstat-no" title="statement not covered" > if (result.done) {</span>
1032
- <span class="cstat-no" title="statement not covered" > this.clearState();</span>
1033
- /// #if process.env.NODE_ENV === 'development'
1034
- <span class="cstat-no" title="statement not covered" > this.displayInfo();</span>
1035
- <span class="cstat-no" title="statement not covered" > console.timeEnd(`时间分片-${this.id}`);</span>
1036
- /// #endif
1037
- <span class="cstat-no" title="statement not covered" > resolve(result.value);</span>
1038
- <span class="cstat-no" title="statement not covered" > return;</span>
1039
- }
1040
- &nbsp;
1041
- <span class="cstat-no" title="statement not covered" > runNextGroup();</span>
1042
- };
1043
- /** 运行异步任务 */
1044
- const runAsyncTask = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >(p</span>aram: unknown) =&gt; {</span>
1045
- <span class="cstat-no" title="statement not covered" > this.setAsyncEnd();</span>
1046
- <span class="cstat-no" title="statement not covered" > this.async.result = param;</span>
1047
- <span class="cstat-no" title="statement not covered" > runNextGroup();</span>
1048
- <span class="cstat-no" title="statement not covered" > waitAsync = false;</span>
1049
- <span class="cstat-no" title="statement not covered" > this.async.time = 0;</span>
1050
- };
1051
- /** 运行任务 */
1052
- const runGroupTask = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >() =</span>&gt; {</span>
1053
- let taskId = <span class="cstat-no" title="statement not covered" >0;</span>
1054
- &nbsp;
1055
- <span class="cstat-no" title="statement not covered" > while (!result.done &amp;&amp; taskId &lt; group.limit) {</span>
1056
- const lastIsPromise = <span class="cstat-no" title="statement not covered" >isPromise(result.value);</span>
1057
- const lastParam = <span class="cstat-no" title="statement not covered" >lastIsPromise ? this.async.result : result.value;</span>
1058
- &nbsp;
1059
- <span class="cstat-no" title="statement not covered" > taskId++;</span>
1060
- <span class="cstat-no" title="statement not covered" > result = generator.next(lastParam);</span>
1061
- &nbsp;
1062
- // 运行完毕
1063
- <span class="cstat-no" title="statement not covered" > if (result.done || taskId &gt;= group.limit) {</span>
1064
- <span class="cstat-no" title="statement not covered" > break;</span>
1065
- }
1066
- &nbsp;
1067
- // 返回 Promise 时,等待异步任务完成
1068
- <span class="cstat-no" title="statement not covered" > if (isPromise(result.value)) {</span>
1069
- <span class="cstat-no" title="statement not covered" > waitAsync = true;</span>
1070
- <span class="cstat-no" title="statement not covered" > this.setAsyncStart();</span>
1071
- <span class="cstat-no" title="statement not covered" > result.value</span>
1072
- .then(runAsyncTask)
1073
- .catch(<span class="fstat-no" title="function not covered" >error </span>=&gt; <span class="cstat-no" title="statement not covered" >generator.throw(error))</span>;
1074
- &nbsp;
1075
- <span class="cstat-no" title="statement not covered" > break;</span>
1076
- }
1077
- }
1078
- &nbsp;
1079
- // 记录实际运行数量
1080
- <span class="cstat-no" title="statement not covered" > group.limit = taskId;</span>
1081
- };
1082
- &nbsp;
1083
- /// #if process.env.NODE_ENV === 'development'
1084
- <span class="cstat-no" title="statement not covered" > console.time(`时间分片-${this.id}`);</span>
1085
- /// #endif
1086
- &nbsp;
1087
- // 启动分片
1088
- <span class="cstat-no" title="statement not covered" > runFrame();</span>
1089
- });
1090
- }
1091
- }
1092
- &nbsp;</pre></td></tr></table></pre>
1093
-
1094
- <div class='push'></div><!-- for sticky footer -->
1095
- </div><!-- /wrapper -->
1096
- <div class='footer quiet pad2 space-top1 center small'>
1097
- Code coverage generated by
1098
- <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
1099
- at 2023-11-18T16:22:11.588Z
1100
- </div>
1101
- <script src="../../../prettify.js"></script>
1102
- <script>
1103
- window.onload = function () {
1104
- prettyPrint();
1105
- };
1106
- </script>
1107
- <script src="../../../sorter.js"></script>
1108
- <script src="../../../block-navigation.js"></script>
1109
- </body>
1110
- </html>
1111
-