@lcap/nasl 2.12.0 → 2.13.0-beta

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 (669) hide show
  1. package/package.json +1 -1
  2. package/src/bak/translator.js +8 -1
  3. package/src/common/BaseNode.ts +1 -1
  4. package/src/concepts/App__.ts +38 -1
  5. package/src/concepts/Argument__.ts +1 -1
  6. package/src/concepts/Assignee__.ts +1 -1
  7. package/src/concepts/Assignment__.ts +1 -1
  8. package/src/concepts/Attribute__.ts +1 -1
  9. package/src/concepts/BinaryExpression__.ts +21 -4
  10. package/src/concepts/BindAttribute__.ts +1 -1
  11. package/src/concepts/BindDirective__.ts +4 -0
  12. package/src/concepts/BindEvent__.ts +416 -59
  13. package/src/concepts/BooleanLiteral__.ts +1 -1
  14. package/src/concepts/CallFunction__.ts +1 -1
  15. package/src/concepts/CallInterface__.ts +3 -1
  16. package/src/concepts/CallLogic__.ts +1 -1
  17. package/src/concepts/CallQueryComponent__.ts +1 -1
  18. package/src/concepts/Comment__.ts +1 -1
  19. package/src/concepts/CompletionProperty__.ts +1 -2
  20. package/src/concepts/ConfigGroup__.ts +1 -1
  21. package/src/concepts/ConfigPropertyValue__.ts +1 -1
  22. package/src/concepts/ConfigProperty__.ts +1 -1
  23. package/src/concepts/Configuration__.ts +1 -1
  24. package/src/concepts/Constant__.ts +1 -1
  25. package/src/concepts/DataElement__.ts +1 -1
  26. package/src/concepts/DataSource__.ts +1 -1
  27. package/src/concepts/Destination__.ts +3 -2
  28. package/src/concepts/End__.ts +1 -1
  29. package/src/concepts/EntityIndex__.ts +1 -1
  30. package/src/concepts/EntityProperty__.ts +1 -1
  31. package/src/concepts/Entity__.ts +1 -2
  32. package/src/concepts/EnumItem__.ts +1 -1
  33. package/src/concepts/Enum__.ts +1 -1
  34. package/src/concepts/Event__.ts +1 -1
  35. package/src/concepts/ForEachStatement__.ts +1 -1
  36. package/src/concepts/Function__.ts +65 -41
  37. package/src/concepts/Identifier__.ts +2 -2
  38. package/src/concepts/IfStatement__.ts +1 -1
  39. package/src/concepts/InterfaceParam__.ts +1 -1
  40. package/src/concepts/Interface__.ts +2 -1
  41. package/src/concepts/JSBlock__.ts +7 -0
  42. package/src/concepts/LogicItem__.ts +1 -1
  43. package/src/concepts/Logic__.ts +116 -14
  44. package/src/concepts/MemberExpression__.ts +1 -1
  45. package/src/concepts/Module__.ts +129 -107
  46. package/src/concepts/Namespace__.ts +1 -1
  47. package/src/concepts/NullLiteral__.ts +1 -1
  48. package/src/concepts/NumericLiteral__.ts +1 -1
  49. package/src/concepts/Param__.ts +7 -1
  50. package/src/concepts/Point__.ts +1 -1
  51. package/src/concepts/ProcessComponent__.ts +1 -1
  52. package/src/concepts/ProcessElement__.ts +228 -2
  53. package/src/concepts/ProcessOutcome__.ts +1 -1
  54. package/src/concepts/Process__.ts +242 -3
  55. package/src/concepts/QueryAggregateExpression__.ts +1 -1
  56. package/src/concepts/QueryFieldExpression__.ts +1 -1
  57. package/src/concepts/QueryFromExpression__.ts +1 -1
  58. package/src/concepts/QueryGroupByExpression__.ts +1 -1
  59. package/src/concepts/QueryJoinExpression__.ts +1 -1
  60. package/src/concepts/QueryLimitExpression__.ts +1 -1
  61. package/src/concepts/QueryOrderByExpression__.ts +1 -1
  62. package/src/concepts/QuerySelectExpression__.ts +1 -1
  63. package/src/concepts/Rect__.ts +1 -1
  64. package/src/concepts/Return__.ts +1 -1
  65. package/src/concepts/Role__.ts +1 -1
  66. package/src/concepts/Slot__.ts +1 -1
  67. package/src/concepts/SqlQueryComponent__.ts +14 -4
  68. package/src/concepts/Start__.ts +1 -1
  69. package/src/concepts/StringLiteral__.ts +1 -1
  70. package/src/concepts/StructureProperty__.ts +4 -0
  71. package/src/concepts/Structure__.ts +1 -1
  72. package/src/concepts/SwitchCase__.ts +1 -1
  73. package/src/concepts/SwitchStatement__.ts +1 -1
  74. package/src/concepts/Theme__.ts +1 -1
  75. package/src/concepts/Transactional__.ts +1 -1
  76. package/src/concepts/TypeAnnotation__.ts +32 -3
  77. package/src/concepts/TypeParam__.ts +1 -1
  78. package/src/concepts/UnaryExpression__.ts +1 -1
  79. package/src/concepts/Unparsed__.ts +1 -1
  80. package/src/concepts/UseComponent__.ts +1 -1
  81. package/src/concepts/ValidationRule__.ts +1 -1
  82. package/src/concepts/Variable__.ts +1 -1
  83. package/src/concepts/ViewComponent__.ts +1 -1
  84. package/src/concepts/ViewElement__.ts +34 -17
  85. package/src/concepts/View__.ts +75 -12
  86. package/src/concepts/WhileStatement__.ts +1 -1
  87. package/src/concepts/basics/stdlib/nasl.ui.ts +4 -0
  88. package/src/concepts/basics/stdlib/nasl.util.ts +2 -2
  89. package/src/concepts/basics/types/coreTypeList.ts +1 -0
  90. package/src/enums/KEYWORDS.ts +3 -0
  91. package/src/server/createUiTs.ts +26 -2
  92. package/src/server/events.yaml +89 -0
  93. package/src/server/getMemberIdentifier.ts +121 -28
  94. package/src/server/getProcesses.ts +30 -29
  95. package/src/server/index.ts +4 -0
  96. package/src/server/naslServer.ts +46 -12
  97. package/src/server/translator.ts +25 -13
  98. package/src/templator/genCreateBlock.ts +4 -0
  99. package/src/templator/genCurdEditMultipleKeyBlock.ts +10 -3
  100. package/src/templator/genCurdMultipleKeyBlock.ts +36 -21
  101. package/src/templator/genEditTableBlock.ts +2 -27
  102. package/src/templator/genGridViewBlock.ts +0 -13
  103. package/src/templator/genTableBlock.ts +0 -13
  104. package/src/templator/genUpdateBlock.ts +4 -0
  105. package/src/templator/utils.ts +1 -0
  106. package/out/automate/engine/index.d.ts +0 -4
  107. package/out/automate/engine/index.js +0 -436
  108. package/out/automate/engine/index.js.map +0 -1
  109. package/out/automate/engine/operators.d.ts +0 -21
  110. package/out/automate/engine/operators.js +0 -161
  111. package/out/automate/engine/operators.js.map +0 -1
  112. package/out/automate/engine/uniqueName.d.ts +0 -12
  113. package/out/automate/engine/uniqueName.js +0 -107
  114. package/out/automate/engine/uniqueName.js.map +0 -1
  115. package/out/automate/engine/utils.d.ts +0 -25
  116. package/out/automate/engine/utils.js +0 -404
  117. package/out/automate/engine/utils.js.map +0 -1
  118. package/out/automate/template/process.d.ts +0 -9
  119. package/out/automate/template/process.js +0 -10976
  120. package/out/automate/template/process.js.map +0 -1
  121. package/out/bak/translator.d.ts +0 -1
  122. package/out/bak/translator.js +0 -112
  123. package/out/bak/translator.js.map +0 -1
  124. package/out/common/BaseNode.d.ts +0 -256
  125. package/out/common/BaseNode.js +0 -891
  126. package/out/common/BaseNode.js.map +0 -1
  127. package/out/common/Command.d.ts +0 -8
  128. package/out/common/Command.js +0 -32
  129. package/out/common/Command.js.map +0 -1
  130. package/out/common/ComponentAPI.d.ts +0 -110
  131. package/out/common/ComponentAPI.js +0 -3
  132. package/out/common/ComponentAPI.js.map +0 -1
  133. package/out/common/EventEmitter.d.ts +0 -58
  134. package/out/common/EventEmitter.js +0 -68
  135. package/out/common/EventEmitter.js.map +0 -1
  136. package/out/common/Messager.d.ts +0 -86
  137. package/out/common/Messager.js +0 -187
  138. package/out/common/Messager.js.map +0 -1
  139. package/out/common/classMap.d.ts +0 -4
  140. package/out/common/classMap.js +0 -5
  141. package/out/common/classMap.js.map +0 -1
  142. package/out/common/index.d.ts +0 -4
  143. package/out/common/index.js +0 -21
  144. package/out/common/index.js.map +0 -1
  145. package/out/concepts/App__.d.ts +0 -1119
  146. package/out/concepts/App__.js +0 -1591
  147. package/out/concepts/App__.js.map +0 -1
  148. package/out/concepts/Argument__.d.ts +0 -58
  149. package/out/concepts/Argument__.js +0 -198
  150. package/out/concepts/Argument__.js.map +0 -1
  151. package/out/concepts/Assignee__.d.ts +0 -201
  152. package/out/concepts/Assignee__.js +0 -298
  153. package/out/concepts/Assignee__.js.map +0 -1
  154. package/out/concepts/Assignment__.d.ts +0 -70
  155. package/out/concepts/Assignment__.js +0 -201
  156. package/out/concepts/Assignment__.js.map +0 -1
  157. package/out/concepts/Attribute__.d.ts +0 -101
  158. package/out/concepts/Attribute__.js +0 -221
  159. package/out/concepts/Attribute__.js.map +0 -1
  160. package/out/concepts/BinaryExpression__.d.ts +0 -64
  161. package/out/concepts/BinaryExpression__.js +0 -251
  162. package/out/concepts/BinaryExpression__.js.map +0 -1
  163. package/out/concepts/BindAttribute__.d.ts +0 -231
  164. package/out/concepts/BindAttribute__.js +0 -450
  165. package/out/concepts/BindAttribute__.js.map +0 -1
  166. package/out/concepts/BindDirective__.d.ts +0 -93
  167. package/out/concepts/BindDirective__.js +0 -251
  168. package/out/concepts/BindDirective__.js.map +0 -1
  169. package/out/concepts/BindEvent__.d.ts +0 -139
  170. package/out/concepts/BindEvent__.js +0 -369
  171. package/out/concepts/BindEvent__.js.map +0 -1
  172. package/out/concepts/BooleanLiteral__.d.ts +0 -31
  173. package/out/concepts/BooleanLiteral__.js +0 -91
  174. package/out/concepts/BooleanLiteral__.js.map +0 -1
  175. package/out/concepts/CallFunction__.d.ts +0 -153
  176. package/out/concepts/CallFunction__.js +0 -381
  177. package/out/concepts/CallFunction__.js.map +0 -1
  178. package/out/concepts/CallInterface__.d.ts +0 -103
  179. package/out/concepts/CallInterface__.js +0 -441
  180. package/out/concepts/CallInterface__.js.map +0 -1
  181. package/out/concepts/CallLogic__.d.ts +0 -170
  182. package/out/concepts/CallLogic__.js +0 -604
  183. package/out/concepts/CallLogic__.js.map +0 -1
  184. package/out/concepts/CallQueryComponent__.d.ts +0 -345
  185. package/out/concepts/CallQueryComponent__.js +0 -1009
  186. package/out/concepts/CallQueryComponent__.js.map +0 -1
  187. package/out/concepts/Comment__.d.ts +0 -30
  188. package/out/concepts/Comment__.js +0 -93
  189. package/out/concepts/Comment__.js.map +0 -1
  190. package/out/concepts/CompletionProperty__.d.ts +0 -101
  191. package/out/concepts/CompletionProperty__.js +0 -237
  192. package/out/concepts/CompletionProperty__.js.map +0 -1
  193. package/out/concepts/ConfigGroup__.d.ts +0 -121
  194. package/out/concepts/ConfigGroup__.js +0 -221
  195. package/out/concepts/ConfigGroup__.js.map +0 -1
  196. package/out/concepts/ConfigPropertyValue__.d.ts +0 -43
  197. package/out/concepts/ConfigPropertyValue__.js +0 -103
  198. package/out/concepts/ConfigPropertyValue__.js.map +0 -1
  199. package/out/concepts/ConfigProperty__.d.ts +0 -129
  200. package/out/concepts/ConfigProperty__.js +0 -239
  201. package/out/concepts/ConfigProperty__.js.map +0 -1
  202. package/out/concepts/Configuration__.d.ts +0 -121
  203. package/out/concepts/Configuration__.js +0 -213
  204. package/out/concepts/Configuration__.js.map +0 -1
  205. package/out/concepts/Constant__.d.ts +0 -99
  206. package/out/concepts/Constant__.js +0 -237
  207. package/out/concepts/Constant__.js.map +0 -1
  208. package/out/concepts/DataElement__.d.ts +0 -45
  209. package/out/concepts/DataElement__.js +0 -114
  210. package/out/concepts/DataElement__.js.map +0 -1
  211. package/out/concepts/DataSource__.d.ts +0 -143
  212. package/out/concepts/DataSource__.js +0 -318
  213. package/out/concepts/DataSource__.js.map +0 -1
  214. package/out/concepts/Destination__.d.ts +0 -120
  215. package/out/concepts/Destination__.js +0 -433
  216. package/out/concepts/Destination__.js.map +0 -1
  217. package/out/concepts/End__.d.ts +0 -23
  218. package/out/concepts/End__.js +0 -84
  219. package/out/concepts/End__.js.map +0 -1
  220. package/out/concepts/EntityIndex__.d.ts +0 -94
  221. package/out/concepts/EntityIndex__.js +0 -215
  222. package/out/concepts/EntityIndex__.js.map +0 -1
  223. package/out/concepts/EntityProperty__.d.ts +0 -231
  224. package/out/concepts/EntityProperty__.js +0 -567
  225. package/out/concepts/EntityProperty__.js.map +0 -1
  226. package/out/concepts/Entity__.d.ts +0 -297
  227. package/out/concepts/Entity__.js +0 -572
  228. package/out/concepts/Entity__.js.map +0 -1
  229. package/out/concepts/EnumItem__.d.ts +0 -60
  230. package/out/concepts/EnumItem__.js +0 -136
  231. package/out/concepts/EnumItem__.js.map +0 -1
  232. package/out/concepts/Enum__.d.ts +0 -135
  233. package/out/concepts/Enum__.js +0 -293
  234. package/out/concepts/Enum__.js.map +0 -1
  235. package/out/concepts/Event__.d.ts +0 -142
  236. package/out/concepts/Event__.js +0 -242
  237. package/out/concepts/Event__.js.map +0 -1
  238. package/out/concepts/ForEachStatement__.d.ts +0 -191
  239. package/out/concepts/ForEachStatement__.js +0 -441
  240. package/out/concepts/ForEachStatement__.js.map +0 -1
  241. package/out/concepts/Function__.d.ts +0 -406
  242. package/out/concepts/Function__.js +0 -657
  243. package/out/concepts/Function__.js.map +0 -1
  244. package/out/concepts/Identifier__.d.ts +0 -45
  245. package/out/concepts/Identifier__.js +0 -203
  246. package/out/concepts/Identifier__.js.map +0 -1
  247. package/out/concepts/IfStatement__.d.ts +0 -148
  248. package/out/concepts/IfStatement__.js +0 -280
  249. package/out/concepts/IfStatement__.js.map +0 -1
  250. package/out/concepts/InterfaceParam__.d.ts +0 -112
  251. package/out/concepts/InterfaceParam__.js +0 -311
  252. package/out/concepts/InterfaceParam__.js.map +0 -1
  253. package/out/concepts/Interface__.d.ts +0 -268
  254. package/out/concepts/Interface__.js +0 -598
  255. package/out/concepts/Interface__.js.map +0 -1
  256. package/out/concepts/JSBlock__.d.ts +0 -31
  257. package/out/concepts/JSBlock__.js +0 -90
  258. package/out/concepts/JSBlock__.js.map +0 -1
  259. package/out/concepts/LogicItem__.d.ts +0 -117
  260. package/out/concepts/LogicItem__.js +0 -233
  261. package/out/concepts/LogicItem__.js.map +0 -1
  262. package/out/concepts/Logic__.d.ts +0 -610
  263. package/out/concepts/Logic__.js +0 -1203
  264. package/out/concepts/Logic__.js.map +0 -1
  265. package/out/concepts/MemberExpression__.d.ts +0 -65
  266. package/out/concepts/MemberExpression__.js +0 -238
  267. package/out/concepts/MemberExpression__.js.map +0 -1
  268. package/out/concepts/Module__.d.ts +0 -675
  269. package/out/concepts/Module__.js +0 -914
  270. package/out/concepts/Module__.js.map +0 -1
  271. package/out/concepts/Namespace__.d.ts +0 -986
  272. package/out/concepts/Namespace__.js +0 -1301
  273. package/out/concepts/Namespace__.js.map +0 -1
  274. package/out/concepts/NullLiteral__.d.ts +0 -23
  275. package/out/concepts/NullLiteral__.js +0 -73
  276. package/out/concepts/NullLiteral__.js.map +0 -1
  277. package/out/concepts/NumericLiteral__.d.ts +0 -53
  278. package/out/concepts/NumericLiteral__.js +0 -172
  279. package/out/concepts/NumericLiteral__.js.map +0 -1
  280. package/out/concepts/Param__.d.ts +0 -147
  281. package/out/concepts/Param__.js +0 -366
  282. package/out/concepts/Param__.js.map +0 -1
  283. package/out/concepts/Point__.d.ts +0 -30
  284. package/out/concepts/Point__.js +0 -75
  285. package/out/concepts/Point__.js.map +0 -1
  286. package/out/concepts/ProcessComponent__.d.ts +0 -218
  287. package/out/concepts/ProcessComponent__.js +0 -333
  288. package/out/concepts/ProcessComponent__.js.map +0 -1
  289. package/out/concepts/ProcessElement__.d.ts +0 -554
  290. package/out/concepts/ProcessElement__.js +0 -998
  291. package/out/concepts/ProcessElement__.js.map +0 -1
  292. package/out/concepts/ProcessOutcome__.d.ts +0 -30
  293. package/out/concepts/ProcessOutcome__.js +0 -87
  294. package/out/concepts/ProcessOutcome__.js.map +0 -1
  295. package/out/concepts/Process__.d.ts +0 -451
  296. package/out/concepts/Process__.js +0 -773
  297. package/out/concepts/Process__.js.map +0 -1
  298. package/out/concepts/QueryAggregateExpression__.d.ts +0 -50
  299. package/out/concepts/QueryAggregateExpression__.js +0 -144
  300. package/out/concepts/QueryAggregateExpression__.js.map +0 -1
  301. package/out/concepts/QueryFieldExpression__.d.ts +0 -48
  302. package/out/concepts/QueryFieldExpression__.js +0 -132
  303. package/out/concepts/QueryFieldExpression__.js.map +0 -1
  304. package/out/concepts/QueryFromExpression__.d.ts +0 -95
  305. package/out/concepts/QueryFromExpression__.js +0 -192
  306. package/out/concepts/QueryFromExpression__.js.map +0 -1
  307. package/out/concepts/QueryGroupByExpression__.d.ts +0 -45
  308. package/out/concepts/QueryGroupByExpression__.js +0 -139
  309. package/out/concepts/QueryGroupByExpression__.js.map +0 -1
  310. package/out/concepts/QueryJoinExpression__.d.ts +0 -182
  311. package/out/concepts/QueryJoinExpression__.js +0 -312
  312. package/out/concepts/QueryJoinExpression__.js.map +0 -1
  313. package/out/concepts/QueryLimitExpression__.d.ts +0 -56
  314. package/out/concepts/QueryLimitExpression__.js +0 -156
  315. package/out/concepts/QueryLimitExpression__.js.map +0 -1
  316. package/out/concepts/QueryOrderByExpression__.d.ts +0 -67
  317. package/out/concepts/QueryOrderByExpression__.js +0 -169
  318. package/out/concepts/QueryOrderByExpression__.js.map +0 -1
  319. package/out/concepts/QuerySelectExpression__.d.ts +0 -114
  320. package/out/concepts/QuerySelectExpression__.js +0 -203
  321. package/out/concepts/QuerySelectExpression__.js.map +0 -1
  322. package/out/concepts/Rect__.d.ts +0 -38
  323. package/out/concepts/Rect__.js +0 -89
  324. package/out/concepts/Rect__.js.map +0 -1
  325. package/out/concepts/Return__.d.ts +0 -131
  326. package/out/concepts/Return__.js +0 -340
  327. package/out/concepts/Return__.js.map +0 -1
  328. package/out/concepts/Role__.d.ts +0 -61
  329. package/out/concepts/Role__.js +0 -164
  330. package/out/concepts/Role__.js.map +0 -1
  331. package/out/concepts/Slot__.d.ts +0 -57
  332. package/out/concepts/Slot__.js +0 -114
  333. package/out/concepts/Slot__.js.map +0 -1
  334. package/out/concepts/SqlQueryComponent__.d.ts +0 -61
  335. package/out/concepts/SqlQueryComponent__.js +0 -177
  336. package/out/concepts/SqlQueryComponent__.js.map +0 -1
  337. package/out/concepts/Start__.d.ts +0 -23
  338. package/out/concepts/Start__.js +0 -71
  339. package/out/concepts/Start__.js.map +0 -1
  340. package/out/concepts/StringLiteral__.d.ts +0 -35
  341. package/out/concepts/StringLiteral__.js +0 -125
  342. package/out/concepts/StringLiteral__.js.map +0 -1
  343. package/out/concepts/StructureProperty__.d.ts +0 -124
  344. package/out/concepts/StructureProperty__.js +0 -324
  345. package/out/concepts/StructureProperty__.js.map +0 -1
  346. package/out/concepts/Structure__.d.ts +0 -250
  347. package/out/concepts/Structure__.js +0 -440
  348. package/out/concepts/Structure__.js.map +0 -1
  349. package/out/concepts/SwitchCase__.d.ts +0 -92
  350. package/out/concepts/SwitchCase__.js +0 -229
  351. package/out/concepts/SwitchCase__.js.map +0 -1
  352. package/out/concepts/SwitchStatement__.d.ts +0 -82
  353. package/out/concepts/SwitchStatement__.js +0 -175
  354. package/out/concepts/SwitchStatement__.js.map +0 -1
  355. package/out/concepts/Theme__.d.ts +0 -36
  356. package/out/concepts/Theme__.js +0 -86
  357. package/out/concepts/Theme__.js.map +0 -1
  358. package/out/concepts/Transactional__.d.ts +0 -76
  359. package/out/concepts/Transactional__.js +0 -151
  360. package/out/concepts/Transactional__.js.map +0 -1
  361. package/out/concepts/TypeAnnotation__.d.ts +0 -133
  362. package/out/concepts/TypeAnnotation__.js +0 -412
  363. package/out/concepts/TypeAnnotation__.js.map +0 -1
  364. package/out/concepts/TypeParam__.d.ts +0 -20
  365. package/out/concepts/TypeParam__.js +0 -57
  366. package/out/concepts/TypeParam__.js.map +0 -1
  367. package/out/concepts/UnaryExpression__.d.ts +0 -46
  368. package/out/concepts/UnaryExpression__.js +0 -166
  369. package/out/concepts/UnaryExpression__.js.map +0 -1
  370. package/out/concepts/Unparsed__.d.ts +0 -29
  371. package/out/concepts/Unparsed__.js +0 -88
  372. package/out/concepts/Unparsed__.js.map +0 -1
  373. package/out/concepts/UseComponent__.d.ts +0 -30
  374. package/out/concepts/UseComponent__.js +0 -75
  375. package/out/concepts/UseComponent__.js.map +0 -1
  376. package/out/concepts/ValidationRule__.d.ts +0 -94
  377. package/out/concepts/ValidationRule__.js +0 -254
  378. package/out/concepts/ValidationRule__.js.map +0 -1
  379. package/out/concepts/Variable__.d.ts +0 -130
  380. package/out/concepts/Variable__.js +0 -338
  381. package/out/concepts/Variable__.js.map +0 -1
  382. package/out/concepts/ViewComponent__.d.ts +0 -472
  383. package/out/concepts/ViewComponent__.js +0 -644
  384. package/out/concepts/ViewComponent__.js.map +0 -1
  385. package/out/concepts/ViewElement__.d.ts +0 -490
  386. package/out/concepts/ViewElement__.js +0 -1414
  387. package/out/concepts/ViewElement__.js.map +0 -1
  388. package/out/concepts/View__.d.ts +0 -683
  389. package/out/concepts/View__.js +0 -1333
  390. package/out/concepts/View__.js.map +0 -1
  391. package/out/concepts/WhileStatement__.d.ts +0 -95
  392. package/out/concepts/WhileStatement__.js +0 -208
  393. package/out/concepts/WhileStatement__.js.map +0 -1
  394. package/out/concepts/basics/stdlib/index.d.ts +0 -4
  395. package/out/concepts/basics/stdlib/index.js +0 -26
  396. package/out/concepts/basics/stdlib/index.js.map +0 -1
  397. package/out/concepts/basics/stdlib/nasl.auth.d.ts +0 -3
  398. package/out/concepts/basics/stdlib/nasl.auth.js +0 -50
  399. package/out/concepts/basics/stdlib/nasl.auth.js.map +0 -1
  400. package/out/concepts/basics/stdlib/nasl.browser.d.ts +0 -3
  401. package/out/concepts/basics/stdlib/nasl.browser.js +0 -41
  402. package/out/concepts/basics/stdlib/nasl.browser.js.map +0 -1
  403. package/out/concepts/basics/stdlib/nasl.collection.d.ts +0 -7
  404. package/out/concepts/basics/stdlib/nasl.collection.js +0 -83
  405. package/out/concepts/basics/stdlib/nasl.collection.js.map +0 -1
  406. package/out/concepts/basics/stdlib/nasl.configuration.d.ts +0 -3
  407. package/out/concepts/basics/stdlib/nasl.configuration.js +0 -25
  408. package/out/concepts/basics/stdlib/nasl.configuration.js.map +0 -1
  409. package/out/concepts/basics/stdlib/nasl.core.d.ts +0 -3
  410. package/out/concepts/basics/stdlib/nasl.core.js +0 -15
  411. package/out/concepts/basics/stdlib/nasl.core.js.map +0 -1
  412. package/out/concepts/basics/stdlib/nasl.interface.d.ts +0 -7
  413. package/out/concepts/basics/stdlib/nasl.interface.js +0 -43
  414. package/out/concepts/basics/stdlib/nasl.interface.js.map +0 -1
  415. package/out/concepts/basics/stdlib/nasl.process.d.ts +0 -7
  416. package/out/concepts/basics/stdlib/nasl.process.js +0 -453
  417. package/out/concepts/basics/stdlib/nasl.process.js.map +0 -1
  418. package/out/concepts/basics/stdlib/nasl.ui.d.ts +0 -7
  419. package/out/concepts/basics/stdlib/nasl.ui.js +0 -824
  420. package/out/concepts/basics/stdlib/nasl.ui.js.map +0 -1
  421. package/out/concepts/basics/stdlib/nasl.util.d.ts +0 -3
  422. package/out/concepts/basics/stdlib/nasl.util.js +0 -1030
  423. package/out/concepts/basics/stdlib/nasl.util.js.map +0 -1
  424. package/out/concepts/basics/stdlib/nasl.validation.d.ts +0 -3
  425. package/out/concepts/basics/stdlib/nasl.validation.js +0 -561
  426. package/out/concepts/basics/stdlib/nasl.validation.js.map +0 -1
  427. package/out/concepts/basics/stdlib/reference2TypeAnnotationList.d.ts +0 -5
  428. package/out/concepts/basics/stdlib/reference2TypeAnnotationList.js +0 -26
  429. package/out/concepts/basics/stdlib/reference2TypeAnnotationList.js.map +0 -1
  430. package/out/concepts/basics/types/coreTypeList.d.ts +0 -2
  431. package/out/concepts/basics/types/coreTypeList.js +0 -18
  432. package/out/concepts/basics/types/coreTypeList.js.map +0 -1
  433. package/out/concepts/basics/types/index.d.ts +0 -13
  434. package/out/concepts/basics/types/index.js +0 -27
  435. package/out/concepts/basics/types/index.js.map +0 -1
  436. package/out/concepts/index.d.ts +0 -5
  437. package/out/concepts/index.js +0 -24
  438. package/out/concepts/index.js.map +0 -1
  439. package/out/concepts/index__.d.ts +0 -83
  440. package/out/concepts/index__.js +0 -100
  441. package/out/concepts/index__.js.map +0 -1
  442. package/out/config.d.ts +0 -42
  443. package/out/config.js +0 -71
  444. package/out/config.js.map +0 -1
  445. package/out/decorators/index.d.ts +0 -54
  446. package/out/decorators/index.js +0 -149
  447. package/out/decorators/index.js.map +0 -1
  448. package/out/enums/KEYWORDS.d.ts +0 -3
  449. package/out/enums/KEYWORDS.js +0 -1199
  450. package/out/enums/KEYWORDS.js.map +0 -1
  451. package/out/enums/LEVEL_NAME_MAP.d.ts +0 -26
  452. package/out/enums/LEVEL_NAME_MAP.js +0 -30
  453. package/out/enums/LEVEL_NAME_MAP.js.map +0 -1
  454. package/out/eventBus.d.ts +0 -3
  455. package/out/eventBus.js +0 -7
  456. package/out/eventBus.js.map +0 -1
  457. package/out/generator/compileComponent.d.ts +0 -11
  458. package/out/generator/compileComponent.js +0 -12
  459. package/out/generator/compileComponent.js.map +0 -1
  460. package/out/generator/genBundleFiles.d.ts +0 -44
  461. package/out/generator/genBundleFiles.js +0 -387
  462. package/out/generator/genBundleFiles.js.map +0 -1
  463. package/out/generator/genHash.d.ts +0 -7
  464. package/out/generator/genHash.js +0 -39
  465. package/out/generator/genHash.js.map +0 -1
  466. package/out/generator/genMetaData.d.ts +0 -36
  467. package/out/generator/genMetaData.js +0 -121
  468. package/out/generator/genMetaData.js.map +0 -1
  469. package/out/generator/index.d.ts +0 -5
  470. package/out/generator/index.js +0 -22
  471. package/out/generator/index.js.map +0 -1
  472. package/out/generator/styleReplacer.d.ts +0 -3
  473. package/out/generator/styleReplacer.js +0 -71
  474. package/out/generator/styleReplacer.js.map +0 -1
  475. package/out/index.d.ts +0 -11
  476. package/out/index.js +0 -53
  477. package/out/index.js.map +0 -1
  478. package/out/manager/diagnostic.d.ts +0 -38
  479. package/out/manager/diagnostic.js +0 -84
  480. package/out/manager/diagnostic.js.map +0 -1
  481. package/out/manager/history.d.ts +0 -0
  482. package/out/manager/history.js +0 -1
  483. package/out/manager/history.js.map +0 -1
  484. package/out/manager/problem.d.ts +0 -0
  485. package/out/manager/problem.js +0 -1
  486. package/out/manager/problem.js.map +0 -1
  487. package/out/server/createUiTs.d.ts +0 -8
  488. package/out/server/createUiTs.js +0 -204
  489. package/out/server/createUiTs.js.map +0 -1
  490. package/out/server/entity2LogicNamespace.d.ts +0 -10
  491. package/out/server/entity2LogicNamespace.js +0 -217
  492. package/out/server/entity2LogicNamespace.js.map +0 -1
  493. package/out/server/extendBaseNode.d.ts +0 -1
  494. package/out/server/extendBaseNode.js +0 -323
  495. package/out/server/extendBaseNode.js.map +0 -1
  496. package/out/server/getExtensionModules.d.ts +0 -3
  497. package/out/server/getExtensionModules.js +0 -20
  498. package/out/server/getExtensionModules.js.map +0 -1
  499. package/out/server/getFunctions.d.ts +0 -3
  500. package/out/server/getFunctions.js +0 -20
  501. package/out/server/getFunctions.js.map +0 -1
  502. package/out/server/getInterfaces.d.ts +0 -2
  503. package/out/server/getInterfaces.js +0 -48
  504. package/out/server/getInterfaces.js.map +0 -1
  505. package/out/server/getLogics.d.ts +0 -3
  506. package/out/server/getLogics.js +0 -210
  507. package/out/server/getLogics.js.map +0 -1
  508. package/out/server/getMemberIdentifier.d.ts +0 -22
  509. package/out/server/getMemberIdentifier.js +0 -459
  510. package/out/server/getMemberIdentifier.js.map +0 -1
  511. package/out/server/getProcessComponents.d.ts +0 -2
  512. package/out/server/getProcessComponents.js +0 -13
  513. package/out/server/getProcessComponents.js.map +0 -1
  514. package/out/server/getProcesses.d.ts +0 -33
  515. package/out/server/getProcesses.js +0 -565
  516. package/out/server/getProcesses.js.map +0 -1
  517. package/out/server/getScope.d.ts +0 -13
  518. package/out/server/getScope.js +0 -61
  519. package/out/server/getScope.js.map +0 -1
  520. package/out/server/getValidates.d.ts +0 -3
  521. package/out/server/getValidates.js +0 -14
  522. package/out/server/getValidates.js.map +0 -1
  523. package/out/server/index.d.ts +0 -3
  524. package/out/server/index.js +0 -33
  525. package/out/server/index.js.map +0 -1
  526. package/out/server/naslServer.d.ts +0 -136
  527. package/out/server/naslServer.js +0 -1733
  528. package/out/server/naslServer.js.map +0 -1
  529. package/out/server/process2LogicNamespace.d.ts +0 -26
  530. package/out/server/process2LogicNamespace.js +0 -97
  531. package/out/server/process2LogicNamespace.js.map +0 -1
  532. package/out/server/translator.d.ts +0 -24
  533. package/out/server/translator.js +0 -460
  534. package/out/server/translator.js.map +0 -1
  535. package/out/service/creator/add.configs.d.ts +0 -1
  536. package/out/service/creator/add.configs.js +0 -68
  537. package/out/service/creator/add.configs.js.map +0 -1
  538. package/out/service/creator/errHandles.d.ts +0 -18
  539. package/out/service/creator/errHandles.js +0 -65
  540. package/out/service/creator/errHandles.js.map +0 -1
  541. package/out/service/creator/index.d.ts +0 -1
  542. package/out/service/creator/index.js +0 -72
  543. package/out/service/creator/index.js.map +0 -1
  544. package/out/service/storage/api.d.ts +0 -18
  545. package/out/service/storage/api.js +0 -17
  546. package/out/service/storage/api.js.map +0 -1
  547. package/out/service/storage/index.d.ts +0 -2
  548. package/out/service/storage/index.js +0 -10
  549. package/out/service/storage/index.js.map +0 -1
  550. package/out/service/storage/init.d.ts +0 -13
  551. package/out/service/storage/init.js +0 -469
  552. package/out/service/storage/init.js.map +0 -1
  553. package/out/service/storage/jsoner.d.ts +0 -29
  554. package/out/service/storage/jsoner.js +0 -130
  555. package/out/service/storage/jsoner.js.map +0 -1
  556. package/out/service/storage/map.d.ts +0 -4
  557. package/out/service/storage/map.js +0 -54
  558. package/out/service/storage/map.js.map +0 -1
  559. package/out/service/storage/service.d.ts +0 -2
  560. package/out/service/storage/service.js +0 -10
  561. package/out/service/storage/service.js.map +0 -1
  562. package/out/service/storage/storagePoint.d.ts +0 -17
  563. package/out/service/storage/storagePoint.js +0 -76
  564. package/out/service/storage/storagePoint.js.map +0 -1
  565. package/out/templator/genCallComponentLogic.d.ts +0 -17
  566. package/out/templator/genCallComponentLogic.js +0 -30
  567. package/out/templator/genCallComponentLogic.js.map +0 -1
  568. package/out/templator/genCreateBlock.d.ts +0 -10
  569. package/out/templator/genCreateBlock.js +0 -327
  570. package/out/templator/genCreateBlock.js.map +0 -1
  571. package/out/templator/genCurdEditMultipleKeyBlock.d.ts +0 -2
  572. package/out/templator/genCurdEditMultipleKeyBlock.js +0 -475
  573. package/out/templator/genCurdEditMultipleKeyBlock.js.map +0 -1
  574. package/out/templator/genCurdMultipleKeyBlock.d.ts +0 -3
  575. package/out/templator/genCurdMultipleKeyBlock.js +0 -672
  576. package/out/templator/genCurdMultipleKeyBlock.js.map +0 -1
  577. package/out/templator/genEditTableBlock.d.ts +0 -51
  578. package/out/templator/genEditTableBlock.js +0 -303
  579. package/out/templator/genEditTableBlock.js.map +0 -1
  580. package/out/templator/genEnumSelectBlock.d.ts +0 -10
  581. package/out/templator/genEnumSelectBlock.js +0 -23
  582. package/out/templator/genEnumSelectBlock.js.map +0 -1
  583. package/out/templator/genGetBlock.d.ts +0 -6
  584. package/out/templator/genGetBlock.js +0 -135
  585. package/out/templator/genGetBlock.js.map +0 -1
  586. package/out/templator/genGridViewBlock.d.ts +0 -55
  587. package/out/templator/genGridViewBlock.js +0 -368
  588. package/out/templator/genGridViewBlock.js.map +0 -1
  589. package/out/templator/genListViewBlock.d.ts +0 -19
  590. package/out/templator/genListViewBlock.js +0 -141
  591. package/out/templator/genListViewBlock.js.map +0 -1
  592. package/out/templator/genQueryComponent.d.ts +0 -34
  593. package/out/templator/genQueryComponent.js +0 -322
  594. package/out/templator/genQueryComponent.js.map +0 -1
  595. package/out/templator/genSelectBlock.d.ts +0 -34
  596. package/out/templator/genSelectBlock.js +0 -143
  597. package/out/templator/genSelectBlock.js.map +0 -1
  598. package/out/templator/genTableBlock.d.ts +0 -53
  599. package/out/templator/genTableBlock.js +0 -305
  600. package/out/templator/genTableBlock.js.map +0 -1
  601. package/out/templator/genUpdateBlock.d.ts +0 -6
  602. package/out/templator/genUpdateBlock.js +0 -368
  603. package/out/templator/genUpdateBlock.js.map +0 -1
  604. package/out/templator/index.d.ts +0 -16
  605. package/out/templator/index.js +0 -34
  606. package/out/templator/index.js.map +0 -1
  607. package/out/templator/utils.d.ts +0 -645
  608. package/out/templator/utils.js +0 -426
  609. package/out/templator/utils.js.map +0 -1
  610. package/out/test/fixtures/env.d.ts +0 -5
  611. package/out/test/fixtures/env.js +0 -20
  612. package/out/test/fixtures/env.js.map +0 -1
  613. package/out/test/integration/connect-create-file.d.ts +0 -1
  614. package/out/test/integration/connect-create-file.js +0 -39
  615. package/out/test/integration/connect-create-file.js.map +0 -1
  616. package/out/test/integration/connect-file.d.ts +0 -1
  617. package/out/test/integration/connect-file.js +0 -49
  618. package/out/test/integration/connect-file.js.map +0 -1
  619. package/out/test/units/baseTypes/Assignment.spec.d.ts +0 -1
  620. package/out/test/units/baseTypes/Assignment.spec.js +0 -43
  621. package/out/test/units/baseTypes/Assignment.spec.js.map +0 -1
  622. package/out/test/units/baseTypes/CallLogic.spec.d.ts +0 -1
  623. package/out/test/units/baseTypes/CallLogic.spec.js +0 -44
  624. package/out/test/units/baseTypes/CallLogic.spec.js.map +0 -1
  625. package/out/test/units/baseTypes/StringLiteral.spec.d.ts +0 -1
  626. package/out/test/units/baseTypes/StringLiteral.spec.js +0 -75
  627. package/out/test/units/baseTypes/StringLiteral.spec.js.map +0 -1
  628. package/out/test/units/baseTypes/new.spec.d.ts +0 -1
  629. package/out/test/units/baseTypes/new.spec.js +0 -37
  630. package/out/test/units/baseTypes/new.spec.js.map +0 -1
  631. package/out/test/units/common/Vertex.spec.d.ts +0 -1
  632. package/out/test/units/common/Vertex.spec.js +0 -22
  633. package/out/test/units/common/Vertex.spec.js.map +0 -1
  634. package/out/test/units/data/Entity.spec.d.ts +0 -1
  635. package/out/test/units/data/Entity.spec.js +0 -12
  636. package/out/test/units/data/Entity.spec.js.map +0 -1
  637. package/out/test/units/login.spec.d.ts +0 -1
  638. package/out/test/units/login.spec.js +0 -12
  639. package/out/test/units/login.spec.js.map +0 -1
  640. package/out/test/units/page/Block.spec.d.ts +0 -0
  641. package/out/test/units/page/Block.spec.js +0 -13
  642. package/out/test/units/page/Block.spec.js.map +0 -1
  643. package/out/test/units/page/Element.spec.d.ts +0 -1
  644. package/out/test/units/page/Element.spec.js +0 -44
  645. package/out/test/units/page/Element.spec.js.map +0 -1
  646. package/out/test/units/temp/temp.spec.d.ts +0 -1
  647. package/out/test/units/temp/temp.spec.js +0 -68
  648. package/out/test/units/temp/temp.spec.js.map +0 -1
  649. package/out/translator/index.d.ts +0 -47
  650. package/out/translator/index.js +0 -108
  651. package/out/translator/index.js.map +0 -1
  652. package/out/translator/lsp.d.ts +0 -45
  653. package/out/translator/lsp.js +0 -6
  654. package/out/translator/lsp.js.map +0 -1
  655. package/out/translator/tsp.d.ts +0 -12
  656. package/out/translator/tsp.js +0 -3
  657. package/out/translator/tsp.js.map +0 -1
  658. package/out/utils/index.d.ts +0 -37
  659. package/out/utils/index.js +0 -125
  660. package/out/utils/index.js.map +0 -1
  661. package/out/utils/logger.d.ts +0 -3
  662. package/out/utils/logger.js +0 -11
  663. package/out/utils/logger.js.map +0 -1
  664. package/out/utils/string.d.ts +0 -38
  665. package/out/utils/string.js +0 -95
  666. package/out/utils/string.js.map +0 -1
  667. package/out/utils/traverse.d.ts +0 -36
  668. package/out/utils/traverse.js +0 -132
  669. package/out/utils/traverse.js.map +0 -1
