ods-component-lib 1.18.7 → 1.18.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -16537,13 +16537,589 @@ function _finallyRethrows(body, finalizer) {
16537
16537
  return finalizer(false, result);
16538
16538
  }
16539
16539
 
16540
+ /**
16541
+ * Checks if `value` is the
16542
+ * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)
16543
+ * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)
16544
+ *
16545
+ * @static
16546
+ * @memberOf _
16547
+ * @since 0.1.0
16548
+ * @category Lang
16549
+ * @param {*} value The value to check.
16550
+ * @returns {boolean} Returns `true` if `value` is an object, else `false`.
16551
+ * @example
16552
+ *
16553
+ * _.isObject({});
16554
+ * // => true
16555
+ *
16556
+ * _.isObject([1, 2, 3]);
16557
+ * // => true
16558
+ *
16559
+ * _.isObject(_.noop);
16560
+ * // => true
16561
+ *
16562
+ * _.isObject(null);
16563
+ * // => false
16564
+ */
16565
+ function isObject(value) {
16566
+ var type = typeof value;
16567
+ return value != null && (type == 'object' || type == 'function');
16568
+ }
16569
+
16570
+ var isObject_1 = isObject;
16571
+
16572
+ /** Detect free variable `global` from Node.js. */
16573
+ var freeGlobal = typeof commonjsGlobal == 'object' && commonjsGlobal && commonjsGlobal.Object === Object && commonjsGlobal;
16574
+
16575
+ var _freeGlobal = freeGlobal;
16576
+
16577
+ /** Detect free variable `self`. */
16578
+ var freeSelf = typeof self == 'object' && self && self.Object === Object && self;
16579
+
16580
+ /** Used as a reference to the global object. */
16581
+ var root = _freeGlobal || freeSelf || Function('return this')();
16582
+
16583
+ var _root = root;
16584
+
16585
+ /**
16586
+ * Gets the timestamp of the number of milliseconds that have elapsed since
16587
+ * the Unix epoch (1 January 1970 00:00:00 UTC).
16588
+ *
16589
+ * @static
16590
+ * @memberOf _
16591
+ * @since 2.4.0
16592
+ * @category Date
16593
+ * @returns {number} Returns the timestamp.
16594
+ * @example
16595
+ *
16596
+ * _.defer(function(stamp) {
16597
+ * console.log(_.now() - stamp);
16598
+ * }, _.now());
16599
+ * // => Logs the number of milliseconds it took for the deferred invocation.
16600
+ */
16601
+ var now = function() {
16602
+ return _root.Date.now();
16603
+ };
16604
+
16605
+ var now_1 = now;
16606
+
16607
+ /** Used to match a single whitespace character. */
16608
+ var reWhitespace = /\s/;
16609
+
16610
+ /**
16611
+ * Used by `_.trim` and `_.trimEnd` to get the index of the last non-whitespace
16612
+ * character of `string`.
16613
+ *
16614
+ * @private
16615
+ * @param {string} string The string to inspect.
16616
+ * @returns {number} Returns the index of the last non-whitespace character.
16617
+ */
16618
+ function trimmedEndIndex(string) {
16619
+ var index = string.length;
16620
+
16621
+ while (index-- && reWhitespace.test(string.charAt(index))) {}
16622
+ return index;
16623
+ }
16624
+
16625
+ var _trimmedEndIndex = trimmedEndIndex;
16626
+
16627
+ /** Used to match leading whitespace. */
16628
+ var reTrimStart = /^\s+/;
16629
+
16630
+ /**
16631
+ * The base implementation of `_.trim`.
16632
+ *
16633
+ * @private
16634
+ * @param {string} string The string to trim.
16635
+ * @returns {string} Returns the trimmed string.
16636
+ */
16637
+ function baseTrim(string) {
16638
+ return string
16639
+ ? string.slice(0, _trimmedEndIndex(string) + 1).replace(reTrimStart, '')
16640
+ : string;
16641
+ }
16642
+
16643
+ var _baseTrim = baseTrim;
16644
+
16645
+ /** Built-in value references. */
16646
+ var Symbol$1 = _root.Symbol;
16647
+
16648
+ var _Symbol = Symbol$1;
16649
+
16650
+ /** Used for built-in method references. */
16651
+ var objectProto = Object.prototype;
16652
+
16653
+ /** Used to check objects for own properties. */
16654
+ var hasOwnProperty = objectProto.hasOwnProperty;
16655
+
16656
+ /**
16657
+ * Used to resolve the
16658
+ * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
16659
+ * of values.
16660
+ */
16661
+ var nativeObjectToString = objectProto.toString;
16662
+
16663
+ /** Built-in value references. */
16664
+ var symToStringTag = _Symbol ? _Symbol.toStringTag : undefined;
16665
+
16666
+ /**
16667
+ * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.
16668
+ *
16669
+ * @private
16670
+ * @param {*} value The value to query.
16671
+ * @returns {string} Returns the raw `toStringTag`.
16672
+ */
16673
+ function getRawTag(value) {
16674
+ var isOwn = hasOwnProperty.call(value, symToStringTag),
16675
+ tag = value[symToStringTag];
16676
+
16677
+ try {
16678
+ value[symToStringTag] = undefined;
16679
+ var unmasked = true;
16680
+ } catch (e) {}
16681
+
16682
+ var result = nativeObjectToString.call(value);
16683
+ if (unmasked) {
16684
+ if (isOwn) {
16685
+ value[symToStringTag] = tag;
16686
+ } else {
16687
+ delete value[symToStringTag];
16688
+ }
16689
+ }
16690
+ return result;
16691
+ }
16692
+
16693
+ var _getRawTag = getRawTag;
16694
+
16695
+ /** Used for built-in method references. */
16696
+ var objectProto$1 = Object.prototype;
16697
+
16698
+ /**
16699
+ * Used to resolve the
16700
+ * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
16701
+ * of values.
16702
+ */
16703
+ var nativeObjectToString$1 = objectProto$1.toString;
16704
+
16705
+ /**
16706
+ * Converts `value` to a string using `Object.prototype.toString`.
16707
+ *
16708
+ * @private
16709
+ * @param {*} value The value to convert.
16710
+ * @returns {string} Returns the converted string.
16711
+ */
16712
+ function objectToString(value) {
16713
+ return nativeObjectToString$1.call(value);
16714
+ }
16715
+
16716
+ var _objectToString = objectToString;
16717
+
16718
+ /** `Object#toString` result references. */
16719
+ var nullTag = '[object Null]',
16720
+ undefinedTag = '[object Undefined]';
16721
+
16722
+ /** Built-in value references. */
16723
+ var symToStringTag$1 = _Symbol ? _Symbol.toStringTag : undefined;
16724
+
16725
+ /**
16726
+ * The base implementation of `getTag` without fallbacks for buggy environments.
16727
+ *
16728
+ * @private
16729
+ * @param {*} value The value to query.
16730
+ * @returns {string} Returns the `toStringTag`.
16731
+ */
16732
+ function baseGetTag(value) {
16733
+ if (value == null) {
16734
+ return value === undefined ? undefinedTag : nullTag;
16735
+ }
16736
+ return (symToStringTag$1 && symToStringTag$1 in Object(value))
16737
+ ? _getRawTag(value)
16738
+ : _objectToString(value);
16739
+ }
16740
+
16741
+ var _baseGetTag = baseGetTag;
16742
+
16743
+ /**
16744
+ * Checks if `value` is object-like. A value is object-like if it's not `null`
16745
+ * and has a `typeof` result of "object".
16746
+ *
16747
+ * @static
16748
+ * @memberOf _
16749
+ * @since 4.0.0
16750
+ * @category Lang
16751
+ * @param {*} value The value to check.
16752
+ * @returns {boolean} Returns `true` if `value` is object-like, else `false`.
16753
+ * @example
16754
+ *
16755
+ * _.isObjectLike({});
16756
+ * // => true
16757
+ *
16758
+ * _.isObjectLike([1, 2, 3]);
16759
+ * // => true
16760
+ *
16761
+ * _.isObjectLike(_.noop);
16762
+ * // => false
16763
+ *
16764
+ * _.isObjectLike(null);
16765
+ * // => false
16766
+ */
16767
+ function isObjectLike(value) {
16768
+ return value != null && typeof value == 'object';
16769
+ }
16770
+
16771
+ var isObjectLike_1 = isObjectLike;
16772
+
16773
+ /** `Object#toString` result references. */
16774
+ var symbolTag = '[object Symbol]';
16775
+
16776
+ /**
16777
+ * Checks if `value` is classified as a `Symbol` primitive or object.
16778
+ *
16779
+ * @static
16780
+ * @memberOf _
16781
+ * @since 4.0.0
16782
+ * @category Lang
16783
+ * @param {*} value The value to check.
16784
+ * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.
16785
+ * @example
16786
+ *
16787
+ * _.isSymbol(Symbol.iterator);
16788
+ * // => true
16789
+ *
16790
+ * _.isSymbol('abc');
16791
+ * // => false
16792
+ */
16793
+ function isSymbol(value) {
16794
+ return typeof value == 'symbol' ||
16795
+ (isObjectLike_1(value) && _baseGetTag(value) == symbolTag);
16796
+ }
16797
+
16798
+ var isSymbol_1 = isSymbol;
16799
+
16800
+ /** Used as references for various `Number` constants. */
16801
+ var NAN = 0 / 0;
16802
+
16803
+ /** Used to detect bad signed hexadecimal string values. */
16804
+ var reIsBadHex = /^[-+]0x[0-9a-f]+$/i;
16805
+
16806
+ /** Used to detect binary string values. */
16807
+ var reIsBinary = /^0b[01]+$/i;
16808
+
16809
+ /** Used to detect octal string values. */
16810
+ var reIsOctal = /^0o[0-7]+$/i;
16811
+
16812
+ /** Built-in method references without a dependency on `root`. */
16813
+ var freeParseInt = parseInt;
16814
+
16815
+ /**
16816
+ * Converts `value` to a number.
16817
+ *
16818
+ * @static
16819
+ * @memberOf _
16820
+ * @since 4.0.0
16821
+ * @category Lang
16822
+ * @param {*} value The value to process.
16823
+ * @returns {number} Returns the number.
16824
+ * @example
16825
+ *
16826
+ * _.toNumber(3.2);
16827
+ * // => 3.2
16828
+ *
16829
+ * _.toNumber(Number.MIN_VALUE);
16830
+ * // => 5e-324
16831
+ *
16832
+ * _.toNumber(Infinity);
16833
+ * // => Infinity
16834
+ *
16835
+ * _.toNumber('3.2');
16836
+ * // => 3.2
16837
+ */
16838
+ function toNumber(value) {
16839
+ if (typeof value == 'number') {
16840
+ return value;
16841
+ }
16842
+ if (isSymbol_1(value)) {
16843
+ return NAN;
16844
+ }
16845
+ if (isObject_1(value)) {
16846
+ var other = typeof value.valueOf == 'function' ? value.valueOf() : value;
16847
+ value = isObject_1(other) ? (other + '') : other;
16848
+ }
16849
+ if (typeof value != 'string') {
16850
+ return value === 0 ? value : +value;
16851
+ }
16852
+ value = _baseTrim(value);
16853
+ var isBinary = reIsBinary.test(value);
16854
+ return (isBinary || reIsOctal.test(value))
16855
+ ? freeParseInt(value.slice(2), isBinary ? 2 : 8)
16856
+ : (reIsBadHex.test(value) ? NAN : +value);
16857
+ }
16858
+
16859
+ var toNumber_1 = toNumber;
16860
+
16861
+ /** Error message constants. */
16862
+ var FUNC_ERROR_TEXT = 'Expected a function';
16863
+
16864
+ /* Built-in method references for those with the same name as other `lodash` methods. */
16865
+ var nativeMax = Math.max,
16866
+ nativeMin = Math.min;
16867
+
16868
+ /**
16869
+ * Creates a debounced function that delays invoking `func` until after `wait`
16870
+ * milliseconds have elapsed since the last time the debounced function was
16871
+ * invoked. The debounced function comes with a `cancel` method to cancel
16872
+ * delayed `func` invocations and a `flush` method to immediately invoke them.
16873
+ * Provide `options` to indicate whether `func` should be invoked on the
16874
+ * leading and/or trailing edge of the `wait` timeout. The `func` is invoked
16875
+ * with the last arguments provided to the debounced function. Subsequent
16876
+ * calls to the debounced function return the result of the last `func`
16877
+ * invocation.
16878
+ *
16879
+ * **Note:** If `leading` and `trailing` options are `true`, `func` is
16880
+ * invoked on the trailing edge of the timeout only if the debounced function
16881
+ * is invoked more than once during the `wait` timeout.
16882
+ *
16883
+ * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred
16884
+ * until to the next tick, similar to `setTimeout` with a timeout of `0`.
16885
+ *
16886
+ * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)
16887
+ * for details over the differences between `_.debounce` and `_.throttle`.
16888
+ *
16889
+ * @static
16890
+ * @memberOf _
16891
+ * @since 0.1.0
16892
+ * @category Function
16893
+ * @param {Function} func The function to debounce.
16894
+ * @param {number} [wait=0] The number of milliseconds to delay.
16895
+ * @param {Object} [options={}] The options object.
16896
+ * @param {boolean} [options.leading=false]
16897
+ * Specify invoking on the leading edge of the timeout.
16898
+ * @param {number} [options.maxWait]
16899
+ * The maximum time `func` is allowed to be delayed before it's invoked.
16900
+ * @param {boolean} [options.trailing=true]
16901
+ * Specify invoking on the trailing edge of the timeout.
16902
+ * @returns {Function} Returns the new debounced function.
16903
+ * @example
16904
+ *
16905
+ * // Avoid costly calculations while the window size is in flux.
16906
+ * jQuery(window).on('resize', _.debounce(calculateLayout, 150));
16907
+ *
16908
+ * // Invoke `sendMail` when clicked, debouncing subsequent calls.
16909
+ * jQuery(element).on('click', _.debounce(sendMail, 300, {
16910
+ * 'leading': true,
16911
+ * 'trailing': false
16912
+ * }));
16913
+ *
16914
+ * // Ensure `batchLog` is invoked once after 1 second of debounced calls.
16915
+ * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });
16916
+ * var source = new EventSource('/stream');
16917
+ * jQuery(source).on('message', debounced);
16918
+ *
16919
+ * // Cancel the trailing debounced invocation.
16920
+ * jQuery(window).on('popstate', debounced.cancel);
16921
+ */
16922
+ function debounce(func, wait, options) {
16923
+ var lastArgs,
16924
+ lastThis,
16925
+ maxWait,
16926
+ result,
16927
+ timerId,
16928
+ lastCallTime,
16929
+ lastInvokeTime = 0,
16930
+ leading = false,
16931
+ maxing = false,
16932
+ trailing = true;
16933
+
16934
+ if (typeof func != 'function') {
16935
+ throw new TypeError(FUNC_ERROR_TEXT);
16936
+ }
16937
+ wait = toNumber_1(wait) || 0;
16938
+ if (isObject_1(options)) {
16939
+ leading = !!options.leading;
16940
+ maxing = 'maxWait' in options;
16941
+ maxWait = maxing ? nativeMax(toNumber_1(options.maxWait) || 0, wait) : maxWait;
16942
+ trailing = 'trailing' in options ? !!options.trailing : trailing;
16943
+ }
16944
+
16945
+ function invokeFunc(time) {
16946
+ var args = lastArgs,
16947
+ thisArg = lastThis;
16948
+
16949
+ lastArgs = lastThis = undefined;
16950
+ lastInvokeTime = time;
16951
+ result = func.apply(thisArg, args);
16952
+ return result;
16953
+ }
16954
+
16955
+ function leadingEdge(time) {
16956
+ // Reset any `maxWait` timer.
16957
+ lastInvokeTime = time;
16958
+ // Start the timer for the trailing edge.
16959
+ timerId = setTimeout(timerExpired, wait);
16960
+ // Invoke the leading edge.
16961
+ return leading ? invokeFunc(time) : result;
16962
+ }
16963
+
16964
+ function remainingWait(time) {
16965
+ var timeSinceLastCall = time - lastCallTime,
16966
+ timeSinceLastInvoke = time - lastInvokeTime,
16967
+ timeWaiting = wait - timeSinceLastCall;
16968
+
16969
+ return maxing
16970
+ ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke)
16971
+ : timeWaiting;
16972
+ }
16973
+
16974
+ function shouldInvoke(time) {
16975
+ var timeSinceLastCall = time - lastCallTime,
16976
+ timeSinceLastInvoke = time - lastInvokeTime;
16977
+
16978
+ // Either this is the first call, activity has stopped and we're at the
16979
+ // trailing edge, the system time has gone backwards and we're treating
16980
+ // it as the trailing edge, or we've hit the `maxWait` limit.
16981
+ return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||
16982
+ (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));
16983
+ }
16984
+
16985
+ function timerExpired() {
16986
+ var time = now_1();
16987
+ if (shouldInvoke(time)) {
16988
+ return trailingEdge(time);
16989
+ }
16990
+ // Restart the timer.
16991
+ timerId = setTimeout(timerExpired, remainingWait(time));
16992
+ }
16993
+
16994
+ function trailingEdge(time) {
16995
+ timerId = undefined;
16996
+
16997
+ // Only invoke if we have `lastArgs` which means `func` has been
16998
+ // debounced at least once.
16999
+ if (trailing && lastArgs) {
17000
+ return invokeFunc(time);
17001
+ }
17002
+ lastArgs = lastThis = undefined;
17003
+ return result;
17004
+ }
17005
+
17006
+ function cancel() {
17007
+ if (timerId !== undefined) {
17008
+ clearTimeout(timerId);
17009
+ }
17010
+ lastInvokeTime = 0;
17011
+ lastArgs = lastCallTime = lastThis = timerId = undefined;
17012
+ }
17013
+
17014
+ function flush() {
17015
+ return timerId === undefined ? result : trailingEdge(now_1());
17016
+ }
17017
+
17018
+ function debounced() {
17019
+ var time = now_1(),
17020
+ isInvoking = shouldInvoke(time);
17021
+
17022
+ lastArgs = arguments;
17023
+ lastThis = this;
17024
+ lastCallTime = time;
17025
+
17026
+ if (isInvoking) {
17027
+ if (timerId === undefined) {
17028
+ return leadingEdge(lastCallTime);
17029
+ }
17030
+ if (maxing) {
17031
+ // Handle invocations in a tight loop.
17032
+ clearTimeout(timerId);
17033
+ timerId = setTimeout(timerExpired, wait);
17034
+ return invokeFunc(lastCallTime);
17035
+ }
17036
+ }
17037
+ if (timerId === undefined) {
17038
+ timerId = setTimeout(timerExpired, wait);
17039
+ }
17040
+ return result;
17041
+ }
17042
+ debounced.cancel = cancel;
17043
+ debounced.flush = flush;
17044
+ return debounced;
17045
+ }
17046
+
17047
+ var debounce_1 = debounce;
17048
+
17049
+ /** Error message constants. */
17050
+ var FUNC_ERROR_TEXT$1 = 'Expected a function';
17051
+
17052
+ /**
17053
+ * Creates a throttled function that only invokes `func` at most once per
17054
+ * every `wait` milliseconds. The throttled function comes with a `cancel`
17055
+ * method to cancel delayed `func` invocations and a `flush` method to
17056
+ * immediately invoke them. Provide `options` to indicate whether `func`
17057
+ * should be invoked on the leading and/or trailing edge of the `wait`
17058
+ * timeout. The `func` is invoked with the last arguments provided to the
17059
+ * throttled function. Subsequent calls to the throttled function return the
17060
+ * result of the last `func` invocation.
17061
+ *
17062
+ * **Note:** If `leading` and `trailing` options are `true`, `func` is
17063
+ * invoked on the trailing edge of the timeout only if the throttled function
17064
+ * is invoked more than once during the `wait` timeout.
17065
+ *
17066
+ * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred
17067
+ * until to the next tick, similar to `setTimeout` with a timeout of `0`.
17068
+ *
17069
+ * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)
17070
+ * for details over the differences between `_.throttle` and `_.debounce`.
17071
+ *
17072
+ * @static
17073
+ * @memberOf _
17074
+ * @since 0.1.0
17075
+ * @category Function
17076
+ * @param {Function} func The function to throttle.
17077
+ * @param {number} [wait=0] The number of milliseconds to throttle invocations to.
17078
+ * @param {Object} [options={}] The options object.
17079
+ * @param {boolean} [options.leading=true]
17080
+ * Specify invoking on the leading edge of the timeout.
17081
+ * @param {boolean} [options.trailing=true]
17082
+ * Specify invoking on the trailing edge of the timeout.
17083
+ * @returns {Function} Returns the new throttled function.
17084
+ * @example
17085
+ *
17086
+ * // Avoid excessively updating the position while scrolling.
17087
+ * jQuery(window).on('scroll', _.throttle(updatePosition, 100));
17088
+ *
17089
+ * // Invoke `renewToken` when the click event is fired, but not more than once every 5 minutes.
17090
+ * var throttled = _.throttle(renewToken, 300000, { 'trailing': false });
17091
+ * jQuery(element).on('click', throttled);
17092
+ *
17093
+ * // Cancel the trailing throttled invocation.
17094
+ * jQuery(window).on('popstate', throttled.cancel);
17095
+ */
17096
+ function throttle(func, wait, options) {
17097
+ var leading = true,
17098
+ trailing = true;
17099
+
17100
+ if (typeof func != 'function') {
17101
+ throw new TypeError(FUNC_ERROR_TEXT$1);
17102
+ }
17103
+ if (isObject_1(options)) {
17104
+ leading = 'leading' in options ? !!options.leading : leading;
17105
+ trailing = 'trailing' in options ? !!options.trailing : trailing;
17106
+ }
17107
+ return debounce_1(func, wait, {
17108
+ 'leading': leading,
17109
+ 'maxWait': wait,
17110
+ 'trailing': trailing
17111
+ });
17112
+ }
17113
+
17114
+ var throttle_1 = throttle;
17115
+
16540
17116
  var exportFormats$3 = ['xlsx'];
