|
@@ -9,7 +9,7 @@ import { animateScroll } from 'react-scroll';
|
|
|
import { DropdownItem } from 'reactstrap';
|
|
import { DropdownItem } from 'reactstrap';
|
|
|
|
|
|
|
|
|
|
|
|
|
-import { exportAsMarkdown } from '~/client/services/page-operation';
|
|
|
|
|
|
|
+import { exportAsMarkdown, updateContentWidth } from '~/client/services/page-operation';
|
|
|
import { toastSuccess } from '~/client/util/apiNotification';
|
|
import { toastSuccess } from '~/client/util/apiNotification';
|
|
|
import { IPageToDeleteWithMeta, IPageToRenameWithMeta } from '~/interfaces/page';
|
|
import { IPageToDeleteWithMeta, IPageToRenameWithMeta } from '~/interfaces/page';
|
|
|
import { IPageWithSearchMeta } from '~/interfaces/search';
|
|
import { IPageWithSearchMeta } from '~/interfaces/search';
|
|
@@ -157,6 +157,8 @@ export const SearchResultContent: FC<Props> = (props: Props) => {
|
|
|
const { data: rendererOptions } = useSearchResultOptions(pageWithMeta.data.path, highlightKeywords);
|
|
const { data: rendererOptions } = useSearchResultOptions(pageWithMeta.data.path, highlightKeywords);
|
|
|
const { data: currentUser } = useCurrentUser();
|
|
const { data: currentUser } = useCurrentUser();
|
|
|
|
|
|
|
|
|
|
+ const [isExpandContentWidth, setIsExpandContentWidth] = useState(page.expandContentWidth);
|
|
|
|
|
+
|
|
|
const duplicateItemClickedHandler = useCallback(async(pageToDuplicate) => {
|
|
const duplicateItemClickedHandler = useCallback(async(pageToDuplicate) => {
|
|
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
|
const duplicatedHandler: OnDuplicatedFunction = (fromPath, toPath) => {
|
|
const duplicatedHandler: OnDuplicatedFunction = (fromPath, toPath) => {
|
|
@@ -201,6 +203,11 @@ export const SearchResultContent: FC<Props> = (props: Props) => {
|
|
|
openDeleteModal([pageToDelete], { onDeleted: onDeletedHandler });
|
|
openDeleteModal([pageToDelete], { onDeleted: onDeletedHandler });
|
|
|
}, [onDeletedHandler, openDeleteModal]);
|
|
}, [onDeletedHandler, openDeleteModal]);
|
|
|
|
|
|
|
|
|
|
+ const switchContentWidthHandler = useCallback(async(pageId: string, value: boolean) => {
|
|
|
|
|
+ await updateContentWidth(pageId, value);
|
|
|
|
|
+ setIsExpandContentWidth(value);
|
|
|
|
|
+ }, []);
|
|
|
|
|
+
|
|
|
const RightComponent = useCallback(() => {
|
|
const RightComponent = useCallback(() => {
|
|
|
if (page == null) {
|
|
if (page == null) {
|
|
|
return <></>;
|
|
return <></>;
|
|
@@ -214,6 +221,7 @@ export const SearchResultContent: FC<Props> = (props: Props) => {
|
|
|
pageId={page._id}
|
|
pageId={page._id}
|
|
|
revisionId={revisionId}
|
|
revisionId={revisionId}
|
|
|
path={page.path}
|
|
path={page.path}
|
|
|
|
|
+ expandContentWidth={isExpandContentWidth}
|
|
|
showPageControlDropdown={showPageControlDropdown}
|
|
showPageControlDropdown={showPageControlDropdown}
|
|
|
forceHideMenuItems={forceHideMenuItems}
|
|
forceHideMenuItems={forceHideMenuItems}
|
|
|
additionalMenuItemRenderer={props => <AdditionalMenuItems {...props} pageId={page._id} revisionId={revisionId} />}
|
|
additionalMenuItemRenderer={props => <AdditionalMenuItems {...props} pageId={page._id} revisionId={revisionId} />}
|
|
@@ -221,10 +229,12 @@ export const SearchResultContent: FC<Props> = (props: Props) => {
|
|
|
onClickDuplicateMenuItem={duplicateItemClickedHandler}
|
|
onClickDuplicateMenuItem={duplicateItemClickedHandler}
|
|
|
onClickRenameMenuItem={renameItemClickedHandler}
|
|
onClickRenameMenuItem={renameItemClickedHandler}
|
|
|
onClickDeleteMenuItem={deleteItemClickedHandler}
|
|
onClickDeleteMenuItem={deleteItemClickedHandler}
|
|
|
|
|
+ onClickSwitchContentWidth={switchContentWidthHandler}
|
|
|
/>
|
|
/>
|
|
|
</div>
|
|
</div>
|
|
|
);
|
|
);
|
|
|
- }, [page, showPageControlDropdown, forceHideMenuItems, duplicateItemClickedHandler, renameItemClickedHandler, deleteItemClickedHandler]);
|
|
|
|
|
|
|
+ }, [page, isExpandContentWidth, showPageControlDropdown, forceHideMenuItems,
|
|
|
|
|
+ duplicateItemClickedHandler, renameItemClickedHandler, deleteItemClickedHandler, switchContentWidthHandler]);
|
|
|
|
|
|
|
|
// return if page or growiRenderer is null
|
|
// return if page or growiRenderer is null
|
|
|
if (page == null || rendererOptions == null) return <></>;
|
|
if (page == null || rendererOptions == null) return <></>;
|