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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (178) hide show
  1. package/out/common/BaseNode.js +4 -1
  2. package/out/common/BaseNode.js.map +1 -1
  3. package/out/concepts/Abort__.d.ts +25 -0
  4. package/out/concepts/Abort__.js +80 -0
  5. package/out/concepts/Abort__.js.map +1 -0
  6. package/out/concepts/App__.js.map +1 -1
  7. package/out/concepts/BatchAssignment__.js +3 -3
  8. package/out/concepts/BatchAssignment__.js.map +1 -1
  9. package/out/concepts/CallFunction__.js +23 -7
  10. package/out/concepts/CallFunction__.js.map +1 -1
  11. package/out/concepts/CallInterface__.js +1 -1
  12. package/out/concepts/CallInterface__.js.map +1 -1
  13. package/out/concepts/CallLogic__.js +9 -65
  14. package/out/concepts/CallLogic__.js.map +1 -1
  15. package/out/concepts/DatabaseTypeAnnotation__.d.ts +31 -0
  16. package/out/concepts/DatabaseTypeAnnotation__.js +78 -0
  17. package/out/concepts/DatabaseTypeAnnotation__.js.map +1 -0
  18. package/out/concepts/EnumItem__.d.ts +5 -5
  19. package/out/concepts/EnumItem__.js +6 -6
  20. package/out/concepts/Enum__.d.ts +20 -19
  21. package/out/concepts/Enum__.js +28 -1
  22. package/out/concepts/Enum__.js.map +1 -1
  23. package/out/concepts/ForEachStatement__.js +1 -1
  24. package/out/concepts/ForEachStatement__.js.map +1 -1
  25. package/out/concepts/FrontendLibrary__.d.ts +213 -0
  26. package/out/concepts/FrontendLibrary__.js +352 -0
  27. package/out/concepts/FrontendLibrary__.js.map +1 -0
  28. package/out/concepts/Frontend__.d.ts +373 -0
  29. package/out/concepts/Frontend__.js +685 -0
  30. package/out/concepts/Frontend__.js.map +1 -0
  31. package/out/concepts/Integration__.d.ts +53 -0
  32. package/out/concepts/Integration__.js +143 -0
  33. package/out/concepts/Integration__.js.map +1 -0
  34. package/out/concepts/JavaLogic__.d.ts +42 -0
  35. package/out/concepts/JavaLogic__.js +122 -0
  36. package/out/concepts/JavaLogic__.js.map +1 -0
  37. package/out/concepts/Logic__.js +3 -0
  38. package/out/concepts/Logic__.js.map +1 -1
  39. package/out/concepts/MicroApp__.d.ts +51 -0
  40. package/out/concepts/MicroApp__.js +113 -0
  41. package/out/concepts/MicroApp__.js.map +1 -0
  42. package/out/concepts/NewComposite__.js +14 -14
  43. package/out/concepts/NewComposite__.js.map +1 -1
  44. package/out/concepts/NewList__.d.ts +1 -0
  45. package/out/concepts/NewList__.js +17 -1
  46. package/out/concepts/NewList__.js.map +1 -1
  47. package/out/concepts/NewMap__.d.ts +1 -0
  48. package/out/concepts/NewMap__.js +18 -1
  49. package/out/concepts/NewMap__.js.map +1 -1
  50. package/out/concepts/OqlQueryComponent__.js +2 -0
  51. package/out/concepts/OqlQueryComponent__.js.map +1 -1
  52. package/out/concepts/StringInterpolation__.js +2 -0
  53. package/out/concepts/StringInterpolation__.js.map +1 -1
  54. package/out/concepts/TypeAnnotation__.js +3 -3
  55. package/out/concepts/TypeAnnotation__.js.map +1 -1
  56. package/out/concepts/ViewBlock__.d.ts +35 -0
  57. package/out/concepts/ViewBlock__.js +85 -0
  58. package/out/concepts/ViewBlock__.js.map +1 -0
  59. package/out/concepts/ViewElement__.js +1 -1
  60. package/out/concepts/ViewElement__.js.map +1 -1
  61. package/out/concepts/View__.js +1 -0
  62. package/out/concepts/View__.js.map +1 -1
  63. package/out/concepts/basics/stdlib/nasl.util.js +4 -2
  64. package/out/concepts/basics/stdlib/nasl.util.js.map +1 -1
  65. package/out/generator/genBundleFiles.js +10 -1
  66. package/out/generator/genBundleFiles.js.map +1 -1
  67. package/out/generator/genReleaseBody.js +3 -0
  68. package/out/generator/genReleaseBody.js.map +1 -1
  69. package/out/generator/icestark.d.ts +2 -0
  70. package/out/generator/icestark.js +48 -0
  71. package/out/generator/icestark.js.map +1 -0
  72. package/out/generator/microApp.d.ts +2 -0
  73. package/out/generator/microApp.js +35 -0
  74. package/out/generator/microApp.js.map +1 -0
  75. package/out/generator/qiankun.d.ts +2 -0
  76. package/out/generator/qiankun.js +52 -0
  77. package/out/generator/qiankun.js.map +1 -0
  78. package/out/manager/stepRecorder.d.ts +20 -0
  79. package/out/manager/stepRecorder.js +110 -0
  80. package/out/manager/stepRecorder.js.map +1 -0
  81. package/out/sentry/index.d.ts +29 -0
  82. package/out/sentry/index.js +111 -0
  83. package/out/sentry/index.js.map +1 -0
  84. package/out/server/extendBaseNode.js +5 -1
  85. package/out/server/extendBaseNode.js.map +1 -1
  86. package/out/server/formatTsUtils.js +11 -8
  87. package/out/server/formatTsUtils.js.map +1 -1
  88. package/out/server/naslServer.js +118 -9
  89. package/out/server/naslServer.js.map +1 -1
  90. package/out/server/translator.js +43 -10
  91. package/out/server/translator.js.map +1 -1
  92. package/out/service/creator/add.configs.js +2 -0
  93. package/out/service/creator/add.configs.js.map +1 -1
  94. package/out/service/creator/errHandles.js +5 -0
  95. package/out/service/creator/errHandles.js.map +1 -1
  96. package/out/service/creator/index.js +2 -0
  97. package/out/service/creator/index.js.map +1 -1
  98. package/out/service/storage/api.d.ts +18 -0
  99. package/out/service/storage/api.js +12 -0
  100. package/out/service/storage/api.js.map +1 -1
  101. package/out/service/storage/init.d.ts +41 -1
  102. package/out/service/storage/init.js +175 -30
  103. package/out/service/storage/init.js.map +1 -1
  104. package/out/service/storage/service.d.ts +9 -1
  105. package/out/service/storage/service.js +27 -1
  106. package/out/service/storage/service.js.map +1 -1
  107. package/out/templator/genGetBlock.js +1 -1
  108. package/out/templator/genGetBlock.js.map +1 -1
  109. package/out/templator/genListViewBlock.js +6 -0
  110. package/out/templator/genListViewBlock.js.map +1 -1
  111. package/package.json +2 -2
  112. package/sandbox/stdlib/nasl.core.ts +2 -0
  113. package/sandbox/stdlib/nasl.oql.ts +16 -4
  114. package/sandbox/stdlib/nasl.util.ts +2 -1
  115. package/src/common/BaseNode.ts +3 -1
  116. package/src/concepts/App__.ts +41 -1
  117. package/src/concepts/BatchAssignment__.ts +3 -3
  118. package/src/concepts/CallFunction__.ts +34 -20
  119. package/src/concepts/CallInterface__.ts +19 -1
  120. package/src/concepts/CallLogic__.ts +8 -65
  121. package/src/concepts/EnumItem__.ts +6 -6
  122. package/src/concepts/Enum__.ts +22 -19
  123. package/src/concepts/ForEachStatement__.ts +1 -1
  124. package/src/concepts/Logic__.ts +13 -10
  125. package/src/concepts/NewComposite__.ts +14 -14
  126. package/src/concepts/NewList__.ts +18 -1
  127. package/src/concepts/NewMap__.ts +19 -1
  128. package/src/concepts/OqlQueryComponent__.ts +2 -0
  129. package/src/concepts/StringInterpolation__.ts +6 -4
  130. package/src/concepts/TypeAnnotation__.ts +41 -3
  131. package/src/concepts/ViewElement__.ts +1 -1
  132. package/src/concepts/View__.ts +3 -2
  133. package/src/concepts/basics/stdlib/nasl.util.ts +4 -2
  134. package/src/generator/genBundleFiles.ts +10 -1
  135. package/src/generator/genReleaseBody.ts +3 -1
  136. package/src/server/extendBaseNode.ts +4 -1
  137. package/src/server/formatTsUtils.ts +11 -8
  138. package/src/server/naslServer.ts +124 -11
  139. package/src/server/translator.ts +37 -10
  140. package/src/service/creator/add.configs.js +3 -0
  141. package/src/service/creator/errHandles.js +6 -0
  142. package/src/service/creator/index.js +3 -0
  143. package/src/service/storage/api.js +12 -0
  144. package/src/service/storage/init.ts +207 -29
  145. package/src/service/storage/service.ts +29 -1
  146. package/src/templator/genGetBlock.ts +1 -1
  147. package/src/templator/genListViewBlock.ts +6 -0
  148. package/ts-worker/lib/tsserver.js +10 -2
  149. package/ts-worker/package.json +1 -0
  150. package/ts-worker/webpack.config.js +11 -2
  151. package/sandbox/stdlib/dist/nasl.logging.js +0 -0
  152. package/sandbox/stdlib/dist/nasl.util.js +0 -0
  153. package/src/automate/engine/dist/index.dev.js +0 -517
  154. package/src/common/dist/BaseNode.js +0 -1101
  155. package/src/concepts/basics/stdlib/dist/nasl.util.js +0 -1602
  156. package/src/concepts/basics/stdlib/dist/reference2TypeAnnotationList.js +0 -24
  157. package/src/concepts/dist/BindAttribute__.js +0 -760
  158. package/src/concepts/dist/BindEvent__.js +0 -732
  159. package/src/concepts/dist/CallFunction__.js +0 -527
  160. package/src/concepts/dist/CallLogic__.js +0 -932
  161. package/src/concepts/dist/Identifier__.js +0 -311
  162. package/src/concepts/dist/StringInterpolation__.js +0 -231
  163. package/src/concepts/dist/TypeAnnotation__.js +0 -834
  164. package/src/concepts/dist/ViewElement__.js +0 -1692
  165. package/src/concepts/dist/View__.js +0 -1601
  166. package/src/generator/dist/genBundleFiles.js +0 -261
  167. package/src/generator/dist/genMetaData.js +0 -245
  168. package/src/generator/dist/permission.js +0 -392
  169. package/src/server/dist/naslServer.js +0 -3590
  170. package/src/service/storage/dist/init.js +0 -579
  171. package/src/templator/dist/genEditTableBlock.js +0 -204
  172. package/src/templator/dist/genGridViewBlock.js +0 -265
  173. package/src/templator/dist/genListViewBlock.js +0 -84
  174. package/src/templator/dist/genTableBlock.js +0 -209
  175. package/src/templator/dist/utils.js +0 -527
  176. package/ts-worker/dist/webpack.config.dev.js +0 -106
  177. /package/src/service/{dataSource → datasource}/api.js +0 -0
  178. /package/src/service/{dataSource → datasource}/index.js +0 -0
