@byteluck-fe/model-driven-engine 2.22.2-beta.0 → 2.22.2-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 +3 -3
- package/dist/esm/common/DataManager.js +2 -2
- package/dist/esm/common/Engine.js +57 -55
- package/dist/esm/common/OkWorker.js +8 -8
- package/dist/esm/common/Runtime.js +15 -15
- package/dist/esm/common/Store.js +9 -9
- package/dist/esm/common/checkerValue.js +22 -22
- package/dist/esm/common/index.js +2 -2
- package/dist/esm/common/proxyState.js +34 -38
- package/dist/esm/index.js +3 -3
- package/dist/esm/plugins/CalcPlugin.js +14 -18
- package/dist/esm/plugins/ControlsEventPlugin.js +4 -4
- package/dist/esm/plugins/ES6ModulePlugin.js +6 -6
- package/dist/esm/plugins/LifecycleEventPlugin.js +5 -5
- package/dist/esm/plugins/StylePlugin.js +4 -4
- package/dist/esm/plugins/index.js +5 -5
- package/dist/esm/utils/index.js +1 -1
- package/dist/esm/utils/runtimeUtils.js +3 -3
- package/dist/index.umd.js +25 -25
- package/dist/types/common/Engine.d.ts +7 -1
- package/package.json +4 -4
|
@@ -179,7 +179,7 @@ function _ts_generator(thisArg, body) {
|
|
|
179
179
|
};
|
|
180
180
|
}
|
|
181
181
|
}
|
|
182
|
-
import { error, logerror } from
|
|
182
|
+
import { error, logerror } from "@byteluck-fe/model-driven-shared";
|
|
183
183
|
export var ActionManager = /*#__PURE__*/ function() {
|
|
184
184
|
"use strict";
|
|
185
185
|
function ActionManager() {
|
|
@@ -255,7 +255,7 @@ export var ActionManager = /*#__PURE__*/ function() {
|
|
|
255
255
|
key: "addAction",
|
|
256
256
|
value: function addAction(name, func) {
|
|
257
257
|
if (this.actionMap.has(name)) {
|
|
258
|
-
error(
|
|
258
|
+
error("duplicated action key");
|
|
259
259
|
}
|
|
260
260
|
var action = new Action(name, func);
|
|
261
261
|
this.actionMap.set(name, action);
|
|
@@ -268,7 +268,7 @@ var Action = function Action(id, func) {
|
|
|
268
268
|
"use strict";
|
|
269
269
|
_class_call_check(this, Action);
|
|
270
270
|
_define_property(this, "func", void 0);
|
|
271
|
-
_define_property(this, "id",
|
|
271
|
+
_define_property(this, "id", "");
|
|
272
272
|
this.id = id;
|
|
273
273
|
this.func = func;
|
|
274
274
|
};
|
|
@@ -154,7 +154,7 @@ function _ts_generator(thisArg, body) {
|
|
|
154
154
|
};
|
|
155
155
|
}
|
|
156
156
|
}
|
|
157
|
-
import { JSONCopy, logerror } from
|
|
157
|
+
import { JSONCopy, logerror } from "@byteluck-fe/model-driven-shared";
|
|
158
158
|
export var DataManager = /*#__PURE__*/ function() {
|
|
159
159
|
"use strict";
|
|
160
160
|
function DataManager(callbackExecuter) {
|
|
@@ -190,7 +190,7 @@ export var DataManager = /*#__PURE__*/ function() {
|
|
|
190
190
|
return _async_to_generator(function() {
|
|
191
191
|
return _ts_generator(this, function(_state) {
|
|
192
192
|
if (_this.executer === undefined) {
|
|
193
|
-
logerror(
|
|
193
|
+
logerror("未初始化executer");
|
|
194
194
|
return [
|
|
195
195
|
2,
|
|
196
196
|
[]
|
|
@@ -340,23 +340,23 @@ function _ts_generator(thisArg, body) {
|
|
|
340
340
|
};
|
|
341
341
|
}
|
|
342
342
|
}
|
|
343
|
-
import { isDataBind } from
|
|
344
|
-
import { CONTROL_BASE_TYPE, CONTROL_TYPE, DEFAULT_LOCALE, error, genNonDuplicateId, isString, JSONCopy, log, RulesMessage, updateValueFromKeys, warn, Watcher, isBuiltInControls } from
|
|
345
|
-
import { Runtime } from
|
|
346
|
-
import { Store } from
|
|
347
|
-
import { findItem, proxyState } from
|
|
348
|
-
import { ActionManager } from
|
|
349
|
-
import { DataManager } from
|
|
350
|
-
import { checkerSubtableValue, checkerValue } from
|
|
351
|
-
import { buildUUID } from
|
|
352
|
-
if (typeof window !==
|
|
343
|
+
import { isDataBind } from "@byteluck-fe/model-driven-core";
|
|
344
|
+
import { CONTROL_BASE_TYPE, CONTROL_TYPE, DEFAULT_LOCALE, error, genNonDuplicateId, isString, JSONCopy, log, RulesMessage, updateValueFromKeys, warn, Watcher, isBuiltInControls } from "@byteluck-fe/model-driven-shared";
|
|
345
|
+
import { Runtime } from "./Runtime";
|
|
346
|
+
import { Store } from "./Store";
|
|
347
|
+
import { findItem, proxyState } from "./proxyState";
|
|
348
|
+
import { ActionManager } from "./ActionManager";
|
|
349
|
+
import { DataManager } from "./DataManager";
|
|
350
|
+
import { checkerSubtableValue, checkerValue } from "./checkerValue";
|
|
351
|
+
import { buildUUID } from "../utils/runtimeUtils";
|
|
352
|
+
if (typeof window !== "undefined") {
|
|
353
353
|
// @ts-ignore
|
|
354
354
|
window.engines = {};
|
|
355
355
|
}
|
|
356
356
|
// setState的时候,存储options中转变量
|
|
357
357
|
var eventOptionsTemp = null;
|
|
358
358
|
// 当前正在注册的插件名称
|
|
359
|
-
var applyingPluginName =
|
|
359
|
+
var applyingPluginName = "";
|
|
360
360
|
// 整体渲染引擎 并且 提供发布订阅能力
|
|
361
361
|
var Engine = /*#__PURE__*/ function(Watcher) {
|
|
362
362
|
"use strict";
|
|
@@ -376,6 +376,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
376
376
|
_define_property(_assert_this_initialized(_this), "isMounted", false);
|
|
377
377
|
_define_property(_assert_this_initialized(_this), "id", genNonDuplicateId(8));
|
|
378
378
|
_define_property(_assert_this_initialized(_this), "externalParams", void 0);
|
|
379
|
+
_define_property(_assert_this_initialized(_this), "children", void 0);
|
|
379
380
|
// 提供外部注册插件,在不同的hooks触发时执行固定函数的能力
|
|
380
381
|
_define_property(_assert_this_initialized(_this), "__plugins", void 0);
|
|
381
382
|
_define_property(_assert_this_initialized(_this), "__pluginsApplied", false);
|
|
@@ -386,7 +387,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
386
387
|
_define_property(_assert_this_initialized(_this), "createControlInstance", _this.createInstance);
|
|
387
388
|
_this.$options = Object.freeze(props);
|
|
388
389
|
var _this_$options = _this.$options, _this_$options_autoMount = _this_$options.autoMount, autoMount = _this_$options_autoMount === void 0 ? true : _this_$options_autoMount, schema = _this_$options.schema, beforeCreateInstance = _this_$options.beforeCreateInstance, externalParams = _this_$options.externalParams, _this_$options_language = _this_$options.// fieldModel,
|
|
389
|
-
language, language = _this_$options_language === void 0 ? DEFAULT_LOCALE : _this_$options_language, _this_$options_debug = _this_$options.debug, debug = _this_$options_debug === void 0 ? false : _this_$options_debug, messagesI18n = _this_$options.messagesI18n;
|
|
390
|
+
language, language = _this_$options_language === void 0 ? DEFAULT_LOCALE : _this_$options_language, _this_$options_debug = _this_$options.debug, debug = _this_$options_debug === void 0 ? false : _this_$options_debug, messagesI18n = _this_$options.messagesI18n, children = _this_$options.children;
|
|
390
391
|
RulesMessage.setLocale(language, messagesI18n);
|
|
391
392
|
_this.debug = debug;
|
|
392
393
|
_this.runtime = new Runtime({
|
|
@@ -394,10 +395,11 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
394
395
|
beforeCreateInstance: beforeCreateInstance
|
|
395
396
|
});
|
|
396
397
|
_this.externalParams = externalParams;
|
|
398
|
+
_this.children = children;
|
|
397
399
|
_this.store = new Store({
|
|
398
400
|
instance: _this.runtime.instance
|
|
399
401
|
});
|
|
400
|
-
_this.debugLog(
|
|
402
|
+
_this.debugLog("engine is Instantiation complete");
|
|
401
403
|
// 自动执行挂载完成,也可以手动调用mount方法
|
|
402
404
|
autoMount && _this.mount();
|
|
403
405
|
return _this;
|
|
@@ -444,7 +446,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
444
446
|
// 触发所有控件的默认值的change事件
|
|
445
447
|
this.setStates(this.getState());
|
|
446
448
|
this.debugLog("engine的mount方法调用结束");
|
|
447
|
-
if (this.debug && typeof window !==
|
|
449
|
+
if (this.debug && typeof window !== "undefined") {
|
|
448
450
|
// @ts-ignore
|
|
449
451
|
window.engines[this.id] = this;
|
|
450
452
|
}
|
|
@@ -453,7 +455,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
453
455
|
{
|
|
454
456
|
key: "destroy",
|
|
455
457
|
value: function destroy() {
|
|
456
|
-
if (this.debug && typeof window !==
|
|
458
|
+
if (this.debug && typeof window !== "undefined") {
|
|
457
459
|
// @ts-ignore
|
|
458
460
|
delete window.engines[this.id];
|
|
459
461
|
}
|
|
@@ -494,7 +496,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
494
496
|
checkerSubtableValue(fieldTypeMap, row, emptyState));
|
|
495
497
|
});
|
|
496
498
|
}
|
|
497
|
-
var keys = key.split(
|
|
499
|
+
var keys = key.split(".");
|
|
498
500
|
var lastKey = keys[keys.length - 1];
|
|
499
501
|
try {
|
|
500
502
|
return checkerValue(instance.fieldType, lastKey, newValue, oldValue);
|
|
@@ -527,7 +529,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
527
529
|
var newRows = [];
|
|
528
530
|
for(var i = 0; i < len; i++){
|
|
529
531
|
// @ts-ignore
|
|
530
|
-
var row = _this.listControlCreateRow(subtable,
|
|
532
|
+
var row = _this.listControlCreateRow(subtable, "subtable-row");
|
|
531
533
|
row && newRows.push(row);
|
|
532
534
|
}
|
|
533
535
|
// @ts-ignore
|
|
@@ -542,15 +544,15 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
542
544
|
if (type && args) {
|
|
543
545
|
// const subtableOldLength = subtable.children.length
|
|
544
546
|
switch(type){
|
|
545
|
-
case
|
|
546
|
-
case
|
|
547
|
+
case "push":
|
|
548
|
+
case "unshift":
|
|
547
549
|
var _subtable_children;
|
|
548
550
|
var newRowLengths = args.length;
|
|
549
551
|
createdNewRows = createRows(newRowLengths);
|
|
550
552
|
createdNewRowsData = args;
|
|
551
553
|
(_subtable_children = subtable.children)[type].apply(_subtable_children, _to_consumable_array(createdNewRows));
|
|
552
554
|
break;
|
|
553
|
-
case
|
|
555
|
+
case "splice":
|
|
554
556
|
if (args.length > 2) {
|
|
555
557
|
var // @ts-ignore
|
|
556
558
|
_subtable_children1;
|
|
@@ -589,11 +591,11 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
589
591
|
(_subtable_children3 = subtable.children)[type].apply(_subtable_children3, _to_consumable_array(args));
|
|
590
592
|
break;
|
|
591
593
|
}
|
|
592
|
-
if (type ===
|
|
594
|
+
if (type === "splice") {
|
|
593
595
|
deleted = result;
|
|
594
596
|
} else if ([
|
|
595
|
-
|
|
596
|
-
|
|
597
|
+
"pop",
|
|
598
|
+
"shift"
|
|
597
599
|
].includes(type)) {
|
|
598
600
|
deleted = [
|
|
599
601
|
result
|
|
@@ -602,7 +604,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
602
604
|
var subtableData = this.getState(subtable.id);
|
|
603
605
|
this._handlerSubtableUpdateUid(subtableData);
|
|
604
606
|
this.runtime.getFlatInstances();
|
|
605
|
-
this.emit(
|
|
607
|
+
this.emit("list-change", {
|
|
606
608
|
instance: subtable,
|
|
607
609
|
value: subtableData,
|
|
608
610
|
options: Object.assign({}, options, {
|
|
@@ -626,7 +628,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
626
628
|
subtableData.forEach(function(item) {
|
|
627
629
|
if (!item.uid) {
|
|
628
630
|
Object.assign(item, {
|
|
629
|
-
uid:
|
|
631
|
+
uid: "new:" + buildUUID("uid")
|
|
630
632
|
});
|
|
631
633
|
}
|
|
632
634
|
});
|
|
@@ -651,7 +653,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
651
653
|
var newRows = [];
|
|
652
654
|
for(var i = 0; i < newValue.length; i++){
|
|
653
655
|
// @ts-ignore
|
|
654
|
-
var row = this.listControlCreateRow(instance,
|
|
656
|
+
var row = this.listControlCreateRow(instance, "subtable-row");
|
|
655
657
|
row && newRows.push(row);
|
|
656
658
|
}
|
|
657
659
|
(_instance_children = instance.children).push.apply(_instance_children, _to_consumable_array(newRows));
|
|
@@ -666,7 +668,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
666
668
|
this.runtime.getFlatInstances();
|
|
667
669
|
}
|
|
668
670
|
this._handlerSubtableUpdateUid(newValue);
|
|
669
|
-
this.emit(
|
|
671
|
+
this.emit("list-change", {
|
|
670
672
|
instance: instance,
|
|
671
673
|
value: value,
|
|
672
674
|
options: _object_spread_props(_object_spread({}, options), {
|
|
@@ -675,12 +677,12 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
675
677
|
data: newValue,
|
|
676
678
|
deleted: deleted,
|
|
677
679
|
// deleted: oldValue ?? [],
|
|
678
|
-
type:
|
|
680
|
+
type: "push",
|
|
679
681
|
jsonValue: JSON.stringify(newValue)
|
|
680
682
|
})
|
|
681
683
|
});
|
|
682
684
|
} else {
|
|
683
|
-
this.emit(
|
|
685
|
+
this.emit("change", {
|
|
684
686
|
instance: instance,
|
|
685
687
|
value: this.getState(instance.id, index),
|
|
686
688
|
rowIndex: index,
|
|
@@ -704,7 +706,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
704
706
|
} catch (e) {
|
|
705
707
|
error("".concat(applyingPluginName, " Plugin apply Error \n ").concat(e));
|
|
706
708
|
} finally{
|
|
707
|
-
applyingPluginName =
|
|
709
|
+
applyingPluginName = "";
|
|
708
710
|
}
|
|
709
711
|
});
|
|
710
712
|
this.__pluginsApplied = true;
|
|
@@ -714,20 +716,20 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
714
716
|
key: "listControlCreateRow",
|
|
715
717
|
value: function listControlCreateRow(instance, rowType) {
|
|
716
718
|
var row;
|
|
717
|
-
if (rowType ===
|
|
719
|
+
if (rowType === "subtable-row") {
|
|
718
720
|
row = {
|
|
719
721
|
children: [],
|
|
720
722
|
controlType: CONTROL_BASE_TYPE.LAYOUT,
|
|
721
723
|
id: genNonDuplicateId(),
|
|
722
|
-
type:
|
|
724
|
+
type: "subtable-row",
|
|
723
725
|
props: {
|
|
724
|
-
caption:
|
|
726
|
+
caption: "",
|
|
725
727
|
isHide: false,
|
|
726
728
|
style: {
|
|
727
|
-
height:
|
|
728
|
-
heightConfig:
|
|
729
|
-
width:
|
|
730
|
-
widthConfig:
|
|
729
|
+
height: "",
|
|
730
|
+
heightConfig: "fill",
|
|
731
|
+
width: "",
|
|
732
|
+
widthConfig: "fill"
|
|
731
733
|
}
|
|
732
734
|
},
|
|
733
735
|
fieldType: undefined,
|
|
@@ -781,7 +783,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
781
783
|
key: "listControlAddRow",
|
|
782
784
|
value: function listControlAddRow(instance) {
|
|
783
785
|
var // @ts-ignore
|
|
784
|
-
rowType = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] :
|
|
786
|
+
rowType = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : "subtable-row";
|
|
785
787
|
var row = this.listControlCreateRow(instance, rowType);
|
|
786
788
|
if (!row) return;
|
|
787
789
|
instance.children.push(row);
|
|
@@ -800,12 +802,12 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
800
802
|
return _ts_generator(this, function(_state) {
|
|
801
803
|
switch(_state.label){
|
|
802
804
|
case 0:
|
|
803
|
-
if (!(eventKey ===
|
|
805
|
+
if (!(eventKey === "engine-mounted")) return [
|
|
804
806
|
3,
|
|
805
807
|
3
|
|
806
808
|
];
|
|
807
809
|
if (_this1.isMounted) {
|
|
808
|
-
warn(
|
|
810
|
+
warn("The engine-mounted life cycle can only be triggered once");
|
|
809
811
|
return [
|
|
810
812
|
2,
|
|
811
813
|
Promise.resolve([])
|
|
@@ -815,7 +817,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
815
817
|
3,
|
|
816
818
|
2
|
|
817
819
|
];
|
|
818
|
-
console.time(
|
|
820
|
+
console.time("engine-mounted need wait");
|
|
819
821
|
needWait = _to_consumable_array(_this1._jobTasks);
|
|
820
822
|
return [
|
|
821
823
|
4,
|
|
@@ -823,7 +825,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
823
825
|
];
|
|
824
826
|
case 1:
|
|
825
827
|
_state.sent();
|
|
826
|
-
console.timeEnd(
|
|
828
|
+
console.timeEnd("engine-mounted need wait");
|
|
827
829
|
_state.label = 2;
|
|
828
830
|
case 2:
|
|
829
831
|
_this1.isMounted = true;
|
|
@@ -988,9 +990,9 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
988
990
|
key: "setState",
|
|
989
991
|
value: function setState(controlId, value, rowIndex, options) {
|
|
990
992
|
eventOptionsTemp = options;
|
|
991
|
-
this.debugLog(
|
|
993
|
+
this.debugLog("[%o]: 触发setState, 修改的值为%o, rowIndex=%o, options=%o", controlId, value, rowIndex, options);
|
|
992
994
|
this.store.setState(controlId, value, rowIndex);
|
|
993
|
-
this.debugLog(
|
|
995
|
+
this.debugLog("[%o]: setState完成, 修改的值为%o, rowIndex=%o", controlId, value, rowIndex);
|
|
994
996
|
eventOptionsTemp = null;
|
|
995
997
|
}
|
|
996
998
|
},
|
|
@@ -1077,7 +1079,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
1077
1079
|
var _controlIdMapping_controlId_children_key_dataBind, _controlIdMapping_controlId_children_key, _controlIdMapping_controlId;
|
|
1078
1080
|
var fieldCode = (_controlIdMapping_controlId = controlIdMapping[controlId]) === null || _controlIdMapping_controlId === void 0 ? void 0 : (_controlIdMapping_controlId_children_key = _controlIdMapping_controlId.children[key]) === null || _controlIdMapping_controlId_children_key === void 0 ? void 0 : (_controlIdMapping_controlId_children_key_dataBind = _controlIdMapping_controlId_children_key.dataBind) === null || _controlIdMapping_controlId_children_key_dataBind === void 0 ? void 0 : _controlIdMapping_controlId_children_key_dataBind.fieldCode;
|
|
1079
1081
|
//未绑定字段的控件,直接抛弃
|
|
1080
|
-
if (fieldCode !==
|
|
1082
|
+
if (fieldCode !== "") {
|
|
1081
1083
|
var _controlIdMapping_controlId1;
|
|
1082
1084
|
if (fieldCode) {
|
|
1083
1085
|
obj[fieldCode] = item[key];
|
|
@@ -1108,7 +1110,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
1108
1110
|
var _controlIdMapping_key_children_keyChi;
|
|
1109
1111
|
var fieldCode = (_controlIdMapping_key_children_keyChi = controlIdMapping[key].children[keyChi]) === null || _controlIdMapping_key_children_keyChi === void 0 ? void 0 : _controlIdMapping_key_children_keyChi.dataBind.fieldCode;
|
|
1110
1112
|
//未绑定字段的控件,直接抛弃
|
|
1111
|
-
if (fieldCode !==
|
|
1113
|
+
if (fieldCode !== "") {
|
|
1112
1114
|
if (fieldCode) {
|
|
1113
1115
|
objChi[fieldCode] = item[keyChi];
|
|
1114
1116
|
} else {
|
|
@@ -1329,9 +1331,9 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
1329
1331
|
});
|
|
1330
1332
|
newRow[fieldMapping.controlId] = objValue;
|
|
1331
1333
|
}
|
|
1332
|
-
} else if (fieldCode ===
|
|
1334
|
+
} else if (fieldCode === "uid" && row.uid !== undefined) {
|
|
1333
1335
|
newRow.uid = row.uid;
|
|
1334
|
-
} else if (fieldCode ===
|
|
1336
|
+
} else if (fieldCode === "virtualStore" && row.virtualStore !== undefined) {
|
|
1335
1337
|
newRow.virtualStore = Object.freeze(row.virtualStore);
|
|
1336
1338
|
}
|
|
1337
1339
|
});
|
|
@@ -1383,7 +1385,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
1383
1385
|
var _newState_newMapping_controlId;
|
|
1384
1386
|
var mainStateKeys = Object.keys((_newState_newMapping_controlId = newState === null || newState === void 0 ? void 0 : newState[newMapping === null || newMapping === void 0 ? void 0 : newMapping.controlId]) !== null && _newState_newMapping_controlId !== void 0 ? _newState_newMapping_controlId : {});
|
|
1385
1387
|
mappingKeys === null || mappingKeys === void 0 ? void 0 : mappingKeys.forEach(function(key) {
|
|
1386
|
-
if (!mainStateKeys.includes(key) && key !==
|
|
1388
|
+
if (!mainStateKeys.includes(key) && key !== "uid" && newState[newMapping === null || newMapping === void 0 ? void 0 : newMapping.controlId]) {
|
|
1387
1389
|
if (Object.keys(newState).length) {
|
|
1388
1390
|
Object.assign(newState[newMapping === null || newMapping === void 0 ? void 0 : newMapping.controlId], _define_property({}, key, mappingValue[key]));
|
|
1389
1391
|
} else {
|
|
@@ -1525,14 +1527,14 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
1525
1527
|
value: function setInstance(instance, props, value, rowIndex) {
|
|
1526
1528
|
var _this = this;
|
|
1527
1529
|
try {
|
|
1528
|
-
if (typeof instance ===
|
|
1530
|
+
if (typeof instance === "string" && rowIndex === -1) {
|
|
1529
1531
|
//修改明细表整列属性的逻辑
|
|
1530
1532
|
var instances = this.getInstances(instance, rowIndex === -1);
|
|
1531
1533
|
instances.map(function(_instance) {
|
|
1532
1534
|
if (_instance) {
|
|
1533
1535
|
_this.debugLog("[%o]: 修改instance: %o的%o属性,修改的值为%o。", _instance.id, _instance, props, value);
|
|
1534
1536
|
updateValueFromKeys(_instance.props, props, value);
|
|
1535
|
-
_this.schemaEvent(
|
|
1537
|
+
_this.schemaEvent("schema-change", {
|
|
1536
1538
|
instance: _instance,
|
|
1537
1539
|
props: props,
|
|
1538
1540
|
value: value,
|
|
@@ -1542,7 +1544,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
1542
1544
|
});
|
|
1543
1545
|
} else {
|
|
1544
1546
|
var _instance;
|
|
1545
|
-
if (typeof instance ===
|
|
1547
|
+
if (typeof instance === "string") {
|
|
1546
1548
|
_instance = this.getInstance(instance, rowIndex);
|
|
1547
1549
|
} else {
|
|
1548
1550
|
_instance = instance;
|
|
@@ -1552,7 +1554,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
1552
1554
|
}
|
|
1553
1555
|
this.debugLog("[%o]: 修改instance: %o的%o属性,修改的值为%o。", _instance.id, _instance, props, value);
|
|
1554
1556
|
updateValueFromKeys(_instance.props, props, value);
|
|
1555
|
-
this.schemaEvent(
|
|
1557
|
+
this.schemaEvent("schema-change", {
|
|
1556
1558
|
instance: _instance,
|
|
1557
1559
|
props: props,
|
|
1558
1560
|
value: value,
|
|
@@ -1679,7 +1681,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
1679
1681
|
CONTROL_TYPE.SUBTABLE_COLUMN);
|
|
1680
1682
|
if (isColumnChild) {
|
|
1681
1683
|
var instanceList = this.runtime.instanceMap[instance.id];
|
|
1682
|
-
if (Object.prototype.toString.call(instanceList) ===
|
|
1684
|
+
if (Object.prototype.toString.call(instanceList) === "[object Array]") {
|
|
1683
1685
|
var index = instanceList.findIndex(function(item) {
|
|
1684
1686
|
return item === instance;
|
|
1685
1687
|
});
|
|
@@ -1785,7 +1787,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
1785
1787
|
key: "register",
|
|
1786
1788
|
value: // 注册外部控件
|
|
1787
1789
|
function register(control) {
|
|
1788
|
-
return Runtime.register(control,
|
|
1790
|
+
return Runtime.register(control, "Runtime");
|
|
1789
1791
|
}
|
|
1790
1792
|
},
|
|
1791
1793
|
{
|
|
@@ -30,7 +30,7 @@ function _define_property(obj, key, value) {
|
|
|
30
30
|
}
|
|
31
31
|
return obj;
|
|
32
32
|
}
|
|
33
|
-
import { log } from
|
|
33
|
+
import { log } from "@byteluck-fe/model-driven-shared";
|
|
34
34
|
var OkWorker = /*#__PURE__*/ function() {
|
|
35
35
|
"use strict";
|
|
36
36
|
function OkWorker() {
|
|
@@ -43,7 +43,7 @@ var OkWorker = /*#__PURE__*/ function() {
|
|
|
43
43
|
value: function run(initState) {
|
|
44
44
|
this.worker = OkWorker.createWorker();
|
|
45
45
|
this.postMessage({
|
|
46
|
-
action:
|
|
46
|
+
action: "init",
|
|
47
47
|
payload: initState
|
|
48
48
|
});
|
|
49
49
|
}
|
|
@@ -77,7 +77,7 @@ var OkWorker = /*#__PURE__*/ function() {
|
|
|
77
77
|
key: "createWorkerFunction",
|
|
78
78
|
value: function createWorkerFunction() {
|
|
79
79
|
return function() {
|
|
80
|
-
log(
|
|
80
|
+
log("\uD83D\uDE80 worker running");
|
|
81
81
|
var _self = self;
|
|
82
82
|
function createHandler(parentKey) {
|
|
83
83
|
return {
|
|
@@ -87,7 +87,7 @@ var OkWorker = /*#__PURE__*/ function() {
|
|
|
87
87
|
set: function set(target, key, value) {
|
|
88
88
|
if (parentKey) {
|
|
89
89
|
_self.postMessage({
|
|
90
|
-
action:
|
|
90
|
+
action: "update",
|
|
91
91
|
key: "".concat(parentKey, ".").concat(key)
|
|
92
92
|
});
|
|
93
93
|
}
|
|
@@ -106,7 +106,7 @@ var OkWorker = /*#__PURE__*/ function() {
|
|
|
106
106
|
// }
|
|
107
107
|
// return new Proxy(obj, createHandler(parentKey))
|
|
108
108
|
// }
|
|
109
|
-
_self.addEventListener(
|
|
109
|
+
_self.addEventListener("message", function(event) {
|
|
110
110
|
var _event_data = event.data, action = _event_data.action, payload = _event_data.payload, fn = _event_data.fn;
|
|
111
111
|
log(action, payload);
|
|
112
112
|
// 通过proxy进行代理,每次修改的时候,自动向外抛出postMessage
|
|
@@ -118,10 +118,10 @@ var OkWorker = /*#__PURE__*/ function() {
|
|
|
118
118
|
//
|
|
119
119
|
// const result = fn(data, schema)
|
|
120
120
|
_self.postMessage({
|
|
121
|
-
action:
|
|
121
|
+
action: "delete",
|
|
122
122
|
payload: {
|
|
123
|
-
key:
|
|
124
|
-
value:
|
|
123
|
+
key: "key3[0].key1",
|
|
124
|
+
value: "index"
|
|
125
125
|
}
|
|
126
126
|
});
|
|
127
127
|
});
|
|
@@ -96,9 +96,9 @@ function _create_super(Derived) {
|
|
|
96
96
|
return _possible_constructor_return(this, result);
|
|
97
97
|
};
|
|
98
98
|
}
|
|
99
|
-
import { RegisterControls, isDataBind } from
|
|
100
|
-
import { CONTROL_BASE_TYPE, CONTROL_TYPE, JSONCopy, loopFormSchema, isArray } from
|
|
101
|
-
import { hasChildrenControl, loopDataViewControl, loopFormControl } from
|
|
99
|
+
import { RegisterControls, isDataBind } from "@byteluck-fe/model-driven-core";
|
|
100
|
+
import { CONTROL_BASE_TYPE, CONTROL_TYPE, JSONCopy, loopFormSchema, isArray } from "@byteluck-fe/model-driven-shared";
|
|
101
|
+
import { hasChildrenControl, loopDataViewControl, loopFormControl } from "../utils/runtimeUtils";
|
|
102
102
|
export var Runtime = /*#__PURE__*/ function(RegisterControls) {
|
|
103
103
|
"use strict";
|
|
104
104
|
_inherits(Runtime, RegisterControls);
|
|
@@ -106,7 +106,7 @@ export var Runtime = /*#__PURE__*/ function(RegisterControls) {
|
|
|
106
106
|
function Runtime(props) {
|
|
107
107
|
_class_call_check(this, Runtime);
|
|
108
108
|
var _this;
|
|
109
|
-
_this = _super.call(this,
|
|
109
|
+
_this = _super.call(this, "Runtime");
|
|
110
110
|
_define_property(_assert_this_initialized(_this), "_schema", void 0);
|
|
111
111
|
_define_property(_assert_this_initialized(_this), "_instance", void 0);
|
|
112
112
|
_define_property(_assert_this_initialized(_this), "_flatInstances", []);
|
|
@@ -125,7 +125,7 @@ export var Runtime = /*#__PURE__*/ function(RegisterControls) {
|
|
|
125
125
|
var instances = [];
|
|
126
126
|
var instanceMap = {};
|
|
127
127
|
var controlParentIdMap = {};
|
|
128
|
-
loop(this._instance,
|
|
128
|
+
loop(this._instance, "", function(item, parentId) {
|
|
129
129
|
var _item_parent;
|
|
130
130
|
// 3.4.1 避免将subtable-row 放到 _flatInstances 中
|
|
131
131
|
//4.3.0-lh2 将自处注释掉,为使instance.parent能取到父级
|
|
@@ -140,7 +140,7 @@ export var Runtime = /*#__PURE__*/ function(RegisterControls) {
|
|
|
140
140
|
instanceMap[item.id] = [];
|
|
141
141
|
}
|
|
142
142
|
//不知为何subtable-column会多存一次
|
|
143
|
-
if (item.type ===
|
|
143
|
+
if (item.type === "subtable-column") {
|
|
144
144
|
if (instanceMap[item.id].length > 0) {
|
|
145
145
|
return;
|
|
146
146
|
}
|
|
@@ -294,7 +294,7 @@ function loop(control, parentId, callback) {
|
|
|
294
294
|
// @ts-ignore
|
|
295
295
|
loop(ctl.children, ctl.id, callback);
|
|
296
296
|
}
|
|
297
|
-
if (hasHeaderOrFooterControl(item,
|
|
297
|
+
if (hasHeaderOrFooterControl(item, "headers")) {
|
|
298
298
|
loop(item.props.headers, item.id, callback);
|
|
299
299
|
}
|
|
300
300
|
// if (hasHeaderOrFooterControl(item, 'footers')) {
|
|
@@ -331,7 +331,7 @@ item) {
|
|
|
331
331
|
// data[item.id] = item.rules
|
|
332
332
|
data[item.id] = result;
|
|
333
333
|
var itemRules = {
|
|
334
|
-
type:
|
|
334
|
+
type: "array",
|
|
335
335
|
fields: {}
|
|
336
336
|
};
|
|
337
337
|
(isSubtableDefaultRules === true ? [
|
|
@@ -343,7 +343,7 @@ item) {
|
|
|
343
343
|
if (itemRules.fields) {
|
|
344
344
|
if (!itemRules.fields[index]) {
|
|
345
345
|
itemRules.fields[index] = {
|
|
346
|
-
type:
|
|
346
|
+
type: "object",
|
|
347
347
|
required: true,
|
|
348
348
|
fields: {}
|
|
349
349
|
};
|
|
@@ -372,7 +372,7 @@ item) {
|
|
|
372
372
|
if (item.controlType === CONTROL_BASE_TYPE.FORM) {
|
|
373
373
|
if (isDataBind(item.props.dataBind)) {
|
|
374
374
|
var _item_props_dataBind;
|
|
375
|
-
if (((_item_props_dataBind = item.props.dataBind) === null || _item_props_dataBind === void 0 ? void 0 : _item_props_dataBind.fieldCode) !=
|
|
375
|
+
if (((_item_props_dataBind = item.props.dataBind) === null || _item_props_dataBind === void 0 ? void 0 : _item_props_dataBind.fieldCode) != "") {
|
|
376
376
|
var _item_props_dataBind1;
|
|
377
377
|
data[(_item_props_dataBind1 = item.props.dataBind) === null || _item_props_dataBind1 === void 0 ? void 0 : _item_props_dataBind1.fieldCode] = result;
|
|
378
378
|
}
|
|
@@ -380,7 +380,7 @@ item) {
|
|
|
380
380
|
for(var dataBindKey in item.props.dataBind){
|
|
381
381
|
var _item_props_dataBind_dataBindKey;
|
|
382
382
|
// @ts-ignore
|
|
383
|
-
if (((_item_props_dataBind_dataBindKey = item.props.dataBind[dataBindKey]) === null || _item_props_dataBind_dataBindKey === void 0 ? void 0 : _item_props_dataBind_dataBindKey.fieldCode) !=
|
|
383
|
+
if (((_item_props_dataBind_dataBindKey = item.props.dataBind[dataBindKey]) === null || _item_props_dataBind_dataBindKey === void 0 ? void 0 : _item_props_dataBind_dataBindKey.fieldCode) != "") {
|
|
384
384
|
var // @ts-ignore
|
|
385
385
|
_item_props_dataBind_dataBindKey1, _findFields;
|
|
386
386
|
// @ts-ignore
|
|
@@ -392,7 +392,7 @@ item) {
|
|
|
392
392
|
var _item_props_datasourceBind, _item_props_datasourceBind1;
|
|
393
393
|
data[(_item_props_datasourceBind = item.props.datasourceBind) === null || _item_props_datasourceBind === void 0 ? void 0 : _item_props_datasourceBind.dataCode] = result;
|
|
394
394
|
var itemRules = {
|
|
395
|
-
type:
|
|
395
|
+
type: "array",
|
|
396
396
|
fields: {}
|
|
397
397
|
};
|
|
398
398
|
(isSubtableDefaultRules === true ? [
|
|
@@ -404,7 +404,7 @@ item) {
|
|
|
404
404
|
if (itemRules.fields) {
|
|
405
405
|
if (!itemRules.fields[index]) {
|
|
406
406
|
itemRules.fields[index] = {
|
|
407
|
-
type:
|
|
407
|
+
type: "object",
|
|
408
408
|
required: true,
|
|
409
409
|
fields: {}
|
|
410
410
|
};
|
|
@@ -414,7 +414,7 @@ item) {
|
|
|
414
414
|
for(var dataBindKey in formControl.props.dataBind){
|
|
415
415
|
var _formControl_props_dataBind_dataBindKey;
|
|
416
416
|
// @ts-ignore
|
|
417
|
-
if (((_formControl_props_dataBind_dataBindKey = formControl.props.dataBind[dataBindKey]) === null || _formControl_props_dataBind_dataBindKey === void 0 ? void 0 : _formControl_props_dataBind_dataBindKey.fieldCode) !=
|
|
417
|
+
if (((_formControl_props_dataBind_dataBindKey = formControl.props.dataBind[dataBindKey]) === null || _formControl_props_dataBind_dataBindKey === void 0 ? void 0 : _formControl_props_dataBind_dataBindKey.fieldCode) != "") {
|
|
418
418
|
var _findFields;
|
|
419
419
|
// @ts-ignore
|
|
420
420
|
itemRules.fields[index].fields[// @ts-ignore
|
|
@@ -423,7 +423,7 @@ item) {
|
|
|
423
423
|
}
|
|
424
424
|
} else {
|
|
425
425
|
var _formControl_props_dataBind;
|
|
426
|
-
if (((_formControl_props_dataBind = formControl.props.dataBind) === null || _formControl_props_dataBind === void 0 ? void 0 : _formControl_props_dataBind.fieldCode) !=
|
|
426
|
+
if (((_formControl_props_dataBind = formControl.props.dataBind) === null || _formControl_props_dataBind === void 0 ? void 0 : _formControl_props_dataBind.fieldCode) != "") {
|
|
427
427
|
var _formControl_props_dataBind1;
|
|
428
428
|
// @ts-ignore
|
|
429
429
|
itemRules.fields[index].fields[(_formControl_props_dataBind1 = formControl.props.dataBind) === null || _formControl_props_dataBind1 === void 0 ? void 0 : _formControl_props_dataBind1.fieldCode] = childResult;
|
package/dist/esm/common/Store.js
CHANGED
|
@@ -45,9 +45,9 @@ function _object_spread(target) {
|
|
|
45
45
|
}
|
|
46
46
|
return target;
|
|
47
47
|
}
|
|
48
|
-
import { DataBind, isDataBind } from
|
|
49
|
-
import { loopFormSchema, JSONCopy, warn, CONTROL_TYPE, CONTROL_BASE_TYPE } from
|
|
50
|
-
import { loopDataViewControl, loopFormControl, buildUUID } from
|
|
48
|
+
import { DataBind, isDataBind } from "@byteluck-fe/model-driven-core";
|
|
49
|
+
import { loopFormSchema, JSONCopy, warn, CONTROL_TYPE, CONTROL_BASE_TYPE } from "@byteluck-fe/model-driven-shared";
|
|
50
|
+
import { loopDataViewControl, loopFormControl, buildUUID } from "../utils/runtimeUtils";
|
|
51
51
|
var Store = /*#__PURE__*/ function() {
|
|
52
52
|
"use strict";
|
|
53
53
|
function Store(props) {
|
|
@@ -84,7 +84,7 @@ var Store = /*#__PURE__*/ function() {
|
|
|
84
84
|
value.forEach(function(item) {
|
|
85
85
|
if (!item.uid) {
|
|
86
86
|
Object.assign(item, {
|
|
87
|
-
uid:
|
|
87
|
+
uid: "new:" + buildUUID("uid")
|
|
88
88
|
});
|
|
89
89
|
}
|
|
90
90
|
});
|
|
@@ -192,9 +192,9 @@ var Store = /*#__PURE__*/ function() {
|
|
|
192
192
|
if (controlInfo !== undefined) {
|
|
193
193
|
var state = this.emptyState[controlInfo.dataView][controlId];
|
|
194
194
|
//判断找到的是否是明细表的控件
|
|
195
|
-
if (
|
|
195
|
+
if ("children" in controlInfo) {
|
|
196
196
|
Object.assign(state, {
|
|
197
|
-
uid:
|
|
197
|
+
uid: "new:" + buildUUID("uid")
|
|
198
198
|
});
|
|
199
199
|
}
|
|
200
200
|
return state;
|
|
@@ -292,7 +292,7 @@ item) {
|
|
|
292
292
|
var _item_props_defaultRows, _fill_map;
|
|
293
293
|
dataViewState[item.id] = (_fill_map = new Array((_item_props_defaultRows = item.props.defaultRows) !== null && _item_props_defaultRows !== void 0 ? _item_props_defaultRows : 1).fill(0).map(function() {
|
|
294
294
|
return _object_spread({
|
|
295
|
-
uid:
|
|
295
|
+
uid: "new:" + buildUUID("uid")
|
|
296
296
|
}, JSONCopy(emptyTemplate));
|
|
297
297
|
})) !== null && _fill_map !== void 0 ? _fill_map : [];
|
|
298
298
|
emptyDataViewState[item.id] = emptyTemplate;
|
|
@@ -347,7 +347,7 @@ item) {
|
|
|
347
347
|
});
|
|
348
348
|
}
|
|
349
349
|
} else {
|
|
350
|
-
if (item.props.datasourceBind.dataCode ===
|
|
350
|
+
if (item.props.datasourceBind.dataCode === "") {
|
|
351
351
|
//敏捷依赖后端生成dataCode,预览的时候没有
|
|
352
352
|
warn("datasourceBind.dataCode is empty! maybe in preview mode, control:".concat(item.id, " type:").concat(item.type));
|
|
353
353
|
return;
|
|
@@ -408,7 +408,7 @@ item) {
|
|
|
408
408
|
data[item.id] = {
|
|
409
409
|
dataBind: new DataBind({
|
|
410
410
|
dataCode: item.props.datasourceBind.dataCode,
|
|
411
|
-
fieldCode:
|
|
411
|
+
fieldCode: ""
|
|
412
412
|
}),
|
|
413
413
|
dataView: dataViewId,
|
|
414
414
|
children: {},
|