Skip to content

Commit 762eb1d

Browse files
authored
Merge branch 'master' into didimmova/update-splitter
2 parents af5abc6 + b1ded1d commit 762eb1d

155 files changed

Lines changed: 4987 additions & 1791 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/AGENTS-README.md

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -401,15 +401,32 @@ CHANGELOG.md root changelog
401401
src/app/<component>/ demo pages
402402
```
403403

404-
The system also relies on repository-specific guidance in:
404+
The system also relies on repository-specific guidance and internal operational skills in:
405405

406406
```text
407407
.github/copilot-instructions.md
408408
skills/igniteui-angular-components/SKILL.md
409409
skills/igniteui-angular-grids/SKILL.md
410410
skills/igniteui-angular-theming/SKILL.md
411+
.github/skills/igniteui-angular-build/SKILL.md
412+
.github/skills/igniteui-angular-testing/SKILL.md
413+
.github/skills/igniteui-angular-linting/SKILL.md
411414
```
412415

416+
Repository-specific skills for implementation guidance:
417+
418+
- `igniteui-angular-components` — shared guidance for general component patterns, structure, and repository conventions.
419+
- `igniteui-angular-grids` — shared guidance for grid architecture, patterns, and grid-specific implementation work.
420+
- `igniteui-angular-theming` — shared guidance for SCSS structure, theme wiring, and style-system conventions.
421+
422+
The internal operational skills are shared references for repository commands and validation flow:
423+
424+
- `igniteui-angular-build` — build command reference for full and partial builds such as library, schematics, migrations, elements, i18n, and related repo build targets.
425+
- `igniteui-angular-testing` — test suite selection guide, Karma config mapping, and command reference for choosing the smallest relevant test run.
426+
- `igniteui-angular-linting` — lint command reference, ESLint and Stylelint config locations, and lint expectations before work is considered complete.
427+
428+
Orchestrators should use these skills for command selection instead of repeating command lists inline.
429+
413430
---
414431

415432
## Maintenance Notes

.github/CONTRIBUTING.md

Lines changed: 3 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -88,38 +88,15 @@ Accessibility is an integral part of any UI component. We as a team are committe
8888
2. `status: localized` this status is for issues that were with a pending translation status and have already been localized. Place this status label once these translation changes have been included in the current pull request, or the changes are already pulled with a different pull request.
8989

9090
## Localization (i18n) - applicable to components' string resources
91-
There are several ways to localize components' string resources:
91+
There are several ways to localize components' string resources. For more information on how it works, refer to our [Documentation - Localization (i18n)](https://www.infragistics.com/products/ignite-ui-angular/angular/components/general/localization#localization-i18n-1).
9292

93-
1. Using custom resource strings:
94-
1.1. Localize a given instance of component - each component which supports localization has input property `resourceStrings`. Setting a newly instantiated object to this property will localize only that given component's instance.
95-
1.2. Localize all resources for a component type - each component which supports localization has input property `resourceStrings`. To localize all instances of a given component in the application the following steps should be performed - get the value of the input property `resourceStrings` of the component to be localized; do not create a new instance but replace the existing strings within the object. By default all components of a given type in an application share one instance of the resource strings. Replacing a value in that instance affects all components of that type in the application.
96-
1.3. Localize all resources for all components - use global method `getCurrentResourceStrings` to get an object containing current resource strings for all components. To provide localized resources just pass an object of type `IResourceStrings` to the global method `changei18n`.
97-
1.4 As of 21.1.x the localization has new implementation and you can use the new API `registerI18n` to register resource string for a component or all components for the whole app, as well as which locale it corresponds to. To localize a single component you will need to get is corresponding resource string keys using one of the available resources and provide only those keys.
93+
**NOTE** As of 21.1.x, the localization resource strings have been moved to the [`igniteui-i18n`](https://github.com/IgniteUI/igniteui-i18n) repository under `projects/igniteui-i18n-resources`. The package `igniteui-angular-i18n` under `./projects/igniteui-angular-i18n` remains as a source of the localization resources for Ignite UI for Angular, that derives the resources from [`igniteui-i18n`](https://github.com/IgniteUI/igniteui-i18n).
9894

99-
2. Using npm package:
100-
We've created new repository which will hold the resource strings for languages different than English:
101-
https://github.com/IgniteUI/igniteui-angular-i18n
102-
103-
**NOTE** The localization repo has been moved to live inside the `igniteui-angular` repository under `./projects/igniteui-angular-i18n`
104-
**NOTE** As of 21.1.x the localization resource strings have been moved to the [`igniteui-i18n`](https://github.com/IgniteUI/igniteui-i18n) repository under `projects/igniteui-i18n-resources`.
95+
**NOTE (21.0.x and lower)** The localization resource strings live inside the `igniteui-angular` repository under `./projects/igniteui-angular-i18n`.
10596

10697
A npm package should be published each time we release new version of Ignite UI for Angular. Its version should correspond to the version of the igniteui-angular npm package.
10798
One could localize an application by importing the corresponding localized resource strings from the localization package (`igniteui-angular-i18n`) and use the methods described in the previous bullet to localize the whole application or part of it.
10899

109-
**Example:**
110-
111-
Inside app.module you can perform:
112-
```ts
113-
import { IgxResouceStringsJA } fromigniteui-angular-i18n’;
114-
changei18n(IgxResouceStringsJA);
115-
```
116-
117-
**Example new API:**
118-
```ts
119-
import { ResouceStringsJA } fromigniteui-i18n-resources’;
120-
registerI18n(IgxResouceStringsJA, 'ja');
121-
```
122-
123100
### Resource strings keys naming convention
124101
Each key in the `IResourceStrings` (and `IGridResourceStrings`, `ITimePickerResourceStrings`, etc.) is prefixed with components' selector and followed by the resource string key. Having components' selectors as prefixes allows us to have same resource strings keys for more than one component.
125102
Example: _igx_grid_groupByArea_message_.

.github/agents/bug-fixing-implementer-agent.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -114,6 +114,7 @@ If the bug requires SCSS, theme wiring, or style-test changes, do not implement
114114
- Do not update `README.md` — the `component-readme-agent` handles that.
115115
- Do not create migration schematics — the `migration-agent` handles that.
116116
- Do not update `CHANGELOG.md` — the `changelog-agent` handles that.
117+
- Do not modify dependency manifests or lock files (`package.json`, `package-lock.json`, etc.). Ask for approval first if a dependency change is truly required.
117118

118119
---
119120

.github/agents/bug-fixing-orchestrator-agent.md

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,7 @@ You do NOT write tests, production code, or detailed implementation instructions
6868
- Do not write tests or production code
6969
- Do not specify exact test cases, exact implementations, or exact file changes
7070
- Do not over-constrain the handoff prompts — give scope and root cause, not specs
71+
- Do not modify dependency manifests or lock files (`package.json`, `package-lock.json`, etc.). Ask for approval first if a dependency change is truly required.
7172

7273
---
7374

@@ -108,16 +109,9 @@ Do not add sections such as:
108109

109110
---
110111

111-
## Component-Specific Patterns
112-
113-
Check the relevant skill file for component APIs and patterns:
114-
- Non-grid components → `skills/igniteui-angular-components/SKILL.md`
115-
- Grid components → `skills/igniteui-angular-grids/SKILL.md`
116-
- Theming & styling → `skills/igniteui-angular-theming/SKILL.md`
117-
118-
Each skill file is a routing hub pointing to detailed reference files under its `references/` folder. **Read the relevant reference files** when investigating the root cause.
119-
120-
If the bug touches component SCSS or theme wiring, read `skills/igniteui-angular-theming/references/contributing.md` during investigation and plan a dedicated `theming-styles-agent` handoff.
112+
> Skills:
113+
> - APIs: `skills/igniteui-angular-{components,grids,theming}/SKILL.md`
114+
> - Build / test / lint: `.github/skills/`
121115
122116
---
123117

@@ -171,10 +165,15 @@ Present a brief scope summary to the user:
171165

172166
Keep it short and high-level. Confirm scope, not solution details.
173167

174-
Wait for user confirmation.
168+
Before routing any work, ask:
169+
170+
**`Do you want me to proceed with this implementation flow?`**
171+
172+
If the fix is user-visible, also ask:
173+
174+
**`Do you want a demo/sample update for this feature?`**
175175

176-
If a demo/sample is relevant, ask explicitly:
177-
`Do you want a demo/sample update for this change? Yes / No`
176+
Wait for the user's answer before routing work.
178177

179178
### Step 4 — Route Work
180179

@@ -217,6 +216,7 @@ After all agents finish, check:
217216
- If a demo/sample was requested, was the existing demo structure updated appropriately?
218217
- If a demo/sample was not requested, was it correctly skipped?
219218
- Is multi-branch cherry-picking needed?
219+
- Run `npm run lint:lib` and verify it passes.
220220

221221
Report what was done and any remaining items.
222222

.github/agents/changelog-agent.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ tools:
55
- search/codebase
66
- edit/editFiles
77
- read/problems
8+
- web
89
---
910

1011
# Changelog Agent
@@ -13,6 +14,12 @@ You update `CHANGELOG.md` at the repository root for Ignite UI for Angular. Only
1314

1415
---
1516

17+
## What You Do NOT Do
18+
19+
- Do not modify production source code.
20+
21+
---
22+
1623
## Steps
1724

1825
### 1. Find the Latest Version

.github/agents/component-readme-agent.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ tools:
55
- search/codebase
66
- edit/editFiles
77
- read/problems
8+
- web
89
---
910

1011
# Component README Agent
@@ -58,7 +59,8 @@ Component documentation is located at:
5859
- examples when needed
5960
5. If behavior changed, update the related explanatory text.
6061
6. If a new capability was added, add a short example only if the README style supports it.
61-
7. Match existing formatting exactly.
62+
7. If API was renamed or deprecated, update or remove stale examples and snippets that still reference the old usage.
63+
8. Match existing formatting exactly.
6264

6365
---
6466

.github/agents/demo-sample-agent.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ tools:
77
- read/problems
88
- execute/runTests
99
- read/terminalLastCommand
10+
- web
1011
---
1112

1213
# Demo / Sample Agent
@@ -39,6 +40,7 @@ You do not implement the library change itself, create new samples or demo folde
3940
- Do not update component `README.md`.
4041
- Do not update `CHANGELOG.md`.
4142
- Do not create migrations.
43+
- Do not modify dependency manifests or lock files (`package.json`, `package-lock.json`, etc.). Ask for approval first if a dependency change is truly required.
4244

4345
---
4446

.github/agents/feature-implementer-agent.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ tools:
88
- read/problems
99
- execute/runTests
1010
- read/terminalLastCommand
11+
- web
1112
---
1213

1314
# Implementer — GREEN + REFACTOR Phases
@@ -118,6 +119,7 @@ Update component agent skills if you need to guide other agents on how to use th
118119
- Do not update `README.md` — the `component-readme-agent` handles that.
119120
- Do not create migration schematics — the `migration-agent` handles that.
120121
- Do not update `CHANGELOG.md` — the `changelog-agent` handles that.
122+
- Do not modify dependency manifests or lock files (`package.json`, `package-lock.json`, etc.). Ask for approval first if a dependency change is truly required.
121123

122124
---
123125

.github/agents/feature-orchestrator-agent.md

Lines changed: 23 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ tools:
66
- search/codebase
77
- search/changes
88
- read/problems
9+
- web
910
agents:
1011
- tdd-test-writer-agent
1112
- feature-implementer-agent
@@ -64,6 +65,7 @@ You do NOT write tests, production code, or detailed acceptance criteria. Each s
6465
- Do not write detailed acceptance criteria that downstream agents must encode literally
6566
- Do not specify exact test cases, exact implementations, or exact file changes
6667
- Do not over-constrain the handoff prompts — give scope, not specs
68+
- Do not modify dependency manifests or lock files (`package.json`, `package-lock.json`, etc.). Ask for approval first if a dependency change is truly required.
6769

6870
---
6971

@@ -101,6 +103,12 @@ Do not add sections such as:
101103

102104
---
103105

106+
> Skills:
107+
> - APIs: `skills/igniteui-angular-{components,grids,theming}/SKILL.md`
108+
> - Build / test / lint: `.github/skills/`
109+
110+
---
111+
104112
## Key Repository Paths
105113

106114
```
@@ -130,7 +138,7 @@ projects/igniteui-angular/core/src/core/styles/ ← component SCSS themes
130138
- Whether a migration schematic is needed
131139
- Whether i18n strings are affected
132140
- Whether styles or component themes are affected
133-
- Which test suite to use (grid vs non-grid)
141+
- Which test suite to use (grid vs non-grid vs schematics/styles/i18n)
134142

