@lcap/nasl 2.18.0 → 2.20.0-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.
- package/out/automate/engine/index.js +3 -3
- package/out/automate/engine/index.js.map +1 -1
- package/out/bak/translator.js +85 -37
- package/out/bak/translator.js.map +1 -1
- package/out/common/BaseNode.d.ts +6 -10
- package/out/common/BaseNode.js +7 -52
- package/out/common/BaseNode.js.map +1 -1
- package/out/concepts/AnonymousFunction__.js.map +1 -1
- package/out/concepts/App__.d.ts +0 -10
- package/out/concepts/App__.js +0 -74
- package/out/concepts/App__.js.map +1 -1
- package/out/concepts/Assignee__.js.map +1 -1
- package/out/concepts/AssignmentLine__.d.ts +5 -5
- package/out/concepts/AssignmentLine__.js +6 -6
- package/out/concepts/AssignmentLine__.js.map +1 -1
- package/out/concepts/Assignment__.js +2 -1
- package/out/concepts/Assignment__.js.map +1 -1
- package/out/concepts/BatchAssignment__.d.ts +60 -60
- package/out/concepts/BatchAssignment__.js +11 -21
- package/out/concepts/BatchAssignment__.js.map +1 -1
- package/out/concepts/BindAttribute__.d.ts +0 -19
- package/out/concepts/BindAttribute__.js +2 -39
- package/out/concepts/BindAttribute__.js.map +1 -1
- package/out/concepts/BindEvent__.js.map +1 -1
- package/out/concepts/BindStyle__.d.ts +2 -2
- package/out/concepts/BindStyle__.js +3 -3
- package/out/concepts/BindStyle__.js.map +1 -1
- package/out/concepts/BooleanLiteral__.js +8 -0
- package/out/concepts/BooleanLiteral__.js.map +1 -1
- package/out/concepts/CallFunction__.js +25 -58
- package/out/concepts/CallFunction__.js.map +1 -1
- package/out/concepts/CallInterface__.d.ts +0 -7
- package/out/concepts/CallInterface__.js +7 -53
- package/out/concepts/CallInterface__.js.map +1 -1
- package/out/concepts/CallLogic__.js +14 -63
- package/out/concepts/CallLogic__.js.map +1 -1
- package/out/concepts/CallQueryComponent__.js +1 -13
- package/out/concepts/CallQueryComponent__.js.map +1 -1
- package/out/concepts/CompletionProperty__.js +0 -3
- package/out/concepts/CompletionProperty__.js.map +1 -1
- package/out/concepts/ConfigGroup__.js.map +1 -1
- package/out/concepts/ConfigProperty__.js.map +1 -1
- package/out/concepts/Configuration__.js.map +1 -1
- package/out/concepts/DataSource__.d.ts +0 -6
- package/out/concepts/DataSource__.js +0 -41
- package/out/concepts/DataSource__.js.map +1 -1
- package/out/concepts/Destination__.d.ts +1 -9
- package/out/concepts/Destination__.js +29 -61
- package/out/concepts/Destination__.js.map +1 -1
- package/out/concepts/EntityProperty__.d.ts +8 -21
- package/out/concepts/EntityProperty__.js +23 -109
- package/out/concepts/EntityProperty__.js.map +1 -1
- package/out/concepts/Entity__.d.ts +0 -32
- package/out/concepts/Entity__.js +2 -117
- package/out/concepts/Entity__.js.map +1 -1
- package/out/concepts/Enum__.js +4 -0
- package/out/concepts/Enum__.js.map +1 -1
- package/out/concepts/Event__.js.map +1 -1
- package/out/concepts/ForEachStatement__.d.ts +4 -0
- package/out/concepts/ForEachStatement__.js +8 -4
- package/out/concepts/ForEachStatement__.js.map +1 -1
- package/out/concepts/Function__.js.map +1 -1
- package/out/concepts/Identifier__.js +4 -16
- package/out/concepts/Identifier__.js.map +1 -1
- package/out/concepts/IfStatement__.d.ts +0 -8
- package/out/concepts/IfStatement__.js +0 -22
- package/out/concepts/IfStatement__.js.map +1 -1
- package/out/concepts/InterfaceParam__.js.map +1 -1
- package/out/concepts/Interface__.js.map +1 -1
- package/out/concepts/LogicItem__.d.ts +1 -1
- package/out/concepts/LogicItem__.js.map +1 -1
- package/out/concepts/Logic__.d.ts +1 -6
- package/out/concepts/Logic__.js +43 -144
- package/out/concepts/Logic__.js.map +1 -1
- package/out/concepts/MatchCase__.d.ts +1 -1
- package/out/concepts/MatchCase__.js +8 -15
- package/out/concepts/MatchCase__.js.map +1 -1
- package/out/concepts/Match__.d.ts +19 -21
- package/out/concepts/Match__.js +25 -112
- package/out/concepts/Match__.js.map +1 -1
- package/out/concepts/MemberExpression__.d.ts +1 -4
- package/out/concepts/MemberExpression__.js +15 -30
- package/out/concepts/MemberExpression__.js.map +1 -1
- package/out/concepts/Module__.js.map +1 -1
- package/out/concepts/Namespace__.js.map +1 -1
- package/out/concepts/NumericLiteral__.js +1 -1
- package/out/concepts/NumericLiteral__.js.map +1 -1
- package/out/concepts/OqlQueryComponent__.d.ts +3 -7
- package/out/concepts/OqlQueryComponent__.js +95 -56
- package/out/concepts/OqlQueryComponent__.js.map +1 -1
- package/out/concepts/Param__.d.ts +1 -1
- package/out/concepts/Param__.js +4 -40
- package/out/concepts/Param__.js.map +1 -1
- package/out/concepts/ProcessComponent__.js.map +1 -1
- package/out/concepts/ProcessElement__.js.map +1 -1
- package/out/concepts/Process__.js.map +1 -1
- package/out/concepts/QueryJoinExpression__.js.map +1 -1
- package/out/concepts/QueryOrderByExpression__.d.ts +3 -3
- package/out/concepts/QueryOrderByExpression__.js +3 -3
- package/out/concepts/QueryOrderByExpression__.js.map +1 -1
- package/out/concepts/QuerySelectExpression__.js.map +1 -1
- package/out/concepts/Return__.js +2 -38
- package/out/concepts/Return__.js.map +1 -1
- package/out/concepts/SelectMembers__.d.ts +1 -1
- package/out/concepts/SelectMembers__.js +2 -2
- package/out/concepts/SelectMembers__.js.map +1 -1
- package/out/concepts/SqlQueryComponent__.d.ts +4 -2
- package/out/concepts/SqlQueryComponent__.js +88 -9
- package/out/concepts/SqlQueryComponent__.js.map +1 -1
- package/out/concepts/StringLiteral__.js +7 -0
- package/out/concepts/StringLiteral__.js.map +1 -1
- package/out/concepts/StructureProperty__.js.map +1 -1
- package/out/concepts/Structure__.js.map +1 -1
- package/out/concepts/TypeAnnotation__.d.ts +0 -1
- package/out/concepts/TypeAnnotation__.js +12 -25
- package/out/concepts/TypeAnnotation__.js.map +1 -1
- package/out/concepts/TypeParam__.d.ts +0 -1
- package/out/concepts/TypeParam__.js +0 -2
- package/out/concepts/TypeParam__.js.map +1 -1
- package/out/concepts/UnaryExpression__.js +9 -6
- package/out/concepts/UnaryExpression__.js.map +1 -1
- package/out/concepts/ValidationRule__.js +23 -88
- package/out/concepts/ValidationRule__.js.map +1 -1
- package/out/concepts/Variable__.js +2 -38
- package/out/concepts/Variable__.js.map +1 -1
- package/out/concepts/ViewComponent__.js.map +1 -1
- package/out/concepts/ViewElement__.d.ts +29 -30
- package/out/concepts/ViewElement__.js +51 -117
- package/out/concepts/ViewElement__.js.map +1 -1
- package/out/concepts/View__.d.ts +3 -4
- package/out/concepts/View__.js +83 -93
- 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/nasl.browser.js +0 -50
- package/out/concepts/basics/stdlib/nasl.browser.js.map +1 -1
- package/out/concepts/basics/stdlib/nasl.ui.js +4 -36
- package/out/concepts/basics/stdlib/nasl.ui.js.map +1 -1
- package/out/concepts/basics/stdlib/nasl.util.js +43 -63
- package/out/concepts/basics/stdlib/nasl.util.js.map +1 -1
- package/out/concepts/index__.d.ts +0 -2
- package/out/concepts/index__.js +0 -2
- package/out/concepts/index__.js.map +1 -1
- package/out/generator/genBundleFiles.d.ts +2 -5
- package/out/generator/genBundleFiles.js +45 -148
- package/out/generator/genBundleFiles.js.map +1 -1
- package/out/generator/index.d.ts +0 -1
- package/out/generator/index.js +0 -1
- package/out/generator/index.js.map +1 -1
- package/out/index.d.ts +2 -3
- package/out/index.js +1 -5
- package/out/index.js.map +1 -1
- package/out/server/entity2LogicNamespace.js +11 -11
- package/out/server/entity2LogicNamespace.js.map +1 -1
- package/out/server/extendBaseNode.js.map +1 -1
- package/out/server/formatTsUtils.js +17 -10
- package/out/server/formatTsUtils.js.map +1 -1
- package/out/server/getLogics.js +6 -13
- package/out/server/getLogics.js.map +1 -1
- package/out/server/getMemberIdentifier.js +7 -7
- package/out/server/getMemberIdentifier.js.map +1 -1
- package/out/server/getProcesses.d.ts +1 -1
- package/out/server/index.d.ts +1 -0
- package/out/server/index.js +27 -2
- package/out/server/index.js.map +1 -1
- package/out/server/naslServer.d.ts +7 -47
- package/out/server/naslServer.js +393 -591
- package/out/server/naslServer.js.map +1 -1
- package/out/server/naslStdlibMap.js +28 -30
- package/out/server/naslStdlibMap.js.map +1 -1
- package/out/server/translator.js +7 -40
- package/out/server/translator.js.map +1 -1
- package/out/service/storage/init.js +3 -33
- package/out/service/storage/init.js.map +1 -1
- package/out/templator/genCreateBlock.js +4 -6
- package/out/templator/genCreateBlock.js.map +1 -1
- package/out/templator/genCurdEditMultipleKeyBlock.js +4 -7
- package/out/templator/genCurdEditMultipleKeyBlock.js.map +1 -1
- package/out/templator/genCurdMultipleKeyBlock.js +5 -7
- package/out/templator/genCurdMultipleKeyBlock.js.map +1 -1
- package/out/templator/genEnumSelectBlock.js +2 -5
- package/out/templator/genEnumSelectBlock.js.map +1 -1
- package/out/templator/genGridViewBlock.js +2 -2
- package/out/templator/genGridViewBlock.js.map +1 -1
- package/out/templator/genListViewBlock.js +2 -2
- package/out/templator/genListViewBlock.js.map +1 -1
- package/out/templator/genQueryComponent.d.ts +2 -2
- package/out/templator/genQueryComponent.js +1 -4
- package/out/templator/genQueryComponent.js.map +1 -1
- package/out/templator/genTableBlock.js +2 -2
- package/out/templator/genTableBlock.js.map +1 -1
- package/out/templator/genUpdateBlock.js +3 -4
- package/out/templator/genUpdateBlock.js.map +1 -1
- package/out/templator/utils.js +1 -1
- package/out/templator/utils.js.map +1 -1
- package/out/test/integration/node-nasl-server.js +38 -10
- package/out/test/integration/node-nasl-server.js.map +1 -1
- package/out/translator/index.d.ts +0 -1
- package/out/translator/index.js +1 -1
- package/out/translator/index.js.map +1 -1
- package/out/utils/index.d.ts +0 -1
- package/out/utils/index.js +1 -38
- package/out/utils/index.js.map +1 -1
- package/out/utils/string.d.ts +2 -15
- package/out/utils/string.js +3 -18
- package/out/utils/string.js.map +1 -1
- package/package.json +2 -2
- package/sandbox/stdlib/nasl.auth.ts +1 -1
- package/sandbox/stdlib/nasl.core.ts +1 -0
- package/sandbox/stdlib/nasl.logging.ts +4 -4
- package/sandbox/stdlib/nasl.util.ts +9 -5
- package/src/automate/engine/index.js +4 -4
- package/src/automate/engine/uniqueName.js +3 -3
- package/src/automate/template/myProcess.js +1 -1
- package/src/automate/upgrader/2.20.js +41 -0
- package/src/bak/translator.js +4 -1
- package/src/common/BaseNode.ts +1 -0
- package/src/concepts/AnonymousFunction__.ts +48 -2
- package/src/concepts/App__.ts +288 -615
- package/src/concepts/BatchAssignment__.ts +111 -51
- package/src/concepts/BindAttribute__.ts +18 -25
- package/src/concepts/BindDirective__.ts +7 -0
- package/src/concepts/BindEvent__.ts +7 -0
- package/src/concepts/BindStyle__.ts +7 -0
- package/src/concepts/CallFunction__.ts +34 -45
- package/src/concepts/CallInterface__.ts +2 -1
- package/src/concepts/CallLogic__.ts +87 -55
- package/src/concepts/CallQueryComponent__.ts +4 -1
- package/src/concepts/Constant__.ts +7 -0
- package/src/concepts/DataSource__.ts +57 -5
- package/src/concepts/Destination__.ts +100 -43
- package/src/concepts/Frontend__.ts +937 -0
- package/src/concepts/Identifier__.ts +18 -16
- package/src/concepts/LogicItem__.ts +8 -1
- package/src/concepts/Logic__.ts +134 -149
- package/src/concepts/Match__.ts +13 -29
- package/src/concepts/NewComposite__.ts +1357 -0
- package/src/concepts/NewList__.ts +440 -0
- package/src/concepts/NewMap__.ts +666 -0
- package/src/concepts/New__.ts +73 -0
- package/src/concepts/Param__.ts +245 -199
- package/src/concepts/ProcessElement__.ts +43 -36
- package/src/concepts/ProcessOutcomes__.ts +90 -0
- package/src/concepts/Process__.ts +1 -23
- package/src/concepts/Return__.ts +11 -1
- package/src/concepts/SelectMembers__.ts +3 -3
- package/src/concepts/Transactional__.ts +7 -0
- package/src/concepts/TypeAnnotation__.ts +54 -49
- package/src/concepts/ValidationRule__.ts +19 -1
- package/src/concepts/Variable__.ts +12 -6
- package/src/concepts/ViewElement__.ts +26 -3
- package/src/concepts/View__.ts +25 -25
- package/src/concepts/basics/stdlib/nasl.auth.ts +1 -1
- package/src/concepts/basics/stdlib/nasl.logging.ts +5 -0
- package/src/concepts/basics/stdlib/nasl.ui.ts +2 -0
- package/src/concepts/basics/stdlib/nasl.util.ts +153 -19
- package/src/concepts/index__.ts +7 -0
- package/src/enums/KEYWORDS.ts +9 -0
- package/src/generator/genBundleFiles.ts +74 -245
- package/src/generator/genMetaData.ts +178 -78
- package/src/generator/genReleaseBody.ts +87 -44
- package/src/generator/index.ts +1 -0
- package/src/generator/permission.ts +261 -0
- package/src/index.ts +1 -1
- package/src/server/entity2LogicNamespace.ts +90 -10
- package/src/server/extendBaseNode.ts +33 -22
- package/src/server/formatTsUtils.ts +36 -46
- package/src/server/getLogics.ts +13 -1
- package/src/server/getMemberIdentifier.ts +5 -5
- package/src/server/getProcesses.ts +1 -1
- package/src/server/naslServer.ts +254 -71
- package/src/server/process2LogicNamespace.ts +8 -0
- package/src/server/translator.ts +51 -5
- package/src/service/creator/add.configs.js +4 -0
- package/src/service/datasource/api.js +11 -0
- package/src/service/datasource/index.js +6 -0
- package/src/service/storage/init.ts +12 -0
- package/src/service/video/VideoTranscribe.js +1 -0
- package/src/templator/genEditTableBlock.ts +8 -16
- package/src/templator/genGetBlock.ts +18 -19
- package/src/templator/genGridViewBlock.ts +18 -18
- package/src/templator/genListViewBlock.ts +8 -11
- package/src/templator/genTableBlock.ts +6 -10
- package/ts-worker/lib/tsserver.js +8 -1
- package/out/automate/engine/2.14-components.d.ts +0 -1115
- package/out/automate/engine/2.14-components.js +0 -1087
- package/out/automate/engine/2.14-components.js.map +0 -1
- package/out/concepts/ExternalDestination__.d.ts +0 -73
- package/out/concepts/ExternalDestination__.js +0 -264
- package/out/concepts/ExternalDestination__.js.map +0 -1
- package/out/concepts/MatchExpression__.d.ts +0 -97
- package/out/concepts/MatchExpression__.js +0 -281
- package/out/concepts/MatchExpression__.js.map +0 -1
- package/out/concepts/StringInterpolation__.d.ts +0 -113
- package/out/concepts/StringInterpolation__.js +0 -227
- package/out/concepts/StringInterpolation__.js.map +0 -1
- package/out/generator/genReleaseBody.d.ts +0 -41
- package/out/generator/genReleaseBody.js +0 -340
- package/out/generator/genReleaseBody.js.map +0 -1
- package/out/service/defaultErrorMessage.json +0 -97
- package/out/service/logic/api.d.ts +0 -9
- package/out/service/logic/api.js +0 -11
- package/out/service/logic/api.js.map +0 -1
- package/out/service/logic/index.d.ts +0 -2
- package/out/service/logic/index.js +0 -10
- package/out/service/logic/index.js.map +0 -1
- package/src/automate/engine/dist/index.dev.js +0 -517
- package/src/common/dist/BaseNode.js +0 -1101
- package/src/concepts/basics/stdlib/dist/reference2TypeAnnotationList.js +0 -24
- package/src/concepts/dist/Anchor__.js +0 -179
- package/src/concepts/dist/Assignment__.js +0 -301
- package/src/concepts/dist/CallFunction__.js +0 -473
- package/src/concepts/dist/CallInterface__.js +0 -533
- package/src/concepts/dist/CallLogic__.js +0 -864
- package/src/concepts/dist/ForEachStatement__.js +0 -426
- package/src/concepts/dist/MatchCase__.js +0 -587
- package/src/concepts/dist/MemberExpression__.js +0 -348
- package/src/concepts/dist/Param__.js +0 -537
- package/src/concepts/dist/Return__.js +0 -493
- package/src/generator/dist/genBundleFiles.js +0 -414
- package/src/server/dist/formatTsUtils.js +0 -683
- package/src/server/dist/naslServer.js +0 -3396
- package/src/service/storage/dist/init.js +0 -541
- package/ts-worker/dist/webpack.config.dev.js +0 -104
- package/ts-worker/lib/dist/tsserver.dev.js +0 -22953
- package/ts-worker/sources/lib/dist/tsserver.dev.js +0 -22912
package/src/server/translator.ts
CHANGED
|
@@ -47,6 +47,8 @@ import {
|
|
|
47
47
|
AnonymousFunction,
|
|
48
48
|
MatchCase,
|
|
49
49
|
OqlQueryComponent,
|
|
50
|
+
NewMap,
|
|
51
|
+
NewList,
|
|
50
52
|
} from '../concepts';
|
|
51
53
|
import { SourceMapItem } from '../translator';
|
|
52
54
|
import { Diagnostic } from '../manager/diagnostic';
|
|
@@ -86,6 +88,8 @@ function transformType(tsType: string): string {
|
|
|
86
88
|
return '无返回值';
|
|
87
89
|
else if (tsType === '__elements')
|
|
88
90
|
return '页面元素';
|
|
91
|
+
else if (tsType === '__unknown__')
|
|
92
|
+
return '无效';
|
|
89
93
|
else if (tsType === 'extensions')
|
|
90
94
|
return '拓展模块';
|
|
91
95
|
else if (tsType === 'Promise<void>')
|
|
@@ -173,8 +177,13 @@ const TS_RULES: Array<{
|
|
|
173
177
|
}> = [
|
|
174
178
|
{
|
|
175
179
|
re: /Object literal may only specify known properties, and '(.+?)' does not exist in type/,
|
|
176
|
-
result: '当前参数$1
|
|
177
|
-
transforms: [
|
|
180
|
+
result: '当前参数$1,不可用。',
|
|
181
|
+
transforms: [transformType],
|
|
182
|
+
},
|
|
183
|
+
{
|
|
184
|
+
re: /Object literal may only specify known properties, but '(.+?)' does not exist in type/,
|
|
185
|
+
result: '当前参数$1,不可用。',
|
|
186
|
+
transforms: [transformType],
|
|
178
187
|
},
|
|
179
188
|
{
|
|
180
189
|
re: /Argument of type '(.+?)' is not assignable to parameter of type '(.+?)'/,
|
|
@@ -227,6 +236,10 @@ const TS_RULES: Array<{
|
|
|
227
236
|
re: /Cannot find name '__(?:IDENTIFIER|LEFT|RIGHT)__'/,
|
|
228
237
|
result: '表达式不能为空。',
|
|
229
238
|
},
|
|
239
|
+
{
|
|
240
|
+
re: /Cannot find name '__(?:FRONTENDVARIABLES)__'/,
|
|
241
|
+
result: '前端全局变量:不可在非页面下使用。',
|
|
242
|
+
},
|
|
230
243
|
{
|
|
231
244
|
re: /Cannot find name '__(?:QueryFieldExpression)__'/,
|
|
232
245
|
result: '数据查询:实体属性不能为空。',
|
|
@@ -362,6 +375,11 @@ const TS_RULES: Array<{
|
|
|
362
375
|
re: /'__destinationEmpty__' is declared but its value is never read./,
|
|
363
376
|
result: '任务未关联页面',
|
|
364
377
|
},
|
|
378
|
+
{
|
|
379
|
+
re: /Variable '(.+?)' implicitly has an 'any' type./,
|
|
380
|
+
result: '$1推断不出类型!请连线或手动设置',
|
|
381
|
+
transforms: [transformType],
|
|
382
|
+
},
|
|
365
383
|
];
|
|
366
384
|
|
|
367
385
|
const POST_RULES: Array<{
|
|
@@ -473,11 +491,13 @@ export function naslNodeTranslateMessage(minRange: MinRange, tsErrorDetail: Diag
|
|
|
473
491
|
}
|
|
474
492
|
}
|
|
475
493
|
|
|
476
|
-
if (node instanceof ProcessElement && (
|
|
494
|
+
if (node instanceof ProcessElement && (['ExclusiveGateway', 'ParallelGateway', 'InclusiveGateway'].includes(node.type))) {
|
|
477
495
|
const reg = /Expected (.+?) arguments, but got (.+?)./.exec(text);
|
|
478
496
|
let u = '排他网关';
|
|
479
497
|
if (node.type === 'ParallelGateway') {
|
|
480
498
|
u = '并行网关';
|
|
499
|
+
} else if (node.type === 'InclusiveGateway') {
|
|
500
|
+
u = '包容网关';
|
|
481
501
|
}
|
|
482
502
|
if (reg[2] === '0') {
|
|
483
503
|
tsErrorDetail.message = `${u}出口顺序流和入口顺序流个数不能等于0`;
|
|
@@ -494,8 +514,15 @@ export function naslNodeTranslateMessage(minRange: MinRange, tsErrorDetail: Diag
|
|
|
494
514
|
}
|
|
495
515
|
// 赋值左右侧类型不一致, 把文字换一下
|
|
496
516
|
if (/Argument of type '(.+?)' is not assignable to parameter of type '(.+?)'/.exec(text) && node.parentNode instanceof Assignment) {
|
|
497
|
-
//
|
|
498
|
-
|
|
517
|
+
// OQL 的返回类型报错需要转换翻译,其内部 SQL 语句的参数类型报错不转换翻译
|
|
518
|
+
if (node instanceof OqlQueryComponent) {
|
|
519
|
+
if ((node.getCurrentSource().currentSource.range.start.line + 1) === tsErrorDetail.originalDiagnostic.start.line) {
|
|
520
|
+
tsErrorDetail.message = tsErrorDetail.message.replace('参数类型不一致!传入类型:', '赋值:类型不一致!右边类型:').replace('接收类型:', '左边类型:');
|
|
521
|
+
}
|
|
522
|
+
} else {
|
|
523
|
+
// node = node.getAncestor('CallLogic');
|
|
524
|
+
tsErrorDetail.message = tsErrorDetail.message.replace('参数类型不一致!传入类型:', '赋值:类型不一致!右边类型:').replace('接收类型:', '左边类型:');
|
|
525
|
+
}
|
|
499
526
|
}
|
|
500
527
|
if (node instanceof Argument || node instanceof Anchor) {
|
|
501
528
|
// if (/Type '(.+?)' is not assignable to type '(.+?)'./.exec(text)) {
|
|
@@ -596,6 +623,14 @@ export function naslNodeTranslateMessage(minRange: MinRange, tsErrorDetail: Diag
|
|
|
596
623
|
tsErrorDetail.message = identifierToString(node);
|
|
597
624
|
}
|
|
598
625
|
}
|
|
626
|
+
|
|
627
|
+
if (/'__UpdateNoProperty__' is declared but its value is never read./.exec(text)) {
|
|
628
|
+
tsErrorDetail.message = '局部更新:未选择任何属性';
|
|
629
|
+
const callLogic = node.parentNode.parentNode.parentNode as CallLogic;
|
|
630
|
+
const bodyArgument = callLogic.arguments.find(item => item.keyword === 'body');
|
|
631
|
+
node = bodyArgument.expression;
|
|
632
|
+
}
|
|
633
|
+
|
|
599
634
|
// 左右类型不一致的,把上级信息带上
|
|
600
635
|
if (/^Type '(.+?)' is not assignable to type '(.+?)'\./.exec(text) || /^This condition will always return '(.+?)' since the types '(.+?)' and '(.+?)' have no overlap./.exec(text)) {
|
|
601
636
|
let str = tsErrorDetail.message;
|
|
@@ -607,6 +642,8 @@ export function naslNodeTranslateMessage(minRange: MinRange, tsErrorDetail: Diag
|
|
|
607
642
|
tsErrorDetail.message = tsErrorDetail.message.replace('左右参数', '返回值')
|
|
608
643
|
.replace('左边类型', '接收类型')
|
|
609
644
|
.replace('右边类型', '传入类型');
|
|
645
|
+
} else if (text === `Type 'void' is not assignable to type 'never'.`) {
|
|
646
|
+
tsErrorDetail.message = `${node.name}推断不出类型!请连线或手动设置`;
|
|
610
647
|
}
|
|
611
648
|
}
|
|
612
649
|
// 参数类型不一致!
|
|
@@ -636,6 +673,15 @@ export function naslNodeTranslateMessage(minRange: MinRange, tsErrorDetail: Diag
|
|
|
636
673
|
node.isSmpty = true;
|
|
637
674
|
}
|
|
638
675
|
}
|
|
676
|
+
if (/Variable '(.+?)' implicitly has an 'any' type./.exec(text)) {
|
|
677
|
+
if (node.parentNode instanceof NewMap || node.parentNode instanceof NewList)
|
|
678
|
+
return;
|
|
679
|
+
// if (node.parentNode instanceof NewMap) {
|
|
680
|
+
// tsErrorDetail.message = 'newMap未设置类型,右侧属性' + tsErrorDetail.message.split('请连线或手动设置')[0];
|
|
681
|
+
// } else if (node.parentNode instanceof NewList) {
|
|
682
|
+
// tsErrorDetail.message = 'newList未设置类型,属性' + tsErrorDetail.message.split('请连线或手动设置')[0];
|
|
683
|
+
// }
|
|
684
|
+
}
|
|
639
685
|
for (const rule of POST_RULES) {
|
|
640
686
|
if (rule.re.test(tsErrorDetail.message))
|
|
641
687
|
tsErrorDetail.message = tsErrorDetail.message.replace(rule.re, rule.result);
|
|
@@ -9,6 +9,10 @@ function httpCode(response, params, requestInfo) {
|
|
|
9
9
|
if ((data.code === undefined) || (data.code + '').startsWith('2')) {
|
|
10
10
|
return response;
|
|
11
11
|
}
|
|
12
|
+
if (data.code === 401339 && data.msg === '租户已过期或禁用') {
|
|
13
|
+
location.href = '/dashboard/exception/tenantExpired';
|
|
14
|
+
return
|
|
15
|
+
}
|
|
12
16
|
if (typeof window !== 'undefined' && new RegExp('^/designer').test(window.location.pathname)) {
|
|
13
17
|
if (data.code === 401) {
|
|
14
18
|
window.location.href = '/login';
|
|
@@ -436,6 +436,18 @@ export async function loadApp(appId?: string) {
|
|
|
436
436
|
},
|
|
437
437
|
});
|
|
438
438
|
// const data = res?.data?.result;
|
|
439
|
+
// // mock数据,需要删除
|
|
440
|
+
// data[0].frontends = [];
|
|
441
|
+
// data?.[0].frontends.push({
|
|
442
|
+
// id: '111',
|
|
443
|
+
// concept: 'Frontend',
|
|
444
|
+
// name: 'pcFrontend1',
|
|
445
|
+
// title: 'pc端',
|
|
446
|
+
// type: 'pc',
|
|
447
|
+
// views: data?.[0].views,
|
|
448
|
+
// variables: data?.[0].frontendVariables,
|
|
449
|
+
// componentDependencies: data?.[0].componentDependencies,
|
|
450
|
+
// });
|
|
439
451
|
app = new App(Object.assign(data?.[0], { id: appId }));
|
|
440
452
|
} else if (config.storage.protocol === 'mock') {
|
|
441
453
|
app = new App({
|
|
@@ -1,14 +1,10 @@
|
|
|
1
1
|
import * as utils from '../utils';
|
|
2
|
-
import {
|
|
2
|
+
import { Entity, EntityProperty, DataSource } from '../concepts';
|
|
3
3
|
import {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
genMemberExpression, genLogicParam,
|
|
4
|
+
filterProperty, NameGroup, getFirstDisplayedProperty, getParamFromLogic,
|
|
5
|
+
genCallComponentLogic, genMemberExpression, genLogicParam,
|
|
7
6
|
} from '.';
|
|
8
|
-
import {
|
|
9
|
-
NaslCoreTypeAnnotation, NaslUITypeAnnotation, NaslCollectionTypeAnnotation,
|
|
10
|
-
NaslTypeAnnotation, NaslLogicItem, NaslNode,
|
|
11
|
-
} from './utils';
|
|
7
|
+
import { NaslUITypeAnnotation, NaslLogicItem, NaslNode } from './utils';
|
|
12
8
|
|
|
13
9
|
/**
|
|
14
10
|
* 根据实体属性生成表格列模板
|
|
@@ -19,20 +15,16 @@ export function genEditTableColumnTemplate(entity: Entity, property: EntityPrope
|
|
|
19
15
|
const lowerEntityName = utils.firstLowerCase(entity.name);
|
|
20
16
|
const valueExpression = `current.item.${lowerEntityName}.${property.name}`;
|
|
21
17
|
const title = property.label || property.name;
|
|
22
|
-
|
|
23
|
-
const expression = getExpression(property, `current.item.${lowerEntityName}.${property.name}`);
|
|
24
|
-
|
|
25
18
|
const canEditable = (property: EntityProperty) => !property.readonly;
|
|
26
|
-
|
|
27
19
|
const getText = (property: EntityProperty) => {
|
|
28
20
|
const propertyTypeName = property.typeAnnotation.typeName;
|
|
29
21
|
if (propertyTypeName === 'Boolean') {
|
|
30
22
|
return `
|
|
31
|
-
<u-text v-if="${
|
|
32
|
-
<u-text v-if="!${
|
|
23
|
+
<u-text v-if="${valueExpression}" text="是"></u-text>
|
|
24
|
+
<u-text v-if="!${valueExpression}" text="否"></u-text>
|
|
33
25
|
`;
|
|
34
26
|
} else {
|
|
35
|
-
return `<u-text :text="${
|
|
27
|
+
return `<u-text :text="${valueExpression}"></u-text>`;
|
|
36
28
|
}
|
|
37
29
|
};
|
|
38
30
|
|
|
@@ -120,7 +112,7 @@ export function genEditTableTemplate(entity: Entity, nameGroup: NameGroup, selec
|
|
|
120
112
|
return `<u-table-view ref="${nameGroup.viewElementMainView}" :data-source="${nameGroup.viewLogicLoad}" data-schema="${nameGroup.structure}"
|
|
121
113
|
value-field="${nameGroup.viewVariableEntity}.id"
|
|
122
114
|
:pageable="true" :remote-paging="true" :show-sizer="true" :default-column-width="300" editable>
|
|
123
|
-
<u-table-view-column type="index" width="60"><template #title><u-text text="序号"></u-text></template></u-table-view-column>
|
|
115
|
+
<u-table-view-column type="index" width="60"><template #title><u-text text="序号"></u-text></template><template #cell="current"></template></u-table-view-column>
|
|
124
116
|
|
|
125
117
|
${properties.map((property) => genEditTableColumnTemplate(entity, property, nameGroup, selectNameGroupMap) + '\n').join('')}
|
|
126
118
|
|
|
@@ -2,7 +2,7 @@ import { config } from '../config';
|
|
|
2
2
|
import * as utils from '../utils';
|
|
3
3
|
import { Entity, Logic, View, ViewElement } from '../concepts';
|
|
4
4
|
import { NaslCoreTypeAnnotation, NaslTypeAnnotation, NaslLogicItem, NaslNode } from './utils';
|
|
5
|
-
import { NameGroup, filterProperty,
|
|
5
|
+
import { NameGroup, filterProperty, genLogicParam } from '.';
|
|
6
6
|
|
|
7
7
|
export function genGetTemplate(entity: Entity, nameGroup: NameGroup) {
|
|
8
8
|
const properties = entity.properties.filter(filterProperty('inDetail'));
|
|
@@ -11,15 +11,14 @@ export function genGetTemplate(entity: Entity, nameGroup: NameGroup) {
|
|
|
11
11
|
<u-info-list-group>
|
|
12
12
|
<template #title><u-text text="基本信息"></u-text></template>
|
|
13
13
|
${properties
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
.join('')}
|
|
14
|
+
.map((property) => {
|
|
15
|
+
const valueExpression = `${nameGroup.viewVariableEntity}.${property.name}`;
|
|
16
|
+
let formItem = ` <u-info-list-item><template #label><u-text text="${property.label || property.name}"></u-text></template>`;
|
|
17
|
+
formItem += `<u-text :text="'${valueExpression}'"></u-text>`;
|
|
18
|
+
formItem += ` </u-info-list-item>\n`;
|
|
19
|
+
return formItem;
|
|
20
|
+
})
|
|
21
|
+
.join('')}
|
|
23
22
|
</u-info-list-group>
|
|
24
23
|
</u-info-list>`;
|
|
25
24
|
}
|
|
@@ -55,16 +54,16 @@ export function genH5GetTemplate(entity: Entity, nameGroup: NameGroup) {
|
|
|
55
54
|
|
|
56
55
|
return `<van-cell-group>
|
|
57
56
|
${properties
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
57
|
+
.map((property) => {
|
|
58
|
+
const temptitle = property.label || property.name;
|
|
59
|
+
let formItem = ` <van-cell isLink`;
|
|
61
60
|
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
61
|
+
formItem += ' :value="' + `${nameGroup.viewVariableEntity}.${property.name}` + '">';
|
|
62
|
+
formItem += `<template #title>${temptitle}</template>`;
|
|
63
|
+
formItem += `<template>{{ ${`${nameGroup.viewVariableEntity}.${property.name}`} }}</template> </van-cell>\n`;
|
|
64
|
+
return formItem;
|
|
65
|
+
})
|
|
66
|
+
.join('')}
|
|
68
67
|
</van-cell-group>`;
|
|
69
68
|
}
|
|
70
69
|
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { config } from '../config';
|
|
2
2
|
import * as utils from '../utils';
|
|
3
|
-
import { App, Module, Namespace, Entity, EntityProperty,
|
|
3
|
+
import { App, Module, Namespace, Entity, EntityProperty, DataSource, ViewElement } from '../concepts';
|
|
4
4
|
import {
|
|
5
|
-
getExpression,
|
|
6
5
|
filterProperty,
|
|
7
6
|
NameGroup,
|
|
8
7
|
genUniqueQueryNameGroup,
|
|
@@ -12,7 +11,7 @@ import {
|
|
|
12
11
|
genCallComponentLogic,
|
|
13
12
|
genQueryLogic,
|
|
14
13
|
} from '.';
|
|
15
|
-
import {
|
|
14
|
+
import { NaslUITypeAnnotation, NaslLogicItem, NaslNode } from './utils';
|
|
16
15
|
|
|
17
16
|
/**
|
|
18
17
|
* 根据实体属性生成表格列模板
|
|
@@ -23,7 +22,7 @@ export function genGridViewCardTemplate(property: EntityProperty, nameGroup: Nam
|
|
|
23
22
|
const dataSource = entity.parentNode as DataSource;
|
|
24
23
|
const lowerEntityName = utils.firstLowerCase(entity.name);
|
|
25
24
|
const currentName = nameGroup.currentName || 'current';
|
|
26
|
-
let
|
|
25
|
+
let valueExpression = `${currentName}.item.${lowerEntityName}.${property.name}`;
|
|
27
26
|
const title = property.label || property.name;
|
|
28
27
|
|
|
29
28
|
if (property.relationEntity) {
|
|
@@ -33,23 +32,24 @@ export function genGridViewCardTemplate(property: EntityProperty, nameGroup: Nam
|
|
|
33
32
|
const displayedProperty = getFirstDisplayedProperty(relationEntity);
|
|
34
33
|
if (displayedProperty) {
|
|
35
34
|
const relationLowerEntityName = utils.firstLowerCase(relationEntity.name);
|
|
36
|
-
|
|
35
|
+
valueExpression = `${currentName}.item.${relationLowerEntityName}.${displayedProperty.name}`;
|
|
37
36
|
} else
|
|
38
37
|
return '';
|
|
39
38
|
} else
|
|
40
39
|
return '';
|
|
41
|
-
} else
|
|
42
|
-
|
|
40
|
+
} else {
|
|
41
|
+
valueExpression = `${currentName}.item.${lowerEntityName}.${property.name}`;
|
|
43
42
|
|
|
43
|
+
}
|
|
44
44
|
const getText = (property: EntityProperty) => {
|
|
45
45
|
const propertyTypeName = property.typeAnnotation.typeName;
|
|
46
46
|
if (propertyTypeName === 'Boolean') {
|
|
47
47
|
return `
|
|
48
|
-
<u-text v-if="${
|
|
49
|
-
<u-text v-if="!${
|
|
48
|
+
<u-text v-if="${valueExpression}" text="是"></u-text>
|
|
49
|
+
<u-text v-if="!${valueExpression}" text="否"></u-text>
|
|
50
50
|
`;
|
|
51
51
|
} else {
|
|
52
|
-
return `<u-text :text="${
|
|
52
|
+
return `<u-text :text="${valueExpression}"></u-text>`;
|
|
53
53
|
}
|
|
54
54
|
};
|
|
55
55
|
|
|
@@ -64,7 +64,7 @@ export function genH5GridViewCardTemplate(property: EntityProperty, nameGroup?:
|
|
|
64
64
|
const lowerEntityName = utils.firstLowerCase(entity.name);
|
|
65
65
|
|
|
66
66
|
const currentName = nameGroup.currentName || 'current';
|
|
67
|
-
let
|
|
67
|
+
let valueExpression = `${currentName}.item.${lowerEntityName}.${property.name}`;
|
|
68
68
|
|
|
69
69
|
if (property.relationEntity) {
|
|
70
70
|
// 有外键关联
|
|
@@ -73,23 +73,23 @@ export function genH5GridViewCardTemplate(property: EntityProperty, nameGroup?:
|
|
|
73
73
|
const displayedProperty = getFirstDisplayedProperty(relationEntity);
|
|
74
74
|
if (displayedProperty) {
|
|
75
75
|
const relationLowerEntityName = utils.firstLowerCase(relationEntity.name);
|
|
76
|
-
|
|
76
|
+
valueExpression = `${currentName}.item.${relationLowerEntityName}.${displayedProperty.name}`;
|
|
77
77
|
} else
|
|
78
78
|
return '';
|
|
79
79
|
} else
|
|
80
80
|
return '';
|
|
81
|
-
} else
|
|
82
|
-
|
|
83
|
-
|
|
81
|
+
} else {
|
|
82
|
+
valueExpression = `${currentName}.item.${lowerEntityName}.${property.name}`;
|
|
83
|
+
}
|
|
84
84
|
const getText = (property: EntityProperty) => {
|
|
85
85
|
const propertyTypeName = property.typeAnnotation.typeName;
|
|
86
86
|
if (propertyTypeName === 'Boolean') {
|
|
87
87
|
return `
|
|
88
|
-
<van-text v-if="${
|
|
89
|
-
<van-text v-if="!${
|
|
88
|
+
<van-text v-if="${valueExpression}" text="是" display="block"></van-text>
|
|
89
|
+
<van-text v-if="!${valueExpression}" text="否" display="block"></van-text>
|
|
90
90
|
`;
|
|
91
91
|
} else {
|
|
92
|
-
return `<van-text :text="${
|
|
92
|
+
return `<van-text :text="${valueExpression}" display="block"></van-text>`;
|
|
93
93
|
}
|
|
94
94
|
};
|
|
95
95
|
return `${getText(property)}`;
|
|
@@ -1,24 +1,22 @@
|
|
|
1
1
|
import { config } from '../config';
|
|
2
2
|
import * as utils from '../utils';
|
|
3
|
-
import { App, Module, Namespace, Entity, EntityProperty,
|
|
4
|
-
import {
|
|
3
|
+
import { App, Module, Namespace, Entity, EntityProperty, DataSource, ViewElement } from '../concepts';
|
|
4
|
+
import { genUniqueQueryNameGroup, getFirstDisplayedProperty, genQueryLogic, genLogicParam } from '.';
|
|
5
5
|
import {
|
|
6
|
-
NameGroup, NaslUITypeAnnotation,
|
|
7
|
-
NaslTypeAnnotation, NaslLogicItem, NaslNode,
|
|
6
|
+
NameGroup, NaslUITypeAnnotation, NaslLogicItem, NaslNode,
|
|
8
7
|
} from './utils';
|
|
9
8
|
|
|
10
9
|
export function genListViewTemplate(property: EntityProperty, nameGroup: NameGroup) {
|
|
11
10
|
const entity = property.entity;
|
|
12
11
|
const lowerEntityName = utils.firstLowerCase(entity.name);
|
|
13
12
|
const currentName = nameGroup.currentName || 'current';
|
|
14
|
-
|
|
15
|
-
const expression = getExpression(property, `${currentName}.item.${lowerEntityName}.${property.name}`);
|
|
13
|
+
const valueExpression = `${currentName}.item.${lowerEntityName}.${property.name}`;
|
|
16
14
|
return `<u-list-view ref="${nameGroup.viewElementMainView}" :data-source="${nameGroup.viewLogicLoad}" data-schema="${nameGroup.structure}"
|
|
17
15
|
text-field="${nameGroup.viewVariableEntity}.${property.name}"
|
|
18
16
|
value-field="${nameGroup.viewVariableEntity}.id" :pageable="true" :remote-paging="true">
|
|
19
17
|
<template #item="current">
|
|
20
18
|
<u-linear-layout>
|
|
21
|
-
<u-text :text="${
|
|
19
|
+
<u-text :text="${valueExpression}"></u-text>
|
|
22
20
|
</u-linear-layout>
|
|
23
21
|
</template>
|
|
24
22
|
</u-list-view>`;
|
|
@@ -28,14 +26,13 @@ export function genH5ListViewTemplate(property: EntityProperty, nameGroup: NameG
|
|
|
28
26
|
const entity = property.entity;
|
|
29
27
|
const lowerEntityName = utils.firstLowerCase(entity.name);
|
|
30
28
|
const currentName = nameGroup.currentName || 'current';
|
|
31
|
-
|
|
32
|
-
const expression = getExpression(property, `${currentName}.item.${lowerEntityName}.${property.name}`);
|
|
29
|
+
const valueExpression = `${currentName}.item.${lowerEntityName}.${property.name}`;
|
|
33
30
|
return `<van-list-view ref="${nameGroup.viewElementMainView}" :data-source="${nameGroup.viewLogicLoad}" data-schema="${nameGroup.structure}"
|
|
34
31
|
text-field="${nameGroup.viewVariableEntity}.${property.name}"
|
|
35
32
|
value-field="${nameGroup.viewVariableEntity}.id" pageable="auto-more" :remote-paging="true">
|
|
36
33
|
<template #item="current">
|
|
37
|
-
<van-cell :value="${
|
|
38
|
-
<template #title>{{ ${
|
|
34
|
+
<van-cell :value="${valueExpression}" isLink>
|
|
35
|
+
<template #title>{{ ${valueExpression} }}</template>
|
|
39
36
|
</van-cell>
|
|
40
37
|
</template>
|
|
41
38
|
</van-list-view>`;
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import * as utils from '../utils';
|
|
2
2
|
import { App, Module, Namespace, Entity, EntityProperty, View, DataSource, ViewElement } from '../concepts';
|
|
3
3
|
import {
|
|
4
|
-
getExpression,
|
|
5
4
|
filterProperty,
|
|
6
5
|
NameGroup,
|
|
7
6
|
genUniqueQueryNameGroup,
|
|
@@ -22,27 +21,24 @@ export function genTableColumnTemplate(property: EntityProperty, currentName: st
|
|
|
22
21
|
|
|
23
22
|
const dataSource = entity.parentNode as DataSource;
|
|
24
23
|
const lowerEntityName = utils.firstLowerCase(entity.name);
|
|
25
|
-
let
|
|
24
|
+
let valueExpression = `${currentName}.item.${lowerEntityName}.${property.name}`;
|
|
26
25
|
const title = property.label || property.name;
|
|
27
26
|
|
|
28
27
|
if (property.relationEntity) {
|
|
29
28
|
const relationLowerEntityName = utils.firstLowerCase(property.relationEntity);
|
|
30
29
|
const relationEntity = dataSource?.findEntityByName(property.relationEntity);
|
|
31
30
|
const displayedProperty = getFirstDisplayedProperty(relationEntity);
|
|
32
|
-
|
|
33
|
-
expression = getExpression(property, `${currentName}.item.${relationLowerEntityName}.${displayedProperty?.name || property.relationProperty}`);
|
|
34
|
-
} else {
|
|
35
|
-
expression = getExpression(property, `${currentName}.item.${lowerEntityName}.${property.name}`);
|
|
31
|
+
valueExpression = `${currentName}.item.${relationLowerEntityName}.${displayedProperty?.name || property.relationProperty}`;
|
|
36
32
|
}
|
|
37
33
|
|
|
38
34
|
const getText = (property: EntityProperty) => {
|
|
39
35
|
if (property.typeAnnotation.typeName === 'Boolean') {
|
|
40
36
|
return `
|
|
41
|
-
<u-text v-if="${
|
|
42
|
-
<u-text v-if="!${
|
|
37
|
+
<u-text v-if="${valueExpression}" text="是"></u-text>
|
|
38
|
+
<u-text v-if="!${valueExpression}" text="否"></u-text>
|
|
43
39
|
`;
|
|
44
40
|
} else {
|
|
45
|
-
return `<u-text :text="${
|
|
41
|
+
return `<u-text :text="${valueExpression}"></u-text>`;
|
|
46
42
|
}
|
|
47
43
|
};
|
|
48
44
|
|
|
@@ -68,7 +64,7 @@ export function genTableTemplate(entity: Entity, nameGroup: NameGroup, modifyabl
|
|
|
68
64
|
return `<u-table-view ref="${nameGroup.viewElementMainView}" :data-source="${nameGroup.viewLogicLoad}" data-schema="${nameGroup.structure}"
|
|
69
65
|
value-field="${nameGroup.viewVariableEntity}.id"
|
|
70
66
|
:pageable="true" :remote-paging="true" :show-sizer="true">
|
|
71
|
-
<u-table-view-column type="index" width="60"><template #title><u-text text="序号"></u-text></template></u-table-view-column>
|
|
67
|
+
<u-table-view-column type="index" width="60"><template #title><u-text text="序号"></u-text></template><template #cell="current"></template></u-table-view-column>
|
|
72
68
|
|
|
73
69
|
${properties.map((property) => genTableColumnTemplate(property, currentName) + '\n').join('')}
|
|
74
70
|
|
|
@@ -176736,7 +176736,7 @@ var ts;
|
|
|
176736
176736
|
|
|
176737
176737
|
function analyzeTypeNode(typeNode) {
|
|
176738
176738
|
const typeInfo = {};
|
|
176739
|
-
const { typeName, typeArguments, members } = typeNode || {};
|
|
176739
|
+
const { typeName, typeArguments, members, types } = typeNode || {};
|
|
176740
176740
|
if (typeName) {
|
|
176741
176741
|
const { left, right } = typeName || {};
|
|
176742
176742
|
if (right) {
|
|
@@ -176745,6 +176745,8 @@ var ts;
|
|
|
176745
176745
|
if (left) {
|
|
176746
176746
|
typeInfo.typeNamespace = analyzeTypeNameSpace(left);
|
|
176747
176747
|
}
|
|
176748
|
+
} else if(Array.isArray(types)) {
|
|
176749
|
+
typeInfo.typeName = 'Union';
|
|
176748
176750
|
} else {
|
|
176749
176751
|
typeInfo.typeKind = 'anonymousStructure';
|
|
176750
176752
|
}
|
|
@@ -176753,6 +176755,11 @@ var ts;
|
|
|
176753
176755
|
return analyzeTypeNode(typeArg);
|
|
176754
176756
|
});
|
|
176755
176757
|
}
|
|
176758
|
+
if (Array.isArray(types)) {
|
|
176759
|
+
typeInfo.typeArguments = types.map((typeArg) => {
|
|
176760
|
+
return analyzeTypeNode(typeArg);
|
|
176761
|
+
});
|
|
176762
|
+
}
|
|
176756
176763
|
if (Array.isArray(members)) {
|
|
176757
176764
|
const properties = members.map((member) => {
|
|
176758
176765
|
const { name, type } = member || {};
|