vxe-table 3.4.4 → 3.4.7-beta.1

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.
Files changed (51) hide show
  1. package/README.en.md +1 -1
  2. package/README.md +1 -1
  3. package/README.zh-TW.md +1 -1
  4. package/lib/button/src/button.js +15 -14
  5. package/lib/button/src/button.min.js +1 -1
  6. package/lib/edit/src/mixin.js +19 -25
  7. package/lib/edit/src/mixin.min.js +1 -1
  8. package/lib/export/src/mixin.js +25 -10
  9. package/lib/export/src/mixin.min.js +1 -1
  10. package/lib/filter/src/mixin.js +25 -1
  11. package/lib/filter/src/mixin.min.js +1 -1
  12. package/lib/grid/src/grid.js +6 -3
  13. package/lib/grid/src/grid.min.js +1 -1
  14. package/lib/index.umd.js +1472 -426
  15. package/lib/index.umd.min.js +2 -1
  16. package/lib/select/src/select.js +1 -1
  17. package/lib/select/src/select.min.js +1 -1
  18. package/lib/table/src/body.js +9 -17
  19. package/lib/table/src/body.min.js +1 -1
  20. package/lib/table/src/cell.js +16 -17
  21. package/lib/table/src/cell.min.js +1 -1
  22. package/lib/table/src/methods.js +490 -324
  23. package/lib/table/src/methods.min.js +1 -1
  24. package/lib/table/src/table.js +6 -6
  25. package/lib/table/src/util.js +7 -0
  26. package/lib/table/src/util.min.js +1 -1
  27. package/lib/tools/src/dom.js +2 -9
  28. package/lib/tools/src/dom.min.js +1 -1
  29. package/lib/tools/src/utils.js +1 -1
  30. package/lib/tools/src/utils.min.js +1 -1
  31. package/lib/v-x-e-table/src/conf.js +6 -2
  32. package/lib/v-x-e-table/src/conf.min.js +1 -1
  33. package/lib/validator/src/mixin.js +3 -3
  34. package/lib/validator/src/mixin.min.js +1 -1
  35. package/package.json +3 -24
  36. package/packages/button/src/button.js +14 -14
  37. package/packages/edit/src/mixin.js +18 -21
  38. package/packages/export/src/mixin.js +17 -6
  39. package/packages/filter/src/mixin.js +20 -1
  40. package/packages/grid/src/grid.js +6 -2
  41. package/packages/select/src/select.js +1 -1
  42. package/packages/table/src/body.js +12 -16
  43. package/packages/table/src/cell.js +15 -15
  44. package/packages/table/src/methods.js +147 -52
  45. package/packages/table/src/table.js +6 -6
  46. package/packages/table/src/util.js +4 -0
  47. package/packages/tools/src/dom.js +2 -7
  48. package/packages/tools/src/utils.js +1 -1
  49. package/packages/v-x-e-table/src/conf.js +6 -2
  50. package/packages/validator/src/mixin.js +3 -3
  51. package/types/v-x-e-table/renderer.d.ts +3 -1
package/lib/index.umd.js CHANGED
@@ -783,6 +783,16 @@ module.exports = function (exec, SKIP_CLOSING) {
783
783
  };
784
784
 
785
785
 
786
+ /***/ }),
787
+
788
+ /***/ "1cdc":
789
+ /***/ (function(module, exports, __webpack_require__) {
790
+
791
+ var userAgent = __webpack_require__("342f");
792
+
793
+ module.exports = /(?:ipad|iphone|ipod).*applewebkit/i.test(userAgent);
794
+
795
+
786
796
  /***/ }),
787
797
 
788
798
  /***/ "1d80":
@@ -2115,6 +2125,126 @@ $({ global: true, forced: !USE_NATIVE_URL, sham: !DESCRIPTORS }, {
2115
2125
  });
2116
2126
 
2117
2127
 
2128
+ /***/ }),
2129
+
2130
+ /***/ "2cf4":
2131
+ /***/ (function(module, exports, __webpack_require__) {
2132
+
2133
+ var global = __webpack_require__("da84");
2134
+ var isCallable = __webpack_require__("1626");
2135
+ var fails = __webpack_require__("d039");
2136
+ var bind = __webpack_require__("0366");
2137
+ var html = __webpack_require__("1be4");
2138
+ var createElement = __webpack_require__("cc12");
2139
+ var IS_IOS = __webpack_require__("1cdc");
2140
+ var IS_NODE = __webpack_require__("605d");
2141
+
2142
+ var set = global.setImmediate;
2143
+ var clear = global.clearImmediate;
2144
+ var process = global.process;
2145
+ var MessageChannel = global.MessageChannel;
2146
+ var Dispatch = global.Dispatch;
2147
+ var counter = 0;
2148
+ var queue = {};
2149
+ var ONREADYSTATECHANGE = 'onreadystatechange';
2150
+ var location, defer, channel, port;
2151
+
2152
+ try {
2153
+ // Deno throws a ReferenceError on `location` access without `--location` flag
2154
+ location = global.location;
2155
+ } catch (error) { /* empty */ }
2156
+
2157
+ var run = function (id) {
2158
+ // eslint-disable-next-line no-prototype-builtins -- safe
2159
+ if (queue.hasOwnProperty(id)) {
2160
+ var fn = queue[id];
2161
+ delete queue[id];
2162
+ fn();
2163
+ }
2164
+ };
2165
+
2166
+ var runner = function (id) {
2167
+ return function () {
2168
+ run(id);
2169
+ };
2170
+ };
2171
+
2172
+ var listener = function (event) {
2173
+ run(event.data);
2174
+ };
2175
+
2176
+ var post = function (id) {
2177
+ // old engines have not location.origin
2178
+ global.postMessage(String(id), location.protocol + '//' + location.host);
2179
+ };
2180
+
2181
+ // Node.js 0.9+ & IE10+ has setImmediate, otherwise:
2182
+ if (!set || !clear) {
2183
+ set = function setImmediate(fn) {
2184
+ var args = [];
2185
+ var argumentsLength = arguments.length;
2186
+ var i = 1;
2187
+ while (argumentsLength > i) args.push(arguments[i++]);
2188
+ queue[++counter] = function () {
2189
+ // eslint-disable-next-line no-new-func -- spec requirement
2190
+ (isCallable(fn) ? fn : Function(fn)).apply(undefined, args);
2191
+ };
2192
+ defer(counter);
2193
+ return counter;
2194
+ };
2195
+ clear = function clearImmediate(id) {
2196
+ delete queue[id];
2197
+ };
2198
+ // Node.js 0.8-
2199
+ if (IS_NODE) {
2200
+ defer = function (id) {
2201
+ process.nextTick(runner(id));
2202
+ };
2203
+ // Sphere (JS game engine) Dispatch API
2204
+ } else if (Dispatch && Dispatch.now) {
2205
+ defer = function (id) {
2206
+ Dispatch.now(runner(id));
2207
+ };
2208
+ // Browsers with MessageChannel, includes WebWorkers
2209
+ // except iOS - https://github.com/zloirock/core-js/issues/624
2210
+ } else if (MessageChannel && !IS_IOS) {
2211
+ channel = new MessageChannel();
2212
+ port = channel.port2;
2213
+ channel.port1.onmessage = listener;
2214
+ defer = bind(port.postMessage, port, 1);
2215
+ // Browsers with postMessage, skip WebWorkers
2216
+ // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'
2217
+ } else if (
2218
+ global.addEventListener &&
2219
+ isCallable(global.postMessage) &&
2220
+ !global.importScripts &&
2221
+ location && location.protocol !== 'file:' &&
2222
+ !fails(post)
2223
+ ) {
2224
+ defer = post;
2225
+ global.addEventListener('message', listener, false);
2226
+ // IE8-
2227
+ } else if (ONREADYSTATECHANGE in createElement('script')) {
2228
+ defer = function (id) {
2229
+ html.appendChild(createElement('script'))[ONREADYSTATECHANGE] = function () {
2230
+ html.removeChild(this);
2231
+ run(id);
2232
+ };
2233
+ };
2234
+ // Rest old browsers
2235
+ } else {
2236
+ defer = function (id) {
2237
+ setTimeout(runner(id), 0);
2238
+ };
2239
+ }
2240
+ }
2241
+
2242
+ module.exports = {
2243
+ set: set,
2244
+ clear: clear
2245
+ };
2246
+
2247
+
2118
2248
  /***/ }),
2119
2249
 
2120
2250
  /***/ "2d00":
@@ -2341,6 +2471,21 @@ module.exports = function (key) {
2341
2471
  };
2342
2472
 
2343
2473
 
2474
+ /***/ }),
2475
+
2476
+ /***/ "44de":
2477
+ /***/ (function(module, exports, __webpack_require__) {
2478
+
2479
+ var global = __webpack_require__("da84");
2480
+
2481
+ module.exports = function (a, b) {
2482
+ var console = global.console;
2483
+ if (console && console.error) {
2484
+ arguments.length === 1 ? console.error(a) : console.error(a, b);
2485
+ }
2486
+ };
2487
+
2488
+
2344
2489
  /***/ }),
2345
2490
 
2346
2491
  /***/ "44e7":
@@ -3484,6 +3629,25 @@ module.exports = function (input) {
3484
3629
  };
3485
3630
 
3486
3631
 
3632
+ /***/ }),
3633
+
3634
+ /***/ "605d":
3635
+ /***/ (function(module, exports, __webpack_require__) {
3636
+
3637
+ var classof = __webpack_require__("c6b6");
3638
+ var global = __webpack_require__("da84");
3639
+
3640
+ module.exports = classof(global.process) == 'process';
3641
+
3642
+
3643
+ /***/ }),
3644
+
3645
+ /***/ "6069":
3646
+ /***/ (function(module, exports) {
3647
+
3648
+ module.exports = typeof window == 'object';
3649
+
3650
+
3487
3651
  /***/ }),
3488
3652
 
3489
3653
  /***/ "60da":
@@ -5490,6 +5654,16 @@ $({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {
5490
5654
  });
5491
5655
 
5492
5656
 
5657
+ /***/ }),
5658
+
5659
+ /***/ "a4b4":
5660
+ /***/ (function(module, exports, __webpack_require__) {
5661
+
5662
+ var userAgent = __webpack_require__("342f");
5663
+
5664
+ module.exports = /web0s(?!.*chrome)/i.test(userAgent);
5665
+
5666
+
5493
5667
  /***/ }),
5494
5668
 
5495
5669
  /***/ "a4d3":
@@ -6173,6 +6347,96 @@ if (DESCRIPTORS && !FUNCTION_NAME_EXISTS) {
6173
6347
  }
6174
6348
 
6175
6349
 
6350
+ /***/ }),
6351
+
6352
+ /***/ "b575":
6353
+ /***/ (function(module, exports, __webpack_require__) {
6354
+
6355
+ var global = __webpack_require__("da84");
6356
+ var getOwnPropertyDescriptor = __webpack_require__("06cf").f;
6357
+ var macrotask = __webpack_require__("2cf4").set;
6358
+ var IS_IOS = __webpack_require__("1cdc");
6359
+ var IS_IOS_PEBBLE = __webpack_require__("d4c3");
6360
+ var IS_WEBOS_WEBKIT = __webpack_require__("a4b4");
6361
+ var IS_NODE = __webpack_require__("605d");
6362
+
6363
+ var MutationObserver = global.MutationObserver || global.WebKitMutationObserver;
6364
+ var document = global.document;
6365
+ var process = global.process;
6366
+ var Promise = global.Promise;
6367
+ // Node.js 11 shows ExperimentalWarning on getting `queueMicrotask`
6368
+ var queueMicrotaskDescriptor = getOwnPropertyDescriptor(global, 'queueMicrotask');
6369
+ var queueMicrotask = queueMicrotaskDescriptor && queueMicrotaskDescriptor.value;
6370
+
6371
+ var flush, head, last, notify, toggle, node, promise, then;
6372
+
6373
+ // modern engines have queueMicrotask method
6374
+ if (!queueMicrotask) {
6375
+ flush = function () {
6376
+ var parent, fn;
6377
+ if (IS_NODE && (parent = process.domain)) parent.exit();
6378
+ while (head) {
6379
+ fn = head.fn;
6380
+ head = head.next;
6381
+ try {
6382
+ fn();
6383
+ } catch (error) {
6384
+ if (head) notify();
6385
+ else last = undefined;
6386
+ throw error;
6387
+ }
6388
+ } last = undefined;
6389
+ if (parent) parent.enter();
6390
+ };
6391
+
6392
+ // browsers with MutationObserver, except iOS - https://github.com/zloirock/core-js/issues/339
6393
+ // also except WebOS Webkit https://github.com/zloirock/core-js/issues/898
6394
+ if (!IS_IOS && !IS_NODE && !IS_WEBOS_WEBKIT && MutationObserver && document) {
6395
+ toggle = true;
6396
+ node = document.createTextNode('');
6397
+ new MutationObserver(flush).observe(node, { characterData: true });
6398
+ notify = function () {
6399
+ node.data = toggle = !toggle;
6400
+ };
6401
+ // environments with maybe non-completely correct, but existent Promise
6402
+ } else if (!IS_IOS_PEBBLE && Promise && Promise.resolve) {
6403
+ // Promise.resolve without an argument throws an error in LG WebOS 2
6404
+ promise = Promise.resolve(undefined);
6405
+ // workaround of WebKit ~ iOS Safari 10.1 bug
6406
+ promise.constructor = Promise;
6407
+ then = promise.then;
6408
+ notify = function () {
6409
+ then.call(promise, flush);
6410
+ };
6411
+ // Node.js without promises
6412
+ } else if (IS_NODE) {
6413
+ notify = function () {
6414
+ process.nextTick(flush);
6415
+ };
6416
+ // for other environments - macrotask based on:
6417
+ // - setImmediate
6418
+ // - MessageChannel
6419
+ // - window.postMessag
6420
+ // - onreadystatechange
6421
+ // - setTimeout
6422
+ } else {
6423
+ notify = function () {
6424
+ // strange IE + webpack dev server bug - use .call(global)
6425
+ macrotask.call(global, flush);
6426
+ };
6427
+ }
6428
+ }
6429
+
6430
+ module.exports = queueMicrotask || function (fn) {
6431
+ var task = { fn: fn, next: undefined };
6432
+ if (last) last.next = task;
6433
+ if (!head) {
6434
+ head = task;
6435
+ notify();
6436
+ } last = task;
6437
+ };
6438
+
6439
+
6176
6440
  /***/ }),
6177
6441
 
6178
6442
  /***/ "b622":
@@ -6643,6 +6907,41 @@ module.exports = function (it) {
6643
6907
  };
6644
6908
 
6645
6909
 
6910
+ /***/ }),
6911
+
6912
+ /***/ "cca6":
6913
+ /***/ (function(module, exports, __webpack_require__) {
6914
+
6915
+ var $ = __webpack_require__("23e7");
6916
+ var assign = __webpack_require__("60da");
6917
+
6918
+ // `Object.assign` method
6919
+ // https://tc39.es/ecma262/#sec-object.assign
6920
+ // eslint-disable-next-line es/no-object-assign -- required for testing
6921
+ $({ target: 'Object', stat: true, forced: Object.assign !== assign }, {
6922
+ assign: assign
6923
+ });
6924
+
6925
+
6926
+ /***/ }),
6927
+
6928
+ /***/ "cdf9":
6929
+ /***/ (function(module, exports, __webpack_require__) {
6930
+
6931
+ var anObject = __webpack_require__("825a");
6932
+ var isObject = __webpack_require__("861d");
6933
+ var newPromiseCapability = __webpack_require__("f069");
6934
+
6935
+ module.exports = function (C, x) {
6936
+ anObject(C);
6937
+ if (isObject(x) && x.constructor === C) return x;
6938
+ var promiseCapability = newPromiseCapability.f(C);
6939
+ var resolve = promiseCapability.resolve;
6940
+ resolve(x);
6941
+ return promiseCapability.promise;
6942
+ };
6943
+
6944
+
6646
6945
  /***/ }),
6647
6946
 
6648
6947
  /***/ "ce4e":
@@ -6800,6 +7099,17 @@ module.exports = function (it, TAG, STATIC) {
6800
7099
  };
6801
7100
 
6802
7101
 
7102
+ /***/ }),
7103
+
7104
+ /***/ "d4c3":
7105
+ /***/ (function(module, exports, __webpack_require__) {
7106
+
7107
+ var userAgent = __webpack_require__("342f");
7108
+ var global = __webpack_require__("da84");
7109
+
7110
+ module.exports = /ipad|iphone|ipod/i.test(userAgent) && global.Pebble !== undefined;
7111
+
7112
+
6803
7113
  /***/ }),
6804
7114
 
6805
7115
  /***/ "d784":
@@ -7267,6 +7577,422 @@ var wellKnownSymbol = __webpack_require__("b622");
7267
7577
  exports.f = wellKnownSymbol;
7268
7578
 
7269
7579
 
