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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (347) hide show
  1. package/.nyc_output/943352aa-23df-44e0-863b-3dcd3e8bf57a.json +1 -0
  2. package/.nyc_output/processinfo/943352aa-23df-44e0-863b-3dcd3e8bf57a.json +1 -0
  3. package/.nyc_output/processinfo/index.json +1 -0
  4. package/coverage/base.css +224 -0
  5. package/coverage/block-navigation.js +87 -0
  6. package/coverage/cobertura-coverage.xml +72356 -0
  7. package/coverage/favicon.png +0 -0
  8. package/coverage/index.html +161 -0
  9. package/coverage/prettify.css +1 -0
  10. package/coverage/prettify.js +2 -0
  11. package/coverage/sort-arrow-sprite.png +0 -0
  12. package/coverage/sorter.js +196 -0
  13. package/coverage/src/automate/engine/index.html +116 -0
  14. package/coverage/src/automate/engine/utils.js.html +1414 -0
  15. package/coverage/src/bak/index.html +116 -0
  16. package/coverage/src/bak/translator.js.html +622 -0
  17. package/coverage/src/breakpoint/generator/AfterStartNode.ts.html +175 -0
  18. package/coverage/src/breakpoint/generator/BeforeEndNode.ts.html +169 -0
  19. package/coverage/src/breakpoint/generator/BreakpointNode.ts.html +1246 -0
  20. package/coverage/src/breakpoint/generator/CallbackNode.ts.html +145 -0
  21. package/coverage/src/breakpoint/generator/index.html +176 -0
  22. package/coverage/src/breakpoint/generator/index.ts.html +508 -0
  23. package/coverage/src/breakpoint/index.html +116 -0
  24. package/coverage/src/breakpoint/index.ts.html +94 -0
  25. package/coverage/src/breakpoint/shared/constants.ts.html +436 -0
  26. package/coverage/src/breakpoint/shared/index.html +176 -0
  27. package/coverage/src/breakpoint/shared/index.ts.html +94 -0
  28. package/coverage/src/breakpoint/shared/operations.ts.html +160 -0
  29. package/coverage/src/breakpoint/shared/socket.ts.html +1297 -0
  30. package/coverage/src/breakpoint/shared/utils.ts.html +1087 -0
  31. package/coverage/src/breakpoint/store/core.ts.html +1600 -0
  32. package/coverage/src/breakpoint/store/dock.ts.html +733 -0
  33. package/coverage/src/breakpoint/store/index.html +146 -0
  34. package/coverage/src/breakpoint/store/index.ts.html +91 -0
  35. package/coverage/src/common/BaseNode.ts.html +3874 -0
  36. package/coverage/src/common/Command.ts.html +310 -0
  37. package/coverage/src/common/EventEmitter.ts.html +370 -0
  38. package/coverage/src/common/Messager.ts.html +820 -0
  39. package/coverage/src/common/asyncFuncMap.ts.html +127 -0
  40. package/coverage/src/common/index.html +191 -0
  41. package/coverage/src/common/index.ts.html +94 -0
  42. package/coverage/src/concepts/Abort__.ts.html +328 -0
  43. package/coverage/src/concepts/Anchor__.ts.html +646 -0
  44. package/coverage/src/concepts/AnonymousFunction__.ts.html +2029 -0
  45. package/coverage/src/concepts/App__.ts.html +13252 -0
  46. package/coverage/src/concepts/Argument__.ts.html +964 -0
  47. package/coverage/src/concepts/Assignee__.ts.html +2236 -0
  48. package/coverage/src/concepts/AssignmentLine__.ts.html +409 -0
  49. package/coverage/src/concepts/Assignment__.ts.html +1123 -0
  50. package/coverage/src/concepts/Attribute__.ts.html +733 -0
  51. package/coverage/src/concepts/AuthInterface__.ts.html +367 -0
  52. package/coverage/src/concepts/AuthLogicForCallInterface__.ts.html +1984 -0
  53. package/coverage/src/concepts/AuthLogic__.ts.html +781 -0
  54. package/coverage/src/concepts/BackendVariable__.ts.html +1483 -0
  55. package/coverage/src/concepts/Backend__.ts.html +1165 -0
  56. package/coverage/src/concepts/BatchAssignment__.ts.html +3301 -0
  57. package/coverage/src/concepts/BinaryExpression__.ts.html +1441 -0
  58. package/coverage/src/concepts/BindAttribute__.ts.html +3835 -0
  59. package/coverage/src/concepts/BindDirective__.ts.html +1921 -0
  60. package/coverage/src/concepts/BindEvent__.ts.html +3406 -0
  61. package/coverage/src/concepts/BindStyle__.ts.html +1612 -0
  62. package/coverage/src/concepts/BooleanLiteral__.ts.html +418 -0
  63. package/coverage/src/concepts/CallAuthInterface__.ts.html +1615 -0
  64. package/coverage/src/concepts/CallConnector__.ts.html +922 -0
  65. package/coverage/src/concepts/CallFunction__.ts.html +2122 -0
  66. package/coverage/src/concepts/CallInterface__.ts.html +2719 -0
  67. package/coverage/src/concepts/CallLogic__.ts.html +4807 -0
  68. package/coverage/src/concepts/CallQueryComponent__.ts.html +5308 -0
  69. package/coverage/src/concepts/Comment__.ts.html +394 -0
  70. package/coverage/src/concepts/CompletionProperty__.ts.html +925 -0
  71. package/coverage/src/concepts/ConfigGroup__.ts.html +1105 -0
  72. package/coverage/src/concepts/ConfigPropertyValue__.ts.html +424 -0
  73. package/coverage/src/concepts/ConfigProperty__.ts.html +1348 -0
  74. package/coverage/src/concepts/Configuration__.ts.html +1027 -0
  75. package/coverage/src/concepts/Connection__.ts.html +1360 -0
  76. package/coverage/src/concepts/ConnectorTrigger__.ts.html +595 -0
  77. package/coverage/src/concepts/Connector__.ts.html +4255 -0
  78. package/coverage/src/concepts/Constant__.ts.html +913 -0
  79. package/coverage/src/concepts/DataSource__.ts.html +1771 -0
  80. package/coverage/src/concepts/DatabaseTypeAnnotation__.ts.html +331 -0
  81. package/coverage/src/concepts/Destination__.ts.html +2731 -0
  82. package/coverage/src/concepts/End__.ts.html +433 -0
  83. package/coverage/src/concepts/EntityIndex__.ts.html +787 -0
  84. package/coverage/src/concepts/EntityProperty__.ts.html +2668 -0
  85. package/coverage/src/concepts/Entity__.ts.html +2950 -0
  86. package/coverage/src/concepts/EnumItem__.ts.html +550 -0
  87. package/coverage/src/concepts/Enum__.ts.html +1231 -0
  88. package/coverage/src/concepts/Event__.ts.html +1084 -0
  89. package/coverage/src/concepts/ExternalDestination__.ts.html +1033 -0
  90. package/coverage/src/concepts/ForEachStatement__.ts.html +1957 -0
  91. package/coverage/src/concepts/FrontendLibrary__.ts.html +1711 -0
  92. package/coverage/src/concepts/FrontendVariable__.ts.html +292 -0
  93. package/coverage/src/concepts/Frontend__.ts.html +3961 -0
  94. package/coverage/src/concepts/Function__.ts.html +3598 -0
  95. package/coverage/src/concepts/Identifier__.ts.html +1057 -0
  96. package/coverage/src/concepts/IfStatement__.ts.html +1594 -0
  97. package/coverage/src/concepts/Integration__.ts.html +1228 -0
  98. package/coverage/src/concepts/InterfaceParam__.ts.html +1087 -0
  99. package/coverage/src/concepts/Interface__.ts.html +3394 -0
  100. package/coverage/src/concepts/JSBlock__.ts.html +421 -0
  101. package/coverage/src/concepts/JavaLogic__.ts.html +460 -0
  102. package/coverage/src/concepts/LogicItem__.ts.html +1171 -0
  103. package/coverage/src/concepts/Logic__.ts.html +7408 -0
  104. package/coverage/src/concepts/MatchCase__.ts.html +2929 -0
  105. package/coverage/src/concepts/Match__.ts.html +2455 -0
  106. package/coverage/src/concepts/MemberExpression__.ts.html +1726 -0
  107. package/coverage/src/concepts/MicroApp__.ts.html +436 -0
  108. package/coverage/src/concepts/Module__.ts.html +9220 -0
  109. package/coverage/src/concepts/MsgTriggerEvent__.ts.html +1045 -0
  110. package/coverage/src/concepts/MsgTriggerLauncher__.ts.html +1018 -0
  111. package/coverage/src/concepts/Namespace__.ts.html +7942 -0
  112. package/coverage/src/concepts/NewComposite__.ts.html +4729 -0
  113. package/coverage/src/concepts/NewList__.ts.html +1618 -0
  114. package/coverage/src/concepts/NewMap__.ts.html +2326 -0
  115. package/coverage/src/concepts/New__.ts.html +289 -0
  116. package/coverage/src/concepts/NullLiteral__.ts.html +349 -0
  117. package/coverage/src/concepts/NumericLiteral__.ts.html +676 -0
  118. package/coverage/src/concepts/OqlQueryComponent__.ts.html +1141 -0
  119. package/coverage/src/concepts/OverriddenLogic__.ts.html +6817 -0
  120. package/coverage/src/concepts/Param__.ts.html +1726 -0
  121. package/coverage/src/concepts/Point__.ts.html +331 -0
  122. package/coverage/src/concepts/ProcessComponent__.ts.html +1666 -0
  123. package/coverage/src/concepts/ProcessElement__.ts.html +5884 -0
  124. package/coverage/src/concepts/ProcessOutcome__.ts.html +352 -0
  125. package/coverage/src/concepts/ProcessOutcomes__.ts.html +343 -0
  126. package/coverage/src/concepts/Process__.ts.html +4768 -0
  127. package/coverage/src/concepts/QueryAggregateExpression__.ts.html +568 -0
  128. package/coverage/src/concepts/QueryFieldExpression__.ts.html +583 -0
  129. package/coverage/src/concepts/QueryFromExpression__.ts.html +910 -0
  130. package/coverage/src/concepts/QueryGroupByExpression__.ts.html +559 -0
  131. package/coverage/src/concepts/QueryJoinExpression__.ts.html +1567 -0
  132. package/coverage/src/concepts/QueryLimitExpression__.ts.html +637 -0
  133. package/coverage/src/concepts/QueryOrderByExpression__.ts.html +679 -0
  134. package/coverage/src/concepts/QuerySelectExpression__.ts.html +1714 -0
  135. package/coverage/src/concepts/Rect__.ts.html +373 -0
  136. package/coverage/src/concepts/Return__.ts.html +1312 -0
  137. package/coverage/src/concepts/Role__.ts.html +601 -0
  138. package/coverage/src/concepts/SelectMembers__.ts.html +1246 -0
  139. package/coverage/src/concepts/Slot__.ts.html +628 -0
  140. package/coverage/src/concepts/SqlQueryComponent__.ts.html +982 -0
  141. package/coverage/src/concepts/Start__.ts.html +304 -0
  142. package/coverage/src/concepts/StringInterpolation__.ts.html +1129 -0
  143. package/coverage/src/concepts/StringLiteral__.ts.html +505 -0
  144. package/coverage/src/concepts/StructureProperty__.ts.html +1132 -0
  145. package/coverage/src/concepts/Structure__.ts.html +2092 -0
  146. package/coverage/src/concepts/SwitchCase__.ts.html +1174 -0
  147. package/coverage/src/concepts/SwitchStatement__.ts.html +877 -0
  148. package/coverage/src/concepts/Theme__.ts.html +358 -0
  149. package/coverage/src/concepts/Transactional__.ts.html +628 -0
  150. package/coverage/src/concepts/TriggerEvent__.ts.html +1012 -0
  151. package/coverage/src/concepts/TriggerLauncher__.ts.html +775 -0
  152. package/coverage/src/concepts/TypeAnnotation__.ts.html +3718 -0
  153. package/coverage/src/concepts/TypeParam__.ts.html +319 -0
  154. package/coverage/src/concepts/UnaryExpression__.ts.html +697 -0
  155. package/coverage/src/concepts/Unparsed__.ts.html +394 -0
  156. package/coverage/src/concepts/UseComponent__.ts.html +331 -0
  157. package/coverage/src/concepts/ValidationRule__.ts.html +1840 -0
  158. package/coverage/src/concepts/Variable__.ts.html +1489 -0
  159. package/coverage/src/concepts/ViewBlock__.ts.html +352 -0
  160. package/coverage/src/concepts/ViewComponent__.ts.html +4180 -0
  161. package/coverage/src/concepts/ViewElement__.ts.html +8803 -0
  162. package/coverage/src/concepts/View__.ts.html +8620 -0
  163. package/coverage/src/concepts/WhileStatement__.ts.html +1063 -0
  164. package/coverage/src/concepts/basics/stdlib/index.html +356 -0
  165. package/coverage/src/concepts/basics/stdlib/index.ts.html +208 -0
  166. package/coverage/src/concepts/basics/stdlib/nasl.auth.ts.html +565 -0
  167. package/coverage/src/concepts/basics/stdlib/nasl.browser.ts.html +517 -0
  168. package/coverage/src/concepts/basics/stdlib/nasl.collection.ts.html +226 -0
  169. package/coverage/src/concepts/basics/stdlib/nasl.configuration.ts.html +172 -0
  170. package/coverage/src/concepts/basics/stdlib/nasl.core.ts.html +214 -0
  171. package/coverage/src/concepts/basics/stdlib/nasl.event.ts.html +145 -0
  172. package/coverage/src/concepts/basics/stdlib/nasl.http.ts.html +589 -0
  173. package/coverage/src/concepts/basics/stdlib/nasl.interface.ts.html +214 -0
  174. package/coverage/src/concepts/basics/stdlib/nasl.io.ts.html +229 -0
  175. package/coverage/src/concepts/basics/stdlib/nasl.logging.ts.html +268 -0
  176. package/coverage/src/concepts/basics/stdlib/nasl.process.ts.html +1999 -0
  177. package/coverage/src/concepts/basics/stdlib/nasl.ui.ts.html +3259 -0
  178. package/coverage/src/concepts/basics/stdlib/nasl.util.ts.html +6844 -0
  179. package/coverage/src/concepts/basics/stdlib/nasl.validation.ts.html +1768 -0
  180. package/coverage/src/concepts/basics/stdlib/reference2TypeAnnotationList.ts.html +163 -0
  181. package/coverage/src/concepts/basics/stdlib/timeZone.ts.html +664 -0
  182. package/coverage/src/concepts/basics/types/coreTypeList.ts.html +121 -0
  183. package/coverage/src/concepts/basics/types/index.html +131 -0
  184. package/coverage/src/concepts/basics/types/index.ts.html +160 -0
  185. package/coverage/src/concepts/index.html +1961 -0
  186. package/coverage/src/concepts/index.ts.html +103 -0
  187. package/coverage/src/concepts/index__.ts.html +451 -0
  188. package/coverage/src/config.ts.html +343 -0
  189. package/coverage/src/decorators/index.html +131 -0
  190. package/coverage/src/decorators/index.ts.html +739 -0
  191. package/coverage/src/decorators/promise.ts.html +169 -0
  192. package/coverage/src/eventBus.ts.html +100 -0
  193. package/coverage/src/generator/compileComponent.ts.html +142 -0
  194. package/coverage/src/generator/genBundleFiles.ts.html +1828 -0
  195. package/coverage/src/generator/genHash.ts.html +124 -0
  196. package/coverage/src/generator/genMetaData.ts.html +1042 -0
  197. package/coverage/src/generator/genReleaseBody.ts.html +1282 -0
  198. package/coverage/src/generator/icestark.ts.html +220 -0
  199. package/coverage/src/generator/index.html +266 -0
  200. package/coverage/src/generator/index.ts.html +106 -0
  201. package/coverage/src/generator/microApp.ts.html +172 -0
  202. package/coverage/src/generator/permission.ts.html +1036 -0
  203. package/coverage/src/generator/qiankun.ts.html +232 -0
  204. package/coverage/src/generator/styleReplacer.ts.html +199 -0
  205. package/coverage/src/index.html +116 -0
  206. package/coverage/src/index.ts.html +121 -0
  207. package/coverage/src/manager/diagnostic.ts.html +442 -0
  208. package/coverage/src/manager/index.html +131 -0
  209. package/coverage/src/manager/stepRecorder.ts.html +457 -0
  210. package/coverage/src/natural/genNaturalTS.ts.html +355 -0
  211. package/coverage/src/natural/index.html +161 -0
  212. package/coverage/src/natural/index.ts.html +91 -0
  213. package/coverage/src/natural/naslStdlibMap.ts.html +157 -0
  214. package/coverage/src/natural/transformTSCode.ts.html +2647 -0
  215. package/coverage/src/sentry/index.html +116 -0
  216. package/coverage/src/sentry/index.ts.html +676 -0
  217. package/coverage/src/server/createUiTs.ts.html +910 -0
  218. package/coverage/src/server/entity2LogicNamespace.ts.html +1294 -0
  219. package/coverage/src/server/event.js.html +526 -0
  220. package/coverage/src/server/extendBaseNode.ts.html +1762 -0
  221. package/coverage/src/server/formatTsUtils.ts.html +2689 -0
  222. package/coverage/src/server/getConnector.ts.html +316 -0
  223. package/coverage/src/server/getExtensionModules.ts.html +178 -0
  224. package/coverage/src/server/getFunctions.ts.html +133 -0
  225. package/coverage/src/server/getInterfaces.ts.html +229 -0
  226. package/coverage/src/server/getLogging.ts.html +100 -0
  227. package/coverage/src/server/getLogics.ts.html +1363 -0
  228. package/coverage/src/server/getMemberIdentifier.ts.html +1561 -0
  229. package/coverage/src/server/getProcessComponents.ts.html +112 -0
  230. package/coverage/src/server/getProcesses.ts.html +2023 -0
  231. package/coverage/src/server/getValidates.ts.html +115 -0
  232. package/coverage/src/server/index.html +401 -0
  233. package/coverage/src/server/index.ts.html +229 -0
  234. package/coverage/src/server/naslServer.ts.html +14401 -0
  235. package/coverage/src/server/naslStdlibMap.ts.html +241 -0
  236. package/coverage/src/server/process2LogicNamespace.ts.html +454 -0
  237. package/coverage/src/server/translator.ts.html +2566 -0
  238. package/coverage/src/service/creator/add.configs.js.html +379 -0
  239. package/coverage/src/service/creator/errHandles.js.html +322 -0
  240. package/coverage/src/service/creator/index.html +146 -0
  241. package/coverage/src/service/creator/index.js.html +352 -0
  242. package/coverage/src/service/datasource/api.js.html +118 -0
  243. package/coverage/src/service/datasource/index.html +131 -0
  244. package/coverage/src/service/datasource/index.js.html +103 -0
  245. package/coverage/src/service/logic/api.js.html +109 -0
  246. package/coverage/src/service/logic/index.html +131 -0
  247. package/coverage/src/service/logic/index.js.html +103 -0
  248. package/coverage/src/service/storage/api.js.html +202 -0
  249. package/coverage/src/service/storage/index.html +206 -0
  250. package/coverage/src/service/storage/index.ts.html +103 -0
  251. package/coverage/src/service/storage/init.ts.html +2761 -0
  252. package/coverage/src/service/storage/jsoner.ts.html +502 -0
  253. package/coverage/src/service/storage/map.ts.html +256 -0
  254. package/coverage/src/service/storage/service.ts.html +331 -0
  255. package/coverage/src/service/storage/storagePoint.ts.html +304 -0
  256. package/coverage/src/templator/genCallComponentLogic.ts.html +163 -0
  257. package/coverage/src/templator/genCreateBlock.ts.html +1093 -0
  258. package/coverage/src/templator/genCurdEditMultipleKeyBlock.ts.html +1609 -0
  259. package/coverage/src/templator/genCurdMultipleKeyBlock.ts.html +2254 -0
  260. package/coverage/src/templator/genEditTableBlock.ts.html +955 -0
  261. package/coverage/src/templator/genEnumSelectBlock.ts.html +178 -0
  262. package/coverage/src/templator/genGetBlock.ts.html +451 -0
  263. package/coverage/src/templator/genGridViewBlock.ts.html +1114 -0
  264. package/coverage/src/templator/genListViewBlock.ts.html +475 -0
  265. package/coverage/src/templator/genQueryComponent.ts.html +1207 -0
  266. package/coverage/src/templator/genSelectBlock.ts.html +1243 -0
  267. package/coverage/src/templator/genTableBlock.ts.html +910 -0
  268. package/coverage/src/templator/genUpdateBlock.ts.html +1192 -0
  269. package/coverage/src/templator/index.html +326 -0
  270. package/coverage/src/templator/index.ts.html +154 -0
  271. package/coverage/src/templator/utils.ts.html +1861 -0
  272. package/coverage/src/translator/constant.ts.html +106 -0
  273. package/coverage/src/translator/index.html +146 -0
  274. package/coverage/src/translator/index.ts.html +94 -0
  275. package/coverage/src/translator/utils.ts.html +436 -0
  276. package/coverage/src/utils/cookie.ts.html +265 -0
  277. package/coverage/src/utils/env.ts.html +91 -0
  278. package/coverage/src/utils/index.html +206 -0
  279. package/coverage/src/utils/index.ts.html +1429 -0
  280. package/coverage/src/utils/logger.ts.html +145 -0
  281. package/coverage/src/utils/sortTsString.ts.html +187 -0
  282. package/coverage/src/utils/string.ts.html +544 -0
  283. package/coverage/src/utils/time-slicing/controller.ts.html +1144 -0
  284. package/coverage/src/utils/time-slicing/index.html +221 -0
  285. package/coverage/src/utils/time-slicing/index.ts.html +103 -0
  286. package/coverage/src/utils/time-slicing/page-state.ts.html +121 -0
  287. package/coverage/src/utils/time-slicing/performance.ts.html +253 -0
  288. package/coverage/src/utils/time-slicing/runner.ts.html +241 -0
  289. package/coverage/src/utils/time-slicing/tool.ts.html +220 -0
  290. package/coverage/src/utils/time-slicing/utils.ts.html +355 -0
  291. package/coverage/src/utils/time-slicing/wrapper.ts.html +259 -0
  292. package/coverage/src/utils/time-slicing.ts.html +418 -0
  293. package/coverage/src/utils/traverse.ts.html +568 -0
  294. package/coverage/src/utils/types.ts.html +133 -0
  295. package/coverage/src/utils/window.ts.html +112 -0
  296. package/out/concepts/BindAttribute__.js +1 -3
  297. package/out/concepts/BindAttribute__.js.map +1 -1
  298. package/out/concepts/BindDirective__.js +0 -1
  299. package/out/concepts/BindDirective__.js.map +1 -1
  300. package/out/concepts/CallLogic__.d.ts +3 -0
  301. package/out/concepts/CallLogic__.js +6 -3
  302. package/out/concepts/CallLogic__.js.map +1 -1
  303. package/out/concepts/StringLiteral__.js +0 -1
  304. package/out/concepts/StringLiteral__.js.map +1 -1
  305. package/out/concepts/ViewElement__.js +2 -0
  306. package/out/concepts/ViewElement__.js.map +1 -1
  307. package/out/generator/genBundleFiles.js +10 -2
  308. package/out/generator/genBundleFiles.js.map +1 -1
  309. package/out/generator/release-body/body.js +1 -1
  310. package/out/generator/release-body/body.js.map +1 -1
  311. package/out/natural/transformTS2UI.js +31 -13
  312. package/out/natural/transformTS2UI.js.map +1 -1
  313. package/out/natural/transformTSCode.js +26 -10
  314. package/out/natural/transformTSCode.js.map +1 -1
  315. package/out/service/storage/init.d.ts +2 -0
  316. package/out/service/storage/init.js +18 -5
  317. package/out/service/storage/init.js.map +1 -1
  318. package/out/templator/genCreateBlock.js +2 -2
  319. package/out/templator/genCreateBlock.js.map +1 -1
  320. package/out/templator/genCurdEditMultipleKeyBlock.js +2 -2
  321. package/out/templator/genCurdEditMultipleKeyBlock.js.map +1 -1
  322. package/out/templator/genCurdMultipleKeyBlock.js +4 -4
  323. package/out/templator/genCurdMultipleKeyBlock.js.map +1 -1
  324. package/out/templator/genEditTableBlock.js +1 -1
  325. package/out/templator/genEditTableBlock.js.map +1 -1
  326. package/out/templator/genUpdateBlock.js +2 -2
  327. package/out/templator/genUpdateBlock.js.map +1 -1
  328. package/out/templator/utils.js +1 -1
  329. package/out/templator/utils.js.map +1 -1
  330. package/package.json +1 -1
  331. package/src/concepts/BindAttribute__.ts +1 -3
  332. package/src/concepts/BindDirective__.ts +0 -1
  333. package/src/concepts/CallLogic__.ts +8 -3
  334. package/src/concepts/StringLiteral__.ts +0 -1
  335. package/src/concepts/ViewElement__.ts +1 -0
  336. package/src/generator/genBundleFiles.ts +10 -2
  337. package/src/generator/release-body/body.ts +1 -1
  338. package/src/natural/transformTS2UI.ts +28 -13
  339. package/src/natural/transformTSCode.ts +25 -10
  340. package/src/service/storage/init.ts +22 -5
  341. package/src/templator/genCreateBlock.ts +2 -2
  342. package/src/templator/genCurdEditMultipleKeyBlock.ts +2 -2
  343. package/src/templator/genCurdMultipleKeyBlock.ts +4 -4
  344. package/src/templator/genEditTableBlock.ts +1 -1
  345. package/src/templator/genUpdateBlock.ts +2 -2
  346. package/src/templator/utils.ts +1 -1
  347. package/test/concepts/string-literal/__snapshots__/toVue.spec.ts.snap +1 -1
