@lcap/nasl 3.6.0-alpha.4 → 3.6.0-alpha.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 (424) hide show
  1. package/.nyc_output/50a74696-517e-4e22-8a16-9eeecc5ae7c2.json +1 -0
  2. package/.nyc_output/processinfo/50a74696-517e-4e22-8a16-9eeecc5ae7c2.json +1 -0
  3. package/.nyc_output/processinfo/index.json +1 -1
  4. package/coverage/cobertura-coverage.xml +6417 -0
  5. package/coverage/index.html +127 -127
  6. package/coverage/src/automate/engine/index.html +1 -1
  7. package/coverage/src/automate/engine/utils.js.html +28 -28
  8. package/coverage/src/bak/index.html +19 -19
  9. package/coverage/src/bak/translator.js.html +59 -293
  10. package/coverage/src/breakpoint/generator/AfterStartNode.ts.html +1 -1
  11. package/coverage/src/breakpoint/generator/BeforeEndNode.ts.html +1 -1
  12. package/coverage/src/breakpoint/generator/BreakpointNode.ts.html +8 -44
  13. package/coverage/src/breakpoint/generator/CallbackNode.ts.html +10 -61
  14. package/coverage/src/breakpoint/generator/index.html +26 -26
  15. package/coverage/src/breakpoint/generator/index.ts.html +1 -1
  16. package/coverage/src/breakpoint/index.html +1 -1
  17. package/coverage/src/breakpoint/index.ts.html +1 -1
  18. package/coverage/src/breakpoint/shared/constants.ts.html +2 -8
  19. package/coverage/src/breakpoint/shared/index.html +12 -12
  20. package/coverage/src/breakpoint/shared/index.ts.html +1 -1
  21. package/coverage/src/breakpoint/shared/operations.ts.html +4 -4
  22. package/coverage/src/breakpoint/shared/socket.ts.html +1 -1
  23. package/coverage/src/breakpoint/shared/utils.ts.html +80 -29
  24. package/coverage/src/breakpoint/store/core.ts.html +12 -12
  25. package/coverage/src/breakpoint/store/dock.ts.html +1 -1
  26. package/coverage/src/breakpoint/store/index.html +1 -1
  27. package/coverage/src/breakpoint/store/index.ts.html +1 -1
  28. package/coverage/src/common/BaseNode.ts.html +235 -259
  29. package/coverage/src/common/Command.ts.html +6 -9
  30. package/coverage/src/common/EventEmitter.ts.html +34 -19
  31. package/coverage/src/common/Messager.ts.html +1 -1
  32. package/coverage/src/common/asyncFuncMap.ts.html +1 -1
  33. package/coverage/src/common/index.html +28 -28
  34. package/coverage/src/common/index.ts.html +1 -1
  35. package/coverage/src/common/utils.ts.html +1 -1
  36. package/coverage/src/concepts/Abort__.ts.html +2 -2
  37. package/coverage/src/concepts/AbstractInterface__.ts.html +6 -6
  38. package/coverage/src/concepts/Anchor__.ts.html +3 -3
  39. package/coverage/src/concepts/AnonymousFunction__.ts.html +69 -123
  40. package/coverage/src/concepts/App__.ts.html +194 -623
  41. package/coverage/src/concepts/Argument__.ts.html +30 -30
  42. package/coverage/src/concepts/Assignee__.ts.html +3 -3
  43. package/coverage/src/concepts/AssignmentLine__.ts.html +8 -8
  44. package/coverage/src/concepts/Assignment__.ts.html +9 -9
  45. package/coverage/src/concepts/Attribute__.ts.html +2 -2
  46. package/coverage/src/concepts/AuthInterface__.ts.html +2 -2
  47. package/coverage/src/concepts/AuthLogicForCallInterface__.ts.html +3 -3
  48. package/coverage/src/concepts/AuthLogic__.ts.html +2 -2
  49. package/coverage/src/concepts/BackendVariable__.ts.html +11 -35
  50. package/coverage/src/concepts/Backend__.ts.html +7 -7
  51. package/coverage/src/concepts/BatchAssignment__.ts.html +3 -3
  52. package/coverage/src/concepts/BinaryExpression__.ts.html +26 -38
  53. package/coverage/src/concepts/BindAttribute__.ts.html +15 -60
  54. package/coverage/src/concepts/BindDirective__.ts.html +20 -65
  55. package/coverage/src/concepts/BindEvent__.ts.html +31 -115
  56. package/coverage/src/concepts/BindStyle__.ts.html +3 -3
  57. package/coverage/src/concepts/Block__.ts.html +3 -3
  58. package/coverage/src/concepts/BooleanLiteral__.ts.html +8 -8
  59. package/coverage/src/concepts/CallAuthInterface__.ts.html +3 -3
  60. package/coverage/src/concepts/CallConnector__.ts.html +2 -2
  61. package/coverage/src/concepts/CallFunction__.ts.html +88 -97
  62. package/coverage/src/concepts/CallInterface__.ts.html +60 -75
  63. package/coverage/src/concepts/CallLogic__.ts.html +111 -87
  64. package/coverage/src/concepts/CallQueryComponent__.ts.html +303 -57
  65. package/coverage/src/concepts/Comment__.ts.html +2 -2
  66. package/coverage/src/concepts/CompletionProperty__.ts.html +2 -2
  67. package/coverage/src/concepts/ConfigGroup__.ts.html +8 -8
  68. package/coverage/src/concepts/ConfigPropertyValue__.ts.html +2 -2
  69. package/coverage/src/concepts/ConfigProperty__.ts.html +3 -3
  70. package/coverage/src/concepts/Configuration__.ts.html +9 -9
  71. package/coverage/src/concepts/Connection__.ts.html +3 -3
  72. package/coverage/src/concepts/ConnectorTrigger__.ts.html +2 -2
  73. package/coverage/src/concepts/Connector__.ts.html +3 -3
  74. package/coverage/src/concepts/Constant__.ts.html +18 -12
  75. package/coverage/src/concepts/CountersignPolicy__.ts.html +2 -2
  76. package/coverage/src/concepts/DataSource__.ts.html +3 -3
  77. package/coverage/src/concepts/DatabaseTypeAnnotation__.ts.html +2 -2
  78. package/coverage/src/concepts/DefaultValue__.ts.html +3 -3
  79. package/coverage/src/concepts/Destination__.ts.html +12 -18
  80. package/coverage/src/concepts/End__.ts.html +10 -13
  81. package/coverage/src/concepts/EntityIndex__.ts.html +2 -2
  82. package/coverage/src/concepts/EntityProperty__.ts.html +3 -3
  83. package/coverage/src/concepts/Entity__.ts.html +4 -10
  84. package/coverage/src/concepts/EnumItem__.ts.html +2 -2
  85. package/coverage/src/concepts/Enum__.ts.html +3 -3
  86. package/coverage/src/concepts/Event__.ts.html +12 -222
  87. package/coverage/src/concepts/ExternalDestination__.ts.html +3 -3
  88. package/coverage/src/concepts/ForEachStatement__.ts.html +3 -3
  89. package/coverage/src/concepts/FrontendLibrary__.ts.html +3 -3
  90. package/coverage/src/concepts/FrontendVariable__.ts.html +2 -2
  91. package/coverage/src/concepts/Frontend__.ts.html +770 -26
  92. package/coverage/src/concepts/Function__.ts.html +10 -10
  93. package/coverage/src/concepts/I18nInfo__.ts.html +2 -2
  94. package/coverage/src/concepts/Identifier__.ts.html +54 -102
  95. package/coverage/src/concepts/IfStatement__.ts.html +3 -3
  96. package/coverage/src/concepts/ImportedInterface__.ts.html +6 -6
  97. package/coverage/src/concepts/Integration__.ts.html +3 -3
  98. package/coverage/src/concepts/InterfaceParam__.ts.html +7 -7
  99. package/coverage/src/concepts/Interface__.ts.html +31 -73
  100. package/coverage/src/concepts/JSBlock__.ts.html +2 -2
  101. package/coverage/src/concepts/JavaLogic__.ts.html +2 -2
  102. package/coverage/src/concepts/LogicItem__.ts.html +11 -17
  103. package/coverage/src/concepts/Logic__.ts.html +150 -267
  104. package/coverage/src/concepts/MatchCase__.ts.html +3 -3
  105. package/coverage/src/concepts/Match__.ts.html +3 -3
  106. package/coverage/src/concepts/MemberExpression__.ts.html +22 -22
  107. package/coverage/src/concepts/MetadataType__.ts.html +3 -3
  108. package/coverage/src/concepts/MicroApp__.ts.html +2 -2
  109. package/coverage/src/concepts/Module__.ts.html +20 -20
  110. package/coverage/src/concepts/MsgTriggerEvent__.ts.html +3 -3
  111. package/coverage/src/concepts/MsgTriggerLauncher__.ts.html +3 -3
  112. package/coverage/src/concepts/MultiApprovalPolicy__.ts.html +2 -2
  113. package/coverage/src/concepts/Namespace__.ts.html +20 -20
  114. package/coverage/src/concepts/NewComposite__.ts.html +232 -226
  115. package/coverage/src/concepts/NewList__.ts.html +103 -115
  116. package/coverage/src/concepts/NewMap__.ts.html +158 -167
  117. package/coverage/src/concepts/New__.ts.html +2 -2
  118. package/coverage/src/concepts/NullLiteral__.ts.html +2 -2
  119. package/coverage/src/concepts/NumericLiteral__.ts.html +14 -14
  120. package/coverage/src/concepts/OqlQueryComponent__.ts.html +2 -2
  121. package/coverage/src/concepts/OverriddenLogic__.ts.html +3 -3
  122. package/coverage/src/concepts/Param__.ts.html +32 -56
  123. package/coverage/src/concepts/Point__.ts.html +2 -2
  124. package/coverage/src/concepts/ProcessComponent__.ts.html +3 -3
  125. package/coverage/src/concepts/ProcessElement__.ts.html +8 -29
  126. package/coverage/src/concepts/ProcessOutcome__.ts.html +2 -2
  127. package/coverage/src/concepts/ProcessOutcomes__.ts.html +2 -2
  128. package/coverage/src/concepts/Process__.ts.html +3 -3
  129. package/coverage/src/concepts/QueryAggregateExpression__.ts.html +2 -2
  130. package/coverage/src/concepts/QueryFieldExpression__.ts.html +2 -2
  131. package/coverage/src/concepts/QueryFromExpression__.ts.html +3 -3
  132. package/coverage/src/concepts/QueryGroupByExpression__.ts.html +2 -2
  133. package/coverage/src/concepts/QueryJoinExpression__.ts.html +3 -3
  134. package/coverage/src/concepts/QueryLimitExpression__.ts.html +6 -6
  135. package/coverage/src/concepts/QueryOrderByExpression__.ts.html +2 -2
  136. package/coverage/src/concepts/QuerySelectExpression__.ts.html +3 -3
  137. package/coverage/src/concepts/Rect__.ts.html +2 -2
  138. package/coverage/src/concepts/Return__.ts.html +36 -45
  139. package/coverage/src/concepts/Role__.ts.html +2 -2
  140. package/coverage/src/concepts/SelectMembers__.ts.html +9 -9
  141. package/coverage/src/concepts/SequentialPolicy__.ts.html +2 -2
  142. package/coverage/src/concepts/Slot__.ts.html +2 -2
  143. package/coverage/src/concepts/SqlQueryComponent__.ts.html +2 -2
  144. package/coverage/src/concepts/Start__.ts.html +7 -7
  145. package/coverage/src/concepts/StaticString__.ts.html +2 -2
  146. package/coverage/src/concepts/StringInterpolation__.ts.html +3 -3
  147. package/coverage/src/concepts/StringLiteral__.ts.html +18 -18
  148. package/coverage/src/concepts/StructureProperty__.ts.html +9 -9
  149. package/coverage/src/concepts/Structure__.ts.html +9 -9
  150. package/coverage/src/concepts/SwitchCase__.ts.html +3 -3
  151. package/coverage/src/concepts/SwitchStatement__.ts.html +3 -3
  152. package/coverage/src/concepts/Theme__.ts.html +9 -9
  153. package/coverage/src/concepts/Transactional__.ts.html +2 -2
  154. package/coverage/src/concepts/TriggerEvent__.ts.html +2 -2
  155. package/coverage/src/concepts/TriggerLauncher__.ts.html +2 -2
  156. package/coverage/src/concepts/TypeAnnotation__.ts.html +37 -37
  157. package/coverage/src/concepts/TypeParam__.ts.html +2 -2
  158. package/coverage/src/concepts/UnaryExpression__.ts.html +2 -2
  159. package/coverage/src/concepts/Unparsed__.ts.html +2 -2
  160. package/coverage/src/concepts/UseComponent__.ts.html +2 -2
  161. package/coverage/src/concepts/ValidationRule__.ts.html +6 -21
  162. package/coverage/src/concepts/Variable__.ts.html +29 -53
  163. package/coverage/src/concepts/ViewBlock__.ts.html +2 -2
  164. package/coverage/src/concepts/ViewComponent__.ts.html +3 -3
  165. package/coverage/src/concepts/ViewElement__.ts.html +61 -535
  166. package/coverage/src/concepts/View__.ts.html +60 -69
  167. package/coverage/src/concepts/WhileStatement__.ts.html +3 -3
  168. package/coverage/src/concepts/basics/constants.ts.html +1 -1
  169. package/coverage/src/concepts/basics/index.html +1 -1
  170. package/coverage/src/concepts/basics/stdlib/index.html +1 -1
  171. package/coverage/src/concepts/basics/stdlib/index.ts.html +1 -1
  172. package/coverage/src/concepts/basics/stdlib/nasl.auth.ts.html +1 -1
  173. package/coverage/src/concepts/basics/stdlib/nasl.browser.ts.html +1 -1
  174. package/coverage/src/concepts/basics/stdlib/nasl.collection.ts.html +1 -1
  175. package/coverage/src/concepts/basics/stdlib/nasl.configuration.ts.html +1 -1
  176. package/coverage/src/concepts/basics/stdlib/nasl.core.ts.html +1 -1
  177. package/coverage/src/concepts/basics/stdlib/nasl.event.ts.html +1 -1
  178. package/coverage/src/concepts/basics/stdlib/nasl.http.ts.html +1 -1
  179. package/coverage/src/concepts/basics/stdlib/nasl.interface.ts.html +1 -1
  180. package/coverage/src/concepts/basics/stdlib/nasl.io.ts.html +1 -1
  181. package/coverage/src/concepts/basics/stdlib/nasl.logging.ts.html +1 -1
  182. package/coverage/src/concepts/basics/stdlib/nasl.process.ts.html +1 -1
  183. package/coverage/src/concepts/basics/stdlib/nasl.ui.ts.html +1 -1
  184. package/coverage/src/concepts/basics/stdlib/nasl.util.ts.html +32 -32
  185. package/coverage/src/concepts/basics/stdlib/nasl.validation.ts.html +1 -1
  186. package/coverage/src/concepts/basics/stdlib/reference2TypeAnnotationList.ts.html +2 -2
  187. package/coverage/src/concepts/basics/stdlib/timeZone.ts.html +1 -1
  188. package/coverage/src/concepts/basics/types/coreTypeList.ts.html +1 -1
  189. package/coverage/src/concepts/basics/types/index.html +1 -1
  190. package/coverage/src/concepts/basics/types/index.ts.html +1 -1
  191. package/coverage/src/concepts/index.html +239 -329
  192. package/coverage/src/concepts/index.ts.html +2 -2
  193. package/coverage/src/concepts/index__.ts.html +4 -22
  194. package/coverage/src/concepts/utils/asserts.ts.html +26 -1334
  195. package/coverage/src/concepts/utils/index.html +18 -33
  196. package/coverage/src/concepts/utils/types.ts.html +2 -101
  197. package/coverage/src/config.ts.html +2 -2
  198. package/coverage/src/decorators/index.html +18 -18
  199. package/coverage/src/decorators/index.ts.html +57 -42
  200. package/coverage/src/decorators/promise.ts.html +1 -1
  201. package/coverage/src/eventBus.ts.html +1 -1
  202. package/coverage/src/generator/compileComponent.ts.html +1 -1
  203. package/coverage/src/generator/genBundleFiles.ts.html +45 -180
  204. package/coverage/src/generator/genHash.ts.html +2 -2
  205. package/coverage/src/generator/genMetaData.ts.html +11 -14
  206. package/coverage/src/generator/genReleaseBody.ts.html +13 -46
  207. package/coverage/src/generator/icestark.ts.html +1 -1
  208. package/coverage/src/generator/index.html +36 -36
  209. package/coverage/src/generator/index.ts.html +1 -1
  210. package/coverage/src/generator/microApp.ts.html +1 -1
  211. package/coverage/src/generator/permission.ts.html +10 -16
  212. package/coverage/src/generator/qiankun.ts.html +1 -1
  213. package/coverage/src/generator/styleReplacer.ts.html +1 -1
  214. package/coverage/src/index.html +1 -1
  215. package/coverage/src/index.ts.html +2 -2
  216. package/coverage/src/manager/diagnostic.ts.html +1 -1
  217. package/coverage/src/manager/index.html +1 -1
  218. package/coverage/src/manager/stepRecorder.ts.html +1 -1
  219. package/coverage/src/natural/genNaturalTS.ts.html +1 -1
  220. package/coverage/src/natural/index.html +1 -1
  221. package/coverage/src/natural/index.ts.html +1 -1
  222. package/coverage/src/natural/naslStdlibMap.ts.html +1 -1
  223. package/coverage/src/natural/transformTSCode.ts.html +3 -3
  224. package/coverage/src/sentry/index.html +1 -1
  225. package/coverage/src/sentry/index.ts.html +25 -25
  226. package/coverage/src/server/createUiTs.ts.html +1 -1
  227. package/coverage/src/server/entity2LogicNamespace.ts.html +1 -1
  228. package/coverage/src/server/event.js.html +1 -1
  229. package/coverage/src/server/extendBaseNode.ts.html +30 -99
  230. package/coverage/src/server/formatTsUtils.ts.html +18 -27
  231. package/coverage/src/server/getConnector.ts.html +1 -1
  232. package/coverage/src/server/getExtensionModules.ts.html +1 -1
  233. package/coverage/src/server/getFunctions.ts.html +1 -1
  234. package/coverage/src/server/getInterfaces.ts.html +1 -1
  235. package/coverage/src/server/getLogging.ts.html +1 -1
  236. package/coverage/src/server/getLogics.ts.html +66 -180
  237. package/coverage/src/server/getMemberIdentifier.ts.html +9 -27
  238. package/coverage/src/server/getProcessComponents.ts.html +1 -1
  239. package/coverage/src/server/getProcesses.ts.html +6 -6
  240. package/coverage/src/server/getValidates.ts.html +1 -1
  241. package/coverage/src/server/index.html +58 -58
  242. package/coverage/src/server/index.ts.html +1 -1
  243. package/coverage/src/server/naslServer.ts.html +127 -163
  244. package/coverage/src/server/naslStdlibMap.ts.html +1 -1
  245. package/coverage/src/server/process2LogicNamespace.ts.html +1 -1
  246. package/coverage/src/server/translator.ts.html +16 -67
  247. package/coverage/src/service/creator/add.configs.js.html +1 -1
  248. package/coverage/src/service/creator/errHandles.js.html +1 -1
  249. package/coverage/src/service/creator/index.html +1 -1
  250. package/coverage/src/service/creator/index.js.html +2 -2
  251. package/coverage/src/service/datasource/api.js.html +1 -1
  252. package/coverage/src/service/datasource/index.html +1 -1
  253. package/coverage/src/service/datasource/index.js.html +1 -1
  254. package/coverage/src/service/logic/api.js.html +1 -1
  255. package/coverage/src/service/logic/index.html +1 -1
  256. package/coverage/src/service/logic/index.js.html +1 -1
  257. package/coverage/src/service/storage/api.js.html +1 -1
  258. package/coverage/src/service/storage/index.html +17 -17
  259. package/coverage/src/service/storage/index.ts.html +2 -2
  260. package/coverage/src/service/storage/init.ts.html +13 -100
  261. package/coverage/src/service/storage/jsoner.ts.html +1 -1
  262. package/coverage/src/service/storage/map.ts.html +4 -4
  263. package/coverage/src/service/storage/service.ts.html +1 -1
  264. package/coverage/src/service/storage/storagePoint.ts.html +1 -1
  265. package/coverage/src/templator/genCallComponentLogic.ts.html +1 -1
  266. package/coverage/src/templator/genCreateBlock.ts.html +8 -8
  267. package/coverage/src/templator/genCurdEditMultipleKeyBlock.ts.html +18 -18
  268. package/coverage/src/templator/genCurdMultipleKeyBlock.ts.html +126 -2298
  269. package/coverage/src/templator/genEditTableBlock.ts.html +2 -2
  270. package/coverage/src/templator/genEnumSelectBlock.ts.html +1 -1
  271. package/coverage/src/templator/genGetBlock.ts.html +13 -16
  272. package/coverage/src/templator/genGridViewBlock.ts.html +14 -14
  273. package/coverage/src/templator/genListViewBlock.ts.html +6 -6
  274. package/coverage/src/templator/genQueryComponent.ts.html +55 -40
  275. package/coverage/src/templator/genSelectBlock.ts.html +5 -5
  276. package/coverage/src/templator/genTableBlock.ts.html +22 -397
  277. package/coverage/src/templator/genUpdateBlock.ts.html +17 -20
  278. package/coverage/src/templator/index.html +55 -55
  279. package/coverage/src/templator/index.ts.html +2 -2
  280. package/coverage/src/templator/utils.ts.html +62 -35
  281. package/coverage/src/translator/constant.ts.html +1 -1
  282. package/coverage/src/translator/index.html +19 -19
  283. package/coverage/src/translator/index.ts.html +2 -2
  284. package/coverage/src/translator/types.ts.html +1 -1
  285. package/coverage/src/translator/utils.ts.html +56 -89
  286. package/coverage/src/utils/cookie.ts.html +1 -1
  287. package/coverage/src/utils/env.ts.html +2 -2
  288. package/coverage/src/utils/i18nInfo.ts.html +4 -19
  289. package/coverage/src/utils/index.html +19 -19
  290. package/coverage/src/utils/index.ts.html +17 -647
  291. package/coverage/src/utils/logger.ts.html +1 -1
  292. package/coverage/src/utils/sortTsString.ts.html +1 -1
  293. package/coverage/src/utils/string.ts.html +1 -1
  294. package/coverage/src/utils/time-slicing/constant.ts.html +1 -1
  295. package/coverage/src/utils/time-slicing/controller.ts.html +1 -1
  296. package/coverage/src/utils/time-slicing/index.html +1 -1
  297. package/coverage/src/utils/time-slicing/index.ts.html +2 -2
  298. package/coverage/src/utils/time-slicing/page-state.ts.html +1 -1
  299. package/coverage/src/utils/time-slicing/performance.ts.html +1 -1
  300. package/coverage/src/utils/time-slicing/runner.ts.html +6 -6
  301. package/coverage/src/utils/time-slicing/tool.ts.html +1 -1
  302. package/coverage/src/utils/time-slicing/utils.ts.html +3 -3
  303. package/coverage/src/utils/time-slicing/wrapper.ts.html +9 -9
  304. package/coverage/src/{concepts/ParamWithGroup__.ts.html → utils/time-slicing.ts.html} +142 -112
  305. package/coverage/src/utils/traverse.ts.html +1 -1
  306. package/coverage/src/utils/types.ts.html +1 -1
  307. package/coverage/src/utils/window.ts.html +1 -1
  308. package/out/automate/engine/utils.d.ts +1 -1
  309. package/out/automate/engine/utils.js +1 -5
  310. package/out/automate/engine/utils.js.map +1 -1
  311. package/out/common/BaseNode.js +23 -2
  312. package/out/common/BaseNode.js.map +1 -1
  313. package/out/common/EventEmitter.d.ts +1 -0
  314. package/out/common/EventEmitter.js.map +1 -1
  315. package/out/concepts/App__.d.ts +8 -0
  316. package/out/concepts/App__.js +60 -4
  317. package/out/concepts/App__.js.map +1 -1
  318. package/out/concepts/BinaryExpression__.js +24 -1
  319. package/out/concepts/BinaryExpression__.js.map +1 -1
  320. package/out/concepts/CallLogic__.js +1 -1
  321. package/out/concepts/CallLogic__.js.map +1 -1
  322. package/out/concepts/FrontendType__.js +1 -0
  323. package/out/concepts/FrontendType__.js.map +1 -1
  324. package/out/concepts/Interface__.js +2 -0
  325. package/out/concepts/Interface__.js.map +1 -1
  326. package/out/concepts/Logic__.js +3 -0
  327. package/out/concepts/Logic__.js.map +1 -1
  328. package/out/concepts/Paginate__.d.ts +3 -0
  329. package/out/concepts/Paginate__.js +23 -2
  330. package/out/concepts/Paginate__.js.map +1 -1
  331. package/out/concepts/Structure__.js +2 -0
  332. package/out/concepts/Structure__.js.map +1 -1
  333. package/out/concepts/ViewElement__.js +4 -2
  334. package/out/concepts/ViewElement__.js.map +1 -1
  335. package/out/concepts/View__.d.ts +4 -0
  336. package/out/concepts/View__.js +12 -0
  337. package/out/concepts/View__.js.map +1 -1
  338. package/out/concepts/basics/stdlib/nasl.auth.js +68 -33
  339. package/out/concepts/basics/stdlib/nasl.auth.js.map +1 -1
  340. package/out/enums/KEYWORDS.js +2 -0
  341. package/out/enums/KEYWORDS.js.map +1 -1
  342. package/out/generator/genBundleFiles.d.ts +2 -0
  343. package/out/generator/genBundleFiles.js +18 -4
  344. package/out/generator/genBundleFiles.js.map +1 -1
  345. package/out/generator/permission.d.ts +5 -1
  346. package/out/generator/permission.js +2 -1
  347. package/out/generator/permission.js.map +1 -1
  348. package/out/natural/genNaturalTS.js +2 -5
  349. package/out/natural/genNaturalTS.js.map +1 -1
  350. package/out/natural/index.d.ts +2 -0
  351. package/out/natural/index.js +2 -0
  352. package/out/natural/index.js.map +1 -1
  353. package/out/natural/naslStdlibMap.d.ts +1 -2
  354. package/out/natural/naslStdlibMap.js +32 -23
  355. package/out/natural/naslStdlibMap.js.map +1 -1
  356. package/out/natural/prompt/analyzeClaims.d.ts +1 -0
  357. package/out/natural/prompt/analyzeClaims.js +21 -0
  358. package/out/natural/prompt/analyzeClaims.js.map +1 -0
  359. package/out/natural/prompt/executeClaims.d.ts +1 -0
  360. package/out/natural/prompt/executeClaims.js +73 -0
  361. package/out/natural/prompt/executeClaims.js.map +1 -0
  362. package/out/natural/transformTSCode.js +13 -2
  363. package/out/natural/transformTSCode.js.map +1 -1
  364. package/out/server/extendBaseNode.js +35 -8
  365. package/out/server/extendBaseNode.js.map +1 -1
  366. package/out/server/getLogics.js +3 -3
  367. package/out/server/getLogics.js.map +1 -1
  368. package/out/server/getMemberIdentifier.js +16 -16
  369. package/out/server/getMemberIdentifier.js.map +1 -1
  370. package/out/server/naslServer.d.ts +1 -0
  371. package/out/server/naslServer.js +7 -2
  372. package/out/server/naslServer.js.map +1 -1
  373. package/out/server/translator.js +8 -0
  374. package/out/server/translator.js.map +1 -1
  375. package/out/service/storage/init.d.ts +1 -0
  376. package/out/service/storage/init.js +6 -2
  377. package/out/service/storage/init.js.map +1 -1
  378. package/out/translator/types.d.ts +1 -0
  379. package/package.json +1 -1
  380. package/sandbox/stdlib/nasl.auth.ts +4 -0
  381. package/sandbox/stdlib/nasl.core.ts +12 -0
  382. package/sandbox-natural/stdlib/nasl.core.ts +3 -0
  383. package/sandbox-natural/stdlib/nasl.oql.ts +4 -3
  384. package/src/automate/engine/utils.js +1 -5
  385. package/src/common/BaseNode.ts +31 -3
  386. package/src/common/EventEmitter.ts +1 -0
  387. package/src/concepts/App__.ts +61 -4
  388. package/src/concepts/BinaryExpression__.ts +23 -1
  389. package/src/concepts/CallLogic__.ts +1 -1
  390. package/src/concepts/FrontendType__.ts +1 -0
  391. package/src/concepts/Interface__.ts +2 -0
  392. package/src/concepts/Logic__.ts +2 -0
  393. package/src/concepts/Paginate__.ts +24 -3
  394. package/src/concepts/Structure__.ts +2 -0
  395. package/src/concepts/ViewElement__.ts +4 -2
  396. package/src/concepts/View__.ts +13 -0
  397. package/src/concepts/basics/stdlib/nasl.auth.ts +97 -34
  398. package/src/enums/KEYWORDS.ts +2 -0
  399. package/src/generator/genBundleFiles.ts +19 -4
  400. package/src/generator/permission.ts +1 -1
  401. package/src/natural/genNaturalTS.ts +2 -2
  402. package/src/natural/index.ts +3 -0
  403. package/src/natural/naslStdlibMap.ts +25 -19
  404. package/src/natural/prompt/analyzeClaims.ts +16 -0
  405. package/src/natural/prompt/executeClaims.ts +69 -0
  406. package/src/natural/transformTSCode.ts +12 -2
  407. package/src/server/extendBaseNode.ts +45 -14
  408. package/src/server/getLogics.ts +3 -3
  409. package/src/server/getMemberIdentifier.ts +18 -18
  410. package/src/server/naslServer.ts +7 -2
  411. package/src/server/translator.ts +7 -0
  412. package/src/service/storage/init.ts +7 -2
  413. package/src/translator/types.ts +3 -0
  414. package/test/concepts/view-element/__snapshots__/toEmbeddedTS.spec.ts.snap +199 -0
  415. package/test/concepts/view-element/__snapshots__/toVue.spec.ts.snap +121 -0
  416. package/test/concepts/view-element/fixtures/table-data-source-calllogic-with-server-validation.json +2074 -0
  417. package/.nyc_output/477a0953-2b01-4d2a-affe-d4aaf3b0191c.json +0 -1
  418. package/.nyc_output/processinfo/477a0953-2b01-4d2a-affe-d4aaf3b0191c.json +0 -1
  419. package/coverage/src/concepts/BusinessComponent__.ts.html +0 -8164
  420. package/coverage/src/concepts/BusinessLogic__.ts.html +0 -1213
  421. package/coverage/src/concepts/CallEvent__.ts.html +0 -1138
  422. package/coverage/src/concepts/FrontendType__.ts.html +0 -2842
  423. package/coverage/src/concepts/Paginate__.ts.html +0 -1033
  424. package/coverage/src/concepts/utils/quick-info.ts.html +0 -277
