igniteui-angular 21.1.0-rc.5 → 21.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (33) hide show
  1. package/fesm2022/igniteui-angular-directives.mjs +28 -28
  2. package/fesm2022/igniteui-angular-directives.mjs.map +1 -1
  3. package/fesm2022/igniteui-angular-grids-core.mjs +3 -0
  4. package/fesm2022/igniteui-angular-grids-core.mjs.map +1 -1
  5. package/fesm2022/igniteui-angular-grids-grid.mjs +8 -7
  6. package/fesm2022/igniteui-angular-grids-grid.mjs.map +1 -1
  7. package/fesm2022/igniteui-angular-grids-lite.mjs +2 -0
  8. package/fesm2022/igniteui-angular-grids-lite.mjs.map +1 -1
  9. package/fesm2022/igniteui-angular-grids-pivot-grid.mjs +2 -2
  10. package/fesm2022/igniteui-angular-grids-pivot-grid.mjs.map +1 -1
  11. package/package.json +4 -4
  12. package/skills/igniteui-angular-components/SKILL.md +10 -12
  13. package/skills/igniteui-angular-components/references/charts.md +20 -10
  14. package/skills/igniteui-angular-components/references/data-display.md +102 -22
  15. package/skills/igniteui-angular-components/references/directives.md +127 -4
  16. package/skills/igniteui-angular-components/references/feedback.md +11 -3
  17. package/skills/igniteui-angular-components/references/form-controls.md +27 -4
  18. package/skills/igniteui-angular-components/references/layout-manager.md +5 -0
  19. package/skills/igniteui-angular-components/references/layout.md +11 -2
  20. package/skills/igniteui-angular-components/references/setup.md +29 -9
  21. package/skills/igniteui-angular-grids/SKILL.md +7 -7
  22. package/skills/igniteui-angular-grids/references/data-operations.md +15 -5
  23. package/skills/igniteui-angular-grids/references/editing.md +12 -1
  24. package/skills/igniteui-angular-grids/references/features.md +26 -10
  25. package/skills/igniteui-angular-grids/references/paging-remote.md +13 -4
  26. package/skills/igniteui-angular-grids/references/state.md +17 -151
  27. package/skills/igniteui-angular-grids/references/structure.md +9 -0
  28. package/skills/igniteui-angular-grids/references/types.md +107 -26
  29. package/skills/igniteui-angular-theming/SKILL.md +6 -106
  30. package/skills/igniteui-angular-theming/references/common-patterns.md +45 -0
  31. package/skills/igniteui-angular-theming/references/mcp-setup.md +77 -0
  32. package/types/igniteui-angular-grids-grid.d.ts +1 -0
  33. package/types/igniteui-angular-grids-lite.d.ts +2 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "igniteui-angular",
3
- "version": "21.1.0-rc.5",
3
+ "version": "21.1.1",
4
4
  "description": "Ignite UI for Angular is a dependency-free Angular toolkit for building modern web apps",
5
5
  "author": "Infragistics",
6
6
  "license": "SEE LICENSE IN LICENSE",
@@ -86,8 +86,8 @@
86
86
  "@angular/forms": "21",
87
87
  "hammerjs": "^2.0.8",
88
88
  "@types/hammerjs": "^2.0.46",
89
- "igniteui-webcomponents": "^6.5.0",
90
- "igniteui-grid-lite": "~0.5.0"
89
+ "igniteui-webcomponents": "^7.0.0",
90
+ "igniteui-grid-lite": "~0.6.0"
91
91
  },
92
92
  "peerDependenciesMeta": {
93
93
  "hammerjs": {
@@ -104,7 +104,7 @@
104
104
  }
105
105
  },
106
106
  "igxDevDependencies": {
107
- "@igniteui/angular-schematics": "~21.1.1490-beta.0"
107
+ "@igniteui/angular-schematics": "~21.1.1490"
108
108
  },
