@byteluck-fe/model-driven-engine 2.3.1-beta.25 → 2.3.1-beta.26

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 (40) hide show
  1. package/dist/esm/common/ActionManager.js +273 -0
  2. package/dist/esm/common/DataManager.js +213 -0
  3. package/dist/esm/common/Engine.js +1584 -0
  4. package/dist/esm/common/OkWorker.js +134 -0
  5. package/dist/esm/common/Plugin.js +10 -0
  6. package/dist/esm/common/Runtime.js +306 -0
  7. package/dist/esm/common/Store.js +377 -0
  8. package/dist/esm/common/checkerValue.js +622 -0
  9. package/dist/esm/common/index.js +2 -0
  10. package/dist/esm/common/proxyState.js +315 -0
  11. package/dist/esm/index.js +3 -0
  12. package/dist/esm/plugins/CalcPlugin.js +482 -0
  13. package/dist/esm/plugins/ControlsEventPlugin.js +315 -0
  14. package/dist/esm/plugins/ES6ModulePlugin.js +181 -0
  15. package/dist/esm/plugins/LifecycleEventPlugin.js +320 -0
  16. package/dist/esm/plugins/StylePlugin.js +59 -0
  17. package/dist/esm/plugins/index.js +5 -0
  18. package/dist/esm/utils/index.js +1 -0
  19. package/dist/esm/utils/runtimeUtils.js +43 -0
  20. package/dist/index.umd.js +28 -0
  21. package/dist/types/common/ActionManager.d.ts +14 -0
  22. package/dist/types/common/DataManager.d.ts +10 -0
  23. package/dist/types/common/Engine.d.ts +180 -0
  24. package/dist/types/common/OkWorker.d.ts +13 -0
  25. package/dist/types/common/Plugin.d.ts +6 -0
  26. package/dist/types/common/Runtime.d.ts +25 -0
  27. package/dist/types/common/Store.d.ts +49 -0
  28. package/dist/types/common/checkerValue.d.ts +3 -0
  29. package/dist/types/common/index.d.ts +2 -0
  30. package/dist/types/common/proxyState.d.ts +30 -0
  31. package/dist/types/index.d.ts +3 -0
  32. package/dist/types/plugins/CalcPlugin.d.ts +121 -0
  33. package/dist/types/plugins/ControlsEventPlugin.d.ts +15 -0
  34. package/dist/types/plugins/ES6ModulePlugin.d.ts +26 -0
  35. package/dist/types/plugins/LifecycleEventPlugin.d.ts +14 -0
  36. package/dist/types/plugins/StylePlugin.d.ts +12 -0
  37. package/dist/types/plugins/index.d.ts +5 -0
  38. package/dist/types/utils/index.d.ts +1 -0
  39. package/dist/types/utils/runtimeUtils.d.ts +5 -0
  40. package/package.json +3 -3
