fix build

This commit is contained in:
2026-04-07 07:07:02 +03:00
parent 11db1e6941
commit 9fd7b61c5a
27 changed files with 74 additions and 64 deletions
@@ -27,11 +27,13 @@ type ReactNodeOrRender<TClient extends ResourcePageClient> =
| ((context: ResourcePageContext<TClient>) => React.ReactNode)
export type ResourcePageProps<TClient extends ResourcePageClient> = Omit<CrudResourceProps<TClient>, "render"> & {
pageTitle?: string
headerProps?: DashboardHeaderProps | ((helpers: ResourcePageHeaderHelpers<TClient>) => DashboardHeaderProps)
header?: ReactNodeOrRender<TClient> | null
}
export function ResourcePage<TClient extends ResourcePageClient>({
pageTitle,
headerProps: headerPropsProp,
header,
...crudResourceProps
@@ -46,13 +48,16 @@ export function ResourcePage<TClient extends ResourcePageClient>({
invalidateQuery: context.invalidateQuery,
})
: headerPropsProp
const mergedHeaderProps = pageTitle
? { title: pageTitle, ...resolvedHeaderProps }
: resolvedHeaderProps
const resolvedHeader = typeof header === "function" ? header(context) : header
return (
<DashboardPage
header={resolvedHeader}
headerProps={resolvedHeaderProps}
headerProps={mergedHeaderProps}
fullscreen
>
<Card className="rounded-none">
@@ -15,7 +15,7 @@ type ApiInstance = ReturnType<typeof useAuthApi>
export type ResourcePageClient = {
list(query?: any): Promise<any>
destroy(id: string): Promise<any>
destroy?(id: string): Promise<any>
}
export type ResourceItem<TClient> = CrudListItem<TClient> & BaseCrudItem
@@ -51,6 +51,7 @@ export function useResourcePage<TClient extends ResourcePageClient>({
const { mutateAsync: deleteItem } = useMutation({
mutationFn: (id: string) => {
if (!client.destroy) return Promise.reject(new Error("Delete not supported"))
const promise = client.destroy(id)
toast.promise(promise, {
loading: "Deleting...",