@@ -269,7 +269,7 @@ function handleNewExpression(calleeName, node, type) {
269
269
  if (arg?.value) {
270
270
  assignmentLines.push(new naslTypes.AssignmentLine({
271
271
  leftIndex: [0, index],
272
- rightIndex: [index, index],
272
+ rightIndex: [index, members.length - 1],
273
273
  }));
274
274
  }
275
275
  }
@@ -327,7 +327,7 @@ function handleNewExpression(calleeName, node, type) {
327
327
  if (arg?.value) {
328
328
  assignmentLines.push(new naslTypes.AssignmentLine({
329
329
  leftIndex: [0, index],
330
- rightIndex: [index, index],
330
+ rightIndex: [index, members.length - 1],
331
331
  }));
332
332
  }
333
333
  }
@@ -386,7 +386,7 @@ function handleNewExpression(calleeName, node, type) {
386
386
  if (arg?.value) {
387
387
  assignmentLines.push(new naslTypes.AssignmentLine({
388
388
  leftIndex: [0, index],
389
- rightIndex: [index, index],
389
+ rightIndex: [index, members.length - 1],
390
390
  }));
391
391
  }
392
392
  }
@@ -984,14 +984,30 @@ function transformNode2Expression(node, type) {
984
984
  const assignmentLines = [];
985
985
  node?.properties?.forEach((arg, index) => {
986
986
  properties.push(transformNode2Expression(arg.key, type));
987
- rights.push(new naslTypes.SelectMembers({
988
- expression: transformNode2Expression(arg?.value, type)
989
- }));
990
- if (arg?.value) {
991
- assignmentLines.push(new naslTypes.AssignmentLine({
992
- leftIndex: [0, index],
993
- rightIndex: [index],
987
+ if (arg.value.type === 'MemberExpression') {
988
+ const expression = flatMemberExpression(arg.value);
989
+ const members = flatMembers(transformNode2Expression(arg.value, type));
990
+ rights.push(new naslTypes.SelectMembers({
991
+ expression: transformNode2Expression(expression[0]),
992
+ members,
994
993
  }));
994
+ if (arg?.value) {
995
+ assignmentLines.push(new naslTypes.AssignmentLine({
996
+ leftIndex: [0, index],
997
+ rightIndex: [index, members.length - 1],
998
+ }));
999
+ }
1000
+ }
1001
+ else {
1002
+ rights.push(new naslTypes.SelectMembers({
1003
+ expression: transformNode2Expression(arg?.value, type)
1004
+ }));
1005
+ if (arg?.value) {
1006
+ assignmentLines.push(new naslTypes.AssignmentLine({
1007
+ leftIndex: [0, index],
1008
+ rightIndex: [index],
1009
+ }));
1010
+ }
995
1011
  }
996
1012
  structureProperties.push(new naslTypes.StructureProperty({
997
1013
  name: arg?.key?.name,
@@ -1306,7 +1322,8 @@ function transformNode2View(node, root) {
1306
1322
  }
1307
1323
  if (item.type === 'ReturnStatement' && item?.argument?.type === 'ArrayExpression') {
1308
1324
  viewItem?.forEach((element) => {
1309
- json.push(element.aiParams);
1325
+ if (element.aiParams)
1326
+ json.push(element.aiParams);
1310
1327
  });
1311
1328
  }
1312
1329
  if (viewItem?.concept === 'Variable') {
@@ -1319,7 +1336,8 @@ function transformNode2View(node, root) {
1319
1336
  }
1320
1337
  if (viewItem?.concept === 'ViewElement') {
1321
1338
  view.addViewElement(viewItem);
1322
- json.push(viewItem.aiParams);
1339
+ if (viewItem.aiParams)
1340
+ json.push(viewItem.aiParams);
1323
1341
  }
1324
1342
  });
1325
1343
  // console.log("lemon ~ 转换出的 view:", view);
@@ -1373,7 +1391,7 @@ function tryTransformTS2UI(tsCode, curView) {
1373
1391
  const replaceNameList = [];
1374
1392
  const selectedNodeNames = [];
1375
1393
  json.forEach((item) => {
1376
- if (item.concept === 'ViewElement' && item.action !== 'remove') {
1394
+ if (item && item.concept === 'ViewElement' && item.action !== 'remove') {
1377
1395
  selectedNodeNames.push(item.selectedNodeName.replace('$refs.', ''));
1378
1396
  const { list } = handleNodeName(newView, item.object.toJSON());
1379
1397
  replaceNameList.push(...list);
@@ -1 +1 @@
1
- {"version":3,"file":"transformTS2UI.js","sourceRoot":"","sources":["../../src/natural/transformTS2UI.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"transformTS2UI.js","sourceRoot":"","sources":["../../src/natural/transformTS2UI.ts"],"names":[],"mappings":"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"}
@@ -257,7 +257,7 @@ function transformTSCode(tsCode, contextLogicName, type) {
257
257
  if (arg?.value) {
258
258
  assignmentLines.push(new naslTypes.AssignmentLine({
259
259
  leftIndex: [0, index],
260
- rightIndex: [index, index],
260
+ rightIndex: [index, members.length - 1],
261
261
  }));
262
262
  }
263
263
  }
@@ -315,7 +315,7 @@ function transformTSCode(tsCode, contextLogicName, type) {
315
315
  if (arg?.value) {
316
316
  assignmentLines.push(new naslTypes.AssignmentLine({
317
317
  leftIndex: [0, index],
318
- rightIndex: [index, index],
318
+ rightIndex: [index, members.length - 1],
319
319
  }));
320
320
  }
321
321
  }
@@ -374,7 +374,7 @@ function transformTSCode(tsCode, contextLogicName, type) {
374
374
  if (arg?.value) {
375
375
  assignmentLines.push(new naslTypes.AssignmentLine({
376
376
  leftIndex: [0, index],
377
- rightIndex: [index, index],
377
+ rightIndex: [index, members.length - 1],
378
378
  }));
379
379
  }
380
380
  }
@@ -1059,14 +1059,30 @@ function transformTSCode(tsCode, contextLogicName, type) {
1059
1059
  const assignmentLines = [];
1060
1060
  node?.properties?.forEach((arg, index) => {
1061
1061
  properties.push(transformLogicNode(arg.key));
1062
- rights.push(new naslTypes.SelectMembers({
1063
- expression: transformLogicNode(arg?.value)
1064
- }));
1065
- if (arg?.value) {
1066
- assignmentLines.push(new naslTypes.AssignmentLine({
1067
- leftIndex: [0, index],
1068
- rightIndex: [index],
1062
+ if (arg.value.type === 'MemberExpression') {
1063
+ const expression = flatMemberExpression(arg.value);
1064
+ const members = flatMembers(transformLogicNode(arg.value));
1065
+ rights.push(new naslTypes.SelectMembers({
1066
+ expression: transformLogicNode(expression[0]),
1067
+ members,
1068
+ }));
1069
+ if (arg?.value) {
1070
+ assignmentLines.push(new naslTypes.AssignmentLine({
1071
+ leftIndex: [0, index],
1072
+ rightIndex: [index, members.length - 1],
1073
+ }));
1074
+ }
1075
+ }
1076
+ else {
1077
+ rights.push(new naslTypes.SelectMembers({
1078
+ expression: transformLogicNode(arg?.value)
1069
1079
  }));
1080
+ if (arg?.value) {
1081
+ assignmentLines.push(new naslTypes.AssignmentLine({
1082
+ leftIndex: [0, index],
1083
+ rightIndex: [index],
1084
+ }));
1085
+ }
1070
1086
  }
1071
1087
  structureProperties.push(new naslTypes.StructureProperty({
1072
1088
  name: arg?.key?.name,