Simplify code
This commit is contained in:
parent
8bdf4deabb
commit
d3bd6a6c22
5 changed files with 25 additions and 27 deletions
|
@ -20,6 +20,7 @@ import createSortHandler from "@saleor/utils/handlers/sortHandler";
|
|||
import { getSortParams } from "@saleor/utils/sort";
|
||||
import createDialogActionHandlers from "@saleor/utils/handlers/dialogActionHandlers";
|
||||
import { IFilter } from "@saleor/components/Filter";
|
||||
import { getFilterQueryParams } from "@saleor/utils/filters";
|
||||
import OrderBulkCancelDialog from "../../components/OrderBulkCancelDialog";
|
||||
import OrderListPage from "../../components/OrderListPage/OrderListPage";
|
||||
import {
|
||||
|
@ -44,7 +45,7 @@ import {
|
|||
getFilterVariables,
|
||||
saveFilterTab,
|
||||
OrderFilterKeys,
|
||||
createFilterQueryParams
|
||||
getFilterQueryParam
|
||||
} from "./filters";
|
||||
import { getSortQueryVariables } from "./sort";
|
||||
|
||||
|
@ -92,7 +93,7 @@ export const OrderList: React.FC<OrderListProps> = ({ params }) => {
|
|||
navigate(
|
||||
orderListUrl({
|
||||
...params,
|
||||
...createFilterQueryParams(filter),
|
||||
...getFilterQueryParams(filter, getFilterQueryParam),
|
||||
activeTab: undefined
|
||||
})
|
||||
);
|
||||
|
|
|
@ -164,17 +164,6 @@ export function getFilterQueryParam(
|
|||
};
|
||||
}
|
||||
}
|
||||
export function createFilterQueryParams(
|
||||
filter: IFilter<OrderFilterKeys>
|
||||
): OrderListUrlFilters {
|
||||
return filter.reduce(
|
||||
(acc, filterField) => ({
|
||||
...acc,
|
||||
...getFilterQueryParam(filterField)
|
||||
}),
|
||||
{}
|
||||
);
|
||||
}
|
||||
|
||||
export const {
|
||||
deleteFilterTab,
|
||||
|
|
|
@ -26,6 +26,7 @@ import { ListViews } from "@saleor/types";
|
|||
import { getSortUrlVariables } from "@saleor/utils/sort";
|
||||
import createDialogActionHandlers from "@saleor/utils/handlers/dialogActionHandlers";
|
||||
import { IFilter } from "@saleor/components/Filter";
|
||||
import { getFilterQueryParams } from "@saleor/utils/filters";
|
||||
import ProductListPage from "../../components/ProductListPage";
|
||||
import {
|
||||
TypedProductBulkDeleteMutation,
|
||||
|
@ -53,8 +54,8 @@ import {
|
|||
getFilterVariables,
|
||||
saveFilterTab,
|
||||
ProductFilterKeys,
|
||||
createFilterQueryParams,
|
||||
getFilterOpts
|
||||
getFilterOpts,
|
||||
getFilterQueryParam
|
||||
} from "./filters";
|
||||
import { getSortQueryVariables } from "./sort";
|
||||
|
||||
|
@ -107,7 +108,7 @@ export const ProductList: React.FC<ProductListProps> = ({ params }) => {
|
|||
navigate(
|
||||
productListUrl({
|
||||
...params,
|
||||
...createFilterQueryParams(filter),
|
||||
...getFilterQueryParams(filter, getFilterQueryParam),
|
||||
activeTab: undefined
|
||||
})
|
||||
);
|
||||
|
|
|
@ -176,17 +176,6 @@ export function getFilterQueryParam(
|
|||
};
|
||||
}
|
||||
}
|
||||
export function createFilterQueryParams(
|
||||
filter: IFilter<ProductFilterKeys>
|
||||
): ProductListUrlFilters {
|
||||
return filter.reduce(
|
||||
(acc, filterField) => ({
|
||||
...acc,
|
||||
...getFilterQueryParam(filterField)
|
||||
}),
|
||||
{}
|
||||
);
|
||||
}
|
||||
|
||||
export const {
|
||||
deleteFilterTab,
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
import { IFilterElement, IFilter } from "@saleor/components/Filter";
|
||||
|
||||
function createFilterUtils<
|
||||
TQueryParams extends object,
|
||||
TFilters extends object
|
||||
|
@ -25,4 +27,20 @@ export function dedupeFilter<T>(array: T[]): T[] {
|
|||
return Array.from(new Set(array));
|
||||
}
|
||||
|
||||
export function getFilterQueryParams<
|
||||
TFilterKeys extends string,
|
||||
TUrlFilters extends object
|
||||
>(
|
||||
filter: IFilter<TFilterKeys>,
|
||||
getFilterQueryParam: (filter: IFilterElement<TFilterKeys>) => TUrlFilters
|
||||
): TUrlFilters {
|
||||
return filter.reduce(
|
||||
(acc, filterField) => ({
|
||||
...acc,
|
||||
...getFilterQueryParam(filterField)
|
||||
}),
|
||||
{} as TUrlFilters
|
||||
);
|
||||
}
|
||||
|
||||
export default createFilterUtils;
|
||||
|
|
Loading…
Reference in a new issue