Skip to content

Commit f982892

Browse files
authored
Merge branch 'vnext' into jp-sync/dock-manager-i18n-peer-dep-6cc0581559368056
2 parents 492cdd1 + 98cc1dd commit f982892

17 files changed

Lines changed: 1380 additions & 193 deletions

File tree

.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/ai/theming-mcp.md

Lines changed: 68 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,16 @@ npx -y igniteui-theming igniteui-theming-mcp
5757
> [!NOTE]
5858
> The `-y` flag tells `npx` to auto-confirm the package download prompt so the server can start without manual intervention.
5959
60+
<!-- Angular -->
61+
### How version resolution works
62+
63+
Because `igniteui-theming` is a dependency of `igniteui-angular`, it is already present in your `node_modules` after `npm install`. When you run the launch command above, `npx` detects the locally installed copy and runs it directly — no network request is made. This means the MCP server version always stays in sync with the rest of your Ignite UI packages.
64+
65+
If you run the command outside a project (or before running `npm install`), `npx -y` downloads the **latest** version from npm into a temporary cache instead. The server will still start, but `detect_platform` will return `generic` since there is no `package.json` to inspect.
66+
67+
Choose your AI client below for the specific configuration steps.
68+
<!-- end: Angular -->
69+
6070
### VS Code
6171

6272
GitHub Copilot in VS Code supports MCP servers through a workspace-level configuration file. Create or edit `.vscode/mcp.json` in your project root:
@@ -245,6 +255,11 @@ Here is a brief overview of each tool:
245255
> [!NOTE]
246256
> For compound components (e.g., `combo`, `select`, `grid`), `get_component_design_tokens` returns a list of related child themes instead of a flat token list. For example, querying `grid` may return child themes such as `grid`, `grid-toolbar`, `grid-filtering`, and `paginator`. The AI will generate a separate `create_component_theme` call for each child theme using the appropriate scoped selector.
247257
258+
<!-- Angular -->
259+
> [!NOTE]
260+
> If your project uses the licensed `@infragistics/igniteui-angular` package, tell the AI so it can set the `licensed` parameter on palette, theme, and component tools. This adjusts the generated import paths accordingly.
261+
<!-- end: Angular -->
262+
248263
## Example Scenarios
249264

250265
The following scenarios show what you can ask the AI to do once the MCP server is connected.
@@ -255,6 +270,29 @@ The following scenarios show what you can ask the AI to do once the MCP server i
255270
256271
The AI will call `create_theme` and return a ready-to-use `styles.scss` file. The generated output will look similar to this:
257272

273+
<!-- Angular -->
274+
```scss
275+
/* styles.scss */
276+
@use 'igniteui-angular/theming' as *;
277+
278+
$my-palette: palette(
279+
$primary: #2563eb,
280+
$secondary: #f97316,
281+
$surface: #fff,
282+
$gray: #9e9e9e,
283+
);
284+
285+
$my-typography: typography(
286+
$font-family: 'Roboto, sans-serif',
287+
);
288+
289+
@include core();
290+
@include typography($my-typography);
291+
@include theme($my-palette, $schema: $light-material-schema);
292+
```
293+
<!-- end: Angular -->
294+
295+
<!-- React, WebComponents -->
258296
```scss
259297
/* styles.scss */
260298
@use 'igniteui-theming' as *;
@@ -274,6 +312,7 @@ $my-palette: palette(
274312
$type-scale: $material-type-scale
275313
);
276314
```
315+
<!-- end: React, WebComponents -->
277316

278317
### Dark Mode Variant
279318

@@ -283,7 +322,7 @@ $my-palette: palette(
283322

284323
> _"Our design system specifies exact hex values for all 14 shades of our primary green. I'll paste the values — create a custom palette."_
285324
286-
The AI will call `create_custom_palette` with `mode: "explicit"` for the primary color and auto-generate the rest.
325+
The AI will call `create_custom_palette` with `mode: "explicit"` for the primary color and auto-generate the rest.<!-- Angular --> See [Palettes](https://www.infragistics.com/products/ignite-ui-angular/angular/components/themes/sass/palettes) for more detail on shade generation.<!-- end: Angular-->
287326

288327
### Component-Level Customization
289328

@@ -301,7 +340,7 @@ The AI will call `set_spacing` scoped to the calendar component and `set_size` a
301340

302341
**Platform not detected**
303342

304-
If `detect_platform` returns `null` or `generic`, make sure your `package.json` lists an Ignite UI package (e.g., `igniteui-react`) as a dependency. You can also tell the AI explicitly: _"Use {ProductName}."_
343+
If `detect_platform` returns `null` or `generic`, make sure your `package.json` lists an Ignite UI package (e.g., `{PackageCommon}`) as a dependency. You can also tell the AI explicitly: _"Use the {Platform} platform."_
305344

306345
**Luminance warning on colors**
307346

@@ -311,9 +350,36 @@ If the AI warns about color luminance, it means the chosen color is too light or
311350

312351
For light themes use a light surface (e.g., `#fafafa`). For dark themes use a dark surface (e.g., `#121212`). Mismatched surface colors cause the AI to emit a warning.
313352

353+
<!-- Angular -->
354+
**Generated Sass does not compile**
355+
356+
Ensure `igniteui-angular` and `igniteui-theming` are installed:
357+
358+
```bash
359+
ng add igniteui-angular
360+
```
361+
362+
Also confirm that `core()` is called before any other theming mixin in your `styles.scss`. See [Theming with Sass](<a href="https://www.infragistics.com/products/ignite-ui-angular/angular/components/themes/sass/index">) for the correct file setup.
363+
<!-- end: Angular -->
364+
314365
## Additional Resources
315366

316367
- [{ProductName} Skills](./skills.md)
368+
369+
<!-- Ideally these should be included once documentation is combined
370+
- [Theming Overview](../themes/index.md)
371+
- [Palettes](../themes/palettes.md)
372+
- [Typography](../themes/typography.md)
373+
- [Elevations](../themes/elevations.md)
374+
- [Spacing](../themes/spacing.md)
375+
- [Roundness](../themes/roundness.md)
376+
- [Theming with Sass](../themes/sass/index.md)
377+
-->
378+
379+
<div class="divider--half"></div>
380+
381+
Our community is active and always welcoming to new ideas.
382+
317383
- [{ProductName} **Forums**]({ForumsLink})
318384
- [{ProductName} **GitHub**]({GithubLink})
319385

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

Lines changed: 21 additions & 1 deletion
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 |
@@ -476,7 +495,8 @@ Please note that the maximum size available for the icons is 24x24. You can prov
476495
|37244 | Excel Library | Custom Data Validation is not working.|
477496

478497
## **{PackageVerChanges-24-2-APR2}**
479-
> [!Note]With 19.0.0 the React product introduces many breaking changes done to improve and streamline the API. Please refer to the full Update Guide.
498+
> [!Note]
499+
> With 19.0.0 the React product introduces many breaking changes done to improve and streamline the API. Please refer to the full Update Guide.
480500

481501
[Update Guide](update-guide.md)
482502

0 commit comments

Comments
 (0)