@lcap/nasl 3.5.0-beta.1 → 3.5.0-beta.3

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 (768) hide show
  1. package/out/automate/engine/uniqueName.js +7 -3
  2. package/out/automate/engine/uniqueName.js.map +1 -1
  3. package/out/bak/translator.js +119 -39
  4. package/out/bak/translator.js.map +1 -1
  5. package/out/breakpoint/generator/AfterStartNode.js +1 -1
  6. package/out/breakpoint/generator/AfterStartNode.js.map +1 -1
  7. package/out/breakpoint/generator/BeforeEndNode.js +1 -1
  8. package/out/breakpoint/generator/BeforeEndNode.js.map +1 -1
  9. package/out/breakpoint/generator/BreakpointNode.d.ts +3 -0
  10. package/out/breakpoint/generator/BreakpointNode.js +12 -3
  11. package/out/breakpoint/generator/BreakpointNode.js.map +1 -1
  12. package/out/breakpoint/generator/CallbackNode.js +15 -0
  13. package/out/breakpoint/generator/CallbackNode.js.map +1 -1
  14. package/out/breakpoint/shared/constants.js +1 -1
  15. package/out/breakpoint/shared/constants.js.map +1 -1
  16. package/out/breakpoint/shared/utils.js +12 -6
  17. package/out/breakpoint/shared/utils.js.map +1 -1
  18. package/out/common/BaseNode.d.ts +17 -12
  19. package/out/common/BaseNode.js +64 -174
  20. package/out/common/BaseNode.js.map +1 -1
  21. package/out/common/Command.js +0 -1
  22. package/out/common/Command.js.map +1 -1
  23. package/out/common/EventEmitter.js +4 -2
  24. package/out/common/EventEmitter.js.map +1 -1
  25. package/out/common/Messager.js +0 -2
  26. package/out/common/Messager.js.map +1 -1
  27. package/out/common/utils.d.ts +2 -2
  28. package/out/common/utils.js.map +1 -1
  29. package/out/concepts/Abort__.d.ts +1 -1
  30. package/out/concepts/Abort__.js +9 -16
  31. package/out/concepts/Abort__.js.map +1 -1
  32. package/out/concepts/AbstractInterface__.d.ts +1 -1
  33. package/out/concepts/AbstractInterface__.js +5 -8
  34. package/out/concepts/AbstractInterface__.js.map +1 -1
  35. package/out/concepts/Anchor__.d.ts +1 -1
  36. package/out/concepts/Anchor__.js +5 -17
  37. package/out/concepts/Anchor__.js.map +1 -1
  38. package/out/concepts/AnonymousFunction__.d.ts +1 -1
  39. package/out/concepts/AnonymousFunction__.js +22 -44
  40. package/out/concepts/AnonymousFunction__.js.map +1 -1
  41. package/out/concepts/App__.d.ts +51 -51
  42. package/out/concepts/App__.js +220 -278
  43. package/out/concepts/App__.js.map +1 -1
  44. package/out/concepts/Argument__.d.ts +1 -1
  45. package/out/concepts/Argument__.js +11 -33
  46. package/out/concepts/Argument__.js.map +1 -1
  47. package/out/concepts/Assignee__.d.ts +1 -1
  48. package/out/concepts/Assignee__.js +29 -36
  49. package/out/concepts/Assignee__.js.map +1 -1
  50. package/out/concepts/AssignmentLine__.d.ts +1 -1
  51. package/out/concepts/AssignmentLine__.js +13 -20
  52. package/out/concepts/AssignmentLine__.js.map +1 -1
  53. package/out/concepts/Assignment__.d.ts +1 -1
  54. package/out/concepts/Assignment__.js +12 -29
  55. package/out/concepts/Assignment__.js.map +1 -1
  56. package/out/concepts/Attribute__.d.ts +1 -1
  57. package/out/concepts/Attribute__.js +16 -73
  58. package/out/concepts/Attribute__.js.map +1 -1
  59. package/out/concepts/AuthInterface__.d.ts +1 -1
  60. package/out/concepts/AuthInterface__.js +11 -23
  61. package/out/concepts/AuthInterface__.js.map +1 -1
  62. package/out/concepts/AuthLogicForCallInterface__.d.ts +1 -1
  63. package/out/concepts/AuthLogicForCallInterface__.js +20 -26
  64. package/out/concepts/AuthLogicForCallInterface__.js.map +1 -1
  65. package/out/concepts/AuthLogic__.d.ts +1 -1
  66. package/out/concepts/AuthLogic__.js +11 -23
  67. package/out/concepts/AuthLogic__.js.map +1 -1
  68. package/out/concepts/BackendVariable__.d.ts +1 -1
  69. package/out/concepts/BackendVariable__.js +29 -53
  70. package/out/concepts/BackendVariable__.js.map +1 -1
  71. package/out/concepts/Backend__.d.ts +1 -1
  72. package/out/concepts/Backend__.js +17 -29
  73. package/out/concepts/Backend__.js.map +1 -1
  74. package/out/concepts/BatchAssignment__.d.ts +1 -1
  75. package/out/concepts/BatchAssignment__.js +24 -36
  76. package/out/concepts/BatchAssignment__.js.map +1 -1
  77. package/out/concepts/BinaryExpression__.d.ts +3 -1
  78. package/out/concepts/BinaryExpression__.js +9 -27
  79. package/out/concepts/BinaryExpression__.js.map +1 -1
  80. package/out/concepts/BindAttribute__.d.ts +1 -1
  81. package/out/concepts/BindAttribute__.js +39 -86
  82. package/out/concepts/BindAttribute__.js.map +1 -1
  83. package/out/concepts/BindDirective__.d.ts +2 -1
  84. package/out/concepts/BindDirective__.js +36 -68
  85. package/out/concepts/BindDirective__.js.map +1 -1
  86. package/out/concepts/BindEvent__.d.ts +4 -2
  87. package/out/concepts/BindEvent__.js +69 -66
  88. package/out/concepts/BindEvent__.js.map +1 -1
  89. package/out/concepts/BindStyle__.d.ts +1 -1
  90. package/out/concepts/BindStyle__.js +17 -34
  91. package/out/concepts/BindStyle__.js.map +1 -1
  92. package/out/concepts/Block__.d.ts +1 -1
  93. package/out/concepts/Block__.js +11 -18
  94. package/out/concepts/Block__.js.map +1 -1
  95. package/out/concepts/BooleanLiteral__.d.ts +1 -1
  96. package/out/concepts/BooleanLiteral__.js +5 -17
  97. package/out/concepts/BooleanLiteral__.js.map +1 -1
  98. package/out/concepts/BusinessComponent__.d.ts +641 -0
  99. package/out/concepts/BusinessComponent__.js +1901 -0
  100. package/out/concepts/BusinessComponent__.js.map +1 -0
  101. package/out/concepts/BusinessLogic__.d.ts +38 -0
  102. package/out/concepts/BusinessLogic__.js +358 -0
  103. package/out/concepts/BusinessLogic__.js.map +1 -0
  104. package/out/concepts/CallAuthInterface__.d.ts +3 -3
  105. package/out/concepts/CallAuthInterface__.js +12 -19
  106. package/out/concepts/CallAuthInterface__.js.map +1 -1
  107. package/out/concepts/CallConnector__.d.ts +1 -1
  108. package/out/concepts/CallConnector__.js +9 -21
  109. package/out/concepts/CallConnector__.js.map +1 -1
  110. package/out/concepts/CallEvent__.d.ts +97 -0
  111. package/out/concepts/CallEvent__.js +263 -0
  112. package/out/concepts/CallEvent__.js.map +1 -0
  113. package/out/concepts/CallFunction__.d.ts +3 -1
  114. package/out/concepts/CallFunction__.js +37 -47
  115. package/out/concepts/CallFunction__.js.map +1 -1
  116. package/out/concepts/CallInterface__.d.ts +5 -3
  117. package/out/concepts/CallInterface__.js +31 -49
  118. package/out/concepts/CallInterface__.js.map +1 -1
  119. package/out/concepts/CallLogic__.d.ts +6 -3
  120. package/out/concepts/CallLogic__.js +69 -113
  121. package/out/concepts/CallLogic__.js.map +1 -1
  122. package/out/concepts/CallQueryComponent__.d.ts +1 -1
  123. package/out/concepts/CallQueryComponent__.js +128 -112
  124. package/out/concepts/CallQueryComponent__.js.map +1 -1
  125. package/out/concepts/Comment__.d.ts +1 -1
  126. package/out/concepts/Comment__.js +5 -17
  127. package/out/concepts/Comment__.js.map +1 -1
  128. package/out/concepts/CompletionProperty__.d.ts +1 -1
  129. package/out/concepts/CompletionProperty__.js +18 -61
  130. package/out/concepts/CompletionProperty__.js.map +1 -1
  131. package/out/concepts/ConfigGroup__.d.ts +1 -1
  132. package/out/concepts/ConfigGroup__.js +17 -29
  133. package/out/concepts/ConfigGroup__.js.map +1 -1
  134. package/out/concepts/ConfigPropertyValue__.d.ts +1 -1
  135. package/out/concepts/ConfigPropertyValue__.js +11 -28
  136. package/out/concepts/ConfigPropertyValue__.js.map +1 -1
  137. package/out/concepts/ConfigProperty__.d.ts +1 -1
  138. package/out/concepts/ConfigProperty__.js +17 -39
  139. package/out/concepts/ConfigProperty__.js.map +1 -1
  140. package/out/concepts/Configuration__.d.ts +1 -1
  141. package/out/concepts/Configuration__.js +17 -24
  142. package/out/concepts/Configuration__.js.map +1 -1
  143. package/out/concepts/Connection__.d.ts +1 -1
  144. package/out/concepts/Connection__.js +17 -39
  145. package/out/concepts/Connection__.js.map +1 -1
  146. package/out/concepts/ConnectorTrigger__.d.ts +1 -1
  147. package/out/concepts/ConnectorTrigger__.js +11 -33
  148. package/out/concepts/ConnectorTrigger__.js.map +1 -1
  149. package/out/concepts/Connector__.d.ts +1 -1
  150. package/out/concepts/Connector__.js +59 -96
  151. package/out/concepts/Connector__.js.map +1 -1
  152. package/out/concepts/Constant__.d.ts +1 -1
  153. package/out/concepts/Constant__.js +18 -44
  154. package/out/concepts/Constant__.js.map +1 -1
  155. package/out/concepts/CountersignPolicy__.d.ts +1 -1
  156. package/out/concepts/CountersignPolicy__.js +5 -17
  157. package/out/concepts/CountersignPolicy__.js.map +1 -1
  158. package/out/concepts/DataSource__.d.ts +1 -1
  159. package/out/concepts/DataSource__.js +18 -40
  160. package/out/concepts/DataSource__.js.map +1 -1
  161. package/out/concepts/DatabaseTypeAnnotation__.d.ts +1 -1
  162. package/out/concepts/DatabaseTypeAnnotation__.js +5 -22
  163. package/out/concepts/DatabaseTypeAnnotation__.js.map +1 -1
  164. package/out/concepts/DefaultValue__.d.ts +1 -1
  165. package/out/concepts/DefaultValue__.js +13 -24
  166. package/out/concepts/DefaultValue__.js.map +1 -1
  167. package/out/concepts/Destination__.d.ts +1 -1
  168. package/out/concepts/Destination__.js +23 -45
  169. package/out/concepts/Destination__.js.map +1 -1
  170. package/out/concepts/End__.d.ts +1 -1
  171. package/out/concepts/End__.js +11 -17
  172. package/out/concepts/End__.js.map +1 -1
  173. package/out/concepts/EntityIndex__.d.ts +1 -1
  174. package/out/concepts/EntityIndex__.js +15 -42
  175. package/out/concepts/EntityIndex__.js.map +1 -1
  176. package/out/concepts/EntityProperty__.d.ts +1 -1
  177. package/out/concepts/EntityProperty__.js +41 -118
  178. package/out/concepts/EntityProperty__.js.map +1 -1
  179. package/out/concepts/Entity__.d.ts +1 -6
  180. package/out/concepts/Entity__.js +34 -70
  181. package/out/concepts/Entity__.js.map +1 -1
  182. package/out/concepts/EnumItem__.d.ts +1 -1
  183. package/out/concepts/EnumItem__.js +11 -36
  184. package/out/concepts/EnumItem__.js.map +1 -1
  185. package/out/concepts/Enum__.d.ts +1 -1
  186. package/out/concepts/Enum__.js +21 -52
  187. package/out/concepts/Enum__.js.map +1 -1
  188. package/out/concepts/Event__.d.ts +11 -1
  189. package/out/concepts/Event__.js +66 -49
  190. package/out/concepts/Event__.js.map +1 -1
  191. package/out/concepts/ExternalDestination__.d.ts +1 -1
  192. package/out/concepts/ExternalDestination__.js +14 -31
  193. package/out/concepts/ExternalDestination__.js.map +1 -1
  194. package/out/concepts/ForEachStatement__.d.ts +1 -1
  195. package/out/concepts/ForEachStatement__.js +12 -44
  196. package/out/concepts/ForEachStatement__.js.map +1 -1
  197. package/out/concepts/FrontendLibrary__.d.ts +1 -1
  198. package/out/concepts/FrontendLibrary__.js +22 -39
  199. package/out/concepts/FrontendLibrary__.js.map +1 -1
  200. package/out/concepts/FrontendType__.d.ts +308 -0
  201. package/out/concepts/FrontendType__.js +605 -0
  202. package/out/concepts/FrontendType__.js.map +1 -0
  203. package/out/concepts/FrontendVariable__.d.ts +7 -3
  204. package/out/concepts/FrontendVariable__.js +20 -20
  205. package/out/concepts/FrontendVariable__.js.map +1 -1
  206. package/out/concepts/Frontend__.d.ts +1 -89
  207. package/out/concepts/Frontend__.js +40 -224
  208. package/out/concepts/Frontend__.js.map +1 -1
  209. package/out/concepts/Function__.d.ts +1 -1
  210. package/out/concepts/Function__.js +32 -54
  211. package/out/concepts/Function__.js.map +1 -1
  212. package/out/concepts/I18nInfo__.d.ts +1 -1
  213. package/out/concepts/I18nInfo__.js +5 -27
  214. package/out/concepts/I18nInfo__.js.map +1 -1
  215. package/out/concepts/Identifier__.d.ts +6 -1
  216. package/out/concepts/Identifier__.js +38 -45
  217. package/out/concepts/Identifier__.js.map +1 -1
  218. package/out/concepts/IfStatement__.d.ts +1 -1
  219. package/out/concepts/IfStatement__.js +16 -28
  220. package/out/concepts/IfStatement__.js.map +1 -1
  221. package/out/concepts/ImportedInterface__.d.ts +1 -1
  222. package/out/concepts/ImportedInterface__.js +5 -13
  223. package/out/concepts/ImportedInterface__.js.map +1 -1
  224. package/out/concepts/Integration__.d.ts +1 -1
  225. package/out/concepts/Integration__.js +17 -29
  226. package/out/concepts/Integration__.js.map +1 -1
  227. package/out/concepts/InterfaceParam__.d.ts +1 -1
  228. package/out/concepts/InterfaceParam__.js +11 -48
  229. package/out/concepts/InterfaceParam__.js.map +1 -1
  230. package/out/concepts/Interface__.d.ts +3 -3
  231. package/out/concepts/Interface__.js +35 -72
  232. package/out/concepts/Interface__.js.map +1 -1
  233. package/out/concepts/JSBlock__.d.ts +1 -1
  234. package/out/concepts/JSBlock__.js +9 -21
  235. package/out/concepts/JSBlock__.js.map +1 -1
  236. package/out/concepts/JavaLogic__.d.ts +1 -1
  237. package/out/concepts/JavaLogic__.js +5 -27
  238. package/out/concepts/JavaLogic__.js.map +1 -1
  239. package/out/concepts/LogicItem__.d.ts +2 -2
  240. package/out/concepts/LogicItem__.js +15 -42
  241. package/out/concepts/LogicItem__.js.map +1 -1
  242. package/out/concepts/Logic__.d.ts +6 -4
  243. package/out/concepts/Logic__.js +83 -122
  244. package/out/concepts/Logic__.js.map +1 -1
  245. package/out/concepts/MatchCase__.d.ts +1 -1
  246. package/out/concepts/MatchCase__.js +26 -33
  247. package/out/concepts/MatchCase__.js.map +1 -1
  248. package/out/concepts/Match__.d.ts +1 -1
  249. package/out/concepts/Match__.js +20 -37
  250. package/out/concepts/Match__.js.map +1 -1
  251. package/out/concepts/MemberExpression__.d.ts +2 -2
  252. package/out/concepts/MemberExpression__.js +28 -45
  253. package/out/concepts/MemberExpression__.js.map +1 -1
  254. package/out/concepts/MetadataType__.d.ts +1 -1
  255. package/out/concepts/MetadataType__.js +30 -52
  256. package/out/concepts/MetadataType__.js.map +1 -1
  257. package/out/concepts/MicroApp__.d.ts +1 -1
  258. package/out/concepts/MicroApp__.js +5 -47
  259. package/out/concepts/MicroApp__.js.map +1 -1
  260. package/out/concepts/Module__.d.ts +1 -1
  261. package/out/concepts/Module__.js +76 -140
  262. package/out/concepts/Module__.js.map +1 -1
  263. package/out/concepts/MsgTriggerEvent__.d.ts +1 -1
  264. package/out/concepts/MsgTriggerEvent__.js +17 -24
  265. package/out/concepts/MsgTriggerEvent__.js.map +1 -1
  266. package/out/concepts/MsgTriggerLauncher__.d.ts +1 -1
  267. package/out/concepts/MsgTriggerLauncher__.js +17 -29
  268. package/out/concepts/MsgTriggerLauncher__.js.map +1 -1
  269. package/out/concepts/MultiApprovalPolicy__.d.ts +1 -1
  270. package/out/concepts/MultiApprovalPolicy__.js +5 -12
  271. package/out/concepts/MultiApprovalPolicy__.js.map +1 -1
  272. package/out/concepts/Namespace__.d.ts +1 -1
  273. package/out/concepts/Namespace__.js +67 -94
  274. package/out/concepts/Namespace__.js.map +1 -1
  275. package/out/concepts/NewComposite__.d.ts +3 -1
  276. package/out/concepts/NewComposite__.js +37 -45
  277. package/out/concepts/NewComposite__.js.map +1 -1
  278. package/out/concepts/NewList__.d.ts +3 -1
  279. package/out/concepts/NewList__.js +16 -24
  280. package/out/concepts/NewList__.js.map +1 -1
  281. package/out/concepts/NewMap__.d.ts +3 -1
  282. package/out/concepts/NewMap__.js +20 -28
  283. package/out/concepts/NewMap__.js.map +1 -1
  284. package/out/concepts/New__.d.ts +1 -1
  285. package/out/concepts/New__.js +5 -12
  286. package/out/concepts/New__.js.map +1 -1
  287. package/out/concepts/NullLiteral__.d.ts +1 -1
  288. package/out/concepts/NullLiteral__.js +5 -12
  289. package/out/concepts/NullLiteral__.js.map +1 -1
  290. package/out/concepts/NumericLiteral__.d.ts +1 -1
  291. package/out/concepts/NumericLiteral__.js +5 -22
  292. package/out/concepts/NumericLiteral__.js.map +1 -1
  293. package/out/concepts/OqlQueryComponent__.d.ts +1 -1
  294. package/out/concepts/OqlQueryComponent__.js +12 -34
  295. package/out/concepts/OqlQueryComponent__.js.map +1 -1
  296. package/out/concepts/OverriddenLogic__.d.ts +1 -1
  297. package/out/concepts/OverriddenLogic__.js +67 -103
  298. package/out/concepts/OverriddenLogic__.js.map +1 -1
  299. package/out/concepts/ParamWithGroup__.d.ts +39 -0
  300. package/out/concepts/ParamWithGroup__.js +85 -0
  301. package/out/concepts/ParamWithGroup__.js.map +1 -0
  302. package/out/concepts/Param__.d.ts +1 -1
  303. package/out/concepts/Param__.js +38 -62
  304. package/out/concepts/Param__.js.map +1 -1
  305. package/out/concepts/Point__.d.ts +1 -1
  306. package/out/concepts/Point__.js +5 -22
  307. package/out/concepts/Point__.js.map +1 -1
  308. package/out/concepts/ProcessComponent__.d.ts +1 -1
  309. package/out/concepts/ProcessComponent__.js +22 -49
  310. package/out/concepts/ProcessComponent__.js.map +1 -1
  311. package/out/concepts/ProcessElement__.d.ts +1 -1
  312. package/out/concepts/ProcessElement__.js +42 -99
  313. package/out/concepts/ProcessElement__.js.map +1 -1
  314. package/out/concepts/ProcessOutcome__.d.ts +1 -1
  315. package/out/concepts/ProcessOutcome__.js +9 -21
  316. package/out/concepts/ProcessOutcome__.js.map +1 -1
  317. package/out/concepts/ProcessOutcomes__.d.ts +1 -1
  318. package/out/concepts/ProcessOutcomes__.js +13 -20
  319. package/out/concepts/ProcessOutcomes__.js.map +1 -1
  320. package/out/concepts/Process__.d.ts +1 -1
  321. package/out/concepts/Process__.js +42 -64
  322. package/out/concepts/Process__.js.map +1 -1
  323. package/out/concepts/QueryAggregateExpression__.d.ts +1 -1
  324. package/out/concepts/QueryAggregateExpression__.js +5 -27
  325. package/out/concepts/QueryAggregateExpression__.js.map +1 -1
  326. package/out/concepts/QueryFieldExpression__.d.ts +1 -1
  327. package/out/concepts/QueryFieldExpression__.js +9 -31
  328. package/out/concepts/QueryFieldExpression__.js.map +1 -1
  329. package/out/concepts/QueryFromExpression__.d.ts +1 -1
  330. package/out/concepts/QueryFromExpression__.js +11 -33
  331. package/out/concepts/QueryFromExpression__.js.map +1 -1
  332. package/out/concepts/QueryGroupByExpression__.d.ts +1 -1
  333. package/out/concepts/QueryGroupByExpression__.js +5 -17
  334. package/out/concepts/QueryGroupByExpression__.js.map +1 -1
  335. package/out/concepts/QueryJoinExpression__.d.ts +1 -1
  336. package/out/concepts/QueryJoinExpression__.js +16 -43
  337. package/out/concepts/QueryJoinExpression__.js.map +1 -1
  338. package/out/concepts/QueryLimitExpression__.d.ts +1 -1
  339. package/out/concepts/QueryLimitExpression__.js +5 -22
  340. package/out/concepts/QueryLimitExpression__.js.map +1 -1
  341. package/out/concepts/QueryOrderByExpression__.d.ts +1 -1
  342. package/out/concepts/QueryOrderByExpression__.js +5 -22
  343. package/out/concepts/QueryOrderByExpression__.js.map +1 -1
  344. package/out/concepts/QuerySelectExpression__.d.ts +1 -1
  345. package/out/concepts/QuerySelectExpression__.js +20 -27
  346. package/out/concepts/QuerySelectExpression__.js.map +1 -1
  347. package/out/concepts/Rect__.d.ts +1 -1
  348. package/out/concepts/Rect__.js +5 -32
  349. package/out/concepts/Rect__.js.map +1 -1
  350. package/out/concepts/Return__.d.ts +1 -1
  351. package/out/concepts/Return__.js +38 -57
  352. package/out/concepts/Return__.js.map +1 -1
  353. package/out/concepts/Role__.d.ts +1 -1
  354. package/out/concepts/Role__.js +15 -37
  355. package/out/concepts/Role__.js.map +1 -1
  356. package/out/concepts/SelectMembers__.d.ts +1 -1
  357. package/out/concepts/SelectMembers__.js +15 -27
  358. package/out/concepts/SelectMembers__.js.map +1 -1
  359. package/out/concepts/SequentialPolicy__.d.ts +1 -1
  360. package/out/concepts/SequentialPolicy__.js +5 -12
  361. package/out/concepts/SequentialPolicy__.js.map +1 -1
  362. package/out/concepts/Slot__.d.ts +1 -1
  363. package/out/concepts/Slot__.js +11 -48
  364. package/out/concepts/Slot__.js.map +1 -1
  365. package/out/concepts/SqlQueryComponent__.d.ts +1 -1
  366. package/out/concepts/SqlQueryComponent__.js +10 -37
  367. package/out/concepts/SqlQueryComponent__.js.map +1 -1
  368. package/out/concepts/Start__.d.ts +1 -1
  369. package/out/concepts/Start__.js +9 -16
  370. package/out/concepts/Start__.js.map +1 -1
  371. package/out/concepts/StaticString__.d.ts +1 -1
  372. package/out/concepts/StaticString__.js +9 -21
  373. package/out/concepts/StaticString__.js.map +1 -1
  374. package/out/concepts/StringInterpolation__.d.ts +1 -1
  375. package/out/concepts/StringInterpolation__.js +11 -18
  376. package/out/concepts/StringInterpolation__.js.map +1 -1
  377. package/out/concepts/StringLiteral__.d.ts +1 -1
  378. package/out/concepts/StringLiteral__.js +9 -21
  379. package/out/concepts/StringLiteral__.js.map +1 -1
  380. package/out/concepts/StructureProperty__.d.ts +1 -1
  381. package/out/concepts/StructureProperty__.js +23 -65
  382. package/out/concepts/StructureProperty__.js.map +1 -1
  383. package/out/concepts/Structure__.d.ts +3 -3
  384. package/out/concepts/Structure__.js +22 -44
  385. package/out/concepts/Structure__.js.map +1 -1
  386. package/out/concepts/SwitchCase__.d.ts +1 -1
  387. package/out/concepts/SwitchCase__.js +11 -23
  388. package/out/concepts/SwitchCase__.js.map +1 -1
  389. package/out/concepts/SwitchStatement__.d.ts +1 -1
  390. package/out/concepts/SwitchStatement__.js +11 -18
  391. package/out/concepts/SwitchStatement__.js.map +1 -1
  392. package/out/concepts/Theme__.d.ts +1 -1
  393. package/out/concepts/Theme__.js +13 -20
  394. package/out/concepts/Theme__.js.map +1 -1
  395. package/out/concepts/Transactional__.d.ts +1 -1
  396. package/out/concepts/Transactional__.js +11 -33
  397. package/out/concepts/Transactional__.js.map +1 -1
  398. package/out/concepts/TriggerEvent__.d.ts +1 -1
  399. package/out/concepts/TriggerEvent__.js +5 -22
  400. package/out/concepts/TriggerEvent__.js.map +1 -1
  401. package/out/concepts/TriggerLauncher__.d.ts +1 -1
  402. package/out/concepts/TriggerLauncher__.js +11 -38
  403. package/out/concepts/TriggerLauncher__.js.map +1 -1
  404. package/out/concepts/TypeAnnotation__.d.ts +4 -4
  405. package/out/concepts/TypeAnnotation__.js +28 -60
  406. package/out/concepts/TypeAnnotation__.js.map +1 -1
  407. package/out/concepts/TypeParam__.d.ts +1 -1
  408. package/out/concepts/TypeParam__.js +11 -23
  409. package/out/concepts/TypeParam__.js.map +1 -1
  410. package/out/concepts/UnaryExpression__.d.ts +1 -1
  411. package/out/concepts/UnaryExpression__.js +5 -22
  412. package/out/concepts/UnaryExpression__.js.map +1 -1
  413. package/out/concepts/Unparsed__.d.ts +1 -1
  414. package/out/concepts/Unparsed__.js +5 -17
  415. package/out/concepts/Unparsed__.js.map +1 -1
  416. package/out/concepts/UseComponent__.d.ts +1 -1
  417. package/out/concepts/UseComponent__.js +5 -22
  418. package/out/concepts/UseComponent__.js.map +1 -1
  419. package/out/concepts/ValidationRule__.d.ts +1 -1
  420. package/out/concepts/ValidationRule__.js +19 -46
  421. package/out/concepts/ValidationRule__.js.map +1 -1
  422. package/out/concepts/Variable__.d.ts +2 -2
  423. package/out/concepts/Variable__.js +37 -55
  424. package/out/concepts/Variable__.js.map +1 -1
  425. package/out/concepts/ViewBlock__.d.ts +1 -1
  426. package/out/concepts/ViewBlock__.js +5 -27
  427. package/out/concepts/ViewBlock__.js.map +1 -1
  428. package/out/concepts/ViewComponent__.d.ts +1 -1
  429. package/out/concepts/ViewComponent__.js +42 -74
  430. package/out/concepts/ViewComponent__.js.map +1 -1
  431. package/out/concepts/ViewElement__.d.ts +18 -2
  432. package/out/concepts/ViewElement__.js +194 -115
  433. package/out/concepts/ViewElement__.js.map +1 -1
  434. package/out/concepts/View__.d.ts +1 -1
  435. package/out/concepts/View__.js +66 -128
  436. package/out/concepts/View__.js.map +1 -1
  437. package/out/concepts/WhileStatement__.d.ts +1 -1
  438. package/out/concepts/WhileStatement__.js +11 -23
  439. package/out/concepts/WhileStatement__.js.map +1 -1
  440. package/out/concepts/basics/stdlib/nasl.util.js +30 -30
  441. package/out/concepts/basics/stdlib/nasl.util.js.map +1 -1
  442. package/out/concepts/basics/stdlib/reference2TypeAnnotationList.js +2 -2
  443. package/out/concepts/basics/stdlib/reference2TypeAnnotationList.js.map +1 -1
  444. package/out/concepts/index.d.ts +2 -2
  445. package/out/concepts/index.js +3 -3
  446. package/out/concepts/index.js.map +1 -1
  447. package/out/concepts/index__.d.ts +5 -1
  448. package/out/concepts/index__.js +5 -1
  449. package/out/concepts/index__.js.map +1 -1
  450. package/out/concepts/utils/asserts.d.ts +258 -54
  451. package/out/concepts/utils/asserts.js +351 -81
  452. package/out/concepts/utils/asserts.js.map +1 -1
  453. package/out/concepts/utils/quick-info.d.ts +13 -0
  454. package/out/concepts/utils/quick-info.js +51 -0
  455. package/out/concepts/utils/quick-info.js.map +1 -0
  456. package/out/concepts/utils/types.d.ts +20 -6
  457. package/out/generator/genBundleFiles.js +25 -11
  458. package/out/generator/genBundleFiles.js.map +1 -1
  459. package/out/generator/genReleaseBody.js +12 -3
  460. package/out/generator/genReleaseBody.js.map +1 -1
  461. package/out/generator/permission.js +3 -3
  462. package/out/generator/permission.js.map +1 -1
  463. package/out/manager/diagnostic.js +3 -1
  464. package/out/manager/diagnostic.js.map +1 -1
  465. package/out/server/extendBaseNode.js +6 -4
  466. package/out/server/extendBaseNode.js.map +1 -1
  467. package/out/server/formatTsUtils.d.ts +3 -3
  468. package/out/server/formatTsUtils.js.map +1 -1
  469. package/out/server/getConnector.js +18 -0
  470. package/out/server/getConnector.js.map +1 -1
  471. package/out/server/getLogics.js +62 -27
  472. package/out/server/getLogics.js.map +1 -1
  473. package/out/server/getMemberIdentifier.d.ts +4 -4
  474. package/out/server/getMemberIdentifier.js +6 -1
  475. package/out/server/getMemberIdentifier.js.map +1 -1
  476. package/out/server/naslServer.d.ts +3 -3
  477. package/out/server/naslServer.js +53 -103
  478. package/out/server/naslServer.js.map +1 -1
  479. package/out/server/translator.js +11 -17
  480. package/out/server/translator.js.map +1 -1
  481. package/out/service/storage/init.js +8 -20
  482. package/out/service/storage/init.js.map +1 -1
  483. package/out/templator/genCreateBlock.js +6 -6
  484. package/out/templator/genCreateBlock.js.map +1 -1
  485. package/out/templator/genCurdEditMultipleKeyBlock.js +16 -16
  486. package/out/templator/genCurdEditMultipleKeyBlock.js.map +1 -1
  487. package/out/templator/genCurdMultipleKeyBlock.js +36 -36
  488. package/out/templator/genCurdMultipleKeyBlock.js.map +1 -1
  489. package/out/templator/genGetBlock.js +4 -4
  490. package/out/templator/genGetBlock.js.map +1 -1
  491. package/out/templator/genGridViewBlock.js +12 -12
  492. package/out/templator/genGridViewBlock.js.map +1 -1
  493. package/out/templator/genListViewBlock.js +4 -4
  494. package/out/templator/genListViewBlock.js.map +1 -1
  495. package/out/templator/genQueryComponent.js +37 -32
  496. package/out/templator/genQueryComponent.js.map +1 -1
  497. package/out/templator/genSelectBlock.js +3 -3
  498. package/out/templator/genSelectBlock.js.map +1 -1
  499. package/out/templator/genTableBlock.js +10 -10
  500. package/out/templator/genTableBlock.js.map +1 -1
  501. package/out/templator/genUpdateBlock.js +8 -8
  502. package/out/templator/genUpdateBlock.js.map +1 -1
  503. package/out/templator/utils.d.ts +26 -21
  504. package/out/templator/utils.js +27 -17
  505. package/out/templator/utils.js.map +1 -1
  506. package/out/translator/utils.d.ts +2 -2
  507. package/out/utils/i18nInfo.js +7 -2
  508. package/out/utils/i18nInfo.js.map +1 -1
  509. package/out/utils/index.js +1 -1
  510. package/out/utils/index.js.map +1 -1
  511. package/out/utils/time-slicing/controller.js +48 -46
  512. package/out/utils/time-slicing/controller.js.map +1 -1
  513. package/out/utils/time-slicing/performance.js +0 -1
  514. package/out/utils/time-slicing/performance.js.map +1 -1
  515. package/package.json +1 -1
  516. package/sandbox/stdlib/nasl.util.ts +1 -2
  517. package/src/bak/translator.js +121 -43
  518. package/src/breakpoint/generator/BreakpointNode.ts +12 -0
  519. package/src/breakpoint/generator/CallbackNode.ts +17 -0
  520. package/src/breakpoint/shared/constants.ts +1 -1
  521. package/src/breakpoint/shared/utils.ts +13 -8
  522. package/src/common/BaseNode.ts +52 -64
  523. package/src/common/utils.ts +2 -2
  524. package/src/concepts/Abort__.ts +4 -5
  525. package/src/concepts/AbstractInterface__.ts +4 -5
  526. package/src/concepts/Anchor__.ts +4 -6
  527. package/src/concepts/AnonymousFunction__.ts +11 -15
  528. package/src/concepts/App__.ts +148 -157
  529. package/src/concepts/Argument__.ts +4 -8
  530. package/src/concepts/Assignee__.ts +7 -8
  531. package/src/concepts/AssignmentLine__.ts +4 -5
  532. package/src/concepts/Assignment__.ts +6 -9
  533. package/src/concepts/Attribute__.ts +4 -15
  534. package/src/concepts/AuthInterface__.ts +4 -6
  535. package/src/concepts/AuthLogicForCallInterface__.ts +16 -14
  536. package/src/concepts/AuthLogic__.ts +4 -6
  537. package/src/concepts/BackendVariable__.ts +14 -12
  538. package/src/concepts/Backend__.ts +5 -7
  539. package/src/concepts/BatchAssignment__.ts +6 -8
  540. package/src/concepts/BinaryExpression__.ts +9 -9
  541. package/src/concepts/BindAttribute__.ts +23 -25
  542. package/src/concepts/BindDirective__.ts +24 -18
  543. package/src/concepts/BindEvent__.ts +53 -29
  544. package/src/concepts/BindStyle__.ts +5 -8
  545. package/src/concepts/Block__.ts +5 -6
  546. package/src/concepts/BooleanLiteral__.ts +4 -6
  547. package/src/concepts/BusinessComponent__.ts +2669 -0
  548. package/src/concepts/BusinessLogic__.ts +376 -0
  549. package/src/concepts/CallAuthInterface__.ts +6 -7
  550. package/src/concepts/CallConnector__.ts +4 -6
  551. package/src/concepts/CallEvent__.ts +334 -0
  552. package/src/concepts/CallFunction__.ts +24 -15
  553. package/src/concepts/CallInterface__.ts +13 -12
  554. package/src/concepts/CallLogic__.ts +56 -83
  555. package/src/concepts/CallQueryComponent__.ts +137 -63
  556. package/src/concepts/Comment__.ts +4 -6
  557. package/src/concepts/CompletionProperty__.ts +4 -12
  558. package/src/concepts/ConfigGroup__.ts +5 -7
  559. package/src/concepts/ConfigPropertyValue__.ts +4 -7
  560. package/src/concepts/ConfigProperty__.ts +5 -9
  561. package/src/concepts/Configuration__.ts +5 -6
  562. package/src/concepts/Connection__.ts +5 -9
  563. package/src/concepts/ConnectorTrigger__.ts +4 -8
  564. package/src/concepts/Connector__.ts +11 -18
  565. package/src/concepts/Constant__.ts +9 -16
  566. package/src/concepts/CountersignPolicy__.ts +4 -6
  567. package/src/concepts/DataSource__.ts +5 -9
  568. package/src/concepts/DatabaseTypeAnnotation__.ts +4 -7
  569. package/src/concepts/DefaultValue__.ts +9 -8
  570. package/src/concepts/Destination__.ts +9 -13
  571. package/src/concepts/End__.ts +5 -5
  572. package/src/concepts/EntityIndex__.ts +4 -9
  573. package/src/concepts/EntityProperty__.ts +4 -19
  574. package/src/concepts/Entity__.ts +10 -30
  575. package/src/concepts/EnumItem__.ts +4 -7
  576. package/src/concepts/Enum__.ts +5 -9
  577. package/src/concepts/Event__.ts +62 -11
  578. package/src/concepts/ExternalDestination__.ts +8 -11
  579. package/src/concepts/ForEachStatement__.ts +6 -12
  580. package/src/concepts/FrontendLibrary__.ts +6 -9
  581. package/src/concepts/FrontendType__.ts +919 -0
  582. package/src/concepts/FrontendVariable__.ts +15 -9
  583. package/src/concepts/Frontend__.ts +10 -266
  584. package/src/concepts/Function__.ts +8 -12
  585. package/src/concepts/I18nInfo__.ts +4 -8
  586. package/src/concepts/Identifier__.ts +35 -22
  587. package/src/concepts/IfStatement__.ts +6 -8
  588. package/src/concepts/ImportedInterface__.ts +4 -6
  589. package/src/concepts/Integration__.ts +5 -7
  590. package/src/concepts/InterfaceParam__.ts +4 -11
  591. package/src/concepts/Interface__.ts +7 -14
  592. package/src/concepts/JSBlock__.ts +4 -6
  593. package/src/concepts/JavaLogic__.ts +4 -8
  594. package/src/concepts/LogicItem__.ts +5 -10
  595. package/src/concepts/Logic__.ts +52 -49
  596. package/src/concepts/MatchCase__.ts +12 -13
  597. package/src/concepts/Match__.ts +10 -12
  598. package/src/concepts/MemberExpression__.ts +20 -23
  599. package/src/concepts/MetadataType__.ts +6 -10
  600. package/src/concepts/MicroApp__.ts +4 -12
  601. package/src/concepts/Module__.ts +16 -26
  602. package/src/concepts/MsgTriggerEvent__.ts +5 -6
  603. package/src/concepts/MsgTriggerLauncher__.ts +5 -7
  604. package/src/concepts/MultiApprovalPolicy__.ts +4 -5
  605. package/src/concepts/Namespace__.ts +16 -21
  606. package/src/concepts/NewComposite__.ts +12 -14
  607. package/src/concepts/NewList__.ts +12 -10
  608. package/src/concepts/NewMap__.ts +12 -11
  609. package/src/concepts/New__.ts +4 -5
  610. package/src/concepts/NullLiteral__.ts +4 -5
  611. package/src/concepts/NumericLiteral__.ts +4 -7
  612. package/src/concepts/OqlQueryComponent__.ts +4 -8
  613. package/src/concepts/OverriddenLogic__.ts +33 -33
  614. package/src/concepts/ParamWithGroup__.ts +101 -0
  615. package/src/concepts/Param__.ts +17 -15
  616. package/src/concepts/Point__.ts +4 -7
  617. package/src/concepts/ProcessComponent__.ts +6 -11
  618. package/src/concepts/ProcessElement__.ts +10 -21
  619. package/src/concepts/ProcessOutcome__.ts +4 -6
  620. package/src/concepts/ProcessOutcomes__.ts +4 -5
  621. package/src/concepts/Process__.ts +10 -14
  622. package/src/concepts/QueryAggregateExpression__.ts +4 -8
  623. package/src/concepts/QueryFieldExpression__.ts +4 -8
  624. package/src/concepts/QueryFromExpression__.ts +5 -9
  625. package/src/concepts/QueryGroupByExpression__.ts +4 -6
  626. package/src/concepts/QueryJoinExpression__.ts +6 -11
  627. package/src/concepts/QueryLimitExpression__.ts +4 -7
  628. package/src/concepts/QueryOrderByExpression__.ts +4 -7
  629. package/src/concepts/QuerySelectExpression__.ts +6 -7
  630. package/src/concepts/Rect__.ts +4 -9
  631. package/src/concepts/Return__.ts +19 -21
  632. package/src/concepts/Role__.ts +4 -8
  633. package/src/concepts/SelectMembers__.ts +5 -7
  634. package/src/concepts/SequentialPolicy__.ts +4 -5
  635. package/src/concepts/Slot__.ts +4 -11
  636. package/src/concepts/SqlQueryComponent__.ts +4 -9
  637. package/src/concepts/Start__.ts +4 -5
  638. package/src/concepts/StaticString__.ts +4 -6
  639. package/src/concepts/StringInterpolation__.ts +5 -6
  640. package/src/concepts/StringLiteral__.ts +4 -6
  641. package/src/concepts/StructureProperty__.ts +4 -12
  642. package/src/concepts/Structure__.ts +6 -10
  643. package/src/concepts/SwitchCase__.ts +5 -7
  644. package/src/concepts/SwitchStatement__.ts +5 -6
  645. package/src/concepts/Theme__.ts +4 -5
  646. package/src/concepts/Transactional__.ts +4 -8
  647. package/src/concepts/TriggerEvent__.ts +4 -7
  648. package/src/concepts/TriggerLauncher__.ts +4 -9
  649. package/src/concepts/TypeAnnotation__.ts +9 -15
  650. package/src/concepts/TypeParam__.ts +4 -6
  651. package/src/concepts/UnaryExpression__.ts +4 -7
  652. package/src/concepts/Unparsed__.ts +4 -6
  653. package/src/concepts/UseComponent__.ts +4 -7
  654. package/src/concepts/ValidationRule__.ts +5 -10
  655. package/src/concepts/Variable__.ts +22 -19
  656. package/src/concepts/ViewBlock__.ts +4 -8
  657. package/src/concepts/ViewComponent__.ts +10 -16
  658. package/src/concepts/ViewElement__.ts +183 -59
  659. package/src/concepts/View__.ts +27 -37
  660. package/src/concepts/WhileStatement__.ts +5 -7
  661. package/src/concepts/basics/stdlib/nasl.util.ts +30 -30
  662. package/src/concepts/basics/stdlib/reference2TypeAnnotationList.ts +2 -2
  663. package/src/concepts/index.ts +2 -2
  664. package/src/concepts/index__.ts +5 -1
  665. package/src/concepts/utils/asserts.ts +367 -77
  666. package/src/concepts/utils/quick-info.ts +64 -0
  667. package/src/concepts/utils/types.ts +28 -5
  668. package/src/generator/genBundleFiles.ts +33 -15
  669. package/src/generator/genReleaseBody.ts +14 -3
  670. package/src/generator/permission.ts +8 -6
  671. package/src/server/extendBaseNode.ts +22 -20
  672. package/src/server/formatTsUtils.ts +8 -8
  673. package/src/server/getConnector.ts +21 -2
  674. package/src/server/getLogics.ts +79 -41
  675. package/src/server/getMemberIdentifier.ts +11 -5
  676. package/src/server/naslServer.ts +38 -78
  677. package/src/server/translator.ts +12 -17
  678. package/src/service/storage/init.ts +3 -4
  679. package/src/templator/genCreateBlock.ts +6 -6
  680. package/src/templator/genCurdEditMultipleKeyBlock.ts +16 -16
  681. package/src/templator/genCurdMultipleKeyBlock.ts +36 -36
  682. package/src/templator/genGetBlock.ts +4 -4
  683. package/src/templator/genGridViewBlock.ts +12 -12
  684. package/src/templator/genListViewBlock.ts +4 -4
  685. package/src/templator/genQueryComponent.ts +38 -33
  686. package/src/templator/genSelectBlock.ts +3 -3
  687. package/src/templator/genTableBlock.ts +10 -10
  688. package/src/templator/genUpdateBlock.ts +8 -8
  689. package/src/templator/utils.ts +29 -20
  690. package/src/translator/utils.ts +2 -2
  691. package/src/utils/i18nInfo.ts +7 -2
  692. package/src/utils/index.ts +1 -1
  693. package/test/concepts/binary-expression/__snapshots__/getQuickInfoOffset.spec.ts.snap +25 -0
  694. package/test/concepts/binary-expression/getQuickInfoOffset.spec.ts +19 -0
  695. package/test/concepts/call-function/__snapshots__/getQuickInfoOffset.spec.ts.snap +41 -0
  696. package/test/concepts/call-function/fixtures/from-string.json +68 -59
  697. package/test/concepts/call-function/fixtures/to-string-global-tz.json +67 -58
  698. package/test/concepts/call-function/fixtures/to-string-no-tz.json +57 -48
  699. package/test/concepts/call-function/fixtures/to-string-user-tz.json +69 -60
  700. package/test/concepts/call-function/fixtures/to-string-utc-tz.json +69 -60
  701. package/test/concepts/call-function/getQuickInfoOffset.spec.ts +19 -0
  702. package/test/concepts/call-interface/__snapshots__/getQuickInfoOffset.spec.ts.snap +86 -0
  703. package/test/concepts/call-interface/__snapshots__/toEmbeddedTS.spec.ts.snap +3 -3
  704. package/test/concepts/call-interface/fixtures/only-interface.json +81 -72
  705. package/test/concepts/call-interface/fixtures/with-body-complex-argument.json +223 -214
  706. package/test/concepts/call-interface/fixtures/with-body-no-argument.json +85 -76
  707. package/test/concepts/call-interface/fixtures/with-body-simple-argument.json +100 -91
  708. package/test/concepts/call-interface/fixtures/with-headers-no-argument.json +88 -79
  709. package/test/concepts/call-interface/fixtures/with-headers.json +90 -81
  710. package/test/concepts/call-interface/fixtures/with-query-no-argument.json +88 -79
  711. package/test/concepts/call-interface/fixtures/with-query.json +90 -81
  712. package/test/concepts/call-interface/getQuickInfoOffset.spec.ts +19 -0
  713. package/test/concepts/call-logic/__snapshots__/getQuickInfoOffset.spec.ts.snap +4 -2
  714. package/test/concepts/call-logic/fixtures/entries-get-with-arguments.json +104 -95
  715. package/test/concepts/call-logic/fixtures/entries-update-with-arguments.json +209 -200
  716. package/test/concepts/call-logic/fixtures/global-logic-argument-no-expression.json +97 -88
  717. package/test/concepts/call-logic/fixtures/global-logic-argument-some-expression.json +124 -115
  718. package/test/concepts/call-logic/fixtures/json-deserialize.json +120 -111
  719. package/test/concepts/call-logic/fixtures/json-serialize-with-string.json +124 -115
  720. package/test/concepts/call-logic/fixtures/json-serialize.json +124 -115
  721. package/test/concepts/call-logic/fixtures/view-buildin-logic-with-argument.json +91 -82
  722. package/test/concepts/call-logic/fixtures/view-component-logic-no-argument.json +88 -79
  723. package/test/concepts/call-logic/fixtures/view-component-with-validation.json +144 -135
  724. package/test/concepts/call-logic/getQuickInfoOffset.spec.ts +2 -7
  725. package/test/concepts/identifier/fixtures/view-variable.json +145 -136
  726. package/test/concepts/new-composite/__snapshots__/getQuickInfoOffset.spec.ts.snap +104 -0
  727. package/test/concepts/new-composite/__snapshots__/toEmbeddedTS.spec.ts.snap +97 -0
  728. package/test/concepts/new-composite/__snapshots__/toJS.spec.ts.snap +43 -0
  729. package/test/concepts/new-composite/constant.ts +5 -0
  730. package/test/concepts/new-composite/fixtures/nested-transform.json +241 -0
  731. package/test/concepts/new-composite/fixtures/nested.json +146 -0
  732. package/test/concepts/new-composite/fixtures/normal.json +63 -0
  733. package/test/concepts/new-composite/getQuickInfoOffset.spec.ts +19 -0
  734. package/test/concepts/new-composite/toEmbeddedTS.spec.ts +15 -0
  735. package/test/concepts/new-composite/toJS.spec.ts +14 -0
  736. package/test/concepts/new-list/__snapshots__/getQuickInfoOffset.spec.ts.snap +165 -0
  737. package/test/concepts/new-list/__snapshots__/toEmbeddedTS.spec.ts.snap +207 -0
  738. package/test/concepts/new-list/__snapshots__/toJS.spec.ts.snap +63 -0
  739. package/test/concepts/new-list/constant.ts +5 -0
  740. package/test/concepts/new-list/fixtures/nested-map.json +117 -0
  741. package/test/concepts/new-list/fixtures/nested-tranform.json +140 -0
  742. package/test/concepts/new-list/fixtures/nested.json +107 -0
  743. package/test/concepts/new-list/fixtures/normal.json +95 -0
  744. package/test/concepts/new-list/getQuickInfoOffset.spec.ts +19 -0
  745. package/test/concepts/new-list/toEmbeddedTS.spec.ts +15 -0
  746. package/test/concepts/new-list/toJS.spec.ts +14 -0
  747. package/test/concepts/new-map/__snapshots__/getQuickInfoOffset.spec.ts.snap +115 -0
  748. package/test/concepts/new-map/__snapshots__/toEmbeddedTS.spec.ts.snap +192 -0
  749. package/test/concepts/new-map/__snapshots__/toJS.spec.ts.snap +54 -0
  750. package/test/concepts/new-map/constant.ts +5 -0
  751. package/test/concepts/new-map/fixtures/nested-transform.json +169 -0
  752. package/test/concepts/new-map/fixtures/nested.json +141 -0
  753. package/test/concepts/new-map/fixtures/normal.json +101 -0
  754. package/test/concepts/new-map/getQuickInfoOffset.spec.ts +19 -0
  755. package/test/concepts/new-map/toEmbeddedTS.spec.ts +15 -0
  756. package/test/concepts/new-map/toJS.spec.ts +14 -0
  757. package/test/concepts/utils.ts +17 -0
  758. package/test/concepts/view-element/__snapshots__/toVue.spec.ts.snap +1 -1
  759. package/test/concepts/view-element/fixtures/default-login.json +221 -212
  760. package/test/concepts/view-element/fixtures/default-not-found.json +183 -174
  761. package/test/concepts/view-element/fixtures/with-role-auth.json +91 -82
  762. package/test/concepts/view-element/fixtures/with-table.json +1894 -1885
  763. package/test/concepts/view-element/toVue.spec.ts +1 -0
  764. package/tsconfig.json +2 -1
  765. package/out/concepts/Paginate__.d.ts +0 -80
  766. package/out/concepts/Paginate__.js +0 -250
  767. package/out/concepts/Paginate__.js.map +0 -1
  768. package/src/concepts/Paginate__.ts +0 -287
