@lcap/nasl 1.0.0-alpha.9 → 1.0.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 (481) hide show
  1. package/out/automate/engine/index.d.ts +3 -0
  2. package/out/automate/engine/index.js +414 -0
  3. package/out/automate/engine/index.js.map +1 -0
  4. package/out/automate/engine/operators.d.ts +13 -0
  5. package/out/automate/engine/operators.js +63 -0
  6. package/out/automate/engine/operators.js.map +1 -0
  7. package/out/automate/engine/uniqueName.d.ts +6 -0
  8. package/out/automate/engine/uniqueName.js +39 -0
  9. package/out/automate/engine/uniqueName.js.map +1 -0
  10. package/out/automate/engine/utils.d.ts +24 -0
  11. package/out/automate/engine/utils.js +379 -0
  12. package/out/automate/engine/utils.js.map +1 -0
  13. package/out/common/BaseNode.d.ts +21 -1
  14. package/out/common/BaseNode.js +232 -84
  15. package/out/common/BaseNode.js.map +1 -1
  16. package/out/concepts/App__.d.ts +19 -1
  17. package/out/concepts/App__.js +88 -45
  18. package/out/concepts/App__.js.map +1 -1
  19. package/out/concepts/Argument__.d.ts +5 -1
  20. package/out/concepts/Argument__.js +21 -3
  21. package/out/concepts/Argument__.js.map +1 -1
  22. package/out/concepts/Assignee__.d.ts +201 -0
  23. package/out/concepts/Assignee__.js +298 -0
  24. package/out/concepts/Assignee__.js.map +1 -0
  25. package/out/concepts/Assignment__.js +5 -0
  26. package/out/concepts/Assignment__.js.map +1 -1
  27. package/out/concepts/BinaryExpression__.js +8 -7
  28. package/out/concepts/BinaryExpression__.js.map +1 -1
  29. package/out/concepts/BindAttribute__.d.ts +19 -0
  30. package/out/concepts/BindAttribute__.js +55 -10
  31. package/out/concepts/BindAttribute__.js.map +1 -1
  32. package/out/concepts/BindDirective__.js +23 -3
  33. package/out/concepts/BindDirective__.js.map +1 -1
  34. package/out/concepts/BindEvent__.d.ts +2 -2
  35. package/out/concepts/BindEvent__.js +67 -34
  36. package/out/concepts/BindEvent__.js.map +1 -1
  37. package/out/concepts/BooleanLiteral__.d.ts +2 -0
  38. package/out/concepts/BooleanLiteral__.js +10 -0
  39. package/out/concepts/BooleanLiteral__.js.map +1 -1
  40. package/out/concepts/CallFunction__.js +58 -25
  41. package/out/concepts/CallFunction__.js.map +1 -1
  42. package/out/concepts/CallInterface__.d.ts +5 -0
  43. package/out/concepts/CallInterface__.js +238 -31
  44. package/out/concepts/CallInterface__.js.map +1 -1
  45. package/out/concepts/CallLogic__.d.ts +4 -4
  46. package/out/concepts/CallLogic__.js +107 -50
  47. package/out/concepts/CallLogic__.js.map +1 -1
  48. package/out/concepts/CallQueryComponent__.d.ts +38 -3
  49. package/out/concepts/CallQueryComponent__.js +329 -75
  50. package/out/concepts/CallQueryComponent__.js.map +1 -1
  51. package/out/concepts/Comment__.js +6 -2
  52. package/out/concepts/Comment__.js.map +1 -1
  53. package/out/concepts/CompletionProperty__.d.ts +3 -1
  54. package/out/concepts/CompletionProperty__.js +2 -0
  55. package/out/concepts/CompletionProperty__.js.map +1 -1
  56. package/out/concepts/ConfigGroup__.js +3 -3
  57. package/out/concepts/ConfigGroup__.js.map +1 -1
  58. package/out/concepts/ConfigProperty__.js +3 -3
  59. package/out/concepts/ConfigProperty__.js.map +1 -1
  60. package/out/concepts/Configuration__.js +3 -3
  61. package/out/concepts/Configuration__.js.map +1 -1
  62. package/out/concepts/Constant__.d.ts +1 -0
  63. package/out/concepts/Constant__.js +16 -2
  64. package/out/concepts/Constant__.js.map +1 -1
  65. package/out/concepts/Destination__.d.ts +12 -0
  66. package/out/concepts/Destination__.js +115 -22
  67. package/out/concepts/Destination__.js.map +1 -1
  68. package/out/concepts/End__.js +9 -1
  69. package/out/concepts/End__.js.map +1 -1
  70. package/out/concepts/EntityIndex__.js +4 -2
  71. package/out/concepts/EntityIndex__.js.map +1 -1
  72. package/out/concepts/EntityProperty__.d.ts +11 -0
  73. package/out/concepts/EntityProperty__.js +71 -5
  74. package/out/concepts/EntityProperty__.js.map +1 -1
  75. package/out/concepts/Entity__.d.ts +5 -4
  76. package/out/concepts/Entity__.js +35 -19
  77. package/out/concepts/Entity__.js.map +1 -1
  78. package/out/concepts/Enum__.d.ts +5 -0
  79. package/out/concepts/Enum__.js +24 -12
  80. package/out/concepts/Enum__.js.map +1 -1
  81. package/out/concepts/Event__.js +3 -3
  82. package/out/concepts/Event__.js.map +1 -1
  83. package/out/concepts/ForEachStatement__.d.ts +1 -1
  84. package/out/concepts/ForEachStatement__.js +11 -15
  85. package/out/concepts/ForEachStatement__.js.map +1 -1
  86. package/out/concepts/Function__.js +13 -13
  87. package/out/concepts/Function__.js.map +1 -1
  88. package/out/concepts/Identifier__.d.ts +3 -0
  89. package/out/concepts/Identifier__.js +77 -30
  90. package/out/concepts/Identifier__.js.map +1 -1
  91. package/out/concepts/IfStatement__.js +4 -4
  92. package/out/concepts/IfStatement__.js.map +1 -1
  93. package/out/concepts/InterfaceParam__.d.ts +6 -4
  94. package/out/concepts/InterfaceParam__.js +57 -19
  95. package/out/concepts/InterfaceParam__.js.map +1 -1
  96. package/out/concepts/Interface__.d.ts +42 -30
  97. package/out/concepts/Interface__.js +133 -17
  98. package/out/concepts/Interface__.js.map +1 -1
  99. package/out/concepts/JSBlock__.d.ts +1 -0
  100. package/out/concepts/JSBlock__.js +3 -0
  101. package/out/concepts/JSBlock__.js.map +1 -1
  102. package/out/concepts/LogicItem__.d.ts +2 -1
  103. package/out/concepts/LogicItem__.js +14 -0
  104. package/out/concepts/LogicItem__.js.map +1 -1
  105. package/out/concepts/Logic__.d.ts +20 -1
  106. package/out/concepts/Logic__.js +194 -37
  107. package/out/concepts/Logic__.js.map +1 -1
  108. package/out/concepts/MemberExpression__.d.ts +2 -0
  109. package/out/concepts/MemberExpression__.js +49 -13
  110. package/out/concepts/MemberExpression__.js.map +1 -1
  111. package/out/concepts/Module__.d.ts +126 -120
  112. package/out/concepts/Module__.js +36 -26
  113. package/out/concepts/Module__.js.map +1 -1
  114. package/out/concepts/Namespace__.d.ts +5 -1
  115. package/out/concepts/Namespace__.js +48 -37
  116. package/out/concepts/Namespace__.js.map +1 -1
  117. package/out/concepts/NullLiteral__.d.ts +3 -0
  118. package/out/concepts/NullLiteral__.js +11 -1
  119. package/out/concepts/NullLiteral__.js.map +1 -1
  120. package/out/concepts/NumericLiteral__.d.ts +1 -1
  121. package/out/concepts/NumericLiteral__.js +17 -6
  122. package/out/concepts/NumericLiteral__.js.map +1 -1
  123. package/out/concepts/Param__.d.ts +7 -3
  124. package/out/concepts/Param__.js +64 -28
  125. package/out/concepts/Param__.js.map +1 -1
  126. package/out/concepts/ProcessComponent__.js +6 -6
  127. package/out/concepts/ProcessComponent__.js.map +1 -1
  128. package/out/concepts/ProcessElement__.d.ts +0 -4
  129. package/out/concepts/ProcessElement__.js +123 -54
  130. package/out/concepts/ProcessElement__.js.map +1 -1
  131. package/out/concepts/ProcessOutcome__.js +1 -1
  132. package/out/concepts/ProcessOutcome__.js.map +1 -1
  133. package/out/concepts/Process__.d.ts +7 -1
  134. package/out/concepts/Process__.js +81 -85
  135. package/out/concepts/Process__.js.map +1 -1
  136. package/out/concepts/QueryAggregateExpression__.js +1 -1
  137. package/out/concepts/QueryAggregateExpression__.js.map +1 -1
  138. package/out/concepts/QueryFieldExpression__.d.ts +1 -0
  139. package/out/concepts/QueryFieldExpression__.js +3 -0
  140. package/out/concepts/QueryFieldExpression__.js.map +1 -1
  141. package/out/concepts/QueryFromExpression__.js +2 -2
  142. package/out/concepts/QueryFromExpression__.js.map +1 -1
  143. package/out/concepts/QueryGroupByExpression__.d.ts +3 -0
  144. package/out/concepts/QueryGroupByExpression__.js +20 -0
  145. package/out/concepts/QueryGroupByExpression__.js.map +1 -1
  146. package/out/concepts/QueryJoinExpression__.js +5 -5
  147. package/out/concepts/QueryJoinExpression__.js.map +1 -1
  148. package/out/concepts/QueryLimitExpression__.js +2 -2
  149. package/out/concepts/QueryLimitExpression__.js.map +1 -1
  150. package/out/concepts/QuerySelectExpression__.js +3 -3
  151. package/out/concepts/QuerySelectExpression__.js.map +1 -1
  152. package/out/concepts/Return__.d.ts +4 -1
  153. package/out/concepts/Return__.js +74 -23
  154. package/out/concepts/Return__.js.map +1 -1
  155. package/out/concepts/Role__.d.ts +4 -0
  156. package/out/concepts/Role__.js +13 -4
  157. package/out/concepts/Role__.js.map +1 -1
  158. package/out/concepts/SqlQueryComponent__.js +2 -2
  159. package/out/concepts/SqlQueryComponent__.js.map +1 -1
  160. package/out/concepts/StringLiteral__.d.ts +1 -1
  161. package/out/concepts/StringLiteral__.js +22 -39
  162. package/out/concepts/StringLiteral__.js.map +1 -1
  163. package/out/concepts/StructureProperty__.d.ts +5 -4
  164. package/out/concepts/StructureProperty__.js +55 -26
  165. package/out/concepts/StructureProperty__.js.map +1 -1
  166. package/out/concepts/Structure__.d.ts +44 -30
  167. package/out/concepts/Structure__.js +44 -12
  168. package/out/concepts/Structure__.js.map +1 -1
  169. package/out/concepts/SwitchCase__.js +4 -4
  170. package/out/concepts/SwitchCase__.js.map +1 -1
  171. package/out/concepts/SwitchStatement__.js +2 -2
  172. package/out/concepts/SwitchStatement__.js.map +1 -1
  173. package/out/concepts/TypeAnnotation__.d.ts +5 -5
  174. package/out/concepts/TypeAnnotation__.js +82 -20
  175. package/out/concepts/TypeAnnotation__.js.map +1 -1
  176. package/out/concepts/UnaryExpression__.js +10 -8
  177. package/out/concepts/UnaryExpression__.js.map +1 -1
  178. package/out/concepts/Unparsed__.js +1 -1
  179. package/out/concepts/Unparsed__.js.map +1 -1
  180. package/out/concepts/ValidationRule__.d.ts +1 -0
  181. package/out/concepts/ValidationRule__.js +48 -13
  182. package/out/concepts/ValidationRule__.js.map +1 -1
  183. package/out/concepts/Variable__.d.ts +10 -1
  184. package/out/concepts/Variable__.js +77 -20
  185. package/out/concepts/Variable__.js.map +1 -1
  186. package/out/concepts/ViewComponent__.js +15 -15
  187. package/out/concepts/ViewComponent__.js.map +1 -1
  188. package/out/concepts/ViewElement__.d.ts +17 -11
  189. package/out/concepts/ViewElement__.js +302 -204
  190. package/out/concepts/ViewElement__.js.map +1 -1
  191. package/out/concepts/View__.d.ts +13 -12
  192. package/out/concepts/View__.js +124 -102
  193. package/out/concepts/View__.js.map +1 -1
  194. package/out/concepts/WhileStatement__.js +3 -3
  195. package/out/concepts/WhileStatement__.js.map +1 -1
  196. package/out/concepts/basics/stdlib/index.js +4 -1
  197. package/out/concepts/basics/stdlib/index.js.map +1 -1
  198. package/out/concepts/basics/stdlib/{nasl.validate.d.ts → nasl.auth.d.ts} +0 -0
  199. package/out/concepts/basics/stdlib/nasl.auth.js +30 -0
  200. package/out/concepts/basics/stdlib/nasl.auth.js.map +1 -0
  201. package/out/concepts/basics/stdlib/nasl.browser.d.ts +3 -0
  202. package/out/concepts/basics/stdlib/nasl.browser.js +41 -0
  203. package/out/concepts/basics/stdlib/nasl.browser.js.map +1 -0
  204. package/out/concepts/basics/stdlib/nasl.configuration.d.ts +3 -0
  205. package/out/concepts/basics/stdlib/nasl.configuration.js +25 -0
  206. package/out/concepts/basics/stdlib/nasl.configuration.js.map +1 -0
  207. package/out/concepts/basics/stdlib/nasl.interface.d.ts +2 -0
  208. package/out/concepts/basics/stdlib/nasl.interface.js +4 -4
  209. package/out/concepts/basics/stdlib/nasl.interface.js.map +1 -1
  210. package/out/concepts/basics/stdlib/nasl.ui.js +20 -0
  211. package/out/concepts/basics/stdlib/nasl.ui.js.map +1 -1
  212. package/out/concepts/basics/stdlib/nasl.util.js +138 -18
  213. package/out/concepts/basics/stdlib/nasl.util.js.map +1 -1
  214. package/out/concepts/basics/stdlib/nasl.validation.js +54 -20
  215. package/out/concepts/basics/stdlib/nasl.validation.js.map +1 -1
  216. package/out/concepts/basics/stdlib/reference2TypeAnnotationList.js +1 -1
  217. package/out/concepts/basics/stdlib/reference2TypeAnnotationList.js.map +1 -1
  218. package/out/concepts/basics/types/coreTypeList.js +11 -10
  219. package/out/concepts/basics/types/coreTypeList.js.map +1 -1
  220. package/out/concepts/basics/types/index.d.ts +1 -0
  221. package/out/concepts/basics/types/index.js +3 -1
  222. package/out/concepts/basics/types/index.js.map +1 -1
  223. package/out/concepts/index__.d.ts +1 -0
  224. package/out/concepts/index__.js +1 -0
  225. package/out/concepts/index__.js.map +1 -1
  226. package/out/config.d.ts +1 -2
  227. package/out/config.js +1 -2
  228. package/out/config.js.map +1 -1
  229. package/out/enums/KEYWORDS.d.ts +3 -0
  230. package/out/enums/KEYWORDS.js +1199 -0
  231. package/out/enums/KEYWORDS.js.map +1 -0
  232. package/out/{terms → enums}/LEVEL_NAME_MAP.d.ts +0 -0
  233. package/out/{terms → enums}/LEVEL_NAME_MAP.js +0 -0
  234. package/out/{terms → enums}/LEVEL_NAME_MAP.js.map +1 -1
  235. package/out/eventBus.d.ts +3 -0
  236. package/out/eventBus.js +7 -0
  237. package/out/eventBus.js.map +1 -0
  238. package/out/generator/genBundleFiles.d.ts +7 -2
  239. package/out/generator/genBundleFiles.js +168 -27
  240. package/out/generator/genBundleFiles.js.map +1 -1
  241. package/out/generator/genMetaData.d.ts +20 -20
  242. package/out/generator/genMetaData.js +50 -15
  243. package/out/generator/genMetaData.js.map +1 -1
  244. package/out/index.d.ts +2 -0
  245. package/out/index.js +2 -0
  246. package/out/index.js.map +1 -1
  247. package/out/manager/diagnostic.d.ts +2 -2
  248. package/out/server/createUiTs.d.ts +1 -0
  249. package/out/server/createUiTs.js +49 -5
  250. package/out/server/createUiTs.js.map +1 -1
  251. package/out/server/entity2LogicNamespace.js +38 -23
  252. package/out/server/entity2LogicNamespace.js.map +1 -1
  253. package/out/server/extendBaseNode.d.ts +1 -0
  254. package/out/server/extendBaseNode.js +323 -0
  255. package/out/server/extendBaseNode.js.map +1 -0
  256. package/out/server/getExtensionModules.js +2 -0
  257. package/out/server/getExtensionModules.js.map +1 -1
  258. package/out/server/getFunctions.d.ts +1 -0
  259. package/out/server/getFunctions.js +7 -1
  260. package/out/server/getFunctions.js.map +1 -1
  261. package/out/server/getLogics.js +84 -18
  262. package/out/server/getLogics.js.map +1 -1
  263. package/out/server/getMemberIdentifier.d.ts +16 -1
  264. package/out/server/getMemberIdentifier.js +326 -38
  265. package/out/server/getMemberIdentifier.js.map +1 -1
  266. package/out/server/getProcesses.d.ts +8 -1
  267. package/out/server/getProcesses.js +383 -1
  268. package/out/server/getProcesses.js.map +1 -1
  269. package/out/server/getScope.d.ts +13 -0
  270. package/out/server/getScope.js +61 -0
  271. package/out/server/getScope.js.map +1 -0
  272. package/out/server/index.d.ts +1 -0
  273. package/out/server/index.js +5 -0
  274. package/out/server/index.js.map +1 -1
  275. package/out/server/naslServer.d.ts +36 -57
  276. package/out/server/naslServer.js +689 -615
  277. package/out/server/naslServer.js.map +1 -1
  278. package/out/server/process2LogicNamespace.d.ts +10 -0
  279. package/out/server/process2LogicNamespace.js +29 -1
  280. package/out/server/process2LogicNamespace.js.map +1 -1
  281. package/out/server/translator.d.ts +22 -3
  282. package/out/server/translator.js +369 -123
  283. package/out/server/translator.js.map +1 -1
  284. package/out/service/creator/add.configs.d.ts +1 -0
  285. package/out/service/creator/add.configs.js +68 -0
  286. package/out/service/creator/add.configs.js.map +1 -0
  287. package/out/service/creator/errHandles.d.ts +18 -0
  288. package/out/service/creator/errHandles.js +60 -0
  289. package/out/service/creator/errHandles.js.map +1 -0
  290. package/out/service/creator/index.d.ts +1 -0
  291. package/out/service/creator/index.js +72 -0
  292. package/out/service/creator/index.js.map +1 -0
  293. package/out/service/storage/api.d.ts +18 -0
  294. package/out/service/storage/api.js +17 -0
  295. package/out/service/storage/api.js.map +1 -0
  296. package/out/service/storage/init.js +221 -37
  297. package/out/service/storage/init.js.map +1 -1
  298. package/out/service/storage/service.d.ts +2 -0
  299. package/out/service/storage/service.js +10 -0
  300. package/out/service/storage/service.js.map +1 -0
  301. package/out/service/storage/storagePoint.d.ts +1 -14
  302. package/out/service/storage/storagePoint.js +16 -16
  303. package/out/service/storage/storagePoint.js.map +1 -1
  304. package/out/templator/genCreateBlock.js +6 -6
  305. package/out/templator/genCreateBlock.js.map +1 -1
  306. package/out/templator/genCurdEditMultipleKeyBlock.js +13 -17
  307. package/out/templator/genCurdEditMultipleKeyBlock.js.map +1 -1
  308. package/out/templator/genCurdMultipleKeyBlock.js +11 -11
  309. package/out/templator/genCurdMultipleKeyBlock.js.map +1 -1
  310. package/out/templator/genEditTableBlock.js +5 -5
  311. package/out/templator/genEditTableBlock.js.map +1 -1
  312. package/out/templator/genEnumSelectBlock.js +2 -2
  313. package/out/templator/genEnumSelectBlock.js.map +1 -1
  314. package/out/templator/genGetBlock.js +6 -4
  315. package/out/templator/genGetBlock.js.map +1 -1
  316. package/out/templator/genGridViewBlock.d.ts +3 -1
  317. package/out/templator/genGridViewBlock.js +61 -6
  318. package/out/templator/genGridViewBlock.js.map +1 -1
  319. package/out/templator/genQueryComponent.d.ts +2 -0
  320. package/out/templator/genQueryComponent.js +34 -18
  321. package/out/templator/genQueryComponent.js.map +1 -1
  322. package/out/templator/genSelectBlock.js +5 -15
  323. package/out/templator/genSelectBlock.js.map +1 -1
  324. package/out/templator/genTableBlock.d.ts +1 -1
  325. package/out/templator/genTableBlock.js +4 -5
  326. package/out/templator/genTableBlock.js.map +1 -1
  327. package/out/templator/genUpdateBlock.js +10 -11
  328. package/out/templator/genUpdateBlock.js.map +1 -1
  329. package/out/templator/utils.d.ts +16 -5
  330. package/out/templator/utils.js +10 -5
  331. package/out/templator/utils.js.map +1 -1
  332. package/out/test/fixtures/env.js +0 -1
  333. package/out/test/fixtures/env.js.map +1 -1
  334. package/out/test/units/page/Element.spec.js +3 -3
  335. package/out/test/units/page/Element.spec.js.map +1 -1
  336. package/out/test/units/temp/temp.spec.js +1 -1
  337. package/out/test/units/temp/temp.spec.js.map +1 -1
  338. package/out/utils/index.d.ts +6 -0
  339. package/out/utils/index.js +25 -1
  340. package/out/utils/index.js.map +1 -1
  341. package/out/utils/string.d.ts +1 -1
  342. package/out/utils/string.js +38 -9
  343. package/out/utils/string.js.map +1 -1
  344. package/package.json +2 -2
  345. package/src/automate/engine/index.js +95 -119
  346. package/src/automate/engine/operators.js +63 -0
  347. package/src/automate/engine/uniqueName.js +36 -0
  348. package/src/automate/engine/utils.js +63 -19
  349. package/src/common/BaseNode.ts +229 -74
  350. package/src/concepts/App__.ts +92 -85
  351. package/src/concepts/Argument__.ts +23 -3
  352. package/src/concepts/Assignee__.ts +467 -0
  353. package/src/concepts/Assignment__.ts +4 -1
  354. package/src/concepts/BinaryExpression__.ts +9 -7
  355. package/src/concepts/BindAttribute__.ts +69 -9
  356. package/src/concepts/BindDirective__.ts +22 -3
  357. package/src/concepts/BindEvent__.ts +67 -23
  358. package/src/concepts/BooleanLiteral__.ts +8 -0
  359. package/src/concepts/CallFunction__.ts +55 -23
  360. package/src/concepts/CallInterface__.ts +236 -26
  361. package/src/concepts/CallLogic__.ts +111 -52
  362. package/src/concepts/CallQueryComponent__.ts +315 -67
  363. package/src/concepts/Comment__.ts +6 -2
  364. package/src/concepts/CompletionProperty__.ts +5 -1
  365. package/src/concepts/ConfigGroup__.ts +3 -3
  366. package/src/concepts/ConfigProperty__.ts +3 -3
  367. package/src/concepts/Configuration__.ts +3 -3
  368. package/src/concepts/Constant__.ts +14 -2
  369. package/src/concepts/Destination__.ts +123 -37
  370. package/src/concepts/End__.ts +8 -1
  371. package/src/concepts/EntityIndex__.ts +4 -2
  372. package/src/concepts/EntityProperty__.ts +56 -5
  373. package/src/concepts/Entity__.ts +38 -21
  374. package/src/concepts/Enum__.ts +23 -26
  375. package/src/concepts/Event__.ts +3 -3
  376. package/src/concepts/ForEachStatement__.ts +16 -21
  377. package/src/concepts/Function__.ts +13 -13
  378. package/src/concepts/Identifier__.ts +84 -42
  379. package/src/concepts/IfStatement__.ts +4 -4
  380. package/src/concepts/InterfaceParam__.ts +57 -16
  381. package/src/concepts/Interface__.ts +130 -16
  382. package/src/concepts/JSBlock__.ts +4 -0
  383. package/src/concepts/LogicItem__.ts +16 -1
  384. package/src/concepts/Logic__.ts +192 -39
  385. package/src/concepts/MemberExpression__.ts +58 -15
  386. package/src/concepts/Module__.ts +35 -24
  387. package/src/concepts/Namespace__.ts +49 -37
  388. package/src/concepts/NullLiteral__.ts +8 -1
  389. package/src/concepts/NumericLiteral__.ts +17 -6
  390. package/src/concepts/Param__.ts +64 -16
  391. package/src/concepts/ProcessComponent__.ts +6 -6
  392. package/src/concepts/ProcessElement__.ts +149 -44
  393. package/src/concepts/ProcessOutcome__.ts +1 -1
  394. package/src/concepts/Process__.ts +85 -98
  395. package/src/concepts/QueryAggregateExpression__.ts +1 -1
  396. package/src/concepts/QueryFieldExpression__.ts +4 -0
  397. package/src/concepts/QueryFromExpression__.ts +2 -2
  398. package/src/concepts/QueryGroupByExpression__.ts +23 -0
  399. package/src/concepts/QueryJoinExpression__.ts +5 -5
  400. package/src/concepts/QueryLimitExpression__.ts +2 -2
  401. package/src/concepts/QuerySelectExpression__.ts +3 -3
  402. package/src/concepts/Return__.ts +69 -17
  403. package/src/concepts/Role__.ts +5 -4
  404. package/src/concepts/SqlQueryComponent__.ts +2 -2
  405. package/src/concepts/StringLiteral__.ts +21 -39
  406. package/src/concepts/StructureProperty__.ts +50 -18
  407. package/src/concepts/Structure__.ts +32 -10
  408. package/src/concepts/SwitchCase__.ts +4 -4
  409. package/src/concepts/SwitchStatement__.ts +2 -2
  410. package/src/concepts/TypeAnnotation__.ts +66 -15
  411. package/src/concepts/UnaryExpression__.ts +10 -8
  412. package/src/concepts/Unparsed__.ts +1 -1
  413. package/src/concepts/ValidationRule__.ts +44 -14
  414. package/src/concepts/Variable__.ts +70 -16
  415. package/src/concepts/ViewComponent__.ts +15 -15
  416. package/src/concepts/ViewElement__.ts +289 -166
  417. package/src/concepts/View__.ts +135 -69
  418. package/src/concepts/WhileStatement__.ts +4 -4
  419. package/src/concepts/basics/stdlib/index.ts +4 -2
  420. package/src/concepts/basics/stdlib/nasl.auth.ts +26 -0
  421. package/src/concepts/basics/stdlib/nasl.browser.ts +37 -0
  422. package/src/concepts/basics/stdlib/nasl.configuration.ts +21 -0
  423. package/src/concepts/basics/stdlib/nasl.interface.ts +1 -1
  424. package/src/concepts/basics/stdlib/nasl.ui.ts +20 -1
  425. package/src/concepts/basics/stdlib/nasl.util.ts +140 -18
  426. package/src/concepts/basics/stdlib/nasl.validation.ts +45 -11
  427. package/src/concepts/basics/stdlib/reference2TypeAnnotationList.ts +1 -1
  428. package/src/concepts/basics/types/coreTypeList.ts +11 -11
  429. package/src/concepts/basics/types/index.ts +1 -0
  430. package/src/concepts/index__.ts +1 -0
  431. package/src/config.ts +1 -2
  432. package/src/enums/KEYWORDS.ts +1197 -0
  433. package/src/{terms → enums}/LEVEL_NAME_MAP.ts +0 -0
  434. package/src/eventBus.ts +5 -0
  435. package/src/generator/genBundleFiles.ts +182 -30
  436. package/src/generator/genMetaData.ts +72 -21
  437. package/src/index.ts +2 -0
  438. package/src/manager/diagnostic.ts +2 -2
  439. package/src/server/createUiTs.ts +45 -7
  440. package/src/server/entity2LogicNamespace.ts +41 -25
  441. package/src/server/extendBaseNode.ts +318 -0
  442. package/src/server/getExtensionModules.ts +2 -0
  443. package/src/server/getFunctions.ts +6 -0
  444. package/src/server/getLogics.ts +87 -19
  445. package/src/server/getMemberIdentifier.ts +282 -65
  446. package/src/server/getProcesses.ts +397 -4
  447. package/src/server/getScope.ts +67 -0
  448. package/src/server/index.ts +13 -1
  449. package/src/server/naslServer.ts +694 -632
  450. package/src/server/process2LogicNamespace.ts +30 -2
  451. package/src/server/translator.ts +425 -128
  452. package/src/service/config/index.js +1 -1
  453. package/src/service/creator/errHandles.js +5 -2
  454. package/src/service/creator/index.js +0 -6
  455. package/src/service/storage/api.js +14 -0
  456. package/src/service/storage/init.ts +218 -45
  457. package/src/service/storage/service.ts +6 -0
  458. package/src/service/storage/storagePoint.ts +16 -16
  459. package/src/templator/genCreateBlock.ts +6 -6
  460. package/src/templator/genCurdEditMultipleKeyBlock.ts +29 -30
  461. package/src/templator/genCurdMultipleKeyBlock.ts +11 -11
  462. package/src/templator/genEditTableBlock.ts +5 -5
  463. package/src/templator/genEnumSelectBlock.ts +2 -2
  464. package/src/templator/genGetBlock.ts +7 -9
  465. package/src/templator/genGridViewBlock.ts +59 -9
  466. package/src/templator/genQueryComponent.ts +46 -32
  467. package/src/templator/genSelectBlock.ts +5 -15
  468. package/src/templator/genTableBlock.ts +5 -9
  469. package/src/templator/genUpdateBlock.ts +10 -12
  470. package/src/templator/utils.ts +12 -6
  471. package/src/test/fixtures/env.ts +0 -2
  472. package/src/test/units/page/Element.spec.ts +3 -3
  473. package/src/test/units/temp/temp.spec.ts +1 -1
  474. package/src/utils/index.ts +24 -0
  475. package/src/utils/string.ts +39 -9
  476. package/out/concepts/basics/stdlib/nasl.validate.js +0 -527
  477. package/out/concepts/basics/stdlib/nasl.validate.js.map +0 -1
  478. package/out/data/Module.d.ts +0 -34
  479. package/out/data/Module.js +0 -53
  480. package/out/data/Module.js.map +0 -1
  481. package/src/automate/engine/index.d.ts +0 -3
