es-grid-template 1.7.22 → 1.7.24

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 (173) hide show
  1. package/es/grid-component/GridStyle.js +1 -1
  2. package/es/grid-component/InternalTable.js +5 -1
  3. package/es/grid-component/TableGrid.js +2 -2
  4. package/es/index.d.ts +1 -0
  5. package/es/index.js +3 -1
  6. package/es/table-component/ColumnsChoose.d.ts +10 -0
  7. package/es/table-component/ColumnsChoose.js +557 -0
  8. package/es/table-component/ContextMenu.d.ts +20 -0
  9. package/es/table-component/ContextMenu.js +75 -0
  10. package/es/table-component/InternalTable.d.ts +9 -0
  11. package/es/table-component/InternalTable.js +295 -0
  12. package/es/table-component/TableContainer.d.ts +22 -0
  13. package/es/table-component/TableContainer.js +130 -0
  14. package/es/table-component/TableContainerEdit.d.ts +28 -0
  15. package/es/table-component/TableContainerEdit.js +1211 -0
  16. package/es/table-component/body/EditableCell.d.ts +16 -0
  17. package/es/table-component/body/EditableCell.js +1036 -0
  18. package/es/table-component/body/TableBody.d.ts +19 -0
  19. package/es/table-component/body/TableBody.js +64 -0
  20. package/es/table-component/body/TableBodyCell.d.ts +10 -0
  21. package/es/table-component/body/TableBodyCell.js +139 -0
  22. package/es/table-component/body/TableBodyCellEdit.d.ts +15 -0
  23. package/es/table-component/body/TableBodyCellEdit.js +814 -0
  24. package/es/table-component/body/TableBodyRow.d.ts +21 -0
  25. package/es/table-component/body/TableBodyRow.js +146 -0
  26. package/es/table-component/components/ControlCheckbox.d.ts +13 -0
  27. package/es/table-component/components/ControlCheckbox.js +87 -0
  28. package/es/table-component/components/EditForm/EditForm.d.ts +27 -0
  29. package/es/table-component/components/EditForm/EditForm.js +395 -0
  30. package/es/table-component/components/EditForm/index.d.ts +1 -0
  31. package/es/table-component/components/EditForm/index.js +1 -0
  32. package/es/table-component/components/InputControl/InputControl.d.ts +27 -0
  33. package/es/table-component/components/InputControl/InputControl.js +121 -0
  34. package/es/table-component/components/InputControl/index.d.ts +1 -0
  35. package/es/table-component/components/InputControl/index.js +1 -0
  36. package/es/table-component/components/async-select/index.d.ts +11 -0
  37. package/es/table-component/components/async-select/index.js +41 -0
  38. package/es/table-component/components/async-table-select/index.d.ts +11 -0
  39. package/es/table-component/components/async-table-select/index.js +43 -0
  40. package/es/table-component/components/checkbox-control/index.d.ts +13 -0
  41. package/es/table-component/components/checkbox-control/index.js +40 -0
  42. package/es/table-component/components/checkbox-filter/CheckboxFilter.d.ts +18 -0
  43. package/es/table-component/components/checkbox-filter/CheckboxFilter.js +240 -0
  44. package/es/table-component/components/checkbox-filter/FilterSearch.d.ts +12 -0
  45. package/es/table-component/components/checkbox-filter/FilterSearch.js +36 -0
  46. package/es/table-component/components/command/Command.d.ts +9 -0
  47. package/es/table-component/components/command/Command.js +28 -0
  48. package/es/table-component/components/number/index.d.ts +10 -0
  49. package/es/table-component/components/number/index.js +42 -0
  50. package/es/table-component/components/number-range/index.d.ts +11 -0
  51. package/es/table-component/components/number-range/index.js +66 -0
  52. package/es/table-component/features/operator.d.ts +24 -0
  53. package/es/table-component/features/operator.js +62 -0
  54. package/es/table-component/footer/TableFooter.d.ts +13 -0
  55. package/es/table-component/footer/TableFooter.js +33 -0
  56. package/es/table-component/footer/TableFooterCell.d.ts +10 -0
  57. package/es/table-component/footer/TableFooterCell.js +24 -0
  58. package/es/table-component/footer/TableFooterRow.d.ts +14 -0
  59. package/es/table-component/footer/TableFooterRow.js +71 -0
  60. package/es/table-component/header/TableHead.d.ts +14 -0
  61. package/es/table-component/header/TableHead.js +60 -0
  62. package/es/table-component/header/TableHeadCell.d.ts +14 -0
  63. package/es/table-component/header/TableHeadCell.js +324 -0
  64. package/es/table-component/header/TableHeadRow.d.ts +16 -0
  65. package/es/table-component/header/TableHeadRow.js +86 -0
  66. package/es/table-component/header/renderFilter.d.ts +20 -0
  67. package/es/table-component/header/renderFilter.js +281 -0
  68. package/es/table-component/hook/constant.d.ts +73 -0
  69. package/es/table-component/hook/constant.js +240 -0
  70. package/es/table-component/hook/useColumns.d.ts +11 -0
  71. package/es/table-component/hook/useColumns.js +209 -0
  72. package/es/table-component/hook/useFilterOperator.d.ts +7 -0
  73. package/es/table-component/hook/useFilterOperator.js +33 -0
  74. package/es/table-component/hook/utils.d.ts +121 -0
  75. package/es/table-component/hook/utils.js +1727 -0
  76. package/es/table-component/index.d.ts +5 -0
  77. package/es/table-component/index.js +2 -0
  78. package/es/table-component/style.scss +1083 -0
  79. package/es/table-component/table/Grid.d.ts +23 -0
  80. package/es/table-component/table/Grid.js +310 -0
  81. package/es/table-component/table/GridEdit.d.ts +23 -0
  82. package/es/table-component/table/GridEdit.js +282 -0
  83. package/es/table-component/type.d.ts +482 -0
  84. package/es/table-component/type.js +1 -0
  85. package/es/table-component/useContext.d.ts +119 -0
  86. package/es/table-component/useContext.js +61 -0
  87. package/lib/grid-component/GridStyle.js +1 -1
  88. package/lib/grid-component/InternalTable.js +5 -1
  89. package/lib/grid-component/TableGrid.js +2 -2
  90. package/lib/index.d.ts +1 -0
  91. package/lib/index.js +8 -1
  92. package/lib/table-component/ColumnsChoose.d.ts +10 -0
  93. package/lib/table-component/ColumnsChoose.js +568 -0
  94. package/lib/table-component/ContextMenu.d.ts +20 -0
  95. package/lib/table-component/ContextMenu.js +85 -0
  96. package/lib/table-component/InternalTable.d.ts +9 -0
  97. package/lib/table-component/InternalTable.js +299 -0
  98. package/lib/table-component/TableContainer.d.ts +22 -0
  99. package/lib/table-component/TableContainer.js +137 -0
  100. package/lib/table-component/TableContainerEdit.d.ts +28 -0
  101. package/lib/table-component/TableContainerEdit.js +1220 -0
  102. package/lib/table-component/body/EditableCell.d.ts +16 -0
  103. package/lib/table-component/body/EditableCell.js +1038 -0
  104. package/lib/table-component/body/TableBody.d.ts +19 -0
  105. package/lib/table-component/body/TableBody.js +72 -0
  106. package/lib/table-component/body/TableBodyCell.d.ts +10 -0
  107. package/lib/table-component/body/TableBodyCell.js +148 -0
  108. package/lib/table-component/body/TableBodyCellEdit.d.ts +15 -0
  109. package/lib/table-component/body/TableBodyCellEdit.js +821 -0
  110. package/lib/table-component/body/TableBodyRow.d.ts +21 -0
  111. package/lib/table-component/body/TableBodyRow.js +153 -0
  112. package/lib/table-component/components/ControlCheckbox.d.ts +13 -0
  113. package/lib/table-component/components/ControlCheckbox.js +95 -0
  114. package/lib/table-component/components/EditForm/EditForm.d.ts +27 -0
  115. package/lib/table-component/components/EditForm/EditForm.js +406 -0
  116. package/lib/table-component/components/EditForm/index.d.ts +1 -0
  117. package/lib/table-component/components/EditForm/index.js +16 -0
  118. package/lib/table-component/components/InputControl/InputControl.d.ts +27 -0
  119. package/lib/table-component/components/InputControl/InputControl.js +131 -0
  120. package/lib/table-component/components/InputControl/index.d.ts +1 -0
  121. package/lib/table-component/components/InputControl/index.js +16 -0
  122. package/lib/table-component/components/async-select/index.d.ts +11 -0
  123. package/lib/table-component/components/async-select/index.js +49 -0
  124. package/lib/table-component/components/async-table-select/index.d.ts +11 -0
  125. package/lib/table-component/components/async-table-select/index.js +51 -0
  126. package/lib/table-component/components/checkbox-control/index.d.ts +13 -0
  127. package/lib/table-component/components/checkbox-control/index.js +48 -0
  128. package/lib/table-component/components/checkbox-filter/CheckboxFilter.d.ts +18 -0
  129. package/lib/table-component/components/checkbox-filter/CheckboxFilter.js +249 -0
  130. package/lib/table-component/components/checkbox-filter/FilterSearch.d.ts +12 -0
  131. package/lib/table-component/components/checkbox-filter/FilterSearch.js +44 -0
  132. package/lib/table-component/components/command/Command.d.ts +9 -0
  133. package/lib/table-component/components/command/Command.js +37 -0
  134. package/lib/table-component/components/number/index.d.ts +10 -0
  135. package/lib/table-component/components/number/index.js +50 -0
  136. package/lib/table-component/components/number-range/index.d.ts +11 -0
  137. package/lib/table-component/components/number-range/index.js +74 -0
  138. package/lib/table-component/features/operator.d.ts +24 -0
  139. package/lib/table-component/features/operator.js +67 -0
  140. package/lib/table-component/footer/TableFooter.d.ts +13 -0
  141. package/lib/table-component/footer/TableFooter.js +42 -0
  142. package/lib/table-component/footer/TableFooterCell.d.ts +10 -0
  143. package/lib/table-component/footer/TableFooterCell.js +32 -0
  144. package/lib/table-component/footer/TableFooterRow.d.ts +14 -0
  145. package/lib/table-component/footer/TableFooterRow.js +79 -0
  146. package/lib/table-component/header/TableHead.d.ts +14 -0
  147. package/lib/table-component/header/TableHead.js +69 -0
  148. package/lib/table-component/header/TableHeadCell.d.ts +14 -0
  149. package/lib/table-component/header/TableHeadCell.js +333 -0
  150. package/lib/table-component/header/TableHeadRow.d.ts +16 -0
  151. package/lib/table-component/header/TableHeadRow.js +94 -0
  152. package/lib/table-component/header/renderFilter.d.ts +20 -0
  153. package/lib/table-component/header/renderFilter.js +291 -0
  154. package/lib/table-component/hook/constant.d.ts +73 -0
  155. package/lib/table-component/hook/constant.js +247 -0
  156. package/lib/table-component/hook/useColumns.d.ts +11 -0
  157. package/lib/table-component/hook/useColumns.js +220 -0
  158. package/lib/table-component/hook/useFilterOperator.d.ts +7 -0
  159. package/lib/table-component/hook/useFilterOperator.js +40 -0
  160. package/lib/table-component/hook/utils.d.ts +121 -0
  161. package/lib/table-component/hook/utils.js +1817 -0
  162. package/lib/table-component/index.d.ts +5 -0
  163. package/lib/table-component/index.js +9 -0
  164. package/lib/table-component/style.scss +1083 -0
  165. package/lib/table-component/table/Grid.d.ts +23 -0
  166. package/lib/table-component/table/Grid.js +313 -0
  167. package/lib/table-component/table/GridEdit.d.ts +23 -0
  168. package/lib/table-component/table/GridEdit.js +284 -0
  169. package/lib/table-component/type.d.ts +482 -0
  170. package/lib/table-component/type.js +5 -0
  171. package/lib/table-component/useContext.d.ts +119 -0
  172. package/lib/table-component/useContext.js +67 -0
  173. package/package.json +3 -1
