mm_os 2.4.7 → 2.4.9
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.
|
@@ -3,16 +3,10 @@
|
|
|
3
3
|
"app": "admin",
|
|
4
4
|
// 名称, 用于动态增删改配置
|
|
5
5
|
"name": "{0}",
|
|
6
|
-
// 页面位置
|
|
7
|
-
"pages": ["/admin/index"],
|
|
8
|
-
// 位置 side侧边栏、main主体、float浮动栏、header头部、footer尾部
|
|
9
|
-
"position": "main",
|
|
10
6
|
// 标题, 用于查询时
|
|
11
7
|
"title": "示例组件(挂件)",
|
|
12
8
|
// 描述, 用于介绍该组件的作用
|
|
13
9
|
"description": "暂无描述",
|
|
14
|
-
// 时态, 分before之前、main主要、after之后三个时态,
|
|
15
|
-
"tense": "main",
|
|
16
10
|
// 执行顺序, 数值越小的越优先显示
|
|
17
11
|
"sort": 100,
|
|
18
12
|
// 分组, 可以将特有的分一个组, 方便用户查询
|
|
@@ -24,5 +18,11 @@
|
|
|
24
18
|
// 渲染, 非必传,可和脚本文件二选一传
|
|
25
19
|
"template": "./component.html",
|
|
26
20
|
// 状态, 0为未开启 1为开启
|
|
27
|
-
"state": 1
|
|
21
|
+
"state": 1,
|
|
22
|
+
// 定位 由后台指定的展示位置
|
|
23
|
+
"location": [{
|
|
24
|
+
"page": "/admin/index",
|
|
25
|
+
"position": "main",
|
|
26
|
+
"onoff": true
|
|
27
|
+
}]
|
|
28
28
|
}
|
|
@@ -22,16 +22,10 @@ class Drive extends Item {
|
|
|
22
22
|
"app": "admin",
|
|
23
23
|
// 名称, 用于动态增删改配置
|
|
24
24
|
"name": "demo",
|
|
25
|
-
// 页面位置
|
|
26
|
-
"pages": ["/admin/index"],
|
|
27
|
-
// 位置 side侧边栏、main主体、float浮动栏、header头部、footer尾部
|
|
28
|
-
"position": "main",
|
|
29
25
|
// 标题, 用于查询时
|
|
30
26
|
"title": "示例组件",
|
|
31
27
|
// 描述, 用于介绍该组件的作用
|
|
32
28
|
"description": "暂无描述",
|
|
33
|
-
// 时态, 分before之前、main主要、after之后三个时态,
|
|
34
|
-
"tense": "main",
|
|
35
29
|
// 执行顺序, 数值越小的越优先显示
|
|
36
30
|
"sort": 100,
|
|
37
31
|
// 分组, 可以将特有的分一个组, 方便用户查询
|
|
@@ -43,7 +37,9 @@ class Drive extends Item {
|
|
|
43
37
|
// 渲染
|
|
44
38
|
"template": "./component.html",
|
|
45
39
|
// 状态, 0为未开启 1为开启
|
|
46
|
-
"state": 1
|
|
40
|
+
"state": 1,
|
|
41
|
+
// 定位 由后台指定的展示位置
|
|
42
|
+
"location": []
|
|
47
43
|
}
|
|
48
44
|
}
|
|
49
45
|
};
|
|
@@ -57,16 +53,10 @@ Drive.prototype.model = function() {
|
|
|
57
53
|
"app": "admin",
|
|
58
54
|
// 名称, 用于动态增删改配置
|
|
59
55
|
"name": "demo",
|
|
60
|
-
// 页面位置
|
|
61
|
-
"pages": ["/admin/index"],
|
|
62
|
-
// 位置 side侧边栏、main主体、float浮动栏、header头部、footer尾部
|
|
63
|
-
"position": "main",
|
|
64
56
|
// 标题, 用于查询时
|
|
65
57
|
"title": "示例组件",
|
|
66
58
|
// 描述, 用于介绍该组件的作用
|
|
67
59
|
"description": "暂无描述",
|
|
68
|
-
// 时态, 分before之前、main主要、after之后三个时态,
|
|
69
|
-
"tense": "main",
|
|
70
60
|
// 执行顺序, 数值越小的越优先显示
|
|
71
61
|
"sort": 100,
|
|
72
62
|
// 分组, 可以将特有的分一个组, 方便用户查询
|
|
@@ -78,7 +68,40 @@ Drive.prototype.model = function() {
|
|
|
78
68
|
// 渲染, 非必传,可和脚本文件二选一传
|
|
79
69
|
"template": "./component.html",
|
|
80
70
|
// 状态, 0为未开启 1为开启
|
|
81
|
-
"state": 1
|
|
71
|
+
"state": 1,
|
|
72
|
+
// 定位 由后台指定的展示位置
|
|
73
|
+
"location": [{
|
|
74
|
+
"page": "/admin/index",
|
|
75
|
+
"position": "main",
|
|
76
|
+
"onoff": true
|
|
77
|
+
}]
|
|
78
|
+
}
|
|
79
|
+
};
|
|
80
|
+
|
|
81
|
+
/**
|
|
82
|
+
* 新建脚本
|
|
83
|
+
* @param {String} file 文件
|
|
84
|
+
*/
|
|
85
|
+
Drive.prototype.new_script = function(file) {
|
|
86
|
+
var fl = __dirname + "/script.js";
|
|
87
|
+
if (fl.hasFile()) {
|
|
88
|
+
var text = fl.loadText();
|
|
89
|
+
if (text) {
|
|
90
|
+
var l = $.slash;
|
|
91
|
+
var arr = file.split(l);
|
|
92
|
+
var name = arr[arr.length - 2];
|
|
93
|
+
text = text.replaceAll('{0}', name);
|
|
94
|
+
file.saveText(text);
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
var file_html = "./component.html".fullname(file.dirname());
|
|
99
|
+
if (!file_html.hasFile()) {
|
|
100
|
+
var flh = __dirname + "/component.html";
|
|
101
|
+
if (flh.hasFile()) {
|
|
102
|
+
var html = flh.loadText();
|
|
103
|
+
file_html.saveText(html);
|
|
104
|
+
}
|
|
82
105
|
}
|
|
83
106
|
};
|
|
84
107
|
|
|
@@ -22,33 +22,6 @@ class Component extends Index {
|
|
|
22
22
|
}
|
|
23
23
|
}
|
|
24
24
|
|
|
25
|
-
/**
|
|
26
|
-
* 新建脚本
|
|
27
|
-
* @param {String} file 文件
|
|
28
|
-
*/
|
|
29
|
-
Component.prototype.new_script = function(file) {
|
|
30
|
-
var fl = __dirname + "/script.js";
|
|
31
|
-
if (fl.hasFile()) {
|
|
32
|
-
var text = fl.loadText();
|
|
33
|
-
if (text) {
|
|
34
|
-
var l = $.slash;
|
|
35
|
-
var arr = file.split(l);
|
|
36
|
-
var name = arr[arr.length - 2];
|
|
37
|
-
text = text.replaceAll('{0}', name);
|
|
38
|
-
file.saveText(text);
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
var file_html = "./component.html".fullname(file.dirname());
|
|
43
|
-
if (!file_html.hasFile()) {
|
|
44
|
-
var flh = __dirname + "/component.html";
|
|
45
|
-
if (flh.hasFile()) {
|
|
46
|
-
var html = flh.loadText();
|
|
47
|
-
file_html.saveText(html);
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
};
|
|
51
|
-
|
|
52
25
|
|
|
53
26
|
/**
|
|
54
27
|
* 加载列表
|
|
@@ -73,12 +46,31 @@ Component.prototype.load_list = function(list) {
|
|
|
73
46
|
} else {
|
|
74
47
|
var fl = _this.dir_base + "/config.tpl.json";
|
|
75
48
|
if (fl.hasFile()) {
|
|
76
|
-
fl.
|
|
49
|
+
var text = fl.loadText();
|
|
50
|
+
if (text) {
|
|
51
|
+
var l = $.slash;
|
|
52
|
+
var arr = file.split(l);
|
|
53
|
+
var name = arr[arr.length - 2];
|
|
54
|
+
text = text.replaceAll('{0}', name);
|
|
55
|
+
file.saveText(text);
|
|
56
|
+
}
|
|
77
57
|
}
|
|
78
58
|
}
|
|
79
59
|
});
|
|
80
60
|
};
|
|
81
61
|
|
|
62
|
+
/**
|
|
63
|
+
* 排序
|
|
64
|
+
*/
|
|
65
|
+
Component.prototype.sort = function() {
|
|
66
|
+
var _this = this;
|
|
67
|
+
this.list.sort(function(o1, o2) {
|
|
68
|
+
var p1 = o1.config[_this.sort_key];
|
|
69
|
+
var p2 = o2.config[_this.sort_key];
|
|
70
|
+
return p1 - p2;
|
|
71
|
+
});
|
|
72
|
+
};
|
|
73
|
+
|
|
82
74
|
/**
|
|
83
75
|
* 执行渲染
|
|
84
76
|
* @param {String} page 页面
|
|
@@ -94,8 +86,12 @@ Component.prototype.render = async function(page, position, ctx, db) {
|
|
|
94
86
|
for (var i = 0; i < list.length; i++) {
|
|
95
87
|
var o = list[i];
|
|
96
88
|
var cg = o.config;
|
|
97
|
-
if (cg.state
|
|
98
|
-
|
|
89
|
+
if (cg.state) {
|
|
90
|
+
var obj = cg.location.getObj({
|
|
91
|
+
page,
|
|
92
|
+
position
|
|
93
|
+
});
|
|
94
|
+
if (obj && obj.onoff) {
|
|
99
95
|
var ret;
|
|
100
96
|
try {
|
|
101
97
|
ret = await o.run('main', ctx, db);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "mm_os",
|
|
3
|
-
"version": "2.4.
|
|
3
|
+
"version": "2.4.9",
|
|
4
4
|
"description": "这是超级美眉服务端框架,用于快速构建应用程序。",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -37,7 +37,7 @@
|
|
|
37
37
|
"koa-websocket": "^7.0.0",
|
|
38
38
|
"mm_check": "^1.4.8",
|
|
39
39
|
"mm_excel": "^1.2.0",
|
|
40
|
-
"mm_expand": "^1.7.
|
|
40
|
+
"mm_expand": "^1.7.3",
|
|
41
41
|
"mm_html": "^1.1.6",
|
|
42
42
|
"mm_koa_proxy": "^1.0.0",
|
|
43
43
|
"mm_logs": "^1.1.4",
|
|
@@ -52,7 +52,7 @@
|
|
|
52
52
|
"mm_tpl": "^2.3.9",
|
|
53
53
|
"mm_xml": "^1.1.5",
|
|
54
54
|
"mosca": "^2.8.3",
|
|
55
|
-
"mqtt": "^5.10.
|
|
55
|
+
"mqtt": "^5.10.3",
|
|
56
56
|
"publish": "^0.6.0"
|
|
57
57
|
}
|
|
58
58
|
}
|