"use strict"; /** * 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;