@lcap/nasl 1.0.0-alpha.13 → 1.0.0-alpha.16
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.
- package/out/automate/engine/index.d.ts +1 -1
- package/out/automate/engine/index.js +73 -25
- package/out/automate/engine/index.js.map +1 -1
- package/out/automate/engine/utils.js +7 -6
- package/out/automate/engine/utils.js.map +1 -1
- package/out/common/BaseNode.d.ts +5 -4
- package/out/common/BaseNode.js +48 -41
- package/out/common/BaseNode.js.map +1 -1
- package/out/concepts/App__.d.ts +18 -1
- package/out/concepts/App__.js +64 -24
- package/out/concepts/App__.js.map +1 -1
- package/out/concepts/Argument__.js +2 -2
- package/out/concepts/Argument__.js.map +1 -1
- package/out/concepts/Assignee__.d.ts +190 -0
- package/out/concepts/Assignee__.js +264 -0
- package/out/concepts/Assignee__.js.map +1 -0
- package/out/concepts/BinaryExpression__.js +6 -6
- package/out/concepts/BinaryExpression__.js.map +1 -1
- package/out/concepts/BindAttribute__.d.ts +19 -0
- package/out/concepts/BindAttribute__.js +36 -2
- package/out/concepts/BindAttribute__.js.map +1 -1
- package/out/concepts/BindDirective__.js +21 -1
- package/out/concepts/BindDirective__.js.map +1 -1
- package/out/concepts/BindEvent__.d.ts +1 -0
- package/out/concepts/BindEvent__.js +38 -14
- package/out/concepts/BindEvent__.js.map +1 -1
- package/out/concepts/CallFunction__.js +20 -7
- package/out/concepts/CallFunction__.js.map +1 -1
- package/out/concepts/CallInterface__.d.ts +11 -8
- package/out/concepts/CallInterface__.js +160 -23
- package/out/concepts/CallInterface__.js.map +1 -1
- package/out/concepts/CallLogic__.d.ts +1 -0
- package/out/concepts/CallLogic__.js +17 -7
- package/out/concepts/CallLogic__.js.map +1 -1
- package/out/concepts/CallQueryComponent__.d.ts +5 -1
- package/out/concepts/CallQueryComponent__.js +15 -11
- package/out/concepts/CallQueryComponent__.js.map +1 -1
- package/out/concepts/Comment__.js +6 -2
- package/out/concepts/Comment__.js.map +1 -1
- package/out/concepts/ConfigGroup__.js +1 -1
- package/out/concepts/ConfigGroup__.js.map +1 -1
- package/out/concepts/ConfigProperty__.js +1 -1
- package/out/concepts/ConfigProperty__.js.map +1 -1
- package/out/concepts/Configuration__.js +1 -1
- package/out/concepts/Configuration__.js.map +1 -1
- package/out/concepts/Destination__.d.ts +11 -0
- package/out/concepts/Destination__.js +59 -19
- package/out/concepts/Destination__.js.map +1 -1
- package/out/concepts/End__.js +10 -2
- package/out/concepts/End__.js.map +1 -1
- package/out/concepts/EntityProperty__.d.ts +7 -0
- package/out/concepts/EntityProperty__.js +60 -3
- package/out/concepts/EntityProperty__.js.map +1 -1
- package/out/concepts/Entity__.d.ts +4 -1
- package/out/concepts/Entity__.js +29 -12
- package/out/concepts/Entity__.js.map +1 -1
- package/out/concepts/Enum__.d.ts +4 -0
- package/out/concepts/Enum__.js +9 -6
- package/out/concepts/Enum__.js.map +1 -1
- package/out/concepts/Event__.js +1 -1
- package/out/concepts/Event__.js.map +1 -1
- package/out/concepts/ForEachStatement__.js +8 -12
- package/out/concepts/ForEachStatement__.js.map +1 -1
- package/out/concepts/Function__.js +5 -5
- package/out/concepts/Function__.js.map +1 -1
- package/out/concepts/Identifier__.js +26 -24
- package/out/concepts/Identifier__.js.map +1 -1
- package/out/concepts/IfStatement__.js +2 -2
- package/out/concepts/IfStatement__.js.map +1 -1
- package/out/concepts/InterfaceParam__.d.ts +2 -0
- package/out/concepts/InterfaceParam__.js +41 -21
- package/out/concepts/InterfaceParam__.js.map +1 -1
- package/out/concepts/Interface__.d.ts +3 -0
- package/out/concepts/Interface__.js +105 -9
- package/out/concepts/Interface__.js.map +1 -1
- package/out/concepts/LogicItem__.d.ts +2 -1
- package/out/concepts/LogicItem__.js +14 -0
- package/out/concepts/LogicItem__.js.map +1 -1
- package/out/concepts/Logic__.d.ts +3 -0
- package/out/concepts/Logic__.js +57 -16
- package/out/concepts/Logic__.js.map +1 -1
- package/out/concepts/MemberExpression__.js +13 -6
- package/out/concepts/MemberExpression__.js.map +1 -1
- package/out/concepts/Module__.d.ts +6 -0
- package/out/concepts/Module__.js +18 -8
- package/out/concepts/Module__.js.map +1 -1
- package/out/concepts/Namespace__.d.ts +4 -0
- package/out/concepts/Namespace__.js +23 -12
- package/out/concepts/Namespace__.js.map +1 -1
- package/out/concepts/Param__.d.ts +2 -1
- package/out/concepts/Param__.js +35 -22
- package/out/concepts/Param__.js.map +1 -1
- package/out/concepts/ProcessComponent__.js +2 -2
- package/out/concepts/ProcessComponent__.js.map +1 -1
- package/out/concepts/ProcessElement__.js +20 -18
- package/out/concepts/ProcessElement__.js.map +1 -1
- package/out/concepts/ProcessOutcome__.js +1 -1
- package/out/concepts/ProcessOutcome__.js.map +1 -1
- package/out/concepts/Process__.d.ts +6 -1
- package/out/concepts/Process__.js +18 -14
- package/out/concepts/Process__.js.map +1 -1
- package/out/concepts/QueryAggregateExpression__.js +1 -1
- package/out/concepts/QueryAggregateExpression__.js.map +1 -1
- package/out/concepts/QueryFromExpression__.js +1 -1
- package/out/concepts/QueryFromExpression__.js.map +1 -1
- package/out/concepts/QueryJoinExpression__.js +2 -2
- package/out/concepts/QueryJoinExpression__.js.map +1 -1
- package/out/concepts/QuerySelectExpression__.js +1 -1
- package/out/concepts/QuerySelectExpression__.js.map +1 -1
- package/out/concepts/Return__.d.ts +1 -0
- package/out/concepts/Return__.js +38 -25
- package/out/concepts/Return__.js.map +1 -1
- package/out/concepts/SqlQueryComponent__.js +1 -1
- package/out/concepts/SqlQueryComponent__.js.map +1 -1
- package/out/concepts/StringLiteral__.d.ts +1 -1
- package/out/concepts/StringLiteral__.js +2 -2
- package/out/concepts/StringLiteral__.js.map +1 -1
- package/out/concepts/StructureProperty__.d.ts +5 -4
- package/out/concepts/StructureProperty__.js +54 -31
- package/out/concepts/StructureProperty__.js.map +1 -1
- package/out/concepts/Structure__.d.ts +1 -0
- package/out/concepts/Structure__.js +18 -5
- package/out/concepts/Structure__.js.map +1 -1
- package/out/concepts/SwitchCase__.js +3 -3
- package/out/concepts/SwitchCase__.js.map +1 -1
- package/out/concepts/SwitchStatement__.js +1 -1
- package/out/concepts/SwitchStatement__.js.map +1 -1
- package/out/concepts/TypeAnnotation__.d.ts +3 -5
- package/out/concepts/TypeAnnotation__.js +36 -14
- package/out/concepts/TypeAnnotation__.js.map +1 -1
- package/out/concepts/UnaryExpression__.js +4 -2
- package/out/concepts/UnaryExpression__.js.map +1 -1
- package/out/concepts/ValidationRule__.d.ts +1 -0
- package/out/concepts/ValidationRule__.js +27 -1
- package/out/concepts/ValidationRule__.js.map +1 -1
- package/out/concepts/Variable__.d.ts +1 -0
- package/out/concepts/Variable__.js +38 -25
- package/out/concepts/Variable__.js.map +1 -1
- package/out/concepts/ViewComponent__.js +5 -5
- package/out/concepts/ViewComponent__.js.map +1 -1
- package/out/concepts/ViewElement__.d.ts +7 -1
- package/out/concepts/ViewElement__.js +154 -117
- package/out/concepts/ViewElement__.js.map +1 -1
- package/out/concepts/View__.d.ts +4 -0
- package/out/concepts/View__.js +38 -25
- package/out/concepts/View__.js.map +1 -1
- package/out/concepts/WhileStatement__.js +1 -1
- package/out/concepts/WhileStatement__.js.map +1 -1
- package/out/concepts/basics/stdlib/index.js +3 -1
- package/out/concepts/basics/stdlib/index.js.map +1 -1
- package/out/concepts/basics/stdlib/nasl.auth.d.ts +3 -0
- package/out/concepts/basics/stdlib/nasl.auth.js +30 -0
- package/out/concepts/basics/stdlib/nasl.auth.js.map +1 -0
- package/out/concepts/basics/stdlib/nasl.browser copy.d.ts +3 -0
- package/out/concepts/basics/stdlib/nasl.browser copy.js +70 -0
- package/out/concepts/basics/stdlib/nasl.browser copy.js.map +1 -0
- package/out/concepts/basics/stdlib/nasl.browser.js +6 -35
- package/out/concepts/basics/stdlib/nasl.browser.js.map +1 -1
- package/out/concepts/basics/stdlib/nasl.configuration.d.ts +3 -0
- package/out/concepts/basics/stdlib/nasl.configuration.js +25 -0
- package/out/concepts/basics/stdlib/nasl.configuration.js.map +1 -0
- package/out/concepts/basics/stdlib/nasl.util.js +49 -41
- package/out/concepts/basics/stdlib/nasl.util.js.map +1 -1
- package/out/concepts/basics/stdlib/nasl.validation.js +26 -20
- package/out/concepts/basics/stdlib/nasl.validation.js.map +1 -1
- package/out/concepts/basics/types/coreTypeList.js +11 -11
- package/out/concepts/basics/types/coreTypeList.js.map +1 -1
- package/out/concepts/index__.d.ts +1 -0
- package/out/concepts/index__.js +1 -0
- package/out/concepts/index__.js.map +1 -1
- package/out/enums/KEYWORDS.js +1 -1
- package/out/enums/KEYWORDS.js.map +1 -1
- package/out/generator/genBundleFiles.d.ts +1 -0
- package/out/generator/genBundleFiles.js +122 -93
- package/out/generator/genBundleFiles.js.map +1 -1
- package/out/manager/diagnostic.d.ts +1 -1
- package/out/server/createUiTs.d.ts +1 -0
- package/out/server/createUiTs.js +19 -2
- package/out/server/createUiTs.js.map +1 -1
- package/out/server/entity2LogicNamespace.js +24 -9
- package/out/server/entity2LogicNamespace.js.map +1 -1
- package/out/server/getExtensionModules.js +2 -0
- package/out/server/getExtensionModules.js.map +1 -1
- package/out/server/getLogics.js +40 -56
- package/out/server/getLogics.js.map +1 -1
- package/out/server/getMemberIdentifier.d.ts +4 -0
- package/out/server/getMemberIdentifier.js +90 -48
- package/out/server/getMemberIdentifier.js.map +1 -1
- package/out/server/getProcesses.d.ts +2 -2
- package/out/server/getProcesses.js +34 -11
- package/out/server/getProcesses.js.map +1 -1
- package/out/server/index.js +4 -0
- package/out/server/index.js.map +1 -1
- package/out/server/naslServer.d.ts +11 -30
- package/out/server/naslServer.js +410 -199
- package/out/server/naslServer.js.map +1 -1
- package/out/server/process2LogicNamespace.d.ts +10 -0
- package/out/server/process2LogicNamespace.js +16 -0
- package/out/server/process2LogicNamespace.js.map +1 -1
- package/out/server/translator.d.ts +22 -3
- package/out/server/translator.js +336 -130
- package/out/server/translator.js.map +1 -1
- package/out/service/storage/init.js +29 -15
- package/out/service/storage/init.js.map +1 -1
- package/out/templator/genCreateBlock.js +5 -5
- package/out/templator/genCreateBlock.js.map +1 -1
- package/out/templator/genCurdEditMultipleKeyBlock.js +9 -13
- package/out/templator/genCurdEditMultipleKeyBlock.js.map +1 -1
- package/out/templator/genCurdMultipleKeyBlock.js +7 -7
- package/out/templator/genCurdMultipleKeyBlock.js.map +1 -1
- package/out/templator/genEditTableBlock.js +2 -2
- package/out/templator/genEditTableBlock.js.map +1 -1
- package/out/templator/genGetBlock.js +4 -2
- package/out/templator/genGetBlock.js.map +1 -1
- package/out/templator/genGridViewBlock.d.ts +1 -1
- package/out/templator/genGridViewBlock.js +3 -3
- package/out/templator/genGridViewBlock.js.map +1 -1
- package/out/templator/genQueryComponent.d.ts +2 -0
- package/out/templator/genQueryComponent.js +1 -0
- package/out/templator/genQueryComponent.js.map +1 -1
- package/out/templator/genTableBlock.d.ts +1 -1
- package/out/templator/genTableBlock.js +3 -3
- package/out/templator/genTableBlock.js.map +1 -1
- package/out/templator/genUpdateBlock.js +7 -7
- package/out/templator/genUpdateBlock.js.map +1 -1
- package/out/templator/utils.d.ts +3 -1
- package/out/templator/utils.js +2 -1
- package/out/templator/utils.js.map +1 -1
- package/out/utils/index.d.ts +6 -0
- package/out/utils/index.js +20 -1
- package/out/utils/index.js.map +1 -1
- package/package.json +2 -1
- package/src/automate/engine/index.js +73 -25
- package/src/automate/engine/utils.js +7 -6
- package/src/common/BaseNode.ts +51 -42
- package/src/concepts/App__.ts +104 -26
- package/src/concepts/Argument__.ts +3 -2
- package/src/concepts/Assignee__.ts +437 -0
- package/src/concepts/BinaryExpression__.ts +7 -6
- package/src/concepts/BindAttribute__.ts +51 -2
- package/src/concepts/BindDirective__.ts +20 -1
- package/src/concepts/BindEvent__.ts +39 -16
- package/src/concepts/CallFunction__.ts +21 -8
- package/src/concepts/CallInterface__.ts +161 -42
- package/src/concepts/CallLogic__.ts +21 -9
- package/src/concepts/CallQueryComponent__.ts +15 -13
- package/src/concepts/Comment__.ts +6 -2
- package/src/concepts/ConfigGroup__.ts +1 -1
- package/src/concepts/ConfigProperty__.ts +1 -1
- package/src/concepts/Configuration__.ts +1 -1
- package/src/concepts/Destination__.ts +57 -19
- package/src/concepts/End__.ts +9 -11
- package/src/concepts/EntityProperty__.ts +56 -3
- package/src/concepts/Entity__.ts +33 -20
- package/src/concepts/Enum__.ts +8 -7
- package/src/concepts/Event__.ts +1 -1
- package/src/concepts/ForEachStatement__.ts +8 -13
- package/src/concepts/Function__.ts +5 -5
- package/src/concepts/Identifier__.ts +31 -26
- package/src/concepts/IfStatement__.ts +2 -2
- package/src/concepts/InterfaceParam__.ts +39 -20
- package/src/concepts/Interface__.ts +103 -9
- package/src/concepts/LogicItem__.ts +16 -1
- package/src/concepts/Logic__.ts +60 -18
- package/src/concepts/MemberExpression__.ts +18 -6
- package/src/concepts/Module__.ts +19 -8
- package/src/concepts/Namespace__.ts +24 -12
- package/src/concepts/Param__.ts +34 -23
- package/src/concepts/ProcessComponent__.ts +2 -2
- package/src/concepts/ProcessElement__.ts +51 -50
- package/src/concepts/ProcessOutcome__.ts +1 -1
- package/src/concepts/Process__.ts +32 -28
- package/src/concepts/QueryAggregateExpression__.ts +1 -1
- package/src/concepts/QueryFromExpression__.ts +1 -1
- package/src/concepts/QueryJoinExpression__.ts +2 -2
- package/src/concepts/QuerySelectExpression__.ts +1 -1
- package/src/concepts/Return__.ts +35 -25
- package/src/concepts/SqlQueryComponent__.ts +1 -1
- package/src/concepts/StringLiteral__.ts +2 -2
- package/src/concepts/StructureProperty__.ts +49 -29
- package/src/concepts/Structure__.ts +17 -5
- package/src/concepts/SwitchCase__.ts +3 -3
- package/src/concepts/SwitchStatement__.ts +1 -1
- package/src/concepts/TypeAnnotation__.ts +34 -12
- package/src/concepts/UnaryExpression__.ts +4 -2
- package/src/concepts/ValidationRule__.ts +24 -1
- package/src/concepts/Variable__.ts +35 -24
- package/src/concepts/ViewComponent__.ts +5 -5
- package/src/concepts/ViewElement__.ts +168 -113
- package/src/concepts/View__.ts +44 -25
- package/src/concepts/WhileStatement__.ts +1 -1
- package/src/concepts/basics/stdlib/index.ts +3 -1
- package/src/concepts/basics/stdlib/nasl.auth.ts +26 -0
- package/src/concepts/basics/stdlib/nasl.browser.ts +7 -41
- package/src/concepts/basics/stdlib/nasl.configuration.ts +21 -0
- package/src/concepts/basics/stdlib/nasl.util.ts +49 -41
- package/src/concepts/basics/stdlib/nasl.validation.ts +17 -11
- package/src/concepts/basics/types/coreTypeList.ts +11 -11
- package/src/concepts/index__.ts +1 -0
- package/src/enums/KEYWORDS.ts +1 -1
- package/src/generator/genBundleFiles.ts +131 -112
- package/src/manager/diagnostic.ts +1 -1
- package/src/server/createUiTs.ts +22 -4
- package/src/server/entity2LogicNamespace.ts +25 -9
- package/src/server/getExtensionModules.ts +2 -0
- package/src/server/getLogics.ts +42 -58
- package/src/server/getMemberIdentifier.ts +88 -46
- package/src/server/getProcesses.ts +32 -9
- package/src/server/index.ts +12 -1
- package/src/server/naslServer.ts +422 -215
- package/src/server/process2LogicNamespace.ts +17 -1
- package/src/server/translator.ts +392 -134
- package/src/service/storage/init.ts +27 -16
- package/src/templator/genCreateBlock.ts +5 -5
- package/src/templator/genCurdEditMultipleKeyBlock.ts +25 -26
- package/src/templator/genCurdMultipleKeyBlock.ts +7 -7
- package/src/templator/genEditTableBlock.ts +2 -2
- package/src/templator/genGetBlock.ts +5 -7
- package/src/templator/genGridViewBlock.ts +4 -7
- package/src/templator/genQueryComponent.ts +1 -0
- package/src/templator/genTableBlock.ts +4 -7
- package/src/templator/genUpdateBlock.ts +7 -8
- package/src/templator/utils.ts +2 -1
- package/src/utils/index.ts +19 -0
|
@@ -27,7 +27,6 @@ function getCompletionDetailType(displayParts: Array<{ text: string; kind: strin
|
|
|
27
27
|
});
|
|
28
28
|
const strTypes = str.split(': ');
|
|
29
29
|
const type = strTypes[1];
|
|
30
|
-
console.log(type);
|
|
31
30
|
let typeAnnotation;
|
|
32
31
|
try {
|
|
33
32
|
if (type.includes('<') && type.includes('>')) {
|
|
@@ -167,22 +166,28 @@ function getNodeiconFromLogic(completionProperty: CompletionProperty, node: Base
|
|
|
167
166
|
function formatEnums(enums: Array<Enum>) {
|
|
168
167
|
const result = enums.map((item) => {
|
|
169
168
|
const namespace = item.getNamespace();
|
|
170
|
-
|
|
169
|
+
const newItem: any = {
|
|
171
170
|
name: item.name,
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
171
|
+
value: item.name,
|
|
172
|
+
expression: new Identifier({
|
|
173
|
+
name: item.name,
|
|
174
|
+
namespace,
|
|
175
|
+
}),
|
|
176
|
+
children: [],
|
|
177
|
+
};
|
|
178
|
+
newItem.children = item.enumItems.map((enumItem) => {
|
|
175
179
|
const newEnumItem: any = { ...enumItem };
|
|
176
|
-
newEnumItem.name = newEnumItem.value;
|
|
177
180
|
newEnumItem.expression = new MemberExpression({
|
|
178
|
-
object:
|
|
181
|
+
object: newItem.expression,
|
|
179
182
|
property: new Identifier({ name: newEnumItem.value }),
|
|
180
183
|
});
|
|
184
|
+
newEnumItem.name = newEnumItem.value;
|
|
185
|
+
newEnumItem.value = newItem.value + '.' + newEnumItem.value;
|
|
181
186
|
const completionProperty = new CompletionProperty(newEnumItem);
|
|
182
187
|
completionProperty.icon = 'enumItem';
|
|
183
188
|
return completionProperty;
|
|
184
189
|
});
|
|
185
|
-
const completionProperty = new CompletionProperty(
|
|
190
|
+
const completionProperty = new CompletionProperty(newItem);
|
|
186
191
|
completionProperty.icon = 'enum';
|
|
187
192
|
return completionProperty;
|
|
188
193
|
});
|
|
@@ -233,22 +238,31 @@ function formatGlobalVariable() {
|
|
|
233
238
|
const newList = [];
|
|
234
239
|
const globalVariable = {
|
|
235
240
|
name: 'userInfo',
|
|
241
|
+
value: 'userInfo',
|
|
236
242
|
children: [
|
|
237
|
-
{ name: 'Status' },
|
|
238
|
-
{ name: 'UserInfoExtend',
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
243
|
+
{ name: 'Status', value: 'userInfo.Status' },
|
|
244
|
+
{ name: 'UserInfoExtend',
|
|
245
|
+
value: 'userInfo.UserInfoExtend',
|
|
246
|
+
children: [
|
|
247
|
+
{ name: 'Company', value: 'userInfo.UserInfoExtend.Company' },
|
|
248
|
+
{ name: 'JobLevel', value: 'userInfo.UserInfoExtend.JobLevel' },
|
|
249
|
+
{ name: 'JobNum', value: 'userInfo.UserInfoExtend.JobNum' },
|
|
250
|
+
{ name: 'RealName', value: 'userInfo.UserInfoExtend.RealName' },
|
|
251
|
+
{ name: 'JobYear', value: 'userInfo.UserInfoExtend.JobYear' },
|
|
252
|
+
] },
|
|
253
|
+
{ name: 'UserName', value: 'userInfo.UserName' },
|
|
254
|
+
{ name: 'Email', value: 'userInfo.Email' },
|
|
255
|
+
{ name: 'UserId', value: 'userInfo.UserId' },
|
|
256
|
+
{ name: 'Phone', value: 'userInfo.Phone' },
|
|
257
|
+
{ name: 'CreateTime', value: 'userInfo.CreateTime' },
|
|
258
|
+
{ name: 'UpdateTime', value: 'userInfo.UpdateTime' },
|
|
259
|
+
{ name: 'LoginCount', value: 'userInfo.LoginCount' },
|
|
260
|
+
{ name: 'Source', value: 'userInfo.Source' },
|
|
247
261
|
],
|
|
248
262
|
};
|
|
249
263
|
const userInfoIdentifier = new Identifier({
|
|
250
264
|
name: 'userInfo',
|
|
251
|
-
namespace: 'nasl.
|
|
265
|
+
namespace: 'nasl.auth',
|
|
252
266
|
});
|
|
253
267
|
const userCompletionProperty = new CompletionProperty({
|
|
254
268
|
name: 'userInfo',
|
|
@@ -312,45 +326,31 @@ function getCurrentLogic(node: BaseNode,
|
|
|
312
326
|
|
|
313
327
|
export async function getMemberIdentifier(node: BaseNode) {
|
|
314
328
|
if (node) {
|
|
329
|
+
// 获取字面量
|
|
330
|
+
const literals = getLiteralsIdentifier();
|
|
331
|
+
if (node.getAncestor('CallQueryComponent'))
|
|
332
|
+
literals.shift(); // 去除 null
|
|
315
333
|
// 获取枚举
|
|
316
|
-
const
|
|
317
|
-
const literals = formatLiterals();
|
|
318
|
-
const enums = app?.enums;
|
|
319
|
-
const newEnums = enums ? formatEnums(enums) : [];
|
|
334
|
+
const newEnums = getEnumsIdentifier(node);
|
|
320
335
|
|
|
321
|
-
//
|
|
322
|
-
//
|
|
336
|
+
// extensionModules(state) {
|
|
337
|
+
// return state.app?.dependencies?.filter((module) => module.type === 'extension') || {};
|
|
323
338
|
// },
|
|
324
339
|
|
|
325
340
|
// 如果之前有选好的值就需要的把之前那一列的内容渲染出来
|
|
326
341
|
// 先去获取
|
|
327
342
|
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
completionData = formatVariableData(completion, node);
|
|
334
|
-
} else {
|
|
335
|
-
const nextCompletion = await naslServer.getFieldKeySelectCompletion(node, '');
|
|
336
|
-
completionData = formatVariableData(nextCompletion, node);
|
|
337
|
-
}
|
|
338
|
-
} else {
|
|
339
|
-
const nextCompletion = await naslServer.getFieldKeySelectCompletion(node, '');
|
|
340
|
-
completionData = formatVariableData(nextCompletion, node);
|
|
341
|
-
}
|
|
342
|
-
let globalVariable: CompletionProperty[] = [];
|
|
343
|
-
// 全局变量修改
|
|
344
|
-
if ((node as any).view) {
|
|
345
|
-
globalVariable = formatGlobalVariable();
|
|
346
|
-
}
|
|
343
|
+
// 获取变量
|
|
344
|
+
const completionData = await getVariableIdentifier(node);
|
|
345
|
+
// 获取公共变量
|
|
346
|
+
const globalVariable: CompletionProperty[] = await getGlobalVariableIdentifier(node);
|
|
347
|
+
|
|
347
348
|
// 这个可能需要自己算一下
|
|
348
349
|
const result = [
|
|
349
350
|
{ name: '字面量', children: literals, expanded: true, icon: 'category' },
|
|
350
351
|
{ name: '枚举', children: newEnums, expanded: true, icon: 'category' },
|
|
351
352
|
{ name: '变量', children: completionData, expanded: true, icon: 'category' },
|
|
352
|
-
{ name: '
|
|
353
|
-
|
|
353
|
+
{ name: '公共变量', children: globalVariable, expanded: true, icon: 'category' },
|
|
354
354
|
// { name: '流程变量', children: [] },
|
|
355
355
|
];
|
|
356
356
|
getCurrentLogic(node, result);
|
|
@@ -358,6 +358,48 @@ export async function getMemberIdentifier(node: BaseNode) {
|
|
|
358
358
|
}
|
|
359
359
|
}
|
|
360
360
|
|
|
361
|
+
// 获取字面量
|
|
362
|
+
export function getLiteralsIdentifier(): CompletionProperty[] {
|
|
363
|
+
return formatLiterals();
|
|
364
|
+
}
|
|
365
|
+
|
|
366
|
+
// 获取枚举
|
|
367
|
+
export function getEnumsIdentifier(node: BaseNode): CompletionProperty[] {
|
|
368
|
+
const app = node.rootNode as App;
|
|
369
|
+
const enums = app?.enums;
|
|
370
|
+
const newEnums = enums ? formatEnums(enums) : [];
|
|
371
|
+
return newEnums;
|
|
372
|
+
}
|
|
373
|
+
|
|
374
|
+
// 获取变量
|
|
375
|
+
export async function getVariableIdentifier(node: BaseNode): Promise<CompletionProperty[]> {
|
|
376
|
+
let completionData: CompletionProperty[] = [new CompletionProperty({})];
|
|
377
|
+
if (node instanceof Identifier || node instanceof MemberExpression) {
|
|
378
|
+
const value = (node as Identifier | MemberExpression).getValue();
|
|
379
|
+
if (value) {
|
|
380
|
+
const completion = (await naslServer.getValueSelectCompletion(node, value)) as variableItem[];
|
|
381
|
+
completionData = formatVariableData(completion, node);
|
|
382
|
+
} else {
|
|
383
|
+
const nextCompletion = await naslServer.getFieldKeySelectCompletion(node, '');
|
|
384
|
+
completionData = formatVariableData(nextCompletion, node);
|
|
385
|
+
}
|
|
386
|
+
} else {
|
|
387
|
+
const nextCompletion = await naslServer.getFieldKeySelectCompletion(node, '');
|
|
388
|
+
completionData = formatVariableData(nextCompletion, node);
|
|
389
|
+
}
|
|
390
|
+
return completionData;
|
|
391
|
+
}
|
|
392
|
+
|
|
393
|
+
// 获取公共变量
|
|
394
|
+
export async function getGlobalVariableIdentifier(node: BaseNode):Promise<CompletionProperty[]> {
|
|
395
|
+
let globalVariable: CompletionProperty[] = [];
|
|
396
|
+
// 公共变量修改
|
|
397
|
+
if ((node as any).view) {
|
|
398
|
+
globalVariable = formatGlobalVariable();
|
|
399
|
+
}
|
|
400
|
+
return globalVariable;
|
|
401
|
+
}
|
|
402
|
+
|
|
361
403
|
export async function getSelectNextCompletionData(node: Identifier, completionProperty?: CompletionProperty) {
|
|
362
404
|
if (node) {
|
|
363
405
|
let fieldKey: string = '';
|
|
@@ -20,6 +20,10 @@ export function genLaunchProcess(process: Process) {
|
|
|
20
20
|
}),
|
|
21
21
|
],
|
|
22
22
|
});
|
|
23
|
+
const path = `process.${process.name}.logics`;
|
|
24
|
+
l.getNamespace = function() {
|
|
25
|
+
return path;
|
|
26
|
+
}
|
|
23
27
|
l.fake = true;
|
|
24
28
|
return l;
|
|
25
29
|
}
|
|
@@ -61,6 +65,10 @@ export function genUserTaskLogic(userTask: ProcessElement) {
|
|
|
61
65
|
body: [],
|
|
62
66
|
returns: [],
|
|
63
67
|
});
|
|
68
|
+
const path = `elements.${userTask.name}.logics`;
|
|
69
|
+
l.getNamespace = function() {
|
|
70
|
+
return path;
|
|
71
|
+
}
|
|
64
72
|
l.fake = true;
|
|
65
73
|
return l;
|
|
66
74
|
}
|
|
@@ -221,7 +229,7 @@ export function genCompletionProperty(prefix: string[] = []):(v: Variable | Para
|
|
|
221
229
|
};
|
|
222
230
|
}
|
|
223
231
|
|
|
224
|
-
export function
|
|
232
|
+
export function getPreviousTask(node: ProcessElement) {
|
|
225
233
|
const process = node.process;
|
|
226
234
|
const elems = process.elements;
|
|
227
235
|
const elements: ProcessElement[] = [];
|
|
@@ -230,15 +238,15 @@ export function getPreviousUserTask(node: ProcessElement) {
|
|
|
230
238
|
if (visitedMap.has(processElem)) {
|
|
231
239
|
return;
|
|
232
240
|
}
|
|
241
|
+
if (processElem !== node && (processElem.type === 'UserTask')) {
|
|
242
|
+
elements.push(processElem);
|
|
243
|
+
}
|
|
233
244
|
visitedMap.set(processElem, true);
|
|
234
245
|
const links = elems.filter((e) => e.type === 'SequenceFlow' && e.targetRef === processElem.name);
|
|
235
246
|
links.forEach((l) => {
|
|
236
247
|
const s = l.sourceRef;
|
|
237
248
|
const t = elems.find((el) => el.name === s);
|
|
238
249
|
if (t) {
|
|
239
|
-
if (t.type === 'UserTask') {
|
|
240
|
-
elements.push(t);
|
|
241
|
-
}
|
|
242
250
|
iterator(t);
|
|
243
251
|
}
|
|
244
252
|
});
|
|
@@ -248,22 +256,22 @@ export function getPreviousUserTask(node: ProcessElement) {
|
|
|
248
256
|
return elements;
|
|
249
257
|
}
|
|
250
258
|
|
|
251
|
-
export function getProcessVariableSuggestions(node: Logic): CompletionProperty {
|
|
259
|
+
export function getProcessVariableSuggestions(node: Logic, abandonConstant: boolean = false): CompletionProperty {
|
|
252
260
|
if (!node.processElement) {
|
|
253
261
|
return;
|
|
254
262
|
}
|
|
255
263
|
const processElem = node.processElement;
|
|
256
264
|
const process = node.process;
|
|
257
265
|
|
|
258
|
-
const elements: ProcessElement[] =
|
|
259
|
-
const
|
|
266
|
+
const elements: ProcessElement[] = getPreviousTask(processElem);
|
|
267
|
+
const prevtasks = elements.map((us) => {
|
|
260
268
|
const cp = new CompletionProperty({
|
|
261
269
|
name: us.name,
|
|
262
270
|
value: us.name,
|
|
263
271
|
noFurther: true,
|
|
264
272
|
children: [
|
|
265
273
|
...us.returns.map(genCompletionProperty([process.name, us.name])),
|
|
266
|
-
...us.constants.map(genCompletionProperty([process.name, us.name])),
|
|
274
|
+
...(abandonConstant ? [] : us.constants.map(genCompletionProperty([process.name, us.name]))),
|
|
267
275
|
],
|
|
268
276
|
});
|
|
269
277
|
cp.icon = us.type;
|
|
@@ -279,7 +287,7 @@ export function getProcessVariableSuggestions(node: Logic): CompletionProperty {
|
|
|
279
287
|
...process.params.map(genCompletionProperty([process.name])),
|
|
280
288
|
...process.returns.map(genCompletionProperty([process.name])),
|
|
281
289
|
...process.constants.map(genCompletionProperty([process.name])),
|
|
282
|
-
...
|
|
290
|
+
...prevtasks,
|
|
283
291
|
],
|
|
284
292
|
});
|
|
285
293
|
processVariables.icon = 'Process';
|
|
@@ -308,6 +316,21 @@ export function getProcessVariableSuggestions(node: Logic): CompletionProperty {
|
|
|
308
316
|
scopeVariable.icon = processElem.type;
|
|
309
317
|
processVariables.children.push(scopeVariable);
|
|
310
318
|
}
|
|
319
|
+
// if(processElem.type === 'AutoTask') {
|
|
320
|
+
// const scopeVariable = new CompletionProperty({
|
|
321
|
+
// name: processElem.name,
|
|
322
|
+
// value: processElem.name,
|
|
323
|
+
// icon: processElem.type,
|
|
324
|
+
// noFurther: true,
|
|
325
|
+
// children: [
|
|
326
|
+
// ...processElem.variables.map(genCompletionProperty([process.name, processElem.name])),
|
|
327
|
+
// ...processElem.returns.map(genCompletionProperty([process.name, processElem.name])),
|
|
328
|
+
// ]
|
|
329
|
+
// });
|
|
330
|
+
// scopeVariable.isProcess = true;
|
|
331
|
+
// scopeVariable.icon = processElem.type;
|
|
332
|
+
// processVariables.children.push(scopeVariable);
|
|
333
|
+
// }
|
|
311
334
|
return processVariables;
|
|
312
335
|
}
|
|
313
336
|
|
package/src/server/index.ts
CHANGED
|
@@ -3,7 +3,14 @@ import { getInterfaces } from './getInterfaces';
|
|
|
3
3
|
import { getFunctions, getBuildInFunction } from './getFunctions';
|
|
4
4
|
import { getValidates, getValidateFunction } from './getValidates';
|
|
5
5
|
import { getProcessComponents, getProcessComponent } from './getProcessComponents';
|
|
6
|
-
import {
|
|
6
|
+
import {
|
|
7
|
+
getMemberIdentifier,
|
|
8
|
+
getVariableIdentifier,
|
|
9
|
+
getEnumsIdentifier,
|
|
10
|
+
getGlobalVariableIdentifier,
|
|
11
|
+
getLiteralsIdentifier,
|
|
12
|
+
getSelectNextCompletionData,
|
|
13
|
+
} from './getMemberIdentifier';
|
|
7
14
|
import naslServer from './naslServer';
|
|
8
15
|
|
|
9
16
|
const server: any = {
|
|
@@ -19,5 +26,9 @@ const server: any = {
|
|
|
19
26
|
getValidates,
|
|
20
27
|
getValidateFunction,
|
|
21
28
|
getSelectNextCompletionData,
|
|
29
|
+
getVariableIdentifier,
|
|
30
|
+
getEnumsIdentifier,
|
|
31
|
+
getGlobalVariableIdentifier,
|
|
32
|
+
getLiteralsIdentifier,
|
|
22
33
|
};
|
|
23
34
|
export default server;
|