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

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