@byteluck-fe/model-driven-engine 2.7.0-alpha.4 → 2.7.0-alpha.41

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.
@@ -1,15 +1,15 @@
1
- function _arrayLikeToArray(arr, len) {
1
+ function _array_like_to_array(arr, len) {
2
2
  if (len == null || len > arr.length) len = arr.length;
3
3
  for(var i = 0, arr2 = new Array(len); i < len; i++)arr2[i] = arr[i];
4
4
  return arr2;
5
5
  }
6
- function _arrayWithHoles(arr) {
6
+ function _array_with_holes(arr) {
7
7
  if (Array.isArray(arr)) return arr;
8
8
  }
9
- function _arrayWithoutHoles(arr) {
10
- if (Array.isArray(arr)) return _arrayLikeToArray(arr);
9
+ function _array_without_holes(arr) {
10
+ if (Array.isArray(arr)) return _array_like_to_array(arr);
11
11
  }
12
- function _assertThisInitialized(self) {
12
+ function _assert_this_initialized(self) {
13
13
  if (self === void 0) {
14
14
  throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
15
15
  }
@@ -29,7 +29,7 @@ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
29
29
  Promise.resolve(value).then(_next, _throw);
30
30
  }
31
31
  }
32
- function _asyncToGenerator(fn) {
32
+ function _async_to_generator(fn) {
33
33
  return function() {
34
34
  var self = this, args = arguments;
35
35
  return new Promise(function(resolve, reject) {
@@ -44,7 +44,7 @@ function _asyncToGenerator(fn) {
44
44
  });
45
45
  };
46
46
  }
47
- function _classCallCheck(instance, Constructor) {
47
+ function _class_call_check(instance, Constructor) {
48
48
  if (!(instance instanceof Constructor)) {
49
49
  throw new TypeError("Cannot call a class as a function");
50
50
  }
@@ -58,12 +58,12 @@ function _defineProperties(target, props) {
58
58
  Object.defineProperty(target, descriptor.key, descriptor);
59
59
  }
60
60
  }
61
- function _createClass(Constructor, protoProps, staticProps) {
61
+ function _create_class(Constructor, protoProps, staticProps) {
62
62
  if (protoProps) _defineProperties(Constructor.prototype, protoProps);
63
63
  if (staticProps) _defineProperties(Constructor, staticProps);
64
64
  return Constructor;
65
65
  }
66
- function _defineProperty(obj, key, value) {
66
+ function _define_property(obj, key, value) {
67
67
  if (key in obj) {
68
68
  Object.defineProperty(obj, key, {
69
69
  value: value,
@@ -80,23 +80,23 @@ function _get(target, property, receiver) {
80
80
  if (typeof Reflect !== "undefined" && Reflect.get) {
81
81
  _get = Reflect.get;
82
82
  } else {
83
- _get = function _get(target, property, receiver) {
84
- var base = _superPropBase(target, property);
83
+ _get = function get(target, property, receiver) {
84
+ var base = _super_prop_base(target, property);
85
85
  if (!base) return;
86
86
  var desc = Object.getOwnPropertyDescriptor(base, property);
87
87
  if (desc.get) {
88
- return desc.get.call(receiver);
88
+ return desc.get.call(receiver || target);
89
89
  }
90
90
  return desc.value;
91
91
  };
92
92
  }
93
93
  return _get(target, property, receiver || target);
94
94
  }
95
- function _getPrototypeOf(o) {
96
- _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {
95
+ function _get_prototype_of(o) {
96
+ _get_prototype_of = Object.setPrototypeOf ? Object.getPrototypeOf : function getPrototypeOf(o) {
97
97
  return o.__proto__ || Object.getPrototypeOf(o);
98
98
  };
99
- return _getPrototypeOf(o);
99
+ return _get_prototype_of(o);
100
100
  }
101
101
  function _inherits(subClass, superClass) {
102
102
  if (typeof superClass !== "function" && superClass !== null) {
@@ -109,19 +109,12 @@ function _inherits(subClass, superClass) {
109
109
  configurable: true
110
110
  }
111
111
  });
112
- if (superClass) _setPrototypeOf(subClass, superClass);
112
+ if (superClass) _set_prototype_of(subClass, superClass);
113
113
  }
114
- function _instanceof(left, right) {
115
- if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
116
- return !!right[Symbol.hasInstance](left);
117
- } else {
118
- return left instanceof right;
119
- }
120
- }
121
- function _iterableToArray(iter) {
114
+ function _iterable_to_array(iter) {
122
115
  if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
123
116
  }
124
- function _iterableToArrayLimit(arr, i) {
117
+ function _iterable_to_array_limit(arr, i) {
125
118
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
126
119
  if (_i == null) return;
127
120
  var _arr = [];
@@ -145,13 +138,13 @@ function _iterableToArrayLimit(arr, i) {
145
138
  }
146
139
  return _arr;
147
140
  }
148
- function _nonIterableRest() {
141
+ function _non_iterable_rest() {
149
142
  throw new TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
150
143
  }
151
- function _nonIterableSpread() {
144
+ function _non_iterable_spread() {
152
145
  throw new TypeError("Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
153
146
  }
154
- function _objectSpread(target) {
147
+ function _object_spread(target) {
155
148
  for(var i = 1; i < arguments.length; i++){
156
149
  var source = arguments[i] != null ? arguments[i] : {};
157
150
  var ownKeys = Object.keys(source);
@@ -161,7 +154,7 @@ function _objectSpread(target) {
161
154
  }));
162
155
  }
163
156
  ownKeys.forEach(function(key) {
164
- _defineProperty(target, key, source[key]);
157
+ _define_property(target, key, source[key]);
165
158
  });
166
159
  }
167
160
  return target;
@@ -179,7 +172,7 @@ function ownKeys(object, enumerableOnly) {
179
172
  }
180
173
  return keys;
181
174
  }
182
- function _objectSpreadProps(target, source) {
175
+ function _object_spread_props(target, source) {
183
176
  source = source != null ? source : {};
184
177
  if (Object.getOwnPropertyDescriptors) {
185
178
  Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
@@ -190,45 +183,45 @@ function _objectSpreadProps(target, source) {
190
183
  }
191
184
  return target;
192
185
  }
193
- function _possibleConstructorReturn(self, call) {
194
- if (call && (_typeof(call) === "object" || typeof call === "function")) {
186
+ function _possible_constructor_return(self, call) {
187
+ if (call && (_type_of(call) === "object" || typeof call === "function")) {
195
188
  return call;
196
189
  }
197
- return _assertThisInitialized(self);
190
+ return _assert_this_initialized(self);
198
191
  }
199
- function _setPrototypeOf(o, p) {
200
- _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {
192
+ function _set_prototype_of(o, p) {
193
+ _set_prototype_of = Object.setPrototypeOf || function setPrototypeOf(o, p) {
201
194
  o.__proto__ = p;
202
195
  return o;
203
196
  };
204
- return _setPrototypeOf(o, p);
197
+ return _set_prototype_of(o, p);
205
198
  }
206
- function _slicedToArray(arr, i) {
207
- return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
199
+ function _sliced_to_array(arr, i) {
200
+ return _array_with_holes(arr) || _iterable_to_array_limit(arr, i) || _unsupported_iterable_to_array(arr, i) || _non_iterable_rest();
208
201
  }
209
- function _superPropBase(object, property) {
202
+ function _super_prop_base(object, property) {
210
203
  while(!Object.prototype.hasOwnProperty.call(object, property)){
211
- object = _getPrototypeOf(object);
204
+ object = _get_prototype_of(object);
212
205
  if (object === null) break;
213
206
  }
214
207
  return object;
215
208
  }
216
- function _toConsumableArray(arr) {
217
- return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();
209
+ function _to_consumable_array(arr) {
210
+ return _array_without_holes(arr) || _iterable_to_array(arr) || _unsupported_iterable_to_array(arr) || _non_iterable_spread();
218
211
  }
219
- var _typeof = function(obj) {
212
+ function _type_of(obj) {
220
213
  "@swc/helpers - typeof";
221
214
  return obj && typeof Symbol !== "undefined" && obj.constructor === Symbol ? "symbol" : typeof obj;
222
- };
223
- function _unsupportedIterableToArray(o, minLen) {
215
+ }
216
+ function _unsupported_iterable_to_array(o, minLen) {
224
217
  if (!o) return;
225
- if (typeof o === "string") return _arrayLikeToArray(o, minLen);
218
+ if (typeof o === "string") return _array_like_to_array(o, minLen);
226
219
  var n = Object.prototype.toString.call(o).slice(8, -1);
227
220
  if (n === "Object" && o.constructor) n = o.constructor.name;
228
221
  if (n === "Map" || n === "Set") return Array.from(n);
229
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
222
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _array_like_to_array(o, minLen);
230
223
  }
231
- function _isNativeReflectConstruct() {
224
+ function _is_native_reflect_construct() {
232
225
  if (typeof Reflect === "undefined" || !Reflect.construct) return false;
233
226
  if (Reflect.construct.sham) return false;
234
227
  if (typeof Proxy === "function") return true;
@@ -239,20 +232,20 @@ function _isNativeReflectConstruct() {
239
232
  return false;
240
233
  }
241
234
  }
242
- function _createSuper(Derived) {
243
- var hasNativeReflectConstruct = _isNativeReflectConstruct();
235
+ function _create_super(Derived) {
236
+ var hasNativeReflectConstruct = _is_native_reflect_construct();
244
237
  return function _createSuperInternal() {
245
- var Super = _getPrototypeOf(Derived), result;
238
+ var Super = _get_prototype_of(Derived), result;
246
239
  if (hasNativeReflectConstruct) {
247
- var NewTarget = _getPrototypeOf(this).constructor;
240
+ var NewTarget = _get_prototype_of(this).constructor;
248
241
  result = Reflect.construct(Super, arguments, NewTarget);
249
242
  } else {
250
243
  result = Super.apply(this, arguments);
251
244
  }
252
- return _possibleConstructorReturn(this, result);
245
+ return _possible_constructor_return(this, result);
253
246
  };
254
247
  }
255
- var __generator = this && this.__generator || function(thisArg, body) {
248
+ function _ts_generator(thisArg, body) {
256
249
  var f, y, t, g, _ = {
257
250
  label: 0,
258
251
  sent: function() {
@@ -346,9 +339,9 @@ var __generator = this && this.__generator || function(thisArg, body) {
346
339
  done: true
347
340
  };
348
341
  }
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";
342
+ }
343
+ import { isDataBind } from "@byteluck-fe/model-driven-core";
344
+ import { CONTROL_BASE_TYPE, CONTROL_TYPE, DEFAULT_LOCALE, error, genNonDuplicateId, isString, JSONCopy, log, RulesMessage, updateValueFromKeys, warn, Watcher, isBuiltInControls } from "@byteluck-fe/model-driven-shared";
352
345
  import { Runtime } from "./Runtime";
353
346
  import { Store } from "./Store";
354
347
  import { findItem, proxyState } from "./proxyState";
@@ -367,29 +360,29 @@ var applyingPluginName = "";
367
360
  var Engine = /*#__PURE__*/ function(Watcher) {
368
361
  "use strict";
369
362
  _inherits(Engine, Watcher);
370
- var _super = _createSuper(Engine);
363
+ var _super = _create_super(Engine);
371
364
  function Engine(props) {
372
- _classCallCheck(this, Engine);
365
+ _class_call_check(this, Engine);
373
366
  var _this;
374
367
  _this = _super.call(this);
375
- _defineProperty(_assertThisInitialized(_this), "store", void 0);
376
- _defineProperty(_assertThisInitialized(_this), "rawStore", {});
377
- _defineProperty(_assertThisInitialized(_this), "parent", void 0);
368
+ _define_property(_assert_this_initialized(_this), "store", void 0);
369
+ _define_property(_assert_this_initialized(_this), "rawStore", {});
370
+ _define_property(_assert_this_initialized(_this), "parent", void 0);
378
371
  // 提供注册运行态控件以及实例化控件的能力
379
- _defineProperty(_assertThisInitialized(_this), "runtime", void 0);
372
+ _define_property(_assert_this_initialized(_this), "runtime", void 0);
380
373
  // 提供子线程处理脚本以及修改数据的能力
381
374
  // public worker: OkWorker
382
- _defineProperty(_assertThisInitialized(_this), "isMounted", false);
383
- _defineProperty(_assertThisInitialized(_this), "id", genNonDuplicateId(8));
384
- _defineProperty(_assertThisInitialized(_this), "externalParams", void 0);
375
+ _define_property(_assert_this_initialized(_this), "isMounted", false);
376
+ _define_property(_assert_this_initialized(_this), "id", genNonDuplicateId(8));
377
+ _define_property(_assert_this_initialized(_this), "externalParams", void 0);
385
378
  // 提供外部注册插件,在不同的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);
379
+ _define_property(_assert_this_initialized(_this), "__plugins", void 0);
380
+ _define_property(_assert_this_initialized(_this), "__pluginsApplied", false);
381
+ _define_property(_assert_this_initialized(_this), "$options", void 0);
382
+ _define_property(_assert_this_initialized(_this), "actionManager", new ActionManager());
383
+ _define_property(_assert_this_initialized(_this), "dataManager", void 0);
384
+ _define_property(_assert_this_initialized(_this), "_jobTasks", []);
385
+ _define_property(_assert_this_initialized(_this), "createControlInstance", _this.createInstance);
393
386
  _this.$options = Object.freeze(props);
394
387
  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
388
  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;
@@ -408,14 +401,14 @@ var Engine = /*#__PURE__*/ function(Watcher) {
408
401
  autoMount && _this.mount();
409
402
  return _this;
410
403
  }
411
- _createClass(Engine, [
404
+ _create_class(Engine, [
412
405
  {
413
406
  key: "debugLog",
414
407
  value: function debugLog() {
415
408
  for(var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++){
416
409
  args[_key] = arguments[_key];
417
410
  }
418
- this.debug && log.apply(void 0, _toConsumableArray(args));
411
+ this.debug && log.apply(void 0, _to_consumable_array(args));
419
412
  }
420
413
  },
421
414
  {
@@ -435,7 +428,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
435
428
  arg[_key] = arguments[_key];
436
429
  }
437
430
  var _this_runtime;
438
- (_this_runtime = this.runtime).register.apply(_this_runtime, _toConsumableArray(arg));
431
+ (_this_runtime = this.runtime).register.apply(_this_runtime, _to_consumable_array(arg));
439
432
  return this;
440
433
  }
441
434
  },
@@ -525,7 +518,8 @@ var Engine = /*#__PURE__*/ function(Watcher) {
525
518
  value: function _handlerArrayUpdate(state, key, type, args, result) {
526
519
  var _this = this;
527
520
  var subtable = findItem(this.runtime.flatInstances, key, this.runtime.instanceMap);
528
- if (!_instanceof(subtable, RuntimeListControl)) return;
521
+ // if (!(subtable instanceof RuntimeListControl)) return
522
+ if (!((subtable === null || subtable === void 0 ? void 0 : subtable.controlType) === CONTROL_BASE_TYPE.LIST)) return;
529
523
  // 新增多行方法
530
524
  var createRows = function(len) {
531
525
  // @ts-ignore
@@ -543,6 +537,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
543
537
  var createdNewRows = [];
544
538
  var createdNewRowsData = [];
545
539
  var deleted = [];
540
+ var isDeleteLastOne = false;
546
541
  if (type && args) {
547
542
  // const subtableOldLength = subtable.children.length
548
543
  switch(type){
@@ -552,7 +547,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
552
547
  var newRowLengths = args.length;
553
548
  createdNewRows = createRows(newRowLengths);
554
549
  createdNewRowsData = args;
555
- (_subtable_children = subtable.children)[type].apply(_subtable_children, _toConsumableArray(createdNewRows));
550
+ (_subtable_children = subtable.children)[type].apply(_subtable_children, _to_consumable_array(createdNewRows));
556
551
  this.runtime.getFlatInstances();
557
552
  break;
558
553
  case "splice":
@@ -570,7 +565,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
570
565
  (_subtable_children1 = subtable.children)[type].apply(_subtable_children1, [
571
566
  start,
572
567
  replace
573
- ].concat(_toConsumableArray(createdNewRows)));
568
+ ].concat(_to_consumable_array(createdNewRows)));
574
569
  this.runtime.getFlatInstances();
575
570
  // newValues.forEach((item: any, index) => {
576
571
  // let newIndex = start + index
@@ -579,14 +574,21 @@ var Engine = /*#__PURE__*/ function(Watcher) {
579
574
  } else {
580
575
  var // @ts-ignore
581
576
  _subtable_children2;
582
- (_subtable_children2 = subtable.children)[type].apply(_subtable_children2, _toConsumableArray(args));
577
+ // 从哪儿开始
578
+ var start1 = args[0];
579
+ // 替换几个
580
+ var replace1 = args[1];
581
+ if (start1 + replace1 === subtable.children.length - 1) {
582
+ isDeleteLastOne = true;
583
+ }
584
+ (_subtable_children2 = subtable.children)[type].apply(_subtable_children2, _to_consumable_array(args));
583
585
  this.runtime.getFlatInstances();
584
586
  }
585
587
  break;
586
588
  default:
587
589
  var // @ts-ignore
588
590
  _subtable_children3;
589
- (_subtable_children3 = subtable.children)[type].apply(_subtable_children3, _toConsumableArray(args));
591
+ (_subtable_children3 = subtable.children)[type].apply(_subtable_children3, _to_consumable_array(args));
590
592
  this.runtime.getFlatInstances();
591
593
  break;
592
594
  }
@@ -607,7 +609,8 @@ var Engine = /*#__PURE__*/ function(Watcher) {
607
609
  changed: createdNewRows,
608
610
  data: createdNewRowsData,
609
611
  deleted: deleted !== null && deleted !== void 0 ? deleted : [],
610
- jsonValue: JSON.stringify(this.getState(subtable.id))
612
+ jsonValue: JSON.stringify(this.getState(subtable.id)),
613
+ isDeleteLastOne: isDeleteLastOne
611
614
  })
612
615
  });
613
616
  // 主动清空本次任务中的options
@@ -637,20 +640,23 @@ var Engine = /*#__PURE__*/ function(Watcher) {
637
640
  var row = this.listControlCreateRow(instance, "subtable-row");
638
641
  row && newRows.push(row);
639
642
  }
640
- (_instance_children = instance.children).push.apply(_instance_children, _toConsumableArray(newRows));
643
+ (_instance_children = instance.children).push.apply(_instance_children, _to_consumable_array(newRows));
641
644
  this.runtime.getFlatInstances();
642
645
  // 这里已经能拿到控件实例,所以在这里触发setStates,触发每一行每一个控件的change事件
643
646
  // for (let i = 0; i < newValue.length; i++) {
644
647
  // this.setStates(newValue[i], i, options)
645
648
  // }
649
+ var deleted = oldValue !== null && oldValue !== void 0 ? oldValue : [];
646
650
  this.emit("list-change", {
647
651
  instance: instance,
648
652
  value: value,
649
- options: _objectSpreadProps(_objectSpread({}, options), {
653
+ options: _object_spread_props(_object_spread({}, options), {
650
654
  // @ts-ignore
651
655
  changed: newRows,
652
656
  data: newValue,
653
- deleted: oldValue !== null && oldValue !== void 0 ? oldValue : []
657
+ deleted: deleted,
658
+ // deleted: oldValue ?? [],
659
+ type: "push"
654
660
  })
655
661
  });
656
662
  } else {
@@ -658,7 +664,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
658
664
  instance: instance,
659
665
  value: this.getState(instance.id, index),
660
666
  rowIndex: index,
661
- options: _objectSpreadProps(_objectSpread({}, options), {
667
+ options: _object_spread_props(_object_spread({}, options), {
662
668
  oldValue: oldValue
663
669
  })
664
670
  });
@@ -697,7 +703,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
697
703
  var template = JSONCopy(instance.props.headers);
698
704
  // @ts-ignore
699
705
  var columns = this.createControl(template);
700
- (_inst_children = inst.children).push.apply(_inst_children, _toConsumableArray(columns));
706
+ (_inst_children = inst.children).push.apply(_inst_children, _to_consumable_array(columns));
701
707
  }
702
708
  return row;
703
709
  }
@@ -718,11 +724,11 @@ var Engine = /*#__PURE__*/ function(Watcher) {
718
724
  function emit(eventKey, payload) {
719
725
  var _this = this;
720
726
  var _this1 = this, _superprop_get_emit = function() {
721
- return _get(_getPrototypeOf(Engine.prototype), "emit", _this);
727
+ return _get(_get_prototype_of(Engine.prototype), "emit", _this);
722
728
  };
723
- return _asyncToGenerator(function() {
729
+ return _async_to_generator(function() {
724
730
  var needWait, promiseResolver, promise, results;
725
- return __generator(this, function(_state) {
731
+ return _ts_generator(this, function(_state) {
726
732
  switch(_state.label){
727
733
  case 0:
728
734
  if (!(eventKey === "engine-mounted")) return [
@@ -741,7 +747,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
741
747
  2
742
748
  ];
743
749
  console.time("engine-mounted need wait");
744
- needWait = _toConsumableArray(_this1._jobTasks);
750
+ needWait = _to_consumable_array(_this1._jobTasks);
745
751
  return [
746
752
  4,
747
753
  Promise.all(needWait)
@@ -787,7 +793,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
787
793
  if (applyingPluginName) {
788
794
  callback.applyingPluginName = applyingPluginName;
789
795
  }
790
- return _get(_getPrototypeOf(Engine.prototype), "on", this).call(this, key, callback);
796
+ return _get(_get_prototype_of(Engine.prototype), "on", this).call(this, key, callback);
791
797
  }
792
798
  },
793
799
  {
@@ -797,7 +803,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
797
803
  args[_key] = arguments[_key];
798
804
  }
799
805
  var _this_runtime;
800
- return (_this_runtime = this.runtime).createControl.apply(_this_runtime, _toConsumableArray(args));
806
+ return (_this_runtime = this.runtime).createControl.apply(_this_runtime, _to_consumable_array(args));
801
807
  }
802
808
  },
803
809
  {
@@ -904,7 +910,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
904
910
  var newStates = states !== null && states !== void 0 ? states : {};
905
911
  Object.keys(newStates).forEach(function(stateId) {
906
912
  Object.entries(_this.store.controlIdMapping).forEach(function(param) {
907
- var _param = _slicedToArray(param, 2), controlId = _param[0], controlIdMapping = _param[1];
913
+ var _param = _sliced_to_array(param, 2), controlId = _param[0], controlIdMapping = _param[1];
908
914
  if (controlIdMapping.dataView === stateId) {
909
915
  // state对象是dataView包裹的
910
916
  var value = newStates[stateId][controlId];
@@ -945,9 +951,10 @@ var Engine = /*#__PURE__*/ function(Watcher) {
945
951
  }
946
952
  var dataBind = dataBindMapping1.dataBind, controlId1 = dataBindMapping1.controlId;
947
953
  var state = this.getState(controlId1, rowIndex);
948
- if (_instanceof(dataBind, ObjectDataBind)) {
954
+ //if (dataBind instanceof ObjectDataBind) {
955
+ if (!isDataBind(dataBind)) {
949
956
  return Object.entries(dataBind).reduce(function(result, param) {
950
- var _param = _slicedToArray(param, 2), key = _param[0], dataBind = _param[1];
957
+ var _param = _sliced_to_array(param, 2), key = _param[0], dataBind = _param[1];
951
958
  // objectDataBind的元素,跳过下一次赋值
952
959
  if (dataBind.fieldCode === fieldCode) {
953
960
  return result[key];
@@ -973,8 +980,8 @@ var Engine = /*#__PURE__*/ function(Watcher) {
973
980
  var data = getFieldData.map(function(item) {
974
981
  var obj = {};
975
982
  for(var key in item){
976
- var _controlIdMapping_controlId_children_key, _controlIdMapping_controlId, _controlIdMapping_controlId_children_key_dataBind;
977
- var fieldCode = (_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;
983
+ var _controlIdMapping_controlId_children_key_dataBind, _controlIdMapping_controlId_children_key, _controlIdMapping_controlId;
984
+ var fieldCode = (_controlIdMapping_controlId = controlIdMapping[controlId]) === null || _controlIdMapping_controlId === void 0 ? void 0 : (_controlIdMapping_controlId_children_key = _controlIdMapping_controlId.children[key]) === null || _controlIdMapping_controlId_children_key === void 0 ? void 0 : (_controlIdMapping_controlId_children_key_dataBind = _controlIdMapping_controlId_children_key.dataBind) === null || _controlIdMapping_controlId_children_key_dataBind === void 0 ? void 0 : _controlIdMapping_controlId_children_key_dataBind.fieldCode;
978
985
  //未绑定字段的控件,直接抛弃
979
986
  if (fieldCode !== "") {
980
987
  var _controlIdMapping_controlId1;
@@ -984,7 +991,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
984
991
  // 兼容一个控件需要绑定多个字段的情况
985
992
  for(var keyChi in item[key]){
986
993
  var _controlIdMapping_controlId_children_key1, _controlIdMapping_controlId2;
987
- obj[(_controlIdMapping_controlId_children_key1 = (_controlIdMapping_controlId2 = controlIdMapping[controlId]) === null || _controlIdMapping_controlId2 === void 0 ? void 0 : _controlIdMapping_controlId2.children[key]) === null || _controlIdMapping_controlId_children_key1 === void 0 ? void 0 : _controlIdMapping_controlId_children_key1.dataBind[keyChi].fieldCode] = item[key][keyChi];
994
+ obj[(_controlIdMapping_controlId2 = controlIdMapping[controlId]) === null || _controlIdMapping_controlId2 === void 0 ? void 0 : (_controlIdMapping_controlId_children_key1 = _controlIdMapping_controlId2.children[key]) === null || _controlIdMapping_controlId_children_key1 === void 0 ? void 0 : _controlIdMapping_controlId_children_key1.dataBind[keyChi].fieldCode] = item[key][keyChi];
988
995
  }
989
996
  }
990
997
  }
@@ -994,7 +1001,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
994
1001
  return data;
995
1002
  } else {
996
1003
  var _loop = function(key) {
997
- var _controlIdMapping_key, _controlIdMapping_key_dataBind, _controlIdMapping_key1, _controlIdMapping_key_dataBind1;
1004
+ var _controlIdMapping_key_dataBind, _controlIdMapping_key, _controlIdMapping_key_dataBind1, _controlIdMapping_key1;
998
1005
  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) {
999
1006
  var _controlIdMapping_key2;
1000
1007
  obj[(_controlIdMapping_key2 = controlIdMapping[key]) === null || _controlIdMapping_key2 === void 0 ? void 0 : _controlIdMapping_key2.dataBind.fieldCode] = getFieldData[key];
@@ -1024,7 +1031,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
1024
1031
  // 兼容一个控件需要绑定多个字段的情况
1025
1032
  for(var keyChi in getFieldData[key]){
1026
1033
  var _controlIdMapping_key_dataBind_keyChi, _controlIdMapping_key4;
1027
- 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];
1034
+ obj[(_controlIdMapping_key4 = controlIdMapping[key]) === null || _controlIdMapping_key4 === void 0 ? void 0 : (_controlIdMapping_key_dataBind_keyChi = _controlIdMapping_key4.dataBind[keyChi]) === null || _controlIdMapping_key_dataBind_keyChi === void 0 ? void 0 : _controlIdMapping_key_dataBind_keyChi.fieldCode] = getFieldData[key][keyChi];
1028
1035
  }
1029
1036
  }
1030
1037
  };
@@ -1052,12 +1059,13 @@ var Engine = /*#__PURE__*/ function(Watcher) {
1052
1059
  return;
1053
1060
  }
1054
1061
  var dataBind = dataBindMapping.dataBind, controlId = dataBindMapping.controlId;
1055
- if (_instanceof(dataBind, ObjectDataBind)) {
1062
+ // if (dataBind instanceof ObjectDataBind) {
1063
+ if (!isDataBind(dataBind)) {
1056
1064
  var _JSONCopy;
1057
1065
  var oldState = (_JSONCopy = JSONCopy(this.getState(controlId, rowIndex))) !== null && _JSONCopy !== void 0 ? _JSONCopy : this.getEmptyState(controlId);
1058
1066
  // fieldCode不代表是key,所以需要找到对应的key
1059
1067
  var newState = Object.entries(dataBind).reduce(function(result, param) {
1060
- var _param = _slicedToArray(param, 2), key = _param[0], dataBind = _param[1];
1068
+ var _param = _sliced_to_array(param, 2), key = _param[0], dataBind = _param[1];
1061
1069
  // objectDataBind的元素,跳过下一次赋值
1062
1070
  if (dataBind.fieldCode === fieldCode) {
1063
1071
  result[key] = value;
@@ -1094,12 +1102,13 @@ var Engine = /*#__PURE__*/ function(Watcher) {
1094
1102
  return;
1095
1103
  }
1096
1104
  // 对象类型的值
1097
- if (_instanceof(dataBind, ObjectDataBind)) {
1105
+ // if (dataBind instanceof ObjectDataBind) {
1106
+ if (!isDataBind(dataBind)) {
1098
1107
  var _JSONCopy;
1099
1108
  var oldState = (_JSONCopy = JSONCopy(_this.getState(controlId, rowIndex))) !== null && _JSONCopy !== void 0 ? _JSONCopy : _this.getEmptyState(controlId);
1100
1109
  // fieldCode不代表是key,所以需要找到对应的key
1101
1110
  var newState = Object.entries(dataBind).reduce(function(result, param) {
1102
- var _param = _slicedToArray(param, 2), key = _param[0], dataBind = _param[1];
1111
+ var _param = _sliced_to_array(param, 2), key = _param[0], dataBind = _param[1];
1103
1112
  // objectDataBind的元素,跳过下一次赋值
1104
1113
  skipKeys.push(dataBind.fieldCode);
1105
1114
  var value = state[dataBind.fieldCode];
@@ -1138,11 +1147,12 @@ var Engine = /*#__PURE__*/ function(Watcher) {
1138
1147
  return;
1139
1148
  }
1140
1149
  // 对象类型的值
1141
- if (_instanceof(dataBind, ObjectDataBind)) {
1150
+ // if (dataBind instanceof ObjectDataBind) {
1151
+ if (!isDataBind(dataBind)) {
1142
1152
  var oldState = _this.getEmptyState(controlId);
1143
1153
  // fieldCode不代表是key,所以需要找到对应的key
1144
1154
  result[item.controlId] = Object.entries(dataBind).reduce(function(result, param) {
1145
- var _param = _slicedToArray(param, 2), key = _param[0], dataBind = _param[1];
1155
+ var _param = _sliced_to_array(param, 2), key = _param[0], dataBind = _param[1];
1146
1156
  // objectDataBind的元素,跳过下一次赋值
1147
1157
  skipKeys.push(dataBind.fieldCode);
1148
1158
  var value = state[dataBind.fieldCode];
@@ -1178,13 +1188,18 @@ var Engine = /*#__PURE__*/ function(Watcher) {
1178
1188
  if (!newState[mapping.dataViewId]) {
1179
1189
  newState[mapping.dataViewId] = {};
1180
1190
  }
1181
- newState[mapping.dataViewId][mapping.controlId] = [];
1191
+ if (!entity.length) {
1192
+ var _newState_mapping_dataViewId_mapping_controlId;
1193
+ newState[mapping.dataViewId][mapping.controlId] = (_newState_mapping_dataViewId_mapping_controlId = newState[mapping.dataViewId][mapping.controlId]) !== null && _newState_mapping_dataViewId_mapping_controlId !== void 0 ? _newState_mapping_dataViewId_mapping_controlId : [];
1194
+ } else {
1195
+ newState[mapping.dataViewId][mapping.controlId] = [];
1196
+ }
1182
1197
  entity.map(function(row) {
1183
1198
  var newRow = JSONCopy(_this.store.emptyState[mapping.dataViewId][mapping.controlId]);
1184
1199
  var skipKey = [] //qiyu ObjectDataBind中会提前将相关key拿出来赋值,为了避免重复赋值,设置了此变量
1185
1200
  ;
1186
1201
  Object.keys(row).map(function(fieldCode) {
1187
- var _this_store_dataBindMapping_dataCode, _this_store_dataBindMapping_dataCode_fields;
1202
+ var _this_store_dataBindMapping_dataCode_fields, _this_store_dataBindMapping_dataCode;
1188
1203
  if (skipKey.includes(fieldCode)) {
1189
1204
  return;
1190
1205
  }
@@ -1192,9 +1207,11 @@ var Engine = /*#__PURE__*/ function(Watcher) {
1192
1207
  return i.fieldCode === fieldCode;
1193
1208
  });
1194
1209
  if (fieldMapping) {
1195
- if (_instanceof(fieldMapping.dataBind, DataBind) && row[fieldCode] !== undefined) {
1210
+ if (// fieldMapping.dataBind instanceof DataBind &&
1211
+ isDataBind(fieldMapping.dataBind) && row[fieldCode] !== undefined) {
1196
1212
  newRow[fieldMapping.controlId] = row[fieldCode];
1197
- } else if (_instanceof(fieldMapping.dataBind, ObjectDataBind)) {
1213
+ // } else if (fieldMapping.dataBind instanceof ObjectDataBind) {
1214
+ } else if (!isDataBind(fieldMapping.dataBind)) {
1198
1215
  var _this_getEmptyState;
1199
1216
  var objValue = JSONCopy((_this_getEmptyState = _this.getEmptyState(fieldMapping.controlId)) !== null && _this_getEmptyState !== void 0 ? _this_getEmptyState : {});
1200
1217
  Object.keys(fieldMapping.dataBind).map(function(key) {
@@ -1227,9 +1244,11 @@ var Engine = /*#__PURE__*/ function(Watcher) {
1227
1244
  if (!newState[mapping.dataViewId[0]]) {
1228
1245
  newState[mapping.dataViewId[0]] = {};
1229
1246
  }
1230
- if (_instanceof(mapping.dataBind, DataBind) && entity[fieldCode] !== undefined) {
1247
+ if (// mapping.dataBind instanceof DataBind &&
1248
+ isDataBind(mapping.dataBind) && entity[fieldCode] !== undefined) {
1231
1249
  newState[mapping.dataViewId[0]][mapping.controlId] = entity[fieldCode] !== undefined ? entity[fieldCode] : emptyState[mapping.dataViewId[0]][mapping.controlId];
1232
- } else if (_instanceof(mapping.dataBind, ObjectDataBind)) {
1250
+ // } else if (mapping.dataBind instanceof ObjectDataBind) {
1251
+ } else if (!isDataBind(mapping.dataBind)) {
1233
1252
  var _this_getEmptyState;
1234
1253
  var objValue = (_this_getEmptyState = _this.getEmptyState(mapping.controlId)) !== null && _this_getEmptyState !== void 0 ? _this_getEmptyState : {};
1235
1254
  Object.keys(mapping.dataBind).map(function(key) {
@@ -1256,9 +1275,9 @@ var Engine = /*#__PURE__*/ function(Watcher) {
1256
1275
  mappingKeys === null || mappingKeys === void 0 ? void 0 : mappingKeys.forEach(function(key) {
1257
1276
  if (!mainStateKeys.includes(key) && key !== "uid" && newState[newMapping === null || newMapping === void 0 ? void 0 : newMapping.controlId]) {
1258
1277
  if (Object.keys(newState).length) {
1259
- Object.assign(newState[newMapping === null || newMapping === void 0 ? void 0 : newMapping.controlId], _defineProperty({}, key, mappingValue[key]));
1278
+ Object.assign(newState[newMapping === null || newMapping === void 0 ? void 0 : newMapping.controlId], _define_property({}, key, mappingValue[key]));
1260
1279
  } else {
1261
- Object.assign(newState, _defineProperty({}, newMapping.controlId, _defineProperty({}, key, mappingValue[key])));
1280
+ Object.assign(newState, _define_property({}, newMapping.controlId, _define_property({}, key, mappingValue[key])));
1262
1281
  }
1263
1282
  }
1264
1283
  });
@@ -1322,6 +1341,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
1322
1341
  // 如果能从flatInstances里边取到,就通过getInstanceInSubtableHeader方法取,取不到则换一种方式
1323
1342
  if (instances.length) {
1324
1343
  var instance = instances[0];
1344
+ // if (this.inList(instance.id) === true) {
1325
1345
  if (this.inList(instance.id) !== undefined) {
1326
1346
  var headerInstance = this.getInstanceInSubtableHeader(instance);
1327
1347
  if (headerInstance) {
@@ -1332,8 +1352,8 @@ var Engine = /*#__PURE__*/ function(Watcher) {
1332
1352
  var _this_getControlIdMapping;
1333
1353
  var controlIdMapping = (_this_getControlIdMapping = this.getControlIdMapping()) !== null && _this_getControlIdMapping !== void 0 ? _this_getControlIdMapping : {};
1334
1354
  var _Object_entries_find;
1335
- var _ref = _slicedToArray((_Object_entries_find = Object.entries(controlIdMapping).find(function(param) {
1336
- var _param = _slicedToArray(param, 2), _ = _param[0], mapping = _param[1];
1355
+ var _ref = _sliced_to_array((_Object_entries_find = Object.entries(controlIdMapping).find(function(param) {
1356
+ var _param = _sliced_to_array(param, 2), _ = _param[0], mapping = _param[1];
1337
1357
  return mapping.children && controlId in mapping.children;
1338
1358
  })) !== null && _Object_entries_find !== void 0 ? _Object_entries_find : [], 1), subtableId = _ref[0];
1339
1359
  if (subtableId) {
@@ -1459,6 +1479,14 @@ var Engine = /*#__PURE__*/ function(Watcher) {
1459
1479
  return isString(types) ? instance.type === types : types.includes(instance.type);
1460
1480
  }
1461
1481
  },
1482
+ {
1483
+ key: "assertInstanceIsCustomControl",
1484
+ value: /**
1485
+ * 判断控件或控件类型是一个自定义控件
1486
+ * */ function assertInstanceIsCustomControl(instance) {
1487
+ return !isBuiltInControls(isString(instance) ? instance : instance.type);
1488
+ }
1489
+ },
1462
1490
  {
1463
1491
  key: "getInstanceRowIndex",
1464
1492
  value: /**
@@ -1494,7 +1522,27 @@ var Engine = /*#__PURE__*/ function(Watcher) {
1494
1522
  },
1495
1523
  {
1496
1524
  key: "getInstanceParentControl",
1497
- value: function getInstanceParentControl(instance, controlType) {
1525
+ value: // public getInstanceRowIndex(
1526
+ // instance: ControlRuntimeInstance<ControlsKeys> | RuntimeControl
1527
+ // ) {
1528
+ // let rowIndex: number | undefined
1529
+ // // @ts-ignore
1530
+ // if (this.assertInstance(instance, CONTROL_TYPE.SUBTABLE_COLUMN)) {
1531
+ // rowIndex = -1
1532
+ // }else{
1533
+ // const instanceList = this.runtime.instanceMap[instance.id]
1534
+ // if(Object.prototype.toString.call(instanceList) === '[object Array]'){
1535
+ // const index = instanceList.findIndex(
1536
+ // (item: any) => item === instance
1537
+ // )
1538
+ // if (index > -1) {
1539
+ // rowIndex = index
1540
+ // }
1541
+ // }
1542
+ // }
1543
+ // return rowIndex
1544
+ // }
1545
+ function getInstanceParentControl(instance, controlType) {
1498
1546
  if (!instance.parent) {
1499
1547
  return;
1500
1548
  }
@@ -1543,7 +1591,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
1543
1591
  args[_key] = arguments[_key];
1544
1592
  }
1545
1593
  var _this_runtime;
1546
- return (_this_runtime = this.runtime).registerControlConfig.apply(_this_runtime, _toConsumableArray(args));
1594
+ return (_this_runtime = this.runtime).registerControlConfig.apply(_this_runtime, _to_consumable_array(args));
1547
1595
  }
1548
1596
  },
1549
1597
  {
@@ -1559,7 +1607,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
1559
1607
  var mapping = (_this_store_controlIdMapping = this.store.controlIdMapping) !== null && _this_store_controlIdMapping !== void 0 ? _this_store_controlIdMapping : {};
1560
1608
  var listKey = undefined;
1561
1609
  Object.keys(mapping).some(function(key) {
1562
- var _mapping_key, _mapping_key_children;
1610
+ var _mapping_key_children, _mapping_key;
1563
1611
  var matched = (_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);
1564
1612
  if (matched) {
1565
1613
  listKey = key;
@@ -1578,7 +1626,7 @@ var Engine = /*#__PURE__*/ function(Watcher) {
1578
1626
  arg[_key] = arguments[_key];
1579
1627
  }
1580
1628
  var _Runtime;
1581
- return (_Runtime = Runtime).register.apply(_Runtime, _toConsumableArray(arg));
1629
+ return (_Runtime = Runtime).register.apply(_Runtime, _to_consumable_array(arg));
1582
1630
  }
1583
1631
  },
1584
1632
  {