|
@@ -1,30 +1,47 @@
|
|
|
import type { FC } from 'react';
|
|
import type { FC } from 'react';
|
|
|
|
|
|
|
|
|
|
+import type { IUser } from '@growi/core';
|
|
|
|
|
+import { DevidedPagePath } from '@growi/core/dist/models';
|
|
|
|
|
+
|
|
|
import { useSWRxCurrentPage } from '~/stores/page';
|
|
import { useSWRxCurrentPage } from '~/stores/page';
|
|
|
|
|
|
|
|
import { PagePathHeader } from './PagePathHeader';
|
|
import { PagePathHeader } from './PagePathHeader';
|
|
|
import { PageTitleHeader } from './PageTitleHeader';
|
|
import { PageTitleHeader } from './PageTitleHeader';
|
|
|
|
|
+import { UserList } from './UserList';
|
|
|
|
|
|
|
|
import styles from './PageHeader.module.scss';
|
|
import styles from './PageHeader.module.scss';
|
|
|
|
|
|
|
|
const moduleClass = styles['page-header'] ?? '';
|
|
const moduleClass = styles['page-header'] ?? '';
|
|
|
|
|
|
|
|
-export const PageHeader: FC = () => {
|
|
|
|
|
|
|
+type Props = {
|
|
|
|
|
+ userList: IUser[]
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+export const PageHeader: FC<Props> = (props) => {
|
|
|
|
|
+ const { userList } = props;
|
|
|
const { data: currentPage } = useSWRxCurrentPage();
|
|
const { data: currentPage } = useSWRxCurrentPage();
|
|
|
|
|
|
|
|
if (currentPage == null) {
|
|
if (currentPage == null) {
|
|
|
return <></>;
|
|
return <></>;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ const dPagePath = new DevidedPagePath(currentPage.path, true);
|
|
|
|
|
+
|
|
|
return (
|
|
return (
|
|
|
<div className={moduleClass}>
|
|
<div className={moduleClass}>
|
|
|
<PagePathHeader
|
|
<PagePathHeader
|
|
|
currentPage={currentPage}
|
|
currentPage={currentPage}
|
|
|
/>
|
|
/>
|
|
|
- <PageTitleHeader
|
|
|
|
|
- className="mt-2"
|
|
|
|
|
- currentPage={currentPage}
|
|
|
|
|
- />
|
|
|
|
|
|
|
+ <div className="row mt-2">
|
|
|
|
|
+ <PageTitleHeader
|
|
|
|
|
+ className="col"
|
|
|
|
|
+ currentPage={currentPage}
|
|
|
|
|
+ />
|
|
|
|
|
+ <UserList
|
|
|
|
|
+ className={`z-2 ${dPagePath.isRoot ? '' : 'col mt-2'}`}
|
|
|
|
|
+ userList={userList}
|
|
|
|
|
+ />
|
|
|
|
|
+ </div>
|
|
|
</div>
|
|
</div>
|
|
|
);
|
|
);
|
|
|
};
|
|
};
|