draft-js
Version:
A React framework for building text editors.
51 lines (39 loc) • 1.27 kB
JavaScript
/**
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*
* @format
*
* @emails oncall+draft_js
*
* This is unstable and not part of the public API and should not be used by
* production systems. This file may be update/removed without notice.
*/
var ContentBlockNode = require("./ContentBlockNode");
var getNextDelimiterBlockKey = function getNextDelimiterBlockKey(block, blockMap) {
var isExperimentalTreeBlock = block instanceof ContentBlockNode;
if (!isExperimentalTreeBlock) {
return null;
}
var nextSiblingKey = block.getNextSiblingKey();
if (nextSiblingKey) {
return nextSiblingKey;
}
var parent = block.getParentKey();
if (!parent) {
return null;
}
var nextNonDescendantBlock = blockMap.get(parent);
while (nextNonDescendantBlock && !nextNonDescendantBlock.getNextSiblingKey()) {
var parentKey = nextNonDescendantBlock.getParentKey();
nextNonDescendantBlock = parentKey ? blockMap.get(parentKey) : null;
}
if (!nextNonDescendantBlock) {
return null;
}
return nextNonDescendantBlock.getNextSiblingKey();
};
module.exports = getNextDelimiterBlockKey;
;