@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.
Files changed (842) hide show
  1. package/out/automate/engine/utils.js +4 -0
  2. package/out/automate/engine/utils.js.map +1 -1
  3. package/out/automate/upgrader/2.20.js +1 -1
  4. package/out/automate/upgrader/2.20.js.map +1 -1
  5. package/out/bak/translator.js +11 -15
  6. package/out/bak/translator.js.map +1 -1
  7. package/out/breakpoint/generator/AfterStartNode.js +3 -1
  8. package/out/breakpoint/generator/AfterStartNode.js.map +1 -1
  9. package/out/breakpoint/generator/BeforeEndNode.js.map +1 -1
  10. package/out/breakpoint/generator/BreakpointNode.d.ts +1 -0
  11. package/out/breakpoint/generator/BreakpointNode.js +48 -15
  12. package/out/breakpoint/generator/BreakpointNode.js.map +1 -1
  13. package/out/breakpoint/generator/CallbackNode.d.ts +4 -0
  14. package/out/breakpoint/generator/CallbackNode.js +22 -0
  15. package/out/breakpoint/generator/CallbackNode.js.map +1 -0
  16. package/out/breakpoint/generator/FragmentNode.d.ts +4 -0
  17. package/out/breakpoint/generator/FragmentNode.js +18 -0
  18. package/out/breakpoint/generator/FragmentNode.js.map +1 -0
  19. package/out/breakpoint/generator/index.js +25 -4
  20. package/out/breakpoint/generator/index.js.map +1 -1
  21. package/out/breakpoint/shared/constants.d.ts +3 -0
  22. package/out/breakpoint/shared/constants.js +6 -1
  23. package/out/breakpoint/shared/constants.js.map +1 -1
  24. package/out/breakpoint/shared/operations.js.map +1 -1
  25. package/out/breakpoint/shared/socket.d.ts +1 -1
  26. package/out/breakpoint/shared/socket.js +36 -7
  27. package/out/breakpoint/shared/socket.js.map +1 -1
  28. package/out/breakpoint/shared/utils.d.ts +2 -0
  29. package/out/breakpoint/shared/utils.js +15 -2
  30. package/out/breakpoint/shared/utils.js.map +1 -1
  31. package/out/breakpoint/store/core.d.ts +48 -2
  32. package/out/breakpoint/store/core.js +58 -32
  33. package/out/breakpoint/store/core.js.map +1 -1
  34. package/out/breakpoint/store/dock.js +1 -1
  35. package/out/breakpoint/store/dock.js.map +1 -1
  36. package/out/common/BaseNode.d.ts +2 -2
  37. package/out/common/BaseNode.js +110 -53
  38. package/out/common/BaseNode.js.map +1 -1
  39. package/out/common/Command.d.ts +13 -2
  40. package/out/common/Command.js +37 -9
  41. package/out/common/Command.js.map +1 -1
  42. package/out/common/EventEmitter.js.map +1 -1
  43. package/out/common/Messager.d.ts +3 -3
  44. package/out/common/Messager.js +6 -7
  45. package/out/common/Messager.js.map +1 -1
  46. package/out/common/asyncFuncMap.js.map +1 -1
  47. package/out/concepts/Abort__.js +6 -5
  48. package/out/concepts/Abort__.js.map +1 -1
  49. package/out/concepts/Anchor__.d.ts +4 -3
  50. package/out/concepts/Anchor__.js +24 -7
  51. package/out/concepts/Anchor__.js.map +1 -1
  52. package/out/concepts/AnonymousFunction__.d.ts +22 -21
  53. package/out/concepts/AnonymousFunction__.js +48 -22
  54. package/out/concepts/AnonymousFunction__.js.map +1 -1
  55. package/out/concepts/App__.d.ts +421 -247
  56. package/out/concepts/App__.js +288 -54
  57. package/out/concepts/App__.js.map +1 -1
  58. package/out/concepts/Argument__.d.ts +4 -3
  59. package/out/concepts/Argument__.js +42 -11
  60. package/out/concepts/Argument__.js.map +1 -1
  61. package/out/concepts/Assignee__.d.ts +45 -45
  62. package/out/concepts/Assignee__.js +15 -15
  63. package/out/concepts/Assignee__.js.map +1 -1
  64. package/out/concepts/AssignmentLine__.js +6 -5
  65. package/out/concepts/AssignmentLine__.js.map +1 -1
  66. package/out/concepts/Assignment__.d.ts +7 -6
  67. package/out/concepts/Assignment__.js +41 -23
  68. package/out/concepts/Assignment__.js.map +1 -1
  69. package/out/concepts/Attribute__.d.ts +3 -3
  70. package/out/concepts/Attribute__.js +8 -7
  71. package/out/concepts/Attribute__.js.map +1 -1
  72. package/out/concepts/AuthInterface__.js +4 -3
  73. package/out/concepts/AuthInterface__.js.map +1 -1
  74. package/out/concepts/AuthLogicForCallInterface__.d.ts +15 -15
  75. package/out/concepts/AuthLogicForCallInterface__.js +46 -27
  76. package/out/concepts/AuthLogicForCallInterface__.js.map +1 -1
  77. package/out/concepts/AuthLogic__.js +27 -13
  78. package/out/concepts/AuthLogic__.js.map +1 -1
  79. package/out/concepts/BackendVariable__.d.ts +5 -5
  80. package/out/concepts/BackendVariable__.js +23 -26
  81. package/out/concepts/BackendVariable__.js.map +1 -1
  82. package/out/concepts/Backend__.d.ts +18 -18
  83. package/out/concepts/Backend__.js +13 -13
  84. package/out/concepts/Backend__.js.map +1 -1
  85. package/out/concepts/BatchAssignment__.d.ts +34 -33
  86. package/out/concepts/BatchAssignment__.js +83 -43
  87. package/out/concepts/BatchAssignment__.js.map +1 -1
  88. package/out/concepts/BinaryExpression__.d.ts +7 -6
  89. package/out/concepts/BinaryExpression__.js +60 -24
  90. package/out/concepts/BinaryExpression__.js.map +1 -1
  91. package/out/concepts/BindAttribute__.d.ts +37 -37
  92. package/out/concepts/BindAttribute__.js +102 -58
  93. package/out/concepts/BindAttribute__.js.map +1 -1
  94. package/out/concepts/BindDirective__.d.ts +13 -13
  95. package/out/concepts/BindDirective__.js +23 -21
  96. package/out/concepts/BindDirective__.js.map +1 -1
  97. package/out/concepts/BindEvent__.d.ts +28 -28
  98. package/out/concepts/BindEvent__.js +150 -57
  99. package/out/concepts/BindEvent__.js.map +1 -1
  100. package/out/concepts/BindStyle__.d.ts +14 -15
  101. package/out/concepts/BindStyle__.js +16 -16
  102. package/out/concepts/BindStyle__.js.map +1 -1
  103. package/out/concepts/BooleanLiteral__.d.ts +1 -0
  104. package/out/concepts/BooleanLiteral__.js +12 -5
  105. package/out/concepts/BooleanLiteral__.js.map +1 -1
  106. package/out/concepts/CallAuthInterface__.d.ts +15 -15
  107. package/out/concepts/CallAuthInterface__.js +23 -22
  108. package/out/concepts/CallAuthInterface__.js.map +1 -1
  109. package/out/concepts/CallConnector__.d.ts +11 -9
  110. package/out/concepts/CallConnector__.js +79 -36
  111. package/out/concepts/CallConnector__.js.map +1 -1
  112. package/out/concepts/CallFunction__.d.ts +17 -16
  113. package/out/concepts/CallFunction__.js +95 -63
  114. package/out/concepts/CallFunction__.js.map +1 -1
  115. package/out/concepts/CallInterface__.d.ts +9 -8
  116. package/out/concepts/CallInterface__.js +109 -80
  117. package/out/concepts/CallInterface__.js.map +1 -1
  118. package/out/concepts/CallLogic__.d.ts +24 -20
  119. package/out/concepts/CallLogic__.js +209 -162
  120. package/out/concepts/CallLogic__.js.map +1 -1
  121. package/out/concepts/CallQueryComponent__.d.ts +51 -51
  122. package/out/concepts/CallQueryComponent__.js +66 -63
  123. package/out/concepts/CallQueryComponent__.js.map +1 -1
  124. package/out/concepts/Comment__.d.ts +1 -0
  125. package/out/concepts/Comment__.js +13 -6
  126. package/out/concepts/Comment__.js.map +1 -1
  127. package/out/concepts/CompletionProperty__.d.ts +3 -3
  128. package/out/concepts/CompletionProperty__.js +16 -8
  129. package/out/concepts/CompletionProperty__.js.map +1 -1
  130. package/out/concepts/ConfigGroup__.d.ts +15 -15
  131. package/out/concepts/ConfigGroup__.js +9 -9
  132. package/out/concepts/ConfigGroup__.js.map +1 -1
  133. package/out/concepts/ConfigPropertyValue__.js +4 -3
  134. package/out/concepts/ConfigPropertyValue__.js.map +1 -1
  135. package/out/concepts/ConfigProperty__.d.ts +15 -15
  136. package/out/concepts/ConfigProperty__.js +10 -10
  137. package/out/concepts/ConfigProperty__.js.map +1 -1
  138. package/out/concepts/Configuration__.d.ts +15 -15
  139. package/out/concepts/Configuration__.js +9 -9
  140. package/out/concepts/Configuration__.js.map +1 -1
  141. package/out/concepts/Connection__.d.ts +166 -0
  142. package/out/concepts/Connection__.js +332 -0
  143. package/out/concepts/Connection__.js.map +1 -0
  144. package/out/concepts/ConnectorTrigger__.js +4 -3
  145. package/out/concepts/ConnectorTrigger__.js.map +1 -1
  146. package/out/concepts/Connector__.d.ts +66 -66
  147. package/out/concepts/Connector__.js +16 -15
  148. package/out/concepts/Connector__.js.map +1 -1
  149. package/out/concepts/Constant__.d.ts +3 -3
  150. package/out/concepts/Constant__.js +8 -7
  151. package/out/concepts/Constant__.js.map +1 -1
  152. package/out/concepts/DataElement__.d.ts +3 -3
  153. package/out/concepts/DataElement__.js +6 -5
  154. package/out/concepts/DataElement__.js.map +1 -1
  155. package/out/concepts/DataSource__.d.ts +15 -15
  156. package/out/concepts/DataSource__.js +55 -39
  157. package/out/concepts/DataSource__.js.map +1 -1
  158. package/out/concepts/DatabaseTypeAnnotation__.js +4 -3
  159. package/out/concepts/DatabaseTypeAnnotation__.js.map +1 -1
  160. package/out/concepts/Destination__.d.ts +12 -11
  161. package/out/concepts/Destination__.js +93 -36
  162. package/out/concepts/Destination__.js.map +1 -1
  163. package/out/concepts/End__.js +15 -13
  164. package/out/concepts/End__.js.map +1 -1
  165. package/out/concepts/EntityIndex__.d.ts +1 -1
  166. package/out/concepts/EntityIndex__.js +6 -5
  167. package/out/concepts/EntityIndex__.js.map +1 -1
  168. package/out/concepts/EntityProperty__.d.ts +8 -7
  169. package/out/concepts/EntityProperty__.js +39 -24
  170. package/out/concepts/EntityProperty__.js.map +1 -1
  171. package/out/concepts/Entity__.d.ts +31 -30
  172. package/out/concepts/Entity__.js +40 -16
  173. package/out/concepts/Entity__.js.map +1 -1
  174. package/out/concepts/EnumItem__.d.ts +1 -0
  175. package/out/concepts/EnumItem__.js +12 -5
  176. package/out/concepts/EnumItem__.js.map +1 -1
  177. package/out/concepts/Enum__.d.ts +9 -8
  178. package/out/concepts/Enum__.js +24 -11
  179. package/out/concepts/Enum__.js.map +1 -1
  180. package/out/concepts/Event__.d.ts +15 -15
  181. package/out/concepts/Event__.js +6 -5
  182. package/out/concepts/Event__.js.map +1 -1
  183. package/out/concepts/ExternalDestination__.d.ts +6 -6
  184. package/out/concepts/ExternalDestination__.js +12 -11
  185. package/out/concepts/ExternalDestination__.js.map +1 -1
  186. package/out/concepts/ForEachStatement__.d.ts +25 -24
  187. package/out/concepts/ForEachStatement__.js +101 -36
  188. package/out/concepts/ForEachStatement__.js.map +1 -1
  189. package/out/concepts/FrontendLibrary__.d.ts +30 -30
  190. package/out/concepts/FrontendLibrary__.js +12 -13
  191. package/out/concepts/FrontendLibrary__.js.map +1 -1
  192. package/out/concepts/FrontendVariable__.js +4 -3
  193. package/out/concepts/FrontendVariable__.js.map +1 -1
  194. package/out/concepts/Frontend__.d.ts +64 -65
  195. package/out/concepts/Frontend__.js +23 -27
  196. package/out/concepts/Frontend__.js.map +1 -1
  197. package/out/concepts/Function__.d.ts +64 -63
  198. package/out/concepts/Function__.js +49 -21
  199. package/out/concepts/Function__.js.map +1 -1
  200. package/out/concepts/Identifier__.js +37 -31
  201. package/out/concepts/Identifier__.js.map +1 -1
  202. package/out/concepts/IfStatement__.d.ts +20 -19
  203. package/out/concepts/IfStatement__.js +64 -34
  204. package/out/concepts/IfStatement__.js.map +1 -1
  205. package/out/concepts/Integration__.d.ts +3 -3
  206. package/out/concepts/Integration__.js +8 -7
  207. package/out/concepts/Integration__.js.map +1 -1
  208. package/out/concepts/InterfaceParam__.d.ts +3 -3
  209. package/out/concepts/InterfaceParam__.js +7 -6
  210. package/out/concepts/InterfaceParam__.js.map +1 -1
  211. package/out/concepts/Interface__.d.ts +33 -33
  212. package/out/concepts/Interface__.js +19 -20
  213. package/out/concepts/Interface__.js.map +1 -1
  214. package/out/concepts/JSBlock__.d.ts +1 -0
  215. package/out/concepts/JSBlock__.js +12 -5
  216. package/out/concepts/JSBlock__.js.map +1 -1
  217. package/out/concepts/JavaLogic__.js +10 -9
  218. package/out/concepts/JavaLogic__.js.map +1 -1
  219. package/out/concepts/LogicItem__.d.ts +6 -0
  220. package/out/concepts/LogicItem__.js +14 -5
  221. package/out/concepts/LogicItem__.js.map +1 -1
  222. package/out/concepts/Logic__.d.ts +80 -79
  223. package/out/concepts/Logic__.js +204 -58
  224. package/out/concepts/Logic__.js.map +1 -1
  225. package/out/concepts/MatchCase__.d.ts +39 -38
  226. package/out/concepts/MatchCase__.js +122 -37
  227. package/out/concepts/MatchCase__.js.map +1 -1
  228. package/out/concepts/Match__.d.ts +13 -11
  229. package/out/concepts/Match__.js +128 -60
  230. package/out/concepts/Match__.js.map +1 -1
  231. package/out/concepts/MemberExpression__.d.ts +7 -6
  232. package/out/concepts/MemberExpression__.js +52 -22
  233. package/out/concepts/MemberExpression__.js.map +1 -1
  234. package/out/concepts/MicroApp__.js +4 -3
  235. package/out/concepts/MicroApp__.js.map +1 -1
  236. package/out/concepts/Module__.d.ts +242 -154
  237. package/out/concepts/Module__.js +139 -33
  238. package/out/concepts/Module__.js.map +1 -1
  239. package/out/concepts/MsgTriggerEvent__.d.ts +15 -15
  240. package/out/concepts/MsgTriggerEvent__.js +6 -5
  241. package/out/concepts/MsgTriggerEvent__.js.map +1 -1
  242. package/out/concepts/MsgTriggerLauncher__.d.ts +23 -15
  243. package/out/concepts/MsgTriggerLauncher__.js +24 -5
  244. package/out/concepts/MsgTriggerLauncher__.js.map +1 -1
  245. package/out/concepts/Namespace__.d.ts +180 -180
  246. package/out/concepts/Namespace__.js +33 -34
  247. package/out/concepts/Namespace__.js.map +1 -1
  248. package/out/concepts/NewComposite__.d.ts +49 -48
  249. package/out/concepts/NewComposite__.js +164 -49
  250. package/out/concepts/NewComposite__.js.map +1 -1
  251. package/out/concepts/NewList__.d.ts +19 -18
  252. package/out/concepts/NewList__.js +29 -12
  253. package/out/concepts/NewList__.js.map +1 -1
  254. package/out/concepts/NewMap__.d.ts +34 -33
  255. package/out/concepts/NewMap__.js +81 -72
  256. package/out/concepts/NewMap__.js.map +1 -1
  257. package/out/concepts/New__.js +6 -5
  258. package/out/concepts/New__.js.map +1 -1
  259. package/out/concepts/NullLiteral__.js +6 -5
  260. package/out/concepts/NullLiteral__.js.map +1 -1
  261. package/out/concepts/NumericLiteral__.d.ts +4 -3
  262. package/out/concepts/NumericLiteral__.js +15 -8
  263. package/out/concepts/NumericLiteral__.js.map +1 -1
  264. package/out/concepts/OqlQueryComponent__.d.ts +4 -3
  265. package/out/concepts/OqlQueryComponent__.js +25 -16
  266. package/out/concepts/OqlQueryComponent__.js.map +1 -1
  267. package/out/concepts/OverriddenLogic__.d.ts +79 -79
  268. package/out/concepts/OverriddenLogic__.js +79 -58
  269. package/out/concepts/OverriddenLogic__.js.map +1 -1
  270. package/out/concepts/Param__.d.ts +6 -5
  271. package/out/concepts/Param__.js +66 -29
  272. package/out/concepts/Param__.js.map +1 -1
  273. package/out/concepts/Point__.js +4 -3
  274. package/out/concepts/Point__.js.map +1 -1
  275. package/out/concepts/ProcessComponent__.d.ts +30 -30
  276. package/out/concepts/ProcessComponent__.js +8 -7
  277. package/out/concepts/ProcessComponent__.js.map +1 -1
  278. package/out/concepts/ProcessElement__.d.ts +96 -96
  279. package/out/concepts/ProcessElement__.js +34 -34
  280. package/out/concepts/ProcessElement__.js.map +1 -1
  281. package/out/concepts/ProcessOutcome__.js +6 -5
  282. package/out/concepts/ProcessOutcome__.js.map +1 -1
  283. package/out/concepts/ProcessOutcomes__.js +6 -5
  284. package/out/concepts/ProcessOutcomes__.js.map +1 -1
  285. package/out/concepts/Process__.d.ts +75 -75
  286. package/out/concepts/Process__.js +33 -30
  287. package/out/concepts/Process__.js.map +1 -1
  288. package/out/concepts/QueryAggregateExpression__.d.ts +3 -3
  289. package/out/concepts/QueryAggregateExpression__.js +8 -7
  290. package/out/concepts/QueryAggregateExpression__.js.map +1 -1
  291. package/out/concepts/QueryFieldExpression__.js +7 -6
  292. package/out/concepts/QueryFieldExpression__.js.map +1 -1
  293. package/out/concepts/QueryFromExpression__.d.ts +8 -8
  294. package/out/concepts/QueryFromExpression__.js +8 -7
  295. package/out/concepts/QueryFromExpression__.js.map +1 -1
  296. package/out/concepts/QueryGroupByExpression__.d.ts +3 -3
  297. package/out/concepts/QueryGroupByExpression__.js +9 -10
  298. package/out/concepts/QueryGroupByExpression__.js.map +1 -1
  299. package/out/concepts/QueryJoinExpression__.d.ts +23 -23
  300. package/out/concepts/QueryJoinExpression__.js +11 -10
  301. package/out/concepts/QueryJoinExpression__.js.map +1 -1
  302. package/out/concepts/QueryLimitExpression__.d.ts +6 -6
  303. package/out/concepts/QueryLimitExpression__.js +9 -8
  304. package/out/concepts/QueryLimitExpression__.js.map +1 -1
  305. package/out/concepts/QueryOrderByExpression__.d.ts +6 -6
  306. package/out/concepts/QueryOrderByExpression__.js +9 -8
  307. package/out/concepts/QueryOrderByExpression__.js.map +1 -1
  308. package/out/concepts/QuerySelectExpression__.d.ts +30 -30
  309. package/out/concepts/QuerySelectExpression__.js +9 -8
  310. package/out/concepts/QuerySelectExpression__.js.map +1 -1
  311. package/out/concepts/Rect__.js +4 -3
  312. package/out/concepts/Rect__.js.map +1 -1
  313. package/out/concepts/Return__.d.ts +4 -3
  314. package/out/concepts/Return__.js +37 -18
  315. package/out/concepts/Return__.js.map +1 -1
  316. package/out/concepts/Role__.js +9 -9
  317. package/out/concepts/Role__.js.map +1 -1
  318. package/out/concepts/SelectMembers__.d.ts +18 -18
  319. package/out/concepts/SelectMembers__.js +10 -9
  320. package/out/concepts/SelectMembers__.js.map +1 -1
  321. package/out/concepts/Slot__.d.ts +3 -3
  322. package/out/concepts/Slot__.js +6 -5
  323. package/out/concepts/Slot__.js.map +1 -1
  324. package/out/concepts/SqlQueryComponent__.d.ts +4 -3
  325. package/out/concepts/SqlQueryComponent__.js +21 -12
  326. package/out/concepts/SqlQueryComponent__.js.map +1 -1
  327. package/out/concepts/Start__.js +6 -5
  328. package/out/concepts/Start__.js.map +1 -1
  329. package/out/concepts/StringInterpolation__.d.ts +16 -15
  330. package/out/concepts/StringInterpolation__.js +37 -14
  331. package/out/concepts/StringInterpolation__.js.map +1 -1
  332. package/out/concepts/StringLiteral__.d.ts +1 -0
  333. package/out/concepts/StringLiteral__.js +13 -8
  334. package/out/concepts/StringLiteral__.js.map +1 -1
  335. package/out/concepts/StructureProperty__.d.ts +4 -3
  336. package/out/concepts/StructureProperty__.js +22 -9
  337. package/out/concepts/StructureProperty__.js.map +1 -1
  338. package/out/concepts/Structure__.d.ts +31 -30
  339. package/out/concepts/Structure__.js +27 -15
  340. package/out/concepts/Structure__.js.map +1 -1
  341. package/out/concepts/SwitchCase__.d.ts +12 -11
  342. package/out/concepts/SwitchCase__.js +69 -31
  343. package/out/concepts/SwitchCase__.js.map +1 -1
  344. package/out/concepts/SwitchStatement__.d.ts +9 -8
  345. package/out/concepts/SwitchStatement__.js +27 -7
  346. package/out/concepts/SwitchStatement__.js.map +1 -1
  347. package/out/concepts/Theme__.js +4 -3
  348. package/out/concepts/Theme__.js.map +1 -1
  349. package/out/concepts/Transactional__.js +4 -3
  350. package/out/concepts/Transactional__.js.map +1 -1
  351. package/out/concepts/TriggerEvent__.d.ts +15 -15
  352. package/out/concepts/TriggerEvent__.js +6 -5
  353. package/out/concepts/TriggerEvent__.js.map +1 -1
  354. package/out/concepts/TriggerLauncher__.d.ts +15 -10
  355. package/out/concepts/TriggerLauncher__.js +54 -32
  356. package/out/concepts/TriggerLauncher__.js.map +1 -1
  357. package/out/concepts/TypeAnnotation__.d.ts +28 -27
  358. package/out/concepts/TypeAnnotation__.js +144 -124
  359. package/out/concepts/TypeAnnotation__.js.map +1 -1
  360. package/out/concepts/TypeParam__.d.ts +1 -0
  361. package/out/concepts/TypeParam__.js +12 -5
  362. package/out/concepts/TypeParam__.js.map +1 -1
  363. package/out/concepts/UnaryExpression__.d.ts +4 -3
  364. package/out/concepts/UnaryExpression__.js +31 -20
  365. package/out/concepts/UnaryExpression__.js.map +1 -1
  366. package/out/concepts/Unparsed__.d.ts +1 -0
  367. package/out/concepts/Unparsed__.js +12 -5
  368. package/out/concepts/Unparsed__.js.map +1 -1
  369. package/out/concepts/UseComponent__.js +4 -3
  370. package/out/concepts/UseComponent__.js.map +1 -1
  371. package/out/concepts/ValidationRule__.d.ts +14 -14
  372. package/out/concepts/ValidationRule__.js +19 -17
  373. package/out/concepts/ValidationRule__.js.map +1 -1
  374. package/out/concepts/Variable__.d.ts +4 -3
  375. package/out/concepts/Variable__.js +39 -23
  376. package/out/concepts/Variable__.js.map +1 -1
  377. package/out/concepts/ViewBlock__.js +4 -3
  378. package/out/concepts/ViewBlock__.js.map +1 -1
  379. package/out/concepts/ViewComponent__.d.ts +90 -90
  380. package/out/concepts/ViewComponent__.js +16 -15
  381. package/out/concepts/ViewComponent__.js.map +1 -1
  382. package/out/concepts/ViewElement__.d.ts +92 -86
  383. package/out/concepts/ViewElement__.js +258 -200
  384. package/out/concepts/ViewElement__.js.map +1 -1
  385. package/out/concepts/View__.d.ts +92 -92
  386. package/out/concepts/View__.js +173 -63
  387. package/out/concepts/View__.js.map +1 -1
  388. package/out/concepts/WhileStatement__.d.ts +12 -11
  389. package/out/concepts/WhileStatement__.js +46 -23
  390. package/out/concepts/WhileStatement__.js.map +1 -1
  391. package/out/concepts/basics/stdlib/index.js +17 -1
  392. package/out/concepts/basics/stdlib/index.js.map +1 -1
  393. package/out/concepts/basics/stdlib/nasl.browser.js +36 -0
  394. package/out/concepts/basics/stdlib/nasl.browser.js.map +1 -1
  395. package/out/concepts/basics/stdlib/nasl.event.d.ts +3 -0
  396. package/out/concepts/basics/stdlib/nasl.event.js +23 -0
  397. package/out/concepts/basics/stdlib/nasl.event.js.map +1 -0
  398. package/out/concepts/basics/stdlib/nasl.ui.js +45 -0
  399. package/out/concepts/basics/stdlib/nasl.ui.js.map +1 -1
  400. package/out/concepts/basics/stdlib/nasl.util.js +6 -22
  401. package/out/concepts/basics/stdlib/nasl.util.js.map +1 -1
  402. package/out/concepts/index__.d.ts +2 -1
  403. package/out/concepts/index__.js +2 -1
  404. package/out/concepts/index__.js.map +1 -1
  405. package/out/concepts/types__.d.ts +2 -1
  406. package/out/decorators/index.d.ts +1 -1
  407. package/out/decorators/index.js +20 -7
  408. package/out/decorators/index.js.map +1 -1
  409. package/out/decorators/promise.d.ts +7 -0
  410. package/out/decorators/promise.js +28 -0
  411. package/out/decorators/promise.js.map +1 -0
  412. package/out/enums/KEYWORDS.js.map +1 -1
  413. package/out/enums/LEVEL_NAME_MAP.js.map +1 -1
  414. package/out/generator/compileComponent.js.map +1 -1
  415. package/out/generator/genBundleFiles.d.ts +4 -1
  416. package/out/generator/genBundleFiles.js +15 -11
  417. package/out/generator/genBundleFiles.js.map +1 -1
  418. package/out/generator/genHash.js.map +1 -1
  419. package/out/generator/genMetaData.js +12 -8
  420. package/out/generator/genMetaData.js.map +1 -1
  421. package/out/generator/genReleaseBody.js +33 -35
  422. package/out/generator/genReleaseBody.js.map +1 -1
  423. package/out/generator/microApp.js +2 -1
  424. package/out/generator/microApp.js.map +1 -1
  425. package/out/generator/permission.js +31 -30
  426. package/out/generator/permission.js.map +1 -1
  427. package/out/generator/styleReplacer.js +4 -7
  428. package/out/generator/styleReplacer.js.map +1 -1
  429. package/out/index.d.ts +0 -2
  430. package/out/index.js +0 -3
  431. package/out/index.js.map +1 -1
  432. package/out/manager/diagnostic.d.ts +1 -1
  433. package/out/manager/diagnostic.js.map +1 -1
  434. package/out/manager/stepRecorder.js +13 -9
  435. package/out/manager/stepRecorder.js.map +1 -1
  436. package/out/natural/RequirementAnalyzer.d.ts +22 -0
  437. package/out/natural/RequirementAnalyzer.js +196 -0
  438. package/out/natural/RequirementAnalyzer.js.map +1 -0
  439. package/out/natural/RequirementExecutor.d.ts +51 -0
  440. package/out/natural/RequirementExecutor.js +692 -0
  441. package/out/natural/RequirementExecutor.js.map +1 -0
  442. package/out/natural/componentData.d.ts +31 -0
  443. package/out/natural/componentData.js +85 -0
  444. package/out/natural/componentData.js.map +1 -0
  445. package/out/natural/genNaturalTS.d.ts +3 -0
  446. package/out/natural/genNaturalTS.js +76 -0
  447. package/out/natural/genNaturalTS.js.map +1 -0
  448. package/out/natural/index.d.ts +4 -0
  449. package/out/natural/index.js +21 -0
  450. package/out/natural/index.js.map +1 -0
  451. package/out/natural/knowledgeMap.d.ts +4 -0
  452. package/out/natural/knowledgeMap.js +40 -0
  453. package/out/natural/knowledgeMap.js.map +1 -0
  454. package/out/natural/naslStdlibMap.d.ts +2 -0
  455. package/out/natural/naslStdlibMap.js +26 -0
  456. package/out/natural/naslStdlibMap.js.map +1 -0
  457. package/out/natural/transformTSCode.d.ts +7 -0
  458. package/out/natural/transformTSCode.js +760 -0
  459. package/out/natural/transformTSCode.js.map +1 -0
  460. package/out/sentry/index.d.ts +2 -1
  461. package/out/sentry/index.js.map +1 -1
  462. package/out/server/createUiTs.js +28 -16
  463. package/out/server/createUiTs.js.map +1 -1
  464. package/out/server/entity2LogicNamespace.js +24 -22
  465. package/out/server/entity2LogicNamespace.js.map +1 -1
  466. package/out/server/event.d.ts +12 -0
  467. package/out/server/event.js +52 -28
  468. package/out/server/event.js.map +1 -1
  469. package/out/server/extendBaseNode.js +55 -70
  470. package/out/server/extendBaseNode.js.map +1 -1
  471. package/out/server/formatTsUtils.js +46 -50
  472. package/out/server/formatTsUtils.js.map +1 -1
  473. package/out/server/getConnector.d.ts +3 -3
  474. package/out/server/getConnector.js +7 -8
  475. package/out/server/getConnector.js.map +1 -1
  476. package/out/server/getExtensionModules.js +2 -2
  477. package/out/server/getExtensionModules.js.map +1 -1
  478. package/out/server/getFunctions.js.map +1 -1
  479. package/out/server/getInterfaces.js.map +1 -1
  480. package/out/server/getLogging.js.map +1 -1
  481. package/out/server/getLogics.d.ts +1 -1
  482. package/out/server/getLogics.js +55 -8
  483. package/out/server/getLogics.js.map +1 -1
  484. package/out/server/getMemberIdentifier.js +13 -10
  485. package/out/server/getMemberIdentifier.js.map +1 -1
  486. package/out/server/getProcessComponents.js.map +1 -1
  487. package/out/server/getProcesses.js +21 -29
  488. package/out/server/getProcesses.js.map +1 -1
  489. package/out/server/getScope.js.map +1 -1
  490. package/out/server/getValidates.js.map +1 -1
  491. package/out/server/index.js +0 -1
  492. package/out/server/index.js.map +1 -1
  493. package/out/server/naslServer.d.ts +99 -94
  494. package/out/server/naslServer.js +490 -469
  495. package/out/server/naslServer.js.map +1 -1
  496. package/out/server/naslStdlibMap.js +6 -2
  497. package/out/server/naslStdlibMap.js.map +1 -1
  498. package/out/server/process2LogicNamespace.js.map +1 -1
  499. package/out/server/translator.d.ts +1 -1
  500. package/out/server/translator.js +52 -47
  501. package/out/server/translator.js.map +1 -1
  502. package/out/service/storage/init.d.ts +15 -1
  503. package/out/service/storage/init.js +65 -56
  504. package/out/service/storage/init.js.map +1 -1
  505. package/out/templator/genCallComponentLogic.js +1 -2
  506. package/out/templator/genCallComponentLogic.js.map +1 -1
  507. package/out/templator/genCreateBlock.js +14 -9
  508. package/out/templator/genCreateBlock.js.map +1 -1
  509. package/out/templator/genCurdEditMultipleKeyBlock.js +23 -14
  510. package/out/templator/genCurdEditMultipleKeyBlock.js.map +1 -1
  511. package/out/templator/genCurdMultipleKeyBlock.js +26 -30
  512. package/out/templator/genCurdMultipleKeyBlock.js.map +1 -1
  513. package/out/templator/genEditTableBlock.d.ts +1 -1
  514. package/out/templator/genEditTableBlock.js +14 -19
  515. package/out/templator/genEditTableBlock.js.map +1 -1
  516. package/out/templator/genEnumSelectBlock.js +1 -1
  517. package/out/templator/genEnumSelectBlock.js.map +1 -1
  518. package/out/templator/genGetBlock.js +2 -2
  519. package/out/templator/genGetBlock.js.map +1 -1
  520. package/out/templator/genGridViewBlock.d.ts +2 -2
  521. package/out/templator/genGridViewBlock.js +18 -28
  522. package/out/templator/genGridViewBlock.js.map +1 -1
  523. package/out/templator/genListViewBlock.d.ts +2 -2
  524. package/out/templator/genListViewBlock.js +9 -16
  525. package/out/templator/genListViewBlock.js.map +1 -1
  526. package/out/templator/genQueryComponent.js +22 -15
  527. package/out/templator/genQueryComponent.js.map +1 -1
  528. package/out/templator/genSelectBlock.d.ts +2 -2
  529. package/out/templator/genSelectBlock.js +21 -48
  530. package/out/templator/genSelectBlock.js.map +1 -1
  531. package/out/templator/genTableBlock.d.ts +1 -1
  532. package/out/templator/genTableBlock.js +11 -17
  533. package/out/templator/genTableBlock.js.map +1 -1
  534. package/out/templator/genUpdateBlock.js +13 -8
  535. package/out/templator/genUpdateBlock.js.map +1 -1
  536. package/out/templator/index.d.ts +4 -2
  537. package/out/templator/index.js +2 -2
  538. package/out/templator/index.js.map +1 -1
  539. package/out/templator/utils.d.ts +9 -2
  540. package/out/templator/utils.js +22 -22
  541. package/out/templator/utils.js.map +1 -1
  542. package/out/translator/index.js +27 -28
  543. package/out/translator/index.js.map +1 -1
  544. package/out/utils/index.d.ts +2 -1
  545. package/out/utils/index.js +8 -14
  546. package/out/utils/index.js.map +1 -1
  547. package/out/utils/logger.js.map +1 -1
  548. package/out/utils/sortTsString.js +3 -1
  549. package/out/utils/sortTsString.js.map +1 -1
  550. package/out/utils/string.js +8 -11
  551. package/out/utils/string.js.map +1 -1
  552. package/out/utils/time-slicing.d.ts +41 -0
  553. package/out/utils/time-slicing.js +81 -0
  554. package/out/utils/time-slicing.js.map +1 -0
  555. package/out/utils/traverse.js +4 -6
  556. package/out/utils/traverse.js.map +1 -1
  557. package/package.json +22 -20
  558. package/sandbox/stdlib/nasl.auth.ts +49 -46
  559. package/sandbox/stdlib/nasl.browser.ts +1 -0
  560. package/sandbox/stdlib/nasl.event.ts +4 -0
  561. package/sandbox/stdlib/nasl.http.ts +29 -31
  562. package/sandbox/stdlib/nasl.ui.definition.ts +13 -1
  563. package/sandbox/stdlib/nasl.ui.ts +11 -0
  564. package/sandbox-natural/stdlib/nasl.core.ts +36 -0
  565. package/sandbox-natural/stdlib/nasl.oql.ts +8 -0
  566. package/sandbox-natural/stdlib/nasl.ui.ts +56 -0
  567. package/sandbox-natural/stdlib/nasl.util.ts +26 -0
  568. package/sandbox-natural/tsconfig.json +12 -0
  569. package/src/automate/engine/utils.js +3 -0
  570. package/src/automate/upgrader/2.20.js +1 -1
  571. package/src/bak/translator.js +92 -99
  572. package/src/breakpoint/generator/AfterStartNode.ts +19 -17
  573. package/src/breakpoint/generator/BeforeEndNode.ts +17 -17
  574. package/src/breakpoint/generator/BreakpointNode.ts +243 -195
  575. package/src/breakpoint/generator/CallbackNode.ts +20 -0
  576. package/src/breakpoint/generator/FragmentNode.ts +14 -0
  577. package/src/breakpoint/generator/index.ts +107 -80
  578. package/src/breakpoint/shared/constants.ts +59 -53
  579. package/src/breakpoint/shared/operations.ts +6 -6
  580. package/src/breakpoint/shared/socket.ts +277 -223
  581. package/src/breakpoint/shared/utils.ts +166 -146
  582. package/src/breakpoint/store/core.ts +326 -297
  583. package/src/breakpoint/store/dock.ts +103 -103
  584. package/src/breakpoint/types/index.d.ts +11 -11
  585. package/src/common/BaseNode.ts +1103 -1020
  586. package/src/common/Command.ts +46 -16
  587. package/src/common/ComponentAPI.ts +72 -72
  588. package/src/common/EventEmitter.ts +80 -76
  589. package/src/common/Messager.ts +223 -224
  590. package/src/common/asyncFuncMap.ts +12 -12
  591. package/src/concepts/Abort__.ts +53 -60
  592. package/src/concepts/Anchor__.ts +158 -149
  593. package/src/concepts/AnonymousFunction__.ts +584 -551
  594. package/src/concepts/App__.ts +4278 -3669
  595. package/src/concepts/Argument__.ts +234 -210
  596. package/src/concepts/Assignee__.ts +680 -656
  597. package/src/concepts/AssignmentLine__.ts +80 -84
  598. package/src/concepts/Assignment__.ts +276 -264
  599. package/src/concepts/Attribute__.ts +183 -184
  600. package/src/concepts/AuthInterface__.ts +61 -63
  601. package/src/concepts/AuthLogicForCallInterface__.ts +540 -511
  602. package/src/concepts/AuthLogic__.ts +210 -194
  603. package/src/concepts/BackendVariable__.ts +414 -415
  604. package/src/concepts/Backend__.ts +317 -303
  605. package/src/concepts/BatchAssignment__.ts +987 -939
  606. package/src/concepts/BinaryExpression__.ts +370 -341
  607. package/src/concepts/BindAttribute__.ts +1056 -1011
  608. package/src/concepts/BindDirective__.ts +540 -542
  609. package/src/concepts/BindEvent__.ts +992 -866
  610. package/src/concepts/BindStyle__.ts +442 -451
  611. package/src/concepts/BooleanLiteral__.ts +89 -90
  612. package/src/concepts/CallAuthInterface__.ts +458 -433
  613. package/src/concepts/CallConnector__.ts +209 -164
  614. package/src/concepts/CallFunction__.ts +600 -600
  615. package/src/concepts/CallInterface__.ts +752 -725
  616. package/src/concepts/CallLogic__.ts +1328 -1236
  617. package/src/concepts/CallQueryComponent__.ts +1580 -1501
  618. package/src/concepts/Comment__.ts +69 -68
  619. package/src/concepts/CompletionProperty__.ts +250 -250
  620. package/src/concepts/ConfigGroup__.ts +312 -296
  621. package/src/concepts/ConfigPropertyValue__.ts +81 -82
  622. package/src/concepts/ConfigProperty__.ts +374 -357
  623. package/src/concepts/Configuration__.ts +288 -276
  624. package/src/concepts/Connection__.ts +426 -0
  625. package/src/concepts/ConnectorTrigger__.ts +146 -142
  626. package/src/concepts/Connector__.ts +1090 -1048
  627. package/src/concepts/Constant__.ts +226 -219
  628. package/src/concepts/DataElement__.ts +108 -115
  629. package/src/concepts/DataSource__.ts +508 -472
  630. package/src/concepts/DatabaseTypeAnnotation__.ts +53 -59
  631. package/src/concepts/Destination__.ts +808 -746
  632. package/src/concepts/End__.ts +85 -89
  633. package/src/concepts/EntityIndex__.ts +206 -202
  634. package/src/concepts/EntityProperty__.ts +825 -791
  635. package/src/concepts/Entity__.ts +921 -864
  636. package/src/concepts/EnumItem__.ts +133 -125
  637. package/src/concepts/Enum__.ts +347 -337
  638. package/src/concepts/Event__.ts +305 -292
  639. package/src/concepts/ExternalDestination__.ts +269 -280
  640. package/src/concepts/ForEachStatement__.ts +583 -531
  641. package/src/concepts/FrontendLibrary__.ts +507 -485
  642. package/src/concepts/FrontendVariable__.ts +44 -49
  643. package/src/concepts/Frontend__.ts +1239 -1187
  644. package/src/concepts/Function__.ts +1110 -1045
  645. package/src/concepts/Identifier__.ts +276 -272
  646. package/src/concepts/IfStatement__.ts +467 -436
  647. package/src/concepts/Integration__.ts +136 -137
  648. package/src/concepts/InterfaceParam__.ts +239 -238
  649. package/src/concepts/Interface__.ts +969 -948
  650. package/src/concepts/JSBlock__.ts +83 -83
  651. package/src/concepts/JavaLogic__.ts +101 -106
  652. package/src/concepts/LogicItem__.ts +307 -237
  653. package/src/concepts/Logic__.ts +2301 -2088
  654. package/src/concepts/MatchCase__.ts +886 -779
  655. package/src/concepts/Match__.ts +728 -659
  656. package/src/concepts/MemberExpression__.ts +330 -311
  657. package/src/concepts/MicroApp__.ts +91 -97
  658. package/src/concepts/Module__.ts +2590 -2275
  659. package/src/concepts/MsgTriggerEvent__.ts +297 -281
  660. package/src/concepts/MsgTriggerLauncher__.ts +286 -256
  661. package/src/concepts/Namespace__.ts +2579 -2466
  662. package/src/concepts/NewComposite__.ts +1487 -1350
  663. package/src/concepts/NewList__.ts +464 -450
  664. package/src/concepts/NewMap__.ts +691 -674
  665. package/src/concepts/New__.ts +42 -49
  666. package/src/concepts/NullLiteral__.ts +66 -72
  667. package/src/concepts/NumericLiteral__.ts +169 -169
  668. package/src/concepts/OqlQueryComponent__.ts +282 -279
  669. package/src/concepts/OverriddenLogic__.ts +2142 -2097
  670. package/src/concepts/Param__.ts +500 -442
  671. package/src/concepts/Point__.ts +53 -59
  672. package/src/concepts/ProcessComponent__.ts +497 -475
  673. package/src/concepts/ProcessElement__.ts +1852 -1780
  674. package/src/concepts/ProcessOutcome__.ts +59 -64
  675. package/src/concepts/ProcessOutcomes__.ts +59 -64
  676. package/src/concepts/Process__.ts +1491 -1428
  677. package/src/concepts/QueryAggregateExpression__.ts +135 -142
  678. package/src/concepts/QueryFieldExpression__.ts +138 -142
  679. package/src/concepts/QueryFromExpression__.ts +246 -254
  680. package/src/concepts/QueryGroupByExpression__.ts +130 -136
  681. package/src/concepts/QueryJoinExpression__.ts +441 -438
  682. package/src/concepts/QueryLimitExpression__.ts +159 -166
  683. package/src/concepts/QueryOrderByExpression__.ts +173 -180
  684. package/src/concepts/QuerySelectExpression__.ts +464 -439
  685. package/src/concepts/Rect__.ts +73 -79
  686. package/src/concepts/Return__.ts +366 -345
  687. package/src/concepts/Role__.ts +146 -147
  688. package/src/concepts/SelectMembers__.ts +358 -350
  689. package/src/concepts/Slot__.ts +152 -153
  690. package/src/concepts/SqlQueryComponent__.ts +230 -228
  691. package/src/concepts/Start__.ts +45 -52
  692. package/src/concepts/StringInterpolation__.ts +323 -296
  693. package/src/concepts/StringLiteral__.ts +113 -115
  694. package/src/concepts/StructureProperty__.ts +306 -295
  695. package/src/concepts/Structure__.ts +615 -578
  696. package/src/concepts/SwitchCase__.ts +326 -290
  697. package/src/concepts/SwitchStatement__.ts +236 -229
  698. package/src/concepts/Theme__.ts +64 -68
  699. package/src/concepts/Transactional__.ts +159 -153
  700. package/src/concepts/TriggerEvent__.ts +285 -274
  701. package/src/concepts/TriggerLauncher__.ts +232 -196
  702. package/src/concepts/TypeAnnotation__.ts +1049 -1011
  703. package/src/concepts/TypeParam__.ts +48 -50
  704. package/src/concepts/UnaryExpression__.ts +163 -153
  705. package/src/concepts/Unparsed__.ts +81 -82
  706. package/src/concepts/UseComponent__.ts +53 -59
  707. package/src/concepts/ValidationRule__.ts +524 -544
  708. package/src/concepts/Variable__.ts +419 -397
  709. package/src/concepts/ViewBlock__.ts +58 -64
  710. package/src/concepts/ViewComponent__.ts +1323 -1261
  711. package/src/concepts/ViewElement__.ts +2537 -2351
  712. package/src/concepts/View__.ts +2461 -2245
  713. package/src/concepts/WhileStatement__.ts +293 -272
  714. package/src/concepts/basics/stdlib/index.ts +17 -1
  715. package/src/concepts/basics/stdlib/nasl.browser.ts +36 -0
  716. package/src/concepts/basics/stdlib/nasl.event.ts +18 -0
  717. package/src/concepts/basics/stdlib/nasl.ui.ts +45 -0
  718. package/src/concepts/basics/stdlib/nasl.util.ts +6 -22
  719. package/src/concepts/index__.ts +2 -1
  720. package/src/concepts/types__.ts +123 -121
  721. package/src/decorators/index.ts +75 -77
  722. package/src/decorators/promise.ts +28 -0
  723. package/src/enums/KEYWORDS.ts +1228 -1228
  724. package/src/enums/LEVEL_NAME_MAP.ts +24 -24
  725. package/src/generator/compileComponent.ts +10 -10
  726. package/src/generator/genBundleFiles.ts +300 -291
  727. package/src/generator/genHash.ts +2 -2
  728. package/src/generator/genMetaData.ts +280 -261
  729. package/src/generator/genReleaseBody.ts +312 -291
  730. package/src/generator/icestark.ts +1 -1
  731. package/src/generator/microApp.ts +17 -20
  732. package/src/generator/permission.ts +241 -232
  733. package/src/generator/qiankun.ts +1 -1
  734. package/src/generator/styleReplacer.ts +28 -31
  735. package/src/index.ts +0 -3
  736. package/src/manager/diagnostic.ts +84 -82
  737. package/src/manager/stepRecorder.ts +106 -94
  738. package/src/natural/RequirementAnalyzer.ts +208 -0
  739. package/src/natural/RequirementExecutor.ts +685 -0
  740. package/src/natural/componentData.ts +81 -0
  741. package/src/natural/genNaturalTS.ts +77 -0
  742. package/src/natural/index.ts +4 -0
  743. package/src/natural/knowledgeMap.ts +39 -0
  744. package/src/natural/naslStdlibMap.ts +24 -0
  745. package/src/natural/transformTSCode.ts +692 -0
  746. package/src/sentry/index.ts +109 -104
  747. package/src/server/createUiTs.ts +190 -184
  748. package/src/server/entity2LogicNamespace.ts +379 -359
  749. package/src/server/event.js +145 -121
  750. package/src/server/extendBaseNode.ts +461 -456
  751. package/src/server/formatTsUtils.ts +712 -713
  752. package/src/server/getConnector.ts +33 -33
  753. package/src/server/getExtensionModules.ts +23 -22
  754. package/src/server/getFunctions.ts +6 -6
  755. package/src/server/getInterfaces.ts +38 -37
  756. package/src/server/getLogging.ts +1 -1
  757. package/src/server/getLogics.ts +391 -312
  758. package/src/server/getMemberIdentifier.ts +286 -281
  759. package/src/server/getProcessComponents.ts +2 -2
  760. package/src/server/getProcesses.ts +548 -534
  761. package/src/server/getScope.ts +51 -51
  762. package/src/server/getValidates.ts +3 -3
  763. package/src/server/index.ts +29 -30
  764. package/src/server/naslServer.ts +4303 -4222
  765. package/src/server/naslStdlibMap.ts +43 -39
  766. package/src/server/process2LogicNamespace.ts +97 -97
  767. package/src/server/translator.ts +740 -746
  768. package/src/service/storage/init.ts +761 -728
  769. package/src/templator/genCallComponentLogic.ts +14 -15
  770. package/src/templator/genCreateBlock.ts +257 -229
  771. package/src/templator/genCurdEditMultipleKeyBlock.ts +333 -317
  772. package/src/templator/genCurdMultipleKeyBlock.ts +503 -475
  773. package/src/templator/genEditTableBlock.ts +194 -187
  774. package/src/templator/genEnumSelectBlock.ts +13 -7
  775. package/src/templator/genGetBlock.ts +57 -55
  776. package/src/templator/genGridViewBlock.ts +195 -211
  777. package/src/templator/genListViewBlock.ts +62 -72
  778. package/src/templator/genQueryComponent.ts +337 -287
  779. package/src/templator/genSelectBlock.ts +283 -297
  780. package/src/templator/genTableBlock.ts +160 -166
  781. package/src/templator/genUpdateBlock.ts +269 -255
  782. package/src/templator/index.ts +4 -4
  783. package/src/templator/utils.ts +491 -463
  784. package/src/translator/index.ts +84 -84
  785. package/src/translator/lsp.ts +22 -22
  786. package/src/translator/tsp.ts +6 -6
  787. package/src/utils/index.ts +115 -117
  788. package/src/utils/logger.ts +3 -4
  789. package/src/utils/sortTsString.ts +34 -32
  790. package/src/utils/string.ts +47 -48
  791. package/src/utils/time-slicing.ts +109 -0
  792. package/src/utils/traverse.ts +114 -126
  793. package/test/concepts/call-interface/__snapshots__/toEmbeddedTS.spec.ts.snap +71 -0
  794. package/test/concepts/call-interface/__snapshots__/toJS.spec.ts.snap +140 -0
  795. package/test/concepts/call-interface/constant.ts +5 -0
  796. package/test/concepts/call-interface/fixtures/only-interface.json +158 -0
  797. package/test/concepts/call-interface/fixtures/with-body-complex-argument.json +455 -0
  798. package/test/concepts/call-interface/fixtures/with-body-no-argument.json +187 -0
  799. package/test/concepts/call-interface/fixtures/with-body-simple-argument.json +225 -0
  800. package/test/concepts/call-interface/fixtures/with-headers-no-argument.json +213 -0
  801. package/test/concepts/call-interface/fixtures/with-headers.json +192 -0
  802. package/test/concepts/call-interface/fixtures/with-query-no-argument.json +213 -0
  803. package/test/concepts/call-interface/fixtures/with-query.json +192 -0
  804. package/test/concepts/call-interface/toEmbeddedTS.spec.ts +14 -0
  805. package/test/concepts/call-interface/toJS.spec.ts +14 -0
  806. package/test/concepts/call-logic/__snapshots__/toEmbeddedTS.spec.ts.snap +74 -0
  807. package/test/concepts/call-logic/__snapshots__/toJS.spec.ts.snap +141 -0
  808. package/test/concepts/call-logic/constant.ts +5 -0
  809. package/test/concepts/call-logic/fixtures/entries-get-with-arguments.json +223 -0
  810. package/test/concepts/call-logic/fixtures/entries-update-with-arguments.json +359 -0
  811. package/test/concepts/call-logic/fixtures/global-logic-argument-no-expression.json +209 -0
  812. package/test/concepts/call-logic/fixtures/global-logic-argument-some-expression.json +311 -0
  813. package/test/concepts/call-logic/fixtures/only-call-logic.json +10 -0
  814. package/test/concepts/call-logic/fixtures/view-buildin-logic-with-argument.json +128 -0
  815. package/test/concepts/call-logic/fixtures/view-component-logic-no-argument.json +126 -0
  816. package/test/concepts/call-logic/fixtures/view-component-with-validation.json +244 -0
  817. package/test/concepts/call-logic/toEmbeddedTS.spec.ts +14 -0
  818. package/test/concepts/call-logic/toJS.spec.ts +14 -0
  819. package/test/concepts/match/__snapshots__/toEmbeddedTS.spec.ts.snap +66 -0
  820. package/test/concepts/match/__snapshots__/toJS.spec.ts.snap +40 -0
  821. package/test/concepts/match/constant.ts +5 -0
  822. package/test/concepts/match/fixtures/isExpression.json +259 -0
  823. package/test/concepts/match/fixtures/lastBodyIf.json +268 -0
  824. package/test/concepts/match/fixtures/noExpression.json +176 -0
  825. package/test/concepts/match/toEmbeddedTS.spec.ts +14 -0
  826. package/test/concepts/match/toJS.spec.ts +14 -0
  827. package/test/concepts/utils.ts +76 -3
  828. package/test/concepts/validation-rule/__snapshots__/toEmbeddedTS.spec.ts.snap +3 -3
  829. package/test/concepts/validation-rule/__snapshots__/toJS.spec.ts.snap +16 -0
  830. package/test/concepts/validation-rule/constant.ts +5 -0
  831. package/test/concepts/validation-rule/toEmbeddedTS.spec.ts +10 -17
  832. package/test/concepts/validation-rule/toJS.spec.ts +14 -0
  833. package/test/concepts/view-element/__snapshots__/toEmbeddedTS.spec.ts.snap +68 -0
  834. package/test/concepts/view-element/__snapshots__/toVue.spec.ts.snap +44 -0
  835. package/test/concepts/view-element/constant.ts +5 -0
  836. package/test/concepts/view-element/fixtures/default-not-found.json +322 -0
  837. package/test/concepts/view-element/toEmbeddedTS.spec.ts +14 -0
  838. package/test/concepts/view-element/toVue.spec.ts +14 -0
  839. package/test/setup.ts +7 -0
  840. package/ts-worker/src/index.js +0 -2
  841. package/tsconfig.json +21 -21
  842. package/bin/naslc +0 -3
