@lcap/nasl 2.18.0 → 2.19.0-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (603) hide show
  1. package/out/automate/engine/index.d.ts +2 -2
  2. package/out/automate/engine/index.js +6 -7
  3. package/out/automate/engine/index.js.map +1 -1
  4. package/out/automate/engine/operators.d.ts +2 -2
  5. package/out/automate/engine/operators.js +14 -5
  6. package/out/automate/engine/operators.js.map +1 -1
  7. package/out/automate/engine/uniqueName.d.ts +2 -2
  8. package/out/automate/engine/uniqueName.js +5 -5
  9. package/out/automate/engine/uniqueName.js.map +1 -1
  10. package/out/automate/engine/utils.js +4 -1
  11. package/out/automate/engine/utils.js.map +1 -1
  12. package/out/automate/template/myProcess.d.ts +1 -1
  13. package/out/automate/template/myProcess.js +9023 -9023
  14. package/out/automate/template/myProcess.js.map +1 -1
  15. package/out/bak/translator.js +18 -25
  16. package/out/bak/translator.js.map +1 -1
  17. package/out/common/BaseNode.d.ts +12 -0
  18. package/out/common/BaseNode.js +89 -14
  19. package/out/common/BaseNode.js.map +1 -1
  20. package/out/common/Command.d.ts +1 -0
  21. package/out/common/Command.js +5 -1
  22. package/out/common/Command.js.map +1 -1
  23. package/out/common/EventEmitter.d.ts +1 -0
  24. package/out/common/EventEmitter.js +3 -0
  25. package/out/common/EventEmitter.js.map +1 -1
  26. package/out/common/Messager.js +1 -0
  27. package/out/common/Messager.js.map +1 -1
  28. package/out/concepts/Abort__.d.ts +25 -0
  29. package/out/concepts/Abort__.js +80 -0
  30. package/out/concepts/Abort__.js.map +1 -0
  31. package/out/concepts/Anchor__.d.ts +1 -0
  32. package/out/concepts/Anchor__.js +3 -0
  33. package/out/concepts/Anchor__.js.map +1 -1
  34. package/out/concepts/AnonymousFunction__.d.ts +2 -0
  35. package/out/concepts/AnonymousFunction__.js +43 -2
  36. package/out/concepts/AnonymousFunction__.js.map +1 -1
  37. package/out/concepts/App__.d.ts +109 -256
  38. package/out/concepts/App__.js +351 -392
  39. package/out/concepts/App__.js.map +1 -1
  40. package/out/concepts/Argument__.d.ts +1 -0
  41. package/out/concepts/Argument__.js +3 -0
  42. package/out/concepts/Argument__.js.map +1 -1
  43. package/out/concepts/Assignee__.d.ts +1 -0
  44. package/out/concepts/Assignee__.js +7 -3
  45. package/out/concepts/Assignee__.js.map +1 -1
  46. package/out/concepts/AssignmentLine__.d.ts +1 -0
  47. package/out/concepts/AssignmentLine__.js +3 -0
  48. package/out/concepts/AssignmentLine__.js.map +1 -1
  49. package/out/concepts/Assignment__.d.ts +1 -0
  50. package/out/concepts/Assignment__.js +3 -0
  51. package/out/concepts/Assignment__.js.map +1 -1
  52. package/out/concepts/Attribute__.d.ts +10 -14
  53. package/out/concepts/Attribute__.js +15 -39
  54. package/out/concepts/Attribute__.js.map +1 -1
  55. package/out/concepts/BatchAssignment__.d.ts +3 -0
  56. package/out/concepts/BatchAssignment__.js +111 -47
  57. package/out/concepts/BatchAssignment__.js.map +1 -1
  58. package/out/concepts/BinaryExpression__.d.ts +1 -0
  59. package/out/concepts/BinaryExpression__.js +3 -0
  60. package/out/concepts/BinaryExpression__.js.map +1 -1
  61. package/out/concepts/BindAttribute__.d.ts +13 -0
  62. package/out/concepts/BindAttribute__.js +296 -31
  63. package/out/concepts/BindAttribute__.js.map +1 -1
  64. package/out/concepts/BindDirective__.d.ts +13 -0
  65. package/out/concepts/BindDirective__.js +223 -15
  66. package/out/concepts/BindDirective__.js.map +1 -1
  67. package/out/concepts/BindEvent__.d.ts +6 -0
  68. package/out/concepts/BindEvent__.js +30 -22
  69. package/out/concepts/BindEvent__.js.map +1 -1
  70. package/out/concepts/BindStyle__.d.ts +13 -0
  71. package/out/concepts/BindStyle__.js +200 -1
  72. package/out/concepts/BindStyle__.js.map +1 -1
  73. package/out/concepts/BooleanLiteral__.d.ts +1 -0
  74. package/out/concepts/BooleanLiteral__.js +3 -0
  75. package/out/concepts/BooleanLiteral__.js.map +1 -1
  76. package/out/concepts/CallFunction__.d.ts +1 -0
  77. package/out/concepts/CallFunction__.js +54 -18
  78. package/out/concepts/CallFunction__.js.map +1 -1
  79. package/out/concepts/CallInterface__.d.ts +2 -0
  80. package/out/concepts/CallInterface__.js +55 -7
  81. package/out/concepts/CallInterface__.js.map +1 -1
  82. package/out/concepts/CallLogic__.d.ts +14 -1
  83. package/out/concepts/CallLogic__.js +244 -147
  84. package/out/concepts/CallLogic__.js.map +1 -1
  85. package/out/concepts/CallQueryComponent__.d.ts +3 -0
  86. package/out/concepts/CallQueryComponent__.js +113 -39
  87. package/out/concepts/CallQueryComponent__.js.map +1 -1
  88. package/out/concepts/Comment__.d.ts +1 -0
  89. package/out/concepts/Comment__.js +3 -0
  90. package/out/concepts/Comment__.js.map +1 -1
  91. package/out/concepts/CompletionProperty__.d.ts +2 -0
  92. package/out/concepts/CompletionProperty__.js +4 -0
  93. package/out/concepts/CompletionProperty__.js.map +1 -1
  94. package/out/concepts/ConfigGroup__.d.ts +2 -0
  95. package/out/concepts/ConfigGroup__.js +16 -0
  96. package/out/concepts/ConfigGroup__.js.map +1 -1
  97. package/out/concepts/ConfigPropertyValue__.d.ts +1 -0
  98. package/out/concepts/ConfigPropertyValue__.js +3 -0
  99. package/out/concepts/ConfigPropertyValue__.js.map +1 -1
  100. package/out/concepts/ConfigProperty__.d.ts +24 -0
  101. package/out/concepts/ConfigProperty__.js +83 -0
  102. package/out/concepts/ConfigProperty__.js.map +1 -1
  103. package/out/concepts/Configuration__.d.ts +2 -0
  104. package/out/concepts/Configuration__.js +16 -0
  105. package/out/concepts/Configuration__.js.map +1 -1
  106. package/out/concepts/Constant__.d.ts +6 -0
  107. package/out/concepts/Constant__.js +9 -0
  108. package/out/concepts/Constant__.js.map +1 -1
  109. package/out/concepts/DataElement__.d.ts +1 -0
  110. package/out/concepts/DataElement__.js +3 -0
  111. package/out/concepts/DataElement__.js.map +1 -1
  112. package/out/concepts/DataSource__.d.ts +5 -0
  113. package/out/concepts/DataSource__.js +70 -1
  114. package/out/concepts/DataSource__.js.map +1 -1
  115. package/out/concepts/DatabaseTypeAnnotation__.d.ts +31 -0
  116. package/out/concepts/DatabaseTypeAnnotation__.js +78 -0
  117. package/out/concepts/DatabaseTypeAnnotation__.js.map +1 -0
  118. package/out/concepts/Destination__.d.ts +5 -1
  119. package/out/concepts/Destination__.js +183 -33
  120. package/out/concepts/Destination__.js.map +1 -1
  121. package/out/concepts/End__.d.ts +1 -0
  122. package/out/concepts/End__.js +4 -1
  123. package/out/concepts/End__.js.map +1 -1
  124. package/out/concepts/EntityIndex__.d.ts +1 -0
  125. package/out/concepts/EntityIndex__.js +3 -0
  126. package/out/concepts/EntityIndex__.js.map +1 -1
  127. package/out/concepts/EntityProperty__.d.ts +34 -5
  128. package/out/concepts/EntityProperty__.js +197 -56
  129. package/out/concepts/EntityProperty__.js.map +1 -1
  130. package/out/concepts/Entity__.d.ts +3 -1
  131. package/out/concepts/Entity__.js +33 -1
  132. package/out/concepts/Entity__.js.map +1 -1
  133. package/out/concepts/EnumItem__.d.ts +6 -5
  134. package/out/concepts/EnumItem__.js +9 -6
  135. package/out/concepts/EnumItem__.js.map +1 -1
  136. package/out/concepts/Enum__.d.ts +21 -19
  137. package/out/concepts/Enum__.js +31 -1
  138. package/out/concepts/Enum__.js.map +1 -1
  139. package/out/concepts/Event__.d.ts +1 -0
  140. package/out/concepts/Event__.js +3 -0
  141. package/out/concepts/Event__.js.map +1 -1
  142. package/out/concepts/ExternalDestination__.d.ts +2 -0
  143. package/out/concepts/ExternalDestination__.js +25 -4
  144. package/out/concepts/ExternalDestination__.js.map +1 -1
  145. package/out/concepts/ForEachStatement__.d.ts +1 -0
  146. package/out/concepts/ForEachStatement__.js +5 -0
  147. package/out/concepts/ForEachStatement__.js.map +1 -1
  148. package/out/concepts/FrontendLibrary__.d.ts +213 -0
  149. package/out/concepts/FrontendLibrary__.js +352 -0
  150. package/out/concepts/FrontendLibrary__.js.map +1 -0
  151. package/out/concepts/Frontend__.d.ts +373 -0
  152. package/out/concepts/Frontend__.js +685 -0
  153. package/out/concepts/Frontend__.js.map +1 -0
  154. package/out/concepts/Function__.d.ts +1 -0
  155. package/out/concepts/Function__.js +3 -0
  156. package/out/concepts/Function__.js.map +1 -1
  157. package/out/concepts/Identifier__.d.ts +2 -0
  158. package/out/concepts/Identifier__.js +43 -11
  159. package/out/concepts/Identifier__.js.map +1 -1
  160. package/out/concepts/IfStatement__.d.ts +1 -0
  161. package/out/concepts/IfStatement__.js +5 -2
  162. package/out/concepts/IfStatement__.js.map +1 -1
  163. package/out/concepts/Integration__.d.ts +53 -0
  164. package/out/concepts/Integration__.js +143 -0
  165. package/out/concepts/Integration__.js.map +1 -0
  166. package/out/concepts/InterfaceParam__.d.ts +1 -3
  167. package/out/concepts/InterfaceParam__.js +3 -56
  168. package/out/concepts/InterfaceParam__.js.map +1 -1
  169. package/out/concepts/Interface__.d.ts +14 -0
  170. package/out/concepts/Interface__.js +87 -0
  171. package/out/concepts/Interface__.js.map +1 -1
  172. package/out/concepts/JSBlock__.d.ts +1 -0
  173. package/out/concepts/JSBlock__.js +8 -1
  174. package/out/concepts/JSBlock__.js.map +1 -1
  175. package/out/concepts/JavaLogic__.d.ts +42 -0
  176. package/out/concepts/JavaLogic__.js +122 -0
  177. package/out/concepts/JavaLogic__.js.map +1 -0
  178. package/out/concepts/LogicItem__.d.ts +7 -1
  179. package/out/concepts/LogicItem__.js +11 -0
  180. package/out/concepts/LogicItem__.js.map +1 -1
  181. package/out/concepts/Logic__.d.ts +8 -0
  182. package/out/concepts/Logic__.js +104 -35
  183. package/out/concepts/Logic__.js.map +1 -1
  184. package/out/concepts/MatchCase__.d.ts +1 -0
  185. package/out/concepts/MatchCase__.js +4 -1
  186. package/out/concepts/MatchCase__.js.map +1 -1
  187. package/out/concepts/Match__.d.ts +6 -3
  188. package/out/concepts/Match__.js +123 -22
  189. package/out/concepts/Match__.js.map +1 -1
  190. package/out/concepts/MemberExpression__.d.ts +1 -0
  191. package/out/concepts/MemberExpression__.js +14 -2
  192. package/out/concepts/MemberExpression__.js.map +1 -1
  193. package/out/concepts/MicroApp__.d.ts +51 -0
  194. package/out/concepts/MicroApp__.js +113 -0
  195. package/out/concepts/MicroApp__.js.map +1 -0
  196. package/out/concepts/Module__.d.ts +96 -56
  197. package/out/concepts/Module__.js +169 -58
  198. package/out/concepts/Module__.js.map +1 -1
  199. package/out/concepts/Namespace__.d.ts +1 -0
  200. package/out/concepts/Namespace__.js +3 -0
  201. package/out/concepts/Namespace__.js.map +1 -1
  202. package/out/concepts/NewComposite__.d.ts +345 -0
  203. package/out/concepts/NewComposite__.js +1084 -0
  204. package/out/concepts/NewComposite__.js.map +1 -0
  205. package/out/concepts/NewList__.d.ts +132 -0
  206. package/out/concepts/NewList__.js +378 -0
  207. package/out/concepts/NewList__.js.map +1 -0
  208. package/out/concepts/NewMap__.d.ts +223 -0
  209. package/out/concepts/NewMap__.js +522 -0
  210. package/out/concepts/NewMap__.js.map +1 -0
  211. package/out/concepts/New__.d.ts +20 -0
  212. package/out/concepts/New__.js +69 -0
  213. package/out/concepts/New__.js.map +1 -0
  214. package/out/concepts/NullLiteral__.d.ts +1 -0
  215. package/out/concepts/NullLiteral__.js +3 -0
  216. package/out/concepts/NullLiteral__.js.map +1 -1
  217. package/out/concepts/NumericLiteral__.d.ts +1 -0
  218. package/out/concepts/NumericLiteral__.js +6 -9
  219. package/out/concepts/NumericLiteral__.js.map +1 -1
  220. package/out/concepts/OqlQueryComponent__.d.ts +1 -1
  221. package/out/concepts/OqlQueryComponent__.js +43 -58
  222. package/out/concepts/OqlQueryComponent__.js.map +1 -1
  223. package/out/concepts/Param__.d.ts +9 -3
  224. package/out/concepts/Param__.js +56 -62
  225. package/out/concepts/Param__.js.map +1 -1
  226. package/out/concepts/Point__.d.ts +1 -0
  227. package/out/concepts/Point__.js +3 -0
  228. package/out/concepts/Point__.js.map +1 -1
  229. package/out/concepts/ProcessComponent__.d.ts +1 -0
  230. package/out/concepts/ProcessComponent__.js +3 -0
  231. package/out/concepts/ProcessComponent__.js.map +1 -1
  232. package/out/concepts/ProcessElement__.d.ts +1 -0
  233. package/out/concepts/ProcessElement__.js +47 -14
  234. package/out/concepts/ProcessElement__.js.map +1 -1
  235. package/out/concepts/ProcessOutcome__.d.ts +1 -0
  236. package/out/concepts/ProcessOutcome__.js +4 -1
  237. package/out/concepts/ProcessOutcome__.js.map +1 -1
  238. package/out/concepts/ProcessOutcomes__.d.ts +31 -0
  239. package/out/concepts/{ConstructArgument__.js → ProcessOutcomes__.js} +30 -48
  240. package/out/concepts/ProcessOutcomes__.js.map +1 -0
  241. package/out/concepts/Process__.d.ts +5 -20
  242. package/out/concepts/Process__.js +4 -7
  243. package/out/concepts/Process__.js.map +1 -1
  244. package/out/concepts/QueryAggregateExpression__.d.ts +1 -0
  245. package/out/concepts/QueryAggregateExpression__.js +3 -0
  246. package/out/concepts/QueryAggregateExpression__.js.map +1 -1
  247. package/out/concepts/QueryFieldExpression__.d.ts +1 -0
  248. package/out/concepts/QueryFieldExpression__.js +7 -1
  249. package/out/concepts/QueryFieldExpression__.js.map +1 -1
  250. package/out/concepts/QueryFromExpression__.d.ts +1 -0
  251. package/out/concepts/QueryFromExpression__.js +3 -0
  252. package/out/concepts/QueryFromExpression__.js.map +1 -1
  253. package/out/concepts/QueryGroupByExpression__.d.ts +1 -0
  254. package/out/concepts/QueryGroupByExpression__.js +3 -0
  255. package/out/concepts/QueryGroupByExpression__.js.map +1 -1
  256. package/out/concepts/QueryJoinExpression__.d.ts +1 -0
  257. package/out/concepts/QueryJoinExpression__.js +3 -0
  258. package/out/concepts/QueryJoinExpression__.js.map +1 -1
  259. package/out/concepts/QueryLimitExpression__.d.ts +1 -0
  260. package/out/concepts/QueryLimitExpression__.js +3 -0
  261. package/out/concepts/QueryLimitExpression__.js.map +1 -1
  262. package/out/concepts/QueryOrderByExpression__.d.ts +1 -0
  263. package/out/concepts/QueryOrderByExpression__.js +3 -0
  264. package/out/concepts/QueryOrderByExpression__.js.map +1 -1
  265. package/out/concepts/QuerySelectExpression__.d.ts +105 -16
  266. package/out/concepts/QuerySelectExpression__.js +102 -9
  267. package/out/concepts/QuerySelectExpression__.js.map +1 -1
  268. package/out/concepts/Rect__.d.ts +1 -0
  269. package/out/concepts/Rect__.js +3 -0
  270. package/out/concepts/Rect__.js.map +1 -1
  271. package/out/concepts/Return__.d.ts +6 -3
  272. package/out/concepts/Return__.js +15 -60
  273. package/out/concepts/Return__.js.map +1 -1
  274. package/out/concepts/Role__.d.ts +1 -0
  275. package/out/concepts/Role__.js +3 -0
  276. package/out/concepts/Role__.js.map +1 -1
  277. package/out/concepts/SelectMembers__.d.ts +1 -0
  278. package/out/concepts/SelectMembers__.js +6 -3
  279. package/out/concepts/SelectMembers__.js.map +1 -1
  280. package/out/concepts/Slot__.d.ts +17 -0
  281. package/out/concepts/Slot__.js +46 -0
  282. package/out/concepts/Slot__.js.map +1 -1
  283. package/out/concepts/SqlQueryComponent__.d.ts +1 -1
  284. package/out/concepts/SqlQueryComponent__.js +3 -46
  285. package/out/concepts/SqlQueryComponent__.js.map +1 -1
  286. package/out/concepts/Start__.d.ts +1 -0
  287. package/out/concepts/Start__.js +3 -0
  288. package/out/concepts/Start__.js.map +1 -1
  289. package/out/concepts/StringInterpolation__.d.ts +1 -0
  290. package/out/concepts/StringInterpolation__.js +17 -2
  291. package/out/concepts/StringInterpolation__.js.map +1 -1
  292. package/out/concepts/StringLiteral__.d.ts +1 -0
  293. package/out/concepts/StringLiteral__.js +9 -6
  294. package/out/concepts/StringLiteral__.js.map +1 -1
  295. package/out/concepts/StructureProperty__.d.ts +9 -3
  296. package/out/concepts/StructureProperty__.js +21 -57
  297. package/out/concepts/StructureProperty__.js.map +1 -1
  298. package/out/concepts/Structure__.d.ts +1 -0
  299. package/out/concepts/Structure__.js +3 -0
  300. package/out/concepts/Structure__.js.map +1 -1
  301. package/out/concepts/SwitchCase__.d.ts +1 -0
  302. package/out/concepts/SwitchCase__.js +5 -2
  303. package/out/concepts/SwitchCase__.js.map +1 -1
  304. package/out/concepts/SwitchStatement__.d.ts +1 -0
  305. package/out/concepts/SwitchStatement__.js +3 -0
  306. package/out/concepts/SwitchStatement__.js.map +1 -1
  307. package/out/concepts/Theme__.d.ts +1 -0
  308. package/out/concepts/Theme__.js +3 -0
  309. package/out/concepts/Theme__.js.map +1 -1
  310. package/out/concepts/Transactional__.d.ts +6 -0
  311. package/out/concepts/Transactional__.js +9 -0
  312. package/out/concepts/Transactional__.js.map +1 -1
  313. package/out/concepts/TypeAnnotation__.d.ts +13 -3
  314. package/out/concepts/TypeAnnotation__.js +160 -20
  315. package/out/concepts/TypeAnnotation__.js.map +1 -1
  316. package/out/concepts/TypeParam__.d.ts +1 -0
  317. package/out/concepts/TypeParam__.js +3 -0
  318. package/out/concepts/TypeParam__.js.map +1 -1
  319. package/out/concepts/UnaryExpression__.d.ts +1 -0
  320. package/out/concepts/UnaryExpression__.js +3 -0
  321. package/out/concepts/UnaryExpression__.js.map +1 -1
  322. package/out/concepts/Unparsed__.d.ts +1 -0
  323. package/out/concepts/Unparsed__.js +3 -0
  324. package/out/concepts/Unparsed__.js.map +1 -1
  325. package/out/concepts/UseComponent__.d.ts +1 -0
  326. package/out/concepts/UseComponent__.js +3 -0
  327. package/out/concepts/UseComponent__.js.map +1 -1
  328. package/out/concepts/ValidationRule__.d.ts +2 -0
  329. package/out/concepts/ValidationRule__.js +57 -1
  330. package/out/concepts/ValidationRule__.js.map +1 -1
  331. package/out/concepts/Variable__.d.ts +6 -3
  332. package/out/concepts/Variable__.js +16 -61
  333. package/out/concepts/Variable__.js.map +1 -1
  334. package/out/concepts/ViewBlock__.d.ts +35 -0
  335. package/out/concepts/ViewBlock__.js +85 -0
  336. package/out/concepts/ViewBlock__.js.map +1 -0
  337. package/out/concepts/ViewComponent__.d.ts +93 -0
  338. package/out/concepts/ViewComponent__.js +114 -0
  339. package/out/concepts/ViewComponent__.js.map +1 -1
  340. package/out/concepts/ViewElement__.d.ts +8 -0
  341. package/out/concepts/ViewElement__.js +79 -11
  342. package/out/concepts/ViewElement__.js.map +1 -1
  343. package/out/concepts/View__.d.ts +10 -3
  344. package/out/concepts/View__.js +77 -16
  345. package/out/concepts/View__.js.map +1 -1
  346. package/out/concepts/WhileStatement__.d.ts +1 -0
  347. package/out/concepts/WhileStatement__.js +3 -0
  348. package/out/concepts/WhileStatement__.js.map +1 -1
  349. package/out/concepts/basics/stdlib/nasl.auth.js +1 -1
  350. package/out/concepts/basics/stdlib/nasl.auth.js.map +1 -1
  351. package/out/concepts/basics/stdlib/nasl.collection.js +7 -2
  352. package/out/concepts/basics/stdlib/nasl.collection.js.map +1 -1
  353. package/out/concepts/basics/stdlib/nasl.configuration.js +3 -0
  354. package/out/concepts/basics/stdlib/nasl.configuration.js.map +1 -1
  355. package/out/concepts/basics/stdlib/nasl.core.d.ts +2 -0
  356. package/out/concepts/basics/stdlib/nasl.core.js +34 -0
  357. package/out/concepts/basics/stdlib/nasl.core.js.map +1 -1
  358. package/out/concepts/basics/stdlib/nasl.interface.js +1 -1
  359. package/out/concepts/basics/stdlib/nasl.interface.js.map +1 -1
  360. package/out/concepts/basics/stdlib/nasl.logging.js +5 -0
  361. package/out/concepts/basics/stdlib/nasl.logging.js.map +1 -1
  362. package/out/concepts/basics/stdlib/nasl.process.js +6 -6
  363. package/out/concepts/basics/stdlib/nasl.process.js.map +1 -1
  364. package/out/concepts/basics/stdlib/nasl.ui.js +73 -43
  365. package/out/concepts/basics/stdlib/nasl.ui.js.map +1 -1
  366. package/out/concepts/basics/stdlib/nasl.util.js +293 -36
  367. package/out/concepts/basics/stdlib/nasl.util.js.map +1 -1
  368. package/out/concepts/basics/stdlib/nasl.validation.js +13 -13
  369. package/out/concepts/basics/stdlib/nasl.validation.js.map +1 -1
  370. package/out/concepts/basics/types/coreTypeList.js +1 -5
  371. package/out/concepts/basics/types/coreTypeList.js.map +1 -1
  372. package/out/concepts/basics/types/index.d.ts +1 -0
  373. package/out/concepts/basics/types/index.js +3 -1
  374. package/out/concepts/basics/types/index.js.map +1 -1
  375. package/out/concepts/index__.d.ts +13 -0
  376. package/out/concepts/index__.js +13 -0
  377. package/out/concepts/index__.js.map +1 -1
  378. package/out/decorators/index.js +3 -3
  379. package/out/decorators/index.js.map +1 -1
  380. package/out/enums/KEYWORDS.d.ts +1 -0
  381. package/out/enums/KEYWORDS.js +17 -1
  382. package/out/enums/KEYWORDS.js.map +1 -1
  383. package/out/generator/genBundleFiles.d.ts +6 -3
  384. package/out/generator/genBundleFiles.js +96 -228
  385. package/out/generator/genBundleFiles.js.map +1 -1
  386. package/out/generator/genMetaData.d.ts +2 -11
  387. package/out/generator/genMetaData.js +185 -51
  388. package/out/generator/genMetaData.js.map +1 -1
  389. package/out/generator/genReleaseBody.d.ts +21 -4
  390. package/out/generator/genReleaseBody.js +173 -54
  391. package/out/generator/genReleaseBody.js.map +1 -1
  392. package/out/generator/icestark.d.ts +2 -0
  393. package/out/generator/icestark.js +48 -0
  394. package/out/generator/icestark.js.map +1 -0
  395. package/out/generator/index.d.ts +1 -0
  396. package/out/generator/index.js +1 -0
  397. package/out/generator/index.js.map +1 -1
  398. package/out/generator/microApp.d.ts +2 -0
  399. package/out/generator/microApp.js +35 -0
  400. package/out/generator/microApp.js.map +1 -0
  401. package/out/generator/permission.d.ts +10 -0
  402. package/out/generator/permission.js +230 -0
  403. package/out/generator/permission.js.map +1 -0
  404. package/out/generator/qiankun.d.ts +2 -0
  405. package/out/generator/qiankun.js +52 -0
  406. package/out/generator/qiankun.js.map +1 -0
  407. package/out/index.d.ts +2 -1
  408. package/out/index.js +5 -1
  409. package/out/index.js.map +1 -1
  410. package/out/manager/stepRecorder.d.ts +20 -0
  411. package/out/manager/stepRecorder.js +110 -0
  412. package/out/manager/stepRecorder.js.map +1 -0
  413. package/out/sentry/index.d.ts +29 -0
  414. package/out/sentry/index.js +111 -0
  415. package/out/sentry/index.js.map +1 -0
  416. package/out/server/entity2LogicNamespace.js +72 -10
  417. package/out/server/entity2LogicNamespace.js.map +1 -1
  418. package/out/server/extendBaseNode.js +123 -22
  419. package/out/server/extendBaseNode.js.map +1 -1
  420. package/out/server/formatTsUtils.d.ts +3 -3
  421. package/out/server/formatTsUtils.js +195 -60
  422. package/out/server/formatTsUtils.js.map +1 -1
  423. package/out/server/getLogics.d.ts +3 -2
  424. package/out/server/getLogics.js +74 -17
  425. package/out/server/getLogics.js.map +1 -1
  426. package/out/server/getMemberIdentifier.d.ts +1 -0
  427. package/out/server/getMemberIdentifier.js +35 -7
  428. package/out/server/getMemberIdentifier.js.map +1 -1
  429. package/out/server/getProcesses.js +1 -1
  430. package/out/server/getProcesses.js.map +1 -1
  431. package/out/server/index.js +1 -0
  432. package/out/server/index.js.map +1 -1
  433. package/out/server/naslServer.d.ts +17 -5
  434. package/out/server/naslServer.js +1323 -188
  435. package/out/server/naslServer.js.map +1 -1
  436. package/out/server/process2LogicNamespace.js +8 -0
  437. package/out/server/process2LogicNamespace.js.map +1 -1
  438. package/out/server/translator.js +166 -30
  439. package/out/server/translator.js.map +1 -1
  440. package/out/service/creator/add.configs.js +6 -0
  441. package/out/service/creator/add.configs.js.map +1 -1
  442. package/out/service/creator/errHandles.js +5 -0
  443. package/out/service/creator/errHandles.js.map +1 -1
  444. package/out/service/creator/index.js +2 -0
  445. package/out/service/creator/index.js.map +1 -1
  446. package/out/service/datasource/api.d.ts +12 -0
  447. package/out/service/datasource/api.js +14 -0
  448. package/out/service/datasource/api.js.map +1 -0
  449. package/out/service/datasource/index.d.ts +2 -0
  450. package/out/service/datasource/index.js +10 -0
  451. package/out/service/datasource/index.js.map +1 -0
  452. package/out/service/storage/api.d.ts +27 -0
  453. package/out/service/storage/api.js +19 -0
  454. package/out/service/storage/api.js.map +1 -1
  455. package/out/service/storage/init.d.ts +44 -1
  456. package/out/service/storage/init.js +270 -38
  457. package/out/service/storage/init.js.map +1 -1
  458. package/out/service/storage/service.d.ts +12 -1
  459. package/out/service/storage/service.js +32 -1
  460. package/out/service/storage/service.js.map +1 -1
  461. package/out/templator/genCallComponentLogic.d.ts +1 -1
  462. package/out/templator/genCallComponentLogic.js.map +1 -1
  463. package/out/templator/genCreateBlock.js +7 -4
  464. package/out/templator/genCreateBlock.js.map +1 -1
  465. package/out/templator/genCurdEditMultipleKeyBlock.d.ts +7 -1
  466. package/out/templator/genCurdEditMultipleKeyBlock.js +122 -8
  467. package/out/templator/genCurdEditMultipleKeyBlock.js.map +1 -1
  468. package/out/templator/genCurdMultipleKeyBlock.js +6 -8
  469. package/out/templator/genCurdMultipleKeyBlock.js.map +1 -1
  470. package/out/templator/genEditTableBlock.js +52 -25
  471. package/out/templator/genEditTableBlock.js.map +1 -1
  472. package/out/templator/genGetBlock.js +4 -3
  473. package/out/templator/genGetBlock.js.map +1 -1
  474. package/out/templator/genGridViewBlock.js +18 -16
  475. package/out/templator/genGridViewBlock.js.map +1 -1
  476. package/out/templator/genListViewBlock.js +12 -6
  477. package/out/templator/genListViewBlock.js.map +1 -1
  478. package/out/templator/genQueryComponent.js +23 -9
  479. package/out/templator/genQueryComponent.js.map +1 -1
  480. package/out/templator/genSelectBlock.d.ts +12 -1
  481. package/out/templator/genSelectBlock.js +273 -2
  482. package/out/templator/genSelectBlock.js.map +1 -1
  483. package/out/templator/genTableBlock.js +10 -14
  484. package/out/templator/genTableBlock.js.map +1 -1
  485. package/out/templator/genUpdateBlock.js +9 -4
  486. package/out/templator/genUpdateBlock.js.map +1 -1
  487. package/out/templator/utils.d.ts +19 -33
  488. package/out/templator/utils.js +11 -8
  489. package/out/templator/utils.js.map +1 -1
  490. package/out/translator/index.js +4 -1
  491. package/out/translator/index.js.map +1 -1
  492. package/out/utils/traverse.js +8 -2
  493. package/out/utils/traverse.js.map +1 -1
  494. package/package.json +2 -2
  495. package/sandbox/stdlib/nasl.auth.ts +1 -1
  496. package/sandbox/stdlib/nasl.core.ts +6 -0
  497. package/sandbox/stdlib/nasl.logging.ts +4 -4
  498. package/sandbox/stdlib/nasl.util.ts +16 -6
  499. package/src/automate/template/myProcess.js +1 -1
  500. package/src/bak/translator.js +4 -1
  501. package/src/common/BaseNode.ts +1 -0
  502. package/src/common/Command.ts +4 -0
  503. package/src/concepts/AnonymousFunction__.ts +48 -2
  504. package/src/concepts/App__.ts +140 -41
  505. package/src/concepts/Assignee__.ts +4 -3
  506. package/src/concepts/BatchAssignment__.ts +111 -51
  507. package/src/concepts/BindAttribute__.ts +9 -2
  508. package/src/concepts/CallFunction__.ts +65 -31
  509. package/src/concepts/CallInterface__.ts +6 -22
  510. package/src/concepts/CallLogic__.ts +90 -88
  511. package/src/concepts/CallQueryComponent__.ts +4 -1
  512. package/src/concepts/DataSource__.ts +56 -1
  513. package/src/concepts/Destination__.ts +92 -22
  514. package/src/concepts/ForEachStatement__.ts +2 -0
  515. package/src/concepts/Identifier__.ts +18 -7
  516. package/src/concepts/LogicItem__.ts +1 -1
  517. package/src/concepts/Logic__.ts +54 -39
  518. package/src/concepts/Match__.ts +12 -8
  519. package/src/concepts/NewComposite__.ts +1354 -0
  520. package/src/concepts/NewList__.ts +445 -0
  521. package/src/concepts/NewMap__.ts +679 -0
  522. package/src/concepts/New__.ts +73 -0
  523. package/src/concepts/OqlQueryComponent__.ts +2 -0
  524. package/src/concepts/Param__.ts +238 -199
  525. package/src/concepts/ProcessElement__.ts +32 -10
  526. package/src/concepts/ProcessOutcome__.ts +1 -1
  527. package/src/concepts/ProcessOutcomes__.ts +90 -0
  528. package/src/concepts/Return__.ts +4 -1
  529. package/src/concepts/SelectMembers__.ts +3 -3
  530. package/src/concepts/StringInterpolation__.ts +21 -11
  531. package/src/concepts/TypeAnnotation__.ts +71 -50
  532. package/src/concepts/ValidationRule__.ts +19 -1
  533. package/src/concepts/Variable__.ts +4 -1
  534. package/src/concepts/ViewElement__.ts +24 -8
  535. package/src/concepts/View__.ts +16 -2
  536. package/src/concepts/basics/stdlib/nasl.auth.ts +1 -1
  537. package/src/concepts/basics/stdlib/nasl.logging.ts +5 -0
  538. package/src/concepts/basics/stdlib/nasl.ui.ts +2 -0
  539. package/src/concepts/basics/stdlib/nasl.util.ts +153 -17
  540. package/src/concepts/index__.ts +5 -0
  541. package/src/enums/KEYWORDS.ts +1 -0
  542. package/src/generator/genBundleFiles.ts +44 -220
  543. package/src/generator/genMetaData.ts +177 -77
  544. package/src/generator/genReleaseBody.ts +30 -5
  545. package/src/generator/index.ts +1 -0
  546. package/src/generator/permission.ts +271 -0
  547. package/src/index.ts +1 -1
  548. package/src/server/entity2LogicNamespace.ts +70 -10
  549. package/src/server/extendBaseNode.ts +10 -21
  550. package/src/server/formatTsUtils.ts +36 -46
  551. package/src/server/getLogics.ts +13 -1
  552. package/src/server/getMemberIdentifier.ts +1 -1
  553. package/src/server/getProcesses.ts +1 -1
  554. package/src/server/naslServer.ts +184 -42
  555. package/src/server/process2LogicNamespace.ts +8 -0
  556. package/src/server/translator.ts +93 -9
  557. package/src/service/creator/add.configs.js +4 -0
  558. package/src/service/datasource/api.js +11 -0
  559. package/src/service/datasource/index.js +6 -0
  560. package/src/service/storage/init.ts +9 -2
  561. package/src/service/video/VideoTranscribe.js +1 -0
  562. package/src/templator/genEditTableBlock.ts +8 -16
  563. package/src/templator/genGetBlock.ts +18 -19
  564. package/src/templator/genGridViewBlock.ts +18 -18
  565. package/src/templator/genListViewBlock.ts +8 -11
  566. package/src/templator/genTableBlock.ts +6 -10
  567. package/ts-worker/lib/tsserver.js +11 -1
  568. package/out/automate/engine/2.14-components.d.ts +0 -1115
  569. package/out/automate/engine/2.14-components.js +0 -1087
  570. package/out/automate/engine/2.14-components.js.map +0 -1
  571. package/out/concepts/ConstructArgument__.d.ts +0 -40
  572. package/out/concepts/ConstructArgument__.js.map +0 -1
  573. package/out/concepts/Construct__.d.ts +0 -189
  574. package/out/concepts/Construct__.js +0 -340
  575. package/out/concepts/Construct__.js.map +0 -1
  576. package/out/concepts/MatchExpression__.d.ts +0 -97
  577. package/out/concepts/MatchExpression__.js +0 -281
  578. package/out/concepts/MatchExpression__.js.map +0 -1
  579. package/out/templator/sql-parser/index.d.ts +0 -1
  580. package/out/templator/sql-parser/index.js +0 -228
  581. package/out/templator/sql-parser/index.js.map +0 -1
  582. package/out/templator/sql-parser/parser.js +0 -26664
  583. package/out/templator/sql-parser/parser.js.map +0 -1
  584. package/src/automate/engine/dist/index.dev.js +0 -517
  585. package/src/common/dist/BaseNode.js +0 -1101
  586. package/src/concepts/basics/stdlib/dist/reference2TypeAnnotationList.js +0 -24
  587. package/src/concepts/dist/Anchor__.js +0 -179
  588. package/src/concepts/dist/Assignment__.js +0 -301
  589. package/src/concepts/dist/CallFunction__.js +0 -473
  590. package/src/concepts/dist/CallInterface__.js +0 -533
  591. package/src/concepts/dist/CallLogic__.js +0 -864
  592. package/src/concepts/dist/ForEachStatement__.js +0 -426
  593. package/src/concepts/dist/MatchCase__.js +0 -587
  594. package/src/concepts/dist/MemberExpression__.js +0 -348
  595. package/src/concepts/dist/Param__.js +0 -537
  596. package/src/concepts/dist/Return__.js +0 -493
  597. package/src/generator/dist/genBundleFiles.js +0 -414
  598. package/src/server/dist/formatTsUtils.js +0 -683
  599. package/src/server/dist/naslServer.js +0 -3396
  600. package/src/service/storage/dist/init.js +0 -541
  601. package/ts-worker/dist/webpack.config.dev.js +0 -104
  602. package/ts-worker/lib/dist/tsserver.dev.js +0 -22953
  603. package/ts-worker/sources/lib/dist/tsserver.dev.js +0 -22912
