@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
|
@@ -2,6 +2,8 @@ import { TranslatorState, shiftState, withSourceMap } from '../translator';
|
|
|
2
2
|
import Logic from './Logic__';
|
|
3
3
|
import Param from './Param__';
|
|
4
4
|
import { ElementToVueOptions } from './ViewElement__';
|
|
5
|
+
import { getNodeByNodeCallee } from '../automate/engine/utils';
|
|
6
|
+
|
|
5
7
|
//================================================================================
|
|
6
8
|
// 从这里开始到结尾注释之间的代码由 NASL Workbench 自动生成,请不手动修改!
|
|
7
9
|
// ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
|
|
@@ -105,7 +107,7 @@ export class CallLogic extends LogicItem {
|
|
|
105
107
|
const relationOptions = { parentNode: this, parentKey: 'typeArguments' };
|
|
106
108
|
let typeAnnotation: TypeAnnotation;
|
|
107
109
|
if (options instanceof TypeAnnotation) {
|
|
108
|
-
options.
|
|
110
|
+
options.ensureDelete(); // 同一实例不支持多处存在
|
|
109
111
|
typeAnnotation = options;
|
|
110
112
|
Object.assign(typeAnnotation, relationOptions);
|
|
111
113
|
} else {
|
|
@@ -179,7 +181,7 @@ export class CallLogic extends LogicItem {
|
|
|
179
181
|
|
|
180
182
|
addTypeAnnotation(options?: Partial<TypeAnnotation> | TypeAnnotation) {
|
|
181
183
|
const node = this._addTypeAnnotation(options as any);
|
|
182
|
-
const index = this.typeArguments.
|
|
184
|
+
const index = this.typeArguments.indexOf(node);
|
|
183
185
|
node.create({
|
|
184
186
|
index,
|
|
185
187
|
parentNode: this,
|
|
@@ -212,7 +214,7 @@ export class CallLogic extends LogicItem {
|
|
|
212
214
|
const relationOptions = { parentNode: this, parentKey: 'arguments' };
|
|
213
215
|
let argument: Argument;
|
|
214
216
|
if (options instanceof Argument) {
|
|
215
|
-
options.
|
|
217
|
+
options.ensureDelete(); // 同一实例不支持多处存在
|
|
216
218
|
argument = options;
|
|
217
219
|
Object.assign(argument, relationOptions);
|
|
218
220
|
} else {
|
|
@@ -286,7 +288,7 @@ export class CallLogic extends LogicItem {
|
|
|
286
288
|
|
|
287
289
|
addArgument(options?: Partial<Argument> | Argument) {
|
|
288
290
|
const node = this._addArgument(options as any);
|
|
289
|
-
const index = this.arguments.
|
|
291
|
+
const index = this.arguments.indexOf(node);
|
|
290
292
|
node.create({
|
|
291
293
|
index,
|
|
292
294
|
parentNode: this,
|
|
@@ -382,11 +384,16 @@ export class CallLogic extends LogicItem {
|
|
|
382
384
|
}
|
|
383
385
|
return '';
|
|
384
386
|
}
|
|
387
|
+
|
|
388
|
+
// 用于logic回填
|
|
389
|
+
get calleewholeKey(): string {
|
|
390
|
+
return this.calleeNamespace + '.' + this.calleeName;
|
|
391
|
+
}
|
|
385
392
|
get calleeKey(): string {
|
|
386
393
|
const tsCalleeNamespace = this.tsCalleeNamespace;
|
|
387
394
|
const calleeName = this.calleeName;
|
|
388
395
|
if (!tsCalleeNamespace) {
|
|
389
|
-
return calleeName ?
|
|
396
|
+
return calleeName ? `${calleeName}` : '__IDENTIFIER__';
|
|
390
397
|
}
|
|
391
398
|
// elements单独处理相对路径,和后缀的问题
|
|
392
399
|
if (tsCalleeNamespace.startsWith('elements') && tsCalleeNamespace.endsWith('logics')) {
|
|
@@ -397,10 +404,11 @@ export class CallLogic extends LogicItem {
|
|
|
397
404
|
}
|
|
398
405
|
|
|
399
406
|
/**
|
|
400
|
-
* 设置
|
|
407
|
+
* 设置argment 触发别的地方的更新
|
|
401
408
|
*/
|
|
402
|
-
setArgumentName({ argument
|
|
403
|
-
argument.setKeyword(newKeyword);
|
|
409
|
+
setArgumentName({ argument }: { argument: Argument[] }) {
|
|
410
|
+
// argument.setKeyword(newKeyword);
|
|
411
|
+
// this.arguments = argument;
|
|
404
412
|
}
|
|
405
413
|
|
|
406
414
|
/**
|
|
@@ -451,6 +459,7 @@ export class CallLogic extends LogicItem {
|
|
|
451
459
|
const relationOptions = { parentNode: this, parentKey: 'arguments' };
|
|
452
460
|
const argument = Argument.from({
|
|
453
461
|
keyword: param.name,
|
|
462
|
+
expression: param.defaultExpression,
|
|
454
463
|
}, this);
|
|
455
464
|
Object.assign(argument, relationOptions);
|
|
456
465
|
return argument;
|
|
@@ -518,11 +527,15 @@ export class CallLogic extends LogicItem {
|
|
|
518
527
|
}
|
|
519
528
|
|
|
520
529
|
toVue(options?: ElementToVueOptions): string {
|
|
521
|
-
let code =
|
|
530
|
+
let code = '';
|
|
531
|
+
if (this.calleeNamespace === 'nasl.browser' || this.calleeNamespace === 'nasl.auth' || this.calleeNamespace === 'nasl.configuration') {
|
|
532
|
+
code += '$global.';
|
|
533
|
+
}
|
|
534
|
+
code += this.calleeName;
|
|
522
535
|
code += '(';
|
|
523
|
-
this.arguments
|
|
524
|
-
code += arg
|
|
525
|
-
if (index !== this.arguments
|
|
536
|
+
this.arguments?.forEach((arg, index) => {
|
|
537
|
+
code += arg?.toVue(options);
|
|
538
|
+
if (index !== this.arguments?.length - 1)
|
|
526
539
|
code += ', ';
|
|
527
540
|
});
|
|
528
541
|
code += ')';
|
|
@@ -532,9 +545,9 @@ export class CallLogic extends LogicItem {
|
|
|
532
545
|
toUI(state?: TranslatorState): string {
|
|
533
546
|
let code = this.calleeName;
|
|
534
547
|
code += '(';
|
|
535
|
-
this.arguments
|
|
536
|
-
code += arg
|
|
537
|
-
if (index !== this.arguments
|
|
548
|
+
this.arguments?.forEach((arg, index) => {
|
|
549
|
+
code += arg?.toUI();
|
|
550
|
+
if (index !== this.arguments?.length - 1)
|
|
538
551
|
code += ', ';
|
|
539
552
|
});
|
|
540
553
|
code += ')';
|
|
@@ -550,12 +563,15 @@ export class CallLogic extends LogicItem {
|
|
|
550
563
|
let isComponentLogic = false;
|
|
551
564
|
let componentName = '';
|
|
552
565
|
const calleeNamespace = this.calleeNamespace;
|
|
566
|
+
const isProcessLogic = this.calleeNamespace?.startsWith('app.processes');
|
|
567
|
+
|
|
553
568
|
// calleeNamespace不存在,一定是页面逻辑
|
|
554
569
|
if (calleeNamespace) {
|
|
555
570
|
const namespaceArr = calleeNamespace.split('.');
|
|
556
571
|
const start = namespaceArr.shift();
|
|
557
|
-
if (start === 'app') {
|
|
558
|
-
const
|
|
572
|
+
if (start === 'app' || start === 'extensions') {
|
|
573
|
+
const mod = start === 'app' ? 0 : 1;
|
|
574
|
+
const keywordViews = namespaceArr.filter((namespaceItem, index) => index % 2 === mod).find((namespaceItem) => namespaceItem === 'views');
|
|
559
575
|
if (!keywordViews) {
|
|
560
576
|
isViewLogic = false;
|
|
561
577
|
}
|
|
@@ -566,15 +582,23 @@ export class CallLogic extends LogicItem {
|
|
|
566
582
|
}
|
|
567
583
|
// 全局逻辑
|
|
568
584
|
if (!isViewLogic) {
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
585
|
+
const namespaceArr = calleeNamespace?.split('.');
|
|
586
|
+
const logic = getNodeByNodeCallee(this.app, this.calleewholeKey, (key: string, tempPoint: any) => {
|
|
587
|
+
// 处理 NASL 中未定义的假的节点
|
|
588
|
+
if (key === tempPoint.name) {
|
|
589
|
+
return {
|
|
590
|
+
tempPoint,
|
|
591
|
+
state: 1,
|
|
592
|
+
};
|
|
593
|
+
}
|
|
594
|
+
const t = tempPoint[key];
|
|
595
|
+
return {
|
|
596
|
+
tempPoint: t,
|
|
597
|
+
state: Array.isArray(t) ? 2 : 1,
|
|
598
|
+
};
|
|
599
|
+
});
|
|
600
|
+
const args = logic?.params || [];
|
|
601
|
+
|
|
578
602
|
// 去掉app
|
|
579
603
|
namespaceArr.shift();
|
|
580
604
|
const keywordEntities = namespaceArr
|
|
@@ -585,43 +609,64 @@ export class CallLogic extends LogicItem {
|
|
|
585
609
|
.filter((namespaceItem, index) => index % 2 === 0)
|
|
586
610
|
.find((namespaceItem) => namespaceItem.key === 'entities');
|
|
587
611
|
const entityName = namespaceArr[keywordEntities?.index + 1];
|
|
612
|
+
code += `this.$logics['${this.calleeNamespace ? `${this.calleeNamespace}.${this.calleeName}` : this.calleeName}']`;
|
|
613
|
+
code += `({
|
|
614
|
+
config: {
|
|
615
|
+
download: false,
|
|
616
|
+
},
|
|
617
|
+
query: {`;
|
|
618
|
+
if (isProcessLogic) {
|
|
619
|
+
const argsStr = args.map((arg: any, index: number) => {
|
|
620
|
+
const actualArg = this.arguments?.[index];
|
|
621
|
+
return {
|
|
622
|
+
keyword: arg?.name,
|
|
623
|
+
arg: actualArg,
|
|
624
|
+
};
|
|
625
|
+
}).filter((obj: any) => obj?.arg?.expression).map((obj: any) => `\n${obj?.keyword}: ${obj?.arg?.toJS(shiftState(state, code))}`).join(', ');
|
|
626
|
+
code += argsStr;
|
|
627
|
+
}
|
|
628
|
+
code += `},
|
|
629
|
+
headers: {},
|
|
630
|
+
`;
|
|
588
631
|
|
|
589
632
|
if (entityName) {
|
|
590
633
|
let logicArgs = this.arguments;
|
|
591
634
|
switch (this.calleeName) {
|
|
592
635
|
case 'get':
|
|
593
636
|
case 'delete': {
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
}
|
|
602
|
-
});
|
|
603
|
-
code +=
|
|
604
|
-
if (idArgument) {
|
|
605
|
-
code += `\n${idArgument.keyword}: ${idArgument.toJS(shiftState(state, code))}`;
|
|
606
|
-
}
|
|
637
|
+
logicArgs = [];
|
|
638
|
+
code += `query: {`;
|
|
639
|
+
const argsStr = args.map((arg: any, index: number) => {
|
|
640
|
+
const actualArg = this.arguments?.[index];
|
|
641
|
+
return {
|
|
642
|
+
keyword: arg?.name,
|
|
643
|
+
arg: actualArg,
|
|
644
|
+
};
|
|
645
|
+
}).filter((obj: any) => obj?.arg?.expression).map((obj: any) => `\n${obj?.keyword}: ${obj?.arg?.toJS(shiftState(state, code))}`).join(', ');
|
|
646
|
+
code += argsStr;
|
|
607
647
|
code += `},\n`;
|
|
608
648
|
break;
|
|
609
649
|
}
|
|
610
650
|
}
|
|
611
651
|
const bodyArgument = logicArgs.find((arg) => arg.keyword === 'body');
|
|
612
652
|
if (bodyArgument) {
|
|
613
|
-
code += `\n${bodyArgument
|
|
653
|
+
code += `\n${bodyArgument?.keyword}: ${bodyArgument?.toJS(shiftState(state, code))}`;
|
|
614
654
|
} else {
|
|
615
655
|
code += `body: {}`;
|
|
616
656
|
}
|
|
617
657
|
} else {
|
|
618
658
|
code += `path: {},
|
|
619
659
|
body: {`;
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
|
|
660
|
+
if (!isProcessLogic) {
|
|
661
|
+
const argsStr = args.map((arg: any, index: number) => {
|
|
662
|
+
const actualArg = this.arguments?.[index];
|
|
663
|
+
return {
|
|
664
|
+
keyword: arg?.name,
|
|
665
|
+
arg: actualArg,
|
|
666
|
+
};
|
|
667
|
+
}).filter((obj: any) => obj?.arg?.expression).map((obj: any) => `\n${obj?.keyword}: ${obj?.arg?.toJS(shiftState(state, code))}`).join(', ');
|
|
668
|
+
code += argsStr;
|
|
669
|
+
}
|
|
625
670
|
code += '\n}';
|
|
626
671
|
}
|
|
627
672
|
code += '\n})';
|
|
@@ -643,15 +688,18 @@ export class CallLogic extends LogicItem {
|
|
|
643
688
|
code += `JSON.parse`;
|
|
644
689
|
break;
|
|
645
690
|
}
|
|
691
|
+
} else if (calleeNamespace === 'nasl.browser' || calleeNamespace === 'nasl.auth' || calleeNamespace === 'nasl.configuration') {
|
|
692
|
+
code += `this.$global.${this.calleeName}`;
|
|
646
693
|
} else {
|
|
647
694
|
code += `this.${this.calleeName}`;
|
|
648
695
|
}
|
|
649
696
|
code += '(';
|
|
650
|
-
this.arguments
|
|
651
|
-
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
697
|
+
this.arguments?.filter((arg) => arg?.expression)
|
|
698
|
+
.forEach((arg, index) => {
|
|
699
|
+
code += arg?.toJS(shiftState(state, code));
|
|
700
|
+
if (index !== this.arguments?.length - 1)
|
|
701
|
+
code += ', ';
|
|
702
|
+
});
|
|
655
703
|
code += ')';
|
|
656
704
|
}
|
|
657
705
|
return code;
|
|
@@ -660,14 +708,25 @@ export class CallLogic extends LogicItem {
|
|
|
660
708
|
@withSourceMap()
|
|
661
709
|
toEmbeddedTS(state?: TranslatorState): string {
|
|
662
710
|
let code = this.calleeKey;
|
|
711
|
+
if (Array.isArray(this.typeArguments) && this.typeArguments.length) {
|
|
712
|
+
// 如果有内容
|
|
713
|
+
const typeAnnotation = this.typeArguments[0];
|
|
714
|
+
code += `<`;
|
|
715
|
+
code += `${typeAnnotation.toEmbeddedTS(shiftState(state, code, { tabSize: 0 }))}>`;
|
|
716
|
+
}
|
|
663
717
|
code += '(';
|
|
664
718
|
this.arguments.forEach((arg, index) => {
|
|
665
|
-
|
|
719
|
+
const tsCalleeNamespace = this.tsCalleeNamespace;
|
|
720
|
+
// 页面逻辑先都非必填
|
|
721
|
+
if (tsCalleeNamespace.startsWith('elements') && tsCalleeNamespace.endsWith('logics')) {
|
|
722
|
+
code += arg.toEmbeddedTS(shiftState(state, code), false);
|
|
723
|
+
} else {
|
|
724
|
+
code += arg.toEmbeddedTS(shiftState(state, code));
|
|
725
|
+
}
|
|
666
726
|
if (index !== this.arguments.length - 1)
|
|
667
727
|
code += ', ';
|
|
668
728
|
});
|
|
669
729
|
code += ');\n';
|
|
670
|
-
|
|
671
730
|
return code;
|
|
672
731
|
}
|
|
673
732
|
|
|
@@ -82,6 +82,12 @@ export class CallQueryComponent extends LogicItem {
|
|
|
82
82
|
@property('QueryLimitExpression')
|
|
83
83
|
limit: QueryLimitExpression = undefined;
|
|
84
84
|
|
|
85
|
+
/**
|
|
86
|
+
* 查询组件的局部版本
|
|
87
|
+
*/
|
|
88
|
+
@property()
|
|
89
|
+
ideVersion: string = undefined;
|
|
90
|
+
|
|
85
91
|
|
|
86
92
|
|
|
87
93
|
/**
|
|
@@ -202,7 +208,7 @@ export class CallQueryComponent extends LogicItem {
|
|
|
202
208
|
return (this.groupBy || []).filter((item) => !excludedSet.has(item)).map((item) => item.name);
|
|
203
209
|
}
|
|
204
210
|
getQueryGroupByExpressionUniqueName(name = 'queryGroupByExpression1') {
|
|
205
|
-
return utils.unique(name, this.getQueryGroupByExpressionExistingNames());
|
|
211
|
+
return utils.unique(name, this.getQueryGroupByExpressionExistingNames(), undefined, false);
|
|
206
212
|
}
|
|
207
213
|
|
|
208
214
|
/**
|
|
@@ -241,7 +247,7 @@ export class CallQueryComponent extends LogicItem {
|
|
|
241
247
|
name: options,
|
|
242
248
|
}, this, 'groupBy');
|
|
243
249
|
} else if (options instanceof QueryGroupByExpression) {
|
|
244
|
-
options.
|
|
250
|
+
options.ensureDelete(); // 同一实例不支持多处存在
|
|
245
251
|
queryGroupByExpression = options;
|
|
246
252
|
Object.assign(queryGroupByExpression, relationOptions);
|
|
247
253
|
} else {
|
|
@@ -329,7 +335,7 @@ export class CallQueryComponent extends LogicItem {
|
|
|
329
335
|
|
|
330
336
|
addQueryGroupByExpressionInGroupBy(options?: string | Partial<QueryGroupByExpression> | QueryGroupByExpression) {
|
|
331
337
|
const node = this._addQueryGroupByExpressionInGroupBy(options as any);
|
|
332
|
-
const index = this.groupBy.
|
|
338
|
+
const index = this.groupBy.indexOf(node);
|
|
333
339
|
node.create({
|
|
334
340
|
index,
|
|
335
341
|
parentNode: this,
|
|
@@ -359,7 +365,7 @@ export class CallQueryComponent extends LogicItem {
|
|
|
359
365
|
const relationOptions = { parentNode: this, parentKey: 'orderBy' };
|
|
360
366
|
let queryOrderByExpression: QueryOrderByExpression;
|
|
361
367
|
if (options instanceof QueryOrderByExpression) {
|
|
362
|
-
options.
|
|
368
|
+
options.ensureDelete(); // 同一实例不支持多处存在
|
|
363
369
|
queryOrderByExpression = options;
|
|
364
370
|
Object.assign(queryOrderByExpression, relationOptions);
|
|
365
371
|
} else {
|
|
@@ -433,7 +439,7 @@ export class CallQueryComponent extends LogicItem {
|
|
|
433
439
|
|
|
434
440
|
addQueryOrderByExpressionInOrderBy(options?: Partial<QueryOrderByExpression> | QueryOrderByExpression) {
|
|
435
441
|
const node = this._addQueryOrderByExpressionInOrderBy(options as any);
|
|
436
|
-
const index = this.orderBy.
|
|
442
|
+
const index = this.orderBy.indexOf(node);
|
|
437
443
|
node.create({
|
|
438
444
|
index,
|
|
439
445
|
parentNode: this,
|
|
@@ -784,7 +790,7 @@ export class CallQueryComponent extends LogicItem {
|
|
|
784
790
|
code += indent(state.tabSize + 1);
|
|
785
791
|
const { asName, aggregateName, aggregateParam } = item;
|
|
786
792
|
if (asName)
|
|
787
|
-
code += `const ${asName} = `;
|
|
793
|
+
code += `const __${asName} = `;
|
|
788
794
|
if (aggregateName) {
|
|
789
795
|
code += `nasl.langUtil.${aggregateName}(`;
|
|
790
796
|
code += aggregateParam.toEmbeddedTS(shiftState(state, code, { tabSize: 0 }));
|
|
@@ -901,20 +907,23 @@ export class CallQueryComponent extends LogicItem {
|
|
|
901
907
|
return Structure.from({
|
|
902
908
|
concept: 'Structure',
|
|
903
909
|
name: structureName,
|
|
910
|
+
origin: 'CallQueryComponent',
|
|
904
911
|
properties: [...genPropertyListOfFrom(this.from), ...genPropertyListOfAggregate(this)],
|
|
905
912
|
});
|
|
906
913
|
}
|
|
907
914
|
|
|
908
915
|
saveStructure() {
|
|
909
916
|
const source = this.genStructure();
|
|
917
|
+
// console.log(source);
|
|
910
918
|
if (this.typeAnnotation) {
|
|
911
919
|
const structure = this.app.structures.find((item) => item.name === this.typeAnnotation.typeName);
|
|
912
920
|
if (structure) {
|
|
913
|
-
const properties = source.properties.map((property) => StructureProperty.from(property, structure));
|
|
921
|
+
const properties = source.properties.map((property) => StructureProperty.from(property, structure, 'properties'));
|
|
914
922
|
structure.update({
|
|
915
923
|
properties,
|
|
916
924
|
});
|
|
917
|
-
}
|
|
925
|
+
} else
|
|
926
|
+
this.app.addStructure(source);
|
|
918
927
|
} else {
|
|
919
928
|
source.name = utils.unique(source.name, this.app.getStructureExistingNames());
|
|
920
929
|
this.app.addStructure(source);
|
|
@@ -922,8 +931,8 @@ export class CallQueryComponent extends LogicItem {
|
|
|
922
931
|
concept: 'TypeAnnotation',
|
|
923
932
|
typeKind: 'reference',
|
|
924
933
|
typeName: source.name,
|
|
925
|
-
typeNamespace: `app
|
|
926
|
-
}, this);
|
|
934
|
+
typeNamespace: `app.structures`,
|
|
935
|
+
}, this, 'typeAnnotation');
|
|
927
936
|
this.update({
|
|
928
937
|
typeAnnotation,
|
|
929
938
|
});
|
|
@@ -936,11 +945,6 @@ export class CallQueryComponent extends LogicItem {
|
|
|
936
945
|
} catch {}
|
|
937
946
|
}
|
|
938
947
|
|
|
939
|
-
delete() {
|
|
940
|
-
this.removeStructure();
|
|
941
|
-
super.delete();
|
|
942
|
-
}
|
|
943
|
-
|
|
944
948
|
getEntityNames(node: QueryFromExpression | QueryJoinExpression, set = new Set()) {
|
|
945
949
|
if (node?.entityName)
|
|
946
950
|
set.add(node.entityName);
|
|
@@ -963,8 +967,8 @@ export class CallQueryComponent extends LogicItem {
|
|
|
963
967
|
.map((entity) => ({
|
|
964
968
|
concept: 'Entity',
|
|
965
969
|
name: entity.name,
|
|
966
|
-
children: entity.properties.map((property) =>
|
|
967
|
-
new CompletionProperty({
|
|
970
|
+
children: entity.properties.map((property) => {
|
|
971
|
+
const completionProperty = new CompletionProperty({
|
|
968
972
|
concept: 'CompletionProperty',
|
|
969
973
|
name: property.name,
|
|
970
974
|
value: `${entity.name}.${property.name}`,
|
|
@@ -975,12 +979,19 @@ export class CallQueryComponent extends LogicItem {
|
|
|
975
979
|
entityAsName: entity.name,
|
|
976
980
|
propertyName: property.name,
|
|
977
981
|
}),
|
|
978
|
-
})
|
|
982
|
+
});
|
|
983
|
+
completionProperty.icon = 'property';
|
|
984
|
+
return completionProperty;
|
|
985
|
+
}),
|
|
979
986
|
}));
|
|
980
987
|
if (children.length === 0)
|
|
981
988
|
return;
|
|
982
989
|
|
|
983
|
-
return {
|
|
990
|
+
return {
|
|
991
|
+
name: '实体',
|
|
992
|
+
icon: 'category',
|
|
993
|
+
children,
|
|
994
|
+
};
|
|
984
995
|
}
|
|
985
996
|
|
|
986
997
|
getCompletionPropertyOfAggregateAsNames() {
|
|
@@ -990,16 +1001,20 @@ export class CallQueryComponent extends LogicItem {
|
|
|
990
1001
|
new CompletionProperty({
|
|
991
1002
|
concept: 'CompletionProperty',
|
|
992
1003
|
name: item.asName,
|
|
993
|
-
value: item.asName
|
|
1004
|
+
value: `inner.${item.asName}`,
|
|
994
1005
|
expression: LogicItem.from({
|
|
995
1006
|
concept: 'Identifier',
|
|
996
1007
|
name: item.asName,
|
|
1008
|
+
namespace: 'inner',
|
|
997
1009
|
}),
|
|
998
1010
|
}));
|
|
999
1011
|
if (!children || children.length === 0)
|
|
1000
1012
|
return;
|
|
1001
1013
|
|
|
1002
|
-
|
|
1014
|
+
children.forEach((item) => {
|
|
1015
|
+
item.icon = 'variable';
|
|
1016
|
+
});
|
|
1017
|
+
return { name: '聚合属性别名', icon: 'category', children, expanded: true };
|
|
1003
1018
|
}
|
|
1004
1019
|
|
|
1005
1020
|
//================================================================================
|
|
@@ -67,7 +67,7 @@ export class Comment extends LogicItem {
|
|
|
67
67
|
//================================================================================
|
|
68
68
|
|
|
69
69
|
toJS(state?: TranslatorState): string {
|
|
70
|
-
return
|
|
70
|
+
return `/* ${this.value} */`;
|
|
71
71
|
}
|
|
72
72
|
|
|
73
73
|
public static getDefaultOptions() {
|
|
@@ -79,7 +79,11 @@ export class Comment extends LogicItem {
|
|
|
79
79
|
@withSourceMap()
|
|
80
80
|
toEmbeddedTS(state?: TranslatorState): string {
|
|
81
81
|
let code = '';
|
|
82
|
-
code += `\n${indent(state.tabSize)}
|
|
82
|
+
code += `\n${indent(state.tabSize)}
|
|
83
|
+
/**
|
|
84
|
+
* 注释不用翻译
|
|
85
|
+
*/
|
|
86
|
+
\n`;
|
|
83
87
|
return code;
|
|
84
88
|
}
|
|
85
89
|
//================================================================================
|
|
@@ -224,7 +224,7 @@ export class CompletionProperty extends BaseNode {
|
|
|
224
224
|
* 子集
|
|
225
225
|
*/
|
|
226
226
|
@property()
|
|
227
|
-
children: Array<
|
|
227
|
+
children: Array<CompletionProperty> = undefined;
|
|
228
228
|
|
|
229
229
|
/**
|
|
230
230
|
* 表达式
|
|
@@ -236,6 +236,10 @@ export class CompletionProperty extends BaseNode {
|
|
|
236
236
|
* 用于展示图标
|
|
237
237
|
*/
|
|
238
238
|
icon: string = undefined;
|
|
239
|
+
|
|
240
|
+
isProcess: boolean = false;
|
|
241
|
+
|
|
242
|
+
noFurther: boolean = false;
|
|
239
243
|
//================================================================================
|
|
240
244
|
// 从这里开始到结尾注释之间的代码由 NASL Workbench 自动生成,请不手动修改!
|
|
241
245
|
// ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
|
|
@@ -84,7 +84,7 @@ export class ConfigGroup extends BaseNode {
|
|
|
84
84
|
return (this.properties || []).filter((item) => !excludedSet.has(item)).map((item) => item.name);
|
|
85
85
|
}
|
|
86
86
|
getConfigPropertyUniqueName(name = 'configProperty1') {
|
|
87
|
-
return utils.unique(name, this.getConfigPropertyExistingNames());
|
|
87
|
+
return utils.unique(name, this.getConfigPropertyExistingNames(), undefined, false);
|
|
88
88
|
}
|
|
89
89
|
|
|
90
90
|
/**
|
|
@@ -123,7 +123,7 @@ export class ConfigGroup extends BaseNode {
|
|
|
123
123
|
name: options,
|
|
124
124
|
}, this, 'properties');
|
|
125
125
|
} else if (options instanceof ConfigProperty) {
|
|
126
|
-
options.
|
|
126
|
+
options.ensureDelete(); // 同一实例不支持多处存在
|
|
127
127
|
configProperty = options;
|
|
128
128
|
Object.assign(configProperty, relationOptions);
|
|
129
129
|
} else {
|
|
@@ -211,7 +211,7 @@ export class ConfigGroup extends BaseNode {
|
|
|
211
211
|
|
|
212
212
|
addConfigProperty(options?: string | Partial<ConfigProperty> | ConfigProperty) {
|
|
213
213
|
const node = this._addConfigProperty(options as any);
|
|
214
|
-
const index = this.properties.
|
|
214
|
+
const index = this.properties.indexOf(node);
|
|
215
215
|
node.create({
|
|
216
216
|
index,
|
|
217
217
|
parentNode: this,
|
|
@@ -90,7 +90,7 @@ export class ConfigProperty extends BaseNode {
|
|
|
90
90
|
return (this.values || []).filter((item) => !excludedSet.has(item)).map((item) => item.name);
|
|
91
91
|
}
|
|
92
92
|
getConfigPropertyValueUniqueName(name = 'configPropertyValue1') {
|
|
93
|
-
return utils.unique(name, this.getConfigPropertyValueExistingNames());
|
|
93
|
+
return utils.unique(name, this.getConfigPropertyValueExistingNames(), undefined, false);
|
|
94
94
|
}
|
|
95
95
|
|
|
96
96
|
/**
|
|
@@ -129,7 +129,7 @@ export class ConfigProperty extends BaseNode {
|
|
|
129
129
|
name: options,
|
|
130
130
|
}, this, 'values');
|
|
131
131
|
} else if (options instanceof ConfigPropertyValue) {
|
|
132
|
-
options.
|
|
132
|
+
options.ensureDelete(); // 同一实例不支持多处存在
|
|
133
133
|
configPropertyValue = options;
|
|
134
134
|
Object.assign(configPropertyValue, relationOptions);
|
|
135
135
|
} else {
|
|
@@ -217,7 +217,7 @@ export class ConfigProperty extends BaseNode {
|
|
|
217
217
|
|
|
218
218
|
addConfigPropertyValue(options?: string | Partial<ConfigPropertyValue> | ConfigPropertyValue) {
|
|
219
219
|
const node = this._addConfigPropertyValue(options as any);
|
|
220
|
-
const index = this.values.
|
|
220
|
+
const index = this.values.indexOf(node);
|
|
221
221
|
node.create({
|
|
222
222
|
index,
|
|
223
223
|
parentNode: this,
|
|
@@ -68,7 +68,7 @@ export class Configuration extends BaseNode {
|
|
|
68
68
|
return (this.groups || []).filter((item) => !excludedSet.has(item)).map((item) => item.name);
|
|
69
69
|
}
|
|
70
70
|
getConfigGroupUniqueName(name = 'configGroup1') {
|
|
71
|
-
return utils.unique(name, this.getConfigGroupExistingNames());
|
|
71
|
+
return utils.unique(name, this.getConfigGroupExistingNames(), undefined, false);
|
|
72
72
|
}
|
|
73
73
|
|
|
74
74
|
/**
|
|
@@ -107,7 +107,7 @@ export class Configuration extends BaseNode {
|
|
|
107
107
|
name: options,
|
|
108
108
|
}, this, 'groups');
|
|
109
109
|
} else if (options instanceof ConfigGroup) {
|
|
110
|
-
options.
|
|
110
|
+
options.ensureDelete(); // 同一实例不支持多处存在
|
|
111
111
|
configGroup = options;
|
|
112
112
|
Object.assign(configGroup, relationOptions);
|
|
113
113
|
} else {
|
|
@@ -195,7 +195,7 @@ export class Configuration extends BaseNode {
|
|
|
195
195
|
|
|
196
196
|
addConfigGroup(options?: string | Partial<ConfigGroup> | ConfigGroup) {
|
|
197
197
|
const node = this._addConfigGroup(options as any);
|
|
198
|
-
const index = this.groups.
|
|
198
|
+
const index = this.groups.indexOf(node);
|
|
199
199
|
node.create({
|
|
200
200
|
index,
|
|
201
201
|
parentNode: this,
|
|
@@ -235,6 +235,18 @@ export class Constant extends BaseNode {
|
|
|
235
235
|
}
|
|
236
236
|
return code;
|
|
237
237
|
}
|
|
238
|
+
@withSourceMap()
|
|
239
|
+
toEmbeddedTSInProcess(state?: TranslatorState): string {
|
|
240
|
+
let code = this.name;
|
|
241
|
+
if (this.typeAnnotation) {
|
|
242
|
+
code += ': undefined as ';
|
|
243
|
+
code += this.typeAnnotation.toEmbeddedTS(shiftState(state, code));
|
|
244
|
+
}
|
|
245
|
+
if (this.defaultValue) {
|
|
246
|
+
code += ` : ${this.defaultValue}`;
|
|
247
|
+
}
|
|
248
|
+
return code;
|
|
249
|
+
}
|
|
238
250
|
//================================================================================
|
|
239
251
|
// 从这里开始到结尾注释之间的代码由 NASL Workbench 自动生成,请不手动修改!
|
|
240
252
|
// ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
|