@ibiz-template/model-helper 0.1.17 → 0.1.19
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/dist/index.esm.js +54 -6
- package/dist/index.system.min.js +1 -1
- package/dist/index.system.min.js.map +1 -1
- package/out/model-helper.d.ts +12 -1
- package/out/model-helper.d.ts.map +1 -1
- package/out/model-helper.js +15 -2
- package/out/model-loader.d.ts +1 -0
- package/out/model-loader.d.ts.map +1 -1
- package/out/model-loader.js +3 -0
- package/out/model-util.d.ts +10 -1
- package/out/model-util.d.ts.map +1 -1
- package/out/model-util.js +37 -2
- package/package.json +3 -3
- package/src/model-helper.ts +15 -0
- package/src/model-loader.ts +4 -0
- package/src/model-util.ts +36 -3
package/out/model-helper.d.ts
CHANGED
|
@@ -12,6 +12,7 @@ import { ModelUtil } from './model-util';
|
|
|
12
12
|
export declare class ModelHelper {
|
|
13
13
|
protected getModel: (url: string) => Promise<IModel>;
|
|
14
14
|
protected defaultAppId: string;
|
|
15
|
+
protected permission: boolean;
|
|
15
16
|
protected dsl: DSLHelper;
|
|
16
17
|
/**
|
|
17
18
|
* 模型获取工具类缓存
|
|
@@ -28,8 +29,9 @@ export declare class ModelHelper {
|
|
|
28
29
|
* @date 2023-04-16 17:04:01
|
|
29
30
|
* @param {(url: string) => Promise<IModel>} getModel 模型加载方法
|
|
30
31
|
* @param {string} defaultAppId 默认应用标识
|
|
32
|
+
* @param {boolean} [permission=true] 是否启用权限
|
|
31
33
|
*/
|
|
32
|
-
constructor(getModel: (url: string) => Promise<IModel>, defaultAppId: string);
|
|
34
|
+
constructor(getModel: (url: string) => Promise<IModel>, defaultAppId: string, permission?: boolean);
|
|
33
35
|
/**
|
|
34
36
|
* 初始化具体应用模型工具类
|
|
35
37
|
*
|
|
@@ -59,6 +61,15 @@ export declare class ModelHelper {
|
|
|
59
61
|
* @return {*} {Promise<IApplication>}
|
|
60
62
|
*/
|
|
61
63
|
getAppModel(appId?: string | IObject): Promise<IApplication>;
|
|
64
|
+
/**
|
|
65
|
+
* 获取应用全局样式
|
|
66
|
+
*
|
|
67
|
+
* @author chitanda
|
|
68
|
+
* @date 2023-09-06 10:09:48
|
|
69
|
+
* @param {(string | IObject)} [appId]
|
|
70
|
+
* @return {*} {(Promise<string | null>)}
|
|
71
|
+
*/
|
|
72
|
+
getAppStyle(appId?: string | IObject): Promise<string | null>;
|
|
62
73
|
/**
|
|
63
74
|
* 根据应用实体 codeName 获取应用实体模型
|
|
64
75
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model-helper.d.ts","sourceRoot":"","sources":["../src/model-helper.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,cAAc,EACd,QAAQ,EACR,YAAY,EACZ,OAAO,EACR,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAIzC;;;;;;;GAOG;AACH,qBAAa,WAAW;
|
|
1
|
+
{"version":3,"file":"model-helper.d.ts","sourceRoot":"","sources":["../src/model-helper.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,cAAc,EACd,QAAQ,EACR,YAAY,EACZ,OAAO,EACR,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAIzC;;;;;;;GAOG;AACH,qBAAa,WAAW;IAsBpB,SAAS,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC;IACpD,SAAS,CAAC,YAAY,EAAE,MAAM;IAC9B,SAAS,CAAC,UAAU,EAAE,OAAO;IAvB/B,SAAS,CAAC,GAAG,YAAmB;IAEhC;;;;;;;OAOG;IACH,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAa;IAEpD;;;;;;;OAOG;gBAES,QAAQ,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,EAC1C,YAAY,EAAE,MAAM,EACpB,UAAU,GAAE,OAAc;IAGtC;;;;;;;;OAQG;IACG,aAAa,CACjB,QAAQ,EAAE,MAAM,EAChB,KAAK,GAAE,MAA0B,GAChC,OAAO,CAAC,IAAI,CAAC;IAehB;;;;;;;;OAQG;cACa,SAAS,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAgClE;;;;;;;OAOG;IACG,WAAW,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC,YAAY,CAAC;IAMlE;;;;;;;OAOG;IACH,WAAW,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAI7D;;;;;;;;;OASG;IACG,qBAAqB,CACzB,IAAI,EAAE,MAAM,EACZ,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,EACxB,IAAI,CAAC,EAAE,OAAO,GACb,OAAO,CAAC,cAAc,CAAC;IAU1B;;;;;;;;OAQG;IACG,eAAe,CACnB,IAAI,EAAE,MAAM,EACZ,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,GACvB,OAAO,CAAC,QAAQ,CAAC;IAKpB;;;;;;;;OAQG;IACG,YAAY,CAChB,QAAQ,EAAE,MAAM,EAChB,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,GACvB,OAAO,CAAC,OAAO,CAAC;IAKnB;;;;;;;;OAQG;IACH,SAAS,CAAC,YAAY,CACpB,OAAO,GAAE,OAAO,GAAG,MAA0B,GAC5C,SAAS;IAQZ;;;;;;;;OAQG;IACH,SAAS,CAAC,SAAS,CAAC,IAAI,GAAE,OAAO,GAAG,MAA0B,GAAG,MAAM;CASxE"}
|
package/out/model-helper.js
CHANGED
|
@@ -17,10 +17,12 @@ export class ModelHelper {
|
|
|
17
17
|
* @date 2023-04-16 17:04:01
|
|
18
18
|
* @param {(url: string) => Promise<IModel>} getModel 模型加载方法
|
|
19
19
|
* @param {string} defaultAppId 默认应用标识
|
|
20
|
+
* @param {boolean} [permission=true] 是否启用权限
|
|
20
21
|
*/
|
|
21
|
-
constructor(getModel, defaultAppId) {
|
|
22
|
+
constructor(getModel, defaultAppId, permission = true) {
|
|
22
23
|
this.getModel = getModel;
|
|
23
24
|
this.defaultAppId = defaultAppId;
|
|
25
|
+
this.permission = permission;
|
|
24
26
|
this.dsl = new DSLHelper();
|
|
25
27
|
/**
|
|
26
28
|
* 模型获取工具类缓存
|
|
@@ -43,7 +45,7 @@ export class ModelHelper {
|
|
|
43
45
|
*/
|
|
44
46
|
async initModelUtil(modelTag, appId = this.defaultAppId) {
|
|
45
47
|
ibiz.hub.registerModelLoaderProvider(new ModelLoader(this));
|
|
46
|
-
const modelUtil = new ModelUtil(appId, modelTag, this.getModel, this.defaultAppId === appId);
|
|
48
|
+
const modelUtil = new ModelUtil(appId, modelTag, this.getModel, this.defaultAppId === appId, this.permission);
|
|
47
49
|
await modelUtil.init();
|
|
48
50
|
this.cache.set(appId, modelUtil);
|
|
49
51
|
await ibiz.hub.getAppAsync(ibiz.env.appId);
|
|
@@ -100,6 +102,17 @@ export class ModelHelper {
|
|
|
100
102
|
const app = this.dsl.application(model);
|
|
101
103
|
return app;
|
|
102
104
|
}
|
|
105
|
+
/**
|
|
106
|
+
* 获取应用全局样式
|
|
107
|
+
*
|
|
108
|
+
* @author chitanda
|
|
109
|
+
* @date 2023-09-06 10:09:48
|
|
110
|
+
* @param {(string | IObject)} [appId]
|
|
111
|
+
* @return {*} {(Promise<string | null>)}
|
|
112
|
+
*/
|
|
113
|
+
getAppStyle(appId) {
|
|
114
|
+
return this.getModelUtil(appId).getAppStyle();
|
|
115
|
+
}
|
|
103
116
|
/**
|
|
104
117
|
* 根据应用实体 codeName 获取应用实体模型
|
|
105
118
|
*
|
package/out/model-loader.d.ts
CHANGED
|
@@ -17,5 +17,6 @@ export declare class ModelLoader implements ModelLoaderProvider {
|
|
|
17
17
|
getAppView(appId: string, codeName: string): Promise<IAppView>;
|
|
18
18
|
getAppDataEntity(appId: string, id: string): Promise<IAppDataEntity>;
|
|
19
19
|
getAppDataEntityByCodeName(appId: string, codeName: string): Promise<IAppDataEntity>;
|
|
20
|
+
getAppStyle(appId: string): Promise<string | null>;
|
|
20
21
|
}
|
|
21
22
|
//# sourceMappingURL=model-loader.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model-loader.d.ts","sourceRoot":"","sources":["../src/model-loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C;;;;;;;;GAQG;AACH,qBAAa,WAAY,YAAW,mBAAmB;IACzC,SAAS,CAAC,MAAM,EAAE,WAAW;gBAAnB,MAAM,EAAE,WAAW;IAEzC,MAAM,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAI1C,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAI9D,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAIpE,0BAA0B,CACxB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"model-loader.d.ts","sourceRoot":"","sources":["../src/model-loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAC1E,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C;;;;;;;;GAQG;AACH,qBAAa,WAAY,YAAW,mBAAmB;IACzC,SAAS,CAAC,MAAM,EAAE,WAAW;gBAAnB,MAAM,EAAE,WAAW;IAEzC,MAAM,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IAI1C,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;IAI9D,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAIpE,0BAA0B,CACxB,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,cAAc,CAAC;IAI1B,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;CAGnD"}
|
package/out/model-loader.js
CHANGED
package/out/model-util.d.ts
CHANGED
|
@@ -12,6 +12,7 @@ export declare class ModelUtil {
|
|
|
12
12
|
protected modelTag: string;
|
|
13
13
|
protected get: (url: string) => Promise<IModel>;
|
|
14
14
|
protected hub: boolean;
|
|
15
|
+
protected permission: boolean;
|
|
15
16
|
/**
|
|
16
17
|
* 模型缓存
|
|
17
18
|
*
|
|
@@ -48,7 +49,7 @@ export declare class ModelUtil {
|
|
|
48
49
|
* @param {(url: string) => Promise<IModel>} get 模型加载方法
|
|
49
50
|
* @param {boolean} hub 是否为 hub 应用基座
|
|
50
51
|
*/
|
|
51
|
-
constructor(appId: string, modelTag: string, get: (url: string) => Promise<IModel>, hub: boolean);
|
|
52
|
+
constructor(appId: string, modelTag: string, get: (url: string) => Promise<IModel>, hub: boolean, permission?: boolean);
|
|
52
53
|
/**
|
|
53
54
|
* 在使用前需要初始化,来进行异步加载
|
|
54
55
|
*
|
|
@@ -65,6 +66,14 @@ export declare class ModelUtil {
|
|
|
65
66
|
* @return {*} {Promise<IModel>}
|
|
66
67
|
*/
|
|
67
68
|
getAppModel(): Promise<IModel>;
|
|
69
|
+
/**
|
|
70
|
+
* 加载应用模型全局样式
|
|
71
|
+
*
|
|
72
|
+
* @author chitanda
|
|
73
|
+
* @date 2023-09-06 10:09:11
|
|
74
|
+
* @return {*} {(Promise<string | null>)}
|
|
75
|
+
*/
|
|
76
|
+
getAppStyle(): Promise<string | null>;
|
|
68
77
|
/**
|
|
69
78
|
* 根据应用实体 codeName 或者 id 获取应用实体模型
|
|
70
79
|
*
|
package/out/model-util.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model-util.d.ts","sourceRoot":"","sources":["../src/model-util.ts"],"names":[],"mappings":"AAEA,OAAO,EAAc,eAAe,EAAE,MAAM,SAAS,CAAC;AAEtD;;;;;;;GAOG;AACH,qBAAa,SAAS;IAyClB,SAAS,CAAC,KAAK,EAAE,MAAM;IACvB,SAAS,CAAC,QAAQ,EAAE,MAAM;IAC1B,SAAS,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC;IAC/C,SAAS,CAAC,GAAG,EAAE,OAAO;
|
|
1
|
+
{"version":3,"file":"model-util.d.ts","sourceRoot":"","sources":["../src/model-util.ts"],"names":[],"mappings":"AAEA,OAAO,EAAc,eAAe,EAAE,MAAM,SAAS,CAAC;AAEtD;;;;;;;GAOG;AACH,qBAAa,SAAS;IAyClB,SAAS,CAAC,KAAK,EAAE,MAAM;IACvB,SAAS,CAAC,QAAQ,EAAE,MAAM;IAC1B,SAAS,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC;IAC/C,SAAS,CAAC,GAAG,EAAE,OAAO;IACtB,SAAS,CAAC,UAAU,EAAE,OAAO;IA5C/B;;;;;;;OAOG;IACH,SAAS,CAAC,UAAU,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAa;IAEtD;;;;;;;OAOG;IACH,SAAS,CAAC,QAAQ,EAAG,MAAM,CAAC;IAE5B;;;;;;OAMG;IACH,eAAe,EAAG,eAAe,CAAC;IAElC;;;;;;;;;OASG;gBAES,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,EACrC,GAAG,EAAE,OAAO,EACZ,UAAU,GAAE,OAAc;IAGtC;;;;;;OAMG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAgC3B;;;;;;OAMG;IACG,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC;IAepC;;;;;;OAMG;IACG,WAAW,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAoB3C;;;;;;;;;OASG;IACG,qBAAqB,CACzB,GAAG,EAAE,MAAM,EACX,IAAI,GAAE,OAAc,EACpB,UAAU,GAAE,OAAe,GAC1B,OAAO,CAAC,MAAM,CAAC;IA2BlB;;;;;;;;OAQG;IACG,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAenD;;;;;;;OAOG;IACG,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAarD;;;;;;;OAOG;IACG,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAgBlD;;;;;;;OAOG;IACH,SAAS,CAAC,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAmB5C;;;;;;;;OAQG;IACH,SAAS,CAAC,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;IAMhD;;;;;;;;OAQG;IACH,SAAS,CAAC,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;CAKpD"}
|
package/out/model-util.js
CHANGED
|
@@ -19,11 +19,12 @@ export class ModelUtil {
|
|
|
19
19
|
* @param {(url: string) => Promise<IModel>} get 模型加载方法
|
|
20
20
|
* @param {boolean} hub 是否为 hub 应用基座
|
|
21
21
|
*/
|
|
22
|
-
constructor(appId, modelTag, get, hub) {
|
|
22
|
+
constructor(appId, modelTag, get, hub, permission = true) {
|
|
23
23
|
this.appId = appId;
|
|
24
24
|
this.modelTag = modelTag;
|
|
25
25
|
this.get = get;
|
|
26
26
|
this.hub = hub;
|
|
27
|
+
this.permission = permission;
|
|
27
28
|
/**
|
|
28
29
|
* 模型缓存
|
|
29
30
|
*
|
|
@@ -77,11 +78,45 @@ export class ModelUtil {
|
|
|
77
78
|
*/
|
|
78
79
|
async getAppModel() {
|
|
79
80
|
if (!this.appModel) {
|
|
80
|
-
|
|
81
|
+
let appPath = '/PSSYSAPP.json';
|
|
82
|
+
if (this.hub && ibiz.env.hub) {
|
|
83
|
+
appPath = `/PSSYSAPP.hub.json`;
|
|
84
|
+
}
|
|
85
|
+
if (this.permission === false) {
|
|
86
|
+
appPath = `/simple/PSSYSAPP.simple.json`;
|
|
87
|
+
}
|
|
88
|
+
this.appModel = await this.getModel(appPath);
|
|
81
89
|
this.appModel.id = this.appId;
|
|
82
90
|
}
|
|
83
91
|
return this.appModel;
|
|
84
92
|
}
|
|
93
|
+
/**
|
|
94
|
+
* 加载应用模型全局样式
|
|
95
|
+
*
|
|
96
|
+
* @author chitanda
|
|
97
|
+
* @date 2023-09-06 10:09:11
|
|
98
|
+
* @return {*} {(Promise<string | null>)}
|
|
99
|
+
*/
|
|
100
|
+
async getAppStyle() {
|
|
101
|
+
let style = '';
|
|
102
|
+
try {
|
|
103
|
+
let stylePath = '/PSSYSAPP.json.css';
|
|
104
|
+
if (this.hub && ibiz.env.hub) {
|
|
105
|
+
stylePath = `/PSSYSAPP.hub.json.css`;
|
|
106
|
+
}
|
|
107
|
+
if (this.permission === false) {
|
|
108
|
+
stylePath = `/simple/PSSYSAPP.simple.json.css`;
|
|
109
|
+
}
|
|
110
|
+
style = (await this.getModel(stylePath));
|
|
111
|
+
if (style) {
|
|
112
|
+
return style;
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
catch (error) {
|
|
116
|
+
// 忽略样式加载异常
|
|
117
|
+
}
|
|
118
|
+
return null;
|
|
119
|
+
}
|
|
85
120
|
/**
|
|
86
121
|
* 根据应用实体 codeName 或者 id 获取应用实体模型
|
|
87
122
|
*
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ibiz-template/model-helper",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.19",
|
|
4
4
|
"description": "控制器包",
|
|
5
5
|
"main": "out/index.js",
|
|
6
6
|
"types": "out/index.d.ts",
|
|
@@ -34,11 +34,11 @@
|
|
|
34
34
|
"pluralize": "^8.0.0"
|
|
35
35
|
},
|
|
36
36
|
"devDependencies": {
|
|
37
|
-
"@ibiz-template/runtime": "^0.1.
|
|
37
|
+
"@ibiz-template/runtime": "^0.1.19",
|
|
38
38
|
"@types/pluralize": "^0.0.30"
|
|
39
39
|
},
|
|
40
40
|
"peerDependencies": {
|
|
41
41
|
"@ibiz-template/runtime": "^0.1.0"
|
|
42
42
|
},
|
|
43
|
-
"gitHead": "
|
|
43
|
+
"gitHead": "62b9073941f08f79c2a5ae70c9b895d1a9300c26"
|
|
44
44
|
}
|
package/src/model-helper.ts
CHANGED
|
@@ -37,10 +37,12 @@ export class ModelHelper {
|
|
|
37
37
|
* @date 2023-04-16 17:04:01
|
|
38
38
|
* @param {(url: string) => Promise<IModel>} getModel 模型加载方法
|
|
39
39
|
* @param {string} defaultAppId 默认应用标识
|
|
40
|
+
* @param {boolean} [permission=true] 是否启用权限
|
|
40
41
|
*/
|
|
41
42
|
constructor(
|
|
42
43
|
protected getModel: (url: string) => Promise<IModel>,
|
|
43
44
|
protected defaultAppId: string,
|
|
45
|
+
protected permission: boolean = true,
|
|
44
46
|
) {}
|
|
45
47
|
|
|
46
48
|
/**
|
|
@@ -62,6 +64,7 @@ export class ModelHelper {
|
|
|
62
64
|
modelTag,
|
|
63
65
|
this.getModel,
|
|
64
66
|
this.defaultAppId === appId,
|
|
67
|
+
this.permission,
|
|
65
68
|
);
|
|
66
69
|
await modelUtil.init();
|
|
67
70
|
this.cache.set(appId, modelUtil);
|
|
@@ -124,6 +127,18 @@ export class ModelHelper {
|
|
|
124
127
|
return app;
|
|
125
128
|
}
|
|
126
129
|
|
|
130
|
+
/**
|
|
131
|
+
* 获取应用全局样式
|
|
132
|
+
*
|
|
133
|
+
* @author chitanda
|
|
134
|
+
* @date 2023-09-06 10:09:48
|
|
135
|
+
* @param {(string | IObject)} [appId]
|
|
136
|
+
* @return {*} {(Promise<string | null>)}
|
|
137
|
+
*/
|
|
138
|
+
getAppStyle(appId?: string | IObject): Promise<string | null> {
|
|
139
|
+
return this.getModelUtil(appId).getAppStyle();
|
|
140
|
+
}
|
|
141
|
+
|
|
127
142
|
/**
|
|
128
143
|
* 根据应用实体 codeName 获取应用实体模型
|
|
129
144
|
*
|
package/src/model-loader.ts
CHANGED
|
@@ -32,4 +32,8 @@ export class ModelLoader implements ModelLoaderProvider {
|
|
|
32
32
|
): Promise<IAppDataEntity> {
|
|
33
33
|
return this.helper.getAppDataEntityModel(codeName, appId, false);
|
|
34
34
|
}
|
|
35
|
+
|
|
36
|
+
getAppStyle(appId: string): Promise<string | null> {
|
|
37
|
+
return this.helper.getAppStyle(appId);
|
|
38
|
+
}
|
|
35
39
|
}
|
package/src/model-util.ts
CHANGED
|
@@ -55,6 +55,7 @@ export class ModelUtil {
|
|
|
55
55
|
protected modelTag: string,
|
|
56
56
|
protected get: (url: string) => Promise<IModel>,
|
|
57
57
|
protected hub: boolean,
|
|
58
|
+
protected permission: boolean = true,
|
|
58
59
|
) {}
|
|
59
60
|
|
|
60
61
|
/**
|
|
@@ -105,14 +106,46 @@ export class ModelUtil {
|
|
|
105
106
|
*/
|
|
106
107
|
async getAppModel(): Promise<IModel> {
|
|
107
108
|
if (!this.appModel) {
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
109
|
+
let appPath: string = '/PSSYSAPP.json';
|
|
110
|
+
if (this.hub && ibiz.env.hub) {
|
|
111
|
+
appPath = `/PSSYSAPP.hub.json`;
|
|
112
|
+
}
|
|
113
|
+
if (this.permission === false) {
|
|
114
|
+
appPath = `/simple/PSSYSAPP.simple.json`;
|
|
115
|
+
}
|
|
116
|
+
this.appModel = await this.getModel(appPath);
|
|
111
117
|
this.appModel.id = this.appId;
|
|
112
118
|
}
|
|
113
119
|
return this.appModel;
|
|
114
120
|
}
|
|
115
121
|
|
|
122
|
+
/**
|
|
123
|
+
* 加载应用模型全局样式
|
|
124
|
+
*
|
|
125
|
+
* @author chitanda
|
|
126
|
+
* @date 2023-09-06 10:09:11
|
|
127
|
+
* @return {*} {(Promise<string | null>)}
|
|
128
|
+
*/
|
|
129
|
+
async getAppStyle(): Promise<string | null> {
|
|
130
|
+
let style: string = '';
|
|
131
|
+
try {
|
|
132
|
+
let stylePath: string = '/PSSYSAPP.json.css';
|
|
133
|
+
if (this.hub && ibiz.env.hub) {
|
|
134
|
+
stylePath = `/PSSYSAPP.hub.json.css`;
|
|
135
|
+
}
|
|
136
|
+
if (this.permission === false) {
|
|
137
|
+
stylePath = `/simple/PSSYSAPP.simple.json.css`;
|
|
138
|
+
}
|
|
139
|
+
style = (await this.getModel(stylePath)) as unknown as string;
|
|
140
|
+
if (style) {
|
|
141
|
+
return style;
|
|
142
|
+
}
|
|
143
|
+
} catch (error) {
|
|
144
|
+
// 忽略样式加载异常
|
|
145
|
+
}
|
|
146
|
+
return null;
|
|
147
|
+
}
|
|
148
|
+
|
|
116
149
|
/**
|
|
117
150
|
* 根据应用实体 codeName 或者 id 获取应用实体模型
|
|
118
151
|
*
|