UNPKG

@atlaskit/editor-plugin-synced-block

Version:

SyncedBlock plugin for @atlaskit/editor-core

20 lines 749 B
import { BodiedSyncBlockSharedCssClassName } from '@atlaskit/editor-common/sync-block'; import { findParentNodeOfType } from '@atlaskit/editor-prosemirror/utils'; import { Decoration, DecorationSet } from '@atlaskit/editor-prosemirror/view'; export const calculateDecorations = (doc, selection, schema) => { const { bodiedSyncBlock } = schema.nodes; const syncBlockParent = findParentNodeOfType(bodiedSyncBlock)(selection); if (syncBlockParent) { const { node, pos } = syncBlockParent; const decoration = Decoration.node(pos, pos + node.nodeSize, { class: `${BodiedSyncBlockSharedCssClassName.selectionInside}` }); return DecorationSet.create(doc, [decoration]); } return DecorationSet.empty; };