Skip to content

Commit b4697bb

Browse files
committed
Add documentation for grid structure and types in igniteui-angular-grids
- Created structure.md detailing column configuration, sorting, filtering, and selection for grids. - Introduced types.md covering Tree Grid, Hierarchical Grid, Grid Lite, and Pivot Grid, including their unique features and data operation behaviors.
1 parent a05b8a9 commit b4697bb

9 files changed

Lines changed: 438 additions & 489 deletions

File tree

.github/copilot-instructions.md

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -120,11 +120,5 @@ Domain-specific skills for AI-assisted development are located in the [`skills/`
120120

121121
- [`skills/igniteui-angular-components`](../skills/igniteui-angular-components/SKILL.md) — Components — Form Controls (Input Group, Combo, Select, Date/Time Pickers, Calendar, forms integration)
122122
- [`skills/igniteui-angular-components-layout`](../skills/igniteui-angular-components-layout/SKILL.md) — Components — Layout & Display (Tabs, Stepper, Accordion, List, Card, Dialog, Snackbar, directives)
123-
- [`skills/igniteui-angular-grids`](../skills/igniteui-angular-grids/SKILL.md) — Data Grids — Structure (grid type selection, column configuration, sorting, filtering, selection)
124-
- [`skills/igniteui-angular-grids-features`](../skills/igniteui-angular-grids-features/SKILL.md) — Data Grids — Features (editing, grouping, summaries, toolbar, export, row drag, master-detail)
125-
- [`skills/igniteui-angular-grids-types`](../skills/igniteui-angular-grids-types/SKILL.md) — Data Grids — Grid Types (Tree Grid, Hierarchical Grid, Grid Lite, Pivot Grid specifics)
126-
- [`skills/igniteui-angular-grid-data-operations`](../skills/igniteui-angular-grid-data-operations/SKILL.md) — Grid Data Operations (sorting, filtering, grouping, canonical grid import patterns)
127-
- [`skills/igniteui-angular-grid-paging-remote`](../skills/igniteui-angular-grid-paging-remote/SKILL.md) — Grid Paging & Remote (paging, remote data operations, virtualization, multi-grid coordination)
128-
- [`skills/igniteui-angular-grid-editing`](../skills/igniteui-angular-grid-editing/SKILL.md) — Grid Editing (cell editing, row editing, batch editing, validation, summaries)
129-
- [`skills/igniteui-angular-grid-state`](../skills/igniteui-angular-grid-state/SKILL.md) — Grid State (state persistence, Tree Grid / Hierarchical Grid / Pivot Grid / Grid Lite operations)
123+
- [`skills/igniteui-angular-grids`](../skills/igniteui-angular-grids/SKILL.md) — Data Grids (grid type selection, column config, sorting, filtering, selection, editing, grouping, paging, remote data, state persistence, Tree Grid, Hierarchical Grid, Grid Lite, Pivot Grid)
130124
- [`skills/igniteui-angular-theming`](../skills/igniteui-angular-theming/SKILL.md) — Theming & Styling (includes MCP server setup)

skills/igniteui-angular-grids/SKILL.md

Lines changed: 52 additions & 307 deletions
Large diffs are not rendered by default.

skills/igniteui-angular-grid-data-operations/SKILL.md renamed to skills/igniteui-angular-grids/references/data-operations.md

Lines changed: 16 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,10 @@
1-
---
2-
name: igniteui-angular-grid-data-operations
3-
description: "Sorting, filtering, grouping, and canonical grid import patterns for Ignite UI Angular grids. Use when users ask to sort, filter, or group grid data programmatically or via the template, work with sorting/filtering expressions, import a grid component, or access a grid instance with viewChild."
4-
user-invokable: true
5-
---
1+
# Grid Data Operations — Sorting, Filtering & Grouping
62

7-
# Ignite UI for Angular — Grid Sorting, Filtering & Grouping
8-
9-
## Description
10-
11-
This skill teaches AI agents how to implement **sorting, filtering, and grouping** with Ignite UI for Angular grids. It also provides the **canonical grid import patterns** and grid instance access that all sibling grid skills reference.
12-
13-
> **When to use this skill vs. the Data Grids skill**
14-
>
15-
> | Skill | Focus |
16-
> |---|---|
17-
> | **Data Grids** (`igniteui-angular-grids`) | Grid structure — choosing a grid type, column configuration, templates, layout, selection, toolbar, export |
18-
> | **Grid Data Operations** (this skill) | Sorting, filtering, grouping, and canonical grid import patterns |
19-
> | **Grid Paging & Remote** (`igniteui-angular-grid-paging-remote`) | Paging, remote data operations, virtualization, multi-grid coordination |
20-
> | **Grid Editing** (`igniteui-angular-grid-editing`) | Cell editing, row editing, batch editing, validation, summaries |
21-
> | **Grid State** (`igniteui-angular-grid-state`) | State persistence, Tree Grid / Hierarchical Grid / Pivot Grid / Grid Lite data operations |
22-
>
23-
> If the user's question is about *what* to render (columns, templates, grid type), use the Data Grids skill. If it's about *how data flows* (sorting, filtering, remote services, transactions), use this skill and its siblings.
24-
25-
## Prerequisites
26-
27-
- Angular 20+ project
28-
- `igniteui-angular` installed, **or** `@infragistics/igniteui-angular` for licensed users — both packages share the same entry-point structure
29-
- A theme applied (see the Theming skill)
30-
- Familiarity with the Data Grids skill for grid setup basics
3+
> **Part of the [`igniteui-angular-grids`](../SKILL.md) skill hub.**
4+
> For grid setup, column config — see [`structure.md`](./structure.md).
5+
> For paging and remote data — see [`paging-remote.md`](./paging-remote.md).
6+
> For editing and validation — see [`editing.md`](./editing.md).
7+
> For state persistence — see [`state.md`](./state.md).
318
329
## Accessing the Grid Instance
3310

@@ -134,13 +111,13 @@ export class CompanyGridComponent {
134111
</igx-hierarchical-grid>
135112
```
136113

137-
> **CRITICAL**: Every programmatic example in this skill uses Flat Grid (`IgxGridComponent`) by default. For Tree Grid substitute `IgxTreeGridComponent` and `#treeGrid`. For Hierarchical Grid substitute `IgxHierarchicalGridComponent` and `#hGrid`. The sorting, filtering, and editing APIs are either the same or very similar across all three grid types (Flat, Tree, Hierarchical). **Pivot Grid does NOT support standard sorting/filtering/editing APIs** — see the [Grid State skill](../igniteui-angular-grid-state/SKILL.md). **Grid Lite has its own lightweight sorting/filtering API** — see the [Grid State skill](../igniteui-angular-grid-state/SKILL.md).
114+
> **CRITICAL**: Every programmatic example in this file uses Flat Grid (`IgxGridComponent`) by default. For Tree Grid substitute `IgxTreeGridComponent` and `#treeGrid`. For Hierarchical Grid substitute `IgxHierarchicalGridComponent` and `#hGrid`. The sorting, filtering, and editing APIs are either the same or very similar across all three grid types (Flat, Tree, Hierarchical). **Pivot Grid does NOT support standard sorting/filtering/editing APIs** — see [`state.md`](./state.md). **Grid Lite has its own lightweight sorting/filtering API** — see [`state.md`](./state.md).
138115
139116
## Sorting
140117

141118
> **Docs:** [Sorting](https://www.infragistics.com/products/ignite-ui-angular/angular/components/grid/sorting) · [Tree Grid](https://www.infragistics.com/products/ignite-ui-angular/angular/components/treegrid/sorting) · [Hierarchical Grid](https://www.infragistics.com/products/ignite-ui-angular/angular/components/hierarchicalgrid/sorting)
142119
143-
> **Applies to**: Flat Grid, Tree Grid, and Hierarchical Grid. Pivot Grid uses dimension-level sorting instead (see [Grid State skill](../igniteui-angular-grid-state/SKILL.md)). **Grid Lite** uses a different sorting API — see the [Grid State skill](../igniteui-angular-grid-state/SKILL.md).
120+
> **Applies to**: Flat Grid, Tree Grid, and Hierarchical Grid. Pivot Grid uses dimension-level sorting instead (see [`state.md`](./state.md)). **Grid Lite** uses a different sorting API — see [`state.md`](./state.md).
144121
>
145122
> **Tree Grid behavior**: sorting is applied per-level — children are sorted among their siblings, not globally flattened.
146123
>
@@ -235,7 +212,7 @@ class PrioritySortStrategy implements ISortingStrategy {
235212

236213
> **Docs:** [Filtering](https://www.infragistics.com/products/ignite-ui-angular/angular/components/grid/filtering) · [Excel-Style](https://www.infragistics.com/products/ignite-ui-angular/angular/components/grid/excel-style-filtering) · [Advanced](https://www.infragistics.com/products/ignite-ui-angular/angular/components/grid/advanced-filtering) (substitute URL prefix per grid type)
237214
238-
> **Applies to**: Flat Grid, Tree Grid, and Hierarchical Grid. Pivot Grid uses dimension-level filtering instead (see [Grid State skill](../igniteui-angular-grid-state/SKILL.md)). **Grid Lite** uses a different filtering API — see the [Grid State skill](../igniteui-angular-grid-state/SKILL.md).
215+
> **Applies to**: Flat Grid, Tree Grid, and Hierarchical Grid. Pivot Grid uses dimension-level filtering instead (see [`state.md`](./state.md)). **Grid Lite** uses a different filtering API — see [`state.md`](./state.md).
239216
>
240217
> **Tree Grid behavior**: filtering is **recursive** — when a child matches, all its ancestor rows are shown (even if they don't match) and auto-expanded.
241218
>
@@ -448,11 +425,11 @@ const monthGroupComparer = (a: Date, b: Date) => {
448425
8. **Hierarchical Grid levels are independent** — sorting/filtering don't cascade; configure on `<igx-row-island>`
449426
9. **Use `filteringExpressionsTree` for programmatic filtering**`advancedFilteringExpressionsTree` is only for the advanced filtering dialog
450427

451-
## Related Skills
428+
## See Also
452429

453-
- [`igniteui-angular-grid-paging-remote`](../igniteui-angular-grid-paging-remote/SKILL.md) — Paging, remote data operations, virtualization, and multi-grid coordination
454-
- [`igniteui-angular-grid-editing`](../igniteui-angular-grid-editing/SKILL.md) — Cell editing, row editing, batch editing, validation, and summaries
455-
- [`igniteui-angular-grid-state`](../igniteui-angular-grid-state/SKILL.md) — State persistence, Tree Grid / Hierarchical Grid / Pivot Grid / Grid Lite data operations
456-
- [`igniteui-angular-grids`](../igniteui-angular-grids/SKILL.md) — Grid structure, column configuration, templates, layout, selection, toolbar, export
457-
- [`igniteui-angular-components`](../igniteui-angular-components/SKILL.md)Components & Layout
458-
- [`igniteui-angular-theming`](../igniteui-angular-theming/SKILL.md) — Theming & Styling
430+
- [`paging-remote.md`](./paging-remote.md) — Paging, remote data operations, virtualization, multi-grid coordination
431+
- [`editing.md`](./editing.md) — Cell editing, row editing, batch editing, validation, summaries
432+
- [`state.md`](./state.md) — State persistence, Tree Grid / Hierarchical Grid / Pivot Grid / Grid Lite data operations
433+
- [`structure.md`](./structure.md) — Grid structure, column configuration, templates, layout, selection
434+
- [`../../igniteui-angular-components/SKILL.md`](../../igniteui-angular-components/SKILL.md)Non-grid Ignite UI components
435+
- [`../../igniteui-angular-theming/SKILL.md`](../../igniteui-angular-theming/SKILL.md) — Theming & Styling

skills/igniteui-angular-grid-editing/SKILL.md renamed to skills/igniteui-angular-grids/references/editing.md

Lines changed: 13 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,9 @@
1-
---
2-
name: igniteui-angular-grid-editing
3-
description: "Cell editing, row editing, batch editing, validation, and summaries patterns for Ignite UI Angular grids. Use when users ask to make a grid editable, implement cell or row editing, enable batch editing with undo/redo, add CRUD operations to a grid, validate grid input, or display column summaries."
4-
user-invokable: true
5-
---
6-
7-
# Ignite UI for Angular — Grid Editing, Validation & Summaries
8-
9-
## Description
10-
11-
This skill teaches AI agents how to implement **editing, validation, and summary** patterns with Ignite UI for Angular grids. It covers cell editing, row editing, batch editing with transactions, Excel-style editing workflows, editing events, validation (template-driven and reactive), and built-in/custom summaries.
12-
13-
> **For grid import patterns and accessing grid instances, see the [`igniteui-angular-grid-data-operations`](../igniteui-angular-grid-data-operations/SKILL.md) skill.**
14-
15-
## Prerequisites
1+
# Grid Editing — Cell Editing, Row Editing, Batch Editing & Validation
162

17-
- Angular 20+ project
18-
- `igniteui-angular` installed, **or** `@infragistics/igniteui-angular` for licensed users — both packages share the same entry-point structure
19-
- A theme applied (see the Theming skill)
20-
- Familiarity with the Data Grids skill for grid setup basics
3+
> **Part of the [`igniteui-angular-grids`](../SKILL.md) skill hub.**
4+
> For grid import patterns and `viewChild` access — see [`data-operations.md`](./data-operations.md).
5+
> For state persistence — see [`state.md`](./state.md).
6+
> For paging and remote data — see [`paging-remote.md`](./paging-remote.md).
217
228
## Editing Data Through the Grid
239

@@ -164,7 +150,7 @@ export class CarsGridComponent {
164150
> **Key inputs summary:**
165151
> - `[rowEditable]="true"` — enables the Done/Cancel overlay per row
166152
> - `[editable]="true"` on each `igx-column` — marks which fields the user can change
167-
> - `[primaryKey]`**required** for editing to work
153+
> - `[primaryKey]` **required** for editing to work
168154
> - `[autoGenerate]="false"` — always define columns explicitly when editing is enabled so you control which fields are editable
169155
> - `<igx-action-strip>` with `<igx-grid-editing-actions>` — adds hover Edit/Delete buttons and an optional Add Row button automatically
170156
@@ -484,11 +470,11 @@ When grouping is enabled, summaries appear for each group. Control this with:
484470
8. **Import the correct directives/components**`IGX_GRID_DIRECTIVES`, `IGX_TREE_GRID_DIRECTIVES`, `IGX_HIERARCHICAL_GRID_DIRECTIVES`, or `IGX_PIVOT_GRID_DIRECTIVES`
485471
9. **Use signals for data**`[data]="myData()"` with `signal<T[]>([])`
486472

487-
## Related Skills
473+
## See Also
488474

489-
- [`igniteui-angular-grid-data-operations`](../igniteui-angular-grid-data-operations/SKILL.md) — Sorting, filtering, grouping, and canonical grid import patterns
490-
- [`igniteui-angular-grid-paging-remote`](../igniteui-angular-grid-paging-remote/SKILL.md) — Paging, remote data operations, virtualization, and multi-grid coordination
491-
- [`igniteui-angular-grid-state`](../igniteui-angular-grid-state/SKILL.md) — State persistence, Tree Grid / Hierarchical Grid / Pivot Grid / Grid Lite data operations
492-
- [`igniteui-angular-grids`](../igniteui-angular-grids/SKILL.md) — Grid structure, column configuration, templates, layout, selection, toolbar, export
493-
- [`igniteui-angular-components`](../igniteui-angular-components/SKILL.md)Components & Layout
494-
- [`igniteui-angular-theming`](../igniteui-angular-theming/SKILL.md) — Theming & Styling
475+
- [`data-operations.md`](./data-operations.md) — Sorting, filtering, grouping, and canonical grid import patterns
476+
- [`paging-remote.md`](./paging-remote.md) — Paging, remote data operations, virtualization
477+
- [`state.md`](./state.md) — State persistence, Tree Grid / Hierarchical Grid / Pivot Grid / Grid Lite data operations
478+
- [`structure.md`](./structure.md) — Grid structure, column configuration, templates, layout, selection
479+
- [`../../igniteui-angular-components/SKILL.md`](../../igniteui-angular-components/SKILL.md)Non-grid Ignite UI components
480+
- [`../../igniteui-angular-theming/SKILL.md`](../../igniteui-angular-theming/SKILL.md) — Theming & Styling

skills/igniteui-angular-grids-features/SKILL.md renamed to skills/igniteui-angular-grids/references/features.md

Lines changed: 21 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,13 @@
1-
---
2-
name: igniteui-angular-grids-features
3-
description: "Editing, grouping, summaries, toolbar, export, and other advanced features for Ignite UI Angular grids. Use when users ask to add a toolbar, export grid data to Excel or CSV, group rows by a column, add row drag-and-drop, show an action strip, merge cells, or move and pin columns."
4-
user-invokable: true
5-
---
1+
# Grid Features — Grouping, Summaries, Toolbar, Export, Row Drag & More
62

7-
# Ignite UI for Angular — Grid Features Skill
8-
9-
## Description
10-
11-
This skill covers advanced grid features for Ignite UI for Angular: cell editing, row editing, batch editing, row adding/deleting, validation, grouping, summaries, cell merging, toolbar, export (Excel & CSV), virtualization, row drag, action strip, master-detail, and clipboard.
12-
13-
> **Related Skill: Grid Setup & Configuration**
14-
>
15-
> For grid type selection, column configuration, sorting, filtering, and selection — see the [`igniteui-angular-grids`](../igniteui-angular-grids/SKILL.md) skill.
16-
> For Tree Grid, Hierarchical Grid, Grid Lite, and Pivot Grid specifics — see [`igniteui-angular-grids-types`](../igniteui-angular-grids-types/SKILL.md).
3+
> **Part of the [`igniteui-angular-grids`](../SKILL.md) skill hub.**
4+
> For grid setup, column config, sorting, filtering, selection — see [`structure.md`](./structure.md).
5+
> For Tree Grid, Hierarchical Grid, Grid Lite, Pivot Grid specifics — see [`types.md`](./types.md).
6+
> For full editing coverage (cell/row/batch) — see [`editing.md`](./editing.md).
177
188
## Editing
199

20-
> **Full editing coverage is in the [`igniteui-angular-grid-editing`](../igniteui-angular-grid-editing/SKILL.md) skill**, which includes cell editing, row editing, batch editing with transactions, row adding/deleting, validation, and summaries. Use that skill for any editing task.
10+
> **Full editing coverage is in [`editing.md`](./editing.md)**, which includes cell editing, row editing, batch editing with transactions, row adding/deleting, validation, and summaries. Use that reference for any editing task.
2111
2212
Quick reference:
2313

@@ -49,9 +39,11 @@ this.gridRef().groupBy({ fieldName: 'category', dir: SortingDirection.Asc });
4939
this.gridRef().clearGrouping('category');
5040
```
5141

42+
For advanced programmatic grouping patterns — see [`data-operations.md`](./data-operations.md).
43+
5244
## Summaries
5345

54-
> **Full summaries coverage (built-in and custom summary operands) is in the [`igniteui-angular-grid-editing`](../igniteui-angular-grid-editing/SKILL.md) skill.**
46+
> **Full summaries coverage (built-in and custom summary operands) is in [`editing.md`](./editing.md).**
5547
5648
Quick reference — enable per-column summaries:
5749

@@ -141,15 +133,15 @@ export class MyComponent {
141133

142134
## Virtualization & Performance
143135

144-
> **Docs:** [Virtualization](https://www.infragistics.com/products/ignite-ui-angular/angular/components/general-changelog-dv)
145-
146136
Grids use virtualization by default for both rows and columns — no setup needed. For remote data/paging:
147137

148138
```html
149139
<igx-grid [data]="data()" [totalItemCount]="totalCount" (dataPreLoad)="onDataPreLoad($event)">
150140
</igx-grid>
151141
```
152142

143+
For full remote virtualization patterns — see [`paging-remote.md`](./paging-remote.md).
144+
153145
## Row Drag
154146

155147
> **Docs:** [Row Drag](https://www.infragistics.com/products/ignite-ui-angular/angular/components/grid/row-drag)
@@ -214,15 +206,13 @@ Grids support copy to clipboard by default. Configure via:
214206
2. **Use signals** for data binding — `[data]="myData()"` with `signal<T[]>([])`
215207
3. **Virtualization is automatic** — don't wrap grids in virtual scroll containers
216208
4. **GroupBy is Flat Grid only** — Tree Grid uses hierarchy, Hierarchical Grid uses row islands, Pivot Grid uses dimensions
217-
5. **For data operation patterns** — see the [Grid Data Operations skill](../igniteui-angular-grid-data-operations/SKILL.md) (sorting, filtering, grouping), [Grid Paging & Remote skill](../igniteui-angular-grid-paging-remote/SKILL.md) (paging, remote data, virtualization), [Grid Editing skill](../igniteui-angular-grid-editing/SKILL.md) (editing, validation, summaries), and [Grid State skill](../igniteui-angular-grid-state/SKILL.md) (state persistence, grid-type-specific operations)
218-
219-
## Related Skills
220-
221-
- **[Grid Setup & Configuration](../igniteui-angular-grids/SKILL.md)** — Grid type selection, column configuration, sorting, filtering, selection
222-
- **[Grid Types](../igniteui-angular-grids-types/SKILL.md)** — Tree Grid, Hierarchical Grid, Grid Lite, and Pivot Grid specifics
223-
- **[Grid Data Operations](../igniteui-angular-grid-data-operations/SKILL.md)** — Sorting, filtering, grouping, and canonical grid import patterns
224-
- **[Grid Paging & Remote](../igniteui-angular-grid-paging-remote/SKILL.md)** — Paging, remote data operations, virtualization, multi-grid coordination
225-
- **[Grid Editing](../igniteui-angular-grid-editing/SKILL.md)** — Cell editing, row editing, batch editing, validation, summaries
226-
- **[Grid State](../igniteui-angular-grid-state/SKILL.md)** — State persistence, Tree Grid / Hierarchical Grid / Pivot Grid / Grid Lite data operations
227-
- **[Theming](../igniteui-angular-theming/SKILL.md)** — Grid styling and theming
228-
- **[Components](../igniteui-angular-components/SKILL.md)** — Non-grid Ignite UI components
209+
210+
## See Also
211+
212+
- [`structure.md`](./structure.md) — Column config, sorting UI, filtering UI, selection
213+
- [`types.md`](./types.md) — Tree Grid, Hierarchical Grid, Grid Lite, Pivot Grid specifics
214+
- [`data-operations.md`](./data-operations.md) — Programmatic sorting, filtering, grouping
215+
- [`paging-remote.md`](./paging-remote.md) — Paging, remote data operations, virtualization
216+
- [`editing.md`](./editing.md) — Cell editing, row editing, batch editing, validation, summaries
217+
- [`state.md`](./state.md) — State persistence
218+
- [`../../igniteui-angular-theming/SKILL.md`](../../igniteui-angular-theming/SKILL.md) — Grid styling and theming

0 commit comments

Comments
 (0)