igniteui-angular 21.2.4 → 21.2.6
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.
- package/fesm2022/igniteui-angular-grids-grid.mjs +12 -2
- package/fesm2022/igniteui-angular-grids-grid.mjs.map +1 -1
- package/fesm2022/igniteui-angular-grids-pivot-grid.mjs +3 -2
- package/fesm2022/igniteui-angular-grids-pivot-grid.mjs.map +1 -1
- package/package.json +1 -1
- package/skills/igniteui-angular-components/SKILL.md +1 -1
- package/skills/igniteui-angular-components/references/charts.md +43 -222
- package/skills/igniteui-angular-components/references/data-display.md +7 -27
- package/skills/igniteui-angular-components/references/directives.md +12 -22
- package/skills/igniteui-angular-components/references/feedback.md +7 -15
- package/skills/igniteui-angular-components/references/form-controls.md +34 -24
- package/skills/igniteui-angular-components/references/layout-manager.md +2 -48
- package/skills/igniteui-angular-components/references/layout.md +0 -16
- package/skills/igniteui-angular-components/references/setup.md +0 -1
- package/skills/igniteui-angular-grids/SKILL.md +5 -0
- package/skills/igniteui-angular-grids/references/data-operations.md +16 -41
- package/skills/igniteui-angular-grids/references/editing.md +4 -12
- package/skills/igniteui-angular-grids/references/features.md +35 -26
- package/skills/igniteui-angular-grids/references/paging-remote.md +4 -8
- package/skills/igniteui-angular-grids/references/sizing.md +10 -0
- package/skills/igniteui-angular-grids/references/state.md +4 -14
- package/skills/igniteui-angular-grids/references/structure.md +1 -25
- package/skills/igniteui-angular-grids/references/types.md +11 -19
- package/types/igniteui-angular-grids-grid.d.ts +1 -0
- package/types/igniteui-angular-grids-pivot-grid.d.ts +1 -0
package/package.json
CHANGED
|
@@ -52,7 +52,7 @@ Base your code and explanation exclusively on what you read. If the reference fi
|
|
|
52
52
|
| Task | Reference file to read |
|
|
53
53
|
|---|---|
|
|
54
54
|
| App setup, `app.config.ts` providers, `provideAnimations()`, entry-point imports, convenience directive arrays | [`references/setup.md`](./references/setup.md) |
|
|
55
|
-
| Input Group, Combo, Simple Combo, Select, Date Picker, Date Range Picker, Time Picker, Calendar, Checkbox, Radio, Switch, Slider, reactive/template-driven forms | [`references/form-controls.md`](./references/form-controls.md) |
|
|
55
|
+
| Input Group, Combo, Simple Combo, Select, Date Picker, Date Range Picker, Time Picker, Calendar, Checkbox, Radio, Switch, Slider, Autocomplete, reactive/template-driven forms | [`references/form-controls.md`](./references/form-controls.md) |
|
|
56
56
|
| Tabs, Bottom Navigation, Stepper, Accordion, Expansion Panel, Splitter, Navigation Drawer | [`references/layout.md`](./references/layout.md) |
|
|
57
57
|
| List, Tree, Card, Chips, Avatar, Badge, Icon, Carousel, Paginator, Progress Indicators, Chat | [`references/data-display.md`](./references/data-display.md) |
|
|
58
58
|
| Dialog, Snackbar, Toast, Banner | [`references/feedback.md`](./references/feedback.md) |
|
|
@@ -18,7 +18,7 @@ Ignite UI for Angular Charts provides 65+ chart types for data visualization. Ch
|
|
|
18
18
|
This reference gives high-level guidance on when to use each chart type, their key features, and common API members. For detailed documentation, call `get_doc` and `get_api_reference` from `igniteui-cli` with the specific chart component or feature you're interested in.
|
|
19
19
|
|
|
20
20
|
### Chart Component packages
|
|
21
|
-
- `igniteui-angular-charts` — Category Chart, Financial Chart, Data Chart,
|
|
21
|
+
- `igniteui-angular-charts` — Category Chart, Financial Chart, Data Chart, Pie Chart, and Sparkline components (NPM)
|
|
22
22
|
- `@infragistics/igniteui-angular-charts` — Licensed version with same API (ProGet)
|
|
23
23
|
|
|
24
24
|
### Main Chart Components
|
|
@@ -33,51 +33,41 @@ This reference gives high-level guidance on when to use each chart type, their k
|
|
|
33
33
|
| `IgxPieChartComponent` | `IgxPieChartModule` | Part-to-whole pie and donut charts |
|
|
34
34
|
| `IgxDataPieChartComponent` | `IgxDataPieChartModule` | Simplified API for pie charts |
|
|
35
35
|
| `IgxLegendComponent` | `IgxLegendModule` | Shared legend component |
|
|
36
|
+
| `IgxSparklineComponent` | `IgxSparklineModule` | Compact inline chart for grid cells or small layouts |
|
|
36
37
|
|
|
37
38
|
### When to use each:
|
|
38
|
-
- **Category Chart** → Use for simple area/
|
|
39
|
+
- **Category Chart** → Use for simple area/column/line/spline/waterfall; let framework auto-configure
|
|
39
40
|
- **Financial Chart** → Use for stock data with time-series OHLC, indicators, volume
|
|
40
41
|
- **Data Chart** → Use for advanced scenarios: multiple axes, custom series combinations, stacked/scatter
|
|
41
42
|
- **Pie Chart** → Use for part-to-whole (segments sum to 100%)
|
|
43
|
+
- **Sparkline** → Use for compact inline visualization in grid cells, dashboards, or small-space layouts
|
|
42
44
|
|
|
43
45
|
---
|
|
44
46
|
|
|
45
47
|
## General Chart Configuration
|
|
46
48
|
|
|
47
|
-
### Data Binding
|
|
48
|
-
```typescript
|
|
49
|
-
// Category Chart uses 'dataSource' to bind data (auto-detects numeric fields)
|
|
50
|
-
chartComponent.dataSource = [
|
|
51
|
-
{ month: 'Jan', revenue: 5000 },
|
|
52
|
-
{ month: 'Feb', revenue: 6500 }
|
|
53
|
-
];
|
|
54
|
-
|
|
55
|
-
// Data Chart uses 'itemsSource' and explicit series configuration
|
|
56
|
-
chartComponent.itemsSource = dataArray;
|
|
57
|
-
```
|
|
58
|
-
|
|
59
49
|
### Chart Type Selection
|
|
60
|
-
- **Category Chart**: `chartType` property (Auto, Area, Column,
|
|
61
|
-
- **Financial Chart**: `chartType` property (Auto,
|
|
62
|
-
- **Data Chart**: Configure explicit series (IgxAreaSeriesComponent, IgxBarSeriesComponent,
|
|
50
|
+
- **Category Chart**: `chartType` property — type: `CategoryChartType` (Auto, Line, Area, Column, Spline, ...)
|
|
51
|
+
- **Financial Chart**: `chartType` property — type: `FinancialChartType` (Auto, Bar, Candle, ...)
|
|
52
|
+
- **Data Chart**: Configure explicit series (IgxAreaSeriesComponent, IgxBarSeriesComponent, IgxColumnSeriesComponent, etc.)
|
|
53
|
+
- **Sparkline**: `displayType` property — type: `SparklineDisplayType` (Line, Area, Column, WinLoss)
|
|
63
54
|
- **Pie Chart**: No chartType needed; inherent pie structure
|
|
64
55
|
|
|
65
56
|
### Required Properties
|
|
66
57
|
|
|
67
58
|
**IgxCategoryChartComponent** (simplest API; auto-detects numeric & string columns):
|
|
68
59
|
- `dataSource` — Data array (required)
|
|
69
|
-
- `chartType` —
|
|
60
|
+
- `chartType` — type: `CategoryChartType`
|
|
70
61
|
- Component auto-detects: first string column → X-axis labels, numeric columns → Y-axis data
|
|
71
62
|
|
|
72
63
|
**IgxDataChartComponent** (advanced; requires explicit configuration):
|
|
73
|
-
- `itemsSource
|
|
74
|
-
- `valueMemberPath` —
|
|
64
|
+
- Data is bound on individual series via `itemsSource`, not on the chart itself
|
|
65
|
+
- `valueMemberPath` — Set on the series, not the chart
|
|
75
66
|
- Requires explicit axis and series components
|
|
76
67
|
|
|
77
68
|
**IgxFinancialChartComponent** (stock data):
|
|
78
|
-
- `dataSource` — Data array with date + OHLC columns
|
|
79
|
-
- `chartType` —
|
|
80
|
-
- `openMemberPath`, `highMemberPath`, `lowMemberPath`, `closeMemberPath` — OHLC field names
|
|
69
|
+
- `dataSource` — Data array with date + OHLC columns (chart auto-detects columns)
|
|
70
|
+
- `chartType` — type: `FinancialChartType`
|
|
81
71
|
|
|
82
72
|
**IgxPieChartComponent**:
|
|
83
73
|
- `dataSource` — Data array
|
|
@@ -85,58 +75,7 @@ chartComponent.itemsSource = dataArray;
|
|
|
85
75
|
- `valueMemberPath` — Field with numeric values
|
|
86
76
|
|
|
87
77
|
### Responsive & Sizing
|
|
88
|
-
-
|
|
89
|
-
- Set height/width on chart container (div, flexbox parent)
|
|
90
|
-
- Use CSS for responsive behavior
|
|
91
|
-
|
|
92
|
-
---
|
|
93
|
-
|
|
94
|
-
## Key Chart Features
|
|
95
|
-
|
|
96
|
-
### Axis Configuration
|
|
97
|
-
- **X-Axis**: Category (string/date) or Numeric (scatter/financial)
|
|
98
|
-
- **Y-Axis**: Always numeric
|
|
99
|
-
- Properties: `xAxisTitle`, `yAxisTitle`, `xAxisInterval`, `yAxisMinimumValue`, `yAxisMaximumValue`
|
|
100
|
-
- Gridlines: `xAxisMajorStroke`, `yAxisMajorStroke`, gridline styling
|
|
101
|
-
|
|
102
|
-
### Tooltips
|
|
103
|
-
- **Default tooltips**: Auto-enabled; style with `toolTipType` (Category, Item, etc.)
|
|
104
|
-
- **Custom tooltips**: `tooltipTemplate` directive for custom content
|
|
105
|
-
- Properties: `showDefaultTooltip`, `toolTipBrush` (color)
|
|
106
|
-
|
|
107
|
-
### Markers & Data Points
|
|
108
|
-
- Control marker visibility and style via `markerTypes`, `markerBrushes`, `markerOutlines`
|
|
109
|
-
- Properties: `markerSize`, `markerShape` (Circle, Square, Triangle, etc.)
|
|
110
|
-
- Use marker templates for custom marker appearance
|
|
111
|
-
|
|
112
|
-
### Animations
|
|
113
|
-
- Enable with `transitionInMode` (Auto, None, FromZero, FromSeries, etc.)
|
|
114
|
-
- Control speed via `transitionDuration` (milliseconds)
|
|
115
|
-
- Works on initial load and data updates
|
|
116
|
-
|
|
117
|
-
### Highlighting & Selection
|
|
118
|
-
- **Highlighting**: Mouse hover effect; set `highlightingMode`, `highlightingBehavior`
|
|
119
|
-
- **Selection**: Click to select data points/series; properties vary by chart type
|
|
120
|
-
|
|
121
|
-
### Zooming & Panning
|
|
122
|
-
- Mouse wheel to zoom; drag to pan
|
|
123
|
-
- Properties: `isHorizontalZoomEnabled`, `isVerticalZoomEnabled`
|
|
124
|
-
- Keyboard support: Arrow keys, +/- for zoom
|
|
125
|
-
|
|
126
|
-
### Trendlines
|
|
127
|
-
- Visualize data trends with trendline types (Linear, Logarithmic, Exponential, etc.)
|
|
128
|
-
- Property: `trendLineType` (Category/Financial charts)
|
|
129
|
-
|
|
130
|
-
### Legend
|
|
131
|
-
- Display with `legend` property (assign `IgxLegendComponent`)
|
|
132
|
-
- `legendItemTemplate` for custom legend items
|
|
133
|
-
- Properties: `showLegend`, `legendOrientation`, `legendPosition`
|
|
134
|
-
|
|
135
|
-
### Annotations
|
|
136
|
-
- **Crosshairs**: `crosshairsDisplayMode` (None, Vertical, Horizontal, Both)
|
|
137
|
-
- **Final Value Layer**: Show ending values on axis
|
|
138
|
-
- **Callout Layer**: Custom callouts at specific values
|
|
139
|
-
- **Range Annotations**: Highlight data ranges
|
|
78
|
+
- Set height/width on chart container (div, flexbox parent). The chart will render with 0px height if the container doesn't have a defined height.
|
|
140
79
|
|
|
141
80
|
---
|
|
142
81
|
|
|
@@ -146,7 +85,7 @@ chartComponent.itemsSource = dataArray;
|
|
|
146
85
|
- **Use**: Trends over time, cumulative part-to-whole
|
|
147
86
|
- **Data**: X-axis categories, Y-axis numeric values
|
|
148
87
|
- **Variants**: Area, StepArea, Stacked Area, Stacked 100% Area
|
|
149
|
-
- **API**: `chartType`, `
|
|
88
|
+
- **API**: `chartType`, `dataSource` (auto-detects numeric columns)
|
|
150
89
|
- **Best Practices**:
|
|
151
90
|
- Start Y-axis at 0 for accuracy
|
|
152
91
|
- Use transparent colors for overlaid series
|
|
@@ -157,7 +96,6 @@ chartComponent.itemsSource = dataArray;
|
|
|
157
96
|
- **Use**: Compare categories, show rankings, time-series changes
|
|
158
97
|
- **Data**: X-axis numeric, Y-axis categories (reversed from Column)
|
|
159
98
|
- **Variants**: Grouped Bar, Stacked Bar, Stacked 100% Bar, Polar Bar
|
|
160
|
-
- **API**: `IgxBarSeriesComponent`, `valueMemberPath`, `argumentMemberPath`
|
|
161
99
|
- **Best Practices**:
|
|
162
100
|
- Start numeric axis at 0
|
|
163
101
|
- Sort categories by value (ascending/descending)
|
|
@@ -168,7 +106,6 @@ chartComponent.itemsSource = dataArray;
|
|
|
168
106
|
- **Use**: Compare categories, show distribution, time-series changes
|
|
169
107
|
- **Data**: X-axis categories, Y-axis numeric values
|
|
170
108
|
- **Variants**: Column, StackedColumn, Stacked100%Column, RangeColumn, WaterfallColumn
|
|
171
|
-
- **API**: `chartType`, `valueMemberPath`, `categoryXAxis`
|
|
172
109
|
- **Best Practices**:
|
|
173
110
|
- Start Y-axis at 0
|
|
174
111
|
- Order time-series left to right
|
|
@@ -186,34 +123,20 @@ chartComponent.itemsSource = dataArray;
|
|
|
186
123
|
- **Volume Pane**: Show trading volume (column, line, or area chart)
|
|
187
124
|
- **Indicator Pane**: Financial indicators (RSI, MACD, Bollinger Bands, etc.)
|
|
188
125
|
- **Zoom Pane**: Navigation slider to zoom/pan
|
|
189
|
-
- **Chart Types**: `Auto` (default), `Candle`, `Line`, `Bar`, `Column`
|
|
190
|
-
- **API**:
|
|
191
|
-
- `chartType` — Price display type (Auto, Line, Candle, Bar, Column)
|
|
192
|
-
- `volumeType` — Volume display (None, Column, Line, Area)
|
|
193
|
-
- `indicatorTypes` — Array of indicators (0 or more)
|
|
194
|
-
- `zoomSliderType` — Zoom pane display (defaults to match chartType)
|
|
195
126
|
- **Indicators**: RSI, MACD, Bollinger Bands, Force Index, Standard Deviation, and more
|
|
196
127
|
- **Features**:
|
|
197
128
|
- Crosshairs with value snapshots
|
|
198
129
|
- Trendlines and overlays
|
|
199
130
|
- Time-based filters (users can select 1M, 3M, 6M, YTD, 1Y, ALL)
|
|
200
131
|
- **Data Binding**:
|
|
201
|
-
-
|
|
202
|
-
- `
|
|
132
|
+
- The Financial Chart auto-detects OHLC, Volume, and Date columns from the data source
|
|
133
|
+
- Data items should have properties named like `open`, `high`, `low`, `close`, `volume`, `date` (or similar)
|
|
134
|
+
- No explicit member path properties are needed on the chart component
|
|
203
135
|
|
|
204
136
|
### Pie Chart (`IgxPieChartComponent` or `IgxDataPieChartComponent`)
|
|
205
137
|
- **Use**: Part-to-whole visualization (segments sum to 100%)
|
|
206
138
|
- **Data**: Category labels, numeric values
|
|
207
139
|
- **Variants**: Pie, Donut (ring), Radial Pie
|
|
208
|
-
- **API**:
|
|
209
|
-
- `labelMemberPath` — Data property for slice labels
|
|
210
|
-
- `valueMemberPath` — Data property for numeric values
|
|
211
|
-
- `legend` — Assign IgxLegendComponent for legend display
|
|
212
|
-
- `selectionMode` — Single, Multiple, Manual (default Single)
|
|
213
|
-
- `othersCategoryThreshold` — Combine small slices into "Others"
|
|
214
|
-
- `othersCategoryType` — Threshold as Number or Percent
|
|
215
|
-
- `allowSliceExplosion` — Enable click to expand slice
|
|
216
|
-
- `allowSliceSelection` — Enable click selection highlighting
|
|
217
140
|
- **Features**:
|
|
218
141
|
- Slice explosion (separate a slice from pie)
|
|
219
142
|
- Slice selection (single or multiple)
|
|
@@ -227,127 +150,32 @@ chartComponent.itemsSource = dataArray;
|
|
|
227
150
|
- Use distinguishable colors
|
|
228
151
|
- **Avoid**: Many segments (>8), change over time (use Bar/Line instead), precise comparisons (Bar is better)
|
|
229
152
|
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
yAxisMaximumValue: number; // Y-axis maximum
|
|
247
|
-
brushes: string[]; // Series colors (fill)
|
|
248
|
-
outlines: string[]; // Series colors (outline)
|
|
249
|
-
markerTypes: MarkerType[]; // Marker shapes (Circle, Square, etc.)
|
|
250
|
-
markerBrushes: string[]; // Marker fill colors
|
|
251
|
-
markerOutlines: string[]; // Marker outline colors
|
|
252
|
-
toolTipType: ToolTipType; // Tooltip display mode
|
|
253
|
-
highlightingMode: HighlightingMode; // Hover highlight behavior
|
|
254
|
-
highlightingBehavior: HighlightingBehavior;
|
|
255
|
-
trendLineType: TrendLineType; // Trendline visualization
|
|
256
|
-
transitionInMode: TransitionInMode; // Animation on load
|
|
257
|
-
transitionInDuration: number; // Animation duration (milliseconds)
|
|
258
|
-
```
|
|
259
|
-
|
|
260
|
-
### IgxFinancialChartComponent (Stock/Candlestick/OHLC)
|
|
261
|
-
```typescript
|
|
262
|
-
chartType: FinancialChartType; // Auto, Line, Candle, Bar, Column
|
|
263
|
-
itemsSource: any[];
|
|
264
|
-
openMemberPath: string;
|
|
265
|
-
highMemberPath: string;
|
|
266
|
-
lowMemberPath: string;
|
|
267
|
-
closeMemberPath: string;
|
|
268
|
-
volumeMemberPath: string;
|
|
269
|
-
dateMemberPath: string;
|
|
270
|
-
volumeType: VolumeType; // None, Column, Line, Area
|
|
271
|
-
indicatorTypes: IndicatorType[]; // RSI, MACD, etc.
|
|
272
|
-
zoomSliderType: FinancialChartType; // Should match chartType
|
|
273
|
-
xAxisTitle: string;
|
|
274
|
-
yAxisTitle: string;
|
|
275
|
-
xAxisMode: AxisMode; // OrdinalTimeX, DateTimeX
|
|
276
|
-
yAxisMode: AxisMode;
|
|
277
|
-
showDefaultTooltip: boolean;
|
|
278
|
-
isHorizontalZoomEnabled: boolean;
|
|
279
|
-
isVerticalZoomEnabled: boolean;
|
|
280
|
-
crosshairsDisplayMode: CrosshairsDisplayMode;
|
|
281
|
-
trendLineType: TrendLineType;
|
|
282
|
-
```
|
|
283
|
-
|
|
284
|
-
### IgxPieChartComponent / IgxDataPieChartComponent
|
|
285
|
-
```typescript
|
|
286
|
-
itemsSource: any[];
|
|
287
|
-
labelMemberPath: string;
|
|
288
|
-
valueMemberPath: string;
|
|
289
|
-
legend: IgxLegendComponent;
|
|
290
|
-
legendLabelMemberPath: string;
|
|
291
|
-
legendItemTemplate: TemplateRef;
|
|
292
|
-
legendItemBadgeTemplate: TemplateRef;
|
|
293
|
-
selectionMode: SelectionMode; // Single, Multiple, Manual
|
|
294
|
-
selectionBehavior: SelectionBehavior;
|
|
295
|
-
allowSliceExplosion: boolean;
|
|
296
|
-
allowSliceSelection: boolean;
|
|
297
|
-
othersCategoryThreshold: number;
|
|
298
|
-
othersCategoryType: OthersCategoryType; // Number, Percent
|
|
299
|
-
startAngle: number;
|
|
300
|
-
radiusFactor: number;
|
|
301
|
-
showDefaultTooltip: boolean;
|
|
302
|
-
toolTipType: ToolTipType;
|
|
303
|
-
highlightingMode: HighlightingMode;
|
|
304
|
-
```
|
|
153
|
+
### Sparkline (`IgxSparklineComponent`)
|
|
154
|
+
- **Use**: Compact inline data visualization in grid cells, dashboards, or small-space layouts
|
|
155
|
+
- **Data**: One-dimensional array with at least one numeric field
|
|
156
|
+
- **Variants**: Line, Area, Column, WinLoss
|
|
157
|
+
- **Features**:
|
|
158
|
+
- Configurable markers (All, Low, High, First, Last, Negative)
|
|
159
|
+
- Normal range — horizontal shaded band (`normalRangeMinimum`, `normalRangeMaximum`)
|
|
160
|
+
- Trendlines via `trendLineType`
|
|
161
|
+
- Unknown value plotting via `unknownValuePlotting`
|
|
162
|
+
- Tooltip support via `tooltipTemplate`
|
|
163
|
+
- **Best Practices**:
|
|
164
|
+
- Set explicit `height` and `width` on the component or its container (renders at 0px otherwise)
|
|
165
|
+
- Start Y-axis at 0 for accurate comparisons
|
|
166
|
+
- Use Line or Area type for trend visualization; Column for discrete comparisons; WinLoss for binary positive/negative
|
|
167
|
+
- When embedding in a grid cell, set compact dimensions (e.g. `height="40px"` `width="220px"`)
|
|
168
|
+
- **Avoid**: Detailed data analysis (use Category Chart or Data Chart), displaying many data labels (Sparkline only supports first/last X-axis labels and high/low Y-axis values)
|
|
305
169
|
|
|
306
170
|
---
|
|
307
171
|
|
|
308
|
-
## Import Paths
|
|
309
|
-
|
|
310
|
-
> **Chart components are NOT standalone** — always import via their NgModule, never by component class. Standalone Angular components can import NgModules directly in their `imports` array.
|
|
311
|
-
|
|
312
|
-
### NgModule imports (required for all project types)
|
|
313
|
-
|
|
314
|
-
```typescript
|
|
315
|
-
// NgModules — import these into your standalone component's 'imports' array
|
|
316
|
-
// or into an NgModule's 'imports' array
|
|
317
|
-
import {
|
|
318
|
-
IgxCategoryChartModule, // provides IgxCategoryChartComponent
|
|
319
|
-
IgxFinancialChartModule, // provides IgxFinancialChartComponent
|
|
320
|
-
IgxPieChartModule, // provides IgxPieChartComponent
|
|
321
|
-
IgxDataPieChartModule, // provides IgxDataPieChartComponent
|
|
322
|
-
IgxLegendModule, // provides IgxLegendComponent
|
|
323
|
-
} from 'igniteui-angular-charts';
|
|
324
|
-
|
|
325
|
-
// Enums and types — these ARE plain TS exports and can be imported directly
|
|
326
|
-
import {
|
|
327
|
-
FinancialChartType,
|
|
328
|
-
MarkerType,
|
|
329
|
-
ToolTipType,
|
|
330
|
-
TrendLineTypeCollection,
|
|
331
|
-
HighlightingMode,
|
|
332
|
-
TransitionInSpeedType,
|
|
333
|
-
AxisLabelSettings,
|
|
334
|
-
CrosshairsDisplayMode,
|
|
335
|
-
LegendOrientation,
|
|
336
|
-
OthersCategoryContext,
|
|
337
|
-
SeriesSelectionMode,
|
|
338
|
-
IndicatorDisplayType,
|
|
339
|
-
FinancialChartVolumeType,
|
|
340
|
-
AxisOrientation
|
|
341
|
-
} from 'igniteui-angular-charts';
|
|
342
|
-
```
|
|
343
|
-
|
|
344
172
|
### Standalone component example
|
|
345
173
|
|
|
346
174
|
```typescript
|
|
347
175
|
import { Component } from '@angular/core';
|
|
348
176
|
import {
|
|
349
177
|
IgxCategoryChartModule,
|
|
350
|
-
|
|
178
|
+
CategoryChartType
|
|
351
179
|
} from 'igniteui-angular-charts';
|
|
352
180
|
|
|
353
181
|
@Component({
|
|
@@ -414,9 +242,9 @@ import { IgxCategoryChartModule } from 'igniteui-angular-charts';
|
|
|
414
242
|
### Color Customization
|
|
415
243
|
- **Series colors**: `brushes` (fill), `outlines` (border)
|
|
416
244
|
- **Marker colors**: `markerBrushes`, `markerOutlines`
|
|
417
|
-
- **Axis styles**: `xAxisMajorStroke`, `yAxisMajorStroke`, `
|
|
418
|
-
- **Tooltip**:
|
|
419
|
-
- **Highlight**: `
|
|
245
|
+
- **Axis styles**: `xAxisMajorStroke`, `yAxisMajorStroke`, `xAxisLabelTextColor`, `yAxisLabelTextColor`
|
|
246
|
+
- **Tooltip**: Controlled via `toolTipType` and custom tooltip templates
|
|
247
|
+
- **Highlight**: `highlightingFadeOpacity` (opacity for faded non-highlighted series)
|
|
420
248
|
|
|
421
249
|
### CSS & Host Binding
|
|
422
250
|
- Chart containers inherit CSS flex/grid properties
|
|
@@ -445,15 +273,8 @@ import { IgxCategoryChartModule } from 'igniteui-angular-charts';
|
|
|
445
273
|
- 1 numeric column (value; segments should sum to 100%)
|
|
446
274
|
- Example: `[{ label: 'Category A', value: 30 }, { label: 'Category B', value: 70 }]`
|
|
447
275
|
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
-
|
|
453
|
-
- **Chart API**: https://www.infragistics.com/products/ignite-ui-angular/angular/components/charts/chart-api
|
|
454
|
-
- **Chart Features**: https://www.infragistics.com/products/ignite-ui-angular/angular/components/charts/chart-features
|
|
455
|
-
- **Area Chart**: https://www.infragistics.com/products/ignite-ui-angular/angular/components/charts/types/area-chart
|
|
456
|
-
- **Bar Chart**: https://www.infragistics.com/products/ignite-ui-angular/angular/components/charts/types/bar-chart
|
|
457
|
-
- **Column Chart**: https://www.infragistics.com/products/ignite-ui-angular/angular/components/charts/types/column-chart
|
|
458
|
-
- **Stock Chart**: https://www.infragistics.com/products/ignite-ui-angular/angular/components/charts/types/stock-chart
|
|
459
|
-
- **Pie Chart**: https://www.infragistics.com/products/ignite-ui-angular/angular/components/charts/types/pie-chart
|
|
276
|
+
### Sparkline
|
|
277
|
+
- Array of data items (one-dimensional)
|
|
278
|
+
- At least 1 numeric field mapped via `valueMemberPath`
|
|
279
|
+
- Optionally 1 string field mapped via `labelMemberPath` (used for first/last X-axis labels)
|
|
280
|
+
- Example: `[{ label: 'Jan', value: 10 }, { label: 'Feb', value: 25 }, { label: 'Mar', value: 15 }]`
|
|
@@ -21,8 +21,6 @@ This reference gives high-level guidance on when to use each data display compon
|
|
|
21
21
|
|
|
22
22
|
## List
|
|
23
23
|
|
|
24
|
-
> **Docs:** [List Component](https://www.infragistics.com/products/ignite-ui-angular/angular/components/list)
|
|
25
|
-
|
|
26
24
|
```typescript
|
|
27
25
|
import { IGX_LIST_DIRECTIVES } from 'igniteui-angular/list';
|
|
28
26
|
import { IgxAvatarComponent } from 'igniteui-angular/avatar';
|
|
@@ -35,9 +33,8 @@ import { IgxIconComponent } from 'igniteui-angular/icon';
|
|
|
35
33
|
@for (contact of contacts; track contact.id) {
|
|
36
34
|
<igx-list-item>
|
|
37
35
|
<igx-avatar igxListThumbnail [src]="contact.avatar" shape="circle"></igx-avatar>
|
|
38
|
-
<span
|
|
36
|
+
<span igxListLineTitle>{{ contact.name }}</span>
|
|
39
37
|
<span igxListLineSubTitle>{{ contact.phone }}</span>
|
|
40
|
-
<span igxListLineTitle>{{ contact.email }}</span>
|
|
41
38
|
<igx-icon igxListAction (click)="call(contact)">phone</igx-icon>
|
|
42
39
|
</igx-list-item>
|
|
43
40
|
}
|
|
@@ -48,14 +45,12 @@ Auxiliary directives for list items: `igxListThumbnail`, `igxListAction`, `igxLi
|
|
|
48
45
|
|
|
49
46
|
## Tree
|
|
50
47
|
|
|
51
|
-
> **Docs:** [Tree Component](https://www.infragistics.com/products/ignite-ui-angular/angular/components/tree)
|
|
52
|
-
|
|
53
48
|
```typescript
|
|
54
49
|
import { IGX_TREE_DIRECTIVES } from 'igniteui-angular/tree';
|
|
55
50
|
```
|
|
56
51
|
|
|
57
52
|
```html
|
|
58
|
-
<igx-tree
|
|
53
|
+
<igx-tree selection="BiState" (nodeSelection)="onNodeSelect($event)">
|
|
59
54
|
@for (node of treeData; track node.id) {
|
|
60
55
|
<igx-tree-node [data]="node" [expanded]="node.expanded">
|
|
61
56
|
<igx-icon>folder</igx-icon>
|
|
@@ -71,14 +66,12 @@ import { IGX_TREE_DIRECTIVES } from 'igniteui-angular/tree';
|
|
|
71
66
|
</igx-tree>
|
|
72
67
|
```
|
|
73
68
|
|
|
74
|
-
Selection modes: `'None'`, `'
|
|
69
|
+
Selection modes: `'None'`, `'BiState'`, `'Cascading'`.
|
|
75
70
|
|
|
76
71
|
## Card
|
|
77
72
|
|
|
78
|
-
> **Docs:** [Card Component](https://www.infragistics.com/products/ignite-ui-angular/angular/components/card)
|
|
79
|
-
|
|
80
73
|
```typescript
|
|
81
|
-
import { IgxCardComponent, IgxCardHeaderComponent, IgxCardContentDirective, IgxCardActionsComponent, IgxCardMediaDirective, IgxCardHeaderTitleDirective, IgxCardHeaderSubtitleDirective,
|
|
74
|
+
import { IgxCardComponent, IgxCardHeaderComponent, IgxCardContentDirective, IgxCardActionsComponent, IgxCardMediaDirective, IgxCardHeaderTitleDirective, IgxCardHeaderSubtitleDirective, IgxCardThumbnailDirective } from 'igniteui-angular/card';
|
|
82
75
|
import { IgxAvatarComponent } from 'igniteui-angular/avatar';
|
|
83
76
|
import { IgxButtonDirective, IgxIconButtonDirective } from 'igniteui-angular/directives';
|
|
84
77
|
import { IgxRippleDirective } from 'igniteui-angular/directives';
|
|
@@ -91,7 +84,8 @@ import { IgxIconComponent } from 'igniteui-angular/icon';
|
|
|
91
84
|
<img [src]="article.coverImage" />
|
|
92
85
|
</igx-card-media>
|
|
93
86
|
<igx-card-header>
|
|
94
|
-
|
|
87
|
+
<!-- igx-avatar inside igx-card-header is auto-detected as thumbnail -->
|
|
88
|
+
<igx-avatar [src]="author.photo" shape="circle"></igx-avatar>
|
|
95
89
|
<h3 igxCardHeaderTitle>{{ article.title }}</h3>
|
|
96
90
|
<h5 igxCardHeaderSubtitle>{{ author.name }}</h5>
|
|
97
91
|
</igx-card-header>
|
|
@@ -109,8 +103,6 @@ import { IgxIconComponent } from 'igniteui-angular/icon';
|
|
|
109
103
|
|
|
110
104
|
## Chips
|
|
111
105
|
|
|
112
|
-
> **Docs:** [Chip Component](https://www.infragistics.com/products/ignite-ui-angular/angular/components/chip)
|
|
113
|
-
|
|
114
106
|
```typescript
|
|
115
107
|
import { IgxChipComponent, IgxChipsAreaComponent } from 'igniteui-angular/chips';
|
|
116
108
|
```
|
|
@@ -127,8 +119,6 @@ import { IgxChipComponent, IgxChipsAreaComponent } from 'igniteui-angular/chips'
|
|
|
127
119
|
|
|
128
120
|
## Avatar & Badge
|
|
129
121
|
|
|
130
|
-
> **Docs:** [Avatar](https://www.infragistics.com/products/ignite-ui-angular/angular/components/avatar) · [Badge](https://www.infragistics.com/products/ignite-ui-angular/angular/components/badge)
|
|
131
|
-
|
|
132
122
|
```typescript
|
|
133
123
|
import { IgxAvatarComponent } from 'igniteui-angular/avatar';
|
|
134
124
|
import { IgxBadgeComponent } from 'igniteui-angular/badge';
|
|
@@ -171,8 +161,6 @@ Badge types: `'primary'`, `'info'`, `'success'`, `'warning'`, `'error'`.
|
|
|
171
161
|
|
|
172
162
|
## Icon
|
|
173
163
|
|
|
174
|
-
> **Docs:** [Icon Component](https://www.infragistics.com/products/ignite-ui-angular/angular/components/icon)
|
|
175
|
-
|
|
176
164
|
```typescript
|
|
177
165
|
import { IgxIconComponent, IgxIconService } from 'igniteui-angular/icon';
|
|
178
166
|
```
|
|
@@ -202,8 +190,6 @@ export class AppComponent {
|
|
|
202
190
|
|
|
203
191
|
## Carousel
|
|
204
192
|
|
|
205
|
-
> **Docs:** [Carousel Component](https://www.infragistics.com/products/ignite-ui-angular/angular/components/carousel)
|
|
206
|
-
|
|
207
193
|
```typescript
|
|
208
194
|
import { IgxCarouselComponent, IgxSlideComponent } from 'igniteui-angular/carousel';
|
|
209
195
|
```
|
|
@@ -223,8 +209,6 @@ import { IgxCarouselComponent, IgxSlideComponent } from 'igniteui-angular/carous
|
|
|
223
209
|
|
|
224
210
|
## Paginator
|
|
225
211
|
|
|
226
|
-
> **Docs:** [Paginator Component](https://www.infragistics.com/products/ignite-ui-angular/angular/components/paginator)
|
|
227
|
-
|
|
228
212
|
```typescript
|
|
229
213
|
import { IgxPaginatorComponent } from 'igniteui-angular/paginator';
|
|
230
214
|
```
|
|
@@ -243,8 +227,6 @@ import { IgxPaginatorComponent } from 'igniteui-angular/paginator';
|
|
|
243
227
|
|
|
244
228
|
## Progress Indicators
|
|
245
229
|
|
|
246
|
-
> **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)
|
|
247
|
-
|
|
248
230
|
```typescript
|
|
249
231
|
import { IgxLinearProgressBarComponent } from 'igniteui-angular/progressbar';
|
|
250
232
|
import { IgxCircularProgressBarComponent } from 'igniteui-angular/progressbar';
|
|
@@ -268,12 +250,10 @@ import { IgxCircularProgressBarComponent } from 'igniteui-angular/progressbar';
|
|
|
268
250
|
<igx-circular-bar [indeterminate]="true"></igx-circular-bar>
|
|
269
251
|
```
|
|
270
252
|
|
|
271
|
-
Types for linear bar: `'default'`, `'info'`, `'success'`, `'warning'`, `'
|
|
253
|
+
Types for linear bar: `'default'`, `'info'`, `'success'`, `'warning'`, `'error'`.
|
|
272
254
|
|
|
273
255
|
## Chat (AI Chat Component)
|
|
274
256
|
|
|
275
|
-
> **Docs:** [Chat Component](https://www.infragistics.com/products/ignite-ui-angular/angular/components/chat)
|
|
276
|
-
|
|
277
257
|
```typescript
|
|
278
258
|
import { IgxChatComponent } from 'igniteui-angular/chat';
|
|
279
259
|
```
|
|
@@ -16,8 +16,6 @@ This reference gives high-level guidance on when to use each directive, their ke
|
|
|
16
16
|
|
|
17
17
|
## Button & Icon Button
|
|
18
18
|
|
|
19
|
-
> **Docs:** [Button Component](https://www.infragistics.com/products/ignite-ui-angular/angular/components/button)
|
|
20
|
-
|
|
21
19
|
```typescript
|
|
22
20
|
import { IgxButtonDirective, IgxIconButtonDirective } from 'igniteui-angular/directives';
|
|
23
21
|
import { IgxIconComponent } from 'igniteui-angular/icon';
|
|
@@ -46,8 +44,6 @@ Button variants for `igxIconButton`: `'flat'`, `'outlined'`, `'contained'`.
|
|
|
46
44
|
|
|
47
45
|
## Button Group
|
|
48
46
|
|
|
49
|
-
> **Docs:** [Button Group Component](https://www.infragistics.com/products/ignite-ui-angular/angular/components/buttongroup)
|
|
50
|
-
|
|
51
47
|
```typescript
|
|
52
48
|
// Option A — convenience collection (includes IgxButtonGroupComponent + IgxButtonDirective)
|
|
53
49
|
import { IGX_BUTTON_GROUP_DIRECTIVES } from 'igniteui-angular/button-group';
|
|
@@ -129,7 +125,7 @@ onDeselected(event: IButtonGroupEventArgs) {
|
|
|
129
125
|
| `(selected)` | `IButtonGroupEventArgs` | A button is selected. |
|
|
130
126
|
| `(deselected)` | `IButtonGroupEventArgs` | A button is deselected. |
|
|
131
127
|
|
|
132
|
-
`IButtonGroupEventArgs`: `{ owner: IgxButtonGroupComponent; button: IgxButtonDirective; index: number }`, where `IgxButtonDirective` is
|
|
128
|
+
`IButtonGroupEventArgs`: `{ owner: IgxButtonGroupComponent; button: IgxButtonDirective; index: number }`, where `IgxButtonGroupComponent` is from `igniteui-angular/button-group` and `IgxButtonDirective` is from `igniteui-angular/directives` (see **Button & Icon Button** section above).
|
|
133
129
|
|
|
134
130
|
**Key inputs on each `<button igxButton>` child:**
|
|
135
131
|
|
|
@@ -161,8 +157,6 @@ getSelected() { return this.buttonGroup().selectedButtons; }
|
|
|
161
157
|
|
|
162
158
|
## Ripple Effect
|
|
163
159
|
|
|
164
|
-
> **Docs:** [Ripple Directive](https://www.infragistics.com/products/ignite-ui-angular/angular/components/ripple)
|
|
165
|
-
|
|
166
160
|
```typescript
|
|
167
161
|
import { IgxRippleDirective } from 'igniteui-angular/directives';
|
|
168
162
|
```
|
|
@@ -181,34 +175,30 @@ Inputs: `[igxRipple]` (ripple color), `[igxRippleCentered]` (always start from c
|
|
|
181
175
|
|
|
182
176
|
## Tooltip
|
|
183
177
|
|
|
184
|
-
> **Docs:** [Tooltip Directive](https://www.infragistics.com/products/ignite-ui-angular/angular/components/tooltip)
|
|
185
|
-
|
|
186
178
|
```typescript
|
|
187
179
|
import { IgxTooltipDirective, IgxTooltipTargetDirective } from 'igniteui-angular/directives';
|
|
188
180
|
```
|
|
189
181
|
|
|
190
182
|
```html
|
|
191
|
-
<button igxButton [igxTooltipTarget]="myTooltip" [
|
|
183
|
+
<button igxButton [igxTooltipTarget]="myTooltip" [showDelay]="500">
|
|
192
184
|
Hover or focus me
|
|
193
185
|
</button>
|
|
194
186
|
<div igxTooltip #myTooltip="tooltip">Helpful tooltip text</div>
|
|
195
187
|
```
|
|
196
188
|
|
|
197
|
-
Inputs on `[igxTooltipTarget]`: `[
|
|
189
|
+
Inputs on `[igxTooltipTarget]`: `[showDelay]` (ms), `[hideDelay]` (ms), `[tooltipDisabled]`.
|
|
198
190
|
|
|
199
|
-
Programmatic control:
|
|
191
|
+
Programmatic control via the target directive:
|
|
200
192
|
|
|
201
193
|
```typescript
|
|
202
|
-
|
|
194
|
+
tooltipTarget = viewChild.required(IgxTooltipTargetDirective);
|
|
203
195
|
|
|
204
|
-
|
|
205
|
-
|
|
196
|
+
show() { this.tooltipTarget().showTooltip(); }
|
|
197
|
+
hide() { this.tooltipTarget().hideTooltip(); }
|
|
206
198
|
```
|
|
207
199
|
|
|
208
200
|
## Drag and Drop
|
|
209
201
|
|
|
210
|
-
> **Docs:** [Drag and Drop](https://www.infragistics.com/products/ignite-ui-angular/angular/components/drag-drop)
|
|
211
|
-
|
|
212
202
|
```typescript
|
|
213
203
|
import { IgxDragDirective, IgxDropDirective, IDragMoveEventArgs, IDropDroppedEventArgs } from 'igniteui-angular/directives';
|
|
214
204
|
```
|
|
@@ -217,13 +207,13 @@ import { IgxDragDirective, IgxDropDirective, IDragMoveEventArgs, IDropDroppedEve
|
|
|
217
207
|
|
|
218
208
|
```html
|
|
219
209
|
<!-- Draggable source -->
|
|
220
|
-
<div igxDrag
|
|
210
|
+
<div [igxDrag]="item" (dragMove)="onDragMove($event)" (dragEnd)="onDragEnd($event)">
|
|
221
211
|
<igx-icon>drag_indicator</igx-icon>
|
|
222
212
|
{{ item.name }}
|
|
223
213
|
</div>
|
|
224
214
|
|
|
225
215
|
<!-- Drop target -->
|
|
226
|
-
<div igxDrop (dropped)="onDrop($event)" (
|
|
216
|
+
<div igxDrop (dropped)="onDrop($event)" (enter)="onDragEnter($event)" (leave)="onDragLeave($event)">
|
|
227
217
|
Drop here
|
|
228
218
|
</div>
|
|
229
219
|
```
|
|
@@ -253,7 +243,7 @@ onDrop(event: IDropDroppedEventArgs) {
|
|
|
253
243
|
```html
|
|
254
244
|
<igx-list>
|
|
255
245
|
@for (item of items; track item.id) {
|
|
256
|
-
<igx-list-item igxDrag
|
|
246
|
+
<igx-list-item [igxDrag]="item" igxDrop (dropped)="reorder($event, item)">
|
|
257
247
|
<igx-icon igxListAction>drag_handle</igx-icon>
|
|
258
248
|
<span igxListLine>{{ item.name }}</span>
|
|
259
249
|
</igx-list-item>
|
|
@@ -261,8 +251,8 @@ onDrop(event: IDropDroppedEventArgs) {
|
|
|
261
251
|
</igx-list>
|
|
262
252
|
```
|
|
263
253
|
|
|
264
|
-
Key drag events: `(dragStart)`, `(dragMove)`, `(dragEnd)`, `(dragClick)`, `(transitioned)`.
|
|
265
|
-
Key drop events: `(
|
|
254
|
+
Key drag events: `(dragStart)`, `(dragMove)`, `(dragEnd)`, `(dragClick)`, `(ghostCreate)`, `(ghostDestroy)`, `(transitioned)`.
|
|
255
|
+
Key drop events: `(enter)`, `(leave)`, `(over)`, `(dropped)`.
|
|
266
256
|
|
|
267
257
|
> **NOTE:** For touch-based drag, add `importProvidersFrom(HammerModule)` to `app.config.ts` providers.
|
|
268
258
|
|