@lcap/nasl 2.20.0-beta.2 → 2.20.0

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 (323) hide show
  1. package/out/automate/engine/index.d.ts +1 -1
  2. package/out/automate/engine/index.js +2 -3
  3. package/out/automate/engine/index.js.map +1 -1
  4. package/out/automate/engine/uniqueName.d.ts +1 -1
  5. package/out/automate/engine/uniqueName.js +2 -2
  6. package/out/automate/engine/uniqueName.js.map +1 -1
  7. package/out/automate/engine/utils.js +4 -1
  8. package/out/automate/engine/utils.js.map +1 -1
  9. package/out/automate/template/myProcess.d.ts +1 -1
  10. package/out/automate/template/myProcess.js +2 -2
  11. package/out/automate/template/myProcess.js.map +1 -1
  12. package/out/bak/translator.js +14 -22
  13. package/out/bak/translator.js.map +1 -1
  14. package/out/common/BaseNode.js +4 -1
  15. package/out/common/BaseNode.js.map +1 -1
  16. package/out/common/Command.d.ts +1 -0
  17. package/out/common/Command.js +5 -1
  18. package/out/common/Command.js.map +1 -1
  19. package/out/concepts/App__.d.ts +4 -0
  20. package/out/concepts/App__.js +30 -6
  21. package/out/concepts/App__.js.map +1 -1
  22. package/out/concepts/Assignee__.js +4 -3
  23. package/out/concepts/Assignee__.js.map +1 -1
  24. package/out/concepts/BatchAssignment__.js +3 -3
  25. package/out/concepts/BatchAssignment__.js.map +1 -1
  26. package/out/concepts/BindAttribute__.d.ts +7 -0
  27. package/out/concepts/BindAttribute__.js +270 -39
  28. package/out/concepts/BindAttribute__.js.map +1 -1
  29. package/out/concepts/BindDirective__.d.ts +7 -0
  30. package/out/concepts/BindDirective__.js +215 -17
  31. package/out/concepts/BindDirective__.js.map +1 -1
  32. package/out/concepts/BindStyle__.d.ts +7 -0
  33. package/out/concepts/BindStyle__.js +194 -4
  34. package/out/concepts/BindStyle__.js.map +1 -1
  35. package/out/concepts/CallFunction__.js +22 -8
  36. package/out/concepts/CallFunction__.js.map +1 -1
  37. package/out/concepts/CallInterface__.js +3 -2
  38. package/out/concepts/CallInterface__.js.map +1 -1
  39. package/out/concepts/CallLogic__.d.ts +3 -0
  40. package/out/concepts/CallLogic__.js +78 -89
  41. package/out/concepts/CallLogic__.js.map +1 -1
  42. package/out/concepts/CallQueryComponent__.js +20 -3
  43. package/out/concepts/CallQueryComponent__.js.map +1 -1
  44. package/out/concepts/ConfigGroup__.d.ts +1 -0
  45. package/out/concepts/ConfigGroup__.js +13 -0
  46. package/out/concepts/ConfigGroup__.js.map +1 -1
  47. package/out/concepts/ConfigProperty__.d.ts +19 -0
  48. package/out/concepts/ConfigProperty__.js +61 -0
  49. package/out/concepts/ConfigProperty__.js.map +1 -1
  50. package/out/concepts/Configuration__.d.ts +1 -0
  51. package/out/concepts/Configuration__.js +13 -0
  52. package/out/concepts/Configuration__.js.map +1 -1
  53. package/out/concepts/DataSource__.js.map +1 -1
  54. package/out/concepts/Destination__.d.ts +1 -0
  55. package/out/concepts/Destination__.js +61 -7
  56. package/out/concepts/Destination__.js.map +1 -1
  57. package/out/concepts/EntityProperty__.js +9 -1
  58. package/out/concepts/EntityProperty__.js.map +1 -1
  59. package/out/concepts/EnumItem__.d.ts +5 -5
  60. package/out/concepts/EnumItem__.js +6 -6
  61. package/out/concepts/Enum__.d.ts +20 -19
  62. package/out/concepts/Enum__.js +28 -1
  63. package/out/concepts/Enum__.js.map +1 -1
  64. package/out/concepts/ExternalDestination__.d.ts +1 -0
  65. package/out/concepts/ExternalDestination__.js +21 -3
  66. package/out/concepts/ExternalDestination__.js.map +1 -1
  67. package/out/concepts/ForEachStatement__.js +2 -0
  68. package/out/concepts/ForEachStatement__.js.map +1 -1
  69. package/out/concepts/Frontend__.d.ts +2 -1
  70. package/out/concepts/Frontend__.js.map +1 -1
  71. package/out/concepts/Identifier__.js +16 -5
  72. package/out/concepts/Identifier__.js.map +1 -1
  73. package/out/concepts/InterfaceParam__.js +9 -1
  74. package/out/concepts/InterfaceParam__.js.map +1 -1
  75. package/out/concepts/JSBlock__.js +5 -1
  76. package/out/concepts/JSBlock__.js.map +1 -1
  77. package/out/concepts/Logic__.d.ts +79 -79
  78. package/out/concepts/Logic__.js +16 -3
  79. package/out/concepts/Logic__.js.map +1 -1
  80. package/out/concepts/Match__.d.ts +0 -3
  81. package/out/concepts/Match__.js +11 -66
  82. package/out/concepts/Match__.js.map +1 -1
  83. package/out/concepts/MemberExpression__.js +9 -0
  84. package/out/concepts/MemberExpression__.js.map +1 -1
  85. package/out/concepts/Module__.d.ts +16 -0
  86. package/out/concepts/Module__.js +43 -0
  87. package/out/concepts/Module__.js.map +1 -1
  88. package/out/concepts/NewComposite__.d.ts +2 -4
  89. package/out/concepts/NewComposite__.js +91 -126
  90. package/out/concepts/NewComposite__.js.map +1 -1
  91. package/out/concepts/NewList__.d.ts +1 -0
  92. package/out/concepts/NewList__.js +22 -2
  93. package/out/concepts/NewList__.js.map +1 -1
  94. package/out/concepts/NewMap__.d.ts +1 -0
  95. package/out/concepts/NewMap__.js +43 -11
  96. package/out/concepts/NewMap__.js.map +1 -1
  97. package/out/concepts/OqlQueryComponent__.js +40 -12
  98. package/out/concepts/OqlQueryComponent__.js.map +1 -1
  99. package/out/concepts/Param__.js +10 -2
  100. package/out/concepts/Param__.js.map +1 -1
  101. package/out/concepts/ProcessElement__.js +2 -1
  102. package/out/concepts/ProcessElement__.js.map +1 -1
  103. package/out/concepts/ProcessOutcome__.js +1 -1
  104. package/out/concepts/ProcessOutcome__.js.map +1 -1
  105. package/out/concepts/ProcessOutcomes__.js +1 -1
  106. package/out/concepts/ProcessOutcomes__.js.map +1 -1
  107. package/out/concepts/Process__.js +1 -0
  108. package/out/concepts/Process__.js.map +1 -1
  109. package/out/concepts/Return__.js +10 -2
  110. package/out/concepts/Return__.js.map +1 -1
  111. package/out/concepts/StringInterpolation__.js +14 -2
  112. package/out/concepts/StringInterpolation__.js.map +1 -1
  113. package/out/concepts/StringLiteral__.js +6 -6
  114. package/out/concepts/StringLiteral__.js.map +1 -1
  115. package/out/concepts/StructureProperty__.js +9 -1
  116. package/out/concepts/StructureProperty__.js.map +1 -1
  117. package/out/concepts/TypeAnnotation__.d.ts +6 -3
  118. package/out/concepts/TypeAnnotation__.js +67 -13
  119. package/out/concepts/TypeAnnotation__.js.map +1 -1
  120. package/out/concepts/ValidationRule__.d.ts +1 -0
  121. package/out/concepts/ValidationRule__.js +53 -0
  122. package/out/concepts/ValidationRule__.js.map +1 -1
  123. package/out/concepts/Variable__.js +9 -1
  124. package/out/concepts/Variable__.js.map +1 -1
  125. package/out/concepts/ViewElement__.js +17 -1
  126. package/out/concepts/ViewElement__.js.map +1 -1
  127. package/out/concepts/View__.d.ts +1 -3
  128. package/out/concepts/View__.js +22 -11
  129. package/out/concepts/View__.js.map +1 -1
  130. package/out/concepts/basics/stdlib/nasl.collection.js +6 -1
  131. package/out/concepts/basics/stdlib/nasl.collection.js.map +1 -1
  132. package/out/concepts/basics/stdlib/nasl.configuration.js +3 -0
  133. package/out/concepts/basics/stdlib/nasl.configuration.js.map +1 -1
  134. package/out/concepts/basics/stdlib/nasl.core.d.ts +2 -0
  135. package/out/concepts/basics/stdlib/nasl.core.js +34 -0
  136. package/out/concepts/basics/stdlib/nasl.core.js.map +1 -1
  137. package/out/concepts/basics/stdlib/nasl.util.js +4 -2
  138. package/out/concepts/basics/stdlib/nasl.util.js.map +1 -1
  139. package/out/concepts/basics/types/index.d.ts +1 -0
  140. package/out/concepts/basics/types/index.js +3 -1
  141. package/out/concepts/basics/types/index.js.map +1 -1
  142. package/out/concepts/index__.d.ts +0 -1
  143. package/out/concepts/index__.js +0 -1
  144. package/out/concepts/index__.js.map +1 -1
  145. package/out/enums/KEYWORDS.js +8 -0
  146. package/out/enums/KEYWORDS.js.map +1 -1
  147. package/out/generator/genBundleFiles.js +24 -5
  148. package/out/generator/genBundleFiles.js.map +1 -1
  149. package/out/generator/genReleaseBody.d.ts +2 -3
  150. package/out/generator/genReleaseBody.js +97 -23
  151. package/out/generator/genReleaseBody.js.map +1 -1
  152. package/out/generator/permission.d.ts +2 -10
  153. package/out/generator/permission.js +27 -14
  154. package/out/generator/permission.js.map +1 -1
  155. package/out/server/entity2LogicNamespace.js +2 -20
  156. package/out/server/entity2LogicNamespace.js.map +1 -1
  157. package/out/server/extendBaseNode.js +16 -5
  158. package/out/server/extendBaseNode.js.map +1 -1
  159. package/out/server/formatTsUtils.d.ts +2 -1
  160. package/out/server/formatTsUtils.js +40 -10
  161. package/out/server/formatTsUtils.js.map +1 -1
  162. package/out/server/getLogics.d.ts +2 -2
  163. package/out/server/getLogics.js +3 -3
  164. package/out/server/getLogics.js.map +1 -1
  165. package/out/server/getMemberIdentifier.d.ts +1 -0
  166. package/out/server/getMemberIdentifier.js +27 -1
  167. package/out/server/getMemberIdentifier.js.map +1 -1
  168. package/out/server/index.js +1 -0
  169. package/out/server/index.js.map +1 -1
  170. package/out/server/naslServer.d.ts +7 -1
  171. package/out/server/naslServer.js +519 -46
  172. package/out/server/naslServer.js.map +1 -1
  173. package/out/server/translator.js +109 -33
  174. package/out/server/translator.js.map +1 -1
  175. package/out/service/storage/init.js +21 -1
  176. package/out/service/storage/init.js.map +1 -1
  177. package/out/templator/genCreateBlock.js +1 -3
  178. package/out/templator/genCreateBlock.js.map +1 -1
  179. package/out/templator/genCurdEditMultipleKeyBlock.js +1 -3
  180. package/out/templator/genCurdEditMultipleKeyBlock.js.map +1 -1
  181. package/out/templator/genCurdMultipleKeyBlock.js +2 -4
  182. package/out/templator/genCurdMultipleKeyBlock.js.map +1 -1
  183. package/out/templator/genGetBlock.js +1 -1
  184. package/out/templator/genGetBlock.js.map +1 -1
  185. package/out/templator/genGridViewBlock.js +2 -2
  186. package/out/templator/genGridViewBlock.js.map +1 -1
  187. package/out/templator/genListViewBlock.js +7 -1
  188. package/out/templator/genListViewBlock.js.map +1 -1
  189. package/out/templator/genSelectBlock.js +1 -1
  190. package/out/templator/genSelectBlock.js.map +1 -1
  191. package/out/templator/genTableBlock.js +2 -2
  192. package/out/templator/genTableBlock.js.map +1 -1
  193. package/out/templator/genUpdateBlock.js +2 -3
  194. package/out/templator/genUpdateBlock.js.map +1 -1
  195. package/out/utils/traverse.js +8 -2
  196. package/out/utils/traverse.js.map +1 -1
  197. package/package.json +2 -2
  198. package/sandbox/stdlib/dist/nasl.logging.js +0 -0
  199. package/sandbox/stdlib/dist/nasl.util.js +0 -0
  200. package/sandbox/stdlib/nasl.collection.ts +1 -0
  201. package/sandbox/stdlib/nasl.core.ts +34 -0
  202. package/sandbox/stdlib/nasl.oql.ts +71 -15
  203. package/sandbox/stdlib/nasl.util.ts +9 -3
  204. package/src/automate/engine/dist/index.dev.js +517 -0
  205. package/src/automate/engine/index.js +2 -3
  206. package/src/automate/engine/uniqueName.js +2 -2
  207. package/src/automate/engine/utils.js +4 -2
  208. package/src/automate/template/myProcess.js +2 -2
  209. package/src/bak/translator.js +16 -25
  210. package/src/common/BaseNode.ts +3 -1
  211. package/src/common/Command.ts +4 -0
  212. package/src/common/dist/BaseNode.js +1101 -0
  213. package/src/concepts/App__.ts +36 -7
  214. package/src/concepts/Assignee__.ts +4 -3
  215. package/src/concepts/BatchAssignment__.ts +3 -3
  216. package/src/concepts/BindAttribute__.ts +299 -38
  217. package/src/concepts/BindDirective__.ts +204 -31
  218. package/src/concepts/BindStyle__.ts +187 -24
  219. package/src/concepts/CallFunction__.ts +55 -10
  220. package/src/concepts/CallInterface__.ts +3 -2
  221. package/src/concepts/CallLogic__.ts +110 -90
  222. package/src/concepts/CallQueryComponent__.ts +18 -3
  223. package/src/concepts/ConfigGroup__.ts +17 -4
  224. package/src/concepts/ConfigProperty__.ts +70 -4
  225. package/src/concepts/Configuration__.ts +14 -5
  226. package/src/concepts/DataSource__.ts +4 -1
  227. package/src/concepts/Destination__.ts +61 -7
  228. package/src/concepts/EntityProperty__.ts +7 -1
  229. package/src/concepts/EnumItem__.ts +6 -6
  230. package/src/concepts/Enum__.ts +22 -19
  231. package/src/concepts/ExternalDestination__.ts +28 -8
  232. package/src/concepts/ForEachStatement__.ts +2 -0
  233. package/src/concepts/Frontend__.ts +2 -1
  234. package/src/concepts/Identifier__.ts +16 -5
  235. package/src/concepts/InterfaceParam__.ts +7 -1
  236. package/src/concepts/JSBlock__.ts +3 -2
  237. package/src/concepts/Logic__.ts +95 -83
  238. package/src/concepts/Match__.ts +31 -67
  239. package/src/concepts/MemberExpression__.ts +6 -0
  240. package/src/concepts/Module__.ts +57 -0
  241. package/src/concepts/NewComposite__.ts +95 -140
  242. package/src/concepts/NewList__.ts +23 -2
  243. package/src/concepts/NewMap__.ts +48 -24
  244. package/src/concepts/OqlQueryComponent__.ts +40 -20
  245. package/src/concepts/Param__.ts +178 -176
  246. package/src/concepts/ProcessElement__.ts +2 -1
  247. package/src/concepts/ProcessOutcome__.ts +1 -1
  248. package/src/concepts/ProcessOutcomes__.ts +1 -1
  249. package/src/concepts/Process__.ts +1 -0
  250. package/src/concepts/Return__.ts +8 -2
  251. package/src/concepts/StringInterpolation__.ts +19 -7
  252. package/src/concepts/StringLiteral__.ts +7 -6
  253. package/src/concepts/StructureProperty__.ts +7 -1
  254. package/src/concepts/TypeAnnotation__.ts +101 -14
  255. package/src/concepts/ValidationRule__.ts +58 -9
  256. package/src/concepts/Variable__.ts +11 -1
  257. package/src/concepts/ViewElement__.ts +39 -2
  258. package/src/concepts/View__.ts +26 -14
  259. package/src/concepts/basics/stdlib/dist/nasl.util.js +1602 -0
  260. package/src/concepts/basics/stdlib/dist/reference2TypeAnnotationList.js +24 -0
  261. package/src/concepts/basics/stdlib/nasl.collection.ts +6 -1
  262. package/src/concepts/basics/stdlib/nasl.configuration.ts +3 -0
  263. package/src/concepts/basics/stdlib/nasl.core.ts +33 -2
  264. package/src/concepts/basics/stdlib/nasl.util.ts +4 -2
  265. package/src/concepts/basics/types/index.ts +1 -0
  266. package/src/concepts/dist/BindAttribute__.js +795 -0
  267. package/src/concepts/dist/BindEvent__.js +732 -0
  268. package/src/concepts/dist/CallFunction__.js +527 -0
  269. package/src/concepts/dist/CallLogic__.js +932 -0
  270. package/src/concepts/dist/Destination__.js +708 -0
  271. package/src/concepts/dist/ExternalDestination__.js +298 -0
  272. package/src/concepts/dist/Identifier__.js +311 -0
  273. package/src/concepts/dist/StringInterpolation__.js +231 -0
  274. package/src/concepts/dist/TypeAnnotation__.js +834 -0
  275. package/src/concepts/dist/ViewElement__.js +1692 -0
  276. package/src/concepts/dist/View__.js +1601 -0
  277. package/src/concepts/index__.ts +0 -1
  278. package/src/enums/KEYWORDS.ts +8 -0
  279. package/src/generator/dist/genBundleFiles.js +261 -0
  280. package/src/generator/dist/genMetaData.js +245 -0
  281. package/src/generator/dist/permission.js +405 -0
  282. package/src/generator/genBundleFiles.ts +24 -5
  283. package/src/generator/genReleaseBody.ts +75 -30
  284. package/src/generator/permission.ts +31 -15
  285. package/src/server/entity2LogicNamespace.ts +2 -20
  286. package/src/server/extendBaseNode.ts +15 -5
  287. package/src/server/formatTsUtils.ts +41 -10
  288. package/src/server/getLogics.ts +4 -4
  289. package/src/server/getMemberIdentifier.ts +27 -1
  290. package/src/server/index.ts +2 -0
  291. package/src/server/naslServer.ts +520 -48
  292. package/src/server/translator.ts +96 -34
  293. package/src/service/storage/dist/init.js +579 -0
  294. package/src/service/storage/init.ts +22 -2
  295. package/src/templator/dist/genEditTableBlock.js +204 -0
  296. package/src/templator/dist/genGridViewBlock.js +265 -0
  297. package/src/templator/dist/genListViewBlock.js +84 -0
  298. package/src/templator/dist/genTableBlock.js +209 -0
  299. package/src/templator/dist/utils.js +527 -0
  300. package/src/templator/genCreateBlock.ts +1 -3
  301. package/src/templator/genCurdEditMultipleKeyBlock.ts +1 -3
  302. package/src/templator/genCurdMultipleKeyBlock.ts +2 -4
  303. package/src/templator/genGetBlock.ts +1 -1
  304. package/src/templator/genGridViewBlock.ts +3 -4
  305. package/src/templator/genListViewBlock.ts +9 -3
  306. package/src/templator/genSelectBlock.ts +1 -1
  307. package/src/templator/genTableBlock.ts +3 -3
  308. package/src/templator/genUpdateBlock.ts +2 -3
  309. package/src/utils/traverse.ts +10 -2
  310. package/ts-worker/lib/tsserver.js +10 -2
  311. package/ts-worker/package.json +1 -0
  312. package/ts-worker/webpack.config.js +11 -2
  313. package/out/concepts/ConstructArgument__.d.ts +0 -40
  314. package/out/concepts/ConstructArgument__.js +0 -108
  315. package/out/concepts/ConstructArgument__.js.map +0 -1
  316. package/out/concepts/Construct__.d.ts +0 -189
  317. package/out/concepts/Construct__.js +0 -340
  318. package/out/concepts/Construct__.js.map +0 -1
  319. package/out/templator/sql-parser/index.d.ts +0 -1
  320. package/out/templator/sql-parser/index.js +0 -228
  321. package/out/templator/sql-parser/index.js.map +0 -1
  322. package/out/templator/sql-parser/parser.js +0 -26664
  323. package/out/templator/sql-parser/parser.js.map +0 -1
