@lcap/nasl 2.20.1-beta.2 → 2.21.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/docs/classes/EntityProperty.html +1 -1
- package/out/automate/engine/operators.d.ts +9 -0
- package/out/automate/engine/viewCache.d.ts +1 -0
- package/out/automate/template/myProcess.d.ts +1 -0
- package/out/bak/translator.js +2 -2
- package/out/bak/translator.js.map +1 -1
- package/out/common/BaseNode.d.ts +5 -0
- package/out/common/BaseNode.js +24 -4
- package/out/common/BaseNode.js.map +1 -1
- package/out/common/Command.d.ts +1 -1
- package/out/common/EventEmitter.d.ts +2 -1
- package/out/common/EventEmitter.js +3 -0
- package/out/common/EventEmitter.js.map +1 -1
- package/out/common/Messager.js +1 -0
- package/out/common/Messager.js.map +1 -1
- package/out/concepts/Abort__.d.ts +23 -0
- package/out/concepts/Abort__.js +74 -0
- package/out/concepts/Abort__.js.map +1 -0
- package/out/concepts/Anchor__.d.ts +1 -0
- package/out/concepts/Anchor__.js +3 -0
- package/out/concepts/Anchor__.js.map +1 -1
- package/out/concepts/AnonymousFunction__.d.ts +1 -0
- package/out/concepts/AnonymousFunction__.js +3 -0
- package/out/concepts/AnonymousFunction__.js.map +1 -1
- package/out/concepts/App__.d.ts +10 -0
- package/out/concepts/App__.js +23 -1
- package/out/concepts/App__.js.map +1 -1
- package/out/concepts/Argument__.d.ts +1 -0
- package/out/concepts/Argument__.js +3 -0
- package/out/concepts/Argument__.js.map +1 -1
- package/out/concepts/Assignee__.d.ts +1 -0
- package/out/concepts/Assignee__.js +3 -0
- package/out/concepts/Assignee__.js.map +1 -1
- package/out/concepts/AssignmentLine__.d.ts +1 -0
- package/out/concepts/AssignmentLine__.js +3 -0
- package/out/concepts/AssignmentLine__.js.map +1 -1
- package/out/concepts/Assignment__.d.ts +1 -0
- package/out/concepts/Assignment__.js +3 -0
- package/out/concepts/Assignment__.js.map +1 -1
- package/out/concepts/Attribute__.d.ts +1 -0
- package/out/concepts/Attribute__.js +3 -0
- package/out/concepts/Attribute__.js.map +1 -1
- package/out/concepts/BatchAssignment__.d.ts +1 -0
- package/out/concepts/BatchAssignment__.js +3 -0
- package/out/concepts/BatchAssignment__.js.map +1 -1
- package/out/concepts/BinaryExpression__.d.ts +1 -0
- package/out/concepts/BinaryExpression__.js +3 -0
- package/out/concepts/BinaryExpression__.js.map +1 -1
- package/out/concepts/BindAttribute__.d.ts +1 -0
- package/out/concepts/BindAttribute__.js +5 -9
- package/out/concepts/BindAttribute__.js.map +1 -1
- package/out/concepts/BindDirective__.d.ts +1 -0
- package/out/concepts/BindDirective__.js +5 -2
- package/out/concepts/BindDirective__.js.map +1 -1
- package/out/concepts/BindEvent__.d.ts +1 -0
- package/out/concepts/BindEvent__.js +3 -0
- package/out/concepts/BindEvent__.js.map +1 -1
- package/out/concepts/BindStyle__.d.ts +1 -0
- package/out/concepts/BindStyle__.js +3 -0
- package/out/concepts/BindStyle__.js.map +1 -1
- package/out/concepts/BooleanLiteral__.d.ts +1 -0
- package/out/concepts/BooleanLiteral__.js +3 -0
- package/out/concepts/BooleanLiteral__.js.map +1 -1
- package/out/concepts/CallFunction__.d.ts +1 -0
- package/out/concepts/CallFunction__.js +3 -0
- package/out/concepts/CallFunction__.js.map +1 -1
- package/out/concepts/CallInterface__.d.ts +2 -0
- package/out/concepts/CallInterface__.js +34 -1
- package/out/concepts/CallInterface__.js.map +1 -1
- package/out/concepts/CallLogic__.d.ts +9 -0
- package/out/concepts/CallLogic__.js +53 -41
- package/out/concepts/CallLogic__.js.map +1 -1
- package/out/concepts/CallQueryComponent__.d.ts +1 -0
- package/out/concepts/CallQueryComponent__.js +19 -16
- package/out/concepts/CallQueryComponent__.js.map +1 -1
- package/out/concepts/Comment__.d.ts +1 -0
- package/out/concepts/Comment__.js +3 -0
- package/out/concepts/Comment__.js.map +1 -1
- package/out/concepts/CompletionProperty__.d.ts +2 -0
- package/out/concepts/CompletionProperty__.js +4 -0
- package/out/concepts/CompletionProperty__.js.map +1 -1
- package/out/concepts/ConfigGroup__.d.ts +1 -0
- package/out/concepts/ConfigGroup__.js +3 -0
- package/out/concepts/ConfigGroup__.js.map +1 -1
- package/out/concepts/ConfigPropertyValue__.d.ts +1 -0
- package/out/concepts/ConfigPropertyValue__.js +3 -0
- package/out/concepts/ConfigPropertyValue__.js.map +1 -1
- package/out/concepts/ConfigProperty__.d.ts +1 -0
- package/out/concepts/ConfigProperty__.js +3 -0
- package/out/concepts/ConfigProperty__.js.map +1 -1
- package/out/concepts/Configuration__.d.ts +1 -0
- package/out/concepts/Configuration__.js +3 -0
- package/out/concepts/Configuration__.js.map +1 -1
- package/out/concepts/Constant__.d.ts +1 -0
- package/out/concepts/Constant__.js +3 -0
- package/out/concepts/Constant__.js.map +1 -1
- package/out/concepts/DataElement__.d.ts +1 -0
- package/out/concepts/DataElement__.js +3 -0
- package/out/concepts/DataElement__.js.map +1 -1
- package/out/concepts/DataSource__.d.ts +2 -0
- package/out/concepts/DataSource__.js +8 -2
- package/out/concepts/DataSource__.js.map +1 -1
- package/out/concepts/DatabaseTypeAnnotation__.d.ts +30 -0
- package/out/concepts/DatabaseTypeAnnotation__.js +75 -0
- package/out/concepts/DatabaseTypeAnnotation__.js.map +1 -0
- package/out/concepts/Destination__.d.ts +2 -0
- package/out/concepts/Destination__.js +33 -10
- package/out/concepts/Destination__.js.map +1 -1
- package/out/concepts/End__.d.ts +1 -0
- package/out/concepts/End__.js +3 -0
- package/out/concepts/End__.js.map +1 -1
- package/out/concepts/EntityIndex__.d.ts +2 -1
- package/out/concepts/EntityIndex__.js +3 -0
- package/out/concepts/EntityIndex__.js.map +1 -1
- package/out/concepts/EntityProperty__.d.ts +23 -2
- package/out/concepts/EntityProperty__.js +61 -1
- package/out/concepts/EntityProperty__.js.map +1 -1
- package/out/concepts/Entity__.d.ts +1 -0
- package/out/concepts/Entity__.js +3 -0
- package/out/concepts/Entity__.js.map +1 -1
- package/out/concepts/EnumItem__.d.ts +1 -0
- package/out/concepts/EnumItem__.js +3 -0
- package/out/concepts/EnumItem__.js.map +1 -1
- package/out/concepts/Enum__.d.ts +1 -0
- package/out/concepts/Enum__.js +3 -0
- package/out/concepts/Enum__.js.map +1 -1
- package/out/concepts/Event__.d.ts +1 -0
- package/out/concepts/Event__.js +3 -0
- package/out/concepts/Event__.js.map +1 -1
- package/out/concepts/ExternalDestination__.d.ts +1 -0
- package/out/concepts/ExternalDestination__.js +3 -0
- package/out/concepts/ExternalDestination__.js.map +1 -1
- package/out/concepts/ForEachStatement__.d.ts +1 -0
- package/out/concepts/ForEachStatement__.js +3 -0
- package/out/concepts/ForEachStatement__.js.map +1 -1
- package/out/concepts/FrontendLibrary__.d.ts +1 -0
- package/out/concepts/FrontendLibrary__.js +3 -0
- package/out/concepts/FrontendLibrary__.js.map +1 -1
- package/out/concepts/Frontend__.d.ts +2 -0
- package/out/concepts/Frontend__.js +16 -0
- package/out/concepts/Frontend__.js.map +1 -1
- package/out/concepts/Function__.d.ts +1 -0
- package/out/concepts/Function__.js +3 -0
- package/out/concepts/Function__.js.map +1 -1
- package/out/concepts/Identifier__.d.ts +1 -0
- package/out/concepts/Identifier__.js +3 -0
- package/out/concepts/Identifier__.js.map +1 -1
- package/out/concepts/IfStatement__.d.ts +1 -0
- package/out/concepts/IfStatement__.js +3 -0
- package/out/concepts/IfStatement__.js.map +1 -1
- package/out/concepts/InterfaceParam__.d.ts +1 -0
- package/out/concepts/InterfaceParam__.js +3 -0
- package/out/concepts/InterfaceParam__.js.map +1 -1
- package/out/concepts/Interface__.d.ts +13 -0
- package/out/concepts/Interface__.js +61 -0
- package/out/concepts/Interface__.js.map +1 -1
- package/out/concepts/JSBlock__.d.ts +1 -0
- package/out/concepts/JSBlock__.js +3 -0
- package/out/concepts/JSBlock__.js.map +1 -1
- package/out/concepts/LogicItem__.d.ts +2 -1
- package/out/concepts/LogicItem__.js +3 -0
- package/out/concepts/LogicItem__.js.map +1 -1
- package/out/concepts/Logic__.d.ts +3 -1
- package/out/concepts/Logic__.js +66 -24
- package/out/concepts/Logic__.js.map +1 -1
- package/out/concepts/MatchCase__.d.ts +1 -0
- package/out/concepts/MatchCase__.js +3 -0
- package/out/concepts/MatchCase__.js.map +1 -1
- package/out/concepts/Match__.d.ts +4 -1
- package/out/concepts/Match__.js +77 -2
- package/out/concepts/Match__.js.map +1 -1
- package/out/concepts/MemberExpression__.d.ts +1 -0
- package/out/concepts/MemberExpression__.js +3 -0
- package/out/concepts/MemberExpression__.js.map +1 -1
- package/out/concepts/Module__.d.ts +14 -1
- package/out/concepts/Module__.js +10 -0
- package/out/concepts/Module__.js.map +1 -1
- package/out/concepts/Namespace__.d.ts +1 -0
- package/out/concepts/Namespace__.js +3 -0
- package/out/concepts/Namespace__.js.map +1 -1
- package/out/concepts/NewComposite__.d.ts +1 -0
- package/out/concepts/NewComposite__.js +3 -0
- package/out/concepts/NewComposite__.js.map +1 -1
- package/out/concepts/NewList__.d.ts +1 -0
- package/out/concepts/NewList__.js +3 -0
- package/out/concepts/NewList__.js.map +1 -1
- package/out/concepts/NewMap__.d.ts +1 -0
- package/out/concepts/NewMap__.js +3 -0
- package/out/concepts/NewMap__.js.map +1 -1
- package/out/concepts/New__.d.ts +1 -0
- package/out/concepts/New__.js +3 -0
- package/out/concepts/New__.js.map +1 -1
- package/out/concepts/NullLiteral__.d.ts +1 -0
- package/out/concepts/NullLiteral__.js +3 -0
- package/out/concepts/NullLiteral__.js.map +1 -1
- package/out/concepts/NumericLiteral__.d.ts +1 -0
- package/out/concepts/NumericLiteral__.js +6 -9
- package/out/concepts/NumericLiteral__.js.map +1 -1
- package/out/concepts/OqlQueryComponent__.d.ts +1 -0
- package/out/concepts/OqlQueryComponent__.js +3 -0
- package/out/concepts/OqlQueryComponent__.js.map +1 -1
- package/out/concepts/Param__.d.ts +1 -0
- package/out/concepts/Param__.js +3 -0
- package/out/concepts/Param__.js.map +1 -1
- package/out/concepts/Point__.d.ts +1 -0
- package/out/concepts/Point__.js +3 -0
- package/out/concepts/Point__.js.map +1 -1
- package/out/concepts/ProcessComponent__.d.ts +1 -0
- package/out/concepts/ProcessComponent__.js +3 -0
- package/out/concepts/ProcessComponent__.js.map +1 -1
- package/out/concepts/ProcessElement__.d.ts +1 -0
- package/out/concepts/ProcessElement__.js +3 -0
- package/out/concepts/ProcessElement__.js.map +1 -1
- package/out/concepts/ProcessOutcome__.d.ts +1 -0
- package/out/concepts/ProcessOutcome__.js +3 -0
- package/out/concepts/ProcessOutcome__.js.map +1 -1
- package/out/concepts/ProcessOutcomes__.d.ts +1 -0
- package/out/concepts/ProcessOutcomes__.js +3 -0
- package/out/concepts/ProcessOutcomes__.js.map +1 -1
- package/out/concepts/Process__.d.ts +1 -0
- package/out/concepts/Process__.js +3 -0
- package/out/concepts/Process__.js.map +1 -1
- package/out/concepts/QueryAggregateExpression__.d.ts +1 -0
- package/out/concepts/QueryAggregateExpression__.js +3 -0
- package/out/concepts/QueryAggregateExpression__.js.map +1 -1
- package/out/concepts/QueryFieldExpression__.d.ts +1 -0
- package/out/concepts/QueryFieldExpression__.js +3 -0
- package/out/concepts/QueryFieldExpression__.js.map +1 -1
- package/out/concepts/QueryFromExpression__.d.ts +1 -0
- package/out/concepts/QueryFromExpression__.js +3 -0
- package/out/concepts/QueryFromExpression__.js.map +1 -1
- package/out/concepts/QueryGroupByExpression__.d.ts +1 -0
- package/out/concepts/QueryGroupByExpression__.js +3 -0
- package/out/concepts/QueryGroupByExpression__.js.map +1 -1
- package/out/concepts/QueryJoinExpression__.d.ts +1 -0
- package/out/concepts/QueryJoinExpression__.js +3 -0
- package/out/concepts/QueryJoinExpression__.js.map +1 -1
- package/out/concepts/QueryLimitExpression__.d.ts +1 -0
- package/out/concepts/QueryLimitExpression__.js +3 -0
- package/out/concepts/QueryLimitExpression__.js.map +1 -1
- package/out/concepts/QueryOrderByExpression__.d.ts +1 -0
- package/out/concepts/QueryOrderByExpression__.js +3 -0
- package/out/concepts/QueryOrderByExpression__.js.map +1 -1
- package/out/concepts/QuerySelectExpression__.d.ts +1 -0
- package/out/concepts/QuerySelectExpression__.js +3 -0
- package/out/concepts/QuerySelectExpression__.js.map +1 -1
- package/out/concepts/Rect__.d.ts +1 -0
- package/out/concepts/Rect__.js +3 -0
- package/out/concepts/Rect__.js.map +1 -1
- package/out/concepts/Return__.d.ts +1 -0
- package/out/concepts/Return__.js +3 -0
- package/out/concepts/Return__.js.map +1 -1
- package/out/concepts/Role__.d.ts +1 -0
- package/out/concepts/Role__.js +3 -0
- package/out/concepts/Role__.js.map +1 -1
- package/out/concepts/SelectMembers__.d.ts +1 -0
- package/out/concepts/SelectMembers__.js +3 -0
- package/out/concepts/SelectMembers__.js.map +1 -1
- package/out/concepts/Slot__.d.ts +1 -0
- package/out/concepts/Slot__.js +3 -0
- package/out/concepts/Slot__.js.map +1 -1
- package/out/concepts/SqlQueryComponent__.d.ts +1 -0
- package/out/concepts/SqlQueryComponent__.js +3 -0
- package/out/concepts/SqlQueryComponent__.js.map +1 -1
- package/out/concepts/Start__.d.ts +1 -0
- package/out/concepts/Start__.js +3 -0
- package/out/concepts/Start__.js.map +1 -1
- package/out/concepts/StringInterpolation__.d.ts +1 -0
- package/out/concepts/StringInterpolation__.js +3 -0
- package/out/concepts/StringInterpolation__.js.map +1 -1
- package/out/concepts/StringLiteral__.d.ts +1 -0
- package/out/concepts/StringLiteral__.js +3 -0
- package/out/concepts/StringLiteral__.js.map +1 -1
- package/out/concepts/StructureProperty__.d.ts +9 -0
- package/out/concepts/StructureProperty__.js +21 -0
- package/out/concepts/StructureProperty__.js.map +1 -1
- package/out/concepts/Structure__.d.ts +1 -0
- package/out/concepts/Structure__.js +3 -0
- package/out/concepts/Structure__.js.map +1 -1
- package/out/concepts/SwitchCase__.d.ts +1 -0
- package/out/concepts/SwitchCase__.js +3 -0
- package/out/concepts/SwitchCase__.js.map +1 -1
- package/out/concepts/SwitchStatement__.d.ts +1 -0
- package/out/concepts/SwitchStatement__.js +3 -0
- package/out/concepts/SwitchStatement__.js.map +1 -1
- package/out/concepts/Theme__.d.ts +1 -0
- package/out/concepts/Theme__.js +3 -0
- package/out/concepts/Theme__.js.map +1 -1
- package/out/concepts/Transactional__.d.ts +1 -0
- package/out/concepts/Transactional__.js +3 -0
- package/out/concepts/Transactional__.js.map +1 -1
- package/out/concepts/TypeAnnotation__.d.ts +4 -1
- package/out/concepts/TypeAnnotation__.js +34 -12
- package/out/concepts/TypeAnnotation__.js.map +1 -1
- package/out/concepts/TypeParam__.d.ts +1 -0
- package/out/concepts/TypeParam__.js +3 -0
- package/out/concepts/TypeParam__.js.map +1 -1
- package/out/concepts/UnaryExpression__.d.ts +1 -0
- package/out/concepts/UnaryExpression__.js +3 -0
- package/out/concepts/UnaryExpression__.js.map +1 -1
- package/out/concepts/Unparsed__.d.ts +1 -0
- package/out/concepts/Unparsed__.js +3 -0
- package/out/concepts/Unparsed__.js.map +1 -1
- package/out/concepts/UseComponent__.d.ts +1 -0
- package/out/concepts/UseComponent__.js +3 -0
- package/out/concepts/UseComponent__.js.map +1 -1
- package/out/concepts/ValidationRule__.d.ts +1 -0
- package/out/concepts/ValidationRule__.js +3 -0
- package/out/concepts/ValidationRule__.js.map +1 -1
- package/out/concepts/Variable__.d.ts +1 -0
- package/out/concepts/Variable__.js +3 -0
- package/out/concepts/Variable__.js.map +1 -1
- package/out/concepts/ViewBlock__.d.ts +1 -0
- package/out/concepts/ViewBlock__.js +3 -0
- package/out/concepts/ViewBlock__.js.map +1 -1
- package/out/concepts/ViewComponent__.d.ts +1 -0
- package/out/concepts/ViewComponent__.js +3 -0
- package/out/concepts/ViewComponent__.js.map +1 -1
- package/out/concepts/ViewElement__.d.ts +2 -1
- package/out/concepts/ViewElement__.js +8 -1
- package/out/concepts/ViewElement__.js.map +1 -1
- package/out/concepts/View__.d.ts +2 -0
- package/out/concepts/View__.js +19 -1
- package/out/concepts/View__.js.map +1 -1
- package/out/concepts/WhileStatement__.d.ts +1 -0
- package/out/concepts/WhileStatement__.js +3 -0
- package/out/concepts/WhileStatement__.js.map +1 -1
- package/out/concepts/basics/stdlib/nasl.collection.js +2 -2
- package/out/concepts/basics/stdlib/nasl.collection.js.map +1 -1
- package/out/concepts/basics/stdlib/nasl.core.js +3 -3
- package/out/concepts/basics/stdlib/nasl.core.js.map +1 -1
- package/out/concepts/basics/stdlib/nasl.interface.js +1 -1
- package/out/concepts/basics/stdlib/nasl.interface.js.map +1 -1
- package/out/concepts/basics/stdlib/nasl.process.js +6 -6
- package/out/concepts/basics/stdlib/nasl.process.js.map +1 -1
- package/out/concepts/basics/stdlib/nasl.ui.js +56 -43
- package/out/concepts/basics/stdlib/nasl.ui.js.map +1 -1
- package/out/concepts/basics/stdlib/nasl.util.js +46 -19
- package/out/concepts/basics/stdlib/nasl.util.js.map +1 -1
- package/out/concepts/basics/stdlib/nasl.validation.js +13 -13
- package/out/concepts/basics/stdlib/nasl.validation.js.map +1 -1
- package/out/concepts/basics/types/coreTypeList.js +1 -5
- package/out/concepts/basics/types/coreTypeList.js.map +1 -1
- package/out/concepts/index__.d.ts +2 -0
- package/out/concepts/index__.js +2 -0
- package/out/concepts/index__.js.map +1 -1
- package/out/config.d.ts +1 -1
- package/out/decorators/index.d.ts +2 -2
- package/out/decorators/index.js +3 -3
- package/out/decorators/index.js.map +1 -1
- package/out/generator/genBundleFiles.js +10 -8
- package/out/generator/genBundleFiles.js.map +1 -1
- package/out/generator/genReleaseBody.js +4 -1
- package/out/generator/genReleaseBody.js.map +1 -1
- package/out/generator/permission.d.ts +1 -1
- package/out/server/entity2LogicNamespace.js +1 -1
- package/out/server/entity2LogicNamespace.js.map +1 -1
- package/out/server/extendBaseNode.js +11 -0
- package/out/server/extendBaseNode.js.map +1 -1
- package/out/server/formatTsUtils.js +3 -2
- package/out/server/formatTsUtils.js.map +1 -1
- package/out/server/getMemberIdentifier.js +3 -2
- package/out/server/getMemberIdentifier.js.map +1 -1
- package/out/server/getProcesses.d.ts +3 -3
- package/out/server/getScope.d.ts +1 -1
- package/out/server/naslServer.d.ts +2 -2
- package/out/server/naslServer.js +111 -55
- 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/service/creator/add.configs.js +2 -0
- package/out/service/creator/add.configs.js.map +1 -1
- package/out/service/creator/index.js +2 -0
- package/out/service/creator/index.js.map +1 -1
- package/out/service/storage/api.d.ts +18 -0
- package/out/service/storage/api.js +12 -0
- package/out/service/storage/api.js.map +1 -1
- package/out/service/storage/init.d.ts +41 -1
- package/out/service/storage/init.js +179 -44
- package/out/service/storage/init.js.map +1 -1
- package/out/service/storage/service.d.ts +9 -1
- package/out/service/storage/service.js +27 -1
- package/out/service/storage/service.js.map +1 -1
- package/out/templator/genEditTableBlock.js +1 -1
- package/out/templator/genQueryComponent.js +2 -2
- package/out/templator/genQueryComponent.js.map +1 -1
- package/out/templator/genTableBlock.js +2 -2
- package/out/templator/genTableBlock.js.map +1 -1
- package/out/templator/utils.d.ts +0 -32
- package/out/templator/utils.js +7 -7
- package/out/templator/utils.js.map +1 -1
- package/out/translator/index.d.ts +1 -1
- package/out/translator/lsp.d.ts +3 -3
- package/out/utils/index.d.ts +4 -4
- package/package.json +1 -1
- package/sandbox/stdlib/dist/nasl.logging.js +0 -0
- package/sandbox/stdlib/dist/nasl.util.js +0 -0
- package/sandbox/stdlib/nasl.auth.ts +1 -3
- package/sandbox/stdlib/nasl.browser.ts +1 -1
- package/sandbox/stdlib/nasl.collection.ts +9 -9
- package/sandbox/stdlib/nasl.core.ts +38 -100
- package/sandbox/stdlib/nasl.interface.ts +1 -1
- package/sandbox/stdlib/nasl.langUtil.ts +4 -4
- package/sandbox/stdlib/nasl.oql.ts +156 -156
- package/sandbox/stdlib/nasl.process.ts +6 -6
- package/sandbox/stdlib/nasl.ui.ts +47 -43
- package/sandbox/stdlib/nasl.util.ts +41 -39
- package/sandbox/stdlib/nasl.validation.ts +8 -8
- package/src/automate/engine/dist/index.dev.js +517 -0
- package/src/bak/translator.js +2 -2
- package/src/common/BaseNode.ts +23 -5
- package/src/common/EventEmitter.ts +3 -0
- package/src/common/Messager.ts +1 -0
- package/src/common/dist/BaseNode.js +1101 -0
- package/src/concepts/Abort__.ts +83 -0
- package/src/concepts/Anchor__.ts +3 -0
- package/src/concepts/AnonymousFunction__.ts +3 -0
- package/src/concepts/App__.ts +66 -8
- package/src/concepts/Argument__.ts +3 -0
- package/src/concepts/Assignee__.ts +3 -0
- package/src/concepts/AssignmentLine__.ts +3 -0
- package/src/concepts/Assignment__.ts +3 -0
- package/src/concepts/Attribute__.ts +8 -0
- package/src/concepts/BatchAssignment__.ts +3 -0
- package/src/concepts/BinaryExpression__.ts +3 -0
- package/src/concepts/BindAttribute__.ts +9 -10
- package/src/concepts/BindDirective__.ts +5 -2
- package/src/concepts/BindEvent__.ts +3 -0
- package/src/concepts/BindStyle__.ts +3 -0
- package/src/concepts/BooleanLiteral__.ts +3 -0
- package/src/concepts/CallFunction__.ts +4 -0
- package/src/concepts/CallInterface__.ts +36 -1
- package/src/concepts/CallLogic__.ts +84 -41
- package/src/concepts/CallQueryComponent__.ts +19 -74
- package/src/concepts/Comment__.ts +3 -0
- package/src/concepts/CompletionProperty__.ts +5 -0
- package/src/concepts/ConfigGroup__.ts +7 -1
- package/src/concepts/ConfigPropertyValue__.ts +3 -4
- package/src/concepts/ConfigProperty__.ts +7 -1
- package/src/concepts/Configuration__.ts +8 -1
- package/src/concepts/Constant__.ts +3 -0
- package/src/concepts/DataElement__.ts +3 -0
- package/src/concepts/DataSource__.ts +13 -3
- package/src/concepts/DatabaseTypeAnnotation__.ts +85 -0
- package/src/concepts/Destination__.ts +34 -10
- package/src/concepts/End__.ts +3 -0
- package/src/concepts/EntityIndex__.ts +3 -0
- package/src/concepts/EntityProperty__.ts +76 -1
- package/src/concepts/Entity__.ts +3 -0
- package/src/concepts/EnumItem__.ts +3 -0
- package/src/concepts/Enum__.ts +3 -0
- package/src/concepts/Event__.ts +3 -0
- package/src/concepts/ExternalDestination__.ts +3 -0
- package/src/concepts/ForEachStatement__.ts +3 -0
- package/src/concepts/FrontendLibrary__.ts +3 -0
- package/src/concepts/Frontend__.ts +17 -0
- package/src/concepts/Function__.ts +3 -0
- package/src/concepts/Identifier__.ts +3 -0
- package/src/concepts/IfStatement__.ts +3 -0
- package/src/concepts/InterfaceParam__.ts +3 -0
- package/src/concepts/Interface__.ts +61 -0
- package/src/concepts/JSBlock__.ts +3 -0
- package/src/concepts/LogicItem__.ts +4 -5
- package/src/concepts/Logic__.ts +111 -34
- package/src/concepts/MatchCase__.ts +3 -0
- package/src/concepts/Match__.ts +77 -2
- package/src/concepts/MemberExpression__.ts +3 -0
- package/src/concepts/Module__.ts +40 -2
- package/src/concepts/Namespace__.ts +3 -0
- package/src/concepts/NewComposite__.ts +18 -1
- package/src/concepts/NewList__.ts +3 -0
- package/src/concepts/NewMap__.ts +14 -1
- package/src/concepts/New__.ts +3 -0
- package/src/concepts/NullLiteral__.ts +3 -0
- package/src/concepts/NumericLiteral__.ts +7 -18
- package/src/concepts/OqlQueryComponent__.ts +10 -0
- package/src/concepts/Param__.ts +3 -0
- package/src/concepts/Point__.ts +3 -0
- package/src/concepts/ProcessComponent__.ts +3 -0
- package/src/concepts/ProcessElement__.ts +3 -0
- package/src/concepts/ProcessOutcome__.ts +3 -0
- package/src/concepts/ProcessOutcomes__.ts +3 -0
- package/src/concepts/Process__.ts +3 -0
- package/src/concepts/QueryAggregateExpression__.ts +3 -0
- package/src/concepts/QueryFieldExpression__.ts +3 -0
- package/src/concepts/QueryFromExpression__.ts +3 -0
- package/src/concepts/QueryGroupByExpression__.ts +3 -0
- package/src/concepts/QueryJoinExpression__.ts +3 -0
- package/src/concepts/QueryLimitExpression__.ts +3 -0
- package/src/concepts/QueryOrderByExpression__.ts +3 -0
- package/src/concepts/QuerySelectExpression__.ts +3 -0
- package/src/concepts/Rect__.ts +3 -8
- package/src/concepts/Return__.ts +3 -0
- package/src/concepts/Role__.ts +3 -0
- package/src/concepts/SelectMembers__.ts +3 -0
- package/src/concepts/Slot__.ts +3 -0
- package/src/concepts/SqlQueryComponent__.ts +3 -0
- package/src/concepts/Start__.ts +3 -0
- package/src/concepts/StringInterpolation__.ts +3 -0
- package/src/concepts/StringLiteral__.ts +3 -0
- package/src/concepts/StructureProperty__.ts +21 -0
- package/src/concepts/Structure__.ts +3 -0
- package/src/concepts/SwitchCase__.ts +3 -0
- package/src/concepts/SwitchStatement__.ts +3 -0
- package/src/concepts/Theme__.ts +3 -0
- package/src/concepts/Transactional__.ts +3 -0
- package/src/concepts/TypeAnnotation__.ts +37 -50
- package/src/concepts/TypeParam__.ts +3 -0
- package/src/concepts/UnaryExpression__.ts +3 -0
- package/src/concepts/Unparsed__.ts +3 -0
- package/src/concepts/UseComponent__.ts +3 -0
- package/src/concepts/ValidationRule__.ts +3 -0
- package/src/concepts/Variable__.ts +3 -0
- package/src/concepts/ViewBlock__.ts +3 -0
- package/src/concepts/ViewComponent__.ts +3 -0
- package/src/concepts/ViewElement__.ts +17 -28
- package/src/concepts/View__.ts +20 -1
- package/src/concepts/WhileStatement__.ts +3 -0
- package/src/concepts/basics/stdlib/dist/nasl.util.js +1602 -0
- package/src/concepts/basics/stdlib/dist/reference2TypeAnnotationList.js +24 -0
- package/src/concepts/basics/stdlib/nasl.collection.ts +2 -2
- package/src/concepts/basics/stdlib/nasl.core.ts +3 -3
- package/src/concepts/basics/stdlib/nasl.interface.ts +1 -1
- package/src/concepts/basics/stdlib/nasl.process.ts +6 -6
- package/src/concepts/basics/stdlib/nasl.ui.ts +56 -43
- package/src/concepts/basics/stdlib/nasl.util.ts +46 -19
- package/src/concepts/basics/stdlib/nasl.validation.ts +13 -13
- package/src/concepts/basics/types/coreTypeList.ts +1 -5
- package/src/concepts/dist/BindAttribute__.js +795 -0
- package/src/concepts/dist/BindEvent__.js +732 -0
- package/src/concepts/dist/CallFunction__.js +527 -0
- package/src/concepts/dist/CallLogic__.js +932 -0
- package/src/concepts/dist/Destination__.js +708 -0
- package/src/concepts/dist/ExternalDestination__.js +298 -0
- package/src/concepts/dist/Identifier__.js +311 -0
- package/src/concepts/dist/StringInterpolation__.js +231 -0
- package/src/concepts/dist/TypeAnnotation__.js +834 -0
- package/src/concepts/dist/ViewElement__.js +1692 -0
- package/src/concepts/dist/View__.js +1601 -0
- package/src/concepts/index__.ts +2 -0
- package/src/decorators/index.ts +5 -5
- package/src/generator/dist/genBundleFiles.js +261 -0
- package/src/generator/dist/genMetaData.js +245 -0
- package/src/generator/dist/permission.js +405 -0
- package/src/generator/genBundleFiles.ts +10 -8
- package/src/generator/genReleaseBody.ts +3 -1
- package/src/server/entity2LogicNamespace.ts +1 -1
- package/src/server/extendBaseNode.ts +12 -0
- package/src/server/formatTsUtils.ts +3 -2
- package/src/server/getMemberIdentifier.ts +5 -2
- package/src/server/naslServer.ts +109 -56
- package/src/server/translator.ts +1 -1
- package/src/service/creator/add.configs.js +3 -0
- package/src/service/creator/index.js +3 -0
- package/src/service/storage/api.js +12 -0
- package/src/service/storage/dist/init.js +579 -0
- package/src/service/storage/init.ts +212 -44
- package/src/service/storage/service.ts +29 -1
- package/src/templator/dist/genEditTableBlock.js +204 -0
- package/src/templator/dist/genGridViewBlock.js +265 -0
- package/src/templator/dist/genListViewBlock.js +84 -0
- package/src/templator/dist/genTableBlock.js +209 -0
- package/src/templator/dist/utils.js +527 -0
- package/src/templator/genEditTableBlock.ts +1 -1
- package/src/templator/genQueryComponent.ts +5 -5
- package/src/templator/genTableBlock.ts +2 -2
- package/src/templator/utils.ts +7 -7
- package/ts-worker/lib/Messager.js +7 -2
- package/ts-worker/src/index.js +1 -0
- package/out/automate/engine/2.14-components.d.ts +0 -1115
- package/out/automate/engine/2.14-components.js +0 -1087
- package/out/automate/engine/2.14-components.js.map +0 -1
- package/yarn-error.log +0 -2087
|
@@ -94,6 +94,9 @@ export class InterfaceParam extends BaseNode {
|
|
|
94
94
|
super(source);
|
|
95
95
|
super.subConstructor(source);
|
|
96
96
|
}
|
|
97
|
+
getClassName() {
|
|
98
|
+
return 'InterfaceParam';
|
|
99
|
+
}
|
|
97
100
|
|
|
98
101
|
static from(source: any, parentNode?: any, parentKey?: string): InterfaceParam {
|
|
99
102
|
return super.from(source, parentNode, parentKey) as InterfaceParam;
|
|
@@ -2,6 +2,7 @@ import { TranslatorState, shiftState, withSourceMap, createCompilerState } from
|
|
|
2
2
|
import Namespace from './Namespace__';
|
|
3
3
|
import TypeAnnotation from './TypeAnnotation__';
|
|
4
4
|
import Structure from './Structure__';
|
|
5
|
+
import Param from './Param__';
|
|
5
6
|
//================================================================================
|
|
6
7
|
// 从这里开始到结尾注释之间的代码由 NASL Workbench 自动生成,请不手动修改!
|
|
7
8
|
// ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
|
|
@@ -92,6 +93,9 @@ export class Interface extends BaseNode {
|
|
|
92
93
|
super(source);
|
|
93
94
|
super.subConstructor(source);
|
|
94
95
|
}
|
|
96
|
+
getClassName() {
|
|
97
|
+
return 'Interface';
|
|
98
|
+
}
|
|
95
99
|
|
|
96
100
|
static from(source: any, parentNode?: any, parentKey?: string): Interface {
|
|
97
101
|
return super.from(source, parentNode, parentKey) as Interface;
|
|
@@ -514,6 +518,18 @@ export class Interface extends BaseNode {
|
|
|
514
518
|
// 自动生成的代码已结束。下面可以手动编写。
|
|
515
519
|
//================================================================================
|
|
516
520
|
|
|
521
|
+
/**
|
|
522
|
+
* 协议
|
|
523
|
+
*/
|
|
524
|
+
@property()
|
|
525
|
+
protocol: string = undefined;
|
|
526
|
+
|
|
527
|
+
/**
|
|
528
|
+
* 协议参数列表
|
|
529
|
+
*/
|
|
530
|
+
@property('Param')
|
|
531
|
+
protocolParams: Array<Param> = [];
|
|
532
|
+
|
|
517
533
|
/**
|
|
518
534
|
* 是否可编辑
|
|
519
535
|
* */
|
|
@@ -545,6 +561,21 @@ export class Interface extends BaseNode {
|
|
|
545
561
|
});
|
|
546
562
|
}
|
|
547
563
|
|
|
564
|
+
// 更新所有调用接口
|
|
565
|
+
async updateAllRefCallInterface() {
|
|
566
|
+
const refs = await this.findUsage();
|
|
567
|
+
refs.forEach((val: any) => {
|
|
568
|
+
const loopFindNode = (item: any) => {
|
|
569
|
+
if (item.children) {
|
|
570
|
+
item.children.forEach((i: any) => loopFindNode(i));
|
|
571
|
+
} else {
|
|
572
|
+
item.node.setCallee(this);
|
|
573
|
+
}
|
|
574
|
+
};
|
|
575
|
+
loopFindNode(val);
|
|
576
|
+
});
|
|
577
|
+
}
|
|
578
|
+
|
|
548
579
|
/* 删除空数据模块 */
|
|
549
580
|
deleteLogincAndModule() {
|
|
550
581
|
this.rootNode.emit('collect:start', {
|
|
@@ -823,6 +854,36 @@ export class Interface extends BaseNode {
|
|
|
823
854
|
return [...this.params, ...this.returns].filter((item) => !excludedSet.has(item)).map((item) => item.name);
|
|
824
855
|
}
|
|
825
856
|
|
|
857
|
+
// 递归找出 response/request 的 Body/Returns 引用的数据结构
|
|
858
|
+
getRefStructures(structures: Structure[] = []): Set<Structure> {
|
|
859
|
+
const structuresSet: Set<Structure> = new Set();
|
|
860
|
+
const loopSaveStructure = (typeAnnotation: TypeAnnotation) => {
|
|
861
|
+
if (!typeAnnotation)
|
|
862
|
+
return;
|
|
863
|
+
if (typeAnnotation.typeKind === 'reference') {
|
|
864
|
+
const targetStructure = structures.find((s) => s.name === typeAnnotation.typeName);
|
|
865
|
+
if (targetStructure && !structuresSet.has(targetStructure)) {
|
|
866
|
+
structuresSet.add(targetStructure);
|
|
867
|
+
targetStructure?.properties.forEach((prop) => {
|
|
868
|
+
loopSaveStructure(prop.typeAnnotation);
|
|
869
|
+
});
|
|
870
|
+
}
|
|
871
|
+
} else if (typeAnnotation.typeKind === 'generic') {
|
|
872
|
+
typeAnnotation.typeArguments.forEach(loopSaveStructure);
|
|
873
|
+
}
|
|
874
|
+
};
|
|
875
|
+
|
|
876
|
+
const { params = [], returns = [] } = this;
|
|
877
|
+
[...params, ...returns].forEach((p) => {
|
|
878
|
+
if ('in' in p && p.in === 'cookie') {
|
|
879
|
+
p.in = 'header';
|
|
880
|
+
return;
|
|
881
|
+
}
|
|
882
|
+
loopSaveStructure(p?.typeAnnotation);
|
|
883
|
+
});
|
|
884
|
+
return structuresSet;
|
|
885
|
+
}
|
|
886
|
+
|
|
826
887
|
//================================================================================
|
|
827
888
|
// 从这里开始到结尾注释之间的代码由 NASL Workbench 自动生成,请不手动修改!
|
|
828
889
|
// ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
|
|
@@ -45,6 +45,9 @@ export class JSBlock extends LogicItem {
|
|
|
45
45
|
super(source);
|
|
46
46
|
super.subConstructor(source);
|
|
47
47
|
}
|
|
48
|
+
getClassName() {
|
|
49
|
+
return 'JSBlock';
|
|
50
|
+
}
|
|
48
51
|
|
|
49
52
|
static from(source: any, parentNode?: any, parentKey?: string): JSBlock {
|
|
50
53
|
return super.from(source, parentNode, parentKey) as JSBlock;
|
|
@@ -30,7 +30,7 @@ export class LogicItem extends BaseNode {
|
|
|
30
30
|
* 产品概念
|
|
31
31
|
*/
|
|
32
32
|
@property()
|
|
33
|
-
concept: 'LogicItem' | 'Start' | 'End' | 'IfStatement' | 'SwitchStatement' | 'SwitchCase' | 'ForEachStatement' | 'WhileStatement' | 'Assignment' | 'BatchAssignment' | 'Comment' | 'CallLogic' | 'CallFunction' | 'CallInterface' | 'Destination' | 'ExternalDestination' | 'ValidationRule' | 'Argument' | 'Anchor' | 'JSBlock' | 'Identifier' | 'NullLiteral' | 'BooleanLiteral' | 'StringLiteral' | 'StringInterpolation' | 'NumericLiteral' | 'BinaryExpression' | 'MatchCase' | 'Match' | 'UnaryExpression' | 'MemberExpression' | 'Unparsed' | 'New' | 'NewComposite' | 'NewList' | 'NewMap' | 'CallQueryComponent' | 'QueryFromExpression' | 'QueryJoinExpression' | 'QueryFieldExpression' | 'QueryAggregateExpression' | 'QueryOrderByExpression' | 'QueryGroupByExpression' | 'QuerySelectExpression' | 'QueryLimitExpression' | 'SqlQueryComponent' | 'OqlQueryComponent' | 'ProcessOutcome' | 'Assignee' | 'ProcessOutcomes' = 'LogicItem';
|
|
33
|
+
concept: 'LogicItem' | 'Abort' | 'Start' | 'End' | 'IfStatement' | 'SwitchStatement' | 'SwitchCase' | 'ForEachStatement' | 'WhileStatement' | 'Assignment' | 'BatchAssignment' | 'Comment' | 'CallLogic' | 'CallFunction' | 'CallInterface' | 'Destination' | 'ExternalDestination' | 'ValidationRule' | 'Argument' | 'Anchor' | 'JSBlock' | 'Identifier' | 'NullLiteral' | 'BooleanLiteral' | 'StringLiteral' | 'StringInterpolation' | 'NumericLiteral' | 'BinaryExpression' | 'MatchCase' | 'Match' | 'UnaryExpression' | 'MemberExpression' | 'Unparsed' | 'New' | 'NewComposite' | 'NewList' | 'NewMap' | 'CallQueryComponent' | 'QueryFromExpression' | 'QueryJoinExpression' | 'QueryFieldExpression' | 'QueryAggregateExpression' | 'QueryOrderByExpression' | 'QueryGroupByExpression' | 'QuerySelectExpression' | 'QueryLimitExpression' | 'SqlQueryComponent' | 'OqlQueryComponent' | 'ProcessOutcome' | 'Assignee' | 'ProcessOutcomes' | 'NewList' = 'LogicItem';
|
|
34
34
|
|
|
35
35
|
/**
|
|
36
36
|
* 逻辑项标题
|
|
@@ -113,6 +113,9 @@ export class LogicItem extends BaseNode {
|
|
|
113
113
|
super(source);
|
|
114
114
|
super.subConstructor(source);
|
|
115
115
|
}
|
|
116
|
+
getClassName() {
|
|
117
|
+
return 'LogicItem';
|
|
118
|
+
}
|
|
116
119
|
|
|
117
120
|
static from(source: any, parentNode?: any, parentKey?: string): LogicItem {
|
|
118
121
|
return super.from(source, parentNode, parentKey) as LogicItem;
|
|
@@ -165,10 +168,6 @@ export class LogicItem extends BaseNode {
|
|
|
165
168
|
});
|
|
166
169
|
}
|
|
167
170
|
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
171
|
//================================================================================
|
|
173
172
|
// ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
|
|
174
173
|
// 自动生成的代码已结束。下面可以手动编写。
|
package/src/concepts/Logic__.ts
CHANGED
|
@@ -166,6 +166,9 @@ export class Logic extends BaseNode {
|
|
|
166
166
|
super(source);
|
|
167
167
|
super.subConstructor(source);
|
|
168
168
|
}
|
|
169
|
+
getClassName() {
|
|
170
|
+
return 'Logic';
|
|
171
|
+
}
|
|
169
172
|
|
|
170
173
|
static from(source: any, parentNode?: any, parentKey?: string): Logic {
|
|
171
174
|
return super.from(source, parentNode, parentKey) as Logic;
|
|
@@ -246,7 +249,7 @@ export class Logic extends BaseNode {
|
|
|
246
249
|
});
|
|
247
250
|
}
|
|
248
251
|
|
|
249
|
-
|
|
252
|
+
getTypeParamExistingNames(excludedList: Array<TypeParam> = []) {
|
|
250
253
|
const excludedSet = new Set(excludedList);
|
|
251
254
|
return ((this.typeParams as TypeParam[]) || []).filter((item) => !excludedSet.has(item)).map((item) => item.name);
|
|
252
255
|
}
|
|
@@ -387,6 +390,7 @@ export class Logic extends BaseNode {
|
|
|
387
390
|
return node;
|
|
388
391
|
}
|
|
389
392
|
|
|
393
|
+
|
|
390
394
|
getParamUniqueName(name = 'param1') {
|
|
391
395
|
return utils.unique(name, this.getVarExistingNames(), undefined, false);
|
|
392
396
|
}
|
|
@@ -524,6 +528,7 @@ export class Logic extends BaseNode {
|
|
|
524
528
|
return node;
|
|
525
529
|
}
|
|
526
530
|
|
|
531
|
+
|
|
527
532
|
getReturnUniqueName(name = 'result') {
|
|
528
533
|
return utils.unique(name, this.getVarExistingNames(), undefined, false);
|
|
529
534
|
}
|
|
@@ -661,6 +666,7 @@ export class Logic extends BaseNode {
|
|
|
661
666
|
return node;
|
|
662
667
|
}
|
|
663
668
|
|
|
669
|
+
|
|
664
670
|
getVariableUniqueName(name = 'variable1') {
|
|
665
671
|
return utils.unique(name, this.getVarExistingNames(), undefined, false);
|
|
666
672
|
}
|
|
@@ -798,6 +804,11 @@ export class Logic extends BaseNode {
|
|
|
798
804
|
return node;
|
|
799
805
|
}
|
|
800
806
|
|
|
807
|
+
|
|
808
|
+
|
|
809
|
+
|
|
810
|
+
|
|
811
|
+
|
|
801
812
|
/**
|
|
802
813
|
* 插入逻辑项
|
|
803
814
|
* @internal
|
|
@@ -830,6 +841,8 @@ export class Logic extends BaseNode {
|
|
|
830
841
|
return logicItem;
|
|
831
842
|
}
|
|
832
843
|
|
|
844
|
+
|
|
845
|
+
|
|
833
846
|
/**
|
|
834
847
|
* 插入逻辑项
|
|
835
848
|
* @param logicItemOptions 逻辑项参数
|
|
@@ -852,6 +865,8 @@ export class Logic extends BaseNode {
|
|
|
852
865
|
return node;
|
|
853
866
|
}
|
|
854
867
|
|
|
868
|
+
|
|
869
|
+
|
|
855
870
|
/**
|
|
856
871
|
* 添加逻辑项
|
|
857
872
|
* @internal
|
|
@@ -871,6 +886,8 @@ export class Logic extends BaseNode {
|
|
|
871
886
|
return this._insertItemInBodyAt(options as any, index);
|
|
872
887
|
}
|
|
873
888
|
|
|
889
|
+
|
|
890
|
+
|
|
874
891
|
/**
|
|
875
892
|
* 添加逻辑项
|
|
876
893
|
* @param logicItemOptions 逻辑项参数
|
|
@@ -894,6 +911,8 @@ export class Logic extends BaseNode {
|
|
|
894
911
|
return node;
|
|
895
912
|
}
|
|
896
913
|
|
|
914
|
+
|
|
915
|
+
|
|
897
916
|
/**
|
|
898
917
|
* 插入逻辑项
|
|
899
918
|
* @internal
|
|
@@ -926,6 +945,8 @@ export class Logic extends BaseNode {
|
|
|
926
945
|
return logicItem;
|
|
927
946
|
}
|
|
928
947
|
|
|
948
|
+
|
|
949
|
+
|
|
929
950
|
/**
|
|
930
951
|
* 插入逻辑项
|
|
931
952
|
* @param logicItemOptions 逻辑项参数
|
|
@@ -948,6 +969,8 @@ export class Logic extends BaseNode {
|
|
|
948
969
|
return node;
|
|
949
970
|
}
|
|
950
971
|
|
|
972
|
+
|
|
973
|
+
|
|
951
974
|
/**
|
|
952
975
|
* 添加逻辑项
|
|
953
976
|
* @internal
|
|
@@ -967,6 +990,8 @@ export class Logic extends BaseNode {
|
|
|
967
990
|
return this._insertItemInPlaygroundAt(options as any, index);
|
|
968
991
|
}
|
|
969
992
|
|
|
993
|
+
|
|
994
|
+
|
|
970
995
|
/**
|
|
971
996
|
* 添加逻辑项
|
|
972
997
|
* @param logicItemOptions 逻辑项参数
|
|
@@ -990,6 +1015,9 @@ export class Logic extends BaseNode {
|
|
|
990
1015
|
return node;
|
|
991
1016
|
}
|
|
992
1017
|
|
|
1018
|
+
|
|
1019
|
+
|
|
1020
|
+
|
|
993
1021
|
/**
|
|
994
1022
|
* 删除事务
|
|
995
1023
|
* @param name 事务名称
|
|
@@ -1038,6 +1066,8 @@ export class Logic extends BaseNode {
|
|
|
1038
1066
|
return params;
|
|
1039
1067
|
}
|
|
1040
1068
|
|
|
1069
|
+
|
|
1070
|
+
|
|
1041
1071
|
/**
|
|
1042
1072
|
* 删除类型参数
|
|
1043
1073
|
* @param name 类型参数名称
|
|
@@ -1086,6 +1116,8 @@ export class Logic extends BaseNode {
|
|
|
1086
1116
|
return params;
|
|
1087
1117
|
}
|
|
1088
1118
|
|
|
1119
|
+
|
|
1120
|
+
|
|
1089
1121
|
/**
|
|
1090
1122
|
* 删除输入参数
|
|
1091
1123
|
* @param name 输入参数名称
|
|
@@ -1134,6 +1166,8 @@ export class Logic extends BaseNode {
|
|
|
1134
1166
|
return params;
|
|
1135
1167
|
}
|
|
1136
1168
|
|
|
1169
|
+
|
|
1170
|
+
|
|
1137
1171
|
/**
|
|
1138
1172
|
* 删除输出参数
|
|
1139
1173
|
* @param name 输出参数名称
|
|
@@ -1182,6 +1216,8 @@ export class Logic extends BaseNode {
|
|
|
1182
1216
|
return params;
|
|
1183
1217
|
}
|
|
1184
1218
|
|
|
1219
|
+
|
|
1220
|
+
|
|
1185
1221
|
/**
|
|
1186
1222
|
* 删除变量
|
|
1187
1223
|
* @param name 变量名称
|
|
@@ -1230,6 +1266,8 @@ export class Logic extends BaseNode {
|
|
|
1230
1266
|
return params;
|
|
1231
1267
|
}
|
|
1232
1268
|
|
|
1269
|
+
|
|
1270
|
+
|
|
1233
1271
|
/**
|
|
1234
1272
|
* 删除逻辑项
|
|
1235
1273
|
* @param logicItem 已有的逻辑项实例
|
|
@@ -1237,10 +1275,12 @@ export class Logic extends BaseNode {
|
|
|
1237
1275
|
removeItemInBody(logicItem: LogicItem): void;
|
|
1238
1276
|
|
|
1239
1277
|
removeItemInBody(options: LogicItem) {
|
|
1240
|
-
|
|
1278
|
+
let logicItem: LogicItem = options;
|
|
1241
1279
|
return logicItem.delete();
|
|
1242
1280
|
}
|
|
1243
1281
|
|
|
1282
|
+
|
|
1283
|
+
|
|
1244
1284
|
/**
|
|
1245
1285
|
* 删除逻辑项
|
|
1246
1286
|
* @param logicItem 已有的逻辑项实例
|
|
@@ -1248,7 +1288,7 @@ export class Logic extends BaseNode {
|
|
|
1248
1288
|
removeItemInPlayground(logicItem: LogicItem): void;
|
|
1249
1289
|
|
|
1250
1290
|
removeItemInPlayground(options: LogicItem) {
|
|
1251
|
-
|
|
1291
|
+
let logicItem: LogicItem = options;
|
|
1252
1292
|
return logicItem.delete();
|
|
1253
1293
|
}
|
|
1254
1294
|
|
|
@@ -1648,14 +1688,12 @@ export class Logic extends BaseNode {
|
|
|
1648
1688
|
Promise.all(needGetSourceMapOqlList).then(() => {
|
|
1649
1689
|
// 触发一下更新重新生成代码
|
|
1650
1690
|
(this.app as any)?.naslServer?.embeddedTSEmitter.emit('change', {
|
|
1651
|
-
value: [
|
|
1652
|
-
{
|
|
1653
|
-
|
|
1654
|
-
|
|
1655
|
-
target: this,
|
|
1656
|
-
},
|
|
1691
|
+
value: [{
|
|
1692
|
+
originEvent: {
|
|
1693
|
+
action: 'update',
|
|
1694
|
+
target: this,
|
|
1657
1695
|
},
|
|
1658
|
-
],
|
|
1696
|
+
}],
|
|
1659
1697
|
});
|
|
1660
1698
|
});
|
|
1661
1699
|
}
|
|
@@ -1667,13 +1705,11 @@ export class Logic extends BaseNode {
|
|
|
1667
1705
|
code += '{\n';
|
|
1668
1706
|
|
|
1669
1707
|
// 用于虚拟节点的查找引用
|
|
1670
|
-
this.virtualParams
|
|
1671
|
-
|
|
1672
|
-
|
|
1673
|
-
|
|
1674
|
-
|
|
1675
|
-
code += '\n';
|
|
1676
|
-
});
|
|
1708
|
+
this.virtualParams && Array.isArray(this.virtualParams) && this.virtualParams.forEach((param) => {
|
|
1709
|
+
code += indent((state?.tabSize || 0) + 1);
|
|
1710
|
+
code += param.toEmbeddedNameTS(shiftState(state, code, { inline: true }));
|
|
1711
|
+
code += '\n';
|
|
1712
|
+
});
|
|
1677
1713
|
|
|
1678
1714
|
this.variables.forEach((variable) => {
|
|
1679
1715
|
if (!advanceMap.get(variable)) {
|
|
@@ -1697,12 +1733,12 @@ export class Logic extends BaseNode {
|
|
|
1697
1733
|
code += node.toEmbeddedTS(shiftState(state, code, { inline: true }));
|
|
1698
1734
|
if (assignment instanceof BatchAssignment) {
|
|
1699
1735
|
assignment.assignmentLines.forEach(({ leftIndex, rightIndex }) => {
|
|
1700
|
-
const leftCode
|
|
1701
|
-
= leftIndex.length === 1 ? assignment.left.expression.toEmbeddedTS(shiftState(state, code, { inline: true })) : assignment.left.members[leftIndex[1]]?.toEmbeddedTS(shiftState(state, code, { inline: true }));
|
|
1736
|
+
const leftCode = leftIndex.length === 1 ? assignment.left.expression.toEmbeddedTS(shiftState(state, code, { inline: true })) : assignment.left.members[leftIndex[1]]?.toEmbeddedTS(shiftState(state, code, { inline: true }));
|
|
1702
1737
|
if (leftCode === node.name) {
|
|
1703
1738
|
const rightNode: any = rightIndex.length === 1 ? assignment.rights[rightIndex[0]]?.expression : assignment.rights[rightIndex[0]]?.members[rightIndex[1]];
|
|
1704
1739
|
// 当右边有明确类型时,直接使用其类型。旧版本数据查询不能直接使用其 typeAnnotation
|
|
1705
|
-
if (rightNode?.typeAnnotation
|
|
1740
|
+
if (rightNode?.typeAnnotation
|
|
1741
|
+
&& !(rightNode instanceof CallQueryComponent && rightNode.ideVersion !== '2.11')) {
|
|
1706
1742
|
code += ': ';
|
|
1707
1743
|
code += rightNode.typeAnnotation?.toEmbeddedTS(shiftState(state, code, { inline: true })) || 'null';
|
|
1708
1744
|
} else {
|
|
@@ -1723,7 +1759,8 @@ export class Logic extends BaseNode {
|
|
|
1723
1759
|
} else {
|
|
1724
1760
|
const rightNode: any = assignment.right;
|
|
1725
1761
|
// 当右边有明确类型时,直接使用其类型。旧版本数据查询不能直接使用其 typeAnnotation
|
|
1726
|
-
if (rightNode?.typeAnnotation
|
|
1762
|
+
if (rightNode?.typeAnnotation
|
|
1763
|
+
&& !(rightNode instanceof CallQueryComponent && rightNode.ideVersion !== '2.11')) {
|
|
1727
1764
|
code += ': ';
|
|
1728
1765
|
code += rightNode.typeAnnotation?.toEmbeddedTS(shiftState(state, code, { inline: true })) || 'null';
|
|
1729
1766
|
} else {
|
|
@@ -1733,7 +1770,7 @@ export class Logic extends BaseNode {
|
|
|
1733
1770
|
if (rightNode && rightNode instanceof Identifier && rightNode.namespace && rightNode.namespace.endsWith('enums')) {
|
|
1734
1771
|
rightCode += 'new ';
|
|
1735
1772
|
}
|
|
1736
|
-
rightCode += rightNode && rightNode.toEmbeddedTS ? rightNode.toEmbeddedTS(shiftState(state, code, { inline: true })) : '__RIGHT__';
|
|
1773
|
+
rightCode += (rightNode && rightNode.toEmbeddedTS) ? rightNode.toEmbeddedTS(shiftState(state, code, { inline: true })) : '__RIGHT__';
|
|
1737
1774
|
code += this.getRightCode(rightCode, assignment, rightNode);
|
|
1738
1775
|
}
|
|
1739
1776
|
}
|
|
@@ -1834,7 +1871,7 @@ export class Logic extends BaseNode {
|
|
|
1834
1871
|
code = this.handleReplaceCode(code, item.name, eachTSCode === '__IDENTIFIER__' ? eachTSCode : `${eachTSCode}.__get(0)`);
|
|
1835
1872
|
}
|
|
1836
1873
|
if (code.includes(index.name))
|
|
1837
|
-
code = this.handleReplaceCode(code, index.name, 'new nasl.core.
|
|
1874
|
+
code = this.handleReplaceCode(code, index.name, 'new nasl.core.Long(0)');
|
|
1838
1875
|
|
|
1839
1876
|
const parentForEachStatement = forEachStatement.getAncestor('ForEachStatement') as ForEachStatement;
|
|
1840
1877
|
if (parentForEachStatement) {
|
|
@@ -1878,10 +1915,7 @@ export class Logic extends BaseNode {
|
|
|
1878
1915
|
arr.push(parentName);
|
|
1879
1916
|
}
|
|
1880
1917
|
let namespace = arr.join('.');
|
|
1881
|
-
if (
|
|
1882
|
-
!['nasl.ui', 'nasl.utils', 'nasl.util', 'nasl.browser', 'nasl.auth', 'nasl.configuration', 'nasl.process', 'nasl.logging', 'nasl.io'].includes(namespace)
|
|
1883
|
-
&& !namespace.includes('.logics')
|
|
1884
|
-
) {
|
|
1918
|
+
if (!['nasl.ui', 'nasl.utils', 'nasl.util', 'nasl.browser', 'nasl.auth', 'nasl.configuration', 'nasl.process', 'nasl.logging', 'nasl.io'].includes(namespace) && !namespace.includes('.logics')) {
|
|
1885
1919
|
namespace = `${namespace}.logics`;
|
|
1886
1920
|
}
|
|
1887
1921
|
return namespace;
|
|
@@ -1898,10 +1932,7 @@ export class Logic extends BaseNode {
|
|
|
1898
1932
|
arr.push(parentName);
|
|
1899
1933
|
}
|
|
1900
1934
|
let namespace = arr.join('.');
|
|
1901
|
-
if (
|
|
1902
|
-
!['nasl.ui', 'nasl.utils', 'nasl.util', 'nasl.browser', 'nasl.auth', 'nasl.configuration', 'nasl.process', 'nasl.logging', 'nasl.io'].includes(namespace)
|
|
1903
|
-
&& !namespace.includes('.logics')
|
|
1904
|
-
) {
|
|
1935
|
+
if (!['nasl.ui', 'nasl.utils', 'nasl.util', 'nasl.browser', 'nasl.auth', 'nasl.configuration', 'nasl.process', 'nasl.logging', 'nasl.io'].includes(namespace) && !namespace.includes('.logics')) {
|
|
1905
1936
|
namespace = `${namespace}.logics`;
|
|
1906
1937
|
}
|
|
1907
1938
|
return namespace;
|
|
@@ -2044,9 +2075,55 @@ export class Logic extends BaseNode {
|
|
|
2044
2075
|
// 虚拟输入参数列表
|
|
2045
2076
|
virtualParams: Array<Param> = [];
|
|
2046
2077
|
|
|
2047
|
-
|
|
2048
|
-
|
|
2049
|
-
|
|
2078
|
+
/* 零时用 需要删除*/
|
|
2079
|
+
addParamsFunction() {
|
|
2080
|
+
this.addParam({
|
|
2081
|
+
name: 'param5',
|
|
2082
|
+
typeAnnotation: TypeAnnotation.from({
|
|
2083
|
+
typeKind: 'function',
|
|
2084
|
+
typeName: 'String',
|
|
2085
|
+
typeNamespace: 'nasl.core',
|
|
2086
|
+
returnType: [TypeAnnotation.from({
|
|
2087
|
+
typeKind: 'primitive',
|
|
2088
|
+
typeName: 'Boolean',
|
|
2089
|
+
typeNamespace: 'nasl.core',
|
|
2090
|
+
})],
|
|
2091
|
+
typeArguments: [
|
|
2092
|
+
TypeAnnotation.from({
|
|
2093
|
+
typeKind: 'primitive',
|
|
2094
|
+
typeName: 'String',
|
|
2095
|
+
typeNamespace: 'nasl.core',
|
|
2096
|
+
}),
|
|
2097
|
+
TypeAnnotation.from({
|
|
2098
|
+
typeKind: 'primitive',
|
|
2099
|
+
typeName: 'Boolean',
|
|
2100
|
+
typeNamespace: 'nasl.core',
|
|
2101
|
+
}),
|
|
2102
|
+
],
|
|
2103
|
+
}),
|
|
2104
|
+
|
|
2105
|
+
});
|
|
2106
|
+
}
|
|
2107
|
+
|
|
2108
|
+
// 校验logic的返回值是不是有error类型
|
|
2109
|
+
static checkLogicReturnTypeHasError(logic: Logic) {
|
|
2110
|
+
let findHasError = false;
|
|
2111
|
+
if (!logic) {
|
|
2112
|
+
return findHasError;
|
|
2113
|
+
}
|
|
2114
|
+
if (logic.returns?.length && logic.returns[0]?.typeAnnotation) {
|
|
2115
|
+
// 如果新导入的logic还有Error类型
|
|
2116
|
+
const logicType = logic.returns[0].typeAnnotation;
|
|
2117
|
+
if (logicType.typeNamespace === 'nasl.ui' && logicType.typeName === 'Error') {
|
|
2118
|
+
findHasError = true;
|
|
2119
|
+
} else if (logicType.typeNamespace === 'nasl.core' && logicType.typeKind === 'union') {
|
|
2120
|
+
// 如果 logic 有 returns 而且,也有typeArguments的长度
|
|
2121
|
+
findHasError = Boolean(logicType.typeArguments?.find((item) => (
|
|
2122
|
+
item?.typeNamespace === 'nasl.ui' && item?.typeName === 'Error'
|
|
2123
|
+
)));
|
|
2124
|
+
}
|
|
2125
|
+
}
|
|
2126
|
+
return findHasError;
|
|
2050
2127
|
}
|
|
2051
2128
|
|
|
2052
2129
|
//================================================================================
|
|
@@ -58,6 +58,9 @@ export class MatchCase extends LogicItem {
|
|
|
58
58
|
super(source);
|
|
59
59
|
super.subConstructor(source);
|
|
60
60
|
}
|
|
61
|
+
getClassName() {
|
|
62
|
+
return 'MatchCase';
|
|
63
|
+
}
|
|
61
64
|
|
|
62
65
|
static from(source: any, parentNode?: any, parentKey?: string): MatchCase {
|
|
63
66
|
return super.from(source, parentNode, parentKey) as MatchCase;
|
package/src/concepts/Match__.ts
CHANGED
|
@@ -59,6 +59,9 @@ export class Match extends LogicItem {
|
|
|
59
59
|
super(source);
|
|
60
60
|
super.subConstructor(source);
|
|
61
61
|
}
|
|
62
|
+
getClassName() {
|
|
63
|
+
return 'Match';
|
|
64
|
+
}
|
|
62
65
|
|
|
63
66
|
static from(source: any, parentNode?: any, parentKey?: string): Match {
|
|
64
67
|
return super.from(source, parentNode, parentKey) as Match;
|
|
@@ -352,17 +355,89 @@ export class Match extends LogicItem {
|
|
|
352
355
|
|
|
353
356
|
// 设置 expression ,如果 expression 是可枚举类型,加上默认匹配条件
|
|
354
357
|
async setExpressionWitchCase(expression: LogicItem) {
|
|
358
|
+
const oldExpression = this.expression;
|
|
355
359
|
this.app.emit('collect:start', {
|
|
356
360
|
actionMsg: `修改${this?.name || this?.label || (this?.constructor as any)?.nodeTitle}`,
|
|
357
361
|
});
|
|
358
362
|
this.setExpression(expression);
|
|
359
363
|
// expression切换并且自动生成分支
|
|
360
|
-
await this.autoGenCases();
|
|
364
|
+
await this.autoGenCases(oldExpression);
|
|
361
365
|
this.app.emit('collect:end');
|
|
362
366
|
}
|
|
363
367
|
|
|
364
368
|
// 自动生成分支
|
|
365
|
-
async autoGenCases() {
|
|
369
|
+
async autoGenCases(oldExpression: LogicItem) {
|
|
370
|
+
const expression = this.expression;
|
|
371
|
+
// 没有新的expression要保留分支不去更新
|
|
372
|
+
if (!expression) {
|
|
373
|
+
return;
|
|
374
|
+
}
|
|
375
|
+
// 如果没有旧的oldExpression, 但是已有就分支了,就不去更新了
|
|
376
|
+
if (!oldExpression && this.cases.length) {
|
|
377
|
+
// 而且case的 patterns 有长度,就说明里面是有值的,就不去更新了,其余就去更新
|
|
378
|
+
if (this.cases.some((item) => item.patterns.length)) {
|
|
379
|
+
return;
|
|
380
|
+
}
|
|
381
|
+
}
|
|
382
|
+
// 如果新旧nasl一样,就算类型变了也不重新计算
|
|
383
|
+
if (JSON.stringify(oldExpression?.toJSON()) === JSON.stringify(expression?.toJSON())) {
|
|
384
|
+
return;
|
|
385
|
+
}
|
|
386
|
+
const oldTypeAnnotation = oldExpression?.__TypeAnnotation;
|
|
387
|
+
const currTypeAnnotation = await expression?.getCurrentTypeAnnotation();
|
|
388
|
+
|
|
389
|
+
// 如果nasl变了,但是新旧类型都是union就return
|
|
390
|
+
if (currTypeAnnotation?.typeKind === 'union' && oldTypeAnnotation?.typeKind === 'union') {
|
|
391
|
+
return;
|
|
392
|
+
}
|
|
393
|
+
|
|
394
|
+
// 如果不可枚举 变 不可枚举,都会保留分支
|
|
395
|
+
// 原来不是 布尔类型 也不是枚举类型, 现在 也不是布尔类型 也不是枚举类型
|
|
396
|
+
// 就满足了
|
|
397
|
+
if (expression && oldExpression && currTypeAnnotation && oldTypeAnnotation) {
|
|
398
|
+
const { typeName: oldTypeName, typeNamespace: oldTypeNamespace, typeKind: oldTypeKind } = oldTypeAnnotation;
|
|
399
|
+
const { typeName, typeNamespace, typeKind } = currTypeAnnotation;
|
|
400
|
+
// 类型的 name 和 namespace都有值,而且都不是 可枚举
|
|
401
|
+
if (oldTypeName && oldTypeNamespace && typeName && typeNamespace && oldTypeName !== 'Boolean' && !oldTypeNamespace.endsWith('enums') && oldTypeKind !== 'union' && typeName !== 'Boolean' && !typeNamespace.endsWith('enums') && typeKind !== 'union') {
|
|
402
|
+
return;
|
|
403
|
+
} else if (oldTypeName && oldTypeNamespace && oldTypeName !== 'Boolean' && !oldTypeNamespace.endsWith('enums') && oldTypeKind !== 'union' && typeKind === 'anonymousStructure') {
|
|
404
|
+
/**
|
|
405
|
+
* 新旧都是匿名数据结构
|
|
406
|
+
* 匿名到 可枚举 动
|
|
407
|
+
* 可枚举到匿名 动
|
|
408
|
+
* 匿名到 不可枚举 不动
|
|
409
|
+
* 不可枚举到匿名 不动
|
|
410
|
+
* 匿名到匿名 不动
|
|
411
|
+
* 因为不能在match上不能直接 匿名数据结构替换匿名数据结构
|
|
412
|
+
* 而且 匿名数据结构不能 直接换别的分支,所以下面的直留 不可枚举到匿名数据结构的情况
|
|
413
|
+
* */
|
|
414
|
+
// 不可枚举到匿名 不动
|
|
415
|
+
return;
|
|
416
|
+
} else if ((typeKind === 'anonymousStructure' && oldTypeKind === typeKind)) {
|
|
417
|
+
// 匿名到匿名 不动
|
|
418
|
+
return;
|
|
419
|
+
}
|
|
420
|
+
// else if (currTypeName && typeNamespace && currTypeName !== 'Boolean' && !typeNamespace.endsWith('enums') && oldTypeKind === 'anonymousStructure') {
|
|
421
|
+
// // 匿名到 不可枚举 不动
|
|
422
|
+
// return;
|
|
423
|
+
// }
|
|
424
|
+
}
|
|
425
|
+
|
|
426
|
+
// 修改分支
|
|
427
|
+
await this.changeGenCases();
|
|
428
|
+
}
|
|
429
|
+
// jflow缓存模式下的传过来参数
|
|
430
|
+
async autoGenCasesAST({ oldAst, cacheType }: any) {
|
|
431
|
+
let obj;
|
|
432
|
+
try {
|
|
433
|
+
obj = JSON.parse(oldAst);
|
|
434
|
+
} catch (err) {
|
|
435
|
+
}
|
|
436
|
+
const oldExpression = LogicItem.from(obj);
|
|
437
|
+
oldExpression.__TypeAnnotation = cacheType;
|
|
438
|
+
await this.autoGenCases(oldExpression);
|
|
439
|
+
}
|
|
440
|
+
async changeGenCases() {
|
|
366
441
|
const expression = this.expression;
|
|
367
442
|
const currTypeAnnotation = await expression?.getCurrentTypeAnnotation();
|
|
368
443
|
let cases: MatchCase[] = [];
|
|
@@ -54,6 +54,9 @@ export class MemberExpression extends LogicItem {
|
|
|
54
54
|
super(source);
|
|
55
55
|
super.subConstructor(source);
|
|
56
56
|
}
|
|
57
|
+
getClassName() {
|
|
58
|
+
return 'MemberExpression';
|
|
59
|
+
}
|
|
57
60
|
|
|
58
61
|
static from(source: any, parentNode?: any, parentKey?: string): MemberExpression {
|
|
59
62
|
return super.from(source, parentNode, parentKey) as MemberExpression;
|