es-grid-template 1.9.102 → 1.9.104
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/es/ali-table/Grid.js +1 -1
- package/es/ali-table/base-table/cell/EditCell.js +3 -2
- package/es/ali-table/base-table/cell/HeaderEditCell.js +3 -2
- package/es/ali-table/base-table/renderFilter.js +1 -1
- package/es/grid-component/GridToolbar.d.ts +3 -0
- package/es/grid-component/GridToolbar.js +16 -0
- package/es/group-component/ColumnsGroup/ColumnsGroup.js +1 -1
- package/es/group-component/TableContainerEdit.js +2 -1
- package/es/group-component/body/EditableCell.js +3 -2
- package/es/group-component/header/TableHeadCell.js +8 -6
- package/es/group-component/header/TableHeadCell2.js +7 -4
- package/es/group-component/header/renderFilter.js +1 -1
- package/es/group-component/hook/utils.d.ts +3 -3
- package/es/table-component/TableContainerEdit.js +1 -1
- package/es/table-component/body/EditableCell.js +3 -2
- package/es/table-component/header/TableHeadCell.js +8 -4
- package/es/table-component/header/TableHeadCell2.js +9 -8
- package/es/table-component/header/renderFilter.js +1 -1
- package/es/table-virtuoso/ColumnsGroup/ColumnsGroup.js +2 -2
- package/es/table-virtuoso/body/TableBodyRow.js +3 -1
- package/es/table-virtuoso/header/TableHeadCell.js +27 -1
- package/es/table-virtuoso/header/renderFilter.js +1 -1
- package/es/table-virtuoso/style.js +1 -1
- package/es/table-virtuoso/table/TableWrapper.js +6 -4
- package/lib/ali-table/Grid.js +4 -4
- package/lib/ali-table/base-table/cell/EditCell.js +3 -2
- package/lib/ali-table/base-table/cell/HeaderEditCell.js +3 -2
- package/lib/ali-table/base-table/renderFilter.js +1 -1
- package/lib/grid-component/GridToolbar.d.ts +3 -0
- package/lib/grid-component/GridToolbar.js +25 -0
- package/lib/group-component/ColumnsGroup/ColumnsGroup.js +1 -1
- package/lib/group-component/TableContainerEdit.js +4 -3
- package/lib/group-component/body/EditableCell.js +3 -2
- package/lib/group-component/header/TableHeadCell.js +8 -6
- package/lib/group-component/header/TableHeadCell2.js +7 -4
- package/lib/group-component/header/renderFilter.js +1 -1
- package/lib/table-component/TableContainerEdit.js +4 -3
- package/lib/table-component/body/EditableCell.js +3 -2
- package/lib/table-component/header/TableHeadCell.js +8 -4
- package/lib/table-component/header/TableHeadCell2.js +9 -8
- package/lib/table-component/header/renderFilter.js +1 -1
- package/lib/table-virtuoso/ColumnsGroup/ColumnsGroup.js +2 -2
- package/lib/table-virtuoso/body/TableBodyRow.js +3 -1
- package/lib/table-virtuoso/header/TableHeadCell.js +27 -1
- package/lib/table-virtuoso/header/renderFilter.js +1 -1
- package/lib/table-virtuoso/style.js +1 -1
- package/lib/table-virtuoso/table/TableWrapper.js +6 -4
- package/package.json +1 -1
package/es/ali-table/Grid.js
CHANGED
|
@@ -5,7 +5,7 @@ import React, { useContext } from "react";
|
|
|
5
5
|
import { Tooltip } from "react-tooltip";
|
|
6
6
|
import "./base-table/styles.scss";
|
|
7
7
|
// import type { TableProps } from "../table-component"
|
|
8
|
-
import
|
|
8
|
+
import Toolbar from "../grid-component/GridToolbar";
|
|
9
9
|
import classNames from "classnames";
|
|
10
10
|
import Pagination from "rc-master-ui/es/pagination";
|
|
11
11
|
import { Maximize, Minimize } from "becoxy-icons";
|
|
@@ -626,8 +626,9 @@ const EditCell = props => {
|
|
|
626
626
|
} : filterOption,
|
|
627
627
|
optionRender: column.editSelectSettings?.formatOptionLabel,
|
|
628
628
|
fieldNames: {
|
|
629
|
-
|
|
630
|
-
|
|
629
|
+
...fieldNames,
|
|
630
|
+
value: fieldNames?.value ?? keySelect,
|
|
631
|
+
label: fieldNames?.label ?? inputKey ?? 'label'
|
|
631
632
|
},
|
|
632
633
|
onBlur: event => {
|
|
633
634
|
if (event.inputValue && column?.editSelectSettings?.searchTextAsValue && isMulti !== true) {
|
|
@@ -622,8 +622,9 @@ const HeaderEditCell = props => {
|
|
|
622
622
|
} : filterOption,
|
|
623
623
|
optionRender: column.editSelectSettings?.formatOptionLabel,
|
|
624
624
|
fieldNames: {
|
|
625
|
-
|
|
626
|
-
|
|
625
|
+
...fieldNames,
|
|
626
|
+
value: fieldNames?.value ?? keySelect,
|
|
627
|
+
label: fieldNames?.label ?? inputKey ?? 'label'
|
|
627
628
|
},
|
|
628
629
|
onBlur: event => {
|
|
629
630
|
if (event.inputValue && column?.editSelectSettings?.searchTextAsValue && isMulti !== true) {
|
|
@@ -282,7 +282,7 @@ export const renderFilter = args => {
|
|
|
282
282
|
}
|
|
283
283
|
// placeholder={t ? t('Search') : `Search`}
|
|
284
284
|
,
|
|
285
|
-
placeholder: tableLocal?.search
|
|
285
|
+
placeholder: t ? t('Search') : tableLocal?.search || 'Search'
|
|
286
286
|
|
|
287
287
|
// value={selectedKeys[0]}
|
|
288
288
|
,
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/esm/extends";
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { Toolbar } from 'rc-master-ui';
|
|
4
|
+
export default function GridToolbar({
|
|
5
|
+
items,
|
|
6
|
+
...props
|
|
7
|
+
}) {
|
|
8
|
+
const visibleItems = items.filter(item => item.visible !== false);
|
|
9
|
+
const layoutKey = JSON.stringify(visibleItems.map(item => [item.key ?? item.value, item.align ?? 'left']));
|
|
10
|
+
|
|
11
|
+
// rc-master-ui leaves old alignment classes on reused items when the layout changes.
|
|
12
|
+
return /*#__PURE__*/React.createElement(Toolbar, _extends({}, props, {
|
|
13
|
+
key: layoutKey,
|
|
14
|
+
items: visibleItems
|
|
15
|
+
}));
|
|
16
|
+
}
|
|
@@ -101,7 +101,7 @@ export const ColumnsGroup = props => {
|
|
|
101
101
|
}
|
|
102
102
|
}, /*#__PURE__*/React.createElement("p", {
|
|
103
103
|
className: 'fw-bold'
|
|
104
|
-
},
|
|
104
|
+
}, t ? t('Group data by column') : 'Group data by column'), /*#__PURE__*/React.createElement("div", {
|
|
105
105
|
className: 'mb-1',
|
|
106
106
|
style: {
|
|
107
107
|
marginBottom: '1rem'
|
|
@@ -11,7 +11,8 @@ import Pagination from "rc-master-ui/es/pagination";
|
|
|
11
11
|
import { numericFormatter, removeNumericFormat } from "react-numeric-component";
|
|
12
12
|
import { TableContext } from "./useContext";
|
|
13
13
|
import { yupResolver } from "@hookform/resolvers/yup";
|
|
14
|
-
import { Dropdown,
|
|
14
|
+
import { Dropdown, Modal, Typography } from "rc-master-ui";
|
|
15
|
+
import Toolbar from "../grid-component/GridToolbar";
|
|
15
16
|
import classNames from "classnames";
|
|
16
17
|
import { Collapse2, Expand2, Maximize, Minimize } from "becoxy-icons";
|
|
17
18
|
// import { ColumnsChoose } from "./ColumnsChoose";
|
|
@@ -622,8 +622,9 @@ const EditableCell = props => {
|
|
|
622
622
|
} : filterOption,
|
|
623
623
|
optionRender: column.editSelectSettings?.formatOptionLabel,
|
|
624
624
|
fieldNames: {
|
|
625
|
-
|
|
626
|
-
|
|
625
|
+
...fieldNames,
|
|
626
|
+
value: fieldNames?.value ?? keySelect,
|
|
627
|
+
label: fieldNames?.label ?? inputKey ?? 'label'
|
|
627
628
|
},
|
|
628
629
|
onBlur: event => {
|
|
629
630
|
if (event.inputValue && column?.editSelectSettings?.searchTextAsValue && isMulti !== true) {
|
|
@@ -99,7 +99,9 @@ const TableHeadCell = props => {
|
|
|
99
99
|
if (type) {
|
|
100
100
|
header.column.setFilterValue(!originalColumn.typeFilter || originalColumn.typeFilter === 'Text' ? selectedKeys.length === 0 ? [''] : selectedKeys : selectedKeys);
|
|
101
101
|
} else {
|
|
102
|
+
const defaultOp = getDefaultOperator(originalColumn) ?? 'contains';
|
|
102
103
|
header.column.setFilterValue(undefined);
|
|
104
|
+
header.column.setFilterOperator?.(defaultOp);
|
|
103
105
|
setSelectedKeys([]);
|
|
104
106
|
}
|
|
105
107
|
setFilterChange(true);
|
|
@@ -154,9 +156,10 @@ const TableHeadCell = props => {
|
|
|
154
156
|
column: column,
|
|
155
157
|
selectedKeys,
|
|
156
158
|
setSelectedKeys,
|
|
157
|
-
tableLocal: undefined
|
|
158
|
-
|
|
159
|
-
|
|
159
|
+
tableLocal: undefined,
|
|
160
|
+
t,
|
|
161
|
+
locale,
|
|
162
|
+
doFilter
|
|
160
163
|
})), /*#__PURE__*/React.createElement(Space, {
|
|
161
164
|
style: {
|
|
162
165
|
justifyContent: 'end',
|
|
@@ -177,9 +180,8 @@ const TableHeadCell = props => {
|
|
|
177
180
|
type: "link",
|
|
178
181
|
size: "small",
|
|
179
182
|
onClick: () => {
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
+
const defaultOp = getDefaultOperator(originalColumn) ?? 'contains';
|
|
184
|
+
header.column.setFilterOperator?.(defaultOp);
|
|
183
185
|
setSelectedKeys([]);
|
|
184
186
|
doFilter(false);
|
|
185
187
|
}
|
|
@@ -100,7 +100,9 @@ const TableHeadCell2 = props => {
|
|
|
100
100
|
if (type) {
|
|
101
101
|
column.setFilterValue(!originalColumn.typeFilter || originalColumn.typeFilter === 'Text' ? selectedKeys.length === 0 ? [''] : selectedKeys : selectedKeys);
|
|
102
102
|
} else {
|
|
103
|
+
const defaultOp = getDefaultOperator(originalColumn) ?? 'contains';
|
|
103
104
|
column.setFilterValue(undefined);
|
|
105
|
+
column.setFilterOperator?.(defaultOp);
|
|
104
106
|
setSelectedKeys([]);
|
|
105
107
|
}
|
|
106
108
|
setFilterChange(true);
|
|
@@ -158,7 +160,9 @@ const TableHeadCell2 = props => {
|
|
|
158
160
|
doFilter,
|
|
159
161
|
format,
|
|
160
162
|
dataSourceFilter,
|
|
161
|
-
tableLocal
|
|
163
|
+
tableLocal,
|
|
164
|
+
t,
|
|
165
|
+
locale
|
|
162
166
|
})), /*#__PURE__*/React.createElement(Space, {
|
|
163
167
|
style: {
|
|
164
168
|
justifyContent: 'end',
|
|
@@ -179,9 +183,8 @@ const TableHeadCell2 = props => {
|
|
|
179
183
|
type: "link",
|
|
180
184
|
size: "small",
|
|
181
185
|
onClick: () => {
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
186
|
+
const defaultOp = getDefaultOperator(originalColumn) ?? 'contains';
|
|
187
|
+
column.setFilterOperator?.(defaultOp);
|
|
185
188
|
setSelectedKeys([]);
|
|
186
189
|
doFilter(false);
|
|
187
190
|
}
|
|
@@ -272,7 +272,7 @@ export const renderFilter = args => {
|
|
|
272
272
|
}
|
|
273
273
|
// placeholder={t ? t('Search') : `Search`}
|
|
274
274
|
,
|
|
275
|
-
placeholder: tableLocal?.search
|
|
275
|
+
placeholder: t ? t('Search') : tableLocal?.search || 'Search',
|
|
276
276
|
value: selectedKeys[0],
|
|
277
277
|
onChange: e => setSelectedKeys(e.target.value ? [e.target.value] : [])
|
|
278
278
|
// onPressEnter={() => handleSearch(selectedKeys as string[], confirm)}
|
|
@@ -196,10 +196,10 @@ export declare const fixColumnsLeft: <RecordType>(columns: ColumnTable<RecordTyp
|
|
|
196
196
|
value: any;
|
|
197
197
|
rowData: RecordType;
|
|
198
198
|
}) => import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>> | import("react").ReactNode);
|
|
199
|
-
onCellStyles?: Omit<CSSProperties, "
|
|
200
|
-
onCellHeaderStyles?: Omit<CSSProperties, "
|
|
199
|
+
onCellStyles?: Omit<CSSProperties, "width" | "display" | "right" | "left" | "minWidth" | "position"> | ((cellValue: any, cell: import("@tanstack/react-table").Cell<RecordType, unknown>) => Omit<CSSProperties, "width" | "display" | "right" | "left" | "minWidth" | "position">);
|
|
200
|
+
onCellHeaderStyles?: Omit<CSSProperties, "width" | "display" | "right" | "left" | "minWidth" | "position"> | ((cell: import("@tanstack/react-table").Header<RecordType, unknown>) => Omit<CSSProperties, "width" | "display" | "right" | "left" | "minWidth" | "position">);
|
|
201
201
|
onCell?: (rowData: RecordType, index: number) => import("react").TdHTMLAttributes<HTMLTableCellElement>;
|
|
202
|
-
onCellFooterStyles?: Omit<CSSProperties, "
|
|
202
|
+
onCellFooterStyles?: Omit<CSSProperties, "width" | "display" | "right" | "left" | "minWidth" | "position"> | ((cellValue: any, cell: import("@tanstack/react-table").Header<RecordType, unknown>) => Omit<CSSProperties, "width" | "display" | "right" | "left" | "minWidth" | "position">);
|
|
203
203
|
getValue?: (row: any, rowIndex: number) => any;
|
|
204
204
|
getCellProps?: (value: any, row: any, rowIndex: number) => import("./../../grid-component/type").CellProps;
|
|
205
205
|
headerCellProps?: import("./../../grid-component/type").CellProps;
|
|
@@ -20,7 +20,7 @@ import Pagination from "rc-master-ui/es/pagination";
|
|
|
20
20
|
import { numericFormatter, removeNumericFormat } from "react-numeric-component";
|
|
21
21
|
import { TableContext } from "./useContext";
|
|
22
22
|
import { yupResolver } from "@hookform/resolvers/yup";
|
|
23
|
-
import
|
|
23
|
+
import Toolbar from "../grid-component/GridToolbar";
|
|
24
24
|
import classNames from "classnames";
|
|
25
25
|
import { Maximize, Minimize } from "becoxy-icons";
|
|
26
26
|
import TableWrapper from "./table/TableWrapper";
|
|
@@ -625,8 +625,9 @@ const EditableCell = props => {
|
|
|
625
625
|
} : filterOption,
|
|
626
626
|
optionRender: column.editSelectSettings?.formatOptionLabel,
|
|
627
627
|
fieldNames: {
|
|
628
|
-
|
|
629
|
-
|
|
628
|
+
...fieldNames,
|
|
629
|
+
value: fieldNames?.value ?? keySelect,
|
|
630
|
+
label: fieldNames?.label ?? inputKey ?? 'label'
|
|
630
631
|
},
|
|
631
632
|
onBlur: event => {
|
|
632
633
|
if (event.inputValue && column?.editSelectSettings?.searchTextAsValue && isMulti !== true) {
|
|
@@ -105,7 +105,9 @@ const TableHeadCell = props => {
|
|
|
105
105
|
const filterValue = isEmptyOperator ? [''] : !originalColumn.typeFilter || originalColumn.typeFilter === 'Text' ? selectedKeys.length === 0 ? [''] : selectedKeys : selectedKeys;
|
|
106
106
|
header.column.setFilterValue(filterValue);
|
|
107
107
|
} else {
|
|
108
|
+
const defaultOp = getDefaultOperator(originalColumn) ?? 'contains';
|
|
108
109
|
header.column.setFilterValue(undefined);
|
|
110
|
+
header.column.setFilterOperator?.(defaultOp);
|
|
109
111
|
setSelectedKeys([]);
|
|
110
112
|
}
|
|
111
113
|
setFilterChange(true);
|
|
@@ -164,7 +166,10 @@ const TableHeadCell = props => {
|
|
|
164
166
|
column: column,
|
|
165
167
|
selectedKeys,
|
|
166
168
|
setSelectedKeys,
|
|
167
|
-
tableLocal: undefined
|
|
169
|
+
tableLocal: undefined,
|
|
170
|
+
t,
|
|
171
|
+
locale,
|
|
172
|
+
doFilter
|
|
168
173
|
})), /*#__PURE__*/React.createElement(Space, {
|
|
169
174
|
style: {
|
|
170
175
|
justifyContent: 'end',
|
|
@@ -185,9 +190,8 @@ const TableHeadCell = props => {
|
|
|
185
190
|
type: "link",
|
|
186
191
|
size: "small",
|
|
187
192
|
onClick: () => {
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
193
|
+
const defaultOp = getDefaultOperator(originalColumn) ?? 'contains';
|
|
194
|
+
header.column.setFilterOperator?.(defaultOp);
|
|
191
195
|
setSelectedKeys([]);
|
|
192
196
|
doFilter(false);
|
|
193
197
|
}
|
|
@@ -135,11 +135,11 @@ const TableHeadCell2 = props => {
|
|
|
135
135
|
|
|
136
136
|
// column.setFilterValue(!originalColumn.typeFilter || originalColumn.typeFilter === 'Text' ? (selectedKeys.length === 0 ? [''] : selectedKeys) : selectedKeys)
|
|
137
137
|
} else {
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
138
|
+
const filterCol = fieldOriginal ?? column;
|
|
139
|
+
const defaultFilterOption = defaultFilter?.find(it => it.field === originalColumn.field);
|
|
140
|
+
const defaultOp = defaultFilterOption?.operator ?? getDefaultOperator(originalColumn) ?? 'contains';
|
|
141
|
+
filterCol.setFilterValue(undefined);
|
|
142
|
+
filterCol.setFilterOperator?.(defaultOp);
|
|
143
143
|
setSelectedKeys([]);
|
|
144
144
|
}
|
|
145
145
|
setFilterChange(true);
|
|
@@ -231,9 +231,10 @@ const TableHeadCell2 = props => {
|
|
|
231
231
|
type: "link",
|
|
232
232
|
size: "small",
|
|
233
233
|
onClick: () => {
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
234
|
+
const filterCol = fieldOriginal ?? column;
|
|
235
|
+
const defaultFilterOption = defaultFilter?.find(it => it.field === originalColumn.field);
|
|
236
|
+
const defaultOp = defaultFilterOption?.operator ?? getDefaultOperator(originalColumn) ?? 'contains';
|
|
237
|
+
filterCol.setFilterOperator?.(defaultOp);
|
|
237
238
|
setSelectedKeys([]);
|
|
238
239
|
doFilter(false);
|
|
239
240
|
}
|
|
@@ -314,7 +314,7 @@ export const renderFilter = args => {
|
|
|
314
314
|
}
|
|
315
315
|
// placeholder={t ? t('Search') : `Search`}
|
|
316
316
|
,
|
|
317
|
-
placeholder: tableLocal?.search
|
|
317
|
+
placeholder: t ? t('Search') : tableLocal?.search || 'Search',
|
|
318
318
|
value: selectedKeys[0],
|
|
319
319
|
onChange: e => setSelectedKeys(e.target.value ? [e.target.value] : [])
|
|
320
320
|
// onPressEnter={() => handleSearch(selectedKeys as string[], confirm)}
|
|
@@ -108,7 +108,7 @@ export const ColumnsGroup = props => {
|
|
|
108
108
|
}
|
|
109
109
|
}, /*#__PURE__*/React.createElement("p", {
|
|
110
110
|
className: 'fw-bold'
|
|
111
|
-
},
|
|
111
|
+
}, t ? t('Group data by column') : 'Group data by column'), /*#__PURE__*/React.createElement("div", {
|
|
112
112
|
className: 'mb-1',
|
|
113
113
|
style: {
|
|
114
114
|
marginBottom: '1rem'
|
|
@@ -225,6 +225,6 @@ export const ColumnsGroup = props => {
|
|
|
225
225
|
cursor: 'pointer'
|
|
226
226
|
},
|
|
227
227
|
"data-tooltip-id": `${id}-tooltip-content`,
|
|
228
|
-
"data-tooltip-content": t ? t('Group data') : '
|
|
228
|
+
"data-tooltip-content": t ? t('Group data') : 'Group data'
|
|
229
229
|
})));
|
|
230
230
|
};
|
|
@@ -62,7 +62,9 @@ const TableBodyRow = ({
|
|
|
62
62
|
onMouseLeave: handleMouseLeave,
|
|
63
63
|
style: {
|
|
64
64
|
...rowStyles,
|
|
65
|
-
|
|
65
|
+
...(rowheight !== undefined && rowheight !== null ? {
|
|
66
|
+
height: rowheight
|
|
67
|
+
} : {})
|
|
66
68
|
}
|
|
67
69
|
}, getRowFocusHandlers(row.original, rowFocus), {
|
|
68
70
|
onDoubleClick: e => {
|
|
@@ -101,7 +101,13 @@ const TableHeadCell = props => {
|
|
|
101
101
|
header.column.setFilterValue(nextFilterValue);
|
|
102
102
|
header.column.setFilterOperator?.(currentFilter.ope);
|
|
103
103
|
} else {
|
|
104
|
+
const defaultOp = getDefaultOperator(column?.meta ?? {}) ?? 'contains';
|
|
104
105
|
header.column.setFilterValue(undefined);
|
|
106
|
+
header.column.setFilterOperator?.(defaultOp);
|
|
107
|
+
setCurrentFilter(prev => ({
|
|
108
|
+
...prev,
|
|
109
|
+
ope: defaultOp
|
|
110
|
+
}));
|
|
105
111
|
setSelectedKeys([]);
|
|
106
112
|
}
|
|
107
113
|
setFilterChange(true);
|
|
@@ -120,6 +126,17 @@ const TableHeadCell = props => {
|
|
|
120
126
|
// onOpenChange: onVisibleChange,
|
|
121
127
|
|
|
122
128
|
destroyPopupOnHide: true,
|
|
129
|
+
onOpenChange: open => {
|
|
130
|
+
if (open) {
|
|
131
|
+
const currentOp = header.column.getFilterOperator() ?? getDefaultOperator(column?.meta ?? {});
|
|
132
|
+
const currentVal = header.column.getFilterValue() ?? [];
|
|
133
|
+
setCurrentFilter(prev => ({
|
|
134
|
+
...prev,
|
|
135
|
+
ope: currentOp
|
|
136
|
+
}));
|
|
137
|
+
setSelectedKeys(['empty', 'notempty'].includes(currentOp) ? [] : currentVal);
|
|
138
|
+
}
|
|
139
|
+
},
|
|
123
140
|
dropdownRender: () => {
|
|
124
141
|
const type = getTypeFilter(originalColumn);
|
|
125
142
|
const hideFilterInput = ['empty', 'notempty'].includes(currentFilter.ope);
|
|
@@ -164,7 +181,10 @@ const TableHeadCell = props => {
|
|
|
164
181
|
}, renderFilter({
|
|
165
182
|
column: column,
|
|
166
183
|
selectedKeys,
|
|
167
|
-
setSelectedKeys
|
|
184
|
+
setSelectedKeys,
|
|
185
|
+
t,
|
|
186
|
+
locale,
|
|
187
|
+
doFilter
|
|
168
188
|
})), /*#__PURE__*/React.createElement(Space, {
|
|
169
189
|
style: {
|
|
170
190
|
justifyContent: 'end',
|
|
@@ -183,6 +203,12 @@ const TableHeadCell = props => {
|
|
|
183
203
|
type: "link",
|
|
184
204
|
size: "small",
|
|
185
205
|
onClick: () => {
|
|
206
|
+
const defaultOp = getDefaultOperator(column?.meta ?? {}) ?? 'contains';
|
|
207
|
+
setCurrentFilter(prev => ({
|
|
208
|
+
...prev,
|
|
209
|
+
ope: defaultOp
|
|
210
|
+
}));
|
|
211
|
+
header.column.setFilterOperator?.(defaultOp);
|
|
186
212
|
setSelectedKeys([]);
|
|
187
213
|
doFilter(false);
|
|
188
214
|
}
|
|
@@ -273,7 +273,7 @@ export const renderFilter = args => {
|
|
|
273
273
|
classNames: {
|
|
274
274
|
input: 'filter-input'
|
|
275
275
|
},
|
|
276
|
-
placeholder: t ? t('Search') :
|
|
276
|
+
placeholder: t ? t('Search') : 'Search',
|
|
277
277
|
value: selectedKeys[0],
|
|
278
278
|
onChange: e => setSelectedKeys(e.target.value ? [e.target.value] : [])
|
|
279
279
|
// onPressEnter={() => handleSearch(selectedKeys as string[], confirm)}
|
|
@@ -11,4 +11,4 @@ const colorDark = '#e6e4f3e6';
|
|
|
11
11
|
export const GridStyle = styled.div.withConfig({
|
|
12
12
|
displayName: "GridStyle",
|
|
13
13
|
componentId: "es-grid-template__sc-rs980s-0"
|
|
14
|
-
})(["&.", "-grid{color:", ";font-size:12px;background-color:", ";table{table-layout:fixed;border-collapse:separate;border-spacing:0;}.", "-grid-container{border:1px solid ", "
|
|
14
|
+
})(["&.", "-grid{color:", ";font-size:12px;background-color:", ";table{table-layout:fixed;border-collapse:separate;border-spacing:0;}.", "-grid-container{border:1px solid ", ";[data-virtuoso-scroller='true']{overscroll-behavior:none;overflow-anchor:none;}.", "-grid-thead{&:has(.resizer.isResizing){.", "-grid-cell{touch-action:none;user-select:none;}}.", "-grid-cell{background-color:#ffffff;&:has(.resizer.isResizing){touch-action:none;user-select:none;}.resizer{cursor:col-resize;height:100%;position:absolute;right:0;top:0;touch-action:none;user-select:none;width:5px;}}}tbody{.", "-grid-row{font-weight:500;&.", "-grid-row-parent{.", "-grid-cell{font-weight:700;background-color:#f5f5f5;}}}}.", "-grid-tfoot{z-index:3 !important;.ui-rc-grid-footer-row{.ui-rc-grid-cell{border-top:1px solid ", ";border-bottom:1px solid ", ";font-weight:500;}}}.", "-grid-cell{padding:5px 8px;&.", "-grid-cell-fix-left-last{.", "-grid-cell-ellipsis{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:keep-all;}&::after{position:absolute;top:0;right:0;bottom:-1px;width:30px;transform:translateX(100%);transition:box-shadow 0.3s;content:'';pointer-events:none;box-shadow:inset 10px 0 8px -8px rgba(5,5,5,0.09);}}&.", "-grid-cell-fix-right-first{.", "-grid-cell-ellipsis{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:keep-all;}&::after{position:absolute;top:0;bottom:-1px;left:0;width:30px;transform:translateX(-100%);transition:box-shadow 0.3s;content:'';pointer-events:none;box-shadow:inset -10px 0 8px -8px rgba(5,5,5,0.09);}&::before{content:'';position:absolute;inset-block:0;inset-inline-start:-1px;border-inline-start:1px solid #e0e0e0;}}&.", "-grid-cell-ellipsis{.group-content{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:keep-all;}}.class-content:has(*){background:lightblue;}.class-content:not(:has(*)){background:lightgreen;}&.", "-grid-cell-text-center{text-align:center;justify-content:center;}&.", "-grid-cell-text-righ{text-align:right;justify-content:flex-end;}}.", "-grid-cell:not(:has(*)){&.", "-grid-cell-text-center{text-align:center;justify-content:center;}&.", "-grid-cell-text-right{text-align:right;justify-content:flex-end;}&.", "-grid-cell-ellipsis{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:keep-all;}}}&.", "-grid-light{.", "-grid-container{.", "-grid-thead{z-index:3 !important;background-color:", ";font-weight:600;.", "-grid-cell{font-weight:inherit;color:", ";background-color:#ffffff;border-inline-end:1px solid ", ";border-bottom:1px solid ", ";&.", "-grid-cell-text-wrap{white-space:normal;word-break:break-word;line-height:1.4;}&.ui-rc-grid-cell-ellipsis{.ui-rc-table-column-title,.", "-grid-cell-ellipsis{width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:keep-all;}}&.ui-rc-grid-cell-wrap{.ui-rc-table-column-title,.", "-grid-cell-text-wrap{white-space:normal;word-break:break-word;overflow:hidden;}}&:hover{.ui-rc-header-trigger{.ui-rc-table-column-sorter-cancel{opacity:1;}}}.", "-grid-filter-column{display:flex;justify-content:space-between;width:100%;align-items:center;position:relative;}.ui-rc-header-trigger{padding-left:6px;display:flex;align-items:center;.ui-rc-table-column-sorter-cancel{opacity:0;}}.resizer{cursor:col-resize;height:100%;position:absolute;right:0;top:0;touch-action:none;user-select:none;width:5px;}.resizer.isResizing{opacity:1;}}}.", "-grid-tbody{.", "-grid-row{background-color:", ";color:", ";}}tbody{background-color:", ";color:", ";.", "-grid-row{&.ui-rc-grid-row-selected{.", "-grid-cell{background-color:", ";}}}.", "-grid-cell{outline:none;background-color:#ffffff;border-inline-end:1px solid ", ";border-bottom:1px solid ", ";&.", "-grid-cell-text-wrap{white-space:normal;word-break:break-word;line-height:1.4;}&.ui-rc-grid-cell-selected{background-color:", " !important;}&.disable{background-color:#f0f0f0;}&.cell-editable{user-select:none;&.cell-border-top{&::after{content:'';position:absolute;top:0px;left:0;height:1px;width:100%;border-top:1px solid ", ";pointer-events:none;z-index:1;}}&.cell-border-bottom{border-bottom:1px solid ", ";}&.cell-border-left{&::before{content:'';position:absolute;top:0;left:0;height:102%;width:1px;border-left:1px solid ", ";pointer-events:none;z-index:1;}}&.cell-border-right{border-inline-end:1px solid ", ";}&.cell-paste-border-top{&::after{content:'';position:absolute;top:0px;left:0;height:1px;width:100%;border-top:1px dashed #949494;pointer-events:none;z-index:1;}&.ui-rc-grid-cell-fix-left-last{&::after{left:-100%;}}&.ui-rc-grid-cell-fix-right-first{&::after{left:100%;}}}&.cell-paste-border-bottom{border-bottom:1px dashed #949494;}&.cell-paste-border-left{&::before{content:'';position:absolute;top:0;left:0;height:102%;width:1px;border-left:1px dashed #949494;pointer-events:none;z-index:1;}}&.cell-paste-border-right{border-inline-end:1px dashed #949494;}.dragging-point{width:6px;height:6px;position:absolute;cursor:crosshair;right:0px;bottom:0px;&.hidden{display:none;}.dot-point{position:absolute;width:6px;height:6px;border-radius:0px;background-color:", ";bottom:0;right:0;}}}&.cell-editing{padding:0;&:focus-visible{outline:none;}.ant-form-item,.ant-row.ant-form-item-row,.ant-col.ant-form-item-control,.ant-form-item-control-input,.ant-form-item-control-input-content,.ant-input{height:100% !important;&:focus-visible{outline:none;}}textarea.ant-input{line-height:1.8;height:36px !important;min-height:36px !important;}input.be-cell-editing,.ant-picker,.ui-rc-select-selector,.ui-rc-table-select-selector{padding-inline:7px;}.", "-checkbox-wrapper{.", "-checkbox{background-color:red;}.", "-checkbox-input{&:focus-visible{outline:none;}}}.ant-input,.ant-picker{border-radius:0;}.ant-color-picker-trigger{height:100%;border-radius:0;.ant-color-picker-color-block{height:100%;width:100%;}}.", "-table-select-single .", "-table-select-selector,.", "-select-single .", "-select-selector,.ui-rc-table-select-selector{border-radius:0 !important;}.", "-table-select-single:not(.", "-table-select-customize-input){.", "-table-select-selector{.", "-table-select-selection-search-input{height:auto;}}}}}}.", "-grid-tfoot{.", "-grid-footer-row{border-bottom-width:1px;border-bottom-color:", ";border-bottom-style:solid;border-top-width:1px;border-top-color:", ";border-top-style:solid;background-color:#fafafa;}.", "-grid-cell{background-color:inherit;border-inline-end:1px solid ", ";}}}}&.", "-grid-dark{background-color:", ";color:", ";.", "-grid-container{border-color:", ";&::after{border-right-color:", ";}}}}"], props => props.$prefix, color, BgColor, props => props.$prefix, tableBorderColor, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, tableBorderColor, tableBorderColor, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => `${props.$theme.backgroundColor ? props.$theme.backgroundColor : BgColor}`, props => props.$prefix, props => `${props.$theme.color ? props.$theme.color : color}`, tableBorderColor, tableBorderColor, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => `${props.$theme.backgroundColor ? props.$theme.backgroundColor : BgColor}`, props => `${props.$theme.color ? props.$theme.color : color}`, props => `${props.$theme.backgroundColor ? props.$theme.backgroundColor : BgColor}`, props => `${props.$theme.color ? props.$theme.color : color}`, props => props.$prefix, props => props.$prefix, rowSelectedBg, props => props.$prefix, tableBorderColor, tableBorderColor, props => props.$prefix, cellSelectedBg, borderSelectedColor, borderSelectedColor, borderSelectedColor, borderSelectedColor, borderSelectedColor, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, tableBorderColor, tableBorderColor, props => props.$prefix, tableBorderColor, props => props.$prefix, BgColorDark, colorDark, props => props.$prefix, tableBorderColorDark, tableBorderColorDark);
|
|
@@ -133,9 +133,12 @@ const TableWrapper = props => {
|
|
|
133
133
|
}, /*#__PURE__*/React.createElement(TableVirtuoso, _extends({
|
|
134
134
|
ref: virtuosoRef,
|
|
135
135
|
data: table.getRowModel().rows,
|
|
136
|
-
totalCount: rows.length
|
|
136
|
+
totalCount: rows.length,
|
|
137
|
+
computeItemKey: (_index, row) => row?.id ?? _index,
|
|
138
|
+
style: {
|
|
139
|
+
height: '100%'
|
|
140
|
+
}
|
|
137
141
|
}, onVisibleRowsChange ? {
|
|
138
|
-
computeItemKey: (_index, row) => row.id,
|
|
139
142
|
rangeChanged: ({
|
|
140
143
|
startIndex,
|
|
141
144
|
endIndex
|
|
@@ -189,7 +192,6 @@ const TableWrapper = props => {
|
|
|
189
192
|
...rest
|
|
190
193
|
} = props;
|
|
191
194
|
const index = props["data-index"];
|
|
192
|
-
const rowheight = props["data-known-size"];
|
|
193
195
|
const row = rows[index];
|
|
194
196
|
const isEditing = row.id === editingKey;
|
|
195
197
|
const isRowEditable = rowEditable ? rowEditable(row.original) : true;
|
|
@@ -199,7 +201,7 @@ const TableWrapper = props => {
|
|
|
199
201
|
scrollToRow: scrollToRow,
|
|
200
202
|
table: table,
|
|
201
203
|
commandClick: commandClick,
|
|
202
|
-
rowheight: editAble ? 37 :
|
|
204
|
+
rowheight: editAble ? 37 : undefined,
|
|
203
205
|
isEditing: isEditing,
|
|
204
206
|
isRowEditable: isRowEditable,
|
|
205
207
|
editAble: editAble,
|
package/lib/ali-table/Grid.js
CHANGED
|
@@ -11,7 +11,7 @@ var _locale = require("rc-master-ui/es/locale");
|
|
|
11
11
|
var _react = _interopRequireWildcard(require("react"));
|
|
12
12
|
var _reactTooltip = require("react-tooltip");
|
|
13
13
|
require("./base-table/styles.scss");
|
|
14
|
-
var
|
|
14
|
+
var _GridToolbar = _interopRequireDefault(require("../grid-component/GridToolbar"));
|
|
15
15
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
16
16
|
var _pagination = _interopRequireDefault(require("rc-master-ui/es/pagination"));
|
|
17
17
|
var _becoxyIcons = require("becoxy-icons");
|
|
@@ -246,7 +246,7 @@ const Grid = /*#__PURE__*/_react.default.forwardRef((props, ref) => {
|
|
|
246
246
|
className: (0, _classnames.default)('ui-rc-toolbar-bottom border-0', {
|
|
247
247
|
'ui-rc-toolbar-bottom_border-bottom': !pagination || infiniteScroll
|
|
248
248
|
})
|
|
249
|
-
}, /*#__PURE__*/_react.default.createElement(
|
|
249
|
+
}, /*#__PURE__*/_react.default.createElement(_GridToolbar.default, {
|
|
250
250
|
style: {
|
|
251
251
|
width: '100%'
|
|
252
252
|
},
|
|
@@ -276,7 +276,7 @@ const Grid = /*#__PURE__*/_react.default.forwardRef((props, ref) => {
|
|
|
276
276
|
flex: 1,
|
|
277
277
|
overflow: 'hidden'
|
|
278
278
|
}
|
|
279
|
-
}, /*#__PURE__*/_react.default.createElement(
|
|
279
|
+
}, /*#__PURE__*/_react.default.createElement(_GridToolbar.default, {
|
|
280
280
|
items: toolbarItemTopRight,
|
|
281
281
|
mode: toolbarMode
|
|
282
282
|
})), fullScreen !== false && (isFullScreen ? /*#__PURE__*/_react.default.createElement(_becoxyIcons.Minimize, {
|
|
@@ -394,7 +394,7 @@ const Grid = /*#__PURE__*/_react.default.forwardRef((props, ref) => {
|
|
|
394
394
|
className: (0, _classnames.default)('ui-rc-toolbar-bottom', {
|
|
395
395
|
'ui-rc-toolbar-bottom_border-bottom': !pagination || infiniteScroll
|
|
396
396
|
})
|
|
397
|
-
}, /*#__PURE__*/_react.default.createElement(
|
|
397
|
+
}, /*#__PURE__*/_react.default.createElement(_GridToolbar.default, {
|
|
398
398
|
style: {
|
|
399
399
|
width: '100%'
|
|
400
400
|
},
|
|
@@ -633,8 +633,9 @@ const EditCell = props => {
|
|
|
633
633
|
} : filterOption,
|
|
634
634
|
optionRender: column.editSelectSettings?.formatOptionLabel,
|
|
635
635
|
fieldNames: {
|
|
636
|
-
|
|
637
|
-
|
|
636
|
+
...fieldNames,
|
|
637
|
+
value: fieldNames?.value ?? keySelect,
|
|
638
|
+
label: fieldNames?.label ?? inputKey ?? 'label'
|
|
638
639
|
},
|
|
639
640
|
onBlur: event => {
|
|
640
641
|
if (event.inputValue && column?.editSelectSettings?.searchTextAsValue && isMulti !== true) {
|
|
@@ -629,8 +629,9 @@ const HeaderEditCell = props => {
|
|
|
629
629
|
} : filterOption,
|
|
630
630
|
optionRender: column.editSelectSettings?.formatOptionLabel,
|
|
631
631
|
fieldNames: {
|
|
632
|
-
|
|
633
|
-
|
|
632
|
+
...fieldNames,
|
|
633
|
+
value: fieldNames?.value ?? keySelect,
|
|
634
|
+
label: fieldNames?.label ?? inputKey ?? 'label'
|
|
634
635
|
},
|
|
635
636
|
onBlur: event => {
|
|
636
637
|
if (event.inputValue && column?.editSelectSettings?.searchTextAsValue && isMulti !== true) {
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.default = GridToolbar;
|
|
8
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
9
|
+
var React = _interopRequireWildcard(require("react"));
|
|
10
|
+
var _rcMasterUi = require("rc-master-ui");
|
|
11
|
+
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); }
|
|
12
|
+
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; }
|
|
13
|
+
function GridToolbar({
|
|
14
|
+
items,
|
|
15
|
+
...props
|
|
16
|
+
}) {
|
|
17
|
+
const visibleItems = items.filter(item => item.visible !== false);
|
|
18
|
+
const layoutKey = JSON.stringify(visibleItems.map(item => [item.key ?? item.value, item.align ?? 'left']));
|
|
19
|
+
|
|
20
|
+
// rc-master-ui leaves old alignment classes on reused items when the layout changes.
|
|
21
|
+
return /*#__PURE__*/React.createElement(_rcMasterUi.Toolbar, (0, _extends2.default)({}, props, {
|
|
22
|
+
key: layoutKey,
|
|
23
|
+
items: visibleItems
|
|
24
|
+
}));
|
|
25
|
+
}
|
|
@@ -110,7 +110,7 @@ const ColumnsGroup = props => {
|
|
|
110
110
|
}
|
|
111
111
|
}, /*#__PURE__*/_react.default.createElement("p", {
|
|
112
112
|
className: 'fw-bold'
|
|
113
|
-
},
|
|
113
|
+
}, t ? t('Group data by column') : 'Group data by column'), /*#__PURE__*/_react.default.createElement("div", {
|
|
114
114
|
className: 'mb-1',
|
|
115
115
|
style: {
|
|
116
116
|
marginBottom: '1rem'
|
|
@@ -17,6 +17,7 @@ var _reactNumericComponent = require("react-numeric-component");
|
|
|
17
17
|
var _useContext = require("./useContext");
|
|
18
18
|
var _yup = require("@hookform/resolvers/yup");
|
|
19
19
|
var _rcMasterUi = require("rc-master-ui");
|
|
20
|
+
var _GridToolbar = _interopRequireDefault(require("../grid-component/GridToolbar"));
|
|
20
21
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
21
22
|
var _becoxyIcons = require("becoxy-icons");
|
|
22
23
|
var _TableWrapper = _interopRequireDefault(require("./table/TableWrapper"));
|
|
@@ -2142,7 +2143,7 @@ const TableContainerEdit = props => {
|
|
|
2142
2143
|
flex: 1,
|
|
2143
2144
|
overflow: 'hidden'
|
|
2144
2145
|
}
|
|
2145
|
-
}, /*#__PURE__*/_react.default.createElement(
|
|
2146
|
+
}, /*#__PURE__*/_react.default.createElement(_GridToolbar.default, {
|
|
2146
2147
|
items: toolbarItemsTop ?? [],
|
|
2147
2148
|
mode: 'scroll'
|
|
2148
2149
|
})), /*#__PURE__*/_react.default.createElement("div", {
|
|
@@ -2165,7 +2166,7 @@ const TableContainerEdit = props => {
|
|
|
2165
2166
|
flex: 1,
|
|
2166
2167
|
overflow: 'hidden'
|
|
2167
2168
|
}
|
|
2168
|
-
}, /*#__PURE__*/_react.default.createElement(
|
|
2169
|
+
}, /*#__PURE__*/_react.default.createElement(_GridToolbar.default, {
|
|
2169
2170
|
items: toolbarItemTopRight,
|
|
2170
2171
|
mode: 'responsive'
|
|
2171
2172
|
})), /*#__PURE__*/_react.default.createElement(_GridRefreshButton.default, {
|
|
@@ -2303,7 +2304,7 @@ const TableContainerEdit = props => {
|
|
|
2303
2304
|
// borderRight: '1px solid #e0e0e0',
|
|
2304
2305
|
// borderLeft: '1px solid #e0e0e0'
|
|
2305
2306
|
// }}
|
|
2306
|
-
}, /*#__PURE__*/_react.default.createElement(
|
|
2307
|
+
}, /*#__PURE__*/_react.default.createElement(_GridToolbar.default, {
|
|
2307
2308
|
style: {
|
|
2308
2309
|
width: '100%'
|
|
2309
2310
|
},
|
|
@@ -629,8 +629,9 @@ const EditableCell = props => {
|
|
|
629
629
|
} : filterOption,
|
|
630
630
|
optionRender: column.editSelectSettings?.formatOptionLabel,
|
|
631
631
|
fieldNames: {
|
|
632
|
-
|
|
633
|
-
|
|
632
|
+
...fieldNames,
|
|
633
|
+
value: fieldNames?.value ?? keySelect,
|
|
634
|
+
label: fieldNames?.label ?? inputKey ?? 'label'
|
|
634
635
|
},
|
|
635
636
|
onBlur: event => {
|
|
636
637
|
if (event.inputValue && column?.editSelectSettings?.searchTextAsValue && isMulti !== true) {
|
|
@@ -108,7 +108,9 @@ const TableHeadCell = props => {
|
|
|
108
108
|
if (type) {
|
|
109
109
|
header.column.setFilterValue(!originalColumn.typeFilter || originalColumn.typeFilter === 'Text' ? selectedKeys.length === 0 ? [''] : selectedKeys : selectedKeys);
|
|
110
110
|
} else {
|
|
111
|
+
const defaultOp = (0, _utils.getDefaultOperator)(originalColumn) ?? 'contains';
|
|
111
112
|
header.column.setFilterValue(undefined);
|
|
113
|
+
header.column.setFilterOperator?.(defaultOp);
|
|
112
114
|
setSelectedKeys([]);
|
|
113
115
|
}
|
|
114
116
|
setFilterChange(true);
|
|
@@ -163,9 +165,10 @@ const TableHeadCell = props => {
|
|
|
163
165
|
column: column,
|
|
164
166
|
selectedKeys,
|
|
165
167
|
setSelectedKeys,
|
|
166
|
-
tableLocal: undefined
|
|
167
|
-
|
|
168
|
-
|
|
168
|
+
tableLocal: undefined,
|
|
169
|
+
t,
|
|
170
|
+
locale,
|
|
171
|
+
doFilter
|
|
169
172
|
})), /*#__PURE__*/_react.default.createElement(_rcMasterUi.Space, {
|
|
170
173
|
style: {
|
|
171
174
|
justifyContent: 'end',
|
|
@@ -186,9 +189,8 @@ const TableHeadCell = props => {
|
|
|
186
189
|
type: "link",
|
|
187
190
|
size: "small",
|
|
188
191
|
onClick: () => {
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
+
const defaultOp = (0, _utils.getDefaultOperator)(originalColumn) ?? 'contains';
|
|
193
|
+
header.column.setFilterOperator?.(defaultOp);
|
|
192
194
|
setSelectedKeys([]);
|
|
193
195
|
doFilter(false);
|
|
194
196
|
}
|
|
@@ -109,7 +109,9 @@ const TableHeadCell2 = props => {
|
|
|
109
109
|
if (type) {
|
|
110
110
|
column.setFilterValue(!originalColumn.typeFilter || originalColumn.typeFilter === 'Text' ? selectedKeys.length === 0 ? [''] : selectedKeys : selectedKeys);
|
|
111
111
|
} else {
|
|
112
|
+
const defaultOp = (0, _utils.getDefaultOperator)(originalColumn) ?? 'contains';
|
|
112
113
|
column.setFilterValue(undefined);
|
|
114
|
+
column.setFilterOperator?.(defaultOp);
|
|
113
115
|
setSelectedKeys([]);
|
|
114
116
|
}
|
|
115
117
|
setFilterChange(true);
|
|
@@ -167,7 +169,9 @@ const TableHeadCell2 = props => {
|
|
|
167
169
|
doFilter,
|
|
168
170
|
format,
|
|
169
171
|
dataSourceFilter,
|
|
170
|
-
tableLocal
|
|
172
|
+
tableLocal,
|
|
173
|
+
t,
|
|
174
|
+
locale
|
|
171
175
|
})), /*#__PURE__*/_react.default.createElement(_rcMasterUi.Space, {
|
|
172
176
|
style: {
|
|
173
177
|
justifyContent: 'end',
|
|
@@ -188,9 +192,8 @@ const TableHeadCell2 = props => {
|
|
|
188
192
|
type: "link",
|
|
189
193
|
size: "small",
|
|
190
194
|
onClick: () => {
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
195
|
+
const defaultOp = (0, _utils.getDefaultOperator)(originalColumn) ?? 'contains';
|
|
196
|
+
column.setFilterOperator?.(defaultOp);
|
|
194
197
|
setSelectedKeys([]);
|
|
195
198
|
doFilter(false);
|
|
196
199
|
}
|
|
@@ -281,7 +281,7 @@ const renderFilter = args => {
|
|
|
281
281
|
}
|
|
282
282
|
// placeholder={t ? t('Search') : `Search`}
|
|
283
283
|
,
|
|
284
|
-
placeholder: tableLocal?.search
|
|
284
|
+
placeholder: t ? t('Search') : tableLocal?.search || 'Search',
|
|
285
285
|
value: selectedKeys[0],
|
|
286
286
|
onChange: e => setSelectedKeys(e.target.value ? [e.target.value] : [])
|
|
287
287
|
// onPressEnter={() => handleSearch(selectedKeys as string[], confirm)}
|
|
@@ -18,6 +18,7 @@ var _pagination = _interopRequireDefault(require("rc-master-ui/es/pagination"));
|
|
|
18
18
|
var _reactNumericComponent = require("react-numeric-component");
|
|
19
19
|
var _useContext = require("./useContext");
|
|
20
20
|
var _yup = require("@hookform/resolvers/yup");
|
|
21
|
+
var _GridToolbar = _interopRequireDefault(require("../grid-component/GridToolbar"));
|
|
21
22
|
var _classnames = _interopRequireDefault(require("classnames"));
|
|
22
23
|
var _becoxyIcons = require("becoxy-icons");
|
|
23
24
|
var _TableWrapper = _interopRequireDefault(require("./table/TableWrapper"));
|
|
@@ -2148,7 +2149,7 @@ const TableContainerEdit = props => {
|
|
|
2148
2149
|
className: (0, _classnames.default)('ui-rc-toolbar-bottom border-0', {
|
|
2149
2150
|
'ui-rc-toolbar-bottom_border-bottom': !pagination || infiniteScroll
|
|
2150
2151
|
})
|
|
2151
|
-
}, /*#__PURE__*/_react.default.createElement(
|
|
2152
|
+
}, /*#__PURE__*/_react.default.createElement(_GridToolbar.default, {
|
|
2152
2153
|
style: {
|
|
2153
2154
|
width: '100%'
|
|
2154
2155
|
},
|
|
@@ -2177,7 +2178,7 @@ const TableContainerEdit = props => {
|
|
|
2177
2178
|
flex: 1,
|
|
2178
2179
|
overflow: 'hidden'
|
|
2179
2180
|
}
|
|
2180
|
-
}, /*#__PURE__*/_react.default.createElement(
|
|
2181
|
+
}, /*#__PURE__*/_react.default.createElement(_GridToolbar.default, {
|
|
2181
2182
|
items: toolbarItemTopRight,
|
|
2182
2183
|
mode: toolbarMode
|
|
2183
2184
|
})), fullScreen !== false && (isFullScreen ? /*#__PURE__*/_react.default.createElement(_becoxyIcons.Minimize, {
|
|
@@ -2312,7 +2313,7 @@ const TableContainerEdit = props => {
|
|
|
2312
2313
|
className: (0, _classnames.default)('ui-rc-toolbar-bottom', {
|
|
2313
2314
|
'ui-rc-toolbar-bottom_border-bottom': !pagination || infiniteScroll
|
|
2314
2315
|
})
|
|
2315
|
-
}, /*#__PURE__*/_react.default.createElement(
|
|
2316
|
+
}, /*#__PURE__*/_react.default.createElement(_GridToolbar.default, {
|
|
2316
2317
|
style: {
|
|
2317
2318
|
width: '100%'
|
|
2318
2319
|
},
|
|
@@ -632,8 +632,9 @@ const EditableCell = props => {
|
|
|
632
632
|
} : filterOption,
|
|
633
633
|
optionRender: column.editSelectSettings?.formatOptionLabel,
|
|
634
634
|
fieldNames: {
|
|
635
|
-
|
|
636
|
-
|
|
635
|
+
...fieldNames,
|
|
636
|
+
value: fieldNames?.value ?? keySelect,
|
|
637
|
+
label: fieldNames?.label ?? inputKey ?? 'label'
|
|
637
638
|
},
|
|
638
639
|
onBlur: event => {
|
|
639
640
|
if (event.inputValue && column?.editSelectSettings?.searchTextAsValue && isMulti !== true) {
|
|
@@ -113,7 +113,9 @@ const TableHeadCell = props => {
|
|
|
113
113
|
const filterValue = isEmptyOperator ? [''] : !originalColumn.typeFilter || originalColumn.typeFilter === 'Text' ? selectedKeys.length === 0 ? [''] : selectedKeys : selectedKeys;
|
|
114
114
|
header.column.setFilterValue(filterValue);
|
|
115
115
|
} else {
|
|
116
|
+
const defaultOp = (0, _utils.getDefaultOperator)(originalColumn) ?? 'contains';
|
|
116
117
|
header.column.setFilterValue(undefined);
|
|
118
|
+
header.column.setFilterOperator?.(defaultOp);
|
|
117
119
|
setSelectedKeys([]);
|
|
118
120
|
}
|
|
119
121
|
setFilterChange(true);
|
|
@@ -172,7 +174,10 @@ const TableHeadCell = props => {
|
|
|
172
174
|
column: column,
|
|
173
175
|
selectedKeys,
|
|
174
176
|
setSelectedKeys,
|
|
175
|
-
tableLocal: undefined
|
|
177
|
+
tableLocal: undefined,
|
|
178
|
+
t,
|
|
179
|
+
locale,
|
|
180
|
+
doFilter
|
|
176
181
|
})), /*#__PURE__*/_react.default.createElement(_rcMasterUi.Space, {
|
|
177
182
|
style: {
|
|
178
183
|
justifyContent: 'end',
|
|
@@ -193,9 +198,8 @@ const TableHeadCell = props => {
|
|
|
193
198
|
type: "link",
|
|
194
199
|
size: "small",
|
|
195
200
|
onClick: () => {
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
201
|
+
const defaultOp = (0, _utils.getDefaultOperator)(originalColumn) ?? 'contains';
|
|
202
|
+
header.column.setFilterOperator?.(defaultOp);
|
|
199
203
|
setSelectedKeys([]);
|
|
200
204
|
doFilter(false);
|
|
201
205
|
}
|
|
@@ -143,11 +143,11 @@ const TableHeadCell2 = props => {
|
|
|
143
143
|
|
|
144
144
|
// column.setFilterValue(!originalColumn.typeFilter || originalColumn.typeFilter === 'Text' ? (selectedKeys.length === 0 ? [''] : selectedKeys) : selectedKeys)
|
|
145
145
|
} else {
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
146
|
+
const filterCol = fieldOriginal ?? column;
|
|
147
|
+
const defaultFilterOption = defaultFilter?.find(it => it.field === originalColumn.field);
|
|
148
|
+
const defaultOp = defaultFilterOption?.operator ?? (0, _utils.getDefaultOperator)(originalColumn) ?? 'contains';
|
|
149
|
+
filterCol.setFilterValue(undefined);
|
|
150
|
+
filterCol.setFilterOperator?.(defaultOp);
|
|
151
151
|
setSelectedKeys([]);
|
|
152
152
|
}
|
|
153
153
|
setFilterChange(true);
|
|
@@ -239,9 +239,10 @@ const TableHeadCell2 = props => {
|
|
|
239
239
|
type: "link",
|
|
240
240
|
size: "small",
|
|
241
241
|
onClick: () => {
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
242
|
+
const filterCol = fieldOriginal ?? column;
|
|
243
|
+
const defaultFilterOption = defaultFilter?.find(it => it.field === originalColumn.field);
|
|
244
|
+
const defaultOp = defaultFilterOption?.operator ?? (0, _utils.getDefaultOperator)(originalColumn) ?? 'contains';
|
|
245
|
+
filterCol.setFilterOperator?.(defaultOp);
|
|
245
246
|
setSelectedKeys([]);
|
|
246
247
|
doFilter(false);
|
|
247
248
|
}
|
|
@@ -323,7 +323,7 @@ const renderFilter = args => {
|
|
|
323
323
|
}
|
|
324
324
|
// placeholder={t ? t('Search') : `Search`}
|
|
325
325
|
,
|
|
326
|
-
placeholder: tableLocal?.search
|
|
326
|
+
placeholder: t ? t('Search') : tableLocal?.search || 'Search',
|
|
327
327
|
value: selectedKeys[0],
|
|
328
328
|
onChange: e => setSelectedKeys(e.target.value ? [e.target.value] : [])
|
|
329
329
|
// onPressEnter={() => handleSearch(selectedKeys as string[], confirm)}
|
|
@@ -117,7 +117,7 @@ const ColumnsGroup = props => {
|
|
|
117
117
|
}
|
|
118
118
|
}, /*#__PURE__*/_react.default.createElement("p", {
|
|
119
119
|
className: 'fw-bold'
|
|
120
|
-
},
|
|
120
|
+
}, t ? t('Group data by column') : 'Group data by column'), /*#__PURE__*/_react.default.createElement("div", {
|
|
121
121
|
className: 'mb-1',
|
|
122
122
|
style: {
|
|
123
123
|
marginBottom: '1rem'
|
|
@@ -234,7 +234,7 @@ const ColumnsGroup = props => {
|
|
|
234
234
|
cursor: 'pointer'
|
|
235
235
|
},
|
|
236
236
|
"data-tooltip-id": `${id}-tooltip-content`,
|
|
237
|
-
"data-tooltip-content": t ? t('Group data') : '
|
|
237
|
+
"data-tooltip-content": t ? t('Group data') : 'Group data'
|
|
238
238
|
})));
|
|
239
239
|
};
|
|
240
240
|
exports.ColumnsGroup = ColumnsGroup;
|
|
@@ -69,7 +69,9 @@ const TableBodyRow = ({
|
|
|
69
69
|
onMouseLeave: handleMouseLeave,
|
|
70
70
|
style: {
|
|
71
71
|
...rowStyles,
|
|
72
|
-
|
|
72
|
+
...(rowheight !== undefined && rowheight !== null ? {
|
|
73
|
+
height: rowheight
|
|
74
|
+
} : {})
|
|
73
75
|
}
|
|
74
76
|
}, (0, _rowFocus.getRowFocusHandlers)(row.original, rowFocus), {
|
|
75
77
|
onDoubleClick: e => {
|
|
@@ -109,7 +109,13 @@ const TableHeadCell = props => {
|
|
|
109
109
|
header.column.setFilterValue(nextFilterValue);
|
|
110
110
|
header.column.setFilterOperator?.(currentFilter.ope);
|
|
111
111
|
} else {
|
|
112
|
+
const defaultOp = (0, _utils.getDefaultOperator)(column?.meta ?? {}) ?? 'contains';
|
|
112
113
|
header.column.setFilterValue(undefined);
|
|
114
|
+
header.column.setFilterOperator?.(defaultOp);
|
|
115
|
+
setCurrentFilter(prev => ({
|
|
116
|
+
...prev,
|
|
117
|
+
ope: defaultOp
|
|
118
|
+
}));
|
|
113
119
|
setSelectedKeys([]);
|
|
114
120
|
}
|
|
115
121
|
setFilterChange(true);
|
|
@@ -128,6 +134,17 @@ const TableHeadCell = props => {
|
|
|
128
134
|
// onOpenChange: onVisibleChange,
|
|
129
135
|
|
|
130
136
|
destroyPopupOnHide: true,
|
|
137
|
+
onOpenChange: open => {
|
|
138
|
+
if (open) {
|
|
139
|
+
const currentOp = header.column.getFilterOperator() ?? (0, _utils.getDefaultOperator)(column?.meta ?? {});
|
|
140
|
+
const currentVal = header.column.getFilterValue() ?? [];
|
|
141
|
+
setCurrentFilter(prev => ({
|
|
142
|
+
...prev,
|
|
143
|
+
ope: currentOp
|
|
144
|
+
}));
|
|
145
|
+
setSelectedKeys(['empty', 'notempty'].includes(currentOp) ? [] : currentVal);
|
|
146
|
+
}
|
|
147
|
+
},
|
|
131
148
|
dropdownRender: () => {
|
|
132
149
|
const type = (0, _utils.getTypeFilter)(originalColumn);
|
|
133
150
|
const hideFilterInput = ['empty', 'notempty'].includes(currentFilter.ope);
|
|
@@ -172,7 +189,10 @@ const TableHeadCell = props => {
|
|
|
172
189
|
}, (0, _renderFilter.renderFilter)({
|
|
173
190
|
column: column,
|
|
174
191
|
selectedKeys,
|
|
175
|
-
setSelectedKeys
|
|
192
|
+
setSelectedKeys,
|
|
193
|
+
t,
|
|
194
|
+
locale,
|
|
195
|
+
doFilter
|
|
176
196
|
})), /*#__PURE__*/_react.default.createElement(_rcMasterUi.Space, {
|
|
177
197
|
style: {
|
|
178
198
|
justifyContent: 'end',
|
|
@@ -191,6 +211,12 @@ const TableHeadCell = props => {
|
|
|
191
211
|
type: "link",
|
|
192
212
|
size: "small",
|
|
193
213
|
onClick: () => {
|
|
214
|
+
const defaultOp = (0, _utils.getDefaultOperator)(column?.meta ?? {}) ?? 'contains';
|
|
215
|
+
setCurrentFilter(prev => ({
|
|
216
|
+
...prev,
|
|
217
|
+
ope: defaultOp
|
|
218
|
+
}));
|
|
219
|
+
header.column.setFilterOperator?.(defaultOp);
|
|
194
220
|
setSelectedKeys([]);
|
|
195
221
|
doFilter(false);
|
|
196
222
|
}
|
|
@@ -282,7 +282,7 @@ const renderFilter = args => {
|
|
|
282
282
|
classNames: {
|
|
283
283
|
input: 'filter-input'
|
|
284
284
|
},
|
|
285
|
-
placeholder: t ? t('Search') :
|
|
285
|
+
placeholder: t ? t('Search') : 'Search',
|
|
286
286
|
value: selectedKeys[0],
|
|
287
287
|
onChange: e => setSelectedKeys(e.target.value ? [e.target.value] : [])
|
|
288
288
|
// onPressEnter={() => handleSearch(selectedKeys as string[], confirm)}
|
|
@@ -18,4 +18,4 @@ const colorDark = '#e6e4f3e6';
|
|
|
18
18
|
const GridStyle = exports.GridStyle = _styledComponents.default.div.withConfig({
|
|
19
19
|
displayName: "GridStyle",
|
|
20
20
|
componentId: "es-grid-template__sc-rs980s-0"
|
|
21
|
-
})(["&.", "-grid{color:", ";font-size:12px;background-color:", ";table{table-layout:fixed;border-collapse:separate;border-spacing:0;}.", "-grid-container{border:1px solid ", "
|
|
21
|
+
})(["&.", "-grid{color:", ";font-size:12px;background-color:", ";table{table-layout:fixed;border-collapse:separate;border-spacing:0;}.", "-grid-container{border:1px solid ", ";[data-virtuoso-scroller='true']{overscroll-behavior:none;overflow-anchor:none;}.", "-grid-thead{&:has(.resizer.isResizing){.", "-grid-cell{touch-action:none;user-select:none;}}.", "-grid-cell{background-color:#ffffff;&:has(.resizer.isResizing){touch-action:none;user-select:none;}.resizer{cursor:col-resize;height:100%;position:absolute;right:0;top:0;touch-action:none;user-select:none;width:5px;}}}tbody{.", "-grid-row{font-weight:500;&.", "-grid-row-parent{.", "-grid-cell{font-weight:700;background-color:#f5f5f5;}}}}.", "-grid-tfoot{z-index:3 !important;.ui-rc-grid-footer-row{.ui-rc-grid-cell{border-top:1px solid ", ";border-bottom:1px solid ", ";font-weight:500;}}}.", "-grid-cell{padding:5px 8px;&.", "-grid-cell-fix-left-last{.", "-grid-cell-ellipsis{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:keep-all;}&::after{position:absolute;top:0;right:0;bottom:-1px;width:30px;transform:translateX(100%);transition:box-shadow 0.3s;content:'';pointer-events:none;box-shadow:inset 10px 0 8px -8px rgba(5,5,5,0.09);}}&.", "-grid-cell-fix-right-first{.", "-grid-cell-ellipsis{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:keep-all;}&::after{position:absolute;top:0;bottom:-1px;left:0;width:30px;transform:translateX(-100%);transition:box-shadow 0.3s;content:'';pointer-events:none;box-shadow:inset -10px 0 8px -8px rgba(5,5,5,0.09);}&::before{content:'';position:absolute;inset-block:0;inset-inline-start:-1px;border-inline-start:1px solid #e0e0e0;}}&.", "-grid-cell-ellipsis{.group-content{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:keep-all;}}.class-content:has(*){background:lightblue;}.class-content:not(:has(*)){background:lightgreen;}&.", "-grid-cell-text-center{text-align:center;justify-content:center;}&.", "-grid-cell-text-righ{text-align:right;justify-content:flex-end;}}.", "-grid-cell:not(:has(*)){&.", "-grid-cell-text-center{text-align:center;justify-content:center;}&.", "-grid-cell-text-right{text-align:right;justify-content:flex-end;}&.", "-grid-cell-ellipsis{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:keep-all;}}}&.", "-grid-light{.", "-grid-container{.", "-grid-thead{z-index:3 !important;background-color:", ";font-weight:600;.", "-grid-cell{font-weight:inherit;color:", ";background-color:#ffffff;border-inline-end:1px solid ", ";border-bottom:1px solid ", ";&.", "-grid-cell-text-wrap{white-space:normal;word-break:break-word;line-height:1.4;}&.ui-rc-grid-cell-ellipsis{.ui-rc-table-column-title,.", "-grid-cell-ellipsis{width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;word-break:keep-all;}}&.ui-rc-grid-cell-wrap{.ui-rc-table-column-title,.", "-grid-cell-text-wrap{white-space:normal;word-break:break-word;overflow:hidden;}}&:hover{.ui-rc-header-trigger{.ui-rc-table-column-sorter-cancel{opacity:1;}}}.", "-grid-filter-column{display:flex;justify-content:space-between;width:100%;align-items:center;position:relative;}.ui-rc-header-trigger{padding-left:6px;display:flex;align-items:center;.ui-rc-table-column-sorter-cancel{opacity:0;}}.resizer{cursor:col-resize;height:100%;position:absolute;right:0;top:0;touch-action:none;user-select:none;width:5px;}.resizer.isResizing{opacity:1;}}}.", "-grid-tbody{.", "-grid-row{background-color:", ";color:", ";}}tbody{background-color:", ";color:", ";.", "-grid-row{&.ui-rc-grid-row-selected{.", "-grid-cell{background-color:", ";}}}.", "-grid-cell{outline:none;background-color:#ffffff;border-inline-end:1px solid ", ";border-bottom:1px solid ", ";&.", "-grid-cell-text-wrap{white-space:normal;word-break:break-word;line-height:1.4;}&.ui-rc-grid-cell-selected{background-color:", " !important;}&.disable{background-color:#f0f0f0;}&.cell-editable{user-select:none;&.cell-border-top{&::after{content:'';position:absolute;top:0px;left:0;height:1px;width:100%;border-top:1px solid ", ";pointer-events:none;z-index:1;}}&.cell-border-bottom{border-bottom:1px solid ", ";}&.cell-border-left{&::before{content:'';position:absolute;top:0;left:0;height:102%;width:1px;border-left:1px solid ", ";pointer-events:none;z-index:1;}}&.cell-border-right{border-inline-end:1px solid ", ";}&.cell-paste-border-top{&::after{content:'';position:absolute;top:0px;left:0;height:1px;width:100%;border-top:1px dashed #949494;pointer-events:none;z-index:1;}&.ui-rc-grid-cell-fix-left-last{&::after{left:-100%;}}&.ui-rc-grid-cell-fix-right-first{&::after{left:100%;}}}&.cell-paste-border-bottom{border-bottom:1px dashed #949494;}&.cell-paste-border-left{&::before{content:'';position:absolute;top:0;left:0;height:102%;width:1px;border-left:1px dashed #949494;pointer-events:none;z-index:1;}}&.cell-paste-border-right{border-inline-end:1px dashed #949494;}.dragging-point{width:6px;height:6px;position:absolute;cursor:crosshair;right:0px;bottom:0px;&.hidden{display:none;}.dot-point{position:absolute;width:6px;height:6px;border-radius:0px;background-color:", ";bottom:0;right:0;}}}&.cell-editing{padding:0;&:focus-visible{outline:none;}.ant-form-item,.ant-row.ant-form-item-row,.ant-col.ant-form-item-control,.ant-form-item-control-input,.ant-form-item-control-input-content,.ant-input{height:100% !important;&:focus-visible{outline:none;}}textarea.ant-input{line-height:1.8;height:36px !important;min-height:36px !important;}input.be-cell-editing,.ant-picker,.ui-rc-select-selector,.ui-rc-table-select-selector{padding-inline:7px;}.", "-checkbox-wrapper{.", "-checkbox{background-color:red;}.", "-checkbox-input{&:focus-visible{outline:none;}}}.ant-input,.ant-picker{border-radius:0;}.ant-color-picker-trigger{height:100%;border-radius:0;.ant-color-picker-color-block{height:100%;width:100%;}}.", "-table-select-single .", "-table-select-selector,.", "-select-single .", "-select-selector,.ui-rc-table-select-selector{border-radius:0 !important;}.", "-table-select-single:not(.", "-table-select-customize-input){.", "-table-select-selector{.", "-table-select-selection-search-input{height:auto;}}}}}}.", "-grid-tfoot{.", "-grid-footer-row{border-bottom-width:1px;border-bottom-color:", ";border-bottom-style:solid;border-top-width:1px;border-top-color:", ";border-top-style:solid;background-color:#fafafa;}.", "-grid-cell{background-color:inherit;border-inline-end:1px solid ", ";}}}}&.", "-grid-dark{background-color:", ";color:", ";.", "-grid-container{border-color:", ";&::after{border-right-color:", ";}}}}"], props => props.$prefix, color, BgColor, props => props.$prefix, tableBorderColor, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, tableBorderColor, tableBorderColor, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => `${props.$theme.backgroundColor ? props.$theme.backgroundColor : BgColor}`, props => props.$prefix, props => `${props.$theme.color ? props.$theme.color : color}`, tableBorderColor, tableBorderColor, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => `${props.$theme.backgroundColor ? props.$theme.backgroundColor : BgColor}`, props => `${props.$theme.color ? props.$theme.color : color}`, props => `${props.$theme.backgroundColor ? props.$theme.backgroundColor : BgColor}`, props => `${props.$theme.color ? props.$theme.color : color}`, props => props.$prefix, props => props.$prefix, rowSelectedBg, props => props.$prefix, tableBorderColor, tableBorderColor, props => props.$prefix, cellSelectedBg, borderSelectedColor, borderSelectedColor, borderSelectedColor, borderSelectedColor, borderSelectedColor, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, props => props.$prefix, tableBorderColor, tableBorderColor, props => props.$prefix, tableBorderColor, props => props.$prefix, BgColorDark, colorDark, props => props.$prefix, tableBorderColorDark, tableBorderColorDark);
|
|
@@ -144,9 +144,12 @@ const TableWrapper = props => {
|
|
|
144
144
|
}, /*#__PURE__*/_react.default.createElement(_reactVirtuoso.TableVirtuoso, (0, _extends2.default)({
|
|
145
145
|
ref: virtuosoRef,
|
|
146
146
|
data: table.getRowModel().rows,
|
|
147
|
-
totalCount: rows.length
|
|
147
|
+
totalCount: rows.length,
|
|
148
|
+
computeItemKey: (_index, row) => row?.id ?? _index,
|
|
149
|
+
style: {
|
|
150
|
+
height: '100%'
|
|
151
|
+
}
|
|
148
152
|
}, onVisibleRowsChange ? {
|
|
149
|
-
computeItemKey: (_index, row) => row.id,
|
|
150
153
|
rangeChanged: ({
|
|
151
154
|
startIndex,
|
|
152
155
|
endIndex
|
|
@@ -200,7 +203,6 @@ const TableWrapper = props => {
|
|
|
200
203
|
...rest
|
|
201
204
|
} = props;
|
|
202
205
|
const index = props["data-index"];
|
|
203
|
-
const rowheight = props["data-known-size"];
|
|
204
206
|
const row = rows[index];
|
|
205
207
|
const isEditing = row.id === editingKey;
|
|
206
208
|
const isRowEditable = rowEditable ? rowEditable(row.original) : true;
|
|
@@ -210,7 +212,7 @@ const TableWrapper = props => {
|
|
|
210
212
|
scrollToRow: scrollToRow,
|
|
211
213
|
table: table,
|
|
212
214
|
commandClick: commandClick,
|
|
213
|
-
rowheight: editAble ? 37 :
|
|
215
|
+
rowheight: editAble ? 37 : undefined,
|
|
214
216
|
isEditing: isEditing,
|
|
215
217
|
isRowEditable: isRowEditable,
|
|
216
218
|
editAble: editAble,
|