fix(dashboard): Pass query params to list SC request (#8863)
Resolves CC-331
This commit is contained in:
1 parent
70f2290a22
commit
16d8fb1d20
3 files changed
+25
-27
No files matched your search
+13
-8
@@ -1,4 +1,4 @@
|
|||||||
import { AdminGetSalesChannelsParams } from "@medusajs/medusa"
|
import { HttpTypes } from "@medusajs/types"
|
||||||
import { useQueryParams } from "../../use-query-params"
|
import { useQueryParams } from "../../use-query-params"
|
||||||
|
|
||||||
type UseSalesChannelTableQueryProps = {
|
type UseSalesChannelTableQueryProps = {
|
||||||
@@ -11,19 +11,24 @@ export const useSalesChannelTableQuery = ({
|
|||||||
pageSize = 20,
|
pageSize = 20,
|
||||||
}: UseSalesChannelTableQueryProps) => {
|
}: UseSalesChannelTableQueryProps) => {
|
||||||
const queryObject = useQueryParams(
|
const queryObject = useQueryParams(
|
||||||
["offset", "q", "order", "created_at", "updated_at"],
|
["offset", "q", "order", "created_at", "updated_at", "is_disabled"],
|
||||||
prefix
|
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,
|
limit: pageSize,
|
||||||
offset: offset ? Number(offset) : 0,
|
offset: offset ? Number(offset) : 0,
|
||||||
order,
|
created_at: created_at ? JSON.parse(created_at) : undefined,
|
||||||
// created_at: created_at ? JSON.parse(created_at) : undefined,
|
updated_at: updated_at ? JSON.parse(updated_at) : undefined,
|
||||||
// updated_at: updated_at ? JSON.parse(updated_at) : undefined,
|
is_disabled:
|
||||||
// q, // Re-enable when params are fixed
|
is_disabled === "true"
|
||||||
|
? true
|
||||||
|
: is_disabled === "false"
|
||||||
|
? false
|
||||||
|
: undefined,
|
||||||
|
...rest,
|
||||||
}
|
}
|
||||||
|
|
||||||
return {
|
return {
|
||||||
|
|||||||
+3
@@ -20,6 +20,7 @@ import {
|
|||||||
useSalesChannels,
|
useSalesChannels,
|
||||||
} from "../../../../hooks/api/sales-channels"
|
} from "../../../../hooks/api/sales-channels"
|
||||||
import { useSalesChannelTableColumns } from "../../../../hooks/table/columns/use-sales-channel-table-columns"
|
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 { useSalesChannelTableQuery } from "../../../../hooks/table/query/use-sales-channel-table-query"
|
||||||
import { useDataTable } from "../../../../hooks/use-data-table"
|
import { useDataTable } from "../../../../hooks/use-data-table"
|
||||||
|
|
||||||
@@ -42,6 +43,7 @@ export const SalesChannelListTable = () => {
|
|||||||
})
|
})
|
||||||
|
|
||||||
const columns = useColumns()
|
const columns = useColumns()
|
||||||
|
const filters = useSalesChannelTableFilters()
|
||||||
|
|
||||||
const { table } = useDataTable({
|
const { table } = useDataTable({
|
||||||
data: sales_channels ?? [],
|
data: sales_channels ?? [],
|
||||||
@@ -76,6 +78,7 @@ export const SalesChannelListTable = () => {
|
|||||||
columns={columns}
|
columns={columns}
|
||||||
count={count}
|
count={count}
|
||||||
pageSize={PAGE_SIZE}
|
pageSize={PAGE_SIZE}
|
||||||
|
filters={filters}
|
||||||
pagination
|
pagination
|
||||||
search
|
search
|
||||||
navigateTo={(row) => row.id}
|
navigateTo={(row) => row.id}
|
||||||
|
|||||||
+9
-19
@@ -1,29 +1,19 @@
|
|||||||
import { Outlet } from "react-router-dom"
|
|
||||||
|
|
||||||
import { SalesChannelListTable } from "./components/sales-channel-list-table"
|
import { SalesChannelListTable } from "./components/sales-channel-list-table"
|
||||||
|
|
||||||
import after from "virtual:medusa/widgets/sales_channel/list/after"
|
import after from "virtual:medusa/widgets/sales_channel/list/after"
|
||||||
import before from "virtual:medusa/widgets/sales_channel/list/before"
|
import before from "virtual:medusa/widgets/sales_channel/list/before"
|
||||||
|
import { SingleColumnPage } from "../../../components/layout/pages"
|
||||||
|
|
||||||
export const SalesChannelList = () => {
|
export const SalesChannelList = () => {
|
||||||
return (
|
return (
|
||||||
<div className="flex flex-col gap-y-2">
|
<SingleColumnPage
|
||||||
{before.widgets.map((w, i) => {
|
widgets={{
|
||||||
return (
|
before,
|
||||||
<div key={i}>
|
after,
|
||||||
<w.Component />
|
}}
|
||||||
</div>
|
hasOutlet
|
||||||
)
|
>
|
||||||
})}
|
|
||||||
<SalesChannelListTable />
|
<SalesChannelListTable />
|
||||||
{after.widgets.map((w, i) => {
|
</SingleColumnPage>
|
||||||
return (
|
|
||||||
<div key={i}>
|
|
||||||
<w.Component key={i} />
|
|
||||||
</div>
|
|
||||||
)
|
|
||||||
})}
|
|
||||||
<Outlet />
|
|
||||||
</div>
|
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
Reference in new issue
Block a user