igniteui-cli 15.2.2 → 15.3.0
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/lib/commands/build.js +7 -12
- package/package.json +4 -4
- package/templates/blazor/igb/projects/ai-config/files/skills/AGENTS.md +0 -5
- package/templates/blazor/igb/projects/ai-config/files/skills/igniteui-blazor-components/SKILL.md +2 -0
- package/templates/blazor/igb/projects/ai-config/files/skills/igniteui-blazor-components/references/charts.md +7 -35
- package/templates/blazor/igb/projects/ai-config/files/skills/igniteui-blazor-components/references/data-display.md +0 -54
- package/templates/blazor/igb/projects/ai-config/files/skills/igniteui-blazor-components/references/feedback.md +0 -38
- package/templates/blazor/igb/projects/ai-config/files/skills/igniteui-blazor-components/references/form-controls.md +0 -68
- package/templates/blazor/igb/projects/ai-config/files/skills/igniteui-blazor-components/references/layout-manager.md +1 -124
- package/templates/blazor/igb/projects/ai-config/files/skills/igniteui-blazor-components/references/layout.md +0 -62
- package/templates/blazor/igb/projects/ai-config/files/skills/igniteui-blazor-theming/SKILL.md +1 -1
- package/templates/react/igr-ts/projects/_base/files/package.json +1 -0
- package/templates/react/igr-ts/projects/_base/files/src/app/app.tsx +4 -2
- package/templates/react/igr-ts/projects/_base/files/src/setupTests.ts +12 -0
- package/templates/react/igr-ts/projects/_base/files/styles.css +6 -0
- package/templates/react/igr-ts/projects/_base_with_home/files/index.html +2 -1
- package/templates/react/igr-ts/projects/_base_with_home/files/src/app/home/home.tsx +60 -10
- package/templates/react/igr-ts/projects/_base_with_home/files/src/app/home/style.module.css +79 -20
- package/templates/react/igr-ts/projects/ai-config/files/skills/igniteui-react-components/SKILL.md +0 -8
- package/templates/react/igr-ts/projects/ai-config/files/skills/igniteui-react-components/reference/CHARTS-GRIDS.md +6 -36
- package/templates/react/igr-ts/projects/ai-config/files/skills/igniteui-react-components/reference/COMPONENT-CATALOGUE.md +8 -142
- package/templates/react/igr-ts/projects/ai-config/files/skills/igniteui-react-components/reference/EVENT-HANDLING.md +2 -0
- package/templates/react/igr-ts/projects/ai-config/files/skills/igniteui-react-customize-theme/SKILL.md +7 -14
- package/templates/react/igr-ts/projects/ai-config/files/skills/igniteui-react-customize-theme/reference/CSS-THEMING.md +2 -0
- package/templates/react/igr-ts/projects/ai-config/files/skills/igniteui-react-customize-theme/reference/MCP-SERVER.md +0 -8
- package/templates/react/igr-ts/projects/ai-config/files/skills/igniteui-react-generate-from-image-design/SKILL.md +2 -2
- package/templates/react/igr-ts/projects/ai-config/files/skills/igniteui-react-generate-from-image-design/reference/component-mapping.md +60 -74
- package/templates/react/igr-ts/projects/empty/index.js +2 -2
- package/templates/react/igr-ts/projects/side-nav/files/src/app/app-routes.tsx +5 -0
- package/templates/react/igr-ts/projects/side-nav/files/src/app/app.css +82 -0
- package/templates/react/igr-ts/projects/side-nav/files/src/app/app.tsx +104 -0
- package/templates/react/igr-ts/projects/side-nav/files/src/app/home/home.tsx +69 -0
- package/templates/react/igr-ts/projects/side-nav/files/src/app/home/style.module.css +105 -0
- package/templates/react/igr-ts/projects/{top-nav → side-nav}/index.d.ts +2 -2
- package/templates/react/igr-ts/projects/{top-nav → side-nav}/index.js +7 -7
- package/templates/react/igr-ts/projects/side-nav-auth/files/index.html +19 -0
- package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/app-routes.tsx +24 -0
- package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/app.css +84 -0
- package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/app.tsx +124 -0
- package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/AuthContext.tsx +73 -0
- package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/AuthGuard.tsx +14 -0
- package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/components/Login.module.css +93 -0
- package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/components/Login.tsx +69 -0
- package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/components/LoginBar.module.css +42 -0
- package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/components/LoginBar.tsx +44 -0
- package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/components/LoginDialog.module.css +14 -0
- package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/components/LoginDialog.tsx +49 -0
- package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/components/Register.module.css +74 -0
- package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/components/Register.tsx +67 -0
- package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/models/external-login.ts +10 -0
- package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/models/login.ts +4 -0
- package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/models/register-info.ts +6 -0
- package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/models/user.ts +19 -0
- package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/pages/Profile.module.css +87 -0
- package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/pages/Profile.tsx +42 -0
- package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/pages/RedirectFacebook.tsx +44 -0
- package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/pages/RedirectGoogle.tsx +40 -0
- package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/pages/RedirectMicrosoft.tsx +40 -0
- package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/services/authentication.ts +37 -0
- package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/services/external-auth-config.ts +44 -0
- package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/services/externalAuth.ts +272 -0
- package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/services/fakeBackend.ts +88 -0
- package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/services/jwtUtil.ts +10 -0
- package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/services/pkce.ts +29 -0
- package/templates/react/igr-ts/projects/side-nav-auth/files/src/app/authentication/services/userStore.ts +39 -0
- package/templates/react/igr-ts/projects/side-nav-auth/index.d.ts +15 -0
- package/templates/react/igr-ts/projects/side-nav-auth/index.js +46 -0
- package/templates/react/igr-ts/projects/side-nav-mini/files/src/app/app-routes.tsx +5 -0
- package/templates/react/igr-ts/projects/side-nav-mini/files/src/app/app.css +109 -0
- package/templates/react/igr-ts/projects/side-nav-mini/files/src/app/app.test.tsx +20 -0
- package/templates/react/igr-ts/projects/side-nav-mini/files/src/app/app.tsx +81 -0
- package/templates/react/igr-ts/projects/side-nav-mini/files/src/app/home/home.tsx +69 -0
- package/templates/react/igr-ts/projects/side-nav-mini/files/src/app/home/style.module.css +105 -0
- package/templates/react/igr-ts/projects/side-nav-mini/index.d.ts +15 -0
- package/templates/react/igr-ts/projects/side-nav-mini/index.js +46 -0
- package/templates/react/igr-ts/projects/side-nav-mini-auth/files/src/app/app.css +106 -0
- package/templates/react/igr-ts/projects/side-nav-mini-auth/files/src/app/app.tsx +101 -0
- package/templates/react/igr-ts/projects/side-nav-mini-auth/index.d.ts +15 -0
- package/templates/react/igr-ts/projects/side-nav-mini-auth/index.js +50 -0
- package/templates/webcomponents/igc-ts/projects/_base/files/src/app/app.ts +6 -1
- package/templates/webcomponents/igc-ts/projects/_base/files/styles.css +1 -0
- package/templates/webcomponents/igc-ts/projects/_base_with_home/files/index.html +2 -0
- package/templates/webcomponents/igc-ts/projects/_base_with_home/files/src/app/home/home.ts +103 -9
- package/templates/webcomponents/igc-ts/projects/_base_with_home/files/src/assets/wc.png +0 -0
- package/templates/webcomponents/igc-ts/projects/ai-config/files/skills/igniteui-wc-choose-components/SKILL.md +122 -160
- package/templates/webcomponents/igc-ts/projects/ai-config/files/skills/igniteui-wc-customize-component-theme/SKILL.md +83 -311
- package/templates/webcomponents/igc-ts/projects/ai-config/files/skills/igniteui-wc-customize-component-theme/references/mcp-setup.md +69 -0
- package/templates/webcomponents/igc-ts/projects/ai-config/files/skills/igniteui-wc-generate-from-image-design/SKILL.md +4 -1
- package/templates/webcomponents/igc-ts/projects/ai-config/files/skills/igniteui-wc-generate-from-image-design/references/component-mapping.md +60 -61
- package/templates/webcomponents/igc-ts/projects/ai-config/files/skills/igniteui-wc-generate-from-image-design/references/gotchas.md +15 -11
- package/templates/webcomponents/igc-ts/projects/ai-config/files/skills/igniteui-wc-optimize-bundle-size/SKILL.md +23 -274
- package/templates/webcomponents/igc-ts/projects/empty/index.js +1 -1
- package/templates/webcomponents/igc-ts/projects/side-nav/files/index.html +21 -0
- package/templates/webcomponents/igc-ts/projects/side-nav/files/src/app/app-routing.ts +9 -0
- package/templates/webcomponents/igc-ts/projects/side-nav/files/src/app/app.ts +192 -22
- package/templates/webcomponents/igc-ts/projects/side-nav/files/src/app/home/home.ts +175 -0
- package/templates/webcomponents/igc-ts/projects/side-nav/index.js +1 -1
- package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/index.html +25 -0
- package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/app-routing.ts +37 -0
- package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/app.ts +251 -0
- package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/authentication/login-bar/login-bar.ts +124 -0
- package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/authentication/login-dialog/login-dialog.ts +253 -0
- package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/authentication/models/external-login.ts +10 -0
- package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/authentication/models/login.ts +4 -0
- package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/authentication/models/register-info.ts +6 -0
- package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/authentication/models/user.ts +19 -0
- package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/authentication/services/authentication.ts +37 -0
- package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/authentication/services/external-auth-config.ts +44 -0
- package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/authentication/services/externalAuth.ts +272 -0
- package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/authentication/services/fakeBackend.ts +88 -0
- package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/authentication/services/jwtUtil.ts +10 -0
- package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/authentication/services/pkce.ts +29 -0
- package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/authentication/services/userStore.ts +39 -0
- package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/profile/profile.ts +142 -0
- package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/redirect/redirect-facebook.ts +57 -0
- package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/redirect/redirect-google.ts +53 -0
- package/templates/webcomponents/igc-ts/projects/side-nav-auth/files/src/app/redirect/redirect-microsoft.ts +53 -0
- package/templates/webcomponents/igc-ts/projects/side-nav-auth/index.d.ts +15 -0
- package/templates/webcomponents/igc-ts/projects/side-nav-auth/index.js +46 -0
- package/templates/webcomponents/igc-ts/projects/side-nav-mini/files/src/app/app-routing.ts +13 -0
- package/templates/webcomponents/igc-ts/projects/side-nav-mini/files/src/app/app.ts +238 -0
- package/templates/webcomponents/igc-ts/projects/side-nav-mini/index.d.ts +14 -0
- package/templates/webcomponents/igc-ts/projects/side-nav-mini/index.js +45 -0
- package/templates/webcomponents/igc-ts/projects/side-nav-mini-auth/files/src/app/app.ts +258 -0
- package/templates/webcomponents/igc-ts/projects/side-nav-mini-auth/index.d.ts +15 -0
- package/templates/webcomponents/igc-ts/projects/side-nav-mini-auth/index.js +50 -0
- package/templates/react/igr-ts/projects/top-nav/files/src/app/app.css +0 -62
- package/templates/react/igr-ts/projects/top-nav/files/src/app/app.tsx +0 -18
- package/templates/react/igr-ts/projects/top-nav/files/src/components/navigation-header/index.tsx +0 -19
- /package/templates/react/igr-ts/projects/{top-nav → side-nav}/files/src/app/app.test.tsx +0 -0
|
@@ -1,36 +1,95 @@
|
|
|
1
|
-
:local(.
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
:local(.content) {
|
|
2
|
+
width: 100%;
|
|
3
|
+
display: flex;
|
|
4
|
+
flex-flow: column nowrap;
|
|
5
|
+
align-items: center;
|
|
6
|
+
padding: 24px;
|
|
7
|
+
box-sizing: border-box;
|
|
8
|
+
text-align: center;
|
|
9
|
+
font-family: "Titillium Web", "Segoe UI", Arial, sans-serif;
|
|
10
|
+
color: #000;
|
|
4
11
|
}
|
|
5
12
|
|
|
6
13
|
:local(.header) {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
+
color: #09f;
|
|
15
|
+
font-size: 80px;
|
|
16
|
+
font-weight: 300;
|
|
17
|
+
line-height: 1.2;
|
|
18
|
+
margin: 0 0 16px;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
:local(.subject) {
|
|
22
|
+
font-size: 28px;
|
|
23
|
+
font-weight: 400;
|
|
24
|
+
line-height: 1.4;
|
|
25
|
+
margin: 0 0 32px;
|
|
26
|
+
max-width: 1120px;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
:local(.logo) {
|
|
30
|
+
display: block;
|
|
31
|
+
margin-bottom: 32px;
|
|
32
|
+
width: 500px;
|
|
33
|
+
height: 350px;
|
|
34
|
+
max-width: 100%;
|
|
35
|
+
object-fit: contain;
|
|
14
36
|
}
|
|
15
37
|
|
|
16
38
|
:local(.link) {
|
|
17
|
-
|
|
39
|
+
font-size: 16px;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
:local(.subtitle) {
|
|
43
|
+
font-size: 16px;
|
|
44
|
+
margin: 16px 0 8px;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
:local(.content) p:nth-last-child(2) {
|
|
48
|
+
padding-top: 16px;
|
|
18
49
|
}
|
|
19
50
|
|
|
20
|
-
:local(.
|
|
21
|
-
padding-top: 1em;
|
|
51
|
+
:local(.githubLinks) {
|
|
22
52
|
display: flex;
|
|
23
|
-
flex-
|
|
53
|
+
flex-flow: row wrap;
|
|
24
54
|
align-items: center;
|
|
25
55
|
justify-content: center;
|
|
26
|
-
|
|
56
|
+
gap: 24px;
|
|
57
|
+
margin: 0;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
:local(.githubItem) {
|
|
61
|
+
display: flex;
|
|
62
|
+
flex-flow: row nowrap;
|
|
63
|
+
align-items: center;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
:local(.githubLink) {
|
|
67
|
+
font-size: 16px;
|
|
27
68
|
}
|
|
28
69
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
70
|
+
:local(.githubIcon) {
|
|
71
|
+
width: 24px;
|
|
72
|
+
height: 24px;
|
|
73
|
+
margin-right: 8px;
|
|
74
|
+
flex: 0 0 24px;
|
|
75
|
+
display: block;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
:local(.content) p {
|
|
79
|
+
margin: 0 0 8px;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
@media (max-width: 768px) {
|
|
83
|
+
:local(.header) {
|
|
84
|
+
font-size: 40px;
|
|
32
85
|
}
|
|
33
|
-
|
|
34
|
-
|
|
86
|
+
|
|
87
|
+
:local(.subject) {
|
|
88
|
+
font-size: 20px;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
:local(.logo) {
|
|
92
|
+
width: 100%;
|
|
93
|
+
height: 240px;
|
|
35
94
|
}
|
|
36
95
|
}
|
package/templates/react/igr-ts/projects/ai-config/files/skills/igniteui-react-components/SKILL.md
CHANGED
|
@@ -35,7 +35,6 @@ user-invocable: true
|
|
|
35
35
|
| Charts | `igniteui-react-charts` (trial) `@infragistics/igniteui-react-charts` (licensed) | `igniteui-react-charts` |
|
|
36
36
|
| Gauges | `igniteui-react-gauges` (trial) `@infragistics/igniteui-react-gauges` (licensed) | `igniteui-react-gauges` |
|
|
37
37
|
| Maps | `igniteui-react-maps` (trial) `@infragistics/igniteui-react-maps` (licensed) | `igniteui-react-maps` |
|
|
38
|
-
|
|
39
38
|
## Example Usage
|
|
40
39
|
|
|
41
40
|
- "What component should I use to display a list of items with actions?"
|
|
@@ -179,10 +178,3 @@ Use [COMPONENT-CATALOGUE.md](./reference/COMPONENT-CATALOGUE.md) to map any UI n
|
|
|
179
178
|
6. **Handle events as `CustomEvent`** — not `React.SyntheticEvent`
|
|
180
179
|
7. **Use refs sparingly** — prefer declarative props
|
|
181
180
|
8. **Check slot names** in the docs
|
|
182
|
-
|
|
183
|
-
## Additional Resources
|
|
184
|
-
|
|
185
|
-
- [Ignite UI for React — Getting Started](https://www.infragistics.com/products/ignite-ui-react/react/components/general-getting-started)
|
|
186
|
-
- [React Examples Repository](https://github.com/IgniteUI/igniteui-react-examples)
|
|
187
|
-
- [npm: igniteui-react](https://www.npmjs.com/package/igniteui-react)
|
|
188
|
-
- [@lit/react Documentation](https://lit.dev/docs/frameworks/react/)
|
|
@@ -53,6 +53,10 @@ IgrCategoryChartModule.register();
|
|
|
53
53
|
|
|
54
54
|
## Complete Chart Example
|
|
55
55
|
|
|
56
|
+
> Call `get_doc('react', 'column-chart')` for full `IgrCategoryChart` and `IgrDataChart` usage, prop tables, and code examples. Call `get_doc('react', 'chart-features')` for axes, annotations, animations, markers, and tooltips.
|
|
57
|
+
|
|
58
|
+
The minimum pattern — register the module at file scope, then wrap the component in a sized container:
|
|
59
|
+
|
|
56
60
|
```tsx
|
|
57
61
|
import { IgrCategoryChart, IgrCategoryChartModule } from 'igniteui-react-charts';
|
|
58
62
|
import styles from './dashboard-view.module.css';
|
|
@@ -80,20 +84,6 @@ export default function DashboardView() {
|
|
|
80
84
|
}
|
|
81
85
|
```
|
|
82
86
|
|
|
83
|
-
```css
|
|
84
|
-
/* dashboard-view.module.css */
|
|
85
|
-
.chart-container {
|
|
86
|
-
min-width: 400px;
|
|
87
|
-
min-height: 300px;
|
|
88
|
-
flex-grow: 1;
|
|
89
|
-
flex-basis: 0;
|
|
90
|
-
}
|
|
91
|
-
.chart-container > * {
|
|
92
|
-
height: 100%;
|
|
93
|
-
width: 100%;
|
|
94
|
-
}
|
|
95
|
-
```
|
|
96
|
-
|
|
97
87
|
## Complete Data Chart Example
|
|
98
88
|
|
|
99
89
|
> **⚠️ IMPORTANT:** `IgrDataChart` requires registering **multiple modules** depending on the series type used. For bar charts, register the modules shown below. If you miss any module, the chart or axis types will silently fail to render.
|
|
@@ -140,6 +130,8 @@ IgrDataChartAnnotationModule.register();
|
|
|
140
130
|
|
|
141
131
|
> **Bar charts are horizontal** — categories go on the Y-axis and numeric values on the X-axis. This is the opposite of column charts.
|
|
142
132
|
|
|
133
|
+
> For the full `IgrDataChart` API (all series types, axis options, layers), call `get_doc('react', 'bar-chart')` or `get_doc('react', 'column-chart')`.
|
|
134
|
+
|
|
143
135
|
### Complete Bar Chart Component (Multiple Series)
|
|
144
136
|
|
|
145
137
|
```tsx
|
|
@@ -288,28 +280,6 @@ export default function BarChartView() {
|
|
|
288
280
|
}
|
|
289
281
|
```
|
|
290
282
|
|
|
291
|
-
### Key Props Reference for `IgrBarSeries`
|
|
292
|
-
|
|
293
|
-
| Prop | Type | Description |
|
|
294
|
-
|---|---|---|
|
|
295
|
-
| `name` | `string` | Unique identifier — **required** when referencing the series from other elements |
|
|
296
|
-
| `xAxisName` | `string` | Must match the `name` of an `IgrNumericXAxis` declared in the same chart |
|
|
297
|
-
| `yAxisName` | `string` | Must match the `name` of an `IgrCategoryYAxis` declared in the same chart |
|
|
298
|
-
| `valueMemberPath` | `string` | Field name in the data object that holds the bar length value |
|
|
299
|
-
| `dataSource` | `any[]` | The data array — can differ per series for independent datasets |
|
|
300
|
-
| `title` | `string` | Series label shown in the legend |
|
|
301
|
-
| `isTransitionInEnabled` | `boolean` | Animates bars on initial render |
|
|
302
|
-
| `isHighlightingEnabled` | `boolean` | Dims other series when one is hovered |
|
|
303
|
-
| `showDefaultTooltip` | `boolean` | Shows a simple built-in tooltip (use `IgrDataToolTipLayer` for richer output) |
|
|
304
|
-
|
|
305
|
-
### Available Bar Chart Variants
|
|
306
|
-
|
|
307
|
-
| Variant | Component | Module |
|
|
308
|
-
|---|---|---|
|
|
309
|
-
| Bar (horizontal) | `IgrBarSeries` | `IgrDataChartVerticalCategoryModule` |
|
|
310
|
-
| Stacked Bar | `IgrStackedBarSeries` + `IgrStackedFragmentSeries` | `IgrDataChartStackedModule` |
|
|
311
|
-
| Stacked 100% Bar | `IgrStacked100BarSeries` + `IgrStackedFragmentSeries` | `IgrDataChartStackedModule` |
|
|
312
|
-
|
|
313
283
|
## Complete Grid Lite Example
|
|
314
284
|
|
|
315
285
|
> **⚠️ IMPORTANT:** Grid Lite (`IgrGridLite` from `igniteui-react/grid-lite`) requires installing both `igniteui-react` and `igniteui-grid-lite` packages. It's a React wrapper component (uses `Igr` prefix) and works like any standard React component — no `.register()` needed.
|
|
@@ -3,136 +3,6 @@
|
|
|
3
3
|
## Overview
|
|
4
4
|
This reference gives high-level guidance on Ignite UI for React components, their key features, and common use cases. For a full list of components, call `list_components` from `igniteui-cli` with the specific chart, or grid component, or feature you're interested in.
|
|
5
5
|
|
|
6
|
-
## Available Packages
|
|
7
|
-
|
|
8
|
-
Ignite UI for React is distributed across several packages depending on your needs:
|
|
9
|
-
|
|
10
|
-
| Package | License | Install | Best For |
|
|
11
|
-
|---|---|---|---|
|
|
12
|
-
| [`igniteui-react`](https://www.npmjs.com/package/igniteui-react) | MIT | `npm install igniteui-react` | General UI components (inputs, layouts, notifications, scheduling) |
|
|
13
|
-
| [`igniteui-grid-lite`](https://www.npmjs.com/package/igniteui-grid-lite) | MIT | `npm install igniteui-react igniteui-grid-lite` | Lightweight grid (Grid Lite) — requires both packages, import from `igniteui-react/grid-lite` |
|
|
14
|
-
| [`igniteui-react-grids`](https://www.npmjs.com/package/igniteui-react-grids) | Commercial | `npm install igniteui-react-grids` (trial) | Advanced data grids (Data Grid, Tree Grid, Hierarchical Grid, Pivot Grid) |
|
|
15
|
-
| [`igniteui-react-charts`](https://www.npmjs.com/package/igniteui-react-charts) | Commercial | `npm install igniteui-react-charts` (trial) | Charts (Category, Financial, Pie, Scatter, etc.) |
|
|
16
|
-
| [`igniteui-react-maps`](https://www.npmjs.com/package/igniteui-react-maps) | Commercial | `npm install igniteui-react-maps` (trial) | Geographic maps |
|
|
17
|
-
| [`igniteui-react-gauges`](https://www.npmjs.com/package/igniteui-react-gauges) | Commercial | `npm install igniteui-react-gauges` (trial) | Radial and linear gauges |
|
|
18
|
-
|
|
19
|
-
> **Note:** The lightweight Grid Lite (`IgrGridLite` from `igniteui-react/grid-lite`) requires installing both `igniteui-react` and `igniteui-grid-lite` packages. It's a React wrapper component (uses `Igr` prefix) that works like any other React component — no `.register()` needed. See [CHARTS-GRIDS.md](./CHARTS-GRIDS.md) for setup details.
|
|
20
|
-
|
|
21
|
-
---
|
|
22
|
-
|
|
23
|
-
## Component Catalogue by UI Pattern
|
|
24
|
-
|
|
25
|
-
Use the tables below to map a UI need to the right React component. All components use the **`Igr`** prefix.
|
|
26
|
-
|
|
27
|
-
### Inputs & Forms
|
|
28
|
-
|
|
29
|
-
| UI Need | Component | Import | Docs |
|
|
30
|
-
|---|---|---|---|
|
|
31
|
-
| Text field / text input | `IgrInput` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/inputs/input) |
|
|
32
|
-
| Multi-line text | `IgrTextarea` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/inputs/text-area) |
|
|
33
|
-
| Checkbox | `IgrCheckbox` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/inputs/checkbox) |
|
|
34
|
-
| On/off toggle | `IgrSwitch` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/inputs/switch) |
|
|
35
|
-
| Single choice from a list | `IgrRadio` / `IgrRadioGroup` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/inputs/radio) |
|
|
36
|
-
| Star / score rating | `IgrRating` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/inputs/rating) |
|
|
37
|
-
| Formatted / masked text input | `IgrMaskInput` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/inputs/mask-input) |
|
|
38
|
-
| Date and time input | `IgrDateTimeInput` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/inputs/date-time-input) |
|
|
39
|
-
| File upload | `IgrFileInput` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/inputs/file-input) |
|
|
40
|
-
| Simple dropdown / select | `IgrSelect` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/inputs/select) |
|
|
41
|
-
| Searchable dropdown, single or multi-select | `IgrCombo` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/inputs/combo/overview) |
|
|
42
|
-
| Grouped toggle buttons | `IgrButtonGroup` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/inputs/button-group) |
|
|
43
|
-
| Range / numeric slider | `IgrSlider` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/inputs/slider) |
|
|
44
|
-
| Range slider (two handles) | `IgrRangeSlider` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/inputs/slider) |
|
|
45
|
-
|
|
46
|
-
### Buttons & Actions
|
|
47
|
-
|
|
48
|
-
| UI Need | Component | Import | Docs |
|
|
49
|
-
|---|---|---|---|
|
|
50
|
-
| Standard clickable button | `IgrButton` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/inputs/button) |
|
|
51
|
-
| Icon-only button | `IgrIconButton` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/inputs/icon-button) |
|
|
52
|
-
| Click ripple effect | `IgrRipple` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/inputs/ripple) |
|
|
53
|
-
| Removable tag / filter chip | `IgrChip` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/inputs/chip) |
|
|
54
|
-
|
|
55
|
-
### Scheduling & Date Pickers
|
|
56
|
-
|
|
57
|
-
| UI Need | Component | Import | Docs |
|
|
58
|
-
|---|---|---|---|
|
|
59
|
-
| Full calendar view | `IgrCalendar` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/scheduling/calendar) |
|
|
60
|
-
| Date picker (popup calendar) | `IgrDatePicker` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/scheduling/date-picker) |
|
|
61
|
-
| Date range selection | `IgrDateRangePicker` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/scheduling/date-range-picker) |
|
|
62
|
-
|
|
63
|
-
### Notifications & Feedback
|
|
64
|
-
|
|
65
|
-
| UI Need | Component | Import | Docs |
|
|
66
|
-
|---|---|---|---|
|
|
67
|
-
| Brief auto-dismiss notification | `IgrToast` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/notifications/toast) |
|
|
68
|
-
| Actionable dismissible notification bar | `IgrSnackbar` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/notifications/snackbar) |
|
|
69
|
-
| Persistent status banner | `IgrBanner` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/notifications/banner) |
|
|
70
|
-
| Modal confirmation or content dialog | `IgrDialog` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/notifications/dialog) |
|
|
71
|
-
| Tooltip on hover | `IgrTooltip` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/inputs/tooltip) |
|
|
72
|
-
| Small count / status indicator | `IgrBadge` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/inputs/badge) |
|
|
73
|
-
|
|
74
|
-
### Progress Indicators
|
|
75
|
-
|
|
76
|
-
| UI Need | Component | Import | Docs |
|
|
77
|
-
|---|---|---|---|
|
|
78
|
-
| Horizontal progress bar | `IgrLinearProgress` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/inputs/linear-progress) |
|
|
79
|
-
| Circular / spinner progress | `IgrCircularProgress` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/inputs/circular-progress) |
|
|
80
|
-
|
|
81
|
-
### Layouts & Containers
|
|
82
|
-
|
|
83
|
-
| UI Need | Component | Import | Docs |
|
|
84
|
-
|---|---|---|---|
|
|
85
|
-
| Generic content card | `IgrCard` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/layouts/card) |
|
|
86
|
-
| User avatar / profile image | `IgrAvatar` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/layouts/avatar) |
|
|
87
|
-
| Icon display | `IgrIcon` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/layouts/icon) |
|
|
88
|
-
| Horizontal or vertical divider | `IgrDivider` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/layouts/divider) |
|
|
89
|
-
| Collapsible section | `IgrExpansionPanel` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/layouts/expansion-panel) |
|
|
90
|
-
| Multiple collapsible sections | `IgrAccordion` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/layouts/accordion) |
|
|
91
|
-
| Tabbed content panels (with inline content) | `IgrTabs` (content in `IgrTab`) | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/layouts/tabs) |
|
|
92
|
-
| Image / content slideshow | `IgrCarousel` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/layouts/carousel) |
|
|
93
|
-
| Multi-step wizard / onboarding flow | `IgrStepper` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/layouts/stepper) |
|
|
94
|
-
| Resizable, draggable dashboard tiles | `IgrTileManager` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/layouts/tile-manager) |
|
|
95
|
-
|
|
96
|
-
### Navigation
|
|
97
|
-
|
|
98
|
-
| UI Need | Component | Import | Docs |
|
|
99
|
-
|---|---|---|---|
|
|
100
|
-
| Top application bar / toolbar | `IgrNavbar` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/menus/navbar) |
|
|
101
|
-
| Side navigation drawer | `IgrNavDrawer` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/menus/navigation-drawer) |
|
|
102
|
-
| Tab-based navigation (with router) | `IgrTabs` (label-only, no content) | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/layouts/tabs) |
|
|
103
|
-
| Context menu / actions dropdown | `IgrDropdown` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/inputs/dropdown) |
|
|
104
|
-
|
|
105
|
-
### Lists & Data Display
|
|
106
|
-
|
|
107
|
-
| UI Need | Component | Import | Docs |
|
|
108
|
-
|---|---|---|---|
|
|
109
|
-
| Simple scrollable list | `IgrList` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/grids/list) |
|
|
110
|
-
| Hierarchical / tree data | `IgrTree` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/grids/tree) |
|
|
111
|
-
| Tabular data (MIT, lightweight) | `IgrGridLite` | `igniteui-react/grid-lite` (requires both `igniteui-react` and `igniteui-grid-lite` packages) | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/grid-lite/overview) |
|
|
112
|
-
| Full-featured tabular data grid | `IgrGrid` | `igniteui-react-grids` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/grids/grid/overview) |
|
|
113
|
-
| Nested / master-detail grid | `IgrHierarchicalGrid` | `igniteui-react-grids` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/grids/hierarchical-grid/overview) |
|
|
114
|
-
| Parent-child relational tree grid | `IgrTreeGrid` | `igniteui-react-grids` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/grids/tree-grid/overview) |
|
|
115
|
-
| Cross-tabulation / BI pivot table | `IgrPivotGrid` | `igniteui-react-grids` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/grids/pivot-grid/overview) |
|
|
116
|
-
|
|
117
|
-
### Charts & Data Visualization
|
|
118
|
-
|
|
119
|
-
> **⚠️ IMPORTANT:** Chart, gauge, and map components require **explicit module registration** and a **sized container**. Import the `*Module` class and call `.register()` at module level, and wrap the component in a container with explicit `min-width`/`min-height` or `flex-grow`. See [CHARTS-GRIDS.md](./CHARTS-GRIDS.md) for details.
|
|
120
|
-
|
|
121
|
-
| UI Need | Component | Module Registration | Import | Docs |
|
|
122
|
-
|---|---|---|---|---|
|
|
123
|
-
| Category / bar / line chart | `IgrCategoryChart` | `IgrCategoryChartModule.register()` | `igniteui-react-charts` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/charts/chart-overview) |
|
|
124
|
-
| Pie / doughnut chart | `IgrPieChart` | `IgrPieChartModule.register()` | `igniteui-react-charts` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/charts/chart-overview) |
|
|
125
|
-
| Financial / stock chart | `IgrFinancialChart` | `IgrFinancialChartModule.register()` | `igniteui-react-charts` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/charts/chart-overview) |
|
|
126
|
-
| Radial gauge | `IgrRadialGauge` | `IgrRadialGaugeModule.register()` | `igniteui-react-gauges` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/gauges/radial-gauge) |
|
|
127
|
-
| Linear gauge | `IgrLinearGauge` | `IgrLinearGaugeModule.register()` | `igniteui-react-gauges` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/gauges/linear-gauge) |
|
|
128
|
-
| Geographic map | `IgrGeographicMap` | `IgrGeographicMapModule.register()` | `igniteui-react-maps` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/maps/geographic-map) |
|
|
129
|
-
|
|
130
|
-
### Conversational / AI
|
|
131
|
-
|
|
132
|
-
| UI Need | Component | Import | Docs |
|
|
133
|
-
|---|---|---|---|
|
|
134
|
-
| Chat / AI assistant message thread | `IgrChat` | `igniteui-react` | [Docs](https://www.infragistics.com/products/ignite-ui-react/react/components/interactivity/chat) |
|
|
135
|
-
|
|
136
6
|
---
|
|
137
7
|
|
|
138
8
|
## Step-by-Step: Choosing Components for a UI
|
|
@@ -149,7 +19,7 @@ Break the described UI into atomic patterns. Examples:
|
|
|
149
19
|
|
|
150
20
|
### Step 2 — Map patterns to components
|
|
151
21
|
|
|
152
|
-
|
|
22
|
+
Call `list_components('react')` to discover available components, optionally filtered by keyword (e.g., `filter: 'date'` for date-related components). When in doubt:
|
|
153
23
|
|
|
154
24
|
| If the user needs… | Prefer… | Over… |
|
|
155
25
|
|---|---|---|
|
|
@@ -177,14 +47,9 @@ Confirm which package provides the component:
|
|
|
177
47
|
- **Maps** → `igniteui-react-maps` *(commercial)*
|
|
178
48
|
- **Gauges** → `igniteui-react-gauges` *(commercial)*
|
|
179
49
|
|
|
180
|
-
### Step 4 —
|
|
181
|
-
|
|
182
|
-
Always direct the user to the official documentation linked in the tables above. Key entry points:
|
|
50
|
+
### Step 4 — Look up component documentation
|
|
183
51
|
|
|
184
|
-
|
|
185
|
-
- **React examples**: [https://github.com/IgniteUI/igniteui-react-examples](https://github.com/IgniteUI/igniteui-react-examples)
|
|
186
|
-
- **npm package**: [https://www.npmjs.com/package/igniteui-react](https://www.npmjs.com/package/igniteui-react)
|
|
187
|
-
- **GitHub repository**: [https://github.com/IgniteUI/igniteui-react](https://github.com/IgniteUI/igniteui-react)
|
|
52
|
+
Call `get_doc('react', '<name>')` with the doc name from `list_components` results to get full usage documentation, import paths, prop tables, event signatures, and code examples. Use `search_docs('<query>', 'react')` for feature-based questions (e.g., `"date picker range selection"`).
|
|
188
53
|
|
|
189
54
|
### Step 5 — Provide a starter code snippet
|
|
190
55
|
|
|
@@ -288,8 +153,9 @@ function Dashboard() {
|
|
|
288
153
|
|
|
289
154
|
## Searching the Documentation
|
|
290
155
|
|
|
291
|
-
|
|
156
|
+
Use MCP tools for up-to-date component discovery and API lookup:
|
|
292
157
|
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
158
|
+
- `list_components('react')` — browse the full component catalogue, optionally narrowed with a filter keyword
|
|
159
|
+
- `get_doc('react', '<name>')` — full documentation, prop tables, and code examples for a component
|
|
160
|
+
- `search_docs('<query>', 'react')` — full-text search for features or behaviors (e.g., `"date picker range selection"`)
|
|
161
|
+
- `search_api('<query>', 'react')` — look up specific classes, properties, or methods
|
|
@@ -35,6 +35,8 @@ function MyForm() {
|
|
|
35
35
|
|
|
36
36
|
## Common Event Props
|
|
37
37
|
|
|
38
|
+
> For component-specific event signatures and detail types, call `get_api_reference('react', '<Component>', 'events')` — e.g. `get_api_reference('react', 'IgrCombo', 'events')`.
|
|
39
|
+
|
|
38
40
|
| Component | Event Prop | Fires When |
|
|
39
41
|
|---|---|---|
|
|
40
42
|
| `IgrButton` | `onClick` | Button is clicked |
|
|
@@ -106,14 +106,14 @@ import './index.css'; // Overrides second
|
|
|
106
106
|
|
|
107
107
|
## Theming Architecture
|
|
108
108
|
|
|
109
|
-
The Ignite UI theming system is built on
|
|
109
|
+
The Ignite UI theming system is built on **palette**, **typography**, **elevations**, and per-component **schemas**. Use the MCP theming tools at the right stage:
|
|
110
110
|
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
111
|
+
- **`create_palette`** — when the user provides brand colors; generates luminance-safe shades for all palette roles
|
|
112
|
+
- **`create_theme`** — generates the complete global theme CSS; call after `create_palette`
|
|
113
|
+
- **`create_typography`** — when the user wants to change fonts, type scale, or weights
|
|
114
|
+
- **`create_elevations`** — when the user wants to adjust shadow depth
|
|
115
|
+
- **`get_component_design_tokens`** - before writing any component-level CSS; retrieves the current token names for a specific component
|
|
116
|
+
- **`set_size`**, **`set_spacing`**, or **`set_roundness`** - adjust component size, content spacing, and roundness.
|
|
117
117
|
|
|
118
118
|
### Design Systems
|
|
119
119
|
|
|
@@ -182,10 +182,3 @@ See [CSS-THEMING.md](./reference/CSS-THEMING.md) for approaches: class toggle, m
|
|
|
182
182
|
4. **Palette shades**: 50 = lightest, 900 = darkest
|
|
183
183
|
5. **Surface color must match variant** — light color for `light`, dark for `dark`
|
|
184
184
|
6. **Never hardcode colors after palette generation**
|
|
185
|
-
|
|
186
|
-
## Additional Resources
|
|
187
|
-
|
|
188
|
-
- [Ignite UI for React — Themes Overview](https://www.infragistics.com/products/ignite-ui-react/react/components/themes/overview)
|
|
189
|
-
- [igniteui-theming npm package](https://www.npmjs.com/package/igniteui-theming)
|
|
190
|
-
- [CSS Custom Properties on MDN](https://developer.mozilla.org/en-US/docs/Web/CSS/Using_CSS_custom_properties)
|
|
191
|
-
- [CSS ::part() on MDN](https://developer.mozilla.org/en-US/docs/Web/CSS/::part)
|
|
@@ -148,6 +148,8 @@ For truly dynamic one-off overrides:
|
|
|
148
148
|
|
|
149
149
|
Override individual component appearance using CSS custom properties.
|
|
150
150
|
|
|
151
|
+
> **AGENT INSTRUCTION**: Before writing component-level token overrides, call `get_component_design_tokens` with the component name (e.g., `"avatar"`, `"button"`, `"grid"`) to retrieve the current, correct token names. Token names vary by component and can change between versions. Use only tokens returned by that call — do not guess or reuse tokens from other components.
|
|
152
|
+
|
|
151
153
|
```css
|
|
152
154
|
/* Target the Ignite UI web component tag name */
|
|
153
155
|
igc-avatar {
|
|
@@ -62,14 +62,6 @@ Edit the Claude Desktop config file:
|
|
|
62
62
|
3. Set Command to `npx` and Arguments to `igniteui-theming igniteui-theming-mcp`
|
|
63
63
|
4. Click OK and restart the AI Assistant
|
|
64
64
|
|
|
65
|
-
## MCP Server Workflow
|
|
66
|
-
|
|
67
|
-
1. **Detect platform**: Call `detect_platform` — it will detect `webcomponents` from `package.json`
|
|
68
|
-
2. **Generate a theme**: Call `create_theme` with your desired colors and design system
|
|
69
|
-
3. **Customize components**: Call `get_component_design_tokens` first, then `create_component_theme` with palette token values
|
|
70
|
-
4. **Get color references**: Call `get_color` to get the correct CSS custom property for any palette shade
|
|
71
|
-
5. **Adjust layout**: Call `set_size`, `set_spacing`, or `set_roundness`
|
|
72
|
-
|
|
73
65
|
## File Safety Rule
|
|
74
66
|
|
|
75
67
|
> **IMPORTANT — File Safety Rule**: When generating theme code, **never overwrite existing style files directly**. Always propose changes as an update and let the user review before writing to disk.
|
|
@@ -65,7 +65,7 @@ After the table, translate the image into CSS Grid rows and columns first. Prese
|
|
|
65
65
|
|
|
66
66
|
This skill is React-only. Check package routing, theme CSS imports, or licensing only when imports, packages, or theming depend on it.
|
|
67
67
|
|
|
68
|
-
Then call `list_components
|
|
68
|
+
Then call `list_components('react')` and relevant filters to find components matching each UI pattern. Common filters:
|
|
69
69
|
|
|
70
70
|
- `chart`, `sparkline` - for data visualization
|
|
71
71
|
- `list view`, `card`, `avatar`, `badge` - for data display
|
|
@@ -80,7 +80,7 @@ For component-to-Ignite-UI mapping, see [reference/component-mapping.md](referen
|
|
|
80
80
|
|
|
81
81
|
## Step 4: Look Up Component API
|
|
82
82
|
|
|
83
|
-
For every chosen component category, call `get_doc`
|
|
83
|
+
For every chosen component category, call `get_doc('react', '<name>')` using the doc `name` field from `list_components` results (e.g., `get_doc('react', 'card')`), not the result title shown in the list. This is mandatory before coding and gives exact React usage patterns, prop names, slot structure, event signatures, and any required module registration.
|
|
84
84
|
|
|
85
85
|
Call `search_docs` for feature-based questions (e.g., "how to configure [component] for [specific behavior or styling need]").
|
|
86
86
|
|