@byteluck-fe/model-driven-engine 2.5.0-beta.8 → 2.5.0-beta.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.
- package/dist/esm/common/ActionManager.js +40 -157
- package/dist/esm/common/DataManager.js +20 -129
- package/dist/esm/common/Engine.js +210 -337
- package/dist/esm/common/OkWorker.js +13 -27
- package/dist/esm/common/Runtime.js +11 -26
- package/dist/esm/common/Store.js +49 -50
- package/dist/esm/common/checkerValue.js +40 -40
- package/dist/esm/common/index.js +2 -2
- package/dist/esm/common/proxyState.js +47 -47
- package/dist/esm/index.js +3 -3
- package/dist/esm/plugins/CalcPlugin.js +59 -67
- package/dist/esm/plugins/ControlsEventPlugin.js +68 -191
- package/dist/esm/plugins/ES6ModulePlugin.js +8 -24
- package/dist/esm/plugins/LifecycleEventPlugin.js +64 -183
- package/dist/esm/plugins/StylePlugin.js +7 -22
- package/dist/esm/plugins/index.js +5 -5
- package/dist/esm/utils/index.js +1 -1
- package/dist/esm/utils/runtimeUtils.js +7 -5
- package/dist/index.umd.js +8 -8
- package/dist/types/common/Engine.d.ts +6 -6
- package/dist/types/common/Runtime.d.ts +1 -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 +4 -4
|
@@ -113,7 +113,7 @@ function _inherits(subClass, superClass) {
|
|
|
113
113
|
}
|
|
114
114
|
function _instanceof(left, right) {
|
|
115
115
|
if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
|
|
116
|
-
return
|
|
116
|
+
return right[Symbol.hasInstance](left);
|
|
117
117
|
} else {
|
|
118
118
|
return left instanceof right;
|
|
119
119
|
}
|
|
@@ -166,30 +166,6 @@ function _objectSpread(target) {
|
|
|
166
166
|
}
|
|
167
167
|
return target;
|
|
168
168
|
}
|
|
169
|
-
function ownKeys(object, enumerableOnly) {
|
|
170
|
-
var keys = Object.keys(object);
|
|
171
|
-
if (Object.getOwnPropertySymbols) {
|
|
172
|
-
var symbols = Object.getOwnPropertySymbols(object);
|
|
173
|
-
if (enumerableOnly) {
|
|
174
|
-
symbols = symbols.filter(function(sym) {
|
|
175
|
-
return Object.getOwnPropertyDescriptor(object, sym).enumerable;
|
|
176
|
-
});
|
|
177
|
-
}
|
|
178
|
-
keys.push.apply(keys, symbols);
|
|
179
|
-
}
|
|
180
|
-
return keys;
|
|
181
|
-
}
|
|
182
|
-
function _objectSpreadProps(target, source) {
|
|
183
|
-
source = source != null ? source : {};
|
|
184
|
-
if (Object.getOwnPropertyDescriptors) {
|
|
185
|
-
Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
|
|
186
|
-
} else {
|
|
187
|
-
ownKeys(Object(source)).forEach(function(key) {
|
|
188
|
-
Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
|
|
189
|
-
});
|
|
190
|
-
}
|
|
191
|
-
return target;
|
|
192
|
-
}
|
|
193
169
|
function _possibleConstructorReturn(self, call) {
|
|
194
170
|
if (call && (_typeof(call) === "object" || typeof call === "function")) {
|
|
195
171
|
return call;
|
|
@@ -252,147 +228,44 @@ function _createSuper(Derived) {
|
|
|
252
228
|
return _possibleConstructorReturn(this, result);
|
|
253
229
|
};
|
|
254
230
|
}
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
return g = {
|
|
266
|
-
next: verb(0),
|
|
267
|
-
"throw": verb(1),
|
|
268
|
-
"return": verb(2)
|
|
269
|
-
}, typeof Symbol === "function" && (g[Symbol.iterator] = function() {
|
|
270
|
-
return this;
|
|
271
|
-
}), g;
|
|
272
|
-
function verb(n) {
|
|
273
|
-
return function(v) {
|
|
274
|
-
return step([
|
|
275
|
-
n,
|
|
276
|
-
v
|
|
277
|
-
]);
|
|
278
|
-
};
|
|
279
|
-
}
|
|
280
|
-
function step(op) {
|
|
281
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
282
|
-
while(_)try {
|
|
283
|
-
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;
|
|
284
|
-
if (y = 0, t) op = [
|
|
285
|
-
op[0] & 2,
|
|
286
|
-
t.value
|
|
287
|
-
];
|
|
288
|
-
switch(op[0]){
|
|
289
|
-
case 0:
|
|
290
|
-
case 1:
|
|
291
|
-
t = op;
|
|
292
|
-
break;
|
|
293
|
-
case 4:
|
|
294
|
-
_.label++;
|
|
295
|
-
return {
|
|
296
|
-
value: op[1],
|
|
297
|
-
done: false
|
|
298
|
-
};
|
|
299
|
-
case 5:
|
|
300
|
-
_.label++;
|
|
301
|
-
y = op[1];
|
|
302
|
-
op = [
|
|
303
|
-
0
|
|
304
|
-
];
|
|
305
|
-
continue;
|
|
306
|
-
case 7:
|
|
307
|
-
op = _.ops.pop();
|
|
308
|
-
_.trys.pop();
|
|
309
|
-
continue;
|
|
310
|
-
default:
|
|
311
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
|
|
312
|
-
_ = 0;
|
|
313
|
-
continue;
|
|
314
|
-
}
|
|
315
|
-
if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
|
|
316
|
-
_.label = op[1];
|
|
317
|
-
break;
|
|
318
|
-
}
|
|
319
|
-
if (op[0] === 6 && _.label < t[1]) {
|
|
320
|
-
_.label = t[1];
|
|
321
|
-
t = op;
|
|
322
|
-
break;
|
|
323
|
-
}
|
|
324
|
-
if (t && _.label < t[2]) {
|
|
325
|
-
_.label = t[2];
|
|
326
|
-
_.ops.push(op);
|
|
327
|
-
break;
|
|
328
|
-
}
|
|
329
|
-
if (t[2]) _.ops.pop();
|
|
330
|
-
_.trys.pop();
|
|
331
|
-
continue;
|
|
332
|
-
}
|
|
333
|
-
op = body.call(thisArg, _);
|
|
334
|
-
} catch (e) {
|
|
335
|
-
op = [
|
|
336
|
-
6,
|
|
337
|
-
e
|
|
338
|
-
];
|
|
339
|
-
y = 0;
|
|
340
|
-
} finally{
|
|
341
|
-
f = t = 0;
|
|
342
|
-
}
|
|
343
|
-
if (op[0] & 5) throw op[1];
|
|
344
|
-
return {
|
|
345
|
-
value: op[0] ? op[1] : void 0,
|
|
346
|
-
done: true
|
|
347
|
-
};
|
|
348
|
-
}
|
|
349
|
-
};
|
|
350
|
-
import { DataBind, ObjectDataBind, RuntimeListControl } from "@byteluck-fe/model-driven-core";
|
|
351
|
-
import { CONTROL_BASE_TYPE, CONTROL_TYPE, DEFAULT_LOCALE, error, genNonDuplicateId, isString, JSONCopy, log, RulesMessage, updateValueFromKeys, warn, Watcher } from "@byteluck-fe/model-driven-shared";
|
|
352
|
-
import { Runtime } from "./Runtime";
|
|
353
|
-
import { Store } from "./Store";
|
|
354
|
-
import { findItem, proxyState } from "./proxyState";
|
|
355
|
-
import { ActionManager } from "./ActionManager";
|
|
356
|
-
import { DataManager } from "./DataManager";
|
|
357
|
-
import { checkerSubtableValue, checkerValue } from "./checkerValue";
|
|
358
|
-
if (typeof window !== "undefined") {
|
|
231
|
+
import regeneratorRuntime from "regenerator-runtime";
|
|
232
|
+
import { DataBind, ObjectDataBind, RuntimeListControl } from '@byteluck-fe/model-driven-core';
|
|
233
|
+
import { CONTROL_BASE_TYPE, CONTROL_TYPE, DEFAULT_LOCALE, error, genNonDuplicateId, isString, JSONCopy, log, RulesMessage, updateValueFromKeys, warn, Watcher } from '@byteluck-fe/model-driven-shared';
|
|
234
|
+
import { Runtime } from './Runtime';
|
|
235
|
+
import { Store } from './Store';
|
|
236
|
+
import { findItem, proxyState } from './proxyState';
|
|
237
|
+
import { ActionManager } from './ActionManager';
|
|
238
|
+
import { DataManager } from './DataManager';
|
|
239
|
+
import { checkerSubtableValue, checkerValue } from './checkerValue';
|
|
240
|
+
if (typeof window !== 'undefined') {
|
|
359
241
|
// @ts-ignore
|
|
360
242
|
window.engines = {};
|
|
361
243
|
}
|
|
362
244
|
// setState的时候,存储options中转变量
|
|
363
245
|
var eventOptionsTemp = null;
|
|
364
246
|
// 当前正在注册的插件名称
|
|
365
|
-
var applyingPluginName =
|
|
366
|
-
// 整体渲染引擎 并且 提供发布订阅能力
|
|
367
|
-
|
|
247
|
+
var applyingPluginName = '';
|
|
248
|
+
var Engine = // 整体渲染引擎 并且 提供发布订阅能力
|
|
249
|
+
/*#__PURE__*/ function(Watcher1) {
|
|
368
250
|
"use strict";
|
|
369
|
-
_inherits(Engine,
|
|
251
|
+
_inherits(Engine, Watcher1);
|
|
370
252
|
var _super = _createSuper(Engine);
|
|
371
253
|
function Engine(props) {
|
|
372
254
|
_classCallCheck(this, Engine);
|
|
373
255
|
var _this;
|
|
374
256
|
_this = _super.call(this);
|
|
375
|
-
|
|
376
|
-
_defineProperty(_assertThisInitialized(_this), "rawStore", {});
|
|
377
|
-
_defineProperty(_assertThisInitialized(_this), "parent", void 0);
|
|
378
|
-
// 提供注册运行态控件以及实例化控件的能力
|
|
379
|
-
_defineProperty(_assertThisInitialized(_this), "runtime", void 0);
|
|
257
|
+
_this.rawStore = {};
|
|
380
258
|
// 提供子线程处理脚本以及修改数据的能力
|
|
381
259
|
// public worker: OkWorker
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
_defineProperty(_assertThisInitialized(_this), "$options", void 0);
|
|
389
|
-
_defineProperty(_assertThisInitialized(_this), "actionManager", new ActionManager());
|
|
390
|
-
_defineProperty(_assertThisInitialized(_this), "dataManager", void 0);
|
|
391
|
-
_defineProperty(_assertThisInitialized(_this), "_jobTasks", []);
|
|
392
|
-
_defineProperty(_assertThisInitialized(_this), "createControlInstance", _this.createInstance);
|
|
260
|
+
_this.isMounted = false;
|
|
261
|
+
_this.id = genNonDuplicateId(8);
|
|
262
|
+
_this.__pluginsApplied = false;
|
|
263
|
+
_this.actionManager = new ActionManager();
|
|
264
|
+
_this._jobTasks = [];
|
|
265
|
+
_this.createControlInstance = _this.createInstance;
|
|
393
266
|
_this.$options = Object.freeze(props);
|
|
394
|
-
var
|
|
395
|
-
language, language =
|
|
267
|
+
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,
|
|
268
|
+
language, language = _language === void 0 ? DEFAULT_LOCALE : _language, _debug = _$options.debug, debug = _debug === void 0 ? false : _debug;
|
|
396
269
|
RulesMessage.setLocale(language);
|
|
397
270
|
_this.debug = debug;
|
|
398
271
|
_this.runtime = new Runtime({
|
|
@@ -403,7 +276,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
403
276
|
_this.store = new Store({
|
|
404
277
|
instance: _this.runtime.instance
|
|
405
278
|
});
|
|
406
|
-
_this.debugLog(
|
|
279
|
+
_this.debugLog('engine is Instantiation complete');
|
|
407
280
|
// 自动执行挂载完成,也可以手动调用mount方法
|
|
408
281
|
autoMount && _this.mount();
|
|
409
282
|
return _this;
|
|
@@ -434,8 +307,8 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
434
307
|
for(var _len = arguments.length, arg = new Array(_len), _key = 0; _key < _len; _key++){
|
|
435
308
|
arg[_key] = arguments[_key];
|
|
436
309
|
}
|
|
437
|
-
var
|
|
438
|
-
(
|
|
310
|
+
var _runtime;
|
|
311
|
+
(_runtime = this.runtime).register.apply(_runtime, _toConsumableArray(arg));
|
|
439
312
|
return this;
|
|
440
313
|
}
|
|
441
314
|
},
|
|
@@ -443,14 +316,14 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
443
316
|
key: "mount",
|
|
444
317
|
value: function mount() {
|
|
445
318
|
this.debugLog("engine的mount方法开始调用");
|
|
446
|
-
var
|
|
319
|
+
var _$options = this.$options, _plugins = _$options.plugins, plugins = _plugins === void 0 ? [] : _plugins;
|
|
447
320
|
this._handlerProxyState();
|
|
448
321
|
this.__plugins = plugins;
|
|
449
322
|
this.applyPlugins();
|
|
450
323
|
// 触发所有控件的默认值的change事件
|
|
451
324
|
this.setStates(this.getState());
|
|
452
325
|
this.debugLog("engine的mount方法调用结束");
|
|
453
|
-
if (this.debug && typeof window !==
|
|
326
|
+
if (this.debug && typeof window !== 'undefined') {
|
|
454
327
|
// @ts-ignore
|
|
455
328
|
window.engines[this.id] = this;
|
|
456
329
|
}
|
|
@@ -459,7 +332,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
459
332
|
{
|
|
460
333
|
key: "destroy",
|
|
461
334
|
value: function destroy() {
|
|
462
|
-
if (this.debug && typeof window !==
|
|
335
|
+
if (this.debug && typeof window !== 'undefined') {
|
|
463
336
|
// @ts-ignore
|
|
464
337
|
delete window.engines[this.id];
|
|
465
338
|
}
|
|
@@ -481,6 +354,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
481
354
|
}
|
|
482
355
|
// @ts-ignore
|
|
483
356
|
if (this.assertInstance(instance, CONTROL_TYPE.SUBTABLE)) {
|
|
357
|
+
var ref;
|
|
484
358
|
if (newValue === null) {
|
|
485
359
|
return [];
|
|
486
360
|
}
|
|
@@ -495,12 +369,12 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
495
369
|
}, {});
|
|
496
370
|
// @ts-ignore
|
|
497
371
|
var emptyState = this.getEmptyState(instance.id);
|
|
498
|
-
return newValue === null ||
|
|
499
|
-
|
|
500
|
-
checkerSubtableValue(fieldTypeMap, row, emptyState)
|
|
372
|
+
return (ref = newValue) === null || ref === void 0 ? void 0 : ref.map(function(row) {
|
|
373
|
+
// @ts-ignore
|
|
374
|
+
return checkerSubtableValue(fieldTypeMap, row, emptyState);
|
|
501
375
|
});
|
|
502
376
|
}
|
|
503
|
-
var keys = key.split(
|
|
377
|
+
var keys = key.split('.');
|
|
504
378
|
var lastKey = keys[keys.length - 1];
|
|
505
379
|
try {
|
|
506
380
|
return checkerValue(instance.fieldType, lastKey, newValue, oldValue);
|
|
@@ -532,7 +406,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
532
406
|
var newRows = [];
|
|
533
407
|
for(var i = 0; i < len; i++){
|
|
534
408
|
// @ts-ignore
|
|
535
|
-
var row = _this.listControlCreateRow(subtable,
|
|
409
|
+
var row = _this.listControlCreateRow(subtable, 'subtable-row');
|
|
536
410
|
row && newRows.push(row);
|
|
537
411
|
}
|
|
538
412
|
// @ts-ignore
|
|
@@ -546,19 +420,19 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
546
420
|
if (type && args) {
|
|
547
421
|
// const subtableOldLength = subtable.children.length
|
|
548
422
|
switch(type){
|
|
549
|
-
case
|
|
550
|
-
case
|
|
551
|
-
var
|
|
423
|
+
case 'push':
|
|
424
|
+
case 'unshift':
|
|
425
|
+
var _children;
|
|
552
426
|
var newRowLengths = args.length;
|
|
553
427
|
createdNewRows = createRows(newRowLengths);
|
|
554
428
|
createdNewRowsData = args;
|
|
555
|
-
(
|
|
429
|
+
(_children = subtable.children)[type].apply(_children, _toConsumableArray(createdNewRows));
|
|
556
430
|
this.runtime.getFlatInstances();
|
|
557
431
|
break;
|
|
558
|
-
case
|
|
432
|
+
case 'splice':
|
|
559
433
|
if (args.length > 2) {
|
|
560
434
|
var // @ts-ignore
|
|
561
|
-
|
|
435
|
+
_children1;
|
|
562
436
|
var newRowLengths1 = args.length - 2;
|
|
563
437
|
var newValues = args.slice(2);
|
|
564
438
|
createdNewRows = createRows(newRowLengths1);
|
|
@@ -567,7 +441,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
567
441
|
var start = args[0];
|
|
568
442
|
// 替换几个
|
|
569
443
|
var replace = args[1];
|
|
570
|
-
(
|
|
444
|
+
(_children1 = subtable.children)[type].apply(_children1, [
|
|
571
445
|
start,
|
|
572
446
|
replace
|
|
573
447
|
].concat(_toConsumableArray(createdNewRows)));
|
|
@@ -578,29 +452,29 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
578
452
|
// })
|
|
579
453
|
} else {
|
|
580
454
|
var // @ts-ignore
|
|
581
|
-
|
|
582
|
-
(
|
|
455
|
+
_children2;
|
|
456
|
+
(_children2 = subtable.children)[type].apply(_children2, _toConsumableArray(args));
|
|
583
457
|
this.runtime.getFlatInstances();
|
|
584
458
|
}
|
|
585
459
|
break;
|
|
586
460
|
default:
|
|
587
461
|
var // @ts-ignore
|
|
588
|
-
|
|
589
|
-
(
|
|
462
|
+
_children3;
|
|
463
|
+
(_children3 = subtable.children)[type].apply(_children3, _toConsumableArray(args));
|
|
590
464
|
this.runtime.getFlatInstances();
|
|
591
465
|
break;
|
|
592
466
|
}
|
|
593
|
-
if (type ===
|
|
467
|
+
if (type === 'splice') {
|
|
594
468
|
deleted = result;
|
|
595
469
|
} else if ([
|
|
596
|
-
|
|
597
|
-
|
|
470
|
+
'pop',
|
|
471
|
+
'shift'
|
|
598
472
|
].includes(type)) {
|
|
599
473
|
deleted = [
|
|
600
474
|
result
|
|
601
475
|
];
|
|
602
476
|
}
|
|
603
|
-
this.emit(
|
|
477
|
+
this.emit('list-change', {
|
|
604
478
|
instance: subtable,
|
|
605
479
|
value: this.getState(subtable.id),
|
|
606
480
|
options: Object.assign({}, options, {
|
|
@@ -627,26 +501,26 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
627
501
|
// if (instance instanceof RuntimeListControl) {
|
|
628
502
|
if (instance.controlType === CONTROL_BASE_TYPE.LIST) {
|
|
629
503
|
var // @ts-ignore
|
|
630
|
-
|
|
504
|
+
_children;
|
|
631
505
|
instance.children.length = 0;
|
|
632
506
|
var newValue = value;
|
|
633
507
|
// @ts-ignore
|
|
634
508
|
var newRows = [];
|
|
635
509
|
for(var i = 0; i < newValue.length; i++){
|
|
636
510
|
// @ts-ignore
|
|
637
|
-
var row = this.listControlCreateRow(instance,
|
|
511
|
+
var row = this.listControlCreateRow(instance, 'subtable-row');
|
|
638
512
|
row && newRows.push(row);
|
|
639
513
|
}
|
|
640
|
-
(
|
|
514
|
+
(_children = instance.children).push.apply(_children, _toConsumableArray(newRows));
|
|
641
515
|
this.runtime.getFlatInstances();
|
|
642
516
|
// 这里已经能拿到控件实例,所以在这里触发setStates,触发每一行每一个控件的change事件
|
|
643
517
|
// for (let i = 0; i < newValue.length; i++) {
|
|
644
518
|
// this.setStates(newValue[i], i, options)
|
|
645
519
|
// }
|
|
646
|
-
this.emit(
|
|
520
|
+
this.emit('list-change', {
|
|
647
521
|
instance: instance,
|
|
648
522
|
value: value,
|
|
649
|
-
options:
|
|
523
|
+
options: _objectSpread({}, options, {
|
|
650
524
|
// @ts-ignore
|
|
651
525
|
changed: newRows,
|
|
652
526
|
data: newValue,
|
|
@@ -654,11 +528,11 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
654
528
|
})
|
|
655
529
|
});
|
|
656
530
|
} else {
|
|
657
|
-
this.emit(
|
|
531
|
+
this.emit('change', {
|
|
658
532
|
instance: instance,
|
|
659
533
|
value: this.getState(instance.id, index),
|
|
660
534
|
rowIndex: index,
|
|
661
|
-
options:
|
|
535
|
+
options: _objectSpread({}, options, {
|
|
662
536
|
oldValue: oldValue
|
|
663
537
|
})
|
|
664
538
|
});
|
|
@@ -672,13 +546,13 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
672
546
|
if (this.__pluginsApplied) return;
|
|
673
547
|
this.__plugins.forEach(function(plugin) {
|
|
674
548
|
try {
|
|
675
|
-
var
|
|
676
|
-
applyingPluginName = (
|
|
549
|
+
var _pluginName;
|
|
550
|
+
applyingPluginName = (_pluginName = plugin.pluginName) !== null && _pluginName !== void 0 ? _pluginName : plugin.constructor.name;
|
|
677
551
|
plugin.apply(_this);
|
|
678
552
|
} catch (e) {
|
|
679
553
|
error("".concat(applyingPluginName, " Plugin apply Error \n ").concat(e));
|
|
680
554
|
} finally{
|
|
681
|
-
applyingPluginName =
|
|
555
|
+
applyingPluginName = '';
|
|
682
556
|
}
|
|
683
557
|
});
|
|
684
558
|
this.__pluginsApplied = true;
|
|
@@ -692,12 +566,12 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
692
566
|
// if (row instanceof RuntimeLayoutControl) {
|
|
693
567
|
// @ts-ignore
|
|
694
568
|
if (row.controlType === CONTROL_BASE_TYPE.LAYOUT) {
|
|
695
|
-
var
|
|
569
|
+
var _children;
|
|
696
570
|
var inst = row;
|
|
697
571
|
var template = JSONCopy(instance.props.headers);
|
|
698
572
|
// @ts-ignore
|
|
699
573
|
var columns = this.createControl(template);
|
|
700
|
-
(
|
|
574
|
+
(_children = inst.children).push.apply(_children, _toConsumableArray(columns));
|
|
701
575
|
}
|
|
702
576
|
return row;
|
|
703
577
|
}
|
|
@@ -706,7 +580,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
706
580
|
key: "listControlAddRow",
|
|
707
581
|
value: function listControlAddRow(instance) {
|
|
708
582
|
var // @ts-ignore
|
|
709
|
-
rowType = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] :
|
|
583
|
+
rowType = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : 'subtable-row';
|
|
710
584
|
var row = this.listControlCreateRow(instance, rowType);
|
|
711
585
|
if (!row) return;
|
|
712
586
|
instance.children.push(row);
|
|
@@ -720,40 +594,37 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
720
594
|
var _this1 = this, _superprop_get_emit = function() {
|
|
721
595
|
return _get(_getPrototypeOf(Engine.prototype), "emit", _this);
|
|
722
596
|
};
|
|
723
|
-
return _asyncToGenerator(function() {
|
|
597
|
+
return _asyncToGenerator(regeneratorRuntime.mark(function _callee() {
|
|
724
598
|
var needWait, promiseResolver, promise, results;
|
|
725
|
-
return
|
|
726
|
-
switch(
|
|
599
|
+
return regeneratorRuntime.wrap(function _callee$(_ctx) {
|
|
600
|
+
while(1)switch(_ctx.prev = _ctx.next){
|
|
727
601
|
case 0:
|
|
728
|
-
if (!(eventKey ===
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
if (_this1.isMounted) {
|
|
733
|
-
|
|
734
|
-
|
|
735
|
-
2,
|
|
736
|
-
Promise.resolve([])
|
|
737
|
-
];
|
|
602
|
+
if (!(eventKey === 'engine-mounted')) {
|
|
603
|
+
_ctx.next = 11;
|
|
604
|
+
break;
|
|
605
|
+
}
|
|
606
|
+
if (!_this1.isMounted) {
|
|
607
|
+
_ctx.next = 4;
|
|
608
|
+
break;
|
|
738
609
|
}
|
|
739
|
-
|
|
740
|
-
|
|
741
|
-
|
|
742
|
-
|
|
743
|
-
|
|
610
|
+
warn('The engine-mounted life cycle can only be triggered once');
|
|
611
|
+
return _ctx.abrupt("return", Promise.resolve([]));
|
|
612
|
+
case 4:
|
|
613
|
+
if (!_this1._jobTasks.length) {
|
|
614
|
+
_ctx.next = 10;
|
|
615
|
+
break;
|
|
616
|
+
}
|
|
617
|
+
console.time('engine-mounted need wait');
|
|
744
618
|
needWait = _toConsumableArray(_this1._jobTasks);
|
|
745
|
-
|
|
746
|
-
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
case
|
|
750
|
-
_state.sent();
|
|
751
|
-
console.timeEnd("engine-mounted need wait");
|
|
752
|
-
_state.label = 2;
|
|
753
|
-
case 2:
|
|
619
|
+
_ctx.next = 9;
|
|
620
|
+
return Promise.all(needWait);
|
|
621
|
+
case 9:
|
|
622
|
+
console.timeEnd('engine-mounted need wait');
|
|
623
|
+
case 10:
|
|
754
624
|
_this1.isMounted = true;
|
|
755
|
-
|
|
756
|
-
|
|
625
|
+
case 11:
|
|
626
|
+
;
|
|
627
|
+
;
|
|
757
628
|
// 如果没有挂载的话,需要记录在挂载之前触发的所有任务
|
|
758
629
|
if (!_this1.isMounted) {
|
|
759
630
|
promise = new Promise(function(resolve) {
|
|
@@ -761,24 +632,22 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
761
632
|
});
|
|
762
633
|
_this1._jobTasks.push(promise);
|
|
763
634
|
}
|
|
764
|
-
|
|
765
|
-
|
|
766
|
-
|
|
767
|
-
|
|
768
|
-
case 4:
|
|
769
|
-
results = _state.sent();
|
|
635
|
+
_ctx.next = 16;
|
|
636
|
+
return _superprop_get_emit().call(_this1, eventKey, payload);
|
|
637
|
+
case 16:
|
|
638
|
+
results = _ctx.sent;
|
|
770
639
|
if (promiseResolver && promise) {
|
|
771
640
|
// 每一个任务完成的时候,都把自己从task中去掉
|
|
772
641
|
promiseResolver();
|
|
773
642
|
_this1._jobTasks.splice(_this1._jobTasks.indexOf(promise), 1);
|
|
774
643
|
}
|
|
775
|
-
return
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
|
|
644
|
+
return _ctx.abrupt("return", results);
|
|
645
|
+
case 19:
|
|
646
|
+
case "end":
|
|
647
|
+
return _ctx.stop();
|
|
779
648
|
}
|
|
780
|
-
});
|
|
781
|
-
})();
|
|
649
|
+
}, _callee);
|
|
650
|
+
}))();
|
|
782
651
|
}
|
|
783
652
|
},
|
|
784
653
|
{
|
|
@@ -796,8 +665,8 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
796
665
|
for(var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++){
|
|
797
666
|
args[_key] = arguments[_key];
|
|
798
667
|
}
|
|
799
|
-
var
|
|
800
|
-
return (
|
|
668
|
+
var _runtime;
|
|
669
|
+
return (_runtime = this.runtime).createControl.apply(_runtime, _toConsumableArray(args));
|
|
801
670
|
}
|
|
802
671
|
},
|
|
803
672
|
{
|
|
@@ -825,10 +694,10 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
825
694
|
if (controlId === undefined) {
|
|
826
695
|
return rules;
|
|
827
696
|
} else {
|
|
828
|
-
var
|
|
697
|
+
var ref, ref1;
|
|
829
698
|
return {
|
|
830
|
-
rules: (
|
|
831
|
-
antdRules: (
|
|
699
|
+
rules: (ref = rules.rules[controlId]) === null || ref === void 0 ? void 0 : ref.fields,
|
|
700
|
+
antdRules: (ref1 = rules.antdRules[controlId]) === null || ref1 === void 0 ? void 0 : ref1.fields
|
|
832
701
|
};
|
|
833
702
|
}
|
|
834
703
|
}
|
|
@@ -839,8 +708,8 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
839
708
|
if (controlId === undefined) {
|
|
840
709
|
return this.runtime.rules;
|
|
841
710
|
} else {
|
|
842
|
-
var
|
|
843
|
-
return (
|
|
711
|
+
var ref;
|
|
712
|
+
return (ref = this.runtime.rules[controlId]) === null || ref === void 0 ? void 0 : ref.fields;
|
|
844
713
|
}
|
|
845
714
|
}
|
|
846
715
|
},
|
|
@@ -850,8 +719,8 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
850
719
|
if (controlId === undefined) {
|
|
851
720
|
return this.runtime.antdRules;
|
|
852
721
|
} else {
|
|
853
|
-
var
|
|
854
|
-
return (
|
|
722
|
+
var ref;
|
|
723
|
+
return (ref = this.runtime.antdRules[controlId]) === null || ref === void 0 ? void 0 : ref.fields;
|
|
855
724
|
}
|
|
856
725
|
}
|
|
857
726
|
},
|
|
@@ -888,9 +757,9 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
888
757
|
key: "setState",
|
|
889
758
|
value: function setState(controlId, value, rowIndex, options) {
|
|
890
759
|
eventOptionsTemp = options;
|
|
891
|
-
this.debugLog(
|
|
760
|
+
this.debugLog('[%o]: 触发setState, 修改的值为%o, rowIndex=%o, options=%o', controlId, value, rowIndex, options);
|
|
892
761
|
this.store.setState(controlId, value, rowIndex);
|
|
893
|
-
this.debugLog(
|
|
762
|
+
this.debugLog('[%o]: setState完成, 修改的值为%o, rowIndex=%o', controlId, value, rowIndex);
|
|
894
763
|
eventOptionsTemp = null;
|
|
895
764
|
}
|
|
896
765
|
},
|
|
@@ -903,19 +772,20 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
903
772
|
var _this = this;
|
|
904
773
|
var newStates = states !== null && states !== void 0 ? states : {};
|
|
905
774
|
Object.keys(newStates).forEach(function(stateId) {
|
|
775
|
+
var _this2 = _this;
|
|
906
776
|
Object.entries(_this.store.controlIdMapping).forEach(function(param) {
|
|
907
777
|
var _param = _slicedToArray(param, 2), controlId = _param[0], controlIdMapping = _param[1];
|
|
908
778
|
if (controlIdMapping.dataView === stateId) {
|
|
909
779
|
// state对象是dataView包裹的
|
|
910
780
|
var value = newStates[stateId][controlId];
|
|
911
781
|
if (value !== undefined) {
|
|
912
|
-
|
|
782
|
+
_this2.setState(controlId, value, rowIndex, options);
|
|
913
783
|
}
|
|
914
784
|
} else {
|
|
915
785
|
// state对象是单独的,没有被dataView包裹的
|
|
916
786
|
if (controlId === stateId || controlIdMapping.children && controlIdMapping.children[stateId]) {
|
|
917
787
|
if (newStates[stateId] !== undefined) {
|
|
918
|
-
|
|
788
|
+
_this2.setState(stateId, newStates[stateId], rowIndex, options);
|
|
919
789
|
}
|
|
920
790
|
}
|
|
921
791
|
}
|
|
@@ -943,10 +813,10 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
943
813
|
if (!dataBindMapping1) {
|
|
944
814
|
return;
|
|
945
815
|
}
|
|
946
|
-
var
|
|
816
|
+
var dataBind1 = dataBindMapping1.dataBind, controlId1 = dataBindMapping1.controlId;
|
|
947
817
|
var state = this.getState(controlId1, rowIndex);
|
|
948
|
-
if (_instanceof(
|
|
949
|
-
return Object.entries(
|
|
818
|
+
if (_instanceof(dataBind1, ObjectDataBind)) {
|
|
819
|
+
return Object.entries(dataBind1).reduce(function(result, param) {
|
|
950
820
|
var _param = _slicedToArray(param, 2), key = _param[0], dataBind = _param[1];
|
|
951
821
|
// objectDataBind的元素,跳过下一次赋值
|
|
952
822
|
if (dataBind.fieldCode === fieldCode) {
|
|
@@ -973,18 +843,18 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
973
843
|
var data = getFieldData.map(function(item) {
|
|
974
844
|
var obj = {};
|
|
975
845
|
for(var key in item){
|
|
976
|
-
var
|
|
977
|
-
var fieldCode = (
|
|
846
|
+
var ref, ref2, ref3;
|
|
847
|
+
var fieldCode = (ref2 = (ref = controlIdMapping[controlId]) === null || ref === void 0 ? void 0 : ref.children[key]) === null || ref2 === void 0 ? void 0 : (ref3 = ref2.dataBind) === null || ref3 === void 0 ? void 0 : ref3.fieldCode;
|
|
978
848
|
//未绑定字段的控件,直接抛弃
|
|
979
|
-
if (fieldCode !==
|
|
980
|
-
var
|
|
849
|
+
if (fieldCode !== '') {
|
|
850
|
+
var ref4;
|
|
981
851
|
if (fieldCode) {
|
|
982
852
|
obj[fieldCode] = item[key];
|
|
983
|
-
} else if ((
|
|
853
|
+
} else if ((ref4 = controlIdMapping[controlId]) === null || ref4 === void 0 ? void 0 : ref4.children[key]) {
|
|
984
854
|
// 兼容一个控件需要绑定多个字段的情况
|
|
985
855
|
for(var keyChi in item[key]){
|
|
986
|
-
var
|
|
987
|
-
obj[(
|
|
856
|
+
var ref5, ref6;
|
|
857
|
+
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];
|
|
988
858
|
}
|
|
989
859
|
}
|
|
990
860
|
}
|
|
@@ -993,45 +863,45 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
993
863
|
});
|
|
994
864
|
return data;
|
|
995
865
|
} else {
|
|
996
|
-
var _loop = function(
|
|
997
|
-
var
|
|
998
|
-
if ((
|
|
999
|
-
var
|
|
1000
|
-
|
|
1001
|
-
} else if ((
|
|
1002
|
-
var
|
|
866
|
+
var _loop = function(key1) {
|
|
867
|
+
var ref15, ref7, ref8, ref9;
|
|
868
|
+
if ((ref15 = controlIdMapping[key1]) === null || ref15 === void 0 ? void 0 : (ref7 = ref15.dataBind) === null || ref7 === void 0 ? void 0 : ref7.fieldCode) {
|
|
869
|
+
var ref10;
|
|
870
|
+
obj1[(ref10 = controlIdMapping[key1]) === null || ref10 === void 0 ? void 0 : ref10.dataBind.fieldCode] = getFieldData[key1];
|
|
871
|
+
} else if ((ref8 = controlIdMapping[key1]) === null || ref8 === void 0 ? void 0 : (ref9 = ref8.dataBind) === null || ref9 === void 0 ? void 0 : ref9.dataCode) {
|
|
872
|
+
var ref11;
|
|
1003
873
|
// 明细字表只循环一层明细子表未递归
|
|
1004
|
-
|
|
874
|
+
obj1[(ref11 = controlIdMapping[key1]) === null || ref11 === void 0 ? void 0 : ref11.dataBind.dataCode] = getFieldData[key1].map(function(item) {
|
|
1005
875
|
var objChi = {};
|
|
1006
876
|
for(var keyChi in item){
|
|
1007
|
-
var
|
|
1008
|
-
var fieldCode = (
|
|
877
|
+
var ref;
|
|
878
|
+
var fieldCode = (ref = controlIdMapping[key1].children[keyChi]) === null || ref === void 0 ? void 0 : ref.dataBind.fieldCode;
|
|
1009
879
|
//未绑定字段的控件,直接抛弃
|
|
1010
|
-
if (fieldCode !==
|
|
880
|
+
if (fieldCode !== '') {
|
|
1011
881
|
if (fieldCode) {
|
|
1012
882
|
objChi[fieldCode] = item[keyChi];
|
|
1013
883
|
} else {
|
|
1014
884
|
for(var keyChi1 in item[keyChi]){
|
|
1015
|
-
var
|
|
1016
|
-
objChi[(
|
|
885
|
+
var ref14;
|
|
886
|
+
objChi[(ref14 = controlIdMapping[key1].children[keyChi]) === null || ref14 === void 0 ? void 0 : ref14.dataBind[keyChi1].fieldCode] = item[keyChi][keyChi1];
|
|
1017
887
|
}
|
|
1018
888
|
}
|
|
1019
889
|
}
|
|
1020
890
|
}
|
|
1021
891
|
return objChi;
|
|
1022
892
|
});
|
|
1023
|
-
} else if (controlIdMapping[
|
|
893
|
+
} else if (controlIdMapping[key1]) {
|
|
1024
894
|
// 兼容一个控件需要绑定多个字段的情况
|
|
1025
|
-
for(var
|
|
1026
|
-
var
|
|
1027
|
-
|
|
895
|
+
for(var keyChi2 in getFieldData[key1]){
|
|
896
|
+
var ref12, ref13;
|
|
897
|
+
obj1[(ref13 = (ref12 = controlIdMapping[key1]) === null || ref12 === void 0 ? void 0 : ref12.dataBind[keyChi2]) === null || ref13 === void 0 ? void 0 : ref13.fieldCode] = getFieldData[key1][keyChi2];
|
|
1028
898
|
}
|
|
1029
899
|
}
|
|
1030
900
|
};
|
|
1031
901
|
// 主表
|
|
1032
|
-
var
|
|
1033
|
-
for(var
|
|
1034
|
-
return
|
|
902
|
+
var obj1 = {};
|
|
903
|
+
for(var key1 in getFieldData)_loop(key1);
|
|
904
|
+
return obj1;
|
|
1035
905
|
}
|
|
1036
906
|
}
|
|
1037
907
|
return;
|
|
@@ -1051,12 +921,12 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
1051
921
|
if (!dataBindMapping) {
|
|
1052
922
|
return;
|
|
1053
923
|
}
|
|
1054
|
-
var
|
|
1055
|
-
if (_instanceof(
|
|
1056
|
-
var
|
|
1057
|
-
var oldState = (
|
|
924
|
+
var dataBind2 = dataBindMapping.dataBind, controlId = dataBindMapping.controlId;
|
|
925
|
+
if (_instanceof(dataBind2, ObjectDataBind)) {
|
|
926
|
+
var ref;
|
|
927
|
+
var oldState = (ref = JSONCopy(this.getState(controlId, rowIndex))) !== null && ref !== void 0 ? ref : this.getEmptyState(controlId);
|
|
1058
928
|
// fieldCode不代表是key,所以需要找到对应的key
|
|
1059
|
-
var newState = Object.entries(
|
|
929
|
+
var newState = Object.entries(dataBind2).reduce(function(result, param) {
|
|
1060
930
|
var _param = _slicedToArray(param, 2), key = _param[0], dataBind = _param[1];
|
|
1061
931
|
// objectDataBind的元素,跳过下一次赋值
|
|
1062
932
|
if (dataBind.fieldCode === fieldCode) {
|
|
@@ -1086,7 +956,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
1086
956
|
}
|
|
1087
957
|
var skipKeys = [];
|
|
1088
958
|
mapping.fields.forEach(function(item) {
|
|
1089
|
-
var
|
|
959
|
+
var dataBind3 = item.dataBind, controlId = item.controlId, fieldCode = item.fieldCode;
|
|
1090
960
|
if (skipKeys.includes(fieldCode)) {
|
|
1091
961
|
return;
|
|
1092
962
|
}
|
|
@@ -1094,11 +964,11 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
1094
964
|
return;
|
|
1095
965
|
}
|
|
1096
966
|
// 对象类型的值
|
|
1097
|
-
if (_instanceof(
|
|
1098
|
-
var
|
|
1099
|
-
var oldState = (
|
|
967
|
+
if (_instanceof(dataBind3, ObjectDataBind)) {
|
|
968
|
+
var ref;
|
|
969
|
+
var oldState = (ref = JSONCopy(_this.getState(controlId, rowIndex))) !== null && ref !== void 0 ? ref : _this.getEmptyState(controlId);
|
|
1100
970
|
// fieldCode不代表是key,所以需要找到对应的key
|
|
1101
|
-
var newState = Object.entries(
|
|
971
|
+
var newState = Object.entries(dataBind3).reduce(function(result, param) {
|
|
1102
972
|
var _param = _slicedToArray(param, 2), key = _param[0], dataBind = _param[1];
|
|
1103
973
|
// objectDataBind的元素,跳过下一次赋值
|
|
1104
974
|
skipKeys.push(dataBind.fieldCode);
|
|
@@ -1128,9 +998,9 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
1128
998
|
return;
|
|
1129
999
|
}
|
|
1130
1000
|
var skipKeys = [];
|
|
1131
|
-
var
|
|
1001
|
+
var result1 = {};
|
|
1132
1002
|
mapping.fields.forEach(function(item) {
|
|
1133
|
-
var
|
|
1003
|
+
var dataBind4 = item.dataBind, controlId = item.controlId, fieldCode = item.fieldCode;
|
|
1134
1004
|
if (skipKeys.includes(fieldCode)) {
|
|
1135
1005
|
return;
|
|
1136
1006
|
}
|
|
@@ -1138,10 +1008,10 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
1138
1008
|
return;
|
|
1139
1009
|
}
|
|
1140
1010
|
// 对象类型的值
|
|
1141
|
-
if (_instanceof(
|
|
1011
|
+
if (_instanceof(dataBind4, ObjectDataBind)) {
|
|
1142
1012
|
var oldState = _this.getEmptyState(controlId);
|
|
1143
1013
|
// fieldCode不代表是key,所以需要找到对应的key
|
|
1144
|
-
|
|
1014
|
+
result1[item.controlId] = Object.entries(dataBind4).reduce(function(result, param) {
|
|
1145
1015
|
var _param = _slicedToArray(param, 2), key = _param[0], dataBind = _param[1];
|
|
1146
1016
|
// objectDataBind的元素,跳过下一次赋值
|
|
1147
1017
|
skipKeys.push(dataBind.fieldCode);
|
|
@@ -1152,10 +1022,10 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
1152
1022
|
return result;
|
|
1153
1023
|
}, oldState);
|
|
1154
1024
|
} else {
|
|
1155
|
-
|
|
1025
|
+
result1[controlId] = state[fieldCode];
|
|
1156
1026
|
}
|
|
1157
1027
|
});
|
|
1158
|
-
return
|
|
1028
|
+
return result1;
|
|
1159
1029
|
}
|
|
1160
1030
|
},
|
|
1161
1031
|
{
|
|
@@ -1165,13 +1035,14 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
1165
1035
|
* @options 传递给关联事件中 EventPayload中的options,一般在plugin中监听使用
|
|
1166
1036
|
*/ key: "setData",
|
|
1167
1037
|
value: function setData(dataSet, options) {
|
|
1168
|
-
var
|
|
1038
|
+
var _this6 = this;
|
|
1169
1039
|
this.debugLog("engine setData方法执行,参数为%o,%o。", dataSet, options);
|
|
1170
1040
|
var newState = this.store.defaultState;
|
|
1171
1041
|
Object.keys(dataSet).map(function(dataCode) {
|
|
1172
1042
|
var entity = dataSet[dataCode];
|
|
1173
1043
|
if (Array.isArray(entity)) {
|
|
1174
|
-
var
|
|
1044
|
+
var _this4 = _this6;
|
|
1045
|
+
var mapping = _this6.getDataBindMapping(dataCode);
|
|
1175
1046
|
if (!mapping) {
|
|
1176
1047
|
return;
|
|
1177
1048
|
}
|
|
@@ -1180,23 +1051,24 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
1180
1051
|
}
|
|
1181
1052
|
newState[mapping.dataViewId][mapping.controlId] = [];
|
|
1182
1053
|
entity.map(function(row) {
|
|
1183
|
-
var
|
|
1054
|
+
var _this = _this4;
|
|
1055
|
+
var newRow = JSONCopy(_this4.store.emptyState[mapping.dataViewId][mapping.controlId]);
|
|
1184
1056
|
var skipKey = [] //qiyu ObjectDataBind中会提前将相关key拿出来赋值,为了避免重复赋值,设置了此变量
|
|
1185
1057
|
;
|
|
1186
1058
|
Object.keys(row).map(function(fieldCode) {
|
|
1187
|
-
var
|
|
1059
|
+
var ref, ref18;
|
|
1188
1060
|
if (skipKey.includes(fieldCode)) {
|
|
1189
1061
|
return;
|
|
1190
1062
|
}
|
|
1191
|
-
var fieldMapping = (
|
|
1063
|
+
var fieldMapping = (ref = _this.store.dataBindMapping[dataCode]) === null || ref === void 0 ? void 0 : (ref18 = ref.fields) === null || ref18 === void 0 ? void 0 : ref18.find(function(i) {
|
|
1192
1064
|
return i.fieldCode === fieldCode;
|
|
1193
1065
|
});
|
|
1194
1066
|
if (fieldMapping) {
|
|
1195
1067
|
if (_instanceof(fieldMapping.dataBind, DataBind) && row[fieldCode] !== undefined) {
|
|
1196
1068
|
newRow[fieldMapping.controlId] = row[fieldCode];
|
|
1197
1069
|
} else if (_instanceof(fieldMapping.dataBind, ObjectDataBind)) {
|
|
1198
|
-
var
|
|
1199
|
-
var objValue = JSONCopy((
|
|
1070
|
+
var ref19;
|
|
1071
|
+
var objValue = JSONCopy((ref19 = _this.getEmptyState(fieldMapping.controlId)) !== null && ref19 !== void 0 ? ref19 : {});
|
|
1200
1072
|
Object.keys(fieldMapping.dataBind).map(function(key) {
|
|
1201
1073
|
var dataBind = fieldMapping.dataBind[key];
|
|
1202
1074
|
if (row[dataBind.fieldCode] !== undefined) {
|
|
@@ -1211,18 +1083,19 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
1211
1083
|
newState[mapping.dataViewId][mapping.controlId].push(newRow);
|
|
1212
1084
|
});
|
|
1213
1085
|
} else if (entity) {
|
|
1214
|
-
var
|
|
1215
|
-
var
|
|
1086
|
+
var ref20;
|
|
1087
|
+
var skipKey1 = [] //qiyu ObjectDataBind中会提前将相关key拿出来赋值,为了避免重复赋值,设置了此变量
|
|
1216
1088
|
;
|
|
1217
|
-
var emptyState = JSONCopy(
|
|
1218
|
-
if (!((
|
|
1089
|
+
var emptyState = JSONCopy(_this6.store.emptyState);
|
|
1090
|
+
if (!((ref20 = Object.keys(entity)) === null || ref20 === void 0 ? void 0 : ref20.length)) {
|
|
1219
1091
|
// newState = this.store.defaultState
|
|
1220
1092
|
} else {
|
|
1093
|
+
var _this3 = _this6;
|
|
1221
1094
|
Object.keys(entity).map(function(fieldCode) {
|
|
1222
|
-
if (
|
|
1095
|
+
if (skipKey1.includes(fieldCode)) {
|
|
1223
1096
|
return;
|
|
1224
1097
|
}
|
|
1225
|
-
var mapping =
|
|
1098
|
+
var mapping = _this3.getDataBindMapping(dataCode, fieldCode);
|
|
1226
1099
|
if (mapping) {
|
|
1227
1100
|
if (!newState[mapping.dataViewId[0]]) {
|
|
1228
1101
|
newState[mapping.dataViewId[0]] = {};
|
|
@@ -1230,31 +1103,31 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
1230
1103
|
if (_instanceof(mapping.dataBind, DataBind) && entity[fieldCode] !== undefined) {
|
|
1231
1104
|
newState[mapping.dataViewId[0]][mapping.controlId] = entity[fieldCode] !== undefined ? entity[fieldCode] : emptyState[mapping.dataViewId[0]][mapping.controlId];
|
|
1232
1105
|
} else if (_instanceof(mapping.dataBind, ObjectDataBind)) {
|
|
1233
|
-
var
|
|
1234
|
-
var objValue = (
|
|
1106
|
+
var ref;
|
|
1107
|
+
var objValue = (ref = _this3.getEmptyState(mapping.controlId)) !== null && ref !== void 0 ? ref : {};
|
|
1235
1108
|
Object.keys(mapping.dataBind).map(function(key) {
|
|
1236
1109
|
var dataBind = mapping.dataBind[key];
|
|
1237
1110
|
if (entity[dataBind.fieldCode] !== undefined) {
|
|
1238
1111
|
objValue[key] = entity[dataBind.fieldCode];
|
|
1239
1112
|
}
|
|
1240
|
-
|
|
1113
|
+
skipKey1.push(dataBind.fieldCode);
|
|
1241
1114
|
});
|
|
1242
1115
|
newState[mapping.dataViewId[0]][mapping.controlId] = objValue;
|
|
1243
1116
|
}
|
|
1244
1117
|
}
|
|
1245
1118
|
});
|
|
1246
1119
|
}
|
|
1247
|
-
var newMapping =
|
|
1120
|
+
var newMapping = _this6.getDataBindMapping(dataCode);
|
|
1248
1121
|
if (newMapping) {
|
|
1249
|
-
var
|
|
1250
|
-
var mappingKeys = newMapping === null || newMapping === void 0 ? void 0 : (
|
|
1122
|
+
var ref16;
|
|
1123
|
+
var mappingKeys = newMapping === null || newMapping === void 0 ? void 0 : (ref16 = newMapping.fields) === null || ref16 === void 0 ? void 0 : ref16.map(function(item) {
|
|
1251
1124
|
return item === null || item === void 0 ? void 0 : item.controlId;
|
|
1252
1125
|
});
|
|
1253
|
-
var mappingValue =
|
|
1254
|
-
var
|
|
1255
|
-
var mainStateKeys = Object.keys((
|
|
1126
|
+
var mappingValue = _this6.getEmptyState(newMapping === null || newMapping === void 0 ? void 0 : newMapping.controlId);
|
|
1127
|
+
var ref17;
|
|
1128
|
+
var mainStateKeys = Object.keys((ref17 = newState === null || newState === void 0 ? void 0 : newState[newMapping === null || newMapping === void 0 ? void 0 : newMapping.controlId]) !== null && ref17 !== void 0 ? ref17 : {});
|
|
1256
1129
|
mappingKeys === null || mappingKeys === void 0 ? void 0 : mappingKeys.forEach(function(key) {
|
|
1257
|
-
if (!mainStateKeys.includes(key) && key !==
|
|
1130
|
+
if (!mainStateKeys.includes(key) && key !== 'uid' && newState[newMapping === null || newMapping === void 0 ? void 0 : newMapping.controlId]) {
|
|
1258
1131
|
if (Object.keys(newState).length) {
|
|
1259
1132
|
Object.assign(newState[newMapping === null || newMapping === void 0 ? void 0 : newMapping.controlId], _defineProperty({}, key, mappingValue[key]));
|
|
1260
1133
|
} else {
|
|
@@ -1262,7 +1135,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
1262
1135
|
}
|
|
1263
1136
|
}
|
|
1264
1137
|
});
|
|
1265
|
-
|
|
1138
|
+
_this6.debugLog("engine setData方法默认值及表单数据组合完成,参数为%o。", newState);
|
|
1266
1139
|
}
|
|
1267
1140
|
}
|
|
1268
1141
|
});
|
|
@@ -1329,13 +1202,13 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
1329
1202
|
}
|
|
1330
1203
|
}
|
|
1331
1204
|
} else {
|
|
1332
|
-
var
|
|
1333
|
-
var controlIdMapping = (
|
|
1334
|
-
var
|
|
1335
|
-
var
|
|
1205
|
+
var ref;
|
|
1206
|
+
var controlIdMapping = (ref = this.getControlIdMapping()) !== null && ref !== void 0 ? ref : {};
|
|
1207
|
+
var ref21;
|
|
1208
|
+
var ref22 = _slicedToArray((ref21 = Object.entries(controlIdMapping).find(function(param) {
|
|
1336
1209
|
var _param = _slicedToArray(param, 2), _ = _param[0], mapping = _param[1];
|
|
1337
1210
|
return mapping.children && controlId in mapping.children;
|
|
1338
|
-
})) !== null &&
|
|
1211
|
+
})) !== null && ref21 !== void 0 ? ref21 : [], 1), subtableId = ref22[0];
|
|
1339
1212
|
if (subtableId) {
|
|
1340
1213
|
var subtable = this.getInstance(subtableId);
|
|
1341
1214
|
// @ts-ignore
|
|
@@ -1362,16 +1235,16 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
1362
1235
|
{
|
|
1363
1236
|
key: "setInstance",
|
|
1364
1237
|
value: function setInstance(instance, props, value, rowIndex) {
|
|
1365
|
-
var _this = this;
|
|
1366
1238
|
try {
|
|
1367
|
-
if (typeof instance ===
|
|
1239
|
+
if (typeof instance === 'string' && rowIndex === -1) {
|
|
1240
|
+
var _this = this;
|
|
1368
1241
|
//修改明细表整列属性的逻辑
|
|
1369
1242
|
var instances = this.getInstances(instance, rowIndex === -1);
|
|
1370
1243
|
instances.map(function(_instance) {
|
|
1371
1244
|
if (_instance) {
|
|
1372
1245
|
_this.debugLog("[%o]: 修改instance: %o的%o属性,修改的值为%o。", _instance.id, _instance, props, value);
|
|
1373
1246
|
updateValueFromKeys(_instance.props, props, value);
|
|
1374
|
-
_this.schemaEvent(
|
|
1247
|
+
_this.schemaEvent('schema-change', {
|
|
1375
1248
|
instance: _instance,
|
|
1376
1249
|
props: props,
|
|
1377
1250
|
value: value,
|
|
@@ -1380,19 +1253,19 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
1380
1253
|
}
|
|
1381
1254
|
});
|
|
1382
1255
|
} else {
|
|
1383
|
-
var
|
|
1384
|
-
if (typeof instance ===
|
|
1385
|
-
|
|
1256
|
+
var _instance1;
|
|
1257
|
+
if (typeof instance === 'string') {
|
|
1258
|
+
_instance1 = this.getInstance(instance, rowIndex);
|
|
1386
1259
|
} else {
|
|
1387
|
-
|
|
1260
|
+
_instance1 = instance;
|
|
1388
1261
|
}
|
|
1389
|
-
if (!
|
|
1262
|
+
if (!_instance1) {
|
|
1390
1263
|
return;
|
|
1391
1264
|
}
|
|
1392
|
-
this.debugLog("[%o]: 修改instance: %o的%o属性,修改的值为%o。",
|
|
1393
|
-
updateValueFromKeys(
|
|
1394
|
-
this.schemaEvent(
|
|
1395
|
-
instance:
|
|
1265
|
+
this.debugLog("[%o]: 修改instance: %o的%o属性,修改的值为%o。", _instance1.id, _instance1, props, value);
|
|
1266
|
+
updateValueFromKeys(_instance1.props, props, value);
|
|
1267
|
+
this.schemaEvent('schema-change', {
|
|
1268
|
+
instance: _instance1,
|
|
1396
1269
|
props: props,
|
|
1397
1270
|
value: value,
|
|
1398
1271
|
rowIndex: rowIndex
|
|
@@ -1542,8 +1415,8 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
1542
1415
|
for(var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++){
|
|
1543
1416
|
args[_key] = arguments[_key];
|
|
1544
1417
|
}
|
|
1545
|
-
var
|
|
1546
|
-
return (
|
|
1418
|
+
var _runtime;
|
|
1419
|
+
return (_runtime = this.runtime).registerControlConfig.apply(_runtime, _toConsumableArray(args));
|
|
1547
1420
|
}
|
|
1548
1421
|
},
|
|
1549
1422
|
{
|
|
@@ -1555,12 +1428,12 @@ var Engine = /*#__PURE__*/ function(Watcher) {
|
|
|
1555
1428
|
{
|
|
1556
1429
|
key: "inList",
|
|
1557
1430
|
value: function inList(controlId) {
|
|
1558
|
-
var
|
|
1559
|
-
var mapping = (
|
|
1431
|
+
var _controlIdMapping;
|
|
1432
|
+
var mapping = (_controlIdMapping = this.store.controlIdMapping) !== null && _controlIdMapping !== void 0 ? _controlIdMapping : {};
|
|
1560
1433
|
var listKey = undefined;
|
|
1561
1434
|
Object.keys(mapping).some(function(key) {
|
|
1562
|
-
var
|
|
1563
|
-
var matched = (
|
|
1435
|
+
var ref, ref23;
|
|
1436
|
+
var matched = (ref = mapping[key]) === null || ref === void 0 ? void 0 : (ref23 = ref.children) === null || ref23 === void 0 ? void 0 : ref23.hasOwnProperty(controlId);
|
|
1564
1437
|
if (matched) {
|
|
1565
1438
|
listKey = key;
|
|
1566
1439
|
}
|