@byteluck-fe/model-driven-engine 2.2.2 → 2.3.1-beta.2
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/esm/common/ActionManager.js +33 -136
- package/dist/esm/common/DataManager.js +18 -113
- package/dist/esm/common/Engine.js +116 -198
- package/dist/esm/common/OkWorker.js +5 -5
- package/dist/esm/common/Runtime.js +25 -0
- package/dist/esm/common/Store.js +10 -10
- package/dist/esm/common/checkerValue.js +2 -2
- package/dist/esm/common/proxyState.js +9 -9
- package/dist/esm/plugins/CalcPlugin.js +17 -17
- package/dist/esm/plugins/ControlsEventPlugin.js +67 -175
- package/dist/esm/plugins/ES6ModulePlugin.js +2 -2
- package/dist/esm/plugins/LifecycleEventPlugin.js +61 -165
- package/dist/esm/plugins/StylePlugin.js +3 -3
- package/dist/esm/utils/runtimeUtils.js +5 -2
- package/dist/index.umd.js +8 -8
- package/dist/types/common/Engine.d.ts +12 -8
- package/dist/types/common/Runtime.d.ts +5 -1
- package/dist/types/common/Store.d.ts +5 -5
- package/dist/types/common/proxyState.d.ts +3 -3
- package/dist/types/plugins/ControlsEventPlugin.d.ts +1 -1
- package/dist/types/plugins/ES6ModulePlugin.d.ts +4 -4
- package/dist/types/plugins/LifecycleEventPlugin.d.ts +1 -1
- package/dist/types/plugins/StylePlugin.d.ts +1 -1
- package/package.json +6 -5
|
@@ -238,101 +238,7 @@ function _createSuper(Derived) {
|
|
|
238
238
|
return _possibleConstructorReturn(this, result);
|
|
239
239
|
};
|
|
240
240
|
}
|
|
241
|
-
|
|
242
|
-
var f, y, t, g, _ = {
|
|
243
|
-
label: 0,
|
|
244
|
-
sent: function() {
|
|
245
|
-
if (t[0] & 1) throw t[1];
|
|
246
|
-
return t[1];
|
|
247
|
-
},
|
|
248
|
-
trys: [],
|
|
249
|
-
ops: []
|
|
250
|
-
};
|
|
251
|
-
return g = {
|
|
252
|
-
next: verb(0),
|
|
253
|
-
"throw": verb(1),
|
|
254
|
-
"return": verb(2)
|
|
255
|
-
}, typeof Symbol === "function" && (g[Symbol.iterator] = function() {
|
|
256
|
-
return this;
|
|
257
|
-
}), g;
|
|
258
|
-
function verb(n) {
|
|
259
|
-
return function(v) {
|
|
260
|
-
return step([
|
|
261
|
-
n,
|
|
262
|
-
v
|
|
263
|
-
]);
|
|
264
|
-
};
|
|
265
|
-
}
|
|
266
|
-
function step(op) {
|
|
267
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
268
|
-
while(_)try {
|
|
269
|
-
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;
|
|
270
|
-
if (y = 0, t) op = [
|
|
271
|
-
op[0] & 2,
|
|
272
|
-
t.value
|
|
273
|
-
];
|
|
274
|
-
switch(op[0]){
|
|
275
|
-
case 0:
|
|
276
|
-
case 1:
|
|
277
|
-
t = op;
|
|
278
|
-
break;
|
|
279
|
-
case 4:
|
|
280
|
-
_.label++;
|
|
281
|
-
return {
|
|
282
|
-
value: op[1],
|
|
283
|
-
done: false
|
|
284
|
-
};
|
|
285
|
-
case 5:
|
|
286
|
-
_.label++;
|
|
287
|
-
y = op[1];
|
|
288
|
-
op = [
|
|
289
|
-
0
|
|
290
|
-
];
|
|
291
|
-
continue;
|
|
292
|
-
case 7:
|
|
293
|
-
op = _.ops.pop();
|
|
294
|
-
_.trys.pop();
|
|
295
|
-
continue;
|
|
296
|
-
default:
|
|
297
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
|
|
298
|
-
_ = 0;
|
|
299
|
-
continue;
|
|
300
|
-
}
|
|
301
|
-
if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
|
|
302
|
-
_.label = op[1];
|
|
303
|
-
break;
|
|
304
|
-
}
|
|
305
|
-
if (op[0] === 6 && _.label < t[1]) {
|
|
306
|
-
_.label = t[1];
|
|
307
|
-
t = op;
|
|
308
|
-
break;
|
|
309
|
-
}
|
|
310
|
-
if (t && _.label < t[2]) {
|
|
311
|
-
_.label = t[2];
|
|
312
|
-
_.ops.push(op);
|
|
313
|
-
break;
|
|
314
|
-
}
|
|
315
|
-
if (t[2]) _.ops.pop();
|
|
316
|
-
_.trys.pop();
|
|
317
|
-
continue;
|
|
318
|
-
}
|
|
319
|
-
op = body.call(thisArg, _);
|
|
320
|
-
} catch (e) {
|
|
321
|
-
op = [
|
|
322
|
-
6,
|
|
323
|
-
e
|
|
324
|
-
];
|
|
325
|
-
y = 0;
|
|
326
|
-
} finally{
|
|
327
|
-
f = t = 0;
|
|
328
|
-
}
|
|
329
|
-
if (op[0] & 5) throw op[1];
|
|
330
|
-
return {
|
|
331
|
-
value: op[0] ? op[1] : void 0,
|
|
332
|
-
done: true
|
|
333
|
-
};
|
|
334
|
-
}
|
|
335
|
-
};
|
|
241
|
+
import regeneratorRuntime from "regenerator-runtime";
|
|
336
242
|
import { DataBind, ObjectDataBind, RuntimeListControl } from "@byteluck-fe/model-driven-core";
|
|
337
243
|
import { CONTROL_BASE_TYPE, CONTROL_TYPE, DEFAULT_LOCALE, error, genNonDuplicateId, isString, JSONCopy, log, RulesMessage, updateValueFromKeys, warn, Watcher } from "@byteluck-fe/model-driven-shared";
|
|
338
244
|
import { Runtime } from "./Runtime";
|
|
@@ -368,8 +274,8 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
368
274
|
_this._jobTasks = [];
|
|
369
275
|
_this.createControlInstance = _this.createInstance;
|
|
370
276
|
_this.$options = Object.freeze(props);
|
|
371
|
-
var
|
|
372
|
-
language, language =
|
|
277
|
+
var _$options = _this.$options, _autoMount = _$options.autoMount, autoMount = _autoMount === void 0 ? true : _autoMount, schema = _$options.schema, beforeCreateInstance = _$options.beforeCreateInstance, externalParams = _$options.externalParams, _language = _$options.// fieldModel,
|
|
278
|
+
language, language = _language === void 0 ? DEFAULT_LOCALE : _language, _debug = _$options.debug, debug = _debug === void 0 ? false : _debug;
|
|
373
279
|
RulesMessage.setLocale(language);
|
|
374
280
|
_this.debug = debug;
|
|
375
281
|
_this.runtime = new Runtime({
|
|
@@ -403,13 +309,13 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
403
309
|
for(var _len = arguments.length, arg = new Array(_len), _key = 0; _key < _len; _key++){
|
|
404
310
|
arg[_key] = arguments[_key];
|
|
405
311
|
}
|
|
406
|
-
var
|
|
407
|
-
(
|
|
312
|
+
var _runtime;
|
|
313
|
+
(_runtime = this.runtime).register.apply(_runtime, _toConsumableArray(arg));
|
|
408
314
|
return this;
|
|
409
315
|
};
|
|
410
316
|
_proto.mount = function mount() {
|
|
411
317
|
this.debugLog("engine的mount方法开始调用");
|
|
412
|
-
var
|
|
318
|
+
var _$options = this.$options, _plugins = _$options.plugins, plugins = _plugins === void 0 ? [] : _plugins;
|
|
413
319
|
this._handlerProxyState();
|
|
414
320
|
this.__plugins = plugins;
|
|
415
321
|
this.applyPlugins();
|
|
@@ -499,17 +405,17 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
499
405
|
switch(type){
|
|
500
406
|
case "push":
|
|
501
407
|
case "unshift":
|
|
502
|
-
var
|
|
408
|
+
var _children;
|
|
503
409
|
var newRowLengths = args.length;
|
|
504
410
|
createdNewRows = createRows(newRowLengths);
|
|
505
411
|
createdNewRowsData = args;
|
|
506
|
-
(
|
|
412
|
+
(_children = subtable.children)[type].apply(_children, _toConsumableArray(createdNewRows));
|
|
507
413
|
this.runtime.getFlatInstances();
|
|
508
414
|
break;
|
|
509
415
|
case "splice":
|
|
510
416
|
if (args.length > 2) {
|
|
511
417
|
var // @ts-ignore
|
|
512
|
-
|
|
418
|
+
_children1;
|
|
513
419
|
var newRowLengths1 = args.length - 2;
|
|
514
420
|
var newValues = args.slice(2);
|
|
515
421
|
createdNewRows = createRows(newRowLengths1);
|
|
@@ -518,7 +424,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
518
424
|
var start = args[0];
|
|
519
425
|
// 替换几个
|
|
520
426
|
var replace = args[1];
|
|
521
|
-
(
|
|
427
|
+
(_children1 = subtable.children)[type].apply(_children1, [
|
|
522
428
|
start,
|
|
523
429
|
replace
|
|
524
430
|
].concat(_toConsumableArray(createdNewRows)));
|
|
@@ -529,15 +435,15 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
529
435
|
// })
|
|
530
436
|
} else {
|
|
531
437
|
var // @ts-ignore
|
|
532
|
-
|
|
533
|
-
(
|
|
438
|
+
_children2;
|
|
439
|
+
(_children2 = subtable.children)[type].apply(_children2, _toConsumableArray(args));
|
|
534
440
|
this.runtime.getFlatInstances();
|
|
535
441
|
}
|
|
536
442
|
break;
|
|
537
443
|
default:
|
|
538
444
|
var // @ts-ignore
|
|
539
|
-
|
|
540
|
-
(
|
|
445
|
+
_children3;
|
|
446
|
+
(_children3 = subtable.children)[type].apply(_children3, _toConsumableArray(args));
|
|
541
447
|
this.runtime.getFlatInstances();
|
|
542
448
|
break;
|
|
543
449
|
}
|
|
@@ -575,7 +481,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
575
481
|
// if (instance instanceof RuntimeListControl) {
|
|
576
482
|
if (instance.controlType === CONTROL_BASE_TYPE.LIST) {
|
|
577
483
|
var // @ts-ignore
|
|
578
|
-
|
|
484
|
+
_children;
|
|
579
485
|
instance.children.length = 0;
|
|
580
486
|
var newValue = value;
|
|
581
487
|
// @ts-ignore
|
|
@@ -585,7 +491,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
585
491
|
var row = this.listControlCreateRow(instance, "subtable-row");
|
|
586
492
|
row && newRows.push(row);
|
|
587
493
|
}
|
|
588
|
-
(
|
|
494
|
+
(_children = instance.children).push.apply(_children, _toConsumableArray(newRows));
|
|
589
495
|
this.runtime.getFlatInstances();
|
|
590
496
|
// 这里已经能拿到控件实例,所以在这里触发setStates,触发每一行每一个控件的change事件
|
|
591
497
|
// for (let i = 0; i < newValue.length; i++) {
|
|
@@ -617,8 +523,8 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
617
523
|
if (this.__pluginsApplied) return;
|
|
618
524
|
this.__plugins.forEach(function(plugin) {
|
|
619
525
|
try {
|
|
620
|
-
var
|
|
621
|
-
applyingPluginName = (
|
|
526
|
+
var _pluginName;
|
|
527
|
+
applyingPluginName = (_pluginName = plugin.pluginName) !== null && _pluginName !== void 0 ? _pluginName : plugin.constructor.name;
|
|
622
528
|
plugin.apply(_this);
|
|
623
529
|
} catch (e) {
|
|
624
530
|
error("".concat(applyingPluginName, " Plugin apply Error \n ").concat(e));
|
|
@@ -634,12 +540,12 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
634
540
|
// if (row instanceof RuntimeLayoutControl) {
|
|
635
541
|
// @ts-ignore
|
|
636
542
|
if (row.controlType === CONTROL_BASE_TYPE.LAYOUT) {
|
|
637
|
-
var
|
|
543
|
+
var _children;
|
|
638
544
|
var inst = row;
|
|
639
545
|
var template = JSONCopy(instance.props.headers);
|
|
640
546
|
// @ts-ignore
|
|
641
547
|
var columns = this.createControl(template);
|
|
642
|
-
(
|
|
548
|
+
(_children = inst.children).push.apply(_children, _toConsumableArray(columns));
|
|
643
549
|
}
|
|
644
550
|
return row;
|
|
645
551
|
};
|
|
@@ -656,40 +562,37 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
656
562
|
var _this1 = this, _superprop_get_emit = function() {
|
|
657
563
|
return _get(_getPrototypeOf(Engine.prototype), "emit", _this);
|
|
658
564
|
};
|
|
659
|
-
return _asyncToGenerator(function() {
|
|
565
|
+
return _asyncToGenerator(/*#__PURE__*/ regeneratorRuntime.mark(function _callee() {
|
|
660
566
|
var needWait, promiseResolver, promise, results;
|
|
661
|
-
return
|
|
662
|
-
switch(
|
|
567
|
+
return regeneratorRuntime.wrap(function _callee$(_ctx) {
|
|
568
|
+
while(1)switch(_ctx.prev = _ctx.next){
|
|
663
569
|
case 0:
|
|
664
|
-
if (!(eventKey === "engine-mounted"))
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
if (_this1.isMounted) {
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
|
|
570
|
+
if (!(eventKey === "engine-mounted")) {
|
|
571
|
+
_ctx.next = 11;
|
|
572
|
+
break;
|
|
573
|
+
}
|
|
574
|
+
if (!_this1.isMounted) {
|
|
575
|
+
_ctx.next = 4;
|
|
576
|
+
break;
|
|
577
|
+
}
|
|
578
|
+
warn("The engine-mounted life cycle can only be triggered once");
|
|
579
|
+
return _ctx.abrupt("return", Promise.resolve([]));
|
|
580
|
+
case 4:
|
|
581
|
+
if (!_this1._jobTasks.length) {
|
|
582
|
+
_ctx.next = 10;
|
|
583
|
+
break;
|
|
674
584
|
}
|
|
675
|
-
if (!_this1._jobTasks.length) return [
|
|
676
|
-
3,
|
|
677
|
-
2
|
|
678
|
-
];
|
|
679
585
|
console.time("engine-mounted need wait");
|
|
680
586
|
needWait = _toConsumableArray(_this1._jobTasks);
|
|
681
|
-
|
|
682
|
-
|
|
683
|
-
|
|
684
|
-
];
|
|
685
|
-
case 1:
|
|
686
|
-
_state.sent();
|
|
587
|
+
_ctx.next = 9;
|
|
588
|
+
return Promise.all(needWait);
|
|
589
|
+
case 9:
|
|
687
590
|
console.timeEnd("engine-mounted need wait");
|
|
688
|
-
|
|
689
|
-
case 2:
|
|
591
|
+
case 10:
|
|
690
592
|
_this1.isMounted = true;
|
|
691
|
-
|
|
692
|
-
|
|
593
|
+
case 11:
|
|
594
|
+
;
|
|
595
|
+
;
|
|
693
596
|
// 如果没有挂载的话,需要记录在挂载之前触发的所有任务
|
|
694
597
|
if (!_this1.isMounted) {
|
|
695
598
|
promise = new Promise(function(resolve) {
|
|
@@ -697,24 +600,22 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
697
600
|
});
|
|
698
601
|
_this1._jobTasks.push(promise);
|
|
699
602
|
}
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
|
|
703
|
-
|
|
704
|
-
case 4:
|
|
705
|
-
results = _state.sent();
|
|
603
|
+
_ctx.next = 16;
|
|
604
|
+
return _superprop_get_emit().call(_this1, eventKey, payload);
|
|
605
|
+
case 16:
|
|
606
|
+
results = _ctx.sent;
|
|
706
607
|
if (promiseResolver && promise) {
|
|
707
608
|
// 每一个任务完成的时候,都把自己从task中去掉
|
|
708
609
|
promiseResolver();
|
|
709
610
|
_this1._jobTasks.splice(_this1._jobTasks.indexOf(promise), 1);
|
|
710
611
|
}
|
|
711
|
-
return
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
612
|
+
return _ctx.abrupt("return", results);
|
|
613
|
+
case 19:
|
|
614
|
+
case "end":
|
|
615
|
+
return _ctx.stop();
|
|
715
616
|
}
|
|
716
|
-
});
|
|
717
|
-
})();
|
|
617
|
+
}, _callee);
|
|
618
|
+
}))();
|
|
718
619
|
};
|
|
719
620
|
_proto.on = function on(key, callback) {
|
|
720
621
|
if (applyingPluginName) {
|
|
@@ -726,8 +627,8 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
726
627
|
for(var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++){
|
|
727
628
|
args[_key] = arguments[_key];
|
|
728
629
|
}
|
|
729
|
-
var
|
|
730
|
-
return (
|
|
630
|
+
var _runtime;
|
|
631
|
+
return (_runtime = this.runtime).createControl.apply(_runtime, _toConsumableArray(args));
|
|
731
632
|
};
|
|
732
633
|
_proto.createInstance = function createInstance(type, initSchema) {
|
|
733
634
|
return this.runtime.createControlInstance(type, initSchema);
|
|
@@ -738,20 +639,32 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
738
639
|
_proto.updateInstanceProps = function updateInstanceProps(instance, props, value, rowIndex) {
|
|
739
640
|
return this.setInstance(instance, props, value, rowIndex);
|
|
740
641
|
};
|
|
642
|
+
_proto.getAllRules = function getAllRules(controlId) {
|
|
643
|
+
var rules = this.runtime.allRules;
|
|
644
|
+
if (controlId === undefined) {
|
|
645
|
+
return rules;
|
|
646
|
+
} else {
|
|
647
|
+
var ref, ref1;
|
|
648
|
+
return {
|
|
649
|
+
rules: (ref = rules.rules[controlId]) === null || ref === void 0 ? void 0 : ref.fields,
|
|
650
|
+
antdRules: (ref1 = rules.antdRules[controlId]) === null || ref1 === void 0 ? void 0 : ref1.fields
|
|
651
|
+
};
|
|
652
|
+
}
|
|
653
|
+
};
|
|
741
654
|
_proto.getRules = function getRules(controlId) {
|
|
742
655
|
if (controlId === undefined) {
|
|
743
656
|
return this.runtime.rules;
|
|
744
657
|
} else {
|
|
745
|
-
var
|
|
746
|
-
return (
|
|
658
|
+
var ref;
|
|
659
|
+
return (ref = this.runtime.rules[controlId]) === null || ref === void 0 ? void 0 : ref.fields;
|
|
747
660
|
}
|
|
748
661
|
};
|
|
749
662
|
_proto.getAntdRules = function getAntdRules(controlId) {
|
|
750
663
|
if (controlId === undefined) {
|
|
751
664
|
return this.runtime.antdRules;
|
|
752
665
|
} else {
|
|
753
|
-
var
|
|
754
|
-
return (
|
|
666
|
+
var ref;
|
|
667
|
+
return (ref = this.runtime.antdRules[controlId]) === null || ref === void 0 ? void 0 : ref.fields;
|
|
755
668
|
}
|
|
756
669
|
};
|
|
757
670
|
_proto.getState = function getState(controlId, rowIndex) {
|
|
@@ -852,15 +765,15 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
852
765
|
var data = getFieldData.map(function(item) {
|
|
853
766
|
var obj = {};
|
|
854
767
|
for(var key in item){
|
|
855
|
-
var
|
|
856
|
-
if ((
|
|
857
|
-
var
|
|
858
|
-
obj[(
|
|
859
|
-
} else if ((
|
|
768
|
+
var ref, ref1, ref2, ref3;
|
|
769
|
+
if ((ref1 = (ref = controlIdMapping[controlId]) === null || ref === void 0 ? void 0 : ref.children[key]) === null || ref1 === void 0 ? void 0 : (ref2 = ref1.dataBind) === null || ref2 === void 0 ? void 0 : ref2.fieldCode) {
|
|
770
|
+
var ref4;
|
|
771
|
+
obj[(ref4 = controlIdMapping[controlId].children[key]) === null || ref4 === void 0 ? void 0 : ref4.dataBind.fieldCode] = item[key];
|
|
772
|
+
} else if ((ref3 = controlIdMapping[controlId]) === null || ref3 === void 0 ? void 0 : ref3.children[key]) {
|
|
860
773
|
// 兼容一个控件需要绑定多个字段的情况
|
|
861
774
|
for(var keyChi in item[key]){
|
|
862
|
-
var
|
|
863
|
-
obj[(
|
|
775
|
+
var ref5, ref6;
|
|
776
|
+
obj[(ref6 = (ref5 = controlIdMapping[controlId]) === null || ref5 === void 0 ? void 0 : ref5.children[key]) === null || ref6 === void 0 ? void 0 : ref6.dataBind[keyChi].fieldCode] = item[key][keyChi];
|
|
864
777
|
}
|
|
865
778
|
}
|
|
866
779
|
}
|
|
@@ -869,24 +782,24 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
869
782
|
return data;
|
|
870
783
|
} else {
|
|
871
784
|
var _loop = function(key) {
|
|
872
|
-
var
|
|
873
|
-
if ((
|
|
874
|
-
var
|
|
875
|
-
obj[(
|
|
876
|
-
} else if ((
|
|
877
|
-
var
|
|
785
|
+
var ref, ref1, ref2, ref3;
|
|
786
|
+
if ((ref = controlIdMapping[key]) === null || ref === void 0 ? void 0 : (ref1 = ref.dataBind) === null || ref1 === void 0 ? void 0 : ref1.fieldCode) {
|
|
787
|
+
var ref4;
|
|
788
|
+
obj[(ref4 = controlIdMapping[key]) === null || ref4 === void 0 ? void 0 : ref4.dataBind.fieldCode] = getFieldData[key];
|
|
789
|
+
} else if ((ref2 = controlIdMapping[key]) === null || ref2 === void 0 ? void 0 : (ref3 = ref2.dataBind) === null || ref3 === void 0 ? void 0 : ref3.dataCode) {
|
|
790
|
+
var ref5;
|
|
878
791
|
// 明细字表只循环一层明细子表未递归
|
|
879
|
-
obj[(
|
|
792
|
+
obj[(ref5 = controlIdMapping[key]) === null || ref5 === void 0 ? void 0 : ref5.dataBind.dataCode] = getFieldData[key].map(function(item) {
|
|
880
793
|
var objChi = {};
|
|
881
794
|
for(var keyChi in item){
|
|
882
|
-
var
|
|
883
|
-
if ((
|
|
884
|
-
var
|
|
885
|
-
objChi[(
|
|
795
|
+
var ref;
|
|
796
|
+
if ((ref = controlIdMapping[key].children[keyChi]) === null || ref === void 0 ? void 0 : ref.dataBind.fieldCode) {
|
|
797
|
+
var ref1;
|
|
798
|
+
objChi[(ref1 = controlIdMapping[key].children[keyChi]) === null || ref1 === void 0 ? void 0 : ref1.dataBind.fieldCode] = item[keyChi];
|
|
886
799
|
} else {
|
|
887
800
|
for(var keyChi1 in item[keyChi]){
|
|
888
|
-
var
|
|
889
|
-
objChi[(
|
|
801
|
+
var ref2;
|
|
802
|
+
objChi[(ref2 = controlIdMapping[key].children[keyChi]) === null || ref2 === void 0 ? void 0 : ref2.dataBind[keyChi1].fieldCode] = item[keyChi][keyChi1];
|
|
890
803
|
//
|
|
891
804
|
}
|
|
892
805
|
}
|
|
@@ -896,8 +809,8 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
896
809
|
} else if (controlIdMapping[key]) {
|
|
897
810
|
// 兼容一个控件需要绑定多个字段的情况
|
|
898
811
|
for(var keyChi in getFieldData[key]){
|
|
899
|
-
var
|
|
900
|
-
obj[(
|
|
812
|
+
var ref6, ref7;
|
|
813
|
+
obj[(ref7 = (ref6 = controlIdMapping[key]) === null || ref6 === void 0 ? void 0 : ref6.dataBind[keyChi]) === null || ref7 === void 0 ? void 0 : ref7.fieldCode] = getFieldData[key][keyChi];
|
|
901
814
|
}
|
|
902
815
|
}
|
|
903
816
|
};
|
|
@@ -923,8 +836,8 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
923
836
|
}
|
|
924
837
|
var dataBind = dataBindMapping.dataBind, controlId = dataBindMapping.controlId;
|
|
925
838
|
if (_instanceof(dataBind, ObjectDataBind)) {
|
|
926
|
-
var
|
|
927
|
-
var oldState = (
|
|
839
|
+
var ref;
|
|
840
|
+
var oldState = (ref = JSONCopy(this.getState(controlId, rowIndex))) !== null && ref !== void 0 ? ref : this.getEmptyState(controlId);
|
|
928
841
|
// fieldCode不代表是key,所以需要找到对应的key
|
|
929
842
|
var newState = Object.entries(dataBind).reduce(function(result, param) {
|
|
930
843
|
var _param = _slicedToArray(param, 2), key = _param[0], dataBind = _param[1];
|
|
@@ -962,8 +875,8 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
962
875
|
}
|
|
963
876
|
// 对象类型的值
|
|
964
877
|
if (_instanceof(dataBind, ObjectDataBind)) {
|
|
965
|
-
var
|
|
966
|
-
var oldState = (
|
|
878
|
+
var ref;
|
|
879
|
+
var oldState = (ref = JSONCopy(_this.getState(controlId, rowIndex))) !== null && ref !== void 0 ? ref : _this.getEmptyState(controlId);
|
|
967
880
|
// fieldCode不代表是key,所以需要找到对应的key
|
|
968
881
|
var newState = Object.entries(dataBind).reduce(function(result, param) {
|
|
969
882
|
var _param = _slicedToArray(param, 2), key = _param[0], dataBind = _param[1];
|
|
@@ -1041,19 +954,19 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
1041
954
|
var skipKey = [] //qiyu ObjectDataBind中会提前将相关key拿出来赋值,为了避免重复赋值,设置了此变量
|
|
1042
955
|
;
|
|
1043
956
|
Object.keys(row).map(function(fieldCode) {
|
|
1044
|
-
var
|
|
957
|
+
var ref, ref1;
|
|
1045
958
|
if (skipKey.includes(fieldCode)) {
|
|
1046
959
|
return;
|
|
1047
960
|
}
|
|
1048
|
-
var fieldMapping = (
|
|
961
|
+
var fieldMapping = (ref = _this.store.dataBindMapping[dataCode]) === null || ref === void 0 ? void 0 : (ref1 = ref.fields) === null || ref1 === void 0 ? void 0 : ref1.find(function(i) {
|
|
1049
962
|
return i.fieldCode === fieldCode;
|
|
1050
963
|
});
|
|
1051
964
|
if (fieldMapping) {
|
|
1052
965
|
if (_instanceof(fieldMapping.dataBind, DataBind) && row[fieldCode] !== undefined) {
|
|
1053
966
|
newRow[fieldMapping.controlId] = row[fieldCode];
|
|
1054
967
|
} else if (_instanceof(fieldMapping.dataBind, ObjectDataBind)) {
|
|
1055
|
-
var
|
|
1056
|
-
var objValue = JSONCopy((
|
|
968
|
+
var ref2;
|
|
969
|
+
var objValue = JSONCopy((ref2 = _this.getEmptyState(fieldMapping.controlId)) !== null && ref2 !== void 0 ? ref2 : {});
|
|
1057
970
|
Object.keys(fieldMapping.dataBind).map(function(key) {
|
|
1058
971
|
var dataBind = fieldMapping.dataBind[key];
|
|
1059
972
|
if (row[dataBind.fieldCode] !== undefined) {
|
|
@@ -1088,8 +1001,8 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
1088
1001
|
if (_instanceof(mapping.dataBind, DataBind) && entity[fieldCode] !== undefined) {
|
|
1089
1002
|
newState[mapping.dataViewId[0]][mapping.controlId] = entity[fieldCode];
|
|
1090
1003
|
} else if (_instanceof(mapping.dataBind, ObjectDataBind)) {
|
|
1091
|
-
var
|
|
1092
|
-
var objValue = JSONCopy((
|
|
1004
|
+
var ref;
|
|
1005
|
+
var objValue = JSONCopy((ref = _this.getEmptyState(mapping.controlId)) !== null && ref !== void 0 ? ref : {});
|
|
1093
1006
|
Object.keys(mapping.dataBind).map(function(key) {
|
|
1094
1007
|
var dataBind = mapping.dataBind[key];
|
|
1095
1008
|
if (entity[dataBind.fieldCode] !== undefined) {
|
|
@@ -1138,7 +1051,11 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
1138
1051
|
* @param header 明细表内是否获取表头的控件
|
|
1139
1052
|
*/ _proto.getInstances = function getInstances(controlId) {
|
|
1140
1053
|
var header = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : false;
|
|
1054
|
+
// const cc = console
|
|
1055
|
+
// const label = '🐑 genInstances ' + controlId + ' ' + Date.now()
|
|
1056
|
+
// cc.time(label)
|
|
1141
1057
|
if (controlId === undefined) {
|
|
1058
|
+
// cc.timeEnd(label)
|
|
1142
1059
|
return this.runtime.flatInstances;
|
|
1143
1060
|
}
|
|
1144
1061
|
var instances = this.runtime.instanceMap[controlId] || [];
|
|
@@ -1154,11 +1071,11 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
1154
1071
|
}
|
|
1155
1072
|
} else {
|
|
1156
1073
|
var controlIdMapping = this.getControlIdMapping();
|
|
1157
|
-
var
|
|
1158
|
-
var
|
|
1074
|
+
var ref;
|
|
1075
|
+
var ref1 = _slicedToArray((ref = Object.entries(controlIdMapping).find(function(param) {
|
|
1159
1076
|
var _param = _slicedToArray(param, 2), _ = _param[0], mapping = _param[1];
|
|
1160
1077
|
return mapping.children && controlId in mapping.children;
|
|
1161
|
-
})) !== null &&
|
|
1078
|
+
})) !== null && ref !== void 0 ? ref : [], 1), subtableId = ref1[0];
|
|
1162
1079
|
if (subtableId) {
|
|
1163
1080
|
var subtable = this.getInstance(subtableId);
|
|
1164
1081
|
// @ts-ignore
|
|
@@ -1314,8 +1231,8 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
1314
1231
|
for(var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++){
|
|
1315
1232
|
args[_key] = arguments[_key];
|
|
1316
1233
|
}
|
|
1317
|
-
var
|
|
1318
|
-
return (
|
|
1234
|
+
var _runtime;
|
|
1235
|
+
return (_runtime = this.runtime).registerControlConfig.apply(_runtime, _toConsumableArray(args));
|
|
1319
1236
|
};
|
|
1320
1237
|
_proto.getControlConfig = function getControlConfig(control) {
|
|
1321
1238
|
return this.runtime.getControlConfig(control);
|
|
@@ -1323,8 +1240,8 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
1323
1240
|
_proto.inList = function inList(controlId) {
|
|
1324
1241
|
var mapping = this.store.controlIdMapping;
|
|
1325
1242
|
var result = Object.keys(mapping).some(function(key) {
|
|
1326
|
-
var
|
|
1327
|
-
return (
|
|
1243
|
+
var ref, ref1;
|
|
1244
|
+
return (ref = mapping[key]) === null || ref === void 0 ? void 0 : (ref1 = ref.children) === null || ref1 === void 0 ? void 0 : ref1.hasOwnProperty(controlId);
|
|
1328
1245
|
});
|
|
1329
1246
|
return result;
|
|
1330
1247
|
};
|
|
@@ -1342,3 +1259,4 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
1342
1259
|
return Engine;
|
|
1343
1260
|
}(Watcher);
|
|
1344
1261
|
export { Engine };
|
|
1262
|
+
console.log("a");
|
|
@@ -18,12 +18,12 @@ var OkWorker = /*#__PURE__*/ function() {
|
|
|
18
18
|
});
|
|
19
19
|
};
|
|
20
20
|
_proto.destroy = function destroy() {
|
|
21
|
-
var
|
|
22
|
-
(
|
|
21
|
+
var ref;
|
|
22
|
+
(ref = this.worker) === null || ref === void 0 ? void 0 : ref.terminate();
|
|
23
23
|
};
|
|
24
24
|
_proto.postMessage = function postMessage(message) {
|
|
25
|
-
var
|
|
26
|
-
(
|
|
25
|
+
var ref;
|
|
26
|
+
(ref = this.worker) === null || ref === void 0 ? void 0 : ref.postMessage(message);
|
|
27
27
|
};
|
|
28
28
|
OkWorker.createWorker = function createWorker() {
|
|
29
29
|
var blob = new Blob([
|
|
@@ -64,7 +64,7 @@ var OkWorker = /*#__PURE__*/ function() {
|
|
|
64
64
|
// return new Proxy(obj, createHandler(parentKey))
|
|
65
65
|
// }
|
|
66
66
|
_self.addEventListener("message", function(event) {
|
|
67
|
-
var
|
|
67
|
+
var _data = event.data, action = _data.action, payload = _data.payload, fn = _data.fn;
|
|
68
68
|
log(action, payload);
|
|
69
69
|
// 通过proxy进行代理,每次修改的时候,自动向外抛出postMessage
|
|
70
70
|
// data.key1 = 1
|
|
@@ -146,6 +146,31 @@ export var Runtime = /*#__PURE__*/ function(RegisterControls) {
|
|
|
146
146
|
return this._instanceMap;
|
|
147
147
|
}
|
|
148
148
|
},
|
|
149
|
+
{
|
|
150
|
+
key: "allRules",
|
|
151
|
+
get: function get() {
|
|
152
|
+
var antdRules = {};
|
|
153
|
+
var ruleItems = {};
|
|
154
|
+
loopDataViewControl(this._instance, function(dataView) {
|
|
155
|
+
ruleItems[dataView.id] = dataView.rules[0];
|
|
156
|
+
antdRules[dataView.id] = dataView.rules[0];
|
|
157
|
+
loopFormControl(dataView.children, function(item) {
|
|
158
|
+
// if (
|
|
159
|
+
// item instanceof RuntimeFormControl ||
|
|
160
|
+
// item instanceof RuntimeListControl
|
|
161
|
+
// ) {
|
|
162
|
+
if (item.controlType === CONTROL_BASE_TYPE.FORM || item.controlType === CONTROL_BASE_TYPE.LIST) {
|
|
163
|
+
buildControlRules(ruleItems[dataView.id].fields, item);
|
|
164
|
+
buildControlAntdRules(antdRules[dataView.id].fields, item);
|
|
165
|
+
}
|
|
166
|
+
});
|
|
167
|
+
});
|
|
168
|
+
return {
|
|
169
|
+
rules: ruleItems,
|
|
170
|
+
antdRules: antdRules
|
|
171
|
+
};
|
|
172
|
+
}
|
|
173
|
+
},
|
|
149
174
|
{
|
|
150
175
|
key: "rules",
|
|
151
176
|
get: function get() {
|