16541
17117
  var totalPageCount = 1;
16542
17118
  var loadedPageCount = 1;
16543
17119
  var totalRecordCount = 0;
16544
17120
  var useToken$1 = antd.theme.useToken;
16545
17121
  var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
16546
- var _props$axiosRequest2, _props$selectOptions, _props$selectOptions$, _props$selectOptions2, _props$selectOptions$2, _props$selectOptions3;
17122
+ var _props$axiosRequest2, _props$axiosRequest4, _props$axiosRequest5, _props$axiosRequest6, _props$axiosRequest7, _props$axiosRequest8, _props$axiosRequest9, _props$selectOptions, _props$selectOptions$, _props$selectOptions2, _props$selectOptions$2, _props$selectOptions3;
16547
17123
  var _useToken = useToken$1(),
16548
17124
  token = _useToken.token;
16549
17125
  var _useState = React.useState([]),
@@ -16556,12 +17132,6 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
16556
17132
  var gridRef = React.useRef(null);
16557
17133
  var _useState3 = React.useState(0),
16558
17134
  filteredRowCount = _useState3[0];
16559
- var _useState4 = React.useState([]),
16560
- kebabMenuButtons = _useState4[0],
16561
- setKebabMenuButtons = _useState4[1];
16562
- var _useState5 = React.useState([]),
16563
- actionButtons = _useState5[0],
16564
- setActionButtons = _useState5[1];
16565
17135
  var headers = new Headers({
16566
17136
  'Content-Type': 'application/json',
16567
17137
  'Authorization': 'Bearer ' + (props.axiosRequest ? props.axiosRequest.token : ""),
@@ -16569,14 +17139,14 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
16569
17139
  });
