mirror of
https://github.com/toeverything/AFFiNE.git
synced 2026-02-22 00:37:05 +08:00
31 lines
1.0 KiB
TypeScript
31 lines
1.0 KiB
TypeScript
import { BookmarkBlockSchema } from '@blocksuite/affine-model';
|
|
import { ToolbarModuleExtension } from '@blocksuite/affine-shared/services';
|
|
import {
|
|
BlockFlavourIdentifier,
|
|
BlockViewExtension,
|
|
FlavourExtension,
|
|
} from '@blocksuite/block-std';
|
|
import type { ExtensionType } from '@blocksuite/store';
|
|
import { literal } from 'lit/static-html.js';
|
|
|
|
import { BookmarkBlockAdapterExtensions } from './adapters/extension';
|
|
import { BookmarkSlashMenuConfigExtension } from './configs/slash-menu';
|
|
import { builtinToolbarConfig } from './configs/toolbar';
|
|
|
|
const flavour = BookmarkBlockSchema.model.flavour;
|
|
|
|
export const BookmarkBlockSpec: ExtensionType[] = [
|
|
FlavourExtension(flavour),
|
|
BlockViewExtension(flavour, model => {
|
|
return model.parent?.flavour === 'affine:surface'
|
|
? literal`affine-edgeless-bookmark`
|
|
: literal`affine-bookmark`;
|
|
}),
|
|
BookmarkBlockAdapterExtensions,
|
|
ToolbarModuleExtension({
|
|
id: BlockFlavourIdentifier(flavour),
|
|
config: builtinToolbarConfig,
|
|
}),
|
|
BookmarkSlashMenuConfigExtension,
|
|
].flat();
|