135143
### Step 2 — Request Missing Context
136144

@@ -151,10 +159,15 @@ Present a brief scope summary to the user:
151159

152160
Keep it short and high-level. Confirm scope, not solution details.
153161

154-
Wait for user confirmation.
162+
Before routing any work, ask:
163+
164+
**`Do you want me to proceed with this implementation flow?`**
165+
166+
If the feature is user-visible, also ask:
167+
168+
**`Do you want a demo/sample update for this feature?`**
155169

156-
If a demo/sample is relevant, ask explicitly:
157-
`Do you want a demo/sample update for this feature? Yes / No`
170+
Wait for the user's answer before routing work.
158171

159172
### Step 4 — Route Work
160173

@@ -181,26 +194,25 @@ Use agents in this order:
181194
4. **`demo-sample-agent`** — only if the user explicitly wants a demo/sample update
182195
5. **`component-readme-agent`** — updates affected component `README.md` files
183196
6. **`migration-agent`** — only if breaking changes exist
184-
7. **`changelog-agent`**updates `CHANGELOG.md`
197+
7. **`changelog-agent`**only if the change warrants an entry under the existing `CHANGELOG.md` structure
185198

186199
Only invoke `demo-sample-agent` if the user explicitly requested a demo/sample update.
187200
If the user declined, skip that handoff and continue with the remaining agents.
188201