7580
+ /***/ }),
7581
+
7582
+ /***/ "e667":
7583
+ /***/ (function(module, exports) {
7584
+
7585
+ module.exports = function (exec) {
7586
+ try {
7587
+ return { error: false, value: exec() };
7588
+ } catch (error) {
7589
+ return { error: true, value: error };
7590
+ }
7591
+ };
7592
+
7593
+
7594
+ /***/ }),
7595
+
7596
+ /***/ "e6cf":
7597
+ /***/ (function(module, exports, __webpack_require__) {
7598
+
7599
+ "use strict";
7600
+
7601
+ var $ = __webpack_require__("23e7");
7602
+ var IS_PURE = __webpack_require__("c430");
7603
+ var global = __webpack_require__("da84");
7604
+ var getBuiltIn = __webpack_require__("d066");
7605
+ var NativePromise = __webpack_require__("fea9");
7606
+ var redefine = __webpack_require__("6eeb");
7607
+ var redefineAll = __webpack_require__("e2cc");
7608
+ var setPrototypeOf = __webpack_require__("d2bb");
7609
+ var setToStringTag = __webpack_require__("d44e");
7610
+ var setSpecies = __webpack_require__("2626");
7611
+ var aCallable = __webpack_require__("59ed");
7612
+ var isCallable = __webpack_require__("1626");
7613
+ var isObject = __webpack_require__("861d");
7614
+ var anInstance = __webpack_require__("19aa");
7615
+ var inspectSource = __webpack_require__("8925");
7616
+ var iterate = __webpack_require__("2266");
7617
+ var checkCorrectnessOfIteration = __webpack_require__("1c7e");
7618
+ var speciesConstructor = __webpack_require__("4840");
7619
+ var task = __webpack_require__("2cf4").set;
7620
+ var microtask = __webpack_require__("b575");
7621
+ var promiseResolve = __webpack_require__("cdf9");
7622
+ var hostReportErrors = __webpack_require__("44de");
7623
+ var newPromiseCapabilityModule = __webpack_require__("f069");
7624
+ var perform = __webpack_require__("e667");
7625
+ var InternalStateModule = __webpack_require__("69f3");
7626
+ var isForced = __webpack_require__("94ca");
7627
+ var wellKnownSymbol = __webpack_require__("b622");
7628
+ var IS_BROWSER = __webpack_require__("6069");
7629
+ var IS_NODE = __webpack_require__("605d");
7630
+ var V8_VERSION = __webpack_require__("2d00");
7631
+
7632
+ var SPECIES = wellKnownSymbol('species');
7633
+ var PROMISE = 'Promise';
7634
+ var getInternalState = InternalStateModule.get;
7635
+ var setInternalState = InternalStateModule.set;
7636
+ var getInternalPromiseState = InternalStateModule.getterFor(PROMISE);
7637
+ var NativePromisePrototype = NativePromise && NativePromise.prototype;
7638
+ var PromiseConstructor = NativePromise;
7639
+ var PromiseConstructorPrototype = NativePromisePrototype;
7640
+ var TypeError = global.TypeError;
7641
+ var document = global.document;
7642
+ var process = global.process;
7643
+ var newPromiseCapability = newPromiseCapabilityModule.f;
7644
+ var newGenericPromiseCapability = newPromiseCapability;
7645
+ var DISPATCH_EVENT = !!(document && document.createEvent && global.dispatchEvent);
7646
+ var NATIVE_REJECTION_EVENT = isCallable(global.PromiseRejectionEvent);
7647
+ var UNHANDLED_REJECTION = 'unhandledrejection';
7648
+ var REJECTION_HANDLED = 'rejectionhandled';
7649
+ var PENDING = 0;
7650
+ var FULFILLED = 1;
7651
+ var REJECTED = 2;
7652
+ var HANDLED = 1;
7653
+ var UNHANDLED = 2;
7654
+ var SUBCLASSING = false;
7655
+ var Internal, OwnPromiseCapability, PromiseWrapper, nativeThen;
7656
+
7657
+ var FORCED = isForced(PROMISE, function () {
7658
+ var PROMISE_CONSTRUCTOR_SOURCE = inspectSource(PromiseConstructor);
7659
+ var GLOBAL_CORE_JS_PROMISE = PROMISE_CONSTRUCTOR_SOURCE !== String(PromiseConstructor);
7660
+ // V8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables
7661
+ // https://bugs.chromium.org/p/chromium/issues/detail?id=830565
7662
+ // We can't detect it synchronously, so just check versions
7663
+ if (!GLOBAL_CORE_JS_PROMISE && V8_VERSION === 66) return true;
7664
+ // We need Promise#finally in the pure version for preventing prototype pollution
7665
+ if (IS_PURE && !PromiseConstructorPrototype['finally']) return true;
7666
+ // We can't use @@species feature detection in V8 since it causes
7667
+ // deoptimization and performance degradation
7668
+ // https://github.com/zloirock/core-js/issues/679
7669
+ if (V8_VERSION >= 51 && /native code/.test(PROMISE_CONSTRUCTOR_SOURCE)) return false;
7670
+ // Detect correctness of subclassing with @@species support
7671
+ var promise = new PromiseConstructor(function (resolve) { resolve(1); });
7672
+ var FakePromise = function (exec) {
7673
+ exec(function () { /* empty */ }, function () { /* empty */ });
7674
+ };
7675
+ var constructor = promise.constructor = {};
7676
+ constructor[SPECIES] = FakePromise;
7677
+ SUBCLASSING = promise.then(function () { /* empty */ }) instanceof FakePromise;
7678
+ if (!SUBCLASSING) return true;
7679
+ // Unhandled rejections tracking support, NodeJS Promise without it fails @@species test
7680
+ return !GLOBAL_CORE_JS_PROMISE && IS_BROWSER && !NATIVE_REJECTION_EVENT;
7681
+ });
7682
+
7683
+ var INCORRECT_ITERATION = FORCED || !checkCorrectnessOfIteration(function (iterable) {
7684
+ PromiseConstructor.all(iterable)['catch'](function () { /* empty */ });
7685
+ });
7686
+
7687
+ // helpers
7688
+ var isThenable = function (it) {
7689
+ var then;
7690
+ return isObject(it) && isCallable(then = it.then) ? then : false;
7691
+ };
7692
+
7693
+ var notify = function (state, isReject) {
7694
+ if (state.notified) return;
7695
+ state.notified = true;
7696
+ var chain = state.reactions;
7697
+ microtask(function () {
7698
+ var value = state.value;
7699
+ var ok = state.state == FULFILLED;
7700
+ var index = 0;
7701
+ // variable length - can't use forEach
7702
+ while (chain.length > index) {
7703
+ var reaction = chain[index++];
7704
+ var handler = ok ? reaction.ok : reaction.fail;
7705
+ var resolve = reaction.resolve;
7706
+ var reject = reaction.reject;
7707
+ var domain = reaction.domain;
7708
+ var result, then, exited;
7709
+ try {
7710
+ if (handler) {
7711
+ if (!ok) {
7712
+ if (state.rejection === UNHANDLED) onHandleUnhandled(state);
7713
+ state.rejection = HANDLED;
7714
+ }
7715
+ if (handler === true) result = value;
7716
+ else {
7717
+ if (domain) domain.enter();
7718
+ result = handler(value); // can throw
7719
+ if (domain) {
7720
+ domain.exit();
7721
+ exited = true;
7722
+ }
7723
+ }
7724
+ if (result === reaction.promise) {
7725
+ reject(TypeError('Promise-chain cycle'));
7726
+ } else if (then = isThenable(result)) {
7727
+ then.call(result, resolve, reject);
7728
+ } else resolve(result);
7729
+ } else reject(value);
7730
+ } catch (error) {
7731
+ if (domain && !exited) domain.exit();
7732
+ reject(error);
7733
+ }
7734
+ }
7735
+ state.reactions = [];
7736
+ state.notified = false;
7737
+ if (isReject && !state.rejection) onUnhandled(state);
7738
+ });
7739
+ };
7740
+
7741
+ var dispatchEvent = function (name, promise, reason) {
7742
+ var event, handler;
7743
+ if (DISPATCH_EVENT) {
7744
+ event = document.createEvent('Event');
7745
+ event.promise = promise;
7746
+ event.reason = reason;
7747
+ event.initEvent(name, false, true);
7748
+ global.dispatchEvent(event);
7749
+ } else event = { promise: promise, reason: reason };
7750
+ if (!NATIVE_REJECTION_EVENT && (handler = global['on' + name])) handler(event);
7751
+ else if (name === UNHANDLED_REJECTION) hostReportErrors('Unhandled promise rejection', reason);
7752
+ };
7753
+
7754
+ var onUnhandled = function (state) {
7755
+ task.call(global, function () {
7756
+ var promise = state.facade;
7757
+ var value = state.value;
7758
+ var IS_UNHANDLED = isUnhandled(state);
7759
+ var result;
7760
+ if (IS_UNHANDLED) {
7761
+ result = perform(function () {
7762
+ if (IS_NODE) {
7763
+ process.emit('unhandledRejection', value, promise);
7764
+ } else dispatchEvent(UNHANDLED_REJECTION, promise, value);
7765
+ });
7766
+ // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should
7767
+ state.rejection = IS_NODE || isUnhandled(state) ? UNHANDLED : HANDLED;
7768
+ if (result.error) throw result.value;
7769
+ }
7770
+ });
7771
+ };
7772
+
7773
+ var isUnhandled = function (state) {
7774
+ return state.rejection !== HANDLED && !state.parent;
7775
+ };
7776
+
7777
+ var onHandleUnhandled = function (state) {
7778
+ task.call(global, function () {
7779
+ var promise = state.facade;
7780
+ if (IS_NODE) {
7781
+ process.emit('rejectionHandled', promise);
7782
+ } else dispatchEvent(REJECTION_HANDLED, promise, state.value);
7783
+ });
7784
+ };
7785
+
7786
+ var bind = function (fn, state, unwrap) {
7787
+ return function (value) {
7788
+ fn(state, value, unwrap);
7789
+ };
7790
+ };
7791
+
7792
+ var internalReject = function (state, value, unwrap) {
7793
+ if (state.done) return;
7794
+ state.done = true;
7795
+ if (unwrap) state = unwrap;
7796
+ state.value = value;
7797
+ state.state = REJECTED;
7798
+ notify(state, true);
7799
+ };
7800
+
7801
+ var internalResolve = function (state, value, unwrap) {
7802
+ if (state.done) return;
7803
+ state.done = true;
7804
+ if (unwrap) state = unwrap;
7805
+ try {
7806
+ if (state.facade === value) throw TypeError("Promise can't be resolved itself");
7807
+ var then = isThenable(value);
7808
+ if (then) {
7809
+ microtask(function () {
7810
+ var wrapper = { done: false };
7811
+ try {
7812
+ then.call(value,
7813
+ bind(internalResolve, wrapper, state),
7814
+ bind(internalReject, wrapper, state)
7815
+ );
7816
+ } catch (error) {
7817
+ internalReject(wrapper, error, state);
7818
+ }
7819
+ });
7820
+ } else {
7821
+ state.value = value;
7822
+ state.state = FULFILLED;
7823
+ notify(state, false);
7824
+ }
7825
+ } catch (error) {
7826
+ internalReject({ done: false }, error, state);
7827
+ }
7828
+ };
7829
+
7830
+ // constructor polyfill
7831
+ if (FORCED) {
7832
+ // 25.4.3.1 Promise(executor)
7833
+ PromiseConstructor = function Promise(executor) {
7834
+ anInstance(this, PromiseConstructor, PROMISE);
7835
+ aCallable(executor);
7836
+ Internal.call(this);
7837
+ var state = getInternalState(this);
7838
+ try {
7839
+ executor(bind(internalResolve, state), bind(internalReject, state));
7840
+ } catch (error) {
7841
+ internalReject(state, error);
7842
+ }
7843
+ };
7844
+ PromiseConstructorPrototype = PromiseConstructor.prototype;
7845
+ // eslint-disable-next-line no-unused-vars -- required for `.length`
7846
+ Internal = function Promise(executor) {
7847
+ setInternalState(this, {
7848
+ type: PROMISE,
7849
+ done: false,
7850
+ notified: false,
7851
+ parent: false,
7852
+ reactions: [],
7853
+ rejection: false,
7854
+ state: PENDING,
7855
+ value: undefined
7856
+ });
7857
+ };
7858
+ Internal.prototype = redefineAll(PromiseConstructorPrototype, {
7859
+ // `Promise.prototype.then` method
7860
+ // https://tc39.es/ecma262/#sec-promise.prototype.then
7861
+ then: function then(onFulfilled, onRejected) {
7862
+ var state = getInternalPromiseState(this);
7863
+ var reaction = newPromiseCapability(speciesConstructor(this, PromiseConstructor));
7864
+ reaction.ok = isCallable(onFulfilled) ? onFulfilled : true;
7865
+ reaction.fail = isCallable(onRejected) && onRejected;
7866
+ reaction.domain = IS_NODE ? process.domain : undefined;
7867
+ state.parent = true;
7868
+ state.reactions.push(reaction);
7869
+ if (state.state != PENDING) notify(state, false);
7870
+ return reaction.promise;
7871
+ },
7872
+ // `Promise.prototype.catch` method
7873
+ // https://tc39.es/ecma262/#sec-promise.prototype.catch
7874
+ 'catch': function (onRejected) {
7875
+ return this.then(undefined, onRejected);
7876
+ }
7877
+ });
7878
+ OwnPromiseCapability = function () {
7879
+ var promise = new Internal();
7880
+ var state = getInternalState(promise);
7881
+ this.promise = promise;
7882
+ this.resolve = bind(internalResolve, state);
7883
+ this.reject = bind(internalReject, state);
7884
+ };
7885
+ newPromiseCapabilityModule.f = newPromiseCapability = function (C) {
7886
+ return C === PromiseConstructor || C === PromiseWrapper
7887
+ ? new OwnPromiseCapability(C)
7888
+ : newGenericPromiseCapability(C);
7889
+ };
7890
+
7891
+ if (!IS_PURE && isCallable(NativePromise) && NativePromisePrototype !== Object.prototype) {
7892
+ nativeThen = NativePromisePrototype.then;
7893
+
7894
+ if (!SUBCLASSING) {
7895
+ // make `Promise#then` return a polyfilled `Promise` for native promise-based APIs
7896
+ redefine(NativePromisePrototype, 'then', function then(onFulfilled, onRejected) {
7897
+ var that = this;
7898
+ return new PromiseConstructor(function (resolve, reject) {
7899
+ nativeThen.call(that, resolve, reject);
7900
+ }).then(onFulfilled, onRejected);
7901
+ // https://github.com/zloirock/core-js/issues/640
7902
+ }, { unsafe: true });
7903
+
7904
+ // makes sure that native promise-based APIs `Promise#catch` properly works with patched `Promise#then`
7905
+ redefine(NativePromisePrototype, 'catch', PromiseConstructorPrototype['catch'], { unsafe: true });
7906
+ }
7907
+
7908
+ // make `.constructor === Promise` work for native promise-based APIs
7909
+ try {
7910
+ delete NativePromisePrototype.constructor;
7911
+ } catch (error) { /* empty */ }
7912
+
7913
+ // make `instanceof Promise` work for native promise-based APIs
7914
+ if (setPrototypeOf) {
7915
+ setPrototypeOf(NativePromisePrototype, PromiseConstructorPrototype);
7916
+ }
7917
+ }
7918
+ }
7919
+
7920
+ $({ global: true, wrap: true, forced: FORCED }, {
7921
+ Promise: PromiseConstructor
7922
+ });
7923
+
7924
+ setToStringTag(PromiseConstructor, PROMISE, false, true);
7925
+ setSpecies(PROMISE);
7926
+
7927
+ PromiseWrapper = getBuiltIn(PROMISE);
7928
+
7929
+ // statics
7930
+ $({ target: PROMISE, stat: true, forced: FORCED }, {
7931
+ // `Promise.reject` method
7932
+ // https://tc39.es/ecma262/#sec-promise.reject
7933
+ reject: function reject(r) {
7934
+ var capability = newPromiseCapability(this);
7935
+ capability.reject.call(undefined, r);
7936
+ return capability.promise;
7937
+ }
7938
+ });
7939
+
7940
+ $({ target: PROMISE, stat: true, forced: IS_PURE || FORCED }, {
7941
+ // `Promise.resolve` method
7942
+ // https://tc39.es/ecma262/#sec-promise.resolve
7943
+ resolve: function resolve(x) {
7944
+ return promiseResolve(IS_PURE && this === PromiseWrapper ? PromiseConstructor : this, x);
7945
+ }
7946
+ });
7947
+
7948
+ $({ target: PROMISE, stat: true, forced: INCORRECT_ITERATION }, {
7949
+ // `Promise.all` method
7950
+ // https://tc39.es/ecma262/#sec-promise.all
7951
+ all: function all(iterable) {
7952
+ var C = this;
7953
+ var capability = newPromiseCapability(C);
7954
+ var resolve = capability.resolve;
7955
+ var reject = capability.reject;
7956
+ var result = perform(function () {
7957
+ var $promiseResolve = aCallable(C.resolve);
7958
+ var values = [];
7959
+ var counter = 0;
7960
+ var remaining = 1;
7961
+ iterate(iterable, function (promise) {
7962
+ var index = counter++;
7963
+ var alreadyCalled = false;
7964
+ values.push(undefined);
7965
+ remaining++;
7966
+ $promiseResolve.call(C, promise).then(function (value) {
7967
+ if (alreadyCalled) return;
7968
+ alreadyCalled = true;
7969
+ values[index] = value;
7970
+ --remaining || resolve(values);
7971
+ }, reject);
7972
+ });
7973
+ --remaining || resolve(values);
7974
+ });
7975
+ if (result.error) reject(result.value);
7976
+ return capability.promise;
7977
+ },
7978
+ // `Promise.race` method
7979
+ // https://tc39.es/ecma262/#sec-promise.race
7980
+ race: function race(iterable) {
7981
+ var C = this;
7982
+ var capability = newPromiseCapability(C);
7983
+ var reject = capability.reject;
7984
+ var result = perform(function () {
7985
+ var $promiseResolve = aCallable(C.resolve);
7986
+ iterate(iterable, function (promise) {
7987
+ $promiseResolve.call(C, promise).then(capability.resolve, reject);
7988
+ });
7989
+ });
7990
+ if (result.error) reject(result.value);
7991
+ return capability.promise;
7992
+ }
7993
+ });
7994
+
7995
+
7270
7996
  /***/ }),
7271
7997
 
7272
7998
  /***/ "e893":
@@ -7320,6 +8046,33 @@ module.exports = function (it) {
7320
8046
  };
7321
8047
 
7322
8048
 
8049
+ /***/ }),
8050
+
8051
+ /***/ "f069":
8052
+ /***/ (function(module, exports, __webpack_require__) {
8053
+
8054
+ "use strict";
8055
+
8056
+ var aCallable = __webpack_require__("59ed");
8057
+
8058
+ var PromiseCapability = function (C) {
8059
+ var resolve, reject;
8060
+ this.promise = new C(function ($$resolve, $$reject) {
8061
+ if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor');
8062
+ resolve = $$resolve;
8063
+ reject = $$reject;
8064
+ });
8065
+ this.resolve = aCallable(resolve);
8066
+ this.reject = aCallable(reject);
8067
+ };
8068
+
8069
+ // `NewPromiseCapability` abstract operation
8070
+ // https://tc39.es/ecma262/#sec-newpromisecapability
8071
+ module.exports.f = function (C) {
8072
+ return new PromiseCapability(C);
8073
+ };
8074
+
8075
+
7323
8076
  /***/ }),
7324
8077
 
7325
8078
  /***/ "f0af":
@@ -7661,6 +8414,7 @@ var iconPrefix = 'vxe-icon--';
7661
8414
  showHeader: true,
7662
8415
  animat: true,
7663
8416
  delayHover: 250,
8417
+ autoResize: true,
7664
8418
  // keepSource: false,
7665
8419
  // showOverflow: null,
7666
8420
  // showHeaderOverflow: null,
@@ -7668,7 +8422,6 @@ var iconPrefix = 'vxe-icon--';
7668
8422
  // resizeInterval: 500,
7669
8423
  // size: null,
7670
8424
  // zIndex: null,
7671
- // autoResize: false,
7672
8425
  // stripe: false,
7673
8426
  // border: false,
7674
8427
  // round: false,
@@ -7699,7 +8452,7 @@ var iconPrefix = 'vxe-icon--';
7699
8452
  // storage: false,
7700
8453
  // checkMethod () {}
7701
8454
  // },
7702
- // rowId: '_XID', // 行数据的唯一主键字段名
8455
+ // rowId: '_X_ID', // 行数据的唯一主键字段名
7703
8456
  sortConfig: {
7704
8457
  // remote: false,
7705
8458
  // trigger: 'default',
@@ -7717,6 +8470,7 @@ var iconPrefix = 'vxe-icon--';
7717
8470
  parentField: 'parentId',
7718
8471
  children: 'children',
7719
8472
  hasChild: 'hasChild',
8473
+ mapChildren: '_X_CHILD',
7720
8474
  indent: 20,
7721
8475
  showIcon: true
7722
8476
  },
@@ -7741,6 +8495,9 @@ var iconPrefix = 'vxe-icon--';
7741
8495
  mouseConfig: {
7742
8496
  extension: true
7743
8497
  },
8498
+ keyboardConfig: {
8499
+ isEsc: true
8500
+ },
7744
8501
  areaConfig: {
7745
8502
  selectCellByHeader: true
7746
8503
  },
@@ -8001,6 +8758,9 @@ var es_object_to_string = __webpack_require__("d3b7");
8001
8758
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.symbol.iterator.js
8002
8759
  var es_symbol_iterator = __webpack_require__("d28b");
8003
8760
 
8761
+ // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.iterator.js
8762
+ var es_array_iterator = __webpack_require__("e260");
8763
+
8004
8764
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.string.iterator.js
8005
8765
  var es_string_iterator = __webpack_require__("3ca3");
8006
8766
 
@@ -8018,6 +8778,7 @@ var es_array_from = __webpack_require__("a630");
8018
8778
 
8019
8779
 
8020
8780
 
8781
+
8021
8782
  function _iterableToArray(iter) {
8022
8783
  if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);
8023
8784
  }