@@ -1,5 +1,6 @@
1
1
  import { Logic, TypeAnnotation, Param, LogicItem, NumericLiteral, BooleanLiteral, StringLiteral, Identifier, MemberExpression } from '..';
2
-
2
+ // @ts-ignore
3
+ import trigger from './events.yaml';
3
4
  const naslStdlibMap: any = {
4
5
  'nasl.core.ts': require('!!raw-loader!../../../file-storage/data/stdlib/nasl.core.ts').default,
5
6
  'nasl.collection.ts': require('!!raw-loader!../../../file-storage/data/stdlib/nasl.collection.ts').default,
@@ -14,6 +15,26 @@ const naslStdlibMap: any = {
14
15
  'nasl.validation.ts': require('!!raw-loader!../../../file-storage/data/stdlib/nasl.validation.ts').default,
15
16
  'nasl.process.ts': require('!!raw-loader!../../../file-storage/data/stdlib/nasl.process.ts').default,
16
17
  };
18
+ export let elementsEventsMap: { [componentTagEventName: string]: any} = {};
19
+
20
+ export function getAllComponentEventMap(allComponent: any) {
21
+ const eventsMap: { [componentTagEventName: string]: any} = {};
22
+ for (const i in allComponent) {
23
+ const item = allComponent[i];
24
+ if (item.events && Array.isArray(item.events)) {
25
+ item.events.forEach((eventItem: any) => {
26
+ const name = `${item.name}-${eventItem.name}`;
27
+ eventsMap[name] = eventItem;
28
+ });
29
+ }
30
+ }
31
+ trigger.forEach((item: any) => {
32
+ eventsMap[item.name] = item;
33
+ });
34
+
35
+ elementsEventsMap = eventsMap;
36
+ return eventsMap;
37
+ }
17
38
 
18
39
  export default function formatUiTs(allComponent: any) {
19
40
  const indent = (tabSize: number) => ' '.repeat(tabSize * 2);
@@ -81,6 +102,7 @@ export default function formatUiTs(allComponent: any) {
81
102
  return logic;
82
103
  };
83
104
  const elementsLogic: { [componentName: string]: Array<Logic> } = {};
105
+
84
106
  let value = `namespace nasl.ui {
85
107
  export class VueComponent {
86
108
  }
@@ -106,7 +128,7 @@ export default function formatUiTs(allComponent: any) {
106
128
  options?: {
107
129
  [propname: string]: any,
108
130
  bindAttr?: () => Array<any>,
109
- slotDefault?: ()=> Array<any>,
131
+ slotDefault?: (scope: nasl.ui.ScopeOf<T>) => Array<any>,
110
132
  }){super()}
111
133
  }
112
134
  export type GetItemTypeFromDataSource<T> = T extends nasl.collection.PageOf<infer U> | nasl.collection.List<infer U> | ((...args: any) => nasl.collection.PageOf<infer U> | nasl.collection.List<infer U>) ? U : never;
@@ -190,9 +212,11 @@ export default function formatUiTs(allComponent: any) {
190
212
  value += '}\n';
191
213
  // console.log(value);
192
214
  // console.log(elementsLogic);
215
+ // const elementsEventsMap = getAllComponentEventMap(allComponent);
193
216
  return {
194
217
  code: value,
195
218
  elementsLogic,
196
219
  naslStdlibMap,
220
+ elementsEventsMap,
197
221
  };
198
222
  }
@@ -0,0 +1,89 @@
1
+ - name: click
2
+ title: 点击
3
+ description: 在元素上按下并释放任意鼠标按钮时触发。
4
+ params:
5
+ - name: $event
6
+ type: MouseEvent
7
+ description: 鼠标事件对象
8
+ schema:
9
+ $ref: "#/systemTypes/MouseEvent"
10
+ - name: dblclick
11
+ title: 双击
12
+ description: 在元素上双击鼠标按钮时触发。
13
+ params:
14
+ - name: $event
15
+ type: MouseEvent
16
+ description: 鼠标事件对象
17
+ schema:
18
+ $ref: "#/systemTypes/MouseEvent"
19
+ - name: contextmenu
20
+ title: 右键点击
21
+ description: 在右键菜单显示前触发。
22
+ params:
23
+ - name: $event
24
+ type: MouseEvent
25
+ description: 鼠标事件对象
26
+ schema:
27
+ $ref: "#/systemTypes/MouseEvent"
28
+ - name: mousedown
29
+ title: 鼠标按下
30
+ description: 在元素上按下任意鼠标按钮时触发。
31
+ params:
32
+ - name: $event
33
+ type: MouseEvent
34
+ description: 鼠标事件对象
35
+ schema:
36
+ $ref: "#/systemTypes/MouseEvent"
37
+ - name: mouseup
38
+ title: 鼠标释放
39
+ description: 在元素上释放任意鼠标按钮时触发。
40
+ params:
41
+ - name: $event
42
+ type: MouseEvent
43
+ description: 鼠标事件对象
44
+ schema:
45
+ $ref: "#/systemTypes/MouseEvent"
46
+ - name: mouseenter
47
+ title: 鼠标移入
48
+ description: 鼠标移入元素时触发。
49
+ params:
50
+ - name: $event
51
+ type: MouseEvent
52
+ description: 鼠标事件对象
53
+ schema:
54
+ $ref: "#/systemTypes/MouseEvent"
55
+ - name: mouseleave
56
+ title: 鼠标移出
57
+ description: 鼠标移出元素时触发。
58
+ params:
59
+ - name: $event
60
+ type: MouseEvent
61
+ description: 鼠标事件对象
62
+ schema:
63
+ $ref: "#/systemTypes/MouseEvent"
64
+ - name: focus
65
+ title: 获得焦点
66
+ description: 获得焦点时触发。
67
+ params:
68
+ - name: $event
69
+ type: FocusEvent
70
+ description: 焦点事件对象
71
+ schema:
72
+ $ref: "#/systemTypes/FocusEvent"
73
+ - name: blur
74
+ title: 失去焦点
75
+ description: 失去焦点时触发。
76
+ params:
77
+ - name: $event
78
+ type: FocusEvent
79
+ description: 焦点事件对象
80
+ schema:
81
+ $ref: "#/systemTypes/FocusEvent"
82
+ - name: created
83
+ title: 进入时
84
+ - name: mounted
85
+ title: 进入后
86
+ - name: updated
87
+ title: 更新时
88
+ - name: destroyed
89
+ title: 离开时
@@ -1,5 +1,6 @@
1
- import { BaseNode, CompletionProperty, App, Identifier, MemberExpression, Enum, NullLiteral, BooleanLiteral, Param, BindAttribute, LogicItem, TypeAnnotation } from '..';
1
+ import { BaseNode, CompletionProperty, App, Identifier, MemberExpression, Enum, NullLiteral, BooleanLiteral, Param, BindAttribute, LogicItem, TypeAnnotation, StructureProperty, Entity, Structure, EntityProperty } from '..';
2
2
  import naslServer from './naslServer';
3
+ import { getNaslNodeByNodeCallee } from '../automate/engine/utils';
3
4
 
4
5
  interface variableItem {
5
6
  text: string;
@@ -10,8 +11,10 @@ interface variableItem {
10
11
  expression: MemberExpression | Identifier;
11
12
  }
12
13
 
13
- function getCompletionDetailType(displayParts: Array<{ text: string; kind: string }>): TypeAnnotation {
14
- // 0: {text: 'let', kind: 'keyword'}
14
+ /**
15
+ * 把ts返回的详细信息截取成一个类型字符串
16
+ * @param displayParts ts返回的key value
17
+ * // 0: {text: 'let', kind: 'keyword'}
15
18
  // 1: {text: ' ', kind: 'space'}
16
19
  // 2: {text: 'bindRoles', kind: 'text'}
17
20
  // 3: {text: ':', kind: 'punctuation'}
@@ -19,14 +22,23 @@ function getCompletionDetailType(displayParts: Array<{ text: string; kind: strin
19
22
  // 5: {text: 'roles', kind: 'moduleName'}
20
23
  // 6: {text: '.', kind: 'punctuation'}
21
24
  // 7: {text: 'DEV_AdminRole', kind: 'enumName'}
22
- // 8: {text: '[', kind: 'punctuation'}
23
- // 9: {text: ']', kind: 'punctuation'}
25
+ * @returns type roles.DEV_AdminRole
26
+ */
27
+ function formatTs2TypeString(displayParts: Array<{ text: string; kind: string }>) {
24
28
  let str = '';
25
29
  displayParts.forEach((item) => {
26
30
  str += item.text;
27
31
  });
28
32
  const strTypes = str.split(': ');
29
33
  const type = strTypes[1];
34
+ return type;
35
+ }
36
+ /**
37
+ * 把当前类型转成typeAnnotation
38
+ * @param type app
39
+ * @returns typeAnnotation
40
+ */
41
+ export function getCompletionDetailType(type: string): TypeAnnotation {
30
42
  let typeAnnotation;
31
43
  try {
32
44
  if (type.includes('<') && type.includes('>')) {
@@ -100,7 +112,24 @@ function createType2Annotation(type: string): TypeAnnotation {
100
112
  }
101
113
  return typeAnnotation;
102
114
  }
115
+ export function getPlatformType(tsType: string): string {
116
+ const namespacePrefix = ['app', 'extensions', 'apis', 'components', 'nasl'];
117
+ if (tsType === 'String') {
118
+ return 'nasl.core.String';
119
+ } else if (tsType === 'Boolean') {
120
+ return 'nasl.core.Boolean';
121
+ }
103
122
 
123
+ const strTypes = tsType.split('.');
124
+ if (strTypes.length) {
125
+ const first = strTypes[0];
126
+ // 如果不是这几个前缀就加一个namespace
127
+ if (!namespacePrefix.includes(first)) {
128
+ return 'app.' + tsType;
129
+ }
130
+ }
131
+ return tsType;
132
+ }
104
133
  /**
105
134
  * 把要返回去的数据做一下排序
106
135
  * @param result 要返回数据
@@ -139,22 +168,97 @@ function sortFirstVariableData(result: CompletionProperty[], node: BaseNode) {
139
168
  newResult.push(...result);
140
169
  return newResult;
141
170
  }
171
+ export function isNoChildType(type: String) {
172
+ return type?.startsWith('nasl.core') || type?.startsWith('app.enums');
173
+ }
174
+ function findNode(typeKey: string, node: BaseNode) {
175
+ let newType: Structure | Entity;
176
+ if (typeKey.startsWith('nasl.') && typeKey.includes('<')) {
177
+ const findGenericsIndex = typeKey.indexOf('<');
178
+ typeKey = typeKey.substring(0, findGenericsIndex);
179
+ const typeIndex = typeKey.lastIndexOf('.');
180
+ newType = getNaslNodeByNodeCallee(typeKey.substring(0, typeIndex), typeKey.substring(typeIndex + 1, typeKey.length));
181
+ } else if (typeKey.startsWith('nasl.')) {
182
+ const typeIndex = typeKey.lastIndexOf('.');
183
+ newType = getNaslNodeByNodeCallee(typeKey.substring(0, typeIndex), typeKey.substring(typeIndex + 1, typeKey.length));
184
+ } else {
185
+ newType = (node as Identifier)?.app?.findNodeByCompleteName(typeKey);
186
+ }
187
+ return newType;
188
+ }
189
+
190
+ /**
191
+ * 获取下一级的节点进行递归
192
+ * @param typeKey 当前节点的类型,主要为了取出内部的 T中的实际类型
193
+ * @param item 当前节点的内容
194
+ * @param parent 父级节点的内容
195
+ * @param node 获取变量框的位置
196
+ */
197
+ export function nextFindTypeChild(typeKey: string, item: any, parent: any, node: BaseNode) {
198
+ // 有一个当前树分支的全部节点的node map,用作防止数据无限递归,只保留3层
199
+ const nodeMap = parent ? parent.nodeMap : new Map();
200
+ item.nodeMap = nodeMap;
201
+ const newType = findNode(typeKey, node);
202
+ if (newType?.properties && newType.properties.length) {
203
+ // 处理泛型的内容要取到值
204
+ const StructureJson = newType.toJSON();
205
+ const newStructure = new Structure(StructureJson);
206
+ newStructure.properties.forEach((item: StructureProperty | EntityProperty) => {
207
+ const itemType = item?.typeAnnotation?.typeKey;
208
+ if (itemType === 'T' && /\<([^()]+)\>/g.exec(typeKey)) {
209
+ const newTypes = /\<([^()]+)\>/g.exec(typeKey);
210
+ // 找到当前原来的类型
211
+ const contentType = getPlatformType(newTypes[1]);
212
+ const typeNamespace = contentType.substring(0, contentType.lastIndexOf('.'));
213
+ const typeName = contentType.substring(contentType.lastIndexOf('.') + 1, contentType.length);
214
+ item.typeAnnotation = new TypeAnnotation({
215
+ typeKind: 'reference',
216
+ typeNamespace,
217
+ typeName,
218
+ });
219
+ }
220
+ });
221
+ const index = nodeMap.get(newType) || 0;
222
+ if (index) {
223
+ nodeMap.set(newType, index + 1);
224
+ } else {
225
+ nodeMap.set(newType, 1);
226
+ }
227
+ // 最多保留3层
228
+ if (index < 3) {
229
+ item.children = formatVariableData(newStructure.properties, node, item);
230
+ }
231
+ }
232
+ }
142
233
  // 格式化变量数据
143
234
  export function formatVariableData(data: unknown | variableItem[], node: BaseNode, parent?: any) {
144
235
  if (Array.isArray(data)) {
145
236
  let result = data.map((item) => {
146
- // value需要拼接生成
147
- item.value = parent ? `${parent.value}.${item.text}` : item.text;
148
- item.name = item.text;
237
+ item.children = [];
149
238
  // 当前结构的typeAnnotation
150
- const typeAnnotation = item.completionDetail && getCompletionDetailType(item.completionDetail.displayParts as Array<{ text: string; kind: string }>);
239
+ let typeAnnotation;
240
+ // 当前的类型如 app.entitys.entity1 nasl.core.String
241
+ let typeKey: string;
242
+
243
+ if (item.completionDetail) {
244
+ // 当前节点的完整类型,主要是在有T的内容使用 nasl.list<Enum1> 内部匹配内容给里面子集的T赋值类型
245
+ const currentType: string = formatTs2TypeString(item.completionDetail.displayParts as Array<{ text: string; kind: string }>);
246
+ typeAnnotation = getCompletionDetailType(currentType);
247
+ typeKey = getPlatformType(currentType);
248
+ } else if (item instanceof StructureProperty) {
249
+ typeKey = item?.typeAnnotation?.typeKey;
250
+ }
151
251
  // 如果没有父节点就是Identifier
152
252
  if (!parent) {
253
+ // value需要拼接生成
254
+ item.value = parent ? `${parent.value}.${item.text}` : item.text;
255
+ item.name = item.text;
153
256
  const identifier = new Identifier({ name: item.name });
154
257
  // 携带上当前的类型
155
258
  identifier.typeAnnotation = typeAnnotation;
156
259
  item.expression = identifier;
157
260
  } else {
261
+ item.value = `${parent.value}.${item.name}`;
158
262
  const memberExpression = new MemberExpression({
159
263
  object: parent.expression,
160
264
  property: new Identifier({ name: item.name }),
@@ -163,19 +267,18 @@ export function formatVariableData(data: unknown | variableItem[], node: BaseNod
163
267
  memberExpression.typeAnnotation = typeAnnotation;
164
268
  item.expression = memberExpression;
165
269
  }
166
- if (item.children) {
167
- item.children = formatVariableData(item.children, node, item);
270
+ // 如果有类型而且类型不是没有子集的类型,就把他当前的类型拿到
271
+ if (typeKey && !isNoChildType(typeKey)) {
272
+ nextFindTypeChild(typeKey, item, parent, node);
168
273
  }
274
+ const completionProperty = new CompletionProperty(item);
169
275
  if (!parent) {
170
- const completionProperty = new CompletionProperty(item);
171
276
  // 变量 param return 在这里添加图标
172
277
  completionProperty.icon = getNodeiconFromLogic(completionProperty, node);
173
- return completionProperty;
174
278
  } else {
175
- const completionProperty = new CompletionProperty(item);
176
279
  completionProperty.icon = 'refProperty';
177
- return completionProperty;
178
280
  }
281
+ return completionProperty;
179
282
  });
180
283
 
181
284
  /**
@@ -430,19 +533,9 @@ export function getEnumsIdentifier(node: BaseNode): CompletionProperty[] {
430
533
  // 获取变量
431
534
  export async function getVariableIdentifier(node: BaseNode): Promise<CompletionProperty[]> {
432
535
  let completionData: CompletionProperty[] = [new CompletionProperty({})];
433
- if (node instanceof Identifier || node instanceof MemberExpression) {
434
- const value = (node as Identifier | MemberExpression).getValue();
435
- if (value) {
436
- const completion = (await naslServer.getValueSelectCompletion(node, value)) as variableItem[];
437
- completionData = formatVariableData(completion, node);
438
- } else {
439
- const nextCompletion = await naslServer.getFieldKeySelectCompletion(node, '');
440
- completionData = formatVariableData(nextCompletion, node);
441
- }
442
- } else {
443
- const nextCompletion = await naslServer.getFieldKeySelectCompletion(node, '');
444
- completionData = formatVariableData(nextCompletion, node);
445
- }
536
+ // 只获取第一层内容
537
+ const nextCompletion = await naslServer.getFieldKeySelectCompletion(node, '');
538
+ completionData = formatVariableData(nextCompletion, node);
446
539
  return completionData;
447
540
  }
448
541
 
@@ -1,6 +1,7 @@
1
1
  import Constant from '@nasl/concepts/Constant__';
2
2
  import { CompletionProperty, Process, ProcessElement, Namespace, Logic, TypeAnnotation, Return, Variable, StructureProperty, Param, Identifier, MemberExpression, LogicItem, App, BaseNode, Structure, Entity, EntityProperty } from '..';
3
3
  import { getNodeByNodeCallee } from '../automate/engine/utils';
4
+ import { isNoChildType, nextFindTypeChild } from './getMemberIdentifier';
4
5
  function alphaUpper(name: string) {
5
6
  if (!name) {
6
7
  return '';
@@ -250,26 +251,26 @@ export function genCompletionProperty(prefix: string[] = []):(v: Variable | Para
250
251
  if (t.length) {
251
252
  prevalue = `${t.join('.')}.`;
252
253
  }
253
- const hasChild = ['reference', 'generic'].includes(v.typeAnnotation.typeKind);
254
- const cp = new CompletionProperty({
254
+ const noChildType = isNoChildType(v.typeAnnotation.typeKey);
255
+ const item = {
255
256
  expression: m || p,
256
- noFurther: !hasChild,
257
257
  name: v.name,
258
258
  value: prevalue + v.name,
259
+ };
259
260
 
260
- });
261
- console.log(cp.value);
262
- cp.icon = v.concept;
263
-
264
- if (hasChild) {
265
- cp.children = [new CompletionProperty()];
261
+ if (!noChildType) {
262
+ nextFindTypeChild(v.typeAnnotation.typeKey, item, null, v);
266
263
  }
264
+
265
+ const cp = new CompletionProperty(item);
266
+ console.log(cp.value, v);
267
+ cp.icon = v.concept;
267
268
  return cp;
268
269
  };
269
270
  }
270
271
 
271
- export function getPreviousTask(node: ProcessElement) {
272
- const process = node.process;
272
+ export function getPreviousTask(node: ProcessElement, nodePorcess?: Process) {
273
+ const process = node.process || nodePorcess;
273
274
  const elems = process.elements;
274
275
  const elements: ProcessElement[] = [];
275
276
  const visitedMap = new WeakMap();
@@ -296,18 +297,19 @@ export function getPreviousTask(node: ProcessElement) {
296
297
  }
297
298
 
298
299
  export function getProcessVariableSuggestions(node: Logic, abandonConstant: boolean = false): CompletionProperty {
299
- if (!node.processElement) {
300
- return;
301
- }
302
- const processElem = node.processElement;
300
+ // if (!node.processElement) {
301
+ // return;
302
+ // }
303
+ //流程下的callback没有processElement
304
+ const tempPorcessEle = new ProcessElement({});
305
+ const processElem = node.processElement || tempPorcessEle;
303
306
  const process = node.process;
304
307
 
305
- const elements: ProcessElement[] = getPreviousTask(processElem);
308
+ const elements: ProcessElement[] = getPreviousTask(processElem, process);
306
309
  const prevtasks = elements.map((us) => {
307
310
  const cp = new CompletionProperty({
308
311
  name: us.name,
309
312
  value: us.name,
310
- noFurther: true,
311
313
  children: [
312
314
  ...us.returns.map(genCompletionProperty([process.name, us.name])),
313
315
  ...(abandonConstant ? [] : us.constants.map(genCompletionProperty([process.name, us.name]))),
@@ -321,7 +323,6 @@ export function getProcessVariableSuggestions(node: Logic, abandonConstant: bool
321
323
  const processVariables = new CompletionProperty({
322
324
  name: process.name,
323
325
  value: process.name,
324
- noFurther: true,
325
326
  children: [
326
327
  ...process.params.map(genCompletionProperty([process.name])),
327
328
  ...process.returns.map(genCompletionProperty([process.name])),
@@ -335,7 +336,6 @@ export function getProcessVariableSuggestions(node: Logic, abandonConstant: bool
335
336
  name: processElem.name,
336
337
  value: processElem.name,
337
338
  icon: processElem.type,
338
- noFurther: true,
339
339
  children: processElem.variables.map(genCompletionProperty([process.name, processElem.name])),
340
340
  });
341
341
  scopeVariable.isProcess = true;
@@ -344,27 +344,33 @@ export function getProcessVariableSuggestions(node: Logic, abandonConstant: bool
344
344
  }
345
345
 
346
346
  if (processElem.type === 'UserTask') {
347
+ // 任务完成时可以拿到该任务的输出参数
348
+ let returns: CompletionProperty[] = [];
349
+ if (node.logic && node.logic.upperNode.name === 'OnClose') {
350
+ returns = processElem.returns.map(genCompletionProperty([process.name, processElem.name]));
351
+ }
347
352
  const scopeVariable = new CompletionProperty({
348
353
  name: processElem.name,
349
354
  value: processElem.name,
350
355
  icon: processElem.type,
351
- noFurther: true,
352
- children: processElem.constants.map(genCompletionProperty([process.name, processElem.name])),
356
+ children: [
357
+ ...returns,
358
+ ...processElem.constants.map(genCompletionProperty([process.name, processElem.name])),
359
+ ],
353
360
  });
354
361
  scopeVariable.isProcess = true;
355
362
  scopeVariable.icon = processElem.type;
356
363
  processVariables.children.push(scopeVariable);
357
364
  }
358
- if(processElem.type === 'AutoTask') {
365
+ if (processElem.type === 'AutoTask') {
359
366
  const scopeVariable = new CompletionProperty({
360
367
  name: processElem.name,
361
368
  value: processElem.name,
362
369
  icon: processElem.type,
363
- noFurther: true,
364
370
  children: [
365
371
  ...processElem.variables.map(genCompletionProperty([process.name, processElem.name])),
366
372
  ...processElem.returns.map(genCompletionProperty([process.name, processElem.name])),
367
- ]
373
+ ],
368
374
  });
369
375
  scopeVariable.isProcess = true;
370
376
  scopeVariable.icon = processElem.type;
@@ -457,7 +463,6 @@ export function getProcessVariableSuggestionsAll(node: ProcessElement) {
457
463
  const cp = new CompletionProperty({
458
464
  name: us.name,
459
465
  value: us.name,
460
- noFurther: true,
461
466
  children: [
462
467
  ...us.returns.map(node => deduceTypeAnnotation(app, node, node.typeAnnotation, [process.name, us.name], [])),
463
468
  ...us.constants.map(node => deduceTypeAnnotation(app, node, node.typeAnnotation, [process.name, us.name], [])),
@@ -472,7 +477,6 @@ export function getProcessVariableSuggestionsAll(node: ProcessElement) {
472
477
  const processVariables = new CompletionProperty({
473
478
  name: process.name,
474
479
  value: process.name,
475
- noFurther: true,
476
480
  children: [
477
481
  ...process.params.map(node => deduceTypeAnnotation(app, node, node.typeAnnotation, [process.name], [])),
478
482
  ...process.returns.map(node => deduceTypeAnnotation(app, node, node.typeAnnotation, [process.name], [])),
@@ -487,7 +491,6 @@ export function getProcessVariableSuggestionsAll(node: ProcessElement) {
487
491
  name: processElem.name,
488
492
  value: processElem.name,
489
493
  icon: processElem.type,
490
- noFurther: true,
491
494
  children: processElem.variables.map(node => deduceTypeAnnotation(app, node, node.typeAnnotation, [process.name, processElem.name], [])),
492
495
  });
493
496
  scopeVariable.expanded = true;
@@ -501,7 +504,6 @@ export function getProcessVariableSuggestionsAll(node: ProcessElement) {
501
504
  name: processElem.name,
502
505
  value: processElem.name,
503
506
  icon: processElem.type,
504
- noFurther: true,
505
507
  children: processElem.constants.map(node => deduceTypeAnnotation(app, node, node.typeAnnotation, [process.name, processElem.name], [])),
506
508
  });
507
509
  scopeVariable.expanded = true;
@@ -514,7 +516,6 @@ export function getProcessVariableSuggestionsAll(node: ProcessElement) {
514
516
  name: processElem.name,
515
517
  value: processElem.name,
516
518
  icon: processElem.type,
517
- noFurther: true,
518
519
  children: [
519
520
  ...processElem.variables.map(node => deduceTypeAnnotation(app, node, node.typeAnnotation, [process.name, processElem.name], [])),
520
521
  ...processElem.returns.map(node => deduceTypeAnnotation(app, node, node.typeAnnotation, [process.name, processElem.name], [])),
@@ -10,9 +10,11 @@ import {
10
10
  getGlobalVariableIdentifier,
11
11
  getLiteralsIdentifier,
12
12
  getSelectNextCompletionData,
13
+ getCompletionDetailType,
13
14
  } from './getMemberIdentifier';
14
15
  import naslServer from './naslServer';
15
16
  import './extendBaseNode';
17
+ import { getAllComponentEventMap } from './createUiTs';
16
18
 
17
19
  const server: any = {
18
20
  ...naslServer,
@@ -31,5 +33,7 @@ const server: any = {
31
33
  getEnumsIdentifier,
32
34
  getGlobalVariableIdentifier,
33
35
  getLiteralsIdentifier,
36
+ getAllComponentEventMap,
37
+ getCompletionDetailType,
34
38
  };
35
39
  export default server;
@@ -56,6 +56,7 @@ import { DiagnosticRecord, Diagnostic, default as diagnosticManager } from '../m
56
56
  import formatUiTs from './createUiTs';
57
57
  import { primitiveTypeList } from '../concepts/basics/types/coreTypeList';
58
58
  import { traverse } from '../utils';
59
+ import { getPlatformType } from './getMemberIdentifier';
59
60
 
60
61
  const EmbeddedTSFileLineMap: { [name: string]: number } = {
61
62
  Entity: 3,
@@ -433,7 +434,13 @@ const naslServer = {
433
434
  return [{ title: '基础类型', children: [primitiveTypeList[4]] }];
434
435
  }
435
436
  },
436
- async getDataSchemaType(node: BaseNode) {
437
+ /**
438
+ * 获取表单的dataschema类型
439
+ * @param node 当前表单节点
440
+ * @param allType 是不是需要全部类型 默认不要
441
+ * @returns 全部类型的str 或者 最后一个.后的内容
442
+ */
443
+ async getDataSchemaType(node: BaseNode, allType = false) {
437
444
  if (!(node instanceof ViewElement))
438
445
  return;
439
446
  const { currentSource, fileNode } = naslServer.getCurrentSource(node);
@@ -445,13 +452,27 @@ const naslServer = {
445
452
  if (quickInfo.responseRequired) {
446
453
  const displayString = quickInfo?.response?.displayString || '';
447
454
  const flag = displayString.includes('<') && displayString.includes('>');
455
+ const types = /\<([^()]+)\>/g.exec(displayString);
456
+ let typeStr = types[1];
448
457
  if (flag) {
449
458
  let str = '';
450
- const types = naslServer.getDisplayString2Type(displayString);
451
- if (Array.isArray(types) && types.length) {
452
- const type = types[0];
453
- str = type === 'any' || type === 'unknown' || type === 'never' ? '' : type;
459
+ // 取出T的值
460
+ typeStr = getPlatformType(typeStr);
461
+ // 如果要全量的内容
462
+ if (allType) {
463
+ return typeStr;
464
+ }
465
+ // 取出剩下的剩下的类型的最后一项
466
+ if (/\<([^()]+)\>/g.exec(typeStr)) {
467
+ str = typeStr;
468
+ } else if (typeStr.includes('.')) {
469
+ const strs = typeStr.split('.');
470
+ const type = strs[strs.length - 1];
471
+ str = type;
472
+ } else {
473
+ str = typeStr;
454
474
  }
475
+ str = str === 'any' || str === 'unknown' || str === 'never' ? '' : str;
455
476
  return str;
456
477
  }
457
478
  }
@@ -498,7 +519,20 @@ const naslServer = {
498
519
  // 先获取原来的节点先清除一下之前有异常的节点,下面重新赋值
499
520
  const oldRecord = diagnosticManager.getRecord(record.id);
500
521
  oldRecord?.semanticDiagnostics.forEach((item) => {
501
- item.node ? (item.node.tsErrorDetail = undefined) : '';
522
+ if (item.node) {
523
+ item.node.tsErrorDetail = undefined;
524
+ // 如果logic中有报错就把标识置为true
525
+ if ((item.node as any).logic) {
526
+ (item.node as any).logic.haveError = false;
527
+ }
528
+ }
529
+ });
530
+
531
+ // 清空一些状态
532
+ oldRecord?.suggestionDiagnostics.forEach((item) => {
533
+ if (item.node && item.node instanceof Logic) {
534
+ item.node.isSmpty = false;
535
+ }
502
536
  });
503
537
  // 语义诊断
504
538
  if (isChangeInterface) {
@@ -522,11 +556,10 @@ const naslServer = {
522
556
  // // logic在for循环中,不展示any提示
523
557
  // record.suggestionDiagnostics = record.suggestionDiagnostics.filter((item) => !item.text.includes(`implicitly has an 'any' type, but a better type may be inferred from usage.`));
524
558
  // }
525
- // record.suggestionDiagnostics = record.suggestionDiagnostics
526
- // .map((diag) => this._resolveDiagnostic(diag as unknown as tsProtocol.DiagnosticWithFileName, node.sourceMap))
527
- // .filter((diag) => !!diag);
528
- record.suggestionDiagnostics = [];
529
- // 语法诊断暂时不需要
559
+ record.suggestionDiagnostics = record.suggestionDiagnostics
560
+ .filter((item) => { return [`'$LogicEmpty' is declared but its value is never read.`].includes(item.text); })
561
+ .map((diag) => this._resolveDiagnostic(diag as unknown as tsProtocol.DiagnosticWithFileName, node as FileNode))
562
+ .filter((diag) => !!diag);
530
563
  });
531
564
 
532
565
  return records;
@@ -1265,8 +1298,9 @@ const naslServer = {
1265
1298
  App.emit('collect:start', {
1266
1299
  actionMsg: '增加逻辑参数',
1267
1300
  });
1301
+ const index = node.getIndexOfParent();
1268
1302
  node.create({
1269
- index: 0,
1303
+ index,
1270
1304
  parentNode: parantNode,
1271
1305
  parentKey: node.parentKey,
1272
1306
  });