@@ -0,0 +1,527 @@
1
+ "use strict";
2
+ exports.__esModule = true;
3
+ exports.NaslNode = exports.NaslQueryExpression = exports.NaslLogicItem = exports.NaslCollectionTypeAnnotation = exports.NaslTypeAnnotation = exports.NaslUITypeAnnotation = exports.NaslCoreTypeAnnotation = exports.genUniqueQueryNameGroup = exports.genMemberExpression = exports.genLogicParam = exports.getFirstDisplayedProperty = exports.getParamFromLogic = exports.getExpression = exports.filterProperty = void 0;
4
+ var __1 = require("..");
5
+ exports.filterProperty = function (key) { return function (property) {
6
+ if (property.display) {
7
+ return property.display[key];
8
+ }
9
+ else {
10
+ return !['id', 'createdTime', 'updatedTime'].includes(property.name);
11
+ }
12
+ }; };
13
+ /**
14
+ * 生成表达式的代码
15
+ * @param property 实体属性
16
+ * @param expression 表达式
17
+ */
18
+ function getExpression(property, expression) {
19
+ var typeAnnotation = (property || {}).typeAnnotation;
20
+ var _a = typeAnnotation || {}, propertyTypeName = _a.typeName, propertyTypeNamespace = _a.typeNamespace;
21
+ if (propertyTypeName === 'DateTime')
22
+ return "$utils['FormatDateTime'](" + expression + ", 'YYYY-MM-DD HH:mm:ss')";
23
+ else if (propertyTypeName === 'Date')
24
+ return "$utils['FormatDate'](" + expression + ", 'YYYY-MM-DD')";
25
+ else {
26
+ var namespaceArr = propertyTypeNamespace.split('.');
27
+ var type = namespaceArr.pop();
28
+ if (type === 'enums') {
29
+ return "$utils['EnumValueToText'](" + expression + ", '__enumTypeAnnotation_" + propertyTypeNamespace + "." + propertyTypeName + "')";
30
+ }
31
+ else {
32
+ return "" + (expression || "''");
33
+ }
34
+ }
35
+ }
36
+ exports.getExpression = getExpression;
37
+ /**
38
+ * 从 Logic 中获取变量
39
+ * @param resolver
40
+ * @param paramName
41
+ */
42
+ function getParamFromLogic(logic, paramName) {
43
+ var params = logic.params;
44
+ return params.find(function (item) { return item.name === paramName; });
45
+ }
46
+ exports.getParamFromLogic = getParamFromLogic;
47
+ function getFirstDisplayedProperty(entity) {
48
+ var property = entity.properties.find(function (property) { return !property.readonly; });
49
+ if (!property)
50
+ property = entity.properties[0];
51
+ return property;
52
+ }
53
+ exports.getFirstDisplayedProperty = getFirstDisplayedProperty;
54
+ function genArgumentMemberExpression(arr) {
55
+ var expressionNode;
56
+ var propertyName = arr.pop();
57
+ if (arr.length >= 1) {
58
+ expressionNode = exports.NaslLogicItem.MemberExpression({
59
+ object: genArgumentMemberExpression(arr),
60
+ property: exports.NaslLogicItem.Identifier({
61
+ name: propertyName
62
+ })
63
+ });
64
+ }
65
+ else {
66
+ return exports.NaslLogicItem.Identifier({
67
+ name: propertyName
68
+ });
69
+ }
70
+ return expressionNode;
71
+ }
72
+ /**
73
+ * 生成逻辑 Param
74
+ * @param paramIdOrName 参数 id 或引用名称
75
+ * @param expression 表达式
76
+ * @param schemaChildren 数据结构
77
+ */
78
+ function genLogicParam(paramIdOrName, expression) {
79
+ return exports.NaslLogicItem.Argument({
80
+ keyword: paramIdOrName,
81
+ expression: genArgumentMemberExpression(expression.split('.'))
82
+ });
83
+ }
84
+ exports.genLogicParam = genLogicParam;
85
+ /**
86
+ * 生成接口 Param
87
+ * @param paramIdOrName 参数 id 或引用名称
88
+ * @param expression 表达式
89
+ * @param schemaChildren 数据结构
90
+ */
91
+ function genMemberExpression(expression, schemaRefs) {
92
+ if (schemaRefs === void 0) { schemaRefs = []; }
93
+ var arr = expression.split('.');
94
+ var expressionNode;
95
+ arr.forEach(function (name, index) {
96
+ var currentNode = exports.NaslLogicItem.Identifier({
97
+ name: name
98
+ });
99
+ if (expressionNode) {
100
+ expressionNode = exports.NaslLogicItem.MemberExpression({
101
+ object: expressionNode,
102
+ property: exports.NaslLogicItem.Identifier({
103
+ name: name
104
+ })
105
+ });
106
+ }
107
+ else {
108
+ expressionNode = currentNode;
109
+ }
110
+ });
111
+ return expressionNode;
112
+ }
113
+ exports.genMemberExpression = genMemberExpression;
114
+ function capFirstLetter(word) {
115
+ if (!word)
116
+ return word;
117
+ return word[0].toUpperCase() + word.slice(1);
118
+ }
119
+ /**
120
+ * 生成数据查询唯一的命名组
121
+ * @param viewName 页面名称
122
+ * @param componentName 组件名称
123
+ * @param suffix 其它后缀,比如实体名等等
124
+ * @param defaultInView 是否在页面逻辑中用 load 简写
125
+ */
126
+ function genUniqueQueryNameGroup(scope, view, componentName, defaultInView, suffix) {
127
+ if (componentName === void 0) { componentName = ''; }
128
+ if (defaultInView === void 0) { defaultInView = true; }
129
+ if (suffix === void 0) { suffix = ''; }
130
+ var result = {};
131
+ result.viewLogicLoad = view.getLogicUniqueName("load" + (defaultInView ? '' : capFirstLetter(componentName)) + (suffix ? capFirstLetter(suffix) : ''));
132
+ result.logic = scope.getLogicUniqueName("load" + capFirstLetter(view.name) + (componentName ? capFirstLetter(componentName) : '') + (suffix ? capFirstLetter(suffix) : ''));
133
+ result.structure = scope.getStructureUniqueName(__1.utils.firstUpperCase(result.logic + 'Structure'));
134
+ return result;
135
+ }
136
+ exports.genUniqueQueryNameGroup = genUniqueQueryNameGroup;
137
+ function genNaslCoreTypeAnnotation(typeName, text) {
138
+ if (text === void 0) { text = ''; }
139
+ return {
140
+ concept: 'TypeAnnotation',
141
+ name: '',
142
+ typeKind: 'primitive',
143
+ typeNamespace: 'nasl.core',
144
+ typeName: typeName,
145
+ text: text
146
+ };
147
+ }
148
+ function genNaslUITypeAnnotation(typeName) {
149
+ return {
150
+ concept: 'TypeAnnotation',
151
+ name: '',
152
+ typeKind: 'reference',
153
+ typeNamespace: 'nasl.ui',
154
+ typeName: typeName
155
+ };
156
+ }
157
+ function genNaslCollectionTypeAnnotation(typeName) {
158
+ return function (typeArguments) { return ({
159
+ concept: 'TypeAnnotation',
160
+ name: '',
161
+ typeKind: 'generic',
162
+ typeNamespace: 'nasl.collection',
163
+ typeName: typeName,
164
+ typeArguments: typeArguments
165
+ }); };
166
+ }
167
+ function genNaslUIGenericTypeAnnotation(typeName) {
168
+ return function (typeArguments) { return ({
169
+ concept: 'TypeAnnotation',
170
+ name: '',
171
+ typeKind: 'generic',
172
+ typeNamespace: 'nasl.ui',
173
+ typeName: typeName,
174
+ typeArguments: typeArguments
175
+ }); };
176
+ }
177
+ exports.NaslCoreTypeAnnotation = {
178
+ Boolean: genNaslCoreTypeAnnotation('Boolean'),
179
+ Integer: genNaslCoreTypeAnnotation('Integer', 'Integer 整数'),
180
+ Double: genNaslCoreTypeAnnotation('Double'),
181
+ Decimal: genNaslCoreTypeAnnotation('Decimal'),
182
+ Long: genNaslCoreTypeAnnotation('Long', 'Long 长整数'),
183
+ String: genNaslCoreTypeAnnotation('String', 'String 字符串'),
184
+ Text: genNaslCoreTypeAnnotation('Text'),
185
+ Binary: genNaslCoreTypeAnnotation('Binary'),
186
+ Date: genNaslCoreTypeAnnotation('Date'),
187
+ Time: genNaslCoreTypeAnnotation('Time'),
188
+ DateTime: genNaslCoreTypeAnnotation('DateTime'),
189
+ Email: genNaslCoreTypeAnnotation('Email')
190
+ };
191
+ exports.NaslUITypeAnnotation = {
192
+ DataSourceParams: genNaslUITypeAnnotation('DataSourceParams'),
193
+ EventTarget: genNaslUITypeAnnotation('EventTarget'),
194
+ MouseEvent: genNaslUITypeAnnotation('MouseEvent'),
195
+ FocusEvent: genNaslUITypeAnnotation('FocusEvent'),
196
+ ChangeEvent: genNaslUITypeAnnotation('ChangeEvent'),
197
+ NavigateEvent: genNaslUITypeAnnotation('NavigateEvent'),
198
+ ChangeItemEvent: genNaslUITypeAnnotation('ChangeItemEvent'),
199
+ ChangeItemsEvent: genNaslUITypeAnnotation('ChangeItemsEvent'),
200
+ CascadeCapsulesEvent: genNaslUITypeAnnotation('CascadeCapsulesEvent'),
201
+ CollapseEvent: genNaslUITypeAnnotation('CollapseEvent'),
202
+ SliderEvent: genNaslUITypeAnnotation('SliderEvent'),
203
+ DateEvent: genNaslUITypeAnnotation('DateEvent'),
204
+ OperatorItemEvent: genNaslUITypeAnnotation('OperatorItemEvent'),
205
+ ValidateEvent: genNaslUITypeAnnotation('ValidateEvent'),
206
+ PaginationEvent: genNaslUITypeAnnotation('PaginationEvent'),
207
+ DurationEvent: genNaslUITypeAnnotation('DurationEvent'),
208
+ TransferEvent: genNaslUITypeAnnotation('TransferEvent'),
209
+ TreeChangeEvent: genNaslUITypeAnnotation('TreeChangeEvent'),
210
+ CheckedEvent: genNaslUITypeAnnotation('CheckedEvent'),
211
+ UploadEvent: genNaslUITypeAnnotation('UploadEvent'),
212
+ UploadErrorEvent: genNaslUITypeAnnotation('UploadErrorEvent'),
213
+ SortEvent: genNaslUITypeAnnotation('SortEvent'),
214
+ PoiInfo: genNaslUITypeAnnotation('PoiInfo'),
215
+ File: genNaslUITypeAnnotation('File'),
216
+ Current: genNaslUIGenericTypeAnnotation('Current')
217
+ };
218
+ exports.NaslTypeAnnotation = {
219
+ Reference: function (_a) {
220
+ var typeNamespace = _a.typeNamespace, typeName = _a.typeName;
221
+ return ({
222
+ concept: 'TypeAnnotation',
223
+ name: '',
224
+ typeKind: 'reference',
225
+ typeNamespace: typeNamespace,
226
+ typeName: typeName
227
+ });
228
+ },
229
+ AnonymousStructure: function (properties) { return ({
230
+ concept: 'TypeAnnotation',
231
+ typeKind: 'anonymousStructure',
232
+ properties: [{
233
+ concept: 'StructureProperty',
234
+ name: 'list',
235
+ typeAnnotation: {
236
+ concept: 'TypeAnnotation',
237
+ typeKind: 'generic',
238
+ typeName: 'List',
239
+ typeNamespace: 'nasl.collection',
240
+ typeArguments: [{
241
+ concept: 'TypeAnnotation',
242
+ typeKind: 'anonymousStructure',
243
+ properties: properties
244
+ }]
245
+ }
246
+ }, {
247
+ concept: 'StructureProperty',
248
+ name: 'total',
249
+ typeAnnotation: {
250
+ concept: 'TypeAnnotation',
251
+ typeKind: 'primitive',
252
+ typeNamespace: 'nasl.core',
253
+ typeName: 'Integer'
254
+ }
255
+ }]
256
+ }); }
257
+ };
258
+ exports.NaslCollectionTypeAnnotation = {
259
+ List: genNaslCollectionTypeAnnotation('List'),
260
+ PageOf: genNaslCollectionTypeAnnotation('PageOf')
261
+ };
262
+ exports.NaslLogicItem = {
263
+ // 开始
264
+ Start: {
265
+ concept: 'Start',
266
+ name: '',
267
+ label: '开始',
268
+ kind: 'Statement'
269
+ },
270
+ // 结束
271
+ End: {
272
+ concept: 'End',
273
+ name: '',
274
+ label: '结束',
275
+ kind: 'Statement'
276
+ },
277
+ // 调用逻辑
278
+ CallLogic: function (_a) {
279
+ var calleeNamespace = _a.calleeNamespace, calleeName = _a.calleeName, _b = _a.label, label = _b === void 0 ? '调用逻辑' : _b, _c = _a.shortcut, shortcut = _c === void 0 ? false : _c, args = _a.arguments;
280
+ return ({
281
+ concept: 'CallLogic',
282
+ name: '',
283
+ label: label,
284
+ kind: 'Statement',
285
+ shortcut: shortcut,
286
+ calleeNamespace: calleeNamespace,
287
+ calleeName: calleeName,
288
+ arguments: args
289
+ });
290
+ },
291
+ // 内置函数
292
+ CallFunction: function (_a) {
293
+ var _b = _a.calleeNamespace, calleeNamespace = _b === void 0 ? 'nasl.util' : _b, calleeName = _a.calleeName, _c = _a.label, label = _c === void 0 ? '内置函数' : _c, _d = _a.shortcut, shortcut = _d === void 0 ? false : _d, _e = _a.arguments, args = _e === void 0 ? [] : _e;
294
+ return ({
295
+ concept: 'CallFunction',
296
+ name: '',
297
+ label: '调用逻辑',
298
+ kind: 'Expression',
299
+ calleeNamespace: calleeNamespace,
300
+ calleeName: calleeName,
301
+ arguments: args
302
+ });
303
+ },
304
+ // 参数
305
+ Argument: function (_a) {
306
+ var keyword = _a.keyword, expression = _a.expression;
307
+ return ({
308
+ concept: 'Argument',
309
+ name: '',
310
+ kind: 'Statement',
311
+ keyword: keyword,
312
+ expression: expression
313
+ });
314
+ },
315
+ // 成员表达式
316
+ MemberExpression: function (_a) {
317
+ var object = _a.object, property = _a.property;
318
+ return ({
319
+ concept: 'MemberExpression',
320
+ name: '',
321
+ kind: 'Expression',
322
+ object: object,
323
+ property: property
324
+ });
325
+ },
326
+ // 变量
327
+ Identifier: function (_a) {
328
+ var name = _a.name;
329
+ return ({
330
+ concept: 'Identifier',
331
+ kind: 'Expression',
332
+ name: name
333
+ });
334
+ },
335
+ // 字面量
336
+ StringLiteral: function (_a) {
337
+ var value = _a.value;
338
+ return ({
339
+ concept: 'StringLiteral',
340
+ name: '',
341
+ kind: 'Expression',
342
+ value: value
343
+ });
344
+ },
345
+ Assignment: function (_a) {
346
+ var left = _a.left, right = _a.right;
347
+ return ({
348
+ concept: 'Assignment',
349
+ name: '',
350
+ label: '赋值',
351
+ kind: 'Statement',
352
+ left: left,
353
+ right: right
354
+ });
355
+ },
356
+ IfStatement: function (_a) {
357
+ var test = _a.test, consequent = _a.consequent, alternate = _a.alternate;
358
+ return ({
359
+ concept: 'IfStatement',
360
+ name: '',
361
+ kind: 'Statement',
362
+ test: test,
363
+ consequent: consequent,
364
+ alternate: alternate
365
+ });
366
+ },
367
+ // 二元
368
+ BinaryExpression: function (_a) {
369
+ var operator = _a.operator, left = _a.left, _b = _a.label, label = _b === void 0 ? '算术运算' : _b, right = _a.right;
370
+ return ({
371
+ concept: 'BinaryExpression',
372
+ name: '',
373
+ kind: 'Expression',
374
+ label: label,
375
+ operator: operator,
376
+ left: left,
377
+ right: right
378
+ });
379
+ }
380
+ };
381
+ exports.NaslQueryExpression = {
382
+ QueryFieldExpression: function (_a) {
383
+ var label = _a.label, isDotStar = _a.isDotStar, entityAsName = _a.entityAsName, propertyName = _a.propertyName;
384
+ return ({
385
+ concept: 'QueryFieldExpression',
386
+ name: '',
387
+ label: label,
388
+ kind: 'Expression',
389
+ isDotStar: isDotStar,
390
+ entityAsName: entityAsName,
391
+ propertyName: propertyName
392
+ });
393
+ },
394
+ QueryFromExpression: function (_a) {
395
+ var entityNamespace = _a.entityNamespace, entityName = _a.entityName, joinParts = _a.joinParts;
396
+ return ({
397
+ concept: 'QueryFromExpression',
398
+ name: '',
399
+ kind: 'Expression',
400
+ entityNamespace: entityNamespace,
401
+ entityName: entityName,
402
+ joinParts: joinParts
403
+ });
404
+ },
405
+ QueryJoinExpression: function (_a) {
406
+ var label = _a.label, entityNamespace = _a.entityNamespace, entityName = _a.entityName, joinType = _a.joinType, onExpressions = _a.onExpressions, joinParts = _a.joinParts;
407
+ return ({
408
+ concept: 'QueryJoinExpression',
409
+ label: label,
410
+ name: '',
411
+ kind: 'Expression',
412
+ entityNamespace: entityNamespace,
413
+ entityName: entityName,
414
+ joinType: joinType,
415
+ onExpressions: onExpressions,
416
+ joinParts: joinParts
417
+ });
418
+ },
419
+ QuerySelectExpression: function (_a) {
420
+ var label = _a.label, distinct = _a.distinct, star = _a.star, selectElements = _a.selectElements;
421
+ return ({
422
+ concept: 'QuerySelectExpression',
423
+ name: '',
424
+ kind: 'Expression',
425
+ label: label,
426
+ distinct: distinct,
427
+ star: star,
428
+ selectElements: selectElements
429
+ });
430
+ },
431
+ QueryOrderByExpression: function (_a) {
432
+ var label = _a.label, order = _a.order, orderElement = _a.orderElement;
433
+ return ({
434
+ concept: 'QueryOrderByExpression',
435
+ label: label,
436
+ order: order,
437
+ orderElement: orderElement
438
+ });
439
+ },
440
+ QueryLimitExpression: function (_a) {
441
+ var label = _a.label, pageElement = _a.pageElement, pageSizeElement = _a.pageSizeElement;
442
+ return ({
443
+ concept: 'QueryLimitExpression',
444
+ name: '',
445
+ kind: 'Expression',
446
+ label: label,
447
+ pageElement: pageElement,
448
+ pageSizeElement: pageSizeElement
449
+ });
450
+ },
451
+ CallQueryComponent: function (_a) {
452
+ var label = _a.label, typeAnnotation = _a.typeAnnotation, select = _a.select, from = _a.from, where = _a.where, limit = _a.limit, groupBy = _a.groupBy, having = _a.having, orderBy = _a.orderBy, logicName = _a.logicName, structureName = _a.structureName, ideVersion = _a.ideVersion;
453
+ return ({
454
+ concept: 'CallQueryComponent',
455
+ name: '',
456
+ label: label,
457
+ kind: 'Statement',
458
+ typeAnnotation: typeAnnotation,
459
+ select: select,
460
+ from: from,
461
+ where: where,
462
+ limit: limit,
463
+ groupBy: groupBy,
464
+ having: having,
465
+ orderBy: orderBy,
466
+ logicName: logicName,
467
+ structureName: structureName,
468
+ ideVersion: ideVersion
469
+ });
470
+ }
471
+ };
472
+ exports.NaslNode = {
473
+ Logic: function (_a) {
474
+ var name = _a.name, params = _a.params, returns = _a.returns, variables = _a.variables, body = _a.body, description = _a.description, playground = _a.playground;
475
+ return ({
476
+ concept: 'Logic',
477
+ name: name,
478
+ params: params,
479
+ returns: returns,
480
+ variables: variables,
481
+ body: body,
482
+ description: description,
483
+ playground: playground
484
+ });
485
+ },
486
+ Structure: function (_a) {
487
+ var name = _a.name, properties = _a.properties, origin = _a.origin;
488
+ return ({
489
+ concept: 'Structure',
490
+ name: name,
491
+ properties: properties,
492
+ origin: origin
493
+ });
494
+ },
495
+ StructureProperty: function (_a) {
496
+ var name = _a.name, typeAnnotation = _a.typeAnnotation;
497
+ return ({
498
+ concept: 'StructureProperty',
499
+ name: name,
500
+ typeAnnotation: typeAnnotation
501
+ });
502
+ },
503
+ Variable: function (_a) {
504
+ var name = _a.name, typeAnnotation = _a.typeAnnotation;
505
+ return ({
506
+ concept: 'Variable',
507
+ name: name,
508
+ typeAnnotation: typeAnnotation
509
+ });
510
+ },
511
+ Param: function (_a) {
512
+ var name = _a.name, typeAnnotation = _a.typeAnnotation;
513
+ return ({
514
+ concept: 'Param',
515
+ name: name,
516
+ typeAnnotation: typeAnnotation
517
+ });
518
+ },
519
+ Return: function (_a) {
520
+ var name = _a.name, typeAnnotation = _a.typeAnnotation;
521
+ return ({
522
+ concept: 'Return',
523
+ name: name,
524
+ typeAnnotation: typeAnnotation
525
+ });
526
+ }
527
+ };
@@ -16,7 +16,6 @@ import {
16
16
 
17
17
  export function genCreateFormTemplate(entity: Entity, nameGroup: NameGroup, selectNameGroupMap: Map<string, NameGroup>) {
18
18
  const dataSource = entity.parentNode as DataSource;
19
- const module = dataSource.parentNode as App | Module | Namespace;
20
19
  const properties = entity.properties.filter(filterProperty('inForm'));
21
20
 
22
21
  return `<u-form ref="${nameGroup.viewElementMainView}">
@@ -95,7 +94,6 @@ export function genCreateFormTemplate(entity: Entity, nameGroup: NameGroup, sele
95
94
 
96
95
  export function genH5CreateFormTemplate(entity: Entity, nameGroup: NameGroup, selectNameGroupMap: Map<string, NameGroup>) {
97
96
  const dataSource = entity.parentNode as DataSource;
98
- const module = dataSource.parentNode as App | Module | Namespace;
99
97
  const properties = entity.properties.filter(filterProperty('inForm'));
100
98
 
101
99
  return `<van-form ref="${nameGroup.viewElementMainView}">
@@ -240,7 +238,7 @@ function genSubmitLogic(createLogic: Logic, nameGroup: NameGroup) {
240
238
  export function genCreateBlock(entity: Entity, oldNode: ViewElement) {
241
239
  const view = oldNode.view;
242
240
  const dataSource = entity.parentNode as DataSource;
243
- const module = dataSource.parentNode as App | Module | Namespace;
241
+ const module = dataSource.app;
244
242
  const ns = entity.ns;
245
243
  const createLogic = ns?.logics?.find((logic) => logic.name === `create`);
246
244
 
@@ -27,7 +27,6 @@ import {
27
27
 
28
28
  function genFilterTemplate(entity: Entity, nameGroup: NameGroup, selectNameGroupMap: Map<string, NameGroup>) {
29
29
  const dataSource = entity.parentNode as DataSource;
30
- const module = dataSource.parentNode as App | Module | Namespace;
31
30
  const properties = entity.properties.filter(filterProperty('inFilter'));
32
31
 
33
32
  return `
@@ -110,7 +109,6 @@ function genFilterTemplate(entity: Entity, nameGroup: NameGroup, selectNameGroup
110
109
 
111
110
  function genSaveModalTemplate(entity: Entity, nameGroup: NameGroup, selectNameGroupMap: Map<string, NameGroup>) {
112
111
  const dataSource = entity.parentNode as DataSource;
113
- const module = dataSource.parentNode as App | Module | Namespace;
114
112
  const properties = entity.properties.filter(filterProperty('inForm'));
115
113
 
116
114
  return `
@@ -268,7 +266,7 @@ function genCreateLogic(nameGroup: NameGroup) {
268
266
  export function genCurdEditMultipleKeyBlock(entity: Entity, oldNode: ViewElement) {
269
267
  const view = oldNode.view;
270
268
  const dataSource = entity.parentNode as DataSource;
271
- const module = dataSource.parentNode as App | Module | Namespace;
269
+ const module = dataSource.app;
272
270
 
273
271
  const viewElementMainView = view.getViewElementUniqueName('tableView');
274
272
  const nameGroup = genUniqueQueryNameGroup(module, view, viewElementMainView);
@@ -19,7 +19,6 @@ import {
19
19
 
20
20
  function genFilterTemplate(entity: Entity, nameGroup: NameGroup, selectNameGroupMap: Map<string, NameGroup>) {
21
21
  const dataSource = entity.parentNode as DataSource;
22
- const module = dataSource.parentNode as App | Module | Namespace;
23
22
  const properties = entity.properties.filter(filterProperty('inFilter'));
24
23
  return `
25
24
  <u-linear-layout justify="space-between">
@@ -104,7 +103,6 @@ function genFilterTemplate(entity: Entity, nameGroup: NameGroup, selectNameGroup
104
103
 
105
104
  function genSaveModalTemplate(entity: Entity, nameGroup: NameGroup, selectNameGroupMap: Map<string, NameGroup>) {
106
105
  const dataSource = entity.parentNode as DataSource;
107
- const module = dataSource.parentNode as App | Module | Namespace;
108
106
  const properties = entity.properties.filter(filterProperty('inForm'));
109
107
 
110
108
  return `
@@ -432,7 +430,7 @@ function genModifyLogic(entity: Entity, nameGroup: NameGroup) {
432
430
  export function genCurdMultipleKeyBlock(entity: Entity, oldNode: ViewElement) {
433
431
  const view = oldNode.view;
434
432
  const dataSource = entity.parentNode as DataSource;
435
- const module = dataSource.parentNode as App | Module | Namespace;
433
+ const module = dataSource.app;
436
434
 
437
435
  const viewElementMainView = view.getViewElementUniqueName('tableView');
438
436
  const nameGroup = genUniqueQueryNameGroup(module, view, viewElementMainView);
@@ -554,7 +552,7 @@ export function genCurdMultipleKeyBlock(entity: Entity, oldNode: ViewElement) {
554
552
  export function genGridViewMultipleKeyBlock(entity: Entity, oldNode: ViewElement) {
555
553
  const view = oldNode.view;
556
554
  const dataSource = entity.parentNode as DataSource;
557
- const module = dataSource.parentNode as App | Module | Namespace;
555
+ const module = dataSource.app;
558
556
 
559
557
  const viewElementMainView = view.getViewElementUniqueName('gridView');
560
558
  const nameGroup = genUniqueQueryNameGroup(module, view, viewElementMainView);
@@ -14,7 +14,7 @@ export function genGetTemplate(entity: Entity, nameGroup: NameGroup) {
14
14
  .map((property) => {
15
15
  const valueExpression = `${nameGroup.viewVariableEntity}.${property.name}`;
16
16
  let formItem = ` <u-info-list-item><template #label><u-text text="${property.label || property.name}"></u-text></template>`;
17
- formItem += `<u-text :text="'${valueExpression}'"></u-text>`;
17
+ formItem += `<u-text :text="${valueExpression}"></u-text>`;
18
18
  formItem += ` </u-info-list-item>\n`;
19
19
  return formItem;
20
20
  })
@@ -11,7 +11,7 @@ import {
11
11
  genCallComponentLogic,
12
12
  genQueryLogic,
13
13
  } from '.';
14
- import { NaslUITypeAnnotation, NaslLogicItem, NaslNode } from './utils';
14
+ import { NaslUITypeAnnotation, NaslLogicItem, NaslNode } from './utils';
15
15
 
16
16
  /**
17
17
  * 根据实体属性生成表格列模板
@@ -39,7 +39,6 @@ export function genGridViewCardTemplate(property: EntityProperty, nameGroup: Nam
39
39
  return '';
40
40
  } else {
41
41
  valueExpression = `${currentName}.item.${lowerEntityName}.${property.name}`;
42
-
43
42
  }
44
43
  const getText = (property: EntityProperty) => {
45
44
  const propertyTypeName = property.typeAnnotation.typeName;
@@ -245,7 +244,7 @@ export function genGridViewRemoveLogic(entity: Entity, nameGroup: NameGroup) {
245
244
  export function genGridViewBlock(entity: Entity, oldNode: ViewElement) {
246
245
  const view = oldNode.view;
247
246
  const dataSource = entity.parentNode as DataSource;
248
- const module = dataSource.parentNode as App | Module | Namespace;
247
+ const module = dataSource.app;
249
248
 
250
249
  const viewElementMainView = view.getViewElementUniqueName('gridView');
251
250
  const nameGroup = genUniqueQueryNameGroup(module, view, viewElementMainView);
@@ -295,7 +294,7 @@ export function genGridViewCardBlock(property: EntityProperty, oldNode: ViewElem
295
294
  const view = oldNode.view;
296
295
  const entity = property.entity;
297
296
  const dataSource = entity.parentNode as DataSource;
298
- const module = dataSource.parentNode as App | Module | Namespace;
297
+ const module = dataSource.app;
299
298
 
300
299
  const viewElementMainView = view.getViewElementUniqueName('gridView');
301
300
  const nameGroup = genUniqueQueryNameGroup(module, view, viewElementMainView);
@@ -1,9 +1,9 @@
1
1
  import { config } from '../config';
2
2
  import * as utils from '../utils';
3
- import { App, Module, Namespace, Entity, EntityProperty, DataSource, ViewElement } from '../concepts';
3
+ import { App, Module, Namespace, Entity, EntityProperty, DataSource, ViewElement } from '../concepts';
4
4
  import { genUniqueQueryNameGroup, getFirstDisplayedProperty, genQueryLogic, genLogicParam } from '.';
5
5
  import {
6
- NameGroup, NaslUITypeAnnotation, NaslLogicItem, NaslNode,
6
+ NameGroup, NaslUITypeAnnotation, NaslLogicItem, NaslNode,
7
7
  } from './utils';
8
8
 
9
9
  export function genListViewTemplate(property: EntityProperty, nameGroup: NameGroup) {
@@ -35,6 +35,12 @@ export function genH5ListViewTemplate(property: EntityProperty, nameGroup: NameG
35
35
  <template #title>{{ ${valueExpression} }}</template>
36
36
  </van-cell>
37
37
  </template>
38
+ <template #prev>
39
+ 上一页
40
+ </template>
41
+ <template #next>
42
+ 下一页
43
+ </template>
38
44
  </van-list-view>`;
39
45
  }
40
46
 
@@ -89,7 +95,7 @@ export function genLoadListViewLogic(entity: Entity, nameGroup: NameGroup, newLo
89
95
  export function genListViewBlock(entity: Entity, oldNode: ViewElement, property: EntityProperty) {
90
96
  const view = oldNode.view;
91
97
  const dataSource = entity.parentNode as DataSource;
92
- const module = dataSource.parentNode as App | Module | Namespace;
98
+ const module = dataSource.app;
93
99
 
94
100
  const viewElementMainView = view.getViewElementUniqueName('listView');
95
101
  const nameGroup = genUniqueQueryNameGroup(module, view, viewElementMainView, false);