@@ -8054,6 +8815,9 @@ function _nonIterableSpread() {
8054
8815
  function _toConsumableArray(arr) {
8055
8816
  return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();
8056
8817
  }
8818
+ // EXTERNAL MODULE: ./node_modules/core-js/modules/es.object.assign.js
8819
+ var es_object_assign = __webpack_require__("cca6");
8820
+
8057
8821
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.string.fixed.js
8058
8822
  var es_string_fixed = __webpack_require__("c7cd");
8059
8823
 
@@ -8068,6 +8832,7 @@ var es_array_splice = __webpack_require__("a434");
8068
8832
 
8069
8833
 
8070
8834
 
8835
+
8071
8836
  /**
8072
8837
  * 创建数据仓库
8073
8838
  */
@@ -8113,6 +8878,7 @@ var store_Store = /*#__PURE__*/function () {
8113
8878
  /* harmony default export */ var store = (store_Store);
8114
8879
  // CONCATENATED MODULE: ./packages/v-x-e-table/src/formats.js
8115
8880
 
8881
+
8116
8882
  var formats = new store();
8117
8883
 
8118
8884
  if (false) {}
@@ -8129,6 +8895,7 @@ if (false) {}
8129
8895
 
8130
8896
 
8131
8897
 
8898
+
8132
8899
  var zindexIndex = 0;
8133
8900
  var lastZindex = 1;
8134
8901
 
@@ -8292,7 +9059,7 @@ var UtilTools = {
8292
9059
  },
8293
9060
  // 行主键 key
8294
9061
  getRowkey: function getRowkey($xetable) {
8295
- return $xetable.rowId || '_XID';
9062
+ return $xetable.rowId || '_X_ID';
8296
9063
  },
8297
9064
  // 行主键 value
8298
9065
  getRowid: function getRowid($xetable, row) {
@@ -8409,6 +9176,9 @@ var es_string_match = __webpack_require__("466d");
8409
9176
  // EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.concat.js
8410
9177
  var es_array_concat = __webpack_require__("99af");
8411
9178
 
9179
+ // EXTERNAL MODULE: ./node_modules/core-js/modules/es.promise.js
9180
+ var es_promise = __webpack_require__("e6cf");
9181
+
8412
9182
  // CONCATENATED MODULE: ./packages/tools/src/dom.js
8413
9183
 
8414
9184
 
@@ -8419,6 +9189,7 @@ var es_array_concat = __webpack_require__("99af");
8419
9189
 
8420
9190
 
8421
9191
 
9192
+
8422
9193
  var dom_getRowid = utils.getRowid;
8423
9194
  var browse = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.browse();
8424
9195
  var reClsMap = {};
@@ -8660,16 +9431,9 @@ var DomTools = {
8660
9431
  }
8661
9432
  },
8662
9433
  triggerEvent: function triggerEvent(targetElem, type) {
8663
- var evnt;
8664
-
8665
- if (typeof Event === 'function') {
8666
- evnt = new Event(type);
8667
- } else {
8668
- evnt = document.createEvent('Event');
8669
- evnt.initEvent(type, true, true);
9434
+ if (targetElem) {
9435
+ targetElem.dispatchEvent(new Event(type));
8670
9436
  }
8671
-
8672
- targetElem.dispatchEvent(evnt);
8673
9437
  },
8674
9438
  calcHeight: function calcHeight($xetable, key) {
8675
9439
  var val = $xetable[key];
@@ -9005,6 +9769,7 @@ var es_number_to_fixed = __webpack_require__("b680");
9005
9769
 
9006
9770
 
9007
9771
 
9772
+
9008
9773
  var defaultCompProps = {
9009
9774
  transfer: true
9010
9775
  };
@@ -9794,11 +10559,13 @@ var renderer = {
9794
10559
  };
9795
10560
  // CONCATENATED MODULE: ./packages/v-x-e-table/src/commands.js
9796
10561
 
10562
+
9797
10563
  var commands = new store();
9798
10564
 
9799
10565
  if (false) {}
9800
10566
  // CONCATENATED MODULE: ./packages/v-x-e-table/src/menus.js
9801
10567
 
10568
+
9802
10569
  var menus = new store();
9803
10570
 
9804
10571
  if (false) {}
@@ -9958,6 +10725,9 @@ var es_string_includes = __webpack_require__("2532");
9958
10725
 
9959
10726
 
9960
10727
 
10728
+
10729
+
10730
+
9961
10731
  var lineOffsetSizes = {
9962
10732
  mini: 3,
9963
10733
  small: 2,
@@ -9974,6 +10744,11 @@ function restoreScrollLocation(_vm, scrollLeft, scrollTop) {
9974
10744
  }
9975
10745
  });
9976
10746
  }
10747
+ function toTreePathSeq(path) {
10748
+ return path.map(function (num, i) {
10749
+ return i % 2 === 0 ? Number(num) + 1 : '.';
10750
+ }).join('');
10751
+ }
9977
10752
  function removeScrollListener(scrollElem) {
9978
10753
  if (scrollElem && scrollElem._onscroll) {
9979
10754
  scrollElem.onscroll = null;
@@ -10188,6 +10963,7 @@ function clearTableAllStatus(_vm) {
10188
10963
 
10189
10964
 
10190
10965
 
10966
+
10191
10967
  var renderType = 'body'; // 滚动、拖动过程中不需要触发
10192
10968
 
10193
10969
  function isOperateMouse($xetable) {
@@ -10224,7 +11000,7 @@ function renderLine(h, _vm, $xetable, rowLevel, items, params) {
10224
11000
  */
10225
11001
 
10226
11002
 
10227
- function renderColumn(h, _vm, $xetable, $seq, seq, rowid, fixedType, rowLevel, row, rowIndex, $rowIndex, _rowIndex, column, $columnIndex, columns, items) {
11003
+ function renderColumn(h, _vm, $xetable, seq, rowid, fixedType, rowLevel, row, rowIndex, $rowIndex, _rowIndex, column, $columnIndex, columns, items) {
10228
11004
  var _ref2;
10229
11005
 
10230
11006
  var tableListeners = $xetable.$listeners,
@@ -10294,7 +11070,6 @@ function renderColumn(h, _vm, $xetable, $seq, seq, rowid, fixedType, rowLevel, r
10294
11070
  var triggerDblclick = editRender && editConfig && editOpts.trigger === 'dblclick';
10295
11071
  var params = {
10296
11072
  $table: $xetable,
10297
- $seq: $seq,
10298
11073
  seq: seq,
10299
11074
  rowid: rowid,
10300
11075
  row: row,
@@ -10485,7 +11260,7 @@ function renderColumn(h, _vm, $xetable, $seq, seq, rowid, fixedType, rowLevel, r
10485
11260
  }, tdVNs);
10486
11261
  }
10487
11262
 
10488
- function renderRows(h, _vm, $xetable, $seq, fixedType, tableData, tableColumn) {
11263
+ function renderRows(h, _vm, $xetable, fixedType, tableData, tableColumn) {
10489
11264
  var stripe = $xetable.stripe,
10490
11265
  rowKey = $xetable.rowKey,
10491
11266
  highlightHoverRow = $xetable.highlightHoverRow,
@@ -10498,24 +11273,18 @@ function renderRows(h, _vm, $xetable, $seq, fixedType, tableData, tableColumn) {
10498
11273
  editOpts = $xetable.editOpts,
10499
11274
  treeExpandeds = $xetable.treeExpandeds,
10500
11275
  scrollYLoad = $xetable.scrollYLoad,
10501
- scrollYStore = $xetable.scrollYStore,
10502
11276
  editStore = $xetable.editStore,
10503
11277
  rowExpandeds = $xetable.rowExpandeds,
10504
11278
  radioOpts = $xetable.radioOpts,
10505
11279
  checkboxOpts = $xetable.checkboxOpts,
10506
11280
  expandColumn = $xetable.expandColumn,
10507
11281
  hasFixedColumn = $xetable.hasFixedColumn,
10508
- fullAllDataRowIdData = $xetable.fullAllDataRowIdData,
11282
+ fullDataRowIdData = $xetable.fullDataRowIdData,
10509
11283
  rowOpts = $xetable.rowOpts;
10510
11284
  var rows = [];
10511
11285
  tableData.forEach(function (row, $rowIndex) {
10512
11286
  var trOn = {};
10513
11287
  var rowIndex = $rowIndex;
10514
- var seq = rowIndex + 1;
10515
-
10516
- if (scrollYLoad) {
10517
- seq += scrollYStore.startIndex;
10518
- }
10519
11288
 
10520
11289
  var _rowIndex = $xetable.getVTRowIndex(row); // 确保任何情况下 rowIndex 都精准指向真实 data 索引
10521
11290
 
@@ -10544,11 +11313,11 @@ function renderRows(h, _vm, $xetable, $seq, fixedType, tableData, tableColumn) {
10544
11313
  }
10545
11314
 
10546
11315
  var rowid = UtilTools.getRowid($xetable, row);
10547
- var rest = fullAllDataRowIdData[rowid];
11316
+ var rest = fullDataRowIdData[rowid];
10548
11317
  var rowLevel = rest ? rest.level : 0;
11318
+ var seq = rest ? rest.seq : -1;
10549
11319
  var params = {
10550
11320
  $table: $xetable,
10551
- $seq: $seq,
10552
11321
  seq: seq,
10553
11322
  rowid: rowid,
10554
11323
  fixed: fixedType,
@@ -10579,7 +11348,7 @@ function renderRows(h, _vm, $xetable, $seq, fixedType, tableData, tableColumn) {
10579
11348
  key: rowKey || treeConfig ? rowid : $rowIndex,
10580
11349
  on: trOn
10581
11350
  }, tableColumn.map(function (column, $columnIndex) {
10582
- return renderColumn(h, _vm, $xetable, $seq, seq, rowid, fixedType, rowLevel, row, rowIndex, $rowIndex, _rowIndex, column, $columnIndex, tableColumn, tableData);
11351
+ return renderColumn(h, _vm, $xetable, seq, rowid, fixedType, rowLevel, row, rowIndex, $rowIndex, _rowIndex, column, $columnIndex, tableColumn, tableData);
10583
11352
  }))); // 如果行被展开了
10584
11353
 
10585
11354
  if (expandColumn && rowExpandeds.length && rowExpandeds.indexOf(row) > -1) {
@@ -10595,7 +11364,6 @@ function renderRows(h, _vm, $xetable, $seq, fixedType, tableData, tableColumn) {
10595
11364
  var hasEllipsis = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isUndefined(showOverflow) || external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isNull(showOverflow) ? allColumnOverflow : showOverflow;
10596
11365
  var expandParams = {
10597
11366
  $table: $xetable,
10598
- $seq: $seq,
10599
11367
  seq: seq,
10600
11368
  column: expandColumn,
10601
11369
  fixed: fixedType,
@@ -10625,11 +11393,11 @@ function renderRows(h, _vm, $xetable, $seq, fixedType, tableData, tableColumn) {
10625
11393
  } // 如果是树形表格
10626
11394
 
10627
11395
 
10628
- if (treeConfig && !scrollYLoad && treeExpandeds.length) {
11396
+ if (treeConfig && !scrollYLoad && !treeOpts.transform && treeExpandeds.length) {
10629
11397
  var rowChildren = row[treeOpts.children];
10630
11398
 
10631
11399
  if (rowChildren && rowChildren.length && treeExpandeds.indexOf(row) > -1) {
10632
- rows.push.apply(rows, _toConsumableArray(renderRows(h, _vm, $xetable, $seq ? "".concat($seq, ".").concat(seq) : "".concat(seq), fixedType, rowChildren, tableColumn)));
11400
+ rows.push.apply(rows, _toConsumableArray(renderRows(h, _vm, $xetable, fixedType, rowChildren, tableColumn)));
10633
11401
  }
10634
11402
  }
10635
11403
  });
@@ -10804,7 +11572,7 @@ function syncBodyScroll(scrollTop, elem1, elem2) {
10804
11572
  */
10805
11573
  h('tbody', {
10806
11574
  ref: 'tbody'
10807
- }, renderRows(h, this, $xetable, '', fixedType, tableData, tableColumn))]), h('div', {
11575
+ }, renderRows(h, this, $xetable, fixedType, tableData, tableColumn))]), h('div', {
10808
11576
  class: 'vxe-table--checkbox-range'
10809
11577
  }), mouseConfig && mouseOpts.area ? h('div', {
10810
11578
  class: 'vxe-table--cell-area'
@@ -11132,6 +11900,7 @@ var es_array_sort = __webpack_require__("4e82");
11132
11900
 
11133
11901
 
11134
11902
 
11903
+
11135
11904
  function renderHelpIcon(h, params) {
11136
11905
  var $table = params.$table,
11137
11906
  column = params.column;
@@ -11251,8 +12020,8 @@ var Cell = {
11251
12020
 
11252
12021
  switch (type) {
11253
12022
  case 'seq':
11254
- renMaps.renderHeader = this.renderIndexHeader;
11255
- renMaps.renderCell = treeNode ? this.renderTreeIndexCell : this.renderIndexCell;
12023
+ renMaps.renderHeader = this.renderSeqHeader;
12024
+ renMaps.renderCell = treeNode ? this.renderTreeIndexCell : this.renderSeqCell;
11256
12025
  break;
11257
12026
 
11258
12027
  case 'radio':
@@ -11261,8 +12030,8 @@ var Cell = {
11261
12030
  break;
11262
12031
 
11263
12032
  case 'checkbox':
11264
- renMaps.renderHeader = this.renderSelectionHeader;
11265
- renMaps.renderCell = checkboxOpts.checkField ? treeNode ? this.renderTreeSelectionCellByProp : this.renderSelectionCellByProp : treeNode ? this.renderTreeSelectionCell : this.renderSelectionCell;
12033
+ renMaps.renderHeader = this.renderCheckboxHeader;
12034
+ renMaps.renderCell = checkboxOpts.checkField ? treeNode ? this.renderTreeSelectionCellByProp : this.renderCheckboxCellByProp : treeNode ? this.renderTreeSelectionCell : this.renderCheckboxCell;
11266
12035
  break;
11267
12036
 
11268
12037
  case 'expand':
@@ -11437,30 +12206,29 @@ var Cell = {
11437
12206
  /**
11438
12207
  * 索引
11439
12208
  */
11440
- renderIndexHeader: function renderIndexHeader(h, params) {
12209
+ renderSeqHeader: function renderSeqHeader(h, params) {
11441
12210
  var $table = params.$table,
11442
12211
  column = params.column;
11443
12212
  var slots = column.slots;
11444
12213
  return renderTitleContent(h, params, slots && slots.header ? $table.callSlot(slots.header, params, h) : UtilTools.formatText(column.getTitle(), 1));
11445
12214
  },
11446
- renderIndexCell: function renderIndexCell(h, params) {
12215
+ renderSeqCell: function renderSeqCell(h, params) {
11447
12216
  var $table = params.$table,
11448
12217
  column = params.column;
11449
- var seqOpts = $table.seqOpts;
12218
+ var treeConfig = $table.treeConfig,
12219
+ seqOpts = $table.seqOpts;
11450
12220
  var slots = column.slots;
11451
12221
 
11452
12222
  if (slots && slots.default) {
11453
12223
  return $table.callSlot(slots.default, params, h);
11454
12224
  }
11455
12225
 
11456
- var $seq = params.$seq,
11457
- seq = params.seq,
11458
- level = params.level;
12226
+ var seq = params.seq;
11459
12227
  var seqMethod = seqOpts.seqMethod;
11460
- return [UtilTools.formatText(seqMethod ? seqMethod(params) : level ? "".concat($seq, ".").concat(seq) : seqOpts.startIndex + seq, 1)];
12228
+ return [UtilTools.formatText(seqMethod ? seqMethod(params) : treeConfig ? seq : (seqOpts.startIndex || 0) + seq, 1)];
11461
12229
  },
11462
12230
  renderTreeIndexCell: function renderTreeIndexCell(h, params) {
11463
- return Cell.renderTreeIcon(h, params, Cell.renderIndexCell(h, params));
12231
+ return Cell.renderTreeIcon(h, params, Cell.renderSeqCell(h, params));
11464
12232
  },
11465
12233
 
11466
12234
  /**
@@ -11553,7 +12321,7 @@ var Cell = {
11553
12321
  /**
11554
12322
  * 多选
11555
12323
  */
11556
- renderSelectionHeader: function renderSelectionHeader(h, params) {
12324
+ renderCheckboxHeader: function renderCheckboxHeader(h, params) {
11557
12325
  var $table = params.$table,
11558
12326
  column = params.column,
11559
12327
  isHidden = params.isHidden;
@@ -11614,7 +12382,7 @@ var Cell = {
11614
12382
  class: 'vxe-checkbox--label'
11615
12383
  }, titleSlot ? $table.callSlot(titleSlot, checkboxParams, h) : headerTitle)] : []))]);
11616
12384
  },
11617
- renderSelectionCell: function renderSelectionCell(h, params) {
12385
+ renderCheckboxCell: function renderCheckboxCell(h, params) {
11618
12386
  var $table = params.$table,
11619
12387
  row = params.row,
11620
12388
  column = params.column,
@@ -11696,9 +12464,9 @@ var Cell = {
11696
12464
  }, checkVNs)];
11697
12465
  },
11698
12466
  renderTreeSelectionCell: function renderTreeSelectionCell(h, params) {
11699
- return Cell.renderTreeIcon(h, params, Cell.renderSelectionCell(h, params));
12467
+ return Cell.renderTreeIcon(h, params, Cell.renderCheckboxCell(h, params));
11700
12468
  },
11701
- renderSelectionCellByProp: function renderSelectionCellByProp(h, params) {
12469
+ renderCheckboxCellByProp: function renderCheckboxCellByProp(h, params) {
11702
12470
  var $table = params.$table,
11703
12471
  row = params.row,
11704
12472
  column = params.column,
@@ -11782,7 +12550,7 @@ var Cell = {
11782
12550
  }, checkVNs)];
11783
12551
  },
11784
12552
  renderTreeSelectionCellByProp: function renderTreeSelectionCellByProp(h, params) {
11785
- return Cell.renderTreeIcon(h, params, Cell.renderSelectionCellByProp(h, params));
12553
+ return Cell.renderTreeIcon(h, params, Cell.renderCheckboxCellByProp(h, params));
11786
12554
  },
11787
12555
 
11788
12556
  /**
@@ -12072,6 +12840,10 @@ var Cell = {
12072
12840
 
12073
12841
 
12074
12842
 
12843
+
12844
+
12845
+
12846
+
12075
12847
 
12076
12848
 
12077
12849
 
@@ -12467,10 +13239,45 @@ var Methods = {
12467
13239
  return this.handleTableData(true).then(this.updateFooter).then(this.recalculate);
12468
13240
  },
12469
13241
  handleTableData: function handleTableData(force) {
12470
- var scrollYLoad = this.scrollYLoad,
12471
- scrollYStore = this.scrollYStore;
12472
- var fullData = force ? this.updateAfterFullData() : this.afterFullData;
12473
- this.tableData = scrollYLoad ? fullData.slice(scrollYStore.startIndex, scrollYStore.endIndex) : fullData.slice(0);
13242
+ var _this2 = this;
13243
+
13244
+ var treeConfig = this.treeConfig,
13245
+ scrollYLoad = this.scrollYLoad,
13246
+ scrollYStore = this.scrollYStore,
13247
+ fullDataRowIdData = this.fullDataRowIdData,
13248
+ treeExpandeds = this.treeExpandeds,
13249
+ treeOpts = this.treeOpts;
13250
+ var fullList = []; // 是否进行数据处理
13251
+
13252
+ if (force) {
13253
+ this.updateAfterFullData();
13254
+ } // 如果为虚拟树,将树结构拍平
13255
+
13256
+
13257
+ if (treeConfig && treeOpts.transform) {
13258
+ var expandMaps = new Map();
13259
+ external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.eachTree(this.afterTreeFullData, function (row, index, items, path, parent) {
13260
+ if (!parent || expandMaps.has(parent) && treeExpandeds.indexOf(parent) > -1) {
13261
+ expandMaps.set(row, 1);
13262
+ fullList.push(row);
13263
+ }
13264
+ }, {
13265
+ children: treeOpts.mapChildren
13266
+ });
13267
+ } else {
13268
+ fullList = this.afterFullData;
13269
+ }
13270
+
13271
+ var tableData = scrollYLoad ? fullList.slice(scrollYStore.startIndex, scrollYStore.endIndex) : fullList.slice(0);
13272
+ tableData.forEach(function (row, $index) {
13273
+ var rowid = methods_getRowid(_this2, row);
13274
+ var rest = fullDataRowIdData[rowid];
13275
+
13276
+ if (rest) {
13277
+ rest.$index = $index;
13278
+ }
13279
+ });
13280
+ this.tableData = tableData;
12474
13281
  return this.$nextTick();
12475
13282
  },
12476
13283
  updateScrollYStatus: function updateScrollYStatus(fullData) {
@@ -12488,7 +13295,7 @@ var Methods = {
12488
13295
  * @param {Array} datas 数据
12489
13296
  */
12490
13297
  loadTableData: function loadTableData(datas) {
12491
- var _this2 = this;
13298
+ var _this3 = this;
12492
13299
 
12493
13300
  var keepSource = this.keepSource,
12494
13301
  treeConfig = this.treeConfig,
@@ -12510,7 +13317,8 @@ var Methods = {
12510
13317
  treeData = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.toArrayTree(fullData, {
12511
13318
  key: treeOpts.rowField,
12512
13319
  parentKey: treeOpts.parentField,
12513
- children: treeOpts.children
13320
+ children: treeOpts.children,
13321
+ mapChildren: treeOpts.mapChildren
12514
13322
  });
12515
13323
  fullData = treeData.slice(0);
12516
13324
  } else {
@@ -12528,7 +13336,7 @@ var Methods = {
12528
13336
  this.scrollYLoad = sYLoad; // 全量数据
12529
13337
 
12530
13338
  this.tableFullData = fullData;
12531
- this.treeFullData = treeData; // 缓存数据
13339
+ this.tableFullTreeData = treeData; // 缓存数据
12532
13340
 
12533
13341
  this.cacheRowMap(true); // 原始数据
12534
13342
 
@@ -12550,31 +13358,31 @@ var Methods = {
12550
13358
  this.handleTableData(true);
12551
13359
  this.updateFooter();
12552
13360
  return this.$nextTick().then(function () {
12553
- _this2.updateHeight();
13361
+ _this3.updateHeight();
12554
13362
 
12555
- _this2.updateStyle();
13363
+ _this3.updateStyle();
12556
13364
  }).then(function () {
12557
- _this2.computeScrollLoad();
13365
+ _this3.computeScrollLoad();
12558
13366
  }).then(function () {
12559
13367
  // 是否启用了虚拟滚动
12560
13368
  if (sYLoad) {
12561
13369
  scrollYStore.endIndex = scrollYStore.visibleSize;
12562
13370
  }
12563
13371
 
12564
- _this2.handleReserveStatus();
13372
+ _this3.handleReserveStatus();
12565
13373
 
12566
- _this2.checkSelectionStatus();
13374
+ _this3.checkSelectionStatus();
12567
13375
 
12568
13376
  return new Promise(function (resolve) {
12569
- _this2.$nextTick().then(function () {
12570
- return _this2.recalculate();
13377
+ _this3.$nextTick().then(function () {
13378
+ return _this3.recalculate();
12571
13379
  }).then(function () {
12572
13380
  // 是否变更虚拟滚动
12573
13381
  if (oldScrollYLoad === sYLoad) {
12574
- restoreScrollLocation(_this2, lastScrollLeft, lastScrollTop).then(resolve);
13382
+ restoreScrollLocation(_this3, lastScrollLeft, lastScrollTop).then(resolve);
12575
13383
  } else {
12576
13384
  setTimeout(function () {
12577
- return restoreScrollLocation(_this2, lastScrollLeft, lastScrollTop).then(resolve);
13385
+ return restoreScrollLocation(_this3, lastScrollLeft, lastScrollTop).then(resolve);
12578
13386
  });
12579
13387
  }
12580
13388
  });
@@ -12587,23 +13395,23 @@ var Methods = {
12587
13395
  * @param {Array} datas 数据
12588
13396
  */
12589
13397
  loadData: function loadData(datas) {
12590
- var _this3 = this;
13398
+ var _this4 = this;
12591
13399
 
12592
13400
  var inited = this.inited,
12593
13401
  initStatus = this.initStatus;
12594
13402
  return this.loadTableData(datas).then(function () {
12595
- _this3.inited = true;
12596
- _this3.initStatus = true;
13403
+ _this4.inited = true;
13404
+ _this4.initStatus = true;
12597
13405
 
12598
13406
  if (!initStatus) {
12599
- _this3.handleLoadDefaults();
13407
+ _this4.handleLoadDefaults();
12600
13408
  }
12601
13409
 
12602
13410
  if (!inited) {
12603
- _this3.handleInitDefaults();
13411
+ _this4.handleInitDefaults();
12604
13412
  }
12605
13413
 
12606
- return _this3.recalculate();
13414
+ return _this4.recalculate();
12607
13415
  });
12608
13416
  },
12609
13417
 
@@ -12612,21 +13420,21 @@ var Methods = {
12612
13420
  * @param {Array} datas 数据
12613
13421
  */
12614
13422
  reloadData: function reloadData(datas) {
12615
- var _this4 = this;
13423
+ var _this5 = this;
12616
13424
 
12617
13425
  var inited = this.inited;
12618
13426
  return this.clearAll().then(function () {
12619
- _this4.inited = true;
12620
- _this4.initStatus = true;
12621
- return _this4.loadTableData(datas);
13427
+ _this5.inited = true;
13428
+ _this5.initStatus = true;
13429
+ return _this5.loadTableData(datas);
12622
13430
  }).then(function () {
12623
- _this4.handleLoadDefaults();
13431
+ _this5.handleLoadDefaults();
12624
13432
 
12625
13433
  if (!inited) {
12626
- _this4.handleInitDefaults();
13434
+ _this5.handleInitDefaults();
12627
13435
  }
12628
13436
 
12629
- return _this4.recalculate();
13437
+ return _this5.recalculate();
12630
13438
  });
12631
13439
  },
12632
13440
 
@@ -12671,10 +13479,10 @@ var Methods = {
12671
13479
  * @param {ColumnInfo} columns 列配置
12672
13480
  */
12673
13481
  loadColumn: function loadColumn(columns) {
12674
- var _this5 = this;
13482
+ var _this6 = this;
12675
13483
 
12676
13484
  var collectColumn = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.mapTree(columns, function (column) {
12677
- return src_cell.createColumn(_this5, column);
13485
+ return src_cell.createColumn(_this6, column);
12678
13486
  }, {
12679
13487
  children: 'children'
12680
13488
  });
@@ -12687,14 +13495,14 @@ var Methods = {
12687
13495
  * @param {ColumnInfo} columns 列配置
12688
13496
  */
12689
13497
  reloadColumn: function reloadColumn(columns) {
12690
- var _this6 = this;
13498
+ var _this7 = this;
12691
13499
 
12692
13500
  return this.clearAll().then(function () {
12693
- return _this6.loadColumn(columns);
13501
+ return _this7.loadColumn(columns);
12694
13502
  });
12695
13503
  },
12696
13504
  handleColumn: function handleColumn(collectColumn) {
12697
- var _this7 = this;
13505
+ var _this8 = this;
12698
13506
 
12699
13507
  this.collectColumn = collectColumn;
12700
13508
  var tableFullColumn = methods_getColumnList(collectColumn);
@@ -12702,8 +13510,8 @@ var Methods = {
12702
13510
  this.cacheColumnMap();
12703
13511
  this.restoreCustomStorage();
12704
13512
  this.parseColumns().then(function () {
12705
- if (_this7.scrollXLoad) {
12706
- _this7.loadScrollXData(true);
13513
+ if (_this8.scrollXLoad) {
13514
+ _this8.loadScrollXData(true);
12707
13515
  }
12708
13516
  });
12709
13517
  this.clearMergeCells();
@@ -12713,14 +13521,14 @@ var Methods = {
12713
13521
  if (false) {}
12714
13522
 
12715
13523
  return this.$nextTick().then(function () {
12716
- if (_this7.$toolbar) {
12717
- _this7.$toolbar.syncUpdate({
13524
+ if (_this8.$toolbar) {
13525
+ _this8.$toolbar.syncUpdate({
12718
13526
  collectColumn: collectColumn,
12719
- $table: _this7
13527
+ $table: _this8
12720
13528
  });
12721
13529
  }
12722
13530
 
12723
- return _this7.recalculate();
13531
+ return _this8.recalculate();
12724
13532
  });
12725
13533
  },
12726
13534
 
@@ -12729,20 +13537,23 @@ var Methods = {
12729
13537
  * 牺牲数据组装的耗时,用来换取使用过程中的流畅
12730
13538
  */
12731
13539
  cacheRowMap: function cacheRowMap(source) {
12732
- var _this8 = this;
13540
+ var _this9 = this;
12733
13541
 
12734
13542
  var treeConfig = this.treeConfig,
12735
13543
  treeOpts = this.treeOpts,
12736
13544
  tableFullData = this.tableFullData,
12737
13545
  fullDataRowMap = this.fullDataRowMap,
12738
- fullAllDataRowMap = this.fullAllDataRowMap;
13546
+ fullAllDataRowMap = this.fullAllDataRowMap,
13547
+ tableFullTreeData = this.tableFullTreeData;
12739
13548
  var fullDataRowIdData = this.fullDataRowIdData,
12740
13549
  fullAllDataRowIdData = this.fullAllDataRowIdData;
12741
13550
  var rowkey = getRowkey(this);
12742
13551
  var isLazy = treeConfig && treeOpts.lazy;
12743
13552
 
12744
13553
  var handleCache = function handleCache(row, index, items, path, parent, nodes) {
12745
- var rowid = methods_getRowid(_this8, row);
13554
+ var rowid = methods_getRowid(_this9, row);
13555
+ var seq = treeConfig && path ? toTreePathSeq(path) : index + 1;
13556
+ var level = nodes ? nodes.length - 1 : 0;
12746
13557
 
12747
13558
  if (eqEmptyValue(rowid)) {
12748
13559
  rowid = getRowUniqueId();
@@ -12756,10 +13567,13 @@ var Methods = {
12756
13567
  var rest = {
12757
13568
  row: row,
12758
13569
  rowid: rowid,
13570
+ seq: seq,
12759
13571
  index: treeConfig && parent ? -1 : index,
13572
+ _index: -1,
13573
+ $index: -1,
12760
13574
  items: items,
12761
13575
  parent: parent,
12762
- level: nodes ? nodes.length - 1 : 0
13576
+ level: level
12763
13577
  };
12764
13578
 
12765
13579
  if (source) {
@@ -12780,13 +13594,13 @@ var Methods = {
12780
13594
  fullAllDataRowMap.clear();
12781
13595
 
12782
13596
  if (treeConfig) {
12783
- external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.eachTree(tableFullData, handleCache, treeOpts);
13597
+ external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.eachTree(tableFullTreeData, handleCache, treeOpts);
12784
13598
  } else {
12785
13599
  tableFullData.forEach(handleCache);
12786
13600
  }
12787
13601
  },
12788
13602
  loadTreeChildren: function loadTreeChildren(row, childRecords) {
12789
- var _this9 = this;
13603
+ var _this10 = this;
12790
13604
 
12791
13605
  var keepSource = this.keepSource,
12792
13606
  tableSourceData = this.tableSourceData,
@@ -12800,9 +13614,9 @@ var Methods = {
12800
13614
  var parentLevel = rest ? rest.level : 0;
12801
13615
  return this.createData(childRecords).then(function (rows) {
12802
13616
  if (keepSource) {
12803
- var rowid = methods_getRowid(_this9, row);
13617
+ var rowid = methods_getRowid(_this10, row);
12804
13618
  var matchObj = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.findTree(tableSourceData, function (item) {
12805
- return rowid === methods_getRowid(_this9, item);
13619
+ return rowid === methods_getRowid(_this10, item);
12806
13620
  }, treeOpts);
12807
13621
 
12808
13622
  if (matchObj) {
@@ -12811,11 +13625,14 @@ var Methods = {
12811
13625
  }
12812
13626
 
12813
13627
  external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.eachTree(rows, function (childRow, index, items, path, parent, nodes) {
12814
- var rowid = methods_getRowid(_this9, childRow);
13628
+ var rowid = methods_getRowid(_this10, childRow);
12815
13629
  var rest = {
12816
13630
  row: childRow,
12817
13631
  rowid: rowid,
13632
+ seq: -1,
12818
13633
  index: -1,
13634
+ _index: -1,
13635
+ $index: -1,
12819
13636
  items: items,
12820
13637
  parent: parent,
12821
13638
  level: parentLevel + nodes.length
@@ -12835,7 +13652,7 @@ var Methods = {
12835
13652
  * 牺牲数据组装的耗时,用来换取使用过程中的流畅
12836
13653
  */
12837
13654
  cacheColumnMap: function cacheColumnMap() {
12838
- var _this10 = this;
13655
+ var _this11 = this;
12839
13656
 
12840
13657
  var tableFullColumn = this.tableFullColumn,
12841
13658
  collectColumn = this.collectColumn,
@@ -12972,6 +13789,25 @@ var Methods = {
12972
13789
  return null;
12973
13790
  },
12974
13791
 
13792
+ /**
13793
+ * 根据 row 获取序号
13794
+ * @param {Row} row 行对象
13795
+ */
13796
+ getRowSeq: function getRowSeq(row) {
13797
+ var fullDataRowIdData = this.fullDataRowIdData;
13798
+
13799
+ if (row) {
13800
+ var rowid = methods_getRowid(this, row);
13801
+ var rest = fullDataRowIdData[rowid];
13802
+
13803
+ if (rest) {
13804
+ return rest.seq;
13805
+ }
13806
+ }
13807
+
13808
+ return -1;
13809
+ },
13810
+
12975
13811
  /**
12976
13812
  * 根据 row 获取相对于 data 中的索引
12977
13813
  * @param {Row} row 行对象
@@ -13110,13 +13946,13 @@ var Methods = {
13110
13946
  * @param {Array} records 新数据
13111
13947
  */
13112
13948
  createData: function createData(records) {
13113
- var _this11 = this;
13949
+ var _this12 = this;
13114
13950
 
13115
13951
  var treeConfig = this.treeConfig,
13116
13952
  treeOpts = this.treeOpts;
13117
13953
 
13118
13954
  var handleRrecord = function handleRrecord(record) {
13119
- return _this11.defineField(Object.assign({}, record));
13955
+ return _this12.defineField(Object.assign({}, record));
13120
13956
  };
13121
13957
 
13122
13958
  var rows = treeConfig ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.mapTree(records, handleRrecord, treeOpts) : records.map(handleRrecord);
@@ -13131,7 +13967,7 @@ var Methods = {
13131
13967
  * @param {Array/Object} records 新数据
13132
13968
  */
13133
13969
  createRow: function createRow(records) {
13134
- var _this12 = this;
13970
+ var _this13 = this;
13135
13971
 
13136
13972
  var isArr = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isArray(records);
13137
13973
 
@@ -13140,7 +13976,7 @@ var Methods = {
13140
13976
  }
13141
13977
 
13142
13978
  return this.$nextTick().then(function () {
13143
- return _this12.createData(records).then(function (rows) {
13979
+ return _this13.createData(records).then(function (rows) {
13144
13980
  return isArr ? rows : rows[0];
13145
13981
  });
13146
13982
  });
@@ -13154,7 +13990,7 @@ var Methods = {
13154
13990
  * 如果还额外传了 field 则还原指定的单元格数据
13155
13991
  */
13156
13992
  revertData: function revertData(rows, field) {
13157
- var _this13 = this;
13993
+ var _this14 = this;
13158
13994
 
13159
13995
  var keepSource = this.keepSource,
13160
13996
  tableSourceData = this.tableSourceData,
@@ -13178,8 +14014,8 @@ var Methods = {
13178
14014
 
13179
14015
  if (targetRows.length) {
13180
14016
  targetRows.forEach(function (row) {
13181
- if (!_this13.isInsertByRow(row)) {
13182
- var rowIndex = _this13.getRowIndex(row);
14017
+ if (!_this14.isInsertByRow(row)) {
14018
+ var rowIndex = _this14.getRowIndex(row);
13183
14019
 
13184
14020
  if (treeConfig && rowIndex === -1) {
13185
14021
  throw new Error(UtilTools.getLog('vxe.error.noTree', ['revertData']));
@@ -13263,7 +14099,7 @@ var Methods = {
13263
14099
  * @param {String} field 字段名
13264
14100
  */
13265
14101
  isUpdateByRow: function isUpdateByRow(row, field) {
13266
- var _this14 = this;
14102
+ var _this15 = this;
13267
14103
 
13268
14104
  var visibleColumn = this.visibleColumn,
13269
14105
  keepSource = this.keepSource,
@@ -13283,7 +14119,7 @@ var Methods = {
13283
14119
  if (treeConfig) {
13284
14120
  var children = treeOpts.children;
13285
14121
  var matchObj = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.findTree(tableSourceData, function (item) {
13286
- return rowid === methods_getRowid(_this14, item);
14122
+ return rowid === methods_getRowid(_this15, item);
13287
14123
  }, treeOpts);
13288
14124
  row = Object.assign({}, row, _defineProperty({}, children, null));
13289
14125
 
@@ -13406,18 +14242,23 @@ var Methods = {
13406
14242
  * 如果存在筛选条件,继续处理
13407
14243
  */
13408
14244
  updateAfterFullData: function updateAfterFullData() {
13409
- var _this15 = this;
14245
+ var _this16 = this;
13410
14246
 
13411
14247
  var tableFullColumn = this.tableFullColumn,
13412
14248
  tableFullData = this.tableFullData,
13413
14249
  filterOpts = this.filterOpts,
13414
- sortOpts = this.sortOpts;
14250
+ sortOpts = this.sortOpts,
14251
+ treeConfig = this.treeConfig,
14252
+ treeOpts = this.treeOpts,
14253
+ tableFullTreeData = this.tableFullTreeData;
13415
14254
  var allRemoteFilter = filterOpts.remote,
13416
14255
  allFilterMethod = filterOpts.filterMethod;
13417
14256
  var allRemoteSort = sortOpts.remote,
13418
14257
  allSortMethod = sortOpts.sortMethod,
13419
14258
  sortMultiple = sortOpts.multiple;
13420
- var tableData = tableFullData.slice(0);
14259
+ var transform = treeOpts.transform;
14260
+ var tableData = [];
14261
+ var tableTree = [];
13421
14262
  var filterColumns = [];
13422
14263
  var orderColumns = [];
13423
14264
  tableFullColumn.forEach(function (column) {
@@ -13454,7 +14295,7 @@ var Methods = {
13454
14295
  });
13455
14296
 
13456
14297
  if (filterColumns.length) {
13457
- tableData = tableData.filter(function (row) {
14298
+ var handleFilter = function handleFilter(row) {
13458
14299
  return filterColumns.every(function (_ref) {
13459
14300
  var column = _ref.column,
13460
14301
  valueList = _ref.valueList,
@@ -13476,7 +14317,7 @@ var Methods = {
13476
14317
  cellValue: cellValue,
13477
14318
  row: row,
13478
14319
  column: column,
13479
- $table: _this15
14320
+ $table: _this16
13480
14321
  });
13481
14322
  });
13482
14323
  } else if (compFilterMethod) {
@@ -13487,7 +14328,7 @@ var Methods = {
13487
14328
  cellValue: cellValue,
13488
14329
  row: row,
13489
14330
  column: column,
13490
- $table: _this15
14331
+ $table: _this16
13491
14332
  });
13492
14333
  });
13493
14334
  } else if (allFilterMethod) {
@@ -13506,7 +14347,7 @@ var Methods = {
13506
14347
  cellValue: cellValue,
13507
14348
  row: row,
13508
14349
  column: column,
13509
- $table: _this15
14350
+ $table: _this16
13510
14351
  });
13511
14352
  });
13512
14353
  }
@@ -13516,7 +14357,19 @@ var Methods = {
13516
14357
 
13517
14358
  return true;
13518
14359
  });
13519
- });
14360
+ };
14361
+
14362
+ if (treeConfig && transform) {
14363
+ tableTree = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.searchTree(tableFullTreeData, handleFilter, _objectSpread2(_objectSpread2({}, treeOpts), {}, {
14364
+ original: true
14365
+ }));
14366
+ } else {
14367
+ tableData = treeConfig ? tableFullTreeData.filter(handleFilter) : tableFullData.filter(handleFilter);
14368
+ tableTree = tableData;
14369
+ }
14370
+ } else {
14371
+ tableData = treeConfig ? tableFullTreeData.slice(0) : tableFullData.slice(0);
14372
+ tableTree = tableData;
13520
14373
  }
13521
14374
 
13522
14375
  var firstOrderColumn = orderColumns[0];
@@ -13538,7 +14391,7 @@ var Methods = {
13538
14391
  tableData = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.orderBy(tableData, orderColumns.map(function (_ref2) {
13539
14392
  var column = _ref2.column,
13540
14393
  order = _ref2.order;
13541
- return [getOrderField(_this15, column), order];
14394
+ return [getOrderField(_this16, column), order];
13542
14395
  }));
13543
14396
  } else {
13544
14397
  // 兼容 v2,在 v4 中废弃, sortBy 不能为数组
@@ -13553,14 +14406,113 @@ var Methods = {
13553
14406
  tableData = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.orderBy(tableData, sortByConfs || [firstOrderColumn].map(function (_ref3) {
13554
14407
  var column = _ref3.column,
13555
14408
  order = _ref3.order;
13556
- return [getOrderField(_this15, column), order];
14409
+ return [getOrderField(_this16, column), order];
13557
14410
  }));
13558
14411
  }
13559
14412
  }
14413
+
14414
+ tableTree = tableData;
13560
14415
  }
13561
14416
 
13562
14417
  this.afterFullData = tableData;
13563
- return tableData;
14418
+ this.afterTreeFullData = tableTree;
14419
+ this.updateAfterDataIndex();
14420
+ },
14421
+
14422
+ /**
14423
+ * 预编译
14424
+ * 对渲染中的数据提前解析序号及索引。牺牲提前编译耗时换取渲染中额外损耗,使运行时更加流畅
14425
+ */
14426
+ updateAfterDataIndex: function updateAfterDataIndex() {
14427
+ var _this17 = this;
14428
+
14429
+ var treeConfig = this.treeConfig,
14430
+ afterFullData = this.afterFullData,
14431
+ fullDataRowIdData = this.fullDataRowIdData,
14432
+ fullAllDataRowIdData = this.fullAllDataRowIdData,
14433
+ afterTreeFullData = this.afterTreeFullData,
14434
+ treeOpts = this.treeOpts;
14435
+
14436
+ if (treeConfig) {
14437
+ external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.eachTree(afterTreeFullData, function (row, index, items, path) {
14438
+ var rowid = methods_getRowid(_this17, row);
14439
+ var allrest = fullAllDataRowIdData[rowid];
14440
+ var fullrest = fullDataRowIdData[rowid];
14441
+ var seq = path.map(function (num, i) {
14442
+ return i % 2 === 0 ? Number(num) + 1 : '.';
14443
+ }).join('');
14444
+
14445
+ if (allrest) {
14446
+ allrest.seq = seq;
14447
+ }
14448
+
14449
+ if (fullrest) {
14450
+ fullrest.seq = seq;
14451
+ } else {
14452
+ fullAllDataRowIdData[rowid] = {
14453
+ row: row,
14454
+ rowid: rowid,
14455
+ seq: seq,
14456
+ index: -1,
14457
+ $index: -1,
14458
+ _index: index,
14459
+ items: [],
14460
+ parent: null,
14461
+ level: 0
14462
+ };
14463
+ fullDataRowIdData[rowid] = {
14464
+ row: row,
14465
+ rowid: rowid,
14466
+ seq: seq,
14467
+ index: -1,
14468
+ $index: -1,
14469
+ _index: index,
14470
+ items: [],
14471
+ parent: null,
14472
+ level: 0
14473
+ };
14474
+ }
14475
+ }, treeOpts);
14476
+ } else {
14477
+ afterFullData.forEach(function (row, index) {
14478
+ var rowid = methods_getRowid(_this17, row);
14479
+ var allrest = fullAllDataRowIdData[rowid];
14480
+ var fullrest = fullDataRowIdData[rowid];
14481
+ var seq = index + 1;
14482
+
14483
+ if (allrest) {
14484
+ allrest.seq = seq;
14485
+ }
14486
+
14487
+ if (fullrest) {
14488
+ fullrest.seq = seq;
14489
+ fullrest._index = index;
14490
+ } else {
14491
+ fullAllDataRowIdData[rowid] = {
14492
+ row: row,
14493
+ rowid: rowid,
14494
+ seq: seq,
14495
+ index: -1,
14496
+ $index: -1,
14497
+ _index: index,
14498
+ items: [],
14499
+ parent: null,
14500
+ level: 0
14501
+ };
14502
+ fullDataRowIdData[rowid] = {
14503
+ row: row,
14504
+ rowid: rowid,
14505
+ seq: seq,
14506
+ index: -1,
14507
+ $index: -1,
14508
+ _index: index,
14509
+ items: [],
14510
+ parent: null,
14511
+ level: 0
14512
+ };
14513
+ }
14514
+ });
14515
+ }
13564
14516
  },
13565
14517
 
13566
14518
  /**
@@ -13604,7 +14556,7 @@ var Methods = {
13604
14556
  * 默认执行一次,除非被重置
13605
14557
  */
13606
14558
  handleLoadDefaults: function handleLoadDefaults() {
13607
- var _this16 = this;
14559
+ var _this18 = this;
13608
14560
 
13609
14561
  if (this.checkboxConfig) {
13610
14562
  this.handleDefaultSelectionChecked();
@@ -13631,7 +14583,7 @@ var Methods = {
13631
14583
  }
13632
14584
 
13633
14585
  this.$nextTick(function () {
13634
- return setTimeout(_this16.recalculate);
14586
+ return setTimeout(_this18.recalculate);
13635
14587
  });
13636
14588
  },
13637
14589
 
@@ -13881,12 +14833,12 @@ var Methods = {
13881
14833
  * 刷新列配置
13882
14834
  */
13883
14835
  refreshColumn: function refreshColumn() {
13884
- var _this17 = this;
14836
+ var _this19 = this;
13885
14837
 
13886
14838
  return this.parseColumns().then(function () {
13887
- return _this17.refreshScroll();
14839
+ return _this19.refreshScroll();
13888
14840
  }).then(function () {
13889
- return _this17.recalculate();
14841
+ return _this19.recalculate();
13890
14842
  });
13891
14843
  },
13892
14844
 
@@ -13895,7 +14847,7 @@ var Methods = {
13895
14847
  * 将固定的列左边、右边分别靠边
13896
14848
  */
13897
14849
  parseColumns: function parseColumns() {
13898
- var _this18 = this;
14850
+ var _this20 = this;
13899
14851
 
13900
14852
  var leftList = [];
13901
14853
  var centerList = [];
@@ -14002,11 +14954,11 @@ var Methods = {
14002
14954
  this.visibleColumn = visibleColumn;
14003
14955
  this.handleTableColumn();
14004
14956
  return this.updateFooter().then(function () {
14005
- return _this18.recalculate();
14957
+ return _this20.recalculate();
14006
14958
  }).then(function () {
14007
- _this18.updateCellAreas();
14959
+ _this20.updateCellAreas();
14008
14960
 
14009
- return _this18.recalculate();
14961
+ return _this20.recalculate();
14010
14962
  });
14011
14963
  },
14012
14964
 
@@ -14090,7 +15042,7 @@ var Methods = {
14090
15042
  * 支持 width=? width=?px width=?% min-width=? min-width=?px min-width=?%
14091
15043
  */
14092
15044
  recalculate: function recalculate(refull) {
14093
- var _this19 = this;
15045
+ var _this21 = this;
14094
15046
 
14095
15047
  var $refs = this.$refs;
14096
15048
  var tableBody = $refs.tableBody,
@@ -14106,9 +15058,9 @@ var Methods = {
14106
15058
  if (refull === true) {
14107
15059
  // 初始化时需要在列计算之后再执行优化运算,达到最优显示效果
14108
15060
  return this.computeScrollLoad().then(function () {
14109
- _this19.autoCellWidth(headerElem, bodyElem, footerElem);
15061
+ _this21.autoCellWidth(headerElem, bodyElem, footerElem);
14110
15062
 
14111
- return _this19.computeScrollLoad();
15063
+ return _this21.computeScrollLoad();
14112
15064
  });
14113
15065
  }
14114
15066
  }
@@ -14256,7 +15208,7 @@ var Methods = {
14256
15208
  this.customMaxHeight = methods_calcHeight(this, 'maxHeight');
14257
15209
  },
14258
15210
  updateStyle: function updateStyle() {
14259
- var _this20 = this;
15211
+ var _this22 = this;
14260
15212
 
14261
15213
  var $refs = this.$refs,
14262
15214
  isGroup = this.isGroup,
@@ -14360,7 +15312,7 @@ var Methods = {
14360
15312
 
14361
15313
  if (isGroup && listElem) {
14362
15314
  external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.arrayEach(listElem.querySelectorAll('.col--group'), function (thElem) {
14363
- var colNode = _this20.getColumnNode(thElem);
15315
+ var colNode = _this22.getColumnNode(thElem);
14364
15316
 
14365
15317
  if (colNode) {
14366
15318
  var column = colNode.item;
@@ -14541,10 +15493,10 @@ var Methods = {
14541
15493
 
14542
15494
  if (cellElem) {
14543
15495
  if (colspan > 1) {
14544
- var columnIndex = _this20.getColumnIndex(column);
15496
+ var columnIndex = _this22.getColumnIndex(column);
14545
15497
 
14546
15498
  for (var _index = 1; _index < colspan; _index++) {
14547
- var nextColumn = _this20.getColumns(columnIndex + _index);
15499
+ var nextColumn = _this22.getColumns(columnIndex + _index);
14548
15500
 
14549
15501
  if (nextColumn) {
14550
15502
  colWidth += nextColumn.renderWidth;
@@ -14594,15 +15546,15 @@ var Methods = {
14594
15546
  }
14595
15547
  },
14596
15548
  preventEvent: function preventEvent(evnt, type, args, next, end) {
14597
- var _this21 = this;
15549
+ var _this23 = this;
14598
15550
 
14599
15551
  var evntList = v_x_e_table.interceptor.get(type);
14600
15552
  var rest;
14601
15553
 
14602
15554
  if (!evntList.some(function (func) {
14603
15555
  return func(Object.assign({
14604
- $grid: _this21.$xegrid,
14605
- $table: _this21,
15556
+ $grid: _this23.$xegrid,
15557
+ $table: _this23,
14606
15558
  $event: evnt
14607
15559
  }, args)) === false;
14608
15560
  })) {
@@ -14622,7 +15574,7 @@ var Methods = {
14622
15574
  * 全局按下事件处理
14623
15575
  */
14624
15576
  handleGlobalMousedownEvent: function handleGlobalMousedownEvent(evnt) {
14625
- var _this22 = this;
15577
+ var _this24 = this;
14626
15578
 
14627
15579
  var $el = this.$el,
14628
15580
  $refs = this.$refs,
@@ -14683,7 +15635,7 @@ var Methods = {
14683
15635
  } // 如果固定了高度且点击了行之外的空白处,则清除激活状态
14684
15636
 
14685
15637
 
14686
- if (!isClearActived && _this22.height && !_this22.overflowY) {
15638
+ if (!isClearActived && _this24.height && !_this24.overflowY) {
14687
15639
  var bodyWrapperElem = evnt.target;
14688
15640
 
14689
15641
  if (methods_hasClass(bodyWrapperElem, 'vxe-table--body-wrapper')) {
@@ -14694,7 +15646,7 @@ var Methods = {
14694
15646
  if (isClearActived || // 如果点击了当前表格之外
14695
15647
  !getEventTargetNode(evnt, $el).flag) {
14696
15648
  setTimeout(function () {
14697
- return _this22.clearActived(evnt);
15649
+ return _this24.clearActived(evnt);
14698
15650
  });
14699
15651
  }
14700
15652
  });
@@ -14708,9 +15660,9 @@ var Methods = {
14708
15660
 
14709
15661
  if (!getEventTargetNode(evnt, document.body, 'vxe-table--ignore-areas-clear').flag) {
14710
15662
  this.preventEvent(evnt, 'event.clearAreas', {}, function () {
14711
- _this22.clearCellAreas();
15663
+ _this24.clearCellAreas();
14712
15664
 
14713
- _this22.clearCopyCellArea();
15665
+ _this24.clearCopyCellArea();
14714
15666
  });
14715
15667
  }
14716
15668
  }
@@ -14745,45 +15697,48 @@ var Methods = {
14745
15697
  * 表格键盘事件
14746
15698
  */
14747
15699
  keydownEvent: function keydownEvent(evnt) {
14748
- var _this23 = this;
15700
+ var _this25 = this;
14749
15701
 
14750
15702
  var filterStore = this.filterStore,
14751
15703
  ctxMenuStore = this.ctxMenuStore,
14752
15704
  editStore = this.editStore,
14753
15705
  keyboardConfig = this.keyboardConfig,
14754
15706
  mouseConfig = this.mouseConfig,
14755
- mouseOpts = this.mouseOpts;
15707
+ mouseOpts = this.mouseOpts,
15708
+ keyboardOpts = this.keyboardOpts;
14756
15709
  var actived = editStore.actived;
14757
15710
  var keyCode = evnt.keyCode;
14758
15711
  var isEsc = keyCode === 27;
14759
15712
 
14760
15713
  if (isEsc) {
14761
15714
  this.preventEvent(evnt, 'event.keydown', null, function () {
14762
- if (keyboardConfig && mouseConfig && mouseOpts.area && _this23.handleKeyboardEvent) {
14763
- _this23.handleKeyboardEvent(evnt);
15715
+ if (keyboardConfig && mouseConfig && mouseOpts.area && _this25.handleKeyboardEvent) {
15716
+ _this25.handleKeyboardEvent(evnt);
14764
15717
  } else if (actived.row || filterStore.visible || ctxMenuStore.visible) {
14765
15718
  evnt.stopPropagation(); // 如果按下了 Esc 键,关闭快捷菜单、筛选
14766
15719
 
14767
- _this23.closeFilter();
14768
-
14769
- _this23.closeMenu(); // 如果是激活编辑状态,则取消编辑
15720
+ _this25.closeFilter();
14770
15721
 
15722
+ _this25.closeMenu();
14771
15723
 
14772
- if (actived.row) {
14773
- var params = actived.args;
15724
+ if (keyboardConfig && keyboardOpts.isEsc) {
15725
+ // 如果是激活编辑状态,则取消编辑
15726
+ if (actived.row) {
15727
+ var params = actived.args;
14774
15728
 
14775
- _this23.clearActived(evnt); // 如果配置了选中功能,则为选中状态
15729
+ _this25.clearActived(evnt); // 如果配置了选中功能,则为选中状态
14776
15730
 
14777
15731
 
14778
- if (mouseConfig && mouseOpts.selected) {
14779
- _this23.$nextTick(function () {
14780
- return _this23.handleSelected(params, evnt);
14781
- });
15732
+ if (mouseConfig && mouseOpts.selected) {
15733
+ _this25.$nextTick(function () {
15734
+ return _this25.handleSelected(params, evnt);
15735
+ });
15736
+ }
14782
15737
  }
14783
15738
  }
14784
15739
  }
14785
15740
 
14786
- _this23.emitEvent('keydown', {}, evnt);
15741
+ _this25.emitEvent('keydown', {}, evnt);
14787
15742
  });
14788
15743
  }
14789
15744
  },
@@ -14792,27 +15747,27 @@ var Methods = {
14792
15747
  * 全局键盘事件
14793
15748
  */
14794
15749
  handleGlobalKeydownEvent: function handleGlobalKeydownEvent(evnt) {
14795
- var _this24 = this;
15750
+ var _this26 = this;
14796
15751
 
14797
15752
  // 该行为只对当前激活的表格有效
14798
15753
  if (this.isActivated) {
14799
15754
  this.preventEvent(evnt, 'event.keydown', null, function () {
14800
- var filterStore = _this24.filterStore,
14801
- isCtxMenu = _this24.isCtxMenu,
14802
- ctxMenuStore = _this24.ctxMenuStore,
14803
- editStore = _this24.editStore,
14804
- editOpts = _this24.editOpts,
14805
- editConfig = _this24.editConfig,
14806
- mouseConfig = _this24.mouseConfig,
14807
- mouseOpts = _this24.mouseOpts,
14808
- keyboardConfig = _this24.keyboardConfig,
14809
- keyboardOpts = _this24.keyboardOpts,
14810
- treeConfig = _this24.treeConfig,
14811
- treeOpts = _this24.treeOpts,
14812
- highlightCurrentRow = _this24.highlightCurrentRow,
14813
- currentRow = _this24.currentRow,
14814
- bodyCtxMenu = _this24.bodyCtxMenu,
14815
- rowOpts = _this24.rowOpts;
15755
+ var filterStore = _this26.filterStore,
15756
+ isCtxMenu = _this26.isCtxMenu,
15757
+ ctxMenuStore = _this26.ctxMenuStore,
15758
+ editStore = _this26.editStore,
15759
+ editOpts = _this26.editOpts,
15760
+ editConfig = _this26.editConfig,
15761
+ mouseConfig = _this26.mouseConfig,
15762
+ mouseOpts = _this26.mouseOpts,
15763
+ keyboardConfig = _this26.keyboardConfig,
15764
+ keyboardOpts = _this26.keyboardOpts,
15765
+ treeConfig = _this26.treeConfig,
15766
+ treeOpts = _this26.treeOpts,
15767
+ highlightCurrentRow = _this26.highlightCurrentRow,
15768
+ currentRow = _this26.currentRow,
15769
+ bodyCtxMenu = _this26.bodyCtxMenu,
15770
+ rowOpts = _this26.rowOpts;
14816
15771
  var selected = editStore.selected,
14817
15772
  actived = editStore.actived;
14818
15773
  var keyCode = evnt.keyCode;
@@ -14839,7 +15794,7 @@ var Methods = {
14839
15794
 
14840
15795
  if (filterStore.visible) {
14841
15796
  if (isEsc) {
14842
- _this24.closeFilter();
15797
+ _this26.closeFilter();
14843
15798
  }
14844
15799
 
14845
15800
  return;
@@ -14850,20 +15805,20 @@ var Methods = {
14850
15805
  evnt.preventDefault();
14851
15806
 
14852
15807
  if (ctxMenuStore.showChild && hasChildrenList(ctxMenuStore.selected)) {
14853
- _this24.moveCtxMenu(evnt, keyCode, ctxMenuStore, 'selectChild', 37, false, ctxMenuStore.selected.children);
15808
+ _this26.moveCtxMenu(evnt, keyCode, ctxMenuStore, 'selectChild', 37, false, ctxMenuStore.selected.children);
14854
15809
  } else {
14855
- _this24.moveCtxMenu(evnt, keyCode, ctxMenuStore, 'selected', 39, true, _this24.ctxMenuList);
15810
+ _this26.moveCtxMenu(evnt, keyCode, ctxMenuStore, 'selected', 39, true, _this26.ctxMenuList);
14856
15811
  }
14857
- } else if (keyboardConfig && mouseConfig && mouseOpts.area && _this24.handleKeyboardEvent) {
14858
- _this24.handleKeyboardEvent(evnt);
15812
+ } else if (keyboardConfig && mouseConfig && mouseOpts.area && _this26.handleKeyboardEvent) {
15813
+ _this26.handleKeyboardEvent(evnt);
14859
15814
  } else if (keyboardConfig && isSpacebar && keyboardOpts.isChecked && selected.row && selected.column && (selected.column.type === 'checkbox' || selected.column.type === 'radio')) {
14860
15815
  // 空格键支持选中复选框
14861
15816
  evnt.preventDefault();
14862
15817
 
14863
15818
  if (selected.column.type === 'checkbox') {
14864
- _this24.handleToggleCheckRowEvent(evnt, selected.args);
15819
+ _this26.handleToggleCheckRowEvent(evnt, selected.args);
14865
15820
  } else {
14866
- _this24.triggerRadioRowEvent(evnt, selected.args);
15821
+ _this26.triggerRadioRowEvent(evnt, selected.args);
14867
15822
  }
14868
15823
  } else if (isF2 && isEnableConf(editConfig)) {
14869
15824
  if (!isEditStatus) {
@@ -14872,15 +15827,15 @@ var Methods = {
14872
15827
  evnt.stopPropagation();
14873
15828
  evnt.preventDefault();
14874
15829
 
14875
- _this24.handleActived(selected.args, evnt);
15830
+ _this26.handleActived(selected.args, evnt);
14876
15831
  }
14877
15832
  }
14878
15833
  } else if (isContextMenu) {
14879
15834
  // 如果按下上下文键
14880
- _this24._keyCtx = selected.row && selected.column && bodyCtxMenu.length;
14881
- clearTimeout(_this24.keyCtxTimeout);
14882
- _this24.keyCtxTimeout = setTimeout(function () {
14883
- _this24._keyCtx = false;
15835
+ _this26._keyCtx = selected.row && selected.column && bodyCtxMenu.length;
15836
+ clearTimeout(_this26.keyCtxTimeout);
15837
+ _this26.keyCtxTimeout = setTimeout(function () {
15838
+ _this26._keyCtx = false;
14884
15839
  }, 1000);
14885
15840
  } else if (isEnter && !hasAltKey && keyboardConfig && keyboardOpts.isEnter && (selected.row || actived.row || treeConfig && (rowOpts.isCurrent || highlightCurrentRow) && currentRow)) {
14886
15841
  // 退出选中
@@ -14889,12 +15844,12 @@ var Methods = {
14889
15844
  if (actived.row) {
14890
15845
  params = actived.args;
14891
15846
 
14892
- _this24.clearActived(evnt); // 如果配置了选中功能,则为选中状态
15847
+ _this26.clearActived(evnt); // 如果配置了选中功能,则为选中状态
14893
15848
 
14894
15849
 
14895
15850
  if (mouseConfig && mouseOpts.selected) {
14896
- _this24.$nextTick(function () {
14897
- return _this24.handleSelected(params, evnt);
15851
+ _this26.$nextTick(function () {
15852
+ return _this26.handleSelected(params, evnt);
14898
15853
  });
14899
15854
  }
14900
15855
  }
@@ -14905,15 +15860,15 @@ var Methods = {
14905
15860
 
14906
15861
  if (hasShiftKey) {
14907
15862
  if (keyboardOpts.enterToTab) {
14908
- _this24.moveTabSelected(targetArgs, hasShiftKey, evnt);
15863
+ _this26.moveTabSelected(targetArgs, hasShiftKey, evnt);
14909
15864
  } else {
14910
- _this24.moveSelected(targetArgs, isLeftArrow, true, isRightArrow, false, evnt);
15865
+ _this26.moveSelected(targetArgs, isLeftArrow, true, isRightArrow, false, evnt);
14911
15866
  }
14912
15867
  } else {
14913
15868
  if (keyboardOpts.enterToTab) {
14914
- _this24.moveTabSelected(targetArgs, hasShiftKey, evnt);
15869
+ _this26.moveTabSelected(targetArgs, hasShiftKey, evnt);
14915
15870
  } else {
14916
- _this24.moveSelected(targetArgs, isLeftArrow, false, isRightArrow, true, evnt);
15871
+ _this26.moveSelected(targetArgs, isLeftArrow, false, isRightArrow, true, evnt);
14917
15872
  }
14918
15873
  }
14919
15874
  } else if (treeConfig && (rowOpts.isCurrent || highlightCurrentRow) && currentRow) {
@@ -14924,14 +15879,14 @@ var Methods = {
14924
15879
  evnt.preventDefault();
14925
15880
  var targetRow = childrens[0];
14926
15881
  params = {
14927
- $table: _this24,
15882
+ $table: _this26,
14928
15883
  row: targetRow
14929
15884
  };
14930
15885
 
14931
- _this24.setTreeExpand(currentRow, true).then(function () {
14932
- return _this24.scrollToRow(targetRow);
15886
+ _this26.setTreeExpand(currentRow, true).then(function () {
15887
+ return _this26.scrollToRow(targetRow);
14933
15888
  }).then(function () {
14934
- return _this24.triggerCurrentRowEvent(evnt, params);
15889
+ return _this26.triggerCurrentRowEvent(evnt, params);
14935
15890
  });
14936
15891
  }
14937
15892
  }
@@ -14940,18 +15895,18 @@ var Methods = {
14940
15895
  if (!isEditStatus) {
14941
15896
  // 如果按下了方向键
14942
15897
  if (selected.row && selected.column) {
14943
- _this24.moveSelected(selected.args, isLeftArrow, isUpArrow, isRightArrow, isDwArrow, evnt);
15898
+ _this26.moveSelected(selected.args, isLeftArrow, isUpArrow, isRightArrow, isDwArrow, evnt);
14944
15899
  } else if ((isUpArrow || isDwArrow) && (rowOpts.isCurrent || highlightCurrentRow)) {
14945
15900
  // 当前行按键上下移动
14946
- _this24.moveCurrentRow(isUpArrow, isDwArrow, evnt);
15901
+ _this26.moveCurrentRow(isUpArrow, isDwArrow, evnt);
14947
15902
  }
14948
15903
  }
14949
15904
  } else if (isTab && keyboardConfig && keyboardOpts.isTab) {
14950
15905
  // 如果按下了 Tab 键切换
14951
15906
  if (selected.row || selected.column) {
14952
- _this24.moveTabSelected(selected.args, hasShiftKey, evnt);
15907
+ _this26.moveTabSelected(selected.args, hasShiftKey, evnt);
14953
15908
  } else if (actived.row || actived.column) {
14954
- _this24.moveTabSelected(actived.args, hasShiftKey, evnt);
15909
+ _this26.moveTabSelected(actived.args, hasShiftKey, evnt);
14955
15910
  }
14956
15911
  } else if (keyboardConfig && (isDel || (treeConfig && (rowOpts.isCurrent || highlightCurrentRow) && currentRow ? isBack && keyboardOpts.isArrow : isBack))) {
14957
15912
  if (!isEditStatus) {
@@ -14962,10 +15917,10 @@ var Methods = {
14962
15917
  if (delMethod) {
14963
15918
  delMethod({
14964
15919
  row: selected.row,
14965
- rowIndex: _this24.getRowIndex(selected.row),
15920
+ rowIndex: _this26.getRowIndex(selected.row),
14966
15921
  column: selected.column,
14967
- columnIndex: _this24.getColumnIndex(selected.column),
14968
- $table: _this24
15922
+ columnIndex: _this26.getColumnIndex(selected.column),
15923
+ $table: _this26
14969
15924
  });
14970
15925
  } else {
14971
15926
  methods_setCellValue(selected.row, selected.column, null);
@@ -14975,21 +15930,21 @@ var Methods = {
14975
15930
  if (backMethod) {
14976
15931
  backMethod({
14977
15932
  row: selected.row,
14978
- rowIndex: _this24.getRowIndex(selected.row),
15933
+ rowIndex: _this26.getRowIndex(selected.row),
14979
15934
  column: selected.column,
14980
- columnIndex: _this24.getColumnIndex(selected.column),
14981
- $table: _this24
15935
+ columnIndex: _this26.getColumnIndex(selected.column),
15936
+ $table: _this26
14982
15937
  });
14983
15938
  } else {
14984
- _this24.handleActived(selected.args, evnt);
15939
+ _this26.handleActived(selected.args, evnt);
14985
15940
  }
14986
15941
  } else if (isDel) {
14987
15942
  // 如果按下 del 键,更新表尾数据
14988
- _this24.updateFooter();
15943
+ _this26.updateFooter();
14989
15944
  }
14990
15945
  } else if (isBack && keyboardOpts.isArrow && treeConfig && (rowOpts.isCurrent || highlightCurrentRow) && currentRow) {
14991
15946
  // 如果树形表格回退键关闭当前行返回父节点
14992
- var _XEUtils$findTree = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.findTree(_this24.afterFullData, function (item) {
15947
+ var _XEUtils$findTree = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.findTree(_this26.afterFullData, function (item) {
14993
15948
  return item === currentRow;
14994
15949
  }, treeOpts),
14995
15950
  parentRow = _XEUtils$findTree.parent;
@@ -14997,14 +15952,14 @@ var Methods = {
14997
15952
  if (parentRow) {
14998
15953
  evnt.preventDefault();
14999
15954
  params = {
15000
- $table: _this24,
15955
+ $table: _this26,
15001
15956
  row: parentRow
15002
15957
  };
15003
15958
 
15004
- _this24.setTreeExpand(parentRow, false).then(function () {
15005
- return _this24.scrollToRow(parentRow);
15959
+ _this26.setTreeExpand(parentRow, false).then(function () {
15960
+ return _this26.scrollToRow(parentRow);
15006
15961
  }).then(function () {
15007
- return _this24.triggerCurrentRowEvent(evnt, params);
15962
+ return _this26.triggerCurrentRowEvent(evnt, params);
15008
15963
  });
15009
15964
  }
15010
15965
  }
@@ -15021,21 +15976,21 @@ var Methods = {
15021
15976
  if (editMethod) {
15022
15977
  editMethod({
15023
15978
  row: selected.row,
15024
- rowIndex: _this24.getRowIndex(selected.row),
15979
+ rowIndex: _this26.getRowIndex(selected.row),
15025
15980
  column: selected.column,
15026
- columnIndex: _this24.getColumnIndex(selected.column),
15027
- $table: _this24
15981
+ columnIndex: _this26.getColumnIndex(selected.column),
15982
+ $table: _this26
15028
15983
  });
15029
15984
  } else {
15030
15985
  methods_setCellValue(selected.row, selected.column, null);
15031
15986
 
15032
- _this24.handleActived(selected.args, evnt);
15987
+ _this26.handleActived(selected.args, evnt);
15033
15988
  }
15034
15989
  }
15035
15990
  }
15036
15991
  }
15037
15992
 
15038
- _this24.emitEvent('keydown', {}, evnt);
15993
+ _this26.emitEvent('keydown', {}, evnt);
15039
15994
  });
15040
15995
  }
15041
15996
  },
@@ -15105,12 +16060,12 @@ var Methods = {
15105
16060
  this.recalculate(true);
15106
16061
  },
15107
16062
  handleTooltipLeaveMethod: function handleTooltipLeaveMethod() {
15108
- var _this25 = this;
16063
+ var _this27 = this;
15109
16064
 
15110
16065
  var tooltipOpts = this.tooltipOpts;
15111
16066
  setTimeout(function () {
15112
- if (!_this25.tooltipActive) {
15113
- _this25.closeTooltip();
16067
+ if (!_this27.tooltipActive) {
16068
+ _this27.closeTooltip();
15114
16069
  }
15115
16070
  }, tooltipOpts.leaveDelay);
15116
16071
  return false;
@@ -15121,17 +16076,17 @@ var Methods = {
15121
16076
  this.closeTooltip();
15122
16077
  },
15123
16078
  handleTargetLeaveEvent: function handleTargetLeaveEvent() {
15124
- var _this26 = this;
16079
+ var _this28 = this;
15125
16080
 
15126
16081
  var tooltipOpts = this.tooltipOpts;
15127
16082
  this.tooltipActive = false;
15128
16083
 
15129
16084
  if (tooltipOpts.enterable) {
15130
16085
  this.tooltipTimeout = setTimeout(function () {
15131
- var tooltip = _this26.$refs.tooltip;
16086
+ var tooltip = _this28.$refs.tooltip;
15132
16087
 
15133
16088
  if (tooltip && !tooltip.isHover) {
15134
- _this26.closeTooltip();
16089
+ _this28.closeTooltip();
15135
16090
  }
15136
16091
  }, tooltipOpts.leaveDelay);
15137
16092
  } else {
@@ -15361,14 +16316,14 @@ var Methods = {
15361
16316
  * @param {Boolean} value 是否选中
15362
16317
  */
15363
16318
  setCheckboxRow: function setCheckboxRow(rows, value) {
15364
- var _this27 = this;
16319
+ var _this29 = this;
15365
16320
 
15366
16321
  if (rows && !external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isArray(rows)) {
15367
16322
  rows = [rows];
15368
16323
  }
15369
16324
 
15370
16325
  rows.forEach(function (row) {
15371
- return _this27.handleSelectRow({
16326
+ return _this29.handleSelectRow({
15372
16327
  row: row
15373
16328
  }, !!value);
15374
16329
  });
@@ -15392,7 +16347,7 @@ var Methods = {
15392
16347
  * value 选中true 不选false 半选-1
15393
16348
  */
15394
16349
  handleSelectRow: function handleSelectRow(_ref5, value) {
15395
- var _this28 = this;
16350
+ var _this30 = this;
15396
16351
 
15397
16352
  var row = _ref5.row;
15398
16353
  var selection = this.selection,
@@ -15424,7 +16379,7 @@ var Methods = {
15424
16379
  return half === item;
15425
16380
  });
15426
16381
 
15427
- _this28.handleCheckboxReserveRow(row, value);
16382
+ _this30.handleCheckboxReserveRow(row, value);
15428
16383
  }
15429
16384
  }, treeOpts);
15430
16385
  } // 如果存在父节点,更新父节点状态
@@ -15496,7 +16451,7 @@ var Methods = {
15496
16451
  return half === item;
15497
16452
  });
15498
16453
 
15499
- _this28.handleCheckboxReserveRow(row, value);
16454
+ _this30.handleCheckboxReserveRow(row, value);
15500
16455
  }
15501
16456
  }, treeOpts);
15502
16457
  } // 如果存在父节点,更新父节点状态
@@ -15600,7 +16555,7 @@ var Methods = {
15600
16555
  * @param {Boolean} value 是否选中
15601
16556
  */
15602
16557
  setAllCheckboxRow: function setAllCheckboxRow(value) {
15603
- var _this29 = this;
16558
+ var _this31 = this;
15604
16559
 
15605
16560
  var afterFullData = this.afterFullData,
15606
16561
  treeConfig = this.treeConfig,
@@ -15713,11 +16668,11 @@ var Methods = {
15713
16668
  if (reserve) {
15714
16669
  if (value) {
15715
16670
  selectRows.forEach(function (row) {
15716
- checkboxReserveRowMap[methods_getRowid(_this29, row)] = row;
16671
+ checkboxReserveRowMap[methods_getRowid(_this31, row)] = row;
15717
16672
  });
15718
16673
  } else {
15719
16674
  afterFullData.forEach(function (row) {
15720
- return _this29.handleCheckboxReserveRow(row, false);
16675
+ return _this31.handleCheckboxReserveRow(row, false);
15721
16676
  });
15722
16677
  }
15723
16678
  }
@@ -15912,7 +16867,7 @@ var Methods = {
15912
16867
  * 获取复选框保留选中的行
15913
16868
  */
15914
16869
  getCheckboxReserveRecords: function getCheckboxReserveRecords(isFull) {
15915
- var _this30 = this;
16870
+ var _this32 = this;
15916
16871
 
15917
16872
  var fullDataRowIdData = this.fullDataRowIdData,
15918
16873
  afterFullData = this.afterFullData,
@@ -15923,6 +16878,18 @@ var Methods = {
15923
16878
  var reserveSelection = [];
15924
16879
 
15925
16880
  if (checkboxOpts.reserve) {
16881
+ var afterFullIdMaps = {};
16882
+
16883
+ if (treeConfig) {
16884
+ external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.eachTree(afterFullData, function (row) {
16885
+ afterFullIdMaps[methods_getRowid(_this32, row)] = 1;
16886
+ }, treeOpts);
16887
+ } else {
16888
+ afterFullData.forEach(function (row) {
16889
+ afterFullIdMaps[methods_getRowid(_this32, row)] = 1;
16890
+ });
16891
+ }
16892
+
15926
16893
  external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.each(checkboxReserveRowMap, function (oldRow, oldRowid) {
15927
16894
  if (oldRow) {
15928
16895
  if (isFull) {
@@ -15930,18 +16897,8 @@ var Methods = {
15930
16897
  reserveSelection.push(oldRow);
15931
16898
  }
15932
16899
  } else {
15933
- if (treeConfig) {
15934
- if (!external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.findTree(afterFullData, function (row) {
15935
- return methods_getRowid(_this30, row) === oldRowid;
15936
- }, treeOpts)) {
15937
- reserveSelection.push(oldRow);
15938
- }
15939
- } else {
15940
- if (!afterFullData.some(function (row) {
15941
- return methods_getRowid(_this30, row) === oldRowid;
15942
- })) {
15943
- reserveSelection.push(oldRow);
15944
- }
16900
+ if (!afterFullIdMaps[oldRowid]) {
16901
+ reserveSelection.push(oldRow);
15945
16902
  }
15946
16903
  }
15947
16904
  }
@@ -15995,7 +16952,7 @@ var Methods = {
15995
16952
  * 清空行为不管是否被禁用还是保留记录,都将彻底清空选中状态
15996
16953
  */
15997
16954
  clearCheckboxRow: function clearCheckboxRow() {
15998
- var _this31 = this;
16955
+ var _this33 = this;
15999
16956
 
16000
16957
  var tableFullData = this.tableFullData,
16001
16958
  treeConfig = this.treeConfig,
@@ -16018,7 +16975,7 @@ var Methods = {
16018
16975
 
16019
16976
  if (reserve) {
16020
16977
  tableFullData.forEach(function (row) {
16021
- return _this31.handleCheckboxReserveRow(row, false);
16978
+ return _this33.handleCheckboxReserveRow(row, false);
16022
16979
  });
16023
16980
  }
16024
16981
 
@@ -16309,13 +17266,13 @@ var Methods = {
16309
17266
  * 如果存在规则,则校验
16310
17267
  */
16311
17268
  handleChangeCell: function handleChangeCell(evnt, params) {
16312
- var _this32 = this;
17269
+ var _this34 = this;
16313
17270
 
16314
17271
  this.checkValidate('blur').catch(function (e) {
16315
17272
  return e;
16316
17273
  }).then(function () {
16317
- _this32.handleActived(params, evnt).then(function () {
16318
- return _this32.checkValidate('change');
17274
+ _this34.handleActived(params, evnt).then(function () {
17275
+ return _this34.checkValidate('change');
16319
17276
  }).catch(function (e) {
16320
17277
  return e;
16321
17278
  });
@@ -16418,7 +17375,7 @@ var Methods = {
16418
17375
  * 如果是双击模式,则激活为编辑状态
16419
17376
  */
16420
17377
  triggerCellDblclickEvent: function triggerCellDblclickEvent(evnt, params) {
16421
- var _this33 = this;
17378
+ var _this35 = this;
16422
17379
 
16423
17380
  var editStore = this.editStore,
16424
17381
  editConfig = this.editConfig,
@@ -16433,15 +17390,15 @@ var Methods = {
16433
17390
  this.checkValidate('blur').catch(function (e) {
16434
17391
  return e;
16435
17392
  }).then(function () {
16436
- _this33.handleActived(params, evnt).then(function () {
16437
- return _this33.checkValidate('change');
17393
+ _this35.handleActived(params, evnt).then(function () {
17394
+ return _this35.checkValidate('change');
16438
17395
  }).catch(function (e) {
16439
17396
  return e;
16440
17397
  });
16441
17398
  });
16442
17399
  } else if (editOpts.mode === 'cell') {
16443
17400
  this.handleActived(params, evnt).then(function () {
16444
- return _this33.checkValidate('change');
17401
+ return _this35.checkValidate('change');
16445
17402
  }).catch(function (e) {
16446
17403
  return e;
16447
17404
  });
@@ -16452,7 +17409,7 @@ var Methods = {
16452
17409
  this.emitEvent('cell-dblclick', params, evnt);
16453
17410
  },
16454
17411
  handleDefaultSort: function handleDefaultSort() {
16455
- var _this34 = this;
17412
+ var _this36 = this;
16456
17413
 
16457
17414
  var sortConfig = this.sortConfig,
16458
17415
  sortOpts = this.sortOpts;
@@ -16469,7 +17426,7 @@ var Methods = {
16469
17426
  order = item.order;
16470
17427
 
16471
17428
  if (field && order) {
16472
- var column = _this34.getColumnByField(field);
17429
+ var column = _this36.getColumnByField(field);
16473
17430
 
16474
17431
  if (column && column.sortable) {
16475
17432
  column.order = order;
@@ -16512,7 +17469,7 @@ var Methods = {
16512
17469
  }
16513
17470
  },
16514
17471
  sort: function sort(sortConfs, sortOrder) {
16515
- var _this35 = this;
17472
+ var _this37 = this;
16516
17473
 
16517
17474
  var sortOpts = this.sortOpts;
16518
17475
  var multiple = sortOpts.multiple,
@@ -16545,7 +17502,7 @@ var Methods = {
16545
17502
  var column = field;
16546
17503
 
16547
17504
  if (external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isString(field)) {
16548
- column = _this35.getColumnByField(field);
17505
+ column = _this37.getColumnByField(field);
16549
17506
  }
16550
17507
 
16551
17508
  if (column && (column.sortable || column.remoteSort)) {
@@ -16554,7 +17511,7 @@ var Methods = {
16554
17511
  }
16555
17512
 
16556
17513
  if (orders.indexOf(order) === -1) {
16557
- order = getNextSortOrder(_this35, column);
17514
+ order = getNextSortOrder(_this37, column);
16558
17515
  }
16559
17516
 
16560
17517
  if (column.order !== order) {
@@ -16702,7 +17659,7 @@ var Methods = {
16702
17659
  * @param {Row} row 行对象
16703
17660
  */
16704
17661
  reloadRowExpand: function reloadRowExpand(row) {
16705
- var _this36 = this;
17662
+ var _this38 = this;
16706
17663
 
16707
17664
  var expandOpts = this.expandOpts,
16708
17665
  expandLazyLoadeds = this.expandLazyLoadeds;
@@ -16710,7 +17667,7 @@ var Methods = {
16710
17667
 
16711
17668
  if (lazy && expandLazyLoadeds.indexOf(row) === -1) {
16712
17669
  this.clearRowExpandLoaded(row).then(function () {
16713
- return _this36.handleAsyncRowExpand(row);
17670
+ return _this38.handleAsyncRowExpand(row);
16714
17671
  });
16715
17672
  }
16716
17673
 
@@ -16787,28 +17744,28 @@ var Methods = {
16787
17744
  return this.setRowExpand(this.expandOpts.lazy ? this.tableData : this.tableFullData, expanded);
16788
17745
  },
16789
17746
  handleAsyncRowExpand: function handleAsyncRowExpand(row) {
16790
- var _this37 = this;
17747
+ var _this39 = this;
16791
17748
 
16792
17749
  var rest = this.fullAllDataRowMap.get(row);
16793
17750
  return new Promise(function (resolve) {
16794
- _this37.expandLazyLoadeds.push(row);
17751
+ _this39.expandLazyLoadeds.push(row);
16795
17752
 
16796
- _this37.expandOpts.loadMethod({
16797
- $table: _this37,
17753
+ _this39.expandOpts.loadMethod({
17754
+ $table: _this39,
16798
17755
  row: row,
16799
- rowIndex: _this37.getRowIndex(row),
16800
- $rowIndex: _this37.getVMRowIndex(row)
17756
+ rowIndex: _this39.getRowIndex(row),
17757
+ $rowIndex: _this39.getVMRowIndex(row)
16801
17758
  }).catch(function (e) {
16802
17759
  return e;
16803
17760
  }).then(function () {
16804
17761
  rest.expandLoaded = true;
16805
- external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.remove(_this37.expandLazyLoadeds, function (item) {
17762
+ external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.remove(_this39.expandLazyLoadeds, function (item) {
16806
17763
  return item === row;
16807
17764
  });
16808
17765
 
16809
- _this37.rowExpandeds.push(row);
17766
+ _this39.rowExpandeds.push(row);
16810
17767
 
16811
- resolve(_this37.$nextTick().then(_this37.recalculate));
17768
+ resolve(_this39.$nextTick().then(_this39.recalculate));
16812
17769
  });
16813
17770
  });
16814
17771
  },
@@ -16821,7 +17778,7 @@ var Methods = {
16821
17778
  * @param {Boolean} expanded 是否展开
16822
17779
  */
16823
17780
  setRowExpand: function setRowExpand(rows, expanded) {
16824
- var _this38 = this;
17781
+ var _this40 = this;
16825
17782
 
16826
17783
  var fullAllDataRowMap = this.fullAllDataRowMap,
16827
17784
  expandLazyLoadeds = this.expandLazyLoadeds,
@@ -16854,8 +17811,8 @@ var Methods = {
16854
17811
  columnIndex: columnIndex,
16855
17812
  $columnIndex: $columnIndex,
16856
17813
  row: row,
16857
- rowIndex: _this38.getRowIndex(row),
16858
- $rowIndex: _this38.getVMRowIndex(row)
17814
+ rowIndex: _this40.getRowIndex(row),
17815
+ $rowIndex: _this40.getVMRowIndex(row)
16859
17816
  });
16860
17817
  }) : rows;
16861
17818
 
@@ -16866,7 +17823,7 @@ var Methods = {
16866
17823
  var isLoad = lazy && !rest.expandLoaded && expandLazyLoadeds.indexOf(row) === -1;
16867
17824
 
16868
17825
  if (isLoad) {
16869
- lazyRests.push(_this38.handleAsyncRowExpand(row));
17826
+ lazyRests.push(_this40.handleAsyncRowExpand(row));
16870
17827
  } else {
16871
17828
  rowExpandeds.push(row);
16872
17829
  }
@@ -16880,7 +17837,7 @@ var Methods = {
16880
17837
 
16881
17838
  if (reserve) {
16882
17839
  validRows.forEach(function (row) {
16883
- return _this38.handleRowExpandReserve(row, expanded);
17840
+ return _this40.handleRowExpandReserve(row, expanded);
16884
17841
  });
16885
17842
  }
16886
17843
  }
@@ -16901,7 +17858,7 @@ var Methods = {
16901
17858
  * 手动清空展开行状态,数据会恢复成未展开的状态
16902
17859
  */
16903
17860
  clearRowExpand: function clearRowExpand() {
16904
- var _this39 = this;
17861
+ var _this41 = this;
16905
17862
 
16906
17863
  var expandOpts = this.expandOpts,
16907
17864
  rowExpandeds = this.rowExpandeds,
@@ -16912,13 +17869,13 @@ var Methods = {
16912
17869
 
16913
17870
  if (reserve) {
16914
17871
  tableFullData.forEach(function (row) {
16915
- return _this39.handleRowExpandReserve(row, false);
17872
+ return _this41.handleRowExpandReserve(row, false);
16916
17873
  });
16917
17874
  }
16918
17875
 
16919
17876
  return this.$nextTick().then(function () {
16920
17877
  if (isExists) {
16921
- _this39.recalculate();
17878
+ _this41.recalculate();
16922
17879
  }
16923
17880
  });
16924
17881
  },
@@ -16991,7 +17948,7 @@ var Methods = {
16991
17948
  * @param {Row} row 行对象
16992
17949
  */
16993
17950
  reloadTreeExpand: function reloadTreeExpand(row) {
16994
- var _this40 = this;
17951
+ var _this42 = this;
16995
17952
 
16996
17953
  var treeOpts = this.treeOpts,
16997
17954
  treeLazyLoadeds = this.treeLazyLoadeds;
@@ -17001,13 +17958,13 @@ var Methods = {
17001
17958
 
17002
17959
  if (lazy && row[hasChild] && treeLazyLoadeds.indexOf(row) === -1) {
17003
17960
  this.clearTreeExpandLoaded(row).then(function () {
17004
- return _this40.handleAsyncTreeExpandChilds(row);
17961
+ return _this42.handleAsyncTreeExpandChilds(row);
17005
17962
  }).then(function () {
17006
17963
  if (transform) {
17007
- return _this40.updateVirtualTreeData();
17964
+ return _this42.handleTableData();
17008
17965
  }
17009
17966
  }).then(function () {
17010
- return _this40.recalculate();
17967
+ return _this42.recalculate();
17011
17968
  });
17012
17969
  }
17013
17970
 
@@ -17083,7 +18040,7 @@ var Methods = {
17083
18040
  }
17084
18041
  },
17085
18042
  handleAsyncTreeExpandChilds: function handleAsyncTreeExpandChilds(row) {
17086
- var _this41 = this;
18043
+ var _this43 = this;
17087
18044
 
17088
18045
  var fullAllDataRowMap = this.fullAllDataRowMap,
17089
18046
  treeExpandeds = this.treeExpandeds,
@@ -17096,7 +18053,7 @@ var Methods = {
17096
18053
  return new Promise(function (resolve) {
17097
18054
  treeLazyLoadeds.push(row);
17098
18055
  loadMethod({
17099
- $table: _this41,
18056
+ $table: _this43,
17100
18057
  row: row
17101
18058
  }).catch(function () {
17102
18059
  return [];
@@ -17111,19 +18068,19 @@ var Methods = {
17111
18068
  }
17112
18069
 
17113
18070
  if (childRecords) {
17114
- _this41.loadTreeChildren(row, childRecords).then(function (childRows) {
18071
+ _this43.loadTreeChildren(row, childRecords).then(function (childRows) {
17115
18072
  if (childRows.length && treeExpandeds.indexOf(row) === -1) {
17116
18073
  treeExpandeds.push(row);
17117
18074
  } // 如果当前节点已选中,则展开后子节点也被选中
17118
18075
 
17119
18076
 
17120
- if (!checkStrictly && _this41.isCheckedByCheckboxRow(row)) {
17121
- _this41.setCheckboxRow(childRows, true);
18077
+ if (!checkStrictly && _this43.isCheckedByCheckboxRow(row)) {
18078
+ _this43.setCheckboxRow(childRows, true);
17122
18079
  }
17123
18080
  });
17124
18081
  }
17125
18082
 
17126
- resolve(_this41.$nextTick().then(_this41.recalculate));
18083
+ resolve(_this43.$nextTick().then(_this43.recalculate));
17127
18084
  });
17128
18085
  });
17129
18086
  },
@@ -17155,7 +18112,7 @@ var Methods = {
17155
18112
  * @returns
17156
18113
  */
17157
18114
  handleBaseTreeExpand: function handleBaseTreeExpand(rows, expanded) {
17158
- var _this42 = this;
18115
+ var _this44 = this;
17159
18116
 
17160
18117
  var fullAllDataRowMap = this.fullAllDataRowMap,
17161
18118
  tableFullData = this.tableFullData,
@@ -17203,7 +18160,7 @@ var Methods = {
17203
18160
  var isLoad = lazy && row[hasChild] && !rest.treeLoaded && treeLazyLoadeds.indexOf(row) === -1; // 是否使用懒加载
17204
18161
 
17205
18162
  if (isLoad) {
17206
- result.push(_this42.handleAsyncTreeExpandChilds(row));
18163
+ result.push(_this44.handleAsyncTreeExpandChilds(row));
17207
18164
  } else {
17208
18165
  if (row[children] && row[children].length) {
17209
18166
  treeExpandeds.push(row);
@@ -17219,38 +18176,12 @@ var Methods = {
17219
18176
 
17220
18177
  if (reserve) {
17221
18178
  validRows.forEach(function (row) {
17222
- return _this42.handleTreeExpandReserve(row, expanded);
18179
+ return _this44.handleTreeExpandReserve(row, expanded);
17223
18180
  });
17224
18181
  }
17225
18182
 
17226
18183
  return Promise.all(result).then(this.recalculate);
17227
18184
  },
17228
- updateVirtualTreeData: function updateVirtualTreeData() {
17229
- var _this43 = this;
17230
-
17231
- var oldScrollYLoad = this.scrollYLoad,
17232
- treeExpandeds = this.treeExpandeds,
17233
- treeOpts = this.treeOpts,
17234
- treeFullData = this.treeFullData;
17235
- var fullData = [];
17236
- var expandMaps = new Map();
17237
- external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.eachTree(treeFullData, function (row, index, items, path, parent) {
17238
- if (!parent || expandMaps.has(parent) && treeExpandeds.indexOf(parent) > -1) {
17239
- expandMaps.set(row, 1);
17240
- fullData.push(row);
17241
- }
17242
- }, treeOpts);
17243
- var scrollYLoad = this.updateScrollYStatus(fullData);
17244
- this.tableFullData = scrollYLoad ? fullData : treeFullData;
17245
-
17246
- if (scrollYLoad || oldScrollYLoad !== scrollYLoad) {
17247
- return this.handleTableData(true).then(function () {
17248
- return _this43.recalculate();
17249
- });
17250
- }
17251
-
17252
- return this.$nextTick();
17253
- },
17254
18185
 
17255
18186
  /**
17256
18187
  * 虚拟树的展开与收起
@@ -17259,12 +18190,12 @@ var Methods = {
17259
18190
  * @returns
17260
18191
  */
17261
18192
  handleVirtualTreeExpand: function handleVirtualTreeExpand(rows, expanded) {
17262
- var _this44 = this;
18193
+ var _this45 = this;
17263
18194
 
17264
18195
  return this.handleBaseTreeExpand(rows, expanded).then(function () {
17265
- return _this44.updateVirtualTreeData();
18196
+ return _this45.handleTableData();
17266
18197
  }).then(function () {
17267
- return _this44.recalculate();
18198
+ return _this45.recalculate();
17268
18199
  });
17269
18200
  },
17270
18201
 
@@ -17309,7 +18240,7 @@ var Methods = {
17309
18240
  * 手动清空树形节点的展开状态,数据会恢复成未展开的状态
17310
18241
  */
17311
18242
  clearTreeExpand: function clearTreeExpand() {
17312
- var _this45 = this;
18243
+ var _this46 = this;
17313
18244
 
17314
18245
  var treeOpts = this.treeOpts,
17315
18246
  treeExpandeds = this.treeExpandeds,
@@ -17320,13 +18251,13 @@ var Methods = {
17320
18251
 
17321
18252
  if (reserve) {
17322
18253
  external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.eachTree(tableFullData, function (row) {
17323
- return _this45.handleTreeExpandReserve(row, false);
18254
+ return _this46.handleTreeExpandReserve(row, false);
17324
18255
  }, treeOpts);
17325
18256
  }
17326
18257
 
17327
- return this.updateVirtualTreeData().then(function () {
18258
+ return this.handleTableData().then(function () {
17328
18259
  if (isExists) {
17329
- _this45.recalculate();
18260
+ _this46.recalculate();
17330
18261
  }
17331
18262
  });
17332
18263
  },
@@ -17456,18 +18387,18 @@ var Methods = {
17456
18387
  },
17457
18388
  // 计算可视渲染相关数据
17458
18389
  computeScrollLoad: function computeScrollLoad() {
17459
- var _this46 = this;
18390
+ var _this47 = this;
17460
18391
 
17461
18392
  return this.$nextTick().then(function () {
17462
- var sYOpts = _this46.sYOpts,
17463
- sXOpts = _this46.sXOpts,
17464
- scrollXLoad = _this46.scrollXLoad,
17465
- scrollYLoad = _this46.scrollYLoad,
17466
- scrollXStore = _this46.scrollXStore,
17467
- scrollYStore = _this46.scrollYStore; // 计算 X 逻辑
18393
+ var sYOpts = _this47.sYOpts,
18394
+ sXOpts = _this47.sXOpts,
18395
+ scrollXLoad = _this47.scrollXLoad,
18396
+ scrollYLoad = _this47.scrollYLoad,
18397
+ scrollXStore = _this47.scrollXStore,
18398
+ scrollYStore = _this47.scrollYStore; // 计算 X 逻辑
17468
18399
 
17469
18400
  if (scrollXLoad) {
17470
- var _computeVirtualX3 = computeVirtualX(_this46),
18401
+ var _computeVirtualX3 = computeVirtualX(_this47),
17471
18402
  visibleXSize = _computeVirtualX3.visibleSize;
17472
18403
 
17473
18404
  var offsetXSize = sXOpts.oSize ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.toNumber(sXOpts.oSize) : browse.msie ? 10 : browse.edge ? 5 : 0;
@@ -17475,13 +18406,13 @@ var Methods = {
17475
18406
  scrollXStore.visibleSize = visibleXSize;
17476
18407
  scrollXStore.endIndex = Math.max(scrollXStore.startIndex + scrollXStore.visibleSize + offsetXSize, scrollXStore.endIndex);
17477
18408
 
17478
- _this46.updateScrollXData();
18409
+ _this47.updateScrollXData();
17479
18410
  } else {
17480
- _this46.updateScrollXSpace();
18411
+ _this47.updateScrollXSpace();
17481
18412
  } // 计算 Y 逻辑
17482
18413
 
17483
18414
 
17484
- var _computeVirtualY = computeVirtualY(_this46),
18415
+ var _computeVirtualY = computeVirtualY(_this47),
17485
18416
  rowHeight = _computeVirtualY.rowHeight,
17486
18417
  visibleYSize = _computeVirtualY.visibleSize;
17487
18418
 
@@ -17493,14 +18424,14 @@ var Methods = {
17493
18424
  scrollYStore.visibleSize = visibleYSize;
17494
18425
  scrollYStore.endIndex = Math.max(scrollYStore.startIndex + visibleYSize + offsetYSize, scrollYStore.endIndex);
17495
18426
 
17496
- _this46.updateScrollYData();
18427
+ _this47.updateScrollYData();
17497
18428
  } else {
17498
- _this46.updateScrollYSpace();
18429
+ _this47.updateScrollYSpace();
17499
18430
  }
17500
18431
 
17501
- _this46.rowHeight = rowHeight;
18432
+ _this47.rowHeight = rowHeight;
17502
18433
 
17503
- _this46.$nextTick(_this46.updateStyle);
18434
+ _this47.$nextTick(_this47.updateStyle);
17504
18435
  });
17505
18436
  },
17506
18437
  handleTableColumn: function handleTableColumn() {
@@ -17614,7 +18545,7 @@ var Methods = {
17614
18545
  * @param {Number} scrollTop 上距离
17615
18546
  */
17616
18547
  scrollTo: function scrollTo(scrollLeft, scrollTop) {
17617
- var _this47 = this;
18548
+ var _this48 = this;
17618
18549
 
17619
18550
  var $refs = this.$refs;
17620
18551
  var tableBody = $refs.tableBody,
@@ -17635,7 +18566,7 @@ var Methods = {
17635
18566
  if (this.scrollXLoad || this.scrollYLoad) {
17636
18567
  return new Promise(function (resolve) {
17637
18568
  return setTimeout(function () {
17638
- return resolve(_this47.$nextTick());
18569
+ return resolve(_this48.$nextTick());
17639
18570
  }, 50);
17640
18571
  });
17641
18572
  }
@@ -17686,7 +18617,7 @@ var Methods = {
17686
18617
  * @param {Row} row 行对象
17687
18618
  */
17688
18619
  scrollToTreeRow: function scrollToTreeRow(row) {
17689
- var _this48 = this;
18620
+ var _this49 = this;
17690
18621
 
17691
18622
  var tableFullData = this.tableFullData,
17692
18623
  treeConfig = this.treeConfig,
@@ -17701,15 +18632,15 @@ var Methods = {
17701
18632
  if (matchObj) {
17702
18633
  var nodes = matchObj.nodes;
17703
18634
  nodes.forEach(function (row, index) {
17704
- if (index < nodes.length - 1 && !_this48.isTreeExpandByRow(row)) {
17705
- rests.push(_this48.setTreeExpand(row, true));
18635
+ if (index < nodes.length - 1 && !_this49.isTreeExpandByRow(row)) {
18636
+ rests.push(_this49.setTreeExpand(row, true));
17706
18637
  }
17707
18638
  });
17708
18639
  }
17709
18640
  }
17710
18641
 
17711
18642
  return Promise.all(rests).then(function () {
17712
- return DomTools.rowToVisible(_this48, row);
18643
+ return DomTools.rowToVisible(_this49, row);
17713
18644
  });
17714
18645
  },
17715
18646
 
@@ -17773,29 +18704,29 @@ var Methods = {
17773
18704
  * 如果单元格配置了校验规则,则会进行校验
17774
18705
  */
17775
18706
  updateStatus: function updateStatus(scope, cellValue) {
17776
- var _this49 = this;
18707
+ var _this50 = this;
17777
18708
 
17778
18709
  var customVal = !external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.isUndefined(cellValue);
17779
18710
  return this.$nextTick().then(function () {
17780
- var $refs = _this49.$refs,
17781
- editRules = _this49.editRules,
17782
- validStore = _this49.validStore;
18711
+ var $refs = _this50.$refs,
18712
+ editRules = _this50.editRules,
18713
+ validStore = _this50.validStore;
17783
18714
 
17784
18715
  if (scope && $refs.tableBody && editRules) {
17785
18716
  var row = scope.row,
17786
18717
  column = scope.column;
17787
18718
  var type = 'change';
17788
18719
 
17789
- if (_this49.hasCellRules(type, row, column)) {
17790
- var cell = _this49.getCell(row, column);
18720
+ if (_this50.hasCellRules(type, row, column)) {
18721
+ var cell = _this50.getCell(row, column);
17791
18722
 
17792
18723
  if (cell) {
17793
- return _this49.validCellRules(type, row, column, cellValue).then(function () {
18724
+ return _this50.validCellRules(type, row, column, cellValue).then(function () {
17794
18725
  if (customVal && validStore.visible) {
17795
18726
  methods_setCellValue(row, column, cellValue);
17796
18727
  }
17797
18728
 
17798
- _this49.clearValidate();
18729
+ _this50.clearValidate();
17799
18730
  }).catch(function (_ref7) {
17800
18731
  var rule = _ref7.rule;
17801
18732
 
@@ -17803,7 +18734,7 @@ var Methods = {
17803
18734
  methods_setCellValue(row, column, cellValue);
17804
18735
  }
17805
18736
 
17806
- _this49.showValidTooltip({
18737
+ _this50.showValidTooltip({
17807
18738
  rule: rule,
17808
18739
  row: row,
17809
18740
  column: column,
@@ -17824,7 +18755,7 @@ var Methods = {
17824
18755
  * @param {TableMergeConfig[]} merges { row: Row|number, column: ColumnInfo|number, rowspan: number, colspan: number }
17825
18756
  */
17826
18757
  setMergeCells: function setMergeCells(merges) {
17827
- var _this50 = this;
18758
+ var _this51 = this;
17828
18759
 
17829
18760
  if (this.spanMethod) {
17830
18761
  UtilTools.error('vxe.error.errConflicts', ['merge-cells', 'span-method']);
@@ -17832,7 +18763,7 @@ var Methods = {
17832
18763
 
17833
18764
  setMerges(this, merges, this.mergeList, this.afterFullData);
17834
18765
  return this.$nextTick().then(function () {
17835
- return _this50.updateCellAreas();
18766
+ return _this51.updateCellAreas();
17836
18767
  });
17837
18768
  },
17838
18769
 
@@ -17841,7 +18772,7 @@ var Methods = {
17841
18772
  * @param {TableMergeConfig[]} merges 多个或数组 [{row:Row|number, col:ColumnInfo|number}]
17842
18773
  */
17843
18774
  removeMergeCells: function removeMergeCells(merges) {
17844
- var _this51 = this;
18775
+ var _this52 = this;
17845
18776
 
17846
18777
  if (this.spanMethod) {
17847
18778
  UtilTools.error('vxe.error.errConflicts', ['merge-cells', 'span-method']);
@@ -17849,7 +18780,7 @@ var Methods = {
17849
18780
 
17850
18781
  var rest = removeMerges(this, merges, this.mergeList, this.afterFullData);
17851
18782
  return this.$nextTick().then(function () {
17852
- _this51.updateCellAreas();
18783
+ _this52.updateCellAreas();
17853
18784
 
17854
18785
  return rest;
17855
18786
  });
@@ -17873,7 +18804,7 @@ var Methods = {
17873
18804
  this.setMergeFooterItems(this.mergeFooterItems);
17874
18805
  },
17875
18806
  setMergeFooterItems: function setMergeFooterItems(merges) {
17876
- var _this52 = this;
18807
+ var _this53 = this;
17877
18808
 
17878
18809
  if (this.footerSpanMethod) {
17879
18810
  UtilTools.error('vxe.error.errConflicts', ['merge-footer-items', 'footer-span-method']);
@@ -17881,11 +18812,11 @@ var Methods = {
17881
18812
 
17882
18813
  setMerges(this, merges, this.mergeFooterList, null);
17883
18814
  return this.$nextTick().then(function () {
17884
- return _this52.updateCellAreas();
18815
+ return _this53.updateCellAreas();
17885
18816
  });
17886
18817
  },
17887
18818
  removeMergeFooterItems: function removeMergeFooterItems(merges) {
17888
- var _this53 = this;
18819
+ var _this54 = this;
17889
18820
 
17890
18821
  if (this.footerSpanMethod) {
17891
18822
  UtilTools.error('vxe.error.errConflicts', ['merge-footer-items', 'footer-span-method']);
@@ -17893,7 +18824,7 @@ var Methods = {
17893
18824
 
17894
18825
  var rest = removeMerges(this, merges, this.mergeFooterList, null);
17895
18826
  return this.$nextTick().then(function () {
17896
- _this53.updateCellAreas();
18827
+ _this54.updateCellAreas();
17897
18828
 
17898
18829
  return rest;
17899
18830
  });
@@ -18030,7 +18961,7 @@ var Methods = {
18030
18961
 
18031
18962
  }; // Module methods
18032
18963
 
18033
- var funcs = 'setFilter,clearFilter,getCheckedFilters,closeMenu,setActiveCellArea,getActiveCellArea,getCellAreas,clearCellAreas,copyCellArea,cutCellArea,pasteCellArea,getCopyCellArea,clearCopyCellArea,setCellAreas,openFind,openReplace,getSelectedCell,clearSelected,insert,insertAt,remove,removeCheckboxRow,removeRadioRow,removeCurrentRow,getRecordset,getInsertRecords,getRemoveRecords,getUpdateRecords,clearActived,getActiveRecord,isActiveByRow,setActiveRow,setActiveCell,setSelectCell,clearValidate,fullValidate,validate,openExport,openPrint,exportData,openImport,importData,saveFile,readFile,importByFile,print'.split(',');
18964
+ var funcs = 'setFilter,openFilter,clearFilter,getCheckedFilters,closeMenu,setActiveCellArea,getActiveCellArea,getCellAreas,clearCellAreas,copyCellArea,cutCellArea,pasteCellArea,getCopyCellArea,clearCopyCellArea,setCellAreas,openFind,openReplace,getSelectedCell,clearSelected,insert,insertAt,remove,removeCheckboxRow,removeRadioRow,removeCurrentRow,getRecordset,getInsertRecords,getRemoveRecords,getUpdateRecords,clearActived,getActiveRecord,isActiveByRow,setActiveRow,setActiveCell,setSelectCell,clearValidate,fullValidate,validate,openExport,openPrint,exportData,openImport,importData,saveFile,readFile,importByFile,print'.split(',');
18034
18965
  funcs.forEach(function (name) {
18035
18966
  Methods[name] = function () {
18036
18967
  if (false) {}
@@ -18058,6 +18989,8 @@ funcs.forEach(function (name) {
18058
18989
 
18059
18990
 
18060
18991
 
18992
+
18993
+
18061
18994
  /**
18062
18995
  * 渲染浮固定列
18063
18996
  * 分别渲染左边固定列和右边固定列
@@ -18228,35 +19161,35 @@ function handleUupdateResize(_vm) {
18228
19161
  return conf.table.showHeader;
18229
19162
  }
18230
19163
  },
18231
- // 是否要高亮当前选中行
19164
+ // (即将废弃)是否要高亮当前选中行
18232
19165
  highlightCurrentRow: {
18233
19166
  type: Boolean,
18234
19167
  default: function _default() {
18235
19168
  return conf.table.highlightCurrentRow;
18236
19169
  }
18237
19170
  },
18238
- // 鼠标移到行是否要高亮显示
19171
+ // (即将废弃)鼠标移到行是否要高亮显示
18239
19172
  highlightHoverRow: {
18240
19173
  type: Boolean,
18241
19174
  default: function _default() {
18242
19175
  return conf.table.highlightHoverRow;
18243
19176
  }
18244
19177
  },
18245
- // 是否要高亮当前选中列
19178
+ // (即将废弃)是否要高亮当前选中列
18246
19179
  highlightCurrentColumn: {
18247
19180
  type: Boolean,
18248
19181
  default: function _default() {
18249
19182
  return conf.table.highlightCurrentColumn;
18250
19183
  }
18251
19184
  },
18252
- // 鼠标移到列是否要高亮显示
19185
+ // (即将废弃)鼠标移到列是否要高亮显示
18253
19186
  highlightHoverColumn: {
18254
19187
  type: Boolean,
18255
19188
  default: function _default() {
18256
19189
  return conf.table.highlightHoverColumn;
18257
19190
  }
18258
19191
  },
18259
- // 激活单元格编辑时是否高亮显示
19192
+ // (即将废弃)激活单元格编辑时是否高亮显示
18260
19193
  highlightCell: Boolean,
18261
19194
  // 是否显示表尾合计
18262
19195
  showFooter: Boolean,
@@ -18404,7 +19337,7 @@ function handleUupdateResize(_vm) {
18404
19337
  scrollX: Object,
18405
19338
  // 纵向虚拟滚动配置项
18406
19339
  scrollY: Object,
18407
- // 优化相关
19340
+ // (即将废弃)优化相关
18408
19341
  animat: {
18409
19342
  type: Boolean,
18410
19343
  default: function _default() {
@@ -19322,6 +20255,7 @@ function handleUupdateResize(_vm) {
19322
20255
 
19323
20256
 
19324
20257
 
20258
+
19325
20259
  var Table = Object.assign(table, {
19326
20260
  install: function install(Vue) {
19327
20261
  if (typeof window !== 'undefined' && window.VXETableMixin) {
@@ -19358,6 +20292,7 @@ var Table = Object.assign(table, {
19358
20292
 
19359
20293
 
19360
20294
 
20295
+
19361
20296
  /* harmony default export */ var panel = ({
19362
20297
  name: 'VxeTableFilter',
19363
20298
  props: {
@@ -19569,8 +20504,32 @@ var Table = Object.assign(table, {
19569
20504
 
19570
20505
 
19571
20506
 
20507
+
19572
20508
  /* harmony default export */ var src_mixin = ({
19573
20509
  methods: {
20510
+ /**
20511
+ * 手动弹出筛选面板
20512
+ * @param column
20513
+ */
20514
+ _openFilter: function _openFilter(fieldOrColumn) {
20515
+ var column = handleFieldOrColumn(this, fieldOrColumn);
20516
+
20517
+ if (column && column.filters) {
20518
+ var elemStore = this.elemStore;
20519
+ var fixed = column.fixed;
20520
+ return this.scrollToColumn(column).then(function () {
20521
+ var headerWrapperElem = elemStore["".concat(fixed || 'main', "-header-wrapper")] || elemStore['main-header-wrapper'];
20522
+
20523
+ if (headerWrapperElem) {
20524
+ var filterBtnElem = headerWrapperElem.querySelector(".vxe-header--column.".concat(column.id, " .vxe-filter--btn"));
20525
+ DomTools.triggerEvent(filterBtnElem, 'click');
20526
+ }
20527
+ });
20528
+ }
20529
+
20530
+ return this.$nextTick();
20531
+ },
20532
+
19574
20533
  /**
19575
20534
  * 修改筛选条件列表
19576
20535
  * @param {ColumnInfo} fieldOrColumn 列
@@ -19676,7 +20635,7 @@ var Table = Object.assign(table, {
19676
20635
  var maxHeight = null;
19677
20636
 
19678
20637
  if (filterHeight >= bodyElem.clientHeight) {
19679
- maxHeight = Math.max(40, bodyElem.clientHeight - (filterFootElem ? filterFootElem.offsetHeight : 0) - (filterHeadElem ? filterHeadElem.offsetHeight : 0));
20638
+ maxHeight = Math.max(60, bodyElem.clientHeight - (filterFootElem ? filterFootElem.offsetHeight : 0) - (filterHeadElem ? filterHeadElem.offsetHeight : 0));
19680
20639
  }
19681
20640
 
19682
20641
  if (column.fixed === 'left') {
@@ -19991,6 +20950,7 @@ var Filter = {
19991
20950
 
19992
20951
 
19993
20952
 
20953
+
19994
20954
  /* harmony default export */ var menu_src_mixin = ({
19995
20955
  methods: {
19996
20956
  /**
@@ -20380,10 +21340,11 @@ var Menu = {
20380
21340
 
20381
21341
 
20382
21342
 
21343
+
20383
21344
  var mixin_getRowid = UtilTools.getRowid;
20384
21345
 
20385
21346
  function insertTreeRow(_vm, newRecords, isAppend) {
20386
- var treeFullData = _vm.treeFullData,
21347
+ var tableFullTreeData = _vm.tableFullTreeData,
20387
21348
  afterFullData = _vm.afterFullData,
20388
21349
  fullDataRowIdData = _vm.fullDataRowIdData,
20389
21350
  fullAllDataRowIdData = _vm.fullAllDataRowIdData,
@@ -20392,7 +21353,7 @@ function insertTreeRow(_vm, newRecords, isAppend) {
20392
21353
  newRecords.forEach(function (item) {
20393
21354
  var parentRowId = item[treeOpts.parentField];
20394
21355
  var rowid = mixin_getRowid(_vm, item);
20395
- var matchObj = parentRowId ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.findTree(treeFullData, function (item) {
21356
+ var matchObj = parentRowId ? external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.findTree(tableFullTreeData, function (item) {
20396
21357
  return parentRowId === item[treeOpts.rowField];
20397
21358
  }, treeOpts) : null;
20398
21359
 
@@ -20410,6 +21371,7 @@ function insertTreeRow(_vm, newRecords, isAppend) {
20410
21371
  var rest = {
20411
21372
  row: item,
20412
21373
  rowid: rowid,
21374
+ seq: -1,
20413
21375
  index: -1,
20414
21376
  _index: -1,
20415
21377
  $index: -1,
@@ -20423,14 +21385,15 @@ function insertTreeRow(_vm, newRecords, isAppend) {
20423
21385
  if (false) {}
20424
21386
 
20425
21387
  afterFullData[funcName](item);
20426
- treeFullData[funcName](item);
21388
+ tableFullTreeData[funcName](item);
20427
21389
  var _rest = {
20428
21390
  row: item,
20429
21391
  rowid: rowid,
21392
+ seq: -1,
20430
21393
  index: -1,
20431
21394
  _index: -1,
20432
21395
  $index: -1,
20433
- items: treeFullData,
21396
+ items: tableFullTreeData,
20434
21397
  parent: null,
20435
21398
  level: 0
20436
21399
  };
@@ -20438,8 +21401,6 @@ function insertTreeRow(_vm, newRecords, isAppend) {
20438
21401
  fullAllDataRowIdData[rowid] = _rest;
20439
21402
  }
20440
21403
  });
20441
-
20442
- _vm.updateVirtualTreeData();
20443
21404
  }
20444
21405
 
20445
21406
  /* harmony default export */ var edit_src_mixin = ({
@@ -20465,12 +21426,10 @@ function insertTreeRow(_vm, newRecords, isAppend) {
20465
21426
  var _this = this,
20466
21427
  _editStore$insertList;
20467
21428
 
20468
- var treeFullData = this.treeFullData,
21429
+ var tableFullTreeData = this.tableFullTreeData,
20469
21430
  mergeList = this.mergeList,
20470
21431
  afterFullData = this.afterFullData,
20471
21432
  editStore = this.editStore,
20472
- sYOpts = this.sYOpts,
20473
- scrollYLoad = this.scrollYLoad,
20474
21433
  tableFullData = this.tableFullData,
20475
21434
  treeConfig = this.treeConfig,
20476
21435
  fullDataRowIdData = this.fullDataRowIdData,
@@ -20523,7 +21482,7 @@ function insertTreeRow(_vm, newRecords, isAppend) {
20523
21482
  } else {
20524
21483
  // 如果为虚拟树
20525
21484
  if (treeConfig && transform) {
20526
- var matchObj = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.findTree(treeFullData, function (item) {
21485
+ var matchObj = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.findTree(tableFullTreeData, function (item) {
20527
21486
  return row[treeOpts.rowField] === item[treeOpts.rowField];
20528
21487
  }, treeOpts);
20529
21488
 
@@ -20545,6 +21504,7 @@ function insertTreeRow(_vm, newRecords, isAppend) {
20545
21504
  var rest = {
20546
21505
  row: item,
20547
21506
  rowid: rowid,
21507
+ seq: -1,
20548
21508
  index: -1,
20549
21509
  _index: -1,
20550
21510
  $index: -1,
@@ -20555,7 +21515,6 @@ function insertTreeRow(_vm, newRecords, isAppend) {
20555
21515
  fullDataRowIdData[rowid] = rest;
20556
21516
  fullAllDataRowIdData[rowid] = rest;
20557
21517
  });
20558
- this.updateVirtualTreeData();
20559
21518
  } else {
20560
21519
  if (false) {}
20561
21520
 
@@ -20591,13 +21550,13 @@ function insertTreeRow(_vm, newRecords, isAppend) {
20591
21550
 
20592
21551
  (_editStore$insertList = editStore.insertList).unshift.apply(_editStore$insertList, _toConsumableArray(newRecords));
20593
21552
 
20594
- this.scrollYLoad = !treeConfig && sYOpts.gt > -1 && sYOpts.gt < tableFullData.length;
20595
- this.handleTableData(transform);
21553
+ this.handleTableData(treeConfig && treeOpts.transform);
20596
21554
  this.updateFooter();
20597
21555
  this.cacheRowMap();
21556
+ this.updateAfterDataIndex();
20598
21557
  this.checkSelectionStatus();
20599
21558
 
20600
- if (scrollYLoad) {
21559
+ if (this.scrollYLoad) {
20601
21560
  this.updateScrollYSpace();
20602
21561
  }
20603
21562
 
@@ -20624,15 +21583,13 @@ function insertTreeRow(_vm, newRecords, isAppend) {
20624
21583
 
20625
21584
  var afterFullData = this.afterFullData,
20626
21585
  tableFullData = this.tableFullData,
20627
- treeFullData = this.treeFullData,
21586
+ tableFullTreeData = this.tableFullTreeData,
20628
21587
  treeConfig = this.treeConfig,
20629
21588
  mergeList = this.mergeList,
20630
21589
  editStore = this.editStore,
20631
21590
  checkboxOpts = this.checkboxOpts,
20632
21591
  selection = this.selection,
20633
21592
  isInsertByRow = this.isInsertByRow,
20634
- sYOpts = this.sYOpts,
20635
- scrollYLoad = this.scrollYLoad,
20636
21593
  treeOpts = this.treeOpts;
20637
21594
  var transform = treeOpts.transform;
20638
21595
  var actived = editStore.actived,
@@ -20675,7 +21632,7 @@ function insertTreeRow(_vm, newRecords, isAppend) {
20675
21632
  if (treeConfig && transform) {
20676
21633
  rows.forEach(function (row) {
20677
21634
  var rowid = mixin_getRowid(_this2, row);
20678
- var matchObj = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.findTree(treeFullData, function (item) {
21635
+ var matchObj = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.findTree(tableFullTreeData, function (item) {
20679
21636
  return rowid === mixin_getRowid(_this2, item);
20680
21637
  }, treeOpts);
20681
21638
 
@@ -20689,8 +21646,6 @@ function insertTreeRow(_vm, newRecords, isAppend) {
20689
21646
  if (afIndex > -1) {
20690
21647
  afterFullData.splice(afIndex, 1);
20691
21648
  }
20692
-
20693
- _this2.updateVirtualTreeData();
20694
21649
  });
20695
21650
  } else {
20696
21651
  rows.forEach(function (row) {
@@ -20734,13 +21689,13 @@ function insertTreeRow(_vm, newRecords, isAppend) {
20734
21689
  insertList.splice(iIndex, 1);
20735
21690
  }
20736
21691
  });
20737
- this.scrollYLoad = !treeConfig && sYOpts.gt > -1 && sYOpts.gt < tableFullData.length;
20738
- this.handleTableData(transform);
21692
+ this.handleTableData(treeConfig && treeOpts.transform);
20739
21693
  this.updateFooter();
20740
21694
  this.cacheRowMap();
21695
+ this.updateAfterDataIndex();
20741
21696
  this.checkSelectionStatus();
20742
21697
 
20743
- if (scrollYLoad) {
21698
+ if (this.scrollYLoad) {
20744
21699
  this.updateScrollYSpace();
20745
21700
  }
20746
21701
 
@@ -20815,7 +21770,7 @@ function insertTreeRow(_vm, newRecords, isAppend) {
20815
21770
  var _this6 = this;
20816
21771
 
20817
21772
  var treeConfig = this.treeConfig,
20818
- treeFullData = this.treeFullData,
21773
+ tableFullTreeData = this.tableFullTreeData,
20819
21774
  tableFullData = this.tableFullData,
20820
21775
  treeOpts = this.treeOpts;
20821
21776
  var insertList = this.editStore.insertList;
@@ -20826,7 +21781,7 @@ function insertTreeRow(_vm, newRecords, isAppend) {
20826
21781
  if (treeConfig && treeOpts.transform) {
20827
21782
  insertList.forEach(function (row) {
20828
21783
  var rowid = mixin_getRowid(_this6, row);
20829
- var matchObj = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.findTree(treeFullData, function (item) {
21784
+ var matchObj = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.findTree(tableFullTreeData, function (item) {
20830
21785
  return rowid === mixin_getRowid(_this6, item);
20831
21786
  }, treeOpts);
20832
21787
 
@@ -21313,6 +22268,7 @@ function _arrayWithHoles(arr) {
21313
22268
 
21314
22269
 
21315
22270
 
22271
+
21316
22272
  function _iterableToArrayLimit(arr, i) {
21317
22273
  var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
21318
22274
 
@@ -21369,6 +22325,8 @@ function _slicedToArray(arr, i) {
21369
22325
 
21370
22326
 
21371
22327
 
22328
+
22329
+
21372
22330
  var allActivedModals = [];
21373
22331
  var msgQueue = [];
21374
22332
  /* harmony default export */ var modal = ({
@@ -22569,6 +23527,7 @@ var es_string_pad_start = __webpack_require__("4d90");
22569
23527
 
22570
23528
 
22571
23529
 
23530
+
22572
23531
  var yearSize = 20;
22573
23532
  var monthSize = 20;
22574
23533
  var quarterSize = 8;
@@ -25107,6 +26066,7 @@ function renderExtraSuffixIcon(h, _vm) {
25107
26066
 
25108
26067
 
25109
26068
 
26069
+
25110
26070
  function isOptionVisible(option) {
25111
26071
  return option.visible !== false;
25112
26072
  }
@@ -25116,7 +26076,7 @@ function getOptUniqueId() {
25116
26076
  }
25117
26077
 
25118
26078
  function getOptkey(_vm) {
25119
- return _vm.optionId || '_XID';
26079
+ return _vm.optionId || '_X_ID';
25120
26080
  }
25121
26081
 
25122
26082
  function getOptid(_vm, option) {
@@ -26001,6 +26961,7 @@ function select_renderOpts(h, _vm) {
26001
26961
 
26002
26962
 
26003
26963
 
26964
+
26004
26965
  var util_OptionConfig = /*#__PURE__*/function () {
26005
26966
  function OptionConfig($xeselect, _vm) {
26006
26967
  _classCallCheck(this, OptionConfig);
@@ -26125,6 +27086,7 @@ Object.keys(option_props).forEach(function (name) {
26125
27086
 
26126
27087
 
26127
27088
 
27089
+
26128
27090
  /* harmony default export */ var export_panel = ({
26129
27091
  name: 'VxeExportPanel',
26130
27092
  props: {
@@ -26664,6 +27626,7 @@ Object.keys(option_props).forEach(function (name) {
26664
27626
 
26665
27627
 
26666
27628
 
27629
+
26667
27630
  /* harmony default export */ var import_panel = ({
26668
27631
  name: 'VxeImportPanel',
26669
27632
  props: {
@@ -26871,6 +27834,10 @@ var es_string_repeat = __webpack_require__("38cf");
26871
27834
 
26872
27835
 
26873
27836
 
27837
+
27838
+
27839
+
27840
+
26874
27841
 
26875
27842
 
26876
27843
 
@@ -26909,15 +27876,24 @@ function hasTreeChildren($xetable, row) {
26909
27876
  return row[treeOpts.children] && row[treeOpts.children].length > 0;
26910
27877
  }
26911
27878
 
26912
- function getSeq($xetable, row, rowIndex, column, columnIndex) {
27879
+ function getSeq($xetable, row, rowIndex, column, columnIndex, path) {
26913
27880
  var seqOpts = $xetable.seqOpts;
26914
27881
  var seqMethod = seqOpts.seqMethod || column.seqMethod;
26915
- return seqMethod ? seqMethod({
26916
- row: row,
26917
- rowIndex: rowIndex,
26918
- column: column,
26919
- columnIndex: columnIndex
26920
- }) : seqOpts.startIndex + rowIndex + 1;
27882
+
27883
+ if (seqMethod) {
27884
+ return seqMethod({
27885
+ row: row,
27886
+ rowIndex: rowIndex,
27887
+ column: column,
27888
+ columnIndex: columnIndex
27889
+ });
27890
+ }
27891
+
27892
+ if (path) {
27893
+ return toTreePathSeq(path);
27894
+ }
27895
+
27896
+ return seqOpts.startIndex + rowIndex + 1;
26921
27897
  }
26922
27898
 
26923
27899
  function defaultFilterExportColumn(column) {
@@ -26954,11 +27930,12 @@ function getLabelData($xetable, opts, columns, datas) {
26954
27930
  if (treeConfig) {
26955
27931
  // 如果是树表格只允许导出数据源
26956
27932
  var rest = [];
27933
+ var expandMaps = new Map();
26957
27934
  external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.eachTree(datas, function (item, rowIndex, items, path, parent, nodes) {
26958
27935
  var row = item._row || item;
26959
27936
  var parentRow = parent && parent._row ? parent._row : parent;
26960
27937
 
26961
- if (isAllExpand || !parentRow || $xetable.isTreeExpandByRow(parentRow)) {
27938
+ if (isAllExpand || !parentRow || expandMaps.has(parentRow) && $xetable.isTreeExpandByRow(parentRow)) {
26962
27939
  var hasRowChild = hasTreeChildren($xetable, row);
26963
27940
  var _item = {
26964
27941
  _row: row,
@@ -26989,7 +27966,7 @@ function getLabelData($xetable, opts, columns, datas) {
26989
27966
  } else {
26990
27967
  switch (column.type) {
26991
27968
  case 'seq':
26992
- cellValue = getSeq($xetable, row, rowIndex, column, columnIndex);
27969
+ cellValue = getSeq($xetable, row, rowIndex, column, columnIndex, path);
26993
27970
  break;
26994
27971
 
26995
27972
  case 'checkbox':
@@ -27031,6 +28008,7 @@ function getLabelData($xetable, opts, columns, datas) {
27031
28008
 
27032
28009
  _item[column.id] = external_root_XEUtils_commonjs_xe_utils_commonjs2_xe_utils_amd_xe_utils_default.a.toValueString(cellValue);
27033
28010
  });
28011
+ expandMaps.set(row, 1);
27034
28012
  rest.push(Object.assign(_item, row));
27035
28013
  }
27036
28014
  }, treeOpts);
@@ -27064,7 +28042,7 @@ function getLabelData($xetable, opts, columns, datas) {
27064
28042
  } else {
27065
28043
  switch (column.type) {
27066
28044
  case 'seq':
27067
- cellValue = getSeq($xetable, row, rowIndex, column, columnIndex);
28045
+ cellValue = getSeq($xetable, row, rowIndex, column, columnIndex, null);
27068
28046
  break;
27069
28047
 
27070
28048
  case 'checkbox':
@@ -27172,6 +28150,10 @@ function getFooterData(opts, footerTableData) {
27172
28150
 
27173
28151
  function getCsvCellTypeLabel(column, cellValue) {
27174
28152
  if (cellValue) {
28153
+ if (column.type === 'seq') {
28154
+ return "\t".concat(cellValue);
28155
+ }
28156
+
27175
28157
  switch (column.cellType) {
27176
28158
  case 'string':
27177
28159
  if (!isNaN(cellValue)) {
@@ -28719,6 +29701,7 @@ var convertToRows = function convertToRows(originColumns) {
28719
29701
 
28720
29702
 
28721
29703
 
29704
+
28722
29705
  function print(options) {
28723
29706
  var opts = Object.assign({}, options, {
28724
29707
  type: 'html'
@@ -28757,6 +29740,7 @@ var Export = {
28757
29740
 
28758
29741
 
28759
29742
 
29743
+
28760
29744
  function getTargetOffset(target, container) {
28761
29745
  var offsetTop = 0;
28762
29746
  var offsetLeft = 0;
@@ -29245,6 +30229,9 @@ var Keyboard = {
29245
30229
 
29246
30230
 
29247
30231
 
30232
+
30233
+
30234
+
29248
30235
  /**
29249
30236
  * 校验规则
29250
30237
  */
@@ -29443,7 +30430,7 @@ function validErrorRuleValue(rule, val) {
29443
30430
  var ruleProps = Object.keys(validRest);
29444
30431
  return _this2.$nextTick().then(function () {
29445
30432
  if (ruleProps.length) {
29446
- return Promise.reject(validRest[ruleProps[0]][0]);
30433
+ return validRest[ruleProps[0]][0];
29447
30434
  }
29448
30435
 
29449
30436
  if (cb) {
@@ -29451,14 +30438,14 @@ function validErrorRuleValue(rule, val) {
29451
30438
  }
29452
30439
  });
29453
30440
  }).catch(function (firstErrParams) {
29454
- return new Promise(function (resolve, reject) {
30441
+ return new Promise(function (resolve) {
29455
30442
  var finish = function finish() {
29456
30443
  _this2.$nextTick(function () {
29457
30444
  if (cb) {
29458
30445
  cb(validRest);
29459
30446
  resolve();
29460
30447
  } else {
29461
- reject(validRest);
30448
+ resolve(validRest);
29462
30449
  }
29463
30450
  });
29464
30451
  };
@@ -30142,6 +31129,7 @@ var cellType = 'header';
30142
31129
  // CONCATENATED MODULE: ./packages/header/index.js
30143
31130
 
30144
31131
 
31132
+
30145
31133
  var Header = Object.assign(header, {
30146
31134
  install: function install(Vue) {
30147
31135
  Vue.component(header.name, header);
@@ -30155,6 +31143,7 @@ var Header = Object.assign(header, {
30155
31143
 
30156
31144
 
30157
31145
 
31146
+
30158
31147
  var footer_cellType = 'footer';
30159
31148
 
30160
31149
  function mergeFooterMethod(mergeFooterList, _rowIndex, _columnIndex) {
@@ -30503,6 +31492,7 @@ function mergeFooterMethod(mergeFooterList, _rowIndex, _columnIndex) {
30503
31492
  // CONCATENATED MODULE: ./packages/footer/index.js
30504
31493
 
30505
31494
 
31495
+
30506
31496
  var Footer = Object.assign(footer, {
30507
31497
  install: function install(Vue) {
30508
31498
  Vue.component(footer.name, footer);
@@ -30660,6 +31650,7 @@ Object.keys(column_props).forEach(function (name) {
30660
31650
  // CONCATENATED MODULE: ./packages/column/index.js
30661
31651
 
30662
31652
 
31653
+
30663
31654
  var Column = Object.assign(src_column, {
30664
31655
  install: function install(Vue) {
30665
31656
  Vue.component(src_column.name, src_column); // 兼容旧用法
@@ -30683,6 +31674,7 @@ var Column = Object.assign(src_column, {
30683
31674
  // CONCATENATED MODULE: ./packages/colgroup/index.js
30684
31675
 
30685
31676
 
31677
+
30686
31678
  var Colgroup = Object.assign(src_group, {
30687
31679
  install: function install(Vue) {
30688
31680
  Vue.component(src_group.name, src_group); // 兼容旧用法
@@ -30709,6 +31701,8 @@ var Colgroup = Object.assign(src_group, {
30709
31701
 
30710
31702
 
30711
31703
 
31704
+
31705
+
30712
31706
  var grid_methods = {};
30713
31707
  var propKeys = Object.keys(packages_table.props);
30714
31708
 
@@ -31561,7 +32555,12 @@ Object.keys(packages_table.methods).forEach(function (name) {
31561
32555
  } // 只校验新增和修改的数据
31562
32556
 
31563
32557
 
31564
- return this.validate(_body.insertRecords.concat(updateRecords)).then(function () {
32558
+ return this.validate(_body.insertRecords.concat(updateRecords)).then(function (errMap) {
32559
+ if (errMap) {
32560
+ // 如果校验不通过
32561
+ return;
32562
+ }
32563
+
31565
32564
  if (_body.insertRecords.length || _removeRecords.length || updateRecords.length || _body.pendingRecords.length) {
31566
32565
  _this5.tableLoading = true;
31567
32566
  return Promise.resolve((beforeSave || _ajaxMethods2).apply(void 0, _toConsumableArray(_applyArgs2))).then(function (rest) {
@@ -31609,8 +32608,6 @@ Object.keys(packages_table.methods).forEach(function (name) {
31609
32608
  });
31610
32609
  }
31611
32610
  }
31612
- }).catch(function (errMap) {
31613
- return errMap;
31614
32611
  });
31615
32612
  } else {
31616
32613
  if (false) {}
@@ -31905,6 +32902,7 @@ Object.keys(packages_table.methods).forEach(function (name) {
31905
32902
 
31906
32903
 
31907
32904
 
32905
+
31908
32906
  var Grid = Object.assign(grid, {
31909
32907
  install: function install(Vue) {
31910
32908
  v_x_e_table.Grid = grid;
@@ -31926,6 +32924,8 @@ var Grid = Object.assign(grid, {
31926
32924
 
31927
32925
 
31928
32926
 
32927
+
32928
+
31929
32929
  var renderDropdowns = function renderDropdowns(h, _vm, item, isBtn) {
31930
32930
  var _e = _vm._e;
31931
32931
  var dropdowns = item.dropdowns;
@@ -32697,6 +33697,7 @@ function renderCustoms(h, _vm) {
32697
33697
  // CONCATENATED MODULE: ./packages/toolbar/index.js
32698
33698
 
32699
33699
 
33700
+
32700
33701
  var Toolbar = Object.assign(src_toolbar, {
32701
33702
  install: function install(Vue) {
32702
33703
  Vue.component(src_toolbar.name, src_toolbar);
@@ -33186,6 +34187,7 @@ var Toolbar = Object.assign(src_toolbar, {
33186
34187
  // CONCATENATED MODULE: ./packages/pager/index.js
33187
34188
 
33188
34189
 
34190
+
33189
34191
  var Pager = Object.assign(pager, {
33190
34192
  install: function install(Vue) {
33191
34193
  Vue.component(pager.name, pager);
@@ -33195,6 +34197,7 @@ var Pager = Object.assign(pager, {
33195
34197
  // CONCATENATED MODULE: ./packages/checkbox/index.js
33196
34198
 
33197
34199
 
34200
+
33198
34201
  var Checkbox = Object.assign(src_checkbox, {
33199
34202
  install: function install(Vue) {
33200
34203
  Vue.component(src_checkbox.name, src_checkbox);
@@ -33204,6 +34207,7 @@ var Checkbox = Object.assign(src_checkbox, {
33204
34207
  // CONCATENATED MODULE: ./packages/checkbox/src/group.js
33205
34208
 
33206
34209
 
34210
+
33207
34211
  /* harmony default export */ var checkbox_src_group = ({
33208
34212
  name: 'VxeCheckboxGroup',
33209
34213
  props: {
@@ -33257,6 +34261,7 @@ var Checkbox = Object.assign(src_checkbox, {
33257
34261
  // CONCATENATED MODULE: ./packages/checkbox-group/index.js
33258
34262
 
33259
34263
 
34264
+
33260
34265
  var CheckboxGroup = Object.assign(checkbox_src_group, {
33261
34266
  install: function install(Vue) {
33262
34267
  Vue.component(checkbox_src_group.name, checkbox_src_group);
@@ -33266,6 +34271,7 @@ var CheckboxGroup = Object.assign(checkbox_src_group, {
33266
34271
  // CONCATENATED MODULE: ./packages/radio/index.js
33267
34272
 
33268
34273
 
34274
+
33269
34275
  var Radio = Object.assign(src_radio, {
33270
34276
  install: function install(Vue) {
33271
34277
  Vue.component(src_radio.name, src_radio);
@@ -33319,6 +34325,7 @@ var Radio = Object.assign(src_radio, {
33319
34325
  // CONCATENATED MODULE: ./packages/radio-group/index.js
33320
34326
 
33321
34327
 
34328
+
33322
34329
  var RadioGroup = Object.assign(radio_src_group, {
33323
34330
  install: function install(Vue) {
33324
34331
  Vue.component(radio_src_group.name, radio_src_group);
@@ -33422,6 +34429,7 @@ var RadioGroup = Object.assign(radio_src_group, {
33422
34429
  // CONCATENATED MODULE: ./packages/radio-button/index.js
33423
34430
 
33424
34431
 
34432
+
33425
34433
  var RadioButton = Object.assign(src_button, {
33426
34434
  install: function install(Vue) {
33427
34435
  Vue.component(src_button.name, src_button);
@@ -33431,6 +34439,7 @@ var RadioButton = Object.assign(src_button, {
33431
34439
  // CONCATENATED MODULE: ./packages/input/index.js
33432
34440
 
33433
34441
 
34442
+
33434
34443
  var Input = Object.assign(input, {
33435
34444
  install: function install(Vue) {
33436
34445
  Vue.component(input.name, input);
@@ -33449,6 +34458,7 @@ var Input = Object.assign(input, {
33449
34458
 
33450
34459
 
33451
34460
 
34461
+
33452
34462
  var autoTxtElem;
33453
34463
  /* harmony default export */ var src_textarea = ({
33454
34464
  name: 'VxeTextarea',
@@ -33717,6 +34727,7 @@ var autoTxtElem;
33717
34727
  // CONCATENATED MODULE: ./packages/textarea/index.js
33718
34728
 
33719
34729
 
34730
+
33720
34731
  var Textarea = Object.assign(src_textarea, {
33721
34732
  install: function install(Vue) {
33722
34733
  Vue.component(src_textarea.name, src_textarea);
@@ -33732,6 +34743,7 @@ var Textarea = Object.assign(src_textarea, {
33732
34743
 
33733
34744
 
33734
34745
 
34746
+
33735
34747
  /* harmony default export */ var button_src_button = ({
33736
34748
  name: 'VxeButton',
33737
34749
  mixins: [size],
@@ -34039,48 +35051,49 @@ var Textarea = Object.assign(src_textarea, {
34039
35051
  };
34040
35052
 
34041
35053
  var _DomTools$getAbsolute = DomTools.getAbsolutePos(targetElem),
35054
+ top = _DomTools$getAbsolute.top,
35055
+ left = _DomTools$getAbsolute.left,
34042
35056
  boundingTop = _DomTools$getAbsolute.boundingTop,
34043
- boundingLeft = _DomTools$getAbsolute.boundingLeft,
34044
35057
  visibleHeight = _DomTools$getAbsolute.visibleHeight,
34045
35058
  visibleWidth = _DomTools$getAbsolute.visibleWidth;
34046
35059
 
34047
35060
  var panelPlacement = 'bottom';
34048
35061
 
34049
35062
  if (transfer) {
34050
- var left = boundingLeft + targetWidth - panelWidth;
34051
- var top = boundingTop + targetHeight;
35063
+ var btnLeft = left + targetWidth - panelWidth;
35064
+ var btnTop = top + targetHeight;
34052
35065
 
34053
35066
  if (placement === 'top') {
34054
35067
  panelPlacement = 'top';
34055
- top = boundingTop - panelHeight;
35068
+ btnTop = top - panelHeight;
34056
35069
  } else if (!placement) {
34057
35070
  // 如果下面不够放,则向上
34058
- if (top + panelHeight + marginSize > visibleHeight) {
35071
+ if (boundingTop + targetHeight + panelHeight + marginSize > visibleHeight) {
34059
35072
  panelPlacement = 'top';
34060
- top = boundingTop - panelHeight;
35073
+ btnTop = top - panelHeight;
34061
35074
  } // 如果上面不够放,则向下(优先)
34062
35075
 
34063
35076
 
34064
- if (top < marginSize) {
35077
+ if (btnTop < marginSize) {
34065
35078
  panelPlacement = 'bottom';
34066
- top = boundingTop + targetHeight;
35079
+ btnTop = top + targetHeight;
34067
35080
  }
34068
35081
  } // 如果溢出右边
34069
35082
 
34070
35083
 
34071
- if (left + panelWidth + marginSize > visibleWidth) {
34072
- left -= left + panelWidth + marginSize - visibleWidth;
35084
+ if (btnLeft + panelWidth + marginSize > visibleWidth) {
35085
+ btnLeft -= btnLeft + panelWidth + marginSize - visibleWidth;
34073
35086
  } // 如果溢出左边
34074
35087
 
34075
35088
 
34076
- if (left < marginSize) {
34077
- left = marginSize;
35089
+ if (btnLeft < marginSize) {
35090
+ btnLeft = marginSize;
34078
35091
  }
34079
35092
 
34080
35093
  Object.assign(panelStyle, {
34081
- left: "".concat(left, "px"),
35094
+ left: "".concat(btnLeft, "px"),
34082
35095
  right: 'auto',
34083
- top: "".concat(top, "px"),
35096
+ top: "".concat(btnTop, "px"),
34084
35097
  minWidth: "".concat(targetWidth, "px")
34085
35098
  });
34086
35099
  } else {
@@ -34118,6 +35131,7 @@ var Textarea = Object.assign(src_textarea, {
34118
35131
  // CONCATENATED MODULE: ./packages/button/index.js
34119
35132
 
34120
35133
 
35134
+
34121
35135
  var Button = Object.assign(button_src_button, {
34122
35136
  install: function install(Vue) {
34123
35137
  Vue.component(button_src_button.name, button_src_button);
@@ -34132,6 +35146,8 @@ var Button = Object.assign(button_src_button, {
34132
35146
 
34133
35147
 
34134
35148
 
35149
+
35150
+
34135
35151
  /* eslint-disable @typescript-eslint/no-use-before-define */
34136
35152
 
34137
35153
  var ModalClass = null;
@@ -34267,6 +35283,7 @@ var Modal = Object.assign(modal, {
34267
35283
 
34268
35284
 
34269
35285
 
35286
+
34270
35287
  function updateTipStyle(_vm) {
34271
35288
  var wrapperElem = _vm.$el,
34272
35289
  tipTarget = _vm.tipTarget,
@@ -34587,6 +35604,7 @@ function updateTipStyle(_vm) {
34587
35604
 
34588
35605
 
34589
35606
 
35607
+
34590
35608
  var Tooltip = Object.assign(src_tooltip, {
34591
35609
  install: function install(Vue) {
34592
35610
  v_x_e_table._tooltip = 1;
@@ -34603,6 +35621,7 @@ var Tooltip = Object.assign(src_tooltip, {
34603
35621
 
34604
35622
 
34605
35623
 
35624
+
34606
35625
  var util_ItemConfig = /*#__PURE__*/function () {
34607
35626
  function ItemConfig($xeform, item) {
34608
35627
  _classCallCheck(this, ItemConfig);
@@ -34780,6 +35799,9 @@ function renderTitle(h, _vm, item) {
34780
35799
 
34781
35800
 
34782
35801
 
35802
+
35803
+
35804
+
34783
35805
 
34784
35806
 
34785
35807
 
@@ -35612,6 +36634,7 @@ function renderItems(h, _vm, itemList) {
35612
36634
  // CONCATENATED MODULE: ./packages/form/index.js
35613
36635
 
35614
36636
 
36637
+
35615
36638
  var Form = Object.assign(src_form, {
35616
36639
  install: function install(Vue) {
35617
36640
  Vue.component(src_form.name, src_form);
@@ -35801,6 +36824,7 @@ var form_item_renderItem = function renderItem(h, _vm, item, slots) {
35801
36824
  // CONCATENATED MODULE: ./packages/form-item/index.js
35802
36825
 
35803
36826
 
36827
+
35804
36828
  var FormItem = Object.assign(form_item, {
35805
36829
  install: function install(Vue) {
35806
36830
  Vue.component(form_item.name, form_item);
@@ -35830,6 +36854,7 @@ var FormItem = Object.assign(form_item, {
35830
36854
  // CONCATENATED MODULE: ./packages/form-gather/index.js
35831
36855
 
35832
36856
 
36857
+
35833
36858
  var FormGather = Object.assign(form_gather, {
35834
36859
  install: function install(Vue) {
35835
36860
  Vue.component(form_gather.name, form_gather);
@@ -35896,6 +36921,7 @@ Object.keys(optgroup_props).forEach(function (name) {
35896
36921
 
35897
36922
 
35898
36923
 
36924
+
35899
36925
  var Select = Object.assign(src_select, {
35900
36926
  Option: src_option,
35901
36927
  Optgroup: optgroup,
@@ -35909,6 +36935,7 @@ var Select = Object.assign(src_select, {
35909
36935
  // CONCATENATED MODULE: ./packages/optgroup/index.js
35910
36936
 
35911
36937
 
36938
+
35912
36939
  var Optgroup = Object.assign(optgroup, {
35913
36940
  install: function install(Vue) {
35914
36941
  Vue.component(optgroup.name, optgroup);
@@ -35918,6 +36945,7 @@ var Optgroup = Object.assign(optgroup, {
35918
36945
  // CONCATENATED MODULE: ./packages/option/index.js
35919
36946
 
35920
36947
 
36948
+
35921
36949
  var Option = Object.assign(src_option, {
35922
36950
  install: function install(Vue) {
35923
36951
  Vue.component(src_option.name, src_option);
@@ -36072,6 +37100,7 @@ var Option = Object.assign(src_option, {
36072
37100
  // CONCATENATED MODULE: ./packages/switch/index.js
36073
37101
 
36074
37102
 
37103
+
36075
37104
  var Switch = Object.assign(src_switch, {
36076
37105
  install: function install(Vue) {
36077
37106
  Vue.component(src_switch.name, src_switch);
@@ -36087,6 +37116,8 @@ var Switch = Object.assign(src_switch, {
36087
37116
 
36088
37117
 
36089
37118
 
37119
+
37120
+
36090
37121
  /* harmony default export */ var src_list = ({
36091
37122
  name: 'VxeList',
36092
37123
  mixins: [size],
@@ -36453,6 +37484,7 @@ var Switch = Object.assign(src_switch, {
36453
37484
  // CONCATENATED MODULE: ./packages/list/index.js
36454
37485
 
36455
37486
 
37487
+
36456
37488
  var List = Object.assign(src_list, {
36457
37489
  install: function install(Vue) {
36458
37490
  Vue.component(src_list.name, src_list);
@@ -36465,6 +37497,8 @@ var List = Object.assign(src_list, {
36465
37497
 
36466
37498
 
36467
37499
 
37500
+
37501
+
36468
37502
  /* harmony default export */ var pulldown = ({
36469
37503
  name: 'VxePulldown',
36470
37504
  mixins: [size],
@@ -36765,6 +37799,7 @@ var List = Object.assign(src_list, {
36765
37799
  // CONCATENATED MODULE: ./packages/pulldown/index.js
36766
37800
 
36767
37801
 
37802
+
36768
37803
  var Pulldown = Object.assign(pulldown, {
36769
37804
  install: function install(Vue) {
36770
37805
  Vue.component(pulldown.name, pulldown);
@@ -37333,7 +38368,18 @@ module.exports = NATIVE_SYMBOL
37333
38368
  && typeof Symbol.iterator == 'symbol';
37334
38369
 
37335
38370
 
38371
+ /***/ }),
38372
+
38373
+ /***/ "fea9":
38374
+ /***/ (function(module, exports, __webpack_require__) {
38375
+
38376
+ var global = __webpack_require__("da84");
38377
+
38378
+ module.exports = global.Promise;
38379
+
38380
+
37336
38381
  /***/ })
37337
38382
 
37338
38383
  /******/ });
37339
- });
38384
+ });
38385
+ //# sourceMappingURL=index.umd.js.map