@revolist/revogrid 3.0.99 → 3.1.0

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 (40) hide show
  1. package/custom-element/index.js +475 -300
  2. package/dist/cjs/debounce-e9b040d9.js +575 -0
  3. package/dist/cjs/loader.cjs.js +1 -1
  4. package/dist/cjs/revo-grid.cjs.js +1 -1
  5. package/dist/cjs/revo-grid_11.cjs.entry.js +159 -634
  6. package/dist/cjs/revogr-filter-panel.cjs.entry.js +158 -43
  7. package/dist/collection/components/revo-grid/revo-grid.js +1 -1
  8. package/dist/collection/plugins/filter/conditions/equal.js +5 -1
  9. package/dist/collection/plugins/filter/filter.button.js +10 -0
  10. package/dist/collection/plugins/filter/filter.plugin.js +93 -47
  11. package/dist/collection/plugins/filter/filter.pop.js +196 -47
  12. package/dist/collection/plugins/filter/filter.style.css +51 -4
  13. package/dist/esm/debounce-8dadcda7.js +558 -0
  14. package/dist/esm/loader.js +1 -1
  15. package/dist/esm/revo-grid.js +1 -1
  16. package/dist/esm/revo-grid_11.entry.js +113 -588
  17. package/dist/esm/revogr-filter-panel.entry.js +157 -42
  18. package/dist/esm-es5/debounce-8dadcda7.js +1 -0
  19. package/dist/esm-es5/loader.js +1 -1
  20. package/dist/esm-es5/revo-grid.js +1 -1
  21. package/dist/esm-es5/revo-grid_11.entry.js +1 -1
  22. package/dist/esm-es5/revogr-filter-panel.entry.js +1 -1
  23. package/dist/revo-grid/debounce-d097578d.js +1 -0
  24. package/dist/revo-grid/debounce-f40a88f6.system.js +1 -0
  25. package/dist/revo-grid/revo-grid.esm.js +1 -1
  26. package/dist/revo-grid/revo-grid.system.js +1 -1
  27. package/dist/revo-grid/revo-grid_11.entry.js +1 -1
  28. package/dist/revo-grid/revo-grid_11.system.entry.js +1 -1
  29. package/dist/revo-grid/revogr-filter-panel.entry.js +1 -1
  30. package/dist/revo-grid/revogr-filter-panel.system.entry.js +1 -1
  31. package/dist/types/components.d.ts +4 -2
  32. package/dist/types/plugins/filter/filter.button.d.ts +4 -0
  33. package/dist/types/plugins/filter/filter.plugin.d.ts +5 -8
  34. package/dist/types/plugins/filter/filter.pop.d.ts +26 -7
  35. package/package.json +1 -1
  36. package/dist/cjs/filter.button-2396a488.js +0 -27
  37. package/dist/esm/filter.button-53ebca66.js +0 -23
  38. package/dist/esm-es5/filter.button-53ebca66.js +0 -1
  39. package/dist/revo-grid/filter.button-1509c206.js +0 -1
  40. package/dist/revo-grid/filter.button-4bd87101.system.js +0 -1
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-d3f67f2e.js');
6
- const filter_button = require('./filter.button-2396a488.js');
6
+ const debounce$1 = require('./debounce-e9b040d9.js');
7
7
 
