react-table-edit 1.5.46 → 1.5.47
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/filter-element.d.ts +1 -1
- package/dist/index.js +36 -19
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +36 -19
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -9,5 +9,5 @@ type IFilterProps = {
|
|
|
9
9
|
formatSetting?: IFTableEditFormat;
|
|
10
10
|
changeFilter: (data: IFFilterTable[]) => void;
|
|
11
11
|
};
|
|
12
|
-
declare const FilterComponent: ({ optionsFilter, formatSetting, filterBy, setOpenFilter, changeFilter, column }: IFilterProps) => import("react/jsx-runtime").JSX.Element;
|
|
12
|
+
declare const FilterComponent: ({ optionsFilter, formatSetting, filterBy, setOpenFilter, changeFilter, column, }: IFilterProps) => import("react/jsx-runtime").JSX.Element;
|
|
13
13
|
export default FilterComponent;
|
package/dist/index.js
CHANGED
|
@@ -39586,7 +39586,7 @@ const DateRangePicker = React$5.forwardRef((props, ref) => {
|
|
|
39586
39586
|
}, children: t('Last month') })] })] })] }) }));
|
|
39587
39587
|
});
|
|
39588
39588
|
|
|
39589
|
-
const FilterComponent = ({ optionsFilter, formatSetting, filterBy, setOpenFilter, changeFilter, column }) => {
|
|
39589
|
+
const FilterComponent = ({ optionsFilter, formatSetting, filterBy, setOpenFilter, changeFilter, column, }) => {
|
|
39590
39590
|
const { t } = reactI18next.useTranslation();
|
|
39591
39591
|
const fieldFilter = column.fieldFilter ?? column.field;
|
|
39592
39592
|
let typeFilter = column.filterType;
|
|
@@ -39613,14 +39613,22 @@ const FilterComponent = ({ optionsFilter, formatSetting, filterBy, setOpenFilter
|
|
|
39613
39613
|
from.value = filterValue?.from;
|
|
39614
39614
|
}
|
|
39615
39615
|
else {
|
|
39616
|
-
filterBy.push({
|
|
39616
|
+
filterBy.push({
|
|
39617
|
+
key: fieldFilter,
|
|
39618
|
+
ope: 'greaterthanorequal',
|
|
39619
|
+
value: filterValue?.from,
|
|
39620
|
+
});
|
|
39617
39621
|
}
|
|
39618
39622
|
const to = filterBy.find((item) => item.key === fieldFilter && item.ope === 'lessthanorequal');
|
|
39619
39623
|
if (to) {
|
|
39620
39624
|
to.value = filterValue?.to;
|
|
39621
39625
|
}
|
|
39622
39626
|
else {
|
|
39623
|
-
filterBy.push({
|
|
39627
|
+
filterBy.push({
|
|
39628
|
+
key: fieldFilter,
|
|
39629
|
+
ope: 'lessthanorequal',
|
|
39630
|
+
value: filterValue?.to,
|
|
39631
|
+
});
|
|
39624
39632
|
}
|
|
39625
39633
|
}
|
|
39626
39634
|
else {
|
|
@@ -39630,7 +39638,11 @@ const FilterComponent = ({ optionsFilter, formatSetting, filterBy, setOpenFilter
|
|
|
39630
39638
|
filter.value = filterValue ?? '';
|
|
39631
39639
|
}
|
|
39632
39640
|
else {
|
|
39633
|
-
filterBy.push({
|
|
39641
|
+
filterBy.push({
|
|
39642
|
+
key: fieldFilter,
|
|
39643
|
+
ope: operator ?? 'equal',
|
|
39644
|
+
value: filterValue ?? '',
|
|
39645
|
+
});
|
|
39634
39646
|
}
|
|
39635
39647
|
}
|
|
39636
39648
|
changeFilter([...filterBy]);
|
|
@@ -39639,19 +39651,19 @@ const FilterComponent = ({ optionsFilter, formatSetting, filterBy, setOpenFilter
|
|
|
39639
39651
|
/* eslint-disable */
|
|
39640
39652
|
switch (typeFilter) {
|
|
39641
39653
|
case 'text':
|
|
39642
|
-
return jsxRuntime.jsx(StringFilterComponent, { fieldFilter: fieldFilter, optionsFilter: optionsFilter, filterBy: filterBy, column: column, handleSave: handleSave });
|
|
39654
|
+
return (jsxRuntime.jsx(StringFilterComponent, { fieldFilter: fieldFilter, optionsFilter: optionsFilter, filterBy: filterBy, column: column, handleSave: handleSave }));
|
|
39643
39655
|
case 'numeric':
|
|
39644
|
-
return jsxRuntime.jsx(NumberFilterComponent, { fieldFilter: fieldFilter, optionsFilter: optionsFilter, filterBy: filterBy, column: column, handleSave: handleSave, formatSetting: formatSetting });
|
|
39656
|
+
return (jsxRuntime.jsx(NumberFilterComponent, { fieldFilter: fieldFilter, optionsFilter: optionsFilter, filterBy: filterBy, column: column, handleSave: handleSave, formatSetting: formatSetting }));
|
|
39645
39657
|
case 'select':
|
|
39646
|
-
return jsxRuntime.jsx(SelectFilterComponent, { fieldFilter: fieldFilter, optionsFilter: optionsFilter, filterBy: filterBy, column: column, handleSave: handleSave });
|
|
39658
|
+
return (jsxRuntime.jsx(SelectFilterComponent, { fieldFilter: fieldFilter, optionsFilter: optionsFilter, filterBy: filterBy, column: column, handleSave: handleSave }));
|
|
39647
39659
|
case 'date':
|
|
39648
|
-
return jsxRuntime.jsx(DateRangeFilterComponent, { fieldFilter: fieldFilter, optionsFilter: optionsFilter, filterBy: filterBy, column: column, handleSave: handleSave });
|
|
39660
|
+
return (jsxRuntime.jsx(DateRangeFilterComponent, { fieldFilter: fieldFilter, optionsFilter: optionsFilter, filterBy: filterBy, column: column, handleSave: handleSave }));
|
|
39649
39661
|
default:
|
|
39650
39662
|
return jsxRuntime.jsx("div", { children: t('No filter available') });
|
|
39651
39663
|
}
|
|
39652
39664
|
/* eslint-enable */
|
|
39653
39665
|
};
|
|
39654
|
-
const StringFilterComponent = ({ fieldFilter, filterBy, handleSave }) => {
|
|
39666
|
+
const StringFilterComponent = ({ fieldFilter, filterBy, handleSave, }) => {
|
|
39655
39667
|
const { t } = reactI18next.useTranslation();
|
|
39656
39668
|
const filter = filterBy.find((item) => item.key === fieldFilter);
|
|
39657
39669
|
const [operator, setOperator] = React$5.useState(filter?.ope ?? 'contains');
|
|
@@ -39661,7 +39673,7 @@ const StringFilterComponent = ({ fieldFilter, filterBy, handleSave }) => {
|
|
|
39661
39673
|
{ label: 'Kết thúc bởi', value: 'endswith' },
|
|
39662
39674
|
{ label: 'Chứa', value: 'contains' },
|
|
39663
39675
|
{ label: 'Bằng', value: 'equal' },
|
|
39664
|
-
{ label: 'Không bằng', value: 'notequal' }
|
|
39676
|
+
{ label: 'Không bằng', value: 'notequal' },
|
|
39665
39677
|
];
|
|
39666
39678
|
return (jsxRuntime.jsx(jsxRuntime.Fragment, { children: jsxRuntime.jsxs("div", { className: "r-filter-popup", onKeyDown: (e) => {
|
|
39667
39679
|
if (e.code === 'Enter' || e.code === 'NumpadEnter') {
|
|
@@ -39676,7 +39688,7 @@ const StringFilterComponent = ({ fieldFilter, filterBy, handleSave }) => {
|
|
|
39676
39688
|
setValueFilter(val.target.value);
|
|
39677
39689
|
} }), jsxRuntime.jsxs("div", { className: "d-flex justify-content-end", children: [jsxRuntime.jsx(Button$1$1, { color: "primary", style: { borderRadius: 3 }, className: "me-50 py-25 px-50 fw-bold", onClick: () => handleSave('text', valueFilter, operator), children: t('Filter') }), jsxRuntime.jsx(Button$1$1, { className: "py-25 px-50 fw-bold", outline: true, style: { borderRadius: 3 }, onClick: () => handleSave(), children: t('Clear') })] })] }) }));
|
|
39678
39690
|
};
|
|
39679
|
-
const NumberFilterComponent = ({ column, filterBy, fieldFilter, handleSave, formatSetting }) => {
|
|
39691
|
+
const NumberFilterComponent = ({ column, filterBy, fieldFilter, handleSave, formatSetting, }) => {
|
|
39680
39692
|
const { t } = reactI18next.useTranslation();
|
|
39681
39693
|
const filter = filterBy.find((item) => item.key === fieldFilter);
|
|
39682
39694
|
const [operator, setOperator] = React$5.useState(filter?.ope ?? 'equal');
|
|
@@ -39686,17 +39698,15 @@ const NumberFilterComponent = ({ column, filterBy, fieldFilter, handleSave, form
|
|
|
39686
39698
|
{ label: 'Lớn hơn hoặc bằng', value: 'greaterthanorequal' },
|
|
39687
39699
|
{ label: 'Bằng', value: 'equal' },
|
|
39688
39700
|
{ label: 'Bé hơn', value: 'lessthan' },
|
|
39689
|
-
{ label: 'Bé hơn hoặc bằng', value: 'lessthanorequal' }
|
|
39701
|
+
{ label: 'Bé hơn hoặc bằng', value: 'lessthanorequal' },
|
|
39690
39702
|
];
|
|
39691
39703
|
const numericFormatProps = {
|
|
39692
39704
|
value: !isNullOrUndefined$1(valueFilter) ? valueFilter.toString() : '',
|
|
39693
39705
|
thousandSeparator: checkThousandSeparator(formatSetting?.thousandSeparator, formatSetting?.decimalSeparator),
|
|
39694
39706
|
decimalSeparator: checkDecimalSeparator(formatSetting?.thousandSeparator, formatSetting?.decimalSeparator),
|
|
39695
39707
|
allowNegative: column.numericSettings?.allowNegative ?? false,
|
|
39696
|
-
decimalScale: column.numericSettings?.fraction ?? 0
|
|
39708
|
+
decimalScale: column.numericSettings?.fraction ?? 0,
|
|
39697
39709
|
};
|
|
39698
|
-
console.log(column.numericSettings?.fraction);
|
|
39699
|
-
console.log(column.field);
|
|
39700
39710
|
let floatValue = parseFloat(valueFilter ?? '0');
|
|
39701
39711
|
return (jsxRuntime.jsx(jsxRuntime.Fragment, { children: jsxRuntime.jsxs("div", { className: "r-filter-popup", onKeyDown: (e) => {
|
|
39702
39712
|
if (e.code === 'Enter' || e.code === 'NumpadEnter') {
|
|
@@ -39717,7 +39727,7 @@ const NumberFilterComponent = ({ column, filterBy, fieldFilter, handleSave, form
|
|
|
39717
39727
|
}
|
|
39718
39728
|
} }), jsxRuntime.jsxs("div", { className: "d-flex justify-content-end", children: [jsxRuntime.jsx(Button$1$1, { color: "primary", style: { borderRadius: 3 }, className: "me-50 py-25 px-50 fw-bold", onClick: () => handleSave('numeric', valueFilter, operator), children: t('Filter') }), jsxRuntime.jsx(Button$1$1, { className: "py-25 px-50 fw-bold", outline: true, style: { borderRadius: 3 }, onClick: () => handleSave(), children: t('Clear') })] })] }) }));
|
|
39719
39729
|
};
|
|
39720
|
-
const SelectFilterComponent = ({ column, filterBy, handleSave, fieldFilter, optionsFilter }) => {
|
|
39730
|
+
const SelectFilterComponent = ({ column, filterBy, handleSave, fieldFilter, optionsFilter, }) => {
|
|
39721
39731
|
const { t } = reactI18next.useTranslation();
|
|
39722
39732
|
const filter = filterBy.find((item) => item.key === fieldFilter);
|
|
39723
39733
|
const [valueFilter, setValueFilter] = React$5.useState(filter?.value ?? '');
|
|
@@ -39728,15 +39738,22 @@ const SelectFilterComponent = ({ column, filterBy, handleSave, fieldFilter, opti
|
|
|
39728
39738
|
}, 100);
|
|
39729
39739
|
e.stopPropagation();
|
|
39730
39740
|
}
|
|
39731
|
-
}, children: [jsxRuntime.jsx("div", { className: "mb-1", children: jsxRuntime.jsx(SelectTable, { value: optionsFilter
|
|
39741
|
+
}, children: [jsxRuntime.jsx("div", { className: "mb-1", children: jsxRuntime.jsx(SelectTable, { value: optionsFilter
|
|
39742
|
+
? optionsFilter[column.fieldFilter ?? column.field]?.find((x) => x.value === valueFilter)
|
|
39743
|
+
: undefined, options: (optionsFilter &&
|
|
39744
|
+
optionsFilter[column.fieldFilter ?? column.field]) ??
|
|
39745
|
+
[], isClearable: true, onChange: (val) => {
|
|
39732
39746
|
setValueFilter(val?.value);
|
|
39733
39747
|
}, placeholder: t('Select') }) }), jsxRuntime.jsxs("div", { className: "d-flex justify-content-end", children: [jsxRuntime.jsx(Button$1$1, { color: "primary", style: { borderRadius: 3 }, className: "me-50 py-25 px-50 fw-bold", onClick: () => handleSave('select', valueFilter, 'equal'), children: t('Filter') }), jsxRuntime.jsx(Button$1$1, { className: "py-25 px-50 fw-bold", outline: true, style: { borderRadius: 3 }, onClick: () => handleSave(), children: t('Clear') })] })] }) }));
|
|
39734
39748
|
};
|
|
39735
|
-
const DateRangeFilterComponent = ({ fieldFilter, filterBy, handleSave }) => {
|
|
39749
|
+
const DateRangeFilterComponent = ({ fieldFilter, filterBy, handleSave, }) => {
|
|
39736
39750
|
const { t } = reactI18next.useTranslation();
|
|
39737
39751
|
const from = filterBy.find((item) => item.key === fieldFilter && item.ope === 'greaterthanorequal')?.value;
|
|
39738
39752
|
const to = filterBy.find((item) => item.key === fieldFilter && item.ope === 'lessthanorequal')?.value;
|
|
39739
|
-
const [valueFilter, setValueFilter] = React$5.useState({
|
|
39753
|
+
const [valueFilter, setValueFilter] = React$5.useState({
|
|
39754
|
+
from: from ?? undefined,
|
|
39755
|
+
to: to ?? undefined,
|
|
39756
|
+
});
|
|
39740
39757
|
return (jsxRuntime.jsx(jsxRuntime.Fragment, { children: jsxRuntime.jsxs("div", { className: "r-filter-popup", onKeyDown: (e) => {
|
|
39741
39758
|
if (e.code === 'Enter' || e.code === 'NumpadEnter') {
|
|
39742
39759
|
setTimeout(() => {
|