mm_os 4.3.6 → 4.3.7

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.
Files changed (45) hide show
  1. package/com/mqtt/drive.js +12 -4
  2. package/com/mqtt/index.js +60 -25
  3. package/com/mqtt/script.tpl.js +2 -2
  4. package/com/nav/tpl/admin_pc/page_channel.vue +5 -5
  5. package/com/nav/tpl/admin_pc/page_config.vue +5 -5
  6. package/com/nav/tpl/admin_pc/page_config_form.vue +1 -1
  7. package/com/nav/tpl/admin_pc/page_default.vue +5 -5
  8. package/com/nav/tpl/admin_pc/page_form.vue +1 -1
  9. package/com/nav/tpl/admin_pc/page_lang.vue +5 -5
  10. package/com/nav/tpl/admin_pc/page_nav.vue +5 -5
  11. package/com/nav/tpl/admin_pc/page_table.vue +5 -5
  12. package/com/nav/tpl/admin_pc/page_type.vue +5 -5
  13. package/com/nav/tpl/admin_pc/page_view.vue +1 -1
  14. package/com/nav/tpl/dev_pc/page_channel.vue +5 -5
  15. package/com/nav/tpl/dev_pc/page_config.vue +5 -5
  16. package/com/nav/tpl/dev_pc/page_default.vue +5 -5
  17. package/com/nav/tpl/dev_pc/page_form.vue +1 -1
  18. package/com/nav/tpl/dev_pc/page_nav.vue +5 -5
  19. package/com/nav/tpl/dev_pc/page_table.vue +5 -5
  20. package/com/nav/tpl/dev_pc/page_type.vue +6 -6
  21. package/com/nav/tpl/home_pc/page_channel.vue +5 -5
  22. package/com/nav/tpl/home_pc/page_default.vue +5 -5
  23. package/com/nav/tpl/home_pc/page_form.vue +1 -1
  24. package/com/nav/tpl/home_pc/page_list.vue +5 -5
  25. package/com/nav/tpl/home_pc/page_nav.vue +5 -5
  26. package/com/nav/tpl/home_pc/page_type.vue +5 -5
  27. package/com/nav/tpl/home_pc/page_view.vue +1 -1
  28. package/com/nav/tpl/home_phone/page_channel.vue +5 -5
  29. package/com/nav/tpl/home_phone/page_default.vue +5 -5
  30. package/com/nav/tpl/home_phone/page_form.vue +1 -1
  31. package/com/nav/tpl/home_phone/page_list.vue +5 -5
  32. package/com/nav/tpl/home_phone/page_nav.vue +5 -5
  33. package/com/nav/tpl/home_phone/page_type.vue +5 -5
  34. package/com/nav/tpl/home_phone/page_view.vue +1 -1
  35. package/com/pendant/index.js +39 -39
  36. package/com/sql/drive.js +49 -4
  37. package/com/template/index.js +141 -141
  38. package/common/middleware/web_waf/index.js +49 -39
  39. package/core/app/index.js +711 -710
  40. package/core/plugin/index.js +13 -43
  41. package/core/store/index.js +146 -146
  42. package/package.json +21 -17
  43. package/server.js +7 -0
  44. package/com/mqtt/mm_mqtt.js +0 -446
  45. package/core/store/sql.js +0 -1488
@@ -32,7 +32,6 @@ class Plugin extends Drive {
32
32
  */
33
33
  constructor(config, parent) {
34
34
  super({ ...Plugin.config, ...(config || {}) }, parent);
35
- this.options = {};
36
35
  }
37
36
  }
38
37
 
@@ -75,8 +74,7 @@ Plugin.prototype._initCore = async function (app, eventer, logger) {
75
74
  // await this._loadSources();
76
75
  // // 初始化资源
77
76
  // await this._initSources();
78
- // 初始化配置
79
- this._initOptions();
77
+ this._preset();
80
78
  };
81
79
 
82
80
  /**
@@ -88,22 +86,6 @@ Plugin.prototype.getApp = function () {
88
86
  return this.getParent();
89
87
  };
90
88
 
91
- /**
92
- * 获取插件配置
93
- * @returns {object} 插件配置
94
- */
95
- Plugin.prototype.getOptions = function () {
96
- return this.options;
97
- };
98
-
99
- /**
100
- * 初始化插件选项
101
- * 从config.options中提取默认值,mm_machine的save/load机制负责持久化
102
- */
103
- Plugin.prototype._initOptions = function () {
104
- this.options = this.getConfigOptions();
105
- };
106
-
107
89
  /**
108
90
  * 转换数字类型值
109
91
  * @param {*} value 原始值
@@ -190,20 +172,6 @@ Plugin.prototype._convertOptionValue = function (option) {
190
172
  }
191
173
  };
192
174
 
193
- /**
194
- * 获取配置参数
195
- * @returns {object} 返回配置参数
196
- */
197
- Plugin.prototype.getConfigOptions = function () {
198
- var op = this.config.options || [];
199
- var dict = {};
200
- for (var i = 0; i < op.length; i++) {
201
- var o = op[i];
202
- dict[o.name] = this._convertOptionValue(o);
203
- }
204
- return dict;
205
- };
206
-
207
175
  /**
208
176
  * 设计配置
209
177
  * @param {object} body 配置参数
@@ -228,21 +196,23 @@ Plugin.prototype.designOptions = function (body) {
228
196
 
229
197
  /**
230
198
  * 保存配置
231
- * 更新options字典和config.options数组中的值,并通过mm_machine的save()持久化
199
+ * 更新options字典并通过mm_machine的setOptionsToFile()持久化到缓存文件
232
200
  * @param {object} options 配置参数
201
+ * @throws {TypeError} 参数类型错误时抛出
233
202
  */
234
203
  Plugin.prototype.saveOptions = function (options) {
235
- this.options = options;
236
- var config_options = this.config.options;
237
- if (config_options) {
238
- for (var i = 0; i < config_options.length; i++) {
239
- var o = config_options[i];
240
- if (o.name in options) {
241
- o.value = options[o.name];
242
- }
204
+ if (!options || typeof options !== 'object') {
205
+ throw new TypeError('配置参数必须是对象');
206
+ }
207
+ if (!this._options) {
208
+ this._options = {};
209
+ }
210
+ for (var key in options) {
211
+ if (options.hasOwnProperty(key)) {
212
+ this._options[key] = options[key];
243
213
  }
244
214
  }
245
- this.save();
215
+ this.setOptionsToFile();
246
216
  };
247
217
 
248
218
  /**