@byteluck-fe/model-driven-engine 2.5.0-alpha.9 → 2.5.0-beta.4

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.
@@ -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 !!right[Symbol.hasInstance](left);
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
- var __generator = this && this.__generator || function(thisArg, body) {
256
- var f, y, t, g, _ = {
257
- label: 0,
258
- sent: function() {
259
- if (t[0] & 1) throw t[1];
260
- return t[1];
261
- },
262
- trys: [],
263
- ops: []
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
- var Engine = /*#__PURE__*/ function(Watcher) {
247
+ var applyingPluginName = '';
248
+ var Engine = // 整体渲染引擎 并且 提供发布订阅能力
249
+ /*#__PURE__*/ function(Watcher1) {
368
250
  "use strict";
369
- _inherits(Engine, Watcher);
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
- _defineProperty(_assertThisInitialized(_this), "store", void 0);
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
- _defineProperty(_assertThisInitialized(_this), "isMounted", false);
383
- _defineProperty(_assertThisInitialized(_this), "id", genNonDuplicateId(8));
384
- _defineProperty(_assertThisInitialized(_this), "externalParams", void 0);
385
- // 提供外部注册插件,在不同的hooks触发时执行固定函数的能力
386
- _defineProperty(_assertThisInitialized(_this), "__plugins", void 0);
387
- _defineProperty(_assertThisInitialized(_this), "__pluginsApplied", false);
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 _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,
395
- 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;
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("engine is Instantiation complete");
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 _this_runtime;
438
- (_this_runtime = this.runtime).register.apply(_this_runtime, _toConsumableArray(arg));
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 _this_$options = this.$options, _this_$options_plugins = _this_$options.plugins, plugins = _this_$options_plugins === void 0 ? [] : _this_$options_plugins;
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 !== "undefined") {
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 !== "undefined") {
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.map(function(row) {
499
- return(// @ts-ignore
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, "subtable-row");
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 "push":
550
- case "unshift":
551
- var _subtable_children;
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
- (_subtable_children = subtable.children)[type].apply(_subtable_children, _toConsumableArray(createdNewRows));
429
+ (_children = subtable.children)[type].apply(_children, _toConsumableArray(createdNewRows));
556
430
  this.runtime.getFlatInstances();
557
431
  break;
558
- case "splice":
432
+ case 'splice':
559
433
  if (args.length > 2) {
560
434
  var // @ts-ignore
561
- _subtable_children1;
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
- (_subtable_children1 = subtable.children)[type].apply(_subtable_children1, [
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
- _subtable_children2;
582
- (_subtable_children2 = subtable.children)[type].apply(_subtable_children2, _toConsumableArray(args));
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
- _subtable_children3;
589
- (_subtable_children3 = subtable.children)[type].apply(_subtable_children3, _toConsumableArray(args));
462
+ _children3;
463
+ (_children3 = subtable.children)[type].apply(_children3, _toConsumableArray(args));
590
464
  this.runtime.getFlatInstances();
591
465
  break;
592
466
  }
593
- if (type === "splice") {
467
+ if (type === 'splice') {
594
468
  deleted = result;
595
469
  } else if ([
596
- "pop",
597
- "shift"
470
+ 'pop',
471
+ 'shift'
598
472
  ].includes(type)) {
599
473
  deleted = [
600
474
  result
601
475
  ];
602
476
  }
603
- this.emit("list-change", {
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
- _instance_children;
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, "subtable-row");
511
+ var row = this.listControlCreateRow(instance, 'subtable-row');
638
512
  row && newRows.push(row);
639
513
  }
640
- (_instance_children = instance.children).push.apply(_instance_children, _toConsumableArray(newRows));
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("list-change", {
520
+ this.emit('list-change', {
647
521
  instance: instance,
648
522
  value: value,
649
- options: _objectSpreadProps(_objectSpread({}, 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("change", {
531
+ this.emit('change', {
658
532
  instance: instance,
659
533
  value: this.getState(instance.id, index),
660
534
  rowIndex: index,
661
- options: _objectSpreadProps(_objectSpread({}, 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 _plugin_pluginName;
676
- applyingPluginName = (_plugin_pluginName = plugin.pluginName) !== null && _plugin_pluginName !== void 0 ? _plugin_pluginName : plugin.constructor.name;
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 _inst_children;
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
- (_inst_children = inst.children).push.apply(_inst_children, _toConsumableArray(columns));
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] : "subtable-row";
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 __generator(this, function(_state) {
726
- switch(_state.label){
599
+ return regeneratorRuntime.wrap(function _callee$(_ctx) {
600
+ while(1)switch(_ctx.prev = _ctx.next){
727
601
  case 0:
728
- if (!(eventKey === "engine-mounted")) return [
729
- 3,
730
- 3
731
- ];
732
- if (_this1.isMounted) {
733
- warn("The engine-mounted life cycle can only be triggered once");
734
- return [
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;
609
+ }
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;
738
616
  }
739
- if (!_this1._jobTasks.length) return [
740
- 3,
741
- 2
742
- ];
743
- console.time("engine-mounted need wait");
617
+ console.time('engine-mounted need wait');
744
618
  needWait = _toConsumableArray(_this1._jobTasks);
745
- return [
746
- 4,
747
- Promise.all(needWait)
748
- ];
749
- case 1:
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
- _state.label = 3;
756
- case 3:
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
- return [
765
- 4,
766
- _superprop_get_emit().call(_this1, eventKey, payload)
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
- 2,
777
- results
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 _this_runtime;
800
- return (_this_runtime = this.runtime).createControl.apply(_this_runtime, _toConsumableArray(args));
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 _rules_rules_controlId, _rules_antdRules_controlId;
697
+ var ref, ref1;
829
698
  return {
830
- rules: (_rules_rules_controlId = rules.rules[controlId]) === null || _rules_rules_controlId === void 0 ? void 0 : _rules_rules_controlId.fields,
831
- antdRules: (_rules_antdRules_controlId = rules.antdRules[controlId]) === null || _rules_antdRules_controlId === void 0 ? void 0 : _rules_antdRules_controlId.fields
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 _this_runtime_rules_controlId;
843
- return (_this_runtime_rules_controlId = this.runtime.rules[controlId]) === null || _this_runtime_rules_controlId === void 0 ? void 0 : _this_runtime_rules_controlId.fields;
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 _this_runtime_antdRules_controlId;
854
- return (_this_runtime_antdRules_controlId = this.runtime.antdRules[controlId]) === null || _this_runtime_antdRules_controlId === void 0 ? void 0 : _this_runtime_antdRules_controlId.fields;
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("[%o]: 触发setState, 修改的值为%o, rowIndex=%o, options=%o", controlId, value, rowIndex, options);
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("[%o]: setState完成, 修改的值为%o, rowIndex=%o", controlId, value, rowIndex);
762
+ this.debugLog('[%o]: setState完成, 修改的值为%o, rowIndex=%o', controlId, value, rowIndex);
894
763
  eventOptionsTemp = null;
895
764
  }
896
765
  },
@@ -901,21 +770,22 @@ var Engine = /*#__PURE__*/ function(Watcher) {
901
770
  */ key: "setStates",
902
771
  value: function setStates(states, rowIndex, options) {
903
772
  var _this = this;
904
- var newStates = states;
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
- _this.setState(controlId, value, rowIndex, options);
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
- _this.setState(stateId, newStates[stateId], rowIndex, options);
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 dataBind = dataBindMapping1.dataBind, controlId1 = dataBindMapping1.controlId;
816
+ var dataBind1 = dataBindMapping1.dataBind, controlId1 = dataBindMapping1.controlId;
947
817
  var state = this.getState(controlId1, rowIndex);
948
- if (_instanceof(dataBind, ObjectDataBind)) {
949
- return Object.entries(dataBind).reduce(function(result, param) {
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,15 +843,19 @@ 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 _controlIdMapping_controlId_children_key, _controlIdMapping_controlId, _controlIdMapping_controlId_children_key_dataBind, _controlIdMapping_controlId1;
977
- if ((_controlIdMapping_controlId_children_key = (_controlIdMapping_controlId = controlIdMapping[controlId]) === null || _controlIdMapping_controlId === void 0 ? void 0 : _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) {
978
- var _controlIdMapping_controlId_children_key1;
979
- obj[(_controlIdMapping_controlId_children_key1 = controlIdMapping[controlId].children[key]) === null || _controlIdMapping_controlId_children_key1 === void 0 ? void 0 : _controlIdMapping_controlId_children_key1.dataBind.fieldCode] = item[key];
980
- } else if ((_controlIdMapping_controlId1 = controlIdMapping[controlId]) === null || _controlIdMapping_controlId1 === void 0 ? void 0 : _controlIdMapping_controlId1.children[key]) {
981
- // 兼容一个控件需要绑定多个字段的情况
982
- for(var keyChi in item[key]){
983
- var _controlIdMapping_controlId_children_key2, _controlIdMapping_controlId2;
984
- obj[(_controlIdMapping_controlId_children_key2 = (_controlIdMapping_controlId2 = controlIdMapping[controlId]) === null || _controlIdMapping_controlId2 === void 0 ? void 0 : _controlIdMapping_controlId2.children[key]) === null || _controlIdMapping_controlId_children_key2 === void 0 ? void 0 : _controlIdMapping_controlId_children_key2.dataBind[keyChi].fieldCode] = item[key][keyChi];
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;
848
+ //未绑定字段的控件,直接抛弃
849
+ if (fieldCode !== '') {
850
+ var ref4;
851
+ if (fieldCode) {
852
+ obj[fieldCode] = item[key];
853
+ } else if ((ref4 = controlIdMapping[controlId]) === null || ref4 === void 0 ? void 0 : ref4.children[key]) {
854
+ // 兼容一个控件需要绑定多个字段的情况
855
+ for(var keyChi in item[key]){
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];
858
+ }
985
859
  }
986
860
  }
987
861
  }
@@ -989,43 +863,45 @@ var Engine = /*#__PURE__*/ function(Watcher) {
989
863
  });
990
864
  return data;
991
865
  } else {
992
- var _loop = function(key) {
993
- var _controlIdMapping_key, _controlIdMapping_key_dataBind, _controlIdMapping_key1, _controlIdMapping_key_dataBind1;
994
- if ((_controlIdMapping_key = controlIdMapping[key]) === null || _controlIdMapping_key === void 0 ? void 0 : (_controlIdMapping_key_dataBind = _controlIdMapping_key.dataBind) === null || _controlIdMapping_key_dataBind === void 0 ? void 0 : _controlIdMapping_key_dataBind.fieldCode) {
995
- var _controlIdMapping_key2;
996
- obj[(_controlIdMapping_key2 = controlIdMapping[key]) === null || _controlIdMapping_key2 === void 0 ? void 0 : _controlIdMapping_key2.dataBind.fieldCode] = getFieldData[key];
997
- } else if ((_controlIdMapping_key1 = controlIdMapping[key]) === null || _controlIdMapping_key1 === void 0 ? void 0 : (_controlIdMapping_key_dataBind1 = _controlIdMapping_key1.dataBind) === null || _controlIdMapping_key_dataBind1 === void 0 ? void 0 : _controlIdMapping_key_dataBind1.dataCode) {
998
- var _controlIdMapping_key3;
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;
999
873
  // 明细字表只循环一层明细子表未递归
1000
- obj[(_controlIdMapping_key3 = controlIdMapping[key]) === null || _controlIdMapping_key3 === void 0 ? void 0 : _controlIdMapping_key3.dataBind.dataCode] = getFieldData[key].map(function(item) {
874
+ obj1[(ref11 = controlIdMapping[key1]) === null || ref11 === void 0 ? void 0 : ref11.dataBind.dataCode] = getFieldData[key1].map(function(item) {
1001
875
  var objChi = {};
1002
876
  for(var keyChi in item){
1003
- var _controlIdMapping_key_children_keyChi;
1004
- if ((_controlIdMapping_key_children_keyChi = controlIdMapping[key].children[keyChi]) === null || _controlIdMapping_key_children_keyChi === void 0 ? void 0 : _controlIdMapping_key_children_keyChi.dataBind.fieldCode) {
1005
- var _controlIdMapping_key_children_keyChi1;
1006
- objChi[(_controlIdMapping_key_children_keyChi1 = controlIdMapping[key].children[keyChi]) === null || _controlIdMapping_key_children_keyChi1 === void 0 ? void 0 : _controlIdMapping_key_children_keyChi1.dataBind.fieldCode] = item[keyChi];
1007
- } else {
1008
- for(var keyChi1 in item[keyChi]){
1009
- var _controlIdMapping_key_children_keyChi2;
1010
- objChi[(_controlIdMapping_key_children_keyChi2 = controlIdMapping[key].children[keyChi]) === null || _controlIdMapping_key_children_keyChi2 === void 0 ? void 0 : _controlIdMapping_key_children_keyChi2.dataBind[keyChi1].fieldCode] = item[keyChi][keyChi1];
1011
- //
877
+ var ref;
878
+ var fieldCode = (ref = controlIdMapping[key1].children[keyChi]) === null || ref === void 0 ? void 0 : ref.dataBind.fieldCode;
879
+ //未绑定字段的控件,直接抛弃
880
+ if (fieldCode !== '') {
881
+ if (fieldCode) {
882
+ objChi[fieldCode] = item[keyChi];
883
+ } else {
884
+ for(var keyChi1 in item[keyChi]){
885
+ var ref14;
886
+ objChi[(ref14 = controlIdMapping[key1].children[keyChi]) === null || ref14 === void 0 ? void 0 : ref14.dataBind[keyChi1].fieldCode] = item[keyChi][keyChi1];
887
+ }
1012
888
  }
1013
889
  }
1014
890
  }
1015
891
  return objChi;
1016
892
  });
1017
- } else if (controlIdMapping[key]) {
893
+ } else if (controlIdMapping[key1]) {
1018
894
  // 兼容一个控件需要绑定多个字段的情况
1019
- for(var keyChi in getFieldData[key]){
1020
- var _controlIdMapping_key_dataBind_keyChi, _controlIdMapping_key4;
1021
- obj[(_controlIdMapping_key_dataBind_keyChi = (_controlIdMapping_key4 = controlIdMapping[key]) === null || _controlIdMapping_key4 === void 0 ? void 0 : _controlIdMapping_key4.dataBind[keyChi]) === null || _controlIdMapping_key_dataBind_keyChi === void 0 ? void 0 : _controlIdMapping_key_dataBind_keyChi.fieldCode] = getFieldData[key][keyChi];
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];
1022
898
  }
1023
899
  }
1024
900
  };
1025
901
  // 主表
1026
- var obj = {};
1027
- for(var key in getFieldData)_loop(key);
1028
- return obj;
902
+ var obj1 = {};
903
+ for(var key1 in getFieldData)_loop(key1);
904
+ return obj1;
1029
905
  }
1030
906
  }
1031
907
  return;
@@ -1045,12 +921,12 @@ var Engine = /*#__PURE__*/ function(Watcher) {
1045
921
  if (!dataBindMapping) {
1046
922
  return;
1047
923
  }
1048
- var dataBind = dataBindMapping.dataBind, controlId = dataBindMapping.controlId;
1049
- if (_instanceof(dataBind, ObjectDataBind)) {
1050
- var _JSONCopy;
1051
- var oldState = (_JSONCopy = JSONCopy(this.getState(controlId, rowIndex))) !== null && _JSONCopy !== void 0 ? _JSONCopy : this.getEmptyState(controlId);
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);
1052
928
  // fieldCode不代表是key,所以需要找到对应的key
1053
- var newState = Object.entries(dataBind).reduce(function(result, param) {
929
+ var newState = Object.entries(dataBind2).reduce(function(result, param) {
1054
930
  var _param = _slicedToArray(param, 2), key = _param[0], dataBind = _param[1];
1055
931
  // objectDataBind的元素,跳过下一次赋值
1056
932
  if (dataBind.fieldCode === fieldCode) {
@@ -1080,7 +956,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
1080
956
  }
1081
957
  var skipKeys = [];
1082
958
  mapping.fields.forEach(function(item) {
1083
- var dataBind = item.dataBind, controlId = item.controlId, fieldCode = item.fieldCode;
959
+ var dataBind3 = item.dataBind, controlId = item.controlId, fieldCode = item.fieldCode;
1084
960
  if (skipKeys.includes(fieldCode)) {
1085
961
  return;
1086
962
  }
@@ -1088,11 +964,11 @@ var Engine = /*#__PURE__*/ function(Watcher) {
1088
964
  return;
1089
965
  }
1090
966
  // 对象类型的值
1091
- if (_instanceof(dataBind, ObjectDataBind)) {
1092
- var _JSONCopy;
1093
- var oldState = (_JSONCopy = JSONCopy(_this.getState(controlId, rowIndex))) !== null && _JSONCopy !== void 0 ? _JSONCopy : _this.getEmptyState(controlId);
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);
1094
970
  // fieldCode不代表是key,所以需要找到对应的key
1095
- var newState = Object.entries(dataBind).reduce(function(result, param) {
971
+ var newState = Object.entries(dataBind3).reduce(function(result, param) {
1096
972
  var _param = _slicedToArray(param, 2), key = _param[0], dataBind = _param[1];
1097
973
  // objectDataBind的元素,跳过下一次赋值
1098
974
  skipKeys.push(dataBind.fieldCode);
@@ -1122,9 +998,9 @@ var Engine = /*#__PURE__*/ function(Watcher) {
1122
998
  return;
1123
999
  }
1124
1000
  var skipKeys = [];
1125
- var result = {};
1001
+ var result1 = {};
1126
1002
  mapping.fields.forEach(function(item) {
1127
- var dataBind = item.dataBind, controlId = item.controlId, fieldCode = item.fieldCode;
1003
+ var dataBind4 = item.dataBind, controlId = item.controlId, fieldCode = item.fieldCode;
1128
1004
  if (skipKeys.includes(fieldCode)) {
1129
1005
  return;
1130
1006
  }
@@ -1132,10 +1008,10 @@ var Engine = /*#__PURE__*/ function(Watcher) {
1132
1008
  return;
1133
1009
  }
1134
1010
  // 对象类型的值
1135
- if (_instanceof(dataBind, ObjectDataBind)) {
1011
+ if (_instanceof(dataBind4, ObjectDataBind)) {
1136
1012
  var oldState = _this.getEmptyState(controlId);
1137
1013
  // fieldCode不代表是key,所以需要找到对应的key
1138
- result[item.controlId] = Object.entries(dataBind).reduce(function(result, param) {
1014
+ result1[item.controlId] = Object.entries(dataBind4).reduce(function(result, param) {
1139
1015
  var _param = _slicedToArray(param, 2), key = _param[0], dataBind = _param[1];
1140
1016
  // objectDataBind的元素,跳过下一次赋值
1141
1017
  skipKeys.push(dataBind.fieldCode);
@@ -1146,10 +1022,10 @@ var Engine = /*#__PURE__*/ function(Watcher) {
1146
1022
  return result;
1147
1023
  }, oldState);
1148
1024
  } else {
1149
- result[controlId] = state[fieldCode];
1025
+ result1[controlId] = state[fieldCode];
1150
1026
  }
1151
1027
  });
1152
- return result;
1028
+ return result1;
1153
1029
  }
1154
1030
  },
1155
1031
  {
@@ -1159,40 +1035,40 @@ var Engine = /*#__PURE__*/ function(Watcher) {
1159
1035
  * @options 传递给关联事件中 EventPayload中的options,一般在plugin中监听使用
1160
1036
  */ key: "setData",
1161
1037
  value: function setData(dataSet, options) {
1162
- var _this = this;
1038
+ var _this6 = this;
1163
1039
  this.debugLog("engine setData方法执行,参数为%o,%o。", dataSet, options);
1164
- var isEmpty = function(value) {
1165
- if (isString(value) || Array.isArray(value)) {
1166
- return value.length === 0;
1167
- }
1168
- return false;
1169
- };
1170
- var newState = {};
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)) {
1044
+ var _this4 = _this6;
1045
+ var mapping = _this6.getDataBindMapping(dataCode);
1046
+ if (!mapping) {
1047
+ return;
1048
+ }
1049
+ if (!newState[mapping.dataViewId]) {
1050
+ newState[mapping.dataViewId] = {};
1051
+ }
1052
+ newState[mapping.dataViewId][mapping.controlId] = [];
1174
1053
  entity.map(function(row) {
1175
- var mapping = _this.getDataBindMapping(dataCode);
1176
- if (!mapping) {
1177
- return;
1178
- }
1179
- var newRow = JSONCopy(_this.store.emptyState[mapping.dataViewId][mapping.controlId]);
1054
+ var _this = _this4;
1055
+ var newRow = JSONCopy(_this4.store.emptyState[mapping.dataViewId][mapping.controlId]);
1180
1056
  var skipKey = [] //qiyu ObjectDataBind中会提前将相关key拿出来赋值,为了避免重复赋值,设置了此变量
1181
1057
  ;
1182
1058
  Object.keys(row).map(function(fieldCode) {
1183
- var _this_store_dataBindMapping_dataCode, _this_store_dataBindMapping_dataCode_fields;
1059
+ var ref, ref18;
1184
1060
  if (skipKey.includes(fieldCode)) {
1185
1061
  return;
1186
1062
  }
1187
- var fieldMapping = (_this_store_dataBindMapping_dataCode = _this.store.dataBindMapping[dataCode]) === null || _this_store_dataBindMapping_dataCode === void 0 ? void 0 : (_this_store_dataBindMapping_dataCode_fields = _this_store_dataBindMapping_dataCode.fields) === null || _this_store_dataBindMapping_dataCode_fields === void 0 ? void 0 : _this_store_dataBindMapping_dataCode_fields.find(function(i) {
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) {
1188
1064
  return i.fieldCode === fieldCode;
1189
1065
  });
1190
1066
  if (fieldMapping) {
1191
1067
  if (_instanceof(fieldMapping.dataBind, DataBind) && row[fieldCode] !== undefined) {
1192
1068
  newRow[fieldMapping.controlId] = row[fieldCode];
1193
1069
  } else if (_instanceof(fieldMapping.dataBind, ObjectDataBind)) {
1194
- var _this_getEmptyState;
1195
- var objValue = JSONCopy((_this_getEmptyState = _this.getEmptyState(fieldMapping.controlId)) !== null && _this_getEmptyState !== void 0 ? _this_getEmptyState : {});
1070
+ var ref19;
1071
+ var objValue = JSONCopy((ref19 = _this.getEmptyState(fieldMapping.controlId)) !== null && ref19 !== void 0 ? ref19 : {});
1196
1072
  Object.keys(fieldMapping.dataBind).map(function(key) {
1197
1073
  var dataBind = fieldMapping.dataBind[key];
1198
1074
  if (row[dataBind.fieldCode] !== undefined) {
@@ -1204,62 +1080,62 @@ var Engine = /*#__PURE__*/ function(Watcher) {
1204
1080
  }
1205
1081
  }
1206
1082
  });
1207
- if (!newState[mapping.dataViewId]) {
1208
- newState[mapping.dataViewId] = {};
1209
- }
1210
- if (!newState[mapping.dataViewId][mapping.controlId]) {
1211
- newState[mapping.dataViewId][mapping.controlId] = [];
1212
- }
1213
1083
  newState[mapping.dataViewId][mapping.controlId].push(newRow);
1214
1084
  });
1215
1085
  } else if (entity) {
1216
- var skipKey = [] //qiyu ObjectDataBind中会提前将相关key拿出来赋值,为了避免重复赋值,设置了此变量
1086
+ var ref20;
1087
+ var skipKey1 = [] //qiyu ObjectDataBind中会提前将相关key拿出来赋值,为了避免重复赋值,设置了此变量
1217
1088
  ;
1218
- var emptyState = JSONCopy(_this.store.emptyState);
1219
- Object.keys(entity).map(function(fieldCode) {
1220
- if (skipKey.includes(fieldCode)) {
1221
- return;
1222
- }
1223
- var mapping = _this.getDataBindMapping(dataCode, fieldCode);
1224
- if (mapping) {
1225
- if (!newState[mapping.dataViewId[0]]) {
1226
- newState[mapping.dataViewId[0]] = {};
1089
+ var emptyState = JSONCopy(_this6.store.emptyState);
1090
+ if (!((ref20 = Object.keys(entity)) === null || ref20 === void 0 ? void 0 : ref20.length)) {
1091
+ // newState = this.store.defaultState
1092
+ } else {
1093
+ var _this3 = _this6;
1094
+ Object.keys(entity).map(function(fieldCode) {
1095
+ if (skipKey1.includes(fieldCode)) {
1096
+ return;
1227
1097
  }
1228
- if (_instanceof(mapping.dataBind, DataBind) && entity[fieldCode] !== undefined) {
1229
- newState[mapping.dataViewId[0]][mapping.controlId] = entity[fieldCode] !== undefined ? entity[fieldCode] : emptyState[mapping.dataViewId[0]][mapping.controlId];
1230
- } else if (_instanceof(mapping.dataBind, ObjectDataBind)) {
1231
- var _this_getEmptyState;
1232
- var objValue = (_this_getEmptyState = _this.getEmptyState(mapping.controlId)) !== null && _this_getEmptyState !== void 0 ? _this_getEmptyState : {};
1233
- Object.keys(mapping.dataBind).map(function(key) {
1234
- var dataBind = mapping.dataBind[key];
1235
- if (entity[dataBind.fieldCode] !== undefined) {
1236
- objValue[key] = entity[dataBind.fieldCode];
1237
- }
1238
- skipKey.push(dataBind.fieldCode);
1239
- });
1240
- newState[mapping.dataViewId[0]][mapping.controlId] = objValue;
1098
+ var mapping = _this3.getDataBindMapping(dataCode, fieldCode);
1099
+ if (mapping) {
1100
+ if (!newState[mapping.dataViewId[0]]) {
1101
+ newState[mapping.dataViewId[0]] = {};
1102
+ }
1103
+ if (_instanceof(mapping.dataBind, DataBind) && entity[fieldCode] !== undefined) {
1104
+ newState[mapping.dataViewId[0]][mapping.controlId] = entity[fieldCode] !== undefined ? entity[fieldCode] : emptyState[mapping.dataViewId[0]][mapping.controlId];
1105
+ } else if (_instanceof(mapping.dataBind, ObjectDataBind)) {
1106
+ var ref;
1107
+ var objValue = (ref = _this3.getEmptyState(mapping.controlId)) !== null && ref !== void 0 ? ref : {};
1108
+ Object.keys(mapping.dataBind).map(function(key) {
1109
+ var dataBind = mapping.dataBind[key];
1110
+ if (entity[dataBind.fieldCode] !== undefined) {
1111
+ objValue[key] = entity[dataBind.fieldCode];
1112
+ }
1113
+ skipKey1.push(dataBind.fieldCode);
1114
+ });
1115
+ newState[mapping.dataViewId[0]][mapping.controlId] = objValue;
1116
+ }
1241
1117
  }
1242
- }
1243
- });
1244
- var newMapping = _this.getDataBindMapping(dataCode);
1118
+ });
1119
+ }
1120
+ var newMapping = _this6.getDataBindMapping(dataCode);
1245
1121
  if (newMapping) {
1246
- var _newMapping_fields;
1247
- var mappingKeys = newMapping === null || newMapping === void 0 ? void 0 : (_newMapping_fields = newMapping.fields) === null || _newMapping_fields === void 0 ? void 0 : _newMapping_fields.map(function(item) {
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) {
1248
1124
  return item === null || item === void 0 ? void 0 : item.controlId;
1249
1125
  });
1250
- var mappingValue = _this.getEmptyState(newMapping === null || newMapping === void 0 ? void 0 : newMapping.controlId);
1251
- var _newState_newMapping_controlId;
1252
- 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 : {});
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 : {});
1253
1129
  mappingKeys === null || mappingKeys === void 0 ? void 0 : mappingKeys.forEach(function(key) {
1254
- if (!mainStateKeys.includes(key) && key !== "uid") {
1255
- if (Object.keys(newState).length && newState[newMapping === null || newMapping === void 0 ? void 0 : newMapping.controlId]) {
1130
+ if (!mainStateKeys.includes(key) && key !== 'uid' && newState[newMapping === null || newMapping === void 0 ? void 0 : newMapping.controlId]) {
1131
+ if (Object.keys(newState).length) {
1256
1132
  Object.assign(newState[newMapping === null || newMapping === void 0 ? void 0 : newMapping.controlId], _defineProperty({}, key, mappingValue[key]));
1257
1133
  } else {
1258
1134
  Object.assign(newState, _defineProperty({}, newMapping.controlId, _defineProperty({}, key, mappingValue[key])));
1259
1135
  }
1260
1136
  }
1261
1137
  });
1262
- _this.debugLog("engine setData方法默认值及表单数据组合完成,参数为%o。", newState);
1138
+ _this6.debugLog("engine setData方法默认值及表单数据组合完成,参数为%o。", newState);
1263
1139
  }
1264
1140
  }
1265
1141
  });
@@ -1319,19 +1195,20 @@ var Engine = /*#__PURE__*/ function(Watcher) {
1319
1195
  // 如果能从flatInstances里边取到,就通过getInstanceInSubtableHeader方法取,取不到则换一种方式
1320
1196
  if (instances.length) {
1321
1197
  var instance = instances[0];
1322
- if (this.inList(instance.id) === true) {
1198
+ if (this.inList(instance.id) !== undefined) {
1323
1199
  var headerInstance = this.getInstanceInSubtableHeader(instance);
1324
1200
  if (headerInstance) {
1325
1201
  instances.unshift(headerInstance);
1326
1202
  }
1327
1203
  }
1328
1204
  } else {
1329
- var controlIdMapping = this.getControlIdMapping();
1330
- var _Object_entries_find;
1331
- var _ref = _slicedToArray((_Object_entries_find = Object.entries(controlIdMapping).find(function(param) {
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) {
1332
1209
  var _param = _slicedToArray(param, 2), _ = _param[0], mapping = _param[1];
1333
1210
  return mapping.children && controlId in mapping.children;
1334
- })) !== null && _Object_entries_find !== void 0 ? _Object_entries_find : [], 1), subtableId = _ref[0];
1211
+ })) !== null && ref21 !== void 0 ? ref21 : [], 1), subtableId = ref22[0];
1335
1212
  if (subtableId) {
1336
1213
  var subtable = this.getInstance(subtableId);
1337
1214
  // @ts-ignore
@@ -1358,16 +1235,16 @@ var Engine = /*#__PURE__*/ function(Watcher) {
1358
1235
  {
1359
1236
  key: "setInstance",
1360
1237
  value: function setInstance(instance, props, value, rowIndex) {
1361
- var _this = this;
1362
1238
  try {
1363
- if (typeof instance === "string" && rowIndex === -1) {
1239
+ if (typeof instance === 'string' && rowIndex === -1) {
1240
+ var _this = this;
1364
1241
  //修改明细表整列属性的逻辑
1365
1242
  var instances = this.getInstances(instance, rowIndex === -1);
1366
1243
  instances.map(function(_instance) {
1367
1244
  if (_instance) {
1368
1245
  _this.debugLog("[%o]: 修改instance: %o的%o属性,修改的值为%o。", _instance.id, _instance, props, value);
1369
1246
  updateValueFromKeys(_instance.props, props, value);
1370
- _this.schemaEvent("schema-change", {
1247
+ _this.schemaEvent('schema-change', {
1371
1248
  instance: _instance,
1372
1249
  props: props,
1373
1250
  value: value,
@@ -1376,19 +1253,19 @@ var Engine = /*#__PURE__*/ function(Watcher) {
1376
1253
  }
1377
1254
  });
1378
1255
  } else {
1379
- var _instance;
1380
- if (typeof instance === "string") {
1381
- _instance = this.getInstance(instance, rowIndex);
1256
+ var _instance1;
1257
+ if (typeof instance === 'string') {
1258
+ _instance1 = this.getInstance(instance, rowIndex);
1382
1259
  } else {
1383
- _instance = instance;
1260
+ _instance1 = instance;
1384
1261
  }
1385
- if (!_instance) {
1262
+ if (!_instance1) {
1386
1263
  return;
1387
1264
  }
1388
- this.debugLog("[%o]: 修改instance: %o的%o属性,修改的值为%o。", _instance.id, _instance, props, value);
1389
- updateValueFromKeys(_instance.props, props, value);
1390
- this.schemaEvent("schema-change", {
1391
- instance: _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,
1392
1269
  props: props,
1393
1270
  value: value,
1394
1271
  rowIndex: rowIndex
@@ -1538,8 +1415,8 @@ var Engine = /*#__PURE__*/ function(Watcher) {
1538
1415
  for(var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++){
1539
1416
  args[_key] = arguments[_key];
1540
1417
  }
1541
- var _this_runtime;
1542
- return (_this_runtime = this.runtime).registerControlConfig.apply(_this_runtime, _toConsumableArray(args));
1418
+ var _runtime;
1419
+ return (_runtime = this.runtime).registerControlConfig.apply(_runtime, _toConsumableArray(args));
1543
1420
  }
1544
1421
  },
1545
1422
  {
@@ -1551,12 +1428,18 @@ var Engine = /*#__PURE__*/ function(Watcher) {
1551
1428
  {
1552
1429
  key: "inList",
1553
1430
  value: function inList(controlId) {
1554
- var mapping = this.store.controlIdMapping;
1555
- var result = Object.keys(mapping).some(function(key) {
1556
- var _mapping_key, _mapping_key_children;
1557
- return (_mapping_key = mapping[key]) === null || _mapping_key === void 0 ? void 0 : (_mapping_key_children = _mapping_key.children) === null || _mapping_key_children === void 0 ? void 0 : _mapping_key_children.hasOwnProperty(controlId);
1431
+ var _controlIdMapping;
1432
+ var mapping = (_controlIdMapping = this.store.controlIdMapping) !== null && _controlIdMapping !== void 0 ? _controlIdMapping : {};
1433
+ var listKey = undefined;
1434
+ Object.keys(mapping).some(function(key) {
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);
1437
+ if (matched) {
1438
+ listKey = key;
1439
+ }
1440
+ return matched;
1558
1441
  });
1559
- return result;
1442
+ return listKey;
1560
1443
  }
1561
1444
  }
1562
1445
  ], [
@@ -1581,4 +1464,3 @@ var Engine = /*#__PURE__*/ function(Watcher) {
1581
1464
  return Engine;
1582
1465
  }(Watcher);
1583
1466
  export { Engine };
1584
- console.log("a");