page controls - wip

* page breadcrumb
* other minor additions and fixes
This commit is contained in:
Philipinho
2023-10-30 14:53:49 +00:00
parent 730e925b6a
commit dd62d2bb1a
13 changed files with 429 additions and 119 deletions
+22 -8
View File
@@ -1,14 +1,28 @@
import { useParams } from 'react-router-dom';
import React, { Suspense } from 'react';
const Editor = React.lazy(() => import('@/features/editor/editor'));
import React, { useEffect } from 'react';
import { useAtom } from 'jotai/index';
import usePage from '@/features/page/hooks/usePage';
import Editor from '@/features/editor/editor';
import { pageAtom } from '@/features/page/atoms/page-atom';
export default function Page() {
const { pageId } = useParams();
const [, setPage] = useAtom(pageAtom(pageId));
const { pageQuery } = usePage(pageId);
return (
<Suspense fallback={<div>Loading...</div>}>
<Editor key={pageId} pageId={pageId} />
</Suspense>
);
useEffect(() => {
if (pageQuery.data) {
setPage(pageQuery.data);
}
}, [pageQuery.data, pageQuery.isLoading, setPage, pageId]);
if (pageQuery.isLoading) {
return <div>Loading...</div>;
}
if (pageQuery.isError) {
return <div>Error fetching page data.</div>;
}
return (<Editor key={pageId} pageId={pageId} />);
}