16570
17140
  React.useEffect(function () {
16571
17141
  var _props$axiosRequest;
16572
- if (props.isApplyButtonClicked && (_props$axiosRequest = props.axiosRequest) !== null && _props$axiosRequest !== void 0 && _props$axiosRequest.requestData) {
17142
+ if (Object.keys((_props$axiosRequest = props.axiosRequest) === null || _props$axiosRequest === void 0 ? void 0 : _props$axiosRequest.requestData).length > 0) {
16573
17143
  totalPageCount = 1;
16574
17144
  loadedPageCount = 1;
16575
17145
  totalRecordCount = 0;
16576
17146
  setData([]);
16577
17147
  fetchData();
16578
17148
  }
16579
- }, [props.isApplyButtonClicked, (_props$axiosRequest2 = props.axiosRequest) === null || _props$axiosRequest2 === void 0 ? void 0 : _props$axiosRequest2.requestData]);
17149
+ }, [(_props$axiosRequest2 = props.axiosRequest) === null || _props$axiosRequest2 === void 0 ? void 0 : _props$axiosRequest2.requestData]);
16580
17150
  React.useEffect(function () {
16581
17151
  localization.locale(localStorage.getItem("locale"));
16582
17152
  localization.loadMessages(JSON.parse(localStorage.getItem("localTranslation")));
@@ -16584,14 +17154,26 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
16584
17154
  gridRef.current.instance.updateDimensions();
16585
17155
  }
16586
17156
  }, []);
