@lcap/nasl 3.4.0-beta.5 → 3.4.0-beta.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.nyc_output/b920244d-8d01-4e76-be5a-95132217c5a1.json +1 -0
- package/.nyc_output/processinfo/b920244d-8d01-4e76-be5a-95132217c5a1.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 +631 -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 +4081 -0
- package/coverage/src/common/Command.ts.html +310 -0
- package/coverage/src/common/EventEmitter.ts.html +373 -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 +331 -0
- package/coverage/src/concepts/Anchor__.ts.html +667 -0
- package/coverage/src/concepts/AnonymousFunction__.ts.html +2092 -0
- package/coverage/src/concepts/App__.ts.html +13651 -0
- package/coverage/src/concepts/Argument__.ts.html +907 -0
- package/coverage/src/concepts/Assignee__.ts.html +2317 -0
- package/coverage/src/concepts/AssignmentLine__.ts.html +430 -0
- package/coverage/src/concepts/Assignment__.ts.html +1174 -0
- package/coverage/src/concepts/Attribute__.ts.html +919 -0
- package/coverage/src/concepts/AuthInterface__.ts.html +370 -0
- package/coverage/src/concepts/AuthLogicForCallInterface__.ts.html +2011 -0
- package/coverage/src/concepts/AuthLogic__.ts.html +793 -0
- package/coverage/src/concepts/BackendVariable__.ts.html +1690 -0
- package/coverage/src/concepts/Backend__.ts.html +1192 -0
- package/coverage/src/concepts/BatchAssignment__.ts.html +3376 -0
- package/coverage/src/concepts/BinaryExpression__.ts.html +1468 -0
- package/coverage/src/concepts/BindAttribute__.ts.html +3931 -0
- package/coverage/src/concepts/BindDirective__.ts.html +2002 -0
- package/coverage/src/concepts/BindEvent__.ts.html +3487 -0
- package/coverage/src/concepts/BindStyle__.ts.html +1645 -0
- package/coverage/src/concepts/BooleanLiteral__.ts.html +421 -0
- package/coverage/src/concepts/CallAuthInterface__.ts.html +1642 -0
- package/coverage/src/concepts/CallConnector__.ts.html +925 -0
- package/coverage/src/concepts/CallFunction__.ts.html +2164 -0
- package/coverage/src/concepts/CallInterface__.ts.html +2776 -0
- package/coverage/src/concepts/CallLogic__.ts.html +4693 -0
- package/coverage/src/concepts/CallQueryComponent__.ts.html +5419 -0
- package/coverage/src/concepts/Comment__.ts.html +397 -0
- package/coverage/src/concepts/CompletionProperty__.ts.html +946 -0
- package/coverage/src/concepts/ConfigGroup__.ts.html +1132 -0
- package/coverage/src/concepts/ConfigPropertyValue__.ts.html +427 -0
- package/coverage/src/concepts/ConfigProperty__.ts.html +1375 -0
- package/coverage/src/concepts/Configuration__.ts.html +1054 -0
- package/coverage/src/concepts/Connection__.ts.html +1387 -0
- package/coverage/src/concepts/ConnectorTrigger__.ts.html +598 -0
- package/coverage/src/concepts/Connector__.ts.html +4390 -0
- package/coverage/src/concepts/Constant__.ts.html +1123 -0
- package/coverage/src/concepts/DataSource__.ts.html +1798 -0
- package/coverage/src/concepts/DatabaseTypeAnnotation__.ts.html +334 -0
- package/coverage/src/concepts/DefaultValue__.ts.html +946 -0
- package/coverage/src/concepts/Destination__.ts.html +2761 -0
- package/coverage/src/concepts/End__.ts.html +436 -0
- package/coverage/src/concepts/EntityIndex__.ts.html +799 -0
- package/coverage/src/concepts/EntityProperty__.ts.html +2866 -0
- package/coverage/src/concepts/Entity__.ts.html +3070 -0
- package/coverage/src/concepts/EnumItem__.ts.html +553 -0
- package/coverage/src/concepts/Enum__.ts.html +1258 -0
- package/coverage/src/concepts/Event__.ts.html +1111 -0
- package/coverage/src/concepts/ExternalDestination__.ts.html +1060 -0
- package/coverage/src/concepts/ForEachStatement__.ts.html +2023 -0
- package/coverage/src/concepts/FrontendLibrary__.ts.html +1762 -0
- package/coverage/src/concepts/FrontendVariable__.ts.html +292 -0
- package/coverage/src/concepts/Frontend__.ts.html +4078 -0
- package/coverage/src/concepts/Function__.ts.html +3718 -0
- package/coverage/src/concepts/Identifier__.ts.html +1060 -0
- package/coverage/src/concepts/IfStatement__.ts.html +1636 -0
- package/coverage/src/concepts/Integration__.ts.html +1273 -0
- package/coverage/src/concepts/InterfaceParam__.ts.html +1258 -0
- package/coverage/src/concepts/Interface__.ts.html +3463 -0
- package/coverage/src/concepts/JSBlock__.ts.html +424 -0
- package/coverage/src/concepts/JavaLogic__.ts.html +463 -0
- package/coverage/src/concepts/LogicItem__.ts.html +1174 -0
- package/coverage/src/concepts/Logic__.ts.html +7732 -0
- package/coverage/src/concepts/MatchCase__.ts.html +2974 -0
- package/coverage/src/concepts/Match__.ts.html +2494 -0
- package/coverage/src/concepts/MemberExpression__.ts.html +1744 -0
- package/coverage/src/concepts/MicroApp__.ts.html +439 -0
- package/coverage/src/concepts/Module__.ts.html +9385 -0
- package/coverage/src/concepts/MsgTriggerEvent__.ts.html +1072 -0
- package/coverage/src/concepts/MsgTriggerLauncher__.ts.html +1045 -0
- package/coverage/src/concepts/Namespace__.ts.html +8221 -0
- package/coverage/src/concepts/NewComposite__.ts.html +4765 -0
- package/coverage/src/concepts/NewList__.ts.html +1702 -0
- package/coverage/src/concepts/NewMap__.ts.html +2470 -0
- package/coverage/src/concepts/New__.ts.html +289 -0
- package/coverage/src/concepts/NullLiteral__.ts.html +352 -0
- package/coverage/src/concepts/NumericLiteral__.ts.html +697 -0
- package/coverage/src/concepts/OqlQueryComponent__.ts.html +1237 -0
- package/coverage/src/concepts/OverriddenLogic__.ts.html +6970 -0
- package/coverage/src/concepts/Param__.ts.html +1798 -0
- package/coverage/src/concepts/Point__.ts.html +334 -0
- package/coverage/src/concepts/ProcessComponent__.ts.html +1717 -0
- package/coverage/src/concepts/ProcessElement__.ts.html +6187 -0
- package/coverage/src/concepts/ProcessOutcome__.ts.html +355 -0
- package/coverage/src/concepts/ProcessOutcomes__.ts.html +355 -0
- package/coverage/src/concepts/Process__.ts.html +5071 -0
- package/coverage/src/concepts/QueryAggregateExpression__.ts.html +589 -0
- package/coverage/src/concepts/QueryFieldExpression__.ts.html +586 -0
- package/coverage/src/concepts/QueryFromExpression__.ts.html +937 -0
- package/coverage/src/concepts/QueryGroupByExpression__.ts.html +580 -0
- package/coverage/src/concepts/QueryJoinExpression__.ts.html +1606 -0
- package/coverage/src/concepts/QueryLimitExpression__.ts.html +664 -0
- package/coverage/src/concepts/QueryOrderByExpression__.ts.html +706 -0
- package/coverage/src/concepts/QuerySelectExpression__.ts.html +1741 -0
- package/coverage/src/concepts/Rect__.ts.html +376 -0
- package/coverage/src/concepts/Return__.ts.html +1471 -0
- package/coverage/src/concepts/Role__.ts.html +604 -0
- package/coverage/src/concepts/SelectMembers__.ts.html +1279 -0
- package/coverage/src/concepts/Slot__.ts.html +649 -0
- package/coverage/src/concepts/SqlQueryComponent__.ts.html +1003 -0
- package/coverage/src/concepts/Start__.ts.html +307 -0
- package/coverage/src/concepts/StringInterpolation__.ts.html +1156 -0
- package/coverage/src/concepts/StringLiteral__.ts.html +508 -0
- package/coverage/src/concepts/StructureProperty__.ts.html +1300 -0
- package/coverage/src/concepts/Structure__.ts.html +2182 -0
- package/coverage/src/concepts/SwitchCase__.ts.html +1204 -0
- package/coverage/src/concepts/SwitchStatement__.ts.html +904 -0
- package/coverage/src/concepts/Theme__.ts.html +361 -0
- package/coverage/src/concepts/Transactional__.ts.html +631 -0
- package/coverage/src/concepts/TriggerEvent__.ts.html +1039 -0
- package/coverage/src/concepts/TriggerLauncher__.ts.html +778 -0
- package/coverage/src/concepts/TypeAnnotation__.ts.html +3832 -0
- package/coverage/src/concepts/TypeParam__.ts.html +322 -0
- package/coverage/src/concepts/UnaryExpression__.ts.html +730 -0
- package/coverage/src/concepts/Unparsed__.ts.html +397 -0
- package/coverage/src/concepts/UseComponent__.ts.html +334 -0
- package/coverage/src/concepts/ValidationRule__.ts.html +1876 -0
- package/coverage/src/concepts/Variable__.ts.html +1705 -0
- package/coverage/src/concepts/ViewBlock__.ts.html +355 -0
- package/coverage/src/concepts/ViewComponent__.ts.html +4327 -0
- package/coverage/src/concepts/ViewElement__.ts.html +8992 -0
- package/coverage/src/concepts/View__.ts.html +9019 -0
- package/coverage/src/concepts/WhileStatement__.ts.html +1105 -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 +6955 -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 +1976 -0
- package/coverage/src/concepts/index.ts.html +103 -0
- package/coverage/src/concepts/index__.ts.html +454 -0
- package/coverage/src/config.ts.html +325 -0
- package/coverage/src/decorators/index.html +131 -0
- package/coverage/src/decorators/index.ts.html +583 -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 +1084 -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 +124 -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 +2707 -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 +919 -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 +1606 -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 +14356 -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 +397 -0
- package/coverage/src/service/creator/errHandles.js.html +304 -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 +3721 -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 +1021 -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 +973 -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 +694 -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 +2 -19
- package/out/bak/translator.js.map +1 -1
- package/out/common/BaseNode.d.ts +11 -0
- package/out/common/BaseNode.js +57 -1
- package/out/common/BaseNode.js.map +1 -1
- package/out/common/index.d.ts +1 -0
- package/out/common/index.js +1 -0
- package/out/common/index.js.map +1 -1
- package/out/common/utils.d.ts +2 -0
- package/out/common/utils.js +18 -0
- package/out/common/utils.js.map +1 -0
- package/out/concepts/Abort__.d.ts +2 -2
- package/out/concepts/Abort__.js +6 -2
- package/out/concepts/Abort__.js.map +1 -1
- package/out/concepts/Anchor__.d.ts +2 -2
- package/out/concepts/Anchor__.js +5 -4
- package/out/concepts/Anchor__.js.map +1 -1
- package/out/concepts/AnonymousFunction__.d.ts +3 -3
- package/out/concepts/AnonymousFunction__.js +19 -15
- package/out/concepts/AnonymousFunction__.js.map +1 -1
- package/out/concepts/Argument__.d.ts +2 -2
- package/out/concepts/Argument__.js +12 -13
- package/out/concepts/Argument__.js.map +1 -1
- package/out/concepts/Assignee__.d.ts +2 -2
- package/out/concepts/Assignee__.js +11 -9
- package/out/concepts/Assignee__.js.map +1 -1
- package/out/concepts/AssignmentLine__.d.ts +2 -2
- package/out/concepts/AssignmentLine__.js +3 -2
- package/out/concepts/AssignmentLine__.js.map +1 -1
- package/out/concepts/Assignment__.d.ts +2 -2
- package/out/concepts/Assignment__.js +13 -29
- package/out/concepts/Assignment__.js.map +1 -1
- package/out/concepts/AuthInterface__.js +1 -1
- package/out/concepts/AuthInterface__.js.map +1 -1
- package/out/concepts/AuthLogicForCallInterface__.d.ts +2 -2
- package/out/concepts/AuthLogicForCallInterface__.js +56 -75
- package/out/concepts/AuthLogicForCallInterface__.js.map +1 -1
- package/out/concepts/BackendVariable__.d.ts +5 -8
- package/out/concepts/BackendVariable__.js +47 -29
- package/out/concepts/BackendVariable__.js.map +1 -1
- package/out/concepts/Backend__.d.ts +4 -7
- package/out/concepts/Backend__.js +7 -6
- package/out/concepts/Backend__.js.map +1 -1
- package/out/concepts/BatchAssignment__.d.ts +2 -2
- package/out/concepts/BatchAssignment__.js +19 -20
- package/out/concepts/BatchAssignment__.js.map +1 -1
- package/out/concepts/BinaryExpression__.d.ts +2 -2
- package/out/concepts/BinaryExpression__.js +37 -38
- package/out/concepts/BinaryExpression__.js.map +1 -1
- package/out/concepts/BindAttribute__.d.ts +4 -4
- package/out/concepts/BindAttribute__.js +39 -32
- package/out/concepts/BindAttribute__.js.map +1 -1
- package/out/concepts/BindDirective__.d.ts +2 -2
- package/out/concepts/BindDirective__.js +10 -8
- package/out/concepts/BindDirective__.js.map +1 -1
- package/out/concepts/BindEvent__.d.ts +4 -7
- package/out/concepts/BindEvent__.js +20 -18
- package/out/concepts/BindEvent__.js.map +1 -1
- package/out/concepts/BindStyle__.d.ts +2 -2
- package/out/concepts/BindStyle__.js +9 -7
- package/out/concepts/BindStyle__.js.map +1 -1
- package/out/concepts/Block__.d.ts +6 -2
- package/out/concepts/Block__.js +36 -5
- package/out/concepts/Block__.js.map +1 -1
- package/out/concepts/BooleanLiteral__.d.ts +2 -2
- package/out/concepts/BooleanLiteral__.js +2 -2
- package/out/concepts/BooleanLiteral__.js.map +1 -1
- package/out/concepts/CallAuthInterface__.d.ts +3 -2
- package/out/concepts/CallAuthInterface__.js +46 -30
- package/out/concepts/CallAuthInterface__.js.map +1 -1
- package/out/concepts/CallConnector__.d.ts +2 -2
- package/out/concepts/CallConnector__.js +25 -23
- package/out/concepts/CallConnector__.js.map +1 -1
- package/out/concepts/CallFunction__.d.ts +2 -2
- package/out/concepts/CallFunction__.js +19 -16
- package/out/concepts/CallFunction__.js.map +1 -1
- package/out/concepts/CallInterface__.d.ts +3 -2
- package/out/concepts/CallInterface__.js +16 -6
- package/out/concepts/CallInterface__.js.map +1 -1
- package/out/concepts/CallLogic__.d.ts +2 -3
- package/out/concepts/CallLogic__.js +26 -20
- package/out/concepts/CallLogic__.js.map +1 -1
- package/out/concepts/CallQueryComponent__.d.ts +4 -4
- package/out/concepts/CallQueryComponent__.js +38 -36
- package/out/concepts/CallQueryComponent__.js.map +1 -1
- package/out/concepts/Comment__.d.ts +2 -2
- package/out/concepts/Comment__.js +3 -2
- package/out/concepts/Comment__.js.map +1 -1
- package/out/concepts/ConfigProperty__.d.ts +4 -7
- package/out/concepts/ConfigProperty__.js +12 -10
- package/out/concepts/ConfigProperty__.js.map +1 -1
- package/out/concepts/Connection__.d.ts +4 -7
- package/out/concepts/Connection__.js +6 -5
- package/out/concepts/Connection__.js.map +1 -1
- package/out/concepts/Connector__.js.map +1 -1
- package/out/concepts/Constant__.d.ts +3 -3
- package/out/concepts/Constant__.js +38 -13
- package/out/concepts/Constant__.js.map +1 -1
- package/out/concepts/DataSource__.d.ts +4 -7
- package/out/concepts/DataSource__.js +7 -6
- package/out/concepts/DataSource__.js.map +1 -1
- package/out/concepts/DefaultValue__.d.ts +6 -2
- package/out/concepts/DefaultValue__.js +11 -3
- package/out/concepts/DefaultValue__.js.map +1 -1
- package/out/concepts/Destination__.d.ts +3 -3
- package/out/concepts/Destination__.js +29 -26
- package/out/concepts/Destination__.js.map +1 -1
- package/out/concepts/End__.d.ts +2 -2
- package/out/concepts/End__.js +17 -13
- package/out/concepts/End__.js.map +1 -1
- package/out/concepts/EntityIndex__.d.ts +2 -2
- package/out/concepts/EntityIndex__.js +4 -3
- package/out/concepts/EntityIndex__.js.map +1 -1
- package/out/concepts/EntityProperty__.d.ts +2 -2
- package/out/concepts/EntityProperty__.js +9 -8
- package/out/concepts/EntityProperty__.js.map +1 -1
- package/out/concepts/Entity__.d.ts +4 -7
- package/out/concepts/Entity__.js +22 -22
- package/out/concepts/Entity__.js.map +1 -1
- package/out/concepts/EnumItem__.d.ts +2 -2
- package/out/concepts/EnumItem__.js +4 -3
- package/out/concepts/EnumItem__.js.map +1 -1
- package/out/concepts/Enum__.d.ts +4 -7
- package/out/concepts/Enum__.js +10 -8
- package/out/concepts/Enum__.js.map +1 -1
- package/out/concepts/ExternalDestination__.d.ts +2 -2
- package/out/concepts/ExternalDestination__.js +7 -5
- package/out/concepts/ExternalDestination__.js.map +1 -1
- package/out/concepts/ForEachStatement__.d.ts +2 -2
- package/out/concepts/ForEachStatement__.js +14 -12
- package/out/concepts/ForEachStatement__.js.map +1 -1
- package/out/concepts/Frontend__.d.ts +4 -7
- package/out/concepts/Frontend__.js +7 -6
- package/out/concepts/Frontend__.js.map +1 -1
- package/out/concepts/Function__.d.ts +3 -3
- package/out/concepts/Function__.js +22 -18
- package/out/concepts/Function__.js.map +1 -1
- package/out/concepts/Identifier__.d.ts +2 -2
- package/out/concepts/Identifier__.js +19 -23
- package/out/concepts/Identifier__.js.map +1 -1
- package/out/concepts/IfStatement__.d.ts +2 -2
- package/out/concepts/IfStatement__.js +12 -10
- package/out/concepts/IfStatement__.js.map +1 -1
- package/out/concepts/ImportedInterface__.d.ts +20 -0
- package/out/concepts/ImportedInterface__.js +57 -0
- package/out/concepts/ImportedInterface__.js.map +1 -0
- package/out/concepts/InterfaceParam__.d.ts +2 -7
- package/out/concepts/InterfaceParam__.js +33 -14
- package/out/concepts/InterfaceParam__.js.map +1 -1
- package/out/concepts/Interface__.d.ts +7 -15
- package/out/concepts/Interface__.js +33 -43
- package/out/concepts/Interface__.js.map +1 -1
- package/out/concepts/JSBlock__.d.ts +2 -2
- package/out/concepts/JSBlock__.js +3 -58
- package/out/concepts/JSBlock__.js.map +1 -1
- package/out/concepts/JavaLogic__.d.ts +2 -2
- package/out/concepts/JavaLogic__.js +6 -2
- package/out/concepts/JavaLogic__.js.map +1 -1
- package/out/concepts/LogicItem__.d.ts +2 -2
- package/out/concepts/LogicItem__.js +7 -13
- package/out/concepts/LogicItem__.js.map +1 -1
- package/out/concepts/Logic__.d.ts +8 -11
- package/out/concepts/Logic__.js +124 -157
- package/out/concepts/Logic__.js.map +1 -1
- package/out/concepts/MatchCase__.d.ts +2 -2
- package/out/concepts/MatchCase__.js +23 -22
- package/out/concepts/MatchCase__.js.map +1 -1
- package/out/concepts/Match__.d.ts +2 -2
- package/out/concepts/Match__.js +24 -22
- package/out/concepts/Match__.js.map +1 -1
- package/out/concepts/MemberExpression__.d.ts +2 -2
- package/out/concepts/MemberExpression__.js +28 -24
- package/out/concepts/MemberExpression__.js.map +1 -1
- package/out/concepts/MetadataType__.d.ts +4 -7
- package/out/concepts/MetadataType__.js +11 -9
- package/out/concepts/MetadataType__.js.map +1 -1
- package/out/concepts/Module__.d.ts +8 -179
- package/out/concepts/Module__.js +124 -265
- package/out/concepts/Module__.js.map +1 -1
- package/out/concepts/NewComposite__.d.ts +5 -5
- package/out/concepts/NewComposite__.js +75 -76
- package/out/concepts/NewComposite__.js.map +1 -1
- package/out/concepts/NewList__.d.ts +5 -5
- package/out/concepts/NewList__.js +30 -26
- package/out/concepts/NewList__.js.map +1 -1
- package/out/concepts/NewMap__.d.ts +4 -4
- package/out/concepts/NewMap__.js +39 -35
- package/out/concepts/NewMap__.js.map +1 -1
- package/out/concepts/New__.d.ts +2 -2
- package/out/concepts/New__.js +3 -2
- package/out/concepts/New__.js.map +1 -1
- package/out/concepts/NullLiteral__.d.ts +2 -2
- package/out/concepts/NullLiteral__.js +2 -2
- package/out/concepts/NullLiteral__.js.map +1 -1
- package/out/concepts/NumericLiteral__.d.ts +2 -2
- package/out/concepts/NumericLiteral__.js +6 -5
- package/out/concepts/NumericLiteral__.js.map +1 -1
- package/out/concepts/OqlQueryComponent__.d.ts +2 -2
- package/out/concepts/OqlQueryComponent__.js +16 -14
- package/out/concepts/OqlQueryComponent__.js.map +1 -1
- package/out/concepts/OverriddenLogic__.d.ts +8 -11
- package/out/concepts/OverriddenLogic__.js +99 -112
- package/out/concepts/OverriddenLogic__.js.map +1 -1
- package/out/concepts/Param__.d.ts +3 -3
- package/out/concepts/Param__.js +24 -30
- package/out/concepts/Param__.js.map +1 -1
- package/out/concepts/ProcessElement__.d.ts +2 -2
- package/out/concepts/ProcessElement__.js +54 -68
- package/out/concepts/ProcessElement__.js.map +1 -1
- package/out/concepts/ProcessOutcome__.d.ts +2 -1
- package/out/concepts/ProcessOutcome__.js +5 -4
- package/out/concepts/ProcessOutcome__.js.map +1 -1
- package/out/concepts/ProcessOutcomes__.d.ts +2 -1
- package/out/concepts/ProcessOutcomes__.js +6 -5
- package/out/concepts/ProcessOutcomes__.js.map +1 -1
- package/out/concepts/Process__.d.ts +4 -7
- package/out/concepts/Process__.js +35 -52
- package/out/concepts/Process__.js.map +1 -1
- package/out/concepts/QueryAggregateExpression__.d.ts +2 -2
- package/out/concepts/QueryAggregateExpression__.js +2 -2
- package/out/concepts/QueryAggregateExpression__.js.map +1 -1
- package/out/concepts/QueryFieldExpression__.d.ts +2 -2
- package/out/concepts/QueryFieldExpression__.js +5 -4
- package/out/concepts/QueryFieldExpression__.js.map +1 -1
- package/out/concepts/QueryFromExpression__.d.ts +2 -2
- package/out/concepts/QueryFromExpression__.js +8 -6
- package/out/concepts/QueryFromExpression__.js.map +1 -1
- package/out/concepts/QueryGroupByExpression__.d.ts +2 -1
- package/out/concepts/QueryGroupByExpression__.js +6 -5
- package/out/concepts/QueryGroupByExpression__.js.map +1 -1
- package/out/concepts/QueryJoinExpression__.d.ts +2 -2
- package/out/concepts/QueryJoinExpression__.js +12 -10
- package/out/concepts/QueryJoinExpression__.js.map +1 -1
- package/out/concepts/QueryLimitExpression__.d.ts +2 -2
- package/out/concepts/QueryLimitExpression__.js +6 -5
- package/out/concepts/QueryLimitExpression__.js.map +1 -1
- package/out/concepts/QueryOrderByExpression__.d.ts +2 -2
- package/out/concepts/QueryOrderByExpression__.js +6 -5
- package/out/concepts/QueryOrderByExpression__.js.map +1 -1
- package/out/concepts/Return__.d.ts +3 -3
- package/out/concepts/Return__.js +41 -24
- package/out/concepts/Return__.js.map +1 -1
- package/out/concepts/Role__.d.ts +4 -7
- package/out/concepts/Role__.js +7 -6
- package/out/concepts/Role__.js.map +1 -1
- package/out/concepts/SelectMembers__.d.ts +2 -2
- package/out/concepts/SelectMembers__.js +3 -2
- package/out/concepts/SelectMembers__.js.map +1 -1
- package/out/concepts/SqlQueryComponent__.d.ts +2 -2
- package/out/concepts/SqlQueryComponent__.js +12 -10
- package/out/concepts/SqlQueryComponent__.js.map +1 -1
- package/out/concepts/Start__.d.ts +2 -2
- package/out/concepts/Start__.js +2 -2
- package/out/concepts/Start__.js.map +1 -1
- package/out/concepts/StringInterpolation__.d.ts +2 -2
- package/out/concepts/StringInterpolation__.js +7 -5
- package/out/concepts/StringInterpolation__.js.map +1 -1
- package/out/concepts/StringLiteral__.d.ts +2 -2
- package/out/concepts/StringLiteral__.js +12 -6
- package/out/concepts/StringLiteral__.js.map +1 -1
- package/out/concepts/StructureProperty__.d.ts +2 -2
- package/out/concepts/StructureProperty__.js +6 -5
- package/out/concepts/StructureProperty__.js.map +1 -1
- package/out/concepts/Structure__.d.ts +4 -7
- package/out/concepts/Structure__.js +15 -15
- package/out/concepts/Structure__.js.map +1 -1
- package/out/concepts/SwitchCase__.d.ts +2 -2
- package/out/concepts/SwitchCase__.js +12 -10
- package/out/concepts/SwitchCase__.js.map +1 -1
- package/out/concepts/SwitchStatement__.d.ts +2 -2
- package/out/concepts/SwitchStatement__.js +8 -6
- package/out/concepts/SwitchStatement__.js.map +1 -1
- package/out/concepts/TriggerLauncher__.d.ts +4 -7
- package/out/concepts/TriggerLauncher__.js +7 -6
- package/out/concepts/TriggerLauncher__.js.map +1 -1
- package/out/concepts/TypeAnnotation__.d.ts +2 -2
- package/out/concepts/TypeAnnotation__.js +51 -25
- package/out/concepts/TypeAnnotation__.js.map +1 -1
- package/out/concepts/TypeParam__.d.ts +2 -2
- package/out/concepts/TypeParam__.js +4 -3
- package/out/concepts/TypeParam__.js.map +1 -1
- package/out/concepts/UnaryExpression__.d.ts +2 -2
- package/out/concepts/UnaryExpression__.js +12 -7
- package/out/concepts/UnaryExpression__.js.map +1 -1
- package/out/concepts/Unparsed__.d.ts +2 -2
- package/out/concepts/Unparsed__.js +2 -2
- package/out/concepts/Unparsed__.js.map +1 -1
- package/out/concepts/ValidationRule__.d.ts +2 -2
- package/out/concepts/ValidationRule__.js +11 -9
- package/out/concepts/ValidationRule__.js.map +1 -1
- package/out/concepts/Variable__.d.ts +5 -8
- package/out/concepts/Variable__.js +49 -32
- package/out/concepts/Variable__.js.map +1 -1
- package/out/concepts/ViewElement__.d.ts +6 -6
- package/out/concepts/ViewElement__.js +110 -137
- package/out/concepts/ViewElement__.js.map +1 -1
- package/out/concepts/View__.d.ts +6 -9
- package/out/concepts/View__.js +76 -84
- package/out/concepts/View__.js.map +1 -1
- package/out/concepts/WhileStatement__.d.ts +2 -2
- package/out/concepts/WhileStatement__.js +9 -7
- package/out/concepts/WhileStatement__.js.map +1 -1
- package/out/concepts/index__.d.ts +1 -1
- package/out/concepts/index__.js +1 -1
- package/out/concepts/index__.js.map +1 -1
- package/out/concepts/types__.d.ts +1 -3
- package/out/decorators/index.js +10 -9
- package/out/decorators/index.js.map +1 -1
- package/out/generator/genMetaData.js +0 -7
- package/out/generator/genMetaData.js.map +1 -1
- package/out/manager/diagnostic.d.ts +1 -1
- package/out/manager/diagnostic.js +2 -3
- package/out/manager/diagnostic.js.map +1 -1
- package/out/server/extendBaseNode.js +7 -24
- package/out/server/extendBaseNode.js.map +1 -1
- package/out/server/getConnector.js +8 -3
- package/out/server/getConnector.js.map +1 -1
- package/out/server/getLogics.js +13 -3
- package/out/server/getLogics.js.map +1 -1
- package/out/server/naslServer.d.ts +44 -46
- package/out/server/naslServer.js +333 -461
- package/out/server/naslServer.js.map +1 -1
- package/out/server/translator.js +1 -1
- package/out/server/translator.js.map +1 -1
- package/out/templator/genCreateBlock.js +5 -9
- package/out/templator/genCreateBlock.js.map +1 -1
- package/out/templator/genCurdEditMultipleKeyBlock.js +12 -18
- package/out/templator/genCurdEditMultipleKeyBlock.js.map +1 -1
- package/out/templator/genCurdMultipleKeyBlock.js +8 -10
- package/out/templator/genCurdMultipleKeyBlock.js.map +1 -1
- package/out/templator/genEditTableBlock.js +2 -3
- package/out/templator/genEditTableBlock.js.map +1 -1
- package/out/templator/genUpdateBlock.js +9 -12
- package/out/templator/genUpdateBlock.js.map +1 -1
- package/out/templator/utils.js.map +1 -1
- package/out/translator/types.d.ts +16 -3
- package/out/translator/utils.d.ts +19 -1
- package/out/translator/utils.js +90 -2
- package/out/translator/utils.js.map +1 -1
- package/out/utils/time-slicing/constant.d.ts +35 -0
- package/out/utils/time-slicing/constant.js +40 -0
- package/out/utils/time-slicing/constant.js.map +1 -0
- package/out/utils/time-slicing/controller.d.ts +53 -0
- package/out/utils/time-slicing/controller.js +280 -0
- package/out/utils/time-slicing/controller.js.map +1 -0
- package/out/utils/time-slicing/index.d.ts +5 -0
- package/out/utils/time-slicing/index.js +26 -0
- package/out/utils/time-slicing/index.js.map +1 -0
- package/out/utils/time-slicing/page-state.d.ts +2 -0
- package/out/utils/time-slicing/page-state.js +14 -0
- package/out/utils/time-slicing/page-state.js.map +1 -0
- package/out/utils/time-slicing/performance.d.ts +11 -0
- package/out/utils/time-slicing/performance.js +51 -0
- package/out/utils/time-slicing/performance.js.map +1 -0
- package/out/utils/time-slicing/runner.d.ts +12 -0
- package/out/utils/time-slicing/runner.js +53 -0
- package/out/utils/time-slicing/runner.js.map +1 -0
- package/out/utils/time-slicing/tool.d.ts +24 -0
- package/out/utils/time-slicing/tool.js +47 -0
- package/out/utils/time-slicing/tool.js.map +1 -0
- package/out/utils/time-slicing/utils.d.ts +62 -0
- package/out/utils/time-slicing/utils.js +47 -0
- package/out/utils/time-slicing/utils.js.map +1 -0
- package/out/utils/time-slicing/wrapper.d.ts +18 -0
- package/out/utils/time-slicing/wrapper.js +55 -0
- package/out/utils/time-slicing/wrapper.js.map +1 -0
- package/out/utils/types.d.ts +7 -0
- package/package.json +1 -1
- package/sandbox/stdlib/nasl.core.ts +0 -2
- package/sandbox/stdlib/nasl.util.ts +1 -1
- package/src/bak/translator.js +2 -17
- package/src/common/BaseNode.ts +73 -7
- package/src/common/index.ts +1 -0
- package/src/common/utils.ts +17 -0
- package/src/concepts/Abort__.ts +12 -3
- package/src/concepts/Anchor__.ts +15 -5
- package/src/concepts/AnonymousFunction__.ts +29 -23
- package/src/concepts/Argument__.ts +25 -14
- package/src/concepts/Assignee__.ts +21 -10
- package/src/concepts/AssignmentLine__.ts +13 -3
- package/src/concepts/Assignment__.ts +33 -42
- package/src/concepts/AuthInterface__.ts +3 -3
- package/src/concepts/AuthLogicForCallInterface__.ts +63 -84
- package/src/concepts/BackendVariable__.ts +35 -30
- package/src/concepts/Backend__.ts +24 -7
- package/src/concepts/BatchAssignment__.ts +30 -21
- package/src/concepts/BinaryExpression__.ts +47 -38
- package/src/concepts/BindAttribute__.ts +43 -39
- package/src/concepts/BindDirective__.ts +19 -9
- package/src/concepts/BindEvent__.ts +31 -26
- package/src/concepts/BindStyle__.ts +18 -8
- package/src/concepts/Block__.ts +22 -6
- package/src/concepts/BooleanLiteral__.ts +11 -3
- package/src/concepts/CallAuthInterface__.ts +58 -33
- package/src/concepts/CallConnector__.ts +34 -26
- package/src/concepts/CallFunction__.ts +22 -17
- package/src/concepts/CallInterface__.ts +30 -12
- package/src/concepts/CallLogic__.ts +46 -47
- package/src/concepts/CallQueryComponent__.ts +48 -46
- package/src/concepts/Comment__.ts +13 -3
- package/src/concepts/ConfigProperty__.ts +22 -12
- package/src/concepts/Connection__.ts +22 -6
- package/src/concepts/Connector__.ts +1 -1
- package/src/concepts/Constant__.ts +24 -14
- package/src/concepts/DataSource__.ts +16 -7
- package/src/concepts/DefaultValue__.ts +13 -4
- package/src/concepts/Destination__.ts +39 -33
- package/src/concepts/End__.ts +24 -15
- package/src/concepts/EntityIndex__.ts +13 -4
- package/src/concepts/EntityProperty__.ts +20 -10
- package/src/concepts/Entity__.ts +34 -27
- package/src/concepts/EnumItem__.ts +13 -4
- package/src/concepts/Enum__.ts +21 -10
- package/src/concepts/ExternalDestination__.ts +16 -7
- package/src/concepts/ForEachStatement__.ts +24 -14
- package/src/concepts/Frontend__.ts +18 -7
- package/src/concepts/Function__.ts +30 -21
- package/src/concepts/Identifier__.ts +32 -34
- package/src/concepts/IfStatement__.ts +22 -14
- package/src/concepts/ImportedInterface__.ts +61 -0
- package/src/concepts/InterfaceParam__.ts +19 -16
- package/src/concepts/Interface__.ts +45 -51
- package/src/concepts/JSBlock__.ts +12 -61
- package/src/concepts/JavaLogic__.ts +13 -3
- package/src/concepts/LogicItem__.ts +13 -14
- package/src/concepts/Logic__.ts +147 -172
- package/src/concepts/MatchCase__.ts +33 -27
- package/src/concepts/Match__.ts +34 -26
- package/src/concepts/MemberExpression__.ts +37 -25
- package/src/concepts/MetadataType__.ts +22 -10
- package/src/concepts/Module__.ts +177 -540
- package/src/concepts/NewComposite__.ts +86 -80
- package/src/concepts/NewList__.ts +40 -32
- package/src/concepts/NewMap__.ts +49 -42
- package/src/concepts/New__.ts +13 -3
- package/src/concepts/NullLiteral__.ts +11 -3
- package/src/concepts/NumericLiteral__.ts +15 -6
- package/src/concepts/OqlQueryComponent__.ts +26 -18
- package/src/concepts/OverriddenLogic__.ts +117 -125
- package/src/concepts/Param__.ts +42 -38
- package/src/concepts/ProcessElement__.ts +67 -79
- package/src/concepts/ProcessOutcome__.ts +14 -6
- package/src/concepts/ProcessOutcomes__.ts +15 -7
- package/src/concepts/Process__.ts +50 -61
- package/src/concepts/QueryAggregateExpression__.ts +11 -3
- package/src/concepts/QueryFieldExpression__.ts +14 -5
- package/src/concepts/QueryFromExpression__.ts +18 -7
- package/src/concepts/QueryGroupByExpression__.ts +14 -6
- package/src/concepts/QueryJoinExpression__.ts +22 -11
- package/src/concepts/QueryLimitExpression__.ts +16 -6
- package/src/concepts/QueryOrderByExpression__.ts +17 -6
- package/src/concepts/Return__.ts +27 -25
- package/src/concepts/Role__.ts +17 -8
- package/src/concepts/SelectMembers__.ts +13 -3
- package/src/concepts/SqlQueryComponent__.ts +22 -11
- package/src/concepts/Start__.ts +11 -3
- package/src/concepts/StringInterpolation__.ts +10 -5
- package/src/concepts/StringLiteral__.ts +20 -7
- package/src/concepts/StructureProperty__.ts +16 -6
- package/src/concepts/Structure__.ts +26 -18
- package/src/concepts/SwitchCase__.ts +22 -14
- package/src/concepts/SwitchStatement__.ts +17 -7
- package/src/concepts/TriggerLauncher__.ts +17 -7
- package/src/concepts/TypeAnnotation__.ts +36 -26
- package/src/concepts/TypeParam__.ts +13 -4
- package/src/concepts/UnaryExpression__.ts +22 -9
- package/src/concepts/Unparsed__.ts +11 -3
- package/src/concepts/ValidationRule__.ts +21 -17
- package/src/concepts/Variable__.ts +37 -33
- package/src/concepts/ViewElement__.ts +128 -156
- package/src/concepts/View__.ts +101 -101
- package/src/concepts/WhileStatement__.ts +19 -10
- package/src/concepts/index__.ts +1 -1
- package/src/concepts/types__.ts +1 -5
- package/src/decorators/index.ts +10 -9
- package/src/generator/genMetaData.ts +2 -12
- package/src/manager/diagnostic.ts +3 -4
- package/src/server/extendBaseNode.ts +8 -24
- package/src/server/getConnector.ts +8 -3
- package/src/server/getLogics.ts +15 -3
- package/src/server/naslServer.ts +717 -749
- package/src/server/translator.ts +1 -1
- package/src/templator/genCreateBlock.ts +5 -9
- package/src/templator/genCurdEditMultipleKeyBlock.ts +13 -19
- package/src/templator/genCurdMultipleKeyBlock.ts +11 -14
- package/src/templator/genEditTableBlock.ts +2 -4
- package/src/templator/genUpdateBlock.ts +12 -15
- package/src/templator/utils.ts +7 -8
- package/src/translator/types.ts +20 -5
- package/src/translator/utils.ts +100 -5
- package/src/utils/time-slicing/constant.ts +37 -0
- package/src/utils/time-slicing/controller.ts +342 -0
- package/src/utils/time-slicing/index.ts +6 -0
- package/src/utils/time-slicing/page-state.ts +12 -0
- package/src/utils/time-slicing/performance.ts +56 -0
- package/src/utils/time-slicing/runner.ts +54 -0
- package/src/utils/time-slicing/tool.ts +45 -0
- package/src/utils/time-slicing/utils.ts +90 -0
- package/src/utils/time-slicing/wrapper.ts +58 -0
- package/src/utils/types.ts +9 -0
- package/test/concepts/anonymous-function/toEmbeddedTS.spec.ts +2 -1
- package/test/concepts/assignment/toEmbeddedTS.spec.ts +2 -1
- package/test/concepts/batch-assignment/toEmbeddedTS.spec.ts +2 -1
- package/test/concepts/binary-expression/__snapshots__/toEmbeddedTS.spec.ts.snap +3 -3
- package/test/concepts/binary-expression/toEmbeddedTS.spec.ts +2 -1
- package/test/concepts/boolean-literal/toEmbeddedTS.spec.ts +2 -1
- package/test/concepts/call-function/toEmbeddedTS.spec.ts +2 -1
- package/test/concepts/call-interface/__snapshots__/toJS.spec.ts.snap +3 -3
- package/test/concepts/call-interface/toEmbeddedTS.spec.ts +2 -1
- package/test/concepts/call-logic/__snapshots__/toJS.spec.ts.snap +5 -5
- package/test/concepts/call-logic/getQuickInfoOffset.spec.ts +2 -1
- package/test/concepts/call-logic/toEmbeddedTS.spec.ts +2 -1
- package/test/concepts/data-source/toEmbeddedTS.spec.ts +2 -1
- package/test/concepts/data-source/toEmbeddedTSFile.spec.ts +2 -1
- package/test/concepts/entity/__snapshots__/toEmbeddedTS.spec.ts.snap +19 -19
- package/test/concepts/entity/toEmbeddedTS.spec.ts +2 -1
- package/test/concepts/identifier/toEmbeddedTS.spec.ts +2 -1
- package/test/concepts/match/__snapshots__/toJS.spec.ts.snap +1 -1
- package/test/concepts/match/toEmbeddedTS.spec.ts +2 -1
- package/test/concepts/member-expression/toEmbeddedTS.spec.ts +2 -1
- package/test/concepts/null-literal/toEmbeddedTS.spec.ts +2 -1
- package/test/concepts/numeric-literal/__snapshots__/toJS.spec.ts.snap +1 -1
- package/test/concepts/numeric-literal/toEmbeddedTS.spec.ts +2 -1
- package/test/concepts/string-literal/toEmbeddedTS.spec.ts +2 -1
- package/test/concepts/validation-rule/__snapshots__/toJS.spec.ts.snap +3 -3
- package/test/concepts/validation-rule/toEmbeddedTS.spec.ts +2 -1
- package/test/concepts/validation-rule/validation-rule.spec.ts +2 -1
- package/test/concepts/view-element/__snapshots__/toEmbeddedTS.spec.ts.snap +3 -3
- package/test/concepts/view-element/__snapshots__/toVue.spec.ts.snap +0 -4
- package/test/concepts/view-element/toEmbeddedTS.spec.ts +2 -1
- package/test/time-slicing/runner.spec.ts +28 -0
- package/test/time-slicing/time-slicing-nodejs.spec.ts +27 -0
- package/test/time-slicing/utils.ts +7 -0
- package/test/time-slicing/wrapper.spec.ts +92 -0
- package/ts-worker/lib/tsserver.js +10 -1
- package/ts-worker/package.json +1 -0
- package/ts-worker/src/index.js +13 -12
- package/ts-worker/webpack.config.js +1 -1
- package/out/concepts/InterfaceFromExample__.d.ts +0 -88
- package/out/concepts/InterfaceFromExample__.js +0 -183
- package/out/concepts/InterfaceFromExample__.js.map +0 -1
- package/out/utils/time-slicing.d.ts +0 -41
- package/out/utils/time-slicing.js +0 -82
- package/out/utils/time-slicing.js.map +0 -1
- package/src/concepts/InterfaceFromExample__.ts +0 -205
- package/src/utils/time-slicing.ts +0 -111
package/out/server/naslServer.js
CHANGED
|
@@ -184,7 +184,7 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
184
184
|
handleMessage: async ({ data }) => {
|
|
185
185
|
if (data && data.event === 'publishDiagnostics') {
|
|
186
186
|
const records = await this._resolveDiagnosticRecords(data.records);
|
|
187
|
-
this.diagnosticManager.pushAll(records);
|
|
187
|
+
await this.diagnosticManager.pushAll(records);
|
|
188
188
|
try {
|
|
189
189
|
// 结束诊断和标注
|
|
190
190
|
(0, common_1.invokeCommand)('naslServer:endWork');
|
|
@@ -268,323 +268,103 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
268
268
|
// 全部文件加载完毕开始初始化
|
|
269
269
|
await this.getDiagnosticRecordsAndPushAll();
|
|
270
270
|
}
|
|
271
|
-
contentToFile(module
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
return;
|
|
271
|
+
*contentToFile(module) {
|
|
272
|
+
if (!module) {
|
|
273
|
+
return [];
|
|
275
274
|
}
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
// sourceMap都存在目录级别内容下,在页面层级下去找
|
|
281
|
-
structure.sourceMap = result.sourceMap;
|
|
282
|
-
this.file2NodeMap.set(result.filePath, structure);
|
|
283
|
-
}
|
|
284
|
-
catch (err) { }
|
|
285
|
-
});
|
|
286
|
-
module.metadataTypes?.forEach((metadataType) => {
|
|
275
|
+
const self = this;
|
|
276
|
+
const results = [];
|
|
277
|
+
const getTsFile = function* getTsFile(node, name, pre) {
|
|
278
|
+
const isContinue = pre ? (input) => input instanceof pre : () => true;
|
|
287
279
|
try {
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
// sourceMap都存在目录级别内容下,在页面层级下去找
|
|
291
|
-
metadataType.sourceMap = result.sourceMap;
|
|
292
|
-
this.file2NodeMap.set(result.filePath, metadataType);
|
|
293
|
-
}
|
|
294
|
-
catch (err) { }
|
|
295
|
-
});
|
|
296
|
-
if (module instanceof concepts_1.App) {
|
|
297
|
-
module.overriddenLogics?.forEach?.((logic) => {
|
|
298
|
-
try {
|
|
299
|
-
if (!(logic instanceof concepts_1.OverriddenLogic))
|
|
300
|
-
return;
|
|
301
|
-
const result = logic.toEmbeddedTSFile();
|
|
302
|
-
results.push(result);
|
|
303
|
-
logic.sourceMap = result.sourceMap;
|
|
304
|
-
this.file2NodeMap.set(result.filePath, logic);
|
|
305
|
-
}
|
|
306
|
-
catch (err) {
|
|
307
|
-
console.error('err: ', err);
|
|
308
|
-
}
|
|
309
|
-
});
|
|
310
|
-
module?.backend?.variables?.forEach((backdndVariable) => {
|
|
311
|
-
try {
|
|
312
|
-
const result = backdndVariable.toEmbeddedTSFile();
|
|
313
|
-
results.push(result);
|
|
314
|
-
// sourceMap都存在目录级别内容下,在页面层级下去找
|
|
315
|
-
backdndVariable.sourceMap = result.sourceMap;
|
|
316
|
-
this.file2NodeMap.set(result.filePath, backdndVariable);
|
|
317
|
-
}
|
|
318
|
-
catch (err) {
|
|
319
|
-
console.error(err);
|
|
320
|
-
}
|
|
321
|
-
});
|
|
322
|
-
module.frontends?.forEach((frontend) => {
|
|
323
|
-
try {
|
|
324
|
-
const result = frontend.toEmbeddedTSFile();
|
|
325
|
-
results.push(result);
|
|
326
|
-
// sourceMap都存在目录级别内容下,在页面层级下去找
|
|
327
|
-
frontend.sourceMap = result.sourceMap;
|
|
328
|
-
this.file2NodeMap.set(result.filePath, frontend);
|
|
329
|
-
}
|
|
330
|
-
catch (err) {
|
|
331
|
-
console.log(err);
|
|
332
|
-
}
|
|
333
|
-
frontend.variables?.forEach((frontendVariable) => {
|
|
334
|
-
try {
|
|
335
|
-
const result = frontendVariable.toEmbeddedTSFile();
|
|
336
|
-
results.push(result);
|
|
337
|
-
// sourceMap都存在目录级别内容下,在页面层级下去找
|
|
338
|
-
frontendVariable.sourceMap = result.sourceMap;
|
|
339
|
-
this.file2NodeMap.set(result.filePath, frontendVariable);
|
|
340
|
-
}
|
|
341
|
-
catch (err) {
|
|
342
|
-
console.log(err);
|
|
343
|
-
}
|
|
344
|
-
});
|
|
345
|
-
frontend.bindEvents?.forEach((bindEvent) => {
|
|
346
|
-
if (bindEvent?.logics && bindEvent?.logics?.length > 0) {
|
|
347
|
-
bindEvent.logics.forEach((logic) => {
|
|
348
|
-
try {
|
|
349
|
-
const result = logic.toEmbeddedTSFile();
|
|
350
|
-
results.push(result);
|
|
351
|
-
logic.sourceMap = result.sourceMap;
|
|
352
|
-
this.file2NodeMap.set(result.filePath, logic);
|
|
353
|
-
}
|
|
354
|
-
catch (err) {
|
|
355
|
-
console.error('err: ', err);
|
|
356
|
-
}
|
|
357
|
-
});
|
|
358
|
-
}
|
|
359
|
-
});
|
|
360
|
-
// view的生成
|
|
361
|
-
if (!config_1.config.closeViews) {
|
|
362
|
-
this.view2TSFile(frontend.views, results);
|
|
363
|
-
}
|
|
364
|
-
frontend.componentDependencies?.forEach((item) => this.contentToFile(item, results));
|
|
365
|
-
});
|
|
366
|
-
}
|
|
367
|
-
else {
|
|
368
|
-
module.frontends?.forEach((frontend) => {
|
|
369
|
-
try {
|
|
370
|
-
frontend.logics.forEach((logic) => {
|
|
371
|
-
const result = logic.toEmbeddedTSFile();
|
|
372
|
-
results.push(result);
|
|
373
|
-
// sourceMap都存在目录级别内容下,在页面层级下去找
|
|
374
|
-
logic.sourceMap = result.sourceMap;
|
|
375
|
-
this.file2NodeMap.set(result.filePath, logic);
|
|
376
|
-
});
|
|
377
|
-
}
|
|
378
|
-
catch (err) {
|
|
379
|
-
console.log(err);
|
|
280
|
+
if (!isContinue(node)) {
|
|
281
|
+
return;
|
|
380
282
|
}
|
|
381
|
-
|
|
382
|
-
}
|
|
383
|
-
module.dataSources?.forEach((dataSource) => {
|
|
384
|
-
// 本身dataSource也要生成一个文件用于改名
|
|
385
|
-
try {
|
|
386
|
-
const result = dataSource.toEmbeddedTSFile();
|
|
283
|
+
const result = yield* node.toEmbeddedTSFile();
|
|
387
284
|
results.push(result);
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
this.file2NodeMap.set(result.filePath, dataSource);
|
|
285
|
+
node.sourceMap = result.sourceMap;
|
|
286
|
+
self.file2NodeMap.set(result.filePath, node);
|
|
391
287
|
}
|
|
392
|
-
catch (err) {
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
const result = entity.toEmbeddedTSFile();
|
|
396
|
-
results.push(result);
|
|
397
|
-
// sourceMap都存在目录级别内容下,在页面层级下去找
|
|
398
|
-
entity.sourceMap = result.sourceMap;
|
|
399
|
-
this.file2NodeMap.set(result.filePath, entity);
|
|
400
|
-
}
|
|
401
|
-
catch (err) { }
|
|
402
|
-
});
|
|
403
|
-
});
|
|
404
|
-
module?.interfaces?.forEach((_itf) => {
|
|
405
|
-
try {
|
|
406
|
-
// interface 接口可能为 InterfaceFromExample 类型,因此这里需要做兼容
|
|
407
|
-
let _interface;
|
|
408
|
-
if (_itf instanceof concepts_1.InterfaceFromExample) {
|
|
409
|
-
_interface = _itf.inter;
|
|
410
|
-
}
|
|
411
|
-
else {
|
|
412
|
-
_interface = _itf;
|
|
288
|
+
catch (err) {
|
|
289
|
+
if (process.env.NODE_ENV === 'development') {
|
|
290
|
+
console.warn(node.nodePath ? node.nodePath : name, '代码转换失败', err);
|
|
413
291
|
}
|
|
414
|
-
const result = _interface.toEmbeddedTSFile();
|
|
415
|
-
results.push(result);
|
|
416
|
-
// sourceMap都存在目录级别内容下,在页面层级下去找
|
|
417
|
-
_interface.sourceMap = result.sourceMap;
|
|
418
|
-
this.file2NodeMap.set(result.filePath, _interface);
|
|
419
|
-
}
|
|
420
|
-
catch (err) { }
|
|
421
|
-
});
|
|
422
|
-
module?.enums?.forEach((_enum) => {
|
|
423
|
-
try {
|
|
424
|
-
const result = _enum.toEmbeddedTSFile();
|
|
425
|
-
results.push(result);
|
|
426
|
-
// sourceMap都存在目录级别内容下,在页面层级下去找
|
|
427
|
-
_enum.sourceMap = result.sourceMap;
|
|
428
|
-
this.file2NodeMap.set(result.filePath, _enum);
|
|
429
292
|
}
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
if (!(logic instanceof concepts_1.Logic))
|
|
435
|
-
return;
|
|
436
|
-
const result = logic.toEmbeddedTSFile();
|
|
437
|
-
results.push(result);
|
|
438
|
-
logic.sourceMap = result.sourceMap;
|
|
439
|
-
this.file2NodeMap.set(result.filePath, logic);
|
|
440
|
-
}
|
|
441
|
-
catch (err) { }
|
|
442
|
-
});
|
|
443
|
-
module?.authLogics?.forEach?.((logic) => {
|
|
444
|
-
try {
|
|
445
|
-
if (!(logic instanceof concepts_1.Logic))
|
|
446
|
-
return;
|
|
447
|
-
const result = logic.toEmbeddedTSFile();
|
|
448
|
-
results.push(result);
|
|
449
|
-
logic.sourceMap = result.sourceMap;
|
|
450
|
-
this.file2NodeMap.set(result.filePath, logic);
|
|
451
|
-
}
|
|
452
|
-
catch (err) { }
|
|
453
|
-
});
|
|
454
|
-
module?.authLogicsForCallInterface?.forEach?.((logic) => {
|
|
455
|
-
try {
|
|
456
|
-
if (!(logic instanceof concepts_1.Logic))
|
|
457
|
-
return;
|
|
458
|
-
const result = logic.toEmbeddedTSFile();
|
|
459
|
-
results.push(result);
|
|
460
|
-
logic.sourceMap = result.sourceMap;
|
|
461
|
-
this.file2NodeMap.set(result.filePath, logic);
|
|
462
|
-
}
|
|
463
|
-
catch (err) { }
|
|
464
|
-
});
|
|
465
|
-
module.processes?.forEach((process) => {
|
|
466
|
-
try {
|
|
467
|
-
const result = process.toEmbeddedTSFile();
|
|
468
|
-
results.push(result);
|
|
469
|
-
process.sourceMap = result.sourceMap;
|
|
470
|
-
this.file2NodeMap.set(result.filePath, process);
|
|
293
|
+
};
|
|
294
|
+
const getTsFiles = function* getTsFiles(nodes, name, pre) {
|
|
295
|
+
for (const node of nodes ?? []) {
|
|
296
|
+
yield* getTsFile(node, name, pre);
|
|
471
297
|
}
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
// sourceMap都存在目录级别内容下,在页面层级下去找
|
|
480
|
-
launcher.sourceMap = result.sourceMap;
|
|
481
|
-
this.file2NodeMap.set(result.filePath, launcher);
|
|
482
|
-
});
|
|
483
|
-
module.namespaces?.forEach?.((namespace) => {
|
|
484
|
-
namespace.logics.forEach((logic) => {
|
|
485
|
-
const result = logic.toEmbeddedTSFile();
|
|
486
|
-
results.push(result);
|
|
487
|
-
// sourceMap都存在目录级别内容下,在页面层级下去找
|
|
488
|
-
logic.sourceMap = result.sourceMap;
|
|
489
|
-
this.file2NodeMap.set(result.filePath, logic);
|
|
490
|
-
});
|
|
491
|
-
});
|
|
492
|
-
module?.authLogicsForCallInterface?.forEach?.((logic) => {
|
|
493
|
-
try {
|
|
494
|
-
if (!(logic instanceof concepts_1.Logic))
|
|
495
|
-
return;
|
|
496
|
-
const result = logic.toEmbeddedTSFile();
|
|
497
|
-
results.push(result);
|
|
498
|
-
logic.sourceMap = result.sourceMap;
|
|
499
|
-
this.file2NodeMap.set(result.filePath, logic);
|
|
500
|
-
}
|
|
501
|
-
catch (err) { }
|
|
502
|
-
});
|
|
298
|
+
};
|
|
299
|
+
const concat = (arr, key) => {
|
|
300
|
+
return arr.reduce((ans, item) => ans.concat(item[key]), []);
|
|
301
|
+
};
|
|
302
|
+
const view2TSFile = function* view2TSFile(views) {
|
|
303
|
+
if (!views || views.length === 0) {
|
|
304
|
+
return;
|
|
503
305
|
}
|
|
504
|
-
|
|
505
|
-
|
|
306
|
+
for (const view of views) {
|
|
307
|
+
yield* getTsFile(view, 'view');
|
|
308
|
+
if (view.children) {
|
|
309
|
+
yield* view2TSFile(view.children);
|
|
310
|
+
}
|
|
506
311
|
}
|
|
312
|
+
};
|
|
313
|
+
// 禁用的依赖库不生成代码 区分 undefined 和 false
|
|
314
|
+
if (module instanceof concepts_1.Module && module.type === 'extension' && module.enable === false) {
|
|
315
|
+
return [];
|
|
507
316
|
}
|
|
317
|
+
const { structures = [], metadataTypes = [], frontends = [], interfaces = [], enums = [], logics = [], authLogics = [], authLogicsForCallInterface = [], processes = [], dataSources = [], triggerLaunchers = [], connections = [], roles = [], overriddenLogics = [], backend, configuration, } = module;
|
|
318
|
+
const { namespaces = [], } = module;
|
|
319
|
+
yield* getTsFiles(structures, 'structure');
|
|
320
|
+
yield* getTsFiles(metadataTypes, 'metadataType');
|
|
508
321
|
if (module instanceof concepts_1.App) {
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
322
|
+
yield* getTsFiles(overriddenLogics, 'overriddenLogic', concepts_1.OverriddenLogic);
|
|
323
|
+
yield* getTsFiles(backend?.variables ?? [], 'backend_variable');
|
|
324
|
+
for (const frontend of frontends) {
|
|
325
|
+
yield* getTsFile(frontend, 'frontend');
|
|
326
|
+
yield* getTsFiles(frontend.variables, 'frontend_variable');
|
|
327
|
+
yield* getTsFiles(concat(frontend.bindEvents, 'logics'), 'frontend_bindEvent_logic');
|
|
328
|
+
if (!config_1.config.closeViews) {
|
|
329
|
+
yield* view2TSFile(frontend.views);
|
|
516
330
|
}
|
|
517
|
-
|
|
518
|
-
|
|
331
|
+
for (const dep of frontend.componentDependencies) {
|
|
332
|
+
results.push(...(yield* self.contentToFile(dep)));
|
|
333
|
+
}
|
|
334
|
+
}
|
|
335
|
+
}
|
|
336
|
+
else {
|
|
337
|
+
yield* getTsFiles(concat(frontends, 'logics'), 'frontend_logic');
|
|
338
|
+
}
|
|
339
|
+
yield* getTsFiles(dataSources, 'dataSource');
|
|
340
|
+
yield* getTsFiles(concat(dataSources, 'entities'), 'dataSource_entity');
|
|
341
|
+
yield* getTsFiles(interfaces, 'interface');
|
|
342
|
+
yield* getTsFiles(enums, 'enum');
|
|
343
|
+
yield* getTsFiles(logics, 'logic');
|
|
344
|
+
yield* getTsFiles(authLogics, 'authLogic', concepts_1.Logic);
|
|
345
|
+
yield* getTsFiles(authLogicsForCallInterface, 'authLogicForCallInterface', concepts_1.Logic);
|
|
346
|
+
yield* getTsFiles(processes, 'process');
|
|
347
|
+
if (module instanceof concepts_1.Connector) {
|
|
348
|
+
yield* getTsFiles(triggerLaunchers, 'triggerLauncher');
|
|
349
|
+
yield* getTsFiles(authLogicsForCallInterface, 'authLogicForCallInterface');
|
|
350
|
+
yield* getTsFiles(concat(namespaces, 'logics'), 'namespaces_logic');
|
|
519
351
|
}
|
|
520
352
|
if (module instanceof concepts_1.App) {
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
results.push(result);
|
|
525
|
-
// sourceMap都存在目录级别内容下,在页面层级下去找
|
|
526
|
-
connection.sourceMap = result.sourceMap;
|
|
527
|
-
this.file2NodeMap.set(result.filePath, connection);
|
|
528
|
-
}
|
|
529
|
-
catch (err) { }
|
|
530
|
-
});
|
|
531
|
-
module.triggerLaunchers?.forEach?.((triggerLauncher) => {
|
|
532
|
-
try {
|
|
533
|
-
const result = triggerLauncher.toEmbeddedTSFile();
|
|
534
|
-
results.push(result);
|
|
535
|
-
// sourceMap都存在目录级别内容下,在页面层级下去找
|
|
536
|
-
triggerLauncher.sourceMap = result.sourceMap;
|
|
537
|
-
this.file2NodeMap.set(result.filePath, triggerLauncher);
|
|
538
|
-
}
|
|
539
|
-
catch (err) { }
|
|
540
|
-
});
|
|
353
|
+
yield* getTsFiles(roles, 'role');
|
|
354
|
+
yield* getTsFiles(connections, 'connection');
|
|
355
|
+
yield* getTsFiles(triggerLaunchers, 'triggerLauncher');
|
|
541
356
|
}
|
|
542
|
-
|
|
543
|
-
if (
|
|
544
|
-
|
|
545
|
-
try {
|
|
546
|
-
const result = _property.toEmbeddedTSFile();
|
|
547
|
-
results.push(result);
|
|
548
|
-
// sourceMap都存在目录级别内容下,在页面层级下去找
|
|
549
|
-
_property.sourceMap = result.sourceMap;
|
|
550
|
-
this.file2NodeMap.set(result.filePath, _property);
|
|
551
|
-
}
|
|
552
|
-
catch (err) { }
|
|
553
|
-
});
|
|
357
|
+
for (const group of configuration?.groups ?? []) {
|
|
358
|
+
if (group.name === 'custom') {
|
|
359
|
+
yield* getTsFiles(group?.properties ?? [], 'configuration_group_property');
|
|
554
360
|
}
|
|
555
|
-
});
|
|
556
|
-
}
|
|
557
|
-
view2TSFile(viewsChildren, results) {
|
|
558
|
-
// 如果有子页面
|
|
559
|
-
if (viewsChildren && viewsChildren.length) {
|
|
560
|
-
viewsChildren.forEach((view) => {
|
|
561
|
-
try {
|
|
562
|
-
const result = view.toEmbeddedTSFile();
|
|
563
|
-
results.push(result);
|
|
564
|
-
view.sourceMap = result.sourceMap;
|
|
565
|
-
this.file2NodeMap.set(result.filePath, view);
|
|
566
|
-
if (view.children.length) {
|
|
567
|
-
this.view2TSFile(view.children, results);
|
|
568
|
-
}
|
|
569
|
-
}
|
|
570
|
-
catch (err) { }
|
|
571
|
-
});
|
|
572
361
|
}
|
|
362
|
+
return results;
|
|
573
363
|
}
|
|
574
364
|
async openApp(app) {
|
|
575
365
|
console.time('生成 TS 文件');
|
|
576
|
-
const
|
|
577
|
-
|
|
578
|
-
// app的创建内容
|
|
579
|
-
this.contentToFile(app, results);
|
|
580
|
-
// 其他模块的创建内容
|
|
581
|
-
app.integration?.connectors?.forEach((item) => this.contentToFile(item, results));
|
|
582
|
-
app.dependencies.forEach((item) => this.contentToFile(item, results));
|
|
583
|
-
app.interfaceDependencies.forEach((item) => this.contentToFile(item, results));
|
|
584
|
-
}
|
|
585
|
-
catch (err) {
|
|
586
|
-
console.log(err);
|
|
587
|
-
}
|
|
366
|
+
const self = this;
|
|
367
|
+
const results = await utils.timeSlicingWithGenerator(getAllTsFiles());
|
|
588
368
|
const files = results.map((result) => ({
|
|
589
369
|
file: result.filePath,
|
|
590
370
|
fileContent: result.code,
|
|
@@ -600,6 +380,18 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
600
380
|
callback();
|
|
601
381
|
});
|
|
602
382
|
console.timeEnd('生成 TS 文件');
|
|
383
|
+
function* getAllTsFiles() {
|
|
384
|
+
const files = yield* self.contentToFile(app);
|
|
385
|
+
const otherModules = [
|
|
386
|
+
...app.integration?.connectors ?? [],
|
|
387
|
+
...app.dependencies ?? [],
|
|
388
|
+
...app.interfaceDependencies ?? [],
|
|
389
|
+
];
|
|
390
|
+
for (const item of otherModules) {
|
|
391
|
+
files.push(...yield* self.contentToFile(item));
|
|
392
|
+
}
|
|
393
|
+
return files;
|
|
394
|
+
}
|
|
603
395
|
}
|
|
604
396
|
async refreshApp(app) {
|
|
605
397
|
// 清除所有问题
|
|
@@ -626,13 +418,19 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
626
418
|
cacheFile(options) {
|
|
627
419
|
__naslStdlibFileCacheMap.set(options.file, options);
|
|
628
420
|
}
|
|
629
|
-
/**
|
|
421
|
+
/**
|
|
630
422
|
* 只新增文件
|
|
631
423
|
* @param {*} files
|
|
632
424
|
*/
|
|
633
425
|
writeFiles(files) {
|
|
634
426
|
files.forEach(({ file, fileContent }) => this.tsFiles.set(file, fileContent));
|
|
635
|
-
|
|
427
|
+
const noRepeatFiles = Array.from(this.tsFiles.entries()).map(([key, value]) => ({
|
|
428
|
+
file: key,
|
|
429
|
+
fileContent: value,
|
|
430
|
+
}));
|
|
431
|
+
// const newFiles = require('/Users/sufangzhou/dev/neteast/lcap-ide/packages/nasl/tmp/files-original.json');
|
|
432
|
+
// debugger;
|
|
433
|
+
return this.messager.requestCommand('writeFiles', noRepeatFiles);
|
|
636
434
|
}
|
|
637
435
|
/**
|
|
638
436
|
* 新增、修改
|
|
@@ -955,48 +753,48 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
955
753
|
return;
|
|
956
754
|
node.tsErrorDetail = tsErrorDetail;
|
|
957
755
|
}
|
|
958
|
-
|
|
959
|
-
* 处理诊断结果
|
|
960
|
-
* @param records 结果
|
|
961
|
-
* @returns 过滤或者转换后的诊断结果
|
|
962
|
-
*/
|
|
963
|
-
async _resolveDiagnosticRecords(records) {
|
|
756
|
+
*_resolveDiagnosticRecordsWithGenerator(records) {
|
|
964
757
|
// 热更新类型标注
|
|
965
758
|
if (records.length) {
|
|
966
|
-
|
|
759
|
+
yield* this._incrementalAnnotationJSONWithGenerator(records);
|
|
967
760
|
}
|
|
968
|
-
|
|
969
|
-
|
|
970
|
-
|
|
761
|
+
const self = this;
|
|
762
|
+
console.time('处理诊断数据');
|
|
763
|
+
yield* utils.wrapForEachToGenerator(records, function* resolveRecord(record) {
|
|
764
|
+
if (!record || !record.node) {
|
|
971
765
|
return;
|
|
766
|
+
}
|
|
767
|
+
const { node } = record;
|
|
972
768
|
// 先获取原来的节点先清除一下之前有异常的节点,下面重新赋值
|
|
973
|
-
const oldRecord =
|
|
974
|
-
|
|
975
|
-
|
|
976
|
-
|
|
977
|
-
|
|
978
|
-
|
|
979
|
-
|
|
769
|
+
const oldRecord = self.diagnosticManager.getRecord?.(record.id);
|
|
770
|
+
// 处理旧数据
|
|
771
|
+
if (oldRecord) {
|
|
772
|
+
yield* utils.wrapForEachToGenerator(oldRecord.semanticDiagnostics, (item) => {
|
|
773
|
+
if (item.node) {
|
|
774
|
+
delete item.node.tsErrorDetail;
|
|
775
|
+
// 如果logic中有报错就把标识置为true
|
|
776
|
+
if (item.node?.logic?.haveError) {
|
|
777
|
+
item.node.logic.haveError = false;
|
|
778
|
+
}
|
|
980
779
|
}
|
|
981
|
-
}
|
|
982
|
-
|
|
983
|
-
|
|
984
|
-
|
|
985
|
-
|
|
986
|
-
|
|
987
|
-
|
|
988
|
-
item.node.isSmpty = false;
|
|
780
|
+
});
|
|
781
|
+
yield* utils.wrapForEachToGenerator(oldRecord.suggestionDiagnostics, (item) => {
|
|
782
|
+
if (item.node) {
|
|
783
|
+
delete item.node.tsErrorDetail;
|
|
784
|
+
if (item.node && item.node instanceof concepts_1.Logic) {
|
|
785
|
+
item.node.isSmpty = false;
|
|
786
|
+
}
|
|
989
787
|
}
|
|
990
|
-
}
|
|
991
|
-
}
|
|
788
|
+
});
|
|
789
|
+
}
|
|
992
790
|
// 语义诊断
|
|
993
791
|
if (isChangeInterface) {
|
|
994
|
-
|
|
792
|
+
yield* self.existStructureFix(record.semanticDiagnostics, record.node, self);
|
|
995
793
|
}
|
|
996
794
|
// 单独处理 oql 语义错误提示
|
|
997
795
|
if (record.node instanceof concepts_1.Logic) {
|
|
998
|
-
record?.syntaxDiagnostics
|
|
999
|
-
const minRange =
|
|
796
|
+
yield* utils.wrapForEachToGenerator(record?.syntaxDiagnostics, function* test(item) {
|
|
797
|
+
const minRange = yield* self._findMinRangeWithGenerator(item, record.node);
|
|
1000
798
|
if (minRange?.node instanceof concepts_1.OqlQueryComponent) {
|
|
1001
799
|
if (item.text === 'Invalid character.') {
|
|
1002
800
|
record.semanticDiagnostics.push(item);
|
|
@@ -1005,14 +803,15 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
1005
803
|
});
|
|
1006
804
|
}
|
|
1007
805
|
// 记录结构体数据
|
|
1008
|
-
record.semanticDiagnostics
|
|
1009
|
-
|
|
1010
|
-
|
|
1011
|
-
|
|
1012
|
-
|
|
806
|
+
yield* utils.wrapForEachToGenerator(record.semanticDiagnostics, (diag) => {
|
|
807
|
+
(0, translator_2.checkAStructure_)(diag.text);
|
|
808
|
+
});
|
|
809
|
+
record.semanticDiagnostics = (yield* utils.wrapMapToGenerator(record.semanticDiagnostics, function* (diag) {
|
|
810
|
+
return yield* self._resolveDiagnosticWithGenerator(diag, record.node, record);
|
|
811
|
+
})).filter((diag) => !!diag);
|
|
812
|
+
record.semanticDiagnostics.push(...(yield* self._attachDiagnosticsWithGenerator(node)));
|
|
1013
813
|
// 报错降级逻辑
|
|
1014
|
-
record.semanticDiagnostics = record.semanticDiagnostics
|
|
1015
|
-
.map((diagnostic) => {
|
|
814
|
+
record.semanticDiagnostics = (yield* utils.wrapMapToGenerator(record.semanticDiagnostics, (diagnostic) => {
|
|
1016
815
|
// 错误降级如果属于草稿态的就降级
|
|
1017
816
|
if (diagnostic?.node) {
|
|
1018
817
|
let currentNode = diagnostic.node;
|
|
@@ -1054,11 +853,10 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
1054
853
|
}
|
|
1055
854
|
}
|
|
1056
855
|
return diagnostic;
|
|
1057
|
-
})
|
|
856
|
+
}))
|
|
1058
857
|
.filter((diag) => !!diag);
|
|
1059
858
|
// 处理后的警告异常提示信息
|
|
1060
|
-
record.suggestionDiagnostics = record.suggestionDiagnostics
|
|
1061
|
-
.map((diag) => {
|
|
859
|
+
record.suggestionDiagnostics = (yield* utils.wrapMapToGenerator(record.suggestionDiagnostics, function* resolveSuggestionDiagnostic(diag) {
|
|
1062
860
|
// 上面错误降级下来的
|
|
1063
861
|
if (diag?.node) {
|
|
1064
862
|
return diag;
|
|
@@ -1071,7 +869,7 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
1071
869
|
`'__onlineConfigValueEmpty' is declared but its value is never read.`,
|
|
1072
870
|
`'__UpdateNoProperty__' is declared but its value is never read.`,
|
|
1073
871
|
].includes(diag.text)) {
|
|
1074
|
-
return
|
|
872
|
+
return yield* self._resolveDiagnosticWithGenerator(diag, record.node, record);
|
|
1075
873
|
}
|
|
1076
874
|
if (diag.text.includes(` is declared but its value is never read.`)) {
|
|
1077
875
|
// 局部变量和输入变量未使用的警告
|
|
@@ -1081,10 +879,10 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
1081
879
|
/**
|
|
1082
880
|
* javalogic不用提示
|
|
1083
881
|
*/
|
|
1084
|
-
if (record.node.concept === 'Logic' &&
|
|
882
|
+
if (record.node.concept === 'Logic' && self._isJavalogic(record.node)) {
|
|
1085
883
|
return null;
|
|
1086
884
|
}
|
|
1087
|
-
const minRange =
|
|
885
|
+
const minRange = yield* self._findMinRangeWithGenerator(diag, record.node);
|
|
1088
886
|
if (minRange) {
|
|
1089
887
|
/**
|
|
1090
888
|
* 如果节点是入参类型
|
|
@@ -1113,12 +911,21 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
1113
911
|
}
|
|
1114
912
|
}
|
|
1115
913
|
return null;
|
|
1116
|
-
})
|
|
914
|
+
}))
|
|
1117
915
|
.filter((diag) => !!diag);
|
|
1118
|
-
record.suggestionDiagnostics.push(...
|
|
1119
|
-
})
|
|
916
|
+
record.suggestionDiagnostics.push(...yield* self._attachSuggestionDiagnosticsWithGenerator(node));
|
|
917
|
+
});
|
|
918
|
+
console.timeEnd('处理诊断数据');
|
|
1120
919
|
return records;
|
|
1121
920
|
}
|
|
921
|
+
/**
|
|
922
|
+
* 处理诊断结果
|
|
923
|
+
* @param records 结果
|
|
924
|
+
* @returns 过滤或者转换后的诊断结果
|
|
925
|
+
*/
|
|
926
|
+
_resolveDiagnosticRecords(records) {
|
|
927
|
+
return utils.timeSlicingWithGenerator(this._resolveDiagnosticRecordsWithGenerator(records));
|
|
928
|
+
}
|
|
1122
929
|
/**
|
|
1123
930
|
* 判断是否是Javalogic
|
|
1124
931
|
*/
|
|
@@ -1134,7 +941,7 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
1134
941
|
* @param fileNode 文件级别的节点
|
|
1135
942
|
* @returns 诊断结果
|
|
1136
943
|
*/
|
|
1137
|
-
|
|
944
|
+
*_attachSuggestionDiagnosticsWithGenerator(fileNode) {
|
|
1138
945
|
const diagnostics = [];
|
|
1139
946
|
if (fileNode instanceof concepts_1.Logic || fileNode instanceof concepts_1.View) {
|
|
1140
947
|
fileNode?.sourceMap.forEach((value, node) => {
|
|
@@ -1496,29 +1303,51 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
1496
1303
|
return flag;
|
|
1497
1304
|
}
|
|
1498
1305
|
/** 是否被 触发器依赖, 如果存在,返回第一个触发器对应的名称 */
|
|
1499
|
-
|
|
1500
|
-
|
|
1501
|
-
|
|
1502
|
-
|
|
1503
|
-
|
|
1504
|
-
|
|
1505
|
-
|
|
1506
|
-
|
|
1507
|
-
|
|
1508
|
-
|
|
1509
|
-
|
|
1510
|
-
|
|
1511
|
-
|
|
1306
|
+
isRefedByTriggerAndReturnFirstRef(fileNode) {
|
|
1307
|
+
return this._isHaveRef(fileNode).then((refs) => {
|
|
1308
|
+
const basePath = concepts_1.TriggerLauncher.getEmbeddedFileBasePath(fileNode.rootNode);
|
|
1309
|
+
let flag = false;
|
|
1310
|
+
let fRefName = '';
|
|
1311
|
+
try {
|
|
1312
|
+
for (const ref of refs) {
|
|
1313
|
+
const { file } = ref;
|
|
1314
|
+
if (file.startsWith(basePath)) {
|
|
1315
|
+
flag = true;
|
|
1316
|
+
// file: /embedded/tttta/triggerLaunchers/订阅配置_asd.ts
|
|
1317
|
+
fRefName = file.split(basePath)[1].split('.')[0];
|
|
1318
|
+
break;
|
|
1319
|
+
}
|
|
1512
1320
|
}
|
|
1513
1321
|
}
|
|
1514
|
-
|
|
1515
|
-
|
|
1516
|
-
|
|
1517
|
-
|
|
1518
|
-
|
|
1519
|
-
|
|
1520
|
-
|
|
1521
|
-
};
|
|
1322
|
+
catch (error) {
|
|
1323
|
+
console.error(error, refs);
|
|
1324
|
+
}
|
|
1325
|
+
return {
|
|
1326
|
+
isRefedByTrigger: flag,
|
|
1327
|
+
fRefName,
|
|
1328
|
+
};
|
|
1329
|
+
});
|
|
1330
|
+
// const refs = await this._isHaveRef(fileNode);
|
|
1331
|
+
// const basePath = TriggerLauncher.getEmbeddedFileBasePath(fileNode.rootNode as App);
|
|
1332
|
+
// let flag = false;
|
|
1333
|
+
// let fRefName = '';
|
|
1334
|
+
// try {
|
|
1335
|
+
// for (const ref of refs) {
|
|
1336
|
+
// const { file } = ref;
|
|
1337
|
+
// if (file.startsWith(basePath)) {
|
|
1338
|
+
// flag = true;
|
|
1339
|
+
// // file: /embedded/tttta/triggerLaunchers/订阅配置_asd.ts
|
|
1340
|
+
// fRefName = file.split(basePath)[1].split('.')[0];
|
|
1341
|
+
// break;
|
|
1342
|
+
// }
|
|
1343
|
+
// }
|
|
1344
|
+
// } catch (error) {
|
|
1345
|
+
// console.error(error, refs);
|
|
1346
|
+
// }
|
|
1347
|
+
// return {
|
|
1348
|
+
// isRefedByTrigger: flag,
|
|
1349
|
+
// fRefName,
|
|
1350
|
+
// };
|
|
1522
1351
|
}
|
|
1523
1352
|
/**
|
|
1524
1353
|
* 是否符合 触发器规则
|
|
@@ -1547,15 +1376,16 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
1547
1376
|
* @param fileNode 文件级别的节点
|
|
1548
1377
|
* @returns 诊断结果
|
|
1549
1378
|
*/
|
|
1550
|
-
|
|
1379
|
+
*_attachDiagnosticsWithGenerator(fileNode) {
|
|
1551
1380
|
// 每次诊断前先清空这个Set
|
|
1552
1381
|
this.logicSetWithComponentLogic = new Set();
|
|
1382
|
+
const self = this;
|
|
1553
1383
|
const diagnostics = [];
|
|
1554
1384
|
if (fileNode instanceof concepts_1.View) {
|
|
1555
|
-
fileNode
|
|
1385
|
+
yield* utils.wrapIteratorToGenerator(fileNode.sourceMap.entries(), function* attachView([node, value]) {
|
|
1556
1386
|
if (node instanceof concepts_1.ViewElement && node.view === fileNode) {
|
|
1557
1387
|
if (node.tag) {
|
|
1558
|
-
node.bindAttrs
|
|
1388
|
+
yield* utils.wrapForEachToGenerator(node.bindAttrs, (bindAttr) => {
|
|
1559
1389
|
if ((bindAttr.model || bindAttr.sync) && bindAttr.expression) {
|
|
1560
1390
|
const bindExpression = bindAttr.expression;
|
|
1561
1391
|
let diagnostic;
|
|
@@ -1601,7 +1431,7 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
1601
1431
|
if (!node.typeAnnotation && !node.__TypeAnnotation) {
|
|
1602
1432
|
const nodeTypeName = node.concept === 'Return' ? '输出参数' : '局部变量';
|
|
1603
1433
|
let msg;
|
|
1604
|
-
fileNode.
|
|
1434
|
+
yield* fileNode.traverseChildrenGenerator((nodeIn) => {
|
|
1605
1435
|
if (nodeIn && (nodeIn instanceof concepts_1.BatchAssignment || (nodeIn instanceof concepts_1.Assignment && nodeIn.left?.name))) {
|
|
1606
1436
|
// 子页面内部逻辑过滤
|
|
1607
1437
|
if (nodeIn.view !== fileNode)
|
|
@@ -1662,11 +1492,11 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
1662
1492
|
node.tsErrorDetail = diagnostic;
|
|
1663
1493
|
diagnostics.push(diagnostic);
|
|
1664
1494
|
}
|
|
1665
|
-
const fileSourceCode =
|
|
1495
|
+
const fileSourceCode = self.getNodeCode(fileNode, value);
|
|
1666
1496
|
if (fileSourceCode.includes('|') && fileSourceCode.includes('.metadataTypes.')) {
|
|
1667
1497
|
const typeAnnotation = node.typeAnnotation.toJSON();
|
|
1668
|
-
|
|
1669
|
-
const isDuplicate =
|
|
1498
|
+
self._treeMetadataType2CoreType(typeAnnotation, node.rootNode);
|
|
1499
|
+
const isDuplicate = self._isDuplicateCoreType(typeAnnotation);
|
|
1670
1500
|
if (isDuplicate) {
|
|
1671
1501
|
const diagnostic = {
|
|
1672
1502
|
node: node,
|
|
@@ -1679,7 +1509,7 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
1679
1509
|
}
|
|
1680
1510
|
else if (node instanceof concepts_1.BindAttribute || node instanceof concepts_1.BindDirective || node instanceof concepts_1.BindStyle) {
|
|
1681
1511
|
if (Array.isArray(node.bindExpressions)) {
|
|
1682
|
-
const exp = node.bindExpressions.find((bindExpression) =>
|
|
1512
|
+
const exp = node.bindExpressions.find((bindExpression) => self.hasComponentLogics(bindExpression));
|
|
1683
1513
|
if (exp) {
|
|
1684
1514
|
// const element: any = node.getAncestor('ViewElement');
|
|
1685
1515
|
// const api = config.allNodesAPI[element?.tag];
|
|
@@ -1703,7 +1533,7 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
1703
1533
|
}
|
|
1704
1534
|
}
|
|
1705
1535
|
else if (node instanceof concepts_1.CallInterface) {
|
|
1706
|
-
const isAuthInterface =
|
|
1536
|
+
const isAuthInterface = self.hasAuth(node);
|
|
1707
1537
|
const interfaceName = node.calleewholeKey.slice(node.calleewholeKey.lastIndexOf('.') + 1);
|
|
1708
1538
|
if (isAuthInterface) {
|
|
1709
1539
|
const errorMsg = `${interfaceName} 接口有鉴权方式,不支持在前端调用`;
|
|
@@ -1731,7 +1561,7 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
1731
1561
|
}
|
|
1732
1562
|
}
|
|
1733
1563
|
else {
|
|
1734
|
-
|
|
1564
|
+
self.checkNodeError(node, diagnostics);
|
|
1735
1565
|
}
|
|
1736
1566
|
});
|
|
1737
1567
|
}
|
|
@@ -1740,7 +1570,7 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
1740
1570
|
if (dataSourceGroup) {
|
|
1741
1571
|
const property = dataSourceGroup.getProperty(fileNode.name);
|
|
1742
1572
|
if (property && property.values) {
|
|
1743
|
-
property.values
|
|
1573
|
+
yield* utils.wrapForEachToGenerator(property.values, (propertyValue) => {
|
|
1744
1574
|
if (!propertyValue.value && fileNode.name !== 'defaultDS') {
|
|
1745
1575
|
const diagnostic = {
|
|
1746
1576
|
node: fileNode,
|
|
@@ -2044,8 +1874,8 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
2044
1874
|
});
|
|
2045
1875
|
}
|
|
2046
1876
|
}
|
|
2047
|
-
if (fileNode instanceof concepts_1.Logic || fileNode instanceof concepts_1.OverriddenLogic) {
|
|
2048
|
-
const { isRefedByTrigger, fRefName } =
|
|
1877
|
+
else if (fileNode instanceof concepts_1.Logic || fileNode instanceof concepts_1.OverriddenLogic) {
|
|
1878
|
+
const { isRefedByTrigger, fRefName } = yield this.isRefedByTriggerAndReturnFirstRef(fileNode);
|
|
2049
1879
|
if (isRefedByTrigger && !this.isTriggerRule(fileNode)) {
|
|
2050
1880
|
const diagnostic = {
|
|
2051
1881
|
node: fileNode,
|
|
@@ -2054,18 +1884,7 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
2054
1884
|
};
|
|
2055
1885
|
diagnostics.push(diagnostic);
|
|
2056
1886
|
}
|
|
2057
|
-
fileNode
|
|
2058
|
-
// OQL支持返回复合类型数据了
|
|
2059
|
-
// SqlQueryComponent内部返回值类型,如果是嵌套的就需要报错
|
|
2060
|
-
// if ((node instanceof OqlQueryComponent || node instanceof SqlQueryComponent) && (node as SqlQueryComponent).getTypeBanError()) {
|
|
2061
|
-
// const diagnostic = {
|
|
2062
|
-
// node,
|
|
2063
|
-
// severity: 'error',
|
|
2064
|
-
// message: 'SQL查询:返回类型内部,不支持复杂类型。',
|
|
2065
|
-
// };
|
|
2066
|
-
// node.tsErrorDetail = diagnostic;
|
|
2067
|
-
// diagnostics.push(diagnostic);
|
|
2068
|
-
// }
|
|
1887
|
+
yield* utils.wrapIteratorToGenerator(fileNode.sourceMap.entries(), ([node, value]) => {
|
|
2069
1888
|
if (node instanceof concepts_1.OqlQueryComponent) {
|
|
2070
1889
|
// 自动推导情况
|
|
2071
1890
|
const typeAnnotation = (0, formatTsUtils_1.type2TypeAnnotation)(node.__nodeType);
|
|
@@ -2084,7 +1903,7 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
2084
1903
|
}
|
|
2085
1904
|
}
|
|
2086
1905
|
}
|
|
2087
|
-
if (node instanceof concepts_1.Return || node instanceof concepts_1.Variable) {
|
|
1906
|
+
else if (node instanceof concepts_1.Return || node instanceof concepts_1.Variable) {
|
|
2088
1907
|
const nodeTypeName = node.concept === 'Return' ? '输出参数' : '局部变量';
|
|
2089
1908
|
if (!node.typeAnnotation && !node.__TypeAnnotation) {
|
|
2090
1909
|
let used = false;
|
|
@@ -2138,7 +1957,7 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
2138
1957
|
}
|
|
2139
1958
|
}
|
|
2140
1959
|
}
|
|
2141
|
-
if (node instanceof concepts_1.Param) {
|
|
1960
|
+
else if (node instanceof concepts_1.Param) {
|
|
2142
1961
|
const fileSourceCode = this.getNodeCode(fileNode, value);
|
|
2143
1962
|
if (fileSourceCode.includes('|') && fileSourceCode.includes('.metadataTypes.')) {
|
|
2144
1963
|
const typeAnnotation = node.typeAnnotation.toJSON();
|
|
@@ -2158,7 +1977,7 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
2158
1977
|
});
|
|
2159
1978
|
}
|
|
2160
1979
|
else if (fileNode instanceof concepts_1.Process) {
|
|
2161
|
-
fileNode
|
|
1980
|
+
yield* utils.wrapIteratorToGenerator(fileNode.sourceMap.entries(), ([node, value]) => {
|
|
2162
1981
|
this.checkNodeError(node, diagnostics);
|
|
2163
1982
|
});
|
|
2164
1983
|
}
|
|
@@ -2539,9 +2358,9 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
2539
2358
|
return tInterface instanceof concepts_1.AuthInterface;
|
|
2540
2359
|
}
|
|
2541
2360
|
/* 接口导入查找 */
|
|
2542
|
-
existStructureFix(semanticDiagnostics, node, that) {
|
|
2361
|
+
*existStructureFix(semanticDiagnostics, node, that) {
|
|
2543
2362
|
let module;
|
|
2544
|
-
|
|
2363
|
+
yield* utils.wrapForEachToGenerator(semanticDiagnostics, (diag) => {
|
|
2545
2364
|
const minRange = this._findMinRange(diag, node);
|
|
2546
2365
|
if (diag.text?.includes('has no exported member named')) {
|
|
2547
2366
|
if (minRange.node instanceof concepts_1.Logic) {
|
|
@@ -2571,7 +2390,6 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
2571
2390
|
}
|
|
2572
2391
|
return null;
|
|
2573
2392
|
}
|
|
2574
|
-
return diag;
|
|
2575
2393
|
});
|
|
2576
2394
|
if (actionArr.length) {
|
|
2577
2395
|
if (timer)
|
|
@@ -2599,45 +2417,43 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
2599
2417
|
* @param fileNode 页面节点
|
|
2600
2418
|
* @returns 处理后的结果
|
|
2601
2419
|
*/
|
|
2602
|
-
|
|
2420
|
+
*_resolveDiagnosticWithGenerator(diagnostic, fileNode, record) {
|
|
2603
2421
|
// 拓展模块中的翻译先过滤掉,因为有错用户也不能修改
|
|
2604
2422
|
if ((fileNode.module || fileNode.connector) && !(fileNode instanceof concepts_1.ConfigProperty)) {
|
|
2605
2423
|
return;
|
|
2606
2424
|
}
|
|
2607
|
-
// 过滤掉java依赖库的报错
|
|
2608
|
-
// if ('compilerInfoMap' in fileNode && (fileNode as any).compilerInfoMap?.java) {
|
|
2609
|
-
// return;
|
|
2610
|
-
// }
|
|
2611
2425
|
if (fileNode.concept === 'OverriddenLogic' && diagnostic.text === `'__LogicEmpty' is declared but its value is never read.`) {
|
|
2612
2426
|
return;
|
|
2613
2427
|
}
|
|
2614
|
-
const minRange = this.
|
|
2428
|
+
const minRange = yield* this._findMinRangeWithGenerator(diagnostic, fileNode);
|
|
2615
2429
|
const tsErrorDetail = {
|
|
2616
2430
|
severity: diagnostic.category === 'error' ? 'error' : 'warning',
|
|
2617
2431
|
message: (0, translator_2.translateDiagnosticMessage)(diagnostic.text),
|
|
2618
2432
|
// 保留原来的内容方便查询一些问题
|
|
2619
2433
|
originalDiagnostic: diagnostic,
|
|
2620
2434
|
};
|
|
2435
|
+
yield;
|
|
2621
2436
|
let result;
|
|
2622
2437
|
if (minRange) {
|
|
2623
2438
|
// 节点的error要置为true
|
|
2624
2439
|
result = (0, translator_2.naslNodeTranslateMessage)(minRange, tsErrorDetail);
|
|
2440
|
+
yield;
|
|
2625
2441
|
}
|
|
2626
2442
|
else {
|
|
2627
2443
|
// 没找到节点, 先把问题暴露出来
|
|
2628
2444
|
result = tsErrorDetail;
|
|
2629
2445
|
}
|
|
2630
|
-
if (result)
|
|
2446
|
+
if (result) {
|
|
2631
2447
|
result.id = record.filePath + (result ? JSON.stringify({ start: result.originalDiagnostic.start, end: result.originalDiagnostic.end }) : '');
|
|
2448
|
+
}
|
|
2632
2449
|
return result;
|
|
2633
2450
|
}
|
|
2634
2451
|
/**
|
|
2635
|
-
*
|
|
2636
|
-
*
|
|
2637
|
-
* @
|
|
2638
|
-
* @returns 找到的节点
|
|
2452
|
+
* 查找节点
|
|
2453
|
+
*
|
|
2454
|
+
* @description 生成器原型函数
|
|
2639
2455
|
*/
|
|
2640
|
-
|
|
2456
|
+
*_findMinRangeWithGenerator(diagnostic, fileNode) {
|
|
2641
2457
|
let minRange;
|
|
2642
2458
|
const { sourceMap } = fileNode;
|
|
2643
2459
|
// 是否找到了行内准确的,是的话,就不走多行的
|
|
@@ -2699,15 +2515,26 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
2699
2515
|
}
|
|
2700
2516
|
}
|
|
2701
2517
|
}
|
|
2518
|
+
yield;
|
|
2702
2519
|
}
|
|
2703
2520
|
if (!minRange) {
|
|
2704
2521
|
if (fileNode instanceof concepts_1.View) {
|
|
2705
2522
|
return { node: fileNode, item: sourceMap.get(fileNode) };
|
|
2706
2523
|
}
|
|
2707
|
-
|
|
2524
|
+
if (process.env.NODE_ENV === 'development') {
|
|
2525
|
+
console.log(minRange, '需要特殊看下,为什么没找到内容-------------');
|
|
2526
|
+
}
|
|
2708
2527
|
}
|
|
2709
2528
|
return minRange;
|
|
2710
2529
|
}
|
|
2530
|
+
/**
|
|
2531
|
+
* 查找节点
|
|
2532
|
+
*
|
|
2533
|
+
* @description 同步模式
|
|
2534
|
+
*/
|
|
2535
|
+
_findMinRange(...args) {
|
|
2536
|
+
return utils.runGeneratorSync(this._findMinRangeWithGenerator(...args));
|
|
2537
|
+
}
|
|
2711
2538
|
/**
|
|
2712
2539
|
* 查看当前节点是不是有引用
|
|
2713
2540
|
* @param node 节点
|
|
@@ -2749,7 +2576,7 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
2749
2576
|
// Conenctor 虽为 Module 的子类,但是具体引用逻辑与Module 并不一致,因此这边单独处理
|
|
2750
2577
|
// 由于 在与后端定义 Connector Namespace 前缀时, Logics 相关定义为 connector,
|
|
2751
2578
|
// 其余定义为 extension, 因此这边查找引用时,需要分别查找并去重复
|
|
2752
|
-
// 这里选择 logic 与 interface 作为 查找源,因为一个 Connector 必定至少含有一个 logic 和 interface
|
|
2579
|
+
// 这里选择 logic 与 interface 作为 查找源,因为一个 Connector 必定至少含有一个 logic 和 interface
|
|
2753
2580
|
const logicList = node.namespaces.find((ns) => ns.logics.length > 0)?.logics || [];
|
|
2754
2581
|
const interfaceList = node.interfaces;
|
|
2755
2582
|
const moduleName = fileNode.getEmbeddedFilePath();
|
|
@@ -3795,6 +3622,8 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
3795
3622
|
return { fileNode: null };
|
|
3796
3623
|
let { sourceMap } = node;
|
|
3797
3624
|
let fileNode = node;
|
|
3625
|
+
// 连接器 操作,上层结构是 Namespace, Namespace 并无含义,因此需要过滤掉
|
|
3626
|
+
const isConnectorLogic = node.getAncestor('Connector') && node.concept === 'Logic' && node.parentNode instanceof concepts_1.Namespace;
|
|
3798
3627
|
// 如果没有sourceMap,就继续向上找 ,或者到module结束
|
|
3799
3628
|
// 如果 节点找到 app 或者module 停止 或者entity找到DataSource为止
|
|
3800
3629
|
// 如果当前节点是view就不要向上查找了
|
|
@@ -3807,7 +3636,7 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
3807
3636
|
!(fileNode.parentNode instanceof concepts_1.DataSource) &&
|
|
3808
3637
|
!(fileNode.parentNode instanceof concepts_1.Frontend) &&
|
|
3809
3638
|
!(fileNode.parentNode instanceof concepts_1.Backend) &&
|
|
3810
|
-
!
|
|
3639
|
+
!isConnectorLogic &&
|
|
3811
3640
|
!(fileNode instanceof concepts_1.View) &&
|
|
3812
3641
|
!(fileNode instanceof concepts_1.ConfigProperty)) {
|
|
3813
3642
|
fileNode = fileNode.parentNode;
|
|
@@ -3921,6 +3750,10 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
3921
3750
|
}
|
|
3922
3751
|
return concepts_1.TypeAnnotation.createPrimitive(type);
|
|
3923
3752
|
}
|
|
3753
|
+
// 如果是一元表达式,那么就是布尔值
|
|
3754
|
+
if (node instanceof concepts_1.UnaryExpression) {
|
|
3755
|
+
return concepts_1.TypeAnnotation.createPrimitive('Boolean');
|
|
3756
|
+
}
|
|
3924
3757
|
// 这些原有类型的 比较的 返回值肯定就是布尔值,就不去调用ls
|
|
3925
3758
|
if (node instanceof concepts_1.BinaryExpression && ['==', '!=', '>', '<', '>=', '<='].includes(node.operator)) {
|
|
3926
3759
|
return concepts_1.TypeAnnotation.createPrimitive('Boolean');
|
|
@@ -3956,26 +3789,25 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
3956
3789
|
}
|
|
3957
3790
|
}
|
|
3958
3791
|
/**
|
|
3959
|
-
* 获取传入节点的TypeAnnotation
|
|
3960
|
-
*
|
|
3961
|
-
* @
|
|
3962
|
-
* 普通的TypeAnnotation,额外的可能携带 option
|
|
3963
|
-
* 这里会处理callloigc callinterface 和 callfuntion 的 argment的参数一起携带回去,
|
|
3964
|
-
* 也就是说如果 只传入了这个也会一起返回argment的节点,所以返回map最好去get结果
|
|
3792
|
+
* 获取传入节点的 TypeAnnotation
|
|
3793
|
+
*
|
|
3794
|
+
* @description 生成器模式原型
|
|
3965
3795
|
*/
|
|
3966
|
-
|
|
3796
|
+
*_getQuickInfoNodesTypeMapWithGenerator(nodes) {
|
|
3797
|
+
const self = this;
|
|
3967
3798
|
const args = [];
|
|
3968
3799
|
// 要通过自己或者依赖关系拿的
|
|
3969
3800
|
const getFromOthers = new Map();
|
|
3970
3801
|
// 总共要返回出去的
|
|
3971
3802
|
const types = new Map();
|
|
3972
3803
|
const newQuickInfoNodes = [];
|
|
3973
|
-
|
|
3804
|
+
yield* utils.wrapForEachToGenerator(nodes, function* getQuickInfoPosition(itemDetail, index) {
|
|
3974
3805
|
const { node, filePath, item } = itemDetail;
|
|
3975
3806
|
// 先按照顺序占位
|
|
3976
3807
|
types.set(node, null);
|
|
3977
3808
|
// 获取已知节点类型的类型
|
|
3978
|
-
const nodeTypeAnnotation =
|
|
3809
|
+
const nodeTypeAnnotation = self.getCurrentNodeKnownTypeAnnotation(node);
|
|
3810
|
+
yield;
|
|
3979
3811
|
if (nodeTypeAnnotation) {
|
|
3980
3812
|
types.set(node, nodeTypeAnnotation);
|
|
3981
3813
|
return;
|
|
@@ -3995,7 +3827,6 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
3995
3827
|
}
|
|
3996
3828
|
if (![
|
|
3997
3829
|
'Identifier',
|
|
3998
|
-
'UnaryExpression',
|
|
3999
3830
|
'BinaryExpression',
|
|
4000
3831
|
'CallLogic',
|
|
4001
3832
|
'CallFunction',
|
|
@@ -4023,12 +3854,13 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
4023
3854
|
offset: (0, translator_1.lsp2tspNumber)(item.start.character),
|
|
4024
3855
|
};
|
|
4025
3856
|
const getCode = (range) => {
|
|
4026
|
-
return
|
|
3857
|
+
return self.tsFiles.get(filePath)?.slice(range.start.offset, range.end.offset) ?? '';
|
|
4027
3858
|
};
|
|
4028
3859
|
// 位置计算偏移
|
|
4029
3860
|
if ('getQuickInfoOffset' in node) {
|
|
4030
3861
|
Object.assign(fileDetail, node.getQuickInfoOffset(fileDetail, getCode(item)));
|
|
4031
3862
|
}
|
|
3863
|
+
yield;
|
|
4032
3864
|
// 位置计算偏移2
|
|
4033
3865
|
// TODO: 之后考虑把这些偏移量计算全都挪到节点内部去
|
|
4034
3866
|
if (node.concept === 'BinaryExpression' ||
|
|
@@ -4108,9 +3940,9 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
4108
3940
|
fileDetail.offset += 10;
|
|
4109
3941
|
}
|
|
4110
3942
|
args.push(fileDetail);
|
|
4111
|
-
}
|
|
4112
|
-
const resultMap = (
|
|
4113
|
-
|
|
3943
|
+
});
|
|
3944
|
+
const resultMap = (yield this.getNaslNodeTypeFull(args))?.response;
|
|
3945
|
+
yield* utils.wrapForEachToGenerator(args, ({ file, line, offset }, index) => {
|
|
4114
3946
|
const item = resultMap?.[file]?.[line]?.[offset];
|
|
4115
3947
|
const itemType = item?.[0]?.nodeType;
|
|
4116
3948
|
const nodeTypeAnnotation = (0, formatTsUtils_1.type2TypeAnnotation)(itemType);
|
|
@@ -4123,8 +3955,8 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
4123
3955
|
else {
|
|
4124
3956
|
delete node.__nodeType;
|
|
4125
3957
|
}
|
|
4126
|
-
}
|
|
4127
|
-
|
|
3958
|
+
});
|
|
3959
|
+
yield* utils.wrapIteratorToGenerator(getFromOthers.entries(), function* ([node]) {
|
|
4128
3960
|
if (node instanceof concepts_1.Assignment) {
|
|
4129
3961
|
if (!types.get(node.left)) {
|
|
4130
3962
|
types.set(node.left, types.get(node.right));
|
|
@@ -4132,7 +3964,7 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
4132
3964
|
}
|
|
4133
3965
|
else if (node instanceof concepts_1.Argument) {
|
|
4134
3966
|
// 如果Argument,但是没可以用的类型,就用原来logic的参数类型
|
|
4135
|
-
const argType =
|
|
3967
|
+
const argType = yield* self.getArgumentTypeAnnotationWithGenerator(node, newQuickInfoNodes, types);
|
|
4136
3968
|
types.set(node, argType);
|
|
4137
3969
|
}
|
|
4138
3970
|
else if (node instanceof concepts_1.MatchCase) {
|
|
@@ -4145,8 +3977,8 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
4145
3977
|
}
|
|
4146
3978
|
}
|
|
4147
3979
|
}
|
|
4148
|
-
}
|
|
4149
|
-
|
|
3980
|
+
});
|
|
3981
|
+
yield* utils.wrapIteratorToGenerator(types.entries(), ([node, value]) => {
|
|
4150
3982
|
try {
|
|
4151
3983
|
// 因为node可能是经过处理的TypeAnnotation
|
|
4152
3984
|
node.__isCorrectTypeAnnotation = true;
|
|
@@ -4181,9 +4013,15 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
4181
4013
|
// console.log(err);
|
|
4182
4014
|
// }
|
|
4183
4015
|
}
|
|
4184
|
-
}
|
|
4016
|
+
});
|
|
4185
4017
|
return types;
|
|
4186
4018
|
}
|
|
4019
|
+
/**
|
|
4020
|
+
* 获取传入节点的 TypeAnnotation
|
|
4021
|
+
*/
|
|
4022
|
+
getQuickInfoNodesTypeMap(nodes, flag) {
|
|
4023
|
+
return utils.runGeneratorAsync(this._getQuickInfoNodesTypeMapWithGenerator(nodes));
|
|
4024
|
+
}
|
|
4187
4025
|
// 全量标注并且返回json
|
|
4188
4026
|
async getNaslAnnotatedJSON(app, releaseFlag) {
|
|
4189
4027
|
if (this.changeStackList?.length) {
|
|
@@ -4206,6 +4044,7 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
4206
4044
|
const typesMap = await this.getQuickInfoNodesTypeMap(nodes, true);
|
|
4207
4045
|
console.timeEnd('全量标注');
|
|
4208
4046
|
const json = app.toJSON();
|
|
4047
|
+
console.log(json);
|
|
4209
4048
|
if (releaseFlag) {
|
|
4210
4049
|
// 全量标注后对json进行一些修改,为了服务端翻译处理
|
|
4211
4050
|
this.annotationToJson(typesMap, json);
|
|
@@ -4213,27 +4052,29 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
4213
4052
|
return json;
|
|
4214
4053
|
}
|
|
4215
4054
|
// 增量标注
|
|
4216
|
-
|
|
4055
|
+
*_incrementalAnnotationJSONWithGenerator(records) {
|
|
4217
4056
|
console.time('增量标注');
|
|
4218
4057
|
const nodes = [];
|
|
4219
|
-
|
|
4220
|
-
|
|
4221
|
-
|
|
4058
|
+
const self = this;
|
|
4059
|
+
yield* utils.wrapForEachToGenerator(records, function* findNodePosition(record) {
|
|
4060
|
+
const fileNode = self.file2NodeMap.get(record.filePath);
|
|
4061
|
+
if (!fileNode) {
|
|
4222
4062
|
return;
|
|
4063
|
+
}
|
|
4223
4064
|
record.id = fileNode.id;
|
|
4224
4065
|
record.node = fileNode;
|
|
4225
|
-
if (
|
|
4226
|
-
|
|
4227
|
-
fileNode.sourceMap.forEach((item, nodeItem) => {
|
|
4228
|
-
nodes.push({
|
|
4229
|
-
filePath: record.filePath,
|
|
4230
|
-
node: nodeItem,
|
|
4231
|
-
item,
|
|
4232
|
-
});
|
|
4233
|
-
});
|
|
4066
|
+
if (['Structure', 'DataSource', 'Entity', 'Enum', 'Role', 'MetadataType'].includes(fileNode.concept) || !fileNode.sourceMap) {
|
|
4067
|
+
return;
|
|
4234
4068
|
}
|
|
4069
|
+
yield* utils.wrapIteratorToGenerator(fileNode.sourceMap.entries(), ([nodeItem, item]) => {
|
|
4070
|
+
nodes.push({
|
|
4071
|
+
filePath: record.filePath,
|
|
4072
|
+
node: nodeItem,
|
|
4073
|
+
item,
|
|
4074
|
+
});
|
|
4075
|
+
});
|
|
4235
4076
|
});
|
|
4236
|
-
|
|
4077
|
+
yield* this._getQuickInfoNodesTypeMapWithGenerator(nodes);
|
|
4237
4078
|
console.timeEnd('增量标注');
|
|
4238
4079
|
}
|
|
4239
4080
|
annotationToJson(typesMap, json) {
|
|
@@ -4241,6 +4082,12 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
4241
4082
|
// 如果节点本身有类型就不去在塞一遍了
|
|
4242
4083
|
// 有值而且没有类型再去设置
|
|
4243
4084
|
// 但是Identifier 和 MemberExpression 都用标注出来的因为本身是变量,有类型也需要覆盖一下
|
|
4085
|
+
if (value && (node instanceof concepts_1.Argument) && node.getAncestor('Connector')?.concept === 'Connector') {
|
|
4086
|
+
const jsonNode = jsoner.queryNodeByPath(json, node.getNodePath(false));
|
|
4087
|
+
if (jsonNode) {
|
|
4088
|
+
jsonNode.typeAnnotation = value?.toJSON();
|
|
4089
|
+
}
|
|
4090
|
+
}
|
|
4244
4091
|
if (value && (!node.typeAnnotation || node instanceof concepts_1.Identifier || node instanceof concepts_1.MemberExpression)) {
|
|
4245
4092
|
const jsonNode = jsoner.queryNodeByPath(json, node.getNodePath(false));
|
|
4246
4093
|
if (jsonNode) {
|
|
@@ -4353,7 +4200,7 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
4353
4200
|
* 如果内部表达式的,就用表达式的,如果没有就试试用默认值的
|
|
4354
4201
|
* 获取logic的默认值和原来Arg的类型和默认值对应
|
|
4355
4202
|
*/
|
|
4356
|
-
|
|
4203
|
+
*getArgumentTypeAnnotationWithGenerator(node, QuickInfoNodes, types) {
|
|
4357
4204
|
// 直接复用内部expression的type类型
|
|
4358
4205
|
if (node.parentNode instanceof concepts_1.CallLogic &&
|
|
4359
4206
|
node.parentNode.calleeNamespace?.includes('entities') &&
|
|
@@ -4368,6 +4215,7 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
4368
4215
|
return nodeTypeAnnotation;
|
|
4369
4216
|
}
|
|
4370
4217
|
}
|
|
4218
|
+
yield;
|
|
4371
4219
|
}
|
|
4372
4220
|
// 获取返回值结果里找到父级的callLogic || CallInterface的类型填充进去Argument
|
|
4373
4221
|
const App = node.app;
|
|
@@ -4380,6 +4228,7 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
4380
4228
|
}
|
|
4381
4229
|
// 用户自己声明的用用户的
|
|
4382
4230
|
const callObj = App.findNodeByCompleteName(`${parent.calleeNamespace}.${parent.calleeName}`);
|
|
4231
|
+
yield;
|
|
4383
4232
|
const index = parent.arguments.indexOf(node);
|
|
4384
4233
|
const param = callObj?.params?.[index] || {};
|
|
4385
4234
|
// 取出参数的类型
|
|
@@ -4640,7 +4489,7 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
4640
4489
|
const fileNodeChildren = [...fileNode.views, ...fileNode.variables];
|
|
4641
4490
|
for (let i = 0; i < fileNodeChildren.length; i++) {
|
|
4642
4491
|
const fileNodeItem = fileNodeChildren[i];
|
|
4643
|
-
const result = fileNodeItem.toEmbeddedTSFile();
|
|
4492
|
+
const result = await utils.timeSlicingWithGenerator(fileNodeItem.toEmbeddedTSFile());
|
|
4644
4493
|
fileNodeItem.sourceMap = result.sourceMap;
|
|
4645
4494
|
if (action === 'create') {
|
|
4646
4495
|
await this.handleChange(fileNodeItem, fileNodeItem, result, action);
|
|
@@ -4665,7 +4514,7 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
4665
4514
|
const fileNodeChildren = fileNode.children;
|
|
4666
4515
|
for (let i = 0; i < fileNodeChildren.length; i++) {
|
|
4667
4516
|
const fileNodeItem = fileNodeChildren[i];
|
|
4668
|
-
const result = fileNodeItem.toEmbeddedTSFile();
|
|
4517
|
+
const result = await utils.timeSlicingWithGenerator(fileNodeItem.toEmbeddedTSFile());
|
|
4669
4518
|
fileNodeItem.sourceMap = result.sourceMap;
|
|
4670
4519
|
if (action === 'create') {
|
|
4671
4520
|
await this.handleChange(fileNodeItem, fileNodeItem, result, action);
|
|
@@ -4691,8 +4540,7 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
4691
4540
|
isChangeInterface = true;
|
|
4692
4541
|
}
|
|
4693
4542
|
const module = targetNode;
|
|
4694
|
-
const results =
|
|
4695
|
-
this.contentToFile(module, results);
|
|
4543
|
+
const results = await utils.timeSlicingWithGenerator(this.contentToFile(module));
|
|
4696
4544
|
for (let i = 0; i < results.length; i++) {
|
|
4697
4545
|
const result = results[i];
|
|
4698
4546
|
const node = this.file2NodeMap.get(result.filePath);
|
|
@@ -4720,7 +4568,7 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
4720
4568
|
if (fileNode instanceof concepts_1.DataSource) {
|
|
4721
4569
|
fileNode.entities.forEach(async (entity) => {
|
|
4722
4570
|
try {
|
|
4723
|
-
const result = entity.toEmbeddedTSFile();
|
|
4571
|
+
const result = await utils.timeSlicingWithGenerator(entity.toEmbeddedTSFile());
|
|
4724
4572
|
const parentPath = oldpath.replace('.ts', '/');
|
|
4725
4573
|
const currentOldPath = `${parentPath}/entities/${entity.name}.ts`;
|
|
4726
4574
|
// 因为重命名这里只有当前修改父级的 旧名称, 所以他的子集也要根据旧名称去查依赖 更新内容
|
|
@@ -4736,9 +4584,35 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
4736
4584
|
async receiveHandleChange($event) {
|
|
4737
4585
|
this.singleFileChangeIng = true;
|
|
4738
4586
|
// 行为
|
|
4739
|
-
const { action } = $event;
|
|
4587
|
+
const { action, oldObject = {}, object = {} } = $event;
|
|
4588
|
+
// 根据行为跳过更新文件
|
|
4589
|
+
// 如果更新国际化key,不需要修改ts文件
|
|
4590
|
+
if (Object.keys(object || {}).length === 1 && Object.keys(oldObject).length === 1) {
|
|
4591
|
+
if (object.i18nKey && !oldObject.i18nKey) {
|
|
4592
|
+
return;
|
|
4593
|
+
}
|
|
4594
|
+
else if (object.i18nInfo && !oldObject.i18nInfo) {
|
|
4595
|
+
return;
|
|
4596
|
+
}
|
|
4597
|
+
else if (!object.i18nKey && oldObject.i18nKey) {
|
|
4598
|
+
// 撤销重做 也跳过更新
|
|
4599
|
+
return;
|
|
4600
|
+
}
|
|
4601
|
+
else if (!object.i18nInfo && oldObject.i18nInfo) {
|
|
4602
|
+
// 撤销重做 也跳过更新
|
|
4603
|
+
return;
|
|
4604
|
+
}
|
|
4605
|
+
}
|
|
4740
4606
|
const targetNode = $event.target;
|
|
4741
4607
|
console.log(targetNode, 'targetNode');
|
|
4608
|
+
// 连接器namespace 没有真实文件,不需要走删除
|
|
4609
|
+
if (targetNode instanceof concepts_1.Namespace && targetNode.parentNode instanceof concepts_1.Connector) {
|
|
4610
|
+
return;
|
|
4611
|
+
}
|
|
4612
|
+
// 连接器本身没有真实文件,也不需要删除
|
|
4613
|
+
if (targetNode instanceof concepts_1.Connector) {
|
|
4614
|
+
return;
|
|
4615
|
+
}
|
|
4742
4616
|
// Connection 相关配置的更新不需要写入文件
|
|
4743
4617
|
// i18nInfo 更新不需要写入文件
|
|
4744
4618
|
if (targetNode?.parentNode instanceof concepts_1.Connection || targetNode instanceof concepts_1.I18nInfo) {
|
|
@@ -4758,18 +4632,19 @@ let NaslServer = NaslServer_1 = class NaslServer {
|
|
|
4758
4632
|
}
|
|
4759
4633
|
return;
|
|
4760
4634
|
}
|
|
4635
|
+
// debugger;
|
|
4761
4636
|
if (process.env.NODE_ENV === 'development') {
|
|
4762
4637
|
console.time('重新生成 TS 文件');
|
|
4763
4638
|
}
|
|
4764
|
-
|
|
4765
|
-
const result = fileNode
|
|
4639
|
+
const fileTsPath = fileNode.getEmbeddedFilePath();
|
|
4640
|
+
const result = await utils.timeSlicingWithGenerator(fileNode.toEmbeddedTSFile());
|
|
4766
4641
|
if (process.env.NODE_ENV === 'development') {
|
|
4767
4642
|
console.timeEnd('重新生成 TS 文件');
|
|
4768
|
-
console.log('重新生成 TS 文件',
|
|
4643
|
+
console.log('重新生成 TS 文件', fileTsPath);
|
|
4769
4644
|
}
|
|
4770
4645
|
// 当前操作的节点
|
|
4771
4646
|
// 如果当前没有生成tsFile
|
|
4772
|
-
if (!result) {
|
|
4647
|
+
if (!result.sourceMap) {
|
|
4773
4648
|
return;
|
|
4774
4649
|
}
|
|
4775
4650
|
// 修改触发修改文件
|
|
@@ -4844,9 +4719,6 @@ __decorate([
|
|
|
4844
4719
|
__decorate([
|
|
4845
4720
|
(0, decorators_1.withQueueExecute)('annotation')
|
|
4846
4721
|
], NaslServer.prototype, "getNaslAnnotatedJSON", null);
|
|
4847
|
-
__decorate([
|
|
4848
|
-
(0, decorators_1.withQueueExecute)('annotation')
|
|
4849
|
-
], NaslServer.prototype, "IncrementalAnnotationJSON", null);
|
|
4850
4722
|
NaslServer = NaslServer_1 = __decorate([
|
|
4851
4723
|
sentry_1.sentryMonitorNaslServer
|
|
4852
4724
|
], NaslServer);
|