/** Проверка раскладки закреплённых колонок (spec sheet-table): ячейки td[data-pinned] одной строки по порядку примыкают. */ export interface PinnedCellRect { left: number; width: number } export function findPinnedGap(cells: PinnedCellRect[], tolerancePx = 1): number { for (let i = 0; i + 1 < cells.length; i++) { if (Math.abs(cells[i + 1].left - (cells[i].left + cells[i].width)) > tolerancePx) return i; } return -1; }