@lcap/nasl 3.2.0-beta.3 → 3.3.0-alpha
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/utils.js +4 -0
- package/out/automate/engine/utils.js.map +1 -1
- package/out/automate/upgrader/2.20.js +1 -1
- package/out/automate/upgrader/2.20.js.map +1 -1
- package/out/bak/translator.js +11 -15
- package/out/bak/translator.js.map +1 -1
- package/out/breakpoint/generator/AfterStartNode.js +3 -1
- package/out/breakpoint/generator/AfterStartNode.js.map +1 -1
- package/out/breakpoint/generator/BeforeEndNode.js.map +1 -1
- package/out/breakpoint/generator/BreakpointNode.d.ts +1 -0
- package/out/breakpoint/generator/BreakpointNode.js +48 -15
- package/out/breakpoint/generator/BreakpointNode.js.map +1 -1
- package/out/breakpoint/generator/CallbackNode.d.ts +4 -0
- package/out/breakpoint/generator/CallbackNode.js +22 -0
- package/out/breakpoint/generator/CallbackNode.js.map +1 -0
- package/out/breakpoint/generator/FragmentNode.d.ts +4 -0
- package/out/breakpoint/generator/FragmentNode.js +18 -0
- package/out/breakpoint/generator/FragmentNode.js.map +1 -0
- package/out/breakpoint/generator/index.js +25 -4
- package/out/breakpoint/generator/index.js.map +1 -1
- package/out/breakpoint/shared/constants.d.ts +3 -0
- package/out/breakpoint/shared/constants.js +6 -1
- package/out/breakpoint/shared/constants.js.map +1 -1
- package/out/breakpoint/shared/operations.js.map +1 -1
- package/out/breakpoint/shared/socket.d.ts +1 -1
- package/out/breakpoint/shared/socket.js +36 -7
- package/out/breakpoint/shared/socket.js.map +1 -1
- package/out/breakpoint/shared/utils.d.ts +2 -0
- package/out/breakpoint/shared/utils.js +15 -2
- package/out/breakpoint/shared/utils.js.map +1 -1
- package/out/breakpoint/store/core.d.ts +48 -2
- package/out/breakpoint/store/core.js +58 -32
- package/out/breakpoint/store/core.js.map +1 -1
- package/out/breakpoint/store/dock.js +1 -1
- package/out/breakpoint/store/dock.js.map +1 -1
- package/out/common/BaseNode.d.ts +2 -2
- package/out/common/BaseNode.js +110 -53
- package/out/common/BaseNode.js.map +1 -1
- package/out/common/Command.d.ts +13 -2
- package/out/common/Command.js +37 -9
- package/out/common/Command.js.map +1 -1
- package/out/common/EventEmitter.js.map +1 -1
- package/out/common/Messager.d.ts +3 -3
- package/out/common/Messager.js +6 -7
- package/out/common/Messager.js.map +1 -1
- package/out/common/asyncFuncMap.js.map +1 -1
- package/out/concepts/Abort__.js +6 -5
- package/out/concepts/Abort__.js.map +1 -1
- package/out/concepts/Anchor__.d.ts +4 -3
- package/out/concepts/Anchor__.js +24 -7
- package/out/concepts/Anchor__.js.map +1 -1
- package/out/concepts/AnonymousFunction__.d.ts +22 -21
- package/out/concepts/AnonymousFunction__.js +48 -22
- package/out/concepts/AnonymousFunction__.js.map +1 -1
- package/out/concepts/App__.d.ts +421 -247
- package/out/concepts/App__.js +288 -54
- package/out/concepts/App__.js.map +1 -1
- package/out/concepts/Argument__.d.ts +4 -3
- package/out/concepts/Argument__.js +42 -11
- package/out/concepts/Argument__.js.map +1 -1
- package/out/concepts/Assignee__.d.ts +45 -45
- package/out/concepts/Assignee__.js +15 -15
- package/out/concepts/Assignee__.js.map +1 -1
- package/out/concepts/AssignmentLine__.js +6 -5
- package/out/concepts/AssignmentLine__.js.map +1 -1
- package/out/concepts/Assignment__.d.ts +7 -6
- package/out/concepts/Assignment__.js +41 -23
- package/out/concepts/Assignment__.js.map +1 -1
- package/out/concepts/Attribute__.d.ts +3 -3
- package/out/concepts/Attribute__.js +8 -7
- package/out/concepts/Attribute__.js.map +1 -1
- package/out/concepts/AuthInterface__.js +4 -3
- package/out/concepts/AuthInterface__.js.map +1 -1
- package/out/concepts/AuthLogicForCallInterface__.d.ts +15 -15
- package/out/concepts/AuthLogicForCallInterface__.js +46 -27
- package/out/concepts/AuthLogicForCallInterface__.js.map +1 -1
- package/out/concepts/AuthLogic__.js +27 -13
- package/out/concepts/AuthLogic__.js.map +1 -1
- package/out/concepts/BackendVariable__.d.ts +5 -5
- package/out/concepts/BackendVariable__.js +23 -26
- package/out/concepts/BackendVariable__.js.map +1 -1
- package/out/concepts/Backend__.d.ts +18 -18
- package/out/concepts/Backend__.js +13 -13
- package/out/concepts/Backend__.js.map +1 -1
- package/out/concepts/BatchAssignment__.d.ts +34 -33
- package/out/concepts/BatchAssignment__.js +83 -43
- package/out/concepts/BatchAssignment__.js.map +1 -1
- package/out/concepts/BinaryExpression__.d.ts +7 -6
- package/out/concepts/BinaryExpression__.js +60 -24
- package/out/concepts/BinaryExpression__.js.map +1 -1
- package/out/concepts/BindAttribute__.d.ts +37 -37
- package/out/concepts/BindAttribute__.js +102 -58
- package/out/concepts/BindAttribute__.js.map +1 -1
- package/out/concepts/BindDirective__.d.ts +13 -13
- package/out/concepts/BindDirective__.js +23 -21
- package/out/concepts/BindDirective__.js.map +1 -1
- package/out/concepts/BindEvent__.d.ts +28 -28
- package/out/concepts/BindEvent__.js +150 -57
- package/out/concepts/BindEvent__.js.map +1 -1
- package/out/concepts/BindStyle__.d.ts +14 -15
- package/out/concepts/BindStyle__.js +16 -16
- package/out/concepts/BindStyle__.js.map +1 -1
- package/out/concepts/BooleanLiteral__.d.ts +1 -0
- package/out/concepts/BooleanLiteral__.js +12 -5
- package/out/concepts/BooleanLiteral__.js.map +1 -1
- package/out/concepts/CallAuthInterface__.d.ts +15 -15
- package/out/concepts/CallAuthInterface__.js +23 -22
- package/out/concepts/CallAuthInterface__.js.map +1 -1
- package/out/concepts/CallConnector__.d.ts +11 -9
- package/out/concepts/CallConnector__.js +79 -36
- package/out/concepts/CallConnector__.js.map +1 -1
- package/out/concepts/CallFunction__.d.ts +17 -16
- package/out/concepts/CallFunction__.js +95 -63
- package/out/concepts/CallFunction__.js.map +1 -1
- package/out/concepts/CallInterface__.d.ts +9 -8
- package/out/concepts/CallInterface__.js +109 -80
- package/out/concepts/CallInterface__.js.map +1 -1
- package/out/concepts/CallLogic__.d.ts +24 -20
- package/out/concepts/CallLogic__.js +209 -162
- package/out/concepts/CallLogic__.js.map +1 -1
- package/out/concepts/CallQueryComponent__.d.ts +51 -51
- package/out/concepts/CallQueryComponent__.js +66 -63
- package/out/concepts/CallQueryComponent__.js.map +1 -1
- package/out/concepts/Comment__.d.ts +1 -0
- package/out/concepts/Comment__.js +13 -6
- package/out/concepts/Comment__.js.map +1 -1
- package/out/concepts/CompletionProperty__.d.ts +3 -3
- package/out/concepts/CompletionProperty__.js +16 -8
- package/out/concepts/CompletionProperty__.js.map +1 -1
- package/out/concepts/ConfigGroup__.d.ts +15 -15
- package/out/concepts/ConfigGroup__.js +9 -9
- package/out/concepts/ConfigGroup__.js.map +1 -1
- package/out/concepts/ConfigPropertyValue__.js +4 -3
- package/out/concepts/ConfigPropertyValue__.js.map +1 -1
- package/out/concepts/ConfigProperty__.d.ts +15 -15
- package/out/concepts/ConfigProperty__.js +10 -10
- package/out/concepts/ConfigProperty__.js.map +1 -1
- package/out/concepts/Configuration__.d.ts +15 -15
- package/out/concepts/Configuration__.js +9 -9
- package/out/concepts/Configuration__.js.map +1 -1
- package/out/concepts/Connection__.d.ts +166 -0
- package/out/concepts/Connection__.js +332 -0
- package/out/concepts/Connection__.js.map +1 -0
- package/out/concepts/ConnectorTrigger__.js +4 -3
- package/out/concepts/ConnectorTrigger__.js.map +1 -1
- package/out/concepts/Connector__.d.ts +66 -66
- package/out/concepts/Connector__.js +16 -15
- package/out/concepts/Connector__.js.map +1 -1
- package/out/concepts/Constant__.d.ts +3 -3
- package/out/concepts/Constant__.js +8 -7
- package/out/concepts/Constant__.js.map +1 -1
- package/out/concepts/DataElement__.d.ts +3 -3
- package/out/concepts/DataElement__.js +6 -5
- package/out/concepts/DataElement__.js.map +1 -1
- package/out/concepts/DataSource__.d.ts +15 -15
- package/out/concepts/DataSource__.js +55 -39
- package/out/concepts/DataSource__.js.map +1 -1
- package/out/concepts/DatabaseTypeAnnotation__.js +4 -3
- package/out/concepts/DatabaseTypeAnnotation__.js.map +1 -1
- package/out/concepts/Destination__.d.ts +12 -11
- package/out/concepts/Destination__.js +93 -36
- package/out/concepts/Destination__.js.map +1 -1
- package/out/concepts/End__.js +15 -13
- package/out/concepts/End__.js.map +1 -1
- package/out/concepts/EntityIndex__.d.ts +1 -1
- package/out/concepts/EntityIndex__.js +6 -5
- package/out/concepts/EntityIndex__.js.map +1 -1
- package/out/concepts/EntityProperty__.d.ts +8 -7
- package/out/concepts/EntityProperty__.js +39 -24
- package/out/concepts/EntityProperty__.js.map +1 -1
- package/out/concepts/Entity__.d.ts +31 -30
- package/out/concepts/Entity__.js +40 -16
- package/out/concepts/Entity__.js.map +1 -1
- package/out/concepts/EnumItem__.d.ts +1 -0
- package/out/concepts/EnumItem__.js +12 -5
- package/out/concepts/EnumItem__.js.map +1 -1
- package/out/concepts/Enum__.d.ts +9 -8
- package/out/concepts/Enum__.js +24 -11
- package/out/concepts/Enum__.js.map +1 -1
- package/out/concepts/Event__.d.ts +15 -15
- package/out/concepts/Event__.js +6 -5
- package/out/concepts/Event__.js.map +1 -1
- package/out/concepts/ExternalDestination__.d.ts +6 -6
- package/out/concepts/ExternalDestination__.js +12 -11
- package/out/concepts/ExternalDestination__.js.map +1 -1
- package/out/concepts/ForEachStatement__.d.ts +25 -24
- package/out/concepts/ForEachStatement__.js +101 -36
- package/out/concepts/ForEachStatement__.js.map +1 -1
- package/out/concepts/FrontendLibrary__.d.ts +30 -30
- package/out/concepts/FrontendLibrary__.js +12 -13
- package/out/concepts/FrontendLibrary__.js.map +1 -1
- package/out/concepts/FrontendVariable__.js +4 -3
- package/out/concepts/FrontendVariable__.js.map +1 -1
- package/out/concepts/Frontend__.d.ts +64 -65
- package/out/concepts/Frontend__.js +23 -27
- package/out/concepts/Frontend__.js.map +1 -1
- package/out/concepts/Function__.d.ts +64 -63
- package/out/concepts/Function__.js +49 -21
- package/out/concepts/Function__.js.map +1 -1
- package/out/concepts/Identifier__.js +37 -31
- package/out/concepts/Identifier__.js.map +1 -1
- package/out/concepts/IfStatement__.d.ts +20 -19
- package/out/concepts/IfStatement__.js +64 -34
- package/out/concepts/IfStatement__.js.map +1 -1
- package/out/concepts/Integration__.d.ts +3 -3
- package/out/concepts/Integration__.js +8 -7
- package/out/concepts/Integration__.js.map +1 -1
- package/out/concepts/InterfaceParam__.d.ts +3 -3
- package/out/concepts/InterfaceParam__.js +7 -6
- package/out/concepts/InterfaceParam__.js.map +1 -1
- package/out/concepts/Interface__.d.ts +33 -33
- package/out/concepts/Interface__.js +19 -20
- package/out/concepts/Interface__.js.map +1 -1
- package/out/concepts/JSBlock__.d.ts +1 -0
- package/out/concepts/JSBlock__.js +12 -5
- package/out/concepts/JSBlock__.js.map +1 -1
- package/out/concepts/JavaLogic__.js +10 -9
- package/out/concepts/JavaLogic__.js.map +1 -1
- package/out/concepts/LogicItem__.d.ts +6 -0
- package/out/concepts/LogicItem__.js +14 -5
- package/out/concepts/LogicItem__.js.map +1 -1
- package/out/concepts/Logic__.d.ts +80 -79
- package/out/concepts/Logic__.js +204 -58
- package/out/concepts/Logic__.js.map +1 -1
- package/out/concepts/MatchCase__.d.ts +39 -38
- package/out/concepts/MatchCase__.js +122 -37
- package/out/concepts/MatchCase__.js.map +1 -1
- package/out/concepts/Match__.d.ts +13 -11
- package/out/concepts/Match__.js +128 -60
- package/out/concepts/Match__.js.map +1 -1
- package/out/concepts/MemberExpression__.d.ts +7 -6
- package/out/concepts/MemberExpression__.js +52 -22
- package/out/concepts/MemberExpression__.js.map +1 -1
- package/out/concepts/MicroApp__.js +4 -3
- package/out/concepts/MicroApp__.js.map +1 -1
- package/out/concepts/Module__.d.ts +242 -154
- package/out/concepts/Module__.js +139 -33
- package/out/concepts/Module__.js.map +1 -1
- package/out/concepts/MsgTriggerEvent__.d.ts +15 -15
- package/out/concepts/MsgTriggerEvent__.js +6 -5
- package/out/concepts/MsgTriggerEvent__.js.map +1 -1
- package/out/concepts/MsgTriggerLauncher__.d.ts +23 -15
- package/out/concepts/MsgTriggerLauncher__.js +24 -5
- package/out/concepts/MsgTriggerLauncher__.js.map +1 -1
- package/out/concepts/Namespace__.d.ts +180 -180
- package/out/concepts/Namespace__.js +33 -34
- package/out/concepts/Namespace__.js.map +1 -1
- package/out/concepts/NewComposite__.d.ts +49 -48
- package/out/concepts/NewComposite__.js +164 -49
- package/out/concepts/NewComposite__.js.map +1 -1
- package/out/concepts/NewList__.d.ts +19 -18
- package/out/concepts/NewList__.js +29 -12
- package/out/concepts/NewList__.js.map +1 -1
- package/out/concepts/NewMap__.d.ts +34 -33
- package/out/concepts/NewMap__.js +81 -72
- package/out/concepts/NewMap__.js.map +1 -1
- package/out/concepts/New__.js +6 -5
- package/out/concepts/New__.js.map +1 -1
- package/out/concepts/NullLiteral__.js +6 -5
- package/out/concepts/NullLiteral__.js.map +1 -1
- package/out/concepts/NumericLiteral__.d.ts +4 -3
- package/out/concepts/NumericLiteral__.js +15 -8
- package/out/concepts/NumericLiteral__.js.map +1 -1
- package/out/concepts/OqlQueryComponent__.d.ts +4 -3
- package/out/concepts/OqlQueryComponent__.js +25 -16
- package/out/concepts/OqlQueryComponent__.js.map +1 -1
- package/out/concepts/OverriddenLogic__.d.ts +79 -79
- package/out/concepts/OverriddenLogic__.js +79 -58
- package/out/concepts/OverriddenLogic__.js.map +1 -1
- package/out/concepts/Param__.d.ts +6 -5
- package/out/concepts/Param__.js +66 -29
- package/out/concepts/Param__.js.map +1 -1
- package/out/concepts/Point__.js +4 -3
- package/out/concepts/Point__.js.map +1 -1
- package/out/concepts/ProcessComponent__.d.ts +30 -30
- package/out/concepts/ProcessComponent__.js +8 -7
- package/out/concepts/ProcessComponent__.js.map +1 -1
- package/out/concepts/ProcessElement__.d.ts +96 -96
- package/out/concepts/ProcessElement__.js +34 -34
- package/out/concepts/ProcessElement__.js.map +1 -1
- package/out/concepts/ProcessOutcome__.js +6 -5
- package/out/concepts/ProcessOutcome__.js.map +1 -1
- package/out/concepts/ProcessOutcomes__.js +6 -5
- package/out/concepts/ProcessOutcomes__.js.map +1 -1
- package/out/concepts/Process__.d.ts +75 -75
- package/out/concepts/Process__.js +33 -30
- package/out/concepts/Process__.js.map +1 -1
- package/out/concepts/QueryAggregateExpression__.d.ts +3 -3
- package/out/concepts/QueryAggregateExpression__.js +8 -7
- package/out/concepts/QueryAggregateExpression__.js.map +1 -1
- package/out/concepts/QueryFieldExpression__.js +7 -6
- package/out/concepts/QueryFieldExpression__.js.map +1 -1
- package/out/concepts/QueryFromExpression__.d.ts +8 -8
- package/out/concepts/QueryFromExpression__.js +8 -7
- package/out/concepts/QueryFromExpression__.js.map +1 -1
- package/out/concepts/QueryGroupByExpression__.d.ts +3 -3
- package/out/concepts/QueryGroupByExpression__.js +9 -10
- package/out/concepts/QueryGroupByExpression__.js.map +1 -1
- package/out/concepts/QueryJoinExpression__.d.ts +23 -23
- package/out/concepts/QueryJoinExpression__.js +11 -10
- package/out/concepts/QueryJoinExpression__.js.map +1 -1
- package/out/concepts/QueryLimitExpression__.d.ts +6 -6
- package/out/concepts/QueryLimitExpression__.js +9 -8
- package/out/concepts/QueryLimitExpression__.js.map +1 -1
- package/out/concepts/QueryOrderByExpression__.d.ts +6 -6
- package/out/concepts/QueryOrderByExpression__.js +9 -8
- package/out/concepts/QueryOrderByExpression__.js.map +1 -1
- package/out/concepts/QuerySelectExpression__.d.ts +30 -30
- package/out/concepts/QuerySelectExpression__.js +9 -8
- package/out/concepts/QuerySelectExpression__.js.map +1 -1
- package/out/concepts/Rect__.js +4 -3
- package/out/concepts/Rect__.js.map +1 -1
- package/out/concepts/Return__.d.ts +4 -3
- package/out/concepts/Return__.js +37 -18
- package/out/concepts/Return__.js.map +1 -1
- package/out/concepts/Role__.js +9 -9
- package/out/concepts/Role__.js.map +1 -1
- package/out/concepts/SelectMembers__.d.ts +18 -18
- package/out/concepts/SelectMembers__.js +10 -9
- package/out/concepts/SelectMembers__.js.map +1 -1
- package/out/concepts/Slot__.d.ts +3 -3
- package/out/concepts/Slot__.js +6 -5
- package/out/concepts/Slot__.js.map +1 -1
- package/out/concepts/SqlQueryComponent__.d.ts +4 -3
- package/out/concepts/SqlQueryComponent__.js +21 -12
- package/out/concepts/SqlQueryComponent__.js.map +1 -1
- package/out/concepts/Start__.js +6 -5
- package/out/concepts/Start__.js.map +1 -1
- package/out/concepts/StringInterpolation__.d.ts +16 -15
- package/out/concepts/StringInterpolation__.js +37 -14
- package/out/concepts/StringInterpolation__.js.map +1 -1
- package/out/concepts/StringLiteral__.d.ts +1 -0
- package/out/concepts/StringLiteral__.js +13 -8
- package/out/concepts/StringLiteral__.js.map +1 -1
- package/out/concepts/StructureProperty__.d.ts +4 -3
- package/out/concepts/StructureProperty__.js +22 -9
- package/out/concepts/StructureProperty__.js.map +1 -1
- package/out/concepts/Structure__.d.ts +31 -30
- package/out/concepts/Structure__.js +27 -15
- package/out/concepts/Structure__.js.map +1 -1
- package/out/concepts/SwitchCase__.d.ts +12 -11
- package/out/concepts/SwitchCase__.js +69 -31
- package/out/concepts/SwitchCase__.js.map +1 -1
- package/out/concepts/SwitchStatement__.d.ts +9 -8
- package/out/concepts/SwitchStatement__.js +27 -7
- package/out/concepts/SwitchStatement__.js.map +1 -1
- package/out/concepts/Theme__.js +4 -3
- package/out/concepts/Theme__.js.map +1 -1
- package/out/concepts/Transactional__.js +4 -3
- package/out/concepts/Transactional__.js.map +1 -1
- package/out/concepts/TriggerEvent__.d.ts +15 -15
- package/out/concepts/TriggerEvent__.js +6 -5
- package/out/concepts/TriggerEvent__.js.map +1 -1
- package/out/concepts/TriggerLauncher__.d.ts +15 -10
- package/out/concepts/TriggerLauncher__.js +54 -32
- package/out/concepts/TriggerLauncher__.js.map +1 -1
- package/out/concepts/TypeAnnotation__.d.ts +28 -27
- package/out/concepts/TypeAnnotation__.js +144 -124
- package/out/concepts/TypeAnnotation__.js.map +1 -1
- package/out/concepts/TypeParam__.d.ts +1 -0
- package/out/concepts/TypeParam__.js +12 -5
- package/out/concepts/TypeParam__.js.map +1 -1
- package/out/concepts/UnaryExpression__.d.ts +4 -3
- package/out/concepts/UnaryExpression__.js +31 -20
- package/out/concepts/UnaryExpression__.js.map +1 -1
- package/out/concepts/Unparsed__.d.ts +1 -0
- package/out/concepts/Unparsed__.js +12 -5
- package/out/concepts/Unparsed__.js.map +1 -1
- package/out/concepts/UseComponent__.js +4 -3
- package/out/concepts/UseComponent__.js.map +1 -1
- package/out/concepts/ValidationRule__.d.ts +14 -14
- package/out/concepts/ValidationRule__.js +19 -17
- package/out/concepts/ValidationRule__.js.map +1 -1
- package/out/concepts/Variable__.d.ts +4 -3
- package/out/concepts/Variable__.js +39 -23
- package/out/concepts/Variable__.js.map +1 -1
- package/out/concepts/ViewBlock__.js +4 -3
- package/out/concepts/ViewBlock__.js.map +1 -1
- package/out/concepts/ViewComponent__.d.ts +90 -90
- package/out/concepts/ViewComponent__.js +16 -15
- package/out/concepts/ViewComponent__.js.map +1 -1
- package/out/concepts/ViewElement__.d.ts +92 -86
- package/out/concepts/ViewElement__.js +258 -200
- package/out/concepts/ViewElement__.js.map +1 -1
- package/out/concepts/View__.d.ts +92 -92
- package/out/concepts/View__.js +173 -63
- package/out/concepts/View__.js.map +1 -1
- package/out/concepts/WhileStatement__.d.ts +12 -11
- package/out/concepts/WhileStatement__.js +46 -23
- package/out/concepts/WhileStatement__.js.map +1 -1
- package/out/concepts/basics/stdlib/index.js +17 -1
- package/out/concepts/basics/stdlib/index.js.map +1 -1
- package/out/concepts/basics/stdlib/nasl.browser.js +36 -0
- package/out/concepts/basics/stdlib/nasl.browser.js.map +1 -1
- package/out/concepts/basics/stdlib/nasl.event.d.ts +3 -0
- package/out/concepts/basics/stdlib/nasl.event.js +23 -0
- package/out/concepts/basics/stdlib/nasl.event.js.map +1 -0
- package/out/concepts/basics/stdlib/nasl.ui.js +45 -0
- package/out/concepts/basics/stdlib/nasl.ui.js.map +1 -1
- package/out/concepts/basics/stdlib/nasl.util.js +6 -22
- package/out/concepts/basics/stdlib/nasl.util.js.map +1 -1
- package/out/concepts/index__.d.ts +2 -1
- package/out/concepts/index__.js +2 -1
- package/out/concepts/index__.js.map +1 -1
- package/out/concepts/types__.d.ts +2 -1
- package/out/decorators/index.d.ts +1 -1
- package/out/decorators/index.js +20 -7
- package/out/decorators/index.js.map +1 -1
- package/out/decorators/promise.d.ts +7 -0
- package/out/decorators/promise.js +28 -0
- package/out/decorators/promise.js.map +1 -0
- package/out/enums/KEYWORDS.js.map +1 -1
- package/out/enums/LEVEL_NAME_MAP.js.map +1 -1
- package/out/generator/compileComponent.js.map +1 -1
- package/out/generator/genBundleFiles.d.ts +4 -1
- package/out/generator/genBundleFiles.js +15 -11
- package/out/generator/genBundleFiles.js.map +1 -1
- package/out/generator/genHash.js.map +1 -1
- package/out/generator/genMetaData.js +12 -8
- package/out/generator/genMetaData.js.map +1 -1
- package/out/generator/genReleaseBody.js +33 -35
- package/out/generator/genReleaseBody.js.map +1 -1
- package/out/generator/microApp.js +2 -1
- package/out/generator/microApp.js.map +1 -1
- package/out/generator/permission.js +31 -30
- package/out/generator/permission.js.map +1 -1
- package/out/generator/styleReplacer.js +4 -7
- package/out/generator/styleReplacer.js.map +1 -1
- package/out/index.d.ts +0 -2
- package/out/index.js +0 -3
- package/out/index.js.map +1 -1
- package/out/manager/diagnostic.d.ts +1 -1
- package/out/manager/diagnostic.js.map +1 -1
- package/out/manager/stepRecorder.js +13 -9
- package/out/manager/stepRecorder.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 +76 -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 +760 -0
- package/out/natural/transformTSCode.js.map +1 -0
- package/out/sentry/index.d.ts +2 -1
- package/out/sentry/index.js.map +1 -1
- package/out/server/createUiTs.js +28 -16
- package/out/server/createUiTs.js.map +1 -1
- package/out/server/entity2LogicNamespace.js +24 -22
- package/out/server/entity2LogicNamespace.js.map +1 -1
- package/out/server/event.d.ts +12 -0
- package/out/server/event.js +52 -28
- package/out/server/event.js.map +1 -1
- package/out/server/extendBaseNode.js +55 -70
- package/out/server/extendBaseNode.js.map +1 -1
- package/out/server/formatTsUtils.js +46 -50
- package/out/server/formatTsUtils.js.map +1 -1
- package/out/server/getConnector.d.ts +3 -3
- package/out/server/getConnector.js +7 -8
- package/out/server/getConnector.js.map +1 -1
- package/out/server/getExtensionModules.js +2 -2
- package/out/server/getExtensionModules.js.map +1 -1
- package/out/server/getFunctions.js.map +1 -1
- package/out/server/getInterfaces.js.map +1 -1
- package/out/server/getLogging.js.map +1 -1
- package/out/server/getLogics.d.ts +1 -1
- package/out/server/getLogics.js +55 -8
- package/out/server/getLogics.js.map +1 -1
- package/out/server/getMemberIdentifier.js +13 -10
- package/out/server/getMemberIdentifier.js.map +1 -1
- package/out/server/getProcessComponents.js.map +1 -1
- package/out/server/getProcesses.js +21 -29
- package/out/server/getProcesses.js.map +1 -1
- package/out/server/getScope.js.map +1 -1
- package/out/server/getValidates.js.map +1 -1
- package/out/server/index.js +0 -1
- package/out/server/index.js.map +1 -1
- package/out/server/naslServer.d.ts +99 -94
- package/out/server/naslServer.js +490 -469
- package/out/server/naslServer.js.map +1 -1
- package/out/server/naslStdlibMap.js +6 -2
- package/out/server/naslStdlibMap.js.map +1 -1
- package/out/server/process2LogicNamespace.js.map +1 -1
- package/out/server/translator.d.ts +1 -1
- package/out/server/translator.js +52 -47
- package/out/server/translator.js.map +1 -1
- package/out/service/storage/init.d.ts +15 -1
- package/out/service/storage/init.js +65 -56
- package/out/service/storage/init.js.map +1 -1
- package/out/templator/genCallComponentLogic.js +1 -2
- package/out/templator/genCallComponentLogic.js.map +1 -1
- package/out/templator/genCreateBlock.js +14 -9
- package/out/templator/genCreateBlock.js.map +1 -1
- package/out/templator/genCurdEditMultipleKeyBlock.js +23 -14
- package/out/templator/genCurdEditMultipleKeyBlock.js.map +1 -1
- package/out/templator/genCurdMultipleKeyBlock.js +26 -30
- package/out/templator/genCurdMultipleKeyBlock.js.map +1 -1
- package/out/templator/genEditTableBlock.d.ts +1 -1
- package/out/templator/genEditTableBlock.js +14 -19
- package/out/templator/genEditTableBlock.js.map +1 -1
- package/out/templator/genEnumSelectBlock.js +1 -1
- package/out/templator/genEnumSelectBlock.js.map +1 -1
- package/out/templator/genGetBlock.js +2 -2
- package/out/templator/genGetBlock.js.map +1 -1
- package/out/templator/genGridViewBlock.d.ts +2 -2
- package/out/templator/genGridViewBlock.js +18 -28
- package/out/templator/genGridViewBlock.js.map +1 -1
- package/out/templator/genListViewBlock.d.ts +2 -2
- package/out/templator/genListViewBlock.js +9 -16
- package/out/templator/genListViewBlock.js.map +1 -1
- package/out/templator/genQueryComponent.js +22 -15
- package/out/templator/genQueryComponent.js.map +1 -1
- package/out/templator/genSelectBlock.d.ts +2 -2
- package/out/templator/genSelectBlock.js +21 -48
- package/out/templator/genSelectBlock.js.map +1 -1
- package/out/templator/genTableBlock.d.ts +1 -1
- package/out/templator/genTableBlock.js +11 -17
- package/out/templator/genTableBlock.js.map +1 -1
- package/out/templator/genUpdateBlock.js +13 -8
- package/out/templator/genUpdateBlock.js.map +1 -1
- package/out/templator/index.d.ts +4 -2
- package/out/templator/index.js +2 -2
- package/out/templator/index.js.map +1 -1
- package/out/templator/utils.d.ts +9 -2
- package/out/templator/utils.js +22 -22
- package/out/templator/utils.js.map +1 -1
- package/out/translator/index.js +27 -28
- package/out/translator/index.js.map +1 -1
- package/out/utils/index.d.ts +2 -1
- package/out/utils/index.js +8 -14
- package/out/utils/index.js.map +1 -1
- package/out/utils/logger.js.map +1 -1
- package/out/utils/sortTsString.js +3 -1
- package/out/utils/sortTsString.js.map +1 -1
- package/out/utils/string.js +8 -11
- package/out/utils/string.js.map +1 -1
- package/out/utils/time-slicing.d.ts +41 -0
- package/out/utils/time-slicing.js +81 -0
- package/out/utils/time-slicing.js.map +1 -0
- package/out/utils/traverse.js +4 -6
- package/out/utils/traverse.js.map +1 -1
- package/package.json +22 -20
- package/sandbox/stdlib/nasl.auth.ts +49 -46
- package/sandbox/stdlib/nasl.browser.ts +1 -0
- package/sandbox/stdlib/nasl.event.ts +4 -0
- package/sandbox/stdlib/nasl.http.ts +29 -31
- package/sandbox/stdlib/nasl.ui.definition.ts +13 -1
- package/sandbox/stdlib/nasl.ui.ts +11 -0
- 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 +56 -0
- package/sandbox-natural/stdlib/nasl.util.ts +26 -0
- package/sandbox-natural/tsconfig.json +12 -0
- package/src/automate/engine/utils.js +3 -0
- package/src/automate/upgrader/2.20.js +1 -1
- package/src/bak/translator.js +92 -99
- package/src/breakpoint/generator/AfterStartNode.ts +19 -17
- package/src/breakpoint/generator/BeforeEndNode.ts +17 -17
- package/src/breakpoint/generator/BreakpointNode.ts +243 -195
- package/src/breakpoint/generator/CallbackNode.ts +20 -0
- package/src/breakpoint/generator/FragmentNode.ts +14 -0
- package/src/breakpoint/generator/index.ts +107 -80
- package/src/breakpoint/shared/constants.ts +59 -53
- package/src/breakpoint/shared/operations.ts +6 -6
- package/src/breakpoint/shared/socket.ts +277 -223
- package/src/breakpoint/shared/utils.ts +166 -146
- package/src/breakpoint/store/core.ts +326 -297
- package/src/breakpoint/store/dock.ts +103 -103
- package/src/breakpoint/types/index.d.ts +11 -11
- package/src/common/BaseNode.ts +1103 -1020
- package/src/common/Command.ts +46 -16
- package/src/common/ComponentAPI.ts +72 -72
- package/src/common/EventEmitter.ts +80 -76
- package/src/common/Messager.ts +223 -224
- package/src/common/asyncFuncMap.ts +12 -12
- package/src/concepts/Abort__.ts +53 -60
- package/src/concepts/Anchor__.ts +158 -149
- package/src/concepts/AnonymousFunction__.ts +584 -551
- package/src/concepts/App__.ts +4278 -3669
- package/src/concepts/Argument__.ts +234 -210
- package/src/concepts/Assignee__.ts +680 -656
- package/src/concepts/AssignmentLine__.ts +80 -84
- package/src/concepts/Assignment__.ts +276 -264
- package/src/concepts/Attribute__.ts +183 -184
- package/src/concepts/AuthInterface__.ts +61 -63
- package/src/concepts/AuthLogicForCallInterface__.ts +540 -511
- package/src/concepts/AuthLogic__.ts +210 -194
- package/src/concepts/BackendVariable__.ts +414 -415
- package/src/concepts/Backend__.ts +317 -303
- package/src/concepts/BatchAssignment__.ts +987 -939
- package/src/concepts/BinaryExpression__.ts +370 -341
- package/src/concepts/BindAttribute__.ts +1056 -1011
- package/src/concepts/BindDirective__.ts +540 -542
- package/src/concepts/BindEvent__.ts +992 -866
- package/src/concepts/BindStyle__.ts +442 -451
- package/src/concepts/BooleanLiteral__.ts +89 -90
- package/src/concepts/CallAuthInterface__.ts +458 -433
- package/src/concepts/CallConnector__.ts +209 -164
- package/src/concepts/CallFunction__.ts +600 -600
- package/src/concepts/CallInterface__.ts +752 -725
- package/src/concepts/CallLogic__.ts +1328 -1236
- package/src/concepts/CallQueryComponent__.ts +1580 -1501
- package/src/concepts/Comment__.ts +69 -68
- package/src/concepts/CompletionProperty__.ts +250 -250
- package/src/concepts/ConfigGroup__.ts +312 -296
- package/src/concepts/ConfigPropertyValue__.ts +81 -82
- package/src/concepts/ConfigProperty__.ts +374 -357
- package/src/concepts/Configuration__.ts +288 -276
- package/src/concepts/Connection__.ts +426 -0
- package/src/concepts/ConnectorTrigger__.ts +146 -142
- package/src/concepts/Connector__.ts +1090 -1048
- package/src/concepts/Constant__.ts +226 -219
- package/src/concepts/DataElement__.ts +108 -115
- package/src/concepts/DataSource__.ts +508 -472
- package/src/concepts/DatabaseTypeAnnotation__.ts +53 -59
- package/src/concepts/Destination__.ts +808 -746
- package/src/concepts/End__.ts +85 -89
- package/src/concepts/EntityIndex__.ts +206 -202
- package/src/concepts/EntityProperty__.ts +825 -791
- package/src/concepts/Entity__.ts +921 -864
- package/src/concepts/EnumItem__.ts +133 -125
- package/src/concepts/Enum__.ts +347 -337
- package/src/concepts/Event__.ts +305 -292
- package/src/concepts/ExternalDestination__.ts +269 -280
- package/src/concepts/ForEachStatement__.ts +583 -531
- package/src/concepts/FrontendLibrary__.ts +507 -485
- package/src/concepts/FrontendVariable__.ts +44 -49
- package/src/concepts/Frontend__.ts +1239 -1187
- package/src/concepts/Function__.ts +1110 -1045
- package/src/concepts/Identifier__.ts +276 -272
- package/src/concepts/IfStatement__.ts +467 -436
- package/src/concepts/Integration__.ts +136 -137
- package/src/concepts/InterfaceParam__.ts +239 -238
- package/src/concepts/Interface__.ts +969 -948
- package/src/concepts/JSBlock__.ts +83 -83
- package/src/concepts/JavaLogic__.ts +101 -106
- package/src/concepts/LogicItem__.ts +307 -237
- package/src/concepts/Logic__.ts +2301 -2088
- package/src/concepts/MatchCase__.ts +886 -779
- package/src/concepts/Match__.ts +728 -659
- package/src/concepts/MemberExpression__.ts +330 -311
- package/src/concepts/MicroApp__.ts +91 -97
- package/src/concepts/Module__.ts +2590 -2275
- package/src/concepts/MsgTriggerEvent__.ts +297 -281
- package/src/concepts/MsgTriggerLauncher__.ts +286 -256
- package/src/concepts/Namespace__.ts +2579 -2466
- package/src/concepts/NewComposite__.ts +1487 -1350
- package/src/concepts/NewList__.ts +464 -450
- package/src/concepts/NewMap__.ts +691 -674
- package/src/concepts/New__.ts +42 -49
- package/src/concepts/NullLiteral__.ts +66 -72
- package/src/concepts/NumericLiteral__.ts +169 -169
- package/src/concepts/OqlQueryComponent__.ts +282 -279
- package/src/concepts/OverriddenLogic__.ts +2142 -2097
- package/src/concepts/Param__.ts +500 -442
- package/src/concepts/Point__.ts +53 -59
- package/src/concepts/ProcessComponent__.ts +497 -475
- package/src/concepts/ProcessElement__.ts +1852 -1780
- package/src/concepts/ProcessOutcome__.ts +59 -64
- package/src/concepts/ProcessOutcomes__.ts +59 -64
- package/src/concepts/Process__.ts +1491 -1428
- package/src/concepts/QueryAggregateExpression__.ts +135 -142
- package/src/concepts/QueryFieldExpression__.ts +138 -142
- package/src/concepts/QueryFromExpression__.ts +246 -254
- package/src/concepts/QueryGroupByExpression__.ts +130 -136
- package/src/concepts/QueryJoinExpression__.ts +441 -438
- package/src/concepts/QueryLimitExpression__.ts +159 -166
- package/src/concepts/QueryOrderByExpression__.ts +173 -180
- package/src/concepts/QuerySelectExpression__.ts +464 -439
- package/src/concepts/Rect__.ts +73 -79
- package/src/concepts/Return__.ts +366 -345
- package/src/concepts/Role__.ts +146 -147
- package/src/concepts/SelectMembers__.ts +358 -350
- package/src/concepts/Slot__.ts +152 -153
- package/src/concepts/SqlQueryComponent__.ts +230 -228
- package/src/concepts/Start__.ts +45 -52
- package/src/concepts/StringInterpolation__.ts +323 -296
- package/src/concepts/StringLiteral__.ts +113 -115
- package/src/concepts/StructureProperty__.ts +306 -295
- package/src/concepts/Structure__.ts +615 -578
- package/src/concepts/SwitchCase__.ts +326 -290
- package/src/concepts/SwitchStatement__.ts +236 -229
- package/src/concepts/Theme__.ts +64 -68
- package/src/concepts/Transactional__.ts +159 -153
- package/src/concepts/TriggerEvent__.ts +285 -274
- package/src/concepts/TriggerLauncher__.ts +232 -196
- package/src/concepts/TypeAnnotation__.ts +1049 -1011
- package/src/concepts/TypeParam__.ts +48 -50
- package/src/concepts/UnaryExpression__.ts +163 -153
- package/src/concepts/Unparsed__.ts +81 -82
- package/src/concepts/UseComponent__.ts +53 -59
- package/src/concepts/ValidationRule__.ts +524 -544
- package/src/concepts/Variable__.ts +419 -397
- package/src/concepts/ViewBlock__.ts +58 -64
- package/src/concepts/ViewComponent__.ts +1323 -1261
- package/src/concepts/ViewElement__.ts +2537 -2351
- package/src/concepts/View__.ts +2461 -2245
- package/src/concepts/WhileStatement__.ts +293 -272
- package/src/concepts/basics/stdlib/index.ts +17 -1
- package/src/concepts/basics/stdlib/nasl.browser.ts +36 -0
- package/src/concepts/basics/stdlib/nasl.event.ts +18 -0
- package/src/concepts/basics/stdlib/nasl.ui.ts +45 -0
- package/src/concepts/basics/stdlib/nasl.util.ts +6 -22
- package/src/concepts/index__.ts +2 -1
- package/src/concepts/types__.ts +123 -121
- package/src/decorators/index.ts +75 -77
- package/src/decorators/promise.ts +28 -0
- package/src/enums/KEYWORDS.ts +1228 -1228
- package/src/enums/LEVEL_NAME_MAP.ts +24 -24
- package/src/generator/compileComponent.ts +10 -10
- package/src/generator/genBundleFiles.ts +300 -291
- package/src/generator/genHash.ts +2 -2
- package/src/generator/genMetaData.ts +280 -261
- package/src/generator/genReleaseBody.ts +312 -291
- package/src/generator/icestark.ts +1 -1
- package/src/generator/microApp.ts +17 -20
- package/src/generator/permission.ts +241 -232
- package/src/generator/qiankun.ts +1 -1
- package/src/generator/styleReplacer.ts +28 -31
- package/src/index.ts +0 -3
- package/src/manager/diagnostic.ts +84 -82
- package/src/manager/stepRecorder.ts +106 -94
- 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 +77 -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 +692 -0
- package/src/sentry/index.ts +109 -104
- package/src/server/createUiTs.ts +190 -184
- package/src/server/entity2LogicNamespace.ts +379 -359
- package/src/server/event.js +145 -121
- package/src/server/extendBaseNode.ts +461 -456
- package/src/server/formatTsUtils.ts +712 -713
- package/src/server/getConnector.ts +33 -33
- package/src/server/getExtensionModules.ts +23 -22
- package/src/server/getFunctions.ts +6 -6
- package/src/server/getInterfaces.ts +38 -37
- package/src/server/getLogging.ts +1 -1
- package/src/server/getLogics.ts +391 -312
- package/src/server/getMemberIdentifier.ts +286 -281
- package/src/server/getProcessComponents.ts +2 -2
- package/src/server/getProcesses.ts +548 -534
- package/src/server/getScope.ts +51 -51
- package/src/server/getValidates.ts +3 -3
- package/src/server/index.ts +29 -30
- package/src/server/naslServer.ts +4303 -4222
- package/src/server/naslStdlibMap.ts +43 -39
- package/src/server/process2LogicNamespace.ts +97 -97
- package/src/server/translator.ts +740 -746
- package/src/service/storage/init.ts +761 -728
- package/src/templator/genCallComponentLogic.ts +14 -15
- package/src/templator/genCreateBlock.ts +257 -229
- package/src/templator/genCurdEditMultipleKeyBlock.ts +333 -317
- package/src/templator/genCurdMultipleKeyBlock.ts +503 -475
- package/src/templator/genEditTableBlock.ts +194 -187
- package/src/templator/genEnumSelectBlock.ts +13 -7
- package/src/templator/genGetBlock.ts +57 -55
- package/src/templator/genGridViewBlock.ts +195 -211
- package/src/templator/genListViewBlock.ts +62 -72
- package/src/templator/genQueryComponent.ts +337 -287
- package/src/templator/genSelectBlock.ts +283 -297
- package/src/templator/genTableBlock.ts +160 -166
- package/src/templator/genUpdateBlock.ts +269 -255
- package/src/templator/index.ts +4 -4
- package/src/templator/utils.ts +491 -463
- package/src/translator/index.ts +84 -84
- package/src/translator/lsp.ts +22 -22
- package/src/translator/tsp.ts +6 -6
- package/src/utils/index.ts +115 -117
- package/src/utils/logger.ts +3 -4
- package/src/utils/sortTsString.ts +34 -32
- package/src/utils/string.ts +47 -48
- package/src/utils/time-slicing.ts +109 -0
- package/src/utils/traverse.ts +114 -126
- package/test/concepts/call-interface/__snapshots__/toEmbeddedTS.spec.ts.snap +71 -0
- package/test/concepts/call-interface/__snapshots__/toJS.spec.ts.snap +140 -0
- package/test/concepts/call-interface/constant.ts +5 -0
- package/test/concepts/call-interface/fixtures/only-interface.json +158 -0
- package/test/concepts/call-interface/fixtures/with-body-complex-argument.json +455 -0
- package/test/concepts/call-interface/fixtures/with-body-no-argument.json +187 -0
- package/test/concepts/call-interface/fixtures/with-body-simple-argument.json +225 -0
- package/test/concepts/call-interface/fixtures/with-headers-no-argument.json +213 -0
- package/test/concepts/call-interface/fixtures/with-headers.json +192 -0
- package/test/concepts/call-interface/fixtures/with-query-no-argument.json +213 -0
- package/test/concepts/call-interface/fixtures/with-query.json +192 -0
- package/test/concepts/call-interface/toEmbeddedTS.spec.ts +14 -0
- package/test/concepts/call-interface/toJS.spec.ts +14 -0
- package/test/concepts/call-logic/__snapshots__/toEmbeddedTS.spec.ts.snap +74 -0
- package/test/concepts/call-logic/__snapshots__/toJS.spec.ts.snap +141 -0
- package/test/concepts/call-logic/constant.ts +5 -0
- package/test/concepts/call-logic/fixtures/entries-get-with-arguments.json +223 -0
- package/test/concepts/call-logic/fixtures/entries-update-with-arguments.json +359 -0
- package/test/concepts/call-logic/fixtures/global-logic-argument-no-expression.json +209 -0
- package/test/concepts/call-logic/fixtures/global-logic-argument-some-expression.json +311 -0
- package/test/concepts/call-logic/fixtures/only-call-logic.json +10 -0
- package/test/concepts/call-logic/fixtures/view-buildin-logic-with-argument.json +128 -0
- package/test/concepts/call-logic/fixtures/view-component-logic-no-argument.json +126 -0
- package/test/concepts/call-logic/fixtures/view-component-with-validation.json +244 -0
- package/test/concepts/call-logic/toEmbeddedTS.spec.ts +14 -0
- package/test/concepts/call-logic/toJS.spec.ts +14 -0
- package/test/concepts/match/__snapshots__/toEmbeddedTS.spec.ts.snap +66 -0
- package/test/concepts/match/__snapshots__/toJS.spec.ts.snap +40 -0
- package/test/concepts/match/constant.ts +5 -0
- package/test/concepts/match/fixtures/isExpression.json +259 -0
- package/test/concepts/match/fixtures/lastBodyIf.json +268 -0
- package/test/concepts/match/fixtures/noExpression.json +176 -0
- package/test/concepts/match/toEmbeddedTS.spec.ts +14 -0
- package/test/concepts/match/toJS.spec.ts +14 -0
- package/test/concepts/utils.ts +76 -3
- package/test/concepts/validation-rule/__snapshots__/toEmbeddedTS.spec.ts.snap +3 -3
- package/test/concepts/validation-rule/__snapshots__/toJS.spec.ts.snap +16 -0
- package/test/concepts/validation-rule/constant.ts +5 -0
- package/test/concepts/validation-rule/toEmbeddedTS.spec.ts +10 -17
- package/test/concepts/validation-rule/toJS.spec.ts +14 -0
- package/test/concepts/view-element/__snapshots__/toEmbeddedTS.spec.ts.snap +68 -0
- package/test/concepts/view-element/__snapshots__/toVue.spec.ts.snap +44 -0
- package/test/concepts/view-element/constant.ts +5 -0
- package/test/concepts/view-element/fixtures/default-not-found.json +322 -0
- package/test/concepts/view-element/toEmbeddedTS.spec.ts +14 -0
- package/test/concepts/view-element/toVue.spec.ts +14 -0
- package/test/setup.ts +7 -0
- package/ts-worker/src/index.js +0 -2
- package/tsconfig.json +21 -21
- package/bin/naslc +0 -3
|
@@ -84,7 +84,8 @@ let NewComposite = NewComposite_1 = class NewComposite extends LogicItem__1.defa
|
|
|
84
84
|
* @param source 需要合并的部分参数
|
|
85
85
|
*/
|
|
86
86
|
constructor(source) {
|
|
87
|
-
|
|
87
|
+
// @ts-ignore
|
|
88
|
+
source = { ...NewComposite_1.getDefaultOptions(), ...source };
|
|
88
89
|
super(source);
|
|
89
90
|
super.subConstructor(source);
|
|
90
91
|
}
|
|
@@ -359,7 +360,7 @@ let NewComposite = NewComposite_1 = class NewComposite extends LogicItem__1.defa
|
|
|
359
360
|
if (typeof options === 'string') {
|
|
360
361
|
typeAnnotation = this.typeAnnotation;
|
|
361
362
|
if (!typeAnnotation) {
|
|
362
|
-
throw new Error(
|
|
363
|
+
throw new Error(`找不到类型标注 ${options}`);
|
|
363
364
|
}
|
|
364
365
|
}
|
|
365
366
|
else {
|
|
@@ -368,7 +369,7 @@ let NewComposite = NewComposite_1 = class NewComposite extends LogicItem__1.defa
|
|
|
368
369
|
return typeAnnotation.delete();
|
|
369
370
|
}
|
|
370
371
|
__removeTypeAnnotation(typeAnnotation) {
|
|
371
|
-
const parentKey = typeAnnotation
|
|
372
|
+
const { parentKey } = typeAnnotation;
|
|
372
373
|
const params = {
|
|
373
374
|
parentNode: this,
|
|
374
375
|
parentKey,
|
|
@@ -395,7 +396,7 @@ let NewComposite = NewComposite_1 = class NewComposite extends LogicItem__1.defa
|
|
|
395
396
|
if (typeof options === 'string') {
|
|
396
397
|
identifier = this.properties.find((item) => item.name === options);
|
|
397
398
|
if (!identifier) {
|
|
398
|
-
throw new Error(
|
|
399
|
+
throw new Error(`找不到标识符 ${options}`);
|
|
399
400
|
}
|
|
400
401
|
}
|
|
401
402
|
else {
|
|
@@ -404,7 +405,7 @@ let NewComposite = NewComposite_1 = class NewComposite extends LogicItem__1.defa
|
|
|
404
405
|
return identifier.delete();
|
|
405
406
|
}
|
|
406
407
|
__removeLogicItem(logicItem) {
|
|
407
|
-
const parentKey = logicItem
|
|
408
|
+
const { parentKey } = logicItem;
|
|
408
409
|
const params = {
|
|
409
410
|
parentNode: this,
|
|
410
411
|
parentKey,
|
|
@@ -431,7 +432,7 @@ let NewComposite = NewComposite_1 = class NewComposite extends LogicItem__1.defa
|
|
|
431
432
|
if (typeof options === 'string') {
|
|
432
433
|
selectMembers = this.rights.find((item) => item.name === options);
|
|
433
434
|
if (!selectMembers) {
|
|
434
|
-
throw new Error(
|
|
435
|
+
throw new Error(`找不到选择成员 ${options}`);
|
|
435
436
|
}
|
|
436
437
|
}
|
|
437
438
|
else {
|
|
@@ -440,7 +441,7 @@ let NewComposite = NewComposite_1 = class NewComposite extends LogicItem__1.defa
|
|
|
440
441
|
return selectMembers.delete();
|
|
441
442
|
}
|
|
442
443
|
__removeSelectMembers(selectMembers) {
|
|
443
|
-
const parentKey = selectMembers
|
|
444
|
+
const { parentKey } = selectMembers;
|
|
444
445
|
const params = {
|
|
445
446
|
parentNode: this,
|
|
446
447
|
parentKey,
|
|
@@ -467,7 +468,7 @@ let NewComposite = NewComposite_1 = class NewComposite extends LogicItem__1.defa
|
|
|
467
468
|
if (typeof options === 'string') {
|
|
468
469
|
assignmentLine = this.assignmentLines.find((item) => item.name === options);
|
|
469
470
|
if (!assignmentLine) {
|
|
470
|
-
throw new Error(
|
|
471
|
+
throw new Error(`找不到赋值连线 ${options}`);
|
|
471
472
|
}
|
|
472
473
|
}
|
|
473
474
|
else {
|
|
@@ -476,7 +477,7 @@ let NewComposite = NewComposite_1 = class NewComposite extends LogicItem__1.defa
|
|
|
476
477
|
return assignmentLine.delete();
|
|
477
478
|
}
|
|
478
479
|
__removeAssignmentLine(assignmentLine) {
|
|
479
|
-
const parentKey = assignmentLine
|
|
480
|
+
const { parentKey } = assignmentLine;
|
|
480
481
|
const params = {
|
|
481
482
|
parentNode: this,
|
|
482
483
|
parentKey,
|
|
@@ -498,10 +499,10 @@ let NewComposite = NewComposite_1 = class NewComposite extends LogicItem__1.defa
|
|
|
498
499
|
}
|
|
499
500
|
return params;
|
|
500
501
|
}
|
|
501
|
-
|
|
502
|
+
//= ===============================================================================
|
|
502
503
|
// ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
|
|
503
504
|
// 自动生成的代码已结束。下面可以手动编写。
|
|
504
|
-
|
|
505
|
+
//= ===============================================================================
|
|
505
506
|
get lines() {
|
|
506
507
|
return this.assignmentLines.length;
|
|
507
508
|
}
|
|
@@ -534,7 +535,7 @@ let NewComposite = NewComposite_1 = class NewComposite extends LogicItem__1.defa
|
|
|
534
535
|
// 右侧父节点也不允许自动连线
|
|
535
536
|
const rightLineSet = new Set();
|
|
536
537
|
for (let i = 0; i < members.length - 1; i++) {
|
|
537
|
-
const completeName = members[i]
|
|
538
|
+
const { completeName } = members[i];
|
|
538
539
|
const preCompleteName = members[i + 1].completeName;
|
|
539
540
|
if (preCompleteName.includes(completeName) && completeName.split('.').length !== preCompleteName.split('.').length)
|
|
540
541
|
rightLineSet.add(i);
|
|
@@ -639,11 +640,11 @@ let NewComposite = NewComposite_1 = class NewComposite extends LogicItem__1.defa
|
|
|
639
640
|
filterLine.forEach((line) => {
|
|
640
641
|
if (line.rightIndex[0] > index) {
|
|
641
642
|
if (line.rightIndex[1] === undefined) {
|
|
642
|
-
const newLine =
|
|
643
|
+
const newLine = { ...line, rightIndex: [line.rightIndex[0] - 1] };
|
|
643
644
|
newLines.push(newLine);
|
|
644
645
|
}
|
|
645
646
|
else {
|
|
646
|
-
const newLine =
|
|
647
|
+
const newLine = { ...line, rightIndex: [line.rightIndex[0] - 1, line.rightIndex[1]] };
|
|
647
648
|
newLines.push(newLine);
|
|
648
649
|
}
|
|
649
650
|
}
|
|
@@ -663,7 +664,7 @@ let NewComposite = NewComposite_1 = class NewComposite extends LogicItem__1.defa
|
|
|
663
664
|
});
|
|
664
665
|
const selectMember = oldNode.parentNode;
|
|
665
666
|
const autoConnectionIndex = this.rights.findIndex((right) => right === selectMember);
|
|
666
|
-
const newSelectMember =
|
|
667
|
+
const newSelectMember = { ...selectMember, expression, members };
|
|
667
668
|
const splitIndex = this.rights.findIndex((right) => selectMember === right);
|
|
668
669
|
const newLines = this.assignmentLines.filter(({ rightIndex }) => rightIndex[0] !== splitIndex);
|
|
669
670
|
let oldLines = this.assignmentLines.filter(({ rightIndex }) => rightIndex[0] === splitIndex);
|
|
@@ -672,7 +673,7 @@ let NewComposite = NewComposite_1 = class NewComposite extends LogicItem__1.defa
|
|
|
672
673
|
if (keepMembers?.has(item.completeName)) {
|
|
673
674
|
const lines = this.findlines(item, selectMember);
|
|
674
675
|
lines.forEach((line) => {
|
|
675
|
-
const newLine =
|
|
676
|
+
const newLine = { ...line, rightIndex: [line.rightIndex[0], index] };
|
|
676
677
|
newLines.push(newLine);
|
|
677
678
|
oldLines = oldLines.filter(({ leftIndex }) => leftIndex[1] !== line.leftIndex[1]);
|
|
678
679
|
});
|
|
@@ -691,13 +692,11 @@ let NewComposite = NewComposite_1 = class NewComposite extends LogicItem__1.defa
|
|
|
691
692
|
if (selectMember === this) {
|
|
692
693
|
if (member === this.typeAnnotation)
|
|
693
694
|
return this.assignmentLines;
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
});
|
|
700
|
-
}
|
|
695
|
+
const index2 = this.properties.findIndex((item) => item.completeName === member.completeName);
|
|
696
|
+
this.assignmentLines.forEach((line) => {
|
|
697
|
+
if (line.leftIndex[1] === index2)
|
|
698
|
+
lines.push(line);
|
|
699
|
+
});
|
|
701
700
|
}
|
|
702
701
|
else {
|
|
703
702
|
const index1 = this.rights.findIndex((right) => right === selectMember);
|
|
@@ -717,22 +716,20 @@ let NewComposite = NewComposite_1 = class NewComposite extends LogicItem__1.defa
|
|
|
717
716
|
}
|
|
718
717
|
return this.properties[secondIndex];
|
|
719
718
|
}
|
|
720
|
-
|
|
721
|
-
|
|
722
|
-
return this.rights[firstIndex].expression;
|
|
723
|
-
}
|
|
724
|
-
return this.rights[firstIndex].members[secondIndex];
|
|
719
|
+
if (secondIndex === undefined) {
|
|
720
|
+
return this.rights[firstIndex].expression;
|
|
725
721
|
}
|
|
722
|
+
return this.rights[firstIndex].members[secondIndex];
|
|
726
723
|
}
|
|
727
724
|
toUI(state) {
|
|
728
725
|
let code = '';
|
|
729
|
-
const typeAnnotation = this
|
|
726
|
+
const { typeAnnotation } = this;
|
|
730
727
|
const leftTopIndex = this.assignmentLines.findIndex(({ leftIndex }) => leftIndex[1] === undefined);
|
|
731
728
|
if (!this.typeAnnotation)
|
|
732
729
|
return null;
|
|
733
730
|
code += 'await (async () => { \n';
|
|
734
731
|
if (leftTopIndex !== -1) {
|
|
735
|
-
const rightIndex = this.assignmentLines[leftTopIndex]
|
|
732
|
+
const { rightIndex } = this.assignmentLines[leftTopIndex];
|
|
736
733
|
const obj = rightIndex[1] !== undefined ? this.rights[rightIndex[0]].members[rightIndex[1]] : this.rights[rightIndex[0]].expression;
|
|
737
734
|
code += `return ${obj};\n`;
|
|
738
735
|
}
|
|
@@ -768,24 +765,37 @@ let NewComposite = NewComposite_1 = class NewComposite extends LogicItem__1.defa
|
|
|
768
765
|
}
|
|
769
766
|
toJS(state) {
|
|
770
767
|
let code = '';
|
|
771
|
-
const typeAnnotation = this
|
|
768
|
+
const { typeAnnotation } = this;
|
|
772
769
|
const leftTopIndex = this.assignmentLines.findIndex(({ leftIndex }) => leftIndex[1] === undefined);
|
|
773
770
|
if (!this.typeAnnotation)
|
|
774
771
|
return null;
|
|
775
772
|
code += 'await (async () => { \n';
|
|
776
773
|
if (leftTopIndex !== -1) {
|
|
777
|
-
const rightIndex = this.assignmentLines[leftTopIndex]
|
|
774
|
+
const { rightIndex } = this.assignmentLines[leftTopIndex];
|
|
778
775
|
const obj = rightIndex[1] !== undefined ? this.rights[rightIndex[0]].members[rightIndex[1]] : this.rights[rightIndex[0]].expression;
|
|
779
776
|
code += `return ${obj.toJS((0, translator_1.shiftState)(state, code, { inline: true }))};\n`;
|
|
780
777
|
}
|
|
781
778
|
else if (typeAnnotation.typeKind !== 'anonymousStructure') {
|
|
782
779
|
code += `const obj = this.$genInitFromSchema('${typeAnnotation.sortedTypeKey}', this.$utils['New'](${typeAnnotation.toJS((0, translator_1.shiftState)(state, code, { inline: true }))}));\n`;
|
|
783
|
-
|
|
784
|
-
|
|
780
|
+
const rightMap = new Map();
|
|
781
|
+
this.assignmentLines.forEach(({ leftIndex, rightIndex }) => {
|
|
782
|
+
const rightIndexJson = JSON.stringify(rightIndex);
|
|
783
|
+
if (rightMap.has(rightIndexJson)) {
|
|
784
|
+
rightMap.set(rightIndexJson, [...rightMap.get(rightIndexJson), leftIndex]);
|
|
785
|
+
}
|
|
786
|
+
else {
|
|
787
|
+
rightMap.set(rightIndexJson, [leftIndex]);
|
|
788
|
+
}
|
|
789
|
+
});
|
|
790
|
+
rightMap.forEach((leftIndexs, rightIndexJson) => {
|
|
791
|
+
const rightIndex = JSON.parse(rightIndexJson) || [];
|
|
792
|
+
const leftItems = leftIndexs.map((leftIndex) => this.properties[leftIndex[1]]);
|
|
785
793
|
const [rightFirst, rightSecond] = [rightIndex[0], rightIndex[1]];
|
|
786
|
-
const leftItem = this.properties[leftSecondIndex];
|
|
787
794
|
const rightItem = rightSecond !== undefined ? this.rights[rightFirst].members[rightSecond] : this.rights[rightFirst].expression;
|
|
788
|
-
|
|
795
|
+
leftItems.forEach((leftItem) => {
|
|
796
|
+
code += `obj.${leftItem.name} = `;
|
|
797
|
+
});
|
|
798
|
+
code += `${rightItem.toJS((0, translator_1.shiftState)(state, code, { inline: true }))}`;
|
|
789
799
|
code += ';\n';
|
|
790
800
|
});
|
|
791
801
|
code += 'return obj;\n';
|
|
@@ -795,12 +805,25 @@ let NewComposite = NewComposite_1 = class NewComposite extends LogicItem__1.defa
|
|
|
795
805
|
this.properties.forEach((property) => {
|
|
796
806
|
code += `obj.${property.name} = null;\n`;
|
|
797
807
|
});
|
|
798
|
-
|
|
799
|
-
|
|
808
|
+
const rightMap = new Map();
|
|
809
|
+
this.assignmentLines.forEach(({ leftIndex, rightIndex }) => {
|
|
810
|
+
const rightIndexJson = JSON.stringify(rightIndex);
|
|
811
|
+
if (rightMap.has(rightIndexJson)) {
|
|
812
|
+
rightMap.set(rightIndexJson, [...rightMap.get(rightIndexJson), leftIndex]);
|
|
813
|
+
}
|
|
814
|
+
else {
|
|
815
|
+
rightMap.set(rightIndexJson, [leftIndex]);
|
|
816
|
+
}
|
|
817
|
+
});
|
|
818
|
+
rightMap.forEach((leftIndexs, rightIndexJson) => {
|
|
819
|
+
const rightIndex = JSON.parse(rightIndexJson) || [];
|
|
820
|
+
const leftItems = leftIndexs.map((leftIndex) => this.properties[leftIndex[1]]);
|
|
800
821
|
const [rightFirst, rightSecond] = [rightIndex[0], rightIndex[1]];
|
|
801
|
-
const leftItem = this.properties[leftSecondIndex];
|
|
802
822
|
const rightItem = rightSecond !== undefined ? this.rights[rightFirst].members[rightSecond] : this.rights[rightFirst].expression;
|
|
803
|
-
|
|
823
|
+
leftItems.forEach((leftItem) => {
|
|
824
|
+
code += `obj.${leftItem.name} = `;
|
|
825
|
+
});
|
|
826
|
+
code += `${rightItem.toJS((0, translator_1.shiftState)(state, code, { inline: true }))}`;
|
|
804
827
|
code += ';\n';
|
|
805
828
|
});
|
|
806
829
|
code += 'return obj;\n';
|
|
@@ -809,7 +832,7 @@ let NewComposite = NewComposite_1 = class NewComposite extends LogicItem__1.defa
|
|
|
809
832
|
return code;
|
|
810
833
|
}
|
|
811
834
|
toEmbeddedTS(state) {
|
|
812
|
-
const indent0 = (0, translator_1.indent)(
|
|
835
|
+
const indent0 = (0, translator_1.indent)(state?.tabSize || 0);
|
|
813
836
|
const indent1 = (0, translator_1.indent)((state?.tabSize || 0) + 1);
|
|
814
837
|
const indent2 = (0, translator_1.indent)((state?.tabSize || 0) + 2);
|
|
815
838
|
const indent3 = (0, translator_1.indent)((state?.tabSize || 0) + 3);
|
|
@@ -861,7 +884,7 @@ let NewComposite = NewComposite_1 = class NewComposite extends LogicItem__1.defa
|
|
|
861
884
|
// 是否是左边的顶层连线
|
|
862
885
|
const leftTopIndex = this.assignmentLines.findIndex(({ leftIndex }) => leftIndex[1] === undefined);
|
|
863
886
|
if (leftTopIndex !== -1) {
|
|
864
|
-
const rightIndex = this.assignmentLines[leftTopIndex]
|
|
887
|
+
const { rightIndex } = this.assignmentLines[leftTopIndex];
|
|
865
888
|
const rightExpression = rightIndex[1] !== undefined ? this.rights[rightIndex[0]].members[rightIndex[1]] : this.rights[rightIndex[0]].expression;
|
|
866
889
|
code += `__obj = ${rightExpression.toEmbeddedTS((0, translator_1.shiftState)(state, code, { inline: true }))};`;
|
|
867
890
|
code += '\n';
|
|
@@ -928,7 +951,7 @@ let NewComposite = NewComposite_1 = class NewComposite extends LogicItem__1.defa
|
|
|
928
951
|
this.properties.forEach((property, index) => {
|
|
929
952
|
const temp = `temp${index}`;
|
|
930
953
|
const propertyType = this.typeAnnotation.properties[index]?.typeAnnotation;
|
|
931
|
-
const name = property
|
|
954
|
+
const { name } = property;
|
|
932
955
|
const rightItem = nameMap.get(name);
|
|
933
956
|
const ts = rightMap.get(rightItem);
|
|
934
957
|
if (ts !== undefined) {
|
|
@@ -940,7 +963,9 @@ let NewComposite = NewComposite_1 = class NewComposite extends LogicItem__1.defa
|
|
|
940
963
|
}
|
|
941
964
|
code += `const `;
|
|
942
965
|
code += `${property.toEmbeddedTS((0, translator_1.shiftState)(state, code, { inline: true }))}: `;
|
|
943
|
-
code += propertyType
|
|
966
|
+
code += propertyType
|
|
967
|
+
? propertyType.toEmbeddedTS((0, translator_1.shiftState)(state, code, { inline: true }))
|
|
968
|
+
: `nasl.core.Incompatible<typeof ${temp}, void>`;
|
|
944
969
|
code += ` = ${temp};\n`;
|
|
945
970
|
}
|
|
946
971
|
else if (propertyType) {
|
|
@@ -968,6 +993,93 @@ let NewComposite = NewComposite_1 = class NewComposite extends LogicItem__1.defa
|
|
|
968
993
|
}
|
|
969
994
|
return code;
|
|
970
995
|
}
|
|
996
|
+
toNaturalTS(state) {
|
|
997
|
+
const indent0 = (0, translator_1.indent)((state?.tabSize || 0));
|
|
998
|
+
const indent1 = (0, translator_1.indent)((state?.tabSize || 0) + 1);
|
|
999
|
+
const indent2 = (0, translator_1.indent)((state?.tabSize || 0) + 2);
|
|
1000
|
+
let code = '';
|
|
1001
|
+
if (!this.typeAnnotation) {
|
|
1002
|
+
code += '__IDENTIFIER__';
|
|
1003
|
+
}
|
|
1004
|
+
else if (this.typeAnnotation.typeKind !== 'anonymousStructure') {
|
|
1005
|
+
const rightMap = new Map();
|
|
1006
|
+
// 提供sourcemap,获取类型标注和上下文可选变量
|
|
1007
|
+
this.rights.forEach((right) => {
|
|
1008
|
+
code += indent1;
|
|
1009
|
+
rightMap.set(right.expression, right.expression.toNaturalTS((0, translator_1.shiftState)(state, code, { inline: true })));
|
|
1010
|
+
code += rightMap.get(right.expression);
|
|
1011
|
+
code += ';\n';
|
|
1012
|
+
if (right.members?.length) {
|
|
1013
|
+
code += indent2;
|
|
1014
|
+
}
|
|
1015
|
+
right.members.forEach((member) => {
|
|
1016
|
+
rightMap.set(member, member.toNaturalTS((0, translator_1.shiftState)(state, code, { inline: true })));
|
|
1017
|
+
code += rightMap.get(member);
|
|
1018
|
+
code += '; ';
|
|
1019
|
+
});
|
|
1020
|
+
code += right.members.length ? '\n' : '';
|
|
1021
|
+
});
|
|
1022
|
+
// 方便ts报错检查
|
|
1023
|
+
// 是否是左边的顶层连线
|
|
1024
|
+
const leftTopIndex = this.assignmentLines.findIndex(({ leftIndex }) => leftIndex[1] === undefined);
|
|
1025
|
+
if (leftTopIndex !== -1) {
|
|
1026
|
+
// const rightIndex = this.assignmentLines[leftTopIndex].rightIndex;
|
|
1027
|
+
// const rightExpression = rightIndex[1] !== undefined ? this.rights[rightIndex[0]].members[rightIndex[1]] : this.rights[rightIndex[0]].expression;
|
|
1028
|
+
// code += `__obj = ${rightExpression.toNaturalTS(shiftState(state, code, { inline: true }))};`;
|
|
1029
|
+
// code += '\n';
|
|
1030
|
+
}
|
|
1031
|
+
else {
|
|
1032
|
+
code += `${indent0}new ${this.typeAnnotation.typeName}({\n`;
|
|
1033
|
+
this.assignmentLines.forEach(({ leftIndex, rightIndex }) => {
|
|
1034
|
+
const leftSecondIndex = leftIndex[1];
|
|
1035
|
+
const [rightFirst, rightSecond] = [rightIndex[0], rightIndex[1]];
|
|
1036
|
+
const leftItem = this.properties[leftSecondIndex];
|
|
1037
|
+
const rightItem = rightSecond !== undefined ? this.rights[rightFirst].members[rightSecond] : this.rights[rightFirst].expression;
|
|
1038
|
+
const rightTs = rightMap.get(rightItem);
|
|
1039
|
+
code += `${indent1}${leftItem.toNaturalTS((0, translator_1.shiftState)(state, code, { inline: true }))}: ${['__IDENTIFIER__', '__IDENTIFIER__()'].includes(rightTs) ? 'null' : rightMap.get(rightItem)},\n`;
|
|
1040
|
+
});
|
|
1041
|
+
code += `${indent0}})`;
|
|
1042
|
+
}
|
|
1043
|
+
}
|
|
1044
|
+
else {
|
|
1045
|
+
const nameMap = new Map();
|
|
1046
|
+
const rightMap = new Map();
|
|
1047
|
+
this.assignmentLines.forEach(({ leftIndex, rightIndex }) => {
|
|
1048
|
+
const leftSecondIndex = leftIndex[1];
|
|
1049
|
+
const [rightFirst, rightSecond] = [rightIndex[0], rightIndex[1]];
|
|
1050
|
+
const leftItem = this.properties[leftSecondIndex];
|
|
1051
|
+
const rightItem = rightSecond !== undefined ? this.rights[rightFirst].members[rightSecond] : this.rights[rightFirst].expression;
|
|
1052
|
+
nameMap.set(leftItem.name, rightItem);
|
|
1053
|
+
rightMap.set(rightItem, null);
|
|
1054
|
+
});
|
|
1055
|
+
code += `${indent0}{\n`;
|
|
1056
|
+
this.properties.forEach((property, index) => {
|
|
1057
|
+
const temp = `temp${index}`;
|
|
1058
|
+
const propertyType = this.typeAnnotation.properties[index]?.typeAnnotation;
|
|
1059
|
+
const { name } = property;
|
|
1060
|
+
const rightItem = nameMap.get(name);
|
|
1061
|
+
const ts = rightMap.get(rightItem);
|
|
1062
|
+
if (ts !== undefined) {
|
|
1063
|
+
if (['__IDENTIFIER__', '__IDENTIFIER__()'].includes(ts)) {
|
|
1064
|
+
code += `${indent1}${temp}: null,\n`;
|
|
1065
|
+
}
|
|
1066
|
+
else {
|
|
1067
|
+
code += `${indent1}${temp}: ${ts},\n`;
|
|
1068
|
+
}
|
|
1069
|
+
}
|
|
1070
|
+
else if (propertyType) {
|
|
1071
|
+
code += `${indent1}${property.name}: ${propertyType.toNaturalTS((0, translator_1.shiftState)(state, code, { inline: true }))},\n`;
|
|
1072
|
+
}
|
|
1073
|
+
else {
|
|
1074
|
+
code += `${indent1}`;
|
|
1075
|
+
code += property.toNaturalTS((0, translator_1.shiftState)(state, code, { inline: true }));
|
|
1076
|
+
code += ',\n';
|
|
1077
|
+
}
|
|
1078
|
+
});
|
|
1079
|
+
code += `${indent0}}`;
|
|
1080
|
+
}
|
|
1081
|
+
return code;
|
|
1082
|
+
}
|
|
971
1083
|
getInitCode(state) {
|
|
972
1084
|
const indent1 = (0, translator_1.indent)((state?.tabSize || 0) + 1);
|
|
973
1085
|
const indent2 = (0, translator_1.indent)((state?.tabSize || 0) + 2);
|
|
@@ -999,7 +1111,7 @@ let NewComposite = NewComposite_1 = class NewComposite extends LogicItem__1.defa
|
|
|
999
1111
|
// 方便ts报错检查
|
|
1000
1112
|
code += 'function __newComposite() { ';
|
|
1001
1113
|
this.properties.forEach((property, index) => {
|
|
1002
|
-
const name = property
|
|
1114
|
+
const { name } = property;
|
|
1003
1115
|
const propertyType = this.typeAnnotation.properties[index]?.typeAnnotation;
|
|
1004
1116
|
const rightItem = nameMap.get(name);
|
|
1005
1117
|
const ts = rightMap.get(rightItem);
|
|
@@ -1025,7 +1137,7 @@ let NewComposite = NewComposite_1 = class NewComposite extends LogicItem__1.defa
|
|
|
1025
1137
|
return code;
|
|
1026
1138
|
}
|
|
1027
1139
|
getNewCompositeCode(state) {
|
|
1028
|
-
const indent0 = (0, translator_1.indent)(
|
|
1140
|
+
const indent0 = (0, translator_1.indent)(state?.tabSize || 0);
|
|
1029
1141
|
const indent1 = (0, translator_1.indent)((state?.tabSize || 0) + 1);
|
|
1030
1142
|
const indent2 = (0, translator_1.indent)((state?.tabSize || 0) + 2);
|
|
1031
1143
|
const indent3 = (0, translator_1.indent)((state?.tabSize || 0) + 3);
|
|
@@ -1095,7 +1207,7 @@ let NewComposite = NewComposite_1 = class NewComposite extends LogicItem__1.defa
|
|
|
1095
1207
|
newLines.push(line);
|
|
1096
1208
|
}
|
|
1097
1209
|
else if (leftIndex[1] > index) {
|
|
1098
|
-
const newLine =
|
|
1210
|
+
const newLine = { ...line, leftIndex: [leftIndex[0], leftIndex[1] - 1] };
|
|
1099
1211
|
newLines.push(newLine);
|
|
1100
1212
|
}
|
|
1101
1213
|
});
|
|
@@ -1137,14 +1249,17 @@ __decorate([
|
|
|
1137
1249
|
__decorate([
|
|
1138
1250
|
(0, translator_1.withSourceMap)()
|
|
1139
1251
|
], NewComposite.prototype, "toEmbeddedTS", null);
|
|
1252
|
+
__decorate([
|
|
1253
|
+
(0, translator_1.withSourceMap)()
|
|
1254
|
+
], NewComposite.prototype, "toNaturalTS", null);
|
|
1140
1255
|
NewComposite = NewComposite_1 = __decorate([
|
|
1141
1256
|
(0, decorators_1.concept)('实体/(匿名)数据结构构造器')
|
|
1142
1257
|
], NewComposite);
|
|
1143
1258
|
exports.NewComposite = NewComposite;
|
|
1144
1259
|
classMap_1.default.NewComposite = NewComposite;
|
|
1145
1260
|
exports.default = NewComposite;
|
|
1146
|
-
|
|
1261
|
+
//= ===============================================================================
|
|
1147
1262
|
// ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
|
|
1148
1263
|
// 自动生成的代码已结束。下面可以手动编写。
|
|
1149
|
-
|
|
1264
|
+
//= ===============================================================================
|
|
1150
1265
|
//# sourceMappingURL=NewComposite__.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NewComposite__.js","sourceRoot":"","sources":["../../src/concepts/NewComposite__.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"NewComposite__.js","sourceRoot":"","sources":["../../src/concepts/NewComposite__.ts"],"names":[],"mappings":"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"}
|