Skip to content

Commit c49cc8e

Browse files
Copilotkdinev
andcommitted
Fix rendering of column headers beyond level 2 in hierarchy
Fixed bug where column headers at level 2 and beyond were not rendered: - Updated filter logic to include headers at each specific level - Now correctly includes both MultiColumnHeader and ColumnHeader types at any level - Maintains proper spanning behavior for leaf columns from earlier levels - Simplified logic for better clarity and correctness Co-authored-by: kdinev <[email protected]>
1 parent af9dcae commit c49cc8e

File tree

1 file changed

+12
-8
lines changed

1 file changed

+12
-8
lines changed

projects/igniteui-angular/src/lib/services/pdf/pdf-exporter.ts

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -243,15 +243,19 @@ export class IgxPdfExporterService extends IgxBaseExporter {
243243
for (let level = 0; level <= maxLevel; level++) {
244244
// Get headers for this level
245245
const headersForLevel = columns.filter(col => {
246-
if (level === 0) {
247-
// For level 0, include multi-column headers at level 0 and leaf columns that span multiple levels
248-
return (col.level === 0 && col.headerType === ExportHeaderType.MultiColumnHeader) ||
249-
(col.level === 0 && col.headerType === ExportHeaderType.ColumnHeader);
250-
} else {
251-
// For other levels, include headers at this level or leaf columns that need to span down
252-
return (col.level === level && col.headerType === ExportHeaderType.MultiColumnHeader) ||
253-
(col.level < level && col.headerType === ExportHeaderType.ColumnHeader);
246+
// Include multi-column headers at this level
247+
if (col.level === level && col.headerType === ExportHeaderType.MultiColumnHeader) {
248+
return true;
249+
}
250+
// Include leaf column headers at this level
251+
if (col.level === level && col.headerType === ExportHeaderType.ColumnHeader) {
252+
return true;
253+
}
254+
// For levels > 0, include leaf columns from earlier levels that need to span down
255+
if (level > 0 && col.level < level && col.headerType === ExportHeaderType.ColumnHeader) {
256+
return true;
254257
}
258+
return false;
255259
}).filter(col => col.columnSpan > 0);
256260

257261
if (headersForLevel.length === 0) continue;

0 commit comments

Comments
 (0)