ods-component-lib 1.18.229 → 1.18.231

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 (33) hide show
  1. package/dist/components/antd/currencyInput/OdsCurrencyInput.stories.d.ts +5 -2
  2. package/dist/components/antd/currencyInput/types.d.ts +2 -0
  3. package/dist/index.d.ts +1 -0
  4. package/dist/index.js +1118 -48
  5. package/dist/index.js.map +1 -1
  6. package/dist/index.modern.js +1118 -49
  7. package/dist/index.modern.js.map +1 -1
  8. package/package.json +3 -2
  9. package/dist/components/antd/modal/OdsAdvanceModal.d.ts +0 -7
  10. package/dist/components/devextreme/OdsTimeline/OdsTimeline.Constants.d.ts +0 -4
  11. package/dist/components/devextreme/OdsTimeline/OdsTimeline.Functions.d.ts +0 -6
  12. package/dist/components/devextreme/OdsTimeline/OdsTimeline.Types.d.ts +0 -77
  13. package/dist/components/devextreme/OdsTimeline/OdsTimeline.d.ts +0 -5
  14. package/dist/components/devextreme/OdsTimeline/OdsTimelineDateFilter.d.ts +0 -3
  15. package/dist/components/devextreme/OdsTimeline/OdsTimelineSelectionColumn.d.ts +0 -2
  16. package/dist/stories/OdsAdvanceModal/OdsAdvanceModal.stories.d.ts +0 -42
  17. package/dist/stories/OdsAdvanceModal/Samples/BasicOdsAdvanceModal.sample.d.ts +0 -8
  18. package/dist/stories/OdsBasicDataGrid/OdsBasicDataGrid.stories.d.ts +0 -110
  19. package/dist/stories/OdsBasicDataGrid/Samples/MergeCells/MergeCells.Constants.d.ts +0 -14
  20. package/dist/stories/OdsBasicDataGrid/Samples/MergeCells/MergeCells.MockData.d.ts +0 -7
  21. package/dist/stories/OdsBasicDataGrid/Samples/MergeCells/MergeCells.Sample.d.ts +0 -1
  22. package/dist/stories/OdsModal/Samples/OdsModal.Sample.d.ts +0 -1
  23. package/dist/stories/OdsPivotGrid/OdsPivotGrid.stories.d.ts +0 -15
  24. package/dist/stories/OdsPivotGrid/Samples/BasicPivotGrid/BasicPivotGrid.Constants.d.ts +0 -2
  25. package/dist/stories/OdsPivotGrid/Samples/BasicPivotGrid/BasicPivotGrid.MockData.d.ts +0 -7
  26. package/dist/stories/OdsPivotGrid/Samples/BasicPivotGrid/BasicPivotGrid.Sample.d.ts +0 -1
  27. package/dist/stories/OdsRemoteDataGrid/Samples/MergeCells/MergeCells.Constants.d.ts +0 -5
  28. package/dist/stories/OdsRemoteDataGrid/Samples/MergeCells/MergeCells.MockData.d.ts +0 -6
  29. package/dist/stories/OdsRemoteDataGrid/Samples/MergeCells/MergeCells.Sample.d.ts +0 -1
  30. package/dist/stories/OdsTimePicker/Samples/TimeRangePicker.d.ts +0 -2
  31. package/dist/stories/OdsTimeline/OdsTimeline.Constants.d.ts +0 -3
  32. package/dist/stories/OdsTimeline/OdsTimeline.Functions.d.ts +0 -6
  33. package/dist/stories/OdsTimeline/OdsTimeline.MockData.d.ts +0 -39
package/dist/index.js CHANGED
@@ -46,6 +46,37 @@ var antdStyle = require('antd-style');
46
46
  var FileSaver = require('file-saver');
47
47
  require('devextreme/dist/css/dx.light.css');
48
48
 
49
+ function _toPrimitive(t, r) {
50
+ if ("object" != typeof t || !t) return t;
51
+ var e = t[Symbol.toPrimitive];
52
+ if (void 0 !== e) {
53
+ var i = e.call(t, r || "default");
54
+ if ("object" != typeof i) return i;
55
+ throw new TypeError("@@toPrimitive must return a primitive value.");
56
+ }
57
+ return ("string" === r ? String : Number)(t);
58
+ }
59
+ function _toPropertyKey(t) {
60
+ var i = _toPrimitive(t, "string");
61
+ return "symbol" == typeof i ? i : i + "";
62
+ }
63
+ function _defineProperties(target, props) {
64
+ for (var i = 0; i < props.length; i++) {
65
+ var descriptor = props[i];
66
+ descriptor.enumerable = descriptor.enumerable || false;
67
+ descriptor.configurable = true;
68
+ if ("value" in descriptor) descriptor.writable = true;
69
+ Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor);
70
+ }
71
+ }
72
+ function _createClass(Constructor, protoProps, staticProps) {
73
+ if (protoProps) _defineProperties(Constructor.prototype, protoProps);
74
+ if (staticProps) _defineProperties(Constructor, staticProps);
75
+ Object.defineProperty(Constructor, "prototype", {
76
+ writable: false
77
+ });
78
+ return Constructor;
79
+ }
49
80
  function _extends() {
50
81
  _extends = Object.assign ? Object.assign.bind() : function (target) {
51
82
  for (var i = 1; i < arguments.length; i++) {
@@ -37729,12 +37760,12 @@ var CurrencySelect = function CurrencySelect(_ref) {
37729
37760
  }));
37730
37761
  };
37731
37762
 
37732
- var _excluded$7 = ["currencySelectProps", "defaultValue", "locale", "dontFormatValue", "min"];
37763
+ var _excluded$7 = ["currencySelectProps", "defaultValue", "locale", "dontFormatValue", "min", "asPercentage", "isOnRight"];
37733
37764
  var _templateObject$z;
37734
37765
  var useStyles$9 = antdStyle.createStyles(function (_ref) {
37735
37766
  var css = _ref.css;
37736
37767
  return {
37737
- Wrapper: css(_templateObject$z || (_templateObject$z = _taggedTemplateLiteralLoose(["\n width: 100%;\n "])))
37768
+ Wrapper: css(_templateObject$z || (_templateObject$z = _taggedTemplateLiteralLoose(["\n width: 100%;\n "])))
37738
37769
  };
37739
37770
  });
37740
37771
  var OdsCurrencyInput = function OdsCurrencyInput(_ref2) {
@@ -37742,10 +37773,12 @@ var OdsCurrencyInput = function OdsCurrencyInput(_ref2) {
37742
37773
  _ref2$defaultValue = _ref2.defaultValue,
37743
37774
  defaultValue = _ref2$defaultValue === void 0 ? "" : _ref2$defaultValue,
37744
37775
  _ref2$locale = _ref2.locale,
37745
- locale = _ref2$locale === void 0 ? 'tr-TR' : _ref2$locale,
37776
+ locale = _ref2$locale === void 0 ? "tr-TR" : _ref2$locale,
37746
37777
  dontFormatValue = _ref2.dontFormatValue,
37747
37778
  _ref2$min = _ref2.min,
37748
37779
  min = _ref2$min === void 0 ? 0 : _ref2$min,
37780
+ asPercentage = _ref2.asPercentage,
37781
+ isOnRight = _ref2.isOnRight,
37749
37782
  props = _objectWithoutPropertiesLoose(_ref2, _excluded$7);
37750
37783
  var _useStyles = useStyles$9(),
37751
37784
  styles = _useStyles.styles;
@@ -37756,6 +37789,9 @@ var OdsCurrencyInput = function OdsCurrencyInput(_ref2) {
37756
37789
  });
37757
37790
  }, [currencySelectProps]);
