diff --git a/apps/ligo-virgo/src/pages/AppRoutes.tsx b/apps/ligo-virgo/src/pages/AppRoutes.tsx
index 855f717b28..4f1d845324 100644
--- a/apps/ligo-virgo/src/pages/AppRoutes.tsx
+++ b/apps/ligo-virgo/src/pages/AppRoutes.tsx
@@ -21,7 +21,7 @@ export function LigoVirgoRoutes() {
/>
} />
diff --git a/apps/ligo-virgo/src/pages/workspace/Edgeless.tsx b/apps/ligo-virgo/src/pages/workspace/Edgeless.tsx
index c84ceda481..9d0b6a3aa1 100644
--- a/apps/ligo-virgo/src/pages/workspace/Edgeless.tsx
+++ b/apps/ligo-virgo/src/pages/workspace/Edgeless.tsx
@@ -14,7 +14,7 @@ type EdgelessProps = {
};
export const Edgeless = (props: EdgelessProps) => {
- const { page_id } = useParams();
+ const { pageId } = useParams();
const { user } = useUserAndSpaces();
useEffect(() => {
@@ -31,7 +31,5 @@ export const Edgeless = (props: EdgelessProps) => {
update_recent_pages();
}, [user, props.workspace]);
- return (
-
- );
+ return ;
};
diff --git a/apps/ligo-virgo/src/pages/workspace/Home.tsx b/apps/ligo-virgo/src/pages/workspace/Home.tsx
index 3ae0da1da5..5034787eb1 100644
--- a/apps/ligo-virgo/src/pages/workspace/Home.tsx
+++ b/apps/ligo-virgo/src/pages/workspace/Home.tsx
@@ -5,22 +5,23 @@ import { useNavigate, useParams } from 'react-router-dom';
export function WorkspaceHome() {
const navigate = useNavigate();
- const { workspace_id } = useParams();
+ const { workspaceId } = useParams();
const { user } = useUserAndSpaces();
useEffect(() => {
- const navigate_to_user_initial_page = async () => {
- const [recent_pages, user_initial_page_id] = await Promise.all([
- services.api.userConfig.getRecentPages(workspace_id, user.id),
+ const navigateToUserInitialPage = async () => {
+ const [recentPages, userInitialPageId] = await Promise.all([
+ services.api.userConfig.getRecentPages(workspaceId, user.id),
services.api.userConfig.getUserInitialPage(
- workspace_id,
+ workspaceId,
user.id
),
]);
- if (recent_pages.length === 0) {
+ // if recent pages if null, run initialize task
+ if (recentPages.length === 0) {
await services.api.editorBlock.copyTemplateToPage(
- workspace_id,
- user_initial_page_id,
+ workspaceId,
+ userInitialPageId,
TemplateFactory.generatePageTemplateByGroupKeys({
name: '👋 Get Started with AFFiNE',
groupKeys: [
@@ -31,11 +32,12 @@ export function WorkspaceHome() {
})
);
}
-
- navigate(`/${workspace_id}/${user_initial_page_id}`);
+ if (userInitialPageId) {
+ navigate(`/${workspaceId}/${userInitialPageId}`);
+ }
};
- navigate_to_user_initial_page();
- }, [navigate, user.id, workspace_id]);
+ navigateToUserInitialPage();
+ }, [navigate, user.id, workspaceId]);
return null;
}
diff --git a/apps/ligo-virgo/src/pages/workspace/WorkspaceContainer.tsx b/apps/ligo-virgo/src/pages/workspace/WorkspaceContainer.tsx
index eb424f88c7..a681e98803 100644
--- a/apps/ligo-virgo/src/pages/workspace/WorkspaceContainer.tsx
+++ b/apps/ligo-virgo/src/pages/workspace/WorkspaceContainer.tsx
@@ -7,27 +7,20 @@ import { WorkspaceHome } from './Home';
import Pages from './pages';
export function WorkspaceContainer() {
- const { workspace_id } = useParams();
+ const { workspaceId } = useParams();
const { user, currentSpaceId } = useUserAndSpaces();
- if (
- user &&
- ![currentSpaceId, 'affine2vin277tcmafwq'].includes(workspace_id)
- ) {
- // return ;
- }
-
return (
}>
} />
}
+ path="/:pageId/edgeless"
+ element={}
/>
}
+ path="/:pageId"
+ element={}
/>
} />
diff --git a/apps/ligo-virgo/src/pages/workspace/docs/Page.tsx b/apps/ligo-virgo/src/pages/workspace/docs/Page.tsx
index ba1897cc4a..2a4c4f1aa5 100644
--- a/apps/ligo-virgo/src/pages/workspace/docs/Page.tsx
+++ b/apps/ligo-virgo/src/pages/workspace/docs/Page.tsx
@@ -34,7 +34,7 @@ export function Page(props: PageProps) {
const [activeTab, setActiveTab] = useState(
TabMap.get(TAB_TITLE.PAGES).value
);
- const { page_id } = useParams();
+ const { pageId } = useParams();
const { showSpaceSidebar, fixedDisplay, setSpaceSidebarVisible } =
useShowSpaceSidebar();
const dailyNotesFlag = useFlag('BooleanDailyNotes', false);
@@ -79,7 +79,7 @@ export function Page(props: PageProps) {
- {page_id ? : null}
+ {pageId ? : null}
@@ -91,7 +91,7 @@ export function Page(props: PageProps) {
-
+
);
}
diff --git a/apps/ligo-virgo/src/pages/workspace/docs/collapsible-page-tree.tsx b/apps/ligo-virgo/src/pages/workspace/docs/collapsible-page-tree.tsx
index 9aef73aa22..13f81c10f5 100644
--- a/apps/ligo-virgo/src/pages/workspace/docs/collapsible-page-tree.tsx
+++ b/apps/ligo-virgo/src/pages/workspace/docs/collapsible-page-tree.tsx
@@ -38,7 +38,7 @@ export type CollapsiblePageTreeProps = {
export function CollapsiblePageTree(props: CollapsiblePageTreeProps) {
const { className, style, children, title, initialOpen = true } = props;
const navigate = useNavigate();
- const { workspace_id, page_id } = useParams();
+ const { workspaceId, pageId } = useParams();
const { handleAddPage } = usePageTree();
const { addPageToday } = useCalendarHeatmap();
@@ -46,18 +46,18 @@ export function CollapsiblePageTree(props: CollapsiblePageTreeProps) {
const [open, setOpen] = useState(initialOpen);
const create_page = useCallback(async () => {
- if (page_id) {
+ if (pageId) {
const newPage = await services.api.editorBlock.create({
- workspace: workspace_id,
+ workspace: workspaceId,
type: 'page' as const,
});
await handleAddPage(newPage.id);
addPageToday();
- navigate(`/${workspace_id}/${newPage.id}`);
+ navigate(`/${workspaceId}/${newPage.id}`);
}
- }, [addPageToday, handleAddPage, navigate, page_id, workspace_id]);
+ }, [addPageToday, handleAddPage, navigate, pageId, workspaceId]);
const [newPageBtnVisible, setNewPageBtnVisible] = useState(false);
diff --git a/apps/ligo-virgo/src/pages/workspace/docs/components/toc/TOC.tsx b/apps/ligo-virgo/src/pages/workspace/docs/components/toc/TOC.tsx
index 0a5c442590..f22bf43fea 100644
--- a/apps/ligo-virgo/src/pages/workspace/docs/components/toc/TOC.tsx
+++ b/apps/ligo-virgo/src/pages/workspace/docs/components/toc/TOC.tsx
@@ -116,7 +116,7 @@ const renderTOCContent = tocDataSource => {
};
export const TOC = () => {
- const { page_id } = useParams();
+ const { pageId } = useParams();
const [tocDataSource, setTocDataSource] = useState([]);
const [activeBlockId, setActiveBlockId] = useState('');
@@ -124,7 +124,7 @@ export const TOC = () => {
const listenerMapRef = useRef(new Map());
const { currentEditors } = useCurrentEditors();
- const editor = currentEditors[page_id] as Virgo;
+ const editor = currentEditors[pageId] as Virgo;
const updateTocDataSource = useCallback(async () => {
if (!editor) {
@@ -134,7 +134,7 @@ export const TOC = () => {
const listenerMap = listenerMapRef.current;
/* page listener: trigger update-notice when add new group */
- const pageAsyncBlock = (await editor.getBlockByIds([page_id]))?.[0];
+ const pageAsyncBlock = (await editor.getBlockByIds([pageId]))?.[0];
if (!listenerMap.has(pageAsyncBlock.id)) {
listenerMap.set(
pageAsyncBlock.id,
@@ -144,7 +144,7 @@ export const TOC = () => {
/* block listener: trigger update-notice when change block content */
const { children = [] } =
- (await editor.queryByPageId(page_id))?.[0] || {};
+ (await editor.queryByPageId(pageId))?.[0] || {};
const asyncBlocks = (await editor.getBlockByIds(children)) || [];
const { tocContents } = await getContentByAsyncBlocks(
asyncBlocks,
@@ -155,7 +155,7 @@ export const TOC = () => {
/* toc: flat content */
const tocDataSource = getPageTOC(asyncBlocks, tocContents);
setTocDataSource(tocDataSource);
- }, [editor, page_id]);
+ }, [editor, pageId]);
/* init toc and add page/block update-listener & unmount-listener */
useEffect(() => {
diff --git a/libs/components/common/src/lib/text/plugins/reflink.tsx b/libs/components/common/src/lib/text/plugins/reflink.tsx
index 2b0c42a643..5cbd90478f 100644
--- a/libs/components/common/src/lib/text/plugins/reflink.tsx
+++ b/libs/components/common/src/lib/text/plugins/reflink.tsx
@@ -2,8 +2,8 @@ import { useNavigate, useParams } from 'react-router-dom';
import { Descendant } from 'slate';
// eslint-disable-next-line @nrwl/nx/enforce-module-boundaries
-import { BlockSearchItem } from '@toeverything/datasource/jwt';
import { styled } from '@toeverything/components/ui';
+import { BlockSearchItem } from '@toeverything/datasource/jwt';
import { BlockPreview } from '../../block-preview';
@@ -26,14 +26,14 @@ type InlineRefLinkProps = {
};
export const InlineRefLink = ({ block, pageId }: InlineRefLinkProps) => {
- const { workspace_id } = useParams();
+ const { workspaceId } = useParams();
const navigate = useNavigate();
if (block) {
return (
navigate(`/${workspace_id}/${pageId}`)}
+ onClick={() => navigate(`/${workspaceId}/${pageId}`)}
/>
);
}
diff --git a/libs/components/editor-blocks/src/blocks/code/CodeView.tsx b/libs/components/editor-blocks/src/blocks/code/CodeView.tsx
index bfdabf0199..a6a47e261c 100644
--- a/libs/components/editor-blocks/src/blocks/code/CodeView.tsx
+++ b/libs/components/editor-blocks/src/blocks/code/CodeView.tsx
@@ -164,9 +164,6 @@ export const CodeView = ({ block, editor }: CreateCodeView) => {
};
useEffect(() => {
handleLangChange(langType ? langType : DEFAULT_LANG);
- // setTimeout(() => {
- // focusCode();
- // }, 100);
}, []);
const copyCode = () => {
diff --git a/libs/components/editor-blocks/src/blocks/page/PageView.tsx b/libs/components/editor-blocks/src/blocks/page/PageView.tsx
index 123021e361..cb932670bd 100644
--- a/libs/components/editor-blocks/src/blocks/page/PageView.tsx
+++ b/libs/components/editor-blocks/src/blocks/page/PageView.tsx
@@ -16,7 +16,7 @@ import {
} from '../../components/text-manage';
export const PageView = ({ block, editor }: CreateView) => {
- const { workspace_id } = useParams();
+ const { workspaceId } = useParams();
const textRef = useRef(null);
const [backLinks, setBackLinks] =
useState>>();
@@ -100,7 +100,7 @@ export const PageView = ({ block, editor }: CreateView) => {
className={style9(styles.content)}
suppressContentEditableWarning
> */}
-
+
{/*{block.childrenIds.map(childId => (*/}
{/* */}
{/*))}*/}
diff --git a/libs/components/editor-blocks/src/blocks/ref-link/ref-link-view.tsx b/libs/components/editor-blocks/src/blocks/ref-link/ref-link-view.tsx
index e75773b641..ac2b5eb2cb 100644
--- a/libs/components/editor-blocks/src/blocks/ref-link/ref-link-view.tsx
+++ b/libs/components/editor-blocks/src/blocks/ref-link/ref-link-view.tsx
@@ -6,16 +6,16 @@ import { CreateView } from '@toeverything/framework/virgo';
type RefLinkView = CreateView;
export const RefLinkView = ({ block, editor }: RefLinkView) => {
- const page_id = useMemo(() => block.getProperty('reference'), [block]);
+ const pageId = useMemo(() => block.getProperty('reference'), [block]);
const [block_content, set_block] =
useState>[number]>();
useEffect(() => {
editor
- .search({ tag: `id:${page_id}` })
+ .search({ tag: `id:${pageId}` })
.then(block => set_block(block[0]));
- }, [editor, page_id]);
+ }, [editor, pageId]);
- return ;
+ return ;
};
diff --git a/libs/components/editor-blocks/src/blocks/text/TextView.tsx b/libs/components/editor-blocks/src/blocks/text/TextView.tsx
index baae481c91..094d05f755 100644
--- a/libs/components/editor-blocks/src/blocks/text/TextView.tsx
+++ b/libs/components/editor-blocks/src/blocks/text/TextView.tsx
@@ -90,7 +90,9 @@ export const TextView = ({
await block.removeChildren();
await block.after(nextBlock);
- editor.selectionManager.activeNodeByNodeId(nextBlock.id);
+ setTimeout(() => {
+ editor.selectionManager.activeNodeByNodeId(nextBlock.id, 'start');
+ });
return true;
};
diff --git a/libs/components/editor-plugins/src/comment/use-add-comment.ts b/libs/components/editor-plugins/src/comment/use-add-comment.ts
index d5572801aa..cda2976882 100644
--- a/libs/components/editor-plugins/src/comment/use-add-comment.ts
+++ b/libs/components/editor-plugins/src/comment/use-add-comment.ts
@@ -1,6 +1,6 @@
-import { useState, useCallback } from 'react';
-import { useParams } from 'react-router-dom';
import { services } from '@toeverything/datasource/db-service';
+import { useCallback, useState } from 'react';
+import { useParams } from 'react-router-dom';
import { WithEditorSelectionType } from '../menu/inline-menu/types';
export const useAddComment = ({
@@ -8,7 +8,7 @@ export const useAddComment = ({
selectionInfo,
setShow,
}: WithEditorSelectionType) => {
- const { workspace_id: workspaceId, page_id: pageId } = useParams();
+ const { workspaceId, pageId } = useParams();
const [currentComment, setCurrentComment] = useState('');
const createComment = useCallback(async (): Promise<{
diff --git a/libs/components/editor-plugins/src/menu/double-link-menu/DoubleLinkMenu.tsx b/libs/components/editor-plugins/src/menu/double-link-menu/DoubleLinkMenu.tsx
index 90f5e10c43..d83a09eff6 100644
--- a/libs/components/editor-plugins/src/menu/double-link-menu/DoubleLinkMenu.tsx
+++ b/libs/components/editor-plugins/src/menu/double-link-menu/DoubleLinkMenu.tsx
@@ -44,7 +44,7 @@ export const DoubleLinkMenu = ({
hooks,
style,
}: DoubleLinkMenuProps) => {
- const { page_id: curPageId } = useParams();
+ const { pageId: curPageId } = useParams();
const [isOpen, setIsOpen] = useState(false);
const [anchorEl, setAnchorEl] = useState(null);
const dialogRef = useRef();
diff --git a/libs/components/editor-plugins/src/menu/link-menu/LinkMenu.tsx b/libs/components/editor-plugins/src/menu/link-menu/LinkMenu.tsx
index ddd178e449..81856eba4f 100644
--- a/libs/components/editor-plugins/src/menu/link-menu/LinkMenu.tsx
+++ b/libs/components/editor-plugins/src/menu/link-menu/LinkMenu.tsx
@@ -42,7 +42,7 @@ const normalizeUrl = (url: string) => {
};
export const LinkMenu = ({ editor, hooks }: LinkMenuProps) => {
- const { page_id: curPageId } = useParams();
+ const { pageId: curPageId } = useParams();
const [isOpen, setIsOpen] = useState(false);
const [anchorEl, setAnchorEl] = useState(null);
const dialogRef = useRef();
diff --git a/libs/components/editor-plugins/src/search/Search.tsx b/libs/components/editor-plugins/src/search/Search.tsx
index 6092862416..3511b610c3 100644
--- a/libs/components/editor-plugins/src/search/Search.tsx
+++ b/libs/components/editor-plugins/src/search/Search.tsx
@@ -47,7 +47,7 @@ type SearchProps = {
};
export const Search = (props: SearchProps) => {
- const { workspace_id: workspaceId } = useParams();
+ const { workspaceId } = useParams();
const navigate = useNavigate();
const [open, setOpen] = useState(false);
diff --git a/libs/components/layout/src/header/EditorBoardSwitcher/Switcher.tsx b/libs/components/layout/src/header/EditorBoardSwitcher/Switcher.tsx
index 6c8ab70372..918603d5ef 100644
--- a/libs/components/layout/src/header/EditorBoardSwitcher/Switcher.tsx
+++ b/libs/components/layout/src/header/EditorBoardSwitcher/Switcher.tsx
@@ -16,7 +16,7 @@ export const Switcher = () => {
if (targetViewMode === pageViewMode) {
return;
}
- const workspaceId = params['workspace_id'];
+ const workspaceId = params['workspaceId'];
/**
* There are two possible modes:
* Page mode: /{workspaceId}/{pageId}
diff --git a/libs/components/layout/src/header/Header.tsx b/libs/components/layout/src/header/Header.tsx
index 0f9028b9ae..b025c81023 100644
--- a/libs/components/layout/src/header/Header.tsx
+++ b/libs/components/layout/src/header/Header.tsx
@@ -46,7 +46,7 @@ export const AffineHeader = () => {
useUserAndSpaces();
const showCenterTab =
- (params['workspace_id'] || pathname.includes('/space/')) && params['*'];
+ (params['workspaceId'] || pathname.includes('/space/')) && params['*'];
if (hideAffineHeader(pathname)) {
return null;
@@ -82,7 +82,7 @@ export const AffineHeader = () => {
isEdgelessView
? navigate(
`/${
- params['workspace_id'] ||
+ params['workspaceId'] ||
'space'
}/${params['*'].slice(0, -11)}`
)
@@ -108,7 +108,7 @@ export const AffineHeader = () => {
? null
: navigate(
`/${
- params['workspace_id'] ||
+ params['workspaceId'] ||
'space'
}/${params['*']}` + '/edgeless'
)
diff --git a/libs/components/layout/src/header/PageSettingPortal.tsx b/libs/components/layout/src/header/PageSettingPortal.tsx
index 115b5c95fd..6dfc07fec8 100644
--- a/libs/components/layout/src/header/PageSettingPortal.tsx
+++ b/libs/components/layout/src/header/PageSettingPortal.tsx
@@ -50,7 +50,7 @@ const MESSAGES = {
function PageSettingPortal() {
const [alertOpen, setAlertOpen] = useState(false);
- const { workspace_id } = useParams();
+ const { workspaceId } = useParams();
const [pageBlock, setPageBlock] = useState();
const params = useParams();
@@ -64,7 +64,7 @@ function PageSettingPortal() {
const fetchPageBlock = useCallback(async () => {
const dbPageBlock = await services.api.editorBlock.getBlock(
- workspace_id,
+ workspaceId,
pageId
);
if (!dbPageBlock) return;
@@ -78,11 +78,11 @@ function PageSettingPortal() {
//@ts-ignore
text.value[0].text,
});
- }, [workspace_id, pageId]);
+ }, [workspaceId, pageId]);
useEffect(() => {
fetchPageBlock();
- }, [workspace_id, pageId, fetchPageBlock]);
+ }, [workspaceId, pageId, fetchPageBlock]);
const redirectToPage = (newWorkspaceId: string, newPageId: string) => {
navigate('/' + newWorkspaceId + '/' + newPageId);
};
@@ -90,23 +90,23 @@ function PageSettingPortal() {
const handleDuplicatePage = async () => {
//create page
const newPage = await services.api.editorBlock.create({
- workspace: workspace_id,
+ workspace: workspaceId,
type: 'page' as const,
});
//add page to tree
await services.api.pageTree.addNextPageToWorkspace(
- workspace_id,
+ workspaceId,
pageId,
newPage.id
);
//copy source page to new page
await services.api.editorBlock.copyPage(
- workspace_id,
+ workspaceId,
pageId,
newPage.id
);
- redirectToPage(workspace_id, newPage.id);
+ redirectToPage(workspaceId, newPage.id);
};
const handleCopy = () => {
@@ -128,7 +128,7 @@ function PageSettingPortal() {
.inspector()
.load()
.then(() => {
- window.location.href = `/${workspace_id}/`;
+ window.location.href = `/${workspaceId}/`;
});
};
@@ -145,7 +145,7 @@ function PageSettingPortal() {
fullWidthChecked: checked,
},
id: pageId,
- workspace: workspace_id,
+ workspace: workspaceId,
});
};
diff --git a/libs/components/layout/src/header/Title.tsx b/libs/components/layout/src/header/Title.tsx
index 0447cd52f6..dcd0c9e356 100644
--- a/libs/components/layout/src/header/Title.tsx
+++ b/libs/components/layout/src/header/Title.tsx
@@ -12,7 +12,7 @@ import { useUserAndSpaces } from '@toeverything/datasource/state';
export const CurrentPageTitle = () => {
const { user } = useUserAndSpaces();
const params = useParams();
- const { workspace_id } = params;
+ const { workspaceId } = params;
const [pageId, setPageId] = useState('');
const [pageTitle, setPageTitle] = useState();
/* card.7 */
@@ -25,9 +25,9 @@ export const CurrentPageTitle = () => {
}, [params]);
const fetchPageTitle = useCallback(async () => {
- if (!workspace_id || !pageId) return;
+ if (!workspaceId || !pageId) return;
const [pageEditorBlock] = await services.api.editorBlock.get({
- workspace: workspace_id,
+ workspace: workspaceId,
ids: [pageId],
});
/* card.7 */
@@ -39,21 +39,21 @@ export const CurrentPageTitle = () => {
?.map(v => v.text)
.join('') ?? 'Untitled'
);
- }, [pageId, workspace_id]);
+ }, [pageId, workspaceId]);
useEffect(() => {
if (user) fetchPageTitle();
}, [fetchPageTitle, user]);
useEffect(() => {
- if (!user || !workspace_id || !pageId || pageTitle === undefined)
+ if (!user || !workspaceId || !pageId || pageTitle === undefined)
return () => {};
let unobserve: () => void;
const auto_update_title = async () => {
// console.log(';; title registration auto update');
unobserve = await services.api.editorBlock.observe(
- { workspace: workspace_id, id: pageId },
+ { workspace: workspaceId, id: pageId },
businessBlock => {
// console.log(';; auto_update_title', businessBlock);
fetchPageTitle();
@@ -65,7 +65,7 @@ export const CurrentPageTitle = () => {
return () => {
// unobserve?.();
};
- }, [fetchPageTitle, pageId, pageTitle, user, workspace_id]);
+ }, [fetchPageTitle, pageId, pageTitle, user, workspaceId]);
useEffect(() => {
document.title = pageTitle || '';
diff --git a/libs/components/layout/src/settings-sidebar/Comments/use-comments.ts b/libs/components/layout/src/settings-sidebar/Comments/use-comments.ts
index 510b4e1bfb..b3b13069fa 100644
--- a/libs/components/layout/src/settings-sidebar/Comments/use-comments.ts
+++ b/libs/components/layout/src/settings-sidebar/Comments/use-comments.ts
@@ -9,7 +9,7 @@ import { useParams } from 'react-router-dom';
import type { CommentInfo } from './type';
export const useComments = () => {
- const { workspace_id: workspaceId, page_id: pageId } = useParams();
+ const { workspaceId, pageId } = useParams();
const [comments, setComments] = useState([]);
const [observeIds, setObserveIds] = useState([]);
@@ -71,7 +71,7 @@ export const useComments = () => {
};
export const useActiveComment = () => {
- const { workspace_id: workspaceId, page_id: pageId } = useParams();
+ const { workspaceId, pageId } = useParams();
const { currentEditors } = useCurrentEditors();
const editor = useMemo(() => {
return currentEditors[pageId] as Virgo;
diff --git a/libs/components/layout/src/settings-sidebar/Settings/util/use-workspace-page.ts b/libs/components/layout/src/settings-sidebar/Settings/util/use-workspace-page.ts
index b9048e3ff4..48f07fc2c4 100644
--- a/libs/components/layout/src/settings-sidebar/Settings/util/use-workspace-page.ts
+++ b/libs/components/layout/src/settings-sidebar/Settings/util/use-workspace-page.ts
@@ -7,7 +7,7 @@ interface UseWorkspaceAndPageIdReturn {
export const useWorkspaceAndPageId = (): UseWorkspaceAndPageIdReturn => {
const params = useParams();
- const workspaceId = params['workspace_id'];
+ const workspaceId = params['workspaceId'];
const pageId = params['*'].split('/')[0];
return {
workspaceId,
diff --git a/libs/components/layout/src/workspace-sidebar/calendar-heatmap/utils.ts b/libs/components/layout/src/workspace-sidebar/calendar-heatmap/utils.ts
index 6b440103f0..76b1733ee0 100644
--- a/libs/components/layout/src/workspace-sidebar/calendar-heatmap/utils.ts
+++ b/libs/components/layout/src/workspace-sidebar/calendar-heatmap/utils.ts
@@ -47,8 +47,8 @@ export async function fetchActivitiesHeatmap(
// const pages = await db.getByType('page');
const pages_with_ids = (await Promise.all(
flattenedItems.map(async (page_item: any) => {
- const page_id = page_item.id;
- return [page_id, await db.get(page_id as 'page')];
+ const pageId = page_item.id;
+ return [pageId, await db.get(pageId as 'page')];
})
)) as [string, BlockImplInstance][];
const pages = new Map(pages_with_ids);
diff --git a/libs/components/layout/src/workspace-sidebar/page-tree/tree-item/TreeItem.tsx b/libs/components/layout/src/workspace-sidebar/page-tree/tree-item/TreeItem.tsx
index 8ed5db75e8..ff26cb1caa 100755
--- a/libs/components/layout/src/workspace-sidebar/page-tree/tree-item/TreeItem.tsx
+++ b/libs/components/layout/src/workspace-sidebar/page-tree/tree-item/TreeItem.tsx
@@ -57,7 +57,9 @@ export const TreeItem = forwardRef(
},
ref
) => {
- const { workspace_id, page_id } = useParams();
+ const params = useParams();
+ const workspaceId = params['workspaceId'];
+ const curPageId = params['pageId'];
const BooleanPageTreeItemMoreActions = useFlag(
'BooleanPageTreeItemMoreActions',
true
@@ -71,7 +73,7 @@ export const TreeItem = forwardRef(
disableSelection={disableSelection}
disableInteraction={disableInteraction}
spacing={`${indentationWidth * depth + 12}px`}
- active={pageId === page_id}
+ active={pageId === curPageId}
{...props}
>
{childCount !== 0 ? (
@@ -89,12 +91,12 @@ export const TreeItem = forwardRef(
)}
-
+
{value}
{BooleanPageTreeItemMoreActions && (
diff --git a/libs/components/layout/src/workspace-sidebar/page-tree/use-page-tree.ts b/libs/components/layout/src/workspace-sidebar/page-tree/use-page-tree.ts
index b088242ee2..43f84f527d 100755
--- a/libs/components/layout/src/workspace-sidebar/page-tree/use-page-tree.ts
+++ b/libs/components/layout/src/workspace-sidebar/page-tree/use-page-tree.ts
@@ -19,7 +19,7 @@ import {
const page_tree_atom = atom([]);
export const usePageTree = ({ indentationWidth = 16 }: DndTreeProps = {}) => {
- const { workspace_id, page_id } = useParams();
+ const { workspaceId, pageId } = useParams();
const navigate = useNavigate();
const [items] = useAtom(page_tree_atom);
const [activeId, setActiveId] = useState(undefined);
@@ -56,11 +56,11 @@ export const usePageTree = ({ indentationWidth = 16 }: DndTreeProps = {}) => {
const savePageTreeData = useCallback(
async (treeData?: TreeItem[]) => {
await services.api.pageTree.setPageTree(
- workspace_id,
+ workspaceId,
treeData || []
);
},
- [workspace_id]
+ [workspaceId]
);
const resetState = useCallback(() => {
@@ -129,19 +129,19 @@ export const usePageTree = ({ indentationWidth = 16 }: DndTreeProps = {}) => {
const handleRemove = useCallback(
async (id: string) => {
await savePageTreeData(removeItem(items, id));
- await services.api.userConfig.removePage(workspace_id, id);
+ await services.api.userConfig.removePage(workspaceId, id);
//remove page from jwst
- await services.api.pageTree.removePage(workspace_id, id);
- if (id === page_id) {
- navigate(`/${workspace_id}`);
+ await services.api.pageTree.removePage(workspaceId, id);
+ if (id === pageId) {
+ navigate(`/${workspaceId}`);
}
},
- [items, savePageTreeData, workspace_id]
+ [items, savePageTreeData, workspaceId]
);
const handleAddPage = useCallback(
- async (page_id?: string) => {
- await savePageTreeData([{ id: page_id, children: [] }, ...items]);
+ async (pageId?: string) => {
+ await savePageTreeData([{ id: pageId, children: [] }, ...items]);
},
[items, savePageTreeData]
);
@@ -177,25 +177,25 @@ export const usePageTree = ({ indentationWidth = 16 }: DndTreeProps = {}) => {
export const useDndTreeAutoUpdate = () => {
const [, set_items] = useAtom(page_tree_atom);
- const { workspace_id, page_id } = useParams();
+ const { workspaceId, pageId } = useParams();
const fetch_page_tree_data = useCallback(async () => {
const pages = await services.api.pageTree.getPageTree(
- workspace_id
+ workspaceId
);
set_items(pages);
- }, [set_items, workspace_id]);
+ }, [set_items, workspaceId]);
useEffect(() => {
fetch_page_tree_data();
}, [fetch_page_tree_data]);
useEffect(() => {
- if (!page_id) return () => {};
+ if (!pageId) return () => {};
let unobserve: () => void;
const auto_update_page_tree = async () => {
unobserve = await services.api.pageTree.observe(
- { workspace: workspace_id, page: page_id },
+ { workspace: workspaceId, page: pageId },
() => {
fetch_page_tree_data();
}
@@ -206,5 +206,5 @@ export const useDndTreeAutoUpdate = () => {
return () => {
unobserve?.();
};
- }, [fetch_page_tree_data, page_id, workspace_id]);
+ }, [fetch_page_tree_data, pageId, workspaceId]);
};
diff --git a/libs/datasource/db-service/src/services/editor-block/index.ts b/libs/datasource/db-service/src/services/editor-block/index.ts
index d24efb9221..30b75a902c 100644
--- a/libs/datasource/db-service/src/services/editor-block/index.ts
+++ b/libs/datasource/db-service/src/services/editor-block/index.ts
@@ -265,37 +265,34 @@ export class EditorBlock extends ServiceBaseClass {
}
}
async copyPage(
- workspace_id: string,
- source_page_id: string,
- new_page_id: string
+ workspaceId: string,
+ sourcePageId: string,
+ newPageId: string
): Promise {
- const db = await this.database.getDatabase(workspace_id);
+ const db = await this.database.getDatabase(workspaceId);
- const source_page = await this.getBlock(
- workspace_id,
- source_page_id as 'block'
+ const sourcePage = await this.getBlock(
+ workspaceId,
+ sourcePageId as 'block'
);
- const new_page = await this.getBlock(
- workspace_id,
- new_page_id as 'block'
- );
- if (!source_page) {
+ const newPage = await this.getBlock(workspaceId, newPageId as 'block');
+ if (!sourcePage) {
return false;
}
- const source_page_children = source_page.children;
- const decorations = source_page.getDecorations();
+ const sourcePageChildren = sourcePage.children;
+ const decorations = sourcePage.getDecorations();
Object.entries(decorations).forEach(([key, value]) => {
- new_page?.setDecoration(key, source_page.getDecoration(key));
+ newPage?.setDecoration(key, sourcePage.getDecoration(key));
});
//@ts-ignore
- this.decorate_page_title(new_page, 'copy from ');
+ this.decorate_page_title(newPage, 'copy from ');
- for (let i = 0; i < source_page_children.length; i++) {
- const source_page_child = await db.get(
- source_page_children[i] as 'block'
+ for (let i = 0; i < sourcePageChildren.length; i++) {
+ const sourcePageChild = await db.get(
+ sourcePageChildren[i] as 'block'
);
- new_page?.insertChildren(source_page_child);
+ newPage?.insertChildren(sourcePageChild);
}
return true;
}
diff --git a/libs/datasource/jwt/src/yjs/index.ts b/libs/datasource/jwt/src/yjs/index.ts
index 76db288ad3..d430d29083 100644
--- a/libs/datasource/jwt/src/yjs/index.ts
+++ b/libs/datasource/jwt/src/yjs/index.ts
@@ -350,7 +350,7 @@ export class YjsAdapter implements AsyncDatabaseAdapter {
const [file] = (await fromEvent(handles)) as File[];
const binary = await file?.arrayBuffer();
console.log(this._provider.providers);
- let { indexeddb } = (
+ const { indexeddb } = (
this._provider.providers as any[]
).find(p => p.indexeddb);
await indexeddb?.idb?.clearData();
@@ -391,9 +391,9 @@ export class YjsAdapter implements AsyncDatabaseAdapter {
},
parse: () => this._doc.toJSON(),
// eslint-disable-next-line @typescript-eslint/naming-convention
- parse_page: (page_id: string) => {
+ parse_page: (pageId: string) => {
const blocks = this._blocks.toJSON();
- return resolve_block(blocks, page_id);
+ return resolve_block(blocks, pageId);
},
// eslint-disable-next-line @typescript-eslint/naming-convention
parse_pages: (resolve = false) => {
diff --git a/libs/datasource/state/src/page.ts b/libs/datasource/state/src/page.ts
index e1706e508e..273eb33764 100644
--- a/libs/datasource/state/src/page.ts
+++ b/libs/datasource/state/src/page.ts
@@ -9,7 +9,7 @@ const _currentEditors = atom({} as EditorsMap);
/** hook for using editors outside page */
export const useCurrentEditors = () => {
- const { workspace_id: workspaceId, page_id: pageId } = useParams();
+ const { workspaceId, pageId } = useParams();
const { pathname } = useLocation();
const [currentEditors, setCurrentEditors] = useAtom(_currentEditors);
diff --git a/libs/datasource/state/src/user.ts b/libs/datasource/state/src/user.ts
index 063f9f7f04..40ffbd80d9 100644
--- a/libs/datasource/state/src/user.ts
+++ b/libs/datasource/state/src/user.ts
@@ -5,7 +5,6 @@ import {
} from 'firebase/auth';
import { atom, useAtom } from 'jotai';
import { useEffect, useMemo } from 'react';
-import { useLocation, useNavigate } from 'react-router';
import { useIdentifyUser } from '@toeverything/datasource/feature-flags';
import { UserInfo } from '@toeverything/utils';
@@ -63,15 +62,11 @@ const BRAND_ID = 'AFFiNE';
const _localTrigger = atom(false);
const _useUserAndSpacesForFreeLogin = () => {
- const location = useLocation();
- const navigate = useNavigate();
const [user, setUser] = useAtom(_userAtom);
const [loading, setLoading] = useAtom(_loadingAtom);
- const [localTrigger] = useAtom(_localTrigger);
useEffect(() => {
if (loading) {
- navigate(`/${BRAND_ID}`);
setLoading(false);
}
}, []);
diff --git a/libs/utils/src/utils.ts b/libs/utils/src/utils.ts
index 28adc6c4d8..1efdef259f 100644
--- a/libs/utils/src/utils.ts
+++ b/libs/utils/src/utils.ts
@@ -6,8 +6,8 @@ export function getUserDisplayName(user?: UserInfo) {
}
/**
- * Get page_id from URL
- * @returns page_id
+ * Get pageId from URL
+ * @returns pageId
*/
export function getPageId() {
const path = window.location.pathname.match(/\/(\w+)\/(\w+)/);