@@ -1,311 +0,0 @@
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.Identifier = void 0;
34
- var translator_1 = require("../translator");
35
- var __1 = require("..");
36
- var utils_1 = require("../utils");
37
- var decorators_1 = require("../decorators");
38
- var classMap_1 = require("../common/classMap");
39
- var LogicItem__1 = require("./LogicItem__");
40
- /**
41
- * 标识符
42
- */
43
- var Identifier = /** @class */ (function (_super) {
44
- __extends(Identifier, _super);
45
- /**
46
- * @param source 需要合并的部分参数
47
- */
48
- function Identifier(source) {
49
- var _this = this;
50
- source = Object.assign({}, Identifier_1.getDefaultOptions(), source);
51
- _this = _super.call(this, source) || this;
52
- /**
53
- * 产品概念
54
- */
55
- _this.concept = 'Identifier';
56
- /**
57
- * namespace
58
- */
59
- _this.namespace = undefined;
60
- /**
61
- * 标识符名称
62
- */
63
- _this.name = undefined;
64
- //================================================================================
65
- // ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
66
- // 自动生成的代码已结束。下面可以手动编写。
67
- //================================================================================
68
- // 选中的数据类型,这个用作暂存
69
- _this.typeAnnotation = undefined;
70
- _this.globalDataMap = {
71
- $route: true,
72
- $global: true,
73
- $refs: true
74
- };
75
- _super.prototype.subConstructor.call(_this, source);
76
- return _this;
77
- }
78
- Identifier_1 = Identifier;
79
- Identifier.from = function (source, parentNode, parentKey) {
80
- return _super.from.call(this, source, parentNode, parentKey);
81
- };
82
- Identifier.prototype.isEnum = function () {
83
- return utils_1.findConceptKeyWordByNamespace(this.namespace) === 'enums';
84
- };
85
- Identifier.prototype.toVue = function (options) {
86
- var name = this.name;
87
- var namespace = this.namespace;
88
- if (namespace) {
89
- if ((this.namespace.endsWith('nasl.browser') || this.namespace.endsWith('nasl.auth') || this.namespace.endsWith('nasl.configuration') || this.namespace.endsWith('nasl.process'))) {
90
- name = "$global." + this.name;
91
- }
92
- else if (this.namespace.endsWith('frontendVariables')) {
93
- name = "$global.frontendVariables." + this.name;
94
- }
95
- else if (this.isEnum()) {
96
- var enumName = this.name;
97
- if (this.namespace.startsWith('extensions.')) {
98
- enumName = this.namespace + "." + this.name;
99
- }
100
- name = enumName;
101
- }
102
- else if (this.namespace.endsWith('logics')) {
103
- name = "'" + this.namespace + "." + name + "'";
104
- }
105
- }
106
- return name;
107
- };
108
- Identifier.prototype.toUI = function () {
109
- var name = this.name;
110
- var namespace = this.namespace;
111
- if (namespace) {
112
- if (namespace.startsWith('nasl.')) {
113
- name = namespace + "." + this.name;
114
- }
115
- else if (namespace.endsWith('frontendVariables')) {
116
- name = "nasl.frontendVariables." + this.name;
117
- }
118
- else if (this.isEnum()) {
119
- var enumName = this.name;
120
- if (this.namespace.startsWith('extensions.')) {
121
- enumName = this.namespace + "." + this.name;
122
- }
123
- name = enumName;
124
- }
125
- }
126
- return name;
127
- };
128
- Object.defineProperty(Identifier.prototype, "jsName", {
129
- // 在页面 表达式/逻辑 中的名字
130
- get: function () {
131
- var name = this.name;
132
- var namespace = this.namespace;
133
- if (namespace) {
134
- if (namespace.endsWith('nasl.browser') || namespace.endsWith('nasl.auth') || namespace.endsWith('nasl.configuration') || this.namespace.endsWith('nasl.process')) {
135
- name = "$global." + this.name;
136
- }
137
- else if (namespace.endsWith('frontendVariables')) {
138
- name = "$global.frontendVariables." + this.name;
139
- }
140
- else if (this.isEnum()) {
141
- var enumName = this.name;
142
- if (this.namespace.startsWith('extensions.')) {
143
- enumName = this.namespace + "." + this.name;
144
- }
145
- name = enumName;
146
- }
147
- else if (this.namespace.endsWith('logics')) {
148
- name = "'" + this.namespace + "." + name + "'";
149
- }
150
- }
151
- return name;
152
- },
153
- enumerable: false,
154
- configurable: true
155
- });
156
- Identifier.prototype.toJS = function () {
157
- var name = this.jsName;
158
- return this.isViewOrGlobalDataVariable() ? "this." + name : name;
159
- };
160
- // 页面/全局 级别的变量
161
- Identifier.prototype.isViewOrGlobalDataVariable = function () {
162
- var _a, _b, _c, _d, _e, _f;
163
- var dataMap = {};
164
- (_b = (_a = this.view) === null || _a === void 0 ? void 0 : _a.params) === null || _b === void 0 ? void 0 : _b.forEach(function (param) {
165
- dataMap[param.name] = true;
166
- });
167
- (_d = (_c = this.view) === null || _c === void 0 ? void 0 : _c.variables) === null || _d === void 0 ? void 0 : _d.forEach(function (variable) {
168
- dataMap[variable.name] = true;
169
- });
170
- // 目前前端逻辑也会被当成可选变量(以datasource为典型)
171
- (_f = (_e = this.view) === null || _e === void 0 ? void 0 : _e.logics) === null || _f === void 0 ? void 0 : _f.forEach(function (logics) {
172
- dataMap[logics.name] = true;
173
- });
174
- var parentNode = this.parentNode;
175
- var isMemberExpressionProperty = false;
176
- if ((parentNode === null || parentNode === void 0 ? void 0 : parentNode.concept) === 'MemberExpression' && this.parentKey === 'property') {
177
- isMemberExpressionProperty = true;
178
- }
179
- var name = this.jsName;
180
- var namespace = this.namespace;
181
- if (name === 'UserStatusEnum') {
182
- console.log(this);
183
- }
184
- return (dataMap[name]
185
- || this.globalDataMap[name]
186
- || (namespace === null || namespace === void 0 ? void 0 : namespace.endsWith('nasl.browser'))
187
- || (namespace === null || namespace === void 0 ? void 0 : namespace.endsWith('nasl.auth'))
188
- || (namespace === null || namespace === void 0 ? void 0 : namespace.endsWith('nasl.configuration'))
189
- || (namespace === null || namespace === void 0 ? void 0 : namespace.endsWith('nasl.process'))
190
- || (namespace === null || namespace === void 0 ? void 0 : namespace.endsWith('frontendVariables'))
191
- || this.isEnum()) && !isMemberExpressionProperty;
192
- };
193
- Identifier.prototype.toBrief = function () {
194
- return this.name || '-';
195
- };
196
- Identifier.prototype.toEmbeddedTS = function (state) {
197
- var _this = this;
198
- var _a;
199
- // 只有data-source可以是函数 ,也可能是属性
200
- if (this.parentNode instanceof __1.BindAttribute && this.parentNode.name === 'data-source') {
201
- var view = this.view;
202
- var viewLogics = view.logics;
203
- var findLogic = viewLogics.find(function (item) { return item.name === _this.name; });
204
- if (findLogic) {
205
- return this.name;
206
- }
207
- }
208
- // 全局变量在不是页面的地方放置,就会报错
209
- if (((_a = this.namespace) === null || _a === void 0 ? void 0 : _a.startsWith('app.frontendVariables')) && !this.view) {
210
- return '__FRONTENDVARIABLES__';
211
- }
212
- // 如果是nasl.util.Enum 的子集里的 Identifier > MemberExpression > Argument > callfunction
213
- // nasl.util.Enum 的 右侧是转成字符串的
214
- // 如果是identifier 而且枚举
215
- // if (this.parentNode?.parentNode?.parentNode instanceof CallFunction) {
216
- // const calleeNamespace = this.parentNode.parentNode.parentNode.calleeNamespace;
217
- // const calleeName = this.parentNode.parentNode.parentNode.calleeName;
218
- // if (calleeNamespace + '.' + calleeName === 'nasl.util.Enum') {
219
- // const str = (this.namespace ? this.namespace + '.' : '') + this.name;
220
- // return str.includes('.enums.') ? str : str + '.toString()';
221
- // }
222
- // }
223
- // having 下选择的变量不生成 namespace 前缀
224
- if (this.namespace === 'inner' && this.getAncestor('CallQueryComponent')) {
225
- return "__" + this.name || '__IDENTIFIER__';
226
- }
227
- return this.namespace ? this.namespace + '.' + this.name : this.name || '__IDENTIFIER__';
228
- };
229
- // 方便快速取值
230
- Identifier.prototype.getValue = function () {
231
- // 实体逻辑 deleteBy/updateBy 的 filter 参数的回调函数的参数:_
232
- // 处理 _ 的显示问题
233
- if (this.name === '_') {
234
- var parentNode = this.parentNode;
235
- if (parentNode) {
236
- var p = parentNode;
237
- while (p && p.concept !== 'CallLogic') {
238
- p = p.parentNode;
239
- }
240
- if (p && (p.calleeName === 'deleteBy' || p.calleeName === 'updateBy')) {
241
- var ns = p.calleeNamespace.split('.');
242
- return ns[ns.length - 2] || this.name;
243
- }
244
- else {
245
- return 'item';
246
- }
247
- }
248
- }
249
- return this.name;
250
- };
251
- Object.defineProperty(Identifier.prototype, "completeName", {
252
- get: function () {
253
- var arr = [this.name];
254
- if (this.namespace) {
255
- arr.unshift(this.namespace);
256
- }
257
- return arr.join('.');
258
- },
259
- enumerable: false,
260
- configurable: true
261
- });
262
- /**
263
- * 设置函数名称
264
- */
265
- Identifier.prototype.setNamespace = function (namespace) {
266
- var object = {
267
- namespace: namespace
268
- };
269
- this.update(__assign({}, object));
270
- };
271
- /**
272
- * 设置函数名称
273
- */
274
- Identifier.prototype.setName = function (name) {
275
- var object = {
276
- name: name
277
- };
278
- this.update(__assign({}, object));
279
- };
280
- Identifier.prototype.setNameAndNamespace = function (name, namespace) {
281
- var object = {
282
- name: name,
283
- namespace: namespace
284
- };
285
- this.update(__assign({}, object));
286
- };
287
- var Identifier_1;
288
- __decorate([
289
- decorators_1.property()
290
- ], Identifier.prototype, "concept");
291
- __decorate([
292
- decorators_1.property()
293
- ], Identifier.prototype, "namespace");
294
- __decorate([
295
- decorators_1.property()
296
- ], Identifier.prototype, "name");
297
- __decorate([
298
- translator_1.withSourceMap()
299
- ], Identifier.prototype, "toEmbeddedTS");
300
- Identifier = Identifier_1 = __decorate([
301
- decorators_1.concept('标识符')
302
- ], Identifier);
303
- return Identifier;
304
- }(LogicItem__1["default"]));
305
- exports.Identifier = Identifier;
306
- classMap_1["default"].Identifier = Identifier;
307
- exports["default"] = Identifier;
308
- //================================================================================
309
- // ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
310
- // 自动生成的代码已结束。下面可以手动编写。
311
- //================================================================================
@@ -1,231 +0,0 @@
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.StringInterpolation = void 0;
34
- var translator_1 = require("../translator");
35
- var decorators_1 = require("../decorators");
36
- var utils = require("../utils");
37
- var classMap_1 = require("../common/classMap");
38
- var LogicItem__1 = require("./LogicItem__");
39
- /**
40
- * 字符串插值
41
- */
42
- var StringInterpolation = /** @class */ (function (_super) {
43
- __extends(StringInterpolation, _super);
44
- /**
45
- * @param source 需要合并的部分参数
46
- */
47
- function StringInterpolation(source) {
48
- var _this = this;
49
- source = Object.assign({}, StringInterpolation_1.getDefaultOptions(), source);
50
- _this = _super.call(this, source) || this;
51
- /**
52
- * 产品概念
53
- */
54
- _this.concept = 'StringInterpolation';
55
- /**
56
- * 插值表达式
57
- */
58
- _this.expressions = [];
59
- _super.prototype.subConstructor.call(_this, source);
60
- return _this;
61
- }
62
- StringInterpolation_1 = StringInterpolation;
63
- StringInterpolation.from = function (source, parentNode, parentKey) {
64
- return _super.from.call(this, source, parentNode, parentKey);
65
- };
66
- /**
67
- * 设置插值表达式
68
- */
69
- StringInterpolation.prototype.setExpressions = function (expressions) {
70
- var object = {
71
- expressions: expressions
72
- };
73
- this.update(__assign({}, object));
74
- };
75
- StringInterpolation.prototype.getItemExistingNames = function (excludedList) {
76
- if (excludedList === void 0) { excludedList = []; }
77
- var excludedSet = new Set(excludedList);
78
- return (this.expressions || []).filter(function (item) { return !excludedSet.has(item); }).map(function (item) { return item.name; });
79
- };
80
- StringInterpolation.prototype.getItemUniqueName = function (name) {
81
- if (name === void 0) { name = 'logicItem1'; }
82
- return utils.unique(name, this.getItemExistingNames(), undefined, false);
83
- };
84
- StringInterpolation.prototype._insertItemAt = function (options, index) {
85
- var logicItemOptions = {};
86
- var relationOptions = { parentNode: this, parentKey: 'expressions' };
87
- var logicItem;
88
- if (!options) {
89
- logicItem = LogicItem__1["default"].from(__assign(__assign({}, logicItemOptions), { name: this.getItemUniqueName() }), this, 'expressions');
90
- }
91
- else if (typeof options === 'string') {
92
- logicItem = LogicItem__1["default"].from(__assign(__assign({}, logicItemOptions), { name: options }), this, 'expressions');
93
- }
94
- else if (options instanceof LogicItem__1["default"]) {
95
- options.ensureDelete(); // 同一实例不支持多处存在
96
- logicItem = options;
97
- Object.assign(logicItem, relationOptions);
98
- }
99
- else {
100
- logicItem = LogicItem__1["default"].from(__assign(__assign({}, logicItemOptions), options), this, 'expressions');
101
- }
102
- this.expressions.splice(index, 0, logicItem);
103
- return logicItem;
104
- };
105
- StringInterpolation.prototype.insertItemAt = function (options, index) {
106
- var node = this._insertItemAt(options, index);
107
- node.create({
108
- index: index,
109
- parentNode: this,
110
- parentKey: 'expressions'
111
- });
112
- return node;
113
- };
114
- StringInterpolation.prototype._addItem = function (options) {
115
- var index = this.expressions.length;
116
- return this._insertItemAt(options, index);
117
- };
118
- StringInterpolation.prototype.addItem = function (options) {
119
- var node = this._addItem(options);
120
- var index = this.expressions.indexOf(node);
121
- node.create({
122
- index: index,
123
- parentNode: this,
124
- parentKey: 'expressions'
125
- });
126
- return node;
127
- };
128
- StringInterpolation.prototype.removeItem = function (options) {
129
- var logicItem;
130
- if (typeof options === 'string') {
131
- logicItem = this.expressions.find(function (item) { return item.name === options; });
132
- if (!logicItem) {
133
- throw new Error('找不到逻辑项 ' + options);
134
- }
135
- }
136
- else {
137
- logicItem = options;
138
- }
139
- return logicItem["delete"]();
140
- };
141
- StringInterpolation.prototype.__removeLogicItem = function (logicItem) {
142
- var parentKey = logicItem.parentKey;
143
- var params = {
144
- parentNode: this,
145
- parentKey: parentKey,
146
- index: -1,
147
- object: null,
148
- oldObject: logicItem
149
- };
150
- if (parentKey) {
151
- params.parentKey = parentKey;
152
- if (Array.isArray(this[parentKey])) {
153
- var index = this[parentKey].indexOf(logicItem);
154
- ~index && this[parentKey].splice(index, 1);
155
- params.index = index;
156
- }
157
- else if (this[parentKey] === logicItem) {
158
- params.index = 0;
159
- this[parentKey] = undefined;
160
- }
161
- }
162
- return params;
163
- };
164
- //================================================================================
165
- // ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
166
- // 自动生成的代码已结束。下面可以手动编写。
167
- //================================================================================
168
- StringInterpolation.prototype.exchangeLogicItem = function (target, logicitem) {
169
- var idx = this.expressions.findIndex(function (exp) { return exp === target; });
170
- if (idx !== -1) {
171
- var exps = this.expressions.slice();
172
- exps.splice(idx, 1, logicitem);
173
- this.setExpressions(exps);
174
- }
175
- };
176
- StringInterpolation.prototype.toVue = function (options) {
177
- return this.expressions.map(function (exp) {
178
- var expCode = exp.toVue();
179
- if (options.finalCode !== false) {
180
- var expTypeAnnotation = exp.typeAnnotation || exp.__TypeAnnotation;
181
- expCode = "$utils['ToString'](" + expCode + ", '" + (expTypeAnnotation === null || expTypeAnnotation === void 0 ? void 0 : expTypeAnnotation.sortedTypeKey) + "')";
182
- }
183
- return expCode;
184
- }).join(' + ');
185
- };
186
- StringInterpolation.prototype.toUI = function () {
187
- return this.expressions.map(function (exp) { return exp.toUI(); }).join(' + ');
188
- };
189
- StringInterpolation.prototype.toJS = function () {
190
- return this.expressions.map(function (exp) {
191
- var expTypeAnnotation = exp.typeAnnotation || exp.__TypeAnnotation;
192
- return "this.$utils['ToString'](" + exp.toJS() + ", '" + (expTypeAnnotation === null || expTypeAnnotation === void 0 ? void 0 : expTypeAnnotation.sortedTypeKey) + "')";
193
- }).join(' + ');
194
- };
195
- StringInterpolation.prototype.toBrief = function () {
196
- return this.expressions.map(function (exp) { return exp.toJS(); }).join(' + ');
197
- };
198
- StringInterpolation.prototype.toEmbeddedTS = function (state) {
199
- var _this = this;
200
- var code = 'nasl.util.stringInterpolation(';
201
- this.expressions.forEach(function (exp, idx) {
202
- code += exp.toEmbeddedTS(translator_1.shiftState(state, code));
203
- if (idx !== _this.expressions.length - 1) {
204
- code += ', ';
205
- }
206
- });
207
- code += ')\n';
208
- return code;
209
- };
210
- var StringInterpolation_1;
211
- __decorate([
212
- decorators_1.property()
213
- ], StringInterpolation.prototype, "concept");
214
- __decorate([
215
- decorators_1.property('LogicItem')
216
- ], StringInterpolation.prototype, "expressions");
217
- __decorate([
218
- translator_1.withSourceMap()
219
- ], StringInterpolation.prototype, "toEmbeddedTS");
220
- StringInterpolation = StringInterpolation_1 = __decorate([
221
- decorators_1.concept('字符串插值')
222
- ], StringInterpolation);
223
- return StringInterpolation;
224
- }(LogicItem__1["default"]));
225
- exports.StringInterpolation = StringInterpolation;
226
- classMap_1["default"].StringInterpolation = StringInterpolation;
227
- exports["default"] = StringInterpolation;
228
- //================================================================================
229
- // ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
230
- // 自动生成的代码已结束。下面可以手动编写。
231
- //================================================================================