@@ -0,0 +1,1038 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = void 0;
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+ var _react = _interopRequireWildcard(require("react"));
10
+ var _antd = require("antd");
11
+ var _utils = require("../hook/utils");
12
+ var _classnames = _interopRequireDefault(require("classnames"));
13
+ var _reactNumericComponent = require("react-numeric-component");
14
+ var _dayjs = _interopRequireDefault(require("dayjs"));
15
+ var _moment = _interopRequireDefault(require("moment"));
16
+ var _reactHookForm = require("react-hook-form");
17
+ var _rcMasterUi = require("rc-master-ui");
18
+ var _asyncSelect = require("../components/async-select");
19
+ var _asyncTableSelect = require("../components/async-table-select");
20
+ var _colors = require("@ant-design/colors");
21
+ var _EditForm = require("../components/EditForm");
22
+ var _useContext = require("../useContext");
23
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
24
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
25
+ // import type {ColumnTable, ColumnSelectTable, IFormat} from "./type"
26
+
27
+ // import moment from "moment";
28
+ // import dayjs from "dayjs";
29
+ // import {TreeSelect} from "antd";
30
+
31
+ // import {TableContext} from "./useContext"
32
+
33
+ // import moment from "moment";
34
+
35
+ const {
36
+ SHOW_PARENT
37
+ } = _rcMasterUi.TreeSelect;
38
+ const {
39
+ TextArea
40
+ } = _antd.Input;
41
+ const filterTreeNode = (input, treeNode) => {
42
+ const {
43
+ title,
44
+ value
45
+ } = treeNode;
46
+ if (typeof title === "string" || typeof title === 'number') {
47
+ return title.toString().toLowerCase().includes(input.toLowerCase()) || value.toLowerCase().includes(input.toLowerCase());
48
+ }
49
+ return value.toLowerCase().includes(input.toLowerCase());
50
+ };
51
+ const EditableCell = props => {
52
+ const {
53
+ t,
54
+ // editing,
55
+ dataIndex,
56
+ editType,
57
+ record,
58
+ // index,
59
+ // children,
60
+ column,
61
+ indexRow,
62
+ indexCol
63
+ // cellEditing,
64
+ // ...restProps
65
+ } = props;
66
+ const {
67
+ format,
68
+ control,
69
+ getValues,
70
+ handleCellChange,
71
+ errors,
72
+ id,
73
+ startCell,
74
+ rowKey
75
+ } = (0, _react.useContext)(_useContext.TableContext);
76
+ const datePickerRef = _react.default.useRef(null);
77
+ const dateTimePickerRef = _react.default.useRef(null);
78
+ // const timePickerRef = React.useRef(null);
79
+
80
+ const colFormat = typeof column?.format === 'function' ? column?.format(record) : column?.format;
81
+ const cellFormat = (0, _utils.getFormat)(colFormat, format);
82
+ const inputNode = (value, onChange) => {
83
+ const dateFormat = (0, _utils.getDatepickerFormat)(editType, cellFormat);
84
+ const date = !(0, _utils.isEmpty)(value) ? (0, _utils.convertDateToDayjs)(new Date(value), dateFormat) : null;
85
+ const maxDate = (0, _utils.convertDateToDayjs)(column.maxDate, dateFormat) ?? undefined;
86
+ const minDate = (0, _utils.convertDateToDayjs)(column.minDate, dateFormat) ?? undefined;
87
+ const {
88
+ fieldValue,
89
+ columns: selectColumns,
90
+ isMulti,
91
+ selectMode,
92
+ menuWidth,
93
+ fieldNames,
94
+ toolbarItems,
95
+ filterOption,
96
+ inputKey,
97
+ // toolbarClick,
98
+ loadOptions,
99
+ validateOption,
100
+ options: propsOptions
101
+ } = column.editSelectSettings || {};
102
+ const isInvalid = column.field ? errors[column.field] : false;
103
+
104
+ // @ts-ignore
105
+ const key = record[rowKey];
106
+ const field = column.field ?? '';
107
+
108
+ // const message = errors && column.field && errors[column.field] ? errors[column.field].message : ''
109
+ const message = isInvalid?.message;
110
+ const keySelect = (0, _utils.checkFieldKey)(column?.editSelectSettings?.fieldKey);
111
+ const selectOptions = typeof propsOptions === 'function' ? propsOptions(record, column.field) : propsOptions;
112
+ const options = validateOption ? validateOption(record, column.field) : selectOptions ?? [];
113
+ const optionsTree = validateOption ? (0, _utils.convertArrayWithIndent)(validateOption(record, column.field)) : selectOptions ? (0, _utils.convertArrayWithIndent)(selectOptions) : [];
114
+
115
+ // const currt = flatColumns2()
116
+
117
+ switch (editType) {
118
+ case 'date':
119
+ return /*#__PURE__*/_react.default.createElement(_antd.DatePicker, {
120
+ ref: datePickerRef,
121
+ format: {
122
+ format: dateFormat,
123
+ type: 'mask'
124
+ },
125
+ autoFocus: column.field === startCell?.colId,
126
+ defaultOpen: column.field === startCell?.colId
127
+
128
+ // locale={buddhistLocale}
129
+ ,
130
+ style: {
131
+ width: '100%',
132
+ height: '100%'
133
+ }
134
+ // value={date}
135
+ ,
136
+ defaultValue: date
137
+ // preserveInvalidOnBlur
138
+ ,
139
+
140
+ onBlur: () => {
141
+ const formState = getValues();
142
+ const itemState = getValues(dataIndex);
143
+ // @ts-ignore
144
+ const prevState = record[dataIndex];
145
+ const newState = itemState;
146
+ if (newState !== prevState) {
147
+ handleCellChange?.({
148
+ key: key,
149
+ field: column.field,
150
+ record: formState,
151
+ prevState,
152
+ newState,
153
+ option: newState,
154
+ indexCol,
155
+ indexRow,
156
+ type: 'blur'
157
+ });
158
+ }
159
+ },
160
+ placeholder: t ? t(column.placeholder ?? 'Select') : column.placeholder ?? 'Select',
161
+ disabled: (0, _utils.isDisable)(column, record) ?? false,
162
+ maxDate: maxDate,
163
+ minDate: minDate,
164
+ onChange: (newDate, dateString) => {
165
+ const newDateValue = dateString ? (0, _moment.default)((0, _utils.convertDayjsToDate)(dateString, dateFormat)).format() : null;
166
+ onChange(newDateValue);
167
+ setTimeout(() => {
168
+ // @ts-ignore
169
+ datePickerRef.current?.focus();
170
+ }, 0);
171
+ },
172
+ popupClassName: 'be-popup-container',
173
+ status: isInvalid ? 'error' : undefined,
174
+ "data-tooltip-content": message,
175
+ "data-tooltip-id": `${id}-tooltip-form-error`
176
+ });
177
+ case 'datetime':
178
+ return /*#__PURE__*/_react.default.createElement(_antd.DatePicker
179
+ // id={`col${indexCol}-record${indexRow}`}
180
+ , {
181
+ ref: dateTimePickerRef,
182
+ format: {
183
+ format: dateFormat,
184
+ type: 'mask'
185
+ }
186
+ // locale={buddhistLocale}
187
+ ,
188
+ style: {
189
+ width: '100%',
190
+ height: '100%'
191
+ },
192
+ showTime: true
193
+ // value={date}
194
+ ,
195
+ defaultValue: date,
196
+ placeholder: t ? t(column.placeholder ?? 'Select') : column.placeholder ?? 'Select',
197
+ disabled: (0, _utils.isDisable)(column, record) ?? false,
198
+ maxDate: maxDate,
199
+ minDate: minDate,
200
+ onChange: (newDate, dateString) => {
201
+ const newDateValue = dateString ? (0, _moment.default)((0, _utils.convertDayjsToDate)(dateString, dateFormat)).format() : null;
202
+ onChange(newDateValue);
203
+ setTimeout(() => {
204
+ // @ts-ignore
205
+ dateTimePickerRef.current?.focus();
206
+ }, 0);
207
+ },
208
+ onBlur: () => {
209
+ const formState = getValues();
210
+ const itemState = getValues(dataIndex);
211
+ // @ts-ignore
212
+ const prevState = record[dataIndex];
213
+ const newState = itemState;
214
+ if (prevState !== newState) {
215
+ handleCellChange?.({
216
+ key: key,
217
+ field: column.field ?? column.field,
218
+ record: formState,
219
+ prevState,
220
+ newState,
221
+ option: newState,
222
+ indexCol,
223
+ indexRow,
224
+ type: 'blur'
225
+ });
226
+ }
227
+ },
228
+ popupClassName: 'be-popup-container',
229
+ status: isInvalid ? 'error' : undefined,
230
+ "data-tooltip-content": message,
231
+ "data-tooltip-id": `${id}-tooltip-form-error`,
232
+ autoFocus: column.field === startCell?.colId,
233
+ defaultOpen: column.field === startCell?.colId
234
+ });
235
+ case 'month':
236
+ case 'quarter':
237
+ case 'year':
238
+ const pickerFormat = (0, _utils.getDatepickerFormat)(editType, cellFormat);
239
+ const maxDateValue1 = !(0, _utils.isEmpty)(column.maxDate) ? (0, _dayjs.default)(column.maxDate, pickerFormat) : undefined;
240
+ const minDateValue1 = !(0, _utils.isEmpty)(column.minDate) ? (0, _dayjs.default)(column.minDate, pickerFormat) : undefined;
241
+ return /*#__PURE__*/_react.default.createElement(_antd.DatePicker, {
242
+ id: `col${indexCol}-record${indexRow}`,
243
+ format: {
244
+ format: pickerFormat,
245
+ type: 'mask'
246
+ },
247
+ style: {
248
+ width: '100%',
249
+ height: '100%'
250
+ },
251
+ picker: editType,
252
+ placeholder: t ? t(column.placeholder ?? 'Select') : column.placeholder ?? 'Select',
253
+ disabled: (0, _utils.isDisable)(column, record) ?? false,
254
+ maxDate: maxDateValue1,
255
+ minDate: minDateValue1,
256
+ popupClassName: 'be-popup-container',
257
+ status: isInvalid ? 'error' : undefined,
258
+ "data-tooltip-content": message,
259
+ "data-tooltip-id": `${id}-tooltip-form-error`,
260
+ autoFocus: column.field === startCell?.colId,
261
+ defaultOpen: column.field === startCell?.colId
262
+ });
263
+ case 'week':
264
+ const weekFormat = (0, _utils.getDatepickerFormat)(editType, cellFormat);
265
+ const maxWeekValue = !(0, _utils.isEmpty)(column.maxDate) ? (0, _dayjs.default)(column.maxDate, weekFormat) : undefined;
266
+ const minWeekValue = !(0, _utils.isEmpty)(column.minDate) ? (0, _dayjs.default)(column.minDate, weekFormat) : undefined;
267
+ return /*#__PURE__*/_react.default.createElement(_antd.DatePicker, {
268
+ format: val => (0, _utils.customWeekStartEndFormat)(val, weekFormat),
269
+ style: {
270
+ width: '100%',
271
+ height: '100%'
272
+ },
273
+ picker: editType,
274
+ placeholder: t ? t(column.placeholder ?? 'Select') : column.placeholder ?? 'Select',
275
+ disabled: (0, _utils.isDisable)(column, record) ?? false,
276
+ maxDate: maxWeekValue,
277
+ minDate: minWeekValue,
278
+ popupClassName: 'be-popup-container',
279
+ status: isInvalid ? 'error' : undefined,
280
+ "data-tooltip-content": message,
281
+ "data-tooltip-id": `${id}-tooltip-form-error`,
282
+ autoFocus: column.field === startCell?.colId,
283
+ defaultOpen: column.field === startCell?.colId
284
+ });
285
+ case 'time':
286
+ const timeFormat = (0, _utils.getDatepickerFormat)(editType, cellFormat);
287
+ const maxTimeValue = !(0, _utils.isEmpty)(column.maxTime) ? (0, _dayjs.default)(column.maxTime).format(timeFormat) : null;
288
+ const minTimeValue = !(0, _utils.isEmpty)(column.minTime) ? (0, _dayjs.default)(column.minTime).format(timeFormat) : null;
289
+
290
+ // @ts-ignore
291
+ // const timeValue = !isEmpty(record[column.dataIndex]) ? dayjs(record[column.dataIndex], timeFormat) : null
292
+ const maxTime = maxTimeValue ? (0, _dayjs.default)(maxTimeValue, timeFormat) : undefined;
293
+ const minTime = minTimeValue ? (0, _dayjs.default)(minTimeValue, timeFormat) : undefined;
294
+ return /*#__PURE__*/_react.default.createElement(_antd.TimePicker, {
295
+ format: {
296
+ format: timeFormat,
297
+ type: 'mask'
298
+ },
299
+ placeholder: t ? t(column.placeholder ?? 'Select') : column.placeholder ?? 'Select',
300
+ maxDate: maxTime,
301
+ minDate: minTime,
302
+ disabled: (0, _utils.isDisable)(column, record) ?? false,
303
+ style: {
304
+ width: '100%',
305
+ height: '100%'
306
+ },
307
+ popupClassName: 'be-popup-container',
308
+ status: isInvalid ? 'error' : undefined,
309
+ "data-tooltip-content": message,
310
+ "data-tooltip-id": `${id}-tooltip-form-error`,
311
+ autoFocus: column.field === startCell?.colId,
312
+ defaultOpen: column.field === startCell?.colId
313
+ });
314
+ case 'selectTable':
315
+ const rr = selectColumns ?? [];
316
+ const columnsTable = rr.map(colSelect => {
317
+ return {
318
+ title: colSelect.headerTemplate ? colSelect.headerTemplate : t ? t(colSelect.headerText) : colSelect.headerText,
319
+ dataIndex: colSelect.field ?? colSelect.dataIndex,
320
+ key: colSelect.dataIndex,
321
+ render: colSelect.template ? (text, recd, ind) => /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, colSelect.template?.({
322
+ value: text,
323
+ rowData: recd,
324
+ column: colSelect,
325
+ field: colSelect.field,
326
+ index: ind,
327
+ [colSelect.field]: text
328
+ })) : undefined,
329
+ width: colSelect.width,
330
+ ellipsis: true,
331
+ align: colSelect.textAlign
332
+ };
333
+ });
334
+ let valueSelectTable = value;
335
+ if (fieldValue) {
336
+ // @ts-ignore
337
+ valueSelectTable = record[fieldValue] ?? value;
338
+ }
339
+ if (isMulti || selectMode === 'checkbox') {
340
+ // @ts-ignore
341
+ valueSelectTable = !(0, _utils.isNullOrUndefined)(record[column.dataIndex]) && Array.isArray(record[column.dataIndex]) && record[column.dataIndex]?.length > 0 ? options.filter(val => record[column.dataIndex]?.includes(val[keySelect])) : undefined;
342
+ }
343
+ return /*#__PURE__*/_react.default.createElement(_asyncTableSelect.AsyncTableSelect
344
+ // id={`col${indexCol}-record${indexRow}`}
345
+ , {
346
+ columns: columnsTable,
347
+ options: options,
348
+ defaultOptions: options,
349
+ value: valueSelectTable,
350
+ rowData: record,
351
+ onChange: (val, option) => {
352
+ onChange(val ?? '');
353
+ const formState = getValues();
354
+ // const itemState = getValues(dataIndex)
355
+ // @ts-ignore
356
+ const prevState = record[dataIndex];
357
+ const newState = val;
358
+ handleCellChange?.({
359
+ // @ts-ignore
360
+ key: record[rowKey],
361
+ field: column.field ?? column.field,
362
+ record: formState,
363
+ prevState,
364
+ newState,
365
+ option: option,
366
+ indexCol,
367
+ indexRow,
368
+ type: 'blur'
369
+ });
370
+ },
371
+ showSearch: true,
372
+ mode: isMulti || selectMode === 'checkbox' ? 'multiple' : undefined,
373
+ valueSelectAble: true,
374
+ selectMode: selectMode,
375
+ style: {
376
+ width: '100%',
377
+ height: '100%'
378
+ },
379
+ defaultOpen: column.field === startCell?.colId,
380
+ autoFocus: column.field === startCell?.colId
381
+
382
+ // defaultOpen={column.field === cellEditing?.column.field}
383
+ ,
384
+ placeholder: t ? t(column.placeholder ?? 'Select') : column.placeholder ?? 'Select',
385
+ allowClear: column.isClearable ?? false,
386
+ maxTagCount: 'responsive',
387
+ rowKey: keySelect,
388
+ popupMatchSelectWidth: menuWidth ? menuWidth + 10 : undefined,
389
+ optionFilterProp: "label",
390
+ popupClassName: 'be-popup-container',
391
+ loadOptions: loadOptions,
392
+ status: isInvalid ? 'error' : undefined,
393
+ dropdownRender: menu => {
394
+ if (toolbarItems && toolbarItems.length > 0) {
395
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, menu, /*#__PURE__*/_react.default.createElement(_antd.Divider, {
396
+ style: {
397
+ margin: '8px 0'
398
+ }
399
+ }), /*#__PURE__*/_react.default.createElement("div", {
400
+ className: 'toolbar-control d-flex justify-content-end'
401
+ }));
402
+ } else {
403
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, " ", menu);
404
+ }
405
+ },
406
+ filterOption: filterOption,
407
+ fieldNames: fieldNames ? fieldNames : {
408
+ value: keySelect,
409
+ label: inputKey ?? 'label'
410
+ },
411
+ onBlur: event => {
412
+ if (event.inputValue && column?.editSelectSettings?.searchTextAsValue && isMulti !== true) {
413
+ const val = event.inputValue;
414
+ onChange(val ?? '');
415
+ const formState = getValues();
416
+ // const itemState = getValues(dataIndex)
417
+ // @ts-ignore
418
+ const prevState = record[dataIndex];
419
+ const newState = val;
420
+ handleCellChange?.({
421
+ key,
422
+ field: column.field ?? column.field,
423
+ record: formState,
424
+ prevState,
425
+ newState,
426
+ option: {
427
+ value: val,
428
+ label: val
429
+ },
430
+ indexCol,
431
+ indexRow,
432
+ type: 'blur'
433
+ });
434
+ }
435
+ },
436
+ "data-tooltip-content": message,
437
+ "data-tooltip-id": `${id}-tooltip-form-error`
438
+ });
439
+ case 'select':
440
+ let valueSelect = value;
441
+ if (fieldValue) {
442
+ // @ts-ignore
443
+ valueSelect = record[fieldValue] ?? value;
444
+ }
445
+ if (isMulti || selectMode === 'checkbox') {
446
+ // @ts-ignore
447
+ valueSelect = !(0, _utils.isNullOrUndefined)(record[column.dataIndex]) && Array.isArray(record[column.dataIndex]) && record[column.dataIndex]?.length > 0 ? options.filter(val => record[column.dataIndex]?.includes(val[keySelect])) : undefined;
448
+ }
449
+ return /*#__PURE__*/_react.default.createElement(_rcMasterUi.Select, {
450
+ options: options,
451
+ value: valueSelect,
452
+ onChange: (val, option) => {
453
+ onChange(val ?? '');
454
+ const formState = getValues();
455
+ // const itemState = getValues(dataIndex)
456
+ // @ts-ignore
457
+ const prevState = record[dataIndex];
458
+ const newState = val;
459
+ handleCellChange?.({
460
+ key,
461
+ field: column.field ?? column.field,
462
+ record: formState,
463
+ prevState,
464
+ newState,
465
+ option: option,
466
+ indexCol,
467
+ indexRow,
468
+ type: 'blur'
469
+ });
470
+ },
471
+ showSearch: true,
472
+ mode: isMulti || selectMode === 'checkbox' ? 'multiple' : undefined,
473
+ valueSelectAble: true,
474
+ defaultOpen: column.field === startCell?.colId,
475
+ autoFocus: column.field === startCell?.colId
476
+
477
+ // defaultOpen={column.field === cellEditing?.column.field}
478
+ ,
479
+
480
+ style: {
481
+ width: '100%',
482
+ height: '100%'
483
+ },
484
+ placeholder: t ? t(column.placeholder ?? 'Select') : column.placeholder ?? 'Select',
485
+ allowClear: column.isClearable ?? false,
486
+ maxTagCount: 'responsive',
487
+ popupMatchSelectWidth: menuWidth ? menuWidth + 10 : undefined,
488
+ optionFilterProp: "label",
489
+ popupClassName: 'be-popup-container',
490
+ status: isInvalid ? 'error' : undefined,
491
+ filterOption: filterOption,
492
+ fieldNames: fieldNames ? fieldNames : {
493
+ value: keySelect,
494
+ label: inputKey ?? 'label'
495
+ },
496
+ onBlur: event => {
497
+ if (event.inputValue && column?.editSelectSettings?.searchTextAsValue && isMulti !== true) {
498
+ const val = event.inputValue;
499
+ onChange(val ?? '');
500
+ const formState = getValues();
501
+ // const itemState = getValues(dataIndex)
502
+ // @ts-ignore
503
+ const prevState = record[dataIndex];
504
+ const newState = val;
505
+ handleCellChange?.({
506
+ key,
507
+ field: column.field ?? column.field,
508
+ record: formState,
509
+ prevState,
510
+ newState,
511
+ option: {
512
+ value: val,
513
+ label: val
514
+ },
515
+ indexCol,
516
+ indexRow,
517
+ type: 'blur'
518
+ });
519
+ }
520
+ },
521
+ "data-tooltip-content": message,
522
+ "data-tooltip-id": `${id}-tooltip-form-error`
523
+ });
524
+ case 'asyncSelect':
525
+ let valueAsyncSelect = value;
526
+ if (fieldValue) {
527
+ // @ts-ignore
528
+ valueAsyncSelect = record[fieldValue] ?? value;
529
+ }
530
+ if (isMulti || selectMode === 'checkbox') {
531
+ // @ts-ignore
532
+ valueAsyncSelect = !(0, _utils.isNullOrUndefined)(record[column.dataIndex]) && Array.isArray(record[column.dataIndex]) && record[column.dataIndex]?.length > 0 ? options.filter(val => record[column.dataIndex]?.includes(val[keySelect])) : undefined;
533
+ }
534
+ return /*#__PURE__*/_react.default.createElement(_asyncSelect.AsyncSelect, {
535
+ options: options,
536
+ defaultOptions: options,
537
+ value: valueAsyncSelect,
538
+ onChange: (val, option) => {
539
+ onChange(val ?? '');
540
+ const formState = getValues();
541
+ // const itemState = getValues(dataIndex)
542
+ // @ts-ignore
543
+ const prevState = record[dataIndex];
544
+ const newState = val;
545
+ handleCellChange?.({
546
+ key,
547
+ field: column.field ?? column.field,
548
+ record: formState,
549
+ prevState,
550
+ newState,
551
+ option: option,
552
+ indexCol,
553
+ indexRow,
554
+ type: 'blur'
555
+ });
556
+ },
557
+ showSearch: true,
558
+ defaultOpen: column.field === startCell?.colId,
559
+ autoFocus: column.field === startCell?.colId
560
+
561
+ // defaultOpen={column.field === cellEditing?.column.field}
562
+ ,
563
+ mode: isMulti || selectMode === 'checkbox' ? 'multiple' : undefined,
564
+ valueSelectAble: true,
565
+ style: {
566
+ width: '100%',
567
+ height: '100%'
568
+ },
569
+ placeholder: t ? t(column.placeholder ?? 'Select') : column.placeholder ?? 'Select',
570
+ allowClear: column.isClearable ?? false,
571
+ maxTagCount: 'responsive',
572
+ popupMatchSelectWidth: menuWidth ? menuWidth + 10 : undefined,
573
+ optionFilterProp: "label",
574
+ popupClassName: 'be-popup-container',
575
+ loadOptions: loadOptions,
576
+ status: isInvalid ? 'error' : undefined
577
+ // dropdownRender={(menu) => {
578
+ // if (toolbarItems && toolbarItems.length > 0) {
579
+ // return (
580
+ // <>
581
+ // {menu}
582
+ // <Divider style={{margin: '8px 0'}}/>
583
+ //
584
+ // <div
585
+ // className={'toolbar-control d-flex justify-content-end'}
586
+ // >
587
+ // {toolbarItems.map((it) => {
588
+ // return (
589
+ // <div
590
+ // key={it.key}
591
+ // className={'toolbar-item'}
592
+ // onClick={() => toolbarClick?.({item: it, column})}
593
+ // >
594
+ // {it.template ? getTemplate(it.template) : (
595
+ // <Button className='toolbar-item-btn'>
596
+ //
597
+ // {it.icon && getTemplate(it.icon)}
598
+ // {it.title}
599
+ // </Button>
600
+ // )}
601
+ //
602
+ // </div>
603
+ // )
604
+ // })}
605
+ //
606
+ // </div>
607
+ // </>
608
+ // )
609
+ // } else {
610
+ // return <> {menu}</>
611
+ // }
612
+ //
613
+ // }}
614
+ ,
615
+ filterOption: filterOption,
616
+ fieldNames: fieldNames ? fieldNames : {
617
+ value: keySelect,
618
+ label: inputKey ?? 'label'
619
+ },
620
+ onBlur: event => {
621
+ if (event.inputValue && column?.editSelectSettings?.searchTextAsValue && isMulti !== true) {
622
+ const val = event.inputValue;
623
+ onChange(val ?? '');
624
+ const formState = getValues();
625
+ // const itemState = getValues(dataIndex)
626
+ // @ts-ignore
627
+ const prevState = record[dataIndex];
628
+ const newState = val;
629
+ handleCellChange?.({
630
+ key,
631
+ field: column.field ?? column.field,
632
+ record: formState,
633
+ prevState,
634
+ newState,
635
+ option: {
636
+ value: val,
637
+ label: val
638
+ },
639
+ indexCol,
640
+ indexRow,
641
+ type: 'blur'
642
+ });
643
+ }
644
+ },
645
+ "data-tooltip-content": message,
646
+ "data-tooltip-id": `${id}-tooltip-form-error`
647
+ });
648
+ case 'treeSelect':
649
+ // let valueTreeSelect
650
+
651
+ const newTreeData = (0, _utils.convertLabelToTitle)(optionsTree);
652
+ // @ts-ignore
653
+ // const valueTreeSelect = column?.editSelectSettings?.isMulti ? (Array.isArray(record[column.dataIndex]) ? record[column.dataIndex] : []) : record[column.dataIndex]
654
+
655
+ let valueTreeSelect = value;
656
+ if (fieldValue) {
657
+ // @ts-ignore
658
+ valueTreeSelect = record[fieldValue] ?? value;
659
+ }
660
+ if (isMulti || selectMode === 'checkbox') {
661
+ // @ts-ignore
662
+ valueTreeSelect = !(0, _utils.isNullOrUndefined)(record[column.dataIndex]) && Array.isArray(record[column.dataIndex]) && record[column.dataIndex]?.length > 0 ? options.filter(val => record[column.dataIndex]?.includes(val[keySelect])) : undefined;
663
+ }
664
+ return /*#__PURE__*/_react.default.createElement(_rcMasterUi.TreeSelect, {
665
+ id: `col${indexCol}-record${indexRow}`,
666
+ className: 'be-tree-select',
667
+ style: {
668
+ width: '100%',
669
+ height: '100%'
670
+ },
671
+ value: valueTreeSelect,
672
+ dropdownStyle: {
673
+ maxHeight: 400,
674
+ overflow: 'auto'
675
+ },
676
+ treeData: newTreeData,
677
+ placeholder: t ? t(column.placeholder ?? 'Select') : column.placeholder ?? 'Select',
678
+ treeDefaultExpandAll: true,
679
+ defaultOpen: column.field === startCell?.colId,
680
+ autoFocus: column.field === startCell?.colId
681
+
682
+ // defaultOpen={column.field === cellEditing?.column.field}
683
+ ,
684
+ virtual: true,
685
+ allowClear: true,
686
+ showSearch: true
687
+ // maxTagTextLength={column?.editSelectSettings?.showItems}
688
+ ,
689
+ maxTagCount: column?.editSelectSettings?.showItems,
690
+ maxTagPlaceholder: 2,
691
+ treeTitleRender: column?.editSelectSettings?.formatOptionLabel,
692
+ showCheckedStrategy: SHOW_PARENT,
693
+ multiple: column?.editSelectSettings?.selectMode === 'checkbox' || column?.editSelectSettings?.isMulti
694
+ // fieldNames={{label: inputKey ? inputKey : 'title', value: keySelect, children: 'children'}}
695
+ ,
696
+ treeCheckable: column?.editSelectSettings?.selectMode === 'checkbox',
697
+ filterTreeNode: filterTreeNode,
698
+ popupMatchSelectWidth: menuWidth ? menuWidth + 10 : undefined,
699
+ onSelect: (val, option) => {
700
+ onChange(val ?? '');
701
+ const formState = getValues();
702
+ // const itemState = getValues(dataIndex)
703
+ // @ts-ignore
704
+ const prevState = record[dataIndex];
705
+ const newState = val;
706
+ handleCellChange?.({
707
+ key,
708
+ field: column.field,
709
+ record: formState,
710
+ prevState,
711
+ newState,
712
+ option: option,
713
+ indexCol,
714
+ indexRow,
715
+ type: 'blur'
716
+ });
717
+ },
718
+ popupClassName: 'be-popup-container',
719
+ status: isInvalid ? 'error' : undefined,
720
+ "data-tooltip-content": message,
721
+ "data-tooltip-id": `${id}-tooltip-form-error`
722
+ });
723
+ case 'checkbox':
724
+ return /*#__PURE__*/_react.default.createElement("div", {
725
+ style: {
726
+ display: 'flex',
727
+ alignItems: 'center',
728
+ justifyContent: column.align ?? 'center',
729
+ paddingInline: 5,
730
+ height: '100%',
731
+ width: '100%'
732
+ }
733
+ }, /*#__PURE__*/_react.default.createElement(_rcMasterUi.Checkbox, {
734
+ checked: Boolean(value)
735
+ // style={{ textAlign: column.align ?? 'left' }}
736
+ ,
737
+ onChange: val => {
738
+ const newVal = typeof value === "number" ? (0, _utils.parseBooleanToValue)(val.target.checked, typeof value) : val.target.checked;
739
+ onChange(newVal);
740
+ const formState = getValues();
741
+ handleCellChange?.({
742
+ key,
743
+ record: formState,
744
+ option: value,
745
+ prevState: value,
746
+ newState: newVal,
747
+ field: column.field ?? column.field,
748
+ indexCol,
749
+ indexRow,
750
+ type: 'blur'
751
+ });
752
+ },
753
+ disabled: (0, _utils.isDisable)(column, record) ?? false
754
+ }));
755
+ case 'form':
756
+ const valueForm = value;
757
+ return /*#__PURE__*/_react.default.createElement(_EditForm.EditForm, {
758
+ rowData: record,
759
+ column: column,
760
+ t: t,
761
+ id: `col${indexCol}-record${indexRow}`,
762
+ value: valueForm,
763
+ fieldKey: column.editFromSettings?.fieldKey,
764
+ indexRow: indexRow
765
+
766
+ // cellFocus={column.field === cellEditing?.column.field}
767
+ ,
768
+
769
+ onChange: val => {
770
+ const formState = getValues();
771
+
772
+ // @ts-ignore
773
+ const prevState = record[dataIndex];
774
+ const newState = val;
775
+ handleCellChange?.({
776
+ key,
777
+ field: column.field,
778
+ record: {
779
+ ...formState,
780
+ [column.field ?? '']: val
781
+ },
782
+ prevState,
783
+ newState,
784
+ option: val,
785
+ indexCol,
786
+ indexRow,
787
+ type: 'blur'
788
+ });
789
+ }
790
+ // cellEditing={cellEditing}
791
+
792
+ // menuPortalTarget={tableContainerRef}
793
+ // classNamePrefix={column.classElement ?? 'select'}
794
+ ,
795
+ placeholder: t ? t(column.placeholder ? column.placeholder : '') : column.placeholder ? column.placeholder : '',
796
+ menuWidth: column.editFromSettings?.menuWidth,
797
+ menuHeight: column.editFromSettings?.menuHeight
798
+ });
799
+
800
+ // case 'file':
801
+ // const valueFile = record[column.dataIndex]
802
+ // return (
803
+ //
804
+ //
805
+ // <InputFile
806
+ // value={valueFile}
807
+ // uploading={column.uploading}
808
+ // allowedExtensions={column.allowedExtensions}
809
+ // asyncUploadSettings={column.asyncUploadSettings}
810
+ // disable={isDisable(col, record)}
811
+ // onChange={(val: string) => {
812
+ //
813
+ // const newValue = Array.isArray(val) ? val.map((it: any) => it) : val
814
+ // const newrecordData = {
815
+ // ...record,
816
+ // [column.dataIndex]: newValue
817
+ // }
818
+ // handleCellChange(val, newValue, newrecordData, col, indexRow, indexCol)
819
+ // }}
820
+ //
821
+ //
822
+ // />
823
+ //
824
+ //
825
+ // )
826
+
827
+ case 'color':
828
+ const color = (0, _utils.isColor)(value) ? value : '#ffffff';
829
+ const presets = (0, _utils.genPresets)({
830
+ blue: _colors.blue,
831
+ red: _colors.red,
832
+ green: _colors.green,
833
+ cyan: _colors.cyan
834
+ });
835
+ return /*#__PURE__*/_react.default.createElement(_antd.ColorPicker, {
836
+ value: color,
837
+ allowClear: column.isClearable ?? true,
838
+ onChangeComplete: valueColor => {
839
+ onChange(`#${valueColor.toHex()}`);
840
+ const formState = getValues();
841
+ handleCellChange?.({
842
+ key,
843
+ field,
844
+ option: `#${valueColor.toHex()}`,
845
+ record: formState,
846
+ prevState: value,
847
+ newState: `#${valueColor.toHex()}`,
848
+ indexCol,
849
+ indexRow,
850
+ type: 'blur'
851
+ });
852
+ },
853
+ presets: presets,
854
+ panelRender: (_, {
855
+ components: {
856
+ Picker,
857
+ Presets
858
+ }
859
+ }) => /*#__PURE__*/_react.default.createElement(_antd.Row, {
860
+ justify: "space-between",
861
+ wrap: false,
862
+ className: "custom-panel be-popup-container"
863
+ }, /*#__PURE__*/_react.default.createElement(_antd.Col, {
864
+ span: 12
865
+ }, /*#__PURE__*/_react.default.createElement(Presets, null)), /*#__PURE__*/_react.default.createElement(_antd.Divider, {
866
+ type: "vertical",
867
+ style: {
868
+ height: 'auto'
869
+ }
870
+ }), /*#__PURE__*/_react.default.createElement(_antd.Col, {
871
+ flex: "auto"
872
+ }, /*#__PURE__*/_react.default.createElement(Picker, null)))
873
+ });
874
+
875
+ // case 'image':
876
+ // let image = record[column.dataIndex]
877
+ // return (
878
+ // <ImageUpload
879
+ // id={`col${indexCol}-record${indexRow}`}
880
+ // defaultImage={image}
881
+ // width={column.width}
882
+ // height={38}
883
+ // onKeyDown={(val: any, path: string) => {
884
+ // const checkKey = checkKeyDown(val, col, indexRow + 1, indexCol + 1)
885
+ // if (checkKey === 'ArrecordDown' || checkKey === 'ArrecordUp' || checkKey === 'Enter') {
886
+ // let newVal = ''
887
+ // if (newVal != record[column.dataIndex]) {
888
+ // record[column.dataIndex] = path
889
+ // // handleDataChange(path, record, col, indexRow, indexCol)
890
+ // handleCellChange(path, record, col, indexRow, indexCol)
891
+ // }
892
+ // }
893
+ // }}
894
+ // />
895
+ // )
896
+
897
+ case 'numeric':
898
+ const thousandSeparator = cellFormat?.thousandSeparator;
899
+ const decimalSeparator = cellFormat?.decimalSeparator;
900
+
901
+ // let floatValue = value
902
+
903
+ const numericFormatProps = {
904
+ value,
905
+ thousandSeparator: (0, _utils.checkThousandSeparator)(thousandSeparator, decimalSeparator),
906
+ decimalSeparator: (0, _utils.checkDecimalSeparator)(thousandSeparator, decimalSeparator),
907
+ decimalScale: cellFormat?.decimalScale ?? undefined,
908
+ fixedDecimalScale: cellFormat?.fixedDecimalScale ?? false,
909
+ allowNegative: cellFormat?.allowNegative ?? true,
910
+ prefix: cellFormat?.prefix ?? undefined,
911
+ suffix: cellFormat?.suffix ?? undefined
912
+ };
913
+ return /*#__PURE__*/_react.default.createElement(_reactNumericComponent.NumericFormat, (0, _extends2.default)({
914
+ id: `col${indexCol}-record${indexRow}`
915
+ // value={value ? numericFormatter(value.toString(), numericFormatProps) : ''}
916
+ // value={value}
917
+ }, numericFormatProps, {
918
+ min: column.min,
919
+ max: column.max,
920
+ customInput: _antd.Input
921
+ // valueIsNumericString={true}
922
+ ,
923
+ placeholder: t ? t(column.placeholder ?? 'Enter') : column.placeholder ?? 'Enter',
924
+ autoComplete: 'off',
925
+ className: (0, _classnames.default)('be-cell-editing rounded-0 input-element', {
926
+ 'is-invalid': isInvalid,
927
+ 'be-cell-edit-align-center': column.align === 'center',
928
+ 'be-cell-edit-align-left': column.align === 'left',
929
+ 'be-cell-edit-align-right': !column.align || column.align === 'right'
930
+ }),
931
+ autoFocus: column.field === startCell?.colId,
932
+ onValueChange: values => {
933
+ onChange(values?.floatValue || 0);
934
+ },
935
+ onBlur: () => {
936
+ const formState = getValues();
937
+ const itemState = getValues(dataIndex);
938
+
939
+ // @ts-ignore
940
+ const prevState = record[dataIndex];
941
+ const newState = value;
942
+ // @ts-ignore
943
+ if (itemState !== record[dataIndex]) {
944
+ handleCellChange?.({
945
+ key: key,
946
+ field,
947
+ option: newState,
948
+ record: formState,
949
+ prevState,
950
+ newState,
951
+ indexCol,
952
+ indexRow,
953
+ type: 'blur'
954
+ });
955
+ }
956
+ },
957
+ "data-tooltip-content": message,
958
+ "data-tooltip-id": `${id}-tooltip-form-error`
959
+ }));
960
+ default:
961
+ return /*#__PURE__*/_react.default.createElement(TextArea, {
962
+ id: `col${indexCol}-record${indexRow}`,
963
+ style: {
964
+ textAlign: column.align,
965
+ resize: 'none',
966
+ height: '100%'
967
+ }
968
+
969
+ // @ts-ignore
970
+ // value={!isNullOrUndefined(record[column.dataIndex]) ? record[column.dataIndex] : ''}
971
+ ,
972
+ disabled: (0, _utils.isDisable)(column, record) ?? false,
973
+ className: (0, _classnames.default)('be-cell-editing rounded-0 input-element'),
974
+ placeholder: t ? t(column.placeholder ?? 'Enter') : column.placeholder ?? 'Enter',
975
+ value: !(0, _utils.isNullOrUndefined)(value) ? value : '',
976
+ onBlur: () => {
977
+ const formState = getValues();
978
+ // const itemState = getValues(dataIndex)
979
+
980
+ // @ts-ignore
981
+ const prevState = record[dataIndex];
982
+ const newState = value;
983
+ if (newState !== prevState) {
984
+ handleCellChange?.({
985
+ key: key,
986
+ record: formState,
987
+ option: value,
988
+ prevState,
989
+ newState,
990
+ field,
991
+ indexCol,
992
+ indexRow,
993
+ type: 'blur'
994
+ });
995
+ }
996
+ },
997
+ onPressEnter: () => {
998
+ const formState = getValues();
999
+ const newState = getValues(dataIndex);
1000
+ // @ts-ignore
1001
+ const prevState = record[dataIndex];
1002
+
1003
+ // @ts-ignore
1004
+
1005
+ handleCellChange?.({
1006
+ key: key,
1007
+ newState,
1008
+ prevState,
1009
+ record: formState,
1010
+ indexCol,
1011
+ indexRow,
1012
+ type: 'enter'
1013
+ });
1014
+ // }
1015
+ },
1016
+ onChange: onChange,
1017
+ status: isInvalid ? 'error' : undefined,
1018
+ "data-tooltip-content": message,
1019
+ "data-tooltip-id": `${id}-tooltip-form-error`,
1020
+ autoSize: {
1021
+ minRows: 1,
1022
+ maxRows: 1
1023
+ }
1024
+ });
1025
+ }
1026
+ };
1027
+ return /*#__PURE__*/_react.default.createElement(_reactHookForm.Controller, {
1028
+ name: dataIndex,
1029
+ control: control,
1030
+ render: ({
1031
+ field: {
1032
+ value,
1033
+ onChange
1034
+ }
1035
+ }) => inputNode(value, onChange)
1036
+ });
1037
+ };
1038
+ var _default = exports.default = EditableCell;