@lcap/nasl 1.0.0-alpha.9 → 1.0.2
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 +379 -0
- package/out/automate/engine/utils.js.map +1 -0
- package/out/common/BaseNode.d.ts +21 -1
- package/out/common/BaseNode.js +232 -84
- package/out/common/BaseNode.js.map +1 -1
- package/out/concepts/App__.d.ts +19 -1
- package/out/concepts/App__.js +88 -45
- 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 +201 -0
- package/out/concepts/Assignee__.js +298 -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 +58 -25
- 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 +38 -3
- package/out/concepts/CallQueryComponent__.js +329 -75
- 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 +16 -2
- package/out/concepts/Constant__.js.map +1 -1
- package/out/concepts/Destination__.d.ts +12 -0
- package/out/concepts/Destination__.js +115 -22
- 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/EntityIndex__.js +4 -2
- package/out/concepts/EntityIndex__.js.map +1 -1
- package/out/concepts/EntityProperty__.d.ts +11 -0
- package/out/concepts/EntityProperty__.js +71 -5
- package/out/concepts/EntityProperty__.js.map +1 -1
- package/out/concepts/Entity__.d.ts +5 -4
- package/out/concepts/Entity__.js +35 -19
- package/out/concepts/Entity__.js.map +1 -1
- package/out/concepts/Enum__.d.ts +5 -0
- package/out/concepts/Enum__.js +24 -12
- 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 +77 -30
- 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 +57 -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 +64 -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 +123 -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/QueryFieldExpression__.d.ts +1 -0
- package/out/concepts/QueryFieldExpression__.js +3 -0
- package/out/concepts/QueryFieldExpression__.js.map +1 -1
- package/out/concepts/QueryFromExpression__.js +2 -2
- package/out/concepts/QueryFromExpression__.js.map +1 -1
- package/out/concepts/QueryGroupByExpression__.d.ts +3 -0
- package/out/concepts/QueryGroupByExpression__.js +20 -0
- package/out/concepts/QueryGroupByExpression__.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 +74 -23
- 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 +22 -39
- 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 +82 -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 +77 -20
- 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 +13 -12
- package/out/concepts/View__.js +124 -102
- 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.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.interface.d.ts +2 -0
- package/out/concepts/basics/stdlib/nasl.interface.js +4 -4
- package/out/concepts/basics/stdlib/nasl.interface.js.map +1 -1
- 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 +138 -18
- 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/stdlib/reference2TypeAnnotationList.js +1 -1
- package/out/concepts/basics/stdlib/reference2TypeAnnotationList.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/basics/types/index.d.ts +1 -0
- package/out/concepts/basics/types/index.js +3 -1
- package/out/concepts/basics/types/index.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 +1199 -0
- package/out/enums/KEYWORDS.js.map +1 -0
- package/out/{terms → enums}/LEVEL_NAME_MAP.d.ts +0 -0
- package/out/{terms → enums}/LEVEL_NAME_MAP.js +0 -0
- package/out/{terms → enums}/LEVEL_NAME_MAP.js.map +1 -1
- 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 +2 -2
- 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/extendBaseNode.d.ts +1 -0
- package/out/server/extendBaseNode.js +323 -0
- package/out/server/extendBaseNode.js.map +1 -0
- 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 +84 -18
- package/out/server/getLogics.js.map +1 -1
- package/out/server/getMemberIdentifier.d.ts +16 -1
- package/out/server/getMemberIdentifier.js +326 -38
- package/out/server/getMemberIdentifier.js.map +1 -1
- package/out/server/getProcesses.d.ts +8 -1
- package/out/server/getProcesses.js +383 -1
- package/out/server/getProcesses.js.map +1 -1
- package/out/server/getScope.d.ts +13 -0
- package/out/server/getScope.js +61 -0
- package/out/server/getScope.js.map +1 -0
- package/out/server/index.d.ts +1 -0
- package/out/server/index.js +5 -0
- package/out/server/index.js.map +1 -1
- package/out/server/naslServer.d.ts +36 -57
- package/out/server/naslServer.js +689 -615
- 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 +369 -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 +221 -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 +6 -4
- 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 +34 -18
- package/out/templator/genQueryComponent.js.map +1 -1
- package/out/templator/genSelectBlock.js +5 -15
- package/out/templator/genSelectBlock.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 +10 -11
- package/out/templator/genUpdateBlock.js.map +1 -1
- package/out/templator/utils.d.ts +16 -5
- package/out/templator/utils.js +10 -5
- 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 +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 -2
- package/src/automate/engine/index.js +95 -119
- package/src/automate/engine/operators.js +63 -0
- package/src/automate/engine/uniqueName.js +36 -0
- package/src/automate/engine/utils.js +63 -19
- package/src/common/BaseNode.ts +229 -74
- package/src/concepts/App__.ts +92 -85
- package/src/concepts/Argument__.ts +23 -3
- package/src/concepts/Assignee__.ts +467 -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 +55 -23
- package/src/concepts/CallInterface__.ts +236 -26
- package/src/concepts/CallLogic__.ts +111 -52
- package/src/concepts/CallQueryComponent__.ts +315 -67
- 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 +14 -2
- package/src/concepts/Destination__.ts +123 -37
- package/src/concepts/End__.ts +8 -1
- package/src/concepts/EntityIndex__.ts +4 -2
- package/src/concepts/EntityProperty__.ts +56 -5
- package/src/concepts/Entity__.ts +38 -21
- package/src/concepts/Enum__.ts +23 -26
- 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 +84 -42
- package/src/concepts/IfStatement__.ts +4 -4
- package/src/concepts/InterfaceParam__.ts +57 -16
- 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 +192 -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 +64 -16
- package/src/concepts/ProcessComponent__.ts +6 -6
- package/src/concepts/ProcessElement__.ts +149 -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/QueryFieldExpression__.ts +4 -0
- package/src/concepts/QueryFromExpression__.ts +2 -2
- package/src/concepts/QueryGroupByExpression__.ts +23 -0
- 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 +69 -17
- package/src/concepts/Role__.ts +5 -4
- package/src/concepts/SqlQueryComponent__.ts +2 -2
- package/src/concepts/StringLiteral__.ts +21 -39
- package/src/concepts/StructureProperty__.ts +50 -18
- 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 +66 -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 +70 -16
- package/src/concepts/ViewComponent__.ts +15 -15
- package/src/concepts/ViewElement__.ts +289 -166
- package/src/concepts/View__.ts +135 -69
- 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.interface.ts +1 -1
- package/src/concepts/basics/stdlib/nasl.ui.ts +20 -1
- package/src/concepts/basics/stdlib/nasl.util.ts +140 -18
- package/src/concepts/basics/stdlib/nasl.validation.ts +45 -11
- package/src/concepts/basics/stdlib/reference2TypeAnnotationList.ts +1 -1
- package/src/concepts/basics/types/coreTypeList.ts +11 -11
- package/src/concepts/basics/types/index.ts +1 -0
- package/src/concepts/index__.ts +1 -0
- package/src/config.ts +1 -2
- package/src/enums/KEYWORDS.ts +1197 -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 +2 -2
- package/src/server/createUiTs.ts +45 -7
- package/src/server/entity2LogicNamespace.ts +41 -25
- package/src/server/extendBaseNode.ts +318 -0
- package/src/server/getExtensionModules.ts +2 -0
- package/src/server/getFunctions.ts +6 -0
- package/src/server/getLogics.ts +87 -19
- package/src/server/getMemberIdentifier.ts +282 -65
- package/src/server/getProcesses.ts +397 -4
- package/src/server/getScope.ts +67 -0
- package/src/server/index.ts +13 -1
- package/src/server/naslServer.ts +694 -632
- package/src/server/process2LogicNamespace.ts +30 -2
- package/src/server/translator.ts +425 -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 +218 -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 +7 -9
- package/src/templator/genGridViewBlock.ts +59 -9
- package/src/templator/genQueryComponent.ts +46 -32
- package/src/templator/genSelectBlock.ts +5 -15
- package/src/templator/genTableBlock.ts +5 -9
- package/src/templator/genUpdateBlock.ts +10 -12
- package/src/templator/utils.ts +12 -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
package/out/concepts/View__.js
CHANGED
|
@@ -229,7 +229,7 @@ let View = View_1 = class View extends BaseNode_1.default {
|
|
|
229
229
|
}, this, 'elements');
|
|
230
230
|
}
|
|
231
231
|
else if (options instanceof ViewElement__1.default) {
|
|
232
|
-
options.
|
|
232
|
+
options.ensureDelete(); // 同一实例不支持多处存在
|
|
233
233
|
viewElement = options;
|
|
234
234
|
Object.assign(viewElement, relationOptions);
|
|
235
235
|
}
|
|
@@ -257,7 +257,7 @@ let View = View_1 = class View extends BaseNode_1.default {
|
|
|
257
257
|
}
|
|
258
258
|
addViewElement(options) {
|
|
259
259
|
const node = this._addViewElement(options);
|
|
260
|
-
const index = this.elements.
|
|
260
|
+
const index = this.elements.indexOf(node);
|
|
261
261
|
node.create({
|
|
262
262
|
index,
|
|
263
263
|
parentNode: this,
|
|
@@ -270,7 +270,7 @@ let View = View_1 = class View extends BaseNode_1.default {
|
|
|
270
270
|
return (this.params || []).filter((item) => !excludedSet.has(item)).map((item) => item.name);
|
|
271
271
|
}
|
|
272
272
|
getParamUniqueName(name = 'param1') {
|
|
273
|
-
return utils.unique(name, this.getParamExistingNames());
|
|
273
|
+
return utils.unique(name, this.getParamExistingNames(), undefined, false);
|
|
274
274
|
}
|
|
275
275
|
_insertParamAt(options, index) {
|
|
276
276
|
const paramOptions = {};
|
|
@@ -289,7 +289,7 @@ let View = View_1 = class View extends BaseNode_1.default {
|
|
|
289
289
|
}, this, 'params');
|
|
290
290
|
}
|
|
291
291
|
else if (options instanceof Param__1.default) {
|
|
292
|
-
options.
|
|
292
|
+
options.ensureDelete(); // 同一实例不支持多处存在
|
|
293
293
|
param = options;
|
|
294
294
|
Object.assign(param, relationOptions);
|
|
295
295
|
}
|
|
@@ -317,7 +317,7 @@ let View = View_1 = class View extends BaseNode_1.default {
|
|
|
317
317
|
}
|
|
318
318
|
addParam(options) {
|
|
319
319
|
const node = this._addParam(options);
|
|
320
|
-
const index = this.params.
|
|
320
|
+
const index = this.params.indexOf(node);
|
|
321
321
|
node.create({
|
|
322
322
|
index,
|
|
323
323
|
parentNode: this,
|
|
@@ -330,7 +330,7 @@ let View = View_1 = class View extends BaseNode_1.default {
|
|
|
330
330
|
return (this.variables || []).filter((item) => !excludedSet.has(item)).map((item) => item.name);
|
|
331
331
|
}
|
|
332
332
|
getVariableUniqueName(name = 'variable1') {
|
|
333
|
-
return utils.unique(name, this.getVariableExistingNames());
|
|
333
|
+
return utils.unique(name, this.getVariableExistingNames(), undefined, false);
|
|
334
334
|
}
|
|
335
335
|
_insertVariableAt(options, index) {
|
|
336
336
|
const variableOptions = {};
|
|
@@ -349,7 +349,7 @@ let View = View_1 = class View extends BaseNode_1.default {
|
|
|
349
349
|
}, this, 'variables');
|
|
350
350
|
}
|
|
351
351
|
else if (options instanceof Variable__1.default) {
|
|
352
|
-
options.
|
|
352
|
+
options.ensureDelete(); // 同一实例不支持多处存在
|
|
353
353
|
variable = options;
|
|
354
354
|
Object.assign(variable, relationOptions);
|
|
355
355
|
}
|
|
@@ -377,7 +377,7 @@ let View = View_1 = class View extends BaseNode_1.default {
|
|
|
377
377
|
}
|
|
378
378
|
addVariable(options) {
|
|
379
379
|
const node = this._addVariable(options);
|
|
380
|
-
const index = this.variables.
|
|
380
|
+
const index = this.variables.indexOf(node);
|
|
381
381
|
node.create({
|
|
382
382
|
index,
|
|
383
383
|
parentNode: this,
|
|
@@ -385,12 +385,8 @@ let View = View_1 = class View extends BaseNode_1.default {
|
|
|
385
385
|
});
|
|
386
386
|
return node;
|
|
387
387
|
}
|
|
388
|
-
getLogicExistingNames(excludedList = []) {
|
|
389
|
-
const excludedSet = new Set(excludedList);
|
|
390
|
-
return (this.logics || []).filter((item) => !excludedSet.has(item)).map((item) => item.name);
|
|
391
|
-
}
|
|
392
388
|
getLogicUniqueName(name = 'logic1') {
|
|
393
|
-
return utils.unique(name, this.getLogicExistingNames());
|
|
389
|
+
return utils.unique(name, this.getLogicExistingNames(), undefined, false);
|
|
394
390
|
}
|
|
395
391
|
_insertLogicAt(options, index) {
|
|
396
392
|
const logicOptions = {};
|
|
@@ -409,7 +405,7 @@ let View = View_1 = class View extends BaseNode_1.default {
|
|
|
409
405
|
}, this, 'logics');
|
|
410
406
|
}
|
|
411
407
|
else if (options instanceof Logic__1.default) {
|
|
412
|
-
options.
|
|
408
|
+
options.ensureDelete(); // 同一实例不支持多处存在
|
|
413
409
|
logic = options;
|
|
414
410
|
Object.assign(logic, relationOptions);
|
|
415
411
|
}
|
|
@@ -437,7 +433,7 @@ let View = View_1 = class View extends BaseNode_1.default {
|
|
|
437
433
|
}
|
|
438
434
|
addLogic(options) {
|
|
439
435
|
const node = this._addLogic(options);
|
|
440
|
-
const index = this.logics.
|
|
436
|
+
const index = this.logics.indexOf(node);
|
|
441
437
|
node.create({
|
|
442
438
|
index,
|
|
443
439
|
parentNode: this,
|
|
@@ -450,7 +446,7 @@ let View = View_1 = class View extends BaseNode_1.default {
|
|
|
450
446
|
return (this.bindEvents || []).filter((item) => !excludedSet.has(item)).map((item) => item.name);
|
|
451
447
|
}
|
|
452
448
|
getBindEventUniqueName(name = 'bindEvent1') {
|
|
453
|
-
return utils.unique(name, this.getBindEventExistingNames());
|
|
449
|
+
return utils.unique(name, this.getBindEventExistingNames(), undefined, false);
|
|
454
450
|
}
|
|
455
451
|
_insertBindEventAt(options, index) {
|
|
456
452
|
const bindEventOptions = {};
|
|
@@ -469,7 +465,7 @@ let View = View_1 = class View extends BaseNode_1.default {
|
|
|
469
465
|
}, this, 'bindEvents');
|
|
470
466
|
}
|
|
471
467
|
else if (options instanceof BindEvent__1.default) {
|
|
472
|
-
options.
|
|
468
|
+
options.ensureDelete(); // 同一实例不支持多处存在
|
|
473
469
|
bindEvent = options;
|
|
474
470
|
Object.assign(bindEvent, relationOptions);
|
|
475
471
|
}
|
|
@@ -497,7 +493,7 @@ let View = View_1 = class View extends BaseNode_1.default {
|
|
|
497
493
|
}
|
|
498
494
|
addBindEvent(options) {
|
|
499
495
|
const node = this._addBindEvent(options);
|
|
500
|
-
const index = this.bindEvents.
|
|
496
|
+
const index = this.bindEvents.indexOf(node);
|
|
501
497
|
node.create({
|
|
502
498
|
index,
|
|
503
499
|
parentNode: this,
|
|
@@ -510,7 +506,7 @@ let View = View_1 = class View extends BaseNode_1.default {
|
|
|
510
506
|
return (this.children || []).filter((item) => !excludedSet.has(item)).map((item) => item.name);
|
|
511
507
|
}
|
|
512
508
|
getViewUniqueName(name = 'view1') {
|
|
513
|
-
return utils.unique(name, this.getViewExistingNames());
|
|
509
|
+
return utils.unique(name, this.getViewExistingNames(), undefined, false);
|
|
514
510
|
}
|
|
515
511
|
_insertViewAt(options, index) {
|
|
516
512
|
const viewOptions = {};
|
|
@@ -529,7 +525,7 @@ let View = View_1 = class View extends BaseNode_1.default {
|
|
|
529
525
|
}, this, 'children');
|
|
530
526
|
}
|
|
531
527
|
else if (options instanceof View_1) {
|
|
532
|
-
options.
|
|
528
|
+
options.ensureDelete(); // 同一实例不支持多处存在
|
|
533
529
|
view = options;
|
|
534
530
|
Object.assign(view, relationOptions);
|
|
535
531
|
}
|
|
@@ -557,7 +553,7 @@ let View = View_1 = class View extends BaseNode_1.default {
|
|
|
557
553
|
}
|
|
558
554
|
addView(options) {
|
|
559
555
|
const node = this._addView(options);
|
|
560
|
-
const index = this.children.
|
|
556
|
+
const index = this.children.indexOf(node);
|
|
561
557
|
node.create({
|
|
562
558
|
index,
|
|
563
559
|
parentNode: this,
|
|
@@ -785,6 +781,12 @@ let View = View_1 = class View extends BaseNode_1.default {
|
|
|
785
781
|
// ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
|
|
786
782
|
// 自动生成的代码已结束。下面可以手动编写。
|
|
787
783
|
//================================================================================
|
|
784
|
+
/* 主页面有没有权限 */
|
|
785
|
+
get parentAuth() {
|
|
786
|
+
const _nameSpace = this.getTsNamespace();
|
|
787
|
+
const mainViewName = _nameSpace.split('.')[2];
|
|
788
|
+
return mainViewName ? this.app.views.find((item) => item.name === mainViewName)?.auth : this.auth;
|
|
789
|
+
}
|
|
788
790
|
/**
|
|
789
791
|
* 设置页面权限
|
|
790
792
|
*/
|
|
@@ -867,15 +869,6 @@ let View = View_1 = class View extends BaseNode_1.default {
|
|
|
867
869
|
}
|
|
868
870
|
}
|
|
869
871
|
}
|
|
870
|
-
// 全局结构体
|
|
871
|
-
if (Array.isArray(definition.structures)) {
|
|
872
|
-
definition.structures.forEach((structureOption) => {
|
|
873
|
-
const structure = Structure__1.Structure.from({
|
|
874
|
-
...structureOption,
|
|
875
|
-
}, this.rootNode, 'structures');
|
|
876
|
-
this.rootNode.addStructure(structure);
|
|
877
|
-
});
|
|
878
|
-
}
|
|
879
872
|
// 全局逻辑
|
|
880
873
|
if (Array.isArray(definition.logics)) {
|
|
881
874
|
definition.logics.forEach((logicOption) => {
|
|
@@ -885,6 +878,15 @@ let View = View_1 = class View extends BaseNode_1.default {
|
|
|
885
878
|
this.rootNode.addLogic(logic);
|
|
886
879
|
});
|
|
887
880
|
}
|
|
881
|
+
// 全局结构体
|
|
882
|
+
if (Array.isArray(definition.structures)) {
|
|
883
|
+
definition.structures.forEach((structureOption) => {
|
|
884
|
+
const structure = Structure__1.Structure.from({
|
|
885
|
+
...structureOption,
|
|
886
|
+
}, this.rootNode, 'structures');
|
|
887
|
+
this.rootNode.addStructure(structure);
|
|
888
|
+
});
|
|
889
|
+
}
|
|
888
890
|
// 页面入参
|
|
889
891
|
if (Array.isArray(definition.viewParams)) {
|
|
890
892
|
definition.viewParams.forEach((paramsOption) => {
|
|
@@ -925,33 +927,44 @@ let View = View_1 = class View extends BaseNode_1.default {
|
|
|
925
927
|
onChange($event) {
|
|
926
928
|
this.emit('change', $event);
|
|
927
929
|
}
|
|
928
|
-
|
|
930
|
+
getLogicExistingNames(excludedList = []) {
|
|
929
931
|
const excludedSet = new Set(excludedList);
|
|
930
|
-
|
|
932
|
+
const varList = [];
|
|
933
|
+
if (Array.isArray(this.params)) {
|
|
934
|
+
varList.push(...this.params);
|
|
935
|
+
}
|
|
936
|
+
if (Array.isArray(this.variables)) {
|
|
937
|
+
varList.push(...this.variables);
|
|
938
|
+
}
|
|
939
|
+
if (Array.isArray(this.logics)) {
|
|
940
|
+
varList.push(...this.logics);
|
|
941
|
+
}
|
|
942
|
+
return varList.filter((item) => !excludedSet.has(item)).map((item) => item.name);
|
|
931
943
|
}
|
|
932
|
-
|
|
933
|
-
|
|
934
|
-
|
|
935
|
-
|
|
936
|
-
|
|
937
|
-
const index = this.roles.findIndex((roleItem) => roleItem.name === role.name);
|
|
938
|
-
const roles = [...this.roles];
|
|
939
|
-
if (index !== -1) {
|
|
940
|
-
roles.splice(index, 1);
|
|
941
|
-
this.roles = roles;
|
|
944
|
+
getVarExistingNames(excludedList = []) {
|
|
945
|
+
const excludedSet = new Set(excludedList);
|
|
946
|
+
const varList = [];
|
|
947
|
+
if (Array.isArray(this.params)) {
|
|
948
|
+
varList.push(...this.params);
|
|
942
949
|
}
|
|
943
|
-
|
|
944
|
-
|
|
945
|
-
|
|
946
|
-
|
|
950
|
+
if (Array.isArray(this.variables)) {
|
|
951
|
+
varList.push(...this.variables);
|
|
952
|
+
}
|
|
953
|
+
if (Array.isArray(this.logics)) {
|
|
954
|
+
this.logics.forEach((logic) => {
|
|
955
|
+
varList.push(logic);
|
|
956
|
+
if (Array.isArray(logic.params)) {
|
|
957
|
+
varList.push(...logic.params);
|
|
958
|
+
}
|
|
959
|
+
if (Array.isArray(logic.returns)) {
|
|
960
|
+
varList.push(...logic.returns);
|
|
961
|
+
}
|
|
962
|
+
if (Array.isArray(logic.variables)) {
|
|
963
|
+
varList.push(...logic.variables);
|
|
964
|
+
}
|
|
947
965
|
});
|
|
948
966
|
}
|
|
949
|
-
|
|
950
|
-
roles,
|
|
951
|
-
};
|
|
952
|
-
this.update({
|
|
953
|
-
...object,
|
|
954
|
-
});
|
|
967
|
+
return varList.filter((item) => !excludedSet.has(item)).map((item) => item.name);
|
|
955
968
|
}
|
|
956
969
|
/**
|
|
957
970
|
* 生成 Vue 中需要的 JS 代码
|
|
@@ -968,7 +981,7 @@ let View = View_1 = class View extends BaseNode_1.default {
|
|
|
968
981
|
events: this.bindEvents,
|
|
969
982
|
title: this.title,
|
|
970
983
|
crumb: this.crumb,
|
|
971
|
-
first: this.isIndex,
|
|
984
|
+
first: this.children.find((child) => child.isIndex)?.name,
|
|
972
985
|
};
|
|
973
986
|
return `${componentOptions}
|
|
974
987
|
${(0, translator_2.default)(definition)}
|
|
@@ -976,7 +989,7 @@ let View = View_1 = class View extends BaseNode_1.default {
|
|
|
976
989
|
`;
|
|
977
990
|
}
|
|
978
991
|
genVueTemplate(options) {
|
|
979
|
-
return this.elements
|
|
992
|
+
return this.elements?.map((element) => element?.toVue(options) + '\n').join('');
|
|
980
993
|
}
|
|
981
994
|
/**
|
|
982
995
|
* 转换成 Vue 文件
|
|
@@ -1038,14 +1051,11 @@ let View = View_1 = class View extends BaseNode_1.default {
|
|
|
1038
1051
|
else
|
|
1039
1052
|
throw new Error('无法获取命名空间,请设置 parentNode!');
|
|
1040
1053
|
}
|
|
1041
|
-
|
|
1042
|
-
|
|
1043
|
-
|
|
1044
|
-
|
|
1045
|
-
|
|
1046
|
-
// 匹配所有特殊字符都转为_
|
|
1047
|
-
tsName = tsName.replace(/\W/g, '_');
|
|
1048
|
-
return tsName;
|
|
1054
|
+
getTsNamespace() {
|
|
1055
|
+
const parentNodeNamespace = this.getNamespace();
|
|
1056
|
+
let tsCalleeNamespace = parentNodeNamespace.replace(/\.[0-9]/g, (m) => m.replace('.', '.$'));
|
|
1057
|
+
tsCalleeNamespace = tsCalleeNamespace.replace(/-/g, '_');
|
|
1058
|
+
return tsCalleeNamespace;
|
|
1049
1059
|
}
|
|
1050
1060
|
// 获取当前element,铺平
|
|
1051
1061
|
elementsMethods(elements, allMethods) {
|
|
@@ -1061,30 +1071,15 @@ let View = View_1 = class View extends BaseNode_1.default {
|
|
|
1061
1071
|
toEmbeddedTS(state) {
|
|
1062
1072
|
function chineseTsName(name) {
|
|
1063
1073
|
let tsName = name;
|
|
1064
|
-
if (/^\d/.test(tsName)) {
|
|
1065
|
-
tsName = '$' + tsName;
|
|
1066
|
-
}
|
|
1067
1074
|
// 匹配所有特殊字符都转为_
|
|
1068
|
-
tsName = tsName.replace(
|
|
1075
|
+
tsName = tsName.replace(/[^\u4e00-\u9fa5a-zA-Z0-9]/g, '_');
|
|
1069
1076
|
return tsName;
|
|
1070
1077
|
}
|
|
1071
1078
|
let code = `export namespace ${this.tsName} {\n`;
|
|
1072
1079
|
// 角色
|
|
1073
|
-
|
|
1074
|
-
// code += indent(state.tabSize + 1);
|
|
1075
|
-
// code += 'export let roles = [\n';
|
|
1076
|
-
// this.roles.forEach((role) => {
|
|
1077
|
-
// code += indent(state.tabSize + 1);
|
|
1078
|
-
// `${this.app.getNamespace()}.${role.name}`;
|
|
1079
|
-
// code += `${role.namespace}.${role.name},`;
|
|
1080
|
-
// code += '\n';
|
|
1081
|
-
// });
|
|
1082
|
-
// code += indent(state.tabSize + 1);
|
|
1083
|
-
// code += '];\n';
|
|
1084
|
-
// }
|
|
1085
|
-
if (this.auth && Array.isArray(this.bindRoles) && this.bindRoles.length) {
|
|
1080
|
+
if (Array.isArray(this.bindRoles) && this.bindRoles.length) {
|
|
1086
1081
|
code += (0, translator_1.indent)(state.tabSize + 1);
|
|
1087
|
-
code += 'export let
|
|
1082
|
+
code += 'export let __bindRoles = [\n';
|
|
1088
1083
|
this.bindRoles.forEach((role) => {
|
|
1089
1084
|
code += (0, translator_1.indent)(state.tabSize + 1);
|
|
1090
1085
|
code += `${this.app.getNamespace()}.roles.${chineseTsName(role)}.${chineseTsName(role)},`;
|
|
@@ -1109,7 +1104,7 @@ let View = View_1 = class View extends BaseNode_1.default {
|
|
|
1109
1104
|
});
|
|
1110
1105
|
}
|
|
1111
1106
|
// elements类型声明定义
|
|
1112
|
-
code +=
|
|
1107
|
+
code += `interface __elements {\n`;
|
|
1113
1108
|
// 生成所有的name和类型定义
|
|
1114
1109
|
this.elements.forEach((element) => {
|
|
1115
1110
|
code += element.toEmbeddedTSDefinition((0, translator_1.shiftState)(state, code, {
|
|
@@ -1117,29 +1112,27 @@ let View = View_1 = class View extends BaseNode_1.default {
|
|
|
1117
1112
|
}));
|
|
1118
1113
|
});
|
|
1119
1114
|
code += (0, translator_1.indent)(state.tabSize + 1) + '}\n';
|
|
1115
|
+
code += `let __elements: __elements;\n`;
|
|
1120
1116
|
// 逻辑
|
|
1121
1117
|
if (Array.isArray(this.logics) && this.logics.length) {
|
|
1122
1118
|
code += (0, translator_1.indent)(state.tabSize + 1);
|
|
1123
|
-
code += `export namespace logics {\n`;
|
|
1124
1119
|
this.logics.forEach((logic) => {
|
|
1125
1120
|
code += logic.toEmbeddedTS((0, translator_1.shiftState)(state, code, {
|
|
1126
1121
|
tabSize: state.tabSize + 2,
|
|
1127
|
-
}));
|
|
1122
|
+
}), 'noExport');
|
|
1128
1123
|
code += '\n';
|
|
1129
1124
|
});
|
|
1130
1125
|
code += (0, translator_1.indent)(state.tabSize + 1);
|
|
1131
|
-
code += '}\n';
|
|
1132
1126
|
}
|
|
1133
1127
|
// 事件
|
|
1134
|
-
|
|
1135
|
-
|
|
1136
|
-
|
|
1137
|
-
|
|
1138
|
-
|
|
1139
|
-
|
|
1140
|
-
|
|
1141
|
-
|
|
1142
|
-
// }
|
|
1128
|
+
if (Array.isArray(this.bindEvents)) {
|
|
1129
|
+
this.bindEvents.forEach((event) => {
|
|
1130
|
+
code += event.toEmbeddedTS((0, translator_1.shiftState)(state, code, {
|
|
1131
|
+
tabSize: state.tabSize,
|
|
1132
|
+
}), true);
|
|
1133
|
+
code += '\n';
|
|
1134
|
+
});
|
|
1135
|
+
}
|
|
1143
1136
|
// render函数
|
|
1144
1137
|
code += '\n' + (0, translator_1.indent)(state.tabSize + 1);
|
|
1145
1138
|
code += `export function __render(`;
|
|
@@ -1157,23 +1150,29 @@ let View = View_1 = class View extends BaseNode_1.default {
|
|
|
1157
1150
|
}
|
|
1158
1151
|
code += '\n' + (0, translator_1.indent)(state.tabSize + 1) + '}\n';
|
|
1159
1152
|
if (Array.isArray(this.params)) {
|
|
1160
|
-
code += (0, translator_1.indent)(state.tabSize + 1) + `export function $destination(`;
|
|
1153
|
+
code += (0, translator_1.indent)(state.tabSize + 1) + `export function $destination(options: {`;
|
|
1161
1154
|
this.params.forEach((param, index) => {
|
|
1162
|
-
code +=
|
|
1155
|
+
code += param.name + '?: ';
|
|
1156
|
+
code += param.typeAnnotation.toEmbeddedTS((0, translator_1.shiftState)(state, code));
|
|
1163
1157
|
if (index !== this.params.length - 1)
|
|
1164
1158
|
code += ', ';
|
|
1165
1159
|
});
|
|
1166
|
-
code += '){}\n';
|
|
1160
|
+
code += '}){}\n';
|
|
1167
1161
|
}
|
|
1168
1162
|
code += (0, translator_1.indent)(state.tabSize) + '}\n';
|
|
1169
1163
|
return code;
|
|
1170
1164
|
}
|
|
1171
1165
|
toEmbeddedTSFile() {
|
|
1172
|
-
let code = `namespace ${this.
|
|
1166
|
+
let code = `namespace ${this.getTsNamespace()} {\n`;
|
|
1173
1167
|
const state = (0, translator_1.createCompilerState)(code, {
|
|
1174
1168
|
tabSize: 1,
|
|
1175
1169
|
});
|
|
1176
|
-
|
|
1170
|
+
try {
|
|
1171
|
+
code += this.toEmbeddedTS(state);
|
|
1172
|
+
}
|
|
1173
|
+
catch (err) {
|
|
1174
|
+
code += '';
|
|
1175
|
+
}
|
|
1177
1176
|
code += '}\n';
|
|
1178
1177
|
return {
|
|
1179
1178
|
code,
|
|
@@ -1190,10 +1189,16 @@ let View = View_1 = class View extends BaseNode_1.default {
|
|
|
1190
1189
|
}
|
|
1191
1190
|
let path = '/';
|
|
1192
1191
|
if (_path.length) {
|
|
1193
|
-
path += `${_path.join('/')}`;
|
|
1192
|
+
path += `${_path.reverse().join('/')}`;
|
|
1194
1193
|
}
|
|
1195
1194
|
return path;
|
|
1196
1195
|
}
|
|
1196
|
+
/**
|
|
1197
|
+
* 权限领域的资源路径
|
|
1198
|
+
*/
|
|
1199
|
+
get authPath() {
|
|
1200
|
+
return this.path;
|
|
1201
|
+
}
|
|
1197
1202
|
/**
|
|
1198
1203
|
* @param path 子路径
|
|
1199
1204
|
* 比如当前页面路径为:/dashboard
|
|
@@ -1209,6 +1214,21 @@ let View = View_1 = class View extends BaseNode_1.default {
|
|
|
1209
1214
|
const subView = this.children.find((child) => child.name === childName);
|
|
1210
1215
|
return arr.length ? subView.findViewByPath(arr.join('/')) : subView;
|
|
1211
1216
|
}
|
|
1217
|
+
findViewByName(name) {
|
|
1218
|
+
return utils.traverse((current) => {
|
|
1219
|
+
if (current.node.name === name)
|
|
1220
|
+
return current.node;
|
|
1221
|
+
}, { node: this });
|
|
1222
|
+
}
|
|
1223
|
+
findElementByName(name) {
|
|
1224
|
+
return this.elements[0]?.findElementByName(name);
|
|
1225
|
+
}
|
|
1226
|
+
findElementByTag(tag) {
|
|
1227
|
+
return this.elements[0]?.findElementByName(tag);
|
|
1228
|
+
}
|
|
1229
|
+
findElementByAttr(name, value) {
|
|
1230
|
+
return this.elements[0]?.findElementByAttr(name, value);
|
|
1231
|
+
}
|
|
1212
1232
|
_setAsIndexView(isIndex) {
|
|
1213
1233
|
let views = [];
|
|
1214
1234
|
if (this.parentNode.concept !== 'View') {
|
|
@@ -1242,6 +1262,11 @@ let View = View_1 = class View extends BaseNode_1.default {
|
|
|
1242
1262
|
this._setAsIndexView(isIndex);
|
|
1243
1263
|
this.rootNode.emit('collect:end');
|
|
1244
1264
|
}
|
|
1265
|
+
removeExistingViewElement(viewElement) {
|
|
1266
|
+
if (this.existingViewElement.has(viewElement.name)) {
|
|
1267
|
+
this.existingViewElement.delete(viewElement.name);
|
|
1268
|
+
}
|
|
1269
|
+
}
|
|
1245
1270
|
};
|
|
1246
1271
|
__decorate([
|
|
1247
1272
|
(0, decorators_1.property)()
|
|
@@ -1297,9 +1322,6 @@ __decorate([
|
|
|
1297
1322
|
__decorate([
|
|
1298
1323
|
(0, decorators_1.property)('View')
|
|
1299
1324
|
], View.prototype, "children", void 0);
|
|
1300
|
-
__decorate([
|
|
1301
|
-
(0, decorators_1.property)()
|
|
1302
|
-
], View.prototype, "roles", void 0);
|
|
1303
1325
|
__decorate([
|
|
1304
1326
|
(0, translator_1.withSourceMap)()
|
|
1305
1327
|
], View.prototype, "toEmbeddedTS", null);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"View__.js","sourceRoot":"","sources":["../../src/concepts/View__.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"View__.js","sourceRoot":"","sources":["../../src/concepts/View__.ts"],"names":[],"mappings":"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"}
|