8
8
  class ThemeCompact {
9
9
  constructor() {
@@ -153,163 +153,6 @@ function baseTimes(n, iteratee) {
153
153
 
154
154
  var _baseTimes = baseTimes;
155
155
 
156
- var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
157
-
158
- function createCommonjsModule(fn, basedir, module) {
159
- return module = {
160
- path: basedir,
161
- exports: {},
162
- require: function (path, base) {
163
- return commonjsRequire();
164
- }
165
- }, fn(module, module.exports), module.exports;
166
- }
167
-
168
- function commonjsRequire () {
169
- throw new Error('Dynamic requires are not currently supported by @rollup/plugin-commonjs');
170
- }
171
-
172
- /** Detect free variable `global` from Node.js. */
173
- var freeGlobal = typeof commonjsGlobal == 'object' && commonjsGlobal && commonjsGlobal.Object === Object && commonjsGlobal;
174
-
175
- var _freeGlobal = freeGlobal;
176
-
177
- /** Detect free variable `self`. */
178
- var freeSelf = typeof self == 'object' && self && self.Object === Object && self;
179
-
180
- /** Used as a reference to the global object. */
181
- var root = _freeGlobal || freeSelf || Function('return this')();
182
-
183
- var _root = root;
184
-
185
- /** Built-in value references. */
186
- var Symbol = _root.Symbol;
187
-
188
- var _Symbol = Symbol;
189
-
190
- /** Used for built-in method references. */
191
- var objectProto$b = Object.prototype;
192
-
193
- /** Used to check objects for own properties. */
194
- var hasOwnProperty$8 = objectProto$b.hasOwnProperty;
195
-
196
- /**
197
- * Used to resolve the
198
- * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
199
- * of values.
200
- */
201
- var nativeObjectToString$1 = objectProto$b.toString;
202
-
203
- /** Built-in value references. */
204
- var symToStringTag$1 = _Symbol ? _Symbol.toStringTag : undefined;
205
-
206
- /**
207
- * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.
208
- *
209
- * @private
210
- * @param {*} value The value to query.
211
- * @returns {string} Returns the raw `toStringTag`.
212
- */
213
- function getRawTag(value) {
214
- var isOwn = hasOwnProperty$8.call(value, symToStringTag$1),
215
- tag = value[symToStringTag$1];
216
-
217
- try {
218
- value[symToStringTag$1] = undefined;
219
- var unmasked = true;
220
- } catch (e) {}
221
-
222
- var result = nativeObjectToString$1.call(value);
223
- if (unmasked) {
224
- if (isOwn) {
225
- value[symToStringTag$1] = tag;
226
- } else {
227
- delete value[symToStringTag$1];
228
- }
229
- }
230
- return result;
231
- }
232
-
233
- var _getRawTag = getRawTag;
234
-
235
- /** Used for built-in method references. */
236
- var objectProto$a = Object.prototype;
237
-
238
- /**
239
- * Used to resolve the
240
- * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
241
- * of values.
242
- */
243
- var nativeObjectToString = objectProto$a.toString;
244
-
245
- /**
246
- * Converts `value` to a string using `Object.prototype.toString`.
247
- *
248
- * @private
249
- * @param {*} value The value to convert.
250
- * @returns {string} Returns the converted string.
251
- */
252
- function objectToString(value) {
253
- return nativeObjectToString.call(value);
254
- }
255
-
256
- var _objectToString = objectToString;
257
-
258
- /** `Object#toString` result references. */
259
- var nullTag = '[object Null]',
260
- undefinedTag = '[object Undefined]';
261
-
262
- /** Built-in value references. */
263
- var symToStringTag = _Symbol ? _Symbol.toStringTag : undefined;
264
-
265
- /**
266
- * The base implementation of `getTag` without fallbacks for buggy environments.
267
- *
268
- * @private
269
- * @param {*} value The value to query.
270
- * @returns {string} Returns the `toStringTag`.
271
- */
272
- function baseGetTag(value) {
273
- if (value == null) {
274
- return value === undefined ? undefinedTag : nullTag;
275
- }
276
- return (symToStringTag && symToStringTag in Object(value))
277
- ? _getRawTag(value)
278
- : _objectToString(value);
279
- }
280
-
281
- var _baseGetTag = baseGetTag;
282
-
283
- /**
284
- * Checks if `value` is object-like. A value is object-like if it's not `null`
285
- * and has a `typeof` result of "object".
286
- *
287
- * @static
288
- * @memberOf _
289
- * @since 4.0.0
290
- * @category Lang
291
- * @param {*} value The value to check.
292
- * @returns {boolean} Returns `true` if `value` is object-like, else `false`.
293
- * @example
294
- *
295
- * _.isObjectLike({});
296
- * // => true
297
- *
298
- * _.isObjectLike([1, 2, 3]);
299
- * // => true
300
- *
301
- * _.isObjectLike(_.noop);
302
- * // => false
303
- *
304
- * _.isObjectLike(null);
305
- * // => false
306
- */
307
- function isObjectLike(value) {
308
- return value != null && typeof value == 'object';
309
- }
310
-
311
- var isObjectLike_1 = isObjectLike;
312
-
313
156
  /** `Object#toString` result references. */
314
157
  var argsTag$2 = '[object Arguments]';
315
158
 
@@ -321,7 +164,7 @@ var argsTag$2 = '[object Arguments]';
321
164
  * @returns {boolean} Returns `true` if `value` is an `arguments` object,
322
165
  */
323
166
  function baseIsArguments(value) {
324
- return isObjectLike_1(value) && _baseGetTag(value) == argsTag$2;
167
+ return debounce$1.isObjectLike_1(value) && debounce$1._baseGetTag(value) == argsTag$2;
325
168
  }
326
169
 
327
170
  var _baseIsArguments = baseIsArguments;
@@ -354,7 +197,7 @@ var propertyIsEnumerable$1 = objectProto$9.propertyIsEnumerable;
354
197
  * // => false
355
198
  */
356
199
  var isArguments = _baseIsArguments(function() { return arguments; }()) ? _baseIsArguments : function(value) {
357
- return isObjectLike_1(value) && hasOwnProperty$7.call(value, 'callee') &&
200
+ return debounce$1.isObjectLike_1(value) && hasOwnProperty$7.call(value, 'callee') &&
358
201
  !propertyIsEnumerable$1.call(value, 'callee');
359
202
  };
360
203
 
@@ -406,7 +249,7 @@ function stubFalse() {
406
249
 
407
250
  var stubFalse_1 = stubFalse;
408
251
 
409
- var isBuffer_1 = createCommonjsModule(function (module, exports) {
252
+ var isBuffer_1 = debounce$1.createCommonjsModule(function (module, exports) {
410
253
  /** Detect free variable `exports`. */
411
254
  var freeExports = exports && !exports.nodeType && exports;
412
255
 
@@ -417,7 +260,7 @@ var freeModule = freeExports && 'object' == 'object' && module && !module.nodeTy
417
260
  var moduleExports = freeModule && freeModule.exports === freeExports;
418
261
 
419
262
  /** Built-in value references. */
420
- var Buffer = moduleExports ? _root.Buffer : undefined;
263
+ var Buffer = moduleExports ? debounce$1._root.Buffer : undefined;
421
264
 
422
265
  /* Built-in method references for those with the same name as other `lodash` methods. */
423
266
  var nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined;
@@ -557,8 +400,8 @@ typedArrayTags[weakMapTag$1] = false;
557
400
  * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.
558
401
  */
559
402
  function baseIsTypedArray(value) {
560
- return isObjectLike_1(value) &&
561
- isLength_1(value.length) && !!typedArrayTags[_baseGetTag(value)];
403
+ return debounce$1.isObjectLike_1(value) &&
404
+ isLength_1(value.length) && !!typedArrayTags[debounce$1._baseGetTag(value)];
562
405
  }
563
406
 
564
407
  var _baseIsTypedArray = baseIsTypedArray;
@@ -578,7 +421,7 @@ function baseUnary(func) {
578
421
 
579
422
  var _baseUnary = baseUnary;
580
423
 
581
- var _nodeUtil = createCommonjsModule(function (module, exports) {
424
+ var _nodeUtil = debounce$1.createCommonjsModule(function (module, exports) {
582
425
  /** Detect free variable `exports`. */
583
426
  var freeExports = exports && !exports.nodeType && exports;
584
427
 
@@ -589,7 +432,7 @@ var freeModule = freeExports && 'object' == 'object' && module && !module.nodeTy
589
432
  var moduleExports = freeModule && freeModule.exports === freeExports;
590
433
 
591
434
  /** Detect free variable `process` from Node.js. */
592
- var freeProcess = moduleExports && _freeGlobal.process;
435
+ var freeProcess = moduleExports && debounce$1._freeGlobal.process;
593
436
 
594
437
  /** Used to access faster Node.js helpers. */
595
438
  var nodeUtil = (function() {
@@ -744,38 +587,6 @@ function baseKeys(object) {
744
587
 
745
588
  var _baseKeys = baseKeys;
746
589
 
747
- /**
748
- * Checks if `value` is the
749
- * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)
750
- * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)
751
- *
752
- * @static
753
- * @memberOf _
754
- * @since 0.1.0
755
- * @category Lang
756
- * @param {*} value The value to check.
757
- * @returns {boolean} Returns `true` if `value` is an object, else `false`.
758
- * @example
759
- *
760
- * _.isObject({});
761
- * // => true
762
- *
763
- * _.isObject([1, 2, 3]);
764
- * // => true
765
- *
766
- * _.isObject(_.noop);
767
- * // => true
768
- *
769
- * _.isObject(null);
770
- * // => false
771
- */
772
- function isObject(value) {
773
- var type = typeof value;
774
- return value != null && (type == 'object' || type == 'function');
775
- }
776
-
777
- var isObject_1 = isObject;
778
-
779
590
  /** `Object#toString` result references. */
780
591
  var asyncTag = '[object AsyncFunction]',
781
592
  funcTag = '[object Function]',
@@ -800,12 +611,12 @@ var asyncTag = '[object AsyncFunction]',
800
611
  * // => false
801
612
  */
802
613
  function isFunction(value) {
803
- if (!isObject_1(value)) {
614
+ if (!debounce$1.isObject_1(value)) {
804
615
  return false;
805
616
  }
806
617
  // The use of `Object#toString` avoids issues with the `typeof` operator
807
618
  // in Safari 9 which returns 'object' for typed arrays and other constructors.
808
- var tag = _baseGetTag(value);
619
+ var tag = debounce$1._baseGetTag(value);
809
620
  return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;
810
621
  }
811
622
 
@@ -1188,7 +999,7 @@ function stackHas(key) {
1188
999
  var _stackHas = stackHas;
1189
1000
 
1190
1001
  /** Used to detect overreaching core-js shims. */
1191
- var coreJsData = _root['__core-js_shared__'];
1002
+ var coreJsData = debounce$1._root['__core-js_shared__'];
1192
1003
 
1193
1004
  var _coreJsData = coreJsData;
1194
1005
 
@@ -1272,7 +1083,7 @@ var reIsNative = RegExp('^' +
1272
1083
  * else `false`.
1273
1084
  */
1274
1085
  function baseIsNative(value) {
1275
- if (!isObject_1(value) || _isMasked(value)) {
1086
+ if (!debounce$1.isObject_1(value) || _isMasked(value)) {
1276
1087
  return false;
1277
1088
  }
1278
1089
  var pattern = isFunction_1(value) ? reIsNative : reIsHostCtor;
@@ -1311,7 +1122,7 @@ function getNative(object, key) {
1311
1122
  var _getNative = getNative;
1312
1123
 
1313
1124
  /* Built-in method references that are verified to be native. */
1314
- var Map$1 = _getNative(_root, 'Map');
1125
+ var Map$1 = _getNative(debounce$1._root, 'Map');
1315
1126
 
1316
1127
  var _Map = Map$1;
1317
1128
 
@@ -1829,7 +1640,7 @@ function equalArrays(array, other, bitmask, customizer, equalFunc, stack) {
1829
1640
  var _equalArrays = equalArrays;
1830
1641
 
1831
1642
  /** Built-in value references. */
1832
- var Uint8Array = _root.Uint8Array;
1643
+ var Uint8Array = debounce$1._root.Uint8Array;
1833
1644
 
1834
1645
  var _Uint8Array = Uint8Array;
1835
1646
 
@@ -1884,13 +1695,13 @@ var boolTag = '[object Boolean]',
1884
1695
  regexpTag = '[object RegExp]',
1885
1696
  setTag$2 = '[object Set]',
1886
1697
  stringTag$1 = '[object String]',
1887
- symbolTag$1 = '[object Symbol]';
1698
+ symbolTag = '[object Symbol]';
1888
1699
 
1889
1700
  var arrayBufferTag = '[object ArrayBuffer]',
1890
1701
  dataViewTag$1 = '[object DataView]';
1891
1702
 
1892
1703
  /** Used to convert symbols to primitives and strings. */
1893
- var symbolProto$1 = _Symbol ? _Symbol.prototype : undefined,
1704
+ var symbolProto$1 = debounce$1._Symbol ? debounce$1._Symbol.prototype : undefined,
1894
1705
  symbolValueOf = symbolProto$1 ? symbolProto$1.valueOf : undefined;
1895
1706
 
1896
1707
  /**
@@ -1967,7 +1778,7 @@ function equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) {
1967
1778
  stack['delete'](object);
1968
1779
  return result;
1969
1780
 
1970
- case symbolTag$1:
1781
+ case symbolTag:
1971
1782
  if (symbolValueOf) {
1972
1783
  return symbolValueOf.call(object) == symbolValueOf.call(other);
1973
1784
  }
@@ -2197,22 +2008,22 @@ function equalObjects(object, other, bitmask, customizer, equalFunc, stack) {
2197
2008
  var _equalObjects = equalObjects;
2198
2009
 
2199
2010
  /* Built-in method references that are verified to be native. */
2200
- var DataView = _getNative(_root, 'DataView');
2011
+ var DataView = _getNative(debounce$1._root, 'DataView');
2201
2012
 
2202
2013
  var _DataView = DataView;
2203
2014
 
2204
2015
  /* Built-in method references that are verified to be native. */
2205
- var Promise$1 = _getNative(_root, 'Promise');
2016
+ var Promise$1 = _getNative(debounce$1._root, 'Promise');
2206
2017
 
2207
2018
  var _Promise = Promise$1;
2208
2019
 
2209
2020
  /* Built-in method references that are verified to be native. */
2210
- var Set = _getNative(_root, 'Set');
2021
+ var Set = _getNative(debounce$1._root, 'Set');
2211
2022
 
2212
2023
  var _Set = Set;
2213
2024
 
2214
2025
  /* Built-in method references that are verified to be native. */
2215
- var WeakMap = _getNative(_root, 'WeakMap');
2026
+ var WeakMap = _getNative(debounce$1._root, 'WeakMap');
2216
2027
 
2217
2028
  var _WeakMap = WeakMap;
2218
2029
 
@@ -2239,7 +2050,7 @@ var dataViewCtorString = _toSource(_DataView),
2239
2050
  * @param {*} value The value to query.
2240
2051
  * @returns {string} Returns the `toStringTag`.
2241
2052
  */
2242
- var getTag = _baseGetTag;
2053
+ var getTag = debounce$1._baseGetTag;
2243
2054
 
2244
2055
  // Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6.
2245
2056
  if ((_DataView && getTag(new _DataView(new ArrayBuffer(1))) != dataViewTag) ||
@@ -2248,7 +2059,7 @@ if ((_DataView && getTag(new _DataView(new ArrayBuffer(1))) != dataViewTag) ||
2248
2059
  (_Set && getTag(new _Set) != setTag$1) ||
2249
2060
  (_WeakMap && getTag(new _WeakMap) != weakMapTag)) {
2250
2061
  getTag = function(value) {
2251
- var result = _baseGetTag(value),
2062
+ var result = debounce$1._baseGetTag(value),
2252
2063
  Ctor = result == objectTag$1 ? value.constructor : undefined,
2253
2064
  ctorString = Ctor ? _toSource(Ctor) : '';
2254
2065
 
@@ -2360,7 +2171,7 @@ function baseIsEqual(value, other, bitmask, customizer, stack) {
2360
2171
  if (value === other) {
2361
2172
  return true;
2362
2173
  }
2363
- if (value == null || other == null || (!isObjectLike_1(value) && !isObjectLike_1(other))) {
2174
+ if (value == null || other == null || (!debounce$1.isObjectLike_1(value) && !debounce$1.isObjectLike_1(other))) {
2364
2175
  return value !== value && other !== other;
2365
2176
  }
2366
2177
  return _baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack);
@@ -2437,7 +2248,7 @@ var _baseIsMatch = baseIsMatch;
2437
2248
  * equality comparisons, else `false`.
2438
2249
  */
2439
2250
  function isStrictComparable(value) {
2440
- return value === value && !isObject_1(value);
2251
+ return value === value && !debounce$1.isObject_1(value);
2441
2252
  }
2442
2253
 
2443
2254
  var _isStrictComparable = isStrictComparable;
@@ -2504,33 +2315,6 @@ function baseMatches(source) {
2504
2315
 
2505
2316
  var _baseMatches = baseMatches;
2506
2317
 
2507
- /** `Object#toString` result references. */
2508
- var symbolTag = '[object Symbol]';
2509
-
2510
- /**
2511
- * Checks if `value` is classified as a `Symbol` primitive or object.
2512
- *
2513
- * @static
2514
- * @memberOf _
2515
- * @since 4.0.0
2516
- * @category Lang
2517
- * @param {*} value The value to check.
2518
- * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.
2519
- * @example
2520
- *
2521
- * _.isSymbol(Symbol.iterator);
2522
- * // => true
2523
- *
2524
- * _.isSymbol('abc');
2525
- * // => false
2526
- */
2527
- function isSymbol(value) {
2528
- return typeof value == 'symbol' ||
2529
- (isObjectLike_1(value) && _baseGetTag(value) == symbolTag);
2530
- }
2531
-
2532
- var isSymbol_1 = isSymbol;
2533
-
2534
2318
  /** Used to match property names within property paths. */
2535
2319
  var reIsDeepProp = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,
2536
2320
  reIsPlainProp = /^\w*$/;
@@ -2549,7 +2333,7 @@ function isKey(value, object) {
2549
2333
  }
2550
2334
  var type = typeof value;
2551
2335
  if (type == 'number' || type == 'symbol' || type == 'boolean' ||
2552
- value == null || isSymbol_1(value)) {
2336
+ value == null || debounce$1.isSymbol_1(value)) {
2553
2337
  return true;
2554
2338
  }
2555
2339
  return reIsPlainProp.test(value) || !reIsDeepProp.test(value) ||
@@ -2559,7 +2343,7 @@ function isKey(value, object) {
2559
2343
  var _isKey = isKey;
2560
2344
 
2561
2345
  /** Error message constants. */
2562
- var FUNC_ERROR_TEXT$2 = 'Expected a function';
2346
+ var FUNC_ERROR_TEXT$1 = 'Expected a function';
2563
2347
 
2564
2348
  /**
2565
2349
  * Creates a function that memoizes the result of `func`. If `resolver` is
@@ -2607,7 +2391,7 @@ var FUNC_ERROR_TEXT$2 = 'Expected a function';
2607
2391
  */
2608
2392
  function memoize(func, resolver) {
2609
2393
  if (typeof func != 'function' || (resolver != null && typeof resolver != 'function')) {
2610
- throw new TypeError(FUNC_ERROR_TEXT$2);
2394
+ throw new TypeError(FUNC_ERROR_TEXT$1);
2611
2395
  }
2612
2396
  var memoized = function() {
2613
2397
  var args = arguments,
@@ -2707,7 +2491,7 @@ var _arrayMap = arrayMap;
2707
2491
  var INFINITY$2 = 1 / 0;
2708
2492
 
2709
2493
  /** Used to convert symbols to primitives and strings. */
2710
- var symbolProto = _Symbol ? _Symbol.prototype : undefined,
2494
+ var symbolProto = debounce$1._Symbol ? debounce$1._Symbol.prototype : undefined,
2711
2495
  symbolToString = symbolProto ? symbolProto.toString : undefined;
2712
2496
 
2713
2497
  /**
@@ -2727,7 +2511,7 @@ function baseToString(value) {
2727
2511
  // Recursively convert values (susceptible to call stack limits).
2728
2512
  return _arrayMap(value, baseToString) + '';
2729
2513
  }
2730
- if (isSymbol_1(value)) {
2514
+ if (debounce$1.isSymbol_1(value)) {
2731
2515
  return symbolToString ? symbolToString.call(value) : '';
2732
2516
  }
2733
2517
  var result = (value + '');
@@ -2791,7 +2575,7 @@ var INFINITY$1 = 1 / 0;
2791
2575
  * @returns {string|symbol} Returns the key.
2792
2576
  */
2793
2577
  function toKey(value) {
2794
- if (typeof value == 'string' || isSymbol_1(value)) {
2578
+ if (typeof value == 'string' || debounce$1.isSymbol_1(value)) {
2795
2579
  return value;
2796
2580
  }
2797
2581
  var result = (value + '');
@@ -3257,105 +3041,6 @@ function baseFindIndex(array, predicate, fromIndex, fromRight) {
3257
3041
 
3258
3042
  var _baseFindIndex = baseFindIndex;
3259
3043
 
3260
- /** Used to match a single whitespace character. */
3261
- var reWhitespace = /\s/;
3262
-
3263
- /**
3264
- * Used by `_.trim` and `_.trimEnd` to get the index of the last non-whitespace
3265
- * character of `string`.
3266
- *
3267
- * @private
3268
- * @param {string} string The string to inspect.
3269
- * @returns {number} Returns the index of the last non-whitespace character.
3270
- */
3271
- function trimmedEndIndex(string) {
3272
- var index = string.length;
3273
-
3274
- while (index-- && reWhitespace.test(string.charAt(index))) {}
3275
- return index;
3276
- }
3277
-
3278
- var _trimmedEndIndex = trimmedEndIndex;
3279
-
3280
- /** Used to match leading whitespace. */
3281
- var reTrimStart = /^\s+/;
3282
-
3283
- /**
3284
- * The base implementation of `_.trim`.
3285
- *
3286
- * @private
3287
- * @param {string} string The string to trim.
3288
- * @returns {string} Returns the trimmed string.
3289
- */
3290
- function baseTrim(string) {
3291
- return string
3292
- ? string.slice(0, _trimmedEndIndex(string) + 1).replace(reTrimStart, '')
3293
- : string;
3294
- }
3295
-
3296
- var _baseTrim = baseTrim;
3297
-
3298
- /** Used as references for various `Number` constants. */
3299
- var NAN = 0 / 0;
3300
-
3301
- /** Used to detect bad signed hexadecimal string values. */
3302
- var reIsBadHex = /^[-+]0x[0-9a-f]+$/i;
3303
-
3304
- /** Used to detect binary string values. */
3305
- var reIsBinary = /^0b[01]+$/i;
3306
-
3307
- /** Used to detect octal string values. */
3308
- var reIsOctal = /^0o[0-7]+$/i;
3309
-
3310
- /** Built-in method references without a dependency on `root`. */
3311
- var freeParseInt = parseInt;
3312
-
3313
- /**
3314
- * Converts `value` to a number.
3315
- *
3316
- * @static
3317
- * @memberOf _
3318
- * @since 4.0.0
3319
- * @category Lang
3320
- * @param {*} value The value to process.
3321
- * @returns {number} Returns the number.
3322
- * @example
3323
- *
3324
- * _.toNumber(3.2);
3325
- * // => 3.2
3326
- *
3327
- * _.toNumber(Number.MIN_VALUE);
3328
- * // => 5e-324
3329
- *
3330
- * _.toNumber(Infinity);
3331
- * // => Infinity
3332
- *
3333
- * _.toNumber('3.2');
3334
- * // => 3.2
3335
- */
3336
- function toNumber(value) {
3337
- if (typeof value == 'number') {
3338
- return value;
3339
- }
3340
- if (isSymbol_1(value)) {
3341
- return NAN;
3342
- }
3343
- if (isObject_1(value)) {
3344
- var other = typeof value.valueOf == 'function' ? value.valueOf() : value;
3345
- value = isObject_1(other) ? (other + '') : other;
3346
- }
3347
- if (typeof value != 'string') {
3348
- return value === 0 ? value : +value;
3349
- }
3350
- value = _baseTrim(value);
3351
- var isBinary = reIsBinary.test(value);
3352
- return (isBinary || reIsOctal.test(value))
3353
- ? freeParseInt(value.slice(2), isBinary ? 2 : 8)
3354
- : (reIsBadHex.test(value) ? NAN : +value);
3355
- }
3356
-
3357
- var toNumber_1 = toNumber;
3358
-
3359
3044
  /** Used as references for various `Number` constants. */
3360
3045
  var INFINITY = 1 / 0,
3361
3046
  MAX_INTEGER = 1.7976931348623157e+308;
@@ -3387,7 +3072,7 @@ function toFinite(value) {
3387
3072
  if (!value) {
3388
3073
  return value === 0 ? value : 0;
3389
3074
  }
3390
- value = toNumber_1(value);
3075
+ value = debounce$1.toNumber_1(value);
3391
3076
  if (value === INFINITY || value === -INFINITY) {
3392
3077
  var sign = (value < 0 ? -1 : 1);
3393
3078
  return sign * MAX_INTEGER;
@@ -3433,7 +3118,7 @@ function toInteger(value) {
3433
3118
  var toInteger_1 = toInteger;
3434
3119
 
3435
3120
  /* Built-in method references for those with the same name as other `lodash` methods. */
3436
- var nativeMax$3 = Math.max;
3121
+ var nativeMax$2 = Math.max;
3437
3122
 
3438
3123
  /**
3439
3124
  * This method is like `_.find` except that it returns the index of the first
@@ -3477,7 +3162,7 @@ function findIndex(array, predicate, fromIndex) {
3477
3162
  }
3478
3163
  var index = fromIndex == null ? 0 : toInteger_1(fromIndex);
3479
3164
  if (index < 0) {
3480
- index = nativeMax$3(length + index, 0);
3165
+ index = nativeMax$2(length + index, 0);
3481
3166
  }
3482
3167
  return _baseFindIndex(array, _baseIteratee(predicate), index);
3483
3168
  }
@@ -3533,7 +3218,7 @@ const appendToMap = (map, propName, value) => {
3533
3218
  items.push(value);
3534
3219
  }
3535
3220
  };
3536
- const debounce$1 = (fn, ms) => {
3221
+ const debounce = (fn, ms) => {
3537
3222
  let timeoutId;
3538
3223
  return (...args) => {
3539
3224
  if (timeoutId) {
@@ -3556,7 +3241,7 @@ const debounce$1 = (fn, ms) => {
3556
3241
  * Better leak in Edge than to be useless.
3557
3242
  */
3558
3243
  const isConnected = (maybeElement) => !('isConnected' in maybeElement) || maybeElement.isConnected;
3559
- const cleanupElements = debounce$1((map) => {
3244
+ const cleanupElements = debounce((map) => {
3560
3245
  for (let key of map.keys()) {
3561
3246
  map.set(key, map.get(key).filter(isConnected));
3562
3247
  }
@@ -3697,7 +3382,7 @@ const createStore = (defaultState, shouldUpdate) => {
3697
3382
 
3698
3383
  /* Built-in method references for those with the same name as other `lodash` methods. */
3699
3384
  var nativeCeil = Math.ceil,
3700
- nativeMax$2 = Math.max;
3385
+ nativeMax$1 = Math.max;
3701
3386
 
3702
3387
  /**
3703
3388
  * The base implementation of `_.range` and `_.rangeRight` which doesn't
@@ -3712,7 +3397,7 @@ var nativeCeil = Math.ceil,
3712
3397
  */
3713
3398
  function baseRange(start, end, step, fromRight) {
3714
3399
  var index = -1,
3715
- length = nativeMax$2(nativeCeil((end - start) / (step || 1)), 0),
3400
+ length = nativeMax$1(nativeCeil((end - start) / (step || 1)), 0),
3716
3401
  result = Array(length);
3717
3402
 
3718
3403
  while (length--) {
@@ -3735,7 +3420,7 @@ var _baseRange = baseRange;
3735
3420
  * else `false`.
3736
3421
  */
3737
3422
  function isIterateeCall(value, index, object) {
3738
- if (!isObject_1(object)) {
3423
+ if (!debounce$1.isObject_1(object)) {
3739
3424
  return false;
3740
3425
  }
3741
3426
  var type = typeof index;
@@ -4377,7 +4062,7 @@ var MAX_ARRAY_LENGTH$2 = 4294967295,
4377
4062
 
4378
4063
  /* Built-in method references for those with the same name as other `lodash` methods. */
4379
4064
  var nativeFloor = Math.floor,
4380
- nativeMin$1 = Math.min;
4065
+ nativeMin = Math.min;
4381
4066
 
4382
4067
  /**
4383
4068
  * The base implementation of `_.sortedIndexBy` and `_.sortedLastIndexBy`
@@ -4402,7 +4087,7 @@ function baseSortedIndexBy(array, value, iteratee, retHighest) {
4402
4087
  value = iteratee(value);
4403
4088
  var valIsNaN = value !== value,
4404
4089
  valIsNull = value === null,
4405
- valIsSymbol = isSymbol_1(value),
4090
+ valIsSymbol = debounce$1.isSymbol_1(value),
4406
4091
  valIsUndefined = value === undefined;
4407
4092
 
4408
4093
  while (low < high) {
@@ -4411,7 +4096,7 @@ function baseSortedIndexBy(array, value, iteratee, retHighest) {
4411
4096
  othIsDefined = computed !== undefined,
4412
4097
  othIsNull = computed === null,
4413
4098
  othIsReflexive = computed === computed,
4414
- othIsSymbol = isSymbol_1(computed);
4099
+ othIsSymbol = debounce$1.isSymbol_1(computed);
4415
4100
 
4416
4101
  if (valIsNaN) {
4417
4102
  var setLow = retHighest || othIsReflexive;
@@ -4432,7 +4117,7 @@ function baseSortedIndexBy(array, value, iteratee, retHighest) {
4432
4117
  high = mid;
4433
4118
  }
4434
4119
  }
4435
- return nativeMin$1(high, MAX_ARRAY_INDEX);
4120
+ return nativeMin(high, MAX_ARRAY_INDEX);
4436
4121
  }
4437
4122
 
4438
4123
  var _baseSortedIndexBy = baseSortedIndexBy;
@@ -4462,7 +4147,7 @@ function baseSortedIndex(array, value, retHighest) {
4462
4147
  var mid = (low + high) >>> 1,
4463
4148
  computed = array[mid];
4464
4149
 
4465
- if (computed !== null && !isSymbol_1(computed) &&
4150
+ if (computed !== null && !debounce$1.isSymbol_1(computed) &&
4466
4151
  (retHighest ? (computed <= value) : (computed < value))) {
4467
4152
  low = mid + 1;
4468
4153
  } else {
@@ -5342,7 +5027,11 @@ const eq = (value, extra) => {
5342
5027
  if (typeof value !== 'string') {
5343
5028
  value = JSON.stringify(value);
5344
5029
  }
5345
- return value.toLocaleLowerCase() === extra.toString().toLocaleLowerCase();
5030
+ const filterVal = extra.toString().toLocaleLowerCase();
5031
+ if (filterVal.length === 0) {
5032
+ return true;
5033
+ }
5034
+ return value.toLocaleLowerCase() === filterVal;
5346
5035
  };
5347
5036
  const notEq = (value, extra) => !eq(value, extra);
5348
5037
  notEq.extra = 'input';
@@ -5462,6 +5151,7 @@ class FilterPlugin extends BasePlugin {
5462
5151
  super(revogrid);
5463
5152
  this.revogrid = revogrid;
5464
5153
  this.filterCollection = {};
5154
+ this.multiFilterItems = {};
5465
5155
  this.possibleFilters = Object.assign({}, filterTypes);
5466
5156
  this.possibleFilterNames = Object.assign({}, filterNames);
5467
5157
  this.possibleFilterEntities = Object.assign({}, filterEntities);
@@ -5469,21 +5159,38 @@ class FilterPlugin extends BasePlugin {
5469
5159
  this.initConfig(config);
5470
5160
  }
5471
5161
  const headerclick = (e) => this.headerclick(e);
5472
- const aftersourceset = () => {
5473
- if (Object.keys(this.filterCollection).length) {
5474
- this.filterByProps(this.filterCollection);
5162
+ const aftersourceset = async () => {
5163
+ const filterCollectionProps = Object.keys(this.filterCollection);
5164
+ if (filterCollectionProps.length > 0) {
5165
+ // handle old way of filtering by reworking FilterCollection to new MultiFilterItem
5166
+ filterCollectionProps.forEach((prop, index) => {
5167
+ if (!this.multiFilterItems[prop]) {
5168
+ this.multiFilterItems[prop] = [
5169
+ {
5170
+ id: index,
5171
+ type: this.filterCollection[prop].type,
5172
+ value: this.filterCollection[prop].value,
5173
+ relation: 'and',
5174
+ },
5175
+ ];
5176
+ }
5177
+ });
5475
5178
  }
5179
+ await this.runFiltering();
5476
5180
  };
5477
5181
  this.addEventListener('headerclick', headerclick);
5478
5182
  this.addEventListener('aftersourceset', aftersourceset);
5479
5183
  this.revogrid.registerVNode([
5480
- index.h("revogr-filter-panel", { uuid: `filter-${uiid}`, filterNames: this.possibleFilterNames, filterEntities: this.possibleFilterEntities, filterCaptions: (_a = config.localization) === null || _a === void 0 ? void 0 : _a.captions, onFilterChange: e => this.onFilterChange(e.detail), ref: e => (this.pop = e) }),
5184
+ index.h("revogr-filter-panel", { uuid: `filter-${uiid}`, filterItems: this.multiFilterItems, filterNames: this.possibleFilterNames, filterEntities: this.possibleFilterEntities, filterCaptions: (_a = config === null || config === void 0 ? void 0 : config.localization) === null || _a === void 0 ? void 0 : _a.captions, onFilterChange: e => this.onFilterChange(e.detail), ref: e => (this.pop = e) }),
5481
5185
  ]);
5482
5186
  }
5483
5187
  initConfig(config) {
5484
5188
  if (config.collection) {
5485
5189
  this.filterCollection = Object.assign({}, config.collection);
5486
5190
  }
5191
+ if (config.multiFilterItems) {
5192
+ this.multiFilterItems = Object.assign({}, config.multiFilterItems);
5193
+ }
5487
5194
  if (config.customFilters) {
5488
5195
  for (let cType in config.customFilters) {
5489
5196
  const cFilter = config.customFilters[cType];
@@ -5526,7 +5233,7 @@ class FilterPlugin extends BasePlugin {
5526
5233
  async headerclick(e) {
5527
5234
  var _a;
5528
5235
  const el = (_a = e.detail.originalEvent) === null || _a === void 0 ? void 0 : _a.target;
5529
- if (!filter_button.isFilterBtn(el)) {
5236
+ if (!debounce$1.isFilterBtn(el)) {
5530
5237
  return;
5531
5238
  }
5532
5239
  e.preventDefault();
@@ -5567,55 +5274,30 @@ class FilterPlugin extends BasePlugin {
5567
5274
  return !!(typeof type === 'string' && this.possibleFilters[type]);
5568
5275
  }
5569
5276
  // called on internal component change
5570
- async onFilterChange(filterItem) {
5571
- this.filterByProps({ [filterItem.prop]: filterItem });
5572
- }
5573
- /**
5574
- * Apply filters collection to extend existing one or override
5575
- * @method
5576
- * @param conditions - list of filters to apply
5577
- */
5578
- async filterByProps(conditions, override = false) {
5579
- if (override) {
5580
- this.filterCollection = {};
5581
- }
5582
- for (const prop in conditions) {
5583
- const { type, value } = conditions[prop];
5584
- if (type === 'none') {
5585
- delete this.filterCollection[prop];
5586
- }
5587
- else {
5588
- const filter = this.possibleFilterEntities[type];
5589
- this.filterCollection[prop] = {
5590
- filter,
5591
- value,
5592
- type,
5593
- };
5594
- }
5595
- }
5596
- await this.runFiltering();
5277
+ async onFilterChange(filterItems) {
5278
+ this.multiFilterItems = filterItems;
5279
+ this.runFiltering();
5597
5280
  }
5598
5281
  /**
5599
5282
  * Triggers grid filtering
5600
5283
  */
5601
- async doFiltering(collection, items, columns) {
5284
+ async doFiltering(collection, items, columns, filterItems) {
5602
5285
  const columnsToUpdate = [];
5603
- // todo improvement: loop through collection of props
5604
5286
  columns.forEach(rgCol => {
5605
5287
  const column = Object.assign({}, rgCol);
5606
- const hasFilter = collection[column.prop];
5607
- if (column[filter_button.FILTER_PROP] && !hasFilter) {
5608
- delete column[filter_button.FILTER_PROP];
5288
+ const hasFilter = filterItems[column.prop];
5289
+ if (column[debounce$1.FILTER_PROP] && !hasFilter) {
5290
+ delete column[debounce$1.FILTER_PROP];
5609
5291
  columnsToUpdate.push(column);
5610
5292
  }
5611
- if (!column[filter_button.FILTER_PROP] && hasFilter) {
5293
+ if (!column[debounce$1.FILTER_PROP] && hasFilter) {
5612
5294
  columnsToUpdate.push(column);
5613
- column[filter_button.FILTER_PROP] = true;
5295
+ column[debounce$1.FILTER_PROP] = true;
5614
5296
  }
5615
5297
  });
5616
- const itemsToFilter = this.getRowFilter(items, collection);
5298
+ const itemsToFilter = this.getRowFilter(items, filterItems);
5617
5299
  // check is filter event prevented
5618
- const { defaultPrevented, detail } = this.emit('beforefiltertrimmed', { collection, itemsToFilter, source: items });
5300
+ const { defaultPrevented, detail } = this.emit('beforefiltertrimmed', { collection, itemsToFilter, source: items, filterItems });
5619
5301
  if (defaultPrevented) {
5620
5302
  return;
5621
5303
  }
@@ -5624,39 +5306,92 @@ class FilterPlugin extends BasePlugin {
5624
5306
  if (isAddedEvent.defaultPrevented) {
5625
5307
  return;
5626
5308
  }
5309
+ // applies the hasFilter to the columns to show filter icon
5627
5310
  await this.revogrid.updateColumns(columnsToUpdate);
5628
5311
  this.emit('afterFilterApply');
5629
5312
  }
5630
5313
  async clearFiltering() {
5631
- this.filterCollection = {};
5314
+ this.multiFilterItems = {};
5632
5315
  await this.runFiltering();
5633
5316
  }
5634
5317
  async runFiltering() {
5318
+ const collection = {};
5319
+ // handle old filterCollection to return the first filter only (if any) from multiFilterItems
5320
+ const filterProps = Object.keys(this.multiFilterItems);
5321
+ for (const prop of filterProps) {
5322
+ // check if we have any filter for a column
5323
+ if (this.multiFilterItems[prop].length > 0) {
5324
+ const firstFilterItem = this.multiFilterItems[prop][0];
5325
+ collection[prop] = {
5326
+ filter: filterEntities[firstFilterItem.type],
5327
+ type: firstFilterItem.type,
5328
+ value: firstFilterItem.value,
5329
+ };
5330
+ }
5331
+ }
5332
+ this.filterCollection = collection;
5635
5333
  const { source, columns } = await this.getData();
5636
- const { defaultPrevented, detail } = this.emit('beforefilterapply', { collection: this.filterCollection, source, columns });
5334
+ const { defaultPrevented, detail } = this.emit('beforefilterapply', { collection: this.filterCollection, source, columns, filterItems: this.multiFilterItems });
5637
5335
  if (defaultPrevented) {
5638
5336
  return;
5639
5337
  }
5640
- this.doFiltering(detail.collection, detail.source, detail.columns);
5338
+ this.doFiltering(detail.collection, detail.source, detail.columns, detail.filterItems);
5641
5339
  }
5642
5340
  async getData() {
5643
5341
  const source = await this.revogrid.getSource();
5644
5342
  const columns = await this.revogrid.getColumns();
5645
5343
  return {
5646
5344
  source,
5647
- columns
5345
+ columns,
5648
5346
  };
5649
5347
  }
5650
- getRowFilter(rows, collection) {
5348
+ getRowFilter(rows, filterItems) {
5349
+ const propKeys = Object.keys(filterItems);
5651
5350
  const trimmed = {};
5351
+ let propFilterSatisfiedCount = 0;
5352
+ let lastFilterResults = [];
5353
+ // each rows
5652
5354
  rows.forEach((model, rowIndex) => {
5653
- for (const prop in collection) {
5654
- const filterItem = collection[prop];
5655
- const filter = filterItem.filter;
5656
- if (!filter(model[prop], filterItem.value)) {
5355
+ // working on all props
5356
+ for (const prop of propKeys) {
5357
+ const propFilters = filterItems[prop];
5358
+ propFilterSatisfiedCount = 0;
5359
+ lastFilterResults = [];
5360
+ // testing each filter for a prop
5361
+ for (const [filterIndex, filterData] of propFilters.entries()) {
5362
+ // the filter LogicFunction based on the type
5363
+ const filter = filterEntities[filterData.type];
5364
+ // THE MAGIC OF FILTERING IS HERE
5365
+ if (filterData.relation === 'or') {
5366
+ lastFilterResults = [];
5367
+ if (filter(model[prop], filterData.value)) {
5368
+ continue;
5369
+ }
5370
+ propFilterSatisfiedCount++;
5371
+ }
5372
+ else {
5373
+ // 'and' relation will need to know the next filter
5374
+ // so we save this current filter to include it in the next filter
5375
+ lastFilterResults.push(!filter(model[prop], filterData.value));
5376
+ // check first if we have a filter on the next index to pair it with this current filter
5377
+ const nextFilterData = propFilters[filterIndex + 1];
5378
+ // stop the sequence if there is no next filter or if the next filter is not an 'and' relation
5379
+ if (!nextFilterData || nextFilterData.relation !== 'and') {
5380
+ // let's just continue since for sure propFilterSatisfiedCount cannot be satisfied
5381
+ if (lastFilterResults.indexOf(true) === -1) {
5382
+ lastFilterResults = [];
5383
+ continue;
5384
+ }
5385
+ // we need to add all of the lastFilterResults since we need to satisfy all
5386
+ propFilterSatisfiedCount += lastFilterResults.length;
5387
+ lastFilterResults = [];
5388
+ }
5389
+ }
5390
+ } // end of propFilters forEach
5391
+ // add to the list of removed/trimmed rows of filter condition is satisfied
5392
+ if (propFilterSatisfiedCount === propFilters.length)
5657
5393
  trimmed[rowIndex] = true;
5658
- }
5659
- }
5394
+ } // end of for-of propKeys
5660
5395
  });
5661
5396
  return trimmed;
5662
5397
  }
@@ -5684,7 +5419,7 @@ var stringTag = '[object String]';
5684
5419
  */
5685
5420
  function isString(value) {
5686
5421
  return typeof value == 'string' ||
5687
- (!isArray_1(value) && isObjectLike_1(value) && _baseGetTag(value) == stringTag);
5422
+ (!isArray_1(value) && debounce$1.isObjectLike_1(value) && debounce$1._baseGetTag(value) == stringTag);
5688
5423
  }
5689
5424
 
5690
5425
  var isString_1 = isString;
@@ -7329,7 +7064,7 @@ function getLastCell(data, rowType) {
7329
7064
  };
7330
7065
  }
7331
7066
 
7332
- var lodash = createCommonjsModule(function (module, exports) {
7067
+ var lodash = debounce$1.createCommonjsModule(function (module, exports) {
7333
7068
  (function() {
7334
7069
 
7335
7070
  /** Used as a safe reference for `undefined` in pre-ES5 environments. */
@@ -7751,7 +7486,7 @@ var lodash = createCommonjsModule(function (module, exports) {
7751
7486
  freeParseInt = parseInt;
7752
7487
 
7753
7488
  /** Detect free variable `global` from Node.js. */
7754
- var freeGlobal = typeof commonjsGlobal == 'object' && commonjsGlobal && commonjsGlobal.Object === Object && commonjsGlobal;
7489
+ var freeGlobal = typeof debounce$1.commonjsGlobal == 'object' && debounce$1.commonjsGlobal && debounce$1.commonjsGlobal.Object === Object && debounce$1.commonjsGlobal;
7755
7490
 
7756
7491
  /** Detect free variable `self`. */
7757
7492
  var freeSelf = typeof self == 'object' && self && self.Object === Object && self;
@@ -24516,7 +24251,7 @@ var lodash = createCommonjsModule(function (module, exports) {
24516
24251
  // Export to the global object.
24517
24252
  root._ = _;
24518
24253
  }
24519
- }.call(commonjsGlobal));
24254
+ }.call(debounce$1.commonjsGlobal));
24520
24255
  });
24521
24256
 
24522
24257
  class ViewportService {
@@ -26015,7 +25750,7 @@ function values(object) {
26015
25750
  var values_1 = values;
26016
25751
 
26017
25752
  /* Built-in method references for those with the same name as other `lodash` methods. */
26018
- var nativeMax$1 = Math.max;
25753
+ var nativeMax = Math.max;
26019
25754
 
26020
25755
  /**
26021
25756
  * Checks if `value` is in `collection`. If `collection` is a string, it's
@@ -26053,7 +25788,7 @@ function includes(collection, value, fromIndex, guard) {
26053
25788
 
26054
25789
  var length = collection.length;
26055
25790
  if (fromIndex < 0) {
26056
- fromIndex = nativeMax$1(length + fromIndex, 0);
25791
+ fromIndex = nativeMax(length + fromIndex, 0);
26057
25792
  }
26058
25793
  return isString_1(collection)
26059
25794
  ? (fromIndex <= length && collection.indexOf(value, fromIndex) > -1)
@@ -26743,7 +26478,7 @@ const HeaderRenderer = (p) => {
26743
26478
  }
26744
26479
  return (index.h(HeaderCellRenderer, { data: p.data, props: dataProps },
26745
26480
  ((_e = p.data) === null || _e === void 0 ? void 0 : _e.order) ? index.h(SortingSign, { column: p.data }) : '',
26746
- p.canFilter && ((_f = p.data) === null || _f === void 0 ? void 0 : _f.filter) !== false ? index.h(filter_button.FilterButton, { column: p.data }) : ''));
26481
+ p.canFilter && ((_f = p.data) === null || _f === void 0 ? void 0 : _f.filter) !== false ? index.h(debounce$1.FilterButton, { column: p.data }) : ''));
26747
26482
  };
26748
26483
 
26749
26484
  const GroupHeaderRenderer = (p) => {
@@ -26836,216 +26571,6 @@ const RevogrHeaderComponent = class {
26836
26571
  };
26837
26572
  RevogrHeaderComponent.style = revogrHeaderStyleCss;
26838
26573
 
26839
- /**
26840
- * Gets the timestamp of the number of milliseconds that have elapsed since
26841
- * the Unix epoch (1 January 1970 00:00:00 UTC).
26842
- *
26843
- * @static
26844
- * @memberOf _
26845
- * @since 2.4.0
26846
- * @category Date
26847
- * @returns {number} Returns the timestamp.
26848
- * @example
26849
- *
26850
- * _.defer(function(stamp) {
26851
- * console.log(_.now() - stamp);
26852
- * }, _.now());
26853
- * // => Logs the number of milliseconds it took for the deferred invocation.
26854
- */
26855
- var now = function() {
26856
- return _root.Date.now();
26857
- };
26858
-
26859
- var now_1 = now;
26860
-
26861
- /** Error message constants. */
26862
- var FUNC_ERROR_TEXT$1 = 'Expected a function';
26863
-
26864
- /* Built-in method references for those with the same name as other `lodash` methods. */
26865
- var nativeMax = Math.max,
26866
- nativeMin = Math.min;
26867
-
26868
- /**
26869
- * Creates a debounced function that delays invoking `func` until after `wait`
26870
- * milliseconds have elapsed since the last time the debounced function was
26871
- * invoked. The debounced function comes with a `cancel` method to cancel
26872
- * delayed `func` invocations and a `flush` method to immediately invoke them.
26873
- * Provide `options` to indicate whether `func` should be invoked on the
26874
- * leading and/or trailing edge of the `wait` timeout. The `func` is invoked
26875
- * with the last arguments provided to the debounced function. Subsequent
26876
- * calls to the debounced function return the result of the last `func`
26877
- * invocation.
26878
- *
26879
- * **Note:** If `leading` and `trailing` options are `true`, `func` is
26880
- * invoked on the trailing edge of the timeout only if the debounced function
26881
- * is invoked more than once during the `wait` timeout.
26882
- *
26883
- * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred
26884
- * until to the next tick, similar to `setTimeout` with a timeout of `0`.
26885
- *
26886
- * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)
26887
- * for details over the differences between `_.debounce` and `_.throttle`.
26888
- *
26889
- * @static
26890
- * @memberOf _
26891
- * @since 0.1.0
26892
- * @category Function
26893
- * @param {Function} func The function to debounce.
26894
- * @param {number} [wait=0] The number of milliseconds to delay.
26895
- * @param {Object} [options={}] The options object.
26896
- * @param {boolean} [options.leading=false]
26897
- * Specify invoking on the leading edge of the timeout.
26898
- * @param {number} [options.maxWait]
26899
- * The maximum time `func` is allowed to be delayed before it's invoked.
26900
- * @param {boolean} [options.trailing=true]
26901
- * Specify invoking on the trailing edge of the timeout.
26902
- * @returns {Function} Returns the new debounced function.
26903
- * @example
26904
- *
26905
- * // Avoid costly calculations while the window size is in flux.
26906
- * jQuery(window).on('resize', _.debounce(calculateLayout, 150));
26907
- *
26908
- * // Invoke `sendMail` when clicked, debouncing subsequent calls.
26909
- * jQuery(element).on('click', _.debounce(sendMail, 300, {
26910
- * 'leading': true,
26911
- * 'trailing': false
26912
- * }));
26913
- *
26914
- * // Ensure `batchLog` is invoked once after 1 second of debounced calls.
26915
- * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });
26916
- * var source = new EventSource('/stream');
26917
- * jQuery(source).on('message', debounced);
26918
- *
26919
- * // Cancel the trailing debounced invocation.
26920
- * jQuery(window).on('popstate', debounced.cancel);
26921
- */
26922
- function debounce(func, wait, options) {
26923
- var lastArgs,
26924
- lastThis,
26925
- maxWait,
26926
- result,
26927
- timerId,
26928
- lastCallTime,
26929
- lastInvokeTime = 0,
26930
- leading = false,
26931
- maxing = false,
26932
- trailing = true;
26933
-
26934
- if (typeof func != 'function') {
26935
- throw new TypeError(FUNC_ERROR_TEXT$1);
26936
- }
26937
- wait = toNumber_1(wait) || 0;
26938
- if (isObject_1(options)) {
26939
- leading = !!options.leading;
26940
- maxing = 'maxWait' in options;
26941
- maxWait = maxing ? nativeMax(toNumber_1(options.maxWait) || 0, wait) : maxWait;
26942
- trailing = 'trailing' in options ? !!options.trailing : trailing;
26943
- }
26944
-
26945
- function invokeFunc(time) {
26946
- var args = lastArgs,
26947
- thisArg = lastThis;
26948
-
26949
- lastArgs = lastThis = undefined;
26950
- lastInvokeTime = time;
26951
- result = func.apply(thisArg, args);
26952
- return result;
26953
- }
26954
-
26955
- function leadingEdge(time) {
26956
- // Reset any `maxWait` timer.
26957
- lastInvokeTime = time;
26958
- // Start the timer for the trailing edge.
26959
- timerId = setTimeout(timerExpired, wait);
26960
- // Invoke the leading edge.
26961
- return leading ? invokeFunc(time) : result;
26962
- }
26963
-
26964
- function remainingWait(time) {
26965
- var timeSinceLastCall = time - lastCallTime,
26966
- timeSinceLastInvoke = time - lastInvokeTime,
26967
- timeWaiting = wait - timeSinceLastCall;
26968
-
26969
- return maxing
26970
- ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke)
26971
- : timeWaiting;
26972
- }
26973
-
26974
- function shouldInvoke(time) {
26975
- var timeSinceLastCall = time - lastCallTime,
26976
- timeSinceLastInvoke = time - lastInvokeTime;
26977
-
26978
- // Either this is the first call, activity has stopped and we're at the
26979
- // trailing edge, the system time has gone backwards and we're treating
26980
- // it as the trailing edge, or we've hit the `maxWait` limit.
26981
- return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||
26982
- (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));
26983
- }
26984
-
26985
- function timerExpired() {
26986
- var time = now_1();
26987
- if (shouldInvoke(time)) {
26988
- return trailingEdge(time);
26989
- }
26990
- // Restart the timer.
26991
- timerId = setTimeout(timerExpired, remainingWait(time));
26992
- }
26993
-
26994
- function trailingEdge(time) {
26995
- timerId = undefined;
26996
-
26997
- // Only invoke if we have `lastArgs` which means `func` has been
26998
- // debounced at least once.
26999
- if (trailing && lastArgs) {
27000
- return invokeFunc(time);
27001
- }
27002
- lastArgs = lastThis = undefined;
27003
- return result;
27004
- }
27005
-
27006
- function cancel() {
27007
- if (timerId !== undefined) {
27008
- clearTimeout(timerId);
27009
- }
27010
- lastInvokeTime = 0;
27011
- lastArgs = lastCallTime = lastThis = timerId = undefined;
27012
- }
27013
-
27014
- function flush() {
27015
- return timerId === undefined ? result : trailingEdge(now_1());
27016
- }
27017
-
27018
- function debounced() {
27019
- var time = now_1(),
27020
- isInvoking = shouldInvoke(time);
27021
-
27022
- lastArgs = arguments;
27023
- lastThis = this;
27024
- lastCallTime = time;
27025
-
27026
- if (isInvoking) {
27027
- if (timerId === undefined) {
27028
- return leadingEdge(lastCallTime);
27029
- }
27030
- if (maxing) {
27031
- // Handle invocations in a tight loop.
27032
- clearTimeout(timerId);
27033
- timerId = setTimeout(timerExpired, wait);
27034
- return invokeFunc(lastCallTime);
27035
- }
27036
- }
27037
- if (timerId === undefined) {
27038
- timerId = setTimeout(timerExpired, wait);
27039
- }
27040
- return result;
27041
- }
27042
- debounced.cancel = cancel;
27043
- debounced.flush = flush;
27044
- return debounced;
27045
- }
27046
-
27047
- var debounce_1 = debounce;
27048
-
27049
26574
  class RowOrderService {
27050
26575
  constructor(config) {
27051
26576
  this.config = config;
@@ -27122,7 +26647,7 @@ const OrderEditor = class {
27122
26647
  this.internalRowDrag = index.createEvent(this, "internalRowDrag", 7);
27123
26648
  this.internalRowMouseMove = index.createEvent(this, "internalRowMouseMove", 7);
27124
26649
  this.initialRowDropped = index.createEvent(this, "initialRowDropped", 7);
27125
- this.rowMoveFunc = debounce_1((y) => {
26650
+ this.rowMoveFunc = debounce$1.debounce_1((y) => {
27126
26651
  const rgRow = this.rowOrderService.move(y, this.getData());
27127
26652
  if (rgRow !== null) {
27128
26653
  this.internalRowDrag.emit(rgRow);
@@ -27468,7 +26993,7 @@ class AutoFillService {
27468
26993
  selectionMouseMove(e) {
27469
26994
  // initiate mouse move debounce if not present
27470
26995
  if (!this.onMouseMoveAutofill) {
27471
- this.onMouseMoveAutofill = debounce_1((e, data) => this.doAutofillMouseMove(e, data), 5);
26996
+ this.onMouseMoveAutofill = debounce$1.debounce_1((e, data) => this.doAutofillMouseMove(e, data), 5);
27472
26997
  }
27473
26998
  if (this.isAutoFill) {
27474
26999
  this.onMouseMoveAutofill(e, this.sv.getData());
@@ -28243,11 +27768,11 @@ function throttle(func, wait, options) {
28243
27768
  if (typeof func != 'function') {
28244
27769
  throw new TypeError(FUNC_ERROR_TEXT);
28245
27770
  }
28246
- if (isObject_1(options)) {
27771
+ if (debounce$1.isObject_1(options)) {
28247
27772
  leading = 'leading' in options ? !!options.leading : leading;
28248
27773
  trailing = 'trailing' in options ? !!options.trailing : trailing;
28249
27774
  }
28250
- return debounce_1(func, wait, {
27775
+ return debounce$1.debounce_1(func, wait, {
28251
27776
  'leading': leading,
28252
27777
  'maxWait': wait,
28253
27778
  'trailing': trailing