@atlaskit/editor-plugin-block-controls
Version:
Block controls plugin for @atlaskit/editor-core
14 lines (13 loc) • 797 B
TypeScript
import type { ActiveNode } from '../blockControlsPluginType';
export type BlockControlsSurfaceTarget = {
position: number;
source: 'active' | 'root' | 'stored';
};
/**
* Combines hover-driven and stored surface positions into one deduplicated list.
* Shared by both the left and right surfaces: this is pure position bookkeeping with no
* surface-specific behavior, so there's nothing to keep independent between them. What *is*
* kept independent is each surface's own React tree (component lookup, measurement effects,
* observers) — see block-controls-left-surfaces.tsx / block-controls-right-surfaces.tsx.
*/
export declare const getBlockControlsSurfaceTargets: (activeNode: ActiveNode | undefined, storedPositions: readonly number[]) => readonly BlockControlsSurfaceTarget[];