Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
aa6752c
chore(*): updating dependencies
Oct 31, 2024
a373b7a
Merge branch 'vnext' into package-updates
Dec 10, 2024
b9359c9
Merge branch 'vnext' into package-updates
ChronosSF Feb 6, 2025
fc56a6e
chore(*): Add info on unique values in pivot.
MayaKirova Feb 7, 2025
8b75b4c
docs(state-persistence): remove groupBy feature for treeGrid
RivaIvanova Feb 17, 2025
147caf3
Merge branch 'vnext' into rivanova/fix-6052-remove-groupby-state-pers
RivaIvanova Feb 24, 2025
39fe764
Merge branch 'vnext' into package-updates
ChronosSF Feb 27, 2025
0442533
Merge branch 'vnext' into package-updates
ChronosSF Feb 27, 2025
0bcc9f7
Merge pull request #5986 from IgniteUI/package-updates
ChronosSF Mar 4, 2025
ce97939
Merge pull request #6045 from IgniteUI/mkirova/pivot-updates
dkamburov Mar 6, 2025
8dfad94
docs(*): update JA for #6045 and #6057
randriova Mar 6, 2025
35179d6
Merge pull request #6071 from IgniteUI/localization-2025-03-06
ChronosSF Mar 6, 2025
94626a9
Merge branch 'vnext' into rivanova/fix-6052-remove-groupby-state-pers
RivaIvanova Mar 7, 2025
397d58c
Adding changes from build igniteui-xplat-docs-make-pr_2025.3.12.4
Mar 12, 2025
f72e789
Merge pull request #6078 from IgniteUI/ESShared/XPlaform_en_igniteui-…
HUSSAR-mtrela Mar 12, 2025
1b96db5
Merge branch 'vnext' into rivanova/fix-6052-remove-groupby-state-pers
RivaIvanova Mar 13, 2025
be49ff1
Merge pull request #6053 from IgniteUI/rivanova/fix-6052-remove-group…
kacheshmarova Mar 13, 2025
056b2c8
docs(carousel): align configuration section with WC
RivaIvanova Mar 14, 2025
66e23fe
Merge pull request #6080 from IgniteUI/rivanova/add-carousel-vertical…
kacheshmarova Mar 14, 2025
49fcde4
docs(*): update JA for #6080
randriova Mar 18, 2025
497bb6c
Adding changes from build igniteui-xplat-docs-make-pr_2025.3.19.1
Mar 19, 2025
f72ab9b
docs(query-builder): change QB overview sample
teodosiah Mar 21, 2025
0d23412
docs(query-builder): add overview sample alt
teodosiah Mar 21, 2025
32b1559
Merge pull request #6087 from IgniteUI/thristodorova/replace-query-bu…
gedinakova Mar 21, 2025
189d080
Merge branch 'master' into vnext
gedinakova Mar 21, 2025
a5b66c5
Merge pull request #6082 from IgniteUI/localization-2025-03-18
ChronosSF Mar 21, 2025
d9a5afe
Merge branch 'vnext' into ESShared/XPlaform_en_igniteui-xplat-docs-ma…
HUSSAR-mtrela Mar 21, 2025
97696a6
Merge pull request #6084 from IgniteUI/ESShared/XPlaform_en_igniteui-…
HUSSAR-mtrela Mar 21, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
32 changes: 30 additions & 2 deletions en/components/carousel.md
Original file line number Diff line number Diff line change
Expand Up @@ -119,9 +119,37 @@ export class HomeComponent {
### Configuring IgxCarousel
<div class="divider--half"></div>

By default, the Carousel in Angular has its **[`loop`]({environment:angularApiUrl}/classes/igxcarouselcomponent.html#loop)** input property set to `true` ( *looping occurs when the first slide comes after the last by navigating using the Next action, or when the last slide comes after the first by using the Previous action* ). The looping behavior can be disabled by setting the value of the `loop` input to `false`.
By default, the Carousel in Angular has its [`loop`]({environment:angularApiUrl}/classes/igxcarouselcomponent.html#loop) input property set to `true` (*looping occurs when the first slide comes after the last by navigating using the Next action, or when the last slide comes after the first by using the Previous action*). The looping behavior can be disabled by setting the value of the [`loop`]({environment:angularApiUrl}/classes/igxcarouselcomponent.html#loop) input to `false`.

To keep track of each slide index, the carousel has indicators that are positioned at the `bottom` of the carousel by default. In order to change this behavior, we have to use the [indicatorsOrientation]({environment:angularApiUrl}/classes/igxcarouselcomponent.html#indicatorsOrientation) property and assign it to `top`. Indicators can be disabled by setting the `indicators` input property to `false`.
```html
<igx-carousel [loop]="false">
...
</igx-carousel>
```

To keep track of each slide index, the carousel has indicators that are positioned at the `end` of the carousel by default. In order to change this behavior, use the [`indicatorsOrientation`]({environment:angularApiUrl}/classes/igxcarouselcomponent.html#indicatorsOrientation) property and assign it to `start`.

```html
<igx-carousel indicatorsOrientation="start">
...
</igx-carousel>
```

By default, the [`IgxCarousel`]({environment:angularApiUrl}/classes/igxcarouselcomponent.html) displays its navigation buttons and indicators. Use the [`indicators`]({environment:angularApiUrl}/classes/igxcarouselcomponent.html#indicators) property to hide the indicators and the [`navigation`]({environment:angularApiUrl}/classes/igxcarouselcomponent.html#navigation) property to hide the navigation buttons.

```html
<igx-carousel [navigation]="false" [indicators]="false">
...
</igx-carousel>
```

The [`IgxCarousel`]({environment:angularApiUrl}/classes/igxcarouselcomponent.html) supports vertical mode. Use the [`vertical`]({environment:angularApiUrl}/classes/igxcarouselcomponent.html#vertical) property to enable it.

```html
<igx-carousel [vertical]="true">
...
</igx-carousel>
```

### Custom indicators
<div class="divider--half"></div>
Expand Down
7 changes: 7 additions & 0 deletions en/components/charts/features/chart-data-selection.md
Original file line number Diff line number Diff line change
Expand Up @@ -89,6 +89,13 @@ The matcher is ideal for using in charts, such as the [`IgxCategoryChartComponen

For example, if you datasource has numeric properties Nuclear, Coal, Oil, Solar then you know there are series created for each of these properties. If you want to select the series bound to Solar values, you can add a ChartSelection object to the SelectedSeriesItems collection using a matcher with the following properties set.

<code-view style="height: 500px" alt="Angular Selection Matcher"
data-demos-base-url="{environment:dvDemosBaseUrl}"
iframe-src="{environment:dvDemosBaseUrl}/charts/category-chart/selection-matcher"
github-src="charts/category-chart/selection-matcher">
</code-view>


## API References

The following is a list of API members mentioned in the above sections:
Expand Down
29 changes: 29 additions & 0 deletions en/components/general-changelog-dv.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,35 @@ All notable changes for each version of Ignite UI for Angular are documented on

* [Ignite UI for Angular CHANGELOG.md at Github](https://github.com/IgniteUI/igniteui-angular/blob/master)

## **19.0.1 (February 2025)**

### Enhancements

#### Toolbar

* Added new `GroupHeaderTextStyle` property to [`IgxToolbarComponent`]({environment:dvApiBaseUrl}/products/ignite-ui-angular/api/docs/typescript/latest/classes/igniteui_angular_layouts.igxtoolbarcomponent.html) and [`IgxToolPanelComponent`]({environment:dvApiBaseUrl}/products/ignite-ui-angular/api/docs/typescript/latest/classes/igniteui_angular_layouts.igxtoolpanelcomponent.html). If set, it will apply to all [`IgxToolActionGroupHeaderComponent`]({environment:dvApiBaseUrl}/products/ignite-ui-angular/api/docs/typescript/latest/classes/igniteui_angular_layouts.igxtoolactiongroupheadercomponent.html) actions.
* Added new property on [`IgxToolActionComponent`]({environment:dvApiBaseUrl}/products/ignite-ui-angular/api/docs/typescript/latest/classes/igniteui_angular_layouts.igxtoolactioncomponent.html) called [`titleHorizontalAlignment`]({environment:dvApiBaseUrl}/products/ignite-ui-angular/api/docs/typescript/latest/classes/igniteui_angular_charts.igxseriesviewercomponent.html#titleHorizontalAlignment) which controls the horizontal alignment of the title text.
* Added new property on [`IgxToolActionSubPanelComponent`]({environment:dvApiBaseUrl}/products/ignite-ui-angular/api/docs/typescript/latest/classes/igniteui_angular_layouts.igxtoolactionsubpanelcomponent.html) called `ItemSpacing` which controls the spacing between items inside the panel.

### Bug Fixes

The following table lists the bug fixes made for the Ignite UI for Angular toolset for this release:

| Bug Number | Control | Description |
|------------|---------|------------------|
|26218|Excel Library|Chart's plot area right margin becomes narrower and fill pattern and fill foreground are gone just by loading an Excel file|
|30286|IgxDataChart|Bubble Series tooltip content is switched to that of nearby bubble data in clicking a bubble|
|32906|IgxDataChart|IgxDataChart is showing two xAxis on the top|
|33605|IgxDataChart|ScatterLineSeries is not showing the color of the line correctly in the legend|
|34053|IgxRadialGauge|The position of the scale label is shifted|
|34083|Excel Library|TextOperatorConditionalFormat's is not loaded/saved properly if the text contains = in a template Excel file|
|34776|IgxDataChart|Repeatedly showing and hiding the IgxDataChart causes memory leakage in JS Heap|
|35495|Excel Library|Pictures in cells are lost when a template file is loaded|
|35496|IgxSpreadsheet|Error when setting styles in Excel with images|
|35498|IgxDataChart|Tooltips for the series specified in IncludedSeries are not displayed|
|36176|Excel Library|Exception occurs when loading an Excel workbook that has a LET function|
|36379|Excel Library|Colors with any alpha channel in an excel workbook fail to load|

## **19.0.0 (January 2025)**

* Angular 19 support.
Expand Down
20 changes: 19 additions & 1 deletion en/components/grids_templates/state-persistence.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ _canonicalLink: grid/state-persistence
## Supported Features
[`IgxGridState`]({environment:angularApiUrl}/classes/igxgridstatedirective.html) directive supports saving and restoring the state of the following features:

@@if (igxName !== 'IgxHierarchicalGrid' && igxName !== 'IgxPivotGrid') {
@@if (igxName === 'IgxGrid') {

* `Sorting`
* `Filtering`
Expand All @@ -60,6 +60,24 @@ _canonicalLink: grid/state-persistence
* Columns templates and functions are restored using application level code, see [Restoring Column](state-persistence.md#restoring-columns) section.
}

@@if (igxName === 'IgxTreeGrid') {

* `Sorting`
* `Filtering`
* `Advanced Filtering`
* `Paging`
* `Cell Selection`
* `Row Selection`
* `Column Selection`
* `Row Pinning`
* `Expansion`
* `Columns`
* **NEW**: Multi column headers are now supported out of the box
* Columns order
* Column properties defined by the [`IColumnState`]({environment:angularApiUrl}/interfaces/icolumnstate.html) interface.
* Columns templates and functions are restored using application level code, see [Restoring Column](state-persistence.md#restoring-columns) section.
}

@@if (igxName === 'IgxHierarchicalGrid') {
* `RowIslands`
* saving/restoring features for all child grids down the hierarchy
Expand Down
57 changes: 55 additions & 2 deletions en/components/menus/toolbar.md
Original file line number Diff line number Diff line change
Expand Up @@ -81,12 +81,13 @@ The following is a list of the different [`IgxToolActionComponent`]({environment
* [`IgxToolActionLabelComponent`]({environment:dvApiBaseUrl}/products/ignite-ui-angular/api/docs/typescript/latest/classes/igniteui_angular_layouts.igxtoolactionlabelcomponent.html)
* [`IgxToolActionNumberInputComponent`]({environment:dvApiBaseUrl}/products/ignite-ui-angular/api/docs/typescript/latest/classes/igniteui_angular_layouts.igxtoolactionnumberinputcomponent.html)
* [`IgxToolActionRadioComponent`]({environment:dvApiBaseUrl}/products/ignite-ui-angular/api/docs/typescript/latest/classes/igniteui_angular_layouts.igxtoolactionradiocomponent.html)
* [`IgxToolActionSubPanelComponent`]({environment:dvApiBaseUrl}/products/ignite-ui-angular/api/docs/typescript/latest/classes/igniteui_angular_layouts.igxtoolactionsubpanelcomponent.html)

Each of these tools exposes an `OnCommand` event that is triggered by mouse click.
Each of these tools exposes an `OnCommand` event that is triggered by mouse click. Note, the [`IgxToolActionIconMenuComponent`]({environment:dvApiBaseUrl}/products/ignite-ui-angular/api/docs/typescript/latest/classes/igniteui_angular_layouts.igxtoolactioniconmenucomponent.html) is a wrapper for other tools that can also be wrapped inside a [`IgxToolActionIconMenuComponent`]({environment:dvApiBaseUrl}/products/ignite-ui-angular/api/docs/typescript/latest/classes/igniteui_angular_layouts.igxtoolactioniconmenucomponent.html).

New and existing tools can be repositioned and marked hidden using the [`overlayId`]({environment:dvApiBaseUrl}/products/ignite-ui-angular/api/docs/typescript/latest/classes/igniteui_angular_layouts.igxtoolactioncomponent.html#overlayId), [`beforeId`]({environment:dvApiBaseUrl}/products/ignite-ui-angular/api/docs/typescript/latest/classes/igniteui_angular_layouts.igxtoolactioncomponent.html#beforeId) and [`afterId`]({environment:dvApiBaseUrl}/products/ignite-ui-angular/api/docs/typescript/latest/classes/igniteui_angular_layouts.igxtoolactioncomponent.html#afterId) properties on the [`IgxToolActionComponent`]({environment:dvApiBaseUrl}/products/ignite-ui-angular/api/docs/typescript/latest/classes/igniteui_angular_layouts.igxtoolactioncomponent.html) object. ToolActions also expose a [`visibility`]({environment:dvApiBaseUrl}/products/ignite-ui-angular/api/docs/typescript/latest/classes/igniteui_angular_layouts.igxtoolactioncomponent.html#visibility) property.

The following example demonstrates hiding both the built-in **ZoomReset** and **AnalyzeMenu** menu tool actions. A new instance of the **ZoomReset** tool action is added and placed within the **ZoomMenu** by using the the [`afterId`]({environment:dvApiBaseUrl}/products/ignite-ui-angular/api/docs/typescript/latest/classes/igniteui_angular_layouts.igxtoolactioncomponent.html#afterId) property and assigning that to **ZoomOut**. This will ensure the new Reset tool is displayed at the bottom of the **ZoomMenu**.
The following example demonstrates a couple of features. First you can group tools together in the [`IgxToolActionSubPanelComponent`]({environment:dvApiBaseUrl}/products/ignite-ui-angular/api/docs/typescript/latest/classes/igniteui_angular_layouts.igxtoolactionsubpanelcomponent.html) including hiding built in tools such as the **ZoomReset** and **AnalyzeMenu** menu tool actions. In this example a new instance of the **ZoomReset** tool action is added and placed within the **ZoomMenu** by using the the [`afterId`]({environment:dvApiBaseUrl}/products/ignite-ui-angular/api/docs/typescript/latest/classes/igniteui_angular_layouts.igxtoolactioncomponent.html#afterId) property and assigning that to **ZoomOut**. It is also highlighted via the [`isHighlighted`]({environment:dvApiBaseUrl}/products/ignite-ui-angular/api/docs/typescript/latest/classes/igniteui_angular_layouts.igxtoolactioncomponent.html#isHighlighted) property on the tool. This will ensure the new Reset tool is promptly displayed at the bottom of the **ZoomMenu**.

<code-view style="height: 600px" alt="Angular Toolbar Example"
data-demos-base-url="{environment:dvDemosBaseUrl}"
Expand Down Expand Up @@ -153,6 +154,12 @@ Save to Image Action

When adding tools manually, icons can be assigned using the `RenderIconFromText` method. There are three paramters to pass in this method. The first is the icon collection name defined on the tool eg. [`iconCollectionName`]({environment:dvApiBaseUrl}/products/ignite-ui-angular/api/docs/typescript/latest/classes/igniteui_angular_layouts.igxtoolactioncomponent.html#iconCollectionName). The second is the name of the icon defined on the tool eg. [`iconName`]({environment:dvApiBaseUrl}/products/ignite-ui-angular/api/docs/typescript/latest/classes/igniteui_angular_layouts.igxtoolactioncomponent.html#iconName), followed by adding the SVG string.

### Data URL Icons

Similarly to adding svg, you can also add an Icon image from a URL via the `RegisterIconFromDataURL`. The method's third parameter would be used to enter a string URL.

The following snippet shows both methods of adding an Icon.

```html
<igx-tool-action-label
title="Custom Icon"
Expand All @@ -170,15 +177,61 @@ public toolbarCustomIconOnViewInit(): void {
}
```

```ts
public toolbarCustomIconOnViewInit(): void {

toolbar.registerIconFromDataURL("CustomCollection", "CustomIcon", "https://www.svgrepo.com/show/678/calculator.svg");

}
```

```ts
public toolbarCustomIconOnViewInit(): void {

const icon = '<svg width="28px" height="28px" stroke="none" viewBox="0 0 3.5 3.5" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="iconify iconify--gis" preserveAspectRatio="xMidYMid meet"><path d="M0.436 0.178a0.073 0.073 0 0 0 -0.062 0.036L0.01 0.846a0.073 0.073 0 0 0 0.063 0.109h0.729a0.073 0.073 0 0 0 0.063 -0.109L0.501 0.214a0.073 0.073 0 0 0 -0.064 -0.036zm0.001 0.219 0.238 0.413H0.199zM1.4 0.507v0.245h0.525v-0.245zm0.77 0v0.245h1.33v-0.245zM0.073 1.388A0.073 0.073 0 0 0 0 1.461v0.583a0.073 0.073 0 0 0 0.073 0.073h0.729A0.073 0.073 0 0 0 0.875 2.045V1.461a0.073 0.073 0 0 0 -0.073 -0.073zm0.073 0.146h0.583v0.438H0.146zM1.4 1.674v0.245h0.945v-0.245zm1.19 0v0.245h0.91v-0.245zM0.438 2.447c-0.241 0 -0.438 0.197 -0.438 0.438 0 0.241 0.197 0.438 0.438 0.438s0.438 -0.197 0.438 -0.438c0 -0.241 -0.197 -0.438 -0.438 -0.438zm0 0.146a0.291 0.291 0 0 1 0.292 0.292 0.291 0.291 0 0 1 -0.292 0.292 0.291 0.291 0 0 1 -0.292 -0.292A0.291 0.291 0 0 1 0.438 2.593zM1.4 2.842v0.245h0.525v-0.245zm0.77 0v0.245h1.33v-0.245z" fill="#000000" fill-rule="evenodd"/></svg>';

this.toolbar.registerIconFromText("CustomCollection", "CustomIcon", icon);

}
```

```ts
public toolbarCustomIconOnViewInit(): void {

toolbar.registerIconFromDataURL("CustomCollection", "CustomIcon", "https://www.svgrepo.com/show/678/calculator.svg");

}
```

@code {

protected override async Task OnAfterRenderAsync(bool firstRender)
{
var toolbar = this.toolbar;

if (firstRender) {
this.ToolbarCustomIconOnViewInit();
}
}

private IgbToolbar toolbar;

public void ToolbarCustomIconOnViewInit()
{
this.toolbar.EnsureReady().ContinueWith(new Action<Task>((e) =>
{
this.toolbar.RegisterIconFromDataURLAsync("CustomCollection", "CustomIcon", "https://www.svgrepo.com/show/678/calculator.svg");
}));
}

}

````

```tsx
<IgrToolbar orientation="Vertical" />
````

### Vertical Orientation

By default the Angular Toolbar is shown horizontally, but it also has the ability to shown vertically by setting the [`orientation`]({environment:dvApiBaseUrl}/products/ignite-ui-angular/api/docs/typescript/latest/classes/igniteui_angular_layouts.igxtoolbarcomponent.html#orientation) property.
Expand Down
10 changes: 9 additions & 1 deletion en/components/pivotGrid/pivot-grid.md
Original file line number Diff line number Diff line change
Expand Up @@ -95,6 +95,9 @@ A filter can also be defined via the `filters` configuration property. It can be

Each basic dimension configuration requires a `memberName` that matches a field from the provided `data`, or a `memberFunction` that extracts a value from the record in case of complex objects or other custom scenarios.

>[!NOTE]
> The `memberName` needs to be unique. In case you need different dimensions for the same field, you can define a custom unique `memberName` for each, and extract the related value via `memberFunction`.

Multiple sibling dimensions can be defined, which creates a more complex nested group in the related row or column dimension area.

The dimensions can be reordered or moved from one area to another via their corresponding chips using drag & drop.
Expand Down Expand Up @@ -151,7 +154,12 @@ It also allows for further customization via the second option parameter in orde

### Values configuration

A value configuration requires a `member` that matches a field from the provided `data`, or it can define either an `aggregatorName` or custom `aggregator` function for more complex scenarios. Out of the box, there are 4 predefined aggregations that can be used depending on the data type of the data field:
A value configuration requires a `member` that matches a field from the provided `data`, or it can define either via an `aggregatorName` or custom `aggregator` function for more complex scenarios.

>[!NOTE]
> The `member` needs to be unique. In case you need different value aggregations for the same field, you can define a custom unique `member` for each, and extract the related value via the `aggregator` function.

Out of the box, there are 4 predefined aggregations that can be used depending on the data type of the data field:

- `IgxPivotNumericAggregate` - for numeric fields.
Contains the following aggregation functions: `SUM`, `AVG`, `MIN`, `MAX`, `COUNT`.
Expand Down
3 changes: 2 additions & 1 deletion en/components/query-builder.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,8 @@ We’ve created this Angular Query Builder example to show you the default funct

<code-view style="height:700px"
data-demos-base-url="{environment:demosBaseUrl}"
iframe-src="{environment:demosBaseUrl}/interactions/query-builder-sample-1" alt="Angular Query Builder Example">
iframe-src="{environment:demosBaseUrl}/interactions/query-builder-request-sample"
alt="Angular Query Builder Overview Example">
</code-view>

<div class="divider--half"></div>
Expand Down
Binary file added en/images/dockmanager-document-host-docking.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added en/images/dockmanager-pane-docking.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added en/images/dockmanager-root-docking.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added en/images/dockmanager-splitter-docking.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added en/images/tile-manager-actions.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading