@lcap/nasl 3.4.0-alpha.1 → 3.4.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (822) hide show
  1. package/out/bak/translator.js +8 -5
  2. package/out/bak/translator.js.map +1 -1
  3. package/out/breakpoint/generator/AfterStartNode.js +2 -1
  4. package/out/breakpoint/generator/AfterStartNode.js.map +1 -1
  5. package/out/breakpoint/generator/BeforeEndNode.js +2 -1
  6. package/out/breakpoint/generator/BeforeEndNode.js.map +1 -1
  7. package/out/breakpoint/generator/BreakpointNode.js +30 -9
  8. package/out/breakpoint/generator/BreakpointNode.js.map +1 -1
  9. package/out/breakpoint/shared/constants.d.ts +1 -0
  10. package/out/breakpoint/shared/constants.js +7 -1
  11. package/out/breakpoint/shared/constants.js.map +1 -1
  12. package/out/breakpoint/shared/utils.d.ts +3 -1
  13. package/out/breakpoint/shared/utils.js +25 -4
  14. package/out/breakpoint/shared/utils.js.map +1 -1
  15. package/out/common/BaseNode.d.ts +30 -14
  16. package/out/common/BaseNode.js +186 -119
  17. package/out/common/BaseNode.js.map +1 -1
  18. package/out/common/Command.js +6 -1
  19. package/out/common/Command.js.map +1 -1
  20. package/out/common/EventEmitter.d.ts +1 -1
  21. package/out/common/EventEmitter.js +1 -3
  22. package/out/common/EventEmitter.js.map +1 -1
  23. package/out/common/index.d.ts +0 -1
  24. package/out/common/index.js +0 -1
  25. package/out/common/index.js.map +1 -1
  26. package/out/concepts/Abort__.d.ts +3 -2
  27. package/out/concepts/Abort__.js +14 -16
  28. package/out/concepts/Abort__.js.map +1 -1
  29. package/out/concepts/Anchor__.d.ts +3 -2
  30. package/out/concepts/Anchor__.js +21 -20
  31. package/out/concepts/Anchor__.js.map +1 -1
  32. package/out/concepts/AnonymousFunction__.d.ts +3 -2
  33. package/out/concepts/AnonymousFunction__.js +39 -30
  34. package/out/concepts/AnonymousFunction__.js.map +1 -1
  35. package/out/concepts/App__.d.ts +160 -157
  36. package/out/concepts/App__.js +177 -99
  37. package/out/concepts/App__.js.map +1 -1
  38. package/out/concepts/Argument__.d.ts +3 -2
  39. package/out/concepts/Argument__.js +25 -22
  40. package/out/concepts/Argument__.js.map +1 -1
  41. package/out/concepts/Assignee__.d.ts +3 -2
  42. package/out/concepts/Assignee__.js +37 -26
  43. package/out/concepts/Assignee__.js.map +1 -1
  44. package/out/concepts/AssignmentLine__.d.ts +3 -2
  45. package/out/concepts/AssignmentLine__.js +20 -18
  46. package/out/concepts/AssignmentLine__.js.map +1 -1
  47. package/out/concepts/Assignment__.d.ts +3 -2
  48. package/out/concepts/Assignment__.js +39 -29
  49. package/out/concepts/Assignment__.js.map +1 -1
  50. package/out/concepts/Attribute__.d.ts +3 -2
  51. package/out/concepts/Attribute__.js +39 -29
  52. package/out/concepts/Attribute__.js.map +1 -1
  53. package/out/concepts/AuthInterface__.d.ts +4 -3
  54. package/out/concepts/AuthInterface__.js +16 -17
  55. package/out/concepts/AuthInterface__.js.map +1 -1
  56. package/out/concepts/AuthLogicForCallInterface__.d.ts +4 -3
  57. package/out/concepts/AuthLogicForCallInterface__.js +41 -28
  58. package/out/concepts/AuthLogicForCallInterface__.js.map +1 -1
  59. package/out/concepts/AuthLogic__.d.ts +4 -3
  60. package/out/concepts/AuthLogic__.js +18 -19
  61. package/out/concepts/AuthLogic__.js.map +1 -1
  62. package/out/concepts/BackendVariable__.d.ts +8 -7
  63. package/out/concepts/BackendVariable__.js +41 -34
  64. package/out/concepts/BackendVariable__.js.map +1 -1
  65. package/out/concepts/Backend__.d.ts +32 -31
  66. package/out/concepts/Backend__.js +26 -22
  67. package/out/concepts/Backend__.js.map +1 -1
  68. package/out/concepts/BatchAssignment__.d.ts +3 -2
  69. package/out/concepts/BatchAssignment__.js +56 -39
  70. package/out/concepts/BatchAssignment__.js.map +1 -1
  71. package/out/concepts/BinaryExpression__.d.ts +3 -2
  72. package/out/concepts/BinaryExpression__.js +50 -41
  73. package/out/concepts/BinaryExpression__.js.map +1 -1
  74. package/out/concepts/BindAttribute__.d.ts +12 -8
  75. package/out/concepts/BindAttribute__.js +116 -59
  76. package/out/concepts/BindAttribute__.js.map +1 -1
  77. package/out/concepts/BindDirective__.d.ts +5 -3
  78. package/out/concepts/BindDirective__.js +40 -29
  79. package/out/concepts/BindDirective__.js.map +1 -1
  80. package/out/concepts/BindEvent__.d.ts +3 -2
  81. package/out/concepts/BindEvent__.js +59 -19
  82. package/out/concepts/BindEvent__.js.map +1 -1
  83. package/out/concepts/BindStyle__.d.ts +5 -3
  84. package/out/concepts/BindStyle__.js +30 -24
  85. package/out/concepts/BindStyle__.js.map +1 -1
  86. package/out/concepts/BooleanLiteral__.d.ts +3 -2
  87. package/out/concepts/BooleanLiteral__.js +16 -17
  88. package/out/concepts/BooleanLiteral__.js.map +1 -1
  89. package/out/concepts/CallAuthInterface__.d.ts +3 -2
  90. package/out/concepts/CallAuthInterface__.js +20 -19
  91. package/out/concepts/CallAuthInterface__.js.map +1 -1
  92. package/out/concepts/CallConnector__.d.ts +5 -4
  93. package/out/concepts/CallConnector__.js +40 -33
  94. package/out/concepts/CallConnector__.js.map +1 -1
  95. package/out/concepts/CallFunction__.d.ts +3 -2
  96. package/out/concepts/CallFunction__.js +40 -28
  97. package/out/concepts/CallFunction__.js.map +1 -1
  98. package/out/concepts/CallInterface__.d.ts +5 -3
  99. package/out/concepts/CallInterface__.js +74 -31
  100. package/out/concepts/CallInterface__.js.map +1 -1
  101. package/out/concepts/CallLogic__.d.ts +6 -5
  102. package/out/concepts/CallLogic__.js +145 -82
  103. package/out/concepts/CallLogic__.js.map +1 -1
  104. package/out/concepts/CallQueryComponent__.d.ts +3 -2
  105. package/out/concepts/CallQueryComponent__.js +90 -50
  106. package/out/concepts/CallQueryComponent__.js.map +1 -1
  107. package/out/concepts/Comment__.d.ts +3 -2
  108. package/out/concepts/Comment__.js +16 -17
  109. package/out/concepts/Comment__.js.map +1 -1
  110. package/out/concepts/CompletionProperty__.d.ts +3 -2
  111. package/out/concepts/CompletionProperty__.js +33 -26
  112. package/out/concepts/CompletionProperty__.js.map +1 -1
  113. package/out/concepts/ConfigGroup__.d.ts +3 -2
  114. package/out/concepts/ConfigGroup__.js +25 -21
  115. package/out/concepts/ConfigGroup__.js.map +1 -1
  116. package/out/concepts/ConfigPropertyValue__.d.ts +3 -2
  117. package/out/concepts/ConfigPropertyValue__.js +16 -16
  118. package/out/concepts/ConfigPropertyValue__.js.map +1 -1
  119. package/out/concepts/ConfigProperty__.d.ts +3 -2
  120. package/out/concepts/ConfigProperty__.js +29 -23
  121. package/out/concepts/ConfigProperty__.js.map +1 -1
  122. package/out/concepts/Configuration__.d.ts +3 -2
  123. package/out/concepts/Configuration__.js +20 -19
  124. package/out/concepts/Configuration__.js.map +1 -1
  125. package/out/concepts/Connection__.d.ts +4 -4
  126. package/out/concepts/Connection__.js +26 -19
  127. package/out/concepts/Connection__.js.map +1 -1
  128. package/out/concepts/ConnectorTrigger__.d.ts +7 -6
  129. package/out/concepts/ConnectorTrigger__.js +22 -21
  130. package/out/concepts/ConnectorTrigger__.js.map +1 -1
  131. package/out/concepts/Connector__.d.ts +139 -33
  132. package/out/concepts/Connector__.js +216 -40
  133. package/out/concepts/Connector__.js.map +1 -1
  134. package/out/concepts/Constant__.d.ts +3 -2
  135. package/out/concepts/Constant__.js +27 -23
  136. package/out/concepts/Constant__.js.map +1 -1
  137. package/out/concepts/DataSource__.d.ts +7 -2
  138. package/out/concepts/DataSource__.js +35 -24
  139. package/out/concepts/DataSource__.js.map +1 -1
  140. package/out/concepts/DatabaseTypeAnnotation__.d.ts +5 -4
  141. package/out/concepts/DatabaseTypeAnnotation__.js +18 -18
  142. package/out/concepts/DatabaseTypeAnnotation__.js.map +1 -1
  143. package/out/concepts/Destination__.d.ts +11 -10
  144. package/out/concepts/Destination__.js +44 -38
  145. package/out/concepts/Destination__.js.map +1 -1
  146. package/out/concepts/End__.d.ts +3 -2
  147. package/out/concepts/End__.js +14 -16
  148. package/out/concepts/End__.js.map +1 -1
  149. package/out/concepts/EntityIndex__.d.ts +4 -3
  150. package/out/concepts/EntityIndex__.js +25 -21
  151. package/out/concepts/EntityIndex__.js.map +1 -1
  152. package/out/concepts/EntityProperty__.d.ts +4 -3
  153. package/out/concepts/EntityProperty__.js +59 -53
  154. package/out/concepts/EntityProperty__.js.map +1 -1
  155. package/out/concepts/Entity__.d.ts +3 -2
  156. package/out/concepts/Entity__.js +39 -28
  157. package/out/concepts/Entity__.js.map +1 -1
  158. package/out/concepts/EnumItem__.d.ts +3 -2
  159. package/out/concepts/EnumItem__.js +18 -18
  160. package/out/concepts/EnumItem__.js.map +1 -1
  161. package/out/concepts/Enum__.d.ts +3 -2
  162. package/out/concepts/Enum__.js +26 -22
  163. package/out/concepts/Enum__.js.map +1 -1
  164. package/out/concepts/Event__.d.ts +3 -2
  165. package/out/concepts/Event__.js +28 -22
  166. package/out/concepts/Event__.js.map +1 -1
  167. package/out/concepts/ExternalDestination__.d.ts +6 -5
  168. package/out/concepts/ExternalDestination__.js +31 -27
  169. package/out/concepts/ExternalDestination__.js.map +1 -1
  170. package/out/concepts/ForEachStatement__.d.ts +3 -2
  171. package/out/concepts/ForEachStatement__.js +39 -22
  172. package/out/concepts/ForEachStatement__.js.map +1 -1
  173. package/out/concepts/FrontendLibrary__.d.ts +4 -3
  174. package/out/concepts/FrontendLibrary__.js +35 -27
  175. package/out/concepts/FrontendLibrary__.js.map +1 -1
  176. package/out/concepts/FrontendVariable__.d.ts +4 -3
  177. package/out/concepts/FrontendVariable__.js +12 -12
  178. package/out/concepts/FrontendVariable__.js.map +1 -1
  179. package/out/concepts/Frontend__.d.ts +8 -6
  180. package/out/concepts/Frontend__.js +65 -43
  181. package/out/concepts/Frontend__.js.map +1 -1
  182. package/out/concepts/Function__.d.ts +3 -2
  183. package/out/concepts/Function__.js +55 -36
  184. package/out/concepts/Function__.js.map +1 -1
  185. package/out/concepts/Identifier__.d.ts +4 -3
  186. package/out/concepts/Identifier__.js +29 -28
  187. package/out/concepts/Identifier__.js.map +1 -1
  188. package/out/concepts/IfStatement__.d.ts +3 -2
  189. package/out/concepts/IfStatement__.js +31 -24
  190. package/out/concepts/IfStatement__.js.map +1 -1
  191. package/out/concepts/Integration__.d.ts +93 -2
  192. package/out/concepts/Integration__.js +163 -20
  193. package/out/concepts/Integration__.js.map +1 -1
  194. package/out/concepts/InterfaceParam__.d.ts +30 -4
  195. package/out/concepts/InterfaceParam__.js +61 -25
  196. package/out/concepts/InterfaceParam__.js.map +1 -1
  197. package/out/concepts/Interface__.d.ts +34 -6
  198. package/out/concepts/Interface__.js +117 -38
  199. package/out/concepts/Interface__.js.map +1 -1
  200. package/out/concepts/JSBlock__.d.ts +3 -2
  201. package/out/concepts/JSBlock__.js +16 -17
  202. package/out/concepts/JSBlock__.js.map +1 -1
  203. package/out/concepts/JavaLogic__.d.ts +4 -3
  204. package/out/concepts/JavaLogic__.js +21 -20
  205. package/out/concepts/JavaLogic__.js.map +1 -1
  206. package/out/concepts/LogicItem__.d.ts +3 -2
  207. package/out/concepts/LogicItem__.js +22 -20
  208. package/out/concepts/LogicItem__.js.map +1 -1
  209. package/out/concepts/Logic__.d.ts +17 -17
  210. package/out/concepts/Logic__.js +123 -66
  211. package/out/concepts/Logic__.js.map +1 -1
  212. package/out/concepts/MatchCase__.d.ts +3 -2
  213. package/out/concepts/MatchCase__.js +31 -24
  214. package/out/concepts/MatchCase__.js.map +1 -1
  215. package/out/concepts/Match__.d.ts +3 -2
  216. package/out/concepts/Match__.js +26 -22
  217. package/out/concepts/Match__.js.map +1 -1
  218. package/out/concepts/MemberExpression__.d.ts +3 -2
  219. package/out/concepts/MemberExpression__.js +70 -42
  220. package/out/concepts/MemberExpression__.js.map +1 -1
  221. package/out/concepts/MicroApp__.d.ts +3 -2
  222. package/out/concepts/MicroApp__.js +26 -21
  223. package/out/concepts/MicroApp__.js.map +1 -1
  224. package/out/concepts/Module__.d.ts +219 -47
  225. package/out/concepts/Module__.js +285 -44
  226. package/out/concepts/Module__.js.map +1 -1
  227. package/out/concepts/MsgTriggerEvent__.d.ts +4 -3
  228. package/out/concepts/MsgTriggerEvent__.js +20 -19
  229. package/out/concepts/MsgTriggerEvent__.js.map +1 -1
  230. package/out/concepts/MsgTriggerLauncher__.d.ts +4 -3
  231. package/out/concepts/MsgTriggerLauncher__.js +22 -20
  232. package/out/concepts/MsgTriggerLauncher__.js.map +1 -1
  233. package/out/concepts/Namespace__.d.ts +4 -2
  234. package/out/concepts/Namespace__.js +112 -58
  235. package/out/concepts/Namespace__.js.map +1 -1
  236. package/out/concepts/NewComposite__.d.ts +4 -2
  237. package/out/concepts/NewComposite__.js +85 -46
  238. package/out/concepts/NewComposite__.js.map +1 -1
  239. package/out/concepts/NewList__.d.ts +5 -3
  240. package/out/concepts/NewList__.js +41 -26
  241. package/out/concepts/NewList__.js.map +1 -1
  242. package/out/concepts/NewMap__.d.ts +5 -3
  243. package/out/concepts/NewMap__.js +49 -30
  244. package/out/concepts/NewMap__.js.map +1 -1
  245. package/out/concepts/New__.d.ts +3 -2
  246. package/out/concepts/New__.js +14 -16
  247. package/out/concepts/New__.js.map +1 -1
  248. package/out/concepts/NullLiteral__.d.ts +3 -2
  249. package/out/concepts/NullLiteral__.js +14 -16
  250. package/out/concepts/NullLiteral__.js.map +1 -1
  251. package/out/concepts/NumericLiteral__.d.ts +3 -2
  252. package/out/concepts/NumericLiteral__.js +23 -21
  253. package/out/concepts/NumericLiteral__.js.map +1 -1
  254. package/out/concepts/OqlQueryComponent__.d.ts +3 -2
  255. package/out/concepts/OqlQueryComponent__.js +28 -23
  256. package/out/concepts/OqlQueryComponent__.js.map +1 -1
  257. package/out/concepts/OverriddenLogic__.d.ts +14 -22
  258. package/out/concepts/OverriddenLogic__.js +101 -70
  259. package/out/concepts/OverriddenLogic__.js.map +1 -1
  260. package/out/concepts/Param__.d.ts +3 -2
  261. package/out/concepts/Param__.js +37 -29
  262. package/out/concepts/Param__.js.map +1 -1
  263. package/out/concepts/Point__.d.ts +3 -2
  264. package/out/concepts/Point__.js +16 -16
  265. package/out/concepts/Point__.js.map +1 -1
  266. package/out/concepts/ProcessComponent__.d.ts +3 -2
  267. package/out/concepts/ProcessComponent__.js +32 -24
  268. package/out/concepts/ProcessComponent__.js.map +1 -1
  269. package/out/concepts/ProcessElement__.d.ts +3 -2
  270. package/out/concepts/ProcessElement__.js +90 -53
  271. package/out/concepts/ProcessElement__.js.map +1 -1
  272. package/out/concepts/ProcessOutcome__.d.ts +3 -2
  273. package/out/concepts/ProcessOutcome__.js +16 -17
  274. package/out/concepts/ProcessOutcome__.js.map +1 -1
  275. package/out/concepts/ProcessOutcomes__.d.ts +3 -2
  276. package/out/concepts/ProcessOutcomes__.js +17 -17
  277. package/out/concepts/ProcessOutcomes__.js.map +1 -1
  278. package/out/concepts/Process__.d.ts +5 -7
  279. package/out/concepts/Process__.js +66 -40
  280. package/out/concepts/Process__.js.map +1 -1
  281. package/out/concepts/QueryAggregateExpression__.d.ts +3 -2
  282. package/out/concepts/QueryAggregateExpression__.js +25 -22
  283. package/out/concepts/QueryAggregateExpression__.js.map +1 -1
  284. package/out/concepts/QueryFieldExpression__.d.ts +4 -3
  285. package/out/concepts/QueryFieldExpression__.js +20 -19
  286. package/out/concepts/QueryFieldExpression__.js.map +1 -1
  287. package/out/concepts/QueryFromExpression__.d.ts +4 -3
  288. package/out/concepts/QueryFromExpression__.js +26 -22
  289. package/out/concepts/QueryFromExpression__.js.map +1 -1
  290. package/out/concepts/QueryGroupByExpression__.d.ts +3 -2
  291. package/out/concepts/QueryGroupByExpression__.js +21 -20
  292. package/out/concepts/QueryGroupByExpression__.js.map +1 -1
  293. package/out/concepts/QueryJoinExpression__.d.ts +4 -3
  294. package/out/concepts/QueryJoinExpression__.js +36 -26
  295. package/out/concepts/QueryJoinExpression__.js.map +1 -1
  296. package/out/concepts/QueryLimitExpression__.d.ts +3 -2
  297. package/out/concepts/QueryLimitExpression__.js +27 -23
  298. package/out/concepts/QueryLimitExpression__.js.map +1 -1
  299. package/out/concepts/QueryOrderByExpression__.d.ts +3 -2
  300. package/out/concepts/QueryOrderByExpression__.js +27 -23
  301. package/out/concepts/QueryOrderByExpression__.js.map +1 -1
  302. package/out/concepts/QuerySelectExpression__.d.ts +3 -2
  303. package/out/concepts/QuerySelectExpression__.js +27 -22
  304. package/out/concepts/QuerySelectExpression__.js.map +1 -1
  305. package/out/concepts/Rect__.d.ts +3 -2
  306. package/out/concepts/Rect__.js +20 -18
  307. package/out/concepts/Rect__.js.map +1 -1
  308. package/out/concepts/Return__.d.ts +3 -2
  309. package/out/concepts/Return__.js +31 -26
  310. package/out/concepts/Return__.js.map +1 -1
  311. package/out/concepts/Role__.d.ts +3 -2
  312. package/out/concepts/Role__.js +21 -20
  313. package/out/concepts/Role__.js.map +1 -1
  314. package/out/concepts/SelectMembers__.d.ts +3 -2
  315. package/out/concepts/SelectMembers__.js +26 -22
  316. package/out/concepts/SelectMembers__.js.map +1 -1
  317. package/out/concepts/Slot__.d.ts +3 -2
  318. package/out/concepts/Slot__.js +29 -23
  319. package/out/concepts/Slot__.js.map +1 -1
  320. package/out/concepts/SqlQueryComponent__.d.ts +3 -2
  321. package/out/concepts/SqlQueryComponent__.js +30 -24
  322. package/out/concepts/SqlQueryComponent__.js.map +1 -1
  323. package/out/concepts/Start__.d.ts +3 -2
  324. package/out/concepts/Start__.js +14 -16
  325. package/out/concepts/Start__.js.map +1 -1
  326. package/out/concepts/StringInterpolation__.d.ts +3 -2
  327. package/out/concepts/StringInterpolation__.js +20 -19
  328. package/out/concepts/StringInterpolation__.js.map +1 -1
  329. package/out/concepts/StringLiteral__.d.ts +3 -2
  330. package/out/concepts/StringLiteral__.js +14 -16
  331. package/out/concepts/StringLiteral__.js.map +1 -1
  332. package/out/concepts/StructureProperty__.d.ts +9 -4
  333. package/out/concepts/StructureProperty__.js +42 -30
  334. package/out/concepts/StructureProperty__.js.map +1 -1
  335. package/out/concepts/Structure__.d.ts +7 -11
  336. package/out/concepts/Structure__.js +59 -34
  337. package/out/concepts/Structure__.js.map +1 -1
  338. package/out/concepts/SwitchCase__.d.ts +3 -2
  339. package/out/concepts/SwitchCase__.js +26 -22
  340. package/out/concepts/SwitchCase__.js.map +1 -1
  341. package/out/concepts/SwitchStatement__.d.ts +3 -2
  342. package/out/concepts/SwitchStatement__.js +26 -21
  343. package/out/concepts/SwitchStatement__.js.map +1 -1
  344. package/out/concepts/Theme__.d.ts +3 -2
  345. package/out/concepts/Theme__.js +12 -14
  346. package/out/concepts/Theme__.js.map +1 -1
  347. package/out/concepts/Transactional__.d.ts +3 -2
  348. package/out/concepts/Transactional__.js +18 -17
  349. package/out/concepts/Transactional__.js.map +1 -1
  350. package/out/concepts/TriggerEvent__.d.ts +3 -2
  351. package/out/concepts/TriggerEvent__.js +23 -19
  352. package/out/concepts/TriggerEvent__.js.map +1 -1
  353. package/out/concepts/TriggerLauncher__.d.ts +6 -17
  354. package/out/concepts/TriggerLauncher__.js +25 -62
  355. package/out/concepts/TriggerLauncher__.js.map +1 -1
  356. package/out/concepts/TypeAnnotation__.d.ts +8 -5
  357. package/out/concepts/TypeAnnotation__.js +67 -35
  358. package/out/concepts/TypeAnnotation__.js.map +1 -1
  359. package/out/concepts/TypeParam__.d.ts +3 -2
  360. package/out/concepts/TypeParam__.js +16 -17
  361. package/out/concepts/TypeParam__.js.map +1 -1
  362. package/out/concepts/UnaryExpression__.d.ts +3 -2
  363. package/out/concepts/UnaryExpression__.js +23 -21
  364. package/out/concepts/UnaryExpression__.js.map +1 -1
  365. package/out/concepts/Unparsed__.d.ts +3 -2
  366. package/out/concepts/Unparsed__.js +16 -17
  367. package/out/concepts/Unparsed__.js.map +1 -1
  368. package/out/concepts/UseComponent__.d.ts +3 -2
  369. package/out/concepts/UseComponent__.js +16 -16
  370. package/out/concepts/UseComponent__.js.map +1 -1
  371. package/out/concepts/ValidationRule__.d.ts +17 -16
  372. package/out/concepts/ValidationRule__.js +28 -18
  373. package/out/concepts/ValidationRule__.js.map +1 -1
  374. package/out/concepts/Variable__.d.ts +3 -2
  375. package/out/concepts/Variable__.js +31 -26
  376. package/out/concepts/Variable__.js.map +1 -1
  377. package/out/concepts/ViewBlock__.d.ts +4 -3
  378. package/out/concepts/ViewBlock__.js +20 -19
  379. package/out/concepts/ViewBlock__.js.map +1 -1
  380. package/out/concepts/ViewComponent__.d.ts +32 -31
  381. package/out/concepts/ViewComponent__.js +59 -38
  382. package/out/concepts/ViewComponent__.js.map +1 -1
  383. package/out/concepts/ViewElement__.d.ts +84 -81
  384. package/out/concepts/ViewElement__.js +347 -159
  385. package/out/concepts/ViewElement__.js.map +1 -1
  386. package/out/concepts/View__.d.ts +5 -3
  387. package/out/concepts/View__.js +166 -120
  388. package/out/concepts/View__.js.map +1 -1
  389. package/out/concepts/WhileStatement__.d.ts +3 -2
  390. package/out/concepts/WhileStatement__.js +26 -22
  391. package/out/concepts/WhileStatement__.js.map +1 -1
  392. package/out/concepts/index__.d.ts +0 -1
  393. package/out/concepts/index__.js +0 -1
  394. package/out/concepts/index__.js.map +1 -1
  395. package/out/concepts/types__.d.ts +2 -3
  396. package/out/decorators/index.d.ts +5 -3
  397. package/out/decorators/index.js +15 -9
  398. package/out/decorators/index.js.map +1 -1
  399. package/out/generator/genBundleFiles.d.ts +2 -2
  400. package/out/generator/genBundleFiles.js +11 -4
  401. package/out/generator/genBundleFiles.js.map +1 -1
  402. package/out/generator/genReleaseBody.d.ts +4 -2
  403. package/out/generator/genReleaseBody.js +192 -136
  404. package/out/generator/genReleaseBody.js.map +1 -1
  405. package/out/natural/genNaturalTS.js +15 -14
  406. package/out/natural/genNaturalTS.js.map +1 -1
  407. package/out/natural/index.d.ts +0 -2
  408. package/out/natural/index.js +0 -2
  409. package/out/natural/index.js.map +1 -1
  410. package/out/sentry/index.js +2 -2
  411. package/out/sentry/index.js.map +1 -1
  412. package/out/server/createUiTs.js +34 -1
  413. package/out/server/createUiTs.js.map +1 -1
  414. package/out/server/extendBaseNode.js +17 -17
  415. package/out/server/extendBaseNode.js.map +1 -1
  416. package/out/server/formatTsUtils.d.ts +3 -3
  417. package/out/server/formatTsUtils.js +0 -10
  418. package/out/server/formatTsUtils.js.map +1 -1
  419. package/out/server/getConnector.d.ts +3 -0
  420. package/out/server/getConnector.js +38 -1
  421. package/out/server/getConnector.js.map +1 -1
  422. package/out/server/getMemberIdentifier.d.ts +4 -4
  423. package/out/server/getMemberIdentifier.js +1 -2
  424. package/out/server/getMemberIdentifier.js.map +1 -1
  425. package/out/server/index.js +2 -0
  426. package/out/server/index.js.map +1 -1
  427. package/out/server/naslServer.d.ts +13 -2
  428. package/out/server/naslServer.js +213 -118
  429. package/out/server/naslServer.js.map +1 -1
  430. package/out/server/translator.js +2 -4
  431. package/out/server/translator.js.map +1 -1
  432. package/out/service/creator/add.configs.js +26 -0
  433. package/out/service/creator/add.configs.js.map +1 -1
  434. package/out/service/creator/errHandles.js +5 -3
  435. package/out/service/creator/errHandles.js.map +1 -1
  436. package/out/service/creator/index.js +13 -0
  437. package/out/service/creator/index.js.map +1 -1
  438. package/out/service/storage/jsoner.js +1 -1
  439. package/out/service/storage/jsoner.js.map +1 -1
  440. package/out/templator/genCurdEditMultipleKeyBlock.js +3 -3
  441. package/out/templator/genCurdEditMultipleKeyBlock.js.map +1 -1
  442. package/out/templator/genCurdMultipleKeyBlock.js +3 -3
  443. package/out/templator/genCurdMultipleKeyBlock.js.map +1 -1
  444. package/out/templator/genTableBlock.js +1 -1
  445. package/out/templator/genTableBlock.js.map +1 -1
  446. package/out/translator/constant.d.ts +6 -0
  447. package/out/translator/constant.js +10 -0
  448. package/out/translator/constant.js.map +1 -0
  449. package/out/translator/index.d.ts +3 -48
  450. package/out/translator/index.js +17 -110
  451. package/out/translator/index.js.map +1 -1
  452. package/out/translator/types.d.ts +32 -0
  453. package/out/translator/{tsp.js → types.js} +1 -1
  454. package/out/translator/types.js.map +1 -0
  455. package/out/translator/utils.d.ts +17 -0
  456. package/out/translator/utils.js +98 -0
  457. package/out/translator/utils.js.map +1 -0
  458. package/out/utils/cookie.d.ts +9 -0
  459. package/out/utils/cookie.js +62 -0
  460. package/out/utils/cookie.js.map +1 -0
  461. package/out/utils/env.d.ts +2 -0
  462. package/out/utils/env.js +6 -0
  463. package/out/utils/env.js.map +1 -0
  464. package/out/utils/index.d.ts +3 -0
  465. package/out/utils/index.js +3 -0
  466. package/out/utils/index.js.map +1 -1
  467. package/out/utils/logger.d.ts +4 -0
  468. package/out/utils/logger.js +13 -1
  469. package/out/utils/logger.js.map +1 -1
  470. package/out/utils/time-slicing.js +2 -1
  471. package/out/utils/time-slicing.js.map +1 -1
  472. package/out/utils/types.d.ts +1 -0
  473. package/out/utils/types.js +3 -0
  474. package/out/utils/types.js.map +1 -0
  475. package/out/utils/window.d.ts +7 -0
  476. package/out/utils/window.js +14 -0
  477. package/out/utils/window.js.map +1 -0
  478. package/package.json +1 -1
  479. package/sandbox/stdlib/nasl.oql.ts +2 -0
  480. package/sandbox/stdlib/nasl.ui.definition.ts +2218 -1415
  481. package/src/bak/translator.js +8 -5
  482. package/src/breakpoint/generator/AfterStartNode.ts +2 -1
  483. package/src/breakpoint/generator/BeforeEndNode.ts +2 -1
  484. package/src/breakpoint/generator/BreakpointNode.ts +36 -9
  485. package/src/breakpoint/shared/constants.ts +7 -0
  486. package/src/breakpoint/shared/utils.ts +36 -3
  487. package/src/common/BaseNode.ts +221 -136
  488. package/src/common/Command.ts +6 -1
  489. package/src/common/EventEmitter.ts +2 -4
  490. package/src/common/index.ts +0 -1
  491. package/src/concepts/Abort__.ts +18 -20
  492. package/src/concepts/Anchor__.ts +24 -23
  493. package/src/concepts/AnonymousFunction__.ts +48 -40
  494. package/src/concepts/App__.ts +435 -333
  495. package/src/concepts/Argument__.ts +29 -26
  496. package/src/concepts/Assignee__.ts +58 -43
  497. package/src/concepts/AssignmentLine__.ts +24 -23
  498. package/src/concepts/Assignment__.ts +49 -34
  499. package/src/concepts/Attribute__.ts +43 -35
  500. package/src/concepts/AuthInterface__.ts +22 -24
  501. package/src/concepts/AuthLogicForCallInterface__.ts +75 -42
  502. package/src/concepts/AuthLogic__.ts +22 -28
  503. package/src/concepts/BackendVariable__.ts +56 -53
  504. package/src/concepts/Backend__.ts +61 -59
  505. package/src/concepts/BatchAssignment__.ts +96 -61
  506. package/src/concepts/BinaryExpression__.ts +91 -45
  507. package/src/concepts/BindAttribute__.ts +165 -113
  508. package/src/concepts/BindDirective__.ts +50 -41
  509. package/src/concepts/BindEvent__.ts +88 -33
  510. package/src/concepts/BindStyle__.ts +42 -36
  511. package/src/concepts/BooleanLiteral__.ts +20 -21
  512. package/src/concepts/CallAuthInterface__.ts +31 -31
  513. package/src/concepts/CallConnector__.ts +48 -39
  514. package/src/concepts/CallFunction__.ts +51 -37
  515. package/src/concepts/CallInterface__.ts +82 -41
  516. package/src/concepts/CallLogic__.ts +174 -93
  517. package/src/concepts/CallQueryComponent__.ts +188 -96
  518. package/src/concepts/Comment__.ts +19 -20
  519. package/src/concepts/CompletionProperty__.ts +37 -31
  520. package/src/concepts/ConfigGroup__.ts +32 -30
  521. package/src/concepts/ConfigPropertyValue__.ts +22 -23
  522. package/src/concepts/ConfigProperty__.ts +45 -36
  523. package/src/concepts/Configuration__.ts +27 -27
  524. package/src/concepts/Connection__.ts +30 -22
  525. package/src/concepts/ConnectorTrigger__.ts +30 -34
  526. package/src/concepts/Connector__.ts +367 -93
  527. package/src/concepts/Constant__.ts +31 -35
  528. package/src/concepts/DataSource__.ts +41 -34
  529. package/src/concepts/DatabaseTypeAnnotation__.ts +24 -24
  530. package/src/concepts/Destination__.ts +55 -47
  531. package/src/concepts/End__.ts +21 -23
  532. package/src/concepts/EntityIndex__.ts +37 -32
  533. package/src/concepts/EntityProperty__.ts +71 -69
  534. package/src/concepts/Entity__.ts +48 -42
  535. package/src/concepts/EnumItem__.ts +22 -25
  536. package/src/concepts/Enum__.ts +31 -29
  537. package/src/concepts/Event__.ts +37 -34
  538. package/src/concepts/ExternalDestination__.ts +35 -31
  539. package/src/concepts/ForEachStatement__.ts +49 -31
  540. package/src/concepts/FrontendLibrary__.ts +45 -40
  541. package/src/concepts/FrontendVariable__.ts +18 -20
  542. package/src/concepts/Frontend__.ts +84 -66
  543. package/src/concepts/Function__.ts +71 -55
  544. package/src/concepts/Identifier__.ts +35 -32
  545. package/src/concepts/IfStatement__.ts +48 -41
  546. package/src/concepts/Integration__.ts +250 -25
  547. package/src/concepts/InterfaceParam__.ts +72 -34
  548. package/src/concepts/Interface__.ts +133 -50
  549. package/src/concepts/JSBlock__.ts +20 -21
  550. package/src/concepts/JavaLogic__.ts +25 -24
  551. package/src/concepts/LogicItem__.ts +27 -36
  552. package/src/concepts/Logic__.ts +186 -103
  553. package/src/concepts/MatchCase__.ts +46 -42
  554. package/src/concepts/Match__.ts +32 -28
  555. package/src/concepts/MemberExpression__.ts +178 -122
  556. package/src/concepts/MicroApp__.ts +32 -27
  557. package/src/concepts/Module__.ts +580 -119
  558. package/src/concepts/MsgTriggerEvent__.ts +29 -34
  559. package/src/concepts/MsgTriggerLauncher__.ts +31 -31
  560. package/src/concepts/Namespace__.ts +157 -111
  561. package/src/concepts/NewComposite__.ts +143 -80
  562. package/src/concepts/NewList__.ts +50 -36
  563. package/src/concepts/NewMap__.ts +60 -40
  564. package/src/concepts/New__.ts +18 -20
  565. package/src/concepts/NullLiteral__.ts +18 -20
  566. package/src/concepts/NumericLiteral__.ts +27 -25
  567. package/src/concepts/OqlQueryComponent__.ts +34 -27
  568. package/src/concepts/OverriddenLogic__.ts +156 -102
  569. package/src/concepts/Param__.ts +53 -51
  570. package/src/concepts/Point__.ts +22 -22
  571. package/src/concepts/ProcessComponent__.ts +44 -39
  572. package/src/concepts/ProcessElement__.ts +142 -92
  573. package/src/concepts/ProcessOutcome__.ts +20 -21
  574. package/src/concepts/ProcessOutcomes__.ts +21 -21
  575. package/src/concepts/Process__.ts +89 -68
  576. package/src/concepts/QueryAggregateExpression__.ts +29 -26
  577. package/src/concepts/QueryFieldExpression__.ts +24 -23
  578. package/src/concepts/QueryFromExpression__.ts +31 -27
  579. package/src/concepts/QueryGroupByExpression__.ts +25 -24
  580. package/src/concepts/QueryJoinExpression__.ts +68 -41
  581. package/src/concepts/QueryLimitExpression__.ts +31 -27
  582. package/src/concepts/QueryOrderByExpression__.ts +31 -27
  583. package/src/concepts/QuerySelectExpression__.ts +109 -55
  584. package/src/concepts/Rect__.ts +26 -24
  585. package/src/concepts/Return__.ts +43 -48
  586. package/src/concepts/Role__.ts +24 -24
  587. package/src/concepts/SelectMembers__.ts +35 -32
  588. package/src/concepts/Slot__.ts +35 -31
  589. package/src/concepts/SqlQueryComponent__.ts +42 -30
  590. package/src/concepts/Start__.ts +18 -20
  591. package/src/concepts/StringInterpolation__.ts +26 -26
  592. package/src/concepts/StringLiteral__.ts +18 -20
  593. package/src/concepts/StructureProperty__.ts +47 -37
  594. package/src/concepts/Structure__.ts +70 -47
  595. package/src/concepts/SwitchCase__.ts +45 -41
  596. package/src/concepts/SwitchStatement__.ts +30 -25
  597. package/src/concepts/Theme__.ts +18 -21
  598. package/src/concepts/Transactional__.ts +24 -31
  599. package/src/concepts/TriggerEvent__.ts +32 -30
  600. package/src/concepts/TriggerLauncher__.ts +31 -81
  601. package/src/concepts/TypeAnnotation__.ts +102 -54
  602. package/src/concepts/TypeParam__.ts +19 -20
  603. package/src/concepts/UnaryExpression__.ts +26 -24
  604. package/src/concepts/Unparsed__.ts +19 -20
  605. package/src/concepts/UseComponent__.ts +22 -22
  606. package/src/concepts/ValidationRule__.ts +544 -553
  607. package/src/concepts/Variable__.ts +44 -48
  608. package/src/concepts/ViewBlock__.ts +26 -25
  609. package/src/concepts/ViewComponent__.ts +111 -97
  610. package/src/concepts/ViewElement__.ts +2778 -2431
  611. package/src/concepts/View__.ts +364 -308
  612. package/src/concepts/WhileStatement__.ts +40 -36
  613. package/src/concepts/index__.ts +0 -1
  614. package/src/concepts/types__.ts +123 -125
  615. package/src/decorators/index.ts +18 -12
  616. package/src/generator/genBundleFiles.ts +14 -4
  617. package/src/generator/genReleaseBody.ts +198 -182
  618. package/src/natural/genNaturalTS.ts +18 -17
  619. package/src/natural/index.ts +0 -2
  620. package/src/sentry/index.ts +2 -2
  621. package/src/server/createUiTs.ts +30 -1
  622. package/src/server/extendBaseNode.ts +18 -18
  623. package/src/server/formatTsUtils.ts +8 -19
  624. package/src/server/getConnector.ts +63 -27
  625. package/src/server/getMemberIdentifier.ts +6 -7
  626. package/src/server/index.ts +4 -1
  627. package/src/server/naslServer.ts +215 -122
  628. package/src/server/translator.ts +1 -3
  629. package/src/service/creator/add.configs.js +26 -1
  630. package/src/service/creator/errHandles.js +5 -4
  631. package/src/service/creator/index.js +12 -0
  632. package/src/service/storage/init.ts +2 -2
  633. package/src/service/storage/jsoner.ts +1 -1
  634. package/src/templator/genCurdEditMultipleKeyBlock.ts +3 -3
  635. package/src/templator/genCurdMultipleKeyBlock.ts +3 -3
  636. package/src/templator/genTableBlock.ts +1 -1
  637. package/src/translator/constant.ts +7 -0
  638. package/src/translator/index.ts +3 -137
  639. package/src/translator/types.ts +40 -0
  640. package/src/translator/utils.ts +102 -0
  641. package/src/utils/cookie.ts +60 -0
  642. package/src/utils/env.ts +2 -0
  643. package/src/utils/index.ts +3 -0
  644. package/src/utils/logger.ts +13 -0
  645. package/src/utils/time-slicing.ts +3 -1
  646. package/src/utils/types.ts +1 -0
  647. package/src/utils/window.ts +9 -0
  648. package/test/concepts/anonymous-function/__snapshots__/toEmbeddedTS.spec.ts.snap +8 -0
  649. package/test/concepts/anonymous-function/__snapshots__/toJS.spec.ts.snap +3 -0
  650. package/test/concepts/anonymous-function/__snapshots__/toVue.spec.ts.snap +6 -0
  651. package/test/concepts/anonymous-function/constant.ts +5 -0
  652. package/test/concepts/anonymous-function/fixtures/simple.json +85 -0
  653. package/test/concepts/anonymous-function/toEmbeddedTS.spec.ts +14 -0
  654. package/test/concepts/anonymous-function/toJS.spec.ts +14 -0
  655. package/test/concepts/anonymous-function/toVue.spec.ts +14 -0
  656. package/test/concepts/assignment/__snapshots__/toEmbeddedTS.spec.ts.snap +21 -0
  657. package/test/concepts/assignment/__snapshots__/toJS.spec.ts.snap +9 -0
  658. package/test/concepts/assignment/__snapshots__/toVue.spec.ts.snap +21 -0
  659. package/test/concepts/assignment/constant.ts +5 -0
  660. package/test/concepts/assignment/fixtures/both-space.json +4 -0
  661. package/test/concepts/assignment/fixtures/left-space.json +14 -0
  662. package/test/concepts/assignment/fixtures/right-space.json +8 -0
  663. package/test/concepts/assignment/fixtures/simple.json +12 -0
  664. package/test/concepts/assignment/toEmbeddedTS.spec.ts +14 -0
  665. package/test/concepts/assignment/toJS.spec.ts +14 -0
  666. package/test/concepts/assignment/toVue.spec.ts +14 -0
  667. package/test/concepts/batch-assignment/__snapshots__/toEmbeddedTS.spec.ts.snap +28 -0
  668. package/test/concepts/batch-assignment/__snapshots__/toJS.spec.ts.snap +13 -0
  669. package/test/concepts/batch-assignment/__snapshots__/toVue.spec.ts.snap +14 -0
  670. package/test/concepts/batch-assignment/constant.ts +5 -0
  671. package/test/concepts/batch-assignment/fixtures/muli-var-muli-value.json +144 -0
  672. package/test/concepts/batch-assignment/fixtures/simple-var-simple-value.json +36 -0
  673. package/test/concepts/batch-assignment/toEmbeddedTS.spec.ts +14 -0
  674. package/test/concepts/batch-assignment/toJS.spec.ts +14 -0
  675. package/test/concepts/batch-assignment/toVue.spec.ts +14 -0
  676. package/test/concepts/binary-expression/__snapshots__/toEmbeddedTS.spec.ts.snap +25 -0
  677. package/test/concepts/binary-expression/__snapshots__/toJS.spec.ts.snap +16 -0
  678. package/test/concepts/binary-expression/__snapshots__/toVue.spec.ts.snap +19 -0
  679. package/test/concepts/binary-expression/constant.ts +5 -0
  680. package/test/concepts/binary-expression/fixtures/constant-nested.json +36 -0
  681. package/test/concepts/binary-expression/fixtures/constant-simple.json +12 -0
  682. package/test/concepts/binary-expression/fixtures/variable-nested.json +69 -0
  683. package/test/concepts/binary-expression/toEmbeddedTS.spec.ts +14 -0
  684. package/test/concepts/binary-expression/toJS.spec.ts +14 -0
  685. package/test/concepts/binary-expression/toVue.spec.ts +14 -0
  686. package/test/concepts/boolean-literal/__snapshots__/toEmbeddedTS.spec.ts.snap +11 -0
  687. package/test/concepts/boolean-literal/__snapshots__/toJS.spec.ts.snap +11 -0
  688. package/test/concepts/boolean-literal/__snapshots__/toVue.spec.ts.snap +11 -0
  689. package/test/concepts/boolean-literal/constant.ts +5 -0
  690. package/test/concepts/boolean-literal/fixtures/false.json +4 -0
  691. package/test/concepts/boolean-literal/fixtures/true.json +4 -0
  692. package/test/concepts/boolean-literal/toEmbeddedTS.spec.ts +14 -0
  693. package/test/concepts/boolean-literal/toJS.spec.ts +14 -0
  694. package/test/concepts/boolean-literal/toVue.spec.ts +14 -0
  695. package/test/concepts/call-interface/toEmbeddedTS.spec.ts +6 -6
  696. package/test/concepts/call-interface/toJS.spec.ts +6 -6
  697. package/test/concepts/call-logic/__snapshots__/getQuickInfoOffset.spec.ts.snap +106 -0
  698. package/test/concepts/call-logic/__snapshots__/toEmbeddedTS.spec.ts.snap +45 -0
  699. package/test/concepts/call-logic/__snapshots__/toJS.spec.ts.snap +102 -0
  700. package/test/concepts/call-logic/fixtures/nested-call-logic.json +860 -0
  701. package/test/concepts/call-logic/getQuickInfoOffset.spec.ts +23 -0
  702. package/test/concepts/call-logic/toEmbeddedTS.spec.ts +6 -6
  703. package/test/concepts/call-logic/toJS.spec.ts +6 -6
  704. package/test/concepts/data-source/__snapshots__/toEmbeddedTS.spec.ts.snap +8 -0
  705. package/test/concepts/data-source/__snapshots__/toEmbeddedTSFile.spec.ts.snap +12 -0
  706. package/test/concepts/data-source/constant.ts +5 -0
  707. package/test/concepts/data-source/fixtures/normal.json +289 -0
  708. package/test/concepts/data-source/toEmbeddedTS.spec.ts +14 -0
  709. package/test/concepts/data-source/toEmbeddedTSFile.spec.ts +15 -0
  710. package/test/concepts/entity/__snapshots__/toEmbeddedTS.spec.ts.snap +74 -0
  711. package/test/concepts/entity/__snapshots__/toEmbeddedTSFile.spec.ts.snap +3 -0
  712. package/test/concepts/entity/constant.ts +5 -0
  713. package/test/concepts/entity/fixtures/normal.json +469 -0
  714. package/test/concepts/entity/toEmbeddedTS.spec.ts +14 -0
  715. package/test/concepts/entity/toEmbeddedTSFile.spec.ts +14 -0
  716. package/test/concepts/identifier/__snapshots__/toEmbeddedTS.spec.ts.snap +16 -0
  717. package/test/concepts/identifier/__snapshots__/toJS.spec.ts.snap +16 -0
  718. package/test/concepts/identifier/__snapshots__/toVue.spec.ts.snap +16 -0
  719. package/test/concepts/identifier/constant.ts +5 -0
  720. package/test/concepts/identifier/fixtures/data-source.json +5 -0
  721. package/test/concepts/identifier/fixtures/no-namespace.json +4 -0
  722. package/test/concepts/identifier/fixtures/view-variable.json +201 -0
  723. package/test/concepts/identifier/toEmbeddedTS.spec.ts +14 -0
  724. package/test/concepts/identifier/toJS.spec.ts +14 -0
  725. package/test/concepts/identifier/toVue.spec.ts +14 -0
  726. package/test/concepts/match/toEmbeddedTS.spec.ts +6 -6
  727. package/test/concepts/match/toJS.spec.ts +6 -6
  728. package/test/concepts/member-expression/__snapshots__/toEmbeddedTS.spec.ts.snap +21 -0
  729. package/test/concepts/member-expression/__snapshots__/toJS.spec.ts.snap +21 -0
  730. package/test/concepts/member-expression/__snapshots__/toVue.spec.ts.snap +21 -0
  731. package/test/concepts/member-expression/constant.ts +5 -0
  732. package/test/concepts/member-expression/fixtures/app.enums.UserStatusEnum.json +13 -0
  733. package/test/concepts/member-expression/fixtures/elements.table-view.data.json +13 -0
  734. package/test/concepts/member-expression/fixtures/entry.created-by.json +18 -0
  735. package/test/concepts/member-expression/fixtures/nasl.auth.userInfo.json +19 -0
  736. package/test/concepts/member-expression/toEmbeddedTS.spec.ts +14 -0
  737. package/test/concepts/member-expression/toJS.spec.ts +14 -0
  738. package/test/concepts/member-expression/toVue.spec.ts +14 -0
  739. package/test/concepts/null-literal/__snapshots__/toEmbeddedTS.spec.ts.snap +6 -0
  740. package/test/concepts/null-literal/__snapshots__/toJS.spec.ts.snap +6 -0
  741. package/test/concepts/null-literal/__snapshots__/toVue.spec.ts.snap +6 -0
  742. package/test/concepts/null-literal/constant.ts +5 -0
  743. package/test/concepts/null-literal/fixtures/null.json +3 -0
  744. package/test/concepts/null-literal/toEmbeddedTS.spec.ts +14 -0
  745. package/test/concepts/null-literal/toJS.spec.ts +14 -0
  746. package/test/concepts/null-literal/toVue.spec.ts +14 -0
  747. package/test/concepts/numeric-literal/__snapshots__/toEmbeddedTS.spec.ts.snap +6 -0
  748. package/test/concepts/numeric-literal/__snapshots__/toJS.spec.ts.snap +6 -0
  749. package/test/concepts/numeric-literal/__snapshots__/toVue.spec.ts.snap +6 -0
  750. package/test/concepts/numeric-literal/constant.ts +5 -0
  751. package/test/concepts/numeric-literal/fixtures/number.json +10 -0
  752. package/test/concepts/numeric-literal/toEmbeddedTS.spec.ts +14 -0
  753. package/test/concepts/numeric-literal/toJS.spec.ts +14 -0
  754. package/test/concepts/numeric-literal/toVue.spec.ts +14 -0
  755. package/test/concepts/string-literal/__snapshots__/toEmbeddedTS.spec.ts.snap +16 -0
  756. package/test/concepts/string-literal/__snapshots__/toJS.spec.ts.snap +16 -0
  757. package/test/concepts/string-literal/__snapshots__/toVue.spec.ts.snap +16 -0
  758. package/test/concepts/string-literal/constant.ts +5 -0
  759. package/test/concepts/string-literal/fixtures/escape.json +4 -0
  760. package/test/concepts/string-literal/fixtures/space.json +4 -0
  761. package/test/concepts/string-literal/fixtures/string.json +4 -0
  762. package/test/concepts/string-literal/toEmbeddedTS.spec.ts +14 -0
  763. package/test/concepts/string-literal/toJS.spec.ts +14 -0
  764. package/test/concepts/string-literal/toVue.spec.ts +14 -0
  765. package/test/concepts/utils.ts +46 -43
  766. package/test/concepts/validation-rule/toEmbeddedTS.spec.ts +6 -6
  767. package/test/concepts/validation-rule/toJS.spec.ts +6 -6
  768. package/test/concepts/validation-rule/validation-rule.spec.ts +8 -8
  769. package/test/concepts/view-element/__snapshots__/toEmbeddedTS.spec.ts.snap +592 -0
  770. package/test/concepts/view-element/__snapshots__/toVue.spec.ts.snap +324 -12
  771. package/test/concepts/view-element/fixtures/default-login.json +333 -0
  772. package/test/concepts/view-element/fixtures/default-not-found.json +313 -313
  773. package/test/concepts/view-element/fixtures/with-role-auth.json +148 -0
  774. package/test/concepts/view-element/fixtures/with-table.json +3473 -0
  775. package/test/concepts/view-element/toEmbeddedTS.spec.ts +6 -6
  776. package/test/concepts/view-element/toVue.spec.ts +6 -6
  777. package/ts-worker/package-lock.json +6663 -101
  778. package/ts-worker/webpack.config.js +1 -1
  779. package/out/common/classMap.d.ts +0 -4
  780. package/out/common/classMap.js +0 -5
  781. package/out/common/classMap.js.map +0 -1
  782. package/out/concepts/DataElement__.d.ts +0 -46
  783. package/out/concepts/DataElement__.js +0 -118
  784. package/out/concepts/DataElement__.js.map +0 -1
  785. package/out/natural/RequirementAnalyzer.d.ts +0 -22
  786. package/out/natural/RequirementAnalyzer.js +0 -196
  787. package/out/natural/RequirementAnalyzer.js.map +0 -1
  788. package/out/natural/RequirementExecutor.d.ts +0 -51
  789. package/out/natural/RequirementExecutor.js +0 -692
  790. package/out/natural/RequirementExecutor.js.map +0 -1
  791. package/out/natural/knowledgeMap.d.ts +0 -4
  792. package/out/natural/knowledgeMap.js +0 -40
  793. package/out/natural/knowledgeMap.js.map +0 -1
  794. package/out/translator/lsp.d.ts +0 -45
  795. package/out/translator/lsp.js +0 -6
  796. package/out/translator/lsp.js.map +0 -1
  797. package/out/translator/tsp.d.ts +0 -12
  798. package/out/translator/tsp.js.map +0 -1
  799. package/src/common/classMap.ts +0 -3
  800. package/src/concepts/DataElement__.ts +0 -131
  801. package/src/natural/RequirementAnalyzer.ts +0 -208
  802. package/src/natural/RequirementExecutor.ts +0 -685
  803. package/src/natural/knowledgeMap.ts +0 -39
  804. package/src/test/examples/app1.json +0 -1406
  805. package/src/test/fixtures/env.ts +0 -19
  806. package/src/test/integration/connect-create-file.ts +0 -14
  807. package/src/test/integration/connect-file.ts +0 -24
  808. package/src/test/integration/node-nasl-server.ts +0 -14
  809. package/src/test/units/baseTypes/Assignment.spec.ts +0 -20
  810. package/src/test/units/baseTypes/CallLogic.spec.ts +0 -22
  811. package/src/test/units/baseTypes/StringLiteral.spec.ts +0 -60
  812. package/src/test/units/baseTypes/new.spec.ts +0 -13
  813. package/src/test/units/common/Vertex.spec.ts +0 -23
  814. package/src/test/units/data/Entity.spec.ts +0 -10
  815. package/src/test/units/login.spec.ts +0 -10
  816. package/src/test/units/page/Block.spec.ts +0 -15
  817. package/src/test/units/page/Element.spec.ts +0 -45
  818. package/src/test/units/page/example.dashboard.html +0 -46
  819. package/src/test/units/page/example.view1.html +0 -63
  820. package/src/test/units/temp/temp.spec.ts +0 -66
  821. package/src/translator/lsp.ts +0 -50
  822. package/src/translator/tsp.ts +0 -14
