@lcap/nasl 3.3.0-beta.0 → 3.4.0-alpha.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/bak/translator.js +5 -8
- package/out/bak/translator.js.map +1 -1
- package/out/breakpoint/generator/AfterStartNode.js +1 -2
- package/out/breakpoint/generator/AfterStartNode.js.map +1 -1
- package/out/breakpoint/generator/BeforeEndNode.js +1 -2
- package/out/breakpoint/generator/BeforeEndNode.js.map +1 -1
- package/out/breakpoint/generator/BreakpointNode.js +9 -30
- package/out/breakpoint/generator/BreakpointNode.js.map +1 -1
- package/out/breakpoint/shared/constants.d.ts +0 -1
- package/out/breakpoint/shared/constants.js +1 -7
- package/out/breakpoint/shared/constants.js.map +1 -1
- package/out/breakpoint/shared/utils.d.ts +1 -3
- package/out/breakpoint/shared/utils.js +4 -25
- package/out/breakpoint/shared/utils.js.map +1 -1
- package/out/common/BaseNode.d.ts +8 -21
- package/out/common/BaseNode.js +69 -115
- package/out/common/BaseNode.js.map +1 -1
- package/out/common/Command.js +1 -6
- package/out/common/Command.js.map +1 -1
- package/out/common/EventEmitter.d.ts +1 -1
- package/out/common/EventEmitter.js +3 -1
- package/out/common/EventEmitter.js.map +1 -1
- package/out/common/classMap.d.ts +4 -0
- package/out/common/classMap.js +5 -0
- package/out/common/classMap.js.map +1 -0
- package/out/common/index.d.ts +1 -0
- package/out/common/index.js +1 -0
- package/out/common/index.js.map +1 -1
- package/out/concepts/Abort__.d.ts +2 -3
- package/out/concepts/Abort__.js +18 -15
- package/out/concepts/Abort__.js.map +1 -1
- package/out/concepts/Anchor__.d.ts +3 -3
- package/out/concepts/Anchor__.js +35 -18
- package/out/concepts/Anchor__.js.map +1 -1
- package/out/concepts/AnonymousFunction__.d.ts +3 -3
- package/out/concepts/AnonymousFunction__.js +53 -29
- package/out/concepts/AnonymousFunction__.js.map +1 -1
- package/out/concepts/App__.d.ts +157 -160
- package/out/concepts/App__.js +80 -106
- package/out/concepts/App__.js.map +1 -1
- package/out/concepts/Argument__.d.ts +3 -3
- package/out/concepts/Argument__.js +42 -22
- package/out/concepts/Argument__.js.map +1 -1
- package/out/concepts/Assignee__.d.ts +2 -3
- package/out/concepts/Assignee__.js +21 -19
- package/out/concepts/Assignee__.js.map +1 -1
- package/out/concepts/AssignmentLine__.d.ts +2 -3
- package/out/concepts/AssignmentLine__.js +17 -15
- package/out/concepts/AssignmentLine__.js.map +1 -1
- package/out/concepts/Assignment__.d.ts +3 -3
- package/out/concepts/Assignment__.js +42 -34
- package/out/concepts/Assignment__.js.map +1 -1
- package/out/concepts/Attribute__.d.ts +2 -3
- package/out/concepts/Attribute__.js +28 -36
- package/out/concepts/Attribute__.js.map +1 -1
- package/out/concepts/AuthInterface__.d.ts +3 -4
- package/out/concepts/AuthInterface__.js +17 -16
- package/out/concepts/AuthInterface__.js.map +1 -1
- package/out/concepts/AuthLogicForCallInterface__.d.ts +3 -4
- package/out/concepts/AuthLogicForCallInterface__.js +27 -37
- package/out/concepts/AuthLogicForCallInterface__.js.map +1 -1
- package/out/concepts/AuthLogic__.d.ts +3 -4
- package/out/concepts/AuthLogic__.js +19 -18
- package/out/concepts/AuthLogic__.js.map +1 -1
- package/out/concepts/BackendVariable__.d.ts +7 -8
- package/out/concepts/BackendVariable__.js +34 -39
- package/out/concepts/BackendVariable__.js.map +1 -1
- package/out/concepts/Backend__.d.ts +31 -32
- package/out/concepts/Backend__.js +22 -23
- package/out/concepts/Backend__.js.map +1 -1
- package/out/concepts/BatchAssignment__.d.ts +3 -3
- package/out/concepts/BatchAssignment__.js +54 -46
- package/out/concepts/BatchAssignment__.js.map +1 -1
- package/out/concepts/BinaryExpression__.d.ts +3 -3
- package/out/concepts/BinaryExpression__.js +62 -30
- package/out/concepts/BinaryExpression__.js.map +1 -1
- package/out/concepts/BindAttribute__.d.ts +9 -12
- package/out/concepts/BindAttribute__.js +102 -81
- package/out/concepts/BindAttribute__.js.map +1 -1
- package/out/concepts/BindDirective__.d.ts +3 -5
- package/out/concepts/BindDirective__.js +28 -34
- package/out/concepts/BindDirective__.js.map +1 -1
- package/out/concepts/BindEvent__.d.ts +3 -3
- package/out/concepts/BindEvent__.js +74 -51
- package/out/concepts/BindEvent__.js.map +1 -1
- package/out/concepts/BindStyle__.d.ts +3 -5
- package/out/concepts/BindStyle__.js +23 -24
- package/out/concepts/BindStyle__.js.map +1 -1
- package/out/concepts/BooleanLiteral__.d.ts +3 -3
- package/out/concepts/BooleanLiteral__.js +24 -17
- package/out/concepts/BooleanLiteral__.js.map +1 -1
- package/out/concepts/CallAuthInterface__.d.ts +2 -3
- package/out/concepts/CallAuthInterface__.js +19 -17
- package/out/concepts/CallAuthInterface__.js.map +1 -1
- package/out/concepts/CallConnector__.d.ts +4 -5
- package/out/concepts/CallConnector__.js +34 -41
- package/out/concepts/CallConnector__.js.map +1 -1
- package/out/concepts/CallFunction__.d.ts +3 -3
- package/out/concepts/CallFunction__.js +71 -33
- package/out/concepts/CallFunction__.js.map +1 -1
- package/out/concepts/CallInterface__.d.ts +3 -3
- package/out/concepts/CallInterface__.js +57 -26
- package/out/concepts/CallInterface__.js.map +1 -1
- package/out/concepts/CallLogic__.d.ts +6 -6
- package/out/concepts/CallLogic__.js +180 -135
- package/out/concepts/CallLogic__.js.map +1 -1
- package/out/concepts/CallQueryComponent__.d.ts +2 -3
- package/out/concepts/CallQueryComponent__.js +41 -57
- package/out/concepts/CallQueryComponent__.js.map +1 -1
- package/out/concepts/Comment__.d.ts +3 -3
- package/out/concepts/Comment__.js +24 -17
- package/out/concepts/Comment__.js.map +1 -1
- package/out/concepts/CompletionProperty__.d.ts +2 -3
- package/out/concepts/CompletionProperty__.js +25 -30
- package/out/concepts/CompletionProperty__.js.map +1 -1
- package/out/concepts/ConfigGroup__.d.ts +2 -3
- package/out/concepts/ConfigGroup__.js +20 -21
- package/out/concepts/ConfigGroup__.js.map +1 -1
- package/out/concepts/ConfigPropertyValue__.d.ts +2 -3
- package/out/concepts/ConfigPropertyValue__.js +16 -16
- package/out/concepts/ConfigPropertyValue__.js.map +1 -1
- package/out/concepts/ConfigProperty__.d.ts +2 -3
- package/out/concepts/ConfigProperty__.js +23 -26
- package/out/concepts/ConfigProperty__.js.map +1 -1
- package/out/concepts/Configuration__.d.ts +2 -3
- package/out/concepts/Configuration__.js +18 -16
- package/out/concepts/Configuration__.js.map +1 -1
- package/out/concepts/Connection__.d.ts +4 -4
- package/out/concepts/Connection__.js +18 -22
- package/out/concepts/Connection__.js.map +1 -1
- package/out/concepts/ConnectorTrigger__.d.ts +6 -7
- package/out/concepts/ConnectorTrigger__.js +21 -22
- package/out/concepts/ConnectorTrigger__.js.map +1 -1
- package/out/concepts/Connector__.d.ts +33 -139
- package/out/concepts/Connector__.js +34 -191
- package/out/concepts/Connector__.js.map +1 -1
- package/out/concepts/Constant__.d.ts +2 -3
- package/out/concepts/Constant__.js +23 -25
- package/out/concepts/Constant__.js.map +1 -1
- package/out/concepts/DataElement__.d.ts +46 -0
- package/out/concepts/DataElement__.js +118 -0
- package/out/concepts/DataElement__.js.map +1 -0
- package/out/concepts/DataSource__.d.ts +2 -7
- package/out/concepts/DataSource__.js +23 -31
- package/out/concepts/DataSource__.js.map +1 -1
- package/out/concepts/DatabaseTypeAnnotation__.d.ts +4 -5
- package/out/concepts/DatabaseTypeAnnotation__.js +18 -18
- package/out/concepts/DatabaseTypeAnnotation__.js.map +1 -1
- package/out/concepts/Destination__.d.ts +11 -11
- package/out/concepts/Destination__.js +89 -39
- package/out/concepts/Destination__.js.map +1 -1
- package/out/concepts/End__.d.ts +2 -3
- package/out/concepts/End__.js +17 -15
- package/out/concepts/End__.js.map +1 -1
- package/out/concepts/EntityIndex__.d.ts +3 -4
- package/out/concepts/EntityIndex__.js +21 -23
- package/out/concepts/EntityIndex__.js.map +1 -1
- package/out/concepts/EntityProperty__.d.ts +4 -4
- package/out/concepts/EntityProperty__.js +67 -51
- package/out/concepts/EntityProperty__.js.map +1 -1
- package/out/concepts/Entity__.d.ts +3 -3
- package/out/concepts/Entity__.js +51 -32
- package/out/concepts/Entity__.js.map +1 -1
- package/out/concepts/EnumItem__.d.ts +3 -3
- package/out/concepts/EnumItem__.js +25 -19
- package/out/concepts/EnumItem__.js.map +1 -1
- package/out/concepts/Enum__.d.ts +3 -3
- package/out/concepts/Enum__.js +35 -23
- package/out/concepts/Enum__.js.map +1 -1
- package/out/concepts/Event__.d.ts +2 -3
- package/out/concepts/Event__.js +21 -24
- package/out/concepts/Event__.js.map +1 -1
- package/out/concepts/ExternalDestination__.d.ts +5 -6
- package/out/concepts/ExternalDestination__.js +25 -25
- package/out/concepts/ExternalDestination__.js.map +1 -1
- package/out/concepts/ForEachStatement__.d.ts +3 -3
- package/out/concepts/ForEachStatement__.js +60 -21
- package/out/concepts/ForEachStatement__.js.map +1 -1
- package/out/concepts/FrontendLibrary__.d.ts +3 -4
- package/out/concepts/FrontendLibrary__.js +25 -27
- package/out/concepts/FrontendLibrary__.js.map +1 -1
- package/out/concepts/FrontendVariable__.d.ts +3 -4
- package/out/concepts/FrontendVariable__.js +12 -12
- package/out/concepts/FrontendVariable__.js.map +1 -1
- package/out/concepts/Frontend__.d.ts +6 -8
- package/out/concepts/Frontend__.js +39 -47
- package/out/concepts/Frontend__.js.map +1 -1
- package/out/concepts/Function__.d.ts +3 -3
- package/out/concepts/Function__.js +60 -37
- package/out/concepts/Function__.js.map +1 -1
- package/out/concepts/Identifier__.d.ts +3 -4
- package/out/concepts/Identifier__.js +29 -30
- package/out/concepts/Identifier__.js.map +1 -1
- package/out/concepts/IfStatement__.d.ts +3 -3
- package/out/concepts/IfStatement__.js +51 -21
- package/out/concepts/IfStatement__.js.map +1 -1
- package/out/concepts/Integration__.d.ts +2 -93
- package/out/concepts/Integration__.js +19 -157
- package/out/concepts/Integration__.js.map +1 -1
- package/out/concepts/InterfaceParam__.d.ts +4 -30
- package/out/concepts/InterfaceParam__.js +24 -58
- package/out/concepts/InterfaceParam__.js.map +1 -1
- package/out/concepts/Interface__.d.ts +5 -31
- package/out/concepts/Interface__.js +34 -89
- package/out/concepts/Interface__.js.map +1 -1
- package/out/concepts/JSBlock__.d.ts +3 -3
- package/out/concepts/JSBlock__.js +24 -17
- package/out/concepts/JSBlock__.js.map +1 -1
- package/out/concepts/JavaLogic__.d.ts +3 -4
- package/out/concepts/JavaLogic__.js +21 -22
- package/out/concepts/JavaLogic__.js.map +1 -1
- package/out/concepts/LogicItem__.d.ts +8 -3
- package/out/concepts/LogicItem__.js +30 -23
- package/out/concepts/LogicItem__.js.map +1 -1
- package/out/concepts/Logic__.d.ts +18 -17
- package/out/concepts/Logic__.js +188 -113
- package/out/concepts/Logic__.js.map +1 -1
- package/out/concepts/MatchCase__.d.ts +3 -3
- package/out/concepts/MatchCase__.js +110 -23
- package/out/concepts/MatchCase__.js.map +1 -1
- package/out/concepts/Match__.d.ts +3 -3
- package/out/concepts/Match__.js +64 -20
- package/out/concepts/Match__.js.map +1 -1
- package/out/concepts/MemberExpression__.d.ts +3 -3
- package/out/concepts/MemberExpression__.js +59 -65
- package/out/concepts/MemberExpression__.js.map +1 -1
- package/out/concepts/MicroApp__.d.ts +2 -3
- package/out/concepts/MicroApp__.js +21 -26
- package/out/concepts/MicroApp__.js.map +1 -1
- package/out/concepts/Module__.d.ts +47 -219
- package/out/concepts/Module__.js +32 -232
- package/out/concepts/Module__.js.map +1 -1
- package/out/concepts/MsgTriggerEvent__.d.ts +3 -4
- package/out/concepts/MsgTriggerEvent__.js +18 -16
- package/out/concepts/MsgTriggerEvent__.js.map +1 -1
- package/out/concepts/MsgTriggerLauncher__.d.ts +3 -4
- package/out/concepts/MsgTriggerLauncher__.js +19 -18
- package/out/concepts/MsgTriggerLauncher__.js.map +1 -1
- package/out/concepts/Namespace__.d.ts +2 -4
- package/out/concepts/Namespace__.js +46 -64
- package/out/concepts/Namespace__.js.map +1 -1
- package/out/concepts/NewComposite__.d.ts +3 -4
- package/out/concepts/NewComposite__.js +133 -71
- package/out/concepts/NewComposite__.js.map +1 -1
- package/out/concepts/NewList__.d.ts +4 -5
- package/out/concepts/NewList__.js +41 -35
- package/out/concepts/NewList__.js.map +1 -1
- package/out/concepts/NewMap__.d.ts +4 -5
- package/out/concepts/NewMap__.js +38 -39
- package/out/concepts/NewMap__.js.map +1 -1
- package/out/concepts/New__.d.ts +2 -3
- package/out/concepts/New__.js +17 -15
- package/out/concepts/New__.js.map +1 -1
- package/out/concepts/NullLiteral__.d.ts +2 -3
- package/out/concepts/NullLiteral__.js +17 -15
- package/out/concepts/NullLiteral__.js.map +1 -1
- package/out/concepts/NumericLiteral__.d.ts +3 -3
- package/out/concepts/NumericLiteral__.js +27 -21
- package/out/concepts/NumericLiteral__.js.map +1 -1
- package/out/concepts/OqlQueryComponent__.d.ts +3 -3
- package/out/concepts/OqlQueryComponent__.js +30 -26
- package/out/concepts/OqlQueryComponent__.js.map +1 -1
- package/out/concepts/OverriddenLogic__.d.ts +22 -14
- package/out/concepts/OverriddenLogic__.js +62 -73
- package/out/concepts/OverriddenLogic__.js.map +1 -1
- package/out/concepts/Param__.d.ts +3 -3
- package/out/concepts/Param__.js +69 -34
- package/out/concepts/Param__.js.map +1 -1
- package/out/concepts/Point__.d.ts +2 -3
- package/out/concepts/Point__.js +16 -16
- package/out/concepts/Point__.js.map +1 -1
- package/out/concepts/ProcessComponent__.d.ts +2 -3
- package/out/concepts/ProcessComponent__.js +22 -24
- package/out/concepts/ProcessComponent__.js.map +1 -1
- package/out/concepts/ProcessElement__.d.ts +2 -3
- package/out/concepts/ProcessElement__.js +46 -61
- package/out/concepts/ProcessElement__.js.map +1 -1
- package/out/concepts/ProcessOutcome__.d.ts +2 -3
- package/out/concepts/ProcessOutcome__.js +18 -17
- package/out/concepts/ProcessOutcome__.js.map +1 -1
- package/out/concepts/ProcessOutcomes__.d.ts +2 -3
- package/out/concepts/ProcessOutcomes__.js +17 -15
- package/out/concepts/ProcessOutcomes__.js.map +1 -1
- package/out/concepts/Process__.d.ts +7 -5
- package/out/concepts/Process__.js +35 -46
- package/out/concepts/Process__.js.map +1 -1
- package/out/concepts/QueryAggregateExpression__.d.ts +2 -3
- package/out/concepts/QueryAggregateExpression__.js +22 -23
- package/out/concepts/QueryAggregateExpression__.js.map +1 -1
- package/out/concepts/QueryFieldExpression__.d.ts +3 -4
- package/out/concepts/QueryFieldExpression__.js +20 -21
- package/out/concepts/QueryFieldExpression__.js.map +1 -1
- package/out/concepts/QueryFromExpression__.d.ts +3 -4
- package/out/concepts/QueryFromExpression__.js +22 -23
- package/out/concepts/QueryFromExpression__.js.map +1 -1
- package/out/concepts/QueryGroupByExpression__.d.ts +2 -3
- package/out/concepts/QueryGroupByExpression__.js +19 -18
- package/out/concepts/QueryGroupByExpression__.js.map +1 -1
- package/out/concepts/QueryJoinExpression__.d.ts +3 -4
- package/out/concepts/QueryJoinExpression__.js +25 -29
- package/out/concepts/QueryJoinExpression__.js.map +1 -1
- package/out/concepts/QueryLimitExpression__.d.ts +2 -3
- package/out/concepts/QueryLimitExpression__.js +22 -22
- package/out/concepts/QueryLimitExpression__.js.map +1 -1
- package/out/concepts/QueryOrderByExpression__.d.ts +2 -3
- package/out/concepts/QueryOrderByExpression__.js +22 -22
- package/out/concepts/QueryOrderByExpression__.js.map +1 -1
- package/out/concepts/QuerySelectExpression__.d.ts +2 -3
- package/out/concepts/QuerySelectExpression__.js +21 -23
- package/out/concepts/QuerySelectExpression__.js.map +1 -1
- package/out/concepts/Rect__.d.ts +2 -3
- package/out/concepts/Rect__.js +18 -20
- package/out/concepts/Rect__.js.map +1 -1
- package/out/concepts/Return__.d.ts +3 -3
- package/out/concepts/Return__.js +45 -29
- package/out/concepts/Return__.js.map +1 -1
- package/out/concepts/Role__.d.ts +2 -3
- package/out/concepts/Role__.js +21 -22
- package/out/concepts/Role__.js.map +1 -1
- package/out/concepts/SelectMembers__.d.ts +2 -3
- package/out/concepts/SelectMembers__.js +21 -20
- package/out/concepts/SelectMembers__.js.map +1 -1
- package/out/concepts/Slot__.d.ts +2 -3
- package/out/concepts/Slot__.js +22 -26
- package/out/concepts/Slot__.js.map +1 -1
- package/out/concepts/SqlQueryComponent__.d.ts +3 -3
- package/out/concepts/SqlQueryComponent__.js +31 -28
- package/out/concepts/SqlQueryComponent__.js.map +1 -1
- package/out/concepts/Start__.d.ts +2 -3
- package/out/concepts/Start__.js +17 -15
- package/out/concepts/Start__.js.map +1 -1
- package/out/concepts/StringInterpolation__.d.ts +3 -3
- package/out/concepts/StringInterpolation__.js +37 -17
- package/out/concepts/StringInterpolation__.js.map +1 -1
- package/out/concepts/StringLiteral__.d.ts +3 -3
- package/out/concepts/StringLiteral__.js +22 -14
- package/out/concepts/StringLiteral__.js.map +1 -1
- package/out/concepts/StructureProperty__.d.ts +5 -5
- package/out/concepts/StructureProperty__.js +40 -33
- package/out/concepts/StructureProperty__.js.map +1 -1
- package/out/concepts/Structure__.d.ts +12 -3
- package/out/concepts/Structure__.js +46 -45
- package/out/concepts/Structure__.js.map +1 -1
- package/out/concepts/SwitchCase__.d.ts +3 -3
- package/out/concepts/SwitchCase__.js +54 -19
- package/out/concepts/SwitchCase__.js.map +1 -1
- package/out/concepts/SwitchStatement__.d.ts +3 -3
- package/out/concepts/SwitchStatement__.js +39 -23
- package/out/concepts/SwitchStatement__.js.map +1 -1
- package/out/concepts/Theme__.d.ts +2 -3
- package/out/concepts/Theme__.js +14 -12
- package/out/concepts/Theme__.js.map +1 -1
- package/out/concepts/Transactional__.d.ts +2 -3
- package/out/concepts/Transactional__.js +17 -18
- package/out/concepts/Transactional__.js.map +1 -1
- package/out/concepts/TriggerEvent__.d.ts +2 -3
- package/out/concepts/TriggerEvent__.js +18 -19
- package/out/concepts/TriggerEvent__.js.map +1 -1
- package/out/concepts/TriggerLauncher__.d.ts +17 -6
- package/out/concepts/TriggerLauncher__.js +63 -26
- package/out/concepts/TriggerLauncher__.js.map +1 -1
- package/out/concepts/TypeAnnotation__.d.ts +6 -8
- package/out/concepts/TypeAnnotation__.js +79 -56
- package/out/concepts/TypeAnnotation__.js.map +1 -1
- package/out/concepts/TypeParam__.d.ts +3 -3
- package/out/concepts/TypeParam__.js +23 -16
- package/out/concepts/TypeParam__.js.map +1 -1
- package/out/concepts/UnaryExpression__.d.ts +3 -3
- package/out/concepts/UnaryExpression__.js +39 -21
- package/out/concepts/UnaryExpression__.js.map +1 -1
- package/out/concepts/Unparsed__.d.ts +3 -3
- package/out/concepts/Unparsed__.js +23 -16
- package/out/concepts/Unparsed__.js.map +1 -1
- package/out/concepts/UseComponent__.d.ts +2 -3
- package/out/concepts/UseComponent__.js +16 -16
- package/out/concepts/UseComponent__.js.map +1 -1
- package/out/concepts/ValidationRule__.d.ts +16 -17
- package/out/concepts/ValidationRule__.js +15 -18
- package/out/concepts/ValidationRule__.js.map +1 -1
- package/out/concepts/Variable__.d.ts +3 -3
- package/out/concepts/Variable__.js +45 -29
- package/out/concepts/Variable__.js.map +1 -1
- package/out/concepts/ViewBlock__.d.ts +3 -4
- package/out/concepts/ViewBlock__.js +19 -20
- package/out/concepts/ViewBlock__.js.map +1 -1
- package/out/concepts/ViewComponent__.d.ts +31 -32
- package/out/concepts/ViewComponent__.js +32 -35
- package/out/concepts/ViewComponent__.js.map +1 -1
- package/out/concepts/ViewElement__.d.ts +81 -82
- package/out/concepts/ViewElement__.js +155 -259
- package/out/concepts/ViewElement__.js.map +1 -1
- package/out/concepts/View__.d.ts +4 -5
- package/out/concepts/View__.js +207 -141
- package/out/concepts/View__.js.map +1 -1
- package/out/concepts/WhileStatement__.d.ts +3 -3
- package/out/concepts/WhileStatement__.js +41 -20
- package/out/concepts/WhileStatement__.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/concepts/types__.d.ts +2 -2
- package/out/decorators/index.d.ts +0 -2
- package/out/decorators/index.js +8 -12
- package/out/decorators/index.js.map +1 -1
- package/out/generator/genBundleFiles.d.ts +2 -2
- package/out/generator/genBundleFiles.js +4 -11
- package/out/generator/genBundleFiles.js.map +1 -1
- package/out/generator/genReleaseBody.d.ts +2 -4
- package/out/generator/genReleaseBody.js +136 -192
- package/out/generator/genReleaseBody.js.map +1 -1
- package/out/index.d.ts +1 -0
- package/out/index.js +1 -0
- package/out/index.js.map +1 -1
- package/out/natural/RequirementAnalyzer.d.ts +22 -0
- package/out/natural/RequirementAnalyzer.js +196 -0
- package/out/natural/RequirementAnalyzer.js.map +1 -0
- package/out/natural/RequirementExecutor.d.ts +51 -0
- package/out/natural/RequirementExecutor.js +692 -0
- package/out/natural/RequirementExecutor.js.map +1 -0
- package/out/natural/componentData.d.ts +31 -0
- package/out/natural/componentData.js +85 -0
- package/out/natural/componentData.js.map +1 -0
- package/out/natural/genNaturalTS.d.ts +3 -0
- package/out/natural/genNaturalTS.js +90 -0
- package/out/natural/genNaturalTS.js.map +1 -0
- package/out/natural/index.d.ts +4 -0
- package/out/natural/index.js +21 -0
- package/out/natural/index.js.map +1 -0
- package/out/natural/knowledgeMap.d.ts +4 -0
- package/out/natural/knowledgeMap.js +40 -0
- package/out/natural/knowledgeMap.js.map +1 -0
- package/out/natural/naslStdlibMap.d.ts +2 -0
- package/out/natural/naslStdlibMap.js +26 -0
- package/out/natural/naslStdlibMap.js.map +1 -0
- package/out/natural/transformTSCode.d.ts +7 -0
- package/out/natural/transformTSCode.js +878 -0
- package/out/natural/transformTSCode.js.map +1 -0
- package/out/sentry/index.js +2 -2
- package/out/sentry/index.js.map +1 -1
- package/out/server/createUiTs.js +1 -34
- package/out/server/createUiTs.js.map +1 -1
- package/out/server/extendBaseNode.js +17 -17
- package/out/server/extendBaseNode.js.map +1 -1
- package/out/server/formatTsUtils.js +10 -0
- package/out/server/formatTsUtils.js.map +1 -1
- package/out/server/getConnector.d.ts +0 -3
- package/out/server/getConnector.js +1 -38
- package/out/server/getConnector.js.map +1 -1
- package/out/server/getMemberIdentifier.js +2 -1
- package/out/server/getMemberIdentifier.js.map +1 -1
- package/out/server/index.js +0 -2
- package/out/server/index.js.map +1 -1
- package/out/server/naslServer.d.ts +6 -17
- package/out/server/naslServer.js +213 -321
- package/out/server/naslServer.js.map +1 -1
- package/out/server/translator.js +4 -2
- package/out/server/translator.js.map +1 -1
- package/out/service/creator/add.configs.js +0 -26
- package/out/service/creator/add.configs.js.map +1 -1
- package/out/service/creator/errHandles.js +3 -5
- package/out/service/creator/errHandles.js.map +1 -1
- package/out/service/creator/index.js +0 -13
- package/out/service/creator/index.js.map +1 -1
- package/out/service/storage/init.js +16 -0
- package/out/service/storage/init.js.map +1 -1
- package/out/service/storage/jsoner.js +1 -1
- package/out/service/storage/jsoner.js.map +1 -1
- package/out/templator/genCurdEditMultipleKeyBlock.js +3 -3
- package/out/templator/genCurdEditMultipleKeyBlock.js.map +1 -1
- package/out/templator/genCurdMultipleKeyBlock.js +3 -3
- package/out/templator/genCurdMultipleKeyBlock.js.map +1 -1
- package/out/templator/genTableBlock.js +1 -1
- package/out/templator/genTableBlock.js.map +1 -1
- package/out/translator/index.d.ts +48 -3
- package/out/translator/index.js +110 -17
- package/out/translator/index.js.map +1 -1
- package/out/translator/lsp.d.ts +45 -0
- package/out/translator/lsp.js +6 -0
- package/out/translator/lsp.js.map +1 -0
- package/out/translator/tsp.d.ts +12 -0
- package/out/translator/{types.js → tsp.js} +1 -1
- package/out/translator/tsp.js.map +1 -0
- package/out/utils/index.d.ts +0 -2
- package/out/utils/index.js +0 -2
- package/out/utils/index.js.map +1 -1
- package/out/utils/logger.d.ts +0 -4
- package/out/utils/logger.js +1 -13
- package/out/utils/logger.js.map +1 -1
- package/out/utils/time-slicing.js +1 -1
- package/out/utils/time-slicing.js.map +1 -1
- package/package.json +11 -5
- package/sandbox/stdlib/nasl.oql.ts +0 -2
- package/sandbox/stdlib/nasl.ui.definition.ts +1415 -2218
- package/sandbox-natural/stdlib/nasl.core.ts +36 -0
- package/sandbox-natural/stdlib/nasl.oql.ts +8 -0
- package/sandbox-natural/stdlib/nasl.ui.ts +63 -0
- package/sandbox-natural/stdlib/nasl.util.ts +119 -0
- package/sandbox-natural/tsconfig.json +12 -0
- package/src/bak/translator.js +5 -8
- package/src/breakpoint/generator/AfterStartNode.ts +1 -2
- package/src/breakpoint/generator/BeforeEndNode.ts +1 -2
- package/src/breakpoint/generator/BreakpointNode.ts +9 -36
- package/src/breakpoint/shared/constants.ts +0 -7
- package/src/breakpoint/shared/utils.ts +3 -36
- package/src/common/BaseNode.ts +81 -140
- package/src/common/Command.ts +1 -6
- package/src/common/EventEmitter.ts +4 -2
- package/src/common/classMap.ts +3 -0
- package/src/common/index.ts +1 -0
- package/src/concepts/Abort__.ts +22 -20
- package/src/concepts/Anchor__.ts +38 -23
- package/src/concepts/AnonymousFunction__.ts +63 -39
- package/src/concepts/App__.ts +314 -364
- package/src/concepts/Argument__.ts +44 -27
- package/src/concepts/Assignee__.ts +39 -41
- package/src/concepts/AssignmentLine__.ts +23 -20
- package/src/concepts/Assignment__.ts +58 -54
- package/src/concepts/Attribute__.ts +34 -40
- package/src/concepts/AuthInterface__.ts +24 -22
- package/src/concepts/AuthLogicForCallInterface__.ts +41 -71
- package/src/concepts/AuthLogic__.ts +30 -21
- package/src/concepts/BackendVariable__.ts +54 -55
- package/src/concepts/Backend__.ts +59 -58
- package/src/concepts/BatchAssignment__.ts +78 -88
- package/src/concepts/BinaryExpression__.ts +66 -72
- package/src/concepts/BindAttribute__.ts +155 -135
- package/src/concepts/BindDirective__.ts +41 -45
- package/src/concepts/BindEvent__.ts +89 -80
- package/src/concepts/BindStyle__.ts +36 -37
- package/src/concepts/BooleanLiteral__.ts +28 -22
- package/src/concepts/CallAuthInterface__.ts +32 -29
- package/src/concepts/CallConnector__.ts +41 -50
- package/src/concepts/CallFunction__.ts +77 -45
- package/src/concepts/CallInterface__.ts +68 -36
- package/src/concepts/CallLogic__.ts +213 -166
- package/src/concepts/CallQueryComponent__.ts +88 -156
- package/src/concepts/Comment__.ts +29 -22
- package/src/concepts/CompletionProperty__.ts +30 -34
- package/src/concepts/ConfigGroup__.ts +29 -28
- package/src/concepts/ConfigPropertyValue__.ts +23 -22
- package/src/concepts/ConfigProperty__.ts +36 -42
- package/src/concepts/Configuration__.ts +26 -23
- package/src/concepts/Connection__.ts +21 -26
- package/src/concepts/ConnectorTrigger__.ts +34 -30
- package/src/concepts/Connector__.ts +87 -342
- package/src/concepts/Constant__.ts +36 -30
- package/src/concepts/DataElement__.ts +131 -0
- package/src/concepts/DataSource__.ts +33 -37
- package/src/concepts/DatabaseTypeAnnotation__.ts +24 -24
- package/src/concepts/Destination__.ts +104 -51
- package/src/concepts/End__.ts +25 -23
- package/src/concepts/EntityIndex__.ts +33 -36
- package/src/concepts/EntityProperty__.ts +84 -64
- package/src/concepts/Entity__.ts +67 -41
- package/src/concepts/EnumItem__.ts +32 -24
- package/src/concepts/Enum__.ts +42 -28
- package/src/concepts/Event__.ts +33 -33
- package/src/concepts/ExternalDestination__.ts +29 -29
- package/src/concepts/ForEachStatement__.ts +73 -34
- package/src/concepts/FrontendLibrary__.ts +38 -37
- package/src/concepts/FrontendVariable__.ts +20 -18
- package/src/concepts/Frontend__.ts +62 -66
- package/src/concepts/Function__.ts +80 -54
- package/src/concepts/Identifier__.ts +34 -37
- package/src/concepts/IfStatement__.ts +77 -40
- package/src/concepts/Integration__.ts +24 -244
- package/src/concepts/InterfaceParam__.ts +33 -69
- package/src/concepts/Interface__.ts +46 -104
- package/src/concepts/JSBlock__.ts +28 -22
- package/src/concepts/JavaLogic__.ts +26 -27
- package/src/concepts/LogicItem__.ts +47 -29
- package/src/concepts/Logic__.ts +226 -168
- package/src/concepts/MatchCase__.ts +128 -38
- package/src/concepts/Match__.ts +73 -28
- package/src/concepts/MemberExpression__.ts +139 -174
- package/src/concepts/MicroApp__.ts +27 -32
- package/src/concepts/Module__.ts +107 -527
- package/src/concepts/MsgTriggerEvent__.ts +33 -25
- package/src/concepts/MsgTriggerLauncher__.ts +30 -27
- package/src/concepts/Namespace__.ts +99 -109
- package/src/concepts/NewComposite__.ts +161 -130
- package/src/concepts/NewList__.ts +51 -45
- package/src/concepts/NewMap__.ts +48 -51
- package/src/concepts/New__.ts +22 -20
- package/src/concepts/NullLiteral__.ts +22 -20
- package/src/concepts/NumericLiteral__.ts +31 -26
- package/src/concepts/OqlQueryComponent__.ts +34 -33
- package/src/concepts/OverriddenLogic__.ts +94 -128
- package/src/concepts/Param__.ts +90 -51
- package/src/concepts/Point__.ts +22 -22
- package/src/concepts/ProcessComponent__.ts +37 -36
- package/src/concepts/ProcessElement__.ts +86 -114
- package/src/concepts/ProcessOutcome__.ts +23 -22
- package/src/concepts/ProcessOutcomes__.ts +22 -20
- package/src/concepts/Process__.ts +63 -69
- package/src/concepts/QueryAggregateExpression__.ts +27 -28
- package/src/concepts/QueryFieldExpression__.ts +25 -26
- package/src/concepts/QueryFromExpression__.ts +28 -29
- package/src/concepts/QueryGroupByExpression__.ts +23 -22
- package/src/concepts/QueryJoinExpression__.ts +41 -62
- package/src/concepts/QueryLimitExpression__.ts +27 -27
- package/src/concepts/QueryOrderByExpression__.ts +27 -27
- package/src/concepts/QuerySelectExpression__.ts +54 -105
- package/src/concepts/Rect__.ts +24 -26
- package/src/concepts/Return__.ts +67 -42
- package/src/concepts/Role__.ts +25 -25
- package/src/concepts/SelectMembers__.ts +32 -30
- package/src/concepts/Slot__.ts +30 -32
- package/src/concepts/SqlQueryComponent__.ts +37 -41
- package/src/concepts/Start__.ts +22 -20
- package/src/concepts/StringInterpolation__.ts +45 -25
- package/src/concepts/StringLiteral__.ts +26 -19
- package/src/concepts/StructureProperty__.ts +47 -38
- package/src/concepts/Structure__.ts +58 -55
- package/src/concepts/SwitchCase__.ts +74 -40
- package/src/concepts/SwitchStatement__.ts +44 -29
- package/src/concepts/Theme__.ts +21 -18
- package/src/concepts/Transactional__.ts +31 -24
- package/src/concepts/TriggerEvent__.ts +29 -28
- package/src/concepts/TriggerLauncher__.ts +82 -32
- package/src/concepts/TypeAnnotation__.ts +98 -92
- package/src/concepts/TypeParam__.ts +28 -21
- package/src/concepts/UnaryExpression__.ts +45 -26
- package/src/concepts/Unparsed__.ts +25 -20
- package/src/concepts/UseComponent__.ts +22 -22
- package/src/concepts/ValidationRule__.ts +555 -539
- package/src/concepts/Variable__.ts +67 -43
- package/src/concepts/ViewBlock__.ts +25 -26
- package/src/concepts/ViewComponent__.ts +91 -87
- package/src/concepts/ViewElement__.ts +2437 -2696
- package/src/concepts/View__.ts +407 -345
- package/src/concepts/WhileStatement__.ts +59 -36
- package/src/concepts/index__.ts +1 -0
- package/src/concepts/types__.ts +124 -124
- package/src/decorators/index.ts +7 -11
- package/src/generator/genBundleFiles.ts +4 -14
- package/src/generator/genReleaseBody.ts +182 -198
- package/src/index.ts +1 -0
- package/src/natural/RequirementAnalyzer.ts +208 -0
- package/src/natural/RequirementExecutor.ts +685 -0
- package/src/natural/componentData.ts +81 -0
- package/src/natural/genNaturalTS.ts +90 -0
- package/src/natural/index.ts +4 -0
- package/src/natural/knowledgeMap.ts +39 -0
- package/src/natural/naslStdlibMap.ts +24 -0
- package/src/natural/transformTSCode.ts +834 -0
- package/src/sentry/index.ts +2 -2
- package/src/server/createUiTs.ts +1 -30
- package/src/server/extendBaseNode.ts +18 -18
- package/src/server/formatTsUtils.ts +11 -0
- package/src/server/getConnector.ts +27 -63
- package/src/server/getMemberIdentifier.ts +3 -2
- package/src/server/index.ts +1 -4
- package/src/server/naslServer.ts +212 -302
- package/src/server/translator.ts +3 -1
- package/src/service/creator/add.configs.js +1 -26
- package/src/service/creator/errHandles.js +4 -5
- package/src/service/creator/index.js +0 -12
- package/src/service/storage/init.ts +17 -0
- package/src/service/storage/jsoner.ts +1 -1
- package/src/templator/genCurdEditMultipleKeyBlock.ts +3 -3
- package/src/templator/genCurdMultipleKeyBlock.ts +3 -3
- package/src/templator/genTableBlock.ts +1 -1
- package/src/test/examples/app1.json +1406 -0
- package/src/test/fixtures/env.ts +19 -0
- package/src/test/integration/connect-create-file.ts +14 -0
- package/src/test/integration/connect-file.ts +24 -0
- package/src/test/integration/node-nasl-server.ts +14 -0
- package/src/test/units/baseTypes/Assignment.spec.ts +20 -0
- package/src/test/units/baseTypes/CallLogic.spec.ts +22 -0
- package/src/test/units/baseTypes/StringLiteral.spec.ts +60 -0
- package/src/test/units/baseTypes/new.spec.ts +13 -0
- package/src/test/units/common/Vertex.spec.ts +23 -0
- package/src/test/units/data/Entity.spec.ts +10 -0
- package/src/test/units/login.spec.ts +10 -0
- package/src/test/units/page/Block.spec.ts +15 -0
- package/src/test/units/page/Element.spec.ts +45 -0
- package/src/test/units/page/example.dashboard.html +46 -0
- package/src/test/units/page/example.view1.html +63 -0
- package/src/test/units/temp/temp.spec.ts +66 -0
- package/src/translator/index.ts +137 -3
- package/src/translator/lsp.ts +50 -0
- package/src/translator/tsp.ts +14 -0
- package/src/utils/index.ts +0 -2
- package/src/utils/logger.ts +0 -13
- package/src/utils/time-slicing.ts +1 -1
- package/test/concepts/call-interface/toEmbeddedTS.spec.ts +6 -6
- package/test/concepts/call-interface/toJS.spec.ts +6 -6
- package/test/concepts/call-logic/__snapshots__/toEmbeddedTS.spec.ts.snap +0 -45
- package/test/concepts/call-logic/__snapshots__/toJS.spec.ts.snap +0 -102
- package/test/concepts/call-logic/toEmbeddedTS.spec.ts +6 -6
- package/test/concepts/call-logic/toJS.spec.ts +6 -6
- package/test/concepts/match/toEmbeddedTS.spec.ts +6 -6
- package/test/concepts/match/toJS.spec.ts +6 -6
- package/test/concepts/utils.ts +43 -46
- package/test/concepts/validation-rule/toEmbeddedTS.spec.ts +6 -6
- package/test/concepts/validation-rule/toJS.spec.ts +6 -6
- package/test/concepts/validation-rule/validation-rule.spec.ts +8 -8
- package/test/concepts/view-element/__snapshots__/toEmbeddedTS.spec.ts.snap +0 -592
- package/test/concepts/view-element/__snapshots__/toVue.spec.ts.snap +0 -308
- package/test/concepts/view-element/fixtures/default-not-found.json +313 -313
- package/test/concepts/view-element/toEmbeddedTS.spec.ts +6 -6
- package/test/concepts/view-element/toVue.spec.ts +6 -6
- package/ts-worker/package-lock.json +101 -6663
- package/ts-worker/webpack.config.js +1 -1
- package/out/translator/constant.d.ts +0 -6
- package/out/translator/constant.js +0 -10
- package/out/translator/constant.js.map +0 -1
- package/out/translator/types.d.ts +0 -32
- package/out/translator/types.js.map +0 -1
- package/out/translator/utils.d.ts +0 -17
- package/out/translator/utils.js +0 -102
- package/out/translator/utils.js.map +0 -1
- package/out/utils/cookie.d.ts +0 -9
- package/out/utils/cookie.js +0 -62
- package/out/utils/cookie.js.map +0 -1
- package/out/utils/types.d.ts +0 -1
- package/out/utils/types.js +0 -3
- package/out/utils/types.js.map +0 -1
- package/out/utils/window.d.ts +0 -7
- package/out/utils/window.js +0 -14
- package/out/utils/window.js.map +0 -1
- package/src/translator/constant.ts +0 -7
- package/src/translator/types.ts +0 -40
- package/src/translator/utils.ts +0 -104
- package/src/utils/cookie.ts +0 -60
- package/src/utils/types.ts +0 -1
- package/src/utils/window.ts +0 -9
- package/test/concepts/boolean-literal/__snapshots__/toEmbeddedTS.spec.ts.snap +0 -11
- package/test/concepts/boolean-literal/__snapshots__/toJS.spec.ts.snap +0 -11
- package/test/concepts/boolean-literal/__snapshots__/toVue.spec.ts.snap +0 -11
- package/test/concepts/boolean-literal/constant.ts +0 -5
- package/test/concepts/boolean-literal/fixtures/false.json +0 -4
- package/test/concepts/boolean-literal/fixtures/true.json +0 -4
- package/test/concepts/boolean-literal/toEmbeddedTS.spec.ts +0 -14
- package/test/concepts/boolean-literal/toJS.spec.ts +0 -14
- package/test/concepts/boolean-literal/toVue.spec.ts +0 -14
- package/test/concepts/call-logic/__snapshots__/getQuickInfoOffset.spec.ts.snap +0 -106
- package/test/concepts/call-logic/fixtures/nested-call-logic.json +0 -860
- package/test/concepts/call-logic/getQuickInfoOffset.spec.ts +0 -23
- package/test/concepts/identifier/__snapshots__/toEmbeddedTS.spec.ts.snap +0 -16
- package/test/concepts/identifier/__snapshots__/toJS.spec.ts.snap +0 -16
- package/test/concepts/identifier/__snapshots__/toVue.spec.ts.snap +0 -16
- package/test/concepts/identifier/constant.ts +0 -5
- package/test/concepts/identifier/fixtures/data-source.json +0 -5
- package/test/concepts/identifier/fixtures/no-namespace.json +0 -4
- package/test/concepts/identifier/fixtures/view-variable.json +0 -201
- package/test/concepts/identifier/toEmbeddedTS.spec.ts +0 -14
- package/test/concepts/identifier/toJS.spec.ts +0 -14
- package/test/concepts/identifier/toVue.spec.ts +0 -14
- package/test/concepts/member-expression/__snapshots__/toEmbeddedTS.spec.ts.snap +0 -21
- package/test/concepts/member-expression/__snapshots__/toJS.spec.ts.snap +0 -21
- package/test/concepts/member-expression/__snapshots__/toVue.spec.ts.snap +0 -21
- package/test/concepts/member-expression/constant.ts +0 -5
- package/test/concepts/member-expression/fixtures/app.enums.UserStatusEnum.json +0 -13
- package/test/concepts/member-expression/fixtures/elements.table-view.data.json +0 -13
- package/test/concepts/member-expression/fixtures/entry.created-by.json +0 -18
- package/test/concepts/member-expression/fixtures/nasl.auth.userInfo.json +0 -19
- package/test/concepts/member-expression/toEmbeddedTS.spec.ts +0 -14
- package/test/concepts/member-expression/toJS.spec.ts +0 -14
- package/test/concepts/member-expression/toVue.spec.ts +0 -14
- package/test/concepts/null-literal/__snapshots__/toEmbeddedTS.spec.ts.snap +0 -6
- package/test/concepts/null-literal/__snapshots__/toJS.spec.ts.snap +0 -6
- package/test/concepts/null-literal/__snapshots__/toVue.spec.ts.snap +0 -6
- package/test/concepts/null-literal/constant.ts +0 -5
- package/test/concepts/null-literal/fixtures/null.json +0 -3
- package/test/concepts/null-literal/toEmbeddedTS.spec.ts +0 -14
- package/test/concepts/null-literal/toJS.spec.ts +0 -14
- package/test/concepts/null-literal/toVue.spec.ts +0 -14
- package/test/concepts/numeric-literal/__snapshots__/toEmbeddedTS.spec.ts.snap +0 -6
- package/test/concepts/numeric-literal/__snapshots__/toJS.spec.ts.snap +0 -6
- package/test/concepts/numeric-literal/__snapshots__/toVue.spec.ts.snap +0 -6
- package/test/concepts/numeric-literal/constant.ts +0 -5
- package/test/concepts/numeric-literal/fixtures/number.json +0 -10
- package/test/concepts/numeric-literal/toEmbeddedTS.spec.ts +0 -14
- package/test/concepts/numeric-literal/toJS.spec.ts +0 -14
- package/test/concepts/numeric-literal/toVue.spec.ts +0 -14
- package/test/concepts/string-literal/__snapshots__/toEmbeddedTS.spec.ts.snap +0 -16
- package/test/concepts/string-literal/__snapshots__/toJS.spec.ts.snap +0 -16
- package/test/concepts/string-literal/__snapshots__/toVue.spec.ts.snap +0 -16
- package/test/concepts/string-literal/constant.ts +0 -5
- package/test/concepts/string-literal/fixtures/escape.json +0 -4
- package/test/concepts/string-literal/fixtures/space.json +0 -4
- package/test/concepts/string-literal/fixtures/string.json +0 -4
- package/test/concepts/string-literal/toEmbeddedTS.spec.ts +0 -14
- package/test/concepts/string-literal/toJS.spec.ts +0 -14
- package/test/concepts/string-literal/toVue.spec.ts +0 -14
- package/test/concepts/view-element/fixtures/default-login.json +0 -333
- package/test/concepts/view-element/fixtures/with-role-auth.json +0 -148
- package/test/concepts/view-element/fixtures/with-table.json +0 -3473
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { config, login, App } from '../..';
|
|
2
|
+
|
|
3
|
+
export const baseURL = 'http://defaulttenant.qa-ci.lcap.group';
|
|
4
|
+
export const appId = 'f8bad074-0076-4003-bf99-176ededfff92'; // 需要访问的 appId
|
|
5
|
+
|
|
6
|
+
export async function getApp() {
|
|
7
|
+
config.baseURL = baseURL;
|
|
8
|
+
config.debug = false;
|
|
9
|
+
await login('admin', 'Admin@123456');
|
|
10
|
+
|
|
11
|
+
const app = new App({ id: appId });
|
|
12
|
+
// await app.loadAll();
|
|
13
|
+
|
|
14
|
+
return app;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
export function dateHash() {
|
|
18
|
+
return new Date().toJSON().slice(5, 16).replace(/[-:]/g, '');
|
|
19
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { expect } from 'chai';
|
|
2
|
+
import * as fs from 'fs-extra';
|
|
3
|
+
import * as path from 'path';
|
|
4
|
+
import * as nasl from '../..';
|
|
5
|
+
|
|
6
|
+
describe('connect-create-file', () => {
|
|
7
|
+
it('loadApp', async () => {
|
|
8
|
+
const filePath = path.join(__dirname, '../examples/uncreated.json');
|
|
9
|
+
await fs.removeSync(filePath);
|
|
10
|
+
await nasl.connect('file', filePath);
|
|
11
|
+
const app = await nasl.loadApp();
|
|
12
|
+
expect(app.id).to.equal('uncreated');
|
|
13
|
+
});
|
|
14
|
+
});
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { expect } from 'chai';
|
|
2
|
+
import * as path from 'path';
|
|
3
|
+
import * as nasl from '../..';
|
|
4
|
+
|
|
5
|
+
describe('connect-file', () => {
|
|
6
|
+
it('loadApp', async () => {
|
|
7
|
+
await nasl.connect('file', path.join(__dirname, '../examples/app1.json'));
|
|
8
|
+
const app = await nasl.loadApp();
|
|
9
|
+
expect(app.id).to.equal('app1');
|
|
10
|
+
});
|
|
11
|
+
|
|
12
|
+
it('batchAction', async () => {
|
|
13
|
+
await nasl.connect('file', path.join(__dirname, '../examples/app1.json'));
|
|
14
|
+
const app = await nasl.loadApp();
|
|
15
|
+
if (app.dataSources.length > 0) {
|
|
16
|
+
const oldLength = app.dataSources.length;
|
|
17
|
+
await app.dataSources[0].delete();
|
|
18
|
+
expect(app.dataSources.length).to.equal(oldLength - 1);
|
|
19
|
+
} else {
|
|
20
|
+
await app.addDataSource();
|
|
21
|
+
expect(app.dataSources.length).to.equal(1);
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
});
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { expect } from 'chai';
|
|
2
|
+
import * as path from 'path';
|
|
3
|
+
import * as nasl from '../..';
|
|
4
|
+
// import nodeNASLServer from '../../server/naslServer';
|
|
5
|
+
|
|
6
|
+
// describe('node-nasl-server', () => {
|
|
7
|
+
// it('loadNASLServer', async () => {
|
|
8
|
+
// await nasl.connect('file', path.join(__dirname, '../examples/app1.json'));
|
|
9
|
+
// const app = await nasl.loadApp();
|
|
10
|
+
// // console.log(app);
|
|
11
|
+
// // expect(app.id).to.equal('app1');
|
|
12
|
+
// await nodeNASLServer.openApp(app);
|
|
13
|
+
// });
|
|
14
|
+
// });
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { expect } from 'chai';
|
|
2
|
+
import * as nasl from '@nasl/index';
|
|
3
|
+
import { TranslatorState, createCompilerState, SourceMapItem } from '../../..';
|
|
4
|
+
|
|
5
|
+
describe('Assignment', () => {
|
|
6
|
+
it('toEmbeddedTS: withSourceMap', () => {
|
|
7
|
+
const item = new nasl.Assignment();
|
|
8
|
+
const state = createCompilerState(`/**
|
|
9
|
+
* { line: 2, charater: 4, offset: 48 }
|
|
10
|
+
**/`);
|
|
11
|
+
|
|
12
|
+
const code = item.toEmbeddedTS(state);
|
|
13
|
+
expect(code).to.equal(' = ;');
|
|
14
|
+
|
|
15
|
+
const info = state.sourceMap.values().next().value as SourceMapItem;
|
|
16
|
+
expect(info.range.end.line).to.equal(2);
|
|
17
|
+
expect(info.range.end.character).to.equal(8);
|
|
18
|
+
expect(info.range.end.offset).to.equal(52);
|
|
19
|
+
});
|
|
20
|
+
});
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { expect } from 'chai';
|
|
2
|
+
import * as nasl from '@nasl/index';
|
|
3
|
+
import { TranslatorState, createCompilerState, SourceMapItem } from '../../..';
|
|
4
|
+
|
|
5
|
+
describe('CallLogic', () => {
|
|
6
|
+
it('toEmbeddedTS: withSourceMap', () => {
|
|
7
|
+
const item = new nasl.CallLogic();
|
|
8
|
+
const state = createCompilerState(`/**
|
|
9
|
+
* { line: 2, charater: 4, offset: 48 }
|
|
10
|
+
**/`);
|
|
11
|
+
|
|
12
|
+
const code = item.toEmbeddedTS(state);
|
|
13
|
+
expect(code).to.equal(' = ;');
|
|
14
|
+
|
|
15
|
+
const info = state.sourceMap.values().next().value as SourceMapItem;
|
|
16
|
+
expect(info.range.end.line).to.equal(2);
|
|
17
|
+
expect(info.range.end.character).to.equal(8);
|
|
18
|
+
expect(info.range.end.offset).to.equal(52);
|
|
19
|
+
});
|
|
20
|
+
|
|
21
|
+
// it('设置关联属性', () => {});
|
|
22
|
+
});
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { expect } from 'chai';
|
|
2
|
+
import * as nasl from '@nasl/index';
|
|
3
|
+
import { TranslatorState, createCompilerState, SourceMapItem } from '../../..';
|
|
4
|
+
|
|
5
|
+
describe('StringLiteral', () => {
|
|
6
|
+
it('toJS', () => {
|
|
7
|
+
const item = new nasl.StringLiteral({
|
|
8
|
+
value: '文本',
|
|
9
|
+
});
|
|
10
|
+
|
|
11
|
+
expect(item.toJS()).to.equal("'文本'");
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
it('toJS: quote', () => {
|
|
15
|
+
const item = new nasl.StringLiteral({
|
|
16
|
+
value: `"There's a piece of text with quotes."`,
|
|
17
|
+
});
|
|
18
|
+
|
|
19
|
+
expect(item.toJS()).to.equal(`\`"There's a piece of text with quotes."\``);
|
|
20
|
+
|
|
21
|
+
const item2 = new nasl.StringLiteral({
|
|
22
|
+
value: 'Markdown: `code`',
|
|
23
|
+
});
|
|
24
|
+
expect(item2.toJS()).to.equal("'Markdown: `code`'");
|
|
25
|
+
});
|
|
26
|
+
|
|
27
|
+
it('toJS: withSourceMap', () => {
|
|
28
|
+
const item = new nasl.StringLiteral({
|
|
29
|
+
value: '文本',
|
|
30
|
+
});
|
|
31
|
+
const state = createCompilerState(`/**
|
|
32
|
+
* { line: 2, charater: 4, offset: 48 }
|
|
33
|
+
**/`);
|
|
34
|
+
|
|
35
|
+
const code = item.toEmbeddedTS(state);
|
|
36
|
+
expect(code).to.equal("'文本'");
|
|
37
|
+
|
|
38
|
+
const info = state.sourceMap.values().next().value as SourceMapItem;
|
|
39
|
+
expect(info.range.end.line).to.equal(2);
|
|
40
|
+
expect(info.range.end.character).to.equal(8);
|
|
41
|
+
expect(info.range.end.offset).to.equal(52);
|
|
42
|
+
});
|
|
43
|
+
|
|
44
|
+
it('toEmbeddedTS: withSourceMap', () => {
|
|
45
|
+
const item = new nasl.StringLiteral({
|
|
46
|
+
value: '文本',
|
|
47
|
+
});
|
|
48
|
+
const state = createCompilerState(`/**
|
|
49
|
+
* { line: 2, charater: 4, offset: 48 }
|
|
50
|
+
**/`);
|
|
51
|
+
|
|
52
|
+
const code = item.toEmbeddedTS(state);
|
|
53
|
+
expect(code).to.equal("'文本'");
|
|
54
|
+
|
|
55
|
+
const info = state.sourceMap.values().next().value as SourceMapItem;
|
|
56
|
+
expect(info.range.end.line).to.equal(2);
|
|
57
|
+
expect(info.range.end.character).to.equal(8);
|
|
58
|
+
expect(info.range.end.offset).to.equal(52);
|
|
59
|
+
});
|
|
60
|
+
});
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import * as nasl from '@nasl/index';
|
|
2
|
+
|
|
3
|
+
describe('new LogicItem', () => {
|
|
4
|
+
it('Start', () => {
|
|
5
|
+
const item = new nasl.Start();
|
|
6
|
+
console.log(item.toJSON());
|
|
7
|
+
});
|
|
8
|
+
|
|
9
|
+
it('Assignment', () => {
|
|
10
|
+
const item = new nasl.Assignment();
|
|
11
|
+
console.log(item.toJSON());
|
|
12
|
+
});
|
|
13
|
+
});
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { expect } from 'chai';
|
|
2
|
+
import { View } from '@nasl/index';
|
|
3
|
+
import * as faker from 'faker';
|
|
4
|
+
|
|
5
|
+
describe('BaseNode', () => {
|
|
6
|
+
it('deepPick', () => {
|
|
7
|
+
// const page = new Page({
|
|
8
|
+
// rootView: new View({
|
|
9
|
+
// children: [new View(), new View()],
|
|
10
|
+
// }),
|
|
11
|
+
// });
|
|
12
|
+
// const result = page.toJSON();
|
|
13
|
+
// result.id = faker.random.uuid();
|
|
14
|
+
// result.rootView.id = faker.random.uuid();
|
|
15
|
+
// result.rootView.children[0] = faker.random.uuid();
|
|
16
|
+
// result.rootView.children[1] = faker.random.uuid();
|
|
17
|
+
// page.deepPick(result, ['id']);
|
|
18
|
+
// expect(page.id).to.equal(result.id);
|
|
19
|
+
// expect(page.rootView.id).to.equal(result.rootView.id);
|
|
20
|
+
// expect(page.rootView.children[0].id).to.equal(result.rootView.children[0].id);
|
|
21
|
+
// expect(page.rootView.children[1].id).to.equal(result.rootView.children[1].id);
|
|
22
|
+
});
|
|
23
|
+
});
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { expect } from 'chai';
|
|
2
|
+
import { config, login } from '@nasl/index';
|
|
3
|
+
|
|
4
|
+
describe('config', () => {
|
|
5
|
+
it('login successfully', async () => {
|
|
6
|
+
config.baseURL = 'http://defaulttenant.qa-ci.lcap.group';
|
|
7
|
+
const cookie = await login('admin', 'Admin@123456');
|
|
8
|
+
expect(cookie).to.equal('28db2e05f7e54c3b90a9e41e5cfe2318');
|
|
9
|
+
});
|
|
10
|
+
});
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
// // import { Block } from '../../../types';
|
|
2
|
+
// import * as fs from 'fs-extra';
|
|
3
|
+
// import * as path from 'path';
|
|
4
|
+
|
|
5
|
+
// const DIRNAME = __dirname.replace('/out/', '/src/');
|
|
6
|
+
|
|
7
|
+
// describe('Block', () => {
|
|
8
|
+
// it('parseAll', () => {
|
|
9
|
+
// const template = fs.readFileSync(path.join(DIRNAME, 'example.dashboard.html'), 'utf8');
|
|
10
|
+
// const block = new Block({ template });
|
|
11
|
+
// block.parseAll();
|
|
12
|
+
|
|
13
|
+
// const obj = { aaa: block.$html };
|
|
14
|
+
// });
|
|
15
|
+
// });
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { expect } from 'chai';
|
|
2
|
+
import { ViewElement } from '@nasl/index';
|
|
3
|
+
|
|
4
|
+
describe('Block', () => {
|
|
5
|
+
describe('static parse', () => {
|
|
6
|
+
it('简单标签', () => {
|
|
7
|
+
const source = '<u-input size="normal" :checked="var1" v-model="var2" @change="onChange"></u-input>';
|
|
8
|
+
const element = ViewElement.parse(source);
|
|
9
|
+
const result = element?.toVue();
|
|
10
|
+
console.info(result);
|
|
11
|
+
expect(source).to.equal(result);
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
it('嵌套标签', () => {
|
|
15
|
+
const source = `<u-linear-layout direction="vertical">
|
|
16
|
+
<u-input size="normal" :checked="var1" v-model="var2" @change="onChange"></u-input>
|
|
17
|
+
</u-linear-layout>`;
|
|
18
|
+
const element = ViewElement.parse(source);
|
|
19
|
+
const result = element?.toVue();
|
|
20
|
+
console.info(result);
|
|
21
|
+
expect(source).to.equal(result);
|
|
22
|
+
});
|
|
23
|
+
|
|
24
|
+
it('去除 text 类型', () => {
|
|
25
|
+
const source = `<u-linear-layout direction="vertical">这是一行文本</u-linear-layout>`;
|
|
26
|
+
const element = ViewElement.parse(source);
|
|
27
|
+
const result = element?.toVue();
|
|
28
|
+
console.info(result);
|
|
29
|
+
expect(result).to.equal(`<u-linear-layout direction="vertical">
|
|
30
|
+
<u-text text="这是一行文本"></u-text>
|
|
31
|
+
</u-linear-layout>`);
|
|
32
|
+
});
|
|
33
|
+
|
|
34
|
+
it('create', () => {
|
|
35
|
+
const source = '<u-input size="normal" :checked="var1" v-model="var2" @change="onChange"></u-input>';
|
|
36
|
+
const element = ViewElement.parse(source);
|
|
37
|
+
// element.assign({
|
|
38
|
+
// parentId: '5666dc63-0a99-4b96-840f-6387ecf08c0b',
|
|
39
|
+
// });
|
|
40
|
+
// element.create().catch((e: any) => {
|
|
41
|
+
// console.log(e);
|
|
42
|
+
// });
|
|
43
|
+
});
|
|
44
|
+
});
|
|
45
|
+
});
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
<l-dashboard>
|
|
2
|
+
<template #head>
|
|
3
|
+
<u-navbar>
|
|
4
|
+
<template #left>
|
|
5
|
+
<s-logo>演示</s-logo>
|
|
6
|
+
</template>
|
|
7
|
+
<template #default>
|
|
8
|
+
<u-navbar-item>Item 1</u-navbar-item>
|
|
9
|
+
<u-navbar-item>Item 2</u-navbar-item>
|
|
10
|
+
</template>
|
|
11
|
+
<template #right>
|
|
12
|
+
<u-navbar-dropdown style="margin-right: 10px;" v-if="userInfo">
|
|
13
|
+
<template #title>
|
|
14
|
+
<u-avatar shape="circle"></u-avatar>
|
|
15
|
+
<span :class="$style.username">{{ userInfo.UserName }}</span>
|
|
16
|
+
</template>
|
|
17
|
+
<template #default>
|
|
18
|
+
<u-navbar-menu>
|
|
19
|
+
<u-navbar-menu-item to="/account/center">个人中心</u-navbar-menu-item>
|
|
20
|
+
<u-navbar-menu-item @click="logout">安全退出</u-navbar-menu-item>
|
|
21
|
+
</u-navbar-menu>
|
|
22
|
+
</template>
|
|
23
|
+
</u-navbar-dropdown>
|
|
24
|
+
<template v-else>
|
|
25
|
+
<u-navbar>
|
|
26
|
+
<u-navbar-item href="/login">登录</u-navbar-item>
|
|
27
|
+
</u-navbar>
|
|
28
|
+
</template>
|
|
29
|
+
</template>
|
|
30
|
+
</u-navbar>
|
|
31
|
+
</template>
|
|
32
|
+
<template #side>
|
|
33
|
+
<u-sidebar slot="side">
|
|
34
|
+
<u-sidebar-item to="/overview">总览</u-sidebar-item>
|
|
35
|
+
<u-sidebar-item>Item 2</u-sidebar-item>
|
|
36
|
+
</u-sidebar>
|
|
37
|
+
</template>
|
|
38
|
+
<template #default>
|
|
39
|
+
<u-linear-layout direction="vertical" :class="$style.main">
|
|
40
|
+
<u-crumb auto></u-crumb>
|
|
41
|
+
<slot>
|
|
42
|
+
<router-view></router-view>
|
|
43
|
+
</slot>
|
|
44
|
+
</u-linear-layout>
|
|
45
|
+
</template>
|
|
46
|
+
</l-dashboard>
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
<u-linear-layout direction="vertical">
|
|
2
|
+
<div>view1页面的内容</div>
|
|
3
|
+
<router-view></router-view>
|
|
4
|
+
<u-linear-layout direction="vertical">
|
|
5
|
+
<u-linear-layout justify="space-between">
|
|
6
|
+
<u-form layout="inline" label-size="auto">
|
|
7
|
+
<u-form-item label="name">
|
|
8
|
+
<u-input v-model="query.name" placeholder="请输入name"></u-input>
|
|
9
|
+
</u-form-item>
|
|
10
|
+
<u-form-item label="serial">
|
|
11
|
+
<u-input v-model="query.serial" placeholder="请输入serial"></u-input>
|
|
12
|
+
</u-form-item>
|
|
13
|
+
<u-form-item>
|
|
14
|
+
<u-button color="primary" @click="$refs['tableView'].reload($event)">查询</u-button>
|
|
15
|
+
</u-form-item>
|
|
16
|
+
</u-form>
|
|
17
|
+
<u-button color="primary" @click="create($event)">创建</u-button>
|
|
18
|
+
</u-linear-layout>
|
|
19
|
+
<u-table-view ref="tableView" :data-source="load" pageable remote-paging data-schema="#/zystest3_backend/entities/Product">
|
|
20
|
+
<u-table-view-column type="index" width="60" title="序号"></u-table-view-column>
|
|
21
|
+
<u-table-view-column title="name" field="name">
|
|
22
|
+
<template #cell="current">
|
|
23
|
+
<u-linear-layout gap="small">
|
|
24
|
+
<u-text>{{ current.item.name }}</u-text>
|
|
25
|
+
</u-linear-layout>
|
|
26
|
+
</template>
|
|
27
|
+
</u-table-view-column>
|
|
28
|
+
<u-table-view-column title="serial" field="serial">
|
|
29
|
+
<template #cell="current">
|
|
30
|
+
<u-linear-layout gap="small">
|
|
31
|
+
<u-text>{{ current.item.serial }}</u-text>
|
|
32
|
+
</u-linear-layout>
|
|
33
|
+
</template>
|
|
34
|
+
</u-table-view-column>
|
|
35
|
+
<u-table-view-column title="操作">
|
|
36
|
+
<template #cell="current">
|
|
37
|
+
<u-linear-layout gap="small">
|
|
38
|
+
<u-link @click="modify($event, current)">修改</u-link>
|
|
39
|
+
<u-link @click="remove($event, current)">删除</u-link>
|
|
40
|
+
</u-linear-layout>
|
|
41
|
+
</template>
|
|
42
|
+
</u-table-view-column>
|
|
43
|
+
</u-table-view>
|
|
44
|
+
<u-modal ref="saveModal">
|
|
45
|
+
<template #title>
|
|
46
|
+
<div>{{ input.id ? '修改' : '创建' }}</div>
|
|
47
|
+
</template>
|
|
48
|
+
<template #body>
|
|
49
|
+
<u-form>
|
|
50
|
+
<u-form-item label="name">
|
|
51
|
+
<u-input v-model="input.name" placeholder="请输入name"></u-input>
|
|
52
|
+
</u-form-item>
|
|
53
|
+
<u-form-item label="serial">
|
|
54
|
+
<u-input v-model="input.serial" placeholder="请输入serial"></u-input>
|
|
55
|
+
</u-form-item>
|
|
56
|
+
</u-form>
|
|
57
|
+
</template>
|
|
58
|
+
<template #foot>
|
|
59
|
+
<u-button color="primary" @click="submit()">{{ input.id ? '提交修改' : '立即创建' }}</u-button>
|
|
60
|
+
</template>
|
|
61
|
+
</u-modal>
|
|
62
|
+
</u-linear-layout>
|
|
63
|
+
</u-linear-layout>
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { ViewElement } from '@nasl/index';
|
|
2
|
+
|
|
3
|
+
describe('Block', () => {
|
|
4
|
+
describe('static parse', () => {
|
|
5
|
+
it('简单标签', () => {
|
|
6
|
+
const source = `<l-dashboard>
|
|
7
|
+
<template #head>
|
|
8
|
+
<u-navbar>
|
|
9
|
+
<template #left>
|
|
10
|
+
<s-logo>演示</s-logo>
|
|
11
|
+
</template>
|
|
12
|
+
<template #default>
|
|
13
|
+
<u-navbar-item>Item 1</u-navbar-item>
|
|
14
|
+
<u-navbar-item>Item 2</u-navbar-item>
|
|
15
|
+
</template>
|
|
16
|
+
<template #right>
|
|
17
|
+
<!-- <div :class="$style.item">
|
|
18
|
+
<u-badge corner dot :value="noticeCount">
|
|
19
|
+
<u-link :class="$style.link"
|
|
20
|
+
:active="noticeActive"
|
|
21
|
+
to="/notice"
|
|
22
|
+
title="通知">
|
|
23
|
+
<i-icon name="notice" style="display: inline-block; vertical-align: top; font-size: 16px;"></i-icon>
|
|
24
|
+
</u-link>
|
|
25
|
+
</u-badge>
|
|
26
|
+
</div> -->
|
|
27
|
+
<u-navbar-dropdown style="margin-right: 10px;" v-if="userInfo">
|
|
28
|
+
<template #title>
|
|
29
|
+
<u-avatar shape="circle"></u-avatar>
|
|
30
|
+
<span style="display: inline-block; vertical-align: top; margin-left: 10px; margin-right: 10px; color: white;">{{ userInfo.UserName }}</span>
|
|
31
|
+
</template>
|
|
32
|
+
<template #default>
|
|
33
|
+
<u-navbar-menu>
|
|
34
|
+
<u-navbar-menu-item to="/account/center">个人中心</u-navbar-menu-item>
|
|
35
|
+
<u-navbar-menu-item @click="logout">安全退出</u-navbar-menu-item>
|
|
36
|
+
</u-navbar-menu>
|
|
37
|
+
</template>
|
|
38
|
+
</u-navbar-dropdown>
|
|
39
|
+
<template v-else>
|
|
40
|
+
<u-navbar>
|
|
41
|
+
<u-navbar-item href="/login">登录</u-navbar-item>
|
|
42
|
+
</u-navbar>
|
|
43
|
+
</template>
|
|
44
|
+
</template>
|
|
45
|
+
</u-navbar>
|
|
46
|
+
</template>
|
|
47
|
+
<template #side>
|
|
48
|
+
<u-sidebar>
|
|
49
|
+
<u-sidebar-item to="/overview">总览</u-sidebar-item>
|
|
50
|
+
<u-sidebar-item>Item 2</u-sidebar-item>
|
|
51
|
+
</u-sidebar>
|
|
52
|
+
</template>
|
|
53
|
+
<template #default>
|
|
54
|
+
<u-linear-layout direction="vertical" :class="$style.main">
|
|
55
|
+
<u-crumb auto></u-crumb>
|
|
56
|
+
<slot><router-view></router-view></slot>
|
|
57
|
+
</u-linear-layout>
|
|
58
|
+
</template>
|
|
59
|
+
</l-dashboard>
|
|
60
|
+
`;
|
|
61
|
+
const element = ViewElement.parse(source);
|
|
62
|
+
const result = element?.toVue({ aslIdAttr: true });
|
|
63
|
+
console.info(result);
|
|
64
|
+
});
|
|
65
|
+
});
|
|
66
|
+
});
|
package/src/translator/index.ts
CHANGED
|
@@ -1,3 +1,137 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import { BaseNode } from '../common/BaseNode';
|
|
2
|
+
import { EventEmitter } from '../common/EventEmitter';
|
|
3
|
+
import { Range, Position, uinteger } from './lsp';
|
|
4
|
+
|
|
5
|
+
export interface SourceMapItem {
|
|
6
|
+
code?: string;
|
|
7
|
+
/**
|
|
8
|
+
* LSP 的 Range
|
|
9
|
+
*/
|
|
10
|
+
range?: Range;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
export type SourceMap = Map<BaseNode, SourceMapItem>;
|
|
14
|
+
|
|
15
|
+
export interface TranslatorState {
|
|
16
|
+
position?: Position;
|
|
17
|
+
tabSize?: number;
|
|
18
|
+
inline?: boolean;
|
|
19
|
+
preferQuote?: 'single' | 'double' | 'backtick';
|
|
20
|
+
sourceMap?: SourceMap;
|
|
21
|
+
finalCode?: boolean;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
export function lsp2tspNumber(num: uinteger) {
|
|
25
|
+
return num + 1;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export const indent = (tabSize: number) => ' '.repeat(tabSize * 4);
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* 创建编译器状态
|
|
32
|
+
* @param before
|
|
33
|
+
* @returns
|
|
34
|
+
*/
|
|
35
|
+
export function createCompilerState(startCode: string = '', options?: Partial<TranslatorState>) {
|
|
36
|
+
const state: TranslatorState = {
|
|
37
|
+
position: {
|
|
38
|
+
line: 0,
|
|
39
|
+
character: 0,
|
|
40
|
+
offset: 0,
|
|
41
|
+
},
|
|
42
|
+
tabSize: 0,
|
|
43
|
+
...options,
|
|
44
|
+
};
|
|
45
|
+
if (!state.sourceMap) state.sourceMap = new Map<BaseNode, SourceMapItem>();
|
|
46
|
+
|
|
47
|
+
return shiftState(state, startCode);
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
/**
|
|
51
|
+
* 根据代码移动位置
|
|
52
|
+
* @param pos
|
|
53
|
+
* @param code
|
|
54
|
+
*/
|
|
55
|
+
export function shiftPosition(pos: Position, code: string = ''): Position {
|
|
56
|
+
const res = { ...pos };
|
|
57
|
+
if (code) {
|
|
58
|
+
const arr = code.split('\n');
|
|
59
|
+
res.offset += code.length;
|
|
60
|
+
res.line += arr.length - 1;
|
|
61
|
+
if (arr.length === 1) res.character += arr[arr.length - 1].length;
|
|
62
|
+
else res.character = arr[arr.length - 1].length;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
return Object.freeze(res);
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
/**
|
|
69
|
+
* 根据代码移动状态
|
|
70
|
+
* @param state
|
|
71
|
+
* @param code
|
|
72
|
+
*/
|
|
73
|
+
export function shiftState(state: TranslatorState, code?: string, options?: Partial<TranslatorState>): TranslatorState {
|
|
74
|
+
state = { ...state };
|
|
75
|
+
state.position = shiftPosition(state.position, code);
|
|
76
|
+
Object.assign(state, options); // 优先 options
|
|
77
|
+
return Object.freeze(state);
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
/**
|
|
81
|
+
* @decorator
|
|
82
|
+
*/
|
|
83
|
+
export function withSourceMap() {
|
|
84
|
+
return function handleAction(target: any, key: string | number | symbol, descriptor: PropertyDescriptor) {
|
|
85
|
+
const oldMethod = descriptor.value;
|
|
86
|
+
|
|
87
|
+
descriptor.value = function (this: BaseNode, state?: TranslatorState, ...args: any[]) {
|
|
88
|
+
// 重新生成ts代码就先把类型清除掉
|
|
89
|
+
// 注意排查错误的时候,调用了这个方法,就会把节点上缓存的__TypeAnnotation清除
|
|
90
|
+
try {
|
|
91
|
+
this.__isCorrectTypeAnnotation = false;
|
|
92
|
+
} catch (err) {}
|
|
93
|
+
if (!state) {
|
|
94
|
+
// 没有状态不生成 SourceMap
|
|
95
|
+
return oldMethod.call(this, state, ...args);
|
|
96
|
+
}
|
|
97
|
+
// state = Object.freeze(Object.assign({
|
|
98
|
+
// position: { line: 0, character: 0, offset: 0 },
|
|
99
|
+
// tabSize: 0,
|
|
100
|
+
// }, state));
|
|
101
|
+
|
|
102
|
+
let before: string = '';
|
|
103
|
+
if (!state.inline) {
|
|
104
|
+
before = indent(state?.tabSize || 0);
|
|
105
|
+
state = shiftState(state, before);
|
|
106
|
+
} else {
|
|
107
|
+
state = shiftState(state, before, {
|
|
108
|
+
inline: undefined,
|
|
109
|
+
});
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
// 调用真实方法, 可能有剩余参数
|
|
113
|
+
const code = oldMethod.call(this, state, ...args);
|
|
114
|
+
|
|
115
|
+
state.sourceMap?.set(
|
|
116
|
+
this,
|
|
117
|
+
Object.freeze({
|
|
118
|
+
code,
|
|
119
|
+
range: {
|
|
120
|
+
start: state.position,
|
|
121
|
+
end: shiftPosition(state.position, code),
|
|
122
|
+
},
|
|
123
|
+
})
|
|
124
|
+
);
|
|
125
|
+
|
|
126
|
+
return before + code;
|
|
127
|
+
};
|
|
128
|
+
|
|
129
|
+
return descriptor;
|
|
130
|
+
};
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
/**
|
|
134
|
+
* 因为 naslServer 和 ts-worker 在一起,不能集成在 nasl 包中,
|
|
135
|
+
* 需要一个发布订阅器做个中介通信。
|
|
136
|
+
*/
|
|
137
|
+
export const embeddedTSEmitter = new EventEmitter();
|