slate-edit-table
Version:
A Slate plugin to handle keyboard events in tables.
34 lines (24 loc) • 919 B
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _TablePosition = require('./TablePosition');
var _TablePosition2 = _interopRequireDefault(_TablePosition);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
/**
* Is the selection in a table
*/
function isSelectionInTable(opts, value) {
if (!value.selection.startKey) return false;
var startKey = value.startKey,
endKey = value.endKey;
var startPosition = _TablePosition2.default.create(opts, value.document, startKey);
var endPosition = _TablePosition2.default.create(opts, value.document, endKey);
// Only handle events in tables
if (!startPosition.isInTable() || !endPosition.isInTable()) {
return false;
}
// Inside the same table
return startPosition.table === endPosition.table;
}
exports.default = isSelectionInTable;