@@ -1,1138 +0,0 @@
1
-
2
- <!doctype html>
3
- <html lang="en">
4
-
5
- <head>
6
- <title>Code coverage report for src/concepts/CallEvent__.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/concepts</a> CallEvent__.ts</h1>
23
- <div class='clearfix'>
24
-
25
- <div class='fl pad1y space-right2'>
26
- <span class="strong">15.65% </span>
27
- <span class="quiet">Statements</span>
28
- <span class='fraction'>18/115</span>
29
- </div>
30
-
31
-
32
- <div class='fl pad1y space-right2'>
33
- <span class="strong">8.77% </span>
34
- <span class="quiet">Branches</span>
35
- <span class='fraction'>5/57</span>
36
- </div>
37
-
38
-
39
- <div class='fl pad1y space-right2'>
40
- <span class="strong">4.54% </span>
41
- <span class="quiet">Functions</span>
42
- <span class='fraction'>1/22</span>
43
- </div>
44
-
45
-
46
- <div class='fl pad1y space-right2'>
47
- <span class="strong">12.38% </span>
48
- <span class="quiet">Lines</span>
49
- <span class='fraction'>13/105</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></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1194x</span>
418
- <span class="cline-any cline-neutral">&nbsp;</span>
419
- <span class="cline-any cline-neutral">&nbsp;</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-yes">1x</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-neutral">&nbsp;</span>
429
- <span class="cline-any cline-neutral">&nbsp;</span>
430
- <span class="cline-any cline-neutral">&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-yes">1x</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-yes">1x</span>
438
- <span class="cline-any cline-neutral">&nbsp;</span>
439
- <span class="cline-any cline-yes">1x</span>
440
- <span class="cline-any cline-neutral">&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-yes">1x</span>
447
- <span class="cline-any cline-neutral">&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-neutral">&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-neutral">&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-yes">1x</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-neutral">&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-yes">1x</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-yes">1x</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-yes">1x</span>
477
- <span class="cline-any cline-neutral">&nbsp;</span>
478
- <span class="cline-any cline-neutral">&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-neutral">&nbsp;</span>
482
- <span class="cline-any cline-neutral">&nbsp;</span>
483
- <span class="cline-any cline-neutral">&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-yes">1x</span>
487
- <span class="cline-any cline-neutral">&nbsp;</span>
488
- <span class="cline-any cline-neutral">&nbsp;</span>
489
- <span class="cline-any cline-neutral">&nbsp;</span>
490
- <span class="cline-any cline-neutral">&nbsp;</span>
491
- <span class="cline-any cline-neutral">&nbsp;</span>
492
- <span class="cline-any cline-no">&nbsp;</span>
493
- <span class="cline-any cline-no">&nbsp;</span>
494
- <span class="cline-any cline-no">&nbsp;</span>
495
- <span class="cline-any cline-neutral">&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-neutral">&nbsp;</span>
505
- <span class="cline-any cline-no">&nbsp;</span>
506
- <span class="cline-any cline-neutral">&nbsp;</span>
507
- <span class="cline-any cline-neutral">&nbsp;</span>
508
- <span class="cline-any cline-no">&nbsp;</span>
509
- <span class="cline-any cline-neutral">&nbsp;</span>
510
- <span class="cline-any cline-neutral">&nbsp;</span>
511
- <span class="cline-any cline-neutral">&nbsp;</span>
512
- <span class="cline-any cline-neutral">&nbsp;</span>
513
- <span class="cline-any cline-neutral">&nbsp;</span>
514
- <span class="cline-any cline-neutral">&nbsp;</span>
515
- <span class="cline-any cline-neutral">&nbsp;</span>
516
- <span class="cline-any cline-neutral">&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-neutral">&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-no">&nbsp;</span>
530
- <span class="cline-any cline-no">&nbsp;</span>
531
- <span class="cline-any cline-neutral">&nbsp;</span>
532
- <span class="cline-any cline-no">&nbsp;</span>
533
- <span class="cline-any cline-no">&nbsp;</span>
534
- <span class="cline-any cline-no">&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-no">&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-neutral">&nbsp;</span>
545
- <span class="cline-any cline-neutral">&nbsp;</span>
546
- <span class="cline-any cline-no">&nbsp;</span>
547
- <span class="cline-any cline-no">&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-neutral">&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-neutral">&nbsp;</span>
566
- <span class="cline-any cline-neutral">&nbsp;</span>
567
- <span class="cline-any cline-neutral">&nbsp;</span>
568
- <span class="cline-any cline-neutral">&nbsp;</span>
569
- <span class="cline-any cline-no">&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-neutral">&nbsp;</span>
574
- <span class="cline-any cline-neutral">&nbsp;</span>
575
- <span class="cline-any cline-neutral">&nbsp;</span>
576
- <span class="cline-any cline-neutral">&nbsp;</span>
577
- <span class="cline-any cline-neutral">&nbsp;</span>
578
- <span class="cline-any cline-neutral">&nbsp;</span>
579
- <span class="cline-any cline-neutral">&nbsp;</span>
580
- <span class="cline-any cline-neutral">&nbsp;</span>
581
- <span class="cline-any cline-neutral">&nbsp;</span>
582
- <span class="cline-any cline-neutral">&nbsp;</span>
583
- <span class="cline-any cline-neutral">&nbsp;</span>
584
- <span class="cline-any cline-neutral">&nbsp;</span>
585
- <span class="cline-any cline-neutral">&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-neutral">&nbsp;</span>
590
- <span class="cline-any cline-neutral">&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-neutral">&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-neutral">&nbsp;</span>
600
- <span class="cline-any cline-neutral">&nbsp;</span>
601
- <span class="cline-any cline-neutral">&nbsp;</span>
602
- <span class="cline-any cline-neutral">&nbsp;</span>
603
- <span class="cline-any cline-neutral">&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-no">&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-neutral">&nbsp;</span>
611
- <span class="cline-any cline-no">&nbsp;</span>
612
- <span class="cline-any cline-neutral">&nbsp;</span>
613
- <span class="cline-any cline-neutral">&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-neutral">&nbsp;</span>
618
- <span class="cline-any cline-neutral">&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-no">&nbsp;</span>
622
- <span class="cline-any cline-no">&nbsp;</span>
623
- <span class="cline-any cline-neutral">&nbsp;</span>
624
- <span class="cline-any cline-neutral">&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-neutral">&nbsp;</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-no">&nbsp;</span>
635
- <span class="cline-any cline-no">&nbsp;</span>
636
- <span class="cline-any cline-neutral">&nbsp;</span>
637
- <span class="cline-any cline-no">&nbsp;</span>
638
- <span class="cline-any cline-neutral">&nbsp;</span>
639
- <span class="cline-any cline-no">&nbsp;</span>
640
- <span class="cline-any cline-no">&nbsp;</span>
641
- <span class="cline-any cline-neutral">&nbsp;</span>
642
- <span class="cline-any cline-no">&nbsp;</span>
643
- <span class="cline-any cline-no">&nbsp;</span>
644
- <span class="cline-any cline-no">&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-no">&nbsp;</span>
648
- <span class="cline-any cline-no">&nbsp;</span>
649
- <span class="cline-any cline-no">&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-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-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-neutral">&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-neutral">&nbsp;</span>
673
- <span class="cline-any cline-neutral">&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-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-neutral">&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-neutral">&nbsp;</span>
685
- <span class="cline-any cline-neutral">&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-neutral">&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-neutral">&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-neutral">&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-neutral">&nbsp;</span>
700
- <span class="cline-any cline-no">&nbsp;</span>
701
- <span class="cline-any cline-no">&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-neutral">&nbsp;</span>
706
- <span class="cline-any cline-no">&nbsp;</span>
707
- <span class="cline-any cline-neutral">&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-no">&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-neutral">&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-neutral">&nbsp;</span>
718
- <span class="cline-any cline-neutral">&nbsp;</span>
719
- <span class="cline-any cline-yes">1x</span>
720
- <span class="cline-any cline-no">&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-no">&nbsp;</span>
724
- <span class="cline-any cline-no">&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-neutral">&nbsp;</span>
729
- <span class="cline-any cline-neutral">&nbsp;</span>
730
- <span class="cline-any cline-no">&nbsp;</span>
731
- <span class="cline-any cline-no">&nbsp;</span>
732
- <span class="cline-any cline-no">&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-neutral">&nbsp;</span>
736
- <span class="cline-any cline-no">&nbsp;</span>
737
- <span class="cline-any cline-no">&nbsp;</span>
738
- <span class="cline-any cline-no">&nbsp;</span>
739
- <span class="cline-any cline-no">&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-no">&nbsp;</span>
744
- <span class="cline-any cline-no">&nbsp;</span>
745
- <span class="cline-any cline-no">&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-no">&nbsp;</span>
749
- <span class="cline-any cline-no">&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-neutral">&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-neutral">&nbsp;</span>
757
- <span class="cline-any cline-neutral">&nbsp;</span>
758
- <span class="cline-any cline-neutral">&nbsp;</span>
759
- <span class="cline-any cline-neutral">&nbsp;</span>
760
- <span class="cline-any cline-neutral">&nbsp;</span>
761
- <span class="cline-any cline-neutral">&nbsp;</span>
762
- <span class="cline-any cline-neutral">&nbsp;</span>
763
- <span class="cline-any cline-yes">1x</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-neutral">&nbsp;</span>
767
- <span class="cline-any cline-neutral">&nbsp;</span>
768
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import { wrapForEachToGenerator as wrapForEach } from '../utils/time-slicing';
769
- import {
770
- TranslatorState,
771
- shiftState,
772
- createCompilerState,
773
- withSourceMapGenerator,
774
- TranslatorGenerator,
775
- } from '../translator';
776
- import type Event from './Event__';
777
- import type Param from './Param__';
778
- import { BusinessComponent } from './BusinessComponent__';
779
- //================================================================================
780
- // 从这里开始到结尾注释之间的代码由 NASL Workbench 自动生成,请不手动修改!
781
- // ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
782
- //================================================================================
783
- import { EventPayload, Params } from '../common/EventEmitter';
784
- import { concept, excludedInJSON, property, getConceptConstructor } from '../decorators';
785
- &nbsp;
786
- import * as utils from '../utils';
787
- import * as types from './utils/types';
788
- import * as asserts from './utils/asserts';
789
- import { v4 as uuidv4 } from 'uuid';
790
- import LogicItem from './LogicItem__';
791
- import type Argument from './Argument__';
792
- &nbsp;
793
- /**
794
- * 触发事件
795
- */
796
- @concept('触发事件')
797
- export class CallEvent extends LogicItem {
798
- /** 类名 */
799
- static readonly ConceptName: string = 'CallEvent';
800
- &nbsp;
801
- /** 继承链 */
802
- static readonly inheritanceChain: string[] = ['LogicItem', 'BaseNode'];
803
- &nbsp;
804
- /**
805
- * 产品概念
806
- */
807
- @property('concept')
808
- // @ts-ignore
809
- readonly concept!: 'CallEvent';
810
- &nbsp;
811
- /**
812
- * 触发事件标题
813
- */
814
- @property()
815
- <span class="cstat-no" title="statement not covered" > label: string = '触发事件';</span>
816
- &nbsp;
817
- /**
818
- * calleeNamespace
819
- */
820
- @property()
821
- calleeNamespace!: string;
822
- &nbsp;
823
- /**
824
- * calleeName
825
- */
826
- @property()
827
- calleeName!: string;
828
- &nbsp;
829
- /**
830
- * 参数
831
- */
832
- @property({
833
- objectRef: 'Argument',
834
- isArray: true,
835
- defaultValue: [],
836
- })
837
- <span class="cstat-no" title="statement not covered" > arguments: Array&lt;Argument&gt; = [];</span>
838
- &nbsp;
839
- /**
840
- * @param source 需要合并的部分参数
841
- */
842
- <span class="fstat-no" title="function not covered" > constructor(s</span>ource?: Partial&lt;CallEvent&gt;) {
843
- <span class="cstat-no" title="statement not covered" > source = Object.assign({}, CallEvent.getDefaultOptions(), source);</span>
844
- <span class="cstat-no" title="statement not covered" > super(source);</span>
845
- <span class="cstat-no" title="statement not covered" > super.subConstructor(source);</span>
846
- }
847
- &nbsp;
848
- <span class="fstat-no" title="function not covered" > static f</span>rom(source: any, parentNode?: any, parentKey?: string): CallEvent {
849
- <span class="cstat-no" title="statement not covered" > return super.from(source, parentNode, parentKey) as CallEvent;</span>
850
- }
851
- &nbsp;
852
- /**
853
- * 设置calleeName
854
- */
855
- <span class="fstat-no" title="function not covered" > setCalleeName(c</span>alleeName: string) {
856
- const object = <span class="cstat-no" title="statement not covered" >{</span>
857
- calleeName,
858
- };
859
- <span class="cstat-no" title="statement not covered" > this.update({</span>
860
- ...object,
861
- });
862
- }
863
- &nbsp;
864
- /**
865
- * 插入实际参数
866
- * @internal
867
- * @param argumentOptions 实际参数参数
868
- */
869
- _insertArgumentAt(argumentOptions: Partial&lt;Argument&gt;, index: number): Argument;
870
- &nbsp;
871
- /**
872
- * 插入实际参数
873
- * @internal
874
- * @param argument 已有的实际参数实例
875
- */
876
- _insertArgumentAt(argument: Argument, index: number): Argument;
877
- &nbsp;
878
- <span class="fstat-no" title="function not covered" > _insertArgumentAt(o</span>ptions: Partial&lt;Argument&gt; | Argument, index: number) {
879
- const argumentOptions: any = <span class="cstat-no" title="statement not covered" >{};</span>
880
- const relationOptions = <span class="cstat-no" title="statement not covered" >{ parentNode: this, parentKey: 'arguments' };</span>
881
- const <span class="cstat-no" title="statement not covered" >Argument = getConceptConstructor('Argument');</span>
882
- let argument: Argument;
883
- <span class="cstat-no" title="statement not covered" > if (asserts.isArgument(options)) {</span>
884
- <span class="cstat-no" title="statement not covered" > options.ensureDelete(); // 同一实例不支持多处存在</span>
885
- <span class="cstat-no" title="statement not covered" > argument = options;</span>
886
- <span class="cstat-no" title="statement not covered" > Object.assign(argument, relationOptions);</span>
887
- } else {
888
- <span class="cstat-no" title="statement not covered" > argument = Argument.from(</span>
889
- {
890
- ...argumentOptions,
891
- ...options,
892
- },
893
- this,
894
- 'arguments',
895
- );
896
- }
897
- <span class="cstat-no" title="statement not covered" > this.arguments.splice(index, 0, argument);</span>
898
- <span class="cstat-no" title="statement not covered" > return argument;</span>
899
- }
900
- &nbsp;
901
- /**
902
- * 插入实际参数
903
- * @param argumentOptions 实际参数参数
904
- */
905
- insertArgumentAt(argumentOptions: Partial&lt;Argument&gt;, index: number): Argument;
906
- &nbsp;
907
- /**
908
- * 插入实际参数
909
- * @param argument 已有的实际参数实例
910
- */
911
- insertArgumentAt(argument: Argument, index: number): Argument;
912
- &nbsp;
913
- <span class="fstat-no" title="function not covered" > insertArgumentAt(o</span>ptions: Partial&lt;Argument&gt; | Argument, index: number) {
914
- const node = <span class="cstat-no" title="statement not covered" >this._insertArgumentAt(options as any, index);</span>
915
- <span class="cstat-no" title="statement not covered" > node.create({</span>
916
- index,
917
- parentNode: this,
918
- parentKey: 'arguments',
919
- });
920
- <span class="cstat-no" title="statement not covered" > return node;</span>
921
- }
922
- &nbsp;
923
- /**
924
- * 添加实际参数
925
- * @internal
926
- * @param argumentOptions 实际参数参数
927
- */
928
- _addArgument(argumentOptions: Partial&lt;Argument&gt;): Argument;
929
- &nbsp;
930
- /**
931
- * 添加实际参数
932
- * @internal
933
- * @param argument 已有的实际参数实例
934
- */
935
- _addArgument(argument: Argument): Argument;
936
- &nbsp;
937
- <span class="fstat-no" title="function not covered" > _addArgument(o</span>ptions?: Partial&lt;Argument&gt; | Argument) {
938
- const index = <span class="cstat-no" title="statement not covered" >this.arguments.length;</span>
939
- <span class="cstat-no" title="statement not covered" > return this._insertArgumentAt(options as any, index);</span>
940
- }
941
- &nbsp;
942
- /**
943
- * 添加实际参数
944
- * @param argumentOptions 实际参数参数
945
- */
946
- addArgument(argumentOptions: Partial&lt;Argument&gt;): Argument;
947
- &nbsp;
948
- /**
949
- * 添加实际参数
950
- * @param argument 已有的实际参数实例
951
- */
952
- addArgument(argument: Argument): Argument;
953
- &nbsp;
954
- <span class="fstat-no" title="function not covered" > addArgument(o</span>ptions?: Partial&lt;Argument&gt; | Argument) {
955
- const node = <span class="cstat-no" title="statement not covered" >this._addArgument(options as any);</span>
956
- const index = <span class="cstat-no" title="statement not covered" >this.arguments.indexOf(node);</span>
957
- <span class="cstat-no" title="statement not covered" > node.create({</span>
958
- index,
959
- parentNode: this,
960
- parentKey: 'arguments',
961
- });
962
- <span class="cstat-no" title="statement not covered" > return node;</span>
963
- }
964
- &nbsp;
965
- /**
966
- * 删除实际参数
967
- * @param argument 已有的实际参数实例
968
- */
969
- removeArgument(argument: Argument): void;
970
- &nbsp;
971
- <span class="fstat-no" title="function not covered" > removeArgument(o</span>ptions: Argument) {
972
- let argument: Argument = <span class="cstat-no" title="statement not covered" >options;</span>
973
- <span class="cstat-no" title="statement not covered" > return argument.delete();</span>
974
- }
975
- &nbsp;
976
- <span class="fstat-no" title="function not covered" > __removeLogicItem(l</span>ogicItem: LogicItem) {
977
- const parentKey = <span class="cstat-no" title="statement not covered" >logicItem.parentKey;</span>
978
- const params: Params = <span class="cstat-no" title="statement not covered" >{</span>
979
- parentNode: this,
980
- parentKey,
981
- index: -1,
982
- object: null,
983
- oldObject: logicItem,
984
- };
985
- <span class="cstat-no" title="statement not covered" > if (parentKey) {</span>
986
- <span class="cstat-no" title="statement not covered" > params.parentKey = parentKey;</span>
987
- // @ts-ignore
988
- const t = <span class="cstat-no" title="statement not covered" >this.__v_raw || this;</span>
989
- // @ts-ignore
990
- const n = <span class="cstat-no" title="statement not covered" >logicItem.__v_raw || logicItem;</span>
991
- <span class="cstat-no" title="statement not covered" > if (Array.isArray((t as any)[parentKey])) {</span>
992
- // @ts-ignore
993
- const index = (<span class="cstat-no" title="statement not covered" >t as any)[parentKey].findIndex((<span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >el) =&gt; (e</span>l.__v_raw || el) === n)</span>;</span>
994
- <span class="cstat-no" title="statement not covered" > ~index &amp;&amp; (this as any)[parentKey].splice(index, 1);</span>
995
- <span class="cstat-no" title="statement not covered" > params.index = index;</span>
996
- } else {
997
- const q = (<span class="cstat-no" title="statement not covered" >t as any)[parentKey];</span>
998
- <span class="cstat-no" title="statement not covered" > if ((q.__v_raw || q) === n) {</span>
999
- <span class="cstat-no" title="statement not covered" > params.index = 0;</span>
1000
- (<span class="cstat-no" title="statement not covered" >this as any)[parentKey] = undefined;</span>
1001
- }
1002
- }
1003
- }
1004
- <span class="cstat-no" title="statement not covered" > return params;</span>
1005
- }
1006
- &nbsp;
1007
- //================================================================================
1008
- // ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
1009
- // 自动生成的代码已结束。下面可以手动编写。
1010
- //================================================================================
1011
- <span class="fstat-no" title="function not covered" > get b</span>usinessComponent() {
1012
- <span class="cstat-no" title="statement not covered" > return this.getAncestor('BusinessComponent') as BusinessComponent;</span>
1013
- }
1014
- &nbsp;
1015
- // 设置触发的事件
1016
- <span class="fstat-no" title="function not covered" > setCallee(e</span>vent: Event) {
1017
- const <span class="cstat-no" title="statement not covered" >Argument = getConceptConstructor('Argument');</span>
1018
- const <span class="cstat-no" title="statement not covered" >Identifier = getConceptConstructor('Identifier');</span>
1019
- const calleeName = <span class="cstat-no" title="statement not covered" >event.name;</span>
1020
- const params = <span class="cstat-no" title="statement not covered" >event?.params?.map((<span class="fstat-no" title="function not covered" >param) =&gt; {</span></span>
1021
- const relationOptions = <span class="cstat-no" title="statement not covered" >{ parentNode: this, parentKey: 'arguments' };</span>
1022
- const argument = <span class="cstat-no" title="statement not covered" >Argument.from(</span>
1023
- {
1024
- keyword: param.name,
1025
- expression: param.isFunction ? new Identifier() : param.defaultExpression,
1026
- },
1027
- this,
1028
- );
1029
- <span class="cstat-no" title="statement not covered" > Object.assign(argument, relationOptions);</span>
1030
- <span class="cstat-no" title="statement not covered" > return argument;</span>
1031
- });
1032
- <span class="cstat-no" title="statement not covered" > this.update({</span>
1033
- calleeName,
1034
- arguments: params,
1035
- folded: false,
1036
- });
1037
- }
1038
- &nbsp;
1039
- // 被调用的事件
1040
- <span class="fstat-no" title="function not covered" > getCallNode(): Event | undefined {</span>
1041
- <span class="cstat-no" title="statement not covered" > return this.businessComponent?.events?.find((<span class="fstat-no" title="function not covered" >event: Event) =&gt; <span class="cstat-no" title="statement not covered" >e</span>vent.name === this.calleeName)</span>;</span>
1042
- }
1043
- &nbsp;
1044
- // 实参列表
1045
- <span class="fstat-no" title="function not covered" > get c</span>ompleteArguments() {
1046
- const <span class="cstat-no" title="statement not covered" >callArguments = (this.arguments ?? []).slice();</span>
1047
- // 没有参数时可以跳过查询原逻辑标签
1048
- const node = <span class="cstat-no" title="statement not covered" >callArguments.length &gt; 0 ? this.getCallNode() : undefined;</span>
1049
- const logicParams = <span class="cstat-no" title="statement not covered" >node?.params ?? [];</span>
1050
- &nbsp;
1051
- <span class="cstat-no" title="statement not covered" > callArguments.forEach(<span class="fstat-no" title="function not covered" >(a</span>rg, index) =&gt; {</span>
1052
- const param = <span class="cstat-no" title="statement not covered" >logicParams[index] || ({} as Param);</span>
1053
- <span class="cstat-no" title="statement not covered" > arg.paramRequired = Boolean(!param?.defaultValue?.expression);</span>
1054
- <span class="cstat-no" title="statement not covered" > arg.paramTypeAnnotation = undefined;</span>
1055
- <span class="cstat-no" title="statement not covered" > arg.paramDefaultValue = undefined;</span>
1056
- // 强制更新当前的 keyword
1057
- <span class="cstat-no" title="statement not covered" > arg.keyword = param?.name &amp;&amp; param.name.length &gt; 0 ? param.name : arg.keyword;</span>
1058
- // 取到是不是必填放入参数中
1059
- <span class="cstat-no" title="statement not covered" > if (param &amp;&amp; !arg.expression) {</span>
1060
- // 非必填时 才会有默认值
1061
- <span class="cstat-no" title="statement not covered" > arg.paramTypeAnnotation = param.typeAnnotation;</span>
1062
- <span class="cstat-no" title="statement not covered" > arg.paramDefaultValue = param.defaultValue;</span>
1063
- }
1064
- });
1065
- &nbsp;
1066
- <span class="cstat-no" title="statement not covered" > return callArguments;</span>
1067
- }
1068
- &nbsp;
1069
- @withSourceMapGenerator
1070
- <span class="fstat-no" title="function not covered" > *t</span>oEmbeddedTS(<span class="branch-0 cbranch-no" title="branch not covered" >state = createCompilerState()): TranslatorGenerator {</span>
1071
- const self = <span class="cstat-no" title="statement not covered" >this;</span>
1072
- const { calleeName, completeArguments, arguments: eventArgs } = <span class="cstat-no" title="statement not covered" >self;</span>
1073
- let code = <span class="cstat-no" title="statement not covered" >`(this as ${this.businessComponent.name}).${calleeName ?? '__IDENTIFIER__'}(`;</span>
1074
- <span class="cstat-no" title="statement not covered" > if (completeArguments?.length) {</span>
1075
- <span class="cstat-no" title="statement not covered" > yield* wrapForEach(completeArguments, function* <span class="fstat-no" title="function not covered" >warpForEachGenerator(a</span>rg, index) {</span>
1076
- // 取到是不是必填放入参数中
1077
- <span class="cstat-no" title="statement not covered" > code += yield* arg.toEmbeddedTS(shiftState(state, code), arg?.paramRequired);</span>
1078
- <span class="cstat-no" title="statement not covered" > if (index !== eventArgs.length - 1) <span class="cstat-no" title="statement not covered" >code += ', ';</span></span>
1079
- });
1080
- }
1081
- <span class="cstat-no" title="statement not covered" > code += ')';</span>
1082
- <span class="cstat-no" title="statement not covered" > code += '\n';</span>
1083
- <span class="cstat-no" title="statement not covered" > return code;</span>
1084
- }
1085
- &nbsp;
1086
- <span class="fstat-no" title="function not covered" > toJS(s</span>tate?: TranslatorState): string {
1087
- const { completeArguments = <span class="branch-0 cbranch-no" title="branch not covered" >[] }</span> = <span class="cstat-no" title="statement not covered" >this;</span>
1088
- let code = <span class="cstat-no" title="statement not covered" >'';</span>
1089
- <span class="cstat-no" title="statement not covered" > code += `this.$emit('${this.calleeName}', {\n`;</span>
1090
- <span class="cstat-no" title="statement not covered" > if (Array.isArray(completeArguments) &amp;&amp; completeArguments.length) {</span>
1091
- const eventNode = <span class="cstat-no" title="statement not covered" >this.getCallNode();</span>
1092
- const eventParams = <span class="cstat-no" title="statement not covered" >eventNode?.params;</span>
1093
- <span class="cstat-no" title="statement not covered" > completeArguments.forEach(<span class="fstat-no" title="function not covered" >(a</span>rg, index) =&gt; {</span>
1094
- let argStr = <span class="cstat-no" title="statement not covered" >arg?.toJS(shiftState(state, code));</span>
1095
- const paramDefaultValue = <span class="cstat-no" title="statement not covered" >eventParams?.[index]?.defaultValue?.toJS?.();</span>
1096
- <span class="cstat-no" title="statement not covered" > if (paramDefaultValue) {</span>
1097
- <span class="cstat-no" title="statement not covered" > argStr = `${argStr} !== undefined ? ${argStr} : ${paramDefaultValue}`;</span>
1098
- }
1099
- <span class="cstat-no" title="statement not covered" > code += `${arg.keyword}: ${argStr}`;</span>
1100
- <span class="cstat-no" title="statement not covered" > if (index !== completeArguments?.length - 1) {</span>
1101
- <span class="cstat-no" title="statement not covered" > code += ', ';</span>
1102
- }
1103
- });
1104
- }
1105
- <span class="cstat-no" title="statement not covered" > code += '\n})';</span>
1106
- <span class="cstat-no" title="statement not covered" > return code;</span>
1107
- }
1108
- //================================================================================
1109
- // 从这里开始到结尾注释之间的代码由 NASL Workbench 自动生成,请不手动修改!
1110
- // ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
1111
- //================================================================================
1112
- }
1113
- &nbsp;
1114
- export default CallEvent;
1115
- //================================================================================
1116
- // ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
1117
- // 自动生成的代码已结束。下面可以手动编写。
1118
- //================================================================================
1119
- &nbsp;</pre></td></tr></table></pre>
1120
-
1121
- <div class='push'></div><!-- for sticky footer -->
1122
- </div><!-- /wrapper -->
1123
- <div class='footer quiet pad2 space-top1 center small'>
1124
- Code coverage generated by
1125
- <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
1126
- at 2023-12-20T16:21:15.863Z
1127
- </div>
1128
- <script src="../../prettify.js"></script>
1129
- <script>
1130
- window.onload = function () {
1131
- prettyPrint();
1132
- };
1133
- </script>
1134
- <script src="../../sorter.js"></script>
1135
- <script src="../../block-navigation.js"></script>
1136
- </body>
1137
- </html>
1138
-