@lcap/nasl 2.20.0-beta.3 → 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 +26 -13
  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 +30 -14
  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,708 @@
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ extendStatics(d, b);
11
+ function __() { this.constructor = d; }
12
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
13
+ };
14
+ })();
15
+ var __assign = (this && this.__assign) || function () {
16
+ __assign = Object.assign || function(t) {
17
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
18
+ s = arguments[i];
19
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
20
+ t[p] = s[p];
21
+ }
22
+ return t;
23
+ };
24
+ return __assign.apply(this, arguments);
25
+ };
26
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
27
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
28
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
29
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
30
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
31
+ };
32
+ exports.__esModule = true;
33
+ exports.Destination = void 0;
34
+ var utils_1 = require("../automate/engine/utils");
35
+ var translator_1 = require("../translator");
36
+ var __1 = require("..");
37
+ var decorators_1 = require("../decorators");
38
+ var utils = require("../utils");
39
+ var classMap_1 = require("../common/classMap");
40
+ var Argument__1 = require("./Argument__");
41
+ var LogicItem__1 = require("./LogicItem__");
42
+ /**
43
+ * 跳转页面
44
+ */
45
+ var Destination = /** @class */ (function (_super) {
46
+ __extends(Destination, _super);
47
+ /**
48
+ * @param source 需要合并的部分参数
49
+ */
50
+ function Destination(source) {
51
+ var _this = this;
52
+ source = Object.assign({}, Destination_1.getDefaultOptions(), source);
53
+ _this = _super.call(this, source) || this;
54
+ /**
55
+ * 产品概念
56
+ */
57
+ _this.concept = 'Destination';
58
+ /**
59
+ * 跳转页面标题
60
+ */
61
+ _this.label = '跳转页面';
62
+ /**
63
+ * viewNamespace
64
+ */
65
+ _this.viewNamespace = undefined;
66
+ /**
67
+ * viewName
68
+ */
69
+ _this.viewName = undefined;
70
+ /**
71
+ * 实际参数
72
+ */
73
+ _this.arguments = [];
74
+ /**
75
+ * 锚点参数
76
+ */
77
+ _this.anchor = undefined;
78
+ /**
79
+ * target
80
+ */
81
+ _this.target = '_self';
82
+ _super.prototype.subConstructor.call(_this, source);
83
+ return _this;
84
+ }
85
+ Destination_1 = Destination;
86
+ Destination.from = function (source, parentNode, parentKey) {
87
+ return _super.from.call(this, source, parentNode, parentKey);
88
+ };
89
+ /**
90
+ * 设置viewNamespace
91
+ */
92
+ Destination.prototype.setViewNamespace = function (viewNamespace) {
93
+ var object = {
94
+ viewNamespace: viewNamespace
95
+ };
96
+ this.update(__assign({}, object));
97
+ };
98
+ /**
99
+ * 设置viewName
100
+ */
101
+ Destination.prototype.setViewName = function (viewName) {
102
+ var object = {
103
+ viewName: viewName
104
+ };
105
+ this.update(__assign({}, object));
106
+ };
107
+ /**
108
+ * 设置锚点参数
109
+ */
110
+ Destination.prototype.setAnchor = function (anchor) {
111
+ anchor._delete();
112
+ var relationOptions = { parentNode: this, parentKey: 'anchor' };
113
+ Object.assign(anchor, relationOptions);
114
+ var object = {
115
+ anchor: anchor
116
+ };
117
+ this.update(__assign({}, object));
118
+ };
119
+ /**
120
+ * 设置target
121
+ */
122
+ Destination.prototype.setTarget = function (target) {
123
+ var object = {
124
+ target: target
125
+ };
126
+ this.update(__assign({}, object));
127
+ };
128
+ Destination.prototype._insertArgumentAt = function (options, index) {
129
+ var argumentOptions = {};
130
+ var relationOptions = { parentNode: this, parentKey: 'arguments' };
131
+ var argument;
132
+ if (options instanceof Argument__1["default"]) {
133
+ options.ensureDelete(); // 同一实例不支持多处存在
134
+ argument = options;
135
+ Object.assign(argument, relationOptions);
136
+ }
137
+ else {
138
+ argument = Argument__1["default"].from(__assign(__assign({}, argumentOptions), options), this, 'arguments');
139
+ }
140
+ this.arguments.splice(index, 0, argument);
141
+ return argument;
142
+ };
143
+ Destination.prototype.insertArgumentAt = function (options, index) {
144
+ var node = this._insertArgumentAt(options, index);
145
+ node.create({
146
+ index: index,
147
+ parentNode: this,
148
+ parentKey: 'arguments'
149
+ });
150
+ return node;
151
+ };
152
+ Destination.prototype._addArgument = function (options) {
153
+ var index = this.arguments.length;
154
+ return this._insertArgumentAt(options, index);
155
+ };
156
+ Destination.prototype.addArgument = function (options) {
157
+ var node = this._addArgument(options);
158
+ var index = this.arguments.indexOf(node);
159
+ node.create({
160
+ index: index,
161
+ parentNode: this,
162
+ parentKey: 'arguments'
163
+ });
164
+ return node;
165
+ };
166
+ Destination.prototype.removeArgumentInArguments = function (options) {
167
+ var argument = options;
168
+ return argument["delete"]();
169
+ };
170
+ Destination.prototype.removeAnchor = function (options) {
171
+ var anchor;
172
+ if (typeof options === 'string') {
173
+ anchor = this.anchor;
174
+ if (!anchor) {
175
+ throw new Error('找不到锚点参数 ' + options);
176
+ }
177
+ }
178
+ else {
179
+ anchor = options;
180
+ }
181
+ return anchor["delete"]();
182
+ };
183
+ Destination.prototype.__removeLogicItem = function (logicItem) {
184
+ var parentKey = logicItem.parentKey;
185
+ var params = {
186
+ parentNode: this,
187
+ parentKey: parentKey,
188
+ index: -1,
189
+ object: null,
190
+ oldObject: logicItem
191
+ };
192
+ if (parentKey) {
193
+ params.parentKey = parentKey;
194
+ if (Array.isArray(this[parentKey])) {
195
+ var index = this[parentKey].indexOf(logicItem);
196
+ ~index && this[parentKey].splice(index, 1);
197
+ params.index = index;
198
+ }
199
+ else if (this[parentKey] === logicItem) {
200
+ params.index = 0;
201
+ this[parentKey] = undefined;
202
+ }
203
+ }
204
+ return params;
205
+ };
206
+ Object.defineProperty(Destination.prototype, "tsCalleeNamespace", {
207
+ //================================================================================
208
+ // ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
209
+ // 自动生成的代码已结束。下面可以手动编写。
210
+ //================================================================================
211
+ get: function () {
212
+ if (this.viewNamespace) {
213
+ var tsCalleeNamespace = this.viewNamespace;
214
+ tsCalleeNamespace = tsCalleeNamespace.replace(/\.[0-9]/g, function (m) { return m.replace('.', '.$'); });
215
+ tsCalleeNamespace = tsCalleeNamespace.replace(/-/g, '_');
216
+ return tsCalleeNamespace;
217
+ }
218
+ return '';
219
+ },
220
+ enumerable: false,
221
+ configurable: true
222
+ });
223
+ Object.defineProperty(Destination.prototype, "tsName", {
224
+ get: function () {
225
+ if (this.viewName) {
226
+ var tsName = this.viewName;
227
+ // 匹配所有特殊字符都转为_
228
+ tsName = tsName.replace(/\W/g, '_');
229
+ if (/^\d/.test(tsName)) {
230
+ tsName = '$' + tsName;
231
+ }
232
+ return tsName;
233
+ }
234
+ return '';
235
+ },
236
+ enumerable: false,
237
+ configurable: true
238
+ });
239
+ Destination.prototype.genViewArr = function () {
240
+ var _a;
241
+ var viewArr = ((_a = this.viewNamespace) === null || _a === void 0 ? void 0 : _a.split('.').splice(1).filter(function (item, index) { return index % 2 === 1; })) || [];
242
+ if (this.viewName) {
243
+ viewArr.push(this.viewName);
244
+ }
245
+ return viewArr;
246
+ };
247
+ Destination.prototype.toInViewMethod = function () {
248
+ var url = '';
249
+ var viewArr = this.genViewArr();
250
+ if (Array.isArray(viewArr) && viewArr.length) {
251
+ url += "/" + viewArr.join('/');
252
+ var completeArguments = this.completeArguments;
253
+ if (completeArguments.length) {
254
+ var node = this.viewNode;
255
+ var logicParam = [];
256
+ if (node) {
257
+ logicParam = node.params;
258
+ }
259
+ var logicParamLength_1 = logicParam.length;
260
+ var args = completeArguments.map(function (arg, index) {
261
+ var value = arg === null || arg === void 0 ? void 0 : arg.toJS();
262
+ var argStr = '';
263
+ if (value && index < logicParamLength_1) {
264
+ argStr += arg.keyword + "=" + '${';
265
+ if (value === 'undefined') {
266
+ argStr += "null";
267
+ }
268
+ else {
269
+ argStr += value;
270
+ }
271
+ argStr += '}';
272
+ }
273
+ return argStr;
274
+ }).filter(function (arg) { return !!arg; });
275
+ url += "?" + args.join('&');
276
+ }
277
+ if (this.anchor) {
278
+ var anchor = this.anchor.toJS();
279
+ if (anchor)
280
+ url += "#${" + anchor + "}";
281
+ }
282
+ }
283
+ return url;
284
+ };
285
+ Destination.prototype.toVue = function (options) {
286
+ var url = '`';
287
+ var viewArr = this.genViewArr();
288
+ if (Array.isArray(viewArr) && viewArr.length) {
289
+ url += "/" + viewArr.join('/');
290
+ var completeArguments = this.completeArguments;
291
+ if (completeArguments.length) {
292
+ var node = this.viewNode;
293
+ var logicParam = [];
294
+ if (node) {
295
+ logicParam = node.params;
296
+ }
297
+ var logicParamLength_2 = logicParam.length;
298
+ var args = completeArguments.map(function (arg, index) {
299
+ var value = arg === null || arg === void 0 ? void 0 : arg.toVue();
300
+ var argStr = '';
301
+ if (value && index < logicParamLength_2) {
302
+ argStr += arg.keyword + "=" + '${';
303
+ if (value === 'undefined') {
304
+ argStr += "null";
305
+ }
306
+ else {
307
+ argStr += value;
308
+ }
309
+ argStr += '}';
310
+ }
311
+ return argStr;
312
+ }).filter(function (arg) { return !!arg; });
313
+ url += "?" + args.join('&');
314
+ }
315
+ if (this.anchor) {
316
+ var anchor = this.anchor.toVue();
317
+ if (anchor)
318
+ url += "#${" + anchor + "}";
319
+ }
320
+ }
321
+ url += '`';
322
+ return url;
323
+ };
324
+ Destination.prototype.toUI = function () {
325
+ var url = '';
326
+ var viewArr = this.genViewArr();
327
+ if (Array.isArray(viewArr) && viewArr.length) {
328
+ url += '`';
329
+ url += "/" + viewArr.join('/');
330
+ var completeArguments = this.completeArguments;
331
+ if (completeArguments.length) {
332
+ var node = this.viewNode;
333
+ var logicParam = [];
334
+ if (node) {
335
+ logicParam = node.params;
336
+ }
337
+ var logicParamLength_3 = logicParam.length;
338
+ var args = completeArguments.map(function (arg, index) {
339
+ var value = arg === null || arg === void 0 ? void 0 : arg.toUI();
340
+ var argStr = '';
341
+ if (value && index < logicParamLength_3) {
342
+ argStr += arg.keyword + "=" + '${';
343
+ if (value === 'undefined') {
344
+ argStr += 'null';
345
+ }
346
+ else {
347
+ argStr += value;
348
+ }
349
+ argStr += '}';
350
+ }
351
+ return argStr;
352
+ }).filter(function (arg) { return !!arg; });
353
+ url += "?" + args.join('&');
354
+ }
355
+ if (this.anchor) {
356
+ var anchor = this.anchor.toUI();
357
+ if (anchor)
358
+ url += "#${" + anchor + "}";
359
+ }
360
+ url += '`';
361
+ }
362
+ return url;
363
+ };
364
+ Destination.prototype.toJS = function () {
365
+ var url = '';
366
+ var viewArr = this.genViewArr();
367
+ if (Array.isArray(viewArr) && viewArr.length) {
368
+ url += 'this.$destination(`';
369
+ url += "/" + viewArr.join('/');
370
+ var completeArguments = this.completeArguments;
371
+ if (completeArguments.length) {
372
+ var node = this.viewNode;
373
+ var logicParam = [];
374
+ if (node) {
375
+ logicParam = node.params;
376
+ }
377
+ var logicParamLength_4 = logicParam.length;
378
+ var args = completeArguments.map(function (arg, index) {
379
+ var value = arg === null || arg === void 0 ? void 0 : arg.toJS();
380
+ var argStr = '';
381
+ if (value && index < logicParamLength_4) {
382
+ argStr += arg.keyword + "=" + '${';
383
+ if (value === 'undefined') {
384
+ argStr += 'null';
385
+ }
386
+ else {
387
+ argStr += value;
388
+ }
389
+ argStr += '}';
390
+ }
391
+ return argStr;
392
+ }).filter(function (arg) { return !!arg; });
393
+ url += "?" + args.join('&');
394
+ }
395
+ if (this.anchor) {
396
+ var anchor = this.anchor.toJS();
397
+ if (anchor)
398
+ url += "#${" + anchor + "}";
399
+ }
400
+ url += '`,"';
401
+ url += "" + this.target;
402
+ url += '")';
403
+ }
404
+ return url;
405
+ };
406
+ Destination.getDefaultOptions = function () {
407
+ return {
408
+ anchor: {
409
+ concept: 'Anchor'
410
+ }
411
+ };
412
+ };
413
+ /**
414
+ * 设置view
415
+ */
416
+ Destination.prototype.setView = function (view) {
417
+ var _this = this;
418
+ var object = {
419
+ viewNamespace: view.getNamespace(),
420
+ viewName: view.name
421
+ };
422
+ var params = view.params.map(function (param) {
423
+ var relationOptions = { parentNode: _this, parentKey: 'arguments' };
424
+ var argument = Argument__1["default"].from({
425
+ keyword: param.name
426
+ }, _this);
427
+ Object.assign(argument, relationOptions);
428
+ return argument;
429
+ });
430
+ this.update(__assign(__assign({}, object), { arguments: params, folded: false }));
431
+ };
432
+ /**
433
+ * 设置view的argument
434
+ */
435
+ Destination.prototype.addCalleeArg = function (view) {
436
+ var _this = this;
437
+ var newArgs = this.arguments.map(function (argument) {
438
+ return Argument__1["default"].from(__assign({}, argument), _this);
439
+ });
440
+ var relationOptions = { parentNode: this, parentKey: 'arguments' };
441
+ /**
442
+ * 当前两个参数对应上,添加的时候,view会比参数位内容多,就添加一个 argment
443
+ */
444
+ if (view.params.length >= newArgs.length) {
445
+ view.params.forEach(function (param, index) {
446
+ var arg = newArgs[index];
447
+ if (!arg) {
448
+ var newParam = Argument__1["default"].from({
449
+ keyword: param.name
450
+ }, _this);
451
+ Object.assign(newParam, relationOptions);
452
+ newArgs.push(newParam);
453
+ }
454
+ else {
455
+ arg.keyword = param.name;
456
+ }
457
+ });
458
+ }
459
+ else {
460
+ /**
461
+ * 当前callview上数量比view参数还多,他就需要找一个arg使他变成可用的参数
462
+ */
463
+ newArgs.forEach(function (arg, index) {
464
+ var param = view.params[index];
465
+ if (param) {
466
+ arg.keyword = param.name;
467
+ }
468
+ });
469
+ }
470
+ this.update({
471
+ arguments: newArgs
472
+ });
473
+ };
474
+ Destination.prototype.deleteCalleeArg = function (argIndex) {
475
+ var _a, _b;
476
+ /**
477
+ * 传递过下标来,然后直接移动到最后结束
478
+ * 如果原来就是最后一个位置就不移动了
479
+ */
480
+ if (typeof argIndex === 'number') {
481
+ if (!((_a = this.arguments[argIndex]) === null || _a === void 0 ? void 0 : _a.expression)) {
482
+ return this.arguments[argIndex]["delete"]();
483
+ }
484
+ if (argIndex !== this.arguments.length - 1) {
485
+ // 如果本身没有值就直接删除
486
+ (_b = this.arguments[argIndex]) === null || _b === void 0 ? void 0 : _b.moveNode({
487
+ sourceNode: this.arguments[this.arguments.length - 1],
488
+ position: 'insertAfter'
489
+ });
490
+ }
491
+ }
492
+ };
493
+ /**
494
+ * 设置Arguments的KeyWord
495
+ */
496
+ Destination.prototype.setArgumentsKeyWord = function (options) {
497
+ var findArgument = options.findArgument, newKeyword = options.newKeyword;
498
+ findArgument.setKeyword(newKeyword);
499
+ };
500
+ Object.defineProperty(Destination.prototype, "viewPath", {
501
+ get: function () {
502
+ if (!this.viewNamespace) {
503
+ return '';
504
+ }
505
+ var namespaceAttr = this.viewNamespace.split('.');
506
+ namespaceAttr.push(this.viewName);
507
+ var viewNameAttr = [];
508
+ if (Array.isArray(namespaceAttr)) {
509
+ namespaceAttr.forEach(function (item, index) {
510
+ if (item === 'views') {
511
+ viewNameAttr.push(namespaceAttr[index + 1]);
512
+ }
513
+ });
514
+ }
515
+ return "/" + viewNameAttr.join('/');
516
+ },
517
+ enumerable: false,
518
+ configurable: true
519
+ });
520
+ Destination.prototype.toEmbeddedTSInProcess = function (state, prependCode) {
521
+ var _a;
522
+ // const tab = indent((state?.tabSize || 0));
523
+ if (this.tsCalleeNamespace && this.tsName) {
524
+ var code_1 = "destination: function() {\n";
525
+ code_1 += prependCode;
526
+ code_1 += '\n';
527
+ if (this.tsCalleeNamespace && this.viewName) {
528
+ code_1 += this.tsCalleeNamespace + "." + this.viewName + ".$destination({";
529
+ if (Array.isArray(this.arguments)) {
530
+ this.arguments.forEach(function (argument) {
531
+ code_1 += argument.toEmbeddedTS(translator_1.shiftState(state, code_1), false, true) + ', ';
532
+ });
533
+ }
534
+ code_1 += ((_a = this.anchor) === null || _a === void 0 ? void 0 : _a.toEmbeddedTS(translator_1.shiftState(state, code_1), true)) || '';
535
+ code_1 += "});\n";
536
+ }
537
+ code_1 += translator_1.indent(((state === null || state === void 0 ? void 0 : state.tabSize) || 0) + 1) + "}\n";
538
+ return code_1;
539
+ }
540
+ else {
541
+ return 'destinationEmpty(){ const __destinationEmpty__: any = null}';
542
+ }
543
+ };
544
+ Destination.prototype.toEmbeddedTS = function (state) {
545
+ var _a, _b;
546
+ var code = '';
547
+ var node = this.viewNode;
548
+ var logicParam = [];
549
+ if (node) {
550
+ logicParam = node.params;
551
+ }
552
+ var logicParamLength = logicParam.length;
553
+ if (this.parentNode instanceof __1.BindAttribute) {
554
+ code += translator_1.indent(((state === null || state === void 0 ? void 0 : state.tabSize) || 0) + 2);
555
+ if (this.tsCalleeNamespace && this.tsName) {
556
+ code += this.tsCalleeNamespace + "." + this.tsName + ".$destination({";
557
+ if (Array.isArray(this.arguments)) {
558
+ this.arguments.forEach(function (argument, index) {
559
+ var oldName = argument.keyword;
560
+ if (index >= logicParamLength) {
561
+ argument.keyword = '__unknown__';
562
+ }
563
+ code += argument.toEmbeddedTS(translator_1.shiftState(state, code), false, true) + ', ';
564
+ argument.keyword = oldName;
565
+ });
566
+ }
567
+ code += ((_a = this.anchor) === null || _a === void 0 ? void 0 : _a.toEmbeddedTS(translator_1.shiftState(state, code), true)) || '';
568
+ code += "});\n";
569
+ }
570
+ return code;
571
+ }
572
+ else {
573
+ if (this.tsCalleeNamespace && this.tsName) {
574
+ code += this.tsCalleeNamespace + "." + this.tsName + ".$destination({";
575
+ if (Array.isArray(this.arguments)) {
576
+ this.arguments.forEach(function (argument, index) {
577
+ var oldName = argument.keyword;
578
+ if (index >= logicParamLength) {
579
+ argument.keyword = '__unknown__';
580
+ }
581
+ code += argument.toEmbeddedTS(translator_1.shiftState(state, code), false, true) + ', ';
582
+ argument.keyword = oldName;
583
+ });
584
+ }
585
+ code += ((_b = this.anchor) === null || _b === void 0 ? void 0 : _b.toEmbeddedTS(translator_1.shiftState(state, code), true)) || '';
586
+ code += "});\n";
587
+ }
588
+ else {
589
+ code += '__IDENTIFIER__';
590
+ }
591
+ return code;
592
+ }
593
+ };
594
+ Destination.prototype.toBrief = function () {
595
+ var _a;
596
+ var q = [];
597
+ if ((_a = this.anchor) === null || _a === void 0 ? void 0 : _a.expression) {
598
+ q.push(this.anchor.toBrief());
599
+ }
600
+ return this.arguments.map(function (a) { return a.toBrief(); }).concat(q).join('<br />');
601
+ };
602
+ Destination.prototype.toEmbeddedTSNormalFunction = function (state) {
603
+ var _a;
604
+ var code = "let " + utils.firstLowerCase(this.concept) + " = function() {\n";
605
+ var tab = translator_1.indent(((state === null || state === void 0 ? void 0 : state.tabSize) || 0) + 2);
606
+ if (this.tsCalleeNamespace && this.tsName) {
607
+ code += "" + tab + this.tsCalleeNamespace + "." + this.tsName + ".$destination(";
608
+ if (Array.isArray(this.arguments)) {
609
+ this.arguments.forEach(function (argument) {
610
+ code += argument.toEmbeddedTS(translator_1.shiftState(state, code)) + ', ';
611
+ });
612
+ }
613
+ code += ((_a = this.anchor) === null || _a === void 0 ? void 0 : _a.toEmbeddedTS(translator_1.shiftState(state, code))) || '';
614
+ code += tab + ");\n";
615
+ }
616
+ code += translator_1.indent(((state === null || state === void 0 ? void 0 : state.tabSize) || 0) + 1) + "}\n";
617
+ return code;
618
+ };
619
+ Object.defineProperty(Destination.prototype, "viewNode", {
620
+ get: function () {
621
+ if (!this.viewNamespace || !this.viewName)
622
+ return null;
623
+ var nameSpace = this.viewNamespace;
624
+ nameSpace = nameSpace.replaceAll('views', 'children');
625
+ nameSpace = nameSpace.replace('children', 'views');
626
+ return utils_1.getNodeByNodeCallee(this.app, nameSpace + '.' + this.viewName);
627
+ },
628
+ enumerable: false,
629
+ configurable: true
630
+ });
631
+ Object.defineProperty(Destination.prototype, "calleewholeKey", {
632
+ // 用于logic回填
633
+ get: function () {
634
+ return this.viewNamespace + '.' + this.viewName;
635
+ },
636
+ enumerable: false,
637
+ configurable: true
638
+ });
639
+ Object.defineProperty(Destination.prototype, "completeArguments", {
640
+ get: function () {
641
+ var _a;
642
+ var node = this.viewNode;
643
+ var logicParam = [];
644
+ var Arguments = [];
645
+ if (node) {
646
+ logicParam = node.params;
647
+ }
648
+ if ((_a = this.arguments) === null || _a === void 0 ? void 0 : _a.length) {
649
+ this.arguments.forEach(function (arg, index) {
650
+ var param = logicParam[index];
651
+ // 取到是不是必填放入参数中
652
+ var newArg = Argument__1["default"].from(arg);
653
+ if (param && !newArg.expression) {
654
+ newArg.paramTypeAnnotation = param.typeAnnotation;
655
+ newArg.paramDefaultValue = param.defaultValue;
656
+ newArg.paramRequired = param.required;
657
+ }
658
+ Arguments.push(newArg);
659
+ });
660
+ }
661
+ return Arguments;
662
+ },
663
+ enumerable: false,
664
+ configurable: true
665
+ });
666
+ var Destination_1;
667
+ __decorate([
668
+ decorators_1.property()
669
+ ], Destination.prototype, "concept");
670
+ __decorate([
671
+ decorators_1.property()
672
+ ], Destination.prototype, "label");
673
+ __decorate([
674
+ decorators_1.property()
675
+ ], Destination.prototype, "viewNamespace");
676
+ __decorate([
677
+ decorators_1.property()
678
+ ], Destination.prototype, "viewName");
679
+ __decorate([
680
+ decorators_1.property('Argument')
681
+ ], Destination.prototype, "arguments");
682
+ __decorate([
683
+ decorators_1.property('Anchor')
684
+ ], Destination.prototype, "anchor");
685
+ __decorate([
686
+ decorators_1.property()
687
+ ], Destination.prototype, "target");
688
+ __decorate([
689
+ translator_1.withSourceMap()
690
+ ], Destination.prototype, "toEmbeddedTSInProcess");
691
+ __decorate([
692
+ translator_1.withSourceMap()
693
+ ], Destination.prototype, "toEmbeddedTS");
694
+ __decorate([
695
+ translator_1.withSourceMap()
696
+ ], Destination.prototype, "toEmbeddedTSNormalFunction");
697
+ Destination = Destination_1 = __decorate([
698
+ decorators_1.concept('跳转页面')
699
+ ], Destination);
700
+ return Destination;
701
+ }(LogicItem__1["default"]));
702
+ exports.Destination = Destination;
703
+ classMap_1["default"].Destination = Destination;
704
+ exports["default"] = Destination;
705
+ //================================================================================
706
+ // ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
707
+ // 自动生成的代码已结束。下面可以手动编写。
708
+ //================================================================================