fix(dashboard): Pass query params to list SC request (#8863)

Resolves CC-331
This commit is contained in:
Kasper Fabricius Kristensen
2024-08-29 10:35:39 +02:00
committed by GitHub
parent 70f2290a22
commit 16d8fb1d20
3 changed files with 25 additions and 27 deletions

View File

@@ -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 {

View File

@@ -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}

View File

@@ -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 (
<div className="flex flex-col gap-y-2">
{before.widgets.map((w, i) => {
return (
<div key={i}>
<w.Component />
</div>
)
})}
<SingleColumnPage
widgets={{
before,
after,
}}
hasOutlet
>
<SalesChannelListTable />
{after.widgets.map((w, i) => {
return (
<div key={i}>
<w.Component key={i} />
</div>
)
})}
<Outlet />
</div>
</SingleColumnPage>
)
}