@@ -8,6 +8,7 @@ import type {
88import {
99 isIPageInfoForEntity , isIPageInfoForOperation ,
1010} from '@growi/core' ;
11+ import { pagePathUtils } from '@growi/core/dist/utils' ;
1112import { useRect } from '@growi/ui/dist/utils' ;
1213import { useTranslation } from 'next-i18next' ;
1314import { DropdownItem } from 'reactstrap' ;
@@ -29,7 +30,7 @@ import {
2930} from '~/stores/ui' ;
3031import loggerFactory from '~/utils/logger' ;
3132
32- import { useSWRxPageInfo , useSWRxTagsInfo } from '../../../stores/page' ;
33+ import { useSWRxPageInfo , useSWRxTagsInfo , useCurrentPagePath } from '../../../stores/page' ;
3334import { useSWRxUsersList } from '../../../stores/user' ;
3435import type { AdditionalMenuItemsRendererProps , ForceHideMenuItems } from '../Common/Dropdown/PageItemControl' ;
3536import {
@@ -137,6 +138,11 @@ const PageControlsSubstance = (props: PageControlsSubstanceProps): JSX.Element =
137138 const { data : isDeviceLargerThanMd } = useIsDeviceLargerThanMd ( ) ;
138139 const { data : isSearchPage } = useIsSearchPage ( ) ;
139140 const { data : isUsersHomepageDeletionEnabled } = useIsUsersHomepageDeletionEnabled ( ) ;
141+ const { data : currentPagePath } = useCurrentPagePath ( ) ;
142+
143+ const isUsersHomepage = pagePathUtils . isUsersHomepage ( currentPagePath ?? '' ) ;
144+ console . log ( isUsersHomepage ) ;
145+
140146
141147 const { mutate : mutatePageInfo } = useSWRxPageInfo ( pageId , shareLinkId ) ;
142148
@@ -283,6 +289,18 @@ const PageControlsSubstance = (props: PageControlsSubstanceProps): JSX.Element =
283289 const _isIPageInfoForOperation = isIPageInfoForOperation ( pageInfo ) ;
284290 const isViewMode = editorMode === EditorMode . View ;
285291
292+ const isEnableActions = ( ) => {
293+ if ( isGuestUser ) {
294+ return false ;
295+ }
296+
297+ if ( isUsersHomepage && ! isUsersHomepageDeletionEnabled ) {
298+ return false ;
299+ }
300+
301+ return true ;
302+ } ;
303+
286304 return (
287305 < div className = { `${ styles [ 'grw-page-controls' ] } hstack gap-2` } ref = { pageControlsRef } >
288306 { isViewMode && isDeviceLargerThanMd && ! isSearchPage && ! isSearchPage && (
@@ -335,7 +353,7 @@ const PageControlsSubstance = (props: PageControlsSubstanceProps): JSX.Element =
335353 < PageItemControl
336354 pageId = { pageId }
337355 pageInfo = { pageInfo }
338- isEnableActions = { ! isGuestUser && isUsersHomepageDeletionEnabled }
356+ isEnableActions = { isEnableActions ( ) }
339357 isReadOnlyUser = { ! ! isReadOnlyUser }
340358 forceHideMenuItems = { forceHideMenuItemsWithAdditions }
341359 additionalMenuItemOnTopRenderer = { ! isReadOnlyUser ? additionalMenuItemOnTopRenderer : undefined }
0 commit comments