From 16d8fb1d20a2004c1b61b88c8aad480e2b7b287f Mon Sep 17 00:00:00 2001 From: Kasper Fabricius Kristensen <45367945+kasperkristensen@users.noreply.github.com> Date: Thu, 29 Aug 2024 10:35:39 +0200 Subject: [PATCH] fix(dashboard): Pass query params to list SC request (#8863) Resolves CC-331 --- .../query/use-sales-channel-table-query.tsx | 21 ++++++++------ .../components/sales-channel-list-table.tsx | 3 ++ .../sales-channel-list/sales-channel-list.tsx | 28 ++++++------------- 3 files changed, 25 insertions(+), 27 deletions(-) diff --git a/packages/admin-next/dashboard/src/hooks/table/query/use-sales-channel-table-query.tsx b/packages/admin-next/dashboard/src/hooks/table/query/use-sales-channel-table-query.tsx index 53299b2c19..0c35b9a67c 100644 --- a/packages/admin-next/dashboard/src/hooks/table/query/use-sales-channel-table-query.tsx +++ b/packages/admin-next/dashboard/src/hooks/table/query/use-sales-channel-table-query.tsx @@ -1,4 +1,4 @@ -import { AdminGetSalesChannelsParams } from "@medusajs/medusa" +import { HttpTypes } from "@medusajs/types" import { useQueryParams } from "../../use-query-params" type UseSalesChannelTableQueryProps = { @@ -11,19 +11,24 @@ export const useSalesChannelTableQuery = ({ pageSize = 20, }: UseSalesChannelTableQueryProps) => { const queryObject = useQueryParams( - ["offset", "q", "order", "created_at", "updated_at"], + ["offset", "q", "order", "created_at", "updated_at", "is_disabled"], prefix ) - const { offset, created_at, updated_at, q, order } = queryObject + const { offset, created_at, updated_at, is_disabled, ...rest } = queryObject - const searchParams: AdminGetSalesChannelsParams = { + const searchParams: HttpTypes.AdminSalesChannelListParams = { limit: pageSize, offset: offset ? Number(offset) : 0, - order, - // created_at: created_at ? JSON.parse(created_at) : undefined, - // updated_at: updated_at ? JSON.parse(updated_at) : undefined, - // q, // Re-enable when params are fixed + created_at: created_at ? JSON.parse(created_at) : undefined, + updated_at: updated_at ? JSON.parse(updated_at) : undefined, + is_disabled: + is_disabled === "true" + ? true + : is_disabled === "false" + ? false + : undefined, + ...rest, } return { diff --git a/packages/admin-next/dashboard/src/routes/sales-channels/sales-channel-list/components/sales-channel-list-table.tsx b/packages/admin-next/dashboard/src/routes/sales-channels/sales-channel-list/components/sales-channel-list-table.tsx index 5ac1cdeff7..44811acf91 100644 --- a/packages/admin-next/dashboard/src/routes/sales-channels/sales-channel-list/components/sales-channel-list-table.tsx +++ b/packages/admin-next/dashboard/src/routes/sales-channels/sales-channel-list/components/sales-channel-list-table.tsx @@ -20,6 +20,7 @@ import { useSalesChannels, } from "../../../../hooks/api/sales-channels" import { useSalesChannelTableColumns } from "../../../../hooks/table/columns/use-sales-channel-table-columns" +import { useSalesChannelTableFilters } from "../../../../hooks/table/filters" import { useSalesChannelTableQuery } from "../../../../hooks/table/query/use-sales-channel-table-query" import { useDataTable } from "../../../../hooks/use-data-table" @@ -42,6 +43,7 @@ export const SalesChannelListTable = () => { }) const columns = useColumns() + const filters = useSalesChannelTableFilters() const { table } = useDataTable({ data: sales_channels ?? [], @@ -76,6 +78,7 @@ export const SalesChannelListTable = () => { columns={columns} count={count} pageSize={PAGE_SIZE} + filters={filters} pagination search navigateTo={(row) => row.id} diff --git a/packages/admin-next/dashboard/src/routes/sales-channels/sales-channel-list/sales-channel-list.tsx b/packages/admin-next/dashboard/src/routes/sales-channels/sales-channel-list/sales-channel-list.tsx index f04ce13cc3..ec16ca7f47 100644 --- a/packages/admin-next/dashboard/src/routes/sales-channels/sales-channel-list/sales-channel-list.tsx +++ b/packages/admin-next/dashboard/src/routes/sales-channels/sales-channel-list/sales-channel-list.tsx @@ -1,29 +1,19 @@ -import { Outlet } from "react-router-dom" - import { SalesChannelListTable } from "./components/sales-channel-list-table" import after from "virtual:medusa/widgets/sales_channel/list/after" import before from "virtual:medusa/widgets/sales_channel/list/before" +import { SingleColumnPage } from "../../../components/layout/pages" export const SalesChannelList = () => { return ( -
- {before.widgets.map((w, i) => { - return ( -
- -
- ) - })} + - {after.widgets.map((w, i) => { - return ( -
- -
- ) - })} - -
+ ) }