@lcap/nasl 2.18.0-beta.5 → 2.18.0-beta.7

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 (88) hide show
  1. package/out/common/BaseNode.js +1 -0
  2. package/out/common/BaseNode.js.map +1 -1
  3. package/out/concepts/BatchAssignment__.js +63 -46
  4. package/out/concepts/BatchAssignment__.js.map +1 -1
  5. package/out/concepts/CallLogic__.d.ts +2 -1
  6. package/out/concepts/CallLogic__.js +26 -11
  7. package/out/concepts/CallLogic__.js.map +1 -1
  8. package/out/concepts/Destination__.d.ts +2 -1
  9. package/out/concepts/Destination__.js +90 -22
  10. package/out/concepts/Destination__.js.map +1 -1
  11. package/out/concepts/Logic__.js +6 -7
  12. package/out/concepts/Logic__.js.map +1 -1
  13. package/out/concepts/MatchExpression__.d.ts +97 -0
  14. package/out/concepts/MatchExpression__.js +281 -0
  15. package/out/concepts/MatchExpression__.js.map +1 -0
  16. package/out/concepts/ViewElement__.js +1 -1
  17. package/out/concepts/ViewElement__.js.map +1 -1
  18. package/out/concepts/View__.js +4 -0
  19. package/out/concepts/View__.js.map +1 -1
  20. package/out/generator/genBundleFiles.js +32 -182
  21. package/out/generator/genBundleFiles.js.map +1 -1
  22. package/out/generator/genMetaData.d.ts +1 -10
  23. package/out/generator/genMetaData.js +189 -50
  24. package/out/generator/genMetaData.js.map +1 -1
  25. package/out/generator/genReleaseBody.js +11 -2
  26. package/out/generator/genReleaseBody.js.map +1 -1
  27. package/out/server/extendBaseNode.js +4 -18
  28. package/out/server/extendBaseNode.js.map +1 -1
  29. package/out/server/formatTsUtils.d.ts +1 -2
  30. package/out/server/formatTsUtils.js +30 -47
  31. package/out/server/formatTsUtils.js.map +1 -1
  32. package/out/server/getProcesses.js +1 -1
  33. package/out/server/getProcesses.js.map +1 -1
  34. package/out/server/naslServer.js +8 -7
  35. package/out/server/naslServer.js.map +1 -1
  36. package/out/server/translator.js +19 -4
  37. package/out/server/translator.js.map +1 -1
  38. package/out/templator/sql-parser/index.d.ts +1 -0
  39. package/out/templator/sql-parser/index.js +228 -0
  40. package/out/templator/sql-parser/index.js.map +1 -0
  41. package/out/templator/sql-parser/parser.js +26664 -0
  42. package/out/templator/sql-parser/parser.js.map +1 -0
  43. package/package.json +2 -2
  44. package/sandbox/stdlib/dist/nasl.logging.js +0 -0
  45. package/sandbox/stdlib/nasl.util.ts +1 -1
  46. package/src/automate/engine/dist/index.dev.js +517 -0
  47. package/src/common/BaseNode.ts +1 -0
  48. package/src/common/dist/BaseNode.js +1101 -0
  49. package/src/concepts/BatchAssignment__.ts +66 -50
  50. package/src/concepts/CallLogic__.ts +26 -11
  51. package/src/concepts/Destination__.ts +92 -22
  52. package/src/concepts/Logic__.ts +6 -7
  53. package/src/concepts/ViewElement__.ts +8 -29
  54. package/src/concepts/View__.ts +4 -0
  55. package/src/concepts/basics/stdlib/dist/nasl.util.js +1503 -0
  56. package/src/concepts/basics/stdlib/dist/reference2TypeAnnotationList.js +24 -0
  57. package/src/concepts/dist/Anchor__.js +179 -0
  58. package/src/concepts/dist/Assignment__.js +301 -0
  59. package/src/concepts/dist/CallFunction__.js +513 -0
  60. package/src/concepts/dist/CallInterface__.js +533 -0
  61. package/src/concepts/dist/CallLogic__.js +892 -0
  62. package/src/concepts/dist/ForEachStatement__.js +426 -0
  63. package/src/concepts/dist/MatchCase__.js +587 -0
  64. package/src/concepts/dist/Match__.js +631 -0
  65. package/src/concepts/dist/MemberExpression__.js +348 -0
  66. package/src/concepts/dist/Param__.js +538 -0
  67. package/src/concepts/dist/Return__.js +494 -0
  68. package/src/concepts/dist/Variable__.js +537 -0
  69. package/src/concepts/dist/ViewElement__.js +1680 -0
  70. package/src/generator/dist/genBundleFiles.js +261 -0
  71. package/src/generator/dist/genMetaData.js +249 -0
  72. package/src/generator/genBundleFiles.ts +34 -219
  73. package/src/generator/genMetaData.ts +182 -77
  74. package/src/generator/genReleaseBody.ts +10 -3
  75. package/src/server/dist/formatTsUtils.js +683 -0
  76. package/src/server/dist/naslServer.js +3474 -0
  77. package/src/server/extendBaseNode.ts +4 -19
  78. package/src/server/formatTsUtils.ts +30 -46
  79. package/src/server/getProcesses.ts +1 -1
  80. package/src/server/naslServer.ts +8 -7
  81. package/src/server/translator.ts +18 -4
  82. package/src/service/storage/dist/init.js +572 -0
  83. package/ts-worker/dist/webpack.config.dev.js +108 -0
  84. package/dist/bundle.js +0 -3962
  85. package/dist/bundle.js.LICENSE.txt +0 -16
  86. package/out/generator/release.d.ts +0 -1
  87. package/out/generator/release.js +0 -51
  88. package/out/generator/release.js.map +0 -1
