Skip to content

Commit 80744e7

Browse files
authored
Merge branch 'vnext' into vnext-17a91fc9cc793c70
2 parents 181b3c5 + 2b1a8ec commit 80744e7

File tree

14 files changed

+1289
-185
lines changed

14 files changed

+1289
-185
lines changed

.github/workflows/build-angular.yml

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -10,20 +10,16 @@ on:
1010
branches: [ master, vnext ]
1111

1212
jobs:
13-
build:
13+
build-angular:
1414

1515
runs-on: ubuntu-latest
1616

17-
strategy:
18-
matrix:
19-
node-version: [16.x, 18.x]
20-
2117
steps:
2218
- uses: actions/checkout@v3
23-
- name: Use Node.js ${{ matrix.node-version }}
19+
- name: Use Node.js 22.x
2420
uses: actions/setup-node@v3
2521
with:
26-
node-version: ${{ matrix.node-version }}
22+
node-version: 22.x
2723
- name: Install packages
2824
run: npm ci
2925
- name: DotNet tool restore

.github/workflows/build-blazor.yml

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -10,20 +10,16 @@ on:
1010
branches: [ master, vnext ]
1111

1212
jobs:
13-
build:
13+
build-blazor:
1414

1515
runs-on: ubuntu-latest
1616

17-
strategy:
18-
matrix:
19-
node-version: [16.x, 18.x]
20-
2117
steps:
2218
- uses: actions/checkout@v3
23-
- name: Use Node.js ${{ matrix.node-version }}
19+
- name: Use Node.js 22.x
2420
uses: actions/setup-node@v3
2521
with:
26-
node-version: ${{ matrix.node-version }}
22+
node-version: 22.x
2723
- name: Install packages
2824
run: npm ci
2925
- name: DotNet tool restore

.github/workflows/build-react.yml

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -10,20 +10,16 @@ on:
1010
branches: [ master, vnext ]
1111

1212
jobs:
13-
build:
13+
build-react:
1414

1515
runs-on: ubuntu-latest
1616

17-
strategy:
18-
matrix:
19-
node-version: [16.x, 18.x]
20-
2117
steps:
2218
- uses: actions/checkout@v3
23-
- name: Use Node.js ${{ matrix.node-version }}
19+
- name: Use Node.js 22.x
2420
uses: actions/setup-node@v3
2521
with:
26-
node-version: ${{ matrix.node-version }}
22+
node-version: 22.x
2723
- name: Install packages
2824
run: npm ci
2925
- name: DotNet tool restore

.github/workflows/build-wc.yml

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -10,20 +10,16 @@ on:
1010
branches: [ master, vnext ]
1111

1212
jobs:
13-
build:
13+
build-wc:
1414

1515
runs-on: ubuntu-latest
1616

17-
strategy:
18-
matrix:
19-
node-version: [16.x, 18.x]
20-
2117
steps:
2218
- uses: actions/checkout@v3
23-
- name: Use Node.js ${{ matrix.node-version }}
19+
- name: Use Node.js 22.x
2420
uses: actions/setup-node@v3
2521
with:
26-
node-version: ${{ matrix.node-version }}
22+
node-version: 22.x
2723
- name: Install packages
2824
run: npm ci
2925
- name: DotNet tool restore

doc/en/components/ai/skills.md

Lines changed: 257 additions & 149 deletions
Large diffs are not rendered by default.

doc/en/components/general-changelog-dv-react.md

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,25 @@ All notable changes for each version of {ProductName} are documented on this pag
1313

1414
## **{PackageVerLatest}**
1515

