@lcap/nasl 3.3.0-beta.2 → 3.3.2-beta.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.nyc_output/d58d92d8-c0d6-479b-9f82-1f4da8e73ff3.json +1 -0
- package/.nyc_output/processinfo/d58d92d8-c0d6-479b-9f82-1f4da8e73ff3.json +1 -0
- package/.nyc_output/processinfo/index.json +1 -0
- package/coverage/base.css +224 -0
- package/coverage/block-navigation.js +87 -0
- package/coverage/favicon.png +0 -0
- package/coverage/index.html +461 -0
- package/coverage/prettify.css +1 -0
- package/coverage/prettify.js +2 -0
- package/coverage/sort-arrow-sprite.png +0 -0
- package/coverage/sorter.js +196 -0
- package/coverage/src/automate/engine/index.html +116 -0
- package/coverage/src/automate/engine/utils.js.html +1414 -0
- package/coverage/src/bak/index.html +116 -0
- package/coverage/src/bak/translator.js.html +622 -0
- package/coverage/src/breakpoint/generator/AfterStartNode.ts.html +175 -0
- package/coverage/src/breakpoint/generator/BeforeEndNode.ts.html +169 -0
- package/coverage/src/breakpoint/generator/BreakpointNode.ts.html +1246 -0
- package/coverage/src/breakpoint/generator/CallbackNode.ts.html +145 -0
- package/coverage/src/breakpoint/generator/index.html +176 -0
- package/coverage/src/breakpoint/generator/index.ts.html +508 -0
- package/coverage/src/breakpoint/index.html +116 -0
- package/coverage/src/breakpoint/index.ts.html +94 -0
- package/coverage/src/breakpoint/shared/constants.ts.html +436 -0
- package/coverage/src/breakpoint/shared/index.html +176 -0
- package/coverage/src/breakpoint/shared/index.ts.html +94 -0
- package/coverage/src/breakpoint/shared/operations.ts.html +160 -0
- package/coverage/src/breakpoint/shared/socket.ts.html +1297 -0
- package/coverage/src/breakpoint/shared/utils.ts.html +1087 -0
- package/coverage/src/breakpoint/store/core.ts.html +1600 -0
- package/coverage/src/breakpoint/store/dock.ts.html +733 -0
- package/coverage/src/breakpoint/store/index.html +146 -0
- package/coverage/src/breakpoint/store/index.ts.html +91 -0
- package/coverage/src/common/BaseNode.ts.html +3874 -0
- package/coverage/src/common/Command.ts.html +310 -0
- package/coverage/src/common/EventEmitter.ts.html +370 -0
- package/coverage/src/common/Messager.ts.html +820 -0
- package/coverage/src/common/asyncFuncMap.ts.html +127 -0
- package/coverage/src/common/index.html +191 -0
- package/coverage/src/common/index.ts.html +94 -0
- package/coverage/src/concepts/Abort__.ts.html +328 -0
- package/coverage/src/concepts/Anchor__.ts.html +646 -0
- package/coverage/src/concepts/AnonymousFunction__.ts.html +2029 -0
- package/coverage/src/concepts/App__.ts.html +13252 -0
- package/coverage/src/concepts/Argument__.ts.html +964 -0
- package/coverage/src/concepts/Assignee__.ts.html +2236 -0
- package/coverage/src/concepts/AssignmentLine__.ts.html +409 -0
- package/coverage/src/concepts/Assignment__.ts.html +1123 -0
- package/coverage/src/concepts/Attribute__.ts.html +733 -0
- package/coverage/src/concepts/AuthInterface__.ts.html +367 -0
- package/coverage/src/concepts/AuthLogicForCallInterface__.ts.html +1984 -0
- package/coverage/src/concepts/AuthLogic__.ts.html +781 -0
- package/coverage/src/concepts/BackendVariable__.ts.html +1483 -0
- package/coverage/src/concepts/Backend__.ts.html +1165 -0
- package/coverage/src/concepts/BatchAssignment__.ts.html +3301 -0
- package/coverage/src/concepts/BinaryExpression__.ts.html +1441 -0
- package/coverage/src/concepts/BindAttribute__.ts.html +3835 -0
- package/coverage/src/concepts/BindDirective__.ts.html +1921 -0
- package/coverage/src/concepts/BindEvent__.ts.html +3406 -0
- package/coverage/src/concepts/BindStyle__.ts.html +1612 -0
- package/coverage/src/concepts/BooleanLiteral__.ts.html +418 -0
- package/coverage/src/concepts/CallAuthInterface__.ts.html +1615 -0
- package/coverage/src/concepts/CallConnector__.ts.html +922 -0
- package/coverage/src/concepts/CallFunction__.ts.html +2122 -0
- package/coverage/src/concepts/CallInterface__.ts.html +2719 -0
- package/coverage/src/concepts/CallLogic__.ts.html +4807 -0
- package/coverage/src/concepts/CallQueryComponent__.ts.html +5308 -0
- package/coverage/src/concepts/Comment__.ts.html +394 -0
- package/coverage/src/concepts/CompletionProperty__.ts.html +925 -0
- package/coverage/src/concepts/ConfigGroup__.ts.html +1105 -0
- package/coverage/src/concepts/ConfigPropertyValue__.ts.html +424 -0
- package/coverage/src/concepts/ConfigProperty__.ts.html +1348 -0
- package/coverage/src/concepts/Configuration__.ts.html +1027 -0
- package/coverage/src/concepts/Connection__.ts.html +1360 -0
- package/coverage/src/concepts/ConnectorTrigger__.ts.html +595 -0
- package/coverage/src/concepts/Connector__.ts.html +4255 -0
- package/coverage/src/concepts/Constant__.ts.html +913 -0
- package/coverage/src/concepts/DataSource__.ts.html +1771 -0
- package/coverage/src/concepts/DatabaseTypeAnnotation__.ts.html +331 -0
- package/coverage/src/concepts/Destination__.ts.html +2731 -0
- package/coverage/src/concepts/End__.ts.html +433 -0
- package/coverage/src/concepts/EntityIndex__.ts.html +787 -0
- package/coverage/src/concepts/EntityProperty__.ts.html +2668 -0
- package/coverage/src/concepts/Entity__.ts.html +2950 -0
- package/coverage/src/concepts/EnumItem__.ts.html +550 -0
- package/coverage/src/concepts/Enum__.ts.html +1231 -0
- package/coverage/src/concepts/Event__.ts.html +1084 -0
- package/coverage/src/concepts/ExternalDestination__.ts.html +1033 -0
- package/coverage/src/concepts/ForEachStatement__.ts.html +1957 -0
- package/coverage/src/concepts/FrontendLibrary__.ts.html +1711 -0
- package/coverage/src/concepts/FrontendVariable__.ts.html +292 -0
- package/coverage/src/concepts/Frontend__.ts.html +3961 -0
- package/coverage/src/concepts/Function__.ts.html +3598 -0
- package/coverage/src/concepts/Identifier__.ts.html +1057 -0
- package/coverage/src/concepts/IfStatement__.ts.html +1594 -0
- package/coverage/src/concepts/Integration__.ts.html +1228 -0
- package/coverage/src/concepts/InterfaceParam__.ts.html +1087 -0
- package/coverage/src/concepts/Interface__.ts.html +3394 -0
- package/coverage/src/concepts/JSBlock__.ts.html +421 -0
- package/coverage/src/concepts/JavaLogic__.ts.html +460 -0
- package/coverage/src/concepts/LogicItem__.ts.html +1171 -0
- package/coverage/src/concepts/Logic__.ts.html +7408 -0
- package/coverage/src/concepts/MatchCase__.ts.html +2929 -0
- package/coverage/src/concepts/Match__.ts.html +2455 -0
- package/coverage/src/concepts/MemberExpression__.ts.html +1726 -0
- package/coverage/src/concepts/MicroApp__.ts.html +436 -0
- package/coverage/src/concepts/Module__.ts.html +9220 -0
- package/coverage/src/concepts/MsgTriggerEvent__.ts.html +1045 -0
- package/coverage/src/concepts/MsgTriggerLauncher__.ts.html +1018 -0
- package/coverage/src/concepts/Namespace__.ts.html +7942 -0
- package/coverage/src/concepts/NewComposite__.ts.html +4729 -0
- package/coverage/src/concepts/NewList__.ts.html +1618 -0
- package/coverage/src/concepts/NewMap__.ts.html +2326 -0
- package/coverage/src/concepts/New__.ts.html +289 -0
- package/coverage/src/concepts/NullLiteral__.ts.html +349 -0
- package/coverage/src/concepts/NumericLiteral__.ts.html +676 -0
- package/coverage/src/concepts/OqlQueryComponent__.ts.html +1141 -0
- package/coverage/src/concepts/OverriddenLogic__.ts.html +6817 -0
- package/coverage/src/concepts/Param__.ts.html +1726 -0
- package/coverage/src/concepts/Point__.ts.html +331 -0
- package/coverage/src/concepts/ProcessComponent__.ts.html +1666 -0
- package/coverage/src/concepts/ProcessElement__.ts.html +5884 -0
- package/coverage/src/concepts/ProcessOutcome__.ts.html +352 -0
- package/coverage/src/concepts/ProcessOutcomes__.ts.html +343 -0
- package/coverage/src/concepts/Process__.ts.html +4768 -0
- package/coverage/src/concepts/QueryAggregateExpression__.ts.html +568 -0
- package/coverage/src/concepts/QueryFieldExpression__.ts.html +583 -0
- package/coverage/src/concepts/QueryFromExpression__.ts.html +910 -0
- package/coverage/src/concepts/QueryGroupByExpression__.ts.html +559 -0
- package/coverage/src/concepts/QueryJoinExpression__.ts.html +1567 -0
- package/coverage/src/concepts/QueryLimitExpression__.ts.html +637 -0
- package/coverage/src/concepts/QueryOrderByExpression__.ts.html +679 -0
- package/coverage/src/concepts/QuerySelectExpression__.ts.html +1714 -0
- package/coverage/src/concepts/Rect__.ts.html +373 -0
- package/coverage/src/concepts/Return__.ts.html +1312 -0
- package/coverage/src/concepts/Role__.ts.html +601 -0
- package/coverage/src/concepts/SelectMembers__.ts.html +1246 -0
- package/coverage/src/concepts/Slot__.ts.html +628 -0
- package/coverage/src/concepts/SqlQueryComponent__.ts.html +982 -0
- package/coverage/src/concepts/Start__.ts.html +304 -0
- package/coverage/src/concepts/StringInterpolation__.ts.html +1129 -0
- package/coverage/src/concepts/StringLiteral__.ts.html +505 -0
- package/coverage/src/concepts/StructureProperty__.ts.html +1132 -0
- package/coverage/src/concepts/Structure__.ts.html +2092 -0
- package/coverage/src/concepts/SwitchCase__.ts.html +1174 -0
- package/coverage/src/concepts/SwitchStatement__.ts.html +877 -0
- package/coverage/src/concepts/Theme__.ts.html +358 -0
- package/coverage/src/concepts/Transactional__.ts.html +628 -0
- package/coverage/src/concepts/TriggerEvent__.ts.html +1012 -0
- package/coverage/src/concepts/TriggerLauncher__.ts.html +775 -0
- package/coverage/src/concepts/TypeAnnotation__.ts.html +3718 -0
- package/coverage/src/concepts/TypeParam__.ts.html +319 -0
- package/coverage/src/concepts/UnaryExpression__.ts.html +697 -0
- package/coverage/src/concepts/Unparsed__.ts.html +394 -0
- package/coverage/src/concepts/UseComponent__.ts.html +331 -0
- package/coverage/src/concepts/ValidationRule__.ts.html +1840 -0
- package/coverage/src/concepts/Variable__.ts.html +1489 -0
- package/coverage/src/concepts/ViewBlock__.ts.html +352 -0
- package/coverage/src/concepts/ViewComponent__.ts.html +4180 -0
- package/coverage/src/concepts/ViewElement__.ts.html +8803 -0
- package/coverage/src/concepts/View__.ts.html +8620 -0
- package/coverage/src/concepts/WhileStatement__.ts.html +1063 -0
- package/coverage/src/concepts/basics/stdlib/index.html +356 -0
- package/coverage/src/concepts/basics/stdlib/index.ts.html +208 -0
- package/coverage/src/concepts/basics/stdlib/nasl.auth.ts.html +565 -0
- package/coverage/src/concepts/basics/stdlib/nasl.browser.ts.html +517 -0
- package/coverage/src/concepts/basics/stdlib/nasl.collection.ts.html +226 -0
- package/coverage/src/concepts/basics/stdlib/nasl.configuration.ts.html +172 -0
- package/coverage/src/concepts/basics/stdlib/nasl.core.ts.html +214 -0
- package/coverage/src/concepts/basics/stdlib/nasl.event.ts.html +145 -0
- package/coverage/src/concepts/basics/stdlib/nasl.http.ts.html +589 -0
- package/coverage/src/concepts/basics/stdlib/nasl.interface.ts.html +214 -0
- package/coverage/src/concepts/basics/stdlib/nasl.io.ts.html +229 -0
- package/coverage/src/concepts/basics/stdlib/nasl.logging.ts.html +268 -0
- package/coverage/src/concepts/basics/stdlib/nasl.process.ts.html +1999 -0
- package/coverage/src/concepts/basics/stdlib/nasl.ui.ts.html +3259 -0
- package/coverage/src/concepts/basics/stdlib/nasl.util.ts.html +6844 -0
- package/coverage/src/concepts/basics/stdlib/nasl.validation.ts.html +1768 -0
- package/coverage/src/concepts/basics/stdlib/reference2TypeAnnotationList.ts.html +163 -0
- package/coverage/src/concepts/basics/stdlib/timeZone.ts.html +664 -0
- package/coverage/src/concepts/basics/types/coreTypeList.ts.html +121 -0
- package/coverage/src/concepts/basics/types/index.html +131 -0
- package/coverage/src/concepts/basics/types/index.ts.html +160 -0
- package/coverage/src/concepts/index.html +1961 -0
- package/coverage/src/concepts/index.ts.html +103 -0
- package/coverage/src/concepts/index__.ts.html +451 -0
- package/coverage/src/config.ts.html +325 -0
- package/coverage/src/decorators/index.html +131 -0
- package/coverage/src/decorators/index.ts.html +574 -0
- package/coverage/src/decorators/promise.ts.html +169 -0
- package/coverage/src/eventBus.ts.html +100 -0
- package/coverage/src/generator/compileComponent.ts.html +142 -0
- package/coverage/src/generator/genBundleFiles.ts.html +1828 -0
- package/coverage/src/generator/genHash.ts.html +124 -0
- package/coverage/src/generator/genMetaData.ts.html +1042 -0
- package/coverage/src/generator/genReleaseBody.ts.html +1282 -0
- package/coverage/src/generator/icestark.ts.html +220 -0
- package/coverage/src/generator/index.html +266 -0
- package/coverage/src/generator/index.ts.html +106 -0
- package/coverage/src/generator/microApp.ts.html +172 -0
- package/coverage/src/generator/permission.ts.html +1036 -0
- package/coverage/src/generator/qiankun.ts.html +232 -0
- package/coverage/src/generator/styleReplacer.ts.html +199 -0
- package/coverage/src/index.html +146 -0
- package/coverage/src/index.ts.html +121 -0
- package/coverage/src/manager/diagnostic.ts.html +442 -0
- package/coverage/src/manager/index.html +131 -0
- package/coverage/src/manager/stepRecorder.ts.html +457 -0
- package/coverage/src/natural/genNaturalTS.ts.html +355 -0
- package/coverage/src/natural/index.html +161 -0
- package/coverage/src/natural/index.ts.html +91 -0
- package/coverage/src/natural/naslStdlibMap.ts.html +157 -0
- package/coverage/src/natural/transformTSCode.ts.html +2647 -0
- package/coverage/src/sentry/index.html +116 -0
- package/coverage/src/sentry/index.ts.html +676 -0
- package/coverage/src/server/createUiTs.ts.html +910 -0
- package/coverage/src/server/entity2LogicNamespace.ts.html +1294 -0
- package/coverage/src/server/event.js.html +526 -0
- package/coverage/src/server/extendBaseNode.ts.html +1762 -0
- package/coverage/src/server/formatTsUtils.ts.html +2689 -0
- package/coverage/src/server/getConnector.ts.html +316 -0
- package/coverage/src/server/getExtensionModules.ts.html +178 -0
- package/coverage/src/server/getFunctions.ts.html +133 -0
- package/coverage/src/server/getInterfaces.ts.html +229 -0
- package/coverage/src/server/getLogging.ts.html +100 -0
- package/coverage/src/server/getLogics.ts.html +1363 -0
- package/coverage/src/server/getMemberIdentifier.ts.html +1561 -0
- package/coverage/src/server/getProcessComponents.ts.html +112 -0
- package/coverage/src/server/getProcesses.ts.html +2023 -0
- package/coverage/src/server/getValidates.ts.html +115 -0
- package/coverage/src/server/index.html +401 -0
- package/coverage/src/server/index.ts.html +229 -0
- package/coverage/src/server/naslServer.ts.html +14401 -0
- package/coverage/src/server/naslStdlibMap.ts.html +241 -0
- package/coverage/src/server/process2LogicNamespace.ts.html +454 -0
- package/coverage/src/server/translator.ts.html +2566 -0
- package/coverage/src/service/creator/add.configs.js.html +379 -0
- package/coverage/src/service/creator/errHandles.js.html +322 -0
- package/coverage/src/service/creator/index.html +146 -0
- package/coverage/src/service/creator/index.js.html +352 -0
- package/coverage/src/service/datasource/api.js.html +118 -0
- package/coverage/src/service/datasource/index.html +131 -0
- package/coverage/src/service/datasource/index.js.html +103 -0
- package/coverage/src/service/logic/api.js.html +109 -0
- package/coverage/src/service/logic/index.html +131 -0
- package/coverage/src/service/logic/index.js.html +103 -0
- package/coverage/src/service/storage/api.js.html +202 -0
- package/coverage/src/service/storage/index.html +206 -0
- package/coverage/src/service/storage/index.ts.html +103 -0
- package/coverage/src/service/storage/init.ts.html +2761 -0
- package/coverage/src/service/storage/jsoner.ts.html +502 -0
- package/coverage/src/service/storage/map.ts.html +256 -0
- package/coverage/src/service/storage/service.ts.html +331 -0
- package/coverage/src/service/storage/storagePoint.ts.html +304 -0
- package/coverage/src/templator/genCallComponentLogic.ts.html +163 -0
- package/coverage/src/templator/genCreateBlock.ts.html +1093 -0
- package/coverage/src/templator/genCurdEditMultipleKeyBlock.ts.html +1609 -0
- package/coverage/src/templator/genCurdMultipleKeyBlock.ts.html +2254 -0
- package/coverage/src/templator/genEditTableBlock.ts.html +955 -0
- package/coverage/src/templator/genEnumSelectBlock.ts.html +178 -0
- package/coverage/src/templator/genGetBlock.ts.html +451 -0
- package/coverage/src/templator/genGridViewBlock.ts.html +1114 -0
- package/coverage/src/templator/genListViewBlock.ts.html +475 -0
- package/coverage/src/templator/genQueryComponent.ts.html +1207 -0
- package/coverage/src/templator/genSelectBlock.ts.html +1243 -0
- package/coverage/src/templator/genTableBlock.ts.html +910 -0
- package/coverage/src/templator/genUpdateBlock.ts.html +1192 -0
- package/coverage/src/templator/index.html +326 -0
- package/coverage/src/templator/index.ts.html +154 -0
- package/coverage/src/templator/utils.ts.html +1861 -0
- package/coverage/src/translator/constant.ts.html +106 -0
- package/coverage/src/translator/index.html +146 -0
- package/coverage/src/translator/index.ts.html +94 -0
- package/coverage/src/translator/utils.ts.html +436 -0
- package/coverage/src/utils/cookie.ts.html +265 -0
- package/coverage/src/utils/env.ts.html +91 -0
- package/coverage/src/utils/index.html +236 -0
- package/coverage/src/utils/index.ts.html +655 -0
- package/coverage/src/utils/logger.ts.html +145 -0
- package/coverage/src/utils/sortTsString.ts.html +187 -0
- package/coverage/src/utils/string.ts.html +400 -0
- package/coverage/src/utils/time-slicing.ts.html +418 -0
- package/coverage/src/utils/traverse.ts.html +568 -0
- package/coverage/src/utils/window.ts.html +112 -0
- package/out/bak/translator.js +16 -18
- package/out/bak/translator.js.map +1 -1
- package/out/breakpoint/generator/BreakpointNode.js +1 -0
- package/out/breakpoint/generator/BreakpointNode.js.map +1 -1
- package/out/breakpoint/shared/constants.d.ts +2 -0
- package/out/breakpoint/shared/constants.js +3 -1
- package/out/breakpoint/shared/constants.js.map +1 -1
- package/out/breakpoint/shared/socket.d.ts +1 -0
- package/out/breakpoint/shared/socket.js +35 -17
- package/out/breakpoint/shared/socket.js.map +1 -1
- package/out/breakpoint/shared/utils.js +33 -1
- package/out/breakpoint/shared/utils.js.map +1 -1
- package/out/breakpoint/store/core.d.ts +2 -0
- package/out/breakpoint/store/core.js +5 -3
- package/out/breakpoint/store/core.js.map +1 -1
- package/out/breakpoint/store/dock.js +33 -0
- package/out/breakpoint/store/dock.js.map +1 -1
- package/out/concepts/AuthLogicForCallInterface__.js +2 -1
- package/out/concepts/AuthLogicForCallInterface__.js.map +1 -1
- package/out/concepts/BinaryExpression__.js +5 -5
- package/out/concepts/BinaryExpression__.js.map +1 -1
- package/out/concepts/BindAttribute__.js +3 -3
- package/out/concepts/BindAttribute__.js.map +1 -1
- package/out/concepts/CallConnector__.d.ts +2 -0
- package/out/concepts/CallConnector__.js +17 -1
- package/out/concepts/CallConnector__.js.map +1 -1
- package/out/concepts/CallFunction__.js +31 -24
- package/out/concepts/CallFunction__.js.map +1 -1
- package/out/concepts/CallLogic__.js +53 -46
- package/out/concepts/CallLogic__.js.map +1 -1
- package/out/concepts/Connection__.js +1 -1
- package/out/concepts/Connection__.js.map +1 -1
- package/out/concepts/ForEachStatement__.d.ts +1 -20
- package/out/concepts/ForEachStatement__.js +16 -14
- package/out/concepts/ForEachStatement__.js.map +1 -1
- package/out/concepts/IfStatement__.js +24 -25
- package/out/concepts/IfStatement__.js.map +1 -1
- package/out/concepts/Logic__.js +8 -20
- package/out/concepts/Logic__.js.map +1 -1
- package/out/concepts/MatchCase__.js +12 -7
- package/out/concepts/MatchCase__.js.map +1 -1
- package/out/concepts/MemberExpression__.js +11 -14
- package/out/concepts/MemberExpression__.js.map +1 -1
- package/out/concepts/NewComposite__.d.ts +1 -1
- package/out/concepts/NewComposite__.js +11 -83
- package/out/concepts/NewComposite__.js.map +1 -1
- package/out/concepts/NewList__.js +11 -9
- package/out/concepts/NewList__.js.map +1 -1
- package/out/concepts/NewMap__.d.ts +1 -1
- package/out/concepts/NewMap__.js +12 -4
- package/out/concepts/NewMap__.js.map +1 -1
- package/out/concepts/New__.js +3 -1
- package/out/concepts/New__.js.map +1 -1
- package/out/concepts/StringInterpolation__.js +2 -2
- package/out/concepts/StringInterpolation__.js.map +1 -1
- package/out/concepts/SwitchCase__.js +8 -4
- package/out/concepts/SwitchCase__.js.map +1 -1
- package/out/concepts/ViewElement__.d.ts +4 -2
- package/out/concepts/ViewElement__.js +7 -21
- package/out/concepts/ViewElement__.js.map +1 -1
- package/out/concepts/WhileStatement__.js +6 -4
- package/out/concepts/WhileStatement__.js.map +1 -1
- package/out/concepts/basics/stdlib/nasl.browser.js +19 -3
- package/out/concepts/basics/stdlib/nasl.browser.js.map +1 -1
- package/out/concepts/basics/stdlib/nasl.util.d.ts +2 -0
- package/out/concepts/basics/stdlib/nasl.util.js +36 -11
- package/out/concepts/basics/stdlib/nasl.util.js.map +1 -1
- package/out/concepts/basics/stdlib/timeZone.d.ts +5 -0
- package/out/concepts/basics/stdlib/timeZone.js +196 -0
- package/out/concepts/basics/stdlib/timeZone.js.map +1 -0
- package/out/generator/genBundleFiles.js +12 -4
- package/out/generator/genBundleFiles.js.map +1 -1
- package/out/generator/genReleaseBody.js +1 -1
- package/out/generator/genReleaseBody.js.map +1 -1
- package/out/natural/genNaturalTS.d.ts +2 -2
- package/out/natural/genNaturalTS.js +5 -5
- package/out/natural/genNaturalTS.js.map +1 -1
- package/out/natural/transformTSCode.js +18 -3
- package/out/natural/transformTSCode.js.map +1 -1
- package/out/server/createUiTs.js +3 -0
- package/out/server/createUiTs.js.map +1 -1
- package/out/server/getLogics.js +3 -1
- package/out/server/getLogics.js.map +1 -1
- package/out/server/getMemberIdentifier.js +15 -0
- package/out/server/getMemberIdentifier.js.map +1 -1
- package/out/server/naslServer.js +35 -9
- package/out/server/naslServer.js.map +1 -1
- package/out/service/creator/errHandles.js +10 -19
- package/out/service/creator/errHandles.js.map +1 -1
- package/out/service/storage/init.js +7 -2
- package/out/service/storage/init.js.map +1 -1
- package/out/service/storage/jsoner.js +1 -3
- package/out/service/storage/jsoner.js.map +1 -1
- package/out/templator/genEditTableBlock.js +24 -2
- package/out/templator/genEditTableBlock.js.map +1 -1
- package/out/templator/genTableBlock.js +22 -1
- package/out/templator/genTableBlock.js.map +1 -1
- package/out/translator/types.d.ts +1 -0
- package/out/translator/utils.js +13 -0
- package/out/translator/utils.js.map +1 -1
- package/package.json +2 -2
- package/sandbox/stdlib/nasl.browser.ts +2 -0
- package/sandbox/stdlib/nasl.ui.definition.ts +2220 -2218
- package/sandbox/stdlib/nasl.util.ts +20 -10
- package/sandbox-natural/stdlib/nasl.core.ts +6 -3
- package/sandbox-natural/stdlib/nasl.oql.ts +6 -0
- package/sandbox-natural/stdlib/nasl.util.ts +1 -1
- package/src/bak/translator.js +16 -17
- package/src/breakpoint/generator/BreakpointNode.ts +1 -0
- package/src/breakpoint/shared/constants.ts +2 -0
- package/src/breakpoint/shared/socket.ts +41 -17
- package/src/breakpoint/shared/utils.ts +43 -1
- package/src/breakpoint/store/core.ts +2 -2
- package/src/breakpoint/store/dock.ts +50 -0
- package/src/breakpoint/types/index.d.ts +1 -0
- package/src/concepts/AuthLogicForCallInterface__.ts +2 -1
- package/src/concepts/BinaryExpression__.ts +6 -6
- package/src/concepts/BindAttribute__.ts +5 -4
- package/src/concepts/CallConnector__.ts +19 -1
- package/src/concepts/CallFunction__.ts +40 -22
- package/src/concepts/CallLogic__.ts +39 -32
- package/src/concepts/Connection__.ts +1 -1
- package/src/concepts/ForEachStatement__.ts +17 -15
- package/src/concepts/IfStatement__.ts +30 -30
- package/src/concepts/Logic__.ts +13 -27
- package/src/concepts/MatchCase__.ts +15 -7
- package/src/concepts/MemberExpression__.ts +11 -14
- package/src/concepts/NewComposite__.ts +15 -83
- package/src/concepts/NewList__.ts +11 -9
- package/src/concepts/NewMap__.ts +12 -4
- package/src/concepts/New__.ts +1 -0
- package/src/concepts/StringInterpolation__.ts +2 -2
- package/src/concepts/SwitchCase__.ts +9 -5
- package/src/concepts/ViewElement__.ts +8 -22
- package/src/concepts/WhileStatement__.ts +7 -5
- package/src/concepts/basics/stdlib/nasl.browser.ts +19 -3
- package/src/concepts/basics/stdlib/nasl.util.ts +38 -19
- package/src/concepts/basics/stdlib/timeZone.ts +193 -0
- package/src/generator/genBundleFiles.ts +12 -4
- package/src/generator/genReleaseBody.ts +1 -1
- package/src/natural/genNaturalTS.ts +5 -5
- package/src/natural/transformTSCode.ts +18 -4
- package/src/server/createUiTs.ts +3 -0
- package/src/server/getLogics.ts +3 -1
- package/src/server/getMemberIdentifier.ts +15 -0
- package/src/server/naslServer.ts +126 -83
- package/src/service/creator/errHandles.js +10 -16
- package/src/service/storage/init.ts +10 -3
- package/src/service/storage/jsoner.ts +2 -2
- package/src/templator/genEditTableBlock.ts +24 -2
- package/src/templator/genTableBlock.ts +22 -1
- package/src/translator/types.ts +1 -0
- package/src/translator/utils.ts +15 -0
- package/test/concepts/call-logic/__snapshots__/toJS.spec.ts.snap +20 -20
- package/test/concepts/match/__snapshots__/toJS.spec.ts.snap +1 -1
- package/test/concepts/member-expression/__snapshots__/toEmbeddedTS.spec.ts.snap +1 -1
- package/test/concepts/view-element/__snapshots__/toVue.spec.ts.snap +10 -10
|
@@ -0,0 +1,1414 @@
|
|
|
1
|
+
|
|
2
|
+
<!doctype html>
|
|
3
|
+
<html lang="en">
|
|
4
|
+
|
|
5
|
+
<head>
|
|
6
|
+
<title>Code coverage report for src/automate/engine/utils.js</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/automate/engine</a> utils.js</h1>
|
|
23
|
+
<div class='clearfix'>
|
|
24
|
+
|
|
25
|
+
<div class='fl pad1y space-right2'>
|
|
26
|
+
<span class="strong">28.94% </span>
|
|
27
|
+
<span class="quiet">Statements</span>
|
|
28
|
+
<span class='fraction'>66/228</span>
|
|
29
|
+
</div>
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
<div class='fl pad1y space-right2'>
|
|
33
|
+
<span class="strong">20% </span>
|
|
34
|
+
<span class="quiet">Branches</span>
|
|
35
|
+
<span class='fraction'>28/140</span>
|
|
36
|
+
</div>
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
<div class='fl pad1y space-right2'>
|
|
40
|
+
<span class="strong">16.12% </span>
|
|
41
|
+
<span class="quiet">Functions</span>
|
|
42
|
+
<span class='fraction'>5/31</span>
|
|
43
|
+
</div>
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
<div class='fl pad1y space-right2'>
|
|
47
|
+
<span class="strong">29.71% </span>
|
|
48
|
+
<span class="quiet">Lines</span>
|
|
49
|
+
<span class='fraction'>63/212</span>
|
|
50
|
+
</div>
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
</div>
|
|
54
|
+
<p class="quiet">
|
|
55
|
+
Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
|
|
56
|
+
</p>
|
|
57
|
+
<template id="filterTemplate">
|
|
58
|
+
<div class="quiet">
|
|
59
|
+
Filter:
|
|
60
|
+
<input oninput="onInput()" type="search" id="fileSearch">
|
|
61
|
+
</div>
|
|
62
|
+
</template>
|
|
63
|
+
</div>
|
|
64
|
+
<div class='status-line low'></div>
|
|
65
|
+
<pre><table class="coverage">
|
|
66
|
+
<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
|
|
67
|
+
<a name='L2'></a><a href='#L2'>2</a>
|
|
68
|
+
<a name='L3'></a><a href='#L3'>3</a>
|
|
69
|
+
<a name='L4'></a><a href='#L4'>4</a>
|
|
70
|
+
<a name='L5'></a><a href='#L5'>5</a>
|
|
71
|
+
<a name='L6'></a><a href='#L6'>6</a>
|
|
72
|
+
<a name='L7'></a><a href='#L7'>7</a>
|
|
73
|
+
<a name='L8'></a><a href='#L8'>8</a>
|
|
74
|
+
<a name='L9'></a><a href='#L9'>9</a>
|
|
75
|
+
<a name='L10'></a><a href='#L10'>10</a>
|
|
76
|
+
<a name='L11'></a><a href='#L11'>11</a>
|
|
77
|
+
<a name='L12'></a><a href='#L12'>12</a>
|
|
78
|
+
<a name='L13'></a><a href='#L13'>13</a>
|
|
79
|
+
<a name='L14'></a><a href='#L14'>14</a>
|
|
80
|
+
<a name='L15'></a><a href='#L15'>15</a>
|
|
81
|
+
<a name='L16'></a><a href='#L16'>16</a>
|
|
82
|
+
<a name='L17'></a><a href='#L17'>17</a>
|
|
83
|
+
<a name='L18'></a><a href='#L18'>18</a>
|
|
84
|
+
<a name='L19'></a><a href='#L19'>19</a>
|
|
85
|
+
<a name='L20'></a><a href='#L20'>20</a>
|
|
86
|
+
<a name='L21'></a><a href='#L21'>21</a>
|
|
87
|
+
<a name='L22'></a><a href='#L22'>22</a>
|
|
88
|
+
<a name='L23'></a><a href='#L23'>23</a>
|
|
89
|
+
<a name='L24'></a><a href='#L24'>24</a>
|
|
90
|
+
<a name='L25'></a><a href='#L25'>25</a>
|
|
91
|
+
<a name='L26'></a><a href='#L26'>26</a>
|
|
92
|
+
<a name='L27'></a><a href='#L27'>27</a>
|
|
93
|
+
<a name='L28'></a><a href='#L28'>28</a>
|
|
94
|
+
<a name='L29'></a><a href='#L29'>29</a>
|
|
95
|
+
<a name='L30'></a><a href='#L30'>30</a>
|
|
96
|
+
<a name='L31'></a><a href='#L31'>31</a>
|
|
97
|
+
<a name='L32'></a><a href='#L32'>32</a>
|
|
98
|
+
<a name='L33'></a><a href='#L33'>33</a>
|
|
99
|
+
<a name='L34'></a><a href='#L34'>34</a>
|
|
100
|
+
<a name='L35'></a><a href='#L35'>35</a>
|
|
101
|
+
<a name='L36'></a><a href='#L36'>36</a>
|
|
102
|
+
<a name='L37'></a><a href='#L37'>37</a>
|
|
103
|
+
<a name='L38'></a><a href='#L38'>38</a>
|
|
104
|
+
<a name='L39'></a><a href='#L39'>39</a>
|
|
105
|
+
<a name='L40'></a><a href='#L40'>40</a>
|
|
106
|
+
<a name='L41'></a><a href='#L41'>41</a>
|
|
107
|
+
<a name='L42'></a><a href='#L42'>42</a>
|
|
108
|
+
<a name='L43'></a><a href='#L43'>43</a>
|
|
109
|
+
<a name='L44'></a><a href='#L44'>44</a>
|
|
110
|
+
<a name='L45'></a><a href='#L45'>45</a>
|
|
111
|
+
<a name='L46'></a><a href='#L46'>46</a>
|
|
112
|
+
<a name='L47'></a><a href='#L47'>47</a>
|
|
113
|
+
<a name='L48'></a><a href='#L48'>48</a>
|
|
114
|
+
<a name='L49'></a><a href='#L49'>49</a>
|
|
115
|
+
<a name='L50'></a><a href='#L50'>50</a>
|
|
116
|
+
<a name='L51'></a><a href='#L51'>51</a>
|
|
117
|
+
<a name='L52'></a><a href='#L52'>52</a>
|
|
118
|
+
<a name='L53'></a><a href='#L53'>53</a>
|
|
119
|
+
<a name='L54'></a><a href='#L54'>54</a>
|
|
120
|
+
<a name='L55'></a><a href='#L55'>55</a>
|
|
121
|
+
<a name='L56'></a><a href='#L56'>56</a>
|
|
122
|
+
<a name='L57'></a><a href='#L57'>57</a>
|
|
123
|
+
<a name='L58'></a><a href='#L58'>58</a>
|
|
124
|
+
<a name='L59'></a><a href='#L59'>59</a>
|
|
125
|
+
<a name='L60'></a><a href='#L60'>60</a>
|
|
126
|
+
<a name='L61'></a><a href='#L61'>61</a>
|
|
127
|
+
<a name='L62'></a><a href='#L62'>62</a>
|
|
128
|
+
<a name='L63'></a><a href='#L63'>63</a>
|
|
129
|
+
<a name='L64'></a><a href='#L64'>64</a>
|
|
130
|
+
<a name='L65'></a><a href='#L65'>65</a>
|
|
131
|
+
<a name='L66'></a><a href='#L66'>66</a>
|
|
132
|
+
<a name='L67'></a><a href='#L67'>67</a>
|
|
133
|
+
<a name='L68'></a><a href='#L68'>68</a>
|
|
134
|
+
<a name='L69'></a><a href='#L69'>69</a>
|
|
135
|
+
<a name='L70'></a><a href='#L70'>70</a>
|
|
136
|
+
<a name='L71'></a><a href='#L71'>71</a>
|
|
137
|
+
<a name='L72'></a><a href='#L72'>72</a>
|
|
138
|
+
<a name='L73'></a><a href='#L73'>73</a>
|
|
139
|
+
<a name='L74'></a><a href='#L74'>74</a>
|
|
140
|
+
<a name='L75'></a><a href='#L75'>75</a>
|
|
141
|
+
<a name='L76'></a><a href='#L76'>76</a>
|
|
142
|
+
<a name='L77'></a><a href='#L77'>77</a>
|
|
143
|
+
<a name='L78'></a><a href='#L78'>78</a>
|
|
144
|
+
<a name='L79'></a><a href='#L79'>79</a>
|
|
145
|
+
<a name='L80'></a><a href='#L80'>80</a>
|
|
146
|
+
<a name='L81'></a><a href='#L81'>81</a>
|
|
147
|
+
<a name='L82'></a><a href='#L82'>82</a>
|
|
148
|
+
<a name='L83'></a><a href='#L83'>83</a>
|
|
149
|
+
<a name='L84'></a><a href='#L84'>84</a>
|
|
150
|
+
<a name='L85'></a><a href='#L85'>85</a>
|
|
151
|
+
<a name='L86'></a><a href='#L86'>86</a>
|
|
152
|
+
<a name='L87'></a><a href='#L87'>87</a>
|
|
153
|
+
<a name='L88'></a><a href='#L88'>88</a>
|
|
154
|
+
<a name='L89'></a><a href='#L89'>89</a>
|
|
155
|
+
<a name='L90'></a><a href='#L90'>90</a>
|
|
156
|
+
<a name='L91'></a><a href='#L91'>91</a>
|
|
157
|
+
<a name='L92'></a><a href='#L92'>92</a>
|
|
158
|
+
<a name='L93'></a><a href='#L93'>93</a>
|
|
159
|
+
<a name='L94'></a><a href='#L94'>94</a>
|
|
160
|
+
<a name='L95'></a><a href='#L95'>95</a>
|
|
161
|
+
<a name='L96'></a><a href='#L96'>96</a>
|
|
162
|
+
<a name='L97'></a><a href='#L97'>97</a>
|
|
163
|
+
<a name='L98'></a><a href='#L98'>98</a>
|
|
164
|
+
<a name='L99'></a><a href='#L99'>99</a>
|
|
165
|
+
<a name='L100'></a><a href='#L100'>100</a>
|
|
166
|
+
<a name='L101'></a><a href='#L101'>101</a>
|
|
167
|
+
<a name='L102'></a><a href='#L102'>102</a>
|
|
168
|
+
<a name='L103'></a><a href='#L103'>103</a>
|
|
169
|
+
<a name='L104'></a><a href='#L104'>104</a>
|
|
170
|
+
<a name='L105'></a><a href='#L105'>105</a>
|
|
171
|
+
<a name='L106'></a><a href='#L106'>106</a>
|
|
172
|
+
<a name='L107'></a><a href='#L107'>107</a>
|
|
173
|
+
<a name='L108'></a><a href='#L108'>108</a>
|
|
174
|
+
<a name='L109'></a><a href='#L109'>109</a>
|
|
175
|
+
<a name='L110'></a><a href='#L110'>110</a>
|
|
176
|
+
<a name='L111'></a><a href='#L111'>111</a>
|
|
177
|
+
<a name='L112'></a><a href='#L112'>112</a>
|
|
178
|
+
<a name='L113'></a><a href='#L113'>113</a>
|
|
179
|
+
<a name='L114'></a><a href='#L114'>114</a>
|
|
180
|
+
<a name='L115'></a><a href='#L115'>115</a>
|
|
181
|
+
<a name='L116'></a><a href='#L116'>116</a>
|
|
182
|
+
<a name='L117'></a><a href='#L117'>117</a>
|
|
183
|
+
<a name='L118'></a><a href='#L118'>118</a>
|
|
184
|
+
<a name='L119'></a><a href='#L119'>119</a>
|
|
185
|
+
<a name='L120'></a><a href='#L120'>120</a>
|
|
186
|
+
<a name='L121'></a><a href='#L121'>121</a>
|
|
187
|
+
<a name='L122'></a><a href='#L122'>122</a>
|
|
188
|
+
<a name='L123'></a><a href='#L123'>123</a>
|
|
189
|
+
<a name='L124'></a><a href='#L124'>124</a>
|
|
190
|
+
<a name='L125'></a><a href='#L125'>125</a>
|
|
191
|
+
<a name='L126'></a><a href='#L126'>126</a>
|
|
192
|
+
<a name='L127'></a><a href='#L127'>127</a>
|
|
193
|
+
<a name='L128'></a><a href='#L128'>128</a>
|
|
194
|
+
<a name='L129'></a><a href='#L129'>129</a>
|
|
195
|
+
<a name='L130'></a><a href='#L130'>130</a>
|
|
196
|
+
<a name='L131'></a><a href='#L131'>131</a>
|
|
197
|
+
<a name='L132'></a><a href='#L132'>132</a>
|
|
198
|
+
<a name='L133'></a><a href='#L133'>133</a>
|
|
199
|
+
<a name='L134'></a><a href='#L134'>134</a>
|
|
200
|
+
<a name='L135'></a><a href='#L135'>135</a>
|
|
201
|
+
<a name='L136'></a><a href='#L136'>136</a>
|
|
202
|
+
<a name='L137'></a><a href='#L137'>137</a>
|
|
203
|
+
<a name='L138'></a><a href='#L138'>138</a>
|
|
204
|
+
<a name='L139'></a><a href='#L139'>139</a>
|
|
205
|
+
<a name='L140'></a><a href='#L140'>140</a>
|
|
206
|
+
<a name='L141'></a><a href='#L141'>141</a>
|
|
207
|
+
<a name='L142'></a><a href='#L142'>142</a>
|
|
208
|
+
<a name='L143'></a><a href='#L143'>143</a>
|
|
209
|
+
<a name='L144'></a><a href='#L144'>144</a>
|
|
210
|
+
<a name='L145'></a><a href='#L145'>145</a>
|
|
211
|
+
<a name='L146'></a><a href='#L146'>146</a>
|
|
212
|
+
<a name='L147'></a><a href='#L147'>147</a>
|
|
213
|
+
<a name='L148'></a><a href='#L148'>148</a>
|
|
214
|
+
<a name='L149'></a><a href='#L149'>149</a>
|
|
215
|
+
<a name='L150'></a><a href='#L150'>150</a>
|
|
216
|
+
<a name='L151'></a><a href='#L151'>151</a>
|
|
217
|
+
<a name='L152'></a><a href='#L152'>152</a>
|
|
218
|
+
<a name='L153'></a><a href='#L153'>153</a>
|
|
219
|
+
<a name='L154'></a><a href='#L154'>154</a>
|
|
220
|
+
<a name='L155'></a><a href='#L155'>155</a>
|
|
221
|
+
<a name='L156'></a><a href='#L156'>156</a>
|
|
222
|
+
<a name='L157'></a><a href='#L157'>157</a>
|
|
223
|
+
<a name='L158'></a><a href='#L158'>158</a>
|
|
224
|
+
<a name='L159'></a><a href='#L159'>159</a>
|
|
225
|
+
<a name='L160'></a><a href='#L160'>160</a>
|
|
226
|
+
<a name='L161'></a><a href='#L161'>161</a>
|
|
227
|
+
<a name='L162'></a><a href='#L162'>162</a>
|
|
228
|
+
<a name='L163'></a><a href='#L163'>163</a>
|
|
229
|
+
<a name='L164'></a><a href='#L164'>164</a>
|
|
230
|
+
<a name='L165'></a><a href='#L165'>165</a>
|
|
231
|
+
<a name='L166'></a><a href='#L166'>166</a>
|
|
232
|
+
<a name='L167'></a><a href='#L167'>167</a>
|
|
233
|
+
<a name='L168'></a><a href='#L168'>168</a>
|
|
234
|
+
<a name='L169'></a><a href='#L169'>169</a>
|
|
235
|
+
<a name='L170'></a><a href='#L170'>170</a>
|
|
236
|
+
<a name='L171'></a><a href='#L171'>171</a>
|
|
237
|
+
<a name='L172'></a><a href='#L172'>172</a>
|
|
238
|
+
<a name='L173'></a><a href='#L173'>173</a>
|
|
239
|
+
<a name='L174'></a><a href='#L174'>174</a>
|
|
240
|
+
<a name='L175'></a><a href='#L175'>175</a>
|
|
241
|
+
<a name='L176'></a><a href='#L176'>176</a>
|
|
242
|
+
<a name='L177'></a><a href='#L177'>177</a>
|
|
243
|
+
<a name='L178'></a><a href='#L178'>178</a>
|
|
244
|
+
<a name='L179'></a><a href='#L179'>179</a>
|
|
245
|
+
<a name='L180'></a><a href='#L180'>180</a>
|
|
246
|
+
<a name='L181'></a><a href='#L181'>181</a>
|
|
247
|
+
<a name='L182'></a><a href='#L182'>182</a>
|
|
248
|
+
<a name='L183'></a><a href='#L183'>183</a>
|
|
249
|
+
<a name='L184'></a><a href='#L184'>184</a>
|
|
250
|
+
<a name='L185'></a><a href='#L185'>185</a>
|
|
251
|
+
<a name='L186'></a><a href='#L186'>186</a>
|
|
252
|
+
<a name='L187'></a><a href='#L187'>187</a>
|
|
253
|
+
<a name='L188'></a><a href='#L188'>188</a>
|
|
254
|
+
<a name='L189'></a><a href='#L189'>189</a>
|
|
255
|
+
<a name='L190'></a><a href='#L190'>190</a>
|
|
256
|
+
<a name='L191'></a><a href='#L191'>191</a>
|
|
257
|
+
<a name='L192'></a><a href='#L192'>192</a>
|
|
258
|
+
<a name='L193'></a><a href='#L193'>193</a>
|
|
259
|
+
<a name='L194'></a><a href='#L194'>194</a>
|
|
260
|
+
<a name='L195'></a><a href='#L195'>195</a>
|
|
261
|
+
<a name='L196'></a><a href='#L196'>196</a>
|
|
262
|
+
<a name='L197'></a><a href='#L197'>197</a>
|
|
263
|
+
<a name='L198'></a><a href='#L198'>198</a>
|
|
264
|
+
<a name='L199'></a><a href='#L199'>199</a>
|
|
265
|
+
<a name='L200'></a><a href='#L200'>200</a>
|
|
266
|
+
<a name='L201'></a><a href='#L201'>201</a>
|
|
267
|
+
<a name='L202'></a><a href='#L202'>202</a>
|
|
268
|
+
<a name='L203'></a><a href='#L203'>203</a>
|
|
269
|
+
<a name='L204'></a><a href='#L204'>204</a>
|
|
270
|
+
<a name='L205'></a><a href='#L205'>205</a>
|
|
271
|
+
<a name='L206'></a><a href='#L206'>206</a>
|
|
272
|
+
<a name='L207'></a><a href='#L207'>207</a>
|
|
273
|
+
<a name='L208'></a><a href='#L208'>208</a>
|
|
274
|
+
<a name='L209'></a><a href='#L209'>209</a>
|
|
275
|
+
<a name='L210'></a><a href='#L210'>210</a>
|
|
276
|
+
<a name='L211'></a><a href='#L211'>211</a>
|
|
277
|
+
<a name='L212'></a><a href='#L212'>212</a>
|
|
278
|
+
<a name='L213'></a><a href='#L213'>213</a>
|
|
279
|
+
<a name='L214'></a><a href='#L214'>214</a>
|
|
280
|
+
<a name='L215'></a><a href='#L215'>215</a>
|
|
281
|
+
<a name='L216'></a><a href='#L216'>216</a>
|
|
282
|
+
<a name='L217'></a><a href='#L217'>217</a>
|
|
283
|
+
<a name='L218'></a><a href='#L218'>218</a>
|
|
284
|
+
<a name='L219'></a><a href='#L219'>219</a>
|
|
285
|
+
<a name='L220'></a><a href='#L220'>220</a>
|
|
286
|
+
<a name='L221'></a><a href='#L221'>221</a>
|
|
287
|
+
<a name='L222'></a><a href='#L222'>222</a>
|
|
288
|
+
<a name='L223'></a><a href='#L223'>223</a>
|
|
289
|
+
<a name='L224'></a><a href='#L224'>224</a>
|
|
290
|
+
<a name='L225'></a><a href='#L225'>225</a>
|
|
291
|
+
<a name='L226'></a><a href='#L226'>226</a>
|
|
292
|
+
<a name='L227'></a><a href='#L227'>227</a>
|
|
293
|
+
<a name='L228'></a><a href='#L228'>228</a>
|
|
294
|
+
<a name='L229'></a><a href='#L229'>229</a>
|
|
295
|
+
<a name='L230'></a><a href='#L230'>230</a>
|
|
296
|
+
<a name='L231'></a><a href='#L231'>231</a>
|
|
297
|
+
<a name='L232'></a><a href='#L232'>232</a>
|
|
298
|
+
<a name='L233'></a><a href='#L233'>233</a>
|
|
299
|
+
<a name='L234'></a><a href='#L234'>234</a>
|
|
300
|
+
<a name='L235'></a><a href='#L235'>235</a>
|
|
301
|
+
<a name='L236'></a><a href='#L236'>236</a>
|
|
302
|
+
<a name='L237'></a><a href='#L237'>237</a>
|
|
303
|
+
<a name='L238'></a><a href='#L238'>238</a>
|
|
304
|
+
<a name='L239'></a><a href='#L239'>239</a>
|
|
305
|
+
<a name='L240'></a><a href='#L240'>240</a>
|
|
306
|
+
<a name='L241'></a><a href='#L241'>241</a>
|
|
307
|
+
<a name='L242'></a><a href='#L242'>242</a>
|
|
308
|
+
<a name='L243'></a><a href='#L243'>243</a>
|
|
309
|
+
<a name='L244'></a><a href='#L244'>244</a>
|
|
310
|
+
<a name='L245'></a><a href='#L245'>245</a>
|
|
311
|
+
<a name='L246'></a><a href='#L246'>246</a>
|
|
312
|
+
<a name='L247'></a><a href='#L247'>247</a>
|
|
313
|
+
<a name='L248'></a><a href='#L248'>248</a>
|
|
314
|
+
<a name='L249'></a><a href='#L249'>249</a>
|
|
315
|
+
<a name='L250'></a><a href='#L250'>250</a>
|
|
316
|
+
<a name='L251'></a><a href='#L251'>251</a>
|
|
317
|
+
<a name='L252'></a><a href='#L252'>252</a>
|
|
318
|
+
<a name='L253'></a><a href='#L253'>253</a>
|
|
319
|
+
<a name='L254'></a><a href='#L254'>254</a>
|
|
320
|
+
<a name='L255'></a><a href='#L255'>255</a>
|
|
321
|
+
<a name='L256'></a><a href='#L256'>256</a>
|
|
322
|
+
<a name='L257'></a><a href='#L257'>257</a>
|
|
323
|
+
<a name='L258'></a><a href='#L258'>258</a>
|
|
324
|
+
<a name='L259'></a><a href='#L259'>259</a>
|
|
325
|
+
<a name='L260'></a><a href='#L260'>260</a>
|
|
326
|
+
<a name='L261'></a><a href='#L261'>261</a>
|
|
327
|
+
<a name='L262'></a><a href='#L262'>262</a>
|
|
328
|
+
<a name='L263'></a><a href='#L263'>263</a>
|
|
329
|
+
<a name='L264'></a><a href='#L264'>264</a>
|
|
330
|
+
<a name='L265'></a><a href='#L265'>265</a>
|
|
331
|
+
<a name='L266'></a><a href='#L266'>266</a>
|
|
332
|
+
<a name='L267'></a><a href='#L267'>267</a>
|
|
333
|
+
<a name='L268'></a><a href='#L268'>268</a>
|
|
334
|
+
<a name='L269'></a><a href='#L269'>269</a>
|
|
335
|
+
<a name='L270'></a><a href='#L270'>270</a>
|
|
336
|
+
<a name='L271'></a><a href='#L271'>271</a>
|
|
337
|
+
<a name='L272'></a><a href='#L272'>272</a>
|
|
338
|
+
<a name='L273'></a><a href='#L273'>273</a>
|
|
339
|
+
<a name='L274'></a><a href='#L274'>274</a>
|
|
340
|
+
<a name='L275'></a><a href='#L275'>275</a>
|
|
341
|
+
<a name='L276'></a><a href='#L276'>276</a>
|
|
342
|
+
<a name='L277'></a><a href='#L277'>277</a>
|
|
343
|
+
<a name='L278'></a><a href='#L278'>278</a>
|
|
344
|
+
<a name='L279'></a><a href='#L279'>279</a>
|
|
345
|
+
<a name='L280'></a><a href='#L280'>280</a>
|
|
346
|
+
<a name='L281'></a><a href='#L281'>281</a>
|
|
347
|
+
<a name='L282'></a><a href='#L282'>282</a>
|
|
348
|
+
<a name='L283'></a><a href='#L283'>283</a>
|
|
349
|
+
<a name='L284'></a><a href='#L284'>284</a>
|
|
350
|
+
<a name='L285'></a><a href='#L285'>285</a>
|
|
351
|
+
<a name='L286'></a><a href='#L286'>286</a>
|
|
352
|
+
<a name='L287'></a><a href='#L287'>287</a>
|
|
353
|
+
<a name='L288'></a><a href='#L288'>288</a>
|
|
354
|
+
<a name='L289'></a><a href='#L289'>289</a>
|
|
355
|
+
<a name='L290'></a><a href='#L290'>290</a>
|
|
356
|
+
<a name='L291'></a><a href='#L291'>291</a>
|
|
357
|
+
<a name='L292'></a><a href='#L292'>292</a>
|
|
358
|
+
<a name='L293'></a><a href='#L293'>293</a>
|
|
359
|
+
<a name='L294'></a><a href='#L294'>294</a>
|
|
360
|
+
<a name='L295'></a><a href='#L295'>295</a>
|
|
361
|
+
<a name='L296'></a><a href='#L296'>296</a>
|
|
362
|
+
<a name='L297'></a><a href='#L297'>297</a>
|
|
363
|
+
<a name='L298'></a><a href='#L298'>298</a>
|
|
364
|
+
<a name='L299'></a><a href='#L299'>299</a>
|
|
365
|
+
<a name='L300'></a><a href='#L300'>300</a>
|
|
366
|
+
<a name='L301'></a><a href='#L301'>301</a>
|
|
367
|
+
<a name='L302'></a><a href='#L302'>302</a>
|
|
368
|
+
<a name='L303'></a><a href='#L303'>303</a>
|
|
369
|
+
<a name='L304'></a><a href='#L304'>304</a>
|
|
370
|
+
<a name='L305'></a><a href='#L305'>305</a>
|
|
371
|
+
<a name='L306'></a><a href='#L306'>306</a>
|
|
372
|
+
<a name='L307'></a><a href='#L307'>307</a>
|
|
373
|
+
<a name='L308'></a><a href='#L308'>308</a>
|
|
374
|
+
<a name='L309'></a><a href='#L309'>309</a>
|
|
375
|
+
<a name='L310'></a><a href='#L310'>310</a>
|
|
376
|
+
<a name='L311'></a><a href='#L311'>311</a>
|
|
377
|
+
<a name='L312'></a><a href='#L312'>312</a>
|
|
378
|
+
<a name='L313'></a><a href='#L313'>313</a>
|
|
379
|
+
<a name='L314'></a><a href='#L314'>314</a>
|
|
380
|
+
<a name='L315'></a><a href='#L315'>315</a>
|
|
381
|
+
<a name='L316'></a><a href='#L316'>316</a>
|
|
382
|
+
<a name='L317'></a><a href='#L317'>317</a>
|
|
383
|
+
<a name='L318'></a><a href='#L318'>318</a>
|
|
384
|
+
<a name='L319'></a><a href='#L319'>319</a>
|
|
385
|
+
<a name='L320'></a><a href='#L320'>320</a>
|
|
386
|
+
<a name='L321'></a><a href='#L321'>321</a>
|
|
387
|
+
<a name='L322'></a><a href='#L322'>322</a>
|
|
388
|
+
<a name='L323'></a><a href='#L323'>323</a>
|
|
389
|
+
<a name='L324'></a><a href='#L324'>324</a>
|
|
390
|
+
<a name='L325'></a><a href='#L325'>325</a>
|
|
391
|
+
<a name='L326'></a><a href='#L326'>326</a>
|
|
392
|
+
<a name='L327'></a><a href='#L327'>327</a>
|
|
393
|
+
<a name='L328'></a><a href='#L328'>328</a>
|
|
394
|
+
<a name='L329'></a><a href='#L329'>329</a>
|
|
395
|
+
<a name='L330'></a><a href='#L330'>330</a>
|
|
396
|
+
<a name='L331'></a><a href='#L331'>331</a>
|
|
397
|
+
<a name='L332'></a><a href='#L332'>332</a>
|
|
398
|
+
<a name='L333'></a><a href='#L333'>333</a>
|
|
399
|
+
<a name='L334'></a><a href='#L334'>334</a>
|
|
400
|
+
<a name='L335'></a><a href='#L335'>335</a>
|
|
401
|
+
<a name='L336'></a><a href='#L336'>336</a>
|
|
402
|
+
<a name='L337'></a><a href='#L337'>337</a>
|
|
403
|
+
<a name='L338'></a><a href='#L338'>338</a>
|
|
404
|
+
<a name='L339'></a><a href='#L339'>339</a>
|
|
405
|
+
<a name='L340'></a><a href='#L340'>340</a>
|
|
406
|
+
<a name='L341'></a><a href='#L341'>341</a>
|
|
407
|
+
<a name='L342'></a><a href='#L342'>342</a>
|
|
408
|
+
<a name='L343'></a><a href='#L343'>343</a>
|
|
409
|
+
<a name='L344'></a><a href='#L344'>344</a>
|
|
410
|
+
<a name='L345'></a><a href='#L345'>345</a>
|
|
411
|
+
<a name='L346'></a><a href='#L346'>346</a>
|
|
412
|
+
<a name='L347'></a><a href='#L347'>347</a>
|
|
413
|
+
<a name='L348'></a><a href='#L348'>348</a>
|
|
414
|
+
<a name='L349'></a><a href='#L349'>349</a>
|
|
415
|
+
<a name='L350'></a><a href='#L350'>350</a>
|
|
416
|
+
<a name='L351'></a><a href='#L351'>351</a>
|
|
417
|
+
<a name='L352'></a><a href='#L352'>352</a>
|
|
418
|
+
<a name='L353'></a><a href='#L353'>353</a>
|
|
419
|
+
<a name='L354'></a><a href='#L354'>354</a>
|
|
420
|
+
<a name='L355'></a><a href='#L355'>355</a>
|
|
421
|
+
<a name='L356'></a><a href='#L356'>356</a>
|
|
422
|
+
<a name='L357'></a><a href='#L357'>357</a>
|
|
423
|
+
<a name='L358'></a><a href='#L358'>358</a>
|
|
424
|
+
<a name='L359'></a><a href='#L359'>359</a>
|
|
425
|
+
<a name='L360'></a><a href='#L360'>360</a>
|
|
426
|
+
<a name='L361'></a><a href='#L361'>361</a>
|
|
427
|
+
<a name='L362'></a><a href='#L362'>362</a>
|
|
428
|
+
<a name='L363'></a><a href='#L363'>363</a>
|
|
429
|
+
<a name='L364'></a><a href='#L364'>364</a>
|
|
430
|
+
<a name='L365'></a><a href='#L365'>365</a>
|
|
431
|
+
<a name='L366'></a><a href='#L366'>366</a>
|
|
432
|
+
<a name='L367'></a><a href='#L367'>367</a>
|
|
433
|
+
<a name='L368'></a><a href='#L368'>368</a>
|
|
434
|
+
<a name='L369'></a><a href='#L369'>369</a>
|
|
435
|
+
<a name='L370'></a><a href='#L370'>370</a>
|
|
436
|
+
<a name='L371'></a><a href='#L371'>371</a>
|
|
437
|
+
<a name='L372'></a><a href='#L372'>372</a>
|
|
438
|
+
<a name='L373'></a><a href='#L373'>373</a>
|
|
439
|
+
<a name='L374'></a><a href='#L374'>374</a>
|
|
440
|
+
<a name='L375'></a><a href='#L375'>375</a>
|
|
441
|
+
<a name='L376'></a><a href='#L376'>376</a>
|
|
442
|
+
<a name='L377'></a><a href='#L377'>377</a>
|
|
443
|
+
<a name='L378'></a><a href='#L378'>378</a>
|
|
444
|
+
<a name='L379'></a><a href='#L379'>379</a>
|
|
445
|
+
<a name='L380'></a><a href='#L380'>380</a>
|
|
446
|
+
<a name='L381'></a><a href='#L381'>381</a>
|
|
447
|
+
<a name='L382'></a><a href='#L382'>382</a>
|
|
448
|
+
<a name='L383'></a><a href='#L383'>383</a>
|
|
449
|
+
<a name='L384'></a><a href='#L384'>384</a>
|
|
450
|
+
<a name='L385'></a><a href='#L385'>385</a>
|
|
451
|
+
<a name='L386'></a><a href='#L386'>386</a>
|
|
452
|
+
<a name='L387'></a><a href='#L387'>387</a>
|
|
453
|
+
<a name='L388'></a><a href='#L388'>388</a>
|
|
454
|
+
<a name='L389'></a><a href='#L389'>389</a>
|
|
455
|
+
<a name='L390'></a><a href='#L390'>390</a>
|
|
456
|
+
<a name='L391'></a><a href='#L391'>391</a>
|
|
457
|
+
<a name='L392'></a><a href='#L392'>392</a>
|
|
458
|
+
<a name='L393'></a><a href='#L393'>393</a>
|
|
459
|
+
<a name='L394'></a><a href='#L394'>394</a>
|
|
460
|
+
<a name='L395'></a><a href='#L395'>395</a>
|
|
461
|
+
<a name='L396'></a><a href='#L396'>396</a>
|
|
462
|
+
<a name='L397'></a><a href='#L397'>397</a>
|
|
463
|
+
<a name='L398'></a><a href='#L398'>398</a>
|
|
464
|
+
<a name='L399'></a><a href='#L399'>399</a>
|
|
465
|
+
<a name='L400'></a><a href='#L400'>400</a>
|
|
466
|
+
<a name='L401'></a><a href='#L401'>401</a>
|
|
467
|
+
<a name='L402'></a><a href='#L402'>402</a>
|
|
468
|
+
<a name='L403'></a><a href='#L403'>403</a>
|
|
469
|
+
<a name='L404'></a><a href='#L404'>404</a>
|
|
470
|
+
<a name='L405'></a><a href='#L405'>405</a>
|
|
471
|
+
<a name='L406'></a><a href='#L406'>406</a>
|
|
472
|
+
<a name='L407'></a><a href='#L407'>407</a>
|
|
473
|
+
<a name='L408'></a><a href='#L408'>408</a>
|
|
474
|
+
<a name='L409'></a><a href='#L409'>409</a>
|
|
475
|
+
<a name='L410'></a><a href='#L410'>410</a>
|
|
476
|
+
<a name='L411'></a><a href='#L411'>411</a>
|
|
477
|
+
<a name='L412'></a><a href='#L412'>412</a>
|
|
478
|
+
<a name='L413'></a><a href='#L413'>413</a>
|
|
479
|
+
<a name='L414'></a><a href='#L414'>414</a>
|
|
480
|
+
<a name='L415'></a><a href='#L415'>415</a>
|
|
481
|
+
<a name='L416'></a><a href='#L416'>416</a>
|
|
482
|
+
<a name='L417'></a><a href='#L417'>417</a>
|
|
483
|
+
<a name='L418'></a><a href='#L418'>418</a>
|
|
484
|
+
<a name='L419'></a><a href='#L419'>419</a>
|
|
485
|
+
<a name='L420'></a><a href='#L420'>420</a>
|
|
486
|
+
<a name='L421'></a><a href='#L421'>421</a>
|
|
487
|
+
<a name='L422'></a><a href='#L422'>422</a>
|
|
488
|
+
<a name='L423'></a><a href='#L423'>423</a>
|
|
489
|
+
<a name='L424'></a><a href='#L424'>424</a>
|
|
490
|
+
<a name='L425'></a><a href='#L425'>425</a>
|
|
491
|
+
<a name='L426'></a><a href='#L426'>426</a>
|
|
492
|
+
<a name='L427'></a><a href='#L427'>427</a>
|
|
493
|
+
<a name='L428'></a><a href='#L428'>428</a>
|
|
494
|
+
<a name='L429'></a><a href='#L429'>429</a>
|
|
495
|
+
<a name='L430'></a><a href='#L430'>430</a>
|
|
496
|
+
<a name='L431'></a><a href='#L431'>431</a>
|
|
497
|
+
<a name='L432'></a><a href='#L432'>432</a>
|
|
498
|
+
<a name='L433'></a><a href='#L433'>433</a>
|
|
499
|
+
<a name='L434'></a><a href='#L434'>434</a>
|
|
500
|
+
<a name='L435'></a><a href='#L435'>435</a>
|
|
501
|
+
<a name='L436'></a><a href='#L436'>436</a>
|
|
502
|
+
<a name='L437'></a><a href='#L437'>437</a>
|
|
503
|
+
<a name='L438'></a><a href='#L438'>438</a>
|
|
504
|
+
<a name='L439'></a><a href='#L439'>439</a>
|
|
505
|
+
<a name='L440'></a><a href='#L440'>440</a>
|
|
506
|
+
<a name='L441'></a><a href='#L441'>441</a>
|
|
507
|
+
<a name='L442'></a><a href='#L442'>442</a>
|
|
508
|
+
<a name='L443'></a><a href='#L443'>443</a>
|
|
509
|
+
<a name='L444'></a><a href='#L444'>444</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
|
510
|
+
<span class="cline-any cline-neutral"> </span>
|
|
511
|
+
<span class="cline-any cline-neutral"> </span>
|
|
512
|
+
<span class="cline-any cline-neutral"> </span>
|
|
513
|
+
<span class="cline-any cline-yes">1x</span>
|
|
514
|
+
<span class="cline-any cline-yes">1x</span>
|
|
515
|
+
<span class="cline-any cline-neutral"> </span>
|
|
516
|
+
<span class="cline-any cline-neutral"> </span>
|
|
517
|
+
<span class="cline-any cline-neutral"> </span>
|
|
518
|
+
<span class="cline-any cline-neutral"> </span>
|
|
519
|
+
<span class="cline-any cline-yes">1x</span>
|
|
520
|
+
<span class="cline-any cline-yes">59x</span>
|
|
521
|
+
<span class="cline-any cline-yes">59x</span>
|
|
522
|
+
<span class="cline-any cline-neutral"> </span>
|
|
523
|
+
<span class="cline-any cline-yes">59x</span>
|
|
524
|
+
<span class="cline-any cline-yes">59x</span>
|
|
525
|
+
<span class="cline-any cline-yes">27x</span>
|
|
526
|
+
<span class="cline-any cline-neutral"> </span>
|
|
527
|
+
<span class="cline-any cline-yes">59x</span>
|
|
528
|
+
<span class="cline-any cline-yes">16x</span>
|
|
529
|
+
<span class="cline-any cline-yes">16x</span>
|
|
530
|
+
<span class="cline-any cline-neutral"> </span>
|
|
531
|
+
<span class="cline-any cline-yes">59x</span>
|
|
532
|
+
<span class="cline-any cline-no"> </span>
|
|
533
|
+
<span class="cline-any cline-no"> </span>
|
|
534
|
+
<span class="cline-any cline-neutral"> </span>
|
|
535
|
+
<span class="cline-any cline-yes">59x</span>
|
|
536
|
+
<span class="cline-any cline-yes">16x</span>
|
|
537
|
+
<span class="cline-any cline-yes">16x</span>
|
|
538
|
+
<span class="cline-any cline-neutral"> </span>
|
|
539
|
+
<span class="cline-any cline-yes">59x</span>
|
|
540
|
+
<span class="cline-any cline-no"> </span>
|
|
541
|
+
<span class="cline-any cline-no"> </span>
|
|
542
|
+
<span class="cline-any cline-neutral"> </span>
|
|
543
|
+
<span class="cline-any cline-neutral"> </span>
|
|
544
|
+
<span class="cline-any cline-neutral"> </span>
|
|
545
|
+
<span class="cline-any cline-yes">59x</span>
|
|
546
|
+
<span class="cline-any cline-yes">194x</span>
|
|
547
|
+
<span class="cline-any cline-yes">194x</span>
|
|
548
|
+
<span class="cline-any cline-neutral"> </span>
|
|
549
|
+
<span class="cline-any cline-yes">131x</span>
|
|
550
|
+
<span class="cline-any cline-yes">113x</span>
|
|
551
|
+
<span class="cline-any cline-no"> </span>
|
|
552
|
+
<span class="cline-any cline-neutral"> </span>
|
|
553
|
+
<span class="cline-any cline-yes">113x</span>
|
|
554
|
+
<span class="cline-any cline-yes">113x</span>
|
|
555
|
+
<span class="cline-any cline-yes">113x</span>
|
|
556
|
+
<span class="cline-any cline-neutral"> </span>
|
|
557
|
+
<span class="cline-any cline-yes">81x</span>
|
|
558
|
+
<span class="cline-any cline-neutral"> </span>
|
|
559
|
+
<span class="cline-any cline-yes">81x</span>
|
|
560
|
+
<span class="cline-any cline-yes">70x</span>
|
|
561
|
+
<span class="cline-any cline-yes">70x</span>
|
|
562
|
+
<span class="cline-any cline-yes">70x</span>
|
|
563
|
+
<span class="cline-any cline-yes">70x</span>
|
|
564
|
+
<span class="cline-any cline-yes">70x</span>
|
|
565
|
+
<span class="cline-any cline-neutral"> </span>
|
|
566
|
+
<span class="cline-any cline-no"> </span>
|
|
567
|
+
<span class="cline-any cline-neutral"> </span>
|
|
568
|
+
<span class="cline-any cline-yes">11x</span>
|
|
569
|
+
<span class="cline-any cline-yes">11x</span>
|
|
570
|
+
<span class="cline-any cline-yes">11x</span>
|
|
571
|
+
<span class="cline-any cline-yes">11x</span>
|
|
572
|
+
<span class="cline-any cline-neutral"> </span>
|
|
573
|
+
<span class="cline-any cline-neutral"> </span>
|
|
574
|
+
<span class="cline-any cline-yes">11x</span>
|
|
575
|
+
<span class="cline-any cline-no"> </span>
|
|
576
|
+
<span class="cline-any cline-neutral"> </span>
|
|
577
|
+
<span class="cline-any cline-neutral"> </span>
|
|
578
|
+
<span class="cline-any cline-yes">59x</span>
|
|
579
|
+
<span class="cline-any cline-neutral"> </span>
|
|
580
|
+
<span class="cline-any cline-neutral"> </span>
|
|
581
|
+
<span class="cline-any cline-neutral"> </span>
|
|
582
|
+
<span class="cline-any cline-neutral"> </span>
|
|
583
|
+
<span class="cline-any cline-neutral"> </span>
|
|
584
|
+
<span class="cline-any cline-yes">1x</span>
|
|
585
|
+
<span class="cline-any cline-yes">5x</span>
|
|
586
|
+
<span class="cline-any cline-no"> </span>
|
|
587
|
+
<span class="cline-any cline-no"> </span>
|
|
588
|
+
<span class="cline-any cline-no"> </span>
|
|
589
|
+
<span class="cline-any cline-no"> </span>
|
|
590
|
+
<span class="cline-any cline-neutral"> </span>
|
|
591
|
+
<span class="cline-any cline-yes">5x</span>
|
|
592
|
+
<span class="cline-any cline-no"> </span>
|
|
593
|
+
<span class="cline-any cline-yes">5x</span>
|
|
594
|
+
<span class="cline-any cline-no"> </span>
|
|
595
|
+
<span class="cline-any cline-yes">5x</span>
|
|
596
|
+
<span class="cline-any cline-no"> </span>
|
|
597
|
+
<span class="cline-any cline-yes">5x</span>
|
|
598
|
+
<span class="cline-any cline-yes">1x</span>
|
|
599
|
+
<span class="cline-any cline-yes">1x</span>
|
|
600
|
+
<span class="cline-any cline-yes">4x</span>
|
|
601
|
+
<span class="cline-any cline-no"> </span>
|
|
602
|
+
<span class="cline-any cline-yes">4x</span>
|
|
603
|
+
<span class="cline-any cline-no"> </span>
|
|
604
|
+
<span class="cline-any cline-yes">4x</span>
|
|
605
|
+
<span class="cline-any cline-no"> </span>
|
|
606
|
+
<span class="cline-any cline-no"> </span>
|
|
607
|
+
<span class="cline-any cline-yes">4x</span>
|
|
608
|
+
<span class="cline-any cline-yes">3x</span>
|
|
609
|
+
<span class="cline-any cline-yes">3x</span>
|
|
610
|
+
<span class="cline-any cline-yes">1x</span>
|
|
611
|
+
<span class="cline-any cline-no"> </span>
|
|
612
|
+
<span class="cline-any cline-no"> </span>
|
|
613
|
+
<span class="cline-any cline-no"> </span>
|
|
614
|
+
<span class="cline-any cline-no"> </span>
|
|
615
|
+
<span class="cline-any cline-neutral"> </span>
|
|
616
|
+
<span class="cline-any cline-neutral"> </span>
|
|
617
|
+
<span class="cline-any cline-neutral"> </span>
|
|
618
|
+
<span class="cline-any cline-yes">1x</span>
|
|
619
|
+
<span class="cline-any cline-neutral"> </span>
|
|
620
|
+
<span class="cline-any cline-neutral"> </span>
|
|
621
|
+
<span class="cline-any cline-neutral"> </span>
|
|
622
|
+
<span class="cline-any cline-neutral"> </span>
|
|
623
|
+
<span class="cline-any cline-neutral"> </span>
|
|
624
|
+
<span class="cline-any cline-neutral"> </span>
|
|
625
|
+
<span class="cline-any cline-neutral"> </span>
|
|
626
|
+
<span class="cline-any cline-neutral"> </span>
|
|
627
|
+
<span class="cline-any cline-neutral"> </span>
|
|
628
|
+
<span class="cline-any cline-neutral"> </span>
|
|
629
|
+
<span class="cline-any cline-neutral"> </span>
|
|
630
|
+
<span class="cline-any cline-neutral"> </span>
|
|
631
|
+
<span class="cline-any cline-yes">1x</span>
|
|
632
|
+
<span class="cline-any cline-neutral"> </span>
|
|
633
|
+
<span class="cline-any cline-yes">1x</span>
|
|
634
|
+
<span class="cline-any cline-neutral"> </span>
|
|
635
|
+
<span class="cline-any cline-neutral"> </span>
|
|
636
|
+
<span class="cline-any cline-neutral"> </span>
|
|
637
|
+
<span class="cline-any cline-neutral"> </span>
|
|
638
|
+
<span class="cline-any cline-neutral"> </span>
|
|
639
|
+
<span class="cline-any cline-neutral"> </span>
|
|
640
|
+
<span class="cline-any cline-neutral"> </span>
|
|
641
|
+
<span class="cline-any cline-yes">1x</span>
|
|
642
|
+
<span class="cline-any cline-neutral"> </span>
|
|
643
|
+
<span class="cline-any cline-neutral"> </span>
|
|
644
|
+
<span class="cline-any cline-neutral"> </span>
|
|
645
|
+
<span class="cline-any cline-neutral"> </span>
|
|
646
|
+
<span class="cline-any cline-neutral"> </span>
|
|
647
|
+
<span class="cline-any cline-neutral"> </span>
|
|
648
|
+
<span class="cline-any cline-yes">1x</span>
|
|
649
|
+
<span class="cline-any cline-neutral"> </span>
|
|
650
|
+
<span class="cline-any cline-no"> </span>
|
|
651
|
+
<span class="cline-any cline-neutral"> </span>
|
|
652
|
+
<span class="cline-any cline-no"> </span>
|
|
653
|
+
<span class="cline-any cline-neutral"> </span>
|
|
654
|
+
<span class="cline-any cline-no"> </span>
|
|
655
|
+
<span class="cline-any cline-neutral"> </span>
|
|
656
|
+
<span class="cline-any cline-no"> </span>
|
|
657
|
+
<span class="cline-any cline-neutral"> </span>
|
|
658
|
+
<span class="cline-any cline-no"> </span>
|
|
659
|
+
<span class="cline-any cline-neutral"> </span>
|
|
660
|
+
<span class="cline-any cline-no"> </span>
|
|
661
|
+
<span class="cline-any cline-neutral"> </span>
|
|
662
|
+
<span class="cline-any cline-no"> </span>
|
|
663
|
+
<span class="cline-any cline-neutral"> </span>
|
|
664
|
+
<span class="cline-any cline-neutral"> </span>
|
|
665
|
+
<span class="cline-any cline-yes">1x</span>
|
|
666
|
+
<span class="cline-any cline-neutral"> </span>
|
|
667
|
+
<span class="cline-any cline-yes">1x</span>
|
|
668
|
+
<span class="cline-any cline-neutral"> </span>
|
|
669
|
+
<span class="cline-any cline-neutral"> </span>
|
|
670
|
+
<span class="cline-any cline-neutral"> </span>
|
|
671
|
+
<span class="cline-any cline-neutral"> </span>
|
|
672
|
+
<span class="cline-any cline-neutral"> </span>
|
|
673
|
+
<span class="cline-any cline-neutral"> </span>
|
|
674
|
+
<span class="cline-any cline-neutral"> </span>
|
|
675
|
+
<span class="cline-any cline-no"> </span>
|
|
676
|
+
<span class="cline-any cline-neutral"> </span>
|
|
677
|
+
<span class="cline-any cline-neutral"> </span>
|
|
678
|
+
<span class="cline-any cline-yes">1x</span>
|
|
679
|
+
<span class="cline-any cline-neutral"> </span>
|
|
680
|
+
<span class="cline-any cline-neutral"> </span>
|
|
681
|
+
<span class="cline-any cline-neutral"> </span>
|
|
682
|
+
<span class="cline-any cline-neutral"> </span>
|
|
683
|
+
<span class="cline-any cline-neutral"> </span>
|
|
684
|
+
<span class="cline-any cline-neutral"> </span>
|
|
685
|
+
<span class="cline-any cline-neutral"> </span>
|
|
686
|
+
<span class="cline-any cline-neutral"> </span>
|
|
687
|
+
<span class="cline-any cline-neutral"> </span>
|
|
688
|
+
<span class="cline-any cline-neutral"> </span>
|
|
689
|
+
<span class="cline-any cline-yes">1x</span>
|
|
690
|
+
<span class="cline-any cline-neutral"> </span>
|
|
691
|
+
<span class="cline-any cline-neutral"> </span>
|
|
692
|
+
<span class="cline-any cline-neutral"> </span>
|
|
693
|
+
<span class="cline-any cline-neutral"> </span>
|
|
694
|
+
<span class="cline-any cline-neutral"> </span>
|
|
695
|
+
<span class="cline-any cline-neutral"> </span>
|
|
696
|
+
<span class="cline-any cline-neutral"> </span>
|
|
697
|
+
<span class="cline-any cline-neutral"> </span>
|
|
698
|
+
<span class="cline-any cline-neutral"> </span>
|
|
699
|
+
<span class="cline-any cline-neutral"> </span>
|
|
700
|
+
<span class="cline-any cline-neutral"> </span>
|
|
701
|
+
<span class="cline-any cline-neutral"> </span>
|
|
702
|
+
<span class="cline-any cline-yes">1x</span>
|
|
703
|
+
<span class="cline-any cline-no"> </span>
|
|
704
|
+
<span class="cline-any cline-no"> </span>
|
|
705
|
+
<span class="cline-any cline-neutral"> </span>
|
|
706
|
+
<span class="cline-any cline-no"> </span>
|
|
707
|
+
<span class="cline-any cline-no"> </span>
|
|
708
|
+
<span class="cline-any cline-neutral"> </span>
|
|
709
|
+
<span class="cline-any cline-no"> </span>
|
|
710
|
+
<span class="cline-any cline-no"> </span>
|
|
711
|
+
<span class="cline-any cline-no"> </span>
|
|
712
|
+
<span class="cline-any cline-neutral"> </span>
|
|
713
|
+
<span class="cline-any cline-no"> </span>
|
|
714
|
+
<span class="cline-any cline-neutral"> </span>
|
|
715
|
+
<span class="cline-any cline-no"> </span>
|
|
716
|
+
<span class="cline-any cline-no"> </span>
|
|
717
|
+
<span class="cline-any cline-no"> </span>
|
|
718
|
+
<span class="cline-any cline-no"> </span>
|
|
719
|
+
<span class="cline-any cline-no"> </span>
|
|
720
|
+
<span class="cline-any cline-no"> </span>
|
|
721
|
+
<span class="cline-any cline-no"> </span>
|
|
722
|
+
<span class="cline-any cline-no"> </span>
|
|
723
|
+
<span class="cline-any cline-neutral"> </span>
|
|
724
|
+
<span class="cline-any cline-neutral"> </span>
|
|
725
|
+
<span class="cline-any cline-no"> </span>
|
|
726
|
+
<span class="cline-any cline-no"> </span>
|
|
727
|
+
<span class="cline-any cline-neutral"> </span>
|
|
728
|
+
<span class="cline-any cline-neutral"> </span>
|
|
729
|
+
<span class="cline-any cline-neutral"> </span>
|
|
730
|
+
<span class="cline-any cline-no"> </span>
|
|
731
|
+
<span class="cline-any cline-no"> </span>
|
|
732
|
+
<span class="cline-any cline-no"> </span>
|
|
733
|
+
<span class="cline-any cline-no"> </span>
|
|
734
|
+
<span class="cline-any cline-no"> </span>
|
|
735
|
+
<span class="cline-any cline-no"> </span>
|
|
736
|
+
<span class="cline-any cline-no"> </span>
|
|
737
|
+
<span class="cline-any cline-neutral"> </span>
|
|
738
|
+
<span class="cline-any cline-neutral"> </span>
|
|
739
|
+
<span class="cline-any cline-neutral"> </span>
|
|
740
|
+
<span class="cline-any cline-no"> </span>
|
|
741
|
+
<span class="cline-any cline-neutral"> </span>
|
|
742
|
+
<span class="cline-any cline-neutral"> </span>
|
|
743
|
+
<span class="cline-any cline-neutral"> </span>
|
|
744
|
+
<span class="cline-any cline-neutral"> </span>
|
|
745
|
+
<span class="cline-any cline-no"> </span>
|
|
746
|
+
<span class="cline-any cline-neutral"> </span>
|
|
747
|
+
<span class="cline-any cline-neutral"> </span>
|
|
748
|
+
<span class="cline-any cline-neutral"> </span>
|
|
749
|
+
<span class="cline-any cline-neutral"> </span>
|
|
750
|
+
<span class="cline-any cline-neutral"> </span>
|
|
751
|
+
<span class="cline-any cline-neutral"> </span>
|
|
752
|
+
<span class="cline-any cline-neutral"> </span>
|
|
753
|
+
<span class="cline-any cline-no"> </span>
|
|
754
|
+
<span class="cline-any cline-neutral"> </span>
|
|
755
|
+
<span class="cline-any cline-neutral"> </span>
|
|
756
|
+
<span class="cline-any cline-neutral"> </span>
|
|
757
|
+
<span class="cline-any cline-neutral"> </span>
|
|
758
|
+
<span class="cline-any cline-neutral"> </span>
|
|
759
|
+
<span class="cline-any cline-neutral"> </span>
|
|
760
|
+
<span class="cline-any cline-neutral"> </span>
|
|
761
|
+
<span class="cline-any cline-neutral"> </span>
|
|
762
|
+
<span class="cline-any cline-neutral"> </span>
|
|
763
|
+
<span class="cline-any cline-neutral"> </span>
|
|
764
|
+
<span class="cline-any cline-neutral"> </span>
|
|
765
|
+
<span class="cline-any cline-neutral"> </span>
|
|
766
|
+
<span class="cline-any cline-no"> </span>
|
|
767
|
+
<span class="cline-any cline-neutral"> </span>
|
|
768
|
+
<span class="cline-any cline-no"> </span>
|
|
769
|
+
<span class="cline-any cline-no"> </span>
|
|
770
|
+
<span class="cline-any cline-no"> </span>
|
|
771
|
+
<span class="cline-any cline-no"> </span>
|
|
772
|
+
<span class="cline-any cline-no"> </span>
|
|
773
|
+
<span class="cline-any cline-no"> </span>
|
|
774
|
+
<span class="cline-any cline-neutral"> </span>
|
|
775
|
+
<span class="cline-any cline-neutral"> </span>
|
|
776
|
+
<span class="cline-any cline-no"> </span>
|
|
777
|
+
<span class="cline-any cline-no"> </span>
|
|
778
|
+
<span class="cline-any cline-no"> </span>
|
|
779
|
+
<span class="cline-any cline-neutral"> </span>
|
|
780
|
+
<span class="cline-any cline-no"> </span>
|
|
781
|
+
<span class="cline-any cline-neutral"> </span>
|
|
782
|
+
<span class="cline-any cline-no"> </span>
|
|
783
|
+
<span class="cline-any cline-no"> </span>
|
|
784
|
+
<span class="cline-any cline-no"> </span>
|
|
785
|
+
<span class="cline-any cline-neutral"> </span>
|
|
786
|
+
<span class="cline-any cline-no"> </span>
|
|
787
|
+
<span class="cline-any cline-no"> </span>
|
|
788
|
+
<span class="cline-any cline-no"> </span>
|
|
789
|
+
<span class="cline-any cline-no"> </span>
|
|
790
|
+
<span class="cline-any cline-neutral"> </span>
|
|
791
|
+
<span class="cline-any cline-no"> </span>
|
|
792
|
+
<span class="cline-any cline-no"> </span>
|
|
793
|
+
<span class="cline-any cline-no"> </span>
|
|
794
|
+
<span class="cline-any cline-no"> </span>
|
|
795
|
+
<span class="cline-any cline-no"> </span>
|
|
796
|
+
<span class="cline-any cline-neutral"> </span>
|
|
797
|
+
<span class="cline-any cline-neutral"> </span>
|
|
798
|
+
<span class="cline-any cline-neutral"> </span>
|
|
799
|
+
<span class="cline-any cline-neutral"> </span>
|
|
800
|
+
<span class="cline-any cline-neutral"> </span>
|
|
801
|
+
<span class="cline-any cline-neutral"> </span>
|
|
802
|
+
<span class="cline-any cline-neutral"> </span>
|
|
803
|
+
<span class="cline-any cline-no"> </span>
|
|
804
|
+
<span class="cline-any cline-neutral"> </span>
|
|
805
|
+
<span class="cline-any cline-neutral"> </span>
|
|
806
|
+
<span class="cline-any cline-neutral"> </span>
|
|
807
|
+
<span class="cline-any cline-no"> </span>
|
|
808
|
+
<span class="cline-any cline-no"> </span>
|
|
809
|
+
<span class="cline-any cline-no"> </span>
|
|
810
|
+
<span class="cline-any cline-no"> </span>
|
|
811
|
+
<span class="cline-any cline-neutral"> </span>
|
|
812
|
+
<span class="cline-any cline-no"> </span>
|
|
813
|
+
<span class="cline-any cline-neutral"> </span>
|
|
814
|
+
<span class="cline-any cline-neutral"> </span>
|
|
815
|
+
<span class="cline-any cline-neutral"> </span>
|
|
816
|
+
<span class="cline-any cline-neutral"> </span>
|
|
817
|
+
<span class="cline-any cline-neutral"> </span>
|
|
818
|
+
<span class="cline-any cline-neutral"> </span>
|
|
819
|
+
<span class="cline-any cline-neutral"> </span>
|
|
820
|
+
<span class="cline-any cline-no"> </span>
|
|
821
|
+
<span class="cline-any cline-neutral"> </span>
|
|
822
|
+
<span class="cline-any cline-neutral"> </span>
|
|
823
|
+
<span class="cline-any cline-neutral"> </span>
|
|
824
|
+
<span class="cline-any cline-neutral"> </span>
|
|
825
|
+
<span class="cline-any cline-no"> </span>
|
|
826
|
+
<span class="cline-any cline-no"> </span>
|
|
827
|
+
<span class="cline-any cline-no"> </span>
|
|
828
|
+
<span class="cline-any cline-no"> </span>
|
|
829
|
+
<span class="cline-any cline-no"> </span>
|
|
830
|
+
<span class="cline-any cline-neutral"> </span>
|
|
831
|
+
<span class="cline-any cline-no"> </span>
|
|
832
|
+
<span class="cline-any cline-no"> </span>
|
|
833
|
+
<span class="cline-any cline-no"> </span>
|
|
834
|
+
<span class="cline-any cline-no"> </span>
|
|
835
|
+
<span class="cline-any cline-neutral"> </span>
|
|
836
|
+
<span class="cline-any cline-neutral"> </span>
|
|
837
|
+
<span class="cline-any cline-neutral"> </span>
|
|
838
|
+
<span class="cline-any cline-neutral"> </span>
|
|
839
|
+
<span class="cline-any cline-neutral"> </span>
|
|
840
|
+
<span class="cline-any cline-neutral"> </span>
|
|
841
|
+
<span class="cline-any cline-neutral"> </span>
|
|
842
|
+
<span class="cline-any cline-no"> </span>
|
|
843
|
+
<span class="cline-any cline-neutral"> </span>
|
|
844
|
+
<span class="cline-any cline-neutral"> </span>
|
|
845
|
+
<span class="cline-any cline-neutral"> </span>
|
|
846
|
+
<span class="cline-any cline-no"> </span>
|
|
847
|
+
<span class="cline-any cline-no"> </span>
|
|
848
|
+
<span class="cline-any cline-no"> </span>
|
|
849
|
+
<span class="cline-any cline-no"> </span>
|
|
850
|
+
<span class="cline-any cline-neutral"> </span>
|
|
851
|
+
<span class="cline-any cline-neutral"> </span>
|
|
852
|
+
<span class="cline-any cline-neutral"> </span>
|
|
853
|
+
<span class="cline-any cline-neutral"> </span>
|
|
854
|
+
<span class="cline-any cline-neutral"> </span>
|
|
855
|
+
<span class="cline-any cline-neutral"> </span>
|
|
856
|
+
<span class="cline-any cline-neutral"> </span>
|
|
857
|
+
<span class="cline-any cline-neutral"> </span>
|
|
858
|
+
<span class="cline-any cline-no"> </span>
|
|
859
|
+
<span class="cline-any cline-neutral"> </span>
|
|
860
|
+
<span class="cline-any cline-neutral"> </span>
|
|
861
|
+
<span class="cline-any cline-neutral"> </span>
|
|
862
|
+
<span class="cline-any cline-neutral"> </span>
|
|
863
|
+
<span class="cline-any cline-neutral"> </span>
|
|
864
|
+
<span class="cline-any cline-no"> </span>
|
|
865
|
+
<span class="cline-any cline-neutral"> </span>
|
|
866
|
+
<span class="cline-any cline-neutral"> </span>
|
|
867
|
+
<span class="cline-any cline-no"> </span>
|
|
868
|
+
<span class="cline-any cline-neutral"> </span>
|
|
869
|
+
<span class="cline-any cline-no"> </span>
|
|
870
|
+
<span class="cline-any cline-no"> </span>
|
|
871
|
+
<span class="cline-any cline-no"> </span>
|
|
872
|
+
<span class="cline-any cline-no"> </span>
|
|
873
|
+
<span class="cline-any cline-no"> </span>
|
|
874
|
+
<span class="cline-any cline-no"> </span>
|
|
875
|
+
<span class="cline-any cline-neutral"> </span>
|
|
876
|
+
<span class="cline-any cline-no"> </span>
|
|
877
|
+
<span class="cline-any cline-neutral"> </span>
|
|
878
|
+
<span class="cline-any cline-neutral"> </span>
|
|
879
|
+
<span class="cline-any cline-neutral"> </span>
|
|
880
|
+
<span class="cline-any cline-neutral"> </span>
|
|
881
|
+
<span class="cline-any cline-no"> </span>
|
|
882
|
+
<span class="cline-any cline-neutral"> </span>
|
|
883
|
+
<span class="cline-any cline-neutral"> </span>
|
|
884
|
+
<span class="cline-any cline-no"> </span>
|
|
885
|
+
<span class="cline-any cline-no"> </span>
|
|
886
|
+
<span class="cline-any cline-no"> </span>
|
|
887
|
+
<span class="cline-any cline-no"> </span>
|
|
888
|
+
<span class="cline-any cline-no"> </span>
|
|
889
|
+
<span class="cline-any cline-no"> </span>
|
|
890
|
+
<span class="cline-any cline-no"> </span>
|
|
891
|
+
<span class="cline-any cline-no"> </span>
|
|
892
|
+
<span class="cline-any cline-neutral"> </span>
|
|
893
|
+
<span class="cline-any cline-neutral"> </span>
|
|
894
|
+
<span class="cline-any cline-neutral"> </span>
|
|
895
|
+
<span class="cline-any cline-no"> </span>
|
|
896
|
+
<span class="cline-any cline-no"> </span>
|
|
897
|
+
<span class="cline-any cline-no"> </span>
|
|
898
|
+
<span class="cline-any cline-neutral"> </span>
|
|
899
|
+
<span class="cline-any cline-no"> </span>
|
|
900
|
+
<span class="cline-any cline-neutral"> </span>
|
|
901
|
+
<span class="cline-any cline-neutral"> </span>
|
|
902
|
+
<span class="cline-any cline-no"> </span>
|
|
903
|
+
<span class="cline-any cline-neutral"> </span>
|
|
904
|
+
<span class="cline-any cline-neutral"> </span>
|
|
905
|
+
<span class="cline-any cline-neutral"> </span>
|
|
906
|
+
<span class="cline-any cline-neutral"> </span>
|
|
907
|
+
<span class="cline-any cline-neutral"> </span>
|
|
908
|
+
<span class="cline-any cline-neutral"> </span>
|
|
909
|
+
<span class="cline-any cline-no"> </span>
|
|
910
|
+
<span class="cline-any cline-no"> </span>
|
|
911
|
+
<span class="cline-any cline-no"> </span>
|
|
912
|
+
<span class="cline-any cline-no"> </span>
|
|
913
|
+
<span class="cline-any cline-no"> </span>
|
|
914
|
+
<span class="cline-any cline-no"> </span>
|
|
915
|
+
<span class="cline-any cline-neutral"> </span>
|
|
916
|
+
<span class="cline-any cline-neutral"> </span>
|
|
917
|
+
<span class="cline-any cline-no"> </span>
|
|
918
|
+
<span class="cline-any cline-neutral"> </span>
|
|
919
|
+
<span class="cline-any cline-neutral"> </span>
|
|
920
|
+
<span class="cline-any cline-yes">1x</span>
|
|
921
|
+
<span class="cline-any cline-no"> </span>
|
|
922
|
+
<span class="cline-any cline-no"> </span>
|
|
923
|
+
<span class="cline-any cline-no"> </span>
|
|
924
|
+
<span class="cline-any cline-no"> </span>
|
|
925
|
+
<span class="cline-any cline-no"> </span>
|
|
926
|
+
<span class="cline-any cline-no"> </span>
|
|
927
|
+
<span class="cline-any cline-neutral"> </span>
|
|
928
|
+
<span class="cline-any cline-neutral"> </span>
|
|
929
|
+
<span class="cline-any cline-no"> </span>
|
|
930
|
+
<span class="cline-any cline-neutral"> </span>
|
|
931
|
+
<span class="cline-any cline-no"> </span>
|
|
932
|
+
<span class="cline-any cline-neutral"> </span>
|
|
933
|
+
<span class="cline-any cline-no"> </span>
|
|
934
|
+
<span class="cline-any cline-no"> </span>
|
|
935
|
+
<span class="cline-any cline-no"> </span>
|
|
936
|
+
<span class="cline-any cline-no"> </span>
|
|
937
|
+
<span class="cline-any cline-neutral"> </span>
|
|
938
|
+
<span class="cline-any cline-no"> </span>
|
|
939
|
+
<span class="cline-any cline-no"> </span>
|
|
940
|
+
<span class="cline-any cline-neutral"> </span>
|
|
941
|
+
<span class="cline-any cline-no"> </span>
|
|
942
|
+
<span class="cline-any cline-neutral"> </span>
|
|
943
|
+
<span class="cline-any cline-neutral"> </span>
|
|
944
|
+
<span class="cline-any cline-neutral"> </span>
|
|
945
|
+
<span class="cline-any cline-no"> </span>
|
|
946
|
+
<span class="cline-any cline-neutral"> </span>
|
|
947
|
+
<span class="cline-any cline-neutral"> </span>
|
|
948
|
+
<span class="cline-any cline-neutral"> </span>
|
|
949
|
+
<span class="cline-any cline-neutral"> </span>
|
|
950
|
+
<span class="cline-any cline-neutral"> </span>
|
|
951
|
+
<span class="cline-any cline-neutral"> </span>
|
|
952
|
+
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">// import {
|
|
953
|
+
// BaseNode,
|
|
954
|
+
// Module
|
|
955
|
+
// } from '../../concepts';
|
|
956
|
+
import { BaseNode, uiStructures, collectionStructures, interfaceStructures, processStructures, stdlibNamespace, authStructures, coreStructures, httpStructures } from '../../concepts';
|
|
957
|
+
import { getConceptMeta } from '../../decorators/index';
|
|
958
|
+
/*
|
|
959
|
+
根据 namespace 字符串来获取 node
|
|
960
|
+
link: http://nasl.lcap.group/docs/current/semantics/Basics/Namespaces/
|
|
961
|
+
*/
|
|
962
|
+
export function getNodeByNodeCallee(AppInstance, namespace, callback) {
|
|
963
|
+
const nodePath = namespace.split('.');
|
|
964
|
+
const kind = nodePath.shift();
|
|
965
|
+
let tempPoint;
|
|
966
|
+
let state = 1;
|
|
967
|
+
if (kind === 'app') {
|
|
968
|
+
tempPoint = AppInstance;
|
|
969
|
+
}
|
|
970
|
+
if (kind === 'extensions') {
|
|
971
|
+
tempPoint = AppInstance.dependencies;
|
|
972
|
+
state = 2;
|
|
973
|
+
}
|
|
974
|
+
<span class="missing-if-branch" title="if path not taken" >I</span>if (kind === 'connector') {
|
|
975
|
+
<span class="cstat-no" title="statement not covered" > tempPoint = AppInstance.dependencies;</span>
|
|
976
|
+
<span class="cstat-no" title="statement not covered" > state = 2;</span>
|
|
977
|
+
}
|
|
978
|
+
if (kind === 'apis') {
|
|
979
|
+
tempPoint = AppInstance.interfaceDependencies;
|
|
980
|
+
state = 2;
|
|
981
|
+
}
|
|
982
|
+
<span class="missing-if-branch" title="if path not taken" >I</span>if (kind === 'components') {
|
|
983
|
+
<span class="cstat-no" title="statement not covered" > tempPoint = AppInstance.componentDependencies;</span>
|
|
984
|
+
<span class="cstat-no" title="statement not covered" > state = 2;</span>
|
|
985
|
+
}
|
|
986
|
+
|
|
987
|
+
// 1 for object, 2 for array
|
|
988
|
+
while (nodePath.length) {
|
|
989
|
+
const key = nodePath.shift();
|
|
990
|
+
if (state === 2) {
|
|
991
|
+
// eslint-disable-next-line eqeqeq
|
|
992
|
+
const n = tempPoint.find((p) => p.name == key);
|
|
993
|
+
<span class="missing-if-branch" title="if path not taken" >I</span>if (!n) {
|
|
994
|
+
<span class="cstat-no" title="statement not covered" > return null;</span>
|
|
995
|
+
}
|
|
996
|
+
tempPoint = n;
|
|
997
|
+
state = 1;
|
|
998
|
+
continue;
|
|
999
|
+
}
|
|
1000
|
+
const { propertyMap } = getConceptMeta(tempPoint?.concept);
|
|
1001
|
+
// 这里的问题是 ns "app.logics.getUserInfo" 传进来 就去 logics 下边找了 应该是overriddenLogics 下去找
|
|
1002
|
+
if (propertyMap.has(key)) {
|
|
1003
|
+
const property = tempPoint[key];
|
|
1004
|
+
<span class="missing-if-branch" title="else path not taken" >E</span>if (Array.isArray(property)) {
|
|
1005
|
+
state = 2;
|
|
1006
|
+
tempPoint = property;
|
|
1007
|
+
continue;
|
|
1008
|
+
}
|
|
1009
|
+
<span class="cstat-no" title="statement not covered" > tempPoint = property;</span>
|
|
1010
|
+
} else {
|
|
1011
|
+
<span class="missing-if-branch" title="else path not taken" >E</span>if (callback) {
|
|
1012
|
+
const meta = callback(key, tempPoint, state);
|
|
1013
|
+
tempPoint = meta.tempPoint;
|
|
1014
|
+
state = meta.state;
|
|
1015
|
+
}
|
|
1016
|
+
}
|
|
1017
|
+
<span class="missing-if-branch" title="if path not taken" >I</span>if (!tempPoint) {
|
|
1018
|
+
<span class="cstat-no" title="statement not covered" > return null;</span>
|
|
1019
|
+
}
|
|
1020
|
+
}
|
|
1021
|
+
return tempPoint;
|
|
1022
|
+
}
|
|
1023
|
+
|
|
1024
|
+
/**
|
|
1025
|
+
* 根据 namespace 字符串来获取 node,主要是nasl的ui 和 collection
|
|
1026
|
+
*/
|
|
1027
|
+
export function getNaslNodeByNodeCallee(namespace, typeName) {
|
|
1028
|
+
<span class="missing-if-branch" title="if path not taken" >I</span>if (namespace === 'nasl.ui') {
|
|
1029
|
+
const uiLogic = <span class="cstat-no" title="statement not covered" >stdlibNamespace.findChild('ui').logics;</span>
|
|
1030
|
+
<span class="cstat-no" title="statement not covered" > return (</span>
|
|
1031
|
+
uiLogic.find(<span class="fstat-no" title="function not covered" >(i</span>tem) => <span class="cstat-no" title="statement not covered" >item.name === typeName)</span> ??
|
|
1032
|
+
uiStructures.find(<span class="fstat-no" title="function not covered" >(i</span>tem) => <span class="cstat-no" title="statement not covered" >item.name === typeName)</span>
|
|
1033
|
+
);
|
|
1034
|
+
} else <span class="missing-if-branch" title="if path not taken" >I</span>if (namespace === 'nasl.collection') {
|
|
1035
|
+
<span class="cstat-no" title="statement not covered" > return collectionStructures.find(<span class="fstat-no" title="function not covered" >(i</span>tem) => <span class="cstat-no" title="statement not covered" >item.name === typeName)</span>;</span>
|
|
1036
|
+
} else <span class="missing-if-branch" title="if path not taken" >I</span>if (namespace === 'nasl.interface') {
|
|
1037
|
+
<span class="cstat-no" title="statement not covered" > return interfaceStructures.find(<span class="fstat-no" title="function not covered" >(i</span>tem) => <span class="cstat-no" title="statement not covered" >item.name === typeName)</span>;</span>
|
|
1038
|
+
} else <span class="missing-if-branch" title="if path not taken" >I</span>if (namespace === 'nasl.process') {
|
|
1039
|
+
<span class="cstat-no" title="statement not covered" > return processStructures.find(<span class="fstat-no" title="function not covered" >(i</span>tem) => <span class="cstat-no" title="statement not covered" >item.name === typeName)</span>;</span>
|
|
1040
|
+
} else if (namespace === 'nasl.util') {
|
|
1041
|
+
const utilLogic = stdlibNamespace.findChild('util').logics;
|
|
1042
|
+
return utilLogic.find((item) => item.name === typeName);
|
|
1043
|
+
} else <span class="missing-if-branch" title="if path not taken" >I</span>if (namespace === 'nasl.core') {
|
|
1044
|
+
<span class="cstat-no" title="statement not covered" > return coreStructures.find(<span class="fstat-no" title="function not covered" >(i</span>tem) => <span class="cstat-no" title="statement not covered" >item.name === typeName)</span>;</span>
|
|
1045
|
+
} else <span class="missing-if-branch" title="if path not taken" >I</span>if (namespace === 'nasl.http') {
|
|
1046
|
+
<span class="cstat-no" title="statement not covered" > return httpStructures.find(<span class="fstat-no" title="function not covered" >(i</span>tem) => <span class="cstat-no" title="statement not covered" >item.name === typeName)</span>;</span>
|
|
1047
|
+
} else <span class="missing-if-branch" title="if path not taken" >I</span>if (namespace === 'nasl.configuration') {
|
|
1048
|
+
const configurationLogic = <span class="cstat-no" title="statement not covered" >stdlibNamespace.findChild('configuration').logics;</span>
|
|
1049
|
+
<span class="cstat-no" title="statement not covered" > return configurationLogic.find(<span class="fstat-no" title="function not covered" >(i</span>tem) => <span class="cstat-no" title="statement not covered" >item.name === typeName)</span>;</span>
|
|
1050
|
+
} else if (namespace === 'nasl.io') {
|
|
1051
|
+
const logics = stdlibNamespace.findChild('io').logics;
|
|
1052
|
+
return logics.find((item) => item.name === typeName);
|
|
1053
|
+
} else <span class="missing-if-branch" title="if path not taken" >I</span>if (namespace === 'nasl.auth') {
|
|
1054
|
+
const authLogic = <span class="cstat-no" title="statement not covered" >stdlibNamespace.findChild('auth').logics;</span>
|
|
1055
|
+
<span class="cstat-no" title="statement not covered" > return (</span>
|
|
1056
|
+
authLogic.find(<span class="fstat-no" title="function not covered" >(i</span>tem) => <span class="cstat-no" title="statement not covered" >item.name === typeName)</span> ??
|
|
1057
|
+
authStructures.find(<span class="fstat-no" title="function not covered" >(i</span>tem) => <span class="cstat-no" title="statement not covered" >item.name === typeName)</span>
|
|
1058
|
+
);
|
|
1059
|
+
}
|
|
1060
|
+
}
|
|
1061
|
+
export const TRACK_TYPE = {
|
|
1062
|
+
PLAIN: 'plain',
|
|
1063
|
+
PROPERTY: 'property',
|
|
1064
|
+
ARRAY: 'array',
|
|
1065
|
+
ARRAY_NO_FURTHER: 'array_no_further',
|
|
1066
|
+
CALLEE: 'callee',
|
|
1067
|
+
CALLEE_TEMPLATE: 'callee_template',
|
|
1068
|
+
MODULE: 'module',
|
|
1069
|
+
ROLE_TEMPLATE: 'role_template',
|
|
1070
|
+
PROPERTY_TEMPLATE: 'property_template',
|
|
1071
|
+
// INTERNAL: 'internal'
|
|
1072
|
+
};
|
|
1073
|
+
|
|
1074
|
+
const ENTITY_AS_NAME = 'entityAsName';
|
|
1075
|
+
|
|
1076
|
+
const BACKTACKING_PROPERTY_NS = {
|
|
1077
|
+
NAMESPACE: 'namespace',
|
|
1078
|
+
TYPE_NAMESPACE: 'typeNamespace',
|
|
1079
|
+
CALLEE_NAMESPACE: 'calleeNamespace',
|
|
1080
|
+
ENTITY_NAMESPACE: 'entityNamespace',
|
|
1081
|
+
RELATION_NAMESPACE: 'relationNamespace',
|
|
1082
|
+
};
|
|
1083
|
+
|
|
1084
|
+
const BACKTACKING_PROPERTY = {
|
|
1085
|
+
NAMESPACE: 'name',
|
|
1086
|
+
TYPE_NAMESPACE: 'typeName',
|
|
1087
|
+
CALLEE_NAMESPACE: 'calleeName',
|
|
1088
|
+
ENTITY_NAMESPACE: 'entityName',
|
|
1089
|
+
RELATION_NAMESPACE: 'relationEntity',
|
|
1090
|
+
};
|
|
1091
|
+
const BACKTRACKING_MODULE_COMPONENT = 'tag';
|
|
1092
|
+
function <span class="fstat-no" title="function not covered" >getRelatedProperyName(</span>nspropertyname) {
|
|
1093
|
+
<span class="cstat-no" title="statement not covered" > switch (nspropertyname) {</span>
|
|
1094
|
+
case BACKTACKING_PROPERTY_NS.NAMESPACE:
|
|
1095
|
+
<span class="cstat-no" title="statement not covered" > return BACKTACKING_PROPERTY.NAMESPACE;</span>
|
|
1096
|
+
case BACKTACKING_PROPERTY_NS.TYPE_NAMESPACE:
|
|
1097
|
+
<span class="cstat-no" title="statement not covered" > return BACKTACKING_PROPERTY.TYPE_NAMESPACE;</span>
|
|
1098
|
+
case BACKTACKING_PROPERTY_NS.CALLEE_NAMESPACE:
|
|
1099
|
+
<span class="cstat-no" title="statement not covered" > return BACKTACKING_PROPERTY.CALLEE_NAMESPACE;</span>
|
|
1100
|
+
case BACKTACKING_PROPERTY_NS.ENTITY_NAMESPACE:
|
|
1101
|
+
<span class="cstat-no" title="statement not covered" > return BACKTACKING_PROPERTY.ENTITY_NAMESPACE;</span>
|
|
1102
|
+
case BACKTACKING_PROPERTY_NS.RELATION_NAMESPACE:
|
|
1103
|
+
<span class="cstat-no" title="statement not covered" > return BACKTACKING_PROPERTY.RELATION_NAMESPACE;</span>
|
|
1104
|
+
}
|
|
1105
|
+
<span class="cstat-no" title="statement not covered" > return '';</span>
|
|
1106
|
+
}
|
|
1107
|
+
|
|
1108
|
+
const TRACKING_ONLY_ONE_LAYER = ['DataSource'];
|
|
1109
|
+
|
|
1110
|
+
const BACKTRACKING_IGNORE_NAMESPACE = [
|
|
1111
|
+
'nasl.core',
|
|
1112
|
+
'',
|
|
1113
|
+
// ...
|
|
1114
|
+
];
|
|
1115
|
+
// eslint-disable-next-line camelcase
|
|
1116
|
+
function <span class="fstat-no" title="function not covered" >isBACKTRACKING_IGNORE_NAMESPACE(</span>ns) {
|
|
1117
|
+
// 组件的名称应该不会被覆盖改变
|
|
1118
|
+
<span class="cstat-no" title="statement not covered" > return ns.startsWith('nasl') || ns.startsWith('elements');</span>
|
|
1119
|
+
}
|
|
1120
|
+
|
|
1121
|
+
export const IGNORE_PROPERTY = [
|
|
1122
|
+
'uuid', // View 属性
|
|
1123
|
+
'origin', // Entity 属性
|
|
1124
|
+
'changedTime',
|
|
1125
|
+
'branchName',
|
|
1126
|
+
'appId',
|
|
1127
|
+
'isIndex',
|
|
1128
|
+
// 'tableName',
|
|
1129
|
+
// 'columnName',
|
|
1130
|
+
];
|
|
1131
|
+
|
|
1132
|
+
const ROLE_PROPERTY = 'bindRoles';
|
|
1133
|
+
|
|
1134
|
+
// const UPPER_CONCEPT = [
|
|
1135
|
+
// 'Entity',
|
|
1136
|
+
// 'Structure',
|
|
1137
|
+
// 'Enum',
|
|
1138
|
+
// 'Logic',
|
|
1139
|
+
// 'Interface',
|
|
1140
|
+
// 'View',
|
|
1141
|
+
// 'Process',
|
|
1142
|
+
// 'Role',
|
|
1143
|
+
// ];
|
|
1144
|
+
|
|
1145
|
+
export function <span class="fstat-no" title="function not covered" >tracking(</span>node, startNode, callback) {
|
|
1146
|
+
const { propertyMap } = <span class="cstat-no" title="statement not covered" >getConceptMeta(node.concept);</span>
|
|
1147
|
+
<span class="cstat-no" title="statement not covered" > for (const p of propertyMap) {</span>
|
|
1148
|
+
// console.log(p)
|
|
1149
|
+
const [propertyName, _data] = <span class="cstat-no" title="statement not covered" >p;</span>
|
|
1150
|
+
const { objectRef } = <span class="cstat-no" title="statement not covered" >_data;</span>
|
|
1151
|
+
// console.log(propertyName)
|
|
1152
|
+
<span class="cstat-no" title="statement not covered" > if (IGNORE_PROPERTY.includes(propertyName)) {</span>
|
|
1153
|
+
<span class="cstat-no" title="statement not covered" > if (propertyName === 'origin') {</span>
|
|
1154
|
+
<span class="cstat-no" title="statement not covered" > callback(TRACK_TYPE.PLAIN, 'origin', 'ide');</span>
|
|
1155
|
+
}
|
|
1156
|
+
<span class="cstat-no" title="statement not covered" > continue;</span>
|
|
1157
|
+
}
|
|
1158
|
+
const isOnlyOneLayerTracking = <span class="cstat-no" title="statement not covered" >TRACKING_ONLY_ONE_LAYER.includes(node.concept);</span>
|
|
1159
|
+
const property = <span class="cstat-no" title="statement not covered" >node[propertyName];</span>
|
|
1160
|
+
<span class="cstat-no" title="statement not covered" > if (Array.isArray(property)) {</span>
|
|
1161
|
+
<span class="cstat-no" title="statement not covered" > if (property.length > 0) {</span>
|
|
1162
|
+
<span class="cstat-no" title="statement not covered" > if (property[0] instanceof BaseNode) {</span>
|
|
1163
|
+
<span class="cstat-no" title="statement not covered" > if (!isOnlyOneLayerTracking) {</span>
|
|
1164
|
+
<span class="cstat-no" title="statement not covered" > property.forEach(<span class="fstat-no" title="function not covered" >(p</span>) => {</span>
|
|
1165
|
+
<span class="cstat-no" title="statement not covered" > callback(TRACK_TYPE.ARRAY, propertyName, p);</span>
|
|
1166
|
+
});
|
|
1167
|
+
} else {
|
|
1168
|
+
<span class="cstat-no" title="statement not covered" > property.forEach(<span class="fstat-no" title="function not covered" >(p</span>) => {</span>
|
|
1169
|
+
<span class="cstat-no" title="statement not covered" > callback(TRACK_TYPE.ARRAY_NO_FURTHER, propertyName, p);</span>
|
|
1170
|
+
});
|
|
1171
|
+
}
|
|
1172
|
+
} else {
|
|
1173
|
+
<span class="cstat-no" title="statement not covered" > if (ROLE_PROPERTY === propertyName) {</span>
|
|
1174
|
+
const rootNode = <span class="cstat-no" title="statement not covered" >node.rootNode;</span>
|
|
1175
|
+
const metaNodes = <span class="cstat-no" title="statement not covered" >[];</span>
|
|
1176
|
+
<span class="cstat-no" title="statement not covered" > property.forEach(<span class="fstat-no" title="function not covered" >(r</span>name) => {</span>
|
|
1177
|
+
const targetRole = <span class="cstat-no" title="statement not covered" >rootNode.roles.find(<span class="fstat-no" title="function not covered" >(r</span>) => <span class="cstat-no" title="statement not covered" >r.name === rname)</span>;</span>
|
|
1178
|
+
<span class="cstat-no" title="statement not covered" > if (targetRole) {</span>
|
|
1179
|
+
<span class="cstat-no" title="statement not covered" > metaNodes.push(targetRole);</span>
|
|
1180
|
+
}
|
|
1181
|
+
});
|
|
1182
|
+
|
|
1183
|
+
<span class="cstat-no" title="statement not covered" > callback(TRACK_TYPE.ROLE_TEMPLATE, propertyName, property, {</span>
|
|
1184
|
+
rootNode: node,
|
|
1185
|
+
metaNodes,
|
|
1186
|
+
});
|
|
1187
|
+
} else {
|
|
1188
|
+
<span class="cstat-no" title="statement not covered" > callback(TRACK_TYPE.PLAIN, propertyName, property);</span>
|
|
1189
|
+
}
|
|
1190
|
+
}
|
|
1191
|
+
}
|
|
1192
|
+
} else {
|
|
1193
|
+
let relatedPropertyName;
|
|
1194
|
+
let rootNode;
|
|
1195
|
+
let ns;
|
|
1196
|
+
<span class="cstat-no" title="statement not covered" > switch (propertyName) {</span>
|
|
1197
|
+
case BACKTACKING_PROPERTY_NS.NAMESPACE:
|
|
1198
|
+
// relatedPropertyName = getRelatedProperyName(propertyName);
|
|
1199
|
+
// console.log(relatedPropertyName);
|
|
1200
|
+
// break;
|
|
1201
|
+
case BACKTACKING_PROPERTY_NS.TYPE_NAMESPACE:
|
|
1202
|
+
// relatedPropertyName = BACKTACKING_PROPERTY.TYPE_NAMESPACE
|
|
1203
|
+
case BACKTACKING_PROPERTY_NS.CALLEE_NAMESPACE:
|
|
1204
|
+
// relatedPropertyName = BACKTACKING_PROPERTY.CALLEE_NAMESPACE
|
|
1205
|
+
case BACKTACKING_PROPERTY_NS.ENTITY_NAMESPACE:
|
|
1206
|
+
// relatedPropertyName = BACKTACKING_PROPERTY.ENTITY_NAMESPACE
|
|
1207
|
+
case BACKTACKING_PROPERTY_NS.RELATION_NAMESPACE:
|
|
1208
|
+
// relatedPropertyName = BACKTACKING_PROPERTY.RELATION_NAMESPACE
|
|
1209
|
+
<span class="cstat-no" title="statement not covered" > relatedPropertyName = getRelatedProperyName(propertyName);</span>
|
|
1210
|
+
|
|
1211
|
+
<span class="cstat-no" title="statement not covered" > rootNode = node.rootNode;</span>
|
|
1212
|
+
<span class="cstat-no" title="statement not covered" > ns = node[propertyName];</span>
|
|
1213
|
+
<span class="cstat-no" title="statement not covered" > if (!ns || !node[relatedPropertyName]) {</span>
|
|
1214
|
+
<span class="cstat-no" title="statement not covered" > callback(TRACK_TYPE.PLAIN, propertyName, property);</span>
|
|
1215
|
+
<span class="cstat-no" title="statement not covered" > callback(TRACK_TYPE.PLAIN, relatedPropertyName, node[relatedPropertyName]);</span>
|
|
1216
|
+
<span class="cstat-no" title="statement not covered" > break;</span>
|
|
1217
|
+
}
|
|
1218
|
+
// console.log(node, propertyName)
|
|
1219
|
+
<span class="cstat-no" title="statement not covered" > if (isBACKTRACKING_IGNORE_NAMESPACE(ns)) {</span>
|
|
1220
|
+
<span class="cstat-no" title="statement not covered" > callback(TRACK_TYPE.PLAIN, propertyName, property);</span>
|
|
1221
|
+
<span class="cstat-no" title="statement not covered" > callback(TRACK_TYPE.PLAIN, relatedPropertyName, node[relatedPropertyName]);</span>
|
|
1222
|
+
} else {
|
|
1223
|
+
const calleeN = <span class="cstat-no" title="statement not covered" >node[relatedPropertyName];</span>
|
|
1224
|
+
|
|
1225
|
+
const r1 = <span class="cstat-no" title="statement not covered" >/app\.processes\.([^.]+)\.logics/.exec(ns);</span>
|
|
1226
|
+
const r2 = <span class="cstat-no" title="statement not covered" >/app\.processes\.([^.]+)\.elements\.([^.]+)\.logics/.exec(ns);</span>
|
|
1227
|
+
<span class="cstat-no" title="statement not covered" > if (r1 || r2) {</span>
|
|
1228
|
+
// Process 处理
|
|
1229
|
+
<span class="cstat-no" title="statement not covered" > if (r2) {</span>
|
|
1230
|
+
const nodeName = <span class="cstat-no" title="statement not covered" >r2[1];</span>
|
|
1231
|
+
const subNodename = <span class="cstat-no" title="statement not covered" >r2[2];</span>
|
|
1232
|
+
<span class="cstat-no" title="statement not covered" > if (subNodename) {</span>
|
|
1233
|
+
// 目前只有 userTask
|
|
1234
|
+
const process = <span class="cstat-no" title="statement not covered" >rootNode.processes.find(<span class="fstat-no" title="function not covered" >(p</span>) => <span class="cstat-no" title="statement not covered" >p.name === nodeName)</span>;</span>
|
|
1235
|
+
<span class="cstat-no" title="statement not covered" > if (process) {</span>
|
|
1236
|
+
const usertask = <span class="cstat-no" title="statement not covered" >process.elements.find(<span class="fstat-no" title="function not covered" >(e</span>) => <span class="cstat-no" title="statement not covered" >e.name === subNodename)</span>;</span>
|
|
1237
|
+
<span class="cstat-no" title="statement not covered" > if (usertask) {</span>
|
|
1238
|
+
<span class="cstat-no" title="statement not covered" > callback(TRACK_TYPE.CALLEE_TEMPLATE, propertyName, node[propertyName], {</span>
|
|
1239
|
+
rootNode: process,
|
|
1240
|
+
metaNodes: [process, usertask],
|
|
1241
|
+
nstemplate: `function(meta, meta2){ return "app.processes" + meta.name + ".elements." + meta2.name + ".logics"; }`,
|
|
1242
|
+
nametemplate: `function(meta, meta2){ return "complete"; }`,
|
|
1243
|
+
relatedPropertyName,
|
|
1244
|
+
AppPropertyName: 'processes',
|
|
1245
|
+
});
|
|
1246
|
+
<span class="cstat-no" title="statement not covered" > break;</span>
|
|
1247
|
+
}
|
|
1248
|
+
}
|
|
1249
|
+
}
|
|
1250
|
+
} else <span class="cstat-no" title="statement not covered" >if (r1) {</span>
|
|
1251
|
+
const nodeName = <span class="cstat-no" title="statement not covered" >r1[1];</span>
|
|
1252
|
+
const process = <span class="cstat-no" title="statement not covered" >rootNode.processes.find(<span class="fstat-no" title="function not covered" >(p</span>) => <span class="cstat-no" title="statement not covered" >p.name === nodeName)</span>;</span>
|
|
1253
|
+
<span class="cstat-no" title="statement not covered" > if (/launch/.test(calleeN) && process) {</span>
|
|
1254
|
+
// const prefix = /(launch|complete).+/.exec(calleeN)[1];
|
|
1255
|
+
<span class="cstat-no" title="statement not covered" > callback(TRACK_TYPE.CALLEE_TEMPLATE, propertyName, node[propertyName], {</span>
|
|
1256
|
+
rootNode: process,
|
|
1257
|
+
metaNodes: [process],
|
|
1258
|
+
nstemplate: `function(meta){ return "app.processes" + meta.name + ".logics"; }`,
|
|
1259
|
+
nametemplate: `function(){ return "${calleeN}"; }`,
|
|
1260
|
+
relatedPropertyName,
|
|
1261
|
+
AppPropertyName: 'processes',
|
|
1262
|
+
});
|
|
1263
|
+
<span class="cstat-no" title="statement not covered" > break;</span>
|
|
1264
|
+
}
|
|
1265
|
+
}
|
|
1266
|
+
}
|
|
1267
|
+
|
|
1268
|
+
const r3 = <span class="cstat-no" title="statement not covered" >/app\.dataSources\.([^.]+)\.entities\.([^.]+)\.logics/.exec(ns);</span>
|
|
1269
|
+
<span class="cstat-no" title="statement not covered" > if (r3) {</span>
|
|
1270
|
+
const datasourceName = <span class="cstat-no" title="statement not covered" >r3[1];</span>
|
|
1271
|
+
const entityName = <span class="cstat-no" title="statement not covered" >r3[2];</span>
|
|
1272
|
+
<span class="cstat-no" title="statement not covered" > if (/get|create|update|delete|createOrUpdate|updateBy|deleteBy|batchCreate|batchUpdate|batchDelete|import/.test(calleeN)) {</span>
|
|
1273
|
+
// const prefix = /(get|create|update|delete|batchCreate|batchUpdate|batchDelete|import)/.exec(calleeN)[1];
|
|
1274
|
+
const datasource = <span class="cstat-no" title="statement not covered" >rootNode.dataSources.find(<span class="fstat-no" title="function not covered" >(d</span>) => <span class="cstat-no" title="statement not covered" >d.name === datasourceName)</span>;</span>
|
|
1275
|
+
<span class="cstat-no" title="statement not covered" > if (datasource) {</span>
|
|
1276
|
+
const entity = <span class="cstat-no" title="statement not covered" >datasource.entities.find(<span class="fstat-no" title="function not covered" >(e</span>) => <span class="cstat-no" title="statement not covered" >e.name === entityName)</span>;</span>
|
|
1277
|
+
<span class="cstat-no" title="statement not covered" > callback(TRACK_TYPE.CALLEE_TEMPLATE, propertyName, node[propertyName], {</span>
|
|
1278
|
+
rootNode: datasource,
|
|
1279
|
+
metaNodes: [datasource, entity],
|
|
1280
|
+
nstemplate: `function(meta, meta2){ return "app.dataSources." + meta.name + ".entities." + meta2.name + ".logics"; }`,
|
|
1281
|
+
nametemplate: `function(){ return "${calleeN}"; }`,
|
|
1282
|
+
relatedPropertyName,
|
|
1283
|
+
AppPropertyName: 'dataSources',
|
|
1284
|
+
});
|
|
1285
|
+
<span class="cstat-no" title="statement not covered" > break;</span>
|
|
1286
|
+
}
|
|
1287
|
+
}
|
|
1288
|
+
}
|
|
1289
|
+
const nsPath = <span class="cstat-no" title="statement not covered" >`${ns}.${calleeN}`;</span>
|
|
1290
|
+
const calleeNode = <span class="cstat-no" title="statement not covered" >getNodeByNodeCallee(rootNode, nsPath);</span>
|
|
1291
|
+
<span class="cstat-no" title="statement not covered" > if (calleeNode) {</span>
|
|
1292
|
+
<span class="cstat-no" title="statement not covered" > backtracking({</span>
|
|
1293
|
+
node,
|
|
1294
|
+
startNode,
|
|
1295
|
+
calleeNode,
|
|
1296
|
+
propertyName,
|
|
1297
|
+
relatedPropertyName,
|
|
1298
|
+
}, callback);
|
|
1299
|
+
}
|
|
1300
|
+
}
|
|
1301
|
+
<span class="cstat-no" title="statement not covered" > break;</span>
|
|
1302
|
+
|
|
1303
|
+
case BACKTACKING_PROPERTY.TYPE_NAMESPACE:
|
|
1304
|
+
case BACKTACKING_PROPERTY.CALLEE_NAMESPACE:
|
|
1305
|
+
case BACKTACKING_PROPERTY.ENTITY_NAMESPACE:
|
|
1306
|
+
case BACKTACKING_PROPERTY.RELATION_NAMESPACE:
|
|
1307
|
+
<span class="cstat-no" title="statement not covered" > break;</span>
|
|
1308
|
+
case ENTITY_AS_NAME:
|
|
1309
|
+
// 现在还不存在 asName 先直接当 Entity 名称来用。
|
|
1310
|
+
<span class="cstat-no" title="statement not covered" > callback(TRACK_TYPE.PROPERTY_TEMPLATE, propertyName, property, {</span>
|
|
1311
|
+
getRelatedVar: <span class="fstat-no" title="function not covered" >() =</span>> {
|
|
1312
|
+
const queryCom = <span class="cstat-no" title="statement not covered" >node.getAncestor('CallQueryComponent');</span>
|
|
1313
|
+
const entityNamespace = <span class="cstat-no" title="statement not covered" >queryCom?.from?.entityNamespace;</span>
|
|
1314
|
+
<span class="cstat-no" title="statement not covered" > if (queryCom && entityNamespace && property) {</span>
|
|
1315
|
+
const rootNode = <span class="cstat-no" title="statement not covered" >queryCom.rootNode;</span>
|
|
1316
|
+
const entity = <span class="cstat-no" title="statement not covered" >getNodeByNodeCallee(rootNode, `${entityNamespace}.${property}`);</span>
|
|
1317
|
+
<span class="cstat-no" title="statement not covered" > return entity;</span>
|
|
1318
|
+
}
|
|
1319
|
+
<span class="cstat-no" title="statement not covered" > return null;</span>
|
|
1320
|
+
},
|
|
1321
|
+
relatedProperty: 'name',
|
|
1322
|
+
});
|
|
1323
|
+
|
|
1324
|
+
<span class="cstat-no" title="statement not covered" > break;</span>
|
|
1325
|
+
case BACKTRACKING_MODULE_COMPONENT:
|
|
1326
|
+
// 条件 break 一定要放到最后
|
|
1327
|
+
<span class="cstat-no" title="statement not covered" > if (node.concept === 'ViewElement') {</span>
|
|
1328
|
+
const componentDependencies = <span class="cstat-no" title="statement not covered" >node.frontend?.componentDependencies || [];</span>
|
|
1329
|
+
const tag = <span class="cstat-no" title="statement not covered" >node[propertyName];</span>
|
|
1330
|
+
const dep = <span class="cstat-no" title="statement not covered" >componentDependencies.find(<span class="fstat-no" title="function not covered" >(c</span>) => <span class="cstat-no" title="statement not covered" >c.name === tag)</span>;</span>
|
|
1331
|
+
<span class="cstat-no" title="statement not covered" > if (dep) {</span>
|
|
1332
|
+
<span class="cstat-no" title="statement not covered" > callback(TRACK_TYPE.PLAIN, propertyName, tag);</span>
|
|
1333
|
+
<span class="cstat-no" title="statement not covered" > callback(TRACK_TYPE.MODULE, undefined, dep);</span>
|
|
1334
|
+
<span class="cstat-no" title="statement not covered" > break;</span>
|
|
1335
|
+
}
|
|
1336
|
+
}
|
|
1337
|
+
default:
|
|
1338
|
+
<span class="cstat-no" title="statement not covered" > if (property !== undefined) {</span>
|
|
1339
|
+
<span class="cstat-no" title="statement not covered" > if (objectRef && property !== null) {</span>
|
|
1340
|
+
<span class="cstat-no" title="statement not covered" > callback(TRACK_TYPE.PROPERTY, propertyName, property);</span>
|
|
1341
|
+
} else {
|
|
1342
|
+
<span class="cstat-no" title="statement not covered" > callback(TRACK_TYPE.PLAIN, propertyName, property);</span>
|
|
1343
|
+
}
|
|
1344
|
+
}
|
|
1345
|
+
<span class="cstat-no" title="statement not covered" > break;</span>
|
|
1346
|
+
}
|
|
1347
|
+
}
|
|
1348
|
+
}
|
|
1349
|
+
}
|
|
1350
|
+
|
|
1351
|
+
function <span class="fstat-no" title="function not covered" >getAppPropertyName(</span>node) {
|
|
1352
|
+
const { propertyMap } = <span class="cstat-no" title="statement not covered" >getConceptMeta('App');</span>
|
|
1353
|
+
const concept = <span class="cstat-no" title="statement not covered" >node.concept;</span>
|
|
1354
|
+
<span class="cstat-no" title="statement not covered" > for (const item of propertyMap) {</span>
|
|
1355
|
+
const [key, meta] = <span class="cstat-no" title="statement not covered" >item;</span>
|
|
1356
|
+
<span class="cstat-no" title="statement not covered" > if (meta.objectRef === concept) {</span>
|
|
1357
|
+
<span class="cstat-no" title="statement not covered" > return key;</span>
|
|
1358
|
+
}
|
|
1359
|
+
}
|
|
1360
|
+
<span class="cstat-no" title="statement not covered" > return undefined;</span>
|
|
1361
|
+
}
|
|
1362
|
+
|
|
1363
|
+
export function <span class="fstat-no" title="function not covered" >backtracking(</span>{ node, startNode, calleeNode, propertyName, relatedPropertyName }, callback) {
|
|
1364
|
+
const m = <span class="cstat-no" title="statement not covered" >calleeNode.getAncestor('Module');</span>
|
|
1365
|
+
<span class="cstat-no" title="statement not covered" > if (m) {</span>
|
|
1366
|
+
<span class="cstat-no" title="statement not covered" > callback(TRACK_TYPE.PLAIN, propertyName, node[propertyName]);</span>
|
|
1367
|
+
<span class="cstat-no" title="statement not covered" > callback(TRACK_TYPE.PLAIN, relatedPropertyName, node[relatedPropertyName]);</span>
|
|
1368
|
+
<span class="cstat-no" title="statement not covered" > callback(TRACK_TYPE.MODULE, undefined, m);</span>
|
|
1369
|
+
<span class="cstat-no" title="statement not covered" > return;</span>
|
|
1370
|
+
}
|
|
1371
|
+
|
|
1372
|
+
const approot = <span class="cstat-no" title="statement not covered" >calleeNode.rootNode;</span>
|
|
1373
|
+
// 向上查找到顶层,然后向下构造 template
|
|
1374
|
+
let t = <span class="cstat-no" title="statement not covered" >calleeNode;</span>
|
|
1375
|
+
let AppPropertyName;
|
|
1376
|
+
<span class="cstat-no" title="statement not covered" > while (t) {</span>
|
|
1377
|
+
const pnode = <span class="cstat-no" title="statement not covered" >t.parentNode;</span>
|
|
1378
|
+
<span class="cstat-no" title="statement not covered" > if (pnode === approot) {</span>
|
|
1379
|
+
<span class="cstat-no" title="statement not covered" > AppPropertyName = getAppPropertyName(t);</span>
|
|
1380
|
+
}
|
|
1381
|
+
<span class="cstat-no" title="statement not covered" > if (pnode !== approot && pnode !== startNode) {</span>
|
|
1382
|
+
<span class="cstat-no" title="statement not covered" > t = pnode;</span>
|
|
1383
|
+
} else {
|
|
1384
|
+
<span class="cstat-no" title="statement not covered" > break;</span>
|
|
1385
|
+
}
|
|
1386
|
+
}
|
|
1387
|
+
|
|
1388
|
+
<span class="cstat-no" title="statement not covered" > callback(TRACK_TYPE.CALLEE, propertyName, node[propertyName], {</span>
|
|
1389
|
+
rootNode: t,
|
|
1390
|
+
calleeNode,
|
|
1391
|
+
relatedPropertyName,
|
|
1392
|
+
AppPropertyName,
|
|
1393
|
+
});
|
|
1394
|
+
}
|
|
1395
|
+
</pre></td></tr></table></pre>
|
|
1396
|
+
|
|
1397
|
+
<div class='push'></div><!-- for sticky footer -->
|
|
1398
|
+
</div><!-- /wrapper -->
|
|
1399
|
+
<div class='footer quiet pad2 space-top1 center small'>
|
|
1400
|
+
Code coverage generated by
|
|
1401
|
+
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
1402
|
+
at 2023-10-18T11:36:07.885Z
|
|
1403
|
+
</div>
|
|
1404
|
+
<script src="../../../prettify.js"></script>
|
|
1405
|
+
<script>
|
|
1406
|
+
window.onload = function () {
|
|
1407
|
+
prettyPrint();
|
|
1408
|
+
};
|
|
1409
|
+
</script>
|
|
1410
|
+
<script src="../../../sorter.js"></script>
|
|
1411
|
+
<script src="../../../block-navigation.js"></script>
|
|
1412
|
+
</body>
|
|
1413
|
+
</html>
|
|
1414
|
+
|