UNPKG

@atlaskit/editor-plugin-base

Version:

Base plugin for @atlaskit/editor-core

33 lines (32 loc) 1.19 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _analytics = require("@atlaskit/editor-common/analytics"); var _safePlugin = require("@atlaskit/editor-common/safe-plugin"); var hasInvalidSteps = function hasInvalidSteps(tr) { return (tr.steps || []).some(function (step) { return step.from > step.to; }); }; var _default = exports.default = function _default(dispatchAnalyticsEvent) { return new _safePlugin.SafePlugin({ filterTransaction: function filterTransaction(transaction) { if (hasInvalidSteps(transaction)) { // eslint-disable-next-line no-console console.warn('The transaction was blocked because it contains invalid steps', transaction.steps); dispatchAnalyticsEvent({ action: _analytics.ACTION.DISCARDED_INVALID_STEPS_FROM_TRANSACTION, actionSubject: _analytics.ACTION_SUBJECT.EDITOR, attributes: { analyticsEventPayloads: (0, _analytics.getAnalyticsEventsFromTransaction)(transaction) }, eventType: _analytics.EVENT_TYPE.OPERATIONAL }); return false; } return true; } }); };