mirror of
https://github.com/toeverything/AFFiNE.git
synced 2026-02-13 12:55:00 +00:00
84 lines
2.3 KiB
TypeScript
84 lines
2.3 KiB
TypeScript
import '../../style.css';
|
|
|
|
import {
|
|
WidgetViewMapExtension,
|
|
WidgetViewMapIdentifier,
|
|
} from '@blocksuite/block-std';
|
|
import * as blocks from '@blocksuite/blocks';
|
|
import {
|
|
CommunityCanvasTextFonts,
|
|
DocModeProvider,
|
|
FontConfigExtension,
|
|
ParseDocUrlProvider,
|
|
QuickSearchProvider,
|
|
RefNodeSlotsProvider,
|
|
} from '@blocksuite/blocks';
|
|
import { effects as blocksEffects } from '@blocksuite/blocks/effects';
|
|
import * as globalUtils from '@blocksuite/global/utils';
|
|
import * as editor from '@blocksuite/presets';
|
|
import { effects as presetsEffects } from '@blocksuite/presets/effects';
|
|
import type { ExtensionType } from '@blocksuite/store';
|
|
// eslint-disable-next-line @typescript-eslint/no-restricted-imports
|
|
import * as store from '@blocksuite/store';
|
|
|
|
import {
|
|
mockDocModeService,
|
|
mockEditorSetting,
|
|
} from '../_common/mock-services.js';
|
|
import { setupEdgelessTemplate } from '../_common/setup.js';
|
|
import {
|
|
createStarterDocCollection,
|
|
initStarterDocCollection,
|
|
} from './utils/collection.js';
|
|
import { mountDefaultDocEditor } from './utils/editor.js';
|
|
|
|
blocksEffects();
|
|
presetsEffects();
|
|
|
|
async function main() {
|
|
if (window.collection) return;
|
|
|
|
setupEdgelessTemplate();
|
|
|
|
const params = new URLSearchParams(location.search);
|
|
const room = params.get('room') ?? Math.random().toString(16).slice(2, 8);
|
|
const isE2E = room.startsWith('playwright');
|
|
const collection = createStarterDocCollection();
|
|
|
|
if (isE2E) {
|
|
Object.defineProperty(window, '$blocksuite', {
|
|
value: Object.freeze({
|
|
store,
|
|
blocks,
|
|
global: { utils: globalUtils },
|
|
editor,
|
|
identifiers: {
|
|
WidgetViewMapIdentifier,
|
|
QuickSearchProvider,
|
|
DocModeProvider,
|
|
RefNodeSlotsProvider,
|
|
ParseDocUrlService: ParseDocUrlProvider,
|
|
},
|
|
defaultExtensions: (): ExtensionType[] => [
|
|
FontConfigExtension(CommunityCanvasTextFonts),
|
|
blocks.EditorSettingExtension(mockEditorSetting()),
|
|
],
|
|
extensions: {
|
|
FontConfigExtension: FontConfigExtension(CommunityCanvasTextFonts),
|
|
WidgetViewMapExtension,
|
|
},
|
|
mockServices: {
|
|
mockDocModeService,
|
|
},
|
|
}),
|
|
});
|
|
|
|
return;
|
|
}
|
|
|
|
await initStarterDocCollection(collection);
|
|
await mountDefaultDocEditor(collection);
|
|
}
|
|
|
|
main().catch(console.error);
|