refactor(editor): image slash menu config extension (#10674)

This commit is contained in:
L-Sun
2025-03-07 05:48:39 +00:00
parent 66ad87c84a
commit 4e80ecd591
12 changed files with 45 additions and 32 deletions
@@ -1,5 +1,4 @@
import { addSiblingAttachmentBlocks } from '@blocksuite/affine-block-attachment';
import { insertImagesCommand } from '@blocksuite/affine-block-image';
import { insertLatexBlockCommand } from '@blocksuite/affine-block-latex';
import { getSurfaceBlock } from '@blocksuite/affine-block-surface';
import { insertSurfaceRefBlockCommand } from '@blocksuite/affine-block-surface-ref';
@@ -39,7 +38,6 @@ import {
GithubDuotoneIcon,
GroupingIcon,
HeadingsIcon,
ImageIcon,
LinkedPageIcon,
LinkIcon,
LoomLogoDuotoneIcon,
@@ -190,24 +188,6 @@ export const defaultSlashMenuConfig: SlashMenuConfig = {
// ---------------------------------------------------------
// { groupName: 'Content & Media' },
{
name: 'Image',
description: 'Insert an image.',
icon: ImageIcon(),
tooltip: slashMenuToolTips['Image'],
group: `4_Content & Media@${index++}`,
when: ({ model }) =>
model.doc.schema.flavourSchemaMap.has('affine:image'),
action: ({ std }) => {
const [success, ctx] = std.command
.chain()
.pipe(getSelectedModelsCommand)
.pipe(insertImagesCommand, { removeEmptyLine: true })
.run();
if (success) ctx.insertedImageIds.catch(console.error);
},
},
{
name: 'Link',
description: 'Add a bookmark for reference.',
@@ -25,7 +25,6 @@ import { NewDocTooltip } from './new-doc';
import { NowTooltip } from './now';
import { NumberedListTooltip } from './numbered-list';
import { PDFTooltip } from './pdf';
import { PhotoTooltip } from './photo';
import { QuoteTooltip } from './quote';
import { StrikethroughTooltip } from './strikethrough';
import { TextTooltip } from './text';
@@ -152,11 +151,6 @@ export const slashMenuToolTips: Record<string, SlashMenuTooltip> = {
caption: 'YouTube Video',
},
Image: {
figure: PhotoTooltip,
caption: 'Photo',
},
'X (Twitter)': {
figure: TweetTooltip,
caption: 'Tweet',
File diff suppressed because one or more lines are too long