From 790a84d742279c8f29826365f0955d1f764e29c3 Mon Sep 17 00:00:00 2001 From: QiShaoXuan Date: Fri, 23 Dec 2022 19:29:17 +0800 Subject: [PATCH 1/4] feat: just first page in workspace init an introduce markdown --- .../src/pages/workspace/[workspaceId]/[pageId].tsx | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/packages/app/src/pages/workspace/[workspaceId]/[pageId].tsx b/packages/app/src/pages/workspace/[workspaceId]/[pageId].tsx index 7e7fb325ec..4b5b5f30fe 100644 --- a/packages/app/src/pages/workspace/[workspaceId]/[pageId].tsx +++ b/packages/app/src/pages/workspace/[workspaceId]/[pageId].tsx @@ -40,7 +40,8 @@ const Page: NextPageWithLayout = () => { editorContainer.current?.appendChild(editor); setEditor?.current?.(editor); if (currentPage!.isEmpty) { - const title = 'Welcome to the AFFiNE Alpha'; + const isFirstPage = currentWorkspace?.meta.pageMetas.length === 1; + const title = isFirstPage ? 'Welcome to the AFFiNE Alpha' : ''; const pageId = currentPage!.addBlock({ flavour: 'affine:page', title, @@ -49,9 +50,12 @@ const Page: NextPageWithLayout = () => { { flavour: 'affine:group' }, pageId ); - editor.clipboard.importMarkdown(exampleMarkdown, `${groupId}`); - - currentWorkspace!.setPageMeta(currentPage!.id, { title }); + currentPage!.addBlock({ flavour: 'affine:group' }, pageId); + // If this is a first page in workspace, init an introduction markdown + if (isFirstPage) { + editor.clipboard.importMarkdown(exampleMarkdown, `${groupId}`); + currentWorkspace!.setPageMeta(currentPage!.id, { title }); + } currentPage!.resetHistory(); } } From c3c6a710e33e8e081f5e5a21c4140e441a88a9b3 Mon Sep 17 00:00:00 2001 From: DiamondThree Date: Fri, 23 Dec 2022 19:30:25 +0800 Subject: [PATCH 2/4] fix: websocket content error --- .../app/src/providers/app-state-provider/dynamic-blocksuite.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/app/src/providers/app-state-provider/dynamic-blocksuite.tsx b/packages/app/src/providers/app-state-provider/dynamic-blocksuite.tsx index 8315603738..0495063a98 100644 --- a/packages/app/src/providers/app-state-provider/dynamic-blocksuite.tsx +++ b/packages/app/src/providers/app-state-provider/dynamic-blocksuite.tsx @@ -34,7 +34,7 @@ const DynamicBlocksuite = ({ new Promise(async resolve => { const workspace = new StoreWorkspace({ room: workspaceId, - providers: [], + providers: [IndexedDBDocProvider], }).register(BlockSchema); if (websocket && token.refresh) { // FIXME: if add websocket provider, the first page will be blank From 9d01365815a8bd4ae908d80ca8b0f493340b6a4c Mon Sep 17 00:00:00 2001 From: MingLiang Wang Date: Fri, 23 Dec 2022 19:37:32 +0800 Subject: [PATCH 3/4] feat: fix create new url --- .../workspace-create/workspace-create.tsx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/app/src/components/workspace-slider-bar/WorkspaceSelector/WorkspaceItem/CreateWorkspaceItem/workspace-create/workspace-create.tsx b/packages/app/src/components/workspace-slider-bar/WorkspaceSelector/WorkspaceItem/CreateWorkspaceItem/workspace-create/workspace-create.tsx index 5801775246..61c03ae1b0 100644 --- a/packages/app/src/components/workspace-slider-bar/WorkspaceSelector/WorkspaceItem/CreateWorkspaceItem/workspace-create/workspace-create.tsx +++ b/packages/app/src/components/workspace-slider-bar/WorkspaceSelector/WorkspaceItem/CreateWorkspaceItem/workspace-create/workspace-create.tsx @@ -67,11 +67,11 @@ export const WorkspaceCreate = ({ open, onClose }: WorkspaceCreateProps) => { setCanCreate(true); const blobId = await createDefaultHeadImg(workspaceName); createWorkspace({ name: workspaceName, avatar: blobId }) - .then(data => { + .then(async data => { + await refreshWorkspacesMeta(); // eslint-disable-next-line @typescript-eslint/ban-ts-comment // @ts-ignore - router.push(`/workspace/${data.created_at}`); - refreshWorkspacesMeta(); + router.push(`/workspace/${data.id}`); onClose(); }) .catch(err => { From 5d49731dd1396d4f102120bba5b8c29c8257049f Mon Sep 17 00:00:00 2001 From: QiShaoXuan Date: Fri, 23 Dec 2022 19:43:31 +0800 Subject: [PATCH 4/4] feat: add loading in middle page --- packages/app/src/components/workspace-layout/index.tsx | 3 ++- packages/app/src/pages/workspace/[workspaceId]/index.tsx | 3 ++- packages/app/src/pages/workspace/index.tsx | 3 ++- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/packages/app/src/components/workspace-layout/index.tsx b/packages/app/src/components/workspace-layout/index.tsx index 3da85a5ad4..b77d86fada 100644 --- a/packages/app/src/components/workspace-layout/index.tsx +++ b/packages/app/src/components/workspace-layout/index.tsx @@ -4,10 +4,11 @@ import { useRouter } from 'next/router'; import { StyledPage, StyledWrapper } from './styles'; import { PropsWithChildren } from 'react'; import useEnsureWorkspace from '@/hooks/use-ensure-workspace'; +import { PageLoading } from '@/components/loading'; export const WorkspaceDefender = ({ children }: PropsWithChildren) => { const { workspaceLoaded } = useEnsureWorkspace(); - return <>{workspaceLoaded ? children : null}; + return <>{workspaceLoaded ? children : }; }; export const WorkspaceLayout = ({ children }: PropsWithChildren) => { diff --git a/packages/app/src/pages/workspace/[workspaceId]/index.tsx b/packages/app/src/pages/workspace/[workspaceId]/index.tsx index c7b158b2f9..b3bf95f8c5 100644 --- a/packages/app/src/pages/workspace/[workspaceId]/index.tsx +++ b/packages/app/src/pages/workspace/[workspaceId]/index.tsx @@ -2,6 +2,7 @@ import { useEffect } from 'react'; import { useRouter } from 'next/router'; import { useAppState } from '@/providers/app-state-provider/context'; import useEnsureWorkspace from '@/hooks/use-ensure-workspace'; +import { PageLoading } from '@/components/loading'; const WorkspaceIndex = () => { const router = useRouter(); @@ -31,7 +32,7 @@ const WorkspaceIndex = () => { workspaceLoaded, ]); - return <>; + return ; }; export default WorkspaceIndex; diff --git a/packages/app/src/pages/workspace/index.tsx b/packages/app/src/pages/workspace/index.tsx index d81e348517..1fe3ba2c17 100644 --- a/packages/app/src/pages/workspace/index.tsx +++ b/packages/app/src/pages/workspace/index.tsx @@ -2,6 +2,7 @@ import { useEffect } from 'react'; import { useRouter } from 'next/router'; import { useAppState } from '@/providers/app-state-provider'; import useEnsureWorkspace from '@/hooks/use-ensure-workspace'; +import { PageLoading } from '@/components/loading'; export const WorkspaceIndex = () => { const router = useRouter(); @@ -14,7 +15,7 @@ export const WorkspaceIndex = () => { } }, [currentWorkspaceId, router, workspaceLoaded]); - return <>; + return ; }; export default WorkspaceIndex;