ods-component-lib 1.18.6 → 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,22 +17139,41 @@ 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")));
17153
+ if (gridRef.current) {
17154
+ gridRef.current.instance.updateDimensions();
17155
+ }
16583
17156
  }, []);
16584
- React.useEffect(function () {
16585
- if (props.actionButtonGroup.length >= 2) {
16586
- setActionButtons(props.actionButtonGroup.slice(0, 2));
16587
- setKebabMenuButtons(props.actionButtonGroup.slice(2, props.actionButtonGroup.length));
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 () {
17169
+ if (props.actionButtonGroup) {
17170
+ if (props.actionButtonGroup.length >= 2 && !props.edit) {
17171
+ return props.actionButtonGroup.slice(2, props.actionButtonGroup.length);
17172
+ } else {
17173
+ return [];
17174
+ }
17175
+ } else {
17176
+ return [];
16588
17177
  }
16589
17178
  }, [props.actionButtonGroup]);
16590
17179
  var handleRef = function handleRef(instance) {
@@ -16592,8 +17181,10 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
16592
17181
  gridRef.current = instance;
16593
17182
  }
16594
17183
  };
16595
- var fetchData = function fetchData() {
17184
+ var fetchData = React.useCallback(function () {
16596
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();
16597
17188
  setIsLoading(true);
16598
17189
  var _temp2 = function () {
16599
17190
  if (props.isServerSide) {
@@ -16635,22 +17226,8 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
16635
17226
  } catch (e) {
16636
17227
  return Promise.reject(e);
16637
17228
  }
16638
- };
16639
- var onContentReady = function onContentReady(e) {
16640
- setTimeout(function () {
16641
- var dxScrollable = e.component.getScrollable();
16642
- if (dxScrollable != null) {
16643
- dxScrollable.off("scroll");
16644
- dxScrollable.on("scroll", function (args) {
16645
- if (args.reachedBottom) {
16646
- debugger;
16647
- getServerSide("reachedBottom");
16648
- }
16649
- });
16650
- }
16651
- }, 10);
16652
- };
16653
- 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) {
16654
17231
  if (e.row !== undefined && e.parentType === 'dataRow') {
16655
17232
  if (props.isServerSide) {
16656
17233
  var disableScrolling = function disableScrolling() {
@@ -16663,19 +17240,34 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
16663
17240
  e.editorOptions.onFocusOut = enableScrolling;
16664
17241
  }
16665
17242
  }
16666
- };
16667
- var getServerSide = function getServerSide(type) {
16668
- if (type === "reachedBottom") {
16669
- if (totalPageCount <= loadedPageCount) {
16670
- return Promise.resolve();
16671
- } else {
16672
- loadedPageCount = loadedPageCount + 1;
16673
- fetchData();
16674
- }
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);
16675
17268
  }
16676
- return Promise.resolve();
16677
- };
16678
- var onExporting = function onExporting(e) {
17269
+ }, [totalPageCount, loadedPageCount, fetchData]);
17270
+ var onExporting = React.useCallback(function (e) {
16679
17271
  if (e.format === 'xlsx') {
16680
17272
  var workbook = new exceljs.Workbook();
16681
17273
  excel_exporter.exportDataGrid({
@@ -16699,8 +17291,8 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
16699
17291
  doc.save(fileName + '.pdf');
16700
17292
  });
16701
17293
  }
16702
- };
16703
- var customLoad = function customLoad() {
17294
+ }, [fileName]);
17295
+ var customLoad = React.useCallback(function () {
16704
17296
  var state = JSON.parse(localStorage.getItem(props.exportFileName + "Storage"));
16705
17297
  if (localStorage.getItem(props.exportFileName + "Storage")) {
16706
17298
  state.selectedRowKeys = [];
@@ -16711,8 +17303,8 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
16711
17303
  };
16712
17304
  }
16713
17305
  return state;
16714
- };
16715
- var customSave = function customSave(state) {
17306
+ }, [props.filterEnabledShow]);
17307
+ var customSave = React.useCallback(function (state) {
16716
17308
  state.selectedRowKeys = [];
16717
17309
  if (props.filterEnabledShow) state.filterPanel = {
16718
17310
  filterEnabled: false
@@ -16720,8 +17312,8 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
16720
17312
  filterEnabled: true
16721
17313
  };
16722
17314
  localStorage.setItem(props.exportFileName + "Storage", JSON.stringify(state));
16723
- };
16724
- var onEditorPrepared = function onEditorPrepared(info) {
17315
+ }, [props.filterEnabledShow]);
17316
+ var onEditorPrepared = React.useCallback(function (info) {
16725
17317
  if (info.parentType === 'filterRow' && info.editorName === "dxSelectBox" && info.dataField === "IsActive") {
16726
17318
  if (info.dataSource != null && info.dataSource.length > 0) {
16727
17319
  info.showAllText = info.dataSource.find(function (i) {
@@ -16735,8 +17327,8 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
16735
17327
  }).label;
16736
17328
  }
16737
17329
  }
16738
- };
16739
- var renderTotal = function renderTotal() {
17330
+ }, []);
17331
+ var renderTotal = React.useCallback(function () {
16740
17332
  var totalloaded = 0;
16741
17333
  if (data.length < 50) {
16742
17334
  totalloaded = data.length;
@@ -16750,15 +17342,15 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
16750
17342
  result = totalRecordCount > 0 ? totalloaded + " Loaded - " + totalRecordCount + " Total" : "";
16751
17343
  }
16752
17344
  return result;
16753
- };
16754
- var renderTotalPaging = function renderTotalPaging() {
17345
+ }, [data, filteredRowCount, loadedPageCount, props.pageSize, totalRecordCount]);
17346
+ var renderTotalPaging = React.useCallback(function () {
16755
17347
  var result = "";
16756
17348
  if (totalPageCount > 1) {
16757
17349
  result = loadedPageCount + " / " + totalPageCount;
16758
17350
  }
16759
17351
  return result;
16760
- };
16761
- var actionCellRender = function actionCellRender() {
17352
+ }, [loadedPageCount, totalPageCount]);
17353
+ var actionCellRender = React.useMemo(function () {
16762
17354
  return React__default.createElement(devextremeReact.DropDownButton, {
16763
17355
  icon: server_browser.renderToString(React__default.createElement(DynamicIcon, {
16764
17356
  iconName: 'kebabMenu'
@@ -16768,11 +17360,45 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
16768
17360
  return e.itemData.onClick();
16769
17361
  }
16770
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);
16771
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]);
16772
17399
  return React__default.createElement(React__default.Fragment, null, React__default.createElement(DataGrid__default, {
16773
17400
  keyExpr: props.keyExpr,
16774
17401
  dataSource: props.isServerSide ? data : props.dataSource,
16775
- onContentReady: onContentReady,
16776
17402
  showBorders: true,
16777
17403
  columnAutoWidth: false,
16778
17404
  onEditorPreparing: onEditorPreparing,
@@ -16805,9 +17431,7 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
16805
17431
  key: col.dataField
16806
17432
  }, col, {
16807
17433
  minWidth: 180
16808
- }), col.required && React__default.createElement(DataGrid.RequiredRule, {
16809
- message: col.requiredMessage
16810
- }), col.dataField === 'IsActive' && React__default.createElement(DataGrid.HeaderFilter, {
17434
+ }), col.lookUp && React__default.createElement(devextremeReact.Lookup, Object.assign({}, col.lookUp)), col.dataField === 'IsActive' && React__default.createElement(DataGrid.HeaderFilter, {
16811
17435
  dataSource: [{
16812
17436
  text: 'Active',
16813
17437
  value: true
@@ -16820,10 +17444,10 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
16820
17444
  dataField: "Actions",
16821
17445
  fixed: true,
16822
17446
  allowSorting: false,
16823
- caption: "Actions",
17447
+ caption: props.actionButtonGroupCaption,
16824
17448
  type: "buttons",
16825
17449
  showInColumnChooser: false
16826
- }, actionButtons.map(function (buttonItem) {
17450
+ }, !props.edit && actionButtons.map(function (buttonItem) {
16827
17451
  return React__default.createElement(DataGrid.Button, {
16828
17452
  hint: buttonItem.hint,
16829
17453
  visible: buttonItem.visible,
@@ -16833,6 +17457,8 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
16833
17457
  })),
16834
17458
  onClick: buttonItem.onClick
16835
17459
  });
17460
+ }), props.edit && actionButtons.map(function (buttonItem) {
17461
+ return React__default.createElement(DataGrid.Button, Object.assign({}, buttonItem));
16836
17462
  })), kebabMenuButtons.length > 0 && React__default.createElement(DataGrid.Column, {
16837
17463
  dataField: "Actionss",
16838
17464
  fixed: true,
@@ -16840,7 +17466,9 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
16840
17466
  caption: "",
16841
17467
  type: "buttons",
16842
17468
  showInColumnChooser: false,
16843
- cellRender: actionCellRender
17469
+ cellRender: function cellRender() {
17470
+ return actionCellRender;
17471
+ }
16844
17472
  }), props.edit && React__default.createElement(DataGrid.Editing, {
16845
17473
  mode: props.edit.mode,
16846
17474
  allowUpdating: props.edit.allowUpdating,
@@ -16958,7 +17586,6 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
16958
17586
  customSave: customSave
16959
17587
  })));
16960
17588
  };
16961
- var OdsRemoteDataGrid$1 = React__default.memo(OdsRemoteDataGrid);
16962
17589
 
16963
17590
  exports.DxTreeList = DxTreeList;
16964
17591
  exports.DxTreeView = DxTreeView;
@@ -16999,7 +17626,7 @@ exports.OdsRadio = OdsRadio;
16999
17626
  exports.OdsRadioGroup = OdsRadioGroup;
17000
17627
  exports.OdsRangeTimepicker = OdsRangeTimepicker;
17001
17628
  exports.OdsRate = OdsRate;
17002
- exports.OdsRemoteDataGrid = OdsRemoteDataGrid$1;
17629
+ exports.OdsRemoteDataGrid = OdsRemoteDataGrid;
17003
17630
  exports.OdsSearch = OdsSearch;
17004
17631
  exports.OdsSelect = OdsSelect;
17005
17632
  exports.OdsSelectableTable = OdsSelectableTable;