@@ -39,76 +39,50 @@ const translator_1 = require("../translator");
39
39
  const common_1 = require("../common");
40
40
  const decorators_1 = require("../decorators");
41
41
  const utils = __importStar(require("../utils"));
42
- const Assert = __importStar(require("./utils/asserts"));
42
+ const asserts = __importStar(require("./utils/asserts"));
43
43
  const BaseNode_1 = __importDefault(require("../common/BaseNode"));
44
44
  /**
45
45
  * 覆写逻辑
46
46
  */
47
- let OverriddenLogic = OverriddenLogic_1 =
48
- // @ts-ignore
49
- class OverriddenLogic extends BaseNode_1.default {
50
- /** 类名 */
51
- static ConceptName = 'OverriddenLogic';
52
- /** 继承链 */
53
- static inheritanceChain = ['BaseNode'];
47
+ let OverriddenLogic = OverriddenLogic_1 = class OverriddenLogic extends BaseNode_1.default {
54
48
  /**
55
- * 产品概念
56
- */
57
- concept;
58
- /**
59
- * 覆写的模块
60
- */
61
- // @ts-ignore
62
- overriddenModule;
63
- /**
64
- * 覆写逻辑名称
65
- */
66
- // @ts-ignore
67
- name;
68
- /**
69
- * 覆写逻辑描述
70
- */
71
- // @ts-ignore
72
- description;
73
- /**
74
- * 触发方式
75
- */
76
- // @ts-ignore
77
- triggerType;
78
- /**
79
- * 定时任务表达式
80
- */
81
- // @ts-ignore
82
- cron;
83
- /**
84
- * 事务
85
- */
86
- // @ts-ignore
87
- transactional;
88
- /**
89
- * 类型参数列表
90
- */
91
- typeParams = null;
92
- /**
93
- * 输入参数列表
94
- */
95
- params = [];
96
- /**
97
- * 输出参数列表
98
- */
99
- returns = [];
100
- /**
101
- * 变量列表
102
- */
103
- variables = [];
104
- /**
105
- * 逻辑项列表
106
- */
107
- body = [];
108
- /**
109
- * 逻辑项列表
49
+ * @param source 需要合并的部分参数
110
50
  */
111
- playground = [];
51
+ constructor(source) {
52
+ source = Object.assign({}, OverriddenLogic_1.getDefaultOptions(), source);
53
+ super(source);
54
+ /**
55
+ * 类型参数列表
56
+ */
57
+ this.typeParams = null;
58
+ /**
59
+ * 输入参数列表
60
+ */
61
+ this.params = [];
62
+ /**
63
+ * 输出参数列表
64
+ */
65
+ this.returns = [];
66
+ /**
67
+ * 变量列表
68
+ */
69
+ this.variables = [];
70
+ /**
71
+ * 逻辑项列表
72
+ */
73
+ this.body = [];
74
+ /**
75
+ * 逻辑项列表
76
+ */
77
+ this.playground = [];
78
+ // 是不是内部有错误
79
+ this.haveError = false;
80
+ // 是否body为空
81
+ this.isSmpty = false;
82
+ // 虚拟输入参数列表
83
+ this.virtualParams = [];
84
+ super.subConstructor(source);
85
+ }
112
86
  /**
113
87
  * 祖先 Module
114
88
  */
@@ -145,14 +119,6 @@ class OverriddenLogic extends BaseNode_1.default {
145
119
  get process() {
146
120
  return this.getAncestor('Process');
147
121
  }
148
- /**
149
- * @param source 需要合并的部分参数
150
- */
151
- constructor(source) {
152
- source = Object.assign({}, OverriddenLogic_1.getDefaultOptions(), source);
153
- super(source);
154
- super.subConstructor(source);
155
- }
156
122
  static from(source, parentNode, parentKey) {
157
123
  return super.from(source, parentNode, parentKey);
158
124
  }
@@ -261,7 +227,7 @@ class OverriddenLogic extends BaseNode_1.default {
261
227
  name: options,
262
228
  }, this, 'typeParams');
263
229
  }
264
- else if (Assert.isTypeParam(options)) {
230
+ else if (asserts.isTypeParam(options)) {
265
231
  options.ensureDelete(); // 同一实例不支持多处存在
266
232
  typeParam = options;
267
233
  Object.assign(typeParam, relationOptions);
@@ -318,7 +284,7 @@ class OverriddenLogic extends BaseNode_1.default {
318
284
  name: options,
319
285
  }, this, 'params');
320
286
  }
321
- else if (Assert.isParam(options)) {
287
+ else if (asserts.isParam(options)) {
322
288
  options.ensureDelete(); // 同一实例不支持多处存在
323
289
  param = options;
324
290
  Object.assign(param, relationOptions);
@@ -375,7 +341,7 @@ class OverriddenLogic extends BaseNode_1.default {
375
341
  name: options,
376
342
  }, this, 'returns');
377
343
  }
378
- else if (Assert.isReturn(options)) {
344
+ else if (asserts.isReturn(options)) {
379
345
  options.ensureDelete(); // 同一实例不支持多处存在
380
346
  ret = options;
381
347
  Object.assign(ret, relationOptions);
@@ -432,7 +398,7 @@ class OverriddenLogic extends BaseNode_1.default {
432
398
  name: options,
433
399
  }, this, 'variables');
434
400
  }
435
- else if (Assert.isVariable(options)) {
401
+ else if (asserts.isVariable(options)) {
436
402
  options.ensureDelete(); // 同一实例不支持多处存在
437
403
  variable = options;
438
404
  Object.assign(variable, relationOptions);
@@ -474,7 +440,7 @@ class OverriddenLogic extends BaseNode_1.default {
474
440
  const relationOptions = { parentNode: this, parentKey: 'body' };
475
441
  const LogicItem = (0, decorators_1.getConceptConstructor)('LogicItem');
476
442
  let logicItem;
477
- if (Assert.isLogicItem(options)) {
443
+ if (asserts.isLogicItem(options)) {
478
444
  options.ensureDelete(); // 同一实例不支持多处存在
479
445
  logicItem = options;
480
446
  Object.assign(logicItem, relationOptions);
@@ -516,7 +482,7 @@ class OverriddenLogic extends BaseNode_1.default {
516
482
  const relationOptions = { parentNode: this, parentKey: 'playground' };
517
483
  const LogicItem = (0, decorators_1.getConceptConstructor)('LogicItem');
518
484
  let logicItem;
519
- if (Assert.isLogicItem(options)) {
485
+ if (asserts.isLogicItem(options)) {
520
486
  options.ensureDelete(); // 同一实例不支持多处存在
521
487
  logicItem = options;
522
488
  Object.assign(logicItem, relationOptions);
@@ -1082,7 +1048,9 @@ class OverriddenLogic extends BaseNode_1.default {
1082
1048
  code += 'const __LogicEmpty: any = null;';
1083
1049
  }
1084
1050
  }
1085
- else if (self.body.length <= 2 && !Assert.isNamespace(self.parentNode) && !Assert.isProcess(self.parentNode)) {
1051
+ else if (self.body.length <= 2 &&
1052
+ !asserts.isNamespace(self.parentNode) &&
1053
+ !asserts.isProcess(self.parentNode)) {
1086
1054
  code += (0, translator_1.indent)((state?.tabSize || 0) + 1);
1087
1055
  code += `${(0, translator_1.indent)(state?.tabSize || 0 + 4)}const __LogicEmpty: any = null;`;
1088
1056
  }
@@ -1146,8 +1114,8 @@ class OverriddenLogic extends BaseNode_1.default {
1146
1114
  const advanceMap = new Map();
1147
1115
  const needGetSourceMapOqlList = [];
1148
1116
  yield* self.traverseChildrenGenerator(function* traverseChildrenGenerator(el) {
1149
- if (el && (Assert.isBatchAssignment(el) || (Assert.isAssignment(el) && el.left?.name))) {
1150
- if (Assert.isAssignment(el)) {
1117
+ if (el && (asserts.isBatchAssignment(el) || (asserts.isAssignment(el) && el.left?.name))) {
1118
+ if (asserts.isAssignment(el)) {
1151
1119
  const advanceVar = self.variables?.find((variable) => !variable.typeAnnotation && el.left?.name === variable.name);
1152
1120
  if (advanceVar && !advanceMap.get(advanceVar)) {
1153
1121
  advanceMap.set(advanceVar, el);
@@ -1157,7 +1125,7 @@ class OverriddenLogic extends BaseNode_1.default {
1157
1125
  advanceMap.set(advanceRn, el);
1158
1126
  }
1159
1127
  }
1160
- else if (Assert.isBatchAssignment(el)) {
1128
+ else if (asserts.isBatchAssignment(el)) {
1161
1129
  yield* (0, time_slicing_1.wrapForEachToGenerator)(el.assignmentLines, function* warpForEachGenerator({ leftIndex }) {
1162
1130
  const leftCode = leftIndex.length === 1
1163
1131
  ? yield* el.left.expression.toEmbeddedTS((0, translator_1.shiftState)(state, code, { inline: true }))
@@ -1208,7 +1176,7 @@ class OverriddenLogic extends BaseNode_1.default {
1208
1176
  code += `${(0, translator_1.indent)((state?.tabSize || 0) + 1)}// @ts-ignore\n`;
1209
1177
  code += `${(0, translator_1.indent)((state?.tabSize || 0) + 1)}let `;
1210
1178
  code += yield* node.toEmbeddedTS((0, translator_1.shiftState)(state, code, { inline: true }));
1211
- if (Assert.isBatchAssignment(assignment)) {
1179
+ if (asserts.isBatchAssignment(assignment)) {
1212
1180
  yield* (0, time_slicing_1.wrapForEachToGenerator)(assignment.assignmentLines, function* warpForEachGenerator({ leftIndex, rightIndex }) {
1213
1181
  const leftCode = leftIndex.length === 1
1214
1182
  ? yield* assignment.left.expression.toEmbeddedTS((0, translator_1.shiftState)(state, code, { inline: true }))
@@ -1220,7 +1188,7 @@ class OverriddenLogic extends BaseNode_1.default {
1220
1188
  : assignment.rights[rightIndex[0]]?.members[rightIndex[1]];
1221
1189
  // 当右边有明确类型时,直接使用其类型。旧版本数据查询不能直接使用其 typeAnnotation
1222
1190
  if (rightNode?.typeAnnotation &&
1223
- !(Assert.isCallQueryComponent(rightNode) && rightNode.ideVersion !== '2.11')) {
1191
+ !(asserts.isCallQueryComponent(rightNode) && rightNode.ideVersion !== '2.11')) {
1224
1192
  code += ': ';
1225
1193
  code += yield* rightNode.typeAnnotation?.toEmbeddedTS((0, translator_1.shiftState)(state, code, { inline: true })) ??
1226
1194
  (0, time_slicing_1.returnOrigin)('null');
@@ -1249,7 +1217,8 @@ class OverriddenLogic extends BaseNode_1.default {
1249
1217
  else {
1250
1218
  const rightNode = assignment.right;
1251
1219
  // 当右边有明确类型时,直接使用其类型。旧版本数据查询不能直接使用其 typeAnnotation
1252
- if (rightNode?.typeAnnotation && !(Assert.isCallQueryComponent(rightNode) && rightNode.ideVersion !== '2.11')) {
1220
+ if (rightNode?.typeAnnotation &&
1221
+ !(asserts.isCallQueryComponent(rightNode) && rightNode.ideVersion !== '2.11')) {
1253
1222
  code += ': ';
1254
1223
  code += yield* rightNode.typeAnnotation?.toEmbeddedTS((0, translator_1.shiftState)(state, code, { inline: true })) ??
1255
1224
  (0, time_slicing_1.returnOrigin)('null');
@@ -1259,7 +1228,7 @@ class OverriddenLogic extends BaseNode_1.default {
1259
1228
  let rightCode = '';
1260
1229
  // 因为右侧枚举要赋值就得new 一下;
1261
1230
  if (rightNode &&
1262
- Assert.isIdentifier(rightNode) &&
1231
+ asserts.isIdentifier(rightNode) &&
1263
1232
  rightNode.namespace &&
1264
1233
  rightNode.namespace.endsWith('enums')) {
1265
1234
  rightCode += 'new ';
@@ -1278,7 +1247,7 @@ class OverriddenLogic extends BaseNode_1.default {
1278
1247
  }
1279
1248
  else {
1280
1249
  // 如果长度小于2 并且不是虚拟节点就 加 报错,
1281
- if (self.body.length <= 2 && !Assert.isNamespace(self.parentNode)) {
1250
+ if (self.body.length <= 2 && !asserts.isNamespace(self.parentNode)) {
1282
1251
  code += (0, translator_1.indent)((state?.tabSize || 0) + 1);
1283
1252
  code += 'const __LogicEmpty: any = null;';
1284
1253
  }
@@ -1302,17 +1271,17 @@ class OverriddenLogic extends BaseNode_1.default {
1302
1271
  }
1303
1272
  *getRightCode(code, assignment, rightNode) {
1304
1273
  code = code.replaceAll('\n', ' ');
1305
- if (Assert.isAssignment(assignment) && !assignment.right)
1274
+ if (asserts.isAssignment(assignment) && !assignment.right)
1306
1275
  return code;
1307
1276
  // 调用接口,参数替换成 null
1308
- if (Assert.isCallInterface(rightNode)) {
1277
+ if (asserts.isCallInterface(rightNode)) {
1309
1278
  const { _interface } = rightNode.getModuleInterface();
1310
1279
  return _interface
1311
1280
  ? `${rightNode.tsCalleeKey}(${_interface.params.map(() => 'null').join(',')})`
1312
1281
  : null;
1313
1282
  }
1314
1283
  // 调用服务端逻辑,参数替换成 null
1315
- if (Assert.isCallLogic(rightNode) && rightNode.calleeNamespace === 'app.logics') {
1284
+ if (asserts.isCallLogic(rightNode) && rightNode.calleeNamespace === 'app.logics') {
1316
1285
  const calleeName = rightNode?.calleeName;
1317
1286
  const calleeLogic = this.app.logics.find((l) => l.name === calleeName);
1318
1287
  return calleeLogic ? `app.logics.${calleeName}(${calleeLogic.params.map(() => 'null').join(',')})` : null;
@@ -1376,7 +1345,7 @@ class OverriddenLogic extends BaseNode_1.default {
1376
1345
  if (code.includes(expressionTsCode)) {
1377
1346
  let typeCode = '';
1378
1347
  yield* (0, time_slicing_1.wrapForEachToGenerator)(matchCase.patterns, function* wrapForEach(pattern, index) {
1379
- if (Assert.isTypeAnnotation(pattern)) {
1348
+ if (asserts.isTypeAnnotation(pattern)) {
1380
1349
  if (index === 0) {
1381
1350
  typeCode += yield* pattern.toEmbeddedTS();
1382
1351
  }
@@ -1459,7 +1428,7 @@ class OverriddenLogic extends BaseNode_1.default {
1459
1428
  */
1460
1429
  getEmbeddedFilePath(name = this.name) {
1461
1430
  let _path = this.module ? `/${this.module.parentKey}/${this.module.name}` : '';
1462
- if (Assert.isFrontendLibrary(this.parentNode)) {
1431
+ if (asserts.isFrontendLibrary(this.parentNode)) {
1463
1432
  _path += `/frontends/${this.parentNode.type}`;
1464
1433
  }
1465
1434
  return `/embedded/${this.app.name}${_path}/overriddenLogics/${name}.ts`;
@@ -1505,7 +1474,7 @@ class OverriddenLogic extends BaseNode_1.default {
1505
1474
  root = this;
1506
1475
  const set = new Set();
1507
1476
  utils.traverse(({ node }) => {
1508
- if (Assert.isCallQueryComponent(node)) {
1477
+ if (asserts.isCallQueryComponent(node)) {
1509
1478
  set.add(node);
1510
1479
  }
1511
1480
  }, { node: root }, {
@@ -1523,8 +1492,6 @@ class OverriddenLogic extends BaseNode_1.default {
1523
1492
  enabled: flag,
1524
1493
  }));
1525
1494
  }
1526
- fake;
1527
- getPath;
1528
1495
  delete() {
1529
1496
  let actionMsg = '删除逻辑项';
1530
1497
  if (this.name)
@@ -1539,10 +1506,6 @@ class OverriddenLogic extends BaseNode_1.default {
1539
1506
  });
1540
1507
  this.app?.emit('collect:end');
1541
1508
  }
1542
- // 是不是内部有错误
1543
- haveError = false;
1544
- // 是否body为空
1545
- isSmpty = false;
1546
1509
  get pathName() {
1547
1510
  if (this.view) {
1548
1511
  return this.getEventLogicName('chinese');
@@ -1567,7 +1530,7 @@ class OverriddenLogic extends BaseNode_1.default {
1567
1530
  }
1568
1531
  // 获取bindEvent下的logic的名称
1569
1532
  getEventLogicName(type) {
1570
- if (Assert.isBindEvent(this.parentNode)) {
1533
+ if (asserts.isBindEvent(this.parentNode)) {
1571
1534
  if (type === 'chinese') {
1572
1535
  const bindEvent = this.parentNode;
1573
1536
  const bindChineseName = bindEvent.getPageViewEventChineseName();
@@ -1576,8 +1539,6 @@ class OverriddenLogic extends BaseNode_1.default {
1576
1539
  }
1577
1540
  return this.name;
1578
1541
  }
1579
- // 虚拟输入参数列表
1580
- virtualParams = [];
1581
1542
  get getLogicBelongTo() {
1582
1543
  const [, belongTo] = this.calleewholeKey.split('.');
1583
1544
  return belongTo;
@@ -1613,6 +1574,10 @@ class OverriddenLogic extends BaseNode_1.default {
1613
1574
  return null;
1614
1575
  }
1615
1576
  };
1577
+ /** 类名 */
1578
+ OverriddenLogic.ConceptName = 'OverriddenLogic';
1579
+ /** 继承链 */
1580
+ OverriddenLogic.inheritanceChain = ['BaseNode'];
1616
1581
  __decorate([
1617
1582
  (0, decorators_1.property)('concept')
1618
1583
  ], OverriddenLogic.prototype, "concept", void 0);
@@ -1686,7 +1651,6 @@ __decorate([
1686
1651
  ], OverriddenLogic.prototype, "toEmbeddedTS", null);
1687
1652
  OverriddenLogic = OverriddenLogic_1 = __decorate([
1688
1653
  (0, decorators_1.concept)('覆写逻辑')
1689
- // @ts-ignore
1690
1654
  ], OverriddenLogic);
1691
1655
  exports.OverriddenLogic = OverriddenLogic;
1692
1656
  exports.default = OverriddenLogic;
@@ -1 +1 @@
1
- {"version":3,"file":"OverriddenLogic__.js","sourceRoot":"","sources":["../../src/concepts/OverriddenLogic__.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OverriddenLogic__.js","sourceRoot":"","sources":["../../src/concepts/OverriddenLogic__.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ import Param from './Param__';
2
+ /**
3
+ * 参数分组
4
+ */
5
+ export declare class ParamWithGroup extends Param {
6
+ /** 类名 */
7
+ static readonly ConceptName: string;
8
+ /** 继承链 */
9
+ static readonly inheritanceChain: string[];
10
+ /**
11
+ * 产品概念
12
+ */
13
+ readonly concept: 'ParamWithGroup';
14
+ /**
15
+ * 参数分组标题
16
+ */
17
+ title: string;
18
+ /**
19
+ * 类别
20
+ */
21
+ group: string;
22
+ /**
23
+ * @param source 需要合并的部分参数
24
+ */
25
+ constructor(source?: Partial<any>);
26
+ static from(source: any, parentNode?: any, parentKey?: string): any;
27
+ /**
28
+ * 设置参数分组标题
29
+ */
30
+ setTitle(title: string): void;
31
+ /**
32
+ * 设置类别
33
+ */
34
+ setGroup(group: string): void;
35
+ static getDefaultOptions(): {
36
+ group: string;
37
+ };
38
+ }
39
+ export default ParamWithGroup;