@@ -1,4 +1,4 @@
1
- import aslConfig from '../../types/config';
1
+ import eventBus from '../../eventBus';
2
2
 
3
3
  function showError(message) {
4
4
  try {
@@ -27,7 +27,10 @@ export default {
27
27
  return;
28
28
 
29
29
  if (versionStatus[err.code])
30
- aslConfig.defaultApp?.emit('updateVersionStatus', versionStatus[err.code], err.msg);
30
+ eventBus.emit('updateVersionStatus', {
31
+ status: versionStatus[err.code],
32
+ message: err.msg,
33
+ });
31
34
 
32
35
  showError(err.msg || '系统繁忙');
33
36
  },
@@ -27,12 +27,6 @@ const requester = function (requestInfo) {
27
27
  headers.Cookie = aslConfig.cookie;
28
28
  }
29
29
 
30
- headers['request-lcpAppId'] = headers['request-lcpAppId'] || aslConfig.defaultApp?.id;
31
- if (aslConfig.defaultApp?.baseVersion)
32
- headers['request-appBaseVersion'] = aslConfig.defaultApp.baseVersion;
33
- if (aslConfig.defaultApp?.versionChangedTime)
34
- headers['request-versionChangedTime'] = aslConfig.defaultApp.versionChangedTime;
35
-
36
30
  let data;
37
31
  const method2 = method.toUpperCase();
38
32
  if (Object.keys(body).length || ['PUT', 'POST', 'PATCH'].includes(method2)) {
@@ -0,0 +1,14 @@
1
+ export default {
2
+ batchQuery: {
3
+ url: {
4
+ method: 'post',
5
+ path: '/proxy/nasl-storage/api/storage/batchQuery',
6
+ },
7
+ },
8
+ batchAction: {
9
+ url: {
10
+ method: 'post',
11
+ path: '/proxy/nasl-storage/api/storage/batchAction',
12
+ },
13
+ },
14
+ };
@@ -1,43 +1,174 @@
1
1
  import { embeddedTSEmitter } from '../../translator';
2
- import { App } from '../../concepts';
2
+ import { App, LogicItem, Logic, Module, View, ViewElement } from '../../concepts';
3
3
  import { getConceptConstructor } from '../../decorators';
4
4
  import { config } from '../../config';
5
5
  import Vue from 'vue';
6
6
  /// #if process.env.NODE_ENV
7
- import axios from './';
7
+ import storageService from './service';
8
8
  /// #else
9
9
  import * as fs from 'fs-extra';
10
10
  import * as jsoner from './jsoner';
11
11
  /// #endif
12
12
 
13
+ function getLogic(key: string, app: any, diffLogicList: string[]) {
14
+ if (!diffLogicList.includes(key)) {
15
+ diffLogicList.push(key);
16
+ if (key.startsWith('app')) {
17
+ const index = key.lastIndexOf('.');
18
+ const name = key.slice(index + 1);
19
+ const logic = app.logics.find((item: any) => item.name === name);
20
+ if (logic && logic.body && logic.body.length > 2) {
21
+ logic.body.map((item: any) => getStatement(item, app, diffLogicList));
22
+ }
23
+ } else if (key.startsWith('extensions')) {
24
+ const _pathArr = key.split('.');
25
+ const _name = _pathArr[1];
26
+ const _path = _pathArr[3];
27
+ const _list = app.dependencies;
28
+ const _module = _list.find((it: Module) => {
29
+ const name = it.name.replace('-', '_');
30
+ return name === _name;
31
+ });
32
+ const logic = _module.logics.find((item: Logic) => item.name === _path);
33
+ if (logic && logic.body && logic.body.length > 2) {
34
+ logic.body.map((item: any) => getStatement(item, app, diffLogicList));
35
+ }
36
+ }
37
+ }
38
+ }
39
+ /* 获取LogicITEM */
40
+ function getStatement(state: any, app: any, diffLogicList: string[]) {
41
+ let logicItems = [];
42
+ switch (state.concept) {
43
+ case 'Assignment':
44
+ logicItems = [state.left, state.right];
45
+ break;
46
+ case 'IfStatement':
47
+ logicItems = [...state.consequent, ...state.alternate];
48
+ break;
49
+ case 'ForEachStatement':
50
+ logicItems = [...state.body, state.each, state.start, state.end];
51
+ break;
52
+ case 'SwitchStatement':
53
+ logicItems = state.cases.map(getStatement);
54
+ break;
55
+ case 'SwitchCase':
56
+ logicItems = [state.test, ...state.consequent];
57
+ break;
58
+ case 'WhileStatement':
59
+ logicItems = [state.test, ...state.body];
60
+ break;
61
+ case 'CallLogic':
62
+ getLogic(state.calleeKey, app, diffLogicList);
63
+ break;
64
+ default:
65
+ break;
66
+ }
67
+
68
+ return logicItems.filter((item: LogicItem) => !!item);
69
+ }
70
+
13
71
  /**
14
72
  * 执行更新
15
73
  */
16
74
  async function doAction(app: any, actionItem: any) {
75
+ app.emit('saving');
17
76
  let hasFrontEnd = false;
18
77
  let hasBackEnd = false;
19
78
  const actionList: any[] = [];
20
79
  const { list, actionMsg, action } = actionItem || {};
80
+ const loopEle = (view: View | ViewElement, checkAuth: boolean) => {
81
+ if (view instanceof View) {
82
+ view?.elements?.forEach((item) => loopEle(item, checkAuth));
83
+ }
84
+ view?.children?.forEach((item) => loopEle(item, checkAuth));
85
+ if (view instanceof ViewElement) {
86
+ if (view.tag === 'u-uploader' || view.tag === 'van-uploader') {
87
+ const bute = view?.bindAttrs.find((item) => item.name === 'url');
88
+ if (checkAuth) {
89
+ if (bute?.value.endsWith('/import') && !view.view.parentAuth) {
90
+ hasBackEnd = true;
91
+ }
92
+ } else {
93
+ if (bute?.value.endsWith('/import')) {
94
+ hasBackEnd = true;
95
+ }
96
+ }
97
+ }
98
+ }
99
+ };
21
100
  if (Array.isArray(list)) {
22
101
  list.forEach((event) => {
23
102
  const emitTarget = event?.originEvent?.target;
24
- if (emitTarget.concept === 'View' || emitTarget.view) {
25
- hasFrontEnd = true;
26
- } else {
103
+ const _path: string = event.originEvent.path;
104
+ const _root = _path.split('.')?.[1] || '';
105
+ if (
106
+ ['entities', 'processes', 'logics', 'enums', 'structures', 'interfaces', 'interfaceDependencies', 'componentDependencies', 'configuration', 'dependencies'].some((item) =>
107
+ _root.startsWith(item))
108
+ ) {
27
109
  hasBackEnd = true;
28
110
  }
111
+ const itemloop = (_i: LogicItem, app: any, diffArr: string[]) => {
112
+ const _l = getStatement(_i, app, diffArr);
113
+ if (_l.length) {
114
+ _l.map((_ii: LogicItem) => itemloop(_ii, app, diffArr));
115
+ }
116
+ };
117
+ if (emitTarget.concept === 'Logic') {
118
+ const diffArr: string[] = [];
119
+ if (emitTarget.body.length > 2) {
120
+ emitTarget.body.forEach((it: LogicItem) => {
121
+ itemloop(it, app, diffArr);
122
+ });
123
+ }
124
+ const result = diffArr.filter((item) => item.startsWith('app') || item.startsWith('extensions'));
125
+ if (result.length) {
126
+ hasBackEnd = true;
127
+ }
128
+ }
129
+ if (emitTarget.view) {
130
+ hasFrontEnd = true;
131
+ }
132
+ if (emitTarget.concept === 'View') {
133
+ const isDelete = event?.originEvent?.action === 'delete';
134
+ const isUpdateAuth = event?.originEvent?.action === 'update' && event?.originEvent?.object && 'auth' in event?.originEvent?.object;
135
+ if (isDelete || isUpdateAuth) {
136
+ const app = emitTarget.app;
137
+ const diffArr: string[] = [];
138
+ emitTarget.logics.forEach((logic: Logic) => {
139
+ if (logic.body.length > 2) {
140
+ logic.body.forEach((it: LogicItem) => {
141
+ itemloop(it, app, diffArr);
142
+ });
143
+ }
144
+ });
145
+ const result = diffArr.filter((item) => item.startsWith('app') || item.startsWith('extensions'));
146
+ if (result.length) {
147
+ hasBackEnd = true;
148
+ }
149
+ emitTarget.children.forEach((item: View | ViewElement) => loopEle(item, isDelete));
150
+ emitTarget.elements.forEach((item: View | ViewElement) => loopEle(item, isDelete));
151
+ }
152
+ hasFrontEnd = true;
153
+ }
154
+ if (emitTarget.concept === 'ViewElement') {
155
+ loopEle(emitTarget, true);
156
+ }
157
+ if (emitTarget.concept === 'BindAttribute' && emitTarget.name === 'url' && emitTarget.value.endsWith('/import')) {
158
+ if (!emitTarget.view.parentAuth) {
159
+ hasBackEnd = true;
160
+ }
161
+ }
29
162
  if (emitTarget.concept === 'CallLogic') {
30
- hasBackEnd = true;
163
+ const arrlist: string[] = [];
164
+ getLogic(emitTarget.calleeKey, emitTarget.app, arrlist);
165
+ const result = arrlist.filter((item) => item.startsWith('app') || item.startsWith('extensions'));
166
+ // console.log(result, 'CallLogic');
167
+ if (result.length) {
168
+ hasBackEnd = true;
169
+ }
31
170
  }
32
- event.eventList.forEach(({
33
- action,
34
- path,
35
- object: objItem,
36
- }: {
37
- action: string;
38
- path: string;
39
- object: any
40
- }) => {
171
+ event.eventList.forEach(({ action, path, object: objItem }: { action: string; path: string; object: any }) => {
41
172
  if (Array.isArray(objItem)) {
42
173
  if (action === 'update') {
43
174
  actionList.push({
@@ -72,13 +203,22 @@ async function doAction(app: any, actionItem: any) {
72
203
  } else if (hasBackEnd) {
73
204
  ChangedNASLType = 'backend';
74
205
  }
206
+ let err;
75
207
  if (config.storage.protocol === 'http') {
76
- const res = await axios.post('/api/storage/batchAction', actionList, {
77
- headers: {
78
- appId: app.id,
79
- ChangedNASLType,
80
- },
81
- });
208
+ try {
209
+ await storageService.batchAction({
210
+ body: actionList,
211
+ headers: {
212
+ appId: app.id,
213
+ ChangedNASLType,
214
+ 'request-appBaseVersion': (window as any).appData?.baseVersion || '',
215
+ 'request-versionChangedTime': (window as any).appData?.versionChangedTime || '',
216
+ },
217
+ });
218
+ } catch (error) {
219
+ err = error;
220
+ app.emit('refresh');
221
+ }
82
222
  } else if (config.storage.protocol === 'mock') {
83
223
  // Do nothing
84
224
  } else {
@@ -88,7 +228,7 @@ async function doAction(app: any, actionItem: any) {
88
228
  spaces: 4,
89
229
  });
90
230
  }
91
-
231
+ app.emit('saved', err);
92
232
  if (!app._historying) {
93
233
  if (app._historyIndex !== app._historyList.length) {
94
234
  app._historyList = app._historyList.splice(0, app._historyIndex);
@@ -116,6 +256,7 @@ function handleApp(app: any) {
116
256
  app._historyList = [];
117
257
  app._historyIndex = 0;
118
258
  app._historying = false;
259
+ app._timer = null;
119
260
 
120
261
  app.on('undo', () => {
121
262
  app._historying = true;
@@ -129,29 +270,56 @@ function handleApp(app: any) {
129
270
  * 开启收集
130
271
  */
131
272
  app.on('collect:start', (event: any) => {
273
+ if (app._timer) {
274
+ clearTimeout(app._timer);
275
+ }
276
+ if (!app._noTimer) {
277
+ app._noTimer = event.noTimer;
278
+ }
279
+ if (!app._noTimer) {
280
+ app._timer = setTimeout(() => {
281
+ console.error('收集超时,请及时排查原因');
282
+ app.emit('refresh');
283
+ }, 800);
284
+ }
285
+ if (!app._isCollectingCount) {
286
+ app._actionMsg = event?.actionMsg;
287
+ app._action = event?.action;
288
+ }
132
289
  app._isCollectingCount++;
133
- app._actionMsg = event?.actionMsg;
134
- app._action = event?.action;
135
290
  });
136
291
 
137
292
  /**
138
293
  * 结束收集
139
294
  */
140
295
  app.on('collect:end', async () => {
141
- if (Array.isArray(app._collectingList) && app._collectingList.length) {
142
- embeddedTSEmitter.emit('change', {
143
- value: app._collectingList,
144
- });
145
- await doAction(app, {
146
- list: app._collectingList,
147
- actionMsg: app._actionMsg,
148
- action: app._action,
149
- });
150
- }
151
296
  app._isCollectingCount--;
152
- app._collectingList = [];
153
- app._actionMsg = '';
154
- app._action = '';
297
+ if (app._isCollectingCount === 0) {
298
+ if (app._timer) {
299
+ clearTimeout(app._timer);
300
+ }
301
+ // 结束收集时,立即将全局收集变量状态重置,防止下次收集数据混乱
302
+ const collectingList = app._collectingList;
303
+ const actionMsg = app._actionMsg;
304
+ const action = app._action;
305
+ app._collectingList = [];
306
+ app._actionMsg = '';
307
+ app._action = '';
308
+ app._noTimer = undefined;
309
+ if (Array.isArray(collectingList) && collectingList.length) {
310
+ embeddedTSEmitter.emit('change', {
311
+ value: collectingList,
312
+ });
313
+ await doAction(app, {
314
+ list: collectingList,
315
+ actionMsg,
316
+ action,
317
+ });
318
+ }
319
+ } else if (app._isCollectingCount < 0) {
320
+ app._isCollectingCount = 0;
321
+ throw Error('关闭收集有问题,请排查');
322
+ }
155
323
  });
156
324
 
157
325
  /**
@@ -178,7 +346,9 @@ function handleApp(app: any) {
178
346
  break;
179
347
  }
180
348
  actionMsg += getConceptConstructor(concept).nodeTitle;
181
- actionMsg += `“${name}”`;
349
+ if (name) {
350
+ actionMsg += `“${name}”`;
351
+ }
182
352
  doAction(app, {
183
353
  list: [event],
184
354
  actionMsg,
@@ -198,17 +368,20 @@ export async function loadApp(appId?: string) {
198
368
  let app: App;
199
369
  if (config.storage.protocol === 'http') {
200
370
  // 请求
201
- const res = await axios.post('/api/storage/batchQuery', [
202
- {
203
- path: 'app',
204
- excludes: ['views'],
205
- },
206
- ], {
371
+ const data = await storageService.batchQuery({
372
+ body: [
373
+ {
374
+ path: 'app',
375
+ // excludes: ['views'],
376
+ },
377
+ ],
207
378
  headers: {
208
379
  appId,
380
+ 'request-appBaseVersion': (window as any).appData?.baseVersion || '',
381
+ 'request-versionChangedTime': (window as any).appData?.versionChangedTime || '',
209
382
  },
210
383
  });
211
- const data = res?.data?.result;
384
+ // const data = res?.data?.result;
212
385
  app = new App(Object.assign(data?.[0], { id: appId }));
213
386
  } else if (config.storage.protocol === 'mock') {
214
387
  app = new App({
@@ -0,0 +1,6 @@
1
+ import { createService } from '../creator';
2
+ import api from './api';
3
+
4
+ const service = createService(api);
5
+
6
+ export default service;
@@ -1,20 +1,20 @@
1
1
  const loadThen = {
2
- App: {
3
- childNodes: [
4
- {
5
- field: 'views',
6
- concept: 'View',
7
- },
8
- ],
9
- },
10
- View: {
11
- childNodes: [
12
- {
13
- field: 'children',
14
- concept: 'View',
15
- },
16
- ],
17
- },
2
+ // App: {
3
+ // childNodes: [
4
+ // {
5
+ // field: 'views',
6
+ // concept: 'View',
7
+ // },
8
+ // ],
9
+ // },
10
+ // View: {
11
+ // childNodes: [
12
+ // {
13
+ // field: 'children',
14
+ // concept: 'View',
15
+ // },
16
+ // ],
17
+ // },
18
18
  };
19
19
 
20
20
  /**
@@ -59,7 +59,7 @@ export function genCreateFormTemplate(entity: Entity, nameGroup: NameGroup, sele
59
59
  formItem += `<u-checkbox v-model="${vModel}"></u-checkbox>`;
60
60
  } else if (propertyTypeName === 'Integer' || propertyTypeName === 'Long') {
61
61
  formItem += `<u-number-input v-model="${vModel}" placeholder="请输入${label}"></u-number-input>`;
62
- } else if (propertyTypeName === 'Decimal') {
62
+ } else if (propertyTypeName === 'Double') {
63
63
  formItem += `<u-number-input v-model="${vModel}" :precision="0" :step="0" placeholder="请输入${label}"></u-number-input>`;
64
64
  } else if (propertyTypeName === 'Text') {
65
65
  formItem += `<u-textarea v-model="${vModel}" placeholder="请输入${label}"></u-textarea>`;
@@ -122,6 +122,7 @@ export function genH5CreateFormTemplate(entity: Entity, nameGroup: NameGroup, se
122
122
  <template #input><van-cascader title="请选择${label}" placeholder="请选择${label}"
123
123
  v-model="${vModel}" :data-source="${selectNameGroup.viewLogicLoad}"
124
124
  text-field="${lowerEntityName}.${displayedProperty.name}" value-field="${lowerEntityName}.${relationProperty.name}"
125
+ :notitleblock="true"
125
126
  :pageable="true" :remote-paging="true"></van-cascader></template>
126
127
  `;
127
128
  } else
@@ -132,13 +133,12 @@ export function genH5CreateFormTemplate(entity: Entity, nameGroup: NameGroup, se
132
133
  formItem += `<template #input><van-switch v-model="${vModel}"></van-switch></template>`;
133
134
  } else if (propertyTypeName === 'Integer' || propertyTypeName === 'Long') {
134
135
  formItem += `<template #input><van-stepper v-model="${vModel}" placeholder="请输入${property.label || property.name}"></van-stepper></template>`;
135
- } else if (propertyTypeName === 'Decimal') {
136
+ } else if (propertyTypeName === 'Double') {
136
137
  formItem += `<template #input><van-stepper v-model="${vModel}" placeholder="请输入${property.label || property.name}"></van-stepper></template>`;
137
138
  } else if (propertyTypeName === 'Text') {
138
- formItem = formItem.replace(/other/g, '');
139
- formItem += `<template #input><van-input v-model="${vModel}" placeholder="请输入${property.label || property.name}"></van-input></template>`;
139
+ formItem += `<template #input><van-fieldtextarea v-model="${vModel}" placeholder="请输入${property.label || property.name}"></van-fieldtextarea></template>`;
140
140
  } else if (propertyTypeName === 'Date') {
141
- formItem += `<template #input><van-calendar v-model="${vModel}" title="请输入${property.label || property.name}"></van-calendar></template>`;
141
+ formItem += `<template #input><van-calendar :default-date.sync="${vModel}" title="选择日期"></van-calendar></template>`;
142
142
  } else if (propertyTypeName === 'Time') {
143
143
  formItem += `<template #input><van-datetime-picker type="time" v-model="${vModel}" title="请选择${property.label || property.name}" label-field=""></van-datetime-picker></template>`;
144
144
  } else if (propertyTypeName === 'DateTime') {
@@ -232,7 +232,7 @@ export function genCreateBlock(entity: Entity, view: View) {
232
232
  const createLogic = ns?.logics?.find((logic) => logic.name === `create`);
233
233
 
234
234
  const nameGroup: NameGroup = {};
235
- nameGroup.viewElementMainView = view.getLogicUniqueName('form1');
235
+ nameGroup.viewElementMainView = view.getViewElementUniqueName('form1');
236
236
  nameGroup.viewVariableEntity = view.getVariableUniqueName(utils.firstLowerCase(entity.name));
237
237
  nameGroup.viewLogicSubmit = view.getLogicUniqueName('submit');
238
238
 
@@ -5,14 +5,23 @@
5
5
  */
6
6
  import * as utils from '../utils';
7
7
  import { App, Namespace, Entity, View, Enum } from '../concepts';
8
+ import { NaslCoreTypeAnnotation, NaslUITypeAnnotation, NaslTypeAnnotation, NaslLogicItem, NaslNode } from './utils';
8
9
  import {
9
- NaslCoreTypeAnnotation, NaslUITypeAnnotation, NaslTypeAnnotation,
10
- NaslLogicItem, NaslNode,
11
- } from './utils';
12
- import {
13
- filterProperty, NameGroup, genUniqueQueryNameGroup, getFirstDisplayedProperty, genCallComponentLogic,
14
- genQueryLogic, genEditTableTemplate, genEditTableLoadLogic, genTableRemoveLogic, genEnumSelectBlock,
15
- genLoadSelectLogic, genBlurUpdateLogic, genEditQueryStructure, genQueryStructure, genLogicParam,
10
+ filterProperty,
11
+ NameGroup,
12
+ genUniqueQueryNameGroup,
13
+ getFirstDisplayedProperty,
14
+ genCallComponentLogic,
15
+ genQueryLogic,
16
+ genEditTableTemplate,
17
+ genEditTableLoadLogic,
18
+ genTableRemoveLogic,
19
+ genEnumSelectBlock,
20
+ genLoadSelectLogic,
21
+ genBlurUpdateLogic,
22
+ genEditQueryStructure,
23
+ genQueryStructure,
24
+ genLogicParam,
16
25
  } from '.';
17
26
 
18
27
  function genFilterTemplate(entity: Entity, nameGroup: NameGroup, selectNameGroupMap: Map<string, NameGroup>) {
@@ -29,10 +38,7 @@ function genFilterTemplate(entity: Entity, nameGroup: NameGroup, selectNameGroup
29
38
  let formItem = `<u-form-item label="${label}">`;
30
39
 
31
40
  const { typeAnnotation } = property || {};
32
- const {
33
- typeName: propertyTypeName,
34
- typeNamespace: propertyTypeNamespace,
35
- } = typeAnnotation || {};
41
+ const { typeName: propertyTypeName, typeNamespace: propertyTypeNamespace } = typeAnnotation || {};
36
42
  if (property.relationEntity) {
37
43
  // 有外键关联
38
44
  const relationEntity = parentNode?.findEntityByName(property.relationEntity);
@@ -54,13 +60,13 @@ function genFilterTemplate(entity: Entity, nameGroup: NameGroup, selectNameGroup
54
60
  } else if (propertyTypeName === 'Boolean') {
55
61
  formItem += `
56
62
  <u-select clearable v-model="${vModel}" placeholder="请输入${label}">
57
- <u-select-item :value="true">是</u-select-item>
58
- <u-select-item :value="false">否</u-select-item>
63
+ <u-select-item :value="true" text="是">是</u-select-item>
64
+ <u-select-item :value="false" text="否">否</u-select-item>
59
65
  </u-select>
60
66
  `;
61
67
  } else if (propertyTypeName === 'Integer' || propertyTypeName === 'Long') {
62
68
  formItem += `<u-number-input v-model="${vModel}" placeholder="请输入${label}"></u-number-input>`;
63
- } else if (propertyTypeName === 'Decimal') {
69
+ } else if (propertyTypeName === 'Double') {
64
70
  formItem += `<u-number-input v-model="${vModel}" :precision="0" :step="0" placeholder="请输入${label}"></u-number-input>`;
65
71
  } else if (propertyTypeName === 'Text') {
66
72
  formItem += `<u-textarea v-model="${vModel}" placeholder="请输入${label}"></u-textarea>`;
@@ -90,7 +96,7 @@ function genFilterTemplate(entity: Entity, nameGroup: NameGroup, selectNameGroup
90
96
  </u-form-item>
91
97
  </u-form>
92
98
 
93
- <u-button color="primary" @click="${nameGroup.viewLogicCreate}($event)">创建</u-button>
99
+ <u-button color="primary" @click="${nameGroup.viewLogicCreate}">创建</u-button>
94
100
  </u-linear-layout>
95
101
  `;
96
102
  }
@@ -127,10 +133,7 @@ function genSaveModalTemplate(entity: Entity, nameGroup: NameGroup, selectNameGr
127
133
  >`;
128
134
 
129
135
  const { typeAnnotation } = property || {};
130
- const {
131
- typeName: propertyTypeName,
132
- typeNamespace: propertyTypeNamespace,
133
- } = typeAnnotation || {};
136
+ const { typeName: propertyTypeName, typeNamespace: propertyTypeNamespace } = typeAnnotation || {};
134
137
  if (property.relationEntity) {
135
138
  // 有外键关联
136
139
  const relationEntity = parentNode?.findEntityByName(property.relationEntity);
@@ -152,12 +155,12 @@ function genSaveModalTemplate(entity: Entity, nameGroup: NameGroup, selectNameGr
152
155
  } else if (propertyTypeName === 'Boolean') {
153
156
  formItem += `
154
157
  <u-select clearable v-model="${vModel}" placeholder="请输入${label}">
155
- <u-select-item :value="true">是</u-select-item>
156
- <u-select-item :value="false">否</u-select-item>
158
+ <u-select-item :value="true" text="是">是</u-select-item>
159
+ <u-select-item :value="false" text="否">否</u-select-item>
157
160
  </u-select>`;
158
161
  } else if (propertyTypeName === 'Integer' || propertyTypeName === 'Long') {
159
162
  formItem += `<u-number-input v-model="${vModel}" placeholder="请输入${label}"></u-number-input>`;
160
- } else if (propertyTypeName === 'Decimal') {
163
+ } else if (propertyTypeName === 'Double') {
161
164
  formItem += `<u-number-input v-model="${vModel}" :precision="0" :step="0" placeholder="请输入${label}"></u-number-input>`;
162
165
  } else if (propertyTypeName === 'Text') {
163
166
  formItem += `<u-textarea v-model="${vModel}" placeholder="请输入${label}"></u-textarea>`;
@@ -306,18 +309,14 @@ function genSubmitLogic(entity: Entity, nameGroup: NameGroup) {
306
309
  NaslLogicItem.CallLogic({
307
310
  calleeNamespace: updateLogic.getNamespace(),
308
311
  calleeName: updateLogic.name,
309
- arguments: [
310
- genLogicParam(`${updateLogic.params[0].name}`, nameGroup.viewVariableInput),
311
- ],
312
+ arguments: [genLogicParam(`${updateLogic.params[0].name}`, nameGroup.viewVariableInput)],
312
313
  }),
313
314
  ],
314
315
  alternate: [
315
316
  NaslLogicItem.CallLogic({
316
317
  calleeNamespace: createLogic.getNamespace(),
317
318
  calleeName: createLogic.name,
318
- arguments: [
319
- genLogicParam(`${createLogic.params[0].name}`, nameGroup.viewVariableInput),
320
- ],
319
+ arguments: [genLogicParam(`${createLogic.params[0].name}`, nameGroup.viewVariableInput)],
321
320
  }),
322
321
  ],
323
322
  }),
@@ -382,7 +381,7 @@ export function genCurdEditMultipleKeyBlock(entity: Entity, view: View) {
382
381
  const entityLogic = genQueryLogic(allEntities, nameGroup, true, true, parentNode);
383
382
  newLogics.push(entityLogic);
384
383
 
385
- console.log(entityStructure);
384
+ // console.log(entityStructure);
386
385
 
387
386
  return `<template>
388
387
  <u-linear-layout direction="vertical">
@@ -439,7 +438,7 @@ export function genCurdEditMultipleKeyBlock(entity: Entity, view: View) {
439
438
  "concept": "BindEvent",
440
439
  "arguments": [],
441
440
  "name": "created",
442
- "calleeNamespace": "${view.getNamespace()}.views.${view.name}.logics",
441
+ "calleeNamespace": "",
443
442
  "calleeName": "${nameGroup.viewLogicInit}"
444
443
  }
445
444
  ],