189-
If the feature is purely theming or styling, route directly from `tdd-test-writer-agent` to `theming-styles-agent` and skip the general
190-
implementer.
202+
If the feature is purely theming or styling, route directly from `tdd-test-writer-agent` to `theming-styles-agent` and skip the general implementer.
191203

192204
### Step 5 — Verify Completeness
193205

194206
After all agents finish, check:
195207

196208
- Were all affected areas covered?
197209
- Were public exports updated?
198-
- Were theming and style changes delegated when SCSS or theme wiring was
199-
affected?
200-
- Was the component README updated?
201-
- Was `CHANGELOG.md` updated?
210+
- Were theming and style changes delegated when SCSS or theme wiring was affected?
211+
- Was the component README updated if needed?
212+
- Was `CHANGELOG.md` updated if needed?
202213
- Do migrations exist for any breaking changes?
203214
- If a demo/sample was requested, was the existing demo structure updated appropriately?
204215
- If a demo/sample was not requested, was it correctly skipped?
216+
- Run `npm run lint:lib` and verify it passes.
205217

206218
Report what was done and any remaining items.

.github/agents/migration-agent.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ tools:
88
- execute/runTests
99
- read/problems
1010
- read/terminalLastCommand
11+
- web
1112
---
1213

1314
# Migration Schematic Agent
@@ -28,6 +29,12 @@ You create **`ng update` migration schematics** for breaking changes in Ignite U
2829

2930
---
3031

32+
## What You Do NOT Do
33+
34+
- Do not modify dependency manifests or lock files (`package.json`, `package-lock.json`, etc.). Ask for approval first if a dependency change is truly required.
35+
36+
---
37+
3138
## Steps
3239

3340
### 1. Determine Version and Number
@@ -114,6 +121,7 @@ Before finishing:
114121
3. Run:
115122
- `npm run test:schematics`
116123
- `npm run build:migrations`
124+
- `npm run lint:lib`
117125
4. Confirm the migration updates the old API and leaves unrelated code unchanged.
118126

119127
### 7. Commit

0 commit comments

Comments
 (0)