UNPKG

@atlaskit/editor-plugin-toolbar

Version:

Toolbar plugin for @atlaskit/editor-core

42 lines (41 loc) 1.69 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getDomRefFromSelection = void 0; var _analytics = require("@atlaskit/editor-common/analytics"); var _monitoring = require("@atlaskit/editor-common/monitoring"); var _utils = require("@atlaskit/editor-prosemirror/utils"); var getDomRefFromSelection = exports.getDomRefFromSelection = function getDomRefFromSelection(view, dispatchAnalyticsEvent) { try { var domRef = (0, _utils.findDomRefAtPos)(view.state.selection.from, view.domAtPos.bind(view)); if (domRef instanceof HTMLElement) { return domRef; } throw new Error('Invalid DOM reference'); } catch (error) { if (dispatchAnalyticsEvent) { var payload = { action: _analytics.ACTION.ERRORED, actionSubject: _analytics.ACTION_SUBJECT.CONTENT_COMPONENT, eventType: _analytics.EVENT_TYPE.OPERATIONAL, attributes: { component: _analytics.CONTENT_COMPONENT.SELECTION_TOOLBAR, selection: view.state.selection.toJSON(), position: view.state.selection.from, docSize: view.state.doc.nodeSize, error: error instanceof Error ? error.toString() : String(error), // @ts-expect-error - Object literal may only specify known properties, 'errorStack' does not exist in type // This error was introduced after upgrading to TypeScript 5 errorStack: error instanceof Error ? error.stack : undefined } }; dispatchAnalyticsEvent(payload); } if (error instanceof Error) { (0, _monitoring.logException)(error, { location: 'editor-plugin-toolbar/selectionToolbar' }); } } };