@@ -11,589 +11,580 @@ import BindAttribute from './BindAttribute__';
11
11
  // ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
12
12
  //================================================================================
13
13
  import { EventPayload, Params } from '../common/EventEmitter';
14
- import { concept, excludedInJSON, property } from '../decorators';
14
+ import { concept, excludedInJSON, property, className } from '../decorators';
15
15
 
16
16
  import * as utils from '../utils';
17
17
  import BaseNode from '../common/BaseNode';
18
- import classMap from '../common/classMap';
19
18
  import Argument from './Argument__';
20
19
  import LogicItem from './LogicItem__';
21
20
 
22
21
  /**
23
22
  * 验证规则
24
23
  */
24
+ @className
25
25
  @concept('验证规则')
26
+ // @ts-ignore
26
27
  export class ValidationRule extends LogicItem {
27
- /**
28
- * 产品概念
29
- */
30
- @property()
31
- concept: 'ValidationRule' = 'ValidationRule';
32
-
33
- /**
34
- * 验证规则标题
35
- */
36
- @property()
37
- label: string = '验证规则';
38
-
39
- /**
40
- * calleeNamespace
41
- */
42
- @property()
43
- calleeNamespace: string = undefined;
44
-
45
- /**
46
- * calleeName
47
- */
48
- @property()
49
- calleeName: string = undefined;
50
-
51
- /**
52
- * 实际参数
53
- */
54
- @property('Argument')
55
- arguments: Array<Argument> = [];
56
-
57
- /**
58
- * 错误信息
59
- */
60
- @property('LogicItem')
61
- errorMessage: LogicItem = undefined;
62
-
63
- /**
64
- * 验证对象
65
- */
66
- @property('LogicItem')
67
- target: LogicItem = undefined;
68
-
69
- /**
70
- * 是否启用服务端验证
71
- */
72
- @property()
73
- enableServerValidation: boolean = true;
74
-
75
-
76
-
77
- /**
78
- * @param source 需要合并的部分参数
79
- */
80
- constructor(source?: Partial<ValidationRule>) {
81
- source = Object.assign({}, ValidationRule.getDefaultOptions(), source);
82
- super(source);
83
- super.subConstructor(source);
28
+ /** 类名 */
29
+ static readonly ConceptName = 'ValidationRule';
30
+
31
+ /**
32
+ * 产品概念
33
+ */
34
+ // @ts-ignore
35
+ readonly concept!: 'ValidationRule';
36
+
37
+ /**
38
+ * 验证规则标题
39
+ */
40
+ @property()
41
+ label: string = '验证规则';
42
+
43
+ /**
44
+ * calleeNamespace
45
+ */
46
+ @property()
47
+ // @ts-ignore
48
+ calleeNamespace!: string;
49
+
50
+ /**
51
+ * calleeName
52
+ */
53
+ @property()
54
+ // @ts-ignore
55
+ calleeName!: string;
56
+
57
+ /**
58
+ * 实际参数
59
+ */
60
+ @property({
61
+ objectRef: 'Argument',
62
+ isArray: true,
63
+ })
64
+ arguments: Array<Argument> = [];
65
+
66
+ /**
67
+ * 错误信息
68
+ */
69
+ @property({
70
+ objectRef: 'LogicItem',
71
+ })
72
+ // @ts-ignore
73
+ errorMessage!: LogicItem;
74
+
75
+ /**
76
+ * 验证对象
77
+ */
78
+ @property({
79
+ objectRef: 'LogicItem',
80
+ })
81
+ // @ts-ignore
82
+ target!: LogicItem;
83
+
84
+ /**
85
+ * 是否启用服务端验证
86
+ */
87
+ @property()
88
+ enableServerValidation: boolean = true;
89
+
90
+ /**
91
+ * @param source 需要合并的部分参数
92
+ */
93
+ constructor(source?: Partial<ValidationRule>) {
94
+ source = Object.assign({}, ValidationRule.getDefaultOptions(), source);
95
+ super(source);
96
+ super.subConstructor(source);
97
+ }
98
+
99
+ static from(source: any, parentNode?: any, parentKey?: string): ValidationRule {
100
+ return super.from(source, parentNode, parentKey) as ValidationRule;
101
+ }
102
+
103
+ /**
104
+ * 设置错误信息
105
+ */
106
+ setErrorMessage(errorMessage: LogicItem) {
107
+ errorMessage._delete();
108
+ const relationOptions = { parentNode: this, parentKey: 'errorMessage' };
109
+ Object.assign(errorMessage, relationOptions);
110
+ const object = {
111
+ errorMessage,
112
+ };
113
+ this.update({
114
+ ...object,
115
+ });
116
+ }
117
+
118
+ /**
119
+ * 设置验证对象
120
+ */
121
+ setTarget(target: LogicItem) {
122
+ target._delete();
123
+ const relationOptions = { parentNode: this, parentKey: 'target' };
124
+ Object.assign(target, relationOptions);
125
+ const object = {
126
+ target,
127
+ };
128
+ this.update({
129
+ ...object,
130
+ });
131
+ }
132
+
133
+ /**
134
+ * 设置是否启用服务端验证
135
+ */
136
+ setEnableServerValidation(enableServerValidation: boolean) {
137
+ const object = {
138
+ enableServerValidation,
139
+ };
140
+ this.update({
141
+ ...object,
142
+ });
143
+ }
144
+
145
+ /**
146
+ * 插入实际参数
147
+ * @internal
148
+ * @param argumentOptions 实际参数参数
149
+ */
150
+ _insertArgumentAt(argumentOptions: Partial<Argument>, index: number): Argument;
151
+
152
+ /**
153
+ * 插入实际参数
154
+ * @internal
155
+ * @param argument 已有的实际参数实例
156
+ */
157
+ _insertArgumentAt(argument: Argument, index: number): Argument;
158
+
159
+ _insertArgumentAt(options: Partial<Argument> | Argument, index: number) {
160
+ const argumentOptions: any = {};
161
+ const relationOptions = { parentNode: this, parentKey: 'arguments' };
162
+ let argument: Argument;
163
+ if (options instanceof Argument) {
164
+ options.ensureDelete(); // 同一实例不支持多处存在
165
+ argument = options;
166
+ Object.assign(argument, relationOptions);
167
+ } else {
168
+ argument = Argument.from(
169
+ {
170
+ ...argumentOptions,
171
+ ...options,
172
+ },
173
+ this,
174
+ 'arguments',
175
+ );
84
176
  }
85
- getClassName() {
86
- return 'ValidationRule';
177
+ this.arguments.splice(index, 0, argument);
178
+ return argument;
179
+ }
180
+
181
+ /**
182
+ * 插入实际参数
183
+ * @param argumentOptions 实际参数参数
184
+ */
185
+ insertArgumentAt(argumentOptions: Partial<Argument>, index: number): Argument;
186
+
187
+ /**
188
+ * 插入实际参数
189
+ * @param argument 已有的实际参数实例
190
+ */
191
+ insertArgumentAt(argument: Argument, index: number): Argument;
192
+
193
+ insertArgumentAt(options: Partial<Argument> | Argument, index: number) {
194
+ const node = this._insertArgumentAt(options as any, index);
195
+ node.create({
196
+ index,
197
+ parentNode: this,
198
+ parentKey: 'arguments',
199
+ });
200
+ return node;
201
+ }
202
+
203
+ /**
204
+ * 添加实际参数
205
+ * @internal
206
+ * @param argumentOptions 实际参数参数
207
+ */
208
+ _addArgument(argumentOptions: Partial<Argument>): Argument;
209
+
210
+ /**
211
+ * 添加实际参数
212
+ * @internal
213
+ * @param argument 已有的实际参数实例
214
+ */
215
+ _addArgument(argument: Argument): Argument;
216
+
217
+ _addArgument(options?: Partial<Argument> | Argument) {
218
+ const index = this.arguments.length;
219
+ return this._insertArgumentAt(options as any, index);
220
+ }
221
+
222
+ /**
223
+ * 添加实际参数
224
+ * @param argumentOptions 实际参数参数
225
+ */
226
+ addArgument(argumentOptions: Partial<Argument>): Argument;
227
+
228
+ /**
229
+ * 添加实际参数
230
+ * @param argument 已有的实际参数实例
231
+ */
232
+ addArgument(argument: Argument): Argument;
233
+
234
+ addArgument(options?: Partial<Argument> | Argument) {
235
+ const node = this._addArgument(options as any);
236
+ const index = this.arguments.indexOf(node);
237
+ node.create({
238
+ index,
239
+ parentNode: this,
240
+ parentKey: 'arguments',
241
+ });
242
+ return node;
243
+ }
244
+
245
+ /**
246
+ * 删除实际参数
247
+ * @param argument 已有的实际参数实例
248
+ */
249
+ removeArgumentInArguments(argument: Argument): void;
250
+
251
+ removeArgumentInArguments(options: Argument) {
252
+ let argument: Argument = options;
253
+ return argument.delete();
254
+ }
255
+
256
+ /**
257
+ * 删除逻辑项
258
+ * @param name 逻辑项名称
259
+ */
260
+ removeErrorMessage(name: string): void;
261
+
262
+ /**
263
+ * 删除逻辑项
264
+ * @param errorMessage 已有的逻辑项实例
265
+ */
266
+ removeErrorMessage(errorMessage: LogicItem): void;
267
+
268
+ removeErrorMessage(options: string | LogicItem) {
269
+ let errorMessage: LogicItem;
270
+ if (typeof options === 'string') {
271
+ errorMessage = this.errorMessage;
272
+ if (!errorMessage) {
273
+ throw new Error('找不到逻辑项 ' + options);
274
+ }
275
+ } else {
276
+ errorMessage = options;
87
277
  }
88
-
89
- static from(source: any, parentNode?: any, parentKey?: string): ValidationRule {
90
- return super.from(source, parentNode, parentKey) as ValidationRule;
278
+ return errorMessage.delete();
279
+ }
280
+
281
+ /**
282
+ * 删除逻辑项
283
+ * @param name 逻辑项名称
284
+ */
285
+ removeTarget(name: string): void;
286
+
287
+ /**
288
+ * 删除逻辑项
289
+ * @param target 已有的逻辑项实例
290
+ */
291
+ removeTarget(target: LogicItem): void;
292
+
293
+ removeTarget(options: string | LogicItem) {
294
+ let target: LogicItem;
295
+ if (typeof options === 'string') {
296
+ target = this.target;
297
+ if (!target) {
298
+ throw new Error('找不到逻辑项 ' + options);
299
+ }
300
+ } else {
301
+ target = options;
91
302
  }
92
-
93
-
94
- /**
95
- * 设置错误信息
96
- */
97
- setErrorMessage(errorMessage: LogicItem) {
98
- errorMessage._delete();
99
- const relationOptions = { parentNode: this, parentKey: 'errorMessage' };
100
- Object.assign(errorMessage, relationOptions);
101
- const object = {
102
- errorMessage,
103
- };
104
- this.update({
105
- ...object,
106
- });
303
+ return target.delete();
304
+ }
305
+
306
+ __removeLogicItem(logicItem: LogicItem) {
307
+ const parentKey = logicItem.parentKey;
308
+ const params: Params = {
309
+ parentNode: this,
310
+ parentKey,
311
+ index: -1,
312
+ object: null,
313
+ oldObject: logicItem,
314
+ };
315
+ if (parentKey) {
316
+ params.parentKey = parentKey;
317
+ if (Array.isArray((this as any)[parentKey])) {
318
+ const index = (this as any)[parentKey].indexOf(logicItem);
319
+ ~index && (this as any)[parentKey].splice(index, 1);
320
+ params.index = index;
321
+ } else if ((this as any)[parentKey] === logicItem) {
322
+ params.index = 0;
323
+ (this as any)[parentKey] = undefined;
324
+ }
107
325
  }
108
-
109
- /**
110
- * 设置验证对象
111
- */
112
- setTarget(target: LogicItem) {
113
- target._delete();
114
- const relationOptions = { parentNode: this, parentKey: 'target' };
115
- Object.assign(target, relationOptions);
116
- const object = {
117
- target,
118
- };
119
- this.update({
120
- ...object,
121
- });
326
+ return params;
327
+ }
328
+
329
+ //================================================================================
330
+ // ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
331
+ // 自动生成的代码已结束。下面可以手动编写。
332
+ //================================================================================
333
+
334
+ public static getDefaultOptions() {
335
+ return {
336
+ target: {
337
+ concept: 'Identifier',
338
+ name: '',
339
+ },
340
+ };
341
+ }
342
+
343
+ toInViewMethod() {
344
+ let code = '{';
345
+ // 兼容就得简写模式
346
+ if (this.calleeName && this.calleeName.includes('(')) {
347
+ return `'${this.calleeName}'`;
348
+ } else if (this.calleeName === 'unique') {
349
+ code += `validate: 'excluded',`;
350
+ } else if (this.calleeName === 'confirmed') {
351
+ code += `validate: 'is',`;
352
+ } else {
353
+ code += `validate: '${this.calleeName}',`;
122
354
  }
123
-
124
- /**
125
- * 设置是否启用服务端验证
126
- */
127
- setEnableServerValidation(enableServerValidation: boolean) {
128
- const object = {
129
- enableServerValidation,
130
- };
131
- this.update({
132
- ...object,
133
- });
355
+ if (this.arguments.length) {
356
+ let args = '[';
357
+ this.arguments?.forEach((arg, index) => {
358
+ args += arg?.toJS();
359
+ if (index !== this.arguments?.length - 1) args += ', ';
360
+ });
361
+ args += ']';
362
+ code += `args: ${args} ,`;
134
363
  }
135
-
136
-
137
-
138
-
139
-
140
- /**
141
- * 插入实际参数
142
- * @internal
143
- * @param argumentOptions 实际参数参数
144
- */
145
- _insertArgumentAt(argumentOptions: Partial<Argument>, index: number): Argument;
146
-
147
- /**
148
- * 插入实际参数
149
- * @internal
150
- * @param argument 已有的实际参数实例
151
- */
152
- _insertArgumentAt(argument: Argument, index: number): Argument;
153
-
154
- _insertArgumentAt(options: Partial<Argument> | Argument, index: number) {
155
- const argumentOptions: any = {};
156
- const relationOptions = { parentNode: this, parentKey: 'arguments' };
157
- let argument: Argument;
158
- if (options instanceof Argument) {
159
- options.ensureDelete(); // 同一实例不支持多处存在
160
- argument = options;
161
- Object.assign(argument, relationOptions);
162
- } else {
163
- argument = Argument.from({
164
- ...argumentOptions,
165
- ...options,
166
- }, this, 'arguments');
167
- }
168
- this.arguments.splice(index, 0, argument);
169
- return argument;
364
+ if (this.errorMessage) {
365
+ code += `message: ${this.errorMessage?.toJS()},`;
366
+ } else {
367
+ let defaultError = (defaultErrorMessage as Record<string, string>)[this.calleeName];
368
+ let index = 0;
369
+ while (defaultError && defaultError.indexOf(`{args}`) !== -1) {
370
+ defaultError = defaultError.replace(`{args}`, `\${${this.arguments[index]?.toJS()}}`);
371
+ index++;
372
+ }
373
+ const itemTitle = (this?.parentNode as any)?.parentNode?.bindAttrs?.find(
374
+ (item: BindAttribute) => item.name === 'label',
375
+ );
376
+ let labelName;
377
+ if (itemTitle?.expression?.toJS()) {
378
+ labelName = `\${${itemTitle?.expression?.toJS()}}`;
379
+ } else {
380
+ labelName = itemTitle?.value || '表单项';
381
+ }
382
+ defaultError = defaultError && defaultError.replace(`{label}`, labelName);
383
+ code += `message: \`${defaultError}\`,`;
170
384
  }
171
-
172
-
173
-
174
- /**
175
- * 插入实际参数
176
- * @param argumentOptions 实际参数参数
177
- */
178
- insertArgumentAt(argumentOptions: Partial<Argument>, index: number): Argument;
179
-
180
- /**
181
- * 插入实际参数
182
- * @param argument 已有的实际参数实例
183
- */
184
- insertArgumentAt(argument: Argument, index: number): Argument;
185
-
186
- insertArgumentAt(options: Partial<Argument> | Argument, index: number) {
187
- const node = this._insertArgumentAt(options as any, index);
188
- node.create({
189
- index,
190
- parentNode: this,
191
- parentKey: 'arguments',
192
- });
193
- return node;
385
+ code += `trigger: 'input+blur'`;
386
+ if (['required', 'filled', 'notEmpty'].includes(this.calleeName)) {
387
+ code += ',required: true';
194
388
  }
195
-
196
-
197
-
198
- /**
199
- * 添加实际参数
200
- * @internal
201
- * @param argumentOptions 实际参数参数
202
- */
203
- _addArgument(argumentOptions: Partial<Argument>): Argument;
204
-
205
- /**
206
- * 添加实际参数
207
- * @internal
208
- * @param argument 已有的实际参数实例
209
- */
210
- _addArgument(argument: Argument): Argument;
211
-
212
- _addArgument(options?: Partial<Argument> | Argument) {
213
- const index = this.arguments.length;
214
- return this._insertArgumentAt(options as any, index);
389
+ code += '}';
390
+ return code;
391
+ }
392
+
393
+ toVue(options?: ElementToVueOptions) {
394
+ let code = '{';
395
+ // 兼容就得简写模式
396
+ if (this.calleeName && this.calleeName.includes('(')) {
397
+ return `'${this.calleeName}'`;
398
+ } else if (this.calleeName === 'unique') {
399
+ code += `validate: 'excluded',`;
400
+ } else if (this.calleeName === 'confirmed') {
401
+ code += `validate: 'is',`;
402
+ } else {
403
+ code += `validate: '${this.calleeName}',`;
215
404
  }
216
-
217
-
218
-
219
- /**
220
- * 添加实际参数
221
- * @param argumentOptions 实际参数参数
222
- */
223
- addArgument(argumentOptions: Partial<Argument>): Argument;
224
-
225
- /**
226
- * 添加实际参数
227
- * @param argument 已有的实际参数实例
228
- */
229
- addArgument(argument: Argument): Argument;
230
-
231
- addArgument(options?: Partial<Argument> | Argument) {
232
- const node = this._addArgument(options as any);
233
- const index = this.arguments.indexOf(node);
234
- node.create({
235
- index,
236
- parentNode: this,
237
- parentKey: 'arguments',
238
- });
239
- return node;
405
+ if (this.arguments.length) {
406
+ let args = '[';
407
+ this.arguments?.forEach((arg, index) => {
408
+ args += arg?.toVue(options);
409
+ if (index !== this.arguments?.length - 1) args += ', ';
410
+ });
411
+ args += ']';
412
+ code += `args: ${args} ,`;
240
413
  }
241
-
242
-
243
-
244
-
245
- /**
246
- * 删除实际参数
247
- * @param argument 已有的实际参数实例
248
- */
249
- removeArgumentInArguments(argument: Argument): void;
250
-
251
- removeArgumentInArguments(options: Argument) {
252
- let argument: Argument = options;
253
- return argument.delete();
254
- }
255
-
256
-
257
-
258
- /**
259
- * 删除逻辑项
260
- * @param name 逻辑项名称
261
- */
262
- removeErrorMessage(name: string): void;
263
-
264
- /**
265
- * 删除逻辑项
266
- * @param errorMessage 已有的逻辑项实例
267
- */
268
- removeErrorMessage(errorMessage: LogicItem): void;
269
-
270
- removeErrorMessage(options: string | LogicItem) {
271
- let errorMessage: LogicItem;
272
- if (typeof options === 'string') {
273
- errorMessage = this.errorMessage;
274
- if (!errorMessage) {
275
- throw new Error('找不到逻辑项 ' + options);
276
- }
277
- } else {
278
- errorMessage = options;
279
- }
280
- return errorMessage.delete();
281
- }
282
-
283
-
284
-
285
- /**
286
- * 删除逻辑项
287
- * @param name 逻辑项名称
288
- */
289
- removeTarget(name: string): void;
290
-
291
- /**
292
- * 删除逻辑项
293
- * @param target 已有的逻辑项实例
294
- */
295
- removeTarget(target: LogicItem): void;
296
-
297
- removeTarget(options: string | LogicItem) {
298
- let target: LogicItem;
299
- if (typeof options === 'string') {
300
- target = this.target;
301
- if (!target) {
302
- throw new Error('找不到逻辑项 ' + options);
303
- }
304
- } else {
305
- target = options;
306
- }
307
- return target.delete();
308
- }
309
-
310
- __removeLogicItem(logicItem: LogicItem) {
311
- const parentKey = logicItem.parentKey;
312
- const params: Params = {
313
- parentNode: this,
314
- parentKey,
315
- index: -1,
316
- object: null,
317
- oldObject: logicItem,
318
- };
319
- if (parentKey) {
320
- params.parentKey = parentKey;
321
- if (Array.isArray((this as any)[parentKey])) {
322
- const index = (this as any)[parentKey].indexOf(logicItem);
323
- ~index && (this as any)[parentKey].splice(index, 1);
324
- params.index = index;
325
- } else if ((this as any)[parentKey] === logicItem) {
326
- params.index = 0;
327
- (this as any)[parentKey] = undefined;
328
- }
329
- }
330
- return params;
331
- }
332
-
333
- //================================================================================
334
- // ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
335
- // 自动生成的代码已结束。下面可以手动编写。
336
- //================================================================================
337
-
338
- public static getDefaultOptions() {
339
- return {
340
- target: {
341
- concept: 'Identifier',
342
- name: '',
343
- },
344
- };
345
- }
346
-
347
- toInViewMethod() {
348
- let code = '{';
349
- // 兼容就得简写模式
350
- if (this.calleeName && this.calleeName.includes('(')) {
351
- return `'${this.calleeName}'`;
352
- } else if (this.calleeName === 'unique') {
353
- code += `validate: 'excluded',`;
354
- } else if (this.calleeName === 'confirmed') {
355
- code += `validate: 'is',`;
356
- } else {
357
- code += `validate: '${this.calleeName}',`;
358
- }
359
- if (this.arguments.length) {
360
- let args = '[';
361
- this.arguments?.forEach((arg, index) => {
362
- args += arg?.toJS();
363
- if (index !== this.arguments?.length - 1)
364
- args += ', ';
365
- });
366
- args += ']';
367
- code += `args: ${args} ,`;
368
- }
369
- if (this.errorMessage) {
370
- code += `message: ${this.errorMessage?.toJS()},`;
371
- } else {
372
- let defaultError = (defaultErrorMessage as Record<string, string>)[this.calleeName];
373
- let index = 0;
374
- while (defaultError && defaultError.indexOf(`{args}`) !== -1) {
375
- defaultError = defaultError.replace(`{args}`, `\${${this.arguments[index]?.toJS()}}`);
376
- index++;
377
- }
378
- const itemTitle = (this?.parentNode as any)?.parentNode?.bindAttrs?.find((item: BindAttribute) => item.name === 'label');
379
- let labelName;
380
- if (itemTitle?.expression?.toJS()) {
381
- labelName = `\${${itemTitle?.expression?.toJS()}}`;
382
- } else {
383
- labelName = itemTitle?.value || '表单项';
384
- }
385
- defaultError = defaultError && defaultError.replace(`{label}`, labelName);
386
- code += `message: \`${defaultError}\`,`;
387
- }
388
- code += `trigger: 'input+blur'`;
389
- if (['required', 'filled', 'notEmpty'].includes(this.calleeName)) {
390
- code += ',required: true';
391
- }
392
- code += '}';
393
- return code;
394
- }
395
-
396
- toVue(options?: ElementToVueOptions) {
397
- let code = '{';
398
- // 兼容就得简写模式
399
- if (this.calleeName && this.calleeName.includes('(')) {
400
- return `'${this.calleeName}'`;
401
- } else if (this.calleeName === 'unique') {
402
- code += `validate: 'excluded',`;
403
- } else if (this.calleeName === 'confirmed') {
404
- code += `validate: 'is',`;
405
- } else {
406
- code += `validate: '${this.calleeName}',`;
407
- }
408
- if (this.arguments.length) {
409
- let args = '[';
410
- this.arguments?.forEach((arg, index) => {
411
- args += arg?.toVue(options);
412
- if (index !== this.arguments?.length - 1)
413
- args += ', ';
414
- });
415
- args += ']';
416
- code += `args: ${args} ,`;
417
- }
418
- if (this.errorMessage) {
419
- code += `message: ${this.errorMessage?.toVue(options)},`;
420
- } else {
421
- let defaultError = (defaultErrorMessage as Record<string, string>)[this.calleeName];
422
- let index = 0;
423
- while (defaultError && defaultError.indexOf(`{args}`) !== -1) {
424
- defaultError = defaultError.replace(`{args}`, `\${${this.arguments[index]?.toVue(options)}}`);
425
- index++;
426
- }
427
- const itemTitle = (this?.parentNode as any)?.parentNode?.bindAttrs?.find((item: BindAttribute) => item.name === 'label');
428
- let labelName;
429
- if (itemTitle?.expression?.toVue()) {
430
- labelName = `\${${itemTitle?.expression?.toVue()}}`;
431
- } else {
432
- labelName = itemTitle?.value || '表单项';
433
- }
434
- defaultError = defaultError && defaultError.replace(`{label}`, labelName);
435
- code += `message: \`${defaultError}\`,`;
436
- }
437
- code += `trigger: 'input+blur'`;
438
- if (['required', 'filled', 'notEmpty'].includes(this.calleeName)) {
439
- code += ',required: true';
440
- }
441
- code += '}';
442
- return code;
414
+ if (this.errorMessage) {
415
+ code += `message: ${this.errorMessage?.toVue(options)},`;
416
+ } else {
417
+ let defaultError = (defaultErrorMessage as Record<string, string>)[this.calleeName];
418
+ let index = 0;
419
+ while (defaultError && defaultError.indexOf(`{args}`) !== -1) {
420
+ defaultError = defaultError.replace(`{args}`, `\${${this.arguments[index]?.toVue(options)}}`);
421
+ index++;
422
+ }
423
+ const itemTitle = (this?.parentNode as any)?.parentNode?.bindAttrs?.find(
424
+ (item: BindAttribute) => item.name === 'label',
425
+ );
426
+ let labelName;
427
+ if (itemTitle?.expression?.toVue()) {
428
+ labelName = `\${${itemTitle?.expression?.toVue()}}`;
429
+ } else {
430
+ labelName = itemTitle?.value || '表单项';
431
+ }
432
+ defaultError = defaultError && defaultError.replace(`{label}`, labelName);
433
+ code += `message: \`${defaultError}\`,`;
443
434
  }
444
-
445
- toUI(state?: TranslatorState): string {
446
- let code = this.calleeName;
447
- if (this.arguments?.length) {
448
- code += '(';
449
- this.arguments?.forEach((arg, index) => {
450
- code += arg?.toUI(shiftState(state, code));
451
- if (index !== this.arguments?.length - 1)
452
- code += ', ';
453
- });
454
- code += ')';
455
- }
456
- return code;
435
+ code += `trigger: 'input+blur'`;
436
+ if (['required', 'filled', 'notEmpty'].includes(this.calleeName)) {
437
+ code += ',required: true';
457
438
  }
458
-
459
- toJS(state?: TranslatorState): string {
460
- let code = '{';
461
- code += `validate: '${this.calleeName}',`;
462
- if (this.arguments.length) {
463
- let args = '[';
464
- this.arguments?.forEach((arg, index) => {
465
- args += arg?.toJS(shiftState(state, code));
466
- if (index !== this.arguments?.length - 1)
467
- args += ', ';
468
- });
469
- args += ']';
470
- code += `args: ${args},`;
471
- }
472
- code += `trigger: 'input+blur',`;
473
- code += `message: ${this.errorMessage?.toJS(shiftState(state, code))}`;
474
- code += '}';
475
- return code;
439
+ code += '}';
440
+ return code;
441
+ }
442
+
443
+ toUI(state?: TranslatorState): string {
444
+ let code = this.calleeName;
445
+ if (this.arguments?.length) {
446
+ code += '(';
447
+ this.arguments?.forEach((arg, index) => {
448
+ code += arg?.toUI(shiftState(state, code));
449
+ if (index !== this.arguments?.length - 1) code += ', ';
450
+ });
451
+ code += ')';
476
452
  }
477
-
478
- @withSourceMap()
479
- toEmbeddedTS(state?: TranslatorState): string {
480
- let code = '';
481
-
482
- const {
483
- calleeName,
484
- target,
485
- calleeKey,
486
- arguments: args,
487
- errorMessage,
488
- view,
489
- } = this;
490
-
491
- if (calleeName) {
492
- // 调用逻辑时绑定的验证器
493
- if (this.getAncestor('CallLogic') || !view) {
494
- code += target.toEmbeddedTS(shiftState(state, code));
495
- code += ';\n';
496
- }
497
-
498
- if (args.length > 0) {
499
- const validationInFunction = getValidationInFunction(calleeName);
500
- code += calleeKey;
501
- code += '(';
502
- args.forEach((arg, index) => {
503
- const param = validationInFunction?.params?.[index];
504
-
505
- // 当前参数缺失 keyword,且原始形参中有名称,则补充参数
506
- if (!arg.keyword && param.name) {
507
- arg.keyword = param.name;
508
- }
509
-
510
- // 如果找到函数而且有参数,就用参数的必填非必填
511
- if (validationInFunction && param) {
512
- code += arg.toEmbeddedTS(shiftState(state, code), param.required, false);
513
- }
514
- // 如果没有就默认不必填
515
- else {
516
- code += arg.toEmbeddedTS(shiftState(state, code), false, false);
517
- }
518
-
519
- if (index !== args.length - 1) {
520
- code += ', ';
521
- }
522
- });
523
- code += ');';
524
- }
525
-
526
- if (errorMessage) {
527
- code += 'nasl.validation.errorMessage(';
528
- code += errorMessage.toEmbeddedTS(shiftState(state, code));
529
- code += ')';
530
- }
531
- } else {
532
- code += '__ValidationRule__';
533
- }
534
- return code;
453
+ return code;
454
+ }
455
+
456
+ toJS(state?: TranslatorState): string {
457
+ let code = '{';
458
+ code += `validate: '${this.calleeName}',`;
459
+ if (this.arguments.length) {
460
+ let args = '[';
461
+ this.arguments?.forEach((arg, index) => {
462
+ args += arg?.toJS(shiftState(state, code));
463
+ if (index !== this.arguments?.length - 1) args += ', ';
464
+ });
465
+ args += ']';
466
+ code += `args: ${args},`;
535
467
  }
536
-
537
- toBrief(): string {
538
- return this.arguments.map((a) => a.toBrief()).join('<br />');
539
- }
540
-
541
- get calleeKey(): string {
542
- return `${this.calleeNamespace}.${this.calleeName}`;
543
- }
544
-
545
- _setCallee(func: Function) {
546
- this.calleeNamespace = func.getNamespace();
547
- this.calleeName = func.name;
548
- this.arguments = [];
549
- func.params.forEach((param) => {
550
- this._addArgument(undefined);
468
+ code += `trigger: 'input+blur',`;
469
+ code += `message: ${this.errorMessage?.toJS(shiftState(state, code))}`;
470
+ code += '}';
471
+ return code;
472
+ }
473
+
474
+ @withSourceMap()
475
+ toEmbeddedTS(state?: TranslatorState): string {
476
+ let code = '';
477
+
478
+ const { calleeName, target, calleeKey, arguments: args, errorMessage, view } = this;
479
+
480
+ if (calleeName) {
481
+ // 调用逻辑时绑定的验证器
482
+ if (this.getAncestor('CallLogic') || !view) {
483
+ code += target.toEmbeddedTS(shiftState(state, code));
484
+ code += ';\n';
485
+ }
486
+
487
+ if (args.length > 0) {
488
+ const validationInFunction = getValidationInFunction(calleeName);
489
+ code += calleeKey;
490
+ code += '(';
491
+ args.forEach((arg, index) => {
492
+ const param = validationInFunction?.params?.[index];
493
+
494
+ // 当前参数缺失 keyword,且原始形参中有名称,则补充参数
495
+ if (!arg.keyword && param.name) {
496
+ arg.keyword = param.name;
497
+ }
498
+
499
+ // 如果找到函数而且有参数,就用参数的必填非必填
500
+ if (validationInFunction && param) {
501
+ code += arg.toEmbeddedTS(shiftState(state, code), param.required, false);
502
+ }
503
+ // 如果没有就默认不必填
504
+ else {
505
+ code += arg.toEmbeddedTS(shiftState(state, code), false, false);
506
+ }
507
+
508
+ if (index !== args.length - 1) {
509
+ code += ', ';
510
+ }
551
511
  });
512
+ code += ');';
513
+ }
514
+
515
+ if (errorMessage) {
516
+ code += 'nasl.validation.errorMessage(';
517
+ code += errorMessage.toEmbeddedTS(shiftState(state, code));
518
+ code += ')';
519
+ }
520
+ } else {
521
+ code += '__ValidationRule__';
552
522
  }
553
-
554
- setCallee(func: Function) {
555
- const calleeNamespace = func.getNamespace();
556
- const calleeName = func.name;
557
- const params = func.params.map((param) => {
558
- const relationOptions = { parentNode: this, parentKey: 'arguments' };
559
- const argument = Argument.from({
560
- keyword: param.name,
561
- }, this);
562
- Object.assign(argument, relationOptions);
563
- return argument;
564
- });
565
- if (this.app) {
566
- this.app.emit('collect:start', {
567
- actionMsg: `切换调用逻辑`,
568
- });
569
- const parentNode: any = this.parentNode;
570
- this.update({
571
- calleeNamespace,
572
- calleeName,
573
- arguments: params,
574
- folded: false,
575
- });
576
- if (parentNode.concept === 'MemberExpression') {
577
- const topNode = parentNode.firstMemberExpressionNode();
578
- topNode.replaceNode(this);
579
- }
580
- this.app.emit('collect:end');
581
- } else {
582
- this.update({
583
- calleeNamespace,
584
- calleeName,
585
- arguments: params,
586
- folded: false,
587
- });
588
- }
523
+ return code;
524
+ }
525
+
526
+ toBrief(): string {
527
+ return this.arguments.map((a) => a.toBrief()).join('<br />');
528
+ }
529
+
530
+ get calleeKey(): string {
531
+ return `${this.calleeNamespace}.${this.calleeName}`;
532
+ }
533
+
534
+ _setCallee(func: Function) {
535
+ this.calleeNamespace = func.getNamespace();
536
+ this.calleeName = func.name;
537
+ this.arguments = [];
538
+ func.params.forEach((param) => {
539
+ this._addArgument(undefined);
540
+ });
541
+ }
542
+
543
+ setCallee(func: Function) {
544
+ const calleeNamespace = func.getNamespace();
545
+ const calleeName = func.name;
546
+ const params = func.params.map((param) => {
547
+ const relationOptions = { parentNode: this, parentKey: 'arguments' };
548
+ const argument = Argument.from(
549
+ {
550
+ keyword: param.name,
551
+ },
552
+ this,
553
+ );
554
+ Object.assign(argument, relationOptions);
555
+ return argument;
556
+ });
557
+ if (this.app) {
558
+ this.app.emit('collect:start', {
559
+ actionMsg: `切换调用逻辑`,
560
+ });
561
+ const parentNode: any = this.parentNode;
562
+ this.update({
563
+ calleeNamespace,
564
+ calleeName,
565
+ arguments: params,
566
+ folded: false,
567
+ });
568
+ if (parentNode.concept === 'MemberExpression') {
569
+ const topNode = parentNode.firstMemberExpressionNode();
570
+ topNode.replaceNode(this);
571
+ }
572
+ this.app.emit('collect:end');
573
+ } else {
574
+ this.update({
575
+ calleeNamespace,
576
+ calleeName,
577
+ arguments: params,
578
+ folded: false,
579
+ });
589
580
  }
590
- //================================================================================
591
- // 从这里开始到结尾注释之间的代码由 NASL Workbench 自动生成,请不手动修改!
592
- // ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
593
- //================================================================================
581
+ }
582
+ //================================================================================
583
+ // 从这里开始到结尾注释之间的代码由 NASL Workbench 自动生成,请不手动修改!
584
+ // ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
585
+ //================================================================================
594
586
  }
595
587
 
596
- classMap.ValidationRule = ValidationRule;
597
588
  export default ValidationRule;
598
589
  //================================================================================
599
590
  // ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