@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
|
@@ -3,6 +3,7 @@ import { getConceptConstructor } from '../../decorators';
|
|
|
3
3
|
import { config } from '../../config';
|
|
4
4
|
import Vue from 'vue';
|
|
5
5
|
import storageService from './service';
|
|
6
|
+
import { v4 as uuidv4 } from 'uuid';
|
|
6
7
|
/// #if !process.env.NODE_ENV || process.env.BUILD_TARGET === 'node'
|
|
7
8
|
import * as fs from 'fs-extra';
|
|
8
9
|
import * as jsoner from './jsoner';
|
|
@@ -10,6 +11,9 @@ import * as jsoner from './jsoner';
|
|
|
10
11
|
|
|
11
12
|
export const batchQuery = storageService.batchQuery;
|
|
12
13
|
export const batchAction = storageService.batchAction;
|
|
14
|
+
export const batchInstruct = storageService.batchInstruct;
|
|
15
|
+
|
|
16
|
+
let tabTimestamp: string;
|
|
13
17
|
|
|
14
18
|
function getLogic(key: string, app: any, diffLogicList: string[]) {
|
|
15
19
|
if (!diffLogicList.includes(key)) {
|
|
@@ -88,7 +92,7 @@ function getStatement(state: any, app: any, diffLogicList: string[]) {
|
|
|
88
92
|
logicItems = [...state.expressions];
|
|
89
93
|
break;
|
|
90
94
|
case 'NewComposite':
|
|
91
|
-
logicItems = [...state.rights.map((item:SelectMembers) => item.expression)];
|
|
95
|
+
logicItems = [...state.rights.map((item: SelectMembers) => item.expression)];
|
|
92
96
|
break;
|
|
93
97
|
case 'NewList':
|
|
94
98
|
logicItems = [...state.items];
|
|
@@ -123,7 +127,6 @@ function getMiniAppChange(target: any, obj: any, action: string) {
|
|
|
123
127
|
* 执行更新
|
|
124
128
|
*/
|
|
125
129
|
async function doAction(app: any, actionItem: any) {
|
|
126
|
-
app.emit('saving');
|
|
127
130
|
let hasFrontEnd = false;
|
|
128
131
|
let hasBackEnd = false;
|
|
129
132
|
const actionList: any[] = [];
|
|
@@ -265,9 +268,188 @@ async function doAction(app: any, actionItem: any) {
|
|
|
265
268
|
}
|
|
266
269
|
} catch (error) {
|
|
267
270
|
console.log(error);
|
|
271
|
+
taskQueue.refreshNasl(app, {
|
|
272
|
+
errorInfo: {
|
|
273
|
+
message: error?.message,
|
|
274
|
+
stack: error?.stack,
|
|
275
|
+
},
|
|
276
|
+
});
|
|
277
|
+
return;
|
|
278
|
+
}
|
|
279
|
+
|
|
280
|
+
const instructList = [{
|
|
281
|
+
uuid: uuidv4().replace(/-/g, ''),
|
|
282
|
+
actions: actionList,
|
|
283
|
+
}];
|
|
284
|
+
saveNasl({app, hasFrontEnd, hasBackEnd, instructList });
|
|
285
|
+
|
|
286
|
+
if (!app._historying) {
|
|
287
|
+
if (app._historyIndex !== app._historyList.length) {
|
|
288
|
+
app._historyList = app._historyList.splice(0, app._historyIndex);
|
|
289
|
+
}
|
|
290
|
+
app._historyList.push({
|
|
291
|
+
actionMsg,
|
|
292
|
+
list: list.map((item: any) => item.originEvent),
|
|
293
|
+
});
|
|
294
|
+
app._historyIndex = app._historyList.length;
|
|
295
|
+
} else {
|
|
296
|
+
const actionMap = {
|
|
297
|
+
undo: '已撤销操作:',
|
|
298
|
+
redo: '已重做操作:',
|
|
299
|
+
};
|
|
300
|
+
let msg = actionMap[action as 'undo' | 'redo'];
|
|
301
|
+
msg += actionMsg;
|
|
302
|
+
Vue.prototype.$toast.info(msg);
|
|
303
|
+
app._historying = false;
|
|
304
|
+
}
|
|
305
|
+
}
|
|
306
|
+
|
|
307
|
+
type Instruct = {
|
|
308
|
+
uuid: string,
|
|
309
|
+
actions: any[],
|
|
310
|
+
};
|
|
311
|
+
type TaskOption = {
|
|
312
|
+
app: any,
|
|
313
|
+
hasFrontEnd: boolean,
|
|
314
|
+
hasBackEnd: boolean,
|
|
315
|
+
instructList: Instruct[],
|
|
316
|
+
};
|
|
317
|
+
enum TaskQueueStatus {
|
|
318
|
+
ExceedMaxTaskCount,
|
|
319
|
+
Retrying,
|
|
320
|
+
};
|
|
321
|
+
type RefreshNaslOptions = {
|
|
322
|
+
errorInfo: {
|
|
323
|
+
message?: string,
|
|
324
|
+
stack?: string,
|
|
325
|
+
}
|
|
326
|
+
};
|
|
327
|
+
|
|
328
|
+
class TaskQueue {
|
|
329
|
+
queue: TaskOption[] = []
|
|
330
|
+
lastQueue: TaskOption[] = []
|
|
331
|
+
running: Boolean = false
|
|
332
|
+
maxTaskCount: number = 10
|
|
333
|
+
status?: TaskQueueStatus = undefined
|
|
334
|
+
|
|
335
|
+
addTask(task: TaskOption) {
|
|
336
|
+
this.queue.push(task);
|
|
337
|
+
|
|
338
|
+
if(this.queue.length >= this.maxTaskCount) {
|
|
339
|
+
this.status = TaskQueueStatus.ExceedMaxTaskCount;
|
|
340
|
+
task.app.emit('ExceedMaxTaskCount');
|
|
341
|
+
}
|
|
342
|
+
|
|
343
|
+
this.run();
|
|
344
|
+
}
|
|
345
|
+
|
|
346
|
+
clear() {
|
|
347
|
+
this.queue = [];
|
|
348
|
+
this.lastQueue = [];
|
|
349
|
+
this.status = undefined;
|
|
350
|
+
this.running = false;
|
|
351
|
+
}
|
|
352
|
+
|
|
353
|
+
async run(queue = this.queue) {
|
|
354
|
+
if(this.running) return;
|
|
355
|
+
if(queue.length === 0) return;
|
|
356
|
+
|
|
357
|
+
const app = queue[0].app;
|
|
358
|
+
let hasFrontEnd = false;
|
|
359
|
+
let hasBackEnd = false;
|
|
360
|
+
let instructList: Instruct[] = [];
|
|
361
|
+
|
|
362
|
+
for(const task of queue) {
|
|
363
|
+
if(task.hasFrontEnd) hasFrontEnd = true;
|
|
364
|
+
if(task.hasBackEnd) hasBackEnd = true;
|
|
365
|
+
instructList = instructList.concat(task.instructList);
|
|
366
|
+
}
|
|
367
|
+
|
|
368
|
+
if(queue === this.queue) {
|
|
369
|
+
this.lastQueue = [...queue];
|
|
370
|
+
this.queue = [];
|
|
371
|
+
}
|
|
372
|
+
|
|
373
|
+
this.running = true;
|
|
374
|
+
const error = await _saveNasl({
|
|
375
|
+
app, hasFrontEnd, hasBackEnd, instructList,
|
|
376
|
+
});
|
|
377
|
+
|
|
378
|
+
// code: 401650, 检测到当前应用拉取操作已被强制结束, 用户确认后再刷新
|
|
379
|
+
// code: 500502 msg: "该应用已在新tab 页打开,请刷新!" 不重试或刷新
|
|
380
|
+
if(!error)
|
|
381
|
+
this.recover(app);
|
|
382
|
+
else if (![401650, 500502].includes(error.code)) {
|
|
383
|
+
// 连接失败,或超时,或后端持久化异常
|
|
384
|
+
if((error.message === 'Network Error' || error.message?.includes('timeout') || error.code === 500500)
|
|
385
|
+
&& this.status !== TaskQueueStatus.Retrying) {
|
|
386
|
+
this.running = false;
|
|
387
|
+
this.retry();
|
|
388
|
+
} else
|
|
389
|
+
this.refreshNasl(app);
|
|
390
|
+
|
|
391
|
+
return;
|
|
392
|
+
}
|
|
393
|
+
|
|
394
|
+
this.running = false;
|
|
395
|
+
|
|
396
|
+
this.run();
|
|
397
|
+
}
|
|
398
|
+
|
|
399
|
+
retry() {
|
|
400
|
+
if(this.lastQueue.length === 0) return;
|
|
401
|
+
|
|
402
|
+
const app = this.lastQueue[0].app;
|
|
403
|
+
this.status = TaskQueueStatus.Retrying;
|
|
404
|
+
app.emit('Retrying');
|
|
405
|
+
this.run(this.lastQueue);
|
|
406
|
+
}
|
|
407
|
+
|
|
408
|
+
async refreshNasl(app: App, options: RefreshNaslOptions = { errorInfo: {} }) {
|
|
409
|
+
const failedQueue = this.lastQueue.map(({ hasFrontEnd, hasBackEnd, instructList }) => ({
|
|
410
|
+
hasFrontEnd, hasBackEnd, instructList,
|
|
411
|
+
}));
|
|
412
|
+
const queue = this.queue.map(({ hasFrontEnd, hasBackEnd, instructList }) => ({
|
|
413
|
+
hasFrontEnd, hasBackEnd, instructList,
|
|
414
|
+
}));
|
|
415
|
+
await storageService.saveFrontendNasl({
|
|
416
|
+
body: {
|
|
417
|
+
frontendDataDTO: {
|
|
418
|
+
nasl: app.toJSON(),
|
|
419
|
+
failedQueue,
|
|
420
|
+
queue,
|
|
421
|
+
errorInfo: options.errorInfo,
|
|
422
|
+
},
|
|
423
|
+
},
|
|
424
|
+
}).catch((err: any) => {
|
|
425
|
+
console.log('备份 nasl 失败:', err);
|
|
426
|
+
});
|
|
427
|
+
this.clear();
|
|
268
428
|
app.emit('refresh');
|
|
269
429
|
}
|
|
270
430
|
|
|
431
|
+
recover(app: App) {
|
|
432
|
+
switch(this.status) {
|
|
433
|
+
case TaskQueueStatus.ExceedMaxTaskCount:
|
|
434
|
+
app.emit('BelowMaxTaskCount');
|
|
435
|
+
this.status = undefined;
|
|
436
|
+
break;
|
|
437
|
+
case TaskQueueStatus.Retrying:
|
|
438
|
+
app.emit('SuccessRetry');
|
|
439
|
+
this.status = undefined;
|
|
440
|
+
break;
|
|
441
|
+
}
|
|
442
|
+
}
|
|
443
|
+
}
|
|
444
|
+
|
|
445
|
+
export const taskQueue = new TaskQueue();
|
|
446
|
+
async function saveNasl(options: TaskOption) {
|
|
447
|
+
taskQueue.addTask(options);
|
|
448
|
+
}
|
|
449
|
+
|
|
450
|
+
async function _saveNasl(options: TaskOption) {
|
|
451
|
+
const { app, hasFrontEnd, hasBackEnd, instructList } = options;
|
|
452
|
+
app.emit('saving');
|
|
271
453
|
let ChangedNASLType = '';
|
|
272
454
|
if (hasFrontEnd && hasBackEnd) {
|
|
273
455
|
ChangedNASLType = 'both';
|
|
@@ -279,50 +461,35 @@ async function doAction(app: any, actionItem: any) {
|
|
|
279
461
|
let err;
|
|
280
462
|
if (config.storage.protocol === 'http') {
|
|
281
463
|
try {
|
|
282
|
-
await storageService.
|
|
283
|
-
body:
|
|
464
|
+
await storageService.batchInstruct({
|
|
465
|
+
body: instructList,
|
|
284
466
|
headers: {
|
|
285
467
|
appId: app.id,
|
|
286
468
|
ChangedNASLType,
|
|
469
|
+
tabTimestamp,
|
|
287
470
|
// 其他封装在 storageService 里了
|
|
288
471
|
},
|
|
289
472
|
});
|
|
290
473
|
} catch (error) {
|
|
291
474
|
err = error;
|
|
292
|
-
|
|
293
|
-
// 401650, 检测到当前应用拉取操作已被强制结束, 用户确认后再刷新
|
|
294
|
-
if (error?.code !== 401650)
|
|
295
|
-
app.emit('refresh');
|
|
296
475
|
}
|
|
297
476
|
} else if (config.storage.protocol === 'mock') {
|
|
298
477
|
// Do nothing
|
|
299
478
|
} else {
|
|
300
479
|
const json = await fs.readJSON(config.storage.basePath);
|
|
480
|
+
|
|
481
|
+
let actionList: any[] = [];
|
|
482
|
+
for(const { actions } of instructList) {
|
|
483
|
+
actionList = actionList.concat(actions);
|
|
484
|
+
}
|
|
485
|
+
|
|
301
486
|
jsoner.batchAction(json, actionList);
|
|
302
487
|
await fs.writeJSON(config.storage.basePath, json, {
|
|
303
488
|
spaces: 4,
|
|
304
489
|
});
|
|
305
490
|
}
|
|
306
491
|
app.emit('saved', err);
|
|
307
|
-
|
|
308
|
-
if (app._historyIndex !== app._historyList.length) {
|
|
309
|
-
app._historyList = app._historyList.splice(0, app._historyIndex);
|
|
310
|
-
}
|
|
311
|
-
app._historyList.push({
|
|
312
|
-
actionMsg,
|
|
313
|
-
list: list.map((item: any) => item.originEvent),
|
|
314
|
-
});
|
|
315
|
-
app._historyIndex = app._historyList.length;
|
|
316
|
-
} else {
|
|
317
|
-
const actionMap = {
|
|
318
|
-
undo: '已撤销操作:',
|
|
319
|
-
redo: '已重做操作:',
|
|
320
|
-
};
|
|
321
|
-
let msg = actionMap[action as 'undo' | 'redo'] || '';
|
|
322
|
-
msg += actionMsg;
|
|
323
|
-
Vue.prototype.$toast.info(msg);
|
|
324
|
-
app._historying = false;
|
|
325
|
-
}
|
|
492
|
+
return err;
|
|
326
493
|
}
|
|
327
494
|
|
|
328
495
|
export function handleApp(app: any) {
|
|
@@ -354,7 +521,11 @@ export function handleApp(app: any) {
|
|
|
354
521
|
if (!app._noTimer) {
|
|
355
522
|
app._timer = setTimeout(() => {
|
|
356
523
|
console.error('收集超时,请及时排查原因');
|
|
357
|
-
|
|
524
|
+
taskQueue.refreshNasl(app, {
|
|
525
|
+
errorInfo: {
|
|
526
|
+
message: '收集超时,请及时排查原因',
|
|
527
|
+
}
|
|
528
|
+
});
|
|
358
529
|
}, 2500);
|
|
359
530
|
}
|
|
360
531
|
if (!app._isCollectingCount) {
|
|
@@ -382,7 +553,7 @@ export function handleApp(app: any) {
|
|
|
382
553
|
app._action = '';
|
|
383
554
|
app._noTimer = undefined;
|
|
384
555
|
if (Array.isArray(collectingList) && collectingList.length) {
|
|
385
|
-
app.naslServer
|
|
556
|
+
app.naslServer?.embeddedTSEmitter?.emit('change', {
|
|
386
557
|
value: collectingList,
|
|
387
558
|
});
|
|
388
559
|
await doAction(app, {
|
|
@@ -403,7 +574,7 @@ export function handleApp(app: any) {
|
|
|
403
574
|
app.on('storage', (event: any) => {
|
|
404
575
|
// 是否正在收集
|
|
405
576
|
if (app._isCollectingCount === 0) {
|
|
406
|
-
app.naslServer
|
|
577
|
+
app.naslServer?.embeddedTSEmitter?.emit('change', {
|
|
407
578
|
value: [event],
|
|
408
579
|
});
|
|
409
580
|
let actionMsg = '';
|
|
@@ -443,7 +614,7 @@ export async function loadApp(appId?: string) {
|
|
|
443
614
|
let app: App;
|
|
444
615
|
if (config.storage.protocol === 'http') {
|
|
445
616
|
// 请求
|
|
446
|
-
const
|
|
617
|
+
const res = await storageService.batchQuery({
|
|
447
618
|
body: [
|
|
448
619
|
{
|
|
449
620
|
path: 'app',
|
|
@@ -452,23 +623,20 @@ export async function loadApp(appId?: string) {
|
|
|
452
623
|
],
|
|
453
624
|
headers: {
|
|
454
625
|
appId,
|
|
626
|
+
checkTabOpenTime: 'true',
|
|
455
627
|
// 其他封装在 storageService 里了
|
|
456
628
|
},
|
|
629
|
+
config: {
|
|
630
|
+
shortResponse: false,
|
|
631
|
+
},
|
|
457
632
|
});
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
// data?.[0].frontends.push({
|
|
462
|
-
// id: '111',
|
|
463
|
-
// concept: 'Frontend',
|
|
464
|
-
// name: 'pcFrontend1',
|
|
465
|
-
// title: 'pc端',
|
|
466
|
-
// type: 'pc',
|
|
467
|
-
// views: data?.[0].views,
|
|
468
|
-
// variables: data?.[0].frontendVariables,
|
|
469
|
-
// componentDependencies: data?.[0].componentDependencies,
|
|
470
|
-
// });
|
|
633
|
+
|
|
634
|
+
tabTimestamp = res?.headers?.tabtimestamp;
|
|
635
|
+
const data = res?.data?.result;
|
|
471
636
|
app = new App(Object.assign(data?.[0], { id: appId }));
|
|
637
|
+
if (!app.id) {
|
|
638
|
+
app.id = appId;
|
|
639
|
+
}
|
|
472
640
|
} else if (config.storage.protocol === 'mock') {
|
|
473
641
|
app = new App({
|
|
474
642
|
id: appId,
|
|
@@ -4,7 +4,7 @@ import api from './api';
|
|
|
4
4
|
const service = createService(api);
|
|
5
5
|
|
|
6
6
|
export default {
|
|
7
|
-
batchQuery({ body, headers }: { body: Array<any>, headers: Record<string, string
|
|
7
|
+
batchQuery({ body, headers, config }: { body: Array<any>, headers: Record<string, string>, config?: object }) {
|
|
8
8
|
const appData = (window as any).appData;
|
|
9
9
|
|
|
10
10
|
return service.batchQuery({
|
|
@@ -15,6 +15,7 @@ export default {
|
|
|
15
15
|
'request-versionChangedTime': appData?.versionChangedTime || '',
|
|
16
16
|
operateArea: appData?.branchStatus === 'merging' ? 'merge_conflict' : '',
|
|
17
17
|
}, headers),
|
|
18
|
+
config,
|
|
18
19
|
});
|
|
19
20
|
},
|
|
20
21
|
batchAction({ body, headers }: { body: Array<any>, headers: Record<string, string> }) {
|
|
@@ -30,4 +31,31 @@ export default {
|
|
|
30
31
|
}, headers),
|
|
31
32
|
});
|
|
32
33
|
},
|
|
34
|
+
batchInstruct({ body, headers }: { body: Array<any>, headers: Record<string, string> }) {
|
|
35
|
+
const appData = (window as any).appData;
|
|
36
|
+
|
|
37
|
+
return service.batchInstruct({
|
|
38
|
+
body,
|
|
39
|
+
headers: Object.assign({
|
|
40
|
+
appId: appData?.appId,
|
|
41
|
+
'request-appBaseVersion': (window as any).appData?.baseVersion || '',
|
|
42
|
+
'request-versionChangedTime': (window as any).appData?.versionChangedTime || '',
|
|
43
|
+
operateArea: (window as any).appData?.branchStatus === 'merging' ? 'merge_conflict' : '',
|
|
44
|
+
}, headers),
|
|
45
|
+
config: {
|
|
46
|
+
timeout: 1000 * 60,
|
|
47
|
+
},
|
|
48
|
+
});
|
|
49
|
+
},
|
|
50
|
+
saveFrontendNasl({ body }: { body: any }) {
|
|
51
|
+
const appData = (window as any).appData;
|
|
52
|
+
|
|
53
|
+
return service.saveFrontendNasl({
|
|
54
|
+
body,
|
|
55
|
+
headers: {
|
|
56
|
+
appId: appData?.appId,
|
|
57
|
+
skipVersionCheck: true,
|
|
58
|
+
},
|
|
59
|
+
});
|
|
60
|
+
}
|
|
33
61
|
};
|
|
@@ -0,0 +1,204 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
exports.__esModule = true;
|
|
3
|
+
exports.genBlurUpdateLogic = exports.genEditTableRemoveLogic = exports.genEditTableLoadLogic = exports.genEditTableTemplate = exports.genEditTableColumnTemplate = void 0;
|
|
4
|
+
var utils = require("../utils");
|
|
5
|
+
var _1 = require(".");
|
|
6
|
+
var utils_1 = require("./utils");
|
|
7
|
+
/**
|
|
8
|
+
* 根据实体属性生成表格列模板
|
|
9
|
+
* @param property 实体属性
|
|
10
|
+
*/
|
|
11
|
+
function genEditTableColumnTemplate(entity, property, nameGroup, selectNameGroupMap) {
|
|
12
|
+
var dataSource = entity.parentNode;
|
|
13
|
+
var lowerEntityName = utils.firstLowerCase(entity.name);
|
|
14
|
+
var valueExpression = "current.item." + lowerEntityName + "." + property.name;
|
|
15
|
+
var title = property.label || property.name;
|
|
16
|
+
var canEditable = function (property) { return !property.readonly; };
|
|
17
|
+
var getText = function (property) {
|
|
18
|
+
var propertyTypeName = property.typeAnnotation.typeName;
|
|
19
|
+
if (propertyTypeName === 'Boolean') {
|
|
20
|
+
return "\n <u-text v-if=\"" + valueExpression + "\" text=\"\u662F\"></u-text>\n <u-text v-if=\"!" + valueExpression + "\" text=\"\u5426\"></u-text>\n ";
|
|
21
|
+
}
|
|
22
|
+
else {
|
|
23
|
+
return "<u-text :text=\"" + valueExpression + "\"></u-text>";
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
var genEditComponent = function (property) {
|
|
27
|
+
if (property.readonly)
|
|
28
|
+
return '';
|
|
29
|
+
var label = property.label || property.name;
|
|
30
|
+
var formItem = '';
|
|
31
|
+
var propertyTypeName = property.typeAnnotation.typeName;
|
|
32
|
+
if (property.relationEntity && selectNameGroupMap) {
|
|
33
|
+
// 有外键关联
|
|
34
|
+
var relationEntity = dataSource === null || dataSource === void 0 ? void 0 : dataSource.findEntityByName(property.relationEntity);
|
|
35
|
+
if (relationEntity) {
|
|
36
|
+
var relationProperty = relationEntity.properties.find(function (prop) { return prop.name === property.relationProperty; });
|
|
37
|
+
var displayedProperty = _1.getFirstDisplayedProperty(relationEntity);
|
|
38
|
+
if (displayedProperty) {
|
|
39
|
+
var lowerEntityName_1 = utils.firstLowerCase(relationEntity.name);
|
|
40
|
+
// 存在多个属性关联同一个实体的情况,因此加上属性名用以唯一标识
|
|
41
|
+
var key = [property.name, relationEntity.name].join('-');
|
|
42
|
+
var selectNameGroup = selectNameGroupMap.get(key);
|
|
43
|
+
formItem += "\n <u-select clearable placeholder=\"\u8BF7\u9009\u62E9" + label + "\" :data-source=\"" + selectNameGroup.viewLogicLoad + "\"\n :autofocus=\"true\" :opened=\"true\" append-to=\"body\" @blur=\"" + nameGroup.viewLogicBlurUpdate + "\" @select=\"" + nameGroup.viewLogicBlurUpdate + "\"\n text-field=\"" + lowerEntityName_1 + "." + displayedProperty.name + "\" value-field=\"" + lowerEntityName_1 + "." + relationProperty.name + "\" :pageable=\"true\" :remote-paging=\"true\" :value.sync=\"" + valueExpression + "\">\n </u-select>\n ";
|
|
44
|
+
}
|
|
45
|
+
else
|
|
46
|
+
return '';
|
|
47
|
+
}
|
|
48
|
+
else
|
|
49
|
+
return '';
|
|
50
|
+
}
|
|
51
|
+
else if (propertyTypeName === 'Boolean') {
|
|
52
|
+
formItem += "<u-select clearable :value.sync=\"" + valueExpression + "\" placeholder=\"\u8BF7\u8F93\u5165" + label + "\"\n :autofocus=\"true\" :opened=\"true\" append-to=\"body\" @blur=\"" + nameGroup.viewLogicBlurUpdate + "\" @select=\"" + nameGroup.viewLogicBlurUpdate + "\">\n <u-select-item :value=\"true\" text=\"\u662F\">\u662F</u-select-item>\n <u-select-item :value=\"false\" text=\"\u5426\">\u5426</u-select-item>\n </u-select>";
|
|
53
|
+
}
|
|
54
|
+
else if (propertyTypeName === 'Integer' || propertyTypeName === 'Long') {
|
|
55
|
+
formItem = "<u-number-input :value.sync=\"" + valueExpression + "\" placeholder=\"\u8BF7\u8F93\u5165" + label + "\" :autofocus=\"true\" @blur=\"" + nameGroup.viewLogicBlurUpdate + "\"></u-number-input>";
|
|
56
|
+
}
|
|
57
|
+
else if (propertyTypeName === 'Double') {
|
|
58
|
+
formItem = "<u-number-input :value.sync=\"" + valueExpression + "\" :precision=\"0\" :step=\"0\" placeholder=\"\u8BF7\u8F93\u5165" + label + "\" :autofocus=\"true\" @blur=\"" + nameGroup.viewLogicBlurUpdate + "\"></u-number-input>";
|
|
59
|
+
}
|
|
60
|
+
else if (propertyTypeName === 'Decimal') {
|
|
61
|
+
formItem = "<u-number-input :value.sync=\"" + valueExpression + "\" :precision=\"0\" :step=\"0\" placeholder=\"\u8BF7\u8F93\u5165" + label + "\" :autofocus=\"true\" @blur=\"" + nameGroup.viewLogicBlurUpdate + "\"></u-number-input>";
|
|
62
|
+
}
|
|
63
|
+
else if (propertyTypeName === 'Text') {
|
|
64
|
+
formItem = "<u-validator placement=\"bottom\" display=\"appear\" @blur-valid=\"" + nameGroup.viewLogicBlurUpdate + "\" style=\"width:100%\">\n <u-textarea :value.sync=\"" + valueExpression + "\" placeholder=\"\u8BF7\u8F93\u5165" + label + "\" :autofocus=\"true\" size=\"full\"></u-textarea>\n </u-validator>";
|
|
65
|
+
}
|
|
66
|
+
else if (propertyTypeName === 'Date') {
|
|
67
|
+
formItem = "<u-date-picker clearable :date.sync=\"" + valueExpression + "\" placeholder=\"\u8BF7\u8F93\u5165" + label + "\" append-to=\"body\" :autofocus=\"true\" :opened=\"true\" @blur=\"" + nameGroup.viewLogicBlurUpdate + "\"></u-date-picker>";
|
|
68
|
+
}
|
|
69
|
+
else if (propertyTypeName === 'Time') {
|
|
70
|
+
formItem = "<u-time-picker :time.sync=\"" + valueExpression + "\" placeholder=\"\u8BF7\u8F93\u5165" + label + "\" append-to=\"body\" :autofocus=\"true\" @blur=\"" + nameGroup.viewLogicBlurUpdate + "\"></u-time-picker>";
|
|
71
|
+
}
|
|
72
|
+
else if (propertyTypeName === 'DateTime') {
|
|
73
|
+
formItem = "<u-date-time-picker clearable :date.sync=\"" + valueExpression + "\" placeholder=\"\u8BF7\u8F93\u5165" + label + "\" append-to=\"body\" :autofocus=\"true\" :opened=\"true\" @blur=\"" + nameGroup.viewLogicBlurUpdate + "\"></u-date-time-picker>";
|
|
74
|
+
}
|
|
75
|
+
else {
|
|
76
|
+
formItem = "<u-validator placement=\"bottom\" display=\"appear\" @blur-valid=\"" + nameGroup.viewLogicBlurUpdate + "\" style=\"width:100%\" append-to=\"body\">\n <u-input :value.sync=\"" + valueExpression + "\" placeholder=\"\u8BF7\u8F93\u5165" + label + "\" :autofocus=\"true\" size=\"full\"></u-input>\n </u-validator>";
|
|
77
|
+
}
|
|
78
|
+
return "<template #editcell=\"current\">\n <u-linear-layout gap=\"small\">\n " + formItem + "\n </u-linear-layout>\n </template>";
|
|
79
|
+
};
|
|
80
|
+
return "<u-table-view-column field=\"" + utils.firstLowerCase(entity.name) + "." + property.name + "\" " + (canEditable(property) ? 'type="editable"' : '') + ">\n <template #title><u-text text=\"" + title + "\"></u-text></template>\n <template #cell=\"current\">\n <u-linear-layout gap=\"small\">\n " + getText(property) + "\n </u-linear-layout>\n </template>\n " + genEditComponent(property) + "\n</u-table-view-column>";
|
|
81
|
+
}
|
|
82
|
+
exports.genEditTableColumnTemplate = genEditTableColumnTemplate;
|
|
83
|
+
/**
|
|
84
|
+
* 生成表格模板
|
|
85
|
+
* @param entity 实体
|
|
86
|
+
* @param nameGroup 命名组
|
|
87
|
+
*/
|
|
88
|
+
function genEditTableTemplate(entity, nameGroup, selectNameGroupMap) {
|
|
89
|
+
var properties = entity.properties.filter(_1.filterProperty('inTable'));
|
|
90
|
+
return "<u-table-view ref=\"" + nameGroup.viewElementMainView + "\" :data-source=\"" + nameGroup.viewLogicLoad + "\" data-schema=\"" + nameGroup.structure + "\"\n value-field=\"" + nameGroup.viewVariableEntity + ".id\"\n :pageable=\"true\" :remote-paging=\"true\" :show-sizer=\"true\" :default-column-width=\"300\" editable>\n <u-table-view-column type=\"index\" width=\"60\"><template #title><u-text text=\"\u5E8F\u53F7\"></u-text></template></u-table-view-column>\n\n " + properties.map(function (property) { return genEditTableColumnTemplate(entity, property, nameGroup, selectNameGroupMap) + '\n'; }).join('') + "\n\n <u-table-view-column>\n <template #title><u-text text=\"\u64CD\u4F5C\"></u-text></template>\n <template #cell=\"current\">\n <u-linear-layout gap=\"small\">\n <u-link @click=\"" + nameGroup.viewLogicRemove + "\">\u5220\u9664</u-link>\n </u-linear-layout>\n </template>\n </u-table-view-column>\n</u-table-view>\n";
|
|
91
|
+
}
|
|
92
|
+
exports.genEditTableTemplate = genEditTableTemplate;
|
|
93
|
+
/**
|
|
94
|
+
* 生成表格 load 逻辑
|
|
95
|
+
* @param entity 实体
|
|
96
|
+
*/
|
|
97
|
+
function genEditTableLoadLogic(entity, nameGroup, newLogic, supportFilter) {
|
|
98
|
+
var moduleNode = entity.app;
|
|
99
|
+
var moduleNamespace = moduleNode === null || moduleNode === void 0 ? void 0 : moduleNode.getNamespace();
|
|
100
|
+
var params = [
|
|
101
|
+
_1.genLogicParam("" + newLogic.params[0].name, 'params.page'),
|
|
102
|
+
_1.genLogicParam("" + newLogic.params[1].name, 'params.size'),
|
|
103
|
+
_1.genLogicParam("" + newLogic.params[2].name, 'params.sort'),
|
|
104
|
+
_1.genLogicParam("" + newLogic.params[3].name, 'params.order'),
|
|
105
|
+
];
|
|
106
|
+
if (supportFilter)
|
|
107
|
+
params.push(_1.genLogicParam("" + newLogic.params[4].name, nameGroup.viewVariableFilter));
|
|
108
|
+
return utils_1.NaslNode.Logic({
|
|
109
|
+
name: nameGroup.viewLogicLoad,
|
|
110
|
+
params: [
|
|
111
|
+
utils_1.NaslNode.Param({
|
|
112
|
+
name: 'params',
|
|
113
|
+
typeAnnotation: utils_1.NaslUITypeAnnotation.DataSourceParams
|
|
114
|
+
}),
|
|
115
|
+
],
|
|
116
|
+
returns: [
|
|
117
|
+
utils_1.NaslNode.Return({
|
|
118
|
+
name: 'result',
|
|
119
|
+
typeAnnotation: null
|
|
120
|
+
}),
|
|
121
|
+
],
|
|
122
|
+
variables: [],
|
|
123
|
+
body: [
|
|
124
|
+
utils_1.NaslLogicItem.Start,
|
|
125
|
+
utils_1.NaslLogicItem.Assignment({
|
|
126
|
+
left: utils_1.NaslLogicItem.Identifier({
|
|
127
|
+
name: 'result'
|
|
128
|
+
}),
|
|
129
|
+
right: utils_1.NaslLogicItem.CallLogic({
|
|
130
|
+
calleeNamespace: moduleNamespace + ".logics",
|
|
131
|
+
calleeName: newLogic.name,
|
|
132
|
+
arguments: params
|
|
133
|
+
})
|
|
134
|
+
}),
|
|
135
|
+
utils_1.NaslLogicItem.End,
|
|
136
|
+
]
|
|
137
|
+
});
|
|
138
|
+
}
|
|
139
|
+
exports.genEditTableLoadLogic = genEditTableLoadLogic;
|
|
140
|
+
/**
|
|
141
|
+
* 生成表格 remove 逻辑
|
|
142
|
+
* @param entity 实体
|
|
143
|
+
*/
|
|
144
|
+
function genEditTableRemoveLogic(entity, nameGroup) {
|
|
145
|
+
var _a;
|
|
146
|
+
var lowerEntityName = utils.firstLowerCase(entity.name);
|
|
147
|
+
var ns = entity.ns;
|
|
148
|
+
var deleteLogic = (_a = ns === null || ns === void 0 ? void 0 : ns.logics) === null || _a === void 0 ? void 0 : _a.find(function (logic) { return logic.name === "delete"; });
|
|
149
|
+
var idPropertys = entity.properties.filter(function (property) { return property.primaryKey || property.name === 'id'; });
|
|
150
|
+
return utils_1.NaslNode.Logic({
|
|
151
|
+
name: nameGroup.viewLogicRemove,
|
|
152
|
+
params: [],
|
|
153
|
+
returns: [],
|
|
154
|
+
variables: [],
|
|
155
|
+
body: [
|
|
156
|
+
utils_1.NaslLogicItem.Start,
|
|
157
|
+
utils_1.NaslLogicItem.CallLogic({
|
|
158
|
+
calleeNamespace: deleteLogic.getNamespace(),
|
|
159
|
+
calleeName: deleteLogic.name,
|
|
160
|
+
arguments: idPropertys.map(function (idProperty) {
|
|
161
|
+
var paramFromLogic = _1.getParamFromLogic(deleteLogic, idProperty.name);
|
|
162
|
+
// 如果旧逻辑,但是新导入表中,id的name 不是id 的话,就直接使用名称叫id的
|
|
163
|
+
if (!paramFromLogic) {
|
|
164
|
+
paramFromLogic = _1.getParamFromLogic(deleteLogic, 'id');
|
|
165
|
+
}
|
|
166
|
+
return _1.genLogicParam(paramFromLogic.name, "current.item." + lowerEntityName + "." + paramFromLogic.name);
|
|
167
|
+
})
|
|
168
|
+
}),
|
|
169
|
+
_1.genCallComponentLogic(nameGroup.viewElementMainView, 'reload'),
|
|
170
|
+
utils_1.NaslLogicItem.End,
|
|
171
|
+
]
|
|
172
|
+
});
|
|
173
|
+
}
|
|
174
|
+
exports.genEditTableRemoveLogic = genEditTableRemoveLogic;
|
|
175
|
+
function genBlurUpdateLogic(entity, nameGroup) {
|
|
176
|
+
var _a;
|
|
177
|
+
var lowerEntityName = utils.firstLowerCase(entity.name);
|
|
178
|
+
var ns = entity.ns;
|
|
179
|
+
var updateLogic = (_a = ns === null || ns === void 0 ? void 0 : ns.logics) === null || _a === void 0 ? void 0 : _a.find(function (logic) { return logic.name === "update"; });
|
|
180
|
+
return utils_1.NaslNode.Logic({
|
|
181
|
+
name: nameGroup.viewLogicBlurUpdate,
|
|
182
|
+
params: [],
|
|
183
|
+
returns: [],
|
|
184
|
+
body: [
|
|
185
|
+
utils_1.NaslLogicItem.Start,
|
|
186
|
+
utils_1.NaslLogicItem.Assignment({
|
|
187
|
+
left: _1.genMemberExpression("current.item.editing", ['', '', nameGroup.structure + ".editing"]),
|
|
188
|
+
right: utils_1.NaslLogicItem.StringLiteral({
|
|
189
|
+
value: ''
|
|
190
|
+
})
|
|
191
|
+
}),
|
|
192
|
+
utils_1.NaslLogicItem.CallLogic({
|
|
193
|
+
calleeNamespace: updateLogic.getNamespace(),
|
|
194
|
+
calleeName: updateLogic.name,
|
|
195
|
+
arguments: [
|
|
196
|
+
_1.genLogicParam("" + updateLogic.params[0].name, "current.item." + lowerEntityName),
|
|
197
|
+
]
|
|
198
|
+
}),
|
|
199
|
+
utils_1.NaslLogicItem.End,
|
|
200
|
+
],
|
|
201
|
+
playground: []
|
|
202
|
+
});
|
|
203
|
+
}
|
|
204
|
+
exports.genBlurUpdateLogic = genBlurUpdateLogic;
|