mirror of
https://github.com/toeverything/AFFiNE.git
synced 2026-08-18 18:41:52 +08:00
feat: bump blocksuite (#6078)
This commit is contained in:
@@ -57,7 +57,7 @@ test('newly created page shows empty history', async ({ page }) => {
|
||||
const pushCurrentPageUpdates = async (page: Page) => {
|
||||
const [workspaceId, guid, updates, state] = await page.evaluate(() => {
|
||||
// @ts-expect-error
|
||||
const Y = window.currentWorkspace.blockSuiteWorkspace.constructor.Y;
|
||||
const Y = window.currentWorkspace.docCollection.constructor.Y;
|
||||
// @ts-expect-error
|
||||
const spaceDoc = window.currentEditor.page.spaceDoc;
|
||||
// @ts-expect-error
|
||||
|
||||
@@ -4,7 +4,7 @@ import fs from 'node:fs';
|
||||
import path, { resolve } from 'node:path';
|
||||
import process from 'node:process';
|
||||
|
||||
import type { Workspace } from '@blocksuite/store';
|
||||
import type { DocCollection } from '@blocksuite/store';
|
||||
import { type BrowserContext, test as baseTest } from '@playwright/test';
|
||||
|
||||
export const rootDir = resolve(__dirname, '..', '..');
|
||||
@@ -27,9 +27,9 @@ function generateUUID() {
|
||||
|
||||
export const enableCoverage = !!process.env.CI || !!process.env.COVERAGE;
|
||||
|
||||
type CurrentWorkspace = {
|
||||
type CurrentDocCollection = {
|
||||
meta: { id: string; flavour: string };
|
||||
blockSuiteWorkspace: Workspace;
|
||||
docCollection: DocCollection;
|
||||
};
|
||||
|
||||
export const skipOnboarding = async (context: BrowserContext) => {
|
||||
@@ -43,7 +43,7 @@ export const skipOnboarding = async (context: BrowserContext) => {
|
||||
|
||||
export const test = baseTest.extend<{
|
||||
workspace: {
|
||||
current: () => Promise<CurrentWorkspace>;
|
||||
current: () => Promise<CurrentDocCollection>;
|
||||
};
|
||||
}>({
|
||||
workspace: async ({ page }, use) => {
|
||||
|
||||
@@ -22,14 +22,14 @@
|
||||
"storybook-addon-react-router-v6": "^2.0.10"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@blocksuite/block-std": "0.13.0-canary-202403050653-934469c",
|
||||
"@blocksuite/blocks": "0.13.0-canary-202403050653-934469c",
|
||||
"@blocksuite/global": "0.13.0-canary-202403050653-934469c",
|
||||
"@blocksuite/block-std": "0.13.0-canary-202403120738-e15d583",
|
||||
"@blocksuite/blocks": "0.13.0-canary-202403120738-e15d583",
|
||||
"@blocksuite/global": "0.13.0-canary-202403120738-e15d583",
|
||||
"@blocksuite/icons": "2.1.45",
|
||||
"@blocksuite/inline": "0.13.0-canary-202403050653-934469c",
|
||||
"@blocksuite/lit": "0.13.0-canary-202403050653-934469c",
|
||||
"@blocksuite/presets": "0.13.0-canary-202403050653-934469c",
|
||||
"@blocksuite/store": "0.13.0-canary-202403050653-934469c",
|
||||
"@blocksuite/inline": "0.13.0-canary-202403120738-e15d583",
|
||||
"@blocksuite/lit": "0.13.0-canary-202403120738-e15d583",
|
||||
"@blocksuite/presets": "0.13.0-canary-202403120738-e15d583",
|
||||
"@blocksuite/store": "0.13.0-canary-202403120738-e15d583",
|
||||
"@storybook/addon-actions": "^7.6.17",
|
||||
"@storybook/addon-essentials": "^7.6.17",
|
||||
"@storybook/addon-interactions": "^7.6.17",
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { BlockSuiteEditor } from '@affine/core/components/blocksuite/block-suite-editor';
|
||||
import { AffineSchemas } from '@blocksuite/blocks/schemas';
|
||||
import { Workspace } from '@blocksuite/store';
|
||||
import { DocCollection } from '@blocksuite/store';
|
||||
import { Schema } from '@blocksuite/store';
|
||||
import type { StoryFn } from '@storybook/react';
|
||||
import { initEmptyPage } from '@toeverything/infra';
|
||||
@@ -9,14 +9,14 @@ const schema = new Schema();
|
||||
schema.register(AffineSchemas);
|
||||
|
||||
async function createAndInitPage(
|
||||
workspace: Workspace,
|
||||
docCollection: DocCollection,
|
||||
title: string,
|
||||
preview: string
|
||||
) {
|
||||
const page = workspace.createDoc();
|
||||
initEmptyPage(page, title);
|
||||
page.getBlockByFlavour('affine:paragraph').at(0)?.text?.insert(preview, 0);
|
||||
return page;
|
||||
const doc = docCollection.createDoc();
|
||||
initEmptyPage(doc, title);
|
||||
doc.getBlockByFlavour('affine:paragraph').at(0)?.text?.insert(preview, 0);
|
||||
return doc;
|
||||
}
|
||||
|
||||
export default {
|
||||
@@ -33,26 +33,26 @@ export const DocEditor: StoryFn<typeof BlockSuiteEditor> = (_, { loaded }) => {
|
||||
|
||||
DocEditor.loaders = [
|
||||
async () => {
|
||||
const workspace = new Workspace({
|
||||
const docCollection = new DocCollection({
|
||||
id: 'test-workspace-id',
|
||||
schema,
|
||||
});
|
||||
workspace.doc.emit('sync', []);
|
||||
workspace.meta.setProperties({
|
||||
docCollection.doc.emit('sync', []);
|
||||
docCollection.meta.setProperties({
|
||||
tags: {
|
||||
options: [],
|
||||
},
|
||||
});
|
||||
|
||||
const page = await createAndInitPage(
|
||||
workspace,
|
||||
docCollection,
|
||||
'This is page 1',
|
||||
'Hello World from page 1'
|
||||
);
|
||||
|
||||
return {
|
||||
page,
|
||||
workspace,
|
||||
workspace: docCollection,
|
||||
};
|
||||
},
|
||||
];
|
||||
|
||||
@@ -24,7 +24,7 @@ export const Default = () => {
|
||||
const [page, setPage] = useState<Doc | null>(null);
|
||||
|
||||
useEffect(() => {
|
||||
const bsPage = workspace.blockSuiteWorkspace.createDoc('page0');
|
||||
const bsPage = workspace.docCollection.createDoc('page0');
|
||||
initEmptyPage(bsPage);
|
||||
|
||||
const { page, release } = pageManager.open(bsPage.meta!.id);
|
||||
@@ -32,7 +32,7 @@ export const Default = () => {
|
||||
fetch(new URL('@affine-test/fixtures/large-image.png', import.meta.url))
|
||||
.then(res => res.arrayBuffer())
|
||||
.then(async buffer => {
|
||||
const id = await workspace.blockSuiteWorkspace.blob.set(
|
||||
const id = await workspace.docCollection.blob.set(
|
||||
new Blob([buffer], { type: 'image/png' })
|
||||
);
|
||||
const frameId = bsPage.getBlockByFlavour('affine:note')[0].id;
|
||||
@@ -80,7 +80,7 @@ export const Default = () => {
|
||||
{createPortal(
|
||||
<ImagePreviewModal
|
||||
pageId={page.id}
|
||||
workspace={page.blockSuiteDoc.workspace}
|
||||
docCollection={page.blockSuiteDoc.collection}
|
||||
/>,
|
||||
document.body
|
||||
)}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { PagePropertiesTable } from '@affine/core/components/affine/page-properties';
|
||||
import { AffineSchemas } from '@blocksuite/blocks/schemas';
|
||||
import { Workspace } from '@blocksuite/store';
|
||||
import { DocCollection } from '@blocksuite/store';
|
||||
import { Schema } from '@blocksuite/store';
|
||||
import type { StoryFn } from '@storybook/react';
|
||||
import { initEmptyPage } from '@toeverything/infra';
|
||||
@@ -9,11 +9,11 @@ const schema = new Schema();
|
||||
schema.register(AffineSchemas);
|
||||
|
||||
async function createAndInitPage(
|
||||
workspace: Workspace,
|
||||
docCollection: DocCollection,
|
||||
title: string,
|
||||
preview: string
|
||||
) {
|
||||
const page = workspace.createDoc();
|
||||
const page = docCollection.createDoc();
|
||||
initEmptyPage(page, title);
|
||||
page.getBlockByFlavour('affine:paragraph').at(0)?.text?.insert(preview, 0);
|
||||
return page;
|
||||
@@ -36,19 +36,19 @@ export const PageInfoProperties: StoryFn<typeof PagePropertiesTable> = (
|
||||
|
||||
PageInfoProperties.loaders = [
|
||||
async () => {
|
||||
const workspace = new Workspace({
|
||||
const docCollection = new DocCollection({
|
||||
id: 'test-workspace-id',
|
||||
schema,
|
||||
});
|
||||
workspace.doc.emit('sync', []);
|
||||
workspace.meta.setProperties({
|
||||
docCollection.doc.emit('sync', []);
|
||||
docCollection.meta.setProperties({
|
||||
tags: {
|
||||
options: [],
|
||||
},
|
||||
});
|
||||
|
||||
const page = await createAndInitPage(
|
||||
workspace,
|
||||
docCollection,
|
||||
'This is page 1',
|
||||
'Hello World from page 1'
|
||||
);
|
||||
@@ -59,7 +59,7 @@ PageInfoProperties.loaders = [
|
||||
|
||||
return {
|
||||
page,
|
||||
workspace,
|
||||
workspace: docCollection,
|
||||
};
|
||||
},
|
||||
];
|
||||
|
||||
@@ -16,7 +16,7 @@ import {
|
||||
import { workbenchRoutes } from '@affine/core/router';
|
||||
import { AffineSchemas } from '@blocksuite/blocks/schemas';
|
||||
import { PageIcon, TagsIcon } from '@blocksuite/icons';
|
||||
import { Schema, Workspace } from '@blocksuite/store';
|
||||
import { DocCollection, Schema } from '@blocksuite/store';
|
||||
import { expect } from '@storybook/jest';
|
||||
import type { Meta, StoryFn } from '@storybook/react';
|
||||
import { userEvent } from '@storybook/testing-library';
|
||||
@@ -237,49 +237,49 @@ PageListStory.argTypes = {
|
||||
};
|
||||
|
||||
async function createAndInitPage(
|
||||
workspace: Workspace,
|
||||
docCollection: DocCollection,
|
||||
title: string,
|
||||
preview: string
|
||||
) {
|
||||
const page = workspace.createDoc();
|
||||
initEmptyPage(page, title);
|
||||
page.getBlockByFlavour('affine:paragraph').at(0)?.text?.insert(preview, 0);
|
||||
return page;
|
||||
const doc = docCollection.createDoc();
|
||||
initEmptyPage(doc, title);
|
||||
doc.getBlockByFlavour('affine:paragraph').at(0)?.text?.insert(preview, 0);
|
||||
return doc;
|
||||
}
|
||||
|
||||
PageListStory.loaders = [
|
||||
async () => {
|
||||
const schema = new Schema();
|
||||
schema.register(AffineSchemas);
|
||||
const workspace = new Workspace({
|
||||
const docCollection = new DocCollection({
|
||||
id: 'test-workspace-id',
|
||||
schema,
|
||||
});
|
||||
|
||||
workspace.meta.setProperties({
|
||||
docCollection.meta.setProperties({
|
||||
tags: {
|
||||
options: structuredClone(testTags),
|
||||
},
|
||||
});
|
||||
|
||||
const page1 = await createAndInitPage(
|
||||
workspace,
|
||||
docCollection,
|
||||
'This is page 1',
|
||||
'Hello World from page 1'
|
||||
);
|
||||
const page2 = await createAndInitPage(
|
||||
workspace,
|
||||
docCollection,
|
||||
'This is page 2',
|
||||
'Hello World from page 2'
|
||||
);
|
||||
const page3 = await createAndInitPage(
|
||||
workspace,
|
||||
docCollection,
|
||||
'This is page 3',
|
||||
'Hello World from page 3Hello World from page 3Hello World from page 3Hello World from page 3Hello World from page 3'
|
||||
);
|
||||
|
||||
await createAndInitPage(
|
||||
workspace,
|
||||
docCollection,
|
||||
'This is page 4',
|
||||
'Hello World from page 3Hello World from page 3Hello World from page 3Hello World from page 3Hello World from page 3'
|
||||
);
|
||||
@@ -288,12 +288,12 @@ PageListStory.loaders = [
|
||||
page2.meta!.createDate = page2.meta!.createDate - 3600 * 1000 * 24;
|
||||
page3.meta!.createDate = page3.meta!.createDate - 3600 * 1000 * 24 * 7;
|
||||
|
||||
workspace.meta.docMetas[3].tags = testTags.slice(0, 3).map(t => t.id);
|
||||
workspace.meta.docMetas[2].tags = testTags.slice(0, 12).map(t => t.id);
|
||||
docCollection.meta.docMetas[3].tags = testTags.slice(0, 3).map(t => t.id);
|
||||
docCollection.meta.docMetas[2].tags = testTags.slice(0, 12).map(t => t.id);
|
||||
|
||||
return {
|
||||
blockSuiteWorkspace: workspace,
|
||||
pages: workspace.meta.docs,
|
||||
blockSuiteWorkspace: docCollection,
|
||||
pages: docCollection.meta.docs,
|
||||
};
|
||||
},
|
||||
];
|
||||
|
||||
@@ -29,7 +29,7 @@ export const Basic: StoryFn = () => {
|
||||
const [page, setPage] = useState<Doc | null>(null);
|
||||
|
||||
useEffect(() => {
|
||||
const page = workspace.blockSuiteWorkspace.createDoc(nanoid());
|
||||
const page = workspace.docCollection.createDoc(nanoid());
|
||||
initEmptyPage(page);
|
||||
|
||||
setPage(page);
|
||||
@@ -71,7 +71,7 @@ export const AffineBasic: StoryFn = () => {
|
||||
const [page, setPage] = useState<Doc | null>(null);
|
||||
|
||||
useEffect(() => {
|
||||
const page = workspace.blockSuiteWorkspace.createDoc(nanoid());
|
||||
const page = workspace.docCollection.createDoc(nanoid());
|
||||
initEmptyPage(page);
|
||||
|
||||
setPage(page);
|
||||
|
||||
Reference in New Issue
Block a user