@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,604 +0,0 @@
1
- "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
- var __importDefault = (this && this.__importDefault) || function (mod) {
9
- return (mod && mod.__esModule) ? mod : { "default": mod };
10
- };
11
- var CallLogic_1;
12
- Object.defineProperty(exports, "__esModule", { value: true });
13
- exports.CallLogic = void 0;
14
- const translator_1 = require("../translator");
15
- const View__1 = __importDefault(require("./View__"));
16
- const utils_1 = require("../automate/engine/utils");
17
- const utils_2 = require("../utils");
18
- const decorators_1 = require("../decorators");
19
- const classMap_1 = __importDefault(require("../common/classMap"));
20
- const TypeAnnotation__1 = __importDefault(require("./TypeAnnotation__"));
21
- const Argument__1 = __importDefault(require("./Argument__"));
22
- const LogicItem__1 = __importDefault(require("./LogicItem__"));
23
- /**
24
- * 调用逻辑
25
- */
26
- let CallLogic = CallLogic_1 = class CallLogic extends LogicItem__1.default {
27
- /**
28
- * 产品概念
29
- */
30
- concept = 'CallLogic';
31
- /**
32
- * 调用逻辑标题
33
- */
34
- label = '调用逻辑';
35
- /**
36
- * calleeNamespace
37
- */
38
- calleeNamespace = undefined;
39
- /**
40
- * calleeName
41
- */
42
- calleeName = undefined;
43
- /**
44
- * shortcut
45
- */
46
- shortcut = undefined;
47
- /**
48
- * 类型参数
49
- */
50
- typeArguments = null;
51
- /**
52
- * 实际参数
53
- */
54
- arguments = [];
55
- /**
56
- * @param source 需要合并的部分参数
57
- */
58
- constructor(source) {
59
- source = Object.assign({}, CallLogic_1.getDefaultOptions(), source);
60
- super(source);
61
- super.subConstructor(source);
62
- }
63
- static from(source, parentNode, parentKey) {
64
- return super.from(source, parentNode, parentKey);
65
- }
66
- _insertTypeAnnotationAt(options, index) {
67
- const typeAnnotationOptions = {};
68
- const relationOptions = { parentNode: this, parentKey: 'typeArguments' };
69
- let typeAnnotation;
70
- if (options instanceof TypeAnnotation__1.default) {
71
- options.ensureDelete(); // 同一实例不支持多处存在
72
- typeAnnotation = options;
73
- Object.assign(typeAnnotation, relationOptions);
74
- }
75
- else {
76
- typeAnnotation = TypeAnnotation__1.default.from({
77
- ...typeAnnotationOptions,
78
- ...options,
79
- }, this, 'typeArguments');
80
- }
81
- this.typeArguments.splice(index, 0, typeAnnotation);
82
- return typeAnnotation;
83
- }
84
- insertTypeAnnotationAt(options, index) {
85
- const node = this._insertTypeAnnotationAt(options, index);
86
- node.create({
87
- index,
88
- parentNode: this,
89
- parentKey: 'typeArguments',
90
- });
91
- return node;
92
- }
93
- _addTypeAnnotation(options) {
94
- const index = this.typeArguments.length;
95
- return this._insertTypeAnnotationAt(options, index);
96
- }
97
- addTypeAnnotation(options) {
98
- const node = this._addTypeAnnotation(options);
99
- const index = this.typeArguments.indexOf(node);
100
- node.create({
101
- index,
102
- parentNode: this,
103
- parentKey: 'typeArguments',
104
- });
105
- return node;
106
- }
107
- _insertArgumentAt(options, index) {
108
- const argumentOptions = {};
109
- const relationOptions = { parentNode: this, parentKey: 'arguments' };
110
- let argument;
111
- if (options instanceof Argument__1.default) {
112
- options.ensureDelete(); // 同一实例不支持多处存在
113
- argument = options;
114
- Object.assign(argument, relationOptions);
115
- }
116
- else {
117
- argument = Argument__1.default.from({
118
- ...argumentOptions,
119
- ...options,
120
- }, this, 'arguments');
121
- }
122
- this.arguments.splice(index, 0, argument);
123
- return argument;
124
- }
125
- insertArgumentAt(options, index) {
126
- const node = this._insertArgumentAt(options, index);
127
- node.create({
128
- index,
129
- parentNode: this,
130
- parentKey: 'arguments',
131
- });
132
- return node;
133
- }
134
- _addArgument(options) {
135
- const index = this.arguments.length;
136
- return this._insertArgumentAt(options, index);
137
- }
138
- addArgument(options) {
139
- const node = this._addArgument(options);
140
- const index = this.arguments.indexOf(node);
141
- node.create({
142
- index,
143
- parentNode: this,
144
- parentKey: 'arguments',
145
- });
146
- return node;
147
- }
148
- removeTypeAnnotation(options) {
149
- let typeAnnotation = options;
150
- return typeAnnotation.delete();
151
- }
152
- __removeTypeAnnotation(typeAnnotation) {
153
- const parentKey = typeAnnotation.parentKey;
154
- const params = {
155
- parentNode: this,
156
- parentKey,
157
- index: -1,
158
- object: null,
159
- oldObject: typeAnnotation,
160
- };
161
- if (parentKey) {
162
- params.parentKey = parentKey;
163
- if (Array.isArray(this[parentKey])) {
164
- const index = this[parentKey].indexOf(typeAnnotation);
165
- ~index && this[parentKey].splice(index, 1);
166
- params.index = index;
167
- }
168
- else if (this[parentKey] === typeAnnotation) {
169
- params.index = 0;
170
- this[parentKey] = undefined;
171
- }
172
- }
173
- return params;
174
- }
175
- removeArgument(options) {
176
- let argument = options;
177
- return argument.delete();
178
- }
179
- __removeLogicItem(logicItem) {
180
- const parentKey = logicItem.parentKey;
181
- const params = {
182
- parentNode: this,
183
- parentKey,
184
- index: -1,
185
- object: null,
186
- oldObject: logicItem,
187
- };
188
- if (parentKey) {
189
- params.parentKey = parentKey;
190
- if (Array.isArray(this[parentKey])) {
191
- const index = this[parentKey].indexOf(logicItem);
192
- ~index && this[parentKey].splice(index, 1);
193
- params.index = index;
194
- }
195
- else if (this[parentKey] === logicItem) {
196
- params.index = 0;
197
- this[parentKey] = undefined;
198
- }
199
- }
200
- return params;
201
- }
202
- //================================================================================
203
- // ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
204
- // 自动生成的代码已结束。下面可以手动编写。
205
- //================================================================================
206
- get tsCalleeNamespace() {
207
- if (this.calleeNamespace) {
208
- let tsCalleeNamespace = this.calleeNamespace;
209
- tsCalleeNamespace = tsCalleeNamespace.replace(/\.[0-9]/g, (m) => m.replace('.', '.$'));
210
- tsCalleeNamespace = tsCalleeNamespace.replace(/-/g, '_');
211
- return tsCalleeNamespace;
212
- }
213
- return '';
214
- }
215
- // 用于logic回填
216
- get calleewholeKey() {
217
- if (!this.calleeNamespace && this.calleeName && this.view) {
218
- // 页面逻辑单独处理
219
- return `${this.view.getNamespace()}.${this.view.name}.logics.${this.calleeName}`;
220
- }
221
- return this.calleeNamespace + '.' + this.calleeName;
222
- }
223
- get calleeKey() {
224
- const tsCalleeNamespace = this.tsCalleeNamespace;
225
- const calleeName = this.calleeName;
226
- if (!tsCalleeNamespace) {
227
- return calleeName ? `${calleeName}` : '__IDENTIFIER__';
228
- }
229
- // elements单独处理相对路径,和后缀的问题
230
- if (tsCalleeNamespace.startsWith('elements') && tsCalleeNamespace.endsWith('logics')) {
231
- const methodName = tsCalleeNamespace.substring(0, tsCalleeNamespace.length - '.logics'.length);
232
- return '__' + methodName + `.${calleeName}`;
233
- }
234
- return calleeName ? `${tsCalleeNamespace}.${calleeName}` : '__IDENTIFIER__';
235
- }
236
- /**
237
- * 设置argment 触发别的地方的更新
238
- */
239
- setArgumentName({ argument }) {
240
- // argument.setKeyword(newKeyword);
241
- // this.arguments = argument;
242
- }
243
- /**
244
- * 设置setCalleeName
245
- */
246
- setCalleeName(calleeName) {
247
- const object = {
248
- calleeName,
249
- };
250
- this.update({
251
- ...object,
252
- });
253
- }
254
- /**
255
- * 设置calleeNamespace
256
- */
257
- setCalleeNamespace(calleeNamespace) {
258
- const object = {
259
- calleeNamespace,
260
- };
261
- this.update({
262
- ...object,
263
- });
264
- }
265
- _setCallee(logic) {
266
- this.calleeNamespace = logic.getNamespace();
267
- if (logic.parentNode instanceof View__1.default) {
268
- this.calleeNamespace = '';
269
- }
270
- this.calleeName = logic.name;
271
- this.arguments = [];
272
- logic.params.forEach((param) => {
273
- this._addArgument({
274
- keyword: param.name,
275
- });
276
- });
277
- if (logic.typeParams) {
278
- this.typeArguments = [];
279
- logic.typeParams.forEach(() => {
280
- this._addTypeAnnotation({});
281
- });
282
- }
283
- }
284
- setCallee(logic) {
285
- let calleeNamespace = logic.getNamespace();
286
- if (logic.parentNode instanceof View__1.default) {
287
- calleeNamespace = '';
288
- }
289
- const calleeName = logic.name;
290
- const params = logic.params.map((param) => {
291
- const relationOptions = { parentNode: this, parentKey: 'arguments' };
292
- const argument = Argument__1.default.from({
293
- keyword: param.name,
294
- expression: param.defaultExpression,
295
- }, this);
296
- Object.assign(argument, relationOptions);
297
- return argument;
298
- });
299
- let typeArguments = null;
300
- if (logic.typeParams) {
301
- typeArguments = logic.typeParams.map(() => {
302
- const relationOptions = { parentNode: this, parentKey: 'typeArguments' };
303
- const typeArgu = new TypeAnnotation__1.default();
304
- Object.assign(typeArgu, relationOptions);
305
- return typeArgu;
306
- });
307
- }
308
- this.update({
309
- calleeNamespace,
310
- calleeName,
311
- arguments: params,
312
- typeArguments,
313
- });
314
- }
315
- setCalleeArgName(logic) {
316
- let calleeNamespace = logic.getNamespace();
317
- if (logic.parentNode instanceof View__1.default) {
318
- calleeNamespace = '';
319
- }
320
- const calleeName = logic.name;
321
- /**
322
- * a: logic.params b: this.arguments
323
- * a 长度 和 b长度相等就一起加一起删
324
- * 等重新建立连接后
325
- * 2.b大于a时后面的几项就是要被删除的
326
- * 3.重命名时候按照下标进行重命名
327
- * 4.b大于a时,a添加的时候,b的name要改,但是内容不改
328
- */
329
- const newArgs = this.arguments.map((argument) => Argument__1.default.from({
330
- ...argument,
331
- }, this));
332
- const relationOptions = { parentNode: this, parentKey: 'arguments' };
333
- // logic在增加参数的时候走到这里
334
- if (logic.params.length >= newArgs.length) {
335
- logic.params.forEach((param, index) => {
336
- const arg = newArgs[index];
337
- if (!arg) {
338
- const newParam = Argument__1.default.from({
339
- keyword: param.name,
340
- }, this);
341
- Object.assign(newParam, relationOptions);
342
- newArgs.push(newParam);
343
- }
344
- else {
345
- arg.keyword = param.name;
346
- }
347
- });
348
- }
349
- else {
350
- newArgs.forEach((arg, index) => {
351
- const param = logic.params[index];
352
- if (param) {
353
- arg.keyword = param.name;
354
- }
355
- });
356
- }
357
- this.update({
358
- calleeNamespace,
359
- calleeName,
360
- arguments: newArgs,
361
- });
362
- }
363
- toVue(options) {
364
- let code = '';
365
- if (this.calleeNamespace === 'nasl.browser' || this.calleeNamespace === 'nasl.auth' || this.calleeNamespace === 'nasl.configuration' || this.calleeNamespace === 'nasl.process') {
366
- code += '$global.';
367
- }
368
- code += this.calleeName;
369
- code += '(';
370
- this.arguments?.forEach((arg, index) => {
371
- code += arg?.toVue(options);
372
- if (index !== this.arguments?.length - 1)
373
- code += ', ';
374
- });
375
- code += ')';
376
- return code;
377
- }
378
- toUI(state) {
379
- let code = this.calleeName;
380
- code += '(';
381
- this.arguments?.forEach((arg, index) => {
382
- code += arg?.toUI();
383
- if (index !== this.arguments?.length - 1)
384
- code += ', ';
385
- });
386
- code += ')';
387
- return code;
388
- }
389
- toJS(state) {
390
- let code = 'await ';
391
- // 页面逻辑
392
- let isViewLogic = true;
393
- // 组件逻辑
394
- let isComponentLogic = false;
395
- let componentName = '';
396
- const calleeNamespace = this.calleeNamespace;
397
- const keywordProcessIndex = (0, utils_2.findConceptKeyWordIndexFromNamespace)(this.calleeNamespace, 'processes');
398
- const isProcessLogic = keywordProcessIndex !== -1;
399
- // calleeNamespace不存在,一定是页面逻辑
400
- if (calleeNamespace) {
401
- const namespaceArr = calleeNamespace.split('.');
402
- const start = namespaceArr[0];
403
- if (start === 'app' || start === 'extensions') {
404
- const keywordViewsIndex = (0, utils_2.findConceptKeyWordIndexFromNamespace)(this.calleeNamespace, 'views');
405
- if (keywordViewsIndex === -1) {
406
- isViewLogic = false;
407
- }
408
- }
409
- else if (start === 'elements' && namespaceArr.length === 3 && namespaceArr[2] === 'logics') {
410
- isComponentLogic = true;
411
- componentName = namespaceArr[1];
412
- }
413
- }
414
- // 全局逻辑
415
- if (!isViewLogic) {
416
- const namespaceArr = calleeNamespace?.split('.');
417
- const logic = (0, utils_1.getNodeByNodeCallee)(this.app, this.calleewholeKey, (key, tempPoint) => {
418
- // 处理 NASL 中未定义的假的节点
419
- if (key === tempPoint.name) {
420
- return {
421
- tempPoint,
422
- state: 1,
423
- };
424
- }
425
- const t = tempPoint[key];
426
- return {
427
- tempPoint: t,
428
- state: Array.isArray(t) ? 2 : 1,
429
- };
430
- });
431
- const args = logic?.params || [];
432
- const keywordEntitiesIndex = (0, utils_2.findConceptKeyWordIndexFromNamespace)(this.calleeNamespace, 'entities');
433
- code += `this.$logics['${this.calleeNamespace ? `${this.calleeNamespace}.${this.calleeName}` : this.calleeName}']`;
434
- code += `({
435
- config: {
436
- download: false,
437
- },
438
- query: {`;
439
- if (isProcessLogic) {
440
- const argsStr = args.map((arg, index) => {
441
- const actualArg = this.arguments?.[index];
442
- return {
443
- keyword: arg?.name,
444
- arg: actualArg,
445
- };
446
- }).filter((obj) => obj?.arg?.expression).map((obj) => `\n${obj?.keyword}: ${obj?.arg?.toJS((0, translator_1.shiftState)(state, code))}`).join(', ');
447
- code += argsStr;
448
- }
449
- code += `},
450
- headers: {},
451
- `;
452
- if (keywordEntitiesIndex !== -1) {
453
- let logicArgs = this.arguments;
454
- switch (this.calleeName) {
455
- case 'get':
456
- case 'delete': {
457
- logicArgs = [];
458
- code += `query: {`;
459
- const argsStr = args.map((arg, index) => {
460
- const actualArg = this.arguments?.[index];
461
- return {
462
- keyword: arg?.name,
463
- arg: actualArg,
464
- };
465
- }).filter((obj) => obj?.arg?.expression).map((obj) => `\n${obj?.keyword}: ${obj?.arg?.toJS((0, translator_1.shiftState)(state, code))}`).join(', ');
466
- code += argsStr;
467
- code += `},\n`;
468
- break;
469
- }
470
- }
471
- const bodyArgument = logicArgs.find((arg) => arg.keyword === 'body');
472
- if (bodyArgument) {
473
- code += `\n${bodyArgument?.keyword}: ${bodyArgument?.toJS((0, translator_1.shiftState)(state, code))}`;
474
- }
475
- else {
476
- code += `body: {}`;
477
- }
478
- }
479
- else {
480
- code += `path: {},
481
- body: {`;
482
- if (!isProcessLogic) {
483
- const argsStr = args.map((arg, index) => {
484
- const actualArg = this.arguments?.[index];
485
- return {
486
- keyword: arg?.name,
487
- arg: actualArg,
488
- };
489
- }).filter((obj) => obj?.arg?.expression).map((obj) => `\n${obj?.keyword}: ${obj?.arg?.toJS((0, translator_1.shiftState)(state, code))}`).join(', ');
490
- code += argsStr;
491
- }
492
- code += '\n}';
493
- }
494
- code += '\n})';
495
- }
496
- else {
497
- if (isComponentLogic) {
498
- code += `this.$refs.${componentName}.${this.calleeName}`;
499
- }
500
- else if (calleeNamespace === 'nasl.ui' || calleeNamespace === 'nasl.util') {
501
- switch (this.calleeName) {
502
- case 'showMessage':
503
- code += `this.$toast.show`;
504
- break;
505
- case 'consoleLog':
506
- code += `console.log`;
507
- break;
508
- case 'jsonSerialize':
509
- code += `JSON.stringify`;
510
- break;
511
- case 'jsonDeserialize':
512
- code += `JSON.parse`;
513
- break;
514
- }
515
- }
516
- else if (calleeNamespace === 'nasl.browser' || calleeNamespace === 'nasl.auth' || calleeNamespace === 'nasl.configuration' || calleeNamespace === 'nasl.process') {
517
- code += `this.$global.${this.calleeName}`;
518
- }
519
- else {
520
- code += `this.${this.calleeName}`;
521
- }
522
- if (calleeNamespace === 'nasl.process') {
523
- code += '({';
524
- this.arguments?.filter((arg) => arg?.expression)
525
- .forEach((arg, index) => {
526
- code += `${arg.keyword}: ${arg?.toJS((0, translator_1.shiftState)(state, code))}`;
527
- if (index !== this.arguments?.length - 1)
528
- code += ', ';
529
- });
530
- code += '})';
531
- }
532
- else {
533
- code += '(';
534
- this.arguments?.filter((arg) => arg?.expression)
535
- .forEach((arg, index) => {
536
- code += arg?.toJS((0, translator_1.shiftState)(state, code));
537
- if (index !== this.arguments?.length - 1)
538
- code += ', ';
539
- });
540
- code += ')';
541
- }
542
- }
543
- return code;
544
- }
545
- toEmbeddedTS(state) {
546
- let code = this.calleeKey;
547
- if (Array.isArray(this.typeArguments) && this.typeArguments.length) {
548
- // 如果有内容
549
- const typeAnnotation = this.typeArguments[0];
550
- code += `<`;
551
- code += `${typeAnnotation.toEmbeddedTS((0, translator_1.shiftState)(state, code, { tabSize: 0 }))}>`;
552
- }
553
- code += '(';
554
- this.arguments.forEach((arg, index) => {
555
- const tsCalleeNamespace = this.tsCalleeNamespace;
556
- // 页面逻辑先都非必填
557
- if (tsCalleeNamespace.startsWith('elements') && tsCalleeNamespace.endsWith('logics')) {
558
- code += arg.toEmbeddedTS((0, translator_1.shiftState)(state, code), false);
559
- }
560
- else {
561
- code += arg.toEmbeddedTS((0, translator_1.shiftState)(state, code));
562
- }
563
- if (index !== this.arguments.length - 1)
564
- code += ', ';
565
- });
566
- code += ');\n';
567
- return code;
568
- }
569
- };
570
- __decorate([
571
- (0, decorators_1.property)()
572
- ], CallLogic.prototype, "concept", void 0);
573
- __decorate([
574
- (0, decorators_1.property)()
575
- ], CallLogic.prototype, "label", void 0);
576
- __decorate([
577
- (0, decorators_1.property)()
578
- ], CallLogic.prototype, "calleeNamespace", void 0);
579
- __decorate([
580
- (0, decorators_1.property)()
581
- ], CallLogic.prototype, "calleeName", void 0);
582
- __decorate([
583
- (0, decorators_1.property)()
584
- ], CallLogic.prototype, "shortcut", void 0);
585
- __decorate([
586
- (0, decorators_1.property)('TypeAnnotation')
587
- ], CallLogic.prototype, "typeArguments", void 0);
588
- __decorate([
589
- (0, decorators_1.property)('Argument')
590
- ], CallLogic.prototype, "arguments", void 0);
591
- __decorate([
592
- (0, translator_1.withSourceMap)()
593
- ], CallLogic.prototype, "toEmbeddedTS", null);
594
- CallLogic = CallLogic_1 = __decorate([
595
- (0, decorators_1.concept)('调用逻辑')
596
- ], CallLogic);
597
- exports.CallLogic = CallLogic;
598
- classMap_1.default['CallLogic'] = CallLogic;
599
- exports.default = CallLogic;
600
- //================================================================================
601
- // ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
602
- // 自动生成的代码已结束。下面可以手动编写。
603
- //================================================================================
604
- //# sourceMappingURL=CallLogic__.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CallLogic__.js","sourceRoot":"","sources":["../../src/concepts/CallLogic__.ts"],"names":[],"mappings":";;;;;;;;;;;;;AAAA,8CAA2E;AAG3E,qDAA4B;AAE5B,oDAA+D;AAC/D,oCAAgE;AAOhE,8CAAkE;AAKlE,kEAA0C;AAC1C,yEAAgD;AAChD,6DAAoC;AACpC,+DAAsC;AAEtC;;GAEG;AAEH,IAAa,SAAS,iBAAtB,MAAa,SAAU,SAAQ,oBAAS;IACpC;;OAEG;IAEH,OAAO,GAAgB,WAAW,CAAC;IAEnC;;OAEG;IAEH,KAAK,GAAW,MAAM,CAAC;IAEvB;;OAEG;IAEH,eAAe,GAAW,SAAS,CAAC;IAEpC;;OAEG;IAEH,UAAU,GAAW,SAAS,CAAC;IAE/B;;OAEG;IAEH,QAAQ,GAAY,SAAS,CAAC;IAE9B;;OAEG;IAEH,aAAa,GAA2B,IAAI,CAAC;IAE7C;;OAEG;IAEH,SAAS,GAAoB,EAAE,CAAC;IAIhC;;OAEG;IACH,YAAY,MAA2B;QACnC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,WAAS,CAAC,iBAAiB,EAAE,EAAE,MAAM,CAAC,CAAC;QAClE,KAAK,CAAC,MAAM,CAAC,CAAC;QACd,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,MAAW,EAAE,UAAgB,EAAE,SAAkB;QACzD,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,SAAS,CAAc,CAAC;IAClE,CAAC;IAuBD,uBAAuB,CAAC,OAAiD,EAAE,KAAa;QACpF,MAAM,qBAAqB,GAAQ,EAAE,CAAC;QACtC,MAAM,eAAe,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,eAAe,EAAE,CAAC;QACzE,IAAI,cAA8B,CAAC;QACnC,IAAI,OAAO,YAAY,yBAAc,EAAE;YACnC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,cAAc;YACtC,cAAc,GAAG,OAAO,CAAC;YACzB,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE,eAAe,CAAC,CAAC;SAClD;aAAM;YACH,cAAc,GAAG,yBAAc,CAAC,IAAI,CAAC;gBACjC,GAAG,qBAAqB;gBACxB,GAAG,OAAO;aACb,EAAE,IAAI,EAAE,eAAe,CAAC,CAAC;SAC7B;QACD,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,cAAc,CAAC,CAAC;QACpD,OAAO,cAAc,CAAC;IAC1B,CAAC;IAgBD,sBAAsB,CAAC,OAAiD,EAAE,KAAa;QACnF,MAAM,IAAI,GAAG,IAAI,CAAC,uBAAuB,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;QACjE,IAAI,CAAC,MAAM,CAAC;YACR,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,eAAe;SAC7B,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IAChB,CAAC;IAkBD,kBAAkB,CAAC,OAAkD;QACjE,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC;QACxC,OAAO,IAAI,CAAC,uBAAuB,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;IAC/D,CAAC;IAgBD,iBAAiB,CAAC,OAAkD;QAChE,MAAM,IAAI,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAc,CAAC,CAAC;QACrD,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC/C,IAAI,CAAC,MAAM,CAAC;YACR,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,eAAe;SAC7B,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IAChB,CAAC;IAqBD,iBAAiB,CAAC,OAAqC,EAAE,KAAa;QAClE,MAAM,eAAe,GAAQ,EAAE,CAAC;QAChC,MAAM,eAAe,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC;QACrE,IAAI,QAAkB,CAAC;QACvB,IAAI,OAAO,YAAY,mBAAQ,EAAE;YAC7B,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC,cAAc;YACtC,QAAQ,GAAG,OAAO,CAAC;YACnB,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;SAC5C;aAAM;YACH,QAAQ,GAAG,mBAAQ,CAAC,IAAI,CAAC;gBACrB,GAAG,eAAe;gBAClB,GAAG,OAAO;aACb,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;SACzB;QACD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,QAAQ,CAAC,CAAC;QAC1C,OAAO,QAAQ,CAAC;IACpB,CAAC;IAgBD,gBAAgB,CAAC,OAAqC,EAAE,KAAa;QACjE,MAAM,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;QAC3D,IAAI,CAAC,MAAM,CAAC;YACR,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,WAAW;SACzB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IAChB,CAAC;IAkBD,YAAY,CAAC,OAAsC;QAC/C,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;QACpC,OAAO,IAAI,CAAC,iBAAiB,CAAC,OAAc,EAAE,KAAK,CAAC,CAAC;IACzD,CAAC;IAgBD,WAAW,CAAC,OAAsC;QAC9C,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,OAAc,CAAC,CAAC;QAC/C,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC3C,IAAI,CAAC,MAAM,CAAC;YACR,KAAK;YACL,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,WAAW;SACzB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IAChB,CAAC;IAWD,oBAAoB,CAAC,OAAuB;QACxC,IAAI,cAAc,GAAmB,OAAO,CAAC;QAC7C,OAAO,cAAc,CAAC,MAAM,EAAE,CAAC;IACnC,CAAC;IAED,sBAAsB,CAAC,cAA8B;QACjD,MAAM,SAAS,GAAG,cAAc,CAAC,SAAS,CAAC;QAC3C,MAAM,MAAM,GAAW;YACnB,UAAU,EAAE,IAAI;YAChB,SAAS;YACT,KAAK,EAAE,CAAC,CAAC;YACT,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,cAAc;SAC5B,CAAC;QACF,IAAI,SAAS,EAAE;YACX,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;YAC7B,IAAI,KAAK,CAAC,OAAO,CAAE,IAAY,CAAC,SAAS,CAAC,CAAC,EAAE;gBACzC,MAAM,KAAK,GAAI,IAAY,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;gBAC/D,CAAC,KAAK,IAAK,IAAY,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBACpD,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;aACxB;iBAAM,IAAK,IAAY,CAAC,SAAS,CAAC,KAAK,cAAc,EAAE;gBACpD,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;gBAChB,IAAY,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;aACxC;SACJ;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAUD,cAAc,CAAC,OAAiB;QAC5B,IAAI,QAAQ,GAAa,OAAO,CAAC;QACjC,OAAO,QAAQ,CAAC,MAAM,EAAE,CAAC;IAC7B,CAAC;IAED,iBAAiB,CAAC,SAAoB;QAClC,MAAM,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC;QACtC,MAAM,MAAM,GAAW;YACnB,UAAU,EAAE,IAAI;YAChB,SAAS;YACT,KAAK,EAAE,CAAC,CAAC;YACT,MAAM,EAAE,IAAI;YACZ,SAAS,EAAE,SAAS;SACvB,CAAC;QACF,IAAI,SAAS,EAAE;YACX,MAAM,CAAC,SAAS,GAAG,SAAS,CAAC;YAC7B,IAAI,KAAK,CAAC,OAAO,CAAE,IAAY,CAAC,SAAS,CAAC,CAAC,EAAE;gBACzC,MAAM,KAAK,GAAI,IAAY,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;gBAC1D,CAAC,KAAK,IAAK,IAAY,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBACpD,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;aACxB;iBAAM,IAAK,IAAY,CAAC,SAAS,CAAC,KAAK,SAAS,EAAE;gBAC/C,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC;gBAChB,IAAY,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;aACxC;SACJ;QACD,OAAO,MAAM,CAAC;IAClB,CAAC;IAED,kFAAkF;IAClF,gEAAgE;IAChE,uBAAuB;IACvB,kFAAkF;IAElF,IAAI,iBAAiB;QACjB,IAAI,IAAI,CAAC,eAAe,EAAE;YACtB,IAAI,iBAAiB,GAAG,IAAI,CAAC,eAAe,CAAC;YAC7C,iBAAiB,GAAG,iBAAiB,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;YACvF,iBAAiB,GAAG,iBAAiB,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YACzD,OAAO,iBAAiB,CAAC;SAC5B;QACD,OAAO,EAAE,CAAC;IACd,CAAC;IAED,YAAY;IACZ,IAAI,cAAc;QACd,IAAI,CAAC,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,IAAI,EAAE;YACvD,WAAW;YACX,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,WAAW,IAAI,CAAC,UAAU,EAAE,CAAC;SACpF;QACD,OAAO,IAAI,CAAC,eAAe,GAAG,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC;IACxD,CAAC;IACD,IAAI,SAAS;QACT,MAAM,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC;QACjD,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QACnC,IAAI,CAAC,iBAAiB,EAAE;YACpB,OAAO,UAAU,CAAC,CAAC,CAAC,GAAG,UAAU,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC;SAC1D;QACD,0BAA0B;QAC1B,IAAI,iBAAiB,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,iBAAiB,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;YAClF,MAAM,UAAU,GAAG,iBAAiB,CAAC,SAAS,CAAC,CAAC,EAAE,iBAAiB,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC;YAC/F,OAAO,IAAI,GAAG,UAAU,GAAG,IAAI,UAAU,EAAE,CAAC;SAC/C;QACD,OAAO,UAAU,CAAC,CAAC,CAAC,GAAG,iBAAiB,IAAI,UAAU,EAAE,CAAC,CAAC,CAAC,gBAAgB,CAAC;IAChF,CAAC;IAED;;OAEG;IACH,eAAe,CAAC,EAAE,QAAQ,EAA4B;QAClD,mCAAmC;QACnC,6BAA6B;IACjC,CAAC;IAED;;OAEG;IACH,aAAa,CAAC,UAAkB;QAC5B,MAAM,MAAM,GAAG;YACX,UAAU;SACb,CAAC;QACF,IAAI,CAAC,MAAM,CAAC;YACR,GAAG,MAAM;SACZ,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACH,kBAAkB,CAAC,eAAuB;QACtC,MAAM,MAAM,GAAG;YACX,eAAe;SAClB,CAAC;QACF,IAAI,CAAC,MAAM,CAAC;YACR,GAAG,MAAM;SACZ,CAAC,CAAC;IACP,CAAC;IAED,UAAU,CAAC,KAAY;QACnB,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC;QAC5C,IAAI,KAAK,CAAC,UAAU,YAAY,eAAI,EAAE;YAClC,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;SAC7B;QACD,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC;QAC7B,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;QACpB,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;YAC3B,IAAI,CAAC,YAAY,CAAC;gBACd,OAAO,EAAE,KAAK,CAAC,IAAI;aACtB,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QACH,IAAI,KAAK,CAAC,UAAU,EAAE;YAClB,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;YACxB,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,GAAG,EAAE;gBAC1B,IAAI,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC;YAChC,CAAC,CAAC,CAAC;SACN;IACL,CAAC;IAED,SAAS,CAAC,KAAY;QAClB,IAAI,eAAe,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC;QAC3C,IAAI,KAAK,CAAC,UAAU,YAAY,eAAI,EAAE;YAClC,eAAe,GAAG,EAAE,CAAC;SACxB;QACD,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC;QAC9B,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;YACtC,MAAM,eAAe,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC;YACrE,MAAM,QAAQ,GAAG,mBAAQ,CAAC,IAAI,CAAC;gBAC3B,OAAO,EAAE,KAAK,CAAC,IAAI;gBACnB,UAAU,EAAE,KAAK,CAAC,iBAAiB;aACtC,EAAE,IAAI,CAAC,CAAC;YACT,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;YACzC,OAAO,QAAQ,CAAC;QACpB,CAAC,CAAC,CAAC;QACH,IAAI,aAAa,GAAG,IAAI,CAAC;QACzB,IAAI,KAAK,CAAC,UAAU,EAAE;YAClB,aAAa,GAAG,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE;gBACtC,MAAM,eAAe,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,eAAe,EAAE,CAAC;gBACzE,MAAM,QAAQ,GAAG,IAAI,yBAAc,EAAE,CAAC;gBACtC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;gBACzC,OAAO,QAAQ,CAAC;YACpB,CAAC,CAAC,CAAC;SACN;QACD,IAAI,CAAC,MAAM,CAAC;YACR,eAAe;YACf,UAAU;YACV,SAAS,EAAE,MAAM;YACjB,aAAa;SAChB,CAAC,CAAC;IACP,CAAC;IAED,gBAAgB,CAAC,KAAY;QACzB,IAAI,eAAe,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC;QAC3C,IAAI,KAAK,CAAC,UAAU,YAAY,eAAI,EAAE;YAClC,eAAe,GAAG,EAAE,CAAC;SACxB;QACD,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC;QAC9B;;;;;;;WAOG;QACH,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAC5C,mBAAQ,CAAC,IAAI,CAAC;YACV,GAAG,QAAQ;SACd,EAAE,IAAI,CAAC,CAAC,CAAC;QACd,MAAM,eAAe,GAAG,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC;QACrE,oBAAoB;QACpB,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,EAAE;YACvC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAY,EAAE,KAAa,EAAE,EAAE;gBACjD,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;gBAC3B,IAAI,CAAC,GAAG,EAAE;oBACN,MAAM,QAAQ,GAAG,mBAAQ,CAAC,IAAI,CAAC;wBAC3B,OAAO,EAAE,KAAK,CAAC,IAAI;qBACtB,EAAE,IAAI,CAAC,CAAC;oBACT,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;oBACzC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;iBAC1B;qBAAM;oBACH,GAAG,CAAC,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC;iBAC5B;YACL,CAAC,CAAC,CAAC;SACN;aAAM;YACH,OAAO,CAAC,OAAO,CAAC,CAAC,GAAa,EAAE,KAAa,EAAE,EAAE;gBAC7C,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAClC,IAAI,KAAK,EAAE;oBACP,GAAG,CAAC,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC;iBAC5B;YACL,CAAC,CAAC,CAAC;SACN;QACD,IAAI,CAAC,MAAM,CAAC;YACR,eAAe;YACf,UAAU;YACV,SAAS,EAAE,OAAO;SACrB,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,OAA6B;QAC/B,IAAI,IAAI,GAAG,EAAE,CAAC;QACd,IAAI,IAAI,CAAC,eAAe,KAAK,cAAc,IAAI,IAAI,CAAC,eAAe,KAAK,WAAW,IAAI,IAAI,CAAC,eAAe,KAAK,oBAAoB,IAAI,IAAI,CAAC,eAAe,KAAK,cAAc,EAAE;YAC7K,IAAI,IAAI,UAAU,CAAC;SACtB;QACD,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC;QACxB,IAAI,IAAI,GAAG,CAAC;QACZ,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;YACnC,IAAI,IAAI,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;YAC5B,IAAI,KAAK,KAAK,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,CAAC;gBACpC,IAAI,IAAI,IAAI,CAAC;QACrB,CAAC,CAAC,CAAC;QACH,IAAI,IAAI,GAAG,CAAC;QACZ,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,IAAI,CAAC,KAAuB;QACxB,IAAI,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC;QAC3B,IAAI,IAAI,GAAG,CAAC;QACZ,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;YACnC,IAAI,IAAI,GAAG,EAAE,IAAI,EAAE,CAAC;YACpB,IAAI,KAAK,KAAK,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,CAAC;gBACpC,IAAI,IAAI,IAAI,CAAC;QACrB,CAAC,CAAC,CAAC;QACH,IAAI,IAAI,GAAG,CAAC;QAEZ,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,IAAI,CAAC,KAAuB;QACxB,IAAI,IAAI,GAAG,QAAQ,CAAC;QACpB,OAAO;QACP,IAAI,WAAW,GAAG,IAAI,CAAC;QACvB,OAAO;QACP,IAAI,gBAAgB,GAAG,KAAK,CAAC;QAC7B,IAAI,aAAa,GAAG,EAAE,CAAC;QACvB,MAAM,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC;QAC7C,MAAM,mBAAmB,GAAG,IAAA,4CAAoC,EAAC,IAAI,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;QACpG,MAAM,cAAc,GAAG,mBAAmB,KAAK,CAAC,CAAC,CAAC;QAClD,6BAA6B;QAC7B,IAAI,eAAe,EAAE;YACjB,MAAM,YAAY,GAAG,eAAe,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAChD,MAAM,KAAK,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;YAC9B,IAAI,KAAK,KAAK,KAAK,IAAI,KAAK,KAAK,YAAY,EAAE;gBAC3C,MAAM,iBAAiB,GAAG,IAAA,4CAAoC,EAAC,IAAI,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;gBAC9F,IAAI,iBAAiB,KAAK,CAAC,CAAC,EAAE;oBAC1B,WAAW,GAAG,KAAK,CAAC;iBACvB;aACJ;iBAAM,IAAI,KAAK,KAAK,UAAU,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,IAAI,YAAY,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE;gBAC1F,gBAAgB,GAAG,IAAI,CAAC;gBACxB,aAAa,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;aACnC;SACJ;QACD,OAAO;QACP,IAAI,CAAC,WAAW,EAAE;YACd,MAAM,YAAY,GAAG,eAAe,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;YACjD,MAAM,KAAK,GAAG,IAAA,2BAAmB,EAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,cAAc,EAAE,CAAC,GAAW,EAAE,SAAc,EAAE,EAAE;gBAC7F,oBAAoB;gBACpB,IAAI,GAAG,KAAK,SAAS,CAAC,IAAI,EAAE;oBACxB,OAAO;wBACH,SAAS;wBACT,KAAK,EAAE,CAAC;qBACX,CAAC;iBACL;gBACD,MAAM,CAAC,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC;gBACzB,OAAO;oBACH,SAAS,EAAE,CAAC;oBACZ,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;iBAClC,CAAC;YACN,CAAC,CAAC,CAAC;YACH,MAAM,IAAI,GAAG,KAAK,EAAE,MAAM,IAAI,EAAE,CAAC;YACjC,MAAM,oBAAoB,GAAG,IAAA,4CAAoC,EAAC,IAAI,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;YACpG,IAAI,IAAI,iBAAiB,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC;YACnH,IAAI,IAAI;;;;yBAIK,CAAC;YACd,IAAI,cAAc,EAAE;gBAChB,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAQ,EAAE,KAAa,EAAE,EAAE;oBACjD,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,CAAC;oBAC1C,OAAO;wBACH,OAAO,EAAE,GAAG,EAAE,IAAI;wBAClB,GAAG,EAAE,SAAS;qBACjB,CAAC;gBACN,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,KAAK,GAAG,EAAE,OAAO,KAAK,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC5I,IAAI,IAAI,OAAO,CAAC;aACnB;YACD,IAAI,IAAI;;aAEP,CAAC;YAEF,IAAI,oBAAoB,KAAK,CAAC,CAAC,EAAE;gBAC7B,IAAI,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;gBAC/B,QAAQ,IAAI,CAAC,UAAU,EAAE;oBACrB,KAAK,KAAK,CAAC;oBACX,KAAK,QAAQ,CAAC,CAAC;wBACX,SAAS,GAAG,EAAE,CAAC;wBACf,IAAI,IAAI,UAAU,CAAC;wBACnB,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAQ,EAAE,KAAa,EAAE,EAAE;4BACjD,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,CAAC;4BAC1C,OAAO;gCACH,OAAO,EAAE,GAAG,EAAE,IAAI;gCAClB,GAAG,EAAE,SAAS;6BACjB,CAAC;wBACN,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,KAAK,GAAG,EAAE,OAAO,KAAK,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBAC5I,IAAI,IAAI,OAAO,CAAC;wBAChB,IAAI,IAAI,MAAM,CAAC;wBACf,MAAM;qBACT;iBACJ;gBACD,MAAM,YAAY,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,KAAK,MAAM,CAAC,CAAC;gBACrE,IAAI,YAAY,EAAE;oBACd,IAAI,IAAI,KAAK,YAAY,EAAE,OAAO,KAAK,YAAY,EAAE,IAAI,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC;iBACxF;qBAAM;oBACH,IAAI,IAAI,UAAU,CAAC;iBACtB;aACJ;iBAAM;gBACH,IAAI,IAAI;wBACA,CAAC;gBACT,IAAI,CAAC,cAAc,EAAE;oBACjB,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAQ,EAAE,KAAa,EAAE,EAAE;wBACjD,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,CAAC;wBAC1C,OAAO;4BACH,OAAO,EAAE,GAAG,EAAE,IAAI;4BAClB,GAAG,EAAE,SAAS;yBACjB,CAAC;oBACN,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,KAAK,GAAG,EAAE,OAAO,KAAK,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBAC5I,IAAI,IAAI,OAAO,CAAC;iBACnB;gBACD,IAAI,IAAI,KAAK,CAAC;aACjB;YACD,IAAI,IAAI,MAAM,CAAC;SAClB;aAAM;YACH,IAAI,gBAAgB,EAAE;gBAClB,IAAI,IAAI,cAAc,aAAa,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;aAC5D;iBAAM,IAAI,eAAe,KAAK,SAAS,IAAI,eAAe,KAAK,WAAW,EAAE;gBACzE,QAAQ,IAAI,CAAC,UAAU,EAAE;oBACrB,KAAK,aAAa;wBACd,IAAI,IAAI,kBAAkB,CAAC;wBAC3B,MAAM;oBACV,KAAK,YAAY;wBACb,IAAI,IAAI,aAAa,CAAC;wBACtB,MAAM;oBACV,KAAK,eAAe;wBAChB,IAAI,IAAI,gBAAgB,CAAC;wBACzB,MAAM;oBACV,KAAK,iBAAiB;wBAClB,IAAI,IAAI,YAAY,CAAC;wBACrB,MAAM;iBACb;aACJ;iBAAM,IAAI,eAAe,KAAK,cAAc,IAAI,eAAe,KAAK,WAAW,IAAI,eAAe,KAAK,oBAAoB,IAAI,eAAe,KAAK,cAAc,EAAE;gBAChK,IAAI,IAAI,gBAAgB,IAAI,CAAC,UAAU,EAAE,CAAC;aAC7C;iBAAM;gBACH,IAAI,IAAI,QAAQ,IAAI,CAAC,UAAU,EAAE,CAAC;aACrC;YACD,IAAI,eAAe,KAAK,cAAc,EAAE;gBACpC,IAAI,IAAI,IAAI,CAAC;gBACb,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,UAAU,CAAC;qBAC3C,OAAO,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;oBACpB,IAAI,IAAI,GAAG,GAAG,CAAC,OAAO,KAAK,GAAG,EAAE,IAAI,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC;oBAChE,IAAI,KAAK,KAAK,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,CAAC;wBACpC,IAAI,IAAI,IAAI,CAAC;gBACrB,CAAC,CAAC,CAAC;gBACP,IAAI,IAAI,IAAI,CAAC;aAChB;iBAAM;gBACH,IAAI,IAAI,GAAG,CAAC;gBACZ,IAAI,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,UAAU,CAAC;qBAC3C,OAAO,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;oBACpB,IAAI,IAAI,GAAG,EAAE,IAAI,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;oBAC3C,IAAI,KAAK,KAAK,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,CAAC;wBACpC,IAAI,IAAI,IAAI,CAAC;gBACrB,CAAC,CAAC,CAAC;gBACP,IAAI,IAAI,GAAG,CAAC;aACf;SACJ;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAGD,YAAY,CAAC,KAAuB;QAChC,IAAI,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;QAC1B,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE;YAChE,QAAQ;YACR,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;YAC7C,IAAI,IAAI,GAAG,CAAC;YACZ,IAAI,IAAI,GAAG,cAAc,CAAC,YAAY,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC;SACtF;QACD,IAAI,IAAI,GAAG,CAAC;QACZ,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;YAClC,MAAM,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC;YACjD,YAAY;YACZ,IAAI,iBAAiB,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,iBAAiB,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;gBAClF,IAAI,IAAI,GAAG,CAAC,YAAY,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,CAAC,EAAE,KAAK,CAAC,CAAC;aAC5D;iBAAM;gBACH,IAAI,IAAI,GAAG,CAAC,YAAY,CAAC,IAAA,uBAAU,EAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC;aACrD;YACD,IAAI,KAAK,KAAK,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC;gBACnC,IAAI,IAAI,IAAI,CAAC;QACrB,CAAC,CAAC,CAAC;QACH,IAAI,IAAI,MAAM,CAAC;QACf,OAAO,IAAI,CAAC;IAChB,CAAC;CAMJ,CAAA;AA/sBG;IADC,IAAA,qBAAQ,GAAE;0CACwB;AAMnC;IADC,IAAA,qBAAQ,GAAE;wCACY;AAMvB;IADC,IAAA,qBAAQ,GAAE;kDACyB;AAMpC;IADC,IAAA,qBAAQ,GAAE;6CACoB;AAM/B;IADC,IAAA,qBAAQ,GAAE;2CACmB;AAM9B;IADC,IAAA,qBAAQ,EAAC,gBAAgB,CAAC;gDACkB;AAM7C;IADC,IAAA,qBAAQ,EAAC,UAAU,CAAC;4CACW;AA+oBhC;IADC,IAAA,0BAAa,GAAE;6CAuBf;AA9sBQ,SAAS;IADrB,IAAA,oBAAO,EAAC,MAAM,CAAC;GACH,SAAS,CAotBrB;AAptBY,8BAAS;AAstBtB,kBAAQ,CAAC,WAAW,CAAC,GAAG,SAAS,CAAC;AAClC,kBAAe,SAAS,CAAC;AACzB,kFAAkF;AAClF,gEAAgE;AAChE,uBAAuB;AACvB,kFAAkF"}