@lcap/nasl 2.18.0 → 2.19.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/template/myProcess.js +1 -1
- package/out/automate/template/myProcess.js.map +1 -1
- package/out/bak/translator.js +2 -1
- package/out/bak/translator.js.map +1 -1
- package/out/common/BaseNode.js +1 -0
- package/out/common/BaseNode.js.map +1 -1
- package/out/common/Command.d.ts +1 -0
- package/out/common/Command.js +5 -1
- package/out/common/Command.js.map +1 -1
- package/out/concepts/AnonymousFunction__.d.ts +1 -0
- package/out/concepts/AnonymousFunction__.js +40 -2
- package/out/concepts/AnonymousFunction__.js.map +1 -1
- package/out/concepts/App__.d.ts +10 -0
- package/out/concepts/App__.js +132 -0
- package/out/concepts/App__.js.map +1 -1
- package/out/concepts/Assignee__.js +4 -3
- package/out/concepts/Assignee__.js.map +1 -1
- package/out/concepts/BatchAssignment__.d.ts +2 -0
- package/out/concepts/BatchAssignment__.js +108 -47
- package/out/concepts/BatchAssignment__.js.map +1 -1
- package/out/concepts/BindAttribute__.js +8 -1
- package/out/concepts/BindAttribute__.js.map +1 -1
- package/out/concepts/CallFunction__.js +51 -18
- package/out/concepts/CallFunction__.js.map +1 -1
- package/out/concepts/CallInterface__.js +6 -4
- package/out/concepts/CallInterface__.js.map +1 -1
- package/out/concepts/CallLogic__.d.ts +2 -1
- package/out/concepts/CallLogic__.js +113 -26
- package/out/concepts/CallLogic__.js.map +1 -1
- package/out/concepts/CallQueryComponent__.js +4 -1
- package/out/concepts/CallQueryComponent__.js.map +1 -1
- package/out/concepts/DataSource__.d.ts +2 -0
- package/out/concepts/DataSource__.js +55 -1
- package/out/concepts/DataSource__.js.map +1 -1
- package/out/concepts/Destination__.d.ts +2 -1
- package/out/concepts/Destination__.js +90 -22
- package/out/concepts/Destination__.js.map +1 -1
- package/out/concepts/ForEachStatement__.js +2 -0
- package/out/concepts/ForEachStatement__.js.map +1 -1
- package/out/concepts/Identifier__.d.ts +1 -0
- package/out/concepts/Identifier__.js +18 -7
- package/out/concepts/Identifier__.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 -0
- package/out/concepts/Logic__.js +33 -21
- package/out/concepts/Logic__.js.map +1 -1
- package/out/concepts/Match__.js +13 -8
- package/out/concepts/Match__.js.map +1 -1
- package/out/concepts/NewComposite__.d.ts +345 -0
- package/out/concepts/NewComposite__.js +1067 -0
- package/out/concepts/NewComposite__.js.map +1 -0
- package/out/concepts/NewList__.d.ts +130 -0
- package/out/concepts/NewList__.js +353 -0
- package/out/concepts/NewList__.js.map +1 -0
- package/out/concepts/NewMap__.d.ts +221 -0
- package/out/concepts/NewMap__.js +492 -0
- package/out/concepts/NewMap__.js.map +1 -0
- package/out/concepts/New__.d.ts +19 -0
- package/out/concepts/New__.js +66 -0
- package/out/concepts/New__.js.map +1 -0
- package/out/concepts/Param__.d.ts +2 -0
- package/out/concepts/Param__.js +40 -3
- package/out/concepts/Param__.js.map +1 -1
- package/out/concepts/ProcessElement__.js +31 -10
- 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/ProcessOutcomes__.d.ts +30 -0
- package/out/concepts/{ConstructArgument__.js → ProcessOutcomes__.js} +27 -48
- package/out/concepts/ProcessOutcomes__.js.map +1 -0
- package/out/concepts/Return__.js +2 -1
- package/out/concepts/Return__.js.map +1 -1
- package/out/concepts/SelectMembers__.js +3 -3
- package/out/concepts/SelectMembers__.js.map +1 -1
- package/out/concepts/StringInterpolation__.js +12 -2
- package/out/concepts/StringInterpolation__.js.map +1 -1
- package/out/concepts/TypeAnnotation__.d.ts +4 -0
- package/out/concepts/TypeAnnotation__.js +66 -12
- package/out/concepts/TypeAnnotation__.js.map +1 -1
- package/out/concepts/ValidationRule__.js +1 -1
- package/out/concepts/ValidationRule__.js.map +1 -1
- package/out/concepts/Variable__.js +2 -1
- package/out/concepts/Variable__.js.map +1 -1
- package/out/concepts/ViewElement__.js +13 -1
- package/out/concepts/ViewElement__.js.map +1 -1
- package/out/concepts/View__.d.ts +1 -0
- package/out/concepts/View__.js +13 -0
- package/out/concepts/View__.js.map +1 -1
- package/out/concepts/basics/stdlib/nasl.auth.js +1 -1
- package/out/concepts/basics/stdlib/nasl.auth.js.map +1 -1
- package/out/concepts/basics/stdlib/nasl.logging.js +5 -0
- package/out/concepts/basics/stdlib/nasl.logging.js.map +1 -1
- package/out/concepts/basics/stdlib/nasl.ui.js +2 -0
- package/out/concepts/basics/stdlib/nasl.ui.js.map +1 -1
- package/out/concepts/basics/stdlib/nasl.util.js +151 -19
- package/out/concepts/basics/stdlib/nasl.util.js.map +1 -1
- package/out/concepts/index__.d.ts +5 -0
- package/out/concepts/index__.js +5 -0
- package/out/concepts/index__.js.map +1 -1
- package/out/enums/KEYWORDS.js +1 -0
- package/out/enums/KEYWORDS.js.map +1 -1
- package/out/generator/genBundleFiles.js +32 -182
- package/out/generator/genBundleFiles.js.map +1 -1
- package/out/generator/genMetaData.d.ts +1 -10
- package/out/generator/genMetaData.js +184 -50
- package/out/generator/genMetaData.js.map +1 -1
- package/out/generator/genReleaseBody.d.ts +2 -0
- package/out/generator/genReleaseBody.js +29 -3
- package/out/generator/genReleaseBody.js.map +1 -1
- package/out/generator/index.d.ts +1 -0
- package/out/generator/index.js +1 -0
- package/out/generator/index.js.map +1 -1
- package/out/generator/permission.d.ts +9 -0
- package/out/generator/permission.js +235 -0
- package/out/generator/permission.js.map +1 -0
- package/out/index.d.ts +1 -1
- package/out/index.js +2 -1
- package/out/index.js.map +1 -1
- package/out/server/entity2LogicNamespace.js +69 -9
- package/out/server/entity2LogicNamespace.js.map +1 -1
- package/out/server/extendBaseNode.js +10 -20
- package/out/server/extendBaseNode.js.map +1 -1
- package/out/server/formatTsUtils.d.ts +1 -2
- package/out/server/formatTsUtils.js +36 -47
- package/out/server/formatTsUtils.js.map +1 -1
- package/out/server/getLogics.d.ts +2 -1
- package/out/server/getLogics.js +11 -0
- package/out/server/getLogics.js.map +1 -1
- package/out/server/getMemberIdentifier.js +1 -1
- package/out/server/getMemberIdentifier.js.map +1 -1
- package/out/server/getProcesses.js +1 -1
- package/out/server/getProcesses.js.map +1 -1
- package/out/server/naslServer.d.ts +1 -1
- package/out/server/naslServer.js +181 -35
- package/out/server/naslServer.js.map +1 -1
- package/out/server/process2LogicNamespace.js +8 -0
- package/out/server/process2LogicNamespace.js.map +1 -1
- package/out/server/translator.js +66 -6
- package/out/server/translator.js.map +1 -1
- package/out/service/creator/add.configs.js +4 -0
- package/out/service/creator/add.configs.js.map +1 -1
- package/out/service/datasource/api.d.ts +12 -0
- package/out/service/datasource/api.js +14 -0
- package/out/service/datasource/api.js.map +1 -0
- package/out/service/datasource/index.d.ts +2 -0
- package/out/service/datasource/index.js +10 -0
- package/out/service/datasource/index.js.map +1 -0
- package/out/service/storage/init.js +8 -1
- package/out/service/storage/init.js.map +1 -1
- package/out/templator/genEditTableBlock.js +4 -5
- package/out/templator/genEditTableBlock.js.map +1 -1
- package/out/templator/genGetBlock.js +4 -3
- package/out/templator/genGetBlock.js.map +1 -1
- package/out/templator/genGridViewBlock.js +16 -14
- package/out/templator/genGridViewBlock.js.map +1 -1
- package/out/templator/genListViewBlock.js +5 -5
- package/out/templator/genListViewBlock.js.map +1 -1
- package/out/templator/genTableBlock.js +6 -10
- package/out/templator/genTableBlock.js.map +1 -1
- package/package.json +1 -1
- package/sandbox/stdlib/dist/nasl.logging.js +0 -0
- package/sandbox/stdlib/dist/nasl.util.js +0 -0
- package/sandbox/stdlib/nasl.auth.ts +1 -1
- package/sandbox/stdlib/nasl.core.ts +4 -0
- package/sandbox/stdlib/nasl.logging.ts +4 -4
- package/sandbox/stdlib/nasl.util.ts +14 -5
- package/src/automate/template/myProcess.js +1 -1
- package/src/bak/translator.js +4 -1
- package/src/common/BaseNode.ts +1 -0
- package/src/common/Command.ts +4 -0
- package/src/concepts/AnonymousFunction__.ts +48 -2
- package/src/concepts/App__.ts +140 -41
- package/src/concepts/Assignee__.ts +4 -3
- package/src/concepts/BatchAssignment__.ts +111 -51
- package/src/concepts/BindAttribute__.ts +9 -2
- package/src/concepts/CallFunction__.ts +65 -31
- package/src/concepts/CallInterface__.ts +6 -22
- package/src/concepts/CallLogic__.ts +88 -24
- package/src/concepts/CallQueryComponent__.ts +4 -1
- package/src/concepts/DataSource__.ts +56 -1
- package/src/concepts/Destination__.ts +92 -22
- package/src/concepts/ForEachStatement__.ts +2 -0
- package/src/concepts/Identifier__.ts +18 -7
- package/src/concepts/LogicItem__.ts +1 -1
- package/src/concepts/Logic__.ts +54 -39
- package/src/concepts/Match__.ts +12 -8
- package/src/concepts/NewComposite__.ts +1356 -0
- package/src/concepts/NewList__.ts +444 -0
- package/src/concepts/NewMap__.ts +678 -0
- package/src/concepts/New__.ts +73 -0
- package/src/concepts/Param__.ts +238 -199
- package/src/concepts/ProcessElement__.ts +32 -10
- package/src/concepts/ProcessOutcome__.ts +1 -1
- package/src/concepts/ProcessOutcomes__.ts +90 -0
- package/src/concepts/Return__.ts +4 -1
- package/src/concepts/SelectMembers__.ts +3 -3
- package/src/concepts/StringInterpolation__.ts +21 -11
- package/src/concepts/TypeAnnotation__.ts +71 -50
- package/src/concepts/ValidationRule__.ts +19 -1
- package/src/concepts/Variable__.ts +4 -1
- package/src/concepts/ViewElement__.ts +23 -7
- package/src/concepts/View__.ts +16 -2
- package/src/concepts/basics/stdlib/dist/nasl.util.js +1602 -0
- 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/dist/BindAttribute__.js +760 -0
- package/src/concepts/dist/BindEvent__.js +732 -0
- package/src/concepts/dist/CallFunction__.js +82 -28
- package/src/concepts/dist/CallLogic__.js +95 -27
- package/src/concepts/dist/Identifier__.js +311 -0
- package/src/concepts/dist/StringInterpolation__.js +231 -0
- package/src/concepts/dist/TypeAnnotation__.js +834 -0
- package/src/concepts/dist/ViewElement__.js +1692 -0
- package/src/concepts/dist/View__.js +1601 -0
- package/src/concepts/index__.ts +5 -0
- package/src/enums/KEYWORDS.ts +1 -0
- package/src/generator/dist/genBundleFiles.js +23 -176
- package/src/generator/dist/genMetaData.js +245 -0
- package/src/generator/dist/permission.js +392 -0
- package/src/generator/genBundleFiles.ts +34 -219
- package/src/generator/genMetaData.ts +177 -77
- package/src/generator/genReleaseBody.ts +30 -5
- package/src/generator/index.ts +1 -0
- package/src/generator/permission.ts +271 -0
- package/src/index.ts +1 -1
- package/src/server/dist/naslServer.js +443 -249
- package/src/server/entity2LogicNamespace.ts +70 -10
- package/src/server/extendBaseNode.ts +10 -21
- package/src/server/formatTsUtils.ts +36 -46
- package/src/server/getLogics.ts +13 -1
- package/src/server/getMemberIdentifier.ts +1 -1
- package/src/server/getProcesses.ts +1 -1
- package/src/server/naslServer.ts +181 -42
- package/src/server/process2LogicNamespace.ts +8 -0
- package/src/server/translator.ts +64 -7
- 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/dist/init.js +48 -10
- package/src/service/storage/init.ts +9 -2
- package/src/service/video/VideoTranscribe.js +1 -0
- package/src/templator/dist/genEditTableBlock.js +204 -0
- package/src/templator/dist/genGridViewBlock.js +265 -0
- package/src/templator/dist/genListViewBlock.js +84 -0
- package/src/templator/dist/genTableBlock.js +209 -0
- package/src/templator/dist/utils.js +527 -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/dist/webpack.config.dev.js +3 -1
- 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/ConstructArgument__.d.ts +0 -40
- package/out/concepts/ConstructArgument__.js.map +0 -1
- package/out/concepts/Construct__.d.ts +0 -189
- package/out/concepts/Construct__.js +0 -340
- package/out/concepts/Construct__.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/templator/sql-parser/index.d.ts +0 -1
- package/out/templator/sql-parser/index.js +0 -228
- package/out/templator/sql-parser/index.js.map +0 -1
- package/out/templator/sql-parser/parser.js +0 -26664
- package/out/templator/sql-parser/parser.js.map +0 -1
- package/src/concepts/dist/Anchor__.js +0 -179
- package/src/concepts/dist/Assignment__.js +0 -301
- package/src/concepts/dist/CallInterface__.js +0 -533
- 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/server/dist/formatTsUtils.js +0 -683
- package/ts-worker/lib/dist/tsserver.dev.js +0 -22953
- package/ts-worker/sources/lib/dist/tsserver.dev.js +0 -22912
|
@@ -44,7 +44,6 @@ var __spreadArrays = (this && this.__spreadArrays) || function () {
|
|
|
44
44
|
};
|
|
45
45
|
exports.__esModule = true;
|
|
46
46
|
exports.loadAppSync = exports.loadApp = exports.handleApp = exports.batchAction = exports.batchQuery = void 0;
|
|
47
|
-
var translator_1 = require("../../translator");
|
|
48
47
|
var concepts_1 = require("../../concepts");
|
|
49
48
|
var decorators_1 = require("../../decorators");
|
|
50
49
|
var config_1 = require("../../config");
|
|
@@ -86,7 +85,7 @@ function getLogic(key, app, diffLogicList) {
|
|
|
86
85
|
}
|
|
87
86
|
/* 获取LogicITEM */
|
|
88
87
|
function getStatement(state, app, diffLogicList) {
|
|
89
|
-
var _a, _b, _c, _d;
|
|
88
|
+
var _a, _b, _c, _d, _e;
|
|
90
89
|
var logicItems = [];
|
|
91
90
|
switch (state.concept) {
|
|
92
91
|
case 'Assignment':
|
|
@@ -98,6 +97,12 @@ function getStatement(state, app, diffLogicList) {
|
|
|
98
97
|
case 'ForEachStatement':
|
|
99
98
|
logicItems = __spreadArrays(state.body, [state.each, state.start, state.end]);
|
|
100
99
|
break;
|
|
100
|
+
case 'Match':
|
|
101
|
+
logicItems = state.cases.map(getStatement).flat(1);
|
|
102
|
+
break;
|
|
103
|
+
case 'MatchCase':
|
|
104
|
+
logicItems = __spreadArrays(state.patterns, state.body);
|
|
105
|
+
break;
|
|
101
106
|
case 'SwitchStatement':
|
|
102
107
|
logicItems = state.cases.map(getStatement).flat(1);
|
|
103
108
|
break;
|
|
@@ -111,16 +116,46 @@ function getStatement(state, app, diffLogicList) {
|
|
|
111
116
|
logicItems = (_a = state.arguments) === null || _a === void 0 ? void 0 : _a.map(function (item) { return item.expression; });
|
|
112
117
|
getLogic(state.calleewholeKey, app, diffLogicList);
|
|
113
118
|
break;
|
|
114
|
-
case '
|
|
119
|
+
case 'CallFunction':
|
|
115
120
|
logicItems = (_b = state.arguments) === null || _b === void 0 ? void 0 : _b.map(function (item) { return item.expression; });
|
|
116
121
|
break;
|
|
122
|
+
case 'CallInterface':
|
|
123
|
+
logicItems = (_c = state.arguments) === null || _c === void 0 ? void 0 : _c.map(function (item) { return item.expression; });
|
|
124
|
+
break;
|
|
117
125
|
case 'BatchAssignment':
|
|
118
|
-
logicItems = __spreadArrays([(
|
|
126
|
+
logicItems = __spreadArrays([(_d = state.left) === null || _d === void 0 ? void 0 : _d.expression], (_e = state.left) === null || _e === void 0 ? void 0 : _e.members, state.rights.map(function (item) { return __spreadArrays([item === null || item === void 0 ? void 0 : item.expression], item === null || item === void 0 ? void 0 : item.members); }).flat(1));
|
|
127
|
+
break;
|
|
128
|
+
case 'MemberExpression':
|
|
129
|
+
logicItems = [state.object, state.property];
|
|
130
|
+
break;
|
|
131
|
+
case 'StringInterpolation':
|
|
132
|
+
logicItems = __spreadArrays(state.expressions);
|
|
133
|
+
break;
|
|
119
134
|
default:
|
|
120
135
|
break;
|
|
121
136
|
}
|
|
122
137
|
return logicItems.filter(function (item) { return !!item; });
|
|
123
138
|
}
|
|
139
|
+
/* 小程序影响的服务端发布 */
|
|
140
|
+
function getMiniAppChange(target, obj, action) {
|
|
141
|
+
var _a;
|
|
142
|
+
if (!target.app.miniEnable) {
|
|
143
|
+
return false;
|
|
144
|
+
}
|
|
145
|
+
/* 分端以后需要改 */
|
|
146
|
+
var len = (_a = target.nodePath) === null || _a === void 0 ? void 0 : _a.split('.').length;
|
|
147
|
+
if (len > 2) {
|
|
148
|
+
return false;
|
|
149
|
+
}
|
|
150
|
+
if (action === 'delete') {
|
|
151
|
+
return true;
|
|
152
|
+
}
|
|
153
|
+
else {
|
|
154
|
+
if ('name' in obj || 'title' in obj) {
|
|
155
|
+
return true;
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
}
|
|
124
159
|
/**
|
|
125
160
|
* 执行更新
|
|
126
161
|
*/
|
|
@@ -178,7 +213,7 @@ function doAction(app, actionItem) {
|
|
|
178
213
|
try {
|
|
179
214
|
if (Array.isArray(list)) {
|
|
180
215
|
list.forEach(function (event) {
|
|
181
|
-
var _a, _b, _c, _d, _e, _f;
|
|
216
|
+
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
182
217
|
var emitTarget = (_a = event === null || event === void 0 ? void 0 : event.originEvent) === null || _a === void 0 ? void 0 : _a.target;
|
|
183
218
|
var _path = event.originEvent.path;
|
|
184
219
|
var _root = ((_b = _path.split('.')) === null || _b === void 0 ? void 0 : _b[1]) || '';
|
|
@@ -201,8 +236,11 @@ function doAction(app, actionItem) {
|
|
|
201
236
|
hasFrontEnd = true;
|
|
202
237
|
}
|
|
203
238
|
if (emitTarget.concept === 'View') {
|
|
204
|
-
|
|
205
|
-
|
|
239
|
+
if (getMiniAppChange(emitTarget, (_c = event === null || event === void 0 ? void 0 : event.originEvent) === null || _c === void 0 ? void 0 : _c.object, (_d = event === null || event === void 0 ? void 0 : event.originEvent) === null || _d === void 0 ? void 0 : _d.action)) {
|
|
240
|
+
hasBackEnd = true;
|
|
241
|
+
}
|
|
242
|
+
var isDelete_1 = ((_e = event === null || event === void 0 ? void 0 : event.originEvent) === null || _e === void 0 ? void 0 : _e.action) === 'delete';
|
|
243
|
+
var isUpdateAuth = ((_f = event === null || event === void 0 ? void 0 : event.originEvent) === null || _f === void 0 ? void 0 : _f.action) === 'update' && ((_g = event === null || event === void 0 ? void 0 : event.originEvent) === null || _g === void 0 ? void 0 : _g.object) && 'auth' in ((_h = event === null || event === void 0 ? void 0 : event.originEvent) === null || _h === void 0 ? void 0 : _h.object);
|
|
206
244
|
if (isDelete_1 || isUpdateAuth) {
|
|
207
245
|
var app_1 = emitTarget.app;
|
|
208
246
|
var diffArr_3 = [];
|
|
@@ -374,7 +412,7 @@ function handleApp(app) {
|
|
|
374
412
|
app._timer = setTimeout(function () {
|
|
375
413
|
console.error('收集超时,请及时排查原因');
|
|
376
414
|
app.emit('refresh');
|
|
377
|
-
},
|
|
415
|
+
}, 2500);
|
|
378
416
|
}
|
|
379
417
|
if (!app._isCollectingCount) {
|
|
380
418
|
app._actionMsg = event === null || event === void 0 ? void 0 : event.actionMsg;
|
|
@@ -403,7 +441,7 @@ function handleApp(app) {
|
|
|
403
441
|
app._action = '';
|
|
404
442
|
app._noTimer = undefined;
|
|
405
443
|
if (!(Array.isArray(collectingList) && collectingList.length)) return [3 /*break*/, 2];
|
|
406
|
-
|
|
444
|
+
app.naslServer.embeddedTSEmitter.emit('change', {
|
|
407
445
|
value: collectingList
|
|
408
446
|
});
|
|
409
447
|
return [4 /*yield*/, doAction(app, {
|
|
@@ -431,7 +469,7 @@ function handleApp(app) {
|
|
|
431
469
|
app.on('storage', function (event) {
|
|
432
470
|
// 是否正在收集
|
|
433
471
|
if (app._isCollectingCount === 0) {
|
|
434
|
-
|
|
472
|
+
app.naslServer.embeddedTSEmitter.emit('change', {
|
|
435
473
|
value: [event]
|
|
436
474
|
});
|
|
437
475
|
var actionMsg = '';
|
|
@@ -77,6 +77,13 @@ function getStatement(state: any, app: any, diffLogicList: string[]) {
|
|
|
77
77
|
break;
|
|
78
78
|
case 'BatchAssignment':
|
|
79
79
|
logicItems = [state.left?.expression, ...state.left?.members, ...state.rights.map((item: SelectMembers) => [item?.expression, ...item?.members]).flat(1)];
|
|
80
|
+
break;
|
|
81
|
+
case 'MemberExpression':
|
|
82
|
+
logicItems = [state.object, state.property];
|
|
83
|
+
break;
|
|
84
|
+
case 'StringInterpolation':
|
|
85
|
+
logicItems = [...state.expressions];
|
|
86
|
+
break;
|
|
80
87
|
default:
|
|
81
88
|
break;
|
|
82
89
|
}
|
|
@@ -85,7 +92,7 @@ function getStatement(state: any, app: any, diffLogicList: string[]) {
|
|
|
85
92
|
}
|
|
86
93
|
|
|
87
94
|
/* 小程序影响的服务端发布 */
|
|
88
|
-
function getMiniAppChange(target: any, obj: any, action:string) {
|
|
95
|
+
function getMiniAppChange(target: any, obj: any, action: string) {
|
|
89
96
|
if (!target.app.miniEnable) {
|
|
90
97
|
return false;
|
|
91
98
|
}
|
|
@@ -335,7 +342,7 @@ export function handleApp(app: any) {
|
|
|
335
342
|
app._timer = setTimeout(() => {
|
|
336
343
|
console.error('收集超时,请及时排查原因');
|
|
337
344
|
app.emit('refresh');
|
|
338
|
-
},
|
|
345
|
+
}, 2500);
|
|
339
346
|
}
|
|
340
347
|
if (!app._isCollectingCount) {
|
|
341
348
|
app._actionMsg = event?.actionMsg;
|
|
@@ -0,0 +1,204 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
exports.__esModule = true;
|
|
3
|
+
exports.genBlurUpdateLogic = exports.genEditTableRemoveLogic = exports.genEditTableLoadLogic = exports.genEditTableTemplate = exports.genEditTableColumnTemplate = void 0;
|
|
4
|
+
var utils = require("../utils");
|
|
5
|
+
var _1 = require(".");
|
|
6
|
+
var utils_1 = require("./utils");
|
|
7
|
+
/**
|
|
8
|
+
* 根据实体属性生成表格列模板
|
|
9
|
+
* @param property 实体属性
|
|
10
|
+
*/
|
|
11
|
+
function genEditTableColumnTemplate(entity, property, nameGroup, selectNameGroupMap) {
|
|
12
|
+
var dataSource = entity.parentNode;
|
|
13
|
+
var lowerEntityName = utils.firstLowerCase(entity.name);
|
|
14
|
+
var valueExpression = "current.item." + lowerEntityName + "." + property.name;
|
|
15
|
+
var title = property.label || property.name;
|
|
16
|
+
var canEditable = function (property) { return !property.readonly; };
|
|
17
|
+
var getText = function (property) {
|
|
18
|
+
var propertyTypeName = property.typeAnnotation.typeName;
|
|
19
|
+
if (propertyTypeName === 'Boolean') {
|
|
20
|
+
return "\n <u-text v-if=\"" + valueExpression + "\" text=\"\u662F\"></u-text>\n <u-text v-if=\"!" + valueExpression + "\" text=\"\u5426\"></u-text>\n ";
|
|
21
|
+
}
|
|
22
|
+
else {
|
|
23
|
+
return "<u-text :text=\"" + valueExpression + "\"></u-text>";
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
var genEditComponent = function (property) {
|
|
27
|
+
if (property.readonly)
|
|
28
|
+
return '';
|
|
29
|
+
var label = property.label || property.name;
|
|
30
|
+
var formItem = '';
|
|
31
|
+
var propertyTypeName = property.typeAnnotation.typeName;
|
|
32
|
+
if (property.relationEntity && selectNameGroupMap) {
|
|
33
|
+
// 有外键关联
|
|
34
|
+
var relationEntity = dataSource === null || dataSource === void 0 ? void 0 : dataSource.findEntityByName(property.relationEntity);
|
|
35
|
+
if (relationEntity) {
|
|
36
|
+
var relationProperty = relationEntity.properties.find(function (prop) { return prop.name === property.relationProperty; });
|
|
37
|
+
var displayedProperty = _1.getFirstDisplayedProperty(relationEntity);
|
|
38
|
+
if (displayedProperty) {
|
|
39
|
+
var lowerEntityName_1 = utils.firstLowerCase(relationEntity.name);
|
|
40
|
+
// 存在多个属性关联同一个实体的情况,因此加上属性名用以唯一标识
|
|
41
|
+
var key = [property.name, relationEntity.name].join('-');
|
|
42
|
+
var selectNameGroup = selectNameGroupMap.get(key);
|
|
43
|
+
formItem += "\n <u-select clearable placeholder=\"\u8BF7\u9009\u62E9" + label + "\" :data-source=\"" + selectNameGroup.viewLogicLoad + "\"\n :autofocus=\"true\" :opened=\"true\" append-to=\"body\" @blur=\"" + nameGroup.viewLogicBlurUpdate + "\" @select=\"" + nameGroup.viewLogicBlurUpdate + "\"\n text-field=\"" + lowerEntityName_1 + "." + displayedProperty.name + "\" value-field=\"" + lowerEntityName_1 + "." + relationProperty.name + "\" :pageable=\"true\" :remote-paging=\"true\" :value.sync=\"" + valueExpression + "\">\n </u-select>\n ";
|
|
44
|
+
}
|
|
45
|
+
else
|
|
46
|
+
return '';
|
|
47
|
+
}
|
|
48
|
+
else
|
|
49
|
+
return '';
|
|
50
|
+
}
|
|
51
|
+
else if (propertyTypeName === 'Boolean') {
|
|
52
|
+
formItem += "<u-select clearable :value.sync=\"" + valueExpression + "\" placeholder=\"\u8BF7\u8F93\u5165" + label + "\"\n :autofocus=\"true\" :opened=\"true\" append-to=\"body\" @blur=\"" + nameGroup.viewLogicBlurUpdate + "\" @select=\"" + nameGroup.viewLogicBlurUpdate + "\">\n <u-select-item :value=\"true\" text=\"\u662F\">\u662F</u-select-item>\n <u-select-item :value=\"false\" text=\"\u5426\">\u5426</u-select-item>\n </u-select>";
|
|
53
|
+
}
|
|
54
|
+
else if (propertyTypeName === 'Integer' || propertyTypeName === 'Long') {
|
|
55
|
+
formItem = "<u-number-input :value.sync=\"" + valueExpression + "\" placeholder=\"\u8BF7\u8F93\u5165" + label + "\" :autofocus=\"true\" @blur=\"" + nameGroup.viewLogicBlurUpdate + "\"></u-number-input>";
|
|
56
|
+
}
|
|
57
|
+
else if (propertyTypeName === 'Double') {
|
|
58
|
+
formItem = "<u-number-input :value.sync=\"" + valueExpression + "\" :precision=\"0\" :step=\"0\" placeholder=\"\u8BF7\u8F93\u5165" + label + "\" :autofocus=\"true\" @blur=\"" + nameGroup.viewLogicBlurUpdate + "\"></u-number-input>";
|
|
59
|
+
}
|
|
60
|
+
else if (propertyTypeName === 'Decimal') {
|
|
61
|
+
formItem = "<u-number-input :value.sync=\"" + valueExpression + "\" :precision=\"0\" :step=\"0\" placeholder=\"\u8BF7\u8F93\u5165" + label + "\" :autofocus=\"true\" @blur=\"" + nameGroup.viewLogicBlurUpdate + "\"></u-number-input>";
|
|
62
|
+
}
|
|
63
|
+
else if (propertyTypeName === 'Text') {
|
|
64
|
+
formItem = "<u-validator placement=\"bottom\" display=\"appear\" @blur-valid=\"" + nameGroup.viewLogicBlurUpdate + "\" style=\"width:100%\">\n <u-textarea :value.sync=\"" + valueExpression + "\" placeholder=\"\u8BF7\u8F93\u5165" + label + "\" :autofocus=\"true\" size=\"full\"></u-textarea>\n </u-validator>";
|
|
65
|
+
}
|
|
66
|
+
else if (propertyTypeName === 'Date') {
|
|
67
|
+
formItem = "<u-date-picker clearable :date.sync=\"" + valueExpression + "\" placeholder=\"\u8BF7\u8F93\u5165" + label + "\" append-to=\"body\" :autofocus=\"true\" :opened=\"true\" @blur=\"" + nameGroup.viewLogicBlurUpdate + "\"></u-date-picker>";
|
|
68
|
+
}
|
|
69
|
+
else if (propertyTypeName === 'Time') {
|
|
70
|
+
formItem = "<u-time-picker :time.sync=\"" + valueExpression + "\" placeholder=\"\u8BF7\u8F93\u5165" + label + "\" append-to=\"body\" :autofocus=\"true\" @blur=\"" + nameGroup.viewLogicBlurUpdate + "\"></u-time-picker>";
|
|
71
|
+
}
|
|
72
|
+
else if (propertyTypeName === 'DateTime') {
|
|
73
|
+
formItem = "<u-date-time-picker clearable :date.sync=\"" + valueExpression + "\" placeholder=\"\u8BF7\u8F93\u5165" + label + "\" append-to=\"body\" :autofocus=\"true\" :opened=\"true\" @blur=\"" + nameGroup.viewLogicBlurUpdate + "\"></u-date-time-picker>";
|
|
74
|
+
}
|
|
75
|
+
else {
|
|
76
|
+
formItem = "<u-validator placement=\"bottom\" display=\"appear\" @blur-valid=\"" + nameGroup.viewLogicBlurUpdate + "\" style=\"width:100%\" append-to=\"body\">\n <u-input :value.sync=\"" + valueExpression + "\" placeholder=\"\u8BF7\u8F93\u5165" + label + "\" :autofocus=\"true\" size=\"full\"></u-input>\n </u-validator>";
|
|
77
|
+
}
|
|
78
|
+
return "<template #editcell=\"current\">\n <u-linear-layout gap=\"small\">\n " + formItem + "\n </u-linear-layout>\n </template>";
|
|
79
|
+
};
|
|
80
|
+
return "<u-table-view-column field=\"" + utils.firstLowerCase(entity.name) + "." + property.name + "\" " + (canEditable(property) ? 'type="editable"' : '') + ">\n <template #title><u-text text=\"" + title + "\"></u-text></template>\n <template #cell=\"current\">\n <u-linear-layout gap=\"small\">\n " + getText(property) + "\n </u-linear-layout>\n </template>\n " + genEditComponent(property) + "\n</u-table-view-column>";
|
|
81
|
+
}
|
|
82
|
+
exports.genEditTableColumnTemplate = genEditTableColumnTemplate;
|
|
83
|
+
/**
|
|
84
|
+
* 生成表格模板
|
|
85
|
+
* @param entity 实体
|
|
86
|
+
* @param nameGroup 命名组
|
|
87
|
+
*/
|
|
88
|
+
function genEditTableTemplate(entity, nameGroup, selectNameGroupMap) {
|
|
89
|
+
var properties = entity.properties.filter(_1.filterProperty('inTable'));
|
|
90
|
+
return "<u-table-view ref=\"" + nameGroup.viewElementMainView + "\" :data-source=\"" + nameGroup.viewLogicLoad + "\" data-schema=\"" + nameGroup.structure + "\"\n value-field=\"" + nameGroup.viewVariableEntity + ".id\"\n :pageable=\"true\" :remote-paging=\"true\" :show-sizer=\"true\" :default-column-width=\"300\" editable>\n <u-table-view-column type=\"index\" width=\"60\"><template #title><u-text text=\"\u5E8F\u53F7\"></u-text></template></u-table-view-column>\n\n " + properties.map(function (property) { return genEditTableColumnTemplate(entity, property, nameGroup, selectNameGroupMap) + '\n'; }).join('') + "\n\n <u-table-view-column>\n <template #title><u-text text=\"\u64CD\u4F5C\"></u-text></template>\n <template #cell=\"current\">\n <u-linear-layout gap=\"small\">\n <u-link @click=\"" + nameGroup.viewLogicRemove + "\">\u5220\u9664</u-link>\n </u-linear-layout>\n </template>\n </u-table-view-column>\n</u-table-view>\n";
|
|
91
|
+
}
|
|
92
|
+
exports.genEditTableTemplate = genEditTableTemplate;
|
|
93
|
+
/**
|
|
94
|
+
* 生成表格 load 逻辑
|
|
95
|
+
* @param entity 实体
|
|
96
|
+
*/
|
|
97
|
+
function genEditTableLoadLogic(entity, nameGroup, newLogic, supportFilter) {
|
|
98
|
+
var moduleNode = entity.app;
|
|
99
|
+
var moduleNamespace = moduleNode === null || moduleNode === void 0 ? void 0 : moduleNode.getNamespace();
|
|
100
|
+
var params = [
|
|
101
|
+
_1.genLogicParam("" + newLogic.params[0].name, 'params.page'),
|
|
102
|
+
_1.genLogicParam("" + newLogic.params[1].name, 'params.size'),
|
|
103
|
+
_1.genLogicParam("" + newLogic.params[2].name, 'params.sort'),
|
|
104
|
+
_1.genLogicParam("" + newLogic.params[3].name, 'params.order'),
|
|
105
|
+
];
|
|
106
|
+
if (supportFilter)
|
|
107
|
+
params.push(_1.genLogicParam("" + newLogic.params[4].name, nameGroup.viewVariableFilter));
|
|
108
|
+
return utils_1.NaslNode.Logic({
|
|
109
|
+
name: nameGroup.viewLogicLoad,
|
|
110
|
+
params: [
|
|
111
|
+
utils_1.NaslNode.Param({
|
|
112
|
+
name: 'params',
|
|
113
|
+
typeAnnotation: utils_1.NaslUITypeAnnotation.DataSourceParams
|
|
114
|
+
}),
|
|
115
|
+
],
|
|
116
|
+
returns: [
|
|
117
|
+
utils_1.NaslNode.Return({
|
|
118
|
+
name: 'result',
|
|
119
|
+
typeAnnotation: null
|
|
120
|
+
}),
|
|
121
|
+
],
|
|
122
|
+
variables: [],
|
|
123
|
+
body: [
|
|
124
|
+
utils_1.NaslLogicItem.Start,
|
|
125
|
+
utils_1.NaslLogicItem.Assignment({
|
|
126
|
+
left: utils_1.NaslLogicItem.Identifier({
|
|
127
|
+
name: 'result'
|
|
128
|
+
}),
|
|
129
|
+
right: utils_1.NaslLogicItem.CallLogic({
|
|
130
|
+
calleeNamespace: moduleNamespace + ".logics",
|
|
131
|
+
calleeName: newLogic.name,
|
|
132
|
+
arguments: params
|
|
133
|
+
})
|
|
134
|
+
}),
|
|
135
|
+
utils_1.NaslLogicItem.End,
|
|
136
|
+
]
|
|
137
|
+
});
|
|
138
|
+
}
|
|
139
|
+
exports.genEditTableLoadLogic = genEditTableLoadLogic;
|
|
140
|
+
/**
|
|
141
|
+
* 生成表格 remove 逻辑
|
|
142
|
+
* @param entity 实体
|
|
143
|
+
*/
|
|
144
|
+
function genEditTableRemoveLogic(entity, nameGroup) {
|
|
145
|
+
var _a;
|
|
146
|
+
var lowerEntityName = utils.firstLowerCase(entity.name);
|
|
147
|
+
var ns = entity.ns;
|
|
148
|
+
var deleteLogic = (_a = ns === null || ns === void 0 ? void 0 : ns.logics) === null || _a === void 0 ? void 0 : _a.find(function (logic) { return logic.name === "delete"; });
|
|
149
|
+
var idPropertys = entity.properties.filter(function (property) { return property.primaryKey || property.name === 'id'; });
|
|
150
|
+
return utils_1.NaslNode.Logic({
|
|
151
|
+
name: nameGroup.viewLogicRemove,
|
|
152
|
+
params: [],
|
|
153
|
+
returns: [],
|
|
154
|
+
variables: [],
|
|
155
|
+
body: [
|
|
156
|
+
utils_1.NaslLogicItem.Start,
|
|
157
|
+
utils_1.NaslLogicItem.CallLogic({
|
|
158
|
+
calleeNamespace: deleteLogic.getNamespace(),
|
|
159
|
+
calleeName: deleteLogic.name,
|
|
160
|
+
arguments: idPropertys.map(function (idProperty) {
|
|
161
|
+
var paramFromLogic = _1.getParamFromLogic(deleteLogic, idProperty.name);
|
|
162
|
+
// 如果旧逻辑,但是新导入表中,id的name 不是id 的话,就直接使用名称叫id的
|
|
163
|
+
if (!paramFromLogic) {
|
|
164
|
+
paramFromLogic = _1.getParamFromLogic(deleteLogic, 'id');
|
|
165
|
+
}
|
|
166
|
+
return _1.genLogicParam(paramFromLogic.name, "current.item." + lowerEntityName + "." + paramFromLogic.name);
|
|
167
|
+
})
|
|
168
|
+
}),
|
|
169
|
+
_1.genCallComponentLogic(nameGroup.viewElementMainView, 'reload'),
|
|
170
|
+
utils_1.NaslLogicItem.End,
|
|
171
|
+
]
|
|
172
|
+
});
|
|
173
|
+
}
|
|
174
|
+
exports.genEditTableRemoveLogic = genEditTableRemoveLogic;
|
|
175
|
+
function genBlurUpdateLogic(entity, nameGroup) {
|
|
176
|
+
var _a;
|
|
177
|
+
var lowerEntityName = utils.firstLowerCase(entity.name);
|
|
178
|
+
var ns = entity.ns;
|
|
179
|
+
var updateLogic = (_a = ns === null || ns === void 0 ? void 0 : ns.logics) === null || _a === void 0 ? void 0 : _a.find(function (logic) { return logic.name === "update"; });
|
|
180
|
+
return utils_1.NaslNode.Logic({
|
|
181
|
+
name: nameGroup.viewLogicBlurUpdate,
|
|
182
|
+
params: [],
|
|
183
|
+
returns: [],
|
|
184
|
+
body: [
|
|
185
|
+
utils_1.NaslLogicItem.Start,
|
|
186
|
+
utils_1.NaslLogicItem.Assignment({
|
|
187
|
+
left: _1.genMemberExpression("current.item.editing", ['', '', nameGroup.structure + ".editing"]),
|
|
188
|
+
right: utils_1.NaslLogicItem.StringLiteral({
|
|
189
|
+
value: ''
|
|
190
|
+
})
|
|
191
|
+
}),
|
|
192
|
+
utils_1.NaslLogicItem.CallLogic({
|
|
193
|
+
calleeNamespace: updateLogic.getNamespace(),
|
|
194
|
+
calleeName: updateLogic.name,
|
|
195
|
+
arguments: [
|
|
196
|
+
_1.genLogicParam("" + updateLogic.params[0].name, "current.item." + lowerEntityName),
|
|
197
|
+
]
|
|
198
|
+
}),
|
|
199
|
+
utils_1.NaslLogicItem.End,
|
|
200
|
+
],
|
|
201
|
+
playground: []
|
|
202
|
+
});
|
|
203
|
+
}
|
|
204
|
+
exports.genBlurUpdateLogic = genBlurUpdateLogic;
|
|
@@ -0,0 +1,265 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __spreadArrays = (this && this.__spreadArrays) || function () {
|
|
3
|
+
for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
|
|
4
|
+
for (var r = Array(s), k = 0, i = 0; i < il; i++)
|
|
5
|
+
for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
|
|
6
|
+
r[k] = a[j];
|
|
7
|
+
return r;
|
|
8
|
+
};
|
|
9
|
+
exports.__esModule = true;
|
|
10
|
+
exports.genGridViewCardBlock = exports.genGridViewBlock = exports.genGridViewRemoveLogic = exports.genGridViewLoadLogic = exports.genH5GridViewTemplate = exports.genGridViewTemplate = exports.genH5GridViewCardTemplate = exports.genGridViewCardTemplate = void 0;
|
|
11
|
+
var config_1 = require("../config");
|
|
12
|
+
var utils = require("../utils");
|
|
13
|
+
var _1 = require(".");
|
|
14
|
+
var utils_1 = require("./utils");
|
|
15
|
+
/**
|
|
16
|
+
* 根据实体属性生成表格列模板
|
|
17
|
+
* @param property 实体属性
|
|
18
|
+
*/
|
|
19
|
+
function genGridViewCardTemplate(property, nameGroup) {
|
|
20
|
+
var entity = property.entity;
|
|
21
|
+
var dataSource = entity.parentNode;
|
|
22
|
+
var lowerEntityName = utils.firstLowerCase(entity.name);
|
|
23
|
+
var currentName = nameGroup.currentName || 'current';
|
|
24
|
+
var valueExpression = currentName + ".item." + lowerEntityName + "." + property.name;
|
|
25
|
+
var title = property.label || property.name;
|
|
26
|
+
if (property.relationEntity) {
|
|
27
|
+
// 有外键关联
|
|
28
|
+
var relationEntity = dataSource === null || dataSource === void 0 ? void 0 : dataSource.findEntityByName(property.relationEntity);
|
|
29
|
+
if (relationEntity) {
|
|
30
|
+
var displayedProperty = _1.getFirstDisplayedProperty(relationEntity);
|
|
31
|
+
if (displayedProperty) {
|
|
32
|
+
var relationLowerEntityName = utils.firstLowerCase(relationEntity.name);
|
|
33
|
+
valueExpression = currentName + ".item." + relationLowerEntityName + "." + displayedProperty.name;
|
|
34
|
+
}
|
|
35
|
+
else
|
|
36
|
+
return '';
|
|
37
|
+
}
|
|
38
|
+
else
|
|
39
|
+
return '';
|
|
40
|
+
}
|
|
41
|
+
else {
|
|
42
|
+
valueExpression = currentName + ".item." + lowerEntityName + "." + property.name;
|
|
43
|
+
}
|
|
44
|
+
var getText = function (property) {
|
|
45
|
+
var propertyTypeName = property.typeAnnotation.typeName;
|
|
46
|
+
if (propertyTypeName === 'Boolean') {
|
|
47
|
+
return "\n <u-text v-if=\"" + valueExpression + "\" text=\"\u662F\"></u-text>\n <u-text v-if=\"!" + valueExpression + "\" text=\"\u5426\"></u-text>\n ";
|
|
48
|
+
}
|
|
49
|
+
else {
|
|
50
|
+
return "<u-text :text=\"" + valueExpression + "\"></u-text>";
|
|
51
|
+
}
|
|
52
|
+
};
|
|
53
|
+
return "<u-linear-layout gap=\"small\">\n <u-text text=\"" + title + ":\"></u-text>" + getText(property) + "\n </u-linear-layout>";
|
|
54
|
+
}
|
|
55
|
+
exports.genGridViewCardTemplate = genGridViewCardTemplate;
|
|
56
|
+
function genH5GridViewCardTemplate(property, nameGroup) {
|
|
57
|
+
var entity = property.entity;
|
|
58
|
+
var dataSource = entity.parentNode;
|
|
59
|
+
var lowerEntityName = utils.firstLowerCase(entity.name);
|
|
60
|
+
var currentName = nameGroup.currentName || 'current';
|
|
61
|
+
var valueExpression = currentName + ".item." + lowerEntityName + "." + property.name;
|
|
62
|
+
if (property.relationEntity) {
|
|
63
|
+
// 有外键关联
|
|
64
|
+
var relationEntity = dataSource === null || dataSource === void 0 ? void 0 : dataSource.findEntityByName(property.relationEntity);
|
|
65
|
+
if (relationEntity) {
|
|
66
|
+
var displayedProperty = _1.getFirstDisplayedProperty(relationEntity);
|
|
67
|
+
if (displayedProperty) {
|
|
68
|
+
var relationLowerEntityName = utils.firstLowerCase(relationEntity.name);
|
|
69
|
+
valueExpression = currentName + ".item." + relationLowerEntityName + "." + displayedProperty.name;
|
|
70
|
+
}
|
|
71
|
+
else
|
|
72
|
+
return '';
|
|
73
|
+
}
|
|
74
|
+
else
|
|
75
|
+
return '';
|
|
76
|
+
}
|
|
77
|
+
else {
|
|
78
|
+
valueExpression = currentName + ".item." + lowerEntityName + "." + property.name;
|
|
79
|
+
}
|
|
80
|
+
var getText = function (property) {
|
|
81
|
+
var propertyTypeName = property.typeAnnotation.typeName;
|
|
82
|
+
if (propertyTypeName === 'Boolean') {
|
|
83
|
+
return "\n <van-text v-if=\"" + valueExpression + "\" text=\"\u662F\" display=\"block\"></van-text>\n <van-text v-if=\"!" + valueExpression + "\" text=\"\u5426\" display=\"block\"></van-text>\n ";
|
|
84
|
+
}
|
|
85
|
+
else {
|
|
86
|
+
return "<van-text :text=\"" + valueExpression + "\" display=\"block\"></van-text>";
|
|
87
|
+
}
|
|
88
|
+
};
|
|
89
|
+
return "" + getText(property);
|
|
90
|
+
}
|
|
91
|
+
exports.genH5GridViewCardTemplate = genH5GridViewCardTemplate;
|
|
92
|
+
/**
|
|
93
|
+
* 生成表格模板
|
|
94
|
+
* @param entity 实体
|
|
95
|
+
* @param nameGroup 命名组
|
|
96
|
+
*/
|
|
97
|
+
function genGridViewTemplate(entity, nameGroup, modifyable) {
|
|
98
|
+
var currentName = nameGroup.currentName || 'current';
|
|
99
|
+
var properties = entity.properties.filter(_1.filterProperty('inTable'));
|
|
100
|
+
return "<u-grid-view ref=\"" + nameGroup.viewElementMainView + "\" :data-source=\"" + nameGroup.viewLogicLoad + "\" data-schema=\"" + nameGroup.structure + "\"\n value-field=\"" + nameGroup.viewVariableEntity + ".id\"\n :page-size=\"20\"\n :pageable=\"true\"\n :remote-paging=\"true\"\n :show-sizer=\"true\"\n :repeat=\"4\"\n :border=\"false\"\n :readonly=\"true\"\n :show-foot=\"true\"\n style=\"height:auto\">\n <template #item=\"current\">\n <u-card title=\"\">\n <u-linear-layout direction=\"vertical\" gap=\"small\">\n " + properties.map(function (property) { return genGridViewCardTemplate(property, nameGroup) + '\n'; }).join('') + "\n <u-linear-layout gap=\"small\">\n <u-link " + (modifyable ? "@click=\"" + (nameGroup.viewLogicModify || 'modify') + "\"" : '') + ">\u4FEE\u6539</u-link>\n <u-link @click=\"" + nameGroup.viewLogicRemove + "\">\u5220\u9664</u-link>\n </u-linear-layout>\n </u-linear-layout>\n </u-card>\n </template>\n</u-grid-view>\n";
|
|
101
|
+
}
|
|
102
|
+
exports.genGridViewTemplate = genGridViewTemplate;
|
|
103
|
+
function genH5GridViewTemplate(entity, nameGroup) {
|
|
104
|
+
var currentName = nameGroup.currentName || 'current';
|
|
105
|
+
var properties = entity.properties.filter(_1.filterProperty('inTable'));
|
|
106
|
+
return "<van-grid-view ref=\"gridView\" :data-source=\"" + nameGroup.viewLogicLoad + "\" data-schema=\"" + nameGroup.structure + "\"\n pageable=\"auto-more\"\n :remote-paging=\"true\"\n :col=\"2\"\n :iffall=\"false\">\n <template #item=\"current\">\n <van-cardu no-title>\n " + properties.map(function (property) { return genH5GridViewCardTemplate(property, nameGroup) + '\n'; }).join('') + "\n </van-cardu>\n </template>\n</van-grid-view>\n";
|
|
107
|
+
}
|
|
108
|
+
exports.genH5GridViewTemplate = genH5GridViewTemplate;
|
|
109
|
+
/**
|
|
110
|
+
* 生成表格 load 逻辑
|
|
111
|
+
* @param entity 实体
|
|
112
|
+
*/
|
|
113
|
+
function genGridViewLoadLogic(entity, nameGroup, newLogic, supportFilter) {
|
|
114
|
+
var moduleNode = entity.app;
|
|
115
|
+
var moduleNamespace = moduleNode === null || moduleNode === void 0 ? void 0 : moduleNode.getNamespace();
|
|
116
|
+
var params = [
|
|
117
|
+
_1.genLogicParam("" + newLogic.params[0].name, 'params.page'),
|
|
118
|
+
_1.genLogicParam("" + newLogic.params[1].name, 'params.size'),
|
|
119
|
+
_1.genLogicParam("" + newLogic.params[2].name, 'params.sort'),
|
|
120
|
+
_1.genLogicParam("" + newLogic.params[3].name, 'params.order'),
|
|
121
|
+
];
|
|
122
|
+
if (supportFilter)
|
|
123
|
+
params.push(_1.genLogicParam("" + newLogic.params[4].name, nameGroup.viewVariableFilter));
|
|
124
|
+
return utils_1.NaslNode.Logic({
|
|
125
|
+
name: nameGroup.viewLogicLoad,
|
|
126
|
+
params: [
|
|
127
|
+
utils_1.NaslNode.Param({
|
|
128
|
+
name: 'params',
|
|
129
|
+
typeAnnotation: utils_1.NaslUITypeAnnotation.DataSourceParams
|
|
130
|
+
}),
|
|
131
|
+
],
|
|
132
|
+
returns: [
|
|
133
|
+
utils_1.NaslNode.Return({
|
|
134
|
+
name: 'result',
|
|
135
|
+
typeAnnotation: null
|
|
136
|
+
}),
|
|
137
|
+
],
|
|
138
|
+
variables: [],
|
|
139
|
+
body: [
|
|
140
|
+
utils_1.NaslLogicItem.Start,
|
|
141
|
+
utils_1.NaslLogicItem.Assignment({
|
|
142
|
+
left: utils_1.NaslLogicItem.Identifier({
|
|
143
|
+
name: 'result'
|
|
144
|
+
}),
|
|
145
|
+
right: utils_1.NaslLogicItem.CallLogic({
|
|
146
|
+
calleeNamespace: moduleNamespace + ".logics",
|
|
147
|
+
calleeName: newLogic.name,
|
|
148
|
+
arguments: params
|
|
149
|
+
})
|
|
150
|
+
}),
|
|
151
|
+
utils_1.NaslLogicItem.End,
|
|
152
|
+
]
|
|
153
|
+
});
|
|
154
|
+
}
|
|
155
|
+
exports.genGridViewLoadLogic = genGridViewLoadLogic;
|
|
156
|
+
/**
|
|
157
|
+
* 生成表格 remove 逻辑
|
|
158
|
+
* @param entity 实体
|
|
159
|
+
*/
|
|
160
|
+
function genGridViewRemoveLogic(entity, nameGroup) {
|
|
161
|
+
var _a;
|
|
162
|
+
var lowerEntityName = utils.firstLowerCase(entity.name);
|
|
163
|
+
var ns = entity.ns;
|
|
164
|
+
var deleteLogic = (_a = ns === null || ns === void 0 ? void 0 : ns.logics) === null || _a === void 0 ? void 0 : _a.find(function (logic) { return logic.name === "delete"; });
|
|
165
|
+
var idPropertys = entity.properties.filter(function (property) { return property.primaryKey || property.name === 'id'; });
|
|
166
|
+
var currentName = nameGroup.currentName || 'current';
|
|
167
|
+
return utils_1.NaslNode.Logic({
|
|
168
|
+
name: nameGroup.viewLogicRemove,
|
|
169
|
+
params: [],
|
|
170
|
+
returns: [],
|
|
171
|
+
variables: [],
|
|
172
|
+
body: [
|
|
173
|
+
utils_1.NaslLogicItem.Start,
|
|
174
|
+
utils_1.NaslLogicItem.CallLogic({
|
|
175
|
+
calleeNamespace: deleteLogic.getNamespace(),
|
|
176
|
+
calleeName: deleteLogic.name,
|
|
177
|
+
arguments: idPropertys.map(function (idProperty) {
|
|
178
|
+
var paramFromLogic = _1.getParamFromLogic(deleteLogic, idProperty.name);
|
|
179
|
+
// 如果旧逻辑,但是新导入表中,id的name 不是id 的话,就直接使用名称叫id的
|
|
180
|
+
if (!paramFromLogic) {
|
|
181
|
+
paramFromLogic = _1.getParamFromLogic(deleteLogic, 'id');
|
|
182
|
+
}
|
|
183
|
+
return _1.genLogicParam(paramFromLogic.name, currentName + ".item." + lowerEntityName + "." + paramFromLogic.name);
|
|
184
|
+
})
|
|
185
|
+
}),
|
|
186
|
+
_1.genCallComponentLogic(nameGroup.viewElementMainView, 'reload'),
|
|
187
|
+
utils_1.NaslLogicItem.End,
|
|
188
|
+
]
|
|
189
|
+
});
|
|
190
|
+
}
|
|
191
|
+
exports.genGridViewRemoveLogic = genGridViewRemoveLogic;
|
|
192
|
+
/**
|
|
193
|
+
* 生成表格区块
|
|
194
|
+
* @param entity 实体
|
|
195
|
+
* @param view 所插入的页面,用于生成逻辑名字,去重等
|
|
196
|
+
* @notice 目前 logic 名去重做成前置处理了,与 mergeBlock 的后置处理不冲突
|
|
197
|
+
* (页面 load 名) -产生-> (logic 名) -产生-> (structure 名)
|
|
198
|
+
* load -> load_someView_tableView
|
|
199
|
+
* load_select_student -> load_someView_select_student
|
|
200
|
+
*/
|
|
201
|
+
// 数据网格(简)
|
|
202
|
+
function genGridViewBlock(entity, oldNode) {
|
|
203
|
+
var view = oldNode.view;
|
|
204
|
+
var dataSource = entity.parentNode;
|
|
205
|
+
var module = dataSource.parentNode;
|
|
206
|
+
var viewElementMainView = view.getViewElementUniqueName('gridView');
|
|
207
|
+
var nameGroup = _1.genUniqueQueryNameGroup(module, view, viewElementMainView);
|
|
208
|
+
nameGroup.viewElementMainView = viewElementMainView;
|
|
209
|
+
nameGroup.viewVariableEntity = view.getVariableUniqueName(utils.firstLowerCase(entity.name));
|
|
210
|
+
nameGroup.viewLogicRemove = view.getLogicUniqueName('remove');
|
|
211
|
+
// 当前节点的currentName
|
|
212
|
+
nameGroup.currentName = oldNode.getCurrentName();
|
|
213
|
+
// 收集所有和本实体关联的实体
|
|
214
|
+
var entitySet = new Set();
|
|
215
|
+
entitySet.add(entity);
|
|
216
|
+
var newLogics = [];
|
|
217
|
+
entity.properties.forEach(function (property) {
|
|
218
|
+
if (property.relationEntity) {
|
|
219
|
+
// 有外键关联
|
|
220
|
+
var relationEntity = dataSource === null || dataSource === void 0 ? void 0 : dataSource.findEntityByName(property.relationEntity);
|
|
221
|
+
if (relationEntity) {
|
|
222
|
+
var displayedProperty = _1.getFirstDisplayedProperty(relationEntity);
|
|
223
|
+
if (displayedProperty)
|
|
224
|
+
entitySet.add(relationEntity);
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
});
|
|
228
|
+
var allEntities = __spreadArrays(entitySet);
|
|
229
|
+
var entityLogic = _1.genQueryLogic(allEntities, nameGroup, false, true, module);
|
|
230
|
+
newLogics.push(entityLogic);
|
|
231
|
+
return "\n<template>\n " + (config_1.config.scope === 'h5' ? genH5GridViewTemplate(entity, nameGroup) : genGridViewTemplate(entity, nameGroup)) + "\n</template>\n<definition>\n{\n \"viewLogics\": [\n " + JSON.stringify(genGridViewLoadLogic(entity, nameGroup, entityLogic, false)) + ",\n " + JSON.stringify(genGridViewRemoveLogic(entity, nameGroup)) + "\n ],\n\n \"logics\": " + JSON.stringify(newLogics) + "\n}\n</definition>\n";
|
|
232
|
+
}
|
|
233
|
+
exports.genGridViewBlock = genGridViewBlock;
|
|
234
|
+
function genGridViewCardBlock(property, oldNode) {
|
|
235
|
+
var view = oldNode.view;
|
|
236
|
+
var entity = property.entity;
|
|
237
|
+
var dataSource = entity.parentNode;
|
|
238
|
+
var module = dataSource.parentNode;
|
|
239
|
+
var viewElementMainView = view.getViewElementUniqueName('gridView');
|
|
240
|
+
var nameGroup = _1.genUniqueQueryNameGroup(module, view, viewElementMainView);
|
|
241
|
+
nameGroup.viewElementMainView = viewElementMainView;
|
|
242
|
+
nameGroup.viewVariableEntity = view.getVariableUniqueName(utils.firstLowerCase(entity.name));
|
|
243
|
+
nameGroup.viewLogicRemove = view.getLogicUniqueName('remove');
|
|
244
|
+
// 收集所有和本实体关联的实体
|
|
245
|
+
var entitySet = new Set();
|
|
246
|
+
entitySet.add(entity);
|
|
247
|
+
var newLogics = [];
|
|
248
|
+
entity.properties.forEach(function (property) {
|
|
249
|
+
if (property.relationEntity) {
|
|
250
|
+
// 有外键关联
|
|
251
|
+
var relationEntity = dataSource === null || dataSource === void 0 ? void 0 : dataSource.findEntityByName(property.relationEntity);
|
|
252
|
+
if (relationEntity) {
|
|
253
|
+
var displayedProperty = _1.getFirstDisplayedProperty(relationEntity);
|
|
254
|
+
if (displayedProperty)
|
|
255
|
+
entitySet.add(relationEntity);
|
|
256
|
+
}
|
|
257
|
+
}
|
|
258
|
+
});
|
|
259
|
+
var allEntities = __spreadArrays(entitySet);
|
|
260
|
+
var entityLogic = _1.genQueryLogic(allEntities, nameGroup, true, true, module);
|
|
261
|
+
newLogics.push(entityLogic);
|
|
262
|
+
return "\n <template>\n " + genGridViewTemplate(entity, nameGroup) + "\n </template>\n <definition>\n {\n \"viewLogics\": [\n " + JSON.stringify(genGridViewLoadLogic(entity, nameGroup, entityLogic, false)) + ",\n " + JSON.stringify(genGridViewRemoveLogic(entity, nameGroup)) + "\n ],\n \"logics\": " + JSON.stringify(newLogics) + "\n }\n </definition>\n ";
|
|
263
|
+
}
|
|
264
|
+
exports.genGridViewCardBlock = genGridViewCardBlock;
|
|
265
|
+
exports["default"] = genGridViewBlock;
|