UNPKG

@atlaskit/editor-plugin-synced-block

Version:

SyncedBlock plugin for @atlaskit/editor-core

26 lines 1.09 kB
import { findParentNodeOfTypeClosestToPos } from '@atlaskit/editor-prosemirror/utils'; /** * * @returns true if should ignore event happens within bodiedSyncBlock node when offline */ export const shouldIgnoreDomEvent = (view, event, api) => { var _api$connectivity, _api$connectivity$sha, _view$posAtCoords; if ((api === null || api === void 0 ? void 0 : (_api$connectivity = api.connectivity) === null || _api$connectivity === void 0 ? void 0 : (_api$connectivity$sha = _api$connectivity.sharedState.currentState()) === null || _api$connectivity$sha === void 0 ? void 0 : _api$connectivity$sha.mode) !== 'offline') { return; } const { bodiedSyncBlock } = view.state.schema.nodes; const pos = (_view$posAtCoords = view.posAtCoords({ left: event.clientX, top: event.clientY })) === null || _view$posAtCoords === void 0 ? void 0 : _view$posAtCoords.pos; if (pos === undefined) { return; } const $pos = view.state.doc.resolve(pos); const maybeNode = findParentNodeOfTypeClosestToPos($pos, bodiedSyncBlock); if (maybeNode) { return true; } };