109
109
  "ng-update": {
110
110
  "migrations": "./migrations/migration-collection.json",
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  name: igniteui-angular-components
3
- description: "All Ignite UI Angular UI components: application setup and architecture, form controls (Input Group, Combo, Select, Date/Time Pickers, Calendar, Checkbox, Radio, Switch, Slider, reactive forms), layout (Tabs, Bottom Navigation, Stepper, Accordion, Splitter, Navigation Drawer, Layout Manager directives), data display (List, Tree, Card, Chips, Avatar, Badge, Icon, Carousel, Paginator, Progress, Chat), feedback/overlays (Dialog, Snackbar, Toast, Banner), directives (Button, Ripple, Tooltip, Drag and Drop), Dock Manager, and Charts (Area Chart, Bar Chart, Column Chart, Stock/Financial Chart, Pie Chart, IgxCategoryChart, IgxFinancialChart, IgxDataChart, IgxPieChart). Use for any non-grid Ignite UI Angular UI question."
4
- user-invokable: true
3
+ description: "Covers all non-grid Ignite UI for Angular UI components: application scaffolding and setup, form controls (inputs, combos, selects, date/time pickers, calendar, checkbox, radio, switch, slider), layout containers (tabs, stepper, accordion, splitter, navigation drawer), data-display components (list, tree, card, chips, carousel, paginator, progress indicators, chat), feedback overlays (dialog, snackbar, toast, banner), directives (button, icon button, button group, ripple, tooltip, drag-and-drop), Dock Manager, Layout Manager, and Charts. Use when users ask about any Ignite UI Angular component that is NOT a data grid — such as forms, dropdowns, pickers, dialogs, navigation, lists, trees, cards, charts, or initial project setup. Do NOT use for data grids, tables, or tabular data — use igniteui-angular-grids instead. Do NOT use for theming or styling — use igniteui-angular-theming instead."
4
+ user-invocable: true
5
5
  ---
6
6
 
7
7
  # Ignite UI for Angular — UI Components
@@ -18,13 +18,10 @@ You are **required** to complete ALL of the following steps before producing any
18
18
  **STEP 1 — Identify every component or feature involved.**
19
19
  Map the user's request to one or more rows in the Task → Reference File table below. A single request often spans multiple categories (e.g., a form inside a Dialog requires reading both `form-controls.md` AND `feedback.md`).
20
20
 
21
- **STEP 2 — Read every identified reference file in full.**
22
- Call `read_file` (or equivalent) on each reference file identified in Step 1. You must do this even if you believe you already know the answer. Do not skip, skim, or partially read a reference file.
21
+ **STEP 2 — Read every identified reference file in full (PARALLEL).**
22
+ Call `read_file` (or equivalent) on **all** reference files identified in Step 1 **in a single parallel batch** — do NOT read them one at a time sequentially. You must do this even if you believe you already know the answer. Do not skip, skim, or partially read a reference file.
23
23
 
24
- **STEP 3 — Check app setup.**
25
- If the component is new to the project (or you're scaffolding a new feature), also read [`references/setup.md`](./references/setup.md) to verify the correct providers and entry-point import patterns. Missing `provideAnimations()` is the most common source of runtime failures.
26
-
27
- **STEP 4 — Only then produce output.**
24
+ **STEP 3 — Only then produce output.**
28
25
  Base your code and explanation exclusively on what you read. If the reference files do not cover something, say so explicitly rather than guessing.
29
26
 
30
27
  ### Task → Reference File
@@ -36,7 +33,7 @@ Base your code and explanation exclusively on what you read. If the reference fi
36
33
  | Tabs, Bottom Navigation, Stepper, Accordion, Expansion Panel, Splitter, Navigation Drawer | [`references/layout.md`](./references/layout.md) |
37
34
  | List, Tree, Card, Chips, Avatar, Badge, Icon, Carousel, Paginator, Progress Indicators, Chat | [`references/data-display.md`](./references/data-display.md) |
38
35
  | Dialog, Snackbar, Toast, Banner | [`references/feedback.md`](./references/feedback.md) |
39
- | Button, Icon Button, Ripple, Tooltip, Drag and Drop | [`references/directives.md`](./references/directives.md) |
36
+ | Button, Icon Button, Button Group, Ripple, Tooltip, Drag and Drop | [`references/directives.md`](./references/directives.md) |
40
37
  | Layout Manager (`igxLayout`, `igxFlex` directives), Dock Manager (`igc-dockmanager` web component) | [`references/layout-manager.md`](./references/layout-manager.md) |
41
38
  | Charts (Area, Bar, Column, Stock/Financial, Pie), chart configuration, chart features (animation, tooltips, markers, highlighting, zooming), data binding | [`references/charts.md`](./references/charts.md) |
42
39
 
@@ -47,11 +44,11 @@ Base your code and explanation exclusively on what you read. If the reference fi
47
44
  ## Prerequisites
48
45
 
49
46
  - Angular 20+ project
50
- - `igniteui-angular` installed via `npm install igniteui-angular`, **or** `@infragistics/igniteui-angular` for licensed users
51
- - A theme applied (see [`igniteui-angular-theming`](../igniteui-angular-theming/SKILL.md))
47
+ - `@angular/cli` installed
48
+ - `igniteui-angular` or `@infragistics/igniteui-angular` added to the project via `ng add igniteui-angular` (or the `@infragistics` variant) or `npm install` — see [Package Variants](#package-variants) below.
49
+ - A theme applied to the application (see [`igniteui-angular-theming`](../igniteui-angular-theming/SKILL.md)).
52
50
  - `provideAnimations()` in `app.config.ts` — **required before using any overlay or animated component**
53
51
 
54
- ---
55
52
 
56
53
  ## Package Variants
57
54
 
@@ -61,6 +58,7 @@ Base your code and explanation exclusively on what you read. If the reference fi
61
58
  | `@infragistics/igniteui-angular` | Requires private `@infragistics` registry | Licensed / enterprise users |
62
59
 
63
60
  Both packages share **identical entry-point paths**. Check `package.json` and use that package name as the prefix for every import. Never import from the root barrel of either package.
61
+ Both packages can be added to the project using `@angular/cli` with the following commands: `ng add igniteui-angular` or `ng add @infragistics/igniteui-angular`.
64
62
 
65
63
  ---
66
64
 
@@ -1,5 +1,17 @@
1
1
  # Angular Charts Reference
2
2
 
3
+ ## Contents
4
+
5
+ - [Overview](#overview)
6
+ - [General Chart Configuration](#general-chart-configuration)
7
+ - [Key Chart Features](#key-chart-features)
8
+ - [Chart Types Reference](#chart-types-reference)
9
+ - [Common API Members by Chart Type](#common-api-members-by-chart-type)
10
+ - [Import Paths](#import-paths)
11
+ - [Styling & Theming](#styling--theming)
12
+ - [Data Requirements](#data-requirements)
13
+ - [Documentation References](#documentation-references)
14
+
3
15
  ## Overview
4
16
 
5
17
  Ignite UI for Angular Charts provides 65+ chart types for data visualization. Charts are packaged separately in `igniteui-angular-charts` (or `@infragistics/igniteui-angular-charts` for licensed users).
@@ -303,7 +315,6 @@ highlightingMode: HighlightingMode;
303
315
  import {
304
316
  IgxCategoryChartModule, // provides IgxCategoryChartComponent
305
317
  IgxFinancialChartModule, // provides IgxFinancialChartComponent
306
- IgxDataChartModule, // provides IgxDataChartComponent + all series/axes
307
318
  IgxPieChartModule, // provides IgxPieChartComponent
308
319
  IgxDataPieChartModule, // provides IgxDataPieChartComponent
309
320
  IgxLegendModule, // provides IgxLegendComponent
@@ -311,21 +322,20 @@ import {
311
322
 
312
323
  // Enums and types — these ARE plain TS exports and can be imported directly
313
324
  import {
314
- ChartType,
315
325
  FinancialChartType,
316
326
  MarkerType,
317
327
  ToolTipType,
318
- TrendLineType,
328
+ TrendLineTypeCollection,
319
329
  HighlightingMode,
320
- TransitionInMode,
321
- AxisLabelLocation,
330
+ TransitionInSpeedType,
331
+ AxisLabelSettings,
322
332
  CrosshairsDisplayMode,
323
333
  LegendOrientation,
324
- OthersCategoryType,
325
- SelectionMode,
326
- IndicatorType,
327
- VolumeType,
328
- AxisMode
334
+ OthersCategoryContext,
335
+ SeriesSelectionMode,
336
+ IndicatorDisplayType,
337
+ FinancialChartVolumeType,
338
+ AxisOrientation
329
339
  } from 'igniteui-angular-charts';
330
340
  ```
331
341
 
@@ -3,6 +3,19 @@
3
3
  > **Part of the [`igniteui-angular-components`](../SKILL.md) skill hub.**
4
4
  > For app setup, providers, and import patterns — see [`setup.md`](./setup.md).
5
5
 
6
+ ## Contents
7
+
8
+ - [List](#list)
9
+ - [Tree](#tree)
10
+ - [Card](#card)
11
+ - [Chips](#chips)
12
+ - [Avatar & Badge](#avatar--badge)
13
+ - [Icon](#icon)
14
+ - [Carousel](#carousel)
15
+ - [Paginator](#paginator)
16
+ - [Progress Indicators](#progress-indicators)
17
+ - [Chat (AI Chat Component)](#chat-ai-chat-component)
18
+
6
19
  ## List
7
20
 
8
21
  > **Docs:** [List Component](https://www.infragistics.com/products/ignite-ui-angular/angular/components/list)
@@ -64,9 +77,8 @@ Selection modes: `'None'`, `'BiCascade'`, `'Cascade'`.
64
77
  ```typescript
65
78
  import { IgxCardComponent, IgxCardHeaderComponent, IgxCardContentDirective, IgxCardActionsComponent, IgxCardMediaDirective, IgxCardHeaderTitleDirective, IgxCardHeaderSubtitleDirective, IgxCardHeaderThumbnailDirective } from 'igniteui-angular/card';
66
79
  import { IgxAvatarComponent } from 'igniteui-angular/avatar';
67
- import { IgxButtonDirective } from 'igniteui-angular/button';
68
- import { IgxRippleDirective } from 'igniteui-angular/ripple';
69
- import { IgxIconButtonDirective } from 'igniteui-angular/button';
80
+ import { IgxButtonDirective, IgxIconButtonDirective } from 'igniteui-angular/directives';
81
+ import { IgxRippleDirective } from 'igniteui-angular/directives';
70
82
  import { IgxIconComponent } from 'igniteui-angular/icon';
71
83
  ```
72
84
 
@@ -215,8 +227,8 @@ import { IgxPaginatorComponent } from 'igniteui-angular/paginator';
215
227
  > **Docs:** [Linear Progress](https://www.infragistics.com/products/ignite-ui-angular/angular/components/linear-progress) · [Circular Progress](https://www.infragistics.com/products/ignite-ui-angular/angular/components/circular-progress)
216
228
 
217
229
  ```typescript
218
- import { IgxLinearProgressBarComponent } from 'igniteui-angular/linear-progress-bar';
219
- import { IgxCircularProgressBarComponent } from 'igniteui-angular/circular-progress-bar';
230
+ import { IgxLinearProgressBarComponent } from 'igniteui-angular/progressbar';
231
+ import { IgxCircularProgressBarComponent } from 'igniteui-angular/progressbar';
220
232
  ```
221
233
 
222
234
  ```html
@@ -248,26 +260,94 @@ import { IgxChatComponent } from 'igniteui-angular/chat';
248
260
  ```
249
261
 
250
262
  ```html
251
- <igx-chat
252
- [messages]="messages()"
253
- [isSendDisabled]="isLoading()"
254
- (sendMessage)="onSend($event)">
255
- </igx-chat>
263
+ <igx-chat
264
+ [options]="options()"
265
+ [messages]="messages()"
266
+ [draftMessage]="draftMessage"
267
+ [templates]="templates()"
268
+ (messageCreated)="onMessageCreated($event)">
269
+ </igx-chat>
270
+
271
+ <ng-template #messageHeader let-message>
272
+ @if (message.sender !== 'user') {
273
+ <div>
274
+ <span style="font-weight: bold; color: #c00000;"
275
+ >Developer Support</span
276
+ >
277
+ </div>
278
+ }
279
+ </ng-template>
280
+
281
+ <ng-template #suggestionPrefix>
282
+ <span style="font-weight: bold">💡</span>
283
+ </ng-template>
284
+
285
+ <ng-template #messageContent let-message igxChatMessageContext>
286
+ <div [innerHTML]="message.text | fromMarkdown | async"></div>
287
+ </ng-template>
256
288
  ```
257
289
 
258
290
  ```typescript
259
- import { IgxChatComponent, IgxMessage } from 'igniteui-angular/chat';
260
-
261
- messages = signal<IgxMessage[]>([]);
262
- isLoading = signal(false);
263
-
264
- async onSend(text: string) {
265
- this.messages.update(m => [...m, { author: 'user', content: text }]);
266
- this.isLoading.set(true);
267
- const reply = await this.aiService.ask(text);
268
- this.messages.update(m => [...m, { author: 'assistant', content: reply }]);
269
- this.isLoading.set(false);
270
- }
291
+ import { IgxChatComponent, IgxChatMessageContextDirective, type IgxChatOptions } from 'igniteui-angular/chat';
292
+ import { MarkdownPipe } from 'igniteui-angular/chat-extras';
293
+
294
+ @Component({
295
+ selector: 'app-chat-features-sample',
296
+ styleUrls: ['./features-sample.component.scss'],
297
+ templateUrl: './features-sample.component.html',
298
+ imports: [IgxChatComponent, IgxChatMessageContextDirective, AsyncPipe, MarkdownPipe]
299
+ })
300
+ export class ChatFeaturesSampleComponent {
301
+ private _messageHeader = viewChild.required('messageHeader');
302
+ private _suggestionPrefix = viewChild.required('suggestionPrefix');
303
+ private _messageContent = viewChild.required('messageContent');
304
+
305
+ ...
306
+
307
+
308
+ public options = signal<IgxChatOptions>({
309
+ disableAutoScroll: false,
310
+ disableInputAttachments: false,
311
+ inputPlaceholder: 'Type your message here...',
312
+ headerText: 'Developer Support',
313
+ suggestionsPosition: "below-input",
314
+ suggestions: [ 'Send me an e-mail when support is available.' ]
315
+ });
316
+
317
+ public templates = signal({});
318
+
319
+ constructor() {
320
+ effect(() => {
321
+ const messageHeader = this._messageHeader();
322
+ const suggestionPrefix = this._suggestionPrefix();
323
+ const messageContent = this._messageContent();
324
+
325
+ if (messageHeader && suggestionPrefix && messageContent) {
326
+ this.templates.set({
327
+ messageHeader: messageHeader,
328
+ suggestionPrefix: suggestionPrefix,
329
+ messageContent: messageContent
330
+ });
331
+ }
332
+ });
333
+ }
334
+
335
+ public onMessageCreated(e: any): void {
336
+ const newMessage = e;
337
+ this.messages.update(messages => [...messages, newMessage]);
338
+ this.options.update(options => ({ ...options, isTyping: true, suggestions: [] }));
339
+
340
+ const responseMessage = {
341
+ id: Date.now().toString(),
342
+ text: 'Our support team is currently unavailable. We\'ll get back to you as soon as possible.',
343
+ sender: 'support',
344
+ timestamp: Date.now().toString()
345
+ };
346
+
347
+ this.draftMessage = { text: '', attachments: [] };
348
+ this.messages.update(messages => [...messages, responseMessage]);
349
+ this.options.update(options => ({ ...options, isTyping: false }));
350
+ }
271
351
  ```
272
352
 
273
353
  ## See Also
@@ -3,12 +3,20 @@
3
3
  > **Part of the [`igniteui-angular-components`](../SKILL.md) skill hub.**
4
4
  > For app setup, providers, and import patterns — see [`setup.md`](./setup.md).
5
5
 
6
+ ## Contents
7
+
8
+ - [Button & Icon Button](#button--icon-button)
9
+ - [Button Group](#button-group)
10
+ - [Ripple Effect](#ripple-effect)
11
+ - [Tooltip](#tooltip)
12
+ - [Drag and Drop](#drag-and-drop)
13
+
6
14
  ## Button & Icon Button
7
15
 
8
16
  > **Docs:** [Button Component](https://www.infragistics.com/products/ignite-ui-angular/angular/components/button)
9
17
 
10
18
  ```typescript
11
- import { IgxButtonDirective, IgxIconButtonDirective } from 'igniteui-angular/button';
19
+ import { IgxButtonDirective, IgxIconButtonDirective } from 'igniteui-angular/directives';
12
20
  import { IgxIconComponent } from 'igniteui-angular/icon';
13
21
  ```
14
22
 
@@ -33,12 +41,127 @@ import { IgxIconComponent } from 'igniteui-angular/icon';
33
41
  Button variants for `igxButton`: `'flat'`, `'raised'`, `'outlined'`, `'fab'`.
34
42
  Button variants for `igxIconButton`: `'flat'`, `'outlined'`, `'contained'`.
35
43
 
44
+ ## Button Group
45
+
46
+ > **Docs:** [Button Group Component](https://www.infragistics.com/products/ignite-ui-angular/angular/components/buttongroup)
47
+
48
+ ```typescript
49
+ // Option A — convenience collection (includes IgxButtonGroupComponent + IgxButtonDirective)
50
+ import { IGX_BUTTON_GROUP_DIRECTIVES } from 'igniteui-angular/button-group';
51
+
52
+ // Option B — individual imports
53
+ import { IgxButtonGroupComponent } from 'igniteui-angular/button-group';
54
+ import { IgxButtonDirective } from 'igniteui-angular/directives';
55
+
56
+ import { IgxIconComponent } from 'igniteui-angular/icon';
57
+ ```
58
+
59
+ ```html
60
+ <!-- Text buttons — single selection (default) -->
61
+ <igx-buttongroup>
62
+ <button igxButton>Left</button>
63
+ <button igxButton [selected]="true">Center</button>
64
+ <button igxButton>Right</button>
65
+ </igx-buttongroup>
66
+
67
+ <!-- Multi-selection -->
68
+ <igx-buttongroup selectionMode="multi">
69
+ <button igxButton><igx-icon>format_bold</igx-icon></button>
70
+ <button igxButton><igx-icon>format_italic</igx-icon></button>
71
+ <button igxButton><igx-icon>format_underlined</igx-icon></button>
72
+ </igx-buttongroup>
73
+
74
+ <!-- singleRequired — always keeps one button selected, cannot deselect -->
75
+ <igx-buttongroup selectionMode="singleRequired">
76
+ <button igxButton [selected]="true">Day</button>
77
+ <button igxButton>Week</button>
78
+ <button igxButton>Month</button>
79
+ </igx-buttongroup>
80
+
81
+ <!-- Vertical alignment -->
82
+ <igx-buttongroup alignment="vertical">
83
+ <button igxButton>Top</button>
84
+ <button igxButton>Middle</button>
85
+ <button igxButton>Bottom</button>
86
+ </igx-buttongroup>
87
+
88
+ <!-- Disabled group -->
89
+ <igx-buttongroup [disabled]="true">
90
+ <button igxButton>A</button>
91
+ <button igxButton>B</button>
92
+ </igx-buttongroup>
93
+
94
+ <!-- React to selection / deselection events -->
95
+ <igx-buttongroup (selected)="onSelected($event)" (deselected)="onDeselected($event)">
96
+ <button igxButton>One</button>
97
+ <button igxButton>Two</button>
98
+ <button igxButton>Three</button>
99
+ </igx-buttongroup>
100
+ ```
101
+
102
+ ```typescript
103
+ import { IButtonGroupEventArgs } from 'igniteui-angular/button-group';
104
+
105
+ onSelected(event: IButtonGroupEventArgs) {
106
+ console.log('Selected index:', event.index, 'button:', event.button);
107
+ }
108
+
109
+ onDeselected(event: IButtonGroupEventArgs) {
110
+ console.log('Deselected index:', event.index);
111
+ }
112
+ ```
113
+
114
+ **Key inputs on `igx-buttongroup`:**
115
+
116
+ | Input | Type | Default | Description |
117
+ |---|---|---|---|
118
+ | `selectionMode` | `'single' \| 'singleRequired' \| 'multi'` | `'single'` | Selection behaviour. `singleRequired` prevents full deselection. |
119
+ | `alignment` | `'horizontal' \| 'vertical'` | `'horizontal'` | Layout direction of the buttons. |
120
+ | `disabled` | `boolean` | `false` | Disables every button in the group. |
121
+
122
+ **Key outputs on `igx-buttongroup`:**
123
+
124
+ | Output | Payload | Emits when |
125
+ |---|---|---|
126
+ | `(selected)` | `IButtonGroupEventArgs` | A button is selected. |
127
+ | `(deselected)` | `IButtonGroupEventArgs` | A button is deselected. |
128
+
129
+ `IButtonGroupEventArgs`: `{ owner: IgxButtonGroupComponent; button: IgxButtonDirective; index: number }`, where `IgxButtonDirective` is imported from `igniteui-angular/directives` (see **Button & Icon Button** section above).
130
+
131
+ **Key inputs on each `<button igxButton>` child:**
132
+
133
+ | Input | Type | Description |
134
+ |---|---|---|
135
+ | `[selected]` | `boolean` | Sets the initial selected state of the button. |
136
+ | `[disabled]` | `boolean` | Disables a specific button within the group. |
137
+
138
+ **Programmatic control:**
139
+
140
+ ```typescript
141
+ import { viewChild } from '@angular/core';
142
+ import { IgxButtonGroupComponent } from 'igniteui-angular/button-group';
143
+
144
+ buttonGroup = viewChild.required<IgxButtonGroupComponent>('myGroup');
145
+
146
+ selectSecond() { this.buttonGroup().selectButton(1); }
147
+ deselectSecond() { this.buttonGroup().deselectButton(1); }
148
+ getSelected() { return this.buttonGroup().selectedButtons; }
149
+ ```
150
+
151
+ ```html
152
+ <igx-buttongroup #myGroup selectionMode="multi">
153
+ <button igxButton>A</button>
154
+ <button igxButton>B</button>
155
+ <button igxButton>C</button>
156
+ </igx-buttongroup>
157
+ ```
158
+
36
159
  ## Ripple Effect
37
160
 
38
161
  > **Docs:** [Ripple Directive](https://www.infragistics.com/products/ignite-ui-angular/angular/components/ripple)
39
162
 
40
163
  ```typescript
41
- import { IgxRippleDirective } from 'igniteui-angular/ripple';
164
+ import { IgxRippleDirective } from 'igniteui-angular/directives';
42
165
  ```
43
166
 
44
167
  ```html
@@ -58,7 +181,7 @@ Inputs: `[igxRipple]` (ripple color), `[igxRippleCentered]` (always start from c
58
181
  > **Docs:** [Tooltip Directive](https://www.infragistics.com/products/ignite-ui-angular/angular/components/tooltip)
59
182
 
60
183
  ```typescript
61
- import { IgxTooltipDirective, IgxTooltipTargetDirective } from 'igniteui-angular/tooltip';
184
+ import { IgxTooltipDirective, IgxTooltipTargetDirective } from 'igniteui-angular/directives';
62
185
  ```
63
186
 
64
187
  ```html
@@ -84,7 +207,7 @@ hideTooltip() { this.tooltip().close(); }
84
207
  > **Docs:** [Drag and Drop](https://www.infragistics.com/products/ignite-ui-angular/angular/components/drag-drop)
85
208
 
86
209
  ```typescript
87
- import { IgxDragDirective, IgxDropDirective, IDragMoveEventArgs, IDropDroppedEventArgs } from 'igniteui-angular/drag-drop';
210
+ import { IgxDragDirective, IgxDropDirective, IDragMoveEventArgs, IDropDroppedEventArgs } from 'igniteui-angular/directives';
88
211
  ```
89
212
 
90
213
  ### Basic drag and drop
@@ -5,13 +5,21 @@
5
5
 
6
6
  > **AGENT INSTRUCTION:** All components in this file rely on Angular animations and the Ignite UI overlay system. Before using any of them, ensure `provideAnimations()` (or `provideAnimationsAsync()`) is present in `app.config.ts`. If it is missing, add it — these components will throw runtime errors or silently fail to animate without it.
7
7
 
8
+ ## Contents
9
+
10
+ - [Dialog](#dialog)
11
+ - [Snackbar](#snackbar)
12
+ - [Toast](#toast)
13
+ - [Banner](#banner)
14
+ - [Key Rules](#key-rules)
15
+
8
16
  ## Dialog
9
17
 
10
18
  > **Docs:** [Dialog Component](https://www.infragistics.com/products/ignite-ui-angular/angular/components/dialog)
11
19
 
12
20
  ```typescript
13
21
  import { IgxDialogComponent, IgxDialogTitleDirective, IgxDialogActionsDirective } from 'igniteui-angular/dialog';
14
- import { IgxButtonDirective } from 'igniteui-angular/button';
22
+ import { IgxButtonDirective } from 'igniteui-angular/directives';
15
23
  ```
16
24
 
17
25
  ```html
@@ -50,7 +58,7 @@ Events: `(opening)`, `(opened)`, `(closing)`, `(closed)`, `(leftButtonSelect)`,
50
58
 
51
59
  ```typescript
52
60
  import { IgxSnackbarComponent, IgxSnackbarActionDirective } from 'igniteui-angular/snackbar';
53
- import { IgxButtonDirective } from 'igniteui-angular/button';
61
+ import { IgxButtonDirective } from 'igniteui-angular/directives';
54
62
  ```
55
63
 
56
64
  ```html
@@ -98,7 +106,7 @@ Toast vs Snackbar: Toast is non-interactive (no action button), always auto-hide
98
106
  ```typescript
99
107
  import { IgxBannerComponent, IgxBannerActionsDirective } from 'igniteui-angular/banner';
100
108
  import { IgxIconComponent } from 'igniteui-angular/icon';
101
- import { IgxButtonDirective } from 'igniteui-angular/button';
109
+ import { IgxButtonDirective } from 'igniteui-angular/directives';
102
110
  ```
103
111
 
104
112
  ```html
@@ -3,6 +3,21 @@
3
3
  > **Part of the [`igniteui-angular-components`](../SKILL.md) skill hub.**
4
4
  > For app setup, providers, and import patterns — see [`setup.md`](./setup.md).
5
5
 
6
+ ## Contents
7
+
8
+ - [Input Group](#input-group)
9
+ - [Combo (Multi-Select Dropdown)](#combo-multi-select-dropdown)
10
+ - [Simple Combo (Single-Select)](#simple-combo-single-select)
11
+ - [Select](#select)
12
+ - [Date Picker](#date-picker)
13
+ - [Date Range Picker](#date-range-picker)
14
+ - [Time Picker](#time-picker)
15
+ - [Calendar](#calendar)
16
+ - [Checkbox, Radio, Switch](#checkbox-radio-switch)
17
+ - [Slider](#slider)
18
+ - [Reactive Forms Integration](#reactive-forms-integration)
19
+ - [Key Rules](#key-rules)
20
+
6
21
  ## Input Group
7
22
 
8
23
  > **Docs:** [Input Group](https://www.infragistics.com/products/ignite-ui-angular/angular/components/input-group)
@@ -109,9 +124,11 @@ Implements `ControlValueAccessor` and `Validator`. Works with both reactive and
109
124
  > **Docs:** [Date Range Picker](https://www.infragistics.com/products/ignite-ui-angular/angular/components/date-range-picker)
110
125
 
111
126
  ```typescript
112
- import { IgxDateRangePickerComponent } from 'igniteui-angular/date-range-picker';
113
- import { IgxDateTimeEditorDirective } from 'igniteui-angular/date-time-editor';
127
+ import { IgxDateRangePickerComponent } from 'igniteui-angular/date-picker';
128
+ import { IgxDateTimeEditorDirective } from 'igniteui-angular/directives';
114
129
  import { IGX_INPUT_GROUP_DIRECTIVES } from 'igniteui-angular/input-group';
130
+
131
+ // import { IgxDateTimeEditorDirective, IGX_INPUT_GROUP_DIRECTIVES } from '@infragistics/igniteui-angular'; for licensed package
115
132
  ```
116
133
 
117
134
  ```html
@@ -186,7 +203,13 @@ import { IgxSwitchComponent } from 'igniteui-angular/switch';
186
203
  > **Docs:** [Slider Component](https://www.infragistics.com/products/ignite-ui-angular/angular/components/slider/slider)
187
204
 
188
205
  ```typescript
189
- import { IgxSliderComponent, SliderType } from 'igniteui-angular/slider';
206
+ import { IgxSliderComponent, IgxSliderType } from 'igniteui-angular/slider';
207
+
208
+ public sliderType = IgxSliderType;
209
+ public priceRange = {
210
+ lower: 200,
211
+ upper: 800
212
+ };
190
213
  ```
191
214
 
192
215
  ```html
@@ -195,7 +218,7 @@ import { IgxSliderComponent, SliderType } from 'igniteui-angular/slider';
195
218
 
196
219
  <!-- Range slider -->
197
220
  <igx-slider
198
- [type]="SliderType.RANGE"
221
+ [type]="sliderType.RANGE"
199
222
  [minValue]="0"
200
223
  [maxValue]="100"
201
224
  [lowerBound]="20"
@@ -3,6 +3,11 @@
3
3
  > **Part of the [`igniteui-angular-components`](../SKILL.md) skill hub.**
4
4
  > For app setup, providers, and import patterns — see [`setup.md`](./setup.md).
5
5
 
6
+ ## Contents
7
+
8
+ - [Layout Manager Directives](#layout-manager-directives)
9
+ - [Dock Manager](#dock-manager)
10
+
6
11
  ---
7
12
 
8
13
  ## Layout Manager Directives
@@ -3,6 +3,15 @@
3
3
  > **Part of the [`igniteui-angular-components`](../SKILL.md) skill hub.**
4
4
  > For app setup, providers, and import patterns — see [`setup.md`](./setup.md).
5
5
 
6
+ ## Contents
7
+
8
+ - [Tabs](#tabs)
9
+ - [Bottom Navigation](#bottom-navigation)
10
+ - [Stepper](#stepper)
11
+ - [Accordion](#accordion)
12
+ - [Splitter](#splitter)
13
+ - [Navigation Drawer](#navigation-drawer)
14
+
6
15
  ## Tabs
7
16
 
8
17
  > **Docs:** [Tabs Component](https://www.infragistics.com/products/ignite-ui-angular/angular/components/tabs)
@@ -171,9 +180,9 @@ import { IgxSplitterComponent, IgxSplitterPaneComponent, SplitterType } from 'ig
171
180
  > **Docs:** [Navigation Drawer](https://www.infragistics.com/products/ignite-ui-angular/angular/components/navdrawer)
172
181
 
173
182
  ```typescript
174
- import { IgxNavDrawerComponent, IgxNavDrawerItemDirective, IgxNavDrawerTemplateDirective, IgxNavDrawerMiniTemplateDirective } from 'igniteui-angular/nav-drawer';
183
+ import { IgxNavigationDrawerComponent, IgxNavDrawerItemDirective, IgxNavDrawerTemplateDirective, IgxNavDrawerMiniTemplateDirective } from 'igniteui-angular/navigation-drawer';
175
184
  import { IgxIconComponent } from 'igniteui-angular/icon';
176
- import { IgxRippleDirective } from 'igniteui-angular/ripple';
185
+ import { IgxRippleDirective } from 'igniteui-angular/directives';
177
186
  ```
178
187
 
179
188
  ```html