Releases: IgniteUI/igniteui-angular
21.0.3
What's Changed
- fix(tooltip): show arrow for nested tooltips - 21.0.x by @RivaIvanova in #16608
- fix(docs): adding chat readme and info in changelog by @ChronosSF in #16583
- fix(grids): correctly exporting grid modules from public_api by @damyanpetev in #16622
Full Changelog: 21.0.2...21.0.3
21.0.2
What's Changed
- fix(*): drop chat re-export from root entry of public API by @damyanpetev in #16611
Full Changelog: 21.0.1...21.0.2
21.0.1
What's Changed
- Set proper indentation for tree grid child data records - 21.0.x by @mtsvyatkova in #16595
- Hierarchical grid: Export proper child data on inner levels to PDF by @gedinakova in #16594
- [CSV] Always print column headers if available. by @gedinakova in #16597
Full Changelog: 21.0.0...21.0.1
20.1.12
What's Changed
- refactor(button): refactor button themes by @didimmova in #16513
- refactor(grid): bootstrap color enhancement by @SisIvanova in #16545
- fix(grid): fix input overrides for grid cell by @didimmova in #16515
- fix(i18n): update calendar resource strings for multiple languages - 20.1.x by @randriova in #16529
- fix(stepper): step separator styles by @SisIvanova in #16560
- fix(list): styling discrepancies by @SisIvanova in #16567
- chore(schematics): update with official version by @Lipata in #16588
- [CSV] Always print column headers if available. by @gedinakova in #16596
Full Changelog: 20.1.11...20.1.12
21.0.0
New Features
IgxGrid,IgxTreeGrid,IgxHierarchicalGrid-
Added PDF export functionality to grid components. Grids can now be exported to PDF format alongside the existing Excel and CSV export options.
The new
IgxPdfExporterServicefollows the same pattern as Excel and CSV exporters:import { IgxPdfExporterService, IgxPdfExporterOptions } from 'igniteui-angular'; constructor(private pdfExporter: IgxPdfExporterService) {} exportToPdf() { const options = new IgxPdfExporterOptions('MyGridExport'); options.pageOrientation = 'landscape'; // 'portrait' or 'landscape' (default: 'landscape') options.pageSize = 'a4'; // 'a3', 'a4', 'a5', 'letter', 'legal', etc. options.fontSize = 10; options.showTableBorders = true; this.pdfExporter.export(this.grid, options); }
The grid toolbar exporter component now includes a PDF export button:
<igx-grid-toolbar> <igx-grid-toolbar-exporter [exportPDF]="true" [exportExcel]="true" [exportCSV]="true"> </igx-grid-toolbar-exporter> </igx-grid-toolbar>
Key features:
- Multi-page support with automatic page breaks
- Hierarchical visualization for TreeGrid (with indentation) and HierarchicalGrid (with child tables)
- Multi-level column headers (column groups) support
- Summary rows with proper value formatting
- Text truncation with ellipsis for long content
- Landscape orientation by default (suitable for wide grids)
- Internationalization support for all 19 supported languages
- Respects all grid export options (ignoreFiltering, ignoreSorting, ignoreColumnsVisibility, etc.)
-
Breaking Changes
Dependency Injection Refactor
- All internal DI now uses the
inject()API acrossigniteui-angular(no more constructor DI in library code). - If you extend our components/services or call their constructors directly, remove DI params and switch to
inject()(e.g.,protected foo = inject(FooService);). - App usage via templates remains the same; no action needed unless you subclass/override our types.
Multiple Entry Points Support
The library now supports multiple entry points for better tree-shaking and code splitting. While the main entry point (igniteui-angular) remains fully backwards compatible by re-exporting all granular entry points, we recommend migrating to the new entry points for optimal bundle sizes.
Entry Points:
igniteui-angular/core- Core utilities, services, and base typesigniteui-angular/directives- Common directives- Component-specific entry points:
igniteui-angular/grids,igniteui-angular/input-group,igniteui-angular/drop-down, etc. - Grid-specific entry points for tree-shakable imports:
igniteui-angular/grids/core- Shared grid infrastructure (columns, toolbar, filtering, sorting, etc.)igniteui-angular/grids/grid- Standard grid component (IgxGridComponent)igniteui-angular/grids/tree-grid- Tree grid component (IgxTreeGridComponent)igniteui-angular/grids/hierarchical-grid- Hierarchical grid component (IgxHierarchicalGridComponent,IgxRowIslandComponent)igniteui-angular/grids/pivot-grid- Pivot grid component (IgxPivotGridComponent,IgxPivotDataSelectorComponent)
Migration:
The ng update migration will prompt you to optionally migrate your imports to the new entry points. If you choose not to migrate, you can continue using the main entry point with full backwards compatibility.
To migrate manually later:
ng update igniteui-angular --migrate-only --from=20.1.0 --to=21.0.0Component Relocations:
- Input directives (
IgxHintDirective,IgxInputDirective,IgxLabelDirective,IgxPrefixDirective,IgxSuffixDirective) →igniteui-angular/input-group IgxAutocompleteDirective→igniteui-angular/drop-downIgxRadioGroupDirective→igniteui-angular/radio
Type Renames (to avoid conflicts):
Direction→CarouselAnimationDirection(in carousel)
Benefits:
- Better tree-shaking - unused components won't be bundled
- Code splitting - each component can be lazy-loaded separately
- Smaller bundle sizes - import only what you need
- Improved build performance
See the Angular Package Format documentation for more details on entry points.
21.0.0-rc.0
What's Changed
- refactor(button): refactor button themes by @didimmova in #16512
- refactor(grid): bootstrap color enhancement by @SisIvanova in #16544
- fix(*): exporting the grid actions in GRID_DIRECTIVES by @kdinev in #16573
- fix(i18n): update calendar resource strings for multiple languages - master by @randriova in #16530
- fix(stepper): step separator styles by @SisIvanova in #16559
Full Changelog: 21.0.0-beta.2...21.0.0-rc.0
21.0.0-beta.2
What's Changed
- fix(migrations): restore extra check for root entry imports only by @damyanpetev in #16569
Full Changelog: 21.0.0-beta.1...21.0.0-beta.2
21.0.0-beta.1
What's Changed
- chore(*): update to new cli beta by @Lipata in #16548
- chore(*): update ng@21.0.2 by @Lipata in #16564
- fix(typedoc): moving back to folder based export by @ChronosSF in #16568
Full Changelog: 21.0.0-beta.0...21.0.0-beta.1
21.0.0 Beta 0
What's Changed
- fix(grids): base types and implementations strict incompatibilities by @damyanpetev in #16556
- fix(calendar): material and indigo theme styles to match Ignite UI for Web Components by @simeonoff in #16543
Full Changelog: 21.0.0-alpha.9...21.0.0-beta.0
21.0.0-alpha.9
What's Changed
- refactor(*): migrate DI from constructors to inject() API by @IMinchev64 in #16075
- fix(igxGrid): Add check in case active target is a non-merged record. by @MayaKirova in #16537
- fix(migration): adding IGX_DRAG_DROP_DIRECTIVES to /directives by @kdinev in #16554
- refactor(migrations): use tsUtils for import checks in 21.0.0 migration by @Copilot in #16550
- fix(grids): GridTypeBase interface data type by @damyanpetev in #16555
Full Changelog: 21.0.0-alpha.8...21.0.0-alpha.9