Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | 1x 1x 1x 85x 74x 6x 3x 2x | import { hasSelectionInBlockGroup } from './hasSelectionInBlockGroup'; import { hasSelectionInSegment } from './hasSelectionInSegment'; import type { ReadonlyContentModelBlock } from 'roosterjs-content-model-types'; /** * Check if there is selection within the given block * @param block The block to check */ export function hasSelectionInBlock(block: ReadonlyContentModelBlock): boolean { switch (block.blockType) { case 'Paragraph': return block.segments.some(hasSelectionInSegment); case 'Table': return block.rows.some(row => row.cells.some(hasSelectionInBlockGroup)); case 'BlockGroup': return hasSelectionInBlockGroup(block); case 'Divider': case 'Entity': return !!block.isSelected; default: return false; } } |