@atlaskit/editor-plugin-selection-toolbar
Version:
@atlaskit/editor-plugin-selection-toolbar for @atlaskit/editor-core
26 lines (25 loc) • 892 B
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.getSelectionNodeTypes = getSelectionNodeTypes;
var _isExperimentEnabled = require("@atlaskit/platform-feature-experiments/is-experiment-enabled");
function getSelectionNodeTypes(state) {
var _state$selection = state.selection,
from = _state$selection.from,
to = _state$selection.to;
if ((0, _isExperimentEnabled.isExperimentEnabled)('platform_editor_reduce_memory_leaks')) {
var _selectionNodeTypes = new Set();
state.doc.nodesBetween(from, to, function (node) {
_selectionNodeTypes.add(node.type);
});
return Array.from(_selectionNodeTypes);
}
var selectionNodeTypes = [];
state.doc.nodesBetween(from, to, function (node) {
if (selectionNodeTypes.indexOf(node.type) !== 0) {
selectionNodeTypes.push(node.type);
}
});
return selectionNodeTypes;
}