16587
- React.useEffect(function () {
17157
+ var actionButtons = React.useMemo(function () {
17158
+ if (props.actionButtonGroup) {
17159
+ if (props.actionButtonGroup.length >= 2 && !props.edit) {
17160
+ return props.actionButtonGroup.slice(0, 2);
17161
+ } else {
17162
+ return props.actionButtonGroup;
17163
+ }
17164
+ } else {
17165
+ return [];
17166
+ }
17167
+ }, [props.actionButtonGroup]);
17168
+ var kebabMenuButtons = React.useMemo(function () {
16588
17169
  if (props.actionButtonGroup) {
16589
17170
  if (props.actionButtonGroup.length >= 2 && !props.edit) {
16590
- setActionButtons(props.actionButtonGroup.slice(0, 2));
16591
- setKebabMenuButtons(props.actionButtonGroup.slice(2, props.actionButtonGroup.length));
17171
+ return props.actionButtonGroup.slice(2, props.actionButtonGroup.length);
16592
17172
  } else {
16593
- setActionButtons(props.actionButtonGroup);
17173
+ return [];
16594
17174
  }
17175
+ } else {
17176
+ return [];
16595
17177
  }
16596
17178
  }, [props.actionButtonGroup]);
16597
17179
  var handleRef = function handleRef(instance) {
@@ -16599,8 +17181,10 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
16599
17181
  gridRef.current = instance;
16600
17182
  }
16601
17183
  };
16602
- var fetchData = function fetchData() {
17184
+ var fetchData = React.useCallback(function () {
16603
17185
  try {
17186
+ var _props$axiosRequest3;
17187
+ if (Object.keys((_props$axiosRequest3 = props.axiosRequest) === null || _props$axiosRequest3 === void 0 ? void 0 : _props$axiosRequest3.requestData).length === 0) return Promise.resolve();
16604
17188
  setIsLoading(true);
16605
17189
  var _temp2 = function () {
16606
17190
  if (props.isServerSide) {
@@ -16642,21 +17226,8 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
16642
17226
  } catch (e) {
16643
17227
  return Promise.reject(e);
16644
17228
  }
16645
- };
16646
- var onContentReady = function onContentReady(e) {
16647
- setTimeout(function () {
16648
- var dxScrollable = e.component.getScrollable();
16649
- if (dxScrollable != null) {
16650
- dxScrollable.off("scroll");
16651
- dxScrollable.on("scroll", function (args) {
16652
- if (args.reachedBottom) {
16653
- getServerSide("reachedBottom");
16654
- }
16655
- });
16656
- }
16657
- }, 10);
16658
- };
16659
- var onEditorPreparing = function onEditorPreparing(e) {
17229
+ }, [(_props$axiosRequest4 = props.axiosRequest) === null || _props$axiosRequest4 === void 0 ? void 0 : _props$axiosRequest4.requestData, (_props$axiosRequest5 = props.axiosRequest) === null || _props$axiosRequest5 === void 0 ? void 0 : _props$axiosRequest5.apiUrl, (_props$axiosRequest6 = props.axiosRequest) === null || _props$axiosRequest6 === void 0 ? void 0 : _props$axiosRequest6.environmentUrl, (_props$axiosRequest7 = props.axiosRequest) === null || _props$axiosRequest7 === void 0 ? void 0 : _props$axiosRequest7.requestQueryString, (_props$axiosRequest8 = props.axiosRequest) === null || _props$axiosRequest8 === void 0 ? void 0 : _props$axiosRequest8.requestType, props.pageSize, props.isServerSide]);
17230
+ var onEditorPreparing = React.useCallback(function (e) {
16660
17231
  if (e.row !== undefined && e.parentType === 'dataRow') {
16661
17232
  if (props.isServerSide) {
16662
17233
  var disableScrolling = function disableScrolling() {
@@ -16669,19 +17240,34 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
16669
17240
  e.editorOptions.onFocusOut = enableScrolling;
16670
17241
  }
16671
17242
  }
16672
- };
16673
- var getServerSide = function getServerSide(type) {
16674
- if (type === "reachedBottom") {
16675
- if (totalPageCount <= loadedPageCount) {
16676
- return Promise.resolve();
16677
- } else {
16678
- loadedPageCount = loadedPageCount + 1;
16679
- fetchData();
16680
- }
17243
+ }, [props.isServerSide]);
17244
+ var getServerSide = React.useCallback(function (type) {
17245
+ try {
17246
+ var run = throttle_1(function (type) {
17247
+ try {
17248
+ return Promise.resolve(function () {
17249
+ if (type === "reachedBottom") {
17250
+ return function () {
17251
+ if (totalPageCount <= loadedPageCount) {} else {
17252
+ loadedPageCount = loadedPageCount + 1;
17253
+ return Promise.resolve(fetchData()).then(function () {});
17254
+ }
17255
+ }();
17256
+ }
17257
+ }());
17258
+ } catch (e) {
17259
+ return Promise.reject(e);
17260
+ }
17261
+ }, 5000, {
17262
+ trailing: false
17263
+ });
17264
+ run(type);
17265
+ return Promise.resolve();
17266
+ } catch (e) {
17267
+ return Promise.reject(e);
16681
17268
  }
16682
- return Promise.resolve();
16683
- };
16684
- var onExporting = function onExporting(e) {
17269
+ }, [totalPageCount, loadedPageCount, fetchData]);
17270
+ var onExporting = React.useCallback(function (e) {
16685
17271
  if (e.format === 'xlsx') {
16686
17272
  var workbook = new exceljs.Workbook();
16687
17273
  excel_exporter.exportDataGrid({
@@ -16705,8 +17291,8 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
16705
17291
  doc.save(fileName + '.pdf');
16706
17292
  });
16707
17293
  }
16708
- };
16709
- var customLoad = function customLoad() {
17294
+ }, [fileName]);
17295
+ var customLoad = React.useCallback(function () {
16710
17296
  var state = JSON.parse(localStorage.getItem(props.exportFileName + "Storage"));
16711
17297
  if (localStorage.getItem(props.exportFileName + "Storage")) {
16712
17298
  state.selectedRowKeys = [];
@@ -16717,8 +17303,8 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
16717
17303
  };
16718
17304
  }
16719
17305
  return state;
16720
- };
16721
- var customSave = function customSave(state) {
17306
+ }, [props.filterEnabledShow]);
17307
+ var customSave = React.useCallback(function (state) {
16722
17308
  state.selectedRowKeys = [];
16723
17309
  if (props.filterEnabledShow) state.filterPanel = {
16724
17310
  filterEnabled: false
@@ -16726,8 +17312,8 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
16726
17312
  filterEnabled: true
16727
17313
  };
16728
17314
  localStorage.setItem(props.exportFileName + "Storage", JSON.stringify(state));
16729
- };
16730
- var onEditorPrepared = function onEditorPrepared(info) {
17315
+ }, [props.filterEnabledShow]);
17316
+ var onEditorPrepared = React.useCallback(function (info) {
16731
17317
  if (info.parentType === 'filterRow' && info.editorName === "dxSelectBox" && info.dataField === "IsActive") {
16732
17318
  if (info.dataSource != null && info.dataSource.length > 0) {
16733
17319
  info.showAllText = info.dataSource.find(function (i) {
@@ -16741,8 +17327,8 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
16741
17327
  }).label;
16742
17328
  }
16743
17329
  }
16744
- };
16745
- var renderTotal = function renderTotal() {
17330
+ }, []);
17331
+ var renderTotal = React.useCallback(function () {
16746
17332
  var totalloaded = 0;
16747
17333
  if (data.length < 50) {
16748
17334
  totalloaded = data.length;
@@ -16756,15 +17342,15 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
16756
17342
  result = totalRecordCount > 0 ? totalloaded + " Loaded - " + totalRecordCount + " Total" : "";
16757
17343
  }
16758
17344
  return result;
16759
- };
16760
- var renderTotalPaging = function renderTotalPaging() {
17345
+ }, [data, filteredRowCount, loadedPageCount, props.pageSize, totalRecordCount]);
17346
+ var renderTotalPaging = React.useCallback(function () {
16761
17347
  var result = "";
16762
17348
  if (totalPageCount > 1) {
16763
17349
  result = loadedPageCount + " / " + totalPageCount;
16764
17350
  }
16765
17351
  return result;
16766
- };
16767
- var actionCellRender = function actionCellRender() {
17352
+ }, [loadedPageCount, totalPageCount]);
17353
+ var actionCellRender = React.useMemo(function () {
16768
17354
  return React__default.createElement(devextremeReact.DropDownButton, {
16769
17355
  icon: server_browser.renderToString(React__default.createElement(DynamicIcon, {
16770
17356
  iconName: 'kebabMenu'
@@ -16774,11 +17360,45 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
16774
17360
  return e.itemData.onClick();
16775
17361
  }
16776
17362
  });
17363
+ }, [kebabMenuButtons]);
17364
+ var onScrollEnd = React.useCallback(function () {
17365
+ getServerSide("reachedBottom");
17366
+ }, [(_props$axiosRequest9 = props.axiosRequest) === null || _props$axiosRequest9 === void 0 ? void 0 : _props$axiosRequest9.requestData, getServerSide]);
17367
+ var handleScroll = function handleScroll(e) {
17368
+ var run = debounce_1(function (e) {
17369
+ var _scrollable$scrollTop, _scrollable$clientHei, _scrollable$scrollHei;
17370
+ var scrollable = e.target;
17371
+ var top = (_scrollable$scrollTop = scrollable === null || scrollable === void 0 ? void 0 : scrollable.scrollTop) != null ? _scrollable$scrollTop : 0;
17372
+ var height = (_scrollable$clientHei = scrollable === null || scrollable === void 0 ? void 0 : scrollable.clientHeight) != null ? _scrollable$clientHei : 0;
17373
+ var scrollHeight = (_scrollable$scrollHei = scrollable === null || scrollable === void 0 ? void 0 : scrollable.scrollHeight) != null ? _scrollable$scrollHei : 0;
17374
+ var maxHeight = Math.max(top, height, scrollHeight) - 1;
17375
+ var reachedBottom = Math.ceil(top + height) >= maxHeight;
17376
+ console.log("reachedBottom", Math.ceil(top + height), maxHeight, reachedBottom);
17377
+ var lastScrollTop = 0;
17378
+ if (top < lastScrollTop) {
17379
+ return;
17380
+ }
17381
+ lastScrollTop = top <= 0 ? 0 : top;
17382
+ if (reachedBottom) {
17383
+ onScrollEnd();
17384
+ }
17385
+ }, 200);
17386
+ run(e);
16777
17387
  };
17388
+ React.useEffect(function () {
17389
+ var scrollable = document.querySelector('.dx-scrollable-container');
17390
+ if (scrollable) {
17391
+ scrollable.addEventListener('scrollend', handleScroll);
17392
+ }
17393
+ return function () {
17394
+ if (scrollable) {
17395
+ scrollable.removeEventListener('scrollend', handleScroll);
17396
+ }
17397
+ };
17398
+ }, [data.length]);
16778
17399
  return React__default.createElement(React__default.Fragment, null, React__default.createElement(DataGrid__default, {
16779
17400
  keyExpr: props.keyExpr,
16780
17401
  dataSource: props.isServerSide ? data : props.dataSource,
16781
- onContentReady: onContentReady,
16782
17402
  showBorders: true,
16783
17403
  columnAutoWidth: false,
16784
17404
  onEditorPreparing: onEditorPreparing,
@@ -16846,7 +17466,9 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
16846
17466
  caption: "",
16847
17467
  type: "buttons",
16848
17468
  showInColumnChooser: false,
16849
- cellRender: actionCellRender
17469
+ cellRender: function cellRender() {
17470
+ return actionCellRender;
17471
+ }
16850
17472
  }), props.edit && React__default.createElement(DataGrid.Editing, {
16851
17473
  mode: props.edit.mode,
16852
17474
  allowUpdating: props.edit.allowUpdating,
@@ -16964,7 +17586,6 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
16964
17586
  customSave: customSave
16965
17587
  })));
16966
17588
  };
16967
- var OdsRemoteDataGrid$1 = React__default.memo(OdsRemoteDataGrid);
16968
17589
 
16969
17590
  exports.DxTreeList = DxTreeList;
16970
17591
  exports.DxTreeView = DxTreeView;
@@ -17005,7 +17626,7 @@ exports.OdsRadio = OdsRadio;
17005
17626
  exports.OdsRadioGroup = OdsRadioGroup;
17006
17627
  exports.OdsRangeTimepicker = OdsRangeTimepicker;
17007
17628
  exports.OdsRate = OdsRate;
17008
- exports.OdsRemoteDataGrid = OdsRemoteDataGrid$1;
17629
+ exports.OdsRemoteDataGrid = OdsRemoteDataGrid;
17009
17630
  exports.OdsSearch = OdsSearch;
17010
17631
  exports.OdsSelect = OdsSelect;
17011
17632
  exports.OdsSelectableTable = OdsSelectableTable;