@atlaskit/editor-plugin-paste-options-toolbar
Version:
Paste options toolbar for @atlaskit/editor-core
39 lines (37 loc) • 1.46 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.firePasteActionsMenuV2ExperimentExposure = void 0;
var _expVal = require("@atlaskit/tmp-editor-statsig/expVal");
var _hasTableNode = require("../utils/paste-menu-rules/hasTableNode");
var _isNotProse = require("../utils/paste-menu-rules/isNotProse");
// Remove this file when experiment 'platform_editor_paste_actions_menu_v2' is cleaned up.
var firePasteActionsMenuV2ExperimentExposure = exports.firePasteActionsMenuV2ExperimentExposure = function firePasteActionsMenuV2ExperimentExposure(contentLength, state, pasteStartPos, pasteEndPos, pastedText, pastedSlice) {
if (contentLength < 100 || !pasteStartPos || !pasteEndPos || !pastedText) {
return;
}
if ((0, _isNotProse.isNotProse)(pastedText)) {
return;
}
if ((0, _hasTableNode.hasTableNode)(pastedSlice)) {
return;
}
try {
var $pos = state.doc.resolve(pasteStartPos);
var pasteAncestorNodeNames = [];
for (var depth = $pos.depth; depth > 0; depth--) {
if (pasteEndPos <= $pos.end(depth)) {
pasteAncestorNodeNames.push($pos.node(depth).type.name);
}
}
var isInExcludedNode = pasteAncestorNodeNames.some(function (name) {
return ['codeBlock', 'heading'].includes(name);
});
if (!isInExcludedNode) {
(0, _expVal.expVal)('platform_editor_paste_actions_menu_v2', 'variant', 'control');
}
} catch (_unused) {
return;
}
};