@@ -1,19 +1,18 @@
1
+ import { v4 as uuidv4 } from 'uuid';
1
2
  import { TranslatorState, shiftState, withSourceMap } from '../translator';
2
- import { ElementToVueOptions } from './ViewElement__';
3
+ import ViewElement, { ElementToVueOptions } from './ViewElement__';
3
4
  import MemberExpression from './MemberExpression__';
4
- //================================================================================
5
+ //= ===============================================================================
5
6
  // 从这里开始到结尾注释之间的代码由 NASL Workbench 自动生成,请不手动修改!
6
7
  // ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
7
- //================================================================================
8
+ //= ===============================================================================
8
9
  import { EventPayload, Params } from '../common/EventEmitter';
9
10
  import { concept, excludedInJSON, property } from '../decorators';
10
11
 
11
12
  import * as utils from '../utils';
12
- import { v4 as uuidv4 } from 'uuid';
13
13
  import BaseNode from '../common/BaseNode';
14
14
  import classMap from '../common/classMap';
15
15
  import LogicItem from './LogicItem__';
16
- import ViewElement from './ViewElement__';
17
16
  import View from './View__';
18
17
  import Module from './Module__';
19
18
  import App from './App__';
@@ -24,476 +23,478 @@ import Frontend from './Frontend__';
24
23
  */
