@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
|
@@ -0,0 +1,437 @@
|
|
|
1
|
+
//================================================================================
|
|
2
|
+
// 从这里开始到结尾注释之间的代码由 NASL Workbench 自动生成,请不手动修改!
|
|
3
|
+
// ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
|
|
4
|
+
//================================================================================
|
|
5
|
+
import { EventPayload, Params } from '../common/EventEmitter';
|
|
6
|
+
import { concept, excludedInJSON, property } from '../decorators';
|
|
7
|
+
|
|
8
|
+
import * as utils from '../utils';
|
|
9
|
+
import { v4 as uuidv4 } from 'uuid';
|
|
10
|
+
import BaseNode from '../common/BaseNode';
|
|
11
|
+
import classMap from '../common/classMap';
|
|
12
|
+
import LogicItem from './LogicItem__';
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* 经办人
|
|
16
|
+
*/
|
|
17
|
+
@concept('经办人')
|
|
18
|
+
export class Assignee extends LogicItem {
|
|
19
|
+
/**
|
|
20
|
+
* 产品概念
|
|
21
|
+
*/
|
|
22
|
+
@property()
|
|
23
|
+
concept: 'Assignee' = 'Assignee';
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* 绑定用户
|
|
27
|
+
*/
|
|
28
|
+
@property()
|
|
29
|
+
users: Array<string> = [];
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* 动态用户
|
|
33
|
+
*/
|
|
34
|
+
@property('LogicItem')
|
|
35
|
+
dynamicUsers: Array<LogicItem> = [];
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* 绑定角色
|
|
39
|
+
*/
|
|
40
|
+
@property()
|
|
41
|
+
roles: Array<string> = [];
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* 动态角色
|
|
45
|
+
*/
|
|
46
|
+
@property('LogicItem')
|
|
47
|
+
dynamicRoles: Array<LogicItem> = [];
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
/**
|
|
52
|
+
* @param source 需要合并的部分参数
|
|
53
|
+
*/
|
|
54
|
+
constructor(source?: Partial<Assignee>) {
|
|
55
|
+
source = Object.assign({}, Assignee.getDefaultOptions(), source);
|
|
56
|
+
super(source);
|
|
57
|
+
super.subConstructor(source);
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
static from(source: any, parentNode?: any, parentKey?: string): Assignee {
|
|
61
|
+
return super.from(source, parentNode, parentKey) as Assignee;
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
getLogicItemExistingNames(excludedList: Array<LogicItem> = []) {
|
|
70
|
+
const excludedSet = new Set(excludedList);
|
|
71
|
+
return (this.dynamicUsers || []).filter((item) => !excludedSet.has(item)).map((item) => item.name);
|
|
72
|
+
}
|
|
73
|
+
getLogicItemUniqueName(name = 'logicItem1') {
|
|
74
|
+
return utils.unique(name, this.getLogicItemExistingNames(), undefined, false);
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* 插入逻辑项
|
|
79
|
+
* @internal
|
|
80
|
+
* @param name 逻辑项名称,如果不填会自动生成一个唯一名称
|
|
81
|
+
*/
|
|
82
|
+
_insertLogicItemInDynamicUsersAt(name: string, index: number): LogicItem;
|
|
83
|
+
|
|
84
|
+
/**
|
|
85
|
+
* 插入逻辑项
|
|
86
|
+
* @internal
|
|
87
|
+
* @param logicItemOptions 逻辑项参数
|
|
88
|
+
*/
|
|
89
|
+
_insertLogicItemInDynamicUsersAt(logicItemOptions: Partial<LogicItem>, index: number): LogicItem;
|
|
90
|
+
|
|
91
|
+
/**
|
|
92
|
+
* 插入逻辑项
|
|
93
|
+
* @internal
|
|
94
|
+
* @param logicItem 已有的逻辑项实例
|
|
95
|
+
*/
|
|
96
|
+
_insertLogicItemInDynamicUsersAt(logicItem: LogicItem, index: number): LogicItem;
|
|
97
|
+
|
|
98
|
+
_insertLogicItemInDynamicUsersAt(options: string | Partial<LogicItem> | LogicItem, index: number) {
|
|
99
|
+
const logicItemOptions: any = {};
|
|
100
|
+
const relationOptions = { parentNode: this, parentKey: 'dynamicUsers' };
|
|
101
|
+
let logicItem: LogicItem;
|
|
102
|
+
if (!options) {
|
|
103
|
+
logicItem = LogicItem.from({
|
|
104
|
+
...logicItemOptions,
|
|
105
|
+
name: this.getLogicItemUniqueName(),
|
|
106
|
+
}, this, 'dynamicUsers');
|
|
107
|
+
} else if (typeof options === 'string') {
|
|
108
|
+
logicItem = LogicItem.from({
|
|
109
|
+
...logicItemOptions,
|
|
110
|
+
name: options,
|
|
111
|
+
}, this, 'dynamicUsers');
|
|
112
|
+
} else if (options instanceof LogicItem) {
|
|
113
|
+
options.ensureDelete(); // 同一实例不支持多处存在
|
|
114
|
+
logicItem = options;
|
|
115
|
+
Object.assign(logicItem, relationOptions);
|
|
116
|
+
} else {
|
|
117
|
+
logicItem = LogicItem.from({
|
|
118
|
+
...logicItemOptions,
|
|
119
|
+
...options,
|
|
120
|
+
}, this, 'dynamicUsers');
|
|
121
|
+
}
|
|
122
|
+
this.dynamicUsers.splice(index, 0, logicItem);
|
|
123
|
+
return logicItem;
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
/**
|
|
127
|
+
* 插入逻辑项
|
|
128
|
+
* @param name 逻辑项名称,如果不填会自动生成一个唯一名称
|
|
129
|
+
*/
|
|
130
|
+
insertLogicItemInDynamicUsersAt(name: string, index: number): LogicItem;
|
|
131
|
+
|
|
132
|
+
/**
|
|
133
|
+
* 插入逻辑项
|
|
134
|
+
* @param logicItemOptions 逻辑项参数
|
|
135
|
+
*/
|
|
136
|
+
insertLogicItemInDynamicUsersAt(logicItemOptions: Partial<LogicItem>, index: number): LogicItem;
|
|
137
|
+
|
|
138
|
+
/**
|
|
139
|
+
* 插入逻辑项
|
|
140
|
+
* @param logicItem 已有的逻辑项实例
|
|
141
|
+
*/
|
|
142
|
+
insertLogicItemInDynamicUsersAt(logicItem: LogicItem, index: number): LogicItem;
|
|
143
|
+
|
|
144
|
+
insertLogicItemInDynamicUsersAt(options: string | Partial<LogicItem> | LogicItem, index: number) {
|
|
145
|
+
const node = this._insertLogicItemInDynamicUsersAt(options as any, index);
|
|
146
|
+
node.create({
|
|
147
|
+
index,
|
|
148
|
+
parentNode: this,
|
|
149
|
+
parentKey: 'dynamicUsers',
|
|
150
|
+
});
|
|
151
|
+
return node;
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
/**
|
|
155
|
+
* 添加逻辑项
|
|
156
|
+
* @internal
|
|
157
|
+
* @param name 逻辑项名称,如果不填会自动生成一个唯一名称
|
|
158
|
+
*/
|
|
159
|
+
_addLogicItemInDynamicUsers(name?: string): LogicItem;
|
|
160
|
+
|
|
161
|
+
/**
|
|
162
|
+
* 添加逻辑项
|
|
163
|
+
* @internal
|
|
164
|
+
* @param logicItemOptions 逻辑项参数
|
|
165
|
+
*/
|
|
166
|
+
_addLogicItemInDynamicUsers(logicItemOptions: Partial<LogicItem>): LogicItem;
|
|
167
|
+
|
|
168
|
+
/**
|
|
169
|
+
* 添加逻辑项
|
|
170
|
+
* @internal
|
|
171
|
+
* @param logicItem 已有的逻辑项实例
|
|
172
|
+
*/
|
|
173
|
+
_addLogicItemInDynamicUsers(logicItem: LogicItem): LogicItem;
|
|
174
|
+
|
|
175
|
+
_addLogicItemInDynamicUsers(options?: string | Partial<LogicItem> | LogicItem) {
|
|
176
|
+
const index = this.dynamicUsers.length;
|
|
177
|
+
return this._insertLogicItemInDynamicUsersAt(options as any, index);
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
/**
|
|
181
|
+
* 添加逻辑项
|
|
182
|
+
* @internal
|
|
183
|
+
* @param name 逻辑项名称,如果不填会自动生成一个唯一名称
|
|
184
|
+
*/
|
|
185
|
+
addLogicItemInDynamicUsers(name?: string): LogicItem;
|
|
186
|
+
|
|
187
|
+
/**
|
|
188
|
+
* 添加逻辑项
|
|
189
|
+
* @param logicItemOptions 逻辑项参数
|
|
190
|
+
*/
|
|
191
|
+
addLogicItemInDynamicUsers(logicItemOptions: Partial<LogicItem>): LogicItem;
|
|
192
|
+
|
|
193
|
+
/**
|
|
194
|
+
* 添加逻辑项
|
|
195
|
+
* @param logicItem 已有的逻辑项实例
|
|
196
|
+
*/
|
|
197
|
+
addLogicItemInDynamicUsers(logicItem: LogicItem): LogicItem;
|
|
198
|
+
|
|
199
|
+
addLogicItemInDynamicUsers(options?: string | Partial<LogicItem> | LogicItem) {
|
|
200
|
+
const node = this._addLogicItemInDynamicUsers(options as any);
|
|
201
|
+
const index = this.dynamicUsers.indexOf(node);
|
|
202
|
+
node.create({
|
|
203
|
+
index,
|
|
204
|
+
parentNode: this,
|
|
205
|
+
parentKey: 'dynamicUsers',
|
|
206
|
+
});
|
|
207
|
+
return node;
|
|
208
|
+
}
|
|
209
|
+
|
|
210
|
+
/**
|
|
211
|
+
* 插入逻辑项
|
|
212
|
+
* @internal
|
|
213
|
+
* @param name 逻辑项名称,如果不填会自动生成一个唯一名称
|
|
214
|
+
*/
|
|
215
|
+
_insertLogicItemInDynamicRolesAt(name: string, index: number): LogicItem;
|
|
216
|
+
|
|
217
|
+
/**
|
|
218
|
+
* 插入逻辑项
|
|
219
|
+
* @internal
|
|
220
|
+
* @param logicItemOptions 逻辑项参数
|
|
221
|
+
*/
|
|
222
|
+
_insertLogicItemInDynamicRolesAt(logicItemOptions: Partial<LogicItem>, index: number): LogicItem;
|
|
223
|
+
|
|
224
|
+
/**
|
|
225
|
+
* 插入逻辑项
|
|
226
|
+
* @internal
|
|
227
|
+
* @param logicItem 已有的逻辑项实例
|
|
228
|
+
*/
|
|
229
|
+
_insertLogicItemInDynamicRolesAt(logicItem: LogicItem, index: number): LogicItem;
|
|
230
|
+
|
|
231
|
+
_insertLogicItemInDynamicRolesAt(options: string | Partial<LogicItem> | LogicItem, index: number) {
|
|
232
|
+
const logicItemOptions: any = {};
|
|
233
|
+
const relationOptions = { parentNode: this, parentKey: 'dynamicRoles' };
|
|
234
|
+
let logicItem: LogicItem;
|
|
235
|
+
if (!options) {
|
|
236
|
+
logicItem = LogicItem.from({
|
|
237
|
+
...logicItemOptions,
|
|
238
|
+
name: this.getLogicItemUniqueName(),
|
|
239
|
+
}, this, 'dynamicRoles');
|
|
240
|
+
} else if (typeof options === 'string') {
|
|
241
|
+
logicItem = LogicItem.from({
|
|
242
|
+
...logicItemOptions,
|
|
243
|
+
name: options,
|
|
244
|
+
}, this, 'dynamicRoles');
|
|
245
|
+
} else if (options instanceof LogicItem) {
|
|
246
|
+
options.ensureDelete(); // 同一实例不支持多处存在
|
|
247
|
+
logicItem = options;
|
|
248
|
+
Object.assign(logicItem, relationOptions);
|
|
249
|
+
} else {
|
|
250
|
+
logicItem = LogicItem.from({
|
|
251
|
+
...logicItemOptions,
|
|
252
|
+
...options,
|
|
253
|
+
}, this, 'dynamicRoles');
|
|
254
|
+
}
|
|
255
|
+
this.dynamicRoles.splice(index, 0, logicItem);
|
|
256
|
+
return logicItem;
|
|
257
|
+
}
|
|
258
|
+
|
|
259
|
+
/**
|
|
260
|
+
* 插入逻辑项
|
|
261
|
+
* @param name 逻辑项名称,如果不填会自动生成一个唯一名称
|
|
262
|
+
*/
|
|
263
|
+
insertLogicItemInDynamicRolesAt(name: string, index: number): LogicItem;
|
|
264
|
+
|
|
265
|
+
/**
|
|
266
|
+
* 插入逻辑项
|
|
267
|
+
* @param logicItemOptions 逻辑项参数
|
|
268
|
+
*/
|
|
269
|
+
insertLogicItemInDynamicRolesAt(logicItemOptions: Partial<LogicItem>, index: number): LogicItem;
|
|
270
|
+
|
|
271
|
+
/**
|
|
272
|
+
* 插入逻辑项
|
|
273
|
+
* @param logicItem 已有的逻辑项实例
|
|
274
|
+
*/
|
|
275
|
+
insertLogicItemInDynamicRolesAt(logicItem: LogicItem, index: number): LogicItem;
|
|
276
|
+
|
|
277
|
+
insertLogicItemInDynamicRolesAt(options: string | Partial<LogicItem> | LogicItem, index: number) {
|
|
278
|
+
const node = this._insertLogicItemInDynamicRolesAt(options as any, index);
|
|
279
|
+
node.create({
|
|
280
|
+
index,
|
|
281
|
+
parentNode: this,
|
|
282
|
+
parentKey: 'dynamicRoles',
|
|
283
|
+
});
|
|
284
|
+
return node;
|
|
285
|
+
}
|
|
286
|
+
|
|
287
|
+
/**
|
|
288
|
+
* 添加逻辑项
|
|
289
|
+
* @internal
|
|
290
|
+
* @param name 逻辑项名称,如果不填会自动生成一个唯一名称
|
|
291
|
+
*/
|
|
292
|
+
_addLogicItemInDynamicRoles(name?: string): LogicItem;
|
|
293
|
+
|
|
294
|
+
/**
|
|
295
|
+
* 添加逻辑项
|
|
296
|
+
* @internal
|
|
297
|
+
* @param logicItemOptions 逻辑项参数
|
|
298
|
+
*/
|
|
299
|
+
_addLogicItemInDynamicRoles(logicItemOptions: Partial<LogicItem>): LogicItem;
|
|
300
|
+
|
|
301
|
+
/**
|
|
302
|
+
* 添加逻辑项
|
|
303
|
+
* @internal
|
|
304
|
+
* @param logicItem 已有的逻辑项实例
|
|
305
|
+
*/
|
|
306
|
+
_addLogicItemInDynamicRoles(logicItem: LogicItem): LogicItem;
|
|
307
|
+
|
|
308
|
+
_addLogicItemInDynamicRoles(options?: string | Partial<LogicItem> | LogicItem) {
|
|
309
|
+
const index = this.dynamicRoles.length;
|
|
310
|
+
return this._insertLogicItemInDynamicRolesAt(options as any, index);
|
|
311
|
+
}
|
|
312
|
+
|
|
313
|
+
/**
|
|
314
|
+
* 添加逻辑项
|
|
315
|
+
* @internal
|
|
316
|
+
* @param name 逻辑项名称,如果不填会自动生成一个唯一名称
|
|
317
|
+
*/
|
|
318
|
+
addLogicItemInDynamicRoles(name?: string): LogicItem;
|
|
319
|
+
|
|
320
|
+
/**
|
|
321
|
+
* 添加逻辑项
|
|
322
|
+
* @param logicItemOptions 逻辑项参数
|
|
323
|
+
*/
|
|
324
|
+
addLogicItemInDynamicRoles(logicItemOptions: Partial<LogicItem>): LogicItem;
|
|
325
|
+
|
|
326
|
+
/**
|
|
327
|
+
* 添加逻辑项
|
|
328
|
+
* @param logicItem 已有的逻辑项实例
|
|
329
|
+
*/
|
|
330
|
+
addLogicItemInDynamicRoles(logicItem: LogicItem): LogicItem;
|
|
331
|
+
|
|
332
|
+
addLogicItemInDynamicRoles(options?: string | Partial<LogicItem> | LogicItem) {
|
|
333
|
+
const node = this._addLogicItemInDynamicRoles(options as any);
|
|
334
|
+
const index = this.dynamicRoles.indexOf(node);
|
|
335
|
+
node.create({
|
|
336
|
+
index,
|
|
337
|
+
parentNode: this,
|
|
338
|
+
parentKey: 'dynamicRoles',
|
|
339
|
+
});
|
|
340
|
+
return node;
|
|
341
|
+
}
|
|
342
|
+
|
|
343
|
+
|
|
344
|
+
|
|
345
|
+
|
|
346
|
+
/**
|
|
347
|
+
* 删除逻辑项
|
|
348
|
+
* @param name 逻辑项名称
|
|
349
|
+
*/
|
|
350
|
+
removeLogicItemInDynamicUsers(name: string): void;
|
|
351
|
+
|
|
352
|
+
/**
|
|
353
|
+
* 删除逻辑项
|
|
354
|
+
* @param logicItem 已有的逻辑项实例
|
|
355
|
+
*/
|
|
356
|
+
removeLogicItemInDynamicUsers(logicItem: LogicItem): void;
|
|
357
|
+
|
|
358
|
+
removeLogicItemInDynamicUsers(options: string | LogicItem) {
|
|
359
|
+
let logicItem: LogicItem;
|
|
360
|
+
if (typeof options === 'string') {
|
|
361
|
+
logicItem = this.dynamicUsers.find((item) => item.name === options);
|
|
362
|
+
if (!logicItem) {
|
|
363
|
+
throw new Error('找不到逻辑项 ' + options);
|
|
364
|
+
}
|
|
365
|
+
} else {
|
|
366
|
+
logicItem = options;
|
|
367
|
+
}
|
|
368
|
+
return logicItem.delete();
|
|
369
|
+
}
|
|
370
|
+
|
|
371
|
+
|
|
372
|
+
|
|
373
|
+
/**
|
|
374
|
+
* 删除逻辑项
|
|
375
|
+
* @param name 逻辑项名称
|
|
376
|
+
*/
|
|
377
|
+
removeLogicItemInDynamicRoles(name: string): void;
|
|
378
|
+
|
|
379
|
+
/**
|
|
380
|
+
* 删除逻辑项
|
|
381
|
+
* @param logicItem 已有的逻辑项实例
|
|
382
|
+
*/
|
|
383
|
+
removeLogicItemInDynamicRoles(logicItem: LogicItem): void;
|
|
384
|
+
|
|
385
|
+
removeLogicItemInDynamicRoles(options: string | LogicItem) {
|
|
386
|
+
let logicItem: LogicItem;
|
|
387
|
+
if (typeof options === 'string') {
|
|
388
|
+
logicItem = this.dynamicRoles.find((item) => item.name === options);
|
|
389
|
+
if (!logicItem) {
|
|
390
|
+
throw new Error('找不到逻辑项 ' + options);
|
|
391
|
+
}
|
|
392
|
+
} else {
|
|
393
|
+
logicItem = options;
|
|
394
|
+
}
|
|
395
|
+
return logicItem.delete();
|
|
396
|
+
}
|
|
397
|
+
|
|
398
|
+
__removeLogicItem(logicItem: LogicItem) {
|
|
399
|
+
const parentKey = logicItem.parentKey;
|
|
400
|
+
const params: Params = {
|
|
401
|
+
parentNode: this,
|
|
402
|
+
parentKey,
|
|
403
|
+
index: -1,
|
|
404
|
+
object: null,
|
|
405
|
+
oldObject: logicItem,
|
|
406
|
+
};
|
|
407
|
+
if (parentKey) {
|
|
408
|
+
params.parentKey = parentKey;
|
|
409
|
+
if (Array.isArray((this as any)[parentKey])) {
|
|
410
|
+
const index = (this as any)[parentKey].indexOf(logicItem);
|
|
411
|
+
~index && (this as any)[parentKey].splice(index, 1);
|
|
412
|
+
params.index = index;
|
|
413
|
+
} else if ((this as any)[parentKey] === logicItem) {
|
|
414
|
+
params.index = 0;
|
|
415
|
+
(this as any)[parentKey] = undefined;
|
|
416
|
+
}
|
|
417
|
+
}
|
|
418
|
+
return params;
|
|
419
|
+
}
|
|
420
|
+
|
|
421
|
+
//================================================================================
|
|
422
|
+
// ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
|
|
423
|
+
// 自动生成的代码已结束。下面可以手动编写。
|
|
424
|
+
//================================================================================
|
|
425
|
+
|
|
426
|
+
//================================================================================
|
|
427
|
+
// 从这里开始到结尾注释之间的代码由 NASL Workbench 自动生成,请不手动修改!
|
|
428
|
+
// ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
|
|
429
|
+
//================================================================================
|
|
430
|
+
}
|
|
431
|
+
|
|
432
|
+
classMap['Assignee'] = Assignee;
|
|
433
|
+
export default Assignee;
|
|
434
|
+
//================================================================================
|
|
435
|
+
// ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
|
|
436
|
+
// 自动生成的代码已结束。下面可以手动编写。
|
|
437
|
+
//================================================================================
|
|
@@ -216,7 +216,10 @@ export class Assignment extends LogicItem {
|
|
|
216
216
|
|
|
217
217
|
code += this.left ? this.left.toEmbeddedTS(shiftState(state, code, { inline: true })) : '__LEFT__';
|
|
218
218
|
code += ' = ';
|
|
219
|
-
|
|
219
|
+
// 因为右侧枚举要赋值就得new 一下;
|
|
220
|
+
if (this.right && this.right instanceof Identifier && this.right.namespace && this.right.namespace.endsWith('enums')) {
|
|
221
|
+
code += 'new ';
|
|
222
|
+
}
|
|
220
223
|
code += (this.right && this.right.toEmbeddedTS) ? this.right.toEmbeddedTS(shiftState(state, code, { inline: true })) : '__RIGHT__';
|
|
221
224
|
code += ';';
|
|
222
225
|
return code;
|
|
@@ -188,9 +188,9 @@ export class BinaryExpression extends LogicItem {
|
|
|
188
188
|
return code;
|
|
189
189
|
}
|
|
190
190
|
let code = '';
|
|
191
|
-
code +=
|
|
191
|
+
code += '(' + (this.left?.toVue(options) || '') + ')';
|
|
192
192
|
code += ` ${this.operator} `;
|
|
193
|
-
code +=
|
|
193
|
+
code += '(' + (this.right?.toVue(options) || '') + ')';
|
|
194
194
|
return code;
|
|
195
195
|
}
|
|
196
196
|
|
|
@@ -206,12 +206,13 @@ export class BinaryExpression extends LogicItem {
|
|
|
206
206
|
code += '.' + fnName + '(';
|
|
207
207
|
code += this.right?.toUI ? this.right.toUI(shiftState(state, code, { inline: true })) : '';
|
|
208
208
|
code += ')';
|
|
209
|
+
|
|
209
210
|
return code;
|
|
210
211
|
}
|
|
211
212
|
let code = '';
|
|
212
|
-
code +=
|
|
213
|
+
code += '(' + (this.left?.toUI(shiftState(state, code, { inline: true })) || '') + ')';
|
|
213
214
|
code += ` ${this.operator} `;
|
|
214
|
-
code +=
|
|
215
|
+
code += '(' + (this.right?.toUI(shiftState(state, code, { inline: true })) || '') + ')';
|
|
215
216
|
return code;
|
|
216
217
|
}
|
|
217
218
|
|
|
@@ -230,9 +231,9 @@ export class BinaryExpression extends LogicItem {
|
|
|
230
231
|
return code;
|
|
231
232
|
}
|
|
232
233
|
let code = '';
|
|
233
|
-
code +=
|
|
234
|
+
code += '(' + (this.left?.toJS(shiftState(state, code, { inline: true })) || '') + ')';
|
|
234
235
|
code += ` ${this.operator} `;
|
|
235
|
-
code +=
|
|
236
|
+
code += '(' + (this.right?.toJS(shiftState(state, code, { inline: true })) || '') + ')';
|
|
236
237
|
return code;
|
|
237
238
|
}
|
|
238
239
|
|
|
@@ -248,7 +249,7 @@ export class BinaryExpression extends LogicItem {
|
|
|
248
249
|
code += ')';
|
|
249
250
|
return code;
|
|
250
251
|
}
|
|
251
|
-
if (['&&', '||', '+', '-', '*', '/'].includes(this.operator)) {
|
|
252
|
+
if (['&&', '||', '+', '-', '*', '/', '%'].includes(this.operator)) {
|
|
252
253
|
const operatorMap = {
|
|
253
254
|
'&&': 'and',
|
|
254
255
|
'||': 'or',
|
|
@@ -256,6 +257,7 @@ export class BinaryExpression extends LogicItem {
|
|
|
256
257
|
'-': 'minus',
|
|
257
258
|
'*': 'multiply',
|
|
258
259
|
'/': 'divide',
|
|
260
|
+
'%': 'remainder',
|
|
259
261
|
};
|
|
260
262
|
let code = '';
|
|
261
263
|
code += `nasl.core.${operatorMap[this.operator as keyof typeof operatorMap]}(`;
|
|
@@ -15,6 +15,7 @@ import classMap from '../common/classMap';
|
|
|
15
15
|
import LogicItem from './LogicItem__';
|
|
16
16
|
import Destination from './Destination__';
|
|
17
17
|
import ValidationRule from './ValidationRule__';
|
|
18
|
+
import Assignee from './Assignee__';
|
|
18
19
|
import ViewElement from './ViewElement__';
|
|
19
20
|
import ProcessElement from './ProcessElement__';
|
|
20
21
|
import View from './View__';
|
|
@@ -69,6 +70,12 @@ export class BindAttribute extends BaseNode {
|
|
|
69
70
|
@property('ValidationRule')
|
|
70
71
|
rules: Array<ValidationRule> = [];
|
|
71
72
|
|
|
73
|
+
/**
|
|
74
|
+
* 经办人
|
|
75
|
+
*/
|
|
76
|
+
@property('Assignee')
|
|
77
|
+
assignee: Assignee = undefined;
|
|
78
|
+
|
|
72
79
|
/**
|
|
73
80
|
* 是否使用 v-model
|
|
74
81
|
*/
|
|
@@ -184,6 +191,21 @@ export class BindAttribute extends BaseNode {
|
|
|
184
191
|
});
|
|
185
192
|
}
|
|
186
193
|
|
|
194
|
+
/**
|
|
195
|
+
* 设置经办人
|
|
196
|
+
*/
|
|
197
|
+
setAssignee(assignee: Assignee) {
|
|
198
|
+
assignee._delete();
|
|
199
|
+
const relationOptions = { parentNode: this, parentKey: 'assignee' };
|
|
200
|
+
Object.assign(assignee, relationOptions);
|
|
201
|
+
const object = {
|
|
202
|
+
assignee,
|
|
203
|
+
};
|
|
204
|
+
this.update({
|
|
205
|
+
...object,
|
|
206
|
+
});
|
|
207
|
+
}
|
|
208
|
+
|
|
187
209
|
/**
|
|
188
210
|
* 设置是否开启双向绑定
|
|
189
211
|
*/
|
|
@@ -201,7 +223,7 @@ export class BindAttribute extends BaseNode {
|
|
|
201
223
|
return (this.rules || []).filter((item) => !excludedSet.has(item)).map((item) => item.name);
|
|
202
224
|
}
|
|
203
225
|
getValidationRuleUniqueName(name = 'validationRule1') {
|
|
204
|
-
return utils.unique(name, this.getValidationRuleExistingNames());
|
|
226
|
+
return utils.unique(name, this.getValidationRuleExistingNames(), undefined, false);
|
|
205
227
|
}
|
|
206
228
|
|
|
207
229
|
/**
|
|
@@ -240,7 +262,7 @@ export class BindAttribute extends BaseNode {
|
|
|
240
262
|
name: options,
|
|
241
263
|
}, this, 'rules');
|
|
242
264
|
} else if (options instanceof ValidationRule) {
|
|
243
|
-
options.
|
|
265
|
+
options.ensureDelete(); // 同一实例不支持多处存在
|
|
244
266
|
validationRule = options;
|
|
245
267
|
Object.assign(validationRule, relationOptions);
|
|
246
268
|
} else {
|
|
@@ -328,7 +350,7 @@ export class BindAttribute extends BaseNode {
|
|
|
328
350
|
|
|
329
351
|
addValidationRule(options?: string | Partial<ValidationRule> | ValidationRule) {
|
|
330
352
|
const node = this._addValidationRule(options as any);
|
|
331
|
-
const index = this.rules.
|
|
353
|
+
const index = this.rules.indexOf(node);
|
|
332
354
|
node.create({
|
|
333
355
|
index,
|
|
334
356
|
parentNode: this,
|
|
@@ -419,6 +441,33 @@ export class BindAttribute extends BaseNode {
|
|
|
419
441
|
return validationRule.delete();
|
|
420
442
|
}
|
|
421
443
|
|
|
444
|
+
|
|
445
|
+
|
|
446
|
+
/**
|
|
447
|
+
* 删除经办人
|
|
448
|
+
* @param name 经办人名称
|
|
449
|
+
*/
|
|
450
|
+
removeAssignee(name: string): void;
|
|
451
|
+
|
|
452
|
+
/**
|
|
453
|
+
* 删除经办人
|
|
454
|
+
* @param assignee 已有的经办人实例
|
|
455
|
+
*/
|
|
456
|
+
removeAssignee(assignee: Assignee): void;
|
|
457
|
+
|
|
458
|
+
removeAssignee(options: string | Assignee) {
|
|
459
|
+
let assignee: Assignee;
|
|
460
|
+
if (typeof options === 'string') {
|
|
461
|
+
assignee = this.assignee;
|
|
462
|
+
if (!assignee) {
|
|
463
|
+
throw new Error('找不到经办人 ' + options);
|
|
464
|
+
}
|
|
465
|
+
} else {
|
|
466
|
+
assignee = options;
|
|
467
|
+
}
|
|
468
|
+
return assignee.delete();
|
|
469
|
+
}
|
|
470
|
+
|
|
422
471
|
__removeLogicItem(logicItem: LogicItem) {
|
|
423
472
|
const parentKey = logicItem.parentKey;
|
|
424
473
|
const params: Params = {
|
|
@@ -471,16 +520,27 @@ export class BindAttribute extends BaseNode {
|
|
|
471
520
|
if (value !== undefined && value !== null && typeof value === 'string') {
|
|
472
521
|
value = value.replace(/"/g, "'");
|
|
473
522
|
}
|
|
474
|
-
if (this.name === 'destination' && this.
|
|
475
|
-
return this.destination.toVue(options);
|
|
523
|
+
if (this.name === 'destination' && this.type === 'dynamic') {
|
|
524
|
+
return this.destination ? this.destination.toVue(options) : '';
|
|
476
525
|
} else if (this.name === 'rules' && this.rules) {
|
|
477
|
-
const ruleStrs = this.rules.map((rule) => rule.toVue());
|
|
526
|
+
const ruleStrs = this.rules.map((rule) => rule.toVue(options));
|
|
478
527
|
value = ruleStrs.join(' | ');
|
|
479
528
|
return value !== undefined && value !== null ? `${this.name}="${value}"` : '';
|
|
480
|
-
} else if (this.type === 'string') {
|
|
481
|
-
return value !== undefined && value !== null ? `${this.name}="${value}"` : '';
|
|
482
529
|
} else {
|
|
483
|
-
|
|
530
|
+
let str = '';
|
|
531
|
+
let name = this.name;
|
|
532
|
+
if (value !== undefined && value !== null && value !== '') {
|
|
533
|
+
if (name === 'download') {
|
|
534
|
+
str += 'download="true" ';
|
|
535
|
+
name = 'href';
|
|
536
|
+
}
|
|
537
|
+
if (this.type === 'string') {
|
|
538
|
+
str += `${name}="${value}"`;
|
|
539
|
+
} else {
|
|
540
|
+
str += `:${name}${this.sync ? '.sync' : ''}="${value}"`;
|
|
541
|
+
}
|
|
542
|
+
}
|
|
543
|
+
return str;
|
|
484
544
|
}
|
|
485
545
|
}
|
|
486
546
|
|
|
@@ -218,12 +218,31 @@ export class BindDirective extends BaseNode {
|
|
|
218
218
|
if (this.expression) {
|
|
219
219
|
value = this.expression.toVue(options);
|
|
220
220
|
if (this.expression.concept === 'StringLiteral') {
|
|
221
|
-
value =
|
|
221
|
+
value = `${value}`;
|
|
222
222
|
}
|
|
223
|
-
value = value
|
|
223
|
+
value = value?.replace(/"/g, "'");
|
|
224
224
|
}
|
|
225
225
|
if (this.name === 'auth' && !!this.value) {
|
|
226
|
-
|
|
226
|
+
const regex = /(.\w+\[name=\w+\])/g;
|
|
227
|
+
const paths = this.element.nodePath.match(regex);
|
|
228
|
+
const regex1 = /\s*=(\w+)\]/;
|
|
229
|
+
let pathArr: string[] = [];
|
|
230
|
+
const isElement = paths.find((item) => {
|
|
231
|
+
if (item.startsWith('.elements')) {
|
|
232
|
+
return true;
|
|
233
|
+
} else {
|
|
234
|
+
pathArr.push(item);
|
|
235
|
+
return false;
|
|
236
|
+
}
|
|
237
|
+
});
|
|
238
|
+
if (isElement) {
|
|
239
|
+
pathArr = [...pathArr, ...paths.slice(-1)];
|
|
240
|
+
}
|
|
241
|
+
const _path = pathArr.reduce((str, item) => {
|
|
242
|
+
const c = item.match(regex1);
|
|
243
|
+
return str + '/' + c[1];
|
|
244
|
+
}, '');
|
|
245
|
+
value = `'${_path}'`;
|
|
227
246
|
}
|
|
228
247
|
return value !== '' && value !== undefined && value !== null ? `v-${this.name}${modifiersString}${this.arg ? ':' + this.arg : ''}="${value}"` : '';
|
|
229
248
|
}
|