@lcap/nasl 2.20.0-beta.4 → 2.20.1-beta.1

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