@dartech/arsenal-ui 1.4.7 → 1.4.9
Sign up to get free protection for your applications and to get access to all the features.
package/index.js
CHANGED
@@ -2699,28 +2699,31 @@ const useTableQuerySorting = () => {
|
|
2699
2699
|
const [queryParams, setQueryParams] = useSearchParams();
|
2700
2700
|
const sortParams = queryParams.getAll('sort').map(param => param.split(','));
|
2701
2701
|
const onColumnHeaderClick = ({
|
2702
|
-
field
|
2702
|
+
field,
|
2703
|
+
colDef
|
2703
2704
|
}) => {
|
2704
|
-
|
2705
|
-
|
2706
|
-
|
2707
|
-
|
2708
|
-
|
2709
|
-
|
2710
|
-
|
2711
|
-
|
2712
|
-
|
2705
|
+
if (colDef.sortable) {
|
2706
|
+
let keyFound = false;
|
2707
|
+
const sortValues = queryParams.getAll('sort');
|
2708
|
+
queryParams.delete('sort');
|
2709
|
+
sortValues.forEach(sortValue => {
|
2710
|
+
const [key, sort] = sortValue.split(',');
|
2711
|
+
if (key === field) {
|
2712
|
+
keyFound = true;
|
2713
|
+
if (sort === 'asc') {
|
2714
|
+
queryParams.append('sort', `${key},desc`);
|
2715
|
+
}
|
2716
|
+
} else {
|
2717
|
+
queryParams.append('sort', `${key},${sort}`);
|
2713
2718
|
}
|
2714
|
-
}
|
2715
|
-
|
2719
|
+
});
|
2720
|
+
if (!keyFound) {
|
2721
|
+
queryParams.append('sort', `${field},asc`);
|
2716
2722
|
}
|
2717
|
-
|
2718
|
-
|
2719
|
-
|
2723
|
+
setQueryParams(queryParams, {
|
2724
|
+
replace: true
|
2725
|
+
});
|
2720
2726
|
}
|
2721
|
-
setQueryParams(queryParams, {
|
2722
|
-
replace: true
|
2723
|
-
});
|
2724
2727
|
};
|
2725
2728
|
const getSortedColumns = columns => {
|
2726
2729
|
return columns.map(column => {
|
@@ -5969,7 +5972,6 @@ const PropertyFiller = ({
|
|
5969
5972
|
control: control,
|
5970
5973
|
label: valueLabel,
|
5971
5974
|
parseValue: true,
|
5972
|
-
validateJson: true,
|
5973
5975
|
hideErrorMessage: true
|
5974
5976
|
}) : jsx(ControlInput, {
|
5975
5977
|
control: control,
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
import { GridColumnHeaderParams, GridColumns } from '@mui/x-data-grid';
|
2
2
|
export declare const useTableQuerySorting: () => {
|
3
|
-
onColumnHeaderClick: ({ field }: GridColumnHeaderParams) => void;
|
3
|
+
onColumnHeaderClick: ({ field, colDef }: GridColumnHeaderParams) => void;
|
4
4
|
getSortedColumns: (columns: GridColumns<any>) => GridColumns<any>;
|
5
5
|
};
|
6
6
|
export default useTableQuerySorting;
|