@@ -0,0 +1,494 @@
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
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
33
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
34
+ return new (P || (P = Promise))(function (resolve, reject) {
35
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
36
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
37
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
38
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
39
+ });
40
+ };
41
+ var __generator = (this && this.__generator) || function (thisArg, body) {
42
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
43
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
44
+ function verb(n) { return function (v) { return step([n, v]); }; }
45
+ function step(op) {
46
+ if (f) throw new TypeError("Generator is already executing.");
47
+ while (_) try {
48
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
49
+ if (y = 0, t) op = [op[0] & 2, t.value];
50
+ switch (op[0]) {
51
+ case 0: case 1: t = op; break;
52
+ case 4: _.label++; return { value: op[1], done: false };
53
+ case 5: _.label++; y = op[1]; op = [0]; continue;
54
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
55
+ default:
56
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
57
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
58
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
59
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
60
+ if (t[2]) _.ops.pop();
61
+ _.trys.pop(); continue;
62
+ }
63
+ op = body.call(thisArg, _);
64
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
65
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
66
+ }
67
+ };
68
+ var __spreadArrays = (this && this.__spreadArrays) || function () {
69
+ for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
70
+ for (var r = Array(s), k = 0, i = 0; i < il; i++)
71
+ for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
72
+ r[k] = a[j];
73
+ return r;
74
+ };
75
+ exports.__esModule = true;
76
+ exports.Return = void 0;
77
+ var types_1 = require("./basics/types");
78
+ var translator_1 = require("../translator");
79
+ var StructureProperty__1 = require("./StructureProperty__");
80
+ var utils_1 = require("../automate/engine/utils");
81
+ function tryJSONParse(str) {
82
+ var result;
83
+ try {
84
+ result = JSON.parse(str);
85
+ }
86
+ catch (e) { }
87
+ return result;
88
+ }
89
+ var decorators_1 = require("../decorators");
90
+ var BaseNode_1 = require("../common/BaseNode");
91
+ var classMap_1 = require("../common/classMap");
92
+ /**
93
+ * 输出参数
94
+ */
95
+ var Return = /** @class */ (function (_super) {
96
+ __extends(Return, _super);
97
+ /**
98
+ * @param source 需要合并的部分参数
99
+ */
100
+ function Return(source) {
101
+ var _this = this;
102
+ source = Object.assign({}, Return_1.getDefaultOptions(), source);
103
+ _this = _super.call(this, source) || this;
104
+ /**
105
+ * 产品概念
106
+ */
107
+ _this.concept = 'Return';
108
+ /**
109
+ * 输出参数名称
110
+ */
111
+ _this.name = undefined;
112
+ /**
113
+ * 输出参数描述
114
+ */
115
+ _this.description = undefined;
116
+ /**
117
+ * 类型
118
+ */
119
+ _this.typeAnnotation = undefined;
120
+ /**
121
+ * 默认值
122
+ */
123
+ _this.defaultValue = undefined;
124
+ //================================================================================
125
+ // ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
126
+ // 自动生成的代码已结束。下面可以手动编写。
127
+ //================================================================================
128
+ _this.useComponent = undefined;
129
+ /**
130
+ * 自动补全的属性列表
131
+ */
132
+ _this.completionChildren = undefined;
133
+ _super.prototype.subConstructor.call(_this, source);
134
+ return _this;
135
+ }
136
+ Return_1 = Return;
137
+ Object.defineProperty(Return.prototype, "logic", {
138
+ /**
139
+ * 祖先 Logic
140
+ */
141
+ get: function () {
142
+ return this.getAncestor('Logic');
143
+ },
144
+ enumerable: false,
145
+ configurable: true
146
+ });
147
+ Object.defineProperty(Return.prototype, "module", {
148
+ /**
149
+ * 祖先 Module
150
+ */
151
+ get: function () {
152
+ return this.getAncestor('Module');
153
+ },
154
+ enumerable: false,
155
+ configurable: true
156
+ });
157
+ Object.defineProperty(Return.prototype, "app", {
158
+ /**
159
+ * 祖先 App
160
+ */
161
+ get: function () {
162
+ return this.getAncestor('App');
163
+ },
164
+ enumerable: false,
165
+ configurable: true
166
+ });
167
+ Object.defineProperty(Return.prototype, "view", {
168
+ /**
169
+ * 祖先 View
170
+ */
171
+ get: function () {
172
+ return this.getAncestor('View');
173
+ },
174
+ enumerable: false,
175
+ configurable: true
176
+ });
177
+ Object.defineProperty(Return.prototype, "processElement", {
178
+ /**
179
+ * 祖先 ProcessElement
180
+ */
181
+ get: function () {
182
+ return this.getAncestor('ProcessElement');
183
+ },
184
+ enumerable: false,
185
+ configurable: true
186
+ });
187
+ Object.defineProperty(Return.prototype, "process", {
188
+ /**
189
+ * 祖先 Process
190
+ */
191
+ get: function () {
192
+ return this.getAncestor('Process');
193
+ },
194
+ enumerable: false,
195
+ configurable: true
196
+ });
197
+ Return.from = function (source, parentNode, parentKey) {
198
+ return _super.from.call(this, source, parentNode, parentKey);
199
+ };
200
+ /**
201
+ * 从父级删除该节点
202
+ * @internal
203
+ */
204
+ Return.prototype._delete = function () {
205
+ var _a, _b;
206
+ var params = null;
207
+ if (this.parentNode) {
208
+ params = (_b = (_a = this.parentNode) === null || _a === void 0 ? void 0 : _a.__removeReturn) === null || _b === void 0 ? void 0 : _b.call(_a, this);
209
+ }
210
+ return params;
211
+ };
212
+ /**
213
+ * 设置输出参数名称
214
+ */
215
+ Return.prototype.setName = function (name) {
216
+ var object = {
217
+ name: name
218
+ };
219
+ this.update(__assign(__assign({}, object), { field: 'name' }));
220
+ };
221
+ /**
222
+ * 设置输出参数描述
223
+ */
224
+ Return.prototype.setDescription = function (description) {
225
+ var object = {
226
+ description: description
227
+ };
228
+ this.update(__assign({}, object));
229
+ };
230
+ /**
231
+ * 设置默认值
232
+ */
233
+ Return.prototype.setDefaultValue = function (defaultValue) {
234
+ var object = {
235
+ defaultValue: defaultValue
236
+ };
237
+ this.update(__assign({}, object));
238
+ };
239
+ Return.prototype.removeTypeAnnotation = function (options) {
240
+ var typeAnnotation;
241
+ if (typeof options === 'string') {
242
+ typeAnnotation = this.typeAnnotation;
243
+ if (!typeAnnotation) {
244
+ throw new Error('找不到类型标注 ' + options);
245
+ }
246
+ }
247
+ else {
248
+ typeAnnotation = options;
249
+ }
250
+ return typeAnnotation["delete"]();
251
+ };
252
+ Return.prototype.__removeTypeAnnotation = function (typeAnnotation) {
253
+ var parentKey = typeAnnotation.parentKey;
254
+ var params = {
255
+ parentNode: this,
256
+ parentKey: parentKey,
257
+ index: -1,
258
+ object: null,
259
+ oldObject: typeAnnotation
260
+ };
261
+ if (parentKey) {
262
+ params.parentKey = parentKey;
263
+ if (Array.isArray(this[parentKey])) {
264
+ var index = this[parentKey].indexOf(typeAnnotation);
265
+ ~index && this[parentKey].splice(index, 1);
266
+ params.index = index;
267
+ }
268
+ else if (this[parentKey] === typeAnnotation) {
269
+ params.index = 0;
270
+ this[parentKey] = undefined;
271
+ }
272
+ }
273
+ return params;
274
+ };
275
+ Return.prototype.toJS = function (state) {
276
+ var _a;
277
+ var context = this.view ? 'this' : 'Vue.prototype';
278
+ var typeAnnotation = this.typeAnnotation || this.__TypeAnnotation;
279
+ var needGenInitFromSchema = typeAnnotation && (!['primitive', 'union'].includes(typeAnnotation.typeKind)
280
+ || typeAnnotation.typeName === 'DateTime');
281
+ var code = this.name + " =";
282
+ if (needGenInitFromSchema) {
283
+ code += context + ".$genInitFromSchema('" + (typeAnnotation === null || typeAnnotation === void 0 ? void 0 : typeAnnotation.sortedTypeKey) + "',";
284
+ }
285
+ var defaultValue = this.defaultValue;
286
+ var defaultValueType = Object.prototype.toString.call(defaultValue);
287
+ var _b = typeAnnotation || {}, typeKind = _b.typeKind, typeNamespace = _b.typeNamespace, typeName = _b.typeName;
288
+ // 设置成null,才能同步给后端清除该值,但是null对checkbox组件是一种特殊状态
289
+ var parsedValue = defaultValue !== null && defaultValue !== void 0 ? defaultValue : undefined;
290
+ if (defaultValueType === '[object String]'
291
+ && (!(typeKind === 'primitive' && typeNamespace === 'nasl.core' && ['String', 'Text', 'Email'].includes(typeName))
292
+ && !(this.isEnum())
293
+ && !['union'].includes(typeKind))) {
294
+ // 一些特殊情况,特殊处理成undefined
295
+ // 1.defaultValue在nasl节点上错误得赋值给了空制符串
296
+ if ([''].includes(defaultValue)) {
297
+ parsedValue = undefined;
298
+ }
299
+ else {
300
+ parsedValue = (_a = tryJSONParse(defaultValue)) !== null && _a !== void 0 ? _a : defaultValue;
301
+ }
302
+ }
303
+ code += JSON.stringify(parsedValue);
304
+ if (needGenInitFromSchema) {
305
+ code += ")";
306
+ }
307
+ return code;
308
+ };
309
+ Return.prototype.toEmbeddedTS = function (state) {
310
+ var _a;
311
+ var code = this.name || '__return';
312
+ if (this.typeAnnotation) {
313
+ code += ': ';
314
+ code += this.typeAnnotation.toEmbeddedTS(translator_1.shiftState(state, code));
315
+ // toTS暂时只需要翻译引用数据类型的,因为值都是字符串
316
+ // 就不在这里赋值了,这里单纯就为了快速查找
317
+ // 并且屏蔽了一些异常的错误
318
+ if (((_a = this.typeAnnotation) === null || _a === void 0 ? void 0 : _a.typeKind) !== 'primitive' && this.defaultValue) {
319
+ if (this.isEnum()) {
320
+ code += "= " + this.typeAnnotation.typeKey + "['" + this.defaultValue + "']";
321
+ }
322
+ }
323
+ }
324
+ // if (this.defaultValue) {
325
+ // code += ` = ${this.defaultValue}`;
326
+ // }
327
+ return code;
328
+ };
329
+ Return.prototype.isEnum = function () {
330
+ var _a, _b;
331
+ return (_b = (_a = this.typeAnnotation) === null || _a === void 0 ? void 0 : _a.typeNamespace) === null || _b === void 0 ? void 0 : _b.endsWith('.enums');
332
+ };
333
+ Return.prototype.toEmbeddedTSInProcess = function (state) {
334
+ var code = this.name;
335
+ if (this.typeAnnotation) {
336
+ code += ': undefined as ';
337
+ code += this.typeAnnotation.toEmbeddedTS(translator_1.shiftState(state, code));
338
+ }
339
+ // if (this.defaultValue) {
340
+ // code += `: ${this.defaultValue}`;
341
+ // }
342
+ return code;
343
+ };
344
+ Return.prototype.setDataType = function (typeAnnotation) {
345
+ var _a;
346
+ return __awaiter(this, void 0, void 0, function () {
347
+ var relationOptions, object;
348
+ return __generator(this, function (_b) {
349
+ if (typeAnnotation) {
350
+ if (typeof typeAnnotation === 'string') {
351
+ typeAnnotation = types_1.dataTypesMap[typeAnnotation];
352
+ if (!typeAnnotation)
353
+ throw new Error('找不到类型:' + typeAnnotation);
354
+ }
355
+ else {
356
+ (_a = typeAnnotation._delete) === null || _a === void 0 ? void 0 : _a.call(typeAnnotation);
357
+ relationOptions = { parentId: this.id, parentConcept: this.concept, parentNode: this };
358
+ Object.assign(typeAnnotation, relationOptions);
359
+ }
360
+ // 处理下拉属性
361
+ try {
362
+ this.completionChildren = this.getSelectRef(typeAnnotation);
363
+ }
364
+ catch (err) {
365
+ this.completionChildren = [];
366
+ console.log(err);
367
+ }
368
+ }
369
+ object = {
370
+ typeAnnotation: typeAnnotation || null
371
+ };
372
+ // 切换类型的时候如果有默认值就清除掉
373
+ if (this.defaultValue) {
374
+ object.defaultValue = '';
375
+ }
376
+ return [2 /*return*/, this.update(__assign({}, object))];
377
+ });
378
+ });
379
+ };
380
+ Return.getDefaultOptions = function () {
381
+ return {};
382
+ };
383
+ Object.defineProperty(Return.prototype, "readonly", {
384
+ /**
385
+ * 是否可编辑
386
+ * */
387
+ get: function () {
388
+ return !!this.module;
389
+ },
390
+ enumerable: false,
391
+ configurable: true
392
+ });
393
+ Object.defineProperty(Return.prototype, "hasChildren", {
394
+ get: function () {
395
+ if (!this.typeAnnotation)
396
+ return null;
397
+ var _a = this.typeAnnotation, typeKind = _a.typeKind, typeNamespace = _a.typeNamespace;
398
+ if (typeKind === 'reference' || typeKind === 'generic') {
399
+ if (typeNamespace.endsWith('.enums'))
400
+ return null;
401
+ return [{}];
402
+ }
403
+ return null;
404
+ },
405
+ enumerable: false,
406
+ configurable: true
407
+ });
408
+ Object.defineProperty(Return.prototype, "isTreeLeaf", {
409
+ get: function () {
410
+ return !this.hasChildren;
411
+ },
412
+ enumerable: false,
413
+ configurable: true
414
+ });
415
+ Return.prototype.getSelectRef = function (newTypeAnnotation) {
416
+ var _a, _b, _c, _d, _e;
417
+ try {
418
+ var _f = newTypeAnnotation || this.typeAnnotation, typeName = _f.typeName, typeKind = _f.typeKind, typeNamespace = _f.typeNamespace;
419
+ var completionChildren = void 0;
420
+ if (typeKind === 'reference') {
421
+ if (typeNamespace === 'nasl.ui' || typeNamespace === 'nasl.process' || typeNamespace === 'nasl.auth') {
422
+ var node = utils_1.getNaslNodeByNodeCallee(typeNamespace, typeName);
423
+ var properties = ((_a = node) === null || _a === void 0 ? void 0 : _a.properties) || [];
424
+ completionChildren = properties;
425
+ }
426
+ else if (typeNamespace.endsWith('.enums')) {
427
+ completionChildren = [];
428
+ }
429
+ else {
430
+ var node = utils_1.getNodeByNodeCallee(this.app, typeNamespace + '.' + typeName);
431
+ var properties = (node === null || node === void 0 ? void 0 : node.properties) || [];
432
+ completionChildren = properties;
433
+ }
434
+ }
435
+ else if (typeKind === 'generic') {
436
+ var node = utils_1.getNaslNodeByNodeCallee(typeNamespace, typeName);
437
+ var properties = (((_b = node) === null || _b === void 0 ? void 0 : _b.properties) && __spreadArrays((_c = node) === null || _c === void 0 ? void 0 : _c.properties)) || [];
438
+ for (var i = 0; i < properties.length; i++) {
439
+ var item = properties[i];
440
+ if (((_d = item === null || item === void 0 ? void 0 : item.typeAnnotation) === null || _d === void 0 ? void 0 : _d.typeKind) === 'typeParam') {
441
+ var newItem = StructureProperty__1["default"].from(item.toJSON());
442
+ newItem.typeAnnotation = (_e = this === null || this === void 0 ? void 0 : this.typeAnnotation) === null || _e === void 0 ? void 0 : _e.typeArguments[0];
443
+ newItem.parentNode = this;
444
+ properties[i] = newItem;
445
+ }
446
+ }
447
+ completionChildren = properties;
448
+ }
449
+ else {
450
+ completionChildren = [];
451
+ }
452
+ return completionChildren;
453
+ }
454
+ catch (err) {
455
+ console.log(err);
456
+ }
457
+ };
458
+ var Return_1;
459
+ __decorate([
460
+ decorators_1.property()
461
+ ], Return.prototype, "concept");
462
+ __decorate([
463
+ decorators_1.property()
464
+ ], Return.prototype, "name");
465
+ __decorate([
466
+ decorators_1.property()
467
+ ], Return.prototype, "description");
468
+ __decorate([
469
+ decorators_1.property('TypeAnnotation')
470
+ ], Return.prototype, "typeAnnotation");
471
+ __decorate([
472
+ decorators_1.property()
473
+ ], Return.prototype, "defaultValue");
474
+ __decorate([
475
+ decorators_1.excludedInJSON()
476
+ ], Return.prototype, "useComponent");
477
+ __decorate([
478
+ translator_1.withSourceMap()
479
+ ], Return.prototype, "toEmbeddedTS");
480
+ __decorate([
481
+ translator_1.withSourceMap()
482
+ ], Return.prototype, "toEmbeddedTSInProcess");
483
+ Return = Return_1 = __decorate([
484
+ decorators_1.concept('输出参数')
485
+ ], Return);
486
+ return Return;
487
+ }(BaseNode_1["default"]));
488
+ exports.Return = Return;
489
+ classMap_1["default"].Return = Return;
490
+ exports["default"] = Return;
491
+ //================================================================================
492
+ // ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
493
+ // 自动生成的代码已结束。下面可以手动编写。
494
+ //================================================================================