@lcap/nasl 3.2.0-beta.3 → 3.3.0-alpha

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