@lcap/nasl 1.0.0-alpha.8 → 1.0.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/out/automate/engine/index.d.ts +3 -0
- package/out/automate/engine/index.js +414 -0
- package/out/automate/engine/index.js.map +1 -0
- package/out/automate/engine/operators.d.ts +13 -0
- package/out/automate/engine/operators.js +63 -0
- package/out/automate/engine/operators.js.map +1 -0
- package/out/automate/engine/uniqueName.d.ts +6 -0
- package/out/automate/engine/uniqueName.js +39 -0
- package/out/automate/engine/uniqueName.js.map +1 -0
- package/out/automate/engine/utils.d.ts +24 -0
- package/out/automate/engine/utils.js +363 -0
- package/out/automate/engine/utils.js.map +1 -0
- package/out/common/BaseNode.d.ts +20 -0
- package/out/common/BaseNode.js +219 -81
- package/out/common/BaseNode.js.map +1 -1
- package/out/concepts/App__.d.ts +18 -1
- package/out/concepts/App__.js +84 -44
- package/out/concepts/App__.js.map +1 -1
- package/out/concepts/Argument__.d.ts +5 -1
- package/out/concepts/Argument__.js +21 -3
- package/out/concepts/Argument__.js.map +1 -1
- package/out/concepts/Assignee__.d.ts +190 -0
- package/out/concepts/Assignee__.js +264 -0
- package/out/concepts/Assignee__.js.map +1 -0
- package/out/concepts/Assignment__.js +5 -0
- package/out/concepts/Assignment__.js.map +1 -1
- package/out/concepts/BinaryExpression__.js +8 -7
- package/out/concepts/BinaryExpression__.js.map +1 -1
- package/out/concepts/BindAttribute__.d.ts +19 -0
- package/out/concepts/BindAttribute__.js +55 -10
- package/out/concepts/BindAttribute__.js.map +1 -1
- package/out/concepts/BindDirective__.js +23 -3
- package/out/concepts/BindDirective__.js.map +1 -1
- package/out/concepts/BindEvent__.d.ts +2 -2
- package/out/concepts/BindEvent__.js +67 -34
- package/out/concepts/BindEvent__.js.map +1 -1
- package/out/concepts/BooleanLiteral__.d.ts +2 -0
- package/out/concepts/BooleanLiteral__.js +10 -0
- package/out/concepts/BooleanLiteral__.js.map +1 -1
- package/out/concepts/CallFunction__.js +57 -23
- package/out/concepts/CallFunction__.js.map +1 -1
- package/out/concepts/CallInterface__.d.ts +5 -0
- package/out/concepts/CallInterface__.js +238 -31
- package/out/concepts/CallInterface__.js.map +1 -1
- package/out/concepts/CallLogic__.d.ts +4 -4
- package/out/concepts/CallLogic__.js +107 -50
- package/out/concepts/CallLogic__.js.map +1 -1
- package/out/concepts/CallQueryComponent__.d.ts +7 -1
- package/out/concepts/CallQueryComponent__.js +45 -26
- package/out/concepts/CallQueryComponent__.js.map +1 -1
- package/out/concepts/Comment__.js +6 -2
- package/out/concepts/Comment__.js.map +1 -1
- package/out/concepts/CompletionProperty__.d.ts +3 -1
- package/out/concepts/CompletionProperty__.js +2 -0
- package/out/concepts/CompletionProperty__.js.map +1 -1
- package/out/concepts/ConfigGroup__.js +3 -3
- package/out/concepts/ConfigGroup__.js.map +1 -1
- package/out/concepts/ConfigProperty__.js +3 -3
- package/out/concepts/ConfigProperty__.js.map +1 -1
- package/out/concepts/Configuration__.js +3 -3
- package/out/concepts/Configuration__.js.map +1 -1
- package/out/concepts/Constant__.d.ts +1 -0
- package/out/concepts/Constant__.js +14 -0
- package/out/concepts/Constant__.js.map +1 -1
- package/out/concepts/Destination__.d.ts +12 -0
- package/out/concepts/Destination__.js +98 -19
- package/out/concepts/Destination__.js.map +1 -1
- package/out/concepts/End__.js +9 -1
- package/out/concepts/End__.js.map +1 -1
- package/out/concepts/EntityProperty__.d.ts +11 -0
- package/out/concepts/EntityProperty__.js +73 -5
- package/out/concepts/EntityProperty__.js.map +1 -1
- package/out/concepts/Entity__.d.ts +4 -4
- package/out/concepts/Entity__.js +30 -20
- package/out/concepts/Entity__.js.map +1 -1
- package/out/concepts/Enum__.d.ts +4 -0
- package/out/concepts/Enum__.js +18 -10
- package/out/concepts/Enum__.js.map +1 -1
- package/out/concepts/Event__.js +3 -3
- package/out/concepts/Event__.js.map +1 -1
- package/out/concepts/ForEachStatement__.d.ts +1 -1
- package/out/concepts/ForEachStatement__.js +11 -15
- package/out/concepts/ForEachStatement__.js.map +1 -1
- package/out/concepts/Function__.js +13 -13
- package/out/concepts/Function__.js.map +1 -1
- package/out/concepts/Identifier__.d.ts +3 -0
- package/out/concepts/Identifier__.js +76 -29
- package/out/concepts/Identifier__.js.map +1 -1
- package/out/concepts/IfStatement__.js +4 -4
- package/out/concepts/IfStatement__.js.map +1 -1
- package/out/concepts/InterfaceParam__.d.ts +6 -4
- package/out/concepts/InterfaceParam__.js +52 -19
- package/out/concepts/InterfaceParam__.js.map +1 -1
- package/out/concepts/Interface__.d.ts +42 -30
- package/out/concepts/Interface__.js +133 -17
- 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 +14 -0
- package/out/concepts/LogicItem__.js.map +1 -1
- package/out/concepts/Logic__.d.ts +20 -1
- package/out/concepts/Logic__.js +194 -37
- package/out/concepts/Logic__.js.map +1 -1
- package/out/concepts/MemberExpression__.d.ts +2 -0
- package/out/concepts/MemberExpression__.js +49 -13
- package/out/concepts/MemberExpression__.js.map +1 -1
- package/out/concepts/Module__.d.ts +126 -120
- package/out/concepts/Module__.js +36 -26
- package/out/concepts/Module__.js.map +1 -1
- package/out/concepts/Namespace__.d.ts +5 -1
- package/out/concepts/Namespace__.js +48 -37
- package/out/concepts/Namespace__.js.map +1 -1
- package/out/concepts/NullLiteral__.d.ts +3 -0
- package/out/concepts/NullLiteral__.js +11 -1
- package/out/concepts/NullLiteral__.js.map +1 -1
- package/out/concepts/NumericLiteral__.d.ts +1 -1
- package/out/concepts/NumericLiteral__.js +17 -6
- package/out/concepts/NumericLiteral__.js.map +1 -1
- package/out/concepts/Param__.d.ts +7 -3
- package/out/concepts/Param__.js +57 -28
- package/out/concepts/Param__.js.map +1 -1
- package/out/concepts/ProcessComponent__.js +6 -6
- package/out/concepts/ProcessComponent__.js.map +1 -1
- package/out/concepts/ProcessElement__.d.ts +0 -4
- package/out/concepts/ProcessElement__.js +117 -54
- package/out/concepts/ProcessElement__.js.map +1 -1
- package/out/concepts/ProcessOutcome__.js +1 -1
- package/out/concepts/ProcessOutcome__.js.map +1 -1
- package/out/concepts/Process__.d.ts +7 -1
- package/out/concepts/Process__.js +81 -85
- package/out/concepts/Process__.js.map +1 -1
- package/out/concepts/QueryAggregateExpression__.js +1 -1
- package/out/concepts/QueryAggregateExpression__.js.map +1 -1
- package/out/concepts/QueryFromExpression__.js +2 -2
- package/out/concepts/QueryFromExpression__.js.map +1 -1
- package/out/concepts/QueryJoinExpression__.js +5 -5
- package/out/concepts/QueryJoinExpression__.js.map +1 -1
- package/out/concepts/QueryLimitExpression__.js +2 -2
- package/out/concepts/QueryLimitExpression__.js.map +1 -1
- package/out/concepts/QuerySelectExpression__.js +3 -3
- package/out/concepts/QuerySelectExpression__.js.map +1 -1
- package/out/concepts/Return__.d.ts +4 -1
- package/out/concepts/Return__.js +67 -21
- package/out/concepts/Return__.js.map +1 -1
- package/out/concepts/Role__.d.ts +4 -0
- package/out/concepts/Role__.js +13 -4
- package/out/concepts/Role__.js.map +1 -1
- package/out/concepts/SqlQueryComponent__.js +2 -2
- package/out/concepts/SqlQueryComponent__.js.map +1 -1
- package/out/concepts/StringLiteral__.d.ts +1 -1
- package/out/concepts/StringLiteral__.js +21 -31
- package/out/concepts/StringLiteral__.js.map +1 -1
- package/out/concepts/StructureProperty__.d.ts +5 -4
- package/out/concepts/StructureProperty__.js +55 -26
- package/out/concepts/StructureProperty__.js.map +1 -1
- package/out/concepts/Structure__.d.ts +44 -30
- package/out/concepts/Structure__.js +44 -12
- package/out/concepts/Structure__.js.map +1 -1
- package/out/concepts/SwitchCase__.js +4 -4
- package/out/concepts/SwitchCase__.js.map +1 -1
- package/out/concepts/SwitchStatement__.js +2 -2
- package/out/concepts/SwitchStatement__.js.map +1 -1
- package/out/concepts/TypeAnnotation__.d.ts +5 -5
- package/out/concepts/TypeAnnotation__.js +74 -20
- package/out/concepts/TypeAnnotation__.js.map +1 -1
- package/out/concepts/UnaryExpression__.js +10 -8
- package/out/concepts/UnaryExpression__.js.map +1 -1
- package/out/concepts/Unparsed__.js +1 -1
- package/out/concepts/Unparsed__.js.map +1 -1
- package/out/concepts/ValidationRule__.d.ts +1 -0
- package/out/concepts/ValidationRule__.js +48 -13
- package/out/concepts/ValidationRule__.js.map +1 -1
- package/out/concepts/Variable__.d.ts +10 -1
- package/out/concepts/Variable__.js +70 -18
- package/out/concepts/Variable__.js.map +1 -1
- package/out/concepts/ViewComponent__.js +15 -15
- package/out/concepts/ViewComponent__.js.map +1 -1
- package/out/concepts/ViewElement__.d.ts +17 -11
- package/out/concepts/ViewElement__.js +302 -204
- package/out/concepts/ViewElement__.js.map +1 -1
- package/out/concepts/View__.d.ts +12 -11
- package/out/concepts/View__.js +109 -98
- package/out/concepts/View__.js.map +1 -1
- package/out/concepts/WhileStatement__.js +3 -3
- package/out/concepts/WhileStatement__.js.map +1 -1
- package/out/concepts/basics/stdlib/index.js +4 -1
- package/out/concepts/basics/stdlib/index.js.map +1 -1
- package/out/concepts/basics/stdlib/{nasl.validate.d.ts → nasl.auth.d.ts} +0 -0
- package/out/concepts/basics/stdlib/nasl.auth.js +30 -0
- package/out/concepts/basics/stdlib/nasl.auth.js.map +1 -0
- package/out/concepts/basics/stdlib/nasl.browser copy.d.ts +3 -0
- package/out/concepts/basics/stdlib/nasl.browser copy.js +70 -0
- package/out/concepts/basics/stdlib/nasl.browser copy.js.map +1 -0
- package/out/concepts/basics/stdlib/nasl.browser.d.ts +3 -0
- package/out/concepts/basics/stdlib/nasl.browser.js +41 -0
- package/out/concepts/basics/stdlib/nasl.browser.js.map +1 -0
- package/out/concepts/basics/stdlib/nasl.configuration.d.ts +3 -0
- package/out/concepts/basics/stdlib/nasl.configuration.js +25 -0
- package/out/concepts/basics/stdlib/nasl.configuration.js.map +1 -0
- package/out/concepts/basics/stdlib/nasl.ui.js +20 -0
- package/out/concepts/basics/stdlib/nasl.ui.js.map +1 -1
- package/out/concepts/basics/stdlib/nasl.util.js +149 -13
- package/out/concepts/basics/stdlib/nasl.util.js.map +1 -1
- package/out/concepts/basics/stdlib/nasl.validation.js +54 -20
- package/out/concepts/basics/stdlib/nasl.validation.js.map +1 -1
- package/out/concepts/basics/types/coreTypeList.js +11 -10
- package/out/concepts/basics/types/coreTypeList.js.map +1 -1
- package/out/concepts/index__.d.ts +1 -0
- package/out/concepts/index__.js +1 -0
- package/out/concepts/index__.js.map +1 -1
- package/out/config.d.ts +1 -2
- package/out/config.js +1 -2
- package/out/config.js.map +1 -1
- package/out/enums/KEYWORDS.d.ts +3 -0
- package/out/enums/KEYWORDS.js +1206 -0
- package/out/enums/KEYWORDS.js.map +1 -0
- package/out/enums/LEVEL_NAME_MAP.d.ts +26 -0
- package/out/enums/LEVEL_NAME_MAP.js +30 -0
- package/out/enums/LEVEL_NAME_MAP.js.map +1 -0
- package/out/eventBus.d.ts +3 -0
- package/out/eventBus.js +7 -0
- package/out/eventBus.js.map +1 -0
- package/out/generator/genBundleFiles.d.ts +7 -2
- package/out/generator/genBundleFiles.js +168 -27
- package/out/generator/genBundleFiles.js.map +1 -1
- package/out/generator/genMetaData.d.ts +20 -20
- package/out/generator/genMetaData.js +50 -15
- package/out/generator/genMetaData.js.map +1 -1
- package/out/index.d.ts +2 -0
- package/out/index.js +2 -0
- package/out/index.js.map +1 -1
- package/out/manager/diagnostic.d.ts +1 -1
- package/out/server/createUiTs.d.ts +1 -0
- package/out/server/createUiTs.js +49 -5
- package/out/server/createUiTs.js.map +1 -1
- package/out/server/entity2LogicNamespace.js +38 -23
- package/out/server/entity2LogicNamespace.js.map +1 -1
- package/out/server/getExtensionModules.js +2 -0
- package/out/server/getExtensionModules.js.map +1 -1
- package/out/server/getFunctions.d.ts +1 -0
- package/out/server/getFunctions.js +7 -1
- package/out/server/getFunctions.js.map +1 -1
- package/out/server/getLogics.js +63 -18
- package/out/server/getLogics.js.map +1 -1
- package/out/server/getMemberIdentifier.d.ts +16 -1
- package/out/server/getMemberIdentifier.js +279 -36
- package/out/server/getMemberIdentifier.js.map +1 -1
- package/out/server/getProcesses.d.ts +6 -1
- package/out/server/getProcesses.js +243 -1
- package/out/server/getProcesses.js.map +1 -1
- package/out/server/getScope.d.ts +12 -0
- package/out/server/getScope.js +57 -0
- package/out/server/getScope.js.map +1 -0
- package/out/server/index.js +4 -0
- package/out/server/index.js.map +1 -1
- package/out/server/naslServer.d.ts +30 -53
- package/out/server/naslServer.js +721 -381
- package/out/server/naslServer.js.map +1 -1
- package/out/server/process2LogicNamespace.d.ts +10 -0
- package/out/server/process2LogicNamespace.js +29 -1
- package/out/server/process2LogicNamespace.js.map +1 -1
- package/out/server/translator.d.ts +22 -3
- package/out/server/translator.js +367 -123
- package/out/server/translator.js.map +1 -1
- package/out/service/creator/add.configs.d.ts +1 -0
- package/out/service/creator/add.configs.js +68 -0
- package/out/service/creator/add.configs.js.map +1 -0
- package/out/service/creator/errHandles.d.ts +18 -0
- package/out/service/creator/errHandles.js +60 -0
- package/out/service/creator/errHandles.js.map +1 -0
- package/out/service/creator/index.d.ts +1 -0
- package/out/service/creator/index.js +72 -0
- package/out/service/creator/index.js.map +1 -0
- package/out/service/storage/api.d.ts +18 -0
- package/out/service/storage/api.js +17 -0
- package/out/service/storage/api.js.map +1 -0
- package/out/service/storage/init.js +213 -37
- package/out/service/storage/init.js.map +1 -1
- package/out/service/storage/service.d.ts +2 -0
- package/out/service/storage/service.js +10 -0
- package/out/service/storage/service.js.map +1 -0
- package/out/service/storage/storagePoint.d.ts +1 -14
- package/out/service/storage/storagePoint.js +16 -16
- package/out/service/storage/storagePoint.js.map +1 -1
- package/out/templator/genCreateBlock.js +6 -6
- package/out/templator/genCreateBlock.js.map +1 -1
- package/out/templator/genCurdEditMultipleKeyBlock.js +13 -17
- package/out/templator/genCurdEditMultipleKeyBlock.js.map +1 -1
- package/out/templator/genCurdMultipleKeyBlock.js +11 -11
- package/out/templator/genCurdMultipleKeyBlock.js.map +1 -1
- package/out/templator/genEditTableBlock.js +5 -5
- package/out/templator/genEditTableBlock.js.map +1 -1
- package/out/templator/genEnumSelectBlock.js +2 -2
- package/out/templator/genEnumSelectBlock.js.map +1 -1
- package/out/templator/genGetBlock.js +5 -3
- package/out/templator/genGetBlock.js.map +1 -1
- package/out/templator/genGridViewBlock.d.ts +3 -1
- package/out/templator/genGridViewBlock.js +61 -6
- package/out/templator/genGridViewBlock.js.map +1 -1
- package/out/templator/genQueryComponent.d.ts +2 -0
- package/out/templator/genQueryComponent.js +27 -14
- package/out/templator/genQueryComponent.js.map +1 -1
- package/out/templator/genTableBlock.d.ts +1 -1
- package/out/templator/genTableBlock.js +4 -5
- package/out/templator/genTableBlock.js.map +1 -1
- package/out/templator/genUpdateBlock.js +9 -10
- package/out/templator/genUpdateBlock.js.map +1 -1
- package/out/templator/utils.d.ts +13 -4
- package/out/templator/utils.js +8 -4
- package/out/templator/utils.js.map +1 -1
- package/out/test/fixtures/env.js +0 -1
- package/out/test/fixtures/env.js.map +1 -1
- package/out/test/integration/connect-file copy.d.ts +1 -0
- package/out/test/integration/connect-file copy.js +50 -0
- package/out/test/integration/connect-file copy.js.map +1 -0
- package/out/test/integration/node-nasl-server.d.ts +1 -0
- package/out/test/integration/node-nasl-server.js +41 -0
- package/out/test/integration/node-nasl-server.js.map +1 -0
- package/out/test/units/page/Element.spec.js +3 -3
- package/out/test/units/page/Element.spec.js.map +1 -1
- package/out/test/units/temp/temp.spec.js +1 -1
- package/out/test/units/temp/temp.spec.js.map +1 -1
- package/out/utils/index.d.ts +6 -0
- package/out/utils/index.js +25 -1
- package/out/utils/index.js.map +1 -1
- package/out/utils/string.d.ts +1 -1
- package/out/utils/string.js +38 -9
- package/out/utils/string.js.map +1 -1
- package/package.json +2 -1
- package/src/automate/engine/index.js +97 -118
- package/src/automate/engine/operators.js +63 -0
- package/src/automate/engine/uniqueName.js +36 -0
- package/src/automate/engine/utils.js +49 -19
- package/src/common/BaseNode.ts +223 -87
- package/src/concepts/App__.ts +86 -46
- package/src/concepts/Argument__.ts +23 -3
- package/src/concepts/Assignee__.ts +437 -0
- package/src/concepts/Assignment__.ts +4 -1
- package/src/concepts/BinaryExpression__.ts +9 -7
- package/src/concepts/BindAttribute__.ts +69 -9
- package/src/concepts/BindDirective__.ts +22 -3
- package/src/concepts/BindEvent__.ts +67 -23
- package/src/concepts/BooleanLiteral__.ts +8 -0
- package/src/concepts/CallFunction__.ts +58 -25
- package/src/concepts/CallInterface__.ts +236 -26
- package/src/concepts/CallLogic__.ts +111 -52
- package/src/concepts/CallQueryComponent__.ts +36 -21
- package/src/concepts/Comment__.ts +6 -2
- package/src/concepts/CompletionProperty__.ts +5 -1
- package/src/concepts/ConfigGroup__.ts +3 -3
- package/src/concepts/ConfigProperty__.ts +3 -3
- package/src/concepts/Configuration__.ts +3 -3
- package/src/concepts/Constant__.ts +12 -0
- package/src/concepts/Destination__.ts +106 -18
- package/src/concepts/End__.ts +8 -1
- package/src/concepts/EntityProperty__.ts +69 -5
- package/src/concepts/Entity__.ts +33 -28
- package/src/concepts/Enum__.ts +16 -11
- package/src/concepts/Event__.ts +3 -3
- package/src/concepts/ForEachStatement__.ts +16 -21
- package/src/concepts/Function__.ts +13 -13
- package/src/concepts/Identifier__.ts +82 -32
- package/src/concepts/IfStatement__.ts +4 -4
- package/src/concepts/InterfaceParam__.ts +49 -27
- package/src/concepts/Interface__.ts +130 -16
- package/src/concepts/JSBlock__.ts +4 -0
- package/src/concepts/LogicItem__.ts +16 -1
- package/src/concepts/Logic__.ts +201 -39
- package/src/concepts/MemberExpression__.ts +58 -15
- package/src/concepts/Module__.ts +35 -24
- package/src/concepts/Namespace__.ts +49 -37
- package/src/concepts/NullLiteral__.ts +8 -1
- package/src/concepts/NumericLiteral__.ts +17 -6
- package/src/concepts/Param__.ts +54 -28
- package/src/concepts/ProcessComponent__.ts +6 -6
- package/src/concepts/ProcessElement__.ts +143 -44
- package/src/concepts/ProcessOutcome__.ts +1 -1
- package/src/concepts/Process__.ts +85 -98
- package/src/concepts/QueryAggregateExpression__.ts +1 -1
- package/src/concepts/QueryFromExpression__.ts +2 -2
- package/src/concepts/QueryJoinExpression__.ts +5 -5
- package/src/concepts/QueryLimitExpression__.ts +2 -2
- package/src/concepts/QuerySelectExpression__.ts +3 -3
- package/src/concepts/Return__.ts +60 -29
- package/src/concepts/Role__.ts +11 -4
- package/src/concepts/SqlQueryComponent__.ts +2 -2
- package/src/concepts/StringLiteral__.ts +20 -31
- package/src/concepts/StructureProperty__.ts +50 -33
- package/src/concepts/Structure__.ts +32 -10
- package/src/concepts/SwitchCase__.ts +4 -4
- package/src/concepts/SwitchStatement__.ts +2 -2
- package/src/concepts/TypeAnnotation__.ts +59 -16
- package/src/concepts/UnaryExpression__.ts +10 -8
- package/src/concepts/Unparsed__.ts +1 -1
- package/src/concepts/ValidationRule__.ts +44 -14
- package/src/concepts/Variable__.ts +67 -25
- package/src/concepts/ViewComponent__.ts +15 -15
- package/src/concepts/ViewElement__.ts +380 -264
- package/src/concepts/View__.ts +139 -94
- package/src/concepts/WhileStatement__.ts +4 -4
- package/src/concepts/basics/stdlib/index.ts +4 -2
- package/src/concepts/basics/stdlib/nasl.auth.ts +26 -0
- package/src/concepts/basics/stdlib/nasl.browser.ts +37 -0
- package/src/concepts/basics/stdlib/nasl.configuration.ts +21 -0
- package/src/concepts/basics/stdlib/nasl.ui.ts +20 -1
- package/src/concepts/basics/stdlib/nasl.util.ts +151 -13
- package/src/concepts/basics/stdlib/nasl.validation.ts +45 -11
- package/src/concepts/basics/types/coreTypeList.ts +11 -10
- package/src/concepts/index__.ts +1 -0
- package/src/config.ts +1 -2
- package/src/enums/KEYWORDS.ts +1204 -0
- package/src/{terms → enums}/LEVEL_NAME_MAP.ts +0 -0
- package/src/eventBus.ts +5 -0
- package/src/generator/genBundleFiles.ts +182 -30
- package/src/generator/genMetaData.ts +72 -21
- package/src/index.ts +2 -0
- package/src/manager/diagnostic.ts +1 -1
- package/src/server/createUiTs.ts +50 -8
- package/src/server/entity2LogicNamespace.ts +41 -25
- package/src/server/getExtensionModules.ts +2 -0
- package/src/server/getFunctions.ts +6 -0
- package/src/server/getLogics.ts +66 -19
- package/src/server/getMemberIdentifier.ts +275 -46
- package/src/server/getProcesses.ts +248 -4
- package/src/server/getScope.ts +62 -0
- package/src/server/index.ts +12 -1
- package/src/server/naslServer.ts +715 -398
- package/src/server/process2LogicNamespace.ts +30 -2
- package/src/server/translator.ts +423 -128
- package/src/service/config/index.js +1 -1
- package/src/service/creator/errHandles.js +5 -2
- package/src/service/creator/index.js +0 -6
- package/src/service/storage/api.js +14 -0
- package/src/service/storage/init.ts +217 -47
- package/src/service/storage/service.ts +6 -0
- package/src/service/storage/storagePoint.ts +16 -16
- package/src/templator/genCreateBlock.ts +6 -6
- package/src/templator/genCurdEditMultipleKeyBlock.ts +29 -30
- package/src/templator/genCurdMultipleKeyBlock.ts +11 -11
- package/src/templator/genEditTableBlock.ts +5 -5
- package/src/templator/genEnumSelectBlock.ts +2 -2
- package/src/templator/genGetBlock.ts +6 -8
- package/src/templator/genGridViewBlock.ts +59 -9
- package/src/templator/genQueryComponent.ts +39 -28
- package/src/templator/genTableBlock.ts +5 -9
- package/src/templator/genUpdateBlock.ts +9 -11
- package/src/templator/utils.ts +9 -6
- package/src/test/fixtures/env.ts +0 -2
- package/src/test/units/page/Element.spec.ts +3 -3
- package/src/test/units/temp/temp.spec.ts +1 -1
- package/src/utils/index.ts +24 -0
- package/src/utils/string.ts +39 -9
- package/out/concepts/basics/stdlib/nasl.validate.js +0 -527
- package/out/concepts/basics/stdlib/nasl.validate.js.map +0 -1
- package/out/data/Module.d.ts +0 -34
- package/out/data/Module.js +0 -53
- package/out/data/Module.js.map +0 -1
- package/src/automate/engine/index.d.ts +0 -3
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { TranslatorState, shiftState, withSourceMap, indent, createCompilerState, embeddedTSEmitter } from '../translator';
|
|
2
|
-
import {
|
|
3
|
-
|
|
2
|
+
import { genLaunchProcess, genUserTaskLogic, userTask2LogicNamespace, syncMemberExpression } from '../server/getProcesses';
|
|
3
|
+
import { process2LogicNamespace } from '../server/process2LogicNamespace';
|
|
4
4
|
import Namespace from './Namespace__';
|
|
5
5
|
import Logic from './Logic__';
|
|
6
6
|
import Variable from './Variable__';
|
|
7
|
+
import Identifier from './Identifier__';
|
|
7
8
|
//================================================================================
|
|
8
9
|
// 从这里开始到结尾注释之间的代码由 NASL Workbench 自动生成,请不手动修改!
|
|
9
10
|
// ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
|
|
@@ -154,7 +155,7 @@ export class Process extends BaseNode {
|
|
|
154
155
|
return (this.params || []).filter((item) => !excludedSet.has(item)).map((item) => item.name);
|
|
155
156
|
}
|
|
156
157
|
getParamUniqueName(name = 'param1') {
|
|
157
|
-
return utils.unique(name, this.getParamExistingNames());
|
|
158
|
+
return utils.unique(name, this.getParamExistingNames(), undefined, false);
|
|
158
159
|
}
|
|
159
160
|
|
|
160
161
|
/**
|
|
@@ -193,7 +194,7 @@ export class Process extends BaseNode {
|
|
|
193
194
|
name: options,
|
|
194
195
|
}, this, 'params');
|
|
195
196
|
} else if (options instanceof Param) {
|
|
196
|
-
options.
|
|
197
|
+
options.ensureDelete(); // 同一实例不支持多处存在
|
|
197
198
|
param = options;
|
|
198
199
|
Object.assign(param, relationOptions);
|
|
199
200
|
} else {
|
|
@@ -281,7 +282,7 @@ export class Process extends BaseNode {
|
|
|
281
282
|
|
|
282
283
|
addParam(options?: string | Partial<Param> | Param) {
|
|
283
284
|
const node = this._addParam(options as any);
|
|
284
|
-
const index = this.params.
|
|
285
|
+
const index = this.params.indexOf(node);
|
|
285
286
|
node.create({
|
|
286
287
|
index,
|
|
287
288
|
parentNode: this,
|
|
@@ -296,7 +297,7 @@ export class Process extends BaseNode {
|
|
|
296
297
|
return (this.returns || []).filter((item) => !excludedSet.has(item)).map((item) => item.name);
|
|
297
298
|
}
|
|
298
299
|
getReturnUniqueName(name = 'ret1') {
|
|
299
|
-
return utils.unique(name, this.getReturnExistingNames());
|
|
300
|
+
return utils.unique(name, this.getReturnExistingNames(), undefined, false);
|
|
300
301
|
}
|
|
301
302
|
|
|
302
303
|
/**
|
|
@@ -335,7 +336,7 @@ export class Process extends BaseNode {
|
|
|
335
336
|
name: options,
|
|
336
337
|
}, this, 'returns');
|
|
337
338
|
} else if (options instanceof Return) {
|
|
338
|
-
options.
|
|
339
|
+
options.ensureDelete(); // 同一实例不支持多处存在
|
|
339
340
|
ret = options;
|
|
340
341
|
Object.assign(ret, relationOptions);
|
|
341
342
|
} else {
|
|
@@ -423,7 +424,7 @@ export class Process extends BaseNode {
|
|
|
423
424
|
|
|
424
425
|
addReturn(options?: string | Partial<Return> | Return) {
|
|
425
426
|
const node = this._addReturn(options as any);
|
|
426
|
-
const index = this.returns.
|
|
427
|
+
const index = this.returns.indexOf(node);
|
|
427
428
|
node.create({
|
|
428
429
|
index,
|
|
429
430
|
parentNode: this,
|
|
@@ -438,7 +439,7 @@ export class Process extends BaseNode {
|
|
|
438
439
|
return (this.constants || []).filter((item) => !excludedSet.has(item)).map((item) => item.name);
|
|
439
440
|
}
|
|
440
441
|
getConstantUniqueName(name = 'constant1') {
|
|
441
|
-
return utils.unique(name, this.getConstantExistingNames());
|
|
442
|
+
return utils.unique(name, this.getConstantExistingNames(), undefined, false);
|
|
442
443
|
}
|
|
443
444
|
|
|
444
445
|
/**
|
|
@@ -477,7 +478,7 @@ export class Process extends BaseNode {
|
|
|
477
478
|
name: options,
|
|
478
479
|
}, this, 'constants');
|
|
479
480
|
} else if (options instanceof Constant) {
|
|
480
|
-
options.
|
|
481
|
+
options.ensureDelete(); // 同一实例不支持多处存在
|
|
481
482
|
constant = options;
|
|
482
483
|
Object.assign(constant, relationOptions);
|
|
483
484
|
} else {
|
|
@@ -565,7 +566,7 @@ export class Process extends BaseNode {
|
|
|
565
566
|
|
|
566
567
|
addConstant(options?: string | Partial<Constant> | Constant) {
|
|
567
568
|
const node = this._addConstant(options as any);
|
|
568
|
-
const index = this.constants.
|
|
569
|
+
const index = this.constants.indexOf(node);
|
|
569
570
|
node.create({
|
|
570
571
|
index,
|
|
571
572
|
parentNode: this,
|
|
@@ -580,7 +581,7 @@ export class Process extends BaseNode {
|
|
|
580
581
|
return (this.elements || []).filter((item) => !excludedSet.has(item)).map((item) => item.name);
|
|
581
582
|
}
|
|
582
583
|
getElementUniqueName(name = 'element1') {
|
|
583
|
-
return utils.unique(name, this.getElementExistingNames());
|
|
584
|
+
return utils.unique(name, this.getElementExistingNames(), undefined, false);
|
|
584
585
|
}
|
|
585
586
|
|
|
586
587
|
/**
|
|
@@ -619,7 +620,7 @@ export class Process extends BaseNode {
|
|
|
619
620
|
name: options,
|
|
620
621
|
}, this, 'elements');
|
|
621
622
|
} else if (options instanceof ProcessElement) {
|
|
622
|
-
options.
|
|
623
|
+
options.ensureDelete(); // 同一实例不支持多处存在
|
|
623
624
|
element = options;
|
|
624
625
|
Object.assign(element, relationOptions);
|
|
625
626
|
} else {
|
|
@@ -707,7 +708,7 @@ export class Process extends BaseNode {
|
|
|
707
708
|
|
|
708
709
|
addElement(options?: string | Partial<ProcessElement> | ProcessElement) {
|
|
709
710
|
const node = this._addElement(options as any);
|
|
710
|
-
const index = this.elements.
|
|
711
|
+
const index = this.elements.indexOf(node);
|
|
711
712
|
node.create({
|
|
712
713
|
index,
|
|
713
714
|
parentNode: this,
|
|
@@ -974,7 +975,29 @@ export class Process extends BaseNode {
|
|
|
974
975
|
}
|
|
975
976
|
|
|
976
977
|
get logics() {
|
|
977
|
-
return [
|
|
978
|
+
// return [
|
|
979
|
+
// genLaunchProcess(this),
|
|
980
|
+
// ...this.elements.filter(el => el.type === 'UserTask').map(el => {
|
|
981
|
+
// return {
|
|
982
|
+
// name: el.name,
|
|
983
|
+
// complete: genUserTaskLogic(el),
|
|
984
|
+
// }
|
|
985
|
+
// })
|
|
986
|
+
// ];
|
|
987
|
+
const ns = process2LogicNamespace(this);
|
|
988
|
+
let logics: Logic[] = [];
|
|
989
|
+
ns.children.map((subns) => {
|
|
990
|
+
logics = logics.concat(subns.logics);
|
|
991
|
+
});
|
|
992
|
+
|
|
993
|
+
return [
|
|
994
|
+
...ns.logics,
|
|
995
|
+
...logics,
|
|
996
|
+
];
|
|
997
|
+
}
|
|
998
|
+
|
|
999
|
+
toUserTaskPropertyGetterTS(userTask: ProcessElement) {
|
|
1000
|
+
return `let ${userTask.name} = elements.${userTask.name};`;
|
|
978
1001
|
}
|
|
979
1002
|
|
|
980
1003
|
@withSourceMap()
|
|
@@ -985,6 +1008,14 @@ export class Process extends BaseNode {
|
|
|
985
1008
|
const tab2 = indent(state.tabSize + 2);
|
|
986
1009
|
const tab3 = indent(state.tabSize + 3);
|
|
987
1010
|
// code += `${tab1}namespace variables{\n`;
|
|
1011
|
+
|
|
1012
|
+
code += `${tab1}export namespace logics {\n`;
|
|
1013
|
+
const logic = genLaunchProcess(this);
|
|
1014
|
+
// sourceMap 映射
|
|
1015
|
+
logic.parentNode = this;
|
|
1016
|
+
code += logic.toEmbeddedTS(shiftState(state, code, { tabSize: state.tabSize + 2 }));
|
|
1017
|
+
code += `${tab1}}\n`;
|
|
1018
|
+
|
|
988
1019
|
this.params.forEach((property) => {
|
|
989
1020
|
code += `${tab1}export let `;
|
|
990
1021
|
code += property.toEmbeddedTS(shiftState(state, code, { inline: true }));
|
|
@@ -1002,63 +1033,16 @@ export class Process extends BaseNode {
|
|
|
1002
1033
|
code += ';\n';
|
|
1003
1034
|
});
|
|
1004
1035
|
|
|
1036
|
+
code += `${tab1}export const elements = {\n`;
|
|
1005
1037
|
|
|
1006
|
-
// code += `${tab1}}\n`;
|
|
1007
|
-
|
|
1008
|
-
// this.elements.forEach((ele) => {
|
|
1009
|
-
// if (ele.type === 'UserTask') {
|
|
1010
|
-
// code += `${tab1}${ele.name}: nasl.process.UserTask;\n`;
|
|
1011
|
-
// }
|
|
1012
|
-
// });
|
|
1013
|
-
|
|
1014
|
-
// code += `${tab1}constructor(`;
|
|
1015
|
-
// this.params.forEach((param, index) => {
|
|
1016
|
-
// code += param.toEmbeddedTS(shiftState(state, code, { inline: true }));
|
|
1017
|
-
// if (index !== this.params.length - 1)
|
|
1018
|
-
// code += ', ';
|
|
1019
|
-
// });
|
|
1020
|
-
// code += `) {\n`;
|
|
1021
|
-
|
|
1022
|
-
code += `${tab1}export namespace logics {\n`;
|
|
1023
|
-
const logic = genLaunchProcess(this);
|
|
1024
|
-
code += logic.toEmbeddedTS(shiftState(state, code, { tabSize: state.tabSize + 3 }));
|
|
1025
|
-
code += `${tab1}}\n`;
|
|
1026
|
-
|
|
1027
|
-
code += `${tab1}export namespace elements {\n`
|
|
1028
1038
|
this.elements.forEach((ele) => {
|
|
1029
|
-
|
|
1030
|
-
|
|
1039
|
+
code += '\n';
|
|
1040
|
+
if (ele.type === 'UserTask' || ele.type === 'ExclusiveGateway' || ele.type === 'AutoTask') {
|
|
1031
1041
|
code += ele.toEmbeddedTS(shiftState(state, code, { tabSize: state.tabSize + 1 }));
|
|
1032
|
-
ele.bindAttrs.forEach((attr) => {
|
|
1033
|
-
if(attr.name === 'destination') {
|
|
1034
|
-
code += attr.destination.toEmbeddedTSNormalFunction(shiftState(state, code, { tabSize: state.tabSize + 2 }))
|
|
1035
|
-
} else {
|
|
1036
|
-
code += attr.toEmbeddedTS(shiftState(state, code, { tabSize: state.tabSize }));
|
|
1037
|
-
}
|
|
1038
|
-
});
|
|
1039
|
-
|
|
1040
|
-
const logic = genUserTaskLogic(ele);
|
|
1041
|
-
code += `${tab3}export namespace logics {\n`;
|
|
1042
|
-
|
|
1043
|
-
code += logic.toEmbeddedTS(shiftState(state, code, { tabSize: state.tabSize + 4 }));
|
|
1044
|
-
|
|
1045
|
-
code += `${tab3}}\n`;
|
|
1046
|
-
|
|
1047
|
-
code += `${tab2}}\n`;
|
|
1048
|
-
|
|
1049
|
-
|
|
1050
|
-
}
|
|
1051
|
-
if (ele.type === 'ExclusiveGateway') {
|
|
1052
|
-
code += `${tab2}export namespace ${ele.name}{\n`;
|
|
1053
|
-
code += ele.toEmbeddedTS(shiftState(state, code, { tabSize: state.tabSize + 1 }));
|
|
1054
|
-
code += ele.logic.toEmbeddedTSNoExport(shiftState(state, code, { tabSize: state.tabSize + 3 }));
|
|
1055
|
-
code += `${tab2}}\n`;
|
|
1056
1042
|
}
|
|
1057
1043
|
});
|
|
1058
1044
|
code += `${tab1}}\n`;
|
|
1059
|
-
|
|
1060
|
-
// code += `${tab1}}\n`;
|
|
1061
|
-
code += `${tab0}}\n`;
|
|
1045
|
+
code += `}\n`;
|
|
1062
1046
|
return code;
|
|
1063
1047
|
}
|
|
1064
1048
|
|
|
@@ -1066,31 +1050,13 @@ export class Process extends BaseNode {
|
|
|
1066
1050
|
let code = `namespace ${this.getNamespace('processes')} {\n`;
|
|
1067
1051
|
|
|
1068
1052
|
const state = createCompilerState(code, { tabSize: 1 });
|
|
1069
|
-
|
|
1070
|
-
|
|
1053
|
+
try {
|
|
1054
|
+
code += this.toEmbeddedTS(state);
|
|
1055
|
+
} catch (err) {
|
|
1056
|
+
code += '';
|
|
1057
|
+
}
|
|
1071
1058
|
code += '}\n';
|
|
1072
1059
|
|
|
1073
|
-
/* const ns = process2LogicNamespace(this);
|
|
1074
|
-
ns.path = `${this.getNamespace('logics')}.${ns.name}`;
|
|
1075
|
-
code += `\nnamespace ${ns.path} {\n`;
|
|
1076
|
-
ns.logics.forEach((logic) => {
|
|
1077
|
-
code += logic.toEmbeddedTS(shiftState(state, code)) + '\n';
|
|
1078
|
-
});
|
|
1079
|
-
this.elements.forEach((ele) => {
|
|
1080
|
-
if (ele.type === 'UserTask') {
|
|
1081
|
-
const uns = userTask2LogicNamespace(ele);
|
|
1082
|
-
code += `${tab1}export namespace ${uns.name} {\n`;
|
|
1083
|
-
|
|
1084
|
-
uns.logics.forEach((logic) => {
|
|
1085
|
-
code += logic.toEmbeddedTS(shiftState(state, code, { tabSize: state.tabSize + 1 })) + '\n';
|
|
1086
|
-
});
|
|
1087
|
-
|
|
1088
|
-
code += `${tab1}}\n`;
|
|
1089
|
-
}
|
|
1090
|
-
});
|
|
1091
|
-
|
|
1092
|
-
code += '}\n';*/
|
|
1093
|
-
|
|
1094
1060
|
return {
|
|
1095
1061
|
code,
|
|
1096
1062
|
filePath: this.getEmbeddedFilePath(),
|
|
@@ -1115,29 +1081,31 @@ export class Process extends BaseNode {
|
|
|
1115
1081
|
elements: [
|
|
1116
1082
|
{
|
|
1117
1083
|
concept: 'ProcessElement',
|
|
1118
|
-
name: '
|
|
1084
|
+
name: 'Start',
|
|
1119
1085
|
type: 'StartNoneEvent',
|
|
1120
1086
|
bounds: {
|
|
1121
1087
|
concept: 'Rect',
|
|
1122
|
-
x: 0, y: 0
|
|
1123
|
-
}
|
|
1088
|
+
x: 0, y: 0,
|
|
1089
|
+
},
|
|
1124
1090
|
},
|
|
1125
1091
|
{
|
|
1126
1092
|
concept: 'ProcessElement',
|
|
1127
|
-
name: '
|
|
1093
|
+
name: 'End',
|
|
1128
1094
|
type: 'EndNoneEvent',
|
|
1129
1095
|
bounds: {
|
|
1130
1096
|
concept: 'Rect',
|
|
1131
|
-
x: 0, y: 180
|
|
1132
|
-
}
|
|
1097
|
+
x: 0, y: 180,
|
|
1098
|
+
},
|
|
1133
1099
|
},
|
|
1134
1100
|
{
|
|
1135
1101
|
concept: 'ProcessElement',
|
|
1102
|
+
name: 'SequenceFlow',
|
|
1136
1103
|
type: 'SequenceFlow',
|
|
1137
|
-
sourceRef: '
|
|
1138
|
-
targetRef: '
|
|
1104
|
+
sourceRef: 'Start',
|
|
1105
|
+
targetRef: 'End',
|
|
1106
|
+
waypoints: [{ x: 0, y: 0 }, { x: 100, y: 100 }],
|
|
1139
1107
|
},
|
|
1140
|
-
]
|
|
1108
|
+
],
|
|
1141
1109
|
};
|
|
1142
1110
|
}
|
|
1143
1111
|
//================================================================================
|
|
@@ -1152,3 +1120,22 @@ export default Process;
|
|
|
1152
1120
|
// ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
|
|
1153
1121
|
// 自动生成的代码已结束。下面可以手动编写。
|
|
1154
1122
|
//================================================================================
|
|
1123
|
+
Process.prototype.setName = function (name: string) {
|
|
1124
|
+
const App = this.rootNode;
|
|
1125
|
+
const oldName = this.name;
|
|
1126
|
+
App.emit('collect:start', {
|
|
1127
|
+
actionMsg: '设置名称',
|
|
1128
|
+
});
|
|
1129
|
+
syncMemberExpression(this, (node) => {
|
|
1130
|
+
if (node.object instanceof Identifier && node.object.name === oldName) {
|
|
1131
|
+
node.object.update({
|
|
1132
|
+
name,
|
|
1133
|
+
});
|
|
1134
|
+
}
|
|
1135
|
+
});
|
|
1136
|
+
this.update({
|
|
1137
|
+
name,
|
|
1138
|
+
field: 'name',
|
|
1139
|
+
});
|
|
1140
|
+
App.emit('collect:end');
|
|
1141
|
+
};
|
|
@@ -138,7 +138,7 @@ export class QueryAggregateExpression extends LogicItem {
|
|
|
138
138
|
// code += `[__EMPTY_AGGREGATE_NAME__, '']`;
|
|
139
139
|
|
|
140
140
|
// return code;
|
|
141
|
-
return
|
|
141
|
+
return `__${this.asName || '__EMPTY_AGGREGATE_ALIAS__'}`;
|
|
142
142
|
}
|
|
143
143
|
|
|
144
144
|
setName(asName: string) {
|
|
@@ -99,7 +99,7 @@ export class QueryFromExpression extends LogicItem {
|
|
|
99
99
|
const relationOptions = { parentNode: this, parentKey: 'joinParts' };
|
|
100
100
|
let queryJoinExpression: QueryJoinExpression;
|
|
101
101
|
if (options instanceof QueryJoinExpression) {
|
|
102
|
-
options.
|
|
102
|
+
options.ensureDelete(); // 同一实例不支持多处存在
|
|
103
103
|
queryJoinExpression = options;
|
|
104
104
|
Object.assign(queryJoinExpression, relationOptions);
|
|
105
105
|
} else {
|
|
@@ -173,7 +173,7 @@ export class QueryFromExpression extends LogicItem {
|
|
|
173
173
|
|
|
174
174
|
addJoinPart(options?: Partial<QueryJoinExpression> | QueryJoinExpression) {
|
|
175
175
|
const node = this._addJoinPart(options as any);
|
|
176
|
-
const index = this.joinParts.
|
|
176
|
+
const index = this.joinParts.indexOf(node);
|
|
177
177
|
node.create({
|
|
178
178
|
index,
|
|
179
179
|
parentNode: this,
|
|
@@ -93,7 +93,7 @@ export class QueryJoinExpression extends LogicItem {
|
|
|
93
93
|
return (this.onExpressions || []).filter((item) => !excludedSet.has(item)).map((item) => item.name);
|
|
94
94
|
}
|
|
95
95
|
getBinaryExpressionUniqueName(name = 'binaryExpression1') {
|
|
96
|
-
return utils.unique(name, this.getBinaryExpressionExistingNames());
|
|
96
|
+
return utils.unique(name, this.getBinaryExpressionExistingNames(), undefined, false);
|
|
97
97
|
}
|
|
98
98
|
|
|
99
99
|
/**
|
|
@@ -132,7 +132,7 @@ export class QueryJoinExpression extends LogicItem {
|
|
|
132
132
|
name: options,
|
|
133
133
|
}, this, 'onExpressions');
|
|
134
134
|
} else if (options instanceof BinaryExpression) {
|
|
135
|
-
options.
|
|
135
|
+
options.ensureDelete(); // 同一实例不支持多处存在
|
|
136
136
|
binaryExpression = options;
|
|
137
137
|
Object.assign(binaryExpression, relationOptions);
|
|
138
138
|
} else {
|
|
@@ -220,7 +220,7 @@ export class QueryJoinExpression extends LogicItem {
|
|
|
220
220
|
|
|
221
221
|
addBinaryExpressionInOnExpressions(options?: string | Partial<BinaryExpression> | BinaryExpression) {
|
|
222
222
|
const node = this._addBinaryExpressionInOnExpressions(options as any);
|
|
223
|
-
const index = this.onExpressions.
|
|
223
|
+
const index = this.onExpressions.indexOf(node);
|
|
224
224
|
node.create({
|
|
225
225
|
index,
|
|
226
226
|
parentNode: this,
|
|
@@ -250,7 +250,7 @@ export class QueryJoinExpression extends LogicItem {
|
|
|
250
250
|
const relationOptions = { parentNode: this, parentKey: 'joinParts' };
|
|
251
251
|
let queryJoinExpression: QueryJoinExpression;
|
|
252
252
|
if (options instanceof QueryJoinExpression) {
|
|
253
|
-
options.
|
|
253
|
+
options.ensureDelete(); // 同一实例不支持多处存在
|
|
254
254
|
queryJoinExpression = options;
|
|
255
255
|
Object.assign(queryJoinExpression, relationOptions);
|
|
256
256
|
} else {
|
|
@@ -324,7 +324,7 @@ export class QueryJoinExpression extends LogicItem {
|
|
|
324
324
|
|
|
325
325
|
addJoinPartInJoinParts(options?: Partial<QueryJoinExpression> | QueryJoinExpression) {
|
|
326
326
|
const node = this._addJoinPartInJoinParts(options as any);
|
|
327
|
-
const index = this.joinParts.
|
|
327
|
+
const index = this.joinParts.indexOf(node);
|
|
328
328
|
node.create({
|
|
329
329
|
index,
|
|
330
330
|
parentNode: this,
|
|
@@ -168,8 +168,8 @@ export class QueryLimitExpression extends LogicItem {
|
|
|
168
168
|
@withSourceMap()
|
|
169
169
|
toEmbeddedTS(state?: TranslatorState): string {
|
|
170
170
|
const { pageElement, pageSizeElement } = this;
|
|
171
|
-
let code = '';
|
|
172
|
-
code +=
|
|
171
|
+
let code = '[';
|
|
172
|
+
code += `${pageElement.toEmbeddedTS(shiftState(state, code))}, `;
|
|
173
173
|
code += `${pageSizeElement.toEmbeddedTS(shiftState(state, code))}]`;
|
|
174
174
|
return code;
|
|
175
175
|
}
|
|
@@ -74,7 +74,7 @@ export class QuerySelectExpression extends LogicItem {
|
|
|
74
74
|
return (this.selectElements || []).filter((item) => !excludedSet.has(item)).map((item) => item.name);
|
|
75
75
|
}
|
|
76
76
|
getQueryAggregateExpressionUniqueName(name = 'queryAggregateExpression1') {
|
|
77
|
-
return utils.unique(name, this.getQueryAggregateExpressionExistingNames());
|
|
77
|
+
return utils.unique(name, this.getQueryAggregateExpressionExistingNames(), undefined, false);
|
|
78
78
|
}
|
|
79
79
|
|
|
80
80
|
/**
|
|
@@ -113,7 +113,7 @@ export class QuerySelectExpression extends LogicItem {
|
|
|
113
113
|
name: options,
|
|
114
114
|
}, this, 'selectElements');
|
|
115
115
|
} else if (options instanceof QueryAggregateExpression) {
|
|
116
|
-
options.
|
|
116
|
+
options.ensureDelete(); // 同一实例不支持多处存在
|
|
117
117
|
queryAggregateExpression = options;
|
|
118
118
|
Object.assign(queryAggregateExpression, relationOptions);
|
|
119
119
|
} else {
|
|
@@ -201,7 +201,7 @@ export class QuerySelectExpression extends LogicItem {
|
|
|
201
201
|
|
|
202
202
|
addQueryAggregateExpression(options?: string | Partial<QueryAggregateExpression> | QueryAggregateExpression) {
|
|
203
203
|
const node = this._addQueryAggregateExpression(options as any);
|
|
204
|
-
const index = this.selectElements.
|
|
204
|
+
const index = this.selectElements.indexOf(node);
|
|
205
205
|
node.create({
|
|
206
206
|
index,
|
|
207
207
|
parentNode: this,
|
package/src/concepts/Return__.ts
CHANGED
|
@@ -5,6 +5,7 @@ import Entity from './Entity__';
|
|
|
5
5
|
import EntityProperty from './EntityProperty__';
|
|
6
6
|
import Structure from './Structure__';
|
|
7
7
|
import StructureProperty from './StructureProperty__';
|
|
8
|
+
import { getNodeByNodeCallee, getNaslNodeByNodeCallee } from '../automate/engine/utils';
|
|
8
9
|
|
|
9
10
|
//================================================================================
|
|
10
11
|
// 从这里开始到结尾注释之间的代码由 NASL Workbench 自动生成,请不手动修改!
|
|
@@ -233,13 +234,26 @@ export class Return extends BaseNode {
|
|
|
233
234
|
|
|
234
235
|
@withSourceMap()
|
|
235
236
|
toEmbeddedTS(state?: TranslatorState): string {
|
|
236
|
-
let code = this.name;
|
|
237
|
+
let code = this.name || '__return';
|
|
237
238
|
if (this.typeAnnotation) {
|
|
238
239
|
code += ': ';
|
|
239
240
|
code += this.typeAnnotation.toEmbeddedTS(shiftState(state, code));
|
|
240
241
|
}
|
|
242
|
+
// if (this.defaultValue) {
|
|
243
|
+
// code += ` = ${this.defaultValue}`;
|
|
244
|
+
// }
|
|
245
|
+
return code;
|
|
246
|
+
}
|
|
247
|
+
|
|
248
|
+
@withSourceMap()
|
|
249
|
+
toEmbeddedTSInProcess(state?: TranslatorState): string {
|
|
250
|
+
let code = this.name;
|
|
251
|
+
if (this.typeAnnotation) {
|
|
252
|
+
code += ': undefined as ';
|
|
253
|
+
code += this.typeAnnotation.toEmbeddedTS(shiftState(state, code));
|
|
254
|
+
}
|
|
241
255
|
if (this.defaultValue) {
|
|
242
|
-
code +=
|
|
256
|
+
code += `: ${this.defaultValue}`;
|
|
243
257
|
}
|
|
244
258
|
return code;
|
|
245
259
|
}
|
|
@@ -264,15 +278,19 @@ export class Return extends BaseNode {
|
|
|
264
278
|
if (!typeAnnotation)
|
|
265
279
|
throw new Error('找不到类型:' + typeAnnotation);
|
|
266
280
|
} else {
|
|
267
|
-
typeAnnotation._delete();
|
|
281
|
+
typeAnnotation._delete?.();
|
|
268
282
|
const relationOptions = { parentId: this.id, parentConcept: this.concept, parentNode: this };
|
|
269
283
|
Object.assign(typeAnnotation, relationOptions);
|
|
270
284
|
}
|
|
271
|
-
|
|
285
|
+
// 处理下拉属性
|
|
286
|
+
try {
|
|
287
|
+
this.completionChildren = this.getSelectRef();
|
|
288
|
+
} catch (err) {
|
|
289
|
+
this.completionChildren = [];
|
|
290
|
+
console.log(err);
|
|
291
|
+
}
|
|
272
292
|
const object = {
|
|
273
293
|
typeAnnotation,
|
|
274
|
-
// 处理下拉属性
|
|
275
|
-
// completionChildren: this.getSelectRef(),
|
|
276
294
|
};
|
|
277
295
|
|
|
278
296
|
return this.update({
|
|
@@ -297,34 +315,47 @@ export class Return extends BaseNode {
|
|
|
297
315
|
get readonly() {
|
|
298
316
|
return !!this.module;
|
|
299
317
|
}
|
|
300
|
-
|
|
318
|
+
get hasChildren() {
|
|
319
|
+
const { typeKind, typeNamespace } = this.typeAnnotation;
|
|
320
|
+
if (typeKind === 'reference' || typeKind === 'generic') {
|
|
321
|
+
if (typeNamespace.endsWith('.enums'))
|
|
322
|
+
return null;
|
|
323
|
+
return [{}];
|
|
324
|
+
}
|
|
325
|
+
return null;
|
|
326
|
+
}
|
|
327
|
+
get isTreeLeaf() {
|
|
328
|
+
return !this.hasChildren;
|
|
329
|
+
}
|
|
301
330
|
getSelectRef() {
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
if (
|
|
318
|
-
|
|
319
|
-
|
|
331
|
+
try {
|
|
332
|
+
const { typeName, typeKind, typeNamespace } = this.typeAnnotation;
|
|
333
|
+
let completionChildren;
|
|
334
|
+
if (typeKind === 'reference') {
|
|
335
|
+
if (typeNamespace === 'nasl.ui') {
|
|
336
|
+
const node = getNaslNodeByNodeCallee(typeNamespace, typeName);
|
|
337
|
+
const properties = node.properties || [];
|
|
338
|
+
completionChildren = properties;
|
|
339
|
+
} else if (typeNamespace.endsWith('.enums')) {
|
|
340
|
+
completionChildren = undefined;
|
|
341
|
+
} else {
|
|
342
|
+
const node = getNodeByNodeCallee(this.app, typeNamespace + '.' + typeName);
|
|
343
|
+
const properties = node.properties || [];
|
|
344
|
+
completionChildren = properties;
|
|
345
|
+
}
|
|
346
|
+
} else if (typeKind === 'generic') {
|
|
347
|
+
if (typeNamespace === 'nasl.collection') {
|
|
348
|
+
const node = getNaslNodeByNodeCallee(typeNamespace, typeName);
|
|
349
|
+
const properties = node.properties || [];
|
|
350
|
+
completionChildren = properties;
|
|
351
|
+
}
|
|
320
352
|
} else {
|
|
321
353
|
completionChildren = undefined;
|
|
322
354
|
}
|
|
323
|
-
|
|
324
|
-
}
|
|
325
|
-
|
|
355
|
+
return completionChildren;
|
|
356
|
+
} catch (err) {
|
|
357
|
+
console.log(err);
|
|
326
358
|
}
|
|
327
|
-
return completionChildren;
|
|
328
359
|
}
|
|
329
360
|
//================================================================================
|
|
330
361
|
// 从这里开始到结尾注释之间的代码由 NASL Workbench 自动生成,请不手动修改!
|
package/src/concepts/Role__.ts
CHANGED
|
@@ -36,6 +36,12 @@ export class Role extends BaseNode {
|
|
|
36
36
|
@property()
|
|
37
37
|
uuid: string = uuidv4().replace(/-/g, '');
|
|
38
38
|
|
|
39
|
+
/**
|
|
40
|
+
* 创建时间
|
|
41
|
+
*/
|
|
42
|
+
@property()
|
|
43
|
+
createdTime: string = undefined;
|
|
44
|
+
|
|
39
45
|
/**
|
|
40
46
|
* 角色描述
|
|
41
47
|
*/
|
|
@@ -105,9 +111,6 @@ export class Role extends BaseNode {
|
|
|
105
111
|
|
|
106
112
|
get tsName() {
|
|
107
113
|
let tsName = this.name;
|
|
108
|
-
if (/^\d/.test(tsName)) {
|
|
109
|
-
tsName = '$' + tsName;
|
|
110
|
-
}
|
|
111
114
|
// 匹配所有特殊字符都转为_
|
|
112
115
|
tsName = tsName.replace(/[^\u4e00-\u9fa5a-zA-Z0-9]/g, '_');
|
|
113
116
|
return tsName;
|
|
@@ -132,7 +135,11 @@ export class Role extends BaseNode {
|
|
|
132
135
|
let code = `namespace ${this.getNamespace()} {\n`;
|
|
133
136
|
|
|
134
137
|
const state = createCompilerState(code, { tabSize: 1 });
|
|
135
|
-
|
|
138
|
+
try {
|
|
139
|
+
code += this.toEmbeddedTS(state);
|
|
140
|
+
} catch (err) {
|
|
141
|
+
code += '';
|
|
142
|
+
}
|
|
136
143
|
code += '}\n';
|
|
137
144
|
|
|
138
145
|
return {
|
|
@@ -128,8 +128,8 @@ export class SqlQueryComponent extends LogicItem {
|
|
|
128
128
|
//================================================================================
|
|
129
129
|
@withSourceMap()
|
|
130
130
|
toEmbeddedTS(state?: TranslatorState): string {
|
|
131
|
-
let code = `(function(): nasl.collection.
|
|
132
|
-
code +=`${this.typeAnnotation ? this.typeAnnotation.toEmbeddedTS(shiftState(state, code)): '
|
|
131
|
+
let code = `(function(): nasl.collection.List<`
|
|
132
|
+
code +=`${this.typeAnnotation ? this.typeAnnotation.toEmbeddedTS(shiftState(state, code)): '__IDENTIFIER__'}> {\n`;
|
|
133
133
|
code += '\n';
|
|
134
134
|
code += indent(state.tabSize + 1) + 'return;\n';
|
|
135
135
|
code += indent(state.tabSize) + '})();\n';
|