@lcap/nasl 1.0.0-alpha.9 → 1.0.0
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 +513 -0
- package/out/automate/engine/index.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 +75 -35
- 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 +54 -9
- package/out/concepts/BindAttribute__.js.map +1 -1
- package/out/concepts/BindDirective__.js +22 -2
- 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 +41 -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 +110 -53
- package/out/concepts/CallLogic__.js.map +1 -1
- package/out/concepts/CallQueryComponent__.d.ts +7 -1
- package/out/concepts/CallQueryComponent__.js +44 -25
- 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 +2 -2
- package/out/concepts/ConfigGroup__.js.map +1 -1
- package/out/concepts/ConfigProperty__.js +2 -2
- package/out/concepts/ConfigProperty__.js.map +1 -1
- package/out/concepts/Configuration__.js +2 -2
- 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 +94 -18
- 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 -1
- package/out/concepts/Entity__.js +37 -15
- 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 +2 -2
- package/out/concepts/Event__.js.map +1 -1
- package/out/concepts/ForEachStatement__.js +9 -13
- package/out/concepts/ForEachStatement__.js.map +1 -1
- package/out/concepts/Function__.js +9 -9
- 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 +131 -15
- 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 +16 -1
- package/out/concepts/Logic__.js +176 -33
- package/out/concepts/Logic__.js.map +1 -1
- package/out/concepts/MemberExpression__.d.ts +2 -0
- package/out/concepts/MemberExpression__.js +49 -12
- package/out/concepts/MemberExpression__.js.map +1 -1
- package/out/concepts/Module__.d.ts +126 -120
- package/out/concepts/Module__.js +28 -18
- package/out/concepts/Module__.js.map +1 -1
- package/out/concepts/Namespace__.d.ts +5 -1
- package/out/concepts/Namespace__.js +36 -25
- 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 +4 -4
- package/out/concepts/ProcessComponent__.js.map +1 -1
- package/out/concepts/ProcessElement__.d.ts +0 -4
- package/out/concepts/ProcessElement__.js +112 -49
- 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 +77 -81
- 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 +4 -4
- package/out/concepts/QueryJoinExpression__.js.map +1 -1
- package/out/concepts/QueryLimitExpression__.js +3 -3
- package/out/concepts/QueryLimitExpression__.js.map +1 -1
- package/out/concepts/QuerySelectExpression__.js +2 -2
- 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 +42 -10
- 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 +10 -10
- package/out/concepts/ViewComponent__.js.map +1 -1
- package/out/concepts/ViewElement__.d.ts +17 -11
- package/out/concepts/ViewElement__.js +299 -201
- package/out/concepts/ViewElement__.js.map +1 -1
- package/out/concepts/View__.d.ts +12 -13
- package/out/concepts/View__.js +106 -103
- 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 +1208 -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 +11 -0
- package/out/server/getScope.js +45 -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 +682 -363
- 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 +200 -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/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 +20 -1
- package/out/utils/index.js.map +1 -1
- package/package.json +2 -1
- package/src/automate/engine/index.js +116 -39
- package/src/automate/engine/utils.js +49 -19
- package/src/common/BaseNode.ts +215 -71
- package/src/concepts/App__.ts +77 -37
- 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 +68 -8
- package/src/concepts/BindDirective__.ts +21 -2
- package/src/concepts/BindEvent__.ts +67 -23
- package/src/concepts/BooleanLiteral__.ts +8 -0
- package/src/concepts/CallFunction__.ts +38 -21
- package/src/concepts/CallInterface__.ts +236 -26
- package/src/concepts/CallLogic__.ts +114 -86
- package/src/concepts/CallQueryComponent__.ts +23 -15
- package/src/concepts/Comment__.ts +6 -2
- package/src/concepts/CompletionProperty__.ts +5 -1
- package/src/concepts/ConfigGroup__.ts +2 -2
- package/src/concepts/ConfigProperty__.ts +2 -2
- package/src/concepts/Configuration__.ts +2 -2
- package/src/concepts/Constant__.ts +12 -0
- package/src/concepts/Destination__.ts +101 -17
- package/src/concepts/End__.ts +8 -1
- package/src/concepts/EntityProperty__.ts +58 -5
- package/src/concepts/Entity__.ts +40 -23
- package/src/concepts/Enum__.ts +16 -11
- package/src/concepts/Event__.ts +2 -2
- package/src/concepts/ForEachStatement__.ts +14 -19
- package/src/concepts/Function__.ts +9 -9
- package/src/concepts/Identifier__.ts +83 -32
- package/src/concepts/IfStatement__.ts +4 -4
- package/src/concepts/InterfaceParam__.ts +52 -16
- package/src/concepts/Interface__.ts +128 -14
- package/src/concepts/JSBlock__.ts +4 -0
- package/src/concepts/LogicItem__.ts +16 -1
- package/src/concepts/Logic__.ts +173 -35
- package/src/concepts/MemberExpression__.ts +58 -14
- package/src/concepts/Module__.ts +27 -16
- package/src/concepts/Namespace__.ts +37 -25
- package/src/concepts/NullLiteral__.ts +8 -1
- package/src/concepts/NumericLiteral__.ts +17 -6
- package/src/concepts/Param__.ts +56 -15
- package/src/concepts/ProcessComponent__.ts +4 -4
- package/src/concepts/ProcessElement__.ts +138 -39
- package/src/concepts/ProcessOutcome__.ts +1 -1
- package/src/concepts/Process__.ts +81 -94
- package/src/concepts/QueryAggregateExpression__.ts +1 -1
- package/src/concepts/QueryFromExpression__.ts +2 -2
- package/src/concepts/QueryJoinExpression__.ts +4 -4
- package/src/concepts/QueryLimitExpression__.ts +3 -12
- package/src/concepts/QuerySelectExpression__.ts +2 -2
- package/src/concepts/Return__.ts +62 -15
- package/src/concepts/Role__.ts +5 -4
- package/src/concepts/SqlQueryComponent__.ts +2 -2
- package/src/concepts/StringLiteral__.ts +20 -31
- package/src/concepts/StructureProperty__.ts +50 -18
- package/src/concepts/Structure__.ts +30 -8
- package/src/concepts/SwitchCase__.ts +4 -4
- package/src/concepts/SwitchStatement__.ts +2 -2
- package/src/concepts/TypeAnnotation__.ts +58 -15
- 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 +63 -14
- package/src/concepts/ViewComponent__.ts +10 -10
- package/src/concepts/ViewElement__.ts +285 -162
- package/src/concepts/View__.ts +116 -70
- 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 -11
- package/src/concepts/index__.ts +1 -0
- package/src/config.ts +1 -2
- package/src/enums/KEYWORDS.ts +1206 -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 +45 -7
- 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 +233 -63
- package/src/server/getProcesses.ts +248 -4
- package/src/server/getScope.ts +50 -0
- package/src/server/index.ts +12 -1
- package/src/server/naslServer.ts +685 -387
- 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 +198 -45
- 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 +19 -0
- 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
package/src/concepts/View__.ts
CHANGED
|
@@ -272,7 +272,7 @@ export class View extends BaseNode {
|
|
|
272
272
|
name: options,
|
|
273
273
|
}, this, 'elements');
|
|
274
274
|
} else if (options instanceof ViewElement) {
|
|
275
|
-
options.
|
|
275
|
+
options.ensureDelete(); // 同一实例不支持多处存在
|
|
276
276
|
viewElement = options;
|
|
277
277
|
Object.assign(viewElement, relationOptions);
|
|
278
278
|
} else {
|
|
@@ -360,7 +360,7 @@ export class View extends BaseNode {
|
|
|
360
360
|
|
|
361
361
|
addViewElement(options?: string | Partial<ViewElement> | ViewElement) {
|
|
362
362
|
const node = this._addViewElement(options as any);
|
|
363
|
-
const index = this.elements.
|
|
363
|
+
const index = this.elements.indexOf(node);
|
|
364
364
|
node.create({
|
|
365
365
|
index,
|
|
366
366
|
parentNode: this,
|
|
@@ -370,12 +370,8 @@ export class View extends BaseNode {
|
|
|
370
370
|
}
|
|
371
371
|
|
|
372
372
|
|
|
373
|
-
getParamExistingNames(excludedList: Array<Param> = []) {
|
|
374
|
-
const excludedSet = new Set(excludedList);
|
|
375
|
-
return (this.params || []).filter((item) => !excludedSet.has(item)).map((item) => item.name);
|
|
376
|
-
}
|
|
377
373
|
getParamUniqueName(name = 'param1') {
|
|
378
|
-
return utils.unique(name, this.
|
|
374
|
+
return utils.unique(name, this.getVarExistingNames());
|
|
379
375
|
}
|
|
380
376
|
|
|
381
377
|
/**
|
|
@@ -414,7 +410,7 @@ export class View extends BaseNode {
|
|
|
414
410
|
name: options,
|
|
415
411
|
}, this, 'params');
|
|
416
412
|
} else if (options instanceof Param) {
|
|
417
|
-
options.
|
|
413
|
+
options.ensureDelete(); // 同一实例不支持多处存在
|
|
418
414
|
param = options;
|
|
419
415
|
Object.assign(param, relationOptions);
|
|
420
416
|
} else {
|
|
@@ -502,7 +498,7 @@ export class View extends BaseNode {
|
|
|
502
498
|
|
|
503
499
|
addParam(options?: string | Partial<Param> | Param) {
|
|
504
500
|
const node = this._addParam(options as any);
|
|
505
|
-
const index = this.params.
|
|
501
|
+
const index = this.params.indexOf(node);
|
|
506
502
|
node.create({
|
|
507
503
|
index,
|
|
508
504
|
parentNode: this,
|
|
@@ -512,12 +508,8 @@ export class View extends BaseNode {
|
|
|
512
508
|
}
|
|
513
509
|
|
|
514
510
|
|
|
515
|
-
getVariableExistingNames(excludedList: Array<Variable> = []) {
|
|
516
|
-
const excludedSet = new Set(excludedList);
|
|
517
|
-
return (this.variables || []).filter((item) => !excludedSet.has(item)).map((item) => item.name);
|
|
518
|
-
}
|
|
519
511
|
getVariableUniqueName(name = 'variable1') {
|
|
520
|
-
return utils.unique(name, this.
|
|
512
|
+
return utils.unique(name, this.getVarExistingNames());
|
|
521
513
|
}
|
|
522
514
|
|
|
523
515
|
/**
|
|
@@ -556,7 +548,7 @@ export class View extends BaseNode {
|
|
|
556
548
|
name: options,
|
|
557
549
|
}, this, 'variables');
|
|
558
550
|
} else if (options instanceof Variable) {
|
|
559
|
-
options.
|
|
551
|
+
options.ensureDelete(); // 同一实例不支持多处存在
|
|
560
552
|
variable = options;
|
|
561
553
|
Object.assign(variable, relationOptions);
|
|
562
554
|
} else {
|
|
@@ -644,7 +636,7 @@ export class View extends BaseNode {
|
|
|
644
636
|
|
|
645
637
|
addVariable(options?: string | Partial<Variable> | Variable) {
|
|
646
638
|
const node = this._addVariable(options as any);
|
|
647
|
-
const index = this.variables.
|
|
639
|
+
const index = this.variables.indexOf(node);
|
|
648
640
|
node.create({
|
|
649
641
|
index,
|
|
650
642
|
parentNode: this,
|
|
@@ -698,7 +690,7 @@ export class View extends BaseNode {
|
|
|
698
690
|
name: options,
|
|
699
691
|
}, this, 'logics');
|
|
700
692
|
} else if (options instanceof Logic) {
|
|
701
|
-
options.
|
|
693
|
+
options.ensureDelete(); // 同一实例不支持多处存在
|
|
702
694
|
logic = options;
|
|
703
695
|
Object.assign(logic, relationOptions);
|
|
704
696
|
} else {
|
|
@@ -786,7 +778,7 @@ export class View extends BaseNode {
|
|
|
786
778
|
|
|
787
779
|
addLogic(options?: string | Partial<Logic> | Logic) {
|
|
788
780
|
const node = this._addLogic(options as any);
|
|
789
|
-
const index = this.logics.
|
|
781
|
+
const index = this.logics.indexOf(node);
|
|
790
782
|
node.create({
|
|
791
783
|
index,
|
|
792
784
|
parentNode: this,
|
|
@@ -840,7 +832,7 @@ export class View extends BaseNode {
|
|
|
840
832
|
name: options,
|
|
841
833
|
}, this, 'bindEvents');
|
|
842
834
|
} else if (options instanceof BindEvent) {
|
|
843
|
-
options.
|
|
835
|
+
options.ensureDelete(); // 同一实例不支持多处存在
|
|
844
836
|
bindEvent = options;
|
|
845
837
|
Object.assign(bindEvent, relationOptions);
|
|
846
838
|
} else {
|
|
@@ -928,7 +920,7 @@ export class View extends BaseNode {
|
|
|
928
920
|
|
|
929
921
|
addBindEvent(options?: string | Partial<BindEvent> | BindEvent) {
|
|
930
922
|
const node = this._addBindEvent(options as any);
|
|
931
|
-
const index = this.bindEvents.
|
|
923
|
+
const index = this.bindEvents.indexOf(node);
|
|
932
924
|
node.create({
|
|
933
925
|
index,
|
|
934
926
|
parentNode: this,
|
|
@@ -984,7 +976,7 @@ export class View extends BaseNode {
|
|
|
984
976
|
name: options,
|
|
985
977
|
}, this, 'children');
|
|
986
978
|
} else if (options instanceof View) {
|
|
987
|
-
options.
|
|
979
|
+
options.ensureDelete(); // 同一实例不支持多处存在
|
|
988
980
|
view = options;
|
|
989
981
|
Object.assign(view, relationOptions);
|
|
990
982
|
} else {
|
|
@@ -1072,7 +1064,7 @@ export class View extends BaseNode {
|
|
|
1072
1064
|
|
|
1073
1065
|
addView(options?: string | Partial<View> | View) {
|
|
1074
1066
|
const node = this._addView(options as any);
|
|
1075
|
-
const index = this.children.
|
|
1067
|
+
const index = this.children.indexOf(node);
|
|
1076
1068
|
node.create({
|
|
1077
1069
|
index,
|
|
1078
1070
|
parentNode: this,
|
|
@@ -1387,6 +1379,12 @@ export class View extends BaseNode {
|
|
|
1387
1379
|
// 自动生成的代码已结束。下面可以手动编写。
|
|
1388
1380
|
//================================================================================
|
|
1389
1381
|
|
|
1382
|
+
/* 主页面有没有权限 */
|
|
1383
|
+
get parentAuth() {
|
|
1384
|
+
const _nameSpace = this.getTsNamespace();
|
|
1385
|
+
const mainViewName = _nameSpace.split('.')[2];
|
|
1386
|
+
return mainViewName ? this.app.views.find((item) => item.name === mainViewName)?.auth : this.auth;
|
|
1387
|
+
}
|
|
1390
1388
|
/**
|
|
1391
1389
|
* 设置页面权限
|
|
1392
1390
|
*/
|
|
@@ -1474,15 +1472,6 @@ export class View extends BaseNode {
|
|
|
1474
1472
|
}
|
|
1475
1473
|
}
|
|
1476
1474
|
}
|
|
1477
|
-
// 全局结构体
|
|
1478
|
-
if (Array.isArray(definition.structures)) {
|
|
1479
|
-
definition.structures.forEach((structureOption: any) => {
|
|
1480
|
-
const structure = Structure.from({
|
|
1481
|
-
...structureOption,
|
|
1482
|
-
}, this.rootNode, 'structures');
|
|
1483
|
-
(this.rootNode as App).addStructure(structure);
|
|
1484
|
-
});
|
|
1485
|
-
}
|
|
1486
1475
|
|
|
1487
1476
|
// 全局逻辑
|
|
1488
1477
|
if (Array.isArray(definition.logics)) {
|
|
@@ -1494,6 +1483,16 @@ export class View extends BaseNode {
|
|
|
1494
1483
|
});
|
|
1495
1484
|
}
|
|
1496
1485
|
|
|
1486
|
+
// 全局结构体
|
|
1487
|
+
if (Array.isArray(definition.structures)) {
|
|
1488
|
+
definition.structures.forEach((structureOption: any) => {
|
|
1489
|
+
const structure = Structure.from({
|
|
1490
|
+
...structureOption,
|
|
1491
|
+
}, this.rootNode, 'structures');
|
|
1492
|
+
(this.rootNode as App).addStructure(structure);
|
|
1493
|
+
});
|
|
1494
|
+
}
|
|
1495
|
+
|
|
1497
1496
|
// 页面入参
|
|
1498
1497
|
if (Array.isArray(definition.viewParams)) {
|
|
1499
1498
|
definition.viewParams.forEach((paramsOption: any) => {
|
|
@@ -1540,7 +1539,27 @@ export class View extends BaseNode {
|
|
|
1540
1539
|
|
|
1541
1540
|
getVarExistingNames(excludedList: Array<Param | Variable> = []) {
|
|
1542
1541
|
const excludedSet = new Set(excludedList);
|
|
1543
|
-
|
|
1542
|
+
const varList: any[] = [];
|
|
1543
|
+
if (Array.isArray(this.params)) {
|
|
1544
|
+
varList.push(...this.params);
|
|
1545
|
+
}
|
|
1546
|
+
if (Array.isArray(this.variables)) {
|
|
1547
|
+
varList.push(...this.variables);
|
|
1548
|
+
}
|
|
1549
|
+
if (Array.isArray(this.logics)) {
|
|
1550
|
+
this.logics.forEach((logic) => {
|
|
1551
|
+
if (Array.isArray(logic.params)) {
|
|
1552
|
+
varList.push(...logic.params);
|
|
1553
|
+
}
|
|
1554
|
+
if (Array.isArray(logic.returns)) {
|
|
1555
|
+
varList.push(...logic.returns);
|
|
1556
|
+
}
|
|
1557
|
+
if (Array.isArray(logic.variables)) {
|
|
1558
|
+
varList.push(...logic.variables);
|
|
1559
|
+
}
|
|
1560
|
+
});
|
|
1561
|
+
}
|
|
1562
|
+
return varList.filter((item) => !excludedSet.has(item)).map((item) => item.name);
|
|
1544
1563
|
}
|
|
1545
1564
|
|
|
1546
1565
|
/**
|
|
@@ -1559,7 +1578,7 @@ export class View extends BaseNode {
|
|
|
1559
1578
|
events: this.bindEvents,
|
|
1560
1579
|
title: this.title,
|
|
1561
1580
|
crumb: this.crumb,
|
|
1562
|
-
first: this.isIndex,
|
|
1581
|
+
first: this.children.find((child) => child.isIndex)?.name,
|
|
1563
1582
|
};
|
|
1564
1583
|
return `${componentOptions}
|
|
1565
1584
|
${translator(definition)}
|
|
@@ -1567,7 +1586,7 @@ export class View extends BaseNode {
|
|
|
1567
1586
|
`;
|
|
1568
1587
|
}
|
|
1569
1588
|
genVueTemplate(options?: ElementToVueOptions) {
|
|
1570
|
-
return this.elements
|
|
1589
|
+
return this.elements?.map((element) => element?.toVue(options) + '\n').join('');
|
|
1571
1590
|
}
|
|
1572
1591
|
/**
|
|
1573
1592
|
* 转换成 Vue 文件
|
|
@@ -1630,6 +1649,13 @@ export class View extends BaseNode {
|
|
|
1630
1649
|
throw new Error('无法获取命名空间,请设置 parentNode!');
|
|
1631
1650
|
}
|
|
1632
1651
|
|
|
1652
|
+
getTsNamespace() {
|
|
1653
|
+
const parentNodeNamespace = this.getNamespace();
|
|
1654
|
+
let tsCalleeNamespace = parentNodeNamespace.replace(/\.[0-9]/g, (m) => m.replace('.', '.$'));
|
|
1655
|
+
tsCalleeNamespace = tsCalleeNamespace.replace(/-/g, '_');
|
|
1656
|
+
return tsCalleeNamespace;
|
|
1657
|
+
}
|
|
1658
|
+
|
|
1633
1659
|
// 获取当前element,铺平
|
|
1634
1660
|
elementsMethods(elements: Array<ViewElement>, allMethods: Array<ViewElement>) {
|
|
1635
1661
|
if (elements) {
|
|
@@ -1646,9 +1672,6 @@ export class View extends BaseNode {
|
|
|
1646
1672
|
toEmbeddedTS(state?: TranslatorState): string {
|
|
1647
1673
|
function chineseTsName(name: string) {
|
|
1648
1674
|
let tsName = name;
|
|
1649
|
-
if (/^\d/.test(tsName)) {
|
|
1650
|
-
tsName = '$' + tsName;
|
|
1651
|
-
}
|
|
1652
1675
|
// 匹配所有特殊字符都转为_
|
|
1653
1676
|
tsName = tsName.replace(/[^\u4e00-\u9fa5a-zA-Z0-9]/g, '_');
|
|
1654
1677
|
return tsName;
|
|
@@ -1656,21 +1679,9 @@ export class View extends BaseNode {
|
|
|
1656
1679
|
|
|
1657
1680
|
let code = `export namespace ${this.tsName} {\n`;
|
|
1658
1681
|
// 角色
|
|
1659
|
-
|
|
1660
|
-
// code += indent(state.tabSize + 1);
|
|
1661
|
-
// code += 'export let roles = [\n';
|
|
1662
|
-
// this.roles.forEach((role) => {
|
|
1663
|
-
// code += indent(state.tabSize + 1);
|
|
1664
|
-
// `${this.app.getNamespace()}.${role.name}`;
|
|
1665
|
-
// code += `${role.namespace}.${role.name},`;
|
|
1666
|
-
// code += '\n';
|
|
1667
|
-
// });
|
|
1668
|
-
// code += indent(state.tabSize + 1);
|
|
1669
|
-
// code += '];\n';
|
|
1670
|
-
// }
|
|
1671
|
-
if (this.auth && Array.isArray(this.bindRoles) && this.bindRoles.length) {
|
|
1682
|
+
if (Array.isArray(this.bindRoles) && this.bindRoles.length) {
|
|
1672
1683
|
code += indent(state.tabSize + 1);
|
|
1673
|
-
code += 'export let
|
|
1684
|
+
code += 'export let __bindRoles = [\n';
|
|
1674
1685
|
this.bindRoles.forEach((role) => {
|
|
1675
1686
|
code += indent(state.tabSize + 1);
|
|
1676
1687
|
code += `${this.app.getNamespace()}.roles.${chineseTsName(role)}.${chineseTsName(role)},`;
|
|
@@ -1696,7 +1707,7 @@ export class View extends BaseNode {
|
|
|
1696
1707
|
}
|
|
1697
1708
|
|
|
1698
1709
|
// elements类型声明定义
|
|
1699
|
-
code +=
|
|
1710
|
+
code += `interface __elements {\n`;
|
|
1700
1711
|
// 生成所有的name和类型定义
|
|
1701
1712
|
this.elements.forEach((element) => {
|
|
1702
1713
|
code += element.toEmbeddedTSDefinition(shiftState(state, code, {
|
|
@@ -1704,29 +1715,27 @@ export class View extends BaseNode {
|
|
|
1704
1715
|
}));
|
|
1705
1716
|
});
|
|
1706
1717
|
code += indent(state.tabSize + 1) + '}\n';
|
|
1718
|
+
code += `let __elements: __elements;\n`;
|
|
1707
1719
|
// 逻辑
|
|
1708
1720
|
if (Array.isArray(this.logics) && this.logics.length) {
|
|
1709
1721
|
code += indent(state.tabSize + 1);
|
|
1710
|
-
code += `export namespace logics {\n`;
|
|
1711
1722
|
this.logics.forEach((logic) => {
|
|
1712
1723
|
code += logic.toEmbeddedTS(shiftState(state, code, {
|
|
1713
1724
|
tabSize: state.tabSize + 2,
|
|
1714
|
-
}));
|
|
1725
|
+
}), 'noExport');
|
|
1715
1726
|
code += '\n';
|
|
1716
1727
|
});
|
|
1717
1728
|
code += indent(state.tabSize + 1);
|
|
1718
|
-
code += '}\n';
|
|
1719
1729
|
}
|
|
1720
1730
|
// 事件
|
|
1721
|
-
|
|
1722
|
-
|
|
1723
|
-
|
|
1724
|
-
|
|
1725
|
-
|
|
1726
|
-
|
|
1727
|
-
|
|
1728
|
-
|
|
1729
|
-
// }
|
|
1731
|
+
if (Array.isArray(this.bindEvents)) {
|
|
1732
|
+
this.bindEvents.forEach((event) => {
|
|
1733
|
+
code += event.toEmbeddedTS(shiftState(state, code, {
|
|
1734
|
+
tabSize: state.tabSize,
|
|
1735
|
+
}), true);
|
|
1736
|
+
code += '\n';
|
|
1737
|
+
});
|
|
1738
|
+
}
|
|
1730
1739
|
|
|
1731
1740
|
// render函数
|
|
1732
1741
|
code += '\n' + indent(state.tabSize + 1);
|
|
@@ -1748,25 +1757,30 @@ export class View extends BaseNode {
|
|
|
1748
1757
|
code += '\n' + indent(state.tabSize + 1) + '}\n';
|
|
1749
1758
|
|
|
1750
1759
|
if (Array.isArray(this.params)) {
|
|
1751
|
-
code += indent(state.tabSize + 1) + `export function $destination(`;
|
|
1760
|
+
code += indent(state.tabSize + 1) + `export function $destination(options: {`;
|
|
1752
1761
|
this.params.forEach((param, index) => {
|
|
1753
|
-
code +=
|
|
1762
|
+
code += param.name + '?: ';
|
|
1763
|
+
code += param.typeAnnotation.toEmbeddedTS(shiftState(state, code));
|
|
1754
1764
|
if (index !== this.params.length - 1)
|
|
1755
1765
|
code += ', ';
|
|
1756
1766
|
});
|
|
1757
|
-
code += '){}\n';
|
|
1767
|
+
code += '}){}\n';
|
|
1758
1768
|
}
|
|
1759
1769
|
code += indent(state.tabSize) + '}\n';
|
|
1760
1770
|
return code;
|
|
1761
1771
|
}
|
|
1762
1772
|
|
|
1763
1773
|
toEmbeddedTSFile() {
|
|
1764
|
-
let code = `namespace ${this.
|
|
1774
|
+
let code = `namespace ${this.getTsNamespace()} {\n`;
|
|
1765
1775
|
const state = createCompilerState(code, {
|
|
1766
1776
|
tabSize: 1,
|
|
1767
1777
|
});
|
|
1768
1778
|
|
|
1769
|
-
|
|
1779
|
+
try {
|
|
1780
|
+
code += this.toEmbeddedTS(state);
|
|
1781
|
+
} catch (err) {
|
|
1782
|
+
code += '';
|
|
1783
|
+
}
|
|
1770
1784
|
|
|
1771
1785
|
code += '}\n';
|
|
1772
1786
|
|
|
@@ -1786,11 +1800,18 @@ export class View extends BaseNode {
|
|
|
1786
1800
|
}
|
|
1787
1801
|
let path = '/';
|
|
1788
1802
|
if (_path.length) {
|
|
1789
|
-
path += `${_path.join('/')}`;
|
|
1803
|
+
path += `${_path.reverse().join('/')}`;
|
|
1790
1804
|
}
|
|
1791
1805
|
return path;
|
|
1792
1806
|
}
|
|
1793
1807
|
|
|
1808
|
+
/**
|
|
1809
|
+
* 权限领域的资源路径
|
|
1810
|
+
*/
|
|
1811
|
+
get authPath() {
|
|
1812
|
+
return this.path;
|
|
1813
|
+
}
|
|
1814
|
+
|
|
1794
1815
|
/**
|
|
1795
1816
|
* @param path 子路径
|
|
1796
1817
|
* 比如当前页面路径为:/dashboard
|
|
@@ -1808,6 +1829,25 @@ export class View extends BaseNode {
|
|
|
1808
1829
|
return arr.length ? subView.findViewByPath(arr.join('/')) : subView;
|
|
1809
1830
|
}
|
|
1810
1831
|
|
|
1832
|
+
findViewByName(name: string): View {
|
|
1833
|
+
return utils.traverse((current) => {
|
|
1834
|
+
if (current.node.name === name)
|
|
1835
|
+
return current.node;
|
|
1836
|
+
}, { node: this });
|
|
1837
|
+
}
|
|
1838
|
+
|
|
1839
|
+
findElementByName(name: string): ViewElement {
|
|
1840
|
+
return this.elements[0]?.findElementByName(name);
|
|
1841
|
+
}
|
|
1842
|
+
|
|
1843
|
+
findElementByTag(tag: string): ViewElement {
|
|
1844
|
+
return this.elements[0]?.findElementByName(tag);
|
|
1845
|
+
}
|
|
1846
|
+
|
|
1847
|
+
findElementByAttr(name: string, value: string): ViewElement {
|
|
1848
|
+
return this.elements[0]?.findElementByAttr(name, value);
|
|
1849
|
+
}
|
|
1850
|
+
|
|
1811
1851
|
_setAsIndexView(isIndex: boolean) {
|
|
1812
1852
|
let views: View[] = [];
|
|
1813
1853
|
if (this.parentNode.concept !== 'View') {
|
|
@@ -1842,6 +1882,12 @@ export class View extends BaseNode {
|
|
|
1842
1882
|
this.rootNode.emit('collect:end');
|
|
1843
1883
|
}
|
|
1844
1884
|
|
|
1885
|
+
removeExistingViewElement(viewElement: ViewElement) {
|
|
1886
|
+
if (this.existingViewElement.has(viewElement.name)) {
|
|
1887
|
+
this.existingViewElement.delete(viewElement.name);
|
|
1888
|
+
}
|
|
1889
|
+
}
|
|
1890
|
+
|
|
1845
1891
|
//================================================================================
|
|
1846
1892
|
// 从这里开始到结尾注释之间的代码由 NASL Workbench 自动生成,请不手动修改!
|
|
1847
1893
|
// ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
|
|
@@ -89,7 +89,7 @@ export class WhileStatement extends LogicItem {
|
|
|
89
89
|
const relationOptions = { parentNode: this, parentKey: 'body' };
|
|
90
90
|
let logicItem: LogicItem;
|
|
91
91
|
if (options instanceof LogicItem) {
|
|
92
|
-
options.
|
|
92
|
+
options.ensureDelete(); // 同一实例不支持多处存在
|
|
93
93
|
logicItem = options;
|
|
94
94
|
Object.assign(logicItem, relationOptions);
|
|
95
95
|
} else {
|
|
@@ -163,7 +163,7 @@ export class WhileStatement extends LogicItem {
|
|
|
163
163
|
|
|
164
164
|
addItem(options?: Partial<LogicItem> | LogicItem) {
|
|
165
165
|
const node = this._addItem(options as any);
|
|
166
|
-
const index = this.body.
|
|
166
|
+
const index = this.body.indexOf(node);
|
|
167
167
|
node.create({
|
|
168
168
|
index,
|
|
169
169
|
parentNode: this,
|
|
@@ -243,7 +243,7 @@ export class WhileStatement extends LogicItem {
|
|
|
243
243
|
public static getDefaultOptions() {
|
|
244
244
|
return {
|
|
245
245
|
label: 'While 循环分支',
|
|
246
|
-
}
|
|
246
|
+
};
|
|
247
247
|
}
|
|
248
248
|
toJS(state?: TranslatorState): string {
|
|
249
249
|
let code = '';
|
|
@@ -251,7 +251,7 @@ export class WhileStatement extends LogicItem {
|
|
|
251
251
|
code += this.test ? this.test.toJS(shiftState(state, code, {
|
|
252
252
|
tabSize: 0,
|
|
253
253
|
})) : '';
|
|
254
|
-
code += ')
|
|
254
|
+
code += ') {\n';
|
|
255
255
|
|
|
256
256
|
if (Array.isArray(this.body)) {
|
|
257
257
|
this.body.forEach((logicItem) => {
|
|
@@ -9,12 +9,14 @@ import naslInterface from './nasl.interface';
|
|
|
9
9
|
import naslUtil from './nasl.util';
|
|
10
10
|
import naslProcess from './nasl.process';
|
|
11
11
|
import naslValidation from './nasl.validation';
|
|
12
|
+
import naslBrowser from './nasl.browser';
|
|
13
|
+
import naslAuth from './nasl.auth';
|
|
14
|
+
import naslConfiguration from './nasl.configuration';
|
|
12
15
|
|
|
13
16
|
export { reference2TypeAnnotationList } from './reference2TypeAnnotationList';
|
|
14
17
|
export const stdlibNamespace = new Namespace({
|
|
15
18
|
name: 'nasl',
|
|
16
19
|
path: 'nasl',
|
|
17
|
-
children: [naslCore, naslCollection, naslInterface, naslUi, naslUtil, naslProcess, naslValidation],
|
|
20
|
+
children: [naslCore, naslCollection, naslInterface, naslUi, naslUtil, naslProcess, naslValidation, naslBrowser, naslAuth, naslConfiguration],
|
|
18
21
|
});
|
|
19
|
-
|
|
20
22
|
export default stdlibNamespace;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import Namespace from '../../Namespace__';
|
|
2
|
+
import Param from '../../Param__';
|
|
3
|
+
import Return from '../../Return__';
|
|
4
|
+
import Logic from '../../Logic__';
|
|
5
|
+
import TypeAnnotation from '../../TypeAnnotation__';
|
|
6
|
+
|
|
7
|
+
export default new Namespace({
|
|
8
|
+
name: 'auth',
|
|
9
|
+
logics: [
|
|
10
|
+
new Logic({
|
|
11
|
+
name: 'hasAuth',
|
|
12
|
+
params: [
|
|
13
|
+
new Param({
|
|
14
|
+
name: 'authPath',
|
|
15
|
+
typeAnnotation: TypeAnnotation.createPrimitive('String'),
|
|
16
|
+
}),
|
|
17
|
+
],
|
|
18
|
+
returns: [],
|
|
19
|
+
}),
|
|
20
|
+
new Logic({
|
|
21
|
+
name: 'logout',
|
|
22
|
+
params: [],
|
|
23
|
+
returns: [],
|
|
24
|
+
}),
|
|
25
|
+
],
|
|
26
|
+
});
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import Namespace from '../../Namespace__';
|
|
2
|
+
import Param from '../../Param__';
|
|
3
|
+
import Return from '../../Return__';
|
|
4
|
+
import Logic from '../../Logic__';
|
|
5
|
+
import TypeAnnotation from '../../TypeAnnotation__';
|
|
6
|
+
|
|
7
|
+
export default new Namespace({
|
|
8
|
+
name: 'browser',
|
|
9
|
+
logics: [
|
|
10
|
+
new Logic({
|
|
11
|
+
name: 'requestFullscreen',
|
|
12
|
+
params: [],
|
|
13
|
+
body: [],
|
|
14
|
+
}),
|
|
15
|
+
new Logic({
|
|
16
|
+
name: 'exitFullscreen',
|
|
17
|
+
params: [],
|
|
18
|
+
body: [],
|
|
19
|
+
}),
|
|
20
|
+
new Logic({
|
|
21
|
+
name: 'getDistance',
|
|
22
|
+
params: [
|
|
23
|
+
new Param({
|
|
24
|
+
name: 'Point1',
|
|
25
|
+
typeAnnotation: TypeAnnotation.createPrimitive('String'),
|
|
26
|
+
required: true,
|
|
27
|
+
}),
|
|
28
|
+
new Param({
|
|
29
|
+
name: 'Point2',
|
|
30
|
+
typeAnnotation: TypeAnnotation.createPrimitive('String'),
|
|
31
|
+
required: true,
|
|
32
|
+
}),
|
|
33
|
+
],
|
|
34
|
+
body: [],
|
|
35
|
+
}),
|
|
36
|
+
],
|
|
37
|
+
});
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import Namespace from '../../Namespace__';
|
|
2
|
+
import Param from '../../Param__';
|
|
3
|
+
import Return from '../../Return__';
|
|
4
|
+
import Logic from '../../Logic__';
|
|
5
|
+
import TypeAnnotation from '../../TypeAnnotation__';
|
|
6
|
+
|
|
7
|
+
export default new Namespace({
|
|
8
|
+
name: 'configuration',
|
|
9
|
+
logics: [
|
|
10
|
+
new Logic({
|
|
11
|
+
name: 'getConfig',
|
|
12
|
+
params: [
|
|
13
|
+
new Param({
|
|
14
|
+
name: 'name',
|
|
15
|
+
typeAnnotation: TypeAnnotation.createPrimitive('String'),
|
|
16
|
+
}),
|
|
17
|
+
],
|
|
18
|
+
returns: [],
|
|
19
|
+
}),
|
|
20
|
+
],
|
|
21
|
+
});
|
|
@@ -790,10 +790,29 @@ export const uiStructures = [
|
|
|
790
790
|
}),
|
|
791
791
|
],
|
|
792
792
|
}),
|
|
793
|
+
new Structure({
|
|
794
|
+
name: 'File',
|
|
795
|
+
properties: [
|
|
796
|
+
new StructureProperty({
|
|
797
|
+
name: 'name',
|
|
798
|
+
description: '文件名称',
|
|
799
|
+
typeAnnotation: TypeAnnotation.createPrimitive('String'),
|
|
800
|
+
}),
|
|
801
|
+
new StructureProperty({
|
|
802
|
+
name: 'size',
|
|
803
|
+
description: '文件大小',
|
|
804
|
+
typeAnnotation: TypeAnnotation.createPrimitive('Integer'),
|
|
805
|
+
}),
|
|
806
|
+
new StructureProperty({
|
|
807
|
+
name: 'type',
|
|
808
|
+
description: '文件类型',
|
|
809
|
+
typeAnnotation: TypeAnnotation.createPrimitive('String'),
|
|
810
|
+
}),
|
|
811
|
+
],
|
|
812
|
+
}),
|
|
793
813
|
];
|
|
794
814
|
|
|
795
815
|
export const uiTypeList: Array<TypeAnnotation> = reference2TypeAnnotationList(uiStructures, 'nasl.ui');
|
|
796
|
-
|
|
797
816
|
export default new Namespace({
|
|
798
817
|
name: 'ui',
|
|
799
818
|
logics: [
|