react-table-edit 1.4.28 → 1.4.30
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/component/table-view/index.d.ts +1 -0
- package/dist/component/type/index.d.ts +4 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.js +50 -23
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +50 -23
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -18,6 +18,7 @@ type TableViewProps = {
|
|
|
18
18
|
searchSetting?: IFTableEditSearchSetting;
|
|
19
19
|
columnsAggregate?: IColumnsAgg[];
|
|
20
20
|
selectedItem?: any;
|
|
21
|
+
isVirtualList?: boolean;
|
|
21
22
|
setSelectedItem?: Dispatch<SetStateAction<any>>;
|
|
22
23
|
setColumns?: (columns: IColumnTable[]) => void;
|
|
23
24
|
commandClick?: (data: any) => void;
|
|
@@ -120,6 +120,8 @@ export type ISettingNumericElement = {
|
|
|
120
120
|
export type IColumnTable = {
|
|
121
121
|
/** Tên thuộc tính */
|
|
122
122
|
field: string;
|
|
123
|
+
/** Tên thuộc tính lọc*/
|
|
124
|
+
fieldFilter?: string;
|
|
123
125
|
/** Tiêu đề hiển thị ở header */
|
|
124
126
|
headerText?: string;
|
|
125
127
|
/** Khóa chính */
|
|
@@ -277,6 +279,8 @@ export type IFCurrentPageConfig = {
|
|
|
277
279
|
export type IHeaderColumnTable = {
|
|
278
280
|
/** Tên thuộc tính */
|
|
279
281
|
field: string;
|
|
282
|
+
/** Tên thuộc tính lọc*/
|
|
283
|
+
fieldFilter?: string;
|
|
280
284
|
/** Tiêu đề header */
|
|
281
285
|
headerText?: string;
|
|
282
286
|
/** Chiều rộng */
|
package/dist/index.d.ts
CHANGED
|
@@ -124,6 +124,8 @@ type ISettingNumericElement = {
|
|
|
124
124
|
type IColumnTable = {
|
|
125
125
|
/** Tên thuộc tính */
|
|
126
126
|
field: string;
|
|
127
|
+
/** Tên thuộc tính lọc*/
|
|
128
|
+
fieldFilter?: string;
|
|
127
129
|
/** Tiêu đề hiển thị ở header */
|
|
128
130
|
headerText?: string;
|
|
129
131
|
/** Khóa chính */
|
|
@@ -281,6 +283,8 @@ type IFCurrentPageConfig = {
|
|
|
281
283
|
type IHeaderColumnTable = {
|
|
282
284
|
/** Tên thuộc tính */
|
|
283
285
|
field: string;
|
|
286
|
+
/** Tên thuộc tính lọc*/
|
|
287
|
+
fieldFilter?: string;
|
|
284
288
|
/** Tiêu đề header */
|
|
285
289
|
headerText?: string;
|
|
286
290
|
/** Chiều rộng */
|
|
@@ -709,6 +713,7 @@ type TableViewProps = {
|
|
|
709
713
|
searchSetting?: IFTableEditSearchSetting;
|
|
710
714
|
columnsAggregate?: IColumnsAgg[];
|
|
711
715
|
selectedItem?: any;
|
|
716
|
+
isVirtualList?: boolean;
|
|
712
717
|
setSelectedItem?: Dispatch<SetStateAction<any>>;
|
|
713
718
|
setColumns?: (columns: IColumnTable[]) => void;
|
|
714
719
|
commandClick?: (data: any) => void;
|
package/dist/index.js
CHANGED
|
@@ -41906,6 +41906,7 @@ const RenderFilterElement$1 = ({ filter, optionsFilter, formatSetting, filterBy,
|
|
|
41906
41906
|
const { t } = reactI18next.useTranslation();
|
|
41907
41907
|
const [operator, setOperator] = React$5.useState(filter?.ope ?? ((!column.filterType && column.type === 'numeric') || column.filterType === 'select' ? 'equal' : 'contains'));
|
|
41908
41908
|
const [valueFilter, setValueFilter] = React$5.useState(filter?.value ?? '');
|
|
41909
|
+
const fieldFilter = column.fieldFilter ?? column.field;
|
|
41909
41910
|
const RenderStringFilter = () => {
|
|
41910
41911
|
const options = [
|
|
41911
41912
|
{ label: 'Bắt đầu bởi', value: 'startswith' },
|
|
@@ -41949,7 +41950,7 @@ const RenderFilterElement$1 = ({ filter, optionsFilter, formatSetting, filterBy,
|
|
|
41949
41950
|
} })] }));
|
|
41950
41951
|
};
|
|
41951
41952
|
const RenderSelectFilter = () => {
|
|
41952
|
-
return (jsxRuntime.jsx("div", { className: 'mb-1', children: jsxRuntime.jsx(SelectTable, { value: optionsFilter ? optionsFilter[
|
|
41953
|
+
return (jsxRuntime.jsx("div", { className: 'mb-1', children: jsxRuntime.jsx(SelectTable, { value: optionsFilter ? optionsFilter[fieldFilter]?.find((x) => x.value === valueFilter) : undefined, options: (optionsFilter && optionsFilter[fieldFilter]) ?? [], isClearable: true, onChange: (val) => {
|
|
41953
41954
|
setValueFilter(val?.value);
|
|
41954
41955
|
}, placeholder: t('Select') }) }));
|
|
41955
41956
|
};
|
|
@@ -41959,7 +41960,7 @@ const RenderFilterElement$1 = ({ filter, optionsFilter, formatSetting, filterBy,
|
|
|
41959
41960
|
filter.value = valueFilter ?? '';
|
|
41960
41961
|
}
|
|
41961
41962
|
else {
|
|
41962
|
-
filterBy.push({ key:
|
|
41963
|
+
filterBy.push({ key: fieldFilter, ope: operator, value: valueFilter ?? '' });
|
|
41963
41964
|
}
|
|
41964
41965
|
changeFilter([...filterBy]);
|
|
41965
41966
|
setOpenFilter(false);
|
|
@@ -41971,7 +41972,7 @@ const RenderFilterElement$1 = ({ filter, optionsFilter, formatSetting, filterBy,
|
|
|
41971
41972
|
}
|
|
41972
41973
|
}, children: [((!column.filterType && column.type === 'numeric') || column.filterType === 'numeric') ? jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [RenderNumberFilter(), " "] }) : (column.filterType === 'select' ? jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [RenderSelectFilter(), " "] }) : RenderStringFilter()), jsxRuntime.jsxs("div", { className: 'd-flex justify-content-end', children: [jsxRuntime.jsx(Button$1, { color: 'primary', style: { borderRadius: 3 }, className: 'me-50 py-25 px-50 fw-bold', onClick: handleSave, children: t('Filter') }), jsxRuntime.jsx(Button$1, { className: 'py-25 px-50 fw-bold', color: 'white', style: { borderRadius: 3, borderWidth: 0 }, onClick: () => {
|
|
41973
41974
|
if (filterBy) {
|
|
41974
|
-
changeFilter(filterBy.filter((x) => x.key !==
|
|
41975
|
+
changeFilter(filterBy.filter((x) => x.key !== fieldFilter));
|
|
41975
41976
|
}
|
|
41976
41977
|
setOpenFilter(false);
|
|
41977
41978
|
}, children: t('Clear') })] })] }));
|
|
@@ -65554,7 +65555,7 @@ const HeaderTableCol = (props) => {
|
|
|
65554
65555
|
orderBy.push({ direction: 'asc', key: col.field });
|
|
65555
65556
|
changeOrder(orderBy);
|
|
65556
65557
|
}
|
|
65557
|
-
}, className: classNames$1('r-headercell-div', { 'cursor-pointer': allowOrder }), children: [col.type === 'checkbox' && (jsxRuntime.jsx(Input$1, { checked: !!(totalCount > 0 && selectedRows?.length >= totalCount), type: "checkbox", className: classNames$1('cursor-pointer', { 'd-none': !isMulti }), style: { textAlign: col.textAlign ?? 'left', marginTop: 6 }, onChange: (e) => {
|
|
65558
|
+
}, className: classNames$1('r-headercell-div', { 'cursor-pointer': allowOrder }), children: [(col.type === 'checkbox' && !col.field) && (jsxRuntime.jsx(Input$1, { checked: !!(totalCount > 0 && selectedRows?.length >= totalCount), type: "checkbox", className: classNames$1('cursor-pointer', { 'd-none': !isMulti }), style: { textAlign: col.textAlign ?? 'left', marginTop: 6 }, onChange: (e) => {
|
|
65558
65559
|
if (selectEnable) {
|
|
65559
65560
|
if (e.target.checked) {
|
|
65560
65561
|
setSelectedRows(dataSource.map((item) => { return item; }));
|
|
@@ -65577,6 +65578,7 @@ const RenderFilterElement = ({ filter, optionsFilter, formatSetting, filterBy, s
|
|
|
65577
65578
|
const { t } = reactI18next.useTranslation();
|
|
65578
65579
|
const [operator, setOperator] = React$5.useState(filter?.ope ?? ((!column.filterType && column.type === 'numeric') || column.filterType === 'select' ? 'equal' : 'contains'));
|
|
65579
65580
|
const [valueFilter, setValueFilter] = React$5.useState(filter?.value ?? '');
|
|
65581
|
+
const fieldFilter = column.fieldFilter ?? column.field;
|
|
65580
65582
|
const RenderStringFilter = () => {
|
|
65581
65583
|
const options = [
|
|
65582
65584
|
{ label: 'Bắt đầu bởi', value: 'startswith' },
|
|
@@ -65620,7 +65622,7 @@ const RenderFilterElement = ({ filter, optionsFilter, formatSetting, filterBy, s
|
|
|
65620
65622
|
} })] }));
|
|
65621
65623
|
};
|
|
65622
65624
|
const RenderSelectFilter = () => {
|
|
65623
|
-
return (jsxRuntime.jsx("div", { className: 'mb-1', children: jsxRuntime.jsx(SelectTable, { value: optionsFilter ? optionsFilter[
|
|
65625
|
+
return (jsxRuntime.jsx("div", { className: 'mb-1', children: jsxRuntime.jsx(SelectTable, { value: optionsFilter ? optionsFilter[fieldFilter]?.find((x) => x.value === valueFilter) : undefined, options: (optionsFilter && optionsFilter[fieldFilter]) ?? [], isClearable: true, onChange: (val) => {
|
|
65624
65626
|
setValueFilter(val?.value);
|
|
65625
65627
|
}, placeholder: t('Select') }) }));
|
|
65626
65628
|
};
|
|
@@ -65630,19 +65632,21 @@ const RenderFilterElement = ({ filter, optionsFilter, formatSetting, filterBy, s
|
|
|
65630
65632
|
filter.value = valueFilter ?? '';
|
|
65631
65633
|
}
|
|
65632
65634
|
else {
|
|
65633
|
-
filterBy.push({ key:
|
|
65635
|
+
filterBy.push({ key: fieldFilter, ope: operator, value: valueFilter ?? '' });
|
|
65634
65636
|
}
|
|
65635
65637
|
changeFilter([...filterBy]);
|
|
65636
65638
|
setOpenFilter(false);
|
|
65637
65639
|
};
|
|
65638
65640
|
return (jsxRuntime.jsxs("div", { className: 'r-filter-popup', onKeyDown: (e) => {
|
|
65639
65641
|
if (e.code === 'Enter' || e.code === 'NumpadEnter') {
|
|
65640
|
-
|
|
65642
|
+
setTimeout(() => {
|
|
65643
|
+
handleSave();
|
|
65644
|
+
}, 100);
|
|
65641
65645
|
e.stopPropagation();
|
|
65642
65646
|
}
|
|
65643
65647
|
}, children: [((!column.filterType && column.type === 'numeric') || column.filterType === 'numeric') ? jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [RenderNumberFilter(), " "] }) : (column.filterType === 'select' ? jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [RenderSelectFilter(), " "] }) : RenderStringFilter()), jsxRuntime.jsxs("div", { className: 'd-flex justify-content-end', children: [jsxRuntime.jsx(Button$1, { color: 'primary', style: { borderRadius: 3 }, className: 'me-50 py-25 px-50 fw-bold', onClick: handleSave, children: t('Filter') }), jsxRuntime.jsx(Button$1, { className: 'py-25 px-50 fw-bold', outline: true, style: { borderRadius: 3 }, onClick: () => {
|
|
65644
65648
|
if (filterBy) {
|
|
65645
|
-
changeFilter(filterBy.filter((x) => x.key !==
|
|
65649
|
+
changeFilter(filterBy.filter((x) => x.key !== fieldFilter));
|
|
65646
65650
|
}
|
|
65647
65651
|
setOpenFilter(false);
|
|
65648
65652
|
}, children: t('Clear') })] })] }));
|
|
@@ -65731,20 +65735,20 @@ const RenderContentCol = (props) => {
|
|
|
65731
65735
|
}, children: RenderElement() }, `col-${indexRow}-${indexCol}`));
|
|
65732
65736
|
};
|
|
65733
65737
|
|
|
65734
|
-
const TableView = ({ idTable, dataSource, rowHeight = 33, height = 400, columns, isMutil = false, isLoading, selectEnable, formatSetting, commandClick, allowFilter, allowOrder, setColumns, pagingSetting, changeFilter, changeOrder, searchSetting, columnsAggregate, toolbarSetting, optionsFilter, selectedItem, setSelectedItem, handleSelect }) => {
|
|
65738
|
+
const TableView = ({ idTable, dataSource, rowHeight = 33, height = 400, columns, isMutil = false, isLoading, selectEnable, formatSetting, commandClick, allowFilter, allowOrder, setColumns, pagingSetting, changeFilter, changeOrder, searchSetting, columnsAggregate, toolbarSetting, optionsFilter, selectedItem, setSelectedItem, handleSelect, isVirtualList }) => {
|
|
65739
|
+
const { t } = reactI18next.useTranslation();
|
|
65735
65740
|
const gridRef = React$5.useRef(null);
|
|
65736
|
-
const [startIndex, setStartIndex] = React$5.useState(0);
|
|
65737
65741
|
const [selectedRows, setSelectedRows] = React$5.useState([]);
|
|
65738
65742
|
const [orderBy, setOrderBy] = React$5.useState([]);
|
|
65739
65743
|
const [filterBy, setFilterBy] = React$5.useState([]);
|
|
65740
65744
|
const [searchTerm, setSearchTerm] = React$5.useState('');
|
|
65741
|
-
const fieldKey = columns.find((item) => item.isPrimarykey === true)?.field ?? 'id';
|
|
65745
|
+
const fieldKey = (columns.find((item) => item.isPrimarykey === true)?.field) ?? 'id';
|
|
65746
|
+
const [startIndex, setStartIndex] = React$5.useState(0);
|
|
65742
65747
|
//trường liên quan đến virtul loading
|
|
65743
|
-
const visibleRowCount = Math.ceil(height / rowHeight) + 5;
|
|
65744
65748
|
const buffer = 10; // số dòng dự phòng phía trên và dưới
|
|
65745
|
-
const
|
|
65746
|
-
|
|
65747
|
-
const
|
|
65749
|
+
const visibleRowCount = Math.ceil(height / rowHeight) + 5;
|
|
65750
|
+
// Tính toán dữ liệu hiển thị dựa trên các điều kiện lọc, tìm kiếm và sắp xếp
|
|
65751
|
+
const viewData = React$5.useMemo(() => {
|
|
65748
65752
|
if (!dataSource || dataSource.length === 0) {
|
|
65749
65753
|
return [];
|
|
65750
65754
|
}
|
|
@@ -65809,19 +65813,42 @@ const TableView = ({ idTable, dataSource, rowHeight = 33, height = 400, columns,
|
|
|
65809
65813
|
return 0;
|
|
65810
65814
|
});
|
|
65811
65815
|
}
|
|
65816
|
+
return datas;
|
|
65817
|
+
}, [searchTerm, filterBy, orderBy, dataSource]);
|
|
65818
|
+
// Lấy dữ liệu hiển thị với phân trang
|
|
65819
|
+
const pagingData = React$5.useMemo(() => {
|
|
65820
|
+
if (!viewData || viewData.length === 0) {
|
|
65821
|
+
return [];
|
|
65822
|
+
}
|
|
65823
|
+
let datas = viewData;
|
|
65812
65824
|
if (pagingSetting?.allowPaging && pagingSetting?.currentPage && pagingSetting?.pageSize && pagingSetting.pagingClient) {
|
|
65813
65825
|
const start = (pagingSetting.currentPage - 1) * pagingSetting.pageSize;
|
|
65814
65826
|
const end = start + pagingSetting.pageSize;
|
|
65815
65827
|
datas = datas.slice(start, end);
|
|
65816
65828
|
}
|
|
65817
|
-
return datas
|
|
65818
|
-
}, [
|
|
65819
|
-
|
|
65829
|
+
return datas;
|
|
65830
|
+
}, [viewData, pagingSetting?.pageSize, pagingSetting?.currentPage]);
|
|
65831
|
+
// Tính toán chỉ số bắt đầu và kết thúc của dữ liệu hiển thị
|
|
65832
|
+
const { adjustedStartIndex, adjustedEndIndex } = React$5.useMemo(() => {
|
|
65833
|
+
if (!pagingData || pagingData.length === 0 || !isVirtualList) {
|
|
65834
|
+
return { adjustedStartIndex: 0, adjustedEndIndex: 0 };
|
|
65835
|
+
}
|
|
65836
|
+
return {
|
|
65837
|
+
adjustedStartIndex: Math.max(startIndex - buffer, 0),
|
|
65838
|
+
adjustedEndIndex: Math.min(startIndex + visibleRowCount + buffer, dataSource.length)
|
|
65839
|
+
};
|
|
65840
|
+
}, [startIndex, pagingData]);
|
|
65841
|
+
const visibleData = React$5.useMemo(() => {
|
|
65842
|
+
if (!pagingData || pagingData.length === 0) {
|
|
65843
|
+
return [];
|
|
65844
|
+
}
|
|
65845
|
+
return isVirtualList ? pagingData.slice(adjustedStartIndex, adjustedEndIndex) : pagingData;
|
|
65846
|
+
}, [pagingData]);
|
|
65820
65847
|
const { levels: headerColumns, flat: contentColumns, flatVisble, objWidthFixLeft, objWidthFixRight, lastObjWidthFixLeft, fisrtObjWidthFixRight } = React$5.useMemo(() => calculateTableStructure(columns), [columns]);
|
|
65821
65848
|
const scrollTimeoutRef = React$5.useRef(null);
|
|
65822
65849
|
const lastScrollTop = React$5.useRef(0);
|
|
65823
65850
|
const handleScroll = (e) => {
|
|
65824
|
-
if (!gridRef.current) {
|
|
65851
|
+
if (!gridRef.current || !isVirtualList) {
|
|
65825
65852
|
return;
|
|
65826
65853
|
}
|
|
65827
65854
|
// Nếu không có sự thay đổi về scrollTop => người dùng chỉ scroll ngang => không xử lý
|
|
@@ -65946,19 +65973,19 @@ const TableView = ({ idTable, dataSource, rowHeight = 33, height = 400, columns,
|
|
|
65946
65973
|
}, container: gridRef, totalCount: dataSource.length }, `header-${indexParent}-${indexColumn}`))) }, `header-${-indexParent}`))) }), jsxRuntime.jsxs("tbody", { className: 'r-gridcontent', role: "rowgroup", children: [adjustedStartIndex > 0 && (jsxRuntime.jsx("tr", { style: { height: adjustedStartIndex * rowHeight }, children: jsxRuntime.jsx("td", { style: { padding: 0 }, colSpan: flatVisble.length }) })), visibleData.map((row, index) => {
|
|
65947
65974
|
const indexRow = index + startIndex;
|
|
65948
65975
|
const isSelected = selectedRows?.some((x) => x[fieldKey] === row[fieldKey]);
|
|
65949
|
-
return (jsxRuntime.jsx("tr", { "aria-rowindex": indexRow + 1, role: "row", className: 'r-row', children: contentColumns.map((column, indexCol) => (jsxRuntime.jsx(RenderContentCol, { idTable: idTable, col: column, fieldKey:
|
|
65950
|
-
}),
|
|
65976
|
+
return (jsxRuntime.jsx("tr", { "aria-rowindex": indexRow + 1, role: "row", className: 'r-row', children: contentColumns.map((column, indexCol) => (jsxRuntime.jsx(RenderContentCol, { idTable: idTable, col: column, fieldKey: fieldKey, objWidthFixLeft: objWidthFixLeft, objWidthFixRight: objWidthFixRight, fisrtObjWidthFixRight: fisrtObjWidthFixRight, lastObjWidthFixLeft: lastObjWidthFixLeft, isMulti: isMutil ?? false, selectEnable: selectEnable ?? false, selectedRows: selectedRows, setSelectedRows: setSelectedRows, formatSetting: formatSetting, handleCommandClick: handleCommandClick, indexCol: indexCol, indexRow: indexRow, isSelected: isSelected, row: row }, indexCol))) }, `row-content-${indexRow}`));
|
|
65977
|
+
}), adjustedEndIndex > 0 && pagingData.length > adjustedEndIndex && (jsxRuntime.jsx("tr", { style: { height: (pagingData.length - adjustedEndIndex) * rowHeight }, children: jsxRuntime.jsx("td", { style: { padding: 0 }, colSpan: flatVisble.length }) }))] }), viewData.length > 0 && jsxRuntime.jsx("tfoot", { className: "r-gridfoot", children: (columnsAggregate?.length ?? 0) > 0 ? jsxRuntime.jsx("tr", { className: 'r-row', children: contentColumns.map((col, indexCol) => {
|
|
65951
65978
|
const item = columnsAggregate?.find((x) => x.field === col.field);
|
|
65952
65979
|
let sumValue = item?.value;
|
|
65953
65980
|
if (!item && col.haveSum === true && col.type === "numeric") {
|
|
65954
|
-
sumValue =
|
|
65981
|
+
sumValue = viewData.reduce(function (accumulator, currentValue) { return (Number(accumulator ?? 0) + Number(currentValue[col.field] ?? 0)); }, 0);
|
|
65955
65982
|
}
|
|
65956
65983
|
return col.visible !== false && jsxRuntime.jsx("td", { className: classNames$1(`p-0 px-50 r-footer fix-${col.fixedType}`, { 'cell-fixed': col.fixedType }), style: {
|
|
65957
65984
|
left: col.fixedType === 'left' ? objWidthFixLeft[indexCol] : undefined,
|
|
65958
65985
|
right: col.fixedType === 'right' ? objWidthFixRight[indexCol] : undefined,
|
|
65959
65986
|
textAlign: col.textAlign ? col.textAlign : 'left'
|
|
65960
65987
|
}, children: jsxRuntime.jsxs("div", { className: "r-footer-div", children: [(item || (col.haveSum === true && col.type === "numeric")) && col.type === "numeric" && (Number(sumValue) >= 0) && jsxRuntime.jsx(jsxRuntime.Fragment, { children: formartNumberic(sumValue, formatSetting?.decimalSeparator ?? ',', formatSetting?.thousandSeparator ?? '.', col.numericSettings?.fraction, true, false) }), (item || (col.haveSum === true && col.type === "numeric")) && col.type === "numeric" && (Number(sumValue) < 0) && jsxRuntime.jsxs("div", { style: { color: formatSetting?.colorNegative ?? 'red' }, children: [" ", `${formatSetting?.prefixNegative ?? '-'}${formartNumberic(sumValue, formatSetting?.decimalSeparator ?? ',', formatSetting?.thousandSeparator ?? '.', col.numericSettings?.fraction, true, false)}${formatSetting?.suffixNegative ?? ''}`] })] }) }, `summarycell-${indexCol}`);
|
|
65961
|
-
}) }) : jsxRuntime.jsx(jsxRuntime.Fragment, {}) })] }), (((
|
|
65988
|
+
}) }) : jsxRuntime.jsx(jsxRuntime.Fragment, {}) })] }), (((viewData.length ?? 0) === 0) && !isLoading) && jsxRuntime.jsxs("div", { className: "r-no-data", children: [jsxRuntime.jsx("svg", { width: "64", height: "41", viewBox: "0 0 64 41", xmlns: "http://www.w3.org/2000/svg", children: jsxRuntime.jsxs("g", { transform: "translate(0 1)", fill: "none", fillRule: "evenodd", children: [jsxRuntime.jsx("ellipse", { fill: "#f5f5f5", cx: "32", cy: "33", rx: "32", ry: "7" }), jsxRuntime.jsxs("g", { fillRule: "nonzero", stroke: "#d9d9d9", children: [jsxRuntime.jsx("path", { d: "M55 12.76L44.854 1.258C44.367.474 43.656 0 42.907 0H21.093c-.749 0-1.46.474-1.947 1.257L9 12.761V22h46v-9.24z" }), jsxRuntime.jsx("path", { d: "M41.613 15.931c0-1.605.994-2.93 2.227-2.931H55v18.137C55 33.26 53.68 35 52.05 35h-40.1C10.32 35 9 33.259 9 31.137V13h11.16c1.233 0 2.227 1.323 2.227 2.928v.022c0 1.605 1.005 2.901 2.237 2.901h14.752c1.232 0 2.237-1.308 2.237-2.913v-.007z", fill: "#fafafa" })] })] }) }), t('No data available.')] }), isLoading && jsxRuntime.jsx("div", { className: "r-loading-overlay", children: jsxRuntime.jsxs("div", { className: "r-loading", children: [jsxRuntime.jsx(Spinner$1, { className: "me-1" }), t('Loading...')] }) })] })] }), pagingSetting?.allowPaging ? jsxRuntime.jsx(PagingComponent, { onChangePage: onChangePage, pageSize: pagingSetting?.pageSize ?? 0, currentPage: pagingSetting?.currentPage ?? 0, pageOptions: pagingSetting?.pageOptions ?? [20, 30, 50, 100], totalItem: (pagingSetting?.pagingClient ? viewData.length : pagingSetting?.totalItem ?? 0), onChangePageSize: onChangePageSize }) : jsxRuntime.jsx(jsxRuntime.Fragment, {})] }));
|
|
65962
65989
|
};
|
|
65963
65990
|
|
|
65964
65991
|
exports.ExportExcelComponent = ExportExcelComponent;
|