37758
37791
  var currencySelector = React.useMemo(function () {
37792
+ if (asPercentage) {
37793
+ return "%";
37794
+ }
37759
37795
  if (!currencySelectProps || !currencySelectProps.currencyOptions || currencySelectProps.currencyOptions.length === 0) {
37760
37796
  return undefined;
37761
37797
  } else if (currencySelectProps.fixedCurrency) {
@@ -37775,7 +37811,8 @@ var OdsCurrencyInput = function OdsCurrencyInput(_ref2) {
37775
37811
  }, React__default.createElement(antd.InputNumber, Object.assign({
37776
37812
  defaultValue: defaultValue,
37777
37813
  min: min,
37778
- addonBefore: currencySelector,
37814
+ addonBefore: !isOnRight && currencySelector,
37815
+ addonAfter: isOnRight && currencySelector,
37779
37816
  value: props.value,
37780
37817
  className: styles.Wrapper,
37781
37818
  onChange: function onChange(value) {
@@ -37795,9 +37832,1041 @@ var formatValue = function formatValue(value, locale) {
37795
37832
  };
37796
37833
  var parseValue = function parseValue(stringNumber, locale) {
37797
37834
  if (!stringNumber) return stringNumber;
37798
- var thousandSeparator = Intl.NumberFormat(locale).format(11111).replace(/(?:[0-9\xB2\xB3\xB9\xBC-\xBE\u0660-\u0669\u06F0-\u06F9\u07C0-\u07C9\u0966-\u096F\u09E6-\u09EF\u09F4-\u09F9\u0A66-\u0A6F\u0AE6-\u0AEF\u0B66-\u0B6F\u0B72-\u0B77\u0BE6-\u0BF2\u0C66-\u0C6F\u0C78-\u0C7E\u0CE6-\u0CEF\u0D58-\u0D5E\u0D66-\u0D78\u0DE6-\u0DEF\u0E50-\u0E59\u0ED0-\u0ED9\u0F20-\u0F33\u1040-\u1049\u1090-\u1099\u1369-\u137C\u16EE-\u16F0\u17E0-\u17E9\u17F0-\u17F9\u1810-\u1819\u1946-\u194F\u19D0-\u19DA\u1A80-\u1A89\u1A90-\u1A99\u1B50-\u1B59\u1BB0-\u1BB9\u1C40-\u1C49\u1C50-\u1C59\u2070\u2074-\u2079\u2080-\u2089\u2150-\u2182\u2185-\u2189\u2460-\u249B\u24EA-\u24FF\u2776-\u2793\u2CFD\u3007\u3021-\u3029\u3038-\u303A\u3192-\u3195\u3220-\u3229\u3248-\u324F\u3251-\u325F\u3280-\u3289\u32B1-\u32BF\uA620-\uA629\uA6E6-\uA6EF\uA830-\uA835\uA8D0-\uA8D9\uA900-\uA909\uA9D0-\uA9D9\uA9F0-\uA9F9\uAA50-\uAA59\uABF0-\uABF9\uFF10-\uFF19]|\uD800[\uDD07-\uDD33\uDD40-\uDD78\uDD8A\uDD8B\uDEE1-\uDEFB\uDF20-\uDF23\uDF41\uDF4A\uDFD1-\uDFD5]|\uD801[\uDCA0-\uDCA9]|\uD802[\uDC58-\uDC5F\uDC79-\uDC7F\uDCA7-\uDCAF\uDCFB-\uDCFF\uDD16-\uDD1B\uDDBC\uDDBD\uDDC0-\uDDCF\uDDD2-\uDDFF\uDE40-\uDE48\uDE7D\uDE7E\uDE9D-\uDE9F\uDEEB-\uDEEF\uDF58-\uDF5F\uDF78-\uDF7F\uDFA9-\uDFAF]|\uD803[\uDCFA-\uDCFF\uDD30-\uDD39\uDE60-\uDE7E\uDF1D-\uDF26\uDF51-\uDF54\uDFC5-\uDFCB]|\uD804[\uDC52-\uDC6F\uDCF0-\uDCF9\uDD36-\uDD3F\uDDD0-\uDDD9\uDDE1-\uDDF4\uDEF0-\uDEF9]|\uD805[\uDC50-\uDC59\uDCD0-\uDCD9\uDE50-\uDE59\uDEC0-\uDEC9\uDF30-\uDF3B]|\uD806[\uDCE0-\uDCF2\uDD50-\uDD59]|\uD807[\uDC50-\uDC6C\uDD50-\uDD59\uDDA0-\uDDA9\uDF50-\uDF59\uDFC0-\uDFD4]|\uD809[\uDC00-\uDC6E]|\uD81A[\uDE60-\uDE69\uDEC0-\uDEC9\uDF50-\uDF59\uDF5B-\uDF61]|\uD81B[\uDE80-\uDE96]|\uD834[\uDEC0-\uDED3\uDEE0-\uDEF3\uDF60-\uDF78]|\uD835[\uDFCE-\uDFFF]|\uD838[\uDD40-\uDD49\uDEF0-\uDEF9]|\uD839[\uDCF0-\uDCF9]|\uD83A[\uDCC7-\uDCCF\uDD50-\uDD59]|\uD83B[\uDC71-\uDCAB\uDCAD-\uDCAF\uDCB1-\uDCB4\uDD01-\uDD2D\uDD2F-\uDD3D]|\uD83C[\uDD00-\uDD0C]|\uD83E[\uDFF0-\uDFF9])/g, '');
37799
- var decimalSeparator = Intl.NumberFormat(locale).format(1.1).replace(/(?:[0-9\xB2\xB3\xB9\xBC-\xBE\u0660-\u0669\u06F0-\u06F9\u07C0-\u07C9\u0966-\u096F\u09E6-\u09EF\u09F4-\u09F9\u0A66-\u0A6F\u0AE6-\u0AEF\u0B66-\u0B6F\u0B72-\u0B77\u0BE6-\u0BF2\u0C66-\u0C6F\u0C78-\u0C7E\u0CE6-\u0CEF\u0D58-\u0D5E\u0D66-\u0D78\u0DE6-\u0DEF\u0E50-\u0E59\u0ED0-\u0ED9\u0F20-\u0F33\u1040-\u1049\u1090-\u1099\u1369-\u137C\u16EE-\u16F0\u17E0-\u17E9\u17F0-\u17F9\u1810-\u1819\u1946-\u194F\u19D0-\u19DA\u1A80-\u1A89\u1A90-\u1A99\u1B50-\u1B59\u1BB0-\u1BB9\u1C40-\u1C49\u1C50-\u1C59\u2070\u2074-\u2079\u2080-\u2089\u2150-\u2182\u2185-\u2189\u2460-\u249B\u24EA-\u24FF\u2776-\u2793\u2CFD\u3007\u3021-\u3029\u3038-\u303A\u3192-\u3195\u3220-\u3229\u3248-\u324F\u3251-\u325F\u3280-\u3289\u32B1-\u32BF\uA620-\uA629\uA6E6-\uA6EF\uA830-\uA835\uA8D0-\uA8D9\uA900-\uA909\uA9D0-\uA9D9\uA9F0-\uA9F9\uAA50-\uAA59\uABF0-\uABF9\uFF10-\uFF19]|\uD800[\uDD07-\uDD33\uDD40-\uDD78\uDD8A\uDD8B\uDEE1-\uDEFB\uDF20-\uDF23\uDF41\uDF4A\uDFD1-\uDFD5]|\uD801[\uDCA0-\uDCA9]|\uD802[\uDC58-\uDC5F\uDC79-\uDC7F\uDCA7-\uDCAF\uDCFB-\uDCFF\uDD16-\uDD1B\uDDBC\uDDBD\uDDC0-\uDDCF\uDDD2-\uDDFF\uDE40-\uDE48\uDE7D\uDE7E\uDE9D-\uDE9F\uDEEB-\uDEEF\uDF58-\uDF5F\uDF78-\uDF7F\uDFA9-\uDFAF]|\uD803[\uDCFA-\uDCFF\uDD30-\uDD39\uDE60-\uDE7E\uDF1D-\uDF26\uDF51-\uDF54\uDFC5-\uDFCB]|\uD804[\uDC52-\uDC6F\uDCF0-\uDCF9\uDD36-\uDD3F\uDDD0-\uDDD9\uDDE1-\uDDF4\uDEF0-\uDEF9]|\uD805[\uDC50-\uDC59\uDCD0-\uDCD9\uDE50-\uDE59\uDEC0-\uDEC9\uDF30-\uDF3B]|\uD806[\uDCE0-\uDCF2\uDD50-\uDD59]|\uD807[\uDC50-\uDC6C\uDD50-\uDD59\uDDA0-\uDDA9\uDF50-\uDF59\uDFC0-\uDFD4]|\uD809[\uDC00-\uDC6E]|\uD81A[\uDE60-\uDE69\uDEC0-\uDEC9\uDF50-\uDF59\uDF5B-\uDF61]|\uD81B[\uDE80-\uDE96]|\uD834[\uDEC0-\uDED3\uDEE0-\uDEF3\uDF60-\uDF78]|\uD835[\uDFCE-\uDFFF]|\uD838[\uDD40-\uDD49\uDEF0-\uDEF9]|\uD839[\uDCF0-\uDCF9]|\uD83A[\uDCC7-\uDCCF\uDD50-\uDD59]|\uD83B[\uDC71-\uDCAB\uDCAD-\uDCAF\uDCB1-\uDCB4\uDD01-\uDD2D\uDD2F-\uDD3D]|\uD83C[\uDD00-\uDD0C]|\uD83E[\uDFF0-\uDFF9])/g, '');
37800
- return parseFloat(stringNumber.replace(new RegExp('\\' + thousandSeparator, 'g'), '').replace(new RegExp('\\' + decimalSeparator), '.'));
37835
+ var thousandSeparator = Intl.NumberFormat(locale).format(11111).replace(/(?:[0-9\xB2\xB3\xB9\xBC-\xBE\u0660-\u0669\u06F0-\u06F9\u07C0-\u07C9\u0966-\u096F\u09E6-\u09EF\u09F4-\u09F9\u0A66-\u0A6F\u0AE6-\u0AEF\u0B66-\u0B6F\u0B72-\u0B77\u0BE6-\u0BF2\u0C66-\u0C6F\u0C78-\u0C7E\u0CE6-\u0CEF\u0D58-\u0D5E\u0D66-\u0D78\u0DE6-\u0DEF\u0E50-\u0E59\u0ED0-\u0ED9\u0F20-\u0F33\u1040-\u1049\u1090-\u1099\u1369-\u137C\u16EE-\u16F0\u17E0-\u17E9\u17F0-\u17F9\u1810-\u1819\u1946-\u194F\u19D0-\u19DA\u1A80-\u1A89\u1A90-\u1A99\u1B50-\u1B59\u1BB0-\u1BB9\u1C40-\u1C49\u1C50-\u1C59\u2070\u2074-\u2079\u2080-\u2089\u2150-\u2182\u2185-\u2189\u2460-\u249B\u24EA-\u24FF\u2776-\u2793\u2CFD\u3007\u3021-\u3029\u3038-\u303A\u3192-\u3195\u3220-\u3229\u3248-\u324F\u3251-\u325F\u3280-\u3289\u32B1-\u32BF\uA620-\uA629\uA6E6-\uA6EF\uA830-\uA835\uA8D0-\uA8D9\uA900-\uA909\uA9D0-\uA9D9\uA9F0-\uA9F9\uAA50-\uAA59\uABF0-\uABF9\uFF10-\uFF19]|\uD800[\uDD07-\uDD33\uDD40-\uDD78\uDD8A\uDD8B\uDEE1-\uDEFB\uDF20-\uDF23\uDF41\uDF4A\uDFD1-\uDFD5]|\uD801[\uDCA0-\uDCA9]|\uD802[\uDC58-\uDC5F\uDC79-\uDC7F\uDCA7-\uDCAF\uDCFB-\uDCFF\uDD16-\uDD1B\uDDBC\uDDBD\uDDC0-\uDDCF\uDDD2-\uDDFF\uDE40-\uDE48\uDE7D\uDE7E\uDE9D-\uDE9F\uDEEB-\uDEEF\uDF58-\uDF5F\uDF78-\uDF7F\uDFA9-\uDFAF]|\uD803[\uDCFA-\uDCFF\uDD30-\uDD39\uDE60-\uDE7E\uDF1D-\uDF26\uDF51-\uDF54\uDFC5-\uDFCB]|\uD804[\uDC52-\uDC6F\uDCF0-\uDCF9\uDD36-\uDD3F\uDDD0-\uDDD9\uDDE1-\uDDF4\uDEF0-\uDEF9]|\uD805[\uDC50-\uDC59\uDCD0-\uDCD9\uDE50-\uDE59\uDEC0-\uDEC9\uDF30-\uDF3B]|\uD806[\uDCE0-\uDCF2\uDD50-\uDD59]|\uD807[\uDC50-\uDC6C\uDD50-\uDD59\uDDA0-\uDDA9\uDF50-\uDF59\uDFC0-\uDFD4]|\uD809[\uDC00-\uDC6E]|\uD81A[\uDE60-\uDE69\uDEC0-\uDEC9\uDF50-\uDF59\uDF5B-\uDF61]|\uD81B[\uDE80-\uDE96]|\uD834[\uDEC0-\uDED3\uDEE0-\uDEF3\uDF60-\uDF78]|\uD835[\uDFCE-\uDFFF]|\uD838[\uDD40-\uDD49\uDEF0-\uDEF9]|\uD839[\uDCF0-\uDCF9]|\uD83A[\uDCC7-\uDCCF\uDD50-\uDD59]|\uD83B[\uDC71-\uDCAB\uDCAD-\uDCAF\uDCB1-\uDCB4\uDD01-\uDD2D\uDD2F-\uDD3D]|\uD83C[\uDD00-\uDD0C]|\uD83E[\uDFF0-\uDFF9])/g, "");
37836
+ var decimalSeparator = Intl.NumberFormat(locale).format(1.1).replace(/(?:[0-9\xB2\xB3\xB9\xBC-\xBE\u0660-\u0669\u06F0-\u06F9\u07C0-\u07C9\u0966-\u096F\u09E6-\u09EF\u09F4-\u09F9\u0A66-\u0A6F\u0AE6-\u0AEF\u0B66-\u0B6F\u0B72-\u0B77\u0BE6-\u0BF2\u0C66-\u0C6F\u0C78-\u0C7E\u0CE6-\u0CEF\u0D58-\u0D5E\u0D66-\u0D78\u0DE6-\u0DEF\u0E50-\u0E59\u0ED0-\u0ED9\u0F20-\u0F33\u1040-\u1049\u1090-\u1099\u1369-\u137C\u16EE-\u16F0\u17E0-\u17E9\u17F0-\u17F9\u1810-\u1819\u1946-\u194F\u19D0-\u19DA\u1A80-\u1A89\u1A90-\u1A99\u1B50-\u1B59\u1BB0-\u1BB9\u1C40-\u1C49\u1C50-\u1C59\u2070\u2074-\u2079\u2080-\u2089\u2150-\u2182\u2185-\u2189\u2460-\u249B\u24EA-\u24FF\u2776-\u2793\u2CFD\u3007\u3021-\u3029\u3038-\u303A\u3192-\u3195\u3220-\u3229\u3248-\u324F\u3251-\u325F\u3280-\u3289\u32B1-\u32BF\uA620-\uA629\uA6E6-\uA6EF\uA830-\uA835\uA8D0-\uA8D9\uA900-\uA909\uA9D0-\uA9D9\uA9F0-\uA9F9\uAA50-\uAA59\uABF0-\uABF9\uFF10-\uFF19]|\uD800[\uDD07-\uDD33\uDD40-\uDD78\uDD8A\uDD8B\uDEE1-\uDEFB\uDF20-\uDF23\uDF41\uDF4A\uDFD1-\uDFD5]|\uD801[\uDCA0-\uDCA9]|\uD802[\uDC58-\uDC5F\uDC79-\uDC7F\uDCA7-\uDCAF\uDCFB-\uDCFF\uDD16-\uDD1B\uDDBC\uDDBD\uDDC0-\uDDCF\uDDD2-\uDDFF\uDE40-\uDE48\uDE7D\uDE7E\uDE9D-\uDE9F\uDEEB-\uDEEF\uDF58-\uDF5F\uDF78-\uDF7F\uDFA9-\uDFAF]|\uD803[\uDCFA-\uDCFF\uDD30-\uDD39\uDE60-\uDE7E\uDF1D-\uDF26\uDF51-\uDF54\uDFC5-\uDFCB]|\uD804[\uDC52-\uDC6F\uDCF0-\uDCF9\uDD36-\uDD3F\uDDD0-\uDDD9\uDDE1-\uDDF4\uDEF0-\uDEF9]|\uD805[\uDC50-\uDC59\uDCD0-\uDCD9\uDE50-\uDE59\uDEC0-\uDEC9\uDF30-\uDF3B]|\uD806[\uDCE0-\uDCF2\uDD50-\uDD59]|\uD807[\uDC50-\uDC6C\uDD50-\uDD59\uDDA0-\uDDA9\uDF50-\uDF59\uDFC0-\uDFD4]|\uD809[\uDC00-\uDC6E]|\uD81A[\uDE60-\uDE69\uDEC0-\uDEC9\uDF50-\uDF59\uDF5B-\uDF61]|\uD81B[\uDE80-\uDE96]|\uD834[\uDEC0-\uDED3\uDEE0-\uDEF3\uDF60-\uDF78]|\uD835[\uDFCE-\uDFFF]|\uD838[\uDD40-\uDD49\uDEF0-\uDEF9]|\uD839[\uDCF0-\uDCF9]|\uD83A[\uDCC7-\uDCCF\uDD50-\uDD59]|\uD83B[\uDC71-\uDCAB\uDCAD-\uDCAF\uDCB1-\uDCB4\uDD01-\uDD2D\uDD2F-\uDD3D]|\uD83C[\uDD00-\uDD0C]|\uD83E[\uDFF0-\uDFF9])/g, "");
37837
+ return parseFloat(stringNumber.replace(new RegExp("\\" + thousandSeparator, "g"), "").replace(new RegExp("\\" + decimalSeparator), "."));
37838
+ };
37839
+
37840
+ var _templateObject$A, _templateObject2$8, _templateObject3$5, _templateObject4$4;
37841
+ var useStyles$a = antdStyle.createStyles(function (_ref) {
37842
+ var css = _ref.css;
37843
+ return {
37844
+ grid: css(_templateObject$A || (_templateObject$A = _taggedTemplateLiteralLoose(["\n & .grid-cell-selected {\n background-color: lightgreen;\n }\n & .grid-cell-disable-text-selection {\n -webkit-touch-callout: none;\n -webkit-user-select: none;\n -khtml-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n }\n & .grid-cell-disable-colored {\n background-color: lightgray;\n }\n & .grid-summary-row-label {\n font-weight: 900;\n /* border-bottom: 1px solid lightgray; */\n }\n & .grid-summary-row-data {\n /* border-bottom: 1px solid lightgray; */\n }\n & .grid-toolbar-button-item {\n padding: 0 !important;\n }\n "]))),
37845
+ gridCustomSummary: css(_templateObject2$8 || (_templateObject2$8 = _taggedTemplateLiteralLoose(["\n background-color: rgb(255, 255, 255);\n border-radius: 0px 0px 16px 16px;\n font-size: 13px;\n text-align: unset;\n padding: 17px 16px 3px 15px;\n font-weight: 600;\n border-top: 1px solid #ededed;\n "]))),
37846
+ mergeCellChild: css(_templateObject3$5 || (_templateObject3$5 = _taggedTemplateLiteralLoose(["\n display: none;\n "]))),
37847
+ mergeCellRoot: css(_templateObject4$4 || (_templateObject4$4 = _taggedTemplateLiteralLoose(["\n text-align: left;\n vertical-align: middle;\n "])))
37848
+ };
37849
+ });
37850
+
37851
+ var checkCellSelectionConstraints$1 = function checkCellSelectionConstraints(e) {
37852
+ return e.rowType == "data" && e.columnIndex > -1 && e.rowIndex > -1;
37853
+ };
37854
+ var cellAlreadySelected$1 = function cellAlreadySelected(pkValue, dataField, cellInfos) {
37855
+ return cellInfos.some(function (cell) {
37856
+ return cell.pkValue == pkValue && cell.dataField == dataField;
37857
+ });
37858
+ };
37859
+ var getMultiLevelColumns$1 = function getMultiLevelColumns(col) {
37860
+ return col.multiLevelColumns && col.multiLevelColumns.map(function (colItem) {
37861
+ return React__default.createElement(DataGrid.Column, Object.assign({
37862
+ width: 80
37863
+ }, colItem), getMultiLevelColumns(colItem));
37864
+ });
37865
+ };
37866
+
37867
+ var constants$2 = {
37868
+ totalPageCount: 1,
37869
+ loadedPageCount: 1,
37870
+ totalRecordCount: 0,
37871
+ exportFormats: ["xlsx"],
37872
+ selectedCellBgColor: "#c1f9b8",
37873
+ allowedDataTypesForMultiCellEditing: ["number"]
37874
+ };
37875
+ var onCancelEditEvent$1 = new CustomEvent("cancelEdit", {
37876
+ bubbles: true,
37877
+ detail: {
37878
+ rowData: null
37879
+ }
37880
+ });
37881
+ var dataFieldNameActions = "Actions";
37882
+
37883
+ var OdsMergeCellDataGridHelper = /*#__PURE__*/function () {
37884
+ function OdsMergeCellDataGridHelper() {
37885
+ var _this = this;
37886
+ this.sortDataSource = function () {
37887
+ var _this$_dataSource;
37888
+ if (_this._mergeDataFields && _this._mergeDataFields.length > 0 && ((_this$_dataSource = _this._dataSource) === null || _this$_dataSource === void 0 ? void 0 : _this$_dataSource.length) > 0) {
37889
+ var compareResults = [];
37890
+ var conditionString = "";
37891
+ _this._dataSource = _this._dataSource.sort(function (a, b) {
37892
+ compareResults = _this._mergeDataFields.map(function (dataField) {
37893
+ return _this.compareData(a[dataField], b[dataField], _this.getDataType(dataField));
37894
+ });
37895
+ conditionString = compareResults.join("||");
37896
+ return eval(conditionString);
37897
+ });
37898
+ }
37899
+ return _this._dataSource;
37900
+ };
37901
+ this.compareData = function (value1, value2, dataType) {
37902
+ switch (dataType) {
37903
+ case "string":
37904
+ return String(value1).localeCompare(String(value2));
37905
+ case "number":
37906
+ return Number(value2) - Number(value1);
37907
+ default:
37908
+ return 0;
37909
+ }
37910
+ };
37911
+ this.getDataType = function (dataField) {
37912
+ var column = _this._columns.find(function (x) {
37913
+ return x.dataField == dataField;
37914
+ });
37915
+ return column === null || column === void 0 ? void 0 : column.dataType;
37916
+ };
37917
+ this.mergeDataSource = function (keyExpr) {
37918
+ var _this$_dataSource2;
37919
+ var mergedCells = [];
37920
+ if (_this._mergeDataFields && _this._mergeDataFields.length > 0 && ((_this$_dataSource2 = _this._dataSource) === null || _this$_dataSource2 === void 0 ? void 0 : _this$_dataSource2.length) > 0) {
37921
+ var keyName = Array.isArray(keyExpr) ? keyExpr[0] : keyExpr;
37922
+ var rowCurrent;
37923
+ var rowPrev;
37924
+ var dataFieldCurrent;
37925
+ var dataFieldNext;
37926
+ var _loop = function _loop(index) {
37927
+ rowCurrent = _this._dataSource[index];
37928
+ rowPrev = _this._dataSource[index - 1];
37929
+ for (var index1 = 0; index1 < _this._mergeDataFields.length; index1++) {
37930
+ dataFieldCurrent = _this._mergeDataFields[index1];
37931
+ if (rowCurrent[dataFieldCurrent] == rowPrev[dataFieldCurrent]) {
37932
+ if (mergedCells.some(function (x) {
37933
+ return x.FieldName == dataFieldCurrent && x.EndRowIndex == index - 1;
37934
+ })) {
37935
+ var cell = mergedCells.find(function (x) {
37936
+ return x.FieldName == dataFieldCurrent && x.EndRowIndex == index - 1;
37937
+ });
37938
+ cell.EndRowIndex = index;
37939
+ } else {
37940
+ mergedCells.push({
37941
+ FieldName: dataFieldCurrent,
37942
+ StartRowIndex: index - 1,
37943
+ EndRowIndex: index,
37944
+ StartKey: rowPrev[keyName],
37945
+ Type: "Original"
37946
+ });
37947
+ }
37948
+ }
37949
+ }
37950
+ };
37951
+ for (var index = 1; index < _this._dataSource.length; index++) {
37952
+ _loop(index);
37953
+ }
37954
+ var newStartRowIndex = 0,
37955
+ newEndRowIndex = 0,
37956
+ keyValue;
37957
+ for (var _index = 0; _index < _this._mergeDataFields.length - 1; _index++) {
37958
+ dataFieldCurrent = _this._mergeDataFields[_index];
37959
+ dataFieldNext = _this._mergeDataFields[_index + 1];
37960
+ if (!mergedCells.some(function (item) {
37961
+ return item.FieldName == dataFieldCurrent;
37962
+ }) || !mergedCells.some(function (item) {
37963
+ return item.FieldName == dataFieldCurrent && item.Type != "OutOfScope";
37964
+ })) {
37965
+ mergedCells.filter(function (item) {
37966
+ return item.FieldName == dataFieldNext;
37967
+ }).map(function (item) {
37968
+ item.Type = "OutOfScope";
37969
+ return item;
37970
+ });
37971
+ } else {
37972
+ mergedCells.filter(function (x) {
37973
+ return x.FieldName == dataFieldCurrent && x.Type != "OutOfScope";
37974
+ }).map(function (item) {
37975
+ mergedCells.filter(function (x) {
37976
+ return x.FieldName == dataFieldNext && x.Type != "New" && x.Type != "Placed";
37977
+ }).map(function (item1) {
37978
+ newStartRowIndex = 0;
37979
+ newEndRowIndex = 0;
37980
+ if (item1.StartRowIndex < item.EndRowIndex && item1.EndRowIndex > item.StartRowIndex) {
37981
+ if (item1.StartRowIndex < item.StartRowIndex) {
37982
+ newStartRowIndex = item.StartRowIndex;
37983
+ item1.Type = "Dirty";
37984
+ keyValue = item.StartKey;
37985
+ } else {
37986
+ newStartRowIndex = item1.StartRowIndex;
37987
+ keyValue = item1.StartKey;
37988
+ }
37989
+ if (item1.EndRowIndex > item.EndRowIndex) {
37990
+ newEndRowIndex = item.EndRowIndex;
37991
+ item1.Type = "Dirty";
37992
+ } else {
37993
+ newEndRowIndex = item1.EndRowIndex;
37994
+ }
37995
+ if (item1.Type == "Dirty") {
37996
+ mergedCells.push({
37997
+ FieldName: dataFieldNext,
37998
+ StartRowIndex: newStartRowIndex,
37999
+ EndRowIndex: newEndRowIndex,
38000
+ StartKey: keyValue,
38001
+ Type: "New"
38002
+ });
38003
+ } else {
38004
+ item1.Type = "Placed";
38005
+ }
38006
+ } else {
38007
+ item1.Type = "OutOfScope";
38008
+ }
38009
+ });
38010
+ });
38011
+ }
38012
+ }
38013
+ var _mergedCell = mergedCells.filter(function (x) {
38014
+ return x.Type != "Dirty" && x.Type != "OutOfScope";
38015
+ });
38016
+ return _mergedCell;
38017
+ }
38018
+ return mergedCells;
38019
+ };
38020
+ }
38021
+ return _createClass(OdsMergeCellDataGridHelper, [{
38022
+ key: "mergeDataFields",
38023
+ get: function get() {
38024
+ return this._mergeDataFields;
38025
+ },
38026
+ set: function set(val) {
38027
+ this._mergeDataFields = val;
38028
+ }
38029
+ }, {
38030
+ key: "dataSource",
38031
+ get: function get() {
38032
+ return this._dataSource;
38033
+ },
38034
+ set: function set(val) {
38035
+ this._dataSource = val;
38036
+ }
38037
+ }, {
38038
+ key: "columns",
38039
+ get: function get() {
38040
+ return this._columns;
38041
+ },
38042
+ set: function set(val) {
38043
+ this._columns = val;
38044
+ }
38045
+ }]);
38046
+ }();
38047
+ OdsMergeCellDataGridHelper.getInstance = function () {
38048
+ if (OdsMergeCellDataGridHelper._instance === null || OdsMergeCellDataGridHelper._instance === undefined) {
38049
+ return new OdsMergeCellDataGridHelper();
38050
+ }
38051
+ return OdsMergeCellDataGridHelper._instance;
38052
+ };
38053
+
38054
+ var useToken$2 = antd.theme.useToken;
38055
+ var OdsMergeCellDataGrid = function OdsMergeCellDataGrid(props) {
38056
+ var _props$columnResizing, _props$className, _props$selection, _props$selectOptions, _props$selectOptions$, _props$selectOptions2, _props$selectOptions$2, _props$selectOptions3;
38057
+ var ref = props.ref,
38058
+ keyExpr = props.keyExpr,
38059
+ hasFastUpdate = props.hasFastUpdate,
38060
+ fastUpdateButtonText = props.fastUpdateButtonText,
38061
+ fastUpdateModalTitle = props.fastUpdateModalTitle,
38062
+ fastUpdateModalCancelText = props.fastUpdateModalCancelText,
38063
+ fastUpdateModalSaveText = props.fastUpdateModalSaveText,
38064
+ fastUpdateFormRequiredFieldMessage = props.fastUpdateFormRequiredFieldMessage,
38065
+ onCellClick = props.onCellClick,
38066
+ onCellHoverChanged = props.onCellHoverChanged,
38067
+ onFastUpdateButtonClick = props.onFastUpdateButtonClick,
38068
+ onFastUpdateFinish = props.onFastUpdateFinish,
38069
+ onFastUpdateCancel = props.onFastUpdateCancel,
38070
+ onFastUpdateFailed = props.onFastUpdateFailed,
38071
+ onCellPrepared = props.onCellPrepared,
38072
+ detailGridColumns = props.detailGridColumns,
38073
+ detailData = props.detailData,
38074
+ masterDetailFeatures = props.masterDetailFeatures;
38075
+ var _useToken = useToken$2(),
38076
+ token = _useToken.token;
38077
+ var _AntForm$useForm = antd.Form.useForm(),
38078
+ fastUpdateForm = _AntForm$useForm[0];
38079
+ var gridRef = ref != null ? ref : React.useRef(null);
38080
+ var helper = OdsMergeCellDataGridHelper.getInstance();
38081
+ var pkName = keyExpr && keyExpr.toString();
38082
+ var _useState = React.useState(false),
38083
+ render = _useState[0],
38084
+ rerender = _useState[1];
38085
+ var _useState2 = React.useState(props.columns),
38086
+ gridColumns = _useState2[0],
38087
+ setGridColumns = _useState2[1];
38088
+ var _useState3 = React.useState([]),
38089
+ data = _useState3[0],
38090
+ setData = _useState3[1];
38091
+ var _useState4 = React.useState(false),
38092
+ isFastUpdateModalOpen = _useState4[0],
38093
+ setIsFastUpdateModalOpen = _useState4[1];
38094
+ var _useState5 = React.useState([]),
38095
+ selectedCells = _useState5[0],
38096
+ setSelectedCells = _useState5[1];
38097
+ var _useState6 = React.useState([]),
38098
+ hoveredCells = _useState6[0],
38099
+ setHoveredCells = _useState6[1];
38100
+ var _useState7 = React.useState([]),
38101
+ ctrlSelectedCells = _useState7[0],
38102
+ setCtrlSelectedCells = _useState7[1];
38103
+ var _useState8 = React.useState(false),
38104
+ ctrlSelection = _useState8[0],
38105
+ setCtrlSelection = _useState8[1];
38106
+ var _useState9 = React.useState([]),
38107
+ mergedCellInfo = _useState9[0],
38108
+ setMergedCellInfo = _useState9[1];
38109
+ var _useStyles = useStyles$a(),
38110
+ gridStyle = _useStyles.styles;
38111
+ React.useEffect(function () {
38112
+ helper.columns = props.columns;
38113
+ helper.dataSource = props.dataSource;
38114
+ helper.mergeDataFields = props.mergeDataFields;
38115
+ helper.sortDataSource();
38116
+ setMergedCellInfo(helper.mergeDataSource(props.keyExpr));
38117
+ setData(helper.dataSource);
38118
+ }, [props.dataSource]);
38119
+ React.useEffect(function () {
38120
+ constants$2.totalPageCount = 1;
38121
+ constants$2.loadedPageCount = 1;
38122
+ constants$2.totalRecordCount = 0;
38123
+ }, [props.dataGridPageName]);
38124
+ React.useEffect(function () {
38125
+ if (props.columns !== undefined && props.columns.length > 0) {
38126
+ var newColumns = props.columns.map(function (colItem) {
38127
+ if (colItem.tooltip !== undefined && colItem.tooltip.enable) {
38128
+ var headerCellRenderr = function headerCellRenderr() {
38129
+ return React__default.createElement("div", null, React__default.createElement("span", null, colItem.caption), React__default.createElement(antd.Tooltip, {
38130
+ title: colItem.tooltip.title
38131
+ }, React__default.createElement(icons.InfoCircleOutlined, {
38132
+ style: {
38133
+ marginLeft: 5
38134
+ }
38135
+ })));
38136
+ };
38137
+ colItem.headerCellRender = headerCellRenderr;
38138
+ }
38139
+ if (props.isServerSide) colItem.calculateSortValue = String("dummyFieldForPreventClientSideSorting");
38140
+ return colItem;
38141
+ });
38142
+ setGridColumns(newColumns);
38143
+ }
38144
+ }, [props.columns]);
38145
+ React.useEffect(function () {
38146
+ rerender(!render);
38147
+ }, [gridColumns]);
38148
+ React.useEffect(function () {
38149
+ localization.locale(localStorage.getItem("locale"));
38150
+ localization.loadMessages(JSON.parse(localStorage.getItem("localTranslation")));
38151
+ if (gridRef.current) {
38152
+ gridRef.current.instance.updateDimensions();
38153
+ }
38154
+ hasFastUpdate && document.addEventListener("keydown", keydownEvent);
38155
+ return function () {
38156
+ hasFastUpdate && document.removeEventListener("keydown", keydownEvent);
38157
+ };
38158
+ }, []);
38159
+ var keydownEvent = function keydownEvent(e) {
38160
+ switch (e.key) {
38161
+ case "Escape":
38162
+ {
38163
+ clearSelectedCells();
38164
+ }
38165
+ break;
38166
+ }
38167
+ };
38168
+ var clearSelectedCells = function clearSelectedCells() {
38169
+ setSelectedCells([]);
38170
+ };
38171
+ var singleSelect = function singleSelect(pkValue, dataField) {
38172
+ runSetSelectedCells([{
38173
+ dataField: dataField,
38174
+ pkValue: pkValue
38175
+ }]);
38176
+ };
38177
+ var multipleSelect = function multipleSelect(cells) {
38178
+ if (cells.length == 0) {
38179
+ return;
38180
+ }
38181
+ var _cells = [];
38182
+ var _loop = function _loop() {
38183
+ var element = cells[index];
38184
+ if (!_cells.some(function (cell) {
38185
+ return cell.colIndex == element.colIndex && cell.rowIndex == element.rowIndex;
38186
+ })) {
38187
+ _cells.push({
38188
+ colIndex: element.colIndex,
38189
+ rowIndex: element.rowIndex
38190
+ });
38191
+ }
38192
+ };
38193
+ for (var index = 0; index < cells.length; index++) {
38194
+ _loop();
38195
+ }
38196
+ var result = [];
38197
+ var maxColIndex = Math.max.apply(null, _cells.map(function (item) {
38198
+ return item.colIndex;
38199
+ }));
38200
+ var minColIndex = Math.min.apply(null, _cells.map(function (item) {
38201
+ return item.colIndex;
38202
+ }));
38203
+ var maxRowIndex = Math.max.apply(null, _cells.map(function (item) {
38204
+ return item.rowIndex;
38205
+ }));
38206
+ var minRowIndex = Math.min.apply(null, _cells.map(function (item) {
38207
+ return item.rowIndex;
38208
+ }));
38209
+ for (var rowIndex = minRowIndex; rowIndex <= maxRowIndex; rowIndex++) {
38210
+ var _loop2 = function _loop2() {
38211
+ var _column = gridRef.current.instance.columnOption(colIndex);
38212
+ if (constants$2.allowedDataTypesForMultiCellEditing.some(function (item) {
38213
+ return item.toLocaleLowerCase() == _column.dataType.toLocaleLowerCase();
38214
+ })) {
38215
+ result.push({
38216
+ dataField: _column.dataField,
38217
+ pkValue: gridRef.current.instance.cellValue(rowIndex, pkName)
38218
+ });
38219
+ }
38220
+ };
38221
+ for (var colIndex = minColIndex; colIndex <= maxColIndex; colIndex++) {
38222
+ _loop2();
38223
+ }
38224
+ }
38225
+ runSetSelectedCells(result);
38226
+ setHoveredCells([]);
38227
+ setCtrlSelectedCells([]);
38228
+ };
38229
+ var runSetSelectedCells = function runSetSelectedCells(value) {
38230
+ var removeDuplicates = function removeDuplicates(oldValues) {
38231
+ var result = [];
38232
+ var _loop3 = function _loop3() {
38233
+ var element = value[index];
38234
+ if (element.pkValue && !oldValues.some(function (cell) {
38235
+ return cell.dataField == element.dataField && cell.pkValue == element.pkValue;
38236
+ })) {
38237
+ result.push({
38238
+ dataField: element.dataField,
38239
+ pkValue: element.pkValue
38240
+ });
38241
+ }
38242
+ };
38243
+ for (var index = 0; index < value.length; index++) {
38244
+ _loop3();
38245
+ }
38246
+ return result;
38247
+ };
38248
+ setSelectedCells(function (prev) {
38249
+ return [].concat(prev, removeDuplicates(prev));
38250
+ });
38251
+ };
38252
+ var removeSelectedCell = function removeSelectedCell(rowIndex, colIndex) {
38253
+ var dataField = gridRef.current.instance.columnOption(colIndex).dataField;
38254
+ var pkValue = gridRef.current.instance.cellValue(rowIndex, pkName);
38255
+ setSelectedCells(function (prev) {
38256
+ return prev.filter(function (cell) {
38257
+ return !(cell.dataField == dataField && cell.pkValue == pkValue);
38258
+ });
38259
+ });
38260
+ };
38261
+ var closeModal = function closeModal() {
38262
+ setIsFastUpdateModalOpen(false);
38263
+ clearSelectedCells();
38264
+ fastUpdateForm.resetFields();
38265
+ };
38266
+ var actionButtons = React.useMemo(function () {
38267
+ if (props.actionButtonGroup) {
38268
+ if (props.actionButtonGroup.length > 3 && !props.edit) {
38269
+ return props.actionButtonGroup.slice(0, 2);
38270
+ } else {
38271
+ return props.actionButtonGroup;
38272
+ }
38273
+ } else {
38274
+ return [];
38275
+ }
38276
+ }, [props.actionButtonGroup]);
38277
+ var onEditorPreparing = React.useCallback(function (e) {
38278
+ if (e.row !== undefined && e.parentType === "dataRow") {
38279
+ if (props.handleEditorPreparing) {
38280
+ props.handleEditorPreparing(e);
38281
+ }
38282
+ }
38283
+ if (e.editorOptions && e.rowType === "data" && e.parentType === "dataRow") {
38284
+ e.editorOptions.onValueChanged = function (args) {
38285
+ if (args.event && args.event.type === "cancel") e.cellElement.dispatchEvent(onCancelEditEvent$1);
38286
+ };
38287
+ }
38288
+ }, [props.isServerSide]);
38289
+ var customLoad = React.useCallback(function () {
38290
+ var state = JSON.parse(localStorage.getItem(props.exportFileName + "Storage"));
38291
+ if (localStorage.getItem(props.exportFileName + "Storage")) {
38292
+ state.selectedRowKeys = [];
38293
+ if (props.filterEnabledShow) state.filterPanel = {
38294
+ filterEnabled: false
38295
+ };else state.filterPanel = {
38296
+ filterEnabled: true
38297
+ };
38298
+ }
38299
+ return state;
38300
+ }, [props.filterEnabledShow]);
38301
+ var customSave = React.useCallback(function (state) {
38302
+ state.selectedRowKeys = [];
38303
+ if (props.filterEnabledShow) state.filterPanel = {
38304
+ filterEnabled: false
38305
+ };else state.filterPanel = {
38306
+ filterEnabled: true
38307
+ };
38308
+ if (data.length === 0) {
38309
+ if (!state.filterValue && state.filterValue !== null) {
38310
+ state.filterValue = null;
38311
+ }
38312
+ }
38313
+ localStorage.setItem(props.exportFileName + "Storage", JSON.stringify(state));
38314
+ }, [props.filterEnabledShow]);
38315
+ var onEditorPrepared = React.useCallback(function (info) {
38316
+ if (info.parentType === "filterRow" && info.editorName === "dxSelectBox" && (info.dataField === "IsActive" || info.dataField === "isActive")) {
38317
+ if (info.dataSource != null && info.dataSource.length > 0) {
38318
+ info.showAllText = info.dataSource.find(function (i) {
38319
+ return i.value === null;
38320
+ }).label;
38321
+ info.trueText = info.dataSource.find(function (i) {
38322
+ return i.value === true;
38323
+ }).label;
38324
+ info.falseText = info.dataSource.find(function (i) {
38325
+ return i.value === false;
38326
+ }).label;
38327
+ }
38328
+ }
38329
+ }, []);
38330
+ function actionCellRender(cellData, props) {
38331
+ var kebabMenuButtons = props.actionButtonGroup && props.actionButtonGroup.length > 3 && !props.edit ? props.actionButtonGroup.slice(2).map(function (button) {
38332
+ return {
38333
+ icon: button.icon,
38334
+ onClick: function onClick(event) {
38335
+ var customEvent = {
38336
+ column: cellData.column,
38337
+ component: cellData.component,
38338
+ element: cellData.element,
38339
+ event: event,
38340
+ model: cellData.data,
38341
+ row: cellData.row
38342
+ };
38343
+ button.onClick(customEvent);
38344
+ }
38345
+ };
38346
+ }) : [];
38347
+ var buttonElements = [];
38348
+ {
38349
+ !props.edit && actionButtons.forEach(function (buttonItem, index) {
38350
+ var isVisible = typeof buttonItem.visible === "function" ? buttonItem.visible({
38351
+ column: cellData.column,
38352
+ component: cellData.component,
38353
+ row: cellData.row
38354
+ }) : buttonItem.visible;
38355
+ buttonElements.push(React__default.createElement(OdsDataGrdiRowButton, Object.assign({
38356
+ key: "action-button-" + index,
38357
+ hint: buttonItem.hint,
38358
+ visible: isVisible,
38359
+ size: "small",
38360
+ type: "text",
38361
+ disabled: buttonItem.actionPermission === undefined ? false : !buttonItem.actionPermission,
38362
+ icon: buttonItem.icon
38363
+ }, props.actionButtonsTooltipType === "styled" && {
38364
+ tooltip: buttonItem.hint
38365
+ }, {
38366
+ onClick: function onClick(event) {
38367
+ var customEvent = {
38368
+ column: cellData.column,
38369
+ component: cellData.component,
38370
+ element: cellData.element,
38371
+ event: event,
38372
+ model: cellData.data,
38373
+ row: cellData.row
38374
+ };
38375
+ buttonItem.onClick(customEvent);
38376
+ }
38377
+ })));
38378
+ });
38379
+ }
38380
+ {
38381
+ props.edit && actionButtons.forEach(function (buttonItem, index) {
38382
+ var isVisible = typeof buttonItem.visible === "function" ? buttonItem.visible({
38383
+ column: cellData.column,
38384
+ component: cellData.component,
38385
+ row: cellData.row
38386
+ }) : buttonItem.visible;
38387
+ buttonElements.push(React__default.createElement(OdsDataGrdiRowButton, Object.assign({
38388
+ key: "action-button-" + index,
38389
+ name: buttonItem.name,
38390
+ hint: buttonItem.hint,
38391
+ visible: isVisible,
38392
+ size: "small",
38393
+ type: "text",
38394
+ disabled: buttonItem.actionPermission === undefined ? false : !buttonItem.actionPermission,
38395
+ icon: buttonItem.icon
38396
+ }, props.actionButtonsTooltipType === "styled" && {
38397
+ tooltip: buttonItem.hint
38398
+ }, {
38399
+ onClick: function onClick(event) {
38400
+ if (buttonItem.onClick) {
38401
+ var customEvent = {
38402
+ column: cellData.column,
38403
+ component: cellData.component,
38404
+ element: cellData.element,
38405
+ event: event,
38406
+ model: cellData.data,
38407
+ row: cellData.row
38408
+ };
38409
+ buttonItem.onClick(customEvent);
38410
+ }
38411
+ }
38412
+ })));
38413
+ });
38414
+ }
38415
+ if (kebabMenuButtons.length > 0) {
38416
+ buttonElements.push(React__default.createElement(OdsDropdown, {
38417
+ key: "dropdown-" + (cellData.rowIndex || cellData.data.ID),
38418
+ menuItems: kebabMenuButtons
38419
+ }, React__default.createElement(OdsDataGrdiRowButton, {
38420
+ type: "text",
38421
+ icon: React__default.createElement(outline.KebabMenuIcon, null)
38422
+ })));
38423
+ }
38424
+ return React__default.createElement(React__default.Fragment, null, buttonElements);
38425
+ }
38426
+ var onCustomCellClick = function onCustomCellClick(e) {
38427
+ if (hasFastUpdate) {
38428
+ if (checkCellSelectionConstraints$1(e) && constants$2.allowedDataTypesForMultiCellEditing.some(function (item) {
38429
+ return item.toLocaleLowerCase() == e.column.dataType.toLocaleLowerCase();
38430
+ })) {
38431
+ if (!e.event.ctrlKey) {
38432
+ if (cellAlreadySelected$1(e.data[pkName], e.column.dataField, selectedCells)) {
38433
+ removeSelectedCell(e.rowIndex, e.columnIndex);
38434
+ } else {
38435
+ singleSelect(e.data[pkName], e.column.dataField);
38436
+ }
38437
+ } else {
38438
+ var selectedCell = {
38439
+ colIndex: e.columnIndex,
38440
+ rowIndex: e.rowIndex
38441
+ };
38442
+ if (ctrlSelection) {
38443
+ multipleSelect([].concat(ctrlSelectedCells, [selectedCell]));
38444
+ } else {
38445
+ setCtrlSelectedCells(function (prev) {
38446
+ return [].concat(prev, [selectedCell]);
38447
+ });
38448
+ }
38449
+ setCtrlSelection(function (prev) {
38450
+ return !prev;
38451
+ });
38452
+ }
38453
+ }
38454
+ }
38455
+ onCellClick && onCellClick(e);
38456
+ };
38457
+ var onCustomCellHoverChanged = function onCustomCellHoverChanged(e) {
38458
+ if (hasFastUpdate) {
38459
+ if (!e.event.ctrlKey && !ctrlSelection) {
38460
+ if (checkCellSelectionConstraints$1(e)) {
38461
+ if (e.event.buttons === 1) {
38462
+ setHoveredCells(function (prev) {
38463
+ return [].concat(prev, [{
38464
+ colIndex: e.columnIndex,
38465
+ rowIndex: e.rowIndex
38466
+ }]);
38467
+ });
38468
+ } else {
38469
+ multipleSelect(hoveredCells);
38470
+ }
38471
+ } else if (e.rowType != "data") {
38472
+ multipleSelect(hoveredCells);
38473
+ }
38474
+ }
38475
+ }
38476
+ onCellHoverChanged && onCellHoverChanged(e);
38477
+ };
38478
+ var onCustomFastUpdateButtonClick = function onCustomFastUpdateButtonClick(e) {
38479
+ if (selectedCells.length > 0) {
38480
+ setIsFastUpdateModalOpen(true);
38481
+ }
38482
+ onFastUpdateButtonClick && onFastUpdateButtonClick(e);
38483
+ };
38484
+ var onFastUpdateModalCancel = function onFastUpdateModalCancel(_e) {
38485
+ closeModal();
38486
+ onFastUpdateCancel && onFastUpdateCancel();
38487
+ };
38488
+ var onFastUpdateFormFinish = function onFastUpdateFormFinish(values) {
38489
+ onFastUpdateFinish && onFastUpdateFinish(values, selectedCells);
38490
+ closeModal();
38491
+ };
38492
+ var onFastUpdateFormFinishFailed = function onFastUpdateFormFinishFailed(errorInfo) {
38493
+ onFastUpdateFailed && onFastUpdateFailed(errorInfo);
38494
+ };
38495
+ var onClickFastUpdateFormCancel = function onClickFastUpdateFormCancel(_e) {
38496
+ closeModal();
38497
+ onFastUpdateCancel && onFastUpdateCancel();
38498
+ };
38499
+ var onCustomCellPrepared = function onCustomCellPrepared(e) {
38500
+ var _props$edit, _props$edit2;
38501
+ if (hasFastUpdate) {
38502
+ if (e.rowType === "data" && e.column.allowEditing && constants$2.allowedDataTypesForMultiCellEditing.some(function (item) {
38503
+ return item.toLocaleLowerCase() == e.column.dataType.toLocaleLowerCase();
38504
+ })) {
38505
+ if (selectedCells.some(function (cell) {
38506
+ return cell.pkValue == e.data[pkName] && cell.dataField == e.column.dataField;
38507
+ })) {
38508
+ e.cellElement.classList.add("grid-cell-selected");
38509
+ }
38510
+ }
38511
+ }
38512
+ if (((_props$edit = props.edit) === null || _props$edit === void 0 ? void 0 : _props$edit.mode) == "cell" && (_props$edit2 = props.edit) !== null && _props$edit2 !== void 0 && _props$edit2.allowUpdating && e.rowType == "data" && !e.column.allowEditing) {
38513
+ e.cellElement.classList.add("grid-cell-disable-colored");
38514
+ }
38515
+ var isDifferentDataField = e.column.type == "selection" || e.column.dataField == dataFieldNameActions;
38516
+ if (e.rowType === "data" && e.columnIndex >= 0 && e.rowIndex >= 0 && (props.mergeDataFields.some(function (x) {
38517
+ return x == e.column.dataField;
38518
+ }) || isDifferentDataField)) {
38519
+ var dataIndex = e.component.getVisibleRows()[e.rowIndex].dataIndex;
38520
+ var dataField = isDifferentDataField ? props.mergeDataFields[0] : e.column.dataField;
38521
+ var mergedCells = mergedCellInfo.filter(function (x) {
38522
+ return x.FieldName == dataField;
38523
+ });
38524
+ if (mergedCells.length > 0) {
38525
+ var mergedCell = mergedCells.find(function (x) {
38526
+ return x.StartRowIndex == dataIndex;
38527
+ });
38528
+ if (mergedCell !== undefined) {
38529
+ e.cellElement.rowSpan = mergedCell.EndRowIndex - mergedCell.StartRowIndex + 1;
38530
+ e.cellElement.classList.add(gridStyle.mergeCellRoot);
38531
+ } else if (mergedCells.some(function (x) {
38532
+ return x.StartRowIndex < dataIndex && x.EndRowIndex >= dataIndex;
38533
+ })) {
38534
+ e.cellElement.classList.add(gridStyle.mergeCellChild);
38535
+ }
38536
+ }
38537
+ }
38538
+ onCellPrepared && onCellPrepared(e);
38539
+ };
38540
+ var onToolbarPreparing = function onToolbarPreparing(e) {
38541
+ if (props.toolbarButtonGroup && props.toolbarButtonGroup.length > 0) {
38542
+ e.toolbarOptions.items.unshift({
38543
+ location: "before",
38544
+ template: function template(_, __, container) {
38545
+ var wrapper = document.createElement("div");
38546
+ container.appendChild(wrapper);
38547
+ reactDom.render(React__default.createElement(React__default.StrictMode, null, props.toolbarButtonGroup && Array.isArray(props.toolbarButtonGroup) && props.toolbarButtonGroup.map(function (buttonGroupItem, index) {
38548
+ return React__default.createElement(OdsButton, {
38549
+ key: index,
38550
+ style: {
38551
+ marginLeft: token.margin
38552
+ },
38553
+ type: buttonGroupItem.type,
38554
+ onClick: buttonGroupItem.onClick
38555
+ }, buttonGroupItem.label);
38556
+ })), wrapper);
38557
+ }
38558
+ });
38559
+ }
38560
+ e.toolbarOptions.items.unshift({
38561
+ location: "before",
38562
+ cssClass: "toolbarTitleItem",
38563
+ template: function template(_, __, container) {
38564
+ var wrapper = document.createElement("div");
38565
+ container.appendChild(wrapper);
38566
+ reactDom.render(React__default.createElement(React__default.StrictMode, null, React__default.createElement(OdsTitle, {
38567
+ level: 5,
38568
+ style: {
38569
+ display: "flex",
38570
+ alignItems: "center",
38571
+ alignSelf: "stretch",
38572
+ margin: 0
38573
+ }
38574
+ }, props.pageTitle)), wrapper);
38575
+ }
38576
+ });
38577
+ };
38578
+ var handleSelectionChanged = function handleSelectionChanged(e) {
38579
+ var triggerEvent = true;
38580
+ if (props.mergeDataFields.length > 0) {
38581
+ var currentSelectedKey = e.currentSelectedRowKeys.length == 1 ? e.currentSelectedRowKeys[0] : undefined;
38582
+ var currentDeselectedKey = e.currentDeselectedRowKeys.length == 1 ? e.currentDeselectedRowKeys[0] : undefined;
38583
+ var currentRowIndex,
38584
+ isRowSelected = false,
38585
+ isRowDeselected = false;
38586
+ if (currentSelectedKey != undefined) {
38587
+ currentRowIndex = e.component.getRowIndexByKey(currentSelectedKey);
38588
+ isRowSelected = true;
38589
+ } else if (currentDeselectedKey != undefined) {
38590
+ currentRowIndex = e.component.getRowIndexByKey(currentDeselectedKey);
38591
+ isRowDeselected = true;
38592
+ }
38593
+ if (currentRowIndex != undefined) {
38594
+ var dataIndex = e.component.getVisibleRows()[currentRowIndex].dataIndex;
38595
+ var mergedCell = mergedCellInfo.find(function (x) {
38596
+ return x.FieldName == props.mergeDataFields[0] && x.StartRowIndex <= dataIndex && x.EndRowIndex >= dataIndex;
38597
+ });
38598
+ if (mergedCell) {
38599
+ var distanceToStart = dataIndex - mergedCell.StartRowIndex;
38600
+ var distanceToEnd = mergedCell.EndRowIndex - dataIndex;
38601
+ var keys = [];
38602
+ var visibleRow;
38603
+ for (var index = currentRowIndex - distanceToStart; index <= currentRowIndex + distanceToEnd; index++) {
38604
+ visibleRow = e.component.getVisibleRows()[index];
38605
+ if (visibleRow) {
38606
+ keys.push(visibleRow.key);
38607
+ }
38608
+ }
38609
+ if (isRowSelected) {
38610
+ e.component.selectRows(keys, true);
38611
+ triggerEvent = false;
38612
+ } else if (isRowDeselected) {
38613
+ e.component.deselectRows(keys);
38614
+ triggerEvent = false;
38615
+ }
38616
+ }
38617
+ }
38618
+ }
38619
+ if (triggerEvent) {
38620
+ props.onSelectionChanged && props.onSelectionChanged(e);
38621
+ }
38622
+ };
38623
+ var handleExporting = function handleExporting(e) {
38624
+ if (!props.closeGridHeader) {
38625
+ var _props$exportProps$ac, _props$exportProps$pa;
38626
+ ExportDataGridToExcel({
38627
+ gridComponent: e.component,
38628
+ baseFileName: props.exportProps.fileName,
38629
+ selectedText: props.exportProps.selectedText,
38630
+ getSummary: function getSummary() {
38631
+ return "";
38632
+ },
38633
+ selectedRowsOnly: e.selectedRowsOnly,
38634
+ activeText: (_props$exportProps$ac = props.exportProps.activeText) != null ? _props$exportProps$ac : "Active",
38635
+ passiveText: (_props$exportProps$pa = props.exportProps.passiveText) != null ? _props$exportProps$pa : "Passive"
38636
+ });
38637
+ }
38638
+ };
38639
+ var renderMasterDetailGrid = React.useCallback(function (_ref) {
38640
+ var _dataSource$data;
38641
+ var dataSource = _ref.data;
38642
+ var detailID = dataSource === null || dataSource === void 0 ? void 0 : (_dataSource$data = dataSource.data) === null || _dataSource$data === void 0 ? void 0 : _dataSource$data.ID;
38643
+ if (!detailID || !(detailData !== null && detailData !== void 0 && detailData[detailID])) {
38644
+ return null;
38645
+ }
38646
+ return React__default.createElement(MasterDetailDataGrid, {
38647
+ columns: detailGridColumns,
38648
+ dataSource: detailData[detailID],
38649
+ masterDetailFeatures: masterDetailFeatures
38650
+ });
38651
+ }, [detailGridColumns, detailData, masterDetailFeatures]);
38652
+ var checkIsPropArray = function checkIsPropArray(prop) {
38653
+ return prop && Array.isArray(prop);
38654
+ };
38655
+ return React__default.createElement(React__default.Fragment, null, React__default.createElement(antd.Modal, {
38656
+ title: fastUpdateModalTitle != null ? fastUpdateModalTitle : "Fast Update",
38657
+ open: isFastUpdateModalOpen,
38658
+ onCancel: onFastUpdateModalCancel,
38659
+ footer: [],
38660
+ maskClosable: true,
38661
+ width: 300
38662
+ }, React__default.createElement(antd.Form, {
38663
+ key: "form-fastupdate",
38664
+ form: fastUpdateForm,
38665
+ style: {
38666
+ maxWidth: "100%"
38667
+ },
38668
+ layout: "vertical",
38669
+ onFinish: onFastUpdateFormFinish,
38670
+ onFinishFailed: onFastUpdateFormFinishFailed
38671
+ }, constants$2.allowedDataTypesForMultiCellEditing.map(function (item) {
38672
+ switch (item) {
38673
+ case "number":
38674
+ return React__default.createElement(antd.Form.Item, {
38675
+ name: "number",
38676
+ label: "",
38677
+ rules: [{
38678
+ required: true,
38679
+ message: fastUpdateFormRequiredFieldMessage != null ? fastUpdateFormRequiredFieldMessage : "Required field"
38680
+ }]
38681
+ }, React__default.createElement(OdsInputNumber, {
38682
+ key: "odsinputnumber-fastupdate",
38683
+ style: {
38684
+ width: "100%"
38685
+ },
38686
+ min: 0
38687
+ }));
38688
+ default:
38689
+ return React__default.createElement("div", null);
38690
+ }
38691
+ }), React__default.createElement(antd.Row, {
38692
+ style: {
38693
+ justifyContent: "end",
38694
+ gap: token.marginSM
38695
+ }
38696
+ }, React__default.createElement(antd.Col, null, React__default.createElement(OdsButton, {
38697
+ key: "back",
38698
+ onClick: onClickFastUpdateFormCancel
38699
+ }, " ", fastUpdateModalCancelText != null ? fastUpdateModalCancelText : "Cancel")), React__default.createElement(antd.Col, null, React__default.createElement(OdsButton, {
38700
+ htmlType: "submit",
38701
+ type: "primary"
38702
+ }, " ", fastUpdateModalSaveText != null ? fastUpdateModalSaveText : "Save"))))), React__default.createElement(DataGrid__default, Object.assign({
38703
+ keyExpr: keyExpr,
38704
+ dataSource: data,
38705
+ showBorders: true,
38706
+ columnAutoWidth: false,
38707
+ ref: gridRef,
38708
+ height: props.height == undefined ? window.innerHeight - 164 : props.height,
38709
+ allowColumnResizing: true,
38710
+ columnResizingMode: (_props$columnResizing = props.columnResizingMode) != null ? _props$columnResizing : "widget",
38711
+ showRowLines: true,
38712
+ allowColumnReordering: true,
38713
+ remoteOperations: false,
38714
+ paging: {
38715
+ enabled: false
38716
+ },
38717
+ width: "100%",
38718
+ repaintChangesOnly: true,
38719
+ focusedRowEnabled: false,
38720
+ filterSyncEnabled: true
38721
+ }, checkIsPropArray(props.selectedRowKeys) && {
38722
+ selectedRowKeys: props.selectedRowKeys
38723
+ }, {
38724
+ wordWrapEnabled: props.wordWrapEnabled ? props.wordWrapEnabled : false,
38725
+ columnFixing: {
38726
+ enabled: true
38727
+ },
38728
+ noDataText: props.noDataText,
38729
+ className: gridStyle.grid + " " + ((_props$className = props.className) != null ? _props$className : ""),
38730
+ selection: (_props$selection = props.selection) != null ? _props$selection : {
38731
+ mode: "multiple",
38732
+ selectAllMode: "page"
38733
+ },
38734
+ sorting: {
38735
+ mode: "none"
38736
+ },
38737
+ onEditorPreparing: onEditorPreparing,
38738
+ onExporting: handleExporting,
38739
+ onRowClick: props.onRowClick,
38740
+ onEditorPrepared: onEditorPrepared,
38741
+ onSaved: props.onSaved,
38742
+ onSaving: props.onSaving,
38743
+ onEditCanceling: props.onEditCanceling,
38744
+ onCellClick: onCustomCellClick,
38745
+ onCellHoverChanged: onCustomCellHoverChanged,
38746
+ onCellPrepared: onCustomCellPrepared,
38747
+ onOptionChanged: props.onOptionChanged,
38748
+ onToolbarPreparing: !props.closeGridHeader && (props.onToolbarPreparing || onToolbarPreparing),
38749
+ onSelectionChanged: handleSelectionChanged
38750
+ }), gridColumns.map(function (col) {
38751
+ return React__default.createElement(DataGrid.Column, Object.assign({
38752
+ key: col.dataField
38753
+ }, col, {
38754
+ minWidth: 50,
38755
+ width: props.isColumnWidthFixed === true ? 160 : undefined,
38756
+ cssClass: col.cssClass + " " + (hasFastUpdate ? "grid-cell-disable-text-selection" : "")
38757
+ }), col.lookUp && React__default.createElement(devextremeReact.Lookup, Object.assign({}, col.lookUp)), (col.dataField === "IsActive" || col.dataField === "isActive") && React__default.createElement(DataGrid.HeaderFilter, {
38758
+ dataSource: [{
38759
+ text: "Active",
38760
+ value: true
38761
+ }, {
38762
+ text: "Passive",
38763
+ value: false
38764
+ }]
38765
+ }), col.useDynamicHeaderFilter && React__default.createElement(DataGrid.HeaderFilter, {
38766
+ allowSearch: true,
38767
+ dataSource: [{
38768
+ text: "(Blanks)",
38769
+ value: null
38770
+ }].concat(data && data.length > 0 ? data.filter(function (item) {
38771
+ return item[col.dataField] !== null && item[col.dataField] !== undefined && item[col.dataField] !== "";
38772
+ }).map(function (item) {
38773
+ return {
38774
+ text: item[col.dataField].toString(),
38775
+ value: item[col.dataField]
38776
+ };
38777
+ }) : [])
38778
+ }), getMultiLevelColumns$1(col));
38779
+ }), props.actionColumnEnable !== undefined && props.actionColumnEnable === true && React__default.createElement(DataGrid.Column, {
38780
+ dataField: "Actions",
38781
+ fixed: true,
38782
+ allowSorting: false,
38783
+ caption: props.actionButtonGroupCaption,
38784
+ type: "buttons",
38785
+ showInColumnChooser: false,
38786
+ cellRender: function cellRender(cellData) {
38787
+ return actionCellRender(cellData, props);
38788
+ }
38789
+ }), props.showMasterDetail && React__default.createElement(DataGrid.MasterDetail, {
38790
+ enabled: true,
38791
+ component: renderMasterDetailGrid
38792
+ }), props.edit && React__default.createElement(DataGrid.Editing, {
38793
+ mode: props.edit.mode,
38794
+ allowUpdating: props.edit.allowUpdating,
38795
+ allowDeleting: props.edit.allowDeleting,
38796
+ allowAdding: props.edit.allowAdding,
38797
+ useIcons: true
38798
+ }, props.edit.mode === "popup" && React__default.createElement("div", null, React__default.createElement(DataGrid.Popup, {
38799
+ showTitle: true,
38800
+ width: 700,
38801
+ height: 300,
38802
+ showCloseButton: false
38803
+ }), React__default.createElement(DataGrid.Form, null, props.edit.formItems && props.edit.formItems.map(function (formItem) {
38804
+ return React__default.createElement(form.Item, {
38805
+ itemType: formItem.itemType,
38806
+ colCount: formItem.colCount,
38807
+ colSpan: formItem.colSpan
38808
+ }, formItem.items.map(function (subItem) {
38809
+ return React__default.createElement(form.Item, {
38810
+ key: subItem.dataField,
38811
+ dataField: subItem.dataField
38812
+ });
38813
+ }));
38814
+ })))), React__default.createElement(DataGrid.Paging, {
38815
+ enabled: false
38816
+ }), React__default.createElement(DataGrid.Pager, {
38817
+ visible: false
38818
+ }), React__default.createElement(DataGrid.Scrolling, {
38819
+ mode: "standard"
38820
+ }), !props.closeGridHeader && React__default.createElement(DataGrid.SearchPanel, {
38821
+ visible: true
38822
+ }), React__default.createElement(DataGrid.FilterRow, {
38823
+ visible: props.isFilterRow != undefined ? props.isFilterRow : true
38824
+ }), React__default.createElement(DataGrid.FilterPanel, {
38825
+ visible: true
38826
+ }), React__default.createElement(DataGrid.HeaderFilter, {
38827
+ visible: true
38828
+ }), React__default.createElement(DataGrid.Sorting, {
38829
+ mode: "none"
38830
+ }), !props.closeGridHeader && React__default.createElement(DataGrid.Export, {
38831
+ enabled: true,
38832
+ allowExportSelectedData: true,
38833
+ formats: constants$2.exportFormats
38834
+ }), ((_props$selectOptions = props.selectOptions) === null || _props$selectOptions === void 0 ? void 0 : _props$selectOptions.selectEnable) && React__default.createElement(DataGrid.Selection, {
38835
+ mode: (_props$selectOptions$ = (_props$selectOptions2 = props.selectOptions) === null || _props$selectOptions2 === void 0 ? void 0 : _props$selectOptions2.mode) != null ? _props$selectOptions$ : "multiple",
38836
+ deferred: (_props$selectOptions$2 = (_props$selectOptions3 = props.selectOptions) === null || _props$selectOptions3 === void 0 ? void 0 : _props$selectOptions3.deferred) != null ? _props$selectOptions$2 : true
38837
+ }), !props.closeGridHeader && React__default.createElement(DataGrid.ColumnChooser, {
38838
+ enabled: true,
38839
+ mode: "select"
38840
+ }, !props.columnChooserPositionDisabled && React__default.createElement(DataGrid.Position, {
38841
+ my: "right top",
38842
+ at: "right bottom",
38843
+ of: document.querySelector("." + props.dataGridPageName) ? "." + props.dataGridPageName + " .dx-datagrid-column-chooser-button" : ".dx-datagrid-column-chooser-button"
38844
+ }), React__default.createElement(DataGrid.ColumnChooserSearch, {
38845
+ enabled: true,
38846
+ editorOptions: {
38847
+ placeholder: ""
38848
+ }
38849
+ }), React__default.createElement(DataGrid.ColumnChooserSelection, {
38850
+ allowSelectAll: true,
38851
+ selectByClick: true,
38852
+ recursive: true
38853
+ })), !props.closeGridHeader && React__default.createElement(DataGrid.Toolbar, null, React__default.createElement(DataGrid.Item, {
38854
+ name: "searchPanel"
38855
+ }), React__default.createElement(DataGrid.Item, {
38856
+ name: "columnChooserButton",
38857
+ cssClass: "toolbarPanelItems"
38858
+ }), React__default.createElement(DataGrid.Item, {
38859
+ name: "exportButton",
38860
+ cssClass: "toolbarPanelItems"
38861
+ }), hasFastUpdate && React__default.createElement(DataGrid.Item, null, React__default.createElement(OdsButton, {
38862
+ key: "odsbutton-fastupdate",
38863
+ onClick: onCustomFastUpdateButtonClick
38864
+ }, fastUpdateButtonText != null ? fastUpdateButtonText : "Fast Update"))), React__default.createElement(DataGrid.StateStoring, {
38865
+ enabled: true,
38866
+ type: "custom",
38867
+ customLoad: customLoad,
38868
+ customSave: customSave
38869
+ })));
37801
38870
  };
37802
38871
 
37803
38872
  /**
@@ -38309,10 +39378,10 @@ function debounce(func, wait, options) {
38309
39378
 
38310
39379
  var debounce_1 = debounce;
38311
39380
 
38312
- var checkCellSelectionConstraints$1 = function checkCellSelectionConstraints(e) {
39381
+ var checkCellSelectionConstraints$2 = function checkCellSelectionConstraints(e) {
38313
39382
  return e.rowType == "data" && e.columnIndex > -1 && e.rowIndex > -1;
38314
39383
  };
38315
- var cellAlreadySelected$1 = function cellAlreadySelected(pkValue, dataField, cellInfos) {
39384
+ var cellAlreadySelected$2 = function cellAlreadySelected(pkValue, dataField, cellInfos) {
38316
39385
  return cellInfos.some(function (cell) {
38317
39386
  return cell.pkValue == pkValue && cell.dataField == dataField;
38318
39387
  });
@@ -38382,7 +39451,7 @@ var getSummaryItem = function getSummaryItem(col, visibleIndex, summaryType, isM
38382
39451
  }
38383
39452
  });
38384
39453
  };
38385
- var getMultiLevelColumns$1 = function getMultiLevelColumns(col) {
39454
+ var getMultiLevelColumns$2 = function getMultiLevelColumns(col) {
38386
39455
  return col.multiLevelColumns && col.multiLevelColumns.map(function (colItem) {
38387
39456
  return React__default.createElement(DataGrid.Column, Object.assign({
38388
39457
  width: 80
@@ -38390,7 +39459,7 @@ var getMultiLevelColumns$1 = function getMultiLevelColumns(col) {
38390
39459
  });
38391
39460
  };
38392
39461
 
38393
- var constants$2 = {
39462
+ var constants$3 = {
38394
39463
  totalPageCount: 1,
38395
39464
  loadedPageCount: 1,
38396
39465
  totalRecordCount: 0,
@@ -38398,14 +39467,14 @@ var constants$2 = {
38398
39467
  selectedCellBgColor: "#c1f9b8",
38399
39468
  allowedDataTypesForMultiCellEditing: ["number"]
38400
39469
  };
38401
- var onCancelEditEvent$1 = new CustomEvent("cancelEdit", {
39470
+ var onCancelEditEvent$2 = new CustomEvent("cancelEdit", {
38402
39471
  bubbles: true,
38403
39472
  detail: {
38404
39473
  rowData: null
38405
39474
  }
38406
39475
  });
38407
39476
 
38408
- var useToken$2 = antd.theme.useToken;
39477
+ var useToken$3 = antd.theme.useToken;
38409
39478
  var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
38410
39479
  var _props$axiosRequest4, _props$axiosRequest5, _props$axiosRequest6, _props$axiosRequest7, _props$axiosRequest8, _props$axiosRequest9, _props$axiosRequest10, _props$axiosRequest11, _props$selectOptions, _props$selectOptions$, _props$selectOptions2, _props$selectOptions$2, _props$selectOptions3;
38411
39480
  var keyExpr = props.keyExpr,
@@ -38421,7 +39490,7 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
38421
39490
  onFastUpdateFinish = props.onFastUpdateFinish,
38422
39491
  onFastUpdateCancel = props.onFastUpdateCancel,
38423
39492
  onFastUpdateFailed = props.onFastUpdateFailed;
38424
- var _useToken = useToken$2(),
39493
+ var _useToken = useToken$3(),
38425
39494
  token = _useToken.token;
38426
39495
  var _AntForm$useForm = antd.Form.useForm(),
38427
39496
  fastUpdateForm = _AntForm$useForm[0];
@@ -38466,16 +39535,16 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
38466
39535
  scrollPosition = _useState12[0],
38467
39536
  setScrollPosition = _useState12[1];
38468
39537
  React.useEffect(function () {
38469
- constants$2.totalPageCount = 1;
38470
- constants$2.loadedPageCount = 1;
38471
- constants$2.totalRecordCount = 0;
39538
+ constants$3.totalPageCount = 1;
39539
+ constants$3.loadedPageCount = 1;
39540
+ constants$3.totalRecordCount = 0;
38472
39541
  }, [props.dataGridPageName]);
38473
39542
  React.useEffect(function () {
38474
39543
  var _props$axiosRequest, _props$axiosRequest2, _props$axiosRequest3;
38475
39544
  if (props.axiosRequest !== undefined && ((_props$axiosRequest = props.axiosRequest) !== null && _props$axiosRequest !== void 0 && _props$axiosRequest.requestData && Object.keys((_props$axiosRequest2 = props.axiosRequest) === null || _props$axiosRequest2 === void 0 ? void 0 : _props$axiosRequest2.requestData).length > 0 || (_props$axiosRequest3 = props.axiosRequest) !== null && _props$axiosRequest3 !== void 0 && _props$axiosRequest3.requestQueryString)) {
38476
- constants$2.totalPageCount = 1;
38477
- constants$2.loadedPageCount = 1;
38478
- constants$2.totalRecordCount = 0;
39545
+ constants$3.totalPageCount = 1;
39546
+ constants$3.loadedPageCount = 1;
39547
+ constants$3.totalRecordCount = 0;
38479
39548
  setData([]);
38480
39549
  fetchData();
38481
39550
  }
@@ -38651,7 +39720,7 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
38651
39720
  for (var rowIndex = minRowIndex; rowIndex <= maxRowIndex; rowIndex++) {
38652
39721
  var _loop2 = function _loop2() {
38653
39722
  var _column = gridRef.current.instance.columnOption(colIndex);
38654
- if (constants$2.allowedDataTypesForMultiCellEditing.some(function (item) {
39723
+ if (constants$3.allowedDataTypesForMultiCellEditing.some(function (item) {
38655
39724
  return item.toLocaleLowerCase() == _column.dataType.toLocaleLowerCase();
38656
39725
  })) {
38657
39726
  result.push({
@@ -38725,13 +39794,13 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
38725
39794
  if (props.axiosRequest.requestData && checkRequestDataHasOnlySortingProperty(props.axiosRequest.requestData)) return;
38726
39795
  var apiUrl = props.axiosRequest.environmentUrl + "" + props.axiosRequest.apiUrl;
38727
39796
  if (((_props$axiosRequest$r = props.axiosRequest.requestData) === null || _props$axiosRequest$r === void 0 ? void 0 : _props$axiosRequest$r.PaginatedRequest) !== undefined) {
38728
- props.axiosRequest.requestData.PaginatedRequest.PageNumber = constants$2.loadedPageCount;
39797
+ props.axiosRequest.requestData.PaginatedRequest.PageNumber = constants$3.loadedPageCount;
38729
39798
  props.axiosRequest.requestData.PaginatedRequest.PageSize = props.pageSize;
38730
39799
  }
38731
39800
  if (props.axiosRequest.requestQueryString !== undefined) {
38732
39801
  props.axiosRequest.requestQueryString.maxResultCount = props.pageSize;
38733
- if (constants$2.loadedPageCount > 1 && constants$2.totalPageCount >= constants$2.loadedPageCount) {
38734
- props.axiosRequest.requestQueryString.skipCount = ((constants$2.loadedPageCount - 1) * props.pageSize).toString();
39802
+ if (constants$3.loadedPageCount > 1 && constants$3.totalPageCount >= constants$3.loadedPageCount) {
39803
+ props.axiosRequest.requestQueryString.skipCount = ((constants$3.loadedPageCount - 1) * props.pageSize).toString();
38735
39804
  }
38736
39805
  var query = queryString.stringify(props.axiosRequest.requestQueryString);
38737
39806
  apiUrl = apiUrl + "?" + query;
@@ -38746,10 +39815,10 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
38746
39815
  setLoading(true);
38747
39816
  return Promise.resolve(fetch(apiUrl, requestOptions)).then(function (response) {
38748
39817
  return Promise.resolve(response.json()).then(function (newData) {
38749
- if (constants$2.loadedPageCount == 1) {
39818
+ if (constants$3.loadedPageCount == 1) {
38750
39819
  setData(newData.Data ? newData.Data : newData);
38751
- constants$2.loadedPageCount = 1;
38752
- } else if (constants$2.totalPageCount >= constants$2.loadedPageCount) {
39820
+ constants$3.loadedPageCount = 1;
39821
+ } else if (constants$3.totalPageCount >= constants$3.loadedPageCount) {
38753
39822
  var newArray = newData.Data ? newData.Data : newData;
38754
39823
  setData(function (prevData) {
38755
39824
  return [].concat(prevData, newArray);
@@ -38775,15 +39844,15 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
38775
39844
  }, [(_props$axiosRequest6 = props.axiosRequest) === null || _props$axiosRequest6 === void 0 ? void 0 : _props$axiosRequest6.requestData, (_props$axiosRequest7 = props.axiosRequest) === null || _props$axiosRequest7 === void 0 ? void 0 : _props$axiosRequest7.apiUrl, (_props$axiosRequest8 = props.axiosRequest) === null || _props$axiosRequest8 === void 0 ? void 0 : _props$axiosRequest8.environmentUrl, (_props$axiosRequest9 = props.axiosRequest) === null || _props$axiosRequest9 === void 0 ? void 0 : _props$axiosRequest9.requestQueryString, (_props$axiosRequest10 = props.axiosRequest) === null || _props$axiosRequest10 === void 0 ? void 0 : _props$axiosRequest10.requestType, props.pageSize, props.isServerSide]);
38776
39845
  var getTotalCount = function getTotalCount(response, data) {
38777
39846
  if (data !== null && data !== void 0 && data.PageCount || data !== null && data !== void 0 && data.RowCount) {
38778
- constants$2.totalPageCount = data.PageCount;
38779
- constants$2.totalRecordCount = data.RowCount;
39847
+ constants$3.totalPageCount = data.PageCount;
39848
+ constants$3.totalRecordCount = data.RowCount;
38780
39849
  } else {
38781
39850
  var totalCount;
38782
39851
  if (response) totalCount = response.headers.get("x-total-count");
38783
39852
  if (totalCount == null) totalCount = data === null || data === void 0 ? void 0 : data.rowCount;
38784
39853
  if (totalCount == null) totalCount = data === null || data === void 0 ? void 0 : data.length;
38785
- constants$2.totalRecordCount = parseInt(totalCount, 10) || 0;
38786
- constants$2.totalPageCount = Math.ceil(constants$2.totalRecordCount / props.pageSize);
39854
+ constants$3.totalRecordCount = parseInt(totalCount, 10) || 0;
39855
+ constants$3.totalPageCount = Math.ceil(constants$3.totalRecordCount / props.pageSize);
38787
39856
  }
38788
39857
  setLoading(false);
38789
39858
  };
@@ -38795,7 +39864,7 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
38795
39864
  }
38796
39865
  if (e.editorOptions && e.rowType === "data" && e.parentType === "dataRow") {
38797
39866
  e.editorOptions.onValueChanged = function (args) {
38798
- if (args.event && args.event.type === "cancel") e.cellElement.dispatchEvent(onCancelEditEvent$1);
39867
+ if (args.event && args.event.type === "cancel") e.cellElement.dispatchEvent(onCancelEditEvent$2);
38799
39868
  };
38800
39869
  }
38801
39870
  }, [props.isServerSide]);
@@ -38804,8 +39873,8 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
38804
39873
  return Promise.resolve(function () {
38805
39874
  if (type === "reachedBottom") {
38806
39875
  return function () {
38807
- if (constants$2.totalPageCount <= constants$2.loadedPageCount) {} else {
38808
- constants$2.loadedPageCount = constants$2.loadedPageCount + 1;
39876
+ if (constants$3.totalPageCount <= constants$3.loadedPageCount) {} else {
39877
+ constants$3.loadedPageCount = constants$3.loadedPageCount + 1;
38809
39878
  return Promise.resolve(fetchData()).then(function () {});
38810
39879
  }
38811
39880
  }();
@@ -38814,7 +39883,7 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
38814
39883
  } catch (e) {
38815
39884
  return Promise.reject(e);
38816
39885
  }
38817
- }, [constants$2.totalPageCount]);
39886
+ }, [constants$3.totalPageCount]);
38818
39887
  var onExporting = React.useCallback(function (e) {
38819
39888
  if (e.format === "xlsx") {
38820
39889
  var workbook = new exceljs.Workbook();
@@ -38922,26 +39991,26 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
38922
39991
  var _props$customSummary3;
38923
39992
  var result = "";
38924
39993
  var totalloaded = 0;
38925
- if (data.length < 50 || !props.isServerSide || constants$2.loadedPageCount == constants$2.totalPageCount) {
39994
+ if (data.length < 50 || !props.isServerSide || constants$3.loadedPageCount == constants$3.totalPageCount) {
38926
39995
  totalloaded = data.length;
38927
39996
  } else {
38928
- totalloaded = constants$2.loadedPageCount * props.pageSize;
39997
+ totalloaded = constants$3.loadedPageCount * props.pageSize;
38929
39998
  }
38930
39999
  if (props.isServerSide) {
38931
40000
  var _props$customSummary, _props$customSummary2;
38932
- result = constants$2.totalRecordCount > 0 ? totalloaded + " " + ((_props$customSummary = props.customSummary) === null || _props$customSummary === void 0 ? void 0 : _props$customSummary.summaryLoadedDataLabel) + ("- " + constants$2.totalRecordCount) + ((_props$customSummary2 = props.customSummary) === null || _props$customSummary2 === void 0 ? void 0 : _props$customSummary2.summaryTotalDataLabel) : "";
40001
+ result = constants$3.totalRecordCount > 0 ? totalloaded + " " + ((_props$customSummary = props.customSummary) === null || _props$customSummary === void 0 ? void 0 : _props$customSummary.summaryLoadedDataLabel) + ("- " + constants$3.totalRecordCount) + ((_props$customSummary2 = props.customSummary) === null || _props$customSummary2 === void 0 ? void 0 : _props$customSummary2.summaryTotalDataLabel) : "";
38933
40002
  result = concatFilteredLabel$1(result, totalloaded, filteredRowCount, filterApplied.current, props);
38934
40003
  }
38935
40004
  if (((_props$customSummary3 = props.customSummary) === null || _props$customSummary3 === void 0 ? void 0 : _props$customSummary3.summaryTotalCount) !== undefined && !props.isServerSide) {
38936
40005
  result = props.customSummary.summaryTotalDataLabel + " : " + props.customSummary.summaryTotalCount;
38937
40006
  result = concatFilteredLabel$1(result, totalloaded, filteredRowCount, filterApplied.current, props);
38938
40007
  }
38939
- if (constants$2.totalPageCount > 1) {
40008
+ if (constants$3.totalPageCount > 1) {
38940
40009
  var _props$customSummary4;
38941
- result = result + " - " + ((_props$customSummary4 = props.customSummary) === null || _props$customSummary4 === void 0 ? void 0 : _props$customSummary4.summaryTotalPageCountLabel) + " " + constants$2.loadedPageCount + " / " + constants$2.totalPageCount;
40010
+ result = result + " - " + ((_props$customSummary4 = props.customSummary) === null || _props$customSummary4 === void 0 ? void 0 : _props$customSummary4.summaryTotalPageCountLabel) + " " + constants$3.loadedPageCount + " / " + constants$3.totalPageCount;
38942
40011
  }
38943
40012
  return result;
38944
- }, [data, filteredRowCount, constants$2.loadedPageCount, props.pageSize, constants$2.totalRecordCount, filterApplied.current]);
40013
+ }, [data, filteredRowCount, constants$3.loadedPageCount, props.pageSize, constants$3.totalRecordCount, filterApplied.current]);
38945
40014
  function actionCellRender(cellData, props) {
38946
40015
  var kebabMenuButtons = props.actionButtonGroup && props.actionButtonGroup.length >= 2 && !props.edit ? props.actionButtonGroup.slice(2).map(function (button) {
38947
40016
  if (button.elementType === "element" && button.element) {
@@ -39094,11 +40163,11 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
39094
40163
  var onCustomCellClick = function onCustomCellClick(e) {
39095
40164
  e.cellElement.style.backgroundColor = "transparent";
39096
40165
  if (hasFastUpdate) {
39097
- if (checkCellSelectionConstraints$1(e) && constants$2.allowedDataTypesForMultiCellEditing.some(function (item) {
40166
+ if (checkCellSelectionConstraints$2(e) && constants$3.allowedDataTypesForMultiCellEditing.some(function (item) {
39098
40167
  return item.toLocaleLowerCase() == e.column.dataType.toLocaleLowerCase();
39099
40168
  })) {
39100
40169
  if (!e.event.ctrlKey) {
39101
- if (cellAlreadySelected$1(e.data[pkName], e.column.dataField, selectedCells)) {
40170
+ if (cellAlreadySelected$2(e.data[pkName], e.column.dataField, selectedCells)) {
39102
40171
  removeSelectedCell(e.rowIndex, e.columnIndex);
39103
40172
  } else {
39104
40173
  singleSelect(e.data[pkName], e.column.dataField);
@@ -39126,7 +40195,7 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
39126
40195
  var onCustomCellHoverChanged = function onCustomCellHoverChanged(e) {
39127
40196
  if (hasFastUpdate) {
39128
40197
  if (!e.event.ctrlKey && !ctrlSelection) {
39129
- if (checkCellSelectionConstraints$1(e)) {
40198
+ if (checkCellSelectionConstraints$2(e)) {
39130
40199
  if (e.event.buttons === 1) {
39131
40200
  setHoveredCells(function (prev) {
39132
40201
  return [].concat(prev, [{
@@ -39168,7 +40237,7 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
39168
40237
  var onCustomCellPrepared = function onCustomCellPrepared(e) {
39169
40238
  var _props$edit, _props$edit2;
39170
40239
  if (hasFastUpdate) {
39171
- if (e.rowType === "data" && e.column.allowEditing && constants$2.allowedDataTypesForMultiCellEditing.some(function (item) {
40240
+ if (e.rowType === "data" && e.column.allowEditing && constants$3.allowedDataTypesForMultiCellEditing.some(function (item) {
39172
40241
  return item.toLocaleLowerCase() == e.column.dataType.toLocaleLowerCase();
39173
40242
  })) {
39174
40243
  if (selectedCells.some(function (cell) {
@@ -39244,7 +40313,7 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
39244
40313
  layout: "vertical",
39245
40314
  onFinish: onFastUpdateFormFinish,
39246
40315
  onFinishFailed: onFastUpdateFormFinishFailed
39247
- }, constants$2.allowedDataTypesForMultiCellEditing.map(function (item) {
40316
+ }, constants$3.allowedDataTypesForMultiCellEditing.map(function (item) {
39248
40317
  switch (item) {
39249
40318
  case "number":
39250
40319
  return React__default.createElement(antd.Form.Item, {
@@ -39343,7 +40412,7 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
39343
40412
  value: item[col.dataField]
39344
40413
  };
39345
40414
  }) : [])
39346
- }), getMultiLevelColumns$1(col));
40415
+ }), getMultiLevelColumns$2(col));
39347
40416
  }), props.actionColumnEnable !== undefined && props.actionColumnEnable === true && React__default.createElement(DataGrid.Column, {
39348
40417
  dataField: "Actions",
39349
40418
  fixed: true,
@@ -39409,7 +40478,7 @@ var OdsRemoteDataGrid = function OdsRemoteDataGrid(props) {
39409
40478
  }), React__default.createElement(DataGrid.Export, {
39410
40479
  enabled: true,
39411
40480
  allowExportSelectedData: true,
39412
- formats: constants$2.exportFormats
40481
+ formats: constants$3.exportFormats
39413
40482
  }), ((_props$selectOptions = props.selectOptions) === null || _props$selectOptions === void 0 ? void 0 : _props$selectOptions.selectEnable) && React__default.createElement(DataGrid.Selection, {
39414
40483
  mode: (_props$selectOptions$ = (_props$selectOptions2 = props.selectOptions) === null || _props$selectOptions2 === void 0 ? void 0 : _props$selectOptions2.mode) != null ? _props$selectOptions$ : "multiple",
39415
40484
  deferred: (_props$selectOptions$2 = (_props$selectOptions3 = props.selectOptions) === null || _props$selectOptions3 === void 0 ? void 0 : _props$selectOptions3.deferred) != null ? _props$selectOptions$2 : true
@@ -39492,6 +40561,7 @@ exports.OdsInputNumber = OdsInputNumber;
39492
40561
  exports.OdsLink = OdsLink;
39493
40562
  exports.OdsList = OdsList;
39494
40563
  exports.OdsMasterDetailDataGrid = MasterDetailDataGrid;
40564
+ exports.OdsMergeCellDataGrid = OdsMergeCellDataGrid;
39495
40565
  exports.OdsModal = OdsModal;
39496
40566
  exports.OdsModalOld = OdsModalOld;
39497
40567
  exports.OdsMultiSelect = OdsMultiSelect;