16+
### {PackageCommon}
17+
18+
#### Changed
19+
20+
- `DockManager`: Updated to use the latest `igniteui-dockmanager@2.1.0` with new `minResizeWidth` and `minResizeHeight` properties, `paneFlyoutToggle` event; additional `layoutChange` event detail and fixes. See the [full changelog](https://github.com/IgniteUI/igniteui-dockmanager/blob/master/CHANGELOG.md#210).
21+
- Updated to use the latest `igniteui-webcomponents@7.1.0` including new `Splitter` and `Highlight` container components and fixes. See the [full changelog](https://github.com/IgniteUI/igniteui-webcomponents/blob/master/CHANGELOG.md#710---2026-03-19).
22+
23+
#### New Features
24+
25+
- #### AI-Assisted Development - Agent Skills
26+
- Structured knowledge files that teach AI coding assistants (GitHub Copilot, Cursor, Windsurf, Claude, JetBrains AI, etc.) how to work with Ignite UI for React.
27+
- The skill files are included in the `igniteui-react` package and also live in the [skills/](https://github.com/IgniteUI/igniteui-react/tree/master/skills) directory:
28+
- **components** - Identify the right React components (`Igr*`) for a UI pattern, then install, import, and use them — JSX patterns, events, refs, forms, etc.
29+
- **customize-theme** - Customize styling using CSS custom properties, Sass, and the theming system in React, including using Ignite UI Theming MCP server.
30+
- **optimize-bundle-size** - Reduce bundle size with granular imports, tree-shaking, and lazy loading.
31+
- These skills are automatically discovered when placed in the agent's skills path (e.g. `.agents/skills` or `.claude/skills`).
32+
33+
## **{PackageVerChanges-26-2-MAR}**
34+
1635
### Bug Fixes
1736

1837
| Bug Number | Control | Description |
Lines changed: 186 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,186 @@
1+
---
2+
title: {Platform} Splitter Component | Layout Controls | Infragistics
3+
_description: Use the {ProductName} Splitter component to create two resizable panes with horizontal or vertical layouts, collapse and expand behavior, keyboard support, and nested split views.
4+
_keywords: splitter, split panes, resizable panes, web components splitter, {Platform} splitter, {ProductName}
5+
_license: MIT
6+
mentionedTypes: ["Splitter"]
7+
---
8+
9+
# {Platform} Splitter Overview
10+
11+
The {ProductName} Splitter provides a resizable split-pane layout that divides content into two areas: `start` and `end`. Users can drag the splitter bar, use keyboard shortcuts, or collapse and expand panes with built-in controls. You can also nest splitters to build complex dashboard-style layouts.
12+
13+
## {Platform} Splitter Example
14+
15+
`sample="/layouts/splitter/base", height="520", alt="{Platform} Splitter Example"`
16+
17+
<div class="divider--half"></div>
18+
19+
## Usage
20+
21+
First, you need to install the {ProductName} by running the following command:
22+
23+
```cmd
24+
npm install {PackageWebComponents}
25+
```
26+
27+
Before using the `Splitter`, you need to register it as follows:
28+
29+
```ts
30+
import { defineComponents, IgcSplitterComponent } from 'igniteui-webcomponents';
31+
32+
defineComponents(IgcSplitterComponent);
33+
```
34+
35+
For a complete introduction to the {ProductName}, read the [**Getting Started**](../general-getting-started.md) topic.
36+
37+
Use the `start` and `end` slots to place pane content:
38+
39+
```html
40+
<igc-splitter style="height: 400px;">
41+
<div slot="start">Start pane content</div>
42+
<div slot="end">End pane content</div>
43+
</igc-splitter>
44+
```
45+
46+
### Orientation
47+
48+
Set the `orientation` property to control pane direction:
49+
50+
- `horizontal` (default): start and end panes are rendered left and right.
51+
- `vertical`: start and end panes are rendered top and bottom.
52+
53+
```html
54+
<igc-splitter orientation="vertical" style="height: 400px;">
55+
<div slot="start">Top pane</div>
56+
<div slot="end">Bottom pane</div>
57+
</igc-splitter>
58+
```
59+
60+
### Pane Size and Constraints
61+
62+
Use size properties to set initial and constrained pane sizes:
63+
64+
- `start-size`, `end-size`
65+
- `start-min-size`, `end-min-size`
66+
- `start-max-size`, `end-max-size`
67+
68+
Values accept CSS length values such as `px` and `%`.
69+
70+
```html
71+
<igc-splitter
72+
start-size="35%"
73+
end-size="65%"
74+
start-min-size="200px"
75+
end-min-size="180px"
76+
style="height: 420px;"
77+
>
78+
<div slot="start">Navigation</div>
79+
<div slot="end">Main content</div>
80+
</igc-splitter>
81+
```
82+
83+
### Collapsing and Resizing
84+
85+
Use these properties to control interactions:
86+
87+
- `disable-resize`: disables pane resizing.
88+
- `disable-collapse`: disables pane collapsing.
89+
- `hide-drag-handle`: hides the drag handle.
90+
- `hide-collapse-buttons`: hides collapse and expand buttons.
91+
92+
You can also collapse or expand panes programmatically:
93+
94+
```ts
95+
const splitter = document.querySelector('igc-splitter') as IgcSplitterComponent;
96+
97+
splitter.toggle('start'); // collapse start pane
98+
splitter.toggle('start'); // expand start pane
99+
```
100+
101+
### Nested Splitters
102+
103+
Splitters can be nested to create multi-region layouts.
104+
105+
`sample="/layouts/splitter/nested", height="520", alt="{Platform} Nested Splitter Example"`
106+
107+
## Events
108+
109+
The Splitter emits the following events during resize operations:
110+
111+
- `igcResizeStart`: fired once when resizing starts.
112+
- `igcResizing`: fired continuously while resizing.
113+
- `igcResizeEnd`: fired once when resizing ends.
114+
115+
The event detail includes current `startPanelSize`, `endPanelSize`, and `delta` for ongoing and end events.
116+
117+
```ts
118+
const splitter = document.querySelector('igc-splitter');
119+
120+
splitter?.addEventListener('igcResizeEnd', (event: CustomEvent) => {
121+
console.log(event.detail.startPanelSize, event.detail.endPanelSize, event.detail.delta);
122+
});
123+
```
124+
125+
## Keyboard Navigation
126+
127+
When the splitter bar is focused:
128+
129+
| Keys | Description |
130+
| ---- | ----------- |
131+
| <kbd>Arrow Left</kbd> / <kbd>Arrow Right</kbd> | Resize panes in horizontal orientation |
132+
| <kbd>Arrow Up</kbd> / <kbd>Arrow Down</kbd> | Resize panes in vertical orientation |
133+
| <kbd>Home</kbd> | Snap start pane to its minimum size |
134+
| <kbd>End</kbd> | Snap start pane to its maximum size |
135+
| <kbd>Ctrl</kbd> + <kbd>Arrow Left</kbd> / <kbd>Arrow Up</kbd> | Collapse or expand the start pane |
136+
| <kbd>Ctrl</kbd> + <kbd>Arrow Right</kbd> / <kbd>Arrow Down</kbd> | Collapse or expand the end pane |
137+
138+
## Styling
139+
140+
The `Splitter` component exposes CSS parts for styling:
141+
142+
| Name | Description |
143+
| ---- | ----------- |
144+
| `splitter-bar` | The draggable separator between panes |
145+
| `drag-handle` | The drag handle element in the splitter bar |
146+
| `start-pane` | The start pane container |
147+
| `end-pane` | The end pane container |
148+
| `start-collapse-btn` | Button that collapses the start pane |
149+
| `end-collapse-btn` | Button that collapses the end pane |
150+
| `start-expand-btn` | Button that expands the start pane |
151+
| `end-expand-btn` | Button that expands the end pane |
152+
153+
It also supports theme CSS variables, including:
154+
155+
- `--bar-color`
156+
- `--handle-color`
157+
- `--expander-color`
158+
- `--bar-color-active`
159+
- `--handle-color-active`
160+
- `--expander-color-active`
161+
- `--focus-color`
162+
- `--size`
163+
164+
```css
165+
igc-splitter {
166+
--bar-color: #011627;
167+
--handle-color: #ecaa53;
168+
--expander-color: #ecaa53;
169+
--bar-color-active: #011627;
170+
--handle-color-active: #ecaa53;
171+
--expander-color-active: #ecaa53;
172+
--focus-color: #ecaa53;
173+
}
174+
```
175+
176+
`sample="/layouts/splitter/styling", height="520", alt="{Platform} Splitter Styling Example"`
177+
178+
## API References
179+
180+
- `Splitter`
181+
- [`Styling & Themes`](../themes/overview.md)
182+
183+
## Additional Resources
184+
185+
- [{ProductName} **Forums**]({ForumsLink})
186+
- [{ProductName} **GitHub**]({GithubLink})

0 commit comments

Comments
 (0)