fix: api compatibility with blocksuite

This commit is contained in:
himself65
2023-04-20 22:29:11 -05:00
parent 44011b4695
commit 00f44c72ce
2 changed files with 13 additions and 3 deletions

View File

@@ -1,5 +1,6 @@
import type { TreeViewProps } from '@affine/component';
import { DebugLogger } from '@affine/debug';
import { initPage } from '@affine/env/blocksuite';
import type { PageMeta } from '@blocksuite/store';
import { nanoid } from '@blocksuite/store';
import { usePageMetaHelper } from '@toeverything/hooks/use-block-suite-page-meta';
@@ -64,7 +65,16 @@ export function usePinboardHandler({
const addPin = useCallback(
(parentId: string) => {
const id = nanoid();
createPage(id, parentId);
const page = createPage(id);
initPage(page);
page.addBlock('affine:paragraph', {
text: page.Text.fromDelta([
{
insert: ' ',
attributes: { reference: { type: 'LinkedPage', pageId: page.id } },
},
]),
});
onAdd?.(id, parentId);
addReferenceLink(parentId, id);
},

View File

@@ -10,9 +10,9 @@ import { useMemo } from 'react';
export function useBlockSuiteWorkspaceHelper(blockSuiteWorkspace: Workspace) {
return useMemo(
() => ({
createPage: (pageId: string, parentId?: string): Page => {
createPage: (pageId: string): Page => {
assertExists(blockSuiteWorkspace);
return blockSuiteWorkspace.createPage(pageId, parentId);
return blockSuiteWorkspace.createPage(pageId);
},
markMilestone: async (name: string) => {
assertExists(blockSuiteWorkspace);