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 | 1x 1x 5x 5x 5x 5x 5x | import { createContentModelDocument, createDomToModelContext } from 'roosterjs-content-model-dom';
import type { IEditor } from 'roosterjs-content-model-types';
/**
* @internal
* Get ContentModelTable from a table element if it is present in the content model
*/
export function getCMTableFromTable(editor: IEditor, table: HTMLTableElement) {
const model = createContentModelDocument();
const context = createDomToModelContext({
zoomScale: editor.getDOMHelper().calculateZoomScale(),
recalculateTableSize: true,
allowCacheElement: true, // We need this cache so we can retrieve TD element and update TD width and height when resizing table
});
context.elementProcessors.element(model, table, context);
const firstBlock = model.blocks[0];
return firstBlock?.blockType == 'Table' ? firstBlock : undefined;
}
|