@@ -0,0 +1,679 @@
1
+ import { TranslatorState, shiftState, withSourceMap } from '../translator';
2
+ import { ElementToVueOptions } from './ViewElement__';
3
+ //================================================================================
4
+ // 从这里开始到结尾注释之间的代码由 NASL Workbench 自动生成,请不手动修改!
5
+ // ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
6
+ //================================================================================
7
+ import { EventPayload, Params } from '../common/EventEmitter';
8
+ import { concept, excludedInJSON, property } from '../decorators';
9
+
10
+ import * as utils from '../utils';
11
+ import { v4 as uuidv4 } from 'uuid';
12
+ import BaseNode from '../common/BaseNode';
13
+ import classMap from '../common/classMap';
14
+ import TypeAnnotation from './TypeAnnotation__';
15
+ import LogicItem from './LogicItem__';
16
+
17
+ /**
18
+ * map构造器
19
+ */
20
+ @concept('map构造器')
21
+ export class NewMap extends LogicItem {
22
+ /**
23
+ * 产品概念
24
+ */
25
+ @property()
26
+ concept: 'NewMap' = 'NewMap';
27
+
28
+ /**
29
+ * 类型
30
+ */
31
+ @property('TypeAnnotation')
32
+ typeAnnotation: TypeAnnotation = undefined;
33
+
34
+ /**
35
+ * 键
36
+ */
37
+ @property('LogicItem')
38
+ keys: Array<LogicItem> = [];
39
+
40
+ /**
41
+ * 键对应的值
42
+ */
43
+ @property('LogicItem')
44
+ values: Array<LogicItem> = [];
45
+
46
+
47
+
48
+ /**
49
+ * @param source 需要合并的部分参数
50
+ */
51
+ constructor(source?: Partial<NewMap>) {
52
+ source = Object.assign({}, NewMap.getDefaultOptions(), source);
53
+ super(source);
54
+ super.subConstructor(source);
55
+ }
56
+
57
+ static from(source: any, parentNode?: any, parentKey?: string): NewMap {
58
+ return super.from(source, parentNode, parentKey) as NewMap;
59
+ }
60
+
61
+
62
+ /**
63
+ * 设置类型
64
+ */
65
+ setTypeAnnotation(typeAnnotation: TypeAnnotation) {
66
+ typeAnnotation._delete();
67
+ const relationOptions = { parentNode: this, parentKey: 'typeAnnotation' };
68
+ Object.assign(typeAnnotation, relationOptions);
69
+ const object = {
70
+ typeAnnotation,
71
+ };
72
+ this.update({
73
+ ...object,
74
+ });
75
+ }
76
+
77
+ /**
78
+ * 设置键
79
+ */
80
+ setKeys(keys: Array<LogicItem>) {
81
+ const object = {
82
+ keys,
83
+ };
84
+ this.update({
85
+ ...object,
86
+ });
87
+ }
88
+
89
+ /**
90
+ * 设置键对应的值
91
+ */
92
+ setValues(values: Array<LogicItem>) {
93
+ const object = {
94
+ values,
95
+ };
96
+ this.update({
97
+ ...object,
98
+ });
99
+ }
100
+
101
+ getItemExistingNames(excludedList: Array<LogicItem> = []) {
102
+ const excludedSet = new Set(excludedList);
103
+ return ((this.keys as LogicItem[]) || []).filter((item) => !excludedSet.has(item)).map((item) => item.name);
104
+ }
105
+ getItemUniqueName(name = 'logicItem1') {
106
+ return utils.unique(name, this.getItemExistingNames(), undefined, false);
107
+ }
108
+
109
+ /**
110
+ * 插入逻辑项
111
+ * @internal
112
+ * @param name 逻辑项名称,如果不填会自动生成一个唯一名称
113
+ */
114
+ _insertItemInKeysAt(name: string, index: number): LogicItem;
115
+
116
+ /**
117
+ * 插入逻辑项
118
+ * @internal
119
+ * @param logicItemOptions 逻辑项参数
120
+ */
121
+ _insertItemInKeysAt(logicItemOptions: Partial<LogicItem>, index: number): LogicItem;
122
+
123
+ /**
124
+ * 插入逻辑项
125
+ * @internal
126
+ * @param logicItem 已有的逻辑项实例
127
+ */
128
+ _insertItemInKeysAt(logicItem: LogicItem, index: number): LogicItem;
129
+
130
+ _insertItemInKeysAt(options: string | Partial<LogicItem> | LogicItem, index: number) {
131
+ const logicItemOptions: any = {};
132
+ const relationOptions = { parentNode: this, parentKey: 'keys' };
133
+ let logicItem: LogicItem;
134
+ if (!options) {
135
+ logicItem = LogicItem.from({
136
+ ...logicItemOptions,
137
+ name: this.getItemUniqueName(),
138
+ }, this, 'keys');
139
+ } else if (typeof options === 'string') {
140
+ logicItem = LogicItem.from({
141
+ ...logicItemOptions,
142
+ name: options,
143
+ }, this, 'keys');
144
+ } else if (options instanceof LogicItem) {
145
+ options.ensureDelete(); // 同一实例不支持多处存在
146
+ logicItem = options;
147
+ Object.assign(logicItem, relationOptions);
148
+ } else {
149
+ logicItem = LogicItem.from({
150
+ ...logicItemOptions,
151
+ ...options,
152
+ }, this, 'keys');
153
+ }
154
+ this.keys.splice(index, 0, logicItem);
155
+ return logicItem;
156
+ }
157
+
158
+ /**
159
+ * 插入逻辑项
160
+ * @param name 逻辑项名称,如果不填会自动生成一个唯一名称
161
+ */
162
+ insertItemInKeysAt(name: string, index: number): LogicItem;
163
+
164
+ /**
165
+ * 插入逻辑项
166
+ * @param logicItemOptions 逻辑项参数
167
+ */
168
+ insertItemInKeysAt(logicItemOptions: Partial<LogicItem>, index: number): LogicItem;
169
+
170
+ /**
171
+ * 插入逻辑项
172
+ * @param logicItem 已有的逻辑项实例
173
+ */
174
+ insertItemInKeysAt(logicItem: LogicItem, index: number): LogicItem;
175
+
176
+ insertItemInKeysAt(options: string | Partial<LogicItem> | LogicItem, index: number) {
177
+ const node = this._insertItemInKeysAt(options as any, index);
178
+ node.create({
179
+ index,
180
+ parentNode: this,
181
+ parentKey: 'keys',
182
+ });
183
+ return node;
184
+ }
185
+
186
+ /**
187
+ * 添加逻辑项
188
+ * @internal
189
+ * @param name 逻辑项名称,如果不填会自动生成一个唯一名称
190
+ */
191
+ _addItemInKeys(name?: string): LogicItem;
192
+
193
+ /**
194
+ * 添加逻辑项
195
+ * @internal
196
+ * @param logicItemOptions 逻辑项参数
197
+ */
198
+ _addItemInKeys(logicItemOptions: Partial<LogicItem>): LogicItem;
199
+
200
+ /**
201
+ * 添加逻辑项
202
+ * @internal
203
+ * @param logicItem 已有的逻辑项实例
204
+ */
205
+ _addItemInKeys(logicItem: LogicItem): LogicItem;
206
+
207
+ _addItemInKeys(options?: string | Partial<LogicItem> | LogicItem) {
208
+ const index = this.keys.length;
209
+ return this._insertItemInKeysAt(options as any, index);
210
+ }
211
+
212
+ /**
213
+ * 添加逻辑项
214
+ * @internal
215
+ * @param name 逻辑项名称,如果不填会自动生成一个唯一名称
216
+ */
217
+ addItemInKeys(name?: string): LogicItem;
218
+
219
+ /**
220
+ * 添加逻辑项
221
+ * @param logicItemOptions 逻辑项参数
222
+ */
223
+ addItemInKeys(logicItemOptions: Partial<LogicItem>): LogicItem;
224
+
225
+ /**
226
+ * 添加逻辑项
227
+ * @param logicItem 已有的逻辑项实例
228
+ */
229
+ addItemInKeys(logicItem: LogicItem): LogicItem;
230
+
231
+ addItemInKeys(options?: string | Partial<LogicItem> | LogicItem) {
232
+ const node = this._addItemInKeys(options as any);
233
+ const index = this.keys.indexOf(node);
234
+ node.create({
235
+ index,
236
+ parentNode: this,
237
+ parentKey: 'keys',
238
+ });
239
+ return node;
240
+ }
241
+
242
+ /**
243
+ * 插入逻辑项
244
+ * @internal
245
+ * @param name 逻辑项名称,如果不填会自动生成一个唯一名称
246
+ */
247
+ _insertItemInValuesAt(name: string, index: number): LogicItem;
248
+
249
+ /**
250
+ * 插入逻辑项
251
+ * @internal
252
+ * @param logicItemOptions 逻辑项参数
253
+ */
254
+ _insertItemInValuesAt(logicItemOptions: Partial<LogicItem>, index: number): LogicItem;
255
+
256
+ /**
257
+ * 插入逻辑项
258
+ * @internal
259
+ * @param logicItem 已有的逻辑项实例
260
+ */
261
+ _insertItemInValuesAt(logicItem: LogicItem, index: number): LogicItem;
262
+
263
+ _insertItemInValuesAt(options: string | Partial<LogicItem> | LogicItem, index: number) {
264
+ const logicItemOptions: any = {};
265
+ const relationOptions = { parentNode: this, parentKey: 'values' };
266
+ let logicItem: LogicItem;
267
+ if (!options) {
268
+ logicItem = LogicItem.from({
269
+ ...logicItemOptions,
270
+ name: this.getItemUniqueName(),
271
+ }, this, 'values');
272
+ } else if (typeof options === 'string') {
273
+ logicItem = LogicItem.from({
274
+ ...logicItemOptions,
275
+ name: options,
276
+ }, this, 'values');
277
+ } else if (options instanceof LogicItem) {
278
+ options.ensureDelete(); // 同一实例不支持多处存在
279
+ logicItem = options;
280
+ Object.assign(logicItem, relationOptions);
281
+ } else {
282
+ logicItem = LogicItem.from({
283
+ ...logicItemOptions,
284
+ ...options,
285
+ }, this, 'values');
286
+ }
287
+ this.values.splice(index, 0, logicItem);
288
+ return logicItem;
289
+ }
290
+
291
+ /**
292
+ * 插入逻辑项
293
+ * @param name 逻辑项名称,如果不填会自动生成一个唯一名称
294
+ */
295
+ insertItemInValuesAt(name: string, index: number): LogicItem;
296
+
297
+ /**
298
+ * 插入逻辑项
299
+ * @param logicItemOptions 逻辑项参数
300
+ */
301
+ insertItemInValuesAt(logicItemOptions: Partial<LogicItem>, index: number): LogicItem;
302
+
303
+ /**
304
+ * 插入逻辑项
305
+ * @param logicItem 已有的逻辑项实例
306
+ */
307
+ insertItemInValuesAt(logicItem: LogicItem, index: number): LogicItem;
308
+
309
+ insertItemInValuesAt(options: string | Partial<LogicItem> | LogicItem, index: number) {
310
+ const node = this._insertItemInValuesAt(options as any, index);
311
+ node.create({
312
+ index,
313
+ parentNode: this,
314
+ parentKey: 'values',
315
+ });
316
+ return node;
317
+ }
318
+
319
+ /**
320
+ * 添加逻辑项
321
+ * @internal
322
+ * @param name 逻辑项名称,如果不填会自动生成一个唯一名称
323
+ */
324
+ _addItemInValues(name?: string): LogicItem;
325
+
326
+ /**
327
+ * 添加逻辑项
328
+ * @internal
329
+ * @param logicItemOptions 逻辑项参数
330
+ */
331
+ _addItemInValues(logicItemOptions: Partial<LogicItem>): LogicItem;
332
+
333
+ /**
334
+ * 添加逻辑项
335
+ * @internal
336
+ * @param logicItem 已有的逻辑项实例
337
+ */
338
+ _addItemInValues(logicItem: LogicItem): LogicItem;
339
+
340
+ _addItemInValues(options?: string | Partial<LogicItem> | LogicItem) {
341
+ const index = this.values.length;
342
+ return this._insertItemInValuesAt(options as any, index);
343
+ }
344
+
345
+ /**
346
+ * 添加逻辑项
347
+ * @internal
348
+ * @param name 逻辑项名称,如果不填会自动生成一个唯一名称
349
+ */
350
+ addItemInValues(name?: string): LogicItem;
351
+
352
+ /**
353
+ * 添加逻辑项
354
+ * @param logicItemOptions 逻辑项参数
355
+ */
356
+ addItemInValues(logicItemOptions: Partial<LogicItem>): LogicItem;
357
+
358
+ /**
359
+ * 添加逻辑项
360
+ * @param logicItem 已有的逻辑项实例
361
+ */
362
+ addItemInValues(logicItem: LogicItem): LogicItem;
363
+
364
+ addItemInValues(options?: string | Partial<LogicItem> | LogicItem) {
365
+ const node = this._addItemInValues(options as any);
366
+ const index = this.values.indexOf(node);
367
+ node.create({
368
+ index,
369
+ parentNode: this,
370
+ parentKey: 'values',
371
+ });
372
+ return node;
373
+ }
374
+
375
+
376
+
377
+
378
+ /**
379
+ * 删除类型标注
380
+ * @param name 类型标注名称
381
+ */
382
+ removeTypeAnnotation(name: string): void;
383
+
384
+ /**
385
+ * 删除类型标注
386
+ * @param typeAnnotation 已有的类型标注实例
387
+ */
388
+ removeTypeAnnotation(typeAnnotation: TypeAnnotation): void;
389
+
390
+ removeTypeAnnotation(options: string | TypeAnnotation) {
391
+ let typeAnnotation: TypeAnnotation;
392
+ if (typeof options === 'string') {
393
+ typeAnnotation = this.typeAnnotation;
394
+ if (!typeAnnotation) {
395
+ throw new Error('找不到类型标注 ' + options);
396
+ }
397
+ } else {
398
+ typeAnnotation = options;
399
+ }
400
+ return typeAnnotation.delete();
401
+ }
402
+
403
+ __removeTypeAnnotation(typeAnnotation: TypeAnnotation) {
404
+ const parentKey = typeAnnotation.parentKey;
405
+ const params: Params = {
406
+ parentNode: this,
407
+ parentKey,
408
+ index: -1,
409
+ object: null,
410
+ oldObject: typeAnnotation,
411
+ };
412
+ if (parentKey) {
413
+ params.parentKey = parentKey;
414
+ if (Array.isArray((this as any)[parentKey])) {
415
+ const index = (this as any)[parentKey].indexOf(typeAnnotation);
416
+ ~index && (this as any)[parentKey].splice(index, 1);
417
+ params.index = index;
418
+ } else if ((this as any)[parentKey] === typeAnnotation) {
419
+ params.index = 0;
420
+ (this as any)[parentKey] = undefined;
421
+ }
422
+ }
423
+ return params;
424
+ }
425
+
426
+
427
+
428
+ /**
429
+ * 删除逻辑项
430
+ * @param name 逻辑项名称
431
+ */
432
+ removeItemInKeys(name: string): void;
433
+
434
+ /**
435
+ * 删除逻辑项
436
+ * @param logicItem 已有的逻辑项实例
437
+ */
438
+ removeItemInKeys(logicItem: LogicItem): void;
439
+
440
+ removeItemInKeys(options: string | LogicItem) {
441
+ let logicItem: LogicItem;
442
+ if (typeof options === 'string') {
443
+ logicItem = (this.keys as LogicItem[]).find((item) => item.name === options);
444
+ if (!logicItem) {
445
+ throw new Error('找不到逻辑项 ' + options);
446
+ }
447
+ } else {
448
+ logicItem = options;
449
+ }
450
+ return logicItem.delete();
451
+ }
452
+
453
+
454
+
455
+ /**
456
+ * 删除逻辑项
457
+ * @param name 逻辑项名称
458
+ */
459
+ removeItemInValues(name: string): void;
460
+
461
+ /**
462
+ * 删除逻辑项
463
+ * @param logicItem 已有的逻辑项实例
464
+ */
465
+ removeItemInValues(logicItem: LogicItem): void;
466
+
467
+ removeItemInValues(options: string | LogicItem) {
468
+ let logicItem: LogicItem;
469
+ if (typeof options === 'string') {
470
+ logicItem = (this.values as LogicItem[]).find((item) => item.name === options);
471
+ if (!logicItem) {
472
+ throw new Error('找不到逻辑项 ' + options);
473
+ }
474
+ } else {
475
+ logicItem = options;
476
+ }
477
+ return logicItem.delete();
478
+ }
479
+
480
+ __removeLogicItem(logicItem: LogicItem) {
481
+ const parentKey = logicItem.parentKey;
482
+ const params: Params = {
483
+ parentNode: this,
484
+ parentKey,
485
+ index: -1,
486
+ object: null,
487
+ oldObject: logicItem,
488
+ };
489
+ if (parentKey) {
490
+ params.parentKey = parentKey;
491
+ if (Array.isArray((this as any)[parentKey])) {
492
+ const index = (this as any)[parentKey].indexOf(logicItem);
493
+ ~index && (this as any)[parentKey].splice(index, 1);
494
+ params.index = index;
495
+ } else if ((this as any)[parentKey] === logicItem) {
496
+ params.index = 0;
497
+ (this as any)[parentKey] = undefined;
498
+ }
499
+ }
500
+ return params;
501
+ }
502
+
503
+ //================================================================================
504
+ // ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
505
+ // 自动生成的代码已结束。下面可以手动编写。
506
+ //================================================================================
507
+ getIterator() {
508
+ return this.keys.map((k, idx) => ({
509
+ key: k,
510
+ value: this.values[idx],
511
+ uid: uuidv4(),
512
+ }));
513
+ }
514
+
515
+ addPair() {
516
+ this.update({
517
+ keys: [...this.keys, undefined],
518
+ values: [...this.values, undefined],
519
+ })
520
+ }
521
+
522
+ removePair(idx: number) {
523
+ const k = this.keys.slice();
524
+ k.splice(idx, 1);
525
+ const v = this.values.slice();
526
+ v.splice(idx, 1);
527
+ this.update({
528
+ keys: k,
529
+ values: v,
530
+ })
531
+ }
532
+
533
+ toJS(state?: TranslatorState): string {
534
+ let code = '';
535
+ code += 'await (async () => {\n';
536
+ code += 'const obj = {};\n';
537
+ code += 'let k;\n';
538
+ this.keys.forEach((item, index) => {
539
+ const key: any = item;
540
+ const value: any = this.values[index];
541
+ code += `k = `;
542
+ code += `${key ? key.toJS(shiftState(state, code, { inline: true })) : undefined};\n`;
543
+ code += 'obj[k] = ';
544
+ code += `${value ? value.toJS(shiftState(state, code, { inline: true })) : undefined};\n`;
545
+ });
546
+ code += `return obj;\n`;
547
+ code += '})()';
548
+ return code;
549
+ }
550
+
551
+ @withSourceMap()
552
+ toEmbeddedTS(state?: TranslatorState): string {
553
+ let code = '';
554
+ if (this.typeAnnotation) {
555
+ const newConstructor = `nasl.util.New<${this.typeAnnotation.sortedTypeKey}>()`;
556
+ code += '(() => { \n';
557
+ // 方便ts报错检查
558
+ code += 'function __newComposite() {\n';
559
+ code += '\n';
560
+ this.keys.forEach((item, index) => {
561
+ const key = item;
562
+ code += `nasl.util.MapPut(${newConstructor}, `;
563
+ code += `${key ? key.toEmbeddedTS(shiftState(state, code, { inline: true })) : null}`;
564
+ code += ', null)\n';
565
+ });
566
+ this.values.forEach((item, index) => {
567
+ const value = this.values[index];
568
+ code += `nasl.util.MapPut(${newConstructor}, null, `;
569
+ code += `${value ? value.toEmbeddedTS(shiftState(state, code, { inline: true })) : null}`;
570
+ code += ')';
571
+ code += '\n';
572
+ });
573
+ code += `return ${newConstructor};\n`;
574
+ code += '};\n';
575
+
576
+ code += 'return __newComposite();\n';
577
+ code += '})()';
578
+ } else {
579
+ if (this.keys.some((key) => key) || this.values.some((value) => value)) {
580
+ code += '(() => { \n';
581
+ const valueTsArr: any = [];
582
+ let keyTs = 'null';
583
+ let valueTs = false;
584
+ let keyIndex = -1;
585
+ this.keys.forEach((key, index) => {
586
+ if (key) {
587
+ const ts = key.toEmbeddedTS(shiftState(state, code, { inline: true }));
588
+ if (keyIndex === -1 && !['__IDENTIFIER__', '__IDENTIFIER__()'].includes(ts)) {
589
+ keyIndex = index;
590
+ keyTs = ts;
591
+ }
592
+ }
593
+ });
594
+ this.values.forEach((item, index) => {
595
+ if (item)
596
+ valueTs = true;
597
+ code += 'nasl.core.ensureVoid(';
598
+ const ts = item ? item.toEmbeddedTS(shiftState(state, code, { inline: true })) : null;
599
+ valueTsArr.push(ts);
600
+ code += valueTsArr[index];
601
+ code += '); ';
602
+ });
603
+ code += '\n';
604
+ if (keyTs === 'null' || !valueTs) {
605
+ code += '__IDENTIFIER__;\n';
606
+ }
607
+ // 方便ts报错检查
608
+ code += 'function __newComposite() {\n';
609
+ this.keys.forEach((key: any) => {
610
+ if (!key)
611
+ return;
612
+ code += `nasl.core.compare2(${keyTs}, `;
613
+ code += key.toEmbeddedTS(shiftState(state, code, { inline: true }));
614
+ code += ');\n';
615
+ });
616
+ code += `return nasl.util.NewMap(`;
617
+ code += `${keyIndex === -1 ? 'null' : this.keys[keyIndex].toEmbeddedTS(shiftState(state, code, { inline: true }))}, ...[`;
618
+ valueTsArr.forEach((ts: any, index: number) => {
619
+ code += ['__IDENTIFIER__', '__IDENTIFIER__()'].includes(ts) ? null : ts;
620
+ if (index + 1 < this.values.length)
621
+ code += ', ';
622
+ });
623
+ code += ']);\n';
624
+
625
+ code += '};\n';
626
+
627
+ code += 'return __newComposite();\n';
628
+ code += '})()';
629
+ } else {
630
+ code += '(() => {\n';
631
+ code += '__IDENTIFIER__;\n';
632
+ code += `return nasl.util.NewMap(${null}, ${null})`;
633
+ code += '})()';
634
+ }
635
+ }
636
+ return code;
637
+ }
638
+
639
+ getInitCode(state?: TranslatorState): string {
640
+ let code = '';
641
+ if (this.keys.some((key) => key) || this.values.some((value) => value)) {
642
+ let keyBol = false;
643
+ code += `nasl.util.NewMap(`;
644
+ this.keys.forEach((key) => {
645
+ if (key && !keyBol) {
646
+ const ts = key.toEmbeddedTS(shiftState(state, code, { inline: true }));
647
+ if (!['__IDENTIFIER__', '__IDENTIFIER__()'].includes(ts)) {
648
+ keyBol = true;
649
+ code += ts;
650
+ }
651
+ }
652
+ });
653
+ if (!keyBol)
654
+ code += 'null';
655
+ code += `, ...[`;
656
+ this.values.forEach((item, index) => {
657
+ const ts = item ? item.toEmbeddedTS(shiftState(state, code, { inline: true })) : null;
658
+ code += ['__IDENTIFIER__', '__IDENTIFIER__()'].includes(ts) ? null : ts;
659
+ if (index + 1 < this.values.length)
660
+ code += ', ';
661
+ });
662
+ code += '])';
663
+ } else {
664
+ code += `nasl.util.NewMap(${null}, ${null})`;
665
+ }
666
+ return code;
667
+ }
668
+ //================================================================================
669
+ // 从这里开始到结尾注释之间的代码由 NASL Workbench 自动生成,请不手动修改!
670
+ // ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
671
+ //================================================================================
672
+ }
673
+
674
+ classMap.NewMap = NewMap;
675
+ export default NewMap;
676
+ //================================================================================
677
+ // ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
678
+ // 自动生成的代码已结束。下面可以手动编写。
679
+ //================================================================================