25
24
  @concept('元素指令')
26
25
  export class BindDirective extends BaseNode {
27
- /**
28
- * 产品概念
29
- */
30
- @property()
31
- concept: 'BindDirective' = 'BindDirective';
32
-
33
- /**
34
- * 元素指令名称
35
- */
36
- @property()
37
- name: string = undefined;
38
-
39
- /**
40
- * 原始名称
41
- */
42
- @property()
43
- rawName: string = undefined;
44
-
45
- /**
46
- * type
47
- */
48
- @property()
49
- type: 'string' | 'static' | 'dynamic' = undefined;
50
-
51
- /**
52
- * 指令值
53
- */
54
- @property()
55
- value: string = undefined;
56
-
57
- /**
58
- * 属性表达式
59
- */
60
- @property('LogicItem')
61
- expression: LogicItem = undefined;
62
-
63
- /**
64
- * 指令参数
65
- */
66
- @property()
67
- arg: string = undefined;
68
-
69
- /**
70
- * 指令修饰器
71
- */
72
- @property()
73
- modifiers: string = undefined;
74
-
75
- /**
76
- * 草稿态
77
- */
78
- @property('LogicItem')
79
- playground: Array<LogicItem> = [];
80
-
81
- /**
82
- * 祖先 ViewElement
83
- */
84
- get element() {
85
- return this.getAncestor('ViewElement') as ViewElement;
86
- }
87
- /**
88
- * 祖先 View
89
- */
90
- get view() {
91
- return this.getAncestor('View') as View;
92
- }
93
- /**
94
- * 祖先 Module
95
- */
96
- get module() {
97
- return this.getAncestor('Module') as Module;
98
- }
99
- /**
100
- * 祖先 App
101
- */
102
- get app() {
103
- return this.getAncestor('App') as App;
104
- }
105
- /**
106
- * 祖先 Frontend
107
- */
108
- get frontend() {
109
- return this.getAncestor('Frontend') as Frontend;
110
- }
111
-
112
- /**
113
- * @param source 需要合并的部分参数
114
- */
115
- constructor(source?: Partial<BindDirective>) {
116
- source = Object.assign({}, BindDirective.getDefaultOptions(), source);
117
- super(source);
118
- super.subConstructor(source);
119
- }
120
- getClassName() {
121
- return 'BindDirective';
122
- }
123
-
124
- static from(source: any, parentNode?: any, parentKey?: string): BindDirective {
125
- return super.from(source, parentNode, parentKey) as BindDirective;
126
- }
127
-
128
- /**
129
- * 从父级删除该节点
130
- * @internal
131
- */
132
- _delete() {
133
- let params: Params = null;
134
- if (this.parentNode) {
135
- params = (this.parentNode as any)?.__removeBindDirective?.(this);
136
- }
137
- return params;
138
- }
139
- /**
140
- * 设置属性表达式
141
- */
142
- setExpression(expression: LogicItem) {
143
- expression._delete();
144
- const relationOptions = { parentNode: this, parentKey: 'expression' };
145
- Object.assign(expression, relationOptions);
146
- const object = {
147
- expression,
148
- };
149
- this.update({
150
- ...object,
151
- });
152
- }
153
-
154
-
155
-
156
-
157
-
158
- /**
159
- * 插入逻辑项
160
- * @internal
161
- * @param logicItemOptions 逻辑项参数
162
- */
163
- _insertItemInPlaygroundAt(logicItemOptions: Partial<LogicItem>, index: number): LogicItem;
164
-
165
- /**
166
- * 插入逻辑项
167
- * @internal
168
- * @param logicItem 已有的逻辑项实例
169
- */
170
- _insertItemInPlaygroundAt(logicItem: LogicItem, index: number): LogicItem;
171
-
172
- _insertItemInPlaygroundAt(options: Partial<LogicItem> | LogicItem, index: number) {
173
- const logicItemOptions: any = {};
174
- const relationOptions = { parentNode: this, parentKey: 'playground' };
175
- let logicItem: LogicItem;
176
- if (options instanceof LogicItem) {
177
- options.ensureDelete(); // 同一实例不支持多处存在
178
- logicItem = options;
179
- Object.assign(logicItem, relationOptions);
180
- } else {
181
- logicItem = LogicItem.from({
182
- ...logicItemOptions,
183
- ...options,
184
- }, this, 'playground');
185
- }
186
- this.playground.splice(index, 0, logicItem);
187
- return logicItem;
188
- }
189
-
190
-
191
-
192
- /**
193
- * 插入逻辑项
194
- * @param logicItemOptions 逻辑项参数
195
- */
196
- insertItemInPlaygroundAt(logicItemOptions: Partial<LogicItem>, index: number): LogicItem;
197
-
198
- /**
199
- * 插入逻辑项
200
- * @param logicItem 已有的逻辑项实例
201
- */
202
- insertItemInPlaygroundAt(logicItem: LogicItem, index: number): LogicItem;
203
-
204
- insertItemInPlaygroundAt(options: Partial<LogicItem> | LogicItem, index: number) {
205
- const node = this._insertItemInPlaygroundAt(options as any, index);
206
- node.create({
207
- index,
208
- parentNode: this,
209
- parentKey: 'playground',
210
- });
211
- return node;
212
- }
213
-
214
-
215
-
216
- /**
217
- * 添加逻辑项
218
- * @internal
219
- * @param logicItemOptions 逻辑项参数
220
- */
221
- _addItemInPlayground(logicItemOptions: Partial<LogicItem>): LogicItem;
222
-
223
- /**
224
- * 添加逻辑项
225
- * @internal
226
- * @param logicItem 已有的逻辑项实例
227
- */
228
- _addItemInPlayground(logicItem: LogicItem): LogicItem;
229
-
230
- _addItemInPlayground(options?: Partial<LogicItem> | LogicItem) {
231
- const index = this.playground.length;
232
- return this._insertItemInPlaygroundAt(options as any, index);
26
+ /**
27
+ * 产品概念
28
+ */
29
+ @property()
30
+ concept: 'BindDirective' = 'BindDirective';
31
+
32
+ /**
33
+ * 元素指令名称
34
+ */
35
+ @property()
36
+ name: string = undefined;
37
+
38
+ /**
39
+ * 原始名称
40
+ */
41
+ @property()
42
+ rawName: string = undefined;
43
+
44
+ /**
45
+ * type
46
+ */
47
+ @property()
48
+ type: 'string' | 'static' | 'dynamic' = undefined;
49
+
50
+ /**
51
+ * 指令值
52
+ */
53
+ @property()
54
+ value: string = undefined;
55
+
56
+ /**
57
+ * 属性表达式
58
+ */
59
+ @property('LogicItem')
60
+ expression: LogicItem = undefined;
61
+
62
+ /**
63
+ * 指令参数
64
+ */
65
+ @property()
66
+ arg: string = undefined;
67
+
68
+ /**
69
+ * 指令修饰器
70
+ */
71
+ @property()
72
+ modifiers: string = undefined;
73
+
74
+ /**
75
+ * 草稿态
76
+ */
77
+ @property('LogicItem')
78
+ playground: Array<LogicItem> = [];
79
+
80
+ /**
81
+ * 祖先 ViewElement
82
+ */
83
+ get element() {
84
+ return this.getAncestor('ViewElement') as ViewElement;
85
+ }
86
+
87
+ /**
88
+ * 祖先 View
89
+ */
90
+ get view() {
91
+ return this.getAncestor('View') as View;
92
+ }
93
+
94
+ /**
95
+ * 祖先 Module
96
+ */
97
+ get module() {
98
+ return this.getAncestor('Module') as Module;
99
+ }
100
+
101
+ /**
102
+ * 祖先 App
103
+ */
104
+ get app() {
105
+ return this.getAncestor('App') as App;
106
+ }
107
+
108
+ /**
109
+ * 祖先 Frontend
110
+ */
111
+ get frontend() {
112
+ return this.getAncestor('Frontend') as Frontend;
113
+ }
114
+
115
+ /**
116
+ * @param source 需要合并的部分参数
117
+ */
118
+ constructor(source?: Partial<BindDirective>) {
119
+ // @ts-ignore
120
+ source = { ...BindDirective.getDefaultOptions(), ...source };
121
+ super(source);
122
+ super.subConstructor(source);
123
+ }
124
+
125
+ getClassName() {
126
+ return 'BindDirective';
127
+ }
128
+
129
+ static from(source: any, parentNode?: any, parentKey?: string): BindDirective {
130
+ return super.from(source, parentNode, parentKey) as BindDirective;
131
+ }
132
+
133
+ /**
134
+ * 从父级删除该节点
135
+ * @internal
136
+ */
137
+ _delete() {
138
+ let params: Params = null;
139
+ if (this.parentNode) {
140
+ params = (this.parentNode as any)?.__removeBindDirective?.(this);
233
141
  }
234
-
235
-
236
-
237
- /**
238
- * 添加逻辑项
239
- * @param logicItemOptions 逻辑项参数
240
- */
241
- addItemInPlayground(logicItemOptions: Partial<LogicItem>): LogicItem;
242
-
243
- /**
244
- * 添加逻辑项
245
- * @param logicItem 已有的逻辑项实例
246
- */
247
- addItemInPlayground(logicItem: LogicItem): LogicItem;
248
-
249
- addItemInPlayground(options?: Partial<LogicItem> | LogicItem) {
250
- const node = this._addItemInPlayground(options as any);
251
- const index = this.playground.indexOf(node);
252
- node.create({
253
- index,
254
- parentNode: this,
255
- parentKey: 'playground',
256
- });
257
- return node;
142
+ return params;
143
+ }
144
+
145
+ /**
146
+ * 设置属性表达式
147
+ */
148
+ setExpression(expression: LogicItem) {
149
+ expression._delete();
150
+ const relationOptions = { parentNode: this, parentKey: 'expression' };
151
+ Object.assign(expression, relationOptions);
152
+ const object = {
153
+ expression,
154
+ };
155
+ this.update({
156
+ ...object,
157
+ });
158
+ }
159
+
160
+ /**
161
+ * 插入逻辑项
162
+ * @internal
163
+ * @param logicItemOptions 逻辑项参数
164
+ */
165
+ _insertItemInPlaygroundAt(logicItemOptions: Partial<LogicItem>, index: number): LogicItem;
166
+
167
+ /**
168
+ * 插入逻辑项
169
+ * @internal
170
+ * @param logicItem 已有的逻辑项实例
171
+ */
172
+ _insertItemInPlaygroundAt(logicItem: LogicItem, index: number): LogicItem;
173
+
174
+ _insertItemInPlaygroundAt(options: Partial<LogicItem> | LogicItem, index: number) {
175
+ const logicItemOptions: any = {};
176
+ const relationOptions = { parentNode: this, parentKey: 'playground' };
177
+ let logicItem: LogicItem;
178
+ if (options instanceof LogicItem) {
179
+ options.ensureDelete(); // 同一实例不支持多处存在
180
+ logicItem = options;
181
+ Object.assign(logicItem, relationOptions);
182
+ } else {
183
+ logicItem = LogicItem.from(
184
+ {
185
+ ...logicItemOptions,
186
+ ...options,
187
+ },
188
+ this,
189
+ 'playground'
190
+ );
258
191
  }
259
-
260
-
261
-
262
-
263
- /**
264
- * 删除逻辑项
265
- * @param name 逻辑项名称
266
- */
267
- removeExpression(name: string): void;
268
-
269
- /**
270
- * 删除逻辑项
271
- * @param expression 已有的逻辑项实例
272
- */
273
- removeExpression(expression: LogicItem): void;
274
-
275
- removeExpression(options: string | LogicItem) {
276
- let expression: LogicItem;
277
- if (typeof options === 'string') {
278
- expression = this.expression;
279
- if (!expression) {
280
- throw new Error('找不到逻辑项 ' + options);
281
- }
282
- } else {
283
- expression = options;
284
- }
285
- return expression.delete();
192
+ this.playground.splice(index, 0, logicItem);
193
+ return logicItem;
194
+ }
195
+
196
+ /**
197
+ * 插入逻辑项
198
+ * @param logicItemOptions 逻辑项参数
199
+ */
200
+ insertItemInPlaygroundAt(logicItemOptions: Partial<LogicItem>, index: number): LogicItem;
201
+
202
+ /**
203
+ * 插入逻辑项
204
+ * @param logicItem 已有的逻辑项实例
205
+ */
206
+ insertItemInPlaygroundAt(logicItem: LogicItem, index: number): LogicItem;
207
+
208
+ insertItemInPlaygroundAt(options: Partial<LogicItem> | LogicItem, index: number) {
209
+ const node = this._insertItemInPlaygroundAt(options as any, index);
210
+ node.create({
211
+ index,
212
+ parentNode: this,
213
+ parentKey: 'playground',
214
+ });
215
+ return node;
216
+ }
217
+
218
+ /**
219
+ * 添加逻辑项
220
+ * @internal
221
+ * @param logicItemOptions 逻辑项参数
222
+ */
223
+ _addItemInPlayground(logicItemOptions: Partial<LogicItem>): LogicItem;
224
+
225
+ /**
226
+ * 添加逻辑项
227
+ * @internal
228
+ * @param logicItem 已有的逻辑项实例
229
+ */
230
+ _addItemInPlayground(logicItem: LogicItem): LogicItem;
231
+
232
+ _addItemInPlayground(options?: Partial<LogicItem> | LogicItem) {
233
+ const index = this.playground.length;
234
+ return this._insertItemInPlaygroundAt(options as any, index);
235
+ }
236
+
237
+ /**
238
+ * 添加逻辑项
239
+ * @param logicItemOptions 逻辑项参数
240
+ */
241
+ addItemInPlayground(logicItemOptions: Partial<LogicItem>): LogicItem;
242
+
243
+ /**
244
+ * 添加逻辑项
245
+ * @param logicItem 已有的逻辑项实例
246
+ */
247
+ addItemInPlayground(logicItem: LogicItem): LogicItem;
248
+
249
+ addItemInPlayground(options?: Partial<LogicItem> | LogicItem) {
250
+ const node = this._addItemInPlayground(options as any);
251
+ const index = this.playground.indexOf(node);
252
+ node.create({
253
+ index,
254
+ parentNode: this,
255
+ parentKey: 'playground',
256
+ });
257
+ return node;
258
+ }
259
+
260
+ /**
261
+ * 删除逻辑项
262
+ * @param name 逻辑项名称
263
+ */
264
+ removeExpression(name: string): void;
265
+
266
+ /**
267
+ * 删除逻辑项
268
+ * @param expression 已有的逻辑项实例
269
+ */
270
+ removeExpression(expression: LogicItem): void;
271
+
272
+ removeExpression(options: string | LogicItem) {
273
+ let expression: LogicItem;
274
+ if (typeof options === 'string') {
275
+ expression = this.expression;
276
+ if (!expression) {
277
+ throw new Error(`找不到逻辑项 ${options}`);
278
+ }
279
+ } else {
280
+ expression = options;
286
281
  }
287
-
288
-
289
-
290
- /**
291
- * 删除逻辑项
292
- * @param logicItem 已有的逻辑项实例
293
- */
294
- removeItemInPlayground(logicItem: LogicItem): void;
295
-
296
- removeItemInPlayground(options: LogicItem) {
297
- let logicItem: LogicItem = options;
298
- return logicItem.delete();
299
- }
300
-
301
- __removeLogicItem(logicItem: LogicItem) {
302
- const parentKey = logicItem.parentKey;
303
- const params: Params = {
304
- parentNode: this,
305
- parentKey,
306
- index: -1,
307
- object: null,
308
- oldObject: logicItem,
309
- };
310
- if (parentKey) {
311
- params.parentKey = parentKey;
312
- if (Array.isArray((this as any)[parentKey])) {
313
- const index = (this as any)[parentKey].indexOf(logicItem);
314
- ~index && (this as any)[parentKey].splice(index, 1);
315
- params.index = index;
316
- } else if ((this as any)[parentKey] === logicItem) {
317
- params.index = 0;
318
- (this as any)[parentKey] = undefined;
319
- }
320
- }
321
- return params;
282
+ return expression.delete();
283
+ }
284
+
285
+ /**
286
+ * 删除逻辑项
287
+ * @param logicItem 已有的逻辑项实例
288
+ */
289
+ removeItemInPlayground(logicItem: LogicItem): void;
290
+
291
+ removeItemInPlayground(options: LogicItem) {
292
+ const logicItem: LogicItem = options;
293
+ return logicItem.delete();
294
+ }
295
+
296
+ __removeLogicItem(logicItem: LogicItem) {
297
+ const { parentKey } = logicItem;
298
+ const params: Params = {
299
+ parentNode: this,
300
+ parentKey,
301
+ index: -1,
302
+ object: null,
303
+ oldObject: logicItem,
304
+ };
305
+ if (parentKey) {
306
+ params.parentKey = parentKey;
307
+ if (Array.isArray((this as any)[parentKey])) {
308
+ const index = (this as any)[parentKey].indexOf(logicItem);
309
+ ~index && (this as any)[parentKey].splice(index, 1);
310
+ params.index = index;
311
+ } else if ((this as any)[parentKey] === logicItem) {
312
+ params.index = 0;
313
+ (this as any)[parentKey] = undefined;
314
+ }
322
315
  }
323
-
324
- //================================================================================
325
- // ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
326
- // 自动生成的代码已结束。下面可以手动编写。
327
- //================================================================================
328
- onChange($event?: EventPayload): void {
329
- this.emit('change', $event);
316
+ return params;
317
+ }
318
+
319
+ //= ===============================================================================
320
+ // ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
321
+ // 自动生成的代码已结束。下面可以手动编写。
322
+ //= ===============================================================================
323
+ onChange($event?: EventPayload): void {
324
+ this.emit('change', $event);
325
+ }
326
+
327
+ updateSource(source?: Partial<BaseNode>) {
328
+ super.subConstructor(source);
329
+ const object = {
330
+ ...source,
331
+ };
332
+ this.update({
333
+ ...object,
334
+ });
335
+ }
336
+
337
+ // 删除Directive
338
+ deleteDirective() {
339
+ this.delete();
340
+ }
341
+
342
+ // 属性上绑定的表达式
343
+ get bindExpressions() {
344
+ return [this.expression];
345
+ }
346
+
347
+ // 是否需要用标识符替换
348
+ get needReplaceWithIdentifier() {
349
+ let bindExpression = false;
350
+ if (this.expression) {
351
+ let rootMemberExpression: any;
352
+ let tempNode = this.expression;
353
+ while (tempNode?.concept === 'MemberExpression') {
354
+ rootMemberExpression = tempNode;
355
+ tempNode = (tempNode as MemberExpression)?.object;
356
+ }
357
+ // 变量和变量的成员表达式不进行替换
358
+ if (
359
+ !(this.expression?.concept === 'Identifier' || (rootMemberExpression && rootMemberExpression.object?.concept === 'Identifier')) &&
360
+ (this.type === 'dynamic' || (this.name === 'rules' && (this as any).rules))
361
+ ) {
362
+ bindExpression = true;
363
+ }
330
364
  }
331
-
332
- updateSource(source?: Partial<BaseNode>) {
333
- super.subConstructor(source);
334
- const object = {
335
- ...source,
336
- };
337
- this.update({
338
- ...object,
339
- });
365
+ return bindExpression;
366
+ }
367
+
368
+ // 获取表达式在页面中的名字
369
+ get expressionNameInView() {
370
+ const nameList: string[] = [];
371
+ let node: BaseNode = this;
372
+ while (node) {
373
+ nameList.unshift(node.name);
374
+ if (node.concept === 'ViewElement') {
375
+ node = null;
376
+ } else {
377
+ nameList.unshift(node.parentKey);
378
+ node = node.parentNode;
379
+ }
340
380
  }
341
-
342
- // 属性上绑定的表达式
343
- get bindExpressions() {
344
- return [this.expression];
381
+ return nameList.join('_').replace(/-/g, '_');
382
+ }
383
+
384
+ // 获取表达式生成器名称
385
+ get expressionBuilderName() {
386
+ let expressionInViewName = this.expressionNameInView;
387
+ expressionInViewName = expressionInViewName.charAt(0).toUpperCase() + expressionInViewName.slice(1);
388
+ return `gen${expressionInViewName}`;
389
+ }
390
+
391
+ // 获取参数列表
392
+ getArgsList() {
393
+ const viewElement = this?.getAncestor('ViewElement');
394
+ const argsList = [];
395
+ let parent = viewElement?.parentNode;
396
+ let index = 0;
397
+ while (parent && parent.concept !== 'View') {
398
+ if ((parent as ViewElement).slotScope) {
399
+ argsList.unshift(index === 0 ? 'current' : `current${index}`);
400
+ index++;
401
+ }
402
+ parent = parent.parentNode;
345
403
  }
346
-
347
- // 是否需要用标识符替换
348
- get needReplaceWithIdentifier() {
349
- let bindExpression = false;
350
- if (this.expression) {
351
- let rootMemberExpression: any;
352
- let tempNode = this.expression;
353
- while (tempNode?.concept === 'MemberExpression') {
354
- rootMemberExpression = tempNode;
355
- tempNode = (tempNode as MemberExpression)?.object;
356
- }
357
- // 变量和变量的成员表达式不进行替换
358
- if (
359
- !(
360
- this.expression?.concept === 'Identifier'
361
- || (rootMemberExpression && rootMemberExpression.object?.concept === 'Identifier')
362
- )
363
- && (this.type === 'dynamic' || (this.name === 'rules' && (this as any).rules))
364
- ) {
365
- bindExpression = true;
366
- }
367
- }
368
- return bindExpression;
369
- }
370
-
371
- // 获取表达式在页面中的名字
372
- get expressionNameInView() {
373
- const nameList: string[] = [];
374
- let node: BaseNode = this;
375
- while (node) {
376
- nameList.unshift(node.name);
377
- if (node.concept === 'ViewElement') {
378
- node = null;
404
+ return argsList;
405
+ }
406
+
407
+ // 表达式中需要被监听的变量
408
+ get watchedVariableMap() {
409
+ const map: any = {};
410
+ // 页面中表达式用到的变量需要监听,从而重新执行match表达式
411
+ utils.traverse(
412
+ (current: any) => {
413
+ const { node } = current || {};
414
+ const { concept } = node || {};
415
+ if (['Identifier'].includes(concept)) {
416
+ let expressionNode = node;
417
+ let memberExpressionNode = node?.parentNode;
418
+ while (memberExpressionNode?.concept === 'MemberExpression') {
419
+ expressionNode = memberExpressionNode;
420
+ // 为了处理MemberExpression里面存在CallLogic、CallFunction等的情况
421
+ const { concept: objConcept } = memberExpressionNode.object || {};
422
+ if (!['MemberExpression', 'Identifier'].includes(objConcept)) {
423
+ memberExpressionNode = null;
424
+ expressionNode = null;
379
425
  } else {
380
- nameList.unshift(node.parentKey);
381
- node = node.parentNode;
426
+ memberExpressionNode = memberExpressionNode.parentNode;
382
427
  }
428
+ }
429
+ if (expressionNode) {
430
+ map[expressionNode.toJS()] = true;
431
+ }
383
432
  }
384
- return nameList.join('_').replace(/-/g, '_');
385
- }
386
-
387
- // 获取表达式生成器名称
388
- get expressionBuilderName() {
389
- let expressionInViewName = this.expressionNameInView;
390
- expressionInViewName = expressionInViewName.charAt(0).toUpperCase() + expressionInViewName.slice(1);
391
- return `gen${expressionInViewName}`;
392
- }
393
-
394
- // 获取参数列表
395
- getArgsList() {
396
- const viewElement = this?.getAncestor('ViewElement');
397
- const argsList = [];
398
- let parent = viewElement?.parentNode;
399
- let index = 0;
400
- while (parent && parent.concept !== 'View') {
401
- if ((parent as ViewElement).slotScope) {
402
- argsList.unshift(index === 0 ? 'current' : 'current' + index);
403
- index++;
404
- }
405
- parent = parent.parentNode;
406
- }
407
- return argsList;
408
- }
409
-
410
- // 表达式中需要被监听的变量
411
- get watchedVariableMap() {
412
- const map: any = {};
413
- // 页面中表达式用到的变量需要监听,从而重新执行match表达式
414
- utils.traverse((current: any) => {
415
- const { node } = current || {};
416
- const { concept } = node || {};
417
- if (['Identifier'].includes(concept)) {
418
- let expressionNode = node;
419
- let memberExpressionNode = node?.parentNode;
420
- while (memberExpressionNode?.concept === 'MemberExpression') {
421
- expressionNode = memberExpressionNode;
422
- // 为了处理MemberExpression里面存在CallLogic、CallFunction等的情况
423
- const { concept: objConcept } = memberExpressionNode.object || {};
424
- if (!['MemberExpression', 'Identifier'].includes(objConcept)) {
425
- memberExpressionNode = null;
426
- expressionNode = null;
427
- } else {
428
- memberExpressionNode = memberExpressionNode.parentNode;
429
- }
430
- }
431
- if (expressionNode) {
432
- map[expressionNode.toJS()] = true;
433
- }
434
- }
435
- }, {
436
- node: this,
437
- }, {
438
- mode: 'anyObject',
439
- excludedKeySet: new Set([
440
- 'parentNode',
441
- 'sourceMap',
442
- 'storageJSON',
443
- 'tsErrorDetail',
444
- 'NaslAnnotatedJSON',
445
- 'calledFrom',
446
- '_events',
447
- '_collectingList',
448
- '_historyList',
449
- ]),
450
- });
451
- return map;
452
- }
453
-
454
- getInViewMethod(state?: TranslatorState) {
455
- const argsList = this.getArgsList() || [];
456
- const hasArgs = !!argsList.length;
457
- let argStr = '';
458
-
459
- // 容错代码
460
- let ftCode = '';
461
- if (hasArgs) {
462
- argsList.forEach((arg) => {
463
- ftCode += `if (!this.${this.expressionNameInView}${argStr}) {
433
+ },
434
+ {
435
+ node: this,
436
+ },
437
+ {
438
+ mode: 'anyObject',
439
+ excludedKeySet: new Set([
440
+ 'parentNode',
441
+ 'sourceMap',
442
+ 'storageJSON',
443
+ 'tsErrorDetail',
444
+ 'NaslAnnotatedJSON',
445
+ 'calledFrom',
446
+ '_events',
447
+ '_collectingList',
448
+ '_historyList',
449
+ ]),
450
+ }
451
+ );
452
+ return map;
453
+ }
454
+
455
+ getInViewMethod(state?: TranslatorState) {
456
+ const argsList = this.getArgsList() || [];
457
+ const hasArgs = !!argsList.length;
458
+ let argStr = '';
459
+
460
+ // 容错代码
461
+ let ftCode = '';
462
+ if (hasArgs) {
463
+ argsList.forEach((arg) => {
464
+ ftCode += `if (!this.${this.expressionNameInView}${argStr}) {
464
465
  this.${this.expressionNameInView}${argStr} = {};
465
466
  }\n`;
466
- argStr += `[${arg}.hasOwnProperty('__nodeKey') ? ${arg}.__nodeKey : ${arg}.index]`;
467
- });
468
- }
469
- ftCode += `if (!this.${this.expressionNameInView}${argStr}) {
467
+ argStr += `[${arg}.hasOwnProperty('__nodeKey') ? ${arg}.__nodeKey : ${arg}.index]`;
468
+ });
469
+ }
470
+ ftCode += `if (!this.${this.expressionNameInView}${argStr}) {
470
471
  this.${this.expressionNameInView}${argStr} = {};
471
472
  }`;
472
473
 
473
- // 新的参数
474
- const paramList = Object.keys(this.watchedVariableMap);
475
- let newParams = `const newParams = [];`;
476
- if (Array.isArray(paramList) && paramList.length) {
477
- paramList.forEach((param) => {
478
- newParams += `newParams.push(${param});\n`;
479
- });
480
- }
474
+ // 新的参数
475
+ const paramList = Object.keys(this.watchedVariableMap);
476
+ let newParams = `const newParams = [];`;
477
+ if (Array.isArray(paramList) && paramList.length) {
478
+ paramList.forEach((param) => {
479
+ newParams += `newParams.push(${param});\n`;
480
+ });
481
+ }
481
482
 
482
- // 表达式主体
483
- let expressionStr = '';
484
- if (this.type === 'dynamic') {
485
- expressionStr = this.expression?.toJS() || '';
486
- }
483
+ // 表达式主体
484
+ let expressionStr = '';
485
+ if (this.type === 'dynamic') {
486
+ expressionStr = this.expression?.toJS() || '';
487
+ }
487
488
 
488
- // 变量重新设置,为了触发重新调用
489
- let setVarStr = `this.${this.expressionNameInView}${argStr} = {
489
+ // 变量重新设置,为了触发重新调用
490
+ let setVarStr = `this.${this.expressionNameInView}${argStr} = {
490
491
  ...(this.${this.expressionNameInView}${argStr} || {}),
491
492
  value: value,
492
493
  };`;
493
- if (Array.isArray(argsList) && argsList.length) {
494
- setVarStr += `this.${this.expressionNameInView} = {...this.${this.expressionNameInView}};\n`;
495
- }
496
- const code = `${this.expressionBuilderName} (${argsList.join(', ')}) {
494
+ if (Array.isArray(argsList) && argsList.length) {
495
+ setVarStr += `this.${this.expressionNameInView} = {...this.${this.expressionNameInView}};\n`;
496
+ }
497
+ const code = `${this.expressionBuilderName} (${argsList.join(', ')}) {
497
498
  // 容错代码
498
499
  ${ftCode}
499
500
  (async () => {
@@ -511,100 +512,97 @@ export class BindDirective extends BaseNode {
511
512
  return this.${this.expressionNameInView}${argStr}.value;
512
513
  }`;
513
514
 
514
- return code;
515
+ return code;
516
+ }
517
+
518
+ /**
519
+ * 转换成 Vue 的模板格式
520
+ */
521
+ toVue(options?: ElementToVueOptions) {
522
+ let str = '';
523
+ // eslint-disable-next-line no-nested-ternary
524
+ let value = (this.type ?? 'string') !== 'string' ? this.value : this.value ? `'${this.value}'` : '';
525
+ // 需要用标识符替换
526
+ // if (options.finalCode !== false && this.needReplaceWithIdentifier) {
527
+ // const argsList = this.getArgsList();
528
+ // value = `${this.expressionBuilderName}(${argsList.join(', ')})`;
529
+ // } else
530
+ if (this.expression) {
531
+ value = this.expression.toVue(options);
532
+ if (this.expression.concept === 'StringLiteral') {
533
+ value = `${value}`;
534
+ }
535
+ value = value?.replace(/"/g, "'");
515
536
  }
516
-
517
- /**
518
- * 转换成 Vue 的模板格式
519
- */
520
- toVue(options?: ElementToVueOptions) {
521
- let str = '';
522
- // eslint-disable-next-line no-nested-ternary
523
- let value = (this.type ?? 'string') !== 'string' ? this.value : this.value ? `'${this.value}'` : '';
524
- // 需要用标识符替换
525
- //if (options.finalCode !== false && this.needReplaceWithIdentifier) {
526
- // const argsList = this.getArgsList();
527
- // value = `${this.expressionBuilderName}(${argsList.join(', ')})`;
528
- //} else
529
- if (this.expression) {
530
- value = this.expression.toVue(options);
531
- if (this.expression.concept === 'StringLiteral') {
532
- value = `${value}`;
533
- }
534
- value = value?.replace(/"/g, "'");
535
- }
536
- if (this.name === 'auth' && !!this.value) {
537
- const regex = /(.\w+\[name=\w+\])/g;
538
- const paths = this.element.nodePath.match(regex);
539
- const regex1 = /\s*=(\w+)\]/;
540
- let pathArr: string[] = [];
541
- const isElement = paths.find((item) => {
542
- if (item.startsWith('.elements')) {
543
- return true;
544
- } else {
545
- pathArr.push(item);
546
- return false;
547
- }
548
- });
549
- if (isElement) {
550
- pathArr = [...pathArr, ...paths.slice(-1)];
551
- }
552
- // 数组的第一个是端名称
553
- pathArr.shift();
554
- let _path = pathArr.reduce((str, item) => {
555
- const c = item.match(regex1);
556
- return str + '/' + c[1];
557
- }, '');
558
- if (this.frontend && this.frontend.prefixPath) {
559
- _path = `${this.frontend.prefixPath}${_path}`;
560
- }
561
- value = `'${_path}'`;
562
- }
563
- let modifiersString = '';
564
- let modifiers = {};
565
- try {
566
- modifiers = JSON.parse(this.modifiers || '{}');
567
- } catch (err) {
568
- modifiers = {};
569
- }
570
- Object.keys(modifiers).forEach((key) => {
571
- const value = (modifiers as any)[key];
572
- if (value)
573
- modifiersString += '.' + key;
574
- });
575
- if (value !== '' && value !== undefined && value !== null) {
576
- str += `v-${this.name}${modifiersString}${this.arg ? ':' + this.arg : ''}="${value}"`;
537
+ if (this.name === 'auth' && !!this.value) {
538
+ const regex = /(.\w+\[name=\w+\])/g;
539
+ const paths = this.element.nodePath.match(regex);
540
+ const regex1 = /\s*=(\w+)\]/;
541
+ let pathArr: string[] = [];
542
+ const isElement = paths.find((item) => {
543
+ if (item.startsWith('.elements')) {
544
+ return true;
577
545
  }
578
- return str;
546
+ pathArr.push(item);
547
+ return false;
548
+ });
549
+ if (isElement) {
550
+ pathArr = [...pathArr, ...paths.slice(-1)];
551
+ }
552
+ // 数组的第一个是端名称
553
+ pathArr.shift();
554
+ let _path = pathArr.reduce((str, item) => {
555
+ const c = item.match(regex1);
556
+ return `${str}/${c[1]}`;
557
+ }, '');
558
+ if (this.frontend && this.frontend.prefixPath) {
559
+ _path = `${this.frontend.prefixPath}${_path}`;
560
+ }
561
+ value = `'${_path}'`;
579
562
  }
580
-
581
- @withSourceMap()
582
- toEmbeddedTS(state?: TranslatorState): string {
583
- let code = '()=>{';
584
- if (this.expression) {
585
- code += this.expression.toEmbeddedTS(shiftState(state, code, { tabSize: (state?.tabSize || 0) + 1 }));
586
- code += ';\n';
587
- }
588
- if (this.type === 'dynamic') {
589
- this.playground?.forEach((item, index) => {
590
- code += item.toEmbeddedTS(shiftState(state, code, { tabSize: (state?.tabSize || 0) + 1 }));
591
- if (index !== this.playground.length - 1)
592
- code += ';\n';
593
- });
594
- }
595
- code += '}';
596
- return code;
563
+ let modifiersString = '';
564
+ let modifiers = {};
565
+ try {
566
+ modifiers = JSON.parse(this.modifiers || '{}');
567
+ } catch (err) {
568
+ modifiers = {};
597
569
  }
598
-
599
- //================================================================================
600
- // 从这里开始到结尾注释之间的代码由 NASL Workbench 自动生成,请不手动修改!
601
- // ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
602
- //================================================================================
570
+ Object.keys(modifiers).forEach((key) => {
571
+ const value = (modifiers as any)[key];
572
+ if (value) modifiersString += `.${key}`;
573
+ });
574
+ if (value !== '' && value !== undefined && value !== null) {
575
+ str += `v-${this.name}${modifiersString}${this.arg ? `:${this.arg}` : ''}="${value}"`;
576
+ }
577
+ return str;
578
+ }
579
+
580
+ @withSourceMap()
581
+ toEmbeddedTS(state?: TranslatorState): string {
582
+ let code = '()=>{';
583
+ if (this.expression) {
584
+ code += this.expression.toEmbeddedTS(shiftState(state, code, { tabSize: (state?.tabSize || 0) + 1 }));
585
+ code += ';\n';
586
+ }
587
+ if (this.type === 'dynamic') {
588
+ this.playground?.forEach((item, index) => {
589
+ code += item.toEmbeddedTS(shiftState(state, code, { tabSize: (state?.tabSize || 0) + 1 }));
590
+ if (index !== this.playground.length - 1) code += ';\n';
591
+ });
592
+ }
593
+ code += '}';
594
+ return code;
595
+ }
596
+
597
+ //= ===============================================================================
598
+ // 从这里开始到结尾注释之间的代码由 NASL Workbench 自动生成,请不手动修改!
599
+ // ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
600
+ //= ===============================================================================
603
601
  }
604
602
 
605
603
  classMap.BindDirective = BindDirective;
606
604
  export default BindDirective;
607
- //================================================================================
605
+ //= ===============================================================================
608
606
  // ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
609
607
  // 自动生成的代码已结束。下面可以手动编写。
610
- //================================================================================
608
+ //= ===============================================================================