mirror of
https://github.com/toeverything/AFFiNE.git
synced 2026-02-14 13:25:12 +00:00
feat(editor): replace spec provider with extension manager (#11861)
Closes: BS-3273
This commit is contained in:
@@ -1,13 +1,7 @@
|
||||
import '@toeverything/theme/style.css';
|
||||
import '@toeverything/theme/fonts.css';
|
||||
|
||||
import { effects as blocksEffects } from '@blocksuite/affine/effects';
|
||||
import {
|
||||
EdgelessEditorBlockSpecs,
|
||||
PageEditorBlockSpecs,
|
||||
registerStoreSpecs,
|
||||
StoreExtensions,
|
||||
} from '@blocksuite/affine/extensions';
|
||||
import { registerStoreSpecs } from '@blocksuite/affine/extensions';
|
||||
import type { DocMode } from '@blocksuite/affine/model';
|
||||
import { AffineSchemas } from '@blocksuite/affine/schemas';
|
||||
import {
|
||||
@@ -27,11 +21,17 @@ import {
|
||||
|
||||
import { effects } from '../../effects.js';
|
||||
import { TestAffineEditorContainer } from '../../index.js';
|
||||
import { getTestStoreManager } from '../../store.js';
|
||||
import { getTestViewManager } from '../../view.js';
|
||||
|
||||
// FIXME: used for test import/export
|
||||
registerStoreSpecs();
|
||||
blocksEffects();
|
||||
const storeManager = getTestStoreManager();
|
||||
const viewManager = getTestViewManager();
|
||||
effects();
|
||||
|
||||
const storeExtensions = storeManager.get('store');
|
||||
|
||||
export function getRenderer() {
|
||||
return editor.std.get(
|
||||
ViewportTurboRendererIdentifier
|
||||
@@ -85,12 +85,12 @@ async function createEditor(
|
||||
editor.doc = doc;
|
||||
editor.mode = mode;
|
||||
editor.pageSpecs = [
|
||||
...PageEditorBlockSpecs,
|
||||
...viewManager.get('page'),
|
||||
FontConfigExtension(CommunityCanvasTextFonts),
|
||||
...extensions,
|
||||
];
|
||||
editor.edgelessSpecs = [
|
||||
...EdgelessEditorBlockSpecs,
|
||||
...viewManager.get('edgeless'),
|
||||
FontConfigExtension(CommunityCanvasTextFonts),
|
||||
...extensions,
|
||||
];
|
||||
@@ -123,7 +123,7 @@ export async function setupEditor(
|
||||
extensions: ExtensionType[] = []
|
||||
) {
|
||||
const collection = new TestWorkspace(createCollectionOptions());
|
||||
collection.storeExtensions = StoreExtensions;
|
||||
collection.storeExtensions = storeExtensions;
|
||||
collection.meta.initialize();
|
||||
|
||||
window.collection = collection;
|
||||
|
||||
7
blocksuite/integration-test/src/store.ts
Normal file
7
blocksuite/integration-test/src/store.ts
Normal file
@@ -0,0 +1,7 @@
|
||||
import { StoreExtensionManager } from '@blocksuite/affine/ext-loader';
|
||||
import { MigratingStoreExtension } from '@blocksuite/affine/extensions/store';
|
||||
|
||||
export function getTestStoreManager() {
|
||||
const manager = new StoreExtensionManager([MigratingStoreExtension]);
|
||||
return manager;
|
||||
}
|
||||
7
blocksuite/integration-test/src/view.ts
Normal file
7
blocksuite/integration-test/src/view.ts
Normal file
@@ -0,0 +1,7 @@
|
||||
import { ViewExtensionManager } from '@blocksuite/affine/ext-loader';
|
||||
import { MigratingViewExtension } from '@blocksuite/affine/extensions/view';
|
||||
|
||||
export function getTestViewManager() {
|
||||
const manager = new ViewExtensionManager([MigratingViewExtension]);
|
||||
return manager;
|
||||
}
|
||||
Reference in New Issue
Block a user