11import React from "react" ;
22import { Card , Space , Spin } from "antd" ;
33import {
4- useNavigation ,
54 useTranslate ,
65 useUserFriendlyName ,
76 useRefineContext ,
8- useResource ,
7+ useResourceParams ,
98 useToPath ,
10- useRouterType ,
119 useBack ,
1210 useGo ,
1311} from "@refinedev/core" ;
@@ -36,6 +34,7 @@ export const Show: React.FC<ShowProps> = ({
3634 title,
3735 canEdit,
3836 canDelete,
37+ deleteButtonProps : deleteButtonPropsFromProps ,
3938 isLoading = false ,
4039 children,
4140 resource : resourceFromProps ,
@@ -56,18 +55,18 @@ export const Show: React.FC<ShowProps> = ({
5655 options : { breadcrumb : globalBreadcrumb } = { } ,
5756 } = useRefineContext ( ) ;
5857
59- const routerType = useRouterType ( ) ;
6058 const back = useBack ( ) ;
6159 const go = useGo ( ) ;
62- const { goBack, list : legacyGoList } = useNavigation ( ) ;
6360 const getUserFriendlyName = useUserFriendlyName ( ) ;
6461
6562 const {
6663 resource,
6764 action,
6865 id : idFromParams ,
6966 identifier,
70- } = useResource ( resourceFromProps ) ;
67+ } = useResourceParams ( {
68+ resource : resourceFromProps ,
69+ } ) ;
7170
7271 const goListPath = useToPath ( {
7372 resource,
@@ -83,40 +82,38 @@ export const Show: React.FC<ShowProps> = ({
8382
8483 const hasList = resource ?. list && ! recordItemId ;
8584 const isDeleteButtonVisible =
86- canDelete ?? resource ?. meta ?. canDelete ?? resource ?. canDelete ;
87- const isEditButtonVisible = canEdit ?? resource ?. canEdit ?? ! ! resource ?. edit ;
85+ canDelete ?? ( resource ?. meta ?. canDelete || deleteButtonPropsFromProps ) ;
86+
87+ const isEditButtonVisible = canEdit ?? ! ! resource ?. edit ;
8888
8989 const listButtonProps : ListButtonProps | undefined = hasList
9090 ? {
91- resource : routerType === "legacy" ? resource ?. route : identifier ,
91+ resource : identifier ,
9292 }
9393 : undefined ;
9494 const editButtonProps : EditButtonProps | undefined = isEditButtonVisible
9595 ? {
9696 ...( isLoading ? { disabled : true } : { } ) ,
9797 type : "primary" ,
98- resource : routerType === "legacy" ? resource ?. route : identifier ,
98+ resource : identifier ,
9999 recordItemId : id ,
100100 }
101101 : undefined ;
102102 const deleteButtonProps : DeleteButtonProps | undefined = isDeleteButtonVisible
103103 ? {
104104 ...( isLoading ? { disabled : true } : { } ) ,
105- resource : routerType === "legacy" ? resource ?. route : identifier ,
105+ resource : identifier ,
106106 recordItemId : id ,
107107 onSuccess : ( ) => {
108- if ( routerType === "legacy" ) {
109- legacyGoList ( resource ?. route ?? resource ?. name ?? "" ) ;
110- } else {
111- go ( { to : goListPath } ) ;
112- }
108+ go ( { to : goListPath } ) ;
113109 } ,
114110 dataProviderName,
111+ ...deleteButtonPropsFromProps ,
115112 }
116113 : undefined ;
117114 const refreshButtonProps : RefreshButtonProps = {
118115 ...( isLoading ? { disabled : true } : { } ) ,
119- resource : routerType === "legacy" ? resource ?. route : identifier ,
116+ resource : identifier ,
120117 recordItemId : id ,
121118 dataProviderName,
122119 } ;
@@ -135,21 +132,14 @@ export const Show: React.FC<ShowProps> = ({
135132 < PageHeader
136133 backIcon = { goBackFromProps }
137134 onBack = {
138- action !== "list" && typeof action !== "undefined"
139- ? routerType === "legacy"
140- ? goBack
141- : back
142- : undefined
135+ action !== "list" && typeof action !== "undefined" ? back : undefined
143136 }
144137 title = {
145138 title ??
146139 translate (
147140 `${ identifier } .titles.show` ,
148141 `Show ${ getUserFriendlyName (
149- resource ?. meta ?. label ??
150- resource ?. options ?. label ??
151- resource ?. label ??
152- identifier ,
142+ resource ?. meta ?. label ?? identifier ,
153143 "singular" ,
154144 ) } `,
155145 )
@@ -170,11 +160,7 @@ export const Show: React.FC<ShowProps> = ({
170160 </ Space >
171161 }
172162 breadcrumb = {
173- typeof breadcrumb !== "undefined" ? (
174- < > { breadcrumb } </ > ?? undefined
175- ) : (
176- < Breadcrumb />
177- )
163+ typeof breadcrumb !== "undefined" ? < > { breadcrumb } </ > : < Breadcrumb />
178164 }
179165 { ...( headerProps ?? { } ) }
180166 >
0 commit comments