@lcap/nasl 0.3.9-beta → 0.3.10-beta.nocache
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/service/create/errHandles.js +7 -2
- package/out/service/create/errHandles.js.map +1 -1
- package/out/service/logic/logic.d.ts +27 -0
- package/out/service/logic/logic.js +20 -0
- package/out/service/logic/logic.js.map +1 -1
- package/out/service/page/element.d.ts +9 -0
- package/out/service/page/element.js +6 -0
- package/out/service/page/element.js.map +1 -1
- package/out/service/permission/api.d.ts +57 -0
- package/out/service/permission/api.js +41 -0
- package/out/service/permission/api.js.map +1 -0
- package/out/service/permission/index.d.ts +2 -0
- package/out/service/permission/index.js +17 -0
- package/out/service/permission/index.js.map +1 -0
- package/out/service/webFile/index.js +5 -0
- package/out/service/webFile/index.js.map +1 -1
- package/out/types/app/Service.d.ts +2 -2
- package/out/types/app/Service.js +28 -3
- package/out/types/app/Service.js.map +1 -1
- package/out/types/cache.d.ts +6 -0
- package/out/types/cache.js +54 -0
- package/out/types/cache.js.map +1 -0
- package/out/types/common/Vertex.d.ts +25 -0
- package/out/types/common/Vertex.js +40 -0
- package/out/types/common/Vertex.js.map +1 -1
- package/out/types/data/Entity.js +1 -0
- package/out/types/data/Entity.js.map +1 -1
- package/out/types/data/Enum.d.ts +5 -0
- package/out/types/data/Enum.js +5 -0
- package/out/types/data/Enum.js.map +1 -1
- package/out/types/data/Interface.js +5 -3
- package/out/types/data/Interface.js.map +1 -1
- package/out/types/data/genBlock/genCreateBlock.js +5 -5
- package/out/types/data/genBlock/genCreateBlock.js.map +1 -1
- package/out/types/data/genBlock/genCurdBlock.js +3 -3
- package/out/types/data/genBlock/genCurdBlock.js.map +1 -1
- package/out/types/data/genBlock/genEnumSelectBlock.d.ts +1 -1
- package/out/types/data/genBlock/genEnumSelectBlock.js +2 -2
- package/out/types/data/genBlock/genEnumSelectBlock.js.map +1 -1
- package/out/types/data/genBlock/genGridViewBlock.js +12 -1
- package/out/types/data/genBlock/genGridViewBlock.js.map +1 -1
- package/out/types/data/genBlock/genListViewBlock.js +2 -2
- package/out/types/data/genBlock/genSelectBlock.js +2 -2
- package/out/types/data/genBlock/genTableBlock.js +14 -3
- package/out/types/data/genBlock/genTableBlock.js.map +1 -1
- package/out/types/data/genBlock/genUpdateBlock.js +5 -5
- package/out/types/data/genBlock/genUpdateBlock.js.map +1 -1
- package/out/types/data/systemTypes.js +47 -0
- package/out/types/data/systemTypes.js.map +1 -1
- package/out/types/enum.d.ts +6 -0
- package/out/types/enum.js +11 -0
- package/out/types/enum.js.map +1 -0
- package/out/types/generator/hotReload.d.ts +2 -0
- package/out/types/generator/hotReload.js +12 -1
- package/out/types/generator/hotReload.js.map +1 -1
- package/out/types/index.d.ts +4 -0
- package/out/types/index.js +6 -1
- package/out/types/index.js.map +1 -1
- package/out/types/logic/Logic.d.ts +28 -0
- package/out/types/logic/Logic.js +116 -31
- package/out/types/logic/Logic.js.map +1 -1
- package/out/types/logic/LogicItem.d.ts +1 -0
- package/out/types/logic/LogicItem.js +43 -24
- package/out/types/logic/LogicItem.js.map +1 -1
- package/out/types/logic/Param.d.ts +1 -0
- package/out/types/logic/Param.js +38 -20
- package/out/types/logic/Param.js.map +1 -1
- package/out/types/logic/Return.js +14 -19
- package/out/types/logic/Return.js.map +1 -1
- package/out/types/logic/Variable.js +14 -19
- package/out/types/logic/Variable.js.map +1 -1
- package/out/types/logic/translator.js +0 -2
- package/out/types/logic/translator.js.map +1 -1
- package/out/types/nuims/Nuims.d.ts +1 -1
- package/out/types/nuims/Nuims.js +11 -4
- package/out/types/nuims/Nuims.js.map +1 -1
- package/out/types/page/Element.d.ts +8 -0
- package/out/types/page/Element.js +145 -129
- package/out/types/page/Element.js.map +1 -1
- package/out/types/page/Event.js.map +1 -1
- package/out/types/page/Page.d.ts +1 -0
- package/out/types/page/Page.js +71 -37
- package/out/types/page/Page.js.map +1 -1
- package/out/types/page/View.d.ts +1 -1
- package/out/types/page/View.js +50 -42
- package/out/types/page/View.js.map +1 -1
- package/out/types/page/ViewParam.d.ts +1 -0
- package/out/types/page/ViewParam.js +23 -4
- package/out/types/page/ViewParam.js.map +1 -1
- package/out/types/page/ViewVariable.js +13 -18
- package/out/types/page/ViewVariable.js.map +1 -1
- package/out/types/permission/Permission.d.ts +41 -0
- package/out/types/permission/Permission.js +122 -0
- package/out/types/permission/Permission.js.map +1 -0
- package/package.json +2 -3
- package/src/service/create/errHandles.js +6 -2
- package/src/service/developPermission/api.js +37 -0
- package/src/service/developPermission/index.js +13 -0
- package/src/service/logic/logic.js +20 -0
- package/src/service/page/element.js +6 -0
- package/src/service/permission/api.js +38 -0
- package/src/service/permission/index.js +13 -0
- package/src/service/webFile/index.js +6 -1
- package/src/types/app/Service.ts +32 -3
- package/src/types/cache.ts +50 -0
- package/src/types/common/Vertex.ts +30 -0
- package/src/types/data/Entity.ts +1 -0
- package/src/types/data/Enum.ts +5 -0
- package/src/types/data/Interface.ts +4 -3
- package/src/types/data/genBlock/genCreateBlock.ts +5 -5
- package/src/types/data/genBlock/genCurdBlock.ts +3 -3
- package/src/types/data/genBlock/genEnumSelectBlock.ts +2 -2
- package/src/types/data/genBlock/genGridViewBlock.ts +12 -1
- package/src/types/data/genBlock/genListViewBlock.ts +2 -2
- package/src/types/data/genBlock/genSelectBlock.ts +2 -2
- package/src/types/data/genBlock/genTableBlock.ts +14 -3
- package/src/types/data/genBlock/genUpdateBlock.ts +5 -5
- package/src/types/data/systemTypes.ts +47 -0
- package/src/types/enum.ts +6 -0
- package/src/types/generator/hotReload.ts +10 -0
- package/src/types/index.ts +4 -0
- package/src/types/logic/Logic.ts +109 -28
- package/src/types/logic/LogicItem.ts +48 -28
- package/src/types/logic/Param.ts +26 -8
- package/src/types/logic/Return.ts +4 -9
- package/src/types/logic/Variable.ts +4 -8
- package/src/types/logic/translator.js +0 -4
- package/src/types/logic/translator_backup.js +5 -16
- package/src/types/nuims/Nuims.ts +11 -5
- package/src/types/page/Element.ts +101 -73
- package/src/types/page/Event.ts +0 -3
- package/src/types/page/Page.ts +86 -49
- package/src/types/page/View.ts +31 -22
- package/src/types/page/ViewParam.ts +22 -3
- package/src/types/page/ViewVariable.ts +4 -8
- package/src/types/page/dist/View.js +727 -0
- package/src/types/permission/Permission.ts +112 -0
- package/out/test/units/config.spec.d.ts +0 -1
- package/out/test/units/config.spec.js +0 -12
- package/out/test/units/config.spec.js.map +0 -1
package/src/types/page/View.ts
CHANGED
|
@@ -16,6 +16,7 @@ import * as babel from '@babel/core';
|
|
|
16
16
|
import view from '@/service/page/view';
|
|
17
17
|
import Entity from '../data/Entity';
|
|
18
18
|
import { postServiceType } from '../../service/common/preprocess';
|
|
19
|
+
import { catchFn } from './Page';
|
|
19
20
|
|
|
20
21
|
/**
|
|
21
22
|
* 子页面类,前端路由控制
|
|
@@ -199,26 +200,36 @@ export class View extends Block {
|
|
|
199
200
|
} catch (err) { }
|
|
200
201
|
})().finally(() => this.contentPromise = undefined);
|
|
201
202
|
}
|
|
202
|
-
loadAll() {
|
|
203
|
+
loadAll(enableCache = false) {
|
|
203
204
|
// 如果有正在进行的 Promise,则直接返回它
|
|
204
205
|
if (this.contentPromise)
|
|
205
206
|
return this.contentPromise;
|
|
206
207
|
|
|
207
208
|
return this.contentPromise = (async () => {
|
|
208
|
-
try {
|
|
209
209
|
const result: View = await viewService.load({
|
|
210
210
|
path: {
|
|
211
211
|
id: this.id,
|
|
212
212
|
},
|
|
213
|
+
query: {
|
|
214
|
+
enableCache,
|
|
215
|
+
},
|
|
216
|
+
config: { noErrorTip: true },
|
|
213
217
|
});
|
|
214
|
-
|
|
218
|
+
const oldLogics = this.$def.logics;
|
|
219
|
+
Object.assign(result, {
|
|
220
|
+
children: this.children,
|
|
221
|
+
})
|
|
215
222
|
const temp = View.from(result, this.parent, this.page, this);
|
|
223
|
+
const newLogics = temp.$def.logics;
|
|
224
|
+
oldLogics.forEach((logic) => {
|
|
225
|
+
if(!newLogics.find((item) => item.id === logic.id))
|
|
226
|
+
logic.destroy();
|
|
227
|
+
});
|
|
216
228
|
this.assign(temp);
|
|
217
229
|
utils.traverse((current) => {
|
|
218
230
|
current.node.attachNodePath(true);
|
|
219
231
|
}, { node: this });
|
|
220
232
|
return this;
|
|
221
|
-
} catch (err) { }
|
|
222
233
|
})().finally(() => this.contentPromise = undefined);
|
|
223
234
|
}
|
|
224
235
|
isContentLoaded() {
|
|
@@ -277,16 +288,6 @@ export class View extends Block {
|
|
|
277
288
|
/* 绑定数据结构和接口 */
|
|
278
289
|
addData(res: any) {
|
|
279
290
|
const microService = this.parent.page.service.app.firstMicroService;
|
|
280
|
-
const interfaces = res.interfaces as Array<Interface>;
|
|
281
|
-
if (interfaces && interfaces.length) {
|
|
282
|
-
interfaces.forEach((item, index) => {
|
|
283
|
-
const itface = interfaces[index] = Interface.from(item, microService);
|
|
284
|
-
postServiceType(itface);
|
|
285
|
-
});
|
|
286
|
-
microService.interfaces.unshift(...interfaces);
|
|
287
|
-
microService.emit('interfacesChange');
|
|
288
|
-
}
|
|
289
|
-
|
|
290
291
|
const enums = res.enums as Array<Enum>;
|
|
291
292
|
if (enums && enums.length) {
|
|
292
293
|
enums.forEach((item, index) => enums[index] = Enum.from(item, microService));
|
|
@@ -307,6 +308,19 @@ export class View extends Block {
|
|
|
307
308
|
microService.data.structures.unshift(...structures);
|
|
308
309
|
updateDataTypeList();
|
|
309
310
|
}
|
|
311
|
+
|
|
312
|
+
const interfaces = res.interfaces as Array<Interface>;
|
|
313
|
+
if (interfaces && interfaces.length) {
|
|
314
|
+
interfaces.forEach((item, index) => {
|
|
315
|
+
const itface = interfaces[index] = Interface.from(item, microService);
|
|
316
|
+
postServiceType(itface);
|
|
317
|
+
});
|
|
318
|
+
microService.interfaces.unshift(...interfaces);
|
|
319
|
+
microService.globalLogic.globalLogics.unshift(...interfaces);
|
|
320
|
+
microService.mountResolverOnEntity();
|
|
321
|
+
microService.mountResolverOnInterface();
|
|
322
|
+
microService.emit('interfacesChange');
|
|
323
|
+
}
|
|
310
324
|
}
|
|
311
325
|
|
|
312
326
|
@action('添加子页面')
|
|
@@ -322,7 +336,7 @@ export class View extends Block {
|
|
|
322
336
|
operationDesc: actionOptions?.actionDesc || `添加子页面"${this.name}${this.title ? `(${this.title})` : ''}"`,
|
|
323
337
|
},
|
|
324
338
|
body,
|
|
325
|
-
});
|
|
339
|
+
}).catch(catchFn());
|
|
326
340
|
this.deepPick(result.view, ['id']);
|
|
327
341
|
// 添加数据
|
|
328
342
|
this.addData(result);
|
|
@@ -403,7 +417,6 @@ export class View extends Block {
|
|
|
403
417
|
if (!this.parent)
|
|
404
418
|
throw Error('该子页面为根节点!');
|
|
405
419
|
|
|
406
|
-
try {
|
|
407
420
|
await viewService.delete({
|
|
408
421
|
headers: {
|
|
409
422
|
appId: config.defaultApp?.id,
|
|
@@ -413,11 +426,7 @@ export class View extends Block {
|
|
|
413
426
|
path: {
|
|
414
427
|
id: this.id,
|
|
415
428
|
},
|
|
416
|
-
});
|
|
417
|
-
} catch (err) {
|
|
418
|
-
await config.defaultApp?.history.load();
|
|
419
|
-
throw err;
|
|
420
|
-
}
|
|
429
|
+
}).catch(catchFn());
|
|
421
430
|
|
|
422
431
|
const index = this.parent.children.indexOf(this);
|
|
423
432
|
~index && this.parent.children.splice(index, 1);
|
|
@@ -449,7 +458,7 @@ export class View extends Block {
|
|
|
449
458
|
operationDesc: actionOptions?.actionDesc || `修改子页面"${this.name}${this.title ? `(${this.title})` : ''}"`,
|
|
450
459
|
},
|
|
451
460
|
body,
|
|
452
|
-
});
|
|
461
|
+
}).catch(catchFn());
|
|
453
462
|
|
|
454
463
|
await then?.();
|
|
455
464
|
await config.defaultApp?.history.load();
|
|
@@ -5,6 +5,25 @@ import { getBasicTypeDefaultValue } from '../data/basicTypes';
|
|
|
5
5
|
import { viewService } from '../../service/page';
|
|
6
6
|
import { View } from './View';
|
|
7
7
|
import { schemaService } from '../../service/common';
|
|
8
|
+
import { refreshPages, refreshView } from '../cache';
|
|
9
|
+
import { BusinessCode } from '../enum';
|
|
10
|
+
|
|
11
|
+
export function catchFn(view: View) {
|
|
12
|
+
return async (err: any) => {
|
|
13
|
+
const code = err?.code;
|
|
14
|
+
// 节点已存在; 节点不存在
|
|
15
|
+
if([BusinessCode.ElementExist, BusinessCode.ElementNotExist].includes(code)) {
|
|
16
|
+
await refreshView(view);
|
|
17
|
+
} else if(code === BusinessCode.ParentElementNotExist) { // 父节点不存在。视图添加变量,发现视图不存在
|
|
18
|
+
await refreshPages();
|
|
19
|
+
} else
|
|
20
|
+
config.defaultApp?.emit('saved', err);
|
|
21
|
+
|
|
22
|
+
config.defaultApp?.history.load();
|
|
23
|
+
|
|
24
|
+
throw err;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
8
27
|
|
|
9
28
|
/**
|
|
10
29
|
* 页面输入参数
|
|
@@ -56,7 +75,7 @@ export class ViewParam extends Param {
|
|
|
56
75
|
operationDesc: actionOptions?.actionDesc || `添加页面"${this.view.name}"输入参数"${this.name}"`,
|
|
57
76
|
},
|
|
58
77
|
body,
|
|
59
|
-
});
|
|
78
|
+
}).catch(catchFn(this.view));
|
|
60
79
|
// convert2RefType(result.schema);
|
|
61
80
|
this.deepPick(result, ['id']);
|
|
62
81
|
this.assign({ code: this.genCode() });
|
|
@@ -88,7 +107,7 @@ export class ViewParam extends Param {
|
|
|
88
107
|
query: {
|
|
89
108
|
id: this.id,
|
|
90
109
|
},
|
|
91
|
-
});
|
|
110
|
+
}).catch(catchFn(this.view));
|
|
92
111
|
} catch(err) {
|
|
93
112
|
await config.defaultApp?.history.load();
|
|
94
113
|
throw err;
|
|
@@ -129,7 +148,7 @@ export class ViewParam extends Param {
|
|
|
129
148
|
operationDesc: actionOptions?.actionDesc || `修改页面"${this.view.name}"输入参数"${this.name}"`,
|
|
130
149
|
},
|
|
131
150
|
body,
|
|
132
|
-
});
|
|
151
|
+
}).catch(catchFn(this.view));
|
|
133
152
|
// convert2RefType(result.schema);
|
|
134
153
|
// this.plainAssign(result);
|
|
135
154
|
|
|
@@ -5,6 +5,7 @@ import { viewService } from '../../service/page';
|
|
|
5
5
|
import { convert2RefType, convert2SchemaType } from '../data/dataTypeUtils';
|
|
6
6
|
import { getBasicTypeDefaultValue } from '../data/basicTypes';
|
|
7
7
|
import { schemaService } from '../../service/common';
|
|
8
|
+
import { catchFn } from './ViewParam';
|
|
8
9
|
|
|
9
10
|
/**
|
|
10
11
|
* 页面局部变量
|
|
@@ -51,7 +52,7 @@ export class ViewVariable extends Variable {
|
|
|
51
52
|
operationDesc: actionOptions?.actionDesc || `添加页面"${this.view.name}"局部变量"${this.name}"`,
|
|
52
53
|
},
|
|
53
54
|
body,
|
|
54
|
-
});
|
|
55
|
+
}).catch(catchFn(this.view));
|
|
55
56
|
// convert2RefType(result.schema);
|
|
56
57
|
this.deepPick(result, ['id']);
|
|
57
58
|
this.assign({ code: this.genCode() });
|
|
@@ -73,7 +74,6 @@ export class ViewVariable extends Variable {
|
|
|
73
74
|
config.defaultApp?.emit('saving');
|
|
74
75
|
|
|
75
76
|
if (this.id) {
|
|
76
|
-
try {
|
|
77
77
|
await viewService.deleteViewVariable({
|
|
78
78
|
headers: {
|
|
79
79
|
appId: config.defaultApp?.id,
|
|
@@ -83,11 +83,7 @@ export class ViewVariable extends Variable {
|
|
|
83
83
|
query: {
|
|
84
84
|
id: this.id,
|
|
85
85
|
},
|
|
86
|
-
});
|
|
87
|
-
} catch (err) {
|
|
88
|
-
await config.defaultApp?.history.load();
|
|
89
|
-
throw err;
|
|
90
|
-
}
|
|
86
|
+
}).catch(catchFn(this.view));
|
|
91
87
|
}
|
|
92
88
|
|
|
93
89
|
const { variables } = this.view.$def;
|
|
@@ -122,7 +118,7 @@ export class ViewVariable extends Variable {
|
|
|
122
118
|
operationDesc: actionOptions?.actionDesc || `修改页面"${this.view.name}"局部变量"${this.name}"`,
|
|
123
119
|
},
|
|
124
120
|
body,
|
|
125
|
-
});
|
|
121
|
+
}).catch(catchFn(this.view));
|
|
126
122
|
// convert2RefType(result.schema);
|
|
127
123
|
// this.plainAssign(result);
|
|
128
124
|
|