@@ -0,0 +1,315 @@
1
+ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
2
+ try {
3
+ var info = gen[key](arg);
4
+ var value = info.value;
5
+ } catch (error) {
6
+ reject(error);
7
+ return;
8
+ }
9
+ if (info.done) {
10
+ resolve(value);
11
+ } else {
12
+ Promise.resolve(value).then(_next, _throw);
13
+ }
14
+ }
15
+ function _asyncToGenerator(fn) {
16
+ return function() {
17
+ var self = this, args = arguments;
18
+ return new Promise(function(resolve, reject) {
19
+ var gen = fn.apply(self, args);
20
+ function _next(value) {
21
+ asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
22
+ }
23
+ function _throw(err) {
24
+ asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
25
+ }
26
+ _next(undefined);
27
+ });
28
+ };
29
+ }
30
+ function _classCallCheck(instance, Constructor) {
31
+ if (!(instance instanceof Constructor)) {
32
+ throw new TypeError("Cannot call a class as a function");
33
+ }
34
+ }
35
+ function _defineProperties(target, props) {
36
+ for(var i = 0; i < props.length; i++){
37
+ var descriptor = props[i];
38
+ descriptor.enumerable = descriptor.enumerable || false;
39
+ descriptor.configurable = true;
40
+ if ("value" in descriptor) descriptor.writable = true;
41
+ Object.defineProperty(target, descriptor.key, descriptor);
42
+ }
43
+ }
44
+ function _createClass(Constructor, protoProps, staticProps) {
45
+ if (protoProps) _defineProperties(Constructor.prototype, protoProps);
46
+ if (staticProps) _defineProperties(Constructor, staticProps);
47
+ return Constructor;
48
+ }
49
+ function _defineProperty(obj, key, value) {
50
+ if (key in obj) {
51
+ Object.defineProperty(obj, key, {
52
+ value: value,
53
+ enumerable: true,
54
+ configurable: true,
55
+ writable: true
56
+ });
57
+ } else {
58
+ obj[key] = value;
59
+ }
60
+ return obj;
61
+ }
62
+ var __generator = this && this.__generator || function(thisArg, body) {
63
+ var f, y, t, g, _ = {
64
+ label: 0,
65
+ sent: function() {
66
+ if (t[0] & 1) throw t[1];
67
+ return t[1];
68
+ },
69
+ trys: [],
70
+ ops: []
71
+ };
72
+ return(g = {
73
+ next: verb(0),
74
+ "throw": verb(1),
75
+ "return": verb(2)
76
+ }, typeof Symbol === "function" && (g[Symbol.iterator] = function() {
77
+ return this;
78
+ }), g);
79
+ function verb(n) {
80
+ return function(v) {
81
+ return step([
82
+ n,
83
+ v
84
+ ]);
85
+ };
86
+ }
87
+ function step(op) {
88
+ if (f) throw new TypeError("Generator is already executing.");
89
+ while(_)try {
90
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
91
+ if (y = 0, t) op = [
92
+ op[0] & 2,
93
+ t.value
94
+ ];
95
+ switch(op[0]){
96
+ case 0:
97
+ case 1:
98
+ t = op;
99
+ break;
100
+ case 4:
101
+ _.label++;
102
+ return {
103
+ value: op[1],
104
+ done: false
105
+ };
106
+ case 5:
107
+ _.label++;
108
+ y = op[1];
109
+ op = [
110
+ 0
111
+ ];
112
+ continue;
113
+ case 7:
114
+ op = _.ops.pop();
115
+ _.trys.pop();
116
+ continue;
117
+ default:
118
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
119
+ _ = 0;
120
+ continue;
121
+ }
122
+ if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
123
+ _.label = op[1];
124
+ break;
125
+ }
126
+ if (op[0] === 6 && _.label < t[1]) {
127
+ _.label = t[1];
128
+ t = op;
129
+ break;
130
+ }
131
+ if (t && _.label < t[2]) {
132
+ _.label = t[2];
133
+ _.ops.push(op);
134
+ break;
135
+ }
136
+ if (t[2]) _.ops.pop();
137
+ _.trys.pop();
138
+ continue;
139
+ }
140
+ op = body.call(thisArg, _);
141
+ } catch (e) {
142
+ op = [
143
+ 6,
144
+ e
145
+ ];
146
+ y = 0;
147
+ } finally{
148
+ f = t = 0;
149
+ }
150
+ if (op[0] & 5) throw op[1];
151
+ return {
152
+ value: op[0] ? op[1] : void 0,
153
+ done: true
154
+ };
155
+ }
156
+ };
157
+ import { EventLogic } from "@byteluck-fe/model-driven-shared";
158
+ // type EventKeyMap = {
159
+ // [eventKey in EventKeys]?: string
160
+ // }
161
+ export var ControlsEventPlugin = /*#__PURE__*/ function() {
162
+ "use strict";
163
+ function ControlsEventPlugin(config) {
164
+ _classCallCheck(this, ControlsEventPlugin);
165
+ _defineProperty(this, "config", void 0);
166
+ _defineProperty(this, "engine", void 0);
167
+ this.config = config;
168
+ }
169
+ _createClass(ControlsEventPlugin, [
170
+ {
171
+ key: "apply",
172
+ value: function apply(engine) {
173
+ var _this = this;
174
+ this.engine = engine;
175
+ // const eventKeyMap: EventKeyMap = {
176
+ // click: 'on_click',
177
+ // change: 'on_change',
178
+ // search: 'on_search',
179
+ // focus: 'on_focus',
180
+ // blur: 'on_blur',
181
+ // input: 'on_input',
182
+ // 'click-finish': 'on_click_finish',
183
+ // 'list-change': 'on_list_change',
184
+ // 'list-delete': 'on_list_delete',
185
+ // 'list-search': 'on_list_search',
186
+ // 'list-mounted': 'on_list_mounted',
187
+ // 'list-actions': 'on_list_actions',
188
+ // 'list-rowclick': 'on_list_rowclick',
189
+ // 'list-before-import': 'on_list_before_import',
190
+ // 'wps-open': 'on_wps_open',
191
+ // 'wps-save': 'on_wps_save',
192
+ // 'wps-rename': 'on_wps_rename',
193
+ // }
194
+ // Object.entries(eventKeyMap).forEach(([eventKey, controlEventKey]) => {
195
+ // if (eventKey && controlEventKey) {
196
+ // this.engineAddEventListener(eventKey as EventKeys, controlEventKey)
197
+ // }
198
+ // })
199
+ EventLogic.events.forEach(function(eventItem) {
200
+ if (eventItem.code && eventItem.key) {
201
+ _this.engineAddEventListener(eventItem.code, eventItem.key);
202
+ }
203
+ });
204
+ }
205
+ },
206
+ {
207
+ key: "engineAddEventListener",
208
+ value: function engineAddEventListener(eventKey, controlEventKey) {
209
+ var _this = this;
210
+ this.engine.on(eventKey, function() {
211
+ var _ref = _asyncToGenerator(function(payload) {
212
+ return __generator(this, function(_state) {
213
+ switch(_state.label){
214
+ case 0:
215
+ // 初始化state的时候不触发change事件,必须在engine mounted以后才触发
216
+ if (eventKey === "change" && !_this.engine.isMounted) {
217
+ return [
218
+ 2
219
+ ];
220
+ }
221
+ if (!(payload.instance !== undefined)) return [
222
+ 3,
223
+ 2
224
+ ];
225
+ return [
226
+ 4,
227
+ _this.callControlEvent(controlEventKey, payload)
228
+ ];
229
+ case 1:
230
+ return [
231
+ 2,
232
+ _state.sent()
233
+ ];
234
+ case 2:
235
+ return [
236
+ 2
237
+ ];
238
+ }
239
+ });
240
+ });
241
+ return function(payload) {
242
+ return _ref.apply(this, arguments);
243
+ };
244
+ }());
245
+ }
246
+ },
247
+ {
248
+ key: "callControlEvent",
249
+ value: function callControlEvent(name, payload) {
250
+ var _this = this;
251
+ return _asyncToGenerator(function() {
252
+ var events, result;
253
+ return __generator(this, function(_state) {
254
+ switch(_state.label){
255
+ case 0:
256
+ events = _this.config[payload.instance.id];
257
+ if (!events || !Array.isArray(events[name])) {
258
+ return [
259
+ 2,
260
+ []
261
+ ];
262
+ }
263
+ return [
264
+ 4,
265
+ Promise.all(events[name].map(function() {
266
+ var _ref = _asyncToGenerator(function(eventName) {
267
+ var execResult;
268
+ return __generator(this, function(_state) {
269
+ switch(_state.label){
270
+ case 0:
271
+ return [
272
+ 4,
273
+ _this.engine.getAction().execAction(eventName, //qiyu 注释掉的两个参数变为全局参数
274
+ // this.engine,
275
+ // this.engine.getAction().actionUtils, //以前是params,空的
276
+ payload)
277
+ ];
278
+ case 1:
279
+ execResult = _state.sent();
280
+ return [
281
+ 2,
282
+ execResult
283
+ ];
284
+ }
285
+ });
286
+ });
287
+ return function(eventName) {
288
+ return _ref.apply(this, arguments);
289
+ };
290
+ }()))
291
+ ];
292
+ case 1:
293
+ result = _state.sent();
294
+ if (result.includes(false)) {
295
+ return [
296
+ 2,
297
+ false
298
+ ];
299
+ } else {
300
+ return [
301
+ 2,
302
+ result
303
+ ];
304
+ }
305
+ return [
306
+ 2
307
+ ];
308
+ }
309
+ });
310
+ })();
311
+ }
312
+ }
313
+ ]);
314
+ return ControlsEventPlugin;
315
+ }();
@@ -0,0 +1,181 @@
1
+ function _arrayLikeToArray(arr, len) {
2
+ if (len == null || len > arr.length) len = arr.length;
3
+ for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
4
+ return arr2;
5
+ }
6
+ function _arrayWithHoles(arr) {
7
+ if (Array.isArray(arr)) return arr;
8
+ }
9
+ function _classCallCheck(instance, Constructor) {
10
+ if (!(instance instanceof Constructor)) {
11
+ throw new TypeError("Cannot call a class as a function");
12
+ }
13
+ }
14
+ function _defineProperties(target, props) {
15
+ for(var i = 0; i < props.length; i++){
16
+ var descriptor = props[i];
17
+ descriptor.enumerable = descriptor.enumerable || false;
18
+ descriptor.configurable = true;
19
+ if ("value" in descriptor) descriptor.writable = true;
20
+ Object.defineProperty(target, descriptor.key, descriptor);
21
+ }
22
+ }
23
+ function _createClass(Constructor, protoProps, staticProps) {
24
+ if (protoProps) _defineProperties(Constructor.prototype, protoProps);
25
+ if (staticProps) _defineProperties(Constructor, staticProps);
26
+ return Constructor;
27
+ }
28
+ function _defineProperty(obj, key, value) {
29
+ if (key in obj) {
30
+ Object.defineProperty(obj, key, {
31
+ value: value,
32
+ enumerable: true,
33
+ configurable: true,
34
+ writable: true
35
+ });
36
+ } else {
37
+ obj[key] = value;
38
+ }
39
+ return obj;
40
+ }
41
+ function _iterableToArrayLimit(arr, i) {
42
+ var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
43
+ if (_i == null) return;
44
+ var _arr = [];
45
+ var _n = true;
46
+ var _d = false;
47
+ var _s, _e;
48
+ try {
49
+ for(_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true){
50
+ _arr.push(_s.value);
51
+ if (i && _arr.length === i) break;
52
+ }
53
+ } catch (err) {
54
+ _d = true;
55
+ _e = err;
56
+ } finally{
57
+ try {
58
+ if (!_n && _i["return"] != null) _i["return"]();
59
+ } finally{
60
+ if (_d) throw _e;
61
+ }
62
+ }
63
+ return _arr;
64
+ }
65
+ function _nonIterableRest() {
66
+ throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
67
+ }
68
+ function _slicedToArray(arr, i) {
69
+ return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
70
+ }
71
+ function _unsupportedIterableToArray(o, minLen) {
72
+ if (!o) return;
73
+ if (typeof o === "string") return _arrayLikeToArray(o, minLen);
74
+ var n = Object.prototype.toString.call(o).slice(8, -1);
75
+ if (n === "Object" && o.constructor) n = o.constructor.name;
76
+ if (n === "Map" || n === "Set") return Array.from(n);
77
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
78
+ }
79
+ import { error } from "@byteluck-fe/model-driven-shared";
80
+ export var ES6ModulePlugin = /*#__PURE__*/ function() {
81
+ "use strict";
82
+ function ES6ModulePlugin(config, env) {
83
+ _classCallCheck(this, ES6ModulePlugin);
84
+ _defineProperty(this, "config", void 0);
85
+ _defineProperty(this, "engine", void 0);
86
+ _defineProperty(this, "env", void 0);
87
+ this.config = config;
88
+ this.env = env;
89
+ }
90
+ _createClass(ES6ModulePlugin, [
91
+ {
92
+ key: "apply",
93
+ value: function apply(engine) {
94
+ this.engine = engine;
95
+ var action = this.config;
96
+ if (!action) {
97
+ return;
98
+ }
99
+ var res = parseModule(action, engine, this.env);
100
+ if (!res) {
101
+ return;
102
+ }
103
+ var actionManager = engine.getAction();
104
+ var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
105
+ try {
106
+ for(var _iterator = Object.entries(res.funcMap)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
107
+ var _step_value = _slicedToArray(_step.value, 2), key = _step_value[0], value = _step_value[1];
108
+ actionManager.addAction(key, value);
109
+ }
110
+ } catch (err) {
111
+ _didIteratorError = true;
112
+ _iteratorError = err;
113
+ } finally{
114
+ try {
115
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
116
+ _iterator.return();
117
+ }
118
+ } finally{
119
+ if (_didIteratorError) {
120
+ throw _iteratorError;
121
+ }
122
+ }
123
+ }
124
+ //qiyu state会proxy,将过深的变量存储会导致崩溃
125
+ // engine.setState('variables', res.variables)
126
+ }
127
+ }
128
+ ]);
129
+ return ES6ModulePlugin;
130
+ }();
131
+ export function parseModule(action, engine, env) {
132
+ if (!action.module || !action.module.compiled) {
133
+ return;
134
+ }
135
+ var compiled = action.module.compiled;
136
+ var module = {
137
+ exports: {
138
+ ctx: engine,
139
+ utils: engine.getAction().actionUtils,
140
+ env: env
141
+ }
142
+ };
143
+ try {
144
+ new Function("module", "exports", compiled).call(module, module, module.exports);
145
+ } catch (e) {
146
+ error(e.message + ". fail to parse the module");
147
+ if (process.env.NODE_ENV !== "production") {
148
+ error("fail to parse the module");
149
+ }
150
+ }
151
+ var funcMap = {};
152
+ var variables = {};
153
+ var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
154
+ try {
155
+ for(var _iterator = Object.entries(module.exports)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true){
156
+ var _step_value = _slicedToArray(_step.value, 2), key = _step_value[0], value = _step_value[1];
157
+ if (typeof value === "function") {
158
+ funcMap[key] = value;
159
+ } else {
160
+ variables[key] = value;
161
+ }
162
+ }
163
+ } catch (err) {
164
+ _didIteratorError = true;
165
+ _iteratorError = err;
166
+ } finally{
167
+ try {
168
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
169
+ _iterator.return();
170
+ }
171
+ } finally{
172
+ if (_didIteratorError) {
173
+ throw _iteratorError;
174
+ }
175
+ }
176
+ }
177
+ return {
178
+ funcMap: funcMap,
179
+ variables: variables
180
+ };
181
+ }